newtonsoft-json-6.0.8/0000775000175000017500000000000012633540654015434 5ustar directhexdirecthexnewtonsoft-json-6.0.8/README.md0000664000175000017500000000053612454416117016714 0ustar directhexdirecthex#![Logo](Doc/icons/logo.jpg) Json.NET# - [Homepage](http://james.newtonking.com/json) - [Documentation](http://james.newtonking.com/json/help) - [NuGet Package](https://www.nuget.org/packages/Newtonsoft.Json) - [Contributing Guidelines](CONTRIBUTING.md) - [License](LICENSE.md) - [Stack Overflow](http://stackoverflow.com/questions/tagged/json.net) newtonsoft-json-6.0.8/LICENSE.md0000664000175000017500000000207412454416117017040 0ustar directhexdirecthexThe MIT License (MIT) Copyright (c) 2007 James Newton-King Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. newtonsoft-json-6.0.8/Build/0000775000175000017500000000000012454416117016470 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Build/runbuild.cmd0000664000175000017500000000033012454416117020775 0ustar directhexdirecthexcls powershell -Command "& { [Console]::WindowWidth = 150; [Console]::WindowHeight = 50; Start-Transcript runbuild.txt; Import-Module ..\Tools\PSake\psake.psm1; Invoke-psake ..\Build\build.ps1 %*; Stop-Transcript; }"newtonsoft-json-6.0.8/Build/runbuild.ps10000664000175000017500000000016412454416117020742 0ustar directhexdirecthexcls Import-Module '..\Tools\PSake\psake.psm1' Invoke-psake '.\build.ps1' Test -framework 3.5 Remove-Module psakenewtonsoft-json-6.0.8/Build/build.ps10000664000175000017500000002545112454416117020223 0ustar directhexdirecthexproperties { $zipFileName = "Json60r8.zip" $majorVersion = "6.0" $majorWithReleaseVersion = "6.0.8" $version = GetVersion $majorWithReleaseVersion $signAssemblies = $false $signKeyPath = "C:\Development\Releases\newtonsoft.snk" $buildDocumentation = $false $buildNuGet = $true $treatWarningsAsErrors = $false $workingName = if ($workingName) {$workingName} else {"Working"} $baseDir = resolve-path .. $buildDir = "$baseDir\Build" $sourceDir = "$baseDir\Src" $toolsDir = "$baseDir\Tools" $docDir = "$baseDir\Doc" $releaseDir = "$baseDir\Release" $workingDir = "$baseDir\$workingName" $builds = @( @{Name = "Newtonsoft.Json"; TestsName = "Newtonsoft.Json.Tests"; TestsFunction = "NUnitTests"; Constants=""; FinalDir="Net45"; NuGetDir = "net45"; Framework="net-4.0"; Sign=$true}, @{Name = "Newtonsoft.Json.Portable"; TestsName = "Newtonsoft.Json.Tests.Portable"; TestsFunction = "NUnitTests"; Constants="PORTABLE"; FinalDir="Portable"; NuGetDir = "portable-net45+wp80+win8+wpa81+aspnetcore50"; Framework="net-4.0"; Sign=$true}, @{Name = "Newtonsoft.Json.Portable40"; TestsName = "Newtonsoft.Json.Tests.Portable40"; TestsFunction = "NUnitTests"; Constants="PORTABLE40"; FinalDir="Portable40"; NuGetDir = "portable-net40+sl5+wp80+win8+wpa81"; Framework="net-4.0"; Sign=$true}, #@{Name = $null; TestsName = "Newtonsoft.Json.Tests.AspNetCore50"; TestsFunction = "CoreClrTests"; Constants="ASPNETCORE50"; FinalDir="ASPNETCORE50"; NuGetDir = $null; Framework=$null; Sign=$null}, @{Name = "Newtonsoft.Json.WinRT"; TestsName = "Newtonsoft.Json.Tests.WinRT"; TestsFunction = "WinRTTests"; Constants="NETFX_CORE"; FinalDir="WinRT"; NuGetDir = "netcore45"; Framework="net-4.5"; Sign=$true}, @{Name = "Newtonsoft.Json.Net40"; TestsName = "Newtonsoft.Json.Tests.Net40"; TestsFunction = "NUnitTests"; Constants="NET40"; FinalDir="Net40"; NuGetDir = "net40"; Framework="net-4.0"; Sign=$true}, @{Name = "Newtonsoft.Json.Net35"; TestsName = "Newtonsoft.Json.Tests.Net35"; TestsFunction = "NUnitTests"; Constants="NET35"; FinalDir="Net35"; NuGetDir = "net35"; Framework="net-2.0"; Sign=$true}, @{Name = "Newtonsoft.Json.Net20"; TestsName = "Newtonsoft.Json.Tests.Net20"; TestsFunction = "NUnitTests"; Constants="NET20"; FinalDir="Net20"; NuGetDir = "net20"; Framework="net-2.0"; Sign=$true} ) } framework '4.0x86' task default -depends Test # Ensure a clean working directory task Clean { Set-Location $baseDir if (Test-Path -path $workingDir) { Write-Output "Deleting existing working directory $workingDir" del $workingDir -Recurse -Force } Write-Output "Creating working directory $workingDir" New-Item -Path $workingDir -ItemType Directory } # Build each solution, optionally signed task Build -depends Clean { Write-Host -ForegroundColor Green "Updating assembly version" Write-Host Update-AssemblyInfoFiles $sourceDir ($majorVersion + '.0.0') $version foreach ($build in $builds) { $name = $build.Name if ($name -ne $null) { $finalDir = $build.FinalDir $sign = ($build.Sign -and $signAssemblies) Write-Host -ForegroundColor Green "Building " $name Write-Host -ForegroundColor Green "Signed " $sign Write-Host Write-Host "Restoring" exec { .\Tools\NuGet\NuGet.exe restore ".\Src\$name.sln" | Out-Default } "Error restoring $name" Write-Host Write-Host "Building" exec { msbuild "/t:Clean;Rebuild" /p:Configuration=Release "/p:Platform=Any CPU" /p:OutputPath=bin\Release\$finalDir\ /p:AssemblyOriginatorKeyFile=$signKeyPath "/p:SignAssembly=$sign" "/p:TreatWarningsAsErrors=$treatWarningsAsErrors" "/p:VisualStudioVersion=12.0" (GetConstants $build.Constants $sign) ".\Src\$name.sln" | Out-Default } "Error building $name" } } } # Optional build documentation, add files to final zip task Package -depends Build { foreach ($build in $builds) { $name = $build.TestsName $finalDir = $build.FinalDir robocopy "$sourceDir\Newtonsoft.Json\bin\Release\$finalDir" $workingDir\Package\Bin\$finalDir *.dll *.pdb *.xml /NP /XO /XF *.CodeAnalysisLog.xml | Out-Default } if ($buildNuGet) { New-Item -Path $workingDir\NuGet -ItemType Directory Copy-Item -Path "$buildDir\Newtonsoft.Json.nuspec" -Destination $workingDir\NuGet\Newtonsoft.Json.nuspec -recurse New-Item -Path $workingDir\NuGet\tools -ItemType Directory Copy-Item -Path "$buildDir\install.ps1" -Destination $workingDir\NuGet\tools\install.ps1 -recurse foreach ($build in $builds) { if ($build.NuGetDir) { $name = $build.TestsName $finalDir = $build.FinalDir $frameworkDirs = $build.NuGetDir.Split(",") foreach ($frameworkDir in $frameworkDirs) { robocopy "$sourceDir\Newtonsoft.Json\bin\Release\$finalDir" $workingDir\NuGet\lib\$frameworkDir *.dll *.pdb *.xml /NP /XO /XF *.CodeAnalysisLog.xml | Out-Default } } } robocopy $sourceDir $workingDir\NuGet\src *.cs /S /NP /XD Newtonsoft.Json.Tests Newtonsoft.Json.TestConsole obj | Out-Default exec { .\Tools\NuGet\NuGet.exe pack $workingDir\NuGet\Newtonsoft.Json.nuspec -Symbols } move -Path .\*.nupkg -Destination $workingDir\NuGet } if ($buildDocumentation) { $mainBuild = $builds | where { $_.Name -eq "Newtonsoft.Json" } | select -first 1 $mainBuildFinalDir = $mainBuild.FinalDir $documentationSourcePath = "$workingDir\Package\Bin\$mainBuildFinalDir" Write-Host -ForegroundColor Green "Building documentation from $documentationSourcePath" # Sandcastle has issues when compiling with .NET 4 MSBuild - http://shfb.codeplex.com/Thread/View.aspx?ThreadId=50652 exec { msbuild "/t:Clean;Rebuild" /p:Configuration=Release "/p:DocumentationSourcePath=$documentationSourcePath" $docDir\doc.shfbproj | Out-Default } "Error building documentation. Check that you have Sandcastle, Sandcastle Help File Builder and HTML Help Workshop installed." move -Path $workingDir\Documentation\LastBuild.log -Destination $workingDir\Documentation.log } Copy-Item -Path $docDir\readme.txt -Destination $workingDir\Package\ Copy-Item -Path $docDir\license.txt -Destination $workingDir\Package\ # exclude package directories but keep packages\repositories.config $packageDirs = gci $sourceDir\packages | where {$_.PsIsContainer} | Select -ExpandProperty Name robocopy $sourceDir $workingDir\Package\Source\Src /MIR /NP /XD bin obj TestResults AppPackages $packageDirs /XF *.suo *.user | Out-Default robocopy $buildDir $workingDir\Package\Source\Build /MIR /NP /XF runbuild.txt | Out-Default robocopy $docDir $workingDir\Package\Source\Doc /MIR /NP | Out-Default robocopy $toolsDir $workingDir\Package\Source\Tools /MIR /NP | Out-Default exec { .\Tools\7-zip\7za.exe a -tzip $workingDir\$zipFileName $workingDir\Package\* | Out-Default } "Error zipping" } # Unzip package to a location task Deploy -depends Package { exec { .\Tools\7-zip\7za.exe x -y "-o$workingDir\Deployed" $workingDir\$zipFileName | Out-Default } "Error unzipping" } # Run tests on deployed files task Test -depends Deploy { foreach ($build in $builds) { if ($build.TestsFunction -ne $null) { & $build.TestsFunction $build } } } function CoreClrTests($build) { $name = $build.TestsName Write-Host -ForegroundColor Green "Ensuring latest CoreCLR is installed for $name" Write-Host exec { & $toolsDir\Kvm\kvm.ps1 upgrade -r CoreCLR -NoNative | Out-Default } Write-Host -ForegroundColor Green "Restoring packages for $name" Write-Host exec { kpm restore "$sourceDir\Newtonsoft.Json.Tests\project.json" | Out-Default } Write-Host -ForegroundColor Green "Ensuring test project builds for $name" Write-Host try { Set-Location "$sourceDir\Newtonsoft.Json.Tests" k --configuration Release test -parallel none | Tee-Object -file "$workingDir\$name.txt" } finally { Set-Location $baseDir } } function WinRTTests($build) { $name = $build.TestsName $finalDir = $build.FinalDir $testCmd = "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" $outDir = "$workingDir\Deployed\Bin\$finalDir" Write-Host -ForegroundColor Green "Packaging test assembly $name to deployed directory" Write-Host exec { msbuild "$sourceDir\Newtonsoft.Json.Tests\$name.csproj" /p:OutDir=$outDir | Out-Default } Write-Host -ForegroundColor Green "Running MSTest tests " $name Write-Host exec { &($testCmd) $outDir\$name\AppPackages\$($name)_1.0.0.0_AnyCPU_Debug_Test\$($name)_1.0.0.0_AnyCPU_Debug.appx /InIsolation | Tee-Object -file "$workingDir\$name.txt" } "Error running $name tests" } function NUnitTests($build) { $name = $build.TestsName $finalDir = $build.FinalDir $framework = $build.Framework Write-Host -ForegroundColor Green "Copying test assembly $name to deployed directory" Write-Host robocopy ".\Src\Newtonsoft.Json.Tests\bin\Release\$finalDir" $workingDir\Deployed\Bin\$finalDir /MIR /NP /XO | Out-Default Copy-Item -Path ".\Src\Newtonsoft.Json.Tests\bin\Release\$finalDir\Newtonsoft.Json.Tests.dll" -Destination $workingDir\Deployed\Bin\$finalDir\ Write-Host -ForegroundColor Green "Running NUnit tests " $name Write-Host exec { .\Tools\NUnit\nunit-console.exe "$workingDir\Deployed\Bin\$finalDir\Newtonsoft.Json.Tests.dll" /framework=$framework /xml:$workingDir\$name.xml | Out-Default } "Error running $name tests" } function GetConstants($constants, $includeSigned) { $signed = switch($includeSigned) { $true { ";SIGNED" } default { "" } } return "/p:DefineConstants=`"CODE_ANALYSIS;TRACE;$constants$signed`"" } function GetVersion($majorVersion) { $now = [DateTime]::Now $year = $now.Year - 2000 $month = $now.Month $totalMonthsSince2000 = ($year * 12) + $month $day = $now.Day $minor = "{0}{1:00}" -f $totalMonthsSince2000, $day $hour = $now.Hour $minute = $now.Minute $revision = "{0:00}{1:00}" -f $hour, $minute return $majorVersion + "." + $minor } function Update-AssemblyInfoFiles ([string] $sourceDir, [string] $assemblyVersionNumber, [string] $fileVersionNumber) { $assemblyVersionPattern = 'AssemblyVersion\("[0-9]+(\.([0-9]+|\*)){1,3}"\)' $fileVersionPattern = 'AssemblyFileVersion\("[0-9]+(\.([0-9]+|\*)){1,3}"\)' $assemblyVersion = 'AssemblyVersion("' + $assemblyVersionNumber + '")'; $fileVersion = 'AssemblyFileVersion("' + $fileVersionNumber + '")'; Get-ChildItem -Path $sourceDir -r -filter AssemblyInfo.cs | ForEach-Object { $filename = $_.Directory.ToString() + '\' + $_.Name Write-Host $filename $filename + ' -> ' + $version (Get-Content $filename) | ForEach-Object { % {$_ -replace $assemblyVersionPattern, $assemblyVersion } | % {$_ -replace $fileVersionPattern, $fileVersion } } | Set-Content $filename } }newtonsoft-json-6.0.8/Build/install.ps10000664000175000017500000000675312454416117020576 0ustar directhexdirecthexparam($installPath, $toolsPath, $package, $project) # open json.net splash page on package install # don't open if json.net is installed as a dependency try { $url = "http://james.newtonking.com/json/install?version=" + $package.Version $dte2 = Get-Interface $dte ([EnvDTE80.DTE2]) if ($dte2.ActiveWindow.Caption -eq "Package Manager Console") { # user is installing from VS NuGet console # get reference to the window, the console host and the input history # show webpage if "install-package newtonsoft.json" was last input $consoleWindow = $(Get-VSComponentModel).GetService([NuGetConsole.IPowerConsoleWindow]) $props = $consoleWindow.GetType().GetProperties([System.Reflection.BindingFlags]::Instance -bor ` [System.Reflection.BindingFlags]::NonPublic) $prop = $props | ? { $_.Name -eq "ActiveHostInfo" } | select -first 1 if ($prop -eq $null) { return } $hostInfo = $prop.GetValue($consoleWindow) if ($hostInfo -eq $null) { return } $history = $hostInfo.WpfConsole.InputHistory.History $lastCommand = $history | select -last 1 if ($lastCommand) { $lastCommand = $lastCommand.Trim().ToLower() if ($lastCommand.StartsWith("install-package") -and $lastCommand.Contains("newtonsoft.json")) { $dte2.ItemOperations.Navigate($url) | Out-Null } } } else { # user is installing from VS NuGet dialog # get reference to the window, then smart output console provider # show webpage if messages in buffered console contains "installing...newtonsoft.json" in last operation $instanceField = [NuGet.Dialog.PackageManagerWindow].GetField("CurrentInstance", [System.Reflection.BindingFlags]::Static -bor ` [System.Reflection.BindingFlags]::NonPublic) $consoleField = [NuGet.Dialog.PackageManagerWindow].GetField("_smartOutputConsoleProvider", [System.Reflection.BindingFlags]::Instance -bor ` [System.Reflection.BindingFlags]::NonPublic) if ($instanceField -eq $null -or $consoleField -eq $null) { return } $instance = $instanceField.GetValue($null) if ($instance -eq $null) { return } $consoleProvider = $consoleField.GetValue($instance) if ($consoleProvider -eq $null) { return } $console = $consoleProvider.CreateOutputConsole($false) $messagesField = $console.GetType().GetField("_messages", [System.Reflection.BindingFlags]::Instance -bor ` [System.Reflection.BindingFlags]::NonPublic) if ($messagesField -eq $null) { return } $messages = $messagesField.GetValue($console) if ($messages -eq $null) { return } $operations = $messages -split "==============================" $lastOperation = $operations | select -last 1 if ($lastOperation) { $lastOperation = $lastOperation.ToLower() $lines = $lastOperation -split "`r`n" $installMatch = $lines | ? { $_.StartsWith("------- installing...newtonsoft.json ") } | select -first 1 if ($installMatch) { $dte2.ItemOperations.Navigate($url) | Out-Null } } } } catch { try { $pmPane = $dte2.ToolWindows.OutputWindow.OutputWindowPanes.Item("Package Manager") $selection = $pmPane.TextDocument.Selection $selection.StartOfDocument($false) $selection.EndOfDocument($true) if ($selection.Text.StartsWith("Installing 'Newtonsoft.Json ")) { $dte2.ItemOperations.Navigate($url) | Out-Null } } catch { # stop potential errors from bubbling up # worst case the splash page won't open } } # still yolonewtonsoft-json-6.0.8/Build/Newtonsoft.Json.nuspec0000664000175000017500000000110612454416117022763 0ustar directhexdirecthex Newtonsoft.Json 6.0.8 Json.NET Json.NET is a popular high-performance JSON framework for .NET James Newton-King en-US http://james.newtonking.com/json https://raw.github.com/JamesNK/Newtonsoft.Json/master/LICENSE.md json newtonsoft-json-6.0.8/Doc/0000775000175000017500000000000012454416117016136 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Doc/SerializationAttributes.aml0000664000175000017500000002102612454416117023516 0ustar directhexdirecthex Attributes can be used to control how Json.NET serializes and deserializes .NET objects. T:Newtonsoft.Json.JsonObjectAttribute - Placed on classes to control how it should be serialized as a JSON object. T:Newtonsoft.Json.JsonArrayAttribute - Placed on collections to control how it should be serialized as a JSON array. T:Newtonsoft.Json.JsonDictionaryAttribute - Placed on dictionaries to control how it should be serialized as a JSON object. T:Newtonsoft.Json.JsonPropertyAttribute - Placed on fields and properties to control how it should be serialized as a property in a JSON object. T:Newtonsoft.Json.JsonConverterAttribute - Placed on either classes or fields and properties to specify which JsonConverter should be used during serialization.
Standard .NET Serialization Attributes As well as using the built-in Json.NET attributes, Json.NET also looks for the T:System.SerializableAttribute (if IgnoreSerializableAttribute on DefaultContractResolver is set to false) T:System.Runtime.Serialization.DataContractAttribute, T:System.Runtime.Serialization.DataMemberAttribute and T:System.NonSerializedAttribute and attributes when determining how JSON is to be serialized and deserialized. Json.NET attributes take presidence over standard .NET serialization attributes, e.g. if both JsonPropertyAttribute and DataMemberAttribute are present on a property and both customize the name, the name from JsonPropertyAttribute will be used.
Json.NET Serialization Attributes
JsonObjectAttribute The MemberSerialization flag on this attribute specifies whether member serialization is opt-in (a member must have the JsonProperty or DataMember attribute to be serialized), opt-out (everything is serialized by default but can be ignored with the JsonIgnoreAttribute, Json.NET's default behavor) or fields (all public and private fields are serialized, properties are ignored). Json.NET serializes .NET classes that implement IEnumerable as an JSON array populated with the IEnumerable values. Placing the JsonPropertyAttribute overrides this behavor and forces the serializer to serialize the class's fields and properties. The DataContractAttribute can be used as substitute for JsonObjectAttribute. The DataContractAttribute will default member serialization to opt-in.
JsonArrayAttribute/JsonDictionaryAttribute The JsonArrayAttribute and JsonDictionaryAttributes are used to specified whether a class is serialized as that collection type. The collection attributes have options to customize the JsonConverter, type name handling and reference handling that are applied to collection items.
JsonPropertyAttribute JsonPropertyAttribute has a number of uses: By default the JSON property will have the same name as the .NET property. This attribute allows the name to be customized. Indicates that a property should be serialized when member serialization is set to opt-in. Includes non-public properties in serialization and deserialization. Customize type name, reference, null and default value handling for the property value. Customize the property's collection items JsonConverter, type name handing and reference handling. The DataMemberAttribute can be used as substitute for JsonPropertyAttribute.
JsonIgnoreAttribute Excludes a field or property from serialization. The T:System.NonSerializedAttribute can be used as substitute for JsonIgnoreAttribute.
JsonConverterAttribute The JsonConverterAttribute specifies which JsonSerializer is used to convert an object. The attribute can be placed on a class or a member. When placed on a class the JsonConverter specified by the attribute will be the default way of serializing that class. When the attribute is on a field or property then the specified JsonConverter will always be used to serialize that value. The priority of which JsonConverter is used is member attribute then class attribute and finally any converters passed to the JsonSerializer. This example shows the JsonConverterAttribute being applied to a property. To apply a JsonConverter to the items in a collection use either T:Newtonsoft.Json.JsonArrayAttribute, T:Newtonsoft.Json.JsonDictionaryAttribute or T:Newtonsoft.Json.JsonPropertyAttribute and set the ItemConverterType property to the converter type you want to use.
T:Newtonsoft.Json.JsonObjectAttribute T:Newtonsoft.Json.JsonArrayAttribute T:Newtonsoft.Json.JsonDictionaryAttribute T:Newtonsoft.Json.JsonPropertyAttribute T:Newtonsoft.Json.JsonConverterAttribute
newtonsoft-json-6.0.8/Doc/ReducingSerializedJSONSize.aml0000664000175000017500000001736212454416117023743 0ustar directhexdirecthex One of the common problems encountered when serializing .NET objects to JSON is that the JSON ends up containing a lot of unwanted properties and values. This can be especially important when returning JSON to the client. More JSON means more bandwidth and a slower website. To solve the issue of unwanted JSON Json.NET has a range of built in options to fine tune what gets written from a serialized object.
JsonIgnoreAttribute and DataMemberAttribute By default Json.NET will include all of a classes public properties and fields in the JSON it creates. Adding the T:Newtonsoft.Json.JsonIgnoreAttribute to a property tells the serializer to always skip writing it to the JSON result. If a class has many properties and you only want to serialize a small subset of them then adding JsonIgnore to all the others will be tedious and error prone. The way to tackle this scenario is to add the T:System.Runtime.Serialization.DataContractAttribute to the class and T:System.Runtime.Serialization.DataMemberAttribute to the properties to serialize. This is opt-in serialization, only the properties you mark up with be serialized, compared to opt-out serialization using JsonIgnoreAttribute.
Formatting JSON written by the serializer with an option of T:Newtonsoft.Json.Formatting set to Indented produces nicely formatted, easy to read JSON that is great for readability when you are developing. Formatting.None on the other hand keeps the JSON result small, skipping all unnecessary spaces and line breaks to produce the most compact and efficient JSON possible.
NullValueHandling T:Newtonsoft.Json.NullValueHandling is an option on the JsonSerializer and controls how the serializer handles properties with a null value. By setting a value of NullValueHandling.Ignore the JsonSerializer skips writing any properties that have a value of null. NullValueHandling can also be customized on individual properties using the a T:Newtonsoft.Json.JsonPropertyAttribute. The JsonPropertyAttribute value of NullValueHandling will override the setting on the JsonSerializer for that property.
DefaultValueHandling T:Newtonsoft.Json.DefaultValueHandling is an option on the JsonSerializer and controls how the serializer handles properties with a default value. Setting a value of DefaultValueHandling.Ignore will make the JsonSerializer skip writing any properties that have a default value to the JSON result. For object references this will be null. For value types like int and DateTime the serializer will skip the default uninitialized value for that value type. Json.NET also allows you to customize what the default value of an individual property is using the T:System.ComponentModel.DefaultValueAttribute. For example if a string property called Department always returns an empty string in its default state and you didn't want that empty string in your JSON then placing the DefaultValueAttribute on Department with that value will mean Department is no longer written to JSON unless it has a value. DefaultValueHandling can also be customized on individual properties using the a T:Newtonsoft.Json.JsonPropertyAttribute. The JsonPropertyAttribute value of DefaultValueHandling will override the setting on the JsonSerializer for that property.
IContractResolver For more flexibility the T:Newtonsoft.Json.Serialization.IContractResolver provides an interface to customize almost every aspect of how a .NET object gets serialized to JSON, including changing serialization behavior at runtime.
T:Newtonsoft.Json.Formatting T:Newtonsoft.Json.JsonIgnoreAttribute T:Newtonsoft.Json.DefaultValueHandling T:Newtonsoft.Json.NullValueHandling
newtonsoft-json-6.0.8/Doc/SerializationSettings.aml0000664000175000017500000004311212454416117023170 0ustar directhexdirecthex JsonSerializer has a number of properties on it to customize how it serializes JSON. These can also be used with the methods on JsonConvert via the T:Newtonsoft.Json.JsonSerializerSettings overloads.
DateFormatHandling T:Newtonsoft.Json.DateFormatHandling controls how dates are serialized. Member Description IsoDateFormat By default Json.NET writes dates in the ISO 8601 format, e.g. "2012-03-21T05:40Z". MicrosoftDateFormat Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/".
MissingMemberHandling T:Newtonsoft.Json.MissingMemberHandling controls how missing members, e.g. JSON contains a property that isn't a member on the object, are handled during deserialization. Member Description Ignore By default Json.NET ignores JSON if there is no field or property for its value to be set to during deserialization. Error Json.NET errors when there is a missing member during deserialization.
ReferenceLoopHandling T:Newtonsoft.Json.ReferenceLoopHandling controls how circular referencing objects, e.g. a Person object referencing itself via a Manager property, are serialized. The M:System.Object.Equals(System.Object) method is used to test whether an object is in a circular reference. By default Object.Equals(Object) will test whether the references are equal for reference types and private and public values are equal for value types. Classes and structs can override this method. Member Description Error By default Json.NET will error if a reference loop is encountered (otherwise the serializer will get into an infinite loop). Ignore Json.NET will ignore objects in reference loops and not serialize them. The first time an object is encountered it will be serialized as usual but if the object is encountered as a child object of itself the serializer will skip serializing it. Serialize This option forces Json.NET to serialize objects in reference loops. This is useful if objects are nested but not indefinitely.
ReferenceLoopHandling can be used as an argument when calling the serializer, it can be set on an object's properties or a collection's items using P:Newtonsoft.Json.JsonContainerAttribute.ItemReferenceLoopHandling, customized on a property with P:Newtonsoft.Json.JsonPropertyAttribute.ReferenceLoopHandling or a property's object properties or collection items using P:Newtonsoft.Json.JsonPropertyAttribute.ItemReferenceLoopHandling.
NullValueHandling T:Newtonsoft.Json.NullValueHandling controls how null values on .NET objects are handled during serialization and how null values in JSON are handled during deserialization. Member Description Include By default Json.NET writes null values to JSON when serializing and sets null values to fields/properties when deserializing. Ignore Json.NET will skip writing JSON properties if the .NET value is null when serializing and will skip setting fields/properties if the JSON property is null when deserializing.
NullValueHandling can also be customized on individual properties with JsonPropertyAttribute.
DefaultValueHandling T:Newtonsoft.Json.DefaultValueHandling controls how Json.NET uses default values set using the .NET T:System.ComponentModel.DefaultValueAttribute when serializing and deserializing. Member Description Include By default Json.NET will write a field/property value to JSON when serializing if the value is the same as the field/property's default value. The Json.NET deserializer will continue setting a field/property if the JSON value is the same as the default value. Ignore Json.NET will skip writing a field/property value to JSON if the value is the same as the field/property's default value, or the custom value specified in T:System.ComponentModel.DefaultValueAttribute if the attribute is present. The Json.NET deserializer will skip setting a .NET object's field/property if the JSON value is the same as the default value.
DefaultValueHandling can also be customized on individual properties with JsonPropertyAttribute.
ObjectCreationHandling T:Newtonsoft.Json.ObjectCreationHandling controls how objects are created and deserialized to during deserialization. Member Description Auto By default Json.NET will attempt to set JSON values onto existing objects and add JSON values to existing collections during deserialization. Reuse Same behaviour as auto. Replace Json.NET will always recreate objects and collections before setting values to them during deserialization.
ObjectCreationHandling can also be customized on individual properties with JsonPropertyAttribute.
TypeNameHandling T:Newtonsoft.Json.TypeNameHandling controls whether Json.NET includes .NET type names during serialization with a $type property and reads .NET type names from that property to determine what type to create during deserialization. The value of the $type property can be customized by creating your own T:System.Runtime.Serialization.SerializationBinder. Member Description None By default Json.NET does not read or write type names during deserialization. Objects Json.NET will write and use type names for objects but not collections. Arrays Json.NET will write and use type names for collections but not objects. Auto Json.NET will check whether an object/collection matches its declared property and writes the type name if they do not match, e.g. a property with a type of Mammal has a derived instance of Dog assigned. Auto will ensure that type information isn't lost when serializing/deserializing automatically without having to write type names for every object. All Json.NET will write and use type names for objects and collections.
TypeNameHandling can be used as an argument when calling the serializer, it can be set on an object's properties or a collection's items using P:Newtonsoft.Json.JsonContainerAttribute.ItemTypeNameHandling, customized on a property with P:Newtonsoft.Json.JsonPropertyAttribute.TypeNameHandling or a property's object properties or collection items using P:Newtonsoft.Json.JsonPropertyAttribute.ItemTypeNameHandling.
TypeNameAssemblyFormat T:System.Runtime.Serialization.Formatters.FormatterAssemblyStyle controls how type names are written during serialization. Member Description Simple By default Json.NET writes the partial assembly name with the type, e.g. System.Data.DataSet, System.Data. Note that Silverlight and Windows Phone are not able to use this format. Full Json.NET will write the full assembly name, including version number, culture and public key token.
Read more about the valid values at T:System.Runtime.Serialization.Formatters.FormatterAssemblyStyle.
Binder The T:System.Runtime.Serialization.SerializationBinder is used to resolve type names to a .NET type. Read more about the serialization binder here: T:System.Runtime.Serialization.SerializationBinder
ConstructorHandling T:Newtonsoft.Json.ConstructorHandling controls how constructors are used when initializing objects during deserialization. Member Description Default By default Json.NET will first look for a constructor marked with the JsonConstructorAttribute, then look for a public default constructor (a constructor that doesn't take any arguments), then check if the class has a single public constructor with arguments and finally check for a non-public default constructor. If the class has multiple public constructors with arguments an error will be thrown. This can be fixed by marking one of the constructors with the JsonConstructorAttribute. AllowNonPublicDefaultConstructor Json.NET will use a classes private default constructor before constructors with arguments if available.
Converters This is the collection of JsonConverters that will be used during serialization and deserialization. A T:Newtonsoft.Json.JsonConverter allows JSON to be manually written during serialization and read during deserialization. This is useful for particularly complex JSON structures or for when you want to change how a type is serialized. When a JsonConverter has been added to a JsonSerializer it will be checked for every value that is being serialized/deserialized using its CanConvert to see if it should be used. If CanConvert returns true then the JsonConverter will be used to read or write the JSON for that value. Note that while a JsonConverter gives you complete control over that values JSON, many Json.NET serialization features are no longer available like type name and reference handling. JsonConverters can be used as an argument when calling the serializer, it can be set on an object or property using T:Newtonsoft.Json.JsonConverterAttribute, it be set on an object's properties or a collection's items using P:Newtonsoft.Json.JsonContainerAttribute.ItemConverterType, or a property's object properties or collection items using P:Newtonsoft.Json.JsonPropertyAttribute.ItemConverterType. To create your own custom converter inherit from the JsonConverter class. Read more about the built-in JsonConverters below: T:Newtonsoft.Json.Converters.StringEnumConverter
ContractResolver Internally for every .NET type the JsonSerializer will create a contract of how the type should be serialized and deserialized, based on type metadata and attributes applied to the class. Specifying a custom T:Newtonsoft.Json.Serialization.IContractResolver allows the creation of contracts to be customized. Read more about Contract Resolvers here:
TraceWriter The Json.NET serializer supports logging and debugging using the T:Newtonsoft.Json.Serialization.ITraceWriter interface. By assigning a trace writer you can debug what happens inside the Json.NET serializer when serializing and deserializing JSON. Read more about TraceWriters here:
Error The E:Newtonsoft.Json.JsonSerializer.Error event can catch errors during serialization and either handle the event and continue with serialization or let the error bubble up and be thrown to the application. Read more about error handling here:
Serialization Guide SerializationGuide.htm _self Serialization Attributes SerializationAttributes.htm _self Serializing Dates in JSON DatesInJSON.htm _self T:Newtonsoft.Json.JsonSerializer T:Newtonsoft.Json.JsonSerializerSettings T:Newtonsoft.Json.JsonConverter T:System.Runtime.Serialization.SerializationBinder
newtonsoft-json-6.0.8/Doc/SerializingJSONFragments.aml0000664000175000017500000000325712454416117023461 0ustar directhexdirecthex Often when working with large JSON documents you're only interested in a small fragment of information. This scenario can be annoying when you want to serialize that Json.NET into .NET objects because you have to define .NET classes for the entire JSON result. With Json.NET it is easy to get around this problem. Using LINQ to JSON you can extract the pieces of JSON you want to serialize before passing them to the Json.NET serializer. T:Newtonsoft.Json.JsonReader T:Newtonsoft.Json.JsonWriter T:Newtonsoft.Json.Linq.JTokenReader T:Newtonsoft.Json.Linq.JTokenWriter T:Newtonsoft.Json.Bson.BsonReader T:Newtonsoft.Json.Bson.BsonWriter newtonsoft-json-6.0.8/Doc/jsonnetwindowsdatajson.png0000664000175000017500000001461112454416117023466 0ustar directhexdirecthexPNG  IHDRPd?QsRGBgAMA aPLTE:::::::::::f:f:f::fff:ffff:f:f::ffff:fff:::f:ff::::Offff::::ffff:ffPM::ffې:ېf۶ff۶ېېې pHYs(JtEXtSoftwarePaint.NET v3.5.100rIDATx^ ƹ⺸qs:N9MZ4rTi$v%X3͎(Oɧ(MOʛ(Pʫ( @ (r0*ʉ*' P`ʫ( @ (r0*ʉ)VwO}e9,dw=LZe?ܹOm(Gmj̉=;E-Ek^Jb.8"T[IF0/gDF:drs_+h[fVP˽|g')C?І'㈱ܪtxD(3- o4n\qO%qTKN(IԥV68o[&@qR JFLZl3π*綸jB}.0Xzb[.Y[IZ2'x`5B(#n#P5Ƣ"Vț/Υ|PZTp m : t@u_GWNެx@% ʼnEWx&?F"Mv?9PeR*CKAM`!s_g@jM4Ri#\VOMnu@_5%Vm-Hbv|(EVEp=] n3'Rم.\mB@f표8)AmFeQ5SlGuTsjV"I(N(- E',I@htSXL%EqP% ҒmVKUJ*$fLJ2!P $xP~g@ @ISX\o3+M|hrq8ɜ^GjUPY^U> A.I(N(:4eW!1P~$#|58C.J$|9\yf9ʝV- U*۪. irQ\vwfȐ_a@ qI%:LNu._YPzJ%L\ V5grJ] +]k$!-PٖxMYY^ZF$Aoګv\.fy N-*H%V*I⠗Y^qͽM+|y'MwO@ t|(_NHx (wzU8\$^*ྕy'Q#@RztGwq#'3ߤE"3,y{vT$!- PPrpCG>%_ÂqG5R9Emy깥W/Y&peыҸB$X g՗N$iP*TQn ~6 WkPѻ~6 WkPѻ~XZxDv gg5`k]x̯Ey`z@wW? ~D2y rn y|x*M ⹀8)B/Ş_ k_jV~O9xՀ(Ə~-\'o{4!uEKxx~t|M߿䷣l=x/VNj@ɗkz'OffyMBK.n( pEl1 Rϡ~~w.Df7&1 b9(GL^.VPvi Czu1* Noߚe<MmmD( R͊5S<6P|nuj36Pf5Pʊ@((V#2b5Pʊ@((V#2b5Pe1f" ;K6(T2@GPĴ2ivoePaCYd|c U I'!*gPdyT>Cu<1"%& <;,t.l,+9 @(\)? S"> I'!qWC,Ήf)1a0f [7p u(\*突;6VTIy7.Rbಁn uSgy8JP =!yP9ӮXb,ώF7Kݺ)IWrP8Y~n>RGu{lk'/Af [7#)JP gy}0HrZj{@b!@ܲHXӑSYzP5$cn]Ӂ6fHY}K)ysmT=lq TAm67(,HMZs=a@$ebP_=̦[-hWZ,B(G@,L H&Iygj.yG(9+Ճ {sU*E!]*YP?4@4"DCQ?׻jA|~Ê0AJ<>ض2ҟ,g@Q.*@u %!K |QǺb;__vwd)@-o9ъts 9#J<8O%Bq - (l#P2P,߾ϒr&D%%l=m׏wu9U8- .qZ*iUwUJ{ KV*-- .qZ(Q JIENDB`newtonsoft-json-6.0.8/Doc/SerializationTracing.aml0000664000175000017500000000446512454416117022767 0ustar directhexdirecthex The Json.NET serializer supports logging and debugging using the T:Newtonsoft.Json.Serialization.ITraceWriter interface. By assigning a trace writer you can capture serialization messages and errors, and debug what happens inside the Json.NET serializer when serializing and deserializing JSON.
ITraceWriter A trace writer can be assigned using properties on JsonSerializerSettings or JsonSerializer. Json.NET has two implementations of ITraceWriter: T:Newtonsoft.Json.Serialization.MemoryTraceWriter which keeps messages in memory for simple debugging like the example above, and T:Newtonsoft.Json.Serialization.DiagnosticsTraceWriter which writes messages to any System.Diagnostics.TraceListeners your application is using.
Custom ITraceWriter To write messages using your existing logging framework just implement a custom version of ITraceWriter.
T:Newtonsoft.Json.JsonSerializer T:Newtonsoft.Json.Serialization.ITraceWriter T:Newtonsoft.Json.Serialization.MemoryTraceWriter T:Newtonsoft.Json.Serialization.DiagnosticsTraceWriter
newtonsoft-json-6.0.8/Doc/ContractResolver.aml0000664000175000017500000000732212454416117022134 0ustar directhexdirecthex The T:Newtonsoft.Json.Serialization.IContractResolver interface provides a way to customize how the JsonSerializer serializes and deserializes .NET objects to JSON without placing attributes on your classes. Anything that can be set on an object, collection, property, etc, using attributes or methods to control serialization can also be set using an IContractResolver.
DefaultContractResolver The T:Newtonsoft.Json.Serialization.DefaultContractResolver is the default resolver used by the serializer. It provides many avenues of extensibility in the form of virtual methods that can be overriden.
CamelCasePropertyNamesContractResolver T:Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver inherits from DefaultContractResolver and simply overrides the JSON property name to be written in camelcase http://en.wikipedia.org/wiki/CamelCase _blank .
Custom IContractResolver Examples This example sets a T:Newtonsoft.Json.JsonConverter for a type using an IContractResolver. Using a contract resolver here is useful because DateTime is not your own type and it is not possible to place a JsonConverterAttribute on it. This example sets up conditional serialization for a property using an IContractResolver. This is useful if you want to conditionally serialize a property but don't want to add additional methods to your type.
T:Newtonsoft.Json.Serialization.IContractResolver T:Newtonsoft.Json.Serialization.DefaultContractResolver T:Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver
newtonsoft-json-6.0.8/Doc/ConvertingJSONandXML.aml0000664000175000017500000001172012454416117022506 0ustar directhexdirecthex Json.NET supports converting JSON to XML and vice versa using the T:Newtonsoft.Json.Converters.XmlNodeConverter. Elements, attributes, text, comments, character data, processing instructions, namespaces and the XML declaration are all preserved when converting between the two. The only caveat is that it is possible to lose the order of differently named nodes at the same level when they are grouped together into an array.
Conversion Rules Elements remain unchanged. Attributes are prefixed with an @ and should be at the start of the object. Single child text nodes are a value directly against an element, otherwise they are accessed via #text. The XML declaration and processing instructions are prefixed with ?. Charater data, comments, whitespace and significate whitespace nodes are accessed via #cdata-section, #comment, #whitespace and #significate-whitespace respectively. Multiple nodes with the same name at the same level are grouped together into an array. Empty elements are null. If the XML created from JSON doesn't match what you want then you will need to convert it manually. The best approach to do this is to load your JSON into a LINQ to JSON object like JObject or JArray and then use LINQ to create an XDocument. The opposite process, using LINQ with an XDocument to create a JObject or JArray, also works. Find out more about using LINQ to JSON with LINQ here. The version of Json.NET being used in your application will change what XML conversion methods are available. SerializeXmlNode/DeserializeXmlNode are available when the framework supports XmlDocument, SerializeXNode/DeserializeXNode are available when the framework supports XDocument.
SerializeXmlNode The JsonConvert has two helper methods for converting between JSON and XML. The first is Overload:Newtonsoft.Json.JsonConvert.SerializeXmlNode. This method takes an XmlNode and serializes it to JSON text. Because multiple nodes with a the same name at the same level are grouped together into an array the convernsion process can produce different JSON depending on the number of nodes. For example if some XML for a user has a single <Role> node then that role will be text against a JSON "Role" property, but if the user has multiple <Role> nodes then the role values will be placed in a JSON array. To fix this situation a custom XML attribute can be added to force a JSON array to be created.
DeserializeXmlNode The second helper method on JsonConvert is Overload:Newtonsoft.Json.JsonConvert.DeserializeXmlNode. This method takes JSON text and deserializes it into a XmlNode. Because valid XML must have one root element the JSON passed to DeserializeXmlNode should have one property in the root JSON object. If the root JSON object has multiple properties then the overload that also takes an element name should be used. A root element with that name will be inserted into the deserialized XmlNode.
T:Newtonsoft.Json.Converters.XmlNodeConverter T:Newtonsoft.Json.JsonConvert
newtonsoft-json-6.0.8/Doc/DatesInJSON.aml0000664000175000017500000001144612454416117020660 0ustar directhexdirecthex DateTimes in JSON are hard. The problem comes from the JSON spec http://www.ietf.org/rfc/rfc4627.txt _blank itself: there is no literal syntax for dates in JSON. The spec has objects, arrays, strings, integers and floats, but it defines no standard for what a date looks like.
Dates and Json.NET The default format used by Json.NET is the ISO 8601 standard http://en.wikipedia.org/wiki/ISO_8601 _blank : "2012-03-19T07:22Z". Prior to Json.NET 4.5 dates were written using the Microsoft format: "\/Date(1198908717056)\/". If you want to use this format, or you want to maintain compatibility with Microsoft JSON serializers or older versions of Json.NET then change the T:Newtonsoft.Json.DateFormatHandling setting to MicrosoftDateFormat. Json.NET also has the T:Newtonsoft.Json.DateTimeZoneHandling setting. This can be used to convert DateTime's kind when serializing, e.g. set DateTimeZoneHandling to Utc to serialize all DateTimes as UTC dates.
DateTime JsonConverters With no standard for dates in JSON, the number of possible different formats when interoping with other systems is endless. Fortunately Json.NET has a solution to deal with reading and writing custom dates: JsonConverters. A JsonConverter is used to override how a type is serialized. Simply pass the JsonConverter you wish to use to the Json.NET serializer.
JavaScriptDateTimeConverter The JavaScriptDateTimeConverter class is one of the two DateTime JsonConverters that come with Json.NET. This converter serializes a DateTime as a JavaScript Date object http://msdn.microsoft.com/en-us/library/cd9w2te4.aspx _blank : new Date(1234656000000) Technically this is invalid JSON according to the spec but all browsers, and some JSON frameworks, including Json.NET, support it.
IsoDateTimeConverter From Json.NET 4.5 and onwards dates are written using the ISO 8601 format by default and using this converter is unnecessary. IsoDateTimeConverter seralizes a DateTime to an ISO 8601 http://en.wikipedia.org/wiki/ISO_8601 _blank formatted string: "2009-02-15T00:00:00Z" The IsoDateTimeConverter class has a property, DateTimeFormat, to further customize the formatted string.
T:Newtonsoft.Json.DateFormatHandling T:Newtonsoft.Json.DateTimeZoneHandling T:Newtonsoft.Json.Converters.JavaScriptDateTimeConverter T:Newtonsoft.Json.Converters.IsoDateTimeConverter
newtonsoft-json-6.0.8/Doc/performance.png0000664000175000017500000001751212454416117021153 0ustar directhexdirecthexPNG  IHDRYhsRGBgAMA aPLTE9:99::999::99::999:::f9f9f::fffff9f:f9f99f::ffff9ff:@@@fff9:99::f:ff9f::99:Offff9:99::9ffffffPM9:9:fffۏ9ې:ۏf۶ff۶۶ۏۏ۶ېۏې pHYsodtEXtSoftwarePaint.NET v3.5.100rIDATx^흏Y}lCMBvS]B뤔ҽi{lKxhd{4%ۏ>yw;|h,K} fVؠ | ǔu`P?c+ {A00`p@` P?c+ /fŖmt~kVFY;P/f jz>*~G۳5 T2]g˺@ӍӢM 7>u [ܜG_N-q\k$9')"fkʠu3C v#-On*&0J}8DC}#¬SFa.8LAҦERLڒz3 n}IQO} fmKsTlIø .Ga_pcdn%A>",og0m "t>( A jin2LyN5F ۨG*.8jɯPP-cQ e*o,h]`vtb nwe$?mSAA* J9NHq4.Y)N[ &ηFyאæ^#O;[^N{[fsHMm#adPt-̓^込mWF\6(DHd' 6*HI>'zv5T /tf3*k,BoHG޸h*274t0BVαxg܈+22Q5'5&@5Vh\Rp+o r<'M 6u-ePIN,H(x4pӍP4Mmmbfֳ8Rq0U nO5rVb_' F5syR yCŠ"e c^?l|p_dP6CAQUisW8iiPƔM+b=KlI18tc?Ux(#N_ӈ F?s+1iOъ(DF{dl= [08vgpո>/ >B[Zi4aeP[~C3gsK2"XsɎ ߱'5Vb0`QJ$.>V~!יpvO-e')zCWrJؓ>H.L5~=S#*{=\Pr̿o.{䝢<<( /.k:1\sI[fVal4w{R{|NJMF)K>\[beB?>,uS4Z̃=:qt rZTě^ɉP X>'jmJitѢ=Q 2X\?gzp܋!`sSg`e1W JZEyf j?xz8}w<3PJkT/5|j$)42$Fa(NS΃@c)z`,P?c+ {A00`p@` P?c+ {A00`p@` P?b[c 2)+t ~x3ݖZLfэ?V2\D`02;$}9&Q}Jls//l0HЯ)=~[y<$~.wo f t7uCir\j[uq9\O3LӒ[hAy41eAJQ.Gp- fa0(&e=I<=u':9 c1׼1cٟɸ6n]4=G{Z+[KzV ,(ܵV ;YPkl-vY0سpZ0Z2г`gA᮵`dءg`ς]k`kɰC  ֒a= w%=+{Z+[KzV ,(ܵV ;Y-wق?GOwo& AX^]=?WL$60xs!^;g?]~7:mi+AS^os ~=;=(9  t7.{Y!M9+RJ߾mivw}`n%w!5)aF;{Ad;F<& ˧%q,Ҝϵn088Ht  <מNt\#i7N_k$`\{~:C=}:C _Сc08tAOa0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj?-W캪gwU`XBI1zx^^޽}`TAoSdpuE^^ 짳_fCbz`sz~]-qV6[o`d-w8-o/q4;|v~.T>~yς-j_\}3%Xfvy=U899 b -{">ȃmj_f<9iIdȃji1خy`NKAO;0)Tj`S=P z AOR;Bv0)=J`S z *nDP zAOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;Bv0)=J`S z *AOA0)Tj`S=P z AOR;B 3>y[UkywG}J40J/o7W{{;w.ܫUU?D(֟lv|vS=."NMǗ ΁ۂjkJ+bsc`w8V˙N5#>ǯ^Y`=pS΃IWɻA{B0xdzd .h黔AkI`xa'm O\ |y/t}auaIEh˫ o?l M$-ܻjrw-u4nG`-}p&[GeՄӡ VM#2f7_IaTn ֫& F&i2hYwa=L-uVfpk0m9jyv# ?) no]u~w0m9jNr&09Lua0ٍ~7)K tګ3=7~Pg7t>$gwB^d^oAMr&0>Ysa2c~yi|̕.cۭ@nW\&Ƞ~yi||-Ǻ~IA[,+j 7 2UM̶=-.^hN]wˠz.Iqi@nW] 72HЊK`p2;1koJ.x [n`f&w} 㸞/^<0u372h|w}ʠ34xꄤa@6Q l ꗗL]bǢ'}u ]c'+쳎i&`P.'o>Y޵z<5t~xOr)WocuĒ<3Wrq)@ŠA>0dϋAXNMKOq=1w'iD>ձS\OL0&:)eo';Jȃx'ŠQ`Г z `Ks^sGJvr/ϙܮ.7`ι~dƻΡ4A2薻 l|#`YڷO(`|0S\Aߙb>S;=*=72Ls=x #SNy9]cq%wk){:?B)Fwz>-a'Ǘz<1ivJ!pIvcK >ՠ-j:D-uHlP R)Rwsx: 7Y=RpaEp_=4w {>z|YK~\m& ,nTCK88?.w2`PrEs_Nk_؃{NJ$1{&_7Dϙr?1ٛC{3vx'?66Ȟ8nvʧTymTwO~uoIR7o؃]bhɠ>xSW{|ItإӷtǗP{. ={OhypEI#aڢVz&U) $a,mTO_S{IȠH`/DG5k'6]% DU,7ǬrnX\?A4YLtXtwA9${&=GP {KV˃ZR(ZzV P 4<:T/?ɧltPȵr% @]lCq& tW|x ?`~:W>d)YDO ųK<SAcPIi7PU3"ZHAIBe0Z,ovg ry1D^o,Vby:`uav C_XX$-!;ܥAlxx52qz R+OcڛCF$iSY䉨ʷS=ePL6 (q  {ރ?GPfHw`0G%R08Q eT .|(sTB!C 9 PfH[lP`L~,YIENDB`newtonsoft-json-6.0.8/Doc/license.txt0000664000175000017500000000204412454416117020321 0ustar directhexdirecthexCopyright (c) 2007 James Newton-King Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.newtonsoft-json-6.0.8/Doc/SerializationErrorHandling.aml0000664000175000017500000001351412454416117024131 0ustar directhexdirecthex Json.NET supports error handling during serialization and deserialization. Error handling lets you catch an error and choose whether to handle it and continue with serialization or let the error bubble up and be thrown in your application. Error handling is defined through two methods: the Error event on JsonSerializer and the OnErrorAttribute.
Error Event The E:Newtonsoft.Json.JsonSerializer.Error event is an event handler found on T:Newtonsoft.Json.JsonSerializer. The error event is raised whenever an exception is thrown while serializing or deserialing JSON. Like all settings found on JsonSerializer it can also be set on T:Newtonsoft.Json.JsonSerializerSettings and passed to the serialization methods on JsonConvert. In this example we are deserializing a JSON array to a collection of DateTimes. On the JsonSerializerSettings a handler has been assigned to the Error event which will log the error message and mark the error as handled. The result of deserializing the JSON is three successfully deserialized dates and three error messages: one for the badly formatted string, "I am not a date and will error!", one for the nested JSON array and one for the null value since the list doesn't allow nullable DateTimes. The event handler has logged these messages and Json.NET has continued on deserializing the JSON because the errors were marked as handled. One thing to note with error handling in Json.NET is that an unhandled error will bubble up and raise the event on each of its parents, e.g. an unhandled error when serializing a collection of objects will be raised twice, once against the object and then again on the collection. This will let you handle an error either where it occurred or on one of its parents. If you aren't immediately handling an error and only want to perform an action against it once then you can check to see whether the T:Newtonsoft.Json.Serialization.ErrorEventArgs's CurrentObject is equal to the OriginalObject. OriginalObject is the object that threw the error and CurrentObject is the object that the event is being raised against. They will only equal the first time the event is raised against the OriginalObject.
OnErrorAttribute The T:Newtonsoft.Json.Serialization.OnErrorAttribute works much like the other .NET serialization attributes that Json.NET supports. To use it you simply place the attribute on a method which takes the correct parameters: a StreamingContext and a ErrorContext. The name of the method doesn't matter. In this example accessing the the Roles property will throw an exception when no roles have been set. The HandleError method will set the error when serializing Roles as handled and allow Json.NET to continue serializing the class.
Serialization Attributes SerializationAttributes.htm _self E:Newtonsoft.Json.JsonSerializer.Error T:Newtonsoft.Json.Serialization.OnErrorAttribute
newtonsoft-json-6.0.8/Doc/LINQtoJSON.aml0000664000175000017500000000276112454416117020437 0ustar directhexdirecthex LINQ to JSON is an API for working with JSON objects. It has been designed with LINQ in mind to enable to quick querying and creation of JSON objects. LINQ to JSON sits under the N:Newtonsoft.Json.Linq namespace.
Topics Select a topic below for more information:
T:Newtonsoft.Json.Linq.JObject T:Newtonsoft.Json.Linq.JArray T:Newtonsoft.Json.Linq.JValue
newtonsoft-json-6.0.8/Doc/JsonSchema.aml0000664000175000017500000001013312454416117020661 0ustar directhexdirecthex Json.NET supports the JSON Schema standard via the T:Newtonsoft.Json.Schema.JsonSchema and T:Newtonsoft.Json.JsonValidatingReader classes. It sits under the N:Newtonsoft.Json.Schema namespace. JSON Schema is used to validate the structure and data types of a piece of JSON, similar to XML Schema for XML. Read more about JSON Schema at json-schema.org http://json-schema.org/ _blank The JSON Schema standard isn't final. Json.NET implements JSON Schema Draft 3 https://tools.ietf.org/html/draft-zyp-json-schema-03 _blank . There will be breaking changes to some parts of Json.NET's JSON Schema API when it is updated to implement newer drafts of JSON Schema.
Validating with JSON Schema The simplest way to check if JSON is valid is to load the JSON into a JObject or JArray and then use the M:Newtonsoft.Json.Schema.Extensions.IsValid(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema) method with the JSON Schema. To get validation error messages use the M:Newtonsoft.Json.Schema.Extensions.IsValid(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema,System.Collections.Generic.IList{System.String}@) or M:Newtonsoft.Json.Schema.Extensions.Validate(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema,Newtonsoft.Json.Schema.ValidationEventHandler) overloads. Internally IsValid uses T:Newtonsoft.Json.JsonValidatingReader to perform the JSON Schema validation. To skip the overhead of loading JSON into a JObject/JArray, validating the JSON and then deserializing the JSON into a class, JsonValidatingReader can be used with JsonSerializer to validate JSON while the object is being deserialized.
Creating JSON Schemas The simplest way to get a T:Newtonsoft.Json.Schema.JsonSchema object is to load it from a string or a file. It is also possible to create JsonSchema objects in code.
T:Newtonsoft.Json.Schema.JsonSchema T:Newtonsoft.Json.JsonValidatingReader
newtonsoft-json-6.0.8/Doc/QueryingLINQtoJSON.aml0000664000175000017500000000650512454416117022163 0ustar directhexdirecthex LINQ to JSON provides a number of methods for getting data from its objects. The index methods on JObject/JArray let you quickly get data by its property name on an object or index in a collection, while M:Newtonsoft.Json.Linq.JToken.Children lets you get ranges of data as IEnumerable<JToken> to then query using LINQ.
Getting values by Property Name or Collection Index The simplest way to get a value from LINQ to JSON is to use the P:Newtonsoft.Json.Linq.JToken.Item(System.Object) index on JObject/JArray and then cast the returned T:Newtonsoft.Json.Linq.JValue to the type you want.
Querying with LINQ JObject/JArray can also be queried using LINQ. M:Newtonsoft.Json.Linq.JToken.Children returns the children values of a JObject/JArray as an IEnumerable<JToken> that can then be queried with the standard Where/OrderBy/Select LINQ operators. M:Newtonsoft.Json.Linq.JToken.Children returns all the children of a token. If it is a JObject it will return a collection of properties to work with and if it is a JArray you will get a collection of the array's values. LINQ to JSON can also be used to manually convert JSON to a .NET object. Manually serializing and deserializing between .NET objects is useful when you are working with JSON that doesn't closely match your .NET objects.
LINQ to JSON LINQtoJSON.htm _self P:Newtonsoft.Json.Linq.JToken.Item(System.Object) M:Newtonsoft.Json.Linq.JToken.Children
newtonsoft-json-6.0.8/Doc/Samples/0000775000175000017500000000000012454416117017542 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Doc/Samples/Bson/0000775000175000017500000000000012454416117020443 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Doc/Samples/Bson/DeserializeFromBson.aml0000664000175000017500000000135512454416117025050 0ustar directhexdirecthex This sample deserializes BSON to an object.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Bson/DeserializeFromBsonCollection.aml0000664000175000017500000000176012454416117027064 0ustar directhexdirecthex This sample sets P:Newtonsoft.Json.Bson.BsonReader.ReadRootValueAsArray to true so the root BSON value is correctly read as an array instead of an object and deserializes BSON to a collection.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Bson/SerializeToBson.aml0000664000175000017500000000133712454416117024216 0ustar directhexdirecthex This sample serializes an object to BSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Xml/0000775000175000017500000000000012454416117020302 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Doc/Samples/Xml/ConvertXmlToJsonForceArray.aml0000664000175000017500000000134612454416117026215 0ustar directhexdirecthex This sample reads the json:Array="true" attribute in the XML and places its value in an array when converting the XML to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Xml/ConvertJsonToXml.aml0000664000175000017500000000111412454416117024230 0ustar directhexdirecthex This sample converts JSON to XML.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Xml/ConvertXmlToJson.aml0000664000175000017500000000111412454416117024230 0ustar directhexdirecthex This sample converts XML to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Json/0000775000175000017500000000000012454416117020453 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Doc/Samples/Json/CustomJsonReader.aml0000664000175000017500000000143612454416117024401 0ustar directhexdirecthex This sample creates a custom T:Newtonsoft.Json.JsonReader.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Json/CustomJsonWriter.aml0000664000175000017500000000143612454416117024453 0ustar directhexdirecthex This sample creates a custom T:Newtonsoft.Json.JsonWriter.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Json/ReadJsonWithJsonTextReader.aml0000664000175000017500000000125512454416117026334 0ustar directhexdirecthex This sample reads JSON using the T:Newtonsoft.Json.JsonTextReader.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Json/WriteJsonWithJsonTextWriter.aml0000664000175000017500000000126012454416117026621 0ustar directhexdirecthex This sample writes JSON using the T:Newtonsoft.Json.JsonTextWriter.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Samples.aml0000664000175000017500000000254712454416117021651 0ustar directhexdirecthex Over 100 code samples covering Json.NET's most commonly used functionality.
Samples Serializing JSON - Serializing and deserializing JSON, serializer settings and serialization attributes LINQ to JSON - Parsing, querying, modifying and writing JSON JSON Schema - Loading schemas and validating JSON Converting XML - Converting JSON to XML and XML to JSON BSON - Serializing and deserializing BSON Reading and Writing JSON - Reading JSON with JsonTextReader, writing JSON with JsonTextWriter
newtonsoft-json-6.0.8/Doc/Samples/Schema/0000775000175000017500000000000012454416117020742 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Doc/Samples/Schema/JTokenValidateWithEvent.aml0000664000175000017500000000161112454416117026136 0ustar directhexdirecthex This sample validates a T:Newtonsoft.Json.Linq.JObject using the M:Newtonsoft.Json.Schema.Extensions.IsValid(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema) extension method and raises an event for each validation error.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Schema/LoadJsonSchemaFromFile.aml0000664000175000017500000000125712454416117025720 0ustar directhexdirecthex This sample loads a T:Newtonsoft.Json.Schema.JsonSchema from a file.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Schema/JTokenIsValidWithMessages.aml0000664000175000017500000000157212454416117026434 0ustar directhexdirecthex This sample validates a T:Newtonsoft.Json.Linq.JObject using the M:Newtonsoft.Json.Schema.Extensions.IsValid(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema) extension method and returns error messages.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Schema/RefJsonSchemaResolver.aml0000664000175000017500000000134312454416117025647 0ustar directhexdirecthex This sample uses a T:Newtonsoft.Json.Schema.JsonSchemaResolver to resolve schema references from different JSON documents.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Schema/SaveJsonSchemaToFile.aml0000664000175000017500000000125112454416117025410 0ustar directhexdirecthex This sample saves a T:Newtonsoft.Json.Schema.JsonSchema to a file.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Schema/JsonSchemaParse.aml0000664000175000017500000000123712454416117024465 0ustar directhexdirecthex This sample parses a T:Newtonsoft.Json.Schema.JsonSchema from JSON
Sample
newtonsoft-json-6.0.8/Doc/Samples/Schema/JsonValidatingReaderAndSerializer.aml0000664000175000017500000000160712454416117030155 0ustar directhexdirecthex This sample validates JSON while deserializing an object using T:Newtonsoft.Json.JsonValidatingReader.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Schema/CreateJsonSchemaManually.aml0000664000175000017500000000130712454416117026317 0ustar directhexdirecthex This sample creates a new T:Newtonsoft.Json.Schema.JsonSchema instance manually in code.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Schema/JTokenIsValid.aml0000664000175000017500000000150712454416117024106 0ustar directhexdirecthex This sample validates a T:Newtonsoft.Json.Linq.JObject using the M:Newtonsoft.Json.Schema.Extensions.IsValid(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema) extension method.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/0000775000175000017500000000000012454416117020445 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Doc/Samples/Linq/QueryJsonDynamic.aml0000664000175000017500000000121012454416117024376 0ustar directhexdirecthex This sample loads JSON and then queries values from it using C# dynamic functionality.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/WriteToJsonFile.aml0000664000175000017500000000113412454416117024166 0ustar directhexdirecthex This sample writes LINQ to JSON objects to a file.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ParseJsonObject.aml0000664000175000017500000000131112454416117024167 0ustar directhexdirecthex This sample parses a JSON object using M:Newtonsoft.Json.Linq.JObject.Parse(System.String).
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ToObjectComplex.aml0000664000175000017500000000130312454416117024176 0ustar directhexdirecthex This sample converts LINQ to JSON objects to .NET types using M:Newtonsoft.Json.Linq.JToken.ToObject``1.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ModifyJson.aml0000664000175000017500000000142612454416117023224 0ustar directhexdirecthex This sample loads JSON, modifies T:Newtonsoft.Json.Linq.JObject and T:Newtonsoft.Json.Linq.JArray instances and then writes the JSON back out again.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/CreateJsonAnonymousObject.aml0000664000175000017500000000152112454416117026234 0ustar directhexdirecthex This sample creates a T:Newtonsoft.Json.Linq.JObject from an anonymous type.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ReadJTokenFromBson.aml0000664000175000017500000000136112454416117024575 0ustar directhexdirecthex This sample reads a T:Newtonsoft.Json.Linq.JObject from BSON using T:Newtonsoft.Json.Bson.BsonReader.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/JValueValue.aml0000664000175000017500000000134712454416117023330 0ustar directhexdirecthex This sample gets T:Newtonsoft.Json.Linq.JValue internal values using P:Newtonsoft.Json.Linq.JValue.Value.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ParseJsonAny.aml0000664000175000017500000000127112454416117023515 0ustar directhexdirecthex This sample parses JSON using M:Newtonsoft.Json.Linq.JToken.Parse(System.String).
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/QueryJson.aml0000664000175000017500000000137612454416117023106 0ustar directhexdirecthex This sample loads JSON and then queries values from it using P:Newtonsoft.Json.Linq.JToken.Item(System.Object) indexer and then casts the returned tokens to .NET values.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ParseJsonArray.aml0000664000175000017500000000130512454416117024042 0ustar directhexdirecthex This sample parses a JSON array using M:Newtonsoft.Json.Linq.JArray.Parse(System.String).
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ReadJson.aml0000664000175000017500000000122012454416117022640 0ustar directhexdirecthex This sample reads JSON from a file into a T:Newtonsoft.Json.Linq.JObject.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/CreateJsonManually.aml0000664000175000017500000000141712454416117024703 0ustar directhexdirecthex This sample creates T:Newtonsoft.Json.Linq.JObject and T:Newtonsoft.Json.Linq.JArray instances one at a time programatically.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/WriteJTokenToBson.aml0000664000175000017500000000135612454416117024477 0ustar directhexdirecthex This sample writes a T:Newtonsoft.Json.Linq.JObject to BSON using T:Newtonsoft.Json.Bson.BsonWriter.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/CreateWriter.aml0000664000175000017500000000133712454416117023544 0ustar directhexdirecthex This sample creates a T:Newtonsoft.Json.Linq.JTokenWriter from a T:Newtonsoft.Json.Linq.JToken.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ToStringJsonConverter.aml0000664000175000017500000000131712454416117025435 0ustar directhexdirecthex This sample uses a T:Newtonsoft.Json.JsonConverter to customize converting LINQ to JSON objects to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/SerializeWithLinq.aml0000664000175000017500000000140212454416117024544 0ustar directhexdirecthex This sample uses LINQ to JSON to manually convert a .NET type to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/Clone.aml0000664000175000017500000000136412454416117022204 0ustar directhexdirecthex This sample recursively clones a T:Newtonsoft.Json.Linq.JToken and all its children using M:Newtonsoft.Json.Linq.JToken.DeepClone.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/QueryJsonSelectTokenWithLinq.aml0000664000175000017500000000141712454416117026723 0ustar directhexdirecthex This sample loads JSON and then queries values from it using a combination of M:Newtonsoft.Json.Linq.JToken.SelectToken(System.String) and LINQ operators.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/DeserializeWithLinq.aml0000664000175000017500000000141012454416117025054 0ustar directhexdirecthex This sample uses LINQ to JSON to manually convert JSON to a .NET type.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/FromObject.aml0000664000175000017500000000153212454416117023173 0ustar directhexdirecthex This sample converts .NET values to LINQ to JSON using M:Newtonsoft.Json.Linq.JToken.FromObject(System.Object).
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/JObjectProperties.aml0000664000175000017500000000140312454416117024533 0ustar directhexdirecthex This sample gets an object's T:Newtonsoft.Json.Linq.JProperty collection using M:Newtonsoft.Json.Linq.JObject.Properties.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/QueryJsonSelectToken.aml0000664000175000017500000000132512454416117025241 0ustar directhexdirecthex This sample loads JSON and then queries values from it using M:Newtonsoft.Json.Linq.JToken.SelectToken(System.String).
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/JValueCast.aml0000664000175000017500000000123212454416117023137 0ustar directhexdirecthex This sample casts T:Newtonsoft.Json.Linq.JValue instances to .NET values.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/DeepEquals.aml0000664000175000017500000000152112454416117023167 0ustar directhexdirecthex This sample compares T:Newtonsoft.Json.Linq.JToken instances using M:Newtonsoft.Json.Linq.JToken.DeepEquals(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Linq.JToken), comparing the token and all child tokens.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/CreateJsonDeclaratively.aml0000664000175000017500000000165012454416117025710 0ustar directhexdirecthex This sample creates T:Newtonsoft.Json.Linq.JObject and T:Newtonsoft.Json.Linq.JArray instances declaratively using LINQ.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ToObjectGeneric.aml0000664000175000017500000000130312454416117024143 0ustar directhexdirecthex This sample converts LINQ to JSON objects to .NET types using M:Newtonsoft.Json.Linq.JToken.ToObject``1.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/CreateJsonJTokenWriter.aml0000664000175000017500000000152012454416117025503 0ustar directhexdirecthex This sample creates T:Newtonsoft.Json.Linq.JObject and T:Newtonsoft.Json.Linq.JArray instances using a T:Newtonsoft.Json.Linq.JTokenWriter.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/CreateReader.aml0000664000175000017500000000133712454416117023472 0ustar directhexdirecthex This sample creates a T:Newtonsoft.Json.Linq.JTokenReader from a T:Newtonsoft.Json.Linq.JToken.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/CreateJsonDynamic.aml0000664000175000017500000000142212454416117024501 0ustar directhexdirecthex This sample creates T:Newtonsoft.Json.Linq.JObject and T:Newtonsoft.Json.Linq.JArray instances using the C# dynamic functionality.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ToString.aml0000664000175000017500000000111612454416117022710 0ustar directhexdirecthex This sample converts LINQ to JSON objects to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/ToObjectType.aml0000664000175000017500000000130712454416117023514 0ustar directhexdirecthex This sample converts LINQ to JSON objects to .NET types using M:Newtonsoft.Json.Linq.JToken.ToObject(System.Type).
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/QueryJsonLinq.aml0000664000175000017500000000116212454416117023723 0ustar directhexdirecthex This sample loads JSON and then queries values from it using LINQ operators.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Linq/CreateJsonCollectionInitializer.aml0000664000175000017500000000146612454416117027424 0ustar directhexdirecthex This sample creates T:Newtonsoft.Json.Linq.JObject and T:Newtonsoft.Json.Linq.JArray instances using the C# collection initializer syntax.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/0000775000175000017500000000000012454416117021653 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Doc/Samples/Serializer/JsonObjectAttributeOptIn.aml0000664000175000017500000000213612454416117027246 0ustar directhexdirecthex This sample uses T:Newtonsoft.Json.JsonObjectAttribute and T:Newtonsoft.Json.MemberSerialization to specify that only properties that have been explicitly specified with T:Newtonsoft.Json.JsonPropertyAttribute should be serialized.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/MaxDepth.aml0000664000175000017500000000133212454416117024057 0ustar directhexdirecthex This sample uses the P:Newtonsoft.Json.JsonSerializerSettings.MaxDepth setting to constrain JSON to a maximum depth when deserializing.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeDataSet.aml0000664000175000017500000000122412454416117025542 0ustar directhexdirecthex This sample serializes a T:System.Data.DataSet to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/CustomJsonConverter.aml0000664000175000017500000000156012454416117026344 0ustar directhexdirecthex This sample creates a custom T:Newtonsoft.Json.JsonConverter that overrides serialization to add a keys property.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/JsonObjectAttributeOverrideIEnumerable.aml0000664000175000017500000000203112454416117032077 0ustar directhexdirecthex This sample uses T:Newtonsoft.Json.JsonObjectAttribute to serialize a class that implements T:System.Collections.Generic.IEnumerable`1 as a JSON object instead of a JSON array.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeObject.aml0000664000175000017500000000135312454416117025426 0ustar directhexdirecthex This sample serializes an object to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/JsonConverterAttributeProperty.aml0000664000175000017500000000200412454416117030574 0ustar directhexdirecthex This sample uses the T:Newtonsoft.Json.JsonConverterAttribute to specify that a T:Newtonsoft.Json.JsonConverter should be used when serializing and deserializing a property.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeWithJsonSerializerToFile.aml0000664000175000017500000000143612454416117031124 0ustar directhexdirecthex This sample serializes JSON to a file.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeDictionary.aml0000664000175000017500000000114412454416117026323 0ustar directhexdirecthex This sample serializes a dictionary to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DefaultValueAttributeIgnore.aml0000664000175000017500000000200712454416117027756 0ustar directhexdirecthex This sample uses the T:System.ComponentModel.DefaultValueAttribute to override the default value for a property and exclude it from serialization using T:Newtonsoft.Json.DefaultValueHandling.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/PreserveReferencesHandlingObject.aml0000664000175000017500000000166612454416117030750 0ustar directhexdirecthex This sample shows how the T:Newtonsoft.Json.PreserveReferencesHandling setting can be used to serialize values by reference instead of by value.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeObjectCreationHandling.aml0000664000175000017500000000166012454416117031072 0ustar directhexdirecthex This sample deserializes JSON with T:Newtonsoft.Json.ObjectCreationHandling set to Replace so that collection values aren't duplicated.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DataContractAndDataMember.aml0000664000175000017500000000217512454416117027267 0ustar directhexdirecthex This sample shows how .NET Framework attributes such as T:System.Runtime.Serialization.DataContractAttribute, T:System.Runtime.Serialization.DataMemberAttribute and T:System.NonSerializedAttribute can be used with Json.NET instead of Json.NET's own attributes.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeDateFormatHandling.aml0000664000175000017500000000153512454416117027715 0ustar directhexdirecthex This sample uses the T:Newtonsoft.Json.DateFormatHandling setting to control how T:System.DateTime and T:System.DateTimeOffset are serialized.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/JsonConverterAttributeClass.aml0000664000175000017500000000177012454416117030026 0ustar directhexdirecthex This sample uses the T:Newtonsoft.Json.JsonConverterAttribute to specify that a T:Newtonsoft.Json.JsonConverter should be used when serializing and deserializing a class.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeCollection.aml0000664000175000017500000000115412454416117026623 0ustar directhexdirecthex This sample deserializes JSON into a collection.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeCollection.aml0000664000175000017500000000114412454416117026311 0ustar directhexdirecthex This sample serializes a collection to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/NullValueHandlingIgnore.aml0000664000175000017500000000166612454416117027077 0ustar directhexdirecthex This sample serializes an object to JSON with T:Newtonsoft.Json.NullValueHandling set to Ignore so that properties with a default value aren't included in the JSON result.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DefaultValueHandlingIgnore.aml0000664000175000017500000000161112454416117027537 0ustar directhexdirecthex This sample uses the T:Newtonsoft.Json.DefaultValueHandling setting to not serialize properties with a default value.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/JsonPropertyRequired.aml0000664000175000017500000000175012454416117026530 0ustar directhexdirecthex This sample uses T:Newtonsoft.Json.JsonPropertyAttribute to set T:Newtonsoft.Json.Required which is used during deserialization to validate the presence of required JSON properties.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/PopulateObject.aml0000664000175000017500000000140712454416117025270 0ustar directhexdirecthex This sample populates an existing object instance with values from JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeMissingMemberHandling.aml0000664000175000017500000000172212454416117030737 0ustar directhexdirecthex This sample attempts to deserialize JSON with T:Newtonsoft.Json.MissingMemberHandling set to error and a JSON property that doesn't match to a member, causing an exception.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeContractResolver.aml0000664000175000017500000000160212454416117027514 0ustar directhexdirecthex This sample uses a custom T:Newtonsoft.Json.Serialization.IContractResolver to modify how objects are serialized.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/JsonPropertyPropertyLevelSetting.aml0000664000175000017500000000161612454416117031123 0ustar directhexdirecthex This sample uses T:Newtonsoft.Json.JsonPropertyAttribute to change how the property value is serialized.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeWithJsonConverters.aml0000664000175000017500000000132012454416117030032 0ustar directhexdirecthex This sample uses a T:Newtonsoft.Json.JsonConverter to customize how JSON is serialized.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeSerializationBinder.aml0000664000175000017500000000165212454416117030163 0ustar directhexdirecthex This sample creates a custom T:System.Runtime.Serialization.SerializationBinder that writes only the type name when including type data in JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/ErrorHandlingEvent.aml0000664000175000017500000000135712454416117026114 0ustar directhexdirecthex This sample uses the P:Newtonsoft.Json.JsonSerializerSettings.Error event to ignore the exceptions thrown from the invalid date strings.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/PropertyJsonIgnore.aml0000664000175000017500000000154012454416117026170 0ustar directhexdirecthex This sample uses the T:Newtonsoft.Json.JsonIgnoreAttribute to exclude a property from serialization.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeDataSet.aml0000664000175000017500000000123212454416117026052 0ustar directhexdirecthex This sample deserializes JSON to a T:System.Data.DataSet.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeDictionary.aml0000664000175000017500000000115412454416117026635 0ustar directhexdirecthex This sample deserializes JSON into a dictionary.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/CustomTraceWriter.aml0000664000175000017500000000177412454416117026005 0ustar directhexdirecthex This sample creates a custom T:Newtonsoft.Json.Serialization.ITraceWriter that writes to NLog http://nlog-project.org/ _blank .
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/ErrorHandlingAttribute.aml0000664000175000017500000000157612454416117027001 0ustar directhexdirecthex This sample uses T:Newtonsoft.Json.Serialization.OnErrorAttribute to ignore the exception thrown setting the Roles property.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/ReferenceLoopHandlingIgnore.aml0000664000175000017500000000166212454416117027714 0ustar directhexdirecthex This sample sets T:Newtonsoft.Json.ReferenceLoopHandling to Ignore so that looping values are excluded from serialization instead of throwing an exception.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeConstructorHandling.aml0000664000175000017500000000165212454416117030525 0ustar directhexdirecthex This sample uses the T:Newtonsoft.Json.ConstructorHandling setting to successfully deserialize the class using its non-public constructor.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeWithJsonSerializerFromFile.aml0000664000175000017500000000147012454416117031754 0ustar directhexdirecthex This sample deserializes JSON retrieved from a file.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeTypeNameHandling.aml0000664000175000017500000000173212454416117027410 0ustar directhexdirecthex This sample uses the T:Newtonsoft.Json.TypeNameHandling setting to include type information when serializing JSON and read type information so that the create types are created when deserializing JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/JsonPropertyOrder.aml0000664000175000017500000000155212454416117026023 0ustar directhexdirecthex This sample uses T:Newtonsoft.Json.JsonPropertyAttribute to order of properties when they are serialized to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeObject.aml0000664000175000017500000000136312454416117025740 0ustar directhexdirecthex This sample deserializes JSON to an object.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeAnonymousType.aml0000664000175000017500000000116712454416117027366 0ustar directhexdirecthex This sample deserializes JSON into an anonymous type.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/TraceWriter.aml0000664000175000017500000000152412454416117024603 0ustar directhexdirecthex This sample uses an T:Newtonsoft.Json.Serialization.ITraceWriter to log debug information from serialization.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeDateTimeZoneHandling.aml0000664000175000017500000000200312454416117030206 0ustar directhexdirecthex This sample uses the T:Newtonsoft.Json.DateTimeZoneHandling setting to control how T:System.DateTime and T:System.DateTimeOffset are serialized.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/DeserializeCustomCreationConverter.aml0000664000175000017500000000171312454416117031360 0ustar directhexdirecthex This sample creates a class that inherits from T:Newtonsoft.Json.Converters.CustomCreationConverter`1 that instantiates Employee instances for the Person type.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeConditionalProperty.aml0000664000175000017500000000147212454416117030232 0ustar directhexdirecthex This sample uses a conditional property to exclude a property from serialization.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeUnindentedJson.aml0000664000175000017500000000146412454416117027152 0ustar directhexdirecthex This sample serializes an object to JSON without any formatting or indentation whitespace.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializationCallbackAttributes.aml0000664000175000017500000000240612454416117030651 0ustar directhexdirecthex This sample uses serialization callback attributes (T:System.Runtime.Serialization.OnSerializingAttribute, T:System.Runtime.Serialization.OnSerializedAttribute, T:System.Runtime.Serialization.OnDeserializingAttribute, T:System.Runtime.Serialization.OnDeserializedAttribute) to manipulate an object before and after its serialization and deserialization.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/JsonPropertyName.aml0000664000175000017500000000156212454416117025631 0ustar directhexdirecthex This sample uses T:Newtonsoft.Json.JsonPropertyAttribute to change the names of properties when they are serialized to JSON.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/SerializeRawJson.aml0000664000175000017500000000152112454416117025600 0ustar directhexdirecthex This sample uses T:Newtonsoft.Json.Linq.JRaw properties to serialize JSON with raw content.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/CustomContractResolver.aml0000664000175000017500000000164612454416117027047 0ustar directhexdirecthex This sample creates a custom T:Newtonsoft.Json.Serialization.IContractResolver that only serializes a type's properties that begin with a specified character.
Sample
newtonsoft-json-6.0.8/Doc/Samples/Serializer/JsonPropertyItemLevelSetting.aml0000664000175000017500000000204712454416117030174 0ustar directhexdirecthex This sample uses T:Newtonsoft.Json.JsonPropertyAttribute to change how the property value's items are serialized, e.g. setting ItemIsReference to true on a property with a collection will serialize all the collection's items with reference tracking enabled.
Sample
newtonsoft-json-6.0.8/Doc/SerializationGuide.aml0000664000175000017500000003631412454416117022433 0ustar directhexdirecthex The Json.NET serializer can serialize a wide variety of .NET objects. This guide looks at how it works, first at a high level and then in more detail.
Summary At a high level, the Json.NET serializer will convert primitive .NET values into primitive JSON values, .NET arrays and collections to JSON arrays and everything else to JSON objects. Json.NET will throw an error if it encounters incorrect JSON when deserializing a value. For example if the serializer encounters a JSON property with an array of values and the type of matching .NET property is not a collection then an error will be thrown, and vice-versa.
Complex Types .NET JSON IList, IEnumerable, IList<T>, Array Array (properties on the collection will not be serialized) IDictionary, IDictionary<TKey, TValue> Object (dictionary name/values only, properties on the dictionary will not be serialized) Object (more detail below) Object
Primitive Types .NET JSON String String Byte SByte UInt16 Int16 UInt32 Int32 UInt64 Int64 Integer Float Double Decimal Float Enum Integer (can be the enum value name with T:Newtonsoft.Json.Converters.StringEnumConverter) DateTime String () Byte[] String (base 64 encoded) Type String (type name) Guid String T:System.ComponentModel.TypeConverter (convertible to String) String
Breakdown of Type Serialization
Objects .NET types that don't fall into any other category listed below (i.e. aren't lists, dictionaries, dynamic, implement ISerializable, etc) are serialized as JSON objects. You can also force a type to be serialized as a JSON object by placing the JsonObjectAttribute on the type. By default a type's properties are serialized in opt-out mode. What that means is all public fields and properties with getters are automatically serialized to JSON, and fields and properties that shouldn't be serialized are opted-out by placing JsonIgnoreAttribute on them. To serialize private members the JsonPropertyAttribute can be placed on private fields and properties. Types can also be serialized using opt-in mode. Only properties and fields that have a JsonPropertyAttribute or DataMemberAttribute on them will be serialized. Opt-in mode for an object is specified by placing the JsonObjectAttribute or DataContractAttribute on the type. Finally types can be serialized using a fields mode. All fields, both public and private, are serialized and properties are ignored. This can be specified by setting MemberSerialization.Fields on a type with the JsonObjectAttribute or by the .NET T:System.SerializableAttribute and setting IgnoreSerializableAttribute on DefaultContractResolver to false.
IEnumerable, Lists and Arrays .NET lists (types that inherit from IEnumerable) and .NET arrays are converted to JSON arrays. Because JSON arrays only support a range of values and not properties, any additional properties and fields declared on .NET collections are not serialized. In situations where a type implements IEnumerable but a JSON array is not wanted then the JsonObjectAttribute can be placed the type to force it to be serialized as a JSON object instead. JsonArrayAttribute has options on it to customize the JsonConverter, type name handling and reference handling that are applied to collection items. Note that if TypeNameHandling or PreserveReferencesHandling has been enabled for JSON arrays on the serializer then JSON arrays are wrapped it a containing object. The object will have the type name/reference properties and a $values property which will have the collection data. When deserializing if a member is typed as the interface IList<T> then it will be deserialized as a List<T>. Read more about serializing collections here:
Dictionarys and Hashtables .NET dictionaries (types that inherit from IDictionary) are converted to JSON objects. Note that only the dictionary name/values will be written to the JSON object when serializing and properties on the JSON object will be added to the dictionary's name/values when deserializing. Additional members on the .NET dictionary are ignored during serialization. When serializing a dictionary the keys of the dictionary are converted to strings and used as the JSON object property names. The string written for a key can be customized by either overriding M:System.Object.ToString for the key type or by implementing a T:System.ComponentModel.TypeConverter. A TypeConverter will also support converting a custom string back again when deserializing a dictionary. JsonDictionaryAttribute has options on it to customize the JsonConverter, type name handling and reference handling that are applied to collection items. When deserializing if a member is typed as the interface IDictionary<TKey, TValue> then it will be deserialized as a Dictionary<TKey, TValue>. Read more about serializing collections here:
Untyped Objects .NET properties on a class that don't specify a type (i.e. they are just object) are serialized as usual. When untyped properties are deserialized the serializer has no way to know what type to create (unless type name handling is enabled and the JSON contains the type names). For these untyped properties the Json.NET serializer will read the JSON into LINQ to JSON objects and set them to the property. JObject will be created for JSON objects, JArray will be created for JSON arrays and JValue for primitive JSON values.
Dynamic There are two different usages of dynamic (introduced in .NET 4) in .NET. The first are .NET properties with a type of dynamic. Dynamic proeprties behave like properties declared as object, any value can be assigned to it, but the difference being that properties and methods can be called on a dynamic property without casting. In Json.NET dynamic properties are serialized and deserialized exactly the same as untyped objects: because dynamic isn't an actual type Json.NET falls back to deserializing the JSON as LINQ to JSON objects. The second usage of dynamic in .NET are types that implement T:System.Dynamic.IDynamicMetaObjectProvider. This interface lets the implementor create dynamic objects that intercept the property and method calls on an object and use them. T:System.Dynamic.ExpandoObject is a good example of a dynamic object. Dynamic objects are serialized as JSON objects. A property is written for every member name returned by M:System.Dynamic.DynamicMetaObject.GetDynamicMemberNames. A dynamic object's normal properties aren't serialized by default but can be included by placing the JsonPropertyAttribute on them. When deserializing dynamic objects the serializer first attempts to set JSON property values on a normal .NET member with the matching name. If no .NET member is found with the property name then the serializer will call SetMember on the dynamic object. Because there is no type information for dynamic members on a dynamic object the values assigned to them will be LINQ to JSON objects.
ISerializable Types that implement ISerializable are serialized as JSON objects. When serializing only the values returned from ISerializable.GetObjectData are used; members on the type are ignored. When deserializing the constructor with a SerializationInfo and StreamingContext is called, passing the JSON object's values. In situations where this behavior is not wanted the JsonObjectAttribute can be placed on a .NET type that implements ISerializable to force it to be serialized as a normal JSON object.
LINQ to JSON LINQ to JSON types (e.g. JObject, JArray) are automatically serialized and deserialized to their equivalent JSON when encountered by the Json.NET serializer.
JsonConverter Serialization of values that are convertible by a T:Newtonsoft.Json.JsonConverter (i.e. CanConvert returns true for its type) is completely overridden by the JsonConverter. The test to see whether a value can be converted by a JsonSerializer takes precedence over all other tests. JsonConverters can be defined and specified in a number of places: in an attribute on a member, in an attribute on a class and added to the JsonSerializer's converters collection. The priority of which JsonConverter is used is the JsonConverter defined by attribute on a member then the JsonConverter defined by an attribute on a class and finally any converters passed to the JsonSerializer. Because a JsonConverter creates a new value a converter will not work with readonly properties because there is no way to assign the new value to the property. Either change the property to have a public setter or place a JsonPropertyAttribute or DataMemberAttribute on the property.
Serialization Settings SerializationSettings.htm _self Serialization Attributes SerializationAttributes.htm _self Serializing Dates in JSON DatesInJSON.htm _self T:Newtonsoft.Json.JsonSerializer T:Newtonsoft.Json.JsonSerializerSettings
newtonsoft-json-6.0.8/Doc/JsonNetVsWindowsDataJson.aml0000664000175000017500000001023712454416117023524 0ustar directhexdirecthex Windows 8 introduces a new way to work with JSON via the Windows.Data.Json http://msdn.microsoft.com/en-us/library/windows/apps/xaml/br240639.aspx _blank namespace. Similar to LINQ to JSON in Json.NET it defines classes that can be used to parse values, strings, objects, and arrays from JSON text or serialize value types into JSON text. Below is a comparison of Json.NET's LINQ to JSON to Window 8's Windows.Data.Json.
Exclusive Json.NET Features Runs on .NET 2, .NET 3, .NET 4, Silverlight and Windows Phone 7 Dynamic programming Write indented JSON Customize reading and writing JSON with JsonConverters Read and write ISO8601 dates Better LINQ support
Creating JSON The big difference between the two libraries when creating JSON is Windows.Data.Json requires string/integer/double values to be explicitly converted to JsonValue objects. Note that there is a weird limitation to creating JSON with Windows.Data.Json: it doesn't allow you to set properties to null or put null values in an array.
Querying JSON Windows.Data.Json requires a value to be cast to its exact type with the GetObject/GetArray methods before it can be used, making Windows.Data.Json's code verbose compared to LINQ to JSON.
Benchmarks Json.NET is slightly slower at writing JSON than Windows.Data.Json but considerably faster at parsing JSON. Json.NET and Windows.Data.Json Performance
Converting Between LINQ to JSON and Windows.Data.Json Json.NET supports converting between the types of the two libraries. This feature is useful if you are working with another API that uses Windows.Data.Json types but you want to use Json.NET inside your own code. Use Overload:Newtonsoft.Json.Linq.JToken.FromObject to convert a Windows.Data.Json value to LINQ to JSON and use Overload:Newtonsoft.Json.Linq.JToken.ToObject to convert LINQ to JSON to Windows.Data.Json.
N:Newtonsoft.Json.Linq
newtonsoft-json-6.0.8/Doc/donate.gif0000664000175000017500000000443412454416117020104 0ustar directhexdirecthexGIF89a/5x/l#Z62,(Jl^rzmMb_zF~I:gχE@ޞv҇hdQ孪BER+ ^դ@7'ƨj˜x+}^&֖4ߢW̽g(ŻNE55بܲpʛ~sӚژbкNAదϝʝ^Qcѷ!3f3!,/}RPU1Q}4PSp}ljRPڳ}1P}2*\ȰÇ 8V3j̘f=."H\ EwPI͚4@7 HZxVJJu*=`Aj0YZԯa4lWpᒩ1@L^8A~@! 5pA.p .p#o ` K\ ? @"ȡEp䀄!mf@x-L?GHB)9z|"}0Xs9ԐH | C4@$8'&3 NH @X1H1͞~AІ7~`p0NZz 2,FB\N0a Q*@[r@R`6%]R@B1O? CV1`mtjEmZ ?(@ h0ChBh3# jA jAԆ h9Qp,;+'=tMdb7d/\dY@ jTم1]%D #UG-O|D@ s@m[!sm+ vST`KI@|> ]3(֭ + o < vwzqk@|NDk To manually read and write JSON Json.NET provides the T:Newtonsoft.Json.JsonReader and T:Newtonsoft.Json.JsonWriter classes.
JsonTextReader and JsonTextWriter JsonReader and JsonWriter are low level classes and used internally by Json.NET. To quickly work with JSON either the serializer - or using is recommended. T:Newtonsoft.Json.JsonTextReader and T:Newtonsoft.Json.JsonTextWriter are used to read and write JSON text. The JsonTextWriter has a number of settings on it to control how JSON is formatted when it is written. These options include formatting, indention character, indent count and quote character. JsonTextReader has settings on it for reading different date formats and time zones, and the culture used when reading text values.
JTokenReader and JTokenWriter T:Newtonsoft.Json.Linq.JTokenReader and T:Newtonsoft.Json.Linq.JTokenWriter read and write LINQ to JSON objects. They are located in the N:Newtonsoft.Json.Linq namespace. These objects allow you to use LINQ to JSON objects with objects that read and write JSON such as the JsonSerializer. For example you can deserialize from a LINQ to JSON object into a regular .NET object and vice versa.
T:Newtonsoft.Json.JsonReader T:Newtonsoft.Json.JsonWriter T:Newtonsoft.Json.Linq.JTokenReader T:Newtonsoft.Json.Linq.JTokenWriter T:Newtonsoft.Json.Bson.BsonReader T:Newtonsoft.Json.Bson.BsonWriter
newtonsoft-json-6.0.8/Doc/readme.txt0000664000175000017500000000214712454416117020140 0ustar directhexdirecthexJson.NET http://james.newtonking.com/json http://www.codeplex.com/json https://github.com/JamesNK/Newtonsoft.Json Description: Json.NET is a popular high-performance JSON framework for .NET -Flexible JSON serializer for converting between .NET objects and JSON -LINQ to JSON for manually reading and writing JSON -High performance, faster than .NET's built-in JSON serializers -Write indented, easy to read JSON -Convert JSON to and from XML -Supports .NET 2, .NET 3.5, .NET 4, .NET 4.5, Silverlight, Windows Phone and Windows 8 Store Documentation: http://james.newtonking.com/json/help/ Versions: Json.NET has different libraries for the various .NET Framework versions. -Net45: .NET latest (4.5) -Net40: .NET 4.0 -Net35: .NET 3.5 -Net20: .NET 2.0 -WinRT: Windows 8 Store -Portable45: .NET 4.5, Windows Phone 8, Windows 8 Store, ASP.NET CoreCLR -Portable40: .NET 4.0, Windows Phone 8, Windows 8 Store, Silverlight 5, MonoTouch, MonoDroid Notes: For a Compact Framework 3.5 and Silverlight 3.0 builds download Json.NET 3.5 For a Silverlight 4.0 and Windows Phone 7 builds download Json.NET 5newtonsoft-json-6.0.8/Doc/CustomCreationConverter.aml0000664000175000017500000000275112454416117023465 0ustar directhexdirecthex The T:Newtonsoft.Json.Converters.CustomCreationConverter`1 is a JsonConverter that provides a way to customize how an object is created during JSON deserialization. Once the object has been created it will then have values populated onto it by the serializer.
Example This is an extremely simple example. A more complicated scenario could involve an object factory or service locator which resolves the object at runtime.
T:Newtonsoft.Json.Converters.CustomCreationConverter`1
newtonsoft-json-6.0.8/Doc/doc.content0000664000175000017500000003074112454416117020304 0ustar directhexdirecthex newtonsoft-json-6.0.8/Doc/cross.png0000664000175000017500000000121712454416117017776 0ustar directhexdirecthexPNG  IHDRagAMA7tEXtSoftwareAdobe ImageReadyqe<!IDAT8˕NQɉϠVȑB[( &^M6M| Dްҙv:官J-%Nd LB>w_3:*WrlNC/-좕B'{ u_a46ҽbߡE%D47;ٻƩ;8ˣ}>6[ӕS@*Z Qk>~͵hB\9uxZvYb J Cيٽ?BYvn&kft$,d9Zap\^ Y7 QJF 9=Q4 ؜Io SBpsI) Fv(@yՎވc\@ %% Z2h'@d(<|áaJuM@O⤁LGjd!X8Af 5J i K->w62ƾWH}:mP]XB0QX=ib_g=!Ftt…clrIENDB`newtonsoft-json-6.0.8/Doc/ParsingLINQtoJSON.aml0000664000175000017500000000356012454416117021761 0ustar directhexdirecthex LINQ to JSON has methods available for parsing JSON from a string or loading JSON directly from a file.
Parsing JSON text JSON values can be read from a string using M:Newtonsoft.Json.Linq.JToken.Parse(System.String).
Loading JSON from a file JSON can also be loaded directly from a file using M:Newtonsoft.Json.Linq.JToken.ReadFrom(Newtonsoft.Json.JsonReader).
LINQ to JSON LINQtoJSON.htm _self M:Newtonsoft.Json.Linq.JToken.Parse(System.String) M:Newtonsoft.Json.Linq.JToken.ReadFrom(Newtonsoft.Json.JsonReader)
newtonsoft-json-6.0.8/Doc/PreserveObjectReferences.aml0000664000175000017500000001054012454416117023555 0ustar directhexdirecthex By default Json.NET will serialize all objects it encounters by value. If a list contains two Person references, and both references point to the same object then the JsonSerializer will write out all the names and values for each reference. In most cases this is the desired result but in certain scenarios writing the second item in the list as a reference to the first is a better solution. If the above JSON was deserialized now then the returned list would contain two completely separate Person objects with the same values. Writing references by value will also cause problems on objects where a circular reference occurs.
PreserveReferencesHandling Setting T:Newtonsoft.Json.PreserveReferencesHandling will track object references when serializing and deserializing JSON. The first Person in the list is serizlied with the addition of an object Id. The second Person in JSON is now only a reference to the first. With PreserveReferencesHandling on now only one Person object is created on deserialization and the list contains two references to it, mirroring what we started with. References cannot be preserved when a value is set via a non-default constructor. With a non-default constructor child values must be created before the parent value so they can be passed into the constructor, making tracking reference impossible. T:System.Runtime.Serialization.ISerializable types are an example of a class whose values are populated with a non-default constructor and won't work with PreserveReferencesHandling.
IsReference The PreserveReferencesHandling setting on the JsonSerializer will change how all objects are serialized and deserialized. For fine grain control over which objects and members should be serialized as a reference there is the IsReference property on the JsonObjectAttribute, JsonArrayAttribute and JsonPropertyAttribute. Setting IsReference on JsonObjectAttribute or JsonArrayAttribute to true will mean the JsonSerializer will always serialize the type the attribute is against as a reference. Setting IsReference on the JsonPropertyAttribute to true will serialize only that property as a reference.
IReferenceResolver To customize how references are generated and resolved the T:Newtonsoft.Json.Serialization.IReferenceResolver interface is available to inherit from and use with the JsonSerializer.
T:Newtonsoft.Json.PreserveReferencesHandling
newtonsoft-json-6.0.8/Doc/SelectToken.aml0000664000175000017500000000441712454416117021057 0ustar directhexdirecthex Overload:Newtonsoft.Json.Linq.JToken.SelectToken provides a method to query LINQ to JSON using a single string path to a desired T:Newtonsoft.Json.Linq.JToken. SelectToken makes dynamic queries easy because the entire query is defined in a string.
SelectToken SelectToken is a method on JToken and takes a string path to a child token. SelectToken returns the child token or a null reference if a token couldn't be found at the path's location. The path is made up of property names and array indexes separated by periods. Array indexes can use either square or round brackets. Both of the following are valid paths and are equivalent to each other: Manufacturers[0].Name and Manufacturers(0).Name.
SelectToken with LINQ SelectToken can be used in combination with standard LINQ methods.
LINQ to JSON LINQtoJSON.htm _self Overload:Newtonsoft.Json.Linq.JToken.SelectToken
newtonsoft-json-6.0.8/Doc/icons/0000775000175000017500000000000012454416117017251 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Doc/icons/logo.jpg0000664000175000017500000002444312454416117020722 0ustar directhexdirecthexJFIFHHExifMM*V^(1f2xiHHPaint.NET v3.5.102011:08:11 10:50:21̠[(HH XICC_PROFILE HLinomntrRGB XYZ  1acspMSFTIEC sRGB-HP cprtP3desclwtptbkptrXYZgXYZ,bXYZ@dmndTpdmddvuedLview$lumimeas $tech0 rTRC< gTRC< bTRC< textCopyright (c) 1998 Hewlett-Packard CompanydescsRGB IEC61966-2.1sRGB IEC61966-2.1XYZ QXYZ XYZ o8XYZ bXYZ $descIEC http://www.iec.chIEC http://www.iec.chdesc.IEC 61966-2.1 Default RGB colour space - sRGB.IEC 61966-2.1 Default RGB colour space - sRGBdesc,Reference Viewing Condition in IEC61966-2.1,Reference Viewing Condition in IEC61966-2.1view_. \XYZ L VPWmeassig CRT curv #(-27;@EJOTY^chmrw| %+28>ELRY`gnu| &/8AKT]gqz !-8COZfr~ -;HUcq~ +:IXgw'7HYj{+=Oat 2FZn  % : O d y  ' = T j " 9 Q i  * C \ u & @ Z t .Id %A^z &Ca~1Om&Ed#Cc'Ij4Vx&IlAe@e Ek*Qw;c*R{Gp@j>i  A l !!H!u!!!"'"U"""# #8#f###$$M$|$$% %8%h%%%&'&W&&&''I'z''( (?(q(())8)k))**5*h**++6+i++,,9,n,,- -A-v--..L.../$/Z///050l0011J1112*2c223 3F3334+4e4455M555676r667$7`7788P8899B999:6:t::;-;k;;<' >`>>?!?a??@#@d@@A)AjAAB0BrBBC:C}CDDGDDEEUEEF"FgFFG5G{GHHKHHIIcIIJ7J}JK KSKKL*LrLMMJMMN%NnNOOIOOP'PqPQQPQQR1R|RSS_SSTBTTU(UuUVV\VVWDWWX/X}XYYiYZZVZZ[E[[\5\\]']x]^^l^__a_``W``aOaabIbbcCccd@dde=eef=ffg=ggh?hhiCiijHjjkOkklWlmm`mnnknooxop+ppq:qqrKrss]sttptu(uuv>vvwVwxxnxy*yyzFz{{c{|!||}A}~~b~#G k͂0WGrׇ;iΉ3dʋ0cʍ1fΏ6n֑?zM _ɖ4 uL$h՛BdҞ@iءG&vVǥ8nRĩ7u\ЭD-u`ֲK³8%yhYѹJº;.! zpg_XQKFAǿ=ȼ:ɹ8ʷ6˶5̵5͵6ζ7ϸ9к<Ѿ?DINU\dlvۀ܊ݖޢ)߯6DScs 2F[p(@Xr4Pm8Ww)KmC      C  i" }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?((d(h Z) b4E)G'Ƽ* *+y>Əy|rY[m\(|gdxI_yf^wcF 3^QlCoBC. : |UՔdN.NtZ>קO\-%`36_m#Lcg&7Co{c<}: t߉ 'j7~Xh)l,nY~W  +_/ %AU!T,}3$IDl(ry7 u?a!NUnuvq[`刖wv Lau`0T3?¼>6=M$nsdZgt)IS ??_FŰx{!O jz.Ϭ[ju)jn&XeHJ2dbg[c~Mu|c8>@G}p,]TT[INvmw[ U/xn'_JxOr1M[Kew / 9i6&*s#_ź^Nֺw pG2_yx |F{j>)/Q!2Gz[[xfG,VVq 1\; W"oy~:Ҟg}*JZizcNYY>xCF9`),r+#`)gi`{f?ݯW^ h>!F]imӯncBY"x۵\HQ#]WCl&'ٻKbohv>)j(iwqlE"u$`aǭX{|.P4nt;ЬKI Xc,q~fh?Oſ _RC"m_O{Ǩ52MhfS".є%HS)Q/ޛڦ|IݱiP7o;\9v2L/p2 5#u!{7oeGξT]u}W h7$sdk«w*o{_[Ƕl{9]zV6}G\ş^!EU.Yۢ4zǤ6FY=5c bx9I쒻=IIE]yV Gf-B/xFY}˸|KaFoٻs ^z7-}/RHz$-c &c++M3O*wjm|'<Ņ|Sy!hn>HwM"?-I0Z?ṵBU~ ;tjz|$.".yyyo12:ΜS9n[7O[3O'/U~0UsynEd]+N𳁓Jg8Zoz_ogY& oVœI@$# Ahߴ.k 6w<֍x<뫋{H5SV7VZ4%>mf/'uqx2+J@|K+`4,Hz |tMwäZ$l E*O]>_U8+Dh?趛Z?67.#{;r?v#Tly;\WM|Z/'Mr0;~cr޿hxwÓQX!O 0ľ"q êuJ\&D—~OҜ!.>/[cs |-4%r/^|7;_ Z2|FYjۯlx_w*hk|75Nj?j@!S*J+CSOS¶4U].=WO Wr:cW,|mg̺.<{,jII8`3_V&~,ULϘ{)$?=ExYļ=iA~dK|>=yu?k5yi:Z^ۦWӴ]ݢ`ǩbrI9''_[6-J 9)"H}$T?\435ج%:yᦗ,V?ndi2AFdVj#O<+EB,,2GWw%0XR>SOKIҥ%nC9%bY/Wx>8 >P N*MEIڣϲGWޔꝏB=>k9zSd8\:`7IVΓ-SX+٢V _ҿO៤/YeC*'ڍ߲Ϝ`=>gX|Po y xdjVg͋3K,fpqۃ9aJ 59u|+Ri" Krv:z"+8:L uu8{2+ï?C ;5 N7J[#g Կ5xhڼc,eáA#m[?ZZ/#Cn\2nrNǍο4_?74u畱85*LDdeѨu5G`5EA2G?t4[Tּ=ڭf9ar `A+v,ɅOcFӯ"̮ov{L(\ z=OΜoG,rU/'?UE?]smCQ_ѿ ?R>18N_Ťii/ N96}zgXd,|^߭~w|Eƾ6+p\79:`)%v.nSŬEJ As well as parsing JSON from existing JSON strings, LINQ to JSON objects can be created from scratch to create new JSON structures.
Manually Creating JSON Setting values and creating objects and arrays one at a time gives you total control but it is more verbose than other options.
Creating JSON with LINQ Declaratively creating JSON objects using LINQ is a fast way to create JSON from collections of values.
Creating JSON from an object The last option is to create a JSON object from a non-JSON type using the Overload:Newtonsoft.Json.Linq.JObject.FromObject method. Internally FromObject will use the JsonSerializer to serialize the object to LINQ to JSON objects instead of text. The example below is creating a JSON object from an anonymous object but any .NET type can be used with FromObject to create JSON.
LINQ to JSON LINQtoJSON.htm _self Overload:Newtonsoft.Json.Linq.JObject.FromObject
newtonsoft-json-6.0.8/Doc/doc.sitemap0000664000175000017500000000325112454416117020270 0ustar directhexdirecthex newtonsoft-json-6.0.8/Doc/ConditionalProperties.aml0000664000175000017500000000500412454416117023150 0ustar directhexdirecthex Json.NET has the ability to conditionally serialize properties by placing a ShouldSerialize method on a class. This funtionality is similar to the XmlSerializer ShouldSerialize feature http://msdn.microsoft.com/en-us/library/53b8022e.aspx _blank .
ShouldSerialize To conditionally serialize a property add a boolean method with the same name as the property and then prefixed the method name with ShouldSerialize. The result of the method determines whether the property is serialized. If the method returns true then the property will be serialized, if it returns false and the property will be skipped.
IContractResolver ShouldSerialize can also be set using an T:Newtonsoft.Json.Serialization.IContractResolver. Conditionally serializing a property using an IContractResolver is useful if you don't want to place a ShouldSerialize method on a class or you didn't declare the class and are unable to.
T:Newtonsoft.Json.JsonSerializer T:Newtonsoft.Json.Serialization.IContractResolver P:Newtonsoft.Json.Serialization.JsonProperty.ShouldSerialize
newtonsoft-json-6.0.8/Doc/Performance.aml0000664000175000017500000001174412454416117021101 0ustar directhexdirecthex Out of the box Json.NET is faster than DataContractJsonSerializer and JavaScriptSerializer. Here are some tips to make it go even faster.
Optimize Memory Usage To keep an application consistantly fast it is important to minimize the amount of time the .NET framework spends performing garbage collection http://msdn.microsoft.com/en-us/library/ms973837.aspx _blank . Allocating too many objects, or allocating very large objects can slow down or even halt an application while garbage collection is in progress. To minimize memory usage and the number of objects allocated Json.NET supports serializing and deserializing directly to a stream. Reading or writing JSON a piece at a time instead of having the entire JSON string loaded into memory is especially important when working with JSON documents greater than 85kb in size to avoid the JSON string ending up in the large object heap http://msdn.microsoft.com/en-us/magazine/cc534993.aspx _blank .
JsonConverters Passing a T:Newtonsoft.Json.JsonConverter to SerializeObject or DeserializeObject provides a simple way to completely change how an object is serialized. There is however a small overhead; the CanConvert method is called for every value to check whether serialization should be handled by that JsonConverter. There are a couple of ways to continue to use JsonConverters without any overhead. The simplest way is to specify the JsonConverter using the T:Newtonsoft.Json.JsonConverterAttribute. This attribute tells the serializer to always use that converter when serializing and deserializing the type, without the check. If the class you want to convert isn't your own and you're unable to use an attribute a JsonConverter can still be used by creating your own T:Newtonsoft.Json.Serialization.IContractResolver. The IContractResolver in the example above will set all DateTimes to use the JavaScriptDateConverter.
Manually Serialize The absolute fastest way to read and write JSON is to use JsonTextReader/JsonTextWriter directly to manually serialize types. Using a reader or writer directly skips any of the overhead from a serializer such as reflection. If performance is important and you don't mind more code to get it then this is your best choice. Read more about using JsonReader/JsonWriter here:
Benchmarks Json.NET Performance
T:Newtonsoft.Json.JsonSerializer T:Newtonsoft.Json.JsonConverter T:Newtonsoft.Json.JsonConverterAttribute T:Newtonsoft.Json.JsonTextWriter T:Newtonsoft.Json.JsonTextReader
newtonsoft-json-6.0.8/Doc/SerializingJSON.aml0000664000175000017500000001033112454416117021601 0ustar directhexdirecthex The quickest method of converting between JSON text and a .NET object is using the T:Newtonsoft.Json.JsonSerializer. The JsonSerializer converts .NET objects into their JSON equivalent and back again by mapping the .NET object property names to the JSON property names and copies the values for you.
JsonConvert For simple scenarios where you want to convert to and from a JSON string the Overload:Newtonsoft.Json.JsonConvert.SerializeObject and Overload:Newtonsoft.Json.JsonConvert.DeserializeObject methods on JsonConvert provide an easy to use wrapper over JsonSerializer. SerializeObject and DeserializeObject both have overloads that take a T:Newtonsoft.Json.JsonSerializerSettings object. JsonSerializerSettings lets you use many of the JsonSerializer settings listed below while still using the simple serialization methods.
JsonSerializer For more control over how an object is serialized the T:Newtonsoft.Json.JsonSerializer can be used directly. The JsonSerializer is able to read and write JSON text directly to a stream via T:Newtonsoft.Json.JsonTextReader and T:Newtonsoft.Json.JsonTextWriter. Other kinds of JsonWriters can also be used such as T:Newtonsoft.Json.Linq.JTokenReader/T:Newtonsoft.Json.Linq.JTokenWriter to convert your object to and from LINQ to JSON objects or T:Newtonsoft.Json.Bson.BsonReader/T:Newtonsoft.Json.Bson.BsonWriter to convert to and from BSON. JsonSerializer has a number of properties on it to customize how it serializes JSON. These can also be used with the methods on JsonConvert via the JsonSerializerSettings overloads. Read more about the available JsonSerializer settings here:
Serialization Guide SerializationGuide.htm _self Serialization Settings SerializationSettings.htm _self Serialization Attributes SerializationAttributes.htm _self Serializing Partial JSON Fragments SerializingJSONFragments.htm _self T:Newtonsoft.Json.JsonConvert T:Newtonsoft.Json.JsonSerializer T:Newtonsoft.Json.JsonSerializerSettings
newtonsoft-json-6.0.8/Doc/tick.png0000664000175000017500000000103112454416117017571 0ustar directhexdirecthexPNG  IHDRagAMA7tEXtSoftwareAdobe ImageReadyqe<IDAT8˽.Ca{8bnSBT')E)VCJ ǥj ZՆg/h…ݿk n^k[ꝿ2P6c=XH*G`?xԅ{77VԨپ%VHyqNtn[J2^53X,S-OƜoDXx2Oܵ r]L`}Z࿳TU(SiP/a:6͖,A` %S=[ b[a='LaW{xD[ u9J—BGqzfGN0os6"ffhZR".2H-[{(7h @`%E[IWu3e+ lGQ&' k| Json.NET is a popular high-performance JSON framework for .NET
Benefits and Features Flexible JSON serializer for converting between .NET objects and JSON LINQ to JSON for manually reading and writing JSON High performance, faster than .NET's built-in JSON serializers Write indented, easy to read JSON Convert JSON to and from XML Supports .NET 2, .NET 3.5, .NET 4, .NET 4.5, Silverlight, Windows Phone and Windows 8 Store The JSON serializer in Json.NET is a good choice when the JSON you are reading or writing maps closely to a .NET class. LINQ to JSON is good for situations where you are only interested in getting values from JSON, you don't have a class to serialize or deserialize to, or the JSON is radically different from your class and you need to manually read and write from your objects.
Getting Started
History Json.NET grew out of projects I was working on in late 2005 involving JavaScript, AJAX and .NET. At the time there were no libraries for working with JavaScript in .NET so I made my own. Starting out as a couple of static methods for escaping JavaScript strings, Json.NET evolved as features were added. To add support for reading JSON a major refactor was required and Json.NET will split into the three major classes it still uses today, JsonReader, JsonWriter and JsonSerializer. Json.NET was first released in June 2006. Since then Json.NET has been downloaded hundreds of thousands of times by developers around the world. It is used in many major open source projects including Mono http://www.mono-project.com/ _blank , an open source implementation of the .NET framework; RavenDB http://ravendb.net/ _blank , a JSON based documentat database; ASP.NET SignalR http://signalr.net/ _blank , an async library for building real-time, multi-user interactive web applications; and ASP.NET Web API http://www.asp.net/web-api _blank , Microsoft's HTTP service framework.
Donate Json.NET is a personal open source project. Started in 2006, I have put thousands of hours into adding, refining and tuning Json.NET with the goal to make it not just the best JSON serializer for .NET but the best serializer for any computer language. I need your help to achieve this.

Click here to lend your support to: Json.NET and make a donation at www.pledgie.com !

Serializing and Deserializing JSON SerializingJSON.htm _self LINQ to JSON LINQtoJSON.htm _self Samples Samples.htm _self
newtonsoft-json-6.0.8/Doc/JsonNetVsDotNetSerializers.aml0000664000175000017500000005402512454416117024063 0ustar directhexdirecthex Json.NET offers many features not found in the JavaScriptSerializer and DataContractSerializer that come with .NET.
Feature Comparison Json.NET DataContractJsonSerializer JavaScriptSerializer Supports JSON Supports BSON Supports JSON Schema Supports .NET 2.0 Supports .NET 3.5 Supports .NET 4.0 Supports Silverlight Supports Windows Phone Supports WinRT Open Source MIT License LINQ to JSON Thread Safe XPath-like JSON query syntax Indented JSON support Efficient dictionary serialization http://stackoverflow.com/questions/1207731/how-can-i-deserialize-json-to-a-simple-dictionarystring-string-in-asp-net _blank Nonsensical dictionary serialization http://stackoverflow.com/questions/4559991/any-way-to-make-datacontractjsonserializer-serialize-dictionaries-properly _blank Deserializes IList, IEnumerable, ICollection, IDictionary properties Serializes circular references Supports serializing objects by reference Deserializes polymorphic properties and collections Serializes and deserializes multidimensional arrays Supports including type names with JSON Globally customize serialization process Supports excluding null values when serializing Supports SerializationBinder Conditional property serialization Includes line number information in errors Converts XML to JSON and JSON to XML JSON Schema validation JSON Schema generation from .NET types Camel case JSON property names Non-default constructors support Serialization error handling Supports populating an existing object Efficiently serializes byte arrays as base64 text Handles NaN, Infinity, -Infinity and undefined Handles JavaScript constructors Serializes .NET 4.0 dynamic objects Serializes ISerializable objects Supports serializing enums to their text name JSON recursion limit support Attribute property name customization Attribute property order customization Attribute property required customization Supports ISO8601 dates Supports JavaScript constructor dates Supports Microsoft AJAX dates Unquoted property names support Raw JSON support Supports reading and writing comments Serializes anonymous types Deserializes anonymous types Opt-in mode serialization Opt-out mode serialization Field (Serializable) mode serialization Efficiently stream reading and writing JSON Single or double quote JSON content Supports overriding a type's serialization Supports OnDeserialized, OnSerializing, OnSerialized and OnDeserializing attributes Supports serializing private properties DataMember attribute support MetdataType attribute support DefaultValue attribute support Serializes DataSets and DataTables Serailizes Entity Framework Serializes nHibernate Case-insensitive property deserialization
Benchmarks Json.NET Performance
newtonsoft-json-6.0.8/Doc/doc.shfbproj0000664000175000017500000003634012454416117020450 0ustar directhexdirecthex Debug AnyCPU 2.0 {fd19f68e-72c8-4576-9775-b4480b0db686} 1.9.9.0 Documentation Documentation Documentation ..\Working\Documentation\ Documentation Summary, Parameter, Returns, AutoDocumentCtors, Namespace, TypeParameter, AutoDocumentDispose InheritedMembers, InheritedFrameworkMembers, Protected, SealedProtected Website .NET Framework 4.5 Json.NET Documentation VS2013 MemberName ..\Src\Newtonsoft.Json\bin\Release The <b>Newtonsoft.Json</b> namespace provides classes that are used to implement the core services of the framework. The <b>Newtonsoft.Json.Converters</b> namespace provides classes that inherit from <a href="T_Newtonsoft_Json_JsonConverter.htm">JsonConverter</a>. The <b>Newtonsoft.Json.Linq</b> namespace provides classes that are used to implement LINQ to JSON. The <b>Newtonsoft.Json.Linq.ComponentModel</b> namespace provides classes for LINQ to JSON databinding. The <b>Newtonsoft.Json.Schema</b> namespace provides classes that are used to implement JSON schema. The <b>Newtonsoft.Json.Linq</b> namespace provides classes that are used when serializing and deserializing JSON. The <b>Newtonsoft.Json.Linq</b> namespace provides classes that are used to implement BSON. True API Reference {@HelpFormatOutputPaths} False OnlyWarningsAndErrors True False False True C# Blank False en-US AboveNamespaces 2 False tick tick cross cross jsonnetwindowsdatajson jsonnetwindowsdatajson performance performance logo logo newtonsoft-json-6.0.8/Doc/SerializationCallbacks.aml0000664000175000017500000000617612454416117023260 0ustar directhexdirecthex Json.NET supports serialization callback methods. A callback can be used to manipulate an object before and after its serialization and deserialization by the JsonSerializer. OnSerializing OnSerialized OnDeserializing OnDeserialized To tell the serializer which methods should be called during the object's serialization lifecycle, decorate a method with the appropraite attribute (T:System.Runtime.Serialization.OnSerializingAttribute, T:System.Runtime.Serialization.OnSerializedAttribute, T:System.Runtime.Serialization.OnDeserializingAttribute, T:System.Runtime.Serialization.OnDeserializedAttribute).
Example Example object with serialization callback methods: The example object being serialized and deserialized by Json.NET:
T:System.Runtime.Serialization.OnSerializingAttribute T:System.Runtime.Serialization.OnSerializedAttribute T:System.Runtime.Serialization.OnDeserializingAttribute T:System.Runtime.Serialization.OnDeserializedAttribute
newtonsoft-json-6.0.8/Doc/SerializingCollections.aml0000664000175000017500000000626612454416117023322 0ustar directhexdirecthex Json.NET has excellent support for serializing and deserializing collections of objects.
Serializing Collections To serialize a collection - a generic list, array, dictionary, or your own custom collection - simply call the serializer with the object you want to get JSON for. Json.NET will serialize the collection and all of the values it contains.
Deserializing Collections To deserialize JSON into a .NET collection just specify the collection type you want to deserialize to. Json.NET supports a wide range of collection types.
Deserializing Dictionaries Using Json.NET you can also deserialize a JSON object into a .NET generic dictionary. The JSON object's property names and values will be added to the dictionary.
Serialization Guide SerializationGuide.htm _self T:Newtonsoft.Json.JsonConvert T:Newtonsoft.Json.JsonSerializer
newtonsoft-json-6.0.8/CONTRIBUTING.md0000664000175000017500000001076112454416117017667 0ustar directhexdirecthex# How to contribute Please read these guidelines before contributing to Json.NET: - [Question or Problem?](#question) - [Issues and Bugs](#issue) - [Feature Requests](#feature) - [Submitting a Pull Request](#pullrequest) - [Contributor License Agreement](#cla) ## Got a Question or Problem? If you have questions about how to use Json.NET, please read the [Json.NET documentation][documentation] or ask on [Stack Overflow][stackoverflow]. There are thousands of Json.NET questions on Stack Overflow with the [json.net][stackoverflow] tag. GitHub issues are only for [reporting bugs](#issue) and [feature requests](#feature), not questions or help. ## Found an Issue? If you find a bug in the source code or a mistake in the documentation, you can help by submitting an issue to the [GitHub Repository][github]. Even better you can submit a Pull Request with a fix. When submitting an issue please include the following information: - A description of the issue - The JSON, classes, and Json.NET code related to the issue - The exception message and stacktrace if an error was thrown - If possible, please include code that reproduces the issue. [DropBox][dropbox] or GitHub's [Gist][gist] can be used to share large code samples, or you could [submit a pull request](#pullrequest) with the issue reproduced in a new test. The more information you include about the issue, the more likely it is to be fixed! ## Want a Feature? You can request a new feature by submitting an issue to the [GitHub Repository][github]. Before requesting a feature consider the following: - Json.NET has many extensibility points, it is possible you can implement your feature today without modifying Json.NET - Stability is important. Json.NET is used by thousands of other libraries and features that require large breaking changes are unlikely to be accepted ## Submitting a Pull Request When submitting a pull request to the [GitHub Repository][github] make sure to do the following: - Check that new and updated code follows Json.NET's existing code formatting and naming standard - Run Json.NET's unit tests to ensure no existing functionality has been affected - Write new unit tests to test your changes. All features and fixed bugs must have tests to verify they work Read [GitHub Help][pullrequesthelp] for more details about creating pull requests. ## Contributor License Agreement By contributing your code to Json.NET you grant James Newton-King a non-exclusive, irrevocable, worldwide, royalty-free, sublicenseable, transferable license under all of Your relevant intellectual property rights (including copyright, patent, and any other rights), to use, copy, prepare derivative works of, distribute and publicly perform and display the Contributions on any licensing terms, including without limitation: (a) open source licenses like the MIT license; and (b) binary, proprietary, or commercial licenses. Except for the licenses granted herein, You reserve all right, title, and interest in and to the Contribution. You confirm that you are able to grant us these rights. You represent that You are legally entitled to grant the above license. If Your employer has rights to intellectual property that You create, You represent that You have received permission to make the Contributions on behalf of that employer, or that Your employer has waived such rights for the Contributions. You represent that the Contributions are Your original works of authorship, and to Your knowledge, no other person claims, or has the right to claim, any right in any invention or patent related to the Contributions. You also represent that You are not legally obligated, whether by entering into an agreement or otherwise, in any way that conflicts with the terms of this license. James Newton-King acknowledges that, except as explicitly described in this Agreement, any Contribution which you provide is on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. [github]: https://github.com/JamesNK/Newtonsoft.Json [documentation]: http://james.newtonking.com/json/help/index.html [stackoverflow]: http://stackoverflow.com/questions/tagged/json.net [dropbox]: https://www.dropbox.com [gist]: https://gist.github.com [pullrequesthelp]: https://help.github.com/articles/using-pull-requests newtonsoft-json-6.0.8/Src/0000775000175000017500000000000012454416117016160 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/0000775000175000017500000000000012454416117021236 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/DateFormatHandling.cs0000664000175000017500000000315512454416117025264 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Specifies how dates are formatted when writing JSON text. /// public enum DateFormatHandling { /// /// Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". /// IsoDateFormat, /// /// Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". /// MicrosoftDateFormat } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Newtonsoft.Json.Net40.csproj0000664000175000017500000003604612454416117026440 0ustar directhexdirecthex Debug AnyCPU 9.0.30729 2.0 {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D} Library Properties Newtonsoft.Json Newtonsoft.Json false 3.5 false v4.0 publish\ true Disk false Foreground 7 Days false false true 0 1.0.0.%2a false true Client true full false bin\Debug\Net40\ TRACE;DEBUG;NET40;CODE_ANALYSIS prompt 4 bin\Debug\Net40\Newtonsoft.Json.xml true Newtonsoft.Json.ruleset true pdbonly true bin\Release\Net40\ TRACE;NET40;CODE_ANALYSIS prompt 4 bin\Release\Net40\Newtonsoft.Json.xml Newtonsoft.Json.ruleset true true 3.5 3.0 3.5 False .NET Framework 3.5 SP1 Client Profile false False .NET Framework 2.0 %28x86%29 true False .NET Framework 3.0 %28x86%29 false False .NET Framework 3.5 false False .NET Framework 3.5 SP1 false newtonsoft-json-6.0.8/Src/Newtonsoft.Json/MemberSerialization.cs0000664000175000017500000000506612454416117025541 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Runtime.Serialization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json { /// /// Specifies the member serialization options for the . /// public enum MemberSerialization { #pragma warning disable 1584,1711,1572,1581,1580,1574 /// /// All public members are serialized by default. Members can be excluded using or . /// This is the default member serialization mode. /// OptOut = 0, /// /// Only members must be marked with or are serialized. /// This member serialization mode can also be set by marking the class with . /// OptIn = 1, /// /// All public and private fields are serialized. Members can be excluded using or . /// This member serialization mode can also be set by marking the class with /// and setting IgnoreSerializableAttribute on to false. /// Fields = 2 #pragma warning restore 1584,1711,1572,1581,1580,1574 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonConverterCollection.cs0000664000175000017500000000267512454416117026414 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; using System.Collections.ObjectModel; namespace Newtonsoft.Json { /// /// Represents a collection of . /// public class JsonConverterCollection : Collection { } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/DefaultValueHandling.cs0000664000175000017500000000611312454416117025614 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.ComponentModel; namespace Newtonsoft.Json { /// /// Specifies default value handling options for the . /// /// /// /// /// [Flags] public enum DefaultValueHandling { /// /// Include members where the member value is the same as the member's default value when serializing objects. /// Included members are written to JSON. Has no effect when deserializing. /// Include = 0, /// /// Ignore members where the member value is the same as the member's default value when serializing objects /// so that is is not written to JSON. /// This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, /// decimals and floating point numbers; and false for booleans). The default value ignored can be changed by /// placing the on the property. /// Ignore = 1, /// /// Members with a default value but no JSON will be set to their default value when deserializing. /// Populate = 2, /// /// Ignore members where the member value is the same as the member's default value when serializing objects /// and sets members to their default value when deserializing. /// IgnoreAndPopulate = Ignore | Populate } } newtonsoft-json-6.0.8/Src/Newtonsoft.Json/MetadataPropertyHandling.cs0000664000175000017500000000353112454416117026521 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; namespace Newtonsoft.Json { /// /// Specifies metadata property handling options for the . /// public enum MetadataPropertyHandling { /// /// Read metadata properties located at the start of a JSON object. /// Default = 0, /// /// Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. /// ReadAhead = 1, /// /// Do not try to read metadata properties. /// Ignore = 2 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonContainerAttribute.cs0000664000175000017500000001241512454416117026230 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json { /// /// Instructs the how to serialize the object. /// [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface, AllowMultiple = false)] public abstract class JsonContainerAttribute : Attribute { /// /// Gets or sets the id. /// /// The id. public string Id { get; set; } /// /// Gets or sets the title. /// /// The title. public string Title { get; set; } /// /// Gets or sets the description. /// /// The description. public string Description { get; set; } /// /// Gets the collection's items converter. /// /// The collection's items converter. public Type ItemConverterType { get; set; } /// /// The parameter list to use when constructing the JsonConverter described by ItemConverterType. /// If null, the default constructor is used. /// When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, /// order, and type of these parameters. /// /// /// [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] /// public object[] ItemConverterParameters { get; set; } // yuck. can't set nullable properties on an attribute in C# // have to use this approach to get an unset default state internal bool? _isReference; internal bool? _itemIsReference; internal ReferenceLoopHandling? _itemReferenceLoopHandling; internal TypeNameHandling? _itemTypeNameHandling; /// /// Gets or sets a value that indicates whether to preserve object references. /// /// /// true to keep object reference; otherwise, false. The default is false. /// public bool IsReference { get { return _isReference ?? default(bool); } set { _isReference = value; } } /// /// Gets or sets a value that indicates whether to preserve collection's items references. /// /// /// true to keep collection's items object references; otherwise, false. The default is false. /// public bool ItemIsReference { get { return _itemIsReference ?? default(bool); } set { _itemIsReference = value; } } /// /// Gets or sets the reference loop handling used when serializing the collection's items. /// /// The reference loop handling. public ReferenceLoopHandling ItemReferenceLoopHandling { get { return _itemReferenceLoopHandling ?? default(ReferenceLoopHandling); } set { _itemReferenceLoopHandling = value; } } /// /// Gets or sets the type name handling used when serializing the collection's items. /// /// The type name handling. public TypeNameHandling ItemTypeNameHandling { get { return _itemTypeNameHandling ?? default(TypeNameHandling); } set { _itemTypeNameHandling = value; } } /// /// Initializes a new instance of the class. /// protected JsonContainerAttribute() { } /// /// Initializes a new instance of the class with the specified container Id. /// /// The container Id. protected JsonContainerAttribute(string id) { Id = id; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Bson/0000775000175000017500000000000012454416117022137 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Bson/BsonReader.cs0000664000175000017500000007553312454416117024527 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.Text; using System.IO; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Bson { /// /// Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. /// public class BsonReader : JsonReader { private const int MaxCharBytesSize = 128; private static readonly byte[] SeqRange1 = new byte[] { 0, 127 }; // range of 1-byte sequence private static readonly byte[] SeqRange2 = new byte[] { 194, 223 }; // range of 2-byte sequence private static readonly byte[] SeqRange3 = new byte[] { 224, 239 }; // range of 3-byte sequence private static readonly byte[] SeqRange4 = new byte[] { 240, 244 }; // range of 4-byte sequence private readonly BinaryReader _reader; private readonly List _stack; private byte[] _byteBuffer; private char[] _charBuffer; private BsonType _currentElementType; private BsonReaderState _bsonReaderState; private ContainerContext _currentContext; private bool _readRootValueAsArray; private bool _jsonNet35BinaryCompatibility; private DateTimeKind _dateTimeKindHandling; private enum BsonReaderState { Normal = 0, ReferenceStart = 1, ReferenceRef = 2, ReferenceId = 3, CodeWScopeStart = 4, CodeWScopeCode = 5, CodeWScopeScope = 6, CodeWScopeScopeObject = 7, CodeWScopeScopeEnd = 8 } private class ContainerContext { public readonly BsonType Type; public int Length; public int Position; public ContainerContext(BsonType type) { Type = type; } } /// /// Gets or sets a value indicating whether binary data reading should compatible with incorrect Json.NET 3.5 written binary. /// /// /// true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. /// [Obsolete("JsonNet35BinaryCompatibility will be removed in a future version of Json.NET.")] public bool JsonNet35BinaryCompatibility { get { return _jsonNet35BinaryCompatibility; } set { _jsonNet35BinaryCompatibility = value; } } /// /// Gets or sets a value indicating whether the root object will be read as a JSON array. /// /// /// true if the root object will be read as a JSON array; otherwise, false. /// public bool ReadRootValueAsArray { get { return _readRootValueAsArray; } set { _readRootValueAsArray = value; } } /// /// Gets or sets the used when reading values from BSON. /// /// The used when reading values from BSON. public DateTimeKind DateTimeKindHandling { get { return _dateTimeKindHandling; } set { _dateTimeKindHandling = value; } } /// /// Initializes a new instance of the class. /// /// The stream. public BsonReader(Stream stream) : this(stream, false, DateTimeKind.Local) { } /// /// Initializes a new instance of the class. /// /// The reader. public BsonReader(BinaryReader reader) : this(reader, false, DateTimeKind.Local) { } /// /// Initializes a new instance of the class. /// /// The stream. /// if set to true the root object will be read as a JSON array. /// The used when reading values from BSON. public BsonReader(Stream stream, bool readRootValueAsArray, DateTimeKind dateTimeKindHandling) { ValidationUtils.ArgumentNotNull(stream, "stream"); _reader = new BinaryReader(stream); _stack = new List(); _readRootValueAsArray = readRootValueAsArray; _dateTimeKindHandling = dateTimeKindHandling; } /// /// Initializes a new instance of the class. /// /// The reader. /// if set to true the root object will be read as a JSON array. /// The used when reading values from BSON. public BsonReader(BinaryReader reader, bool readRootValueAsArray, DateTimeKind dateTimeKindHandling) { ValidationUtils.ArgumentNotNull(reader, "reader"); _reader = reader; _stack = new List(); _readRootValueAsArray = readRootValueAsArray; _dateTimeKindHandling = dateTimeKindHandling; } private string ReadElement() { _currentElementType = ReadType(); string elementName = ReadString(); return elementName; } /// /// Reads the next JSON token from the stream as a []. /// /// /// A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. /// public override byte[] ReadAsBytes() { return ReadAsBytesInternal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override decimal? ReadAsDecimal() { return ReadAsDecimalInternal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override int? ReadAsInt32() { return ReadAsInt32Internal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override string ReadAsString() { return ReadAsStringInternal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override DateTime? ReadAsDateTime() { return ReadAsDateTimeInternal(); } #if !NET20 /// /// Reads the next JSON token from the stream as a . /// /// /// A . This method will return null at the end of an array. /// public override DateTimeOffset? ReadAsDateTimeOffset() { return ReadAsDateTimeOffsetInternal(); } #endif /// /// Reads the next JSON token from the stream. /// /// /// true if the next token was read successfully; false if there are no more tokens to read. /// public override bool Read() { _readType = Json.ReadType.Read; return ReadInternal(); } internal override bool ReadInternal() { try { bool success; switch (_bsonReaderState) { case BsonReaderState.Normal: success = ReadNormal(); break; case BsonReaderState.ReferenceStart: case BsonReaderState.ReferenceRef: case BsonReaderState.ReferenceId: success = ReadReference(); break; case BsonReaderState.CodeWScopeStart: case BsonReaderState.CodeWScopeCode: case BsonReaderState.CodeWScopeScope: case BsonReaderState.CodeWScopeScopeObject: case BsonReaderState.CodeWScopeScopeEnd: success = ReadCodeWScope(); break; default: throw JsonReaderException.Create(this, "Unexpected state: {0}".FormatWith(CultureInfo.InvariantCulture, _bsonReaderState)); } if (!success) { SetToken(JsonToken.None); return false; } return true; } catch (EndOfStreamException) { SetToken(JsonToken.None); return false; } } /// /// Changes the to Closed. /// public override void Close() { base.Close(); if (CloseInput && _reader != null) #if !(NETFX_CORE || PORTABLE40 || PORTABLE) _reader.Close(); #else _reader.Dispose(); #endif } private bool ReadCodeWScope() { switch (_bsonReaderState) { case BsonReaderState.CodeWScopeStart: SetToken(JsonToken.PropertyName, "$code"); _bsonReaderState = BsonReaderState.CodeWScopeCode; return true; case BsonReaderState.CodeWScopeCode: // total CodeWScope size - not used ReadInt32(); SetToken(JsonToken.String, ReadLengthString()); _bsonReaderState = BsonReaderState.CodeWScopeScope; return true; case BsonReaderState.CodeWScopeScope: if (CurrentState == State.PostValue) { SetToken(JsonToken.PropertyName, "$scope"); return true; } else { SetToken(JsonToken.StartObject); _bsonReaderState = BsonReaderState.CodeWScopeScopeObject; ContainerContext newContext = new ContainerContext(BsonType.Object); PushContext(newContext); newContext.Length = ReadInt32(); return true; } case BsonReaderState.CodeWScopeScopeObject: bool result = ReadNormal(); if (result && TokenType == JsonToken.EndObject) _bsonReaderState = BsonReaderState.CodeWScopeScopeEnd; return result; case BsonReaderState.CodeWScopeScopeEnd: SetToken(JsonToken.EndObject); _bsonReaderState = BsonReaderState.Normal; return true; default: throw new ArgumentOutOfRangeException(); } } private bool ReadReference() { switch (CurrentState) { case State.ObjectStart: { SetToken(JsonToken.PropertyName, JsonTypeReflector.RefPropertyName); _bsonReaderState = BsonReaderState.ReferenceRef; return true; } case State.Property: { if (_bsonReaderState == BsonReaderState.ReferenceRef) { SetToken(JsonToken.String, ReadLengthString()); return true; } else if (_bsonReaderState == BsonReaderState.ReferenceId) { SetToken(JsonToken.Bytes, ReadBytes(12)); return true; } else { throw JsonReaderException.Create(this, "Unexpected state when reading BSON reference: " + _bsonReaderState); } } case State.PostValue: { if (_bsonReaderState == BsonReaderState.ReferenceRef) { SetToken(JsonToken.PropertyName, JsonTypeReflector.IdPropertyName); _bsonReaderState = BsonReaderState.ReferenceId; return true; } else if (_bsonReaderState == BsonReaderState.ReferenceId) { SetToken(JsonToken.EndObject); _bsonReaderState = BsonReaderState.Normal; return true; } else { throw JsonReaderException.Create(this, "Unexpected state when reading BSON reference: " + _bsonReaderState); } } default: throw JsonReaderException.Create(this, "Unexpected state when reading BSON reference: " + CurrentState); } } private bool ReadNormal() { switch (CurrentState) { case State.Start: { JsonToken token = (!_readRootValueAsArray) ? JsonToken.StartObject : JsonToken.StartArray; BsonType type = (!_readRootValueAsArray) ? BsonType.Object : BsonType.Array; SetToken(token); ContainerContext newContext = new ContainerContext(type); PushContext(newContext); newContext.Length = ReadInt32(); return true; } case State.Complete: case State.Closed: return false; case State.Property: { ReadType(_currentElementType); return true; } case State.ObjectStart: case State.ArrayStart: case State.PostValue: ContainerContext context = _currentContext; if (context == null) return false; int lengthMinusEnd = context.Length - 1; if (context.Position < lengthMinusEnd) { if (context.Type == BsonType.Array) { ReadElement(); ReadType(_currentElementType); return true; } else { SetToken(JsonToken.PropertyName, ReadElement()); return true; } } else if (context.Position == lengthMinusEnd) { if (ReadByte() != 0) throw JsonReaderException.Create(this, "Unexpected end of object byte value."); PopContext(); if (_currentContext != null) MovePosition(context.Length); JsonToken endToken = (context.Type == BsonType.Object) ? JsonToken.EndObject : JsonToken.EndArray; SetToken(endToken); return true; } else { throw JsonReaderException.Create(this, "Read past end of current container context."); } case State.ConstructorStart: break; case State.Constructor: break; case State.Error: break; case State.Finished: break; default: throw new ArgumentOutOfRangeException(); } return false; } private void PopContext() { _stack.RemoveAt(_stack.Count - 1); if (_stack.Count == 0) _currentContext = null; else _currentContext = _stack[_stack.Count - 1]; } private void PushContext(ContainerContext newContext) { _stack.Add(newContext); _currentContext = newContext; } private byte ReadByte() { MovePosition(1); return _reader.ReadByte(); } private void ReadType(BsonType type) { switch (type) { case BsonType.Number: double d = ReadDouble(); if (_floatParseHandling == FloatParseHandling.Decimal) SetToken(JsonToken.Float, Convert.ToDecimal(d, CultureInfo.InvariantCulture)); else SetToken(JsonToken.Float, d); break; case BsonType.String: case BsonType.Symbol: SetToken(JsonToken.String, ReadLengthString()); break; case BsonType.Object: { SetToken(JsonToken.StartObject); ContainerContext newContext = new ContainerContext(BsonType.Object); PushContext(newContext); newContext.Length = ReadInt32(); break; } case BsonType.Array: { SetToken(JsonToken.StartArray); ContainerContext newContext = new ContainerContext(BsonType.Array); PushContext(newContext); newContext.Length = ReadInt32(); break; } case BsonType.Binary: BsonBinaryType binaryType; byte[] data = ReadBinary(out binaryType); object value = (binaryType != BsonBinaryType.Uuid) ? data : (object)new Guid(data); SetToken(JsonToken.Bytes, value); break; case BsonType.Undefined: SetToken(JsonToken.Undefined); break; case BsonType.Oid: byte[] oid = ReadBytes(12); SetToken(JsonToken.Bytes, oid); break; case BsonType.Boolean: bool b = Convert.ToBoolean(ReadByte()); SetToken(JsonToken.Boolean, b); break; case BsonType.Date: long ticks = ReadInt64(); DateTime utcDateTime = DateTimeUtils.ConvertJavaScriptTicksToDateTime(ticks); DateTime dateTime; switch (DateTimeKindHandling) { case DateTimeKind.Unspecified: dateTime = DateTime.SpecifyKind(utcDateTime, DateTimeKind.Unspecified); break; case DateTimeKind.Local: dateTime = utcDateTime.ToLocalTime(); break; default: dateTime = utcDateTime; break; } SetToken(JsonToken.Date, dateTime); break; case BsonType.Null: SetToken(JsonToken.Null); break; case BsonType.Regex: string expression = ReadString(); string modifiers = ReadString(); string regex = @"/" + expression + @"/" + modifiers; SetToken(JsonToken.String, regex); break; case BsonType.Reference: SetToken(JsonToken.StartObject); _bsonReaderState = BsonReaderState.ReferenceStart; break; case BsonType.Code: SetToken(JsonToken.String, ReadLengthString()); break; case BsonType.CodeWScope: SetToken(JsonToken.StartObject); _bsonReaderState = BsonReaderState.CodeWScopeStart; break; case BsonType.Integer: SetToken(JsonToken.Integer, (long)ReadInt32()); break; case BsonType.TimeStamp: case BsonType.Long: SetToken(JsonToken.Integer, ReadInt64()); break; default: throw new ArgumentOutOfRangeException("type", "Unexpected BsonType value: " + type); } } private byte[] ReadBinary(out BsonBinaryType binaryType) { int dataLength = ReadInt32(); binaryType = (BsonBinaryType)ReadByte(); #pragma warning disable 612,618 // the old binary type has the data length repeated in the data for some reason if (binaryType == BsonBinaryType.BinaryOld && !_jsonNet35BinaryCompatibility) { dataLength = ReadInt32(); } #pragma warning restore 612,618 return ReadBytes(dataLength); } private string ReadString() { EnsureBuffers(); StringBuilder builder = null; int totalBytesRead = 0; // used in case of left over multibyte characters in the buffer int offset = 0; do { int count = offset; byte b; while (count < MaxCharBytesSize && (b = _reader.ReadByte()) > 0) { _byteBuffer[count++] = b; } int byteCount = count - offset; totalBytesRead += byteCount; if (count < MaxCharBytesSize && builder == null) { // pref optimization to avoid reading into a string builder // if string is smaller than the buffer then return it directly int length = Encoding.UTF8.GetChars(_byteBuffer, 0, byteCount, _charBuffer, 0); MovePosition(totalBytesRead + 1); return new string(_charBuffer, 0, length); } else { // calculate the index of the end of the last full character in the buffer int lastFullCharStop = GetLastFullCharStop(count - 1); int charCount = Encoding.UTF8.GetChars(_byteBuffer, 0, lastFullCharStop + 1, _charBuffer, 0); if (builder == null) builder = new StringBuilder(MaxCharBytesSize * 2); builder.Append(_charBuffer, 0, charCount); if (lastFullCharStop < byteCount - 1) { offset = byteCount - lastFullCharStop - 1; // copy left over multi byte characters to beginning of buffer for next iteration Array.Copy(_byteBuffer, lastFullCharStop + 1, _byteBuffer, 0, offset); } else { // reached end of string if (count < MaxCharBytesSize) { MovePosition(totalBytesRead + 1); return builder.ToString(); } offset = 0; } } } while (true); } private string ReadLengthString() { int length = ReadInt32(); MovePosition(length); string s = GetString(length - 1); _reader.ReadByte(); return s; } private string GetString(int length) { if (length == 0) return string.Empty; EnsureBuffers(); StringBuilder builder = null; int totalBytesRead = 0; // used in case of left over multibyte characters in the buffer int offset = 0; do { int count = ((length - totalBytesRead) > MaxCharBytesSize - offset) ? MaxCharBytesSize - offset : length - totalBytesRead; int byteCount = _reader.Read(_byteBuffer, offset, count); if (byteCount == 0) throw new EndOfStreamException("Unable to read beyond the end of the stream."); totalBytesRead += byteCount; // Above, byteCount is how many bytes we read this time. // Below, byteCount is how many bytes are in the _byteBuffer. byteCount += offset; if (byteCount == length) { // pref optimization to avoid reading into a string builder // first iteration and all bytes read then return string directly int charCount = Encoding.UTF8.GetChars(_byteBuffer, 0, byteCount, _charBuffer, 0); return new string(_charBuffer, 0, charCount); } else { int lastFullCharStop = GetLastFullCharStop(byteCount - 1); if (builder == null) builder = new StringBuilder(length); int charCount = Encoding.UTF8.GetChars(_byteBuffer, 0, lastFullCharStop + 1, _charBuffer, 0); builder.Append(_charBuffer, 0, charCount); if (lastFullCharStop < byteCount - 1) { offset = byteCount - lastFullCharStop - 1; // copy left over multi byte characters to beginning of buffer for next iteration Array.Copy(_byteBuffer, lastFullCharStop + 1, _byteBuffer, 0, offset); } else { offset = 0; } } } while (totalBytesRead < length); return builder.ToString(); } private int GetLastFullCharStop(int start) { int lookbackPos = start; int bis = 0; while (lookbackPos >= 0) { bis = BytesInSequence(_byteBuffer[lookbackPos]); if (bis == 0) { lookbackPos--; continue; } else if (bis == 1) { break; } else { lookbackPos--; break; } } if (bis == start - lookbackPos) { //Full character. return start; } else { return lookbackPos; } } private int BytesInSequence(byte b) { if (b <= SeqRange1[1]) return 1; if (b >= SeqRange2[0] && b <= SeqRange2[1]) return 2; if (b >= SeqRange3[0] && b <= SeqRange3[1]) return 3; if (b >= SeqRange4[0] && b <= SeqRange4[1]) return 4; return 0; } private void EnsureBuffers() { if (_byteBuffer == null) { _byteBuffer = new byte[MaxCharBytesSize]; } if (_charBuffer == null) { int charBufferSize = Encoding.UTF8.GetMaxCharCount(MaxCharBytesSize); _charBuffer = new char[charBufferSize]; } } private double ReadDouble() { MovePosition(8); return _reader.ReadDouble(); } private int ReadInt32() { MovePosition(4); return _reader.ReadInt32(); } private long ReadInt64() { MovePosition(8); return _reader.ReadInt64(); } private BsonType ReadType() { MovePosition(1); return (BsonType)_reader.ReadSByte(); } private void MovePosition(int count) { _currentContext.Position += count; } private byte[] ReadBytes(int count) { MovePosition(count); return _reader.ReadBytes(count); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Bson/BsonObjectId.cs0000664000175000017500000000372412454416117025001 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Bson { /// /// Represents a BSON Oid (object id). /// public class BsonObjectId { /// /// Gets or sets the value of the Oid. /// /// The value of the Oid. public byte[] Value { get; private set; } /// /// Initializes a new instance of the class. /// /// The Oid value. public BsonObjectId(byte[] value) { ValidationUtils.ArgumentNotNull(value, "value"); if (value.Length != 12) throw new ArgumentException("An ObjectId must be 12 bytes", "value"); Value = value; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Bson/BsonType.cs0000664000175000017500000000316112454416117024232 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Bson { internal enum BsonType : sbyte { Number = 1, String = 2, Object = 3, Array = 4, Binary = 5, Undefined = 6, Oid = 7, Boolean = 8, Date = 9, Null = 10, Regex = 11, Reference = 12, Code = 13, Symbol = 14, CodeWScope = 15, Integer = 16, TimeStamp = 17, Long = 18, MinKey = -1, MaxKey = 127 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Bson/BsonToken.cs0000664000175000017500000001040512454416117024370 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections; using System.Collections.Generic; namespace Newtonsoft.Json.Bson { internal abstract class BsonToken { public abstract BsonType Type { get; } public BsonToken Parent { get; set; } public int CalculatedSize { get; set; } } internal class BsonObject : BsonToken, IEnumerable { private readonly List _children = new List(); public void Add(string name, BsonToken token) { _children.Add(new BsonProperty { Name = new BsonString(name, false), Value = token }); token.Parent = this; } public override BsonType Type { get { return BsonType.Object; } } public IEnumerator GetEnumerator() { return _children.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } internal class BsonArray : BsonToken, IEnumerable { private readonly List _children = new List(); public void Add(BsonToken token) { _children.Add(token); token.Parent = this; } public override BsonType Type { get { return BsonType.Array; } } public IEnumerator GetEnumerator() { return _children.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } internal class BsonValue : BsonToken { private readonly object _value; private readonly BsonType _type; public BsonValue(object value, BsonType type) { _value = value; _type = type; } public object Value { get { return _value; } } public override BsonType Type { get { return _type; } } } internal class BsonString : BsonValue { public int ByteCount { get; set; } public bool IncludeLength { get; set; } public BsonString(object value, bool includeLength) : base(value, BsonType.String) { IncludeLength = includeLength; } } internal class BsonBinary : BsonValue { public BsonBinaryType BinaryType { get; set; } public BsonBinary(byte[] value, BsonBinaryType binaryType) : base(value, BsonType.Binary) { BinaryType = binaryType; } } internal class BsonRegex : BsonToken { public BsonString Pattern { get; set; } public BsonString Options { get; set; } public BsonRegex(string pattern, string options) { Pattern = new BsonString(pattern, false); Options = new BsonString(options, false); } public override BsonType Type { get { return BsonType.Regex; } } } internal class BsonProperty { public BsonString Name { get; set; } public BsonToken Value { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Bson/BsonBinaryType.cs0000664000175000017500000000312412454416117025376 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Bson { internal enum BsonBinaryType : byte { Binary = 0x00, Function = 0x01, [Obsolete("This type has been deprecated in the BSON specification. Use Binary instead.")] BinaryOld = 0x02, [Obsolete("This type has been deprecated in the BSON specification. Use Uuid instead.")] UuidOld = 0x03, Uuid = 0x04, Md5 = 0x05, UserDefined = 0x80 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Bson/BsonWriter.cs0000664000175000017500000004174612454416117024600 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.IO; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) using System.Numerics; #endif using System.Text; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Linq; using System.Globalization; namespace Newtonsoft.Json.Bson { /// /// Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. /// public class BsonWriter : JsonWriter { private readonly BsonBinaryWriter _writer; private BsonToken _root; private BsonToken _parent; private string _propertyName; /// /// Gets or sets the used when writing values to BSON. /// When set to no conversion will occur. /// /// The used when writing values to BSON. public DateTimeKind DateTimeKindHandling { get { return _writer.DateTimeKindHandling; } set { _writer.DateTimeKindHandling = value; } } /// /// Initializes a new instance of the class. /// /// The stream. public BsonWriter(Stream stream) { ValidationUtils.ArgumentNotNull(stream, "stream"); _writer = new BsonBinaryWriter(new BinaryWriter(stream)); } /// /// Initializes a new instance of the class. /// /// The writer. public BsonWriter(BinaryWriter writer) { ValidationUtils.ArgumentNotNull(writer, "writer"); _writer = new BsonBinaryWriter(writer); } /// /// Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. /// public override void Flush() { _writer.Flush(); } /// /// Writes the end. /// /// The token. protected override void WriteEnd(JsonToken token) { base.WriteEnd(token); RemoveParent(); if (Top == 0) { _writer.WriteToken(_root); } } /// /// Writes out a comment /*...*/ containing the specified text. /// /// Text to place inside the comment. public override void WriteComment(string text) { throw JsonWriterException.Create(this, "Cannot write JSON comment as BSON.", null); } /// /// Writes the start of a constructor with the given name. /// /// The name of the constructor. public override void WriteStartConstructor(string name) { throw JsonWriterException.Create(this, "Cannot write JSON constructor as BSON.", null); } /// /// Writes raw JSON. /// /// The raw JSON to write. public override void WriteRaw(string json) { throw JsonWriterException.Create(this, "Cannot write raw JSON as BSON.", null); } /// /// Writes raw JSON where a value is expected and updates the writer's state. /// /// The raw JSON to write. public override void WriteRawValue(string json) { throw JsonWriterException.Create(this, "Cannot write raw JSON as BSON.", null); } /// /// Writes the beginning of a Json array. /// public override void WriteStartArray() { base.WriteStartArray(); AddParent(new BsonArray()); } /// /// Writes the beginning of a Json object. /// public override void WriteStartObject() { base.WriteStartObject(); AddParent(new BsonObject()); } /// /// Writes the property name of a name/value pair on a Json object. /// /// The name of the property. public override void WritePropertyName(string name) { base.WritePropertyName(name); _propertyName = name; } /// /// Closes this stream and the underlying stream. /// public override void Close() { base.Close(); if (CloseOutput && _writer != null) _writer.Close(); } private void AddParent(BsonToken container) { AddToken(container); _parent = container; } private void RemoveParent() { _parent = _parent.Parent; } private void AddValue(object value, BsonType type) { AddToken(new BsonValue(value, type)); } internal void AddToken(BsonToken token) { if (_parent != null) { if (_parent is BsonObject) { ((BsonObject)_parent).Add(_propertyName, token); _propertyName = null; } else { ((BsonArray)_parent).Add(token); } } else { if (token.Type != BsonType.Object && token.Type != BsonType.Array) throw JsonWriterException.Create(this, "Error writing {0} value. BSON must start with an Object or Array.".FormatWith(CultureInfo.InvariantCulture, token.Type), null); _parent = token; _root = token; } } #region WriteValue methods /// /// Writes a value. /// An error will raised if the value cannot be written as a single JSON token. /// /// The value to write. public override void WriteValue(object value) { #if !(NET20 || NET35 || PORTABLE || PORTABLE40) if (value is BigInteger) { InternalWriteValue(JsonToken.Integer); AddToken(new BsonBinary(((BigInteger)value).ToByteArray(), BsonBinaryType.Binary)); } else #endif { base.WriteValue(value); } } /// /// Writes a null value. /// public override void WriteNull() { base.WriteNull(); AddValue(null, BsonType.Null); } /// /// Writes an undefined value. /// public override void WriteUndefined() { base.WriteUndefined(); AddValue(null, BsonType.Undefined); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(string value) { base.WriteValue(value); if (value == null) AddValue(null, BsonType.Null); else AddToken(new BsonString(value, true)); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(int value) { base.WriteValue(value); AddValue(value, BsonType.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(uint value) { if (value > int.MaxValue) throw JsonWriterException.Create(this, "Value is too large to fit in a signed 32 bit integer. BSON does not support unsigned values.", null); base.WriteValue(value); AddValue(value, BsonType.Integer); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(long value) { base.WriteValue(value); AddValue(value, BsonType.Long); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(ulong value) { if (value > long.MaxValue) throw JsonWriterException.Create(this, "Value is too large to fit in a signed 64 bit integer. BSON does not support unsigned values.", null); base.WriteValue(value); AddValue(value, BsonType.Long); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(float value) { base.WriteValue(value); AddValue(value, BsonType.Number); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(double value) { base.WriteValue(value); AddValue(value, BsonType.Number); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(bool value) { base.WriteValue(value); AddValue(value, BsonType.Boolean); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(short value) { base.WriteValue(value); AddValue(value, BsonType.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(ushort value) { base.WriteValue(value); AddValue(value, BsonType.Integer); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(char value) { base.WriteValue(value); string s = null; #if !(NETFX_CORE || PORTABLE40 || PORTABLE) s = value.ToString(CultureInfo.InvariantCulture); #else s = value.ToString(); #endif AddToken(new BsonString(s, true)); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(byte value) { base.WriteValue(value); AddValue(value, BsonType.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(sbyte value) { base.WriteValue(value); AddValue(value, BsonType.Integer); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(decimal value) { base.WriteValue(value); AddValue(value, BsonType.Number); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(DateTime value) { base.WriteValue(value); value = DateTimeUtils.EnsureDateTime(value, DateTimeZoneHandling); AddValue(value, BsonType.Date); } #if !NET20 /// /// Writes a value. /// /// The value to write. public override void WriteValue(DateTimeOffset value) { base.WriteValue(value); AddValue(value, BsonType.Date); } #endif /// /// Writes a [] value. /// /// The [] value to write. public override void WriteValue(byte[] value) { base.WriteValue(value); AddToken(new BsonBinary(value, BsonBinaryType.Binary)); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(Guid value) { base.WriteValue(value); AddToken(new BsonBinary(value.ToByteArray(), BsonBinaryType.Uuid)); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(TimeSpan value) { base.WriteValue(value); AddToken(new BsonString(value.ToString(), true)); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(Uri value) { base.WriteValue(value); AddToken(new BsonString(value.ToString(), true)); } #endregion /// /// Writes a [] value that represents a BSON object id. /// /// The Object ID value to write. public void WriteObjectId(byte[] value) { ValidationUtils.ArgumentNotNull(value, "value"); if (value.Length != 12) throw JsonWriterException.Create(this, "An object id must be 12 bytes", null); // hack to update the writer state UpdateScopeWithFinishedValue(); AutoComplete(JsonToken.Undefined); AddValue(value, BsonType.Oid); } /// /// Writes a BSON regex. /// /// The regex pattern. /// The regex options. public void WriteRegex(string pattern, string options) { ValidationUtils.ArgumentNotNull(pattern, "pattern"); // hack to update the writer state UpdateScopeWithFinishedValue(); AutoComplete(JsonToken.Undefined); AddToken(new BsonRegex(pattern, options)); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Bson/BsonBinaryWriter.cs0000664000175000017500000002617312454416117025742 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using System.IO; using System.Text; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Bson { internal class BsonBinaryWriter { private static readonly Encoding Encoding = new UTF8Encoding(false); private readonly BinaryWriter _writer; private byte[] _largeByteBuffer; public DateTimeKind DateTimeKindHandling { get; set; } public BsonBinaryWriter(BinaryWriter writer) { DateTimeKindHandling = DateTimeKind.Utc; _writer = writer; } public void Flush() { _writer.Flush(); } public void Close() { #if !(NETFX_CORE || PORTABLE40 || PORTABLE) _writer.Close(); #else _writer.Dispose(); #endif } public void WriteToken(BsonToken t) { CalculateSize(t); WriteTokenInternal(t); } private void WriteTokenInternal(BsonToken t) { switch (t.Type) { case BsonType.Object: { BsonObject value = (BsonObject)t; _writer.Write(value.CalculatedSize); foreach (BsonProperty property in value) { _writer.Write((sbyte)property.Value.Type); WriteString((string)property.Name.Value, property.Name.ByteCount, null); WriteTokenInternal(property.Value); } _writer.Write((byte)0); } break; case BsonType.Array: { BsonArray value = (BsonArray)t; _writer.Write(value.CalculatedSize); ulong index = 0; foreach (BsonToken c in value) { _writer.Write((sbyte)c.Type); WriteString(index.ToString(CultureInfo.InvariantCulture), MathUtils.IntLength(index), null); WriteTokenInternal(c); index++; } _writer.Write((byte)0); } break; case BsonType.Integer: { BsonValue value = (BsonValue)t; _writer.Write(Convert.ToInt32(value.Value, CultureInfo.InvariantCulture)); } break; case BsonType.Long: { BsonValue value = (BsonValue)t; _writer.Write(Convert.ToInt64(value.Value, CultureInfo.InvariantCulture)); } break; case BsonType.Number: { BsonValue value = (BsonValue)t; _writer.Write(Convert.ToDouble(value.Value, CultureInfo.InvariantCulture)); } break; case BsonType.String: { BsonString value = (BsonString)t; WriteString((string)value.Value, value.ByteCount, value.CalculatedSize - 4); } break; case BsonType.Boolean: { BsonValue value = (BsonValue)t; _writer.Write((bool)value.Value); } break; case BsonType.Null: case BsonType.Undefined: break; case BsonType.Date: { BsonValue value = (BsonValue)t; long ticks = 0; if (value.Value is DateTime) { DateTime dateTime = (DateTime)value.Value; if (DateTimeKindHandling == DateTimeKind.Utc) dateTime = dateTime.ToUniversalTime(); else if (DateTimeKindHandling == DateTimeKind.Local) dateTime = dateTime.ToLocalTime(); ticks = DateTimeUtils.ConvertDateTimeToJavaScriptTicks(dateTime, false); } #if !NET20 else { DateTimeOffset dateTimeOffset = (DateTimeOffset)value.Value; ticks = DateTimeUtils.ConvertDateTimeToJavaScriptTicks(dateTimeOffset.UtcDateTime, dateTimeOffset.Offset); } #endif _writer.Write(ticks); } break; case BsonType.Binary: { BsonBinary value = (BsonBinary)t; byte[] data = (byte[])value.Value; _writer.Write(data.Length); _writer.Write((byte)value.BinaryType); _writer.Write(data); } break; case BsonType.Oid: { BsonValue value = (BsonValue)t; byte[] data = (byte[])value.Value; _writer.Write(data); } break; case BsonType.Regex: { BsonRegex value = (BsonRegex)t; WriteString((string)value.Pattern.Value, value.Pattern.ByteCount, null); WriteString((string)value.Options.Value, value.Options.ByteCount, null); } break; default: throw new ArgumentOutOfRangeException("t", "Unexpected token when writing BSON: {0}".FormatWith(CultureInfo.InvariantCulture, t.Type)); } } private void WriteString(string s, int byteCount, int? calculatedlengthPrefix) { if (calculatedlengthPrefix != null) _writer.Write(calculatedlengthPrefix.Value); WriteUtf8Bytes(s, byteCount); _writer.Write((byte)0); } public void WriteUtf8Bytes(string s, int byteCount) { if (s != null) { if (_largeByteBuffer == null) { _largeByteBuffer = new byte[256]; } if (byteCount <= 256) { Encoding.GetBytes(s, 0, s.Length, _largeByteBuffer, 0); _writer.Write(_largeByteBuffer, 0, byteCount); } else { byte[] bytes = Encoding.GetBytes(s); _writer.Write(bytes); } } } private int CalculateSize(int stringByteCount) { return stringByteCount + 1; } private int CalculateSizeWithLength(int stringByteCount, bool includeSize) { int baseSize = (includeSize) ? 5 // size bytes + terminator : 1; // terminator return baseSize + stringByteCount; } private int CalculateSize(BsonToken t) { switch (t.Type) { case BsonType.Object: { BsonObject value = (BsonObject)t; int bases = 4; foreach (BsonProperty p in value) { int size = 1; size += CalculateSize(p.Name); size += CalculateSize(p.Value); bases += size; } bases += 1; value.CalculatedSize = bases; return bases; } case BsonType.Array: { BsonArray value = (BsonArray)t; int size = 4; ulong index = 0; foreach (BsonToken c in value) { size += 1; size += CalculateSize(MathUtils.IntLength(index)); size += CalculateSize(c); index++; } size += 1; value.CalculatedSize = size; return value.CalculatedSize; } case BsonType.Integer: return 4; case BsonType.Long: return 8; case BsonType.Number: return 8; case BsonType.String: { BsonString value = (BsonString)t; string s = (string)value.Value; value.ByteCount = (s != null) ? Encoding.GetByteCount(s) : 0; value.CalculatedSize = CalculateSizeWithLength(value.ByteCount, value.IncludeLength); return value.CalculatedSize; } case BsonType.Boolean: return 1; case BsonType.Null: case BsonType.Undefined: return 0; case BsonType.Date: return 8; case BsonType.Binary: { BsonBinary value = (BsonBinary)t; byte[] data = (byte[])value.Value; value.CalculatedSize = 4 + 1 + data.Length; return value.CalculatedSize; } case BsonType.Oid: return 12; case BsonType.Regex: { BsonRegex value = (BsonRegex)t; int size = 0; size += CalculateSize(value.Pattern); size += CalculateSize(value.Options); value.CalculatedSize = size; return value.CalculatedSize; } default: throw new ArgumentOutOfRangeException("t", "Unexpected token when writing BSON: {0}".FormatWith(CultureInfo.InvariantCulture, t.Type)); } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/StringEscapeHandling.cs0000664000175000017500000000337312454416117025627 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Specifies how strings are escaped when writing JSON text. /// public enum StringEscapeHandling { /// /// Only control characters (e.g. newline) are escaped. /// Default = 0, /// /// All non-ASCII and control characters (e.g. newline) are escaped. /// EscapeNonAscii = 1, /// /// HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. /// EscapeHtml = 2 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonConvert.cs0000664000175000017500000015043012454416117024042 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.IO; using System.Globalization; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) using System.Numerics; #endif #if !(NET20 || NET35 || PORTABLE40) using System.Threading.Tasks; #endif using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; using System.Xml; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; using System.Text; #if !(NET20 || PORTABLE40) using System.Xml.Linq; #endif namespace Newtonsoft.Json { /// /// Provides methods for converting between common language runtime types and JSON types. /// /// /// /// public static class JsonConvert { /// /// Gets or sets a function that creates default . /// Default settings are automatically used by serialization methods on , /// and and on . /// To serialize without using any default settings create a with /// . /// public static Func DefaultSettings { get; set; } /// /// Represents JavaScript's boolean value true as a string. This field is read-only. /// public static readonly string True = "true"; /// /// Represents JavaScript's boolean value false as a string. This field is read-only. /// public static readonly string False = "false"; /// /// Represents JavaScript's null as a string. This field is read-only. /// public static readonly string Null = "null"; /// /// Represents JavaScript's undefined as a string. This field is read-only. /// public static readonly string Undefined = "undefined"; /// /// Represents JavaScript's positive infinity as a string. This field is read-only. /// public static readonly string PositiveInfinity = "Infinity"; /// /// Represents JavaScript's negative infinity as a string. This field is read-only. /// public static readonly string NegativeInfinity = "-Infinity"; /// /// Represents JavaScript's NaN as a string. This field is read-only. /// public static readonly string NaN = "NaN"; /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(DateTime value) { return ToString(value, DateFormatHandling.IsoDateFormat, DateTimeZoneHandling.RoundtripKind); } /// /// Converts the to its JSON string representation using the specified. /// /// The value to convert. /// The format the date will be converted to. /// The time zone handling when the date is converted to a string. /// A JSON string representation of the . public static string ToString(DateTime value, DateFormatHandling format, DateTimeZoneHandling timeZoneHandling) { DateTime updatedDateTime = DateTimeUtils.EnsureDateTime(value, timeZoneHandling); using (StringWriter writer = StringUtils.CreateStringWriter(64)) { writer.Write('"'); DateTimeUtils.WriteDateTimeString(writer, updatedDateTime, format, null, CultureInfo.InvariantCulture); writer.Write('"'); return writer.ToString(); } } #if !NET20 /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(DateTimeOffset value) { return ToString(value, DateFormatHandling.IsoDateFormat); } /// /// Converts the to its JSON string representation using the specified. /// /// The value to convert. /// The format the date will be converted to. /// A JSON string representation of the . public static string ToString(DateTimeOffset value, DateFormatHandling format) { using (StringWriter writer = StringUtils.CreateStringWriter(64)) { writer.Write('"'); DateTimeUtils.WriteDateTimeOffsetString(writer, value, format, null, CultureInfo.InvariantCulture); writer.Write('"'); return writer.ToString(); } } #endif /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(bool value) { return (value) ? True : False; } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(char value) { return ToString(char.ToString(value)); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(Enum value) { return value.ToString("D"); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(int value) { return value.ToString(null, CultureInfo.InvariantCulture); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(short value) { return value.ToString(null, CultureInfo.InvariantCulture); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . [CLSCompliant(false)] public static string ToString(ushort value) { return value.ToString(null, CultureInfo.InvariantCulture); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . [CLSCompliant(false)] public static string ToString(uint value) { return value.ToString(null, CultureInfo.InvariantCulture); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(long value) { return value.ToString(null, CultureInfo.InvariantCulture); } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) private static string ToStringInternal(BigInteger value) { return value.ToString(null, CultureInfo.InvariantCulture); } #endif /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . [CLSCompliant(false)] public static string ToString(ulong value) { return value.ToString(null, CultureInfo.InvariantCulture); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(float value) { return EnsureDecimalPlace(value, value.ToString("R", CultureInfo.InvariantCulture)); } internal static string ToString(float value, FloatFormatHandling floatFormatHandling, char quoteChar, bool nullable) { return EnsureFloatFormat(value, EnsureDecimalPlace(value, value.ToString("R", CultureInfo.InvariantCulture)), floatFormatHandling, quoteChar, nullable); } private static string EnsureFloatFormat(double value, string text, FloatFormatHandling floatFormatHandling, char quoteChar, bool nullable) { if (floatFormatHandling == FloatFormatHandling.Symbol || !(double.IsInfinity(value) || double.IsNaN(value))) return text; if (floatFormatHandling == FloatFormatHandling.DefaultValue) return (!nullable) ? "0.0" : Null; return quoteChar + text + quoteChar; } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(double value) { return EnsureDecimalPlace(value, value.ToString("R", CultureInfo.InvariantCulture)); } internal static string ToString(double value, FloatFormatHandling floatFormatHandling, char quoteChar, bool nullable) { return EnsureFloatFormat(value, EnsureDecimalPlace(value, value.ToString("R", CultureInfo.InvariantCulture)), floatFormatHandling, quoteChar, nullable); } private static string EnsureDecimalPlace(double value, string text) { if (double.IsNaN(value) || double.IsInfinity(value) || text.IndexOf('.') != -1 || text.IndexOf('E') != -1 || text.IndexOf('e') != -1) return text; return text + ".0"; } private static string EnsureDecimalPlace(string text) { if (text.IndexOf('.') != -1) return text; return text + ".0"; } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(byte value) { return value.ToString(null, CultureInfo.InvariantCulture); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . [CLSCompliant(false)] public static string ToString(sbyte value) { return value.ToString(null, CultureInfo.InvariantCulture); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(decimal value) { return EnsureDecimalPlace(value.ToString(null, CultureInfo.InvariantCulture)); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(Guid value) { return ToString(value, '"'); } internal static string ToString(Guid value, char quoteChar) { string text; string qc; #if !(NETFX_CORE || PORTABLE40 || PORTABLE) text = value.ToString("D", CultureInfo.InvariantCulture); qc = quoteChar.ToString(CultureInfo.InvariantCulture); #else text = value.ToString("D"); qc = quoteChar.ToString(); #endif return qc + text + qc; } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(TimeSpan value) { return ToString(value, '"'); } internal static string ToString(TimeSpan value, char quoteChar) { return ToString(value.ToString(), quoteChar); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(Uri value) { if (value == null) return Null; return ToString(value, '"'); } internal static string ToString(Uri value, char quoteChar) { return ToString(value.OriginalString, quoteChar); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(string value) { return ToString(value, '"'); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// The string delimiter character. /// A JSON string representation of the . public static string ToString(string value, char delimiter) { return ToString(value, delimiter, StringEscapeHandling.Default); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// The string delimiter character. /// The string escape handling. /// A JSON string representation of the . public static string ToString(string value, char delimiter, StringEscapeHandling stringEscapeHandling) { if (delimiter != '"' && delimiter != '\'') throw new ArgumentException("Delimiter must be a single or double quote.", "delimiter"); return JavaScriptUtils.ToEscapedJavaScriptString(value, delimiter, true, stringEscapeHandling); } /// /// Converts the to its JSON string representation. /// /// The value to convert. /// A JSON string representation of the . public static string ToString(object value) { if (value == null) return Null; PrimitiveTypeCode typeCode = ConvertUtils.GetTypeCode(value.GetType()); switch (typeCode) { case PrimitiveTypeCode.String: return ToString((string)value); case PrimitiveTypeCode.Char: return ToString((char)value); case PrimitiveTypeCode.Boolean: return ToString((bool)value); case PrimitiveTypeCode.SByte: return ToString((sbyte)value); case PrimitiveTypeCode.Int16: return ToString((short)value); case PrimitiveTypeCode.UInt16: return ToString((ushort)value); case PrimitiveTypeCode.Int32: return ToString((int)value); case PrimitiveTypeCode.Byte: return ToString((byte)value); case PrimitiveTypeCode.UInt32: return ToString((uint)value); case PrimitiveTypeCode.Int64: return ToString((long)value); case PrimitiveTypeCode.UInt64: return ToString((ulong)value); case PrimitiveTypeCode.Single: return ToString((float)value); case PrimitiveTypeCode.Double: return ToString((double)value); case PrimitiveTypeCode.DateTime: return ToString((DateTime)value); case PrimitiveTypeCode.Decimal: return ToString((decimal)value); #if !(NETFX_CORE || PORTABLE) case PrimitiveTypeCode.DBNull: return Null; #endif #if !NET20 case PrimitiveTypeCode.DateTimeOffset: return ToString((DateTimeOffset)value); #endif case PrimitiveTypeCode.Guid: return ToString((Guid)value); case PrimitiveTypeCode.Uri: return ToString((Uri)value); case PrimitiveTypeCode.TimeSpan: return ToString((TimeSpan)value); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) case PrimitiveTypeCode.BigInteger: return ToStringInternal((BigInteger)value); #endif } throw new ArgumentException("Unsupported type: {0}. Use the JsonSerializer class to get the object's JSON representation.".FormatWith(CultureInfo.InvariantCulture, value.GetType())); } #region Serialize /// /// Serializes the specified object to a JSON string. /// /// The object to serialize. /// A JSON string representation of the object. public static string SerializeObject(object value) { return SerializeObject(value, null, (JsonSerializerSettings)null); } /// /// Serializes the specified object to a JSON string using formatting. /// /// The object to serialize. /// Indicates how the output is formatted. /// /// A JSON string representation of the object. /// public static string SerializeObject(object value, Formatting formatting) { return SerializeObject(value, formatting, (JsonSerializerSettings)null); } /// /// Serializes the specified object to a JSON string using a collection of . /// /// The object to serialize. /// A collection converters used while serializing. /// A JSON string representation of the object. public static string SerializeObject(object value, params JsonConverter[] converters) { JsonSerializerSettings settings = (converters != null && converters.Length > 0) ? new JsonSerializerSettings { Converters = converters } : null; return SerializeObject(value, null, settings); } /// /// Serializes the specified object to a JSON string using formatting and a collection of . /// /// The object to serialize. /// Indicates how the output is formatted. /// A collection converters used while serializing. /// A JSON string representation of the object. public static string SerializeObject(object value, Formatting formatting, params JsonConverter[] converters) { JsonSerializerSettings settings = (converters != null && converters.Length > 0) ? new JsonSerializerSettings { Converters = converters } : null; return SerializeObject(value, null, formatting, settings); } /// /// Serializes the specified object to a JSON string using . /// /// The object to serialize. /// The used to serialize the object. /// If this is null, default serialization settings will be used. /// /// A JSON string representation of the object. /// public static string SerializeObject(object value, JsonSerializerSettings settings) { return SerializeObject(value, null, settings); } /// /// Serializes the specified object to a JSON string using a type, formatting and . /// /// The object to serialize. /// The used to serialize the object. /// If this is null, default serialization settings will be used. /// /// The type of the value being serialized. /// This parameter is used when is Auto to write out the type name if the type of the value does not match. /// Specifing the type is optional. /// /// /// A JSON string representation of the object. /// public static string SerializeObject(object value, Type type, JsonSerializerSettings settings) { JsonSerializer jsonSerializer = JsonSerializer.CreateDefault(settings); return SerializeObjectInternal(value, type, jsonSerializer); } /// /// Serializes the specified object to a JSON string using formatting and . /// /// The object to serialize. /// Indicates how the output is formatted. /// The used to serialize the object. /// If this is null, default serialization settings will be used. /// /// A JSON string representation of the object. /// public static string SerializeObject(object value, Formatting formatting, JsonSerializerSettings settings) { return SerializeObject(value, null, formatting, settings); } /// /// Serializes the specified object to a JSON string using a type, formatting and . /// /// The object to serialize. /// Indicates how the output is formatted. /// The used to serialize the object. /// If this is null, default serialization settings will be used. /// /// The type of the value being serialized. /// This parameter is used when is Auto to write out the type name if the type of the value does not match. /// Specifing the type is optional. /// /// /// A JSON string representation of the object. /// public static string SerializeObject(object value, Type type, Formatting formatting, JsonSerializerSettings settings) { JsonSerializer jsonSerializer = JsonSerializer.CreateDefault(settings); jsonSerializer.Formatting = formatting; return SerializeObjectInternal(value, type, jsonSerializer); } private static string SerializeObjectInternal(object value, Type type, JsonSerializer jsonSerializer) { StringBuilder sb = new StringBuilder(256); StringWriter sw = new StringWriter(sb, CultureInfo.InvariantCulture); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = jsonSerializer.Formatting; jsonSerializer.Serialize(jsonWriter, value, type); } return sw.ToString(); } #if !(NET20 || NET35 || PORTABLE40) /// /// Asynchronously serializes the specified object to a JSON string. /// Serialization will happen on a new thread. /// /// The object to serialize. /// /// A task that represents the asynchronous serialize operation. The value of the TResult parameter contains a JSON string representation of the object. /// [ObsoleteAttribute("SerializeObjectAsync is obsolete. Use the Task.Factory.StartNew method to serialize JSON asynchronously: Task.Factory.StartNew(() => JsonConvert.SerializeObject(value))")] public static Task SerializeObjectAsync(object value) { return SerializeObjectAsync(value, Formatting.None, null); } /// /// Asynchronously serializes the specified object to a JSON string using formatting. /// Serialization will happen on a new thread. /// /// The object to serialize. /// Indicates how the output is formatted. /// /// A task that represents the asynchronous serialize operation. The value of the TResult parameter contains a JSON string representation of the object. /// [ObsoleteAttribute("SerializeObjectAsync is obsolete. Use the Task.Factory.StartNew method to serialize JSON asynchronously: Task.Factory.StartNew(() => JsonConvert.SerializeObject(value, formatting))")] public static Task SerializeObjectAsync(object value, Formatting formatting) { return SerializeObjectAsync(value, formatting, null); } /// /// Asynchronously serializes the specified object to a JSON string using formatting and a collection of . /// Serialization will happen on a new thread. /// /// The object to serialize. /// Indicates how the output is formatted. /// The used to serialize the object. /// If this is null, default serialization settings will be used. /// /// A task that represents the asynchronous serialize operation. The value of the TResult parameter contains a JSON string representation of the object. /// [ObsoleteAttribute("SerializeObjectAsync is obsolete. Use the Task.Factory.StartNew method to serialize JSON asynchronously: Task.Factory.StartNew(() => JsonConvert.SerializeObject(value, formatting, settings))")] public static Task SerializeObjectAsync(object value, Formatting formatting, JsonSerializerSettings settings) { return Task.Factory.StartNew(() => SerializeObject(value, formatting, settings)); } #endif #endregion #region Deserialize /// /// Deserializes the JSON to a .NET object. /// /// The JSON to deserialize. /// The deserialized object from the JSON string. public static object DeserializeObject(string value) { return DeserializeObject(value, null, (JsonSerializerSettings)null); } /// /// Deserializes the JSON to a .NET object using . /// /// The JSON to deserialize. /// /// The used to deserialize the object. /// If this is null, default serialization settings will be used. /// /// The deserialized object from the JSON string. public static object DeserializeObject(string value, JsonSerializerSettings settings) { return DeserializeObject(value, null, settings); } /// /// Deserializes the JSON to the specified .NET type. /// /// The JSON to deserialize. /// The of object being deserialized. /// The deserialized object from the JSON string. public static object DeserializeObject(string value, Type type) { return DeserializeObject(value, type, (JsonSerializerSettings)null); } /// /// Deserializes the JSON to the specified .NET type. /// /// The type of the object to deserialize to. /// The JSON to deserialize. /// The deserialized object from the JSON string. public static T DeserializeObject(string value) { return DeserializeObject(value, (JsonSerializerSettings)null); } /// /// Deserializes the JSON to the given anonymous type. /// /// /// The anonymous type to deserialize to. This can't be specified /// traditionally and must be infered from the anonymous type passed /// as a parameter. /// /// The JSON to deserialize. /// The anonymous type object. /// The deserialized anonymous type from the JSON string. public static T DeserializeAnonymousType(string value, T anonymousTypeObject) { return DeserializeObject(value); } /// /// Deserializes the JSON to the given anonymous type using . /// /// /// The anonymous type to deserialize to. This can't be specified /// traditionally and must be infered from the anonymous type passed /// as a parameter. /// /// The JSON to deserialize. /// The anonymous type object. /// /// The used to deserialize the object. /// If this is null, default serialization settings will be used. /// /// The deserialized anonymous type from the JSON string. public static T DeserializeAnonymousType(string value, T anonymousTypeObject, JsonSerializerSettings settings) { return DeserializeObject(value, settings); } /// /// Deserializes the JSON to the specified .NET type using a collection of . /// /// The type of the object to deserialize to. /// The JSON to deserialize. /// Converters to use while deserializing. /// The deserialized object from the JSON string. public static T DeserializeObject(string value, params JsonConverter[] converters) { return (T)DeserializeObject(value, typeof(T), converters); } /// /// Deserializes the JSON to the specified .NET type using . /// /// The type of the object to deserialize to. /// The object to deserialize. /// /// The used to deserialize the object. /// If this is null, default serialization settings will be used. /// /// The deserialized object from the JSON string. public static T DeserializeObject(string value, JsonSerializerSettings settings) { return (T)DeserializeObject(value, typeof(T), settings); } /// /// Deserializes the JSON to the specified .NET type using a collection of . /// /// The JSON to deserialize. /// The type of the object to deserialize. /// Converters to use while deserializing. /// The deserialized object from the JSON string. public static object DeserializeObject(string value, Type type, params JsonConverter[] converters) { JsonSerializerSettings settings = (converters != null && converters.Length > 0) ? new JsonSerializerSettings { Converters = converters } : null; return DeserializeObject(value, type, settings); } /// /// Deserializes the JSON to the specified .NET type using . /// /// The JSON to deserialize. /// The type of the object to deserialize to. /// /// The used to deserialize the object. /// If this is null, default serialization settings will be used. /// /// The deserialized object from the JSON string. public static object DeserializeObject(string value, Type type, JsonSerializerSettings settings) { ValidationUtils.ArgumentNotNull(value, "value"); JsonSerializer jsonSerializer = JsonSerializer.CreateDefault(settings); // by default DeserializeObject should check for additional content if (!jsonSerializer.IsCheckAdditionalContentSet()) jsonSerializer.CheckAdditionalContent = true; using (var reader = new JsonTextReader(new StringReader(value))) { return jsonSerializer.Deserialize(reader, type); } } #if !(NET20 || NET35 || PORTABLE40) /// /// Asynchronously deserializes the JSON to the specified .NET type. /// Deserialization will happen on a new thread. /// /// The type of the object to deserialize to. /// The JSON to deserialize. /// /// A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. /// [ObsoleteAttribute("DeserializeObjectAsync is obsolete. Use the Task.Factory.StartNew method to deserialize JSON asynchronously: Task.Factory.StartNew(() => JsonConvert.DeserializeObject(value))")] public static Task DeserializeObjectAsync(string value) { return DeserializeObjectAsync(value, null); } /// /// Asynchronously deserializes the JSON to the specified .NET type using . /// Deserialization will happen on a new thread. /// /// The type of the object to deserialize to. /// The JSON to deserialize. /// /// The used to deserialize the object. /// If this is null, default serialization settings will be used. /// /// /// A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. /// [ObsoleteAttribute("DeserializeObjectAsync is obsolete. Use the Task.Factory.StartNew method to deserialize JSON asynchronously: Task.Factory.StartNew(() => JsonConvert.DeserializeObject(value, settings))")] public static Task DeserializeObjectAsync(string value, JsonSerializerSettings settings) { return Task.Factory.StartNew(() => DeserializeObject(value, settings)); } /// /// Asynchronously deserializes the JSON to the specified .NET type. /// Deserialization will happen on a new thread. /// /// The JSON to deserialize. /// /// A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. /// [ObsoleteAttribute("DeserializeObjectAsync is obsolete. Use the Task.Factory.StartNew method to deserialize JSON asynchronously: Task.Factory.StartNew(() => JsonConvert.DeserializeObject(value))")] public static Task DeserializeObjectAsync(string value) { return DeserializeObjectAsync(value, null, null); } /// /// Asynchronously deserializes the JSON to the specified .NET type using . /// Deserialization will happen on a new thread. /// /// The JSON to deserialize. /// The type of the object to deserialize to. /// /// The used to deserialize the object. /// If this is null, default serialization settings will be used. /// /// /// A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. /// [ObsoleteAttribute("DeserializeObjectAsync is obsolete. Use the Task.Factory.StartNew method to deserialize JSON asynchronously: Task.Factory.StartNew(() => JsonConvert.DeserializeObject(value, type, settings))")] public static Task DeserializeObjectAsync(string value, Type type, JsonSerializerSettings settings) { return Task.Factory.StartNew(() => DeserializeObject(value, type, settings)); } #endif #endregion /// /// Populates the object with values from the JSON string. /// /// The JSON to populate values from. /// The target object to populate values onto. public static void PopulateObject(string value, object target) { PopulateObject(value, target, null); } /// /// Populates the object with values from the JSON string using . /// /// The JSON to populate values from. /// The target object to populate values onto. /// /// The used to deserialize the object. /// If this is null, default serialization settings will be used. /// public static void PopulateObject(string value, object target, JsonSerializerSettings settings) { JsonSerializer jsonSerializer = JsonSerializer.CreateDefault(settings); using (JsonReader jsonReader = new JsonTextReader(new StringReader(value))) { jsonSerializer.Populate(jsonReader, target); if (jsonReader.Read() && jsonReader.TokenType != JsonToken.Comment) throw new JsonSerializationException("Additional text found in JSON string after finishing deserializing object."); } } #if !(NET20 || NET35 || PORTABLE40) /// /// Asynchronously populates the object with values from the JSON string using . /// /// The JSON to populate values from. /// The target object to populate values onto. /// /// The used to deserialize the object. /// If this is null, default serialization settings will be used. /// /// /// A task that represents the asynchronous populate operation. /// [ObsoleteAttribute("PopulateObjectAsync is obsolete. Use the Task.Factory.StartNew method to populate an object with JSON values asynchronously: Task.Factory.StartNew(() => JsonConvert.PopulateObject(value, target, settings))")] public static Task PopulateObjectAsync(string value, object target, JsonSerializerSettings settings) { return Task.Factory.StartNew(() => PopulateObject(value, target, settings)); } #endif #if !(PORTABLE40 || PORTABLE || NETFX_CORE) /// /// Serializes the XML node to a JSON string. /// /// The node to serialize. /// A JSON string of the XmlNode. public static string SerializeXmlNode(XmlNode node) { return SerializeXmlNode(node, Formatting.None); } /// /// Serializes the XML node to a JSON string using formatting. /// /// The node to serialize. /// Indicates how the output is formatted. /// A JSON string of the XmlNode. public static string SerializeXmlNode(XmlNode node, Formatting formatting) { XmlNodeConverter converter = new XmlNodeConverter(); return SerializeObject(node, formatting, converter); } /// /// Serializes the XML node to a JSON string using formatting and omits the root object if is true. /// /// The node to serialize. /// Indicates how the output is formatted. /// Omits writing the root object. /// A JSON string of the XmlNode. public static string SerializeXmlNode(XmlNode node, Formatting formatting, bool omitRootObject) { XmlNodeConverter converter = new XmlNodeConverter { OmitRootObject = omitRootObject }; return SerializeObject(node, formatting, converter); } /// /// Deserializes the XmlNode from a JSON string. /// /// The JSON string. /// The deserialized XmlNode public static XmlDocument DeserializeXmlNode(string value) { return DeserializeXmlNode(value, null); } /// /// Deserializes the XmlNode from a JSON string nested in a root elment specified by . /// /// The JSON string. /// The name of the root element to append when deserializing. /// The deserialized XmlNode public static XmlDocument DeserializeXmlNode(string value, string deserializeRootElementName) { return DeserializeXmlNode(value, deserializeRootElementName, false); } /// /// Deserializes the XmlNode from a JSON string nested in a root elment specified by /// and writes a .NET array attribute for collections. /// /// The JSON string. /// The name of the root element to append when deserializing. /// /// A flag to indicate whether to write the Json.NET array attribute. /// This attribute helps preserve arrays when converting the written XML back to JSON. /// /// The deserialized XmlNode public static XmlDocument DeserializeXmlNode(string value, string deserializeRootElementName, bool writeArrayAttribute) { XmlNodeConverter converter = new XmlNodeConverter(); converter.DeserializeRootElementName = deserializeRootElementName; converter.WriteArrayAttribute = writeArrayAttribute; return (XmlDocument)DeserializeObject(value, typeof(XmlDocument), converter); } #endif #if !NET20 && !PORTABLE40 /// /// Serializes the to a JSON string. /// /// The node to convert to JSON. /// A JSON string of the XNode. public static string SerializeXNode(XObject node) { return SerializeXNode(node, Formatting.None); } /// /// Serializes the to a JSON string using formatting. /// /// The node to convert to JSON. /// Indicates how the output is formatted. /// A JSON string of the XNode. public static string SerializeXNode(XObject node, Formatting formatting) { return SerializeXNode(node, formatting, false); } /// /// Serializes the to a JSON string using formatting and omits the root object if is true. /// /// The node to serialize. /// Indicates how the output is formatted. /// Omits writing the root object. /// A JSON string of the XNode. public static string SerializeXNode(XObject node, Formatting formatting, bool omitRootObject) { XmlNodeConverter converter = new XmlNodeConverter { OmitRootObject = omitRootObject }; return SerializeObject(node, formatting, converter); } /// /// Deserializes the from a JSON string. /// /// The JSON string. /// The deserialized XNode public static XDocument DeserializeXNode(string value) { return DeserializeXNode(value, null); } /// /// Deserializes the from a JSON string nested in a root elment specified by . /// /// The JSON string. /// The name of the root element to append when deserializing. /// The deserialized XNode public static XDocument DeserializeXNode(string value, string deserializeRootElementName) { return DeserializeXNode(value, deserializeRootElementName, false); } /// /// Deserializes the from a JSON string nested in a root elment specified by /// and writes a .NET array attribute for collections. /// /// The JSON string. /// The name of the root element to append when deserializing. /// /// A flag to indicate whether to write the Json.NET array attribute. /// This attribute helps preserve arrays when converting the written XML back to JSON. /// /// The deserialized XNode public static XDocument DeserializeXNode(string value, string deserializeRootElementName, bool writeArrayAttribute) { XmlNodeConverter converter = new XmlNodeConverter(); converter.DeserializeRootElementName = deserializeRootElementName; converter.WriteArrayAttribute = writeArrayAttribute; return (XDocument)DeserializeObject(value, typeof(XDocument), converter); } #endif } } newtonsoft-json-6.0.8/Src/Newtonsoft.Json/TraceLevel.cs0000664000175000017500000000160212454416117023612 0ustar directhexdirecthex #if (NETFX_CORE || PORTABLE40 || PORTABLE) using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json { /// /// Specifies what messages to output for the class. /// public enum TraceLevel { /// /// Output no tracing and debugging messages. /// Off = 0, /// /// Output error-handling messages. /// Error = 1, /// /// Output warnings and error-handling messages. /// Warning = 2, /// /// Output informational messages, warnings, and error-handling messages. /// Info = 3, /// /// Output all debugging and tracing messages. /// Verbose = 4 } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Newtonsoft.Json.Net35.csproj0000664000175000017500000003606512454416117026445 0ustar directhexdirecthex Debug AnyCPU 9.0.30729 2.0 {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D} Library Properties Newtonsoft.Json Newtonsoft.Json false 3.5 false v3.5 publish\ true Disk false Foreground 7 Days false false true 0 1.0.0.%2a false true Client true full false bin\Debug\Net35\ TRACE;DEBUG;CODE_ANALYSIS;NET35 prompt 4 bin\Debug\Net35\Newtonsoft.Json.xml true Newtonsoft.Json.ruleset true pdbonly true bin\Release\Net35\ TRACE;NET35 prompt 4 bin\Release\Net35\Newtonsoft.Json.xml Newtonsoft.Json.ruleset true 3.5 3.0 3.5 False .NET Framework 3.5 SP1 Client Profile false False .NET Framework 2.0 %28x86%29 true False .NET Framework 3.0 %28x86%29 false False .NET Framework 3.5 false False .NET Framework 3.5 SP1 false newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonPropertyAttribute.cs0000664000175000017500000002003512454416117026127 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json { /// /// Instructs the to always serialize the member with the specified name. /// [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property | AttributeTargets.Parameter, AllowMultiple = false)] public sealed class JsonPropertyAttribute : Attribute { // yuck. can't set nullable properties on an attribute in C# // have to use this approach to get an unset default state internal NullValueHandling? _nullValueHandling; internal DefaultValueHandling? _defaultValueHandling; internal ReferenceLoopHandling? _referenceLoopHandling; internal ObjectCreationHandling? _objectCreationHandling; internal TypeNameHandling? _typeNameHandling; internal bool? _isReference; internal int? _order; internal Required? _required; internal bool? _itemIsReference; internal ReferenceLoopHandling? _itemReferenceLoopHandling; internal TypeNameHandling? _itemTypeNameHandling; /// /// Gets or sets the converter used when serializing the property's collection items. /// /// The collection's items converter. public Type ItemConverterType { get; set; } /// /// The parameter list to use when constructing the JsonConverter described by ItemConverterType. /// If null, the default constructor is used. /// When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, /// order, and type of these parameters. /// /// /// [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] /// public object[] ItemConverterParameters { get; set; } /// /// Gets or sets the null value handling used when serializing this property. /// /// The null value handling. public NullValueHandling NullValueHandling { get { return _nullValueHandling ?? default(NullValueHandling); } set { _nullValueHandling = value; } } /// /// Gets or sets the default value handling used when serializing this property. /// /// The default value handling. public DefaultValueHandling DefaultValueHandling { get { return _defaultValueHandling ?? default(DefaultValueHandling); } set { _defaultValueHandling = value; } } /// /// Gets or sets the reference loop handling used when serializing this property. /// /// The reference loop handling. public ReferenceLoopHandling ReferenceLoopHandling { get { return _referenceLoopHandling ?? default(ReferenceLoopHandling); } set { _referenceLoopHandling = value; } } /// /// Gets or sets the object creation handling used when deserializing this property. /// /// The object creation handling. public ObjectCreationHandling ObjectCreationHandling { get { return _objectCreationHandling ?? default(ObjectCreationHandling); } set { _objectCreationHandling = value; } } /// /// Gets or sets the type name handling used when serializing this property. /// /// The type name handling. public TypeNameHandling TypeNameHandling { get { return _typeNameHandling ?? default(TypeNameHandling); } set { _typeNameHandling = value; } } /// /// Gets or sets whether this property's value is serialized as a reference. /// /// Whether this property's value is serialized as a reference. public bool IsReference { get { return _isReference ?? default(bool); } set { _isReference = value; } } /// /// Gets or sets the order of serialization and deserialization of a member. /// /// The numeric order of serialization or deserialization. public int Order { get { return _order ?? default(int); } set { _order = value; } } /// /// Gets or sets a value indicating whether this property is required. /// /// /// A value indicating whether this property is required. /// public Required Required { get { return _required ?? Required.Default; } set { _required = value; } } /// /// Gets or sets the name of the property. /// /// The name of the property. public string PropertyName { get; set; } /// /// Gets or sets the the reference loop handling used when serializing the property's collection items. /// /// The collection's items reference loop handling. public ReferenceLoopHandling ItemReferenceLoopHandling { get { return _itemReferenceLoopHandling ?? default(ReferenceLoopHandling); } set { _itemReferenceLoopHandling = value; } } /// /// Gets or sets the the type name handling used when serializing the property's collection items. /// /// The collection's items type name handling. public TypeNameHandling ItemTypeNameHandling { get { return _itemTypeNameHandling ?? default(TypeNameHandling); } set { _itemTypeNameHandling = value; } } /// /// Gets or sets whether this property's collection items are serialized as a reference. /// /// Whether this property's collection items are serialized as a reference. public bool ItemIsReference { get { return _itemIsReference ?? default(bool); } set { _itemIsReference = value; } } /// /// Initializes a new instance of the class. /// public JsonPropertyAttribute() { } /// /// Initializes a new instance of the class with the specified name. /// /// Name of the property. public JsonPropertyAttribute(string propertyName) { PropertyName = propertyName; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonValidatingReader.cs0000664000175000017500000010536412454416117025635 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) using System.Numerics; #endif using Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; using Newtonsoft.Json.Utilities; using System.Globalization; using System.Text.RegularExpressions; using System.IO; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json { /// /// Represents a reader that provides validation. /// public class JsonValidatingReader : JsonReader, IJsonLineInfo { private class SchemaScope { private readonly JTokenType _tokenType; private readonly IList _schemas; private readonly Dictionary _requiredProperties; public string CurrentPropertyName { get; set; } public int ArrayItemCount { get; set; } public bool IsUniqueArray { get; set; } public IList UniqueArrayItems { get; set; } public JTokenWriter CurrentItemWriter { get; set; } public IList Schemas { get { return _schemas; } } public Dictionary RequiredProperties { get { return _requiredProperties; } } public JTokenType TokenType { get { return _tokenType; } } public SchemaScope(JTokenType tokenType, IList schemas) { _tokenType = tokenType; _schemas = schemas; _requiredProperties = schemas.SelectMany(GetRequiredProperties).Distinct().ToDictionary(p => p, p => false); if (tokenType == JTokenType.Array && schemas.Any(s => s.UniqueItems)) { IsUniqueArray = true; UniqueArrayItems = new List(); } } private IEnumerable GetRequiredProperties(JsonSchemaModel schema) { if (schema == null || schema.Properties == null) return Enumerable.Empty(); return schema.Properties.Where(p => p.Value.Required).Select(p => p.Key); } } private readonly JsonReader _reader; private readonly Stack _stack; private JsonSchema _schema; private JsonSchemaModel _model; private SchemaScope _currentScope; /// /// Sets an event handler for receiving schema validation errors. /// public event ValidationEventHandler ValidationEventHandler; /// /// Gets the text value of the current JSON token. /// /// public override object Value { get { return _reader.Value; } } /// /// Gets the depth of the current token in the JSON document. /// /// The depth of the current token in the JSON document. public override int Depth { get { return _reader.Depth; } } /// /// Gets the path of the current JSON token. /// public override string Path { get { return _reader.Path; } } /// /// Gets the quotation mark character used to enclose the value of a string. /// /// public override char QuoteChar { get { return _reader.QuoteChar; } protected internal set { } } /// /// Gets the type of the current JSON token. /// /// public override JsonToken TokenType { get { return _reader.TokenType; } } /// /// Gets the Common Language Runtime (CLR) type for the current JSON token. /// /// public override Type ValueType { get { return _reader.ValueType; } } private void Push(SchemaScope scope) { _stack.Push(scope); _currentScope = scope; } private SchemaScope Pop() { SchemaScope poppedScope = _stack.Pop(); _currentScope = (_stack.Count != 0) ? _stack.Peek() : null; return poppedScope; } private IList CurrentSchemas { get { return _currentScope.Schemas; } } private static readonly IList EmptySchemaList = new List(); private IList CurrentMemberSchemas { get { if (_currentScope == null) return new List(new[] { _model }); if (_currentScope.Schemas == null || _currentScope.Schemas.Count == 0) return EmptySchemaList; switch (_currentScope.TokenType) { case JTokenType.None: return _currentScope.Schemas; case JTokenType.Object: { if (_currentScope.CurrentPropertyName == null) throw new JsonReaderException("CurrentPropertyName has not been set on scope."); IList schemas = new List(); foreach (JsonSchemaModel schema in CurrentSchemas) { JsonSchemaModel propertySchema; if (schema.Properties != null && schema.Properties.TryGetValue(_currentScope.CurrentPropertyName, out propertySchema)) { schemas.Add(propertySchema); } if (schema.PatternProperties != null) { foreach (KeyValuePair patternProperty in schema.PatternProperties) { if (Regex.IsMatch(_currentScope.CurrentPropertyName, patternProperty.Key)) { schemas.Add(patternProperty.Value); } } } if (schemas.Count == 0 && schema.AllowAdditionalProperties && schema.AdditionalProperties != null) schemas.Add(schema.AdditionalProperties); } return schemas; } case JTokenType.Array: { IList schemas = new List(); foreach (JsonSchemaModel schema in CurrentSchemas) { if (!schema.PositionalItemsValidation) { if (schema.Items != null && schema.Items.Count > 0) schemas.Add(schema.Items[0]); } else { if (schema.Items != null && schema.Items.Count > 0) { if (schema.Items.Count > (_currentScope.ArrayItemCount - 1)) schemas.Add(schema.Items[_currentScope.ArrayItemCount - 1]); } if (schema.AllowAdditionalItems && schema.AdditionalItems != null) schemas.Add(schema.AdditionalItems); } } return schemas; } case JTokenType.Constructor: return EmptySchemaList; default: throw new ArgumentOutOfRangeException("TokenType", "Unexpected token type: {0}".FormatWith(CultureInfo.InvariantCulture, _currentScope.TokenType)); } } } private void RaiseError(string message, JsonSchemaModel schema) { IJsonLineInfo lineInfo = this; string exceptionMessage = (lineInfo.HasLineInfo()) ? message + " Line {0}, position {1}.".FormatWith(CultureInfo.InvariantCulture, lineInfo.LineNumber, lineInfo.LinePosition) : message; OnValidationEvent(new JsonSchemaException(exceptionMessage, null, Path, lineInfo.LineNumber, lineInfo.LinePosition)); } private void OnValidationEvent(JsonSchemaException exception) { ValidationEventHandler handler = ValidationEventHandler; if (handler != null) handler(this, new ValidationEventArgs(exception)); else throw exception; } /// /// Initializes a new instance of the class that /// validates the content returned from the given . /// /// The to read from while validating. public JsonValidatingReader(JsonReader reader) { ValidationUtils.ArgumentNotNull(reader, "reader"); _reader = reader; _stack = new Stack(); } /// /// Gets or sets the schema. /// /// The schema. public JsonSchema Schema { get { return _schema; } set { if (TokenType != JsonToken.None) throw new InvalidOperationException("Cannot change schema while validating JSON."); _schema = value; _model = null; } } /// /// Gets the used to construct this . /// /// The specified in the constructor. public JsonReader Reader { get { return _reader; } } private void ValidateNotDisallowed(JsonSchemaModel schema) { if (schema == null) return; JsonSchemaType? currentNodeType = GetCurrentNodeSchemaType(); if (currentNodeType != null) { if (JsonSchemaGenerator.HasFlag(schema.Disallow, currentNodeType.Value)) RaiseError("Type {0} is disallowed.".FormatWith(CultureInfo.InvariantCulture, currentNodeType), schema); } } private JsonSchemaType? GetCurrentNodeSchemaType() { switch (_reader.TokenType) { case JsonToken.StartObject: return JsonSchemaType.Object; case JsonToken.StartArray: return JsonSchemaType.Array; case JsonToken.Integer: return JsonSchemaType.Integer; case JsonToken.Float: return JsonSchemaType.Float; case JsonToken.String: return JsonSchemaType.String; case JsonToken.Boolean: return JsonSchemaType.Boolean; case JsonToken.Null: return JsonSchemaType.Null; default: return null; } } /// /// Reads the next JSON token from the stream as a . /// /// A . public override int? ReadAsInt32() { int? i = _reader.ReadAsInt32(); ValidateCurrentToken(); return i; } /// /// Reads the next JSON token from the stream as a []. /// /// /// A [] or a null reference if the next JSON token is null. /// public override byte[] ReadAsBytes() { byte[] data = _reader.ReadAsBytes(); ValidateCurrentToken(); return data; } /// /// Reads the next JSON token from the stream as a . /// /// A . public override decimal? ReadAsDecimal() { decimal? d = _reader.ReadAsDecimal(); ValidateCurrentToken(); return d; } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override string ReadAsString() { string s = _reader.ReadAsString(); ValidateCurrentToken(); return s; } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override DateTime? ReadAsDateTime() { DateTime? dateTime = _reader.ReadAsDateTime(); ValidateCurrentToken(); return dateTime; } #if !NET20 /// /// Reads the next JSON token from the stream as a . /// /// A . public override DateTimeOffset? ReadAsDateTimeOffset() { DateTimeOffset? dateTimeOffset = _reader.ReadAsDateTimeOffset(); ValidateCurrentToken(); return dateTimeOffset; } #endif /// /// Reads the next JSON token from the stream. /// /// /// true if the next token was read successfully; false if there are no more tokens to read. /// public override bool Read() { if (!_reader.Read()) return false; if (_reader.TokenType == JsonToken.Comment) return true; ValidateCurrentToken(); return true; } private void ValidateCurrentToken() { // first time validate has been called. build model if (_model == null) { JsonSchemaModelBuilder builder = new JsonSchemaModelBuilder(); _model = builder.Build(_schema); if (!JsonTokenUtils.IsStartToken(_reader.TokenType)) Push(new SchemaScope(JTokenType.None, CurrentMemberSchemas)); } switch (_reader.TokenType) { case JsonToken.StartObject: ProcessValue(); IList objectSchemas = CurrentMemberSchemas.Where(ValidateObject).ToList(); Push(new SchemaScope(JTokenType.Object, objectSchemas)); WriteToken(CurrentSchemas); break; case JsonToken.StartArray: ProcessValue(); IList arraySchemas = CurrentMemberSchemas.Where(ValidateArray).ToList(); Push(new SchemaScope(JTokenType.Array, arraySchemas)); WriteToken(CurrentSchemas); break; case JsonToken.StartConstructor: ProcessValue(); Push(new SchemaScope(JTokenType.Constructor, null)); WriteToken(CurrentSchemas); break; case JsonToken.PropertyName: WriteToken(CurrentSchemas); foreach (JsonSchemaModel schema in CurrentSchemas) { ValidatePropertyName(schema); } break; case JsonToken.Raw: ProcessValue(); break; case JsonToken.Integer: ProcessValue(); WriteToken(CurrentMemberSchemas); foreach (JsonSchemaModel schema in CurrentMemberSchemas) { ValidateInteger(schema); } break; case JsonToken.Float: ProcessValue(); WriteToken(CurrentMemberSchemas); foreach (JsonSchemaModel schema in CurrentMemberSchemas) { ValidateFloat(schema); } break; case JsonToken.String: ProcessValue(); WriteToken(CurrentMemberSchemas); foreach (JsonSchemaModel schema in CurrentMemberSchemas) { ValidateString(schema); } break; case JsonToken.Boolean: ProcessValue(); WriteToken(CurrentMemberSchemas); foreach (JsonSchemaModel schema in CurrentMemberSchemas) { ValidateBoolean(schema); } break; case JsonToken.Null: ProcessValue(); WriteToken(CurrentMemberSchemas); foreach (JsonSchemaModel schema in CurrentMemberSchemas) { ValidateNull(schema); } break; case JsonToken.EndObject: WriteToken(CurrentSchemas); foreach (JsonSchemaModel schema in CurrentSchemas) { ValidateEndObject(schema); } Pop(); break; case JsonToken.EndArray: WriteToken(CurrentSchemas); foreach (JsonSchemaModel schema in CurrentSchemas) { ValidateEndArray(schema); } Pop(); break; case JsonToken.EndConstructor: WriteToken(CurrentSchemas); Pop(); break; case JsonToken.Undefined: case JsonToken.Date: case JsonToken.Bytes: // these have no equivalent in JSON schema WriteToken(CurrentMemberSchemas); break; case JsonToken.None: // no content, do nothing break; default: throw new ArgumentOutOfRangeException(); } } private void WriteToken(IList schemas) { foreach (SchemaScope schemaScope in _stack) { bool isInUniqueArray = (schemaScope.TokenType == JTokenType.Array && schemaScope.IsUniqueArray && schemaScope.ArrayItemCount > 0); if (isInUniqueArray || schemas.Any(s => s.Enum != null)) { if (schemaScope.CurrentItemWriter == null) { if (JsonTokenUtils.IsEndToken(_reader.TokenType)) continue; schemaScope.CurrentItemWriter = new JTokenWriter(); } schemaScope.CurrentItemWriter.WriteToken(_reader, false); // finished writing current item if (schemaScope.CurrentItemWriter.Top == 0 && _reader.TokenType != JsonToken.PropertyName) { JToken finishedItem = schemaScope.CurrentItemWriter.Token; // start next item with new writer schemaScope.CurrentItemWriter = null; if (isInUniqueArray) { if (schemaScope.UniqueArrayItems.Contains(finishedItem, JToken.EqualityComparer)) RaiseError("Non-unique array item at index {0}.".FormatWith(CultureInfo.InvariantCulture, schemaScope.ArrayItemCount - 1), schemaScope.Schemas.First(s => s.UniqueItems)); schemaScope.UniqueArrayItems.Add(finishedItem); } else if (schemas.Any(s => s.Enum != null)) { foreach (JsonSchemaModel schema in schemas) { if (schema.Enum != null) { if (!schema.Enum.ContainsValue(finishedItem, JToken.EqualityComparer)) { StringWriter sw = new StringWriter(CultureInfo.InvariantCulture); finishedItem.WriteTo(new JsonTextWriter(sw)); RaiseError("Value {0} is not defined in enum.".FormatWith(CultureInfo.InvariantCulture, sw.ToString()), schema); } } } } } } } } private void ValidateEndObject(JsonSchemaModel schema) { if (schema == null) return; Dictionary requiredProperties = _currentScope.RequiredProperties; if (requiredProperties != null) { List unmatchedRequiredProperties = requiredProperties.Where(kv => !kv.Value).Select(kv => kv.Key).ToList(); if (unmatchedRequiredProperties.Count > 0) RaiseError("Required properties are missing from object: {0}.".FormatWith(CultureInfo.InvariantCulture, string.Join(", ", unmatchedRequiredProperties.ToArray())), schema); } } private void ValidateEndArray(JsonSchemaModel schema) { if (schema == null) return; int arrayItemCount = _currentScope.ArrayItemCount; if (schema.MaximumItems != null && arrayItemCount > schema.MaximumItems) RaiseError("Array item count {0} exceeds maximum count of {1}.".FormatWith(CultureInfo.InvariantCulture, arrayItemCount, schema.MaximumItems), schema); if (schema.MinimumItems != null && arrayItemCount < schema.MinimumItems) RaiseError("Array item count {0} is less than minimum count of {1}.".FormatWith(CultureInfo.InvariantCulture, arrayItemCount, schema.MinimumItems), schema); } private void ValidateNull(JsonSchemaModel schema) { if (schema == null) return; if (!TestType(schema, JsonSchemaType.Null)) return; ValidateNotDisallowed(schema); } private void ValidateBoolean(JsonSchemaModel schema) { if (schema == null) return; if (!TestType(schema, JsonSchemaType.Boolean)) return; ValidateNotDisallowed(schema); } private void ValidateString(JsonSchemaModel schema) { if (schema == null) return; if (!TestType(schema, JsonSchemaType.String)) return; ValidateNotDisallowed(schema); string value = _reader.Value.ToString(); if (schema.MaximumLength != null && value.Length > schema.MaximumLength) RaiseError("String '{0}' exceeds maximum length of {1}.".FormatWith(CultureInfo.InvariantCulture, value, schema.MaximumLength), schema); if (schema.MinimumLength != null && value.Length < schema.MinimumLength) RaiseError("String '{0}' is less than minimum length of {1}.".FormatWith(CultureInfo.InvariantCulture, value, schema.MinimumLength), schema); if (schema.Patterns != null) { foreach (string pattern in schema.Patterns) { if (!Regex.IsMatch(value, pattern)) RaiseError("String '{0}' does not match regex pattern '{1}'.".FormatWith(CultureInfo.InvariantCulture, value, pattern), schema); } } } private void ValidateInteger(JsonSchemaModel schema) { if (schema == null) return; if (!TestType(schema, JsonSchemaType.Integer)) return; ValidateNotDisallowed(schema); object value = _reader.Value; if (schema.Maximum != null) { if (JValue.Compare(JTokenType.Integer, value, schema.Maximum) > 0) RaiseError("Integer {0} exceeds maximum value of {1}.".FormatWith(CultureInfo.InvariantCulture, value, schema.Maximum), schema); if (schema.ExclusiveMaximum && JValue.Compare(JTokenType.Integer, value, schema.Maximum) == 0) RaiseError("Integer {0} equals maximum value of {1} and exclusive maximum is true.".FormatWith(CultureInfo.InvariantCulture, value, schema.Maximum), schema); } if (schema.Minimum != null) { if (JValue.Compare(JTokenType.Integer, value, schema.Minimum) < 0) RaiseError("Integer {0} is less than minimum value of {1}.".FormatWith(CultureInfo.InvariantCulture, value, schema.Minimum), schema); if (schema.ExclusiveMinimum && JValue.Compare(JTokenType.Integer, value, schema.Minimum) == 0) RaiseError("Integer {0} equals minimum value of {1} and exclusive minimum is true.".FormatWith(CultureInfo.InvariantCulture, value, schema.Minimum), schema); } if (schema.DivisibleBy != null) { bool notDivisible; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (value is BigInteger) { // not that this will lose any decimal point on DivisibleBy // so manually raise an error if DivisibleBy is not an integer and value is not zero BigInteger i = (BigInteger)value; bool divisibleNonInteger = !Math.Abs(schema.DivisibleBy.Value - Math.Truncate(schema.DivisibleBy.Value)).Equals(0); if (divisibleNonInteger) notDivisible = i != 0; else notDivisible = i % new BigInteger(schema.DivisibleBy.Value) != 0; } else #endif notDivisible = !IsZero(Convert.ToInt64(value, CultureInfo.InvariantCulture) % schema.DivisibleBy.Value); if (notDivisible) RaiseError("Integer {0} is not evenly divisible by {1}.".FormatWith(CultureInfo.InvariantCulture, JsonConvert.ToString(value), schema.DivisibleBy), schema); } } private void ProcessValue() { if (_currentScope != null && _currentScope.TokenType == JTokenType.Array) { _currentScope.ArrayItemCount++; foreach (JsonSchemaModel currentSchema in CurrentSchemas) { // if there is positional validation and the array index is past the number of item validation schemas and there is no additonal items then error if (currentSchema != null && currentSchema.PositionalItemsValidation && !currentSchema.AllowAdditionalItems && (currentSchema.Items == null || _currentScope.ArrayItemCount - 1 >= currentSchema.Items.Count)) { RaiseError("Index {0} has not been defined and the schema does not allow additional items.".FormatWith(CultureInfo.InvariantCulture, _currentScope.ArrayItemCount), currentSchema); } } } } private void ValidateFloat(JsonSchemaModel schema) { if (schema == null) return; if (!TestType(schema, JsonSchemaType.Float)) return; ValidateNotDisallowed(schema); double value = Convert.ToDouble(_reader.Value, CultureInfo.InvariantCulture); if (schema.Maximum != null) { if (value > schema.Maximum) RaiseError("Float {0} exceeds maximum value of {1}.".FormatWith(CultureInfo.InvariantCulture, JsonConvert.ToString(value), schema.Maximum), schema); if (schema.ExclusiveMaximum && value == schema.Maximum) RaiseError("Float {0} equals maximum value of {1} and exclusive maximum is true.".FormatWith(CultureInfo.InvariantCulture, JsonConvert.ToString(value), schema.Maximum), schema); } if (schema.Minimum != null) { if (value < schema.Minimum) RaiseError("Float {0} is less than minimum value of {1}.".FormatWith(CultureInfo.InvariantCulture, JsonConvert.ToString(value), schema.Minimum), schema); if (schema.ExclusiveMinimum && value == schema.Minimum) RaiseError("Float {0} equals minimum value of {1} and exclusive minimum is true.".FormatWith(CultureInfo.InvariantCulture, JsonConvert.ToString(value), schema.Minimum), schema); } if (schema.DivisibleBy != null) { double remainder = FloatingPointRemainder(value, schema.DivisibleBy.Value); if (!IsZero(remainder)) RaiseError("Float {0} is not evenly divisible by {1}.".FormatWith(CultureInfo.InvariantCulture, JsonConvert.ToString(value), schema.DivisibleBy), schema); } } private static double FloatingPointRemainder(double dividend, double divisor) { return dividend - Math.Floor(dividend / divisor) * divisor; } private static bool IsZero(double value) { const double epsilon = 2.2204460492503131e-016; return Math.Abs(value) < 20.0 * epsilon; } private void ValidatePropertyName(JsonSchemaModel schema) { if (schema == null) return; string propertyName = Convert.ToString(_reader.Value, CultureInfo.InvariantCulture); if (_currentScope.RequiredProperties.ContainsKey(propertyName)) _currentScope.RequiredProperties[propertyName] = true; if (!schema.AllowAdditionalProperties) { bool propertyDefinied = IsPropertyDefinied(schema, propertyName); if (!propertyDefinied) RaiseError("Property '{0}' has not been defined and the schema does not allow additional properties.".FormatWith(CultureInfo.InvariantCulture, propertyName), schema); } _currentScope.CurrentPropertyName = propertyName; } private bool IsPropertyDefinied(JsonSchemaModel schema, string propertyName) { if (schema.Properties != null && schema.Properties.ContainsKey(propertyName)) return true; if (schema.PatternProperties != null) { foreach (string pattern in schema.PatternProperties.Keys) { if (Regex.IsMatch(propertyName, pattern)) return true; } } return false; } private bool ValidateArray(JsonSchemaModel schema) { if (schema == null) return true; return (TestType(schema, JsonSchemaType.Array)); } private bool ValidateObject(JsonSchemaModel schema) { if (schema == null) return true; return (TestType(schema, JsonSchemaType.Object)); } private bool TestType(JsonSchemaModel currentSchema, JsonSchemaType currentType) { if (!JsonSchemaGenerator.HasFlag(currentSchema.Type, currentType)) { RaiseError("Invalid type. Expected {0} but got {1}.".FormatWith(CultureInfo.InvariantCulture, currentSchema.Type, currentType), currentSchema); return false; } return true; } bool IJsonLineInfo.HasLineInfo() { IJsonLineInfo lineInfo = _reader as IJsonLineInfo; return lineInfo != null && lineInfo.HasLineInfo(); } int IJsonLineInfo.LineNumber { get { IJsonLineInfo lineInfo = _reader as IJsonLineInfo; return (lineInfo != null) ? lineInfo.LineNumber : 0; } } int IJsonLineInfo.LinePosition { get { IJsonLineInfo lineInfo = _reader as IJsonLineInfo; return (lineInfo != null) ? lineInfo.LinePosition : 0; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Required.cs0000664000175000017500000000326612454416117023354 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Indicating whether a property is required. /// public enum Required { /// /// The property is not required. The default state. /// Default = 0, /// /// The property must be defined in JSON but can be a null value. /// AllowNull = 1, /// /// The property must be defined in JSON and cannot be a null value. /// Always = 2 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonSerializationException.cs0000664000175000017500000001062612454416117027120 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Runtime.Serialization; using System.Text; namespace Newtonsoft.Json { /// /// The exception thrown when an error occurs during Json serialization or deserialization. /// #if !(NETFX_CORE || PORTABLE40 || PORTABLE) [Serializable] #endif public class JsonSerializationException : JsonException { /// /// Initializes a new instance of the class. /// public JsonSerializationException() { } /// /// Initializes a new instance of the class /// with a specified error message. /// /// The error message that explains the reason for the exception. public JsonSerializationException(string message) : base(message) { } /// /// Initializes a new instance of the class /// with a specified error message and a reference to the inner exception that is the cause of this exception. /// /// The error message that explains the reason for the exception. /// The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. public JsonSerializationException(string message, Exception innerException) : base(message, innerException) { } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) /// /// Initializes a new instance of the class. /// /// The that holds the serialized object data about the exception being thrown. /// The that contains contextual information about the source or destination. /// The parameter is null. /// The class name is null or is zero (0). public JsonSerializationException(SerializationInfo info, StreamingContext context) : base(info, context) { } #endif internal static JsonSerializationException Create(JsonReader reader, string message) { return Create(reader, message, null); } internal static JsonSerializationException Create(JsonReader reader, string message, Exception ex) { return Create(reader as IJsonLineInfo, reader.Path, message, ex); } internal static JsonSerializationException Create(IJsonLineInfo lineInfo, string path, string message, Exception ex) { message = JsonPosition.FormatMessage(lineInfo, path, message); return new JsonSerializationException(message, ex); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonTextWriter.cs0000664000175000017500000005747212454416117024557 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) using System.Numerics; #endif using System.Text; using System.IO; using System.Xml; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json { /// /// Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. /// public class JsonTextWriter : JsonWriter { private readonly TextWriter _writer; private Base64Encoder _base64Encoder; private char _indentChar; private int _indentation; private char _quoteChar; private bool _quoteName; private bool[] _charEscapeFlags; private char[] _writeBuffer; private char[] _indentChars; private Base64Encoder Base64Encoder { get { if (_base64Encoder == null) _base64Encoder = new Base64Encoder(_writer); return _base64Encoder; } } /// /// Gets or sets how many IndentChars to write for each level in the hierarchy when is set to Formatting.Indented. /// public int Indentation { get { return _indentation; } set { if (value < 0) throw new ArgumentException("Indentation value must be greater than 0."); _indentation = value; } } /// /// Gets or sets which character to use to quote attribute values. /// public char QuoteChar { get { return _quoteChar; } set { if (value != '"' && value != '\'') throw new ArgumentException(@"Invalid JavaScript string quote character. Valid quote characters are ' and ""."); _quoteChar = value; UpdateCharEscapeFlags(); } } /// /// Gets or sets which character to use for indenting when is set to Formatting.Indented. /// public char IndentChar { get { return _indentChar; } set { if (value != _indentChar) { _indentChar = value; _indentChars = null; } } } /// /// Gets or sets a value indicating whether object names will be surrounded with quotes. /// public bool QuoteName { get { return _quoteName; } set { _quoteName = value; } } /// /// Creates an instance of the JsonWriter class using the specified . /// /// The TextWriter to write to. public JsonTextWriter(TextWriter textWriter) { if (textWriter == null) throw new ArgumentNullException("textWriter"); _writer = textWriter; _quoteChar = '"'; _quoteName = true; _indentChar = ' '; _indentation = 2; UpdateCharEscapeFlags(); } /// /// Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. /// public override void Flush() { _writer.Flush(); } /// /// Closes this stream and the underlying stream. /// public override void Close() { base.Close(); if (CloseOutput && _writer != null) #if !(NETFX_CORE || PORTABLE40 || PORTABLE) _writer.Close(); #else _writer.Dispose(); #endif } /// /// Writes the beginning of a Json object. /// public override void WriteStartObject() { InternalWriteStart(JsonToken.StartObject, JsonContainerType.Object); _writer.Write('{'); } /// /// Writes the beginning of a Json array. /// public override void WriteStartArray() { InternalWriteStart(JsonToken.StartArray, JsonContainerType.Array); _writer.Write('['); } /// /// Writes the start of a constructor with the given name. /// /// The name of the constructor. public override void WriteStartConstructor(string name) { InternalWriteStart(JsonToken.StartConstructor, JsonContainerType.Constructor); _writer.Write("new "); _writer.Write(name); _writer.Write('('); } /// /// Writes the specified end token. /// /// The end token to write. protected override void WriteEnd(JsonToken token) { switch (token) { case JsonToken.EndObject: _writer.Write('}'); break; case JsonToken.EndArray: _writer.Write(']'); break; case JsonToken.EndConstructor: _writer.Write(')'); break; default: throw JsonWriterException.Create(this, "Invalid JsonToken: " + token, null); } } /// /// Writes the property name of a name/value pair on a Json object. /// /// The name of the property. public override void WritePropertyName(string name) { InternalWritePropertyName(name); WriteEscapedString(name, _quoteName); _writer.Write(':'); } /// /// Writes the property name of a name/value pair on a JSON object. /// /// The name of the property. /// A flag to indicate whether the text should be escaped when it is written as a JSON property name. public override void WritePropertyName(string name, bool escape) { InternalWritePropertyName(name); if (escape) { WriteEscapedString(name, _quoteName); } else { if (_quoteName) _writer.Write(_quoteChar); _writer.Write(name); if (_quoteName) _writer.Write(_quoteChar); } _writer.Write(':'); } internal override void OnStringEscapeHandlingChanged() { UpdateCharEscapeFlags(); } private void UpdateCharEscapeFlags() { _charEscapeFlags = JavaScriptUtils.GetCharEscapeFlags(StringEscapeHandling, _quoteChar); } /// /// Writes indent characters. /// protected override void WriteIndent() { _writer.WriteLine(); // levels of indentation multiplied by the indent count int currentIndentCount = Top * _indentation; if (currentIndentCount > 0) { if (_indentChars == null) _indentChars = new string(_indentChar, 10).ToCharArray(); while (currentIndentCount > 0) { int writeCount = Math.Min(currentIndentCount, 10); _writer.Write(_indentChars, 0, writeCount); currentIndentCount -= writeCount; } } } /// /// Writes the JSON value delimiter. /// protected override void WriteValueDelimiter() { _writer.Write(','); } /// /// Writes an indent space. /// protected override void WriteIndentSpace() { _writer.Write(' '); } private void WriteValueInternal(string value, JsonToken token) { _writer.Write(value); } #region WriteValue methods /// /// Writes a value. /// An error will raised if the value cannot be written as a single JSON token. /// /// The value to write. public override void WriteValue(object value) { #if !(NET20 || NET35 || PORTABLE || PORTABLE40) if (value is BigInteger) { InternalWriteValue(JsonToken.Integer); WriteValueInternal(((BigInteger)value).ToString(CultureInfo.InvariantCulture), JsonToken.String); } else #endif { base.WriteValue(value); } } /// /// Writes a null value. /// public override void WriteNull() { InternalWriteValue(JsonToken.Null); WriteValueInternal(JsonConvert.Null, JsonToken.Null); } /// /// Writes an undefined value. /// public override void WriteUndefined() { InternalWriteValue(JsonToken.Undefined); WriteValueInternal(JsonConvert.Undefined, JsonToken.Undefined); } /// /// Writes raw JSON. /// /// The raw JSON to write. public override void WriteRaw(string json) { InternalWriteRaw(); _writer.Write(json); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(string value) { InternalWriteValue(JsonToken.String); if (value == null) WriteValueInternal(JsonConvert.Null, JsonToken.Null); else WriteEscapedString(value, true); } private void WriteEscapedString(string value, bool quote) { EnsureWriteBuffer(); JavaScriptUtils.WriteEscapedJavaScriptString(_writer, value, _quoteChar, quote, _charEscapeFlags, StringEscapeHandling, ref _writeBuffer); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(int value) { InternalWriteValue(JsonToken.Integer); WriteIntegerValue(value); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(uint value) { InternalWriteValue(JsonToken.Integer); WriteIntegerValue(value); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(long value) { InternalWriteValue(JsonToken.Integer); WriteIntegerValue(value); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(ulong value) { InternalWriteValue(JsonToken.Integer); WriteIntegerValue(value); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(float value) { InternalWriteValue(JsonToken.Float); WriteValueInternal(JsonConvert.ToString(value, FloatFormatHandling, QuoteChar, false), JsonToken.Float); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(float? value) { if (value == null) { WriteNull(); } else { InternalWriteValue(JsonToken.Float); WriteValueInternal(JsonConvert.ToString(value.Value, FloatFormatHandling, QuoteChar, true), JsonToken.Float); } } /// /// Writes a value. /// /// The value to write. public override void WriteValue(double value) { InternalWriteValue(JsonToken.Float); WriteValueInternal(JsonConvert.ToString(value, FloatFormatHandling, QuoteChar, false), JsonToken.Float); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(double? value) { if (value == null) { WriteNull(); } else { InternalWriteValue(JsonToken.Float); WriteValueInternal(JsonConvert.ToString(value.Value, FloatFormatHandling, QuoteChar, true), JsonToken.Float); } } /// /// Writes a value. /// /// The value to write. public override void WriteValue(bool value) { InternalWriteValue(JsonToken.Boolean); WriteValueInternal(JsonConvert.ToString(value), JsonToken.Boolean); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(short value) { InternalWriteValue(JsonToken.Integer); WriteIntegerValue(value); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(ushort value) { InternalWriteValue(JsonToken.Integer); WriteIntegerValue(value); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(char value) { InternalWriteValue(JsonToken.String); WriteValueInternal(JsonConvert.ToString(value), JsonToken.String); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(byte value) { InternalWriteValue(JsonToken.Integer); WriteIntegerValue(value); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(sbyte value) { InternalWriteValue(JsonToken.Integer); WriteIntegerValue(value); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(decimal value) { InternalWriteValue(JsonToken.Float); WriteValueInternal(JsonConvert.ToString(value), JsonToken.Float); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(DateTime value) { InternalWriteValue(JsonToken.Date); value = DateTimeUtils.EnsureDateTime(value, DateTimeZoneHandling); if (string.IsNullOrEmpty(DateFormatString)) { EnsureWriteBuffer(); int pos = 0; _writeBuffer[pos++] = _quoteChar; pos = DateTimeUtils.WriteDateTimeString(_writeBuffer, pos, value, null, value.Kind, DateFormatHandling); _writeBuffer[pos++] = _quoteChar; _writer.Write(_writeBuffer, 0, pos); } else { _writer.Write(_quoteChar); _writer.Write(value.ToString(DateFormatString, Culture)); _writer.Write(_quoteChar); } } /// /// Writes a [] value. /// /// The [] value to write. public override void WriteValue(byte[] value) { if (value == null) { WriteNull(); } else { InternalWriteValue(JsonToken.Bytes); _writer.Write(_quoteChar); Base64Encoder.Encode(value, 0, value.Length); Base64Encoder.Flush(); _writer.Write(_quoteChar); } } #if !NET20 /// /// Writes a value. /// /// The value to write. public override void WriteValue(DateTimeOffset value) { InternalWriteValue(JsonToken.Date); if (string.IsNullOrEmpty(DateFormatString)) { EnsureWriteBuffer(); int pos = 0; _writeBuffer[pos++] = _quoteChar; pos = DateTimeUtils.WriteDateTimeString(_writeBuffer, pos, (DateFormatHandling == DateFormatHandling.IsoDateFormat) ? value.DateTime : value.UtcDateTime, value.Offset, DateTimeKind.Local, DateFormatHandling); _writeBuffer[pos++] = _quoteChar; _writer.Write(_writeBuffer, 0, pos); } else { _writer.Write(_quoteChar); _writer.Write(value.ToString(DateFormatString, Culture)); _writer.Write(_quoteChar); } } #endif /// /// Writes a value. /// /// The value to write. public override void WriteValue(Guid value) { InternalWriteValue(JsonToken.String); string text = null; #if !(NETFX_CORE || PORTABLE40 || PORTABLE) text = value.ToString("D", CultureInfo.InvariantCulture); #else text = value.ToString("D"); #endif _writer.Write(_quoteChar); _writer.Write(text); _writer.Write(_quoteChar); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(TimeSpan value) { InternalWriteValue(JsonToken.String); string text; #if (NET35 || NET20) text = value.ToString(); #else text = value.ToString(null, CultureInfo.InvariantCulture); #endif _writer.Write(_quoteChar); _writer.Write(text); _writer.Write(_quoteChar); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(Uri value) { if (value == null) { WriteNull(); } else { InternalWriteValue(JsonToken.String); WriteEscapedString(value.OriginalString, true); } } #endregion /// /// Writes out a comment /*...*/ containing the specified text. /// /// Text to place inside the comment. public override void WriteComment(string text) { InternalWriteComment(); _writer.Write("/*"); _writer.Write(text); _writer.Write("*/"); } /// /// Writes out the given white space. /// /// The string of white space characters. public override void WriteWhitespace(string ws) { InternalWriteWhitespace(ws); _writer.Write(ws); } private void EnsureWriteBuffer() { if (_writeBuffer == null) _writeBuffer = new char[35]; // maximum buffer sized used when writing iso date } private void WriteIntegerValue(long value) { if (value >= 0 && value <= 9) { _writer.Write((char)('0' + value)); } else { ulong uvalue = (value < 0) ? (ulong)-value : (ulong)value; if (value < 0) _writer.Write('-'); WriteIntegerValue(uvalue); } } private void WriteIntegerValue(ulong uvalue) { if (uvalue <= 9) { _writer.Write((char)('0' + uvalue)); } else { EnsureWriteBuffer(); int totalLength = MathUtils.IntLength(uvalue); int length = 0; do { _writeBuffer[totalLength - ++length] = (char)('0' + (uvalue % 10)); uvalue /= 10; } while (uvalue != 0); _writer.Write(_writeBuffer, 0, length); } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/TypeNameHandling.cs0000664000175000017500000000413412454416117024756 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json { /// /// Specifies type name handling options for the . /// [Flags] public enum TypeNameHandling { /// /// Do not include the .NET type name when serializing types. /// None = 0, /// /// Include the .NET type name when serializing into a JSON object structure. /// Objects = 1, /// /// Include the .NET type name when serializing into a JSON array structure. /// Arrays = 2, /// /// Always include the .NET type name when serializing. /// All = Objects | Arrays, /// /// Include the .NET type name when the type of the object being serialized is not the same as its declared type. /// Auto = 4 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Newtonsoft.Json.csproj0000664000175000017500000003214512454416117025543 0ustar directhexdirecthex Debug AnyCPU {EEEA67F9-9089-481D-A4DC-0966DEC9FD7D} Library Properties Newtonsoft.Json Newtonsoft.Json v4.5 512 true full false bin\Debug\Net45\ TRACE;DEBUG;CODE_ANALYSIS prompt 4 bin\Debug\Net45\Newtonsoft.Json.xml true Newtonsoft.Json.ruleset true pdbonly true bin\Release\Net45\ TRACE;CODE_ANALYSIS prompt 4 bin\Release\Net45\Newtonsoft.Json.xml true Newtonsoft.Json.ruleset newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Newtonsoft.Json.Portable.csproj0000664000175000017500000003152512454416117027313 0ustar directhexdirecthex Debug AnyCPU {959F7F85-C98B-4876-971A-9036224578E4} Library Properties Newtonsoft.Json Newtonsoft.Json v4.5 Profile259 512 {786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 11.0 true full false bin\Debug\Portable\ TRACE;DEBUG;PORTABLE prompt 4 true Newtonsoft.Json.ruleset pdbonly true bin\Release\Portable\ TRACE;PORTABLE prompt 4 bin\Release\Portable\Newtonsoft.Json.xml true Newtonsoft.Json.ruleset newtonsoft-json-6.0.8/Src/Newtonsoft.Json/ObjectCreationHandling.cs0000664000175000017500000000324412454416117026130 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Specifies how object creation is handled by the . /// public enum ObjectCreationHandling { /// /// Reuse existing objects, create new objects when needed. /// Auto = 0, /// /// Only reuse existing objects. /// Reuse = 1, /// /// Always create new objects. /// Replace = 2 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/ReferenceLoopHandling.cs0000664000175000017500000000342212454416117025763 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; namespace Newtonsoft.Json { /// /// Specifies reference loop handling options for the . /// public enum ReferenceLoopHandling { /// /// Throw a when a loop is encountered. /// Error = 0, /// /// Ignore loop references and do not serialize. /// Ignore = 1, /// /// Serialize loop references. /// Serialize = 2 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Newtonsoft.Json.WinRT.csproj0000664000175000017500000004026312454416117026545 0ustar directhexdirecthex Debug AnyCPU 8.0.30703 2.0 {263136A2-B89B-424E-A87A-F988CAA8D032} Library Properties Newtonsoft.Json Newtonsoft.Json en-US 512 {BC8A1FFA-BEE3-4634-8014-F334798102B3};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} true full false bin\Debug\WinRT\ DEBUG;TRACE;NETFX_CORE prompt 3 Newtonsoft.Json.ruleset true pdbonly true bin\Release\WinRT\ TRACE;NETFX_CORE prompt 4 bin\Release\WinRT\Newtonsoft.Json.xml true Newtonsoft.Json.ruleset true bin\ARM\Debug\ DEBUG;TRACE;NETFX_CORE ;2008 full ARM false prompt ExpressRules.ruleset true bin\ARM\Release\ TRACE;NETFX_CORE true ;2008 pdbonly ARM false prompt ExpressRules.ruleset true true bin\x64\Debug\ DEBUG;TRACE;NETFX_CORE ;2008 full x64 false prompt ExpressRules.ruleset true bin\x64\Release\ TRACE;NETFX_CORE true ;2008 pdbonly x64 false prompt ExpressRules.ruleset true true bin\x86\Debug\ DEBUG;TRACE;NETFX_CORE ;2008 full x86 false prompt ExpressRules.ruleset true bin\x86\Release\ TRACE;NETFX_CORE true ;2008 pdbonly x86 false prompt ExpressRules.ruleset true 12.0 newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/0000775000175000017500000000000012454416117024053 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonSerializerProxy.cs0000664000175000017500000002114112454416117030406 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using System.Runtime.Serialization.Formatters; using Newtonsoft.Json.Utilities; using System.Runtime.Serialization; namespace Newtonsoft.Json.Serialization { internal class JsonSerializerProxy : JsonSerializer { private readonly JsonSerializerInternalReader _serializerReader; private readonly JsonSerializerInternalWriter _serializerWriter; private readonly JsonSerializer _serializer; public override event EventHandler Error { add { _serializer.Error += value; } remove { _serializer.Error -= value; } } public override IReferenceResolver ReferenceResolver { get { return _serializer.ReferenceResolver; } set { _serializer.ReferenceResolver = value; } } public override ITraceWriter TraceWriter { get { return _serializer.TraceWriter; } set { _serializer.TraceWriter = value; } } public override JsonConverterCollection Converters { get { return _serializer.Converters; } } public override DefaultValueHandling DefaultValueHandling { get { return _serializer.DefaultValueHandling; } set { _serializer.DefaultValueHandling = value; } } public override IContractResolver ContractResolver { get { return _serializer.ContractResolver; } set { _serializer.ContractResolver = value; } } public override MissingMemberHandling MissingMemberHandling { get { return _serializer.MissingMemberHandling; } set { _serializer.MissingMemberHandling = value; } } public override NullValueHandling NullValueHandling { get { return _serializer.NullValueHandling; } set { _serializer.NullValueHandling = value; } } public override ObjectCreationHandling ObjectCreationHandling { get { return _serializer.ObjectCreationHandling; } set { _serializer.ObjectCreationHandling = value; } } public override ReferenceLoopHandling ReferenceLoopHandling { get { return _serializer.ReferenceLoopHandling; } set { _serializer.ReferenceLoopHandling = value; } } public override PreserveReferencesHandling PreserveReferencesHandling { get { return _serializer.PreserveReferencesHandling; } set { _serializer.PreserveReferencesHandling = value; } } public override TypeNameHandling TypeNameHandling { get { return _serializer.TypeNameHandling; } set { _serializer.TypeNameHandling = value; } } public override MetadataPropertyHandling MetadataPropertyHandling { get { return _serializer.MetadataPropertyHandling; } set { _serializer.MetadataPropertyHandling = value; } } public override FormatterAssemblyStyle TypeNameAssemblyFormat { get { return _serializer.TypeNameAssemblyFormat; } set { _serializer.TypeNameAssemblyFormat = value; } } public override ConstructorHandling ConstructorHandling { get { return _serializer.ConstructorHandling; } set { _serializer.ConstructorHandling = value; } } public override SerializationBinder Binder { get { return _serializer.Binder; } set { _serializer.Binder = value; } } public override StreamingContext Context { get { return _serializer.Context; } set { _serializer.Context = value; } } public override Formatting Formatting { get { return _serializer.Formatting; } set { _serializer.Formatting = value; } } public override DateFormatHandling DateFormatHandling { get { return _serializer.DateFormatHandling; } set { _serializer.DateFormatHandling = value; } } public override DateTimeZoneHandling DateTimeZoneHandling { get { return _serializer.DateTimeZoneHandling; } set { _serializer.DateTimeZoneHandling = value; } } public override DateParseHandling DateParseHandling { get { return _serializer.DateParseHandling; } set { _serializer.DateParseHandling = value; } } public override FloatFormatHandling FloatFormatHandling { get { return _serializer.FloatFormatHandling; } set { _serializer.FloatFormatHandling = value; } } public override FloatParseHandling FloatParseHandling { get { return _serializer.FloatParseHandling; } set { _serializer.FloatParseHandling = value; } } public override StringEscapeHandling StringEscapeHandling { get { return _serializer.StringEscapeHandling; } set { _serializer.StringEscapeHandling = value; } } public override string DateFormatString { get { return _serializer.DateFormatString; } set { _serializer.DateFormatString = value; } } public override CultureInfo Culture { get { return _serializer.Culture; } set { _serializer.Culture = value; } } public override int? MaxDepth { get { return _serializer.MaxDepth; } set { _serializer.MaxDepth = value; } } public override bool CheckAdditionalContent { get { return _serializer.CheckAdditionalContent; } set { _serializer.CheckAdditionalContent = value; } } internal JsonSerializerInternalBase GetInternalSerializer() { if (_serializerReader != null) return _serializerReader; else return _serializerWriter; } public JsonSerializerProxy(JsonSerializerInternalReader serializerReader) { ValidationUtils.ArgumentNotNull(serializerReader, "serializerReader"); _serializerReader = serializerReader; _serializer = serializerReader.Serializer; } public JsonSerializerProxy(JsonSerializerInternalWriter serializerWriter) { ValidationUtils.ArgumentNotNull(serializerWriter, "serializerWriter"); _serializerWriter = serializerWriter; _serializer = serializerWriter.Serializer; } internal override object DeserializeInternal(JsonReader reader, Type objectType) { if (_serializerReader != null) return _serializerReader.Deserialize(reader, objectType, false); else return _serializer.Deserialize(reader, objectType); } internal override void PopulateInternal(JsonReader reader, object target) { if (_serializerReader != null) _serializerReader.Populate(reader, target); else _serializer.Populate(reader, target); } internal override void SerializeInternal(JsonWriter jsonWriter, object value, Type rootType) { if (_serializerWriter != null) _serializerWriter.Serialize(jsonWriter, value, rootType); else _serializer.Serialize(jsonWriter, value); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/DiagnosticsTraceWriter.cs0000664000175000017500000000543012454416117031027 0ustar directhexdirecthex#if !(PORTABLE40 || PORTABLE || NETFX_CORE) using System; using System.Diagnostics; using DiagnosticsTrace = System.Diagnostics.Trace; namespace Newtonsoft.Json.Serialization { /// /// Represents a trace writer that writes to the application's instances. /// public class DiagnosticsTraceWriter : ITraceWriter { /// /// Gets the that will be used to filter the trace messages passed to the writer. /// For example a filter level of Info will exclude Verbose messages and include Info, /// Warning and Error messages. /// /// /// The that will be used to filter the trace messages passed to the writer. /// public TraceLevel LevelFilter { get; set; } private TraceEventType GetTraceEventType(TraceLevel level) { switch (level) { case TraceLevel.Error: return TraceEventType.Error; case TraceLevel.Warning: return TraceEventType.Warning; case TraceLevel.Info: return TraceEventType.Information; case TraceLevel.Verbose: return TraceEventType.Verbose; default: throw new ArgumentOutOfRangeException("level"); } } /// /// Writes the specified trace level, message and optional exception. /// /// The at which to write this trace. /// The trace message. /// The trace exception. This parameter is optional. public void Trace(TraceLevel level, string message, Exception ex) { if (level == TraceLevel.Off) return; TraceEventCache eventCache = new TraceEventCache(); TraceEventType traceEventType = GetTraceEventType(level); foreach (TraceListener listener in DiagnosticsTrace.Listeners) { if (!listener.IsThreadSafe) { lock (listener) { listener.TraceEvent(eventCache, "Newtonsoft.Json", traceEventType, 0, message); } } else { listener.TraceEvent(eventCache, "Newtonsoft.Json", traceEventType, 0, message); } if (DiagnosticsTrace.AutoFlush) listener.Flush(); } } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonTypeReflector.cs0000664000175000017500000003774212454416117030040 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.ComponentModel; using System.Globalization; using System.Reflection; using System.Security; #if !(NETFX_CORE || PORTABLE || PORTABLE40) using System.Security.Permissions; #endif using Newtonsoft.Json.Utilities; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Runtime.Serialization; namespace Newtonsoft.Json.Serialization { internal static class JsonTypeReflector { private static bool? _dynamicCodeGeneration; private static bool? _fullyTrusted; public const string IdPropertyName = "$id"; public const string RefPropertyName = "$ref"; public const string TypePropertyName = "$type"; public const string ValuePropertyName = "$value"; public const string ArrayValuesPropertyName = "$values"; public const string ShouldSerializePrefix = "ShouldSerialize"; public const string SpecifiedPostfix = "Specified"; private static readonly ThreadSafeStore> JsonConverterCreatorCache = new ThreadSafeStore>(GetJsonConverterCreator); #if !(NET20 || NETFX_CORE) private static readonly ThreadSafeStore AssociatedMetadataTypesCache = new ThreadSafeStore(GetAssociateMetadataTypeFromAttribute); private static ReflectionObject _metadataTypeAttributeReflectionObject; #endif public static T GetCachedAttribute(object attributeProvider) where T : Attribute { return CachedAttributeGetter.GetAttribute(attributeProvider); } #if !NET20 public static DataContractAttribute GetDataContractAttribute(Type type) { // DataContractAttribute does not have inheritance Type currentType = type; while (currentType != null) { DataContractAttribute result = CachedAttributeGetter.GetAttribute(currentType); if (result != null) return result; currentType = currentType.BaseType(); } return null; } public static DataMemberAttribute GetDataMemberAttribute(MemberInfo memberInfo) { // DataMemberAttribute does not have inheritance // can't override a field if (memberInfo.MemberType() == MemberTypes.Field) return CachedAttributeGetter.GetAttribute(memberInfo); // search property and then search base properties if nothing is returned and the property is virtual PropertyInfo propertyInfo = (PropertyInfo)memberInfo; DataMemberAttribute result = CachedAttributeGetter.GetAttribute(propertyInfo); if (result == null) { if (propertyInfo.IsVirtual()) { Type currentType = propertyInfo.DeclaringType; while (result == null && currentType != null) { PropertyInfo baseProperty = (PropertyInfo)ReflectionUtils.GetMemberInfoFromType(currentType, propertyInfo); if (baseProperty != null && baseProperty.IsVirtual()) result = CachedAttributeGetter.GetAttribute(baseProperty); currentType = currentType.BaseType(); } } } return result; } #endif public static MemberSerialization GetObjectMemberSerialization(Type objectType, bool ignoreSerializableAttribute) { JsonObjectAttribute objectAttribute = GetCachedAttribute(objectType); if (objectAttribute != null) return objectAttribute.MemberSerialization; #if !NET20 DataContractAttribute dataContractAttribute = GetDataContractAttribute(objectType); if (dataContractAttribute != null) return MemberSerialization.OptIn; #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) if (!ignoreSerializableAttribute) { SerializableAttribute serializableAttribute = GetCachedAttribute(objectType); if (serializableAttribute != null) return MemberSerialization.Fields; } #endif // the default return MemberSerialization.OptOut; } public static JsonConverter GetJsonConverter(object attributeProvider) { JsonConverterAttribute converterAttribute = GetCachedAttribute(attributeProvider); if (converterAttribute != null) { Func creator = JsonConverterCreatorCache.Get(converterAttribute.ConverterType); if (creator != null) return creator(converterAttribute.ConverterParameters); } return null; } /// /// Lookup and create an instance of the JsonConverter type described by the argument. /// /// The JsonConverter type to create. /// Optional arguments to pass to an initializing constructor of the JsonConverter. /// If null, the default constructor is used. public static JsonConverter CreateJsonConverterInstance(Type converterType, object[] converterArgs) { Func converterCreator = JsonConverterCreatorCache.Get(converterType); return converterCreator(converterArgs); } /// /// Create a factory function that can be used to create instances of a JsonConverter described by the /// argument type. The returned function can then be used to either invoke the converter's default ctor, or any /// parameterized constructors by way of an object array. /// private static Func GetJsonConverterCreator(Type converterType) { Func defaultConstructor = (ReflectionUtils.HasDefaultConstructor(converterType, false)) ? ReflectionDelegateFactory.CreateDefaultConstructor(converterType) : null; return (parameters) => { try { if (parameters != null) { ObjectConstructor parameterizedConstructor = null; Type[] paramTypes = parameters.Select(param => param.GetType()).ToArray(); ConstructorInfo parameterizedConstructorInfo = converterType.GetConstructor(paramTypes); if (null != parameterizedConstructorInfo) { parameterizedConstructor = ReflectionDelegateFactory.CreateParametrizedConstructor(parameterizedConstructorInfo); return (JsonConverter)parameterizedConstructor(parameters); } else { throw new JsonException("No matching parameterized constructor found for '{0}'.".FormatWith(CultureInfo.InvariantCulture, converterType)); } } if (defaultConstructor == null) throw new JsonException("No parameterless constructor defined for '{0}'.".FormatWith(CultureInfo.InvariantCulture, converterType)); return (JsonConverter)defaultConstructor(); } catch (Exception ex) { throw new JsonException("Error creating '{0}'.".FormatWith(CultureInfo.InvariantCulture, converterType), ex); } }; } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) public static TypeConverter GetTypeConverter(Type type) { return TypeDescriptor.GetConverter(type); } #endif #if !(NET20 || NETFX_CORE) private static Type GetAssociatedMetadataType(Type type) { return AssociatedMetadataTypesCache.Get(type); } private static Type GetAssociateMetadataTypeFromAttribute(Type type) { Attribute[] customAttributes = ReflectionUtils.GetAttributes(type, null, true); foreach (Attribute attribute in customAttributes) { Type attributeType = attribute.GetType(); // only test on attribute type name // attribute assembly could change because of type forwarding, etc if (string.Equals(attributeType.FullName, "System.ComponentModel.DataAnnotations.MetadataTypeAttribute", StringComparison.Ordinal)) { const string metadataClassTypeName = "MetadataClassType"; if (_metadataTypeAttributeReflectionObject == null) _metadataTypeAttributeReflectionObject = ReflectionObject.Create(attributeType, metadataClassTypeName); return (Type)_metadataTypeAttributeReflectionObject.GetValue(attribute, metadataClassTypeName); } } return null; } #endif private static T GetAttribute(Type type) where T : Attribute { T attribute; #if !(NET20 || NETFX_CORE) Type metadataType = GetAssociatedMetadataType(type); if (metadataType != null) { attribute = ReflectionUtils.GetAttribute(metadataType, true); if (attribute != null) return attribute; } #endif attribute = ReflectionUtils.GetAttribute(type, true); if (attribute != null) return attribute; foreach (Type typeInterface in type.GetInterfaces()) { attribute = ReflectionUtils.GetAttribute(typeInterface, true); if (attribute != null) return attribute; } return null; } private static T GetAttribute(MemberInfo memberInfo) where T : Attribute { T attribute; #if !(NET20 || NETFX_CORE) Type metadataType = GetAssociatedMetadataType(memberInfo.DeclaringType); if (metadataType != null) { MemberInfo metadataTypeMemberInfo = ReflectionUtils.GetMemberInfoFromType(metadataType, memberInfo); if (metadataTypeMemberInfo != null) { attribute = ReflectionUtils.GetAttribute(metadataTypeMemberInfo, true); if (attribute != null) return attribute; } } #endif attribute = ReflectionUtils.GetAttribute(memberInfo, true); if (attribute != null) return attribute; if (memberInfo.DeclaringType != null) { foreach (Type typeInterface in memberInfo.DeclaringType.GetInterfaces()) { MemberInfo interfaceTypeMemberInfo = ReflectionUtils.GetMemberInfoFromType(typeInterface, memberInfo); if (interfaceTypeMemberInfo != null) { attribute = ReflectionUtils.GetAttribute(interfaceTypeMemberInfo, true); if (attribute != null) return attribute; } } } return null; } public static T GetAttribute(object provider) where T : Attribute { Type type = provider as Type; if (type != null) return GetAttribute(type); MemberInfo memberInfo = provider as MemberInfo; if (memberInfo != null) return GetAttribute(memberInfo); return ReflectionUtils.GetAttribute(provider, true); } #if DEBUG internal static void SetFullyTrusted(bool fullyTrusted) { _fullyTrusted = fullyTrusted; } internal static void SetDynamicCodeGeneration(bool dynamicCodeGeneration) { _dynamicCodeGeneration = dynamicCodeGeneration; } #endif public static bool DynamicCodeGeneration { #if !(NET20 || NET35 || NETFX_CORE || PORTABLE) [SecuritySafeCritical] #endif get { if (_dynamicCodeGeneration == null) { #if !(NETFX_CORE || PORTABLE40 || PORTABLE) try { new ReflectionPermission(ReflectionPermissionFlag.MemberAccess).Demand(); new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess).Demand(); new SecurityPermission(SecurityPermissionFlag.SkipVerification).Demand(); new SecurityPermission(SecurityPermissionFlag.UnmanagedCode).Demand(); new SecurityPermission(PermissionState.Unrestricted).Demand(); _dynamicCodeGeneration = true; } catch (Exception) { _dynamicCodeGeneration = false; } #else _dynamicCodeGeneration = false; #endif } return _dynamicCodeGeneration.Value; } } public static bool FullyTrusted { get { if (_fullyTrusted == null) { #if (NETFX_CORE || PORTABLE || PORTABLE40) _fullyTrusted = false; #elif !(NET20 || NET35 || PORTABLE40) AppDomain appDomain = AppDomain.CurrentDomain; _fullyTrusted = appDomain.IsHomogenous && appDomain.IsFullyTrusted; #else try { new SecurityPermission(PermissionState.Unrestricted).Demand(); _fullyTrusted = true; } catch (Exception) { _fullyTrusted = false; } #endif } return _fullyTrusted.Value; } } public static ReflectionDelegateFactory ReflectionDelegateFactory { get { #if !(PORTABLE40 || PORTABLE || NETFX_CORE) if (DynamicCodeGeneration) return DynamicReflectionDelegateFactory.Instance; return LateBoundReflectionDelegateFactory.Instance; #else return ExpressionReflectionDelegateFactory.Instance; #endif } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/CamelCasePropertyNamesContractResolver.cs0000664000175000017500000000416512454416117034176 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Serialization { /// /// Resolves member mappings for a type, camel casing property names. /// public class CamelCasePropertyNamesContractResolver : DefaultContractResolver { /// /// Initializes a new instance of the class. /// public CamelCasePropertyNamesContractResolver() : base(true) { } /// /// Resolves the name of the property. /// /// Name of the property. /// The property name camel cased. protected internal override string ResolvePropertyName(string propertyName) { // lower case the first letter of the passed in name return StringUtils.ToCamelCase(propertyName); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonISerializableContract.cs0000664000175000017500000000415612454416117031457 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE || PORTABLE40) using System; using System.Runtime.Serialization; namespace Newtonsoft.Json.Serialization { /// /// Contract details for a used by the . /// public class JsonISerializableContract : JsonContainerContract { /// /// Gets or sets the ISerializable object constructor. /// /// The ISerializable object constructor. public ObjectConstructor ISerializableCreator { get; set; } /// /// Initializes a new instance of the class. /// /// The underlying type for the contract. public JsonISerializableContract(Type underlyingType) : base(underlyingType) { ContractType = JsonContractType.Serializable; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/MemoryTraceWriter.cs0000664000175000017500000000570212454416117030032 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Diagnostics; using System.Globalization; using System.Text; namespace Newtonsoft.Json.Serialization { /// /// Represents a trace writer that writes to memory. When the trace message limit is /// reached then old trace messages will be removed as new messages are added. /// public class MemoryTraceWriter : ITraceWriter { private readonly Queue _traceMessages; /// /// Gets the that will be used to filter the trace messages passed to the writer. /// For example a filter level of Info will exclude Verbose messages and include Info, /// Warning and Error messages. /// /// /// The that will be used to filter the trace messages passed to the writer. /// public TraceLevel LevelFilter { get; set; } /// /// Initializes a new instance of the class. /// public MemoryTraceWriter() { LevelFilter = TraceLevel.Verbose; _traceMessages = new Queue(); } /// /// Writes the specified trace level, message and optional exception. /// /// The at which to write this trace. /// The trace message. /// The trace exception. This parameter is optional. public void Trace(TraceLevel level, string message, Exception ex) { string traceMessage = DateTime.Now.ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fff", CultureInfo.InvariantCulture) + " " + level.ToString("g") + " " + message; if (_traceMessages.Count >= 1000) _traceMessages.Dequeue(); _traceMessages.Enqueue(traceMessage); } /// /// Returns an enumeration of the most recent trace messages. /// /// An enumeration of the most recent trace messages. public IEnumerable GetTraceMessages() { return _traceMessages; } /// /// Returns a of the most recent trace messages. /// /// /// A of the most recent trace messages. /// public override string ToString() { StringBuilder sb = new StringBuilder(); foreach (string traceMessage in _traceMessages) { if (sb.Length > 0) sb.AppendLine(); sb.Append(traceMessage); } return sb.ToString(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/OnErrorAttribute.cs0000664000175000017500000000272612454416117027663 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Serialization { /// /// When applied to a method, specifies that the method is called when an error occurs serializing an object. /// [AttributeUsage(AttributeTargets.Method, Inherited = false)] public sealed class OnErrorAttribute : Attribute { } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonLinqContract.cs0000664000175000017500000000336112454416117027640 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Serialization { /// /// Contract details for a used by the . /// public class JsonLinqContract : JsonContract { /// /// Initializes a new instance of the class. /// /// The underlying type for the contract. public JsonLinqContract(Type underlyingType) : base(underlyingType) { ContractType = JsonContractType.Linq; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonProperty.cs0000664000175000017500000002565612454416117027076 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Reflection; using Newtonsoft.Json.Utilities; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif namespace Newtonsoft.Json.Serialization { /// /// Maps a JSON property to a .NET member or constructor parameter. /// public class JsonProperty { internal Required? _required; internal bool _hasExplicitDefaultValue; private object _defaultValue; private bool _hasGeneratedDefaultValue; private string _propertyName; internal bool _skipPropertyNameEscape; private Type _propertyType; // use to cache contract during deserialization internal JsonContract PropertyContract { get; set; } /// /// Gets or sets the name of the property. /// /// The name of the property. public string PropertyName { get { return _propertyName; } set { _propertyName = value; _skipPropertyNameEscape = !JavaScriptUtils.ShouldEscapeJavaScriptString(_propertyName, JavaScriptUtils.HtmlCharEscapeFlags); } } /// /// Gets or sets the type that declared this property. /// /// The type that declared this property. public Type DeclaringType { get; set; } /// /// Gets or sets the order of serialization and deserialization of a member. /// /// The numeric order of serialization or deserialization. public int? Order { get; set; } /// /// Gets or sets the name of the underlying member or parameter. /// /// The name of the underlying member or parameter. public string UnderlyingName { get; set; } /// /// Gets the that will get and set the during serialization. /// /// The that will get and set the during serialization. public IValueProvider ValueProvider { get; set; } /// /// Gets or sets the for this property. /// /// The for this property. public IAttributeProvider AttributeProvider { get; set; } /// /// Gets or sets the type of the property. /// /// The type of the property. public Type PropertyType { get { return _propertyType; } set { if (_propertyType != value) { _propertyType = value; _hasGeneratedDefaultValue = false; } } } /// /// Gets or sets the for the property. /// If set this converter takes presidence over the contract converter for the property type. /// /// The converter. public JsonConverter Converter { get; set; } /// /// Gets or sets the member converter. /// /// The member converter. public JsonConverter MemberConverter { get; set; } /// /// Gets or sets a value indicating whether this is ignored. /// /// true if ignored; otherwise, false. public bool Ignored { get; set; } /// /// Gets or sets a value indicating whether this is readable. /// /// true if readable; otherwise, false. public bool Readable { get; set; } /// /// Gets or sets a value indicating whether this is writable. /// /// true if writable; otherwise, false. public bool Writable { get; set; } /// /// Gets or sets a value indicating whether this has a member attribute. /// /// true if has a member attribute; otherwise, false. public bool HasMemberAttribute { get; set; } /// /// Gets the default value. /// /// The default value. public object DefaultValue { get { if (!_hasExplicitDefaultValue) return null; return _defaultValue; } set { _hasExplicitDefaultValue = true; _defaultValue = value; } } internal object GetResolvedDefaultValue() { if (_propertyType == null) return null; if (!_hasExplicitDefaultValue && !_hasGeneratedDefaultValue) { _defaultValue = ReflectionUtils.GetDefaultValue(PropertyType); _hasGeneratedDefaultValue = true; } return _defaultValue; } /// /// Gets or sets a value indicating whether this is required. /// /// A value indicating whether this is required. public Required Required { get { return _required ?? Required.Default; } set { _required = value; } } /// /// Gets or sets a value indicating whether this property preserves object references. /// /// /// true if this instance is reference; otherwise, false. /// public bool? IsReference { get; set; } /// /// Gets or sets the property null value handling. /// /// The null value handling. public NullValueHandling? NullValueHandling { get; set; } /// /// Gets or sets the property default value handling. /// /// The default value handling. public DefaultValueHandling? DefaultValueHandling { get; set; } /// /// Gets or sets the property reference loop handling. /// /// The reference loop handling. public ReferenceLoopHandling? ReferenceLoopHandling { get; set; } /// /// Gets or sets the property object creation handling. /// /// The object creation handling. public ObjectCreationHandling? ObjectCreationHandling { get; set; } /// /// Gets or sets or sets the type name handling. /// /// The type name handling. public TypeNameHandling? TypeNameHandling { get; set; } /// /// Gets or sets a predicate used to determine whether the property should be serialize. /// /// A predicate used to determine whether the property should be serialize. public Predicate ShouldSerialize { get; set; } /// /// Gets or sets a predicate used to determine whether the property should be serialized. /// /// A predicate used to determine whether the property should be serialized. public Predicate GetIsSpecified { get; set; } /// /// Gets or sets an action used to set whether the property has been deserialized. /// /// An action used to set whether the property has been deserialized. public Action SetIsSpecified { get; set; } /// /// Returns a that represents this instance. /// /// /// A that represents this instance. /// public override string ToString() { return PropertyName; } /// /// Gets or sets the converter used when serializing the property's collection items. /// /// The collection's items converter. public JsonConverter ItemConverter { get; set; } /// /// Gets or sets whether this property's collection items are serialized as a reference. /// /// Whether this property's collection items are serialized as a reference. public bool? ItemIsReference { get; set; } /// /// Gets or sets the the type name handling used when serializing the property's collection items. /// /// The collection's items type name handling. public TypeNameHandling? ItemTypeNameHandling { get; set; } /// /// Gets or sets the the reference loop handling used when serializing the property's collection items. /// /// The collection's items reference loop handling. public ReferenceLoopHandling? ItemReferenceLoopHandling { get; set; } internal void WritePropertyName(JsonWriter writer) { if (_skipPropertyNameEscape) writer.WritePropertyName(PropertyName, false); else writer.WritePropertyName(PropertyName); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/DefaultReferenceResolver.cs0000664000175000017500000000572712454416117031342 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Serialization { internal class DefaultReferenceResolver : IReferenceResolver { private int _referenceCount; private BidirectionalDictionary GetMappings(object context) { JsonSerializerInternalBase internalSerializer; if (context is JsonSerializerInternalBase) internalSerializer = (JsonSerializerInternalBase)context; else if (context is JsonSerializerProxy) internalSerializer = ((JsonSerializerProxy)context).GetInternalSerializer(); else throw new JsonException("The DefaultReferenceResolver can only be used internally."); return internalSerializer.DefaultReferenceMappings; } public object ResolveReference(object context, string reference) { object value; GetMappings(context).TryGetByFirst(reference, out value); return value; } public string GetReference(object context, object value) { var mappings = GetMappings(context); string reference; if (!mappings.TryGetBySecond(value, out reference)) { _referenceCount++; reference = _referenceCount.ToString(CultureInfo.InvariantCulture); mappings.Set(reference, value); } return reference; } public void AddReference(object context, string reference, object value) { GetMappings(context).Set(reference, value); } public bool IsReferenced(object context, object value) { string reference; return GetMappings(context).TryGetBySecond(value, out reference); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/IValueProvider.cs0000664000175000017500000000345012454416117027304 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Serialization { /// /// Provides methods to get and set values. /// public interface IValueProvider { /// /// Sets the value. /// /// The target to set the value on. /// The value to set on the target. void SetValue(object target, object value); /// /// Gets the value. /// /// The target to get the value from. /// The value. object GetValue(object target); } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/CachedAttributeGetter.cs0000664000175000017500000000312512454416117030611 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Reflection; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Serialization { internal static class CachedAttributeGetter where T : Attribute { private static readonly ThreadSafeStore TypeAttributeCache = new ThreadSafeStore(JsonTypeReflector.GetAttribute); public static T GetAttribute(object type) { return TypeAttributeCache.Get(type); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonStringContract.cs0000664000175000017500000000337712454416117030212 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Serialization { /// /// Contract details for a used by the . /// public class JsonStringContract : JsonPrimitiveContract { /// /// Initializes a new instance of the class. /// /// The underlying type for the contract. public JsonStringContract(Type underlyingType) : base(underlyingType) { ContractType = JsonContractType.String; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/TraceJsonWriter.cs0000664000175000017500000002316712454416117027500 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Globalization; using System.IO; #if !(NET20 || NET35 || PORTABLE || PORTABLE40) using System.Numerics; #endif using System.Text; namespace Newtonsoft.Json.Serialization { internal class TraceJsonWriter : JsonWriter { private readonly JsonWriter _innerWriter; private readonly JsonTextWriter _textWriter; private readonly StringWriter _sw; public TraceJsonWriter(JsonWriter innerWriter) { _innerWriter = innerWriter; _sw = new StringWriter(CultureInfo.InvariantCulture); _textWriter = new JsonTextWriter(_sw); _textWriter.Formatting = Formatting.Indented; _textWriter.Culture = innerWriter.Culture; _textWriter.DateFormatHandling = innerWriter.DateFormatHandling; _textWriter.DateFormatString = innerWriter.DateFormatString; _textWriter.DateTimeZoneHandling = innerWriter.DateTimeZoneHandling; _textWriter.FloatFormatHandling = innerWriter.FloatFormatHandling; } public string GetJson() { return _sw.ToString(); } public override void WriteValue(decimal value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(bool value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(byte value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(byte? value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(char value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(byte[] value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(DateTime value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } #if !NET20 public override void WriteValue(DateTimeOffset value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } #endif public override void WriteValue(double value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteUndefined() { _textWriter.WriteUndefined(); _innerWriter.WriteUndefined(); base.WriteUndefined(); } public override void WriteNull() { _textWriter.WriteNull(); _innerWriter.WriteNull(); base.WriteUndefined(); } public override void WriteValue(float value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(Guid value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(int value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(long value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(object value) { #if !(NET20 || NET35 || PORTABLE || PORTABLE40) if (value is BigInteger) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); InternalWriteValue(JsonToken.Integer); } else #endif { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } } public override void WriteValue(sbyte value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(short value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(string value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(TimeSpan value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(uint value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(ulong value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(Uri value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteValue(ushort value) { _textWriter.WriteValue(value); _innerWriter.WriteValue(value); base.WriteValue(value); } public override void WriteWhitespace(string ws) { _textWriter.WriteWhitespace(ws); _innerWriter.WriteWhitespace(ws); base.WriteWhitespace(ws); } //protected override void WriteValueDelimiter() //{ // _textWriter.WriteValueDelimiter(); // _innerWriter.WriteValueDelimiter(); // base.WriteValueDelimiter(); //} //protected override void WriteIndent() //{ // base.WriteIndent(); //} public override void WriteComment(string text) { _textWriter.WriteComment(text); _innerWriter.WriteComment(text); base.WriteComment(text); } //public override void WriteEnd() //{ // _textWriter.WriteEnd(); // _innerWriter.WriteEnd(); // base.WriteEnd(); //} //protected override void WriteEnd(JsonToken token) //{ // base.WriteEnd(token); //} public override void WriteStartArray() { _textWriter.WriteStartArray(); _innerWriter.WriteStartArray(); base.WriteStartArray(); } public override void WriteEndArray() { _textWriter.WriteEndArray(); _innerWriter.WriteEndArray(); base.WriteEndArray(); } public override void WriteStartConstructor(string name) { _textWriter.WriteStartConstructor(name); _innerWriter.WriteStartConstructor(name); base.WriteStartConstructor(name); } public override void WriteEndConstructor() { _textWriter.WriteEndConstructor(); _innerWriter.WriteEndConstructor(); base.WriteEndConstructor(); } public override void WritePropertyName(string name) { _textWriter.WritePropertyName(name); _innerWriter.WritePropertyName(name); base.WritePropertyName(name); } public override void WritePropertyName(string name, bool escape) { _textWriter.WritePropertyName(name, escape); _innerWriter.WritePropertyName(name, escape); // method with escape will error base.WritePropertyName(name); } public override void WriteStartObject() { _textWriter.WriteStartObject(); _innerWriter.WriteStartObject(); base.WriteStartObject(); } public override void WriteEndObject() { _textWriter.WriteEndObject(); _innerWriter.WriteEndObject(); base.WriteEndObject(); } public override void WriteRaw(string json) { _textWriter.WriteRaw(json); _innerWriter.WriteRaw(json); base.WriteRaw(json); } public override void WriteRawValue(string json) { _textWriter.WriteRawValue(json); _innerWriter.WriteRawValue(json); base.WriteRawValue(json); } //protected override void WriteIndentSpace() //{ // _textWriter.WriteIndentSpace(); // _innerWriter.WriteIndentSpace(); // base.WriteIndentSpace(); //} public override void Close() { _textWriter.Close(); _innerWriter.Close(); base.Close(); } public override void Flush() { _textWriter.Flush(); _innerWriter.Flush(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/DynamicValueProvider.cs0000664000175000017500000001060112454416117030474 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(PORTABLE40 || PORTABLE || NETFX_CORE) using System; using System.Collections.Generic; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif using System.Text; using System.Reflection; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Serialization { /// /// Get and set values for a using dynamic methods. /// public class DynamicValueProvider : IValueProvider { private readonly MemberInfo _memberInfo; private Func _getter; private Action _setter; /// /// Initializes a new instance of the class. /// /// The member info. public DynamicValueProvider(MemberInfo memberInfo) { ValidationUtils.ArgumentNotNull(memberInfo, "memberInfo"); _memberInfo = memberInfo; } /// /// Sets the value. /// /// The target to set the value on. /// The value to set on the target. public void SetValue(object target, object value) { try { if (_setter == null) _setter = DynamicReflectionDelegateFactory.Instance.CreateSet(_memberInfo); #if DEBUG // dynamic method doesn't check whether the type is 'legal' to set // add this check for unit tests if (value == null) { if (!ReflectionUtils.IsNullable(ReflectionUtils.GetMemberUnderlyingType(_memberInfo))) throw new JsonSerializationException("Incompatible value. Cannot set {0} to null.".FormatWith(CultureInfo.InvariantCulture, _memberInfo)); } else if (!ReflectionUtils.GetMemberUnderlyingType(_memberInfo).IsAssignableFrom(value.GetType())) { throw new JsonSerializationException("Incompatible value. Cannot set {0} to type {1}.".FormatWith(CultureInfo.InvariantCulture, _memberInfo, value.GetType())); } #endif _setter(target, value); } catch (Exception ex) { throw new JsonSerializationException("Error setting value to '{0}' on '{1}'.".FormatWith(CultureInfo.InvariantCulture, _memberInfo.Name, target.GetType()), ex); } } /// /// Gets the value. /// /// The target to get the value from. /// The value. public object GetValue(object target) { try { if (_getter == null) _getter = DynamicReflectionDelegateFactory.Instance.CreateGet(_memberInfo); return _getter(target); } catch (Exception ex) { throw new JsonSerializationException("Error getting value from '{0}' on '{1}'.".FormatWith(CultureInfo.InvariantCulture, _memberInfo.Name, target.GetType()), ex); } } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonDictionaryContract.cs0000664000175000017500000002061012454416117031036 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Reflection; using Newtonsoft.Json.Utilities; using System.Collections; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif namespace Newtonsoft.Json.Serialization { /// /// Contract details for a used by the . /// public class JsonDictionaryContract : JsonContainerContract { /// /// Gets or sets the property name resolver. /// /// The property name resolver. public Func PropertyNameResolver { get; set; } /// /// Gets the of the dictionary keys. /// /// The of the dictionary keys. public Type DictionaryKeyType { get; private set; } /// /// Gets the of the dictionary values. /// /// The of the dictionary values. public Type DictionaryValueType { get; private set; } internal JsonContract KeyContract { get; set; } private readonly Type _genericCollectionDefinitionType; private Type _genericWrapperType; private ObjectConstructor _genericWrapperCreator; private Func _genericTemporaryDictionaryCreator; internal bool ShouldCreateWrapper { get; private set; } private readonly ConstructorInfo _parametrizedConstructor; private ObjectConstructor _parametrizedCreator; internal ObjectConstructor ParametrizedCreator { get { if (_parametrizedCreator == null) _parametrizedCreator = JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(_parametrizedConstructor); return _parametrizedCreator; } } internal bool HasParametrizedCreator { get { return _parametrizedCreator != null || _parametrizedConstructor != null; } } /// /// Initializes a new instance of the class. /// /// The underlying type for the contract. public JsonDictionaryContract(Type underlyingType) : base(underlyingType) { ContractType = JsonContractType.Dictionary; Type keyType; Type valueType; if (ReflectionUtils.ImplementsGenericDefinition(underlyingType, typeof(IDictionary<,>), out _genericCollectionDefinitionType)) { keyType = _genericCollectionDefinitionType.GetGenericArguments()[0]; valueType = _genericCollectionDefinitionType.GetGenericArguments()[1]; if (ReflectionUtils.IsGenericDefinition(UnderlyingType, typeof(IDictionary<,>))) CreatedType = typeof(Dictionary<,>).MakeGenericType(keyType, valueType); #if !(NET40 || NET35 || NET20 || PORTABLE40) IsReadOnlyOrFixedSize = ReflectionUtils.InheritsGenericDefinition(underlyingType, typeof(ReadOnlyDictionary<,>)); #endif } #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (ReflectionUtils.ImplementsGenericDefinition(underlyingType, typeof(IReadOnlyDictionary<,>), out _genericCollectionDefinitionType)) { keyType = _genericCollectionDefinitionType.GetGenericArguments()[0]; valueType = _genericCollectionDefinitionType.GetGenericArguments()[1]; if (ReflectionUtils.IsGenericDefinition(UnderlyingType, typeof(IReadOnlyDictionary<,>))) CreatedType = typeof(ReadOnlyDictionary<,>).MakeGenericType(keyType, valueType); IsReadOnlyOrFixedSize = true; } #endif else { ReflectionUtils.GetDictionaryKeyValueTypes(UnderlyingType, out keyType, out valueType); if (UnderlyingType == typeof(IDictionary)) CreatedType = typeof(Dictionary); } if (keyType != null && valueType != null) { _parametrizedConstructor = CollectionUtils.ResolveEnumerableCollectionConstructor(CreatedType, typeof(KeyValuePair<,>).MakeGenericType(keyType, valueType)); #if !(NET35 || NET20 || NETFX_CORE) if (!HasParametrizedCreator && underlyingType.Name == FSharpUtils.FSharpMapTypeName) { FSharpUtils.EnsureInitialized(underlyingType.Assembly()); _parametrizedCreator = FSharpUtils.CreateMap(keyType, valueType); } #endif } ShouldCreateWrapper = !typeof(IDictionary).IsAssignableFrom(CreatedType); DictionaryKeyType = keyType; DictionaryValueType = valueType; #if (NET20 || NET35) if (DictionaryValueType != null && ReflectionUtils.IsNullableType(DictionaryValueType)) { Type tempDictioanryType; // bug in .NET 2.0 & 3.5 that Dictionary> throws an error when adding null via IDictionary[key] = object // wrapper will handle calling Add(T) instead if (ReflectionUtils.InheritsGenericDefinition(CreatedType, typeof(Dictionary<,>), out tempDictioanryType)) { ShouldCreateWrapper = true; } } #endif #if !(NET20 || NET35 || NET40 || PORTABLE40) Type immutableCreatedType; ObjectConstructor immutableParameterizedCreator; if (ImmutableCollectionsUtils.TryBuildImmutableForDictionaryContract(underlyingType, DictionaryKeyType, DictionaryValueType, out immutableCreatedType, out immutableParameterizedCreator)) { CreatedType = immutableCreatedType; _parametrizedCreator = immutableParameterizedCreator; IsReadOnlyOrFixedSize = true; } #endif } internal IWrappedDictionary CreateWrapper(object dictionary) { if (_genericWrapperCreator == null) { _genericWrapperType = typeof(DictionaryWrapper<,>).MakeGenericType(DictionaryKeyType, DictionaryValueType); ConstructorInfo genericWrapperConstructor = _genericWrapperType.GetConstructor(new[] { _genericCollectionDefinitionType }); _genericWrapperCreator = JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(genericWrapperConstructor); } return (IWrappedDictionary)_genericWrapperCreator(dictionary); } internal IDictionary CreateTemporaryDictionary() { if (_genericTemporaryDictionaryCreator == null) { Type temporaryDictionaryType = typeof(Dictionary<,>).MakeGenericType(DictionaryKeyType, DictionaryValueType); _genericTemporaryDictionaryCreator = JsonTypeReflector.ReflectionDelegateFactory.CreateDefaultConstructor(temporaryDictionaryType); } return (IDictionary)_genericTemporaryDictionaryCreator(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/ObjectConstructor.cs0000664000175000017500000000262112454416117030057 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Serialization { /// /// Represents a method that constructs an object. /// /// The object type to create. public delegate object ObjectConstructor(params object[] args); }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonSerializerInternalBase.cs0000664000175000017500000001267612454416117031651 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Diagnostics; using System.Net; using System.Runtime.CompilerServices; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Serialization { internal abstract class JsonSerializerInternalBase { private class ReferenceEqualsEqualityComparer : IEqualityComparer { bool IEqualityComparer.Equals(object x, object y) { return ReferenceEquals(x, y); } int IEqualityComparer.GetHashCode(object obj) { #if !(NETFX_CORE) // put objects in a bucket based on their reference return RuntimeHelpers.GetHashCode(obj); #else // put all objects in the same bucket so ReferenceEquals is called on all return -1; #endif } } private ErrorContext _currentErrorContext; private BidirectionalDictionary _mappings; private bool _serializing; internal readonly JsonSerializer Serializer; internal readonly ITraceWriter TraceWriter; protected JsonSerializerInternalBase(JsonSerializer serializer) { ValidationUtils.ArgumentNotNull(serializer, "serializer"); Serializer = serializer; TraceWriter = serializer.TraceWriter; // kind of a hack but meh. might clean this up later _serializing = (GetType() == typeof(JsonSerializerInternalWriter)); } internal BidirectionalDictionary DefaultReferenceMappings { get { // override equality comparer for object key dictionary // object will be modified as it deserializes and might have mutable hashcode if (_mappings == null) _mappings = new BidirectionalDictionary( EqualityComparer.Default, new ReferenceEqualsEqualityComparer(), "A different value already has the Id '{0}'.", "A different Id has already been assigned for value '{0}'."); return _mappings; } } private ErrorContext GetErrorContext(object currentObject, object member, string path, Exception error) { if (_currentErrorContext == null) _currentErrorContext = new ErrorContext(currentObject, member, path, error); if (_currentErrorContext.Error != error) throw new InvalidOperationException("Current error context error is different to requested error."); return _currentErrorContext; } protected void ClearErrorContext() { if (_currentErrorContext == null) throw new InvalidOperationException("Could not clear error context. Error context is already null."); _currentErrorContext = null; } protected bool IsErrorHandled(object currentObject, JsonContract contract, object keyValue, IJsonLineInfo lineInfo, string path, Exception ex) { ErrorContext errorContext = GetErrorContext(currentObject, keyValue, path, ex); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Error && !errorContext.Traced) { // only write error once errorContext.Traced = true; string message = (_serializing) ? "Error serializing" : "Error deserializing"; if (contract != null) message += " " + contract.UnderlyingType; message += ". " + ex.Message; // add line information to non-json.net exception message if (!(ex is JsonException)) message = JsonPosition.FormatMessage(lineInfo, path, message); TraceWriter.Trace(TraceLevel.Error, message, ex); } // attribute method is non-static so don't invoke if no object if (contract != null && currentObject != null) contract.InvokeOnError(currentObject, Serializer.Context, errorContext); if (!errorContext.Handled) Serializer.OnError(new ErrorEventArgs(currentObject, errorContext)); return errorContext.Handled; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/TraceJsonReader.cs0000664000175000017500000000725212454416117027423 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Text; namespace Newtonsoft.Json.Serialization { internal class TraceJsonReader : JsonReader, IJsonLineInfo { private readonly JsonReader _innerReader; private readonly JsonTextWriter _textWriter; private readonly StringWriter _sw; public TraceJsonReader(JsonReader innerReader) { _innerReader = innerReader; _sw = new StringWriter(CultureInfo.InvariantCulture); _textWriter = new JsonTextWriter(_sw); _textWriter.Formatting = Formatting.Indented; } public string GetJson() { return _sw.ToString(); } public override bool Read() { var value = _innerReader.Read(); _textWriter.WriteToken(_innerReader, false, false); return value; } public override int? ReadAsInt32() { var value = _innerReader.ReadAsInt32(); _textWriter.WriteToken(_innerReader, false, false); return value; } public override string ReadAsString() { var value = _innerReader.ReadAsString(); _textWriter.WriteToken(_innerReader, false, false); return value; } public override byte[] ReadAsBytes() { var value = _innerReader.ReadAsBytes(); _textWriter.WriteToken(_innerReader, false, false); return value; } public override decimal? ReadAsDecimal() { var value = _innerReader.ReadAsDecimal(); _textWriter.WriteToken(_innerReader, false, false); return value; } public override DateTime? ReadAsDateTime() { var value = _innerReader.ReadAsDateTime(); _textWriter.WriteToken(_innerReader, false, false); return value; } #if !NET20 public override DateTimeOffset? ReadAsDateTimeOffset() { var value = _innerReader.ReadAsDateTimeOffset(); _textWriter.WriteToken(_innerReader, false, false); return value; } #endif public override int Depth { get { return _innerReader.Depth; } } public override string Path { get { return _innerReader.Path; } } public override char QuoteChar { get { return _innerReader.QuoteChar; } protected internal set { _innerReader.QuoteChar = value; } } public override JsonToken TokenType { get { return _innerReader.TokenType; } } public override object Value { get { return _innerReader.Value; } } public override Type ValueType { get { return _innerReader.ValueType; } } public override void Close() { _innerReader.Close(); } bool IJsonLineInfo.HasLineInfo() { IJsonLineInfo lineInfo = _innerReader as IJsonLineInfo; return lineInfo != null && lineInfo.HasLineInfo(); } int IJsonLineInfo.LineNumber { get { IJsonLineInfo lineInfo = _innerReader as IJsonLineInfo; return (lineInfo != null) ? lineInfo.LineNumber : 0; } } int IJsonLineInfo.LinePosition { get { IJsonLineInfo lineInfo = _innerReader as IJsonLineInfo; return (lineInfo != null) ? lineInfo.LinePosition : 0; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/DefaultContractResolver.cs0000664000175000017500000017227512454416117031224 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; #if !(NET35 || NET20 || PORTABLE || PORTABLE40) using System.Collections.Concurrent; #endif using System.Collections.Generic; using System.ComponentModel; #if !(NET35 || NET20 || PORTABLE40) using System.Dynamic; #endif using System.Globalization; using System.Reflection; using System.Runtime.Serialization; #if !(NETFX_CORE || PORTABLE || PORTABLE40) using System.Security.Permissions; #endif using System.Xml.Serialization; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Linq; using System.Runtime.CompilerServices; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Serialization { internal struct ResolverContractKey : IEquatable { private readonly Type _resolverType; private readonly Type _contractType; public ResolverContractKey(Type resolverType, Type contractType) { _resolverType = resolverType; _contractType = contractType; } public override int GetHashCode() { return _resolverType.GetHashCode() ^ _contractType.GetHashCode(); } public override bool Equals(object obj) { if (!(obj is ResolverContractKey)) return false; return Equals((ResolverContractKey)obj); } public bool Equals(ResolverContractKey other) { return (_resolverType == other._resolverType && _contractType == other._contractType); } } internal class DefaultContractResolverState { public Dictionary ContractCache; public PropertyNameTable NameTable = new PropertyNameTable(); } /// /// Used by to resolves a for a given . /// public class DefaultContractResolver : IContractResolver { private static readonly IContractResolver _instance = new DefaultContractResolver(true); internal static IContractResolver Instance { get { return _instance; } } private static readonly JsonConverter[] BuiltInConverters = { #if !(NET20 || NETFX_CORE || PORTABLE40 || PORTABLE) new EntityKeyMemberConverter(), #endif #if !(NET35 || NET20 || PORTABLE40) new ExpandoObjectConverter(), #endif #if !(PORTABLE40) new XmlNodeConverter(), #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) new BinaryConverter(), new DataSetConverter(), new DataTableConverter(), #endif #if NETFX_CORE new JsonValueConverter(), #endif #if !(NET35 || NET20 || NETFX_CORE) new DiscriminatedUnionConverter(), #endif new KeyValuePairConverter(), new BsonObjectIdConverter(), new RegexConverter() }; private static readonly object TypeContractCacheLock = new object(); private static readonly DefaultContractResolverState _sharedState = new DefaultContractResolverState(); private readonly DefaultContractResolverState _instanceState = new DefaultContractResolverState(); private readonly bool _sharedCache; /// /// Gets a value indicating whether members are being get and set using dynamic code generation. /// This value is determined by the runtime permissions available. /// /// /// true if using dynamic code generation; otherwise, false. /// public bool DynamicCodeGeneration { get { return JsonTypeReflector.DynamicCodeGeneration; } } #if !(NETFX_CORE || PORTABLE) /// /// Gets or sets the default members search flags. /// /// The default members search flags. [ObsoleteAttribute("DefaultMembersSearchFlags is obsolete. To modify the members serialized inherit from DefaultContractResolver and override the GetSerializableMembers method instead.")] public BindingFlags DefaultMembersSearchFlags { get; set; } #else private BindingFlags DefaultMembersSearchFlags = BindingFlags.Instance | BindingFlags.Public; #endif /// /// Gets or sets a value indicating whether compiler generated members should be serialized. /// /// /// true if serialized compiler generated members; otherwise, false. /// public bool SerializeCompilerGeneratedMembers { get; set; } #if !(NETFX_CORE || PORTABLE || PORTABLE40) /// /// Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. /// /// /// true if the interface will be ignored when serializing and deserializing types; otherwise, false. /// public bool IgnoreSerializableInterface { get; set; } /// /// Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. /// /// /// true if the attribute will be ignored when serializing and deserializing types; otherwise, false. /// public bool IgnoreSerializableAttribute { get; set; } #endif /// /// Initializes a new instance of the class. /// public DefaultContractResolver() : this(false) { } /// /// Initializes a new instance of the class. /// /// /// If set to true the will use a cached shared with other resolvers of the same type. /// Sharing the cache will significantly improve performance with multiple resolver instances because expensive reflection will only /// happen once. This setting can cause unexpected behavior if different instances of the resolver are suppose to produce different /// results. When set to false it is highly recommended to reuse instances with the . /// public DefaultContractResolver(bool shareCache) { #if !NETFX_CORE #pragma warning disable 618 DefaultMembersSearchFlags = BindingFlags.Public | BindingFlags.Instance; #pragma warning restore 618 #endif #if !(NETFX_CORE || PORTABLE || PORTABLE40) IgnoreSerializableAttribute = true; #endif _sharedCache = shareCache; } internal DefaultContractResolverState GetState() { if (_sharedCache) return _sharedState; else return _instanceState; } /// /// Resolves the contract for a given type. /// /// The type to resolve a contract for. /// The contract for a given type. public virtual JsonContract ResolveContract(Type type) { if (type == null) throw new ArgumentNullException("type"); DefaultContractResolverState state = GetState(); JsonContract contract; ResolverContractKey key = new ResolverContractKey(GetType(), type); Dictionary cache = state.ContractCache; if (cache == null || !cache.TryGetValue(key, out contract)) { contract = CreateContract(type); // avoid the possibility of modifying the cache dictionary while another thread is accessing it lock (TypeContractCacheLock) { cache = state.ContractCache; Dictionary updatedCache = (cache != null) ? new Dictionary(cache) : new Dictionary(); updatedCache[key] = contract; state.ContractCache = updatedCache; } } return contract; } /// /// Gets the serializable members for the type. /// /// The type to get serializable members for. /// The serializable members for the type. protected virtual List GetSerializableMembers(Type objectType) { bool ignoreSerializableAttribute; #if !(NETFX_CORE || PORTABLE || PORTABLE40) ignoreSerializableAttribute = IgnoreSerializableAttribute; #else ignoreSerializableAttribute = true; #endif MemberSerialization memberSerialization = JsonTypeReflector.GetObjectMemberSerialization(objectType, ignoreSerializableAttribute); List allMembers = ReflectionUtils.GetFieldsAndProperties(objectType, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static) .Where(m => !ReflectionUtils.IsIndexedProperty(m)).ToList(); List serializableMembers = new List(); if (memberSerialization != MemberSerialization.Fields) { #if !NET20 DataContractAttribute dataContractAttribute = JsonTypeReflector.GetDataContractAttribute(objectType); #endif #pragma warning disable 618 List defaultMembers = ReflectionUtils.GetFieldsAndProperties(objectType, DefaultMembersSearchFlags) .Where(m => !ReflectionUtils.IsIndexedProperty(m)).ToList(); #pragma warning restore 618 foreach (MemberInfo member in allMembers) { // exclude members that are compiler generated if set if (SerializeCompilerGeneratedMembers || !member.IsDefined(typeof(CompilerGeneratedAttribute), true)) { if (defaultMembers.Contains(member)) { // add all members that are found by default member search serializableMembers.Add(member); } else { // add members that are explicitly marked with JsonProperty/DataMember attribute // or are a field if serializing just fields if (JsonTypeReflector.GetAttribute(member) != null) serializableMembers.Add(member); #if !NET20 else if (dataContractAttribute != null && JsonTypeReflector.GetAttribute(member) != null) serializableMembers.Add(member); #endif else if (memberSerialization == MemberSerialization.Fields && member.MemberType() == MemberTypes.Field) serializableMembers.Add(member); } } } #if !NET20 Type match; // don't include EntityKey on entities objects... this is a bit hacky if (objectType.AssignableToTypeName("System.Data.Objects.DataClasses.EntityObject", out match)) serializableMembers = serializableMembers.Where(ShouldSerializeEntityMember).ToList(); #endif } else { // serialize all fields foreach (MemberInfo member in allMembers) { FieldInfo field = member as FieldInfo; if (field != null && !field.IsStatic) serializableMembers.Add(member); } } return serializableMembers; } #if !NET20 private bool ShouldSerializeEntityMember(MemberInfo memberInfo) { PropertyInfo propertyInfo = memberInfo as PropertyInfo; if (propertyInfo != null) { if (propertyInfo.PropertyType.IsGenericType() && propertyInfo.PropertyType.GetGenericTypeDefinition().FullName == "System.Data.Objects.DataClasses.EntityReference`1") return false; } return true; } #endif /// /// Creates a for the given type. /// /// Type of the object. /// A for the given type. protected virtual JsonObjectContract CreateObjectContract(Type objectType) { JsonObjectContract contract = new JsonObjectContract(objectType); InitializeContract(contract); bool ignoreSerializableAttribute; #if !(NETFX_CORE || PORTABLE || PORTABLE40) ignoreSerializableAttribute = IgnoreSerializableAttribute; #else ignoreSerializableAttribute = true; #endif contract.MemberSerialization = JsonTypeReflector.GetObjectMemberSerialization(contract.NonNullableUnderlyingType, ignoreSerializableAttribute); contract.Properties.AddRange(CreateProperties(contract.NonNullableUnderlyingType, contract.MemberSerialization)); JsonObjectAttribute attribute = JsonTypeReflector.GetCachedAttribute(contract.NonNullableUnderlyingType); if (attribute != null) contract.ItemRequired = attribute._itemRequired; if (contract.IsInstantiable) { ConstructorInfo overrideConstructor = GetAttributeConstructor(contract.NonNullableUnderlyingType); // check if a JsonConstructorAttribute has been defined and use that if (overrideConstructor != null) { #pragma warning disable 618 contract.OverrideConstructor = overrideConstructor; #pragma warning restore 618 contract.CreatorParameters.AddRange(CreateConstructorParameters(overrideConstructor, contract.Properties)); } else if (contract.MemberSerialization == MemberSerialization.Fields) { #if !(NETFX_CORE || PORTABLE40 || PORTABLE) // mimic DataContractSerializer behaviour when populating fields by overriding default creator to create an uninitialized object // note that this is only possible when the application is fully trusted so fall back to using the default constructor (if available) in partial trust if (JsonTypeReflector.FullyTrusted) contract.DefaultCreator = contract.GetUninitializedObject; #endif } else if (contract.DefaultCreator == null || contract.DefaultCreatorNonPublic) { ConstructorInfo constructor = GetParametrizedConstructor(contract.NonNullableUnderlyingType); if (constructor != null) { #pragma warning disable 618 contract.ParametrizedConstructor = constructor; #pragma warning restore 618 contract.CreatorParameters.AddRange(CreateConstructorParameters(constructor, contract.Properties)); } } } MemberInfo extensionDataMember = GetExtensionDataMemberForType(contract.NonNullableUnderlyingType); if (extensionDataMember != null) SetExtensionDataDelegates(contract, extensionDataMember); return contract; } private MemberInfo GetExtensionDataMemberForType(Type type) { IEnumerable members = GetClassHierarchyForType(type).SelectMany(baseType => { IList m = new List(); m.AddRange(baseType.GetProperties(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly)); m.AddRange(baseType.GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly)); return m; }); MemberInfo extensionDataMember = members.LastOrDefault(m => { MemberTypes memberType = m.MemberType(); if (memberType != MemberTypes.Property && memberType != MemberTypes.Field) return false; // last instance of attribute wins on type if there are multiple if (!m.IsDefined(typeof(JsonExtensionDataAttribute), false)) return false; Type t = ReflectionUtils.GetMemberUnderlyingType(m); Type dictionaryType; if (ReflectionUtils.ImplementsGenericDefinition(t, typeof(IDictionary<,>), out dictionaryType)) { Type keyType = dictionaryType.GetGenericArguments()[0]; Type valueType = dictionaryType.GetGenericArguments()[1]; if (keyType.IsAssignableFrom(typeof(string)) && valueType.IsAssignableFrom(typeof(JToken))) return true; } throw new JsonException("Invalid extension data attribute on '{0}'. Member '{1}' type must implement IDictionary.".FormatWith(CultureInfo.InvariantCulture, GetClrTypeFullName(m.DeclaringType), m.Name)); }); return extensionDataMember; } private static void SetExtensionDataDelegates(JsonObjectContract contract, MemberInfo member) { JsonExtensionDataAttribute extensionDataAttribute = ReflectionUtils.GetAttribute(member); if (extensionDataAttribute == null) return; Type t = ReflectionUtils.GetMemberUnderlyingType(member); Type dictionaryType; ReflectionUtils.ImplementsGenericDefinition(t, typeof(IDictionary<,>), out dictionaryType); Type keyType = dictionaryType.GetGenericArguments()[0]; Type valueType = dictionaryType.GetGenericArguments()[1]; bool isJTokenValueType = typeof(JToken).IsAssignableFrom(valueType); Type createdType; // change type to a class if it is the base interface so it can be instantiated if needed if (ReflectionUtils.IsGenericDefinition(t, typeof(IDictionary<,>))) createdType = typeof(Dictionary<,>).MakeGenericType(keyType, valueType); else createdType = t; MethodInfo addMethod = t.GetMethod("Add", new[] { keyType, valueType }); Func getExtensionDataDictionary = JsonTypeReflector.ReflectionDelegateFactory.CreateGet(member); Action setExtensionDataDictionary = JsonTypeReflector.ReflectionDelegateFactory.CreateSet(member); Func createExtensionDataDictionary = JsonTypeReflector.ReflectionDelegateFactory.CreateDefaultConstructor(createdType); MethodCall setExtensionDataDictionaryValue = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(addMethod); ExtensionDataSetter extensionDataSetter = (o, key, value) => { object dictionary = getExtensionDataDictionary(o); if (dictionary == null) { dictionary = createExtensionDataDictionary(); setExtensionDataDictionary(o, dictionary); } // convert object value to JToken so it is compatible with dictionary // could happen because of primitive types, type name handling and references if (isJTokenValueType && !(value is JToken)) value = (value != null) ? JToken.FromObject(value) : JValue.CreateNull(); setExtensionDataDictionaryValue(dictionary, key, value); }; Type enumerableWrapper = typeof(DictionaryEnumerator<,>).MakeGenericType(keyType, valueType); ConstructorInfo constructors = enumerableWrapper.GetConstructors().First(); ObjectConstructor createEnumerableWrapper = JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(constructors); ExtensionDataGetter extensionDataGetter = o => { object dictionary = getExtensionDataDictionary(o); if (dictionary == null) return null; return (IEnumerable>)createEnumerableWrapper(dictionary); }; if (extensionDataAttribute.ReadData) contract.ExtensionDataSetter = extensionDataSetter; if (extensionDataAttribute.WriteData) contract.ExtensionDataGetter = extensionDataGetter; } internal struct DictionaryEnumerator : IEnumerable>, IEnumerator> { private readonly IEnumerator> _e; public DictionaryEnumerator(IEnumerable> e) { ValidationUtils.ArgumentNotNull(e, "e"); _e = e.GetEnumerator(); } public bool MoveNext() { return _e.MoveNext(); } public void Reset() { _e.Reset(); } public KeyValuePair Current { get { return new KeyValuePair(_e.Current.Key, _e.Current.Value); } } public void Dispose() { _e.Dispose(); } object IEnumerator.Current { get { return Current; } } public IEnumerator> GetEnumerator() { return this; } IEnumerator IEnumerable.GetEnumerator() { return this; } } private ConstructorInfo GetAttributeConstructor(Type objectType) { IList markedConstructors = objectType.GetConstructors(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic).Where(c => c.IsDefined(typeof(JsonConstructorAttribute), true)).ToList(); if (markedConstructors.Count > 1) throw new JsonException("Multiple constructors with the JsonConstructorAttribute."); else if (markedConstructors.Count == 1) return markedConstructors[0]; // little hack to get Version objects to deserialize correctly if (objectType == typeof(Version)) return objectType.GetConstructor(new[] { typeof(int), typeof(int), typeof(int), typeof(int) }); return null; } private ConstructorInfo GetParametrizedConstructor(Type objectType) { IList constructors = objectType.GetConstructors(BindingFlags.Public | BindingFlags.Instance).ToList(); if (constructors.Count == 1) return constructors[0]; else return null; } /// /// Creates the constructor parameters. /// /// The constructor to create properties for. /// The type's member properties. /// Properties for the given . protected virtual IList CreateConstructorParameters(ConstructorInfo constructor, JsonPropertyCollection memberProperties) { var constructorParameters = constructor.GetParameters(); JsonPropertyCollection parameterCollection = new JsonPropertyCollection(constructor.DeclaringType); foreach (ParameterInfo parameterInfo in constructorParameters) { // it is possible to generate a ParameterInfo with a null name using Reflection.Emit // protect against an ArgumentNullException from GetClosestMatchProperty by testing for null here JsonProperty matchingMemberProperty = (parameterInfo.Name != null) ? memberProperties.GetClosestMatchProperty(parameterInfo.Name) : null; // type must match as well as name if (matchingMemberProperty != null && matchingMemberProperty.PropertyType != parameterInfo.ParameterType) matchingMemberProperty = null; // ensure that property will have a name from matching property or from parameterinfo // parameterinfo could have no name if generated by a proxy (I'm looking at you Castle) if (matchingMemberProperty != null || parameterInfo.Name != null) { JsonProperty property = CreatePropertyFromConstructorParameter(matchingMemberProperty, parameterInfo); if (property != null) { parameterCollection.AddProperty(property); } } } return parameterCollection; } /// /// Creates a for the given . /// /// The matching member property. /// The constructor parameter. /// A created for the given . protected virtual JsonProperty CreatePropertyFromConstructorParameter(JsonProperty matchingMemberProperty, ParameterInfo parameterInfo) { JsonProperty property = new JsonProperty(); property.PropertyType = parameterInfo.ParameterType; property.AttributeProvider = new ReflectionAttributeProvider(parameterInfo); bool allowNonPublicAccess; SetPropertySettingsFromAttributes(property, parameterInfo, parameterInfo.Name, parameterInfo.Member.DeclaringType, MemberSerialization.OptOut, out allowNonPublicAccess); property.Readable = false; property.Writable = true; // "inherit" values from matching member property if unset on parameter if (matchingMemberProperty != null) { property.PropertyName = (property.PropertyName != parameterInfo.Name) ? property.PropertyName : matchingMemberProperty.PropertyName; property.Converter = property.Converter ?? matchingMemberProperty.Converter; property.MemberConverter = property.MemberConverter ?? matchingMemberProperty.MemberConverter; if (!property._hasExplicitDefaultValue && matchingMemberProperty._hasExplicitDefaultValue) property.DefaultValue = matchingMemberProperty.DefaultValue; property._required = property._required ?? matchingMemberProperty._required; property.IsReference = property.IsReference ?? matchingMemberProperty.IsReference; property.NullValueHandling = property.NullValueHandling ?? matchingMemberProperty.NullValueHandling; property.DefaultValueHandling = property.DefaultValueHandling ?? matchingMemberProperty.DefaultValueHandling; property.ReferenceLoopHandling = property.ReferenceLoopHandling ?? matchingMemberProperty.ReferenceLoopHandling; property.ObjectCreationHandling = property.ObjectCreationHandling ?? matchingMemberProperty.ObjectCreationHandling; property.TypeNameHandling = property.TypeNameHandling ?? matchingMemberProperty.TypeNameHandling; } return property; } /// /// Resolves the default for the contract. /// /// Type of the object. /// The contract's default . protected virtual JsonConverter ResolveContractConverter(Type objectType) { return JsonTypeReflector.GetJsonConverter(objectType); } private Func GetDefaultCreator(Type createdType) { return JsonTypeReflector.ReflectionDelegateFactory.CreateDefaultConstructor(createdType); } #if !NET20 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Portability", "CA1903:UseOnlyApiFromTargetedFramework", MessageId = "System.Runtime.Serialization.DataContractAttribute.#get_IsReference()")] #endif private void InitializeContract(JsonContract contract) { JsonContainerAttribute containerAttribute = JsonTypeReflector.GetCachedAttribute(contract.NonNullableUnderlyingType); if (containerAttribute != null) { contract.IsReference = containerAttribute._isReference; } #if !NET20 else { DataContractAttribute dataContractAttribute = JsonTypeReflector.GetDataContractAttribute(contract.NonNullableUnderlyingType); // doesn't have a null value if (dataContractAttribute != null && dataContractAttribute.IsReference) contract.IsReference = true; } #endif contract.Converter = ResolveContractConverter(contract.NonNullableUnderlyingType); // then see whether object is compadible with any of the built in converters contract.InternalConverter = JsonSerializer.GetMatchingConverter(BuiltInConverters, contract.NonNullableUnderlyingType); if (contract.IsInstantiable && (ReflectionUtils.HasDefaultConstructor(contract.CreatedType, true) || contract.CreatedType.IsValueType())) { contract.DefaultCreator = GetDefaultCreator(contract.CreatedType); contract.DefaultCreatorNonPublic = (!contract.CreatedType.IsValueType() && ReflectionUtils.GetDefaultConstructor(contract.CreatedType) == null); } ResolveCallbackMethods(contract, contract.NonNullableUnderlyingType); } private void ResolveCallbackMethods(JsonContract contract, Type t) { List onSerializing; List onSerialized; List onDeserializing; List onDeserialized; List onError; GetCallbackMethodsForType(t, out onSerializing, out onSerialized, out onDeserializing, out onDeserialized, out onError); if (onSerializing != null) { #if !(NET35 || NET20 || NETFX_CORE) if (t.Name != FSharpUtils.FSharpSetTypeName && t.Name != FSharpUtils.FSharpMapTypeName) #endif { #if NETFX_CORE if (!t.IsGenericType() || (t.GetGenericTypeDefinition() != typeof(ConcurrentDictionary<,>))) contract.OnSerializingCallbacks.AddRange(onSerializing); #else contract.OnSerializingCallbacks.AddRange(onSerializing); #endif } } if (onSerialized != null) contract.OnSerializedCallbacks.AddRange(onSerialized); if (onDeserializing != null) { contract.OnDeserializingCallbacks.AddRange(onDeserializing); } if (onDeserialized != null) { #if !(NET35 || NET20 || NETFX_CORE) if (t.Name != FSharpUtils.FSharpSetTypeName && t.Name != FSharpUtils.FSharpMapTypeName) #endif { // ConcurrentDictionary throws an error here so don't use its OnDeserialized - http://json.codeplex.com/discussions/257093 #if !(NET35 || NET20 || PORTABLE || PORTABLE40) if (!t.IsGenericType() || (t.GetGenericTypeDefinition() != typeof(ConcurrentDictionary<,>))) contract.OnDeserializedCallbacks.AddRange(onDeserialized); #else contract.OnDeserializedCallbacks.AddRange(onDeserialized); #endif } } if (onError != null) contract.OnErrorCallbacks.AddRange(onError); } private void GetCallbackMethodsForType(Type type, out List onSerializing, out List onSerialized, out List onDeserializing, out List onDeserialized, out List onError) { onSerializing = null; onSerialized = null; onDeserializing = null; onDeserialized = null; onError = null; foreach (Type baseType in GetClassHierarchyForType(type)) { // while we allow more than one OnSerialized total, only one can be defined per class MethodInfo currentOnSerializing = null; MethodInfo currentOnSerialized = null; MethodInfo currentOnDeserializing = null; MethodInfo currentOnDeserialized = null; MethodInfo currentOnError = null; foreach (MethodInfo method in baseType.GetMethods(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly)) { // compact framework errors when getting parameters for a generic method // lame, but generic methods should not be callbacks anyway if (method.ContainsGenericParameters) continue; Type prevAttributeType = null; ParameterInfo[] parameters = method.GetParameters(); if (IsValidCallback(method, parameters, typeof(OnSerializingAttribute), currentOnSerializing, ref prevAttributeType)) { onSerializing = onSerializing ?? new List(); onSerializing.Add(JsonContract.CreateSerializationCallback(method)); currentOnSerializing = method; } if (IsValidCallback(method, parameters, typeof(OnSerializedAttribute), currentOnSerialized, ref prevAttributeType)) { onSerialized = onSerialized ?? new List(); onSerialized.Add(JsonContract.CreateSerializationCallback(method)); currentOnSerialized = method; } if (IsValidCallback(method, parameters, typeof(OnDeserializingAttribute), currentOnDeserializing, ref prevAttributeType)) { onDeserializing = onDeserializing ?? new List(); onDeserializing.Add(JsonContract.CreateSerializationCallback(method)); currentOnDeserializing = method; } if (IsValidCallback(method, parameters, typeof(OnDeserializedAttribute), currentOnDeserialized, ref prevAttributeType)) { onDeserialized = onDeserialized ?? new List(); onDeserialized.Add(JsonContract.CreateSerializationCallback(method)); currentOnDeserialized = method; } if (IsValidCallback(method, parameters, typeof(OnErrorAttribute), currentOnError, ref prevAttributeType)) { onError = onError ?? new List(); onError.Add(JsonContract.CreateSerializationErrorCallback(method)); currentOnError = method; } } } } private List GetClassHierarchyForType(Type type) { List ret = new List(); Type current = type; while (current != null && current != typeof(object)) { ret.Add(current); current = current.BaseType(); } // Return the class list in order of simple => complex ret.Reverse(); return ret; } /// /// Creates a for the given type. /// /// Type of the object. /// A for the given type. protected virtual JsonDictionaryContract CreateDictionaryContract(Type objectType) { JsonDictionaryContract contract = new JsonDictionaryContract(objectType); InitializeContract(contract); contract.PropertyNameResolver = ResolvePropertyName; return contract; } /// /// Creates a for the given type. /// /// Type of the object. /// A for the given type. protected virtual JsonArrayContract CreateArrayContract(Type objectType) { JsonArrayContract contract = new JsonArrayContract(objectType); InitializeContract(contract); return contract; } /// /// Creates a for the given type. /// /// Type of the object. /// A for the given type. protected virtual JsonPrimitiveContract CreatePrimitiveContract(Type objectType) { JsonPrimitiveContract contract = new JsonPrimitiveContract(objectType); InitializeContract(contract); return contract; } /// /// Creates a for the given type. /// /// Type of the object. /// A for the given type. protected virtual JsonLinqContract CreateLinqContract(Type objectType) { JsonLinqContract contract = new JsonLinqContract(objectType); InitializeContract(contract); return contract; } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) /// /// Creates a for the given type. /// /// Type of the object. /// A for the given type. protected virtual JsonISerializableContract CreateISerializableContract(Type objectType) { JsonISerializableContract contract = new JsonISerializableContract(objectType); InitializeContract(contract); ConstructorInfo constructorInfo = contract.NonNullableUnderlyingType.GetConstructor(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance, null, new[] { typeof(SerializationInfo), typeof(StreamingContext) }, null); if (constructorInfo != null) { ObjectConstructor creator = JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(constructorInfo); contract.ISerializableCreator = creator; } return contract; } #endif #if !(NET35 || NET20 || PORTABLE40) /// /// Creates a for the given type. /// /// Type of the object. /// A for the given type. protected virtual JsonDynamicContract CreateDynamicContract(Type objectType) { JsonDynamicContract contract = new JsonDynamicContract(objectType); InitializeContract(contract); contract.PropertyNameResolver = ResolvePropertyName; contract.Properties.AddRange(CreateProperties(objectType, MemberSerialization.OptOut)); return contract; } #endif /// /// Creates a for the given type. /// /// Type of the object. /// A for the given type. protected virtual JsonStringContract CreateStringContract(Type objectType) { JsonStringContract contract = new JsonStringContract(objectType); InitializeContract(contract); return contract; } /// /// Determines which contract type is created for the given type. /// /// Type of the object. /// A for the given type. protected virtual JsonContract CreateContract(Type objectType) { if (IsJsonPrimitiveType(objectType)) return CreatePrimitiveContract(objectType); Type t = ReflectionUtils.EnsureNotNullableType(objectType); JsonContainerAttribute containerAttribute = JsonTypeReflector.GetCachedAttribute(t); if (containerAttribute is JsonObjectAttribute) return CreateObjectContract(objectType); if (containerAttribute is JsonArrayAttribute) return CreateArrayContract(objectType); if (containerAttribute is JsonDictionaryAttribute) return CreateDictionaryContract(objectType); if (t == typeof(JToken) || t.IsSubclassOf(typeof(JToken))) return CreateLinqContract(objectType); if (CollectionUtils.IsDictionaryType(t)) return CreateDictionaryContract(objectType); if (typeof(IEnumerable).IsAssignableFrom(t)) return CreateArrayContract(objectType); if (CanConvertToString(t)) return CreateStringContract(objectType); #if !(NETFX_CORE || PORTABLE40 || PORTABLE) if (!IgnoreSerializableInterface && typeof(ISerializable).IsAssignableFrom(t)) return CreateISerializableContract(objectType); #endif #if !(NET35 || NET20 || PORTABLE40) if (typeof(IDynamicMetaObjectProvider).IsAssignableFrom(t)) return CreateDynamicContract(objectType); #endif #if !(PORTABLE || NETFX_CORE) // tested last because it is not possible to automatically deserialize custom IConvertible types if (IsIConvertible(t)) return CreatePrimitiveContract(t); #endif return CreateObjectContract(objectType); } internal static bool IsJsonPrimitiveType(Type t) { PrimitiveTypeCode typeCode = ConvertUtils.GetTypeCode(t); return (typeCode != PrimitiveTypeCode.Empty && typeCode != PrimitiveTypeCode.Object); } #if !(PORTABLE || NETFX_CORE) internal static bool IsIConvertible(Type t) { if (typeof(IConvertible).IsAssignableFrom(t) || (ReflectionUtils.IsNullableType(t) && typeof(IConvertible).IsAssignableFrom(Nullable.GetUnderlyingType(t)))) { return !typeof(JToken).IsAssignableFrom(t); } return false; } #endif internal static bool CanConvertToString(Type type) { #if !(NETFX_CORE || PORTABLE40 || PORTABLE) TypeConverter converter = ConvertUtils.GetConverter(type); // use the objectType's TypeConverter if it has one and can convert to a string if (converter != null && !(converter is ComponentConverter) && !(converter is ReferenceConverter) && converter.GetType() != typeof(TypeConverter)) { if (converter.CanConvertTo(typeof(string))) return true; } #endif if (type == typeof(Type) || type.IsSubclassOf(typeof(Type))) return true; return false; } private static bool IsValidCallback(MethodInfo method, ParameterInfo[] parameters, Type attributeType, MethodInfo currentCallback, ref Type prevAttributeType) { if (!method.IsDefined(attributeType, false)) return false; if (currentCallback != null) throw new JsonException("Invalid attribute. Both '{0}' and '{1}' in type '{2}' have '{3}'.".FormatWith(CultureInfo.InvariantCulture, method, currentCallback, GetClrTypeFullName(method.DeclaringType), attributeType)); if (prevAttributeType != null) throw new JsonException("Invalid Callback. Method '{3}' in type '{2}' has both '{0}' and '{1}'.".FormatWith(CultureInfo.InvariantCulture, prevAttributeType, attributeType, GetClrTypeFullName(method.DeclaringType), method)); if (method.IsVirtual) throw new JsonException("Virtual Method '{0}' of type '{1}' cannot be marked with '{2}' attribute.".FormatWith(CultureInfo.InvariantCulture, method, GetClrTypeFullName(method.DeclaringType), attributeType)); if (method.ReturnType != typeof(void)) throw new JsonException("Serialization Callback '{1}' in type '{0}' must return void.".FormatWith(CultureInfo.InvariantCulture, GetClrTypeFullName(method.DeclaringType), method)); if (attributeType == typeof(OnErrorAttribute)) { if (parameters == null || parameters.Length != 2 || parameters[0].ParameterType != typeof(StreamingContext) || parameters[1].ParameterType != typeof(ErrorContext)) throw new JsonException("Serialization Error Callback '{1}' in type '{0}' must have two parameters of type '{2}' and '{3}'.".FormatWith(CultureInfo.InvariantCulture, GetClrTypeFullName(method.DeclaringType), method, typeof(StreamingContext), typeof(ErrorContext))); } else { if (parameters == null || parameters.Length != 1 || parameters[0].ParameterType != typeof(StreamingContext)) throw new JsonException("Serialization Callback '{1}' in type '{0}' must have a single parameter of type '{2}'.".FormatWith(CultureInfo.InvariantCulture, GetClrTypeFullName(method.DeclaringType), method, typeof(StreamingContext))); } prevAttributeType = attributeType; return true; } internal static string GetClrTypeFullName(Type type) { if (type.IsGenericTypeDefinition() || !type.ContainsGenericParameters()) return type.FullName; return string.Format(CultureInfo.InvariantCulture, "{0}.{1}", new object[] { type.Namespace, type.Name }); } /// /// Creates properties for the given . /// /// The type to create properties for. /// /// The member serialization mode for the type. /// Properties for the given . protected virtual IList CreateProperties(Type type, MemberSerialization memberSerialization) { List members = GetSerializableMembers(type); if (members == null) throw new JsonSerializationException("Null collection of seralizable members returned."); JsonPropertyCollection properties = new JsonPropertyCollection(type); foreach (MemberInfo member in members) { JsonProperty property = CreateProperty(member, memberSerialization); if (property != null) { DefaultContractResolverState state = GetState(); // nametable is not thread-safe for multiple writers lock (state.NameTable) { property.PropertyName = state.NameTable.Add(property.PropertyName); } properties.AddProperty(property); } } IList orderedProperties = properties.OrderBy(p => p.Order ?? -1).ToList(); return orderedProperties; } /// /// Creates the used by the serializer to get and set values from a member. /// /// The member. /// The used by the serializer to get and set values from a member. protected virtual IValueProvider CreateMemberValueProvider(MemberInfo member) { // warning - this method use to cause errors with Intellitrace. Retest in VS Ultimate after changes IValueProvider valueProvider; #if !(PORTABLE40 || PORTABLE || NETFX_CORE) if (DynamicCodeGeneration) valueProvider = new DynamicValueProvider(member); else valueProvider = new ReflectionValueProvider(member); #elif !(PORTABLE40) valueProvider = new ExpressionValueProvider(member); #else valueProvider = new ReflectionValueProvider(member); #endif return valueProvider; } /// /// Creates a for the given . /// /// The member's parent . /// The member to create a for. /// A created for the given . protected virtual JsonProperty CreateProperty(MemberInfo member, MemberSerialization memberSerialization) { JsonProperty property = new JsonProperty(); property.PropertyType = ReflectionUtils.GetMemberUnderlyingType(member); property.DeclaringType = member.DeclaringType; property.ValueProvider = CreateMemberValueProvider(member); property.AttributeProvider = new ReflectionAttributeProvider(member); bool allowNonPublicAccess; SetPropertySettingsFromAttributes(property, member, member.Name, member.DeclaringType, memberSerialization, out allowNonPublicAccess); if (memberSerialization != MemberSerialization.Fields) { property.Readable = ReflectionUtils.CanReadMemberValue(member, allowNonPublicAccess); property.Writable = ReflectionUtils.CanSetMemberValue(member, allowNonPublicAccess, property.HasMemberAttribute); } else { // write to readonly fields property.Readable = true; property.Writable = true; } property.ShouldSerialize = CreateShouldSerializeTest(member); SetIsSpecifiedActions(property, member, allowNonPublicAccess); return property; } private void SetPropertySettingsFromAttributes(JsonProperty property, object attributeProvider, string name, Type declaringType, MemberSerialization memberSerialization, out bool allowNonPublicAccess) { #if !NET20 DataContractAttribute dataContractAttribute = JsonTypeReflector.GetDataContractAttribute(declaringType); MemberInfo memberInfo = attributeProvider as MemberInfo; DataMemberAttribute dataMemberAttribute; if (dataContractAttribute != null && memberInfo != null) dataMemberAttribute = JsonTypeReflector.GetDataMemberAttribute((MemberInfo)memberInfo); else dataMemberAttribute = null; #endif JsonPropertyAttribute propertyAttribute = JsonTypeReflector.GetAttribute(attributeProvider); if (propertyAttribute != null) property.HasMemberAttribute = true; string mappedName; if (propertyAttribute != null && propertyAttribute.PropertyName != null) mappedName = propertyAttribute.PropertyName; #if !NET20 else if (dataMemberAttribute != null && dataMemberAttribute.Name != null) mappedName = dataMemberAttribute.Name; #endif else mappedName = name; property.PropertyName = ResolvePropertyName(mappedName); property.UnderlyingName = name; bool hasMemberAttribute = false; if (propertyAttribute != null) { property._required = propertyAttribute._required; property.Order = propertyAttribute._order; property.DefaultValueHandling = propertyAttribute._defaultValueHandling; hasMemberAttribute = true; } #if !NET20 else if (dataMemberAttribute != null) { property._required = (dataMemberAttribute.IsRequired) ? Required.AllowNull : Required.Default; property.Order = (dataMemberAttribute.Order != -1) ? (int?)dataMemberAttribute.Order : null; property.DefaultValueHandling = (!dataMemberAttribute.EmitDefaultValue) ? (DefaultValueHandling?)DefaultValueHandling.Ignore : null; hasMemberAttribute = true; } #endif bool hasJsonIgnoreAttribute = JsonTypeReflector.GetAttribute(attributeProvider) != null // automatically ignore extension data dictionary property if it is public || JsonTypeReflector.GetAttribute(attributeProvider) != null #if !(NETFX_CORE || PORTABLE40 || PORTABLE) || JsonTypeReflector.GetAttribute(attributeProvider) != null #endif ; if (memberSerialization != MemberSerialization.OptIn) { bool hasIgnoreDataMemberAttribute = false; #if !(NET20 || NET35) hasIgnoreDataMemberAttribute = (JsonTypeReflector.GetAttribute(attributeProvider) != null); #endif // ignored if it has JsonIgnore or NonSerialized or IgnoreDataMember attributes property.Ignored = (hasJsonIgnoreAttribute || hasIgnoreDataMemberAttribute); } else { // ignored if it has JsonIgnore/NonSerialized or does not have DataMember or JsonProperty attributes property.Ignored = (hasJsonIgnoreAttribute || !hasMemberAttribute); } // resolve converter for property // the class type might have a converter but the property converter takes presidence property.Converter = JsonTypeReflector.GetJsonConverter(attributeProvider); property.MemberConverter = JsonTypeReflector.GetJsonConverter(attributeProvider); DefaultValueAttribute defaultValueAttribute = JsonTypeReflector.GetAttribute(attributeProvider); if (defaultValueAttribute != null) property.DefaultValue = defaultValueAttribute.Value; property.NullValueHandling = (propertyAttribute != null) ? propertyAttribute._nullValueHandling : null; property.ReferenceLoopHandling = (propertyAttribute != null) ? propertyAttribute._referenceLoopHandling : null; property.ObjectCreationHandling = (propertyAttribute != null) ? propertyAttribute._objectCreationHandling : null; property.TypeNameHandling = (propertyAttribute != null) ? propertyAttribute._typeNameHandling : null; property.IsReference = (propertyAttribute != null) ? propertyAttribute._isReference : null; property.ItemIsReference = (propertyAttribute != null) ? propertyAttribute._itemIsReference : null; property.ItemConverter = (propertyAttribute != null && propertyAttribute.ItemConverterType != null) ? JsonTypeReflector.CreateJsonConverterInstance(propertyAttribute.ItemConverterType, propertyAttribute.ItemConverterParameters) : null; property.ItemReferenceLoopHandling = (propertyAttribute != null) ? propertyAttribute._itemReferenceLoopHandling : null; property.ItemTypeNameHandling = (propertyAttribute != null) ? propertyAttribute._itemTypeNameHandling : null; allowNonPublicAccess = false; #pragma warning disable 618 if ((DefaultMembersSearchFlags & BindingFlags.NonPublic) == BindingFlags.NonPublic) allowNonPublicAccess = true; #pragma warning restore 618 if (propertyAttribute != null) allowNonPublicAccess = true; if (memberSerialization == MemberSerialization.Fields) allowNonPublicAccess = true; #if !NET20 if (dataMemberAttribute != null) { allowNonPublicAccess = true; property.HasMemberAttribute = true; } #endif } private Predicate CreateShouldSerializeTest(MemberInfo member) { MethodInfo shouldSerializeMethod = member.DeclaringType.GetMethod(JsonTypeReflector.ShouldSerializePrefix + member.Name, ReflectionUtils.EmptyTypes); if (shouldSerializeMethod == null || shouldSerializeMethod.ReturnType != typeof(bool)) return null; MethodCall shouldSerializeCall = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(shouldSerializeMethod); return o => (bool)shouldSerializeCall(o); } private void SetIsSpecifiedActions(JsonProperty property, MemberInfo member, bool allowNonPublicAccess) { MemberInfo specifiedMember = member.DeclaringType.GetProperty(member.Name + JsonTypeReflector.SpecifiedPostfix); if (specifiedMember == null) specifiedMember = member.DeclaringType.GetField(member.Name + JsonTypeReflector.SpecifiedPostfix); if (specifiedMember == null || ReflectionUtils.GetMemberUnderlyingType(specifiedMember) != typeof(bool)) { return; } Func specifiedPropertyGet = JsonTypeReflector.ReflectionDelegateFactory.CreateGet(specifiedMember); property.GetIsSpecified = o => (bool)specifiedPropertyGet(o); if (ReflectionUtils.CanSetMemberValue(specifiedMember, allowNonPublicAccess, false)) property.SetIsSpecified = JsonTypeReflector.ReflectionDelegateFactory.CreateSet(specifiedMember); } /// /// Resolves the name of the property. /// /// Name of the property. /// Name of the property. protected internal virtual string ResolvePropertyName(string propertyName) { return propertyName; } /// /// Gets the resolved name of the property. /// /// Name of the property. /// Name of the property. public string GetResolvedPropertyName(string propertyName) { // this is a new method rather than changing the visibility of ResolvePropertyName to avoid // a breaking change for anyone who has overidden the method return ResolvePropertyName(propertyName); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/ReflectionValueProvider.cs0000664000175000017500000000617112454416117031211 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Reflection; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Serialization { /// /// Get and set values for a using reflection. /// public class ReflectionValueProvider : IValueProvider { private readonly MemberInfo _memberInfo; /// /// Initializes a new instance of the class. /// /// The member info. public ReflectionValueProvider(MemberInfo memberInfo) { ValidationUtils.ArgumentNotNull(memberInfo, "memberInfo"); _memberInfo = memberInfo; } /// /// Sets the value. /// /// The target to set the value on. /// The value to set on the target. public void SetValue(object target, object value) { try { ReflectionUtils.SetMemberValue(_memberInfo, target, value); } catch (Exception ex) { throw new JsonSerializationException("Error setting value to '{0}' on '{1}'.".FormatWith(CultureInfo.InvariantCulture, _memberInfo.Name, target.GetType()), ex); } } /// /// Gets the value. /// /// The target to get the value from. /// The value. public object GetValue(object target) { try { return ReflectionUtils.GetMemberValue(_memberInfo, target); } catch (Exception ex) { throw new JsonSerializationException("Error getting value from '{0}' on '{1}'.".FormatWith(CultureInfo.InvariantCulture, _memberInfo.Name, target.GetType()), ex); } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonContract.cs0000664000175000017500000003700212454416117027013 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.Reflection; using System.Runtime.Serialization; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Serialization { internal enum JsonContractType { None = 0, Object = 1, Array = 2, Primitive = 3, String = 4, Dictionary = 5, Dynamic = 6, Serializable = 7, Linq = 8 } /// /// Handles serialization callback events. /// /// The object that raised the callback event. /// The streaming context. public delegate void SerializationCallback(object o, StreamingContext context); /// /// Handles serialization error callback events. /// /// The object that raised the callback event. /// The streaming context. /// The error context. public delegate void SerializationErrorCallback(object o, StreamingContext context, ErrorContext errorContext); /// /// Sets extension data for an object during deserialization. /// /// The object to set extension data on. /// The extension data key. /// The extension data value. public delegate void ExtensionDataSetter(object o, string key, object value); /// /// Gets extension data for an object during serialization. /// /// The object to set extension data on. public delegate IEnumerable> ExtensionDataGetter(object o); /// /// Contract details for a used by the . /// public abstract class JsonContract { internal bool IsNullable; internal bool IsConvertable; internal bool IsEnum; internal Type NonNullableUnderlyingType; internal ReadType InternalReadType; internal JsonContractType ContractType; internal bool IsReadOnlyOrFixedSize; internal bool IsSealed; internal bool IsInstantiable; private List _onDeserializedCallbacks; private IList _onDeserializingCallbacks; private IList _onSerializedCallbacks; private IList _onSerializingCallbacks; private IList _onErrorCallbacks; private Type _createdType; /// /// Gets the underlying type for the contract. /// /// The underlying type for the contract. public Type UnderlyingType { get; private set; } /// /// Gets or sets the type created during deserialization. /// /// The type created during deserialization. public Type CreatedType { get { return _createdType; } set { _createdType = value; IsSealed = _createdType.IsSealed(); IsInstantiable = !(_createdType.IsInterface() || _createdType.IsAbstract()); } } /// /// Gets or sets whether this type contract is serialized as a reference. /// /// Whether this type contract is serialized as a reference. public bool? IsReference { get; set; } /// /// Gets or sets the default for this contract. /// /// The converter. public JsonConverter Converter { get; set; } // internally specified JsonConverter's to override default behavour // checked for after passed in converters and attribute specified converters internal JsonConverter InternalConverter { get; set; } /// /// Gets or sets all methods called immediately after deserialization of the object. /// /// The methods called immediately after deserialization of the object. public IList OnDeserializedCallbacks { get { if (_onDeserializedCallbacks == null) _onDeserializedCallbacks = new List(); return _onDeserializedCallbacks; } } /// /// Gets or sets all methods called during deserialization of the object. /// /// The methods called during deserialization of the object. public IList OnDeserializingCallbacks { get { if (_onDeserializingCallbacks == null) _onDeserializingCallbacks = new List(); return _onDeserializingCallbacks; } } /// /// Gets or sets all methods called after serialization of the object graph. /// /// The methods called after serialization of the object graph. public IList OnSerializedCallbacks { get { if (_onSerializedCallbacks == null) _onSerializedCallbacks = new List(); return _onSerializedCallbacks; } } /// /// Gets or sets all methods called before serialization of the object. /// /// The methods called before serialization of the object. public IList OnSerializingCallbacks { get { if (_onSerializingCallbacks == null) _onSerializingCallbacks = new List(); return _onSerializingCallbacks; } } /// /// Gets or sets all method called when an error is thrown during the serialization of the object. /// /// The methods called when an error is thrown during the serialization of the object. public IList OnErrorCallbacks { get { if (_onErrorCallbacks == null) _onErrorCallbacks = new List(); return _onErrorCallbacks; } } /// /// Gets or sets the method called immediately after deserialization of the object. /// /// The method called immediately after deserialization of the object. [Obsolete("This property is obsolete and has been replaced by the OnDeserializedCallbacks collection.")] public MethodInfo OnDeserialized { get { return (OnDeserializedCallbacks.Count > 0) ? OnDeserializedCallbacks[0].Method() : null; } set { OnDeserializedCallbacks.Clear(); OnDeserializedCallbacks.Add(CreateSerializationCallback(value)); } } /// /// Gets or sets the method called during deserialization of the object. /// /// The method called during deserialization of the object. [Obsolete("This property is obsolete and has been replaced by the OnDeserializingCallbacks collection.")] public MethodInfo OnDeserializing { get { return (OnDeserializingCallbacks.Count > 0) ? OnDeserializingCallbacks[0].Method() : null; } set { OnDeserializingCallbacks.Clear(); OnDeserializingCallbacks.Add(CreateSerializationCallback(value)); } } /// /// Gets or sets the method called after serialization of the object graph. /// /// The method called after serialization of the object graph. [Obsolete("This property is obsolete and has been replaced by the OnSerializedCallbacks collection.")] public MethodInfo OnSerialized { get { return (OnSerializedCallbacks.Count > 0) ? OnSerializedCallbacks[0].Method() : null; } set { OnSerializedCallbacks.Clear(); OnSerializedCallbacks.Add(CreateSerializationCallback(value)); } } /// /// Gets or sets the method called before serialization of the object. /// /// The method called before serialization of the object. [Obsolete("This property is obsolete and has been replaced by the OnSerializingCallbacks collection.")] public MethodInfo OnSerializing { get { return (OnSerializingCallbacks.Count > 0) ? OnSerializingCallbacks[0].Method() : null; } set { OnSerializingCallbacks.Clear(); OnSerializingCallbacks.Add(CreateSerializationCallback(value)); } } /// /// Gets or sets the method called when an error is thrown during the serialization of the object. /// /// The method called when an error is thrown during the serialization of the object. [Obsolete("This property is obsolete and has been replaced by the OnErrorCallbacks collection.")] public MethodInfo OnError { get { return (OnErrorCallbacks.Count > 0) ? OnErrorCallbacks[0].Method() : null; } set { OnErrorCallbacks.Clear(); OnErrorCallbacks.Add(CreateSerializationErrorCallback(value)); } } /// /// Gets or sets the default creator method used to create the object. /// /// The default creator method used to create the object. public Func DefaultCreator { get; set; } /// /// Gets or sets a value indicating whether the default creator is non public. /// /// true if the default object creator is non-public; otherwise, false. public bool DefaultCreatorNonPublic { get; set; } internal JsonContract(Type underlyingType) { ValidationUtils.ArgumentNotNull(underlyingType, "underlyingType"); UnderlyingType = underlyingType; IsNullable = ReflectionUtils.IsNullable(underlyingType); NonNullableUnderlyingType = (IsNullable && ReflectionUtils.IsNullableType(underlyingType)) ? Nullable.GetUnderlyingType(underlyingType) : underlyingType; CreatedType = NonNullableUnderlyingType; IsConvertable = ConvertUtils.IsConvertible(NonNullableUnderlyingType); IsEnum = NonNullableUnderlyingType.IsEnum(); if (NonNullableUnderlyingType == typeof(byte[])) { InternalReadType = ReadType.ReadAsBytes; } else if (NonNullableUnderlyingType == typeof(int)) { InternalReadType = ReadType.ReadAsInt32; } else if (NonNullableUnderlyingType == typeof(decimal)) { InternalReadType = ReadType.ReadAsDecimal; } else if (NonNullableUnderlyingType == typeof(string)) { InternalReadType = ReadType.ReadAsString; } else if (NonNullableUnderlyingType == typeof(DateTime)) { InternalReadType = ReadType.ReadAsDateTime; } #if !NET20 else if (NonNullableUnderlyingType == typeof(DateTimeOffset)) { InternalReadType = ReadType.ReadAsDateTimeOffset; } #endif else { InternalReadType = ReadType.Read; } } internal void InvokeOnSerializing(object o, StreamingContext context) { if (_onSerializingCallbacks != null) { foreach (SerializationCallback callback in _onSerializingCallbacks) { callback(o, context); } } } internal void InvokeOnSerialized(object o, StreamingContext context) { if (_onSerializedCallbacks != null) { foreach (SerializationCallback callback in _onSerializedCallbacks) { callback(o, context); } } } internal void InvokeOnDeserializing(object o, StreamingContext context) { if (_onDeserializingCallbacks != null) { foreach (SerializationCallback callback in _onDeserializingCallbacks) { callback(o, context); } } } internal void InvokeOnDeserialized(object o, StreamingContext context) { if (_onDeserializedCallbacks != null) { foreach (SerializationCallback callback in _onDeserializedCallbacks) { callback(o, context); } } } internal void InvokeOnError(object o, StreamingContext context, ErrorContext errorContext) { if (_onErrorCallbacks != null) { foreach (SerializationErrorCallback callback in _onErrorCallbacks) { callback(o, context, errorContext); } } } internal static SerializationCallback CreateSerializationCallback(MethodInfo callbackMethodInfo) { return (o, context) => callbackMethodInfo.Invoke(o, new object[] { context }); } internal static SerializationErrorCallback CreateSerializationErrorCallback(MethodInfo callbackMethodInfo) { return (o, context, econtext) => callbackMethodInfo.Invoke(o, new object[] { context, econtext }); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/ExpressionValueProvider.cs0000664000175000017500000001057312454416117031257 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET20 || NET35) using System; using System.Collections.Generic; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif using System.Text; using System.Reflection; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Serialization { /// /// Get and set values for a using dynamic methods. /// public class ExpressionValueProvider : IValueProvider { private readonly MemberInfo _memberInfo; private Func _getter; private Action _setter; /// /// Initializes a new instance of the class. /// /// The member info. public ExpressionValueProvider(MemberInfo memberInfo) { ValidationUtils.ArgumentNotNull(memberInfo, "memberInfo"); _memberInfo = memberInfo; } /// /// Sets the value. /// /// The target to set the value on. /// The value to set on the target. public void SetValue(object target, object value) { try { if (_setter == null) _setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(_memberInfo); #if DEBUG // dynamic method doesn't check whether the type is 'legal' to set // add this check for unit tests if (value == null) { if (!ReflectionUtils.IsNullable(ReflectionUtils.GetMemberUnderlyingType(_memberInfo))) throw new JsonSerializationException("Incompatible value. Cannot set {0} to null.".FormatWith(CultureInfo.InvariantCulture, _memberInfo)); } else if (!ReflectionUtils.GetMemberUnderlyingType(_memberInfo).IsAssignableFrom(value.GetType())) { throw new JsonSerializationException("Incompatible value. Cannot set {0} to type {1}.".FormatWith(CultureInfo.InvariantCulture, _memberInfo, value.GetType())); } #endif _setter(target, value); } catch (Exception ex) { throw new JsonSerializationException("Error setting value to '{0}' on '{1}'.".FormatWith(CultureInfo.InvariantCulture, _memberInfo.Name, target.GetType()), ex); } } /// /// Gets the value. /// /// The target to get the value from. /// The value. public object GetValue(object target) { try { if (_getter == null) _getter = ExpressionReflectionDelegateFactory.Instance.CreateGet(_memberInfo); return _getter(target); } catch (Exception ex) { throw new JsonSerializationException("Error getting value from '{0}' on '{1}'.".FormatWith(CultureInfo.InvariantCulture, _memberInfo.Name, target.GetType()), ex); } } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonSerializerInternalWriter.cs0000664000175000017500000013226412454416117032247 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; #if !(NET35 || NET20 || PORTABLE40) using System.Dynamic; #endif using System.Diagnostics; using System.Globalization; using System.IO; using System.Security; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; using System.Runtime.Serialization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Serialization { internal class JsonSerializerInternalWriter : JsonSerializerInternalBase { private JsonContract _rootContract; private int _rootLevel; private readonly List _serializeStack = new List(); private JsonSerializerProxy _internalSerializer; public JsonSerializerInternalWriter(JsonSerializer serializer) : base(serializer) { } public void Serialize(JsonWriter jsonWriter, object value, Type objectType) { if (jsonWriter == null) throw new ArgumentNullException("jsonWriter"); _rootContract = (objectType != null) ? Serializer._contractResolver.ResolveContract(objectType) : null; _rootLevel = _serializeStack.Count + 1; JsonContract contract = GetContractSafe(value); try { SerializeValue(jsonWriter, value, contract, null, null, null); } catch (Exception ex) { if (IsErrorHandled(null, contract, null, null, jsonWriter.Path, ex)) { HandleError(jsonWriter, 0); } else { // clear context in case serializer is being used inside a converter // if the converter wraps the error then not clearing the context will cause this error: // "Current error context error is different to requested error." ClearErrorContext(); throw; } } finally { // clear root contract to ensure that if level was > 1 then it won't // accidently be used for non root values _rootContract = null; } } private JsonSerializerProxy GetInternalSerializer() { if (_internalSerializer == null) _internalSerializer = new JsonSerializerProxy(this); return _internalSerializer; } private JsonContract GetContractSafe(object value) { if (value == null) return null; return Serializer._contractResolver.ResolveContract(value.GetType()); } private void SerializePrimitive(JsonWriter writer, object value, JsonPrimitiveContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty) { if (contract.TypeCode == PrimitiveTypeCode.Bytes) { // if type name handling is enabled then wrap the base64 byte string in an object with the type name bool includeTypeDetails = ShouldWriteType(TypeNameHandling.Objects, contract, member, containerContract, containerProperty); if (includeTypeDetails) { writer.WriteStartObject(); WriteTypeProperty(writer, contract.CreatedType); writer.WritePropertyName(JsonTypeReflector.ValuePropertyName, false); JsonWriter.WriteValue(writer, contract.TypeCode, value); writer.WriteEndObject(); return; } } JsonWriter.WriteValue(writer, contract.TypeCode, value); } private void SerializeValue(JsonWriter writer, object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty) { if (value == null) { writer.WriteNull(); return; } JsonConverter converter = ((member != null) ? member.Converter : null) ?? ((containerProperty != null) ? containerProperty.ItemConverter : null) ?? ((containerContract != null) ? containerContract.ItemConverter : null) ?? valueContract.Converter ?? Serializer.GetMatchingConverter(valueContract.UnderlyingType) ?? valueContract.InternalConverter; if (converter != null && converter.CanWrite) { SerializeConvertable(writer, converter, value, valueContract, containerContract, containerProperty); return; } switch (valueContract.ContractType) { case JsonContractType.Object: SerializeObject(writer, value, (JsonObjectContract)valueContract, member, containerContract, containerProperty); break; case JsonContractType.Array: JsonArrayContract arrayContract = (JsonArrayContract)valueContract; if (!arrayContract.IsMultidimensionalArray) SerializeList(writer, (IEnumerable)value, arrayContract, member, containerContract, containerProperty); else SerializeMultidimensionalArray(writer, (Array)value, arrayContract, member, containerContract, containerProperty); break; case JsonContractType.Primitive: SerializePrimitive(writer, value, (JsonPrimitiveContract)valueContract, member, containerContract, containerProperty); break; case JsonContractType.String: SerializeString(writer, value, (JsonStringContract)valueContract); break; case JsonContractType.Dictionary: JsonDictionaryContract dictionaryContract = (JsonDictionaryContract)valueContract; SerializeDictionary(writer, (value is IDictionary) ? (IDictionary)value : dictionaryContract.CreateWrapper(value), dictionaryContract, member, containerContract, containerProperty); break; #if !(NET35 || NET20 || PORTABLE40) case JsonContractType.Dynamic: SerializeDynamic(writer, (IDynamicMetaObjectProvider)value, (JsonDynamicContract)valueContract, member, containerContract, containerProperty); break; #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) case JsonContractType.Serializable: SerializeISerializable(writer, (ISerializable)value, (JsonISerializableContract)valueContract, member, containerContract, containerProperty); break; #endif case JsonContractType.Linq: ((JToken)value).WriteTo(writer, Serializer.Converters.ToArray()); break; } } private bool? ResolveIsReference(JsonContract contract, JsonProperty property, JsonContainerContract collectionContract, JsonProperty containerProperty) { bool? isReference = null; // value could be coming from a dictionary or array and not have a property if (property != null) isReference = property.IsReference; if (isReference == null && containerProperty != null) isReference = containerProperty.ItemIsReference; if (isReference == null && collectionContract != null) isReference = collectionContract.ItemIsReference; if (isReference == null) isReference = contract.IsReference; return isReference; } private bool ShouldWriteReference(object value, JsonProperty property, JsonContract valueContract, JsonContainerContract collectionContract, JsonProperty containerProperty) { if (value == null) return false; if (valueContract.ContractType == JsonContractType.Primitive || valueContract.ContractType == JsonContractType.String) return false; bool? isReference = ResolveIsReference(valueContract, property, collectionContract, containerProperty); if (isReference == null) { if (valueContract.ContractType == JsonContractType.Array) isReference = HasFlag(Serializer._preserveReferencesHandling, PreserveReferencesHandling.Arrays); else isReference = HasFlag(Serializer._preserveReferencesHandling, PreserveReferencesHandling.Objects); } if (!isReference.Value) return false; return Serializer.GetReferenceResolver().IsReferenced(this, value); } private bool ShouldWriteProperty(object memberValue, JsonProperty property) { if (property.NullValueHandling.GetValueOrDefault(Serializer._nullValueHandling) == NullValueHandling.Ignore && memberValue == null) return false; if (HasFlag(property.DefaultValueHandling.GetValueOrDefault(Serializer._defaultValueHandling), DefaultValueHandling.Ignore) && MiscellaneousUtils.ValueEquals(memberValue, property.GetResolvedDefaultValue())) return false; return true; } private bool CheckForCircularReference(JsonWriter writer, object value, JsonProperty property, JsonContract contract, JsonContainerContract containerContract, JsonProperty containerProperty) { if (value == null || contract.ContractType == JsonContractType.Primitive || contract.ContractType == JsonContractType.String) return true; ReferenceLoopHandling? referenceLoopHandling = null; if (property != null) referenceLoopHandling = property.ReferenceLoopHandling; if (referenceLoopHandling == null && containerProperty != null) referenceLoopHandling = containerProperty.ItemReferenceLoopHandling; if (referenceLoopHandling == null && containerContract != null) referenceLoopHandling = containerContract.ItemReferenceLoopHandling; if (_serializeStack.IndexOf(value) != -1) { string message = "Self referencing loop detected"; if (property != null) message += " for property '{0}'".FormatWith(CultureInfo.InvariantCulture, property.PropertyName); message += " with type '{0}'.".FormatWith(CultureInfo.InvariantCulture, value.GetType()); switch (referenceLoopHandling.GetValueOrDefault(Serializer._referenceLoopHandling)) { case ReferenceLoopHandling.Error: throw JsonSerializationException.Create(null, writer.ContainerPath, message, null); case ReferenceLoopHandling.Ignore: if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(null, writer.Path, message + ". Skipping serializing self referenced value."), null); return false; case ReferenceLoopHandling.Serialize: if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(null, writer.Path, message + ". Serializing self referenced value."), null); return true; } } return true; } private void WriteReference(JsonWriter writer, object value) { string reference = GetReference(writer, value); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(null, writer.Path, "Writing object reference to Id '{0}' for {1}.".FormatWith(CultureInfo.InvariantCulture, reference, value.GetType())), null); writer.WriteStartObject(); writer.WritePropertyName(JsonTypeReflector.RefPropertyName, false); writer.WriteValue(reference); writer.WriteEndObject(); } private string GetReference(JsonWriter writer, object value) { try { string reference = Serializer.GetReferenceResolver().GetReference(this, value); return reference; } catch (Exception ex) { throw JsonSerializationException.Create(null, writer.ContainerPath, "Error writing object reference for '{0}'.".FormatWith(CultureInfo.InvariantCulture, value.GetType()), ex); } } internal static bool TryConvertToString(object value, Type type, out string s) { #if !(NETFX_CORE || PORTABLE40 || PORTABLE) TypeConverter converter = ConvertUtils.GetConverter(type); // use the objectType's TypeConverter if it has one and can convert to a string if (converter != null && !(converter is ComponentConverter) && converter.GetType() != typeof(TypeConverter)) { if (converter.CanConvertTo(typeof(string))) { s = converter.ConvertToInvariantString(value); return true; } } #endif #if NETFX_CORE || PORTABLE if (value is Guid || value is Uri || value is TimeSpan) { s = value.ToString(); return true; } #endif if (value is Type) { s = ((Type)value).AssemblyQualifiedName; return true; } s = null; return false; } private void SerializeString(JsonWriter writer, object value, JsonStringContract contract) { OnSerializing(writer, contract, value); string s; TryConvertToString(value, contract.UnderlyingType, out s); writer.WriteValue(s); OnSerialized(writer, contract, value); } private void OnSerializing(JsonWriter writer, JsonContract contract, object value) { if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(null, writer.Path, "Started serializing {0}".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)), null); contract.InvokeOnSerializing(value, Serializer._context); } private void OnSerialized(JsonWriter writer, JsonContract contract, object value) { if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(null, writer.Path, "Finished serializing {0}".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)), null); contract.InvokeOnSerialized(value, Serializer._context); } private void SerializeObject(JsonWriter writer, object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) { OnSerializing(writer, contract, value); _serializeStack.Add(value); WriteObjectStart(writer, value, contract, member, collectionContract, containerProperty); int initialDepth = writer.Top; for (int index = 0; index < contract.Properties.Count; index++) { JsonProperty property = contract.Properties[index]; try { object memberValue; JsonContract memberContract; if (!CalculatePropertyValues(writer, value, contract, member, property, out memberContract, out memberValue)) continue; property.WritePropertyName(writer); SerializeValue(writer, memberValue, memberContract, property, contract, member); } catch (Exception ex) { if (IsErrorHandled(value, contract, property.PropertyName, null, writer.ContainerPath, ex)) HandleError(writer, initialDepth); else throw; } } if (contract.ExtensionDataGetter != null) { IEnumerable> extensionData = contract.ExtensionDataGetter(value); if (extensionData != null) { foreach (KeyValuePair e in extensionData) { JsonContract keyContract = GetContractSafe(e.Key); JsonContract valueContract = GetContractSafe(e.Value); bool escape; string propertyName = GetPropertyName(writer, e.Key, keyContract, out escape); if (ShouldWriteReference(e.Value, null, valueContract, contract, member)) { writer.WritePropertyName(propertyName); WriteReference(writer, e.Value); } else { if (!CheckForCircularReference(writer, e.Value, null, valueContract, contract, member)) continue; writer.WritePropertyName(propertyName); SerializeValue(writer, e.Value, valueContract, null, contract, member); } } } } writer.WriteEndObject(); _serializeStack.RemoveAt(_serializeStack.Count - 1); OnSerialized(writer, contract, value); } private bool CalculatePropertyValues(JsonWriter writer, object value, JsonContainerContract contract, JsonProperty member, JsonProperty property, out JsonContract memberContract, out object memberValue) { if (!property.Ignored && property.Readable && ShouldSerialize(writer, property, value) && IsSpecified(writer, property, value)) { if (property.PropertyContract == null) property.PropertyContract = Serializer._contractResolver.ResolveContract(property.PropertyType); memberValue = property.ValueProvider.GetValue(value); memberContract = (property.PropertyContract.IsSealed) ? property.PropertyContract : GetContractSafe(memberValue); if (ShouldWriteProperty(memberValue, property)) { if (ShouldWriteReference(memberValue, property, memberContract, contract, member)) { property.WritePropertyName(writer); WriteReference(writer, memberValue); return false; } if (!CheckForCircularReference(writer, memberValue, property, memberContract, contract, member)) return false; if (memberValue == null) { JsonObjectContract objectContract = contract as JsonObjectContract; Required resolvedRequired = property._required ?? ((objectContract != null) ? objectContract.ItemRequired : null) ?? Required.Default; if (resolvedRequired == Required.Always) throw JsonSerializationException.Create(null, writer.ContainerPath, "Cannot write a null value for property '{0}'. Property requires a value.".FormatWith(CultureInfo.InvariantCulture, property.PropertyName), null); } return true; } } memberContract = null; memberValue = null; return false; } private void WriteObjectStart(JsonWriter writer, object value, JsonContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) { writer.WriteStartObject(); bool isReference = ResolveIsReference(contract, member, collectionContract, containerProperty) ?? HasFlag(Serializer._preserveReferencesHandling, PreserveReferencesHandling.Objects); if (isReference) { WriteReferenceIdProperty(writer, contract.UnderlyingType, value); } if (ShouldWriteType(TypeNameHandling.Objects, contract, member, collectionContract, containerProperty)) { WriteTypeProperty(writer, contract.UnderlyingType); } } private void WriteReferenceIdProperty(JsonWriter writer, Type type, object value) { string reference = GetReference(writer, value); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(null, writer.Path, "Writing object reference Id '{0}' for {1}.".FormatWith(CultureInfo.InvariantCulture, reference, type)), null); writer.WritePropertyName(JsonTypeReflector.IdPropertyName, false); writer.WriteValue(reference); } private void WriteTypeProperty(JsonWriter writer, Type type) { string typeName = ReflectionUtils.GetTypeName(type, Serializer._typeNameAssemblyFormat, Serializer._binder); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(null, writer.Path, "Writing type name '{0}' for {1}.".FormatWith(CultureInfo.InvariantCulture, typeName, type)), null); writer.WritePropertyName(JsonTypeReflector.TypePropertyName, false); writer.WriteValue(typeName); } private bool HasFlag(DefaultValueHandling value, DefaultValueHandling flag) { return ((value & flag) == flag); } private bool HasFlag(PreserveReferencesHandling value, PreserveReferencesHandling flag) { return ((value & flag) == flag); } private bool HasFlag(TypeNameHandling value, TypeNameHandling flag) { return ((value & flag) == flag); } private void SerializeConvertable(JsonWriter writer, JsonConverter converter, object value, JsonContract contract, JsonContainerContract collectionContract, JsonProperty containerProperty) { if (ShouldWriteReference(value, null, contract, collectionContract, containerProperty)) { WriteReference(writer, value); } else { if (!CheckForCircularReference(writer, value, null, contract, collectionContract, containerProperty)) return; _serializeStack.Add(value); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(null, writer.Path, "Started serializing {0} with converter {1}.".FormatWith(CultureInfo.InvariantCulture, value.GetType(), converter.GetType())), null); converter.WriteJson(writer, value, GetInternalSerializer()); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(null, writer.Path, "Finished serializing {0} with converter {1}.".FormatWith(CultureInfo.InvariantCulture, value.GetType(), converter.GetType())), null); _serializeStack.RemoveAt(_serializeStack.Count - 1); } } private void SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) { IWrappedCollection wrappedCollection = values as IWrappedCollection; object underlyingList = wrappedCollection != null ? wrappedCollection.UnderlyingCollection : values; OnSerializing(writer, contract, underlyingList); _serializeStack.Add(underlyingList); bool hasWrittenMetadataObject = WriteStartArray(writer, underlyingList, contract, member, collectionContract, containerProperty); writer.WriteStartArray(); int initialDepth = writer.Top; int index = 0; // note that an error in the IEnumerable won't be caught foreach (object value in values) { try { JsonContract valueContract = contract.FinalItemContract ?? GetContractSafe(value); if (ShouldWriteReference(value, null, valueContract, contract, member)) { WriteReference(writer, value); } else { if (CheckForCircularReference(writer, value, null, valueContract, contract, member)) { SerializeValue(writer, value, valueContract, null, contract, member); } } } catch (Exception ex) { if (IsErrorHandled(underlyingList, contract, index, null, writer.ContainerPath, ex)) HandleError(writer, initialDepth); else throw; } finally { index++; } } writer.WriteEndArray(); if (hasWrittenMetadataObject) writer.WriteEndObject(); _serializeStack.RemoveAt(_serializeStack.Count - 1); OnSerialized(writer, contract, underlyingList); } private void SerializeMultidimensionalArray(JsonWriter writer, Array values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) { OnSerializing(writer, contract, values); _serializeStack.Add(values); bool hasWrittenMetadataObject = WriteStartArray(writer, values, contract, member, collectionContract, containerProperty); SerializeMultidimensionalArray(writer, values, contract, member, writer.Top, new int[0]); if (hasWrittenMetadataObject) writer.WriteEndObject(); _serializeStack.RemoveAt(_serializeStack.Count - 1); OnSerialized(writer, contract, values); } private void SerializeMultidimensionalArray(JsonWriter writer, Array values, JsonArrayContract contract, JsonProperty member, int initialDepth, int[] indices) { int dimension = indices.Length; int[] newIndices = new int[dimension + 1]; for (int i = 0; i < dimension; i++) { newIndices[i] = indices[i]; } writer.WriteStartArray(); for (int i = 0; i < values.GetLength(dimension); i++) { newIndices[dimension] = i; bool isTopLevel = (newIndices.Length == values.Rank); if (isTopLevel) { object value = values.GetValue(newIndices); try { JsonContract valueContract = contract.FinalItemContract ?? GetContractSafe(value); if (ShouldWriteReference(value, null, valueContract, contract, member)) { WriteReference(writer, value); } else { if (CheckForCircularReference(writer, value, null, valueContract, contract, member)) { SerializeValue(writer, value, valueContract, null, contract, member); } } } catch (Exception ex) { if (IsErrorHandled(values, contract, i, null, writer.ContainerPath, ex)) HandleError(writer, initialDepth + 1); else throw; } } else { SerializeMultidimensionalArray(writer, values, contract, member, initialDepth + 1, newIndices); } } writer.WriteEndArray(); } private bool WriteStartArray(JsonWriter writer, object values, JsonArrayContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty) { bool isReference = ResolveIsReference(contract, member, containerContract, containerProperty) ?? HasFlag(Serializer._preserveReferencesHandling, PreserveReferencesHandling.Arrays); bool includeTypeDetails = ShouldWriteType(TypeNameHandling.Arrays, contract, member, containerContract, containerProperty); bool writeMetadataObject = isReference || includeTypeDetails; if (writeMetadataObject) { writer.WriteStartObject(); if (isReference) { WriteReferenceIdProperty(writer, contract.UnderlyingType, values); } if (includeTypeDetails) { WriteTypeProperty(writer, values.GetType()); } writer.WritePropertyName(JsonTypeReflector.ArrayValuesPropertyName, false); } if (contract.ItemContract == null) contract.ItemContract = Serializer._contractResolver.ResolveContract(contract.CollectionItemType ?? typeof(object)); return writeMetadataObject; } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) #if !(NET20 || NET35) [SecuritySafeCritical] #endif private void SerializeISerializable(JsonWriter writer, ISerializable value, JsonISerializableContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) { if (!JsonTypeReflector.FullyTrusted) { string message = @"Type '{0}' implements ISerializable but cannot be serialized using the ISerializable interface because the current application is not fully trusted and ISerializable can expose secure data." + Environment.NewLine + @"To fix this error either change the environment to be fully trusted, change the application to not deserialize the type, add JsonObjectAttribute to the type or change the JsonSerializer setting ContractResolver to use a new DefaultContractResolver with IgnoreSerializableInterface set to true." + Environment.NewLine; message = message.FormatWith(CultureInfo.InvariantCulture, value.GetType()); throw JsonSerializationException.Create(null, writer.ContainerPath, message, null); } OnSerializing(writer, contract, value); _serializeStack.Add(value); WriteObjectStart(writer, value, contract, member, collectionContract, containerProperty); SerializationInfo serializationInfo = new SerializationInfo(contract.UnderlyingType, new FormatterConverter()); value.GetObjectData(serializationInfo, Serializer._context); foreach (SerializationEntry serializationEntry in serializationInfo) { JsonContract valueContract = GetContractSafe(serializationEntry.Value); if (ShouldWriteReference(serializationEntry.Value, null, valueContract, contract, member)) { writer.WritePropertyName(serializationEntry.Name); WriteReference(writer, serializationEntry.Value); } else if (CheckForCircularReference(writer, serializationEntry.Value, null, valueContract, contract, member)) { writer.WritePropertyName(serializationEntry.Name); SerializeValue(writer, serializationEntry.Value, valueContract, null, contract, member); } } writer.WriteEndObject(); _serializeStack.RemoveAt(_serializeStack.Count - 1); OnSerialized(writer, contract, value); } #endif #if !(NET35 || NET20 || PORTABLE40) private void SerializeDynamic(JsonWriter writer, IDynamicMetaObjectProvider value, JsonDynamicContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) { OnSerializing(writer, contract, value); _serializeStack.Add(value); WriteObjectStart(writer, value, contract, member, collectionContract, containerProperty); int initialDepth = writer.Top; for (int index = 0; index < contract.Properties.Count; index++) { JsonProperty property = contract.Properties[index]; // only write non-dynamic properties that have an explicit attribute if (property.HasMemberAttribute) { try { object memberValue; JsonContract memberContract; if (!CalculatePropertyValues(writer, value, contract, member, property, out memberContract, out memberValue)) continue; property.WritePropertyName(writer); SerializeValue(writer, memberValue, memberContract, property, contract, member); } catch (Exception ex) { if (IsErrorHandled(value, contract, property.PropertyName, null, writer.ContainerPath, ex)) HandleError(writer, initialDepth); else throw; } } } foreach (string memberName in value.GetDynamicMemberNames()) { object memberValue; if (contract.TryGetMember(value, memberName, out memberValue)) { try { JsonContract valueContract = GetContractSafe(memberValue); if (!ShouldWriteDynamicProperty(memberValue)) continue; if (CheckForCircularReference(writer, memberValue, null, valueContract, contract, member)) { string resolvedPropertyName = (contract.PropertyNameResolver != null) ? contract.PropertyNameResolver(memberName) : memberName; writer.WritePropertyName(resolvedPropertyName); SerializeValue(writer, memberValue, valueContract, null, contract, member); } } catch (Exception ex) { if (IsErrorHandled(value, contract, memberName, null, writer.ContainerPath, ex)) HandleError(writer, initialDepth); else throw; } } } writer.WriteEndObject(); _serializeStack.RemoveAt(_serializeStack.Count - 1); OnSerialized(writer, contract, value); } #endif private bool ShouldWriteDynamicProperty(object memberValue) { if (Serializer._nullValueHandling == NullValueHandling.Ignore && memberValue == null) return false; if (HasFlag(Serializer._defaultValueHandling, DefaultValueHandling.Ignore) && (memberValue == null || MiscellaneousUtils.ValueEquals(memberValue, ReflectionUtils.GetDefaultValue(memberValue.GetType())))) return false; return true; } private bool ShouldWriteType(TypeNameHandling typeNameHandlingFlag, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty) { TypeNameHandling resolvedTypeNameHandling = ((member != null) ? member.TypeNameHandling : null) ?? ((containerProperty != null) ? containerProperty.ItemTypeNameHandling : null) ?? ((containerContract != null) ? containerContract.ItemTypeNameHandling : null) ?? Serializer._typeNameHandling; if (HasFlag(resolvedTypeNameHandling, typeNameHandlingFlag)) return true; // instance type and the property's type's contract default type are different (no need to put the type in JSON because the type will be created by default) if (HasFlag(resolvedTypeNameHandling, TypeNameHandling.Auto)) { if (member != null) { if (contract.UnderlyingType != member.PropertyContract.CreatedType) return true; } else if (containerContract != null) { if (containerContract.ItemContract == null || contract.UnderlyingType != containerContract.ItemContract.CreatedType) return true; } else if (_rootContract != null && _serializeStack.Count == _rootLevel) { if (contract.UnderlyingType != _rootContract.CreatedType) return true; } } return false; } private void SerializeDictionary(JsonWriter writer, IDictionary values, JsonDictionaryContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) { IWrappedDictionary wrappedDictionary = values as IWrappedDictionary; object underlyingDictionary = wrappedDictionary != null ? wrappedDictionary.UnderlyingDictionary : values; OnSerializing(writer, contract, underlyingDictionary); _serializeStack.Add(underlyingDictionary); WriteObjectStart(writer, underlyingDictionary, contract, member, collectionContract, containerProperty); if (contract.ItemContract == null) contract.ItemContract = Serializer._contractResolver.ResolveContract(contract.DictionaryValueType ?? typeof(object)); if (contract.KeyContract == null) contract.KeyContract = Serializer._contractResolver.ResolveContract(contract.DictionaryKeyType ?? typeof(object)); int initialDepth = writer.Top; foreach (DictionaryEntry entry in values) { bool escape; string propertyName = GetPropertyName(writer, entry.Key, contract.KeyContract, out escape); propertyName = (contract.PropertyNameResolver != null) ? contract.PropertyNameResolver(propertyName) : propertyName; try { object value = entry.Value; JsonContract valueContract = contract.FinalItemContract ?? GetContractSafe(value); if (ShouldWriteReference(value, null, valueContract, contract, member)) { writer.WritePropertyName(propertyName, escape); WriteReference(writer, value); } else { if (!CheckForCircularReference(writer, value, null, valueContract, contract, member)) continue; writer.WritePropertyName(propertyName, escape); SerializeValue(writer, value, valueContract, null, contract, member); } } catch (Exception ex) { if (IsErrorHandled(underlyingDictionary, contract, propertyName, null, writer.ContainerPath, ex)) HandleError(writer, initialDepth); else throw; } } writer.WriteEndObject(); _serializeStack.RemoveAt(_serializeStack.Count - 1); OnSerialized(writer, contract, underlyingDictionary); } private string GetPropertyName(JsonWriter writer, object name, JsonContract contract, out bool escape) { string propertyName; if (contract.ContractType == JsonContractType.Primitive) { JsonPrimitiveContract primitiveContract = (JsonPrimitiveContract)contract; if (primitiveContract.TypeCode == PrimitiveTypeCode.DateTime || primitiveContract.TypeCode == PrimitiveTypeCode.DateTimeNullable) { escape = false; StringWriter sw = new StringWriter(CultureInfo.InvariantCulture); DateTimeUtils.WriteDateTimeString(sw, (DateTime)name, writer.DateFormatHandling, writer.DateFormatString, writer.Culture); return sw.ToString(); } #if !NET20 else if (primitiveContract.TypeCode == PrimitiveTypeCode.DateTimeOffset || primitiveContract.TypeCode == PrimitiveTypeCode.DateTimeOffsetNullable) { escape = false; StringWriter sw = new StringWriter(CultureInfo.InvariantCulture); DateTimeUtils.WriteDateTimeOffsetString(sw, (DateTimeOffset)name, writer.DateFormatHandling, writer.DateFormatString, writer.Culture); return sw.ToString(); } #endif else { escape = true; return Convert.ToString(name, CultureInfo.InvariantCulture); } } else if (TryConvertToString(name, name.GetType(), out propertyName)) { escape = true; return propertyName; } else { escape = true; return name.ToString(); } } private void HandleError(JsonWriter writer, int initialDepth) { ClearErrorContext(); if (writer.WriteState == WriteState.Property) writer.WriteNull(); while (writer.Top > initialDepth) { writer.WriteEnd(); } } private bool ShouldSerialize(JsonWriter writer, JsonProperty property, object target) { if (property.ShouldSerialize == null) return true; bool shouldSerialize = property.ShouldSerialize(target); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(null, writer.Path, "ShouldSerialize result for property '{0}' on {1}: {2}".FormatWith(CultureInfo.InvariantCulture, property.PropertyName, property.DeclaringType, shouldSerialize)), null); return shouldSerialize; } private bool IsSpecified(JsonWriter writer, JsonProperty property, object target) { if (property.GetIsSpecified == null) return true; bool isSpecified = property.GetIsSpecified(target); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(null, writer.Path, "IsSpecified result for property '{0}' on {1}: {2}".FormatWith(CultureInfo.InvariantCulture, property.PropertyName, property.DeclaringType, isSpecified)), null); return isSpecified; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/ITraceWriter.cs0000664000175000017500000000226212454416117026750 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Diagnostics; namespace Newtonsoft.Json.Serialization { /// /// Represents a trace writer. /// public interface ITraceWriter { /// /// Gets the that will be used to filter the trace messages passed to the writer. /// For example a filter level of Info will exclude Verbose messages and include Info, /// Warning and Error messages. /// /// The that will be used to filter the trace messages passed to the writer. TraceLevel LevelFilter { get; } /// /// Writes the specified trace level, message and optional exception. /// /// The at which to write this trace. /// The trace message. /// The trace exception. This parameter is optional. void Trace(TraceLevel level, string message, Exception ex); } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/IContractResolver.cs0000664000175000017500000000412012454416117030007 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Serialization { /// /// Used by to resolves a for a given . /// /// /// /// /// public interface IContractResolver { /// /// Resolves the contract for a given type. /// /// The type to resolve a contract for. /// The contract for a given type. JsonContract ResolveContract(Type type); } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonPropertyCollection.cs0000664000175000017500000001435212454416117031101 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; using System.Collections.ObjectModel; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Serialization { /// /// A collection of objects. /// public class JsonPropertyCollection : KeyedCollection { private readonly Type _type; /// /// Initializes a new instance of the class. /// /// The type. public JsonPropertyCollection(Type type) : base(StringComparer.Ordinal) { ValidationUtils.ArgumentNotNull(type, "type"); _type = type; } /// /// When implemented in a derived class, extracts the key from the specified element. /// /// The element from which to extract the key. /// The key for the specified element. protected override string GetKeyForItem(JsonProperty item) { return item.PropertyName; } /// /// Adds a object. /// /// The property to add to the collection. public void AddProperty(JsonProperty property) { if (Contains(property.PropertyName)) { // don't overwrite existing property with ignored property if (property.Ignored) return; JsonProperty existingProperty = this[property.PropertyName]; bool duplicateProperty = true; if (existingProperty.Ignored) { // remove ignored property so it can be replaced in collection Remove(existingProperty); duplicateProperty = false; } else { if (property.DeclaringType != null && existingProperty.DeclaringType != null) { if (property.DeclaringType.IsSubclassOf(existingProperty.DeclaringType)) { // current property is on a derived class and hides the existing Remove(existingProperty); duplicateProperty = false; } if (existingProperty.DeclaringType.IsSubclassOf(property.DeclaringType)) { // current property is hidden by the existing so don't add it return; } } } if (duplicateProperty) throw new JsonSerializationException("A member with the name '{0}' already exists on '{1}'. Use the JsonPropertyAttribute to specify another name.".FormatWith(CultureInfo.InvariantCulture, property.PropertyName, _type)); } Add(property); } /// /// Gets the closest matching object. /// First attempts to get an exact case match of propertyName and then /// a case insensitive match. /// /// Name of the property. /// A matching property if found. public JsonProperty GetClosestMatchProperty(string propertyName) { JsonProperty property = GetProperty(propertyName, StringComparison.Ordinal); if (property == null) property = GetProperty(propertyName, StringComparison.OrdinalIgnoreCase); return property; } private bool TryGetValue(string key, out JsonProperty item) { if (Dictionary == null) { item = default(JsonProperty); return false; } return Dictionary.TryGetValue(key, out item); } /// /// Gets a property by property name. /// /// The name of the property to get. /// Type property name string comparison. /// A matching property if found. public JsonProperty GetProperty(string propertyName, StringComparison comparisonType) { // KeyedCollection has an ordinal comparer if (comparisonType == StringComparison.Ordinal) { JsonProperty property; if (TryGetValue(propertyName, out property)) return property; return null; } foreach (JsonProperty property in this) { if (string.Equals(propertyName, property.PropertyName, comparisonType)) { return property; } } return null; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonObjectContract.cs0000664000175000017500000001742612454416117030152 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using System.Reflection; using System.Runtime.Serialization; using System.Security; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Serialization { /// /// Contract details for a used by the . /// public class JsonObjectContract : JsonContainerContract { /// /// Gets or sets the object member serialization. /// /// The member object serialization. public MemberSerialization MemberSerialization { get; set; } /// /// Gets or sets a value that indicates whether the object's properties are required. /// /// /// A value indicating whether the object's properties are required. /// public Required? ItemRequired { get; set; } /// /// Gets the object's properties. /// /// The object's properties. public JsonPropertyCollection Properties { get; private set; } /// /// Gets the constructor parameters required for any non-default constructor /// [Obsolete("ConstructorParameters is obsolete. Use CreatorParameters instead.")] public JsonPropertyCollection ConstructorParameters { get { return CreatorParameters; } } /// /// Gets a collection of instances that define the parameters used with . /// public JsonPropertyCollection CreatorParameters { get; private set; } /// /// Gets or sets the override constructor used to create the object. /// This is set when a constructor is marked up using the /// JsonConstructor attribute. /// /// The override constructor. [Obsolete("OverrideConstructor is obsolete. Use OverrideCreator instead.")] public ConstructorInfo OverrideConstructor { get { return _overrideConstructor; } set { _overrideConstructor = value; _overrideCreator = (value != null) ? JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(value) : null; } } /// /// Gets or sets the parametrized constructor used to create the object. /// /// The parametrized constructor. [Obsolete("ParametrizedConstructor is obsolete. Use OverrideCreator instead.")] public ConstructorInfo ParametrizedConstructor { get { return _parametrizedConstructor; } set { _parametrizedConstructor = value; _parametrizedCreator = (value != null) ? JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(value) : null; } } /// /// Gets or sets the function used to create the object. When set this function will override . /// This function is called with a collection of arguments which are defined by the collection. /// /// The function used to create the object. public ObjectConstructor OverrideCreator { get { return _overrideCreator; } set { _overrideCreator = value; _overrideConstructor = null; } } internal ObjectConstructor ParametrizedCreator { get { return _parametrizedCreator; } } /// /// Gets or sets the extension data setter. /// public ExtensionDataSetter ExtensionDataSetter { get; set; } /// /// Gets or sets the extension data getter. /// public ExtensionDataGetter ExtensionDataGetter { get; set; } private bool? _hasRequiredOrDefaultValueProperties; private ConstructorInfo _parametrizedConstructor; private ConstructorInfo _overrideConstructor; private ObjectConstructor _overrideCreator; private ObjectConstructor _parametrizedCreator; internal bool HasRequiredOrDefaultValueProperties { get { if (_hasRequiredOrDefaultValueProperties == null) { _hasRequiredOrDefaultValueProperties = false; if (ItemRequired.GetValueOrDefault(Required.Default) != Required.Default) { _hasRequiredOrDefaultValueProperties = true; } else { foreach (JsonProperty property in Properties) { if (property.Required != Required.Default || ((property.DefaultValueHandling & DefaultValueHandling.Populate) == DefaultValueHandling.Populate) && property.Writable) { _hasRequiredOrDefaultValueProperties = true; break; } } } } return _hasRequiredOrDefaultValueProperties.Value; } } /// /// Initializes a new instance of the class. /// /// The underlying type for the contract. public JsonObjectContract(Type underlyingType) : base(underlyingType) { ContractType = JsonContractType.Object; Properties = new JsonPropertyCollection(UnderlyingType); CreatorParameters = new JsonPropertyCollection(UnderlyingType); } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) #if !(NET20 || NET35) [SecuritySafeCritical] #endif internal object GetUninitializedObject() { // we should never get here if the environment is not fully trusted, check just in case if (!JsonTypeReflector.FullyTrusted) throw new JsonException("Insufficient permissions. Creating an uninitialized '{0}' type requires full trust.".FormatWith(CultureInfo.InvariantCulture, NonNullableUnderlyingType)); return FormatterServices.GetUninitializedObject(NonNullableUnderlyingType); } #endif } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonDynamicContract.cs0000664000175000017500000001132412454416117030317 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE40) using System; using System.Collections.Generic; using System.Dynamic; using System.Reflection; using System.Runtime.CompilerServices; using Newtonsoft.Json.Utilities; using System.Collections; namespace Newtonsoft.Json.Serialization { /// /// Contract details for a used by the . /// public class JsonDynamicContract : JsonContainerContract { /// /// Gets the object's properties. /// /// The object's properties. public JsonPropertyCollection Properties { get; private set; } /// /// Gets or sets the property name resolver. /// /// The property name resolver. public Func PropertyNameResolver { get; set; } private readonly ThreadSafeStore>> _callSiteGetters = new ThreadSafeStore>>(CreateCallSiteGetter); private readonly ThreadSafeStore>> _callSiteSetters = new ThreadSafeStore>>(CreateCallSiteSetter); private static CallSite> CreateCallSiteGetter(string name) { GetMemberBinder getMemberBinder = (GetMemberBinder)DynamicUtils.BinderWrapper.GetMember(name, typeof(DynamicUtils)); return CallSite>.Create(new NoThrowGetBinderMember(getMemberBinder)); } private static CallSite> CreateCallSiteSetter(string name) { SetMemberBinder binder = (SetMemberBinder)DynamicUtils.BinderWrapper.SetMember(name, typeof(DynamicUtils)); return CallSite>.Create(new NoThrowSetBinderMember(binder)); } /// /// Initializes a new instance of the class. /// /// The underlying type for the contract. public JsonDynamicContract(Type underlyingType) : base(underlyingType) { ContractType = JsonContractType.Dynamic; Properties = new JsonPropertyCollection(UnderlyingType); } internal bool TryGetMember(IDynamicMetaObjectProvider dynamicProvider, string name, out object value) { ValidationUtils.ArgumentNotNull(dynamicProvider, "dynamicProvider"); CallSite> callSite = _callSiteGetters.Get(name); object result = callSite.Target(callSite, dynamicProvider); if (!ReferenceEquals(result, NoThrowExpressionVisitor.ErrorResult)) { value = result; return true; } else { value = null; return false; } } internal bool TrySetMember(IDynamicMetaObjectProvider dynamicProvider, string name, object value) { ValidationUtils.ArgumentNotNull(dynamicProvider, "dynamicProvider"); CallSite> callSite = _callSiteSetters.Get(name); object result = callSite.Target(callSite, dynamicProvider, value); return !ReferenceEquals(result, NoThrowExpressionVisitor.ErrorResult); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonArrayContract.cs0000664000175000017500000002711712454416117030020 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Globalization; using System.Reflection; using Newtonsoft.Json.Utilities; using System.Collections; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Serialization { /// /// Contract details for a used by the . /// public class JsonArrayContract : JsonContainerContract { /// /// Gets the of the collection items. /// /// The of the collection items. public Type CollectionItemType { get; private set; } /// /// Gets a value indicating whether the collection type is a multidimensional array. /// /// true if the collection type is a multidimensional array; otherwise, false. public bool IsMultidimensionalArray { get; private set; } private readonly Type _genericCollectionDefinitionType; private Type _genericWrapperType; private ObjectConstructor _genericWrapperCreator; private Func _genericTemporaryCollectionCreator; internal bool IsArray { get; private set; } internal bool ShouldCreateWrapper { get; private set; } internal bool CanDeserialize { get; private set; } private readonly ConstructorInfo _parametrizedConstructor; private ObjectConstructor _parametrizedCreator; internal ObjectConstructor ParametrizedCreator { get { if (_parametrizedCreator == null) _parametrizedCreator = JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(_parametrizedConstructor); return _parametrizedCreator; } } internal bool HasParametrizedCreator { get { return _parametrizedCreator != null || _parametrizedConstructor != null; } } /// /// Initializes a new instance of the class. /// /// The underlying type for the contract. public JsonArrayContract(Type underlyingType) : base(underlyingType) { ContractType = JsonContractType.Array; IsArray = CreatedType.IsArray; bool canDeserialize; Type tempCollectionType; if (IsArray) { CollectionItemType = ReflectionUtils.GetCollectionItemType(UnderlyingType); IsReadOnlyOrFixedSize = true; _genericCollectionDefinitionType = typeof(List<>).MakeGenericType(CollectionItemType); canDeserialize = true; IsMultidimensionalArray = (IsArray && UnderlyingType.GetArrayRank() > 1); } else if (typeof(IList).IsAssignableFrom(underlyingType)) { if (ReflectionUtils.ImplementsGenericDefinition(underlyingType, typeof(ICollection<>), out _genericCollectionDefinitionType)) CollectionItemType = _genericCollectionDefinitionType.GetGenericArguments()[0]; else CollectionItemType = ReflectionUtils.GetCollectionItemType(underlyingType); if (underlyingType == typeof(IList)) CreatedType = typeof(List); if (CollectionItemType != null) _parametrizedConstructor = CollectionUtils.ResolveEnumerableCollectionConstructor(underlyingType, CollectionItemType); IsReadOnlyOrFixedSize = ReflectionUtils.InheritsGenericDefinition(underlyingType, typeof(ReadOnlyCollection<>)); canDeserialize = true; } else if (ReflectionUtils.ImplementsGenericDefinition(underlyingType, typeof(ICollection<>), out _genericCollectionDefinitionType)) { CollectionItemType = _genericCollectionDefinitionType.GetGenericArguments()[0]; if (ReflectionUtils.IsGenericDefinition(underlyingType, typeof(ICollection<>)) || ReflectionUtils.IsGenericDefinition(underlyingType, typeof(IList<>))) CreatedType = typeof(List<>).MakeGenericType(CollectionItemType); #if !(NET20 || NET35 || PORTABLE40) if (ReflectionUtils.IsGenericDefinition(underlyingType, typeof(ISet<>))) CreatedType = typeof(HashSet<>).MakeGenericType(CollectionItemType); #endif _parametrizedConstructor = CollectionUtils.ResolveEnumerableCollectionConstructor(underlyingType, CollectionItemType); canDeserialize = true; ShouldCreateWrapper = true; } #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (ReflectionUtils.ImplementsGenericDefinition(underlyingType, typeof(IReadOnlyCollection<>), out tempCollectionType)) { CollectionItemType = tempCollectionType.GetGenericArguments()[0]; if (ReflectionUtils.IsGenericDefinition(underlyingType, typeof(IReadOnlyCollection<>)) || ReflectionUtils.IsGenericDefinition(underlyingType, typeof(IReadOnlyList<>))) CreatedType = typeof(ReadOnlyCollection<>).MakeGenericType(CollectionItemType); _genericCollectionDefinitionType = typeof(List<>).MakeGenericType(CollectionItemType); _parametrizedConstructor = CollectionUtils.ResolveEnumerableCollectionConstructor(CreatedType, CollectionItemType); IsReadOnlyOrFixedSize = true; canDeserialize = HasParametrizedCreator; } #endif else if (ReflectionUtils.ImplementsGenericDefinition(underlyingType, typeof(IEnumerable<>), out tempCollectionType)) { CollectionItemType = tempCollectionType.GetGenericArguments()[0]; if (ReflectionUtils.IsGenericDefinition(UnderlyingType, typeof(IEnumerable<>))) CreatedType = typeof(List<>).MakeGenericType(CollectionItemType); _parametrizedConstructor = CollectionUtils.ResolveEnumerableCollectionConstructor(underlyingType, CollectionItemType); #if !(NET35 || NET20 || NETFX_CORE) if (!HasParametrizedCreator && underlyingType.Name == FSharpUtils.FSharpListTypeName) { FSharpUtils.EnsureInitialized(underlyingType.Assembly()); _parametrizedCreator = FSharpUtils.CreateSeq(CollectionItemType); } #endif if (underlyingType.IsGenericType() && underlyingType.GetGenericTypeDefinition() == typeof(IEnumerable<>)) { _genericCollectionDefinitionType = tempCollectionType; IsReadOnlyOrFixedSize = false; ShouldCreateWrapper = false; canDeserialize = true; } else { _genericCollectionDefinitionType = typeof(List<>).MakeGenericType(CollectionItemType); IsReadOnlyOrFixedSize = true; ShouldCreateWrapper = true; canDeserialize = HasParametrizedCreator; } } else { // types that implement IEnumerable and nothing else canDeserialize = false; ShouldCreateWrapper = true; } CanDeserialize = canDeserialize; #if (NET20 || NET35) if (CollectionItemType != null && ReflectionUtils.IsNullableType(CollectionItemType)) { // bug in .NET 2.0 & 3.5 that List> throws an error when adding null via IList.Add(object) // wrapper will handle calling Add(T) instead if (ReflectionUtils.InheritsGenericDefinition(CreatedType, typeof(List<>), out tempCollectionType) || (IsArray && !IsMultidimensionalArray)) { ShouldCreateWrapper = true; } } #endif #if !(NET20 || NET35 || NET40 || PORTABLE40) Type immutableCreatedType; ObjectConstructor immutableParameterizedCreator; if (ImmutableCollectionsUtils.TryBuildImmutableForArrayContract(underlyingType, CollectionItemType, out immutableCreatedType, out immutableParameterizedCreator)) { CreatedType = immutableCreatedType; _parametrizedCreator = immutableParameterizedCreator; IsReadOnlyOrFixedSize = true; CanDeserialize = true; } #endif } internal IWrappedCollection CreateWrapper(object list) { if (_genericWrapperCreator == null) { _genericWrapperType = typeof(CollectionWrapper<>).MakeGenericType(CollectionItemType); Type constructorArgument; if (ReflectionUtils.InheritsGenericDefinition(_genericCollectionDefinitionType, typeof(List<>)) || _genericCollectionDefinitionType.GetGenericTypeDefinition() == typeof(IEnumerable<>)) constructorArgument = typeof(ICollection<>).MakeGenericType(CollectionItemType); else constructorArgument = _genericCollectionDefinitionType; ConstructorInfo genericWrapperConstructor = _genericWrapperType.GetConstructor(new[] { constructorArgument }); _genericWrapperCreator = JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(genericWrapperConstructor); } return (IWrappedCollection)_genericWrapperCreator(list); } internal IList CreateTemporaryCollection() { if (_genericTemporaryCollectionCreator == null) { // multidimensional array will also have array instances in it Type collectionItemType = (IsMultidimensionalArray) ? typeof(object) : CollectionItemType; Type temporaryListType = typeof(List<>).MakeGenericType(collectionItemType); _genericTemporaryCollectionCreator = JsonTypeReflector.ReflectionDelegateFactory.CreateDefaultConstructor(temporaryListType); } return (IList)_genericTemporaryCollectionCreator(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/IReferenceResolver.cs0000664000175000017500000000556112454416117030142 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Serialization { /// /// Used to resolve references when serializing and deserializing JSON by the . /// public interface IReferenceResolver { /// /// Resolves a reference to its object. /// /// The serialization context. /// The reference to resolve. /// The object that object ResolveReference(object context, string reference); /// /// Gets the reference for the sepecified object. /// /// The serialization context. /// The object to get a reference for. /// The reference to the object. string GetReference(object context, object value); /// /// Determines whether the specified object is referenced. /// /// The serialization context. /// The object to test for a reference. /// /// true if the specified object is referenced; otherwise, false. /// bool IsReferenced(object context, object value); /// /// Adds a reference to the specified object. /// /// The serialization context. /// The reference. /// The object to reference. void AddReference(object context, string reference, object value); } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/DefaultSerializationBinder.cs0000664000175000017500000001442612454416117031657 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Runtime.Serialization; using System.Reflection; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Serialization { /// /// The default serialization binder used when resolving and loading classes from type names. /// public class DefaultSerializationBinder : SerializationBinder { internal static readonly DefaultSerializationBinder Instance = new DefaultSerializationBinder(); private readonly ThreadSafeStore _typeCache = new ThreadSafeStore(GetTypeFromTypeNameKey); private static Type GetTypeFromTypeNameKey(TypeNameKey typeNameKey) { string assemblyName = typeNameKey.AssemblyName; string typeName = typeNameKey.TypeName; if (assemblyName != null) { Assembly assembly; #if !(NETFX_CORE || PORTABLE40 || PORTABLE) // look, I don't like using obsolete methods as much as you do but this is the only way // Assembly.Load won't check the GAC for a partial name #pragma warning disable 618,612 assembly = Assembly.LoadWithPartialName(assemblyName); #pragma warning restore 618,612 #elif NETFX_CORE || PORTABLE assembly = Assembly.Load(new AssemblyName(assemblyName)); #else assembly = Assembly.Load(assemblyName); #endif #if !(PORTABLE40 || PORTABLE || NETFX_CORE) if (assembly == null) { // will find assemblies loaded with Assembly.LoadFile outside of the main directory Assembly[] loadedAssemblies = AppDomain.CurrentDomain.GetAssemblies(); foreach (Assembly a in loadedAssemblies) { if (a.FullName == assemblyName) { assembly = a; break; } } } #endif if (assembly == null) throw new JsonSerializationException("Could not load assembly '{0}'.".FormatWith(CultureInfo.InvariantCulture, assemblyName)); Type type = assembly.GetType(typeName); if (type == null) throw new JsonSerializationException("Could not find type '{0}' in assembly '{1}'.".FormatWith(CultureInfo.InvariantCulture, typeName, assembly.FullName)); return type; } else { return Type.GetType(typeName); } } internal struct TypeNameKey : IEquatable { internal readonly string AssemblyName; internal readonly string TypeName; public TypeNameKey(string assemblyName, string typeName) { AssemblyName = assemblyName; TypeName = typeName; } public override int GetHashCode() { return ((AssemblyName != null) ? AssemblyName.GetHashCode() : 0) ^ ((TypeName != null) ? TypeName.GetHashCode() : 0); } public override bool Equals(object obj) { if (!(obj is TypeNameKey)) return false; return Equals((TypeNameKey)obj); } public bool Equals(TypeNameKey other) { return (AssemblyName == other.AssemblyName && TypeName == other.TypeName); } } /// /// When overridden in a derived class, controls the binding of a serialized object to a type. /// /// Specifies the name of the serialized object. /// Specifies the name of the serialized object. /// /// The type of the object the formatter creates a new instance of. /// public override Type BindToType(string assemblyName, string typeName) { return _typeCache.Get(new TypeNameKey(assemblyName, typeName)); } #if !(NET35 || NET20) /// /// When overridden in a derived class, controls the binding of a serialized object to a type. /// /// The type of the object the formatter creates a new instance of. /// Specifies the name of the serialized object. /// Specifies the name of the serialized object. public override void BindToName(Type serializedType, out string assemblyName, out string typeName) { #if NETFX_CORE || PORTABLE assemblyName = serializedType.GetTypeInfo().Assembly.FullName; typeName = serializedType.FullName; #else assemblyName = serializedType.Assembly.FullName; typeName = serializedType.FullName; #endif } #endif } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/ErrorContext.cs0000664000175000017500000000527712454416117027053 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Serialization { /// /// Provides information surrounding an error. /// public class ErrorContext { internal ErrorContext(object originalObject, object member, string path, Exception error) { OriginalObject = originalObject; Member = member; Error = error; Path = path; } internal bool Traced { get; set; } /// /// Gets the error. /// /// The error. public Exception Error { get; private set; } /// /// Gets the original object that caused the error. /// /// The original object that caused the error. public object OriginalObject { get; private set; } /// /// Gets the member that caused the error. /// /// The member that caused the error. public object Member { get; private set; } /// /// Gets the path of the JSON location where the error occurred. /// /// The path of the JSON location where the error occurred. public string Path { get; private set; } /// /// Gets or sets a value indicating whether this is handled. /// /// true if handled; otherwise, false. public bool Handled { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonFormatterConverter.cs0000664000175000017500000001111112454416117031062 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE40 || PORTABLE) using System; using System.Globalization; using System.Runtime.Serialization; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Serialization { internal class JsonFormatterConverter : IFormatterConverter { private readonly JsonSerializerInternalReader _reader; private readonly JsonISerializableContract _contract; private readonly JsonProperty _member; public JsonFormatterConverter(JsonSerializerInternalReader reader, JsonISerializableContract contract, JsonProperty member) { ValidationUtils.ArgumentNotNull(reader, "serializer"); ValidationUtils.ArgumentNotNull(contract, "contract"); _reader = reader; _contract = contract; _member = member; } private T GetTokenValue(object value) { ValidationUtils.ArgumentNotNull(value, "value"); JValue v = (JValue)value; return (T)System.Convert.ChangeType(v.Value, typeof(T), CultureInfo.InvariantCulture); } public object Convert(object value, Type type) { ValidationUtils.ArgumentNotNull(value, "value"); JToken token = value as JToken; if (token == null) throw new ArgumentException("Value is not a JToken.", "value"); return _reader.CreateISerializableItem(token, type, _contract, _member); } public object Convert(object value, TypeCode typeCode) { ValidationUtils.ArgumentNotNull(value, "value"); if (value is JValue) value = ((JValue)value).Value; return System.Convert.ChangeType(value, typeCode, CultureInfo.InvariantCulture); } public bool ToBoolean(object value) { return GetTokenValue(value); } public byte ToByte(object value) { return GetTokenValue(value); } public char ToChar(object value) { return GetTokenValue(value); } public DateTime ToDateTime(object value) { return GetTokenValue(value); } public decimal ToDecimal(object value) { return GetTokenValue(value); } public double ToDouble(object value) { return GetTokenValue(value); } public short ToInt16(object value) { return GetTokenValue(value); } public int ToInt32(object value) { return GetTokenValue(value); } public long ToInt64(object value) { return GetTokenValue(value); } public sbyte ToSByte(object value) { return GetTokenValue(value); } public float ToSingle(object value) { return GetTokenValue(value); } public string ToString(object value) { return GetTokenValue(value); } public ushort ToUInt16(object value) { return GetTokenValue(value); } public uint ToUInt32(object value) { return GetTokenValue(value); } public ulong ToUInt64(object value) { return GetTokenValue(value); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/ReflectionAttributeProvider.cs0000664000175000017500000000614612454416117032102 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Reflection; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Serialization { /// /// Provides methods to get attributes from a , , or . /// public class ReflectionAttributeProvider : IAttributeProvider { private readonly object _attributeProvider; /// /// Initializes a new instance of the class. /// public ReflectionAttributeProvider(object attributeProvider) { ValidationUtils.ArgumentNotNull(attributeProvider, "attributeProvider"); _attributeProvider = attributeProvider; } /// /// Returns a collection of all of the attributes, or an empty collection if there are no attributes. /// /// When true, look up the hierarchy chain for the inherited custom attribute. /// A collection of s, or an empty collection. public IList GetAttributes(bool inherit) { return ReflectionUtils.GetAttributes(_attributeProvider, null, inherit); } /// /// Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. /// /// The type of the attributes. /// When true, look up the hierarchy chain for the inherited custom attribute. /// A collection of s, or an empty collection. public IList GetAttributes(Type attributeType, bool inherit) { return ReflectionUtils.GetAttributes(_attributeProvider, attributeType, inherit); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonPrimitiveContract.cs0000664000175000017500000000371212454416117030705 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Serialization { /// /// Contract details for a used by the . /// public class JsonPrimitiveContract : JsonContract { internal PrimitiveTypeCode TypeCode { get; set; } /// /// Initializes a new instance of the class. /// /// The underlying type for the contract. public JsonPrimitiveContract(Type underlyingType) : base(underlyingType) { ContractType = JsonContractType.Primitive; TypeCode = ConvertUtils.GetTypeCode(underlyingType); IsReadOnlyOrFixedSize = true; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonContainerContract.cs0000664000175000017500000001105612454416117030657 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Reflection; using Newtonsoft.Json.Utilities; using System.Collections; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Serialization { /// /// Contract details for a used by the . /// public class JsonContainerContract : JsonContract { private JsonContract _itemContract; private JsonContract _finalItemContract; // will be null for containers that don't have an item type (e.g. IList) or for complex objects internal JsonContract ItemContract { get { return _itemContract; } set { _itemContract = value; if (_itemContract != null) { _finalItemContract = (_itemContract.UnderlyingType.IsSealed()) ? _itemContract : null; } else { _finalItemContract = null; } } } // the final (i.e. can't be inherited from like a sealed class or valuetype) item contract internal JsonContract FinalItemContract { get { return _finalItemContract; } } /// /// Gets or sets the default collection items . /// /// The converter. public JsonConverter ItemConverter { get; set; } /// /// Gets or sets a value indicating whether the collection items preserve object references. /// /// true if collection items preserve object references; otherwise, false. public bool? ItemIsReference { get; set; } /// /// Gets or sets the collection item reference loop handling. /// /// The reference loop handling. public ReferenceLoopHandling? ItemReferenceLoopHandling { get; set; } /// /// Gets or sets the collection item type name handling. /// /// The type name handling. public TypeNameHandling? ItemTypeNameHandling { get; set; } /// /// Initializes a new instance of the class. /// /// The underlying type for the contract. internal JsonContainerContract(Type underlyingType) : base(underlyingType) { JsonContainerAttribute jsonContainerAttribute = JsonTypeReflector.GetCachedAttribute(underlyingType); if (jsonContainerAttribute != null) { if (jsonContainerAttribute.ItemConverterType != null) ItemConverter = JsonTypeReflector.CreateJsonConverterInstance(jsonContainerAttribute.ItemConverterType, jsonContainerAttribute.ItemConverterParameters); ItemIsReference = jsonContainerAttribute._itemIsReference; ItemReferenceLoopHandling = jsonContainerAttribute._itemReferenceLoopHandling; ItemTypeNameHandling = jsonContainerAttribute._itemTypeNameHandling; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/JsonSerializerInternalReader.cs0000664000175000017500000031420612454416117032173 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; #if !(NET35 || NET20 || PORTABLE40) using System.ComponentModel; using System.Dynamic; #endif using System.Diagnostics; using System.Globalization; #if !(PORTABLE || PORTABLE40 || NET35 || NET20) using System.Numerics; #endif using System.Reflection; using System.Runtime.Serialization; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Serialization { internal class JsonSerializerInternalReader : JsonSerializerInternalBase { internal enum PropertyPresence { None = 0, Null = 1, Value = 2 } private JsonSerializerProxy _internalSerializer; public JsonSerializerInternalReader(JsonSerializer serializer) : base(serializer) { } public void Populate(JsonReader reader, object target) { ValidationUtils.ArgumentNotNull(target, "target"); Type objectType = target.GetType(); JsonContract contract = Serializer._contractResolver.ResolveContract(objectType); if (reader.TokenType == JsonToken.None) reader.Read(); if (reader.TokenType == JsonToken.StartArray) { if (contract.ContractType == JsonContractType.Array) { JsonArrayContract arrayContract = (JsonArrayContract)contract; PopulateList((arrayContract.ShouldCreateWrapper) ? arrayContract.CreateWrapper(target) : (IList)target, reader, arrayContract, null, null); } else { throw JsonSerializationException.Create(reader, "Cannot populate JSON array onto type '{0}'.".FormatWith(CultureInfo.InvariantCulture, objectType)); } } else if (reader.TokenType == JsonToken.StartObject) { CheckedRead(reader); string id = null; if (Serializer.MetadataPropertyHandling != MetadataPropertyHandling.Ignore && reader.TokenType == JsonToken.PropertyName && string.Equals(reader.Value.ToString(), JsonTypeReflector.IdPropertyName, StringComparison.Ordinal)) { CheckedRead(reader); id = (reader.Value != null) ? reader.Value.ToString() : null; CheckedRead(reader); } if (contract.ContractType == JsonContractType.Dictionary) { JsonDictionaryContract dictionaryContract = (JsonDictionaryContract)contract; PopulateDictionary((dictionaryContract.ShouldCreateWrapper) ? dictionaryContract.CreateWrapper(target) : (IDictionary)target, reader, dictionaryContract, null, id); } else if (contract.ContractType == JsonContractType.Object) { PopulateObject(target, reader, (JsonObjectContract)contract, null, id); } else { throw JsonSerializationException.Create(reader, "Cannot populate JSON object onto type '{0}'.".FormatWith(CultureInfo.InvariantCulture, objectType)); } } else { throw JsonSerializationException.Create(reader, "Unexpected initial token '{0}' when populating object. Expected JSON object or array.".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); } } private JsonContract GetContractSafe(Type type) { if (type == null) return null; return Serializer._contractResolver.ResolveContract(type); } public object Deserialize(JsonReader reader, Type objectType, bool checkAdditionalContent) { if (reader == null) throw new ArgumentNullException("reader"); JsonContract contract = GetContractSafe(objectType); try { JsonConverter converter = GetConverter(contract, null, null, null); if (reader.TokenType == JsonToken.None && !ReadForType(reader, contract, converter != null)) { if (contract != null && !contract.IsNullable) throw JsonSerializationException.Create(reader, "No JSON content found and type '{0}' is not nullable.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); return null; } object deserializedValue; if (converter != null && converter.CanRead) deserializedValue = DeserializeConvertable(converter, reader, objectType, null); else deserializedValue = CreateValueInternal(reader, objectType, contract, null, null, null, null); if (checkAdditionalContent) { if (reader.Read() && reader.TokenType != JsonToken.Comment) throw new JsonSerializationException("Additional text found in JSON string after finishing deserializing object."); } return deserializedValue; } catch (Exception ex) { if (IsErrorHandled(null, contract, null, reader as IJsonLineInfo, reader.Path, ex)) { HandleError(reader, false, 0); return null; } else { // clear context in case serializer is being used inside a converter // if the converter wraps the error then not clearing the context will cause this error: // "Current error context error is different to requested error." ClearErrorContext(); throw; } } } private JsonSerializerProxy GetInternalSerializer() { if (_internalSerializer == null) _internalSerializer = new JsonSerializerProxy(this); return _internalSerializer; } private JToken CreateJToken(JsonReader reader, JsonContract contract) { ValidationUtils.ArgumentNotNull(reader, "reader"); if (contract != null) { if (contract.UnderlyingType == typeof(JRaw)) return JRaw.Create(reader); if (reader.TokenType == JsonToken.Null && !(contract.UnderlyingType == typeof(JValue) || contract.UnderlyingType == typeof(JToken))) return null; } JToken token; using (JTokenWriter writer = new JTokenWriter()) { writer.WriteToken(reader); token = writer.Token; } return token; } private JToken CreateJObject(JsonReader reader) { ValidationUtils.ArgumentNotNull(reader, "reader"); // this is needed because we've already read inside the object, looking for metadata properties using (JTokenWriter writer = new JTokenWriter()) { writer.WriteStartObject(); do { if (reader.TokenType == JsonToken.PropertyName) { string propertyName = (string)reader.Value; do { if (!reader.Read()) break; } while (reader.TokenType == JsonToken.Comment); if (CheckPropertyName(reader, propertyName)) continue; writer.WritePropertyName(propertyName); writer.WriteToken(reader, true, true); } else if (reader.TokenType == JsonToken.Comment) { // eat } else { writer.WriteEndObject(); return writer.Token; } } while (reader.Read()); throw JsonSerializationException.Create(reader, "Unexpected end when deserializing object."); } } private object CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, object existingValue) { if (contract != null && contract.ContractType == JsonContractType.Linq) return CreateJToken(reader, contract); do { switch (reader.TokenType) { // populate a typed object or generic dictionary/array // depending upon whether an objectType was supplied case JsonToken.StartObject: return CreateObject(reader, objectType, contract, member, containerContract, containerMember, existingValue); case JsonToken.StartArray: return CreateList(reader, objectType, contract, member, existingValue, null); case JsonToken.Integer: case JsonToken.Float: case JsonToken.Boolean: case JsonToken.Date: case JsonToken.Bytes: return EnsureType(reader, reader.Value, CultureInfo.InvariantCulture, contract, objectType); case JsonToken.String: string s = (string)reader.Value; // convert empty string to null automatically for nullable types if (string.IsNullOrEmpty(s) && objectType != typeof(string) && objectType != typeof(object) && contract != null && contract.IsNullable) return null; // string that needs to be returned as a byte array should be base 64 decoded if (objectType == typeof(byte[])) return Convert.FromBase64String(s); return EnsureType(reader, s, CultureInfo.InvariantCulture, contract, objectType); case JsonToken.StartConstructor: string constructorName = reader.Value.ToString(); return EnsureType(reader, constructorName, CultureInfo.InvariantCulture, contract, objectType); case JsonToken.Null: case JsonToken.Undefined: #if !(NETFX_CORE || PORTABLE40 || PORTABLE) if (objectType == typeof(DBNull)) return DBNull.Value; #endif return EnsureType(reader, reader.Value, CultureInfo.InvariantCulture, contract, objectType); case JsonToken.Raw: return new JRaw((string)reader.Value); case JsonToken.Comment: // ignore break; default: throw JsonSerializationException.Create(reader, "Unexpected token while deserializing object: " + reader.TokenType); } } while (reader.Read()); throw JsonSerializationException.Create(reader, "Unexpected end when deserializing object."); } internal string GetExpectedDescription(JsonContract contract) { switch (contract.ContractType) { case JsonContractType.Object: case JsonContractType.Dictionary: #if !(NETFX_CORE || PORTABLE || PORTABLE40) case JsonContractType.Serializable: #endif #if !(NET35 || NET20 || PORTABLE40) case JsonContractType.Dynamic: #endif return @"JSON object (e.g. {""name"":""value""})"; case JsonContractType.Array: return @"JSON array (e.g. [1,2,3])"; case JsonContractType.Primitive: return @"JSON primitive value (e.g. string, number, boolean, null)"; case JsonContractType.String: return @"JSON string value"; default: throw new ArgumentOutOfRangeException(); } } private JsonConverter GetConverter(JsonContract contract, JsonConverter memberConverter, JsonContainerContract containerContract, JsonProperty containerProperty) { JsonConverter converter = null; if (memberConverter != null) { // member attribute converter converter = memberConverter; } else if (containerProperty != null && containerProperty.ItemConverter != null) { converter = containerProperty.ItemConverter; } else if (containerContract != null && containerContract.ItemConverter != null) { converter = containerContract.ItemConverter; } else if (contract != null) { JsonConverter matchingConverter; if (contract.Converter != null) // class attribute converter converter = contract.Converter; else if ((matchingConverter = Serializer.GetMatchingConverter(contract.UnderlyingType)) != null) // passed in converters converter = matchingConverter; else if (contract.InternalConverter != null) // internally specified converter converter = contract.InternalConverter; } return converter; } private object CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, object existingValue) { string id; Type resolvedObjectType = objectType; if (Serializer.MetadataPropertyHandling == MetadataPropertyHandling.Ignore) { // don't look for metadata properties CheckedRead(reader); id = null; } else if (Serializer.MetadataPropertyHandling == MetadataPropertyHandling.ReadAhead) { var tokenReader = reader as JTokenReader; if (tokenReader == null) { JToken t = JToken.ReadFrom(reader); tokenReader = (JTokenReader)t.CreateReader(); tokenReader.Culture = reader.Culture; tokenReader.DateFormatString = reader.DateFormatString; tokenReader.DateParseHandling = reader.DateParseHandling; tokenReader.DateTimeZoneHandling = reader.DateTimeZoneHandling; tokenReader.FloatParseHandling = reader.FloatParseHandling; tokenReader.SupportMultipleContent = reader.SupportMultipleContent; // start CheckedRead(tokenReader); reader = tokenReader; } object newValue; if (ReadMetadataPropertiesToken(tokenReader, ref resolvedObjectType, ref contract, member, containerContract, containerMember, existingValue, out newValue, out id)) return newValue; } else { CheckedRead(reader); object newValue; if (ReadMetadataProperties(reader, ref resolvedObjectType, ref contract, member, containerContract, containerMember, existingValue, out newValue, out id)) return newValue; } if (HasNoDefinedType(contract)) return CreateJObject(reader); switch (contract.ContractType) { case JsonContractType.Object: { bool createdFromNonDefaultCreator = false; JsonObjectContract objectContract = (JsonObjectContract)contract; object targetObject; // check that if type name handling is being used that the existing value is compatible with the specified type if (existingValue != null && (resolvedObjectType == objectType || resolvedObjectType.IsAssignableFrom(existingValue.GetType()))) targetObject = existingValue; else targetObject = CreateNewObject(reader, objectContract, member, containerMember, id, out createdFromNonDefaultCreator); // don't populate if read from non-default creator because the object has already been read if (createdFromNonDefaultCreator) return targetObject; return PopulateObject(targetObject, reader, objectContract, member, id); } case JsonContractType.Primitive: { JsonPrimitiveContract primitiveContract = (JsonPrimitiveContract)contract; // if the content is inside $value then read past it if (Serializer.MetadataPropertyHandling != MetadataPropertyHandling.Ignore && reader.TokenType == JsonToken.PropertyName && string.Equals(reader.Value.ToString(), JsonTypeReflector.ValuePropertyName, StringComparison.Ordinal)) { CheckedRead(reader); // the token should not be an object because the $type value could have been included in the object // without needing the $value property if (reader.TokenType == JsonToken.StartObject) throw JsonSerializationException.Create(reader, "Unexpected token when deserializing primitive value: " + reader.TokenType); object value = CreateValueInternal(reader, resolvedObjectType, primitiveContract, member, null, null, existingValue); CheckedRead(reader); return value; } break; } case JsonContractType.Dictionary: { JsonDictionaryContract dictionaryContract = (JsonDictionaryContract)contract; object targetDictionary; if (existingValue == null) { bool createdFromNonDefaultCreator; IDictionary dictionary = CreateNewDictionary(reader, dictionaryContract, out createdFromNonDefaultCreator); if (createdFromNonDefaultCreator) { if (id != null) throw JsonSerializationException.Create(reader, "Cannot preserve reference to readonly dictionary, or dictionary created from a non-default constructor: {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); if (contract.OnSerializingCallbacks.Count > 0) throw JsonSerializationException.Create(reader, "Cannot call OnSerializing on readonly dictionary, or dictionary created from a non-default constructor: {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); if (contract.OnErrorCallbacks.Count > 0) throw JsonSerializationException.Create(reader, "Cannot call OnError on readonly list, or dictionary created from a non-default constructor: {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); if (!dictionaryContract.HasParametrizedCreator) throw JsonSerializationException.Create(reader, "Cannot deserialize readonly or fixed size dictionary: {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); } PopulateDictionary(dictionary, reader, dictionaryContract, member, id); if (createdFromNonDefaultCreator) { return dictionaryContract.ParametrizedCreator(dictionary); } else if (dictionary is IWrappedDictionary) { return ((IWrappedDictionary)dictionary).UnderlyingDictionary; } targetDictionary = dictionary; } else { targetDictionary = PopulateDictionary(dictionaryContract.ShouldCreateWrapper ? dictionaryContract.CreateWrapper(existingValue) : (IDictionary)existingValue, reader, dictionaryContract, member, id); } return targetDictionary; } #if !(NET35 || NET20 || PORTABLE40) case JsonContractType.Dynamic: JsonDynamicContract dynamicContract = (JsonDynamicContract)contract; return CreateDynamic(reader, dynamicContract, member, id); #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) case JsonContractType.Serializable: JsonISerializableContract serializableContract = (JsonISerializableContract)contract; return CreateISerializable(reader, serializableContract, member, id); #endif } string message = @"Cannot deserialize the current JSON object (e.g. {{""name"":""value""}}) into type '{0}' because the type requires a {1} to deserialize correctly." + Environment.NewLine + @"To fix this error either change the JSON to a {1} or change the deserialized type so that it is a normal .NET type (e.g. not a primitive type like integer, not a collection type like an array or List) that can be deserialized from a JSON object. JsonObjectAttribute can also be added to the type to force it to deserialize from a JSON object." + Environment.NewLine; message = message.FormatWith(CultureInfo.InvariantCulture, resolvedObjectType, GetExpectedDescription(contract)); throw JsonSerializationException.Create(reader, message); } private bool ReadMetadataPropertiesToken(JTokenReader reader, ref Type objectType, ref JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, object existingValue, out object newValue, out string id) { id = null; newValue = null; if (reader.TokenType == JsonToken.StartObject) { JObject current = (JObject)reader.CurrentToken; JToken refToken = current[JsonTypeReflector.RefPropertyName]; if (refToken != null) { if (refToken.Type != JTokenType.String && refToken.Type != JTokenType.Null) throw JsonSerializationException.Create(refToken, refToken.Path, "JSON reference {0} property must have a string or null value.".FormatWith(CultureInfo.InvariantCulture, JsonTypeReflector.RefPropertyName), null); JToken property = refToken.Parent; JToken additionalContent = null; if (property.Next != null) additionalContent = property.Next; else if (property.Previous != null) additionalContent = property.Previous; string reference = (string)refToken; if (reference != null) { if (additionalContent != null) throw JsonSerializationException.Create(additionalContent, additionalContent.Path, "Additional content found in JSON reference object. A JSON reference object should only have a {0} property.".FormatWith(CultureInfo.InvariantCulture, JsonTypeReflector.RefPropertyName), null); newValue = Serializer.GetReferenceResolver().ResolveReference(this, reference); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Resolved object reference '{0}' to {1}.".FormatWith(CultureInfo.InvariantCulture, reference, newValue.GetType())), null); reader.Skip(); return true; } } JToken typeToken = current[JsonTypeReflector.TypePropertyName]; if (typeToken != null) { string qualifiedTypeName = (string)typeToken; JsonReader typeTokenReader = typeToken.CreateReader(); CheckedRead(typeTokenReader); ResolveTypeName(typeTokenReader, ref objectType, ref contract, member, containerContract, containerMember, qualifiedTypeName); JToken valueToken = current[JsonTypeReflector.ValuePropertyName]; if (valueToken != null) { while (true) { CheckedRead(reader); if (reader.TokenType == JsonToken.PropertyName) { if ((string)reader.Value == JsonTypeReflector.ValuePropertyName) return false; } CheckedRead(reader); reader.Skip(); } } } JToken idToken = current[JsonTypeReflector.IdPropertyName]; if (idToken != null) { id = (string)idToken; } JToken valuesToken = current[JsonTypeReflector.ArrayValuesPropertyName]; if (valuesToken != null) { JsonReader listReader = valuesToken.CreateReader(); CheckedRead(listReader); newValue = CreateList(listReader, objectType, contract, member, existingValue, id); reader.Skip(); return true; } } CheckedRead(reader); return false; } private bool ReadMetadataProperties(JsonReader reader, ref Type objectType, ref JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, object existingValue, out object newValue, out string id) { id = null; newValue = null; if (reader.TokenType == JsonToken.PropertyName) { string propertyName = reader.Value.ToString(); if (propertyName.Length > 0 && propertyName[0] == '$') { // read metadata properties // $type, $id, $ref, etc bool metadataProperty; do { propertyName = reader.Value.ToString(); if (string.Equals(propertyName, JsonTypeReflector.RefPropertyName, StringComparison.Ordinal)) { CheckedRead(reader); if (reader.TokenType != JsonToken.String && reader.TokenType != JsonToken.Null) throw JsonSerializationException.Create(reader, "JSON reference {0} property must have a string or null value.".FormatWith(CultureInfo.InvariantCulture, JsonTypeReflector.RefPropertyName)); string reference = (reader.Value != null) ? reader.Value.ToString() : null; CheckedRead(reader); if (reference != null) { if (reader.TokenType == JsonToken.PropertyName) throw JsonSerializationException.Create(reader, "Additional content found in JSON reference object. A JSON reference object should only have a {0} property.".FormatWith(CultureInfo.InvariantCulture, JsonTypeReflector.RefPropertyName)); newValue = Serializer.GetReferenceResolver().ResolveReference(this, reference); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Resolved object reference '{0}' to {1}.".FormatWith(CultureInfo.InvariantCulture, reference, newValue.GetType())), null); return true; } else { metadataProperty = true; } } else if (string.Equals(propertyName, JsonTypeReflector.TypePropertyName, StringComparison.Ordinal)) { CheckedRead(reader); string qualifiedTypeName = reader.Value.ToString(); ResolveTypeName(reader, ref objectType, ref contract, member, containerContract, containerMember, qualifiedTypeName); CheckedRead(reader); metadataProperty = true; } else if (string.Equals(propertyName, JsonTypeReflector.IdPropertyName, StringComparison.Ordinal)) { CheckedRead(reader); id = (reader.Value != null) ? reader.Value.ToString() : null; CheckedRead(reader); metadataProperty = true; } else if (string.Equals(propertyName, JsonTypeReflector.ArrayValuesPropertyName, StringComparison.Ordinal)) { CheckedRead(reader); object list = CreateList(reader, objectType, contract, member, existingValue, id); CheckedRead(reader); newValue = list; return true; } else { metadataProperty = false; } } while (metadataProperty && reader.TokenType == JsonToken.PropertyName); } } return false; } private void ResolveTypeName(JsonReader reader, ref Type objectType, ref JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, string qualifiedTypeName) { TypeNameHandling resolvedTypeNameHandling = ((member != null) ? member.TypeNameHandling : null) ?? ((containerContract != null) ? containerContract.ItemTypeNameHandling : null) ?? ((containerMember != null) ? containerMember.ItemTypeNameHandling : null) ?? Serializer._typeNameHandling; if (resolvedTypeNameHandling != TypeNameHandling.None) { string typeName; string assemblyName; ReflectionUtils.SplitFullyQualifiedTypeName(qualifiedTypeName, out typeName, out assemblyName); Type specifiedType; try { specifiedType = Serializer._binder.BindToType(assemblyName, typeName); } catch (Exception ex) { throw JsonSerializationException.Create(reader, "Error resolving type specified in JSON '{0}'.".FormatWith(CultureInfo.InvariantCulture, qualifiedTypeName), ex); } if (specifiedType == null) throw JsonSerializationException.Create(reader, "Type specified in JSON '{0}' was not resolved.".FormatWith(CultureInfo.InvariantCulture, qualifiedTypeName)); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Resolved type '{0}' to {1}.".FormatWith(CultureInfo.InvariantCulture, qualifiedTypeName, specifiedType)), null); if (objectType != null #if !(NET35 || NET20 || PORTABLE40) && objectType != typeof(IDynamicMetaObjectProvider) #endif && !objectType.IsAssignableFrom(specifiedType)) throw JsonSerializationException.Create(reader, "Type specified in JSON '{0}' is not compatible with '{1}'.".FormatWith(CultureInfo.InvariantCulture, specifiedType.AssemblyQualifiedName, objectType.AssemblyQualifiedName)); objectType = specifiedType; contract = GetContractSafe(specifiedType); } } private JsonArrayContract EnsureArrayContract(JsonReader reader, Type objectType, JsonContract contract) { if (contract == null) throw JsonSerializationException.Create(reader, "Could not resolve type '{0}' to a JsonContract.".FormatWith(CultureInfo.InvariantCulture, objectType)); JsonArrayContract arrayContract = contract as JsonArrayContract; if (arrayContract == null) { string message = @"Cannot deserialize the current JSON array (e.g. [1,2,3]) into type '{0}' because the type requires a {1} to deserialize correctly." + Environment.NewLine + @"To fix this error either change the JSON to a {1} or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array." + Environment.NewLine; message = message.FormatWith(CultureInfo.InvariantCulture, objectType, GetExpectedDescription(contract)); throw JsonSerializationException.Create(reader, message); } return arrayContract; } private void CheckedRead(JsonReader reader) { if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when deserializing object."); } private object CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, object existingValue, string id) { object value; if (HasNoDefinedType(contract)) return CreateJToken(reader, contract); JsonArrayContract arrayContract = EnsureArrayContract(reader, objectType, contract); if (existingValue == null) { bool createdFromNonDefaultCreator; IList list = CreateNewList(reader, arrayContract, out createdFromNonDefaultCreator); if (createdFromNonDefaultCreator) { if (id != null) throw JsonSerializationException.Create(reader, "Cannot preserve reference to array or readonly list, or list created from a non-default constructor: {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); if (contract.OnSerializingCallbacks.Count > 0) throw JsonSerializationException.Create(reader, "Cannot call OnSerializing on an array or readonly list, or list created from a non-default constructor: {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); if (contract.OnErrorCallbacks.Count > 0) throw JsonSerializationException.Create(reader, "Cannot call OnError on an array or readonly list, or list created from a non-default constructor: {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); if (!arrayContract.HasParametrizedCreator && !arrayContract.IsArray) throw JsonSerializationException.Create(reader, "Cannot deserialize readonly or fixed size list: {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); } if (!arrayContract.IsMultidimensionalArray) PopulateList(list, reader, arrayContract, member, id); else PopulateMultidimensionalArray(list, reader, arrayContract, member, id); if (createdFromNonDefaultCreator) { if (arrayContract.IsMultidimensionalArray) { list = CollectionUtils.ToMultidimensionalArray(list, arrayContract.CollectionItemType, contract.CreatedType.GetArrayRank()); } else if (arrayContract.IsArray) { Array a = Array.CreateInstance(arrayContract.CollectionItemType, list.Count); list.CopyTo(a, 0); list = a; } else { // call constructor that takes IEnumerable return arrayContract.ParametrizedCreator(list); } } else if (list is IWrappedCollection) { return ((IWrappedCollection)list).UnderlyingCollection; } value = list; } else { if (!arrayContract.CanDeserialize) throw JsonSerializationException.Create(reader, "Cannot populate list type {0}.".FormatWith(CultureInfo.InvariantCulture, contract.CreatedType)); value = PopulateList((arrayContract.ShouldCreateWrapper) ? arrayContract.CreateWrapper(existingValue) : (IList)existingValue, reader, arrayContract, member, id); } return value; } private bool HasNoDefinedType(JsonContract contract) { return (contract == null || contract.UnderlyingType == typeof(object) || contract.ContractType == JsonContractType.Linq #if !(NET35 || NET20 || PORTABLE40) || contract.UnderlyingType == typeof(IDynamicMetaObjectProvider) #endif ); } private object EnsureType(JsonReader reader, object value, CultureInfo culture, JsonContract contract, Type targetType) { if (targetType == null) return value; Type valueType = ReflectionUtils.GetObjectType(value); // type of value and type of target don't match // attempt to convert value's type to target's type if (valueType != targetType) { if (value == null && contract.IsNullable) return null; try { if (contract.IsConvertable) { JsonPrimitiveContract primitiveContract = (JsonPrimitiveContract)contract; if (contract.IsEnum) { if (value is string) return Enum.Parse(contract.NonNullableUnderlyingType, value.ToString(), true); if (ConvertUtils.IsInteger(primitiveContract.TypeCode)) return Enum.ToObject(contract.NonNullableUnderlyingType, value); } #if !(PORTABLE || PORTABLE40 || NET35 || NET20) if (value is BigInteger) return ConvertUtils.FromBigInteger((BigInteger)value, targetType); #endif // this won't work when converting to a custom IConvertible return Convert.ChangeType(value, contract.NonNullableUnderlyingType, culture); } return ConvertUtils.ConvertOrCast(value, culture, contract.NonNullableUnderlyingType); } catch (Exception ex) { throw JsonSerializationException.Create(reader, "Error converting value {0} to type '{1}'.".FormatWith(CultureInfo.InvariantCulture, MiscellaneousUtils.FormatValueForPrint(value), targetType), ex); } } return value; } private bool SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, object target) { object currentValue; bool useExistingValue; JsonContract propertyContract; bool gottenCurrentValue; if (CalculatePropertyDetails(property, ref propertyConverter, containerContract, containerProperty, reader, target, out useExistingValue, out currentValue, out propertyContract, out gottenCurrentValue)) return false; object value; if (propertyConverter != null && propertyConverter.CanRead) { if (!gottenCurrentValue && target != null && property.Readable) currentValue = property.ValueProvider.GetValue(target); value = DeserializeConvertable(propertyConverter, reader, property.PropertyType, currentValue); } else { value = CreateValueInternal(reader, property.PropertyType, propertyContract, property, containerContract, containerProperty, (useExistingValue) ? currentValue : null); } // always set the value if useExistingValue is false, // otherwise also set it if CreateValue returns a new value compared to the currentValue // this could happen because of a JsonConverter against the type if ((!useExistingValue || value != currentValue) && ShouldSetPropertyValue(property, value)) { property.ValueProvider.SetValue(target, value); if (property.SetIsSpecified != null) { if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "IsSpecified for property '{0}' on {1} set to true.".FormatWith(CultureInfo.InvariantCulture, property.PropertyName, property.DeclaringType)), null); property.SetIsSpecified(target, true); } return true; } // the value wasn't set be JSON was populated onto the existing value return useExistingValue; } private bool CalculatePropertyDetails(JsonProperty property, ref JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, object target, out bool useExistingValue, out object currentValue, out JsonContract propertyContract, out bool gottenCurrentValue) { currentValue = null; useExistingValue = false; propertyContract = null; gottenCurrentValue = false; if (property.Ignored) return true; JsonToken tokenType = reader.TokenType; if (property.PropertyContract == null) property.PropertyContract = GetContractSafe(property.PropertyType); ObjectCreationHandling objectCreationHandling = property.ObjectCreationHandling.GetValueOrDefault(Serializer._objectCreationHandling); if ((objectCreationHandling != ObjectCreationHandling.Replace) && (tokenType == JsonToken.StartArray || tokenType == JsonToken.StartObject) && property.Readable) { currentValue = property.ValueProvider.GetValue(target); gottenCurrentValue = true; if (currentValue != null) { propertyContract = GetContractSafe(currentValue.GetType()); useExistingValue = (!propertyContract.IsReadOnlyOrFixedSize && !propertyContract.UnderlyingType.IsValueType()); } } if (!property.Writable && !useExistingValue) return true; // test tokentype here because null might not be convertable to some types, e.g. ignoring null when applied to DateTime if (property.NullValueHandling.GetValueOrDefault(Serializer._nullValueHandling) == NullValueHandling.Ignore && tokenType == JsonToken.Null) return true; // test tokentype here because default value might not be convertable to actual type, e.g. default of "" for DateTime if (HasFlag(property.DefaultValueHandling.GetValueOrDefault(Serializer._defaultValueHandling), DefaultValueHandling.Ignore) && !HasFlag(property.DefaultValueHandling.GetValueOrDefault(Serializer._defaultValueHandling), DefaultValueHandling.Populate) && JsonTokenUtils.IsPrimitiveToken(tokenType) && MiscellaneousUtils.ValueEquals(reader.Value, property.GetResolvedDefaultValue())) return true; if (currentValue == null) { propertyContract = property.PropertyContract; } else { propertyContract = GetContractSafe(currentValue.GetType()); if (propertyContract != property.PropertyContract) propertyConverter = GetConverter(propertyContract, property.MemberConverter, containerContract, containerProperty); } return false; } private void AddReference(JsonReader reader, string id, object value) { try { if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Read object reference Id '{0}' for {1}.".FormatWith(CultureInfo.InvariantCulture, id, value.GetType())), null); Serializer.GetReferenceResolver().AddReference(this, id, value); } catch (Exception ex) { throw JsonSerializationException.Create(reader, "Error reading object reference '{0}'.".FormatWith(CultureInfo.InvariantCulture, id), ex); } } private bool HasFlag(DefaultValueHandling value, DefaultValueHandling flag) { return ((value & flag) == flag); } private bool ShouldSetPropertyValue(JsonProperty property, object value) { if (property.NullValueHandling.GetValueOrDefault(Serializer._nullValueHandling) == NullValueHandling.Ignore && value == null) return false; if (HasFlag(property.DefaultValueHandling.GetValueOrDefault(Serializer._defaultValueHandling), DefaultValueHandling.Ignore) && !HasFlag(property.DefaultValueHandling.GetValueOrDefault(Serializer._defaultValueHandling), DefaultValueHandling.Populate) && MiscellaneousUtils.ValueEquals(value, property.GetResolvedDefaultValue())) return false; if (!property.Writable) return false; return true; } private IList CreateNewList(JsonReader reader, JsonArrayContract contract, out bool createdFromNonDefaultCreator) { // some types like non-generic IEnumerable can be serialized but not deserialized if (!contract.CanDeserialize) throw JsonSerializationException.Create(reader, "Cannot create and populate list type {0}.".FormatWith(CultureInfo.InvariantCulture, contract.CreatedType)); if (contract.IsReadOnlyOrFixedSize) { createdFromNonDefaultCreator = true; IList list = contract.CreateTemporaryCollection(); if (contract.ShouldCreateWrapper) list = contract.CreateWrapper(list); return list; } else if (contract.DefaultCreator != null && (!contract.DefaultCreatorNonPublic || Serializer._constructorHandling == ConstructorHandling.AllowNonPublicDefaultConstructor)) { object list = contract.DefaultCreator(); if (contract.ShouldCreateWrapper) list = contract.CreateWrapper(list); createdFromNonDefaultCreator = false; return (IList)list; } else if (contract.HasParametrizedCreator) { createdFromNonDefaultCreator = true; return contract.CreateTemporaryCollection(); } else { if (!contract.IsInstantiable) throw JsonSerializationException.Create(reader, "Could not create an instance of type {0}. Type is an interface or abstract class and cannot be instantiated.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); throw JsonSerializationException.Create(reader, "Unable to find a constructor to use for type {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); } } private IDictionary CreateNewDictionary(JsonReader reader, JsonDictionaryContract contract, out bool createdFromNonDefaultCreator) { if (contract.IsReadOnlyOrFixedSize) { createdFromNonDefaultCreator = true; return contract.CreateTemporaryDictionary(); } else if (contract.DefaultCreator != null && (!contract.DefaultCreatorNonPublic || Serializer._constructorHandling == ConstructorHandling.AllowNonPublicDefaultConstructor)) { object dictionary = contract.DefaultCreator(); if (contract.ShouldCreateWrapper) dictionary = contract.CreateWrapper(dictionary); createdFromNonDefaultCreator = false; return (IDictionary)dictionary; } else if (contract.HasParametrizedCreator) { createdFromNonDefaultCreator = true; return contract.CreateTemporaryDictionary(); } else { if (!contract.IsInstantiable) throw JsonSerializationException.Create(reader, "Could not create an instance of type {0}. Type is an interface or abstract class and cannot be instantiated.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); throw JsonSerializationException.Create(reader, "Unable to find a default constructor to use for type {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); } } private void OnDeserializing(JsonReader reader, JsonContract contract, object value) { if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Started deserializing {0}".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)), null); contract.InvokeOnDeserializing(value, Serializer._context); } private void OnDeserialized(JsonReader reader, JsonContract contract, object value) { if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Finished deserializing {0}".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)), null); contract.InvokeOnDeserialized(value, Serializer._context); } private object PopulateDictionary(IDictionary dictionary, JsonReader reader, JsonDictionaryContract contract, JsonProperty containerProperty, string id) { IWrappedDictionary wrappedDictionary = dictionary as IWrappedDictionary; object underlyingDictionary = wrappedDictionary != null ? wrappedDictionary.UnderlyingDictionary : dictionary; if (id != null) AddReference(reader, id, underlyingDictionary); OnDeserializing(reader, contract, underlyingDictionary); int initialDepth = reader.Depth; if (contract.KeyContract == null) contract.KeyContract = GetContractSafe(contract.DictionaryKeyType); if (contract.ItemContract == null) contract.ItemContract = GetContractSafe(contract.DictionaryValueType); JsonConverter dictionaryValueConverter = contract.ItemConverter ?? GetConverter(contract.ItemContract, null, contract, containerProperty); PrimitiveTypeCode keyTypeCode = (contract.KeyContract is JsonPrimitiveContract) ? ((JsonPrimitiveContract)contract.KeyContract).TypeCode : PrimitiveTypeCode.Empty; bool finished = false; do { switch (reader.TokenType) { case JsonToken.PropertyName: object keyValue = reader.Value; if (CheckPropertyName(reader, keyValue.ToString())) continue; try { try { DateParseHandling dateParseHandling; switch (keyTypeCode) { case PrimitiveTypeCode.DateTime: case PrimitiveTypeCode.DateTimeNullable: dateParseHandling = DateParseHandling.DateTime; break; #if !NET20 case PrimitiveTypeCode.DateTimeOffset: case PrimitiveTypeCode.DateTimeOffsetNullable: dateParseHandling = DateParseHandling.DateTimeOffset; break; #endif default: dateParseHandling = DateParseHandling.None; break; } // this is for correctly reading ISO and MS formatted dictionary keys object dt; if (dateParseHandling != DateParseHandling.None && DateTimeUtils.TryParseDateTime(keyValue.ToString(), dateParseHandling, reader.DateTimeZoneHandling, reader.DateFormatString, reader.Culture, out dt)) keyValue = dt; else keyValue = EnsureType(reader, keyValue, CultureInfo.InvariantCulture, contract.KeyContract, contract.DictionaryKeyType); } catch (Exception ex) { throw JsonSerializationException.Create(reader, "Could not convert string '{0}' to dictionary key type '{1}'. Create a TypeConverter to convert from the string to the key type object.".FormatWith(CultureInfo.InvariantCulture, reader.Value, contract.DictionaryKeyType), ex); } if (!ReadForType(reader, contract.ItemContract, dictionaryValueConverter != null)) throw JsonSerializationException.Create(reader, "Unexpected end when deserializing object."); object itemValue; if (dictionaryValueConverter != null && dictionaryValueConverter.CanRead) itemValue = DeserializeConvertable(dictionaryValueConverter, reader, contract.DictionaryValueType, null); else itemValue = CreateValueInternal(reader, contract.DictionaryValueType, contract.ItemContract, null, contract, containerProperty, null); dictionary[keyValue] = itemValue; } catch (Exception ex) { if (IsErrorHandled(underlyingDictionary, contract, keyValue, reader as IJsonLineInfo, reader.Path, ex)) HandleError(reader, true, initialDepth); else throw; } break; case JsonToken.Comment: break; case JsonToken.EndObject: finished = true; break; default: throw JsonSerializationException.Create(reader, "Unexpected token when deserializing object: " + reader.TokenType); } } while (!finished && reader.Read()); if (!finished) ThrowUnexpectedEndException(reader, contract, underlyingDictionary, "Unexpected end when deserializing object."); OnDeserialized(reader, contract, underlyingDictionary); return underlyingDictionary; } private object PopulateMultidimensionalArray(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, string id) { int rank = contract.UnderlyingType.GetArrayRank(); if (id != null) AddReference(reader, id, list); OnDeserializing(reader, contract, list); JsonContract collectionItemContract = GetContractSafe(contract.CollectionItemType); JsonConverter collectionItemConverter = GetConverter(collectionItemContract, null, contract, containerProperty); int? previousErrorIndex = null; Stack listStack = new Stack(); listStack.Push(list); IList currentList = list; bool finished = false; do { int initialDepth = reader.Depth; if (listStack.Count == rank) { try { if (ReadForType(reader, collectionItemContract, collectionItemConverter != null)) { switch (reader.TokenType) { case JsonToken.EndArray: listStack.Pop(); currentList = listStack.Peek(); previousErrorIndex = null; break; case JsonToken.Comment: break; default: object value; if (collectionItemConverter != null && collectionItemConverter.CanRead) value = DeserializeConvertable(collectionItemConverter, reader, contract.CollectionItemType, null); else value = CreateValueInternal(reader, contract.CollectionItemType, collectionItemContract, null, contract, containerProperty, null); currentList.Add(value); break; } } else { break; } } catch (Exception ex) { JsonPosition errorPosition = reader.GetPosition(initialDepth); if (IsErrorHandled(list, contract, errorPosition.Position, reader as IJsonLineInfo, reader.Path, ex)) { HandleError(reader, true, initialDepth); if (previousErrorIndex != null && previousErrorIndex == errorPosition.Position) { // reader index has not moved since previous error handling // break out of reading array to prevent infinite loop throw JsonSerializationException.Create(reader, "Infinite loop detected from error handling.", ex); } else { previousErrorIndex = errorPosition.Position; } } else { throw; } } } else { if (reader.Read()) { switch (reader.TokenType) { case JsonToken.StartArray: IList newList = new List(); currentList.Add(newList); listStack.Push(newList); currentList = newList; break; case JsonToken.EndArray: listStack.Pop(); if (listStack.Count > 0) { currentList = listStack.Peek(); } else { finished = true; } break; case JsonToken.Comment: break; default: throw JsonSerializationException.Create(reader, "Unexpected token when deserializing multidimensional array: " + reader.TokenType); } } else { break; } } } while (!finished); if (!finished) ThrowUnexpectedEndException(reader, contract, list, "Unexpected end when deserializing array."); OnDeserialized(reader, contract, list); return list; } private void ThrowUnexpectedEndException(JsonReader reader, JsonContract contract, object currentObject, string message) { try { throw JsonSerializationException.Create(reader, message); } catch (Exception ex) { if (IsErrorHandled(currentObject, contract, null, reader as IJsonLineInfo, reader.Path, ex)) HandleError(reader, false, 0); else throw; } } private object PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, string id) { IWrappedCollection wrappedCollection = list as IWrappedCollection; object underlyingList = wrappedCollection != null ? wrappedCollection.UnderlyingCollection : list; if (id != null) AddReference(reader, id, underlyingList); // can't populate an existing array if (list.IsFixedSize) { reader.Skip(); return underlyingList; } OnDeserializing(reader, contract, underlyingList); int initialDepth = reader.Depth; if (contract.ItemContract == null) contract.ItemContract = GetContractSafe(contract.CollectionItemType); JsonConverter collectionItemConverter = GetConverter(contract.ItemContract, null, contract, containerProperty); int? previousErrorIndex = null; bool finished = false; do { try { if (ReadForType(reader, contract.ItemContract, collectionItemConverter != null)) { switch (reader.TokenType) { case JsonToken.EndArray: finished = true; break; case JsonToken.Comment: break; default: object value; if (collectionItemConverter != null && collectionItemConverter.CanRead) value = DeserializeConvertable(collectionItemConverter, reader, contract.CollectionItemType, null); else value = CreateValueInternal(reader, contract.CollectionItemType, contract.ItemContract, null, contract, containerProperty, null); list.Add(value); break; } } else { break; } } catch (Exception ex) { JsonPosition errorPosition = reader.GetPosition(initialDepth); if (IsErrorHandled(underlyingList, contract, errorPosition.Position, reader as IJsonLineInfo, reader.Path, ex)) { HandleError(reader, true, initialDepth); if (previousErrorIndex != null && previousErrorIndex == errorPosition.Position) { // reader index has not moved since previous error handling // break out of reading array to prevent infinite loop throw JsonSerializationException.Create(reader, "Infinite loop detected from error handling.", ex); } else { previousErrorIndex = errorPosition.Position; } } else { throw; } } } while (!finished); if (!finished) ThrowUnexpectedEndException(reader, contract, underlyingList, "Unexpected end when deserializing array."); OnDeserialized(reader, contract, underlyingList); return underlyingList; } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) private object CreateISerializable(JsonReader reader, JsonISerializableContract contract, JsonProperty member, string id) { Type objectType = contract.UnderlyingType; if (!JsonTypeReflector.FullyTrusted) { string message = @"Type '{0}' implements ISerializable but cannot be deserialized using the ISerializable interface because the current application is not fully trusted and ISerializable can expose secure data." + Environment.NewLine + @"To fix this error either change the environment to be fully trusted, change the application to not deserialize the type, add JsonObjectAttribute to the type or change the JsonSerializer setting ContractResolver to use a new DefaultContractResolver with IgnoreSerializableInterface set to true." + Environment.NewLine; message = message.FormatWith(CultureInfo.InvariantCulture, objectType); throw JsonSerializationException.Create(reader, message); } if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Deserializing {0} using ISerializable constructor.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)), null); SerializationInfo serializationInfo = new SerializationInfo(contract.UnderlyingType, new JsonFormatterConverter(this, contract, member)); bool finished = false; do { switch (reader.TokenType) { case JsonToken.PropertyName: string memberName = reader.Value.ToString(); if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when setting {0}'s value.".FormatWith(CultureInfo.InvariantCulture, memberName)); serializationInfo.AddValue(memberName, JToken.ReadFrom(reader)); break; case JsonToken.Comment: break; case JsonToken.EndObject: finished = true; break; default: throw JsonSerializationException.Create(reader, "Unexpected token when deserializing object: " + reader.TokenType); } } while (!finished && reader.Read()); if (!finished) ThrowUnexpectedEndException(reader, contract, serializationInfo, "Unexpected end when deserializing object."); if (contract.ISerializableCreator == null) throw JsonSerializationException.Create(reader, "ISerializable type '{0}' does not have a valid constructor. To correctly implement ISerializable a constructor that takes SerializationInfo and StreamingContext parameters should be present.".FormatWith(CultureInfo.InvariantCulture, objectType)); object createdObject = contract.ISerializableCreator(serializationInfo, Serializer._context); if (id != null) AddReference(reader, id, createdObject); // these are together because OnDeserializing takes an object but for an ISerializable the object is fully created in the constructor OnDeserializing(reader, contract, createdObject); OnDeserialized(reader, contract, createdObject); return createdObject; } internal object CreateISerializableItem(JToken token, Type type, JsonISerializableContract contract, JsonProperty member) { JsonContract itemContract = GetContractSafe(type); JsonConverter itemConverter = GetConverter(itemContract, null, contract, member); JsonReader tokenReader = token.CreateReader(); CheckedRead(tokenReader); // Move to first token object result; if (itemConverter != null && itemConverter.CanRead) result = DeserializeConvertable(itemConverter, tokenReader, type, null); else result = CreateValueInternal(tokenReader, type, itemContract, null, contract, member, null); return result; } #endif #if !(NET35 || NET20 || PORTABLE40) private object CreateDynamic(JsonReader reader, JsonDynamicContract contract, JsonProperty member, string id) { IDynamicMetaObjectProvider newObject; if (!contract.IsInstantiable) throw JsonSerializationException.Create(reader, "Could not create an instance of type {0}. Type is an interface or abstract class and cannot be instantiated.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); if (contract.DefaultCreator != null && (!contract.DefaultCreatorNonPublic || Serializer._constructorHandling == ConstructorHandling.AllowNonPublicDefaultConstructor)) newObject = (IDynamicMetaObjectProvider)contract.DefaultCreator(); else throw JsonSerializationException.Create(reader, "Unable to find a default constructor to use for type {0}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType)); if (id != null) AddReference(reader, id, newObject); OnDeserializing(reader, contract, newObject); int initialDepth = reader.Depth; bool finished = false; do { switch (reader.TokenType) { case JsonToken.PropertyName: string memberName = reader.Value.ToString(); try { if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when setting {0}'s value.".FormatWith(CultureInfo.InvariantCulture, memberName)); // first attempt to find a settable property, otherwise fall back to a dynamic set without type JsonProperty property = contract.Properties.GetClosestMatchProperty(memberName); if (property != null && property.Writable && !property.Ignored) { if (property.PropertyContract == null) property.PropertyContract = GetContractSafe(property.PropertyType); JsonConverter propertyConverter = GetConverter(property.PropertyContract, property.MemberConverter, null, null); if (!SetPropertyValue(property, propertyConverter, null, member, reader, newObject)) reader.Skip(); } else { Type t = (JsonTokenUtils.IsPrimitiveToken(reader.TokenType)) ? reader.ValueType : typeof(IDynamicMetaObjectProvider); JsonContract dynamicMemberContract = GetContractSafe(t); JsonConverter dynamicMemberConverter = GetConverter(dynamicMemberContract, null, null, member); object value; if (dynamicMemberConverter != null && dynamicMemberConverter.CanRead) value = DeserializeConvertable(dynamicMemberConverter, reader, t, null); else value = CreateValueInternal(reader, t, dynamicMemberContract, null, null, member, null); contract.TrySetMember(newObject, memberName, value); } } catch (Exception ex) { if (IsErrorHandled(newObject, contract, memberName, reader as IJsonLineInfo, reader.Path, ex)) HandleError(reader, true, initialDepth); else throw; } break; case JsonToken.EndObject: finished = true; break; default: throw JsonSerializationException.Create(reader, "Unexpected token when deserializing object: " + reader.TokenType); } } while (!finished && reader.Read()); if (!finished) ThrowUnexpectedEndException(reader, contract, newObject, "Unexpected end when deserializing object."); OnDeserialized(reader, contract, newObject); return newObject; } #endif private object CreateObjectUsingCreatorWithParameters(JsonReader reader, JsonObjectContract contract, JsonProperty containerProperty, ObjectConstructor creator, string id) { ValidationUtils.ArgumentNotNull(creator, "creator"); // only need to keep a track of properies presence if they are required or a value should be defaulted if missing Dictionary propertiesPresence = (contract.HasRequiredOrDefaultValueProperties || HasFlag(Serializer._defaultValueHandling, DefaultValueHandling.Populate)) ? contract.Properties.ToDictionary(m => m, m => PropertyPresence.None) : null; Type objectType = contract.UnderlyingType; if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) { string parameters = string.Join(", ", contract.CreatorParameters.Select(p => p.PropertyName).ToArray()); TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Deserializing {0} using creator with parameters: {1}.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType, parameters)), null); } IDictionary extensionData; IDictionary propertyValues = ResolvePropertyAndCreatorValues(contract, containerProperty, reader, objectType, out extensionData); object[] creatorParameterValues = new object[contract.CreatorParameters.Count]; IDictionary remainingPropertyValues = new Dictionary(); foreach (KeyValuePair propertyValue in propertyValues) { JsonProperty property = propertyValue.Key; JsonProperty matchingCreatorParameter; if (contract.CreatorParameters.Contains(property)) { matchingCreatorParameter = property; } else { // check to see if a parameter with the same name as the underlying property name exists and match to that matchingCreatorParameter = contract.CreatorParameters.ForgivingCaseSensitiveFind(p => p.PropertyName, property.UnderlyingName); } if (matchingCreatorParameter != null) { int i = contract.CreatorParameters.IndexOf(matchingCreatorParameter); creatorParameterValues[i] = propertyValue.Value; } else { remainingPropertyValues.Add(propertyValue); } if (propertiesPresence != null) { // map from creator property to normal property JsonProperty presenceProperty = propertiesPresence.Keys.FirstOrDefault(p => p.PropertyName == property.PropertyName); if (presenceProperty != null) propertiesPresence[presenceProperty] = (propertyValue.Value == null) ? PropertyPresence.Null : PropertyPresence.Value; } } object createdObject = creator(creatorParameterValues); if (id != null) AddReference(reader, id, createdObject); OnDeserializing(reader, contract, createdObject); // go through unused values and set the newly created object's properties foreach (KeyValuePair remainingPropertyValue in remainingPropertyValues) { JsonProperty property = remainingPropertyValue.Key; object value = remainingPropertyValue.Value; if (ShouldSetPropertyValue(property, value)) { property.ValueProvider.SetValue(createdObject, value); } else if (!property.Writable && value != null) { // handle readonly collection/dictionary properties JsonContract propertyContract = Serializer._contractResolver.ResolveContract(property.PropertyType); if (propertyContract.ContractType == JsonContractType.Array) { JsonArrayContract propertyArrayContract = (JsonArrayContract)propertyContract; object createdObjectCollection = property.ValueProvider.GetValue(createdObject); if (createdObjectCollection != null) { IWrappedCollection createdObjectCollectionWrapper = propertyArrayContract.CreateWrapper(createdObjectCollection); IWrappedCollection newValues = propertyArrayContract.CreateWrapper(value); foreach (object newValue in newValues) { createdObjectCollectionWrapper.Add(newValue); } } } else if (propertyContract.ContractType == JsonContractType.Dictionary) { JsonDictionaryContract dictionaryContract = (JsonDictionaryContract)propertyContract; object createdObjectDictionary = property.ValueProvider.GetValue(createdObject); if (createdObjectDictionary != null) { IDictionary targetDictionary = (dictionaryContract.ShouldCreateWrapper) ? dictionaryContract.CreateWrapper(createdObjectDictionary) : (IDictionary)createdObjectDictionary; IDictionary newValues = (dictionaryContract.ShouldCreateWrapper) ? dictionaryContract.CreateWrapper(value) : (IDictionary)value; foreach (DictionaryEntry newValue in newValues) { targetDictionary.Add(newValue.Key, newValue.Value); } } } } } if (extensionData != null) { foreach (KeyValuePair e in extensionData) { contract.ExtensionDataSetter(createdObject, e.Key, e.Value); } } EndObject(createdObject, reader, contract, reader.Depth, propertiesPresence); OnDeserialized(reader, contract, createdObject); return createdObject; } private object DeserializeConvertable(JsonConverter converter, JsonReader reader, Type objectType, object existingValue) { if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Started deserializing {0} with converter {1}.".FormatWith(CultureInfo.InvariantCulture, objectType, converter.GetType())), null); object value = converter.ReadJson(reader, objectType, existingValue, GetInternalSerializer()); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Info) TraceWriter.Trace(TraceLevel.Info, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Finished deserializing {0} with converter {1}.".FormatWith(CultureInfo.InvariantCulture, objectType, converter.GetType())), null); return value; } private IDictionary ResolvePropertyAndCreatorValues(JsonObjectContract contract, JsonProperty containerProperty, JsonReader reader, Type objectType, out IDictionary extensionData) { extensionData = (contract.ExtensionDataSetter != null) ? new Dictionary() : null; IDictionary propertyValues = new Dictionary(); bool exit = false; do { switch (reader.TokenType) { case JsonToken.PropertyName: string memberName = reader.Value.ToString(); // attempt exact case match first // then try match ignoring case JsonProperty property = contract.CreatorParameters.GetClosestMatchProperty(memberName) ?? contract.Properties.GetClosestMatchProperty(memberName); if (property != null) { if (property.PropertyContract == null) property.PropertyContract = GetContractSafe(property.PropertyType); JsonConverter propertyConverter = GetConverter(property.PropertyContract, property.MemberConverter, contract, containerProperty); if (!ReadForType(reader, property.PropertyContract, propertyConverter != null)) throw JsonSerializationException.Create(reader, "Unexpected end when setting {0}'s value.".FormatWith(CultureInfo.InvariantCulture, memberName)); if (!property.Ignored) { if (property.PropertyContract == null) property.PropertyContract = GetContractSafe(property.PropertyType); object propertyValue; if (propertyConverter != null && propertyConverter.CanRead) propertyValue = DeserializeConvertable(propertyConverter, reader, property.PropertyType, null); else propertyValue = CreateValueInternal(reader, property.PropertyType, property.PropertyContract, property, contract, containerProperty, null); propertyValues[property] = propertyValue; continue; } } else { if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when setting {0}'s value.".FormatWith(CultureInfo.InvariantCulture, memberName)); if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Could not find member '{0}' on {1}.".FormatWith(CultureInfo.InvariantCulture, memberName, contract.UnderlyingType)), null); if (Serializer._missingMemberHandling == MissingMemberHandling.Error) throw JsonSerializationException.Create(reader, "Could not find member '{0}' on object of type '{1}'".FormatWith(CultureInfo.InvariantCulture, memberName, objectType.Name)); } if (extensionData != null) { object value = CreateValueInternal(reader, null, null, null, contract, containerProperty, null); extensionData[memberName] = value; } else { reader.Skip(); } break; case JsonToken.Comment: break; case JsonToken.EndObject: exit = true; break; default: throw JsonSerializationException.Create(reader, "Unexpected token when deserializing object: " + reader.TokenType); } } while (!exit && reader.Read()); return propertyValues; } private bool ReadForType(JsonReader reader, JsonContract contract, bool hasConverter) { // don't read properties with converters as a specific value // the value might be a string which will then get converted which will error if read as date for example if (hasConverter) return reader.Read(); ReadType t = (contract != null) ? contract.InternalReadType : ReadType.Read; switch (t) { case ReadType.Read: do { if (!reader.Read()) return false; } while (reader.TokenType == JsonToken.Comment); return true; case ReadType.ReadAsInt32: reader.ReadAsInt32(); break; case ReadType.ReadAsDecimal: reader.ReadAsDecimal(); break; case ReadType.ReadAsBytes: reader.ReadAsBytes(); break; case ReadType.ReadAsString: reader.ReadAsString(); break; case ReadType.ReadAsDateTime: reader.ReadAsDateTime(); break; #if !NET20 case ReadType.ReadAsDateTimeOffset: reader.ReadAsDateTimeOffset(); break; #endif default: throw new ArgumentOutOfRangeException(); } return (reader.TokenType != JsonToken.None); } public object CreateNewObject(JsonReader reader, JsonObjectContract objectContract, JsonProperty containerMember, JsonProperty containerProperty, string id, out bool createdFromNonDefaultCreator) { object newObject = null; if (objectContract.OverrideCreator != null) { if (objectContract.CreatorParameters.Count > 0) { createdFromNonDefaultCreator = true; return CreateObjectUsingCreatorWithParameters(reader, objectContract, containerMember, objectContract.OverrideCreator, id); } newObject = objectContract.OverrideCreator(new object[0]); } else if (objectContract.DefaultCreator != null && (!objectContract.DefaultCreatorNonPublic || Serializer._constructorHandling == ConstructorHandling.AllowNonPublicDefaultConstructor || objectContract.ParametrizedCreator == null)) { // use the default constructor if it is... // public // non-public and the user has change constructor handling settings // non-public and there is no other creator newObject = objectContract.DefaultCreator(); } else if (objectContract.ParametrizedCreator != null) { createdFromNonDefaultCreator = true; return CreateObjectUsingCreatorWithParameters(reader, objectContract, containerMember, objectContract.ParametrizedCreator, id); } if (newObject == null) { if (!objectContract.IsInstantiable) throw JsonSerializationException.Create(reader, "Could not create an instance of type {0}. Type is an interface or abstract class and cannot be instantiated.".FormatWith(CultureInfo.InvariantCulture, objectContract.UnderlyingType)); throw JsonSerializationException.Create(reader, "Unable to find a constructor to use for type {0}. A class should either have a default constructor, one constructor with arguments or a constructor marked with the JsonConstructor attribute.".FormatWith(CultureInfo.InvariantCulture, objectContract.UnderlyingType)); } createdFromNonDefaultCreator = false; return newObject; } private object PopulateObject(object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, string id) { OnDeserializing(reader, contract, newObject); // only need to keep a track of properies presence if they are required or a value should be defaulted if missing Dictionary propertiesPresence = (contract.HasRequiredOrDefaultValueProperties || HasFlag(Serializer._defaultValueHandling, DefaultValueHandling.Populate)) ? contract.Properties.ToDictionary(m => m, m => PropertyPresence.None) : null; if (id != null) AddReference(reader, id, newObject); int initialDepth = reader.Depth; bool finished = false; do { switch (reader.TokenType) { case JsonToken.PropertyName: { string memberName = reader.Value.ToString(); if (CheckPropertyName(reader, memberName)) continue; try { // attempt exact case match first // then try match ignoring case JsonProperty property = contract.Properties.GetClosestMatchProperty(memberName); if (property == null) { if (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) TraceWriter.Trace(TraceLevel.Verbose, JsonPosition.FormatMessage(reader as IJsonLineInfo, reader.Path, "Could not find member '{0}' on {1}".FormatWith(CultureInfo.InvariantCulture, memberName, contract.UnderlyingType)), null); if (Serializer._missingMemberHandling == MissingMemberHandling.Error) throw JsonSerializationException.Create(reader, "Could not find member '{0}' on object of type '{1}'".FormatWith(CultureInfo.InvariantCulture, memberName, contract.UnderlyingType.Name)); if (!reader.Read()) break; SetExtensionData(contract, member, reader, memberName, newObject); continue; } if (property.PropertyContract == null) property.PropertyContract = GetContractSafe(property.PropertyType); JsonConverter propertyConverter = GetConverter(property.PropertyContract, property.MemberConverter, contract, member); if (!ReadForType(reader, property.PropertyContract, propertyConverter != null)) throw JsonSerializationException.Create(reader, "Unexpected end when setting {0}'s value.".FormatWith(CultureInfo.InvariantCulture, memberName)); SetPropertyPresence(reader, property, propertiesPresence); // set extension data if property is ignored or readonly if (!SetPropertyValue(property, propertyConverter, contract, member, reader, newObject)) SetExtensionData(contract, member, reader, memberName, newObject); } catch (Exception ex) { if (IsErrorHandled(newObject, contract, memberName, reader as IJsonLineInfo, reader.Path, ex)) HandleError(reader, true, initialDepth); else throw; } break; } case JsonToken.EndObject: finished = true; break; case JsonToken.Comment: // ignore break; default: throw JsonSerializationException.Create(reader, "Unexpected token when deserializing object: " + reader.TokenType); } } while (!finished && reader.Read()); if (!finished) ThrowUnexpectedEndException(reader, contract, newObject, "Unexpected end when deserializing object."); EndObject(newObject, reader, contract, initialDepth, propertiesPresence); OnDeserialized(reader, contract, newObject); return newObject; } private bool CheckPropertyName(JsonReader reader, string memberName) { if (Serializer.MetadataPropertyHandling == MetadataPropertyHandling.ReadAhead) { switch (memberName) { case JsonTypeReflector.IdPropertyName: case JsonTypeReflector.RefPropertyName: case JsonTypeReflector.TypePropertyName: case JsonTypeReflector.ArrayValuesPropertyName: reader.Skip(); return true; } } return false; } private void SetExtensionData(JsonObjectContract contract, JsonProperty member, JsonReader reader, string memberName, object o) { if (contract.ExtensionDataSetter != null) { try { object value = CreateValueInternal(reader, null, null, null, contract, member, null); contract.ExtensionDataSetter(o, memberName, value); } catch (Exception ex) { throw JsonSerializationException.Create(reader, "Error setting value in extension data for type '{0}'.".FormatWith(CultureInfo.InvariantCulture, contract.UnderlyingType), ex); } } else { reader.Skip(); } } private void EndObject(object newObject, JsonReader reader, JsonObjectContract contract, int initialDepth, Dictionary propertiesPresence) { if (propertiesPresence != null) { foreach (KeyValuePair propertyPresence in propertiesPresence) { JsonProperty property = propertyPresence.Key; PropertyPresence presence = propertyPresence.Value; if (presence == PropertyPresence.None || presence == PropertyPresence.Null) { try { Required resolvedRequired = property._required ?? contract.ItemRequired ?? Required.Default; switch (presence) { case PropertyPresence.None: if (resolvedRequired == Required.AllowNull || resolvedRequired == Required.Always) throw JsonSerializationException.Create(reader, "Required property '{0}' not found in JSON.".FormatWith(CultureInfo.InvariantCulture, property.PropertyName)); if (property.PropertyContract == null) property.PropertyContract = GetContractSafe(property.PropertyType); if (HasFlag(property.DefaultValueHandling.GetValueOrDefault(Serializer._defaultValueHandling), DefaultValueHandling.Populate) && property.Writable && !property.Ignored) property.ValueProvider.SetValue(newObject, EnsureType(reader, property.GetResolvedDefaultValue(), CultureInfo.InvariantCulture, property.PropertyContract, property.PropertyType)); break; case PropertyPresence.Null: if (resolvedRequired == Required.Always) throw JsonSerializationException.Create(reader, "Required property '{0}' expects a value but got null.".FormatWith(CultureInfo.InvariantCulture, property.PropertyName)); break; } } catch (Exception ex) { if (IsErrorHandled(newObject, contract, property.PropertyName, reader as IJsonLineInfo, reader.Path, ex)) HandleError(reader, true, initialDepth); else throw; } } } } } private void SetPropertyPresence(JsonReader reader, JsonProperty property, Dictionary requiredProperties) { if (property != null && requiredProperties != null) { requiredProperties[property] = (reader.TokenType == JsonToken.Null || reader.TokenType == JsonToken.Undefined) ? PropertyPresence.Null : PropertyPresence.Value; } } private void HandleError(JsonReader reader, bool readPastError, int initialDepth) { ClearErrorContext(); if (readPastError) { reader.Skip(); while (reader.Depth > (initialDepth + 1)) { if (!reader.Read()) break; } } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/IAttributeProvider.cs0000664000175000017500000000443112454416117030173 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; namespace Newtonsoft.Json.Serialization { /// /// Provides methods to get attributes. /// public interface IAttributeProvider { /// /// Returns a collection of all of the attributes, or an empty collection if there are no attributes. /// /// When true, look up the hierarchy chain for the inherited custom attribute. /// A collection of s, or an empty collection. IList GetAttributes(bool inherit); /// /// Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. /// /// The type of the attributes. /// When true, look up the hierarchy chain for the inherited custom attribute. /// A collection of s, or an empty collection. IList GetAttributes(Type attributeType, bool inherit); } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Serialization/ErrorEventArgs.cs0000664000175000017500000000431412454416117027314 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Serialization { /// /// Provides data for the Error event. /// public class ErrorEventArgs : EventArgs { /// /// Gets the current object the error event is being raised against. /// /// The current object the error event is being raised against. public object CurrentObject { get; private set; } /// /// Gets the error context. /// /// The error context. public ErrorContext ErrorContext { get; private set; } /// /// Initializes a new instance of the class. /// /// The current object. /// The error context. public ErrorEventArgs(object currentObject, ErrorContext errorContext) { CurrentObject = currentObject; ErrorContext = errorContext; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/IJsonLineInfo.cs0000664000175000017500000000417212454416117024237 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Provides an interface to enable a class to return line and position information. /// public interface IJsonLineInfo { /// /// Gets a value indicating whether the class can return line information. /// /// /// true if LineNumber and LinePosition can be provided; otherwise, false. /// bool HasLineInfo(); /// /// Gets the current line number. /// /// The current line number or 0 if no line information is available (for example, HasLineInfo returns false). int LineNumber { get; } /// /// Gets the current line position. /// /// The current line position or 0 if no line information is available (for example, HasLineInfo returns false). int LinePosition { get; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonObjectAttribute.cs0000664000175000017500000000655312454416117025522 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json { /// /// Instructs the how to serialize the object. /// [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Interface, AllowMultiple = false)] public sealed class JsonObjectAttribute : JsonContainerAttribute { private MemberSerialization _memberSerialization = MemberSerialization.OptOut; // yuck. can't set nullable properties on an attribute in C# // have to use this approach to get an unset default state internal Required? _itemRequired; /// /// Gets or sets the member serialization. /// /// The member serialization. public MemberSerialization MemberSerialization { get { return _memberSerialization; } set { _memberSerialization = value; } } /// /// Gets or sets a value that indicates whether the object's properties are required. /// /// /// A value indicating whether the object's properties are required. /// public Required ItemRequired { get { return _itemRequired ?? default(Required); } set { _itemRequired = value; } } /// /// Initializes a new instance of the class. /// public JsonObjectAttribute() { } /// /// Initializes a new instance of the class with the specified member serialization. /// /// The member serialization. public JsonObjectAttribute(MemberSerialization memberSerialization) { MemberSerialization = memberSerialization; } /// /// Initializes a new instance of the class with the specified container Id. /// /// The container Id. public JsonObjectAttribute(string id) : base(id) { } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Newtonsoft.Json.ruleset0000664000175000017500000000117312454416117025723 0ustar directhexdirecthex newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonException.cs0000664000175000017500000000767412454416117024373 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.Runtime.Serialization; using System.Text; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json { /// /// The exception thrown when an error occurs during Json serialization or deserialization. /// #if !(NETFX_CORE || PORTABLE40 || PORTABLE) [Serializable] #endif public class JsonException : Exception { /// /// Initializes a new instance of the class. /// public JsonException() { } /// /// Initializes a new instance of the class /// with a specified error message. /// /// The error message that explains the reason for the exception. public JsonException(string message) : base(message) { } /// /// Initializes a new instance of the class /// with a specified error message and a reference to the inner exception that is the cause of this exception. /// /// The error message that explains the reason for the exception. /// The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. public JsonException(string message, Exception innerException) : base(message, innerException) { } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) /// /// Initializes a new instance of the class. /// /// The that holds the serialized object data about the exception being thrown. /// The that contains contextual information about the source or destination. /// The parameter is null. /// The class name is null or is zero (0). public JsonException(SerializationInfo info, StreamingContext context) : base(info, context) { } #endif internal static JsonException Create(IJsonLineInfo lineInfo, string path, string message) { message = JsonPosition.FormatMessage(lineInfo, path, message); return new JsonException(message); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonTextReader.cs0000664000175000017500000017113012454416117024471 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Diagnostics; using System.Runtime.CompilerServices; using System.Text; using System.IO; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json { internal enum ReadType { Read, ReadAsInt32, ReadAsBytes, ReadAsString, ReadAsDecimal, ReadAsDateTime, #if !NET20 ReadAsDateTimeOffset #endif } /// /// Represents a reader that provides fast, non-cached, forward-only access to JSON text data. /// public class JsonTextReader : JsonReader, IJsonLineInfo { private const char UnicodeReplacementChar = '\uFFFD'; private const int MaximumJavascriptIntegerCharacterLength = 380; private readonly TextReader _reader; private char[] _chars; private int _charsUsed; private int _charPos; private int _lineStartPos; private int _lineNumber; private bool _isEndOfFile; private StringBuffer _buffer; private StringReference _stringReference; internal PropertyNameTable NameTable; /// /// Initializes a new instance of the class with the specified . /// /// The TextReader containing the XML data to read. public JsonTextReader(TextReader reader) { if (reader == null) throw new ArgumentNullException("reader"); _reader = reader; _lineNumber = 1; _chars = new char[1025]; } #if DEBUG internal void SetCharBuffer(char[] chars) { _chars = chars; } #endif private StringBuffer GetBuffer() { if (_buffer == null) { _buffer = new StringBuffer(1025); } else { _buffer.Position = 0; } return _buffer; } private void OnNewLine(int pos) { _lineNumber++; _lineStartPos = pos - 1; } private void ParseString(char quote) { _charPos++; ShiftBufferIfNeeded(); ReadStringIntoBuffer(quote); SetPostValueState(true); if (_readType == ReadType.ReadAsBytes) { byte[] data; if (_stringReference.Length == 0) { data = new byte[0]; } else { data = Convert.FromBase64CharArray(_stringReference.Chars, _stringReference.StartIndex, _stringReference.Length); } SetToken(JsonToken.Bytes, data, false); } else if (_readType == ReadType.ReadAsString) { string text = _stringReference.ToString(); SetToken(JsonToken.String, text, false); _quoteChar = quote; } else { string text = _stringReference.ToString(); if (_dateParseHandling != DateParseHandling.None) { DateParseHandling dateParseHandling; if (_readType == ReadType.ReadAsDateTime) dateParseHandling = DateParseHandling.DateTime; #if !NET20 else if (_readType == ReadType.ReadAsDateTimeOffset) dateParseHandling = DateParseHandling.DateTimeOffset; #endif else dateParseHandling = _dateParseHandling; object dt; if (DateTimeUtils.TryParseDateTime(text, dateParseHandling, DateTimeZoneHandling, DateFormatString, Culture, out dt)) { SetToken(JsonToken.Date, dt, false); return; } } SetToken(JsonToken.String, text, false); _quoteChar = quote; } } private static void BlockCopyChars(char[] src, int srcOffset, char[] dst, int dstOffset, int count) { const int charByteCount = 2; Buffer.BlockCopy(src, srcOffset * charByteCount, dst, dstOffset * charByteCount, count * charByteCount); } private void ShiftBufferIfNeeded() { // once in the last 10% of the buffer shift the remaining content to the start to avoid // unnessesarly increasing the buffer size when reading numbers/strings int length = _chars.Length; if (length - _charPos <= length * 0.1) { int count = _charsUsed - _charPos; if (count > 0) BlockCopyChars(_chars, _charPos, _chars, 0, count); _lineStartPos -= _charPos; _charPos = 0; _charsUsed = count; _chars[_charsUsed] = '\0'; } } private int ReadData(bool append) { return ReadData(append, 0); } private int ReadData(bool append, int charsRequired) { if (_isEndOfFile) return 0; // char buffer is full if (_charsUsed + charsRequired >= _chars.Length - 1) { if (append) { // copy to new array either double the size of the current or big enough to fit required content int newArrayLength = Math.Max(_chars.Length * 2, _charsUsed + charsRequired + 1); // increase the size of the buffer char[] dst = new char[newArrayLength]; BlockCopyChars(_chars, 0, dst, 0, _chars.Length); _chars = dst; } else { int remainingCharCount = _charsUsed - _charPos; if (remainingCharCount + charsRequired + 1 >= _chars.Length) { // the remaining count plus the required is bigger than the current buffer size char[] dst = new char[remainingCharCount + charsRequired + 1]; if (remainingCharCount > 0) BlockCopyChars(_chars, _charPos, dst, 0, remainingCharCount); _chars = dst; } else { // copy any remaining data to the beginning of the buffer if needed and reset positions if (remainingCharCount > 0) BlockCopyChars(_chars, _charPos, _chars, 0, remainingCharCount); } _lineStartPos -= _charPos; _charPos = 0; _charsUsed = remainingCharCount; } } int attemptCharReadCount = _chars.Length - _charsUsed - 1; int charsRead = _reader.Read(_chars, _charsUsed, attemptCharReadCount); _charsUsed += charsRead; if (charsRead == 0) _isEndOfFile = true; _chars[_charsUsed] = '\0'; return charsRead; } private bool EnsureChars(int relativePosition, bool append) { if (_charPos + relativePosition >= _charsUsed) return ReadChars(relativePosition, append); return true; } private bool ReadChars(int relativePosition, bool append) { if (_isEndOfFile) return false; int charsRequired = _charPos + relativePosition - _charsUsed + 1; int totalCharsRead = 0; // it is possible that the TextReader doesn't return all data at once // repeat read until the required text is returned or the reader is out of content do { int charsRead = ReadData(append, charsRequired - totalCharsRead); // no more content if (charsRead == 0) break; totalCharsRead += charsRead; } while (totalCharsRead < charsRequired); if (totalCharsRead < charsRequired) return false; return true; } /// /// Reads the next JSON token from the stream. /// /// /// true if the next token was read successfully; false if there are no more tokens to read. /// [DebuggerStepThrough] public override bool Read() { _readType = ReadType.Read; if (!ReadInternal()) { SetToken(JsonToken.None); return false; } return true; } /// /// Reads the next JSON token from the stream as a []. /// /// /// A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. /// public override byte[] ReadAsBytes() { return ReadAsBytesInternal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override decimal? ReadAsDecimal() { return ReadAsDecimalInternal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override int? ReadAsInt32() { return ReadAsInt32Internal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override string ReadAsString() { return ReadAsStringInternal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override DateTime? ReadAsDateTime() { return ReadAsDateTimeInternal(); } #if !NET20 /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override DateTimeOffset? ReadAsDateTimeOffset() { return ReadAsDateTimeOffsetInternal(); } #endif internal override bool ReadInternal() { while (true) { switch (_currentState) { case State.Start: case State.Property: case State.Array: case State.ArrayStart: case State.Constructor: case State.ConstructorStart: return ParseValue(); case State.Object: case State.ObjectStart: return ParseObject(); case State.PostValue: // returns true if it hits // end of object or array if (ParsePostValue()) return true; break; case State.Finished: if (EnsureChars(0, false)) { EatWhitespace(false); if (_isEndOfFile) { return false; } if (_chars[_charPos] == '/') { ParseComment(); return true; } throw JsonReaderException.Create(this, "Additional text encountered after finished reading JSON content: {0}.".FormatWith(CultureInfo.InvariantCulture, _chars[_charPos])); } return false; default: throw JsonReaderException.Create(this, "Unexpected state: {0}.".FormatWith(CultureInfo.InvariantCulture, CurrentState)); } } } private void ReadStringIntoBuffer(char quote) { int charPos = _charPos; int initialPosition = _charPos; int lastWritePosition = _charPos; StringBuffer buffer = null; while (true) { switch (_chars[charPos++]) { case '\0': if (_charsUsed == charPos - 1) { charPos--; if (ReadData(true) == 0) { _charPos = charPos; throw JsonReaderException.Create(this, "Unterminated string. Expected delimiter: {0}.".FormatWith(CultureInfo.InvariantCulture, quote)); } } break; case '\\': _charPos = charPos; if (!EnsureChars(0, true)) { _charPos = charPos; throw JsonReaderException.Create(this, "Unterminated string. Expected delimiter: {0}.".FormatWith(CultureInfo.InvariantCulture, quote)); } // start of escape sequence int escapeStartPos = charPos - 1; char currentChar = _chars[charPos]; char writeChar; switch (currentChar) { case 'b': charPos++; writeChar = '\b'; break; case 't': charPos++; writeChar = '\t'; break; case 'n': charPos++; writeChar = '\n'; break; case 'f': charPos++; writeChar = '\f'; break; case 'r': charPos++; writeChar = '\r'; break; case '\\': charPos++; writeChar = '\\'; break; case '"': case '\'': case '/': writeChar = currentChar; charPos++; break; case 'u': charPos++; _charPos = charPos; writeChar = ParseUnicode(); if (StringUtils.IsLowSurrogate(writeChar)) { // low surrogate with no preceding high surrogate; this char is replaced writeChar = UnicodeReplacementChar; } else if (StringUtils.IsHighSurrogate(writeChar)) { bool anotherHighSurrogate; // loop for handling situations where there are multiple consecutive high surrogates do { anotherHighSurrogate = false; // potential start of a surrogate pair if (EnsureChars(2, true) && _chars[_charPos] == '\\' && _chars[_charPos + 1] == 'u') { char highSurrogate = writeChar; _charPos += 2; writeChar = ParseUnicode(); if (StringUtils.IsLowSurrogate(writeChar)) { // a valid surrogate pair! } else if (StringUtils.IsHighSurrogate(writeChar)) { // another high surrogate; replace current and start check over highSurrogate = UnicodeReplacementChar; anotherHighSurrogate = true; } else { // high surrogate not followed by low surrogate; original char is replaced highSurrogate = UnicodeReplacementChar; } if (buffer == null) buffer = GetBuffer(); WriteCharToBuffer(buffer, highSurrogate, lastWritePosition, escapeStartPos); lastWritePosition = _charPos; } else { // there are not enough remaining chars for the low surrogate or is not follow by unicode sequence // replace high surrogate and continue on as usual writeChar = UnicodeReplacementChar; } } while (anotherHighSurrogate); } charPos = _charPos; break; default: charPos++; _charPos = charPos; throw JsonReaderException.Create(this, "Bad JSON escape sequence: {0}.".FormatWith(CultureInfo.InvariantCulture, @"\" + currentChar)); } if (buffer == null) buffer = GetBuffer(); WriteCharToBuffer(buffer, writeChar, lastWritePosition, escapeStartPos); lastWritePosition = charPos; break; case StringUtils.CarriageReturn: _charPos = charPos - 1; ProcessCarriageReturn(true); charPos = _charPos; break; case StringUtils.LineFeed: _charPos = charPos - 1; ProcessLineFeed(); charPos = _charPos; break; case '"': case '\'': if (_chars[charPos - 1] == quote) { charPos--; if (initialPosition == lastWritePosition) { _stringReference = new StringReference(_chars, initialPosition, charPos - initialPosition); } else { if (buffer == null) buffer = GetBuffer(); if (charPos > lastWritePosition) buffer.Append(_chars, lastWritePosition, charPos - lastWritePosition); _stringReference = new StringReference(buffer.GetInternalBuffer(), 0, buffer.Position); } charPos++; _charPos = charPos; return; } break; } } } private void WriteCharToBuffer(StringBuffer buffer, char writeChar, int lastWritePosition, int writeToPosition) { if (writeToPosition > lastWritePosition) { buffer.Append(_chars, lastWritePosition, writeToPosition - lastWritePosition); } buffer.Append(writeChar); } private char ParseUnicode() { char writeChar; if (EnsureChars(4, true)) { string hexValues = new string(_chars, _charPos, 4); char hexChar = Convert.ToChar(int.Parse(hexValues, NumberStyles.HexNumber, NumberFormatInfo.InvariantInfo)); writeChar = hexChar; _charPos += 4; } else { throw JsonReaderException.Create(this, "Unexpected end while parsing unicode character."); } return writeChar; } private void ReadNumberIntoBuffer() { int charPos = _charPos; while (true) { switch (_chars[charPos]) { case '\0': _charPos = charPos; if (_charsUsed == charPos) { if (ReadData(true) == 0) return; } else { return; } break; case '-': case '+': case 'a': case 'A': case 'b': case 'B': case 'c': case 'C': case 'd': case 'D': case 'e': case 'E': case 'f': case 'F': case 'x': case 'X': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': charPos++; break; default: _charPos = charPos; char currentChar = _chars[_charPos]; if (char.IsWhiteSpace(currentChar) || currentChar == ',' || currentChar == '}' || currentChar == ']' || currentChar == ')' || currentChar == '/') { return; } throw JsonReaderException.Create(this, "Unexpected character encountered while parsing number: {0}.".FormatWith(CultureInfo.InvariantCulture, currentChar)); } } } private void ClearRecentString() { if (_buffer != null) _buffer.Position = 0; _stringReference = new StringReference(); } private bool ParsePostValue() { while (true) { char currentChar = _chars[_charPos]; switch (currentChar) { case '\0': if (_charsUsed == _charPos) { if (ReadData(false) == 0) { _currentState = State.Finished; return false; } } else { _charPos++; } break; case '}': _charPos++; SetToken(JsonToken.EndObject); return true; case ']': _charPos++; SetToken(JsonToken.EndArray); return true; case ')': _charPos++; SetToken(JsonToken.EndConstructor); return true; case '/': ParseComment(); return true; case ',': _charPos++; // finished parsing SetStateBasedOnCurrent(); return false; case ' ': case StringUtils.Tab: // eat _charPos++; break; case StringUtils.CarriageReturn: ProcessCarriageReturn(false); break; case StringUtils.LineFeed: ProcessLineFeed(); break; default: if (char.IsWhiteSpace(currentChar)) { // eat _charPos++; } else { throw JsonReaderException.Create(this, "After parsing a value an unexpected character was encountered: {0}.".FormatWith(CultureInfo.InvariantCulture, currentChar)); } break; } } } private bool ParseObject() { while (true) { char currentChar = _chars[_charPos]; switch (currentChar) { case '\0': if (_charsUsed == _charPos) { if (ReadData(false) == 0) return false; } else { _charPos++; } break; case '}': SetToken(JsonToken.EndObject); _charPos++; return true; case '/': ParseComment(); return true; case StringUtils.CarriageReturn: ProcessCarriageReturn(false); break; case StringUtils.LineFeed: ProcessLineFeed(); break; case ' ': case StringUtils.Tab: // eat _charPos++; break; default: if (char.IsWhiteSpace(currentChar)) { // eat _charPos++; } else { return ParseProperty(); } break; } } } private bool ParseProperty() { char firstChar = _chars[_charPos]; char quoteChar; if (firstChar == '"' || firstChar == '\'') { _charPos++; quoteChar = firstChar; ShiftBufferIfNeeded(); ReadStringIntoBuffer(quoteChar); } else if (ValidIdentifierChar(firstChar)) { quoteChar = '\0'; ShiftBufferIfNeeded(); ParseUnquotedProperty(); } else { throw JsonReaderException.Create(this, "Invalid property identifier character: {0}.".FormatWith(CultureInfo.InvariantCulture, _chars[_charPos])); } string propertyName; if (NameTable != null) { propertyName = NameTable.Get(_stringReference.Chars, _stringReference.StartIndex, _stringReference.Length); // no match in name table if (propertyName == null) propertyName = _stringReference.ToString(); } else { propertyName = _stringReference.ToString(); } EatWhitespace(false); if (_chars[_charPos] != ':') throw JsonReaderException.Create(this, "Invalid character after parsing property name. Expected ':' but got: {0}.".FormatWith(CultureInfo.InvariantCulture, _chars[_charPos])); _charPos++; SetToken(JsonToken.PropertyName, propertyName); _quoteChar = quoteChar; ClearRecentString(); return true; } private bool ValidIdentifierChar(char value) { return (char.IsLetterOrDigit(value) || value == '_' || value == '$'); } private void ParseUnquotedProperty() { int initialPosition = _charPos; // parse unquoted property name until whitespace or colon while (true) { switch (_chars[_charPos]) { case '\0': if (_charsUsed == _charPos) { if (ReadData(true) == 0) throw JsonReaderException.Create(this, "Unexpected end while parsing unquoted property name."); break; } _stringReference = new StringReference(_chars, initialPosition, _charPos - initialPosition); return; default: char currentChar = _chars[_charPos]; if (ValidIdentifierChar(currentChar)) { _charPos++; break; } else if (char.IsWhiteSpace(currentChar) || currentChar == ':') { _stringReference = new StringReference(_chars, initialPosition, _charPos - initialPosition); return; } throw JsonReaderException.Create(this, "Invalid JavaScript property identifier character: {0}.".FormatWith(CultureInfo.InvariantCulture, currentChar)); } } } private bool ParseValue() { while (true) { char currentChar = _chars[_charPos]; switch (currentChar) { case '\0': if (_charsUsed == _charPos) { if (ReadData(false) == 0) return false; } else { _charPos++; } break; case '"': case '\'': ParseString(currentChar); return true; case 't': ParseTrue(); return true; case 'f': ParseFalse(); return true; case 'n': if (EnsureChars(1, true)) { char next = _chars[_charPos + 1]; if (next == 'u') ParseNull(); else if (next == 'e') ParseConstructor(); else throw JsonReaderException.Create(this, "Unexpected character encountered while parsing value: {0}.".FormatWith(CultureInfo.InvariantCulture, _chars[_charPos])); } else { throw JsonReaderException.Create(this, "Unexpected end."); } return true; case 'N': ParseNumberNaN(); return true; case 'I': ParseNumberPositiveInfinity(); return true; case '-': if (EnsureChars(1, true) && _chars[_charPos + 1] == 'I') ParseNumberNegativeInfinity(); else ParseNumber(); return true; case '/': ParseComment(); return true; case 'u': ParseUndefined(); return true; case '{': _charPos++; SetToken(JsonToken.StartObject); return true; case '[': _charPos++; SetToken(JsonToken.StartArray); return true; case ']': _charPos++; SetToken(JsonToken.EndArray); return true; case ',': // don't increment position, the next call to read will handle comma // this is done to handle multiple empty comma values SetToken(JsonToken.Undefined); return true; case ')': _charPos++; SetToken(JsonToken.EndConstructor); return true; case StringUtils.CarriageReturn: ProcessCarriageReturn(false); break; case StringUtils.LineFeed: ProcessLineFeed(); break; case ' ': case StringUtils.Tab: // eat _charPos++; break; default: if (char.IsWhiteSpace(currentChar)) { // eat _charPos++; break; } if (char.IsNumber(currentChar) || currentChar == '-' || currentChar == '.') { ParseNumber(); return true; } throw JsonReaderException.Create(this, "Unexpected character encountered while parsing value: {0}.".FormatWith(CultureInfo.InvariantCulture, currentChar)); } } } private void ProcessLineFeed() { _charPos++; OnNewLine(_charPos); } private void ProcessCarriageReturn(bool append) { _charPos++; if (EnsureChars(1, append) && _chars[_charPos] == StringUtils.LineFeed) _charPos++; OnNewLine(_charPos); } private bool EatWhitespace(bool oneOrMore) { bool finished = false; bool ateWhitespace = false; while (!finished) { char currentChar = _chars[_charPos]; switch (currentChar) { case '\0': if (_charsUsed == _charPos) { if (ReadData(false) == 0) finished = true; } else { _charPos++; } break; case StringUtils.CarriageReturn: ProcessCarriageReturn(false); break; case StringUtils.LineFeed: ProcessLineFeed(); break; default: if (currentChar == ' ' || char.IsWhiteSpace(currentChar)) { ateWhitespace = true; _charPos++; } else { finished = true; } break; } } return (!oneOrMore || ateWhitespace); } private void ParseConstructor() { if (MatchValueWithTrailingSeparator("new")) { EatWhitespace(false); int initialPosition = _charPos; int endPosition; while (true) { char currentChar = _chars[_charPos]; if (currentChar == '\0') { if (_charsUsed == _charPos) { if (ReadData(true) == 0) throw JsonReaderException.Create(this, "Unexpected end while parsing constructor."); } else { endPosition = _charPos; _charPos++; break; } } else if (char.IsLetterOrDigit(currentChar)) { _charPos++; } else if (currentChar == StringUtils.CarriageReturn) { endPosition = _charPos; ProcessCarriageReturn(true); break; } else if (currentChar == StringUtils.LineFeed) { endPosition = _charPos; ProcessLineFeed(); break; } else if (char.IsWhiteSpace(currentChar)) { endPosition = _charPos; _charPos++; break; } else if (currentChar == '(') { endPosition = _charPos; break; } else { throw JsonReaderException.Create(this, "Unexpected character while parsing constructor: {0}.".FormatWith(CultureInfo.InvariantCulture, currentChar)); } } _stringReference = new StringReference(_chars, initialPosition, endPosition - initialPosition); string constructorName = _stringReference.ToString(); EatWhitespace(false); if (_chars[_charPos] != '(') throw JsonReaderException.Create(this, "Unexpected character while parsing constructor: {0}.".FormatWith(CultureInfo.InvariantCulture, _chars[_charPos])); _charPos++; ClearRecentString(); SetToken(JsonToken.StartConstructor, constructorName); } else { throw JsonReaderException.Create(this, "Unexpected content while parsing JSON."); } } private void ParseNumber() { ShiftBufferIfNeeded(); char firstChar = _chars[_charPos]; int initialPosition = _charPos; ReadNumberIntoBuffer(); // set state to PostValue now so that if there is an error parsing the number then the reader can continue SetPostValueState(true); _stringReference = new StringReference(_chars, initialPosition, _charPos - initialPosition); object numberValue; JsonToken numberType; bool singleDigit = (char.IsDigit(firstChar) && _stringReference.Length == 1); bool nonBase10 = (firstChar == '0' && _stringReference.Length > 1 && _stringReference.Chars[_stringReference.StartIndex + 1] != '.' && _stringReference.Chars[_stringReference.StartIndex + 1] != 'e' && _stringReference.Chars[_stringReference.StartIndex + 1] != 'E'); if (_readType == ReadType.ReadAsInt32) { if (singleDigit) { // digit char values start at 48 numberValue = firstChar - 48; } else if (nonBase10) { string number = _stringReference.ToString(); try { int integer = number.StartsWith("0x", StringComparison.OrdinalIgnoreCase) ? Convert.ToInt32(number, 16) : Convert.ToInt32(number, 8); numberValue = integer; } catch (Exception ex) { throw JsonReaderException.Create(this, "Input string '{0}' is not a valid integer.".FormatWith(CultureInfo.InvariantCulture, number), ex); } } else { int value; ParseResult parseResult = ConvertUtils.Int32TryParse(_stringReference.Chars, _stringReference.StartIndex, _stringReference.Length, out value); if (parseResult == ParseResult.Success) numberValue = value; else if (parseResult == ParseResult.Overflow) throw JsonReaderException.Create(this, "JSON integer {0} is too large or small for an Int32.".FormatWith(CultureInfo.InvariantCulture, _stringReference.ToString())); else throw JsonReaderException.Create(this, "Input string '{0}' is not a valid integer.".FormatWith(CultureInfo.InvariantCulture, _stringReference.ToString())); } numberType = JsonToken.Integer; } else if (_readType == ReadType.ReadAsDecimal) { if (singleDigit) { // digit char values start at 48 numberValue = (decimal)firstChar - 48; } else if (nonBase10) { string number = _stringReference.ToString(); try { // decimal.Parse doesn't support parsing hexadecimal values long integer = number.StartsWith("0x", StringComparison.OrdinalIgnoreCase) ? Convert.ToInt64(number, 16) : Convert.ToInt64(number, 8); numberValue = Convert.ToDecimal(integer); } catch (Exception ex) { throw JsonReaderException.Create(this, "Input string '{0}' is not a valid decimal.".FormatWith(CultureInfo.InvariantCulture, number), ex); } } else { string number = _stringReference.ToString(); decimal value; if (decimal.TryParse(number, NumberStyles.Number | NumberStyles.AllowExponent, CultureInfo.InvariantCulture, out value)) numberValue = value; else throw JsonReaderException.Create(this, "Input string '{0}' is not a valid decimal.".FormatWith(CultureInfo.InvariantCulture, _stringReference.ToString())); } numberType = JsonToken.Float; } else { if (singleDigit) { // digit char values start at 48 numberValue = (long)firstChar - 48; numberType = JsonToken.Integer; } else if (nonBase10) { string number = _stringReference.ToString(); try { numberValue = number.StartsWith("0x", StringComparison.OrdinalIgnoreCase) ? Convert.ToInt64(number, 16) : Convert.ToInt64(number, 8); } catch (Exception ex) { throw JsonReaderException.Create(this, "Input string '{0}' is not a valid number.".FormatWith(CultureInfo.InvariantCulture, number), ex); } numberType = JsonToken.Integer; } else { long value; ParseResult parseResult = ConvertUtils.Int64TryParse(_stringReference.Chars, _stringReference.StartIndex, _stringReference.Length, out value); if (parseResult == ParseResult.Success) { numberValue = value; numberType = JsonToken.Integer; } else if (parseResult == ParseResult.Overflow) { #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) string number = _stringReference.ToString(); if (number.Length > MaximumJavascriptIntegerCharacterLength) throw JsonReaderException.Create(this, "JSON integer {0} is too large to parse.".FormatWith(CultureInfo.InvariantCulture, _stringReference.ToString())); numberValue = BigIntegerParse(number, CultureInfo.InvariantCulture); numberType = JsonToken.Integer; #else throw JsonReaderException.Create(this, "JSON integer {0} is too large or small for an Int64.".FormatWith(CultureInfo.InvariantCulture, _stringReference.ToString())); #endif } else { string number = _stringReference.ToString(); if (_floatParseHandling == FloatParseHandling.Decimal) { decimal d; if (decimal.TryParse(number, NumberStyles.Number | NumberStyles.AllowExponent, CultureInfo.InvariantCulture, out d)) numberValue = d; else throw JsonReaderException.Create(this, "Input string '{0}' is not a valid decimal.".FormatWith(CultureInfo.InvariantCulture, number)); } else { double d; if (double.TryParse(number, NumberStyles.Float | NumberStyles.AllowThousands, CultureInfo.InvariantCulture, out d)) numberValue = d; else throw JsonReaderException.Create(this, "Input string '{0}' is not a valid number.".FormatWith(CultureInfo.InvariantCulture, number)); } numberType = JsonToken.Float; } } } ClearRecentString(); // index has already been updated SetToken(numberType, numberValue, false); } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) // By using the BigInteger type in a separate method, // the runtime can execute the ParseNumber even if // the System.Numerics.BigInteger.Parse method is // missing, which happens in some versions of Mono [MethodImpl(MethodImplOptions.NoInlining)] private static object BigIntegerParse(string number, CultureInfo culture) { return System.Numerics.BigInteger.Parse(number, culture); } #endif private void ParseComment() { // should have already parsed / character before reaching this method _charPos++; if (!EnsureChars(1, false)) throw JsonReaderException.Create(this, "Unexpected end while parsing comment."); bool singlelineComment; if (_chars[_charPos] == '*') singlelineComment = false; else if (_chars[_charPos] == '/') singlelineComment = true; else throw JsonReaderException.Create(this, "Error parsing comment. Expected: *, got {0}.".FormatWith(CultureInfo.InvariantCulture, _chars[_charPos])); _charPos++; int initialPosition = _charPos; bool commentFinished = false; while (!commentFinished) { switch (_chars[_charPos]) { case '\0': if (_charsUsed == _charPos) { if (ReadData(true) == 0) { if (!singlelineComment) throw JsonReaderException.Create(this, "Unexpected end while parsing comment."); _stringReference = new StringReference(_chars, initialPosition, _charPos - initialPosition); commentFinished = true; } } else { _charPos++; } break; case '*': _charPos++; if (!singlelineComment) { if (EnsureChars(0, true)) { if (_chars[_charPos] == '/') { _stringReference = new StringReference(_chars, initialPosition, _charPos - initialPosition - 1); _charPos++; commentFinished = true; } } } break; case StringUtils.CarriageReturn: if (singlelineComment) { _stringReference = new StringReference(_chars, initialPosition, _charPos - initialPosition); commentFinished = true; } ProcessCarriageReturn(true); break; case StringUtils.LineFeed: if (singlelineComment) { _stringReference = new StringReference(_chars, initialPosition, _charPos - initialPosition); commentFinished = true; } ProcessLineFeed(); break; default: _charPos++; break; } } SetToken(JsonToken.Comment, _stringReference.ToString()); ClearRecentString(); } private bool MatchValue(string value) { if (!EnsureChars(value.Length - 1, true)) return false; for (int i = 0; i < value.Length; i++) { if (_chars[_charPos + i] != value[i]) { return false; } } _charPos += value.Length; return true; } private bool MatchValueWithTrailingSeparator(string value) { // will match value and then move to the next character, checking that it is a separator character bool match = MatchValue(value); if (!match) return false; if (!EnsureChars(0, false)) return true; return IsSeparator(_chars[_charPos]) || _chars[_charPos] == '\0'; } private bool IsSeparator(char c) { switch (c) { case '}': case ']': case ',': return true; case '/': // check next character to see if start of a comment if (!EnsureChars(1, false)) return false; var nextChart = _chars[_charPos + 1]; return (nextChart == '*' || nextChart == '/'); case ')': if (CurrentState == State.Constructor || CurrentState == State.ConstructorStart) return true; break; case ' ': case StringUtils.Tab: case StringUtils.LineFeed: case StringUtils.CarriageReturn: return true; default: if (char.IsWhiteSpace(c)) return true; break; } return false; } private void ParseTrue() { // check characters equal 'true' // and that it is followed by either a separator character // or the text ends if (MatchValueWithTrailingSeparator(JsonConvert.True)) { SetToken(JsonToken.Boolean, true); } else { throw JsonReaderException.Create(this, "Error parsing boolean value."); } } private void ParseNull() { if (MatchValueWithTrailingSeparator(JsonConvert.Null)) { SetToken(JsonToken.Null); } else { throw JsonReaderException.Create(this, "Error parsing null value."); } } private void ParseUndefined() { if (MatchValueWithTrailingSeparator(JsonConvert.Undefined)) { SetToken(JsonToken.Undefined); } else { throw JsonReaderException.Create(this, "Error parsing undefined value."); } } private void ParseFalse() { if (MatchValueWithTrailingSeparator(JsonConvert.False)) { SetToken(JsonToken.Boolean, false); } else { throw JsonReaderException.Create(this, "Error parsing boolean value."); } } private void ParseNumberNegativeInfinity() { if (MatchValueWithTrailingSeparator(JsonConvert.NegativeInfinity)) { if (_floatParseHandling == FloatParseHandling.Decimal) throw new JsonReaderException("Cannot read -Infinity as a decimal."); SetToken(JsonToken.Float, double.NegativeInfinity); } else { throw JsonReaderException.Create(this, "Error parsing negative infinity value."); } } private void ParseNumberPositiveInfinity() { if (MatchValueWithTrailingSeparator(JsonConvert.PositiveInfinity)) { if (_floatParseHandling == FloatParseHandling.Decimal) throw new JsonReaderException("Cannot read Infinity as a decimal."); SetToken(JsonToken.Float, double.PositiveInfinity); } else { throw JsonReaderException.Create(this, "Error parsing positive infinity value."); } } private void ParseNumberNaN() { if (MatchValueWithTrailingSeparator(JsonConvert.NaN)) { if (_floatParseHandling == FloatParseHandling.Decimal) throw new JsonReaderException("Cannot read NaN as a decimal."); SetToken(JsonToken.Float, double.NaN); } else { throw JsonReaderException.Create(this, "Error parsing NaN value."); } } /// /// Changes the state to closed. /// public override void Close() { base.Close(); if (CloseInput && _reader != null) #if !(NETFX_CORE || PORTABLE40 || PORTABLE) _reader.Close(); #else _reader.Dispose(); #endif if (_buffer != null) _buffer.Clear(); } /// /// Gets a value indicating whether the class can return line information. /// /// /// true if LineNumber and LinePosition can be provided; otherwise, false. /// public bool HasLineInfo() { return true; } /// /// Gets the current line number. /// /// /// The current line number or 0 if no line information is available (for example, HasLineInfo returns false). /// public int LineNumber { get { if (CurrentState == State.Start && LinePosition == 0) return 0; return _lineNumber; } } /// /// Gets the current line position. /// /// /// The current line position or 0 if no line information is available (for example, HasLineInfo returns false). /// public int LinePosition { get { return _charPos - _lineStartPos; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/0000775000175000017500000000000012454416117023370 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/DataTableConverter.cs0000664000175000017500000002035312454416117027433 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; using System.Globalization; using Newtonsoft.Json.Utilities; #if !(NETFX_CORE || PORTABLE40 || PORTABLE) using System; using System.Data; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Converters { /// /// Converts a to and from JSON. /// public class DataTableConverter : JsonConverter { /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { DataTable table = (DataTable)value; DefaultContractResolver resolver = serializer.ContractResolver as DefaultContractResolver; writer.WriteStartArray(); foreach (DataRow row in table.Rows) { writer.WriteStartObject(); foreach (DataColumn column in row.Table.Columns) { if (serializer.NullValueHandling == NullValueHandling.Ignore && (row[column] == null || row[column] == DBNull.Value)) continue; writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(column.ColumnName) : column.ColumnName); serializer.Serialize(writer, row[column]); } writer.WriteEndObject(); } writer.WriteEndArray(); } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { DataTable dt = existingValue as DataTable; if (dt == null) { // handle typed datasets dt = (objectType == typeof(DataTable)) ? new DataTable() : (DataTable)Activator.CreateInstance(objectType); } if (reader.TokenType == JsonToken.PropertyName) { dt.TableName = (string)reader.Value; CheckedRead(reader); } if (reader.TokenType != JsonToken.StartArray) throw JsonSerializationException.Create(reader, "Unexpected JSON token when reading DataTable. Expected StartArray, got {0}.".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); CheckedRead(reader); while (reader.TokenType != JsonToken.EndArray) { CreateRow(reader, dt); CheckedRead(reader); } return dt; } private static void CreateRow(JsonReader reader, DataTable dt) { DataRow dr = dt.NewRow(); CheckedRead(reader); while (reader.TokenType == JsonToken.PropertyName) { string columnName = (string)reader.Value; CheckedRead(reader); DataColumn column = dt.Columns[columnName]; if (column == null) { Type columnType = GetColumnDataType(reader); column = new DataColumn(columnName, columnType); dt.Columns.Add(column); } if (column.DataType == typeof(DataTable)) { if (reader.TokenType == JsonToken.StartArray) CheckedRead(reader); DataTable nestedDt = new DataTable(); while (reader.TokenType != JsonToken.EndArray) { CreateRow(reader, nestedDt); CheckedRead(reader); } dr[columnName] = nestedDt; } else if (column.DataType.IsArray && column.DataType != typeof(byte[])) { if (reader.TokenType == JsonToken.StartArray) CheckedRead(reader); List o = new List(); while (reader.TokenType != JsonToken.EndArray) { o.Add(reader.Value); CheckedRead(reader); } Array destinationArray = Array.CreateInstance(column.DataType.GetElementType(), o.Count); Array.Copy(o.ToArray(), destinationArray, o.Count); dr[columnName] = destinationArray; } else { dr[columnName] = reader.Value ?? DBNull.Value; } CheckedRead(reader); } dr.EndEdit(); dt.Rows.Add(dr); } private static Type GetColumnDataType(JsonReader reader) { JsonToken tokenType = reader.TokenType; switch (tokenType) { case JsonToken.Integer: case JsonToken.Boolean: case JsonToken.Float: case JsonToken.String: case JsonToken.Date: case JsonToken.Bytes: return reader.ValueType; case JsonToken.Null: case JsonToken.Undefined: return typeof(string); case JsonToken.StartArray: CheckedRead(reader); if (reader.TokenType == JsonToken.StartObject) return typeof(DataTable); // nested datatable Type arrayType = GetColumnDataType(reader); return arrayType.MakeArrayType(); default: throw JsonSerializationException.Create(reader, "Unexpected JSON token when reading DataTable: {0}".FormatWith(CultureInfo.InvariantCulture, tokenType)); } } private static void CheckedRead(JsonReader reader) { if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when reading DataTable."); } /// /// Determines whether this instance can convert the specified value type. /// /// Type of the value. /// /// true if this instance can convert the specified value type; otherwise, false. /// public override bool CanConvert(Type valueType) { return typeof(DataTable).IsAssignableFrom(valueType); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/XmlNodeConverter.cs0000664000175000017500000017467612454416117027202 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !PORTABLE40 using System; using System.Collections.Generic; using System.Globalization; using System.Xml; #if !(NET20 || PORTABLE40) using System.Xml.Linq; #endif using Newtonsoft.Json.Utilities; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Converters { #region XmlNodeWrappers #if !NETFX_CORE && !PORTABLE && !PORTABLE40 internal class XmlDocumentWrapper : XmlNodeWrapper, IXmlDocument { private readonly XmlDocument _document; public XmlDocumentWrapper(XmlDocument document) : base(document) { _document = document; } public IXmlNode CreateComment(string data) { return new XmlNodeWrapper(_document.CreateComment(data)); } public IXmlNode CreateTextNode(string text) { return new XmlNodeWrapper(_document.CreateTextNode(text)); } public IXmlNode CreateCDataSection(string data) { return new XmlNodeWrapper(_document.CreateCDataSection(data)); } public IXmlNode CreateWhitespace(string text) { return new XmlNodeWrapper(_document.CreateWhitespace(text)); } public IXmlNode CreateSignificantWhitespace(string text) { return new XmlNodeWrapper(_document.CreateSignificantWhitespace(text)); } public IXmlNode CreateXmlDeclaration(string version, string encoding, string standalone) { return new XmlDeclarationWrapper(_document.CreateXmlDeclaration(version, encoding, standalone)); } public IXmlNode CreateXmlDocumentType(string name, string publicId, string systemId, string internalSubset) { return new XmlDocumentTypeWrapper(_document.CreateDocumentType(name, publicId, systemId, null)); } public IXmlNode CreateProcessingInstruction(string target, string data) { return new XmlNodeWrapper(_document.CreateProcessingInstruction(target, data)); } public IXmlElement CreateElement(string elementName) { return new XmlElementWrapper(_document.CreateElement(elementName)); } public IXmlElement CreateElement(string qualifiedName, string namespaceUri) { return new XmlElementWrapper(_document.CreateElement(qualifiedName, namespaceUri)); } public IXmlNode CreateAttribute(string name, string value) { XmlNodeWrapper attribute = new XmlNodeWrapper(_document.CreateAttribute(name)); attribute.Value = value; return attribute; } public IXmlNode CreateAttribute(string qualifiedName, string namespaceUri, string value) { XmlNodeWrapper attribute = new XmlNodeWrapper(_document.CreateAttribute(qualifiedName, namespaceUri)); attribute.Value = value; return attribute; } public IXmlElement DocumentElement { get { if (_document.DocumentElement == null) return null; return new XmlElementWrapper(_document.DocumentElement); } } } internal class XmlElementWrapper : XmlNodeWrapper, IXmlElement { private readonly XmlElement _element; public XmlElementWrapper(XmlElement element) : base(element) { _element = element; } public void SetAttributeNode(IXmlNode attribute) { XmlNodeWrapper xmlAttributeWrapper = (XmlNodeWrapper)attribute; _element.SetAttributeNode((XmlAttribute)xmlAttributeWrapper.WrappedNode); } public string GetPrefixOfNamespace(string namespaceUri) { return _element.GetPrefixOfNamespace(namespaceUri); } public bool IsEmpty { get { return _element.IsEmpty; } } } internal class XmlDeclarationWrapper : XmlNodeWrapper, IXmlDeclaration { private readonly XmlDeclaration _declaration; public XmlDeclarationWrapper(XmlDeclaration declaration) : base(declaration) { _declaration = declaration; } public string Version { get { return _declaration.Version; } } public string Encoding { get { return _declaration.Encoding; } set { _declaration.Encoding = value; } } public string Standalone { get { return _declaration.Standalone; } set { _declaration.Standalone = value; } } } internal class XmlDocumentTypeWrapper : XmlNodeWrapper, IXmlDocumentType { private readonly XmlDocumentType _documentType; public XmlDocumentTypeWrapper(XmlDocumentType documentType) : base(documentType) { _documentType = documentType; } public string Name { get { return _documentType.Name; } } public string System { get { return _documentType.SystemId; } } public string Public { get { return _documentType.PublicId; } } public string InternalSubset { get { return _documentType.InternalSubset; } } public override string LocalName { get { return "DOCTYPE"; } } } internal class XmlNodeWrapper : IXmlNode { private readonly XmlNode _node; private IList _childNodes; public XmlNodeWrapper(XmlNode node) { _node = node; } public object WrappedNode { get { return _node; } } public XmlNodeType NodeType { get { return _node.NodeType; } } public virtual string LocalName { get { return _node.LocalName; } } public IList ChildNodes { get { // childnodes is read multiple times // cache results to prevent multiple reads which kills perf in large documents if (_childNodes == null) _childNodes = _node.ChildNodes.Cast().Select(WrapNode).ToList(); return _childNodes; } } internal static IXmlNode WrapNode(XmlNode node) { switch (node.NodeType) { case XmlNodeType.Element: return new XmlElementWrapper((XmlElement) node); case XmlNodeType.XmlDeclaration: return new XmlDeclarationWrapper((XmlDeclaration) node); case XmlNodeType.DocumentType: return new XmlDocumentTypeWrapper((XmlDocumentType) node); default: return new XmlNodeWrapper(node); } } public IList Attributes { get { if (_node.Attributes == null) return null; return _node.Attributes.Cast().Select(WrapNode).ToList(); } } public IXmlNode ParentNode { get { XmlNode node = (_node is XmlAttribute) ? ((XmlAttribute) _node).OwnerElement : _node.ParentNode; if (node == null) return null; return WrapNode(node); } } public string Value { get { return _node.Value; } set { _node.Value = value; } } public IXmlNode AppendChild(IXmlNode newChild) { XmlNodeWrapper xmlNodeWrapper = (XmlNodeWrapper) newChild; _node.AppendChild(xmlNodeWrapper._node); _childNodes = null; return newChild; } public string NamespaceUri { get { return _node.NamespaceURI; } } } #endif #endregion #region Interfaces internal interface IXmlDocument : IXmlNode { IXmlNode CreateComment(string text); IXmlNode CreateTextNode(string text); IXmlNode CreateCDataSection(string data); IXmlNode CreateWhitespace(string text); IXmlNode CreateSignificantWhitespace(string text); IXmlNode CreateXmlDeclaration(string version, string encoding, string standalone); IXmlNode CreateXmlDocumentType(string name, string publicId, string systemId, string internalSubset); IXmlNode CreateProcessingInstruction(string target, string data); IXmlElement CreateElement(string elementName); IXmlElement CreateElement(string qualifiedName, string namespaceUri); IXmlNode CreateAttribute(string name, string value); IXmlNode CreateAttribute(string qualifiedName, string namespaceUri, string value); IXmlElement DocumentElement { get; } } internal interface IXmlDeclaration : IXmlNode { string Version { get; } string Encoding { get; set; } string Standalone { get; set; } } internal interface IXmlDocumentType : IXmlNode { string Name { get; } string System { get; } string Public { get; } string InternalSubset { get; } } internal interface IXmlElement : IXmlNode { void SetAttributeNode(IXmlNode attribute); string GetPrefixOfNamespace(string namespaceUri); bool IsEmpty { get; } } internal interface IXmlNode { XmlNodeType NodeType { get; } string LocalName { get; } IList ChildNodes { get; } IList Attributes { get; } IXmlNode ParentNode { get; } string Value { get; set; } IXmlNode AppendChild(IXmlNode newChild); string NamespaceUri { get; } object WrappedNode { get; } } #endregion #region XNodeWrappers #if !NET20 internal class XDeclarationWrapper : XObjectWrapper, IXmlDeclaration { internal XDeclaration Declaration { get; private set; } public XDeclarationWrapper(XDeclaration declaration) : base(null) { Declaration = declaration; } public override XmlNodeType NodeType { get { return XmlNodeType.XmlDeclaration; } } public string Version { get { return Declaration.Version; } } public string Encoding { get { return Declaration.Encoding; } set { Declaration.Encoding = value; } } public string Standalone { get { return Declaration.Standalone; } set { Declaration.Standalone = value; } } } internal class XDocumentTypeWrapper : XObjectWrapper, IXmlDocumentType { private readonly XDocumentType _documentType; public XDocumentTypeWrapper(XDocumentType documentType) : base(documentType) { _documentType = documentType; } public string Name { get { return _documentType.Name; } } public string System { get { return _documentType.SystemId; } } public string Public { get { return _documentType.PublicId; } } public string InternalSubset { get { return _documentType.InternalSubset; } } public override string LocalName { get { return "DOCTYPE"; } } } internal class XDocumentWrapper : XContainerWrapper, IXmlDocument { private XDocument Document { get { return (XDocument)WrappedNode; } } public XDocumentWrapper(XDocument document) : base(document) { } public override IList ChildNodes { get { IList childNodes = base.ChildNodes; if (Document.Declaration != null && childNodes[0].NodeType != XmlNodeType.XmlDeclaration) childNodes.Insert(0, new XDeclarationWrapper(Document.Declaration)); return childNodes; } } public IXmlNode CreateComment(string text) { return new XObjectWrapper(new XComment(text)); } public IXmlNode CreateTextNode(string text) { return new XObjectWrapper(new XText(text)); } public IXmlNode CreateCDataSection(string data) { return new XObjectWrapper(new XCData(data)); } public IXmlNode CreateWhitespace(string text) { return new XObjectWrapper(new XText(text)); } public IXmlNode CreateSignificantWhitespace(string text) { return new XObjectWrapper(new XText(text)); } public IXmlNode CreateXmlDeclaration(string version, string encoding, string standalone) { return new XDeclarationWrapper(new XDeclaration(version, encoding, standalone)); } public IXmlNode CreateXmlDocumentType(string name, string publicId, string systemId, string internalSubset) { return new XDocumentTypeWrapper(new XDocumentType(name, publicId, systemId, internalSubset)); } public IXmlNode CreateProcessingInstruction(string target, string data) { return new XProcessingInstructionWrapper(new XProcessingInstruction(target, data)); } public IXmlElement CreateElement(string elementName) { return new XElementWrapper(new XElement(elementName)); } public IXmlElement CreateElement(string qualifiedName, string namespaceUri) { string localName = MiscellaneousUtils.GetLocalName(qualifiedName); return new XElementWrapper(new XElement(XName.Get(localName, namespaceUri))); } public IXmlNode CreateAttribute(string name, string value) { return new XAttributeWrapper(new XAttribute(name, value)); } public IXmlNode CreateAttribute(string qualifiedName, string namespaceUri, string value) { string localName = MiscellaneousUtils.GetLocalName(qualifiedName); return new XAttributeWrapper(new XAttribute(XName.Get(localName, namespaceUri), value)); } public IXmlElement DocumentElement { get { if (Document.Root == null) return null; return new XElementWrapper(Document.Root); } } public override IXmlNode AppendChild(IXmlNode newChild) { XDeclarationWrapper declarationWrapper = newChild as XDeclarationWrapper; if (declarationWrapper != null) { Document.Declaration = declarationWrapper.Declaration; return declarationWrapper; } else { return base.AppendChild(newChild); } } } internal class XTextWrapper : XObjectWrapper { private XText Text { get { return (XText)WrappedNode; } } public XTextWrapper(XText text) : base(text) { } public override string Value { get { return Text.Value; } set { Text.Value = value; } } public override IXmlNode ParentNode { get { if (Text.Parent == null) return null; return XContainerWrapper.WrapNode(Text.Parent); } } } internal class XCommentWrapper : XObjectWrapper { private XComment Text { get { return (XComment)WrappedNode; } } public XCommentWrapper(XComment text) : base(text) { } public override string Value { get { return Text.Value; } set { Text.Value = value; } } public override IXmlNode ParentNode { get { if (Text.Parent == null) return null; return XContainerWrapper.WrapNode(Text.Parent); } } } internal class XProcessingInstructionWrapper : XObjectWrapper { private XProcessingInstruction ProcessingInstruction { get { return (XProcessingInstruction)WrappedNode; } } public XProcessingInstructionWrapper(XProcessingInstruction processingInstruction) : base(processingInstruction) { } public override string LocalName { get { return ProcessingInstruction.Target; } } public override string Value { get { return ProcessingInstruction.Data; } set { ProcessingInstruction.Data = value; } } } internal class XContainerWrapper : XObjectWrapper { private IList _childNodes; private XContainer Container { get { return (XContainer)WrappedNode; } } public XContainerWrapper(XContainer container) : base(container) { } public override IList ChildNodes { get { // childnodes is read multiple times // cache results to prevent multiple reads which kills perf in large documents if (_childNodes == null) _childNodes = Container.Nodes().Select(WrapNode).ToList(); return _childNodes; } } public override IXmlNode ParentNode { get { if (Container.Parent == null) return null; return WrapNode(Container.Parent); } } internal static IXmlNode WrapNode(XObject node) { if (node is XDocument) return new XDocumentWrapper((XDocument)node); else if (node is XElement) return new XElementWrapper((XElement)node); else if (node is XContainer) return new XContainerWrapper((XContainer)node); else if (node is XProcessingInstruction) return new XProcessingInstructionWrapper((XProcessingInstruction)node); else if (node is XText) return new XTextWrapper((XText)node); else if (node is XComment) return new XCommentWrapper((XComment)node); else if (node is XAttribute) return new XAttributeWrapper((XAttribute)node); else if (node is XDocumentType) return new XDocumentTypeWrapper((XDocumentType)node); else return new XObjectWrapper(node); } public override IXmlNode AppendChild(IXmlNode newChild) { Container.Add(newChild.WrappedNode); _childNodes = null; return newChild; } } internal class XObjectWrapper : IXmlNode { private readonly XObject _xmlObject; public XObjectWrapper(XObject xmlObject) { _xmlObject = xmlObject; } public object WrappedNode { get { return _xmlObject; } } public virtual XmlNodeType NodeType { get { return _xmlObject.NodeType; } } public virtual string LocalName { get { return null; } } public virtual IList ChildNodes { get { return new List(); } } public virtual IList Attributes { get { return null; } } public virtual IXmlNode ParentNode { get { return null; } } public virtual string Value { get { return null; } set { throw new InvalidOperationException(); } } public virtual IXmlNode AppendChild(IXmlNode newChild) { throw new InvalidOperationException(); } public virtual string NamespaceUri { get { return null; } } } internal class XAttributeWrapper : XObjectWrapper { private XAttribute Attribute { get { return (XAttribute)WrappedNode; } } public XAttributeWrapper(XAttribute attribute) : base(attribute) { } public override string Value { get { return Attribute.Value; } set { Attribute.Value = value; } } public override string LocalName { get { return Attribute.Name.LocalName; } } public override string NamespaceUri { get { return Attribute.Name.NamespaceName; } } public override IXmlNode ParentNode { get { if (Attribute.Parent == null) return null; return XContainerWrapper.WrapNode(Attribute.Parent); } } } internal class XElementWrapper : XContainerWrapper, IXmlElement { private XElement Element { get { return (XElement)WrappedNode; } } public XElementWrapper(XElement element) : base(element) { } public void SetAttributeNode(IXmlNode attribute) { XObjectWrapper wrapper = (XObjectWrapper)attribute; Element.Add(wrapper.WrappedNode); } public override IList Attributes { get { return Element.Attributes().Select(a => new XAttributeWrapper(a)).Cast().ToList(); } } public override string Value { get { return Element.Value; } set { Element.Value = value; } } public override string LocalName { get { return Element.Name.LocalName; } } public override string NamespaceUri { get { return Element.Name.NamespaceName; } } public string GetPrefixOfNamespace(string namespaceUri) { return Element.GetPrefixOfNamespace(namespaceUri); } public bool IsEmpty { get { return Element.IsEmpty; } } } #endif #endregion /// /// Converts XML to and from JSON. /// public class XmlNodeConverter : JsonConverter { private const string TextName = "#text"; private const string CommentName = "#comment"; private const string CDataName = "#cdata-section"; private const string WhitespaceName = "#whitespace"; private const string SignificantWhitespaceName = "#significant-whitespace"; private const string DeclarationName = "?xml"; private const string JsonNamespaceUri = "http://james.newtonking.com/projects/json"; /// /// Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produces multiple root elements. /// /// The name of the deserialize root element. public string DeserializeRootElementName { get; set; } /// /// Gets or sets a flag to indicate whether to write the Json.NET array attribute. /// This attribute helps preserve arrays when converting the written XML back to JSON. /// /// true if the array attibute is written to the XML; otherwise, false. public bool WriteArrayAttribute { get; set; } /// /// Gets or sets a value indicating whether to write the root JSON object. /// /// true if the JSON root object is omitted; otherwise, false. public bool OmitRootObject { get; set; } #region Writing /// /// Writes the JSON representation of the object. /// /// The to write to. /// The calling serializer. /// The value. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { IXmlNode node = WrapXml(value); XmlNamespaceManager manager = new XmlNamespaceManager(new NameTable()); PushParentNamespaces(node, manager); if (!OmitRootObject) writer.WriteStartObject(); SerializeNode(writer, node, manager, !OmitRootObject); if (!OmitRootObject) writer.WriteEndObject(); } private IXmlNode WrapXml(object value) { #if !NET20 if (value is XObject) return XContainerWrapper.WrapNode((XObject)value); #endif #if !(NETFX_CORE || PORTABLE) if (value is XmlNode) return XmlNodeWrapper.WrapNode((XmlNode)value); #endif throw new ArgumentException("Value must be an XML object.", "value"); } private void PushParentNamespaces(IXmlNode node, XmlNamespaceManager manager) { List parentElements = null; IXmlNode parent = node; while ((parent = parent.ParentNode) != null) { if (parent.NodeType == XmlNodeType.Element) { if (parentElements == null) parentElements = new List(); parentElements.Add(parent); } } if (parentElements != null) { parentElements.Reverse(); foreach (IXmlNode parentElement in parentElements) { manager.PushScope(); foreach (IXmlNode attribute in parentElement.Attributes) { if (attribute.NamespaceUri == "http://www.w3.org/2000/xmlns/" && attribute.LocalName != "xmlns") manager.AddNamespace(attribute.LocalName, attribute.Value); } } } } private string ResolveFullName(IXmlNode node, XmlNamespaceManager manager) { string prefix = (node.NamespaceUri == null || (node.LocalName == "xmlns" && node.NamespaceUri == "http://www.w3.org/2000/xmlns/")) ? null : manager.LookupPrefix(node.NamespaceUri); if (!string.IsNullOrEmpty(prefix)) return prefix + ":" + node.LocalName; else return node.LocalName; } private string GetPropertyName(IXmlNode node, XmlNamespaceManager manager) { switch (node.NodeType) { case XmlNodeType.Attribute: if (node.NamespaceUri == JsonNamespaceUri) return "$" + node.LocalName; else return "@" + ResolveFullName(node, manager); case XmlNodeType.CDATA: return CDataName; case XmlNodeType.Comment: return CommentName; case XmlNodeType.Element: return ResolveFullName(node, manager); case XmlNodeType.ProcessingInstruction: return "?" + ResolveFullName(node, manager); case XmlNodeType.DocumentType: return "!" + ResolveFullName(node, manager); case XmlNodeType.XmlDeclaration: return DeclarationName; case XmlNodeType.SignificantWhitespace: return SignificantWhitespaceName; case XmlNodeType.Text: return TextName; case XmlNodeType.Whitespace: return WhitespaceName; default: throw new JsonSerializationException("Unexpected XmlNodeType when getting node name: " + node.NodeType); } } private bool IsArray(IXmlNode node) { IXmlNode jsonArrayAttribute = (node.Attributes != null) ? node.Attributes.SingleOrDefault(a => a.LocalName == "Array" && a.NamespaceUri == JsonNamespaceUri) : null; return (jsonArrayAttribute != null && XmlConvert.ToBoolean(jsonArrayAttribute.Value)); } private void SerializeGroupedNodes(JsonWriter writer, IXmlNode node, XmlNamespaceManager manager, bool writePropertyName) { // group nodes together by name Dictionary> nodesGroupedByName = new Dictionary>(); for (int i = 0; i < node.ChildNodes.Count; i++) { IXmlNode childNode = node.ChildNodes[i]; string nodeName = GetPropertyName(childNode, manager); List nodes; if (!nodesGroupedByName.TryGetValue(nodeName, out nodes)) { nodes = new List(); nodesGroupedByName.Add(nodeName, nodes); } nodes.Add(childNode); } // loop through grouped nodes. write single name instances as normal, // write multiple names together in an array foreach (KeyValuePair> nodeNameGroup in nodesGroupedByName) { List groupedNodes = nodeNameGroup.Value; bool writeArray; if (groupedNodes.Count == 1) { writeArray = IsArray(groupedNodes[0]); } else { writeArray = true; } if (!writeArray) { SerializeNode(writer, groupedNodes[0], manager, writePropertyName); } else { string elementNames = nodeNameGroup.Key; if (writePropertyName) writer.WritePropertyName(elementNames); writer.WriteStartArray(); for (int i = 0; i < groupedNodes.Count; i++) { SerializeNode(writer, groupedNodes[i], manager, false); } writer.WriteEndArray(); } } } private void SerializeNode(JsonWriter writer, IXmlNode node, XmlNamespaceManager manager, bool writePropertyName) { switch (node.NodeType) { case XmlNodeType.Document: case XmlNodeType.DocumentFragment: SerializeGroupedNodes(writer, node, manager, writePropertyName); break; case XmlNodeType.Element: if (IsArray(node) && node.ChildNodes.All(n => n.LocalName == node.LocalName) && node.ChildNodes.Count > 0) { SerializeGroupedNodes(writer, node, manager, false); } else { manager.PushScope(); foreach (IXmlNode attribute in node.Attributes) { if (attribute.NamespaceUri == "http://www.w3.org/2000/xmlns/") { string namespacePrefix = (attribute.LocalName != "xmlns") ? attribute.LocalName : string.Empty; string namespaceUri = attribute.Value; manager.AddNamespace(namespacePrefix, namespaceUri); } } if (writePropertyName) writer.WritePropertyName(GetPropertyName(node, manager)); if (!ValueAttributes(node.Attributes).Any() && node.ChildNodes.Count == 1 && node.ChildNodes[0].NodeType == XmlNodeType.Text) { // write elements with a single text child as a name value pair writer.WriteValue(node.ChildNodes[0].Value); } else if (node.ChildNodes.Count == 0 && CollectionUtils.IsNullOrEmpty(node.Attributes)) { IXmlElement element = (IXmlElement)node; // empty element if (element.IsEmpty) writer.WriteNull(); else writer.WriteValue(string.Empty); } else { writer.WriteStartObject(); for (int i = 0; i < node.Attributes.Count; i++) { SerializeNode(writer, node.Attributes[i], manager, true); } SerializeGroupedNodes(writer, node, manager, true); writer.WriteEndObject(); } manager.PopScope(); } break; case XmlNodeType.Comment: if (writePropertyName) writer.WriteComment(node.Value); break; case XmlNodeType.Attribute: case XmlNodeType.Text: case XmlNodeType.CDATA: case XmlNodeType.ProcessingInstruction: case XmlNodeType.Whitespace: case XmlNodeType.SignificantWhitespace: if (node.NamespaceUri == "http://www.w3.org/2000/xmlns/" && node.Value == JsonNamespaceUri) return; if (node.NamespaceUri == JsonNamespaceUri) { if (node.LocalName == "Array") return; } if (writePropertyName) writer.WritePropertyName(GetPropertyName(node, manager)); writer.WriteValue(node.Value); break; case XmlNodeType.XmlDeclaration: IXmlDeclaration declaration = (IXmlDeclaration)node; writer.WritePropertyName(GetPropertyName(node, manager)); writer.WriteStartObject(); if (!string.IsNullOrEmpty(declaration.Version)) { writer.WritePropertyName("@version"); writer.WriteValue(declaration.Version); } if (!string.IsNullOrEmpty(declaration.Encoding)) { writer.WritePropertyName("@encoding"); writer.WriteValue(declaration.Encoding); } if (!string.IsNullOrEmpty(declaration.Standalone)) { writer.WritePropertyName("@standalone"); writer.WriteValue(declaration.Standalone); } writer.WriteEndObject(); break; case XmlNodeType.DocumentType: IXmlDocumentType documentType = (IXmlDocumentType)node; writer.WritePropertyName(GetPropertyName(node, manager)); writer.WriteStartObject(); if (!string.IsNullOrEmpty(documentType.Name)) { writer.WritePropertyName("@name"); writer.WriteValue(documentType.Name); } if (!string.IsNullOrEmpty(documentType.Public)) { writer.WritePropertyName("@public"); writer.WriteValue(documentType.Public); } if (!string.IsNullOrEmpty(documentType.System)) { writer.WritePropertyName("@system"); writer.WriteValue(documentType.System); } if (!string.IsNullOrEmpty(documentType.InternalSubset)) { writer.WritePropertyName("@internalSubset"); writer.WriteValue(documentType.InternalSubset); } writer.WriteEndObject(); break; default: throw new JsonSerializationException("Unexpected XmlNodeType when serializing nodes: " + node.NodeType); } } #endregion #region Reading /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; XmlNamespaceManager manager = new XmlNamespaceManager(new NameTable()); IXmlDocument document = null; IXmlNode rootNode = null; #if !NET20 if (typeof(XObject).IsAssignableFrom(objectType)) { if (objectType != typeof(XDocument) && objectType != typeof(XElement)) throw new JsonSerializationException("XmlNodeConverter only supports deserializing XDocument or XElement."); XDocument d = new XDocument(); document = new XDocumentWrapper(d); rootNode = document; } #endif #if !(NETFX_CORE || PORTABLE) if (typeof(XmlNode).IsAssignableFrom(objectType)) { if (objectType != typeof(XmlDocument)) throw new JsonSerializationException("XmlNodeConverter only supports deserializing XmlDocuments"); XmlDocument d = new XmlDocument(); // prevent http request when resolving any DTD references d.XmlResolver = null; document = new XmlDocumentWrapper(d); rootNode = document; } #endif if (document == null || rootNode == null) throw new JsonSerializationException("Unexpected type when converting XML: " + objectType); if (reader.TokenType != JsonToken.StartObject) throw new JsonSerializationException("XmlNodeConverter can only convert JSON that begins with an object."); if (!string.IsNullOrEmpty(DeserializeRootElementName)) { //rootNode = document.CreateElement(DeserializeRootElementName); //document.AppendChild(rootNode); ReadElement(reader, document, rootNode, DeserializeRootElementName, manager); } else { reader.Read(); DeserializeNode(reader, document, manager, rootNode); } #if !NET20 if (objectType == typeof(XElement)) { XElement element = (XElement)document.DocumentElement.WrappedNode; element.Remove(); return element; } #endif return document.WrappedNode; } private void DeserializeValue(JsonReader reader, IXmlDocument document, XmlNamespaceManager manager, string propertyName, IXmlNode currentNode) { switch (propertyName) { case TextName: currentNode.AppendChild(document.CreateTextNode(reader.Value.ToString())); break; case CDataName: currentNode.AppendChild(document.CreateCDataSection(reader.Value.ToString())); break; case WhitespaceName: currentNode.AppendChild(document.CreateWhitespace(reader.Value.ToString())); break; case SignificantWhitespaceName: currentNode.AppendChild(document.CreateSignificantWhitespace(reader.Value.ToString())); break; default: // processing instructions and the xml declaration start with ? if (!string.IsNullOrEmpty(propertyName) && propertyName[0] == '?') { CreateInstruction(reader, document, currentNode, propertyName); } else if (string.Equals(propertyName, "!DOCTYPE", StringComparison.OrdinalIgnoreCase)) { CreateDocumentType(reader, document, currentNode); } else { if (reader.TokenType == JsonToken.StartArray) { // handle nested arrays ReadArrayElements(reader, document, propertyName, currentNode, manager); return; } // have to wait until attributes have been parsed before creating element // attributes may contain namespace info used by the element ReadElement(reader, document, currentNode, propertyName, manager); } break; } } private void ReadElement(JsonReader reader, IXmlDocument document, IXmlNode currentNode, string propertyName, XmlNamespaceManager manager) { if (string.IsNullOrEmpty(propertyName)) throw new JsonSerializationException("XmlNodeConverter cannot convert JSON with an empty property name to XML."); Dictionary attributeNameValues = ReadAttributeElements(reader, manager); string elementPrefix = MiscellaneousUtils.GetPrefix(propertyName); if (propertyName.StartsWith('@')) { string attributeName = propertyName.Substring(1); string attributeValue = reader.Value.ToString(); string attributePrefix = MiscellaneousUtils.GetPrefix(attributeName); IXmlNode attribute = (!string.IsNullOrEmpty(attributePrefix)) ? document.CreateAttribute(attributeName, manager.LookupNamespace(attributePrefix), attributeValue) : document.CreateAttribute(attributeName, attributeValue); ((IXmlElement)currentNode).SetAttributeNode(attribute); } else { IXmlElement element = CreateElement(propertyName, document, elementPrefix, manager); currentNode.AppendChild(element); // add attributes to newly created element foreach (KeyValuePair nameValue in attributeNameValues) { string attributePrefix = MiscellaneousUtils.GetPrefix(nameValue.Key); IXmlNode attribute = (!string.IsNullOrEmpty(attributePrefix)) ? document.CreateAttribute(nameValue.Key, manager.LookupNamespace(attributePrefix), nameValue.Value) : document.CreateAttribute(nameValue.Key, nameValue.Value); element.SetAttributeNode(attribute); } if (reader.TokenType == JsonToken.String || reader.TokenType == JsonToken.Integer || reader.TokenType == JsonToken.Float || reader.TokenType == JsonToken.Boolean || reader.TokenType == JsonToken.Date) { element.AppendChild(document.CreateTextNode(ConvertTokenToXmlValue(reader))); } else if (reader.TokenType == JsonToken.Null) { // empty element. do nothing } else { // finished element will have no children to deserialize if (reader.TokenType != JsonToken.EndObject) { manager.PushScope(); DeserializeNode(reader, document, manager, element); manager.PopScope(); } manager.RemoveNamespace(string.Empty, manager.DefaultNamespace); } } } private string ConvertTokenToXmlValue(JsonReader reader) { if (reader.TokenType == JsonToken.String) { return reader.Value.ToString(); } else if (reader.TokenType == JsonToken.Integer) { return XmlConvert.ToString(Convert.ToInt64(reader.Value, CultureInfo.InvariantCulture)); } else if (reader.TokenType == JsonToken.Float) { if (reader.Value is decimal) return XmlConvert.ToString((decimal)reader.Value); if (reader.Value is float) return XmlConvert.ToString((float)reader.Value); return XmlConvert.ToString(Convert.ToDouble(reader.Value, CultureInfo.InvariantCulture)); } else if (reader.TokenType == JsonToken.Boolean) { return XmlConvert.ToString(Convert.ToBoolean(reader.Value, CultureInfo.InvariantCulture)); } else if (reader.TokenType == JsonToken.Date) { #if !NET20 if (reader.Value is DateTimeOffset) return XmlConvert.ToString((DateTimeOffset)reader.Value); #endif DateTime d = Convert.ToDateTime(reader.Value, CultureInfo.InvariantCulture); #if !(NETFX_CORE || PORTABLE) return XmlConvert.ToString(d, DateTimeUtils.ToSerializationMode(d.Kind)); #else return XmlConvert.ToString(d); #endif } else if (reader.TokenType == JsonToken.Null) { return null; } else { throw JsonSerializationException.Create(reader, "Cannot get an XML string value from token type '{0}'.".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); } } private void ReadArrayElements(JsonReader reader, IXmlDocument document, string propertyName, IXmlNode currentNode, XmlNamespaceManager manager) { string elementPrefix = MiscellaneousUtils.GetPrefix(propertyName); IXmlElement nestedArrayElement = CreateElement(propertyName, document, elementPrefix, manager); currentNode.AppendChild(nestedArrayElement); int count = 0; while (reader.Read() && reader.TokenType != JsonToken.EndArray) { DeserializeValue(reader, document, manager, propertyName, nestedArrayElement); count++; } if (WriteArrayAttribute) { AddJsonArrayAttribute(nestedArrayElement, document); } if (count == 1 && WriteArrayAttribute) { IXmlElement arrayElement = nestedArrayElement.ChildNodes.OfType().Single(n => n.LocalName == propertyName); AddJsonArrayAttribute(arrayElement, document); } } private void AddJsonArrayAttribute(IXmlElement element, IXmlDocument document) { element.SetAttributeNode(document.CreateAttribute("json:Array", JsonNamespaceUri, "true")); #if !NET20 // linq to xml doesn't automatically include prefixes via the namespace manager if (element is XElementWrapper) { if (element.GetPrefixOfNamespace(JsonNamespaceUri) == null) { element.SetAttributeNode(document.CreateAttribute("xmlns:json", "http://www.w3.org/2000/xmlns/", JsonNamespaceUri)); } } #endif } private Dictionary ReadAttributeElements(JsonReader reader, XmlNamespaceManager manager) { Dictionary attributeNameValues = new Dictionary(); bool finishedAttributes = false; bool finishedElement = false; // a string token means the element only has a single text child if (reader.TokenType != JsonToken.String && reader.TokenType != JsonToken.Null && reader.TokenType != JsonToken.Boolean && reader.TokenType != JsonToken.Integer && reader.TokenType != JsonToken.Float && reader.TokenType != JsonToken.Date && reader.TokenType != JsonToken.StartConstructor) { // read properties until first non-attribute is encountered while (!finishedAttributes && !finishedElement && reader.Read()) { switch (reader.TokenType) { case JsonToken.PropertyName: string attributeName = reader.Value.ToString(); if (!string.IsNullOrEmpty(attributeName)) { char firstChar = attributeName[0]; string attributeValue; switch (firstChar) { case '@': attributeName = attributeName.Substring(1); reader.Read(); attributeValue = ConvertTokenToXmlValue(reader); attributeNameValues.Add(attributeName, attributeValue); string namespacePrefix; if (IsNamespaceAttribute(attributeName, out namespacePrefix)) { manager.AddNamespace(namespacePrefix, attributeValue); } break; case '$': attributeName = attributeName.Substring(1); reader.Read(); attributeValue = reader.Value.ToString(); // check that JsonNamespaceUri is in scope // if it isn't then add it to document and namespace manager string jsonPrefix = manager.LookupPrefix(JsonNamespaceUri); if (jsonPrefix == null) { // ensure that the prefix used is free int? i = null; while (manager.LookupNamespace("json" + i) != null) { i = i.GetValueOrDefault() + 1; } jsonPrefix = "json" + i; attributeNameValues.Add("xmlns:" + jsonPrefix, JsonNamespaceUri); manager.AddNamespace(jsonPrefix, JsonNamespaceUri); } attributeNameValues.Add(jsonPrefix + ":" + attributeName, attributeValue); break; default: finishedAttributes = true; break; } } else { finishedAttributes = true; } break; case JsonToken.EndObject: finishedElement = true; break; case JsonToken.Comment: finishedElement = true; break; default: throw new JsonSerializationException("Unexpected JsonToken: " + reader.TokenType); } } } return attributeNameValues; } private void CreateInstruction(JsonReader reader, IXmlDocument document, IXmlNode currentNode, string propertyName) { if (propertyName == DeclarationName) { string version = null; string encoding = null; string standalone = null; while (reader.Read() && reader.TokenType != JsonToken.EndObject) { switch (reader.Value.ToString()) { case "@version": reader.Read(); version = reader.Value.ToString(); break; case "@encoding": reader.Read(); encoding = reader.Value.ToString(); break; case "@standalone": reader.Read(); standalone = reader.Value.ToString(); break; default: throw new JsonSerializationException("Unexpected property name encountered while deserializing XmlDeclaration: " + reader.Value); } } IXmlNode declaration = document.CreateXmlDeclaration(version, encoding, standalone); currentNode.AppendChild(declaration); } else { IXmlNode instruction = document.CreateProcessingInstruction(propertyName.Substring(1), reader.Value.ToString()); currentNode.AppendChild(instruction); } } private void CreateDocumentType(JsonReader reader, IXmlDocument document, IXmlNode currentNode) { string name = null; string publicId = null; string systemId = null; string internalSubset = null; while (reader.Read() && reader.TokenType != JsonToken.EndObject) { switch (reader.Value.ToString()) { case "@name": reader.Read(); name = reader.Value.ToString(); break; case "@public": reader.Read(); publicId = reader.Value.ToString(); break; case "@system": reader.Read(); systemId = reader.Value.ToString(); break; case "@internalSubset": reader.Read(); internalSubset = reader.Value.ToString(); break; default: throw new JsonSerializationException("Unexpected property name encountered while deserializing XmlDeclaration: " + reader.Value); } } IXmlNode documentType = document.CreateXmlDocumentType(name, publicId, systemId, internalSubset); currentNode.AppendChild(documentType); } private IXmlElement CreateElement(string elementName, IXmlDocument document, string elementPrefix, XmlNamespaceManager manager) { string ns = string.IsNullOrEmpty(elementPrefix) ? manager.DefaultNamespace : manager.LookupNamespace(elementPrefix); IXmlElement element = (!string.IsNullOrEmpty(ns)) ? document.CreateElement(elementName, ns) : document.CreateElement(elementName); return element; } private void DeserializeNode(JsonReader reader, IXmlDocument document, XmlNamespaceManager manager, IXmlNode currentNode) { do { switch (reader.TokenType) { case JsonToken.PropertyName: if (currentNode.NodeType == XmlNodeType.Document && document.DocumentElement != null) throw new JsonSerializationException("JSON root object has multiple properties. The root object must have a single property in order to create a valid XML document. Consider specifing a DeserializeRootElementName."); string propertyName = reader.Value.ToString(); reader.Read(); if (reader.TokenType == JsonToken.StartArray) { int count = 0; while (reader.Read() && reader.TokenType != JsonToken.EndArray) { DeserializeValue(reader, document, manager, propertyName, currentNode); count++; } if (count == 1 && WriteArrayAttribute) { IXmlElement arrayElement = currentNode.ChildNodes.OfType().Single(n => n.LocalName == propertyName); AddJsonArrayAttribute(arrayElement, document); } } else { DeserializeValue(reader, document, manager, propertyName, currentNode); } break; case JsonToken.StartConstructor: string constructorName = reader.Value.ToString(); while (reader.Read() && reader.TokenType != JsonToken.EndConstructor) { DeserializeValue(reader, document, manager, constructorName, currentNode); } break; case JsonToken.Comment: currentNode.AppendChild(document.CreateComment((string)reader.Value)); break; case JsonToken.EndObject: case JsonToken.EndArray: return; default: throw new JsonSerializationException("Unexpected JsonToken when deserializing node: " + reader.TokenType); } } while (reader.TokenType == JsonToken.PropertyName || reader.Read()); // don't read if current token is a property. token was already read when parsing element attributes } /// /// Checks if the attributeName is a namespace attribute. /// /// Attribute name to test. /// The attribute name prefix if it has one, otherwise an empty string. /// True if attribute name is for a namespace attribute, otherwise false. private bool IsNamespaceAttribute(string attributeName, out string prefix) { if (attributeName.StartsWith("xmlns", StringComparison.Ordinal)) { if (attributeName.Length == 5) { prefix = string.Empty; return true; } else if (attributeName[5] == ':') { prefix = attributeName.Substring(6, attributeName.Length - 6); return true; } } prefix = null; return false; } private IEnumerable ValueAttributes(IEnumerable c) { return c.Where(a => a.NamespaceUri != JsonNamespaceUri); } #endregion /// /// Determines whether this instance can convert the specified value type. /// /// Type of the value. /// /// true if this instance can convert the specified value type; otherwise, false. /// public override bool CanConvert(Type valueType) { #if !NET20 if (typeof(XObject).IsAssignableFrom(valueType)) return true; #endif #if !(NETFX_CORE || PORTABLE) if (typeof(XmlNode).IsAssignableFrom(valueType)) return true; #endif return false; } } } #endif newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/CustomCreationConverter.cs0000664000175000017500000000772712454416117030563 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Converters { /// /// Create a custom object /// /// The object type to convert. public abstract class CustomCreationConverter : JsonConverter { /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { throw new NotSupportedException("CustomCreationConverter should only be used while deserializing."); } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; T value = Create(objectType); if (value == null) throw new JsonSerializationException("No object created."); serializer.Populate(reader, value); return value; } /// /// Creates an object which will then be populated by the serializer. /// /// Type of the object. /// The created object. public abstract T Create(Type objectType); /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { return typeof(T).IsAssignableFrom(objectType); } /// /// Gets a value indicating whether this can write JSON. /// /// /// true if this can write JSON; otherwise, false. /// public override bool CanWrite { get { return false; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/DateTimeConverterBase.cs0000664000175000017500000000410212454416117030073 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Converters { /// /// Provides a base class for converting a to and from JSON. /// public abstract class DateTimeConverterBase : JsonConverter { /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { if (objectType == typeof(DateTime) || objectType == typeof(DateTime?)) return true; #if !NET20 if (objectType == typeof(DateTimeOffset) || objectType == typeof(DateTimeOffset?)) return true; #endif return false; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/BinaryConverter.cs0000664000175000017500000001574512454416117027047 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE40 || PORTABLE) using System; using System.Data.SqlTypes; using System.Globalization; using Newtonsoft.Json.Utilities; using System.Collections.Generic; namespace Newtonsoft.Json.Converters { /// /// Converts a binary value to and from a base 64 string value. /// public class BinaryConverter : JsonConverter { #if !NET20 private const string BinaryTypeName = "System.Data.Linq.Binary"; private const string BinaryToArrayName = "ToArray"; private ReflectionObject _reflectionObject; #endif /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { if (value == null) { writer.WriteNull(); return; } byte[] data = GetByteArray(value); writer.WriteValue(data); } private byte[] GetByteArray(object value) { #if !(NET20) if (value.GetType().AssignableToTypeName(BinaryTypeName)) { EnsureReflectionObject(value.GetType()); return (byte[])_reflectionObject.GetValue(value, BinaryToArrayName); } #endif if (value is SqlBinary) return ((SqlBinary)value).Value; throw new JsonSerializationException("Unexpected value type when writing binary: {0}".FormatWith(CultureInfo.InvariantCulture, value.GetType())); } #if !NET20 private void EnsureReflectionObject(Type t) { if (_reflectionObject == null) _reflectionObject = ReflectionObject.Create(t, t.GetConstructor(new[] { typeof(byte[]) }), BinaryToArrayName); } #endif /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { Type t = (ReflectionUtils.IsNullableType(objectType)) ? Nullable.GetUnderlyingType(objectType) : objectType; if (reader.TokenType == JsonToken.Null) { if (!ReflectionUtils.IsNullable(objectType)) throw JsonSerializationException.Create(reader, "Cannot convert null value to {0}.".FormatWith(CultureInfo.InvariantCulture, objectType)); return null; } byte[] data; if (reader.TokenType == JsonToken.StartArray) { data = ReadByteArray(reader); } else if (reader.TokenType == JsonToken.String) { // current token is already at base64 string // unable to call ReadAsBytes so do it the old fashion way string encodedData = reader.Value.ToString(); data = Convert.FromBase64String(encodedData); } else { throw JsonSerializationException.Create(reader, "Unexpected token parsing binary. Expected String or StartArray, got {0}.".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); } #if !NET20 if (t.AssignableToTypeName(BinaryTypeName)) { EnsureReflectionObject(t); return _reflectionObject.Creator(data); } #endif if (t == typeof(SqlBinary)) return new SqlBinary(data); throw JsonSerializationException.Create(reader, "Unexpected object type when writing binary: {0}".FormatWith(CultureInfo.InvariantCulture, objectType)); } private byte[] ReadByteArray(JsonReader reader) { List byteList = new List(); while (reader.Read()) { switch (reader.TokenType) { case JsonToken.Integer: byteList.Add(Convert.ToByte(reader.Value, CultureInfo.InvariantCulture)); break; case JsonToken.EndArray: return byteList.ToArray(); case JsonToken.Comment: // skip break; default: throw JsonSerializationException.Create(reader, "Unexpected token when reading bytes: {0}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); } } throw JsonSerializationException.Create(reader, "Unexpected end when reading bytes."); } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { #if !NET20 if (objectType.AssignableToTypeName(BinaryTypeName)) return true; #endif if (objectType == typeof(SqlBinary) || objectType == typeof(SqlBinary?)) return true; return false; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/BsonObjectIdConverter.cs0000664000175000017500000000703312454416117030117 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Bson; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Converters { /// /// Converts a to and from JSON and BSON. /// public class BsonObjectIdConverter : JsonConverter { /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { BsonObjectId objectId = (BsonObjectId)value; BsonWriter bsonWriter = writer as BsonWriter; if (bsonWriter != null) { bsonWriter.WriteObjectId(objectId.Value); } else { writer.WriteValue(objectId.Value); } } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType != JsonToken.Bytes) throw new JsonSerializationException("Expected Bytes but got {0}.".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); byte[] value = (byte[])reader.Value; return new BsonObjectId(value); } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { return (objectType == typeof(BsonObjectId)); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/StringEnumConverter.cs0000664000175000017500000001434212454416117027706 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.Reflection; using System.Runtime.Serialization; using Newtonsoft.Json.Utilities; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Converters { /// /// Converts an to and from its name string value. /// public class StringEnumConverter : JsonConverter { /// /// Gets or sets a value indicating whether the written enum text should be camel case. /// /// true if the written enum text will be camel case; otherwise, false. public bool CamelCaseText { get; set; } /// /// Gets or sets a value indicating whether integer values are allowed. /// /// true if integers are allowed; otherwise, false. public bool AllowIntegerValues { get; set; } /// /// Initializes a new instance of the class. /// public StringEnumConverter() { AllowIntegerValues = true; } /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { if (value == null) { writer.WriteNull(); return; } Enum e = (Enum)value; string enumName = e.ToString("G"); if (char.IsNumber(enumName[0]) || enumName[0] == '-') { // enum value has no name so write number writer.WriteValue(value); } else { Type enumType = e.GetType(); string finalName = EnumUtils.ToEnumName(enumType, enumName, CamelCaseText); writer.WriteValue(finalName); } } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { bool isNullable = ReflectionUtils.IsNullableType(objectType); Type t = isNullable ? Nullable.GetUnderlyingType(objectType) : objectType; if (reader.TokenType == JsonToken.Null) { if (!ReflectionUtils.IsNullableType(objectType)) throw JsonSerializationException.Create(reader, "Cannot convert null value to {0}.".FormatWith(CultureInfo.InvariantCulture, objectType)); return null; } try { if (reader.TokenType == JsonToken.String) { string enumText = reader.Value.ToString(); return EnumUtils.ParseEnumName(enumText, isNullable, t); } if (reader.TokenType == JsonToken.Integer) { if (!AllowIntegerValues) throw JsonSerializationException.Create(reader, "Integer value {0} is not allowed.".FormatWith(CultureInfo.InvariantCulture, reader.Value)); return ConvertUtils.ConvertOrCast(reader.Value, CultureInfo.InvariantCulture, t); } } catch (Exception ex) { throw JsonSerializationException.Create(reader, "Error converting value {0} to type '{1}'.".FormatWith(CultureInfo.InvariantCulture, MiscellaneousUtils.FormatValueForPrint(reader.Value), objectType), ex); } // we don't actually expect to get here. throw JsonSerializationException.Create(reader, "Unexpected token {0} when parsing enum.".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { Type t = (ReflectionUtils.IsNullableType(objectType)) ? Nullable.GetUnderlyingType(objectType) : objectType; return t.IsEnum(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/DiscriminatedUnionConverter.cs0000664000175000017500000002147112454416117031404 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || NETFX_CORE) using Newtonsoft.Json.Linq; using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Reflection; using Newtonsoft.Json.Serialization; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Converters { /// /// Converts a F# discriminated union type to and from JSON. /// public class DiscriminatedUnionConverter : JsonConverter { private const string CasePropertyName = "Case"; private const string FieldsPropertyName = "Fields"; /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { DefaultContractResolver resolver = serializer.ContractResolver as DefaultContractResolver; Type t = value.GetType(); object result = FSharpUtils.GetUnionFields(null, value, t, null); object info = FSharpUtils.GetUnionCaseInfo(result); object fields = FSharpUtils.GetUnionCaseFields(result); object caseName = FSharpUtils.GetUnionCaseInfoName(info); object[] fieldsAsArray = fields as object[]; writer.WriteStartObject(); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(CasePropertyName) : CasePropertyName); writer.WriteValue((string)caseName); if (fieldsAsArray != null && fieldsAsArray.Length > 0) { writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(FieldsPropertyName) : FieldsPropertyName); serializer.Serialize(writer, fields); } writer.WriteEndObject(); } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; object matchingCaseInfo = null; string caseName = null; JArray fields = null; // start object ReadAndAssert(reader); while (reader.TokenType == JsonToken.PropertyName) { string propertyName = reader.Value.ToString(); if (string.Equals(propertyName, CasePropertyName, StringComparison.OrdinalIgnoreCase)) { ReadAndAssert(reader); IEnumerable cases = (IEnumerable)FSharpUtils.GetUnionCases(null, objectType, null); caseName = reader.Value.ToString(); foreach (object c in cases) { if ((string)FSharpUtils.GetUnionCaseInfoName(c) == caseName) { matchingCaseInfo = c; break; } } if (matchingCaseInfo == null) throw JsonSerializationException.Create(reader, "No union type found with the name '{0}'.".FormatWith(CultureInfo.InvariantCulture, caseName)); } else if (string.Equals(propertyName, FieldsPropertyName, StringComparison.OrdinalIgnoreCase)) { ReadAndAssert(reader); if (reader.TokenType != JsonToken.StartArray) throw JsonSerializationException.Create(reader, "Union fields must been an array."); fields = (JArray)JToken.ReadFrom(reader); } else { throw JsonSerializationException.Create(reader, "Unexpected property '{0}' found when reading union.".FormatWith(CultureInfo.InvariantCulture, propertyName)); } ReadAndAssert(reader); } if (matchingCaseInfo == null) throw JsonSerializationException.Create(reader, "No '{0}' property with union name found.".FormatWith(CultureInfo.InvariantCulture, CasePropertyName)); PropertyInfo[] fieldProperties = (PropertyInfo[])FSharpUtils.GetUnionCaseInfoFields(matchingCaseInfo); object[] typedFieldValues = new object[fieldProperties.Length]; if (fieldProperties.Length > 0 && fields == null) throw JsonSerializationException.Create(reader, "No '{0}' property with union fields found.".FormatWith(CultureInfo.InvariantCulture, FieldsPropertyName)); if (fields != null) { if (fieldProperties.Length != fields.Count) throw JsonSerializationException.Create(reader, "The number of field values does not match the number of properties definied by union '{0}'.".FormatWith(CultureInfo.InvariantCulture, caseName)); for (int i = 0; i < fields.Count; i++) { JToken t = fields[i]; PropertyInfo fieldProperty = fieldProperties[i]; typedFieldValues[i] = t.ToObject(fieldProperty.PropertyType, serializer); } } return FSharpUtils.MakeUnion(null, matchingCaseInfo, typedFieldValues, null); } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { if (typeof(IEnumerable).IsAssignableFrom(objectType)) return false; // all fsharp objects have CompilationMappingAttribute // get the fsharp assembly from the attribute and initialize latebound methods object[] attributes; #if !(NETFX_CORE || PORTABLE) attributes = objectType.GetCustomAttributes(true); #else attributes = objectType.GetTypeInfo().GetCustomAttributes(true).ToArray(); #endif bool isFSharpType = false; foreach (object attribute in attributes) { Type attributeType = attribute.GetType(); if (attributeType.FullName == "Microsoft.FSharp.Core.CompilationMappingAttribute") { FSharpUtils.EnsureInitialized(attributeType.Assembly()); isFSharpType = true; break; } } if (!isFSharpType) return false; return (bool)FSharpUtils.IsUnion(null, objectType, null); } private static void ReadAndAssert(JsonReader reader) { if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when reading union."); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/DataSetConverter.cs0000664000175000017500000001062212454416117027135 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE40 || PORTABLE) using System; using System.Data; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Converters { /// /// Converts a to and from JSON. /// public class DataSetConverter : JsonConverter { /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { DataSet dataSet = (DataSet)value; DefaultContractResolver resolver = serializer.ContractResolver as DefaultContractResolver; DataTableConverter converter = new DataTableConverter(); writer.WriteStartObject(); foreach (DataTable table in dataSet.Tables) { writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(table.TableName) : table.TableName); converter.WriteJson(writer, table, serializer); } writer.WriteEndObject(); } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { // handle typed datasets DataSet ds = (objectType == typeof(DataSet)) ? new DataSet() : (DataSet)Activator.CreateInstance(objectType); DataTableConverter converter = new DataTableConverter(); CheckedRead(reader); while (reader.TokenType == JsonToken.PropertyName) { DataTable dt = ds.Tables[(string)reader.Value]; bool exists = (dt != null); dt = (DataTable)converter.ReadJson(reader, typeof(DataTable), dt, serializer); if (!exists) ds.Tables.Add(dt); CheckedRead(reader); } return ds; } /// /// Determines whether this instance can convert the specified value type. /// /// Type of the value. /// /// true if this instance can convert the specified value type; otherwise, false. /// public override bool CanConvert(Type valueType) { return typeof(DataSet).IsAssignableFrom(valueType); } private void CheckedRead(JsonReader reader) { if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when reading DataSet."); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/RegexConverter.cs0000664000175000017500000002005712454416117026665 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Text.RegularExpressions; using Newtonsoft.Json.Bson; using System.Globalization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Converters { /// /// Converts a to and from JSON and BSON. /// public class RegexConverter : JsonConverter { private const string PatternName = "Pattern"; private const string OptionsName = "Options"; /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { Regex regex = (Regex)value; BsonWriter bsonWriter = writer as BsonWriter; if (bsonWriter != null) WriteBson(bsonWriter, regex); else WriteJson(writer, regex, serializer); } private bool HasFlag(RegexOptions options, RegexOptions flag) { return ((options & flag) == flag); } private void WriteBson(BsonWriter writer, Regex regex) { // Regular expression - The first cstring is the regex pattern, the second // is the regex options string. Options are identified by characters, which // must be stored in alphabetical order. Valid options are 'i' for case // insensitive matching, 'm' for multiline matching, 'x' for verbose mode, // 'l' to make \w, \W, etc. locale dependent, 's' for dotall mode // ('.' matches everything), and 'u' to make \w, \W, etc. match unicode. string options = null; if (HasFlag(regex.Options, RegexOptions.IgnoreCase)) options += "i"; if (HasFlag(regex.Options, RegexOptions.Multiline)) options += "m"; if (HasFlag(regex.Options, RegexOptions.Singleline)) options += "s"; options += "u"; if (HasFlag(regex.Options, RegexOptions.ExplicitCapture)) options += "x"; writer.WriteRegex(regex.ToString(), options); } private void WriteJson(JsonWriter writer, Regex regex, JsonSerializer serializer) { DefaultContractResolver resolver = serializer.ContractResolver as DefaultContractResolver; writer.WriteStartObject(); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(PatternName) : PatternName); writer.WriteValue(regex.ToString()); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(OptionsName) : OptionsName); serializer.Serialize(writer, regex.Options); writer.WriteEndObject(); } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.StartObject) return ReadRegexObject(reader, serializer); if (reader.TokenType == JsonToken.String) return ReadRegexString(reader); throw JsonSerializationException.Create(reader, "Unexpected token when reading Regex."); } private object ReadRegexString(JsonReader reader) { string regexText = (string)reader.Value; int patternOptionDelimiterIndex = regexText.LastIndexOf('/'); string patternText = regexText.Substring(1, patternOptionDelimiterIndex - 1); string optionsText = regexText.Substring(patternOptionDelimiterIndex + 1); RegexOptions options = RegexOptions.None; foreach (char c in optionsText) { switch (c) { case 'i': options |= RegexOptions.IgnoreCase; break; case 'm': options |= RegexOptions.Multiline; break; case 's': options |= RegexOptions.Singleline; break; case 'x': options |= RegexOptions.ExplicitCapture; break; } } return new Regex(patternText, options); } private Regex ReadRegexObject(JsonReader reader, JsonSerializer serializer) { string pattern = null; RegexOptions? options = null; while (reader.Read()) { switch (reader.TokenType) { case JsonToken.PropertyName: string propertyName = reader.Value.ToString(); if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when reading Regex."); if (string.Equals(propertyName, PatternName, StringComparison.OrdinalIgnoreCase)) pattern = (string)reader.Value; else if (string.Equals(propertyName, OptionsName, StringComparison.OrdinalIgnoreCase)) options = serializer.Deserialize(reader); else reader.Skip(); break; case JsonToken.Comment: break; case JsonToken.EndObject: if (pattern == null) throw JsonSerializationException.Create(reader, "Error deserializing Regex. No pattern found."); return new Regex(pattern, options ?? RegexOptions.None); } } throw JsonSerializationException.Create(reader, "Unexpected end when reading Regex."); } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { return (objectType == typeof(Regex)); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/EntityKeyMemberConverter.cs0000664000175000017500000001447612454416117030700 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET20 || NETFX_CORE || PORTABLE40 || PORTABLE) using System; using Newtonsoft.Json.Serialization; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Converters { /// /// Converts an Entity Framework EntityKey to and from JSON. /// public class EntityKeyMemberConverter : JsonConverter { private const string EntityKeyMemberFullTypeName = "System.Data.EntityKeyMember"; private const string KeyPropertyName = "Key"; private const string TypePropertyName = "Type"; private const string ValuePropertyName = "Value"; private static ReflectionObject _reflectionObject; /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { EnsureReflectionObject(value.GetType()); DefaultContractResolver resolver = serializer.ContractResolver as DefaultContractResolver; string keyName = (string)_reflectionObject.GetValue(value, KeyPropertyName); object keyValue = _reflectionObject.GetValue(value, ValuePropertyName); Type keyValueType = (keyValue != null) ? keyValue.GetType() : null; writer.WriteStartObject(); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(KeyPropertyName) : KeyPropertyName); writer.WriteValue(keyName); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(TypePropertyName) : TypePropertyName); writer.WriteValue((keyValueType != null) ? keyValueType.FullName : null); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(ValuePropertyName) : ValuePropertyName); if (keyValueType != null) { string valueJson; if (JsonSerializerInternalWriter.TryConvertToString(keyValue, keyValueType, out valueJson)) writer.WriteValue(valueJson); else writer.WriteValue(keyValue); } else { writer.WriteNull(); } writer.WriteEndObject(); } private static void ReadAndAssertProperty(JsonReader reader, string propertyName) { ReadAndAssert(reader); if (reader.TokenType != JsonToken.PropertyName || !string.Equals(reader.Value.ToString(), propertyName, StringComparison.OrdinalIgnoreCase)) throw new JsonSerializationException("Expected JSON property '{0}'.".FormatWith(CultureInfo.InvariantCulture, propertyName)); } private static void ReadAndAssert(JsonReader reader) { if (!reader.Read()) throw new JsonSerializationException("Unexpected end."); } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { EnsureReflectionObject(objectType); object entityKeyMember = _reflectionObject.Creator(); ReadAndAssertProperty(reader, KeyPropertyName); ReadAndAssert(reader); _reflectionObject.SetValue(entityKeyMember, KeyPropertyName, reader.Value.ToString()); ReadAndAssertProperty(reader, TypePropertyName); ReadAndAssert(reader); string type = reader.Value.ToString(); Type t = Type.GetType(type); ReadAndAssertProperty(reader, ValuePropertyName); ReadAndAssert(reader); _reflectionObject.SetValue(entityKeyMember, ValuePropertyName, serializer.Deserialize(reader, t)); ReadAndAssert(reader); return entityKeyMember; } private static void EnsureReflectionObject(Type objectType) { if (_reflectionObject == null) _reflectionObject = ReflectionObject.Create(objectType, KeyPropertyName, ValuePropertyName); } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { return objectType.AssignableToTypeName(EntityKeyMemberFullTypeName); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/KeyValuePairConverter.cs0000664000175000017500000001444012454416117030153 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Utilities; using System.Reflection; namespace Newtonsoft.Json.Converters { /// /// Converts a to and from JSON. /// public class KeyValuePairConverter : JsonConverter { private const string KeyName = "Key"; private const string ValueName = "Value"; private static readonly ThreadSafeStore ReflectionObjectPerType = new ThreadSafeStore(InitializeReflectionObject); private static ReflectionObject InitializeReflectionObject(Type t) { IList genericArguments = t.GetGenericArguments(); Type keyType = genericArguments[0]; Type valueType = genericArguments[1]; return ReflectionObject.Create(t, t.GetConstructor(new[] { keyType, valueType }), KeyName, ValueName); } /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { ReflectionObject reflectionObject = ReflectionObjectPerType.Get(value.GetType()); DefaultContractResolver resolver = serializer.ContractResolver as DefaultContractResolver; writer.WriteStartObject(); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(KeyName) : KeyName); serializer.Serialize(writer, reflectionObject.GetValue(value, KeyName), reflectionObject.GetType(KeyName)); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(ValueName) : ValueName); serializer.Serialize(writer, reflectionObject.GetValue(value, ValueName), reflectionObject.GetType(ValueName)); writer.WriteEndObject(); } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { bool isNullable = ReflectionUtils.IsNullableType(objectType); Type t = (isNullable) ? Nullable.GetUnderlyingType(objectType) : objectType; ReflectionObject reflectionObject = ReflectionObjectPerType.Get(t); if (reader.TokenType == JsonToken.Null) { if (!isNullable) throw JsonSerializationException.Create(reader, "Cannot convert null value to KeyValuePair."); return null; } object key = null; object value = null; ReadAndAssert(reader); while (reader.TokenType == JsonToken.PropertyName) { string propertyName = reader.Value.ToString(); if (string.Equals(propertyName, KeyName, StringComparison.OrdinalIgnoreCase)) { ReadAndAssert(reader); key = serializer.Deserialize(reader, reflectionObject.GetType(KeyName)); } else if (string.Equals(propertyName, ValueName, StringComparison.OrdinalIgnoreCase)) { ReadAndAssert(reader); value = serializer.Deserialize(reader, reflectionObject.GetType(ValueName)); } else { reader.Skip(); } ReadAndAssert(reader); } return reflectionObject.Creator(key, value); } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { Type t = (ReflectionUtils.IsNullableType(objectType)) ? Nullable.GetUnderlyingType(objectType) : objectType; if (t.IsValueType() && t.IsGenericType()) return (t.GetGenericTypeDefinition() == typeof(KeyValuePair<,>)); return false; } private static void ReadAndAssert(JsonReader reader) { if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when reading KeyValuePair."); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/IsoDateTimeConverter.cs0000664000175000017500000001600012454416117027753 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Converters { /// /// Converts a to and from the ISO 8601 date format (e.g. 2008-04-12T12:53Z). /// public class IsoDateTimeConverter : DateTimeConverterBase { private const string DefaultDateTimeFormat = "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK"; private DateTimeStyles _dateTimeStyles = DateTimeStyles.RoundtripKind; private string _dateTimeFormat; private CultureInfo _culture; /// /// Gets or sets the date time styles used when converting a date to and from JSON. /// /// The date time styles used when converting a date to and from JSON. public DateTimeStyles DateTimeStyles { get { return _dateTimeStyles; } set { _dateTimeStyles = value; } } /// /// Gets or sets the date time format used when converting a date to and from JSON. /// /// The date time format used when converting a date to and from JSON. public string DateTimeFormat { get { return _dateTimeFormat ?? string.Empty; } set { _dateTimeFormat = StringUtils.NullEmptyString(value); } } /// /// Gets or sets the culture used when converting a date to and from JSON. /// /// The culture used when converting a date to and from JSON. public CultureInfo Culture { get { return _culture ?? CultureInfo.CurrentCulture; } set { _culture = value; } } /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { string text; if (value is DateTime) { DateTime dateTime = (DateTime)value; if ((_dateTimeStyles & DateTimeStyles.AdjustToUniversal) == DateTimeStyles.AdjustToUniversal || (_dateTimeStyles & DateTimeStyles.AssumeUniversal) == DateTimeStyles.AssumeUniversal) dateTime = dateTime.ToUniversalTime(); text = dateTime.ToString(_dateTimeFormat ?? DefaultDateTimeFormat, Culture); } #if !NET20 else if (value is DateTimeOffset) { DateTimeOffset dateTimeOffset = (DateTimeOffset)value; if ((_dateTimeStyles & DateTimeStyles.AdjustToUniversal) == DateTimeStyles.AdjustToUniversal || (_dateTimeStyles & DateTimeStyles.AssumeUniversal) == DateTimeStyles.AssumeUniversal) dateTimeOffset = dateTimeOffset.ToUniversalTime(); text = dateTimeOffset.ToString(_dateTimeFormat ?? DefaultDateTimeFormat, Culture); } #endif else { throw new JsonSerializationException("Unexpected value when converting date. Expected DateTime or DateTimeOffset, got {0}.".FormatWith(CultureInfo.InvariantCulture, ReflectionUtils.GetObjectType(value))); } writer.WriteValue(text); } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { bool nullable = ReflectionUtils.IsNullableType(objectType); #if !NET20 Type t = (nullable) ? Nullable.GetUnderlyingType(objectType) : objectType; #endif if (reader.TokenType == JsonToken.Null) { if (!ReflectionUtils.IsNullableType(objectType)) throw JsonSerializationException.Create(reader, "Cannot convert null value to {0}.".FormatWith(CultureInfo.InvariantCulture, objectType)); return null; } if (reader.TokenType == JsonToken.Date) { #if !NET20 if (t == typeof(DateTimeOffset)) return reader.Value is DateTimeOffset ? reader.Value : new DateTimeOffset((DateTime)reader.Value); #endif return reader.Value; } if (reader.TokenType != JsonToken.String) throw JsonSerializationException.Create(reader, "Unexpected token parsing date. Expected String, got {0}.".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); string dateText = reader.Value.ToString(); if (string.IsNullOrEmpty(dateText) && nullable) return null; #if !NET20 if (t == typeof(DateTimeOffset)) { if (!string.IsNullOrEmpty(_dateTimeFormat)) return DateTimeOffset.ParseExact(dateText, _dateTimeFormat, Culture, _dateTimeStyles); else return DateTimeOffset.Parse(dateText, Culture, _dateTimeStyles); } #endif if (!string.IsNullOrEmpty(_dateTimeFormat)) return DateTime.ParseExact(dateText, _dateTimeFormat, Culture, _dateTimeStyles); else return DateTime.Parse(dateText, Culture, _dateTimeStyles); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/ExpandoObjectConverter.cs0000664000175000017500000001372112454416117030340 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE40) using System; using System.Collections.Generic; using System.Dynamic; using System.Globalization; using System.Linq; using System.Text; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Converters { /// /// Converts an ExpandoObject to and from JSON. /// public class ExpandoObjectConverter : JsonConverter { /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { // can write is set to false } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { return ReadValue(reader); } private object ReadValue(JsonReader reader) { while (reader.TokenType == JsonToken.Comment) { if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when reading ExpandoObject."); } switch (reader.TokenType) { case JsonToken.StartObject: return ReadObject(reader); case JsonToken.StartArray: return ReadList(reader); default: if (JsonTokenUtils.IsPrimitiveToken(reader.TokenType)) return reader.Value; throw JsonSerializationException.Create(reader, "Unexpected token when converting ExpandoObject: {0}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); } } private object ReadList(JsonReader reader) { IList list = new List(); while (reader.Read()) { switch (reader.TokenType) { case JsonToken.Comment: break; default: object v = ReadValue(reader); list.Add(v); break; case JsonToken.EndArray: return list; } } throw JsonSerializationException.Create(reader, "Unexpected end when reading ExpandoObject."); } private object ReadObject(JsonReader reader) { IDictionary expandoObject = new ExpandoObject(); while (reader.Read()) { switch (reader.TokenType) { case JsonToken.PropertyName: string propertyName = reader.Value.ToString(); if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end when reading ExpandoObject."); object v = ReadValue(reader); expandoObject[propertyName] = v; break; case JsonToken.Comment: break; case JsonToken.EndObject: return expandoObject; } } throw JsonSerializationException.Create(reader, "Unexpected end when reading ExpandoObject."); } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { return (objectType == typeof(ExpandoObject)); } /// /// Gets a value indicating whether this can write JSON. /// /// /// true if this can write JSON; otherwise, false. /// public override bool CanWrite { get { return false; } } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/VersionConverter.cs0000664000175000017500000001025712454416117027241 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Converters { /// /// Converts a to and from a string (e.g. "1.2.3.4"). /// public class VersionConverter : JsonConverter { /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { if (value == null) { writer.WriteNull(); } else if (value is Version) { writer.WriteValue(value.ToString()); } else { throw new JsonSerializationException("Expected Version object value"); } } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing property value of the JSON that is being converted. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) { return null; } else { if (reader.TokenType == JsonToken.String) { try { Version v = new Version((string)reader.Value); return v; } catch (Exception ex) { throw JsonSerializationException.Create(reader, "Error parsing version string: {0}".FormatWith(CultureInfo.InvariantCulture, reader.Value), ex); } } else { throw JsonSerializationException.Create(reader, "Unexpected token or value when parsing version. Token: {0}, Value: {1}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType, reader.Value)); } } } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { return objectType == typeof(Version); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/JsonValueConverter.cs0000664000175000017500000002122412454416117027516 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if NETFX_CORE using System; using System.Collections.Generic; using System.Globalization; using System.Security; using Newtonsoft.Json.Utilities; using Windows.Data.Json; namespace Newtonsoft.Json.Converters { /// /// Converts a to and from JSON. /// public class JsonValueConverter : JsonConverter { /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { WriteJsonValue(writer, (IJsonValue)value); } private void WriteJsonValue(JsonWriter writer, IJsonValue value) { switch (value.ValueType) { case JsonValueType.Array: { JsonArray a = value.GetArray(); writer.WriteStartArray(); for (int i = 0; i < a.Count; i++) { WriteJsonValue(writer, a[i]); } writer.WriteEndArray(); } break; case JsonValueType.Boolean: { writer.WriteValue(value.GetBoolean()); } break; case JsonValueType.Null: { writer.WriteNull(); } break; case JsonValueType.Number: { // JsonValue doesn't support integers // serialize whole numbers without a decimal point double d = value.GetNumber(); bool isInteger = (d % 1 == 0); if (isInteger && d <= long.MaxValue && d >= long.MinValue) writer.WriteValue(Convert.ToInt64(d)); else writer.WriteValue(d); } break; case JsonValueType.Object: { JsonObject o = value.GetObject(); writer.WriteStartObject(); foreach (KeyValuePair v in o) { writer.WritePropertyName(v.Key); WriteJsonValue(writer, v.Value); } writer.WriteEndObject(); } break; case JsonValueType.String: { writer.WriteValue(value.GetString()); } break; default: throw new ArgumentOutOfRangeException("ValueType"); } } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.None) reader.Read(); IJsonValue value = CreateJsonValue(reader); if (!objectType.IsAssignableFrom(value.GetType())) throw JsonSerializationException.Create(reader, "Could not convert '{0}' to '{1}'.".FormatWith(CultureInfo.InvariantCulture, value.GetType(), objectType)); return value; } private IJsonValue CreateJsonValue(JsonReader reader) { while (reader.TokenType == JsonToken.Comment) { if (!reader.Read()) throw JsonSerializationException.Create(reader, "Unexpected end."); } switch (reader.TokenType) { case JsonToken.StartObject: { return CreateJsonObject(reader); } case JsonToken.StartArray: { JsonArray a = new JsonArray(); while (reader.Read()) { switch (reader.TokenType) { case JsonToken.EndArray: return a; default: IJsonValue value = CreateJsonValue(reader); a.Add(value); break; } } } break; case JsonToken.Integer: case JsonToken.Float: return JsonValue.CreateNumberValue(Convert.ToDouble(reader.Value, CultureInfo.InvariantCulture)); case JsonToken.String: return JsonValue.CreateStringValue(reader.Value.ToString()); case JsonToken.Boolean: return JsonValue.CreateBooleanValue(Convert.ToBoolean(reader.Value, CultureInfo.InvariantCulture)); case JsonToken.Null: // surely there is a better way to create a null value than this? return JsonValue.Parse("null"); case JsonToken.Date: return JsonValue.CreateStringValue(reader.Value.ToString()); case JsonToken.Bytes: return JsonValue.CreateStringValue(reader.Value.ToString()); default: throw JsonSerializationException.Create(reader, "Unexpected or unsupported token: {0}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); } throw JsonSerializationException.Create(reader, "Unexpected end."); } private JsonObject CreateJsonObject(JsonReader reader) { JsonObject o = new JsonObject(); string propertyName = null; while (reader.Read()) { switch (reader.TokenType) { case JsonToken.PropertyName: propertyName = (string)reader.Value; break; case JsonToken.EndObject: return o; case JsonToken.Comment: break; default: IJsonValue propertyValue = CreateJsonValue(reader); o.Add(propertyName, propertyValue); break; } } throw JsonSerializationException.Create(reader, "Unexpected end."); } /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public override bool CanConvert(Type objectType) { return typeof(IJsonValue).IsAssignableFrom(objectType); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Converters/JavaScriptDateTimeConverter.cs0000664000175000017500000001200312454416117031266 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Converters { /// /// Converts a to and from a JavaScript date constructor (e.g. new Date(52231943)). /// public class JavaScriptDateTimeConverter : DateTimeConverterBase { /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { long ticks; if (value is DateTime) { DateTime dateTime = (DateTime)value; DateTime utcDateTime = dateTime.ToUniversalTime(); ticks = DateTimeUtils.ConvertDateTimeToJavaScriptTicks(utcDateTime); } #if !NET20 else if (value is DateTimeOffset) { DateTimeOffset dateTimeOffset = (DateTimeOffset)value; DateTimeOffset utcDateTimeOffset = dateTimeOffset.ToUniversalTime(); ticks = DateTimeUtils.ConvertDateTimeToJavaScriptTicks(utcDateTimeOffset.UtcDateTime); } #endif else { throw new JsonSerializationException("Expected date object value."); } writer.WriteStartConstructor("Date"); writer.WriteValue(ticks); writer.WriteEndConstructor(); } /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing property value of the JSON that is being converted. /// The calling serializer. /// The object value. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { #if !NET20 Type t = (ReflectionUtils.IsNullableType(objectType)) ? Nullable.GetUnderlyingType(objectType) : objectType; #endif if (reader.TokenType == JsonToken.Null) { if (!ReflectionUtils.IsNullable(objectType)) throw JsonSerializationException.Create(reader, "Cannot convert null value to {0}.".FormatWith(CultureInfo.InvariantCulture, objectType)); return null; } if (reader.TokenType != JsonToken.StartConstructor || !string.Equals(reader.Value.ToString(), "Date", StringComparison.Ordinal)) throw JsonSerializationException.Create(reader, "Unexpected token or value when parsing date. Token: {0}, Value: {1}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType, reader.Value)); reader.Read(); if (reader.TokenType != JsonToken.Integer) throw JsonSerializationException.Create(reader, "Unexpected token parsing date. Expected Integer, got {0}.".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); long ticks = (long)reader.Value; DateTime d = DateTimeUtils.ConvertJavaScriptTicksToDateTime(ticks); reader.Read(); if (reader.TokenType != JsonToken.EndConstructor) throw JsonSerializationException.Create(reader, "Unexpected token parsing date. Expected EndConstructor, got {0}.".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); #if !NET20 if (t == typeof(DateTimeOffset)) return new DateTimeOffset(d); #endif return d; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/FloatFormatHandling.cs0000664000175000017500000000423212454416117025451 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Specifies float format handling options when writing special floating point numbers, e.g. , /// and with . /// public enum FloatFormatHandling { /// /// Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". /// String = 0, /// /// Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. /// Note that this will produce non-valid JSON. /// Symbol = 1, /// /// Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a property. /// DefaultValue = 2 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonWriter.cs0000664000175000017500000015700412454416117023702 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) using System.Numerics; #endif using Newtonsoft.Json.Utilities; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json { /// /// Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. /// public abstract class JsonWriter : IDisposable { internal enum State { Start = 0, Property = 1, ObjectStart = 2, Object = 3, ArrayStart = 4, Array = 5, ConstructorStart = 6, Constructor = 7, Closed = 8, Error = 9 } // array that gives a new state based on the current state an the token being written private static readonly State[][] StateArray; internal static readonly State[][] StateArrayTempate = new[] { // Start PropertyName ObjectStart Object ArrayStart Array ConstructorStart Constructor Closed Error // /* None */new[] { State.Error, State.Error, State.Error, State.Error, State.Error, State.Error, State.Error, State.Error, State.Error, State.Error }, /* StartObject */new[] { State.ObjectStart, State.ObjectStart, State.Error, State.Error, State.ObjectStart, State.ObjectStart, State.ObjectStart, State.ObjectStart, State.Error, State.Error }, /* StartArray */new[] { State.ArrayStart, State.ArrayStart, State.Error, State.Error, State.ArrayStart, State.ArrayStart, State.ArrayStart, State.ArrayStart, State.Error, State.Error }, /* StartConstructor */new[] { State.ConstructorStart, State.ConstructorStart, State.Error, State.Error, State.ConstructorStart, State.ConstructorStart, State.ConstructorStart, State.ConstructorStart, State.Error, State.Error }, /* Property */new[] { State.Property, State.Error, State.Property, State.Property, State.Error, State.Error, State.Error, State.Error, State.Error, State.Error }, /* Comment */new[] { State.Start, State.Property, State.ObjectStart, State.Object, State.ArrayStart, State.Array, State.Constructor, State.Constructor, State.Error, State.Error }, /* Raw */new[] { State.Start, State.Property, State.ObjectStart, State.Object, State.ArrayStart, State.Array, State.Constructor, State.Constructor, State.Error, State.Error }, /* Value (this will be copied) */new[] { State.Start, State.Object, State.Error, State.Error, State.Array, State.Array, State.Constructor, State.Constructor, State.Error, State.Error } }; internal static State[][] BuildStateArray() { var allStates = StateArrayTempate.ToList(); var errorStates = StateArrayTempate[0]; var valueStates = StateArrayTempate[7]; foreach (JsonToken valueToken in EnumUtils.GetValues(typeof(JsonToken))) { if (allStates.Count <= (int)valueToken) { switch (valueToken) { case JsonToken.Integer: case JsonToken.Float: case JsonToken.String: case JsonToken.Boolean: case JsonToken.Null: case JsonToken.Undefined: case JsonToken.Date: case JsonToken.Bytes: allStates.Add(valueStates); break; default: allStates.Add(errorStates); break; } } } return allStates.ToArray(); } static JsonWriter() { StateArray = BuildStateArray(); } private readonly List _stack; private JsonPosition _currentPosition; private State _currentState; private Formatting _formatting; /// /// Gets or sets a value indicating whether the underlying stream or /// should be closed when the writer is closed. /// /// /// true to close the underlying stream or when /// the writer is closed; otherwise false. The default is true. /// public bool CloseOutput { get; set; } /// /// Gets the top. /// /// The top. protected internal int Top { get { int depth = _stack.Count; if (Peek() != JsonContainerType.None) depth++; return depth; } } /// /// Gets the state of the writer. /// public WriteState WriteState { get { switch (_currentState) { case State.Error: return WriteState.Error; case State.Closed: return WriteState.Closed; case State.Object: case State.ObjectStart: return WriteState.Object; case State.Array: case State.ArrayStart: return WriteState.Array; case State.Constructor: case State.ConstructorStart: return WriteState.Constructor; case State.Property: return WriteState.Property; case State.Start: return WriteState.Start; default: throw JsonWriterException.Create(this, "Invalid state: " + _currentState, null); } } } internal string ContainerPath { get { if (_currentPosition.Type == JsonContainerType.None) return string.Empty; return JsonPosition.BuildPath(_stack); } } /// /// Gets the path of the writer. /// public string Path { get { if (_currentPosition.Type == JsonContainerType.None) return string.Empty; bool insideContainer = (_currentState != State.ArrayStart && _currentState != State.ConstructorStart && _currentState != State.ObjectStart); IEnumerable positions = (!insideContainer) ? _stack : _stack.Concat(new[] { _currentPosition }); return JsonPosition.BuildPath(positions); } } private DateFormatHandling _dateFormatHandling; private DateTimeZoneHandling _dateTimeZoneHandling; private StringEscapeHandling _stringEscapeHandling; private FloatFormatHandling _floatFormatHandling; private string _dateFormatString; private CultureInfo _culture; /// /// Indicates how JSON text output is formatted. /// public Formatting Formatting { get { return _formatting; } set { _formatting = value; } } /// /// Get or set how dates are written to JSON text. /// public DateFormatHandling DateFormatHandling { get { return _dateFormatHandling; } set { _dateFormatHandling = value; } } /// /// Get or set how time zones are handling when writing JSON text. /// public DateTimeZoneHandling DateTimeZoneHandling { get { return _dateTimeZoneHandling; } set { _dateTimeZoneHandling = value; } } /// /// Get or set how strings are escaped when writing JSON text. /// public StringEscapeHandling StringEscapeHandling { get { return _stringEscapeHandling; } set { _stringEscapeHandling = value; OnStringEscapeHandlingChanged(); } } internal virtual void OnStringEscapeHandlingChanged() { // hacky but there is a calculated value that relies on StringEscapeHandling } /// /// Get or set how special floating point numbers, e.g. , /// and , /// are written to JSON text. /// public FloatFormatHandling FloatFormatHandling { get { return _floatFormatHandling; } set { _floatFormatHandling = value; } } /// /// Get or set how and values are formatting when writing JSON text. /// public string DateFormatString { get { return _dateFormatString; } set { _dateFormatString = value; } } /// /// Gets or sets the culture used when writing JSON. Defaults to . /// public CultureInfo Culture { get { return _culture ?? CultureInfo.InvariantCulture; } set { _culture = value; } } /// /// Creates an instance of the JsonWriter class. /// protected JsonWriter() { _stack = new List(4); _currentState = State.Start; _formatting = Formatting.None; _dateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind; CloseOutput = true; } internal void UpdateScopeWithFinishedValue() { if (_currentPosition.HasIndex) _currentPosition.Position++; } private void Push(JsonContainerType value) { if (_currentPosition.Type != JsonContainerType.None) _stack.Add(_currentPosition); _currentPosition = new JsonPosition(value); } private JsonContainerType Pop() { JsonPosition oldPosition = _currentPosition; if (_stack.Count > 0) { _currentPosition = _stack[_stack.Count - 1]; _stack.RemoveAt(_stack.Count - 1); } else { _currentPosition = new JsonPosition(); } return oldPosition.Type; } private JsonContainerType Peek() { return _currentPosition.Type; } /// /// Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. /// public abstract void Flush(); /// /// Closes this stream and the underlying stream. /// public virtual void Close() { AutoCompleteAll(); } /// /// Writes the beginning of a Json object. /// public virtual void WriteStartObject() { InternalWriteStart(JsonToken.StartObject, JsonContainerType.Object); } /// /// Writes the end of a Json object. /// public virtual void WriteEndObject() { InternalWriteEnd(JsonContainerType.Object); } /// /// Writes the beginning of a Json array. /// public virtual void WriteStartArray() { InternalWriteStart(JsonToken.StartArray, JsonContainerType.Array); } /// /// Writes the end of an array. /// public virtual void WriteEndArray() { InternalWriteEnd(JsonContainerType.Array); } /// /// Writes the start of a constructor with the given name. /// /// The name of the constructor. public virtual void WriteStartConstructor(string name) { InternalWriteStart(JsonToken.StartConstructor, JsonContainerType.Constructor); } /// /// Writes the end constructor. /// public virtual void WriteEndConstructor() { InternalWriteEnd(JsonContainerType.Constructor); } /// /// Writes the property name of a name/value pair on a JSON object. /// /// The name of the property. public virtual void WritePropertyName(string name) { InternalWritePropertyName(name); } /// /// Writes the property name of a name/value pair on a JSON object. /// /// The name of the property. /// A flag to indicate whether the text should be escaped when it is written as a JSON property name. public virtual void WritePropertyName(string name, bool escape) { WritePropertyName(name); } /// /// Writes the end of the current Json object or array. /// public virtual void WriteEnd() { WriteEnd(Peek()); } /// /// Writes the current token and its children. /// /// The to read the token from. public void WriteToken(JsonReader reader) { WriteToken(reader, true, true); } /// /// Writes the current token. /// /// The to read the token from. /// A flag indicating whether the current token's children should be written. public void WriteToken(JsonReader reader, bool writeChildren) { ValidationUtils.ArgumentNotNull(reader, "reader"); WriteToken(reader, writeChildren, true); } /// /// Writes the token and its value. /// /// The to write. /// /// The value to write. /// A value is only required for tokens that have an associated value, e.g. the property name for . /// A null value can be passed to the method for token's that don't have a value, e.g. . public void WriteToken(JsonToken token, object value) { WriteTokenInternal(token, value); } /// /// Writes the token. /// /// The to write. public void WriteToken(JsonToken token) { WriteTokenInternal(token, null); } internal void WriteToken(JsonReader reader, bool writeChildren, bool writeDateConstructorAsDate) { int initialDepth; if (reader.TokenType == JsonToken.None) initialDepth = -1; else if (!JsonTokenUtils.IsStartToken(reader.TokenType)) initialDepth = reader.Depth + 1; else initialDepth = reader.Depth; WriteToken(reader, initialDepth, writeChildren, writeDateConstructorAsDate); } internal void WriteToken(JsonReader reader, int initialDepth, bool writeChildren, bool writeDateConstructorAsDate) { do { // write a JValue date when the constructor is for a date if (writeDateConstructorAsDate && reader.TokenType == JsonToken.StartConstructor && string.Equals(reader.Value.ToString(), "Date", StringComparison.Ordinal)) WriteConstructorDate(reader); else WriteTokenInternal(reader.TokenType, reader.Value); } while ( // stop if we have reached the end of the token being read initialDepth - 1 < reader.Depth - (JsonTokenUtils.IsEndToken(reader.TokenType) ? 1 : 0) && writeChildren && reader.Read()); } private void WriteTokenInternal(JsonToken tokenType, object value) { switch (tokenType) { case JsonToken.None: // read to next break; case JsonToken.StartObject: WriteStartObject(); break; case JsonToken.StartArray: WriteStartArray(); break; case JsonToken.StartConstructor: ValidationUtils.ArgumentNotNull(value, "value"); WriteStartConstructor(value.ToString()); break; case JsonToken.PropertyName: ValidationUtils.ArgumentNotNull(value, "value"); WritePropertyName(value.ToString()); break; case JsonToken.Comment: WriteComment((value != null) ? value.ToString() : null); break; case JsonToken.Integer: ValidationUtils.ArgumentNotNull(value, "value"); #if !(NET20 || NET35 || PORTABLE || PORTABLE40) if (value is BigInteger) { WriteValue((BigInteger)value); } else #endif { WriteValue(Convert.ToInt64(value, CultureInfo.InvariantCulture)); } break; case JsonToken.Float: ValidationUtils.ArgumentNotNull(value, "value"); if (value is decimal) WriteValue((decimal)value); else if (value is double) WriteValue((double)value); else if (value is float) WriteValue((float)value); else WriteValue(Convert.ToDouble(value, CultureInfo.InvariantCulture)); break; case JsonToken.String: ValidationUtils.ArgumentNotNull(value, "value"); WriteValue(value.ToString()); break; case JsonToken.Boolean: ValidationUtils.ArgumentNotNull(value, "value"); WriteValue(Convert.ToBoolean(value, CultureInfo.InvariantCulture)); break; case JsonToken.Null: WriteNull(); break; case JsonToken.Undefined: WriteUndefined(); break; case JsonToken.EndObject: WriteEndObject(); break; case JsonToken.EndArray: WriteEndArray(); break; case JsonToken.EndConstructor: WriteEndConstructor(); break; case JsonToken.Date: ValidationUtils.ArgumentNotNull(value, "value"); #if !NET20 if (value is DateTimeOffset) WriteValue((DateTimeOffset)value); else #endif WriteValue(Convert.ToDateTime(value, CultureInfo.InvariantCulture)); break; case JsonToken.Raw: WriteRawValue((value != null) ? value.ToString() : null); break; case JsonToken.Bytes: ValidationUtils.ArgumentNotNull(value, "value"); if (value is Guid) WriteValue((Guid)value); else WriteValue((byte[])value); break; default: throw MiscellaneousUtils.CreateArgumentOutOfRangeException("TokenType", tokenType, "Unexpected token type."); } } private void WriteConstructorDate(JsonReader reader) { if (!reader.Read()) throw JsonWriterException.Create(this, "Unexpected end when reading date constructor.", null); if (reader.TokenType != JsonToken.Integer) throw JsonWriterException.Create(this, "Unexpected token when reading date constructor. Expected Integer, got " + reader.TokenType, null); long ticks = (long)reader.Value; DateTime date = DateTimeUtils.ConvertJavaScriptTicksToDateTime(ticks); if (!reader.Read()) throw JsonWriterException.Create(this, "Unexpected end when reading date constructor.", null); if (reader.TokenType != JsonToken.EndConstructor) throw JsonWriterException.Create(this, "Unexpected token when reading date constructor. Expected EndConstructor, got " + reader.TokenType, null); WriteValue(date); } private void WriteEnd(JsonContainerType type) { switch (type) { case JsonContainerType.Object: WriteEndObject(); break; case JsonContainerType.Array: WriteEndArray(); break; case JsonContainerType.Constructor: WriteEndConstructor(); break; default: throw JsonWriterException.Create(this, "Unexpected type when writing end: " + type, null); } } private void AutoCompleteAll() { while (Top > 0) { WriteEnd(); } } private JsonToken GetCloseTokenForType(JsonContainerType type) { switch (type) { case JsonContainerType.Object: return JsonToken.EndObject; case JsonContainerType.Array: return JsonToken.EndArray; case JsonContainerType.Constructor: return JsonToken.EndConstructor; default: throw JsonWriterException.Create(this, "No close token for type: " + type, null); } } private void AutoCompleteClose(JsonContainerType type) { // write closing symbol and calculate new state int levelsToComplete = 0; if (_currentPosition.Type == type) { levelsToComplete = 1; } else { int top = Top - 2; for (int i = top; i >= 0; i--) { int currentLevel = top - i; if (_stack[currentLevel].Type == type) { levelsToComplete = i + 2; break; } } } if (levelsToComplete == 0) throw JsonWriterException.Create(this, "No token to close.", null); for (int i = 0; i < levelsToComplete; i++) { JsonToken token = GetCloseTokenForType(Pop()); if (_currentState == State.Property) WriteNull(); if (_formatting == Formatting.Indented) { if (_currentState != State.ObjectStart && _currentState != State.ArrayStart) WriteIndent(); } WriteEnd(token); JsonContainerType currentLevelType = Peek(); switch (currentLevelType) { case JsonContainerType.Object: _currentState = State.Object; break; case JsonContainerType.Array: _currentState = State.Array; break; case JsonContainerType.Constructor: _currentState = State.Array; break; case JsonContainerType.None: _currentState = State.Start; break; default: throw JsonWriterException.Create(this, "Unknown JsonType: " + currentLevelType, null); } } } /// /// Writes the specified end token. /// /// The end token to write. protected virtual void WriteEnd(JsonToken token) { } /// /// Writes indent characters. /// protected virtual void WriteIndent() { } /// /// Writes the JSON value delimiter. /// protected virtual void WriteValueDelimiter() { } /// /// Writes an indent space. /// protected virtual void WriteIndentSpace() { } internal void AutoComplete(JsonToken tokenBeingWritten) { // gets new state based on the current state and what is being written State newState = StateArray[(int)tokenBeingWritten][(int)_currentState]; if (newState == State.Error) throw JsonWriterException.Create(this, "Token {0} in state {1} would result in an invalid JSON object.".FormatWith(CultureInfo.InvariantCulture, tokenBeingWritten.ToString(), _currentState.ToString()), null); if ((_currentState == State.Object || _currentState == State.Array || _currentState == State.Constructor) && tokenBeingWritten != JsonToken.Comment) { WriteValueDelimiter(); } if (_formatting == Formatting.Indented) { if (_currentState == State.Property) WriteIndentSpace(); // don't indent a property when it is the first token to be written (i.e. at the start) if ((_currentState == State.Array || _currentState == State.ArrayStart || _currentState == State.Constructor || _currentState == State.ConstructorStart) || (tokenBeingWritten == JsonToken.PropertyName && _currentState != State.Start)) WriteIndent(); } _currentState = newState; } #region WriteValue methods /// /// Writes a null value. /// public virtual void WriteNull() { InternalWriteValue(JsonToken.Null); } /// /// Writes an undefined value. /// public virtual void WriteUndefined() { InternalWriteValue(JsonToken.Undefined); } /// /// Writes raw JSON without changing the writer's state. /// /// The raw JSON to write. public virtual void WriteRaw(string json) { InternalWriteRaw(); } /// /// Writes raw JSON where a value is expected and updates the writer's state. /// /// The raw JSON to write. public virtual void WriteRawValue(string json) { // hack. want writer to change state as if a value had been written UpdateScopeWithFinishedValue(); AutoComplete(JsonToken.Undefined); WriteRaw(json); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(string value) { InternalWriteValue(JsonToken.String); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(int value) { InternalWriteValue(JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public virtual void WriteValue(uint value) { InternalWriteValue(JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(long value) { InternalWriteValue(JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public virtual void WriteValue(ulong value) { InternalWriteValue(JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(float value) { InternalWriteValue(JsonToken.Float); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(double value) { InternalWriteValue(JsonToken.Float); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(bool value) { InternalWriteValue(JsonToken.Boolean); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(short value) { InternalWriteValue(JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public virtual void WriteValue(ushort value) { InternalWriteValue(JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(char value) { InternalWriteValue(JsonToken.String); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(byte value) { InternalWriteValue(JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public virtual void WriteValue(sbyte value) { InternalWriteValue(JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(decimal value) { InternalWriteValue(JsonToken.Float); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(DateTime value) { InternalWriteValue(JsonToken.Date); } #if !NET20 /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(DateTimeOffset value) { InternalWriteValue(JsonToken.Date); } #endif /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(Guid value) { InternalWriteValue(JsonToken.String); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(TimeSpan value) { InternalWriteValue(JsonToken.String); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(int? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public virtual void WriteValue(uint? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(long? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public virtual void WriteValue(ulong? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(float? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(double? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(bool? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(short? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public virtual void WriteValue(ushort? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(char? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(byte? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public virtual void WriteValue(sbyte? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(decimal? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(DateTime? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } #if !NET20 /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(DateTimeOffset? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } #endif /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(Guid? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(TimeSpan? value) { if (value == null) WriteNull(); else WriteValue(value.Value); } /// /// Writes a [] value. /// /// The [] value to write. public virtual void WriteValue(byte[] value) { if (value == null) WriteNull(); else InternalWriteValue(JsonToken.Bytes); } /// /// Writes a value. /// /// The value to write. public virtual void WriteValue(Uri value) { if (value == null) WriteNull(); else InternalWriteValue(JsonToken.String); } /// /// Writes a value. /// An error will raised if the value cannot be written as a single JSON token. /// /// The value to write. public virtual void WriteValue(object value) { if (value == null) { WriteNull(); } else { #if !(NET20 || NET35 || PORTABLE || PORTABLE40) // this is here because adding a WriteValue(BigInteger) to JsonWriter will // mean the user has to add a reference to System.Numerics.dll if (value is BigInteger) throw CreateUnsupportedTypeException(this, value); #endif WriteValue(this, ConvertUtils.GetTypeCode(value.GetType()), value); } } #endregion /// /// Writes out a comment /*...*/ containing the specified text. /// /// Text to place inside the comment. public virtual void WriteComment(string text) { InternalWriteComment(); } /// /// Writes out the given white space. /// /// The string of white space characters. public virtual void WriteWhitespace(string ws) { InternalWriteWhitespace(ws); } void IDisposable.Dispose() { Dispose(true); } private void Dispose(bool disposing) { if (_currentState != State.Closed) Close(); } internal static void WriteValue(JsonWriter writer, PrimitiveTypeCode typeCode, object value) { switch (typeCode) { case PrimitiveTypeCode.Char: writer.WriteValue((char)value); break; case PrimitiveTypeCode.CharNullable: writer.WriteValue((value == null) ? (char?)null : (char)value); break; case PrimitiveTypeCode.Boolean: writer.WriteValue((bool)value); break; case PrimitiveTypeCode.BooleanNullable: writer.WriteValue((value == null) ? (bool?)null : (bool)value); break; case PrimitiveTypeCode.SByte: writer.WriteValue((sbyte)value); break; case PrimitiveTypeCode.SByteNullable: writer.WriteValue((value == null) ? (sbyte?)null : (sbyte)value); break; case PrimitiveTypeCode.Int16: writer.WriteValue((short)value); break; case PrimitiveTypeCode.Int16Nullable: writer.WriteValue((value == null) ? (short?)null : (short)value); break; case PrimitiveTypeCode.UInt16: writer.WriteValue((ushort)value); break; case PrimitiveTypeCode.UInt16Nullable: writer.WriteValue((value == null) ? (ushort?)null : (ushort)value); break; case PrimitiveTypeCode.Int32: writer.WriteValue((int)value); break; case PrimitiveTypeCode.Int32Nullable: writer.WriteValue((value == null) ? (int?)null : (int)value); break; case PrimitiveTypeCode.Byte: writer.WriteValue((byte)value); break; case PrimitiveTypeCode.ByteNullable: writer.WriteValue((value == null) ? (byte?)null : (byte)value); break; case PrimitiveTypeCode.UInt32: writer.WriteValue((uint)value); break; case PrimitiveTypeCode.UInt32Nullable: writer.WriteValue((value == null) ? (uint?)null : (uint)value); break; case PrimitiveTypeCode.Int64: writer.WriteValue((long)value); break; case PrimitiveTypeCode.Int64Nullable: writer.WriteValue((value == null) ? (long?)null : (long)value); break; case PrimitiveTypeCode.UInt64: writer.WriteValue((ulong)value); break; case PrimitiveTypeCode.UInt64Nullable: writer.WriteValue((value == null) ? (ulong?)null : (ulong)value); break; case PrimitiveTypeCode.Single: writer.WriteValue((float)value); break; case PrimitiveTypeCode.SingleNullable: writer.WriteValue((value == null) ? (float?)null : (float)value); break; case PrimitiveTypeCode.Double: writer.WriteValue((double)value); break; case PrimitiveTypeCode.DoubleNullable: writer.WriteValue((value == null) ? (double?)null : (double)value); break; case PrimitiveTypeCode.DateTime: writer.WriteValue((DateTime)value); break; case PrimitiveTypeCode.DateTimeNullable: writer.WriteValue((value == null) ? (DateTime?)null : (DateTime)value); break; #if !NET20 case PrimitiveTypeCode.DateTimeOffset: writer.WriteValue((DateTimeOffset)value); break; case PrimitiveTypeCode.DateTimeOffsetNullable: writer.WriteValue((value == null) ? (DateTimeOffset?)null : (DateTimeOffset)value); break; #endif case PrimitiveTypeCode.Decimal: writer.WriteValue((decimal)value); break; case PrimitiveTypeCode.DecimalNullable: writer.WriteValue((value == null) ? (decimal?)null : (decimal)value); break; case PrimitiveTypeCode.Guid: writer.WriteValue((Guid)value); break; case PrimitiveTypeCode.GuidNullable: writer.WriteValue((value == null) ? (Guid?)null : (Guid)value); break; case PrimitiveTypeCode.TimeSpan: writer.WriteValue((TimeSpan)value); break; case PrimitiveTypeCode.TimeSpanNullable: writer.WriteValue((value == null) ? (TimeSpan?)null : (TimeSpan)value); break; #if !(PORTABLE || PORTABLE40 || NET35 || NET20) case PrimitiveTypeCode.BigInteger: // this will call to WriteValue(object) writer.WriteValue((BigInteger)value); break; case PrimitiveTypeCode.BigIntegerNullable: // this will call to WriteValue(object) writer.WriteValue((value == null) ? (BigInteger?)null : (BigInteger)value); break; #endif case PrimitiveTypeCode.Uri: writer.WriteValue((Uri)value); break; case PrimitiveTypeCode.String: writer.WriteValue((string)value); break; case PrimitiveTypeCode.Bytes: writer.WriteValue((byte[])value); break; #if !(PORTABLE || NETFX_CORE) case PrimitiveTypeCode.DBNull: writer.WriteNull(); break; #endif default: #if !(PORTABLE || NETFX_CORE) if (value is IConvertible) { // the value is a non-standard IConvertible // convert to the underlying value and retry IConvertible convertable = (IConvertible)value; TypeInformation typeInformation = ConvertUtils.GetTypeInformation(convertable); // if convertable has an underlying typecode of Object then attempt to convert it to a string PrimitiveTypeCode resolvedTypeCode = (typeInformation.TypeCode == PrimitiveTypeCode.Object) ? PrimitiveTypeCode.String : typeInformation.TypeCode; Type resolvedType = (typeInformation.TypeCode == PrimitiveTypeCode.Object) ? typeof(string) : typeInformation.Type; object convertedValue = convertable.ToType(resolvedType, CultureInfo.InvariantCulture); WriteValue(writer, resolvedTypeCode, convertedValue); break; } else #endif { throw CreateUnsupportedTypeException(writer, value); } } } private static JsonWriterException CreateUnsupportedTypeException(JsonWriter writer, object value) { return JsonWriterException.Create(writer, "Unsupported type: {0}. Use the JsonSerializer class to get the object's JSON representation.".FormatWith(CultureInfo.InvariantCulture, value.GetType()), null); } /// /// Sets the state of the JsonWriter, /// /// The JsonToken being written. /// The value being written. protected void SetWriteState(JsonToken token, object value) { switch (token) { case JsonToken.StartObject: InternalWriteStart(token, JsonContainerType.Object); break; case JsonToken.StartArray: InternalWriteStart(token, JsonContainerType.Array); break; case JsonToken.StartConstructor: InternalWriteStart(token, JsonContainerType.Constructor); break; case JsonToken.PropertyName: if (!(value is string)) throw new ArgumentException("A name is required when setting property name state.", "value"); InternalWritePropertyName((string)value); break; case JsonToken.Comment: InternalWriteComment(); break; case JsonToken.Raw: InternalWriteRaw(); break; case JsonToken.Integer: case JsonToken.Float: case JsonToken.String: case JsonToken.Boolean: case JsonToken.Date: case JsonToken.Bytes: case JsonToken.Null: case JsonToken.Undefined: InternalWriteValue(token); break; case JsonToken.EndObject: InternalWriteEnd(JsonContainerType.Object); break; case JsonToken.EndArray: InternalWriteEnd(JsonContainerType.Array); break; case JsonToken.EndConstructor: InternalWriteEnd(JsonContainerType.Constructor); break; default: throw new ArgumentOutOfRangeException("token"); } } internal void InternalWriteEnd(JsonContainerType container) { AutoCompleteClose(container); } internal void InternalWritePropertyName(string name) { _currentPosition.PropertyName = name; AutoComplete(JsonToken.PropertyName); } internal void InternalWriteRaw() { } internal void InternalWriteStart(JsonToken token, JsonContainerType container) { UpdateScopeWithFinishedValue(); AutoComplete(token); Push(container); } internal void InternalWriteValue(JsonToken token) { UpdateScopeWithFinishedValue(); AutoComplete(token); } internal void InternalWriteWhitespace(string ws) { if (ws != null) { if (!StringUtils.IsWhiteSpace(ws)) throw JsonWriterException.Create(this, "Only white space characters should be used.", null); } } internal void InternalWriteComment() { AutoComplete(JsonToken.Comment); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/SerializationBinder.cs0000664000175000017500000000276212454416117025535 0ustar directhexdirecthex #if PocketPC || NETFX_CORE || PORTABLE40 || PORTABLE using System; using System.Reflection; namespace Newtonsoft.Json { /// /// Allows users to control class loading and mandate what class to load. /// public abstract class SerializationBinder { /// /// When overridden in a derived class, controls the binding of a serialized object to a type. /// /// Specifies the name of the serialized object. /// Specifies the name of the serialized object /// The type of the object the formatter creates a new instance of. public abstract Type BindToType(string assemblyName, string typeName); /// /// When overridden in a derived class, controls the binding of a serialized object to a type. /// /// The type of the object the formatter creates a new instance of. /// Specifies the name of the serialized object. /// Specifies the name of the serialized object. public virtual void BindToName(Type serializedType, out string assemblyName, out string typeName) { assemblyName = null; typeName = null; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonConverterAttribute.cs0000664000175000017500000000627512454416117026264 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json { /// /// Instructs the to use the specified when serializing the member or class. /// [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Interface | AttributeTargets.Enum | AttributeTargets.Parameter, AllowMultiple = false)] public sealed class JsonConverterAttribute : Attribute { private readonly Type _converterType; /// /// Gets the type of the converter. /// /// The type of the converter. public Type ConverterType { get { return _converterType; } } /// /// The parameter list to use when constructing the JsonConverter described by ConverterType. /// If null, the default constructor is used. /// public object[] ConverterParameters { get; private set; } /// /// Initializes a new instance of the class. /// /// Type of the converter. public JsonConverterAttribute(Type converterType) { if (converterType == null) throw new ArgumentNullException("converterType"); _converterType = converterType; } /// /// Initializes a new instance of the class. /// /// Type of the converter. /// Parameter list to use when constructing the JsonConverter. Can be null. public JsonConverterAttribute(Type converterType, params object[] converterParameters) : this(converterType) { ConverterParameters = converterParameters; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonIgnoreAttribute.cs0000664000175000017500000000304412454416117025527 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; namespace Newtonsoft.Json { /// /// Instructs the not to serialize the public field or public read/write property value. /// [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property, AllowMultiple = false)] public sealed class JsonIgnoreAttribute : Attribute { } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/DateParseHandling.cs0000664000175000017500000000367512454416117025115 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. /// public enum DateParseHandling { /// /// Date formatted strings are not parsed to a date type and are read as strings. /// None = 0, /// /// Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . /// DateTime = 1, #if !NET20 /// /// Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . /// DateTimeOffset = 2 #endif } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/ConstructorHandling.cs0000664000175000017500000000344112454416117025561 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Specifies how constructors are used when initializing objects during deserialization by the . /// public enum ConstructorHandling { /// /// First attempt to use the public default constructor, then fall back to single paramatized constructor, then the non-public default constructor. /// Default = 0, /// /// Json.NET will use a non-public default constructor before falling back to a paramatized constructor. /// AllowNonPublicDefaultConstructor = 1 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/FormatterAssemblyStyle.cs0000664000175000017500000000156112454416117026254 0ustar directhexdirecthex #if PocketPC || NETFX_CORE || PORTABLE40 || PORTABLE namespace System.Runtime.Serialization.Formatters { /// /// Indicates the method that will be used during deserialization for locating and loading assemblies. /// public enum FormatterAssemblyStyle { /// /// In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method is used to load the assembly. /// Simple = 0, /// /// In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the Assembly class is used to load the assembly. /// Full = 1 } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/DateTimeZoneHandling.cs0000664000175000017500000000424512454416117025567 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json { /// /// Specifies how to treat the time value when converting between string and . /// public enum DateTimeZoneHandling { /// /// Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. /// Local = 0, /// /// Treat as a UTC. If the object represents a local time, it is converted to a UTC. /// Utc = 1, /// /// Treat as a local time if a is being converted to a string. /// If a string is being converted to , convert to a local time if a time zone is specified. /// Unspecified = 2, /// /// Time zone information should be preserved when converting. /// RoundtripKind = 3 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonConstructorAttribute.cs0000664000175000017500000000273312454416117026635 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json { /// /// Instructs the to use the specified constructor when deserializing that object. /// [AttributeUsage(AttributeTargets.Constructor, AllowMultiple = false)] public sealed class JsonConstructorAttribute : Attribute { } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonSerializerSettings.cs0000664000175000017500000003661612454416117026265 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.Runtime.Serialization.Formatters; using Newtonsoft.Json.Serialization; using System.Runtime.Serialization; namespace Newtonsoft.Json { /// /// Specifies the settings on a object. /// public class JsonSerializerSettings { internal const ReferenceLoopHandling DefaultReferenceLoopHandling = ReferenceLoopHandling.Error; internal const MissingMemberHandling DefaultMissingMemberHandling = MissingMemberHandling.Ignore; internal const NullValueHandling DefaultNullValueHandling = NullValueHandling.Include; internal const DefaultValueHandling DefaultDefaultValueHandling = DefaultValueHandling.Include; internal const ObjectCreationHandling DefaultObjectCreationHandling = ObjectCreationHandling.Auto; internal const PreserveReferencesHandling DefaultPreserveReferencesHandling = PreserveReferencesHandling.None; internal const ConstructorHandling DefaultConstructorHandling = ConstructorHandling.Default; internal const TypeNameHandling DefaultTypeNameHandling = TypeNameHandling.None; internal const MetadataPropertyHandling DefaultMetadataPropertyHandling = MetadataPropertyHandling.Default; internal const FormatterAssemblyStyle DefaultTypeNameAssemblyFormat = FormatterAssemblyStyle.Simple; internal static readonly StreamingContext DefaultContext; internal const Formatting DefaultFormatting = Formatting.None; internal const DateFormatHandling DefaultDateFormatHandling = DateFormatHandling.IsoDateFormat; internal const DateTimeZoneHandling DefaultDateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind; internal const DateParseHandling DefaultDateParseHandling = DateParseHandling.DateTime; internal const FloatParseHandling DefaultFloatParseHandling = FloatParseHandling.Double; internal const FloatFormatHandling DefaultFloatFormatHandling = FloatFormatHandling.String; internal const StringEscapeHandling DefaultStringEscapeHandling = StringEscapeHandling.Default; internal const FormatterAssemblyStyle DefaultFormatterAssemblyStyle = FormatterAssemblyStyle.Simple; internal static readonly CultureInfo DefaultCulture; internal const bool DefaultCheckAdditionalContent = false; internal const string DefaultDateFormatString = @"yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK"; internal Formatting? _formatting; internal DateFormatHandling? _dateFormatHandling; internal DateTimeZoneHandling? _dateTimeZoneHandling; internal DateParseHandling? _dateParseHandling; internal FloatFormatHandling? _floatFormatHandling; internal FloatParseHandling? _floatParseHandling; internal StringEscapeHandling? _stringEscapeHandling; internal CultureInfo _culture; internal bool? _checkAdditionalContent; internal int? _maxDepth; internal bool _maxDepthSet; internal string _dateFormatString; internal bool _dateFormatStringSet; internal FormatterAssemblyStyle? _typeNameAssemblyFormat; internal DefaultValueHandling? _defaultValueHandling; internal PreserveReferencesHandling? _preserveReferencesHandling; internal NullValueHandling? _nullValueHandling; internal ObjectCreationHandling? _objectCreationHandling; internal MissingMemberHandling? _missingMemberHandling; internal ReferenceLoopHandling? _referenceLoopHandling; internal StreamingContext? _context; internal ConstructorHandling? _constructorHandling; internal TypeNameHandling? _typeNameHandling; internal MetadataPropertyHandling? _metadataPropertyHandling; /// /// Gets or sets how reference loops (e.g. a class referencing itself) is handled. /// /// Reference loop handling. public ReferenceLoopHandling ReferenceLoopHandling { get { return _referenceLoopHandling ?? DefaultReferenceLoopHandling; } set { _referenceLoopHandling = value; } } /// /// Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. /// /// Missing member handling. public MissingMemberHandling MissingMemberHandling { get { return _missingMemberHandling ?? DefaultMissingMemberHandling; } set { _missingMemberHandling = value; } } /// /// Gets or sets how objects are created during deserialization. /// /// The object creation handling. public ObjectCreationHandling ObjectCreationHandling { get { return _objectCreationHandling ?? DefaultObjectCreationHandling; } set { _objectCreationHandling = value; } } /// /// Gets or sets how null values are handled during serialization and deserialization. /// /// Null value handling. public NullValueHandling NullValueHandling { get { return _nullValueHandling ?? DefaultNullValueHandling; } set { _nullValueHandling = value; } } /// /// Gets or sets how null default are handled during serialization and deserialization. /// /// The default value handling. public DefaultValueHandling DefaultValueHandling { get { return _defaultValueHandling ?? DefaultDefaultValueHandling; } set { _defaultValueHandling = value; } } /// /// Gets or sets a collection that will be used during serialization. /// /// The converters. public IList Converters { get; set; } /// /// Gets or sets how object references are preserved by the serializer. /// /// The preserve references handling. public PreserveReferencesHandling PreserveReferencesHandling { get { return _preserveReferencesHandling ?? DefaultPreserveReferencesHandling; } set { _preserveReferencesHandling = value; } } /// /// Gets or sets how type name writing and reading is handled by the serializer. /// /// The type name handling. public TypeNameHandling TypeNameHandling { get { return _typeNameHandling ?? DefaultTypeNameHandling; } set { _typeNameHandling = value; } } /// /// Gets or sets how metadata properties are used during deserialization. /// /// The metadata properties handling. public MetadataPropertyHandling MetadataPropertyHandling { get { return _metadataPropertyHandling ?? DefaultMetadataPropertyHandling; } set { _metadataPropertyHandling = value; } } /// /// Gets or sets how a type name assembly is written and resolved by the serializer. /// /// The type name assembly format. public FormatterAssemblyStyle TypeNameAssemblyFormat { get { return _typeNameAssemblyFormat ?? DefaultFormatterAssemblyStyle; } set { _typeNameAssemblyFormat = value; } } /// /// Gets or sets how constructors are used during deserialization. /// /// The constructor handling. public ConstructorHandling ConstructorHandling { get { return _constructorHandling ?? DefaultConstructorHandling; } set { _constructorHandling = value; } } /// /// Gets or sets the contract resolver used by the serializer when /// serializing .NET objects to JSON and vice versa. /// /// The contract resolver. public IContractResolver ContractResolver { get; set; } /// /// Gets or sets the used by the serializer when resolving references. /// /// The reference resolver. public IReferenceResolver ReferenceResolver { get; set; } /// /// Gets or sets the used by the serializer when writing trace messages. /// /// The trace writer. public ITraceWriter TraceWriter { get; set; } /// /// Gets or sets the used by the serializer when resolving type names. /// /// The binder. public SerializationBinder Binder { get; set; } /// /// Gets or sets the error handler called during serialization and deserialization. /// /// The error handler called during serialization and deserialization. public EventHandler Error { get; set; } /// /// Gets or sets the used by the serializer when invoking serialization callback methods. /// /// The context. public StreamingContext Context { get { return _context ?? DefaultContext; } set { _context = value; } } /// /// Get or set how and values are formatting when writing JSON text. /// public string DateFormatString { get { return _dateFormatString ?? DefaultDateFormatString; } set { _dateFormatString = value; _dateFormatStringSet = true; } } /// /// Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . /// public int? MaxDepth { get { return _maxDepth; } set { if (value <= 0) throw new ArgumentException("Value must be positive.", "value"); _maxDepth = value; _maxDepthSet = true; } } /// /// Indicates how JSON text output is formatted. /// public Formatting Formatting { get { return _formatting ?? DefaultFormatting; } set { _formatting = value; } } /// /// Get or set how dates are written to JSON text. /// public DateFormatHandling DateFormatHandling { get { return _dateFormatHandling ?? DefaultDateFormatHandling; } set { _dateFormatHandling = value; } } /// /// Get or set how time zones are handling during serialization and deserialization. /// public DateTimeZoneHandling DateTimeZoneHandling { get { return _dateTimeZoneHandling ?? DefaultDateTimeZoneHandling; } set { _dateTimeZoneHandling = value; } } /// /// Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. /// public DateParseHandling DateParseHandling { get { return _dateParseHandling ?? DefaultDateParseHandling; } set { _dateParseHandling = value; } } /// /// Get or set how special floating point numbers, e.g. , /// and , /// are written as JSON. /// public FloatFormatHandling FloatFormatHandling { get { return _floatFormatHandling ?? DefaultFloatFormatHandling; } set { _floatFormatHandling = value; } } /// /// Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. /// public FloatParseHandling FloatParseHandling { get { return _floatParseHandling ?? DefaultFloatParseHandling; } set { _floatParseHandling = value; } } /// /// Get or set how strings are escaped when writing JSON text. /// public StringEscapeHandling StringEscapeHandling { get { return _stringEscapeHandling ?? DefaultStringEscapeHandling; } set { _stringEscapeHandling = value; } } /// /// Gets or sets the culture used when reading JSON. Defaults to . /// public CultureInfo Culture { get { return _culture ?? DefaultCulture; } set { _culture = value; } } /// /// Gets a value indicating whether there will be a check for additional content after deserializing an object. /// /// /// true if there will be a check for additional content after deserializing an object; otherwise, false. /// public bool CheckAdditionalContent { get { return _checkAdditionalContent ?? DefaultCheckAdditionalContent; } set { _checkAdditionalContent = value; } } static JsonSerializerSettings() { DefaultContext = new StreamingContext(); DefaultCulture = CultureInfo.InvariantCulture; } /// /// Initializes a new instance of the class. /// public JsonSerializerSettings() { Converters = new List(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/0000775000175000017500000000000012454416117022436 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/Extensions.cs0000664000175000017500000001031512454416117025124 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Schema { /// /// Contains the JSON schema extension methods. /// public static class Extensions { /// /// Determines whether the is valid. /// /// The source to test. /// The schema to test with. /// /// true if the specified is valid; otherwise, false. /// public static bool IsValid(this JToken source, JsonSchema schema) { bool valid = true; source.Validate(schema, (sender, args) => { valid = false; }); return valid; } /// /// Determines whether the is valid. /// /// The source to test. /// The schema to test with. /// When this method returns, contains any error messages generated while validating. /// /// true if the specified is valid; otherwise, false. /// public static bool IsValid(this JToken source, JsonSchema schema, out IList errorMessages) { IList errors = new List(); source.Validate(schema, (sender, args) => errors.Add(args.Message)); errorMessages = errors; return (errorMessages.Count == 0); } /// /// Validates the specified . /// /// The source to test. /// The schema to test with. public static void Validate(this JToken source, JsonSchema schema) { source.Validate(schema, null); } /// /// Validates the specified . /// /// The source to test. /// The schema to test with. /// The validation event handler. public static void Validate(this JToken source, JsonSchema schema, ValidationEventHandler validationEventHandler) { ValidationUtils.ArgumentNotNull(source, "source"); ValidationUtils.ArgumentNotNull(schema, "schema"); using (JsonValidatingReader reader = new JsonValidatingReader(source.CreateReader())) { reader.Schema = schema; if (validationEventHandler != null) reader.ValidationEventHandler += validationEventHandler; while (reader.Read()) { } } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/ValidationEventHandler.cs0000664000175000017500000000264412454416117027365 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Schema { /// /// Represents the callback method that will handle JSON schema validation events and the . /// public delegate void ValidationEventHandler(object sender, ValidationEventArgs e); }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaConstants.cs0000664000175000017500000000750512454416117026723 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Schema { internal static class JsonSchemaConstants { public const string TypePropertyName = "type"; public const string PropertiesPropertyName = "properties"; public const string ItemsPropertyName = "items"; public const string AdditionalItemsPropertyName = "additionalItems"; public const string RequiredPropertyName = "required"; public const string PatternPropertiesPropertyName = "patternProperties"; public const string AdditionalPropertiesPropertyName = "additionalProperties"; public const string RequiresPropertyName = "requires"; public const string MinimumPropertyName = "minimum"; public const string MaximumPropertyName = "maximum"; public const string ExclusiveMinimumPropertyName = "exclusiveMinimum"; public const string ExclusiveMaximumPropertyName = "exclusiveMaximum"; public const string MinimumItemsPropertyName = "minItems"; public const string MaximumItemsPropertyName = "maxItems"; public const string PatternPropertyName = "pattern"; public const string MaximumLengthPropertyName = "maxLength"; public const string MinimumLengthPropertyName = "minLength"; public const string EnumPropertyName = "enum"; public const string ReadOnlyPropertyName = "readonly"; public const string TitlePropertyName = "title"; public const string DescriptionPropertyName = "description"; public const string FormatPropertyName = "format"; public const string DefaultPropertyName = "default"; public const string TransientPropertyName = "transient"; public const string DivisibleByPropertyName = "divisibleBy"; public const string HiddenPropertyName = "hidden"; public const string DisallowPropertyName = "disallow"; public const string ExtendsPropertyName = "extends"; public const string IdPropertyName = "id"; public const string UniqueItemsPropertyName = "uniqueItems"; public const string OptionValuePropertyName = "value"; public const string OptionLabelPropertyName = "label"; public static readonly IDictionary JsonSchemaTypeMapping = new Dictionary { { "string", JsonSchemaType.String }, { "object", JsonSchemaType.Object }, { "integer", JsonSchemaType.Integer }, { "number", JsonSchemaType.Float }, { "null", JsonSchemaType.Null }, { "boolean", JsonSchemaType.Boolean }, { "array", JsonSchemaType.Array }, { "any", JsonSchemaType.Any } }; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaModel.cs0000664000175000017500000001220712454416117026002 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Schema { internal class JsonSchemaModel { public bool Required { get; set; } public JsonSchemaType Type { get; set; } public int? MinimumLength { get; set; } public int? MaximumLength { get; set; } public double? DivisibleBy { get; set; } public double? Minimum { get; set; } public double? Maximum { get; set; } public bool ExclusiveMinimum { get; set; } public bool ExclusiveMaximum { get; set; } public int? MinimumItems { get; set; } public int? MaximumItems { get; set; } public IList Patterns { get; set; } public IList Items { get; set; } public IDictionary Properties { get; set; } public IDictionary PatternProperties { get; set; } public JsonSchemaModel AdditionalProperties { get; set; } public JsonSchemaModel AdditionalItems { get; set; } public bool PositionalItemsValidation { get; set; } public bool AllowAdditionalProperties { get; set; } public bool AllowAdditionalItems { get; set; } public bool UniqueItems { get; set; } public IList Enum { get; set; } public JsonSchemaType Disallow { get; set; } public JsonSchemaModel() { Type = JsonSchemaType.Any; AllowAdditionalProperties = true; AllowAdditionalItems = true; Required = false; } public static JsonSchemaModel Create(IList schemata) { JsonSchemaModel model = new JsonSchemaModel(); foreach (JsonSchema schema in schemata) { Combine(model, schema); } return model; } private static void Combine(JsonSchemaModel model, JsonSchema schema) { // Version 3 of the Draft JSON Schema has the default value of Not Required model.Required = model.Required || (schema.Required ?? false); model.Type = model.Type & (schema.Type ?? JsonSchemaType.Any); model.MinimumLength = MathUtils.Max(model.MinimumLength, schema.MinimumLength); model.MaximumLength = MathUtils.Min(model.MaximumLength, schema.MaximumLength); // not sure what is the best way to combine divisibleBy model.DivisibleBy = MathUtils.Max(model.DivisibleBy, schema.DivisibleBy); model.Minimum = MathUtils.Max(model.Minimum, schema.Minimum); model.Maximum = MathUtils.Max(model.Maximum, schema.Maximum); model.ExclusiveMinimum = model.ExclusiveMinimum || (schema.ExclusiveMinimum ?? false); model.ExclusiveMaximum = model.ExclusiveMaximum || (schema.ExclusiveMaximum ?? false); model.MinimumItems = MathUtils.Max(model.MinimumItems, schema.MinimumItems); model.MaximumItems = MathUtils.Min(model.MaximumItems, schema.MaximumItems); model.PositionalItemsValidation = model.PositionalItemsValidation || schema.PositionalItemsValidation; model.AllowAdditionalProperties = model.AllowAdditionalProperties && schema.AllowAdditionalProperties; model.AllowAdditionalItems = model.AllowAdditionalItems && schema.AllowAdditionalItems; model.UniqueItems = model.UniqueItems || schema.UniqueItems; if (schema.Enum != null) { if (model.Enum == null) model.Enum = new List(); model.Enum.AddRangeDistinct(schema.Enum, JToken.EqualityComparer); } model.Disallow = model.Disallow | (schema.Disallow ?? JsonSchemaType.None); if (schema.Pattern != null) { if (model.Patterns == null) model.Patterns = new List(); model.Patterns.AddDistinct(schema.Pattern); } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaBuilder.cs0000664000175000017500000004365612454416117026344 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Serialization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Globalization; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Schema { internal class JsonSchemaBuilder { private readonly IList _stack; private readonly JsonSchemaResolver _resolver; private readonly IDictionary _documentSchemas; private JsonSchema _currentSchema; private JObject _rootSchema; public JsonSchemaBuilder(JsonSchemaResolver resolver) { _stack = new List(); _documentSchemas = new Dictionary(); _resolver = resolver; } private void Push(JsonSchema value) { _currentSchema = value; _stack.Add(value); _resolver.LoadedSchemas.Add(value); _documentSchemas.Add(value.Location, value); } private JsonSchema Pop() { JsonSchema poppedSchema = _currentSchema; _stack.RemoveAt(_stack.Count - 1); _currentSchema = _stack.LastOrDefault(); return poppedSchema; } private JsonSchema CurrentSchema { get { return _currentSchema; } } internal JsonSchema Read(JsonReader reader) { JToken schemaToken = JToken.ReadFrom(reader); _rootSchema = schemaToken as JObject; JsonSchema schema = BuildSchema(schemaToken); ResolveReferences(schema); return schema; } private string UnescapeReference(string reference) { return Uri.UnescapeDataString(reference).Replace("~1", "/").Replace("~0", "~"); } private JsonSchema ResolveReferences(JsonSchema schema) { if (schema.DeferredReference != null) { string reference = schema.DeferredReference; bool locationReference = (reference.StartsWith("#", StringComparison.Ordinal)); if (locationReference) reference = UnescapeReference(reference); JsonSchema resolvedSchema = _resolver.GetSchema(reference); if (resolvedSchema == null) { if (locationReference) { string[] escapedParts = schema.DeferredReference.TrimStart('#').Split(new[] { '/' }, StringSplitOptions.RemoveEmptyEntries); JToken currentToken = _rootSchema; foreach (string escapedPart in escapedParts) { string part = UnescapeReference(escapedPart); if (currentToken.Type == JTokenType.Object) { currentToken = currentToken[part]; } else if (currentToken.Type == JTokenType.Array || currentToken.Type == JTokenType.Constructor) { int index; if (int.TryParse(part, out index) && index >= 0 && index < currentToken.Count()) currentToken = currentToken[index]; else currentToken = null; } if (currentToken == null) break; } if (currentToken != null) resolvedSchema = BuildSchema(currentToken); } if (resolvedSchema == null) throw new JsonException("Could not resolve schema reference '{0}'.".FormatWith(CultureInfo.InvariantCulture, schema.DeferredReference)); } schema = resolvedSchema; } if (schema.ReferencesResolved) return schema; schema.ReferencesResolved = true; if (schema.Extends != null) { for (int i = 0; i < schema.Extends.Count; i++) { schema.Extends[i] = ResolveReferences(schema.Extends[i]); } } if (schema.Items != null) { for (int i = 0; i < schema.Items.Count; i++) { schema.Items[i] = ResolveReferences(schema.Items[i]); } } if (schema.AdditionalItems != null) schema.AdditionalItems = ResolveReferences(schema.AdditionalItems); if (schema.PatternProperties != null) { foreach (KeyValuePair patternProperty in schema.PatternProperties.ToList()) { schema.PatternProperties[patternProperty.Key] = ResolveReferences(patternProperty.Value); } } if (schema.Properties != null) { foreach (KeyValuePair property in schema.Properties.ToList()) { schema.Properties[property.Key] = ResolveReferences(property.Value); } } if (schema.AdditionalProperties != null) schema.AdditionalProperties = ResolveReferences(schema.AdditionalProperties); return schema; } private JsonSchema BuildSchema(JToken token) { JObject schemaObject = token as JObject; if (schemaObject == null) throw JsonException.Create(token, token.Path, "Expected object while parsing schema object, got {0}.".FormatWith(CultureInfo.InvariantCulture, token.Type)); JToken referenceToken; if (schemaObject.TryGetValue(JsonTypeReflector.RefPropertyName, out referenceToken)) { JsonSchema deferredSchema = new JsonSchema(); deferredSchema.DeferredReference = (string)referenceToken; return deferredSchema; } string location = token.Path.Replace(".", "/").Replace("[", "/").Replace("]", string.Empty); if (!string.IsNullOrEmpty(location)) location = "/" + location; location = "#" + location; JsonSchema existingSchema; if (_documentSchemas.TryGetValue(location, out existingSchema)) return existingSchema; Push(new JsonSchema { Location = location }); ProcessSchemaProperties(schemaObject); return Pop(); } private void ProcessSchemaProperties(JObject schemaObject) { foreach (KeyValuePair property in schemaObject) { switch (property.Key) { case JsonSchemaConstants.TypePropertyName: CurrentSchema.Type = ProcessType(property.Value); break; case JsonSchemaConstants.IdPropertyName: CurrentSchema.Id = (string)property.Value; break; case JsonSchemaConstants.TitlePropertyName: CurrentSchema.Title = (string)property.Value; break; case JsonSchemaConstants.DescriptionPropertyName: CurrentSchema.Description = (string)property.Value; break; case JsonSchemaConstants.PropertiesPropertyName: CurrentSchema.Properties = ProcessProperties(property.Value); break; case JsonSchemaConstants.ItemsPropertyName: ProcessItems(property.Value); break; case JsonSchemaConstants.AdditionalPropertiesPropertyName: ProcessAdditionalProperties(property.Value); break; case JsonSchemaConstants.AdditionalItemsPropertyName: ProcessAdditionalItems(property.Value); break; case JsonSchemaConstants.PatternPropertiesPropertyName: CurrentSchema.PatternProperties = ProcessProperties(property.Value); break; case JsonSchemaConstants.RequiredPropertyName: CurrentSchema.Required = (bool)property.Value; break; case JsonSchemaConstants.RequiresPropertyName: CurrentSchema.Requires = (string)property.Value; break; case JsonSchemaConstants.MinimumPropertyName: CurrentSchema.Minimum = (double)property.Value; break; case JsonSchemaConstants.MaximumPropertyName: CurrentSchema.Maximum = (double)property.Value; break; case JsonSchemaConstants.ExclusiveMinimumPropertyName: CurrentSchema.ExclusiveMinimum = (bool)property.Value; break; case JsonSchemaConstants.ExclusiveMaximumPropertyName: CurrentSchema.ExclusiveMaximum = (bool)property.Value; break; case JsonSchemaConstants.MaximumLengthPropertyName: CurrentSchema.MaximumLength = (int)property.Value; break; case JsonSchemaConstants.MinimumLengthPropertyName: CurrentSchema.MinimumLength = (int)property.Value; break; case JsonSchemaConstants.MaximumItemsPropertyName: CurrentSchema.MaximumItems = (int)property.Value; break; case JsonSchemaConstants.MinimumItemsPropertyName: CurrentSchema.MinimumItems = (int)property.Value; break; case JsonSchemaConstants.DivisibleByPropertyName: CurrentSchema.DivisibleBy = (double)property.Value; break; case JsonSchemaConstants.DisallowPropertyName: CurrentSchema.Disallow = ProcessType(property.Value); break; case JsonSchemaConstants.DefaultPropertyName: CurrentSchema.Default = property.Value.DeepClone(); break; case JsonSchemaConstants.HiddenPropertyName: CurrentSchema.Hidden = (bool)property.Value; break; case JsonSchemaConstants.ReadOnlyPropertyName: CurrentSchema.ReadOnly = (bool)property.Value; break; case JsonSchemaConstants.FormatPropertyName: CurrentSchema.Format = (string)property.Value; break; case JsonSchemaConstants.PatternPropertyName: CurrentSchema.Pattern = (string)property.Value; break; case JsonSchemaConstants.EnumPropertyName: ProcessEnum(property.Value); break; case JsonSchemaConstants.ExtendsPropertyName: ProcessExtends(property.Value); break; case JsonSchemaConstants.UniqueItemsPropertyName: CurrentSchema.UniqueItems = (bool)property.Value; break; } } } private void ProcessExtends(JToken token) { IList schemas = new List(); if (token.Type == JTokenType.Array) { foreach (JToken schemaObject in token) { schemas.Add(BuildSchema(schemaObject)); } } else { JsonSchema schema = BuildSchema(token); if (schema != null) schemas.Add(schema); } if (schemas.Count > 0) CurrentSchema.Extends = schemas; } private void ProcessEnum(JToken token) { if (token.Type != JTokenType.Array) throw JsonException.Create(token, token.Path, "Expected Array token while parsing enum values, got {0}.".FormatWith(CultureInfo.InvariantCulture, token.Type)); CurrentSchema.Enum = new List(); foreach (JToken enumValue in token) { CurrentSchema.Enum.Add(enumValue.DeepClone()); } } private void ProcessAdditionalProperties(JToken token) { if (token.Type == JTokenType.Boolean) CurrentSchema.AllowAdditionalProperties = (bool)token; else CurrentSchema.AdditionalProperties = BuildSchema(token); } private void ProcessAdditionalItems(JToken token) { if (token.Type == JTokenType.Boolean) CurrentSchema.AllowAdditionalItems = (bool)token; else CurrentSchema.AdditionalItems = BuildSchema(token); } private IDictionary ProcessProperties(JToken token) { IDictionary properties = new Dictionary(); if (token.Type != JTokenType.Object) throw JsonException.Create(token, token.Path, "Expected Object token while parsing schema properties, got {0}.".FormatWith(CultureInfo.InvariantCulture, token.Type)); foreach (JProperty propertyToken in token) { if (properties.ContainsKey(propertyToken.Name)) throw new JsonException("Property {0} has already been defined in schema.".FormatWith(CultureInfo.InvariantCulture, propertyToken.Name)); properties.Add(propertyToken.Name, BuildSchema(propertyToken.Value)); } return properties; } private void ProcessItems(JToken token) { CurrentSchema.Items = new List(); switch (token.Type) { case JTokenType.Object: CurrentSchema.Items.Add(BuildSchema(token)); CurrentSchema.PositionalItemsValidation = false; break; case JTokenType.Array: CurrentSchema.PositionalItemsValidation = true; foreach (JToken schemaToken in token) { CurrentSchema.Items.Add(BuildSchema(schemaToken)); } break; default: throw JsonException.Create(token, token.Path, "Expected array or JSON schema object, got {0}.".FormatWith(CultureInfo.InvariantCulture, token.Type)); } } private JsonSchemaType? ProcessType(JToken token) { switch (token.Type) { case JTokenType.Array: // ensure type is in blank state before ORing values JsonSchemaType? type = JsonSchemaType.None; foreach (JToken typeToken in token) { if (typeToken.Type != JTokenType.String) throw JsonException.Create(typeToken, typeToken.Path, "Exception JSON schema type string token, got {0}.".FormatWith(CultureInfo.InvariantCulture, token.Type)); type = type | MapType((string)typeToken); } return type; case JTokenType.String: return MapType((string)token); default: throw JsonException.Create(token, token.Path, "Expected array or JSON schema type string token, got {0}.".FormatWith(CultureInfo.InvariantCulture, token.Type)); } } internal static JsonSchemaType MapType(string type) { JsonSchemaType mappedType; if (!JsonSchemaConstants.JsonSchemaTypeMapping.TryGetValue(type, out mappedType)) throw new JsonException("Invalid JSON schema type: {0}".FormatWith(CultureInfo.InvariantCulture, type)); return mappedType; } internal static string MapType(JsonSchemaType type) { return JsonSchemaConstants.JsonSchemaTypeMapping.Single(kv => kv.Value == type).Key; } } } newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaType.cs0000664000175000017500000000427212454416117025666 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Schema { /// /// The value types allowed by the . /// [Flags] public enum JsonSchemaType { /// /// No type specified. /// None = 0, /// /// String type. /// String = 1, /// /// Float type. /// Float = 2, /// /// Integer type. /// Integer = 4, /// /// Boolean type. /// Boolean = 8, /// /// Object type. /// Object = 16, /// /// Array type. /// Array = 32, /// /// Null type. /// Null = 64, /// /// Any type. /// Any = String | Float | Integer | Boolean | Object | Array | Null } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaGenerator.cs0000664000175000017500000004617212454416117026700 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using System.ComponentModel; using System.Collections.Generic; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Serialization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Schema { /// /// Generates a from a specified . /// public class JsonSchemaGenerator { /// /// Gets or sets how undefined schemas are handled by the serializer. /// public UndefinedSchemaIdHandling UndefinedSchemaIdHandling { get; set; } private IContractResolver _contractResolver; /// /// Gets or sets the contract resolver. /// /// The contract resolver. public IContractResolver ContractResolver { get { if (_contractResolver == null) return DefaultContractResolver.Instance; return _contractResolver; } set { _contractResolver = value; } } private class TypeSchema { public Type Type { get; private set; } public JsonSchema Schema { get; private set; } public TypeSchema(Type type, JsonSchema schema) { ValidationUtils.ArgumentNotNull(type, "type"); ValidationUtils.ArgumentNotNull(schema, "schema"); Type = type; Schema = schema; } } private JsonSchemaResolver _resolver; private readonly IList _stack = new List(); private JsonSchema _currentSchema; private JsonSchema CurrentSchema { get { return _currentSchema; } } private void Push(TypeSchema typeSchema) { _currentSchema = typeSchema.Schema; _stack.Add(typeSchema); _resolver.LoadedSchemas.Add(typeSchema.Schema); } private TypeSchema Pop() { TypeSchema popped = _stack[_stack.Count - 1]; _stack.RemoveAt(_stack.Count - 1); TypeSchema newValue = _stack.LastOrDefault(); if (newValue != null) { _currentSchema = newValue.Schema; } else { _currentSchema = null; } return popped; } /// /// Generate a from the specified type. /// /// The type to generate a from. /// A generated from the specified type. public JsonSchema Generate(Type type) { return Generate(type, new JsonSchemaResolver(), false); } /// /// Generate a from the specified type. /// /// The type to generate a from. /// The used to resolve schema references. /// A generated from the specified type. public JsonSchema Generate(Type type, JsonSchemaResolver resolver) { return Generate(type, resolver, false); } /// /// Generate a from the specified type. /// /// The type to generate a from. /// Specify whether the generated root will be nullable. /// A generated from the specified type. public JsonSchema Generate(Type type, bool rootSchemaNullable) { return Generate(type, new JsonSchemaResolver(), rootSchemaNullable); } /// /// Generate a from the specified type. /// /// The type to generate a from. /// The used to resolve schema references. /// Specify whether the generated root will be nullable. /// A generated from the specified type. public JsonSchema Generate(Type type, JsonSchemaResolver resolver, bool rootSchemaNullable) { ValidationUtils.ArgumentNotNull(type, "type"); ValidationUtils.ArgumentNotNull(resolver, "resolver"); _resolver = resolver; return GenerateInternal(type, (!rootSchemaNullable) ? Required.Always : Required.Default, false); } private string GetTitle(Type type) { JsonContainerAttribute containerAttribute = JsonTypeReflector.GetCachedAttribute(type); if (containerAttribute != null && !string.IsNullOrEmpty(containerAttribute.Title)) return containerAttribute.Title; return null; } private string GetDescription(Type type) { JsonContainerAttribute containerAttribute = JsonTypeReflector.GetCachedAttribute(type); if (containerAttribute != null && !string.IsNullOrEmpty(containerAttribute.Description)) return containerAttribute.Description; #if !(NETFX_CORE || PORTABLE40 || PORTABLE) DescriptionAttribute descriptionAttribute = ReflectionUtils.GetAttribute(type); if (descriptionAttribute != null) return descriptionAttribute.Description; #endif return null; } private string GetTypeId(Type type, bool explicitOnly) { JsonContainerAttribute containerAttribute = JsonTypeReflector.GetCachedAttribute(type); if (containerAttribute != null && !string.IsNullOrEmpty(containerAttribute.Id)) return containerAttribute.Id; if (explicitOnly) return null; switch (UndefinedSchemaIdHandling) { case UndefinedSchemaIdHandling.UseTypeName: return type.FullName; case UndefinedSchemaIdHandling.UseAssemblyQualifiedName: return type.AssemblyQualifiedName; default: return null; } } private JsonSchema GenerateInternal(Type type, Required valueRequired, bool required) { ValidationUtils.ArgumentNotNull(type, "type"); string resolvedId = GetTypeId(type, false); string explicitId = GetTypeId(type, true); if (!string.IsNullOrEmpty(resolvedId)) { JsonSchema resolvedSchema = _resolver.GetSchema(resolvedId); if (resolvedSchema != null) { // resolved schema is not null but referencing member allows nulls // change resolved schema to allow nulls. hacky but what are ya gonna do? if (valueRequired != Required.Always && !HasFlag(resolvedSchema.Type, JsonSchemaType.Null)) resolvedSchema.Type |= JsonSchemaType.Null; if (required && resolvedSchema.Required != true) resolvedSchema.Required = true; return resolvedSchema; } } // test for unresolved circular reference if (_stack.Any(tc => tc.Type == type)) { throw new JsonException("Unresolved circular reference for type '{0}'. Explicitly define an Id for the type using a JsonObject/JsonArray attribute or automatically generate a type Id using the UndefinedSchemaIdHandling property.".FormatWith(CultureInfo.InvariantCulture, type)); } JsonContract contract = ContractResolver.ResolveContract(type); JsonConverter converter; if ((converter = contract.Converter) != null || (converter = contract.InternalConverter) != null) { JsonSchema converterSchema = converter.GetSchema(); if (converterSchema != null) return converterSchema; } Push(new TypeSchema(type, new JsonSchema())); if (explicitId != null) CurrentSchema.Id = explicitId; if (required) CurrentSchema.Required = true; CurrentSchema.Title = GetTitle(type); CurrentSchema.Description = GetDescription(type); if (converter != null) { // todo: Add GetSchema to JsonConverter and use here? CurrentSchema.Type = JsonSchemaType.Any; } else { switch (contract.ContractType) { case JsonContractType.Object: CurrentSchema.Type = AddNullType(JsonSchemaType.Object, valueRequired); CurrentSchema.Id = GetTypeId(type, false); GenerateObjectSchema(type, (JsonObjectContract)contract); break; case JsonContractType.Array: CurrentSchema.Type = AddNullType(JsonSchemaType.Array, valueRequired); CurrentSchema.Id = GetTypeId(type, false); JsonArrayAttribute arrayAttribute = JsonTypeReflector.GetCachedAttribute(type); bool allowNullItem = (arrayAttribute == null || arrayAttribute.AllowNullItems); Type collectionItemType = ReflectionUtils.GetCollectionItemType(type); if (collectionItemType != null) { CurrentSchema.Items = new List(); CurrentSchema.Items.Add(GenerateInternal(collectionItemType, (!allowNullItem) ? Required.Always : Required.Default, false)); } break; case JsonContractType.Primitive: CurrentSchema.Type = GetJsonSchemaType(type, valueRequired); if (CurrentSchema.Type == JsonSchemaType.Integer && type.IsEnum() && !type.IsDefined(typeof(FlagsAttribute), true)) { CurrentSchema.Enum = new List(); IList> enumValues = EnumUtils.GetNamesAndValues(type); foreach (EnumValue enumValue in enumValues) { JToken value = JToken.FromObject(enumValue.Value); CurrentSchema.Enum.Add(value); } } break; case JsonContractType.String: JsonSchemaType schemaType = (!ReflectionUtils.IsNullable(contract.UnderlyingType)) ? JsonSchemaType.String : AddNullType(JsonSchemaType.String, valueRequired); CurrentSchema.Type = schemaType; break; case JsonContractType.Dictionary: CurrentSchema.Type = AddNullType(JsonSchemaType.Object, valueRequired); Type keyType; Type valueType; ReflectionUtils.GetDictionaryKeyValueTypes(type, out keyType, out valueType); if (keyType != null) { JsonContract keyContract = ContractResolver.ResolveContract(keyType); // can be converted to a string if (keyContract.ContractType == JsonContractType.Primitive) { CurrentSchema.AdditionalProperties = GenerateInternal(valueType, Required.Default, false); } } break; #if !(NETFX_CORE || PORTABLE || PORTABLE40) case JsonContractType.Serializable: CurrentSchema.Type = AddNullType(JsonSchemaType.Object, valueRequired); CurrentSchema.Id = GetTypeId(type, false); GenerateISerializableContract(type, (JsonISerializableContract)contract); break; #endif #if !(NET35 || NET20 || PORTABLE40) case JsonContractType.Dynamic: #endif case JsonContractType.Linq: CurrentSchema.Type = JsonSchemaType.Any; break; default: throw new JsonException("Unexpected contract type: {0}".FormatWith(CultureInfo.InvariantCulture, contract)); } } return Pop().Schema; } private JsonSchemaType AddNullType(JsonSchemaType type, Required valueRequired) { if (valueRequired != Required.Always) return type | JsonSchemaType.Null; return type; } private bool HasFlag(DefaultValueHandling value, DefaultValueHandling flag) { return ((value & flag) == flag); } private void GenerateObjectSchema(Type type, JsonObjectContract contract) { CurrentSchema.Properties = new Dictionary(); foreach (JsonProperty property in contract.Properties) { if (!property.Ignored) { bool optional = property.NullValueHandling == NullValueHandling.Ignore || HasFlag(property.DefaultValueHandling.GetValueOrDefault(), DefaultValueHandling.Ignore) || property.ShouldSerialize != null || property.GetIsSpecified != null; JsonSchema propertySchema = GenerateInternal(property.PropertyType, property.Required, !optional); if (property.DefaultValue != null) propertySchema.Default = JToken.FromObject(property.DefaultValue); CurrentSchema.Properties.Add(property.PropertyName, propertySchema); } } if (type.IsSealed()) CurrentSchema.AllowAdditionalProperties = false; } #if !(NETFX_CORE || PORTABLE || PORTABLE40) private void GenerateISerializableContract(Type type, JsonISerializableContract contract) { CurrentSchema.AllowAdditionalProperties = true; } #endif internal static bool HasFlag(JsonSchemaType? value, JsonSchemaType flag) { // default value is Any if (value == null) return true; bool match = ((value & flag) == flag); if (match) return true; // integer is a subset of float if (flag == JsonSchemaType.Integer && (value & JsonSchemaType.Float) == JsonSchemaType.Float) return true; return false; } private JsonSchemaType GetJsonSchemaType(Type type, Required valueRequired) { JsonSchemaType schemaType = JsonSchemaType.None; if (valueRequired != Required.Always && ReflectionUtils.IsNullable(type)) { schemaType = JsonSchemaType.Null; if (ReflectionUtils.IsNullableType(type)) type = Nullable.GetUnderlyingType(type); } PrimitiveTypeCode typeCode = ConvertUtils.GetTypeCode(type); switch (typeCode) { case PrimitiveTypeCode.Empty: case PrimitiveTypeCode.Object: return schemaType | JsonSchemaType.String; #if !(NETFX_CORE || PORTABLE) case PrimitiveTypeCode.DBNull: return schemaType | JsonSchemaType.Null; #endif case PrimitiveTypeCode.Boolean: return schemaType | JsonSchemaType.Boolean; case PrimitiveTypeCode.Char: return schemaType | JsonSchemaType.String; case PrimitiveTypeCode.SByte: case PrimitiveTypeCode.Byte: case PrimitiveTypeCode.Int16: case PrimitiveTypeCode.UInt16: case PrimitiveTypeCode.Int32: case PrimitiveTypeCode.UInt32: case PrimitiveTypeCode.Int64: case PrimitiveTypeCode.UInt64: #if !(PORTABLE || NET35 || NET20) case PrimitiveTypeCode.BigInteger: #endif return schemaType | JsonSchemaType.Integer; case PrimitiveTypeCode.Single: case PrimitiveTypeCode.Double: case PrimitiveTypeCode.Decimal: return schemaType | JsonSchemaType.Float; // convert to string? case PrimitiveTypeCode.DateTime: #if !NET20 case PrimitiveTypeCode.DateTimeOffset: #endif return schemaType | JsonSchemaType.String; case PrimitiveTypeCode.String: case PrimitiveTypeCode.Uri: case PrimitiveTypeCode.Guid: case PrimitiveTypeCode.TimeSpan: case PrimitiveTypeCode.Bytes: return schemaType | JsonSchemaType.String; default: throw new JsonException("Unexpected type code '{0}' for type '{1}'.".FormatWith(CultureInfo.InvariantCulture, typeCode, type)); } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaNodeCollection.cs0000664000175000017500000000264212454416117027645 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.ObjectModel; namespace Newtonsoft.Json.Schema { internal class JsonSchemaNodeCollection : KeyedCollection { protected override string GetKeyForItem(JsonSchemaNode item) { return item.Id; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/UndefinedSchemaIdHandling.cs0000664000175000017500000000333612454416117027736 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Schema { /// /// Specifies undefined schema Id handling options for the . /// public enum UndefinedSchemaIdHandling { /// /// Do not infer a schema Id. /// None = 0, /// /// Use the .NET type name as the schema Id. /// UseTypeName = 1, /// /// Use the assembly qualified .NET type name as the schema Id. /// UseAssemblyQualifiedName = 2, } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaException.cs0000664000175000017500000001120012454416117026670 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Runtime.Serialization; namespace Newtonsoft.Json.Schema { /// /// Returns detailed information about the schema exception. /// #if !(NETFX_CORE || PORTABLE40 || PORTABLE) [Serializable] #endif public class JsonSchemaException : JsonException { /// /// Gets the line number indicating where the error occurred. /// /// The line number indicating where the error occurred. public int LineNumber { get; private set; } /// /// Gets the line position indicating where the error occurred. /// /// The line position indicating where the error occurred. public int LinePosition { get; private set; } /// /// Gets the path to the JSON where the error occurred. /// /// The path to the JSON where the error occurred. public string Path { get; private set; } /// /// Initializes a new instance of the class. /// public JsonSchemaException() { } /// /// Initializes a new instance of the class /// with a specified error message. /// /// The error message that explains the reason for the exception. public JsonSchemaException(string message) : base(message) { } /// /// Initializes a new instance of the class /// with a specified error message and a reference to the inner exception that is the cause of this exception. /// /// The error message that explains the reason for the exception. /// The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. public JsonSchemaException(string message, Exception innerException) : base(message, innerException) { } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) /// /// Initializes a new instance of the class. /// /// The that holds the serialized object data about the exception being thrown. /// The that contains contextual information about the source or destination. /// The parameter is null. /// The class name is null or is zero (0). public JsonSchemaException(SerializationInfo info, StreamingContext context) : base(info, context) { } #endif internal JsonSchemaException(string message, Exception innerException, string path, int lineNumber, int linePosition) : base(message, innerException) { Path = path; LineNumber = lineNumber; LinePosition = linePosition; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchema.cs0000664000175000017500000003212312454416117025020 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Schema { /// /// An in-memory representation of a JSON Schema. /// public class JsonSchema { /// /// Gets or sets the id. /// public string Id { get; set; } /// /// Gets or sets the title. /// public string Title { get; set; } /// /// Gets or sets whether the object is required. /// public bool? Required { get; set; } /// /// Gets or sets whether the object is read only. /// public bool? ReadOnly { get; set; } /// /// Gets or sets whether the object is visible to users. /// public bool? Hidden { get; set; } /// /// Gets or sets whether the object is transient. /// public bool? Transient { get; set; } /// /// Gets or sets the description of the object. /// public string Description { get; set; } /// /// Gets or sets the types of values allowed by the object. /// /// The type. public JsonSchemaType? Type { get; set; } /// /// Gets or sets the pattern. /// /// The pattern. public string Pattern { get; set; } /// /// Gets or sets the minimum length. /// /// The minimum length. public int? MinimumLength { get; set; } /// /// Gets or sets the maximum length. /// /// The maximum length. public int? MaximumLength { get; set; } /// /// Gets or sets a number that the value should be divisble by. /// /// A number that the value should be divisble by. public double? DivisibleBy { get; set; } /// /// Gets or sets the minimum. /// /// The minimum. public double? Minimum { get; set; } /// /// Gets or sets the maximum. /// /// The maximum. public double? Maximum { get; set; } /// /// Gets or sets a flag indicating whether the value can not equal the number defined by the "minimum" attribute. /// /// A flag indicating whether the value can not equal the number defined by the "minimum" attribute. public bool? ExclusiveMinimum { get; set; } /// /// Gets or sets a flag indicating whether the value can not equal the number defined by the "maximum" attribute. /// /// A flag indicating whether the value can not equal the number defined by the "maximum" attribute. public bool? ExclusiveMaximum { get; set; } /// /// Gets or sets the minimum number of items. /// /// The minimum number of items. public int? MinimumItems { get; set; } /// /// Gets or sets the maximum number of items. /// /// The maximum number of items. public int? MaximumItems { get; set; } /// /// Gets or sets the of items. /// /// The of items. public IList Items { get; set; } /// /// Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . /// /// /// true if items are validated using their array position; otherwise, false. /// public bool PositionalItemsValidation { get; set; } /// /// Gets or sets the of additional items. /// /// The of additional items. public JsonSchema AdditionalItems { get; set; } /// /// Gets or sets a value indicating whether additional items are allowed. /// /// /// true if additional items are allowed; otherwise, false. /// public bool AllowAdditionalItems { get; set; } /// /// Gets or sets whether the array items must be unique. /// public bool UniqueItems { get; set; } /// /// Gets or sets the of properties. /// /// The of properties. public IDictionary Properties { get; set; } /// /// Gets or sets the of additional properties. /// /// The of additional properties. public JsonSchema AdditionalProperties { get; set; } /// /// Gets or sets the pattern properties. /// /// The pattern properties. public IDictionary PatternProperties { get; set; } /// /// Gets or sets a value indicating whether additional properties are allowed. /// /// /// true if additional properties are allowed; otherwise, false. /// public bool AllowAdditionalProperties { get; set; } /// /// Gets or sets the required property if this property is present. /// /// The required property if this property is present. public string Requires { get; set; } /// /// Gets or sets the a collection of valid enum values allowed. /// /// A collection of valid enum values allowed. public IList Enum { get; set; } /// /// Gets or sets disallowed types. /// /// The disallow types. public JsonSchemaType? Disallow { get; set; } /// /// Gets or sets the default value. /// /// The default value. public JToken Default { get; set; } /// /// Gets or sets the collection of that this schema extends. /// /// The collection of that this schema extends. public IList Extends { get; set; } /// /// Gets or sets the format. /// /// The format. public string Format { get; set; } internal string Location { get; set; } private readonly string _internalId = Guid.NewGuid().ToString("N"); internal string InternalId { get { return _internalId; } } // if this is set then this schema instance is just a deferred reference // and will be replaced when the schema reference is resolved internal string DeferredReference { get; set; } internal bool ReferencesResolved { get; set; } /// /// Initializes a new instance of the class. /// public JsonSchema() { AllowAdditionalProperties = true; AllowAdditionalItems = true; } /// /// Reads a from the specified . /// /// The containing the JSON Schema to read. /// The object representing the JSON Schema. public static JsonSchema Read(JsonReader reader) { return Read(reader, new JsonSchemaResolver()); } /// /// Reads a from the specified . /// /// The containing the JSON Schema to read. /// The to use when resolving schema references. /// The object representing the JSON Schema. public static JsonSchema Read(JsonReader reader, JsonSchemaResolver resolver) { ValidationUtils.ArgumentNotNull(reader, "reader"); ValidationUtils.ArgumentNotNull(resolver, "resolver"); JsonSchemaBuilder builder = new JsonSchemaBuilder(resolver); return builder.Read(reader); } /// /// Load a from a string that contains schema JSON. /// /// A that contains JSON. /// A populated from the string that contains JSON. public static JsonSchema Parse(string json) { return Parse(json, new JsonSchemaResolver()); } /// /// Parses the specified json. /// /// The json. /// The resolver. /// A populated from the string that contains JSON. public static JsonSchema Parse(string json, JsonSchemaResolver resolver) { ValidationUtils.ArgumentNotNull(json, "json"); using (JsonReader reader = new JsonTextReader(new StringReader(json))) { return Read(reader, resolver); } } /// /// Writes this schema to a . /// /// A into which this method will write. public void WriteTo(JsonWriter writer) { WriteTo(writer, new JsonSchemaResolver()); } /// /// Writes this schema to a using the specified . /// /// A into which this method will write. /// The resolver used. public void WriteTo(JsonWriter writer, JsonSchemaResolver resolver) { ValidationUtils.ArgumentNotNull(writer, "writer"); ValidationUtils.ArgumentNotNull(resolver, "resolver"); JsonSchemaWriter schemaWriter = new JsonSchemaWriter(writer, resolver); schemaWriter.WriteSchema(this); } /// /// Returns a that represents the current . /// /// /// A that represents the current . /// public override string ToString() { StringWriter writer = new StringWriter(CultureInfo.InvariantCulture); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; WriteTo(jsonWriter); return writer.ToString(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaWriter.cs0000664000175000017500000002361612454416117026224 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Utilities; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Schema { internal class JsonSchemaWriter { private readonly JsonWriter _writer; private readonly JsonSchemaResolver _resolver; public JsonSchemaWriter(JsonWriter writer, JsonSchemaResolver resolver) { ValidationUtils.ArgumentNotNull(writer, "writer"); _writer = writer; _resolver = resolver; } private void ReferenceOrWriteSchema(JsonSchema schema) { if (schema.Id != null && _resolver.GetSchema(schema.Id) != null) { _writer.WriteStartObject(); _writer.WritePropertyName(JsonTypeReflector.RefPropertyName); _writer.WriteValue(schema.Id); _writer.WriteEndObject(); } else { WriteSchema(schema); } } public void WriteSchema(JsonSchema schema) { ValidationUtils.ArgumentNotNull(schema, "schema"); if (!_resolver.LoadedSchemas.Contains(schema)) _resolver.LoadedSchemas.Add(schema); _writer.WriteStartObject(); WritePropertyIfNotNull(_writer, JsonSchemaConstants.IdPropertyName, schema.Id); WritePropertyIfNotNull(_writer, JsonSchemaConstants.TitlePropertyName, schema.Title); WritePropertyIfNotNull(_writer, JsonSchemaConstants.DescriptionPropertyName, schema.Description); WritePropertyIfNotNull(_writer, JsonSchemaConstants.RequiredPropertyName, schema.Required); WritePropertyIfNotNull(_writer, JsonSchemaConstants.ReadOnlyPropertyName, schema.ReadOnly); WritePropertyIfNotNull(_writer, JsonSchemaConstants.HiddenPropertyName, schema.Hidden); WritePropertyIfNotNull(_writer, JsonSchemaConstants.TransientPropertyName, schema.Transient); if (schema.Type != null) WriteType(JsonSchemaConstants.TypePropertyName, _writer, schema.Type.Value); if (!schema.AllowAdditionalProperties) { _writer.WritePropertyName(JsonSchemaConstants.AdditionalPropertiesPropertyName); _writer.WriteValue(schema.AllowAdditionalProperties); } else { if (schema.AdditionalProperties != null) { _writer.WritePropertyName(JsonSchemaConstants.AdditionalPropertiesPropertyName); ReferenceOrWriteSchema(schema.AdditionalProperties); } } if (!schema.AllowAdditionalItems) { _writer.WritePropertyName(JsonSchemaConstants.AdditionalItemsPropertyName); _writer.WriteValue(schema.AllowAdditionalItems); } else { if (schema.AdditionalItems != null) { _writer.WritePropertyName(JsonSchemaConstants.AdditionalItemsPropertyName); ReferenceOrWriteSchema(schema.AdditionalItems); } } WriteSchemaDictionaryIfNotNull(_writer, JsonSchemaConstants.PropertiesPropertyName, schema.Properties); WriteSchemaDictionaryIfNotNull(_writer, JsonSchemaConstants.PatternPropertiesPropertyName, schema.PatternProperties); WriteItems(schema); WritePropertyIfNotNull(_writer, JsonSchemaConstants.MinimumPropertyName, schema.Minimum); WritePropertyIfNotNull(_writer, JsonSchemaConstants.MaximumPropertyName, schema.Maximum); WritePropertyIfNotNull(_writer, JsonSchemaConstants.ExclusiveMinimumPropertyName, schema.ExclusiveMinimum); WritePropertyIfNotNull(_writer, JsonSchemaConstants.ExclusiveMaximumPropertyName, schema.ExclusiveMaximum); WritePropertyIfNotNull(_writer, JsonSchemaConstants.MinimumLengthPropertyName, schema.MinimumLength); WritePropertyIfNotNull(_writer, JsonSchemaConstants.MaximumLengthPropertyName, schema.MaximumLength); WritePropertyIfNotNull(_writer, JsonSchemaConstants.MinimumItemsPropertyName, schema.MinimumItems); WritePropertyIfNotNull(_writer, JsonSchemaConstants.MaximumItemsPropertyName, schema.MaximumItems); WritePropertyIfNotNull(_writer, JsonSchemaConstants.DivisibleByPropertyName, schema.DivisibleBy); WritePropertyIfNotNull(_writer, JsonSchemaConstants.FormatPropertyName, schema.Format); WritePropertyIfNotNull(_writer, JsonSchemaConstants.PatternPropertyName, schema.Pattern); if (schema.Enum != null) { _writer.WritePropertyName(JsonSchemaConstants.EnumPropertyName); _writer.WriteStartArray(); foreach (JToken token in schema.Enum) { token.WriteTo(_writer); } _writer.WriteEndArray(); } if (schema.Default != null) { _writer.WritePropertyName(JsonSchemaConstants.DefaultPropertyName); schema.Default.WriteTo(_writer); } if (schema.Disallow != null) WriteType(JsonSchemaConstants.DisallowPropertyName, _writer, schema.Disallow.Value); if (schema.Extends != null && schema.Extends.Count > 0) { _writer.WritePropertyName(JsonSchemaConstants.ExtendsPropertyName); if (schema.Extends.Count == 1) { ReferenceOrWriteSchema(schema.Extends[0]); } else { _writer.WriteStartArray(); foreach (JsonSchema jsonSchema in schema.Extends) { ReferenceOrWriteSchema(jsonSchema); } _writer.WriteEndArray(); } } _writer.WriteEndObject(); } private void WriteSchemaDictionaryIfNotNull(JsonWriter writer, string propertyName, IDictionary properties) { if (properties != null) { writer.WritePropertyName(propertyName); writer.WriteStartObject(); foreach (KeyValuePair property in properties) { writer.WritePropertyName(property.Key); ReferenceOrWriteSchema(property.Value); } writer.WriteEndObject(); } } private void WriteItems(JsonSchema schema) { if (schema.Items == null && !schema.PositionalItemsValidation) return; _writer.WritePropertyName(JsonSchemaConstants.ItemsPropertyName); if (!schema.PositionalItemsValidation) { if (schema.Items != null && schema.Items.Count > 0) { ReferenceOrWriteSchema(schema.Items[0]); } else { _writer.WriteStartObject(); _writer.WriteEndObject(); } return; } _writer.WriteStartArray(); if (schema.Items != null) { foreach (JsonSchema itemSchema in schema.Items) { ReferenceOrWriteSchema(itemSchema); } } _writer.WriteEndArray(); } private void WriteType(string propertyName, JsonWriter writer, JsonSchemaType type) { IList types; if (System.Enum.IsDefined(typeof(JsonSchemaType), type)) types = new List { type }; else types = EnumUtils.GetFlagsValues(type).Where(v => v != JsonSchemaType.None).ToList(); if (types.Count == 0) return; writer.WritePropertyName(propertyName); if (types.Count == 1) { writer.WriteValue(JsonSchemaBuilder.MapType(types[0])); return; } writer.WriteStartArray(); foreach (JsonSchemaType jsonSchemaType in types) { writer.WriteValue(JsonSchemaBuilder.MapType(jsonSchemaType)); } writer.WriteEndArray(); } private void WritePropertyIfNotNull(JsonWriter writer, string propertyName, object value) { if (value != null) { writer.WritePropertyName(propertyName); writer.WriteValue(value); } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaResolver.cs0000664000175000017500000000500612454416117026542 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Schema { /// /// Resolves from an id. /// public class JsonSchemaResolver { /// /// Gets or sets the loaded schemas. /// /// The loaded schemas. public IList LoadedSchemas { get; protected set; } /// /// Initializes a new instance of the class. /// public JsonSchemaResolver() { LoadedSchemas = new List(); } /// /// Gets a for the specified reference. /// /// The id. /// A for the specified reference. public virtual JsonSchema GetSchema(string reference) { JsonSchema schema = LoadedSchemas.SingleOrDefault(s => string.Equals(s.Id, reference, StringComparison.Ordinal)); if (schema == null) schema = LoadedSchemas.SingleOrDefault(s => string.Equals(s.Location, reference, StringComparison.Ordinal)); return schema; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/ValidationEventArgs.cs0000664000175000017500000000474012454416117026703 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Schema { /// /// Returns detailed information related to the . /// public class ValidationEventArgs : EventArgs { private readonly JsonSchemaException _ex; internal ValidationEventArgs(JsonSchemaException ex) { ValidationUtils.ArgumentNotNull(ex, "ex"); _ex = ex; } /// /// Gets the associated with the validation error. /// /// The JsonSchemaException associated with the validation error. public JsonSchemaException Exception { get { return _ex; } } /// /// Gets the path of the JSON location where the validation error occurred. /// /// The path of the JSON location where the validation error occurred. public string Path { get { return _ex.Path; } } /// /// Gets the text description corresponding to the validation error. /// /// The text description. public string Message { get { return _ex.Message; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaNode.cs0000664000175000017500000000620312454416117025626 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Collections.ObjectModel; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Schema { internal class JsonSchemaNode { public string Id { get; private set; } public ReadOnlyCollection Schemas { get; private set; } public Dictionary Properties { get; private set; } public Dictionary PatternProperties { get; private set; } public List Items { get; private set; } public JsonSchemaNode AdditionalProperties { get; set; } public JsonSchemaNode AdditionalItems { get; set; } public JsonSchemaNode(JsonSchema schema) { Schemas = new ReadOnlyCollection(new[] { schema }); Properties = new Dictionary(); PatternProperties = new Dictionary(); Items = new List(); Id = GetId(Schemas); } private JsonSchemaNode(JsonSchemaNode source, JsonSchema schema) { Schemas = new ReadOnlyCollection(source.Schemas.Union(new[] { schema }).ToList()); Properties = new Dictionary(source.Properties); PatternProperties = new Dictionary(source.PatternProperties); Items = new List(source.Items); AdditionalProperties = source.AdditionalProperties; AdditionalItems = source.AdditionalItems; Id = GetId(Schemas); } public JsonSchemaNode Combine(JsonSchema schema) { return new JsonSchemaNode(this, schema); } public static string GetId(IEnumerable schemata) { return string.Join("-", schemata.Select(s => s.InternalId).OrderBy(id => id, StringComparer.Ordinal).ToArray()); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Schema/JsonSchemaModelBuilder.cs0000664000175000017500000001524412454416117027315 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Schema { internal class JsonSchemaModelBuilder { private JsonSchemaNodeCollection _nodes = new JsonSchemaNodeCollection(); private Dictionary _nodeModels = new Dictionary(); private JsonSchemaNode _node; public JsonSchemaModel Build(JsonSchema schema) { _nodes = new JsonSchemaNodeCollection(); _node = AddSchema(null, schema); _nodeModels = new Dictionary(); JsonSchemaModel model = BuildNodeModel(_node); return model; } public JsonSchemaNode AddSchema(JsonSchemaNode existingNode, JsonSchema schema) { string newId; if (existingNode != null) { if (existingNode.Schemas.Contains(schema)) return existingNode; newId = JsonSchemaNode.GetId(existingNode.Schemas.Union(new[] { schema })); } else { newId = JsonSchemaNode.GetId(new[] { schema }); } if (_nodes.Contains(newId)) return _nodes[newId]; JsonSchemaNode currentNode = (existingNode != null) ? existingNode.Combine(schema) : new JsonSchemaNode(schema); _nodes.Add(currentNode); AddProperties(schema.Properties, currentNode.Properties); AddProperties(schema.PatternProperties, currentNode.PatternProperties); if (schema.Items != null) { for (int i = 0; i < schema.Items.Count; i++) { AddItem(currentNode, i, schema.Items[i]); } } if (schema.AdditionalItems != null) AddAdditionalItems(currentNode, schema.AdditionalItems); if (schema.AdditionalProperties != null) AddAdditionalProperties(currentNode, schema.AdditionalProperties); if (schema.Extends != null) { foreach (JsonSchema jsonSchema in schema.Extends) { currentNode = AddSchema(currentNode, jsonSchema); } } return currentNode; } public void AddProperties(IDictionary source, IDictionary target) { if (source != null) { foreach (KeyValuePair property in source) { AddProperty(target, property.Key, property.Value); } } } public void AddProperty(IDictionary target, string propertyName, JsonSchema schema) { JsonSchemaNode propertyNode; target.TryGetValue(propertyName, out propertyNode); target[propertyName] = AddSchema(propertyNode, schema); } public void AddItem(JsonSchemaNode parentNode, int index, JsonSchema schema) { JsonSchemaNode existingItemNode = (parentNode.Items.Count > index) ? parentNode.Items[index] : null; JsonSchemaNode newItemNode = AddSchema(existingItemNode, schema); if (!(parentNode.Items.Count > index)) { parentNode.Items.Add(newItemNode); } else { parentNode.Items[index] = newItemNode; } } public void AddAdditionalProperties(JsonSchemaNode parentNode, JsonSchema schema) { parentNode.AdditionalProperties = AddSchema(parentNode.AdditionalProperties, schema); } public void AddAdditionalItems(JsonSchemaNode parentNode, JsonSchema schema) { parentNode.AdditionalItems = AddSchema(parentNode.AdditionalItems, schema); } private JsonSchemaModel BuildNodeModel(JsonSchemaNode node) { JsonSchemaModel model; if (_nodeModels.TryGetValue(node, out model)) return model; model = JsonSchemaModel.Create(node.Schemas); _nodeModels[node] = model; foreach (KeyValuePair property in node.Properties) { if (model.Properties == null) model.Properties = new Dictionary(); model.Properties[property.Key] = BuildNodeModel(property.Value); } foreach (KeyValuePair property in node.PatternProperties) { if (model.PatternProperties == null) model.PatternProperties = new Dictionary(); model.PatternProperties[property.Key] = BuildNodeModel(property.Value); } foreach (JsonSchemaNode t in node.Items) { if (model.Items == null) model.Items = new List(); model.Items.Add(BuildNodeModel(t)); } if (node.AdditionalProperties != null) model.AdditionalProperties = BuildNodeModel(node.AdditionalProperties); if (node.AdditionalItems != null) model.AdditionalItems = BuildNodeModel(node.AdditionalItems); return model; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Newtonsoft.Json.Net20.csproj0000664000175000017500000003454012454416117026433 0ustar directhexdirecthex Debug AnyCPU 9.0.30729 2.0 {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D} Library Properties Newtonsoft.Json Newtonsoft.Json false 3.5 false v2.0 publish\ true Disk false Foreground 7 Days false false true 0 1.0.0.%2a false true true full false bin\Debug\Net20\ TRACE;DEBUG;NET20 prompt 4 bin\Debug\Net20\Newtonsoft.Json.xml true Newtonsoft.Json.ruleset pdbonly true bin\Release\Net20\ TRACE;NET20 prompt 4 bin\Release\Net20\Newtonsoft.Json.xml Newtonsoft.Json.ruleset true False .NET Framework 3.5 SP1 Client Profile false False .NET Framework 2.0 %28x86%29 true False .NET Framework 3.0 %28x86%29 false False .NET Framework 3.5 false False .NET Framework 3.5 SP1 false newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonDictionaryAttribute.cs0000664000175000017500000000374012454416117026414 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json { /// /// Instructs the how to serialize the collection. /// [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface, AllowMultiple = false)] public sealed class JsonDictionaryAttribute : JsonContainerAttribute { /// /// Initializes a new instance of the class. /// public JsonDictionaryAttribute() { } /// /// Initializes a new instance of the class with the specified container Id. /// /// The container Id. public JsonDictionaryAttribute(string id) : base(id) { } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Properties/0000775000175000017500000000000012454416117023372 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Properties/AssemblyInfo.cs0000664000175000017500000001071512454416117026320 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Security; // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. #if PORTABLE40 [assembly: AssemblyTitle("Json.NET Portable .NET 4.0")] #elif PORTABLE [assembly: AssemblyTitle("Json.NET Portable")] #elif NETFX_CORE [assembly: AssemblyTitle("Json.NET WinRT")] #elif NET20 [assembly: AssemblyTitle("Json.NET .NET 2.0")] [assembly: AllowPartiallyTrustedCallers] #elif NET35 [assembly: AssemblyTitle("Json.NET .NET 3.5")] [assembly: AllowPartiallyTrustedCallers] #elif NET40 [assembly: AssemblyTitle("Json.NET .NET 4.0")] [assembly: AllowPartiallyTrustedCallers] #else [assembly: AssemblyTitle("Json.NET")] [assembly: AllowPartiallyTrustedCallers] #endif #if !SIGNED [assembly: InternalsVisibleTo("Newtonsoft.Json.Schema")] [assembly: InternalsVisibleTo("Newtonsoft.Json.Tests")] #else [assembly: InternalsVisibleTo("Newtonsoft.Json.Schema, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f561df277c6c0b497d629032b410cdcf286e537c054724f7ffa0164345f62b3e642029d7a80cc351918955328c4adc8a048823ef90b0cf38ea7db0d729caf2b633c3babe08b0310198c1081995c19029bc675193744eab9d7345b8a67258ec17d112cebdbbb2a281487dceeafb9d83aa930f32103fbe1d2911425bc5744002c7")] [assembly: InternalsVisibleTo("Newtonsoft.Json.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f561df277c6c0b497d629032b410cdcf286e537c054724f7ffa0164345f62b3e642029d7a80cc351918955328c4adc8a048823ef90b0cf38ea7db0d729caf2b633c3babe08b0310198c1081995c19029bc675193744eab9d7345b8a67258ec17d112cebdbbb2a281487dceeafb9d83aa930f32103fbe1d2911425bc5744002c7")] #endif [assembly: InternalsVisibleTo("Newtonsoft.Json.Dynamic, PublicKey=0024000004800000940000000602000000240000525341310004000001000100cbd8d53b9d7de30f1f1278f636ec462cf9c254991291e66ebb157a885638a517887633b898ccbcf0d5c5ff7be85a6abe9e765d0ac7cd33c68dac67e7e64530e8222101109f154ab14a941c490ac155cd1d4fcba0fabb49016b4ef28593b015cab5937da31172f03f67d09edda404b88a60023f062ae71d0b2e4438b74cc11dc9")] [assembly: AssemblyDescription("Json.NET is a popular high-performance JSON framework for .NET")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Newtonsoft")] [assembly: AssemblyProduct("Json.NET")] [assembly: AssemblyCopyright("Copyright James Newton-King 2008")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] #if !(PORTABLE40 || PORTABLE) // Setting ComVisible to false makes the types in this assembly not visible // to COM componenets. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] // The following GUID is for the ID of the typelib if this project is exposed to COM [assembly: Guid("9ca358aa-317b-4925-8ada-4a29e943a363")] #endif // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: [assembly: AssemblyVersion("6.0.0.0")] [assembly: AssemblyFileVersion("6.0.8.18111")] [assembly: CLSCompliant(true)] newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonArrayAttribute.cs0000664000175000017500000000544112454416117025365 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json { /// /// Instructs the how to serialize the collection. /// [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface, AllowMultiple = false)] public sealed class JsonArrayAttribute : JsonContainerAttribute { private bool _allowNullItems; /// /// Gets or sets a value indicating whether null items are allowed in the collection. /// /// true if null items are allowed in the collection; otherwise, false. public bool AllowNullItems { get { return _allowNullItems; } set { _allowNullItems = value; } } /// /// Initializes a new instance of the class. /// public JsonArrayAttribute() { } /// /// Initializes a new instance of the class with a flag indicating whether the array can contain null items /// /// A flag indicating whether the array can contain null items. public JsonArrayAttribute(bool allowNullItems) { _allowNullItems = allowNullItems; } /// /// Initializes a new instance of the class with the specified container Id. /// /// The container Id. public JsonArrayAttribute(string id) : base(id) { } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/WriteState.cs0000664000175000017500000000462012454416117023662 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json { /// /// Specifies the state of the . /// public enum WriteState { /// /// An exception has been thrown, which has left the in an invalid state. /// You may call the method to put the in the Closed state. /// Any other method calls results in an being thrown. /// Error = 0, /// /// The method has been called. /// Closed = 1, /// /// An object is being written. /// Object = 2, /// /// A array is being written. /// Array = 3, /// /// A constructor is being written. /// Constructor = 4, /// /// A property is being written. /// Property = 5, /// /// A write method has not been called. /// Start = 6 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/0000775000175000017500000000000012454416117022141 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/Extensions.cs0000664000175000017500000003543112454416117024635 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Utilities; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Linq { /// /// Contains the LINQ to JSON extension methods. /// public static class Extensions { /// /// Returns a collection of tokens that contains the ancestors of every token in the source collection. /// /// The type of the objects in source, constrained to . /// An of that contains the source collection. /// An of that contains the ancestors of every token in the source collection. public static IJEnumerable Ancestors(this IEnumerable source) where T : JToken { ValidationUtils.ArgumentNotNull(source, "source"); return source.SelectMany(j => j.Ancestors()).AsJEnumerable(); } /// /// Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. /// /// The type of the objects in source, constrained to . /// An of that contains the source collection. /// An of that contains every token in the source collection, the ancestors of every token in the source collection. public static IJEnumerable AncestorsAndSelf(this IEnumerable source) where T : JToken { ValidationUtils.ArgumentNotNull(source, "source"); return source.SelectMany(j => j.AncestorsAndSelf()).AsJEnumerable(); } /// /// Returns a collection of tokens that contains the descendants of every token in the source collection. /// /// The type of the objects in source, constrained to . /// An of that contains the source collection. /// An of that contains the descendants of every token in the source collection. public static IJEnumerable Descendants(this IEnumerable source) where T : JContainer { ValidationUtils.ArgumentNotNull(source, "source"); return source.SelectMany(j => j.Descendants()).AsJEnumerable(); } /// /// Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. /// /// The type of the objects in source, constrained to . /// An of that contains the source collection. /// An of that contains every token in the source collection, and the descendants of every token in the source collection. public static IJEnumerable DescendantsAndSelf(this IEnumerable source) where T : JContainer { ValidationUtils.ArgumentNotNull(source, "source"); return source.SelectMany(j => j.DescendantsAndSelf()).AsJEnumerable(); } /// /// Returns a collection of child properties of every object in the source collection. /// /// An of that contains the source collection. /// An of that contains the properties of every object in the source collection. public static IJEnumerable Properties(this IEnumerable source) { ValidationUtils.ArgumentNotNull(source, "source"); return source.SelectMany(d => d.Properties()).AsJEnumerable(); } /// /// Returns a collection of child values of every object in the source collection with the given key. /// /// An of that contains the source collection. /// The token key. /// An of that contains the values of every token in the source collection with the given key. public static IJEnumerable Values(this IEnumerable source, object key) { return Values(source, key).AsJEnumerable(); } /// /// Returns a collection of child values of every object in the source collection. /// /// An of that contains the source collection. /// An of that contains the values of every token in the source collection. public static IJEnumerable Values(this IEnumerable source) { return source.Values(null); } /// /// Returns a collection of converted child values of every object in the source collection with the given key. /// /// The type to convert the values to. /// An of that contains the source collection. /// The token key. /// An that contains the converted values of every token in the source collection with the given key. public static IEnumerable Values(this IEnumerable source, object key) { return Values(source, key); } /// /// Returns a collection of converted child values of every object in the source collection. /// /// The type to convert the values to. /// An of that contains the source collection. /// An that contains the converted values of every token in the source collection. public static IEnumerable Values(this IEnumerable source) { return Values(source, null); } /// /// Converts the value. /// /// The type to convert the value to. /// A cast as a of . /// A converted value. public static U Value(this IEnumerable value) { return value.Value(); } /// /// Converts the value. /// /// The source collection type. /// The type to convert the value to. /// A cast as a of . /// A converted value. public static U Value(this IEnumerable value) where T : JToken { ValidationUtils.ArgumentNotNull(value, "source"); JToken token = value as JToken; if (token == null) throw new ArgumentException("Source value must be a JToken."); return token.Convert(); } internal static IEnumerable Values(this IEnumerable source, object key) where T : JToken { ValidationUtils.ArgumentNotNull(source, "source"); foreach (JToken token in source) { if (key == null) { if (token is JValue) { yield return Convert((JValue)token); } else { foreach (JToken t in token.Children()) { yield return t.Convert(); } } } else { JToken value = token[key]; if (value != null) yield return value.Convert(); } } yield break; } //TODO //public static IEnumerable InDocumentOrder(this IEnumerable source) where T : JObject; /// /// Returns a collection of child tokens of every array in the source collection. /// /// The source collection type. /// An of that contains the source collection. /// An of that contains the values of every token in the source collection. public static IJEnumerable Children(this IEnumerable source) where T : JToken { return Children(source).AsJEnumerable(); } /// /// Returns a collection of converted child tokens of every array in the source collection. /// /// An of that contains the source collection. /// The type to convert the values to. /// The source collection type. /// An that contains the converted values of every token in the source collection. public static IEnumerable Children(this IEnumerable source) where T : JToken { ValidationUtils.ArgumentNotNull(source, "source"); return source.SelectMany(c => c.Children()).Convert(); } internal static IEnumerable Convert(this IEnumerable source) where T : JToken { ValidationUtils.ArgumentNotNull(source, "source"); foreach (T token in source) { yield return Convert(token); } } internal static U Convert(this T token) where T : JToken { if (token == null) return default(U); if (token is U // don't want to cast JValue to its interfaces, want to get the internal value && typeof(U) != typeof(IComparable) && typeof(U) != typeof(IFormattable)) { // HACK return (U)(object)token; } else { JValue value = token as JValue; if (value == null) throw new InvalidCastException("Cannot cast {0} to {1}.".FormatWith(CultureInfo.InvariantCulture, token.GetType(), typeof(T))); if (value.Value is U) return (U)value.Value; Type targetType = typeof(U); if (ReflectionUtils.IsNullableType(targetType)) { if (value.Value == null) return default(U); targetType = Nullable.GetUnderlyingType(targetType); } return (U)System.Convert.ChangeType(value.Value, targetType, CultureInfo.InvariantCulture); } } //TODO //public static void Remove(this IEnumerable source) where T : JContainer; /// /// Returns the input typed as . /// /// An of that contains the source collection. /// The input typed as . public static IJEnumerable AsJEnumerable(this IEnumerable source) { return source.AsJEnumerable(); } /// /// Returns the input typed as . /// /// The source collection type. /// An of that contains the source collection. /// The input typed as . public static IJEnumerable AsJEnumerable(this IEnumerable source) where T : JToken { if (source == null) return null; else if (source is IJEnumerable) return (IJEnumerable)source; else return new JEnumerable(source); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JObject.cs0000664000175000017500000007644312454416117024026 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Collections.ObjectModel; #if !PORTABLE40 using System.Collections.Specialized; #endif using System.ComponentModel; #if !(NET35 || NET20 || PORTABLE40) using System.Dynamic; using System.Linq.Expressions; #endif using System.IO; using Newtonsoft.Json.Utilities; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Linq { /// /// Represents a JSON object. /// /// /// /// public class JObject : JContainer, IDictionary, INotifyPropertyChanged #if !(NETFX_CORE || PORTABLE40 || PORTABLE) , ICustomTypeDescriptor #endif #if !(NET20 || NETFX_CORE || PORTABLE40 || PORTABLE) , INotifyPropertyChanging #endif { private readonly JPropertyKeyedCollection _properties = new JPropertyKeyedCollection(); /// /// Gets the container's children tokens. /// /// The container's children tokens. protected override IList ChildrenTokens { get { return _properties; } } /// /// Occurs when a property value changes. /// public event PropertyChangedEventHandler PropertyChanged; #if !(NET20 || NETFX_CORE || PORTABLE || PORTABLE40) /// /// Occurs when a property value is changing. /// public event PropertyChangingEventHandler PropertyChanging; #endif /// /// Initializes a new instance of the class. /// public JObject() { } /// /// Initializes a new instance of the class from another object. /// /// A object to copy from. public JObject(JObject other) : base(other) { } /// /// Initializes a new instance of the class with the specified content. /// /// The contents of the object. public JObject(params object[] content) : this((object)content) { } /// /// Initializes a new instance of the class with the specified content. /// /// The contents of the object. public JObject(object content) { Add(content); } internal override bool DeepEquals(JToken node) { JObject t = node as JObject; if (t == null) return false; return _properties.Compare(t._properties); } internal override void InsertItem(int index, JToken item, bool skipParentCheck) { // don't add comments to JObject, no name to reference comment by if (item != null && item.Type == JTokenType.Comment) return; base.InsertItem(index, item, skipParentCheck); } internal override void ValidateToken(JToken o, JToken existing) { ValidationUtils.ArgumentNotNull(o, "o"); if (o.Type != JTokenType.Property) throw new ArgumentException("Can not add {0} to {1}.".FormatWith(CultureInfo.InvariantCulture, o.GetType(), GetType())); JProperty newProperty = (JProperty)o; if (existing != null) { JProperty existingProperty = (JProperty)existing; if (newProperty.Name == existingProperty.Name) return; } if (_properties.TryGetValue(newProperty.Name, out existing)) throw new ArgumentException("Can not add property {0} to {1}. Property with the same name already exists on object.".FormatWith(CultureInfo.InvariantCulture, newProperty.Name, GetType())); } internal override void MergeItem(object content, JsonMergeSettings settings) { JObject o = content as JObject; if (o == null) return; foreach (KeyValuePair contentItem in o) { JProperty existingProperty = Property(contentItem.Key); if (existingProperty == null) { Add(contentItem.Key, contentItem.Value); } else if (contentItem.Value != null) { JContainer existingContainer = existingProperty.Value as JContainer; if (existingContainer == null) { if (contentItem.Value.Type != JTokenType.Null) existingProperty.Value = contentItem.Value; } else if (existingContainer.Type != contentItem.Value.Type) { existingProperty.Value = contentItem.Value; } else { existingContainer.Merge(contentItem.Value, settings); } } } } internal void InternalPropertyChanged(JProperty childProperty) { OnPropertyChanged(childProperty.Name); #if !(NETFX_CORE || PORTABLE40 || PORTABLE) if (_listChanged != null) OnListChanged(new ListChangedEventArgs(ListChangedType.ItemChanged, IndexOfItem(childProperty))); #endif #if !(NET20 || NET35 || PORTABLE40) if (_collectionChanged != null) OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Replace, childProperty, childProperty, IndexOfItem(childProperty))); #endif } internal void InternalPropertyChanging(JProperty childProperty) { #if !(NET20 || NETFX_CORE || PORTABLE40 || PORTABLE) OnPropertyChanging(childProperty.Name); #endif } internal override JToken CloneToken() { return new JObject(this); } /// /// Gets the node type for this . /// /// The type. public override JTokenType Type { get { return JTokenType.Object; } } /// /// Gets an of this object's properties. /// /// An of this object's properties. public IEnumerable Properties() { return _properties.Cast(); } /// /// Gets a the specified name. /// /// The property name. /// A with the specified name or null. public JProperty Property(string name) { if (name == null) return null; JToken property; _properties.TryGetValue(name, out property); return (JProperty)property; } /// /// Gets an of this object's property values. /// /// An of this object's property values. public JEnumerable PropertyValues() { return new JEnumerable(Properties().Select(p => p.Value)); } /// /// Gets the with the specified key. /// /// The with the specified key. public override JToken this[object key] { get { ValidationUtils.ArgumentNotNull(key, "o"); string propertyName = key as string; if (propertyName == null) throw new ArgumentException("Accessed JObject values with invalid key value: {0}. Object property name expected.".FormatWith(CultureInfo.InvariantCulture, MiscellaneousUtils.ToString(key))); return this[propertyName]; } set { ValidationUtils.ArgumentNotNull(key, "o"); string propertyName = key as string; if (propertyName == null) throw new ArgumentException("Set JObject values with invalid key value: {0}. Object property name expected.".FormatWith(CultureInfo.InvariantCulture, MiscellaneousUtils.ToString(key))); this[propertyName] = value; } } /// /// Gets or sets the with the specified property name. /// /// public JToken this[string propertyName] { get { ValidationUtils.ArgumentNotNull(propertyName, "propertyName"); JProperty property = Property(propertyName); return (property != null) ? property.Value : null; } set { JProperty property = Property(propertyName); if (property != null) { property.Value = value; } else { #if !(NET20 || NETFX_CORE || PORTABLE40 || PORTABLE) OnPropertyChanging(propertyName); #endif Add(new JProperty(propertyName, value)); OnPropertyChanged(propertyName); } } } /// /// Loads an from a . /// /// A that will be read for the content of the . /// A that contains the JSON that was read from the specified . public new static JObject Load(JsonReader reader) { ValidationUtils.ArgumentNotNull(reader, "reader"); if (reader.TokenType == JsonToken.None) { if (!reader.Read()) throw JsonReaderException.Create(reader, "Error reading JObject from JsonReader."); } while (reader.TokenType == JsonToken.Comment) { reader.Read(); } if (reader.TokenType != JsonToken.StartObject) { throw JsonReaderException.Create(reader, "Error reading JObject from JsonReader. Current JsonReader item is not an object: {0}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); } JObject o = new JObject(); o.SetLineInfo(reader as IJsonLineInfo); o.ReadTokenFrom(reader); return o; } /// /// Load a from a string that contains JSON. /// /// A that contains JSON. /// A populated from the string that contains JSON. /// /// /// public new static JObject Parse(string json) { using (JsonReader reader = new JsonTextReader(new StringReader(json))) { JObject o = Load(reader); if (reader.Read() && reader.TokenType != JsonToken.Comment) throw JsonReaderException.Create(reader, "Additional text found in JSON string after parsing content."); return o; } } /// /// Creates a from an object. /// /// The object that will be used to create . /// A with the values of the specified object public new static JObject FromObject(object o) { return FromObject(o, JsonSerializer.CreateDefault()); } /// /// Creates a from an object. /// /// The object that will be used to create . /// The that will be used to read the object. /// A with the values of the specified object public new static JObject FromObject(object o, JsonSerializer jsonSerializer) { JToken token = FromObjectInternal(o, jsonSerializer); if (token != null && token.Type != JTokenType.Object) throw new ArgumentException("Object serialized to {0}. JObject instance expected.".FormatWith(CultureInfo.InvariantCulture, token.Type)); return (JObject)token; } /// /// Writes this token to a . /// /// A into which this method will write. /// A collection of which will be used when writing the token. public override void WriteTo(JsonWriter writer, params JsonConverter[] converters) { writer.WriteStartObject(); for (int i = 0; i < _properties.Count; i++) { _properties[i].WriteTo(writer, converters); } writer.WriteEndObject(); } /// /// Gets the with the specified property name. /// /// Name of the property. /// The with the specified property name. public JToken GetValue(string propertyName) { return GetValue(propertyName, StringComparison.Ordinal); } /// /// Gets the with the specified property name. /// The exact property name will be searched for first and if no matching property is found then /// the will be used to match a property. /// /// Name of the property. /// One of the enumeration values that specifies how the strings will be compared. /// The with the specified property name. public JToken GetValue(string propertyName, StringComparison comparison) { if (propertyName == null) return null; // attempt to get value via dictionary first for performance JProperty property = Property(propertyName); if (property != null) return property.Value; // test above already uses this comparison so no need to repeat if (comparison != StringComparison.Ordinal) { foreach (JProperty p in _properties) { if (string.Equals(p.Name, propertyName, comparison)) return p.Value; } } return null; } /// /// Tries to get the with the specified property name. /// The exact property name will be searched for first and if no matching property is found then /// the will be used to match a property. /// /// Name of the property. /// The value. /// One of the enumeration values that specifies how the strings will be compared. /// true if a value was successfully retrieved; otherwise, false. public bool TryGetValue(string propertyName, StringComparison comparison, out JToken value) { value = GetValue(propertyName, comparison); return (value != null); } #region IDictionary Members /// /// Adds the specified property name. /// /// Name of the property. /// The value. public void Add(string propertyName, JToken value) { Add(new JProperty(propertyName, value)); } bool IDictionary.ContainsKey(string key) { return _properties.Contains(key); } ICollection IDictionary.Keys { // todo: make order the collection returned match JObject order get { return _properties.Keys; } } /// /// Removes the property with the specified name. /// /// Name of the property. /// true if item was successfully removed; otherwise, false. public bool Remove(string propertyName) { JProperty property = Property(propertyName); if (property == null) return false; property.Remove(); return true; } /// /// Tries the get value. /// /// Name of the property. /// The value. /// true if a value was successfully retrieved; otherwise, false. public bool TryGetValue(string propertyName, out JToken value) { JProperty property = Property(propertyName); if (property == null) { value = null; return false; } value = property.Value; return true; } ICollection IDictionary.Values { get { // todo: need to wrap _properties.Values with a collection to get the JProperty value throw new NotImplementedException(); } } #endregion #region ICollection> Members void ICollection>.Add(KeyValuePair item) { Add(new JProperty(item.Key, item.Value)); } void ICollection>.Clear() { RemoveAll(); } bool ICollection>.Contains(KeyValuePair item) { JProperty property = Property(item.Key); if (property == null) return false; return (property.Value == item.Value); } void ICollection>.CopyTo(KeyValuePair[] array, int arrayIndex) { if (array == null) throw new ArgumentNullException("array"); if (arrayIndex < 0) throw new ArgumentOutOfRangeException("arrayIndex", "arrayIndex is less than 0."); if (arrayIndex >= array.Length && arrayIndex != 0) throw new ArgumentException("arrayIndex is equal to or greater than the length of array."); if (Count > array.Length - arrayIndex) throw new ArgumentException("The number of elements in the source JObject is greater than the available space from arrayIndex to the end of the destination array."); int index = 0; foreach (JProperty property in _properties) { array[arrayIndex + index] = new KeyValuePair(property.Name, property.Value); index++; } } bool ICollection>.IsReadOnly { get { return false; } } bool ICollection>.Remove(KeyValuePair item) { if (!((ICollection>)this).Contains(item)) return false; ((IDictionary)this).Remove(item.Key); return true; } #endregion internal override int GetDeepHashCode() { return ContentsHashCode(); } /// /// Returns an enumerator that iterates through the collection. /// /// /// A that can be used to iterate through the collection. /// public IEnumerator> GetEnumerator() { foreach (JProperty property in _properties) { yield return new KeyValuePair(property.Name, property.Value); } } /// /// Raises the event with the provided arguments. /// /// Name of the property. protected virtual void OnPropertyChanged(string propertyName) { if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } #if !(NETFX_CORE || PORTABLE40 || PORTABLE || NET20) /// /// Raises the event with the provided arguments. /// /// Name of the property. protected virtual void OnPropertyChanging(string propertyName) { if (PropertyChanging != null) PropertyChanging(this, new PropertyChangingEventArgs(propertyName)); } #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) // include custom type descriptor on JObject rather than use a provider because the properties are specific to a type #region ICustomTypeDescriptor /// /// Returns the properties for this instance of a component. /// /// /// A that represents the properties for this component instance. /// PropertyDescriptorCollection ICustomTypeDescriptor.GetProperties() { return ((ICustomTypeDescriptor)this).GetProperties(null); } /// /// Returns the properties for this instance of a component using the attribute array as a filter. /// /// An array of type that is used as a filter. /// /// A that represents the filtered properties for this component instance. /// PropertyDescriptorCollection ICustomTypeDescriptor.GetProperties(Attribute[] attributes) { PropertyDescriptorCollection descriptors = new PropertyDescriptorCollection(null); foreach (KeyValuePair propertyValue in this) { descriptors.Add(new JPropertyDescriptor(propertyValue.Key)); } return descriptors; } /// /// Returns a collection of custom attributes for this instance of a component. /// /// /// An containing the attributes for this object. /// AttributeCollection ICustomTypeDescriptor.GetAttributes() { return AttributeCollection.Empty; } /// /// Returns the class name of this instance of a component. /// /// /// The class name of the object, or null if the class does not have a name. /// string ICustomTypeDescriptor.GetClassName() { return null; } /// /// Returns the name of this instance of a component. /// /// /// The name of the object, or null if the object does not have a name. /// string ICustomTypeDescriptor.GetComponentName() { return null; } /// /// Returns a type converter for this instance of a component. /// /// /// A that is the converter for this object, or null if there is no for this object. /// TypeConverter ICustomTypeDescriptor.GetConverter() { return new TypeConverter(); } /// /// Returns the default event for this instance of a component. /// /// /// An that represents the default event for this object, or null if this object does not have events. /// EventDescriptor ICustomTypeDescriptor.GetDefaultEvent() { return null; } /// /// Returns the default property for this instance of a component. /// /// /// A that represents the default property for this object, or null if this object does not have properties. /// PropertyDescriptor ICustomTypeDescriptor.GetDefaultProperty() { return null; } /// /// Returns an editor of the specified type for this instance of a component. /// /// A that represents the editor for this object. /// /// An of the specified type that is the editor for this object, or null if the editor cannot be found. /// object ICustomTypeDescriptor.GetEditor(Type editorBaseType) { return null; } /// /// Returns the events for this instance of a component using the specified attribute array as a filter. /// /// An array of type that is used as a filter. /// /// An that represents the filtered events for this component instance. /// EventDescriptorCollection ICustomTypeDescriptor.GetEvents(Attribute[] attributes) { return EventDescriptorCollection.Empty; } /// /// Returns the events for this instance of a component. /// /// /// An that represents the events for this component instance. /// EventDescriptorCollection ICustomTypeDescriptor.GetEvents() { return EventDescriptorCollection.Empty; } /// /// Returns an object that contains the property described by the specified property descriptor. /// /// A that represents the property whose owner is to be found. /// /// An that represents the owner of the specified property. /// object ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor pd) { return null; } #endregion #endif #if !(NET35 || NET20 || PORTABLE40) /// /// Returns the responsible for binding operations performed on this object. /// /// The expression tree representation of the runtime value. /// /// The to bind this object. /// protected override DynamicMetaObject GetMetaObject(Expression parameter) { return new DynamicProxyMetaObject(parameter, this, new JObjectDynamicProxy(), true); } private class JObjectDynamicProxy : DynamicProxy { public override bool TryGetMember(JObject instance, GetMemberBinder binder, out object result) { // result can be null result = instance[binder.Name]; return true; } public override bool TrySetMember(JObject instance, SetMemberBinder binder, object value) { JToken v = value as JToken; // this can throw an error if value isn't a valid for a JValue if (v == null) v = new JValue(value); instance[binder.Name] = v; return true; } public override IEnumerable GetDynamicMemberNames(JObject instance) { return instance.Properties().Select(p => p.Name); } } #endif } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/MergeArrayHandling.cs0000664000175000017500000000100612454416117026170 0ustar directhexdirecthexnamespace Newtonsoft.Json.Linq { /// /// Specifies how JSON arrays are merged together. /// public enum MergeArrayHandling { /// Concatenate arrays. Concat = 0, /// Union arrays, skipping items that already exist. Union = 1, /// Replace all array items. Replace = 2, /// Merge array items together, matched by index. Merge = 3 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JTokenEqualityComparer.cs0000664000175000017500000000475212454416117027101 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Linq { /// /// Compares tokens to determine whether they are equal. /// public class JTokenEqualityComparer : IEqualityComparer { /// /// Determines whether the specified objects are equal. /// /// The first object of type to compare. /// The second object of type to compare. /// /// true if the specified objects are equal; otherwise, false. /// public bool Equals(JToken x, JToken y) { return JToken.DeepEquals(x, y); } /// /// Returns a hash code for the specified object. /// /// The for which a hash code is to be returned. /// A hash code for the specified object. /// The type of is a reference type and is null. public int GetHashCode(JToken obj) { if (obj == null) return 0; return obj.GetDeepHashCode(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JProperty.cs0000664000175000017500000002555012454416117024435 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using Newtonsoft.Json.Utilities; using System.Diagnostics; using System.Globalization; namespace Newtonsoft.Json.Linq { /// /// Represents a JSON property. /// public class JProperty : JContainer { #region JPropertyList private class JPropertyList : IList { internal JToken _token; public IEnumerator GetEnumerator() { if (_token != null) yield return _token; } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } public void Add(JToken item) { _token = item; } public void Clear() { _token = null; } public bool Contains(JToken item) { return (_token == item); } public void CopyTo(JToken[] array, int arrayIndex) { if (_token != null) array[arrayIndex] = _token; } public bool Remove(JToken item) { if (_token == item) { _token = null; return true; } return false; } public int Count { get { return (_token != null) ? 1 : 0; } } public bool IsReadOnly { get { return false; } } public int IndexOf(JToken item) { return (_token == item) ? 0 : -1; } public void Insert(int index, JToken item) { if (index == 0) _token = item; } public void RemoveAt(int index) { if (index == 0) _token = null; } public JToken this[int index] { get { return (index == 0) ? _token : null; } set { if (index == 0) _token = value; } } } #endregion private readonly JPropertyList _content = new JPropertyList(); private readonly string _name; /// /// Gets the container's children tokens. /// /// The container's children tokens. protected override IList ChildrenTokens { get { return _content; } } /// /// Gets the property name. /// /// The property name. public string Name { [DebuggerStepThrough] get { return _name; } } /// /// Gets or sets the property value. /// /// The property value. public JToken Value { [DebuggerStepThrough] get { return _content._token; } set { CheckReentrancy(); JToken newValue = value ?? JValue.CreateNull(); if (_content._token == null) { InsertItem(0, newValue, false); } else { SetItem(0, newValue); } } } /// /// Initializes a new instance of the class from another object. /// /// A object to copy from. public JProperty(JProperty other) : base(other) { _name = other.Name; } internal override JToken GetItem(int index) { if (index != 0) throw new ArgumentOutOfRangeException(); return Value; } internal override void SetItem(int index, JToken item) { if (index != 0) throw new ArgumentOutOfRangeException(); if (IsTokenUnchanged(Value, item)) return; if (Parent != null) ((JObject)Parent).InternalPropertyChanging(this); base.SetItem(0, item); if (Parent != null) ((JObject)Parent).InternalPropertyChanged(this); } internal override bool RemoveItem(JToken item) { throw new JsonException("Cannot add or remove items from {0}.".FormatWith(CultureInfo.InvariantCulture, typeof(JProperty))); } internal override void RemoveItemAt(int index) { throw new JsonException("Cannot add or remove items from {0}.".FormatWith(CultureInfo.InvariantCulture, typeof(JProperty))); } internal override void InsertItem(int index, JToken item, bool skipParentCheck) { // don't add comments to JProperty if (item != null && item.Type == JTokenType.Comment) return; if (Value != null) throw new JsonException("{0} cannot have multiple values.".FormatWith(CultureInfo.InvariantCulture, typeof(JProperty))); base.InsertItem(0, item, false); } internal override bool ContainsItem(JToken item) { return (Value == item); } internal override void MergeItem(object content, JsonMergeSettings settings) { JProperty p = content as JProperty; if (p == null) return; if (p.Value != null && p.Value.Type != JTokenType.Null) Value = p.Value; } internal override void ClearItems() { throw new JsonException("Cannot add or remove items from {0}.".FormatWith(CultureInfo.InvariantCulture, typeof(JProperty))); } internal override bool DeepEquals(JToken node) { JProperty t = node as JProperty; return (t != null && _name == t.Name && ContentsEqual(t)); } internal override JToken CloneToken() { return new JProperty(this); } /// /// Gets the node type for this . /// /// The type. public override JTokenType Type { [DebuggerStepThrough] get { return JTokenType.Property; } } internal JProperty(string name) { // called from JTokenWriter ValidationUtils.ArgumentNotNull(name, "name"); _name = name; } /// /// Initializes a new instance of the class. /// /// The property name. /// The property content. public JProperty(string name, params object[] content) : this(name, (object)content) { } /// /// Initializes a new instance of the class. /// /// The property name. /// The property content. public JProperty(string name, object content) { ValidationUtils.ArgumentNotNull(name, "name"); _name = name; Value = IsMultiContent(content) ? new JArray(content) : CreateFromContent(content); } /// /// Writes this token to a . /// /// A into which this method will write. /// A collection of which will be used when writing the token. public override void WriteTo(JsonWriter writer, params JsonConverter[] converters) { writer.WritePropertyName(_name); JToken value = Value; if (value != null) value.WriteTo(writer, converters); else writer.WriteNull(); } internal override int GetDeepHashCode() { return _name.GetHashCode() ^ ((Value != null) ? Value.GetDeepHashCode() : 0); } /// /// Loads an from a . /// /// A that will be read for the content of the . /// A that contains the JSON that was read from the specified . public new static JProperty Load(JsonReader reader) { if (reader.TokenType == JsonToken.None) { if (!reader.Read()) throw JsonReaderException.Create(reader, "Error reading JProperty from JsonReader."); } while (reader.TokenType == JsonToken.Comment) { reader.Read(); } if (reader.TokenType != JsonToken.PropertyName) throw JsonReaderException.Create(reader, "Error reading JProperty from JsonReader. Current JsonReader item is not a property: {0}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); JProperty p = new JProperty((string)reader.Value); p.SetLineInfo(reader as IJsonLineInfo); p.ReadTokenFrom(reader); return p; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JValue.cs0000664000175000017500000011432412454416117023663 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Utilities; using System.Globalization; #if !(NET35 || NET20 || PORTABLE40) using System.Dynamic; using System.Linq.Expressions; #endif #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) using System.Numerics; #endif namespace Newtonsoft.Json.Linq { /// /// Represents a value in JSON (string, integer, date, etc). /// public class JValue : JToken, IEquatable, IFormattable, IComparable, IComparable #if !(NETFX_CORE || PORTABLE) , IConvertible #endif { private JTokenType _valueType; private object _value; internal JValue(object value, JTokenType type) { _value = value; _valueType = type; } /// /// Initializes a new instance of the class from another object. /// /// A object to copy from. public JValue(JValue other) : this(other.Value, other.Type) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(long value) : this(value, JTokenType.Integer) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(decimal value) : this(value, JTokenType.Float) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(char value) : this(value, JTokenType.String) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. [CLSCompliant(false)] public JValue(ulong value) : this(value, JTokenType.Integer) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(double value) : this(value, JTokenType.Float) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(float value) : this(value, JTokenType.Float) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(DateTime value) : this(value, JTokenType.Date) { } #if !NET20 /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(DateTimeOffset value) : this(value, JTokenType.Date) { } #endif /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(bool value) : this(value, JTokenType.Boolean) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(string value) : this(value, JTokenType.String) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(Guid value) : this(value, JTokenType.Guid) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(Uri value) : this(value, (value != null) ? JTokenType.Uri : JTokenType.Null) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(TimeSpan value) : this(value, JTokenType.TimeSpan) { } /// /// Initializes a new instance of the class with the given value. /// /// The value. public JValue(object value) : this(value, GetValueType(null, value)) { } internal override bool DeepEquals(JToken node) { JValue other = node as JValue; if (other == null) return false; if (other == this) return true; return ValuesEquals(this, other); } /// /// Gets a value indicating whether this token has child tokens. /// /// /// true if this token has child values; otherwise, false. /// public override bool HasValues { get { return false; } } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) private static int CompareBigInteger(BigInteger i1, object i2) { int result = i1.CompareTo(ConvertUtils.ToBigInteger(i2)); if (result != 0) return result; // converting a fractional number to a BigInteger will lose the fraction // check for fraction if result is two numbers are equal if (i2 is decimal) { decimal d = (decimal)i2; return (0m).CompareTo(Math.Abs(d - Math.Truncate(d))); } else if (i2 is double || i2 is float) { double d = Convert.ToDouble(i2, CultureInfo.InvariantCulture); return (0d).CompareTo(Math.Abs(d - Math.Truncate(d))); } return result; } #endif internal static int Compare(JTokenType valueType, object objA, object objB) { if (objA == null && objB == null) return 0; if (objA != null && objB == null) return 1; if (objA == null && objB != null) return -1; switch (valueType) { case JTokenType.Integer: #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (objA is BigInteger) return CompareBigInteger((BigInteger)objA, objB); if (objB is BigInteger) return -CompareBigInteger((BigInteger)objB, objA); #endif if (objA is ulong || objB is ulong || objA is decimal || objB is decimal) return Convert.ToDecimal(objA, CultureInfo.InvariantCulture).CompareTo(Convert.ToDecimal(objB, CultureInfo.InvariantCulture)); else if (objA is float || objB is float || objA is double || objB is double) return CompareFloat(objA, objB); else return Convert.ToInt64(objA, CultureInfo.InvariantCulture).CompareTo(Convert.ToInt64(objB, CultureInfo.InvariantCulture)); case JTokenType.Float: #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (objA is BigInteger) return CompareBigInteger((BigInteger)objA, objB); if (objB is BigInteger) return -CompareBigInteger((BigInteger)objB, objA); #endif return CompareFloat(objA, objB); case JTokenType.Comment: case JTokenType.String: case JTokenType.Raw: string s1 = Convert.ToString(objA, CultureInfo.InvariantCulture); string s2 = Convert.ToString(objB, CultureInfo.InvariantCulture); return string.CompareOrdinal(s1, s2); case JTokenType.Boolean: bool b1 = Convert.ToBoolean(objA, CultureInfo.InvariantCulture); bool b2 = Convert.ToBoolean(objB, CultureInfo.InvariantCulture); return b1.CompareTo(b2); case JTokenType.Date: #if !NET20 if (objA is DateTime) { #endif DateTime date1 = (DateTime)objA; DateTime date2; #if !NET20 if (objB is DateTimeOffset) date2 = ((DateTimeOffset)objB).DateTime; else #endif date2 = Convert.ToDateTime(objB, CultureInfo.InvariantCulture); return date1.CompareTo(date2); #if !NET20 } else { DateTimeOffset date1 = (DateTimeOffset)objA; DateTimeOffset date2; if (objB is DateTimeOffset) date2 = (DateTimeOffset)objB; else date2 = new DateTimeOffset(Convert.ToDateTime(objB, CultureInfo.InvariantCulture)); return date1.CompareTo(date2); } #endif case JTokenType.Bytes: if (!(objB is byte[])) throw new ArgumentException("Object must be of type byte[]."); byte[] bytes1 = objA as byte[]; byte[] bytes2 = objB as byte[]; if (bytes1 == null) return -1; if (bytes2 == null) return 1; return MiscellaneousUtils.ByteArrayCompare(bytes1, bytes2); case JTokenType.Guid: if (!(objB is Guid)) throw new ArgumentException("Object must be of type Guid."); Guid guid1 = (Guid)objA; Guid guid2 = (Guid)objB; return guid1.CompareTo(guid2); case JTokenType.Uri: if (!(objB is Uri)) throw new ArgumentException("Object must be of type Uri."); Uri uri1 = (Uri)objA; Uri uri2 = (Uri)objB; return Comparer.Default.Compare(uri1.ToString(), uri2.ToString()); case JTokenType.TimeSpan: if (!(objB is TimeSpan)) throw new ArgumentException("Object must be of type TimeSpan."); TimeSpan ts1 = (TimeSpan)objA; TimeSpan ts2 = (TimeSpan)objB; return ts1.CompareTo(ts2); default: throw MiscellaneousUtils.CreateArgumentOutOfRangeException("valueType", valueType, "Unexpected value type: {0}".FormatWith(CultureInfo.InvariantCulture, valueType)); } } private static int CompareFloat(object objA, object objB) { double d1 = Convert.ToDouble(objA, CultureInfo.InvariantCulture); double d2 = Convert.ToDouble(objB, CultureInfo.InvariantCulture); // take into account possible floating point errors if (MathUtils.ApproxEquals(d1, d2)) return 0; return d1.CompareTo(d2); } #if !(NET35 || NET20 || PORTABLE40) private static bool Operation(ExpressionType operation, object objA, object objB, out object result) { if (objA is string || objB is string) { if (operation == ExpressionType.Add || operation == ExpressionType.AddAssign) { result = ((objA != null) ? objA.ToString() : null) + ((objB != null) ? objB.ToString() : null); return true; } } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (objA is BigInteger || objB is BigInteger) { if (objA == null || objB == null) { result = null; return true; } // not that this will lose the fraction // BigInteger doesn't have operators with non-integer types BigInteger i1 = ConvertUtils.ToBigInteger(objA); BigInteger i2 = ConvertUtils.ToBigInteger(objB); switch (operation) { case ExpressionType.Add: case ExpressionType.AddAssign: result = i1 + i2; return true; case ExpressionType.Subtract: case ExpressionType.SubtractAssign: result = i1 - i2; return true; case ExpressionType.Multiply: case ExpressionType.MultiplyAssign: result = i1 * i2; return true; case ExpressionType.Divide: case ExpressionType.DivideAssign: result = i1 / i2; return true; } } else #endif if (objA is ulong || objB is ulong || objA is decimal || objB is decimal) { if (objA == null || objB == null) { result = null; return true; } decimal d1 = Convert.ToDecimal(objA, CultureInfo.InvariantCulture); decimal d2 = Convert.ToDecimal(objB, CultureInfo.InvariantCulture); switch (operation) { case ExpressionType.Add: case ExpressionType.AddAssign: result = d1 + d2; return true; case ExpressionType.Subtract: case ExpressionType.SubtractAssign: result = d1 - d2; return true; case ExpressionType.Multiply: case ExpressionType.MultiplyAssign: result = d1 * d2; return true; case ExpressionType.Divide: case ExpressionType.DivideAssign: result = d1 / d2; return true; } } else if (objA is float || objB is float || objA is double || objB is double) { if (objA == null || objB == null) { result = null; return true; } double d1 = Convert.ToDouble(objA, CultureInfo.InvariantCulture); double d2 = Convert.ToDouble(objB, CultureInfo.InvariantCulture); switch (operation) { case ExpressionType.Add: case ExpressionType.AddAssign: result = d1 + d2; return true; case ExpressionType.Subtract: case ExpressionType.SubtractAssign: result = d1 - d2; return true; case ExpressionType.Multiply: case ExpressionType.MultiplyAssign: result = d1 * d2; return true; case ExpressionType.Divide: case ExpressionType.DivideAssign: result = d1 / d2; return true; } } else if (objA is int || objA is uint || objA is long || objA is short || objA is ushort || objA is sbyte || objA is byte || objB is int || objB is uint || objB is long || objB is short || objB is ushort || objB is sbyte || objB is byte) { if (objA == null || objB == null) { result = null; return true; } long l1 = Convert.ToInt64(objA, CultureInfo.InvariantCulture); long l2 = Convert.ToInt64(objB, CultureInfo.InvariantCulture); switch (operation) { case ExpressionType.Add: case ExpressionType.AddAssign: result = l1 + l2; return true; case ExpressionType.Subtract: case ExpressionType.SubtractAssign: result = l1 - l2; return true; case ExpressionType.Multiply: case ExpressionType.MultiplyAssign: result = l1 * l2; return true; case ExpressionType.Divide: case ExpressionType.DivideAssign: result = l1 / l2; return true; } } result = null; return false; } #endif internal override JToken CloneToken() { return new JValue(this); } /// /// Creates a comment with the given value. /// /// The value. /// A comment with the given value. public static JValue CreateComment(string value) { return new JValue(value, JTokenType.Comment); } /// /// Creates a string with the given value. /// /// The value. /// A string with the given value. public static JValue CreateString(string value) { return new JValue(value, JTokenType.String); } /// /// Creates a null value. /// /// A null value. public static JValue CreateNull() { return new JValue(null, JTokenType.Null); } /// /// Creates a null value. /// /// A null value. public static JValue CreateUndefined() { return new JValue(null, JTokenType.Undefined); } private static JTokenType GetValueType(JTokenType? current, object value) { if (value == null) return JTokenType.Null; #if !(NETFX_CORE || PORTABLE40 || PORTABLE) else if (value == DBNull.Value) return JTokenType.Null; #endif else if (value is string) return GetStringValueType(current); else if (value is long || value is int || value is short || value is sbyte || value is ulong || value is uint || value is ushort || value is byte) return JTokenType.Integer; else if (value is Enum) return JTokenType.Integer; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) else if (value is BigInteger) return JTokenType.Integer; #endif else if (value is double || value is float || value is decimal) return JTokenType.Float; else if (value is DateTime) return JTokenType.Date; #if !NET20 else if (value is DateTimeOffset) return JTokenType.Date; #endif else if (value is byte[]) return JTokenType.Bytes; else if (value is bool) return JTokenType.Boolean; else if (value is Guid) return JTokenType.Guid; else if (value is Uri) return JTokenType.Uri; else if (value is TimeSpan) return JTokenType.TimeSpan; throw new ArgumentException("Could not determine JSON object type for type {0}.".FormatWith(CultureInfo.InvariantCulture, value.GetType())); } private static JTokenType GetStringValueType(JTokenType? current) { if (current == null) return JTokenType.String; switch (current.Value) { case JTokenType.Comment: case JTokenType.String: case JTokenType.Raw: return current.Value; default: return JTokenType.String; } } /// /// Gets the node type for this . /// /// The type. public override JTokenType Type { get { return _valueType; } } /// /// Gets or sets the underlying token value. /// /// The underlying token value. public object Value { get { return _value; } set { Type currentType = (_value != null) ? _value.GetType() : null; Type newType = (value != null) ? value.GetType() : null; if (currentType != newType) _valueType = GetValueType(_valueType, value); _value = value; } } /// /// Writes this token to a . /// /// A into which this method will write. /// A collection of which will be used when writing the token. public override void WriteTo(JsonWriter writer, params JsonConverter[] converters) { if (converters != null && converters.Length > 0 && _value != null) { JsonConverter matchingConverter = JsonSerializer.GetMatchingConverter(converters, _value.GetType()); if (matchingConverter != null && matchingConverter.CanWrite) { matchingConverter.WriteJson(writer, _value, JsonSerializer.CreateDefault()); return; } } switch (_valueType) { case JTokenType.Comment: writer.WriteComment((_value != null) ? _value.ToString() : null); return; case JTokenType.Raw: writer.WriteRawValue((_value != null) ? _value.ToString() : null); return; case JTokenType.Null: writer.WriteNull(); return; case JTokenType.Undefined: writer.WriteUndefined(); return; case JTokenType.Integer: #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (_value is BigInteger) writer.WriteValue((BigInteger)_value); else #endif writer.WriteValue(Convert.ToInt64(_value, CultureInfo.InvariantCulture)); return; case JTokenType.Float: if (_value is decimal) writer.WriteValue((decimal)_value); else if (_value is double) writer.WriteValue((double)_value); else if (_value is float) writer.WriteValue((float)_value); else writer.WriteValue(Convert.ToDouble(_value, CultureInfo.InvariantCulture)); return; case JTokenType.String: writer.WriteValue((_value != null) ? _value.ToString() : null); return; case JTokenType.Boolean: writer.WriteValue(Convert.ToBoolean(_value, CultureInfo.InvariantCulture)); return; case JTokenType.Date: #if !NET20 if (_value is DateTimeOffset) writer.WriteValue((DateTimeOffset)_value); else #endif writer.WriteValue(Convert.ToDateTime(_value, CultureInfo.InvariantCulture)); return; case JTokenType.Bytes: writer.WriteValue((byte[])_value); return; case JTokenType.Guid: case JTokenType.Uri: case JTokenType.TimeSpan: writer.WriteValue((_value != null) ? _value.ToString() : null); return; } throw MiscellaneousUtils.CreateArgumentOutOfRangeException("TokenType", _valueType, "Unexpected token type."); } internal override int GetDeepHashCode() { int valueHashCode = (_value != null) ? _value.GetHashCode() : 0; // GetHashCode on an enum boxes so cast to int return ((int)_valueType).GetHashCode() ^ valueHashCode; } private static bool ValuesEquals(JValue v1, JValue v2) { return (v1 == v2 || (v1._valueType == v2._valueType && Compare(v1._valueType, v1._value, v2._value) == 0)); } /// /// Indicates whether the current object is equal to another object of the same type. /// /// /// true if the current object is equal to the parameter; otherwise, false. /// /// An object to compare with this object. public bool Equals(JValue other) { if (other == null) return false; return ValuesEquals(this, other); } /// /// Determines whether the specified is equal to the current . /// /// The to compare with the current . /// /// true if the specified is equal to the current ; otherwise, false. /// /// /// The parameter is null. /// public override bool Equals(object obj) { if (obj == null) return false; JValue otherValue = obj as JValue; if (otherValue != null) return Equals(otherValue); return base.Equals(obj); } /// /// Serves as a hash function for a particular type. /// /// /// A hash code for the current . /// public override int GetHashCode() { if (_value == null) return 0; return _value.GetHashCode(); } /// /// Returns a that represents this instance. /// /// /// A that represents this instance. /// public override string ToString() { if (_value == null) return string.Empty; return _value.ToString(); } /// /// Returns a that represents this instance. /// /// The format. /// /// A that represents this instance. /// public string ToString(string format) { return ToString(format, CultureInfo.CurrentCulture); } /// /// Returns a that represents this instance. /// /// The format provider. /// /// A that represents this instance. /// public string ToString(IFormatProvider formatProvider) { return ToString(null, formatProvider); } /// /// Returns a that represents this instance. /// /// The format. /// The format provider. /// /// A that represents this instance. /// public string ToString(string format, IFormatProvider formatProvider) { if (_value == null) return string.Empty; IFormattable formattable = _value as IFormattable; if (formattable != null) return formattable.ToString(format, formatProvider); else return _value.ToString(); } #if !(NET35 || NET20 || PORTABLE40) /// /// Returns the responsible for binding operations performed on this object. /// /// The expression tree representation of the runtime value. /// /// The to bind this object. /// protected override DynamicMetaObject GetMetaObject(Expression parameter) { return new DynamicProxyMetaObject(parameter, this, new JValueDynamicProxy(), true); } private class JValueDynamicProxy : DynamicProxy { public override bool TryConvert(JValue instance, ConvertBinder binder, out object result) { if (binder.Type == typeof(JValue)) { result = instance; return true; } object value = instance.Value; if (value == null) { result = null; return ReflectionUtils.IsNullable(binder.Type); } result = ConvertUtils.Convert(value, CultureInfo.InvariantCulture, binder.Type); return true; } public override bool TryBinaryOperation(JValue instance, BinaryOperationBinder binder, object arg, out object result) { object compareValue = (arg is JValue) ? ((JValue)arg).Value : arg; switch (binder.Operation) { case ExpressionType.Equal: result = (Compare(instance.Type, instance.Value, compareValue) == 0); return true; case ExpressionType.NotEqual: result = (Compare(instance.Type, instance.Value, compareValue) != 0); return true; case ExpressionType.GreaterThan: result = (Compare(instance.Type, instance.Value, compareValue) > 0); return true; case ExpressionType.GreaterThanOrEqual: result = (Compare(instance.Type, instance.Value, compareValue) >= 0); return true; case ExpressionType.LessThan: result = (Compare(instance.Type, instance.Value, compareValue) < 0); return true; case ExpressionType.LessThanOrEqual: result = (Compare(instance.Type, instance.Value, compareValue) <= 0); return true; case ExpressionType.Add: case ExpressionType.AddAssign: case ExpressionType.Subtract: case ExpressionType.SubtractAssign: case ExpressionType.Multiply: case ExpressionType.MultiplyAssign: case ExpressionType.Divide: case ExpressionType.DivideAssign: if (Operation(binder.Operation, instance.Value, compareValue, out result)) { result = new JValue(result); return true; } break; } result = null; return false; } } #endif int IComparable.CompareTo(object obj) { if (obj == null) return 1; object otherValue = (obj is JValue) ? ((JValue)obj).Value : obj; return Compare(_valueType, _value, otherValue); } /// /// Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. /// /// An object to compare with this instance. /// /// A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: /// Value /// Meaning /// Less than zero /// This instance is less than . /// Zero /// This instance is equal to . /// Greater than zero /// This instance is greater than . /// /// /// is not the same type as this instance. /// public int CompareTo(JValue obj) { if (obj == null) return 1; return Compare(_valueType, _value, obj._value); } #if !(NETFX_CORE || PORTABLE) TypeCode IConvertible.GetTypeCode() { if (_value == null) return TypeCode.Empty; #if !NET20 if (_value is DateTimeOffset) return TypeCode.DateTime; #endif #if !(NET20 || NET35 || PORTABLE40) if (_value is BigInteger) return TypeCode.Object; #endif return System.Type.GetTypeCode(_value.GetType()); } bool IConvertible.ToBoolean(IFormatProvider provider) { return (bool)this; } char IConvertible.ToChar(IFormatProvider provider) { return (char)this; } sbyte IConvertible.ToSByte(IFormatProvider provider) { return (sbyte)this; } byte IConvertible.ToByte(IFormatProvider provider) { return (byte)this; } short IConvertible.ToInt16(IFormatProvider provider) { return (short)this; } ushort IConvertible.ToUInt16(IFormatProvider provider) { return (ushort)this; } int IConvertible.ToInt32(IFormatProvider provider) { return (int)this; } uint IConvertible.ToUInt32(IFormatProvider provider) { return (uint)this; } long IConvertible.ToInt64(IFormatProvider provider) { return (long)this; } ulong IConvertible.ToUInt64(IFormatProvider provider) { return (ulong)this; } float IConvertible.ToSingle(IFormatProvider provider) { return (float)this; } double IConvertible.ToDouble(IFormatProvider provider) { return (double)this; } decimal IConvertible.ToDecimal(IFormatProvider provider) { return (decimal)this; } DateTime IConvertible.ToDateTime(IFormatProvider provider) { return (DateTime)this; } object IConvertible.ToType(Type conversionType, IFormatProvider provider) { return ToObject(conversionType); } #endif } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JContainer.cs0000664000175000017500000010703612454416117024533 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if !PORTABLE40 using System.Collections.Specialized; #endif using System.Threading; using Newtonsoft.Json.Utilities; using System.Collections; using System.Globalization; using System.ComponentModel; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Linq { /// /// Represents a token that can contain other tokens. /// public abstract class JContainer : JToken, IList #if !(NETFX_CORE || PORTABLE || PORTABLE40) , ITypedList, IBindingList #elif PORTABLE , INotifyCollectionChanged #endif , IList #if !(NET20 || NET35 || NETFX_CORE || PORTABLE40 || PORTABLE) , INotifyCollectionChanged #endif { #if !(NETFX_CORE || PORTABLE40 || PORTABLE) internal ListChangedEventHandler _listChanged; internal AddingNewEventHandler _addingNew; /// /// Occurs when the list changes or an item in the list changes. /// public event ListChangedEventHandler ListChanged { add { _listChanged += value; } remove { _listChanged -= value; } } /// /// Occurs before an item is added to the collection. /// public event AddingNewEventHandler AddingNew { add { _addingNew += value; } remove { _addingNew -= value; } } #endif #if !(NET20 || NET35 || PORTABLE40) internal NotifyCollectionChangedEventHandler _collectionChanged; /// /// Occurs when the items list of the collection has changed, or the collection is reset. /// public event NotifyCollectionChangedEventHandler CollectionChanged { add { _collectionChanged += value; } remove { _collectionChanged -= value; } } #endif /// /// Gets the container's children tokens. /// /// The container's children tokens. protected abstract IList ChildrenTokens { get; } private object _syncRoot; #if !(PORTABLE40) private bool _busy; #endif internal JContainer() { } internal JContainer(JContainer other) : this() { ValidationUtils.ArgumentNotNull(other, "c"); int i = 0; foreach (JToken child in other) { AddInternal(i, child, false); i++; } } internal void CheckReentrancy() { #if !(PORTABLE40) if (_busy) throw new InvalidOperationException("Cannot change {0} during a collection change event.".FormatWith(CultureInfo.InvariantCulture, GetType())); #endif } internal virtual IList CreateChildrenCollection() { return new List(); } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) /// /// Raises the event. /// /// The instance containing the event data. protected virtual void OnAddingNew(AddingNewEventArgs e) { AddingNewEventHandler handler = _addingNew; if (handler != null) handler(this, e); } /// /// Raises the event. /// /// The instance containing the event data. protected virtual void OnListChanged(ListChangedEventArgs e) { ListChangedEventHandler handler = _listChanged; if (handler != null) { _busy = true; try { handler(this, e); } finally { _busy = false; } } } #endif #if !(NET20 || NET35 || PORTABLE40) /// /// Raises the event. /// /// The instance containing the event data. protected virtual void OnCollectionChanged(NotifyCollectionChangedEventArgs e) { NotifyCollectionChangedEventHandler handler = _collectionChanged; if (handler != null) { _busy = true; try { handler(this, e); } finally { _busy = false; } } } #endif /// /// Gets a value indicating whether this token has child tokens. /// /// /// true if this token has child values; otherwise, false. /// public override bool HasValues { get { return ChildrenTokens.Count > 0; } } internal bool ContentsEqual(JContainer container) { if (container == this) return true; IList t1 = ChildrenTokens; IList t2 = container.ChildrenTokens; if (t1.Count != t2.Count) return false; for (int i = 0; i < t1.Count; i++) { if (!t1[i].DeepEquals(t2[i])) return false; } return true; } /// /// Get the first child token of this token. /// /// /// A containing the first child token of the . /// public override JToken First { get { return ChildrenTokens.FirstOrDefault(); } } /// /// Get the last child token of this token. /// /// /// A containing the last child token of the . /// public override JToken Last { get { return ChildrenTokens.LastOrDefault(); } } /// /// Returns a collection of the child tokens of this token, in document order. /// /// /// An of containing the child tokens of this , in document order. /// public override JEnumerable Children() { return new JEnumerable(ChildrenTokens); } /// /// Returns a collection of the child values of this token, in document order. /// /// The type to convert the values to. /// /// A containing the child values of this , in document order. /// public override IEnumerable Values() { return ChildrenTokens.Convert(); } /// /// Returns a collection of the descendant tokens for this token in document order. /// /// An containing the descendant tokens of the . public IEnumerable Descendants() { return GetDescendants(false); } /// /// Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. /// /// An containing this token, and all the descendant tokens of the . public IEnumerable DescendantsAndSelf() { return GetDescendants(true); } internal IEnumerable GetDescendants(bool self) { if (self) yield return this; foreach (JToken o in ChildrenTokens) { yield return o; JContainer c = o as JContainer; if (c != null) { foreach (JToken d in c.Descendants()) { yield return d; } } } } internal bool IsMultiContent(object content) { return (content is IEnumerable && !(content is string) && !(content is JToken) && !(content is byte[])); } internal JToken EnsureParentToken(JToken item, bool skipParentCheck) { if (item == null) return JValue.CreateNull(); if (skipParentCheck) return item; // to avoid a token having multiple parents or creating a recursive loop, create a copy if... // the item already has a parent // the item is being added to itself // the item is being added to the root parent of itself if (item.Parent != null || item == this || (item.HasValues && Root == item)) item = item.CloneToken(); return item; } private class JTokenReferenceEqualityComparer : IEqualityComparer { public static readonly JTokenReferenceEqualityComparer Instance = new JTokenReferenceEqualityComparer(); public bool Equals(JToken x, JToken y) { return ReferenceEquals(x, y); } public int GetHashCode(JToken obj) { if (obj == null) return 0; return obj.GetHashCode(); } } internal int IndexOfItem(JToken item) { return ChildrenTokens.IndexOf(item, JTokenReferenceEqualityComparer.Instance); } internal virtual void InsertItem(int index, JToken item, bool skipParentCheck) { if (index > ChildrenTokens.Count) throw new ArgumentOutOfRangeException("index", "Index must be within the bounds of the List."); CheckReentrancy(); item = EnsureParentToken(item, skipParentCheck); JToken previous = (index == 0) ? null : ChildrenTokens[index - 1]; // haven't inserted new token yet so next token is still at the inserting index JToken next = (index == ChildrenTokens.Count) ? null : ChildrenTokens[index]; ValidateToken(item, null); item.Parent = this; item.Previous = previous; if (previous != null) previous.Next = item; item.Next = next; if (next != null) next.Previous = item; ChildrenTokens.Insert(index, item); #if !(NETFX_CORE || PORTABLE40 || PORTABLE) if (_listChanged != null) OnListChanged(new ListChangedEventArgs(ListChangedType.ItemAdded, index)); #endif #if !(NET20 || NET35 || PORTABLE40) if (_collectionChanged != null) OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add, item, index)); #endif } internal virtual void RemoveItemAt(int index) { if (index < 0) throw new ArgumentOutOfRangeException("index", "Index is less than 0."); if (index >= ChildrenTokens.Count) throw new ArgumentOutOfRangeException("index", "Index is equal to or greater than Count."); CheckReentrancy(); JToken item = ChildrenTokens[index]; JToken previous = (index == 0) ? null : ChildrenTokens[index - 1]; JToken next = (index == ChildrenTokens.Count - 1) ? null : ChildrenTokens[index + 1]; if (previous != null) previous.Next = next; if (next != null) next.Previous = previous; item.Parent = null; item.Previous = null; item.Next = null; ChildrenTokens.RemoveAt(index); #if !(NETFX_CORE || PORTABLE40 || PORTABLE) if (_listChanged != null) OnListChanged(new ListChangedEventArgs(ListChangedType.ItemDeleted, index)); #endif #if !(NET20 || NET35 || PORTABLE40) if (_collectionChanged != null) OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove, item, index)); #endif } internal virtual bool RemoveItem(JToken item) { int index = IndexOfItem(item); if (index >= 0) { RemoveItemAt(index); return true; } return false; } internal virtual JToken GetItem(int index) { return ChildrenTokens[index]; } internal virtual void SetItem(int index, JToken item) { if (index < 0) throw new ArgumentOutOfRangeException("index", "Index is less than 0."); if (index >= ChildrenTokens.Count) throw new ArgumentOutOfRangeException("index", "Index is equal to or greater than Count."); JToken existing = ChildrenTokens[index]; if (IsTokenUnchanged(existing, item)) return; CheckReentrancy(); item = EnsureParentToken(item, false); ValidateToken(item, existing); JToken previous = (index == 0) ? null : ChildrenTokens[index - 1]; JToken next = (index == ChildrenTokens.Count - 1) ? null : ChildrenTokens[index + 1]; item.Parent = this; item.Previous = previous; if (previous != null) previous.Next = item; item.Next = next; if (next != null) next.Previous = item; ChildrenTokens[index] = item; existing.Parent = null; existing.Previous = null; existing.Next = null; #if !(NETFX_CORE || PORTABLE || PORTABLE40) if (_listChanged != null) OnListChanged(new ListChangedEventArgs(ListChangedType.ItemChanged, index)); #endif #if !(NET20 || NET35 || PORTABLE40) if (_collectionChanged != null) OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Replace, item, existing, index)); #endif } internal virtual void ClearItems() { CheckReentrancy(); foreach (JToken item in ChildrenTokens) { item.Parent = null; item.Previous = null; item.Next = null; } ChildrenTokens.Clear(); #if !(NETFX_CORE || PORTABLE40 || PORTABLE) if (_listChanged != null) OnListChanged(new ListChangedEventArgs(ListChangedType.Reset, -1)); #endif #if !(NET20 || NET35 || PORTABLE40) if (_collectionChanged != null) OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Reset)); #endif } internal virtual void ReplaceItem(JToken existing, JToken replacement) { if (existing == null || existing.Parent != this) return; int index = IndexOfItem(existing); SetItem(index, replacement); } internal virtual bool ContainsItem(JToken item) { return (IndexOfItem(item) != -1); } internal virtual void CopyItemsTo(Array array, int arrayIndex) { if (array == null) throw new ArgumentNullException("array"); if (arrayIndex < 0) throw new ArgumentOutOfRangeException("arrayIndex", "arrayIndex is less than 0."); if (arrayIndex >= array.Length && arrayIndex != 0) throw new ArgumentException("arrayIndex is equal to or greater than the length of array."); if (Count > array.Length - arrayIndex) throw new ArgumentException("The number of elements in the source JObject is greater than the available space from arrayIndex to the end of the destination array."); int index = 0; foreach (JToken token in ChildrenTokens) { array.SetValue(token, arrayIndex + index); index++; } } internal static bool IsTokenUnchanged(JToken currentValue, JToken newValue) { JValue v1 = currentValue as JValue; if (v1 != null) { // null will get turned into a JValue of type null if (v1.Type == JTokenType.Null && newValue == null) return true; return v1.Equals(newValue); } return false; } internal virtual void ValidateToken(JToken o, JToken existing) { ValidationUtils.ArgumentNotNull(o, "o"); if (o.Type == JTokenType.Property) throw new ArgumentException("Can not add {0} to {1}.".FormatWith(CultureInfo.InvariantCulture, o.GetType(), GetType())); } /// /// Adds the specified content as children of this . /// /// The content to be added. public virtual void Add(object content) { AddInternal(ChildrenTokens.Count, content, false); } internal void AddAndSkipParentCheck(JToken token) { AddInternal(ChildrenTokens.Count, token, true); } /// /// Adds the specified content as the first children of this . /// /// The content to be added. public void AddFirst(object content) { AddInternal(0, content, false); } internal void AddInternal(int index, object content, bool skipParentCheck) { if (IsMultiContent(content)) { IEnumerable enumerable = (IEnumerable)content; int multiIndex = index; foreach (object c in enumerable) { AddInternal(multiIndex, c, skipParentCheck); multiIndex++; } } else { JToken item = CreateFromContent(content); InsertItem(index, item, skipParentCheck); } } internal static JToken CreateFromContent(object content) { if (content is JToken) return (JToken)content; return new JValue(content); } /// /// Creates an that can be used to add tokens to the . /// /// An that is ready to have content written to it. public JsonWriter CreateWriter() { return new JTokenWriter(this); } /// /// Replaces the children nodes of this token with the specified content. /// /// The content. public void ReplaceAll(object content) { ClearItems(); Add(content); } /// /// Removes the child nodes from this token. /// public void RemoveAll() { ClearItems(); } internal abstract void MergeItem(object content, JsonMergeSettings settings); /// /// Merge the specified content into this . /// /// The content to be merged. public void Merge(object content) { MergeItem(content, new JsonMergeSettings()); } /// /// Merge the specified content into this using . /// /// The content to be merged. /// The used to merge the content. public void Merge(object content, JsonMergeSettings settings) { MergeItem(content, settings); } internal void ReadTokenFrom(JsonReader reader) { int startDepth = reader.Depth; if (!reader.Read()) throw JsonReaderException.Create(reader, "Error reading {0} from JsonReader.".FormatWith(CultureInfo.InvariantCulture, GetType().Name)); ReadContentFrom(reader); int endDepth = reader.Depth; if (endDepth > startDepth) throw JsonReaderException.Create(reader, "Unexpected end of content while loading {0}.".FormatWith(CultureInfo.InvariantCulture, GetType().Name)); } internal void ReadContentFrom(JsonReader r) { ValidationUtils.ArgumentNotNull(r, "r"); IJsonLineInfo lineInfo = r as IJsonLineInfo; JContainer parent = this; do { if (parent is JProperty && ((JProperty)parent).Value != null) { if (parent == this) return; parent = parent.Parent; } switch (r.TokenType) { case JsonToken.None: // new reader. move to actual content break; case JsonToken.StartArray: JArray a = new JArray(); a.SetLineInfo(lineInfo); parent.Add(a); parent = a; break; case JsonToken.EndArray: if (parent == this) return; parent = parent.Parent; break; case JsonToken.StartObject: JObject o = new JObject(); o.SetLineInfo(lineInfo); parent.Add(o); parent = o; break; case JsonToken.EndObject: if (parent == this) return; parent = parent.Parent; break; case JsonToken.StartConstructor: JConstructor constructor = new JConstructor(r.Value.ToString()); constructor.SetLineInfo(lineInfo); parent.Add(constructor); parent = constructor; break; case JsonToken.EndConstructor: if (parent == this) return; parent = parent.Parent; break; case JsonToken.String: case JsonToken.Integer: case JsonToken.Float: case JsonToken.Date: case JsonToken.Boolean: case JsonToken.Bytes: JValue v = new JValue(r.Value); v.SetLineInfo(lineInfo); parent.Add(v); break; case JsonToken.Comment: v = JValue.CreateComment(r.Value.ToString()); v.SetLineInfo(lineInfo); parent.Add(v); break; case JsonToken.Null: v = JValue.CreateNull(); v.SetLineInfo(lineInfo); parent.Add(v); break; case JsonToken.Undefined: v = JValue.CreateUndefined(); v.SetLineInfo(lineInfo); parent.Add(v); break; case JsonToken.PropertyName: string propertyName = r.Value.ToString(); JProperty property = new JProperty(propertyName); property.SetLineInfo(lineInfo); JObject parentObject = (JObject)parent; // handle multiple properties with the same name in JSON JProperty existingPropertyWithName = parentObject.Property(propertyName); if (existingPropertyWithName == null) parent.Add(property); else existingPropertyWithName.Replace(property); parent = property; break; default: throw new InvalidOperationException("The JsonReader should not be on a token of type {0}.".FormatWith(CultureInfo.InvariantCulture, r.TokenType)); } } while (r.Read()); } internal int ContentsHashCode() { int hashCode = 0; foreach (JToken item in ChildrenTokens) { hashCode ^= item.GetDeepHashCode(); } return hashCode; } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) string ITypedList.GetListName(PropertyDescriptor[] listAccessors) { return string.Empty; } PropertyDescriptorCollection ITypedList.GetItemProperties(PropertyDescriptor[] listAccessors) { ICustomTypeDescriptor d = First as ICustomTypeDescriptor; if (d != null) return d.GetProperties(); return null; } #endif #region IList Members int IList.IndexOf(JToken item) { return IndexOfItem(item); } void IList.Insert(int index, JToken item) { InsertItem(index, item, false); } void IList.RemoveAt(int index) { RemoveItemAt(index); } JToken IList.this[int index] { get { return GetItem(index); } set { SetItem(index, value); } } #endregion #region ICollection Members void ICollection.Add(JToken item) { Add(item); } void ICollection.Clear() { ClearItems(); } bool ICollection.Contains(JToken item) { return ContainsItem(item); } void ICollection.CopyTo(JToken[] array, int arrayIndex) { CopyItemsTo(array, arrayIndex); } bool ICollection.IsReadOnly { get { return false; } } bool ICollection.Remove(JToken item) { return RemoveItem(item); } #endregion private JToken EnsureValue(object value) { if (value == null) return null; if (value is JToken) return (JToken)value; throw new ArgumentException("Argument is not a JToken."); } #region IList Members int IList.Add(object value) { Add(EnsureValue(value)); return Count - 1; } void IList.Clear() { ClearItems(); } bool IList.Contains(object value) { return ContainsItem(EnsureValue(value)); } int IList.IndexOf(object value) { return IndexOfItem(EnsureValue(value)); } void IList.Insert(int index, object value) { InsertItem(index, EnsureValue(value), false); } bool IList.IsFixedSize { get { return false; } } bool IList.IsReadOnly { get { return false; } } void IList.Remove(object value) { RemoveItem(EnsureValue(value)); } void IList.RemoveAt(int index) { RemoveItemAt(index); } object IList.this[int index] { get { return GetItem(index); } set { SetItem(index, EnsureValue(value)); } } #endregion #region ICollection Members void ICollection.CopyTo(Array array, int index) { CopyItemsTo(array, index); } /// /// Gets the count of child JSON tokens. /// /// The count of child JSON tokens public int Count { get { return ChildrenTokens.Count; } } bool ICollection.IsSynchronized { get { return false; } } object ICollection.SyncRoot { get { if (_syncRoot == null) Interlocked.CompareExchange(ref _syncRoot, new object(), null); return _syncRoot; } } #endregion #region IBindingList Members #if !(NETFX_CORE || PORTABLE || PORTABLE40) void IBindingList.AddIndex(PropertyDescriptor property) { } object IBindingList.AddNew() { AddingNewEventArgs args = new AddingNewEventArgs(); OnAddingNew(args); if (args.NewObject == null) throw new JsonException("Could not determine new value to add to '{0}'.".FormatWith(CultureInfo.InvariantCulture, GetType())); if (!(args.NewObject is JToken)) throw new JsonException("New item to be added to collection must be compatible with {0}.".FormatWith(CultureInfo.InvariantCulture, typeof(JToken))); JToken newItem = (JToken)args.NewObject; Add(newItem); return newItem; } bool IBindingList.AllowEdit { get { return true; } } bool IBindingList.AllowNew { get { return true; } } bool IBindingList.AllowRemove { get { return true; } } void IBindingList.ApplySort(PropertyDescriptor property, ListSortDirection direction) { throw new NotSupportedException(); } int IBindingList.Find(PropertyDescriptor property, object key) { throw new NotSupportedException(); } bool IBindingList.IsSorted { get { return false; } } void IBindingList.RemoveIndex(PropertyDescriptor property) { } void IBindingList.RemoveSort() { throw new NotSupportedException(); } ListSortDirection IBindingList.SortDirection { get { return ListSortDirection.Ascending; } } PropertyDescriptor IBindingList.SortProperty { get { return null; } } bool IBindingList.SupportsChangeNotification { get { return true; } } bool IBindingList.SupportsSearching { get { return false; } } bool IBindingList.SupportsSorting { get { return false; } } #endif #endregion internal static void MergeEnumerableContent(JContainer target, IEnumerable content, JsonMergeSettings settings) { switch (settings.MergeArrayHandling) { case MergeArrayHandling.Concat: foreach (JToken item in content) { target.Add(item); } break; case MergeArrayHandling.Union: #if !NET20 HashSet items = new HashSet(target, EqualityComparer); foreach (JToken item in content) { if (items.Add(item)) { target.Add(item); } } #else IDictionary items = new Dictionary(EqualityComparer); foreach (JToken t in target) { items[t] = true; } foreach (JToken item in content) { if (!items.ContainsKey(item)) { items[item] = true; target.Add(item); } } #endif break; case MergeArrayHandling.Replace: target.ClearItems(); foreach (JToken item in content) { target.Add(item); } break; case MergeArrayHandling.Merge: int i = 0; foreach (object targetItem in content) { if (i < target.Count) { JToken sourceItem = target[i]; JContainer existingContainer = sourceItem as JContainer; if (existingContainer != null) { existingContainer.Merge(targetItem, settings); } else { if (targetItem != null) { JToken contentValue = CreateFromContent(targetItem); if (contentValue.Type != JTokenType.Null) target[i] = contentValue; } } } else { target.Add(targetItem); } i++; } break; default: throw new ArgumentOutOfRangeException("settings", "Unexpected merge array handling when merging JSON."); } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JConstructor.cs0000664000175000017500000001735412454416117025141 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Linq { /// /// Represents a JSON constructor. /// public class JConstructor : JContainer { private string _name; private readonly List _values = new List(); /// /// Gets the container's children tokens. /// /// The container's children tokens. protected override IList ChildrenTokens { get { return _values; } } internal override void MergeItem(object content, JsonMergeSettings settings) { JConstructor c = content as JConstructor; if (c == null) return; if (c.Name != null) Name = c.Name; MergeEnumerableContent(this, c, settings); } /// /// Gets or sets the name of this constructor. /// /// The constructor name. public string Name { get { return _name; } set { _name = value; } } /// /// Gets the node type for this . /// /// The type. public override JTokenType Type { get { return JTokenType.Constructor; } } /// /// Initializes a new instance of the class. /// public JConstructor() { } /// /// Initializes a new instance of the class from another object. /// /// A object to copy from. public JConstructor(JConstructor other) : base(other) { _name = other.Name; } /// /// Initializes a new instance of the class with the specified name and content. /// /// The constructor name. /// The contents of the constructor. public JConstructor(string name, params object[] content) : this(name, (object)content) { } /// /// Initializes a new instance of the class with the specified name and content. /// /// The constructor name. /// The contents of the constructor. public JConstructor(string name, object content) : this(name) { Add(content); } /// /// Initializes a new instance of the class with the specified name. /// /// The constructor name. public JConstructor(string name) { ValidationUtils.ArgumentNotNullOrEmpty(name, "name"); _name = name; } internal override bool DeepEquals(JToken node) { JConstructor c = node as JConstructor; return (c != null && _name == c.Name && ContentsEqual(c)); } internal override JToken CloneToken() { return new JConstructor(this); } /// /// Writes this token to a . /// /// A into which this method will write. /// A collection of which will be used when writing the token. public override void WriteTo(JsonWriter writer, params JsonConverter[] converters) { writer.WriteStartConstructor(_name); foreach (JToken token in Children()) { token.WriteTo(writer, converters); } writer.WriteEndConstructor(); } /// /// Gets the with the specified key. /// /// The with the specified key. public override JToken this[object key] { get { ValidationUtils.ArgumentNotNull(key, "o"); if (!(key is int)) throw new ArgumentException("Accessed JConstructor values with invalid key value: {0}. Argument position index expected.".FormatWith(CultureInfo.InvariantCulture, MiscellaneousUtils.ToString(key))); return GetItem((int)key); } set { ValidationUtils.ArgumentNotNull(key, "o"); if (!(key is int)) throw new ArgumentException("Set JConstructor values with invalid key value: {0}. Argument position index expected.".FormatWith(CultureInfo.InvariantCulture, MiscellaneousUtils.ToString(key))); SetItem((int)key, value); } } internal override int GetDeepHashCode() { return _name.GetHashCode() ^ ContentsHashCode(); } /// /// Loads an from a . /// /// A that will be read for the content of the . /// A that contains the JSON that was read from the specified . public new static JConstructor Load(JsonReader reader) { if (reader.TokenType == JsonToken.None) { if (!reader.Read()) throw JsonReaderException.Create(reader, "Error reading JConstructor from JsonReader."); } while (reader.TokenType == JsonToken.Comment) { reader.Read(); } if (reader.TokenType != JsonToken.StartConstructor) throw JsonReaderException.Create(reader, "Error reading JConstructor from JsonReader. Current JsonReader item is not a constructor: {0}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); JConstructor c = new JConstructor((string)reader.Value); c.SetLineInfo(reader as IJsonLineInfo); c.ReadTokenFrom(reader); return c; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JTokenType.cs0000664000175000017500000000572412454416117024534 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Linq { /// /// Specifies the type of token. /// public enum JTokenType { /// /// No token type has been set. /// None = 0, /// /// A JSON object. /// Object = 1, /// /// A JSON array. /// Array = 2, /// /// A JSON constructor. /// Constructor = 3, /// /// A JSON object property. /// Property = 4, /// /// A comment. /// Comment = 5, /// /// An integer value. /// Integer = 6, /// /// A float value. /// Float = 7, /// /// A string value. /// String = 8, /// /// A boolean value. /// Boolean = 9, /// /// A null value. /// Null = 10, /// /// An undefined value. /// Undefined = 11, /// /// A date value. /// Date = 12, /// /// A raw JSON value. /// Raw = 13, /// /// A collection of bytes value. /// Bytes = 14, /// /// A Guid value. /// Guid = 15, /// /// A Uri value. /// Uri = 16, /// /// A TimeSpan value. /// TimeSpan = 17 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JPropertyKeyedCollection.cs0000664000175000017500000001514412454416117027431 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Collections.ObjectModel; namespace Newtonsoft.Json.Linq { internal class JPropertyKeyedCollection : Collection { private static readonly IEqualityComparer Comparer = StringComparer.Ordinal; private Dictionary _dictionary; private void AddKey(string key, JToken item) { EnsureDictionary(); _dictionary[key] = item; } protected void ChangeItemKey(JToken item, string newKey) { if (!ContainsItem(item)) throw new ArgumentException("The specified item does not exist in this KeyedCollection."); string keyForItem = GetKeyForItem(item); if (!Comparer.Equals(keyForItem, newKey)) { if (newKey != null) AddKey(newKey, item); if (keyForItem != null) RemoveKey(keyForItem); } } protected override void ClearItems() { base.ClearItems(); if (_dictionary != null) _dictionary.Clear(); } public bool Contains(string key) { if (key == null) throw new ArgumentNullException("key"); if (_dictionary != null) return _dictionary.ContainsKey(key); return false; } private bool ContainsItem(JToken item) { if (_dictionary == null) return false; string key = GetKeyForItem(item); JToken value; return _dictionary.TryGetValue(key, out value); } private void EnsureDictionary() { if (_dictionary == null) _dictionary = new Dictionary(Comparer); } private string GetKeyForItem(JToken item) { return ((JProperty)item).Name; } protected override void InsertItem(int index, JToken item) { AddKey(GetKeyForItem(item), item); base.InsertItem(index, item); } public bool Remove(string key) { if (key == null) throw new ArgumentNullException("key"); if (_dictionary != null) return _dictionary.ContainsKey(key) && Remove(_dictionary[key]); return false; } protected override void RemoveItem(int index) { string keyForItem = GetKeyForItem(Items[index]); RemoveKey(keyForItem); base.RemoveItem(index); } private void RemoveKey(string key) { if (_dictionary != null) _dictionary.Remove(key); } protected override void SetItem(int index, JToken item) { string keyForItem = GetKeyForItem(item); string keyAtIndex = GetKeyForItem(Items[index]); if (Comparer.Equals(keyAtIndex, keyForItem)) { if (_dictionary != null) _dictionary[keyForItem] = item; } else { AddKey(keyForItem, item); if (keyAtIndex != null) RemoveKey(keyAtIndex); } base.SetItem(index, item); } public JToken this[string key] { get { if (key == null) throw new ArgumentNullException("key"); if (_dictionary != null) return _dictionary[key]; throw new KeyNotFoundException(); } } public bool TryGetValue(string key, out JToken value) { if (_dictionary == null) { value = null; return false; } return _dictionary.TryGetValue(key, out value); } public ICollection Keys { get { EnsureDictionary(); return _dictionary.Keys; } } public ICollection Values { get { EnsureDictionary(); return _dictionary.Values; } } public bool Compare(JPropertyKeyedCollection other) { if (this == other) return true; // dictionaries in JavaScript aren't ordered // ignore order when comparing properties Dictionary d1 = _dictionary; Dictionary d2 = other._dictionary; if (d1 == null && d2 == null) return true; if (d1 == null) return (d2.Count == 0); if (d2 == null) return (d1.Count == 0); if (d1.Count != d2.Count) return false; foreach (KeyValuePair keyAndProperty in d1) { JToken secondValue; if (!d2.TryGetValue(keyAndProperty.Key, out secondValue)) return false; JProperty p1 = (JProperty)keyAndProperty.Value; JProperty p2 = (JProperty)secondValue; if (p1.Value == null) return (p2.Value == null); if (!p1.Value.DeepEquals(p2.Value)) return false; } return true; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JRaw.cs0000664000175000017500000000523012454416117023333 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Globalization; using System.IO; namespace Newtonsoft.Json.Linq { /// /// Represents a raw JSON string. /// public class JRaw : JValue { /// /// Initializes a new instance of the class from another object. /// /// A object to copy from. public JRaw(JRaw other) : base(other) { } /// /// Initializes a new instance of the class. /// /// The raw json. public JRaw(object rawJson) : base(rawJson, JTokenType.Raw) { } /// /// Creates an instance of with the content of the reader's current token. /// /// The reader. /// An instance of with the content of the reader's current token. public static JRaw Create(JsonReader reader) { using (StringWriter sw = new StringWriter(CultureInfo.InvariantCulture)) using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.WriteToken(reader); return new JRaw(sw.ToString()); } } internal override JToken CloneToken() { return new JRaw(this); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JArray.cs0000664000175000017500000003544412454416117023672 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using Newtonsoft.Json.Utilities; using System.IO; using System.Globalization; namespace Newtonsoft.Json.Linq { /// /// Represents a JSON array. /// /// /// /// public class JArray : JContainer, IList { private readonly List _values = new List(); /// /// Gets the container's children tokens. /// /// The container's children tokens. protected override IList ChildrenTokens { get { return _values; } } /// /// Gets the node type for this . /// /// The type. public override JTokenType Type { get { return JTokenType.Array; } } /// /// Initializes a new instance of the class. /// public JArray() { } /// /// Initializes a new instance of the class from another object. /// /// A object to copy from. public JArray(JArray other) : base(other) { } /// /// Initializes a new instance of the class with the specified content. /// /// The contents of the array. public JArray(params object[] content) : this((object)content) { } /// /// Initializes a new instance of the class with the specified content. /// /// The contents of the array. public JArray(object content) { Add(content); } internal override bool DeepEquals(JToken node) { JArray t = node as JArray; return (t != null && ContentsEqual(t)); } internal override JToken CloneToken() { return new JArray(this); } /// /// Loads an from a . /// /// A that will be read for the content of the . /// A that contains the JSON that was read from the specified . public new static JArray Load(JsonReader reader) { if (reader.TokenType == JsonToken.None) { if (!reader.Read()) throw JsonReaderException.Create(reader, "Error reading JArray from JsonReader."); } while (reader.TokenType == JsonToken.Comment) { reader.Read(); } if (reader.TokenType != JsonToken.StartArray) throw JsonReaderException.Create(reader, "Error reading JArray from JsonReader. Current JsonReader item is not an array: {0}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); JArray a = new JArray(); a.SetLineInfo(reader as IJsonLineInfo); a.ReadTokenFrom(reader); return a; } /// /// Load a from a string that contains JSON. /// /// A that contains JSON. /// A populated from the string that contains JSON. /// /// /// public new static JArray Parse(string json) { using (JsonReader reader = new JsonTextReader(new StringReader(json))) { JArray a = Load(reader); if (reader.Read() && reader.TokenType != JsonToken.Comment) throw JsonReaderException.Create(reader, "Additional text found in JSON string after parsing content."); return a; } } /// /// Creates a from an object. /// /// The object that will be used to create . /// A with the values of the specified object public new static JArray FromObject(object o) { return FromObject(o, JsonSerializer.CreateDefault()); } /// /// Creates a from an object. /// /// The object that will be used to create . /// The that will be used to read the object. /// A with the values of the specified object public new static JArray FromObject(object o, JsonSerializer jsonSerializer) { JToken token = FromObjectInternal(o, jsonSerializer); if (token.Type != JTokenType.Array) throw new ArgumentException("Object serialized to {0}. JArray instance expected.".FormatWith(CultureInfo.InvariantCulture, token.Type)); return (JArray)token; } /// /// Writes this token to a . /// /// A into which this method will write. /// A collection of which will be used when writing the token. public override void WriteTo(JsonWriter writer, params JsonConverter[] converters) { writer.WriteStartArray(); for (int i = 0; i < _values.Count; i++) { _values[i].WriteTo(writer, converters); } writer.WriteEndArray(); } /// /// Gets the with the specified key. /// /// The with the specified key. public override JToken this[object key] { get { ValidationUtils.ArgumentNotNull(key, "o"); if (!(key is int)) throw new ArgumentException("Accessed JArray values with invalid key value: {0}. Array position index expected.".FormatWith(CultureInfo.InvariantCulture, MiscellaneousUtils.ToString(key))); return GetItem((int)key); } set { ValidationUtils.ArgumentNotNull(key, "o"); if (!(key is int)) throw new ArgumentException("Set JArray values with invalid key value: {0}. Array position index expected.".FormatWith(CultureInfo.InvariantCulture, MiscellaneousUtils.ToString(key))); SetItem((int)key, value); } } /// /// Gets or sets the at the specified index. /// /// public JToken this[int index] { get { return GetItem(index); } set { SetItem(index, value); } } internal override void MergeItem(object content, JsonMergeSettings settings) { IEnumerable a = (IsMultiContent(content) || content is JArray) ? (IEnumerable)content : null; if (a == null) return; MergeEnumerableContent(this, a, settings); } #region IList Members /// /// Determines the index of a specific item in the . /// /// The object to locate in the . /// /// The index of if found in the list; otherwise, -1. /// public int IndexOf(JToken item) { return IndexOfItem(item); } /// /// Inserts an item to the at the specified index. /// /// The zero-based index at which should be inserted. /// The object to insert into the . /// /// is not a valid index in the . /// The is read-only. public void Insert(int index, JToken item) { InsertItem(index, item, false); } /// /// Removes the item at the specified index. /// /// The zero-based index of the item to remove. /// /// is not a valid index in the . /// The is read-only. public void RemoveAt(int index) { RemoveItemAt(index); } /// /// Returns an enumerator that iterates through the collection. /// /// /// A that can be used to iterate through the collection. /// public IEnumerator GetEnumerator() { return Children().GetEnumerator(); } #endregion #region ICollection Members /// /// Adds an item to the . /// /// The object to add to the . /// The is read-only. public void Add(JToken item) { Add((object)item); } /// /// Removes all items from the . /// /// The is read-only. public void Clear() { ClearItems(); } /// /// Determines whether the contains a specific value. /// /// The object to locate in the . /// /// true if is found in the ; otherwise, false. /// public bool Contains(JToken item) { return ContainsItem(item); } /// /// Copies to. /// /// The array. /// Index of the array. public void CopyTo(JToken[] array, int arrayIndex) { CopyItemsTo(array, arrayIndex); } /// /// Gets a value indicating whether the is read-only. /// /// true if the is read-only; otherwise, false. public bool IsReadOnly { get { return false; } } /// /// Removes the first occurrence of a specific object from the . /// /// The object to remove from the . /// /// true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . /// /// The is read-only. public bool Remove(JToken item) { return RemoveItem(item); } #endregion internal override int GetDeepHashCode() { return ContentsHashCode(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JTokenReader.cs0000664000175000017500000002733612454416117025020 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Linq { /// /// Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. /// public class JTokenReader : JsonReader, IJsonLineInfo { private readonly string _initialPath; private readonly JToken _root; private JToken _parent; private JToken _current; /// /// Gets the at the reader's current position. /// public JToken CurrentToken { get { return _current; } } /// /// Initializes a new instance of the class. /// /// The token to read from. public JTokenReader(JToken token) { ValidationUtils.ArgumentNotNull(token, "token"); _root = token; } internal JTokenReader(JToken token, string initialPath) : this(token) { _initialPath = initialPath; } /// /// Reads the next JSON token from the stream as a []. /// /// /// A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. /// public override byte[] ReadAsBytes() { return ReadAsBytesInternal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override decimal? ReadAsDecimal() { return ReadAsDecimalInternal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override int? ReadAsInt32() { return ReadAsInt32Internal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override string ReadAsString() { return ReadAsStringInternal(); } /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override DateTime? ReadAsDateTime() { return ReadAsDateTimeInternal(); } #if !NET20 /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public override DateTimeOffset? ReadAsDateTimeOffset() { return ReadAsDateTimeOffsetInternal(); } #endif internal override bool ReadInternal() { if (CurrentState != State.Start) { if (_current == null) return false; JContainer container = _current as JContainer; if (container != null && _parent != container) return ReadInto(container); else return ReadOver(_current); } _current = _root; SetToken(_current); return true; } /// /// Reads the next JSON token from the stream. /// /// /// true if the next token was read successfully; false if there are no more tokens to read. /// public override bool Read() { _readType = ReadType.Read; return ReadInternal(); } private bool ReadOver(JToken t) { if (t == _root) return ReadToEnd(); JToken next = t.Next; if ((next == null || next == t) || t == t.Parent.Last) { if (t.Parent == null) return ReadToEnd(); return SetEnd(t.Parent); } else { _current = next; SetToken(_current); return true; } } private bool ReadToEnd() { _current = null; SetToken(JsonToken.None); return false; } private JsonToken? GetEndToken(JContainer c) { switch (c.Type) { case JTokenType.Object: return JsonToken.EndObject; case JTokenType.Array: return JsonToken.EndArray; case JTokenType.Constructor: return JsonToken.EndConstructor; case JTokenType.Property: return null; default: throw MiscellaneousUtils.CreateArgumentOutOfRangeException("Type", c.Type, "Unexpected JContainer type."); } } private bool ReadInto(JContainer c) { JToken firstChild = c.First; if (firstChild == null) { return SetEnd(c); } else { SetToken(firstChild); _current = firstChild; _parent = c; return true; } } private bool SetEnd(JContainer c) { JsonToken? endToken = GetEndToken(c); if (endToken != null) { SetToken(endToken.Value); _current = c; _parent = c; return true; } else { return ReadOver(c); } } private void SetToken(JToken token) { switch (token.Type) { case JTokenType.Object: SetToken(JsonToken.StartObject); break; case JTokenType.Array: SetToken(JsonToken.StartArray); break; case JTokenType.Constructor: SetToken(JsonToken.StartConstructor, ((JConstructor)token).Name); break; case JTokenType.Property: SetToken(JsonToken.PropertyName, ((JProperty)token).Name); break; case JTokenType.Comment: SetToken(JsonToken.Comment, ((JValue)token).Value); break; case JTokenType.Integer: SetToken(JsonToken.Integer, ((JValue)token).Value); break; case JTokenType.Float: SetToken(JsonToken.Float, ((JValue)token).Value); break; case JTokenType.String: SetToken(JsonToken.String, ((JValue)token).Value); break; case JTokenType.Boolean: SetToken(JsonToken.Boolean, ((JValue)token).Value); break; case JTokenType.Null: SetToken(JsonToken.Null, ((JValue)token).Value); break; case JTokenType.Undefined: SetToken(JsonToken.Undefined, ((JValue)token).Value); break; case JTokenType.Date: SetToken(JsonToken.Date, ((JValue)token).Value); break; case JTokenType.Raw: SetToken(JsonToken.Raw, ((JValue)token).Value); break; case JTokenType.Bytes: SetToken(JsonToken.Bytes, ((JValue)token).Value); break; case JTokenType.Guid: SetToken(JsonToken.String, SafeToString(((JValue)token).Value)); break; case JTokenType.Uri: SetToken(JsonToken.String, SafeToString(((JValue)token).Value)); break; case JTokenType.TimeSpan: SetToken(JsonToken.String, SafeToString(((JValue)token).Value)); break; default: throw MiscellaneousUtils.CreateArgumentOutOfRangeException("Type", token.Type, "Unexpected JTokenType."); } } private string SafeToString(object value) { return (value != null) ? value.ToString() : null; } bool IJsonLineInfo.HasLineInfo() { if (CurrentState == State.Start) return false; IJsonLineInfo info = _current; return (info != null && info.HasLineInfo()); } int IJsonLineInfo.LineNumber { get { if (CurrentState == State.Start) return 0; IJsonLineInfo info = _current; if (info != null) return info.LineNumber; return 0; } } int IJsonLineInfo.LinePosition { get { if (CurrentState == State.Start) return 0; IJsonLineInfo info = _current; if (info != null) return info.LinePosition; return 0; } } /// /// Gets the path of the current JSON token. /// public override string Path { get { string path = base.Path; if (!string.IsNullOrEmpty(_initialPath)) { if (string.IsNullOrEmpty(path)) return _initialPath; if (_initialPath.EndsWith(']') || path.StartsWith('[')) path = _initialPath + path; else path = _initialPath + "." + path; } return path; } } } } newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/0000775000175000017500000000000012454416117023667 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/FieldFilter.cs0000664000175000017500000000265112454416117026413 0ustar directhexdirecthexusing System.Collections.Generic; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Linq.JsonPath { internal class FieldFilter : PathFilter { public string Name { get; set; } public override IEnumerable ExecuteFilter(IEnumerable current, bool errorWhenNoMatch) { foreach (JToken t in current) { JObject o = t as JObject; if (o != null) { if (Name != null) { JToken v = o[Name]; if (v != null) yield return v; else if (errorWhenNoMatch) throw new JsonException("Property '{0}' does not exist on JObject.".FormatWith(CultureInfo.InvariantCulture, Name)); } else { foreach (KeyValuePair p in o) { yield return p.Value; } } } else { if (errorWhenNoMatch) throw new JsonException("Property '{0}' not valid on {1}.".FormatWith(CultureInfo.InvariantCulture, Name ?? "*", t.GetType().Name)); } } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/ScanFilter.cs0000664000175000017500000000310112454416117026243 0ustar directhexdirecthexusing System.Collections.Generic; namespace Newtonsoft.Json.Linq.JsonPath { internal class ScanFilter : PathFilter { public string Name { get; set; } public override IEnumerable ExecuteFilter(IEnumerable current, bool errorWhenNoMatch) { foreach (JToken root in current) { if (Name == null) yield return root; JToken value = root; JToken container = root; while (true) { if (container != null && container.HasValues) { value = container.First; } else { while (value != null && value != root && value == value.Parent.Last) { value = value.Parent; } if (value == null || value == root) break; value = value.Next; } JProperty e = value as JProperty; if (e != null) { if (e.Name == Name) yield return e.Value; } else { if (Name == null) yield return value; } container = value as JContainer; } } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/ArrayMultipleIndexFilter.cs0000664000175000017500000000115412454416117031147 0ustar directhexdirecthexusing System.Collections.Generic; namespace Newtonsoft.Json.Linq.JsonPath { internal class ArrayMultipleIndexFilter : PathFilter { public List Indexes { get; set; } public override IEnumerable ExecuteFilter(IEnumerable current, bool errorWhenNoMatch) { foreach (JToken t in current) { foreach (int i in Indexes) { JToken v = GetTokenIndex(t, errorWhenNoMatch, i); if (v != null) yield return v; } } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/FieldMultipleFilter.cs0000664000175000017500000000253012454416117030123 0ustar directhexdirecthexusing System.Collections.Generic; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Linq.JsonPath { internal class FieldMultipleFilter : PathFilter { public List Names { get; set; } public override IEnumerable ExecuteFilter(IEnumerable current, bool errorWhenNoMatch) { foreach (JToken t in current) { JObject o = t as JObject; if (o != null) { foreach (string name in Names) { JToken v = o[name]; if (v != null) yield return v; if (errorWhenNoMatch) throw new JsonException("Property '{0}' does not exist on JObject.".FormatWith(CultureInfo.InvariantCulture, name)); } } else { if (errorWhenNoMatch) throw new JsonException("Properties {0} not valid on {1}.".FormatWith(CultureInfo.InvariantCulture, string.Join(", ", Names.Select(n => "'" + n + "'").ToArray()), t.GetType().Name)); } } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/QueryFilter.cs0000664000175000017500000000107012454416117026467 0ustar directhexdirecthexusing System; using System.Collections.Generic; namespace Newtonsoft.Json.Linq.JsonPath { internal class QueryFilter : PathFilter { public QueryExpression Expression { get; set; } public override IEnumerable ExecuteFilter(IEnumerable current, bool errorWhenNoMatch) { foreach (JToken t in current) { foreach (JToken v in t) { if (Expression.IsMatch(v)) yield return v; } } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/QueryExpression.cs0000664000175000017500000000640112454416117027404 0ustar directhexdirecthexusing System; using System.Collections.Generic; namespace Newtonsoft.Json.Linq.JsonPath { internal enum QueryOperator { None = 0, Equals = 1, NotEquals = 2, Exists = 3, LessThan = 4, LessThanOrEquals = 5, GreaterThan = 6, GreaterThanOrEquals = 7, And = 8, Or = 9 } internal abstract class QueryExpression { public QueryOperator Operator { get; set; } public abstract bool IsMatch(JToken t); } internal class CompositeExpression : QueryExpression { public List Expressions { get; set; } public CompositeExpression() { Expressions = new List(); } public override bool IsMatch(JToken t) { switch (Operator) { case QueryOperator.And: foreach (QueryExpression e in Expressions) { if (!e.IsMatch(t)) return false; } return true; case QueryOperator.Or: foreach (QueryExpression e in Expressions) { if (e.IsMatch(t)) return true; } return false; default: throw new ArgumentOutOfRangeException(); } } } internal class BooleanQueryExpression : QueryExpression { public List Path { get; set; } public JValue Value { get; set; } public override bool IsMatch(JToken t) { IEnumerable pathResult = JPath.Evaluate(Path, t, false); foreach (JToken r in pathResult) { JValue v = r as JValue; switch (Operator) { case QueryOperator.Equals: if (v != null && v.Equals(Value)) return true; break; case QueryOperator.NotEquals: if (v != null && !v.Equals(Value)) return true; break; case QueryOperator.GreaterThan: if (v != null && v.CompareTo(Value) > 0) return true; break; case QueryOperator.GreaterThanOrEquals: if (v != null && v.CompareTo(Value) >= 0) return true; break; case QueryOperator.LessThan: if (v != null && v.CompareTo(Value) < 0) return true; break; case QueryOperator.LessThanOrEquals: if (v != null && v.CompareTo(Value) <= 0) return true; break; case QueryOperator.Exists: return true; default: throw new ArgumentOutOfRangeException(); } } return false; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/ArraySliceFilter.cs0000664000175000017500000000560612454416117027431 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Linq.JsonPath { internal class ArraySliceFilter : PathFilter { public int? Start { get; set; } public int? End { get; set; } public int? Step { get; set; } public override IEnumerable ExecuteFilter(IEnumerable current, bool errorWhenNoMatch) { if (Step == 0) throw new JsonException("Step cannot be zero."); foreach (JToken t in current) { JArray a = t as JArray; if (a != null) { // set defaults for null arguments int stepCount = Step ?? 1; int startIndex = Start ?? ((stepCount > 0) ? 0 : a.Count - 1); int stopIndex = End ?? ((stepCount > 0) ? a.Count : -1); // start from the end of the list if start is negitive if (Start < 0) startIndex = a.Count + startIndex; // end from the start of the list if stop is negitive if (End < 0) stopIndex = a.Count + stopIndex; // ensure indexes keep within collection bounds startIndex = Math.Max(startIndex, (stepCount > 0) ? 0 : int.MinValue); startIndex = Math.Min(startIndex, (stepCount > 0) ? a.Count : a.Count - 1); stopIndex = Math.Max(stopIndex, -1); stopIndex = Math.Min(stopIndex, a.Count); bool positiveStep = (stepCount > 0); if (IsValid(startIndex, stopIndex, positiveStep)) { for (int i = startIndex; IsValid(i, stopIndex, positiveStep); i += stepCount) { yield return a[i]; } } else { if (errorWhenNoMatch) throw new JsonException("Array slice of {0} to {1} returned no results.".FormatWith(CultureInfo.InvariantCulture, Start != null ? Start.Value.ToString(CultureInfo.InvariantCulture) : "*", End != null ? End.Value.ToString(CultureInfo.InvariantCulture) : "*")); } } else { if (errorWhenNoMatch) throw new JsonException("Array slice is not valid on {0}.".FormatWith(CultureInfo.InvariantCulture, t.GetType().Name)); } } } private bool IsValid(int index, int stopIndex, bool positiveStep) { if (positiveStep) return (index < stopIndex); return (index > stopIndex); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/PathFilter.cs0000664000175000017500000000276112454416117026266 0ustar directhexdirecthexusing System.Collections.Generic; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Linq.JsonPath { internal abstract class PathFilter { public abstract IEnumerable ExecuteFilter(IEnumerable current, bool errorWhenNoMatch); protected static JToken GetTokenIndex(JToken t, bool errorWhenNoMatch, int index) { JArray a = t as JArray; JConstructor c = t as JConstructor; if (a != null) { if (a.Count <= index) { if (errorWhenNoMatch) throw new JsonException("Index {0} outside the bounds of JArray.".FormatWith(CultureInfo.InvariantCulture, index)); return null; } return a[index]; } else if (c != null) { if (c.Count <= index) { if (errorWhenNoMatch) throw new JsonException("Index {0} outside the bounds of JConstructor.".FormatWith(CultureInfo.InvariantCulture, index)); return null; } return c[index]; } else { if (errorWhenNoMatch) throw new JsonException("Index {0} not valid on {1}.".FormatWith(CultureInfo.InvariantCulture, index, t.GetType().Name)); return null; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/ArrayIndexFilter.cs0000664000175000017500000000231312454416117027431 0ustar directhexdirecthexusing System.Collections.Generic; using System.Globalization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Linq.JsonPath { internal class ArrayIndexFilter : PathFilter { public int? Index { get; set; } public override IEnumerable ExecuteFilter(IEnumerable current, bool errorWhenNoMatch) { foreach (JToken t in current) { if (Index != null) { JToken v = GetTokenIndex(t, errorWhenNoMatch, Index.Value); if (v != null) yield return v; } else { if (t is JArray || t is JConstructor) { foreach (JToken v in t) { yield return v; } } else { if (errorWhenNoMatch) throw new JsonException("Index * not valid on {0}.".FormatWith(CultureInfo.InvariantCulture, t.GetType().Name)); } } } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonPath/JPath.cs0000664000175000017500000005731712454416117025241 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.Text; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Linq.JsonPath { internal class JPath { private readonly string _expression; public List Filters { get; private set; } private int _currentIndex; public JPath(string expression) { ValidationUtils.ArgumentNotNull(expression, "expression"); _expression = expression; Filters = new List(); ParseMain(); } private void ParseMain() { int currentPartStartIndex = _currentIndex; EatWhitespace(); if (_expression.Length == _currentIndex) return; if (_expression[_currentIndex] == '$') { if (_expression.Length == 1) return; // only increment position for "$." or "$[" // otherwise assume property that starts with $ char c = _expression[_currentIndex + 1]; if (c == '.' || c == '[') { _currentIndex++; currentPartStartIndex = _currentIndex; } } if (!ParsePath(Filters, currentPartStartIndex, false)) { int lastCharacterIndex = _currentIndex; EatWhitespace(); if (_currentIndex < _expression.Length) throw new JsonException("Unexpected character while parsing path: " + _expression[lastCharacterIndex]); } } private bool ParsePath(List filters, int currentPartStartIndex, bool query) { bool scan = false; bool followingIndexer = false; bool followingDot = false; bool ended = false; while (_currentIndex < _expression.Length && !ended) { char currentChar = _expression[_currentIndex]; switch (currentChar) { case '[': case '(': if (_currentIndex > currentPartStartIndex) { string member = _expression.Substring(currentPartStartIndex, _currentIndex - currentPartStartIndex); PathFilter filter = (scan) ? (PathFilter)new ScanFilter() { Name = member } : new FieldFilter() { Name = member }; filters.Add(filter); scan = false; } filters.Add(ParseIndexer(currentChar)); _currentIndex++; currentPartStartIndex = _currentIndex; followingIndexer = true; followingDot = false; break; case ']': case ')': ended = true; break; case ' ': //EatWhitespace(); if (_currentIndex < _expression.Length) ended = true; break; case '.': if (_currentIndex > currentPartStartIndex) { string member = _expression.Substring(currentPartStartIndex, _currentIndex - currentPartStartIndex); if (member == "*") member = null; PathFilter filter = (scan) ? (PathFilter)new ScanFilter() { Name = member } : new FieldFilter() { Name = member }; filters.Add(filter); scan = false; } if (_currentIndex + 1 < _expression.Length && _expression[_currentIndex + 1] == '.') { scan = true; _currentIndex++; } _currentIndex++; currentPartStartIndex = _currentIndex; followingIndexer = false; followingDot = true; break; default: if (query && (currentChar == '=' || currentChar == '<' || currentChar == '!' || currentChar == '>' || currentChar == '|' || currentChar == '&')) { ended = true; } else { if (followingIndexer) throw new JsonException("Unexpected character following indexer: " + currentChar); _currentIndex++; } break; } } bool atPathEnd = (_currentIndex == _expression.Length); if (_currentIndex > currentPartStartIndex) { string member = _expression.Substring(currentPartStartIndex, _currentIndex - currentPartStartIndex).TrimEnd(); if (member == "*") member = null; PathFilter filter = (scan) ? (PathFilter)new ScanFilter() { Name = member } : new FieldFilter() { Name = member }; filters.Add(filter); } else { // no field name following dot in path and at end of base path/query if (followingDot && (atPathEnd || query)) throw new JsonException("Unexpected end while parsing path."); } return atPathEnd; } private PathFilter ParseIndexer(char indexerOpenChar) { _currentIndex++; char indexerCloseChar = (indexerOpenChar == '[') ? ']' : ')'; EnsureLength("Path ended with open indexer."); EatWhitespace(); if (_expression[_currentIndex] == '\'') { return ParseQuotedField(indexerCloseChar); } else if (_expression[_currentIndex] == '?') { return ParseQuery(indexerCloseChar); } else { return ParseArrayIndexer(indexerCloseChar); } } private PathFilter ParseArrayIndexer(char indexerCloseChar) { int start = _currentIndex; int? end = null; List indexes = null; int colonCount = 0; int? startIndex = null; int? endIndex = null; int? step = null; while (_currentIndex < _expression.Length) { char currentCharacter = _expression[_currentIndex]; if (currentCharacter == ' ') { end = _currentIndex; EatWhitespace(); continue; } if (currentCharacter == indexerCloseChar) { int length = (end ?? _currentIndex) - start; if (indexes != null) { if (length == 0) throw new JsonException("Array index expected."); string indexer = _expression.Substring(start, length); int index = Convert.ToInt32(indexer, CultureInfo.InvariantCulture); indexes.Add(index); return new ArrayMultipleIndexFilter { Indexes = indexes }; } else if (colonCount > 0) { if (length > 0) { string indexer = _expression.Substring(start, length); int index = Convert.ToInt32(indexer, CultureInfo.InvariantCulture); if (colonCount == 1) endIndex = index; else step = index; } return new ArraySliceFilter { Start = startIndex, End = endIndex, Step = step }; } else { if (length == 0) throw new JsonException("Array index expected."); string indexer = _expression.Substring(start, length); int index = Convert.ToInt32(indexer, CultureInfo.InvariantCulture); return new ArrayIndexFilter { Index = index }; } } else if (currentCharacter == ',') { int length = (end ?? _currentIndex) - start; if (length == 0) throw new JsonException("Array index expected."); if (indexes == null) indexes = new List(); string indexer = _expression.Substring(start, length); indexes.Add(Convert.ToInt32(indexer, CultureInfo.InvariantCulture)); _currentIndex++; EatWhitespace(); start = _currentIndex; end = null; } else if (currentCharacter == '*') { _currentIndex++; EnsureLength("Path ended with open indexer."); EatWhitespace(); if (_expression[_currentIndex] != indexerCloseChar) throw new JsonException("Unexpected character while parsing path indexer: " + currentCharacter); return new ArrayIndexFilter(); } else if (currentCharacter == ':') { int length = (end ?? _currentIndex) - start; if (length > 0) { string indexer = _expression.Substring(start, length); int index = Convert.ToInt32(indexer, CultureInfo.InvariantCulture); if (colonCount == 0) startIndex = index; else if (colonCount == 1) endIndex = index; else step = index; } colonCount++; _currentIndex++; EatWhitespace(); start = _currentIndex; end = null; } else if (!char.IsDigit(currentCharacter) && currentCharacter != '-') { throw new JsonException("Unexpected character while parsing path indexer: " + currentCharacter); } else { if (end != null) throw new JsonException("Unexpected character while parsing path indexer: " + currentCharacter); _currentIndex++; } } throw new JsonException("Path ended with open indexer."); } private void EatWhitespace() { while (_currentIndex < _expression.Length) { if (_expression[_currentIndex] != ' ') break; _currentIndex++; } } private PathFilter ParseQuery(char indexerCloseChar) { _currentIndex++; EnsureLength("Path ended with open indexer."); if (_expression[_currentIndex] != '(') throw new JsonException("Unexpected character while parsing path indexer: " + _expression[_currentIndex]); _currentIndex++; QueryExpression expression = ParseExpression(); _currentIndex++; EnsureLength("Path ended with open indexer."); EatWhitespace(); if (_expression[_currentIndex] != indexerCloseChar) throw new JsonException("Unexpected character while parsing path indexer: " + _expression[_currentIndex]); return new QueryFilter { Expression = expression }; } private QueryExpression ParseExpression() { QueryExpression rootExpression = null; CompositeExpression parentExpression = null; while (_currentIndex < _expression.Length) { EatWhitespace(); if (_expression[_currentIndex] != '@') throw new JsonException("Unexpected character while parsing path query: " + _expression[_currentIndex]); _currentIndex++; List expressionPath = new List(); if (ParsePath(expressionPath, _currentIndex, true)) throw new JsonException("Path ended with open query."); EatWhitespace(); EnsureLength("Path ended with open query."); QueryOperator op; object value = null; if (_expression[_currentIndex] == ')' || _expression[_currentIndex] == '|' || _expression[_currentIndex] == '&') { op = QueryOperator.Exists; } else { op = ParseOperator(); EatWhitespace(); EnsureLength("Path ended with open query."); value = ParseValue(); EatWhitespace(); EnsureLength("Path ended with open query."); } BooleanQueryExpression booleanExpression = new BooleanQueryExpression { Path = expressionPath, Operator = op, Value = (op != QueryOperator.Exists) ? new JValue(value) : null }; if (_expression[_currentIndex] == ')') { if (parentExpression != null) { parentExpression.Expressions.Add(booleanExpression); return rootExpression; } return booleanExpression; } if (_expression[_currentIndex] == '&' && Match("&&")) { if (parentExpression == null || parentExpression.Operator != QueryOperator.And) { CompositeExpression andExpression = new CompositeExpression { Operator = QueryOperator.And }; if (parentExpression != null) parentExpression.Expressions.Add(andExpression); parentExpression = andExpression; if (rootExpression == null) rootExpression = parentExpression; } parentExpression.Expressions.Add(booleanExpression); } if (_expression[_currentIndex] == '|' && Match("||")) { if (parentExpression == null || parentExpression.Operator != QueryOperator.Or) { CompositeExpression orExpression = new CompositeExpression { Operator = QueryOperator.Or }; if (parentExpression != null) parentExpression.Expressions.Add(orExpression); parentExpression = orExpression; if (rootExpression == null) rootExpression = parentExpression; } parentExpression.Expressions.Add(booleanExpression); } } throw new JsonException("Path ended with open query."); } private object ParseValue() { char currentChar = _expression[_currentIndex]; if (currentChar == '\'') { return ReadQuotedString(); } else if (char.IsDigit(currentChar) || currentChar == '-') { StringBuilder sb = new StringBuilder(); sb.Append(currentChar); _currentIndex++; while (_currentIndex < _expression.Length) { currentChar = _expression[_currentIndex]; if (currentChar == ' ' || currentChar == ')') { string numberText = sb.ToString(); if (numberText.IndexOfAny(new char[] { '.', 'E', 'e' }) != -1) { double d; if (double.TryParse(numberText, NumberStyles.Float | NumberStyles.AllowThousands, CultureInfo.InvariantCulture, out d)) return d; else throw new JsonException("Could not read query value."); } else { long l; if (long.TryParse(numberText, NumberStyles.Integer, CultureInfo.InvariantCulture, out l)) return l; else throw new JsonException("Could not read query value."); } } else { sb.Append(currentChar); _currentIndex++; } } } else if (currentChar == 't') { if (Match("true")) return true; } else if (currentChar == 'f') { if (Match("false")) return false; } else if (currentChar == 'n') { if (Match("null")) return null; } throw new JsonException("Could not read query value."); } private string ReadQuotedString() { StringBuilder sb = new StringBuilder(); _currentIndex++; while (_currentIndex < _expression.Length) { char currentChar = _expression[_currentIndex]; if (currentChar == '\\' && _currentIndex + 1 < _expression.Length) { _currentIndex++; if (_expression[_currentIndex] == '\'') sb.Append('\''); else if (_expression[_currentIndex] == '\\') sb.Append('\\'); else throw new JsonException(@"Unknown escape chracter: \" + _expression[_currentIndex]); _currentIndex++; } else if (currentChar == '\'') { _currentIndex++; { return sb.ToString(); } } else { _currentIndex++; sb.Append(currentChar); } } throw new JsonException("Path ended with an open string."); } private bool Match(string s) { int currentPosition = _currentIndex; foreach (char c in s) { if (currentPosition < _expression.Length && _expression[currentPosition] == c) currentPosition++; else return false; } _currentIndex = currentPosition; return true; } private QueryOperator ParseOperator() { if (_currentIndex + 1 >= _expression.Length) throw new JsonException("Path ended with open query."); if (Match("==")) return QueryOperator.Equals; if (Match("!=") || Match("<>")) return QueryOperator.NotEquals; if (Match("<=")) return QueryOperator.LessThanOrEquals; if (Match("<")) return QueryOperator.LessThan; if (Match(">=")) return QueryOperator.GreaterThanOrEquals; if (Match(">")) return QueryOperator.GreaterThan; throw new JsonException("Could not read query operator."); } private PathFilter ParseQuotedField(char indexerCloseChar) { List fields = null; while (_currentIndex < _expression.Length) { string field = ReadQuotedString(); EatWhitespace(); EnsureLength("Path ended with open indexer."); if (_expression[_currentIndex] == indexerCloseChar) { if (fields != null) { fields.Add(field); return new FieldMultipleFilter { Names = fields }; } else { return new FieldFilter { Name = field }; } } else if (_expression[_currentIndex] == ',') { _currentIndex++; EatWhitespace(); if (fields == null) fields = new List(); fields.Add(field); } else { throw new JsonException("Unexpected character while parsing path indexer: " + _expression[_currentIndex]); } } throw new JsonException("Path ended with open indexer."); } private void EnsureLength(string message) { if (_currentIndex >= _expression.Length) throw new JsonException(message); } internal IEnumerable Evaluate(JToken t, bool errorWhenNoMatch) { return Evaluate(Filters, t, errorWhenNoMatch); } internal static IEnumerable Evaluate(List filters, JToken t, bool errorWhenNoMatch) { IEnumerable current = new[] { t }; foreach (PathFilter filter in filters) { current = filter.ExecuteFilter(current, errorWhenNoMatch); } return current; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JToken.cs0000664000175000017500000027572312454416117023702 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Linq.JsonPath; #if !(NET35 || NET20 || PORTABLE40) using System.Dynamic; using System.Linq.Expressions; #endif using System.IO; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) using System.Numerics; #endif using System.Text; using Newtonsoft.Json.Utilities; using System.Diagnostics; using System.Globalization; using System.Collections; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Linq { /// /// Represents an abstract JSON token. /// public abstract class JToken : IJEnumerable, IJsonLineInfo #if !(NETFX_CORE || PORTABLE40 || PORTABLE) , ICloneable #endif #if !(NET35 || NET20 || PORTABLE40) , IDynamicMetaObjectProvider #endif { private static JTokenEqualityComparer _equalityComparer; private JContainer _parent; private JToken _previous; private JToken _next; private object _annotations; private static readonly JTokenType[] BooleanTypes = new[] { JTokenType.Integer, JTokenType.Float, JTokenType.String, JTokenType.Comment, JTokenType.Raw, JTokenType.Boolean }; private static readonly JTokenType[] NumberTypes = new[] { JTokenType.Integer, JTokenType.Float, JTokenType.String, JTokenType.Comment, JTokenType.Raw, JTokenType.Boolean }; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) private static readonly JTokenType[] BigIntegerTypes = new[] { JTokenType.Integer, JTokenType.Float, JTokenType.String, JTokenType.Comment, JTokenType.Raw, JTokenType.Boolean, JTokenType.Bytes }; #endif private static readonly JTokenType[] StringTypes = new[] { JTokenType.Date, JTokenType.Integer, JTokenType.Float, JTokenType.String, JTokenType.Comment, JTokenType.Raw, JTokenType.Boolean, JTokenType.Bytes, JTokenType.Guid, JTokenType.TimeSpan, JTokenType.Uri }; private static readonly JTokenType[] GuidTypes = new[] { JTokenType.String, JTokenType.Comment, JTokenType.Raw, JTokenType.Guid, JTokenType.Bytes }; private static readonly JTokenType[] TimeSpanTypes = new[] { JTokenType.String, JTokenType.Comment, JTokenType.Raw, JTokenType.TimeSpan }; private static readonly JTokenType[] UriTypes = new[] { JTokenType.String, JTokenType.Comment, JTokenType.Raw, JTokenType.Uri }; private static readonly JTokenType[] CharTypes = new[] { JTokenType.Integer, JTokenType.Float, JTokenType.String, JTokenType.Comment, JTokenType.Raw }; private static readonly JTokenType[] DateTimeTypes = new[] { JTokenType.Date, JTokenType.String, JTokenType.Comment, JTokenType.Raw }; private static readonly JTokenType[] BytesTypes = new[] { JTokenType.Bytes, JTokenType.String, JTokenType.Comment, JTokenType.Raw, JTokenType.Integer }; /// /// Gets a comparer that can compare two tokens for value equality. /// /// A that can compare two nodes for value equality. public static JTokenEqualityComparer EqualityComparer { get { if (_equalityComparer == null) _equalityComparer = new JTokenEqualityComparer(); return _equalityComparer; } } /// /// Gets or sets the parent. /// /// The parent. public JContainer Parent { [DebuggerStepThrough] get { return _parent; } internal set { _parent = value; } } /// /// Gets the root of this . /// /// The root of this . public JToken Root { get { JContainer parent = Parent; if (parent == null) return this; while (parent.Parent != null) { parent = parent.Parent; } return parent; } } internal abstract JToken CloneToken(); internal abstract bool DeepEquals(JToken node); /// /// Gets the node type for this . /// /// The type. public abstract JTokenType Type { get; } /// /// Gets a value indicating whether this token has child tokens. /// /// /// true if this token has child values; otherwise, false. /// public abstract bool HasValues { get; } /// /// Compares the values of two tokens, including the values of all descendant tokens. /// /// The first to compare. /// The second to compare. /// true if the tokens are equal; otherwise false. public static bool DeepEquals(JToken t1, JToken t2) { return (t1 == t2 || (t1 != null && t2 != null && t1.DeepEquals(t2))); } /// /// Gets the next sibling token of this node. /// /// The that contains the next sibling token. public JToken Next { get { return _next; } internal set { _next = value; } } /// /// Gets the previous sibling token of this node. /// /// The that contains the previous sibling token. public JToken Previous { get { return _previous; } internal set { _previous = value; } } /// /// Gets the path of the JSON token. /// public string Path { get { if (Parent == null) return string.Empty; IList ancestors = AncestorsAndSelf().Reverse().ToList(); IList positions = new List(); for (int i = 0; i < ancestors.Count; i++) { JToken current = ancestors[i]; JToken next = null; if (i + 1 < ancestors.Count) next = ancestors[i + 1]; else if (ancestors[i].Type == JTokenType.Property) next = ancestors[i]; if (next != null) { switch (current.Type) { case JTokenType.Property: JProperty property = (JProperty)current; positions.Add(new JsonPosition(JsonContainerType.Object) { PropertyName = property.Name }); break; case JTokenType.Array: case JTokenType.Constructor: int index = ((IList)current).IndexOf(next); positions.Add(new JsonPosition(JsonContainerType.Array) { Position = index }); break; } } } return JsonPosition.BuildPath(positions); } } internal JToken() { } /// /// Adds the specified content immediately after this token. /// /// A content object that contains simple content or a collection of content objects to be added after this token. public void AddAfterSelf(object content) { if (_parent == null) throw new InvalidOperationException("The parent is missing."); int index = _parent.IndexOfItem(this); _parent.AddInternal(index + 1, content, false); } /// /// Adds the specified content immediately before this token. /// /// A content object that contains simple content or a collection of content objects to be added before this token. public void AddBeforeSelf(object content) { if (_parent == null) throw new InvalidOperationException("The parent is missing."); int index = _parent.IndexOfItem(this); _parent.AddInternal(index, content, false); } /// /// Returns a collection of the ancestor tokens of this token. /// /// A collection of the ancestor tokens of this token. public IEnumerable Ancestors() { return GetAncestors(false); } /// /// Returns a collection of tokens that contain this token, and the ancestors of this token. /// /// A collection of tokens that contain this token, and the ancestors of this token. public IEnumerable AncestorsAndSelf() { return GetAncestors(true); } internal IEnumerable GetAncestors(bool self) { for (JToken current = self ? this : Parent; current != null; current = current.Parent) { yield return current; } } /// /// Returns a collection of the sibling tokens after this token, in document order. /// /// A collection of the sibling tokens after this tokens, in document order. public IEnumerable AfterSelf() { if (Parent == null) yield break; for (JToken o = Next; o != null; o = o.Next) { yield return o; } } /// /// Returns a collection of the sibling tokens before this token, in document order. /// /// A collection of the sibling tokens before this token, in document order. public IEnumerable BeforeSelf() { for (JToken o = Parent.First; o != this; o = o.Next) { yield return o; } } /// /// Gets the with the specified key. /// /// The with the specified key. public virtual JToken this[object key] { get { throw new InvalidOperationException("Cannot access child value on {0}.".FormatWith(CultureInfo.InvariantCulture, GetType())); } set { throw new InvalidOperationException("Cannot set child value on {0}.".FormatWith(CultureInfo.InvariantCulture, GetType())); } } /// /// Gets the with the specified key converted to the specified type. /// /// The type to convert the token to. /// The token key. /// The converted token value. public virtual T Value(object key) { JToken token = this[key]; // null check to fix MonoTouch issue - https://github.com/dolbz/Newtonsoft.Json/commit/a24e3062846b30ee505f3271ac08862bb471b822 return token == null ? default(T) : Extensions.Convert(token); } /// /// Get the first child token of this token. /// /// A containing the first child token of the . public virtual JToken First { get { throw new InvalidOperationException("Cannot access child value on {0}.".FormatWith(CultureInfo.InvariantCulture, GetType())); } } /// /// Get the last child token of this token. /// /// A containing the last child token of the . public virtual JToken Last { get { throw new InvalidOperationException("Cannot access child value on {0}.".FormatWith(CultureInfo.InvariantCulture, GetType())); } } /// /// Returns a collection of the child tokens of this token, in document order. /// /// An of containing the child tokens of this , in document order. public virtual JEnumerable Children() { return JEnumerable.Empty; } /// /// Returns a collection of the child tokens of this token, in document order, filtered by the specified type. /// /// The type to filter the child tokens on. /// A containing the child tokens of this , in document order. public JEnumerable Children() where T : JToken { return new JEnumerable(Children().OfType()); } /// /// Returns a collection of the child values of this token, in document order. /// /// The type to convert the values to. /// A containing the child values of this , in document order. public virtual IEnumerable Values() { throw new InvalidOperationException("Cannot access child value on {0}.".FormatWith(CultureInfo.InvariantCulture, GetType())); } /// /// Removes this token from its parent. /// public void Remove() { if (_parent == null) throw new InvalidOperationException("The parent is missing."); _parent.RemoveItem(this); } /// /// Replaces this token with the specified token. /// /// The value. public void Replace(JToken value) { if (_parent == null) throw new InvalidOperationException("The parent is missing."); _parent.ReplaceItem(this, value); } /// /// Writes this token to a . /// /// A into which this method will write. /// A collection of which will be used when writing the token. public abstract void WriteTo(JsonWriter writer, params JsonConverter[] converters); /// /// Returns the indented JSON for this token. /// /// /// The indented JSON for this token. /// public override string ToString() { return ToString(Formatting.Indented); } /// /// Returns the JSON for this token using the given formatting and converters. /// /// Indicates how the output is formatted. /// A collection of which will be used when writing the token. /// The JSON for this token using the given formatting and converters. public string ToString(Formatting formatting, params JsonConverter[] converters) { using (StringWriter sw = new StringWriter(CultureInfo.InvariantCulture)) { JsonTextWriter jw = new JsonTextWriter(sw); jw.Formatting = formatting; WriteTo(jw, converters); return sw.ToString(); } } private static JValue EnsureValue(JToken value) { if (value == null) throw new ArgumentNullException("value"); if (value is JProperty) value = ((JProperty)value).Value; JValue v = value as JValue; return v; } private static string GetType(JToken token) { ValidationUtils.ArgumentNotNull(token, "token"); if (token is JProperty) token = ((JProperty)token).Value; return token.Type.ToString(); } private static bool ValidateToken(JToken o, JTokenType[] validTypes, bool nullable) { return (Array.IndexOf(validTypes, o.Type) != -1) || (nullable && (o.Type == JTokenType.Null || o.Type == JTokenType.Undefined)); } #region Cast from operators /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator bool(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, BooleanTypes, false)) throw new ArgumentException("Can not convert {0} to Boolean.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return Convert.ToBoolean((int)(BigInteger)v.Value); #endif return Convert.ToBoolean(v.Value, CultureInfo.InvariantCulture); } #if !NET20 /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator DateTimeOffset(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, DateTimeTypes, false)) throw new ArgumentException("Can not convert {0} to DateTimeOffset.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); if (v.Value is DateTimeOffset) return (DateTimeOffset)v.Value; if (v.Value is string) return DateTimeOffset.Parse((string)v.Value, CultureInfo.InvariantCulture); return new DateTimeOffset(Convert.ToDateTime(v.Value, CultureInfo.InvariantCulture)); } #endif /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator bool?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, BooleanTypes, true)) throw new ArgumentException("Can not convert {0} to Boolean.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return Convert.ToBoolean((int)(BigInteger)v.Value); #endif return (v.Value != null) ? (bool?)Convert.ToBoolean(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator long(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to Int64.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (long)(BigInteger)v.Value; #endif return Convert.ToInt64(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator DateTime?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, DateTimeTypes, true)) throw new ArgumentException("Can not convert {0} to DateTime.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !NET20 if (v.Value is DateTimeOffset) return ((DateTimeOffset)v.Value).DateTime; #endif return (v.Value != null) ? (DateTime?)Convert.ToDateTime(v.Value, CultureInfo.InvariantCulture) : null; } #if !NET20 /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator DateTimeOffset?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, DateTimeTypes, true)) throw new ArgumentException("Can not convert {0} to DateTimeOffset.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); if (v.Value == null) return null; if (v.Value is DateTimeOffset) return (DateTimeOffset?)v.Value; if (v.Value is string) return DateTimeOffset.Parse((string)v.Value, CultureInfo.InvariantCulture); return new DateTimeOffset(Convert.ToDateTime(v.Value, CultureInfo.InvariantCulture)); } #endif /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator decimal?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to Decimal.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (decimal?)(BigInteger)v.Value; #endif return (v.Value != null) ? (decimal?)Convert.ToDecimal(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator double?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to Double.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (double?)(BigInteger)v.Value; #endif return (v.Value != null) ? (double?)Convert.ToDouble(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator char?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, CharTypes, true)) throw new ArgumentException("Can not convert {0} to Char.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (char?)(BigInteger)v.Value; #endif return (v.Value != null) ? (char?)Convert.ToChar(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator int(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to Int32.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (int)(BigInteger)v.Value; #endif return Convert.ToInt32(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator short(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to Int16.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (short)(BigInteger)v.Value; #endif return Convert.ToInt16(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. [CLSCompliant(false)] public static explicit operator ushort(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to UInt16.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (ushort)(BigInteger)v.Value; #endif return Convert.ToUInt16(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. [CLSCompliant(false)] public static explicit operator char(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, CharTypes, false)) throw new ArgumentException("Can not convert {0} to Char.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (char)(BigInteger)v.Value; #endif return Convert.ToChar(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator byte(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to Byte.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (byte)(BigInteger)v.Value; #endif return Convert.ToByte(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. [CLSCompliant(false)] public static explicit operator sbyte(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to SByte.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (sbyte)(BigInteger)v.Value; #endif return Convert.ToSByte(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator int?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to Int32.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (int?)(BigInteger)v.Value; #endif return (v.Value != null) ? (int?)Convert.ToInt32(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator short?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to Int16.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (short?)(BigInteger)v.Value; #endif return (v.Value != null) ? (short?)Convert.ToInt16(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. [CLSCompliant(false)] public static explicit operator ushort?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to UInt16.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (ushort?)(BigInteger)v.Value; #endif return (v.Value != null) ? (ushort?)Convert.ToUInt16(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator byte?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to Byte.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (byte?)(BigInteger)v.Value; #endif return (v.Value != null) ? (byte?)Convert.ToByte(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. [CLSCompliant(false)] public static explicit operator sbyte?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to SByte.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (sbyte?)(BigInteger)v.Value; #endif return (v.Value != null) ? (sbyte?)Convert.ToSByte(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator DateTime(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, DateTimeTypes, false)) throw new ArgumentException("Can not convert {0} to DateTime.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !NET20 if (v.Value is DateTimeOffset) return ((DateTimeOffset)v.Value).DateTime; #endif return Convert.ToDateTime(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator long?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to Int64.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (long?)(BigInteger)v.Value; #endif return (v.Value != null) ? (long?)Convert.ToInt64(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator float?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to Single.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (float?)(BigInteger)v.Value; #endif return (v.Value != null) ? (float?)Convert.ToSingle(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator decimal(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to Decimal.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (decimal)(BigInteger)v.Value; #endif return Convert.ToDecimal(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. [CLSCompliant(false)] public static explicit operator uint?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to UInt32.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (uint?)(BigInteger)v.Value; #endif return (v.Value != null) ? (uint?)Convert.ToUInt32(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. [CLSCompliant(false)] public static explicit operator ulong?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, true)) throw new ArgumentException("Can not convert {0} to UInt64.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (ulong?)(BigInteger)v.Value; #endif return (v.Value != null) ? (ulong?)Convert.ToUInt64(v.Value, CultureInfo.InvariantCulture) : null; } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator double(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to Double.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (double)(BigInteger)v.Value; #endif return Convert.ToDouble(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator float(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to Single.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (float)(BigInteger)v.Value; #endif return Convert.ToSingle(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator string(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, StringTypes, true)) throw new ArgumentException("Can not convert {0} to String.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); if (v.Value == null) return null; if (v.Value is byte[]) return Convert.ToBase64String((byte[])v.Value); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return ((BigInteger)v.Value).ToString(CultureInfo.InvariantCulture); #endif return Convert.ToString(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. [CLSCompliant(false)] public static explicit operator uint(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to UInt32.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (uint)(BigInteger)v.Value; #endif return Convert.ToUInt32(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. [CLSCompliant(false)] public static explicit operator ulong(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, NumberTypes, false)) throw new ArgumentException("Can not convert {0} to UInt64.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return (ulong)(BigInteger)v.Value; #endif return Convert.ToUInt64(v.Value, CultureInfo.InvariantCulture); } /// /// Performs an explicit conversion from to []. /// /// The value. /// The result of the conversion. public static explicit operator byte[](JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, BytesTypes, false)) throw new ArgumentException("Can not convert {0} to byte array.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); if (v.Value is string) return Convert.FromBase64String(Convert.ToString(v.Value, CultureInfo.InvariantCulture)); #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (v.Value is BigInteger) return ((BigInteger)v.Value).ToByteArray(); #endif if (v.Value is byte[]) return (byte[])v.Value; throw new ArgumentException("Can not convert {0} to byte array.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator Guid(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, GuidTypes, false)) throw new ArgumentException("Can not convert {0} to Guid.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); if (v.Value is byte[]) return new Guid((byte[])v.Value); return (v.Value is Guid) ? (Guid)v.Value : new Guid(Convert.ToString(v.Value, CultureInfo.InvariantCulture)); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator Guid?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, GuidTypes, true)) throw new ArgumentException("Can not convert {0} to Guid.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); if (v.Value == null) return null; if (v.Value is byte[]) return new Guid((byte[])v.Value); return (v.Value is Guid) ? (Guid)v.Value : new Guid(Convert.ToString(v.Value, CultureInfo.InvariantCulture)); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator TimeSpan(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, TimeSpanTypes, false)) throw new ArgumentException("Can not convert {0} to TimeSpan.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); return (v.Value is TimeSpan) ? (TimeSpan)v.Value : ConvertUtils.ParseTimeSpan(Convert.ToString(v.Value, CultureInfo.InvariantCulture)); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator TimeSpan?(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, TimeSpanTypes, true)) throw new ArgumentException("Can not convert {0} to TimeSpan.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); if (v.Value == null) return null; return (v.Value is TimeSpan) ? (TimeSpan)v.Value : ConvertUtils.ParseTimeSpan(Convert.ToString(v.Value, CultureInfo.InvariantCulture)); } /// /// Performs an explicit conversion from to . /// /// The value. /// The result of the conversion. public static explicit operator Uri(JToken value) { if (value == null) return null; JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, UriTypes, true)) throw new ArgumentException("Can not convert {0} to Uri.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); if (v.Value == null) return null; return (v.Value is Uri) ? (Uri)v.Value : new Uri(Convert.ToString(v.Value, CultureInfo.InvariantCulture)); } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) private static BigInteger ToBigInteger(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, BigIntegerTypes, false)) throw new ArgumentException("Can not convert {0} to BigInteger.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); return ConvertUtils.ToBigInteger(v.Value); } private static BigInteger? ToBigIntegerNullable(JToken value) { JValue v = EnsureValue(value); if (v == null || !ValidateToken(v, BigIntegerTypes, true)) throw new ArgumentException("Can not convert {0} to BigInteger.".FormatWith(CultureInfo.InvariantCulture, GetType(value))); if (v.Value == null) return null; return ConvertUtils.ToBigInteger(v.Value); } #endif #endregion #region Cast to operators /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(bool value) { return new JValue(value); } #if !NET20 /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(DateTimeOffset value) { return new JValue(value); } #endif /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(byte value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(byte? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(sbyte value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(sbyte? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(bool? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(long value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(DateTime? value) { return new JValue(value); } #if !NET20 /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(DateTimeOffset? value) { return new JValue(value); } #endif /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(decimal? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(double? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(short value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(ushort value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(int value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(int? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(DateTime value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(long? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(float? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(decimal value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(short? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(ushort? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(uint? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(ulong? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(double value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(float value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(string value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(uint value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. [CLSCompliant(false)] public static implicit operator JToken(ulong value) { return new JValue(value); } /// /// Performs an implicit conversion from [] to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(byte[] value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(Uri value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(TimeSpan value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(TimeSpan? value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(Guid value) { return new JValue(value); } /// /// Performs an implicit conversion from to . /// /// The value to create a from. /// The initialized with the specified value. public static implicit operator JToken(Guid? value) { return new JValue(value); } #endregion IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable)this).GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return Children().GetEnumerator(); } internal abstract int GetDeepHashCode(); IJEnumerable IJEnumerable.this[object key] { get { return this[key]; } } /// /// Creates an for this token. /// /// An that can be used to read this token and its descendants. public JsonReader CreateReader() { return new JTokenReader(this, Path); } internal static JToken FromObjectInternal(object o, JsonSerializer jsonSerializer) { ValidationUtils.ArgumentNotNull(o, "o"); ValidationUtils.ArgumentNotNull(jsonSerializer, "jsonSerializer"); JToken token; using (JTokenWriter jsonWriter = new JTokenWriter()) { jsonSerializer.Serialize(jsonWriter, o); token = jsonWriter.Token; } return token; } /// /// Creates a from an object. /// /// The object that will be used to create . /// A with the value of the specified object public static JToken FromObject(object o) { return FromObjectInternal(o, JsonSerializer.CreateDefault()); } /// /// Creates a from an object using the specified . /// /// The object that will be used to create . /// The that will be used when reading the object. /// A with the value of the specified object public static JToken FromObject(object o, JsonSerializer jsonSerializer) { return FromObjectInternal(o, jsonSerializer); } /// /// Creates the specified .NET type from the . /// /// The object type that the token will be deserialized to. /// The new object created from the JSON value. public T ToObject() { return (T)ToObject(typeof(T)); } /// /// Creates the specified .NET type from the . /// /// The object type that the token will be deserialized to. /// The new object created from the JSON value. public object ToObject(Type objectType) { if (JsonConvert.DefaultSettings == null) { bool isEnum; PrimitiveTypeCode typeCode = ConvertUtils.GetTypeCode(objectType, out isEnum); if (isEnum && Type == JTokenType.String) { Type enumType = objectType.IsEnum() ? objectType : Nullable.GetUnderlyingType(objectType); try { return Enum.Parse(enumType, (string)this, true); } catch (Exception ex) { throw new ArgumentException("Could not convert '{0}' to {1}.".FormatWith(CultureInfo.InvariantCulture, (string)this, enumType.Name), ex); } } switch (typeCode) { case PrimitiveTypeCode.BooleanNullable: return (bool?)this; case PrimitiveTypeCode.Boolean: return (bool)this; case PrimitiveTypeCode.CharNullable: return (char?)this; case PrimitiveTypeCode.Char: return (char)this; case PrimitiveTypeCode.SByte: return (sbyte?)this; case PrimitiveTypeCode.SByteNullable: return (sbyte)this; case PrimitiveTypeCode.ByteNullable: return (byte?)this; case PrimitiveTypeCode.Byte: return (byte)this; case PrimitiveTypeCode.Int16Nullable: return (short?)this; case PrimitiveTypeCode.Int16: return (short)this; case PrimitiveTypeCode.UInt16Nullable: return (ushort?)this; case PrimitiveTypeCode.UInt16: return (ushort)this; case PrimitiveTypeCode.Int32Nullable: return (int?)this; case PrimitiveTypeCode.Int32: return (int)this; case PrimitiveTypeCode.UInt32Nullable: return (uint?)this; case PrimitiveTypeCode.UInt32: return (uint)this; case PrimitiveTypeCode.Int64Nullable: return (long?)this; case PrimitiveTypeCode.Int64: return (long)this; case PrimitiveTypeCode.UInt64Nullable: return (ulong?)this; case PrimitiveTypeCode.UInt64: return (ulong)this; case PrimitiveTypeCode.SingleNullable: return (float?)this; case PrimitiveTypeCode.Single: return (float)this; case PrimitiveTypeCode.DoubleNullable: return (double?)this; case PrimitiveTypeCode.Double: return (double)this; case PrimitiveTypeCode.DecimalNullable: return (decimal?)this; case PrimitiveTypeCode.Decimal: return (decimal)this; case PrimitiveTypeCode.DateTimeNullable: return (DateTime?)this; case PrimitiveTypeCode.DateTime: return (DateTime)this; #if !NET20 case PrimitiveTypeCode.DateTimeOffsetNullable: return (DateTimeOffset?)this; case PrimitiveTypeCode.DateTimeOffset: return (DateTimeOffset)this; #endif case PrimitiveTypeCode.String: return (string)this; case PrimitiveTypeCode.GuidNullable: return (Guid?)this; case PrimitiveTypeCode.Guid: return (Guid)this; case PrimitiveTypeCode.Uri: return (Uri)this; case PrimitiveTypeCode.TimeSpanNullable: return (TimeSpan?)this; case PrimitiveTypeCode.TimeSpan: return (TimeSpan)this; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) case PrimitiveTypeCode.BigIntegerNullable: return ToBigIntegerNullable(this); case PrimitiveTypeCode.BigInteger: return ToBigInteger(this); #endif } } return ToObject(objectType, JsonSerializer.CreateDefault()); } /// /// Creates the specified .NET type from the using the specified . /// /// The object type that the token will be deserialized to. /// The that will be used when creating the object. /// The new object created from the JSON value. public T ToObject(JsonSerializer jsonSerializer) { return (T)ToObject(typeof(T), jsonSerializer); } /// /// Creates the specified .NET type from the using the specified . /// /// The object type that the token will be deserialized to. /// The that will be used when creating the object. /// The new object created from the JSON value. public object ToObject(Type objectType, JsonSerializer jsonSerializer) { ValidationUtils.ArgumentNotNull(jsonSerializer, "jsonSerializer"); using (JTokenReader jsonReader = new JTokenReader(this)) { return jsonSerializer.Deserialize(jsonReader, objectType); } } /// /// Creates a from a . /// /// An positioned at the token to read into this . /// /// An that contains the token and its descendant tokens /// that were read from the reader. The runtime type of the token is determined /// by the token type of the first token encountered in the reader. /// public static JToken ReadFrom(JsonReader reader) { ValidationUtils.ArgumentNotNull(reader, "reader"); if (reader.TokenType == JsonToken.None) { if (!reader.Read()) throw JsonReaderException.Create(reader, "Error reading JToken from JsonReader."); } IJsonLineInfo lineInfo = reader as IJsonLineInfo; switch (reader.TokenType) { case JsonToken.StartObject: return JObject.Load(reader); case JsonToken.StartArray: return JArray.Load(reader); case JsonToken.StartConstructor: return JConstructor.Load(reader); case JsonToken.PropertyName: return JProperty.Load(reader); case JsonToken.String: case JsonToken.Integer: case JsonToken.Float: case JsonToken.Date: case JsonToken.Boolean: case JsonToken.Bytes: JValue v = new JValue(reader.Value); v.SetLineInfo(lineInfo); return v; case JsonToken.Comment: v = JValue.CreateComment(reader.Value.ToString()); v.SetLineInfo(lineInfo); return v; case JsonToken.Null: v = JValue.CreateNull(); v.SetLineInfo(lineInfo); return v; case JsonToken.Undefined: v = JValue.CreateUndefined(); v.SetLineInfo(lineInfo); return v; default: throw JsonReaderException.Create(reader, "Error reading JToken from JsonReader. Unexpected token: {0}".FormatWith(CultureInfo.InvariantCulture, reader.TokenType)); } } /// /// Load a from a string that contains JSON. /// /// A that contains JSON. /// A populated from the string that contains JSON. public static JToken Parse(string json) { using (JsonReader reader = new JsonTextReader(new StringReader(json))) { JToken t = Load(reader); if (reader.Read() && reader.TokenType != JsonToken.Comment) throw JsonReaderException.Create(reader, "Additional text found in JSON string after parsing content."); return t; } } /// /// Creates a from a . /// /// An positioned at the token to read into this . /// /// An that contains the token and its descendant tokens /// that were read from the reader. The runtime type of the token is determined /// by the token type of the first token encountered in the reader. /// public static JToken Load(JsonReader reader) { return ReadFrom(reader); } internal void SetLineInfo(IJsonLineInfo lineInfo) { if (lineInfo == null || !lineInfo.HasLineInfo()) return; SetLineInfo(lineInfo.LineNumber, lineInfo.LinePosition); } private class LineInfoAnnotation { internal readonly int LineNumber; internal readonly int LinePosition; public LineInfoAnnotation(int lineNumber, int linePosition) { LineNumber = lineNumber; LinePosition = linePosition; } } internal void SetLineInfo(int lineNumber, int linePosition) { AddAnnotation(new LineInfoAnnotation(lineNumber, linePosition)); } bool IJsonLineInfo.HasLineInfo() { return (Annotation() != null); } int IJsonLineInfo.LineNumber { get { LineInfoAnnotation annotation = Annotation(); if (annotation != null) return annotation.LineNumber; return 0; } } int IJsonLineInfo.LinePosition { get { LineInfoAnnotation annotation = Annotation(); if (annotation != null) return annotation.LinePosition; return 0; } } /// /// Selects a using a JPath expression. Selects the token that matches the object path. /// /// /// A that contains a JPath expression. /// /// A , or null. public JToken SelectToken(string path) { return SelectToken(path, false); } /// /// Selects a using a JPath expression. Selects the token that matches the object path. /// /// /// A that contains a JPath expression. /// /// A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. /// A . public JToken SelectToken(string path, bool errorWhenNoMatch) { JPath p = new JPath(path); JToken token = null; foreach (JToken t in p.Evaluate(this, errorWhenNoMatch)) { if (token != null) throw new JsonException("Path returned multiple tokens."); token = t; } return token; } /// /// Selects a collection of elements using a JPath expression. /// /// /// A that contains a JPath expression. /// /// An that contains the selected elements. public IEnumerable SelectTokens(string path) { return SelectTokens(path, false); } /// /// Selects a collection of elements using a JPath expression. /// /// /// A that contains a JPath expression. /// /// A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. /// An that contains the selected elements. public IEnumerable SelectTokens(string path, bool errorWhenNoMatch) { JPath p = new JPath(path); return p.Evaluate(this, errorWhenNoMatch); } #if !(NET35 || NET20 || PORTABLE40) /// /// Returns the responsible for binding operations performed on this object. /// /// The expression tree representation of the runtime value. /// /// The to bind this object. /// protected virtual DynamicMetaObject GetMetaObject(Expression parameter) { return new DynamicProxyMetaObject(parameter, this, new DynamicProxy(), true); } /// /// Returns the responsible for binding operations performed on this object. /// /// The expression tree representation of the runtime value. /// /// The to bind this object. /// DynamicMetaObject IDynamicMetaObjectProvider.GetMetaObject(Expression parameter) { return GetMetaObject(parameter); } #endif #if !(NETFX_CORE || PORTABLE || PORTABLE40) object ICloneable.Clone() { return DeepClone(); } #endif /// /// Creates a new instance of the . All child tokens are recursively cloned. /// /// A new instance of the . public JToken DeepClone() { return CloneToken(); } /// /// Adds an object to the annotation list of this . /// /// The annotation to add. public void AddAnnotation(object annotation) { if (annotation == null) throw new ArgumentNullException("annotation"); if (_annotations == null) { _annotations = (annotation is object[]) ? new [] { annotation } : annotation; } else { object[] annotations = _annotations as object[]; if (annotations == null) { _annotations = new [] { _annotations, annotation }; } else { int index = 0; while (index < annotations.Length && annotations[index] != null) { index++; } if (index == annotations.Length) { Array.Resize(ref annotations, index * 2); _annotations = annotations; } annotations[index] = annotation; } } } /// /// Get the first annotation object of the specified type from this . /// /// The type of the annotation to retrieve. /// The first annotation object that matches the specified type, or null if no annotation is of the specified type. public T Annotation() where T : class { if (_annotations != null) { object[] annotations = _annotations as object[]; if (annotations == null) { return (_annotations as T); } for (int i = 0; i < annotations.Length; i++) { object annotation = annotations[i]; if (annotation == null) break; T local = annotation as T; if (local != null) return local; } } return default(T); } /// /// Gets the first annotation object of the specified type from this . /// /// The of the annotation to retrieve. /// The first annotation object that matches the specified type, or null if no annotation is of the specified type. public object Annotation(Type type) { if (type == null) throw new ArgumentNullException("type"); if (_annotations != null) { object[] annotations = _annotations as object[]; if (annotations == null) { if (type.IsInstanceOfType(_annotations)) return _annotations; } else { for (int i = 0; i < annotations.Length; i++) { object o = annotations[i]; if (o == null) break; if (type.IsInstanceOfType(o)) return o; } } } return null; } /// /// Gets a collection of annotations of the specified type for this . /// /// The type of the annotations to retrieve. /// An that contains the annotations for this . public IEnumerable Annotations() where T : class { if (_annotations == null) yield break; object[] annotations = _annotations as object[]; if (annotations != null) { for (int i = 0; i < annotations.Length; i++) { object o = annotations[i]; if (o == null) break; T casted = o as T; if (casted != null) yield return casted; } yield break; } T annotation = _annotations as T; if (annotation == null) yield break; yield return annotation; } /// /// Gets a collection of annotations of the specified type for this . /// /// The of the annotations to retrieve. /// An of that contains the annotations that match the specified type for this . public IEnumerable Annotations(Type type) { if (type == null) throw new ArgumentNullException("type"); if (_annotations == null) yield break; object[] annotations = _annotations as object[]; if (annotations != null) { for (int i = 0; i < annotations.Length; i++) { object o = annotations[i]; if (o == null) break; if (type.IsInstanceOfType(o)) yield return o; } yield break; } if (!type.IsInstanceOfType(_annotations)) yield break; yield return _annotations; } /// /// Removes the annotations of the specified type from this . /// /// The type of annotations to remove. public void RemoveAnnotations() where T : class { if (_annotations != null) { object[] annotations = _annotations as object[]; if (annotations == null) { if (_annotations is T) _annotations = null; } else { int index = 0; int keepCount = 0; while (index < annotations.Length) { object obj2 = annotations[index]; if (obj2 == null) break; if (!(obj2 is T)) annotations[keepCount++] = obj2; index++; } if (keepCount != 0) { while (keepCount < index) { annotations[keepCount++] = null; } } else { _annotations = null; } } } } /// /// Removes the annotations of the specified type from this . /// /// The of annotations to remove. public void RemoveAnnotations(Type type) { if (type == null) throw new ArgumentNullException("type"); if (_annotations != null) { object[] annotations = _annotations as object[]; if (annotations == null) { if (type.IsInstanceOfType(_annotations)) _annotations = null; } else { int index = 0; int keepCount = 0; while (index < annotations.Length) { object o = annotations[index]; if (o == null) break; if (!type.IsInstanceOfType(o)) annotations[keepCount++] = o; index++; } if (keepCount != 0) { while (keepCount < index) { annotations[keepCount++] = null; } } else { _annotations = null; } } } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JsonMergeSettings.cs0000664000175000017500000000145412454416117026106 0ustar directhexdirecthexusing System; namespace Newtonsoft.Json.Linq { /// /// Specifies the settings used when merging JSON. /// public class JsonMergeSettings { private MergeArrayHandling _mergeArrayHandling; /// /// Gets or sets the method used when merging JSON arrays. /// /// The method used when merging JSON arrays. public MergeArrayHandling MergeArrayHandling { get { return _mergeArrayHandling; } set { if (value < MergeArrayHandling.Concat || value > MergeArrayHandling.Merge) throw new ArgumentOutOfRangeException("value"); _mergeArrayHandling = value; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JTokenWriter.cs0000664000175000017500000003516012454416117025064 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) using System.Numerics; #endif using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Linq { /// /// Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. /// public class JTokenWriter : JsonWriter { private JContainer _token; private JContainer _parent; // used when writer is writing single value and the value has no containing parent private JValue _value; private JToken _current; /// /// Gets the at the writer's current position. /// public JToken CurrentToken { get { return _current; } } /// /// Gets the token being writen. /// /// The token being writen. public JToken Token { get { if (_token != null) return _token; return _value; } } /// /// Initializes a new instance of the class writing to the given . /// /// The container being written to. public JTokenWriter(JContainer container) { ValidationUtils.ArgumentNotNull(container, "container"); _token = container; _parent = container; } /// /// Initializes a new instance of the class. /// public JTokenWriter() { } /// /// Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. /// public override void Flush() { } /// /// Closes this stream and the underlying stream. /// public override void Close() { base.Close(); } /// /// Writes the beginning of a Json object. /// public override void WriteStartObject() { base.WriteStartObject(); AddParent(new JObject()); } private void AddParent(JContainer container) { if (_parent == null) _token = container; else _parent.AddAndSkipParentCheck(container); _parent = container; _current = container; } private void RemoveParent() { _current = _parent; _parent = _parent.Parent; if (_parent != null && _parent.Type == JTokenType.Property) _parent = _parent.Parent; } /// /// Writes the beginning of a Json array. /// public override void WriteStartArray() { base.WriteStartArray(); AddParent(new JArray()); } /// /// Writes the start of a constructor with the given name. /// /// The name of the constructor. public override void WriteStartConstructor(string name) { base.WriteStartConstructor(name); AddParent(new JConstructor(name)); } /// /// Writes the end. /// /// The token. protected override void WriteEnd(JsonToken token) { RemoveParent(); } /// /// Writes the property name of a name/value pair on a Json object. /// /// The name of the property. public override void WritePropertyName(string name) { AddParent(new JProperty(name)); // don't set state until after in case of an error such as duplicate property names // incorrect state will cause issues if writer is disposed when closing open properties base.WritePropertyName(name); } private void AddValue(object value, JsonToken token) { AddValue(new JValue(value), token); } internal void AddValue(JValue value, JsonToken token) { if (_parent != null) { _parent.Add(value); _current = _parent.Last; if (_parent.Type == JTokenType.Property) _parent = _parent.Parent; } else { _value = value ?? JValue.CreateNull(); _current = _value; } } #region WriteValue methods /// /// Writes a value. /// An error will raised if the value cannot be written as a single JSON token. /// /// The value to write. public override void WriteValue(object value) { #if !(NET20 || NET35 || PORTABLE || PORTABLE40) if (value is BigInteger) { InternalWriteValue(JsonToken.Integer); AddValue(value, JsonToken.Integer); } else #endif { base.WriteValue(value); } } /// /// Writes a null value. /// public override void WriteNull() { base.WriteNull(); AddValue(null, JsonToken.Null); } /// /// Writes an undefined value. /// public override void WriteUndefined() { base.WriteUndefined(); AddValue(null, JsonToken.Undefined); } /// /// Writes raw JSON. /// /// The raw JSON to write. public override void WriteRaw(string json) { base.WriteRaw(json); AddValue(new JRaw(json), JsonToken.Raw); } /// /// Writes out a comment /*...*/ containing the specified text. /// /// Text to place inside the comment. public override void WriteComment(string text) { base.WriteComment(text); AddValue(JValue.CreateComment(text), JsonToken.Comment); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(string value) { base.WriteValue(value); AddValue(value, JsonToken.String); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(int value) { base.WriteValue(value); AddValue(value, JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(uint value) { base.WriteValue(value); AddValue(value, JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(long value) { base.WriteValue(value); AddValue(value, JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(ulong value) { base.WriteValue(value); AddValue(value, JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(float value) { base.WriteValue(value); AddValue(value, JsonToken.Float); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(double value) { base.WriteValue(value); AddValue(value, JsonToken.Float); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(bool value) { base.WriteValue(value); AddValue(value, JsonToken.Boolean); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(short value) { base.WriteValue(value); AddValue(value, JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(ushort value) { base.WriteValue(value); AddValue(value, JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(char value) { base.WriteValue(value); string s = null; #if !(NETFX_CORE || PORTABLE40 || PORTABLE) s = value.ToString(CultureInfo.InvariantCulture); #else s = value.ToString(); #endif AddValue(s, JsonToken.String); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(byte value) { base.WriteValue(value); AddValue(value, JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. [CLSCompliant(false)] public override void WriteValue(sbyte value) { base.WriteValue(value); AddValue(value, JsonToken.Integer); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(decimal value) { base.WriteValue(value); AddValue(value, JsonToken.Float); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(DateTime value) { base.WriteValue(value); value = DateTimeUtils.EnsureDateTime(value, DateTimeZoneHandling); AddValue(value, JsonToken.Date); } #if !NET20 /// /// Writes a value. /// /// The value to write. public override void WriteValue(DateTimeOffset value) { base.WriteValue(value); AddValue(value, JsonToken.Date); } #endif /// /// Writes a [] value. /// /// The [] value to write. public override void WriteValue(byte[] value) { base.WriteValue(value); AddValue(value, JsonToken.Bytes); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(TimeSpan value) { base.WriteValue(value); AddValue(value, JsonToken.String); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(Guid value) { base.WriteValue(value); AddValue(value, JsonToken.String); } /// /// Writes a value. /// /// The value to write. public override void WriteValue(Uri value) { base.WriteValue(value); AddValue(value, JsonToken.String); } #endregion } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JPropertyDescriptor.cs0000664000175000017500000001427212454416117026473 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE || PORTABLE40) using System; using System.ComponentModel; namespace Newtonsoft.Json.Linq { /// /// Represents a view of a . /// public class JPropertyDescriptor : PropertyDescriptor { /// /// Initializes a new instance of the class. /// /// The name. public JPropertyDescriptor(string name) : base(name, null) { } private static JObject CastInstance(object instance) { return (JObject)instance; } /// /// When overridden in a derived class, returns whether resetting an object changes its value. /// /// /// true if resetting the component changes its value; otherwise, false. /// /// The component to test for reset capability. /// public override bool CanResetValue(object component) { return false; } /// /// When overridden in a derived class, gets the current value of the property on a component. /// /// /// The value of a property for a given component. /// /// The component with the property for which to retrieve the value. /// public override object GetValue(object component) { JToken token = CastInstance(component)[Name]; return token; } /// /// When overridden in a derived class, resets the value for this property of the component to the default value. /// /// The component with the property value that is to be reset to the default value. /// public override void ResetValue(object component) { } /// /// When overridden in a derived class, sets the value of the component to a different value. /// /// The component with the property value that is to be set. /// The new value. /// public override void SetValue(object component, object value) { JToken token = (value is JToken) ? (JToken)value : new JValue(value); CastInstance(component)[Name] = token; } /// /// When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. /// /// /// true if the property should be persisted; otherwise, false. /// /// The component with the property to be examined for persistence. /// public override bool ShouldSerializeValue(object component) { return false; } /// /// When overridden in a derived class, gets the type of the component this property is bound to. /// /// /// A that represents the type of component this property is bound to. When the or methods are invoked, the object specified might be an instance of this type. /// public override Type ComponentType { get { return typeof(JObject); } } /// /// When overridden in a derived class, gets a value indicating whether this property is read-only. /// /// /// true if the property is read-only; otherwise, false. /// public override bool IsReadOnly { get { return false; } } /// /// When overridden in a derived class, gets the type of the property. /// /// /// A that represents the type of the property. /// public override Type PropertyType { get { return typeof(object); } } /// /// Gets the hash code for the name of the member. /// /// /// /// The hash code for the name of the member. /// protected override int NameHashCode { get { // override property to fix up an error in its documentation int nameHashCode = base.NameHashCode; return nameHashCode; } } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/IJEnumerable.cs0000664000175000017500000000330112454416117024767 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Linq { /// /// Represents a collection of objects. /// /// The type of token public interface IJEnumerable< #if !(NET20 || NET35) out #endif T> : IEnumerable where T : JToken { /// /// Gets the with the specified key. /// /// IJEnumerable this[object key] { get; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Linq/JEnumerable.cs0000664000175000017500000001210612454416117024661 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using Newtonsoft.Json.Utilities; using System.Collections; namespace Newtonsoft.Json.Linq { /// /// Represents a collection of objects. /// /// The type of token public struct JEnumerable : IJEnumerable, IEquatable> where T : JToken { /// /// An empty collection of objects. /// public static readonly JEnumerable Empty = new JEnumerable(Enumerable.Empty()); private readonly IEnumerable _enumerable; /// /// Initializes a new instance of the struct. /// /// The enumerable. public JEnumerable(IEnumerable enumerable) { ValidationUtils.ArgumentNotNull(enumerable, "enumerable"); _enumerable = enumerable; } /// /// Returns an enumerator that iterates through the collection. /// /// /// A that can be used to iterate through the collection. /// public IEnumerator GetEnumerator() { if (_enumerable == null) return Empty.GetEnumerator(); return _enumerable.GetEnumerator(); } /// /// Returns an enumerator that iterates through a collection. /// /// /// An object that can be used to iterate through the collection. /// IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } /// /// Gets the with the specified key. /// /// public IJEnumerable this[object key] { get { if (_enumerable == null) return JEnumerable.Empty; return new JEnumerable(_enumerable.Values(key)); } } /// /// Determines whether the specified is equal to this instance. /// /// The to compare with this instance. /// /// true if the specified is equal to this instance; otherwise, false. /// public bool Equals(JEnumerable other) { return Equals(_enumerable, other._enumerable); } /// /// Determines whether the specified is equal to this instance. /// /// The to compare with this instance. /// /// true if the specified is equal to this instance; otherwise, false. /// public override bool Equals(object obj) { if (obj is JEnumerable) return Equals((JEnumerable)obj); return false; } /// /// Returns a hash code for this instance. /// /// /// A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. /// public override int GetHashCode() { if (_enumerable == null) return 0; return _enumerable.GetHashCode(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonReaderException.cs0000664000175000017500000001327512454416117025510 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using System.Runtime.Serialization; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json { /// /// The exception thrown when an error occurs while reading Json text. /// #if !(NETFX_CORE || PORTABLE || PORTABLE40) [Serializable] #endif public class JsonReaderException : JsonException { /// /// Gets the line number indicating where the error occurred. /// /// The line number indicating where the error occurred. public int LineNumber { get; private set; } /// /// Gets the line position indicating where the error occurred. /// /// The line position indicating where the error occurred. public int LinePosition { get; private set; } /// /// Gets the path to the JSON where the error occurred. /// /// The path to the JSON where the error occurred. public string Path { get; private set; } /// /// Initializes a new instance of the class. /// public JsonReaderException() { } /// /// Initializes a new instance of the class /// with a specified error message. /// /// The error message that explains the reason for the exception. public JsonReaderException(string message) : base(message) { } /// /// Initializes a new instance of the class /// with a specified error message and a reference to the inner exception that is the cause of this exception. /// /// The error message that explains the reason for the exception. /// The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. public JsonReaderException(string message, Exception innerException) : base(message, innerException) { } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) /// /// Initializes a new instance of the class. /// /// The that holds the serialized object data about the exception being thrown. /// The that contains contextual information about the source or destination. /// The parameter is null. /// The class name is null or is zero (0). public JsonReaderException(SerializationInfo info, StreamingContext context) : base(info, context) { } #endif internal JsonReaderException(string message, Exception innerException, string path, int lineNumber, int linePosition) : base(message, innerException) { Path = path; LineNumber = lineNumber; LinePosition = linePosition; } internal static JsonReaderException Create(JsonReader reader, string message) { return Create(reader, message, null); } internal static JsonReaderException Create(JsonReader reader, string message, Exception ex) { return Create(reader as IJsonLineInfo, reader.Path, message, ex); } internal static JsonReaderException Create(IJsonLineInfo lineInfo, string path, string message, Exception ex) { message = JsonPosition.FormatMessage(lineInfo, path, message); int lineNumber; int linePosition; if (lineInfo != null && lineInfo.HasLineInfo()) { lineNumber = lineInfo.LineNumber; linePosition = lineInfo.LinePosition; } else { lineNumber = 0; linePosition = 0; } return new JsonReaderException(message, ex, path, lineNumber, linePosition); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Formatting.cs0000664000175000017500000000323112454416117023676 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Specifies formatting options for the . /// public enum Formatting { /// /// No special formatting is applied. This is the default. /// None = 0, /// /// Causes child objects to be indented according to the and settings. /// Indented = 1 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/PreserveReferencesHandling.cs0000664000175000017500000000445112454416117027033 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; namespace Newtonsoft.Json { /// /// Specifies reference handling options for the . /// Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement ISerializable. /// /// /// /// [Flags] public enum PreserveReferencesHandling { /// /// Do not preserve references when serializing types. /// None = 0, /// /// Preserve references when serializing into a JSON object structure. /// Objects = 1, /// /// Preserve references when serializing into a JSON array structure. /// Arrays = 2, /// /// Preserve references when serializing. /// All = Objects | Arrays } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/MissingMemberHandling.cs0000664000175000017500000000333012454416117025772 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; namespace Newtonsoft.Json { /// /// Specifies missing member handling options for the . /// public enum MissingMemberHandling { /// /// Ignore a missing member and do not attempt to deserialize it. /// Ignore = 0, /// /// Throw a when a missing member is encountered during deserialization. /// Error = 1 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonExtensionDataAttribute.cs0000664000175000017500000000263512454416117027057 0ustar directhexdirecthexusing System; namespace Newtonsoft.Json { /// /// Instructs the to deserialize properties with no matching class member into the specified collection /// and write values during serialization. /// [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property, AllowMultiple = false)] public class JsonExtensionDataAttribute : Attribute { /// /// Gets or sets a value that indicates whether to write extension data when serializing the object. /// /// /// true to write extension data when serializing the object; otherwise, false. The default is true. /// public bool WriteData { get; set; } /// /// Gets or sets a value that indicates whether to read extension data when deserializing the object. /// /// /// true to read extension data when deserializing the object; otherwise, false. The default is true. /// public bool ReadData { get; set; } /// /// Initializes a new instance of the class. /// public JsonExtensionDataAttribute() { WriteData = true; ReadData = true; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/0000775000175000017500000000000012454416117023211 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/MethodCall.cs0000664000175000017500000000237512454416117025563 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Utilities { internal delegate TResult MethodCall(T target, params object[] args); }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/JsonTokenUtils.cs0000664000175000017500000000475412454416117026505 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Text; namespace Newtonsoft.Json.Utilities { internal static class JsonTokenUtils { internal static bool IsEndToken(JsonToken token) { switch (token) { case JsonToken.EndObject: case JsonToken.EndArray: case JsonToken.EndConstructor: return true; default: return false; } } internal static bool IsStartToken(JsonToken token) { switch (token) { case JsonToken.StartObject: case JsonToken.StartArray: case JsonToken.StartConstructor: return true; default: return false; } } internal static bool IsPrimitiveToken(JsonToken token) { switch (token) { case JsonToken.Integer: case JsonToken.Float: case JsonToken.String: case JsonToken.Boolean: case JsonToken.Undefined: case JsonToken.Null: case JsonToken.Date: case JsonToken.Bytes: return true; default: return false; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/JavaScriptUtils.cs0000664000175000017500000002270012454416117026630 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Globalization; using System.IO; using System.Text; using System.Text.RegularExpressions; using System.Collections.Generic; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Utilities { internal static class JavaScriptUtils { internal static readonly bool[] SingleQuoteCharEscapeFlags = new bool[128]; internal static readonly bool[] DoubleQuoteCharEscapeFlags = new bool[128]; internal static readonly bool[] HtmlCharEscapeFlags = new bool[128]; static JavaScriptUtils() { IList escapeChars = new List { '\n', '\r', '\t', '\\', '\f', '\b', }; for (int i = 0; i < ' '; i++) { escapeChars.Add((char)i); } foreach (var escapeChar in escapeChars.Union(new[] { '\'' })) { SingleQuoteCharEscapeFlags[escapeChar] = true; } foreach (var escapeChar in escapeChars.Union(new[] { '"' })) { DoubleQuoteCharEscapeFlags[escapeChar] = true; } foreach (var escapeChar in escapeChars.Union(new[] { '"', '\'', '<', '>', '&' })) { HtmlCharEscapeFlags[escapeChar] = true; } } private const string EscapedUnicodeText = "!"; public static bool[] GetCharEscapeFlags(StringEscapeHandling stringEscapeHandling, char quoteChar) { if (stringEscapeHandling == StringEscapeHandling.EscapeHtml) return HtmlCharEscapeFlags; if (quoteChar == '"') return DoubleQuoteCharEscapeFlags; return SingleQuoteCharEscapeFlags; } public static bool ShouldEscapeJavaScriptString(string s, bool[] charEscapeFlags) { if (s == null) return false; foreach (char c in s) { if (c >= charEscapeFlags.Length || charEscapeFlags[c]) return true; } return false; } public static void WriteEscapedJavaScriptString(TextWriter writer, string s, char delimiter, bool appendDelimiters, bool[] charEscapeFlags, StringEscapeHandling stringEscapeHandling, ref char[] writeBuffer) { // leading delimiter if (appendDelimiters) writer.Write(delimiter); if (s != null) { int lastWritePosition = 0; for (int i = 0; i < s.Length; i++) { var c = s[i]; if (c < charEscapeFlags.Length && !charEscapeFlags[c]) continue; string escapedValue; switch (c) { case '\t': escapedValue = @"\t"; break; case '\n': escapedValue = @"\n"; break; case '\r': escapedValue = @"\r"; break; case '\f': escapedValue = @"\f"; break; case '\b': escapedValue = @"\b"; break; case '\\': escapedValue = @"\\"; break; case '\u0085': // Next Line escapedValue = @"\u0085"; break; case '\u2028': // Line Separator escapedValue = @"\u2028"; break; case '\u2029': // Paragraph Separator escapedValue = @"\u2029"; break; default: if (c < charEscapeFlags.Length || stringEscapeHandling == StringEscapeHandling.EscapeNonAscii) { if (c == '\'' && stringEscapeHandling != StringEscapeHandling.EscapeHtml) { escapedValue = @"\'"; } else if (c == '"' && stringEscapeHandling != StringEscapeHandling.EscapeHtml) { escapedValue = @"\"""; } else { if (writeBuffer == null) writeBuffer = new char[6]; StringUtils.ToCharAsUnicode(c, writeBuffer); // slightly hacky but it saves multiple conditions in if test escapedValue = EscapedUnicodeText; } } else { escapedValue = null; } break; } if (escapedValue == null) continue; bool isEscapedUnicodeText = string.Equals(escapedValue, EscapedUnicodeText); if (i > lastWritePosition) { int length = i - lastWritePosition + ((isEscapedUnicodeText) ? 6 : 0); int start = (isEscapedUnicodeText) ? 6 : 0; if (writeBuffer == null || writeBuffer.Length < length) { char[] newBuffer = new char[length]; // the unicode text is already in the buffer // copy it over when creating new buffer if (isEscapedUnicodeText) Array.Copy(writeBuffer, newBuffer, 6); writeBuffer = newBuffer; } s.CopyTo(lastWritePosition, writeBuffer, start, length - start); // write unchanged chars before writing escaped text writer.Write(writeBuffer, start, length - start); } lastWritePosition = i + 1; if (!isEscapedUnicodeText) writer.Write(escapedValue); else writer.Write(writeBuffer, 0, 6); } if (lastWritePosition == 0) { // no escaped text, write entire string writer.Write(s); } else { int length = s.Length - lastWritePosition; if (writeBuffer == null || writeBuffer.Length < length) writeBuffer = new char[length]; s.CopyTo(lastWritePosition, writeBuffer, 0, length); // write remaining text writer.Write(writeBuffer, 0, length); } } // trailing delimiter if (appendDelimiters) writer.Write(delimiter); } public static string ToEscapedJavaScriptString(string value, char delimiter, bool appendDelimiters) { return ToEscapedJavaScriptString(value, delimiter, appendDelimiters, StringEscapeHandling.Default); } public static string ToEscapedJavaScriptString(string value, char delimiter, bool appendDelimiters, StringEscapeHandling stringEscapeHandling) { bool[] charEscapeFlags = GetCharEscapeFlags(stringEscapeHandling, delimiter); using (StringWriter w = StringUtils.CreateStringWriter(StringUtils.GetLength(value) ?? 16)) { char[] buffer = null; WriteEscapedJavaScriptString(w, value, delimiter, appendDelimiters, charEscapeFlags, stringEscapeHandling, ref buffer); return w.ToString(); } } } } newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/DictionaryWrapper.cs0000664000175000017500000004071212454416117027212 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Collections; using System.Threading; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Utilities { internal interface IWrappedDictionary : IDictionary { object UnderlyingDictionary { get; } } internal class DictionaryWrapper : IDictionary, IWrappedDictionary { private readonly IDictionary _dictionary; private readonly IDictionary _genericDictionary; #if !(NET40 || NET35 || NET20 || PORTABLE40) private readonly IReadOnlyDictionary _readOnlyDictionary; #endif private object _syncRoot; public DictionaryWrapper(IDictionary dictionary) { ValidationUtils.ArgumentNotNull(dictionary, "dictionary"); _dictionary = dictionary; } public DictionaryWrapper(IDictionary dictionary) { ValidationUtils.ArgumentNotNull(dictionary, "dictionary"); _genericDictionary = dictionary; } #if !(NET40 || NET35 || NET20 || PORTABLE40) public DictionaryWrapper(IReadOnlyDictionary dictionary) { ValidationUtils.ArgumentNotNull(dictionary, "dictionary"); _readOnlyDictionary = dictionary; } #endif public void Add(TKey key, TValue value) { if (_dictionary != null) _dictionary.Add(key, value); else if (_genericDictionary != null) _genericDictionary.Add(key, value); else throw new NotSupportedException(); } public bool ContainsKey(TKey key) { if (_dictionary != null) return _dictionary.Contains(key); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary.ContainsKey(key); #endif else return _genericDictionary.ContainsKey(key); } public ICollection Keys { get { if (_dictionary != null) return _dictionary.Keys.Cast().ToList(); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary.Keys.ToList(); #endif else return _genericDictionary.Keys; } } public bool Remove(TKey key) { if (_dictionary != null) { if (_dictionary.Contains(key)) { _dictionary.Remove(key); return true; } else { return false; } } #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) { throw new NotSupportedException(); } #endif else { return _genericDictionary.Remove(key); } } public bool TryGetValue(TKey key, out TValue value) { if (_dictionary != null) { if (!_dictionary.Contains(key)) { value = default(TValue); return false; } else { value = (TValue)_dictionary[key]; return true; } } #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) { throw new NotSupportedException(); } #endif else { return _genericDictionary.TryGetValue(key, out value); } } public ICollection Values { get { if (_dictionary != null) return _dictionary.Values.Cast().ToList(); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary.Values.ToList(); #endif else return _genericDictionary.Values; } } public TValue this[TKey key] { get { if (_dictionary != null) return (TValue)_dictionary[key]; #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary[key]; #endif else return _genericDictionary[key]; } set { if (_dictionary != null) _dictionary[key] = value; #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) throw new NotSupportedException(); #endif else _genericDictionary[key] = value; } } public void Add(KeyValuePair item) { if (_dictionary != null) ((IList)_dictionary).Add(item); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) throw new NotSupportedException(); #endif else if (_genericDictionary != null) _genericDictionary.Add(item); } public void Clear() { if (_dictionary != null) _dictionary.Clear(); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) throw new NotSupportedException(); #endif else _genericDictionary.Clear(); } public bool Contains(KeyValuePair item) { if (_dictionary != null) return ((IList)_dictionary).Contains(item); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary.Contains(item); #endif else return _genericDictionary.Contains(item); } public void CopyTo(KeyValuePair[] array, int arrayIndex) { if (_dictionary != null) { foreach (DictionaryEntry item in _dictionary) { array[arrayIndex++] = new KeyValuePair((TKey)item.Key, (TValue)item.Value); } } #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) { throw new NotSupportedException(); } #endif else { _genericDictionary.CopyTo(array, arrayIndex); } } public int Count { get { if (_dictionary != null) return _dictionary.Count; #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary.Count; #endif else return _genericDictionary.Count; } } public bool IsReadOnly { get { if (_dictionary != null) return _dictionary.IsReadOnly; #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return true; #endif else return _genericDictionary.IsReadOnly; } } public bool Remove(KeyValuePair item) { if (_dictionary != null) { if (_dictionary.Contains(item.Key)) { object value = _dictionary[item.Key]; if (object.Equals(value, item.Value)) { _dictionary.Remove(item.Key); return true; } else { return false; } } else { return true; } } #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) { throw new NotSupportedException(); } #endif else { return _genericDictionary.Remove(item); } } public IEnumerator> GetEnumerator() { if (_dictionary != null) return _dictionary.Cast().Select(de => new KeyValuePair((TKey)de.Key, (TValue)de.Value)).GetEnumerator(); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary.GetEnumerator(); #endif else return _genericDictionary.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } void IDictionary.Add(object key, object value) { if (_dictionary != null) _dictionary.Add(key, value); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) throw new NotSupportedException(); #endif else _genericDictionary.Add((TKey)key, (TValue)value); } object IDictionary.this[object key] { get { if (_dictionary != null) return _dictionary[key]; #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary[(TKey)key]; #endif else return _genericDictionary[(TKey)key]; } set { if (_dictionary != null) _dictionary[key] = value; #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) throw new NotSupportedException(); #endif else _genericDictionary[(TKey)key] = (TValue)value; } } private struct DictionaryEnumerator : IDictionaryEnumerator { private readonly IEnumerator> _e; public DictionaryEnumerator(IEnumerator> e) { ValidationUtils.ArgumentNotNull(e, "e"); _e = e; } public DictionaryEntry Entry { get { return (DictionaryEntry)Current; } } public object Key { get { return Entry.Key; } } public object Value { get { return Entry.Value; } } public object Current { get { return new DictionaryEntry(_e.Current.Key, _e.Current.Value); } } public bool MoveNext() { return _e.MoveNext(); } public void Reset() { _e.Reset(); } } IDictionaryEnumerator IDictionary.GetEnumerator() { if (_dictionary != null) return _dictionary.GetEnumerator(); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return new DictionaryEnumerator(_readOnlyDictionary.GetEnumerator()); #endif else return new DictionaryEnumerator(_genericDictionary.GetEnumerator()); } bool IDictionary.Contains(object key) { if (_genericDictionary != null) return _genericDictionary.ContainsKey((TKey)key); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary.ContainsKey((TKey)key); #endif else return _dictionary.Contains(key); } bool IDictionary.IsFixedSize { get { if (_genericDictionary != null) return false; #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return true; #endif else return _dictionary.IsFixedSize; } } ICollection IDictionary.Keys { get { if (_genericDictionary != null) return _genericDictionary.Keys.ToList(); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary.Keys.ToList(); #endif else return _dictionary.Keys; } } public void Remove(object key) { if (_dictionary != null) _dictionary.Remove(key); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) throw new NotSupportedException(); #endif else _genericDictionary.Remove((TKey)key); } ICollection IDictionary.Values { get { if (_genericDictionary != null) return _genericDictionary.Values.ToList(); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary.Values.ToList(); #endif else return _dictionary.Values; } } void ICollection.CopyTo(Array array, int index) { if (_dictionary != null) _dictionary.CopyTo(array, index); #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) throw new NotSupportedException(); #endif else _genericDictionary.CopyTo((KeyValuePair[])array, index); } bool ICollection.IsSynchronized { get { if (_dictionary != null) return _dictionary.IsSynchronized; else return false; } } object ICollection.SyncRoot { get { if (_syncRoot == null) Interlocked.CompareExchange(ref _syncRoot, new object(), null); return _syncRoot; } } public object UnderlyingDictionary { get { if (_dictionary != null) return _dictionary; #if !(NET40 || NET35 || NET20 || PORTABLE40) else if (_readOnlyDictionary != null) return _readOnlyDictionary; #endif else return _genericDictionary; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/ValidationUtils.cs0000664000175000017500000000434012454416117026654 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.Text; using System.Globalization; namespace Newtonsoft.Json.Utilities { internal static class ValidationUtils { public static void ArgumentNotNullOrEmpty(string value, string parameterName) { if (value == null) throw new ArgumentNullException(parameterName); if (value.Length == 0) throw new ArgumentException("'{0}' cannot be empty.".FormatWith(CultureInfo.InvariantCulture, parameterName), parameterName); } public static void ArgumentTypeIsEnum(Type enumType, string parameterName) { ArgumentNotNull(enumType, "enumType"); if (!enumType.IsEnum()) throw new ArgumentException("Type {0} is not an Enum.".FormatWith(CultureInfo.InvariantCulture, enumType), parameterName); } public static void ArgumentNotNull(object value, string parameterName) { if (value == null) throw new ArgumentNullException(parameterName); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/PropertyNameTable.cs0000664000175000017500000001206212454416117027136 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Utilities { internal class PropertyNameTable { // used to defeat hashtable DoS attack where someone passes in lots of strings that hash to the same hash code private static readonly int HashCodeRandomizer; private int _count; private Entry[] _entries; private int _mask = 31; static PropertyNameTable() { HashCodeRandomizer = Environment.TickCount; } public PropertyNameTable() { _entries = new Entry[_mask + 1]; } public string Get(char[] key, int start, int length) { if (length == 0) return string.Empty; int hashCode = length + HashCodeRandomizer; hashCode += (hashCode << 7) ^ key[start]; int end = start + length; for (int i = start + 1; i < end; i++) { hashCode += (hashCode << 7) ^ key[i]; } hashCode -= hashCode >> 17; hashCode -= hashCode >> 11; hashCode -= hashCode >> 5; for (Entry entry = _entries[hashCode & _mask]; entry != null; entry = entry.Next) { if (entry.HashCode == hashCode && TextEquals(entry.Value, key, start, length)) return entry.Value; } return null; } public string Add(string key) { if (key == null) throw new ArgumentNullException("key"); int length = key.Length; if (length == 0) return string.Empty; int hashCode = length + HashCodeRandomizer; for (int i = 0; i < key.Length; i++) { hashCode += (hashCode << 7) ^ key[i]; } hashCode -= hashCode >> 17; hashCode -= hashCode >> 11; hashCode -= hashCode >> 5; for (Entry entry = _entries[hashCode & _mask]; entry != null; entry = entry.Next) { if (entry.HashCode == hashCode && entry.Value.Equals(key)) return entry.Value; } return AddEntry(key, hashCode); } private string AddEntry(string str, int hashCode) { int index = hashCode & _mask; Entry entry = new Entry(str, hashCode, _entries[index]); _entries[index] = entry; if (_count++ == _mask) { Grow(); } return entry.Value; } private void Grow() { Entry[] entries = _entries; int newMask = (_mask * 2) + 1; Entry[] newEntries = new Entry[newMask + 1]; for (int i = 0; i < entries.Length; i++) { Entry next; for (Entry entry = entries[i]; entry != null; entry = next) { int index = entry.HashCode & newMask; next = entry.Next; entry.Next = newEntries[index]; newEntries[index] = entry; } } _entries = newEntries; _mask = newMask; } private static bool TextEquals(string str1, char[] str2, int str2Start, int str2Length) { if (str1.Length != str2Length) return false; for (int i = 0; i < str1.Length; i++) { if (str1[i] != str2[str2Start + i]) return false; } return true; } private class Entry { internal readonly string Value; internal readonly int HashCode; internal Entry Next; internal Entry(string value, int hashCode, Entry next) { Value = value; HashCode = hashCode; Next = next; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/DynamicProxy.cs0000664000175000017500000000700112454416117026164 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE40) using System; using System.Collections.Generic; using System.Dynamic; using System.Linq; using System.Linq.Expressions; using System.Text; namespace Newtonsoft.Json.Utilities { internal class DynamicProxy { public virtual IEnumerable GetDynamicMemberNames(T instance) { return new string[0]; } public virtual bool TryBinaryOperation(T instance, BinaryOperationBinder binder, object arg, out object result) { result = null; return false; } public virtual bool TryConvert(T instance, ConvertBinder binder, out object result) { result = null; return false; } public virtual bool TryCreateInstance(T instance, CreateInstanceBinder binder, object[] args, out object result) { result = null; return false; } public virtual bool TryDeleteIndex(T instance, DeleteIndexBinder binder, object[] indexes) { return false; } public virtual bool TryDeleteMember(T instance, DeleteMemberBinder binder) { return false; } public virtual bool TryGetIndex(T instance, GetIndexBinder binder, object[] indexes, out object result) { result = null; return false; } public virtual bool TryGetMember(T instance, GetMemberBinder binder, out object result) { result = null; return false; } public virtual bool TryInvoke(T instance, InvokeBinder binder, object[] args, out object result) { result = null; return false; } public virtual bool TryInvokeMember(T instance, InvokeMemberBinder binder, object[] args, out object result) { result = null; return false; } public virtual bool TrySetIndex(T instance, SetIndexBinder binder, object[] indexes, object value) { return false; } public virtual bool TrySetMember(T instance, SetMemberBinder binder, object value) { return false; } public virtual bool TryUnaryOperation(T instance, UnaryOperationBinder binder, out object result) { result = null; return false; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/ExpressionReflectionDelegateFactory.cs0000664000175000017500000003337312454416117032706 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET20 || NET35) using System.Collections.Generic; using System.Linq; using System.Text; using System; using System.Linq.Expressions; using System.Reflection; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Utilities { internal class ExpressionReflectionDelegateFactory : ReflectionDelegateFactory { private static readonly ExpressionReflectionDelegateFactory _instance = new ExpressionReflectionDelegateFactory(); internal static ReflectionDelegateFactory Instance { get { return _instance; } } public override ObjectConstructor CreateParametrizedConstructor(MethodBase method) { ValidationUtils.ArgumentNotNull(method, "method"); Type type = typeof(object); ParameterExpression argsParameterExpression = Expression.Parameter(typeof(object[]), "args"); Expression callExpression = BuildMethodCall(method, type, null, argsParameterExpression); LambdaExpression lambdaExpression = Expression.Lambda(typeof(ObjectConstructor), callExpression, argsParameterExpression); ObjectConstructor compiled = (ObjectConstructor)lambdaExpression.Compile(); return compiled; } public override MethodCall CreateMethodCall(MethodBase method) { ValidationUtils.ArgumentNotNull(method, "method"); Type type = typeof(object); ParameterExpression targetParameterExpression = Expression.Parameter(type, "target"); ParameterExpression argsParameterExpression = Expression.Parameter(typeof(object[]), "args"); Expression callExpression = BuildMethodCall(method, type, targetParameterExpression, argsParameterExpression); LambdaExpression lambdaExpression = Expression.Lambda(typeof(MethodCall), callExpression, targetParameterExpression, argsParameterExpression); MethodCall compiled = (MethodCall)lambdaExpression.Compile(); return compiled; } private class ByRefParameter { public Expression Value; public ParameterExpression Variable; public bool IsOut; } private Expression BuildMethodCall(MethodBase method, Type type, ParameterExpression targetParameterExpression, ParameterExpression argsParameterExpression) { ParameterInfo[] parametersInfo = method.GetParameters(); Expression[] argsExpression = new Expression[parametersInfo.Length]; IList refParameterMap = new List(); for (int i = 0; i < parametersInfo.Length; i++) { ParameterInfo parameter = parametersInfo[i]; Type parameterType = parameter.ParameterType; bool isByRef = false; if (parameterType.IsByRef) { parameterType = parameterType.GetElementType(); isByRef = true; } Expression indexExpression = Expression.Constant(i); Expression paramAccessorExpression = Expression.ArrayIndex(argsParameterExpression, indexExpression); Expression argExpression; if (parameterType.IsValueType()) { BinaryExpression ensureValueTypeNotNull = Expression.Coalesce(paramAccessorExpression, Expression.New(parameterType)); argExpression = EnsureCastExpression(ensureValueTypeNotNull, parameterType); } else { argExpression = EnsureCastExpression(paramAccessorExpression, parameterType); } if (isByRef) { ParameterExpression variable = Expression.Variable(parameterType); refParameterMap.Add(new ByRefParameter { Value = argExpression, Variable = variable, IsOut = parameter.IsOut }); argExpression = variable; } argsExpression[i] = argExpression; } Expression callExpression; if (method.IsConstructor) { callExpression = Expression.New((ConstructorInfo) method, argsExpression); } else if (method.IsStatic) { callExpression = Expression.Call((MethodInfo) method, argsExpression); } else { Expression readParameter = EnsureCastExpression(targetParameterExpression, method.DeclaringType); callExpression = Expression.Call(readParameter, (MethodInfo) method, argsExpression); } if (method is MethodInfo) { MethodInfo m = (MethodInfo) method; if (m.ReturnType != typeof (void)) callExpression = EnsureCastExpression(callExpression, type); else callExpression = Expression.Block(callExpression, Expression.Constant(null)); } else { callExpression = EnsureCastExpression(callExpression, type); } if (refParameterMap.Count > 0) { IList variableExpressions = new List(); IList bodyExpressions = new List(); foreach (ByRefParameter p in refParameterMap) { if (!p.IsOut) bodyExpressions.Add(Expression.Assign(p.Variable, p.Value)); variableExpressions.Add(p.Variable); } bodyExpressions.Add(callExpression); callExpression = Expression.Block(variableExpressions, bodyExpressions); } return callExpression; } public override Func CreateDefaultConstructor(Type type) { ValidationUtils.ArgumentNotNull(type, "type"); // avoid error from expressions compiler because of abstract class if (type.IsAbstract()) return () => (T)Activator.CreateInstance(type); try { Type resultType = typeof(T); Expression expression = Expression.New(type); expression = EnsureCastExpression(expression, resultType); LambdaExpression lambdaExpression = Expression.Lambda(typeof(Func), expression); Func compiled = (Func)lambdaExpression.Compile(); return compiled; } catch { // an error can be thrown if constructor is not valid on Win8 // will have INVOCATION_FLAGS_NON_W8P_FX_API invocation flag return () => (T)Activator.CreateInstance(type); } } public override Func CreateGet(PropertyInfo propertyInfo) { ValidationUtils.ArgumentNotNull(propertyInfo, "propertyInfo"); Type instanceType = typeof(T); Type resultType = typeof(object); ParameterExpression parameterExpression = Expression.Parameter(instanceType, "instance"); Expression resultExpression; MethodInfo getMethod = propertyInfo.GetGetMethod(true); if (getMethod.IsStatic) { resultExpression = Expression.MakeMemberAccess(null, propertyInfo); } else { Expression readParameter = EnsureCastExpression(parameterExpression, propertyInfo.DeclaringType); resultExpression = Expression.MakeMemberAccess(readParameter, propertyInfo); } resultExpression = EnsureCastExpression(resultExpression, resultType); LambdaExpression lambdaExpression = Expression.Lambda(typeof(Func), resultExpression, parameterExpression); Func compiled = (Func)lambdaExpression.Compile(); return compiled; } public override Func CreateGet(FieldInfo fieldInfo) { ValidationUtils.ArgumentNotNull(fieldInfo, "fieldInfo"); ParameterExpression sourceParameter = Expression.Parameter(typeof(T), "source"); Expression fieldExpression; if (fieldInfo.IsStatic) { fieldExpression = Expression.Field(null, fieldInfo); } else { Expression sourceExpression = EnsureCastExpression(sourceParameter, fieldInfo.DeclaringType); fieldExpression = Expression.Field(sourceExpression, fieldInfo); } fieldExpression = EnsureCastExpression(fieldExpression, typeof(object)); Func compiled = Expression.Lambda>(fieldExpression, sourceParameter).Compile(); return compiled; } public override Action CreateSet(FieldInfo fieldInfo) { ValidationUtils.ArgumentNotNull(fieldInfo, "fieldInfo"); // use reflection for structs // expression doesn't correctly set value if (fieldInfo.DeclaringType.IsValueType() || fieldInfo.IsInitOnly) return LateBoundReflectionDelegateFactory.Instance.CreateSet(fieldInfo); ParameterExpression sourceParameterExpression = Expression.Parameter(typeof(T), "source"); ParameterExpression valueParameterExpression = Expression.Parameter(typeof(object), "value"); Expression fieldExpression; if (fieldInfo.IsStatic) { fieldExpression = Expression.Field(null, fieldInfo); } else { Expression sourceExpression = EnsureCastExpression(sourceParameterExpression, fieldInfo.DeclaringType); fieldExpression = Expression.Field(sourceExpression, fieldInfo); } Expression valueExpression = EnsureCastExpression(valueParameterExpression, fieldExpression.Type); BinaryExpression assignExpression = Expression.Assign(fieldExpression, valueExpression); LambdaExpression lambdaExpression = Expression.Lambda(typeof(Action), assignExpression, sourceParameterExpression, valueParameterExpression); Action compiled = (Action)lambdaExpression.Compile(); return compiled; } public override Action CreateSet(PropertyInfo propertyInfo) { ValidationUtils.ArgumentNotNull(propertyInfo, "propertyInfo"); // use reflection for structs // expression doesn't correctly set value if (propertyInfo.DeclaringType.IsValueType()) return LateBoundReflectionDelegateFactory.Instance.CreateSet(propertyInfo); Type instanceType = typeof(T); Type valueType = typeof(object); ParameterExpression instanceParameter = Expression.Parameter(instanceType, "instance"); ParameterExpression valueParameter = Expression.Parameter(valueType, "value"); Expression readValueParameter = EnsureCastExpression(valueParameter, propertyInfo.PropertyType); MethodInfo setMethod = propertyInfo.GetSetMethod(true); Expression setExpression; if (setMethod.IsStatic) { setExpression = Expression.Call(setMethod, readValueParameter); } else { Expression readInstanceParameter = EnsureCastExpression(instanceParameter, propertyInfo.DeclaringType); setExpression = Expression.Call(readInstanceParameter, setMethod, readValueParameter); } LambdaExpression lambdaExpression = Expression.Lambda(typeof(Action), setExpression, instanceParameter, valueParameter); Action compiled = (Action)lambdaExpression.Compile(); return compiled; } private Expression EnsureCastExpression(Expression expression, Type targetType) { Type expressionType = expression.Type; // check if a cast or conversion is required if (expressionType == targetType || (!expressionType.IsValueType() && targetType.IsAssignableFrom(expressionType))) return expression; return Expression.Convert(expression, targetType); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/ILGeneratorExtensions.cs0000664000175000017500000000555512454416117030005 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(PORTABLE40 || PORTABLE || NETFX_CORE) using System; using System.Reflection.Emit; using System.Reflection; namespace Newtonsoft.Json.Utilities { internal static class ILGeneratorExtensions { public static void PushInstance(this ILGenerator generator, Type type) { generator.Emit(OpCodes.Ldarg_0); if (type.IsValueType()) generator.Emit(OpCodes.Unbox, type); else generator.Emit(OpCodes.Castclass, type); } public static void PushArrayInstance(this ILGenerator generator, int argsIndex, int arrayIndex) { generator.Emit(OpCodes.Ldarg, argsIndex); generator.Emit(OpCodes.Ldc_I4, arrayIndex); generator.Emit(OpCodes.Ldelem_Ref); } public static void BoxIfNeeded(this ILGenerator generator, Type type) { if (type.IsValueType()) generator.Emit(OpCodes.Box, type); else generator.Emit(OpCodes.Castclass, type); } public static void UnboxIfNeeded(this ILGenerator generator, Type type) { if (type.IsValueType()) generator.Emit(OpCodes.Unbox_Any, type); else generator.Emit(OpCodes.Castclass, type); } public static void CallMethod(this ILGenerator generator, MethodInfo methodInfo) { if (methodInfo.IsFinal || !methodInfo.IsVirtual) generator.Emit(OpCodes.Call, methodInfo); else generator.Emit(OpCodes.Callvirt, methodInfo); } public static void Return(this ILGenerator generator) { generator.Emit(OpCodes.Ret); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/StringUtils.cs0000664000175000017500000001622312454416117026033 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; using System.Text; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Utilities { internal static class StringUtils { public const string CarriageReturnLineFeed = "\r\n"; public const string Empty = ""; public const char CarriageReturn = '\r'; public const char LineFeed = '\n'; public const char Tab = '\t'; public static string FormatWith(this string format, IFormatProvider provider, object arg0) { return format.FormatWith(provider, new[] { arg0 }); } public static string FormatWith(this string format, IFormatProvider provider, object arg0, object arg1) { return format.FormatWith(provider, new[] { arg0, arg1 }); } public static string FormatWith(this string format, IFormatProvider provider, object arg0, object arg1, object arg2) { return format.FormatWith(provider, new[] { arg0, arg1, arg2 }); } public static string FormatWith(this string format, IFormatProvider provider, object arg0, object arg1, object arg2, object arg3) { return format.FormatWith(provider, new[] { arg0, arg1, arg2, arg3 }); } private static string FormatWith(this string format, IFormatProvider provider, params object[] args) { // leave this a private to force code to use an explicit overload // avoids stack memory being reserved for the object array ValidationUtils.ArgumentNotNull(format, "format"); return string.Format(provider, format, args); } /// /// Determines whether the string is all white space. Empty string will return false. /// /// The string to test whether it is all white space. /// /// true if the string is all white space; otherwise, false. /// public static bool IsWhiteSpace(string s) { if (s == null) throw new ArgumentNullException("s"); if (s.Length == 0) return false; for (int i = 0; i < s.Length; i++) { if (!char.IsWhiteSpace(s[i])) return false; } return true; } /// /// Nulls an empty string. /// /// The string. /// Null if the string was null, otherwise the string unchanged. public static string NullEmptyString(string s) { return (string.IsNullOrEmpty(s)) ? null : s; } public static StringWriter CreateStringWriter(int capacity) { StringBuilder sb = new StringBuilder(capacity); StringWriter sw = new StringWriter(sb, CultureInfo.InvariantCulture); return sw; } public static int? GetLength(string value) { if (value == null) return null; else return value.Length; } public static void ToCharAsUnicode(char c, char[] buffer) { buffer[0] = '\\'; buffer[1] = 'u'; buffer[2] = MathUtils.IntToHex((c >> 12) & '\x000f'); buffer[3] = MathUtils.IntToHex((c >> 8) & '\x000f'); buffer[4] = MathUtils.IntToHex((c >> 4) & '\x000f'); buffer[5] = MathUtils.IntToHex(c & '\x000f'); } public static TSource ForgivingCaseSensitiveFind(this IEnumerable source, Func valueSelector, string testValue) { if (source == null) throw new ArgumentNullException("source"); if (valueSelector == null) throw new ArgumentNullException("valueSelector"); var caseInsensitiveResults = source.Where(s => string.Equals(valueSelector(s), testValue, StringComparison.OrdinalIgnoreCase)); if (caseInsensitiveResults.Count() <= 1) { return caseInsensitiveResults.SingleOrDefault(); } else { // multiple results returned. now filter using case sensitivity var caseSensitiveResults = source.Where(s => string.Equals(valueSelector(s), testValue, StringComparison.Ordinal)); return caseSensitiveResults.SingleOrDefault(); } } public static string ToCamelCase(string s) { if (string.IsNullOrEmpty(s)) return s; if (!char.IsUpper(s[0])) return s; char[] chars = s.ToCharArray(); for (int i = 0; i < chars.Length; i++) { bool hasNext = (i + 1 < chars.Length); if (i > 0 && hasNext && !char.IsUpper(chars[i + 1])) break; #if !(NETFX_CORE || PORTABLE) chars[i] = char.ToLower(chars[i], CultureInfo.InvariantCulture); #else chars[i] = char.ToLowerInvariant(chars[i]); #endif } return new string(chars); } public static bool IsHighSurrogate(char c) { #if !(PORTABLE40 || PORTABLE) return char.IsHighSurrogate(c); #else return (c >= 55296 && c <= 56319); #endif } public static bool IsLowSurrogate(char c) { #if !(PORTABLE40 || PORTABLE) return char.IsLowSurrogate(c); #else return (c >= 56320 && c <= 57343); #endif } public static bool StartsWith(this string source, char value) { return (source.Length > 0 && source[0] == value); } public static bool EndsWith(this string source, char value) { return (source.Length > 0 && source[source.Length - 1] == value); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/EnumValue.cs0000664000175000017500000000311412454416117025440 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Utilities { internal class EnumValue where T : struct { private readonly string _name; private readonly T _value; public string Name { get { return _name; } } public T Value { get { return _value; } } public EnumValue(string name, T value) { _name = name; _value = value; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/TypeExtensions.cs0000664000175000017500000005207012454416117026545 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Reflection; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Utilities { internal static class TypeExtensions { #if NETFX_CORE || PORTABLE private static BindingFlags DefaultFlags = BindingFlags.Public | BindingFlags.Static | BindingFlags.Instance; public static MethodInfo GetGetMethod(this PropertyInfo propertyInfo) { return propertyInfo.GetGetMethod(false); } public static MethodInfo GetGetMethod(this PropertyInfo propertyInfo, bool nonPublic) { MethodInfo getMethod = propertyInfo.GetMethod; if (getMethod != null && (getMethod.IsPublic || nonPublic)) return getMethod; return null; } public static MethodInfo GetSetMethod(this PropertyInfo propertyInfo) { return propertyInfo.GetSetMethod(false); } public static MethodInfo GetSetMethod(this PropertyInfo propertyInfo, bool nonPublic) { MethodInfo setMethod = propertyInfo.SetMethod; if (setMethod != null && (setMethod.IsPublic || nonPublic)) return setMethod; return null; } public static bool IsSubclassOf(this Type type, Type c) { return type.GetTypeInfo().IsSubclassOf(c); } public static bool IsAssignableFrom(this Type type, Type c) { return type.GetTypeInfo().IsAssignableFrom(c.GetTypeInfo()); } public static bool IsInstanceOfType(this Type type, object o) { if (o == null) return false; return IsAssignableFrom(type, o.GetType()); } #endif public static MethodInfo Method(this Delegate d) { #if !(NETFX_CORE || PORTABLE) return d.Method; #else return d.GetMethodInfo(); #endif } public static MemberTypes MemberType(this MemberInfo memberInfo) { #if !(NETFX_CORE || PORTABLE || PORTABLE40) return memberInfo.MemberType; #else if (memberInfo is PropertyInfo) return MemberTypes.Property; else if (memberInfo is FieldInfo) return MemberTypes.Field; else if (memberInfo is EventInfo) return MemberTypes.Event; else if (memberInfo is MethodInfo) return MemberTypes.Method; else return MemberTypes.Other; #endif } public static bool ContainsGenericParameters(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.ContainsGenericParameters; #else return type.GetTypeInfo().ContainsGenericParameters; #endif } public static bool IsInterface(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.IsInterface; #else return type.GetTypeInfo().IsInterface; #endif } public static bool IsGenericType(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.IsGenericType; #else return type.GetTypeInfo().IsGenericType; #endif } public static bool IsGenericTypeDefinition(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.IsGenericTypeDefinition; #else return type.GetTypeInfo().IsGenericTypeDefinition; #endif } public static Type BaseType(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.BaseType; #else return type.GetTypeInfo().BaseType; #endif } public static Assembly Assembly(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.Assembly; #else return type.GetTypeInfo().Assembly; #endif } public static bool IsEnum(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.IsEnum; #else return type.GetTypeInfo().IsEnum; #endif } public static bool IsClass(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.IsClass; #else return type.GetTypeInfo().IsClass; #endif } public static bool IsSealed(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.IsSealed; #else return type.GetTypeInfo().IsSealed; #endif } #if PORTABLE40 public static PropertyInfo GetProperty(this Type type, string name, BindingFlags bindingFlags, object placeholder1, Type propertyType, IList indexParameters, object placeholder2) { IList propertyInfos = type.GetProperties(bindingFlags); return propertyInfos.Where(p => { if (name != null && name != p.Name) return false; if (propertyType != null && propertyType != p.PropertyType) return false; if (indexParameters != null) { if (!p.GetIndexParameters().Select(ip => ip.ParameterType).SequenceEqual(indexParameters)) return false; } return true; }).SingleOrDefault(); } public static IEnumerable GetMember(this Type type, string name, MemberTypes memberType, BindingFlags bindingFlags) { return type.GetMembers(bindingFlags).Where(m => { if (name != null && name != m.Name) return false; if (m.MemberType() != memberType) return false; return true; }); } #endif #if (NETFX_CORE || PORTABLE) public static MethodInfo GetBaseDefinition(this MethodInfo method) { return method.GetRuntimeBaseDefinition(); } #endif #if (NETFX_CORE || PORTABLE) public static bool IsDefined(this Type type, Type attributeType, bool inherit) { return type.GetTypeInfo().CustomAttributes.Any(a => a.AttributeType == attributeType); } public static MethodInfo GetMethod(this Type type, string name) { return type.GetMethod(name, DefaultFlags); } public static MethodInfo GetMethod(this Type type, string name, BindingFlags bindingFlags) { return type.GetTypeInfo().GetDeclaredMethod(name); } public static MethodInfo GetMethod(this Type type, IList parameterTypes) { return type.GetMethod(null, parameterTypes); } public static MethodInfo GetMethod(this Type type, string name, IList parameterTypes) { return type.GetMethod(name, DefaultFlags, null, parameterTypes, null); } public static MethodInfo GetMethod(this Type type, string name, BindingFlags bindingFlags, object placeHolder1, IList parameterTypes, object placeHolder2) { return type.GetTypeInfo().DeclaredMethods.Where(m => { if (name != null && m.Name != name) return false; if (!TestAccessibility(m, bindingFlags)) return false; return m.GetParameters().Select(p => p.ParameterType).SequenceEqual(parameterTypes); }).SingleOrDefault(); } public static PropertyInfo GetProperty(this Type type, string name, BindingFlags bindingFlags, object placeholder1, Type propertyType, IList indexParameters, object placeholder2) { return type.GetTypeInfo().DeclaredProperties.Where(p => { if (name != null && name != p.Name) return false; if (propertyType != null && propertyType != p.PropertyType) return false; if (indexParameters != null) { if (!p.GetIndexParameters().Select(ip => ip.ParameterType).SequenceEqual(indexParameters)) return false; } return true; }).SingleOrDefault(); } public static IEnumerable GetMember(this Type type, string name, MemberTypes memberType, BindingFlags bindingFlags) { return type.GetTypeInfo().GetMembersRecursive().Where(m => { if (name != null && name != m.Name) return false; if (m.MemberType() != memberType) return false; if (!TestAccessibility(m, bindingFlags)) return false; return true; }); } public static IEnumerable GetConstructors(this Type type) { return type.GetConstructors(DefaultFlags); } public static IEnumerable GetConstructors(this Type type, BindingFlags bindingFlags) { return type.GetConstructors(bindingFlags, null); } private static IEnumerable GetConstructors(this Type type, BindingFlags bindingFlags, IList parameterTypes) { return type.GetTypeInfo().DeclaredConstructors.Where(c => { if (!TestAccessibility(c, bindingFlags)) return false; if (parameterTypes != null && !c.GetParameters().Select(p => p.ParameterType).SequenceEqual(parameterTypes)) return false; return true; }); } public static ConstructorInfo GetConstructor(this Type type, IList parameterTypes) { return type.GetConstructor(DefaultFlags, null, parameterTypes, null); } public static ConstructorInfo GetConstructor(this Type type, BindingFlags bindingFlags, object placeholder1, IList parameterTypes, object placeholder2) { return type.GetConstructors(bindingFlags, parameterTypes).SingleOrDefault(); } public static MemberInfo[] GetMember(this Type type, string member) { return type.GetMember(member, DefaultFlags); } public static MemberInfo[] GetMember(this Type type, string member, BindingFlags bindingFlags) { return type.GetTypeInfo().GetMembersRecursive().Where(m => m.Name == member && TestAccessibility(m, bindingFlags)).ToArray(); } public static MemberInfo GetField(this Type type, string member) { return type.GetField(member, DefaultFlags); } public static MemberInfo GetField(this Type type, string member, BindingFlags bindingFlags) { return type.GetTypeInfo().GetDeclaredField(member); } public static IEnumerable GetProperties(this Type type, BindingFlags bindingFlags) { IList properties = (bindingFlags.HasFlag(BindingFlags.DeclaredOnly)) ? type.GetTypeInfo().DeclaredProperties.ToList() : type.GetTypeInfo().GetPropertiesRecursive(); return properties.Where(p => TestAccessibility(p, bindingFlags)); } private static IList GetMembersRecursive(this TypeInfo type) { TypeInfo t = type; IList members = new List(); while (t != null) { foreach (var member in t.DeclaredMembers) { if (!members.Any(p => p.Name == member.Name)) members.Add(member); } t = (t.BaseType != null) ? t.BaseType.GetTypeInfo() : null; } return members; } private static IList GetPropertiesRecursive(this TypeInfo type) { TypeInfo t = type; IList properties = new List(); while (t != null) { foreach (var member in t.DeclaredProperties) { if (!properties.Any(p => p.Name == member.Name)) properties.Add(member); } t = (t.BaseType != null) ? t.BaseType.GetTypeInfo() : null; } return properties; } private static IList GetFieldsRecursive(this TypeInfo type) { TypeInfo t = type; IList fields = new List(); while (t != null) { foreach (var member in t.DeclaredFields) { if (!fields.Any(p => p.Name == member.Name)) fields.Add(member); } t = (t.BaseType != null) ? t.BaseType.GetTypeInfo() : null; } return fields; } public static IEnumerable GetMethods(this Type type, BindingFlags bindingFlags) { return type.GetTypeInfo().DeclaredMethods; } public static PropertyInfo GetProperty(this Type type, string name) { return type.GetProperty(name, DefaultFlags); } public static PropertyInfo GetProperty(this Type type, string name, BindingFlags bindingFlags) { return type.GetTypeInfo().GetDeclaredProperty(name); } public static IEnumerable GetFields(this Type type) { return type.GetFields(DefaultFlags); } public static IEnumerable GetFields(this Type type, BindingFlags bindingFlags) { IList fields = (bindingFlags.HasFlag(BindingFlags.DeclaredOnly)) ? type.GetTypeInfo().DeclaredFields.ToList() : type.GetTypeInfo().GetFieldsRecursive(); return fields.Where(f => TestAccessibility(f, bindingFlags)).ToList(); } private static bool TestAccessibility(PropertyInfo member, BindingFlags bindingFlags) { if (member.GetMethod != null && TestAccessibility(member.GetMethod, bindingFlags)) return true; if (member.SetMethod != null && TestAccessibility(member.SetMethod, bindingFlags)) return true; return false; } private static bool TestAccessibility(MemberInfo member, BindingFlags bindingFlags) { if (member is FieldInfo) { return TestAccessibility((FieldInfo) member, bindingFlags); } else if (member is MethodBase) { return TestAccessibility((MethodBase) member, bindingFlags); } else if (member is PropertyInfo) { return TestAccessibility((PropertyInfo) member, bindingFlags); } throw new Exception("Unexpected member type."); } private static bool TestAccessibility(FieldInfo member, BindingFlags bindingFlags) { bool visibility = (member.IsPublic && bindingFlags.HasFlag(BindingFlags.Public)) || (!member.IsPublic && bindingFlags.HasFlag(BindingFlags.NonPublic)); bool instance = (member.IsStatic && bindingFlags.HasFlag(BindingFlags.Static)) || (!member.IsStatic && bindingFlags.HasFlag(BindingFlags.Instance)); return visibility && instance; } private static bool TestAccessibility(MethodBase member, BindingFlags bindingFlags) { bool visibility = (member.IsPublic && bindingFlags.HasFlag(BindingFlags.Public)) || (!member.IsPublic && bindingFlags.HasFlag(BindingFlags.NonPublic)); bool instance = (member.IsStatic && bindingFlags.HasFlag(BindingFlags.Static)) || (!member.IsStatic && bindingFlags.HasFlag(BindingFlags.Instance)); return visibility && instance; } public static Type[] GetGenericArguments(this Type type) { return type.GetTypeInfo().GenericTypeArguments; } public static IEnumerable GetInterfaces(this Type type) { return type.GetTypeInfo().ImplementedInterfaces; } public static IEnumerable GetMethods(this Type type) { return type.GetTypeInfo().DeclaredMethods; } #endif public static bool IsAbstract(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.IsAbstract; #else return type.GetTypeInfo().IsAbstract; #endif } public static bool IsVisible(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.IsVisible; #else return type.GetTypeInfo().IsVisible; #endif } public static bool IsValueType(this Type type) { #if !(NETFX_CORE || PORTABLE) return type.IsValueType; #else return type.GetTypeInfo().IsValueType; #endif } public static bool AssignableToTypeName(this Type type, string fullTypeName, out Type match) { Type current = type; while (current != null) { if (string.Equals(current.FullName, fullTypeName, StringComparison.Ordinal)) { match = current; return true; } current = current.BaseType(); } foreach (Type i in type.GetInterfaces()) { if (string.Equals(i.Name, fullTypeName, StringComparison.Ordinal)) { match = type; return true; } } match = null; return false; } public static bool AssignableToTypeName(this Type type, string fullTypeName) { Type match; return type.AssignableToTypeName(fullTypeName, out match); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/ConvertUtils.cs0000664000175000017500000007204412454416117026210 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.ComponentModel; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) using System.Numerics; #endif using System.Text; using System.Text.RegularExpressions; using Newtonsoft.Json.Serialization; using System.Reflection; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) using System.Data.SqlTypes; #endif namespace Newtonsoft.Json.Utilities { internal enum PrimitiveTypeCode { Empty = 0, Object = 1, Char = 2, CharNullable = 3, Boolean = 4, BooleanNullable = 5, SByte = 6, SByteNullable = 7, Int16 = 8, Int16Nullable = 9, UInt16 = 10, UInt16Nullable = 11, Int32 = 12, Int32Nullable = 13, Byte = 14, ByteNullable = 15, UInt32 = 16, UInt32Nullable = 17, Int64 = 18, Int64Nullable = 19, UInt64 = 20, UInt64Nullable = 21, Single = 22, SingleNullable = 23, Double = 24, DoubleNullable = 25, DateTime = 26, DateTimeNullable = 27, DateTimeOffset = 28, DateTimeOffsetNullable = 29, Decimal = 30, DecimalNullable = 31, Guid = 32, GuidNullable = 33, TimeSpan = 34, TimeSpanNullable = 35, BigInteger = 36, BigIntegerNullable = 37, Uri = 38, String = 39, Bytes = 40, DBNull = 41 } internal class TypeInformation { public Type Type { get; set; } public PrimitiveTypeCode TypeCode { get; set; } } internal enum ParseResult { None = 0, Success = 1, Overflow = 2, Invalid = 3 } internal static class ConvertUtils { private static readonly Dictionary TypeCodeMap = new Dictionary { { typeof(char), PrimitiveTypeCode.Char }, { typeof(char?), PrimitiveTypeCode.CharNullable }, { typeof(bool), PrimitiveTypeCode.Boolean }, { typeof(bool?), PrimitiveTypeCode.BooleanNullable }, { typeof(sbyte), PrimitiveTypeCode.SByte }, { typeof(sbyte?), PrimitiveTypeCode.SByteNullable }, { typeof(short), PrimitiveTypeCode.Int16 }, { typeof(short?), PrimitiveTypeCode.Int16Nullable }, { typeof(ushort), PrimitiveTypeCode.UInt16 }, { typeof(ushort?), PrimitiveTypeCode.UInt16Nullable }, { typeof(int), PrimitiveTypeCode.Int32 }, { typeof(int?), PrimitiveTypeCode.Int32Nullable }, { typeof(byte), PrimitiveTypeCode.Byte }, { typeof(byte?), PrimitiveTypeCode.ByteNullable }, { typeof(uint), PrimitiveTypeCode.UInt32 }, { typeof(uint?), PrimitiveTypeCode.UInt32Nullable }, { typeof(long), PrimitiveTypeCode.Int64 }, { typeof(long?), PrimitiveTypeCode.Int64Nullable }, { typeof(ulong), PrimitiveTypeCode.UInt64 }, { typeof(ulong?), PrimitiveTypeCode.UInt64Nullable }, { typeof(float), PrimitiveTypeCode.Single }, { typeof(float?), PrimitiveTypeCode.SingleNullable }, { typeof(double), PrimitiveTypeCode.Double }, { typeof(double?), PrimitiveTypeCode.DoubleNullable }, { typeof(DateTime), PrimitiveTypeCode.DateTime }, { typeof(DateTime?), PrimitiveTypeCode.DateTimeNullable }, #if !NET20 { typeof(DateTimeOffset), PrimitiveTypeCode.DateTimeOffset }, { typeof(DateTimeOffset?), PrimitiveTypeCode.DateTimeOffsetNullable }, #endif { typeof(decimal), PrimitiveTypeCode.Decimal }, { typeof(decimal?), PrimitiveTypeCode.DecimalNullable }, { typeof(Guid), PrimitiveTypeCode.Guid }, { typeof(Guid?), PrimitiveTypeCode.GuidNullable }, { typeof(TimeSpan), PrimitiveTypeCode.TimeSpan }, { typeof(TimeSpan?), PrimitiveTypeCode.TimeSpanNullable }, #if !(PORTABLE || PORTABLE40 || NET35 || NET20) { typeof(BigInteger), PrimitiveTypeCode.BigInteger }, { typeof(BigInteger?), PrimitiveTypeCode.BigIntegerNullable }, #endif { typeof(Uri), PrimitiveTypeCode.Uri }, { typeof(string), PrimitiveTypeCode.String }, { typeof(byte[]), PrimitiveTypeCode.Bytes }, #if !(PORTABLE || PORTABLE40 || NETFX_CORE) { typeof(DBNull), PrimitiveTypeCode.DBNull } #endif }; #if !(NETFX_CORE || PORTABLE) private static readonly TypeInformation[] PrimitiveTypeCodes = { new TypeInformation { Type = typeof(object), TypeCode = PrimitiveTypeCode.Empty }, new TypeInformation { Type = typeof(object), TypeCode = PrimitiveTypeCode.Object }, new TypeInformation { Type = typeof(object), TypeCode = PrimitiveTypeCode.DBNull }, new TypeInformation { Type = typeof(bool), TypeCode = PrimitiveTypeCode.Boolean }, new TypeInformation { Type = typeof(char), TypeCode = PrimitiveTypeCode.Char }, new TypeInformation { Type = typeof(sbyte), TypeCode = PrimitiveTypeCode.SByte }, new TypeInformation { Type = typeof(byte), TypeCode = PrimitiveTypeCode.Byte }, new TypeInformation { Type = typeof(short), TypeCode = PrimitiveTypeCode.Int16 }, new TypeInformation { Type = typeof(ushort), TypeCode = PrimitiveTypeCode.UInt16 }, new TypeInformation { Type = typeof(int), TypeCode = PrimitiveTypeCode.Int32 }, new TypeInformation { Type = typeof(uint), TypeCode = PrimitiveTypeCode.UInt32 }, new TypeInformation { Type = typeof(long), TypeCode = PrimitiveTypeCode.Int64 }, new TypeInformation { Type = typeof(ulong), TypeCode = PrimitiveTypeCode.UInt64 }, new TypeInformation { Type = typeof(float), TypeCode = PrimitiveTypeCode.Single }, new TypeInformation { Type = typeof(double), TypeCode = PrimitiveTypeCode.Double }, new TypeInformation { Type = typeof(decimal), TypeCode = PrimitiveTypeCode.Decimal }, new TypeInformation { Type = typeof(DateTime), TypeCode = PrimitiveTypeCode.DateTime }, new TypeInformation { Type = typeof(object), TypeCode = PrimitiveTypeCode.Empty }, // no 17 in TypeCode for some reason new TypeInformation { Type = typeof(string), TypeCode = PrimitiveTypeCode.String } }; #endif public static PrimitiveTypeCode GetTypeCode(Type t) { bool isEnum; return GetTypeCode(t, out isEnum); } public static PrimitiveTypeCode GetTypeCode(Type t, out bool isEnum) { PrimitiveTypeCode typeCode; if (TypeCodeMap.TryGetValue(t, out typeCode)) { isEnum = false; return typeCode; } if (t.IsEnum()) { isEnum = true; return GetTypeCode(Enum.GetUnderlyingType(t)); } // performance? if (ReflectionUtils.IsNullableType(t)) { Type nonNullable = Nullable.GetUnderlyingType(t); if (nonNullable.IsEnum()) { Type nullableUnderlyingType = typeof(Nullable<>).MakeGenericType(Enum.GetUnderlyingType(nonNullable)); isEnum = true; return GetTypeCode(nullableUnderlyingType); } } isEnum = false; return PrimitiveTypeCode.Object; } #if !(NETFX_CORE || PORTABLE) public static TypeInformation GetTypeInformation(IConvertible convertable) { TypeInformation typeInformation = PrimitiveTypeCodes[(int)convertable.GetTypeCode()]; return typeInformation; } #endif public static bool IsConvertible(Type t) { #if !(NETFX_CORE || PORTABLE) return typeof(IConvertible).IsAssignableFrom(t); #else return ( t == typeof(bool) || t == typeof(byte) || t == typeof(char) || t == typeof(DateTime) || t == typeof(decimal) || t == typeof(double) || t == typeof(short) || t == typeof(int) || t == typeof(long) || t == typeof(sbyte) || t == typeof(float) || t == typeof(string) || t == typeof(ushort) || t == typeof(uint) || t == typeof(ulong) || t.IsEnum()); #endif } public static TimeSpan ParseTimeSpan(string input) { #if !(NET35 || NET20) return TimeSpan.Parse(input, CultureInfo.InvariantCulture); #else return TimeSpan.Parse(input); #endif } internal struct TypeConvertKey : IEquatable { private readonly Type _initialType; private readonly Type _targetType; public Type InitialType { get { return _initialType; } } public Type TargetType { get { return _targetType; } } public TypeConvertKey(Type initialType, Type targetType) { _initialType = initialType; _targetType = targetType; } public override int GetHashCode() { return _initialType.GetHashCode() ^ _targetType.GetHashCode(); } public override bool Equals(object obj) { if (!(obj is TypeConvertKey)) return false; return Equals((TypeConvertKey)obj); } public bool Equals(TypeConvertKey other) { return (_initialType == other._initialType && _targetType == other._targetType); } } private static readonly ThreadSafeStore> CastConverters = new ThreadSafeStore>(CreateCastConverter); private static Func CreateCastConverter(TypeConvertKey t) { MethodInfo castMethodInfo = t.TargetType.GetMethod("op_Implicit", new[] { t.InitialType }); if (castMethodInfo == null) castMethodInfo = t.TargetType.GetMethod("op_Explicit", new[] { t.InitialType }); if (castMethodInfo == null) return null; MethodCall call = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(castMethodInfo); return o => call(null, o); } #if !(NET20 || NET35 || PORTABLE || PORTABLE40) internal static BigInteger ToBigInteger(object value) { if (value is BigInteger) return (BigInteger)value; if (value is string) return BigInteger.Parse((string)value, CultureInfo.InvariantCulture); if (value is float) return new BigInteger((float)value); if (value is double) return new BigInteger((double)value); if (value is decimal) return new BigInteger((decimal)value); if (value is int) return new BigInteger((int)value); if (value is long) return new BigInteger((long)value); if (value is uint) return new BigInteger((uint)value); if (value is ulong) return new BigInteger((ulong)value); if (value is byte[]) return new BigInteger((byte[])value); throw new InvalidCastException("Cannot convert {0} to BigInteger.".FormatWith(CultureInfo.InvariantCulture, value.GetType())); } public static object FromBigInteger(BigInteger i, Type targetType) { if (targetType == typeof(decimal)) return (decimal)i; if (targetType == typeof(double)) return (double)i; if (targetType == typeof(float)) return (float)i; if (targetType == typeof(ulong)) return (ulong)i; try { return System.Convert.ChangeType((long)i, targetType, CultureInfo.InvariantCulture); } catch (Exception ex) { throw new InvalidOperationException("Can not convert from BigInteger to {0}.".FormatWith(CultureInfo.InvariantCulture, targetType), ex); } } #endif #region TryConvert internal enum ConvertResult { Success = 0, CannotConvertNull = 1, NotInstantiableType = 2, NoValidConversion = 3 } public static object Convert(object initialValue, CultureInfo culture, Type targetType) { object value; switch (TryConvertInternal(initialValue, culture, targetType, out value)) { case ConvertResult.Success: return value; case ConvertResult.CannotConvertNull: throw new Exception("Can not convert null {0} into non-nullable {1}.".FormatWith(CultureInfo.InvariantCulture, initialValue.GetType(), targetType)); case ConvertResult.NotInstantiableType: throw new ArgumentException("Target type {0} is not a value type or a non-abstract class.".FormatWith(CultureInfo.InvariantCulture, targetType), "targetType"); case ConvertResult.NoValidConversion: throw new InvalidOperationException("Can not convert from {0} to {1}.".FormatWith(CultureInfo.InvariantCulture, initialValue.GetType(), targetType)); default: throw new InvalidOperationException("Unexpected conversion result."); } } private static bool TryConvert(object initialValue, CultureInfo culture, Type targetType, out object value) { try { if (TryConvertInternal(initialValue, culture, targetType, out value) == ConvertResult.Success) return true; value = null; return false; } catch { value = null; return false; } } private static ConvertResult TryConvertInternal(object initialValue, CultureInfo culture, Type targetType, out object value) { if (initialValue == null) throw new ArgumentNullException("initialValue"); if (ReflectionUtils.IsNullableType(targetType)) targetType = Nullable.GetUnderlyingType(targetType); Type initialType = initialValue.GetType(); if (targetType == initialType) { value = initialValue; return ConvertResult.Success; } // use Convert.ChangeType if both types are IConvertible if (ConvertUtils.IsConvertible(initialValue.GetType()) && ConvertUtils.IsConvertible(targetType)) { if (targetType.IsEnum()) { if (initialValue is string) { value = Enum.Parse(targetType, initialValue.ToString(), true); return ConvertResult.Success; } else if (IsInteger(initialValue)) { value = Enum.ToObject(targetType, initialValue); return ConvertResult.Success; } } value = System.Convert.ChangeType(initialValue, targetType, culture); return ConvertResult.Success; } #if !NET20 if (initialValue is DateTime && targetType == typeof(DateTimeOffset)) { value = new DateTimeOffset((DateTime)initialValue); return ConvertResult.Success; } #endif if (initialValue is byte[] && targetType == typeof(Guid)) { value = new Guid((byte[])initialValue); return ConvertResult.Success; } if (initialValue is Guid && targetType == typeof(byte[])) { value = ((Guid)initialValue).ToByteArray(); return ConvertResult.Success; } if (initialValue is string) { if (targetType == typeof(Guid)) { value = new Guid((string)initialValue); return ConvertResult.Success; } if (targetType == typeof(Uri)) { value = new Uri((string)initialValue, UriKind.RelativeOrAbsolute); return ConvertResult.Success; } if (targetType == typeof(TimeSpan)) { value = ParseTimeSpan((string)initialValue); return ConvertResult.Success; } if (targetType == typeof(byte[])) { value = System.Convert.FromBase64String((string)initialValue); return ConvertResult.Success; } if (typeof(Type).IsAssignableFrom(targetType)) { value = Type.GetType((string)initialValue, true); return ConvertResult.Success; } } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE) if (targetType == typeof(BigInteger)) { value = ToBigInteger(initialValue); return ConvertResult.Success; } if (initialValue is BigInteger) { value = FromBigInteger((BigInteger)initialValue, targetType); return ConvertResult.Success; } #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) // see if source or target types have a TypeConverter that converts between the two TypeConverter toConverter = GetConverter(initialType); if (toConverter != null && toConverter.CanConvertTo(targetType)) { value = toConverter.ConvertTo(null, culture, initialValue, targetType); return ConvertResult.Success; } TypeConverter fromConverter = GetConverter(targetType); if (fromConverter != null && fromConverter.CanConvertFrom(initialType)) { value = fromConverter.ConvertFrom(null, culture, initialValue); return ConvertResult.Success; } #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) // handle DBNull and INullable if (initialValue == DBNull.Value) { if (ReflectionUtils.IsNullable(targetType)) { value = EnsureTypeAssignable(null, initialType, targetType); return ConvertResult.Success; } // cannot convert null to non-nullable value = null; return ConvertResult.CannotConvertNull; } #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) if (initialValue is INullable) { value = EnsureTypeAssignable(ToValue((INullable)initialValue), initialType, targetType); return ConvertResult.Success; } #endif if (targetType.IsInterface() || targetType.IsGenericTypeDefinition() || targetType.IsAbstract()) { value = null; return ConvertResult.NotInstantiableType; } value = null; return ConvertResult.NoValidConversion; } #endregion #region ConvertOrCast /// /// Converts the value to the specified type. If the value is unable to be converted, the /// value is checked whether it assignable to the specified type. /// /// The value to convert. /// The culture to use when converting. /// The type to convert or cast the value to. /// /// The converted type. If conversion was unsuccessful, the initial value /// is returned if assignable to the target type. /// public static object ConvertOrCast(object initialValue, CultureInfo culture, Type targetType) { object convertedValue; if (targetType == typeof(object)) return initialValue; if (initialValue == null && ReflectionUtils.IsNullable(targetType)) return null; if (TryConvert(initialValue, culture, targetType, out convertedValue)) return convertedValue; return EnsureTypeAssignable(initialValue, ReflectionUtils.GetObjectType(initialValue), targetType); } #endregion private static object EnsureTypeAssignable(object value, Type initialType, Type targetType) { Type valueType = (value != null) ? value.GetType() : null; if (value != null) { if (targetType.IsAssignableFrom(valueType)) return value; Func castConverter = CastConverters.Get(new TypeConvertKey(valueType, targetType)); if (castConverter != null) return castConverter(value); } else { if (ReflectionUtils.IsNullable(targetType)) return null; } throw new ArgumentException("Could not cast or convert from {0} to {1}.".FormatWith(CultureInfo.InvariantCulture, (initialType != null) ? initialType.ToString() : "{null}", targetType)); } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) public static object ToValue(INullable nullableValue) { if (nullableValue == null) return null; else if (nullableValue is SqlInt32) return ToValue((SqlInt32)nullableValue); else if (nullableValue is SqlInt64) return ToValue((SqlInt64)nullableValue); else if (nullableValue is SqlBoolean) return ToValue((SqlBoolean)nullableValue); else if (nullableValue is SqlString) return ToValue((SqlString)nullableValue); else if (nullableValue is SqlDateTime) return ToValue((SqlDateTime)nullableValue); throw new ArgumentException("Unsupported INullable type: {0}".FormatWith(CultureInfo.InvariantCulture, nullableValue.GetType())); } #endif #if !(NETFX_CORE || PORTABLE40 || PORTABLE) internal static TypeConverter GetConverter(Type t) { return JsonTypeReflector.GetTypeConverter(t); } #endif public static bool IsInteger(object value) { switch (GetTypeCode(value.GetType())) { case PrimitiveTypeCode.SByte: case PrimitiveTypeCode.Byte: case PrimitiveTypeCode.Int16: case PrimitiveTypeCode.UInt16: case PrimitiveTypeCode.Int32: case PrimitiveTypeCode.UInt32: case PrimitiveTypeCode.Int64: case PrimitiveTypeCode.UInt64: return true; default: return false; } } public static ParseResult Int32TryParse(char[] chars, int start, int length, out int value) { value = 0; if (length == 0) return ParseResult.Invalid; bool isNegative = (chars[start] == '-'); if (isNegative) { // text just a negative sign if (length == 1) return ParseResult.Invalid; start++; length--; } int end = start + length; for (int i = start; i < end; i++) { int c = chars[i] - '0'; if (c < 0 || c > 9) return ParseResult.Invalid; int newValue = (10 * value) - c; // overflow has caused the number to loop around if (newValue > value) { i++; // double check the rest of the string that there wasn't anything invalid // invalid result takes precedence over overflow result for (; i < end; i++) { c = chars[i] - '0'; if (c < 0 || c > 9) return ParseResult.Invalid; } return ParseResult.Overflow; } value = newValue; } // go from negative to positive to avoids overflow // negative can be slightly bigger than positive if (!isNegative) { // negative integer can be one bigger than positive if (value == int.MinValue) return ParseResult.Overflow; value = -value; } return ParseResult.Success; } public static ParseResult Int64TryParse(char[] chars, int start, int length, out long value) { value = 0; if (length == 0) return ParseResult.Invalid; bool isNegative = (chars[start] == '-'); if (isNegative) { // text just a negative sign if (length == 1) return ParseResult.Invalid; start++; length--; } int end = start + length; for (int i = start; i < end; i++) { int c = chars[i] - '0'; if (c < 0 || c > 9) return ParseResult.Invalid; long newValue = (10 * value) - c; // overflow has caused the number to loop around if (newValue > value) { i++; // double check the rest of the string that there wasn't anything invalid // invalid result takes precedence over overflow result for (; i < end; i++) { c = chars[i] - '0'; if (c < 0 || c > 9) return ParseResult.Invalid; } return ParseResult.Overflow; } value = newValue; } // go from negative to positive to avoids overflow // negative can be slightly bigger than positive if (!isNegative) { // negative integer can be one bigger than positive if (value == long.MinValue) return ParseResult.Overflow; value = -value; } return ParseResult.Success; } public static bool TryConvertGuid(string s, out Guid g) { #if NET20 || NET35 if (s == null) throw new ArgumentNullException("s"); Regex format = new Regex( "^[A-Fa-f0-9]{32}$|" + "^({|\\()?[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}(}|\\))?$|" + "^({)?[0xA-Fa-f0-9]{3,10}(, {0,1}[0xA-Fa-f0-9]{3,6}){2}, {0,1}({)([0xA-Fa-f0-9]{3,4}, {0,1}){7}[0xA-Fa-f0-9]{3,4}(}})$"); Match match = format.Match(s); if (match.Success) { g = new Guid(s); return true; } g = Guid.Empty; return false; #else return Guid.TryParse(s, out g); #endif } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/ImmutableCollectionsUtils.cs0000664000175000017500000002433512454416117030706 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET20 || NET35 || NET40 || PORTABLE40) using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Utilities { internal static class ImmutableCollectionsUtils { internal class ImmutableCollectionTypeInfo { public ImmutableCollectionTypeInfo(string contractTypeName, string createdTypeName, string builderTypeName) { ContractTypeName = contractTypeName; CreatedTypeName = createdTypeName; BuilderTypeName = builderTypeName; } public string ContractTypeName { get; set; } public string CreatedTypeName { get; set; } public string BuilderTypeName { get; set; } } private const string ImmutableListGenericInterfaceTypeName = "System.Collections.Immutable.IImmutableList`1"; private const string ImmutableQueueGenericInterfaceTypeName = "System.Collections.Immutable.IImmutableQueue`1"; private const string ImmutableStackGenericInterfaceTypeName = "System.Collections.Immutable.IImmutableStack`1"; private const string ImmutableSetGenericInterfaceTypeName = "System.Collections.Immutable.IImmutableSet`1"; private const string ImmutableArrayTypeName = "System.Collections.Immutable.ImmutableArray"; private const string ImmutableArrayGenericTypeName = "System.Collections.Immutable.ImmutableArray`1"; private const string ImmutableListTypeName = "System.Collections.Immutable.ImmutableList"; private const string ImmutableListGenericTypeName = "System.Collections.Immutable.ImmutableList`1"; private const string ImmutableQueueTypeName = "System.Collections.Immutable.ImmutableQueue"; private const string ImmutableQueueGenericTypeName = "System.Collections.Immutable.ImmutableQueue`1"; private const string ImmutableStackTypeName = "System.Collections.Immutable.ImmutableStack"; private const string ImmutableStackGenericTypeName = "System.Collections.Immutable.ImmutableStack`1"; private const string ImmutableSortedSetTypeName = "System.Collections.Immutable.ImmutableSortedSet"; private const string ImmutableSortedSetGenericTypeName = "System.Collections.Immutable.ImmutableSortedSet`1"; private const string ImmutableHashSetTypeName = "System.Collections.Immutable.ImmutableHashSet"; private const string ImmutableHashSetGenericTypeName = "System.Collections.Immutable.ImmutableHashSet`1"; private static readonly IList ArrayContractImmutableCollectionDefinitions = new List { new ImmutableCollectionTypeInfo(ImmutableListGenericInterfaceTypeName, ImmutableListGenericTypeName, ImmutableListTypeName), new ImmutableCollectionTypeInfo(ImmutableListGenericTypeName, ImmutableListGenericTypeName, ImmutableListTypeName), new ImmutableCollectionTypeInfo(ImmutableQueueGenericInterfaceTypeName, ImmutableQueueGenericTypeName, ImmutableQueueTypeName), new ImmutableCollectionTypeInfo(ImmutableQueueGenericTypeName, ImmutableQueueGenericTypeName, ImmutableQueueTypeName), new ImmutableCollectionTypeInfo(ImmutableStackGenericInterfaceTypeName, ImmutableStackGenericTypeName, ImmutableStackTypeName), new ImmutableCollectionTypeInfo(ImmutableStackGenericTypeName, ImmutableStackGenericTypeName, ImmutableStackTypeName), new ImmutableCollectionTypeInfo(ImmutableSetGenericInterfaceTypeName, ImmutableSortedSetGenericTypeName, ImmutableSortedSetTypeName), new ImmutableCollectionTypeInfo(ImmutableSortedSetGenericTypeName, ImmutableSortedSetGenericTypeName, ImmutableSortedSetTypeName), new ImmutableCollectionTypeInfo(ImmutableHashSetGenericTypeName, ImmutableHashSetGenericTypeName, ImmutableHashSetTypeName), new ImmutableCollectionTypeInfo(ImmutableArrayGenericTypeName, ImmutableArrayGenericTypeName, ImmutableArrayTypeName) }; private const string ImmutableDictionaryGenericInterfaceTypeName = "System.Collections.Immutable.IImmutableDictionary`2"; private const string ImmutableDictionaryTypeName = "System.Collections.Immutable.ImmutableDictionary"; private const string ImmutableDictionaryGenericTypeName = "System.Collections.Immutable.ImmutableDictionary`2"; private const string ImmutableSortedDictionaryTypeName = "System.Collections.Immutable.ImmutableSortedDictionary"; private const string ImmutableSortedDictionaryGenericTypeName = "System.Collections.Immutable.ImmutableSortedDictionary`2"; private static readonly IList DictionaryContractImmutableCollectionDefinitions = new List { new ImmutableCollectionTypeInfo(ImmutableDictionaryGenericInterfaceTypeName, ImmutableSortedDictionaryGenericTypeName, ImmutableSortedDictionaryTypeName), new ImmutableCollectionTypeInfo(ImmutableSortedDictionaryGenericTypeName, ImmutableSortedDictionaryGenericTypeName, ImmutableSortedDictionaryTypeName), new ImmutableCollectionTypeInfo(ImmutableDictionaryGenericTypeName, ImmutableDictionaryGenericTypeName, ImmutableDictionaryTypeName) }; internal static bool TryBuildImmutableForArrayContract(Type underlyingType, Type collectionItemType, out Type createdType, out ObjectConstructor parameterizedCreator) { if (underlyingType.IsGenericType()) { Type underlyingTypeDefinition = underlyingType.GetGenericTypeDefinition(); string name = underlyingTypeDefinition.FullName; ImmutableCollectionTypeInfo definition = ArrayContractImmutableCollectionDefinitions.FirstOrDefault(d => d.ContractTypeName == name); if (definition != null) { Type createdTypeDefinition = underlyingTypeDefinition.Assembly().GetType(definition.CreatedTypeName); Type builderTypeDefinition = underlyingTypeDefinition.Assembly().GetType(definition.BuilderTypeName); if (createdTypeDefinition != null && builderTypeDefinition != null) { MethodInfo mb = builderTypeDefinition.GetMethods().FirstOrDefault(m => m.Name == "CreateRange" && m.GetParameters().Length == 1); if (mb != null) { createdType = createdTypeDefinition.MakeGenericType(collectionItemType); MethodInfo method = mb.MakeGenericMethod(collectionItemType); parameterizedCreator = JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(method); return true; } } } } createdType = null; parameterizedCreator = null; return false; } internal static bool TryBuildImmutableForDictionaryContract(Type underlyingType, Type keyItemType, Type valueItemType, out Type createdType, out ObjectConstructor parameterizedCreator) { if (underlyingType.IsGenericType()) { Type underlyingTypeDefinition = underlyingType.GetGenericTypeDefinition(); string name = underlyingTypeDefinition.FullName; ImmutableCollectionTypeInfo definition = DictionaryContractImmutableCollectionDefinitions.FirstOrDefault(d => d.ContractTypeName == name); if (definition != null) { Type createdTypeDefinition = underlyingTypeDefinition.Assembly().GetType(definition.CreatedTypeName); Type builderTypeDefinition = underlyingTypeDefinition.Assembly().GetType(definition.BuilderTypeName); if (createdTypeDefinition != null && builderTypeDefinition != null) { MethodInfo mb = builderTypeDefinition.GetMethods().FirstOrDefault(m => { ParameterInfo[] parameters = m.GetParameters(); return m.Name == "CreateRange" && parameters.Length == 1 && parameters[0].ParameterType.IsGenericType() && parameters[0].ParameterType.GetGenericTypeDefinition() == typeof(IEnumerable<>); }); if (mb != null) { createdType = createdTypeDefinition.MakeGenericType(keyItemType, valueItemType); MethodInfo method = mb.MakeGenericMethod(keyItemType, valueItemType); parameterizedCreator = JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(method); return true; } } } } createdType = null; parameterizedCreator = null; return false; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/LinqBridge.cs0000664000175000017500000025353212454416117025572 0ustar directhexdirecthex #if NET20 #region License, Terms and Author(s) // // LINQBridge // Copyright (c) 2007-9 Atif Aziz, Joseph Albahari. All rights reserved. // // Author(s): // // Atif Aziz, http://www.raboof.com // // This library is free software; you can redistribute it and/or modify it // under the terms of the New BSD License, a copy of which should have // been delivered along with this distribution. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A // PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // #endregion using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Globalization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Utilities.LinqBridge { /// /// Provides a set of static (Shared in Visual Basic) methods for /// querying objects that implement . /// internal static partial class Enumerable { /// /// Returns the input typed as . /// public static IEnumerable AsEnumerable(IEnumerable source) { return source; } /// /// Returns an empty that has the /// specified type argument. /// public static IEnumerable Empty() { return Sequence.Empty; } /// /// Converts the elements of an to the /// specified type. /// public static IEnumerable Cast( this IEnumerable source) { CheckNotNull(source, "source"); return CastYield(source); } private static IEnumerable CastYield( IEnumerable source) { foreach (var item in source) yield return (TResult) item; } /// /// Filters the elements of an based on a specified type. /// public static IEnumerable OfType( this IEnumerable source) { CheckNotNull(source, "source"); return OfTypeYield(source); } private static IEnumerable OfTypeYield( IEnumerable source) { foreach (var item in source) if (item is TResult) yield return (TResult) item; } /// /// Generates a sequence of integral numbers within a specified range. /// /// The value of the first integer in the sequence. /// The number of sequential integers to generate. public static IEnumerable Range(int start, int count) { if (count < 0) throw new ArgumentOutOfRangeException("count", count, null); var end = (long) start + count; if (end - 1 >= int.MaxValue) throw new ArgumentOutOfRangeException("count", count, null); return RangeYield(start, end); } private static IEnumerable RangeYield(int start, long end) { for (var i = start; i < end; i++) yield return i; } /// /// Generates a sequence that contains one repeated value. /// public static IEnumerable Repeat(TResult element, int count) { if (count < 0) throw new ArgumentOutOfRangeException("count", count, null); return RepeatYield(element, count); } private static IEnumerable RepeatYield(TResult element, int count) { for (var i = 0; i < count; i++) yield return element; } /// /// Filters a sequence of values based on a predicate. /// public static IEnumerable Where( this IEnumerable source, Func predicate) { CheckNotNull(predicate, "predicate"); return source.Where((item, i) => predicate(item)); } /// /// Filters a sequence of values based on a predicate. /// Each element's index is used in the logic of the predicate function. /// public static IEnumerable Where( this IEnumerable source, Func predicate) { CheckNotNull(source, "source"); CheckNotNull(predicate, "predicate"); return WhereYield(source, predicate); } private static IEnumerable WhereYield( IEnumerable source, Func predicate) { var i = 0; foreach (var item in source) if (predicate(item, i++)) yield return item; } /// /// Projects each element of a sequence into a new form. /// public static IEnumerable Select( this IEnumerable source, Func selector) { CheckNotNull(selector, "selector"); return source.Select((item, i) => selector(item)); } /// /// Projects each element of a sequence into a new form by /// incorporating the element's index. /// public static IEnumerable Select( this IEnumerable source, Func selector) { CheckNotNull(source, "source"); CheckNotNull(selector, "selector"); return SelectYield(source, selector); } private static IEnumerable SelectYield( IEnumerable source, Func selector) { var i = 0; foreach (var item in source) yield return selector(item, i++); } /// /// Projects each element of a sequence to an /// and flattens the resulting sequences into one sequence. /// public static IEnumerable SelectMany( this IEnumerable source, Func> selector) { CheckNotNull(selector, "selector"); return source.SelectMany((item, i) => selector(item)); } /// /// Projects each element of a sequence to an , /// and flattens the resulting sequences into one sequence. The /// index of each source element is used in the projected form of /// that element. /// public static IEnumerable SelectMany( this IEnumerable source, Func> selector) { CheckNotNull(selector, "selector"); return source.SelectMany(selector, (item, subitem) => subitem); } /// /// Projects each element of a sequence to an , /// flattens the resulting sequences into one sequence, and invokes /// a result selector function on each element therein. /// public static IEnumerable SelectMany( this IEnumerable source, Func> collectionSelector, Func resultSelector) { CheckNotNull(collectionSelector, "collectionSelector"); return source.SelectMany((item, i) => collectionSelector(item), resultSelector); } /// /// Projects each element of a sequence to an , /// flattens the resulting sequences into one sequence, and invokes /// a result selector function on each element therein. The index of /// each source element is used in the intermediate projected form /// of that element. /// public static IEnumerable SelectMany( this IEnumerable source, Func> collectionSelector, Func resultSelector) { CheckNotNull(source, "source"); CheckNotNull(collectionSelector, "collectionSelector"); CheckNotNull(resultSelector, "resultSelector"); return SelectManyYield(source, collectionSelector, resultSelector); } private static IEnumerable SelectManyYield( this IEnumerable source, Func> collectionSelector, Func resultSelector) { var i = 0; foreach (var item in source) foreach (var subitem in collectionSelector(item, i++)) yield return resultSelector(item, subitem); } /// /// Returns elements from a sequence as long as a specified condition is true. /// public static IEnumerable TakeWhile( this IEnumerable source, Func predicate) { CheckNotNull(predicate, "predicate"); return source.TakeWhile((item, i) => predicate(item)); } /// /// Returns elements from a sequence as long as a specified condition is true. /// The element's index is used in the logic of the predicate function. /// public static IEnumerable TakeWhile( this IEnumerable source, Func predicate) { CheckNotNull(source, "source"); CheckNotNull(predicate, "predicate"); return TakeWhileYield(source, predicate); } private static IEnumerable TakeWhileYield( this IEnumerable source, Func predicate) { var i = 0; foreach (var item in source) if (predicate(item, i++)) yield return item; else break; } private static class Futures { public static readonly Func Default = () => default(T); public static readonly Func Undefined = () => { throw new InvalidOperationException(); }; } /// /// Base implementation of First operator. /// private static TSource FirstImpl( this IEnumerable source, Func empty) { CheckNotNull(source, "source"); Debug.Assert(empty != null); var list = source as IList; // optimized case for lists if (list != null) return list.Count > 0 ? list[0] : empty(); using (var e = source.GetEnumerator()) // fallback for enumeration return e.MoveNext() ? e.Current : empty(); } /// /// Returns the first element of a sequence. /// public static TSource First( this IEnumerable source) { return source.FirstImpl(Futures.Undefined); } /// /// Returns the first element in a sequence that satisfies a specified condition. /// public static TSource First( this IEnumerable source, Func predicate) { return First(source.Where(predicate)); } /// /// Returns the first element of a sequence, or a default value if /// the sequence contains no elements. /// public static TSource FirstOrDefault( this IEnumerable source) { return source.FirstImpl(Futures.Default); } /// /// Returns the first element of the sequence that satisfies a /// condition or a default value if no such element is found. /// public static TSource FirstOrDefault( this IEnumerable source, Func predicate) { return FirstOrDefault(source.Where(predicate)); } /// /// Base implementation of Last operator. /// private static TSource LastImpl( this IEnumerable source, Func empty) { CheckNotNull(source, "source"); var list = source as IList; // optimized case for lists if (list != null) return list.Count > 0 ? list[list.Count - 1] : empty(); using (var e = source.GetEnumerator()) { if (!e.MoveNext()) return empty(); var last = e.Current; while (e.MoveNext()) last = e.Current; return last; } } /// /// Returns the last element of a sequence. /// public static TSource Last( this IEnumerable source) { return source.LastImpl(Futures.Undefined); } /// /// Returns the last element of a sequence that satisfies a /// specified condition. /// public static TSource Last( this IEnumerable source, Func predicate) { return Last(source.Where(predicate)); } /// /// Returns the last element of a sequence, or a default value if /// the sequence contains no elements. /// public static TSource LastOrDefault( this IEnumerable source) { return source.LastImpl(Futures.Default); } /// /// Returns the last element of a sequence that satisfies a /// condition or a default value if no such element is found. /// public static TSource LastOrDefault( this IEnumerable source, Func predicate) { return LastOrDefault(source.Where(predicate)); } /// /// Base implementation of Single operator. /// private static TSource SingleImpl( this IEnumerable source, Func empty) { CheckNotNull(source, "source"); using (var e = source.GetEnumerator()) { if (e.MoveNext()) { var single = e.Current; if (!e.MoveNext()) return single; throw new InvalidOperationException(); } return empty(); } } /// /// Returns the only element of a sequence, and throws an exception /// if there is not exactly one element in the sequence. /// public static TSource Single( this IEnumerable source) { return source.SingleImpl(Futures.Undefined); } /// /// Returns the only element of a sequence that satisfies a /// specified condition, and throws an exception if more than one /// such element exists. /// public static TSource Single( this IEnumerable source, Func predicate) { return Single(source.Where(predicate)); } /// /// Returns the only element of a sequence, or a default value if /// the sequence is empty; this method throws an exception if there /// is more than one element in the sequence. /// public static TSource SingleOrDefault( this IEnumerable source) { return source.SingleImpl(Futures.Default); } /// /// Returns the only element of a sequence that satisfies a /// specified condition or a default value if no such element /// exists; this method throws an exception if more than one element /// satisfies the condition. /// public static TSource SingleOrDefault( this IEnumerable source, Func predicate) { return SingleOrDefault(source.Where(predicate)); } /// /// Returns the element at a specified index in a sequence. /// public static TSource ElementAt( this IEnumerable source, int index) { CheckNotNull(source, "source"); if (index < 0) throw new ArgumentOutOfRangeException("index", index, null); var list = source as IList; if (list != null) return list[index]; try { return source.SkipWhile((item, i) => i < index).First(); } catch (InvalidOperationException) // if thrown by First { throw new ArgumentOutOfRangeException("index", index, null); } } /// /// Returns the element at a specified index in a sequence or a /// default value if the index is out of range. /// public static TSource ElementAtOrDefault( this IEnumerable source, int index) { CheckNotNull(source, "source"); if (index < 0) return default(TSource); var list = source as IList; if (list != null) return index < list.Count ? list[index] : default(TSource); return source.SkipWhile((item, i) => i < index).FirstOrDefault(); } /// /// Inverts the order of the elements in a sequence. /// public static IEnumerable Reverse( this IEnumerable source) { CheckNotNull(source, "source"); return ReverseYield(source); } private static IEnumerable ReverseYield(IEnumerable source) { var stack = new Stack(); foreach (var item in source) stack.Push(item); foreach (var item in stack) yield return item; } /// /// Returns a specified number of contiguous elements from the start /// of a sequence. /// public static IEnumerable Take( this IEnumerable source, int count) { return source.Where((item, i) => i < count); } /// /// Bypasses a specified number of elements in a sequence and then /// returns the remaining elements. /// public static IEnumerable Skip( this IEnumerable source, int count) { return source.Where((item, i) => i >= count); } /// /// Bypasses elements in a sequence as long as a specified condition /// is true and then returns the remaining elements. /// public static IEnumerable SkipWhile( this IEnumerable source, Func predicate) { CheckNotNull(predicate, "predicate"); return source.SkipWhile((item, i) => predicate(item)); } /// /// Bypasses elements in a sequence as long as a specified condition /// is true and then returns the remaining elements. The element's /// index is used in the logic of the predicate function. /// public static IEnumerable SkipWhile( this IEnumerable source, Func predicate) { CheckNotNull(source, "source"); CheckNotNull(predicate, "predicate"); return SkipWhileYield(source, predicate); } private static IEnumerable SkipWhileYield( IEnumerable source, Func predicate) { using (var e = source.GetEnumerator()) { for (var i = 0;; i++) { if (!e.MoveNext()) yield break; if (!predicate(e.Current, i)) break; } do { yield return e.Current; } while (e.MoveNext()); } } /// /// Returns the number of elements in a sequence. /// public static int Count( this IEnumerable source) { CheckNotNull(source, "source"); var collection = source as ICollection; return collection != null ? collection.Count : source.Aggregate(0, (count, item) => checked(count + 1)); } /// /// Returns a number that represents how many elements in the /// specified sequence satisfy a condition. /// public static int Count( this IEnumerable source, Func predicate) { return Count(source.Where(predicate)); } /// /// Returns an that represents the total number /// of elements in a sequence. /// public static long LongCount( this IEnumerable source) { CheckNotNull(source, "source"); var array = source as Array; return array != null ? array.LongLength : source.Aggregate(0L, (count, item) => count + 1); } /// /// Returns an that represents how many elements /// in a sequence satisfy a condition. /// public static long LongCount( this IEnumerable source, Func predicate) { return LongCount(source.Where(predicate)); } /// /// Concatenates two sequences. /// public static IEnumerable Concat( this IEnumerable first, IEnumerable second) { CheckNotNull(first, "first"); CheckNotNull(second, "second"); return ConcatYield(first, second); } private static IEnumerable ConcatYield( IEnumerable first, IEnumerable second) { foreach (var item in first) yield return item; foreach (var item in second) yield return item; } /// /// Creates a from an . /// public static List ToList( this IEnumerable source) { CheckNotNull(source, "source"); return new List(source); } /// /// Creates an array from an . /// public static TSource[] ToArray( this IEnumerable source) { return source.ToList().ToArray(); } /// /// Returns distinct elements from a sequence by using the default /// equality comparer to compare values. /// public static IEnumerable Distinct( this IEnumerable source) { return Distinct(source, /* comparer */ null); } /// /// Returns distinct elements from a sequence by using a specified /// to compare values. /// public static IEnumerable Distinct( this IEnumerable source, IEqualityComparer comparer) { CheckNotNull(source, "source"); return DistinctYield(source, comparer); } private static IEnumerable DistinctYield( IEnumerable source, IEqualityComparer comparer) { var set = new Dictionary(comparer); var gotNull = false; foreach (var item in source) { if (item == null) { if (gotNull) continue; gotNull = true; } else { if (set.ContainsKey(item)) continue; set.Add(item, null); } yield return item; } } /// /// Creates a from an /// according to a specified key /// selector function. /// public static ILookup ToLookup( this IEnumerable source, Func keySelector) { return ToLookup(source, keySelector, e => e, /* comparer */ null); } /// /// Creates a from an /// according to a specified key /// selector function and a key comparer. /// public static ILookup ToLookup( this IEnumerable source, Func keySelector, IEqualityComparer comparer) { return ToLookup(source, keySelector, e => e, comparer); } /// /// Creates a from an /// according to specified key /// and element selector functions. /// public static ILookup ToLookup( this IEnumerable source, Func keySelector, Func elementSelector) { return ToLookup(source, keySelector, elementSelector, /* comparer */ null); } /// /// Creates a from an /// according to a specified key /// selector function, a comparer and an element selector function. /// public static ILookup ToLookup( this IEnumerable source, Func keySelector, Func elementSelector, IEqualityComparer comparer) { CheckNotNull(source, "source"); CheckNotNull(keySelector, "keySelector"); CheckNotNull(elementSelector, "elementSelector"); var lookup = new Lookup(comparer); foreach (var item in source) { var key = keySelector(item); var grouping = (Grouping) lookup.Find(key); if (grouping == null) { grouping = new Grouping(key); lookup.Add(grouping); } grouping.Add(elementSelector(item)); } return lookup; } /// /// Groups the elements of a sequence according to a specified key /// selector function. /// public static IEnumerable> GroupBy( this IEnumerable source, Func keySelector) { return GroupBy(source, keySelector, /* comparer */ null); } /// /// Groups the elements of a sequence according to a specified key /// selector function and compares the keys by using a specified /// comparer. /// public static IEnumerable> GroupBy( this IEnumerable source, Func keySelector, IEqualityComparer comparer) { return GroupBy(source, keySelector, e => e, comparer); } /// /// Groups the elements of a sequence according to a specified key /// selector function and projects the elements for each group by /// using a specified function. /// public static IEnumerable> GroupBy( this IEnumerable source, Func keySelector, Func elementSelector) { return GroupBy(source, keySelector, elementSelector, /* comparer */ null); } /// /// Groups the elements of a sequence according to a specified key /// selector function and creates a result value from each group and /// its key. /// public static IEnumerable> GroupBy( this IEnumerable source, Func keySelector, Func elementSelector, IEqualityComparer comparer) { CheckNotNull(source, "source"); CheckNotNull(keySelector, "keySelector"); CheckNotNull(elementSelector, "elementSelector"); return ToLookup(source, keySelector, elementSelector, comparer); } /// /// Groups the elements of a sequence according to a key selector /// function. The keys are compared by using a comparer and each /// group's elements are projected by using a specified function. /// public static IEnumerable GroupBy( this IEnumerable source, Func keySelector, Func, TResult> resultSelector) { return GroupBy(source, keySelector, resultSelector, /* comparer */ null); } /// /// Groups the elements of a sequence according to a specified key /// selector function and creates a result value from each group and /// its key. The elements of each group are projected by using a /// specified function. /// public static IEnumerable GroupBy( this IEnumerable source, Func keySelector, Func, TResult> resultSelector, IEqualityComparer comparer) { CheckNotNull(source, "source"); CheckNotNull(keySelector, "keySelector"); CheckNotNull(resultSelector, "resultSelector"); return ToLookup(source, keySelector, comparer).Select(g => resultSelector(g.Key, g)); } /// /// Groups the elements of a sequence according to a specified key /// selector function and creates a result value from each group and /// its key. The keys are compared by using a specified comparer. /// public static IEnumerable GroupBy( this IEnumerable source, Func keySelector, Func elementSelector, Func, TResult> resultSelector) { return GroupBy(source, keySelector, elementSelector, resultSelector, /* comparer */ null); } /// /// Groups the elements of a sequence according to a specified key /// selector function and creates a result value from each group and /// its key. Key values are compared by using a specified comparer, /// and the elements of each group are projected by using a /// specified function. /// public static IEnumerable GroupBy( this IEnumerable source, Func keySelector, Func elementSelector, Func, TResult> resultSelector, IEqualityComparer comparer) { CheckNotNull(source, "source"); CheckNotNull(keySelector, "keySelector"); CheckNotNull(elementSelector, "elementSelector"); CheckNotNull(resultSelector, "resultSelector"); return ToLookup(source, keySelector, elementSelector, comparer) .Select(g => resultSelector(g.Key, g)); } /// /// Applies an accumulator function over a sequence. /// public static TSource Aggregate( this IEnumerable source, Func func) { CheckNotNull(source, "source"); CheckNotNull(func, "func"); using (var e = source.GetEnumerator()) { if (!e.MoveNext()) throw new InvalidOperationException(); return e.Renumerable().Skip(1).Aggregate(e.Current, func); } } /// /// Applies an accumulator function over a sequence. The specified /// seed value is used as the initial accumulator value. /// public static TAccumulate Aggregate( this IEnumerable source, TAccumulate seed, Func func) { return Aggregate(source, seed, func, r => r); } /// /// Applies an accumulator function over a sequence. The specified /// seed value is used as the initial accumulator value, and the /// specified function is used to select the result value. /// public static TResult Aggregate( this IEnumerable source, TAccumulate seed, Func func, Func resultSelector) { CheckNotNull(source, "source"); CheckNotNull(func, "func"); CheckNotNull(resultSelector, "resultSelector"); var result = seed; foreach (var item in source) result = func(result, item); return resultSelector(result); } /// /// Produces the set union of two sequences by using the default /// equality comparer. /// public static IEnumerable Union( this IEnumerable first, IEnumerable second) { return Union(first, second, /* comparer */ null); } /// /// Produces the set union of two sequences by using a specified /// . /// public static IEnumerable Union( this IEnumerable first, IEnumerable second, IEqualityComparer comparer) { return first.Concat(second).Distinct(comparer); } /// /// Returns the elements of the specified sequence or the type /// parameter's default value in a singleton collection if the /// sequence is empty. /// public static IEnumerable DefaultIfEmpty( this IEnumerable source) { return source.DefaultIfEmpty(default(TSource)); } /// /// Returns the elements of the specified sequence or the specified /// value in a singleton collection if the sequence is empty. /// public static IEnumerable DefaultIfEmpty( this IEnumerable source, TSource defaultValue) { CheckNotNull(source, "source"); return DefaultIfEmptyYield(source, defaultValue); } private static IEnumerable DefaultIfEmptyYield( IEnumerable source, TSource defaultValue) { using (var e = source.GetEnumerator()) { if (!e.MoveNext()) yield return defaultValue; else do { yield return e.Current; } while (e.MoveNext()); } } /// /// Determines whether all elements of a sequence satisfy a condition. /// public static bool All( this IEnumerable source, Func predicate) { CheckNotNull(source, "source"); CheckNotNull(predicate, "predicate"); foreach (var item in source) if (!predicate(item)) return false; return true; } /// /// Determines whether a sequence contains any elements. /// public static bool Any( this IEnumerable source) { CheckNotNull(source, "source"); using (var e = source.GetEnumerator()) return e.MoveNext(); } /// /// Determines whether any element of a sequence satisfies a /// condition. /// public static bool Any( this IEnumerable source, Func predicate) { return source.Where(predicate).Any(); } /// /// Determines whether a sequence contains a specified element by /// using the default equality comparer. /// public static bool Contains( this IEnumerable source, TSource value) { return source.Contains(value, /* comparer */ null); } /// /// Determines whether a sequence contains a specified element by /// using a specified . /// public static bool Contains( this IEnumerable source, TSource value, IEqualityComparer comparer) { CheckNotNull(source, "source"); if (comparer == null) { var collection = source as ICollection; if (collection != null) return collection.Contains(value); } comparer = comparer ?? EqualityComparer.Default; return source.Any(item => comparer.Equals(item, value)); } /// /// Determines whether two sequences are equal by comparing the /// elements by using the default equality comparer for their type. /// public static bool SequenceEqual( this IEnumerable first, IEnumerable second) { return first.SequenceEqual(second, /* comparer */ null); } /// /// Determines whether two sequences are equal by comparing their /// elements by using a specified . /// public static bool SequenceEqual( this IEnumerable first, IEnumerable second, IEqualityComparer comparer) { CheckNotNull(first, "frist"); CheckNotNull(second, "second"); comparer = comparer ?? EqualityComparer.Default; using (IEnumerator lhs = first.GetEnumerator(), rhs = second.GetEnumerator()) { do { if (!lhs.MoveNext()) return !rhs.MoveNext(); if (!rhs.MoveNext()) return false; } while (comparer.Equals(lhs.Current, rhs.Current)); } return false; } /// /// Base implementation for Min/Max operator. /// private static TSource MinMaxImpl( this IEnumerable source, Func lesser) { CheckNotNull(source, "source"); Debug.Assert(lesser != null); return source.Aggregate((a, item) => lesser(a, item) ? a : item); } /// /// Base implementation for Min/Max operator for nullable types. /// private static TSource? MinMaxImpl( this IEnumerable source, TSource? seed, Func lesser) where TSource : struct { CheckNotNull(source, "source"); Debug.Assert(lesser != null); return source.Aggregate(seed, (a, item) => lesser(a, item) ? a : item); // == MinMaxImpl(Repeat(null, 1).Concat(source), lesser); } /// /// Returns the minimum value in a generic sequence. /// public static TSource Min( this IEnumerable source) { var comparer = Comparer.Default; return source.MinMaxImpl((x, y) => comparer.Compare(x, y) < 0); } /// /// Invokes a transform function on each element of a generic /// sequence and returns the minimum resulting value. /// public static TResult Min( this IEnumerable source, Func selector) { return source.Select(selector).Min(); } /// /// Returns the maximum value in a generic sequence. /// public static TSource Max( this IEnumerable source) { var comparer = Comparer.Default; return source.MinMaxImpl((x, y) => comparer.Compare(x, y) > 0); } /// /// Invokes a transform function on each element of a generic /// sequence and returns the maximum resulting value. /// public static TResult Max( this IEnumerable source, Func selector) { return source.Select(selector).Max(); } /// /// Makes an enumerator seen as enumerable once more. /// /// /// The supplied enumerator must have been started. The first element /// returned is the element the enumerator was on when passed in. /// DO NOT use this method if the caller must be a generator. It is /// mostly safe among aggregate operations. /// private static IEnumerable Renumerable(this IEnumerator e) { Debug.Assert(e != null); do { yield return e.Current; } while (e.MoveNext()); } /// /// Sorts the elements of a sequence in ascending order according to a key. /// public static IOrderedEnumerable OrderBy( this IEnumerable source, Func keySelector) { return source.OrderBy(keySelector, /* comparer */ null); } /// /// Sorts the elements of a sequence in ascending order by using a /// specified comparer. /// public static IOrderedEnumerable OrderBy( this IEnumerable source, Func keySelector, IComparer comparer) { CheckNotNull(source, "source"); CheckNotNull(keySelector, "keySelector"); return new OrderedEnumerable(source, keySelector, comparer, /* descending */ false); } /// /// Sorts the elements of a sequence in descending order according to a key. /// public static IOrderedEnumerable OrderByDescending( this IEnumerable source, Func keySelector) { return source.OrderByDescending(keySelector, /* comparer */ null); } /// /// Sorts the elements of a sequence in descending order by using a /// specified comparer. /// public static IOrderedEnumerable OrderByDescending( this IEnumerable source, Func keySelector, IComparer comparer) { CheckNotNull(source, "source"); CheckNotNull(source, "keySelector"); return new OrderedEnumerable(source, keySelector, comparer, /* descending */ true); } /// /// Performs a subsequent ordering of the elements in a sequence in /// ascending order according to a key. /// public static IOrderedEnumerable ThenBy( this IOrderedEnumerable source, Func keySelector) { return source.ThenBy(keySelector, /* comparer */ null); } /// /// Performs a subsequent ordering of the elements in a sequence in /// ascending order by using a specified comparer. /// public static IOrderedEnumerable ThenBy( this IOrderedEnumerable source, Func keySelector, IComparer comparer) { CheckNotNull(source, "source"); return source.CreateOrderedEnumerable(keySelector, comparer, /* descending */ false); } /// /// Performs a subsequent ordering of the elements in a sequence in /// descending order, according to a key. /// public static IOrderedEnumerable ThenByDescending( this IOrderedEnumerable source, Func keySelector) { return source.ThenByDescending(keySelector, /* comparer */ null); } /// /// Performs a subsequent ordering of the elements in a sequence in /// descending order by using a specified comparer. /// public static IOrderedEnumerable ThenByDescending( this IOrderedEnumerable source, Func keySelector, IComparer comparer) { CheckNotNull(source, "source"); return source.CreateOrderedEnumerable(keySelector, comparer, /* descending */ true); } /// /// Base implementation for Intersect and Except operators. /// private static IEnumerable IntersectExceptImpl( this IEnumerable first, IEnumerable second, IEqualityComparer comparer, bool flag) { CheckNotNull(first, "first"); CheckNotNull(second, "second"); var keys = new List(); var flags = new Dictionary(comparer); foreach (var item in first.Where(k => !flags.ContainsKey(k))) { flags.Add(item, !flag); keys.Add(item); } foreach (var item in second.Where(flags.ContainsKey)) flags[item] = flag; // // As per docs, "the marked elements are yielded in the order in // which they were collected. // return keys.Where(item => flags[item]); } /// /// Produces the set intersection of two sequences by using the /// default equality comparer to compare values. /// public static IEnumerable Intersect( this IEnumerable first, IEnumerable second) { return first.Intersect(second, /* comparer */ null); } /// /// Produces the set intersection of two sequences by using the /// specified to compare values. /// public static IEnumerable Intersect( this IEnumerable first, IEnumerable second, IEqualityComparer comparer) { return IntersectExceptImpl(first, second, comparer, /* flag */ true); } /// /// Produces the set difference of two sequences by using the /// default equality comparer to compare values. /// public static IEnumerable Except( this IEnumerable first, IEnumerable second) { return first.Except(second, /* comparer */ null); } /// /// Produces the set difference of two sequences by using the /// specified to compare values. /// public static IEnumerable Except( this IEnumerable first, IEnumerable second, IEqualityComparer comparer) { return IntersectExceptImpl(first, second, comparer, /* flag */ false); } /// /// Creates a from an /// according to a specified key /// selector function. /// public static Dictionary ToDictionary( this IEnumerable source, Func keySelector) { return source.ToDictionary(keySelector, /* comparer */ null); } /// /// Creates a from an /// according to a specified key /// selector function and key comparer. /// public static Dictionary ToDictionary( this IEnumerable source, Func keySelector, IEqualityComparer comparer) { return source.ToDictionary(keySelector, e => e); } /// /// Creates a from an /// according to specified key /// selector and element selector functions. /// public static Dictionary ToDictionary( this IEnumerable source, Func keySelector, Func elementSelector) { return source.ToDictionary(keySelector, elementSelector, /* comparer */ null); } /// /// Creates a from an /// according to a specified key /// selector function, a comparer, and an element selector function. /// public static Dictionary ToDictionary( this IEnumerable source, Func keySelector, Func elementSelector, IEqualityComparer comparer) { CheckNotNull(source, "source"); CheckNotNull(keySelector, "keySelector"); CheckNotNull(elementSelector, "elementSelector"); var dict = new Dictionary(comparer); foreach (var item in source) { // // ToDictionary is meant to throw ArgumentNullException if // keySelector produces a key that is null and // Argument exception if keySelector produces duplicate keys // for two elements. Incidentally, the doucmentation for // IDictionary.Add says that the Add method // throws the same exceptions under the same circumstances // so we don't need to do any additional checking or work // here and let the Add implementation do all the heavy // lifting. // dict.Add(keySelector(item), elementSelector(item)); } return dict; } /// /// Correlates the elements of two sequences based on matching keys. /// The default equality comparer is used to compare keys. /// public static IEnumerable Join( this IEnumerable outer, IEnumerable inner, Func outerKeySelector, Func innerKeySelector, Func resultSelector) { return outer.Join(inner, outerKeySelector, innerKeySelector, resultSelector, /* comparer */ null); } /// /// Correlates the elements of two sequences based on matching keys. /// The default equality comparer is used to compare keys. A /// specified is used to compare keys. /// public static IEnumerable Join( this IEnumerable outer, IEnumerable inner, Func outerKeySelector, Func innerKeySelector, Func resultSelector, IEqualityComparer comparer) { CheckNotNull(outer, "outer"); CheckNotNull(inner, "inner"); CheckNotNull(outerKeySelector, "outerKeySelector"); CheckNotNull(innerKeySelector, "innerKeySelector"); CheckNotNull(resultSelector, "resultSelector"); var lookup = inner.ToLookup(innerKeySelector, comparer); return from o in outer from i in lookup[outerKeySelector(o)] select resultSelector(o, i); } /// /// Correlates the elements of two sequences based on equality of /// keys and groups the results. The default equality comparer is /// used to compare keys. /// public static IEnumerable GroupJoin( this IEnumerable outer, IEnumerable inner, Func outerKeySelector, Func innerKeySelector, Func, TResult> resultSelector) { return outer.GroupJoin(inner, outerKeySelector, innerKeySelector, resultSelector, /* comparer */ null); } /// /// Correlates the elements of two sequences based on equality of /// keys and groups the results. The default equality comparer is /// used to compare keys. A specified /// is used to compare keys. /// public static IEnumerable GroupJoin( this IEnumerable outer, IEnumerable inner, Func outerKeySelector, Func innerKeySelector, Func, TResult> resultSelector, IEqualityComparer comparer) { CheckNotNull(outer, "outer"); CheckNotNull(inner, "inner"); CheckNotNull(outerKeySelector, "outerKeySelector"); CheckNotNull(innerKeySelector, "innerKeySelector"); CheckNotNull(resultSelector, "resultSelector"); var lookup = inner.ToLookup(innerKeySelector, comparer); return outer.Select(o => resultSelector(o, lookup[outerKeySelector(o)])); } [DebuggerStepThrough] private static void CheckNotNull(T value, string name) where T : class { if (value == null) throw new ArgumentNullException(name); } private static class Sequence { public static readonly IEnumerable Empty = new T[0]; } private sealed class Grouping : List, IGrouping { internal Grouping(K key) { Key = key; } public K Key { get; private set; } } } internal partial class Enumerable { /// /// Computes the sum of a sequence of nullable values. /// public static int Sum( this IEnumerable source) { CheckNotNull(source, "source"); int sum = 0; foreach (var num in source) sum = checked(sum + num); return sum; } /// /// Computes the sum of a sequence of nullable /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static int Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of nullable values. /// public static double Average( this IEnumerable source) { CheckNotNull(source, "source"); long sum = 0; long count = 0; foreach (var num in source) checked { sum += (int) num; count++; } if (count == 0) throw new InvalidOperationException(); return (double) sum/count; } /// /// Computes the average of a sequence of nullable values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static double Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Computes the sum of a sequence of values. /// public static int? Sum( this IEnumerable source) { CheckNotNull(source, "source"); int sum = 0; foreach (var num in source) sum = checked(sum + (num ?? 0)); return sum; } /// /// Computes the sum of a sequence of /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static int? Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of values. /// public static double? Average( this IEnumerable source) { CheckNotNull(source, "source"); long sum = 0; long count = 0; foreach (var num in source.Where(n => n != null)) checked { sum += (int) num; count++; } if (count == 0) return null; return (double?) sum/count; } /// /// Computes the average of a sequence of values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static double? Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Returns the minimum value in a sequence of nullable /// values. /// public static int? Min( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (min, x) => min < x); } /// /// Invokes a transform function on each element of a sequence and /// returns the minimum nullable value. /// public static int? Min( this IEnumerable source, Func selector) { return source.Select(selector).Min(); } /// /// Returns the maximum value in a sequence of nullable /// values. /// public static int? Max( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (max, x) => x == null || (max != null && x.Value < max.Value)); } /// /// Invokes a transform function on each element of a sequence and /// returns the maximum nullable value. /// public static int? Max( this IEnumerable source, Func selector) { return source.Select(selector).Max(); } /// /// Computes the sum of a sequence of nullable values. /// public static long Sum( this IEnumerable source) { CheckNotNull(source, "source"); long sum = 0; foreach (var num in source) sum = checked(sum + num); return sum; } /// /// Computes the sum of a sequence of nullable /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static long Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of nullable values. /// public static double Average( this IEnumerable source) { CheckNotNull(source, "source"); long sum = 0; long count = 0; foreach (var num in source) checked { sum += (long) num; count++; } if (count == 0) throw new InvalidOperationException(); return (double) sum/count; } /// /// Computes the average of a sequence of nullable values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static double Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Computes the sum of a sequence of values. /// public static long? Sum( this IEnumerable source) { CheckNotNull(source, "source"); long sum = 0; foreach (var num in source) sum = checked(sum + (num ?? 0)); return sum; } /// /// Computes the sum of a sequence of /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static long? Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of values. /// public static double? Average( this IEnumerable source) { CheckNotNull(source, "source"); long sum = 0; long count = 0; foreach (var num in source.Where(n => n != null)) checked { sum += (long) num; count++; } if (count == 0) return null; return (double?) sum/count; } /// /// Computes the average of a sequence of values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static double? Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Returns the minimum value in a sequence of nullable /// values. /// public static long? Min( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (min, x) => min < x); } /// /// Invokes a transform function on each element of a sequence and /// returns the minimum nullable value. /// public static long? Min( this IEnumerable source, Func selector) { return source.Select(selector).Min(); } /// /// Returns the maximum value in a sequence of nullable /// values. /// public static long? Max( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (max, x) => x == null || (max != null && x.Value < max.Value)); } /// /// Invokes a transform function on each element of a sequence and /// returns the maximum nullable value. /// public static long? Max( this IEnumerable source, Func selector) { return source.Select(selector).Max(); } /// /// Computes the sum of a sequence of nullable values. /// public static float Sum( this IEnumerable source) { CheckNotNull(source, "source"); float sum = 0; foreach (var num in source) sum = checked(sum + num); return sum; } /// /// Computes the sum of a sequence of nullable /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static float Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of nullable values. /// public static float Average( this IEnumerable source) { CheckNotNull(source, "source"); float sum = 0; long count = 0; foreach (var num in source) checked { sum += (float) num; count++; } if (count == 0) throw new InvalidOperationException(); return (float) sum/count; } /// /// Computes the average of a sequence of nullable values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static float Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Computes the sum of a sequence of values. /// public static float? Sum( this IEnumerable source) { CheckNotNull(source, "source"); float sum = 0; foreach (var num in source) sum = checked(sum + (num ?? 0)); return sum; } /// /// Computes the sum of a sequence of /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static float? Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of values. /// public static float? Average( this IEnumerable source) { CheckNotNull(source, "source"); float sum = 0; long count = 0; foreach (var num in source.Where(n => n != null)) checked { sum += (float) num; count++; } if (count == 0) return null; return (float?) sum/count; } /// /// Computes the average of a sequence of values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static float? Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Returns the minimum value in a sequence of nullable /// values. /// public static float? Min( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (min, x) => min < x); } /// /// Invokes a transform function on each element of a sequence and /// returns the minimum nullable value. /// public static float? Min( this IEnumerable source, Func selector) { return source.Select(selector).Min(); } /// /// Returns the maximum value in a sequence of nullable /// values. /// public static float? Max( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (max, x) => x == null || (max != null && x.Value < max.Value)); } /// /// Invokes a transform function on each element of a sequence and /// returns the maximum nullable value. /// public static float? Max( this IEnumerable source, Func selector) { return source.Select(selector).Max(); } /// /// Computes the sum of a sequence of nullable values. /// public static double Sum( this IEnumerable source) { CheckNotNull(source, "source"); double sum = 0; foreach (var num in source) sum = checked(sum + num); return sum; } /// /// Computes the sum of a sequence of nullable /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static double Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of nullable values. /// public static double Average( this IEnumerable source) { CheckNotNull(source, "source"); double sum = 0; long count = 0; foreach (var num in source) checked { sum += (double) num; count++; } if (count == 0) throw new InvalidOperationException(); return (double) sum/count; } /// /// Computes the average of a sequence of nullable values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static double Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Computes the sum of a sequence of values. /// public static double? Sum( this IEnumerable source) { CheckNotNull(source, "source"); double sum = 0; foreach (var num in source) sum = checked(sum + (num ?? 0)); return sum; } /// /// Computes the sum of a sequence of /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static double? Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of values. /// public static double? Average( this IEnumerable source) { CheckNotNull(source, "source"); double sum = 0; long count = 0; foreach (var num in source.Where(n => n != null)) checked { sum += (double) num; count++; } if (count == 0) return null; return (double?) sum/count; } /// /// Computes the average of a sequence of values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static double? Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Returns the minimum value in a sequence of nullable /// values. /// public static double? Min( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (min, x) => min < x); } /// /// Invokes a transform function on each element of a sequence and /// returns the minimum nullable value. /// public static double? Min( this IEnumerable source, Func selector) { return source.Select(selector).Min(); } /// /// Returns the maximum value in a sequence of nullable /// values. /// public static double? Max( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (max, x) => x == null || (max != null && x.Value < max.Value)); } /// /// Invokes a transform function on each element of a sequence and /// returns the maximum nullable value. /// public static double? Max( this IEnumerable source, Func selector) { return source.Select(selector).Max(); } /// /// Computes the sum of a sequence of nullable values. /// public static decimal Sum( this IEnumerable source) { CheckNotNull(source, "source"); decimal sum = 0; foreach (var num in source) sum = checked(sum + num); return sum; } /// /// Computes the sum of a sequence of nullable /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static decimal Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of nullable values. /// public static decimal Average( this IEnumerable source) { CheckNotNull(source, "source"); decimal sum = 0; long count = 0; foreach (var num in source) checked { sum += (decimal) num; count++; } if (count == 0) throw new InvalidOperationException(); return (decimal) sum/count; } /// /// Computes the average of a sequence of nullable values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static decimal Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Computes the sum of a sequence of values. /// public static decimal? Sum( this IEnumerable source) { CheckNotNull(source, "source"); decimal sum = 0; foreach (var num in source) sum = checked(sum + (num ?? 0)); return sum; } /// /// Computes the sum of a sequence of /// values that are obtained by invoking a transform function on /// each element of the input sequence. /// public static decimal? Sum( this IEnumerable source, Func selector) { return source.Select(selector).Sum(); } /// /// Computes the average of a sequence of values. /// public static decimal? Average( this IEnumerable source) { CheckNotNull(source, "source"); decimal sum = 0; long count = 0; foreach (var num in source.Where(n => n != null)) checked { sum += (decimal) num; count++; } if (count == 0) return null; return (decimal?) sum/count; } /// /// Computes the average of a sequence of values /// that are obtained by invoking a transform function on each /// element of the input sequence. /// public static decimal? Average( this IEnumerable source, Func selector) { return source.Select(selector).Average(); } /// /// Returns the minimum value in a sequence of nullable /// values. /// public static decimal? Min( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (min, x) => min < x); } /// /// Invokes a transform function on each element of a sequence and /// returns the minimum nullable value. /// public static decimal? Min( this IEnumerable source, Func selector) { return source.Select(selector).Min(); } /// /// Returns the maximum value in a sequence of nullable /// values. /// public static decimal? Max( this IEnumerable source) { CheckNotNull(source, "source"); return MinMaxImpl(source.Where(x => x != null), null, (max, x) => x == null || (max != null && x.Value < max.Value)); } /// /// Invokes a transform function on each element of a sequence and /// returns the maximum nullable value. /// public static decimal? Max( this IEnumerable source, Func selector) { return source.Select(selector).Max(); } } /// /// Represents a collection of objects that have a common key. /// internal partial interface IGrouping : IEnumerable { /// /// Gets the key of the . /// TKey Key { get; } } /// /// Defines an indexer, size property, and Boolean search method for /// data structures that map keys to /// sequences of values. /// internal partial interface ILookup : IEnumerable> { bool Contains(TKey key); int Count { get; } IEnumerable this[TKey key] { get; } } /// /// Represents a sorted sequence. /// internal partial interface IOrderedEnumerable : IEnumerable { /// /// Performs a subsequent ordering on the elements of an /// according to a key. /// IOrderedEnumerable CreateOrderedEnumerable( Func keySelector, IComparer comparer, bool descending); } /// /// Represents a collection of keys each mapped to one or more values. /// internal sealed class Lookup : ILookup { private readonly Dictionary> _map; internal Lookup(IEqualityComparer comparer) { _map = new Dictionary>(comparer); } internal void Add(IGrouping item) { _map.Add(item.Key, item); } internal IEnumerable Find(TKey key) { IGrouping grouping; return _map.TryGetValue(key, out grouping) ? grouping : null; } /// /// Gets the number of key/value collection pairs in the . /// public int Count { get { return _map.Count; } } /// /// Gets the collection of values indexed by the specified key. /// public IEnumerable this[TKey key] { get { IGrouping result; return _map.TryGetValue(key, out result) ? result : Enumerable.Empty(); } } /// /// Determines whether a specified key is in the . /// public bool Contains(TKey key) { return _map.ContainsKey(key); } /// /// Applies a transform function to each key and its associated /// values and returns the results. /// public IEnumerable ApplyResultSelector( Func, TResult> resultSelector) { if (resultSelector == null) throw new ArgumentNullException("resultSelector"); foreach (var pair in _map) yield return resultSelector(pair.Key, pair.Value); } /// /// Returns a generic enumerator that iterates through the . /// public IEnumerator> GetEnumerator() { return _map.Values.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } internal sealed class OrderedEnumerable : IOrderedEnumerable { private readonly IEnumerable _source; private readonly List> _comparisons; public OrderedEnumerable(IEnumerable source, Func keySelector, IComparer comparer, bool descending) : this(source, null, keySelector, comparer, descending) { } private OrderedEnumerable(IEnumerable source, List> comparisons, Func keySelector, IComparer comparer, bool descending) { if (source == null) throw new ArgumentNullException("source"); if (keySelector == null) throw new ArgumentNullException("keySelector"); _source = source; comparer = comparer ?? Comparer.Default; if (comparisons == null) comparisons = new List>( /* capacity */ 4); comparisons.Add((x, y) => (descending ? -1 : 1)*comparer.Compare(keySelector(x), keySelector(y))); _comparisons = comparisons; } public IOrderedEnumerable CreateOrderedEnumerable( Func keySelector, IComparer comparer, bool descending) { return new OrderedEnumerable(_source, _comparisons, keySelector, comparer, descending); } public IEnumerator GetEnumerator() { // // We sort using List.Sort, but docs say that it performs an // unstable sort. LINQ, on the other hand, says OrderBy performs // a stable sort. So convert the source sequence into a sequence // of tuples where the second element tags the position of the // element from the source sequence (First). The position is // then used as a tie breaker when all keys compare equal, // thus making the sort stable. // var list = _source.Select(new Func>(TagPosition)).ToList(); list.Sort((x, y) => { // // Compare keys from left to right. // var comparisons = _comparisons; for (var i = 0; i < comparisons.Count; i++) { var result = comparisons[i](x.First, y.First); if (result != 0) return result; } // // All keys compared equal so now break the tie by their // position in the original sequence, making the sort stable. // return x.Second.CompareTo(y.Second); }); return list.Select(new Func, T>(GetFirst)).GetEnumerator(); } /// /// See issue #11 /// for why this method is needed and cannot be expressed as a /// lambda at the call site. /// private static Tuple TagPosition(T e, int i) { return new Tuple(e, i); } /// /// See issue #11 /// for why this method is needed and cannot be expressed as a /// lambda at the call site. /// private static T GetFirst(Tuple pv) { return pv.First; } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } [Serializable] internal struct Tuple : IEquatable> { public TFirst First { get; private set; } public TSecond Second { get; private set; } public Tuple(TFirst first, TSecond second) : this() { First = first; Second = second; } public override bool Equals(object obj) { return obj != null && obj is Tuple && base.Equals((Tuple) obj); } public bool Equals(Tuple other) { return EqualityComparer.Default.Equals(other.First, First) && EqualityComparer.Default.Equals(other.Second, Second); } public override int GetHashCode() { var num = 0x7a2f0b42; num = (-1521134295*num) + EqualityComparer.Default.GetHashCode(First); return (-1521134295*num) + EqualityComparer.Default.GetHashCode(Second); } public override string ToString() { return string.Format(CultureInfo.InvariantCulture, @"{{ First = {0}, Second = {1} }}", First, Second); } } } namespace Newtonsoft.Json.Serialization { #pragma warning disable 1591 public delegate TResult Func(); public delegate TResult Func(T a); public delegate TResult Func(T1 arg1, T2 arg2); public delegate TResult Func(T1 arg1, T2 arg2, T3 arg3); public delegate TResult Func(T1 arg1, T2 arg2, T3 arg3, T4 arg4); public delegate void Action(); public delegate void Action(T1 arg1, T2 arg2); public delegate void Action(T1 arg1, T2 arg2, T3 arg3); public delegate void Action(T1 arg1, T2 arg2, T3 arg3, T4 arg4); #pragma warning restore 1591 } namespace System.Runtime.CompilerServices { /// /// This attribute allows us to define extension methods without /// requiring .NET Framework 3.5. For more information, see the section, /// Extension Methods in .NET Framework 2.0 Apps, /// of Basic Instincts: Extension Methods /// column in MSDN Magazine, /// issue Nov 2007. /// [AttributeUsage(AttributeTargets.Method | AttributeTargets.Class | AttributeTargets.Assembly)] internal sealed class ExtensionAttribute : Attribute { } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/MathUtils.cs0000664000175000017500000000716412454416117025462 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; namespace Newtonsoft.Json.Utilities { internal static class MathUtils { public static int IntLength(ulong i) { if (i < 10000000000) { if (i < 10) return 1; if (i < 100) return 2; if (i < 1000) return 3; if (i < 10000) return 4; if (i < 100000) return 5; if (i < 1000000) return 6; if (i < 10000000) return 7; if (i < 100000000) return 8; if (i < 1000000000) return 9; return 10; } else { if (i < 100000000000) return 11; if (i < 1000000000000) return 12; if (i < 10000000000000) return 13; if (i < 100000000000000) return 14; if (i < 1000000000000000) return 15; if (i < 10000000000000000) return 16; if (i < 100000000000000000) return 17; if (i < 1000000000000000000) return 18; if (i < 10000000000000000000) return 19; return 20; } } public static char IntToHex(int n) { if (n <= 9) return (char)(n + 48); return (char)((n - 10) + 97); } public static int? Min(int? val1, int? val2) { if (val1 == null) return val2; if (val2 == null) return val1; return Math.Min(val1.Value, val2.Value); } public static int? Max(int? val1, int? val2) { if (val1 == null) return val2; if (val2 == null) return val1; return Math.Max(val1.Value, val2.Value); } public static double? Max(double? val1, double? val2) { if (val1 == null) return val2; if (val2 == null) return val1; return Math.Max(val1.Value, val2.Value); } public static bool ApproxEquals(double d1, double d2) { const double epsilon = 2.2204460492503131E-16; if (d1 == d2) return true; double tolerance = ((Math.Abs(d1) + Math.Abs(d2)) + 10.0) * epsilon; double difference = d1 - d2; return (-tolerance < difference && tolerance > difference); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/DynamicReflectionDelegateFactory.cs0000664000175000017500000003335412454416117032132 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(PORTABLE || NETFX_CORE || PORTABLE40) using System; using System.Collections.Generic; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif using System.Reflection; using System.Reflection.Emit; using Newtonsoft.Json.Serialization; using System.Globalization; namespace Newtonsoft.Json.Utilities { internal class DynamicReflectionDelegateFactory : ReflectionDelegateFactory { public static DynamicReflectionDelegateFactory Instance = new DynamicReflectionDelegateFactory(); private static DynamicMethod CreateDynamicMethod(string name, Type returnType, Type[] parameterTypes, Type owner) { DynamicMethod dynamicMethod = !owner.IsInterface() ? new DynamicMethod(name, returnType, parameterTypes, owner, true) : new DynamicMethod(name, returnType, parameterTypes, owner.Module, true); return dynamicMethod; } public override ObjectConstructor CreateParametrizedConstructor(MethodBase method) { DynamicMethod dynamicMethod = CreateDynamicMethod(method.ToString(), typeof(object), new[] { typeof(object[]) }, method.DeclaringType); ILGenerator generator = dynamicMethod.GetILGenerator(); GenerateCreateMethodCallIL(method, generator, 0); return (ObjectConstructor)dynamicMethod.CreateDelegate(typeof(ObjectConstructor)); } public override MethodCall CreateMethodCall(MethodBase method) { DynamicMethod dynamicMethod = CreateDynamicMethod(method.ToString(), typeof(object), new[] { typeof(object), typeof(object[]) }, method.DeclaringType); ILGenerator generator = dynamicMethod.GetILGenerator(); GenerateCreateMethodCallIL(method, generator, 1); return (MethodCall)dynamicMethod.CreateDelegate(typeof(MethodCall)); } private void GenerateCreateMethodCallIL(MethodBase method, ILGenerator generator, int argsIndex) { ParameterInfo[] args = method.GetParameters(); Label argsOk = generator.DefineLabel(); // throw an error if the number of argument values doesn't match method parameters generator.Emit(OpCodes.Ldarg, argsIndex); generator.Emit(OpCodes.Ldlen); generator.Emit(OpCodes.Ldc_I4, args.Length); generator.Emit(OpCodes.Beq, argsOk); generator.Emit(OpCodes.Newobj, typeof(TargetParameterCountException).GetConstructor(ReflectionUtils.EmptyTypes)); generator.Emit(OpCodes.Throw); generator.MarkLabel(argsOk); if (!method.IsConstructor && !method.IsStatic) generator.PushInstance(method.DeclaringType); int localVariableCount = 0; for (int i = 0; i < args.Length; i++) { ParameterInfo parameter = args[i]; Type parameterType = parameter.ParameterType; if (parameterType.IsByRef) { parameterType = parameterType.GetElementType(); LocalBuilder localVariable = generator.DeclareLocal(parameterType); // don't need to set variable for 'out' parameter if (!parameter.IsOut) { generator.PushArrayInstance(argsIndex, i); if (parameterType.IsValueType()) { Label skipSettingDefault = generator.DefineLabel(); Label finishedProcessingParameter = generator.DefineLabel(); // check if parameter is not null generator.Emit(OpCodes.Brtrue_S, skipSettingDefault); // parameter has no value, initialize to default generator.Emit(OpCodes.Ldloca_S, localVariable); generator.Emit(OpCodes.Initobj, parameterType); generator.Emit(OpCodes.Br_S, finishedProcessingParameter); // parameter has value, get value from array again and unbox and set to variable generator.MarkLabel(skipSettingDefault); generator.PushArrayInstance(argsIndex, i); generator.UnboxIfNeeded(parameterType); generator.Emit(OpCodes.Stloc, localVariableCount); // parameter finished, we out! generator.MarkLabel(finishedProcessingParameter); } else { generator.UnboxIfNeeded(parameterType); generator.Emit(OpCodes.Stloc, localVariableCount); } } generator.Emit(OpCodes.Ldloca_S, localVariable); localVariableCount++; } else if (parameterType.IsValueType()) { generator.PushArrayInstance(argsIndex, i); // have to check that value type parameters aren't null // otherwise they will error when unboxed Label skipSettingDefault = generator.DefineLabel(); Label finishedProcessingParameter = generator.DefineLabel(); // check if parameter is not null generator.Emit(OpCodes.Brtrue_S, skipSettingDefault); // parameter has no value, initialize to default LocalBuilder localVariable = generator.DeclareLocal(parameterType); generator.Emit(OpCodes.Ldloca_S, localVariable); generator.Emit(OpCodes.Initobj, parameterType); generator.Emit(OpCodes.Ldloc, localVariableCount); generator.Emit(OpCodes.Br_S, finishedProcessingParameter); // parameter has value, get value from array again and unbox generator.MarkLabel(skipSettingDefault); generator.PushArrayInstance(argsIndex, i); generator.UnboxIfNeeded(parameterType); // parameter finished, we out! generator.MarkLabel(finishedProcessingParameter); localVariableCount++; } else { generator.PushArrayInstance(argsIndex, i); generator.UnboxIfNeeded(parameterType); } } if (method.IsConstructor) generator.Emit(OpCodes.Newobj, (ConstructorInfo)method); else generator.CallMethod((MethodInfo)method); Type returnType = method.IsConstructor ? method.DeclaringType : ((MethodInfo)method).ReturnType; if (returnType != typeof(void)) generator.BoxIfNeeded(returnType); else generator.Emit(OpCodes.Ldnull); generator.Return(); } public override Func CreateDefaultConstructor(Type type) { DynamicMethod dynamicMethod = CreateDynamicMethod("Create" + type.FullName, typeof(T), ReflectionUtils.EmptyTypes, type); dynamicMethod.InitLocals = true; ILGenerator generator = dynamicMethod.GetILGenerator(); GenerateCreateDefaultConstructorIL(type, generator); return (Func)dynamicMethod.CreateDelegate(typeof(Func)); } private void GenerateCreateDefaultConstructorIL(Type type, ILGenerator generator) { if (type.IsValueType()) { generator.DeclareLocal(type); generator.Emit(OpCodes.Ldloc_0); generator.Emit(OpCodes.Box, type); } else { ConstructorInfo constructorInfo = type.GetConstructor(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance, null, ReflectionUtils.EmptyTypes, null); if (constructorInfo == null) throw new ArgumentException("Could not get constructor for {0}.".FormatWith(CultureInfo.InvariantCulture, type)); generator.Emit(OpCodes.Newobj, constructorInfo); } generator.Return(); } public override Func CreateGet(PropertyInfo propertyInfo) { DynamicMethod dynamicMethod = CreateDynamicMethod("Get" + propertyInfo.Name, typeof(T), new[] { typeof(object) }, propertyInfo.DeclaringType); ILGenerator generator = dynamicMethod.GetILGenerator(); GenerateCreateGetPropertyIL(propertyInfo, generator); return (Func)dynamicMethod.CreateDelegate(typeof(Func)); } private void GenerateCreateGetPropertyIL(PropertyInfo propertyInfo, ILGenerator generator) { MethodInfo getMethod = propertyInfo.GetGetMethod(true); if (getMethod == null) throw new ArgumentException("Property '{0}' does not have a getter.".FormatWith(CultureInfo.InvariantCulture, propertyInfo.Name)); if (!getMethod.IsStatic) generator.PushInstance(propertyInfo.DeclaringType); generator.CallMethod(getMethod); generator.BoxIfNeeded(propertyInfo.PropertyType); generator.Return(); } public override Func CreateGet(FieldInfo fieldInfo) { if (fieldInfo.IsLiteral) { object constantValue = fieldInfo.GetValue(null); Func getter = o => constantValue; return getter; } DynamicMethod dynamicMethod = CreateDynamicMethod("Get" + fieldInfo.Name, typeof(T), new[] { typeof(object) }, fieldInfo.DeclaringType); ILGenerator generator = dynamicMethod.GetILGenerator(); GenerateCreateGetFieldIL(fieldInfo, generator); return (Func)dynamicMethod.CreateDelegate(typeof(Func)); } private void GenerateCreateGetFieldIL(FieldInfo fieldInfo, ILGenerator generator) { if (!fieldInfo.IsStatic) { generator.PushInstance(fieldInfo.DeclaringType); generator.Emit(OpCodes.Ldfld, fieldInfo); } else { generator.Emit(OpCodes.Ldsfld, fieldInfo); } generator.BoxIfNeeded(fieldInfo.FieldType); generator.Return(); } public override Action CreateSet(FieldInfo fieldInfo) { DynamicMethod dynamicMethod = CreateDynamicMethod("Set" + fieldInfo.Name, null, new[] { typeof(T), typeof(object) }, fieldInfo.DeclaringType); ILGenerator generator = dynamicMethod.GetILGenerator(); GenerateCreateSetFieldIL(fieldInfo, generator); return (Action)dynamicMethod.CreateDelegate(typeof(Action)); } internal static void GenerateCreateSetFieldIL(FieldInfo fieldInfo, ILGenerator generator) { if (!fieldInfo.IsStatic) generator.PushInstance(fieldInfo.DeclaringType); generator.Emit(OpCodes.Ldarg_1); generator.UnboxIfNeeded(fieldInfo.FieldType); if (!fieldInfo.IsStatic) generator.Emit(OpCodes.Stfld, fieldInfo); else generator.Emit(OpCodes.Stsfld, fieldInfo); generator.Return(); } public override Action CreateSet(PropertyInfo propertyInfo) { DynamicMethod dynamicMethod = CreateDynamicMethod("Set" + propertyInfo.Name, null, new[] { typeof(T), typeof(object) }, propertyInfo.DeclaringType); ILGenerator generator = dynamicMethod.GetILGenerator(); GenerateCreateSetPropertyIL(propertyInfo, generator); return (Action)dynamicMethod.CreateDelegate(typeof(Action)); } internal static void GenerateCreateSetPropertyIL(PropertyInfo propertyInfo, ILGenerator generator) { MethodInfo setMethod = propertyInfo.GetSetMethod(true); if (!setMethod.IsStatic) generator.PushInstance(propertyInfo.DeclaringType); generator.Emit(OpCodes.Ldarg_1); generator.UnboxIfNeeded(propertyInfo.PropertyType); generator.CallMethod(setMethod); generator.Return(); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/CollectionUtils.cs0000664000175000017500000002437112454416117026663 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Reflection; using System.Text; using System.Collections; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Globalization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Utilities { internal static class CollectionUtils { /// /// Determines whether the collection is null or empty. /// /// The collection. /// /// true if the collection is null or empty; otherwise, false. /// public static bool IsNullOrEmpty(ICollection collection) { if (collection != null) { return (collection.Count == 0); } return true; } /// /// Adds the elements of the specified collection to the specified generic IList. /// /// The list to add to. /// The collection of elements to add. public static void AddRange(this IList initial, IEnumerable collection) { if (initial == null) throw new ArgumentNullException("initial"); if (collection == null) return; foreach (T value in collection) { initial.Add(value); } } #if (NET20 || NET35 || PORTABLE40) public static void AddRange(this IList initial, IEnumerable collection) { ValidationUtils.ArgumentNotNull(initial, "initial"); // because earlier versions of .NET didn't support covariant generics initial.AddRange(collection.Cast()); } #endif public static bool IsDictionaryType(Type type) { ValidationUtils.ArgumentNotNull(type, "type"); if (typeof(IDictionary).IsAssignableFrom(type)) return true; if (ReflectionUtils.ImplementsGenericDefinition(type, typeof(IDictionary<,>))) return true; #if !(NET40 || NET35 || NET20 || PORTABLE40) if (ReflectionUtils.ImplementsGenericDefinition(type, typeof(IReadOnlyDictionary<,>))) return true; #endif return false; } public static ConstructorInfo ResolveEnumerableCollectionConstructor(Type collectionType, Type collectionItemType) { Type genericEnumerable = typeof(IEnumerable<>).MakeGenericType(collectionItemType); ConstructorInfo match = null; foreach (ConstructorInfo constructor in collectionType.GetConstructors(BindingFlags.Public | BindingFlags.Instance)) { IList parameters = constructor.GetParameters(); if (parameters.Count == 1) { if (genericEnumerable == parameters[0].ParameterType) { // exact match match = constructor; break; } // incase we can't find an exact match, use first inexact if (match == null) { if (genericEnumerable.IsAssignableFrom(parameters[0].ParameterType)) match = constructor; } } } return match; } public static bool AddDistinct(this IList list, T value) { return list.AddDistinct(value, EqualityComparer.Default); } public static bool AddDistinct(this IList list, T value, IEqualityComparer comparer) { if (list.ContainsValue(value, comparer)) return false; list.Add(value); return true; } // this is here because LINQ Bridge doesn't support Contains with IEqualityComparer public static bool ContainsValue(this IEnumerable source, TSource value, IEqualityComparer comparer) { if (comparer == null) comparer = EqualityComparer.Default; if (source == null) throw new ArgumentNullException("source"); foreach (TSource local in source) { if (comparer.Equals(local, value)) return true; } return false; } public static bool AddRangeDistinct(this IList list, IEnumerable values, IEqualityComparer comparer) { bool allAdded = true; foreach (T value in values) { if (!list.AddDistinct(value, comparer)) allAdded = false; } return allAdded; } public static int IndexOf(this IEnumerable collection, Func predicate) { int index = 0; foreach (T value in collection) { if (predicate(value)) return index; index++; } return -1; } /// /// Returns the index of the first occurrence in a sequence by using a specified IEqualityComparer. /// /// The type of the elements of source. /// A sequence in which to locate a value. /// The object to locate in the sequence /// An equality comparer to compare values. /// The zero-based index of the first occurrence of value within the entire sequence, if found; otherwise, 1. public static int IndexOf(this IEnumerable list, TSource value, IEqualityComparer comparer) { int index = 0; foreach (TSource item in list) { if (comparer.Equals(item, value)) { return index; } index++; } return -1; } private static IList GetDimensions(IList values, int dimensionsCount) { IList dimensions = new List(); IList currentArray = values; while (true) { dimensions.Add(currentArray.Count); // don't keep calculating dimensions for arrays inside the value array if (dimensions.Count == dimensionsCount) break; if (currentArray.Count == 0) break; object v = currentArray[0]; if (v is IList) currentArray = (IList)v; else break; } return dimensions; } private static void CopyFromJaggedToMultidimensionalArray(IList values, Array multidimensionalArray, int[] indices) { int dimension = indices.Length; if (dimension == multidimensionalArray.Rank) { multidimensionalArray.SetValue(JaggedArrayGetValue(values, indices), indices); return; } int dimensionLength = multidimensionalArray.GetLength(dimension); IList list = (IList)JaggedArrayGetValue(values, indices); int currentValuesLength = list.Count; if (currentValuesLength != dimensionLength) throw new Exception("Cannot deserialize non-cubical array as multidimensional array."); int[] newIndices = new int[dimension + 1]; for (int i = 0; i < dimension; i++) { newIndices[i] = indices[i]; } for (int i = 0; i < multidimensionalArray.GetLength(dimension); i++) { newIndices[dimension] = i; CopyFromJaggedToMultidimensionalArray(values, multidimensionalArray, newIndices); } } private static object JaggedArrayGetValue(IList values, int[] indices) { IList currentList = values; for (int i = 0; i < indices.Length; i++) { int index = indices[i]; if (i == indices.Length - 1) return currentList[index]; else currentList = (IList)currentList[index]; } return currentList; } public static Array ToMultidimensionalArray(IList values, Type type, int rank) { IList dimensions = GetDimensions(values, rank); while (dimensions.Count < rank) { dimensions.Add(0); } Array multidimensionalArray = Array.CreateInstance(type, dimensions.ToArray()); CopyFromJaggedToMultidimensionalArray(values, multidimensionalArray, new int[0]); return multidimensionalArray; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/DynamicProxyMetaObject.cs0000664000175000017500000004223412454416117030131 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE40) using System; using System.Collections.Generic; using System.Dynamic; using System.Linq; using System.Linq.Expressions; using System.Reflection; namespace Newtonsoft.Json.Utilities { internal sealed class DynamicProxyMetaObject : DynamicMetaObject { private readonly DynamicProxy _proxy; private readonly bool _dontFallbackFirst; internal DynamicProxyMetaObject(Expression expression, T value, DynamicProxy proxy, bool dontFallbackFirst) : base(expression, BindingRestrictions.Empty, value) { _proxy = proxy; _dontFallbackFirst = dontFallbackFirst; } private new T Value { get { return (T)base.Value; } } private bool IsOverridden(string method) { return ReflectionUtils.IsMethodOverridden(_proxy.GetType(), typeof(DynamicProxy), method); } public override DynamicMetaObject BindGetMember(GetMemberBinder binder) { return IsOverridden("TryGetMember") ? CallMethodWithResult("TryGetMember", binder, NoArgs, e => binder.FallbackGetMember(this, e)) : base.BindGetMember(binder); } public override DynamicMetaObject BindSetMember(SetMemberBinder binder, DynamicMetaObject value) { return IsOverridden("TrySetMember") ? CallMethodReturnLast("TrySetMember", binder, GetArgs(value), e => binder.FallbackSetMember(this, value, e)) : base.BindSetMember(binder, value); } public override DynamicMetaObject BindDeleteMember(DeleteMemberBinder binder) { return IsOverridden("TryDeleteMember") ? CallMethodNoResult("TryDeleteMember", binder, NoArgs, e => binder.FallbackDeleteMember(this, e)) : base.BindDeleteMember(binder); } public override DynamicMetaObject BindConvert(ConvertBinder binder) { return IsOverridden("TryConvert") ? CallMethodWithResult("TryConvert", binder, NoArgs, e => binder.FallbackConvert(this, e)) : base.BindConvert(binder); } public override DynamicMetaObject BindInvokeMember(InvokeMemberBinder binder, DynamicMetaObject[] args) { if (!IsOverridden("TryInvokeMember")) return base.BindInvokeMember(binder, args); // // Generate a tree like: // // { // object result; // TryInvokeMember(payload, out result) // ? result // : TryGetMember(payload, out result) // ? FallbackInvoke(result) // : fallbackResult // } // // Then it calls FallbackInvokeMember with this tree as the // "error", giving the language the option of using this // tree or doing .NET binding. // Fallback fallback = e => binder.FallbackInvokeMember(this, args, e); DynamicMetaObject call = BuildCallMethodWithResult( "TryInvokeMember", binder, GetArgArray(args), BuildCallMethodWithResult( "TryGetMember", new GetBinderAdapter(binder), NoArgs, fallback(null), e => binder.FallbackInvoke(e, args, null) ), null ); return _dontFallbackFirst ? call : fallback(call); } public override DynamicMetaObject BindCreateInstance(CreateInstanceBinder binder, DynamicMetaObject[] args) { return IsOverridden("TryCreateInstance") ? CallMethodWithResult("TryCreateInstance", binder, GetArgArray(args), e => binder.FallbackCreateInstance(this, args, e)) : base.BindCreateInstance(binder, args); } public override DynamicMetaObject BindInvoke(InvokeBinder binder, DynamicMetaObject[] args) { return IsOverridden("TryInvoke") ? CallMethodWithResult("TryInvoke", binder, GetArgArray(args), e => binder.FallbackInvoke(this, args, e)) : base.BindInvoke(binder, args); } public override DynamicMetaObject BindBinaryOperation(BinaryOperationBinder binder, DynamicMetaObject arg) { return IsOverridden("TryBinaryOperation") ? CallMethodWithResult("TryBinaryOperation", binder, GetArgs(arg), e => binder.FallbackBinaryOperation(this, arg, e)) : base.BindBinaryOperation(binder, arg); } public override DynamicMetaObject BindUnaryOperation(UnaryOperationBinder binder) { return IsOverridden("TryUnaryOperation") ? CallMethodWithResult("TryUnaryOperation", binder, NoArgs, e => binder.FallbackUnaryOperation(this, e)) : base.BindUnaryOperation(binder); } public override DynamicMetaObject BindGetIndex(GetIndexBinder binder, DynamicMetaObject[] indexes) { return IsOverridden("TryGetIndex") ? CallMethodWithResult("TryGetIndex", binder, GetArgArray(indexes), e => binder.FallbackGetIndex(this, indexes, e)) : base.BindGetIndex(binder, indexes); } public override DynamicMetaObject BindSetIndex(SetIndexBinder binder, DynamicMetaObject[] indexes, DynamicMetaObject value) { return IsOverridden("TrySetIndex") ? CallMethodReturnLast("TrySetIndex", binder, GetArgArray(indexes, value), e => binder.FallbackSetIndex(this, indexes, value, e)) : base.BindSetIndex(binder, indexes, value); } public override DynamicMetaObject BindDeleteIndex(DeleteIndexBinder binder, DynamicMetaObject[] indexes) { return IsOverridden("TryDeleteIndex") ? CallMethodNoResult("TryDeleteIndex", binder, GetArgArray(indexes), e => binder.FallbackDeleteIndex(this, indexes, e)) : base.BindDeleteIndex(binder, indexes); } private delegate DynamicMetaObject Fallback(DynamicMetaObject errorSuggestion); private static readonly Expression[] NoArgs = new Expression[0]; private static Expression[] GetArgs(params DynamicMetaObject[] args) { return args.Select(arg => Expression.Convert(arg.Expression, typeof(object))).ToArray(); } private static Expression[] GetArgArray(DynamicMetaObject[] args) { return new[] { Expression.NewArrayInit(typeof(object), GetArgs(args)) }; } private static Expression[] GetArgArray(DynamicMetaObject[] args, DynamicMetaObject value) { return new Expression[] { Expression.NewArrayInit(typeof(object), GetArgs(args)), Expression.Convert(value.Expression, typeof(object)) }; } private static ConstantExpression Constant(DynamicMetaObjectBinder binder) { Type t = binder.GetType(); while (!t.IsVisible()) t = t.BaseType(); return Expression.Constant(binder, t); } /// /// Helper method for generating a MetaObject which calls a /// specific method on Dynamic that returns a result /// private DynamicMetaObject CallMethodWithResult(string methodName, DynamicMetaObjectBinder binder, Expression[] args, Fallback fallback, Fallback fallbackInvoke = null) { // // First, call fallback to do default binding // This produces either an error or a call to a .NET member // DynamicMetaObject fallbackResult = fallback(null); DynamicMetaObject callDynamic = BuildCallMethodWithResult(methodName, binder, args, fallbackResult, fallbackInvoke); // // Now, call fallback again using our new MO as the error // When we do this, one of two things can happen: // 1. Binding will succeed, and it will ignore our call to // the dynamic method, OR // 2. Binding will fail, and it will use the MO we created // above. // return _dontFallbackFirst ? callDynamic : fallback(callDynamic); } private DynamicMetaObject BuildCallMethodWithResult(string methodName, DynamicMetaObjectBinder binder, Expression[] args, DynamicMetaObject fallbackResult, Fallback fallbackInvoke) { // // Build a new expression like: // { // object result; // TryGetMember(payload, out result) ? fallbackInvoke(result) : fallbackResult // } // ParameterExpression result = Expression.Parameter(typeof(object), null); IList callArgs = new List(); callArgs.Add(Expression.Convert(Expression, typeof(T))); callArgs.Add(Constant(binder)); callArgs.AddRange(args); callArgs.Add(result); DynamicMetaObject resultMetaObject = new DynamicMetaObject(result, BindingRestrictions.Empty); // Need to add a conversion if calling TryConvert if (binder.ReturnType != typeof(object)) { UnaryExpression convert = Expression.Convert(resultMetaObject.Expression, binder.ReturnType); // will always be a cast or unbox resultMetaObject = new DynamicMetaObject(convert, resultMetaObject.Restrictions); } if (fallbackInvoke != null) resultMetaObject = fallbackInvoke(resultMetaObject); DynamicMetaObject callDynamic = new DynamicMetaObject( Expression.Block( new[] { result }, Expression.Condition( Expression.Call( Expression.Constant(_proxy), typeof(DynamicProxy).GetMethod(methodName), callArgs ), resultMetaObject.Expression, fallbackResult.Expression, binder.ReturnType ) ), GetRestrictions().Merge(resultMetaObject.Restrictions).Merge(fallbackResult.Restrictions) ); return callDynamic; } /// /// Helper method for generating a MetaObject which calls a /// specific method on Dynamic, but uses one of the arguments for /// the result. /// private DynamicMetaObject CallMethodReturnLast(string methodName, DynamicMetaObjectBinder binder, Expression[] args, Fallback fallback) { // // First, call fallback to do default binding // This produces either an error or a call to a .NET member // DynamicMetaObject fallbackResult = fallback(null); // // Build a new expression like: // { // object result; // TrySetMember(payload, result = value) ? result : fallbackResult // } // ParameterExpression result = Expression.Parameter(typeof(object), null); IList callArgs = new List(); callArgs.Add(Expression.Convert(Expression, typeof(T))); callArgs.Add(Constant(binder)); callArgs.AddRange(args); callArgs[args.Length + 1] = Expression.Assign(result, callArgs[args.Length + 1]); DynamicMetaObject callDynamic = new DynamicMetaObject( Expression.Block( new[] { result }, Expression.Condition( Expression.Call( Expression.Constant(_proxy), typeof(DynamicProxy).GetMethod(methodName), callArgs ), result, fallbackResult.Expression, typeof(object) ) ), GetRestrictions().Merge(fallbackResult.Restrictions) ); // // Now, call fallback again using our new MO as the error // When we do this, one of two things can happen: // 1. Binding will succeed, and it will ignore our call to // the dynamic method, OR // 2. Binding will fail, and it will use the MO we created // above. // return _dontFallbackFirst ? callDynamic : fallback(callDynamic); } /// /// Helper method for generating a MetaObject which calls a /// specific method on Dynamic, but uses one of the arguments for /// the result. /// private DynamicMetaObject CallMethodNoResult(string methodName, DynamicMetaObjectBinder binder, Expression[] args, Fallback fallback) { // // First, call fallback to do default binding // This produces either an error or a call to a .NET member // DynamicMetaObject fallbackResult = fallback(null); IList callArgs = new List(); callArgs.Add(Expression.Convert(Expression, typeof(T))); callArgs.Add(Constant(binder)); callArgs.AddRange(args); // // Build a new expression like: // if (TryDeleteMember(payload)) { } else { fallbackResult } // DynamicMetaObject callDynamic = new DynamicMetaObject( Expression.Condition( Expression.Call( Expression.Constant(_proxy), typeof(DynamicProxy).GetMethod(methodName), callArgs ), Expression.Empty(), fallbackResult.Expression, typeof(void) ), GetRestrictions().Merge(fallbackResult.Restrictions) ); // // Now, call fallback again using our new MO as the error // When we do this, one of two things can happen: // 1. Binding will succeed, and it will ignore our call to // the dynamic method, OR // 2. Binding will fail, and it will use the MO we created // above. // return _dontFallbackFirst ? callDynamic : fallback(callDynamic); } /// /// Returns a Restrictions object which includes our current restrictions merged /// with a restriction limiting our type /// private BindingRestrictions GetRestrictions() { return (Value == null && HasValue) ? BindingRestrictions.GetInstanceRestriction(Expression, null) : BindingRestrictions.GetTypeRestriction(Expression, LimitType); } public override IEnumerable GetDynamicMemberNames() { return _proxy.GetDynamicMemberNames(Value); } // It is okay to throw NotSupported from this binder. This object // is only used by DynamicObject.GetMember--it is not expected to // (and cannot) implement binding semantics. It is just so the DO // can use the Name and IgnoreCase properties. private sealed class GetBinderAdapter : GetMemberBinder { internal GetBinderAdapter(InvokeMemberBinder binder) : base(binder.Name, binder.IgnoreCase) { } public override DynamicMetaObject FallbackGetMember(DynamicMetaObject target, DynamicMetaObject errorSuggestion) { throw new NotSupportedException(); } } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/ThreadSafeStore.cs0000664000175000017500000000554212454416117026571 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif using System.Threading; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Utilities { internal class ThreadSafeStore { private readonly object _lock = new object(); private Dictionary _store; private readonly Func _creator; public ThreadSafeStore(Func creator) { if (creator == null) throw new ArgumentNullException("creator"); _creator = creator; _store = new Dictionary(); } public TValue Get(TKey key) { TValue value; if (!_store.TryGetValue(key, out value)) return AddValue(key); return value; } private TValue AddValue(TKey key) { TValue value = _creator(key); lock (_lock) { if (_store == null) { _store = new Dictionary(); _store[key] = value; } else { // double check locking TValue checkValue; if (_store.TryGetValue(key, out checkValue)) return checkValue; Dictionary newStore = new Dictionary(_store); newStore[key] = value; #if !(NETFX_CORE || PORTABLE) Thread.MemoryBarrier(); #endif _store = newStore; } return value; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/DynamicUtils.cs0000664000175000017500000002207512454416117026153 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE40) using System; using System.Collections.Generic; using System.Dynamic; using System.Linq; using System.Linq.Expressions; #if !(PORTABLE) using System.Reflection; #else using Microsoft.CSharp.RuntimeBinder; #endif using System.Runtime.CompilerServices; using System.Text; using System.Globalization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Utilities { internal static class DynamicUtils { internal static class BinderWrapper { #if !(PORTABLE) public const string CSharpAssemblyName = "Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; private const string BinderTypeName = "Microsoft.CSharp.RuntimeBinder.Binder, " + CSharpAssemblyName; private const string CSharpArgumentInfoTypeName = "Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo, " + CSharpAssemblyName; private const string CSharpArgumentInfoFlagsTypeName = "Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, " + CSharpAssemblyName; private const string CSharpBinderFlagsTypeName = "Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, " + CSharpAssemblyName; private static object _getCSharpArgumentInfoArray; private static object _setCSharpArgumentInfoArray; private static MethodCall _getMemberCall; private static MethodCall _setMemberCall; private static bool _init; private static void Init() { if (!_init) { Type binderType = Type.GetType(BinderTypeName, false); if (binderType == null) throw new InvalidOperationException("Could not resolve type '{0}'. You may need to add a reference to Microsoft.CSharp.dll to work with dynamic types.".FormatWith(CultureInfo.InvariantCulture, BinderTypeName)); // None _getCSharpArgumentInfoArray = CreateSharpArgumentInfoArray(0); // None, Constant | UseCompileTimeType _setCSharpArgumentInfoArray = CreateSharpArgumentInfoArray(0, 3); CreateMemberCalls(); _init = true; } } private static object CreateSharpArgumentInfoArray(params int[] values) { Type csharpArgumentInfoType = Type.GetType(CSharpArgumentInfoTypeName); Type csharpArgumentInfoFlags = Type.GetType(CSharpArgumentInfoFlagsTypeName); Array a = Array.CreateInstance(csharpArgumentInfoType, values.Length); for (int i = 0; i < values.Length; i++) { MethodInfo createArgumentInfoMethod = csharpArgumentInfoType.GetMethod("Create", new[] { csharpArgumentInfoFlags, typeof(string) }); object arg = createArgumentInfoMethod.Invoke(null, new object[] { 0, null }); a.SetValue(arg, i); } return a; } private static void CreateMemberCalls() { Type csharpArgumentInfoType = Type.GetType(CSharpArgumentInfoTypeName, true); Type csharpBinderFlagsType = Type.GetType(CSharpBinderFlagsTypeName, true); Type binderType = Type.GetType(BinderTypeName, true); Type csharpArgumentInfoTypeEnumerableType = typeof(IEnumerable<>).MakeGenericType(csharpArgumentInfoType); MethodInfo getMemberMethod = binderType.GetMethod("GetMember", new[] { csharpBinderFlagsType, typeof(string), typeof(Type), csharpArgumentInfoTypeEnumerableType }); _getMemberCall = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(getMemberMethod); MethodInfo setMemberMethod = binderType.GetMethod("SetMember", new[] { csharpBinderFlagsType, typeof(string), typeof(Type), csharpArgumentInfoTypeEnumerableType }); _setMemberCall = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(setMemberMethod); } #endif public static CallSiteBinder GetMember(string name, Type context) { #if !(PORTABLE) Init(); return (CallSiteBinder)_getMemberCall(null, 0, name, context, _getCSharpArgumentInfoArray); #else return Binder.GetMember( CSharpBinderFlags.None, name, context, new[] {CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)}); #endif } public static CallSiteBinder SetMember(string name, Type context) { #if !(PORTABLE) Init(); return (CallSiteBinder)_setMemberCall(null, 0, name, context, _setCSharpArgumentInfoArray); #else return Binder.SetMember( CSharpBinderFlags.None, name, context, new[] { CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null), CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.Constant, null) }); #endif } } public static IEnumerable GetDynamicMemberNames(this IDynamicMetaObjectProvider dynamicProvider) { DynamicMetaObject metaObject = dynamicProvider.GetMetaObject(Expression.Constant(dynamicProvider)); return metaObject.GetDynamicMemberNames(); } } internal class NoThrowGetBinderMember : GetMemberBinder { private readonly GetMemberBinder _innerBinder; public NoThrowGetBinderMember(GetMemberBinder innerBinder) : base(innerBinder.Name, innerBinder.IgnoreCase) { _innerBinder = innerBinder; } public override DynamicMetaObject FallbackGetMember(DynamicMetaObject target, DynamicMetaObject errorSuggestion) { DynamicMetaObject retMetaObject = _innerBinder.Bind(target, new DynamicMetaObject[] { }); NoThrowExpressionVisitor noThrowVisitor = new NoThrowExpressionVisitor(); Expression resultExpression = noThrowVisitor.Visit(retMetaObject.Expression); DynamicMetaObject finalMetaObject = new DynamicMetaObject(resultExpression, retMetaObject.Restrictions); return finalMetaObject; } } internal class NoThrowSetBinderMember : SetMemberBinder { private readonly SetMemberBinder _innerBinder; public NoThrowSetBinderMember(SetMemberBinder innerBinder) : base(innerBinder.Name, innerBinder.IgnoreCase) { _innerBinder = innerBinder; } public override DynamicMetaObject FallbackSetMember(DynamicMetaObject target, DynamicMetaObject value, DynamicMetaObject errorSuggestion) { DynamicMetaObject retMetaObject = _innerBinder.Bind(target, new DynamicMetaObject[] { value }); NoThrowExpressionVisitor noThrowVisitor = new NoThrowExpressionVisitor(); Expression resultExpression = noThrowVisitor.Visit(retMetaObject.Expression); DynamicMetaObject finalMetaObject = new DynamicMetaObject(resultExpression, retMetaObject.Restrictions); return finalMetaObject; } } internal class NoThrowExpressionVisitor : ExpressionVisitor { internal static readonly object ErrorResult = new object(); protected override Expression VisitConditional(ConditionalExpression node) { // if the result of a test is to throw an error, rewrite to result an error result value if (node.IfFalse.NodeType == ExpressionType.Throw) return Expression.Condition(node.Test, node.IfTrue, Expression.Constant(ErrorResult)); return base.VisitConditional(node); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/EnumUtils.cs0000664000175000017500000002120712454416117025467 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.Runtime.Serialization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Reflection; namespace Newtonsoft.Json.Utilities { internal static class EnumUtils { private static readonly ThreadSafeStore> EnumMemberNamesPerType = new ThreadSafeStore>(InitializeEnumType); private static BidirectionalDictionary InitializeEnumType(Type type) { BidirectionalDictionary map = new BidirectionalDictionary( StringComparer.OrdinalIgnoreCase, StringComparer.OrdinalIgnoreCase); foreach (FieldInfo f in type.GetFields()) { string n1 = f.Name; string n2; #if !NET20 n2 = f.GetCustomAttributes(typeof(EnumMemberAttribute), true) .Cast() .Select(a => a.Value) .SingleOrDefault() ?? f.Name; #else n2 = f.Name; #endif string s; if (map.TryGetBySecond(n2, out s)) throw new InvalidOperationException("Enum name '{0}' already exists on enum '{1}'.".FormatWith(CultureInfo.InvariantCulture, n2, type.Name)); map.Set(n1, n2); } return map; } public static IList GetFlagsValues(T value) where T : struct { Type enumType = typeof(T); if (!enumType.IsDefined(typeof(FlagsAttribute), false)) throw new ArgumentException("Enum type {0} is not a set of flags.".FormatWith(CultureInfo.InvariantCulture, enumType)); Type underlyingType = Enum.GetUnderlyingType(value.GetType()); ulong num = Convert.ToUInt64(value, CultureInfo.InvariantCulture); IList> enumNameValues = GetNamesAndValues(); IList selectedFlagsValues = new List(); foreach (EnumValue enumNameValue in enumNameValues) { if ((num & enumNameValue.Value) == enumNameValue.Value && enumNameValue.Value != 0) selectedFlagsValues.Add((T)Convert.ChangeType(enumNameValue.Value, underlyingType, CultureInfo.CurrentCulture)); } if (selectedFlagsValues.Count == 0 && enumNameValues.SingleOrDefault(v => v.Value == 0) != null) selectedFlagsValues.Add(default(T)); return selectedFlagsValues; } /// /// Gets a dictionary of the names and values of an Enum type. /// /// public static IList> GetNamesAndValues() where T : struct { return GetNamesAndValues(typeof(T)); } /// /// Gets a dictionary of the names and values of an Enum type. /// /// The enum type to get names and values for. /// public static IList> GetNamesAndValues(Type enumType) where TUnderlyingType : struct { if (enumType == null) throw new ArgumentNullException("enumType"); ValidationUtils.ArgumentTypeIsEnum(enumType, "enumType"); IList enumValues = GetValues(enumType); IList enumNames = GetNames(enumType); IList> nameValues = new List>(); for (int i = 0; i < enumValues.Count; i++) { try { nameValues.Add(new EnumValue(enumNames[i], (TUnderlyingType)Convert.ChangeType(enumValues[i], typeof(TUnderlyingType), CultureInfo.CurrentCulture))); } catch (OverflowException e) { throw new InvalidOperationException( string.Format(CultureInfo.InvariantCulture, "Value from enum with the underlying type of {0} cannot be added to dictionary with a value type of {1}. Value was too large: {2}", Enum.GetUnderlyingType(enumType), typeof(TUnderlyingType), Convert.ToUInt64(enumValues[i], CultureInfo.InvariantCulture)), e); } } return nameValues; } public static IList GetValues(Type enumType) { if (!enumType.IsEnum()) throw new ArgumentException("Type '" + enumType.Name + "' is not an enum."); List values = new List(); var fields = enumType.GetFields().Where(f => f.IsLiteral); foreach (FieldInfo field in fields) { object value = field.GetValue(enumType); values.Add(value); } return values; } public static IList GetNames(Type enumType) { if (!enumType.IsEnum()) throw new ArgumentException("Type '" + enumType.Name + "' is not an enum."); List values = new List(); var fields = enumType.GetFields().Where(f => f.IsLiteral); foreach (FieldInfo field in fields) { values.Add(field.Name); } return values; } public static object ParseEnumName(string enumText, bool isNullable, Type t) { if (enumText == string.Empty && isNullable) return null; string finalEnumText; BidirectionalDictionary map = EnumMemberNamesPerType.Get(t); if (enumText.IndexOf(',') != -1) { string[] names = enumText.Split(','); for (int i = 0; i < names.Length; i++) { string name = names[i].Trim(); names[i] = ResolvedEnumName(map, name); } finalEnumText = string.Join(", ", names); } else { finalEnumText = ResolvedEnumName(map, enumText); } return Enum.Parse(t, finalEnumText, true); } public static string ToEnumName(Type enumType, string enumText, bool camelCaseText) { BidirectionalDictionary map = EnumMemberNamesPerType.Get(enumType); string[] names = enumText.Split(','); for (int i = 0; i < names.Length; i++) { string name = names[i].Trim(); string resolvedEnumName; map.TryGetByFirst(name, out resolvedEnumName); resolvedEnumName = resolvedEnumName ?? name; if (camelCaseText) resolvedEnumName = StringUtils.ToCamelCase(resolvedEnumName); names[i] = resolvedEnumName; } string finalName = string.Join(", ", names); return finalName; } private static string ResolvedEnumName(BidirectionalDictionary map, string enumText) { string resolvedEnumName; map.TryGetBySecond(enumText, out resolvedEnumName); resolvedEnumName = resolvedEnumName ?? enumText; return resolvedEnumName; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/Base64Encoder.cs0000664000175000017500000001016112454416117026063 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.IO; namespace Newtonsoft.Json.Utilities { internal class Base64Encoder { private const int Base64LineSize = 76; private const int LineSizeInBytes = 57; private readonly char[] _charsLine = new char[Base64LineSize]; private readonly TextWriter _writer; private byte[] _leftOverBytes; private int _leftOverBytesCount; public Base64Encoder(TextWriter writer) { ValidationUtils.ArgumentNotNull(writer, "writer"); _writer = writer; } public void Encode(byte[] buffer, int index, int count) { if (buffer == null) throw new ArgumentNullException("buffer"); if (index < 0) throw new ArgumentOutOfRangeException("index"); if (count < 0) throw new ArgumentOutOfRangeException("count"); if (count > (buffer.Length - index)) throw new ArgumentOutOfRangeException("count"); if (_leftOverBytesCount > 0) { int leftOverBytesCount = _leftOverBytesCount; while (leftOverBytesCount < 3 && count > 0) { _leftOverBytes[leftOverBytesCount++] = buffer[index++]; count--; } if (count == 0 && leftOverBytesCount < 3) { _leftOverBytesCount = leftOverBytesCount; return; } int num2 = Convert.ToBase64CharArray(_leftOverBytes, 0, 3, _charsLine, 0); WriteChars(_charsLine, 0, num2); } _leftOverBytesCount = count % 3; if (_leftOverBytesCount > 0) { count -= _leftOverBytesCount; if (_leftOverBytes == null) { _leftOverBytes = new byte[3]; } for (int i = 0; i < _leftOverBytesCount; i++) { _leftOverBytes[i] = buffer[(index + count) + i]; } } int num4 = index + count; int length = LineSizeInBytes; while (index < num4) { if ((index + length) > num4) { length = num4 - index; } int num6 = Convert.ToBase64CharArray(buffer, index, length, _charsLine, 0); WriteChars(_charsLine, 0, num6); index += length; } } public void Flush() { if (_leftOverBytesCount > 0) { int count = Convert.ToBase64CharArray(_leftOverBytes, 0, _leftOverBytesCount, _charsLine, 0); WriteChars(_charsLine, 0, count); _leftOverBytesCount = 0; } } private void WriteChars(char[] chars, int index, int count) { _writer.Write(chars, index, count); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/StringBuffer.cs0000664000175000017500000000606112454416117026143 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Utilities { /// /// Builds a string. Unlike StringBuilder this class lets you reuse it's internal buffer. /// internal class StringBuffer { private char[] _buffer; private int _position; private static readonly char[] EmptyBuffer = new char[0]; public int Position { get { return _position; } set { _position = value; } } public StringBuffer() { _buffer = EmptyBuffer; } public StringBuffer(int initalSize) { _buffer = new char[initalSize]; } public void Append(char value) { // test if the buffer array is large enough to take the value if (_position == _buffer.Length) EnsureSize(1); // set value and increment poisition _buffer[_position++] = value; } public void Append(char[] buffer, int startIndex, int count) { if (_position + count >= _buffer.Length) EnsureSize(count); Array.Copy(buffer, startIndex, _buffer, _position, count); _position += count; } public void Clear() { _buffer = EmptyBuffer; _position = 0; } private void EnsureSize(int appendLength) { char[] newBuffer = new char[(_position + appendLength) * 2]; Array.Copy(_buffer, newBuffer, _position); _buffer = newBuffer; } public override string ToString() { return ToString(0, _position); } public string ToString(int start, int length) { // TODO: validation return new string(_buffer, start, length); } public char[] GetInternalBuffer() { return _buffer; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/FSharpUtils.cs0000664000175000017500000001550412454416117025751 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Threading; #if !(NET35 || NET20 || NETFX_CORE) using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Utilities { internal static class FSharpUtils { private static readonly object Lock = new object(); private static bool _initialized; private static MethodInfo _ofSeq; private static Type _mapType; public static Assembly FSharpCoreAssembly { get; private set; } public static MethodCall IsUnion { get; private set; } public static MethodCall GetUnionFields { get; private set; } public static MethodCall GetUnionCases { get; private set; } public static MethodCall MakeUnion { get; private set; } public static Func GetUnionCaseInfoName { get; private set; } public static Func GetUnionCaseInfo { get; private set; } public static Func GetUnionCaseFields { get; private set; } public static MethodCall GetUnionCaseInfoFields { get; private set; } public const string FSharpSetTypeName = "FSharpSet`1"; public const string FSharpListTypeName = "FSharpList`1"; public const string FSharpMapTypeName = "FSharpMap`2"; public static void EnsureInitialized(Assembly fsharpCoreAssembly) { if (!_initialized) { lock (Lock) { if (!_initialized) { FSharpCoreAssembly = fsharpCoreAssembly; Type fsharpType = fsharpCoreAssembly.GetType("Microsoft.FSharp.Reflection.FSharpType"); MethodInfo isUnionMethodInfo = fsharpType.GetMethod("IsUnion", BindingFlags.Public | BindingFlags.Static); IsUnion = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(isUnionMethodInfo); MethodInfo getUnionCasesMethodInfo = fsharpType.GetMethod("GetUnionCases", BindingFlags.Public | BindingFlags.Static); GetUnionCases = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(getUnionCasesMethodInfo); Type fsharpValue = fsharpCoreAssembly.GetType("Microsoft.FSharp.Reflection.FSharpValue"); MethodInfo getUnionFieldsMethodInfo = fsharpValue.GetMethod("GetUnionFields", BindingFlags.Public | BindingFlags.Static); GetUnionFields = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(getUnionFieldsMethodInfo); GetUnionCaseInfo = JsonTypeReflector.ReflectionDelegateFactory.CreateGet(getUnionFieldsMethodInfo.ReturnType.GetProperty("Item1")); GetUnionCaseFields = JsonTypeReflector.ReflectionDelegateFactory.CreateGet(getUnionFieldsMethodInfo.ReturnType.GetProperty("Item2")); MethodInfo makeUnionMethodInfo = fsharpValue.GetMethod("MakeUnion", BindingFlags.Public | BindingFlags.Static); MakeUnion = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(makeUnionMethodInfo); Type unionCaseInfo = fsharpCoreAssembly.GetType("Microsoft.FSharp.Reflection.UnionCaseInfo"); GetUnionCaseInfoName = JsonTypeReflector.ReflectionDelegateFactory.CreateGet(unionCaseInfo.GetProperty("Name")); GetUnionCaseInfoFields = JsonTypeReflector.ReflectionDelegateFactory.CreateMethodCall(unionCaseInfo.GetMethod("GetFields")); Type listModule = fsharpCoreAssembly.GetType("Microsoft.FSharp.Collections.ListModule"); _ofSeq = listModule.GetMethod("OfSeq"); _mapType = fsharpCoreAssembly.GetType("Microsoft.FSharp.Collections.FSharpMap`2"); #if !(NETFX_CORE || PORTABLE) Thread.MemoryBarrier(); #endif _initialized = true; } } } } public static ObjectConstructor CreateSeq(Type t) { MethodInfo seqType = _ofSeq.MakeGenericMethod(t); return JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(seqType); } public static ObjectConstructor CreateMap(Type keyType, Type valueType) { MethodInfo creatorDefinition = typeof (FSharpUtils).GetMethod("BuildMapCreator"); MethodInfo creatorGeneric = creatorDefinition.MakeGenericMethod(keyType, valueType); return (ObjectConstructor)creatorGeneric.Invoke(null, null); } public static ObjectConstructor BuildMapCreator() { Type genericMapType = _mapType.MakeGenericType(typeof(TKey), typeof(TValue)); ConstructorInfo ctor = genericMapType.GetConstructor(new[] { typeof(IEnumerable>) }); ObjectConstructor ctorDelegate = JsonTypeReflector.ReflectionDelegateFactory.CreateParametrizedConstructor(ctor); ObjectConstructor creator = args => { // convert dictionary KeyValuePairs to Tuples IEnumerable> values = (IEnumerable>)args[0]; IEnumerable> tupleValues = values.Select(kv => new Tuple(kv.Key, kv.Value)); return ctorDelegate(tupleValues); }; return creator; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/ReflectionObject.cs0000664000175000017500000001405412454416117026765 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using Newtonsoft.Json.Serialization; using System; using System.Collections.Generic; using System.IO; using System.Reflection; using System.Resources; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Utilities { internal class ReflectionMember { public Type MemberType { get; set; } public Func Getter { get; set; } public Action Setter { get; set; } } internal class ReflectionObject { public ObjectConstructor Creator { get; private set; } public IDictionary Members { get; private set; } public ReflectionObject() { Members = new Dictionary(); } public object GetValue(object target, string member) { Func getter = Members[member].Getter; return getter(target); } public void SetValue(object target, string member, object value) { Action setter = Members[member].Setter; setter(target, value); } public Type GetType(string member) { return Members[member].MemberType; } public static ReflectionObject Create(Type t, params string[] memberNames) { return Create(t, null, memberNames); } public static ReflectionObject Create(Type t, MethodBase creator, params string[] memberNames) { ReflectionObject d = new ReflectionObject(); ReflectionDelegateFactory delegateFactory = JsonTypeReflector.ReflectionDelegateFactory; if (creator != null) { d.Creator = delegateFactory.CreateParametrizedConstructor(creator); } else { if (ReflectionUtils.HasDefaultConstructor(t, false)) { Func ctor = delegateFactory.CreateDefaultConstructor(t); d.Creator = args => ctor(); } } foreach (string memberName in memberNames) { MemberInfo[] members = t.GetMember(memberName, BindingFlags.Instance | BindingFlags.Public); if (members.Length != 1) throw new ArgumentException("Expected a single member with the name '{0}'.".FormatWith(CultureInfo.InvariantCulture, memberName)); MemberInfo member = members.Single(); ReflectionMember reflectionMember = new ReflectionMember(); switch (member.MemberType()) { case MemberTypes.Field: case MemberTypes.Property: if (ReflectionUtils.CanReadMemberValue(member, false)) reflectionMember.Getter = delegateFactory.CreateGet(member); if (ReflectionUtils.CanSetMemberValue(member, false, false)) reflectionMember.Setter = delegateFactory.CreateSet(member); break; case MemberTypes.Method: MethodInfo method = (MethodInfo)member; if (method.IsPublic) { ParameterInfo[] parameters = method.GetParameters(); if (parameters.Length == 0 && method.ReturnType != typeof(void)) { MethodCall call = delegateFactory.CreateMethodCall(method); reflectionMember.Getter = target => call(target); } else if (parameters.Length == 1 && method.ReturnType == typeof(void)) { MethodCall call = delegateFactory.CreateMethodCall(method); reflectionMember.Setter = (target, arg) => call(target, arg); } } break; default: throw new ArgumentException("Unexpected member type '{0}' for member '{1}'.".FormatWith(CultureInfo.InvariantCulture, member.MemberType(), member.Name)); } if (ReflectionUtils.CanReadMemberValue(member, false)) reflectionMember.Getter = delegateFactory.CreateGet(member); if (ReflectionUtils.CanSetMemberValue(member, false, false)) reflectionMember.Setter = delegateFactory.CreateSet(member); reflectionMember.MemberType = ReflectionUtils.GetMemberUnderlyingType(member); d.Members[memberName] = reflectionMember; } return d; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/StringReference.cs0000664000175000017500000000361612454416117026633 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Utilities { internal struct StringReference { private readonly char[] _chars; private readonly int _startIndex; private readonly int _length; public char[] Chars { get { return _chars; } } public int StartIndex { get { return _startIndex; } } public int Length { get { return _length; } } public StringReference(char[] chars, int startIndex, int length) { _chars = chars; _startIndex = startIndex; _length = length; } public override string ToString() { return new string(_chars, _startIndex, _length); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/DateTimeUtils.cs0000664000175000017500000005376712454416117026277 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.IO; using System.Xml; using System.Globalization; namespace Newtonsoft.Json.Utilities { internal static class DateTimeUtils { internal static readonly long InitialJavaScriptDateTicks = 621355968000000000; private const int DaysPer100Years = 36524; private const int DaysPer400Years = 146097; private const int DaysPer4Years = 1461; private const int DaysPerYear = 365; private const long TicksPerDay = 864000000000L; private static readonly int[] DaysToMonth365; private static readonly int[] DaysToMonth366; static DateTimeUtils() { DaysToMonth365 = new[] { 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365 }; DaysToMonth366 = new[] { 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366 }; } public static TimeSpan GetUtcOffset(this DateTime d) { #if NET20 return TimeZone.CurrentTimeZone.GetUtcOffset(d); #else return TimeZoneInfo.Local.GetUtcOffset(d); #endif } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) public static XmlDateTimeSerializationMode ToSerializationMode(DateTimeKind kind) { switch (kind) { case DateTimeKind.Local: return XmlDateTimeSerializationMode.Local; case DateTimeKind.Unspecified: return XmlDateTimeSerializationMode.Unspecified; case DateTimeKind.Utc: return XmlDateTimeSerializationMode.Utc; default: throw MiscellaneousUtils.CreateArgumentOutOfRangeException("kind", kind, "Unexpected DateTimeKind value."); } } #endif internal static DateTime EnsureDateTime(DateTime value, DateTimeZoneHandling timeZone) { switch (timeZone) { case DateTimeZoneHandling.Local: value = SwitchToLocalTime(value); break; case DateTimeZoneHandling.Utc: value = SwitchToUtcTime(value); break; case DateTimeZoneHandling.Unspecified: value = new DateTime(value.Ticks, DateTimeKind.Unspecified); break; case DateTimeZoneHandling.RoundtripKind: break; default: throw new ArgumentException("Invalid date time handling value."); } return value; } private static DateTime SwitchToLocalTime(DateTime value) { switch (value.Kind) { case DateTimeKind.Unspecified: return new DateTime(value.Ticks, DateTimeKind.Local); case DateTimeKind.Utc: return value.ToLocalTime(); case DateTimeKind.Local: return value; } return value; } private static DateTime SwitchToUtcTime(DateTime value) { switch (value.Kind) { case DateTimeKind.Unspecified: return new DateTime(value.Ticks, DateTimeKind.Utc); case DateTimeKind.Utc: return value; case DateTimeKind.Local: return value.ToUniversalTime(); } return value; } private static long ToUniversalTicks(DateTime dateTime) { if (dateTime.Kind == DateTimeKind.Utc) return dateTime.Ticks; return ToUniversalTicks(dateTime, dateTime.GetUtcOffset()); } private static long ToUniversalTicks(DateTime dateTime, TimeSpan offset) { // special case min and max value // they never have a timezone appended to avoid issues if (dateTime.Kind == DateTimeKind.Utc || dateTime == DateTime.MaxValue || dateTime == DateTime.MinValue) return dateTime.Ticks; long ticks = dateTime.Ticks - offset.Ticks; if (ticks > 3155378975999999999L) return 3155378975999999999L; if (ticks < 0L) return 0L; return ticks; } internal static long ConvertDateTimeToJavaScriptTicks(DateTime dateTime, TimeSpan offset) { long universialTicks = ToUniversalTicks(dateTime, offset); return UniversialTicksToJavaScriptTicks(universialTicks); } internal static long ConvertDateTimeToJavaScriptTicks(DateTime dateTime) { return ConvertDateTimeToJavaScriptTicks(dateTime, true); } internal static long ConvertDateTimeToJavaScriptTicks(DateTime dateTime, bool convertToUtc) { long ticks = (convertToUtc) ? ToUniversalTicks(dateTime) : dateTime.Ticks; return UniversialTicksToJavaScriptTicks(ticks); } private static long UniversialTicksToJavaScriptTicks(long universialTicks) { long javaScriptTicks = (universialTicks - InitialJavaScriptDateTicks) / 10000; return javaScriptTicks; } internal static DateTime ConvertJavaScriptTicksToDateTime(long javaScriptTicks) { DateTime dateTime = new DateTime((javaScriptTicks * 10000) + InitialJavaScriptDateTicks, DateTimeKind.Utc); return dateTime; } #region Parse internal static bool TryParseDateIso(string text, DateParseHandling dateParseHandling, DateTimeZoneHandling dateTimeZoneHandling, out object dt) { DateTimeParser dateTimeParser = new DateTimeParser(); if (!dateTimeParser.Parse(text)) { dt = null; return false; } DateTime d = new DateTime(dateTimeParser.Year, dateTimeParser.Month, dateTimeParser.Day, dateTimeParser.Hour, dateTimeParser.Minute, dateTimeParser.Second); d = d.AddTicks(dateTimeParser.Fraction); #if !NET20 if (dateParseHandling == DateParseHandling.DateTimeOffset) { TimeSpan offset; switch (dateTimeParser.Zone) { case ParserTimeZone.Utc: offset = new TimeSpan(0L); break; case ParserTimeZone.LocalWestOfUtc: offset = new TimeSpan(-dateTimeParser.ZoneHour, -dateTimeParser.ZoneMinute, 0); break; case ParserTimeZone.LocalEastOfUtc: offset = new TimeSpan(dateTimeParser.ZoneHour, dateTimeParser.ZoneMinute, 0); break; default: offset = TimeZoneInfo.Local.GetUtcOffset(d); break; } long ticks = d.Ticks - offset.Ticks; if (ticks < 0 || ticks > 3155378975999999999) { dt = null; return false; } dt = new DateTimeOffset(d, offset); return true; } else #endif { long ticks; switch (dateTimeParser.Zone) { case ParserTimeZone.Utc: d = new DateTime(d.Ticks, DateTimeKind.Utc); break; case ParserTimeZone.LocalWestOfUtc: { TimeSpan offset = new TimeSpan(dateTimeParser.ZoneHour, dateTimeParser.ZoneMinute, 0); ticks = d.Ticks + offset.Ticks; if (ticks <= DateTime.MaxValue.Ticks) { d = new DateTime(ticks, DateTimeKind.Utc).ToLocalTime(); } else { ticks += d.GetUtcOffset().Ticks; if (ticks > DateTime.MaxValue.Ticks) ticks = DateTime.MaxValue.Ticks; d = new DateTime(ticks, DateTimeKind.Local); } break; } case ParserTimeZone.LocalEastOfUtc: { TimeSpan offset = new TimeSpan(dateTimeParser.ZoneHour, dateTimeParser.ZoneMinute, 0); ticks = d.Ticks - offset.Ticks; if (ticks >= DateTime.MinValue.Ticks) { d = new DateTime(ticks, DateTimeKind.Utc).ToLocalTime(); } else { ticks += d.GetUtcOffset().Ticks; if (ticks < DateTime.MinValue.Ticks) ticks = DateTime.MinValue.Ticks; d = new DateTime(ticks, DateTimeKind.Local); } break; } } dt = EnsureDateTime(d, dateTimeZoneHandling); return true; } } internal static bool TryParseDateTime(string s, DateParseHandling dateParseHandling, DateTimeZoneHandling dateTimeZoneHandling, string dateFormatString, CultureInfo culture, out object dt) { if (s.Length > 0) { if (s[0] == '/') { if (s.StartsWith("/Date(", StringComparison.Ordinal) && s.EndsWith(")/", StringComparison.Ordinal)) { if (TryParseDateMicrosoft(s, dateParseHandling, dateTimeZoneHandling, out dt)) return true; } } else if (s.Length >= 19 && s.Length <= 40 && char.IsDigit(s[0]) && s[10] == 'T') { if (TryParseDateIso(s, dateParseHandling, dateTimeZoneHandling, out dt)) return true; } if (!string.IsNullOrEmpty(dateFormatString)) { if (TryParseDateExact(s, dateParseHandling, dateTimeZoneHandling, dateFormatString, culture, out dt)) return true; } } dt = null; return false; } private static bool TryParseDateMicrosoft(string text, DateParseHandling dateParseHandling, DateTimeZoneHandling dateTimeZoneHandling, out object dt) { string value = text.Substring(6, text.Length - 8); DateTimeKind kind = DateTimeKind.Utc; int index = value.IndexOf('+', 1); if (index == -1) index = value.IndexOf('-', 1); #if !NET20 TimeSpan offset = TimeSpan.Zero; #endif if (index != -1) { kind = DateTimeKind.Local; #if !NET20 offset = ReadOffset(value.Substring(index)); #endif value = value.Substring(0, index); } long javaScriptTicks; if (!long.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out javaScriptTicks)) { dt = null; return false; } DateTime utcDateTime = ConvertJavaScriptTicksToDateTime(javaScriptTicks); #if !NET20 if (dateParseHandling == DateParseHandling.DateTimeOffset) { dt = new DateTimeOffset(utcDateTime.Add(offset).Ticks, offset); return true; } #endif DateTime dateTime; switch (kind) { case DateTimeKind.Unspecified: dateTime = DateTime.SpecifyKind(utcDateTime.ToLocalTime(), DateTimeKind.Unspecified); break; case DateTimeKind.Local: dateTime = utcDateTime.ToLocalTime(); break; default: dateTime = utcDateTime; break; } dt = EnsureDateTime(dateTime, dateTimeZoneHandling); return true; } private static bool TryParseDateExact(string text, DateParseHandling dateParseHandling, DateTimeZoneHandling dateTimeZoneHandling, string dateFormatString, CultureInfo culture, out object dt) { #if !NET20 if (dateParseHandling == DateParseHandling.DateTimeOffset) { DateTimeOffset temp; if (DateTimeOffset.TryParseExact(text, dateFormatString, culture, DateTimeStyles.RoundtripKind, out temp)) { dt = temp; return true; } } else #endif { DateTime temp; if (DateTime.TryParseExact(text, dateFormatString, culture, DateTimeStyles.RoundtripKind, out temp)) { temp = EnsureDateTime(temp, dateTimeZoneHandling); dt = temp; return true; } } dt = null; return false; } #if !NET20 private static TimeSpan ReadOffset(string offsetText) { bool negative = (offsetText[0] == '-'); int hours = int.Parse(offsetText.Substring(1, 2), NumberStyles.Integer, CultureInfo.InvariantCulture); int minutes = 0; if (offsetText.Length >= 5) minutes = int.Parse(offsetText.Substring(3, 2), NumberStyles.Integer, CultureInfo.InvariantCulture); TimeSpan offset = TimeSpan.FromHours(hours) + TimeSpan.FromMinutes(minutes); if (negative) offset = offset.Negate(); return offset; } #endif #endregion #region Write internal static void WriteDateTimeString(TextWriter writer, DateTime value, DateFormatHandling format, string formatString, CultureInfo culture) { if (string.IsNullOrEmpty(formatString)) { char[] chars = new char[64]; int pos = WriteDateTimeString(chars, 0, value, null, value.Kind, format); writer.Write(chars, 0, pos); } else { writer.Write(value.ToString(formatString, culture)); } } internal static int WriteDateTimeString(char[] chars, int start, DateTime value, TimeSpan? offset, DateTimeKind kind, DateFormatHandling format) { int pos = start; if (format == DateFormatHandling.MicrosoftDateFormat) { TimeSpan o = offset ?? value.GetUtcOffset(); long javaScriptTicks = ConvertDateTimeToJavaScriptTicks(value, o); @"\/Date(".CopyTo(0, chars, pos, 7); pos += 7; string ticksText = javaScriptTicks.ToString(CultureInfo.InvariantCulture); ticksText.CopyTo(0, chars, pos, ticksText.Length); pos += ticksText.Length; switch (kind) { case DateTimeKind.Unspecified: if (value != DateTime.MaxValue && value != DateTime.MinValue) pos = WriteDateTimeOffset(chars, pos, o, format); break; case DateTimeKind.Local: pos = WriteDateTimeOffset(chars, pos, o, format); break; } @")\/".CopyTo(0, chars, pos, 3); pos += 3; } else { pos = WriteDefaultIsoDate(chars, pos, value); switch (kind) { case DateTimeKind.Local: pos = WriteDateTimeOffset(chars, pos, offset ?? value.GetUtcOffset(), format); break; case DateTimeKind.Utc: chars[pos++] = 'Z'; break; } } return pos; } internal static int WriteDefaultIsoDate(char[] chars, int start, DateTime dt) { int length = 19; int year; int month; int day; GetDateValues(dt, out year, out month, out day); CopyIntToCharArray(chars, start, year, 4); chars[start + 4] = '-'; CopyIntToCharArray(chars, start + 5, month, 2); chars[start + 7] = '-'; CopyIntToCharArray(chars, start + 8, day, 2); chars[start + 10] = 'T'; CopyIntToCharArray(chars, start + 11, dt.Hour, 2); chars[start + 13] = ':'; CopyIntToCharArray(chars, start + 14, dt.Minute, 2); chars[start + 16] = ':'; CopyIntToCharArray(chars, start + 17, dt.Second, 2); int fraction = (int)(dt.Ticks % 10000000L); if (fraction != 0) { int digits = 7; while ((fraction % 10) == 0) { digits--; fraction /= 10; } chars[start + 19] = '.'; CopyIntToCharArray(chars, start + 20, fraction, digits); length += digits + 1; } return start + length; } private static void CopyIntToCharArray(char[] chars, int start, int value, int digits) { while (digits-- != 0) { chars[start + digits] = (char)((value % 10) + 48); value /= 10; } } internal static int WriteDateTimeOffset(char[] chars, int start, TimeSpan offset, DateFormatHandling format) { chars[start++] = (offset.Ticks >= 0L) ? '+' : '-'; int absHours = Math.Abs(offset.Hours); CopyIntToCharArray(chars, start, absHours, 2); start += 2; if (format == DateFormatHandling.IsoDateFormat) chars[start++] = ':'; int absMinutes = Math.Abs(offset.Minutes); CopyIntToCharArray(chars, start, absMinutes, 2); start += 2; return start; } #if !NET20 internal static void WriteDateTimeOffsetString(TextWriter writer, DateTimeOffset value, DateFormatHandling format, string formatString, CultureInfo culture) { if (string.IsNullOrEmpty(formatString)) { char[] chars = new char[64]; int pos = WriteDateTimeString(chars, 0, (format == DateFormatHandling.IsoDateFormat) ? value.DateTime : value.UtcDateTime, value.Offset, DateTimeKind.Local, format); writer.Write(chars, 0, pos); } else { writer.Write(value.ToString(formatString, culture)); } } #endif #endregion private static void GetDateValues(DateTime td, out int year, out int month, out int day) { long ticks = td.Ticks; // n = number of days since 1/1/0001 int n = (int)(ticks / TicksPerDay); // y400 = number of whole 400-year periods since 1/1/0001 int y400 = n / DaysPer400Years; // n = day number within 400-year period n -= y400 * DaysPer400Years; // y100 = number of whole 100-year periods within 400-year period int y100 = n / DaysPer100Years; // Last 100-year period has an extra day, so decrement result if 4 if (y100 == 4) y100 = 3; // n = day number within 100-year period n -= y100 * DaysPer100Years; // y4 = number of whole 4-year periods within 100-year period int y4 = n / DaysPer4Years; // n = day number within 4-year period n -= y4 * DaysPer4Years; // y1 = number of whole years within 4-year period int y1 = n / DaysPerYear; // Last year has an extra day, so decrement result if 4 if (y1 == 4) y1 = 3; year = y400 * 400 + y100 * 100 + y4 * 4 + y1 + 1; // n = day number within year n -= y1 * DaysPerYear; // Leap year calculation looks different from IsLeapYear since y1, y4, // and y100 are relative to year 1, not year 0 bool leapYear = y1 == 3 && (y4 != 24 || y100 == 3); int[] days = leapYear ? DaysToMonth366 : DaysToMonth365; // All months have less than 32 days, so n >> 5 is a good conservative // estimate for the month int m = n >> 5 + 1; // m = 1-based month number while (n >= days[m]) { m++; } month = m; // Return 1-based day-of-month day = n - days[m - 1] + 1; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/MiscellaneousUtils.cs0000664000175000017500000001162412454416117027370 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Reflection; using System.Text; using System.Globalization; namespace Newtonsoft.Json.Utilities { internal delegate T Creator(); internal static class MiscellaneousUtils { public static bool ValueEquals(object objA, object objB) { if (objA == null && objB == null) return true; if (objA != null && objB == null) return false; if (objA == null && objB != null) return false; // comparing an Int32 and Int64 both of the same value returns false // make types the same then compare if (objA.GetType() != objB.GetType()) { if (ConvertUtils.IsInteger(objA) && ConvertUtils.IsInteger(objB)) return Convert.ToDecimal(objA, CultureInfo.CurrentCulture).Equals(Convert.ToDecimal(objB, CultureInfo.CurrentCulture)); else if ((objA is double || objA is float || objA is decimal) && (objB is double || objB is float || objB is decimal)) return MathUtils.ApproxEquals(Convert.ToDouble(objA, CultureInfo.CurrentCulture), Convert.ToDouble(objB, CultureInfo.CurrentCulture)); else return false; } return objA.Equals(objB); } public static ArgumentOutOfRangeException CreateArgumentOutOfRangeException(string paramName, object actualValue, string message) { string newMessage = message + Environment.NewLine + @"Actual value was {0}.".FormatWith(CultureInfo.InvariantCulture, actualValue); return new ArgumentOutOfRangeException(paramName, newMessage); } public static string ToString(object value) { if (value == null) return "{null}"; return (value is string) ? @"""" + value.ToString() + @"""" : value.ToString(); } public static int ByteArrayCompare(byte[] a1, byte[] a2) { int lengthCompare = a1.Length.CompareTo(a2.Length); if (lengthCompare != 0) return lengthCompare; for (int i = 0; i < a1.Length; i++) { int valueCompare = a1[i].CompareTo(a2[i]); if (valueCompare != 0) return valueCompare; } return 0; } public static string GetPrefix(string qualifiedName) { string prefix; string localName; GetQualifiedNameParts(qualifiedName, out prefix, out localName); return prefix; } public static string GetLocalName(string qualifiedName) { string prefix; string localName; GetQualifiedNameParts(qualifiedName, out prefix, out localName); return localName; } public static void GetQualifiedNameParts(string qualifiedName, out string prefix, out string localName) { int colonPosition = qualifiedName.IndexOf(':'); if ((colonPosition == -1 || colonPosition == 0) || (qualifiedName.Length - 1) == colonPosition) { prefix = null; localName = qualifiedName; } else { prefix = qualifiedName.Substring(0, colonPosition); localName = qualifiedName.Substring(colonPosition + 1); } } internal static string FormatValueForPrint(object value) { if (value == null) return "{null}"; if (value is string) return @"""" + value + @""""; return value.ToString(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/BidirectionalDictionary.cs0000664000175000017500000000732612454416117030346 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; namespace Newtonsoft.Json.Utilities { internal class BidirectionalDictionary { private readonly IDictionary _firstToSecond; private readonly IDictionary _secondToFirst; private readonly string _duplicateFirstErrorMessage; private readonly string _duplicateSecondErrorMessage; public BidirectionalDictionary() : this(EqualityComparer.Default, EqualityComparer.Default) { } public BidirectionalDictionary(IEqualityComparer firstEqualityComparer, IEqualityComparer secondEqualityComparer) : this( firstEqualityComparer, secondEqualityComparer, "Duplicate item already exists for '{0}'.", "Duplicate item already exists for '{0}'.") { } public BidirectionalDictionary(IEqualityComparer firstEqualityComparer, IEqualityComparer secondEqualityComparer, string duplicateFirstErrorMessage, string duplicateSecondErrorMessage) { _firstToSecond = new Dictionary(firstEqualityComparer); _secondToFirst = new Dictionary(secondEqualityComparer); _duplicateFirstErrorMessage = duplicateFirstErrorMessage; _duplicateSecondErrorMessage = duplicateSecondErrorMessage; } public void Set(TFirst first, TSecond second) { TFirst existingFirst; TSecond existingSecond; if (_firstToSecond.TryGetValue(first, out existingSecond)) { if (!existingSecond.Equals(second)) throw new ArgumentException(_duplicateFirstErrorMessage.FormatWith(CultureInfo.InvariantCulture, first)); } if (_secondToFirst.TryGetValue(second, out existingFirst)) { if (!existingFirst.Equals(first)) throw new ArgumentException(_duplicateSecondErrorMessage.FormatWith(CultureInfo.InvariantCulture, second)); } _firstToSecond.Add(first, second); _secondToFirst.Add(second, first); } public bool TryGetByFirst(TFirst first, out TSecond second) { return _firstToSecond.TryGetValue(first, out second); } public bool TryGetBySecond(TSecond second, out TFirst first) { return _secondToFirst.TryGetValue(second, out first); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/CollectionWrapper.cs0000664000175000017500000001753612454416117027210 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.Threading; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Utilities { internal interface IWrappedCollection : IList { object UnderlyingCollection { get; } } internal class CollectionWrapper : ICollection, IWrappedCollection { private readonly IList _list; private readonly ICollection _genericCollection; private object _syncRoot; public CollectionWrapper(IList list) { ValidationUtils.ArgumentNotNull(list, "list"); if (list is ICollection) _genericCollection = (ICollection)list; else _list = list; } public CollectionWrapper(ICollection list) { ValidationUtils.ArgumentNotNull(list, "list"); _genericCollection = list; } public virtual void Add(T item) { if (_genericCollection != null) _genericCollection.Add(item); else _list.Add(item); } public virtual void Clear() { if (_genericCollection != null) _genericCollection.Clear(); else _list.Clear(); } public virtual bool Contains(T item) { if (_genericCollection != null) return _genericCollection.Contains(item); else return _list.Contains(item); } public virtual void CopyTo(T[] array, int arrayIndex) { if (_genericCollection != null) _genericCollection.CopyTo(array, arrayIndex); else _list.CopyTo(array, arrayIndex); } public virtual int Count { get { if (_genericCollection != null) return _genericCollection.Count; else return _list.Count; } } public virtual bool IsReadOnly { get { if (_genericCollection != null) return _genericCollection.IsReadOnly; else return _list.IsReadOnly; } } public virtual bool Remove(T item) { if (_genericCollection != null) { return _genericCollection.Remove(item); } else { bool contains = _list.Contains(item); if (contains) _list.Remove(item); return contains; } } public virtual IEnumerator GetEnumerator() { if (_genericCollection != null) return _genericCollection.GetEnumerator(); return _list.Cast().GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { if (_genericCollection != null) return _genericCollection.GetEnumerator(); else return _list.GetEnumerator(); } int IList.Add(object value) { VerifyValueType(value); Add((T)value); return (Count - 1); } bool IList.Contains(object value) { if (IsCompatibleObject(value)) return Contains((T)value); return false; } int IList.IndexOf(object value) { if (_genericCollection != null) throw new InvalidOperationException("Wrapped ICollection does not support IndexOf."); if (IsCompatibleObject(value)) return _list.IndexOf((T)value); return -1; } void IList.RemoveAt(int index) { if (_genericCollection != null) throw new InvalidOperationException("Wrapped ICollection does not support RemoveAt."); _list.RemoveAt(index); } void IList.Insert(int index, object value) { if (_genericCollection != null) throw new InvalidOperationException("Wrapped ICollection does not support Insert."); VerifyValueType(value); _list.Insert(index, (T)value); } bool IList.IsFixedSize { get { if (_genericCollection != null) // ICollection only has IsReadOnly return _genericCollection.IsReadOnly; else return _list.IsFixedSize; } } void IList.Remove(object value) { if (IsCompatibleObject(value)) Remove((T)value); } object IList.this[int index] { get { if (_genericCollection != null) throw new InvalidOperationException("Wrapped ICollection does not support indexer."); return _list[index]; } set { if (_genericCollection != null) throw new InvalidOperationException("Wrapped ICollection does not support indexer."); VerifyValueType(value); _list[index] = (T)value; } } void ICollection.CopyTo(Array array, int arrayIndex) { CopyTo((T[])array, arrayIndex); } bool ICollection.IsSynchronized { get { return false; } } object ICollection.SyncRoot { get { if (_syncRoot == null) Interlocked.CompareExchange(ref _syncRoot, new object(), null); return _syncRoot; } } private static void VerifyValueType(object value) { if (!IsCompatibleObject(value)) throw new ArgumentException("The value '{0}' is not of type '{1}' and cannot be used in this generic collection.".FormatWith(CultureInfo.InvariantCulture, value, typeof(T)), "value"); } private static bool IsCompatibleObject(object value) { if (!(value is T) && (value != null || (typeof(T).IsValueType() && !ReflectionUtils.IsNullableType(typeof(T))))) return false; return true; } public object UnderlyingCollection { get { if (_genericCollection != null) return _genericCollection; else return _list; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/ReflectionDelegateFactory.cs0000664000175000017500000000571612454416117030626 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using System.Reflection; using Newtonsoft.Json.Serialization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif namespace Newtonsoft.Json.Utilities { internal abstract class ReflectionDelegateFactory { public Func CreateGet(MemberInfo memberInfo) { PropertyInfo propertyInfo = memberInfo as PropertyInfo; if (propertyInfo != null) return CreateGet(propertyInfo); FieldInfo fieldInfo = memberInfo as FieldInfo; if (fieldInfo != null) return CreateGet(fieldInfo); throw new Exception("Could not create getter for {0}.".FormatWith(CultureInfo.InvariantCulture, memberInfo)); } public Action CreateSet(MemberInfo memberInfo) { PropertyInfo propertyInfo = memberInfo as PropertyInfo; if (propertyInfo != null) return CreateSet(propertyInfo); FieldInfo fieldInfo = memberInfo as FieldInfo; if (fieldInfo != null) return CreateSet(fieldInfo); throw new Exception("Could not create setter for {0}.".FormatWith(CultureInfo.InvariantCulture, memberInfo)); } public abstract MethodCall CreateMethodCall(MethodBase method); public abstract ObjectConstructor CreateParametrizedConstructor(MethodBase method); public abstract Func CreateDefaultConstructor(Type type); public abstract Func CreateGet(PropertyInfo propertyInfo); public abstract Func CreateGet(FieldInfo fieldInfo); public abstract Action CreateSet(FieldInfo fieldInfo); public abstract Action CreateSet(PropertyInfo propertyInfo); } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/ReflectionUtils.cs0000664000175000017500000012005512454416117026656 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if !(PORTABLE || PORTABLE40 || NET35 || NET20) using System.Numerics; #endif using System.Reflection; using System.Collections; using System.Globalization; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters; using System.Text; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Utilities { #if (NETFX_CORE || PORTABLE || PORTABLE40) internal enum MemberTypes { Property = 0, Field = 1, Event = 2, Method = 3, Other = 4 } #endif #if NETFX_CORE || PORTABLE [Flags] internal enum BindingFlags { Default = 0, IgnoreCase = 1, DeclaredOnly = 2, Instance = 4, Static = 8, Public = 16, NonPublic = 32, FlattenHierarchy = 64, InvokeMethod = 256, CreateInstance = 512, GetField = 1024, SetField = 2048, GetProperty = 4096, SetProperty = 8192, PutDispProperty = 16384, ExactBinding = 65536, PutRefDispProperty = 32768, SuppressChangeType = 131072, OptionalParamBinding = 262144, IgnoreReturn = 16777216 } #endif internal static class ReflectionUtils { public static readonly Type[] EmptyTypes; static ReflectionUtils() { #if !(NETFX_CORE || PORTABLE40 || PORTABLE) EmptyTypes = Type.EmptyTypes; #else EmptyTypes = new Type[0]; #endif } public static bool IsVirtual(this PropertyInfo propertyInfo) { ValidationUtils.ArgumentNotNull(propertyInfo, "propertyInfo"); MethodInfo m = propertyInfo.GetGetMethod(); if (m != null && m.IsVirtual) return true; m = propertyInfo.GetSetMethod(); if (m != null && m.IsVirtual) return true; return false; } public static MethodInfo GetBaseDefinition(this PropertyInfo propertyInfo) { ValidationUtils.ArgumentNotNull(propertyInfo, "propertyInfo"); MethodInfo m = propertyInfo.GetGetMethod(); if (m != null) return m.GetBaseDefinition(); m = propertyInfo.GetSetMethod(); if (m != null) return m.GetBaseDefinition(); return null; } public static bool IsPublic(PropertyInfo property) { if (property.GetGetMethod() != null && property.GetGetMethod().IsPublic) return true; if (property.GetSetMethod() != null && property.GetSetMethod().IsPublic) return true; return false; } public static Type GetObjectType(object v) { return (v != null) ? v.GetType() : null; } public static string GetTypeName(Type t, FormatterAssemblyStyle assemblyFormat, SerializationBinder binder) { string fullyQualifiedTypeName; #if !(NET20 || NET35) if (binder != null) { string assemblyName, typeName; binder.BindToName(t, out assemblyName, out typeName); fullyQualifiedTypeName = typeName + (assemblyName == null ? "" : ", " + assemblyName); } else { fullyQualifiedTypeName = t.AssemblyQualifiedName; } #else fullyQualifiedTypeName = t.AssemblyQualifiedName; #endif switch (assemblyFormat) { case FormatterAssemblyStyle.Simple: return RemoveAssemblyDetails(fullyQualifiedTypeName); case FormatterAssemblyStyle.Full: return fullyQualifiedTypeName; default: throw new ArgumentOutOfRangeException(); } } private static string RemoveAssemblyDetails(string fullyQualifiedTypeName) { StringBuilder builder = new StringBuilder(); // loop through the type name and filter out qualified assembly details from nested type names bool writingAssemblyName = false; bool skippingAssemblyDetails = false; for (int i = 0; i < fullyQualifiedTypeName.Length; i++) { char current = fullyQualifiedTypeName[i]; switch (current) { case '[': writingAssemblyName = false; skippingAssemblyDetails = false; builder.Append(current); break; case ']': writingAssemblyName = false; skippingAssemblyDetails = false; builder.Append(current); break; case ',': if (!writingAssemblyName) { writingAssemblyName = true; builder.Append(current); } else { skippingAssemblyDetails = true; } break; default: if (!skippingAssemblyDetails) builder.Append(current); break; } } return builder.ToString(); } public static bool HasDefaultConstructor(Type t, bool nonPublic) { ValidationUtils.ArgumentNotNull(t, "t"); if (t.IsValueType()) return true; return (GetDefaultConstructor(t, nonPublic) != null); } public static ConstructorInfo GetDefaultConstructor(Type t) { return GetDefaultConstructor(t, false); } public static ConstructorInfo GetDefaultConstructor(Type t, bool nonPublic) { BindingFlags bindingFlags = BindingFlags.Instance | BindingFlags.Public; if (nonPublic) bindingFlags = bindingFlags | BindingFlags.NonPublic; return t.GetConstructors(bindingFlags).SingleOrDefault(c => !c.GetParameters().Any()); } public static bool IsNullable(Type t) { ValidationUtils.ArgumentNotNull(t, "t"); if (t.IsValueType()) return IsNullableType(t); return true; } public static bool IsNullableType(Type t) { ValidationUtils.ArgumentNotNull(t, "t"); return (t.IsGenericType() && t.GetGenericTypeDefinition() == typeof(Nullable<>)); } public static Type EnsureNotNullableType(Type t) { return (IsNullableType(t)) ? Nullable.GetUnderlyingType(t) : t; } public static bool IsGenericDefinition(Type type, Type genericInterfaceDefinition) { if (!type.IsGenericType()) return false; Type t = type.GetGenericTypeDefinition(); return (t == genericInterfaceDefinition); } public static bool ImplementsGenericDefinition(Type type, Type genericInterfaceDefinition) { Type implementingType; return ImplementsGenericDefinition(type, genericInterfaceDefinition, out implementingType); } public static bool ImplementsGenericDefinition(Type type, Type genericInterfaceDefinition, out Type implementingType) { ValidationUtils.ArgumentNotNull(type, "type"); ValidationUtils.ArgumentNotNull(genericInterfaceDefinition, "genericInterfaceDefinition"); if (!genericInterfaceDefinition.IsInterface() || !genericInterfaceDefinition.IsGenericTypeDefinition()) throw new ArgumentNullException("'{0}' is not a generic interface definition.".FormatWith(CultureInfo.InvariantCulture, genericInterfaceDefinition)); if (type.IsInterface()) { if (type.IsGenericType()) { Type interfaceDefinition = type.GetGenericTypeDefinition(); if (genericInterfaceDefinition == interfaceDefinition) { implementingType = type; return true; } } } foreach (Type i in type.GetInterfaces()) { if (i.IsGenericType()) { Type interfaceDefinition = i.GetGenericTypeDefinition(); if (genericInterfaceDefinition == interfaceDefinition) { implementingType = i; return true; } } } implementingType = null; return false; } public static bool InheritsGenericDefinition(Type type, Type genericClassDefinition) { Type implementingType; return InheritsGenericDefinition(type, genericClassDefinition, out implementingType); } public static bool InheritsGenericDefinition(Type type, Type genericClassDefinition, out Type implementingType) { ValidationUtils.ArgumentNotNull(type, "type"); ValidationUtils.ArgumentNotNull(genericClassDefinition, "genericClassDefinition"); if (!genericClassDefinition.IsClass() || !genericClassDefinition.IsGenericTypeDefinition()) throw new ArgumentNullException("'{0}' is not a generic class definition.".FormatWith(CultureInfo.InvariantCulture, genericClassDefinition)); return InheritsGenericDefinitionInternal(type, genericClassDefinition, out implementingType); } private static bool InheritsGenericDefinitionInternal(Type currentType, Type genericClassDefinition, out Type implementingType) { if (currentType.IsGenericType()) { Type currentGenericClassDefinition = currentType.GetGenericTypeDefinition(); if (genericClassDefinition == currentGenericClassDefinition) { implementingType = currentType; return true; } } if (currentType.BaseType() == null) { implementingType = null; return false; } return InheritsGenericDefinitionInternal(currentType.BaseType(), genericClassDefinition, out implementingType); } /// /// Gets the type of the typed collection's items. /// /// The type. /// The type of the typed collection's items. public static Type GetCollectionItemType(Type type) { ValidationUtils.ArgumentNotNull(type, "type"); Type genericListType; if (type.IsArray) { return type.GetElementType(); } if (ImplementsGenericDefinition(type, typeof(IEnumerable<>), out genericListType)) { if (genericListType.IsGenericTypeDefinition()) throw new Exception("Type {0} is not a collection.".FormatWith(CultureInfo.InvariantCulture, type)); return genericListType.GetGenericArguments()[0]; } if (typeof(IEnumerable).IsAssignableFrom(type)) { return null; } throw new Exception("Type {0} is not a collection.".FormatWith(CultureInfo.InvariantCulture, type)); } public static void GetDictionaryKeyValueTypes(Type dictionaryType, out Type keyType, out Type valueType) { ValidationUtils.ArgumentNotNull(dictionaryType, "type"); Type genericDictionaryType; if (ImplementsGenericDefinition(dictionaryType, typeof(IDictionary<,>), out genericDictionaryType)) { if (genericDictionaryType.IsGenericTypeDefinition()) throw new Exception("Type {0} is not a dictionary.".FormatWith(CultureInfo.InvariantCulture, dictionaryType)); Type[] dictionaryGenericArguments = genericDictionaryType.GetGenericArguments(); keyType = dictionaryGenericArguments[0]; valueType = dictionaryGenericArguments[1]; return; } if (typeof(IDictionary).IsAssignableFrom(dictionaryType)) { keyType = null; valueType = null; return; } throw new Exception("Type {0} is not a dictionary.".FormatWith(CultureInfo.InvariantCulture, dictionaryType)); } /// /// Gets the member's underlying type. /// /// The member. /// The underlying type of the member. public static Type GetMemberUnderlyingType(MemberInfo member) { ValidationUtils.ArgumentNotNull(member, "member"); switch (member.MemberType()) { case MemberTypes.Field: return ((FieldInfo)member).FieldType; case MemberTypes.Property: return ((PropertyInfo)member).PropertyType; case MemberTypes.Event: return ((EventInfo)member).EventHandlerType; case MemberTypes.Method: return ((MethodInfo)member).ReturnType; default: throw new ArgumentException("MemberInfo must be of type FieldInfo, PropertyInfo, EventInfo or MethodInfo", "member"); } } /// /// Determines whether the member is an indexed property. /// /// The member. /// /// true if the member is an indexed property; otherwise, false. /// public static bool IsIndexedProperty(MemberInfo member) { ValidationUtils.ArgumentNotNull(member, "member"); PropertyInfo propertyInfo = member as PropertyInfo; if (propertyInfo != null) return IsIndexedProperty(propertyInfo); else return false; } /// /// Determines whether the property is an indexed property. /// /// The property. /// /// true if the property is an indexed property; otherwise, false. /// public static bool IsIndexedProperty(PropertyInfo property) { ValidationUtils.ArgumentNotNull(property, "property"); return (property.GetIndexParameters().Length > 0); } /// /// Gets the member's value on the object. /// /// The member. /// The target object. /// The member's value on the object. public static object GetMemberValue(MemberInfo member, object target) { ValidationUtils.ArgumentNotNull(member, "member"); ValidationUtils.ArgumentNotNull(target, "target"); switch (member.MemberType()) { case MemberTypes.Field: return ((FieldInfo)member).GetValue(target); case MemberTypes.Property: try { return ((PropertyInfo)member).GetValue(target, null); } catch (TargetParameterCountException e) { throw new ArgumentException("MemberInfo '{0}' has index parameters".FormatWith(CultureInfo.InvariantCulture, member.Name), e); } default: throw new ArgumentException("MemberInfo '{0}' is not of type FieldInfo or PropertyInfo".FormatWith(CultureInfo.InvariantCulture, CultureInfo.InvariantCulture, member.Name), "member"); } } /// /// Sets the member's value on the target object. /// /// The member. /// The target. /// The value. public static void SetMemberValue(MemberInfo member, object target, object value) { ValidationUtils.ArgumentNotNull(member, "member"); ValidationUtils.ArgumentNotNull(target, "target"); switch (member.MemberType()) { case MemberTypes.Field: ((FieldInfo)member).SetValue(target, value); break; case MemberTypes.Property: ((PropertyInfo)member).SetValue(target, value, null); break; default: throw new ArgumentException("MemberInfo '{0}' must be of type FieldInfo or PropertyInfo".FormatWith(CultureInfo.InvariantCulture, member.Name), "member"); } } /// /// Determines whether the specified MemberInfo can be read. /// /// The MemberInfo to determine whether can be read. /// /// if set to true then allow the member to be gotten non-publicly. /// /// true if the specified MemberInfo can be read; otherwise, false. /// public static bool CanReadMemberValue(MemberInfo member, bool nonPublic) { switch (member.MemberType()) { case MemberTypes.Field: FieldInfo fieldInfo = (FieldInfo)member; if (nonPublic) return true; else if (fieldInfo.IsPublic) return true; return false; case MemberTypes.Property: PropertyInfo propertyInfo = (PropertyInfo)member; if (!propertyInfo.CanRead) return false; if (nonPublic) return true; return (propertyInfo.GetGetMethod(nonPublic) != null); default: return false; } } /// /// Determines whether the specified MemberInfo can be set. /// /// The MemberInfo to determine whether can be set. /// if set to true then allow the member to be set non-publicly. /// if set to true then allow the member to be set if read-only. /// /// true if the specified MemberInfo can be set; otherwise, false. /// public static bool CanSetMemberValue(MemberInfo member, bool nonPublic, bool canSetReadOnly) { switch (member.MemberType()) { case MemberTypes.Field: FieldInfo fieldInfo = (FieldInfo)member; if (fieldInfo.IsLiteral) return false; if (fieldInfo.IsInitOnly && !canSetReadOnly) return false; if (nonPublic) return true; if (fieldInfo.IsPublic) return true; return false; case MemberTypes.Property: PropertyInfo propertyInfo = (PropertyInfo)member; if (!propertyInfo.CanWrite) return false; if (nonPublic) return true; return (propertyInfo.GetSetMethod(nonPublic) != null); default: return false; } } public static List GetFieldsAndProperties(Type type, BindingFlags bindingAttr) { List targetMembers = new List(); targetMembers.AddRange(GetFields(type, bindingAttr)); targetMembers.AddRange(GetProperties(type, bindingAttr)); // for some reason .NET returns multiple members when overriding a generic member on a base class // http://social.msdn.microsoft.com/Forums/en-US/b5abbfee-e292-4a64-8907-4e3f0fb90cd9/reflection-overriden-abstract-generic-properties?forum=netfxbcl // filter members to only return the override on the topmost class // update: I think this is fixed in .NET 3.5 SP1 - leave this in for now... List distinctMembers = new List(targetMembers.Count); foreach (var groupedMember in targetMembers.GroupBy(m => m.Name)) { int count = groupedMember.Count(); IList members = groupedMember.ToList(); if (count == 1) { distinctMembers.Add(members.First()); } else { IList resolvedMembers = new List(); foreach (MemberInfo memberInfo in members) { // this is a bit hacky // if the hiding property is hiding a base property and it is virtual // then this ensures the derived property gets used if (resolvedMembers.Count == 0) resolvedMembers.Add(memberInfo); else if (!IsOverridenGenericMember(memberInfo, bindingAttr) || memberInfo.Name == "Item") resolvedMembers.Add(memberInfo); } distinctMembers.AddRange(resolvedMembers); } } return distinctMembers; } private static bool IsOverridenGenericMember(MemberInfo memberInfo, BindingFlags bindingAttr) { if (memberInfo.MemberType() != MemberTypes.Property) return false; PropertyInfo propertyInfo = (PropertyInfo)memberInfo; if (!IsVirtual(propertyInfo)) return false; Type declaringType = propertyInfo.DeclaringType; if (!declaringType.IsGenericType()) return false; Type genericTypeDefinition = declaringType.GetGenericTypeDefinition(); if (genericTypeDefinition == null) return false; MemberInfo[] members = genericTypeDefinition.GetMember(propertyInfo.Name, bindingAttr); if (members.Length == 0) return false; Type memberUnderlyingType = GetMemberUnderlyingType(members[0]); if (!memberUnderlyingType.IsGenericParameter) return false; return true; } public static T GetAttribute(object attributeProvider) where T : Attribute { return GetAttribute(attributeProvider, true); } public static T GetAttribute(object attributeProvider, bool inherit) where T : Attribute { T[] attributes = GetAttributes(attributeProvider, inherit); return (attributes != null) ? attributes.FirstOrDefault() : null; } #if !(NETFX_CORE || PORTABLE) public static T[] GetAttributes(object attributeProvider, bool inherit) where T : Attribute { Attribute[] a = GetAttributes(attributeProvider, typeof(T), inherit); T[] attributes = a as T[]; if (attributes != null) return attributes; return a.Cast().ToArray(); } public static Attribute[] GetAttributes(object attributeProvider, Type attributeType, bool inherit) { ValidationUtils.ArgumentNotNull(attributeProvider, "attributeProvider"); object provider = attributeProvider; // http://hyperthink.net/blog/getcustomattributes-gotcha/ // ICustomAttributeProvider doesn't do inheritance if (provider is Type) { Type t = (Type)provider; object[] a = (attributeType != null) ? t.GetCustomAttributes(attributeType, inherit) : t.GetCustomAttributes(inherit); Attribute[] attributes = a.Cast().ToArray(); #if (NET20 || NET35) // ye olde .NET GetCustomAttributes doesn't respect the inherit argument if (inherit && t.BaseType != null) attributes = attributes.Union(GetAttributes(t.BaseType, attributeType, inherit)).ToArray(); #endif return attributes; } if (provider is Assembly) { Assembly a = (Assembly)provider; return (attributeType != null) ? Attribute.GetCustomAttributes(a, attributeType) : Attribute.GetCustomAttributes(a); } if (provider is MemberInfo) { MemberInfo m = (MemberInfo)provider; return (attributeType != null) ? Attribute.GetCustomAttributes(m, attributeType, inherit) : Attribute.GetCustomAttributes(m, inherit); } #if !PORTABLE40 if (provider is Module) { Module m = (Module)provider; return (attributeType != null) ? Attribute.GetCustomAttributes(m, attributeType, inherit) : Attribute.GetCustomAttributes(m, inherit); } #endif if (provider is ParameterInfo) { ParameterInfo p = (ParameterInfo)provider; return (attributeType != null) ? Attribute.GetCustomAttributes(p, attributeType, inherit) : Attribute.GetCustomAttributes(p, inherit); } #if !PORTABLE40 ICustomAttributeProvider customAttributeProvider = (ICustomAttributeProvider)attributeProvider; object[] result = (attributeType != null) ? customAttributeProvider.GetCustomAttributes(attributeType, inherit) : customAttributeProvider.GetCustomAttributes(inherit); return (Attribute[])result; #else throw new Exception("Cannot get attributes from '{0}'.".FormatWith(CultureInfo.InvariantCulture, provider)); #endif } #else public static T[] GetAttributes(object attributeProvider, bool inherit) where T : Attribute { return GetAttributes(attributeProvider, typeof(T), inherit).Cast().ToArray(); } public static Attribute[] GetAttributes(object provider, Type attributeType, bool inherit) { if (provider is Type) { Type t = (Type)provider; return (attributeType != null) ? t.GetTypeInfo().GetCustomAttributes(attributeType, inherit).ToArray() : t.GetTypeInfo().GetCustomAttributes(inherit).ToArray(); } if (provider is Assembly) { Assembly a = (Assembly)provider; return (attributeType != null) ? a.GetCustomAttributes(attributeType).ToArray() : a.GetCustomAttributes().ToArray(); } if (provider is MemberInfo) { MemberInfo m = (MemberInfo)provider; return (attributeType != null) ? m.GetCustomAttributes(attributeType, inherit).ToArray() : m.GetCustomAttributes(inherit).ToArray(); } if (provider is Module) { Module m = (Module)provider; return (attributeType != null) ? m.GetCustomAttributes(attributeType).ToArray() : m.GetCustomAttributes().ToArray(); } if (provider is ParameterInfo) { ParameterInfo p = (ParameterInfo)provider; return (attributeType != null) ? p.GetCustomAttributes(attributeType, inherit).ToArray() : p.GetCustomAttributes(inherit).ToArray(); } throw new Exception("Cannot get attributes from '{0}'.".FormatWith(CultureInfo.InvariantCulture, provider)); } #endif public static void SplitFullyQualifiedTypeName(string fullyQualifiedTypeName, out string typeName, out string assemblyName) { int? assemblyDelimiterIndex = GetAssemblyDelimiterIndex(fullyQualifiedTypeName); if (assemblyDelimiterIndex != null) { typeName = fullyQualifiedTypeName.Substring(0, assemblyDelimiterIndex.Value).Trim(); assemblyName = fullyQualifiedTypeName.Substring(assemblyDelimiterIndex.Value + 1, fullyQualifiedTypeName.Length - assemblyDelimiterIndex.Value - 1).Trim(); } else { typeName = fullyQualifiedTypeName; assemblyName = null; } } private static int? GetAssemblyDelimiterIndex(string fullyQualifiedTypeName) { // we need to get the first comma following all surrounded in brackets because of generic types // e.g. System.Collections.Generic.Dictionary`2[[System.String, mscorlib,Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 int scope = 0; for (int i = 0; i < fullyQualifiedTypeName.Length; i++) { char current = fullyQualifiedTypeName[i]; switch (current) { case '[': scope++; break; case ']': scope--; break; case ',': if (scope == 0) return i; break; } } return null; } public static MemberInfo GetMemberInfoFromType(Type targetType, MemberInfo memberInfo) { const BindingFlags bindingAttr = BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic; switch (memberInfo.MemberType()) { case MemberTypes.Property: PropertyInfo propertyInfo = (PropertyInfo)memberInfo; Type[] types = propertyInfo.GetIndexParameters().Select(p => p.ParameterType).ToArray(); return targetType.GetProperty(propertyInfo.Name, bindingAttr, null, propertyInfo.PropertyType, types, null); default: return targetType.GetMember(memberInfo.Name, memberInfo.MemberType(), bindingAttr).SingleOrDefault(); } } public static IEnumerable GetFields(Type targetType, BindingFlags bindingAttr) { ValidationUtils.ArgumentNotNull(targetType, "targetType"); List fieldInfos = new List(targetType.GetFields(bindingAttr)); #if !(NETFX_CORE || PORTABLE) // Type.GetFields doesn't return inherited private fields // manually find private fields from base class GetChildPrivateFields(fieldInfos, targetType, bindingAttr); #endif return fieldInfos.Cast(); } #if !(NETFX_CORE || PORTABLE) private static void GetChildPrivateFields(IList initialFields, Type targetType, BindingFlags bindingAttr) { // fix weirdness with private FieldInfos only being returned for the current Type // find base type fields and add them to result if ((bindingAttr & BindingFlags.NonPublic) != 0) { // modify flags to not search for public fields BindingFlags nonPublicBindingAttr = bindingAttr.RemoveFlag(BindingFlags.Public); while ((targetType = targetType.BaseType()) != null) { // filter out protected fields IEnumerable childPrivateFields = targetType.GetFields(nonPublicBindingAttr).Where(f => f.IsPrivate).Cast(); initialFields.AddRange(childPrivateFields); } } } #endif public static IEnumerable GetProperties(Type targetType, BindingFlags bindingAttr) { ValidationUtils.ArgumentNotNull(targetType, "targetType"); List propertyInfos = new List(targetType.GetProperties(bindingAttr)); GetChildPrivateProperties(propertyInfos, targetType, bindingAttr); // a base class private getter/setter will be inaccessable unless the property was gotten from the base class for (int i = 0; i < propertyInfos.Count; i++) { PropertyInfo member = propertyInfos[i]; if (member.DeclaringType != targetType) { PropertyInfo declaredMember = (PropertyInfo)GetMemberInfoFromType(member.DeclaringType, member); propertyInfos[i] = declaredMember; } } return propertyInfos; } public static BindingFlags RemoveFlag(this BindingFlags bindingAttr, BindingFlags flag) { return ((bindingAttr & flag) == flag) ? bindingAttr ^ flag : bindingAttr; } private static void GetChildPrivateProperties(IList initialProperties, Type targetType, BindingFlags bindingAttr) { // fix weirdness with private PropertyInfos only being returned for the current Type // find base type properties and add them to result // also find base properties that have been hidden by subtype properties with the same name while ((targetType = targetType.BaseType()) != null) { foreach (PropertyInfo propertyInfo in targetType.GetProperties(bindingAttr)) { PropertyInfo subTypeProperty = propertyInfo; if (!IsPublic(subTypeProperty)) { // have to test on name rather than reference because instances are different // depending on the type that GetProperties was called on int index = initialProperties.IndexOf(p => p.Name == subTypeProperty.Name); if (index == -1) { initialProperties.Add(subTypeProperty); } else { PropertyInfo childProperty = initialProperties[index]; // don't replace public child with private base if (!IsPublic(childProperty)) { // replace nonpublic properties for a child, but gotten from // the parent with the one from the child // the property gotten from the child will have access to private getter/setter initialProperties[index] = subTypeProperty; } } } else { if (!subTypeProperty.IsVirtual()) { int index = initialProperties.IndexOf(p => p.Name == subTypeProperty.Name && p.DeclaringType == subTypeProperty.DeclaringType); if (index == -1) initialProperties.Add(subTypeProperty); } else { int index = initialProperties.IndexOf(p => p.Name == subTypeProperty.Name && p.IsVirtual() && p.GetBaseDefinition() != null && p.GetBaseDefinition().DeclaringType.IsAssignableFrom(subTypeProperty.DeclaringType)); if (index == -1) initialProperties.Add(subTypeProperty); } } } } } public static bool IsMethodOverridden(Type currentType, Type methodDeclaringType, string method) { bool isMethodOverriden = currentType.GetMethods(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance) .Any(info => info.Name == method && // check that the method overrides the original on DynamicObjectProxy info.DeclaringType != methodDeclaringType && info.GetBaseDefinition().DeclaringType == methodDeclaringType ); return isMethodOverriden; } public static object GetDefaultValue(Type type) { if (!type.IsValueType()) return null; switch (ConvertUtils.GetTypeCode(type)) { case PrimitiveTypeCode.Boolean: return false; case PrimitiveTypeCode.Char: case PrimitiveTypeCode.SByte: case PrimitiveTypeCode.Byte: case PrimitiveTypeCode.Int16: case PrimitiveTypeCode.UInt16: case PrimitiveTypeCode.Int32: case PrimitiveTypeCode.UInt32: return 0; case PrimitiveTypeCode.Int64: case PrimitiveTypeCode.UInt64: return 0L; case PrimitiveTypeCode.Single: return 0f; case PrimitiveTypeCode.Double: return 0.0; case PrimitiveTypeCode.Decimal: return 0m; case PrimitiveTypeCode.DateTime: return new DateTime(); #if !(PORTABLE || PORTABLE40 || NET35 || NET20) case PrimitiveTypeCode.BigInteger: return new BigInteger(); #endif case PrimitiveTypeCode.Guid: return new Guid(); #if !NET20 case PrimitiveTypeCode.DateTimeOffset: return new DateTimeOffset(); #endif } if (IsNullable(type)) return null; // possibly use IL initobj for perf here? return Activator.CreateInstance(type); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/DateTimeParser.cs0000664000175000017500000002077412454416117026423 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Utilities { internal enum ParserTimeZone { Unspecified = 0, Utc = 1, LocalWestOfUtc = 2, LocalEastOfUtc = 3 } internal struct DateTimeParser { static DateTimeParser() { Power10 = new[] { -1, 10, 100, 1000, 10000, 100000, 1000000 }; Lzyyyy = "yyyy".Length; Lzyyyy_ = "yyyy-".Length; Lzyyyy_MM = "yyyy-MM".Length; Lzyyyy_MM_ = "yyyy-MM-".Length; Lzyyyy_MM_dd = "yyyy-MM-dd".Length; Lzyyyy_MM_ddT = "yyyy-MM-ddT".Length; LzHH = "HH".Length; LzHH_ = "HH:".Length; LzHH_mm = "HH:mm".Length; LzHH_mm_ = "HH:mm:".Length; LzHH_mm_ss = "HH:mm:ss".Length; Lz_ = "-".Length; Lz_zz = "-zz".Length; } public int Year; public int Month; public int Day; public int Hour; public int Minute; public int Second; public int Fraction; public int ZoneHour; public int ZoneMinute; public ParserTimeZone Zone; private string _text; private int _length; private static readonly int[] Power10; private static readonly int Lzyyyy; private static readonly int Lzyyyy_; private static readonly int Lzyyyy_MM; private static readonly int Lzyyyy_MM_; private static readonly int Lzyyyy_MM_dd; private static readonly int Lzyyyy_MM_ddT; private static readonly int LzHH; private static readonly int LzHH_; private static readonly int LzHH_mm; private static readonly int LzHH_mm_; private static readonly int LzHH_mm_ss; private static readonly int Lz_; private static readonly int Lz_zz; private const short MaxFractionDigits = 7; public bool Parse(string text) { _text = text; _length = text.Length; if (ParseDate(0) && ParseChar(Lzyyyy_MM_dd, 'T') && ParseTimeAndZoneAndWhitespace(Lzyyyy_MM_ddT)) return true; return false; } private bool ParseDate(int start) { return (Parse4Digit(start, out Year) && 1 <= Year && ParseChar(start + Lzyyyy, '-') && Parse2Digit(start + Lzyyyy_, out Month) && 1 <= Month && Month <= 12 && ParseChar(start + Lzyyyy_MM, '-') && Parse2Digit(start + Lzyyyy_MM_, out Day) && 1 <= Day && Day <= DateTime.DaysInMonth(Year, Month)); } private bool ParseTimeAndZoneAndWhitespace(int start) { return (ParseTime(ref start) && ParseZone(start)); } private bool ParseTime(ref int start) { if (!(Parse2Digit(start, out Hour) && Hour < 24 && ParseChar(start + LzHH, ':') && Parse2Digit(start + LzHH_, out Minute) && Minute < 60 && ParseChar(start + LzHH_mm, ':') && Parse2Digit(start + LzHH_mm_, out Second) && Second < 60)) { return false; } start += LzHH_mm_ss; if (ParseChar(start, '.')) { Fraction = 0; int numberOfDigits = 0; while (++start < _length && numberOfDigits < MaxFractionDigits) { int digit = _text[start] - '0'; if (digit < 0 || digit > 9) break; Fraction = (Fraction * 10) + digit; numberOfDigits++; } if (numberOfDigits < MaxFractionDigits) { if (numberOfDigits == 0) return false; Fraction *= Power10[MaxFractionDigits - numberOfDigits]; } } return true; } private bool ParseZone(int start) { if (start < _length) { char ch = _text[start]; if (ch == 'Z' || ch == 'z') { Zone = ParserTimeZone.Utc; start++; } else { if (start + 2 < _length && Parse2Digit(start + Lz_, out ZoneHour) && ZoneHour <= 99) { switch (ch) { case '-': Zone = ParserTimeZone.LocalWestOfUtc; start += Lz_zz; break; case '+': Zone = ParserTimeZone.LocalEastOfUtc; start += Lz_zz; break; } } if (start < _length) { if (ParseChar(start, ':')) { start += 1; if (start + 1 < _length && Parse2Digit(start, out ZoneMinute) && ZoneMinute <= 99) { start += 2; } } else { if (start + 1 < _length && Parse2Digit(start, out ZoneMinute) && ZoneMinute <= 99) { start += 2; } } } } } return (start == _length); } private bool Parse4Digit(int start, out int num) { if (start + 3 < _length) { int digit1 = _text[start] - '0'; int digit2 = _text[start + 1] - '0'; int digit3 = _text[start + 2] - '0'; int digit4 = _text[start + 3] - '0'; if (0 <= digit1 && digit1 < 10 && 0 <= digit2 && digit2 < 10 && 0 <= digit3 && digit3 < 10 && 0 <= digit4 && digit4 < 10) { num = (((((digit1 * 10) + digit2) * 10) + digit3) * 10) + digit4; return true; } } num = 0; return false; } private bool Parse2Digit(int start, out int num) { if (start + 1 < _length) { int digit1 = _text[start] - '0'; int digit2 = _text[start + 1] - '0'; if (0 <= digit1 && digit1 < 10 && 0 <= digit2 && digit2 < 10) { num = (digit1 * 10) + digit2; return true; } } num = 0; return false; } private bool ParseChar(int start, char ch) { return (start < _length && _text[start] == ch); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Utilities/LateBoundReflectionDelegateFactory.cs0000664000175000017500000000714712454416117032424 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Serialization; using System.Reflection; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif namespace Newtonsoft.Json.Utilities { internal class LateBoundReflectionDelegateFactory : ReflectionDelegateFactory { private static readonly LateBoundReflectionDelegateFactory _instance = new LateBoundReflectionDelegateFactory(); internal static ReflectionDelegateFactory Instance { get { return _instance; } } public override ObjectConstructor CreateParametrizedConstructor(MethodBase method) { ValidationUtils.ArgumentNotNull(method, "method"); ConstructorInfo c = method as ConstructorInfo; if (c != null) return c.Invoke; return a => method.Invoke(null, a); } public override MethodCall CreateMethodCall(MethodBase method) { ValidationUtils.ArgumentNotNull(method, "method"); ConstructorInfo c = method as ConstructorInfo; if (c != null) return (o, a) => c.Invoke(a); return (o, a) => method.Invoke(o, a); } public override Func CreateDefaultConstructor(Type type) { ValidationUtils.ArgumentNotNull(type, "type"); if (type.IsValueType()) return () => (T)Activator.CreateInstance(type); ConstructorInfo constructorInfo = ReflectionUtils.GetDefaultConstructor(type, true); return () => (T)constructorInfo.Invoke(null); } public override Func CreateGet(PropertyInfo propertyInfo) { ValidationUtils.ArgumentNotNull(propertyInfo, "propertyInfo"); return o => propertyInfo.GetValue(o, null); } public override Func CreateGet(FieldInfo fieldInfo) { ValidationUtils.ArgumentNotNull(fieldInfo, "fieldInfo"); return o => fieldInfo.GetValue(o); } public override Action CreateSet(FieldInfo fieldInfo) { ValidationUtils.ArgumentNotNull(fieldInfo, "fieldInfo"); return (o, v) => fieldInfo.SetValue(o, v); } public override Action CreateSet(PropertyInfo propertyInfo) { ValidationUtils.ArgumentNotNull(propertyInfo, "propertyInfo"); return (o, v) => propertyInfo.SetValue(o, v, null); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Newtonsoft.Json.Portable40.csproj0000664000175000017500000003171512454416117027460 0ustar directhexdirecthex Debug AnyCPU {959F7F85-C98B-4876-971A-9036224578E4} Library Properties Newtonsoft.Json Newtonsoft.Json v4.0 Profile328 512 {786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 10.0 4.0 true full false bin\Debug\Portable40\ TRACE;DEBUG;CODE_ANALYSIS;PORTABLE40 prompt 4 true Newtonsoft.Json.ruleset pdbonly true bin\Release\Portable40\ TRACE;CODE_ANALYSIS;PORTABLE40 prompt 4 bin\Release\Portable40\Newtonsoft.Json.xml true Newtonsoft.Json.ruleset newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonReader.cs0000664000175000017500000010144212454416117023623 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; using System.Globalization; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Utilities; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json { /// /// Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. /// public abstract class JsonReader : IDisposable { /// /// Specifies the state of the reader. /// protected internal enum State { /// /// The Read method has not been called. /// Start, /// /// The end of the file has been reached successfully. /// Complete, /// /// Reader is at a property. /// Property, /// /// Reader is at the start of an object. /// ObjectStart, /// /// Reader is in an object. /// Object, /// /// Reader is at the start of an array. /// ArrayStart, /// /// Reader is in an array. /// Array, /// /// The Close method has been called. /// Closed, /// /// Reader has just read a value. /// PostValue, /// /// Reader is at the start of a constructor. /// ConstructorStart, /// /// Reader in a constructor. /// Constructor, /// /// An error occurred that prevents the read operation from continuing. /// Error, /// /// The end of the file has been reached successfully. /// Finished } // current Token data private JsonToken _tokenType; private object _value; internal char _quoteChar; internal State _currentState; internal ReadType _readType; private JsonPosition _currentPosition; private CultureInfo _culture; private DateTimeZoneHandling _dateTimeZoneHandling; private int? _maxDepth; private bool _hasExceededMaxDepth; internal DateParseHandling _dateParseHandling; internal FloatParseHandling _floatParseHandling; private string _dateFormatString; private readonly List _stack; /// /// Gets the current reader state. /// /// The current reader state. protected State CurrentState { get { return _currentState; } } /// /// Gets or sets a value indicating whether the underlying stream or /// should be closed when the reader is closed. /// /// /// true to close the underlying stream or when /// the reader is closed; otherwise false. The default is true. /// public bool CloseInput { get; set; } /// /// Gets or sets a value indicating whether multiple pieces of JSON content can /// be read from a continuous stream without erroring. /// /// /// true to support reading multiple pieces of JSON content; otherwise false. The default is false. /// public bool SupportMultipleContent { get; set; } /// /// Gets the quotation mark character used to enclose the value of a string. /// public virtual char QuoteChar { get { return _quoteChar; } protected internal set { _quoteChar = value; } } /// /// Get or set how time zones are handling when reading JSON. /// public DateTimeZoneHandling DateTimeZoneHandling { get { return _dateTimeZoneHandling; } set { _dateTimeZoneHandling = value; } } /// /// Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. /// public DateParseHandling DateParseHandling { get { return _dateParseHandling; } set { _dateParseHandling = value; } } /// /// Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. /// public FloatParseHandling FloatParseHandling { get { return _floatParseHandling; } set { _floatParseHandling = value; } } /// /// Get or set how custom date formatted strings are parsed when reading JSON. /// public string DateFormatString { get { return _dateFormatString; } set { _dateFormatString = value; } } /// /// Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . /// public int? MaxDepth { get { return _maxDepth; } set { if (value <= 0) throw new ArgumentException("Value must be positive.", "value"); _maxDepth = value; } } /// /// Gets the type of the current JSON token. /// public virtual JsonToken TokenType { get { return _tokenType; } } /// /// Gets the text value of the current JSON token. /// public virtual object Value { get { return _value; } } /// /// Gets The Common Language Runtime (CLR) type for the current JSON token. /// public virtual Type ValueType { get { return (_value != null) ? _value.GetType() : null; } } /// /// Gets the depth of the current token in the JSON document. /// /// The depth of the current token in the JSON document. public virtual int Depth { get { int depth = _stack.Count; if (JsonTokenUtils.IsStartToken(TokenType) || _currentPosition.Type == JsonContainerType.None) return depth; else return depth + 1; } } /// /// Gets the path of the current JSON token. /// public virtual string Path { get { if (_currentPosition.Type == JsonContainerType.None) return string.Empty; bool insideContainer = (_currentState != State.ArrayStart && _currentState != State.ConstructorStart && _currentState != State.ObjectStart); IEnumerable positions = (!insideContainer) ? _stack : _stack.Concat(new[] { _currentPosition }); return JsonPosition.BuildPath(positions); } } /// /// Gets or sets the culture used when reading JSON. Defaults to . /// public CultureInfo Culture { get { return _culture ?? CultureInfo.InvariantCulture; } set { _culture = value; } } internal JsonPosition GetPosition(int depth) { if (depth < _stack.Count) return _stack[depth]; return _currentPosition; } /// /// Initializes a new instance of the class with the specified . /// protected JsonReader() { _currentState = State.Start; _stack = new List(4); _dateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind; _dateParseHandling = DateParseHandling.DateTime; _floatParseHandling = FloatParseHandling.Double; CloseInput = true; } private void Push(JsonContainerType value) { UpdateScopeWithFinishedValue(); if (_currentPosition.Type == JsonContainerType.None) { _currentPosition = new JsonPosition(value); } else { _stack.Add(_currentPosition); _currentPosition = new JsonPosition(value); // this is a little hacky because Depth increases when first property/value is written but only testing here is faster/simpler if (_maxDepth != null && Depth + 1 > _maxDepth && !_hasExceededMaxDepth) { _hasExceededMaxDepth = true; throw JsonReaderException.Create(this, "The reader's MaxDepth of {0} has been exceeded.".FormatWith(CultureInfo.InvariantCulture, _maxDepth)); } } } private JsonContainerType Pop() { JsonPosition oldPosition; if (_stack.Count > 0) { oldPosition = _currentPosition; _currentPosition = _stack[_stack.Count - 1]; _stack.RemoveAt(_stack.Count - 1); } else { oldPosition = _currentPosition; _currentPosition = new JsonPosition(); } if (_maxDepth != null && Depth <= _maxDepth) _hasExceededMaxDepth = false; return oldPosition.Type; } private JsonContainerType Peek() { return _currentPosition.Type; } /// /// Reads the next JSON token from the stream. /// /// true if the next token was read successfully; false if there are no more tokens to read. public abstract bool Read(); /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public abstract int? ReadAsInt32(); /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public abstract string ReadAsString(); /// /// Reads the next JSON token from the stream as a []. /// /// A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. public abstract byte[] ReadAsBytes(); /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public abstract decimal? ReadAsDecimal(); /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public abstract DateTime? ReadAsDateTime(); #if !NET20 /// /// Reads the next JSON token from the stream as a . /// /// A . This method will return null at the end of an array. public abstract DateTimeOffset? ReadAsDateTimeOffset(); #endif internal virtual bool ReadInternal() { throw new NotImplementedException(); } #if !NET20 internal DateTimeOffset? ReadAsDateTimeOffsetInternal() { _readType = ReadType.ReadAsDateTimeOffset; JsonToken t; do { if (!ReadInternal()) { SetToken(JsonToken.None); return null; } else { t = TokenType; } } while (t == JsonToken.Comment); if (t == JsonToken.Date) { if (Value is DateTime) SetToken(JsonToken.Date, new DateTimeOffset((DateTime)Value), false); return (DateTimeOffset)Value; } if (t == JsonToken.Null) return null; if (t == JsonToken.String) { string s = (string)Value; if (string.IsNullOrEmpty(s)) { SetToken(JsonToken.Null); return null; } object temp; DateTimeOffset dt; if (DateTimeUtils.TryParseDateTime(s, DateParseHandling.DateTimeOffset, DateTimeZoneHandling, _dateFormatString, Culture, out temp)) { dt = (DateTimeOffset)temp; SetToken(JsonToken.Date, dt, false); return dt; } if (DateTimeOffset.TryParse(s, Culture, DateTimeStyles.RoundtripKind, out dt)) { SetToken(JsonToken.Date, dt, false); return dt; } throw JsonReaderException.Create(this, "Could not convert string to DateTimeOffset: {0}.".FormatWith(CultureInfo.InvariantCulture, Value)); } if (t == JsonToken.EndArray) return null; throw JsonReaderException.Create(this, "Error reading date. Unexpected token: {0}.".FormatWith(CultureInfo.InvariantCulture, t)); } #endif internal byte[] ReadAsBytesInternal() { _readType = ReadType.ReadAsBytes; JsonToken t; do { if (!ReadInternal()) { SetToken(JsonToken.None); return null; } else { t = TokenType; } } while (t == JsonToken.Comment); if (IsWrappedInTypeObject()) { byte[] data = ReadAsBytes(); ReadInternal(); SetToken(JsonToken.Bytes, data, false); return data; } // attempt to convert possible base 64 string to bytes if (t == JsonToken.String) { string s = (string)Value; byte[] data; Guid g; if (s.Length == 0) { data = new byte[0]; } else if (ConvertUtils.TryConvertGuid(s, out g)) { data = g.ToByteArray(); } else { data = Convert.FromBase64String(s); } SetToken(JsonToken.Bytes, data, false); return data; } if (t == JsonToken.Null) return null; if (t == JsonToken.Bytes) { if (ValueType == typeof(Guid)) { byte[] data = ((Guid)Value).ToByteArray(); SetToken(JsonToken.Bytes, data, false); return data; } return (byte[])Value; } if (t == JsonToken.StartArray) { List data = new List(); while (ReadInternal()) { t = TokenType; switch (t) { case JsonToken.Integer: data.Add(Convert.ToByte(Value, CultureInfo.InvariantCulture)); break; case JsonToken.EndArray: byte[] d = data.ToArray(); SetToken(JsonToken.Bytes, d, false); return d; case JsonToken.Comment: // skip break; default: throw JsonReaderException.Create(this, "Unexpected token when reading bytes: {0}.".FormatWith(CultureInfo.InvariantCulture, t)); } } throw JsonReaderException.Create(this, "Unexpected end when reading bytes."); } if (t == JsonToken.EndArray) return null; throw JsonReaderException.Create(this, "Error reading bytes. Unexpected token: {0}.".FormatWith(CultureInfo.InvariantCulture, t)); } internal decimal? ReadAsDecimalInternal() { _readType = ReadType.ReadAsDecimal; JsonToken t; do { if (!ReadInternal()) { SetToken(JsonToken.None); return null; } else { t = TokenType; } } while (t == JsonToken.Comment); if (t == JsonToken.Integer || t == JsonToken.Float) { if (!(Value is decimal)) SetToken(JsonToken.Float, Convert.ToDecimal(Value, CultureInfo.InvariantCulture), false); return (decimal)Value; } if (t == JsonToken.Null) return null; if (t == JsonToken.String) { string s = (string)Value; if (string.IsNullOrEmpty(s)) { SetToken(JsonToken.Null); return null; } decimal d; if (decimal.TryParse(s, NumberStyles.Number, Culture, out d)) { SetToken(JsonToken.Float, d, false); return d; } else { throw JsonReaderException.Create(this, "Could not convert string to decimal: {0}.".FormatWith(CultureInfo.InvariantCulture, Value)); } } if (t == JsonToken.EndArray) return null; throw JsonReaderException.Create(this, "Error reading decimal. Unexpected token: {0}.".FormatWith(CultureInfo.InvariantCulture, t)); } internal int? ReadAsInt32Internal() { _readType = ReadType.ReadAsInt32; JsonToken t; do { if (!ReadInternal()) { SetToken(JsonToken.None); return null; } else { t = TokenType; } } while (t == JsonToken.Comment); if (t == JsonToken.Integer || t == JsonToken.Float) { if (!(Value is int)) SetToken(JsonToken.Integer, Convert.ToInt32(Value, CultureInfo.InvariantCulture), false); return (int)Value; } if (t == JsonToken.Null) return null; int i; if (t == JsonToken.String) { string s = (string)Value; if (string.IsNullOrEmpty(s)) { SetToken(JsonToken.Null); return null; } if (int.TryParse(s, NumberStyles.Integer, Culture, out i)) { SetToken(JsonToken.Integer, i, false); return i; } else { throw JsonReaderException.Create(this, "Could not convert string to integer: {0}.".FormatWith(CultureInfo.InvariantCulture, Value)); } } if (t == JsonToken.EndArray) return null; throw JsonReaderException.Create(this, "Error reading integer. Unexpected token: {0}.".FormatWith(CultureInfo.InvariantCulture, TokenType)); } internal string ReadAsStringInternal() { _readType = ReadType.ReadAsString; JsonToken t; do { if (!ReadInternal()) { SetToken(JsonToken.None); return null; } else { t = TokenType; } } while (t == JsonToken.Comment); if (t == JsonToken.String) return (string)Value; if (t == JsonToken.Null) return null; if (JsonTokenUtils.IsPrimitiveToken(t)) { if (Value != null) { string s; if (Value is IFormattable) s = ((IFormattable)Value).ToString(null, Culture); else s = Value.ToString(); SetToken(JsonToken.String, s, false); return s; } } if (t == JsonToken.EndArray) return null; throw JsonReaderException.Create(this, "Error reading string. Unexpected token: {0}.".FormatWith(CultureInfo.InvariantCulture, t)); } internal DateTime? ReadAsDateTimeInternal() { _readType = ReadType.ReadAsDateTime; do { if (!ReadInternal()) { SetToken(JsonToken.None); return null; } } while (TokenType == JsonToken.Comment); if (TokenType == JsonToken.Date) return (DateTime)Value; if (TokenType == JsonToken.Null) return null; if (TokenType == JsonToken.String) { string s = (string)Value; if (string.IsNullOrEmpty(s)) { SetToken(JsonToken.Null); return null; } DateTime dt; object temp; if (DateTimeUtils.TryParseDateTime(s, DateParseHandling.DateTime, DateTimeZoneHandling, _dateFormatString, Culture, out temp)) { dt = (DateTime)temp; dt = DateTimeUtils.EnsureDateTime(dt, DateTimeZoneHandling); SetToken(JsonToken.Date, dt, false); return dt; } if (DateTime.TryParse(s, Culture, DateTimeStyles.RoundtripKind, out dt)) { dt = DateTimeUtils.EnsureDateTime(dt, DateTimeZoneHandling); SetToken(JsonToken.Date, dt, false); return dt; } throw JsonReaderException.Create(this, "Could not convert string to DateTime: {0}.".FormatWith(CultureInfo.InvariantCulture, Value)); } if (TokenType == JsonToken.EndArray) return null; throw JsonReaderException.Create(this, "Error reading date. Unexpected token: {0}.".FormatWith(CultureInfo.InvariantCulture, TokenType)); } private bool IsWrappedInTypeObject() { _readType = ReadType.Read; if (TokenType == JsonToken.StartObject) { if (!ReadInternal()) throw JsonReaderException.Create(this, "Unexpected end when reading bytes."); if (Value.ToString() == JsonTypeReflector.TypePropertyName) { ReadInternal(); if (Value != null && Value.ToString().StartsWith("System.Byte[]", StringComparison.Ordinal)) { ReadInternal(); if (Value.ToString() == JsonTypeReflector.ValuePropertyName) { return true; } } } throw JsonReaderException.Create(this, "Error reading bytes. Unexpected token: {0}.".FormatWith(CultureInfo.InvariantCulture, JsonToken.StartObject)); } return false; } /// /// Skips the children of the current token. /// public void Skip() { if (TokenType == JsonToken.PropertyName) Read(); if (JsonTokenUtils.IsStartToken(TokenType)) { int depth = Depth; while (Read() && (depth < Depth)) { } } } /// /// Sets the current token. /// /// The new token. protected void SetToken(JsonToken newToken) { SetToken(newToken, null, true); } /// /// Sets the current token and value. /// /// The new token. /// The value. protected void SetToken(JsonToken newToken, object value) { SetToken(newToken, value, true); } internal void SetToken(JsonToken newToken, object value, bool updateIndex) { _tokenType = newToken; _value = value; switch (newToken) { case JsonToken.StartObject: _currentState = State.ObjectStart; Push(JsonContainerType.Object); break; case JsonToken.StartArray: _currentState = State.ArrayStart; Push(JsonContainerType.Array); break; case JsonToken.StartConstructor: _currentState = State.ConstructorStart; Push(JsonContainerType.Constructor); break; case JsonToken.EndObject: ValidateEnd(JsonToken.EndObject); break; case JsonToken.EndArray: ValidateEnd(JsonToken.EndArray); break; case JsonToken.EndConstructor: ValidateEnd(JsonToken.EndConstructor); break; case JsonToken.PropertyName: _currentState = State.Property; _currentPosition.PropertyName = (string)value; break; case JsonToken.Undefined: case JsonToken.Integer: case JsonToken.Float: case JsonToken.Boolean: case JsonToken.Null: case JsonToken.Date: case JsonToken.String: case JsonToken.Raw: case JsonToken.Bytes: SetPostValueState(updateIndex); break; } } internal void SetPostValueState(bool updateIndex) { if (Peek() != JsonContainerType.None) _currentState = State.PostValue; else SetFinished(); if (updateIndex) UpdateScopeWithFinishedValue(); } private void UpdateScopeWithFinishedValue() { if (_currentPosition.HasIndex) _currentPosition.Position++; } private void ValidateEnd(JsonToken endToken) { JsonContainerType currentObject = Pop(); if (GetTypeForCloseToken(endToken) != currentObject) throw JsonReaderException.Create(this, "JsonToken {0} is not valid for closing JsonType {1}.".FormatWith(CultureInfo.InvariantCulture, endToken, currentObject)); if (Peek() != JsonContainerType.None) _currentState = State.PostValue; else SetFinished(); } /// /// Sets the state based on current token type. /// protected void SetStateBasedOnCurrent() { JsonContainerType currentObject = Peek(); switch (currentObject) { case JsonContainerType.Object: _currentState = State.Object; break; case JsonContainerType.Array: _currentState = State.Array; break; case JsonContainerType.Constructor: _currentState = State.Constructor; break; case JsonContainerType.None: SetFinished(); break; default: throw JsonReaderException.Create(this, "While setting the reader state back to current object an unexpected JsonType was encountered: {0}".FormatWith(CultureInfo.InvariantCulture, currentObject)); } } private void SetFinished() { if (SupportMultipleContent) _currentState = State.Start; else _currentState = State.Finished; } private JsonContainerType GetTypeForCloseToken(JsonToken token) { switch (token) { case JsonToken.EndObject: return JsonContainerType.Object; case JsonToken.EndArray: return JsonContainerType.Array; case JsonToken.EndConstructor: return JsonContainerType.Constructor; default: throw JsonReaderException.Create(this, "Not a valid close JsonToken: {0}".FormatWith(CultureInfo.InvariantCulture, token)); } } /// /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. /// void IDisposable.Dispose() { Dispose(true); } /// /// Releases unmanaged and - optionally - managed resources /// /// true to release both managed and unmanaged resources; false to release only unmanaged resources. protected virtual void Dispose(bool disposing) { if (_currentState != State.Closed && disposing) Close(); } /// /// Changes the to Closed. /// public virtual void Close() { _currentState = State.Closed; _tokenType = JsonToken.None; _value = null; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonPosition.cs0000664000175000017500000001007412454416117024225 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.Text; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json { internal enum JsonContainerType { None = 0, Object = 1, Array = 2, Constructor = 3 } internal struct JsonPosition { private static readonly char[] SpecialCharacters = {'.', ' ', '[', ']', '(', ')'}; internal JsonContainerType Type; internal int Position; internal string PropertyName; internal bool HasIndex; public JsonPosition(JsonContainerType type) { Type = type; HasIndex = TypeHasIndex(type); Position = -1; PropertyName = null; } internal void WriteTo(StringBuilder sb) { switch (Type) { case JsonContainerType.Object: if (sb.Length > 0) sb.Append('.'); string propertyName = PropertyName; if (propertyName.IndexOfAny(SpecialCharacters) != -1) { sb.Append(@"['"); sb.Append(propertyName); sb.Append(@"']"); } else { sb.Append(propertyName); } break; case JsonContainerType.Array: case JsonContainerType.Constructor: sb.Append('['); sb.Append(Position); sb.Append(']'); break; } } internal static bool TypeHasIndex(JsonContainerType type) { return (type == JsonContainerType.Array || type == JsonContainerType.Constructor); } internal static string BuildPath(IEnumerable positions) { StringBuilder sb = new StringBuilder(); foreach (JsonPosition state in positions) { state.WriteTo(sb); } return sb.ToString(); } internal static string FormatMessage(IJsonLineInfo lineInfo, string path, string message) { // don't add a fullstop and space when message ends with a new line if (!message.EndsWith(Environment.NewLine, StringComparison.Ordinal)) { message = message.Trim(); if (!message.EndsWith('.')) message += "."; message += " "; } message += "Path '{0}'".FormatWith(CultureInfo.InvariantCulture, path); if (lineInfo != null && lineInfo.HasLineInfo()) message += ", line {0}, position {1}".FormatWith(CultureInfo.InvariantCulture, lineInfo.LineNumber, lineInfo.LinePosition); message += "."; return message; } } } newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonConverter.cs0000664000175000017500000000742112454416117024372 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Schema; namespace Newtonsoft.Json { /// /// Converts an object to and from JSON. /// public abstract class JsonConverter { /// /// Writes the JSON representation of the object. /// /// The to write to. /// The value. /// The calling serializer. public abstract void WriteJson(JsonWriter writer, object value, JsonSerializer serializer); /// /// Reads the JSON representation of the object. /// /// The to read from. /// Type of the object. /// The existing value of object being read. /// The calling serializer. /// The object value. public abstract object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer); /// /// Determines whether this instance can convert the specified object type. /// /// Type of the object. /// /// true if this instance can convert the specified object type; otherwise, false. /// public abstract bool CanConvert(Type objectType); /// /// Gets the of the JSON produced by the JsonConverter. /// /// The of the JSON produced by the JsonConverter. public virtual JsonSchema GetSchema() { return null; } /// /// Gets a value indicating whether this can read JSON. /// /// true if this can read JSON; otherwise, false. public virtual bool CanRead { get { return true; } } /// /// Gets a value indicating whether this can write JSON. /// /// true if this can write JSON; otherwise, false. public virtual bool CanWrite { get { return true; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonToken.cs0000664000175000017500000000620112454416117023476 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; namespace Newtonsoft.Json { /// /// Specifies the type of Json token. /// public enum JsonToken { /// /// This is returned by the if a method has not been called. /// None = 0, /// /// An object start token. /// StartObject = 1, /// /// An array start token. /// StartArray = 2, /// /// A constructor start token. /// StartConstructor = 3, /// /// An object property name. /// PropertyName = 4, /// /// A comment. /// Comment = 5, /// /// Raw JSON. /// Raw = 6, /// /// An integer. /// Integer = 7, /// /// A float. /// Float = 8, /// /// A string. /// String = 9, /// /// A boolean. /// Boolean = 10, /// /// A null token. /// Null = 11, /// /// An undefined token. /// Undefined = 12, /// /// An object end token. /// EndObject = 13, /// /// An array end token. /// EndArray = 14, /// /// A constructor end token. /// EndConstructor = 15, /// /// A Date. /// Date = 16, /// /// Byte data. /// Bytes = 17 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/Dynamic.snk0000664000175000017500000000112412454416117023335 0ustar directhexdirecthex$RSA2;}x6F,TnzV8v3̼{Zjv] 3ƍgE0"!JJI UOˠIkN򅓰ʵ}r?gОݤ`?* .D8L$de4kBz T&M:=w؞|㹎:'$Bev#c H:FQMs_GxpjMLJETAMVdnn؅'㻢a$xy|{2k\F,ڧzwo|JЩ/( %N7sj_JTkB.ջ:7mFiGb7 =QB`SO*t{/=j3F[TVzJ|HZIf3RXnڣy$`&+}AʃGФULo 0y>]b@OhG{3lįsG)ePՆC乑q`"Oh{l)J /// Specifies null value handling options for the . /// /// /// /// /// public enum NullValueHandling { /// /// Include null values when serializing and deserializing objects. /// Include = 0, /// /// Ignore null values when serializing and deserializing objects. /// Ignore = 1 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonSerializer.cs0000664000175000017500000012421312454416117024533 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Diagnostics; using System.Globalization; using System.IO; using System.Runtime.Serialization.Formatters; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Utilities; using System.Runtime.Serialization; using ErrorEventArgs = Newtonsoft.Json.Serialization.ErrorEventArgs; namespace Newtonsoft.Json { /// /// Serializes and deserializes objects into and from the JSON format. /// The enables you to control how objects are encoded into JSON. /// public class JsonSerializer { internal TypeNameHandling _typeNameHandling; internal FormatterAssemblyStyle _typeNameAssemblyFormat; internal PreserveReferencesHandling _preserveReferencesHandling; internal ReferenceLoopHandling _referenceLoopHandling; internal MissingMemberHandling _missingMemberHandling; internal ObjectCreationHandling _objectCreationHandling; internal NullValueHandling _nullValueHandling; internal DefaultValueHandling _defaultValueHandling; internal ConstructorHandling _constructorHandling; internal MetadataPropertyHandling _metadataPropertyHandling; internal JsonConverterCollection _converters; internal IContractResolver _contractResolver; internal ITraceWriter _traceWriter; internal SerializationBinder _binder; internal StreamingContext _context; private IReferenceResolver _referenceResolver; private Formatting? _formatting; private DateFormatHandling? _dateFormatHandling; private DateTimeZoneHandling? _dateTimeZoneHandling; private DateParseHandling? _dateParseHandling; private FloatFormatHandling? _floatFormatHandling; private FloatParseHandling? _floatParseHandling; private StringEscapeHandling? _stringEscapeHandling; private CultureInfo _culture; private int? _maxDepth; private bool _maxDepthSet; private bool? _checkAdditionalContent; private string _dateFormatString; private bool _dateFormatStringSet; /// /// Occurs when the errors during serialization and deserialization. /// public virtual event EventHandler Error; /// /// Gets or sets the used by the serializer when resolving references. /// public virtual IReferenceResolver ReferenceResolver { get { return GetReferenceResolver(); } set { if (value == null) throw new ArgumentNullException("value", "Reference resolver cannot be null."); _referenceResolver = value; } } /// /// Gets or sets the used by the serializer when resolving type names. /// public virtual SerializationBinder Binder { get { return _binder; } set { if (value == null) throw new ArgumentNullException("value", "Serialization binder cannot be null."); _binder = value; } } /// /// Gets or sets the used by the serializer when writing trace messages. /// /// The trace writer. public virtual ITraceWriter TraceWriter { get { return _traceWriter; } set { _traceWriter = value; } } /// /// Gets or sets how type name writing and reading is handled by the serializer. /// public virtual TypeNameHandling TypeNameHandling { get { return _typeNameHandling; } set { if (value < TypeNameHandling.None || value > TypeNameHandling.Auto) throw new ArgumentOutOfRangeException("value"); _typeNameHandling = value; } } /// /// Gets or sets how a type name assembly is written and resolved by the serializer. /// /// The type name assembly format. public virtual FormatterAssemblyStyle TypeNameAssemblyFormat { get { return _typeNameAssemblyFormat; } set { if (value < FormatterAssemblyStyle.Simple || value > FormatterAssemblyStyle.Full) throw new ArgumentOutOfRangeException("value"); _typeNameAssemblyFormat = value; } } /// /// Gets or sets how object references are preserved by the serializer. /// public virtual PreserveReferencesHandling PreserveReferencesHandling { get { return _preserveReferencesHandling; } set { if (value < PreserveReferencesHandling.None || value > PreserveReferencesHandling.All) throw new ArgumentOutOfRangeException("value"); _preserveReferencesHandling = value; } } /// /// Get or set how reference loops (e.g. a class referencing itself) is handled. /// public virtual ReferenceLoopHandling ReferenceLoopHandling { get { return _referenceLoopHandling; } set { if (value < ReferenceLoopHandling.Error || value > ReferenceLoopHandling.Serialize) throw new ArgumentOutOfRangeException("value"); _referenceLoopHandling = value; } } /// /// Get or set how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. /// public virtual MissingMemberHandling MissingMemberHandling { get { return _missingMemberHandling; } set { if (value < MissingMemberHandling.Ignore || value > MissingMemberHandling.Error) throw new ArgumentOutOfRangeException("value"); _missingMemberHandling = value; } } /// /// Get or set how null values are handled during serialization and deserialization. /// public virtual NullValueHandling NullValueHandling { get { return _nullValueHandling; } set { if (value < NullValueHandling.Include || value > NullValueHandling.Ignore) throw new ArgumentOutOfRangeException("value"); _nullValueHandling = value; } } /// /// Get or set how null default are handled during serialization and deserialization. /// public virtual DefaultValueHandling DefaultValueHandling { get { return _defaultValueHandling; } set { if (value < DefaultValueHandling.Include || value > DefaultValueHandling.IgnoreAndPopulate) throw new ArgumentOutOfRangeException("value"); _defaultValueHandling = value; } } /// /// Gets or sets how objects are created during deserialization. /// /// The object creation handling. public virtual ObjectCreationHandling ObjectCreationHandling { get { return _objectCreationHandling; } set { if (value < ObjectCreationHandling.Auto || value > ObjectCreationHandling.Replace) throw new ArgumentOutOfRangeException("value"); _objectCreationHandling = value; } } /// /// Gets or sets how constructors are used during deserialization. /// /// The constructor handling. public virtual ConstructorHandling ConstructorHandling { get { return _constructorHandling; } set { if (value < ConstructorHandling.Default || value > ConstructorHandling.AllowNonPublicDefaultConstructor) throw new ArgumentOutOfRangeException("value"); _constructorHandling = value; } } /// /// Gets or sets how metadata properties are used during deserialization. /// /// The metadata properties handling. public virtual MetadataPropertyHandling MetadataPropertyHandling { get { return _metadataPropertyHandling; } set { if (value < MetadataPropertyHandling.Default || value > MetadataPropertyHandling.Ignore) throw new ArgumentOutOfRangeException("value"); _metadataPropertyHandling = value; } } /// /// Gets a collection that will be used during serialization. /// /// Collection that will be used during serialization. public virtual JsonConverterCollection Converters { get { if (_converters == null) _converters = new JsonConverterCollection(); return _converters; } } /// /// Gets or sets the contract resolver used by the serializer when /// serializing .NET objects to JSON and vice versa. /// public virtual IContractResolver ContractResolver { get { return _contractResolver; } set { _contractResolver = value ?? DefaultContractResolver.Instance; } } /// /// Gets or sets the used by the serializer when invoking serialization callback methods. /// /// The context. public virtual StreamingContext Context { get { return _context; } set { _context = value; } } /// /// Indicates how JSON text output is formatted. /// public virtual Formatting Formatting { get { return _formatting ?? JsonSerializerSettings.DefaultFormatting; } set { _formatting = value; } } /// /// Get or set how dates are written to JSON text. /// public virtual DateFormatHandling DateFormatHandling { get { return _dateFormatHandling ?? JsonSerializerSettings.DefaultDateFormatHandling; } set { _dateFormatHandling = value; } } /// /// Get or set how time zones are handling during serialization and deserialization. /// public virtual DateTimeZoneHandling DateTimeZoneHandling { get { return _dateTimeZoneHandling ?? JsonSerializerSettings.DefaultDateTimeZoneHandling; } set { _dateTimeZoneHandling = value; } } /// /// Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. /// public virtual DateParseHandling DateParseHandling { get { return _dateParseHandling ?? JsonSerializerSettings.DefaultDateParseHandling; } set { _dateParseHandling = value; } } /// /// Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. /// public virtual FloatParseHandling FloatParseHandling { get { return _floatParseHandling ?? JsonSerializerSettings.DefaultFloatParseHandling; } set { _floatParseHandling = value; } } /// /// Get or set how special floating point numbers, e.g. , /// and , /// are written as JSON text. /// public virtual FloatFormatHandling FloatFormatHandling { get { return _floatFormatHandling ?? JsonSerializerSettings.DefaultFloatFormatHandling; } set { _floatFormatHandling = value; } } /// /// Get or set how strings are escaped when writing JSON text. /// public virtual StringEscapeHandling StringEscapeHandling { get { return _stringEscapeHandling ?? JsonSerializerSettings.DefaultStringEscapeHandling; } set { _stringEscapeHandling = value; } } /// /// Get or set how and values are formatting when writing JSON text. /// public virtual string DateFormatString { get { return _dateFormatString ?? JsonSerializerSettings.DefaultDateFormatString; } set { _dateFormatString = value; _dateFormatStringSet = true; } } /// /// Gets or sets the culture used when reading JSON. Defaults to . /// public virtual CultureInfo Culture { get { return _culture ?? JsonSerializerSettings.DefaultCulture; } set { _culture = value; } } /// /// Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . /// public virtual int? MaxDepth { get { return _maxDepth; } set { if (value <= 0) throw new ArgumentException("Value must be positive.", "value"); _maxDepth = value; _maxDepthSet = true; } } /// /// Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. /// /// /// true if there will be a check for additional JSON content after deserializing an object; otherwise, false. /// public virtual bool CheckAdditionalContent { get { return _checkAdditionalContent ?? JsonSerializerSettings.DefaultCheckAdditionalContent; } set { _checkAdditionalContent = value; } } internal bool IsCheckAdditionalContentSet() { return (_checkAdditionalContent != null); } /// /// Initializes a new instance of the class. /// public JsonSerializer() { _referenceLoopHandling = JsonSerializerSettings.DefaultReferenceLoopHandling; _missingMemberHandling = JsonSerializerSettings.DefaultMissingMemberHandling; _nullValueHandling = JsonSerializerSettings.DefaultNullValueHandling; _defaultValueHandling = JsonSerializerSettings.DefaultDefaultValueHandling; _objectCreationHandling = JsonSerializerSettings.DefaultObjectCreationHandling; _preserveReferencesHandling = JsonSerializerSettings.DefaultPreserveReferencesHandling; _constructorHandling = JsonSerializerSettings.DefaultConstructorHandling; _typeNameHandling = JsonSerializerSettings.DefaultTypeNameHandling; _metadataPropertyHandling = JsonSerializerSettings.DefaultMetadataPropertyHandling; _context = JsonSerializerSettings.DefaultContext; _binder = DefaultSerializationBinder.Instance; _culture = JsonSerializerSettings.DefaultCulture; _contractResolver = DefaultContractResolver.Instance; } /// /// Creates a new instance. /// The will not use default settings. /// /// /// A new instance. /// The will not use default settings. /// public static JsonSerializer Create() { return new JsonSerializer(); } /// /// Creates a new instance using the specified . /// The will not use default settings. /// /// The settings to be applied to the . /// /// A new instance using the specified . /// The will not use default settings. /// public static JsonSerializer Create(JsonSerializerSettings settings) { JsonSerializer serializer = Create(); if (settings != null) ApplySerializerSettings(serializer, settings); return serializer; } /// /// Creates a new instance. /// The will use default settings. /// /// /// A new instance. /// The will use default settings. /// public static JsonSerializer CreateDefault() { // copy static to local variable to avoid concurrency issues Func defaultSettingsCreator = JsonConvert.DefaultSettings; JsonSerializerSettings defaultSettings = (defaultSettingsCreator != null) ? defaultSettingsCreator() : null; return Create(defaultSettings); } /// /// Creates a new instance using the specified . /// The will use default settings. /// /// The settings to be applied to the . /// /// A new instance using the specified . /// The will use default settings. /// public static JsonSerializer CreateDefault(JsonSerializerSettings settings) { JsonSerializer serializer = CreateDefault(); if (settings != null) ApplySerializerSettings(serializer, settings); return serializer; } private static void ApplySerializerSettings(JsonSerializer serializer, JsonSerializerSettings settings) { if (!CollectionUtils.IsNullOrEmpty(settings.Converters)) { // insert settings converters at the beginning so they take precedence // if user wants to remove one of the default converters they will have to do it manually for (int i = 0; i < settings.Converters.Count; i++) { serializer.Converters.Insert(i, settings.Converters[i]); } } // serializer specific if (settings._typeNameHandling != null) serializer.TypeNameHandling = settings.TypeNameHandling; if (settings._metadataPropertyHandling != null) serializer.MetadataPropertyHandling = settings.MetadataPropertyHandling; if (settings._typeNameAssemblyFormat != null) serializer.TypeNameAssemblyFormat = settings.TypeNameAssemblyFormat; if (settings._preserveReferencesHandling != null) serializer.PreserveReferencesHandling = settings.PreserveReferencesHandling; if (settings._referenceLoopHandling != null) serializer.ReferenceLoopHandling = settings.ReferenceLoopHandling; if (settings._missingMemberHandling != null) serializer.MissingMemberHandling = settings.MissingMemberHandling; if (settings._objectCreationHandling != null) serializer.ObjectCreationHandling = settings.ObjectCreationHandling; if (settings._nullValueHandling != null) serializer.NullValueHandling = settings.NullValueHandling; if (settings._defaultValueHandling != null) serializer.DefaultValueHandling = settings.DefaultValueHandling; if (settings._constructorHandling != null) serializer.ConstructorHandling = settings.ConstructorHandling; if (settings._context != null) serializer.Context = settings.Context; if (settings._checkAdditionalContent != null) serializer._checkAdditionalContent = settings._checkAdditionalContent; if (settings.Error != null) serializer.Error += settings.Error; if (settings.ContractResolver != null) serializer.ContractResolver = settings.ContractResolver; if (settings.ReferenceResolver != null) serializer.ReferenceResolver = settings.ReferenceResolver; if (settings.TraceWriter != null) serializer.TraceWriter = settings.TraceWriter; if (settings.Binder != null) serializer.Binder = settings.Binder; // reader/writer specific // unset values won't override reader/writer set values if (settings._formatting != null) serializer._formatting = settings._formatting; if (settings._dateFormatHandling != null) serializer._dateFormatHandling = settings._dateFormatHandling; if (settings._dateTimeZoneHandling != null) serializer._dateTimeZoneHandling = settings._dateTimeZoneHandling; if (settings._dateParseHandling != null) serializer._dateParseHandling = settings._dateParseHandling; if (settings._dateFormatStringSet) { serializer._dateFormatString = settings._dateFormatString; serializer._dateFormatStringSet = settings._dateFormatStringSet; } if (settings._floatFormatHandling != null) serializer._floatFormatHandling = settings._floatFormatHandling; if (settings._floatParseHandling != null) serializer._floatParseHandling = settings._floatParseHandling; if (settings._stringEscapeHandling != null) serializer._stringEscapeHandling = settings._stringEscapeHandling; if (settings._culture != null) serializer._culture = settings._culture; if (settings._maxDepthSet) { serializer._maxDepth = settings._maxDepth; serializer._maxDepthSet = settings._maxDepthSet; } } /// /// Populates the JSON values onto the target object. /// /// The that contains the JSON structure to reader values from. /// The target object to populate values onto. public void Populate(TextReader reader, object target) { Populate(new JsonTextReader(reader), target); } /// /// Populates the JSON values onto the target object. /// /// The that contains the JSON structure to reader values from. /// The target object to populate values onto. public void Populate(JsonReader reader, object target) { PopulateInternal(reader, target); } internal virtual void PopulateInternal(JsonReader reader, object target) { ValidationUtils.ArgumentNotNull(reader, "reader"); ValidationUtils.ArgumentNotNull(target, "target"); // set serialization options onto reader CultureInfo previousCulture; DateTimeZoneHandling? previousDateTimeZoneHandling; DateParseHandling? previousDateParseHandling; FloatParseHandling? previousFloatParseHandling; int? previousMaxDepth; string previousDateFormatString; SetupReader(reader, out previousCulture, out previousDateTimeZoneHandling, out previousDateParseHandling, out previousFloatParseHandling, out previousMaxDepth, out previousDateFormatString); TraceJsonReader traceJsonReader = (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) ? new TraceJsonReader(reader) : null; JsonSerializerInternalReader serializerReader = new JsonSerializerInternalReader(this); serializerReader.Populate(traceJsonReader ?? reader, target); if (traceJsonReader != null) TraceWriter.Trace(TraceLevel.Verbose, "Deserialized JSON: " + Environment.NewLine + traceJsonReader.GetJson(), null); ResetReader(reader, previousCulture, previousDateTimeZoneHandling, previousDateParseHandling, previousFloatParseHandling, previousMaxDepth, previousDateFormatString); } /// /// Deserializes the Json structure contained by the specified . /// /// The that contains the JSON structure to deserialize. /// The being deserialized. public object Deserialize(JsonReader reader) { return Deserialize(reader, null); } /// /// Deserializes the Json structure contained by the specified /// into an instance of the specified type. /// /// The containing the object. /// The of object being deserialized. /// The instance of being deserialized. public object Deserialize(TextReader reader, Type objectType) { return Deserialize(new JsonTextReader(reader), objectType); } /// /// Deserializes the Json structure contained by the specified /// into an instance of the specified type. /// /// The containing the object. /// The type of the object to deserialize. /// The instance of being deserialized. public T Deserialize(JsonReader reader) { return (T)Deserialize(reader, typeof(T)); } /// /// Deserializes the Json structure contained by the specified /// into an instance of the specified type. /// /// The containing the object. /// The of object being deserialized. /// The instance of being deserialized. public object Deserialize(JsonReader reader, Type objectType) { return DeserializeInternal(reader, objectType); } internal virtual object DeserializeInternal(JsonReader reader, Type objectType) { ValidationUtils.ArgumentNotNull(reader, "reader"); // set serialization options onto reader CultureInfo previousCulture; DateTimeZoneHandling? previousDateTimeZoneHandling; DateParseHandling? previousDateParseHandling; FloatParseHandling? previousFloatParseHandling; int? previousMaxDepth; string previousDateFormatString; SetupReader(reader, out previousCulture, out previousDateTimeZoneHandling, out previousDateParseHandling, out previousFloatParseHandling, out previousMaxDepth, out previousDateFormatString); TraceJsonReader traceJsonReader = (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) ? new TraceJsonReader(reader) : null; JsonSerializerInternalReader serializerReader = new JsonSerializerInternalReader(this); object value = serializerReader.Deserialize(traceJsonReader ?? reader, objectType, CheckAdditionalContent); if (traceJsonReader != null) TraceWriter.Trace(TraceLevel.Verbose, "Deserialized JSON: " + Environment.NewLine + traceJsonReader.GetJson(), null); ResetReader(reader, previousCulture, previousDateTimeZoneHandling, previousDateParseHandling, previousFloatParseHandling, previousMaxDepth, previousDateFormatString); return value; } private void SetupReader(JsonReader reader, out CultureInfo previousCulture, out DateTimeZoneHandling? previousDateTimeZoneHandling, out DateParseHandling? previousDateParseHandling, out FloatParseHandling? previousFloatParseHandling, out int? previousMaxDepth, out string previousDateFormatString) { if (_culture != null && !_culture.Equals(reader.Culture)) { previousCulture = reader.Culture; reader.Culture = _culture; } else { previousCulture = null; } if (_dateTimeZoneHandling != null && reader.DateTimeZoneHandling != _dateTimeZoneHandling) { previousDateTimeZoneHandling = reader.DateTimeZoneHandling; reader.DateTimeZoneHandling = _dateTimeZoneHandling.Value; } else { previousDateTimeZoneHandling = null; } if (_dateParseHandling != null && reader.DateParseHandling != _dateParseHandling) { previousDateParseHandling = reader.DateParseHandling; reader.DateParseHandling = _dateParseHandling.Value; } else { previousDateParseHandling = null; } if (_floatParseHandling != null && reader.FloatParseHandling != _floatParseHandling) { previousFloatParseHandling = reader.FloatParseHandling; reader.FloatParseHandling = _floatParseHandling.Value; } else { previousFloatParseHandling = null; } if (_maxDepthSet && reader.MaxDepth != _maxDepth) { previousMaxDepth = reader.MaxDepth; reader.MaxDepth = _maxDepth; } else { previousMaxDepth = null; } if (_dateFormatStringSet && reader.DateFormatString != _dateFormatString) { previousDateFormatString = reader.DateFormatString; reader.DateFormatString = _dateFormatString; } else { previousDateFormatString = null; } JsonTextReader textReader = reader as JsonTextReader; if (textReader != null) { DefaultContractResolver resolver = _contractResolver as DefaultContractResolver; if (resolver != null) textReader.NameTable = resolver.GetState().NameTable; } } private void ResetReader(JsonReader reader, CultureInfo previousCulture, DateTimeZoneHandling? previousDateTimeZoneHandling, DateParseHandling? previousDateParseHandling, FloatParseHandling? previousFloatParseHandling, int? previousMaxDepth, string previousDateFormatString) { // reset reader back to previous options if (previousCulture != null) reader.Culture = previousCulture; if (previousDateTimeZoneHandling != null) reader.DateTimeZoneHandling = previousDateTimeZoneHandling.Value; if (previousDateParseHandling != null) reader.DateParseHandling = previousDateParseHandling.Value; if (previousFloatParseHandling != null) reader.FloatParseHandling = previousFloatParseHandling.Value; if (_maxDepthSet) reader.MaxDepth = previousMaxDepth; if (_dateFormatStringSet) reader.DateFormatString = previousDateFormatString; JsonTextReader textReader = reader as JsonTextReader; if (textReader != null) textReader.NameTable = null; } /// /// Serializes the specified and writes the Json structure /// to a Stream using the specified . /// /// The used to write the Json structure. /// The to serialize. public void Serialize(TextWriter textWriter, object value) { Serialize(new JsonTextWriter(textWriter), value); } /// /// Serializes the specified and writes the Json structure /// to a Stream using the specified . /// /// The used to write the Json structure. /// The to serialize. /// /// The type of the value being serialized. /// This parameter is used when is Auto to write out the type name if the type of the value does not match. /// Specifing the type is optional. /// public void Serialize(JsonWriter jsonWriter, object value, Type objectType) { SerializeInternal(jsonWriter, value, objectType); } /// /// Serializes the specified and writes the Json structure /// to a Stream using the specified . /// /// The used to write the Json structure. /// The to serialize. /// /// The type of the value being serialized. /// This parameter is used when is Auto to write out the type name if the type of the value does not match. /// Specifing the type is optional. /// public void Serialize(TextWriter textWriter, object value, Type objectType) { Serialize(new JsonTextWriter(textWriter), value, objectType); } /// /// Serializes the specified and writes the Json structure /// to a Stream using the specified . /// /// The used to write the Json structure. /// The to serialize. public void Serialize(JsonWriter jsonWriter, object value) { SerializeInternal(jsonWriter, value, null); } internal virtual void SerializeInternal(JsonWriter jsonWriter, object value, Type objectType) { ValidationUtils.ArgumentNotNull(jsonWriter, "jsonWriter"); // set serialization options onto writer Formatting? previousFormatting = null; if (_formatting != null && jsonWriter.Formatting != _formatting) { previousFormatting = jsonWriter.Formatting; jsonWriter.Formatting = _formatting.Value; } DateFormatHandling? previousDateFormatHandling = null; if (_dateFormatHandling != null && jsonWriter.DateFormatHandling != _dateFormatHandling) { previousDateFormatHandling = jsonWriter.DateFormatHandling; jsonWriter.DateFormatHandling = _dateFormatHandling.Value; } DateTimeZoneHandling? previousDateTimeZoneHandling = null; if (_dateTimeZoneHandling != null && jsonWriter.DateTimeZoneHandling != _dateTimeZoneHandling) { previousDateTimeZoneHandling = jsonWriter.DateTimeZoneHandling; jsonWriter.DateTimeZoneHandling = _dateTimeZoneHandling.Value; } FloatFormatHandling? previousFloatFormatHandling = null; if (_floatFormatHandling != null && jsonWriter.FloatFormatHandling != _floatFormatHandling) { previousFloatFormatHandling = jsonWriter.FloatFormatHandling; jsonWriter.FloatFormatHandling = _floatFormatHandling.Value; } StringEscapeHandling? previousStringEscapeHandling = null; if (_stringEscapeHandling != null && jsonWriter.StringEscapeHandling != _stringEscapeHandling) { previousStringEscapeHandling = jsonWriter.StringEscapeHandling; jsonWriter.StringEscapeHandling = _stringEscapeHandling.Value; } CultureInfo previousCulture = null; if (_culture != null && !_culture.Equals(jsonWriter.Culture)) { previousCulture = jsonWriter.Culture; jsonWriter.Culture = _culture; } string previousDateFormatString = null; if (_dateFormatStringSet && jsonWriter.DateFormatString != _dateFormatString) { previousDateFormatString = jsonWriter.DateFormatString; jsonWriter.DateFormatString = _dateFormatString; } TraceJsonWriter traceJsonWriter = (TraceWriter != null && TraceWriter.LevelFilter >= TraceLevel.Verbose) ? new TraceJsonWriter(jsonWriter) : null; JsonSerializerInternalWriter serializerWriter = new JsonSerializerInternalWriter(this); serializerWriter.Serialize(traceJsonWriter ?? jsonWriter, value, objectType); if (traceJsonWriter != null) TraceWriter.Trace(TraceLevel.Verbose, "Serialized JSON: " + Environment.NewLine + traceJsonWriter.GetJson(), null); // reset writer back to previous options if (previousFormatting != null) jsonWriter.Formatting = previousFormatting.Value; if (previousDateFormatHandling != null) jsonWriter.DateFormatHandling = previousDateFormatHandling.Value; if (previousDateTimeZoneHandling != null) jsonWriter.DateTimeZoneHandling = previousDateTimeZoneHandling.Value; if (previousFloatFormatHandling != null) jsonWriter.FloatFormatHandling = previousFloatFormatHandling.Value; if (previousStringEscapeHandling != null) jsonWriter.StringEscapeHandling = previousStringEscapeHandling.Value; if (_dateFormatStringSet) jsonWriter.DateFormatString = previousDateFormatString; if (previousCulture != null) jsonWriter.Culture = previousCulture; } internal IReferenceResolver GetReferenceResolver() { if (_referenceResolver == null) _referenceResolver = new DefaultReferenceResolver(); return _referenceResolver; } internal JsonConverter GetMatchingConverter(Type type) { return GetMatchingConverter(_converters, type); } internal static JsonConverter GetMatchingConverter(IList converters, Type objectType) { #if DEBUG ValidationUtils.ArgumentNotNull(objectType, "objectType"); #endif if (converters != null) { for (int i = 0; i < converters.Count; i++) { JsonConverter converter = converters[i]; if (converter.CanConvert(objectType)) return converter; } } return null; } internal void OnError(ErrorEventArgs e) { EventHandler error = Error; if (error != null) error(this, e); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/FloatParseHandling.cs0000664000175000017500000000315112454416117025272 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json { /// /// Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. /// public enum FloatParseHandling { /// /// Floating point numbers are parsed to . /// Double = 0, /// /// Floating point numbers are parsed to . /// Decimal = 1 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json/JsonWriterException.cs0000664000175000017500000001100212454416117025544 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Runtime.Serialization; using System.Text; namespace Newtonsoft.Json { /// /// The exception thrown when an error occurs while reading Json text. /// #if !(NETFX_CORE || PORTABLE40 || PORTABLE) [Serializable] #endif public class JsonWriterException : JsonException { /// /// Gets the path to the JSON where the error occurred. /// /// The path to the JSON where the error occurred. public string Path { get; private set; } /// /// Initializes a new instance of the class. /// public JsonWriterException() { } /// /// Initializes a new instance of the class /// with a specified error message. /// /// The error message that explains the reason for the exception. public JsonWriterException(string message) : base(message) { } /// /// Initializes a new instance of the class /// with a specified error message and a reference to the inner exception that is the cause of this exception. /// /// The error message that explains the reason for the exception. /// The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. public JsonWriterException(string message, Exception innerException) : base(message, innerException) { } #if !(NETFX_CORE || PORTABLE40 || PORTABLE) /// /// Initializes a new instance of the class. /// /// The that holds the serialized object data about the exception being thrown. /// The that contains contextual information about the source or destination. /// The parameter is null. /// The class name is null or is zero (0). public JsonWriterException(SerializationInfo info, StreamingContext context) : base(info, context) { } #endif internal JsonWriterException(string message, Exception innerException, string path) : base(message, innerException) { Path = path; } internal static JsonWriterException Create(JsonWriter writer, string message, Exception ex) { return Create(writer.ContainerPath, message, ex); } internal static JsonWriterException Create(string path, string message, Exception ex) { message = JsonPosition.FormatMessage(null, path, message); return new JsonWriterException(message, ex, path); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.sln.DotSettings0000664000175000017500000000163312454416117024225 0ustar directhexdirecthex False True False True newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Portable.sln0000664000175000017500000000303712454416117023526 0ustar directhexdirecthex Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 VisualStudioVersion = 12.0.31101.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Portable", "Newtonsoft.Json\Newtonsoft.Json.Portable.csproj", "{959F7F85-C98B-4876-971A-9036224578E4}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Tests.Portable", "Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.Portable.csproj", "{3E6E2335-B079-4B5B-A65A-9D586914BCBB}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {959F7F85-C98B-4876-971A-9036224578E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {959F7F85-C98B-4876-971A-9036224578E4}.Debug|Any CPU.Build.0 = Debug|Any CPU {959F7F85-C98B-4876-971A-9036224578E4}.Release|Any CPU.ActiveCfg = Release|Any CPU {959F7F85-C98B-4876-971A-9036224578E4}.Release|Any CPU.Build.0 = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.Build.0 = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.ActiveCfg = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal newtonsoft-json-6.0.8/Src/NuGet.Config0000664000175000017500000000030612454416117020330 0ustar directhexdirecthex newtonsoft-json-6.0.8/Src/Newtonsoft.Json.WinRT.sln0000664000175000017500000000777212454416117022773 0ustar directhexdirecthex Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 VisualStudioVersion = 12.0.30324.0 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.WinRT", "Newtonsoft.Json\Newtonsoft.Json.WinRT.csproj", "{263136A2-B89B-424E-A87A-F988CAA8D032}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Tests.WinRT", "Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.WinRT.csproj", "{8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|ARM = Debug|ARM Debug|Any CPU = Debug|Any CPU Debug|x64 = Debug|x64 Debug|x86 = Debug|x86 Release|ARM = Release|ARM Release|Any CPU = Release|Any CPU Release|x64 = Release|x64 Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {263136A2-B89B-424E-A87A-F988CAA8D032}.Debug|ARM.ActiveCfg = Debug|ARM {263136A2-B89B-424E-A87A-F988CAA8D032}.Debug|ARM.Build.0 = Debug|ARM {263136A2-B89B-424E-A87A-F988CAA8D032}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {263136A2-B89B-424E-A87A-F988CAA8D032}.Debug|Any CPU.Build.0 = Debug|Any CPU {263136A2-B89B-424E-A87A-F988CAA8D032}.Debug|x64.ActiveCfg = Debug|x64 {263136A2-B89B-424E-A87A-F988CAA8D032}.Debug|x64.Build.0 = Debug|x64 {263136A2-B89B-424E-A87A-F988CAA8D032}.Debug|x86.ActiveCfg = Debug|x86 {263136A2-B89B-424E-A87A-F988CAA8D032}.Debug|x86.Build.0 = Debug|x86 {263136A2-B89B-424E-A87A-F988CAA8D032}.Release|ARM.ActiveCfg = Release|ARM {263136A2-B89B-424E-A87A-F988CAA8D032}.Release|ARM.Build.0 = Release|ARM {263136A2-B89B-424E-A87A-F988CAA8D032}.Release|Any CPU.ActiveCfg = Release|Any CPU {263136A2-B89B-424E-A87A-F988CAA8D032}.Release|Any CPU.Build.0 = Release|Any CPU {263136A2-B89B-424E-A87A-F988CAA8D032}.Release|x64.ActiveCfg = Release|x64 {263136A2-B89B-424E-A87A-F988CAA8D032}.Release|x64.Build.0 = Release|x64 {263136A2-B89B-424E-A87A-F988CAA8D032}.Release|x86.ActiveCfg = Release|x86 {263136A2-B89B-424E-A87A-F988CAA8D032}.Release|x86.Build.0 = Release|x86 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|ARM.ActiveCfg = Debug|ARM {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|ARM.Build.0 = Debug|ARM {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|ARM.Deploy.0 = Debug|ARM {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|Any CPU.Build.0 = Debug|Any CPU {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|Any CPU.Deploy.0 = Debug|Any CPU {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|x64.ActiveCfg = Debug|x64 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|x64.Build.0 = Debug|x64 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|x64.Deploy.0 = Debug|x64 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|x86.ActiveCfg = Debug|x86 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|x86.Build.0 = Debug|x86 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Debug|x86.Deploy.0 = Debug|x86 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|ARM.ActiveCfg = Release|ARM {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|ARM.Build.0 = Release|ARM {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|ARM.Deploy.0 = Release|ARM {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|Any CPU.ActiveCfg = Release|Any CPU {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|Any CPU.Build.0 = Release|Any CPU {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|Any CPU.Deploy.0 = Release|Any CPU {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|x64.ActiveCfg = Release|x64 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|x64.Build.0 = Release|x64 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|x64.Deploy.0 = Release|x64 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|x86.ActiveCfg = Release|x86 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|x86.Build.0 = Release|x86 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B}.Release|x86.Deploy.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal newtonsoft-json-6.0.8/Src/Newtonsoft.Json.TestConsole/0000775000175000017500000000000012454416117023477 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.TestConsole/Program.cs0000664000175000017500000001316712454416117025445 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Web.Script.Serialization; using Newtonsoft.Json.Tests; namespace Newtonsoft.Json.TestConsole { public class Program { public static void Main(string[] args) { Console.WriteLine("Json.NET Test Console"); string version = FileVersionInfo.GetVersionInfo(typeof (JsonConvert).Assembly.Location).FileVersion; Console.WriteLine("Json.NET Version: " + version); Console.ReadKey(); Console.WriteLine("Doing stuff..."); //PerformanceTests t = new PerformanceTests(); //t.DeserializeLargeJson(); //DeserializeLargeJson(); //WriteLargeJson(); //DeserializeJson(); ReadLargeJson(); //ReadLargeJsonJavaScriptSerializer(); Console.WriteLine(); Console.WriteLine("Finished"); Console.WriteLine("Press any key to exit"); Console.ReadKey(); } public static void DeserializeJson() { PerformanceTests t = new PerformanceTests(); t.Iterations = 50000; t.Deserialize(); } public static void DeserializeLargeJson() { PerformanceTests t = new PerformanceTests(); t.DeserializeLargeJson(); } public static void WriteLargeJson() { var json = System.IO.File.ReadAllText("large.json"); IList o = JsonConvert.DeserializeObject>(json); Console.WriteLine("Press any key to start serialize"); Console.ReadKey(); Console.WriteLine("Serializing..."); Stopwatch sw = new Stopwatch(); sw.Start(); for (int i = 0; i < 10; i++) { using (StreamWriter file = System.IO.File.CreateText("largewrite.json")) { JsonSerializer serializer = new JsonSerializer(); serializer.Formatting = Formatting.Indented; serializer.Serialize(file, o); } } sw.Stop(); Console.WriteLine("Finished. Total seconds: " + sw.Elapsed.TotalSeconds); } public static void ReadLargeJson() { using (var jsonFile = System.IO.File.OpenText("large.json")) using (JsonTextReader jsonTextReader = new JsonTextReader(jsonFile)) { JsonSerializer serializer = new JsonSerializer(); serializer.Deserialize>(jsonTextReader); } Console.WriteLine("Press any key to start deserialization"); Console.ReadKey(); Console.WriteLine("Deserializing..."); Stopwatch sw = new Stopwatch(); sw.Start(); for (int i = 0; i < 5; i++) { using (var jsonFile = System.IO.File.OpenText("large.json")) using (JsonTextReader jsonTextReader = new JsonTextReader(jsonFile)) { JsonSerializer serializer = new JsonSerializer(); serializer.Deserialize>(jsonTextReader); } } sw.Stop(); Console.WriteLine("Finished. Total seconds: " + sw.Elapsed.TotalSeconds); } public static void ReadLargeJsonJavaScriptSerializer() { string json = System.IO.File.ReadAllText("large.json"); JavaScriptSerializer s = new JavaScriptSerializer(); s.MaxJsonLength = int.MaxValue; s.Deserialize>(json); Console.WriteLine("Press any key to start deserialization"); Console.ReadKey(); Console.WriteLine("Deserializing..."); Stopwatch sw = new Stopwatch(); sw.Start(); for (int i = 0; i < 5; i++) { json = System.IO.File.ReadAllText("large.json"); s = new JavaScriptSerializer(); s.MaxJsonLength = int.MaxValue; s.Deserialize>(json); } sw.Stop(); Console.WriteLine("Finished. Total seconds: " + sw.Elapsed.TotalSeconds); } } } newtonsoft-json-6.0.8/Src/Newtonsoft.Json.TestConsole/App.config0000664000175000017500000000026612454416117025412 0ustar directhexdirecthex newtonsoft-json-6.0.8/Src/Newtonsoft.Json.TestConsole/Properties/0000775000175000017500000000000012454416117025633 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.TestConsole/Properties/AssemblyInfo.cs0000664000175000017500000000476612454416117030572 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. [assembly: AssemblyTitle("Json.NET Test Console")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Newtonsoft")] [assembly: AssemblyProduct("Json.NET Tests")] [assembly: AssemblyCopyright("Copyright James Newton-King 2008")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] // Setting ComVisible to false makes the types in this assembly not visible // to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] // The following GUID is for the ID of the typelib if this project is exposed to COM [assembly: Guid("bf0cc842-d368-4800-9614-b5abcc736110")] // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: [assembly: AssemblyVersion("6.0.0.0")] [assembly: AssemblyFileVersion("6.0.8.18111")] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.TestConsole/Newtonsoft.Json.TestConsole.csproj0000664000175000017500000000574412454416117032252 0ustar directhexdirecthex Debug AnyCPU {3CC9C2DF-CD0A-4096-BF46-B4AFDF0147D2} Exe Properties Newtonsoft.Json.TestConsole Newtonsoft.Json.TestConsole v4.5 512 AnyCPU true full false bin\Debug\Net45\ DEBUG;TRACE prompt 4 AnyCPU pdbonly true bin\Release\Net45\ TRACE prompt 4 {ccd1b8c4-7349-409c-a090-a9b9a1abd981} Newtonsoft.Json.Tests {eeea67f9-9089-481d-a4dc-0966dec9fd7d} Newtonsoft.Json newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Net20.sln0000664000175000017500000000302312454416117022641 0ustar directhexdirecthex Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 VisualStudioVersion = 12.0.31101.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Net20", "Newtonsoft.Json\Newtonsoft.Json.Net20.csproj", "{A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Tests.Net20", "Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.Net20.csproj", "{3E6E2335-B079-4B5B-A65A-9D586914BCBB}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Debug|Any CPU.Build.0 = Debug|Any CPU {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|Any CPU.ActiveCfg = Release|Any CPU {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|Any CPU.Build.0 = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.Build.0 = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.ActiveCfg = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal newtonsoft-json-6.0.8/Src/Newtonsoft.Json.sln0000664000175000017500000000402212454416117021752 0ustar directhexdirecthex Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 VisualStudioVersion = 12.0.30723.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json", "Newtonsoft.Json\Newtonsoft.Json.csproj", "{EEEA67F9-9089-481D-A4DC-0966DEC9FD7D}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Tests", "Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.csproj", "{CCD1B8C4-7349-409C-A090-A9B9A1ABD981}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.TestConsole", "Newtonsoft.Json.TestConsole\Newtonsoft.Json.TestConsole.csproj", "{3CC9C2DF-CD0A-4096-BF46-B4AFDF0147D2}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {EEEA67F9-9089-481D-A4DC-0966DEC9FD7D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {EEEA67F9-9089-481D-A4DC-0966DEC9FD7D}.Debug|Any CPU.Build.0 = Debug|Any CPU {EEEA67F9-9089-481D-A4DC-0966DEC9FD7D}.Release|Any CPU.ActiveCfg = Release|Any CPU {EEEA67F9-9089-481D-A4DC-0966DEC9FD7D}.Release|Any CPU.Build.0 = Release|Any CPU {CCD1B8C4-7349-409C-A090-A9B9A1ABD981}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {CCD1B8C4-7349-409C-A090-A9B9A1ABD981}.Debug|Any CPU.Build.0 = Debug|Any CPU {CCD1B8C4-7349-409C-A090-A9B9A1ABD981}.Release|Any CPU.ActiveCfg = Release|Any CPU {CCD1B8C4-7349-409C-A090-A9B9A1ABD981}.Release|Any CPU.Build.0 = Release|Any CPU {3CC9C2DF-CD0A-4096-BF46-B4AFDF0147D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3CC9C2DF-CD0A-4096-BF46-B4AFDF0147D2}.Debug|Any CPU.Build.0 = Debug|Any CPU {3CC9C2DF-CD0A-4096-BF46-B4AFDF0147D2}.Release|Any CPU.ActiveCfg = Release|Any CPU {3CC9C2DF-CD0A-4096-BF46-B4AFDF0147D2}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Net35.sln0000664000175000017500000000275012454416117022655 0ustar directhexdirecthex Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 VisualStudioVersion = 12.0.30324.0 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Net35", "Newtonsoft.Json\Newtonsoft.Json.Net35.csproj", "{A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Tests.Net35", "Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.Net35.csproj", "{3E6E2335-B079-4B5B-A65A-9D586914BCBB}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Debug|Any CPU.Build.0 = Debug|Any CPU {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|Any CPU.ActiveCfg = Release|Any CPU {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|Any CPU.Build.0 = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.Build.0 = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.ActiveCfg = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal newtonsoft-json-6.0.8/Src/packages/0000775000175000017500000000000012454416117017736 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/packages/repositories.config0000664000175000017500000000021112454416117023646 0ustar directhexdirecthex newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Portable40.sln0000664000175000017500000000304712454416117023673 0ustar directhexdirecthex Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 VisualStudioVersion = 12.0.31101.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Portable40", "Newtonsoft.Json\Newtonsoft.Json.Portable40.csproj", "{959F7F85-C98B-4876-971A-9036224578E4}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Tests.Portable40", "Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.Portable40.csproj", "{3E6E2335-B079-4B5B-A65A-9D586914BCBB}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {959F7F85-C98B-4876-971A-9036224578E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {959F7F85-C98B-4876-971A-9036224578E4}.Debug|Any CPU.Build.0 = Debug|Any CPU {959F7F85-C98B-4876-971A-9036224578E4}.Release|Any CPU.ActiveCfg = Release|Any CPU {959F7F85-C98B-4876-971A-9036224578E4}.Release|Any CPU.Build.0 = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.Build.0 = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.ActiveCfg = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Net40.sln0000664000175000017500000000302312454416117022643 0ustar directhexdirecthex Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 VisualStudioVersion = 12.0.31101.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Net40", "Newtonsoft.Json\Newtonsoft.Json.Net40.csproj", "{A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Newtonsoft.Json.Tests.Net40", "Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.Net40.csproj", "{3E6E2335-B079-4B5B-A65A-9D586914BCBB}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Debug|Any CPU.Build.0 = Debug|Any CPU {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|Any CPU.ActiveCfg = Release|Any CPU {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|Any CPU.Build.0 = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Debug|Any CPU.Build.0 = Debug|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.ActiveCfg = Release|Any CPU {3E6E2335-B079-4B5B-A65A-9D586914BCBB}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/0000775000175000017500000000000012454416117022337 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Images/0000775000175000017500000000000012454416117023544 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Images/UnitTestSmallLogo.png0000664000175000017500000000135112454416117027643 0ustar directhexdirecthexPNG  IHDRR9 pHYs+IDATHݖ=Hras~_CC84-~:jS 55859)( ^up6A"T״"3]?R=F÷@4-^^^=`0d\.UX,#J_߆}>88T*5ND"D !ϧT*oooCj5aL&`00 Vk.ggg^dqooo{{;nn777vbQժTd2ɲ,ql6\.D"E4M# f0VhX,[(419N}>S<-p\1&/..666Vzjʏޝ| tXbJ%Uef_O?u!</NƛKNM&l^,>u ˲tz<F#i4Rtl6KQPV}v;bY 0LHO"Vt:X( Db>V+Zlmm `~?9a UNl6: "櫠hDL&&ITJKdd2bxmn{LaJ2cclp`%8Ll`IENDB`newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Images/UnitTestStoreLogo.png0000664000175000017500000000372512454416117027676 0ustar directhexdirecthexPNG  IHDR22? pHYsSIDAThZOSK|   6C%‚W&2q?t 144D-Z.ţm)|ML{939r!,ٻ'^*;5v83@DI[-xg,SRw$#Z-NVK(&wGׯyQKTjYYY{ ?qWTPTXYYaARt:( f4 @hH$#D1G( .Cv>|@X]] !PWW4)**" qE-?c755{Rcciii4RT~YFDv4MIp}Nv$yQ ### R iii(((0YR5 QX%/jDQŋ"3ñh؂G6rF333 (cSSS())aM Z_~ oQP@ף ~e1;47Q15^WWr""x^Ȳt:ݐX\KhZ\z'OBHJTXXqfCCC>JveGFFƶZd<FFF(q9,E0==:th[8?۷ob ׻={Cff&jkkq 8qbϡ`ގ~,//ȂsDb1AP\\Ln™3gXJJoQmE>QqzLEz!޽{666b11'Q#!!Ҝ`hCߏ6Q⎡USSIV[[VΠ! pBǝݢ8;ʕ+tܹ?64DR) j6 O>kү(**JHṹ9)Jp{ԤqssS v|c t턒/^ "FDxbJԤaqqqSքFN?[݁PUU/;v :SSS{@燗dbj:wST*0ñ.q?tbppV_jp`IQUUKǁyL&$I[BnGww7>} ˅rTTT+LH͆Aݎ@pQ>|6m !IՅ@xEf9P*$I$I Fݾ]"F#n7:;;aXӧ&&&0770ưE,ctt1 Cv Ede`0yz=~Ǐ1==2*z.ZAHu@F=B`wޥgϞY kkkX[[ULNNp@VSйn9,gknrR̤!ZVhڤFr_O0"wZ~ܿ);,%.jm,A}'Z<뛖Dǫ_Tu|)IENDB`newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Images/UnitTestSplashScreen.png0000664000175000017500000002224512454416117030351 0ustar directhexdirecthexPNG  IHDRl,~%gAMA|Q cHRMR@}y<s,٩<9SbL!GĈ 3,F0+7T3IlpX"61"H _qW,d ėrIKst.ښAdp&+g]RәY2EE44432PuoJEzg`̉j- -b8o׿M]9La.+-%Mȧg3YះuAxEK i<:ŹPcu*@~(  ]o0 ~y*s7g%9%(3H*@C`-pn VH@ A1 jPA3hA'8΃Kn`Lg` a!2D!H҇ dAP B Byf*z: @]h ~L CUp΅ p%;56< ?" GxG iE>&2 oQEGlQP UFFuzQ7QcYG4G۠t]nB/o'Я1 xb"1I>Lf3bX} *QYvGĩp( &q x)&gsF|7:~@&h!$&B%pH$D.q#xx8F|K!\H$!i.%L";r3EHK-AFCbH$^RSIrdd 3Rx)-))zR#RsiSiT#Wd2Z2n2l2d)EBaQ6S))T UEMSPgeedɆfȞ!4--VJ;N g%K-sɵݖ{'OwO%)P_RRۥEK/+))U<د8䡔TtAiF쨜\|FyZbU)W9.Kw+YUEUOUjꂚZZZCu:C=^\G}VCEO#OE&^WOs^K[+\kV֔vv[]n>z^^u}XROm`m3h01$:fь|:kG23hbabhrT4ߴw3=3Y-s.q_vǂbgբ⃥%߲rJ*֪jAe0JOY6rvvtXLǎl&I']$NϝM.6.\ι"En2nnn[g=,=t٪E2}4\j5loDŽǞ~q=''Z^utv&vvEv >mяN9-{ LOgsΝK?7s>xOL n\x }N}g/]>uɫ,u[dS@u]7ot.<30tKn]p;;SwSyoEV /3:&%y !hͰaW釪 0F1 R:JQeOgs?s$s}⾜9:d#@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ 0/ѾG{{ڇ[{~.?|}lR$@'nnEt??m/= @& Ӊh/Fjl~rX@8@E'k7,XƕM@?;ѮG[YAx3q  @:ߋvUgټWWǟyh|me2]}I Y 3~Aet7>Wu珶c[xnי6b' @u(dvYS{#sю`a?xV2OW1i$@b {-GjW_ƹʖy?~dF @l(J(|_gM:fܫl @V~߮PWZ #vz-{ @r(JP''*S\]h @@ Q|+-)~wvehor/Zٴӷ8 @CQ|<*hvcb!_t8*ߦٮb2 0c(:~lĶm/o[ڞo{g2]d, @`fQ"{)|Bzm?#.c @x7kZ#Zm/q  @ Dq,ڻ G>WGGJ9Ă-cOhMOMci? @ D1hMW-+Z=n}^:; @ ,9vqN[ lņ8mE @~xӫ/Y`5Jߴ-h @_ D5q<^?=4lUv:⭻_ەي@/@yfCnTÙ @DO05~lՙf:0 @"! ǚ ]f[U]=G|Љ!Bݽg1ZUE^M] /@ jc}[U\H,wk zO0X5 lD.m @ DpP%=t]lY|hma @`B _^SS(تRM.)V -( QS1g*[Uݮ]y@|@B\9lO|5 v$@/O)r ,[ݭ>F/Y "c=,r> 0.)pΎ+ZVe;[Γ  @jnq{ŏr)lUVas5HP @`HQ؜)nN )ucpv&7e[ ?@,o c{[u{Q<2l,/I#ENMa; 7 d[ov61 @`Q\/65urVeuK@  4l 9~ @xb-,QwmQ~ۑ1kq_$R в@Z^%dZ!W;C6 Ю@,3]3)Jd;e# @ D1Sznl#Ϝ=:> G."9lyRj&@! "?熖LfTvglj> @yP|)VQv4r[iV @@s)R5r-===F'B1 B1 @Vaq<̬`+ @BB13߯U_lØE)$퍠' @3Xԟ(,; Át*Pr~CrC @t {h}̰`YyRj1& Њ@, Vl 9_y O+ KsYgX],ҺLj  @bA9Vo*:~Viqm @`Iub U6a"  @,kv3# [6dkOd%H @+X\XԏL(򼲬z6ϰ)SlĚbn݇mn._@,y4g 'mK•|4g`,ѹM|  @`QT(.N3yez0/KA @`_(,7&Sya  ¢~s =כmQXs?hM ' qg1 sDg؞nr(=iPfB @`K*9uӃ@œg؆@, 6G?1{9~1* p`Xw wb>K7D>[@&@&#xz>߯-n1  @- Ԝq -vMͭZt @bZ8#J Ce s<  @b?Y(>='\(z"@zE3+V:  п@, _V9\U~ @`5x?6tfrS1 uF @8^sm>z<bNJ^ɩ:cX&@"ZMv  @Q\[ih{Oײ'+ @h/\;΍"cY̘s; 0A(Pn,b??G{l goƽvc y@T3G{s&ɇ[Cʸ־fs @p]ÇE=\~x?xVIFc @= D!WQEnYUoWw>:*qrukWtC Ekzbc{~RsѾߟW~|??~Mã8I/Nњi!2ތ{}%# @"hFkzfEز3@ȄAO bMn u3_yw8@L.Gu*5~Uc80H W c"EhyB~g?dž @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @?~]!7IENDB`newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Images/UnitTestLogo.png0000664000175000017500000001323512454416117026656 0ustar directhexdirecthexPNG  IHDR<q pHYsodOIDATxkLǿ1ؘf.64@6$MCLYZMڤi[֥I{_MMvYvU5VHu"'cs`lld|{;9VIIIBaagB"P@ D,%@"P@ D,%@"P@ D,%@"P@ D,%Bb!==0+DLw"GK/6e@ޥ`8r:^vbfLLLpiP6V=ZѣGopxeŒ$hZ8N!//Ri{\.HJaPTH$0 1o_*^@kk+ <f3,KLۢ F=jH$Bvv6^~eH$ttt@lJP([eX,|>c*֮]PSS'N hZ,,,Ĭ-*aXF& rr8t JV u[ۥ \.MMMx"|>_Tmlȑ#8~8*++1f3c fff099b^l$''\.wkl6J%d2?~q<8qZZZ֭Ez^fƈۈ7 XM6)@ "%%%vFFF"EJKK!CX,!bP__6nSNNNBaff&6Qbt:L&TUUX˗C,--FCC|~s\444w K䤤$HR?~ǎBڑFAabMMMAcff999^'N@$ի~:NgH`!ߓpP(PZZ V:tmmmx琙>%TK `6 XE/2 /_NvbqϞ=dalX,466n+B~~>򕯠6NOOCajj*FL>FbZXӧOٳ8rҶ|>?5dm9̙374ţGb6/cMNN`0`nnnD  EEEd裏0::N̔Gp ˡP(h<##hkkCMMMHSaX7(G?l6[Hb'g?C演JeDtXNBKK˖􍘛^D1 R!qV!;;/"|M>}`TNa``ىQʪ'(+ P($D޽{ JVkgggRcQQ9!8N;xbVSL&4Zjd–L?o~tvvpĭ~>.bYYYY[ [XX\.@ W_(^/}Yܷ?XjjFdBaaaT#}] Rw,//d2ahh$5ƈ%:;;155EۣcyMLLXXXL&1xƸntttW߿OT8*:w\hH$"1Lv;~mObI'{h+dB__Zj9/ j?ىل<$aV ˅R7aqqW\/~ {";^br>022 .ߦd9$XA|>f3߿4N&@V?)::: 0aVȩ)|p\1y,..?Oחԓ$XA<j5?~ DP肾pl3f,ձ$]O<  C/vڅ^{ ΝRBV9555(((^ꀄxblr;w:6Q^^ v$tb%''?;Bւfh4& 'FVV^{5={{¥HOO! aX033pWBRxWr*Sr(//GYYN'ưBwXk$XO0ӷx*5ZV,--%DEXB*x #IKK͆iڧ'h+998s N%ORRʠR0== N4-bX,ddd?P__OJdbD~~>jjjp`rhIq+)) "8s Ri~_׾ `޽PT[sS---x7qaD knre`OX\.R @"PaRSS'&&0==MRyz۷/&''%%-Do'N*߻cp1LNNByĘAkҐajj*~ÌM… x$ ?ݽN)@ZZV+e333a4%jI?䠢t5AR툲e.brCƋ% wLP(Dee%aD ŪQ塲)))t+%%*jG#X/F%!Jw;`X;* Ǿ}]X\.***  %|H$J0VBdp81YEEE;dXQv\s׿ۍ7n39QQQت_jaZЀDAҥKp8Fkk+#zʹ4HRfE0R< ^/>|.\zum1Ν;(++8|> hZx^\t z_W/9GX,D"T*#bd*,++CQQQ%2v~_?|BwۓMbyyw]krsBR1rqq=FeeeX~Z| \ᆰZ& w;u}^… xQ]] 릧999+&aXِHOOz˅O?W\Aoo%8J axx:nßի08uClbݻE5{X,)=X,ܼy/_N۶_JwPǃn`0_Dee嶽caa!pΝI'J6 z^jtuup:!M%t: dffi'kh4ɓxg޽ ٘ )DQbeeeAP 33skN'z{{GAV5 Ê~?z=z}FFF`4qرMwp8H$P(Q d D4 .^׿]?ϰ~񠷷7t:[own:c/T*z}aTw^Dur~=DǏ1< oy t[nzl͆8<>sŌJ鱔J%Π߾}x!\.WL2x1Bh4+c ܽ{tq9h4BѠftv %j8>|n\.7NT_!`^tܶ:\YY[3Ϭ%.~XV|'HII}P`]Tw}͛7b||YCچ7o>5quFs脈 ###G @ r\k|>_v\#l +nܸvCww7I!@ ͆4 }yyp+D1??O`$v܉BzzS5R!c D0 b(E"XJ b(E"XJ b(E"XJ b(E"XJVgoIENDB`newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.WinRT_TemporaryKey.pfx0000664000175000017500000000471012454416117032754 0ustar directhexdirecthex0 0 x *H  i e0 a0 *H 00 *H  00 *H  0/r2;B[c>h{H-UMW|g>O^A-2[b e.e2dڜ⦶ S w 6Qga[_ ||̻9vHN 6O{|1zmt7*b;[W1o6]5~@EpwoJ|n7R4Yk;n;4sb'LO$|TKwPp<~EOPZ p5ZKzM>p/|7p28DNP /,NR0EPa<8z.c" ANN-:nDFEu5 543K_cBjLX9%CҒ4n{Zos̍?Yܖ+raI.NzI>c@.lV D1˽o֓h+A&R=O"+[SzA?:vz}"ԓaqQx)eܒ]GEwȏH+r.un1=~SC5j&hJ-#BMR3s|!.iZen}]ěA۳1ݪ߬I΄Ȣ p}[SWP8Y{^g%L$IEħۦņĕjVJ/ >/dcKdn?b:U&]bL;.܃ O-q]H` 츧bR,mZ~F2VIQAw ':5F+Z=o8adl]HDEg = Ϫ!/[A4H>8,M8^g|5|Exe!ja78ej-?[6:JpDo`7Mtƅi-@W&1i RƏg'z]`mh7VǘZ 1{>ÅbMXt(5^_+$i lM*0iI'MV(98S0tOc|B~hx)0^*l^" +)H&&c54~ 'W9A3{rhU|x ]iSµϘY gw|.b0߱Ğ ~j?^ k;Ug+(l3by10 *H  10W *H  1JHeb7dbdf2-451d-40a8-869d-55a11e296f430] +71PNMicrosoft Strong Cryptographic Provider0g *H X0T0M *H 0 *H  0c} IЀ aDNg45.]xbSd?p00$1Qt"ԣZ&5Wn#x&ѷ"T+$|*A_SU5^/kp>!~rJE^D&?IYF('V_pw h|N$M[ 9rqR3U=Rnz'ˁcbFeH6*lrAV M#:F'Tr|[5G'rUU%`k69S{Uԙ!4<Xe!E鷺U0/,a[\p|_$ _[ulΪIeLv0fD$A7~_vDi^)9B |~T ?QcoƦyi >)oDk@O`d ^]eH Riy7 88vY&p_MFsP RW-3MLw0;00+,Bqơ.C;][yd9]؎K {+`newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/FileSystemEntityModel.edmx0000664000175000017500000002557612454416117027477 0ustar directhexdirecthex newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/0000775000175000017500000000000012454416117024225 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/LinqToSqlClasses.designer.cs0000664000175000017500000004313512454416117031565 0ustar directhexdirecthex#pragma warning disable 1591 //------------------------------------------------------------------------------ // // This code was generated by a tool. // Runtime Version:4.0.30319.237 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //------------------------------------------------------------------------------ namespace Newtonsoft.Json.Tests.LinqToSql { using System.Data.Linq; using System.Data.Linq.Mapping; using System.Data; using System.Collections.Generic; using System.Reflection; using System.Linq; using System.Linq.Expressions; using System.ComponentModel; using System; public partial class LinqToSqlClassesDataContext : System.Data.Linq.DataContext { private static System.Data.Linq.Mapping.MappingSource mappingSource = new AttributeMappingSource(); #region Extensibility Method Definitions partial void OnCreated(); partial void InsertPerson(Person instance); partial void UpdatePerson(Person instance); partial void DeletePerson(Person instance); partial void InsertRole(Role instance); partial void UpdateRole(Role instance); partial void DeleteRole(Role instance); partial void InsertPersonRole(PersonRole instance); partial void UpdatePersonRole(PersonRole instance); partial void DeletePersonRole(PersonRole instance); partial void InsertDepartment(Department instance); partial void UpdateDepartment(Department instance); partial void DeleteDepartment(Department instance); #endregion public LinqToSqlClassesDataContext(string connection) : base(connection, mappingSource) { OnCreated(); } public LinqToSqlClassesDataContext(System.Data.IDbConnection connection) : base(connection, mappingSource) { OnCreated(); } public LinqToSqlClassesDataContext(string connection, System.Data.Linq.Mapping.MappingSource mappingSource) : base(connection, mappingSource) { OnCreated(); } public LinqToSqlClassesDataContext(System.Data.IDbConnection connection, System.Data.Linq.Mapping.MappingSource mappingSource) : base(connection, mappingSource) { OnCreated(); } public System.Data.Linq.Table Persons { get { return this.GetTable(); } } public System.Data.Linq.Table Roles { get { return this.GetTable(); } } public System.Data.Linq.Table PersonRoles { get { return this.GetTable(); } } public System.Data.Linq.Table Departments { get { return this.GetTable(); } } } [global::System.Data.Linq.Mapping.TableAttribute(Name="")] public partial class Person : INotifyPropertyChanging, INotifyPropertyChanged { private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty); private string _FirstName; private string _LastName; private System.Guid _PersonId; private System.Guid _DepartmentId; private EntitySet _PersonRoles; private EntityRef _Department; #region Extensibility Method Definitions partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); partial void OnCreated(); partial void OnFirstNameChanging(string value); partial void OnFirstNameChanged(); partial void OnLastNameChanging(string value); partial void OnLastNameChanged(); partial void OnPersonIdChanging(System.Guid value); partial void OnPersonIdChanged(); partial void OnDepartmentIdChanging(System.Guid value); partial void OnDepartmentIdChanged(); #endregion public Person() { this._PersonRoles = new EntitySet(new Action(this.attach_PersonRoles), new Action(this.detach_PersonRoles)); this._Department = default(EntityRef); OnCreated(); } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FirstName", CanBeNull=false)] public string FirstName { get { return this._FirstName; } set { if ((this._FirstName != value)) { this.OnFirstNameChanging(value); this.SendPropertyChanging(); this._FirstName = value; this.SendPropertyChanged("FirstName"); this.OnFirstNameChanged(); } } } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LastName", CanBeNull=false)] public string LastName { get { return this._LastName; } set { if ((this._LastName != value)) { this.OnLastNameChanging(value); this.SendPropertyChanging(); this._LastName = value; this.SendPropertyChanged("LastName"); this.OnLastNameChanged(); } } } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PersonId", IsPrimaryKey=true)] public System.Guid PersonId { get { return this._PersonId; } set { if ((this._PersonId != value)) { this.OnPersonIdChanging(value); this.SendPropertyChanging(); this._PersonId = value; this.SendPropertyChanged("PersonId"); this.OnPersonIdChanged(); } } } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartmentId")] public System.Guid DepartmentId { get { return this._DepartmentId; } set { if ((this._DepartmentId != value)) { if (this._Department.HasLoadedOrAssignedValue) { throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException(); } this.OnDepartmentIdChanging(value); this.SendPropertyChanging(); this._DepartmentId = value; this.SendPropertyChanged("DepartmentId"); this.OnDepartmentIdChanged(); } } } [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Person_PersonRole", Storage="_PersonRoles", ThisKey="PersonId", OtherKey="PersonId")] public EntitySet PersonRoles { get { return this._PersonRoles; } set { this._PersonRoles.Assign(value); } } [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Department_Person", Storage="_Department", ThisKey="DepartmentId", OtherKey="DepartmentId", IsForeignKey=true)] public Department Department { get { return this._Department.Entity; } set { Department previousValue = this._Department.Entity; if (((previousValue != value) || (this._Department.HasLoadedOrAssignedValue == false))) { this.SendPropertyChanging(); if ((previousValue != null)) { this._Department.Entity = null; previousValue.Persons.Remove(this); } this._Department.Entity = value; if ((value != null)) { value.Persons.Add(this); this._DepartmentId = value.DepartmentId; } else { this._DepartmentId = default(System.Guid); } this.SendPropertyChanged("Department"); } } } public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; protected virtual void SendPropertyChanging() { if ((this.PropertyChanging != null)) { this.PropertyChanging(this, emptyChangingEventArgs); } } protected virtual void SendPropertyChanged(String propertyName) { if ((this.PropertyChanged != null)) { this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } } private void attach_PersonRoles(PersonRole entity) { this.SendPropertyChanging(); entity.Person = this; } private void detach_PersonRoles(PersonRole entity) { this.SendPropertyChanging(); entity.Person = null; } } [global::System.Data.Linq.Mapping.TableAttribute(Name="")] public partial class Role : INotifyPropertyChanging, INotifyPropertyChanged { private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty); private string _Name; private System.Guid _RoleId; private EntitySet _PersonRoles; #region Extensibility Method Definitions partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); partial void OnCreated(); partial void OnNameChanging(string value); partial void OnNameChanged(); partial void OnRoleIdChanging(System.Guid value); partial void OnRoleIdChanged(); #endregion public Role() { this._PersonRoles = new EntitySet(new Action(this.attach_PersonRoles), new Action(this.detach_PersonRoles)); OnCreated(); } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", CanBeNull=false)] public string Name { get { return this._Name; } set { if ((this._Name != value)) { this.OnNameChanging(value); this.SendPropertyChanging(); this._Name = value; this.SendPropertyChanged("Name"); this.OnNameChanged(); } } } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RoleId", IsPrimaryKey=true)] public System.Guid RoleId { get { return this._RoleId; } set { if ((this._RoleId != value)) { this.OnRoleIdChanging(value); this.SendPropertyChanging(); this._RoleId = value; this.SendPropertyChanged("RoleId"); this.OnRoleIdChanged(); } } } [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Role_PersonRole", Storage="_PersonRoles", ThisKey="RoleId", OtherKey="RoleId")] public EntitySet PersonRoles { get { return this._PersonRoles; } set { this._PersonRoles.Assign(value); } } public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; protected virtual void SendPropertyChanging() { if ((this.PropertyChanging != null)) { this.PropertyChanging(this, emptyChangingEventArgs); } } protected virtual void SendPropertyChanged(String propertyName) { if ((this.PropertyChanged != null)) { this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } } private void attach_PersonRoles(PersonRole entity) { this.SendPropertyChanging(); entity.Role = this; } private void detach_PersonRoles(PersonRole entity) { this.SendPropertyChanging(); entity.Role = null; } } [global::System.Data.Linq.Mapping.TableAttribute(Name="")] public partial class PersonRole : INotifyPropertyChanging, INotifyPropertyChanged { private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty); private System.Guid _PersonId; private System.Guid _RoleId; private System.Guid _PersonRoleId; private EntityRef _Person; private EntityRef _Role; #region Extensibility Method Definitions partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); partial void OnCreated(); partial void OnPersonIdChanging(System.Guid value); partial void OnPersonIdChanged(); partial void OnRoleIdChanging(System.Guid value); partial void OnRoleIdChanged(); partial void OnPersonRoleIdChanging(System.Guid value); partial void OnPersonRoleIdChanged(); #endregion public PersonRole() { this._Person = default(EntityRef); this._Role = default(EntityRef); OnCreated(); } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PersonId")] public System.Guid PersonId { get { return this._PersonId; } set { if ((this._PersonId != value)) { if (this._Person.HasLoadedOrAssignedValue) { throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException(); } this.OnPersonIdChanging(value); this.SendPropertyChanging(); this._PersonId = value; this.SendPropertyChanged("PersonId"); this.OnPersonIdChanged(); } } } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RoleId")] public System.Guid RoleId { get { return this._RoleId; } set { if ((this._RoleId != value)) { if (this._Role.HasLoadedOrAssignedValue) { throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException(); } this.OnRoleIdChanging(value); this.SendPropertyChanging(); this._RoleId = value; this.SendPropertyChanged("RoleId"); this.OnRoleIdChanged(); } } } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PersonRoleId", IsPrimaryKey=true)] public System.Guid PersonRoleId { get { return this._PersonRoleId; } set { if ((this._PersonRoleId != value)) { this.OnPersonRoleIdChanging(value); this.SendPropertyChanging(); this._PersonRoleId = value; this.SendPropertyChanged("PersonRoleId"); this.OnPersonRoleIdChanged(); } } } [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Person_PersonRole", Storage="_Person", ThisKey="PersonId", OtherKey="PersonId", IsForeignKey=true)] public Person Person { get { return this._Person.Entity; } set { Person previousValue = this._Person.Entity; if (((previousValue != value) || (this._Person.HasLoadedOrAssignedValue == false))) { this.SendPropertyChanging(); if ((previousValue != null)) { this._Person.Entity = null; previousValue.PersonRoles.Remove(this); } this._Person.Entity = value; if ((value != null)) { value.PersonRoles.Add(this); this._PersonId = value.PersonId; } else { this._PersonId = default(System.Guid); } this.SendPropertyChanged("Person"); } } } [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Role_PersonRole", Storage="_Role", ThisKey="RoleId", OtherKey="RoleId", IsForeignKey=true)] public Role Role { get { return this._Role.Entity; } set { Role previousValue = this._Role.Entity; if (((previousValue != value) || (this._Role.HasLoadedOrAssignedValue == false))) { this.SendPropertyChanging(); if ((previousValue != null)) { this._Role.Entity = null; previousValue.PersonRoles.Remove(this); } this._Role.Entity = value; if ((value != null)) { value.PersonRoles.Add(this); this._RoleId = value.RoleId; } else { this._RoleId = default(System.Guid); } this.SendPropertyChanged("Role"); } } } public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; protected virtual void SendPropertyChanging() { if ((this.PropertyChanging != null)) { this.PropertyChanging(this, emptyChangingEventArgs); } } protected virtual void SendPropertyChanged(String propertyName) { if ((this.PropertyChanged != null)) { this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } } } [global::System.Data.Linq.Mapping.TableAttribute(Name="")] public partial class Department : INotifyPropertyChanging, INotifyPropertyChanged { private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty); private System.Guid _DepartmentId; private string _Name; private EntitySet _Persons; #region Extensibility Method Definitions partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); partial void OnCreated(); partial void OnDepartmentIdChanging(System.Guid value); partial void OnDepartmentIdChanged(); partial void OnNameChanging(string value); partial void OnNameChanged(); #endregion public Department() { this._Persons = new EntitySet(new Action(this.attach_Persons), new Action(this.detach_Persons)); OnCreated(); } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartmentId", IsPrimaryKey=true)] public System.Guid DepartmentId { get { return this._DepartmentId; } set { if ((this._DepartmentId != value)) { this.OnDepartmentIdChanging(value); this.SendPropertyChanging(); this._DepartmentId = value; this.SendPropertyChanged("DepartmentId"); this.OnDepartmentIdChanged(); } } } [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", CanBeNull=false)] public string Name { get { return this._Name; } set { if ((this._Name != value)) { this.OnNameChanging(value); this.SendPropertyChanging(); this._Name = value; this.SendPropertyChanged("Name"); this.OnNameChanged(); } } } [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Department_Person", Storage="_Persons", ThisKey="DepartmentId", OtherKey="DepartmentId")] public EntitySet Persons { get { return this._Persons; } set { this._Persons.Assign(value); } } public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; protected virtual void SendPropertyChanging() { if ((this.PropertyChanging != null)) { this.PropertyChanging(this, emptyChangingEventArgs); } } protected virtual void SendPropertyChanged(String propertyName) { if ((this.PropertyChanged != null)) { this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } } private void attach_Persons(Person entity) { this.SendPropertyChanging(); entity.Department = this; } private void detach_Persons(Person entity) { this.SendPropertyChanging(); entity.Department = null; } } } #pragma warning restore 1591 newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/GuidByteArrayConverter.cs0000664000175000017500000000373612454416117031170 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.LinqToSql { public class GuidByteArrayConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { Guid guid = (Guid)value; writer.WriteValue(Convert.ToBase64String(guid.ToByteArray())); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { string encodedData = (string)reader.Value; byte[] data = Convert.FromBase64String(encodedData); return new Guid(data); } public override bool CanConvert(Type objectType) { return (objectType == typeof(Guid)); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/LinqToSqlClassesSerializationTests.cs0000664000175000017500000001200612454416117033540 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(ASPNETCORE50 || NETFX_CORE || PORTABLE40 || PORTABLE40) using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using Newtonsoft.Json.Tests.LinqToSql; using NUnit.Framework; using System.Reflection; using System.ComponentModel; using Newtonsoft.Json.Serialization; using System.Data.Linq.Mapping; namespace Newtonsoft.Json.Tests.LinqToSql { public class LinqToSqlClassesSerializationTests : TestFixtureBase { [Test] public void Serialize() { Role role = new Role(); role.Name = "Role1"; role.RoleId = new Guid("67EA92B7-4BD3-4718-BD75-3C7EDF800B34"); Person person = new Person(); person.FirstName = "FirstName!"; person.LastName = "LastName!"; person.PersonId = new Guid("7AA027AA-C995-4986-908D-999D8063599F"); person.PersonRoles.Add(new PersonRole { PersonRoleId = new Guid("B012DD41-71DF-4839-B8D5-D1333FB886BC"), Role = role }); person.Department = new Department { DepartmentId = new Guid("08F68BF9-929B-4434-BC47-C9489D22112B"), Name = "Name!" }; string json = JsonConvert.SerializeObject(person, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); StringAssert.AreEqual(@"{ ""first_name"": ""FirstName!"", ""LastName"": ""LastName!"", ""PersonId"": ""7aa027aa-c995-4986-908d-999d8063599f"", ""DepartmentId"": ""08f68bf9-929b-4434-bc47-c9489d22112b"", ""PersonRoles"": [ { ""PersonId"": ""7aa027aa-c995-4986-908d-999d8063599f"", ""RoleId"": ""67ea92b7-4bd3-4718-bd75-3c7edf800b34"", ""PersonRoleId"": ""b012dd41-71df-4839-b8d5-d1333fb886bc"", ""Role"": { ""Name"": ""Role1"", ""RoleId"": ""t5LqZ9NLGEe9dTx+34ALNA=="" } } ], ""Department"": { ""DepartmentId"": ""08f68bf9-929b-4434-bc47-c9489d22112b"", ""Name"": ""!emaN"" } }", json); } [Test] public void Deserialize() { string json = @"{ ""first_name"": ""FirstName!"", ""LastName"": ""LastName!"", ""PersonId"": ""7aa027aa-c995-4986-908d-999d8063599f"", ""PersonRoles"": [ { ""PersonId"": ""7aa027aa-c995-4986-908d-999d8063599f"", ""RoleId"": ""67ea92b7-4bd3-4718-bd75-3c7edf800b34"", ""PersonRoleId"": ""b012dd41-71df-4839-b8d5-d1333fb886bc"", ""Role"": { ""Name"": ""Role1"", ""RoleId"": ""t5LqZ9NLGEe9dTx+34ALNA=="" } } ], ""Department"": { ""DepartmentId"": ""08f68bf9-929b-4434-bc47-c9489d22112b"", ""Name"": ""!emaN"" } }"; Person person = JsonConvert.DeserializeObject(json); Assert.IsNotNull(person); Assert.AreEqual(new Guid("7AA027AA-C995-4986-908D-999D8063599F"), person.PersonId); Assert.AreEqual("FirstName!", person.FirstName); Assert.AreEqual("LastName!", person.LastName); Assert.AreEqual(1, person.PersonRoles.Count); Assert.AreEqual(person.PersonId, person.PersonRoles[0].PersonId); Assert.AreEqual(new Guid("67EA92B7-4BD3-4718-BD75-3C7EDF800B34"), person.PersonRoles[0].RoleId); Assert.IsNotNull(person.PersonRoles[0].Role); Assert.AreEqual(1, person.PersonRoles[0].Role.PersonRoles.Count); Assert.AreEqual("Name!", person.Department.Name); TableAttribute tableAttribute = JsonTypeReflector.GetAttribute(typeof(Person)); Assert.AreEqual("", tableAttribute.Name); ColumnAttribute columnAttribute = JsonTypeReflector.GetAttribute(typeof(Person).GetProperty("FirstName")); Assert.AreEqual("_FirstName", columnAttribute.Storage); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/Person.cs0000664000175000017500000000303612454416117026024 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.LinqToSql { [MetadataType(typeof(PersonMetadata))] public partial class Person { public class PersonMetadata { [JsonProperty("first_name")] public string FirstName { get; set; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/LinqToSqlClasses.dbml.layout0000664000175000017500000000663412454416117031616 0ustar directhexdirecthex newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/Role.cs0000664000175000017500000000323312454416117025456 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Data.Linq; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.LinqToSql { [MetadataType(typeof(RoleMetadata))] public partial class Role { public class RoleMetadata { [JsonConverter(typeof(GuidByteArrayConverter))] public Guid RoleId { get; set; } [JsonIgnore] public EntitySet PersonRoles { get; set; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/LinqToSqlClasses.dbml0000664000175000017500000000430312454416117030271 0ustar directhexdirecthex
newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/Department.cs0000664000175000017500000000303412454416117026657 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Data.Linq; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.LinqToSql { [MetadataType(typeof(DepartmentMetadata))] public partial class Department { [JsonConverter(typeof(DepartmentConverter))] public class DepartmentMetadata { } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/LinqToSql/DepartmentConverter.cs0000664000175000017500000000447112454416117030555 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.LinqToSql { public class DepartmentConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { Department department = (Department)value; JObject o = new JObject(); o["DepartmentId"] = new JValue(department.DepartmentId.ToString()); o["Name"] = new JValue(new string(department.Name.Reverse().ToArray())); o.WriteTo(writer); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { JObject o = JObject.Load(reader); Department department = new Department(); department.DepartmentId = new Guid((string)o["DepartmentId"]); department.Name = new string(((string)o["Name"]).Reverse().ToArray()); return department; } public override bool CanConvert(Type objectType) { return (objectType == typeof(Department)); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Bson/0000775000175000017500000000000012454416117023240 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Bson/BsonWriterTests.cs0000664000175000017500000010044212454416117026711 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif using System.Text; using System.Text.RegularExpressions; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Bson; using System.IO; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Tests.TestObjects; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Bson { [TestFixture] public class BsonWriterTests : TestFixtureBase { [Test] public void CloseOutput() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); Assert.IsTrue(ms.CanRead); writer.Close(); Assert.IsFalse(ms.CanRead); ms = new MemoryStream(); writer = new BsonWriter(ms) { CloseOutput = false }; Assert.IsTrue(ms.CanRead); writer.Close(); Assert.IsTrue(ms.CanRead); } [Test] public void WriteSingleObject() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("Blah"); writer.WriteValue(1); writer.WriteEndObject(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual("0F-00-00-00-10-42-6C-61-68-00-01-00-00-00-00", bson); } #if !NET20 [Test] public void WriteValues() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteValue(long.MaxValue); writer.WriteValue((ulong)long.MaxValue); writer.WriteValue(int.MaxValue); writer.WriteValue((uint)int.MaxValue); writer.WriteValue(byte.MaxValue); writer.WriteValue(sbyte.MaxValue); writer.WriteValue('a'); writer.WriteValue(decimal.MaxValue); writer.WriteValue(double.MaxValue); writer.WriteValue(float.MaxValue); writer.WriteValue(true); writer.WriteValue(new byte[] { 0, 1, 2, 3, 4 }); writer.WriteValue(new DateTimeOffset(2000, 12, 29, 12, 30, 0, TimeSpan.Zero)); writer.WriteValue(new DateTime(2000, 12, 29, 12, 30, 0, DateTimeKind.Utc)); writer.WriteEnd(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual("8C-00-00-00-12-30-00-FF-FF-FF-FF-FF-FF-FF-7F-12-31-00-FF-FF-FF-FF-FF-FF-FF-7F-10-32-00-FF-FF-FF-7F-10-33-00-FF-FF-FF-7F-10-34-00-FF-00-00-00-10-35-00-7F-00-00-00-02-36-00-02-00-00-00-61-00-01-37-00-00-00-00-00-00-00-F0-45-01-38-00-FF-FF-FF-FF-FF-FF-EF-7F-01-39-00-00-00-00-E0-FF-FF-EF-47-08-31-30-00-01-05-31-31-00-05-00-00-00-00-00-01-02-03-04-09-31-32-00-40-C5-E2-BA-E3-00-00-00-09-31-33-00-40-C5-E2-BA-E3-00-00-00-00", bson); } #endif [Test] public void WriteDouble() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteValue(99.99d); writer.WriteEnd(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual("10-00-00-00-01-30-00-8F-C2-F5-28-5C-FF-58-40-00", bson); } [Test] public void WriteGuid() { Guid g = new Guid("D821EED7-4B5C-43C9-8AC2-6928E579B705"); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteValue(g); writer.WriteEnd(); string bson = BytesToHex(ms.ToArray()); Console.WriteLine(bson); Assert.AreEqual("1D-00-00-00-05-30-00-10-00-00-00-04-D7-EE-21-D8-5C-4B-C9-43-8A-C2-69-28-E5-79-B7-05-00", bson); } [Test] public void WriteArrayBsonFromSite() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteValue("a"); writer.WriteValue("b"); writer.WriteValue("c"); writer.WriteEndArray(); writer.Flush(); ms.Seek(0, SeekOrigin.Begin); string expected = "20-00-00-00-02-30-00-02-00-00-00-61-00-02-31-00-02-00-00-00-62-00-02-32-00-02-00-00-00-63-00-00"; string bson = BytesToHex(ms.ToArray()); Assert.AreEqual(expected, bson); } [Test] public void WriteBytes() { byte[] data = Encoding.UTF8.GetBytes("Hello world!"); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteValue("a"); writer.WriteValue("b"); writer.WriteValue(data); writer.WriteEndArray(); writer.Flush(); ms.Seek(0, SeekOrigin.Begin); string expected = "2B-00-00-00-02-30-00-02-00-00-00-61-00-02-31-00-02-00-00-00-62-00-05-32-00-0C-00-00-00-00-48-65-6C-6C-6F-20-77-6F-72-6C-64-21-00"; string bson = BytesToHex(ms.ToArray()); Assert.AreEqual(expected, bson); BsonReader reader = new BsonReader(new MemoryStream(ms.ToArray())); reader.ReadRootValueAsArray = true; reader.Read(); reader.Read(); reader.Read(); reader.Read(); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); CollectionAssert.AreEquivalent(data, (byte[])reader.Value); } [Test] public void WriteNestedArray() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("_id"); writer.WriteValue(HexToBytes("4A-78-93-79-17-22-00-00-00-00-61-CF")); writer.WritePropertyName("a"); writer.WriteStartArray(); for (int i = 1; i <= 8; i++) { double value = (i != 5) ? Convert.ToDouble(i) : 5.78960446186581E+77d; writer.WriteValue(value); } writer.WriteEndArray(); writer.WritePropertyName("b"); writer.WriteValue("test"); writer.WriteEndObject(); writer.Flush(); ms.Seek(0, SeekOrigin.Begin); string expected = "87-00-00-00-05-5F-69-64-00-0C-00-00-00-00-4A-78-93-79-17-22-00-00-00-00-61-CF-04-61-00-5D-00-00-00-01-30-00-00-00-00-00-00-00-F0-3F-01-31-00-00-00-00-00-00-00-00-40-01-32-00-00-00-00-00-00-00-08-40-01-33-00-00-00-00-00-00-00-10-40-01-34-00-00-00-00-00-00-00-14-50-01-35-00-00-00-00-00-00-00-18-40-01-36-00-00-00-00-00-00-00-1C-40-01-37-00-00-00-00-00-00-00-20-40-00-02-62-00-05-00-00-00-74-65-73-74-00-00"; string bson = BytesToHex(ms.ToArray()); Assert.AreEqual(expected, bson); } [Test] public void WriteSerializedStore() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); Store s1 = new Store(); s1.Color = StoreColor.White; s1.Cost = 999.59m; s1.Employees = int.MaxValue - 1; s1.Open = true; s1.product.Add(new Product { ExpiryDate = new DateTime(2000, 9, 28, 3, 59, 58, DateTimeKind.Local), Name = "BSON!", Price = -0.1m, Sizes = new[] { "First", "Second" } }); s1.Establised = new DateTime(2000, 1, 1, 0, 0, 0, DateTimeKind.Local); JsonSerializer serializer = new JsonSerializer(); serializer.Serialize(writer, s1); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); Store s2 = (Store)serializer.Deserialize(reader, typeof(Store)); Assert.AreNotEqual(s1, s2); Assert.AreEqual(s1.Color, s2.Color); Assert.AreEqual(s1.Cost, s2.Cost); Assert.AreEqual(s1.Employees, s2.Employees); Assert.AreEqual(s1.Escape, s2.Escape); Assert.AreEqual(s1.Establised, s2.Establised); Assert.AreEqual(s1.Mottos.Count, s2.Mottos.Count); Assert.AreEqual(s1.Mottos.First(), s2.Mottos.First()); Assert.AreEqual(s1.Mottos.Last(), s2.Mottos.Last()); Assert.AreEqual(s1.Open, s2.Open); Assert.AreEqual(s1.product.Count, s2.product.Count); Assert.AreEqual(s1.RoomsPerFloor.Length, s2.RoomsPerFloor.Length); Assert.AreEqual(s1.Symbol, s2.Symbol); Assert.AreEqual(s1.Width, s2.Width); MemoryStream ms1 = new MemoryStream(); BsonWriter writer1 = new BsonWriter(ms1); serializer.Serialize(writer1, s1); CollectionAssert.AreEquivalent(ms.ToArray(), ms1.ToArray()); string s = JsonConvert.SerializeObject(s1); byte[] textData = Encoding.UTF8.GetBytes(s); int l1 = textData.Length; int l2 = ms.ToArray().Length; Console.WriteLine(l1); Console.WriteLine(l2); } [Test] public void WriteLargeStrings() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); StringBuilder largeStringBuilder = new StringBuilder(); for (int i = 0; i < 100; i++) { if (i > 0) largeStringBuilder.Append("-"); largeStringBuilder.Append(i.ToString(CultureInfo.InvariantCulture)); } string largeString = largeStringBuilder.ToString(); writer.WriteStartObject(); writer.WritePropertyName(largeString); writer.WriteValue(largeString); writer.WriteEndObject(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual("4E-02-00-00-02-30-2D-31-2D-32-2D-33-2D-34-2D-35-2D-36-2D-37-2D-38-2D-39-2D-31-30-2D-31-31-2D-31-32-2D-31-33-2D-31-34-2D-31-35-2D-31-36-2D-31-37-2D-31-38-2D-31-39-2D-32-30-2D-32-31-2D-32-32-2D-32-33-2D-32-34-2D-32-35-2D-32-36-2D-32-37-2D-32-38-2D-32-39-2D-33-30-2D-33-31-2D-33-32-2D-33-33-2D-33-34-2D-33-35-2D-33-36-2D-33-37-2D-33-38-2D-33-39-2D-34-30-2D-34-31-2D-34-32-2D-34-33-2D-34-34-2D-34-35-2D-34-36-2D-34-37-2D-34-38-2D-34-39-2D-35-30-2D-35-31-2D-35-32-2D-35-33-2D-35-34-2D-35-35-2D-35-36-2D-35-37-2D-35-38-2D-35-39-2D-36-30-2D-36-31-2D-36-32-2D-36-33-2D-36-34-2D-36-35-2D-36-36-2D-36-37-2D-36-38-2D-36-39-2D-37-30-2D-37-31-2D-37-32-2D-37-33-2D-37-34-2D-37-35-2D-37-36-2D-37-37-2D-37-38-2D-37-39-2D-38-30-2D-38-31-2D-38-32-2D-38-33-2D-38-34-2D-38-35-2D-38-36-2D-38-37-2D-38-38-2D-38-39-2D-39-30-2D-39-31-2D-39-32-2D-39-33-2D-39-34-2D-39-35-2D-39-36-2D-39-37-2D-39-38-2D-39-39-00-22-01-00-00-30-2D-31-2D-32-2D-33-2D-34-2D-35-2D-36-2D-37-2D-38-2D-39-2D-31-30-2D-31-31-2D-31-32-2D-31-33-2D-31-34-2D-31-35-2D-31-36-2D-31-37-2D-31-38-2D-31-39-2D-32-30-2D-32-31-2D-32-32-2D-32-33-2D-32-34-2D-32-35-2D-32-36-2D-32-37-2D-32-38-2D-32-39-2D-33-30-2D-33-31-2D-33-32-2D-33-33-2D-33-34-2D-33-35-2D-33-36-2D-33-37-2D-33-38-2D-33-39-2D-34-30-2D-34-31-2D-34-32-2D-34-33-2D-34-34-2D-34-35-2D-34-36-2D-34-37-2D-34-38-2D-34-39-2D-35-30-2D-35-31-2D-35-32-2D-35-33-2D-35-34-2D-35-35-2D-35-36-2D-35-37-2D-35-38-2D-35-39-2D-36-30-2D-36-31-2D-36-32-2D-36-33-2D-36-34-2D-36-35-2D-36-36-2D-36-37-2D-36-38-2D-36-39-2D-37-30-2D-37-31-2D-37-32-2D-37-33-2D-37-34-2D-37-35-2D-37-36-2D-37-37-2D-37-38-2D-37-39-2D-38-30-2D-38-31-2D-38-32-2D-38-33-2D-38-34-2D-38-35-2D-38-36-2D-38-37-2D-38-38-2D-38-39-2D-39-30-2D-39-31-2D-39-32-2D-39-33-2D-39-34-2D-39-35-2D-39-36-2D-39-37-2D-39-38-2D-39-39-00-00", bson); } [Test] public void SerializeGoogleGeoCode() { string json = @"{ ""name"": ""1600 Amphitheatre Parkway, Mountain View, CA, USA"", ""Status"": { ""code"": 200, ""request"": ""geocode"" }, ""Placemark"": [ { ""address"": ""1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA"", ""AddressDetails"": { ""Country"": { ""CountryNameCode"": ""US"", ""AdministrativeArea"": { ""AdministrativeAreaName"": ""CA"", ""SubAdministrativeArea"": { ""SubAdministrativeAreaName"": ""Santa Clara"", ""Locality"": { ""LocalityName"": ""Mountain View"", ""Thoroughfare"": { ""ThoroughfareName"": ""1600 Amphitheatre Pkwy"" }, ""PostalCode"": { ""PostalCodeNumber"": ""94043"" } } } } }, ""Accuracy"": 8 }, ""Point"": { ""coordinates"": [-122.083739, 37.423021, 0] } } ] }"; GoogleMapGeocoderStructure jsonGoogleMapGeocoder = JsonConvert.DeserializeObject(json); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); JsonSerializer serializer = new JsonSerializer(); serializer.Serialize(writer, jsonGoogleMapGeocoder); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); GoogleMapGeocoderStructure bsonGoogleMapGeocoder = (GoogleMapGeocoderStructure)serializer.Deserialize(reader, typeof(GoogleMapGeocoderStructure)); Assert.IsNotNull(bsonGoogleMapGeocoder); Assert.AreEqual("1600 Amphitheatre Parkway, Mountain View, CA, USA", bsonGoogleMapGeocoder.Name); Assert.AreEqual("200", bsonGoogleMapGeocoder.Status.Code); Assert.AreEqual("geocode", bsonGoogleMapGeocoder.Status.Request); IList placemarks = bsonGoogleMapGeocoder.Placemark; Assert.IsNotNull(placemarks); Assert.AreEqual(1, placemarks.Count); Placemark placemark = placemarks[0]; Assert.AreEqual("1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA", placemark.Address); Assert.AreEqual(8, placemark.AddressDetails.Accuracy); Assert.AreEqual("US", placemark.AddressDetails.Country.CountryNameCode); Assert.AreEqual("CA", placemark.AddressDetails.Country.AdministrativeArea.AdministrativeAreaName); Assert.AreEqual("Santa Clara", placemark.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.SubAdministrativeAreaName); Assert.AreEqual("Mountain View", placemark.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.LocalityName); Assert.AreEqual("1600 Amphitheatre Pkwy", placemark.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.Thoroughfare.ThoroughfareName); Assert.AreEqual("94043", placemark.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.PostalCode.PostalCodeNumber); Assert.AreEqual(-122.083739m, placemark.Point.Coordinates[0]); Assert.AreEqual(37.423021m, placemark.Point.Coordinates[1]); Assert.AreEqual(0m, placemark.Point.Coordinates[2]); } [Test] public void WriteEmptyStrings() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName(""); writer.WriteValue(""); writer.WriteEndObject(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual("0C-00-00-00-02-00-01-00-00-00-00-00", bson); } [Test] public void WriteComment() { ExceptionAssert.Throws(() => { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteComment("fail"); }, "Cannot write JSON comment as BSON. Path ''."); } [Test] public void WriteConstructor() { ExceptionAssert.Throws(() => { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteStartConstructor("fail"); }, "Cannot write JSON constructor as BSON. Path ''."); } [Test] public void WriteRaw() { ExceptionAssert.Throws(() => { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteRaw("fail"); }, "Cannot write raw JSON as BSON. Path ''."); } [Test] public void WriteRawValue() { ExceptionAssert.Throws(() => { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteRawValue("fail"); }, "Cannot write raw JSON as BSON. Path ''."); } [Test] public void Example() { Product p = new Product(); p.ExpiryDate = DateTime.Parse("2009-04-05T14:45:00Z"); p.Name = "Carlos' Spicy Wieners"; p.Price = 9.95m; p.Sizes = new[] { "Small", "Medium", "Large" }; MemoryStream ms = new MemoryStream(); JsonSerializer serializer = new JsonSerializer(); // serialize product to BSON BsonWriter writer = new BsonWriter(ms); serializer.Serialize(writer, p); Console.WriteLine(BitConverter.ToString(ms.ToArray())); // 7C-00-00-00-02-4E-61-6D-65-00-16-00-00-00-43-61-72-6C- // 6F-73-27-20-53-70-69-63-79-20-57-69-65-6E-65-72-73-00- // 09-45-78-70-69-72-79-44-61-74-65-00-E0-51-BD-76-20-01- // 00-00-01-50-72-69-63-65-00-66-66-66-66-66-E6-23-40-04- // 53-69-7A-65-73-00-2D-00-00-00-02-30-00-06-00-00-00-53- // 6D-61-6C-6C-00-02-31-00-07-00-00-00-4D-65-64-69-75-6D- // 00-02-32-00-06-00-00-00-4C-61-72-67-65-00-00-00 ms.Seek(0, SeekOrigin.Begin); // deserialize product from BSON BsonReader reader = new BsonReader(ms); Product deserializedProduct = serializer.Deserialize(reader); Console.WriteLine(deserializedProduct.Name); // Carlos' Spicy Wieners Assert.AreEqual("Carlos' Spicy Wieners", deserializedProduct.Name); Assert.AreEqual(9.95m, deserializedProduct.Price); Assert.AreEqual(3, deserializedProduct.Sizes.Length); } [Test] public void WriteOid() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); byte[] oid = new byte[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }; writer.WriteStartObject(); writer.WritePropertyName("_oid"); writer.WriteObjectId(oid); writer.WriteEndObject(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual("17-00-00-00-07-5F-6F-69-64-00-01-02-03-04-05-06-07-08-09-0A-0B-0C-00", bson); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); CollectionAssert.AreEquivalent(oid, (byte[])reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void WriteOidPlusContent() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("_id"); writer.WriteObjectId(HexToBytes("4ABBED9D1D8B0F0218000001")); writer.WritePropertyName("test"); writer.WriteValue("1234£56"); writer.WriteEndObject(); byte[] expected = HexToBytes("29000000075F6964004ABBED9D1D8B0F02180000010274657374000900000031323334C2A335360000"); CollectionAssert.AreEquivalent(expected, ms.ToArray()); } [Test] public void WriteRegexPlusContent() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("regex"); writer.WriteRegex("abc", "i"); writer.WritePropertyName("test"); writer.WriteRegex(string.Empty, null); writer.WriteEndObject(); byte[] expected = HexToBytes("1A-00-00-00-0B-72-65-67-65-78-00-61-62-63-00-69-00-0B-74-65-73-74-00-00-00-00"); CollectionAssert.AreEquivalent(expected, ms.ToArray()); } [Test] public void SerializeEmptyAndNullStrings() { Product p = new Product(); p.ExpiryDate = DateTime.Parse("2009-04-05T14:45:00Z"); p.Name = null; p.Price = 9.95m; p.Sizes = new[] { "Small", "", null }; MemoryStream ms = new MemoryStream(); JsonSerializer serializer = new JsonSerializer(); BsonWriter writer = new BsonWriter(ms); serializer.Serialize(writer, p); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); Product deserializedProduct = serializer.Deserialize(reader); Console.WriteLine(deserializedProduct.Name); Assert.AreEqual(null, deserializedProduct.Name); Assert.AreEqual(9.95m, deserializedProduct.Price); Assert.AreEqual(3, deserializedProduct.Sizes.Length); Assert.AreEqual("Small", deserializedProduct.Sizes[0]); Assert.AreEqual("", deserializedProduct.Sizes[1]); Assert.AreEqual(null, deserializedProduct.Sizes[2]); } [Test] public void WriteReadEmptyAndNullStrings() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteValue("Content!"); writer.WriteValue(""); writer.WriteValue((string)null); writer.WriteEndArray(); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); reader.ReadRootValueAsArray = true; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("Content!", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.AreEqual(null, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void WriteDateTimes() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.DateTimeKindHandling = DateTimeKind.Unspecified; writer.WriteStartArray(); writer.WriteValue(new DateTime(2000, 10, 12, 20, 55, 0, DateTimeKind.Utc)); writer.WriteValue(new DateTime(2000, 10, 12, 20, 55, 0, DateTimeKind.Local)); writer.WriteValue(new DateTime(2000, 10, 12, 20, 55, 0, DateTimeKind.Unspecified)); writer.WriteEndArray(); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); reader.ReadRootValueAsArray = true; reader.DateTimeKindHandling = DateTimeKind.Utc; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(new DateTime(2000, 10, 12, 20, 55, 0, DateTimeKind.Utc), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(new DateTime(2000, 10, 12, 20, 55, 0, DateTimeKind.Utc), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(new DateTime(2000, 10, 12, 20, 55, 0, DateTimeKind.Utc), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void WriteValueOutsideOfObjectOrArray() { ExceptionAssert.Throws(() => { MemoryStream stream = new MemoryStream(); using (BsonWriter writer = new BsonWriter(stream)) { writer.WriteValue("test"); writer.Flush(); } }, "Error writing String value. BSON must start with an Object or Array. Path ''."); } [Test] public void DateTimeZoneHandling() { MemoryStream ms = new MemoryStream(); JsonWriter writer = new BsonWriter(ms) { DateTimeZoneHandling = Json.DateTimeZoneHandling.Utc }; writer.WriteStartArray(); writer.WriteValue(new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Unspecified)); writer.WriteEndArray(); Assert.AreEqual("10-00-00-00-09-30-00-C8-88-07-6B-DC-00-00-00-00", (BitConverter.ToString(ms.ToArray()))); } public class RegexTestClass { public Regex Regex { get; set; } } [Test] public void SerializeDeserializeRegex() { Regex r1 = new Regex("(hi)", RegexOptions.ExplicitCapture | RegexOptions.IgnoreCase); RegexTestClass c = new RegexTestClass { Regex = r1 }; MemoryStream ms = new MemoryStream(); JsonSerializer serializer = new JsonSerializer(); BsonWriter writer = new BsonWriter(ms); serializer.Serialize(writer, c); string hex = BitConverter.ToString(ms.ToArray()); Assert.AreEqual("15-00-00-00-0B-52-65-67-65-78-00-28-68-69-29-00-69-75-78-00-00", hex); JObject o = (JObject)JObject.ReadFrom(new BsonReader(new MemoryStream(ms.ToArray()))); Console.WriteLine(o.ToString()); //{ // "Regex": "/(hi)/iux" //} } [Test] public void SerializeByteArray_ErrorWhenTopLevel() { byte[] b = Encoding.UTF8.GetBytes("Hello world"); MemoryStream ms = new MemoryStream(); JsonSerializer serializer = new JsonSerializer(); BsonWriter writer = new BsonWriter(ms); ExceptionAssert.Throws(() => { serializer.Serialize(writer, b); }, "Error writing Binary value. BSON must start with an Object or Array. Path ''."); } public class GuidTestClass { public Guid AGuid { get; set; } } public class StringTestClass { public string AGuid { get; set; } } [Test] public void WriteReadGuid() { GuidTestClass c = new GuidTestClass(); c.AGuid = new Guid("af45dccf-df13-44fe-82be-6212c09eda84"); MemoryStream ms = new MemoryStream(); JsonSerializer serializer = new JsonSerializer(); BsonWriter writer = new BsonWriter(ms); serializer.Serialize(writer, c); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); GuidTestClass c2 = serializer.Deserialize(reader); Assert.AreEqual(c.AGuid, c2.AGuid); } [Test] public void WriteStringReadGuid() { StringTestClass c = new StringTestClass(); c.AGuid = new Guid("af45dccf-df13-44fe-82be-6212c09eda84").ToString(); MemoryStream ms = new MemoryStream(); JsonSerializer serializer = new JsonSerializer(); BsonWriter writer = new BsonWriter(ms); serializer.Serialize(writer, c); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); GuidTestClass c2 = serializer.Deserialize(reader); Assert.AreEqual(c.AGuid, c2.AGuid.ToString()); } #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void WriteBigInteger() { BigInteger i = BigInteger.Parse("1999999999999999999999999999999999999999999999999999999999990"); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("Blah"); writer.WriteValue(i); writer.WriteEndObject(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual("2A-00-00-00-05-42-6C-61-68-00-1A-00-00-00-00-F6-FF-FF-FF-FF-FF-FF-1F-B2-21-CB-28-59-84-C4-AE-03-8A-44-34-2F-4C-4E-9E-3E-01-00", bson); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); CollectionAssert.AreEqual(new byte[] { 246, 255, 255, 255, 255, 255, 255, 31, 178, 33, 203, 40, 89, 132, 196, 174, 3, 138, 68, 52, 47, 76, 78, 158, 62, 1 }, (byte[])reader.Value); Assert.AreEqual(i, new BigInteger((byte[])reader.Value)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } #endif } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Bson/BsonReaderTests.cs0000664000175000017500000021571312454416117026647 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.Reflection; using System.Runtime.Serialization; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif using System.Text; using System.Text.RegularExpressions; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Bson; using System.IO; using Newtonsoft.Json.Tests.Serialization; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Bson { [TestFixture] public class BsonReaderTests : TestFixtureBase { private const char Euro = '\u20ac'; #if !NETFX_CORE [Test] public void DeserializeLargeBsonObject() { byte[] data = System.IO.File.ReadAllBytes(@"SpaceShipV2.bson"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); JObject o = (JObject)JToken.ReadFrom(reader); Assert.AreEqual("1", (string)o["$id"]); } #endif public class MyTest { public DateTime TimeStamp { get; set; } public string UserName { get; set; } public MemoryStream Blob { get; set; } } public void Bson_SupportMultipleContent() { MemoryStream myStream = new MemoryStream(); BsonWriter writer = new BsonWriter(myStream); JsonSerializer serializer = new JsonSerializer(); MyTest tst1 = new MyTest { TimeStamp = new DateTime(2000, 12, 20, 12, 59, 59, DateTimeKind.Utc), UserName = "Joe Doe" }; MyTest tst2 = new MyTest { TimeStamp = new DateTime(2010, 12, 20, 12, 59, 59, DateTimeKind.Utc), UserName = "Bob" }; serializer.Serialize(writer, tst1); serializer.Serialize(writer, tst2); myStream.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(myStream) { SupportMultipleContent = true, DateTimeKindHandling = DateTimeKind.Utc }; MyTest tst1A = serializer.Deserialize(reader); reader.Read(); MyTest tst2A = serializer.Deserialize(reader); Assert.AreEqual(tst1.UserName, tst1A.UserName); Assert.AreEqual(tst1.TimeStamp, tst1A.TimeStamp); Assert.AreEqual(tst2.UserName, tst2A.UserName); Assert.AreEqual(tst2.TimeStamp, tst2A.TimeStamp); } [Test] public void CloseInput() { MemoryStream ms = new MemoryStream(); BsonReader reader = new BsonReader(ms); Assert.IsTrue(ms.CanRead); reader.Close(); Assert.IsFalse(ms.CanRead); ms = new MemoryStream(); reader = new BsonReader(ms) { CloseInput = false }; Assert.IsTrue(ms.CanRead); reader.Close(); Assert.IsTrue(ms.CanRead); } [Test] public void ReadSingleObject() { byte[] data = HexToBytes("0F-00-00-00-10-42-6C-61-68-00-01-00-00-00-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Blah", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(1L, reader.Value); Assert.AreEqual(typeof(long), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadGuid_Text() { byte[] data = HexToBytes("31-00-00-00-02-30-00-25-00-00-00-64-38-32-31-65-65-64-37-2D-34-62-35-63-2D-34-33-63-39-2D-38-61-63-32-2D-36-39-32-38-65-35-37-39-62-37-30-35-00-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); reader.ReadRootValueAsArray = true; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("d821eed7-4b5c-43c9-8ac2-6928e579b705", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); ms = new MemoryStream(data); reader = new BsonReader(ms); reader.ReadRootValueAsArray = true; JsonSerializer serializer = new JsonSerializer(); IList l = serializer.Deserialize>(reader); Assert.AreEqual(1, l.Count); Assert.AreEqual(new Guid("D821EED7-4B5C-43C9-8AC2-6928E579B705"), l[0]); } [Test] public void ReadGuid_Bytes() { byte[] data = HexToBytes("1D-00-00-00-05-30-00-10-00-00-00-04-D7-EE-21-D8-5C-4B-C9-43-8A-C2-69-28-E5-79-B7-05-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); reader.ReadRootValueAsArray = true; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Guid g = new Guid("D821EED7-4B5C-43C9-8AC2-6928E579B705"); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); Assert.AreEqual(g, reader.Value); Assert.AreEqual(typeof(Guid), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); ms = new MemoryStream(data); reader = new BsonReader(ms); reader.ReadRootValueAsArray = true; JsonSerializer serializer = new JsonSerializer(); IList l = serializer.Deserialize>(reader); Assert.AreEqual(1, l.Count); Assert.AreEqual(g, l[0]); } [Test] public void ReadDouble() { byte[] data = HexToBytes("10-00-00-00-01-30-00-8F-C2-F5-28-5C-FF-58-40-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); reader.ReadRootValueAsArray = true; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(99.99d, reader.Value); Assert.AreEqual(typeof(double), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadDouble_Decimal() { byte[] data = HexToBytes("10-00-00-00-01-30-00-8F-C2-F5-28-5C-FF-58-40-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); reader.FloatParseHandling = FloatParseHandling.Decimal; reader.ReadRootValueAsArray = true; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(99.99m, reader.Value); Assert.AreEqual(typeof(decimal), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadValues() { byte[] data = HexToBytes("8C-00-00-00-12-30-00-FF-FF-FF-FF-FF-FF-FF-7F-12-31-00-FF-FF-FF-FF-FF-FF-FF-7F-10-32-00-FF-FF-FF-7F-10-33-00-FF-FF-FF-7F-10-34-00-FF-00-00-00-10-35-00-7F-00-00-00-02-36-00-02-00-00-00-61-00-01-37-00-00-00-00-00-00-00-F0-45-01-38-00-FF-FF-FF-FF-FF-FF-EF-7F-01-39-00-00-00-00-E0-FF-FF-EF-47-08-31-30-00-01-05-31-31-00-05-00-00-00-02-00-01-02-03-04-09-31-32-00-40-C5-E2-BA-E3-00-00-00-09-31-33-00-40-C5-E2-BA-E3-00-00-00-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); #pragma warning disable 612,618 reader.JsonNet35BinaryCompatibility = true; #pragma warning restore 612,618 reader.ReadRootValueAsArray = true; reader.DateTimeKindHandling = DateTimeKind.Utc; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(long.MaxValue, reader.Value); Assert.AreEqual(typeof(long), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(long.MaxValue, reader.Value); Assert.AreEqual(typeof(long), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual((long)int.MaxValue, reader.Value); Assert.AreEqual(typeof(long), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual((long)int.MaxValue, reader.Value); Assert.AreEqual(typeof(long), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual((long)byte.MaxValue, reader.Value); Assert.AreEqual(typeof(long), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual((long)sbyte.MaxValue, reader.Value); Assert.AreEqual(typeof(long), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("a", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual((double)decimal.MaxValue, reader.Value); Assert.AreEqual(typeof(double), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual((double)double.MaxValue, reader.Value); Assert.AreEqual(typeof(double), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual((double)float.MaxValue, reader.Value); Assert.AreEqual(typeof(double), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.AreEqual(true, reader.Value); Assert.AreEqual(typeof(bool), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); CollectionAssert.AreEquivalent(new byte[] { 0, 1, 2, 3, 4 }, (byte[])reader.Value); Assert.AreEqual(typeof(byte[]), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(new DateTime(2000, 12, 29, 12, 30, 0, DateTimeKind.Utc), reader.Value); Assert.AreEqual(typeof(DateTime), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(new DateTime(2000, 12, 29, 12, 30, 0, DateTimeKind.Utc), reader.Value); Assert.AreEqual(typeof(DateTime), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadObjectBsonFromSite() { byte[] data = HexToBytes("20-00-00-00-02-30-00-02-00-00-00-61-00-02-31-00-02-00-00-00-62-00-02-32-00-02-00-00-00-63-00-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("0", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("a", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("1", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("b", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("2", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("c", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadArrayBsonFromSite() { byte[] data = HexToBytes("20-00-00-00-02-30-00-02-00-00-00-61-00-02-31-00-02-00-00-00-62-00-02-32-00-02-00-00-00-63-00-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.AreEqual(false, reader.ReadRootValueAsArray); Assert.AreEqual(DateTimeKind.Local, reader.DateTimeKindHandling); reader.ReadRootValueAsArray = true; reader.DateTimeKindHandling = DateTimeKind.Utc; Assert.AreEqual(true, reader.ReadRootValueAsArray); Assert.AreEqual(DateTimeKind.Utc, reader.DateTimeKindHandling); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("a", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("b", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("c", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadAsInt32BadString() { ExceptionAssert.Throws(() => { byte[] data = HexToBytes("20-00-00-00-02-30-00-02-00-00-00-61-00-02-31-00-02-00-00-00-62-00-02-32-00-02-00-00-00-63-00-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.AreEqual(false, reader.ReadRootValueAsArray); Assert.AreEqual(DateTimeKind.Local, reader.DateTimeKindHandling); reader.ReadRootValueAsArray = true; reader.DateTimeKindHandling = DateTimeKind.Utc; Assert.AreEqual(true, reader.ReadRootValueAsArray); Assert.AreEqual(DateTimeKind.Utc, reader.DateTimeKindHandling); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); reader.ReadAsInt32(); }, "Could not convert string to integer: a. Path '[0]'."); } [Test] public void ReadBytes() { byte[] data = HexToBytes("2B-00-00-00-02-30-00-02-00-00-00-61-00-02-31-00-02-00-00-00-62-00-05-32-00-0C-00-00-00-02-48-65-6C-6C-6F-20-77-6F-72-6C-64-21-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms, true, DateTimeKind.Utc); #pragma warning disable 612,618 reader.JsonNet35BinaryCompatibility = true; #pragma warning restore 612,618 Assert.AreEqual(true, reader.ReadRootValueAsArray); Assert.AreEqual(DateTimeKind.Utc, reader.DateTimeKindHandling); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("a", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("b", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); byte[] encodedStringData = reader.ReadAsBytes(); Assert.IsNotNull(encodedStringData); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); Assert.AreEqual(encodedStringData, reader.Value); Assert.AreEqual(typeof(byte[]), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); string decodedString = Encoding.UTF8.GetString(encodedStringData, 0, encodedStringData.Length); Assert.AreEqual("Hello world!", decodedString); } [Test] public void ReadOid() { byte[] data = HexToBytes("29000000075F6964004ABBED9D1D8B0F02180000010274657374000900000031323334C2A335360000"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("_id", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); CollectionAssert.AreEquivalent(HexToBytes("4ABBED9D1D8B0F0218000001"), (byte[])reader.Value); Assert.AreEqual(typeof(byte[]), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("test", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("1234£56", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadNestedArray() { string hexdoc = "82-00-00-00-07-5F-69-64-00-4A-78-93-79-17-22-00-00-00-00-61-CF-04-61-00-5D-00-00-00-01-30-00-00-00-00-00-00-00-F0-3F-01-31-00-00-00-00-00-00-00-00-40-01-32-00-00-00-00-00-00-00-08-40-01-33-00-00-00-00-00-00-00-10-40-01-34-00-00-00-00-00-00-00-14-50-01-35-00-00-00-00-00-00-00-18-40-01-36-00-00-00-00-00-00-00-1C-40-01-37-00-00-00-00-00-00-00-20-40-00-02-62-00-05-00-00-00-74-65-73-74-00-00"; byte[] data = HexToBytes(hexdoc); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("_id", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); CollectionAssert.AreEquivalent(HexToBytes("4A-78-93-79-17-22-00-00-00-00-61-CF"), (byte[])reader.Value); Assert.AreEqual(typeof(byte[]), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("a", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); for (int i = 1; i <= 8; i++) { Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); double value = (i != 5) ? Convert.ToDouble(i) : 5.78960446186581E+77d; Assert.AreEqual(value, reader.Value); } Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("b", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("test", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadNestedArrayIntoLinq() { string hexdoc = "87-00-00-00-05-5F-69-64-00-0C-00-00-00-00-4A-78-93-79-17-22-00-00-00-00-61-CF-04-61-00-5D-00-00-00-01-30-00-00-00-00-00-00-00-F0-3F-01-31-00-00-00-00-00-00-00-00-40-01-32-00-00-00-00-00-00-00-08-40-01-33-00-00-00-00-00-00-00-10-40-01-34-00-00-00-00-00-00-00-14-50-01-35-00-00-00-00-00-00-00-18-40-01-36-00-00-00-00-00-00-00-1C-40-01-37-00-00-00-00-00-00-00-20-40-00-02-62-00-05-00-00-00-74-65-73-74-00-00"; byte[] data = HexToBytes(hexdoc); BsonReader reader = new BsonReader(new MemoryStream(data)); #pragma warning disable 612,618 reader.JsonNet35BinaryCompatibility = true; #pragma warning restore 612,618 JObject o = (JObject)JToken.ReadFrom(reader); Assert.AreEqual(3, o.Count); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); o.WriteTo(writer); writer.Flush(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual(hexdoc, bson); } [Test] public void OidAndBytesAreEqual() { byte[] data1 = HexToBytes( "82-00-00-00-07-5F-69-64-00-4A-78-93-79-17-22-00-00-00-00-61-CF-04-61-00-5D-00-00-00-01-30-00-00-00-00-00-00-00-F0-3F-01-31-00-00-00-00-00-00-00-00-40-01-32-00-00-00-00-00-00-00-08-40-01-33-00-00-00-00-00-00-00-10-40-01-34-00-00-00-00-00-00-00-14-50-01-35-00-00-00-00-00-00-00-18-40-01-36-00-00-00-00-00-00-00-1C-40-01-37-00-00-00-00-00-00-00-20-40-00-02-62-00-05-00-00-00-74-65-73-74-00-00"); BsonReader reader1 = new BsonReader(new MemoryStream(data1)); #pragma warning disable 612,618 reader1.JsonNet35BinaryCompatibility = true; #pragma warning restore 612,618 // oid JObject o1 = (JObject)JToken.ReadFrom(reader1); byte[] data2 = HexToBytes( "87-00-00-00-05-5F-69-64-00-0C-00-00-00-02-4A-78-93-79-17-22-00-00-00-00-61-CF-04-61-00-5D-00-00-00-01-30-00-00-00-00-00-00-00-F0-3F-01-31-00-00-00-00-00-00-00-00-40-01-32-00-00-00-00-00-00-00-08-40-01-33-00-00-00-00-00-00-00-10-40-01-34-00-00-00-00-00-00-00-14-50-01-35-00-00-00-00-00-00-00-18-40-01-36-00-00-00-00-00-00-00-1C-40-01-37-00-00-00-00-00-00-00-20-40-00-02-62-00-05-00-00-00-74-65-73-74-00-00"); BsonReader reader2 = new BsonReader(new MemoryStream(data2)); #pragma warning disable 612,618 reader2.JsonNet35BinaryCompatibility = true; #pragma warning restore 612,618 // bytes JObject o2 = (JObject)JToken.ReadFrom(reader2); Assert.IsTrue(o1.DeepEquals(o2)); } [Test] public void ReadRegex() { string hexdoc = "15-00-00-00-0B-72-65-67-65-78-00-74-65-73-74-00-67-69-6D-00-00"; byte[] data = HexToBytes(hexdoc); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("regex", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(@"/test/gim", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadCode() { string hexdoc = "1A-00-00-00-0D-63-6F-64-65-00-0B-00-00-00-49-20-61-6D-20-63-6F-64-65-21-00-00"; byte[] data = HexToBytes(hexdoc); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("code", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(@"I am code!", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadUndefined() { string hexdoc = "10-00-00-00-06-75-6E-64-65-66-69-6E-65-64-00-00"; byte[] data = HexToBytes(hexdoc); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("undefined", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Undefined, reader.TokenType); Assert.AreEqual(null, reader.Value); Assert.AreEqual(null, reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadLong() { string hexdoc = "13-00-00-00-12-6C-6F-6E-67-00-FF-FF-FF-FF-FF-FF-FF-7F-00"; byte[] data = HexToBytes(hexdoc); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("long", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(long.MaxValue, reader.Value); Assert.AreEqual(typeof(long), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadReference() { string hexdoc = "1E-00-00-00-0C-6F-69-64-00-04-00-00-00-6F-69-64-00-01-02-03-04-05-06-07-08-09-0A-0B-0C-00"; byte[] data = HexToBytes(hexdoc); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("oid", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("$ref", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("oid", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("$id", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); CollectionAssert.AreEquivalent(new byte[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }, (byte[])reader.Value); Assert.AreEqual(typeof(byte[]), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadCodeWScope() { string hexdoc = "75-00-00-00-0F-63-6F-64-65-57-69-74-68-53-63-6F-70-65-00-61-00-00-00-35-00-00-00-66-6F-72-20-28-69-6E-74-20-69-20-3D-20-30-3B-20-69-20-3C-20-31-30-30-30-3B-20-69-2B-2B-29-0D-0A-7B-0D-0A-20-20-61-6C-65-72-74-28-61-72-67-31-29-3B-0D-0A-7D-00-24-00-00-00-02-61-72-67-31-00-15-00-00-00-4A-73-6F-6E-2E-4E-45-54-20-69-73-20-61-77-65-73-6F-6D-65-2E-00-00-00"; byte[] data = HexToBytes(hexdoc); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("codeWithScope", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("$code", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("for (int i = 0; i < 1000; i++)\r\n{\r\n alert(arg1);\r\n}", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("$scope", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("arg1", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("Json.NET is awesome.", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadEndOfStream() { BsonReader reader = new BsonReader(new MemoryStream()); Assert.IsFalse(reader.Read()); } [Test] public void ReadLargeStrings() { string bson = "4E-02-00-00-02-30-2D-31-2D-32-2D-33-2D-34-2D-35-2D-36-2D-37-2D-38-2D-39-2D-31-30-2D-31-31-2D-31-32-2D-31-33-2D-31-34-2D-31-35-2D-31-36-2D-31-37-2D-31-38-2D-31-39-2D-32-30-2D-32-31-2D-32-32-2D-32-33-2D-32-34-2D-32-35-2D-32-36-2D-32-37-2D-32-38-2D-32-39-2D-33-30-2D-33-31-2D-33-32-2D-33-33-2D-33-34-2D-33-35-2D-33-36-2D-33-37-2D-33-38-2D-33-39-2D-34-30-2D-34-31-2D-34-32-2D-34-33-2D-34-34-2D-34-35-2D-34-36-2D-34-37-2D-34-38-2D-34-39-2D-35-30-2D-35-31-2D-35-32-2D-35-33-2D-35-34-2D-35-35-2D-35-36-2D-35-37-2D-35-38-2D-35-39-2D-36-30-2D-36-31-2D-36-32-2D-36-33-2D-36-34-2D-36-35-2D-36-36-2D-36-37-2D-36-38-2D-36-39-2D-37-30-2D-37-31-2D-37-32-2D-37-33-2D-37-34-2D-37-35-2D-37-36-2D-37-37-2D-37-38-2D-37-39-2D-38-30-2D-38-31-2D-38-32-2D-38-33-2D-38-34-2D-38-35-2D-38-36-2D-38-37-2D-38-38-2D-38-39-2D-39-30-2D-39-31-2D-39-32-2D-39-33-2D-39-34-2D-39-35-2D-39-36-2D-39-37-2D-39-38-2D-39-39-00-22-01-00-00-30-2D-31-2D-32-2D-33-2D-34-2D-35-2D-36-2D-37-2D-38-2D-39-2D-31-30-2D-31-31-2D-31-32-2D-31-33-2D-31-34-2D-31-35-2D-31-36-2D-31-37-2D-31-38-2D-31-39-2D-32-30-2D-32-31-2D-32-32-2D-32-33-2D-32-34-2D-32-35-2D-32-36-2D-32-37-2D-32-38-2D-32-39-2D-33-30-2D-33-31-2D-33-32-2D-33-33-2D-33-34-2D-33-35-2D-33-36-2D-33-37-2D-33-38-2D-33-39-2D-34-30-2D-34-31-2D-34-32-2D-34-33-2D-34-34-2D-34-35-2D-34-36-2D-34-37-2D-34-38-2D-34-39-2D-35-30-2D-35-31-2D-35-32-2D-35-33-2D-35-34-2D-35-35-2D-35-36-2D-35-37-2D-35-38-2D-35-39-2D-36-30-2D-36-31-2D-36-32-2D-36-33-2D-36-34-2D-36-35-2D-36-36-2D-36-37-2D-36-38-2D-36-39-2D-37-30-2D-37-31-2D-37-32-2D-37-33-2D-37-34-2D-37-35-2D-37-36-2D-37-37-2D-37-38-2D-37-39-2D-38-30-2D-38-31-2D-38-32-2D-38-33-2D-38-34-2D-38-35-2D-38-36-2D-38-37-2D-38-38-2D-38-39-2D-39-30-2D-39-31-2D-39-32-2D-39-33-2D-39-34-2D-39-35-2D-39-36-2D-39-37-2D-39-38-2D-39-39-00-00"; BsonReader reader = new BsonReader(new MemoryStream(HexToBytes(bson))); StringBuilder largeStringBuilder = new StringBuilder(); for (int i = 0; i < 100; i++) { if (i > 0) largeStringBuilder.Append("-"); largeStringBuilder.Append(i.ToString(CultureInfo.InvariantCulture)); } string largeString = largeStringBuilder.ToString(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual(largeString, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(largeString, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadEmptyStrings() { string bson = "0C-00-00-00-02-00-01-00-00-00-00-00"; BsonReader reader = new BsonReader(new MemoryStream(HexToBytes(bson))); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void WriteAndReadEmptyListsAndDictionaries() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("Arguments"); writer.WriteStartObject(); writer.WriteEndObject(); writer.WritePropertyName("List"); writer.WriteStartArray(); writer.WriteEndArray(); writer.WriteEndObject(); string bson = BitConverter.ToString(ms.ToArray()); Assert.AreEqual("20-00-00-00-03-41-72-67-75-6D-65-6E-74-73-00-05-00-00-00-00-04-4C-69-73-74-00-05-00-00-00-00-00", bson); BsonReader reader = new BsonReader(new MemoryStream(HexToBytes(bson))); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Arguments", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("List", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void DateTimeKindHandling() { DateTime value = new DateTime(2000, 1, 1, 0, 0, 0, DateTimeKind.Utc); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("DateTime"); writer.WriteValue(value); writer.WriteEndObject(); byte[] bson = ms.ToArray(); JObject o; BsonReader reader; reader = new BsonReader(new MemoryStream(bson), false, DateTimeKind.Utc); o = (JObject)JToken.ReadFrom(reader); Assert.AreEqual(value, (DateTime)o["DateTime"]); reader = new BsonReader(new MemoryStream(bson), false, DateTimeKind.Local); o = (JObject)JToken.ReadFrom(reader); Assert.AreEqual(value.ToLocalTime(), (DateTime)o["DateTime"]); reader = new BsonReader(new MemoryStream(bson), false, DateTimeKind.Unspecified); o = (JObject)JToken.ReadFrom(reader); Assert.AreEqual(DateTime.SpecifyKind(value, DateTimeKind.Unspecified), (DateTime)o["DateTime"]); } [Test] public void UnspecifiedDateTimeKindHandling() { DateTime value = new DateTime(2000, 1, 1, 0, 0, 0, DateTimeKind.Unspecified); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.DateTimeKindHandling = DateTimeKind.Unspecified; writer.WriteStartObject(); writer.WritePropertyName("DateTime"); writer.WriteValue(value); writer.WriteEndObject(); byte[] bson = ms.ToArray(); JObject o; BsonReader reader; reader = new BsonReader(new MemoryStream(bson), false, DateTimeKind.Unspecified); o = (JObject)JToken.ReadFrom(reader); Assert.AreEqual(value, (DateTime)o["DateTime"]); } [Test] public void LocalDateTimeKindHandling() { DateTime value = new DateTime(2000, 1, 1, 0, 0, 0, DateTimeKind.Local); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("DateTime"); writer.WriteValue(value); writer.WriteEndObject(); byte[] bson = ms.ToArray(); JObject o; BsonReader reader; reader = new BsonReader(new MemoryStream(bson), false, DateTimeKind.Local); o = (JObject)JToken.ReadFrom(reader); Assert.AreEqual(value, (DateTime)o["DateTime"]); } private string WriteAndReadStringValue(string val) { MemoryStream ms = new MemoryStream(); BsonWriter bs = new BsonWriter(ms); bs.WriteStartObject(); bs.WritePropertyName("StringValue"); bs.WriteValue(val); bs.WriteEnd(); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); // object reader.Read(); // property name reader.Read(); // string reader.Read(); return (string)reader.Value; } private string WriteAndReadStringPropertyName(string val) { MemoryStream ms = new MemoryStream(); BsonWriter bs = new BsonWriter(ms); bs.WriteStartObject(); bs.WritePropertyName(val); bs.WriteValue("Dummy"); bs.WriteEnd(); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); // object reader.Read(); // property name reader.Read(); return (string)reader.Value; } [Test] public void TestReadLenStringValueShortTripleByte() { StringBuilder sb = new StringBuilder(); //sb.Append('1',127); //first char of euro at the end of the boundry. //sb.Append(euro, 5); //sb.Append('1',128); sb.Append(Euro); string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringValue(expected)); } [Test] public void TestReadLenStringValueTripleByteCharBufferBoundry0() { StringBuilder sb = new StringBuilder(); sb.Append('1', 127); //first char of euro at the end of the boundry. sb.Append(Euro, 5); sb.Append('1', 128); sb.Append(Euro); string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringValue(expected)); } [Test] public void TestReadLenStringValueTripleByteCharBufferBoundry1() { StringBuilder sb = new StringBuilder(); sb.Append('1', 126); sb.Append(Euro, 5); //middle char of euro at the end of the boundry. sb.Append('1', 128); sb.Append(Euro); string expected = sb.ToString(); string result = WriteAndReadStringValue(expected); Assert.AreEqual(expected, result); } [Test] public void TestReadLenStringValueTripleByteCharOne() { StringBuilder sb = new StringBuilder(); sb.Append(Euro, 1); //Just one triple byte char in the string. string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringValue(expected)); } [Test] public void TestReadLenStringValueTripleByteCharBufferBoundry2() { StringBuilder sb = new StringBuilder(); sb.Append('1', 125); sb.Append(Euro, 5); //last char of the eruo at the end of the boundry. sb.Append('1', 128); sb.Append(Euro); string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringValue(expected)); } [Test] public void TestReadStringValue() { string expected = "test"; Assert.AreEqual(expected, WriteAndReadStringValue(expected)); } [Test] public void TestReadStringValueLong() { StringBuilder sb = new StringBuilder(); sb.Append('t', 150); string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringValue(expected)); } [Test] public void TestReadStringPropertyNameShortTripleByte() { StringBuilder sb = new StringBuilder(); //sb.Append('1',127); //first char of euro at the end of the boundry. //sb.Append(euro, 5); //sb.Append('1',128); sb.Append(Euro); string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringPropertyName(expected)); } [Test] public void TestReadStringPropertyNameTripleByteCharBufferBoundry0() { StringBuilder sb = new StringBuilder(); sb.Append('1', 127); //first char of euro at the end of the boundry. sb.Append(Euro, 5); sb.Append('1', 128); sb.Append(Euro); string expected = sb.ToString(); string result = WriteAndReadStringPropertyName(expected); Assert.AreEqual(expected, result); } [Test] public void TestReadStringPropertyNameTripleByteCharBufferBoundry1() { StringBuilder sb = new StringBuilder(); sb.Append('1', 126); sb.Append(Euro, 5); //middle char of euro at the end of the boundry. sb.Append('1', 128); sb.Append(Euro); string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringPropertyName(expected)); } [Test] public void TestReadStringPropertyNameTripleByteCharOne() { StringBuilder sb = new StringBuilder(); sb.Append(Euro, 1); //Just one triple byte char in the string. string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringPropertyName(expected)); } [Test] public void TestReadStringPropertyNameTripleByteCharBufferBoundry2() { StringBuilder sb = new StringBuilder(); sb.Append('1', 125); sb.Append(Euro, 5); //last char of the eruo at the end of the boundry. sb.Append('1', 128); sb.Append(Euro); string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringPropertyName(expected)); } [Test] public void TestReadStringPropertyName() { string expected = "test"; Assert.AreEqual(expected, WriteAndReadStringPropertyName(expected)); } [Test] public void TestReadStringPropertyNameLong() { StringBuilder sb = new StringBuilder(); sb.Append('t', 150); string expected = sb.ToString(); Assert.AreEqual(expected, WriteAndReadStringPropertyName(expected)); } [Test] public void ReadRegexWithOptions() { string hexdoc = "1A-00-00-00-0B-72-65-67-65-78-00-61-62-63-00-69-00-0B-74-65-73-74-00-00-00-00"; byte[] data = HexToBytes(hexdoc); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("/abc/i", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("//", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void CanRoundTripStackOverflowData() { var doc = @"{ ""AboutMe"": ""

I'm the Director for Research and Development for ProPhoenix, a public safety software company. This position allows me to investigate new and existing technologies and incorporate them into our product line, with the end goal being to help public safety agencies to do their jobs more effeciently and safely.

\r\n\r\n

I'm an advocate for PowerShell, as I believe it encourages administrative best practices and allows developers to provide additional access to their applications, without needing to explicity write code for each administrative feature. Part of my advocacy for PowerShell includes my blog, appearances on various podcasts, and acting as a Community Director for PowerShellCommunity.Org

\r\n\r\n

I’m also a co-host of Mind of Root (a weekly audio podcast about systems administration, tech news, and topics).

\r\n"", ""WebsiteUrl"": ""http://blog.usepowershell.com"" }"; JObject parsed = JObject.Parse(doc); var memoryStream = new MemoryStream(); var bsonWriter = new BsonWriter(memoryStream); parsed.WriteTo(bsonWriter); bsonWriter.Flush(); memoryStream.Position = 0; BsonReader reader = new BsonReader(memoryStream); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("AboutMe", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("

I'm the Director for Research and Development for ProPhoenix, a public safety software company. This position allows me to investigate new and existing technologies and incorporate them into our product line, with the end goal being to help public safety agencies to do their jobs more effeciently and safely.

\r\n\r\n

I'm an advocate for PowerShell, as I believe it encourages administrative best practices and allows developers to provide additional access to their applications, without needing to explicity write code for each administrative feature. Part of my advocacy for PowerShell includes my blog, appearances on various podcasts, and acting as a Community Director for PowerShellCommunity.Org

\r\n\r\n

I’m also a co-host of Mind of Root (a weekly audio podcast about systems administration, tech news, and topics).

\r\n", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("WebsiteUrl", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("http://blog.usepowershell.com", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void MultibyteCharacterPropertyNamesAndStrings() { string json = @"{ ""ΕΝΤΟΛΗ ΧΧΧ ΧΧΧΧΧΧΧΧΧ ΤΑ ΠΡΩΤΑΣΦΑΛΙΣΤΗΡΙΑ ΠΟΥ ΔΕΝ ΕΧΟΥΝ ΥΠΟΛΟΙΠΟ ΝΑ ΤΑ ΣΤΕΛΝΟΥΜΕ ΑΠΕΥΘΕΙΑΣ ΣΤΟΥΣ ΠΕΛΑΤΕΣ"": ""ΕΝΤΟΛΗ ΧΧΧ ΧΧΧΧΧΧΧΧΧ ΤΑ ΠΡΩΤΑΣΦΑΛΙΣΤΗΡΙΑ ΠΟΥ ΔΕΝ ΕΧΟΥΝ ΥΠΟΛΟΙΠΟ ΝΑ ΤΑ ΣΤΕΛΝΟΥΜΕ ΑΠΕΥΘΕΙΑΣ ΣΤΟΥΣ ΠΕΛΑΤΕΣ"" }"; JObject parsed = JObject.Parse(json); var memoryStream = new MemoryStream(); var bsonWriter = new BsonWriter(memoryStream); parsed.WriteTo(bsonWriter); bsonWriter.Flush(); memoryStream.Position = 0; BsonReader reader = new BsonReader(memoryStream); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("ΕΝΤΟΛΗ ΧΧΧ ΧΧΧΧΧΧΧΧΧ ΤΑ ΠΡΩΤΑΣΦΑΛΙΣΤΗΡΙΑ ΠΟΥ ΔΕΝ ΕΧΟΥΝ ΥΠΟΛΟΙΠΟ ΝΑ ΤΑ ΣΤΕΛΝΟΥΜΕ ΑΠΕΥΘΕΙΑΣ ΣΤΟΥΣ ΠΕΛΑΤΕΣ", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("ΕΝΤΟΛΗ ΧΧΧ ΧΧΧΧΧΧΧΧΧ ΤΑ ΠΡΩΤΑΣΦΑΛΙΣΤΗΡΙΑ ΠΟΥ ΔΕΝ ΕΧΟΥΝ ΥΠΟΛΟΙΠΟ ΝΑ ΤΑ ΣΤΕΛΝΟΥΜΕ ΑΠΕΥΘΕΙΑΣ ΣΤΟΥΣ ΠΕΛΑΤΕΣ", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } public void UriGuidTimeSpanTestClassEmptyTest() { UriGuidTimeSpanTestClass c1 = new UriGuidTimeSpanTestClass(); var memoryStream = new MemoryStream(); var bsonWriter = new BsonWriter(memoryStream); JsonSerializer serializer = new JsonSerializer(); serializer.Serialize(bsonWriter, c1); bsonWriter.Flush(); memoryStream.Position = 0; var bsonReader = new BsonReader(memoryStream); UriGuidTimeSpanTestClass c2 = serializer.Deserialize(bsonReader); Assert.AreEqual(c1.Guid, c2.Guid); Assert.AreEqual(c1.NullableGuid, c2.NullableGuid); Assert.AreEqual(c1.TimeSpan, c2.TimeSpan); Assert.AreEqual(c1.NullableTimeSpan, c2.NullableTimeSpan); Assert.AreEqual(c1.Uri, c2.Uri); } public void UriGuidTimeSpanTestClassValuesTest() { UriGuidTimeSpanTestClass c1 = new UriGuidTimeSpanTestClass { Guid = new Guid("1924129C-F7E0-40F3-9607-9939C531395A"), NullableGuid = new Guid("9E9F3ADF-E017-4F72-91E0-617EBE85967D"), TimeSpan = TimeSpan.FromDays(1), NullableTimeSpan = TimeSpan.FromHours(1), Uri = new Uri("http://testuri.com") }; var memoryStream = new MemoryStream(); var bsonWriter = new BsonWriter(memoryStream); JsonSerializer serializer = new JsonSerializer(); serializer.Serialize(bsonWriter, c1); bsonWriter.Flush(); memoryStream.Position = 0; var bsonReader = new BsonReader(memoryStream); UriGuidTimeSpanTestClass c2 = serializer.Deserialize(bsonReader); Assert.AreEqual(c1.Guid, c2.Guid); Assert.AreEqual(c1.NullableGuid, c2.NullableGuid); Assert.AreEqual(c1.TimeSpan, c2.TimeSpan); Assert.AreEqual(c1.NullableTimeSpan, c2.NullableTimeSpan); Assert.AreEqual(c1.Uri, c2.Uri); } [Test] public void DeserializeByteArrayWithTypeNameHandling() { TestObject test = new TestObject("Test", new byte[] { 72, 63, 62, 71, 92, 55 }); JsonSerializer serializer = new JsonSerializer(); serializer.TypeNameHandling = TypeNameHandling.All; byte[] objectBytes; using (MemoryStream bsonStream = new MemoryStream()) using (JsonWriter bsonWriter = new BsonWriter(bsonStream)) { serializer.Serialize(bsonWriter, test); bsonWriter.Flush(); objectBytes = bsonStream.ToArray(); } using (MemoryStream bsonStream = new MemoryStream(objectBytes)) using (JsonReader bsonReader = new BsonReader(bsonStream)) { // Get exception here TestObject newObject = (TestObject)serializer.Deserialize(bsonReader); Assert.AreEqual("Test", newObject.Name); CollectionAssert.AreEquivalent(new byte[] { 72, 63, 62, 71, 92, 55 }, newObject.Data); } } #if !(NETFX_CORE) public void Utf8Text() { string badText = System.IO.File.ReadAllText(@"PoisonText.txt"); var j = new JObject(); j["test"] = badText; var memoryStream = new MemoryStream(); var bsonWriter = new BsonWriter(memoryStream); j.WriteTo(bsonWriter); bsonWriter.Flush(); memoryStream.Position = 0; JObject o = JObject.Load(new BsonReader(memoryStream)); Assert.AreEqual(badText, (string)o["test"]); } #endif #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) public class BigIntegerTestClass { public BigInteger Blah { get; set; } } [Test] public void WriteBigInteger() { BigInteger i = BigInteger.Parse("1999999999999999999999999999999999999999999999999999999999990"); byte[] data = HexToBytes("2A-00-00-00-05-42-6C-61-68-00-1A-00-00-00-00-F6-FF-FF-FF-FF-FF-FF-1F-B2-21-CB-28-59-84-C4-AE-03-8A-44-34-2F-4C-4E-9E-3E-01-00"); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); JsonSerializer serializer = new JsonSerializer(); BigIntegerTestClass c = serializer.Deserialize(reader); Assert.AreEqual(i, c.Blah); } #endif public class RegexTestClass { public Regex Regex { get; set; } } [Test] public void DeserializeRegexNonConverterBson() { string hex = "46-00-00-00-03-52-65-67-65-78-00-3A-00-00-00-02-70-61-74-74-65-72-6E-00-05-00-00-00-28-68-69-29-00-10-6F-70-74-69-6F-6E-73-00-05-00-00-00-12-6D-61-74-63-68-54-69-6D-65-6F-75-74-00-F0-D8-FF-FF-FF-FF-FF-FF-00-00"; byte[] data = HexToBytes(hex); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); JsonSerializer serializer = new JsonSerializer(); RegexTestClass c = serializer.Deserialize(reader); Assert.AreEqual("(hi)", c.Regex.ToString()); Assert.AreEqual(RegexOptions.ExplicitCapture | RegexOptions.IgnoreCase, c.Regex.Options); } [Test] public void DeserializeRegexBson() { string hex = "15-00-00-00-0B-52-65-67-65-78-00-28-68-69-29-00-69-75-78-00-00"; byte[] data = HexToBytes(hex); MemoryStream ms = new MemoryStream(data); BsonReader reader = new BsonReader(ms); JsonSerializer serializer = new JsonSerializer(); RegexTestClass c = serializer.Deserialize(reader); Assert.AreEqual("(hi)", c.Regex.ToString()); Assert.AreEqual(RegexOptions.ExplicitCapture | RegexOptions.IgnoreCase, c.Regex.Options); } class Zoo { public List Animals { get; set; } } class Animal { public Animal(string name) { Name = name; } public string Name { get; private set; } } class Dog : Animal { public Dog(string name) : base(name) { } } class Cat : Animal { public Cat(string name) : base(name) { } } public class MyBinder : DefaultSerializationBinder { public bool BindToTypeCalled { get; set; } #if !(NET20 || NET35) public bool BindToNameCalled { get; set; } public override void BindToName(Type serializedType, out string assemblyName, out string typeName) { BindToNameCalled = true; base.BindToName(serializedType, out assemblyName, out typeName); } #endif public override Type BindToType(string assemblyName, string typeName) { BindToTypeCalled = true; return base.BindToType(assemblyName, typeName); } } [Test] public void TypeNameHandlingAuto() { var binder = new MyBinder(); var settings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto, Binder = binder }; Zoo zoo = new Zoo { Animals = new List { new Dog("Dog!") } }; JsonSerializer serializer = JsonSerializer.Create(settings); MemoryStream ms = new MemoryStream(); BsonWriter bsonWriter = new BsonWriter(ms); serializer.Serialize(bsonWriter, zoo); ms.Seek(0, SeekOrigin.Begin); var deserialized = serializer.Deserialize(new BsonReader(ms)); Assert.AreEqual(1, deserialized.Animals.Count); Assert.AreEqual("Dog!", deserialized.Animals[0].Name); Assert.IsTrue(deserialized.Animals[0] is Dog); #if !(NET20 || NET35) Assert.IsTrue(binder.BindToNameCalled); #endif Assert.IsTrue(binder.BindToTypeCalled); } [Test] public void GuidsShouldBeProperlyDeserialised() { Guid g = new Guid("822C0CE6-CC42-4753-A3C3-26F0684A4B88"); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("TheGuid"); writer.WriteValue(g); writer.WriteEndObject(); writer.Flush(); byte[] bytes = ms.ToArray(); BsonReader reader = new BsonReader(new MemoryStream(bytes)); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); Assert.AreEqual(typeof(Guid), reader.ValueType); Assert.AreEqual(g, (Guid)reader.Value); Assert.IsTrue(reader.Read()); Assert.IsFalse(reader.Read()); JsonSerializer serializer = new JsonSerializer(); serializer.MetadataPropertyHandling = MetadataPropertyHandling.Default; ObjectTestClass b = serializer.Deserialize(new BsonReader(new MemoryStream(bytes))); Assert.AreEqual(typeof(Guid), b.TheGuid.GetType()); Assert.AreEqual(g, (Guid)b.TheGuid); } [Test] public void GuidsShouldBeProperlyDeserialised_AsBytes() { Guid g = new Guid("822C0CE6-CC42-4753-A3C3-26F0684A4B88"); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("TheGuid"); writer.WriteValue(g); writer.WriteEndObject(); writer.Flush(); byte[] bytes = ms.ToArray(); BsonReader reader = new BsonReader(new MemoryStream(bytes)); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); CollectionAssert.AreEquivalent(g.ToByteArray(), reader.ReadAsBytes()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); Assert.AreEqual(typeof(byte[]), reader.ValueType); CollectionAssert.AreEquivalent(g.ToByteArray(), (byte[])reader.Value); Assert.IsTrue(reader.Read()); Assert.IsFalse(reader.Read()); JsonSerializer serializer = new JsonSerializer(); BytesTestClass b = serializer.Deserialize(new BsonReader(new MemoryStream(bytes))); CollectionAssert.AreEquivalent(g.ToByteArray(), b.TheGuid); } [Test] public void GuidsShouldBeProperlyDeserialised_AsBytes_ReadAhead() { Guid g = new Guid("822C0CE6-CC42-4753-A3C3-26F0684A4B88"); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("TheGuid"); writer.WriteValue(g); writer.WriteEndObject(); writer.Flush(); byte[] bytes = ms.ToArray(); BsonReader reader = new BsonReader(new MemoryStream(bytes)); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); CollectionAssert.AreEquivalent(g.ToByteArray(), reader.ReadAsBytes()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); Assert.AreEqual(typeof(byte[]), reader.ValueType); CollectionAssert.AreEquivalent(g.ToByteArray(), (byte[])reader.Value); Assert.IsTrue(reader.Read()); Assert.IsFalse(reader.Read()); JsonSerializer serializer = new JsonSerializer(); serializer.MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead; BytesTestClass b = serializer.Deserialize(new BsonReader(new MemoryStream(bytes))); CollectionAssert.AreEquivalent(g.ToByteArray(), b.TheGuid); } [Test] public void DeserializeBsonDocumentWithString() { byte[] data = HexToBytes("10-00-00-00-02-62-00-04-00-00-00-61-62-63-00-00"); JsonSerializer serializer = new JsonSerializer(); JObject jObj = (JObject)serializer.Deserialize(new BsonReader(new MemoryStream(data))); string stringValue = jObj.Value("b"); Assert.AreEqual("abc", stringValue); } [Test] public void DeserializeBsonDocumentWithGuid() { byte[] data = HexToBytes("1D-00-00-00-05-62-00-10-00-00-00-04-DF-41-E3-E2-39-EE-BB-4C-86-C0-06-A7-64-33-61-E1-00"); JsonSerializer serializer = new JsonSerializer(); JObject jObj = (JObject)serializer.Deserialize(new BsonReader(new MemoryStream(data))); Guid guidValue = jObj.Value("b"); Assert.AreEqual(new Guid("e2e341df-ee39-4cbb-86c0-06a7643361e1"), guidValue); } public class BytesTestClass { public byte[] TheGuid { get; set; } } public class ObjectTestClass { public object TheGuid { get; set; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.WinRT.csproj0000664000175000017500000005213712454416117030752 0ustar directhexdirecthex Debug AnyCPU 8.0.30703 2.0 {8D9C2E69-9FD7-4A7A-866C-739C9207CD0B} Library Properties Newtonsoft.Json.Tests Newtonsoft.Json.Tests en-US 512 {BC8A1FFA-BEE3-4634-8014-F334798102B3};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} Newtonsoft.Json.Tests.WinRT_TemporaryKey.pfx 3116117C65F73A227A0BDC35F584F04145BA4BB7 False true full false bin\Debug\WinRT\ DEBUG;TRACE;NETFX_CORE prompt 4 pdbonly true bin\Release\WinRT\ TRACE;NETFX_CORE prompt 4 true bin\ARM\Debug\ DEBUG;TRACE;NETFX_CORE ;2008 full ARM false prompt ExpressRules.ruleset true bin\ARM\Release\ TRACE;NETFX_CORE true ;2008 pdbonly ARM false prompt ExpressRules.ruleset true true bin\x64\Debug\ DEBUG;TRACE;NETFX_CORE ;2008 full x64 false prompt ExpressRules.ruleset true bin\x64\Release\ TRACE;NETFX_CORE true ;2008 pdbonly x64 false prompt ExpressRules.ruleset true true bin\x86\Debug\ DEBUG;TRACE;NETFX_CORE ;2008 full x86 false prompt ExpressRules.ruleset true bin\x86\Release\ TRACE;NETFX_CORE true ;2008 pdbonly x86 false prompt ExpressRules.ruleset true True Designer PreserveNewest PreserveNewest PreserveNewest PreserveNewest PreserveNewest PreserveNewest PreserveNewest {263136a2-b89b-424e-a87a-f988caa8d032} Newtonsoft.Json.WinRT PreserveNewest PreserveNewest ..\packages\System.Collections.Immutable.1.1.33-beta\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll True 12.0 newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/JsonTextReaderTest.cs0000664000175000017500000036206312454416117026441 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using Newtonsoft.Json.Linq; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif using System.Text; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json; using System.IO; using System.Xml; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests { [TestFixture] public class JsonTextReaderTest : TestFixtureBase { [Test] public void ReadSingleQuoteInsideDoubleQuoteString() { string json = @"{""NameOfStore"":""Forest's Bakery And Cafe""}"; JsonTextReader jsonTextReader = new JsonTextReader(new StringReader(json)); jsonTextReader.Read(); jsonTextReader.Read(); jsonTextReader.Read(); Assert.AreEqual(@"Forest's Bakery And Cafe", jsonTextReader.Value); } [Test] public void ReadMultilineString() { string json = @"""first line second line third line"""; JsonTextReader jsonTextReader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.String, jsonTextReader.TokenType); Assert.AreEqual(@"first line second line third line", jsonTextReader.Value); } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE || ASPNETCORE50) [Test] public void ReadBigInteger() { string json = @"{ ParentId: 1, ChildId: 333333333333333333333333333333333333333, }"; JsonTextReader jsonTextReader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.StartObject, jsonTextReader.TokenType); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.PropertyName, jsonTextReader.TokenType); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.Integer, jsonTextReader.TokenType); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.PropertyName, jsonTextReader.TokenType); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.Integer, jsonTextReader.TokenType); Assert.AreEqual(typeof(BigInteger), jsonTextReader.ValueType); Assert.AreEqual(BigInteger.Parse("333333333333333333333333333333333333333"), jsonTextReader.Value); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.EndObject, jsonTextReader.TokenType); Assert.IsFalse(jsonTextReader.Read()); JObject o = JObject.Parse(json); var i = (BigInteger)((JValue)o["ChildId"]).Value; Assert.AreEqual(BigInteger.Parse("333333333333333333333333333333333333333"), i); } #endif [Test] public void ReadIntegerWithError() { string json = @"{ ChildId: 333333333333333333333333333333333333333 }"; JsonTextReader jsonTextReader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.StartObject, jsonTextReader.TokenType); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.PropertyName, jsonTextReader.TokenType); ExceptionAssert.Throws(() => jsonTextReader.ReadAsInt32(), "JSON integer 333333333333333333333333333333333333333 is too large or small for an Int32. Path 'ChildId', line 2, position 53."); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.EndObject, jsonTextReader.TokenType); Assert.IsFalse(jsonTextReader.Read()); } [Test] public void ReadIntegerWithErrorInArray() { string json = @"[ 333333333333333333333333333333333333333, 3.3, , 0f ]"; JsonTextReader jsonTextReader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.StartArray, jsonTextReader.TokenType); ExceptionAssert.Throws(() => jsonTextReader.ReadAsInt32(), "JSON integer 333333333333333333333333333333333333333 is too large or small for an Int32. Path '[0]', line 2, position 42."); ExceptionAssert.Throws(() => jsonTextReader.ReadAsInt32(), "Input string '3.3' is not a valid integer. Path '[1]', line 3, position 6."); ExceptionAssert.Throws(() => jsonTextReader.ReadAsInt32(), "Error reading integer. Unexpected token: Undefined. Path '[2]', line 4, position 3."); ExceptionAssert.Throws(() => jsonTextReader.ReadAsInt32(), "Input string '0f' is not a valid integer. Path '[3]', line 5, position 5."); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.EndArray, jsonTextReader.TokenType); Assert.IsFalse(jsonTextReader.Read()); } [Test] public void ReadBytesWithError() { string json = @"{ ChildId: '123' }"; JsonTextReader jsonTextReader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.StartObject, jsonTextReader.TokenType); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.PropertyName, jsonTextReader.TokenType); try { jsonTextReader.ReadAsBytes(); } catch (FormatException) { } Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.EndObject, jsonTextReader.TokenType); Assert.IsFalse(jsonTextReader.Read()); } [Test] public void ReadBadMSDateAsString() { string json = @"{ ChildId: '\/Date(9467082_PIE_340000-0631)\/' }"; JsonTextReader jsonTextReader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.StartObject, jsonTextReader.TokenType); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.PropertyName, jsonTextReader.TokenType); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.String, jsonTextReader.TokenType); Assert.AreEqual(@"/Date(9467082_PIE_340000-0631)/", jsonTextReader.Value); Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(JsonToken.EndObject, jsonTextReader.TokenType); Assert.IsFalse(jsonTextReader.Read()); } [Test] public void ReadInvalidNonBase10Number() { string json = "0aq2dun13.hod"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); ExceptionAssert.Throws(() => { reader.Read(); }, "Unexpected character encountered while parsing number: q. Path '', line 1, position 2."); reader = new JsonTextReader(new StringReader(json)); ExceptionAssert.Throws(() => { reader.ReadAsDecimal(); }, "Unexpected character encountered while parsing number: q. Path '', line 1, position 2."); reader = new JsonTextReader(new StringReader(json)); ExceptionAssert.Throws(() => { reader.ReadAsInt32(); }, "Unexpected character encountered while parsing number: q. Path '', line 1, position 2."); } [Test] public void ThrowErrorWhenParsingUnquoteStringThatStartsWithNE() { const string json = @"{ ""ItemName"": ""value"", ""u"":netanelsalinger,""r"":9 }"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); ExceptionAssert.Throws(() => { reader.Read(); }, "Unexpected content while parsing JSON. Path 'u', line 1, position 27."); } [Test] public void FloatParseHandling() { string json = "[1.0,1,9.9,1E-06]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.FloatParseHandling = Json.FloatParseHandling.Decimal; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(1.0m, reader.Value); Assert.AreEqual(typeof(decimal), reader.ValueType); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(1L, reader.Value); Assert.AreEqual(typeof(long), reader.ValueType); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(9.9m, reader.Value); Assert.AreEqual(typeof(decimal), reader.ValueType); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(Convert.ToDecimal(1E-06), reader.Value); Assert.AreEqual(typeof(decimal), reader.ValueType); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); } [Test] public void FloatParseHandling_NaN() { string json = "[NaN]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.FloatParseHandling = Json.FloatParseHandling.Decimal; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); ExceptionAssert.Throws(() => reader.Read(), "Cannot read NaN as a decimal."); } [Test] public void UnescapeDoubleQuotes() { string json = @"{""recipe_id"":""12"",""recipe_name"":""Apocalypse Leather Armors"",""recipe_text"":""#C16------------------------------\r\n#C12Ingredients #C20\r\n#C16------------------------------\r\n\r\na piece of Leather Armor\r\n( ie #L \""Enhanced Leather Armor Boots\"" \""85644\"" )\r\n\r\n\r\n#L \""Hacker Tool\"" \""87814\""\r\n\r\n\r\n#L \""Clanalizer\"" \""208313\""\r\n\r\n\r\n#C16------------------------------\r\n#C12Recipe #C16\r\n#C16------------------------------#C20\r\n\r\nHacker Tool\r\n#C15+#C20\r\na piece of Leather Armor\r\n#C15=#C20\r\n\r\na piece of Hacked Leather Armor\r\n( ie : #L \""Hacked Leather Armor Boots\"" \""245979\"" )\r\n#C16Skills: | BE |#C20\r\n\r\n#C14------------------------------#C20\r\n\r\nClanalizer\r\n#C15+#C20\r\na piece of Hacked Leather Armor\r\n#C15=#C20\r\n\r\na piece of Apocalypse Leather Armor\r\n( ie : #L \""Apocalypse Leather Armor Boots\"" \""245966\"" )\r\n#C16Skills: | ?? |#C20\r\n\r\n#C16------------------------------\r\n#C12Details#C16\r\n#C16------------------------------#C20\r\n\r\n#L \""Apocalypse Leather Armor Boots\"" \""245967\""\r\n#L \""Apocalypse Leather Armor Gloves\"" \""245969\""\r\n#L \""Apocalypse Leather Armor Helmet\"" \""245975\""\r\n#L \""Apocalypse Leather Armor Pants\"" \""245971\""\r\n#L \""Apocalypse Leather Armor Sleeves\"" \""245973\""\r\n#L \""Apocalypse Leather Body Armor\"" \""245965\""\r\n\r\n#C16------------------------------\r\n#C12Comments#C16\r\n#C16------------------------------#C20\r\n\r\nNice froob armor.. but ugleh!\r\n\r\n"",""recipe_author"":null}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("recipe_text", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("#C16------------------------------\r\n#C12Ingredients #C20\r\n#C16------------------------------\r\n\r\na piece of Leather Armor\r\n( ie #L \"Enhanced Leather Armor Boots\" \"85644\" )\r\n\r\n\r\n#L \"Hacker Tool\" \"87814\"\r\n\r\n\r\n#L \"Clanalizer\" \"208313\"\r\n\r\n\r\n#C16------------------------------\r\n#C12Recipe #C16\r\n#C16------------------------------#C20\r\n\r\nHacker Tool\r\n#C15+#C20\r\na piece of Leather Armor\r\n#C15=#C20\r\n\r\na piece of Hacked Leather Armor\r\n( ie : #L \"Hacked Leather Armor Boots\" \"245979\" )\r\n#C16Skills: | BE |#C20\r\n\r\n#C14------------------------------#C20\r\n\r\nClanalizer\r\n#C15+#C20\r\na piece of Hacked Leather Armor\r\n#C15=#C20\r\n\r\na piece of Apocalypse Leather Armor\r\n( ie : #L \"Apocalypse Leather Armor Boots\" \"245966\" )\r\n#C16Skills: | ?? |#C20\r\n\r\n#C16------------------------------\r\n#C12Details#C16\r\n#C16------------------------------#C20\r\n\r\n#L \"Apocalypse Leather Armor Boots\" \"245967\"\r\n#L \"Apocalypse Leather Armor Gloves\" \"245969\"\r\n#L \"Apocalypse Leather Armor Helmet\" \"245975\"\r\n#L \"Apocalypse Leather Armor Pants\" \"245971\"\r\n#L \"Apocalypse Leather Armor Sleeves\" \"245973\"\r\n#L \"Apocalypse Leather Body Armor\" \"245965\"\r\n\r\n#C16------------------------------\r\n#C12Comments#C16\r\n#C16------------------------------#C20\r\n\r\nNice froob armor.. but ugleh!\r\n\r\n", reader.Value); } [Test] public void SurrogatePairValid() { string json = @"{ ""MATHEMATICAL ITALIC CAPITAL ALPHA"": ""\uD835\uDEE2"" }"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); string s = reader.Value.ToString(); Assert.AreEqual(2, s.Length); StringInfo stringInfo = new StringInfo(s); Assert.AreEqual(1, stringInfo.LengthInTextElements); } [Test] public void SurrogatePairReplacement() { // existing good surrogate pair Assert.AreEqual("ABC \ud800\udc00 DEF", ReadString("ABC \\ud800\\udc00 DEF")); // invalid surrogates (two high back-to-back) Assert.AreEqual("ABC \ufffd\ufffd DEF", ReadString("ABC \\ud800\\ud800 DEF")); // invalid surrogates (two high back-to-back) Assert.AreEqual("ABC \ufffd\ufffd\u1234 DEF", ReadString("ABC \\ud800\\ud800\\u1234 DEF")); // invalid surrogates (three high back-to-back) Assert.AreEqual("ABC \ufffd\ufffd\ufffd DEF", ReadString("ABC \\ud800\\ud800\\ud800 DEF")); // invalid surrogates (high followed by a good surrogate pair) Assert.AreEqual("ABC \ufffd\ud800\udc00 DEF", ReadString("ABC \\ud800\\ud800\\udc00 DEF")); // invalid high surrogate at end of string Assert.AreEqual("ABC \ufffd", ReadString("ABC \\ud800")); // high surrogate not followed by low surrogate Assert.AreEqual("ABC \ufffd DEF", ReadString("ABC \\ud800 DEF")); // low surrogate not preceded by high surrogate Assert.AreEqual("ABC \ufffd\ufffd DEF", ReadString("ABC \\udc00\\ud800 DEF")); // make sure unencoded invalid surrogate characters don't make it through Assert.AreEqual("\ufffd\ufffd\ufffd", ReadString("\udc00\ud800\ud800")); Assert.AreEqual("ABC \ufffd\b", ReadString("ABC \\ud800\\b")); Assert.AreEqual("ABC \ufffd ", ReadString("ABC \\ud800 ")); Assert.AreEqual("ABC \b\ufffd", ReadString("ABC \\b\\ud800")); } private string ReadString(string input) { MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(@"""" + input + @"""")); JsonTextReader reader = new JsonTextReader(new StreamReader(ms)); reader.Read(); string s = (string)reader.Value; return s; } [Test] public void CloseInput() { MemoryStream ms = new MemoryStream(); JsonTextReader reader = new JsonTextReader(new StreamReader(ms)); Assert.IsTrue(ms.CanRead); reader.Close(); Assert.IsFalse(ms.CanRead); ms = new MemoryStream(); reader = new JsonTextReader(new StreamReader(ms)) { CloseInput = false }; Assert.IsTrue(ms.CanRead); reader.Close(); Assert.IsTrue(ms.CanRead); } [Test] public void YahooFinance() { string input = @"{ ""matches"" : [ {""t"":""C"", ""n"":""Citigroup Inc."", ""e"":""NYSE"", ""id"":""662713""} ,{""t"":""CHL"", ""n"":""China Mobile Ltd. (ADR)"", ""e"":""NYSE"", ""id"":""660998""} ,{""t"":""PTR"", ""n"":""PetroChina Company Limited (ADR)"", ""e"":""NYSE"", ""id"":""664536""} ,{""t"":""RIO"", ""n"":""Companhia Vale do Rio Doce (ADR)"", ""e"":""NYSE"", ""id"":""671472""} ,{""t"":""RIOPR"", ""n"":""Companhia Vale do Rio Doce (ADR)"", ""e"":""NYSE"", ""id"":""3512643""} ,{""t"":""CSCO"", ""n"":""Cisco Systems, Inc."", ""e"":""NASDAQ"", ""id"":""99624""} ,{""t"":""CVX"", ""n"":""Chevron Corporation"", ""e"":""NYSE"", ""id"":""667226""} ,{""t"":""TM"", ""n"":""Toyota Motor Corporation (ADR)"", ""e"":""NYSE"", ""id"":""655880""} ,{""t"":""JPM"", ""n"":""JPMorgan Chase \\x26 Co."", ""e"":""NYSE"", ""id"":""665639""} ,{""t"":""COP"", ""n"":""ConocoPhillips"", ""e"":""NYSE"", ""id"":""1691168""} ,{""t"":""LFC"", ""n"":""China Life Insurance Company Ltd. (ADR)"", ""e"":""NYSE"", ""id"":""688679""} ,{""t"":""NOK"", ""n"":""Nokia Corporation (ADR)"", ""e"":""NYSE"", ""id"":""657729""} ,{""t"":""KO"", ""n"":""The Coca-Cola Company"", ""e"":""NYSE"", ""id"":""6550""} ,{""t"":""VZ"", ""n"":""Verizon Communications Inc."", ""e"":""NYSE"", ""id"":""664887""} ,{""t"":""AMX"", ""n"":""America Movil S.A.B de C.V. (ADR)"", ""e"":""NYSE"", ""id"":""665834""}], ""all"" : false } "; using (JsonReader jsonReader = new JsonTextReader(new StringReader(input))) { while (jsonReader.Read()) { Console.WriteLine(jsonReader.Value); } } } [Test] public void ReadConstructor() { string json = @"{""DefaultConverter"":new Date(0, ""hi""),""MemberConverter"":""1970-01-01T00:00:00Z""}"; JsonReader reader = new JsonTextReader(new StreamReader(new SlowStream(json, new UTF8Encoding(false), 1))); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartConstructor, reader.TokenType); Assert.AreEqual("Date", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(0L, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual("hi", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndConstructor, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual("MemberConverter", reader.Value); } [Test] public void ParseAdditionalContent_Comma() { string json = @"[ ""Small"", ""Medium"", ""Large"" ],"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); ExceptionAssert.Throws(() => { while (reader.Read()) { } }, "Additional text encountered after finished reading JSON content: ,. Path '', line 5, position 2."); } [Test] public void ParseAdditionalContent_Text() { string json = @"[ ""Small"", ""Medium"", ""Large"" ]content"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); #if DEBUG reader.SetCharBuffer(new char[2]); #endif reader.Read(); Assert.AreEqual(1, reader.LineNumber); reader.Read(); Assert.AreEqual(2, reader.LineNumber); reader.Read(); Assert.AreEqual(3, reader.LineNumber); reader.Read(); Assert.AreEqual(4, reader.LineNumber); reader.Read(); Assert.AreEqual(5, reader.LineNumber); ExceptionAssert.Throws(() => { reader.Read(); }, "Additional text encountered after finished reading JSON content: c. Path '', line 5, position 2."); } [Test] public void ParseAdditionalContent_Whitespace() { string json = @"[ ""Small"", ""Medium"", ""Large"" ] "; JsonTextReader reader = new JsonTextReader(new StringReader(json)); while (reader.Read()) { } } [Test] public void ParseAdditionalContent_WhitespaceThenText() { string json = @"'hi' a"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); ExceptionAssert.Throws(() => { while (reader.Read()) { } }, "Additional text encountered after finished reading JSON content: a. Path '', line 1, position 5."); } [Test] public void ReadingIndented() { string input = @"{ CPU: 'Intel', Drives: [ 'DVD read/writer', ""500 gigabyte hard drive"" ] }"; StringReader sr = new StringReader(input); using (JsonTextReader jsonReader = new JsonTextReader(sr)) { #if DEBUG jsonReader.SetCharBuffer(new char[5]); #endif Assert.AreEqual(jsonReader.TokenType, JsonToken.None); Assert.AreEqual(0, jsonReader.LineNumber); Assert.AreEqual(0, jsonReader.LinePosition); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.StartObject); Assert.AreEqual(1, jsonReader.LineNumber); Assert.AreEqual(1, jsonReader.LinePosition); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.PropertyName); Assert.AreEqual(jsonReader.Value, "CPU"); Assert.AreEqual(2, jsonReader.LineNumber); Assert.AreEqual(7, jsonReader.LinePosition); jsonReader.Read(); Assert.AreEqual(JsonToken.String, jsonReader.TokenType); Assert.AreEqual("Intel", jsonReader.Value); Assert.AreEqual(2, jsonReader.LineNumber); Assert.AreEqual(15, jsonReader.LinePosition); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.PropertyName); Assert.AreEqual(jsonReader.Value, "Drives"); Assert.AreEqual(3, jsonReader.LineNumber); Assert.AreEqual(10, jsonReader.LinePosition); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.StartArray); Assert.AreEqual(3, jsonReader.LineNumber); Assert.AreEqual(12, jsonReader.LinePosition); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.String); Assert.AreEqual(jsonReader.Value, "DVD read/writer"); Assert.AreEqual(jsonReader.QuoteChar, '\''); Assert.AreEqual(4, jsonReader.LineNumber); Assert.AreEqual(22, jsonReader.LinePosition); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.String); Assert.AreEqual(jsonReader.Value, "500 gigabyte hard drive"); Assert.AreEqual(jsonReader.QuoteChar, '"'); Assert.AreEqual(5, jsonReader.LineNumber); Assert.AreEqual(30, jsonReader.LinePosition); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.EndArray); Assert.AreEqual(6, jsonReader.LineNumber); Assert.AreEqual(4, jsonReader.LinePosition); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.EndObject); Assert.AreEqual(7, jsonReader.LineNumber); Assert.AreEqual(2, jsonReader.LinePosition); Assert.IsFalse(jsonReader.Read()); } } [Test] public void Depth() { string input = @"{ value:'Purple', array:[1,2,new Date(1)], subobject:{prop:1,proparray:[1]} }"; StringReader sr = new StringReader(input); using (JsonReader reader = new JsonTextReader(sr)) { Assert.AreEqual(0, reader.Depth); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.StartObject); Assert.AreEqual(0, reader.Depth); Assert.AreEqual("", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.PropertyName); Assert.AreEqual(1, reader.Depth); Assert.AreEqual("value", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.String); Assert.AreEqual(reader.Value, @"Purple"); Assert.AreEqual(reader.QuoteChar, '\''); Assert.AreEqual(1, reader.Depth); Assert.AreEqual("value", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.PropertyName); Assert.AreEqual(1, reader.Depth); Assert.AreEqual("array", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.StartArray); Assert.AreEqual(1, reader.Depth); Assert.AreEqual("array", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.Integer); Assert.AreEqual(1L, reader.Value); Assert.AreEqual(2, reader.Depth); Assert.AreEqual("array[0]", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.Integer); Assert.AreEqual(2L, reader.Value); Assert.AreEqual(2, reader.Depth); Assert.AreEqual("array[1]", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.StartConstructor); Assert.AreEqual("Date", reader.Value); Assert.AreEqual(2, reader.Depth); Assert.AreEqual("array[2]", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.Integer); Assert.AreEqual(1L, reader.Value); Assert.AreEqual(3, reader.Depth); Assert.AreEqual("array[2][0]", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.EndConstructor); Assert.AreEqual(null, reader.Value); Assert.AreEqual(2, reader.Depth); Assert.AreEqual("array[2]", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.EndArray); Assert.AreEqual(1, reader.Depth); Assert.AreEqual("array", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.PropertyName); Assert.AreEqual(1, reader.Depth); Assert.AreEqual("subobject", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.StartObject); Assert.AreEqual(1, reader.Depth); Assert.AreEqual("subobject", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.PropertyName); Assert.AreEqual(2, reader.Depth); Assert.AreEqual("subobject.prop", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.Integer); Assert.AreEqual(2, reader.Depth); Assert.AreEqual("subobject.prop", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.PropertyName); Assert.AreEqual(2, reader.Depth); Assert.AreEqual("subobject.proparray", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.StartArray); Assert.AreEqual(2, reader.Depth); Assert.AreEqual("subobject.proparray", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.Integer); Assert.AreEqual(3, reader.Depth); Assert.AreEqual("subobject.proparray[0]", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.EndArray); Assert.AreEqual(2, reader.Depth); Assert.AreEqual("subobject.proparray", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.EndObject); Assert.AreEqual(1, reader.Depth); Assert.AreEqual("subobject", reader.Path); reader.Read(); Assert.AreEqual(reader.TokenType, JsonToken.EndObject); Assert.AreEqual(0, reader.Depth); Assert.AreEqual("", reader.Path); } } [Test] public void NullTextReader() { ExceptionAssert.Throws ( () => { new JsonTextReader (null); }, new string[] { "Value cannot be null." + Environment.NewLine + "Parameter name: reader", "Argument cannot be null." + Environment.NewLine + "Parameter name: reader" // Mono }); } [Test] public void UnexpectedEndOfString() { JsonReader reader = new JsonTextReader(new StringReader("'hi")); ExceptionAssert.Throws(() => { reader.Read(); }, "Unterminated string. Expected delimiter: '. Path '', line 1, position 3."); } [Test] public void ReadLongString() { string s = new string('a', 10000); JsonReader reader = new JsonTextReader(new StringReader("'" + s + "'")); reader.Read(); Assert.AreEqual(s, reader.Value); } [Test] public void ReadLongJsonArray() { int valueCount = 10000; StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.WriteStartArray(); for (int i = 0; i < valueCount; i++) { writer.WriteValue(i); } writer.WriteEndArray(); string json = sw.ToString(); JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); for (int i = 0; i < valueCount; i++) { Assert.IsTrue(reader.Read()); Assert.AreEqual((long)i, reader.Value); } Assert.IsTrue(reader.Read()); Assert.IsFalse(reader.Read()); } [Test] public void NullCharReading() { string json = "\0{\0'\0h\0i\0'\0:\0[\01\0,\0'\0'\0\0,\0null\0]\0,\0do\0:true\0}\0\0/*\0sd\0f\0*/\0/*\0sd\0f\0*/ \0"; JsonTextReader reader = new JsonTextReader(new StreamReader(new SlowStream(json, new UTF8Encoding(false), 1))); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual("\0sd\0f\0", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual("\0sd\0f\0", reader.Value); Assert.IsFalse(reader.Read()); } [Test] public void AppendCharsWhileReadingNull() { string json = @"[ { ""$id"": ""1"", ""Name"": ""e1"", ""Manager"": null }, { ""$id"": ""2"", ""Name"": ""e2"", ""Manager"": null }, { ""$ref"": ""1"" }, { ""$ref"": ""2"" } ]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); #if DEBUG reader.SetCharBuffer(new char[129]); #endif for (int i = 0; i < 15; i++) { reader.Read(); } reader.Read(); Assert.AreEqual(JsonToken.Null, reader.TokenType); } [Test] public void ReadInt32Overflow() { long i = int.MaxValue; JsonTextReader reader = new JsonTextReader(new StringReader(i.ToString(CultureInfo.InvariantCulture))); reader.Read(); Assert.AreEqual(typeof(long), reader.ValueType); for (int j = 1; j < 1000; j++) { long total = j + i; ExceptionAssert.Throws(() => { reader = new JsonTextReader(new StringReader(total.ToString(CultureInfo.InvariantCulture))); reader.ReadAsInt32(); }, "JSON integer " + total + " is too large or small for an Int32. Path '', line 1, position 10."); } } [Test] public void ReadInt32Overflow_Negative() { long i = int.MinValue; JsonTextReader reader = new JsonTextReader(new StringReader(i.ToString(CultureInfo.InvariantCulture))); reader.Read(); Assert.AreEqual(typeof(long), reader.ValueType); Assert.AreEqual(i, reader.Value); for (int j = 1; j < 1000; j++) { long total = -j + i; ExceptionAssert.Throws(() => { reader = new JsonTextReader(new StringReader(total.ToString(CultureInfo.InvariantCulture))); reader.ReadAsInt32(); }, "JSON integer " + total + " is too large or small for an Int32. Path '', line 1, position 11."); } } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE || ASPNETCORE50) [Test] public void ReadInt64Overflow() { BigInteger i = new BigInteger(long.MaxValue); JsonTextReader reader = new JsonTextReader(new StringReader(i.ToString(CultureInfo.InvariantCulture))); reader.Read(); Assert.AreEqual(typeof(long), reader.ValueType); for (int j = 1; j < 1000; j++) { BigInteger total = i + j; reader = new JsonTextReader(new StringReader(total.ToString(CultureInfo.InvariantCulture))); reader.Read(); Assert.AreEqual(typeof(BigInteger), reader.ValueType); } } [Test] public void ReadInt64Overflow_Negative() { BigInteger i = new BigInteger(long.MinValue); JsonTextReader reader = new JsonTextReader(new StringReader(i.ToString(CultureInfo.InvariantCulture))); reader.Read(); Assert.AreEqual(typeof(long), reader.ValueType); for (int j = 1; j < 1000; j++) { BigInteger total = i + -j; reader = new JsonTextReader(new StringReader(total.ToString(CultureInfo.InvariantCulture))); reader.Read(); Assert.AreEqual(typeof(BigInteger), reader.ValueType); } } #endif [Test] public void AppendCharsWhileReadingNewLine() { string json = @" { ""description"": ""A person"", ""type"": ""object"", ""properties"": { ""name"": {""type"":""string""}, ""hobbies"": { ""type"": ""array"", ""items"": {""type"":""string""} } } } "; JsonTextReader reader = new JsonTextReader(new StringReader(json)); #if DEBUG reader.SetCharBuffer(new char[129]); #endif for (int i = 0; i < 14; i++) { Assert.IsTrue(reader.Read()); } Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("type", reader.Value); } [Test] public void ReadNullTerminatorStrings() { JsonReader reader = new JsonTextReader(new StringReader("'h\0i'")); Assert.IsTrue(reader.Read()); Assert.AreEqual("h\0i", reader.Value); } [Test] public void UnexpectedEndOfHex() { JsonReader reader = new JsonTextReader(new StringReader(@"'h\u123")); ExceptionAssert.Throws(() => { reader.Read(); }, "Unexpected end while parsing unicode character. Path '', line 1, position 4."); } [Test] public void UnexpectedEndOfControlCharacter() { JsonReader reader = new JsonTextReader(new StringReader(@"'h\")); ExceptionAssert.Throws(() => { reader.Read(); }, "Unterminated string. Expected delimiter: '. Path '', line 1, position 3."); } [Test] public void ReadBytesWithBadCharacter() { JsonReader reader = new JsonTextReader(new StringReader(@"true")); ExceptionAssert.Throws(() => { reader.ReadAsBytes(); }, "Error reading bytes. Unexpected token: Boolean. Path '', line 1, position 4."); } [Test] public void ReadBytesWithUnexpectedEnd() { string helloWorld = "Hello world!"; byte[] helloWorldData = Encoding.UTF8.GetBytes(helloWorld); JsonReader reader = new JsonTextReader(new StringReader(@"'" + Convert.ToBase64String(helloWorldData))); ExceptionAssert.Throws(() => { reader.ReadAsBytes(); }, "Unterminated string. Expected delimiter: '. Path '', line 1, position 17."); } [Test] public void ReadBytesNoStartWithUnexpectedEnd() { JsonReader reader = new JsonTextReader(new StringReader(@"[ ")); Assert.IsTrue(reader.Read()); Assert.IsNull(reader.ReadAsBytes()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void UnexpectedEndWhenParsingUnquotedProperty() { JsonReader reader = new JsonTextReader(new StringReader(@"{aww")); Assert.IsTrue(reader.Read()); ExceptionAssert.Throws(() => { reader.Read(); }, "Unexpected end while parsing unquoted property name. Path '', line 1, position 4."); } [Test] public void ReadNewLines() { string newLinesText = StringUtils.CarriageReturn + StringUtils.CarriageReturnLineFeed + StringUtils.LineFeed + StringUtils.CarriageReturnLineFeed + " " + StringUtils.CarriageReturn + StringUtils.CarriageReturnLineFeed; string json = newLinesText + "{" + newLinesText + "'" + newLinesText + "name1" + newLinesText + "'" + newLinesText + ":" + newLinesText + "[" + newLinesText + "new" + newLinesText + "Date" + newLinesText + "(" + newLinesText + "1" + newLinesText + "," + newLinesText + "null" + newLinesText + "/*" + newLinesText + "blah comment" + newLinesText + "*/" + newLinesText + ")" + newLinesText + "," + newLinesText + "1.1111" + newLinesText + "]" + newLinesText + "," + newLinesText + "name2" + newLinesText + ":" + newLinesText + "{" + newLinesText + "}" + newLinesText + "}" + newLinesText; int count = 0; StringReader sr = new StringReader(newLinesText); while (sr.ReadLine() != null) { count++; } JsonTextReader reader = new JsonTextReader(new StreamReader(new SlowStream(json, new UTF8Encoding(false), 1))); Assert.IsTrue(reader.Read()); Assert.AreEqual(7, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(31, reader.LineNumber); Assert.AreEqual(newLinesText + "name1" + newLinesText, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(37, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(55, reader.LineNumber); Assert.AreEqual(JsonToken.StartConstructor, reader.TokenType); Assert.AreEqual("Date", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(61, reader.LineNumber); Assert.AreEqual(1L, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(73, reader.LineNumber); Assert.AreEqual(null, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(91, reader.LineNumber); Assert.AreEqual(newLinesText + "blah comment" + newLinesText, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(97, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(109, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(115, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(133, reader.LineNumber); Assert.AreEqual("name2", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(139, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(145, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(151, reader.LineNumber); } [Test] public void ParsingQuotedPropertyWithControlCharacters() { JsonReader reader = new JsonTextReader(new StringReader(@"{'hi\r\nbye':1}")); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("hi\r\nbye", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(1L, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void ReadBytesFollowingNumberInArray() { string helloWorld = "Hello world!"; byte[] helloWorldData = Encoding.UTF8.GetBytes(helloWorld); JsonReader reader = new JsonTextReader(new StringReader(@"[1,'" + Convert.ToBase64String(helloWorldData) + @"']")); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); byte[] data = reader.ReadAsBytes(); CollectionAssert.AreEquivalent(helloWorldData, data); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void ReadBytesFollowingNumberInObject() { string helloWorld = "Hello world!"; byte[] helloWorldData = Encoding.UTF8.GetBytes(helloWorld); JsonReader reader = new JsonTextReader(new StringReader(@"{num:1,data:'" + Convert.ToBase64String(helloWorldData) + @"'}")); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsTrue(reader.Read()); byte[] data = reader.ReadAsBytes(); CollectionAssert.AreEquivalent(helloWorldData, data); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void ReadingEscapedStrings() { string input = "{value:'Purple\\r \\n monkey\\'s:\\tdishwasher'}"; StringReader sr = new StringReader(input); using (JsonReader jsonReader = new JsonTextReader(sr)) { Assert.AreEqual(0, jsonReader.Depth); jsonReader.Read(); Assert.AreEqual(JsonToken.StartObject, jsonReader.TokenType); Assert.AreEqual(0, jsonReader.Depth); jsonReader.Read(); Assert.AreEqual(JsonToken.PropertyName, jsonReader.TokenType); Assert.AreEqual(1, jsonReader.Depth); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.String); Assert.AreEqual("Purple\r \n monkey's:\tdishwasher", jsonReader.Value); Assert.AreEqual('\'', jsonReader.QuoteChar); Assert.AreEqual(1, jsonReader.Depth); jsonReader.Read(); Assert.AreEqual(JsonToken.EndObject, jsonReader.TokenType); Assert.AreEqual(0, jsonReader.Depth); } } [Test] public void ReadNewlineLastCharacter() { string input = @"{ CPU: 'Intel', Drives: [ /* Com*ment */ 'DVD read/writer', ""500 gigabyte hard drive"" ] }" + '\n'; object o = JsonConvert.DeserializeObject(input); } [Test] public void ReadRandomJson() { string json = @"[ true, { ""integer"": 99, ""string"": ""how now brown cow?"", ""array"": [ 0, 1, 2, 3, 4, { ""decimal"": 990.00990099 }, 5 ] }, ""This is a string."", null, null ]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); while (reader.Read()) { } } [Test] public void ParseIntegers() { JsonTextReader reader = null; reader = new JsonTextReader(new StringReader("1")); Assert.AreEqual(1, reader.ReadAsInt32()); reader = new JsonTextReader(new StringReader("-1")); Assert.AreEqual(-1, reader.ReadAsInt32()); reader = new JsonTextReader(new StringReader("0")); Assert.AreEqual(0, reader.ReadAsInt32()); reader = new JsonTextReader(new StringReader("-0")); Assert.AreEqual(0, reader.ReadAsInt32()); reader = new JsonTextReader(new StringReader(int.MaxValue.ToString())); Assert.AreEqual(int.MaxValue, reader.ReadAsInt32()); reader = new JsonTextReader(new StringReader(int.MinValue.ToString())); Assert.AreEqual(int.MinValue, reader.ReadAsInt32()); reader = new JsonTextReader(new StringReader(long.MaxValue.ToString())); ExceptionAssert.Throws(() => reader.ReadAsInt32(), "JSON integer 9223372036854775807 is too large or small for an Int32. Path '', line 1, position 19."); reader = new JsonTextReader(new StringReader("9999999999999999999999999999999999999999999999999999999999999999999999999999asdasdasd")); ExceptionAssert.Throws(() => reader.ReadAsInt32(), "Unexpected character encountered while parsing number: s. Path '', line 1, position 77."); reader = new JsonTextReader(new StringReader("1E-06")); ExceptionAssert.Throws(() => reader.ReadAsInt32(), "Input string '1E-06' is not a valid integer. Path '', line 1, position 5."); reader = new JsonTextReader(new StringReader("1.1")); ExceptionAssert.Throws(() => reader.ReadAsInt32(), "Input string '1.1' is not a valid integer. Path '', line 1, position 3."); reader = new JsonTextReader(new StringReader("")); Assert.AreEqual(null, reader.ReadAsInt32()); reader = new JsonTextReader(new StringReader("-")); ExceptionAssert.Throws(() => reader.ReadAsInt32(), "Input string '-' is not a valid integer. Path '', line 1, position 1."); } [Test] public void ParseDecimals() { JsonTextReader reader = null; reader = new JsonTextReader(new StringReader("1.1")); Assert.AreEqual(1.1m, reader.ReadAsDecimal()); reader = new JsonTextReader(new StringReader("-1.1")); Assert.AreEqual(-1.1m, reader.ReadAsDecimal()); reader = new JsonTextReader(new StringReader("0.0")); Assert.AreEqual(0.0m, reader.ReadAsDecimal()); reader = new JsonTextReader(new StringReader("-0.0")); Assert.AreEqual(0, reader.ReadAsDecimal()); reader = new JsonTextReader(new StringReader("9999999999999999999999999999999999999999999999999999999999999999999999999999asdasdasd")); ExceptionAssert.Throws(() => reader.ReadAsDecimal(), "Unexpected character encountered while parsing number: s. Path '', line 1, position 77."); reader = new JsonTextReader(new StringReader("9999999999999999999999999999999999999999999999999999999999999999999999999999asdasdasd")); reader.FloatParseHandling = Json.FloatParseHandling.Decimal; ExceptionAssert.Throws(() => reader.Read(), "Unexpected character encountered while parsing number: s. Path '', line 1, position 77."); reader = new JsonTextReader(new StringReader("1E-06")); Assert.AreEqual(0.000001m, reader.ReadAsDecimal()); reader = new JsonTextReader(new StringReader("")); Assert.AreEqual(null, reader.ReadAsDecimal()); reader = new JsonTextReader(new StringReader("-")); ExceptionAssert.Throws(() => reader.ReadAsDecimal(), "Input string '-' is not a valid decimal. Path '', line 1, position 1."); } [Test] public void ParseDoubles() { JsonTextReader reader = null; reader = new JsonTextReader(new StringReader("1.1")); Assert.IsTrue(reader.Read()); Assert.AreEqual(typeof(double), reader.ValueType); Assert.AreEqual(1.1d, reader.Value); reader = new JsonTextReader(new StringReader("-1.1")); Assert.IsTrue(reader.Read()); Assert.AreEqual(typeof(double), reader.ValueType); Assert.AreEqual(-1.1d, reader.Value); reader = new JsonTextReader(new StringReader("0.0")); Assert.IsTrue(reader.Read()); Assert.AreEqual(typeof(double), reader.ValueType); Assert.AreEqual(0.0d, reader.Value); reader = new JsonTextReader(new StringReader("-0.0")); Assert.IsTrue(reader.Read()); Assert.AreEqual(typeof(double), reader.ValueType); Assert.AreEqual(-0.0d, reader.Value); reader = new JsonTextReader(new StringReader("9999999999999999999999999999999999999999999999999999999999999999999999999999asdasdasd")); ExceptionAssert.Throws(() => reader.Read(), "Unexpected character encountered while parsing number: s. Path '', line 1, position 77."); reader = new JsonTextReader(new StringReader("1E-06")); Assert.IsTrue(reader.Read()); Assert.AreEqual(typeof(double), reader.ValueType); Assert.AreEqual(0.000001d, reader.Value); reader = new JsonTextReader(new StringReader("")); Assert.IsFalse(reader.Read()); reader = new JsonTextReader(new StringReader("-")); ExceptionAssert.Throws(() => reader.Read(), "Input string '-' is not a valid number. Path '', line 1, position 1."); } [Test] public void WriteReadWrite() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw) { Formatting = Formatting.Indented }) { jsonWriter.WriteStartArray(); jsonWriter.WriteValue(true); jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("integer"); jsonWriter.WriteValue(99); jsonWriter.WritePropertyName("string"); jsonWriter.WriteValue("how now brown cow?"); jsonWriter.WritePropertyName("array"); jsonWriter.WriteStartArray(); for (int i = 0; i < 5; i++) { jsonWriter.WriteValue(i); } jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("decimal"); jsonWriter.WriteValue(990.00990099m); jsonWriter.WriteEndObject(); jsonWriter.WriteValue(5); jsonWriter.WriteEndArray(); jsonWriter.WriteEndObject(); jsonWriter.WriteValue("This is a string."); jsonWriter.WriteNull(); jsonWriter.WriteNull(); jsonWriter.WriteEndArray(); } string json = sb.ToString(); JsonSerializer serializer = new JsonSerializer(); object jsonObject = serializer.Deserialize(new JsonTextReader(new StringReader(json))); sb = new StringBuilder(); sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw) { Formatting = Formatting.Indented }) { serializer.Serialize(jsonWriter, jsonObject); } Assert.AreEqual(json, sb.ToString()); } [Test] public void FloatingPointNonFiniteNumbers() { string input = @"[ NaN, Infinity, -Infinity ]"; StringReader sr = new StringReader(input); using (JsonReader jsonReader = new JsonTextReader(sr)) { jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.StartArray); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.Float); Assert.AreEqual(jsonReader.Value, double.NaN); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.Float); Assert.AreEqual(jsonReader.Value, double.PositiveInfinity); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.Float); Assert.AreEqual(jsonReader.Value, double.NegativeInfinity); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.EndArray); } } [Test] public void LongStringTest() { int length = 20000; string json = @"[""" + new string(' ', length) + @"""]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Read(); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); reader.Read(); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(typeof(string), reader.ValueType); Assert.AreEqual(20000, reader.Value.ToString().Length); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void EscapedUnicodeText() { string json = @"[""\u003c"",""\u5f20""]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); #if DEBUG reader.SetCharBuffer(new char[2]); #endif reader.Read(); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); reader.Read(); Assert.AreEqual("<", reader.Value); reader.Read(); Assert.AreEqual(24352, Convert.ToInt32(Convert.ToChar((string)reader.Value))); reader.Read(); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); } [Test] public void ReadFloatingPointNumber() { string json = @"[0.0,0.0,0.1,1.0,1.000001,1E-06,4.94065645841247E-324,Infinity,-Infinity,NaN,1.7976931348623157E+308,-1.7976931348623157E+308,Infinity,-Infinity,NaN,0e-10,0.25e-5,0.3e10]"; using (JsonReader jsonReader = new JsonTextReader(new StringReader(json))) { jsonReader.Read(); Assert.AreEqual(JsonToken.StartArray, jsonReader.TokenType); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(0.0, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(0.0, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(0.1, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(1.0, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(1.000001, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(1E-06, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(4.94065645841247E-324, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(double.PositiveInfinity, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(double.NegativeInfinity, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(double.NaN, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(double.MaxValue, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(double.MinValue, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(double.PositiveInfinity, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(double.NegativeInfinity, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(double.NaN, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(0d, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(0.0000025d, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Float, jsonReader.TokenType); Assert.AreEqual(3000000000d, jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.EndArray, jsonReader.TokenType); } } [Test] public void MissingColon() { string json = @"{ ""A"" : true, ""B"" """; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Read(); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); reader.Read(); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.Read(); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); ExceptionAssert.Throws(() => { reader.Read(); }, @"Invalid character after parsing property name. Expected ':' but got: "". Path 'A', line 3, position 9."); } [Test] public void ReadSingleBytes() { StringReader s = new StringReader(@"""SGVsbG8gd29ybGQu"""); JsonTextReader reader = new JsonTextReader(s); byte[] data = reader.ReadAsBytes(); Assert.IsNotNull(data); string text = Encoding.UTF8.GetString(data, 0, data.Length); Assert.AreEqual("Hello world.", text); } [Test] public void ReadOctalNumber() { StringReader s = new StringReader(@"[0372, 0xFA, 0XFA]"); JsonTextReader jsonReader = new JsonTextReader(s); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.StartArray, jsonReader.TokenType); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.Integer, jsonReader.TokenType); Assert.AreEqual(250L, jsonReader.Value); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.Integer, jsonReader.TokenType); Assert.AreEqual(250L, jsonReader.Value); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.Integer, jsonReader.TokenType); Assert.AreEqual(250L, jsonReader.Value); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.EndArray, jsonReader.TokenType); Assert.IsFalse(jsonReader.Read()); } [Test] public void ReadOctalNumberAsInt64() { StringReader s = new StringReader(@"[0372, 0xFA, 0XFA]"); JsonTextReader jsonReader = new JsonTextReader(s); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.StartArray, jsonReader.TokenType); jsonReader.Read(); Assert.AreEqual(JsonToken.Integer, jsonReader.TokenType); Assert.AreEqual(typeof(long), jsonReader.ValueType); Assert.AreEqual((long)250, (long)jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Integer, jsonReader.TokenType); Assert.AreEqual(typeof(long), jsonReader.ValueType); Assert.AreEqual((long)250, (long)jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Integer, jsonReader.TokenType); Assert.AreEqual(typeof(long), jsonReader.ValueType); Assert.AreEqual((long)250, (long)jsonReader.Value); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.EndArray, jsonReader.TokenType); Assert.IsFalse(jsonReader.Read()); } [Test] public void ReadOctalNumberAsInt32() { StringReader s = new StringReader(@"[0372, 0xFA, 0XFA]"); JsonTextReader jsonReader = new JsonTextReader(s); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.StartArray, jsonReader.TokenType); jsonReader.ReadAsInt32(); Assert.AreEqual(JsonToken.Integer, jsonReader.TokenType); Assert.AreEqual(typeof(int), jsonReader.ValueType); Assert.AreEqual(250, jsonReader.Value); jsonReader.ReadAsInt32(); Assert.AreEqual(JsonToken.Integer, jsonReader.TokenType); Assert.AreEqual(typeof(int), jsonReader.ValueType); Assert.AreEqual(250, jsonReader.Value); jsonReader.ReadAsInt32(); Assert.AreEqual(JsonToken.Integer, jsonReader.TokenType); Assert.AreEqual(typeof(int), jsonReader.ValueType); Assert.AreEqual(250, jsonReader.Value); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.EndArray, jsonReader.TokenType); Assert.IsFalse(jsonReader.Read()); } [Test] public void ReadBadCharInArray() { JsonTextReader reader = new JsonTextReader(new StringReader(@"[}")); reader.Read(); ExceptionAssert.Throws(() => { reader.Read(); }, "Unexpected character encountered while parsing value: }. Path '', line 1, position 1."); } [Test] public void ReadAsDecimalNoContent() { JsonTextReader reader = new JsonTextReader(new StringReader(@"")); Assert.IsNull(reader.ReadAsDecimal()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadAsBytesNoContent() { JsonTextReader reader = new JsonTextReader(new StringReader(@"")); Assert.IsNull(reader.ReadAsBytes()); Assert.AreEqual(JsonToken.None, reader.TokenType); } [Test] public void ReadAsBytesNoContentWrappedObject() { JsonTextReader reader = new JsonTextReader(new StringReader(@"{")); ExceptionAssert.Throws(() => { reader.ReadAsBytes(); }, "Unexpected end when reading bytes. Path '', line 1, position 1."); } #if !NET20 [Test] public void ReadAsDateTimeOffsetNoContent() { JsonTextReader reader = new JsonTextReader(new StringReader(@"")); Assert.IsNull(reader.ReadAsDateTimeOffset()); Assert.AreEqual(JsonToken.None, reader.TokenType); } #endif [Test] public void ReadAsDecimalBadContent() { JsonTextReader reader = new JsonTextReader(new StringReader(@"new Date()")); ExceptionAssert.Throws(() => { reader.ReadAsDecimal(); }, "Error reading decimal. Unexpected token: StartConstructor. Path '', line 1, position 9."); } [Test] public void ReadAsBytesBadContent() { JsonTextReader reader = new JsonTextReader(new StringReader(@"new Date()")); ExceptionAssert.Throws(() => { reader.ReadAsBytes(); }, "Error reading bytes. Unexpected token: StartConstructor. Path '', line 1, position 9."); } #if !NET20 [Test] public void ReadAsDateTimeOffsetBadContent() { JsonTextReader reader = new JsonTextReader(new StringReader(@"new Date()")); ExceptionAssert.Throws(() => { reader.ReadAsDateTimeOffset(); }, "Error reading date. Unexpected token: StartConstructor. Path '', line 1, position 9."); } #endif [Test] public void ReadAsBytesIntegerArrayWithComments() { JsonTextReader reader = new JsonTextReader(new StringReader(@"[/*hi*/1/*hi*/,2/*hi*/]")); byte[] data = reader.ReadAsBytes(); Assert.AreEqual(2, data.Length); Assert.AreEqual(1, data[0]); Assert.AreEqual(2, data[1]); } [Test] public void ReadAsBytesIntegerArrayWithNoEnd() { JsonTextReader reader = new JsonTextReader(new StringReader(@"[1")); ExceptionAssert.Throws(() => { reader.ReadAsBytes(); }, "Unexpected end when reading bytes. Path '[0]', line 1, position 2."); } [Test] public void ReadAsBytesArrayWithBadContent() { JsonTextReader reader = new JsonTextReader(new StringReader(@"[1.0]")); ExceptionAssert.Throws(() => { reader.ReadAsBytes(); }, "Unexpected token when reading bytes: Float. Path '[0]', line 1, position 4."); } [Test] public void ReadUnicode() { string json = @"{""Message"":""Hi,I\u0092ve send you smth""}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); #if DEBUG reader.SetCharBuffer(new char[5]); #endif Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Message", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(@"Hi,I" + '\u0092' + "ve send you smth", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void ReadHexidecimalWithAllLetters() { string json = @"{""text"":0xabcdef12345}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(11806310474565, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } #if !NET20 [Test] public void ReadAsDateTimeOffset() { string json = "{\"Offset\":\"\\/Date(946663200000+0600)\\/\"}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDateTimeOffset(); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); Assert.AreEqual(new DateTimeOffset(new DateTime(2000, 1, 1), TimeSpan.FromHours(6)), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void ReadAsDateTimeOffsetNegative() { string json = @"{""Offset"":""\/Date(946706400000-0600)\/""}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDateTimeOffset(); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); Assert.AreEqual(new DateTimeOffset(new DateTime(2000, 1, 1), TimeSpan.FromHours(-6)), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void ReadAsDateTimeOffsetBadString() { string json = @"{""Offset"":""blablahbla""}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); ExceptionAssert.Throws(() => { reader.ReadAsDateTimeOffset(); }, "Could not convert string to DateTimeOffset: blablahbla. Path 'Offset', line 1, position 22."); } [Test] public void ReadAsDateTimeOffsetHoursOnly() { string json = "{\"Offset\":\"\\/Date(946663200000+06)\\/\"}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDateTimeOffset(); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); Assert.AreEqual(new DateTimeOffset(new DateTime(2000, 1, 1), TimeSpan.FromHours(6)), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void ReadAsDateTimeOffsetWithMinutes() { string json = @"{""Offset"":""\/Date(946708260000-0631)\/""}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDateTimeOffset(); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); Assert.AreEqual(new DateTimeOffset(new DateTime(2000, 1, 1), TimeSpan.FromHours(-6).Add(TimeSpan.FromMinutes(-31))), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void ReadAsDateTimeOffsetIsoDate() { string json = @"{""Offset"":""2011-08-01T21:25Z""}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDateTimeOffset(); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); Assert.AreEqual(new DateTimeOffset(new DateTime(2011, 8, 1, 21, 25, 0, DateTimeKind.Utc), TimeSpan.Zero), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void ReadAsDateTimeOffsetUnitedStatesDate() { string json = @"{""Offset"":""1/30/2011""}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Culture = new CultureInfo("en-US"); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDateTimeOffset(); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); DateTimeOffset dt = (DateTimeOffset)reader.Value; Assert.AreEqual(new DateTime(2011, 1, 30, 0, 0, 0, DateTimeKind.Unspecified), dt.DateTime); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void ReadAsDateTimeOffsetNewZealandDate() { string json = @"{""Offset"":""30/1/2011""}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Culture = new CultureInfo("en-NZ"); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDateTimeOffset(); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); DateTimeOffset dt = (DateTimeOffset)reader.Value; Assert.AreEqual(new DateTime(2011, 1, 30, 0, 0, 0, DateTimeKind.Unspecified), dt.DateTime); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } #endif [Test] public void ReadAsDecimalInt() { string json = @"{""Name"":1}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(typeof(decimal), reader.ValueType); Assert.AreEqual(1m, reader.Value); } [Test] public void ReadAsIntDecimal() { string json = @"{""Name"": 1.1}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); ExceptionAssert.Throws(() => { reader.ReadAsInt32(); }, "Input string '1.1' is not a valid integer. Path 'Name', line 1, position 12."); } [Test] public void MatchWithInsufficentCharacters() { JsonTextReader reader = new JsonTextReader(new StringReader(@"nul")); ExceptionAssert.Throws(() => { reader.Read(); }, "Error parsing null value. Path '', line 0, position 0."); } [Test] public void MatchWithWrongCharacters() { JsonTextReader reader = new JsonTextReader(new StringReader(@"nulz")); ExceptionAssert.Throws(() => { reader.Read(); }, "Error parsing null value. Path '', line 0, position 0."); } [Test] public void MatchWithNoTrailingSeparator() { JsonTextReader reader = new JsonTextReader(new StringReader(@"nullz")); ExceptionAssert.Throws(() => { reader.Read(); }, "Error parsing null value. Path '', line 1, position 4."); } [Test] public void UnclosedComment() { JsonTextReader reader = new JsonTextReader(new StringReader(@"/* sdf")); ExceptionAssert.Throws(() => { reader.Read(); }, "Unexpected end while parsing comment. Path '', line 1, position 6."); } [Test] public void BadCommentStart() { JsonTextReader reader = new JsonTextReader(new StringReader(@"/sdf")); ExceptionAssert.Throws(() => { reader.Read(); }, "Error parsing comment. Expected: *, got s. Path '', line 1, position 1."); } [Test] public void ReadAsDecimal() { string json = @"{""decimal"":-7.92281625142643E+28}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); decimal? d = reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(typeof(decimal), reader.ValueType); Assert.AreEqual(-79228162514264300000000000000m, d); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void ReadAsDecimalFrench() { string json = @"{""decimal"":""9,99""}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Culture = new CultureInfo("fr-FR"); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); decimal? d = reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(typeof(decimal), reader.ValueType); Assert.AreEqual(9.99m, d); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void ReadBufferOnControlChar() { string json = @"[ { ""Name"": ""Jim"", ""BirthDate"": ""\/Date(978048000000)\/"", ""LastModified"": ""\/Date(978048000000)\/"" }, { ""Name"": ""Jim"", ""BirthDate"": ""\/Date(978048000000)\/"", ""LastModified"": ""\/Date(978048000000)\/"" } ]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); #if DEBUG reader.SetCharBuffer(new char[5]); #endif for (int i = 0; i < 13; i++) { reader.Read(); } Assert.IsTrue(reader.Read()); Assert.AreEqual(new DateTime(631136448000000000), reader.Value); } [Test] public void ReadBufferOnEndComment() { string json = @"/*comment*/ { /*comment*/ ""Name"": /*comment*/ ""Apple"" /*comment*/, /*comment*/ ""ExpiryDate"": ""\/Date(1230422400000)\/"", ""Price"": 3.99, ""Sizes"": /*comment*/ [ /*comment*/ ""Small"", /*comment*/ ""Medium"" /*comment*/, /*comment*/ ""Large"" /*comment*/ ] /*comment*/ } /*comment*/"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); #if DEBUG reader.SetCharBuffer(new char[5]); #endif for (int i = 0; i < 26; i++) { Assert.IsTrue(reader.Read()); } Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void ParseNullStringConstructor() { string json = "new Date\0()"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); #if DEBUG reader.SetCharBuffer(new char[7]); #endif Assert.IsTrue(reader.Read()); Assert.AreEqual("Date", reader.Value); Assert.AreEqual(JsonToken.StartConstructor, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndConstructor, reader.TokenType); } [Test] public void ParseLineFeedDelimitedConstructor() { string json = "new Date\n()"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual("Date", reader.Value); Assert.AreEqual(JsonToken.StartConstructor, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndConstructor, reader.TokenType); } [Test] public void ParseArrayWithMissingValues() { string json = "[,,, \n\r\n \0 \r , , ]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Undefined, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Undefined, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Undefined, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Undefined, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Undefined, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); } [Test] public void SupportMultipleContent() { JsonTextReader reader = new JsonTextReader(new StringReader(@"{'prop1':[1]} 1 2 ""name"" [][]null {}{} 1.1")); reader.SupportMultipleContent = true; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void ParseBooleanWithNoExtraContent() { string json = "[true "; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.IsFalse(reader.Read()); } [Test] public void ParseConstructorWithUnexpectedEnd() { string json = "new Dat"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); ExceptionAssert.Throws(() => { reader.Read(); }, "Unexpected end while parsing constructor. Path '', line 1, position 7."); } [Test] public void ParseConstructorWithUnexpectedCharacter() { string json = "new Date !"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); ExceptionAssert.Throws(() => { reader.Read(); }, "Unexpected character while parsing constructor: !. Path '', line 1, position 9."); } [Test] public void ParseObjectWithNoEnd() { string json = "{hi:1, "; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.IsFalse(reader.Read()); } [Test] public void ParseEmptyArray() { string json = "[]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); } [Test] public void ParseEmptyObject() { string json = "{}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void ParseIncompleteCommentSeparator() { JsonTextReader reader = new JsonTextReader(new StringReader("true/")); ExceptionAssert.Throws(() => { reader.Read(); }, "Error parsing boolean value. Path '', line 1, position 4."); } [Test] public void ParseEmptyConstructor() { string json = "new Date()"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartConstructor, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndConstructor, reader.TokenType); } [Test] public void ParseConstructorWithBadCharacter() { string json = "new Date,()"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); ExceptionAssert.Throws(() => { Assert.IsTrue(reader.Read()); }, "Unexpected character while parsing constructor: ,. Path '', line 1, position 8."); } [Test] public void ParseContentDelimitedByNonStandardWhitespace() { string json = "\x00a0{\x00a0'h\x00a0i\x00a0'\x00a0:\x00a0[\x00a0true\x00a0,\x00a0new\x00a0Date\x00a0(\x00a0)\x00a0]\x00a0/*\x00a0comment\x00a0*/\x00a0}\x00a0"; JsonTextReader reader = new JsonTextReader(new StreamReader(new SlowStream(json, new UTF8Encoding(false), 1))); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartConstructor, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndConstructor, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void ReadContentDelimitedByComments() { string json = @"/*comment*/{/*comment*/Name:/*comment*/true/*comment*/,/*comment*/ ""ExpiryDate"":/*comment*/new " + StringUtils.LineFeed + @"Date (/*comment*/null/*comment*/), ""Price"": 3.99, ""Sizes"":/*comment*/[/*comment*/ ""Small""/*comment*/]/*comment*/}/*comment*/"; JsonTextReader reader = new JsonTextReader(new StreamReader(new SlowStream(json, new UTF8Encoding(false), 1))); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Name", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.AreEqual(true, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("ExpiryDate", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartConstructor, reader.TokenType); Assert.AreEqual(5, reader.LineNumber); Assert.AreEqual("Date", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndConstructor, reader.TokenType); } [Test] public void SingleLineComments() { string json = @"//comment*//*hi*/ {//comment Name://comment true//comment after true" + StringUtils.CarriageReturn + @",//comment after comma" + StringUtils.CarriageReturnLineFeed + @"""ExpiryDate""://comment" + StringUtils.LineFeed + @"new " + StringUtils.LineFeed + @"Date (//comment null//comment ), ""Price"": 3.99, ""Sizes"": //comment [//comment ""Small""//comment ]//comment }//comment //comment 1 "; JsonTextReader reader = new JsonTextReader(new StreamReader(new SlowStream(json, new UTF8Encoding(false), 1))); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual("comment*//*hi*/", reader.Value); Assert.AreEqual(2, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(2, reader.LineNumber); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual(3, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Name", reader.Value); Assert.AreEqual(3, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual(4, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.AreEqual(true, reader.Value); Assert.AreEqual(4, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual("comment after true", reader.Value); Assert.AreEqual(5, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual("comment after comma", reader.Value); Assert.AreEqual(6, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("ExpiryDate", reader.Value); Assert.AreEqual(6, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual(7, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartConstructor, reader.TokenType); Assert.AreEqual(9, reader.LineNumber); Assert.AreEqual("Date", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.AreEqual(10, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual(11, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndConstructor, reader.TokenType); Assert.AreEqual(11, reader.LineNumber); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Price", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Sizes", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual("comment ", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual("comment 1 ", reader.Value); Assert.IsFalse(reader.Read()); } [Test] public void JustSinglelineComment() { string json = @"//comment"; JsonTextReader reader = new JsonTextReader(new StreamReader(new SlowStream(json, new UTF8Encoding(false), 1))); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Comment, reader.TokenType); Assert.AreEqual("comment", reader.Value); Assert.IsFalse(reader.Read()); } [Test] public void ErrorReadingComment() { string json = @"/"; JsonTextReader reader = new JsonTextReader(new StreamReader(new SlowStream(json, new UTF8Encoding(false), 1))); ExceptionAssert.Throws(() => { reader.Read(); }, "Unexpected end while parsing comment. Path '', line 1, position 1."); } [Test] public void ParseOctalNumber() { string json = @"010"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(8m, reader.Value); } [Test] public void ParseHexNumber() { string json = @"0x20"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(32m, reader.Value); } [Test] public void ParseNumbers() { string json = @"[0,1,2 , 3]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Read(); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); reader.Read(); Assert.AreEqual(JsonToken.Integer, reader.TokenType); reader.Read(); Assert.AreEqual(JsonToken.Integer, reader.TokenType); reader.Read(); Assert.AreEqual(JsonToken.Integer, reader.TokenType); reader.Read(); Assert.AreEqual(JsonToken.Integer, reader.TokenType); reader.Read(); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); } [Test] public void UnexpectedEndTokenWhenParsingOddEndToken() { JsonReader reader = new JsonTextReader(new StringReader(@"{}}")); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); ExceptionAssert.Throws(() => { reader.Read(); }, "Additional text encountered after finished reading JSON content: }. Path '', line 1, position 2."); } [Test] public void ScientificNotation() { double d; d = Convert.ToDouble("6.0221418e23", CultureInfo.InvariantCulture); Console.WriteLine(d.ToString(new CultureInfo("fr-FR"))); Console.WriteLine(d.ToString("0.#############################################################################")); //CultureInfo info = CultureInfo.GetCultureInfo("fr-FR"); //Console.WriteLine(info.NumberFormat.NumberDecimalSeparator); string json = @"[0e-10,0E-10,0.25e-5,0.3e10,6.0221418e23]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Read(); reader.Read(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(0d, reader.Value); reader.Read(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(0d, reader.Value); reader.Read(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(0.0000025d, reader.Value); reader.Read(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(3000000000d, reader.Value); reader.Read(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(602214180000000000000000d, reader.Value); reader.Read(); reader = new JsonTextReader(new StringReader(json)); reader.Read(); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(0m, reader.Value); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(0m, reader.Value); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(0.0000025m, reader.Value); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(3000000000m, reader.Value); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(602214180000000000000000m, reader.Value); reader.Read(); } [Test] public void MaxDepth() { string json = "[[]]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)) { MaxDepth = 1 }; Assert.IsTrue(reader.Read()); ExceptionAssert.Throws(() => { Assert.IsTrue(reader.Read()); }, "The reader's MaxDepth of 1 has been exceeded. Path '[0]', line 1, position 2."); } [Test] public void MaxDepthDoesNotRecursivelyError() { string json = "[[[[]]],[[]]]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)) { MaxDepth = 1 }; Assert.IsTrue(reader.Read()); Assert.AreEqual(0, reader.Depth); ExceptionAssert.Throws(() => { Assert.IsTrue(reader.Read()); }, "The reader's MaxDepth of 1 has been exceeded. Path '[0]', line 1, position 2."); Assert.AreEqual(1, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(2, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(3, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(3, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(2, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(1, reader.Depth); ExceptionAssert.Throws(() => { Assert.IsTrue(reader.Read()); }, "The reader's MaxDepth of 1 has been exceeded. Path '[1]', line 1, position 9."); Assert.AreEqual(1, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(2, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(2, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(1, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(0, reader.Depth); Assert.IsFalse(reader.Read()); } [Test] public void ReadingFromSlowStream() { string json = "[false, true, true, false, 'test!', 1.11, 0e-10, 0E-10, 0.25e-5, 0.3e10, 6.0221418e23, 'Purple\\r \\n monkey\\'s:\\tdishwasher']"; JsonTextReader reader = new JsonTextReader(new StreamReader(new SlowStream(json, new UTF8Encoding(false), 1))); Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.AreEqual(false, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.AreEqual(true, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.AreEqual(true, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.AreEqual(false, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("test!", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(1.11d, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(0d, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(0d, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(0.0000025d, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(3000000000d, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(602214180000000000000000d, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(reader.Value, "Purple\r \n monkey's:\tdishwasher"); Assert.IsTrue(reader.Read()); } [Test] public void DateParseHandling() { string json = @"[""1970-01-01T00:00:00Z"",""\/Date(0)\/""]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.DateParseHandling = Json.DateParseHandling.DateTime; Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.AreEqual(new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc), reader.Value); Assert.AreEqual(typeof(DateTime), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc), reader.Value); Assert.AreEqual(typeof(DateTime), reader.ValueType); Assert.IsTrue(reader.Read()); #if !NET20 reader = new JsonTextReader(new StringReader(json)); reader.DateParseHandling = Json.DateParseHandling.DateTimeOffset; Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.AreEqual(new DateTimeOffset(DateTimeUtils.InitialJavaScriptDateTicks, TimeSpan.Zero), reader.Value); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(new DateTimeOffset(DateTimeUtils.InitialJavaScriptDateTicks, TimeSpan.Zero), reader.Value); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); Assert.IsTrue(reader.Read()); #endif reader = new JsonTextReader(new StringReader(json)); reader.DateParseHandling = Json.DateParseHandling.None; Assert.IsTrue(reader.Read()); Assert.IsTrue(reader.Read()); Assert.AreEqual(@"1970-01-01T00:00:00Z", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); Assert.AreEqual(@"/Date(0)/", reader.Value); Assert.AreEqual(typeof(string), reader.ValueType); Assert.IsTrue(reader.Read()); #if !NET20 reader = new JsonTextReader(new StringReader(json)); reader.DateParseHandling = Json.DateParseHandling.DateTime; Assert.IsTrue(reader.Read()); reader.ReadAsDateTimeOffset(); Assert.AreEqual(new DateTimeOffset(DateTimeUtils.InitialJavaScriptDateTicks, TimeSpan.Zero), reader.Value); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); reader.ReadAsDateTimeOffset(); Assert.AreEqual(new DateTimeOffset(DateTimeUtils.InitialJavaScriptDateTicks, TimeSpan.Zero), reader.Value); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); Assert.IsTrue(reader.Read()); reader = new JsonTextReader(new StringReader(json)); reader.DateParseHandling = Json.DateParseHandling.DateTimeOffset; Assert.IsTrue(reader.Read()); reader.ReadAsDateTime(); Assert.AreEqual(new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc), reader.Value); Assert.AreEqual(typeof(DateTime), reader.ValueType); reader.ReadAsDateTime(); Assert.AreEqual(new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc), reader.Value); Assert.AreEqual(typeof(DateTime), reader.ValueType); Assert.IsTrue(reader.Read()); #endif } [Test] public void ResetJsonTextReaderErrorCount() { ToggleReaderError toggleReaderError = new ToggleReaderError(new StringReader("{'first':1,'second':2,'third':3}")); JsonTextReader jsonTextReader = new JsonTextReader(toggleReaderError); Assert.IsTrue(jsonTextReader.Read()); toggleReaderError.Error = true; ExceptionAssert.Throws(() => jsonTextReader.Read(), "Read error"); ExceptionAssert.Throws(() => jsonTextReader.Read(), "Read error"); toggleReaderError.Error = false; Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual("first", jsonTextReader.Value); toggleReaderError.Error = true; ExceptionAssert.Throws(() => jsonTextReader.Read(), "Read error"); toggleReaderError.Error = false; Assert.IsTrue(jsonTextReader.Read()); Assert.AreEqual(1L, jsonTextReader.Value); toggleReaderError.Error = true; ExceptionAssert.Throws(() => jsonTextReader.Read(), "Read error"); ExceptionAssert.Throws(() => jsonTextReader.Read(), "Read error"); ExceptionAssert.Throws(() => jsonTextReader.Read(), "Read error"); toggleReaderError.Error = false; //a reader use to skip to the end after 3 errors in a row //Assert.IsFalse(jsonTextReader.Read()); } [Test] public void WriteReadBoundaryDecimals() { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.WriteStartArray(); writer.WriteValue(decimal.MaxValue); writer.WriteValue(decimal.MinValue); writer.WriteEndArray(); string json = sw.ToString(); StringReader sr = new StringReader(json); JsonTextReader reader = new JsonTextReader(sr); Assert.IsTrue(reader.Read()); decimal? max = reader.ReadAsDecimal(); Assert.AreEqual(decimal.MaxValue, max); decimal? min = reader.ReadAsDecimal(); Assert.AreEqual(decimal.MinValue, min); Assert.IsTrue(reader.Read()); } [Test] public void EscapedPathInExceptionMessage() { string json = @"{ ""frameworks"": { ""aspnetcore50"": { ""dependencies"": { ""System.Xml.ReaderWriter"": { ""source"": !!! !!! } } } } }"; ExceptionAssert.Throws( () => { JsonTextReader reader = new JsonTextReader(new StringReader(json)); while (reader.Read()) { } }, "Unexpected character encountered while parsing value: !. Path 'frameworks.aspnetcore50.dependencies.['System.Xml.ReaderWriter'].source', line 6, position 21."); } } public class ToggleReaderError : TextReader { private readonly TextReader _inner; public bool Error { get; set; } public ToggleReaderError(TextReader inner) { _inner = inner; } public override int Read(char[] buffer, int index, int count) { if (Error) throw new Exception("Read error"); return _inner.Read(buffer, index, 1); } } public class SlowStream : Stream { private byte[] bytes; private int totalBytesRead; private int bytesPerRead; public SlowStream(byte[] content, int bytesPerRead) { bytes = content; totalBytesRead = 0; this.bytesPerRead = bytesPerRead; } public SlowStream(string content, Encoding encoding, int bytesPerRead) : this(encoding.GetBytes(content), bytesPerRead) { } public override bool CanRead { get { return true; } } public override bool CanSeek { get { return false; } } public override bool CanWrite { get { return false; } } public override void Flush() { } public override long Length { get { throw new NotSupportedException(); } } public override long Position { get { throw new NotSupportedException(); } set { throw new NotSupportedException(); } } public override int Read(byte[] buffer, int offset, int count) { int toReturn = Math.Min(count, bytesPerRead); toReturn = Math.Min(toReturn, bytes.Length - totalBytesRead); if (toReturn > 0) { Array.Copy(bytes, totalBytesRead, buffer, offset, toReturn); } totalBytesRead += toReturn; return toReturn; } public override long Seek(long offset, SeekOrigin origin) { throw new NotSupportedException(); } public override void SetLength(long value) { throw new NotSupportedException(); } public override void Write(byte[] buffer, int offset, int count) { throw new NotSupportedException(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/JsonConvertTest.cs0000664000175000017500000015422512454416117026011 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.IO; #if !(NET20 || NET35 || PORTABLE40 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif using System.Runtime.Serialization; using System.Text; #if !(NET20 || NET35) using System.Threading.Tasks; #endif using System.Xml; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests { [TestFixture] public class JsonConvertTest : TestFixtureBase { [Test] public void DefaultSettings() { try { JsonConvert.DefaultSettings = () => new JsonSerializerSettings { Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(new { test = new[] { 1, 2, 3 } }); StringAssert.AreEqual(@"{ ""test"": [ 1, 2, 3 ] }", json); } finally { JsonConvert.DefaultSettings = null; } } public class NameTableTestClass { public string Value { get; set; } } public class NameTableTestClassConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { throw new NotImplementedException(); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { reader.Read(); reader.Read(); JsonTextReader jsonTextReader = (JsonTextReader)reader; Assert.IsNotNull(jsonTextReader.NameTable); string s = serializer.Deserialize(reader); Assert.AreEqual("hi", s); Assert.IsNotNull(jsonTextReader.NameTable); NameTableTestClass o = new NameTableTestClass { Value = s }; return o; } public override bool CanConvert(Type objectType) { return objectType == typeof(NameTableTestClass); } } [Test] public void NameTableTest() { StringReader sr = new StringReader("{'property':'hi'}"); JsonTextReader jsonTextReader = new JsonTextReader(sr); Assert.IsNull(jsonTextReader.NameTable); JsonSerializer serializer = new JsonSerializer(); serializer.Converters.Add(new NameTableTestClassConverter()); NameTableTestClass o = serializer.Deserialize(jsonTextReader); Assert.IsNull(jsonTextReader.NameTable); Assert.AreEqual("hi", o.Value); } [Test] public void DefaultSettings_Example() { try { JsonConvert.DefaultSettings = () => new JsonSerializerSettings { Formatting = Formatting.Indented, ContractResolver = new CamelCasePropertyNamesContractResolver() }; Employee e = new Employee { FirstName = "Eric", LastName = "Example", BirthDate = new DateTime(1980, 4, 20, 0, 0, 0, DateTimeKind.Utc), Department = "IT", JobTitle = "Web Dude" }; string json = JsonConvert.SerializeObject(e); // { // "firstName": "Eric", // "lastName": "Example", // "birthDate": "1980-04-20T00:00:00Z", // "department": "IT", // "jobTitle": "Web Dude" // } StringAssert.AreEqual(@"{ ""firstName"": ""Eric"", ""lastName"": ""Example"", ""birthDate"": ""1980-04-20T00:00:00Z"", ""department"": ""IT"", ""jobTitle"": ""Web Dude"" }", json); } finally { JsonConvert.DefaultSettings = null; } } [Test] public void DefaultSettings_Override() { try { JsonConvert.DefaultSettings = () => new JsonSerializerSettings { Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(new { test = new[] { 1, 2, 3 } }, new JsonSerializerSettings { Formatting = Formatting.None }); Assert.AreEqual(@"{""test"":[1,2,3]}", json); } finally { JsonConvert.DefaultSettings = null; } } [Test] public void DefaultSettings_Override_JsonConverterOrder() { try { JsonConvert.DefaultSettings = () => new JsonSerializerSettings { Formatting = Formatting.Indented, Converters = { new IsoDateTimeConverter { DateTimeFormat = "yyyy" } } }; string json = JsonConvert.SerializeObject(new[] { new DateTime(2000, 12, 12, 4, 2, 4, DateTimeKind.Utc) }, new JsonSerializerSettings { Formatting = Formatting.None, Converters = { // should take precedence new JavaScriptDateTimeConverter(), new IsoDateTimeConverter { DateTimeFormat = "dd" } } }); Assert.AreEqual(@"[new Date(976593724000)]", json); } finally { JsonConvert.DefaultSettings = null; } } [Test] public void DefaultSettings_Create() { try { JsonConvert.DefaultSettings = () => new JsonSerializerSettings { Formatting = Formatting.Indented }; IList l = new List { 1, 2, 3 }; StringWriter sw = new StringWriter(); JsonSerializer serializer = JsonSerializer.CreateDefault(); serializer.Serialize(sw, l); StringAssert.AreEqual(@"[ 1, 2, 3 ]", sw.ToString()); sw = new StringWriter(); serializer.Formatting = Formatting.None; serializer.Serialize(sw, l); Assert.AreEqual(@"[1,2,3]", sw.ToString()); sw = new StringWriter(); serializer = new JsonSerializer(); serializer.Serialize(sw, l); Assert.AreEqual(@"[1,2,3]", sw.ToString()); sw = new StringWriter(); serializer = JsonSerializer.Create(); serializer.Serialize(sw, l); Assert.AreEqual(@"[1,2,3]", sw.ToString()); } finally { JsonConvert.DefaultSettings = null; } } [Test] public void DefaultSettings_CreateWithSettings() { try { JsonConvert.DefaultSettings = () => new JsonSerializerSettings { Formatting = Formatting.Indented }; IList l = new List { 1, 2, 3 }; StringWriter sw = new StringWriter(); JsonSerializer serializer = JsonSerializer.CreateDefault(new JsonSerializerSettings { Converters = { new IntConverter() } }); serializer.Serialize(sw, l); StringAssert.AreEqual(@"[ 2, 4, 6 ]", sw.ToString()); sw = new StringWriter(); serializer.Converters.Clear(); serializer.Serialize(sw, l); StringAssert.AreEqual(@"[ 1, 2, 3 ]", sw.ToString()); sw = new StringWriter(); serializer = JsonSerializer.Create(new JsonSerializerSettings { Formatting = Formatting.Indented }); serializer.Serialize(sw, l); StringAssert.AreEqual(@"[ 1, 2, 3 ]", sw.ToString()); } finally { JsonConvert.DefaultSettings = null; } } public class IntConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { int i = (int)value; writer.WriteValue(i * 2); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { throw new NotImplementedException(); } public override bool CanConvert(Type objectType) { return objectType == typeof(int); } } [Test] public void DeserializeObject_EmptyString() { object result = JsonConvert.DeserializeObject(string.Empty); Assert.IsNull(result); } [Test] public void DeserializeObject_Integer() { object result = JsonConvert.DeserializeObject("1"); Assert.AreEqual(1L, result); } [Test] public void DeserializeObject_Integer_EmptyString() { int? value = JsonConvert.DeserializeObject(""); Assert.IsNull(value); } [Test] public void DeserializeObject_Decimal_EmptyString() { decimal? value = JsonConvert.DeserializeObject(""); Assert.IsNull(value); } [Test] public void DeserializeObject_DateTime_EmptyString() { DateTime? value = JsonConvert.DeserializeObject(""); Assert.IsNull(value); } [Test] public void EscapeJavaScriptString() { string result; result = JavaScriptUtils.ToEscapedJavaScriptString("How now brown cow?", '"', true); Assert.AreEqual(@"""How now brown cow?""", result); result = JavaScriptUtils.ToEscapedJavaScriptString("How now 'brown' cow?", '"', true); Assert.AreEqual(@"""How now 'brown' cow?""", result); result = JavaScriptUtils.ToEscapedJavaScriptString("How now cow?", '"', true); Assert.AreEqual(@"""How now cow?""", result); result = JavaScriptUtils.ToEscapedJavaScriptString("How \r\nnow brown cow?", '"', true); Assert.AreEqual(@"""How \r\nnow brown cow?""", result); result = JavaScriptUtils.ToEscapedJavaScriptString("\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007", '"', true); Assert.AreEqual(@"""\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007""", result); result = JavaScriptUtils.ToEscapedJavaScriptString("\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013", '"', true); Assert.AreEqual(@"""\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013""", result); result = JavaScriptUtils.ToEscapedJavaScriptString( "\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f ", '"', true); Assert.AreEqual(@"""\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f """, result); result = JavaScriptUtils.ToEscapedJavaScriptString( "!\"#$%&\u0027()*+,-./0123456789:;\u003c=\u003e?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]", '"', true); Assert.AreEqual(@"""!\""#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]""", result); result = JavaScriptUtils.ToEscapedJavaScriptString("^_`abcdefghijklmnopqrstuvwxyz{|}~", '"', true); Assert.AreEqual(@"""^_`abcdefghijklmnopqrstuvwxyz{|}~""", result); string data = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&\u0027()*+,-./0123456789:;\u003c=\u003e?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~"; string expected = @"""\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\""#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~"""; result = JavaScriptUtils.ToEscapedJavaScriptString(data, '"', true); Assert.AreEqual(expected, result); result = JavaScriptUtils.ToEscapedJavaScriptString("Fred's cat.", '\'', true); Assert.AreEqual(result, @"'Fred\'s cat.'"); result = JavaScriptUtils.ToEscapedJavaScriptString(@"""How are you gentlemen?"" said Cats.", '"', true); Assert.AreEqual(result, @"""\""How are you gentlemen?\"" said Cats."""); result = JavaScriptUtils.ToEscapedJavaScriptString(@"""How are' you gentlemen?"" said Cats.", '"', true); Assert.AreEqual(result, @"""\""How are' you gentlemen?\"" said Cats."""); result = JavaScriptUtils.ToEscapedJavaScriptString(@"Fred's ""cat"".", '\'', true); Assert.AreEqual(result, @"'Fred\'s ""cat"".'"); result = JavaScriptUtils.ToEscapedJavaScriptString("\u001farray\u003caddress", '"', true); Assert.AreEqual(result, @"""\u001farray(() => { JsonConvert.ToString(new Version(1, 0)); }, "Unsupported type: System.Version. Use the JsonSerializer class to get the object's JSON representation."); } [Test] public void GuidToString() { Guid guid = new Guid("BED7F4EA-1A96-11d2-8F08-00A0C9A6186D"); string json = JsonConvert.ToString(guid); Assert.AreEqual(@"""bed7f4ea-1a96-11d2-8f08-00a0c9a6186d""", json); } [Test] public void EnumToString() { string json = JsonConvert.ToString(StringComparison.CurrentCultureIgnoreCase); Assert.AreEqual("1", json); } [Test] public void ObjectToString() { object value; value = 1; Assert.AreEqual("1", JsonConvert.ToString(value)); value = 1.1; Assert.AreEqual("1.1", JsonConvert.ToString(value)); value = 1.1m; Assert.AreEqual("1.1", JsonConvert.ToString(value)); value = (float)1.1; Assert.AreEqual("1.1", JsonConvert.ToString(value)); value = (short)1; Assert.AreEqual("1", JsonConvert.ToString(value)); value = (long)1; Assert.AreEqual("1", JsonConvert.ToString(value)); value = (byte)1; Assert.AreEqual("1", JsonConvert.ToString(value)); value = (uint)1; Assert.AreEqual("1", JsonConvert.ToString(value)); value = (ushort)1; Assert.AreEqual("1", JsonConvert.ToString(value)); value = (sbyte)1; Assert.AreEqual("1", JsonConvert.ToString(value)); value = (ulong)1; Assert.AreEqual("1", JsonConvert.ToString(value)); value = new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc); Assert.AreEqual(@"""1970-01-01T00:00:00Z""", JsonConvert.ToString(value)); value = new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc); Assert.AreEqual(@"""\/Date(0)\/""", JsonConvert.ToString((DateTime)value, DateFormatHandling.MicrosoftDateFormat, DateTimeZoneHandling.RoundtripKind)); #if !NET20 value = new DateTimeOffset(DateTimeUtils.InitialJavaScriptDateTicks, TimeSpan.Zero); Assert.AreEqual(@"""1970-01-01T00:00:00+00:00""", JsonConvert.ToString(value)); value = new DateTimeOffset(DateTimeUtils.InitialJavaScriptDateTicks, TimeSpan.Zero); Assert.AreEqual(@"""\/Date(0+0000)\/""", JsonConvert.ToString((DateTimeOffset)value, DateFormatHandling.MicrosoftDateFormat)); #endif value = null; Assert.AreEqual("null", JsonConvert.ToString(value)); #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) value = DBNull.Value; Assert.AreEqual("null", JsonConvert.ToString(value)); #endif value = "I am a string"; Assert.AreEqual(@"""I am a string""", JsonConvert.ToString(value)); value = true; Assert.AreEqual("true", JsonConvert.ToString(value)); value = 'c'; Assert.AreEqual(@"""c""", JsonConvert.ToString(value)); } [Test] public void TestInvalidStrings() { ExceptionAssert.Throws(() => { string orig = @"this is a string ""that has quotes"" "; string serialized = JsonConvert.SerializeObject(orig); // *** Make string invalid by stripping \" \" serialized = serialized.Replace(@"\""", "\""); JsonConvert.DeserializeObject(serialized); }, "Additional text encountered after finished reading JSON content: t. Path '', line 1, position 19."); } [Test] public void DeserializeValueObjects() { int i = JsonConvert.DeserializeObject("1"); Assert.AreEqual(1, i); #if !NET20 DateTimeOffset d = JsonConvert.DeserializeObject(@"""\/Date(-59011455539000+0000)\/"""); Assert.AreEqual(new DateTimeOffset(new DateTime(100, 1, 1, 1, 1, 1, DateTimeKind.Utc)), d); #endif bool b = JsonConvert.DeserializeObject("true"); Assert.AreEqual(true, b); object n = JsonConvert.DeserializeObject("null"); Assert.AreEqual(null, n); object u = JsonConvert.DeserializeObject("undefined"); Assert.AreEqual(null, u); } [Test] public void FloatToString() { Assert.AreEqual("1.1", JsonConvert.ToString(1.1)); Assert.AreEqual("1.11", JsonConvert.ToString(1.11)); Assert.AreEqual("1.111", JsonConvert.ToString(1.111)); Assert.AreEqual("1.1111", JsonConvert.ToString(1.1111)); Assert.AreEqual("1.11111", JsonConvert.ToString(1.11111)); Assert.AreEqual("1.111111", JsonConvert.ToString(1.111111)); Assert.AreEqual("1.0", JsonConvert.ToString(1.0)); Assert.AreEqual("1.0", JsonConvert.ToString(1d)); Assert.AreEqual("-1.0", JsonConvert.ToString(-1d)); Assert.AreEqual("1.01", JsonConvert.ToString(1.01)); Assert.AreEqual("1.001", JsonConvert.ToString(1.001)); Assert.AreEqual(JsonConvert.PositiveInfinity, JsonConvert.ToString(Double.PositiveInfinity)); Assert.AreEqual(JsonConvert.NegativeInfinity, JsonConvert.ToString(Double.NegativeInfinity)); Assert.AreEqual(JsonConvert.NaN, JsonConvert.ToString(Double.NaN)); } [Test] public void DecimalToString() { Assert.AreEqual("1.1", JsonConvert.ToString(1.1m)); Assert.AreEqual("1.11", JsonConvert.ToString(1.11m)); Assert.AreEqual("1.111", JsonConvert.ToString(1.111m)); Assert.AreEqual("1.1111", JsonConvert.ToString(1.1111m)); Assert.AreEqual("1.11111", JsonConvert.ToString(1.11111m)); Assert.AreEqual("1.111111", JsonConvert.ToString(1.111111m)); Assert.AreEqual("1.0", JsonConvert.ToString(1.0m)); Assert.AreEqual("-1.0", JsonConvert.ToString(-1.0m)); Assert.AreEqual("-1.0", JsonConvert.ToString(-1m)); Assert.AreEqual("1.0", JsonConvert.ToString(1m)); Assert.AreEqual("1.01", JsonConvert.ToString(1.01m)); Assert.AreEqual("1.001", JsonConvert.ToString(1.001m)); Assert.AreEqual("79228162514264337593543950335.0", JsonConvert.ToString(Decimal.MaxValue)); Assert.AreEqual("-79228162514264337593543950335.0", JsonConvert.ToString(Decimal.MinValue)); } [Test] public void StringEscaping() { string v = "It's a good day\r\n\"sunshine\""; string json = JsonConvert.ToString(v); Assert.AreEqual(@"""It's a good day\r\n\""sunshine\""""", json); } [Test] public void ToStringStringEscapeHandling() { string v = "hi " + '\u20AC' + ""; string json = JsonConvert.ToString(v, '"'); Assert.AreEqual(@"""hi " + '\u20AC' + @"""", json); json = JsonConvert.ToString(v, '"', StringEscapeHandling.EscapeHtml); Assert.AreEqual(@"""\u003cb\u003ehi " + '\u20AC' + @"\u003c/b\u003e""", json); json = JsonConvert.ToString(v, '"', StringEscapeHandling.EscapeNonAscii); Assert.AreEqual(@"""hi \u20ac""", json); } [Test] public void WriteDateTime() { DateTimeResult result = null; result = TestDateTime("DateTime Max", DateTime.MaxValue); Assert.AreEqual("9999-12-31T23:59:59.9999999", result.IsoDateRoundtrip); Assert.AreEqual("9999-12-31T23:59:59.9999999" + GetOffset(DateTime.MaxValue, DateFormatHandling.IsoDateFormat), result.IsoDateLocal); Assert.AreEqual("9999-12-31T23:59:59.9999999", result.IsoDateUnspecified); Assert.AreEqual("9999-12-31T23:59:59.9999999Z", result.IsoDateUtc); Assert.AreEqual(@"\/Date(253402300799999)\/", result.MsDateRoundtrip); Assert.AreEqual(@"\/Date(253402300799999" + GetOffset(DateTime.MaxValue, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateLocal); Assert.AreEqual(@"\/Date(253402300799999)\/", result.MsDateUnspecified); Assert.AreEqual(@"\/Date(253402300799999)\/", result.MsDateUtc); DateTime year2000local = new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Local); string localToUtcDate = year2000local.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.FFFFFFFK"); result = TestDateTime("DateTime Local", year2000local); Assert.AreEqual("2000-01-01T01:01:01" + GetOffset(year2000local, DateFormatHandling.IsoDateFormat), result.IsoDateRoundtrip); Assert.AreEqual("2000-01-01T01:01:01" + GetOffset(year2000local, DateFormatHandling.IsoDateFormat), result.IsoDateLocal); Assert.AreEqual("2000-01-01T01:01:01", result.IsoDateUnspecified); Assert.AreEqual(localToUtcDate, result.IsoDateUtc); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(year2000local) + GetOffset(year2000local, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateRoundtrip); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(year2000local) + GetOffset(year2000local, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateLocal); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(year2000local) + GetOffset(year2000local, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateUnspecified); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(year2000local) + @")\/", result.MsDateUtc); DateTime millisecondsLocal = new DateTime(2000, 1, 1, 1, 1, 1, 999, DateTimeKind.Local); localToUtcDate = millisecondsLocal.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.FFFFFFFK"); result = TestDateTime("DateTime Local with milliseconds", millisecondsLocal); Assert.AreEqual("2000-01-01T01:01:01.999" + GetOffset(millisecondsLocal, DateFormatHandling.IsoDateFormat), result.IsoDateRoundtrip); Assert.AreEqual("2000-01-01T01:01:01.999" + GetOffset(millisecondsLocal, DateFormatHandling.IsoDateFormat), result.IsoDateLocal); Assert.AreEqual("2000-01-01T01:01:01.999", result.IsoDateUnspecified); Assert.AreEqual(localToUtcDate, result.IsoDateUtc); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(millisecondsLocal) + GetOffset(millisecondsLocal, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateRoundtrip); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(millisecondsLocal) + GetOffset(millisecondsLocal, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateLocal); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(millisecondsLocal) + GetOffset(millisecondsLocal, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateUnspecified); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(millisecondsLocal) + @")\/", result.MsDateUtc); DateTime ticksLocal = new DateTime(634663873826822481, DateTimeKind.Local); localToUtcDate = ticksLocal.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.FFFFFFFK"); result = TestDateTime("DateTime Local with ticks", ticksLocal); Assert.AreEqual("2012-03-03T16:03:02.6822481" + GetOffset(ticksLocal, DateFormatHandling.IsoDateFormat), result.IsoDateRoundtrip); Assert.AreEqual("2012-03-03T16:03:02.6822481" + GetOffset(ticksLocal, DateFormatHandling.IsoDateFormat), result.IsoDateLocal); Assert.AreEqual("2012-03-03T16:03:02.6822481", result.IsoDateUnspecified); Assert.AreEqual(localToUtcDate, result.IsoDateUtc); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(ticksLocal) + GetOffset(ticksLocal, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateRoundtrip); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(ticksLocal) + GetOffset(ticksLocal, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateLocal); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(ticksLocal) + GetOffset(ticksLocal, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateUnspecified); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(ticksLocal) + @")\/", result.MsDateUtc); DateTime year2000Unspecified = new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Unspecified); result = TestDateTime("DateTime Unspecified", year2000Unspecified); Assert.AreEqual("2000-01-01T01:01:01", result.IsoDateRoundtrip); Assert.AreEqual("2000-01-01T01:01:01" + GetOffset(year2000Unspecified, DateFormatHandling.IsoDateFormat), result.IsoDateLocal); Assert.AreEqual("2000-01-01T01:01:01", result.IsoDateUnspecified); Assert.AreEqual("2000-01-01T01:01:01Z", result.IsoDateUtc); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(year2000Unspecified) + GetOffset(year2000Unspecified, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateRoundtrip); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(year2000Unspecified) + GetOffset(year2000Unspecified, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateLocal); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(year2000Unspecified) + GetOffset(year2000Unspecified, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateUnspecified); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(year2000Unspecified.ToLocalTime()) + @")\/", result.MsDateUtc); DateTime year2000Utc = new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Utc); string utcTolocalDate = year2000Utc.ToLocalTime().ToString("yyyy-MM-ddTHH:mm:ss"); result = TestDateTime("DateTime Utc", year2000Utc); Assert.AreEqual("2000-01-01T01:01:01Z", result.IsoDateRoundtrip); Assert.AreEqual(utcTolocalDate + GetOffset(year2000Utc, DateFormatHandling.IsoDateFormat), result.IsoDateLocal); Assert.AreEqual("2000-01-01T01:01:01", result.IsoDateUnspecified); Assert.AreEqual("2000-01-01T01:01:01Z", result.IsoDateUtc); Assert.AreEqual(@"\/Date(946688461000)\/", result.MsDateRoundtrip); Assert.AreEqual(@"\/Date(946688461000" + GetOffset(year2000Utc, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateLocal); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(DateTime.SpecifyKind(year2000Utc, DateTimeKind.Unspecified)) + GetOffset(year2000Utc, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateUnspecified); Assert.AreEqual(@"\/Date(946688461000)\/", result.MsDateUtc); DateTime unixEpoc = new DateTime(621355968000000000, DateTimeKind.Utc); utcTolocalDate = unixEpoc.ToLocalTime().ToString("yyyy-MM-ddTHH:mm:ss"); result = TestDateTime("DateTime Unix Epoc", unixEpoc); Assert.AreEqual("1970-01-01T00:00:00Z", result.IsoDateRoundtrip); Assert.AreEqual(utcTolocalDate + GetOffset(unixEpoc, DateFormatHandling.IsoDateFormat), result.IsoDateLocal); Assert.AreEqual("1970-01-01T00:00:00", result.IsoDateUnspecified); Assert.AreEqual("1970-01-01T00:00:00Z", result.IsoDateUtc); Assert.AreEqual(@"\/Date(0)\/", result.MsDateRoundtrip); Assert.AreEqual(@"\/Date(0" + GetOffset(unixEpoc, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateLocal); Assert.AreEqual(@"\/Date(" + DateTimeUtils.ConvertDateTimeToJavaScriptTicks(DateTime.SpecifyKind(unixEpoc, DateTimeKind.Unspecified)) + GetOffset(unixEpoc, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateUnspecified); Assert.AreEqual(@"\/Date(0)\/", result.MsDateUtc); result = TestDateTime("DateTime Min", DateTime.MinValue); Assert.AreEqual("0001-01-01T00:00:00", result.IsoDateRoundtrip); Assert.AreEqual("0001-01-01T00:00:00" + GetOffset(DateTime.MinValue, DateFormatHandling.IsoDateFormat), result.IsoDateLocal); Assert.AreEqual("0001-01-01T00:00:00", result.IsoDateUnspecified); Assert.AreEqual("0001-01-01T00:00:00Z", result.IsoDateUtc); Assert.AreEqual(@"\/Date(-62135596800000)\/", result.MsDateRoundtrip); Assert.AreEqual(@"\/Date(-62135596800000" + GetOffset(DateTime.MinValue, DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateLocal); Assert.AreEqual(@"\/Date(-62135596800000)\/", result.MsDateUnspecified); Assert.AreEqual(@"\/Date(-62135596800000)\/", result.MsDateUtc); result = TestDateTime("DateTime Default", default(DateTime)); Assert.AreEqual("0001-01-01T00:00:00", result.IsoDateRoundtrip); Assert.AreEqual("0001-01-01T00:00:00" + GetOffset(default(DateTime), DateFormatHandling.IsoDateFormat), result.IsoDateLocal); Assert.AreEqual("0001-01-01T00:00:00", result.IsoDateUnspecified); Assert.AreEqual("0001-01-01T00:00:00Z", result.IsoDateUtc); Assert.AreEqual(@"\/Date(-62135596800000)\/", result.MsDateRoundtrip); Assert.AreEqual(@"\/Date(-62135596800000" + GetOffset(default(DateTime), DateFormatHandling.MicrosoftDateFormat) + @")\/", result.MsDateLocal); Assert.AreEqual(@"\/Date(-62135596800000)\/", result.MsDateUnspecified); Assert.AreEqual(@"\/Date(-62135596800000)\/", result.MsDateUtc); #if !NET20 result = TestDateTime("DateTimeOffset TimeSpan Zero", new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.Zero)); Assert.AreEqual("2000-01-01T01:01:01+00:00", result.IsoDateRoundtrip); Assert.AreEqual(@"\/Date(946688461000+0000)\/", result.MsDateRoundtrip); result = TestDateTime("DateTimeOffset TimeSpan 1 hour", new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.FromHours(1))); Assert.AreEqual("2000-01-01T01:01:01+01:00", result.IsoDateRoundtrip); Assert.AreEqual(@"\/Date(946684861000+0100)\/", result.MsDateRoundtrip); result = TestDateTime("DateTimeOffset TimeSpan 1.5 hour", new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.FromHours(1.5))); Assert.AreEqual("2000-01-01T01:01:01+01:30", result.IsoDateRoundtrip); Assert.AreEqual(@"\/Date(946683061000+0130)\/", result.MsDateRoundtrip); result = TestDateTime("DateTimeOffset TimeSpan 13 hour", new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.FromHours(13))); Assert.AreEqual("2000-01-01T01:01:01+13:00", result.IsoDateRoundtrip); Assert.AreEqual(@"\/Date(946641661000+1300)\/", result.MsDateRoundtrip); result = TestDateTime("DateTimeOffset TimeSpan with ticks", new DateTimeOffset(634663873826822481, TimeSpan.Zero)); Assert.AreEqual("2012-03-03T16:03:02.6822481+00:00", result.IsoDateRoundtrip); Assert.AreEqual(@"\/Date(1330790582682+0000)\/", result.MsDateRoundtrip); result = TestDateTime("DateTimeOffset Min", DateTimeOffset.MinValue); Assert.AreEqual("0001-01-01T00:00:00+00:00", result.IsoDateRoundtrip); Assert.AreEqual(@"\/Date(-62135596800000+0000)\/", result.MsDateRoundtrip); result = TestDateTime("DateTimeOffset Max", DateTimeOffset.MaxValue); Assert.AreEqual("9999-12-31T23:59:59.9999999+00:00", result.IsoDateRoundtrip); Assert.AreEqual(@"\/Date(253402300799999+0000)\/", result.MsDateRoundtrip); result = TestDateTime("DateTimeOffset Default", default(DateTimeOffset)); Assert.AreEqual("0001-01-01T00:00:00+00:00", result.IsoDateRoundtrip); Assert.AreEqual(@"\/Date(-62135596800000+0000)\/", result.MsDateRoundtrip); #endif } public class DateTimeResult { public string IsoDateRoundtrip { get; set; } public string IsoDateLocal { get; set; } public string IsoDateUnspecified { get; set; } public string IsoDateUtc { get; set; } public string MsDateRoundtrip { get; set; } public string MsDateLocal { get; set; } public string MsDateUnspecified { get; set; } public string MsDateUtc { get; set; } } private DateTimeResult TestDateTime(string name, T value) { Console.WriteLine(name); DateTimeResult result = new DateTimeResult(); result.IsoDateRoundtrip = TestDateTimeFormat(value, DateFormatHandling.IsoDateFormat, DateTimeZoneHandling.RoundtripKind); if (value is DateTime) { result.IsoDateLocal = TestDateTimeFormat(value, DateFormatHandling.IsoDateFormat, DateTimeZoneHandling.Local); result.IsoDateUnspecified = TestDateTimeFormat(value, DateFormatHandling.IsoDateFormat, DateTimeZoneHandling.Unspecified); result.IsoDateUtc = TestDateTimeFormat(value, DateFormatHandling.IsoDateFormat, DateTimeZoneHandling.Utc); } result.MsDateRoundtrip = TestDateTimeFormat(value, DateFormatHandling.MicrosoftDateFormat, DateTimeZoneHandling.RoundtripKind); if (value is DateTime) { result.MsDateLocal = TestDateTimeFormat(value, DateFormatHandling.MicrosoftDateFormat, DateTimeZoneHandling.Local); result.MsDateUnspecified = TestDateTimeFormat(value, DateFormatHandling.MicrosoftDateFormat, DateTimeZoneHandling.Unspecified); result.MsDateUtc = TestDateTimeFormat(value, DateFormatHandling.MicrosoftDateFormat, DateTimeZoneHandling.Utc); } TestDateTimeFormat(value, new IsoDateTimeConverter()); #if !NETFX_CORE if (value is DateTime) { Console.WriteLine(XmlConvert.ToString((DateTime)(object)value, XmlDateTimeSerializationMode.RoundtripKind)); } else { Console.WriteLine(XmlConvert.ToString((DateTimeOffset)(object)value)); } #endif #if !NET20 MemoryStream ms = new MemoryStream(); DataContractSerializer s = new DataContractSerializer(typeof(T)); s.WriteObject(ms, value); string json = Encoding.UTF8.GetString(ms.ToArray(), 0, Convert.ToInt32(ms.Length)); Console.WriteLine(json); #endif Console.WriteLine(); return result; } private static string TestDateTimeFormat(T value, DateFormatHandling format, DateTimeZoneHandling timeZoneHandling) { string date = null; if (value is DateTime) { date = JsonConvert.ToString((DateTime)(object)value, format, timeZoneHandling); } else { #if !NET20 date = JsonConvert.ToString((DateTimeOffset)(object)value, format); #endif } Console.WriteLine(format.ToString("g") + "-" + timeZoneHandling.ToString("g") + ": " + date); if (timeZoneHandling == DateTimeZoneHandling.RoundtripKind) { T parsed = JsonConvert.DeserializeObject(date); try { Assert.AreEqual(value, parsed); } catch (Exception) { long valueTicks = GetTicks(value); long parsedTicks = GetTicks(parsed); valueTicks = (valueTicks / 10000) * 10000; Assert.AreEqual(valueTicks, parsedTicks); } } return date.Trim('"'); } private static void TestDateTimeFormat(T value, JsonConverter converter) { string date = Write(value, converter); Console.WriteLine(converter.GetType().Name + ": " + date); T parsed = Read(date, converter); try { Assert.AreEqual(value, parsed); } catch (Exception) { // JavaScript ticks aren't as precise, recheck after rounding long valueTicks = GetTicks(value); long parsedTicks = GetTicks(parsed); valueTicks = (valueTicks / 10000) * 10000; Assert.AreEqual(valueTicks, parsedTicks); } } public static long GetTicks(object value) { return (value is DateTime) ? ((DateTime)value).Ticks : ((DateTimeOffset)value).Ticks; } public static string Write(object value, JsonConverter converter) { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); converter.WriteJson(writer, value, null); writer.Flush(); return sw.ToString(); } public static T Read(string text, JsonConverter converter) { JsonTextReader reader = new JsonTextReader(new StringReader(text)); reader.ReadAsString(); return (T)converter.ReadJson(reader, typeof(T), null, null); } #if !(NET20 || NET35 || PORTABLE40) [Test] public void Async() { Task task = null; #pragma warning disable 612,618 task = JsonConvert.SerializeObjectAsync(42); #pragma warning restore 612,618 task.Wait(); Assert.AreEqual("42", task.Result); #pragma warning disable 612,618 task = JsonConvert.SerializeObjectAsync(new[] { 1, 2, 3, 4, 5 }, Formatting.Indented); #pragma warning restore 612,618 task.Wait(); StringAssert.AreEqual(@"[ 1, 2, 3, 4, 5 ]", task.Result); #pragma warning disable 612,618 task = JsonConvert.SerializeObjectAsync(DateTime.MaxValue, Formatting.None, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); #pragma warning restore 612,618 task.Wait(); Assert.AreEqual(@"""\/Date(253402300799999)\/""", task.Result); #pragma warning disable 612,618 var taskObject = JsonConvert.DeserializeObjectAsync("[]"); #pragma warning restore 612,618 taskObject.Wait(); CollectionAssert.AreEquivalent(new JArray(), (JArray)taskObject.Result); #pragma warning disable 612,618 Task taskVersionArray = JsonConvert.DeserializeObjectAsync("['2.0']", typeof(Version[]), new JsonSerializerSettings { Converters = { new VersionConverter() } }); #pragma warning restore 612,618 taskVersionArray.Wait(); Version[] versionArray = (Version[])taskVersionArray.Result; Assert.AreEqual(1, versionArray.Length); Assert.AreEqual(2, versionArray[0].Major); #pragma warning disable 612,618 Task taskInt = JsonConvert.DeserializeObjectAsync("5"); #pragma warning restore 612,618 taskInt.Wait(); Assert.AreEqual(5, taskInt.Result); #pragma warning disable 612,618 var taskVersion = JsonConvert.DeserializeObjectAsync("'2.0'", new JsonSerializerSettings { Converters = { new VersionConverter() } }); #pragma warning restore 612,618 taskVersion.Wait(); Assert.AreEqual(2, taskVersion.Result.Major); Movie p = new Movie(); p.Name = "Existing,"; #pragma warning disable 612,618 Task taskVoid = JsonConvert.PopulateObjectAsync("{'Name':'Appended'}", p, new JsonSerializerSettings { Converters = new List { new StringAppenderConverter() } }); #pragma warning restore 612,618 taskVoid.Wait(); Assert.AreEqual("Existing,Appended", p.Name); } #endif [Test] public void SerializeObjectDateTimeZoneHandling() { string json = JsonConvert.SerializeObject( new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Unspecified), new JsonSerializerSettings { DateTimeZoneHandling = DateTimeZoneHandling.Utc }); Assert.AreEqual(@"""2000-01-01T01:01:01Z""", json); } [Test] public void DeserializeObject() { string json = @"{ 'Name': 'Bad Boys', 'ReleaseDate': '1995-4-7T00:00:00', 'Genres': [ 'Action', 'Comedy' ] }"; Movie m = JsonConvert.DeserializeObject(json); string name = m.Name; // Bad Boys Assert.AreEqual("Bad Boys", m.Name); } #if !NET20 [Test] public void TestJsonDateTimeOffsetRoundtrip() { var now = DateTimeOffset.Now; var dict = new Dictionary { { "foo", now } }; var settings = new JsonSerializerSettings(); settings.DateFormatHandling = DateFormatHandling.IsoDateFormat; settings.DateParseHandling = DateParseHandling.DateTimeOffset; settings.DateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind; var json = JsonConvert.SerializeObject(dict, settings); Console.WriteLine(json); var newDict = new Dictionary(); JsonConvert.PopulateObject(json, newDict, settings); var date = newDict["foo"]; Assert.AreEqual(date, now); } [Test] public void MaximumDateTimeOffsetLength() { DateTimeOffset dt = new DateTimeOffset(2000, 12, 31, 20, 59, 59, new TimeSpan(0, 11, 33, 0, 0)); dt = dt.AddTicks(9999999); StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.WriteValue(dt); writer.Flush(); Console.WriteLine(sw.ToString()); Console.WriteLine(sw.ToString().Length); } #endif [Test] public void MaximumDateTimeLength() { DateTime dt = new DateTime(2000, 12, 31, 20, 59, 59, DateTimeKind.Local); dt = dt.AddTicks(9999999); StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.WriteValue(dt); writer.Flush(); Console.WriteLine(sw.ToString()); Console.WriteLine(sw.ToString().Length); } [Test] public void MaximumDateTimeMicrosoftDateFormatLength() { DateTime dt = DateTime.MaxValue; StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat; writer.WriteValue(dt); writer.Flush(); Console.WriteLine(sw.ToString()); Console.WriteLine(sw.ToString().Length); } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE || ASPNETCORE50) [Test] public void IntegerLengthOverflows() { // Maximum javascript number length (in characters) is 380 JObject o = JObject.Parse(@"{""biginteger"":" + new String('9', 380) + "}"); JValue v = (JValue)o["biginteger"]; Assert.AreEqual(JTokenType.Integer, v.Type); Assert.AreEqual(typeof(BigInteger), v.Value.GetType()); Assert.AreEqual(BigInteger.Parse(new String('9', 380)), (BigInteger)v.Value); ExceptionAssert.Throws(() => JObject.Parse(@"{""biginteger"":" + new String('9', 381) + "}"), "JSON integer " + new String('9', 381) + " is too large to parse. Path 'biginteger', line 1, position 395."); } #endif [Test] public void ParseIsoDate() { StringReader sr = new StringReader(@"""2014-02-14T14:25:02-13:00"""); JsonReader jsonReader = new JsonTextReader(sr); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(typeof(DateTime), jsonReader.ValueType); } //[Test] public void StackOverflowTest() { StringBuilder sb = new StringBuilder(); int depth = 900; for (int i = 0; i < depth; i++) { sb.Append("{'A':"); } // invalid json sb.Append("{***}"); for (int i = 0; i < depth; i++) { sb.Append("}"); } string json = sb.ToString(); JsonSerializer serializer = new JsonSerializer() { }; serializer.Deserialize(new JsonTextReader(new StringReader(json))); } public class Nest { public Nest A { get; set; } } [Test] public void ParametersPassedToJsonConverterConstructor() { ClobberMyProperties clobber = new ClobberMyProperties { One = "Red", Two = "Green", Three = "Yellow", Four = "Black" }; string json = JsonConvert.SerializeObject(clobber); Assert.AreEqual("{\"One\":\"Uno-1-Red\",\"Two\":\"Dos-2-Green\",\"Three\":\"Tres-1337-Yellow\",\"Four\":\"Black\"}", json); } public class ClobberMyProperties { [JsonConverter(typeof(ClobberingJsonConverter), "Uno", 1)] public string One { get; set; } [JsonConverter(typeof(ClobberingJsonConverter), "Dos", 2)] public string Two { get; set; } [JsonConverter(typeof(ClobberingJsonConverter), "Tres")] public string Three { get; set; } public string Four { get; set; } } public class ClobberingJsonConverter : JsonConverter { public string ClobberValueString { get; private set; } public int ClobberValueInt { get; private set; } public ClobberingJsonConverter(string clobberValueString, int clobberValueInt) { ClobberValueString = clobberValueString; ClobberValueInt = clobberValueInt; } public ClobberingJsonConverter(string clobberValueString) : this(clobberValueString, 1337) { } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(ClobberValueString + "-" + ClobberValueInt.ToString() + "-" + value.ToString()); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { throw new NotImplementedException(); } public override bool CanConvert(Type objectType) { return objectType == typeof(string); } } [Test] public void WrongParametersPassedToJsonConvertConstructorShouldThrow() { IncorrectJsonConvertParameters value = new IncorrectJsonConvertParameters { One = "Boom" }; ExceptionAssert.Throws(() => { JsonConvert.SerializeObject(value); }); } public class IncorrectJsonConvertParameters { /// /// We deliberately use the wrong number/type of arguments for ClobberingJsonConverter to ensure an /// exception is thrown. /// [JsonConverter(typeof(ClobberingJsonConverter), "Uno", "Blammo")] public string One { get; set; } } [Test] public void CustomDoubleRounding() { var measurements = new Measurements { Loads = new List { 23283.567554707258, 23224.849899771067, 23062.5, 22846.272519910868, 22594.281246368635 }, Positions = new List { 57.724227689317019, 60.440934405753069, 63.444192925248643, 66.813119113482557, 70.4496501404433 }, Gain = 12345.67895111213 }; string json = JsonConvert.SerializeObject(measurements); Assert.AreEqual("{\"Positions\":[57.72,60.44,63.44,66.81,70.45],\"Loads\":[23284.0,23225.0,23062.0,22846.0,22594.0],\"Gain\":12345.679}", json); } public class Measurements { [JsonProperty(ItemConverterType = typeof(RoundingJsonConverter))] public List Positions { get; set; } [JsonProperty(ItemConverterType = typeof(RoundingJsonConverter), ItemConverterParameters = new object[] { 0, MidpointRounding.ToEven })] public List Loads { get; set; } [JsonConverter(typeof(RoundingJsonConverter), 4)] public double Gain { get; set; } } public class RoundingJsonConverter : JsonConverter { int _precision; MidpointRounding _rounding; public RoundingJsonConverter() : this(2) { } public RoundingJsonConverter(int precision) : this(precision, MidpointRounding.AwayFromZero) { } public RoundingJsonConverter(int precision, MidpointRounding rounding) { _precision = precision; _rounding = rounding; } public override bool CanRead { get { return false; } } public override bool CanConvert(Type objectType) { return objectType == typeof(double); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { throw new NotImplementedException(); } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(Math.Round((double)value, _precision, _rounding)); } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/JsonTextWriterTest.cs0000664000175000017500000015453612454416117026517 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Diagnostics; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Runtime.Serialization; using System.Text; using System.Xml; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json; using System.IO; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests { [TestFixture] public class JsonTextWriterTest : TestFixtureBase { [Test] public void NewLine() { MemoryStream ms = new MemoryStream(); using (var streamWriter = new StreamWriter(ms, new UTF8Encoding(false)) { NewLine = "\n" }) using (var jsonWriter = new JsonTextWriter(streamWriter) { CloseOutput = true, Indentation = 2, Formatting = Formatting.Indented }) { jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("prop"); jsonWriter.WriteValue(true); jsonWriter.WriteEndObject(); } byte[] data = ms.ToArray(); string json = Encoding.UTF8.GetString(data, 0, data.Length); Assert.AreEqual(@"{" + '\n' + @" ""prop"": true" + '\n' + "}", json); } [Test] public void QuoteNameAndStrings() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); JsonTextWriter writer = new JsonTextWriter(sw) { QuoteName = false }; writer.WriteStartObject(); writer.WritePropertyName("name"); writer.WriteValue("value"); writer.WriteEndObject(); writer.Flush(); Assert.AreEqual(@"{name:""value""}", sb.ToString()); } [Test] public void CloseOutput() { MemoryStream ms = new MemoryStream(); JsonTextWriter writer = new JsonTextWriter(new StreamWriter(ms)); Assert.IsTrue(ms.CanRead); writer.Close(); Assert.IsFalse(ms.CanRead); ms = new MemoryStream(); writer = new JsonTextWriter(new StreamWriter(ms)) { CloseOutput = false }; Assert.IsTrue(ms.CanRead); writer.Close(); Assert.IsTrue(ms.CanRead); } #if !(PORTABLE || ASPNETCORE50 || NETFX_CORE) [Test] public void WriteIConvertable() { var sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.WriteValue(new ConvertibleInt(1)); Assert.AreEqual("1", sw.ToString()); } #endif [Test] public void ValueFormatting() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.WriteStartArray(); jsonWriter.WriteValue('@'); jsonWriter.WriteValue("\r\n\t\f\b?{\\r\\n\"\'"); jsonWriter.WriteValue(true); jsonWriter.WriteValue(10); jsonWriter.WriteValue(10.99); jsonWriter.WriteValue(0.99); jsonWriter.WriteValue(0.000000000000000001d); jsonWriter.WriteValue(0.000000000000000001m); jsonWriter.WriteValue((string)null); jsonWriter.WriteValue((object)null); jsonWriter.WriteValue("This is a string."); jsonWriter.WriteNull(); jsonWriter.WriteUndefined(); jsonWriter.WriteEndArray(); } string expected = @"[""@"",""\r\n\t\f\b?{\\r\\n\""'"",true,10,10.99,0.99,1E-18,0.000000000000000001,null,null,""This is a string."",null,undefined]"; string result = sb.ToString(); Console.WriteLine("ValueFormatting"); Console.WriteLine(result); Assert.AreEqual(expected, result); } [Test] public void NullableValueFormatting() { StringWriter sw = new StringWriter(); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.WriteStartArray(); jsonWriter.WriteValue((char?)null); jsonWriter.WriteValue((char?)'c'); jsonWriter.WriteValue((bool?)null); jsonWriter.WriteValue((bool?)true); jsonWriter.WriteValue((byte?)null); jsonWriter.WriteValue((byte?)1); jsonWriter.WriteValue((sbyte?)null); jsonWriter.WriteValue((sbyte?)1); jsonWriter.WriteValue((short?)null); jsonWriter.WriteValue((short?)1); jsonWriter.WriteValue((ushort?)null); jsonWriter.WriteValue((ushort?)1); jsonWriter.WriteValue((int?)null); jsonWriter.WriteValue((int?)1); jsonWriter.WriteValue((uint?)null); jsonWriter.WriteValue((uint?)1); jsonWriter.WriteValue((long?)null); jsonWriter.WriteValue((long?)1); jsonWriter.WriteValue((ulong?)null); jsonWriter.WriteValue((ulong?)1); jsonWriter.WriteValue((double?)null); jsonWriter.WriteValue((double?)1.1); jsonWriter.WriteValue((float?)null); jsonWriter.WriteValue((float?)1.1); jsonWriter.WriteValue((decimal?)null); jsonWriter.WriteValue((decimal?)1.1m); jsonWriter.WriteValue((DateTime?)null); jsonWriter.WriteValue((DateTime?)new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc)); #if !NET20 jsonWriter.WriteValue((DateTimeOffset?)null); jsonWriter.WriteValue((DateTimeOffset?)new DateTimeOffset(DateTimeUtils.InitialJavaScriptDateTicks, TimeSpan.Zero)); #endif jsonWriter.WriteEndArray(); } string json = sw.ToString(); string expected; #if !NET20 expected = @"[null,""c"",null,true,null,1,null,1,null,1,null,1,null,1,null,1,null,1,null,1,null,1.1,null,1.1,null,1.1,null,""1970-01-01T00:00:00Z"",null,""1970-01-01T00:00:00+00:00""]"; #else expected = @"[null,""c"",null,true,null,1,null,1,null,1,null,1,null,1,null,1,null,1,null,1,null,1.1,null,1.1,null,1.1,null,""1970-01-01T00:00:00Z""]"; #endif Assert.AreEqual(expected, json); } [Test] public void WriteValueObjectWithNullable() { StringWriter sw = new StringWriter(); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { char? value = 'c'; jsonWriter.WriteStartArray(); jsonWriter.WriteValue((object)value); jsonWriter.WriteEndArray(); } string json = sw.ToString(); string expected = @"[""c""]"; Assert.AreEqual(expected, json); } [Test] public void WriteValueObjectWithUnsupportedValue() { ExceptionAssert.Throws(() => { StringWriter sw = new StringWriter(); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.WriteStartArray(); jsonWriter.WriteValue(new Version(1, 1, 1, 1)); jsonWriter.WriteEndArray(); } }, @"Unsupported type: System.Version. Use the JsonSerializer class to get the object's JSON representation. Path ''."); } [Test] public void StringEscaping() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.WriteStartArray(); jsonWriter.WriteValue(@"""These pretzels are making me thirsty!"""); jsonWriter.WriteValue("Jeff's house was burninated."); jsonWriter.WriteValue("1. You don't talk about fight club.\r\n2. You don't talk about fight club."); jsonWriter.WriteValue("35% of\t statistics\n are made\r up."); jsonWriter.WriteEndArray(); } string expected = @"[""\""These pretzels are making me thirsty!\"""",""Jeff's house was burninated."",""1. You don't talk about fight club.\r\n2. You don't talk about fight club."",""35% of\t statistics\n are made\r up.""]"; string result = sb.ToString(); Console.WriteLine("StringEscaping"); Console.WriteLine(result); Assert.AreEqual(expected, result); } [Test] public void WriteEnd() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("CPU"); jsonWriter.WriteValue("Intel"); jsonWriter.WritePropertyName("PSU"); jsonWriter.WriteValue("500W"); jsonWriter.WritePropertyName("Drives"); jsonWriter.WriteStartArray(); jsonWriter.WriteValue("DVD read/writer"); jsonWriter.WriteComment("(broken)"); jsonWriter.WriteValue("500 gigabyte hard drive"); jsonWriter.WriteValue("200 gigabype hard drive"); jsonWriter.WriteEndObject(); Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); } string expected = @"{ ""CPU"": ""Intel"", ""PSU"": ""500W"", ""Drives"": [ ""DVD read/writer"" /*(broken)*/, ""500 gigabyte hard drive"", ""200 gigabype hard drive"" ] }"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void CloseWithRemainingContent() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("CPU"); jsonWriter.WriteValue("Intel"); jsonWriter.WritePropertyName("PSU"); jsonWriter.WriteValue("500W"); jsonWriter.WritePropertyName("Drives"); jsonWriter.WriteStartArray(); jsonWriter.WriteValue("DVD read/writer"); jsonWriter.WriteComment("(broken)"); jsonWriter.WriteValue("500 gigabyte hard drive"); jsonWriter.WriteValue("200 gigabype hard drive"); jsonWriter.Close(); } string expected = @"{ ""CPU"": ""Intel"", ""PSU"": ""500W"", ""Drives"": [ ""DVD read/writer"" /*(broken)*/, ""500 gigabyte hard drive"", ""200 gigabype hard drive"" ] }"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void Indenting() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("CPU"); jsonWriter.WriteValue("Intel"); jsonWriter.WritePropertyName("PSU"); jsonWriter.WriteValue("500W"); jsonWriter.WritePropertyName("Drives"); jsonWriter.WriteStartArray(); jsonWriter.WriteValue("DVD read/writer"); jsonWriter.WriteComment("(broken)"); jsonWriter.WriteValue("500 gigabyte hard drive"); jsonWriter.WriteValue("200 gigabype hard drive"); jsonWriter.WriteEnd(); jsonWriter.WriteEndObject(); Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); } // { // "CPU": "Intel", // "PSU": "500W", // "Drives": [ // "DVD read/writer" // /*(broken)*/, // "500 gigabyte hard drive", // "200 gigabype hard drive" // ] // } string expected = @"{ ""CPU"": ""Intel"", ""PSU"": ""500W"", ""Drives"": [ ""DVD read/writer"" /*(broken)*/, ""500 gigabyte hard drive"", ""200 gigabype hard drive"" ] }"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void State() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); jsonWriter.WriteStartObject(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); Assert.AreEqual("", jsonWriter.Path); jsonWriter.WritePropertyName("CPU"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); Assert.AreEqual("CPU", jsonWriter.Path); jsonWriter.WriteValue("Intel"); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); Assert.AreEqual("CPU", jsonWriter.Path); jsonWriter.WritePropertyName("Drives"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); Assert.AreEqual("Drives", jsonWriter.Path); jsonWriter.WriteStartArray(); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); jsonWriter.WriteValue("DVD read/writer"); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); Assert.AreEqual("Drives[0]", jsonWriter.Path); jsonWriter.WriteEnd(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); Assert.AreEqual("Drives", jsonWriter.Path); jsonWriter.WriteEndObject(); Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); Assert.AreEqual("", jsonWriter.Path); } } [Test] public void FloatingPointNonFiniteNumbers_Symbol() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.FloatFormatHandling = FloatFormatHandling.Symbol; jsonWriter.WriteStartArray(); jsonWriter.WriteValue(double.NaN); jsonWriter.WriteValue(double.PositiveInfinity); jsonWriter.WriteValue(double.NegativeInfinity); jsonWriter.WriteValue(float.NaN); jsonWriter.WriteValue(float.PositiveInfinity); jsonWriter.WriteValue(float.NegativeInfinity); jsonWriter.WriteEndArray(); jsonWriter.Flush(); } string expected = @"[ NaN, Infinity, -Infinity, NaN, Infinity, -Infinity ]"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void FloatingPointNonFiniteNumbers_Zero() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.FloatFormatHandling = FloatFormatHandling.DefaultValue; jsonWriter.WriteStartArray(); jsonWriter.WriteValue(double.NaN); jsonWriter.WriteValue(double.PositiveInfinity); jsonWriter.WriteValue(double.NegativeInfinity); jsonWriter.WriteValue(float.NaN); jsonWriter.WriteValue(float.PositiveInfinity); jsonWriter.WriteValue(float.NegativeInfinity); jsonWriter.WriteValue((double?)double.NaN); jsonWriter.WriteValue((double?)double.PositiveInfinity); jsonWriter.WriteValue((double?)double.NegativeInfinity); jsonWriter.WriteValue((float?)float.NaN); jsonWriter.WriteValue((float?)float.PositiveInfinity); jsonWriter.WriteValue((float?)float.NegativeInfinity); jsonWriter.WriteEndArray(); jsonWriter.Flush(); } string expected = @"[ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, null, null, null, null, null, null ]"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void FloatingPointNonFiniteNumbers_String() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.FloatFormatHandling = FloatFormatHandling.String; jsonWriter.WriteStartArray(); jsonWriter.WriteValue(double.NaN); jsonWriter.WriteValue(double.PositiveInfinity); jsonWriter.WriteValue(double.NegativeInfinity); jsonWriter.WriteValue(float.NaN); jsonWriter.WriteValue(float.PositiveInfinity); jsonWriter.WriteValue(float.NegativeInfinity); jsonWriter.WriteEndArray(); jsonWriter.Flush(); } string expected = @"[ ""NaN"", ""Infinity"", ""-Infinity"", ""NaN"", ""Infinity"", ""-Infinity"" ]"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void FloatingPointNonFiniteNumbers_QuoteChar() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.FloatFormatHandling = FloatFormatHandling.String; jsonWriter.QuoteChar = '\''; jsonWriter.WriteStartArray(); jsonWriter.WriteValue(double.NaN); jsonWriter.WriteValue(double.PositiveInfinity); jsonWriter.WriteValue(double.NegativeInfinity); jsonWriter.WriteValue(float.NaN); jsonWriter.WriteValue(float.PositiveInfinity); jsonWriter.WriteValue(float.NegativeInfinity); jsonWriter.WriteEndArray(); jsonWriter.Flush(); } string expected = @"[ 'NaN', 'Infinity', '-Infinity', 'NaN', 'Infinity', '-Infinity' ]"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void WriteRawInStart() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.FloatFormatHandling = FloatFormatHandling.Symbol; jsonWriter.WriteRaw("[1,2,3,4,5]"); jsonWriter.WriteWhitespace(" "); jsonWriter.WriteStartArray(); jsonWriter.WriteValue(double.NaN); jsonWriter.WriteEndArray(); } string expected = @"[1,2,3,4,5] [ NaN ]"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void WriteRawInArray() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.FloatFormatHandling = FloatFormatHandling.Symbol; jsonWriter.WriteStartArray(); jsonWriter.WriteValue(double.NaN); jsonWriter.WriteRaw(",[1,2,3,4,5]"); jsonWriter.WriteRaw(",[1,2,3,4,5]"); jsonWriter.WriteValue(float.NaN); jsonWriter.WriteEndArray(); } string expected = @"[ NaN,[1,2,3,4,5],[1,2,3,4,5], NaN ]"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void WriteRawInObject() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.WriteStartObject(); jsonWriter.WriteRaw(@"""PropertyName"":[1,2,3,4,5]"); jsonWriter.WriteEnd(); } string expected = @"{""PropertyName"":[1,2,3,4,5]}"; string result = sb.ToString(); Assert.AreEqual(expected, result); } [Test] public void WriteToken() { JsonTextReader reader = new JsonTextReader(new StringReader("[1,2,3,4,5]")); reader.Read(); reader.Read(); StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.WriteToken(reader); Assert.AreEqual("1", sw.ToString()); } [Test] public void WriteRawValue() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { int i = 0; string rawJson = "[1,2]"; jsonWriter.WriteStartObject(); while (i < 3) { jsonWriter.WritePropertyName("d" + i); jsonWriter.WriteRawValue(rawJson); i++; } jsonWriter.WriteEndObject(); } Assert.AreEqual(@"{""d0"":[1,2],""d1"":[1,2],""d2"":[1,2]}", sb.ToString()); } [Test] public void WriteObjectNestedInConstructor() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("con"); jsonWriter.WriteStartConstructor("Ext.data.JsonStore"); jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("aa"); jsonWriter.WriteValue("aa"); jsonWriter.WriteEndObject(); jsonWriter.WriteEndConstructor(); jsonWriter.WriteEndObject(); } Assert.AreEqual(@"{""con"":new Ext.data.JsonStore({""aa"":""aa""})}", sb.ToString()); } [Test] public void WriteFloatingPointNumber() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.FloatFormatHandling = FloatFormatHandling.Symbol; jsonWriter.WriteStartArray(); jsonWriter.WriteValue(0.0); jsonWriter.WriteValue(0f); jsonWriter.WriteValue(0.1); jsonWriter.WriteValue(1.0); jsonWriter.WriteValue(1.000001); jsonWriter.WriteValue(0.000001); jsonWriter.WriteValue(double.Epsilon); jsonWriter.WriteValue(double.PositiveInfinity); jsonWriter.WriteValue(double.NegativeInfinity); jsonWriter.WriteValue(double.NaN); jsonWriter.WriteValue(double.MaxValue); jsonWriter.WriteValue(double.MinValue); jsonWriter.WriteValue(float.PositiveInfinity); jsonWriter.WriteValue(float.NegativeInfinity); jsonWriter.WriteValue(float.NaN); jsonWriter.WriteEndArray(); } Assert.AreEqual(@"[0.0,0.0,0.1,1.0,1.000001,1E-06,4.94065645841247E-324,Infinity,-Infinity,NaN,1.7976931348623157E+308,-1.7976931348623157E+308,Infinity,-Infinity,NaN]", sb.ToString()); } [Test] public void WriteIntegerNumber() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw) { Formatting = Formatting.Indented }) { jsonWriter.WriteStartArray(); jsonWriter.WriteValue(int.MaxValue); jsonWriter.WriteValue(int.MinValue); jsonWriter.WriteValue(0); jsonWriter.WriteValue(-0); jsonWriter.WriteValue(9L); jsonWriter.WriteValue(9UL); jsonWriter.WriteValue(long.MaxValue); jsonWriter.WriteValue(long.MinValue); jsonWriter.WriteValue(ulong.MaxValue); jsonWriter.WriteValue(ulong.MinValue); jsonWriter.WriteEndArray(); } Console.WriteLine(sb.ToString()); StringAssert.AreEqual(@"[ 2147483647, -2147483648, 0, 0, 9, 9, 9223372036854775807, -9223372036854775808, 18446744073709551615, 0 ]", sb.ToString()); } [Test] public void WriteTokenDirect() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.WriteToken(JsonToken.StartArray); jsonWriter.WriteToken(JsonToken.Integer, 1); jsonWriter.WriteToken(JsonToken.StartObject); jsonWriter.WriteToken(JsonToken.PropertyName, "string"); jsonWriter.WriteToken(JsonToken.Integer, int.MaxValue); jsonWriter.WriteToken(JsonToken.EndObject); jsonWriter.WriteToken(JsonToken.EndArray); } Assert.AreEqual(@"[1,{""string"":2147483647}]", sb.ToString()); } [Test] public void WriteTokenDirect_BadValue() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.WriteToken(JsonToken.StartArray); ExceptionAssert.Throws(() => { jsonWriter.WriteToken(JsonToken.Integer, "three"); }, "Input string was not in a correct format."); ExceptionAssert.Throws(() => { jsonWriter.WriteToken(JsonToken.Integer); }, @"Value cannot be null. Parameter name: value"); } } [Test] public void BadWriteEndArray() { ExceptionAssert.Throws(() => { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.WriteStartArray(); jsonWriter.WriteValue(0.0); jsonWriter.WriteEndArray(); jsonWriter.WriteEndArray(); } }, "No token to close. Path ''."); } [Test] public void InvalidQuoteChar() { ExceptionAssert.Throws(() => { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.QuoteChar = '*'; } }, @"Invalid JavaScript string quote character. Valid quote characters are ' and ""."); } [Test] public void Indentation() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; jsonWriter.FloatFormatHandling = FloatFormatHandling.Symbol; Assert.AreEqual(Formatting.Indented, jsonWriter.Formatting); jsonWriter.Indentation = 5; Assert.AreEqual(5, jsonWriter.Indentation); jsonWriter.IndentChar = '_'; Assert.AreEqual('_', jsonWriter.IndentChar); jsonWriter.QuoteName = true; Assert.AreEqual(true, jsonWriter.QuoteName); jsonWriter.QuoteChar = '\''; Assert.AreEqual('\'', jsonWriter.QuoteChar); jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("propertyName"); jsonWriter.WriteValue(double.NaN); jsonWriter.IndentChar = '?'; Assert.AreEqual('?', jsonWriter.IndentChar); jsonWriter.Indentation = 6; Assert.AreEqual(6, jsonWriter.Indentation); jsonWriter.WritePropertyName("prop2"); jsonWriter.WriteValue(123); jsonWriter.WriteEndObject(); } string expected = @"{ _____'propertyName': NaN, ??????'prop2': 123 }"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void WriteSingleBytes() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); string text = "Hello world."; byte[] data = Encoding.UTF8.GetBytes(text); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; Assert.AreEqual(Formatting.Indented, jsonWriter.Formatting); jsonWriter.WriteValue(data); } string expected = @"""SGVsbG8gd29ybGQu"""; string result = sb.ToString(); Assert.AreEqual(expected, result); byte[] d2 = Convert.FromBase64String(result.Trim('"')); Assert.AreEqual(text, Encoding.UTF8.GetString(d2, 0, d2.Length)); } [Test] public void WriteBytesInArray() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); string text = "Hello world."; byte[] data = Encoding.UTF8.GetBytes(text); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; Assert.AreEqual(Formatting.Indented, jsonWriter.Formatting); jsonWriter.WriteStartArray(); jsonWriter.WriteValue(data); jsonWriter.WriteValue(data); jsonWriter.WriteValue((object)data); jsonWriter.WriteValue((byte[])null); jsonWriter.WriteValue((Uri)null); jsonWriter.WriteEndArray(); } string expected = @"[ ""SGVsbG8gd29ybGQu"", ""SGVsbG8gd29ybGQu"", ""SGVsbG8gd29ybGQu"", null, null ]"; string result = sb.ToString(); StringAssert.AreEqual(expected, result); } [Test] public void Path() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); string text = "Hello world."; byte[] data = Encoding.UTF8.GetBytes(text); using (JsonTextWriter writer = new JsonTextWriter(sw)) { writer.Formatting = Formatting.Indented; writer.WriteStartArray(); Assert.AreEqual("", writer.Path); writer.WriteStartObject(); Assert.AreEqual("[0]", writer.Path); writer.WritePropertyName("Property1"); Assert.AreEqual("[0].Property1", writer.Path); writer.WriteStartArray(); Assert.AreEqual("[0].Property1", writer.Path); writer.WriteValue(1); Assert.AreEqual("[0].Property1[0]", writer.Path); writer.WriteStartArray(); Assert.AreEqual("[0].Property1[1]", writer.Path); writer.WriteStartArray(); Assert.AreEqual("[0].Property1[1][0]", writer.Path); writer.WriteStartArray(); Assert.AreEqual("[0].Property1[1][0][0]", writer.Path); writer.WriteEndObject(); Assert.AreEqual("[0]", writer.Path); writer.WriteStartObject(); Assert.AreEqual("[1]", writer.Path); writer.WritePropertyName("Property2"); Assert.AreEqual("[1].Property2", writer.Path); writer.WriteStartConstructor("Constructor1"); Assert.AreEqual("[1].Property2", writer.Path); writer.WriteNull(); Assert.AreEqual("[1].Property2[0]", writer.Path); writer.WriteStartArray(); Assert.AreEqual("[1].Property2[1]", writer.Path); writer.WriteValue(1); Assert.AreEqual("[1].Property2[1][0]", writer.Path); writer.WriteEnd(); Assert.AreEqual("[1].Property2[1]", writer.Path); writer.WriteEndObject(); Assert.AreEqual("[1]", writer.Path); writer.WriteEndArray(); Assert.AreEqual("", writer.Path); } StringAssert.AreEqual(@"[ { ""Property1"": [ 1, [ [ [] ] ] ] }, { ""Property2"": new Constructor1( null, [ 1 ] ) } ]", sb.ToString()); } [Test] public void BuildStateArray() { JsonWriter.State[][] stateArray = JsonWriter.BuildStateArray(); var valueStates = JsonWriter.StateArrayTempate[7]; foreach (JsonToken valueToken in EnumUtils.GetValues(typeof(JsonToken))) { switch (valueToken) { case JsonToken.Integer: case JsonToken.Float: case JsonToken.String: case JsonToken.Boolean: case JsonToken.Null: case JsonToken.Undefined: case JsonToken.Date: case JsonToken.Bytes: Assert.AreEqual(valueStates, stateArray[(int)valueToken], "Error for " + valueToken + " states."); break; } } } [Test] public void DateTimeZoneHandling() { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw) { DateTimeZoneHandling = Json.DateTimeZoneHandling.Utc }; writer.WriteValue(new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Unspecified)); Assert.AreEqual(@"""2000-01-01T01:01:01Z""", sw.ToString()); } [Test] public void HtmlStringEscapeHandling() { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw) { StringEscapeHandling = StringEscapeHandling.EscapeHtml }; string script = @""; writer.WriteValue(script); string json = sw.ToString(); Assert.AreEqual(@"""\u003cscript type=\u0022text/javascript\u0022\u003ealert(\u0027hi\u0027);\u003c/script\u003e""", json); JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.AreEqual(script, reader.ReadAsString()); //Console.WriteLine(HttpUtility.HtmlEncode(script)); //System.Web.Script.Serialization.JavaScriptSerializer s = new System.Web.Script.Serialization.JavaScriptSerializer(); //Console.WriteLine(s.Serialize(new { html = script })); } [Test] public void NonAsciiStringEscapeHandling() { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw) { StringEscapeHandling = StringEscapeHandling.EscapeNonAscii }; string unicode = "\u5f20"; writer.WriteValue(unicode); string json = sw.ToString(); Assert.AreEqual(8, json.Length); Assert.AreEqual(@"""\u5f20""", json); JsonTextReader reader = new JsonTextReader(new StringReader(json)); Assert.AreEqual(unicode, reader.ReadAsString()); sw = new StringWriter(); writer = new JsonTextWriter(sw) { StringEscapeHandling = StringEscapeHandling.Default }; writer.WriteValue(unicode); json = sw.ToString(); Assert.AreEqual(3, json.Length); Assert.AreEqual("\"\u5f20\"", json); } [Test] public void WriteEndOnProperty() { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.QuoteChar = '\''; writer.WriteStartObject(); writer.WritePropertyName("Blah"); writer.WriteEnd(); Assert.AreEqual("{'Blah':null}", sw.ToString()); } #if !NET20 [Test] public void QuoteChar() { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.Formatting = Formatting.Indented; writer.QuoteChar = '\''; writer.WriteStartArray(); writer.WriteValue(new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Utc)); writer.WriteValue(new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.Zero)); writer.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat; writer.WriteValue(new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Utc)); writer.WriteValue(new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.Zero)); writer.DateFormatString = "yyyy gg"; writer.WriteValue(new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Utc)); writer.WriteValue(new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.Zero)); writer.WriteValue(new byte[] { 1, 2, 3 }); writer.WriteValue(TimeSpan.Zero); writer.WriteValue(new Uri("http://www.google.com/")); writer.WriteValue(Guid.Empty); writer.WriteEnd(); StringAssert.AreEqual(@"[ '2000-01-01T01:01:01Z', '2000-01-01T01:01:01+00:00', '\/Date(946688461000)\/', '\/Date(946688461000+0000)\/', '2000 A.D.', '2000 A.D.', 'AQID', '00:00:00', 'http://www.google.com/', '00000000-0000-0000-0000-000000000000' ]", sw.ToString()); } [Test] public void Culture() { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.Formatting = Formatting.Indented; writer.DateFormatString = "yyyy tt"; writer.Culture = new CultureInfo("en-NZ"); writer.QuoteChar = '\''; writer.WriteStartArray(); writer.WriteValue(new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Utc)); writer.WriteValue(new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.Zero)); writer.WriteEnd(); StringAssert.AreEqual(@"[ '2000 a.m.', '2000 a.m.' ]", sw.ToString()); } #endif [Test] public void CompareNewStringEscapingWithOld() { Console.WriteLine("Started"); char c = (char)0; do { if (c % 1000 == 0) Console.WriteLine("Position: " + (int)c); StringWriter swNew = new StringWriter(); char[] buffer = null; JavaScriptUtils.WriteEscapedJavaScriptString(swNew, c.ToString(), '"', true, JavaScriptUtils.DoubleQuoteCharEscapeFlags, StringEscapeHandling.Default, ref buffer); StringWriter swOld = new StringWriter(); WriteEscapedJavaScriptStringOld(swOld, c.ToString(), '"', true); string newText = swNew.ToString(); string oldText = swOld.ToString(); if (newText != oldText) throw new Exception("Difference for char '{0}' (value {1}). Old text: {2}, New text: {3}".FormatWith(CultureInfo.InvariantCulture, c, (int)c, oldText, newText)); c++; } while (c != char.MaxValue); Console.WriteLine("Finished"); } private const string EscapedUnicodeText = "!"; private static void WriteEscapedJavaScriptStringOld(TextWriter writer, string s, char delimiter, bool appendDelimiters) { // leading delimiter if (appendDelimiters) writer.Write(delimiter); if (s != null) { char[] chars = null; char[] unicodeBuffer = null; int lastWritePosition = 0; for (int i = 0; i < s.Length; i++) { var c = s[i]; // don't escape standard text/numbers except '\' and the text delimiter if (c >= ' ' && c < 128 && c != '\\' && c != delimiter) continue; string escapedValue; switch (c) { case '\t': escapedValue = @"\t"; break; case '\n': escapedValue = @"\n"; break; case '\r': escapedValue = @"\r"; break; case '\f': escapedValue = @"\f"; break; case '\b': escapedValue = @"\b"; break; case '\\': escapedValue = @"\\"; break; case '\u0085': // Next Line escapedValue = @"\u0085"; break; case '\u2028': // Line Separator escapedValue = @"\u2028"; break; case '\u2029': // Paragraph Separator escapedValue = @"\u2029"; break; case '\'': // this charater is being used as the delimiter escapedValue = @"\'"; break; case '"': // this charater is being used as the delimiter escapedValue = "\\\""; break; default: if (c <= '\u001f') { if (unicodeBuffer == null) unicodeBuffer = new char[6]; StringUtils.ToCharAsUnicode(c, unicodeBuffer); // slightly hacky but it saves multiple conditions in if test escapedValue = EscapedUnicodeText; } else { escapedValue = null; } break; } if (escapedValue == null) continue; if (i > lastWritePosition) { if (chars == null) chars = s.ToCharArray(); // write unchanged chars before writing escaped text writer.Write(chars, lastWritePosition, i - lastWritePosition); } lastWritePosition = i + 1; if (!string.Equals(escapedValue, EscapedUnicodeText)) writer.Write(escapedValue); else writer.Write(unicodeBuffer); } if (lastWritePosition == 0) { // no escaped text, write entire string writer.Write(s); } else { if (chars == null) chars = s.ToCharArray(); // write remaining text writer.Write(chars, lastWritePosition, s.Length - lastWritePosition); } } // trailing delimiter if (appendDelimiters) writer.Write(delimiter); } [Test] public void CustomJsonTextWriterTests() { StringWriter sw = new StringWriter(); CustomJsonTextWriter writer = new CustomJsonTextWriter(sw) { Formatting = Formatting.Indented }; writer.WriteStartObject(); Assert.AreEqual(WriteState.Object, writer.WriteState); writer.WritePropertyName("Property1"); Assert.AreEqual(WriteState.Property, writer.WriteState); Assert.AreEqual("Property1", writer.Path); writer.WriteNull(); Assert.AreEqual(WriteState.Object, writer.WriteState); writer.WriteEndObject(); Assert.AreEqual(WriteState.Start, writer.WriteState); StringAssert.AreEqual(@"{{{ ""1ytreporP"": NULL!!! }}}", sw.ToString()); } [Test] public void QuoteDictionaryNames() { var d = new Dictionary { { "a", 1 }, }; var jsonSerializerSettings = new JsonSerializerSettings { Formatting = Formatting.Indented, }; var serializer = JsonSerializer.Create(jsonSerializerSettings); using (var stringWriter = new StringWriter()) { using (var writer = new JsonTextWriter(stringWriter) { QuoteName = false }) { serializer.Serialize(writer, d); writer.Close(); } StringAssert.AreEqual(@"{ a: 1 }", stringWriter.ToString()); } } [Test] public void WriteComments() { string json = @"//comment*//*hi*/ {//comment Name://comment true//comment after true" + StringUtils.CarriageReturn + @" ,//comment after comma" + StringUtils.CarriageReturnLineFeed + @" ""ExpiryDate""://comment" + StringUtils.LineFeed + @" new " + StringUtils.LineFeed + @"Constructor (//comment null//comment ), ""Price"": 3.99, ""Sizes"": //comment [//comment ""Small""//comment ]//comment }//comment //comment 1 "; JsonTextReader r = new JsonTextReader(new StringReader(json)); StringWriter sw = new StringWriter(); JsonTextWriter w = new JsonTextWriter(sw); w.Formatting = Formatting.Indented; w.WriteToken(r, true); StringAssert.AreEqual(@"/*comment*//*hi*/*/{/*comment*/ ""Name"": /*comment*/ true/*comment after true*//*comment after comma*/, ""ExpiryDate"": /*comment*/ new Constructor( /*comment*/, null /*comment*/ ), ""Price"": 3.99, ""Sizes"": /*comment*/ [ /*comment*/ ""Small"" /*comment*/ ]/*comment*/ }/*comment *//*comment 1 */", sw.ToString()); } } public class CustomJsonTextWriter : JsonTextWriter { private readonly TextWriter _writer; public CustomJsonTextWriter(TextWriter textWriter) : base(textWriter) { _writer = textWriter; } public override void WritePropertyName(string name) { WritePropertyName(name, true); } public override void WritePropertyName(string name, bool escape) { SetWriteState(JsonToken.PropertyName, name); if (QuoteName) _writer.Write(QuoteChar); _writer.Write(new string(name.ToCharArray().Reverse().ToArray())); if (QuoteName) _writer.Write(QuoteChar); _writer.Write(':'); } public override void WriteNull() { SetWriteState(JsonToken.Null, null); _writer.Write("NULL!!!"); } public override void WriteStartObject() { SetWriteState(JsonToken.StartObject, null); _writer.Write("{{{"); } public override void WriteEndObject() { SetWriteState(JsonToken.EndObject, null); } protected override void WriteEnd(JsonToken token) { if (token == JsonToken.EndObject) _writer.Write("}}}"); else base.WriteEnd(token); } } #if !(PORTABLE || ASPNETCORE50 || NETFX_CORE) public struct ConvertibleInt : IConvertible { private readonly int _value; public ConvertibleInt(int value) { _value = value; } public TypeCode GetTypeCode() { return TypeCode.Int32; } public bool ToBoolean(IFormatProvider provider) { throw new NotImplementedException(); } public byte ToByte(IFormatProvider provider) { throw new NotImplementedException(); } public char ToChar(IFormatProvider provider) { throw new NotImplementedException(); } public DateTime ToDateTime(IFormatProvider provider) { throw new NotImplementedException(); } public decimal ToDecimal(IFormatProvider provider) { throw new NotImplementedException(); } public double ToDouble(IFormatProvider provider) { throw new NotImplementedException(); } public short ToInt16(IFormatProvider provider) { throw new NotImplementedException(); } public int ToInt32(IFormatProvider provider) { throw new NotImplementedException(); } public long ToInt64(IFormatProvider provider) { throw new NotImplementedException(); } public sbyte ToSByte(IFormatProvider provider) { throw new NotImplementedException(); } public float ToSingle(IFormatProvider provider) { throw new NotImplementedException(); } public string ToString(IFormatProvider provider) { throw new NotImplementedException(); } public object ToType(Type conversionType, IFormatProvider provider) { if (conversionType == typeof(int)) return _value; throw new Exception("Type not supported: " + conversionType.FullName); } public ushort ToUInt16(IFormatProvider provider) { throw new NotImplementedException(); } public uint ToUInt32(IFormatProvider provider) { throw new NotImplementedException(); } public ulong ToUInt64(IFormatProvider provider) { throw new NotImplementedException(); } } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Net40.csproj0000664000175000017500000010035212454416117030632 0ustar directhexdirecthex Debug AnyCPU 9.0.30729 2.0 {3E6E2335-B079-4B5B-A65A-9D586914BCBB} Library Properties Newtonsoft.Json.Tests Newtonsoft.Json.Tests 3.5 v4.0 false publish\ true Disk false Foreground 7 Days false false true 0 1.0.0.%2a false false true true full false bin\Debug\Net40\ TRACE;DEBUG;NET40 prompt 4 AllRules.ruleset true pdbonly true bin\Release\Net40\ TRACE;NET40 prompt 4 AllRules.ruleset False ..\packages\FSharp.Core.4.0.0\lib\FSharp.Core.dll False ..\packages\NUnit.2.6.2\lib\nunit.framework.dll 3.5 3.5 3.5 3.5 3.0 3.0 3.5 3.5 3.5 True True FileSystemEntityModel.edmx True True LinqToSqlClasses.dbml Component PreserveNewest MSLinqToSQLGenerator LinqToSqlClasses.designer.cs Designer Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always PreserveNewest EntityModelCodeGenerator FileSystemEntityModel.Designer.cs LinqToSqlClasses.dbml PreserveNewest PreserveNewest PreserveNewest False .NET Framework 3.5 SP1 Client Profile false False .NET Framework 3.5 SP1 true False Windows Installer 3.1 true {a9ae40ff-1a21-414a-9fe7-3be13644cc6d} Newtonsoft.Json.Net40 newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/0000775000175000017500000000000012454416117025154 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/DependencyInjectionTests.cs0000664000175000017500000001632512454416117032456 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET40 || NET35 || NET20 || ASPNETCORE50 || PORTABLE || PORTABLE40 || NETFX_CORE) using Autofac; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Microsoft.FSharp.Collections; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { public interface ITaskRepository { string ConnectionString { get; set; } } public interface ILogger { DateTime DateTime { get; } string Level { get; set; } } public class TaskRepository : ITaskRepository { public string ConnectionString { get; set; } } public class LogManager : ILogger { private readonly DateTime _dt; public LogManager(DateTime dt) { _dt = dt; } public DateTime DateTime { get { return _dt; } } public string Level { get; set; } } public class TaskController { private readonly ITaskRepository _repository; private readonly ILogger _logger; public TaskController(ITaskRepository repository, ILogger logger) { _repository = repository; _logger = logger; } public ITaskRepository Repository { get { return _repository; } } public ILogger Logger { get { return _logger; } } } public class HasSettableProperty { public ILogger Logger { get; set; } public ITaskRepository Repository { get; set; } public IList People { get; set; } public Person Person { get; set; } public HasSettableProperty(ILogger logger) { Logger = logger; } } public class AutofacContractResolver : DefaultContractResolver { private readonly IContainer _container; public AutofacContractResolver(IContainer container) { _container = container; } protected override JsonObjectContract CreateObjectContract(Type objectType) { JsonObjectContract contract = base.CreateObjectContract(objectType); // use Autofac to create types that have been registered with it if (_container.IsRegistered(objectType)) contract.DefaultCreator = () => _container.Resolve(objectType); return contract; } } [TestFixture] public class DependencyInjectionTests : TestFixtureBase { [Test] public void CreateObjectWithParameters() { int count = 0; ContainerBuilder builder = new ContainerBuilder(); builder.RegisterType().As(); builder.RegisterType(); builder.Register(c => { count++; return new LogManager(new DateTime(2000, 12, 12)); }).As(); IContainer container = builder.Build(); AutofacContractResolver contractResolver = new AutofacContractResolver(container); TaskController controller = JsonConvert.DeserializeObject(@"{ 'Logger': { 'Level':'Debug' } }", new JsonSerializerSettings { ContractResolver = contractResolver }); Assert.IsNotNull(controller); Assert.IsNotNull(controller.Logger); Assert.AreEqual(1, count); Assert.AreEqual(new DateTime(2000, 12, 12), controller.Logger.DateTime); Assert.AreEqual("Debug", controller.Logger.Level); } [Test] public void CreateObjectWithSettableParameter() { int count = 0; ContainerBuilder builder = new ContainerBuilder(); builder.Register(c => { count++; return new TaskRepository(); }).As(); builder.RegisterType(); builder.Register(c => { count++; return new LogManager(new DateTime(2000, 12, 12)); }).As(); IContainer container = builder.Build(); AutofacContractResolver contractResolver = new AutofacContractResolver(container); HasSettableProperty o = JsonConvert.DeserializeObject(@"{ 'Logger': { 'Level': 'Debug' }, 'Repository': { 'ConnectionString': 'server=.' }, 'People': [ { 'Name': 'Name1!' }, { 'Name': 'Name2!' } ], 'Person': { 'Name': 'Name3!' } }", new JsonSerializerSettings { ContractResolver = contractResolver }); Assert.IsNotNull(o); Assert.IsNotNull(o.Logger); Assert.IsNotNull(o.Repository); Assert.AreEqual(2, count); Assert.AreEqual(new DateTime(2000, 12, 12), o.Logger.DateTime); Assert.AreEqual("Debug", o.Logger.Level); Assert.AreEqual("server=.", o.Repository.ConnectionString); Assert.AreEqual(2, o.People.Count); Assert.AreEqual("Name1!", o.People[0].Name); Assert.AreEqual("Name2!", o.People[1].Name); Assert.AreEqual("Name3!", o.Person.Name); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/TraceWriterTests.cs0000664000175000017500000014124712454416117030772 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Diagnostics; using System.Globalization; using System.IO; using Newtonsoft.Json.Linq; #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) using System.Numerics; #endif using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters; using System.Text; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Serialization { public class Staff { public string Name { get; set; } public DateTime StartDate { get; set; } public IList Roles { get; set; } } [TestFixture] public class TraceWriterTests : TestFixtureBase { #if !(PORTABLE || ASPNETCORE50 || NETFX_CORE || PORTABLE40) [Test] public void DiagnosticsTraceWriterTest() { StringWriter sw = new StringWriter(); TextWriterTraceListener listener = new TextWriterTraceListener(sw); try { Trace.AutoFlush = true; Trace.Listeners.Add(listener); DiagnosticsTraceWriter traceWriter = new DiagnosticsTraceWriter(); traceWriter.Trace(TraceLevel.Verbose, "Verbose!", null); traceWriter.Trace(TraceLevel.Info, "Info!", null); traceWriter.Trace(TraceLevel.Warning, "Warning!", null); traceWriter.Trace(TraceLevel.Error, "Error!", null); traceWriter.Trace(TraceLevel.Off, "Off!", null); StringAssert.AreEqual(@"Newtonsoft.Json Verbose: 0 : Verbose! Newtonsoft.Json Information: 0 : Info! Newtonsoft.Json Warning: 0 : Warning! Newtonsoft.Json Error: 0 : Error! ", sw.ToString()); } finally { Trace.Listeners.Remove(listener); Trace.AutoFlush = false; } } #endif [Test] public void MemoryTraceWriterSerializeTest() { Staff staff = new Staff(); staff.Name = "Arnie Admin"; staff.Roles = new List { "Administrator" }; staff.StartDate = new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc); ITraceWriter traceWriter = new MemoryTraceWriter(); JsonConvert.SerializeObject( staff, new JsonSerializerSettings { TraceWriter = traceWriter, Converters = { new JavaScriptDateTimeConverter() } }); Console.WriteLine(traceWriter); // 2012-11-11T12:08:42.761 Info Started serializing Newtonsoft.Json.Tests.Serialization.Staff. Path ''. // 2012-11-11T12:08:42.785 Info Started serializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path 'StartDate'. // 2012-11-11T12:08:42.791 Info Finished serializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path 'StartDate'. // 2012-11-11T12:08:42.797 Info Started serializing System.Collections.Generic.List`1[System.String]. Path 'Roles'. // 2012-11-11T12:08:42.798 Info Finished serializing System.Collections.Generic.List`1[System.String]. Path 'Roles'. // 2012-11-11T12:08:42.799 Info Finished serializing Newtonsoft.Json.Tests.Serialization.Staff. Path ''. MemoryTraceWriter memoryTraceWriter = (MemoryTraceWriter)traceWriter; string output = memoryTraceWriter.ToString(); Assert.AreEqual(916, output.Length); Assert.AreEqual(7, memoryTraceWriter.GetTraceMessages().Count()); string json = @"Serialized JSON: { ""Name"": ""Arnie Admin"", ""StartDate"": new Date( 976623132000 ), ""Roles"": [ ""Administrator"" ] }"; json = StringAssert.Normalize(json); output = StringAssert.Normalize(output); Assert.IsTrue(output.Contains(json)); } [Test] public void MemoryTraceWriterDeserializeTest() { string json = @"{ ""Name"": ""Arnie Admin"", ""StartDate"": new Date( 976623132000 ), ""Roles"": [ ""Administrator"" ] }"; Staff staff = new Staff(); staff.Name = "Arnie Admin"; staff.Roles = new List { "Administrator" }; staff.StartDate = new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc); ITraceWriter traceWriter = new MemoryTraceWriter(); JsonConvert.DeserializeObject( json, new JsonSerializerSettings { TraceWriter = traceWriter, Converters = { new JavaScriptDateTimeConverter() }, MetadataPropertyHandling = MetadataPropertyHandling.Default }); Console.WriteLine(traceWriter); // 2012-11-11T12:08:42.761 Info Started serializing Newtonsoft.Json.Tests.Serialization.Staff. Path ''. // 2012-11-11T12:08:42.785 Info Started serializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path 'StartDate'. // 2012-11-11T12:08:42.791 Info Finished serializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path 'StartDate'. // 2012-11-11T12:08:42.797 Info Started serializing System.Collections.Generic.List`1[System.String]. Path 'Roles'. // 2012-11-11T12:08:42.798 Info Finished serializing System.Collections.Generic.List`1[System.String]. Path 'Roles'. // 2012-11-11T12:08:42.799 Info Finished serializing Newtonsoft.Json.Tests.Serialization.Staff. Path ''. // 2013-05-19T00:07:24.360 Verbose Deserialized JSON: // { // "Name": "Arnie Admin", // "StartDate": new Date( // 976623132000 // ), // "Roles": [ // "Administrator" // ] // } MemoryTraceWriter memoryTraceWriter = (MemoryTraceWriter)traceWriter; string output = memoryTraceWriter.ToString(); Assert.AreEqual(1059, output.Length); Assert.AreEqual(7, memoryTraceWriter.GetTraceMessages().Count()); json = StringAssert.Normalize(json); output = StringAssert.Normalize(output); Assert.IsTrue(output.Contains(json)); } [Test] public void MemoryTraceWriterLimitTest() { MemoryTraceWriter traceWriter = new MemoryTraceWriter(); for (int i = 0; i < 1005; i++) { traceWriter.Trace(TraceLevel.Verbose, (i + 1).ToString(CultureInfo.InvariantCulture), null); } IList traceMessages = traceWriter.GetTraceMessages().ToList(); Assert.AreEqual(1000, traceMessages.Count); Assert.IsTrue(traceMessages.First().EndsWith(" 6")); Assert.IsTrue(traceMessages.Last().EndsWith(" 1005")); } [Test] public void Serialize() { var traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Info }; string json = JsonConvert.SerializeObject( new TraceTestObject { StringArray = new[] { "1", "2" }, IntList = new List { 1, 2 }, Version = new Version(1, 2, 3, 4), StringDictionary = new Dictionary { { "1", "!" }, { "Two", "!!" }, { "III", "!!!" } } }, new JsonSerializerSettings { TraceWriter = traceWriter, Formatting = Formatting.Indented }); Assert.AreEqual("Started serializing Newtonsoft.Json.Tests.Serialization.TraceTestObject. Path ''.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("Started serializing System.Collections.Generic.List`1[System.Int32]. Path 'IntList'.", traceWriter.TraceRecords[1].Message); Assert.AreEqual("Finished serializing System.Collections.Generic.List`1[System.Int32]. Path 'IntList'.", traceWriter.TraceRecords[2].Message); Assert.AreEqual("Started serializing System.String[]. Path 'StringArray'.", traceWriter.TraceRecords[3].Message); Assert.AreEqual("Finished serializing System.String[]. Path 'StringArray'.", traceWriter.TraceRecords[4].Message); Assert.AreEqual("Started serializing System.Version. Path 'Version'.", traceWriter.TraceRecords[5].Message); Assert.AreEqual("Finished serializing System.Version. Path 'Version'.", traceWriter.TraceRecords[6].Message); Assert.AreEqual("Started serializing System.Collections.Generic.Dictionary`2[System.String,System.String]. Path 'StringDictionary'.", traceWriter.TraceRecords[7].Message); Assert.AreEqual("Finished serializing System.Collections.Generic.Dictionary`2[System.String,System.String]. Path 'StringDictionary'.", traceWriter.TraceRecords[8].Message); Assert.AreEqual("Finished serializing Newtonsoft.Json.Tests.Serialization.TraceTestObject. Path ''.", traceWriter.TraceRecords[9].Message); Assert.IsFalse(traceWriter.TraceRecords.Any(r => r.Level == TraceLevel.Verbose)); } [Test] public void Deserialize() { InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Info }; TraceTestObject o2 = JsonConvert.DeserializeObject( @"{ ""IntList"": [ 1, 2 ], ""StringArray"": [ ""1"", ""2"" ], ""Version"": { ""Major"": 1, ""Minor"": 2, ""Build"": 3, ""Revision"": 4, ""MajorRevision"": 0, ""MinorRevision"": 4 }, ""StringDictionary"": { ""1"": ""!"", ""Two"": ""!!"", ""III"": ""!!!"" } }", new JsonSerializerSettings { TraceWriter = traceWriter }); Assert.AreEqual(2, o2.IntList.Count); Assert.AreEqual(2, o2.StringArray.Length); Assert.AreEqual(1, o2.Version.Major); Assert.AreEqual(2, o2.Version.Minor); Assert.AreEqual(3, o2.StringDictionary.Count); Assert.AreEqual("Started deserializing Newtonsoft.Json.Tests.Serialization.TraceTestObject. Path 'IntList', line 2, position 13.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("Started deserializing System.Collections.Generic.IList`1[System.Int32]. Path 'IntList', line 2, position 15.", traceWriter.TraceRecords[1].Message); Assert.IsTrue(traceWriter.TraceRecords[2].Message.StartsWith("Finished deserializing System.Collections.Generic.IList`1[System.Int32]. Path 'IntList'")); Assert.AreEqual("Started deserializing System.String[]. Path 'StringArray', line 6, position 19.", traceWriter.TraceRecords[3].Message); Assert.IsTrue(traceWriter.TraceRecords[4].Message.StartsWith("Finished deserializing System.String[]. Path 'StringArray'")); Assert.AreEqual("Deserializing System.Version using creator with parameters: Major, Minor, Build, Revision. Path 'Version.Major', line 11, position 13.", traceWriter.TraceRecords[5].Message); Assert.IsTrue(traceWriter.TraceRecords[6].Message.StartsWith("Started deserializing System.Version. Path 'Version'")); Assert.IsTrue(traceWriter.TraceRecords[7].Message.StartsWith("Finished deserializing System.Version. Path 'Version'")); Assert.AreEqual("Started deserializing System.Collections.Generic.IDictionary`2[System.String,System.String]. Path 'StringDictionary.1', line 19, position 9.", traceWriter.TraceRecords[8].Message); Assert.IsTrue(traceWriter.TraceRecords[9].Message.StartsWith("Finished deserializing System.Collections.Generic.IDictionary`2[System.String,System.String]. Path 'StringDictionary'")); Assert.IsTrue(traceWriter.TraceRecords[10].Message.StartsWith("Finished deserializing Newtonsoft.Json.Tests.Serialization.TraceTestObject. Path ''")); Assert.IsFalse(traceWriter.TraceRecords.Any(r => r.Level == TraceLevel.Verbose)); } [Test] public void Populate() { InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Info }; TraceTestObject o2 = new TraceTestObject(); JsonConvert.PopulateObject(@"{ ""IntList"": [ 1, 2 ], ""StringArray"": [ ""1"", ""2"" ], ""Version"": { ""Major"": 1, ""Minor"": 2, ""Build"": 3, ""Revision"": 4, ""MajorRevision"": 0, ""MinorRevision"": 4 }, ""StringDictionary"": { ""1"": ""!"", ""Two"": ""!!"", ""III"": ""!!!"" } }", o2, new JsonSerializerSettings { TraceWriter = traceWriter, MetadataPropertyHandling = MetadataPropertyHandling.Default }); Assert.AreEqual(2, o2.IntList.Count); Assert.AreEqual(2, o2.StringArray.Length); Assert.AreEqual(1, o2.Version.Major); Assert.AreEqual(2, o2.Version.Minor); Assert.AreEqual(3, o2.StringDictionary.Count); Assert.AreEqual("Started deserializing Newtonsoft.Json.Tests.Serialization.TraceTestObject. Path 'IntList', line 2, position 13.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("Started deserializing System.Collections.Generic.IList`1[System.Int32]. Path 'IntList', line 2, position 15.", traceWriter.TraceRecords[1].Message); Assert.IsTrue(traceWriter.TraceRecords[2].Message.StartsWith("Finished deserializing System.Collections.Generic.IList`1[System.Int32]. Path 'IntList'")); Assert.AreEqual("Started deserializing System.String[]. Path 'StringArray', line 6, position 19.", traceWriter.TraceRecords[3].Message); Assert.IsTrue(traceWriter.TraceRecords[4].Message.StartsWith("Finished deserializing System.String[]. Path 'StringArray'")); Assert.AreEqual("Deserializing System.Version using creator with parameters: Major, Minor, Build, Revision. Path 'Version.Major', line 11, position 13.", traceWriter.TraceRecords[5].Message); Assert.IsTrue(traceWriter.TraceRecords[6].Message.StartsWith("Started deserializing System.Version. Path 'Version'")); Assert.IsTrue(traceWriter.TraceRecords[7].Message.StartsWith("Finished deserializing System.Version. Path 'Version'")); Assert.AreEqual("Started deserializing System.Collections.Generic.IDictionary`2[System.String,System.String]. Path 'StringDictionary.1', line 19, position 9.", traceWriter.TraceRecords[8].Message); Assert.IsTrue(traceWriter.TraceRecords[9].Message.StartsWith("Finished deserializing System.Collections.Generic.IDictionary`2[System.String,System.String]. Path 'StringDictionary'")); Assert.IsTrue(traceWriter.TraceRecords[10].Message.StartsWith("Finished deserializing Newtonsoft.Json.Tests.Serialization.TraceTestObject. Path ''")); Assert.IsFalse(traceWriter.TraceRecords.Any(r => r.Level == TraceLevel.Verbose)); } [Test] public void ErrorDeserializing() { string json = @"{""Integer"":""hi""}"; var traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Info }; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject( json, new JsonSerializerSettings { TraceWriter = traceWriter }); }, "Could not convert string to integer: hi. Path 'Integer', line 1, position 15."); Assert.AreEqual(2, traceWriter.TraceRecords.Count); Assert.AreEqual(TraceLevel.Info, traceWriter.TraceRecords[0].Level); Assert.AreEqual("Started deserializing Newtonsoft.Json.Tests.Serialization.IntegerTestClass. Path 'Integer', line 1, position 11.", traceWriter.TraceRecords[0].Message); Assert.AreEqual(TraceLevel.Error, traceWriter.TraceRecords[1].Level); Assert.AreEqual("Error deserializing Newtonsoft.Json.Tests.Serialization.IntegerTestClass. Could not convert string to integer: hi. Path 'Integer', line 1, position 15.", traceWriter.TraceRecords[1].Message); } [Test] public void ErrorDeserializingNested() { string json = @"{""IntList"":[1, ""two""]}"; var traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Info }; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject( json, new JsonSerializerSettings { TraceWriter = traceWriter }); }, "Could not convert string to integer: two. Path 'IntList[1]', line 1, position 20."); Assert.AreEqual(3, traceWriter.TraceRecords.Count); Assert.AreEqual(TraceLevel.Info, traceWriter.TraceRecords[0].Level); Assert.AreEqual("Started deserializing Newtonsoft.Json.Tests.Serialization.TraceTestObject. Path 'IntList', line 1, position 11.", traceWriter.TraceRecords[0].Message); Assert.AreEqual(TraceLevel.Info, traceWriter.TraceRecords[1].Level); Assert.AreEqual("Started deserializing System.Collections.Generic.IList`1[System.Int32]. Path 'IntList', line 1, position 12.", traceWriter.TraceRecords[1].Message); Assert.AreEqual(TraceLevel.Error, traceWriter.TraceRecords[2].Level); Assert.AreEqual("Error deserializing System.Collections.Generic.IList`1[System.Int32]. Could not convert string to integer: two. Path 'IntList[1]', line 1, position 20.", traceWriter.TraceRecords[2].Message); } [Test] public void SerializeDictionarysWithPreserveObjectReferences() { PreserveReferencesHandlingTests.CircularDictionary circularDictionary = new PreserveReferencesHandlingTests.CircularDictionary(); circularDictionary.Add("other", new PreserveReferencesHandlingTests.CircularDictionary { { "blah", null } }); circularDictionary.Add("self", circularDictionary); InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; JsonConvert.SerializeObject( circularDictionary, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All, TraceWriter = traceWriter }); Assert.IsTrue(traceWriter.TraceRecords.Any(r => r.Message == "Writing object reference Id '1' for Newtonsoft.Json.Tests.Serialization.PreserveReferencesHandlingTests+CircularDictionary. Path ''.")); Assert.IsTrue(traceWriter.TraceRecords.Any(r => r.Message == "Writing object reference Id '2' for Newtonsoft.Json.Tests.Serialization.PreserveReferencesHandlingTests+CircularDictionary. Path 'other'.")); Assert.IsTrue(traceWriter.TraceRecords.Any(r => r.Message == "Writing object reference to Id '1' for Newtonsoft.Json.Tests.Serialization.PreserveReferencesHandlingTests+CircularDictionary. Path 'self'.")); } [Test] public void DeserializeDictionarysWithPreserveObjectReferences() { string json = @"{ ""$id"": ""1"", ""other"": { ""$id"": ""2"", ""blah"": null }, ""self"": { ""$ref"": ""1"" } }"; InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All, MetadataPropertyHandling = MetadataPropertyHandling.Default, TraceWriter = traceWriter }); Assert.IsTrue(traceWriter.TraceRecords.Any(r => r.Message == "Read object reference Id '1' for Newtonsoft.Json.Tests.Serialization.PreserveReferencesHandlingTests+CircularDictionary. Path 'other', line 3, position 11.")); Assert.IsTrue(traceWriter.TraceRecords.Any(r => r.Message == "Read object reference Id '2' for Newtonsoft.Json.Tests.Serialization.PreserveReferencesHandlingTests+CircularDictionary. Path 'other.blah', line 5, position 12.")); Assert.IsTrue(traceWriter.TraceRecords.Any(r => r.Message.StartsWith("Resolved object reference '1' to Newtonsoft.Json.Tests.Serialization.PreserveReferencesHandlingTests+CircularDictionary. Path 'self'"))); } [Test] public void WriteTypeNameForObjects() { InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; IList l = new List { new Dictionary { { "key!", "value!" } }, new Version(1, 2, 3, 4) }; JsonConvert.SerializeObject(l, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, TraceWriter = traceWriter }); Assert.AreEqual("Started serializing System.Collections.Generic.List`1[System.Object]. Path ''.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("Writing type name 'System.Collections.Generic.List`1[[System.Object, mscorlib]], mscorlib' for System.Collections.Generic.List`1[System.Object]. Path ''.", traceWriter.TraceRecords[1].Message); Assert.AreEqual("Started serializing System.Collections.Generic.Dictionary`2[System.String,System.String]. Path '$values'.", traceWriter.TraceRecords[2].Message); Assert.AreEqual("Writing type name 'System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[System.String, mscorlib]], mscorlib' for System.Collections.Generic.Dictionary`2[System.String,System.String]. Path '$values[0]'.", traceWriter.TraceRecords[3].Message); Assert.AreEqual("Finished serializing System.Collections.Generic.Dictionary`2[System.String,System.String]. Path '$values[0]'.", traceWriter.TraceRecords[4].Message); Assert.AreEqual("Started serializing System.Version. Path '$values[0]'.", traceWriter.TraceRecords[5].Message); Assert.AreEqual("Writing type name 'System.Version, mscorlib' for System.Version. Path '$values[1]'.", traceWriter.TraceRecords[6].Message); Assert.AreEqual("Finished serializing System.Version. Path '$values[1]'.", traceWriter.TraceRecords[7].Message); Assert.AreEqual("Finished serializing System.Collections.Generic.List`1[System.Object]. Path ''.", traceWriter.TraceRecords[8].Message); } [Test] public void SerializeConverter() { InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; IList d = new List { new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc) }; string json = JsonConvert.SerializeObject(d, Formatting.Indented, new JsonSerializerSettings { Converters = { new JavaScriptDateTimeConverter() }, TraceWriter = traceWriter }); Assert.AreEqual("Started serializing System.Collections.Generic.List`1[System.DateTime]. Path ''.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("Started serializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path ''.", traceWriter.TraceRecords[1].Message); Assert.AreEqual("Finished serializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path '[0]'.", traceWriter.TraceRecords[2].Message); Assert.AreEqual("Finished serializing System.Collections.Generic.List`1[System.DateTime]. Path ''.", traceWriter.TraceRecords[3].Message); } [Test] public void DeserializeConverter() { string json = @"[new Date(976623132000)]"; InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; JsonConvert.DeserializeObject>( json, new JsonSerializerSettings { Converters = { new JavaScriptDateTimeConverter() }, TraceWriter = traceWriter }); Assert.AreEqual("Started deserializing System.Collections.Generic.List`1[System.DateTime]. Path '', line 1, position 1.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("Started deserializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path '[0]', line 1, position 10.", traceWriter.TraceRecords[1].Message); Assert.AreEqual("Finished deserializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path '[0]', line 1, position 23.", traceWriter.TraceRecords[2].Message); Assert.AreEqual("Finished deserializing System.Collections.Generic.List`1[System.DateTime]. Path '', line 1, position 24.", traceWriter.TraceRecords[3].Message); } [Test] public void DeserializeTypeName() { InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; string json = @"{ ""$type"": ""System.Collections.Generic.List`1[[System.Object, mscorlib]], mscorlib"", ""$values"": [ { ""$type"": ""System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[System.String, mscorlib]], mscorlib"", ""key!"": ""value!"" }, { ""$type"": ""System.Version, mscorlib"", ""Major"": 1, ""Minor"": 2, ""Build"": 3, ""Revision"": 4, ""MajorRevision"": 0, ""MinorRevision"": 4 } ] }"; JsonConvert.DeserializeObject(json, null, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, MetadataPropertyHandling = MetadataPropertyHandling.Default, TraceWriter = traceWriter }); Assert.AreEqual("Resolved type 'System.Collections.Generic.List`1[[System.Object, mscorlib]], mscorlib' to System.Collections.Generic.List`1[System.Object]. Path '$type', line 2, position 84.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("Started deserializing System.Collections.Generic.List`1[System.Object]. Path '$values', line 3, position 15.", traceWriter.TraceRecords[1].Message); Assert.AreEqual("Resolved type 'System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[System.String, mscorlib]], mscorlib' to System.Collections.Generic.Dictionary`2[System.String,System.String]. Path '$values[0].$type', line 5, position 120.", traceWriter.TraceRecords[2].Message); Assert.AreEqual("Started deserializing System.Collections.Generic.Dictionary`2[System.String,System.String]. Path '$values[0].key!', line 6, position 14.", traceWriter.TraceRecords[3].Message); Assert.IsTrue(traceWriter.TraceRecords[4].Message.StartsWith("Finished deserializing System.Collections.Generic.Dictionary`2[System.String,System.String]. Path '$values[0]'")); Assert.AreEqual("Resolved type 'System.Version, mscorlib' to System.Version. Path '$values[1].$type', line 9, position 42.", traceWriter.TraceRecords[5].Message); Assert.AreEqual("Deserializing System.Version using creator with parameters: Major, Minor, Build, Revision. Path '$values[1].Major', line 10, position 15.", traceWriter.TraceRecords[6].Message); Assert.IsTrue(traceWriter.TraceRecords[7].Message.StartsWith("Started deserializing System.Version. Path '$values[1]'")); Assert.IsTrue(traceWriter.TraceRecords[8].Message.StartsWith("Finished deserializing System.Version. Path '$values[1]'")); Assert.IsTrue(traceWriter.TraceRecords[9].Message.StartsWith("Finished deserializing System.Collections.Generic.List`1[System.Object]. Path '$values'")); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void DeserializeISerializable() { InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject( "{}", new JsonSerializerSettings { TraceWriter = traceWriter }); }, "Member 'ClassName' was not found."); Assert.IsTrue(traceWriter.TraceRecords[0].Message.StartsWith("Deserializing System.Exception using ISerializable constructor. Path ''")); Assert.AreEqual(TraceLevel.Info, traceWriter.TraceRecords[0].Level); Assert.AreEqual("Error deserializing System.Exception. Member 'ClassName' was not found. Path '', line 1, position 2.", traceWriter.TraceRecords[1].Message); Assert.AreEqual(TraceLevel.Error, traceWriter.TraceRecords[1].Level); } #endif [Test] public void DeserializeMissingMember() { InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; JsonConvert.DeserializeObject( "{'MissingMemberProperty':'!!'}", new JsonSerializerSettings { TraceWriter = traceWriter }); Assert.AreEqual("Started deserializing Newtonsoft.Json.Tests.TestObjects.Person. Path 'MissingMemberProperty', line 1, position 25.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("Could not find member 'MissingMemberProperty' on Newtonsoft.Json.Tests.TestObjects.Person. Path 'MissingMemberProperty', line 1, position 25.", traceWriter.TraceRecords[1].Message); Assert.IsTrue(traceWriter.TraceRecords[2].Message.StartsWith("Finished deserializing Newtonsoft.Json.Tests.TestObjects.Person. Path ''")); } [Test] public void DeserializeMissingMemberConstructor() { InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; string json = @"{ ""Major"": 1, ""Minor"": 2, ""Build"": 3, ""Revision"": 4, ""MajorRevision"": 0, ""MinorRevision"": 4, ""MissingMemberProperty"": null }"; JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TraceWriter = traceWriter }); Assert.AreEqual("Deserializing System.Version using creator with parameters: Major, Minor, Build, Revision. Path 'Major', line 2, position 11.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("Could not find member 'MissingMemberProperty' on System.Version. Path 'MissingMemberProperty', line 8, position 32.", traceWriter.TraceRecords[1].Message); Assert.IsTrue(traceWriter.TraceRecords[2].Message.StartsWith("Started deserializing System.Version. Path ''")); Assert.IsTrue(traceWriter.TraceRecords[3].Message.StartsWith("Finished deserializing System.Version. Path ''")); } [Test] public void PublicParametizedConstructorWithPropertyNameConflictWithAttribute() { InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; string json = @"{name:""1""}"; PublicParametizedConstructorWithPropertyNameConflictWithAttribute c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TraceWriter = traceWriter }); Assert.IsNotNull(c); Assert.AreEqual(1, c.Name); Assert.AreEqual("Deserializing Newtonsoft.Json.Tests.TestObjects.PublicParametizedConstructorWithPropertyNameConflictWithAttribute using creator with parameters: name. Path 'name', line 1, position 6.", traceWriter.TraceRecords[0].Message); } [Test] public void ShouldSerializeTestClass() { ShouldSerializeTestClass c = new ShouldSerializeTestClass(); c.Age = 29; c.Name = "Jim"; c._shouldSerializeName = true; InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; JsonConvert.SerializeObject(c, new JsonSerializerSettings { TraceWriter = traceWriter }); Assert.AreEqual("ShouldSerialize result for property 'Name' on Newtonsoft.Json.Tests.Serialization.ShouldSerializeTestClass: True. Path ''.", traceWriter.TraceRecords[1].Message); Assert.AreEqual(TraceLevel.Verbose, traceWriter.TraceRecords[1].Level); traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; c._shouldSerializeName = false; JsonConvert.SerializeObject(c, new JsonSerializerSettings { TraceWriter = traceWriter }); Assert.AreEqual("ShouldSerialize result for property 'Name' on Newtonsoft.Json.Tests.Serialization.ShouldSerializeTestClass: False. Path ''.", traceWriter.TraceRecords[1].Message); Assert.AreEqual(TraceLevel.Verbose, traceWriter.TraceRecords[1].Level); } [Test] public void SpecifiedTest() { SpecifiedTestClass c = new SpecifiedTestClass(); c.Name = "James"; c.Age = 27; c.NameSpecified = false; InMemoryTraceWriter traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; string json = JsonConvert.SerializeObject(c, Formatting.Indented, new JsonSerializerSettings { TraceWriter = traceWriter }); Assert.AreEqual("Started serializing Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass. Path ''.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("IsSpecified result for property 'Name' on Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass: False. Path ''.", traceWriter.TraceRecords[1].Message); Assert.AreEqual("IsSpecified result for property 'Weight' on Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass: False. Path 'Age'.", traceWriter.TraceRecords[2].Message); Assert.AreEqual("IsSpecified result for property 'Height' on Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass: False. Path 'Age'.", traceWriter.TraceRecords[3].Message); Assert.AreEqual("IsSpecified result for property 'FavoriteNumber' on Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass: False. Path 'Age'.", traceWriter.TraceRecords[4].Message); Assert.AreEqual("Finished serializing Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass. Path ''.", traceWriter.TraceRecords[5].Message); StringAssert.AreEqual(@"{ ""Age"": 27 }", json); traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; SpecifiedTestClass deserialized = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TraceWriter = traceWriter }); Assert.AreEqual("Started deserializing Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass. Path 'Age', line 2, position 9.", traceWriter.TraceRecords[0].Message); Assert.IsTrue(traceWriter.TraceRecords[1].Message.StartsWith("Finished deserializing Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass. Path ''")); Assert.IsNull(deserialized.Name); Assert.IsFalse(deserialized.NameSpecified); Assert.IsFalse(deserialized.WeightSpecified); Assert.IsFalse(deserialized.HeightSpecified); Assert.IsFalse(deserialized.FavoriteNumberSpecified); Assert.AreEqual(27, deserialized.Age); c.NameSpecified = true; c.WeightSpecified = true; c.HeightSpecified = true; c.FavoriteNumber = 23; json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": ""James"", ""Age"": 27, ""Weight"": 0, ""Height"": 0, ""FavoriteNumber"": 23 }", json); traceWriter = new InMemoryTraceWriter { LevelFilter = TraceLevel.Verbose }; deserialized = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TraceWriter = traceWriter }); Assert.AreEqual("Started deserializing Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass. Path 'Name', line 2, position 10.", traceWriter.TraceRecords[0].Message); Assert.AreEqual("IsSpecified for property 'Name' on Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass set to true. Path 'Name', line 2, position 18.", traceWriter.TraceRecords[1].Message); Assert.AreEqual("IsSpecified for property 'Weight' on Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass set to true. Path 'Weight', line 4, position 14.", traceWriter.TraceRecords[2].Message); Assert.AreEqual("IsSpecified for property 'Height' on Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass set to true. Path 'Height', line 5, position 14.", traceWriter.TraceRecords[3].Message); Assert.IsTrue(traceWriter.TraceRecords[4].Message.StartsWith("Finished deserializing Newtonsoft.Json.Tests.Serialization.SpecifiedTestClass. Path ''")); Assert.AreEqual("James", deserialized.Name); Assert.IsTrue(deserialized.NameSpecified); Assert.IsTrue(deserialized.WeightSpecified); Assert.IsTrue(deserialized.HeightSpecified); Assert.IsTrue(deserialized.FavoriteNumberSpecified); Assert.AreEqual(27, deserialized.Age); Assert.AreEqual(23, deserialized.FavoriteNumber); } #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void TraceJsonWriterTest() { StringWriter sw = new StringWriter(CultureInfo.InvariantCulture); JsonTextWriter w = new JsonTextWriter(sw); TraceJsonWriter traceWriter = new TraceJsonWriter(w); traceWriter.WriteStartObject(); traceWriter.WritePropertyName("Array"); traceWriter.WriteStartArray(); traceWriter.WriteValue("String!"); traceWriter.WriteValue(new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc)); traceWriter.WriteValue(new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.FromHours(2))); traceWriter.WriteValue(1.1f); traceWriter.WriteValue(1.1d); traceWriter.WriteValue(1.1m); traceWriter.WriteValue(1); traceWriter.WriteValue((char)'!'); traceWriter.WriteValue((short)1); traceWriter.WriteValue((ushort)1); traceWriter.WriteValue((int)1); traceWriter.WriteValue((uint)1); traceWriter.WriteValue((sbyte)1); traceWriter.WriteValue((byte)1); traceWriter.WriteValue((long)1); traceWriter.WriteValue((ulong)1); traceWriter.WriteValue((bool)true); traceWriter.WriteValue((DateTime?)new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc)); traceWriter.WriteValue((DateTimeOffset?)new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.FromHours(2))); traceWriter.WriteValue((float?)1.1f); traceWriter.WriteValue((double?)1.1d); traceWriter.WriteValue((decimal?)1.1m); traceWriter.WriteValue((int?)1); traceWriter.WriteValue((char?)'!'); traceWriter.WriteValue((short?)1); traceWriter.WriteValue((ushort?)1); traceWriter.WriteValue((int?)1); traceWriter.WriteValue((uint?)1); traceWriter.WriteValue((sbyte?)1); traceWriter.WriteValue((byte?)1); traceWriter.WriteValue((long?)1); traceWriter.WriteValue((ulong?)1); traceWriter.WriteValue((bool?)true); traceWriter.WriteValue(BigInteger.Parse("9999999990000000000000000000000000000000000")); traceWriter.WriteValue((object)true); traceWriter.WriteValue(TimeSpan.FromMinutes(1)); traceWriter.WriteValue(Guid.Empty); traceWriter.WriteValue(new Uri("http://www.google.com/")); traceWriter.WriteValue(Encoding.UTF8.GetBytes("String!")); traceWriter.WriteRawValue("[1],"); traceWriter.WriteRaw("[1]"); traceWriter.WriteNull(); traceWriter.WriteUndefined(); traceWriter.WriteStartConstructor("ctor"); traceWriter.WriteValue(1); traceWriter.WriteEndConstructor(); traceWriter.WriteComment("A comment"); traceWriter.WriteWhitespace(" "); traceWriter.WriteEnd(); traceWriter.WriteEndObject(); traceWriter.Flush(); traceWriter.Close(); Console.WriteLine(traceWriter.GetJson()); StringAssert.AreEqual(@"{ ""Array"": [ ""String!"", ""2000-12-12T12:12:12Z"", ""2000-12-12T12:12:12+02:00"", 1.1, 1.1, 1.1, 1, ""!"", 1, 1, 1, 1, 1, 1, 1, 1, true, ""2000-12-12T12:12:12Z"", ""2000-12-12T12:12:12+02:00"", 1.1, 1.1, 1.1, 1, ""!"", 1, 1, 1, 1, 1, 1, 1, 1, 1, true, 9999999990000000000000000000000000000000000, true, true, ""00:01:00"", ""00000000-0000-0000-0000-000000000000"", ""http://www.google.com/"", ""U3RyaW5nIQ=="", [1],[1],[1], null, undefined, new ctor( 1 ) /*A comment*/ ] }", traceWriter.GetJson()); } [Test] public void TraceJsonReaderTest() { string json = @"{ ""Array"": [ ""String!"", ""2000-12-12T12:12:12Z"", ""2000-12-12T12:12:12Z"", ""2000-12-12T12:12:12+00:00"", ""U3RyaW5nIQ=="", 1, 1.1, 9999999990000000000000000000000000000000000, null, undefined, new ctor( 1 ) /*A comment*/ ] }"; StringReader sw = new StringReader(json); JsonTextReader w = new JsonTextReader(sw); TraceJsonReader traceReader = new TraceJsonReader(w); traceReader.Read(); Assert.AreEqual(JsonToken.StartObject, traceReader.TokenType); traceReader.Read(); Assert.AreEqual(JsonToken.PropertyName, traceReader.TokenType); Assert.AreEqual("Array", traceReader.Value); traceReader.Read(); Assert.AreEqual(JsonToken.StartArray, traceReader.TokenType); Assert.AreEqual(null, traceReader.Value); traceReader.ReadAsString(); Assert.AreEqual(JsonToken.String, traceReader.TokenType); Assert.AreEqual('"', traceReader.QuoteChar); Assert.AreEqual("String!", traceReader.Value); // for great code coverage justice! traceReader.QuoteChar = '\''; Assert.AreEqual('\'', traceReader.QuoteChar); traceReader.ReadAsString(); Assert.AreEqual(JsonToken.String, traceReader.TokenType); Assert.AreEqual("2000-12-12T12:12:12Z", traceReader.Value); traceReader.ReadAsDateTime(); Assert.AreEqual(JsonToken.Date, traceReader.TokenType); Assert.AreEqual(new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc), traceReader.Value); traceReader.ReadAsDateTimeOffset(); Assert.AreEqual(JsonToken.Date, traceReader.TokenType); Assert.AreEqual(new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.Zero), traceReader.Value); traceReader.ReadAsBytes(); Assert.AreEqual(JsonToken.Bytes, traceReader.TokenType); CollectionAssert.AreEqual(Encoding.UTF8.GetBytes("String!"), (byte[])traceReader.Value); traceReader.ReadAsInt32(); Assert.AreEqual(JsonToken.Integer, traceReader.TokenType); Assert.AreEqual(1, traceReader.Value); traceReader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, traceReader.TokenType); Assert.AreEqual(1.1m, traceReader.Value); traceReader.Read(); Assert.AreEqual(JsonToken.Integer, traceReader.TokenType); Assert.AreEqual(typeof(BigInteger), traceReader.ValueType); Assert.AreEqual(BigInteger.Parse("9999999990000000000000000000000000000000000"), traceReader.Value); traceReader.Read(); Assert.AreEqual(JsonToken.Null, traceReader.TokenType); traceReader.Read(); Assert.AreEqual(JsonToken.Undefined, traceReader.TokenType); traceReader.Read(); Assert.AreEqual(JsonToken.StartConstructor, traceReader.TokenType); traceReader.Read(); Assert.AreEqual(JsonToken.Integer, traceReader.TokenType); Assert.AreEqual(1L, traceReader.Value); traceReader.Read(); Assert.AreEqual(JsonToken.EndConstructor, traceReader.TokenType); traceReader.Read(); Assert.AreEqual(JsonToken.Comment, traceReader.TokenType); Assert.AreEqual("A comment", traceReader.Value); traceReader.Read(); Assert.AreEqual(JsonToken.EndArray, traceReader.TokenType); traceReader.Read(); Assert.AreEqual(JsonToken.EndObject, traceReader.TokenType); Assert.IsFalse(traceReader.Read()); traceReader.Close(); Console.WriteLine(traceReader.GetJson()); StringAssert.AreEqual(json, traceReader.GetJson()); } #endif } public class TraceRecord { public string Message { get; set; } public TraceLevel Level { get; set; } public Exception Exception { get; set; } public override string ToString() { return Level + " - " + Message; } } public class InMemoryTraceWriter : ITraceWriter { public TraceLevel LevelFilter { get; set; } public IList TraceRecords { get; set; } public InMemoryTraceWriter() { LevelFilter = TraceLevel.Verbose; TraceRecords = new List(); } public void Trace(TraceLevel level, string message, Exception ex) { TraceRecords.Add( new TraceRecord { Level = level, Message = message, Exception = ex }); } public override string ToString() { StringBuilder sb = new StringBuilder(); foreach (var traceRecord in TraceRecords) { sb.AppendLine(traceRecord.Message); } return sb.ToString(); } } public class TraceTestObject { public IList IntList { get; set; } public string[] StringArray { get; set; } public Version Version { get; set; } public IDictionary StringDictionary { get; set; } } public class IntegerTestClass { public int Integer { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/DefaultValueHandlingTests.cs0000664000175000017500000004171612454416117032565 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.ComponentModel; using System.IO; using System.Runtime.Serialization; #if !(NET20 || NET35 || NETFX_CORE || PORTABLE) using System.Runtime.Serialization.Json; #endif using System.Text; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class DefaultValueHandlingTests : TestFixtureBase { public class MyClass { [JsonIgnore] public MyEnum Status { get; set; } private string _data; public string Data { get { return _data; } set { _data = value; if (_data != null && _data.StartsWith("Other")) { this.Status = MyEnum.Other; } } } } public enum MyEnum { Default = 0, Other } [Test] public void PopulateWithJsonIgnoreAttribute() { string json = "{\"Data\":\"Other with some more text\"}"; MyClass result = JsonConvert.DeserializeObject(json, new JsonSerializerSettings() { DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate }); Assert.AreEqual(MyEnum.Other, result.Status); } [Test] public void Include() { Invoice invoice = new Invoice { Company = "Acme Ltd.", Amount = 50.0m, Paid = false, FollowUpDays = 30, FollowUpEmailAddress = string.Empty, PaidDate = null }; string included = JsonConvert.SerializeObject(invoice, Formatting.Indented, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Include }); StringAssert.AreEqual(@"{ ""Company"": ""Acme Ltd."", ""Amount"": 50.0, ""Paid"": false, ""PaidDate"": null, ""FollowUpDays"": 30, ""FollowUpEmailAddress"": """" }", included); } [Test] public void SerializeInvoice() { Invoice invoice = new Invoice { Company = "Acme Ltd.", Amount = 50.0m, Paid = false, FollowUpDays = 30, FollowUpEmailAddress = string.Empty, PaidDate = null }; string included = JsonConvert.SerializeObject(invoice, Formatting.Indented, new JsonSerializerSettings { }); StringAssert.AreEqual(@"{ ""Company"": ""Acme Ltd."", ""Amount"": 50.0, ""Paid"": false, ""PaidDate"": null, ""FollowUpDays"": 30, ""FollowUpEmailAddress"": """" }", included); string ignored = JsonConvert.SerializeObject(invoice, Formatting.Indented, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); StringAssert.AreEqual(@"{ ""Company"": ""Acme Ltd."", ""Amount"": 50.0 }", ignored); } [Test] public void SerializeDefaultValueAttributeTest() { string json = JsonConvert.SerializeObject(new DefaultValueAttributeTestClass(), Formatting.None, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); Assert.AreEqual(@"{""TestField1"":0,""TestProperty1"":null}", json); json = JsonConvert.SerializeObject(new DefaultValueAttributeTestClass { TestField1 = int.MinValue, TestProperty1 = "NotDefault" }, Formatting.None, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); Assert.AreEqual(@"{""TestField1"":-2147483648,""TestProperty1"":""NotDefault""}", json); json = JsonConvert.SerializeObject(new DefaultValueAttributeTestClass { TestField1 = 21, TestProperty1 = "NotDefault" }, Formatting.None, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); Assert.AreEqual(@"{""TestProperty1"":""NotDefault""}", json); json = JsonConvert.SerializeObject(new DefaultValueAttributeTestClass { TestField1 = 21, TestProperty1 = "TestProperty1Value" }, Formatting.None, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); Assert.AreEqual(@"{}", json); } [Test] public void DeserializeDefaultValueAttributeTest() { string json = "{}"; DefaultValueAttributeTestClass c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Populate }); Assert.AreEqual("TestProperty1Value", c.TestProperty1); c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate }); Assert.AreEqual("TestProperty1Value", c.TestProperty1); } public class DefaultHandler { [DefaultValue(-1)] public int field1; [DefaultValue("default")] public string field2; } [Test] public void DeserializeIgnoreAndPopulate() { DefaultHandler c1 = JsonConvert.DeserializeObject("{}", new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate }); Assert.AreEqual(-1, c1.field1); Assert.AreEqual("default", c1.field2); DefaultHandler c2 = JsonConvert.DeserializeObject("{'field1':-1,'field2':'default'}", new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate }); Assert.AreEqual(-1, c2.field1); Assert.AreEqual("default", c2.field2); } [JsonObject] public class NetworkUser { [JsonProperty(PropertyName = "userId")] [DefaultValue(-1)] public long GlobalId { get; set; } [JsonProperty(PropertyName = "age")] [DefaultValue(0)] public int Age { get; set; } [JsonProperty(PropertyName = "amount")] [DefaultValue(0.0)] public decimal Amount { get; set; } [JsonProperty(PropertyName = "floatUserId")] [DefaultValue(-1.0d)] public float FloatGlobalId { get; set; } [JsonProperty(PropertyName = "firstName")] public string Firstname { get; set; } [JsonProperty(PropertyName = "lastName")] public string Lastname { get; set; } public NetworkUser() { GlobalId = -1; FloatGlobalId = -1.0f; Amount = 0.0m; Age = 0; } } [Test] public void IgnoreNumberTypeDifferencesWithDefaultValue() { NetworkUser user = new NetworkUser { Firstname = "blub" }; string json = JsonConvert.SerializeObject(user, Formatting.None, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore, NullValueHandling = NullValueHandling.Ignore }); Assert.AreEqual(@"{""firstName"":""blub""}", json); } [Test] public void ApproxEquals() { Assert.IsTrue(MathUtils.ApproxEquals(0.0, 0.0)); Assert.IsTrue(MathUtils.ApproxEquals(1000.0, 1000.0000000000001)); Assert.IsFalse(MathUtils.ApproxEquals(1000.0, 1000.000000000001)); Assert.IsFalse(MathUtils.ApproxEquals(0.0, 0.00001)); } #if !NET20 [Test] public void EmitDefaultValueTest() { EmitDefaultValueClass c = new EmitDefaultValueClass(); #if !(NET20 || NET35 || NETFX_CORE || PORTABLE) DataContractJsonSerializer jsonSerializer = new DataContractJsonSerializer(typeof(EmitDefaultValueClass)); MemoryStream ms = new MemoryStream(); jsonSerializer.WriteObject(ms, c); Assert.AreEqual("{}", Encoding.UTF8.GetString(ms.ToArray())); #endif string json = JsonConvert.SerializeObject(c); Assert.AreEqual("{}", json); } #endif [Test] public void DefaultValueHandlingPropertyTest() { DefaultValueHandlingPropertyClass c = new DefaultValueHandlingPropertyClass(); string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""IntInclude"": 0, ""IntDefault"": 0 }", json); json = JsonConvert.SerializeObject(c, Formatting.Indented, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); StringAssert.AreEqual(@"{ ""IntInclude"": 0 }", json); json = JsonConvert.SerializeObject(c, Formatting.Indented, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Include }); StringAssert.AreEqual(@"{ ""IntInclude"": 0, ""IntDefault"": 0 }", json); } [Test] public void DeserializeWithIgnore() { string json = @"{'Value':null,'IntValue1':1,'IntValue2':0,'IntValue3':null}"; var o = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); Assert.AreEqual(int.MaxValue, o.IntValue1); Assert.AreEqual(int.MinValue, o.IntValue2); Assert.AreEqual(int.MaxValue, o.IntValue3); Assert.AreEqual("Derp!", o.ClassValue.Derp); } [Test] public void DeserializeWithPopulate() { string json = @"{}"; var o = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Populate }); Assert.AreEqual(1, o.IntValue1); Assert.AreEqual(0, o.IntValue2); Assert.AreEqual(null, o.ClassValue); } #if !NET20 [Test] public void EmitDefaultValueIgnoreAndPopulate() { string str = "{}"; TestClass obj = JsonConvert.DeserializeObject(str, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate }); Assert.AreEqual("fff", obj.Field1); } #endif [Test] public void PopulateTest() { var test = JsonConvert.DeserializeObject("{\"IntValue\":null}"); Console.WriteLine("IntValue:{0}", test.IntValue); } public class PopulateWithNullJsonTest { [JsonProperty(DefaultValueHandling = DefaultValueHandling.Populate, NullValueHandling = NullValueHandling.Ignore)] [DefaultValue(6)] public int IntValue { get; set; } } } #if !NET20 [DataContract] public class TestClass { [JsonProperty(DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)] [DataMember(EmitDefaultValue = false)] [DefaultValue("fff")] public string Field1 { set; get; } } #endif public class DefaultValueHandlingDeserialize { public string Derp { get; set; } } public class DefaultValueHandlingDeserializeHolder { public DefaultValueHandlingDeserializeHolder() { ClassValue = new DefaultValueHandlingDeserialize { Derp = "Derp!" }; IntValue1 = int.MaxValue; IntValue2 = int.MinValue; IntValue3 = int.MaxValue; } [DefaultValue(1)] public int IntValue1 { get; set; } public int IntValue2 { get; set; } [DefaultValue(null)] public int IntValue3 { get; set; } public DefaultValueHandlingDeserialize ClassValue { get; set; } } public class DefaultValueHandlingDeserializePopulate { public DefaultValueHandlingDeserializePopulate() { ClassValue = new DefaultValueHandlingDeserialize { Derp = "Derp!" }; IntValue1 = int.MaxValue; IntValue2 = int.MinValue; } [DefaultValue(1)] public int IntValue1 { get; set; } public int IntValue2 { get; set; } public DefaultValueHandlingDeserialize ClassValue { get; set; } } public struct DefaultStruct { public string Default { get; set; } } public class DefaultValueHandlingPropertyClass { [JsonProperty(DefaultValueHandling = DefaultValueHandling.Ignore)] public int IntIgnore { get; set; } [JsonProperty(DefaultValueHandling = DefaultValueHandling.Include)] public int IntInclude { get; set; } [JsonProperty] public int IntDefault { get; set; } } #if !NET20 [DataContract] public class EmitDefaultValueClass { [DataMember(EmitDefaultValue = false)] public Guid Guid { get; set; } [DataMember(EmitDefaultValue = false)] public TimeSpan TimeSpan { get; set; } [DataMember(EmitDefaultValue = false)] public DateTime DateTime { get; set; } [DataMember(EmitDefaultValue = false)] public DateTimeOffset DateTimeOffset { get; set; } [DataMember(EmitDefaultValue = false)] public decimal Decimal { get; set; } [DataMember(EmitDefaultValue = false)] public int Integer { get; set; } [DataMember(EmitDefaultValue = false)] public double Double { get; set; } [DataMember(EmitDefaultValue = false)] public bool Boolean { get; set; } [DataMember(EmitDefaultValue = false)] public DefaultStruct Struct { get; set; } [DataMember(EmitDefaultValue = false)] public StringComparison Enum { get; set; } [DataMember(EmitDefaultValue = false)] public Guid? NullableGuid { get; set; } [DataMember(EmitDefaultValue = false)] public TimeSpan? NullableTimeSpan { get; set; } [DataMember(EmitDefaultValue = false)] public DateTime? NullableDateTime { get; set; } [DataMember(EmitDefaultValue = false)] public DateTimeOffset? NullableDateTimeOffset { get; set; } [DataMember(EmitDefaultValue = false)] public decimal? NullableDecimal { get; set; } [DataMember(EmitDefaultValue = false)] public int? NullableInteger { get; set; } [DataMember(EmitDefaultValue = false)] public double? NullableDouble { get; set; } [DataMember(EmitDefaultValue = false)] public bool? NullableBoolean { get; set; } [DataMember(EmitDefaultValue = false)] public DefaultStruct? NullableStruct { get; set; } [DataMember(EmitDefaultValue = false)] public StringComparison? NullableEnum { get; set; } [DataMember(EmitDefaultValue = false)] public object Object { get; set; } } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/TypeNameHandlingTests.cs0000664000175000017500000021016412454416117031721 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif #if !(PORTABLE || PORTABLE40) using System.Collections.ObjectModel; #if !(NET35 || NET20) using System.Dynamic; #endif using System.Text; using Newtonsoft.Json.Tests.Linq; using System; using System.Collections; using System.Collections.Generic; using System.Globalization; using System.Runtime.Serialization.Formatters; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Utilities; using System.Net; using System.Runtime.Serialization; using System.IO; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class TypeNameHandlingTests : TestFixtureBase { #if !(NET20 || NET35 || NET40) public class KnownAutoTypes { public ICollection Collection { get; set; } public IList List { get; set; } public IDictionary Dictionary { get; set; } public ISet Set { get; set; } public IReadOnlyCollection ReadOnlyCollection { get; set; } public IReadOnlyList ReadOnlyList { get; set; } public IReadOnlyDictionary ReadOnlyDictionary { get; set; } } [Test] public void KnownAutoTypesTest() { KnownAutoTypes c = new KnownAutoTypes { Collection = new List { "Collection value!" }, List = new List { "List value!" }, Dictionary = new Dictionary { { "Dictionary key!", "Dictionary value!" } }, ReadOnlyCollection = new ReadOnlyCollection(new[] { "Read Only Collection value!" }), ReadOnlyList = new ReadOnlyCollection(new[] { "Read Only List value!" }), Set = new HashSet { "Set value!" }, ReadOnlyDictionary = new ReadOnlyDictionary(new Dictionary { { "Read Only Dictionary key!", "Read Only Dictionary value!" } }) }; string json = JsonConvert.SerializeObject(c, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto }); Console.WriteLine(json); StringAssert.AreEqual(@"{ ""Collection"": [ ""Collection value!"" ], ""List"": [ ""List value!"" ], ""Dictionary"": { ""Dictionary key!"": ""Dictionary value!"" }, ""Set"": [ ""Set value!"" ], ""ReadOnlyCollection"": [ ""Read Only Collection value!"" ], ""ReadOnlyList"": [ ""Read Only List value!"" ], ""ReadOnlyDictionary"": { ""Read Only Dictionary key!"": ""Read Only Dictionary value!"" } }", json); } #endif [Test] public void DictionaryAuto() { Dictionary dic = new Dictionary { { "movie", new Movie { Name = "Die Hard"}} }; string json = JsonConvert.SerializeObject(dic, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto }); StringAssert.AreEqual(@"{ ""movie"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Movie, Newtonsoft.Json.Tests"", ""Name"": ""Die Hard"", ""Description"": null, ""Classification"": null, ""Studio"": null, ""ReleaseDate"": null, ""ReleaseCountries"": null } }", json); } [Test] public void KeyValuePairAuto() { IList> dic = new List> { new KeyValuePair("movie", new Movie { Name = "Die Hard"}) }; string json = JsonConvert.SerializeObject(dic, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto }); StringAssert.AreEqual(@"[ { ""Key"": ""movie"", ""Value"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Movie, Newtonsoft.Json.Tests"", ""Name"": ""Die Hard"", ""Description"": null, ""Classification"": null, ""Studio"": null, ""ReleaseDate"": null, ""ReleaseCountries"": null } } ]", json); } [Test] public void NestedValueObjects() { StringBuilder sb = new StringBuilder(); for (int i = 0; i < 10000; i++) { sb.Append(@"{""$value"":"); } ExceptionAssert.Throws(() => { var reader = new JsonTextReader(new StringReader(sb.ToString())); var ser = new JsonSerializer(); ser.MetadataPropertyHandling = MetadataPropertyHandling.Default; ser.Deserialize(reader); }, "Unexpected token when deserializing primitive value: StartObject. Path '$value', line 1, position 11."); } [Test] public void SerializeRootTypeNameIfDerivedWithAuto() { var serializer = new JsonSerializer() { TypeNameHandling = TypeNameHandling.Auto }; var sw = new StringWriter(); serializer.Serialize(new JsonTextWriter(sw) { Formatting = Formatting.Indented }, new WagePerson(), typeof(Person)); var result = sw.ToString(); StringAssert.AreEqual(@"{ ""$type"": ""Newtonsoft.Json.Tests.TestObjects.WagePerson, Newtonsoft.Json.Tests"", ""HourlyWage"": 0.0, ""Name"": null, ""BirthDate"": ""0001-01-01T00:00:00"", ""LastModified"": ""0001-01-01T00:00:00"" }", result); Assert.IsTrue(result.Contains("WagePerson")); using (var rd = new JsonTextReader(new StringReader(result))) { var person = serializer.Deserialize(rd); CustomAssert.IsInstanceOfType(typeof(WagePerson), person); } } [Test] public void SerializeRootTypeNameAutoWithJsonConvert() { string json = JsonConvert.SerializeObject(new WagePerson(), typeof(object), Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto }); StringAssert.AreEqual(@"{ ""$type"": ""Newtonsoft.Json.Tests.TestObjects.WagePerson, Newtonsoft.Json.Tests"", ""HourlyWage"": 0.0, ""Name"": null, ""BirthDate"": ""0001-01-01T00:00:00"", ""LastModified"": ""0001-01-01T00:00:00"" }", json); } public class Wrapper { public IList Array { get; set; } public IDictionary Dictionary { get; set; } } [Test] public void SerializeWrapper() { Wrapper wrapper = new Wrapper(); wrapper.Array = new List { new EmployeeReference() }; wrapper.Dictionary = new Dictionary { { "First", new EmployeeReference() } }; string json = JsonConvert.SerializeObject(wrapper, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto }); StringAssert.AreEqual(@"{ ""Array"": [ { ""$id"": ""1"", ""Name"": null, ""Manager"": null } ], ""Dictionary"": { ""First"": { ""$id"": ""2"", ""Name"": null, ""Manager"": null } } }", json); Wrapper w2 = JsonConvert.DeserializeObject(json); CustomAssert.IsInstanceOfType(typeof(List), w2.Array); CustomAssert.IsInstanceOfType(typeof(Dictionary), w2.Dictionary); } [Test] public void WriteTypeNameForObjects() { string employeeRef = ReflectionUtils.GetTypeName(typeof(EmployeeReference), FormatterAssemblyStyle.Simple, null); EmployeeReference employee = new EmployeeReference(); string json = JsonConvert.SerializeObject(employee, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects }); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""$type"": """ + employeeRef + @""", ""Name"": null, ""Manager"": null }", json); } [Test] public void DeserializeTypeName() { string employeeRef = ReflectionUtils.GetTypeName(typeof(EmployeeReference), FormatterAssemblyStyle.Simple, null); string json = @"{ ""$id"": ""1"", ""$type"": """ + employeeRef + @""", ""Name"": ""Name!"", ""Manager"": null }"; object employee = JsonConvert.DeserializeObject(json, null, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects }); CustomAssert.IsInstanceOfType(typeof(EmployeeReference), employee); Assert.AreEqual("Name!", ((EmployeeReference)employee).Name); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) [Test] public void DeserializeTypeNameFromGacAssembly() { string cookieRef = ReflectionUtils.GetTypeName(typeof(Cookie), FormatterAssemblyStyle.Simple, null); string json = @"{ ""$id"": ""1"", ""$type"": """ + cookieRef + @""" }"; object cookie = JsonConvert.DeserializeObject(json, null, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects }); CustomAssert.IsInstanceOfType(typeof(Cookie), cookie); } #endif [Test] public void SerializeGenericObjectListWithTypeName() { string employeeRef = typeof(EmployeeReference).AssemblyQualifiedName; string personRef = typeof(Person).AssemblyQualifiedName; List values = new List { new EmployeeReference { Name = "Bob", Manager = new EmployeeReference { Name = "Frank" } }, new Person { Department = "Department", BirthDate = new DateTime(2000, 12, 30, 0, 0, 0, DateTimeKind.Utc), LastModified = new DateTime(2000, 12, 30, 0, 0, 0, DateTimeKind.Utc) }, "String!", int.MinValue }; string json = JsonConvert.SerializeObject(values, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full }); StringAssert.AreEqual(@"[ { ""$id"": ""1"", ""$type"": """ + employeeRef + @""", ""Name"": ""Bob"", ""Manager"": { ""$id"": ""2"", ""$type"": """ + employeeRef + @""", ""Name"": ""Frank"", ""Manager"": null } }, { ""$type"": """ + personRef + @""", ""Name"": null, ""BirthDate"": ""2000-12-30T00:00:00Z"", ""LastModified"": ""2000-12-30T00:00:00Z"" }, ""String!"", -2147483648 ]", json); } [Test] public void DeserializeGenericObjectListWithTypeName() { string employeeRef = typeof(EmployeeReference).AssemblyQualifiedName; string personRef = typeof(Person).AssemblyQualifiedName; string json = @"[ { ""$id"": ""1"", ""$type"": """ + employeeRef + @""", ""Name"": ""Bob"", ""Manager"": { ""$id"": ""2"", ""$type"": """ + employeeRef + @""", ""Name"": ""Frank"", ""Manager"": null } }, { ""$type"": """ + personRef + @""", ""Name"": null, ""BirthDate"": ""\/Date(978134400000)\/"", ""LastModified"": ""\/Date(978134400000)\/"" }, ""String!"", -2147483648 ]"; List values = (List)JsonConvert.DeserializeObject(json, typeof(List), new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full }); Assert.AreEqual(4, values.Count); EmployeeReference e = (EmployeeReference)values[0]; Person p = (Person)values[1]; Assert.AreEqual("Bob", e.Name); Assert.AreEqual("Frank", e.Manager.Name); Assert.AreEqual(null, p.Name); Assert.AreEqual(new DateTime(2000, 12, 30, 0, 0, 0, DateTimeKind.Utc), p.BirthDate); Assert.AreEqual(new DateTime(2000, 12, 30, 0, 0, 0, DateTimeKind.Utc), p.LastModified); Assert.AreEqual("String!", values[2]); Assert.AreEqual((long)int.MinValue, values[3]); } [Test] public void DeserializeWithBadTypeName() { string employeeRef = typeof(EmployeeReference).AssemblyQualifiedName; string personRef = typeof(Person).AssemblyQualifiedName; string json = @"{ ""$id"": ""1"", ""$type"": """ + employeeRef + @""", ""Name"": ""Name!"", ""Manager"": null }"; try { JsonConvert.DeserializeObject(json, typeof(Person), new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full }); } catch (JsonSerializationException ex) { Assert.IsTrue(ex.Message.StartsWith(@"Type specified in JSON '" + employeeRef + @"' is not compatible with '" + personRef + @"'.")); } } [Test] public void DeserializeTypeNameWithNoTypeNameHandling() { string employeeRef = typeof(EmployeeReference).AssemblyQualifiedName; string json = @"{ ""$id"": ""1"", ""$type"": """ + employeeRef + @""", ""Name"": ""Name!"", ""Manager"": null }"; JObject o = (JObject)JsonConvert.DeserializeObject(json); StringAssert.AreEqual(@"{ ""Name"": ""Name!"", ""Manager"": null }", o.ToString()); } [Test] public void DeserializeTypeNameOnly() { string json = @"{ ""$id"": ""1"", ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Employee"", ""Name"": ""Name!"", ""Manager"": null }"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json, null, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects }); }, "Type specified in JSON 'Newtonsoft.Json.Tests.TestObjects.Employee' was not resolved. Path '$type', line 3, position 56."); } public interface ICorrelatedMessage { string CorrelationId { get; set; } } public class SendHttpRequest : ICorrelatedMessage { public SendHttpRequest() { RequestEncoding = "UTF-8"; Method = "GET"; } public string Method { get; set; } public Dictionary Headers { get; set; } public string Url { get; set; } public Dictionary RequestData; public string RequestBodyText { get; set; } public string User { get; set; } public string Passwd { get; set; } public string RequestEncoding { get; set; } public string CorrelationId { get; set; } } [Test] public void DeserializeGenericTypeName() { string typeName = typeof(SendHttpRequest).AssemblyQualifiedName; string json = @"{ ""$type"": """ + typeName + @""", ""RequestData"": { ""$type"": ""System.Collections.Generic.Dictionary`2[[System.String, mscorlib,Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"", ""Id"": ""siedemnaście"", ""X"": ""323"" }, ""Method"": ""GET"", ""Url"": ""http://www.onet.pl"", ""RequestEncoding"": ""UTF-8"", ""CorrelationId"": ""xyz"" }"; ICorrelatedMessage message = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full }); CustomAssert.IsInstanceOfType(typeof(SendHttpRequest), message); SendHttpRequest request = (SendHttpRequest)message; Assert.AreEqual("xyz", request.CorrelationId); Assert.AreEqual(2, request.RequestData.Count); Assert.AreEqual("siedemnaście", request.RequestData["Id"]); } [Test] public void SerializeObjectWithMultipleGenericLists() { string containerTypeName = typeof(Container).AssemblyQualifiedName; string productListTypeName = typeof(List).AssemblyQualifiedName; Container container = new Container { In = new List(), Out = new List() }; string json = JsonConvert.SerializeObject(container, Formatting.Indented, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, TypeNameHandling = TypeNameHandling.All, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full }); StringAssert.AreEqual(@"{ ""$type"": """ + containerTypeName + @""", ""In"": { ""$type"": """ + productListTypeName + @""", ""$values"": [] }, ""Out"": { ""$type"": """ + productListTypeName + @""", ""$values"": [] } }", json); } public class TypeNameProperty { public string Name { get; set; } [JsonProperty(TypeNameHandling = TypeNameHandling.All)] public object Value { get; set; } } [Test] public void WriteObjectTypeNameForProperty() { string typeNamePropertyRef = ReflectionUtils.GetTypeName(typeof(TypeNameProperty), FormatterAssemblyStyle.Simple, null); TypeNameProperty typeNameProperty = new TypeNameProperty { Name = "Name!", Value = new TypeNameProperty { Name = "Nested!" } }; string json = JsonConvert.SerializeObject(typeNameProperty, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": ""Name!"", ""Value"": { ""$type"": """ + typeNamePropertyRef + @""", ""Name"": ""Nested!"", ""Value"": null } }", json); TypeNameProperty deserialized = JsonConvert.DeserializeObject(json); Assert.AreEqual("Name!", deserialized.Name); CustomAssert.IsInstanceOfType(typeof(TypeNameProperty), deserialized.Value); TypeNameProperty nested = (TypeNameProperty)deserialized.Value; Assert.AreEqual("Nested!", nested.Name); Assert.AreEqual(null, nested.Value); } [Test] public void WriteListTypeNameForProperty() { string listRef = ReflectionUtils.GetTypeName(typeof(List), FormatterAssemblyStyle.Simple, null); TypeNameProperty typeNameProperty = new TypeNameProperty { Name = "Name!", Value = new List { 1, 2, 3, 4, 5 } }; string json = JsonConvert.SerializeObject(typeNameProperty, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": ""Name!"", ""Value"": { ""$type"": """ + listRef + @""", ""$values"": [ 1, 2, 3, 4, 5 ] } }", json); TypeNameProperty deserialized = JsonConvert.DeserializeObject(json); Assert.AreEqual("Name!", deserialized.Name); CustomAssert.IsInstanceOfType(typeof(List), deserialized.Value); List nested = (List)deserialized.Value; Assert.AreEqual(5, nested.Count); Assert.AreEqual(1, nested[0]); Assert.AreEqual(2, nested[1]); Assert.AreEqual(3, nested[2]); Assert.AreEqual(4, nested[3]); Assert.AreEqual(5, nested[4]); } [Test] public void DeserializeUsingCustomBinder() { string json = @"{ ""$id"": ""1"", ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Employee"", ""Name"": ""Name!"" }"; object p = JsonConvert.DeserializeObject(json, null, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, Binder = new CustomSerializationBinder() }); CustomAssert.IsInstanceOfType(typeof(Person), p); Person person = (Person)p; Assert.AreEqual("Name!", person.Name); } public class CustomSerializationBinder : SerializationBinder { public override Type BindToType(string assemblyName, string typeName) { return typeof(Person); } } #if !(NET20 || NET35) [Test] public void SerializeUsingCustomBinder() { TypeNameSerializationBinder binder = new TypeNameSerializationBinder("Newtonsoft.Json.Tests.Serialization.{0}, Newtonsoft.Json.Tests"); IList values = new List { new Customer { Name = "Caroline Customer" }, new Purchase { ProductName = "Elbow Grease", Price = 5.99m, Quantity = 1 } }; string json = JsonConvert.SerializeObject(values, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto, Binder = binder }); //[ // { // "$type": "Customer", // "Name": "Caroline Customer" // }, // { // "$type": "Purchase", // "ProductName": "Elbow Grease", // "Price": 5.99, // "Quantity": 1 // } //] StringAssert.AreEqual(@"[ { ""$type"": ""Customer"", ""Name"": ""Caroline Customer"" }, { ""$type"": ""Purchase"", ""ProductName"": ""Elbow Grease"", ""Price"": 5.99, ""Quantity"": 1 } ]", json); IList newValues = JsonConvert.DeserializeObject>(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto, Binder = new TypeNameSerializationBinder("Newtonsoft.Json.Tests.Serialization.{0}, Newtonsoft.Json.Tests") }); CustomAssert.IsInstanceOfType(typeof(Customer), newValues[0]); Customer customer = (Customer)newValues[0]; Assert.AreEqual("Caroline Customer", customer.Name); CustomAssert.IsInstanceOfType(typeof(Purchase), newValues[1]); Purchase purchase = (Purchase)newValues[1]; Assert.AreEqual("Elbow Grease", purchase.ProductName); } public class TypeNameSerializationBinder : SerializationBinder { public string TypeFormat { get; private set; } public TypeNameSerializationBinder(string typeFormat) { TypeFormat = typeFormat; } public override void BindToName(Type serializedType, out string assemblyName, out string typeName) { assemblyName = null; typeName = serializedType.Name; } public override Type BindToType(string assemblyName, string typeName) { string resolvedTypeName = string.Format(TypeFormat, typeName); return Type.GetType(resolvedTypeName, true); } } #endif [Test] public void CollectionWithAbstractItems() { HolderClass testObject = new HolderClass(); testObject.TestMember = new ContentSubClass("First One"); testObject.AnotherTestMember = new Dictionary>(); testObject.AnotherTestMember.Add(1, new List()); testObject.AnotherTestMember[1].Add(new ContentSubClass("Second One")); testObject.AThirdTestMember = new ContentSubClass("Third One"); JsonSerializer serializingTester = new JsonSerializer(); serializingTester.ReferenceLoopHandling = ReferenceLoopHandling.Ignore; StringWriter sw = new StringWriter(); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.Indented; serializingTester.TypeNameHandling = TypeNameHandling.Auto; serializingTester.Serialize(jsonWriter, testObject); } string json = sw.ToString(); string contentSubClassRef = ReflectionUtils.GetTypeName(typeof(ContentSubClass), FormatterAssemblyStyle.Simple, null); string dictionaryRef = ReflectionUtils.GetTypeName(typeof(Dictionary>), FormatterAssemblyStyle.Simple, null); string listRef = ReflectionUtils.GetTypeName(typeof(List), FormatterAssemblyStyle.Simple, null); string expected = @"{ ""TestMember"": { ""$type"": """ + contentSubClassRef + @""", ""SomeString"": ""First One"" }, ""AnotherTestMember"": { ""$type"": """ + dictionaryRef + @""", ""1"": [ { ""$type"": """ + contentSubClassRef + @""", ""SomeString"": ""Second One"" } ] }, ""AThirdTestMember"": { ""$type"": """ + contentSubClassRef + @""", ""SomeString"": ""Third One"" } }"; StringAssert.AreEqual(expected, json); StringReader sr = new StringReader(json); JsonSerializer deserializingTester = new JsonSerializer(); HolderClass anotherTestObject; using (JsonTextReader jsonReader = new JsonTextReader(sr)) { deserializingTester.TypeNameHandling = TypeNameHandling.Auto; anotherTestObject = deserializingTester.Deserialize(jsonReader); } Assert.IsNotNull(anotherTestObject); CustomAssert.IsInstanceOfType(typeof(ContentSubClass), anotherTestObject.TestMember); CustomAssert.IsInstanceOfType(typeof(Dictionary>), anotherTestObject.AnotherTestMember); Assert.AreEqual(1, anotherTestObject.AnotherTestMember.Count); IList list = anotherTestObject.AnotherTestMember[1]; CustomAssert.IsInstanceOfType(typeof(List), list); Assert.AreEqual(1, list.Count); CustomAssert.IsInstanceOfType(typeof(ContentSubClass), list[0]); } [Test] public void WriteObjectTypeNameForPropertyDemo() { Message message = new Message(); message.Address = "http://www.google.com"; message.Body = new SearchDetails { Query = "Json.NET", Language = "en-us" }; string json = JsonConvert.SerializeObject(message, Formatting.Indented); // { // "Address": "http://www.google.com", // "Body": { // "$type": "Newtonsoft.Json.Tests.Serialization.SearchDetails, Newtonsoft.Json.Tests", // "Query": "Json.NET", // "Language": "en-us" // } // } Message deserialized = JsonConvert.DeserializeObject(json); SearchDetails searchDetails = (SearchDetails)deserialized.Body; // Json.NET } public class UrlStatus { public int Status { get; set; } public string Url { get; set; } } [Test] public void GenericDictionaryObject() { Dictionary collection = new Dictionary() { { "First", new UrlStatus { Status = 404, Url = @"http://www.bing.com" } }, { "Second", new UrlStatus { Status = 400, Url = @"http://www.google.com" } }, { "List", new List { new UrlStatus { Status = 300, Url = @"http://www.yahoo.com" }, new UrlStatus { Status = 200, Url = @"http://www.askjeeves.com" } } } }; string json = JsonConvert.SerializeObject(collection, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, TypeNameAssemblyFormat = FormatterAssemblyStyle.Simple }); string urlStatusTypeName = ReflectionUtils.GetTypeName(typeof(UrlStatus), FormatterAssemblyStyle.Simple, null); StringAssert.AreEqual(@"{ ""$type"": ""System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[System.Object, mscorlib]], mscorlib"", ""First"": { ""$type"": """ + urlStatusTypeName + @""", ""Status"": 404, ""Url"": ""http://www.bing.com"" }, ""Second"": { ""$type"": """ + urlStatusTypeName + @""", ""Status"": 400, ""Url"": ""http://www.google.com"" }, ""List"": { ""$type"": ""System.Collections.Generic.List`1[[" + urlStatusTypeName + @"]], mscorlib"", ""$values"": [ { ""$type"": """ + urlStatusTypeName + @""", ""Status"": 300, ""Url"": ""http://www.yahoo.com"" }, { ""$type"": """ + urlStatusTypeName + @""", ""Status"": 200, ""Url"": ""http://www.askjeeves.com"" } ] } }", json); object c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, TypeNameAssemblyFormat = FormatterAssemblyStyle.Simple }); CustomAssert.IsInstanceOfType(typeof(Dictionary), c); Dictionary newCollection = (Dictionary)c; Assert.AreEqual(3, newCollection.Count); Assert.AreEqual(@"http://www.bing.com", ((UrlStatus)newCollection["First"]).Url); List statues = (List)newCollection["List"]; Assert.AreEqual(2, statues.Count); } [Test] public void SerializingIEnumerableOfTShouldRetainGenericTypeInfo() { string productClassRef = ReflectionUtils.GetTypeName(typeof(CustomEnumerable), FormatterAssemblyStyle.Simple, null); CustomEnumerable products = new CustomEnumerable(); string json = JsonConvert.SerializeObject(products, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }); StringAssert.AreEqual(@"{ ""$type"": """ + productClassRef + @""", ""$values"": [] }", json); } public class CustomEnumerable : IEnumerable { //NOTE: a simple linked list private readonly T value; private readonly CustomEnumerable next; private readonly int count; private CustomEnumerable(T value, CustomEnumerable next) { this.value = value; this.next = next; count = this.next.count + 1; } public CustomEnumerable() { count = 0; } public CustomEnumerable AddFirst(T newVal) { return new CustomEnumerable(newVal, this); } public IEnumerator GetEnumerator() { if (count == 0) // last node yield break; yield return value; var nextInLine = next; while (nextInLine != null) { if (nextInLine.count != 0) yield return nextInLine.value; nextInLine = nextInLine.next; } } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } public class Car { // included in JSON public string Model { get; set; } public DateTime Year { get; set; } public List Features { get; set; } public object[] Objects { get; set; } // ignored [JsonIgnore] public DateTime LastModified { get; set; } } [Test] public void ByteArrays() { Car testerObject = new Car(); testerObject.Year = new DateTime(2000, 10, 5, 1, 1, 1, DateTimeKind.Utc); byte[] data = new byte[] { 75, 65, 82, 73, 82, 65 }; testerObject.Objects = new object[] { data, "prueba" }; JsonSerializerSettings jsonSettings = new JsonSerializerSettings(); jsonSettings.NullValueHandling = NullValueHandling.Ignore; jsonSettings.TypeNameHandling = TypeNameHandling.All; string output = JsonConvert.SerializeObject(testerObject, Formatting.Indented, jsonSettings); string carClassRef = ReflectionUtils.GetTypeName(typeof(Car), FormatterAssemblyStyle.Simple, null); StringAssert.AreEqual(output, @"{ ""$type"": """ + carClassRef + @""", ""Year"": ""2000-10-05T01:01:01Z"", ""Objects"": { ""$type"": ""System.Object[], mscorlib"", ""$values"": [ { ""$type"": ""System.Byte[], mscorlib"", ""$value"": ""S0FSSVJB"" }, ""prueba"" ] } }"); Car obj = JsonConvert.DeserializeObject(output, jsonSettings); Assert.IsNotNull(obj); Assert.IsTrue(obj.Objects[0] is byte[]); byte[] d = (byte[])obj.Objects[0]; CollectionAssert.AreEquivalent(data, d); } #if !(NETFX_CORE || ASPNETCORE50) [Test] public void ISerializableTypeNameHandlingTest() { //Create an instance of our example type IExample e = new Example("Rob"); SerializableWrapper w = new SerializableWrapper { Content = e }; //Test Binary Serialization Round Trip //This will work find because the Binary Formatter serializes type names //this.TestBinarySerializationRoundTrip(e); //Test Json Serialization //This fails because the JsonSerializer doesn't serialize type names correctly for ISerializable objects //Type Names should be serialized for All, Auto and Object modes TestJsonSerializationRoundTrip(w, TypeNameHandling.All); TestJsonSerializationRoundTrip(w, TypeNameHandling.Auto); TestJsonSerializationRoundTrip(w, TypeNameHandling.Objects); } private void TestJsonSerializationRoundTrip(SerializableWrapper e, TypeNameHandling flag) { Console.WriteLine("Type Name Handling: " + flag.ToString()); StringWriter writer = new StringWriter(); //Create our serializer and set Type Name Handling appropriately JsonSerializer serializer = new JsonSerializer(); serializer.TypeNameHandling = flag; //Do the actual serialization and dump to Console for inspection serializer.Serialize(new JsonTextWriter(writer), e); Console.WriteLine(writer.ToString()); Console.WriteLine(); //Now try to deserialize //Json.Net will cause an error here as it will try and instantiate //the interface directly because it failed to respect the //TypeNameHandling property on serialization SerializableWrapper f = serializer.Deserialize(new JsonTextReader(new StringReader(writer.ToString()))); //Check Round Trip Assert.AreEqual(e, f, "Objects should be equal after round trip json serialization"); } #endif #if !(NET20 || NET35) [Test] public void SerializationBinderWithFullName() { Message message = new Message { Address = "jamesnk@testtown.com", Body = new Version(1, 2, 3, 4) }; string json = JsonConvert.SerializeObject(message, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full, Binder = new MetroBinder(), ContractResolver = new DefaultContractResolver { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) IgnoreSerializableAttribute = true #endif } }); StringAssert.AreEqual(@"{ ""$type"": "":::MESSAGE:::, AssemblyName"", ""Address"": ""jamesnk@testtown.com"", ""Body"": { ""$type"": "":::VERSION:::, AssemblyName"", ""Major"": 1, ""Minor"": 2, ""Build"": 3, ""Revision"": 4, ""MajorRevision"": 0, ""MinorRevision"": 4 } }", json); } public class MetroBinder : SerializationBinder { public override Type BindToType(string assemblyName, string typeName) { return null; } public override void BindToName(Type serializedType, out string assemblyName, out string typeName) { assemblyName = "AssemblyName"; #if !(NETFX_CORE || ASPNETCORE50) typeName = ":::" + serializedType.Name.ToUpper(CultureInfo.InvariantCulture) + ":::"; #else typeName = ":::" + serializedType.Name.ToUpper() + ":::"; #endif } } #endif [Test] public void TypeNameIntList() { TypeNameList l = new TypeNameList(); l.Add(1); l.Add(2); l.Add(3); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ 1, 2, 3 ]", json); } [Test] public void TypeNameComponentList() { var c1 = new TestComponentSimple(); TypeNameList l = new TypeNameList(); l.Add(c1); l.Add(new Employee { BirthDate = new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc), Department = "Department!" }); l.Add("String!"); l.Add(long.MaxValue); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 0 }, { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Employee, Newtonsoft.Json.Tests"", ""FirstName"": null, ""LastName"": null, ""BirthDate"": ""2000-12-12T12:12:12Z"", ""Department"": ""Department!"", ""JobTitle"": null }, ""String!"", 9223372036854775807 ]", json); TypeNameList l2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(4, l2.Count); CustomAssert.IsInstanceOfType(typeof(TestComponentSimple), l2[0]); CustomAssert.IsInstanceOfType(typeof(Employee), l2[1]); CustomAssert.IsInstanceOfType(typeof(string), l2[2]); CustomAssert.IsInstanceOfType(typeof(long), l2[3]); } [Test] public void TypeNameDictionary() { TypeNameDictionary l = new TypeNameDictionary(); l.Add("First", new TestComponentSimple { MyProperty = 1 }); l.Add("Second", "String!"); l.Add("Third", long.MaxValue); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"{ ""First"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 }, ""Second"": ""String!"", ""Third"": 9223372036854775807 }", json); TypeNameDictionary l2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l2.Count); CustomAssert.IsInstanceOfType(typeof(TestComponentSimple), l2["First"]); Assert.AreEqual(1, ((TestComponentSimple)l2["First"]).MyProperty); CustomAssert.IsInstanceOfType(typeof(string), l2["Second"]); CustomAssert.IsInstanceOfType(typeof(long), l2["Third"]); } [Test] public void TypeNameObjectItems() { TypeNameObject o1 = new TypeNameObject(); o1.Object1 = new TestComponentSimple { MyProperty = 1 }; o1.Object2 = 123; o1.ObjectNotHandled = new TestComponentSimple { MyProperty = int.MaxValue }; o1.String = "String!"; o1.Integer = int.MaxValue; string json = JsonConvert.SerializeObject(o1, Formatting.Indented); string expected = @"{ ""Object1"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 }, ""Object2"": 123, ""ObjectNotHandled"": { ""MyProperty"": 2147483647 }, ""String"": ""String!"", ""Integer"": 2147483647 }"; StringAssert.AreEqual(expected, json); TypeNameObject o2 = JsonConvert.DeserializeObject(json); Assert.IsNotNull(o2); CustomAssert.IsInstanceOfType(typeof(TestComponentSimple), o2.Object1); Assert.AreEqual(1, ((TestComponentSimple)o2.Object1).MyProperty); CustomAssert.IsInstanceOfType(typeof(long), o2.Object2); CustomAssert.IsInstanceOfType(typeof(JObject), o2.ObjectNotHandled); StringAssert.AreEqual(@"{ ""MyProperty"": 2147483647 }", o2.ObjectNotHandled.ToString()); } [Test] public void PropertyItemTypeNameHandling() { PropertyItemTypeNameHandling c1 = new PropertyItemTypeNameHandling(); c1.Data = new List { 1, "two", new TestComponentSimple { MyProperty = 1 } }; string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Data"": [ 1, ""two"", { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 } ] }", json); PropertyItemTypeNameHandling c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(3, c2.Data.Count); CustomAssert.IsInstanceOfType(typeof(long), c2.Data[0]); CustomAssert.IsInstanceOfType(typeof(string), c2.Data[1]); CustomAssert.IsInstanceOfType(typeof(TestComponentSimple), c2.Data[2]); TestComponentSimple c = (TestComponentSimple)c2.Data[2]; Assert.AreEqual(1, c.MyProperty); } [Test] public void PropertyItemTypeNameHandlingNestedCollections() { PropertyItemTypeNameHandling c1 = new PropertyItemTypeNameHandling { Data = new List { new TestComponentSimple { MyProperty = 1 }, new List { new List { new List() } } } }; string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Data"": [ { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 }, { ""$type"": ""System.Collections.Generic.List`1[[System.Object, mscorlib]], mscorlib"", ""$values"": [ [ [] ] ] } ] }", json); PropertyItemTypeNameHandling c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(2, c2.Data.Count); CustomAssert.IsInstanceOfType(typeof(TestComponentSimple), c2.Data[0]); CustomAssert.IsInstanceOfType(typeof(List), c2.Data[1]); List c = (List)c2.Data[1]; CustomAssert.IsInstanceOfType(typeof(JArray), c[0]); json = @"{ ""Data"": [ { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 }, { ""$type"": ""System.Collections.Generic.List`1[[System.Object, mscorlib]], mscorlib"", ""$values"": [ { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 } ] } ] }"; c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(2, c2.Data.Count); CustomAssert.IsInstanceOfType(typeof(TestComponentSimple), c2.Data[0]); CustomAssert.IsInstanceOfType(typeof(List), c2.Data[1]); c = (List)c2.Data[1]; CustomAssert.IsInstanceOfType(typeof(JObject), c[0]); JObject o = (JObject)c[0]; Assert.AreEqual(1, (int)o["MyProperty"]); } [Test] public void PropertyItemTypeNameHandlingNestedDictionaries() { PropertyItemTypeNameHandlingDictionary c1 = new PropertyItemTypeNameHandlingDictionary() { Data = new Dictionary { { "one", new TestComponentSimple { MyProperty = 1 } }, { "two", new Dictionary { { "one", new Dictionary { { "one", 1 } } } } } } }; string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Data"": { ""one"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 }, ""two"": { ""$type"": ""System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[System.Object, mscorlib]], mscorlib"", ""one"": { ""one"": 1 } } } }", json); PropertyItemTypeNameHandlingDictionary c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(2, c2.Data.Count); CustomAssert.IsInstanceOfType(typeof(TestComponentSimple), c2.Data["one"]); CustomAssert.IsInstanceOfType(typeof(Dictionary), c2.Data["two"]); Dictionary c = (Dictionary)c2.Data["two"]; CustomAssert.IsInstanceOfType(typeof(JObject), c["one"]); json = @"{ ""Data"": { ""one"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 }, ""two"": { ""$type"": ""System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[System.Object, mscorlib]], mscorlib"", ""one"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 } } } }"; c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(2, c2.Data.Count); CustomAssert.IsInstanceOfType(typeof(TestComponentSimple), c2.Data["one"]); CustomAssert.IsInstanceOfType(typeof(Dictionary), c2.Data["two"]); c = (Dictionary)c2.Data["two"]; CustomAssert.IsInstanceOfType(typeof(JObject), c["one"]); JObject o = (JObject)c["one"]; Assert.AreEqual(1, (int)o["MyProperty"]); } [Test] public void PropertyItemTypeNameHandlingObject() { PropertyItemTypeNameHandlingObject o1 = new PropertyItemTypeNameHandlingObject { Data = new TypeNameHandlingTestObject { Prop1 = new List { new TestComponentSimple { MyProperty = 1 } }, Prop2 = new TestComponentSimple { MyProperty = 1 }, Prop3 = 3, Prop4 = new JObject() } }; string json = JsonConvert.SerializeObject(o1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Data"": { ""Prop1"": { ""$type"": ""System.Collections.Generic.List`1[[System.Object, mscorlib]], mscorlib"", ""$values"": [ { ""MyProperty"": 1 } ] }, ""Prop2"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 }, ""Prop3"": 3, ""Prop4"": {} } }", json); PropertyItemTypeNameHandlingObject o2 = JsonConvert.DeserializeObject(json); Assert.IsNotNull(o2); Assert.IsNotNull(o2.Data); CustomAssert.IsInstanceOfType(typeof(List), o2.Data.Prop1); CustomAssert.IsInstanceOfType(typeof(TestComponentSimple), o2.Data.Prop2); CustomAssert.IsInstanceOfType(typeof(long), o2.Data.Prop3); CustomAssert.IsInstanceOfType(typeof(JObject), o2.Data.Prop4); List o = (List)o2.Data.Prop1; JObject j = (JObject)o[0]; Assert.AreEqual(1, (int)j["MyProperty"]); } #if !(NET35 || NET20 || PORTABLE40) [Test] public void PropertyItemTypeNameHandlingDynamic() { PropertyItemTypeNameHandlingDynamic d1 = new PropertyItemTypeNameHandlingDynamic(); dynamic data = new DynamicDictionary(); data.one = new TestComponentSimple { MyProperty = 1 }; dynamic data2 = new DynamicDictionary(); data2.one = new TestComponentSimple { MyProperty = 2 }; data.two = data2; d1.Data = (DynamicDictionary)data; string json = JsonConvert.SerializeObject(d1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Data"": { ""one"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 }, ""two"": { ""$type"": ""Newtonsoft.Json.Tests.Linq.DynamicDictionary, Newtonsoft.Json.Tests"", ""one"": { ""MyProperty"": 2 } } } }", json); PropertyItemTypeNameHandlingDynamic d2 = JsonConvert.DeserializeObject(json); Assert.IsNotNull(d2); Assert.IsNotNull(d2.Data); dynamic data3 = d2.Data; TestComponentSimple c = (TestComponentSimple)data3.one; Assert.AreEqual(1, c.MyProperty); dynamic data4 = data3.two; JObject o = (JObject)data4.one; Assert.AreEqual(2, (int)o["MyProperty"]); json = @"{ ""Data"": { ""one"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 1 }, ""two"": { ""$type"": ""Newtonsoft.Json.Tests.Linq.DynamicDictionary, Newtonsoft.Json.Tests"", ""one"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.TestComponentSimple, Newtonsoft.Json.Tests"", ""MyProperty"": 2 } } } }"; d2 = JsonConvert.DeserializeObject(json); data3 = d2.Data; data4 = data3.two; o = (JObject)data4.one; Assert.AreEqual(2, (int)o["MyProperty"]); } #endif #if !(NETFX_CORE || ASPNETCORE50) [Test] public void SerializeDeserialize_DictionaryContextContainsGuid_DeserializesItemAsGuid() { const string contextKey = "k1"; var someValue = Guid.NewGuid(); Dictionary inputContext = new Dictionary(); inputContext.Add(contextKey, someValue); JsonSerializerSettings jsonSerializerSettings = new JsonSerializerSettings() { Formatting = Formatting.Indented, TypeNameHandling = TypeNameHandling.All }; string serializedString = JsonConvert.SerializeObject(inputContext, jsonSerializerSettings); Console.WriteLine(serializedString); var deserializedObject = (Dictionary)JsonConvert.DeserializeObject(serializedString, jsonSerializerSettings); Assert.AreEqual(someValue, deserializedObject[contextKey]); } [Test] public void TypeNameHandlingWithISerializableValues() { MyParent p = new MyParent { Child = new MyChild { MyProperty = "string!" } }; JsonSerializerSettings settings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto, DateFormatHandling = DateFormatHandling.IsoDateFormat, MissingMemberHandling = MissingMemberHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore, NullValueHandling = NullValueHandling.Ignore, Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(p, settings); StringAssert.AreEqual(@"{ ""c"": { ""$type"": ""Newtonsoft.Json.Tests.Serialization.MyChild, Newtonsoft.Json.Tests"", ""p"": ""string!"" } }", json); MyParent p2 = JsonConvert.DeserializeObject(json, settings); CustomAssert.IsInstanceOfType(typeof(MyChild), p2.Child); Assert.AreEqual("string!", ((MyChild)p2.Child).MyProperty); } [Test] public void TypeNameHandlingWithISerializableValuesAndArray() { MyParent p = new MyParent { Child = new MyChildList { "string!" } }; JsonSerializerSettings settings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto, DateFormatHandling = DateFormatHandling.IsoDateFormat, MissingMemberHandling = MissingMemberHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore, NullValueHandling = NullValueHandling.Ignore, Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(p, settings); StringAssert.AreEqual(@"{ ""c"": { ""$type"": ""Newtonsoft.Json.Tests.Serialization.MyChildList, Newtonsoft.Json.Tests"", ""$values"": [ ""string!"" ] } }", json); MyParent p2 = JsonConvert.DeserializeObject(json, settings); CustomAssert.IsInstanceOfType(typeof(MyChildList), p2.Child); Assert.AreEqual(1, ((MyChildList)p2.Child).Count); Assert.AreEqual("string!", ((MyChildList)p2.Child)[0]); } [Test] public void ParentTypeNameHandlingWithISerializableValues() { ParentParent pp = new ParentParent(); pp.ParentProp = new MyParent { Child = new MyChild { MyProperty = "string!" } }; JsonSerializerSettings settings = new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.IsoDateFormat, MissingMemberHandling = MissingMemberHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore, NullValueHandling = NullValueHandling.Ignore, Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(pp, settings); StringAssert.AreEqual(@"{ ""ParentProp"": { ""c"": { ""$type"": ""Newtonsoft.Json.Tests.Serialization.MyChild, Newtonsoft.Json.Tests"", ""p"": ""string!"" } } }", json); ParentParent pp2 = JsonConvert.DeserializeObject(json, settings); MyParent p2 = pp2.ParentProp; CustomAssert.IsInstanceOfType(typeof(MyChild), p2.Child); Assert.AreEqual("string!", ((MyChild)p2.Child).MyProperty); } #endif [Test] public void ListOfStackWithFullAssemblyName() { var input = new List>(); input.Add(new Stack(new List { "One", "Two", "Three" })); input.Add(new Stack(new List { "Four", "Five", "Six" })); input.Add(new Stack(new List { "Seven", "Eight", "Nine" })); string serialized = JsonConvert.SerializeObject(input, Newtonsoft.Json.Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full } // TypeNameHandling.Auto will work ); Console.WriteLine(serialized); var output = JsonConvert.DeserializeObject>>(serialized, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All } ); foreach (var stack in output) { foreach (var value in stack) { Console.WriteLine(value); } } } #if !NET20 [Test] public void ExistingBaseValue() { string json = @"{ ""itemIdentifier"": { ""$type"": ""Newtonsoft.Json.Tests.Serialization.ReportItemKeys, Newtonsoft.Json.Tests"", ""dataType"": 0, ""wantedUnitID"": 1, ""application"": 3, ""id"": 101, ""name"": ""Machine"" }, ""isBusinessEntity"": false, ""isKeyItem"": true, ""summarizeOnThisItem"": false }"; GroupingInfo g = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects }); ReportItemKeys item = (ReportItemKeys)g.ItemIdentifier; Assert.AreEqual(1UL, item.WantedUnitID); } #endif #if !(NET20 || NET35) [Test] public void GenericItemTypeCollection() { DataType data = new DataType(); data.Rows.Add("key", new List { new MyInterfaceImplementationType() { SomeProperty = "property" } }); string serialized = JsonConvert.SerializeObject(data, Formatting.Indented); StringAssert.AreEqual(@"{ ""Rows"": { ""key"": { ""$type"": ""System.Collections.Generic.List`1[[Newtonsoft.Json.Tests.Serialization.MyInterfaceImplementationType, Newtonsoft.Json.Tests]], mscorlib"", ""$values"": [ { ""SomeProperty"": ""property"" } ] } } }", serialized); DataType deserialized = JsonConvert.DeserializeObject(serialized); Assert.AreEqual("property", deserialized.Rows["key"].First().SomeProperty); } #endif } public class DataType { public DataType() { Rows = new Dictionary>(); } [JsonProperty(ItemTypeNameHandling = TypeNameHandling.Auto, TypeNameHandling = TypeNameHandling.Auto)] public Dictionary> Rows { get; private set; } } public interface IMyInterfaceType { string SomeProperty { get; set; } } public class MyInterfaceImplementationType : IMyInterfaceType { public string SomeProperty { get; set; } } #if !(NETFX_CORE || ASPNETCORE50) public class ParentParent { [JsonProperty(ItemTypeNameHandling = TypeNameHandling.Auto)] public MyParent ParentProp { get; set; } } [Serializable] public class MyParent : ISerializable { public ISomeBase Child { get; internal set; } public MyParent(SerializationInfo info, StreamingContext context) { Child = (ISomeBase)info.GetValue("c", typeof(ISomeBase)); } public MyParent() { } void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue("c", Child); } } public class MyChild : ISomeBase { [JsonProperty("p")] public String MyProperty { get; internal set; } } public class MyChildList : List, ISomeBase { } public interface ISomeBase { } #endif public class Message { public string Address { get; set; } [JsonProperty(TypeNameHandling = TypeNameHandling.All)] public object Body { get; set; } } public class SearchDetails { public string Query { get; set; } public string Language { get; set; } } public class Customer { public string Name { get; set; } } public class Purchase { public string ProductName { get; set; } public decimal Price { get; set; } public int Quantity { get; set; } } #if !(NETFX_CORE || ASPNETCORE50) public class SerializableWrapper { public object Content { get; set; } public override bool Equals(object obj) { SerializableWrapper w = obj as SerializableWrapper; if (w == null) return false; return Equals(w.Content, Content); } public override int GetHashCode() { if (Content == null) return 0; return Content.GetHashCode(); } } public interface IExample : ISerializable { String Name { get; } } [Serializable] public class Example : IExample { public Example(String name) { Name = name; } protected Example(SerializationInfo info, StreamingContext context) { Name = info.GetString("name"); } public void GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue("name", Name); } public String Name { get; set; } public override bool Equals(object obj) { if (obj == null) return false; if (ReferenceEquals(this, obj)) return true; if (obj is IExample) { return Name.Equals(((IExample)obj).Name); } else { return false; } } public override int GetHashCode() { if (Name == null) return 0; return Name.GetHashCode(); } } #endif public class PropertyItemTypeNameHandlingObject { [JsonProperty(ItemTypeNameHandling = TypeNameHandling.All)] public TypeNameHandlingTestObject Data { get; set; } } #if !(NET35 || NET20 || PORTABLE40) public class PropertyItemTypeNameHandlingDynamic { [JsonProperty(ItemTypeNameHandling = TypeNameHandling.All)] public DynamicDictionary Data { get; set; } } #endif public class TypeNameHandlingTestObject { public object Prop1 { get; set; } public object Prop2 { get; set; } public object Prop3 { get; set; } public object Prop4 { get; set; } } public class PropertyItemTypeNameHandlingDictionary { [JsonProperty(ItemTypeNameHandling = TypeNameHandling.All)] public IDictionary Data { get; set; } } public class PropertyItemTypeNameHandling { [JsonProperty(ItemTypeNameHandling = TypeNameHandling.All)] public IList Data { get; set; } } [JsonArray(ItemTypeNameHandling = TypeNameHandling.All)] public class TypeNameList : List { } [JsonDictionary(ItemTypeNameHandling = TypeNameHandling.All)] public class TypeNameDictionary : Dictionary { } [JsonObject(ItemTypeNameHandling = TypeNameHandling.All)] public class TypeNameObject { public object Object1 { get; set; } public object Object2 { get; set; } [JsonProperty(TypeNameHandling = TypeNameHandling.None)] public object ObjectNotHandled { get; set; } public string String { get; set; } public int Integer { get; set; } } #if !NET20 [DataContract] public class GroupingInfo { [DataMember] public ApplicationItemKeys ItemIdentifier { get; set; } public GroupingInfo() { ItemIdentifier = new ApplicationItemKeys(); } } [DataContract] public class ApplicationItemKeys { [DataMember] public int ID { get; set; } [DataMember] public string Name { get; set; } } [DataContract] public class ReportItemKeys : ApplicationItemKeys { protected ulong _wantedUnit; [DataMember] public ulong WantedUnitID { get { return _wantedUnit; } set { _wantedUnit = value; } } } #endif } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/EntitiesSerializationTests.cs0000664000175000017500000004155612454416117033063 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) using Newtonsoft.Json.Serialization; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using Newtonsoft.Json.Converters; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class EntitiesSerializationTests : TestFixtureBase { [Test] public void SerializeEntity() { Folder rootFolder = CreateEntitiesTestData(); string json = JsonConvert.SerializeObject(rootFolder, Formatting.Indented, new IsoDateTimeConverter()); string expected = @"{ ""$id"": ""1"", ""FolderId"": ""a4e8ba80-eb24-4591-bb1c-62d3ad83701e"", ""Name"": ""Root folder"", ""Description"": ""Description!"", ""CreatedDate"": ""2000-12-10T10:50:00Z"", ""Files"": [], ""ChildFolders"": [ { ""$id"": ""2"", ""FolderId"": ""484936e2-7cbb-4592-93ff-b2103e5705e4"", ""Name"": ""Child folder"", ""Description"": ""Description!"", ""CreatedDate"": ""2001-11-20T10:50:00Z"", ""Files"": [ { ""$id"": ""3"", ""FileId"": ""cc76d734-49f1-4616-bb38-41514228ac6c"", ""Name"": ""File 1"", ""Description"": ""Description!"", ""CreatedDate"": ""2002-10-30T10:50:00Z"", ""Folder"": { ""$ref"": ""2"" }, ""EntityKey"": { ""$id"": ""4"", ""EntitySetName"": ""File"", ""EntityContainerName"": ""DataServicesTestDatabaseEntities"", ""EntityKeyValues"": [ { ""Key"": ""FileId"", ""Type"": ""System.Guid"", ""Value"": ""cc76d734-49f1-4616-bb38-41514228ac6c"" } ] } } ], ""ChildFolders"": [], ""ParentFolder"": { ""$ref"": ""1"" }, ""EntityKey"": { ""$id"": ""5"", ""EntitySetName"": ""Folder"", ""EntityContainerName"": ""DataServicesTestDatabaseEntities"", ""EntityKeyValues"": [ { ""Key"": ""FolderId"", ""Type"": ""System.Guid"", ""Value"": ""484936e2-7cbb-4592-93ff-b2103e5705e4"" } ] } } ], ""ParentFolder"": null, ""EntityKey"": { ""$id"": ""6"", ""EntitySetName"": ""Folder"", ""EntityContainerName"": ""DataServicesTestDatabaseEntities"", ""EntityKeyValues"": [ { ""Key"": ""FolderId"", ""Type"": ""System.Guid"", ""Value"": ""a4e8ba80-eb24-4591-bb1c-62d3ad83701e"" } ] } }"; StringAssert.AreEqual(expected, json); } [Test] public void SerializeEntityCamelCase() { Folder rootFolder = CreateEntitiesTestData(); JsonSerializerSettings settings = new JsonSerializerSettings { Formatting = Formatting.Indented, ContractResolver = new CamelCasePropertyNamesContractResolver(), Converters = { new IsoDateTimeConverter() } }; string json = JsonConvert.SerializeObject(rootFolder, settings); Console.WriteLine(json); string expected = @"{ ""$id"": ""1"", ""folderId"": ""a4e8ba80-eb24-4591-bb1c-62d3ad83701e"", ""name"": ""Root folder"", ""description"": ""Description!"", ""createdDate"": ""2000-12-10T10:50:00Z"", ""files"": [], ""childFolders"": [ { ""$id"": ""2"", ""folderId"": ""484936e2-7cbb-4592-93ff-b2103e5705e4"", ""name"": ""Child folder"", ""description"": ""Description!"", ""createdDate"": ""2001-11-20T10:50:00Z"", ""files"": [ { ""$id"": ""3"", ""fileId"": ""cc76d734-49f1-4616-bb38-41514228ac6c"", ""name"": ""File 1"", ""description"": ""Description!"", ""createdDate"": ""2002-10-30T10:50:00Z"", ""folder"": { ""$ref"": ""2"" }, ""entityKey"": { ""$id"": ""4"", ""entitySetName"": ""File"", ""entityContainerName"": ""DataServicesTestDatabaseEntities"", ""entityKeyValues"": [ { ""key"": ""FileId"", ""type"": ""System.Guid"", ""value"": ""cc76d734-49f1-4616-bb38-41514228ac6c"" } ] } } ], ""childFolders"": [], ""parentFolder"": { ""$ref"": ""1"" }, ""entityKey"": { ""$id"": ""5"", ""entitySetName"": ""Folder"", ""entityContainerName"": ""DataServicesTestDatabaseEntities"", ""entityKeyValues"": [ { ""key"": ""FolderId"", ""type"": ""System.Guid"", ""value"": ""484936e2-7cbb-4592-93ff-b2103e5705e4"" } ] } } ], ""parentFolder"": null, ""entityKey"": { ""$id"": ""6"", ""entitySetName"": ""Folder"", ""entityContainerName"": ""DataServicesTestDatabaseEntities"", ""entityKeyValues"": [ { ""key"": ""FolderId"", ""type"": ""System.Guid"", ""value"": ""a4e8ba80-eb24-4591-bb1c-62d3ad83701e"" } ] } }"; StringAssert.AreEqual(expected, json); } [Test] public void DeserializeEntity() { string json = @"{ ""$id"": ""1"", ""FolderId"": ""a4e8ba80-eb24-4591-bb1c-62d3ad83701e"", ""Name"": ""Root folder"", ""Description"": ""Description!"", ""CreatedDate"": ""2000-12-10T10:50:00Z"", ""Files"": [], ""ChildFolders"": [ { ""$id"": ""2"", ""FolderId"": ""484936e2-7cbb-4592-93ff-b2103e5705e4"", ""Name"": ""Child folder"", ""Description"": ""Description!"", ""CreatedDate"": ""2001-11-20T10:50:00Z"", ""Files"": [ { ""$id"": ""3"", ""FileId"": ""cc76d734-49f1-4616-bb38-41514228ac6c"", ""Name"": ""File 1"", ""Description"": ""Description!"", ""CreatedDate"": ""2002-10-30T10:50:00Z"", ""Folder"": { ""$ref"": ""2"" }, ""EntityKey"": { ""$id"": ""4"", ""EntitySetName"": ""File"", ""EntityContainerName"": ""DataServicesTestDatabaseEntities"", ""EntityKeyValues"": [ { ""Key"": ""FileId"", ""Type"": ""System.Guid"", ""Value"": ""cc76d734-49f1-4616-bb38-41514228ac6c"" } ] } } ], ""ChildFolders"": [], ""ParentFolder"": { ""$ref"": ""1"" }, ""EntityKey"": { ""$id"": ""5"", ""EntitySetName"": ""Folder"", ""EntityContainerName"": ""DataServicesTestDatabaseEntities"", ""EntityKeyValues"": [ { ""Key"": ""FolderId"", ""Type"": ""System.Guid"", ""Value"": ""484936e2-7cbb-4592-93ff-b2103e5705e4"" } ] } } ], ""ParentFolder"": null, ""EntityKey"": { ""$id"": ""6"", ""EntitySetName"": ""Folder"", ""EntityContainerName"": ""DataServicesTestDatabaseEntities"", ""EntityKeyValues"": [ { ""Key"": ""FolderId"", ""Type"": ""System.Guid"", ""Value"": ""a4e8ba80-eb24-4591-bb1c-62d3ad83701e"" } ] } }"; Folder f = JsonConvert.DeserializeObject(json, new IsoDateTimeConverter()); Assert.IsNotNull(f); Assert.AreEqual(new Guid("A4E8BA80-EB24-4591-BB1C-62D3AD83701E"), f.FolderId); Assert.AreEqual("Folder", f.EntityKey.EntitySetName); Assert.AreEqual("DataServicesTestDatabaseEntities", f.EntityKey.EntityContainerName); Assert.AreEqual("Folder", f.EntityKey.EntitySetName); Assert.AreEqual(false, f.EntityKey.IsTemporary); Assert.AreEqual(1, f.EntityKey.EntityKeyValues.Length); Assert.AreEqual("FolderId", f.EntityKey.EntityKeyValues[0].Key); Assert.AreEqual(new Guid("A4E8BA80-EB24-4591-BB1C-62D3AD83701E"), f.EntityKey.EntityKeyValues[0].Value); Assert.AreEqual("Root folder", f.Name); Assert.AreEqual(new DateTime(2000, 12, 10, 10, 50, 0, DateTimeKind.Utc), f.CreatedDate); Assert.AreEqual(null, f.ParentFolder); Assert.AreEqual(1, f.ChildFolders.Count); Folder childFolder = f.ChildFolders.ElementAt(0); Assert.AreEqual("Child folder", childFolder.Name); Assert.AreEqual("Description!", childFolder.Description); Assert.AreEqual(f, childFolder.ParentFolder); Assert.AreEqual(f, childFolder.ParentFolderReference.Value); // is this a problem? Assert.AreEqual(null, childFolder.ParentFolderReference.EntityKey); } [Test] public void SerializeMultiValueEntityKey() { EntityKey e = new EntityKey("DataServicesTestDatabaseEntities.Folder", new List { new EntityKeyMember("GuidId", new Guid("A4E8BA80-EB24-4591-BB1C-62D3AD83701E")), new EntityKeyMember("IntId", int.MaxValue), new EntityKeyMember("LongId", long.MaxValue), new EntityKeyMember("StringId", "String!"), new EntityKeyMember("DateTimeId", new DateTime(2000, 12, 10, 10, 50, 0, DateTimeKind.Utc)) }); JsonSerializerSettings settings = new JsonSerializerSettings { Formatting = Formatting.Indented, ContractResolver = new CamelCasePropertyNamesContractResolver() }; string json = JsonConvert.SerializeObject(e, settings); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""entitySetName"": ""Folder"", ""entityContainerName"": ""DataServicesTestDatabaseEntities"", ""entityKeyValues"": [ { ""key"": ""GuidId"", ""type"": ""System.Guid"", ""value"": ""a4e8ba80-eb24-4591-bb1c-62d3ad83701e"" }, { ""key"": ""IntId"", ""type"": ""System.Int32"", ""value"": ""2147483647"" }, { ""key"": ""LongId"", ""type"": ""System.Int64"", ""value"": ""9223372036854775807"" }, { ""key"": ""StringId"", ""type"": ""System.String"", ""value"": ""String!"" }, { ""key"": ""DateTimeId"", ""type"": ""System.DateTime"", ""value"": ""12/10/2000 10:50:00"" } ] }", json); EntityKey newKey = JsonConvert.DeserializeObject(json); Assert.IsFalse(ReferenceEquals(e, newKey)); Assert.AreEqual(5, newKey.EntityKeyValues.Length); Assert.AreEqual("GuidId", newKey.EntityKeyValues[0].Key); Assert.AreEqual(new Guid("A4E8BA80-EB24-4591-BB1C-62D3AD83701E"), newKey.EntityKeyValues[0].Value); Assert.AreEqual("IntId", newKey.EntityKeyValues[1].Key); Assert.AreEqual(int.MaxValue, newKey.EntityKeyValues[1].Value); Assert.AreEqual("LongId", newKey.EntityKeyValues[2].Key); Assert.AreEqual(long.MaxValue, newKey.EntityKeyValues[2].Value); Assert.AreEqual("StringId", newKey.EntityKeyValues[3].Key); Assert.AreEqual("String!", newKey.EntityKeyValues[3].Value); Assert.AreEqual("DateTimeId", newKey.EntityKeyValues[4].Key); Assert.AreEqual(new DateTime(2000, 12, 10, 10, 50, 0, DateTimeKind.Utc), newKey.EntityKeyValues[4].Value); } [Test] public void SerializeMultiValueEntityKeyCameCase() { EntityKey e = new EntityKey("DataServicesTestDatabaseEntities.Folder", new List { new EntityKeyMember("GuidId", new Guid("A4E8BA80-EB24-4591-BB1C-62D3AD83701E")), new EntityKeyMember("IntId", int.MaxValue), new EntityKeyMember("LongId", long.MaxValue), new EntityKeyMember("StringId", "String!"), new EntityKeyMember("DateTimeId", new DateTime(2000, 12, 10, 10, 50, 0, DateTimeKind.Utc)) }); string json = JsonConvert.SerializeObject(e, Formatting.Indented); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""EntitySetName"": ""Folder"", ""EntityContainerName"": ""DataServicesTestDatabaseEntities"", ""EntityKeyValues"": [ { ""Key"": ""GuidId"", ""Type"": ""System.Guid"", ""Value"": ""a4e8ba80-eb24-4591-bb1c-62d3ad83701e"" }, { ""Key"": ""IntId"", ""Type"": ""System.Int32"", ""Value"": ""2147483647"" }, { ""Key"": ""LongId"", ""Type"": ""System.Int64"", ""Value"": ""9223372036854775807"" }, { ""Key"": ""StringId"", ""Type"": ""System.String"", ""Value"": ""String!"" }, { ""Key"": ""DateTimeId"", ""Type"": ""System.DateTime"", ""Value"": ""12/10/2000 10:50:00"" } ] }", json); EntityKey newKey = JsonConvert.DeserializeObject(json); Assert.IsFalse(ReferenceEquals(e, newKey)); Assert.AreEqual(5, newKey.EntityKeyValues.Length); Assert.AreEqual("GuidId", newKey.EntityKeyValues[0].Key); Assert.AreEqual(new Guid("A4E8BA80-EB24-4591-BB1C-62D3AD83701E"), newKey.EntityKeyValues[0].Value); Assert.AreEqual("IntId", newKey.EntityKeyValues[1].Key); Assert.AreEqual(int.MaxValue, newKey.EntityKeyValues[1].Value); Assert.AreEqual("LongId", newKey.EntityKeyValues[2].Key); Assert.AreEqual(long.MaxValue, newKey.EntityKeyValues[2].Value); Assert.AreEqual("StringId", newKey.EntityKeyValues[3].Key); Assert.AreEqual("String!", newKey.EntityKeyValues[3].Value); Assert.AreEqual("DateTimeId", newKey.EntityKeyValues[4].Key); Assert.AreEqual(new DateTime(2000, 12, 10, 10, 50, 0, DateTimeKind.Utc), newKey.EntityKeyValues[4].Value); } private Folder CreateEntitiesTestData() { Folder folder = new Folder(); folder.FolderId = new Guid("A4E8BA80-EB24-4591-BB1C-62D3AD83701E"); folder.EntityKey = new EntityKey("DataServicesTestDatabaseEntities.Folder", "FolderId", folder.FolderId); folder.Name = "Root folder"; folder.Description = "Description!"; folder.CreatedDate = new DateTime(2000, 12, 10, 10, 50, 0, DateTimeKind.Utc); Folder childFolder = new Folder(); childFolder.FolderId = new Guid("484936E2-7CBB-4592-93FF-B2103E5705E4"); childFolder.EntityKey = new EntityKey("DataServicesTestDatabaseEntities.Folder", "FolderId", childFolder.FolderId); childFolder.Name = "Child folder"; childFolder.Description = "Description!"; childFolder.CreatedDate = new DateTime(2001, 11, 20, 10, 50, 0, DateTimeKind.Utc); folder.ChildFolders.Add(childFolder); File file1 = new File(); file1.FileId = new Guid("CC76D734-49F1-4616-BB38-41514228AC6C"); file1.EntityKey = new EntityKey("DataServicesTestDatabaseEntities.File", "FileId", file1.FileId); file1.Name = "File 1"; file1.Description = "Description!"; file1.CreatedDate = new DateTime(2002, 10, 30, 10, 50, 0, DateTimeKind.Utc); childFolder.Files.Add(file1); return folder; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/ReferenceLoopHandlingTests.cs0000664000175000017500000002577512454416117032743 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif #if !(NET20 || NET35) using System.Dynamic; #endif using System.Runtime.Serialization; using Newtonsoft.Json.Tests.Linq; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class ReferenceLoopHandlingTests : TestFixtureBase { [Test] public void ReferenceLoopHandlingTest() { JsonPropertyAttribute attribute = new JsonPropertyAttribute(); Assert.AreEqual(null, attribute._defaultValueHandling); Assert.AreEqual(ReferenceLoopHandling.Error, attribute.ReferenceLoopHandling); attribute.ReferenceLoopHandling = ReferenceLoopHandling.Ignore; Assert.AreEqual(ReferenceLoopHandling.Ignore, attribute._referenceLoopHandling); Assert.AreEqual(ReferenceLoopHandling.Ignore, attribute.ReferenceLoopHandling); } [Test] public void IgnoreObjectReferenceLoop() { ReferenceLoopHandlingObjectContainerAttribute o = new ReferenceLoopHandlingObjectContainerAttribute(); o.Value = o; string json = JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Serialize }); Assert.AreEqual("{}", json); } [Test] public void IgnoreObjectReferenceLoopWithPropertyOverride() { ReferenceLoopHandlingObjectContainerAttributeWithPropertyOverride o = new ReferenceLoopHandlingObjectContainerAttributeWithPropertyOverride(); o.Value = o; string json = JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Serialize }); StringAssert.AreEqual(@"{ ""Value"": { ""Value"": { ""Value"": { ""Value"": { ""Value"": { ""Value"": null } } } } } }", json); } [Test] public void IgnoreArrayReferenceLoop() { ReferenceLoopHandlingList a = new ReferenceLoopHandlingList(); a.Add(a); string json = JsonConvert.SerializeObject(a, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Serialize }); Assert.AreEqual("[]", json); } [Test] public void IgnoreDictionaryReferenceLoop() { ReferenceLoopHandlingDictionary d = new ReferenceLoopHandlingDictionary(); d.Add("First", d); string json = JsonConvert.SerializeObject(d, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Serialize }); Assert.AreEqual("{}", json); } [Test] public void SerializePropertyItemReferenceLoopHandling() { PropertyItemReferenceLoopHandling c = new PropertyItemReferenceLoopHandling(); c.Text = "Text!"; c.SetData(new List { c }); string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Text"": ""Text!"", ""Data"": [ { ""Text"": ""Text!"", ""Data"": [ { ""Text"": ""Text!"", ""Data"": [ { ""Text"": ""Text!"", ""Data"": null } ] } ] } ] }", json); } #if !(PORTABLE || ASPNETCORE50 || NETFX_CORE || PORTABLE40) public class MainClass : ISerializable { public ChildClass Child { get; set; } public void GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue("Child", Child); } } public class ChildClass : ISerializable { public string Name { get; set; } public MainClass Parent { get; set; } public void GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue("Parent", Parent); info.AddValue("Name", Name); } } [Test] public void ErrorISerializableCyclicReferenceLoop() { var main = new MainClass(); var child = new ChildClass(); child.Name = "Child1"; child.Parent = main; // Obvious Circular Reference main.Child = child; var settings = new JsonSerializerSettings(); ExceptionAssert.Throws(() => JsonConvert.SerializeObject(main, settings), "Self referencing loop detected with type 'Newtonsoft.Json.Tests.Serialization.ReferenceLoopHandlingTests+MainClass'. Path 'Child'."); } [Test] public void IgnoreISerializableCyclicReferenceLoop() { var main = new MainClass(); var child = new ChildClass(); child.Name = "Child1"; child.Parent = main; // Obvious Circular Reference main.Child = child; var settings = new JsonSerializerSettings() { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }; var c = JsonConvert.SerializeObject(main, settings); Assert.AreEqual(@"{""Child"":{""Name"":""Child1""}}", c); } #endif #if !(NET20 || NET35 || PORTABLE40) public class DictionaryDynamicObject : DynamicObject { public IDictionary Values { get; private set; } public DictionaryDynamicObject() { Values = new Dictionary(); } public override bool TrySetMember(SetMemberBinder binder, object value) { Values[binder.Name] = value; return true; } public override bool TryGetMember(GetMemberBinder binder, out object result) { return Values.TryGetValue(binder.Name, out result); } public override IEnumerable GetDynamicMemberNames() { return Values.Keys; } } [Test] public void ErrorDynamicCyclicReferenceLoop() { dynamic parent = new DictionaryDynamicObject(); dynamic child = new DictionaryDynamicObject(); parent.child = child; child.parent = parent; var settings = new JsonSerializerSettings(); ExceptionAssert.Throws(() => JsonConvert.SerializeObject(parent, settings), "Self referencing loop detected with type 'Newtonsoft.Json.Tests.Serialization.ReferenceLoopHandlingTests+DictionaryDynamicObject'. Path 'child'."); } [Test] public void IgnoreDynamicCyclicReferenceLoop() { dynamic parent = new DictionaryDynamicObject(); dynamic child = new DictionaryDynamicObject(); parent.child = child; parent.name = "parent"; child.parent = parent; child.name = "child"; var settings = new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }; var c = JsonConvert.SerializeObject(parent, settings); Assert.AreEqual(@"{""child"":{""name"":""child""},""name"":""parent""}", c); } #endif } public class PropertyItemReferenceLoopHandling { private IList _data; private int _accessCount; public string Text { get; set; } [JsonProperty(ItemReferenceLoopHandling = ReferenceLoopHandling.Serialize)] public IList Data { get { if (_accessCount >= 3) return null; _accessCount++; return new List(_data); } } public void SetData(IList data) { _data = data; } } [JsonArray(ItemReferenceLoopHandling = ReferenceLoopHandling.Ignore)] public class ReferenceLoopHandlingList : List { } [JsonDictionary(ItemReferenceLoopHandling = ReferenceLoopHandling.Ignore)] public class ReferenceLoopHandlingDictionary : Dictionary { } [JsonObject(ItemReferenceLoopHandling = ReferenceLoopHandling.Ignore)] public class ReferenceLoopHandlingObjectContainerAttribute { public ReferenceLoopHandlingObjectContainerAttribute Value { get; set; } } [JsonObject(ItemReferenceLoopHandling = ReferenceLoopHandling.Ignore)] public class ReferenceLoopHandlingObjectContainerAttributeWithPropertyOverride { private ReferenceLoopHandlingObjectContainerAttributeWithPropertyOverride _value; private int _getCount; [JsonProperty(ReferenceLoopHandling = ReferenceLoopHandling.Serialize)] public ReferenceLoopHandlingObjectContainerAttributeWithPropertyOverride Value { get { if (_getCount < 5) { _getCount++; return _value; } return null; } set { _value = value; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/DynamicTests.cs0000664000175000017500000003311712454416117030117 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE40) using System; using System.Collections; using System.Collections.Generic; using System.Dynamic; using System.Linq; using System.Linq.Expressions; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Serialization.Formatters; using System.Text; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class DynamicTests : TestFixtureBase { [Test] public void SerializeDynamicObject() { TestDynamicObject dynamicObject = new TestDynamicObject(); dynamicObject.Explicit = true; dynamic d = dynamicObject; d.Int = 1; d.Decimal = 99.9d; d.ChildObject = new DynamicChildObject(); Dictionary values = new Dictionary(); IContractResolver c = DefaultContractResolver.Instance; JsonDynamicContract dynamicContract = (JsonDynamicContract)c.ResolveContract(dynamicObject.GetType()); foreach (string memberName in dynamicObject.GetDynamicMemberNames()) { object value; dynamicContract.TryGetMember(dynamicObject, memberName, out value); values.Add(memberName, value); } Assert.AreEqual(d.Int, values["Int"]); Assert.AreEqual(d.Decimal, values["Decimal"]); Assert.AreEqual(d.ChildObject, values["ChildObject"]); string json = JsonConvert.SerializeObject(dynamicObject, Formatting.Indented); StringAssert.AreEqual(@"{ ""Explicit"": true, ""Decimal"": 99.9, ""Int"": 1, ""ChildObject"": { ""Text"": null, ""Integer"": 0 } }", json); TestDynamicObject newDynamicObject = JsonConvert.DeserializeObject(json); Assert.AreEqual(true, newDynamicObject.Explicit); d = newDynamicObject; Assert.AreEqual(99.9, d.Decimal); Assert.AreEqual(1, d.Int); Assert.AreEqual(dynamicObject.ChildObject.Integer, d.ChildObject.Integer); Assert.AreEqual(dynamicObject.ChildObject.Text, d.ChildObject.Text); } #if !(PORTABLE || PORTABLE40) [Test] public void SerializeDynamicObjectWithObjectTracking() { dynamic o = new ExpandoObject(); o.Text = "Text!"; o.Integer = int.MaxValue; o.DynamicChildObject = new DynamicChildObject { Integer = int.MinValue, Text = "Child text!" }; string json = JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full }); Console.WriteLine(json); string dynamicChildObjectTypeName = ReflectionUtils.GetTypeName(typeof(DynamicChildObject), FormatterAssemblyStyle.Full, null); string expandoObjectTypeName = ReflectionUtils.GetTypeName(typeof(ExpandoObject), FormatterAssemblyStyle.Full, null); StringAssert.AreEqual(@"{ ""$type"": """ + expandoObjectTypeName + @""", ""Text"": ""Text!"", ""Integer"": 2147483647, ""DynamicChildObject"": { ""$type"": """ + dynamicChildObjectTypeName + @""", ""Text"": ""Child text!"", ""Integer"": -2147483648 } }", json); dynamic n = JsonConvert.DeserializeObject(json, null, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full }); CustomAssert.IsInstanceOfType(typeof(ExpandoObject), n); Assert.AreEqual("Text!", n.Text); Assert.AreEqual(int.MaxValue, n.Integer); CustomAssert.IsInstanceOfType(typeof(DynamicChildObject), n.DynamicChildObject); Assert.AreEqual("Child text!", n.DynamicChildObject.Text); Assert.AreEqual(int.MinValue, n.DynamicChildObject.Integer); } #endif [Test] public void NoPublicDefaultConstructor() { ExceptionAssert.Throws(() => { var settings = new JsonSerializerSettings(); settings.NullValueHandling = NullValueHandling.Ignore; var json = @"{ ""contributors"": null }"; JsonConvert.DeserializeObject(json, settings); }, "Unable to find a default constructor to use for type System.Dynamic.DynamicObject. Path 'contributors', line 2, position 18."); } public class DictionaryDynamicObject : DynamicObject { public IDictionary Values { get; private set; } protected DictionaryDynamicObject() { Values = new Dictionary(); } public override bool TrySetMember(SetMemberBinder binder, object value) { Values[binder.Name] = value; return true; } } [Test] public void AllowNonPublicDefaultConstructor() { var settings = new JsonSerializerSettings(); settings.ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor; var json = @"{ ""contributors"": null, ""retweeted"": false, ""text"": ""Guys SX4 diesel is launched.what are your plans?catch us at #facebook http://bit.ly/dV3H1a #auto #car #maruti #india #delhi"", ""in_reply_to_user_id_str"": null, ""retweet_count"": 0, ""geo"": null, ""id_str"": ""40678260320768000"", ""in_reply_to_status_id"": null, ""source"": ""TweetDeck"", ""created_at"": ""Thu Feb 24 07:43:47 +0000 2011"", ""place"": null, ""coordinates"": null, ""truncated"": false, ""favorited"": false, ""user"": { ""profile_background_image_url"": ""http://a1.twimg.com/profile_background_images/206944715/twitter_bg.jpg"", ""url"": ""http://bit.ly/dcFwWC"", ""screen_name"": ""marutisuzukisx4"", ""verified"": false, ""friends_count"": 45, ""description"": ""This is the Official Maruti Suzuki SX4 Twitter ID! Men are Back - mail us on social (at) sx4bymaruti (dot) com"", ""follow_request_sent"": null, ""time_zone"": ""Chennai"", ""profile_text_color"": ""333333"", ""location"": ""India"", ""notifications"": null, ""profile_sidebar_fill_color"": ""efefef"", ""id_str"": ""196143889"", ""contributors_enabled"": false, ""lang"": ""en"", ""profile_background_tile"": false, ""created_at"": ""Tue Sep 28 12:55:15 +0000 2010"", ""followers_count"": 117, ""show_all_inline_media"": true, ""listed_count"": 1, ""geo_enabled"": true, ""profile_link_color"": ""009999"", ""profile_sidebar_border_color"": ""eeeeee"", ""protected"": false, ""name"": ""Maruti Suzuki SX4"", ""statuses_count"": 637, ""following"": null, ""profile_use_background_image"": true, ""profile_image_url"": ""http://a3.twimg.com/profile_images/1170694644/Slide1_normal.JPG"", ""id"": 196143889, ""is_translator"": false, ""utc_offset"": 19800, ""favourites_count"": 0, ""profile_background_color"": ""131516"" }, ""in_reply_to_screen_name"": null, ""id"": 40678260320768000, ""in_reply_to_status_id_str"": null, ""in_reply_to_user_id"": null }"; DictionaryDynamicObject foo = JsonConvert.DeserializeObject(json, settings); Assert.AreEqual(false, foo.Values["retweeted"]); } [Test] public void SerializeDynamicObjectWithNullValueHandlingIgnore() { dynamic o = new TestDynamicObject(); o.Text = "Text!"; o.Int = int.MaxValue; o.ChildObject = null; // Tests an explicitly defined property of a dynamic object with a null value. o.DynamicChildObject = null; // vs. a completely dynamic defined property. string json = JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, }); Console.WriteLine(json); StringAssert.AreEqual(@"{ ""Explicit"": false, ""Text"": ""Text!"", ""Int"": 2147483647 }", json); } [Test] public void SerializeDynamicObjectWithNullValueHandlingInclude() { dynamic o = new TestDynamicObject(); o.Text = "Text!"; o.Int = int.MaxValue; o.ChildObject = null; // Tests an explicitly defined property of a dynamic object with a null value. o.DynamicChildObject = null; // vs. a completely dynamic defined property. string json = JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Include, }); Console.WriteLine(json); StringAssert.AreEqual(@"{ ""Explicit"": false, ""Text"": ""Text!"", ""DynamicChildObject"": null, ""Int"": 2147483647, ""ChildObject"": null }", json); } [Test] public void SerializeDynamicObjectWithDefaultValueHandlingIgnore() { dynamic o = new TestDynamicObject(); o.Text = "Text!"; o.Int = int.MaxValue; o.IntDefault = 0; o.NUllableIntDefault = default(int?); o.ChildObject = null; // Tests an explicitly defined property of a dynamic object with a null value. o.DynamicChildObject = null; // vs. a completely dynamic defined property. string json = JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore, }); Console.WriteLine(json); StringAssert.AreEqual(@"{ ""Text"": ""Text!"", ""Int"": 2147483647 }", json); } } public class DynamicChildObject { public string Text { get; set; } public int Integer { get; set; } } public class TestDynamicObject : DynamicObject { private readonly Dictionary _members; public int Int; [JsonProperty] public bool Explicit; public DynamicChildObject ChildObject { get; set; } internal Dictionary Members { get { return _members; } } public TestDynamicObject() { _members = new Dictionary(); } public override IEnumerable GetDynamicMemberNames() { return _members.Keys.Union(new[] { "Int", "ChildObject" }); } public override bool TryConvert(ConvertBinder binder, out object result) { Type targetType = binder.Type; if (targetType == typeof(IDictionary) || targetType == typeof(IDictionary)) { result = new Dictionary(_members); return true; } else { return base.TryConvert(binder, out result); } } public override bool TryDeleteMember(DeleteMemberBinder binder) { return _members.Remove(binder.Name); } public override bool TryGetMember(GetMemberBinder binder, out object result) { return _members.TryGetValue(binder.Name, out result); } public override bool TrySetMember(SetMemberBinder binder, object value) { _members[binder.Name] = value; return true; } } public class ErrorSettingDynamicObject : DynamicObject { public override bool TrySetMember(SetMemberBinder binder, object value) { return false; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/NullValueHandlingTests.cs0000664000175000017500000001333112454416117032103 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.IO; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class NullValueHandlingTests : TestFixtureBase { #if !NET20 [Test] public void DeserializeNullIntoDateTime() { DateTimeTestClass c = JsonConvert.DeserializeObject(@"{DateTimeField:null}", new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); Assert.AreEqual(c.DateTimeField, default(DateTime)); } [Test] public void DeserializeEmptyStringIntoDateTimeWithEmptyStringDefaultValue() { DateTimeTestClass c = JsonConvert.DeserializeObject(@"{DateTimeField:""""}", new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); Assert.AreEqual(c.DateTimeField, default(DateTime)); } #endif [Test] public void NullValueHandlingSerialization() { Store s1 = new Store(); JsonSerializer jsonSerializer = new JsonSerializer(); jsonSerializer.NullValueHandling = NullValueHandling.Ignore; StringWriter sw = new StringWriter(); jsonSerializer.Serialize(sw, s1); //JsonConvert.ConvertDateTimeToJavaScriptTicks(s1.Establised.DateTime) Assert.AreEqual(@"{""Color"":4,""Establised"":""2010-01-22T01:01:01Z"",""Width"":1.1,""Employees"":999,""RoomsPerFloor"":[1,2,3,4,5,6,7,8,9],""Open"":false,""Symbol"":""@"",""Mottos"":[""Hello World"",""öäüÖÄÜ\\'{new Date(12345);}[222]_µ@²³~"",null,"" ""],""Cost"":100980.1,""Escape"":""\r\n\t\f\b?{\\r\\n\""'"",""product"":[{""Name"":""Rocket"",""ExpiryDate"":""2000-02-02T23:01:30Z"",""Price"":0.0},{""Name"":""Alien"",""ExpiryDate"":""2000-01-01T00:00:00Z"",""Price"":0.0}]}", sw.GetStringBuilder().ToString()); Store s2 = (Store)jsonSerializer.Deserialize(new JsonTextReader(new StringReader("{}")), typeof(Store)); Assert.AreEqual("\r\n\t\f\b?{\\r\\n\"\'", s2.Escape); Store s3 = (Store)jsonSerializer.Deserialize(new JsonTextReader(new StringReader(@"{""Escape"":null}")), typeof(Store)); Assert.AreEqual("\r\n\t\f\b?{\\r\\n\"\'", s3.Escape); Store s4 = (Store)jsonSerializer.Deserialize(new JsonTextReader(new StringReader(@"{""Color"":2,""Establised"":""\/Date(1264071600000+1300)\/"",""Width"":1.1,""Employees"":999,""RoomsPerFloor"":[1,2,3,4,5,6,7,8,9],""Open"":false,""Symbol"":""@"",""Mottos"":[""Hello World"",""öäüÖÄÜ\\'{new Date(12345);}[222]_µ@²³~"",null,"" ""],""Cost"":100980.1,""Escape"":""\r\n\t\f\b?{\\r\\n\""'"",""product"":[{""Name"":""Rocket"",""ExpiryDate"":""\/Date(949485690000+1300)\/"",""Price"":0},{""Name"":""Alien"",""ExpiryDate"":""\/Date(946638000000)\/"",""Price"":0.0}]}")), typeof(Store)); Assert.AreEqual(s1.Establised, s3.Establised); } [Test] public void NullValueHandlingBlogPost() { Movie movie = new Movie(); movie.Name = "Bad Boys III"; movie.Description = "It's no Bad Boys"; string included = JsonConvert.SerializeObject(movie, Formatting.Indented, new JsonSerializerSettings { }); // { // "Name": "Bad Boys III", // "Description": "It's no Bad Boys", // "Classification": null, // "Studio": null, // "ReleaseDate": null, // "ReleaseCountries": null // } string ignored = JsonConvert.SerializeObject(movie, Formatting.Indented, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); // { // "Name": "Bad Boys III", // "Description": "It's no Bad Boys" // } StringAssert.AreEqual(@"{ ""Name"": ""Bad Boys III"", ""Description"": ""It's no Bad Boys"", ""Classification"": null, ""Studio"": null, ""ReleaseDate"": null, ""ReleaseCountries"": null }", included); StringAssert.AreEqual(@"{ ""Name"": ""Bad Boys III"", ""Description"": ""It's no Bad Boys"" }", ignored); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/ExtensionDataTests.cs0000664000175000017500000005663112454416117031307 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class ExtensionDataTests : TestFixtureBase { public class CustomDictionary : IDictionary { private readonly IDictionary _inner = new Dictionary(); public void Add(string key, object value) { _inner.Add(key, value); } public bool ContainsKey(string key) { return _inner.ContainsKey(key); } public ICollection Keys { get { return _inner.Keys; } } public bool Remove(string key) { return _inner.Remove(key); } public bool TryGetValue(string key, out object value) { return _inner.TryGetValue(key, out value); } public ICollection Values { get { return _inner.Values; } } public object this[string key] { get { return _inner[key]; } set { _inner[key] = value; } } public void Add(KeyValuePair item) { _inner.Add(item); } public void Clear() { _inner.Clear(); } public bool Contains(KeyValuePair item) { return _inner.Contains(item); } public void CopyTo(KeyValuePair[] array, int arrayIndex) { _inner.CopyTo(array, arrayIndex); } public int Count { get { return _inner.Count; } } public bool IsReadOnly { get { return _inner.IsReadOnly; } } public bool Remove(KeyValuePair item) { return _inner.Remove(item); } public IEnumerator> GetEnumerator() { return _inner.GetEnumerator(); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return _inner.GetEnumerator(); } } public class Example { public Example() { Data = new CustomDictionary(); } [JsonExtensionData] public IDictionary Data { get; private set; } } [Test] public void DataBagDoesNotInheritFromDictionaryClass() { Example e = new Example(); e.Data.Add("extensionData1", new int[] { 1, 2, 3 }); string json = JsonConvert.SerializeObject(e, Formatting.Indented); Console.WriteLine(json); Example e2 = JsonConvert.DeserializeObject(json); JArray o1 = (JArray)e2.Data["extensionData1"]; Assert.AreEqual(JTokenType.Array, o1.Type); Assert.AreEqual(3, o1.Count); Assert.AreEqual(1, (int)o1[0]); Assert.AreEqual(2, (int)o1[1]); Assert.AreEqual(3, (int)o1[2]); } public class ExtensionDataDeserializeWithNonDefaultConstructor { public ExtensionDataDeserializeWithNonDefaultConstructor(string name) { Name = name; } [JsonExtensionData] public IDictionary _extensionData; public string Name { get; set; } } [Test] public void ExtensionDataDeserializeWithNonDefaultConstructorTest() { ExtensionDataDeserializeWithNonDefaultConstructor c = new ExtensionDataDeserializeWithNonDefaultConstructor("Name!"); c._extensionData = new Dictionary { { "Key!", "Value!" } }; string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": ""Name!"", ""Key!"": ""Value!"" }", json); var c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("Name!", c2.Name); Assert.IsNotNull(c2._extensionData); Assert.AreEqual(1, c2._extensionData.Count); Assert.AreEqual("Value!", (string)c2._extensionData["Key!"]); } [Test] public void ExtensionDataWithNull() { string json = @"{ 'TaxRate': 0.125, 'a':null }"; var invoice = JsonConvert.DeserializeObject(json); Assert.AreEqual(JTokenType.Null, invoice._additionalData["a"].Type); Assert.AreEqual(typeof(double), ((JValue)invoice._additionalData["TaxRate"]).Value.GetType()); string result = JsonConvert.SerializeObject(invoice); Assert.AreEqual(@"{""TaxRate"":0.125,""a"":null}", result); } [Test] public void ExtensionDataFloatParseHandling() { string json = @"{ 'TaxRate': 0.125, 'a':null }"; var invoice = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { FloatParseHandling = FloatParseHandling.Decimal }); Assert.AreEqual(typeof(decimal), ((JValue)invoice._additionalData["TaxRate"]).Value.GetType()); } #pragma warning disable 649 class ExtendedObject { [JsonExtensionData] internal IDictionary _additionalData; } #pragma warning restore 649 #pragma warning disable 169 public class CustomerInvoice { // we're only modifing the tax rate public decimal TaxRate { get; set; } // everything else gets stored here [JsonExtensionData] private IDictionary _additionalData; } #pragma warning restore 169 [Test] public void ExtensionDataExample() { string json = @"{ 'HourlyRate': 150, 'Hours': 40, 'TaxRate': 0.125 }"; var invoice = JsonConvert.DeserializeObject(json); // increase tax to 15% invoice.TaxRate = 0.15m; string result = JsonConvert.SerializeObject(invoice); // { // 'TaxRate': 0.15, // 'HourlyRate': 150, // 'Hours': 40 // } Assert.AreEqual(@"{""TaxRate"":0.15,""HourlyRate"":150,""Hours"":40}", result); } public class ExtensionDataTestClass { public string Name { get; set; } [JsonProperty("custom_name")] public string CustomName { get; set; } [JsonIgnore] public IList Ignored { get; set; } public bool GetPrivate { get; internal set; } public bool GetOnly { get { return true; } } public readonly string Readonly = "Readonly"; public IList Ints { get; set; } [JsonExtensionData] internal IDictionary ExtensionData { get; set; } public ExtensionDataTestClass() { Ints = new List { 0 }; } } public class JObjectExtensionDataTestClass { public string Name { get; set; } [JsonExtensionData] public JObject ExtensionData { get; set; } } [Test] public void RoundTripJObjectExtensionData() { JObjectExtensionDataTestClass c = new JObjectExtensionDataTestClass(); c.Name = "Name!"; c.ExtensionData = new JObject { { "one", 1 }, { "two", "II" }, { "three", new JArray(1, 1, 1) } }; string json = JsonConvert.SerializeObject(c, Formatting.Indented); JObjectExtensionDataTestClass c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("Name!", c2.Name); Assert.IsTrue(JToken.DeepEquals(c.ExtensionData, c2.ExtensionData)); } [Test] public void ExtensionDataTest() { string json = @"{ ""Ints"": [1,2,3], ""Ignored"": [1,2,3], ""Readonly"": ""Readonly"", ""Name"": ""Actually set!"", ""CustomName"": ""Wrong name!"", ""GetPrivate"": true, ""GetOnly"": true, ""NewValueSimple"": true, ""NewValueComplex"": [1,2,3] }"; ExtensionDataTestClass c = JsonConvert.DeserializeObject(json); Assert.AreEqual("Actually set!", c.Name); Assert.AreEqual(4, c.Ints.Count); Assert.AreEqual("Readonly", (string)c.ExtensionData["Readonly"]); Assert.AreEqual("Wrong name!", (string)c.ExtensionData["CustomName"]); Assert.AreEqual(true, (bool)c.ExtensionData["GetPrivate"]); Assert.AreEqual(true, (bool)c.ExtensionData["GetOnly"]); Assert.AreEqual(true, (bool)c.ExtensionData["NewValueSimple"]); Assert.IsTrue(JToken.DeepEquals(new JArray(1, 2, 3), c.ExtensionData["NewValueComplex"])); Assert.IsTrue(JToken.DeepEquals(new JArray(1, 2, 3), c.ExtensionData["Ignored"])); Assert.AreEqual(7, c.ExtensionData.Count); } public class MultipleExtensionDataAttributesTestClass { public string Name { get; set; } [JsonExtensionData] internal IDictionary ExtensionData1 { get; set; } [JsonExtensionData] internal IDictionary ExtensionData2 { get; set; } } public class ExtensionDataAttributesInheritanceTestClass : MultipleExtensionDataAttributesTestClass { [JsonExtensionData] internal IDictionary ExtensionData0 { get; set; } } public class FieldExtensionDataAttributeTestClass { [JsonExtensionData] internal IDictionary ExtensionData; } public class PublicExtensionDataAttributeTestClass { public string Name { get; set; } [JsonExtensionData] public IDictionary ExtensionData; } public class PublicExtensionDataAttributeTestClassWithNonDefaultConstructor { public string Name { get; set; } public PublicExtensionDataAttributeTestClassWithNonDefaultConstructor(string name) { Name = name; } [JsonExtensionData] public IDictionary ExtensionData; } public class PublicNoReadExtensionDataAttributeTestClass { public string Name { get; set; } [JsonExtensionData(ReadData = false)] public IDictionary ExtensionData; } public class PublicNoWriteExtensionDataAttributeTestClass { public string Name { get; set; } [JsonExtensionData(WriteData = false)] public IDictionary ExtensionData; } public class PublicJTokenExtensionDataAttributeTestClass { public string Name { get; set; } [JsonExtensionData] public IDictionary ExtensionData; } [Test] public void DeserializeDirectoryAccount() { string json = @"{'DisplayName':'John Smith', 'SAMAccountName':'contoso\\johns'}"; DirectoryAccount account = JsonConvert.DeserializeObject(json); Assert.AreEqual("John Smith", account.DisplayName); Assert.AreEqual("contoso", account.Domain); Assert.AreEqual("johns", account.UserName); } [Test] public void SerializePublicExtensionData() { string json = JsonConvert.SerializeObject(new PublicExtensionDataAttributeTestClass { Name = "Name!", ExtensionData = new Dictionary { { "Test", 1 } } }); Assert.AreEqual(@"{""Name"":""Name!"",""Test"":1}", json); } [Test] public void SerializePublicExtensionDataNull() { string json = JsonConvert.SerializeObject(new PublicExtensionDataAttributeTestClass { Name = "Name!" }); Assert.AreEqual(@"{""Name"":""Name!""}", json); } [Test] public void SerializePublicNoWriteExtensionData() { string json = JsonConvert.SerializeObject(new PublicNoWriteExtensionDataAttributeTestClass { Name = "Name!", ExtensionData = new Dictionary { { "Test", 1 } } }); Assert.AreEqual(@"{""Name"":""Name!""}", json); } [Test] public void DeserializeNoReadPublicExtensionData() { PublicNoReadExtensionDataAttributeTestClass c = JsonConvert.DeserializeObject(@"{""Name"":""Name!"",""Test"":1}"); Assert.AreEqual(null, c.ExtensionData); } [Test] public void SerializePublicExtensionDataCircularReference() { var c = new PublicExtensionDataAttributeTestClass { Name = "Name!", ExtensionData = new Dictionary { { "Test", 1 } } }; c.ExtensionData["Self"] = c; string json = JsonConvert.SerializeObject(c, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All, Formatting = Formatting.Indented }); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""Name"": ""Name!"", ""Test"": 1, ""Self"": { ""$ref"": ""1"" } }", json); var c2 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All }); Assert.AreEqual("Name!", c2.Name); PublicExtensionDataAttributeTestClass bizzaroC2 = (PublicExtensionDataAttributeTestClass)c2.ExtensionData["Self"]; Assert.AreEqual(c2, bizzaroC2); Assert.AreEqual(1, (long)bizzaroC2.ExtensionData["Test"]); } [Test] public void DeserializePublicJTokenExtensionDataCircularReference() { string json = @"{ ""$id"": ""1"", ""Name"": ""Name!"", ""Test"": 1, ""Self"": { ""$ref"": ""1"" } }"; var c2 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All }); Assert.AreEqual("Name!", c2.Name); JObject bizzaroC2 = (JObject)c2.ExtensionData["Self"]; Assert.AreEqual("Name!", (string)bizzaroC2["Name"]); Assert.AreEqual(1, (int)bizzaroC2["Test"]); Assert.AreEqual(1, (int)c2.ExtensionData["Test"]); } [Test] public void DeserializePublicExtensionDataTypeNamdHandling() { string json = @"{ ""$id"": ""1"", ""Name"": ""Name!"", ""Test"": 1, ""Self"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.WagePerson, Newtonsoft.Json.Tests"", ""HourlyWage"": 2.0, ""Name"": null, ""BirthDate"": ""0001-01-01T00:00:00"", ""LastModified"": ""0001-01-01T00:00:00"" } }"; PublicExtensionDataAttributeTestClass c2 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects }); Assert.AreEqual("Name!", c2.Name); WagePerson bizzaroC2 = (WagePerson)c2.ExtensionData["Self"]; Assert.AreEqual(2m, bizzaroC2.HourlyWage); } [Test] public void DeserializePublicExtensionDataTypeNamdHandlingNonDefaultConstructor() { string json = @"{ ""$id"": ""1"", ""Name"": ""Name!"", ""Test"": 1, ""Self"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.WagePerson, Newtonsoft.Json.Tests"", ""HourlyWage"": 2.0, ""Name"": null, ""BirthDate"": ""0001-01-01T00:00:00"", ""LastModified"": ""0001-01-01T00:00:00"" } }"; PublicExtensionDataAttributeTestClassWithNonDefaultConstructor c2 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects }); Assert.AreEqual("Name!", c2.Name); WagePerson bizzaroC2 = (WagePerson)c2.ExtensionData["Self"]; Assert.AreEqual(2m, bizzaroC2.HourlyWage); } [Test] public void SerializePublicExtensionDataTypeNamdHandling() { PublicExtensionDataAttributeTestClass c = new PublicExtensionDataAttributeTestClass { Name = "Name!", ExtensionData = new Dictionary { { "Test", new WagePerson { HourlyWage = 2.1m } } } }; string json = JsonConvert.SerializeObject(c, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, Formatting = Formatting.Indented }); StringAssert.AreEqual(@"{ ""$type"": ""Newtonsoft.Json.Tests.Serialization.ExtensionDataTests+PublicExtensionDataAttributeTestClass, Newtonsoft.Json.Tests"", ""Name"": ""Name!"", ""Test"": { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.WagePerson, Newtonsoft.Json.Tests"", ""HourlyWage"": 2.1, ""Name"": null, ""BirthDate"": ""0001-01-01T00:00:00"", ""LastModified"": ""0001-01-01T00:00:00"" } }", json); } [Test] public void DeserializePublicExtensionData() { string json = @"{ 'Name':'Name!', 'NoMatch':'NoMatch!', 'ExtensionData':{'HAI':true} }"; var c = JsonConvert.DeserializeObject(json); Assert.AreEqual("Name!", c.Name); Assert.AreEqual(2, c.ExtensionData.Count); Assert.AreEqual("NoMatch!", (string)c.ExtensionData["NoMatch"]); // the ExtensionData property is put into the extension data // inception var o = (JObject)c.ExtensionData["ExtensionData"]; Assert.AreEqual(1, o.Count); Assert.IsTrue(JToken.DeepEquals(new JObject { { "HAI", true } }, o)); } [Test] public void FieldExtensionDataAttributeTest_Serialize() { FieldExtensionDataAttributeTestClass c = new FieldExtensionDataAttributeTestClass { ExtensionData = new Dictionary() }; string json = JsonConvert.SerializeObject(c); Assert.AreEqual("{}", json); } [Test] public void FieldExtensionDataAttributeTest_Deserialize() { var c = JsonConvert.DeserializeObject("{'first':1,'second':2}"); Assert.AreEqual(2, c.ExtensionData.Count); Assert.AreEqual(1, (long)c.ExtensionData["first"]); Assert.AreEqual(2, (long)c.ExtensionData["second"]); } [Test] public void MultipleExtensionDataAttributesTest() { var c = JsonConvert.DeserializeObject("{'first':[1],'second':[2]}"); Assert.AreEqual(null, c.ExtensionData1); Assert.AreEqual(2, c.ExtensionData2.Count); Assert.AreEqual(1, (int)((JArray)c.ExtensionData2["first"])[0]); Assert.AreEqual(2, (int)((JArray)c.ExtensionData2["second"])[0]); } [Test] public void ExtensionDataAttributesInheritanceTest() { var c = JsonConvert.DeserializeObject("{'first':1,'second':2}"); Assert.AreEqual(null, c.ExtensionData1); Assert.AreEqual(null, c.ExtensionData2); Assert.AreEqual(2, c.ExtensionData0.Count); Assert.AreEqual(1, (int)c.ExtensionData0["first"]); Assert.AreEqual(2, (int)c.ExtensionData0["second"]); } public class TestClass { [JsonProperty("LastActivityDate")] public DateTime? LastActivityDate { get; set; } [JsonExtensionData] public Dictionary CustomFields { get; set; } } [Test] public void DeserializeNullableProperty() { string json = @"{ ""LastActivityDate"":null, ""CustomField1"":""Testing"" }"; var c = JsonConvert.DeserializeObject(json); Assert.AreEqual(null, c.LastActivityDate); Assert.AreEqual(1, c.CustomFields.Count); Assert.AreEqual("Testing", (string)c.CustomFields["CustomField1"]); } } }././@LongLink0000644000000000000000000000015500000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/CamelCasePropertyNamesContractResolverTests.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/CamelCasePropertyNamesContractResolver0000664000175000017500000002024512454416117034670 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Serialization; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Linq; using System.Reflection; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class CamelCasePropertyNamesContractResolverTests : TestFixtureBase { [Test] public void JsonConvertSerializerSettings() { Person person = new Person(); person.BirthDate = new DateTime(2000, 11, 20, 23, 55, 44, DateTimeKind.Utc); person.LastModified = new DateTime(2000, 11, 20, 23, 55, 44, DateTimeKind.Utc); person.Name = "Name!"; string json = JsonConvert.SerializeObject(person, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }); StringAssert.AreEqual(@"{ ""name"": ""Name!"", ""birthDate"": ""2000-11-20T23:55:44Z"", ""lastModified"": ""2000-11-20T23:55:44Z"" }", json); Person deserializedPerson = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }); Assert.AreEqual(person.BirthDate, deserializedPerson.BirthDate); Assert.AreEqual(person.LastModified, deserializedPerson.LastModified); Assert.AreEqual(person.Name, deserializedPerson.Name); json = JsonConvert.SerializeObject(person, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": ""Name!"", ""BirthDate"": ""2000-11-20T23:55:44Z"", ""LastModified"": ""2000-11-20T23:55:44Z"" }", json); } [Test] public void JTokenWriter() { JsonIgnoreAttributeOnClassTestClass ignoreAttributeOnClassTestClass = new JsonIgnoreAttributeOnClassTestClass(); ignoreAttributeOnClassTestClass.Field = int.MinValue; JsonSerializer serializer = new JsonSerializer(); serializer.ContractResolver = new CamelCasePropertyNamesContractResolver(); JTokenWriter writer = new JTokenWriter(); serializer.Serialize(writer, ignoreAttributeOnClassTestClass); JObject o = (JObject)writer.Token; JProperty p = o.Property("theField"); Assert.IsNotNull(p); Assert.AreEqual(int.MinValue, (int)p.Value); string json = o.ToString(); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) #pragma warning disable 618 [Test] public void MemberSearchFlags() { PrivateMembersClass privateMembersClass = new PrivateMembersClass("PrivateString!", "InternalString!"); string json = JsonConvert.SerializeObject(privateMembersClass, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver { DefaultMembersSearchFlags = BindingFlags.NonPublic | BindingFlags.Instance } }); StringAssert.AreEqual(@"{ ""_privateString"": ""PrivateString!"", ""i"": 0, ""_internalString"": ""InternalString!"" }", json); PrivateMembersClass deserializedPrivateMembersClass = JsonConvert.DeserializeObject(@"{ ""_privateString"": ""Private!"", ""i"": -2, ""_internalString"": ""Internal!"" }", new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver { DefaultMembersSearchFlags = BindingFlags.NonPublic | BindingFlags.Instance } }); Assert.AreEqual("Private!", ReflectionUtils.GetMemberValue(typeof(PrivateMembersClass).GetField("_privateString", BindingFlags.Instance | BindingFlags.NonPublic), deserializedPrivateMembersClass)); Assert.AreEqual("Internal!", ReflectionUtils.GetMemberValue(typeof(PrivateMembersClass).GetField("_internalString", BindingFlags.Instance | BindingFlags.NonPublic), deserializedPrivateMembersClass)); // readonly Assert.AreEqual(0, ReflectionUtils.GetMemberValue(typeof(PrivateMembersClass).GetField("i", BindingFlags.Instance | BindingFlags.NonPublic), deserializedPrivateMembersClass)); } #pragma warning restore 618 #endif [Test] public void BlogPostExample() { Product product = new Product { ExpiryDate = new DateTime(2010, 12, 20, 18, 1, 0, DateTimeKind.Utc), Name = "Widget", Price = 9.99m, Sizes = new[] { "Small", "Medium", "Large" } }; string json = JsonConvert.SerializeObject( product, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() } ); //{ // "name": "Widget", // "expiryDate": "\/Date(1292868060000)\/", // "price": 9.99, // "sizes": [ // "Small", // "Medium", // "Large" // ] //} StringAssert.AreEqual(@"{ ""name"": ""Widget"", ""expiryDate"": ""2010-12-20T18:01:00Z"", ""price"": 9.99, ""sizes"": [ ""Small"", ""Medium"", ""Large"" ] }", json); } #if !(NET35 || NET20 || PORTABLE40) [Test] public void DynamicCamelCasePropertyNames() { dynamic o = new TestDynamicObject(); o.Text = "Text!"; o.Integer = int.MaxValue; string json = JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }); StringAssert.AreEqual(@"{ ""explicit"": false, ""text"": ""Text!"", ""integer"": 2147483647, ""int"": 0, ""childObject"": null }", json); } #endif [Test] public void DictionaryCamelCasePropertyNames() { Dictionary values = new Dictionary { { "First", "Value1!" }, { "Second", "Value2!" } }; string json = JsonConvert.SerializeObject(values, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }); StringAssert.AreEqual(@"{ ""first"": ""Value1!"", ""second"": ""Value2!"" }", json); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/DynamicConcreteTests.cs0000664000175000017500000002536612454416117031611 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) using System.Reflection; using System.Reflection.Emit; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using System; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class DynamicConcreteTests : TestFixtureBase { public class DynamicConcreteContractResolver : DefaultContractResolver { protected override JsonContract CreateContract(Type objectType) { JsonContract contract = base.CreateContract(objectType); // create a dynamic mock object for interfaces or abstract classes if (contract.CreatedType.IsInterface || contract.CreatedType.IsAbstract) contract.DefaultCreator = () => DynamicConcrete.GetInstanceFor(contract.CreatedType); return contract; } } [Test] public void UseDynamicConcreteIfTargetObjectTypeIsAnInterfaceWithNoBackingClass() { string json = @"{Name:""Name!""}"; var c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { ContractResolver = new DynamicConcreteContractResolver() }); Assert.AreEqual("Name!", c.Name); } [Test] public void UseDynamicConcreteIfTargetObjectTypeIsAnAbstractClassWithNoConcrete() { string json = @"{Name:""Name!"", Game:""Same""}"; var c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { ContractResolver = new DynamicConcreteContractResolver() }); Assert.AreEqual("Name!", c.Name); Assert.AreEqual("Same", c.Game); } [Test] public void AnyMethodsExposedByDynamicConcreteAreHarmless() { string json = @"{Name:""Name!""}"; var c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { ContractResolver = new DynamicConcreteContractResolver() }); c.FuncWithRefType(10, null); c.FuncWithValType_1(); c.FuncWithValType_2(); } } public abstract class AbstractWithNoConcrete { public string Name { get; set; } public abstract string Game { get; set; } } public interface IInterfaceWithNoConcrete { string Name { get; set; } object FuncWithRefType(int a, object b); int FuncWithValType_1(); bool FuncWithValType_2(); } /// /// Creates run-time backing types for abstract classes and interfaces /// public static class DynamicConcrete { /// /// Get an empty instance of a dynamic proxy for type T. /// All public fields are writable and all properties have both getters and setters. /// public static T GetInstanceFor() { return (T)GetInstanceFor(typeof(T)); } static readonly ModuleBuilder ModuleBuilder; static readonly AssemblyBuilder DynamicAssembly; /// /// Get an empty instance of a dynamic proxy for the given type. /// All public fields are writable and all properties have both getters and setters. /// public static object GetInstanceFor(Type targetType) { lock (DynamicAssembly) { var constructedType = DynamicAssembly.GetType(ProxyName(targetType)) ?? GetConstructedType(targetType); var instance = Activator.CreateInstance(constructedType); return instance; } } static string ProxyName(Type targetType) { return targetType.Name + "Proxy"; } static DynamicConcrete() { var assemblyName = new AssemblyName("DynImpl"); DynamicAssembly = AppDomain.CurrentDomain.DefineDynamicAssembly(assemblyName, AssemblyBuilderAccess.RunAndSave); ModuleBuilder = DynamicAssembly.DefineDynamicModule("DynImplModule"); } static Type GetConstructedType(Type targetType) { var typeBuilder = ModuleBuilder.DefineType(targetType.Name + "Proxy", TypeAttributes.Public); var ctorBuilder = typeBuilder.DefineConstructor( MethodAttributes.Public, CallingConventions.Standard, new Type[] { }); var ilGenerator = ctorBuilder.GetILGenerator(); ilGenerator.Emit(OpCodes.Ret); IncludeType(targetType, typeBuilder); foreach (var face in targetType.GetInterfaces()) IncludeType(face, typeBuilder); return typeBuilder.CreateType(); } static void IncludeType(Type typeOfT, TypeBuilder typeBuilder) { var methodInfos = typeOfT.GetMethods(); foreach (var methodInfo in methodInfos) { if (methodInfo.Name.StartsWith("set_")) continue; // we always add a set for a get. if (methodInfo.Name.StartsWith("get_")) { BindProperty(typeBuilder, methodInfo); } else { if (methodInfo.IsAbstract) BindMethod(typeBuilder, methodInfo); } } if (typeOfT.IsInterface) typeBuilder.AddInterfaceImplementation(typeOfT); else if (typeOfT.IsAbstract) typeBuilder.SetParent(typeOfT); } static void BindMethod(TypeBuilder typeBuilder, MethodInfo methodInfo) { var args = methodInfo.GetParameters().Select(p => p.ParameterType).ToArray(); var methodBuilder = typeBuilder.DefineMethod( methodInfo.Name, MethodAttributes.Public | MethodAttributes.Virtual, CallingConventions.HasThis, methodInfo.ReturnType, args ); var methodILGen = methodBuilder.GetILGenerator(); if (methodInfo.ReturnType == typeof(void)) { methodILGen.Emit(OpCodes.Ret); } else { if (methodInfo.ReturnType.IsPrimitive) { methodILGen.Emit(OpCodes.Ldc_I4_0); } else if (methodInfo.ReturnType.IsValueType || methodInfo.ReturnType.IsEnum) { var getMethod = typeof(Activator).GetMethod("CreateInstance", new[] { typeof(Type) }); var lb = methodILGen.DeclareLocal(methodInfo.ReturnType); if (lb.LocalType != null) { methodILGen.Emit(OpCodes.Ldtoken, lb.LocalType); methodILGen.Emit(OpCodes.Call, typeof(Type).GetMethod("GetTypeFromHandle")); methodILGen.Emit(OpCodes.Callvirt, getMethod); methodILGen.Emit(OpCodes.Unbox_Any, lb.LocalType); } } else { methodILGen.Emit(OpCodes.Ldnull); } methodILGen.Emit(OpCodes.Ret); } typeBuilder.DefineMethodOverride(methodBuilder, methodInfo); } /// /// Bind a new property into a type builder with getters and setters. /// public static void BindProperty(TypeBuilder typeBuilder, MethodInfo methodInfo) { // Backing Field var propertyName = methodInfo.Name.Replace("get_", ""); var propertyType = methodInfo.ReturnType; var backingField = typeBuilder.DefineField("_" + propertyName, propertyType, FieldAttributes.Private); //Getter var backingGet = typeBuilder.DefineMethod("get_" + propertyName, MethodAttributes.Public | MethodAttributes.SpecialName | MethodAttributes.Virtual | MethodAttributes.HideBySig, propertyType, Type.EmptyTypes); var getIl = backingGet.GetILGenerator(); getIl.Emit(OpCodes.Ldarg_0); getIl.Emit(OpCodes.Ldfld, backingField); getIl.Emit(OpCodes.Ret); //Setter var backingSet = typeBuilder.DefineMethod("set_" + propertyName, MethodAttributes.Public | MethodAttributes.SpecialName | MethodAttributes.Virtual | MethodAttributes.HideBySig, null, new[] { propertyType }); var setIl = backingSet.GetILGenerator(); setIl.Emit(OpCodes.Ldarg_0); setIl.Emit(OpCodes.Ldarg_1); setIl.Emit(OpCodes.Stfld, backingField); setIl.Emit(OpCodes.Ret); // Property var propertyBuilder = typeBuilder.DefineProperty(propertyName, PropertyAttributes.None, propertyType, null); propertyBuilder.SetGetMethod(backingGet); propertyBuilder.SetSetMethod(backingSet); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/JsonPropertyCollectionTests.cs0000664000175000017500000000516712454416117033231 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class JsonPropertyCollectionTests : TestFixtureBase { [Test] public void AddPropertyIncludesPrivateImplementations() { var value = new PrivateImplementationBClass { OverriddenProperty = "OverriddenProperty", PropertyA = "PropertyA", PropertyB = "PropertyB" }; var resolver = new DefaultContractResolver(); var contract = (JsonObjectContract)resolver.ResolveContract(value.GetType()); Assert.AreEqual(3, contract.Properties.Count); Assert.IsTrue(contract.Properties.Contains("OverriddenProperty"), "Contract is missing property 'OverriddenProperty'"); Assert.IsTrue(contract.Properties.Contains("PropertyA"), "Contract is missing property 'PropertyA'"); Assert.IsTrue(contract.Properties.Contains("PropertyB"), "Contract is missing property 'PropertyB'"); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/FSharpTests.cs0000664000175000017500000000573012454416117027716 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || NETFX_CORE || ASPNETCORE50) using NUnit.Framework; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Microsoft.FSharp.Collections; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class FSharpTests : TestFixtureBase { [Test] public void List() { FSharpList l = ListModule.OfSeq(new List {1,2,3}); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ 1, 2, 3 ]", json); FSharpList l2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(l.Length, l2.Length); CollectionAssert.AreEquivalent(l, l2); } [Test] public void Set() { FSharpSet l = SetModule.OfSeq(new List { 1, 2, 3 }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ 1, 2, 3 ]", json); FSharpSet l2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(l.Count, l2.Count); CollectionAssert.AreEquivalent(l, l2); } [Test] public void Map() { FSharpMap m1 = MapModule.OfSeq(new List> { Tuple.Create("one", 1), Tuple.Create("II", 2), Tuple.Create("3", 3) }); string json = JsonConvert.SerializeObject(m1, Formatting.Indented); FSharpMap m2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(m1.Count, m2.Count); Assert.AreEqual(1, m2["one"]); Assert.AreEqual(2, m2["II"]); Assert.AreEqual(3, m2["3"]); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/MissingMemberHandlingTests.cs0000664000175000017500000001322512454416117032737 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.IO; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class MissingMemberHandlingTests : TestFixtureBase { [Test] public void MissingMemberDeserialize() { Product product = new Product(); product.Name = "Apple"; product.ExpiryDate = new DateTime(2008, 12, 28); product.Price = 3.99M; product.Sizes = new string[] { "Small", "Medium", "Large" }; string output = JsonConvert.SerializeObject(product, Formatting.Indented); //{ // "Name": "Apple", // "ExpiryDate": new Date(1230422400000), // "Price": 3.99, // "Sizes": [ // "Small", // "Medium", // "Large" // ] //} ExceptionAssert.Throws(() => { ProductShort deserializedProductShort = (ProductShort)JsonConvert.DeserializeObject(output, typeof(ProductShort), new JsonSerializerSettings { MissingMemberHandling = MissingMemberHandling.Error }); }, @"Could not find member 'Price' on object of type 'ProductShort'. Path 'Price', line 4, position 11."); } [Test] public void MissingMemberDeserializeOkay() { Product product = new Product(); product.Name = "Apple"; product.ExpiryDate = new DateTime(2008, 12, 28); product.Price = 3.99M; product.Sizes = new string[] { "Small", "Medium", "Large" }; string output = JsonConvert.SerializeObject(product); //{ // "Name": "Apple", // "ExpiryDate": new Date(1230422400000), // "Price": 3.99, // "Sizes": [ // "Small", // "Medium", // "Large" // ] //} JsonSerializer jsonSerializer = new JsonSerializer(); jsonSerializer.MissingMemberHandling = MissingMemberHandling.Ignore; object deserializedValue; using (JsonReader jsonReader = new JsonTextReader(new StringReader(output))) { deserializedValue = jsonSerializer.Deserialize(jsonReader, typeof(ProductShort)); } ProductShort deserializedProductShort = (ProductShort)deserializedValue; Assert.AreEqual("Apple", deserializedProductShort.Name); Assert.AreEqual(new DateTime(2008, 12, 28), deserializedProductShort.ExpiryDate); Assert.AreEqual("Small", deserializedProductShort.Sizes[0]); Assert.AreEqual("Medium", deserializedProductShort.Sizes[1]); Assert.AreEqual("Large", deserializedProductShort.Sizes[2]); } [Test] public void MissingMemberIgnoreComplexValue() { JsonSerializer serializer = new JsonSerializer { MissingMemberHandling = MissingMemberHandling.Ignore }; serializer.Converters.Add(new JavaScriptDateTimeConverter()); string response = @"{""PreProperty"":1,""DateProperty"":new Date(1225962698973),""PostProperty"":2}"; MyClass myClass = (MyClass)serializer.Deserialize(new StringReader(response), typeof(MyClass)); Assert.AreEqual(1, myClass.PreProperty); Assert.AreEqual(2, myClass.PostProperty); } [Test] public void MissingMemeber() { string json = @"{""Missing"":1}"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json, new JsonSerializerSettings { MissingMemberHandling = MissingMemberHandling.Error }); }, "Could not find member 'Missing' on object of type 'DoubleClass'. Path 'Missing', line 1, position 11."); } [Test] public void MissingJson() { string json = @"{}"; JsonConvert.DeserializeObject(json, new JsonSerializerSettings { MissingMemberHandling = MissingMemberHandling.Error }); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/ShouldSerializeTests.cs0000664000175000017500000004255512454416117031647 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Text; using Newtonsoft.Json.Serialization; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class ShouldSerializeTests : TestFixtureBase { public class A { } public class B { public A A { get; set; } public virtual bool ShouldSerializeA() { return false; } } [Test] public void VirtualShouldSerializeSimple() { string json = JsonConvert.SerializeObject(new B()); Assert.AreEqual("{}", json); } [Test] public void VirtualShouldSerialize() { var setFoo = new Foo1() { name = Guid.NewGuid().ToString(), myBar = new Bar1() { name = Guid.NewGuid().ToString(), myBaz = new Baz1[] { new Baz1(){ name = Guid.NewGuid().ToString(), myFrob = new Frob1[]{ new Frob1{name = Guid.NewGuid().ToString()} } }, new Baz1(){ name = Guid.NewGuid().ToString(), myFrob = new Frob1[]{ new Frob1{name = Guid.NewGuid().ToString()} } }, new Baz1(){ name = Guid.NewGuid().ToString(), myFrob = new Frob1[]{ new Frob1{name = Guid.NewGuid().ToString()} } }, } } }; var setFooJson = Serialize(setFoo); var deserializedSetFoo = JsonConvert.DeserializeObject(setFooJson); Assert.AreEqual(setFoo.name, deserializedSetFoo.name); Assert.IsNotNull(deserializedSetFoo.myBar); Assert.AreEqual(setFoo.myBar.name, deserializedSetFoo.myBar.name); Assert.IsNotNull(deserializedSetFoo.myBar.myBaz); Assert.AreEqual(setFoo.myBar.myBaz.Length, deserializedSetFoo.myBar.myBaz.Length); Assert.AreEqual(setFoo.myBar.myBaz[0].name, deserializedSetFoo.myBar.myBaz[0].name); Assert.IsNotNull(deserializedSetFoo.myBar.myBaz[0].myFrob[0]); Assert.AreEqual(setFoo.myBar.myBaz[0].myFrob[0].name, deserializedSetFoo.myBar.myBaz[0].myFrob[0].name); Assert.AreEqual(setFoo.myBar.myBaz[1].name, deserializedSetFoo.myBar.myBaz[1].name); Assert.IsNotNull(deserializedSetFoo.myBar.myBaz[2].myFrob[0]); Assert.AreEqual(setFoo.myBar.myBaz[1].myFrob[0].name, deserializedSetFoo.myBar.myBaz[1].myFrob[0].name); Assert.AreEqual(setFoo.myBar.myBaz[2].name, deserializedSetFoo.myBar.myBaz[2].name); Assert.IsNotNull(deserializedSetFoo.myBar.myBaz[2].myFrob[0]); Assert.AreEqual(setFoo.myBar.myBaz[2].myFrob[0].name, deserializedSetFoo.myBar.myBaz[2].myFrob[0].name); Assert.AreEqual(true, setFoo.myBar.ShouldSerializemyBazCalled); } private string Serialize(Foo1 f) { //Code copied from JsonConvert.SerializeObject(), with addition of trace writing JsonSerializer jsonSerializer = JsonSerializer.CreateDefault(); var traceWriter = new MemoryTraceWriter(); jsonSerializer.TraceWriter = traceWriter; StringBuilder sb = new StringBuilder(256); StringWriter sw = new StringWriter(sb, CultureInfo.InvariantCulture); using (JsonTextWriter jsonWriter = new JsonTextWriter(sw)) { jsonWriter.Formatting = Formatting.None; jsonSerializer.Serialize(jsonWriter, f, typeof(Foo1)); } Console.WriteLine("Trace output:\n{0}", traceWriter.ToString()); return sw.ToString(); } [Test] public void ShouldSerializeTest() { ShouldSerializeTestClass c = new ShouldSerializeTestClass(); c.Name = "James"; c.Age = 27; string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Age"": 27 }", json); c._shouldSerializeName = true; json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": ""James"", ""Age"": 27 }", json); ShouldSerializeTestClass deserialized = JsonConvert.DeserializeObject(json); Assert.AreEqual("James", deserialized.Name); Assert.AreEqual(27, deserialized.Age); } [Test] public void ShouldSerializeExample() { Employee joe = new Employee(); joe.Name = "Joe Employee"; Employee mike = new Employee(); mike.Name = "Mike Manager"; joe.Manager = mike; mike.Manager = mike; string json = JsonConvert.SerializeObject(new[] { joe, mike }, Formatting.Indented); // [ // { // "Name": "Joe Employee", // "Manager": { // "Name": "Mike Manager" // } // }, // { // "Name": "Mike Manager" // } // ] Console.WriteLine(json); } [Test] public void SpecifiedTest() { SpecifiedTestClass c = new SpecifiedTestClass(); c.Name = "James"; c.Age = 27; c.NameSpecified = false; string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Age"": 27 }", json); SpecifiedTestClass deserialized = JsonConvert.DeserializeObject(json); Assert.IsNull(deserialized.Name); Assert.IsFalse(deserialized.NameSpecified); Assert.IsFalse(deserialized.WeightSpecified); Assert.IsFalse(deserialized.HeightSpecified); Assert.IsFalse(deserialized.FavoriteNumberSpecified); Assert.AreEqual(27, deserialized.Age); c.NameSpecified = true; c.WeightSpecified = true; c.HeightSpecified = true; c.FavoriteNumber = 23; json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": ""James"", ""Age"": 27, ""Weight"": 0, ""Height"": 0, ""FavoriteNumber"": 23 }", json); deserialized = JsonConvert.DeserializeObject(json); Assert.AreEqual("James", deserialized.Name); Assert.IsTrue(deserialized.NameSpecified); Assert.IsTrue(deserialized.WeightSpecified); Assert.IsTrue(deserialized.HeightSpecified); Assert.IsTrue(deserialized.FavoriteNumberSpecified); Assert.AreEqual(27, deserialized.Age); Assert.AreEqual(23, deserialized.FavoriteNumber); } // [Test] // public void XmlSerializerSpecifiedTrueTest() // { // XmlSerializer s = new XmlSerializer(typeof(OptionalOrder)); // StringWriter sw = new StringWriter(); // s.Serialize(sw, new OptionalOrder() { FirstOrder = "First", FirstOrderSpecified = true }); // Console.WriteLine(sw.ToString()); // string xml = @" // // First //"; // OptionalOrder o = (OptionalOrder)s.Deserialize(new StringReader(xml)); // Console.WriteLine(o.FirstOrder); // Console.WriteLine(o.FirstOrderSpecified); // } // [Test] // public void XmlSerializerSpecifiedFalseTest() // { // XmlSerializer s = new XmlSerializer(typeof(OptionalOrder)); // StringWriter sw = new StringWriter(); // s.Serialize(sw, new OptionalOrder() { FirstOrder = "First", FirstOrderSpecified = false }); // Console.WriteLine(sw.ToString()); // // string xml = @" // // // // First // //"; // // OptionalOrder o = (OptionalOrder)s.Deserialize(new StringReader(xml)); // // Console.WriteLine(o.FirstOrder); // // Console.WriteLine(o.FirstOrderSpecified); // } public class OptionalOrder { // This field shouldn't be serialized // if it is uninitialized. public string FirstOrder; // Use the XmlIgnoreAttribute to ignore the // special field named "FirstOrderSpecified". [System.Xml.Serialization.XmlIgnoreAttribute] public bool FirstOrderSpecified; } public class FamilyDetails { public string Name { get; set; } public int NumberOfChildren { get; set; } [JsonIgnore] public bool NumberOfChildrenSpecified { get; set; } } [Test] public void SpecifiedExample() { FamilyDetails joe = new FamilyDetails(); joe.Name = "Joe Family Details"; joe.NumberOfChildren = 4; joe.NumberOfChildrenSpecified = true; FamilyDetails martha = new FamilyDetails(); martha.Name = "Martha Family Details"; martha.NumberOfChildren = 3; martha.NumberOfChildrenSpecified = false; string json = JsonConvert.SerializeObject(new[] { joe, martha }, Formatting.Indented); //[ // { // "Name": "Joe Family Details", // "NumberOfChildren": 4 // }, // { // "Name": "Martha Family Details" // } //] Console.WriteLine(json); string mikeString = "{\"Name\": \"Mike Person\"}"; FamilyDetails mike = JsonConvert.DeserializeObject(mikeString); Console.WriteLine("mikeString specifies number of children: {0}", mike.NumberOfChildrenSpecified); string mikeFullDisclosureString = "{\"Name\": \"Mike Person\", \"NumberOfChildren\": \"0\"}"; mike = JsonConvert.DeserializeObject(mikeFullDisclosureString); Console.WriteLine("mikeString specifies number of children: {0}", mike.NumberOfChildrenSpecified); } [Test] public void ShouldSerializeInheritedClassTest() { NewEmployee joe = new NewEmployee(); joe.Name = "Joe Employee"; joe.Age = 100; Employee mike = new Employee(); mike.Name = "Mike Manager"; mike.Manager = mike; joe.Manager = mike; //StringWriter sw = new StringWriter(); //XmlSerializer x = new XmlSerializer(typeof(NewEmployee)); //x.Serialize(sw, joe); //Console.WriteLine(sw); //JavaScriptSerializer s = new JavaScriptSerializer(); //Console.WriteLine(s.Serialize(new {html = @"; & ! ^ * ( ) ! @ # $ % ^ ' "" - , . / ; : [ { } ] ; ' - _ = + ? ` ~ \ |"})); string json = JsonConvert.SerializeObject(joe, Formatting.Indented); StringAssert.AreEqual(@"{ ""Age"": 100, ""Name"": ""Joe Employee"", ""Manager"": { ""Name"": ""Mike Manager"" } }", json); } public class Employee { public string Name { get; set; } public Employee Manager { get; set; } public bool ShouldSerializeManager() { return (Manager != this); } } public class NewEmployee : Employee { public int Age { get; set; } public bool ShouldSerializeName() { return false; } } } public class ShouldSerializeTestClass { internal bool _shouldSerializeName; public string Name { get; set; } public int Age { get; set; } public void ShouldSerializeAge() { // dummy. should never be used because it doesn't return bool } public bool ShouldSerializeName() { return _shouldSerializeName; } } public class SpecifiedTestClass { private bool _nameSpecified; public string Name { get; set; } public int Age { get; set; } public int Weight { get; set; } public int Height { get; set; } public int FavoriteNumber { get; set; } // dummy. should never be used because it isn't of type bool [JsonIgnore] public long AgeSpecified { get; set; } [JsonIgnore] public bool NameSpecified { get { return _nameSpecified; } set { _nameSpecified = value; } } [JsonIgnore] public bool WeightSpecified; [JsonIgnore] [System.Xml.Serialization.XmlIgnoreAttribute] public bool HeightSpecified; [JsonIgnore] public bool FavoriteNumberSpecified { // get only example get { return FavoriteNumber != 0; } } } public class Foo1 { private Bar1 myBarField; public Bar1 myBar { get { return myBarField; } set { myBarField = value; } } private string nameField; public string name { get { return nameField; } set { nameField = value; } } public virtual bool ShouldSerializemyBar() { return (myBar != null); } public virtual bool ShouldSerializename() { return (name != null); } } public class Bar1 { [JsonIgnore] public bool ShouldSerializemyBazCalled { get; set;} private Baz1[] myBazField; public Baz1[] myBaz { get { return myBazField; } set { myBazField = value; } } private string nameField; public string name { get { return nameField; } set { nameField = value; } } public virtual bool ShouldSerializemyBaz() { ShouldSerializemyBazCalled = true; return (myBaz != null); } public virtual bool ShouldSerializename() { return (name != null); } } public class Baz1 { private Frob1[] myFrobField; public Frob1[] myFrob { get { return myFrobField; } set { myFrobField = value; } } private string nameField; public string name { get { return nameField; } set { nameField = value; } } public virtual bool ShouldSerializename() { return (name != null); } public virtual bool ShouldSerializemyFrob() { return (myFrob != null); } } public class Frob1 { private string nameField; public string name { get { return nameField; } set { nameField = value; } } public virtual bool ShouldSerializename() { return (name != null); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerTest.cs0000664000175000017500000116573112454416117031324 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.ComponentModel; #if !(NET35 || NET20) using System.Collections.Concurrent; #endif using System.Collections.Generic; #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif #if !(NET20 || NETFX_CORE || ASPNETCORE50) using System.ComponentModel.DataAnnotations; using System.Configuration; using System.Runtime.CompilerServices; using System.Runtime.Serialization.Formatters; using System.Threading; using System.Web.Script.Serialization; #endif using System.Text; using System.Text.RegularExpressions; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json; using System.IO; using System.Collections; using System.Xml; using System.Xml.Serialization; using System.Collections.ObjectModel; using Newtonsoft.Json.Bson; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Converters; #if !NET20 using System.Runtime.Serialization.Json; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.Linq; using Newtonsoft.Json.Tests.TestObjects; using System.Runtime.Serialization; using System.Globalization; using Newtonsoft.Json.Utilities; using System.Reflection; #if !NET20 using System.Xml.Linq; using System.Collections.Specialized; using System.Linq.Expressions; #endif #if !(NET35 || NET20) using System.Dynamic; #endif #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif #if !(NETFX_CORE || ASPNETCORE50) using System.Drawing; using System.Diagnostics; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class JsonSerializerTest : TestFixtureBase { [Test] public void IncompleteContainers() { ExceptionAssert.Throws( () => JsonConvert.DeserializeObject>("[1,"), "Unexpected end when deserializing array. Path '[0]', line 1, position 3."); ExceptionAssert.Throws( () => JsonConvert.DeserializeObject>("[1"), "Unexpected end when deserializing array. Path '[0]', line 1, position 2."); ExceptionAssert.Throws( () => JsonConvert.DeserializeObject>("{'key':1,"), "Unexpected end when deserializing object. Path 'key', line 1, position 9."); ExceptionAssert.Throws( () => JsonConvert.DeserializeObject>("{'key':1"), "Unexpected end when deserializing object. Path 'key', line 1, position 8."); ExceptionAssert.Throws( () => JsonConvert.DeserializeObject("{'key':1,"), "Unexpected end when deserializing object. Path 'key', line 1, position 9."); ExceptionAssert.Throws( () => JsonConvert.DeserializeObject("{'key':1"), "Unexpected end when deserializing object. Path 'key', line 1, position 8."); } public class IncompleteTestClass { public int Key { get; set; } } #if !NET20 public enum EnumA { [EnumMember(Value = "value_a")] ValueA } [Test] public void DeserializeEnumsByName() { var e1 = JsonConvert.DeserializeObject("'ValueA'"); Assert.AreEqual(EnumA.ValueA, e1); var e2 = JsonConvert.DeserializeObject("'value_a'", new StringEnumConverter()); Assert.AreEqual(EnumA.ValueA, e2); } #endif #if !(NETFX_CORE || ASPNETCORE50 || NET20) [MetadataType(typeof(CustomerValidation))] public partial class CustomerWithMetadataType { public System.Guid UpdatedBy_Id { get; set; } public class CustomerValidation { [JsonIgnore] public System.Guid UpdatedBy_Id { get; set; } } } [Test] public void SerializeMetadataType() { CustomerWithMetadataType c = new CustomerWithMetadataType(); c.UpdatedBy_Id = Guid.NewGuid(); string json = JsonConvert.SerializeObject(c); Assert.AreEqual("{}", json); CustomerWithMetadataType c2 = JsonConvert.DeserializeObject("{'UpdatedBy_Id':'F6E0666D-13C7-4745-B486-800812C8F6DE'}"); Assert.AreEqual(Guid.Empty, c2.UpdatedBy_Id); } [Serializable] public partial class FaqItem { public FaqItem() { this.Sections = new HashSet(); } public int FaqId { get; set; } public string Name { get; set; } public bool IsDeleted { get; set; } public virtual ICollection Sections { get; set; } } [MetadataType(typeof(FaqItemMetadata))] partial class FaqItem { [JsonProperty("FullSectionsProp")] public ICollection FullSections { get { return Sections; } } } public class FaqItemMetadata { [JsonIgnore] public virtual ICollection Sections { get; set; } } public class FaqSection { } public class FaqItemProxy : FaqItem { public bool IsProxy { get; set; } public override ICollection Sections { get { return base.Sections; } set { base.Sections = value; } } } [Test] public void SerializeMetadataType2() { FaqItem c = new FaqItem(); c.FaqId = 1; c.Sections.Add(new FaqSection()); string json = JsonConvert.SerializeObject(c, Formatting.Indented); Console.WriteLine(json); StringAssert.AreEqual(@"{ ""FaqId"": 1, ""Name"": null, ""IsDeleted"": false, ""FullSectionsProp"": [ {} ] }", json); FaqItem c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(1, c2.FaqId); Assert.AreEqual(1, c2.Sections.Count); } [Test] public void SerializeMetadataTypeInheritance() { FaqItemProxy c = new FaqItemProxy(); c.FaqId = 1; c.Sections.Add(new FaqSection()); c.IsProxy = true; string json = JsonConvert.SerializeObject(c, Formatting.Indented); Console.WriteLine(json); StringAssert.AreEqual(@"{ ""IsProxy"": true, ""FaqId"": 1, ""Name"": null, ""IsDeleted"": false, ""FullSectionsProp"": [ {} ] }", json); FaqItemProxy c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(1, c2.FaqId); Assert.AreEqual(1, c2.Sections.Count); } #endif public class NullTestClass { public JObject Value1 { get; set; } public JValue Value2 { get; set; } public JRaw Value3 { get; set; } public JToken Value4 { get; set; } public object Value5 { get; set; } } [Test] public void DeserializeNullToJTokenProperty() { NullTestClass otc = JsonConvert.DeserializeObject(@"{ ""Value1"": null, ""Value2"": null, ""Value3"": null, ""Value4"": null, ""Value5"": null }"); Assert.IsNull(otc.Value1); Assert.AreEqual(JTokenType.Null, otc.Value2.Type); Assert.AreEqual(JTokenType.Raw, otc.Value3.Type); Assert.AreEqual(JTokenType.Null, otc.Value4.Type); Assert.IsNull(otc.Value5); } public class Link { /// /// The unique identifier. /// public int Id; /// /// The parent information identifier. /// public int ParentId; /// /// The child information identifier. /// public int ChildId; } #if !(NET20 || NET35 || PORTABLE40 || PORTABLE || ASPNETCORE50) [Test] public void ReadIntegerWithError() { string json = @"{ ParentId: 1, ChildId: 333333333333333333333333333333333333333 }"; Link l = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { Error = (s, a) => a.ErrorContext.Handled = true }); Assert.AreEqual(0, l.ChildId); } #endif #if !(NET20 || NET35) [Test] public void DeserializeObservableCollection() { ObservableCollection s = JsonConvert.DeserializeObject>("['1','2']"); Assert.AreEqual(2, s.Count); Assert.AreEqual("1", s[0]); Assert.AreEqual("2", s[1]); } #endif #if !NET20 [Test] public void PopulateResetSettings() { JsonTextReader reader = new JsonTextReader(new StringReader(@"[""2000-01-01T01:01:01+00:00""]")); Assert.AreEqual(DateParseHandling.DateTime, reader.DateParseHandling); JsonSerializer serializer = new JsonSerializer(); serializer.DateParseHandling = DateParseHandling.DateTimeOffset; IList l = new List(); serializer.Populate(reader, l); Assert.AreEqual(typeof(DateTimeOffset), l[0].GetType()); Assert.AreEqual(new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.Zero), l[0]); Assert.AreEqual(DateParseHandling.DateTime, reader.DateParseHandling); } #endif public class BaseClass { internal bool IsTransient { get; set; } } public class ChildClass : BaseClass { public new bool IsTransient { get; set; } } [Test] public void NewProperty() { Assert.AreEqual(@"{""IsTransient"":true}", JsonConvert.SerializeObject(new ChildClass { IsTransient = true })); var childClass = JsonConvert.DeserializeObject(@"{""IsTransient"":true}"); Assert.AreEqual(true, childClass.IsTransient); } public class BaseClassVirtual { internal virtual bool IsTransient { get; set; } } public class ChildClassVirtual : BaseClassVirtual { public virtual new bool IsTransient { get; set; } } [Test] public void NewPropertyVirtual() { Assert.AreEqual(@"{""IsTransient"":true}", JsonConvert.SerializeObject(new ChildClassVirtual { IsTransient = true })); var childClass = JsonConvert.DeserializeObject(@"{""IsTransient"":true}"); Assert.AreEqual(true, childClass.IsTransient); } public class ResponseWithNewGenericProperty : SimpleResponse { public new T Data { get; set; } } public class ResponseWithNewGenericPropertyVirtual : SimpleResponse { public virtual new T Data { get; set; } } public class ResponseWithNewGenericPropertyOverride : ResponseWithNewGenericPropertyVirtual { public override T Data { get; set; } } public abstract class SimpleResponse { public string Result { get; set; } public string Message { get; set; } public object Data { get; set; } protected SimpleResponse() { } protected SimpleResponse(string message) { Message = message; } } [Test] public void CanSerializeWithBuiltInTypeAsGenericArgument() { var input = new ResponseWithNewGenericProperty() { Message = "Trying out integer as type parameter", Data = 25, Result = "This should be fine" }; var json = JsonConvert.SerializeObject(input); var deserialized = JsonConvert.DeserializeObject>(json); Assert.AreEqual(input.Data, deserialized.Data); Assert.AreEqual(input.Message, deserialized.Message); Assert.AreEqual(input.Result, deserialized.Result); } [Test] public void CanSerializeWithBuiltInTypeAsGenericArgumentVirtual() { var input = new ResponseWithNewGenericPropertyVirtual() { Message = "Trying out integer as type parameter", Data = 25, Result = "This should be fine" }; var json = JsonConvert.SerializeObject(input); var deserialized = JsonConvert.DeserializeObject>(json); Assert.AreEqual(input.Data, deserialized.Data); Assert.AreEqual(input.Message, deserialized.Message); Assert.AreEqual(input.Result, deserialized.Result); } [Test] public void CanSerializeWithBuiltInTypeAsGenericArgumentOverride() { var input = new ResponseWithNewGenericPropertyOverride() { Message = "Trying out integer as type parameter", Data = 25, Result = "This should be fine" }; var json = JsonConvert.SerializeObject(input); var deserialized = JsonConvert.DeserializeObject>(json); Assert.AreEqual(input.Data, deserialized.Data); Assert.AreEqual(input.Message, deserialized.Message); Assert.AreEqual(input.Result, deserialized.Result); } [Test] public void CanSerializedWithGenericClosedTypeAsArgument() { var input = new ResponseWithNewGenericProperty>() { Message = "More complex case - generic list of int", Data = Enumerable.Range(50, 70).ToList(), Result = "This should be fine too" }; var json = JsonConvert.SerializeObject(input); var deserialized = JsonConvert.DeserializeObject>>(json); CollectionAssert.AreEqual(input.Data, deserialized.Data); Assert.AreEqual(input.Message, deserialized.Message); Assert.AreEqual(input.Result, deserialized.Result); } [Test] public void DeserializeJObjectWithComments() { string json = @"/* Test */ { /*Test*/""A"":/* Test */true/* Test */, /* Test */""B"":/* Test */false/* Test */, /* Test */""C"":/* Test */[ /* Test */ 1/* Test */ ]/* Test */ } /* Test */"; JObject o = (JObject)JsonConvert.DeserializeObject(json); Assert.AreEqual(3, o.Count); Assert.AreEqual(true, (bool)o["A"]); Assert.AreEqual(false, (bool)o["B"]); Assert.AreEqual(3, o["C"].Count()); Assert.AreEqual(JTokenType.Comment, o["C"][0].Type); Assert.AreEqual(1, (int)o["C"][1]); Assert.AreEqual(JTokenType.Comment, o["C"][2].Type); Assert.IsTrue(JToken.DeepEquals(o, JObject.Parse(json))); json = @"{/* Test */}"; o = (JObject)JsonConvert.DeserializeObject(json); Assert.AreEqual(0, o.Count); Assert.IsTrue(JToken.DeepEquals(o, JObject.Parse(json))); json = @"{""A"": true/* Test */}"; o = (JObject)JsonConvert.DeserializeObject(json); Assert.AreEqual(1, o.Count); Assert.AreEqual(true, (bool)o["A"]); Assert.IsTrue(JToken.DeepEquals(o, JObject.Parse(json))); } public class CommentTestObject { public bool? A { get; set; } } [Test] public void DeserializeCommentTestObjectWithComments() { CommentTestObject o = JsonConvert.DeserializeObject(@"{/* Test */}"); Assert.AreEqual(null, o.A); o = JsonConvert.DeserializeObject(@"{""A"": true/* Test */}"); Assert.AreEqual(true, o.A); } [Test] public void JsonSerializerProperties() { JsonSerializer serializer = new JsonSerializer(); DefaultSerializationBinder customBinder = new DefaultSerializationBinder(); serializer.Binder = customBinder; Assert.AreEqual(customBinder, serializer.Binder); serializer.CheckAdditionalContent = true; Assert.AreEqual(true, serializer.CheckAdditionalContent); serializer.ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor; Assert.AreEqual(ConstructorHandling.AllowNonPublicDefaultConstructor, serializer.ConstructorHandling); #if !(NETFX_CORE || ASPNETCORE50) serializer.Context = new StreamingContext(StreamingContextStates.Other); Assert.AreEqual(new StreamingContext(StreamingContextStates.Other), serializer.Context); #endif CamelCasePropertyNamesContractResolver resolver = new CamelCasePropertyNamesContractResolver(); serializer.ContractResolver = resolver; Assert.AreEqual(resolver, serializer.ContractResolver); serializer.Converters.Add(new StringEnumConverter()); Assert.AreEqual(1, serializer.Converters.Count); serializer.Culture = new CultureInfo("en-nz"); Assert.AreEqual("en-NZ", serializer.Culture.ToString()); serializer.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat; Assert.AreEqual(DateFormatHandling.MicrosoftDateFormat, serializer.DateFormatHandling); serializer.DateFormatString = "yyyy"; Assert.AreEqual("yyyy", serializer.DateFormatString); serializer.DateParseHandling = DateParseHandling.None; Assert.AreEqual(DateParseHandling.None, serializer.DateParseHandling); serializer.DateTimeZoneHandling = DateTimeZoneHandling.Utc; Assert.AreEqual(DateTimeZoneHandling.Utc, serializer.DateTimeZoneHandling); serializer.DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate; Assert.AreEqual(DefaultValueHandling.IgnoreAndPopulate, serializer.DefaultValueHandling); serializer.FloatFormatHandling = FloatFormatHandling.Symbol; Assert.AreEqual(FloatFormatHandling.Symbol, serializer.FloatFormatHandling); serializer.FloatParseHandling = FloatParseHandling.Decimal; Assert.AreEqual(FloatParseHandling.Decimal, serializer.FloatParseHandling); serializer.Formatting = Formatting.Indented; Assert.AreEqual(Formatting.Indented, serializer.Formatting); serializer.MaxDepth = 9001; Assert.AreEqual(9001, serializer.MaxDepth); serializer.MissingMemberHandling = MissingMemberHandling.Error; Assert.AreEqual(MissingMemberHandling.Error, serializer.MissingMemberHandling); serializer.NullValueHandling = NullValueHandling.Ignore; Assert.AreEqual(NullValueHandling.Ignore, serializer.NullValueHandling); serializer.ObjectCreationHandling = ObjectCreationHandling.Replace; Assert.AreEqual(ObjectCreationHandling.Replace, serializer.ObjectCreationHandling); serializer.PreserveReferencesHandling = PreserveReferencesHandling.All; Assert.AreEqual(PreserveReferencesHandling.All, serializer.PreserveReferencesHandling); serializer.ReferenceLoopHandling = ReferenceLoopHandling.Ignore; Assert.AreEqual(ReferenceLoopHandling.Ignore, serializer.ReferenceLoopHandling); IdReferenceResolver referenceResolver = new IdReferenceResolver(); serializer.ReferenceResolver = referenceResolver; Assert.AreEqual(referenceResolver, serializer.ReferenceResolver); serializer.StringEscapeHandling = StringEscapeHandling.EscapeNonAscii; Assert.AreEqual(StringEscapeHandling.EscapeNonAscii, serializer.StringEscapeHandling); MemoryTraceWriter traceWriter = new MemoryTraceWriter(); serializer.TraceWriter = traceWriter; Assert.AreEqual(traceWriter, serializer.TraceWriter); #if !(PORTABLE || PORTABLE40 || NETFX_CORE || NET20 || ASPNETCORE50) serializer.TypeNameAssemblyFormat = FormatterAssemblyStyle.Full; Assert.AreEqual(FormatterAssemblyStyle.Full, serializer.TypeNameAssemblyFormat); #endif serializer.TypeNameHandling = TypeNameHandling.All; Assert.AreEqual(TypeNameHandling.All, serializer.TypeNameHandling); } [Test] public void JsonSerializerSettingsProperties() { JsonSerializerSettings settings = new JsonSerializerSettings(); DefaultSerializationBinder customBinder = new DefaultSerializationBinder(); settings.Binder = customBinder; Assert.AreEqual(customBinder, settings.Binder); settings.CheckAdditionalContent = true; Assert.AreEqual(true, settings.CheckAdditionalContent); settings.ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor; Assert.AreEqual(ConstructorHandling.AllowNonPublicDefaultConstructor, settings.ConstructorHandling); #if !(NETFX_CORE || ASPNETCORE50) settings.Context = new StreamingContext(StreamingContextStates.Other); Assert.AreEqual(new StreamingContext(StreamingContextStates.Other), settings.Context); #endif CamelCasePropertyNamesContractResolver resolver = new CamelCasePropertyNamesContractResolver(); settings.ContractResolver = resolver; Assert.AreEqual(resolver, settings.ContractResolver); settings.Converters.Add(new StringEnumConverter()); Assert.AreEqual(1, settings.Converters.Count); settings.Culture = new CultureInfo("en-nz"); Assert.AreEqual("en-NZ", settings.Culture.ToString()); settings.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat; Assert.AreEqual(DateFormatHandling.MicrosoftDateFormat, settings.DateFormatHandling); settings.DateFormatString = "yyyy"; Assert.AreEqual("yyyy", settings.DateFormatString); settings.DateParseHandling = DateParseHandling.None; Assert.AreEqual(DateParseHandling.None, settings.DateParseHandling); settings.DateTimeZoneHandling = DateTimeZoneHandling.Utc; Assert.AreEqual(DateTimeZoneHandling.Utc, settings.DateTimeZoneHandling); settings.DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate; Assert.AreEqual(DefaultValueHandling.IgnoreAndPopulate, settings.DefaultValueHandling); settings.FloatFormatHandling = FloatFormatHandling.Symbol; Assert.AreEqual(FloatFormatHandling.Symbol, settings.FloatFormatHandling); settings.FloatParseHandling = FloatParseHandling.Decimal; Assert.AreEqual(FloatParseHandling.Decimal, settings.FloatParseHandling); settings.Formatting = Formatting.Indented; Assert.AreEqual(Formatting.Indented, settings.Formatting); settings.MaxDepth = 9001; Assert.AreEqual(9001, settings.MaxDepth); settings.MissingMemberHandling = MissingMemberHandling.Error; Assert.AreEqual(MissingMemberHandling.Error, settings.MissingMemberHandling); settings.NullValueHandling = NullValueHandling.Ignore; Assert.AreEqual(NullValueHandling.Ignore, settings.NullValueHandling); settings.ObjectCreationHandling = ObjectCreationHandling.Replace; Assert.AreEqual(ObjectCreationHandling.Replace, settings.ObjectCreationHandling); settings.PreserveReferencesHandling = PreserveReferencesHandling.All; Assert.AreEqual(PreserveReferencesHandling.All, settings.PreserveReferencesHandling); settings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore; Assert.AreEqual(ReferenceLoopHandling.Ignore, settings.ReferenceLoopHandling); IdReferenceResolver referenceResolver = new IdReferenceResolver(); settings.ReferenceResolver = referenceResolver; Assert.AreEqual(referenceResolver, settings.ReferenceResolver); settings.StringEscapeHandling = StringEscapeHandling.EscapeNonAscii; Assert.AreEqual(StringEscapeHandling.EscapeNonAscii, settings.StringEscapeHandling); MemoryTraceWriter traceWriter = new MemoryTraceWriter(); settings.TraceWriter = traceWriter; Assert.AreEqual(traceWriter, settings.TraceWriter); #if !(PORTABLE || PORTABLE40 || NETFX_CORE || NET20 || ASPNETCORE50) settings.TypeNameAssemblyFormat = FormatterAssemblyStyle.Full; Assert.AreEqual(FormatterAssemblyStyle.Full, settings.TypeNameAssemblyFormat); #endif settings.TypeNameHandling = TypeNameHandling.All; Assert.AreEqual(TypeNameHandling.All, settings.TypeNameHandling); } [Test] public void JsonSerializerProxyProperties() { JsonSerializerProxy serializerProxy = new JsonSerializerProxy(new JsonSerializerInternalReader(new JsonSerializer())); DefaultSerializationBinder customBinder = new DefaultSerializationBinder(); serializerProxy.Binder = customBinder; Assert.AreEqual(customBinder, serializerProxy.Binder); serializerProxy.CheckAdditionalContent = true; Assert.AreEqual(true, serializerProxy.CheckAdditionalContent); serializerProxy.ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor; Assert.AreEqual(ConstructorHandling.AllowNonPublicDefaultConstructor, serializerProxy.ConstructorHandling); #if !(NETFX_CORE || ASPNETCORE50) serializerProxy.Context = new StreamingContext(StreamingContextStates.Other); Assert.AreEqual(new StreamingContext(StreamingContextStates.Other), serializerProxy.Context); #endif CamelCasePropertyNamesContractResolver resolver = new CamelCasePropertyNamesContractResolver(); serializerProxy.ContractResolver = resolver; Assert.AreEqual(resolver, serializerProxy.ContractResolver); serializerProxy.Converters.Add(new StringEnumConverter()); Assert.AreEqual(1, serializerProxy.Converters.Count); serializerProxy.Culture = new CultureInfo("en-nz"); Assert.AreEqual("en-NZ", serializerProxy.Culture.ToString()); serializerProxy.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat; Assert.AreEqual(DateFormatHandling.MicrosoftDateFormat, serializerProxy.DateFormatHandling); serializerProxy.DateFormatString = "yyyy"; Assert.AreEqual("yyyy", serializerProxy.DateFormatString); serializerProxy.DateParseHandling = DateParseHandling.None; Assert.AreEqual(DateParseHandling.None, serializerProxy.DateParseHandling); serializerProxy.DateTimeZoneHandling = DateTimeZoneHandling.Utc; Assert.AreEqual(DateTimeZoneHandling.Utc, serializerProxy.DateTimeZoneHandling); serializerProxy.DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate; Assert.AreEqual(DefaultValueHandling.IgnoreAndPopulate, serializerProxy.DefaultValueHandling); serializerProxy.FloatFormatHandling = FloatFormatHandling.Symbol; Assert.AreEqual(FloatFormatHandling.Symbol, serializerProxy.FloatFormatHandling); serializerProxy.FloatParseHandling = FloatParseHandling.Decimal; Assert.AreEqual(FloatParseHandling.Decimal, serializerProxy.FloatParseHandling); serializerProxy.Formatting = Formatting.Indented; Assert.AreEqual(Formatting.Indented, serializerProxy.Formatting); serializerProxy.MaxDepth = 9001; Assert.AreEqual(9001, serializerProxy.MaxDepth); serializerProxy.MissingMemberHandling = MissingMemberHandling.Error; Assert.AreEqual(MissingMemberHandling.Error, serializerProxy.MissingMemberHandling); serializerProxy.NullValueHandling = NullValueHandling.Ignore; Assert.AreEqual(NullValueHandling.Ignore, serializerProxy.NullValueHandling); serializerProxy.ObjectCreationHandling = ObjectCreationHandling.Replace; Assert.AreEqual(ObjectCreationHandling.Replace, serializerProxy.ObjectCreationHandling); serializerProxy.PreserveReferencesHandling = PreserveReferencesHandling.All; Assert.AreEqual(PreserveReferencesHandling.All, serializerProxy.PreserveReferencesHandling); serializerProxy.ReferenceLoopHandling = ReferenceLoopHandling.Ignore; Assert.AreEqual(ReferenceLoopHandling.Ignore, serializerProxy.ReferenceLoopHandling); IdReferenceResolver referenceResolver = new IdReferenceResolver(); serializerProxy.ReferenceResolver = referenceResolver; Assert.AreEqual(referenceResolver, serializerProxy.ReferenceResolver); serializerProxy.StringEscapeHandling = StringEscapeHandling.EscapeNonAscii; Assert.AreEqual(StringEscapeHandling.EscapeNonAscii, serializerProxy.StringEscapeHandling); MemoryTraceWriter traceWriter = new MemoryTraceWriter(); serializerProxy.TraceWriter = traceWriter; Assert.AreEqual(traceWriter, serializerProxy.TraceWriter); #if !(PORTABLE || PORTABLE40 || NETFX_CORE || NET20 || ASPNETCORE50) serializerProxy.TypeNameAssemblyFormat = FormatterAssemblyStyle.Full; Assert.AreEqual(FormatterAssemblyStyle.Full, serializerProxy.TypeNameAssemblyFormat); #endif serializerProxy.TypeNameHandling = TypeNameHandling.All; Assert.AreEqual(TypeNameHandling.All, serializerProxy.TypeNameHandling); } #if !(NETFX_CORE || PORTABLE || PORTABLE40 || ASPNETCORE50) [Test] public void DeserializeISerializableIConvertible() { Ratio ratio = new Ratio(2, 1); string json = JsonConvert.SerializeObject(ratio); Assert.AreEqual(@"{""n"":2,""d"":1}", json); Ratio ratio2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(ratio.Denominator, ratio2.Denominator); Assert.AreEqual(ratio.Numerator, ratio2.Numerator); } public class PreserveReferencesCallbackTestObject : ISerializable { internal string _stringValue; internal int _intValue; internal PersonReference _person1; internal PersonReference _person2; internal PersonReference _person3; internal PreserveReferencesCallbackTestObject _parent; internal SerializationInfo _serializationInfo; public PreserveReferencesCallbackTestObject(string stringValue, int intValue, PersonReference p1, PersonReference p2, PersonReference p3) { _stringValue = stringValue; _intValue = intValue; _person1 = p1; _person2 = p2; _person3 = p3; } protected PreserveReferencesCallbackTestObject(SerializationInfo info, StreamingContext context) { _serializationInfo = info; } public void GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue("stringValue", _stringValue); info.AddValue("intValue", _intValue); info.AddValue("person1", _person1, typeof(PersonReference)); info.AddValue("person2", _person2, typeof(PersonReference)); info.AddValue("person3", _person3, typeof(PersonReference)); info.AddValue("parent", _parent, typeof(PreserveReferencesCallbackTestObject)); } [OnDeserialized] private void OnDeserializedMethod(StreamingContext context) { if (_serializationInfo == null) return; _stringValue = _serializationInfo.GetString("stringValue"); _intValue = _serializationInfo.GetInt32("intValue"); _person1 = (PersonReference)_serializationInfo.GetValue("person1", typeof(PersonReference)); _person2 = (PersonReference)_serializationInfo.GetValue("person2", typeof(PersonReference)); _person3 = (PersonReference)_serializationInfo.GetValue("person3", typeof(PersonReference)); _parent = (PreserveReferencesCallbackTestObject)_serializationInfo.GetValue("parent", typeof(PreserveReferencesCallbackTestObject)); _serializationInfo = null; } } [Test] public void PreserveReferencesCallbackTest() { var p1 = new PersonReference { Name = "John Smith" }; var p2 = new PersonReference { Name = "Mary Sue", }; p1.Spouse = p2; p2.Spouse = p1; var obj = new PreserveReferencesCallbackTestObject("string!", 42, p1, p2, p1); obj._parent = obj; var settings = new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All, Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(obj, settings); StringAssert.AreEqual(json, @"{ ""$id"": ""1"", ""stringValue"": ""string!"", ""intValue"": 42, ""person1"": { ""$id"": ""2"", ""Name"": ""John Smith"", ""Spouse"": { ""$id"": ""3"", ""Name"": ""Mary Sue"", ""Spouse"": { ""$ref"": ""2"" } } }, ""person2"": { ""$ref"": ""3"" }, ""person3"": { ""$ref"": ""2"" }, ""parent"": { ""$ref"": ""1"" } }"); PreserveReferencesCallbackTestObject obj2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(obj._stringValue, obj2._stringValue); Assert.AreEqual(obj._intValue, obj2._intValue); Assert.AreEqual(obj._person1.Name, obj2._person1.Name); Assert.AreEqual(obj._person2.Name, obj2._person2.Name); Assert.AreEqual(obj._person3.Name, obj2._person3.Name); Assert.AreEqual(obj2._person1, obj2._person3); Assert.AreEqual(obj2._person1.Spouse, obj2._person2); Assert.AreEqual(obj2._person2.Spouse, obj2._person1); Assert.AreEqual(obj2._parent, obj2); } #endif [Test] public void DeserializeLargeFloat() { object o = JsonConvert.DeserializeObject("100000000000000000000000000000000000000.0"); CustomAssert.IsInstanceOfType(typeof(double), o); Assert.IsTrue(MathUtils.ApproxEquals(1E+38, (double)o)); } [Test] public void SerializeDeserializeRegex() { Regex regex = new Regex("(hi)", RegexOptions.CultureInvariant); string json = JsonConvert.SerializeObject(regex, Formatting.Indented); Regex r2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("(hi)", r2.ToString()); Assert.AreEqual(RegexOptions.CultureInvariant, r2.Options); } [Test] public void EmbedJValueStringInNewJObject() { string s = null; var v = new JValue(s); var o = JObject.FromObject(new { title = v }); JObject oo = new JObject { {"title", v} }; string output = o.ToString(); Assert.AreEqual(null, v.Value); Assert.AreEqual(JTokenType.String, v.Type); StringAssert.AreEqual(@"{ ""title"": null }", output); } // bug: the generic member (T) that hides the base member will not // be used when serializing and deserializing the object, // resulting in unexpected behavior during serialization and deserialization. public class Foo1 { public object foo { get; set; } } public class Bar1 { public object bar { get; set; } } public class Foo1 : Foo1 { public new T foo { get; set; } public T foo2 { get; set; } } public class FooBar1 : Foo1 { public new Bar1 foo { get; set; } } [Test] public void BaseClassSerializesAsExpected() { var original = new Foo1 { foo = "value" }; var json = JsonConvert.SerializeObject(original); var expectedJson = @"{""foo"":""value""}"; Assert.AreEqual(expectedJson, json); // passes } [Test] public void BaseClassDeserializesAsExpected() { var json = @"{""foo"":""value""}"; var deserialized = JsonConvert.DeserializeObject(json); Assert.AreEqual("value", deserialized.foo); // passes } [Test] public void DerivedClassHidingBasePropertySerializesAsExpected() { var original = new FooBar1 { foo = new Bar1 { bar = "value" } }; var json = JsonConvert.SerializeObject(original); var expectedJson = @"{""foo"":{""bar"":""value""}}"; Assert.AreEqual(expectedJson, json); // passes } [Test] public void DerivedClassHidingBasePropertyDeserializesAsExpected() { var json = @"{""foo"":{""bar"":""value""}}"; var deserialized = JsonConvert.DeserializeObject(json); Assert.IsNotNull(deserialized.foo); // passes Assert.AreEqual("value", deserialized.foo.bar); // passes } [Test] public void DerivedGenericClassHidingBasePropertySerializesAsExpected() { var original = new Foo1 { foo = new Bar1 { bar = "value" }, foo2 = new Bar1 { bar = "value2" } }; var json = JsonConvert.SerializeObject(original); var expectedJson = @"{""foo"":{""bar"":""value""},""foo2"":{""bar"":""value2""}}"; Assert.AreEqual(expectedJson, json); } [Test] public void DerivedGenericClassHidingBasePropertyDeserializesAsExpected() { var json = @"{""foo"":{""bar"":""value""},""foo2"":{""bar"":""value2""}}"; var deserialized = JsonConvert.DeserializeObject>(json); Assert.IsNotNull(deserialized.foo2); // passes (bug only occurs for generics that /hide/ another property) Assert.AreEqual("value2", deserialized.foo2.bar); // also passes, with no issue Assert.IsNotNull(deserialized.foo); Assert.AreEqual("value", deserialized.foo.bar); } #if !(NETFX_CORE || ASPNETCORE50) [Test] public void ConversionOperator() { // Creating a simple dictionary that has a non-string key var dictStore = new Dictionary(); for (var i = 0; i < 800; i++) { dictStore.Add(new DictionaryKeyCast(i.ToString(CultureInfo.InvariantCulture), i), i); } var settings = new JsonSerializerSettings { Formatting = Formatting.Indented }; var jsonSerializer = JsonSerializer.Create(settings); var ms = new MemoryStream(); var streamWriter = new StreamWriter(ms); jsonSerializer.Serialize(streamWriter, dictStore); streamWriter.Flush(); ms.Seek(0, SeekOrigin.Begin); var stopWatch = Stopwatch.StartNew(); var deserialize = jsonSerializer.Deserialize(new StreamReader(ms), typeof(Dictionary)); stopWatch.Stop(); Console.WriteLine("Time elapsed: " + stopWatch.ElapsedMilliseconds); } #endif internal class DictionaryKeyCast { private String _name; private int _number; public DictionaryKeyCast(String name, int number) { _name = name; _number = number; } public override string ToString() { return _name + " " + _number; } public static implicit operator DictionaryKeyCast(string dictionaryKey) { var strings = dictionaryKey.Split(' '); return new DictionaryKeyCast(strings[0], Convert.ToInt32(strings[1])); } } #if !NET20 [DataContract] public class BaseDataContractWithHidden { [DataMember(Name = "virtualMember")] public virtual string VirtualMember { get; set; } [DataMember(Name = "nonVirtualMember")] public string NonVirtualMember { get; set; } public virtual object NewMember { get; set; } } public class ChildDataContractWithHidden : BaseDataContractWithHidden { [DataMember(Name = "NewMember")] public new virtual string NewMember { get; set; } public override string VirtualMember { get; set; } public string AddedMember { get; set; } } [Test] public void ChildDataContractTestWithHidden() { var cc = new ChildDataContractWithHidden { VirtualMember = "VirtualMember!", NonVirtualMember = "NonVirtualMember!", NewMember = "NewMember!" }; string result = JsonConvert.SerializeObject(cc); Assert.AreEqual(@"{""NewMember"":""NewMember!"",""virtualMember"":""VirtualMember!"",""nonVirtualMember"":""NonVirtualMember!""}", result); } // ignore hiding members compiler warning #pragma warning disable 108,114 [DataContract] public class BaseWithContract { [DataMember(Name = "VirtualWithDataMemberBase")] public virtual string VirtualWithDataMember { get; set; } [DataMember] public virtual string Virtual { get; set; } [DataMember(Name = "WithDataMemberBase")] public string WithDataMember { get; set; } [DataMember] public string JustAProperty { get; set; } } [DataContract] public class BaseWithoutContract { [DataMember(Name = "VirtualWithDataMemberBase")] public virtual string VirtualWithDataMember { get; set; } [DataMember] public virtual string Virtual { get; set; } [DataMember(Name = "WithDataMemberBase")] public string WithDataMember { get; set; } [DataMember] public string JustAProperty { get; set; } } [DataContract] public class SubWithoutContractNewProperties : BaseWithContract { [DataMember(Name = "VirtualWithDataMemberSub")] public string VirtualWithDataMember { get; set; } public string Virtual { get; set; } [DataMember(Name = "WithDataMemberSub")] public string WithDataMember { get; set; } public string JustAProperty { get; set; } } [DataContract] public class SubWithoutContractVirtualProperties : BaseWithContract { public override string VirtualWithDataMember { get; set; } [DataMember(Name = "VirtualSub")] public override string Virtual { get; set; } } [DataContract] public class SubWithContractNewProperties : BaseWithContract { [DataMember(Name = "VirtualWithDataMemberSub")] public string VirtualWithDataMember { get; set; } [DataMember(Name = "Virtual2")] public string Virtual { get; set; } [DataMember(Name = "WithDataMemberSub")] public string WithDataMember { get; set; } [DataMember(Name = "JustAProperty2")] public string JustAProperty { get; set; } } [DataContract] public class SubWithContractVirtualProperties : BaseWithContract { [DataMember(Name = "VirtualWithDataMemberSub")] public virtual string VirtualWithDataMember { get; set; } } #pragma warning restore 108,114 [Test] public void SubWithoutContractNewPropertiesTest() { BaseWithContract baseWith = new SubWithoutContractNewProperties { JustAProperty = "JustAProperty!", Virtual = "Virtual!", VirtualWithDataMember = "VirtualWithDataMember!", WithDataMember = "WithDataMember!" }; baseWith.JustAProperty = "JustAProperty2!"; baseWith.Virtual = "Virtual2!"; baseWith.VirtualWithDataMember = "VirtualWithDataMember2!"; baseWith.WithDataMember = "WithDataMember2!"; string json = AssertSerializeDeserializeEqual(baseWith); StringAssert.AreEqual(@"{ ""JustAProperty"": ""JustAProperty2!"", ""Virtual"": ""Virtual2!"", ""VirtualWithDataMemberBase"": ""VirtualWithDataMember2!"", ""VirtualWithDataMemberSub"": ""VirtualWithDataMember!"", ""WithDataMemberBase"": ""WithDataMember2!"", ""WithDataMemberSub"": ""WithDataMember!"" }", json); } [Test] public void SubWithoutContractVirtualPropertiesTest() { BaseWithContract baseWith = new SubWithoutContractVirtualProperties { JustAProperty = "JustAProperty!", Virtual = "Virtual!", VirtualWithDataMember = "VirtualWithDataMember!", WithDataMember = "WithDataMember!" }; baseWith.JustAProperty = "JustAProperty2!"; baseWith.Virtual = "Virtual2!"; baseWith.VirtualWithDataMember = "VirtualWithDataMember2!"; baseWith.WithDataMember = "WithDataMember2!"; string json = JsonConvert.SerializeObject(baseWith, Formatting.Indented); Console.WriteLine(json); StringAssert.AreEqual(@"{ ""VirtualWithDataMemberBase"": ""VirtualWithDataMember2!"", ""VirtualSub"": ""Virtual2!"", ""WithDataMemberBase"": ""WithDataMember2!"", ""JustAProperty"": ""JustAProperty2!"" }", json); } [Test] public void SubWithContractNewPropertiesTest() { BaseWithContract baseWith = new SubWithContractNewProperties { JustAProperty = "JustAProperty!", Virtual = "Virtual!", VirtualWithDataMember = "VirtualWithDataMember!", WithDataMember = "WithDataMember!" }; baseWith.JustAProperty = "JustAProperty2!"; baseWith.Virtual = "Virtual2!"; baseWith.VirtualWithDataMember = "VirtualWithDataMember2!"; baseWith.WithDataMember = "WithDataMember2!"; string json = AssertSerializeDeserializeEqual(baseWith); StringAssert.AreEqual(@"{ ""JustAProperty"": ""JustAProperty2!"", ""JustAProperty2"": ""JustAProperty!"", ""Virtual"": ""Virtual2!"", ""Virtual2"": ""Virtual!"", ""VirtualWithDataMemberBase"": ""VirtualWithDataMember2!"", ""VirtualWithDataMemberSub"": ""VirtualWithDataMember!"", ""WithDataMemberBase"": ""WithDataMember2!"", ""WithDataMemberSub"": ""WithDataMember!"" }", json); } [Test] public void SubWithContractVirtualPropertiesTest() { BaseWithContract baseWith = new SubWithContractVirtualProperties { JustAProperty = "JustAProperty!", Virtual = "Virtual!", VirtualWithDataMember = "VirtualWithDataMember!", WithDataMember = "WithDataMember!" }; baseWith.JustAProperty = "JustAProperty2!"; baseWith.Virtual = "Virtual2!"; baseWith.VirtualWithDataMember = "VirtualWithDataMember2!"; baseWith.WithDataMember = "WithDataMember2!"; string json = AssertSerializeDeserializeEqual(baseWith); StringAssert.AreEqual(@"{ ""JustAProperty"": ""JustAProperty2!"", ""Virtual"": ""Virtual2!"", ""VirtualWithDataMemberBase"": ""VirtualWithDataMember2!"", ""VirtualWithDataMemberSub"": ""VirtualWithDataMember!"", ""WithDataMemberBase"": ""WithDataMember2!"" }", json); } private string AssertSerializeDeserializeEqual(object o) { MemoryStream ms = new MemoryStream(); DataContractJsonSerializer s = new DataContractJsonSerializer(o.GetType()); s.WriteObject(ms, o); var data = ms.ToArray(); JObject dataContractJson = JObject.Parse(Encoding.UTF8.GetString(data, 0, data.Length)); dataContractJson = new JObject(dataContractJson.Properties().OrderBy(p => p.Name)); JObject jsonNetJson = JObject.Parse(JsonConvert.SerializeObject(o)); jsonNetJson = new JObject(jsonNetJson.Properties().OrderBy(p => p.Name)); Console.WriteLine("Results for " + o.GetType().Name); Console.WriteLine("DataContractJsonSerializer: " + dataContractJson); Console.WriteLine("JsonDotNetSerializer : " + jsonNetJson); Assert.AreEqual(dataContractJson.Count, jsonNetJson.Count); foreach (KeyValuePair property in dataContractJson) { Assert.IsTrue(JToken.DeepEquals(jsonNetJson[property.Key], property.Value), "Property not equal: " + property.Key); } return jsonNetJson.ToString(); } #endif [Test] public void PersonTypedObjectDeserialization() { Store store = new Store(); string jsonText = JsonConvert.SerializeObject(store); Store deserializedStore = (Store)JsonConvert.DeserializeObject(jsonText, typeof(Store)); Assert.AreEqual(store.Establised, deserializedStore.Establised); Assert.AreEqual(store.product.Count, deserializedStore.product.Count); Console.WriteLine(jsonText); } [Test] public void TypedObjectDeserialization() { Product product = new Product(); product.Name = "Apple"; product.ExpiryDate = new DateTime(2008, 12, 28); product.Price = 3.99M; product.Sizes = new string[] { "Small", "Medium", "Large" }; string output = JsonConvert.SerializeObject(product); //{ // "Name": "Apple", // "ExpiryDate": "\/Date(1230375600000+1300)\/", // "Price": 3.99, // "Sizes": [ // "Small", // "Medium", // "Large" // ] //} Product deserializedProduct = (Product)JsonConvert.DeserializeObject(output, typeof(Product)); Assert.AreEqual("Apple", deserializedProduct.Name); Assert.AreEqual(new DateTime(2008, 12, 28), deserializedProduct.ExpiryDate); Assert.AreEqual(3.99m, deserializedProduct.Price); Assert.AreEqual("Small", deserializedProduct.Sizes[0]); Assert.AreEqual("Medium", deserializedProduct.Sizes[1]); Assert.AreEqual("Large", deserializedProduct.Sizes[2]); } //[Test] //public void Advanced() //{ // Product product = new Product(); // product.ExpiryDate = new DateTime(2008, 12, 28); // JsonSerializer serializer = new JsonSerializer(); // serializer.Converters.Add(new JavaScriptDateTimeConverter()); // serializer.NullValueHandling = NullValueHandling.Ignore; // using (StreamWriter sw = new StreamWriter(@"c:\json.txt")) // using (JsonWriter writer = new JsonTextWriter(sw)) // { // serializer.Serialize(writer, product); // // {"ExpiryDate":new Date(1230375600000),"Price":0} // } //} [Test] public void JsonConvertSerializer() { string value = @"{""Name"":""Orange"", ""Price"":3.99, ""ExpiryDate"":""01/24/2010 12:00:00""}"; Product p = JsonConvert.DeserializeObject(value, typeof(Product)) as Product; Assert.AreEqual("Orange", p.Name); Assert.AreEqual(new DateTime(2010, 1, 24, 12, 0, 0), p.ExpiryDate); Assert.AreEqual(3.99m, p.Price); } [Test] public void DeserializeJavaScriptDate() { DateTime dateValue = new DateTime(2010, 3, 30); Dictionary testDictionary = new Dictionary(); testDictionary["date"] = dateValue; string jsonText = JsonConvert.SerializeObject(testDictionary); #if !NET20 MemoryStream ms = new MemoryStream(); DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(Dictionary)); serializer.WriteObject(ms, testDictionary); byte[] data = ms.ToArray(); string output = Encoding.UTF8.GetString(data, 0, data.Length); #endif Dictionary deserializedDictionary = (Dictionary)JsonConvert.DeserializeObject(jsonText, typeof(Dictionary)); DateTime deserializedDate = (DateTime)deserializedDictionary["date"]; Assert.AreEqual(dateValue, deserializedDate); } [Test] public void TestMethodExecutorObject() { MethodExecutorObject executorObject = new MethodExecutorObject(); executorObject.serverClassName = "BanSubs"; executorObject.serverMethodParams = new object[] { "21321546", "101", "1236", "D:\\1.txt" }; executorObject.clientGetResultFunction = "ClientBanSubsCB"; string output = JsonConvert.SerializeObject(executorObject); MethodExecutorObject executorObject2 = JsonConvert.DeserializeObject(output, typeof(MethodExecutorObject)) as MethodExecutorObject; Assert.AreNotSame(executorObject, executorObject2); Assert.AreEqual(executorObject2.serverClassName, "BanSubs"); Assert.AreEqual(executorObject2.serverMethodParams.Length, 4); CustomAssert.Contains(executorObject2.serverMethodParams, "101"); Assert.AreEqual(executorObject2.clientGetResultFunction, "ClientBanSubsCB"); } #if !(NETFX_CORE || ASPNETCORE50) [Test] public void HashtableDeserialization() { string value = @"{""Name"":""Orange"", ""Price"":3.99, ""ExpiryDate"":""01/24/2010 12:00:00""}"; Hashtable p = JsonConvert.DeserializeObject(value, typeof(Hashtable)) as Hashtable; Assert.AreEqual("Orange", p["Name"].ToString()); } [Test] public void TypedHashtableDeserialization() { string value = @"{""Name"":""Orange"", ""Hash"":{""ExpiryDate"":""01/24/2010 12:00:00"",""UntypedArray"":[""01/24/2010 12:00:00""]}}"; TypedSubHashtable p = JsonConvert.DeserializeObject(value, typeof(TypedSubHashtable)) as TypedSubHashtable; Assert.AreEqual("01/24/2010 12:00:00", p.Hash["ExpiryDate"].ToString()); StringAssert.AreEqual(@"[ ""01/24/2010 12:00:00"" ]", p.Hash["UntypedArray"].ToString()); } #endif [Test] public void SerializeDeserializeGetOnlyProperty() { string value = JsonConvert.SerializeObject(new GetOnlyPropertyClass()); GetOnlyPropertyClass c = JsonConvert.DeserializeObject(value); Assert.AreEqual(c.Field, "Field"); Assert.AreEqual(c.GetOnlyProperty, "GetOnlyProperty"); } [Test] public void SerializeDeserializeSetOnlyProperty() { string value = JsonConvert.SerializeObject(new SetOnlyPropertyClass()); SetOnlyPropertyClass c = JsonConvert.DeserializeObject(value); Assert.AreEqual(c.Field, "Field"); } [Test] public void JsonIgnoreAttributeTest() { string json = JsonConvert.SerializeObject(new JsonIgnoreAttributeTestClass()); Assert.AreEqual(@"{""Field"":0,""Property"":21}", json); JsonIgnoreAttributeTestClass c = JsonConvert.DeserializeObject(@"{""Field"":99,""Property"":-1,""IgnoredField"":-1,""IgnoredObject"":[1,2,3,4,5]}"); Assert.AreEqual(0, c.IgnoredField); Assert.AreEqual(99, c.Field); } [Test] public void GoogleSearchAPI() { string json = @"{ results: [ { GsearchResultClass:""GwebSearch"", unescapedUrl : ""http://www.google.com/"", url : ""http://www.google.com/"", visibleUrl : ""www.google.com"", cacheUrl : ""http://www.google.com/search?q=cache:zhool8dxBV4J:www.google.com"", title : ""Google"", titleNoFormatting : ""Google"", content : ""Enables users to search the Web, Usenet, and images. Features include PageRank, caching and translation of results, and an option to find similar pages."" }, { GsearchResultClass:""GwebSearch"", unescapedUrl : ""http://news.google.com/"", url : ""http://news.google.com/"", visibleUrl : ""news.google.com"", cacheUrl : ""http://www.google.com/search?q=cache:Va_XShOz_twJ:news.google.com"", title : ""Google News"", titleNoFormatting : ""Google News"", content : ""Aggregated headlines and a search engine of many of the world's news sources."" }, { GsearchResultClass:""GwebSearch"", unescapedUrl : ""http://groups.google.com/"", url : ""http://groups.google.com/"", visibleUrl : ""groups.google.com"", cacheUrl : ""http://www.google.com/search?q=cache:x2uPD3hfkn0J:groups.google.com"", title : ""Google Groups"", titleNoFormatting : ""Google Groups"", content : ""Enables users to search and browse the Usenet archives which consist of over 700 million messages, and post new comments."" }, { GsearchResultClass:""GwebSearch"", unescapedUrl : ""http://maps.google.com/"", url : ""http://maps.google.com/"", visibleUrl : ""maps.google.com"", cacheUrl : ""http://www.google.com/search?q=cache:dkf5u2twBXIJ:maps.google.com"", title : ""Google Maps"", titleNoFormatting : ""Google Maps"", content : ""Provides directions, interactive maps, and satellite/aerial imagery of the United States. Can also search by keyword such as type of business."" } ], adResults: [ { GsearchResultClass:""GwebSearch.ad"", title : ""Gartner Symposium/ITxpo"", content1 : ""Meet brilliant Gartner IT analysts"", content2 : ""20-23 May 2007- Barcelona, Spain"", url : ""http://www.google.com/url?sa=L&ai=BVualExYGRo3hD5ianAPJvejjD8-s6ye7kdTwArbI4gTAlrECEAEYASDXtMMFOAFQubWAjvr_____AWDXw_4EiAEBmAEAyAEBgAIB&num=1&q=http://www.gartner.com/it/sym/2007/spr8/spr8.jsp%3Fsrc%3D_spain_07_%26WT.srch%3D1&usg=__CxRH06E4Xvm9Muq13S4MgMtnziY="", impressionUrl : ""http://www.google.com/uds/css/ad-indicator-on.gif?ai=BVualExYGRo3hD5ianAPJvejjD8-s6ye7kdTwArbI4gTAlrECEAEYASDXtMMFOAFQubWAjvr_____AWDXw_4EiAEBmAEAyAEBgAIB"", unescapedUrl : ""http://www.google.com/url?sa=L&ai=BVualExYGRo3hD5ianAPJvejjD8-s6ye7kdTwArbI4gTAlrECEAEYASDXtMMFOAFQubWAjvr_____AWDXw_4EiAEBmAEAyAEBgAIB&num=1&q=http://www.gartner.com/it/sym/2007/spr8/spr8.jsp%3Fsrc%3D_spain_07_%26WT.srch%3D1&usg=__CxRH06E4Xvm9Muq13S4MgMtnziY="", visibleUrl : ""www.gartner.com"" } ] } "; object o = JsonConvert.DeserializeObject(json); string s = string.Empty; s += s; } [Test] public void TorrentDeserializeTest() { string jsonText = @"{ """":"""", ""label"": [ [""SomeName"",6] ], ""torrents"": [ [""192D99A5C943555CB7F00A852821CF6D6DB3008A"",201,""filename.avi"",178311826,1000,178311826,72815250,408,1603,7,121430,""NameOfLabelPrevioslyDefined"",3,6,0,8,128954,-1,0], ], ""torrentc"": ""1816000723"" }"; JObject o = (JObject)JsonConvert.DeserializeObject(jsonText); Assert.AreEqual(4, o.Children().Count()); JToken torrentsArray = (JToken)o["torrents"]; JToken nestedTorrentsArray = (JToken)torrentsArray[0]; Assert.AreEqual(nestedTorrentsArray.Children().Count(), 19); } [Test] public void JsonPropertyClassSerialize() { JsonPropertyClass test = new JsonPropertyClass(); test.Pie = "Delicious"; test.SweetCakesCount = int.MaxValue; string jsonText = JsonConvert.SerializeObject(test); Assert.AreEqual(@"{""pie"":""Delicious"",""pie1"":""PieChart!"",""sweet_cakes_count"":2147483647}", jsonText); JsonPropertyClass test2 = JsonConvert.DeserializeObject(jsonText); Assert.AreEqual(test.Pie, test2.Pie); Assert.AreEqual(test.SweetCakesCount, test2.SweetCakesCount); } [Test] public void BadJsonPropertyClassSerialize() { ExceptionAssert.Throws(() => { JsonConvert.SerializeObject(new BadJsonPropertyClass()); }, @"A member with the name 'pie' already exists on 'Newtonsoft.Json.Tests.TestObjects.BadJsonPropertyClass'. Use the JsonPropertyAttribute to specify another name."); } #if !NET20 [Test] public void Unicode() { string json = @"[""PRE\u003cPOST""]"; DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(List)); List dataContractResult = (List)s.ReadObject(new MemoryStream(Encoding.UTF8.GetBytes(json))); List jsonNetResult = JsonConvert.DeserializeObject>(json); Assert.AreEqual(1, jsonNetResult.Count); Assert.AreEqual(dataContractResult[0], jsonNetResult[0]); } [Test] public void BackslashEqivilence() { string json = @"[""vvv\/vvv\tvvv\""vvv\bvvv\nvvv\rvvv\\vvv\fvvv""]"; #if !(NETFX_CORE || ASPNETCORE50) JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer(); List javaScriptSerializerResult = javaScriptSerializer.Deserialize>(json); #endif DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(List)); List dataContractResult = (List)s.ReadObject(new MemoryStream(Encoding.UTF8.GetBytes(json))); List jsonNetResult = JsonConvert.DeserializeObject>(json); Assert.AreEqual(1, jsonNetResult.Count); Assert.AreEqual(dataContractResult[0], jsonNetResult[0]); #if !(NETFX_CORE || ASPNETCORE50) Assert.AreEqual(javaScriptSerializerResult[0], jsonNetResult[0]); #endif } [Test] public void InvalidBackslash() { string json = @"[""vvv\jvvv""]"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject>(json); }, @"Bad JSON escape sequence: \j. Path '', line 1, position 7."); } [Test] public void DateTimeTest() { List testDates = new List { new DateTime(100, 1, 1, 1, 1, 1, DateTimeKind.Local), new DateTime(100, 1, 1, 1, 1, 1, DateTimeKind.Unspecified), new DateTime(100, 1, 1, 1, 1, 1, DateTimeKind.Utc), new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Local), new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Unspecified), new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Utc), }; MemoryStream ms = new MemoryStream(); DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(List)); s.WriteObject(ms, testDates); ms.Seek(0, SeekOrigin.Begin); StreamReader sr = new StreamReader(ms); string expected = sr.ReadToEnd(); string result = JsonConvert.SerializeObject(testDates, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); Assert.AreEqual(expected, result); } [Test] public void DateTimeOffsetIso() { List testDates = new List { new DateTimeOffset(new DateTime(100, 1, 1, 1, 1, 1, DateTimeKind.Utc)), new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.Zero), new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.FromHours(13)), new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.FromHours(-3.5)), }; string result = JsonConvert.SerializeObject(testDates); Assert.AreEqual(@"[""0100-01-01T01:01:01+00:00"",""2000-01-01T01:01:01+00:00"",""2000-01-01T01:01:01+13:00"",""2000-01-01T01:01:01-03:30""]", result); } [Test] public void DateTimeOffsetMsAjax() { List testDates = new List { new DateTimeOffset(new DateTime(100, 1, 1, 1, 1, 1, DateTimeKind.Utc)), new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.Zero), new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.FromHours(13)), new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.FromHours(-3.5)), }; string result = JsonConvert.SerializeObject(testDates, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); Assert.AreEqual(@"[""\/Date(-59011455539000+0000)\/"",""\/Date(946688461000+0000)\/"",""\/Date(946641661000+1300)\/"",""\/Date(946701061000-0330)\/""]", result); } #endif [Test] public void NonStringKeyDictionary() { Dictionary values = new Dictionary(); values.Add(-5, 6); values.Add(int.MinValue, int.MaxValue); string json = JsonConvert.SerializeObject(values); Assert.AreEqual(@"{""-5"":6,""-2147483648"":2147483647}", json); Dictionary newValues = JsonConvert.DeserializeObject>(json); CollectionAssert.AreEqual(values, newValues); } [Test] public void AnonymousObjectSerialization() { var anonymous = new { StringValue = "I am a string", IntValue = int.MaxValue, NestedAnonymous = new { NestedValue = byte.MaxValue }, NestedArray = new[] { 1, 2 }, Product = new Product() { Name = "TestProduct" } }; string json = JsonConvert.SerializeObject(anonymous); Assert.AreEqual(@"{""StringValue"":""I am a string"",""IntValue"":2147483647,""NestedAnonymous"":{""NestedValue"":255},""NestedArray"":[1,2],""Product"":{""Name"":""TestProduct"",""ExpiryDate"":""2000-01-01T00:00:00Z"",""Price"":0.0,""Sizes"":null}}", json); anonymous = JsonConvert.DeserializeAnonymousType(json, anonymous); Assert.AreEqual("I am a string", anonymous.StringValue); Assert.AreEqual(int.MaxValue, anonymous.IntValue); Assert.AreEqual(255, anonymous.NestedAnonymous.NestedValue); Assert.AreEqual(2, anonymous.NestedArray.Length); Assert.AreEqual(1, anonymous.NestedArray[0]); Assert.AreEqual(2, anonymous.NestedArray[1]); Assert.AreEqual("TestProduct", anonymous.Product.Name); } [Test] public void AnonymousObjectSerializationWithSetting() { DateTime d = new DateTime(2000, 1, 1); var anonymous = new { DateValue = d }; JsonSerializerSettings settings = new JsonSerializerSettings(); settings.Converters.Add(new IsoDateTimeConverter { DateTimeFormat = "yyyy" }); string json = JsonConvert.SerializeObject(anonymous, settings); Assert.AreEqual(@"{""DateValue"":""2000""}", json); anonymous = JsonConvert.DeserializeAnonymousType(json, anonymous, settings); Assert.AreEqual(d, anonymous.DateValue); } [Test] public void SerializeObject() { string json = JsonConvert.SerializeObject(new object()); Assert.AreEqual("{}", json); } [Test] public void SerializeNull() { string json = JsonConvert.SerializeObject(null); Assert.AreEqual("null", json); } [Test] public void CanDeserializeIntArrayWhenNotFirstPropertyInJson() { string json = "{foo:'hello',bar:[1,2,3]}"; ClassWithArray wibble = JsonConvert.DeserializeObject(json); Assert.AreEqual("hello", wibble.Foo); Assert.AreEqual(4, wibble.Bar.Count); Assert.AreEqual(int.MaxValue, wibble.Bar[0]); Assert.AreEqual(1, wibble.Bar[1]); Assert.AreEqual(2, wibble.Bar[2]); Assert.AreEqual(3, wibble.Bar[3]); } [Test] public void CanDeserializeIntArray_WhenArrayIsFirstPropertyInJson() { string json = "{bar:[1,2,3], foo:'hello'}"; ClassWithArray wibble = JsonConvert.DeserializeObject(json); Assert.AreEqual("hello", wibble.Foo); Assert.AreEqual(4, wibble.Bar.Count); Assert.AreEqual(int.MaxValue, wibble.Bar[0]); Assert.AreEqual(1, wibble.Bar[1]); Assert.AreEqual(2, wibble.Bar[2]); Assert.AreEqual(3, wibble.Bar[3]); } [Test] public void ObjectCreationHandlingReplace() { string json = "{bar:[1,2,3], foo:'hello'}"; JsonSerializer s = new JsonSerializer(); s.ObjectCreationHandling = ObjectCreationHandling.Replace; ClassWithArray wibble = (ClassWithArray)s.Deserialize(new StringReader(json), typeof(ClassWithArray)); Assert.AreEqual("hello", wibble.Foo); Assert.AreEqual(1, wibble.Bar.Count); } [Test] public void CanDeserializeSerializedJson() { ClassWithArray wibble = new ClassWithArray(); wibble.Foo = "hello"; wibble.Bar.Add(1); wibble.Bar.Add(2); wibble.Bar.Add(3); string json = JsonConvert.SerializeObject(wibble); ClassWithArray wibbleOut = JsonConvert.DeserializeObject(json); Assert.AreEqual("hello", wibbleOut.Foo); Assert.AreEqual(5, wibbleOut.Bar.Count); Assert.AreEqual(int.MaxValue, wibbleOut.Bar[0]); Assert.AreEqual(int.MaxValue, wibbleOut.Bar[1]); Assert.AreEqual(1, wibbleOut.Bar[2]); Assert.AreEqual(2, wibbleOut.Bar[3]); Assert.AreEqual(3, wibbleOut.Bar[4]); } [Test] public void SerializeConverableObjects() { string json = JsonConvert.SerializeObject(new ConverableMembers(), Formatting.Indented); string expected = null; #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) expected = @"{ ""String"": ""string"", ""Int32"": 2147483647, ""UInt32"": 4294967295, ""Byte"": 255, ""SByte"": 127, ""Short"": 32767, ""UShort"": 65535, ""Long"": 9223372036854775807, ""ULong"": 9223372036854775807, ""Double"": 1.7976931348623157E+308, ""Float"": 3.40282347E+38, ""DBNull"": null, ""Bool"": true, ""Char"": ""\u0000"" }"; #else expected = @"{ ""String"": ""string"", ""Int32"": 2147483647, ""UInt32"": 4294967295, ""Byte"": 255, ""SByte"": 127, ""Short"": 32767, ""UShort"": 65535, ""Long"": 9223372036854775807, ""ULong"": 9223372036854775807, ""Double"": 1.7976931348623157E+308, ""Float"": 3.40282347E+38, ""Bool"": true, ""Char"": ""\u0000"" }"; #endif StringAssert.AreEqual(expected, json); ConverableMembers c = JsonConvert.DeserializeObject(json); Assert.AreEqual("string", c.String); Assert.AreEqual(double.MaxValue, c.Double); #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) Assert.AreEqual(DBNull.Value, c.DBNull); #endif } [Test] public void SerializeStack() { Stack s = new Stack(); s.Push(1); s.Push(2); s.Push(3); string json = JsonConvert.SerializeObject(s); Assert.AreEqual("[3,2,1]", json); } [Test] public void FormattingOverride() { var obj = new { Formatting = "test" }; JsonSerializerSettings settings = new JsonSerializerSettings { Formatting = Formatting.Indented }; string indented = JsonConvert.SerializeObject(obj, settings); string none = JsonConvert.SerializeObject(obj, Formatting.None, settings); Assert.AreNotEqual(indented, none); } [Test] public void DateTimeTimeZone() { var date = new DateTime(2001, 4, 4, 0, 0, 0, DateTimeKind.Utc); string json = JsonConvert.SerializeObject(date); Assert.AreEqual(@"""2001-04-04T00:00:00Z""", json); } [Test] public void GuidTest() { Guid guid = new Guid("BED7F4EA-1A96-11d2-8F08-00A0C9A6186D"); string json = JsonConvert.SerializeObject(new ClassWithGuid { GuidField = guid }); Assert.AreEqual(@"{""GuidField"":""bed7f4ea-1a96-11d2-8f08-00a0c9a6186d""}", json); ClassWithGuid c = JsonConvert.DeserializeObject(json); Assert.AreEqual(guid, c.GuidField); } [Test] public void EnumTest() { string json = JsonConvert.SerializeObject(StringComparison.CurrentCultureIgnoreCase); Assert.AreEqual(@"1", json); StringComparison s = JsonConvert.DeserializeObject(json); Assert.AreEqual(StringComparison.CurrentCultureIgnoreCase, s); } public class ClassWithTimeSpan { public TimeSpan TimeSpanField; } [Test] public void TimeSpanTest() { TimeSpan ts = new TimeSpan(00, 23, 59, 1); string json = JsonConvert.SerializeObject(new ClassWithTimeSpan { TimeSpanField = ts }, Formatting.Indented); StringAssert.AreEqual(@"{ ""TimeSpanField"": ""23:59:01"" }", json); ClassWithTimeSpan c = JsonConvert.DeserializeObject(json); Assert.AreEqual(ts, c.TimeSpanField); } [Test] public void JsonIgnoreAttributeOnClassTest() { string json = JsonConvert.SerializeObject(new JsonIgnoreAttributeOnClassTestClass()); Assert.AreEqual(@"{""TheField"":0,""Property"":21}", json); JsonIgnoreAttributeOnClassTestClass c = JsonConvert.DeserializeObject(@"{""TheField"":99,""Property"":-1,""IgnoredField"":-1}"); Assert.AreEqual(0, c.IgnoredField); Assert.AreEqual(99, c.Field); } [Test] public void ConstructorCaseSensitivity() { ConstructorCaseSensitivityClass c = new ConstructorCaseSensitivityClass("param1", "Param1", "Param2"); string json = JsonConvert.SerializeObject(c); ConstructorCaseSensitivityClass deserialized = JsonConvert.DeserializeObject(json); Assert.AreEqual("param1", deserialized.param1); Assert.AreEqual("Param1", deserialized.Param1); Assert.AreEqual("Param2", deserialized.Param2); } [Test] public void SerializerShouldUseClassConverter() { ConverterPrecedenceClass c1 = new ConverterPrecedenceClass("!Test!"); string json = JsonConvert.SerializeObject(c1); Assert.AreEqual(@"[""Class"",""!Test!""]", json); ConverterPrecedenceClass c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("!Test!", c2.TestValue); } [Test] public void SerializerShouldUseClassConverterOverArgumentConverter() { ConverterPrecedenceClass c1 = new ConverterPrecedenceClass("!Test!"); string json = JsonConvert.SerializeObject(c1, new ArgumentConverterPrecedenceClassConverter()); Assert.AreEqual(@"[""Class"",""!Test!""]", json); ConverterPrecedenceClass c2 = JsonConvert.DeserializeObject(json, new ArgumentConverterPrecedenceClassConverter()); Assert.AreEqual("!Test!", c2.TestValue); } [Test] public void SerializerShouldUseMemberConverter_IsoDate() { DateTime testDate = new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc); MemberConverterClass m1 = new MemberConverterClass { DefaultConverter = testDate, MemberConverter = testDate }; string json = JsonConvert.SerializeObject(m1); Assert.AreEqual(@"{""DefaultConverter"":""1970-01-01T00:00:00Z"",""MemberConverter"":""1970-01-01T00:00:00Z""}", json); MemberConverterClass m2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(testDate, m2.DefaultConverter); Assert.AreEqual(testDate, m2.MemberConverter); } [Test] public void SerializerShouldUseMemberConverter_MsDate() { DateTime testDate = new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc); MemberConverterClass m1 = new MemberConverterClass { DefaultConverter = testDate, MemberConverter = testDate }; string json = JsonConvert.SerializeObject(m1, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); Assert.AreEqual(@"{""DefaultConverter"":""\/Date(0)\/"",""MemberConverter"":""1970-01-01T00:00:00Z""}", json); MemberConverterClass m2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(testDate, m2.DefaultConverter); Assert.AreEqual(testDate, m2.MemberConverter); } [Test] public void SerializerShouldUseMemberConverter_MsDate_DateParseNone() { DateTime testDate = new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc); MemberConverterClass m1 = new MemberConverterClass { DefaultConverter = testDate, MemberConverter = testDate }; string json = JsonConvert.SerializeObject(m1, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat, }); Assert.AreEqual(@"{""DefaultConverter"":""\/Date(0)\/"",""MemberConverter"":""1970-01-01T00:00:00Z""}", json); var m2 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { DateParseHandling = DateParseHandling.None }); Assert.AreEqual(new DateTime(1970, 1, 1), m2.DefaultConverter); Assert.AreEqual(new DateTime(1970, 1, 1), m2.MemberConverter); } [Test] public void SerializerShouldUseMemberConverter_IsoDate_DateParseNone() { DateTime testDate = new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc); MemberConverterClass m1 = new MemberConverterClass { DefaultConverter = testDate, MemberConverter = testDate }; string json = JsonConvert.SerializeObject(m1, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.IsoDateFormat, }); Assert.AreEqual(@"{""DefaultConverter"":""1970-01-01T00:00:00Z"",""MemberConverter"":""1970-01-01T00:00:00Z""}", json); MemberConverterClass m2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(testDate, m2.DefaultConverter); Assert.AreEqual(testDate, m2.MemberConverter); } [Test] public void SerializerShouldUseMemberConverterOverArgumentConverter() { DateTime testDate = new DateTime(DateTimeUtils.InitialJavaScriptDateTicks, DateTimeKind.Utc); MemberConverterClass m1 = new MemberConverterClass { DefaultConverter = testDate, MemberConverter = testDate }; string json = JsonConvert.SerializeObject(m1, new JavaScriptDateTimeConverter()); Assert.AreEqual(@"{""DefaultConverter"":new Date(0),""MemberConverter"":""1970-01-01T00:00:00Z""}", json); MemberConverterClass m2 = JsonConvert.DeserializeObject(json, new JavaScriptDateTimeConverter()); Assert.AreEqual(testDate, m2.DefaultConverter); Assert.AreEqual(testDate, m2.MemberConverter); } [Test] public void ConverterAttributeExample() { DateTime date = Convert.ToDateTime("1970-01-01T00:00:00Z").ToUniversalTime(); MemberConverterClass c = new MemberConverterClass { DefaultConverter = date, MemberConverter = date }; string json = JsonConvert.SerializeObject(c, Formatting.Indented); Console.WriteLine(json); //{ // "DefaultConverter": "\/Date(0)\/", // "MemberConverter": "1970-01-01T00:00:00Z" //} } [Test] public void SerializerShouldUseMemberConverterOverClassAndArgumentConverter() { ClassAndMemberConverterClass c1 = new ClassAndMemberConverterClass(); c1.DefaultConverter = new ConverterPrecedenceClass("DefaultConverterValue"); c1.MemberConverter = new ConverterPrecedenceClass("MemberConverterValue"); string json = JsonConvert.SerializeObject(c1, new ArgumentConverterPrecedenceClassConverter()); Assert.AreEqual(@"{""DefaultConverter"":[""Class"",""DefaultConverterValue""],""MemberConverter"":[""Member"",""MemberConverterValue""]}", json); ClassAndMemberConverterClass c2 = JsonConvert.DeserializeObject(json, new ArgumentConverterPrecedenceClassConverter()); Assert.AreEqual("DefaultConverterValue", c2.DefaultConverter.TestValue); Assert.AreEqual("MemberConverterValue", c2.MemberConverter.TestValue); } [Test] public void IncompatibleJsonAttributeShouldThrow() { ExceptionAssert.Throws(() => { IncompatibleJsonAttributeClass c = new IncompatibleJsonAttributeClass(); JsonConvert.SerializeObject(c); }, "Unexpected value when converting date. Expected DateTime or DateTimeOffset, got Newtonsoft.Json.Tests.TestObjects.IncompatibleJsonAttributeClass."); } [Test] public void GenericAbstractProperty() { string json = JsonConvert.SerializeObject(new GenericImpl()); Assert.AreEqual(@"{""Id"":0}", json); } [Test] public void DeserializeNullable() { string json; json = JsonConvert.SerializeObject((int?)null); Assert.AreEqual("null", json); json = JsonConvert.SerializeObject((int?)1); Assert.AreEqual("1", json); } [Test] public void SerializeJsonRaw() { PersonRaw personRaw = new PersonRaw { FirstName = "FirstNameValue", RawContent = new JRaw("[1,2,3,4,5]"), LastName = "LastNameValue" }; string json; json = JsonConvert.SerializeObject(personRaw); Assert.AreEqual(@"{""first_name"":""FirstNameValue"",""RawContent"":[1,2,3,4,5],""last_name"":""LastNameValue""}", json); } [Test] public void DeserializeJsonRaw() { string json = @"{""first_name"":""FirstNameValue"",""RawContent"":[1,2,3,4,5],""last_name"":""LastNameValue""}"; PersonRaw personRaw = JsonConvert.DeserializeObject(json); Assert.AreEqual("FirstNameValue", personRaw.FirstName); Assert.AreEqual("[1,2,3,4,5]", personRaw.RawContent.ToString()); Assert.AreEqual("LastNameValue", personRaw.LastName); } [Test] public void DeserializeNullableMember() { UserNullable userNullablle = new UserNullable { Id = new Guid("AD6205E8-0DF4-465d-AEA6-8BA18E93A7E7"), FName = "FirstValue", LName = "LastValue", RoleId = 5, NullableRoleId = 6, NullRoleId = null, Active = true }; string json = JsonConvert.SerializeObject(userNullablle); Assert.AreEqual(@"{""Id"":""ad6205e8-0df4-465d-aea6-8ba18e93a7e7"",""FName"":""FirstValue"",""LName"":""LastValue"",""RoleId"":5,""NullableRoleId"":6,""NullRoleId"":null,""Active"":true}", json); UserNullable userNullablleDeserialized = JsonConvert.DeserializeObject(json); Assert.AreEqual(new Guid("AD6205E8-0DF4-465d-AEA6-8BA18E93A7E7"), userNullablleDeserialized.Id); Assert.AreEqual("FirstValue", userNullablleDeserialized.FName); Assert.AreEqual("LastValue", userNullablleDeserialized.LName); Assert.AreEqual(5, userNullablleDeserialized.RoleId); Assert.AreEqual(6, userNullablleDeserialized.NullableRoleId); Assert.AreEqual(null, userNullablleDeserialized.NullRoleId); Assert.AreEqual(true, userNullablleDeserialized.Active); } [Test] public void DeserializeInt64ToNullableDouble() { string json = @"{""Height"":1}"; DoubleClass c = JsonConvert.DeserializeObject(json); Assert.AreEqual(1, c.Height); } [Test] public void SerializeTypeProperty() { string boolRef = typeof(bool).AssemblyQualifiedName; TypeClass typeClass = new TypeClass { TypeProperty = typeof(bool) }; string json = JsonConvert.SerializeObject(typeClass); Assert.AreEqual(@"{""TypeProperty"":""" + boolRef + @"""}", json); TypeClass typeClass2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(typeof(bool), typeClass2.TypeProperty); string jsonSerializerTestRef = typeof(JsonSerializerTest).AssemblyQualifiedName; typeClass = new TypeClass { TypeProperty = typeof(JsonSerializerTest) }; json = JsonConvert.SerializeObject(typeClass); Assert.AreEqual(@"{""TypeProperty"":""" + jsonSerializerTestRef + @"""}", json); typeClass2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(typeof(JsonSerializerTest), typeClass2.TypeProperty); } [Test] public void RequiredMembersClass() { RequiredMembersClass c = new RequiredMembersClass() { BirthDate = new DateTime(2000, 12, 20, 10, 55, 55, DateTimeKind.Utc), FirstName = "Bob", LastName = "Smith", MiddleName = "Cosmo" }; string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""FirstName"": ""Bob"", ""MiddleName"": ""Cosmo"", ""LastName"": ""Smith"", ""BirthDate"": ""2000-12-20T10:55:55Z"" }", json); RequiredMembersClass c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("Bob", c2.FirstName); Assert.AreEqual(new DateTime(2000, 12, 20, 10, 55, 55, DateTimeKind.Utc), c2.BirthDate); } [Test] public void DeserializeRequiredMembersClassWithNullValues() { string json = @"{ ""FirstName"": ""I can't be null bro!"", ""MiddleName"": null, ""LastName"": null, ""BirthDate"": ""\/Date(977309755000)\/"" }"; RequiredMembersClass c = JsonConvert.DeserializeObject(json); Assert.AreEqual("I can't be null bro!", c.FirstName); Assert.AreEqual(null, c.MiddleName); Assert.AreEqual(null, c.LastName); } [Test] public void DeserializeRequiredMembersClassNullRequiredValueProperty() { try { string json = @"{ ""FirstName"": null, ""MiddleName"": null, ""LastName"": null, ""BirthDate"": ""\/Date(977309755000)\/"" }"; JsonConvert.DeserializeObject(json); Assert.Fail(); } catch (JsonSerializationException ex) { Assert.IsTrue(ex.Message.StartsWith("Required property 'FirstName' expects a value but got null. Path ''")); } } [Test] public void SerializeRequiredMembersClassNullRequiredValueProperty() { ExceptionAssert.Throws(() => { RequiredMembersClass requiredMembersClass = new RequiredMembersClass { FirstName = null, BirthDate = new DateTime(2000, 10, 10, 10, 10, 10, DateTimeKind.Utc), LastName = null, MiddleName = null }; string json = JsonConvert.SerializeObject(requiredMembersClass); Console.WriteLine(json); }, "Cannot write a null value for property 'FirstName'. Property requires a value. Path ''."); } [Test] public void RequiredMembersClassMissingRequiredProperty() { try { string json = @"{ ""FirstName"": ""Bob"" }"; JsonConvert.DeserializeObject(json); Assert.Fail(); } catch (JsonSerializationException ex) { Assert.IsTrue(ex.Message.StartsWith("Required property 'LastName' not found in JSON. Path ''")); } } [Test] public void SerializeJaggedArray() { JaggedArray aa = new JaggedArray(); aa.Before = "Before!"; aa.After = "After!"; aa.Coordinates = new[] { new[] { 1, 1 }, new[] { 1, 2 }, new[] { 2, 1 }, new[] { 2, 2 } }; string json = JsonConvert.SerializeObject(aa); Assert.AreEqual(@"{""Before"":""Before!"",""Coordinates"":[[1,1],[1,2],[2,1],[2,2]],""After"":""After!""}", json); } [Test] public void DeserializeJaggedArray() { string json = @"{""Before"":""Before!"",""Coordinates"":[[1,1],[1,2],[2,1],[2,2]],""After"":""After!""}"; JaggedArray aa = JsonConvert.DeserializeObject(json); Assert.AreEqual("Before!", aa.Before); Assert.AreEqual("After!", aa.After); Assert.AreEqual(4, aa.Coordinates.Length); Assert.AreEqual(2, aa.Coordinates[0].Length); Assert.AreEqual(1, aa.Coordinates[0][0]); Assert.AreEqual(2, aa.Coordinates[1][1]); string after = JsonConvert.SerializeObject(aa); Assert.AreEqual(json, after); } [Test] public void DeserializeGoogleGeoCode() { string json = @"{ ""name"": ""1600 Amphitheatre Parkway, Mountain View, CA, USA"", ""Status"": { ""code"": 200, ""request"": ""geocode"" }, ""Placemark"": [ { ""address"": ""1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA"", ""AddressDetails"": { ""Country"": { ""CountryNameCode"": ""US"", ""AdministrativeArea"": { ""AdministrativeAreaName"": ""CA"", ""SubAdministrativeArea"": { ""SubAdministrativeAreaName"": ""Santa Clara"", ""Locality"": { ""LocalityName"": ""Mountain View"", ""Thoroughfare"": { ""ThoroughfareName"": ""1600 Amphitheatre Pkwy"" }, ""PostalCode"": { ""PostalCodeNumber"": ""94043"" } } } } }, ""Accuracy"": 8 }, ""Point"": { ""coordinates"": [-122.083739, 37.423021, 0] } } ] }"; GoogleMapGeocoderStructure jsonGoogleMapGeocoder = JsonConvert.DeserializeObject(json); } [Test] public void DeserializeInterfaceProperty() { InterfacePropertyTestClass testClass = new InterfacePropertyTestClass(); testClass.co = new Co(); String strFromTest = JsonConvert.SerializeObject(testClass); ExceptionAssert.Throws(() => { InterfacePropertyTestClass testFromDe = (InterfacePropertyTestClass)JsonConvert.DeserializeObject(strFromTest, typeof(InterfacePropertyTestClass)); }, @"Could not create an instance of type Newtonsoft.Json.Tests.TestObjects.ICo. Type is an interface or abstract class and cannot be instantiated. Path 'co.Name', line 1, position 14."); } private Person GetPerson() { Person person = new Person { Name = "Mike Manager", BirthDate = new DateTime(1983, 8, 3, 0, 0, 0, DateTimeKind.Utc), Department = "IT", LastModified = new DateTime(2009, 2, 15, 0, 0, 0, DateTimeKind.Utc) }; return person; } [Test] public void WriteJsonDates() { LogEntry entry = new LogEntry { LogDate = new DateTime(2009, 2, 15, 0, 0, 0, DateTimeKind.Utc), Details = "Application started." }; string defaultJson = JsonConvert.SerializeObject(entry); // {"Details":"Application started.","LogDate":"\/Date(1234656000000)\/"} string isoJson = JsonConvert.SerializeObject(entry, new IsoDateTimeConverter()); // {"Details":"Application started.","LogDate":"2009-02-15T00:00:00.0000000Z"} string javascriptJson = JsonConvert.SerializeObject(entry, new JavaScriptDateTimeConverter()); // {"Details":"Application started.","LogDate":new Date(1234656000000)} Console.WriteLine(defaultJson); Console.WriteLine(isoJson); Console.WriteLine(javascriptJson); } public void GenericListAndDictionaryInterfaceProperties() { GenericListAndDictionaryInterfaceProperties o = new GenericListAndDictionaryInterfaceProperties(); o.IDictionaryProperty = new Dictionary { { "one", 1 }, { "two", 2 }, { "three", 3 } }; o.IListProperty = new List { 1, 2, 3 }; o.IEnumerableProperty = new List { 4, 5, 6 }; string json = JsonConvert.SerializeObject(o, Formatting.Indented); Assert.AreEqual(@"{ ""IEnumerableProperty"": [ 4, 5, 6 ], ""IListProperty"": [ 1, 2, 3 ], ""IDictionaryProperty"": { ""one"": 1, ""two"": 2, ""three"": 3 } }", json); GenericListAndDictionaryInterfaceProperties deserializedObject = JsonConvert.DeserializeObject(json); Assert.IsNotNull(deserializedObject); CollectionAssert.AreEqual(o.IListProperty.ToArray(), deserializedObject.IListProperty.ToArray()); CollectionAssert.AreEqual(o.IEnumerableProperty.ToArray(), deserializedObject.IEnumerableProperty.ToArray()); CollectionAssert.AreEqual(o.IDictionaryProperty.ToArray(), deserializedObject.IDictionaryProperty.ToArray()); } [Test] public void DeserializeBestMatchPropertyCase() { string json = @"{ ""firstName"": ""firstName"", ""FirstName"": ""FirstName"", ""LastName"": ""LastName"", ""lastName"": ""lastName"", }"; PropertyCase o = JsonConvert.DeserializeObject(json); Assert.IsNotNull(o); Assert.AreEqual("firstName", o.firstName); Assert.AreEqual("FirstName", o.FirstName); Assert.AreEqual("LastName", o.LastName); Assert.AreEqual("lastName", o.lastName); } public sealed class ConstructorAndDefaultValueAttributeTestClass { public ConstructorAndDefaultValueAttributeTestClass(string testProperty1) { TestProperty1 = testProperty1; } public string TestProperty1 { get; set; } [DefaultValue(21)] public int TestProperty2 { get; set; } } [Test] public void PopulateDefaultValueWhenUsingConstructor() { string json = "{ 'testProperty1': 'value' }"; ConstructorAndDefaultValueAttributeTestClass c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Populate }); Assert.AreEqual("value", c.TestProperty1); Assert.AreEqual(21, c.TestProperty2); c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate }); Assert.AreEqual("value", c.TestProperty1); Assert.AreEqual(21, c.TestProperty2); } public sealed class ConstructorAndRequiredTestClass { public ConstructorAndRequiredTestClass(string testProperty1) { TestProperty1 = testProperty1; } public string TestProperty1 { get; set; } [JsonProperty(Required = Required.AllowNull)] public int TestProperty2 { get; set; } } [Test] public void RequiredWhenUsingConstructor() { try { string json = "{ 'testProperty1': 'value' }"; JsonConvert.DeserializeObject(json); Assert.Fail(); } catch (JsonSerializationException ex) { Assert.IsTrue(ex.Message.StartsWith("Required property 'TestProperty2' not found in JSON. Path ''")); } } [Test] public void DeserializePropertiesOnToNonDefaultConstructor() { SubKlass i = new SubKlass("my subprop"); i.SuperProp = "overrided superprop"; string json = JsonConvert.SerializeObject(i); Assert.AreEqual(@"{""SubProp"":""my subprop"",""SuperProp"":""overrided superprop""}", json); SubKlass ii = JsonConvert.DeserializeObject(json); string newJson = JsonConvert.SerializeObject(ii); Assert.AreEqual(@"{""SubProp"":""my subprop"",""SuperProp"":""overrided superprop""}", newJson); } [Test] public void DeserializePropertiesOnToNonDefaultConstructorWithReferenceTracking() { SubKlass i = new SubKlass("my subprop"); i.SuperProp = "overrided superprop"; string json = JsonConvert.SerializeObject(i, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); Assert.AreEqual(@"{""$id"":""1"",""SubProp"":""my subprop"",""SuperProp"":""overrided superprop""}", json); SubKlass ii = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); string newJson = JsonConvert.SerializeObject(ii, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); Assert.AreEqual(@"{""$id"":""1"",""SubProp"":""my subprop"",""SuperProp"":""overrided superprop""}", newJson); } [Test] public void SerializeJsonPropertyWithHandlingValues() { JsonPropertyWithHandlingValues o = new JsonPropertyWithHandlingValues(); o.DefaultValueHandlingIgnoreProperty = "Default!"; o.DefaultValueHandlingIncludeProperty = "Default!"; o.DefaultValueHandlingPopulateProperty = "Default!"; o.DefaultValueHandlingIgnoreAndPopulateProperty = "Default!"; string json = JsonConvert.SerializeObject(o, Formatting.Indented); StringAssert.AreEqual(@"{ ""DefaultValueHandlingIncludeProperty"": ""Default!"", ""DefaultValueHandlingPopulateProperty"": ""Default!"", ""NullValueHandlingIncludeProperty"": null, ""ReferenceLoopHandlingErrorProperty"": null, ""ReferenceLoopHandlingIgnoreProperty"": null, ""ReferenceLoopHandlingSerializeProperty"": null }", json); json = JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); StringAssert.AreEqual(@"{ ""DefaultValueHandlingIncludeProperty"": ""Default!"", ""DefaultValueHandlingPopulateProperty"": ""Default!"", ""NullValueHandlingIncludeProperty"": null }", json); } [Test] public void DeserializeJsonPropertyWithHandlingValues() { string json = "{}"; JsonPropertyWithHandlingValues o = JsonConvert.DeserializeObject(json); Assert.AreEqual("Default!", o.DefaultValueHandlingIgnoreAndPopulateProperty); Assert.AreEqual("Default!", o.DefaultValueHandlingPopulateProperty); Assert.AreEqual(null, o.DefaultValueHandlingIgnoreProperty); Assert.AreEqual(null, o.DefaultValueHandlingIncludeProperty); } [Test] public void JsonPropertyWithHandlingValues_ReferenceLoopError() { string classRef = typeof(JsonPropertyWithHandlingValues).FullName; ExceptionAssert.Throws(() => { JsonPropertyWithHandlingValues o = new JsonPropertyWithHandlingValues(); o.ReferenceLoopHandlingErrorProperty = o; JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); }, "Self referencing loop detected for property 'ReferenceLoopHandlingErrorProperty' with type '" + classRef + "'. Path ''."); } [Test] public void PartialClassDeserialize() { string json = @"{ ""request"": ""ux.settings.update"", ""sid"": ""14c561bd-32a8-457e-b4e5-4bba0832897f"", ""uid"": ""30c39065-0f31-de11-9442-001e3786a8ec"", ""fidOrder"": [ ""id"", ""andytest_name"", ""andytest_age"", ""andytest_address"", ""andytest_phone"", ""date"", ""title"", ""titleId"" ], ""entityName"": ""Andy Test"", ""setting"": ""entity.field.order"" }"; RequestOnly r = JsonConvert.DeserializeObject(json); Assert.AreEqual("ux.settings.update", r.Request); NonRequest n = JsonConvert.DeserializeObject(json); Assert.AreEqual(new Guid("14c561bd-32a8-457e-b4e5-4bba0832897f"), n.Sid); Assert.AreEqual(new Guid("30c39065-0f31-de11-9442-001e3786a8ec"), n.Uid); Assert.AreEqual(8, n.FidOrder.Count); Assert.AreEqual("id", n.FidOrder[0]); Assert.AreEqual("titleId", n.FidOrder[n.FidOrder.Count - 1]); } #if !(NET20 || NETFX_CORE || ASPNETCORE50) [MetadataType(typeof(OptInClassMetadata))] public class OptInClass { [DataContract] public class OptInClassMetadata { [DataMember] public string Name { get; set; } [DataMember] public int Age { get; set; } public string NotIncluded { get; set; } } public string Name { get; set; } public int Age { get; set; } public string NotIncluded { get; set; } } [Test] public void OptInClassMetadataSerialization() { OptInClass optInClass = new OptInClass(); optInClass.Age = 26; optInClass.Name = "James NK"; optInClass.NotIncluded = "Poor me :("; string json = JsonConvert.SerializeObject(optInClass, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": ""James NK"", ""Age"": 26 }", json); OptInClass newOptInClass = JsonConvert.DeserializeObject(@"{ ""Name"": ""James NK"", ""NotIncluded"": ""Ignore me!"", ""Age"": 26 }"); Assert.AreEqual(26, newOptInClass.Age); Assert.AreEqual("James NK", newOptInClass.Name); Assert.AreEqual(null, newOptInClass.NotIncluded); } #endif #if !NET20 [DataContract] public class DataContractPrivateMembers { public DataContractPrivateMembers() { } public DataContractPrivateMembers(string name, int age, int rank, string title) { _name = name; Age = age; Rank = rank; Title = title; } [DataMember] private string _name; [DataMember(Name = "_age")] private int Age { get; set; } [JsonProperty] private int Rank { get; set; } [JsonProperty(PropertyName = "JsonTitle")] [DataMember(Name = "DataTitle")] private string Title { get; set; } public string NotIncluded { get; set; } public override string ToString() { return "_name: " + _name + ", _age: " + Age + ", Rank: " + Rank + ", JsonTitle: " + Title; } } [Test] public void SerializeDataContractPrivateMembers() { DataContractPrivateMembers c = new DataContractPrivateMembers("Jeff", 26, 10, "Dr"); c.NotIncluded = "Hi"; string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""_name"": ""Jeff"", ""_age"": 26, ""Rank"": 10, ""JsonTitle"": ""Dr"" }", json); DataContractPrivateMembers cc = JsonConvert.DeserializeObject(json); Assert.AreEqual("_name: Jeff, _age: 26, Rank: 10, JsonTitle: Dr", cc.ToString()); } #endif [Test] public void DeserializeDictionaryInterface() { string json = @"{ ""Name"": ""Name!"", ""Dictionary"": { ""Item"": 11 } }"; DictionaryInterfaceClass c = JsonConvert.DeserializeObject( json, new JsonSerializerSettings { ObjectCreationHandling = ObjectCreationHandling.Replace }); Assert.AreEqual("Name!", c.Name); Assert.AreEqual(1, c.Dictionary.Count); Assert.AreEqual(11, c.Dictionary["Item"]); } [Test] public void DeserializeDictionaryInterfaceWithExistingValues() { string json = @"{ ""Random"": { ""blah"": 1 }, ""Name"": ""Name!"", ""Dictionary"": { ""Item"": 11, ""Item1"": 12 }, ""Collection"": [ 999 ], ""Employee"": { ""Manager"": { ""Name"": ""ManagerName!"" } } }"; DictionaryInterfaceClass c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { ObjectCreationHandling = ObjectCreationHandling.Reuse }); Assert.AreEqual("Name!", c.Name); Assert.AreEqual(3, c.Dictionary.Count); Assert.AreEqual(11, c.Dictionary["Item"]); Assert.AreEqual(1, c.Dictionary["existing"]); Assert.AreEqual(4, c.Collection.Count); Assert.AreEqual(1, c.Collection.ElementAt(0)); Assert.AreEqual(999, c.Collection.ElementAt(3)); Assert.AreEqual("EmployeeName!", c.Employee.Name); Assert.AreEqual("ManagerName!", c.Employee.Manager.Name); Assert.IsNotNull(c.Random); } [Test] public void TypedObjectDeserializationWithComments() { string json = @"/*comment1*/ { /*comment2*/ ""Name"": /*comment3*/ ""Apple"" /*comment4*/, /*comment5*/ ""ExpiryDate"": ""\/Date(1230422400000)\/"", ""Price"": 3.99, ""Sizes"": /*comment6*/ [ /*comment7*/ ""Small"", /*comment8*/ ""Medium"" /*comment9*/, /*comment10*/ ""Large"" /*comment11*/ ] /*comment12*/ } /*comment13*/"; Product deserializedProduct = (Product)JsonConvert.DeserializeObject(json, typeof(Product)); Assert.AreEqual("Apple", deserializedProduct.Name); Assert.AreEqual(new DateTime(2008, 12, 28, 0, 0, 0, DateTimeKind.Utc), deserializedProduct.ExpiryDate); Assert.AreEqual(3.99m, deserializedProduct.Price); Assert.AreEqual("Small", deserializedProduct.Sizes[0]); Assert.AreEqual("Medium", deserializedProduct.Sizes[1]); Assert.AreEqual("Large", deserializedProduct.Sizes[2]); } [Test] public void NestedInsideOuterObject() { string json = @"{ ""short"": { ""original"": ""http://www.contrast.ie/blog/online-marketing-2009/"", ""short"": ""m2sqc6"", ""shortened"": ""http://short.ie/m2sqc6"", ""error"": { ""code"": 0, ""msg"": ""No action taken"" } } }"; JObject o = JObject.Parse(json); Shortie s = JsonConvert.DeserializeObject(o["short"].ToString()); Assert.IsNotNull(s); Assert.AreEqual(s.Original, "http://www.contrast.ie/blog/online-marketing-2009/"); Assert.AreEqual(s.Short, "m2sqc6"); Assert.AreEqual(s.Shortened, "http://short.ie/m2sqc6"); } [Test] public void UriSerialization() { Uri uri = new Uri("http://codeplex.com"); string json = JsonConvert.SerializeObject(uri); Assert.AreEqual("http://codeplex.com/", uri.ToString()); Uri newUri = JsonConvert.DeserializeObject(json); Assert.AreEqual(uri, newUri); } [Test] public void AnonymousPlusLinqToSql() { var value = new { bar = new JObject(new JProperty("baz", 13)) }; string json = JsonConvert.SerializeObject(value); Assert.AreEqual(@"{""bar"":{""baz"":13}}", json); } [Test] public void SerializeEnumerableAsObject() { Content content = new Content { Text = "Blah, blah, blah", Children = new List { new Content { Text = "First" }, new Content { Text = "Second" } } }; string json = JsonConvert.SerializeObject(content, Formatting.Indented); StringAssert.AreEqual(@"{ ""Children"": [ { ""Children"": null, ""Text"": ""First"" }, { ""Children"": null, ""Text"": ""Second"" } ], ""Text"": ""Blah, blah, blah"" }", json); } [Test] public void DeserializeEnumerableAsObject() { string json = @"{ ""Children"": [ { ""Children"": null, ""Text"": ""First"" }, { ""Children"": null, ""Text"": ""Second"" } ], ""Text"": ""Blah, blah, blah"" }"; Content content = JsonConvert.DeserializeObject(json); Assert.AreEqual("Blah, blah, blah", content.Text); Assert.AreEqual(2, content.Children.Count); Assert.AreEqual("First", content.Children[0].Text); Assert.AreEqual("Second", content.Children[1].Text); } [Test] public void RoleTransferTest() { string json = @"{""Operation"":""1"",""RoleName"":""Admin"",""Direction"":""0""}"; RoleTransfer r = JsonConvert.DeserializeObject(json); Assert.AreEqual(RoleTransferOperation.Second, r.Operation); Assert.AreEqual("Admin", r.RoleName); Assert.AreEqual(RoleTransferDirection.First, r.Direction); } [Test] public void DeserializeGenericDictionary() { string json = @"{""key1"":""value1"",""key2"":""value2""}"; Dictionary values = JsonConvert.DeserializeObject>(json); Console.WriteLine(values.Count); // 2 Console.WriteLine(values["key1"]); // value1 Assert.AreEqual(2, values.Count); Assert.AreEqual("value1", values["key1"]); Assert.AreEqual("value2", values["key2"]); } #if !NET20 [Test] public void DeserializeEmptyStringToNullableDateTime() { string json = @"{""DateTimeField"":""""}"; NullableDateTimeTestClass c = JsonConvert.DeserializeObject(json); Assert.AreEqual(null, c.DateTimeField); } #endif [Test] public void FailWhenClassWithNoDefaultConstructorHasMultipleConstructorsWithArguments() { string json = @"{""sublocation"":""AlertEmailSender.Program.Main"",""userId"":0,""type"":0,""summary"":""Loading settings variables"",""details"":null,""stackTrace"":"" at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)\r\n at System.Environment.get_StackTrace()\r\n at mr.Logging.Event..ctor(String summary) in C:\\Projects\\MRUtils\\Logging\\Event.vb:line 71\r\n at AlertEmailSender.Program.Main(String[] args) in C:\\Projects\\AlertEmailSender\\AlertEmailSender\\Program.cs:line 25"",""tag"":null,""time"":""\/Date(1249591032026-0400)\/""}"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json); }, @"Unable to find a constructor to use for type Newtonsoft.Json.Tests.TestObjects.Event. A class should either have a default constructor, one constructor with arguments or a constructor marked with the JsonConstructor attribute. Path 'sublocation', line 1, position 15."); } [Test] public void DeserializeObjectSetOnlyProperty() { string json = @"{'SetOnlyProperty':[1,2,3,4,5]}"; SetOnlyPropertyClass2 setOnly = JsonConvert.DeserializeObject(json); JArray a = (JArray)setOnly.GetValue(); Assert.AreEqual(5, a.Count); Assert.AreEqual(1, (int)a[0]); Assert.AreEqual(5, (int)a[a.Count - 1]); } [Test] public void DeserializeOptInClasses() { string json = @"{id: ""12"", name: ""test"", items: [{id: ""112"", name: ""testing""}]}"; ListTestClass l = JsonConvert.DeserializeObject(json); } [Test] public void DeserializeNullableListWithNulls() { List l = JsonConvert.DeserializeObject>("[ 3.3, null, 1.1 ] "); Assert.AreEqual(3, l.Count); Assert.AreEqual(3.3m, l[0]); Assert.AreEqual(null, l[1]); Assert.AreEqual(1.1m, l[2]); } [Test] public void CannotDeserializeArrayIntoObject() { string json = @"[]"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json); }, @"Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'Newtonsoft.Json.Tests.TestObjects.Person' because the type requires a JSON object (e.g. {""name"":""value""}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {""name"":""value""}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path '', line 1, position 1."); } [Test] public void CannotDeserializeArrayIntoDictionary() { string json = @"[]"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject>(json); }, @"Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'System.Collections.Generic.Dictionary`2[System.String,System.String]' because the type requires a JSON object (e.g. {""name"":""value""}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {""name"":""value""}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path '', line 1, position 1."); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) [Test] public void CannotDeserializeArrayIntoSerializable() { string json = @"[]"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json); }, @"Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'System.Exception' because the type requires a JSON object (e.g. {""name"":""value""}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {""name"":""value""}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path '', line 1, position 1."); } #endif [Test] public void CannotDeserializeArrayIntoDouble() { string json = @"[]"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json); }, @"Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'System.Double' because the type requires a JSON primitive value (e.g. string, number, boolean, null) to deserialize correctly. To fix this error either change the JSON to a JSON primitive value (e.g. string, number, boolean, null) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path '', line 1, position 1."); } #if !(NET35 || NET20 || PORTABLE40) [Test] public void CannotDeserializeArrayIntoDynamic() { string json = @"[]"; ExceptionAssert.Throws( () => { JsonConvert.DeserializeObject(json); }, @"Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'Newtonsoft.Json.Tests.Linq.DynamicDictionary' because the type requires a JSON object (e.g. {""name"":""value""}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {""name"":""value""}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path '', line 1, position 1."); } #endif [Test] public void CannotDeserializeArrayIntoLinqToJson() { string json = @"[]"; ExceptionAssert.Throws( () => { JsonConvert.DeserializeObject(json); }, new [] { "Unable to cast object of type 'Newtonsoft.Json.Linq.JArray' to type 'Newtonsoft.Json.Linq.JObject'.", "Cannot cast from source type to destination type." // mono }); } [Test] public void CannotDeserializeConstructorIntoObject() { string json = @"new Constructor(123)"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json); }, @"Error converting value ""Constructor"" to type 'Newtonsoft.Json.Tests.TestObjects.Person'. Path '', line 1, position 16."); } [Test] public void CannotDeserializeConstructorIntoObjectNested() { string json = @"[new Constructor(123)]"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject>(json); }, @"Error converting value ""Constructor"" to type 'Newtonsoft.Json.Tests.TestObjects.Person'. Path '[0]', line 1, position 17."); } [Test] public void CannotDeserializeObjectIntoArray() { string json = @"{}"; try { JsonConvert.DeserializeObject>(json); Assert.Fail(); } catch (JsonSerializationException ex) { Assert.IsTrue(ex.Message.StartsWith(@"Cannot deserialize the current JSON object (e.g. {""name"":""value""}) into type 'System.Collections.Generic.List`1[Newtonsoft.Json.Tests.TestObjects.Person]' because the type requires a JSON array (e.g. [1,2,3]) to deserialize correctly." + Environment.NewLine + @"To fix this error either change the JSON to a JSON array (e.g. [1,2,3]) or change the deserialized type so that it is a normal .NET type (e.g. not a primitive type like integer, not a collection type like an array or List) that can be deserialized from a JSON object. JsonObjectAttribute can also be added to the type to force it to deserialize from a JSON object." + Environment.NewLine + @"Path ''")); } } [Test] public void CannotPopulateArrayIntoObject() { string json = @"[]"; ExceptionAssert.Throws(() => { JsonConvert.PopulateObject(json, new Person()); }, @"Cannot populate JSON array onto type 'Newtonsoft.Json.Tests.TestObjects.Person'. Path '', line 1, position 1."); } [Test] public void CannotPopulateObjectIntoArray() { string json = @"{}"; ExceptionAssert.Throws(() => { JsonConvert.PopulateObject(json, new List()); }, @"Cannot populate JSON object onto type 'System.Collections.Generic.List`1[Newtonsoft.Json.Tests.TestObjects.Person]'. Path '', line 1, position 2."); } [Test] public void DeserializeEmptyString() { string json = @"{""Name"":""""}"; Person p = JsonConvert.DeserializeObject(json); Assert.AreEqual("", p.Name); } [Test] public void SerializePropertyGetError() { ExceptionAssert.Throws(() => { JsonConvert.SerializeObject(new MemoryStream(), new JsonSerializerSettings { ContractResolver = new DefaultContractResolver { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) IgnoreSerializableAttribute = true #endif } }); }, @"Error getting value from 'ReadTimeout' on 'System.IO.MemoryStream'."); } [Test] public void DeserializePropertySetError() { ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject("{ReadTimeout:0}", new JsonSerializerSettings { ContractResolver = new DefaultContractResolver { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) IgnoreSerializableAttribute = true #endif } }); }, @"Error setting value to 'ReadTimeout' on 'System.IO.MemoryStream'."); } [Test] public void DeserializeEnsureTypeEmptyStringToIntError() { ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject("{ReadTimeout:''}", new JsonSerializerSettings { ContractResolver = new DefaultContractResolver { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) IgnoreSerializableAttribute = true #endif } }); }, @"Error converting value {null} to type 'System.Int32'. Path 'ReadTimeout', line 1, position 15."); } [Test] public void DeserializeEnsureTypeNullToIntError() { ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject("{ReadTimeout:null}", new JsonSerializerSettings { ContractResolver = new DefaultContractResolver { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) IgnoreSerializableAttribute = true #endif } }); }, @"Error converting value {null} to type 'System.Int32'. Path 'ReadTimeout', line 1, position 17."); } [Test] public void SerializeGenericListOfStrings() { List strings = new List(); strings.Add("str_1"); strings.Add("str_2"); strings.Add("str_3"); string json = JsonConvert.SerializeObject(strings); Assert.AreEqual(@"[""str_1"",""str_2"",""str_3""]", json); } [Test] public void ConstructorReadonlyFieldsTest() { ConstructorReadonlyFields c1 = new ConstructorReadonlyFields("String!", int.MaxValue); string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""A"": ""String!"", ""B"": 2147483647 }", json); ConstructorReadonlyFields c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("String!", c2.A); Assert.AreEqual(int.MaxValue, c2.B); } [Test] public void SerializeStruct() { StructTest structTest = new StructTest { StringProperty = "StringProperty!", StringField = "StringField", IntProperty = 5, IntField = 10 }; string json = JsonConvert.SerializeObject(structTest, Formatting.Indented); Console.WriteLine(json); StringAssert.AreEqual(@"{ ""StringField"": ""StringField"", ""IntField"": 10, ""StringProperty"": ""StringProperty!"", ""IntProperty"": 5 }", json); StructTest deserialized = JsonConvert.DeserializeObject(json); Assert.AreEqual(structTest.StringProperty, deserialized.StringProperty); Assert.AreEqual(structTest.StringField, deserialized.StringField); Assert.AreEqual(structTest.IntProperty, deserialized.IntProperty); Assert.AreEqual(structTest.IntField, deserialized.IntField); } [Test] public void SerializeListWithJsonConverter() { Foo f = new Foo(); f.Bars.Add(new Bar { Id = 0 }); f.Bars.Add(new Bar { Id = 1 }); f.Bars.Add(new Bar { Id = 2 }); string json = JsonConvert.SerializeObject(f, Formatting.Indented); StringAssert.AreEqual(@"{ ""Bars"": [ 0, 1, 2 ] }", json); Foo newFoo = JsonConvert.DeserializeObject(json); Assert.AreEqual(3, newFoo.Bars.Count); Assert.AreEqual(0, newFoo.Bars[0].Id); Assert.AreEqual(1, newFoo.Bars[1].Id); Assert.AreEqual(2, newFoo.Bars[2].Id); } [Test] public void SerializeGuidKeyedDictionary() { Dictionary dictionary = new Dictionary(); dictionary.Add(new Guid("F60EAEE0-AE47-488E-B330-59527B742D77"), 1); dictionary.Add(new Guid("C2594C02-EBA1-426A-AA87-8DD8871350B0"), 2); string json = JsonConvert.SerializeObject(dictionary, Formatting.Indented); StringAssert.AreEqual(@"{ ""f60eaee0-ae47-488e-b330-59527b742d77"": 1, ""c2594c02-eba1-426a-aa87-8dd8871350b0"": 2 }", json); } [Test] public void SerializePersonKeyedDictionary() { Dictionary dictionary = new Dictionary(); dictionary.Add(new Person { Name = "p1" }, 1); dictionary.Add(new Person { Name = "p2" }, 2); string json = JsonConvert.SerializeObject(dictionary, Formatting.Indented); StringAssert.AreEqual(@"{ ""Newtonsoft.Json.Tests.TestObjects.Person"": 1, ""Newtonsoft.Json.Tests.TestObjects.Person"": 2 }", json); } [Test] public void DeserializePersonKeyedDictionary() { try { string json = @"{ ""Newtonsoft.Json.Tests.TestObjects.Person"": 1, ""Newtonsoft.Json.Tests.TestObjects.Person"": 2 }"; JsonConvert.DeserializeObject>(json); Assert.Fail(); } catch (JsonSerializationException ex) { Assert.IsTrue(ex.Message.StartsWith("Could not convert string 'Newtonsoft.Json.Tests.TestObjects.Person' to dictionary key type 'Newtonsoft.Json.Tests.TestObjects.Person'. Create a TypeConverter to convert from the string to the key type object. Path '['Newtonsoft.Json.Tests.TestObjects.Person']'")); } } [Test] public void SerializeFragment() { string googleSearchText = @"{ ""responseData"": { ""results"": [ { ""GsearchResultClass"": ""GwebSearch"", ""unescapedUrl"": ""http://en.wikipedia.org/wiki/Paris_Hilton"", ""url"": ""http://en.wikipedia.org/wiki/Paris_Hilton"", ""visibleUrl"": ""en.wikipedia.org"", ""cacheUrl"": ""http://www.google.com/search?q=cache:TwrPfhd22hYJ:en.wikipedia.org"", ""title"": ""Paris Hilton - Wikipedia, the free encyclopedia"", ""titleNoFormatting"": ""Paris Hilton - Wikipedia, the free encyclopedia"", ""content"": ""[1] In 2006, she released her debut album..."" }, { ""GsearchResultClass"": ""GwebSearch"", ""unescapedUrl"": ""http://www.imdb.com/name/nm0385296/"", ""url"": ""http://www.imdb.com/name/nm0385296/"", ""visibleUrl"": ""www.imdb.com"", ""cacheUrl"": ""http://www.google.com/search?q=cache:1i34KkqnsooJ:www.imdb.com"", ""title"": ""Paris Hilton"", ""titleNoFormatting"": ""Paris Hilton"", ""content"": ""Self: Zoolander. Socialite Paris Hilton..."" } ], ""cursor"": { ""pages"": [ { ""start"": ""0"", ""label"": 1 }, { ""start"": ""4"", ""label"": 2 }, { ""start"": ""8"", ""label"": 3 }, { ""start"": ""12"", ""label"": 4 } ], ""estimatedResultCount"": ""59600000"", ""currentPageIndex"": 0, ""moreResultsUrl"": ""http://www.google.com/search?oe=utf8&ie=utf8..."" } }, ""responseDetails"": null, ""responseStatus"": 200 }"; JObject googleSearch = JObject.Parse(googleSearchText); // get JSON result objects into a list IList results = googleSearch["responseData"]["results"].Children().ToList(); // serialize JSON results into .NET objects IList searchResults = new List(); foreach (JToken result in results) { SearchResult searchResult = JsonConvert.DeserializeObject(result.ToString()); searchResults.Add(searchResult); } // Title = Paris Hilton - Wikipedia, the free encyclopedia // Content = [1] In 2006, she released her debut album... // Url = http://en.wikipedia.org/wiki/Paris_Hilton // Title = Paris Hilton // Content = Self: Zoolander. Socialite Paris Hilton... // Url = http://www.imdb.com/name/nm0385296/ Assert.AreEqual(2, searchResults.Count); Assert.AreEqual("Paris Hilton - Wikipedia, the free encyclopedia", searchResults[0].Title); Assert.AreEqual("Paris Hilton", searchResults[1].Title); } [Test] public void DeserializeBaseReferenceWithDerivedValue() { PersonPropertyClass personPropertyClass = new PersonPropertyClass(); WagePerson wagePerson = (WagePerson)personPropertyClass.Person; wagePerson.BirthDate = new DateTime(2000, 11, 29, 23, 59, 59, DateTimeKind.Utc); wagePerson.Department = "McDees"; wagePerson.HourlyWage = 12.50m; wagePerson.LastModified = new DateTime(2000, 11, 29, 23, 59, 59, DateTimeKind.Utc); wagePerson.Name = "Jim Bob"; string json = JsonConvert.SerializeObject(personPropertyClass, Formatting.Indented); StringAssert.AreEqual( @"{ ""Person"": { ""HourlyWage"": 12.50, ""Name"": ""Jim Bob"", ""BirthDate"": ""2000-11-29T23:59:59Z"", ""LastModified"": ""2000-11-29T23:59:59Z"" } }", json); PersonPropertyClass newPersonPropertyClass = JsonConvert.DeserializeObject(json); Assert.AreEqual(wagePerson.HourlyWage, ((WagePerson)newPersonPropertyClass.Person).HourlyWage); } public class ExistingValueClass { public Dictionary Dictionary { get; set; } public List List { get; set; } public ExistingValueClass() { Dictionary = new Dictionary { { "existing", "yup" } }; List = new List { "existing" }; } } [Test] public void DeserializePopulateDictionaryAndList() { ExistingValueClass d = JsonConvert.DeserializeObject(@"{'Dictionary':{appended:'appended',existing:'new'}}"); Assert.IsNotNull(d); Assert.IsNotNull(d.Dictionary); Assert.AreEqual(typeof(Dictionary), d.Dictionary.GetType()); Assert.AreEqual(typeof(List), d.List.GetType()); Assert.AreEqual(2, d.Dictionary.Count); Assert.AreEqual("new", d.Dictionary["existing"]); Assert.AreEqual("appended", d.Dictionary["appended"]); Assert.AreEqual(1, d.List.Count); Assert.AreEqual("existing", d.List[0]); } public interface IKeyValueId { int Id { get; set; } string Key { get; set; } string Value { get; set; } } public class KeyValueId : IKeyValueId { public int Id { get; set; } public string Key { get; set; } public string Value { get; set; } } public class ThisGenericTest where T : IKeyValueId { private Dictionary _dict1 = new Dictionary(); public string MyProperty { get; set; } public void Add(T item) { _dict1.Add(item.Key, item); } public T this[string key] { get { return _dict1[key]; } set { _dict1[key] = value; } } public T this[int id] { get { return _dict1.Values.FirstOrDefault(x => x.Id == id); } set { var item = this[id]; if (item == null) Add(value); else _dict1[item.Key] = value; } } public string ToJson() { return JsonConvert.SerializeObject(this, Formatting.Indented); } public T[] TheItems { get { return _dict1.Values.ToArray(); } set { foreach (var item in value) Add(item); } } } [Test] public void IgnoreIndexedProperties() { ThisGenericTest g = new ThisGenericTest(); g.Add(new KeyValueId { Id = 1, Key = "key1", Value = "value1" }); g.Add(new KeyValueId { Id = 2, Key = "key2", Value = "value2" }); g.MyProperty = "some value"; string json = g.ToJson(); StringAssert.AreEqual(@"{ ""MyProperty"": ""some value"", ""TheItems"": [ { ""Id"": 1, ""Key"": ""key1"", ""Value"": ""value1"" }, { ""Id"": 2, ""Key"": ""key2"", ""Value"": ""value2"" } ] }", json); ThisGenericTest gen = JsonConvert.DeserializeObject>(json); Assert.AreEqual("some value", gen.MyProperty); } public class JRawValueTestObject { public JRaw Value { get; set; } } [Test] public void JRawValue() { JRawValueTestObject deserialized = JsonConvert.DeserializeObject("{value:3}"); Assert.AreEqual("3", deserialized.Value.ToString()); deserialized = JsonConvert.DeserializeObject("{value:'3'}"); Assert.AreEqual(@"""3""", deserialized.Value.ToString()); } [Test] public void DeserializeDictionaryWithNoDefaultConstructor() { string json = "{key1:'value1',key2:'value2',key3:'value3'}"; var dic = JsonConvert.DeserializeObject(json); Assert.AreEqual(3, dic.Count); Assert.AreEqual("value1", dic["key1"]); Assert.AreEqual("value2", dic["key2"]); Assert.AreEqual("value3", dic["key3"]); } [Test] public void DeserializeDictionaryWithNoDefaultConstructor_PreserveReferences() { string json = "{'$id':'1',key1:'value1',key2:'value2',key3:'value3'}"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All, MetadataPropertyHandling = MetadataPropertyHandling.Default }), "Cannot preserve reference to readonly dictionary, or dictionary created from a non-default constructor: Newtonsoft.Json.Tests.Serialization.JsonSerializerTest+DictionaryWithNoDefaultConstructor. Path 'key1', line 1, position 16."); } public class DictionaryWithNoDefaultConstructor : Dictionary { public DictionaryWithNoDefaultConstructor(IEnumerable> initial) { foreach (KeyValuePair pair in initial) { Add(pair.Key, pair.Value); } } } [JsonObject(MemberSerialization.OptIn)] public class A { [JsonProperty("A1")] private string _A1; public string A1 { get { return _A1; } set { _A1 = value; } } [JsonProperty("A2")] private string A2 { get; set; } } [JsonObject(MemberSerialization.OptIn)] public class B : A { public string B1 { get; set; } [JsonProperty("B2")] private string _B2; public string B2 { get { return _B2; } set { _B2 = value; } } [JsonProperty("B3")] private string B3 { get; set; } } [Test] public void SerializeNonPublicBaseJsonProperties() { B value = new B(); string json = JsonConvert.SerializeObject(value, Formatting.Indented); StringAssert.AreEqual(@"{ ""B2"": null, ""A1"": null, ""B3"": null, ""A2"": null }", json); } public class TestClass { public string Key { get; set; } public object Value { get; set; } } [Test] public void DeserializeToObjectProperty() { var json = "{ Key: 'abc', Value: 123 }"; var item = JsonConvert.DeserializeObject(json); Assert.AreEqual(123L, item.Value); } public abstract class Animal { public abstract string Name { get; } } public class Human : Animal { public override string Name { get { return typeof(Human).Name; } } public string Ethnicity { get; set; } } #if !NET20 public class DataContractJsonSerializerTestClass { public TimeSpan TimeSpanProperty { get; set; } public Guid GuidProperty { get; set; } public Animal AnimalProperty { get; set; } } [Test] public void DataContractJsonSerializerTest() { DataContractJsonSerializerTestClass c = new DataContractJsonSerializerTestClass(); c.TimeSpanProperty = new TimeSpan(200, 20, 59, 30, 900); c.GuidProperty = new Guid("66143115-BE2A-4a59-AF0A-348E1EA15B1E"); c.AnimalProperty = new Human() { Ethnicity = "European" }; MemoryStream ms = new MemoryStream(); DataContractJsonSerializer serializer = new DataContractJsonSerializer( typeof(DataContractJsonSerializerTestClass), new Type[] { typeof(Human) }); serializer.WriteObject(ms, c); byte[] jsonBytes = ms.ToArray(); string json = Encoding.UTF8.GetString(jsonBytes, 0, jsonBytes.Length); //Console.WriteLine(JObject.Parse(json).ToString()); //Console.WriteLine(); //Console.WriteLine(JsonConvert.SerializeObject(c, Formatting.Indented, new JsonSerializerSettings // { // // TypeNameHandling = TypeNameHandling.Objects // })); } #endif public class ModelStateDictionary : IDictionary { private readonly Dictionary _innerDictionary = new Dictionary(StringComparer.OrdinalIgnoreCase); public ModelStateDictionary() { } public ModelStateDictionary(ModelStateDictionary dictionary) { if (dictionary == null) { throw new ArgumentNullException("dictionary"); } foreach (var entry in dictionary) { _innerDictionary.Add(entry.Key, entry.Value); } } public int Count { get { return _innerDictionary.Count; } } public bool IsReadOnly { get { return ((IDictionary)_innerDictionary).IsReadOnly; } } public ICollection Keys { get { return _innerDictionary.Keys; } } public T this[string key] { get { T value; _innerDictionary.TryGetValue(key, out value); return value; } set { _innerDictionary[key] = value; } } public ICollection Values { get { return _innerDictionary.Values; } } public void Add(KeyValuePair item) { ((IDictionary)_innerDictionary).Add(item); } public void Add(string key, T value) { _innerDictionary.Add(key, value); } public void Clear() { _innerDictionary.Clear(); } public bool Contains(KeyValuePair item) { return ((IDictionary)_innerDictionary).Contains(item); } public bool ContainsKey(string key) { return _innerDictionary.ContainsKey(key); } public void CopyTo(KeyValuePair[] array, int arrayIndex) { ((IDictionary)_innerDictionary).CopyTo(array, arrayIndex); } public IEnumerator> GetEnumerator() { return _innerDictionary.GetEnumerator(); } public void Merge(ModelStateDictionary dictionary) { if (dictionary == null) { return; } foreach (var entry in dictionary) { this[entry.Key] = entry.Value; } } public bool Remove(KeyValuePair item) { return ((IDictionary)_innerDictionary).Remove(item); } public bool Remove(string key) { return _innerDictionary.Remove(key); } public bool TryGetValue(string key, out T value) { return _innerDictionary.TryGetValue(key, out value); } IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable)_innerDictionary).GetEnumerator(); } } [Test] public void SerializeNonIDictionary() { ModelStateDictionary modelStateDictionary = new ModelStateDictionary(); modelStateDictionary.Add("key", "value"); string json = JsonConvert.SerializeObject(modelStateDictionary); Assert.AreEqual(@"{""key"":""value""}", json); ModelStateDictionary newModelStateDictionary = JsonConvert.DeserializeObject>(json); Assert.AreEqual(1, newModelStateDictionary.Count); Assert.AreEqual("value", newModelStateDictionary["key"]); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) public class ISerializableTestObject : ISerializable { internal string _stringValue; internal int _intValue; internal DateTimeOffset _dateTimeOffsetValue; internal Person _personValue; internal Person _nullPersonValue; internal int? _nullableInt; internal bool _booleanValue; internal byte _byteValue; internal char _charValue; internal DateTime _dateTimeValue; internal decimal _decimalValue; internal short _shortValue; internal long _longValue; internal sbyte _sbyteValue; internal float _floatValue; internal ushort _ushortValue; internal uint _uintValue; internal ulong _ulongValue; public ISerializableTestObject(string stringValue, int intValue, DateTimeOffset dateTimeOffset, Person personValue) { _stringValue = stringValue; _intValue = intValue; _dateTimeOffsetValue = dateTimeOffset; _personValue = personValue; _dateTimeValue = new DateTime(0, DateTimeKind.Utc); } protected ISerializableTestObject(SerializationInfo info, StreamingContext context) { _stringValue = info.GetString("stringValue"); _intValue = info.GetInt32("intValue"); _dateTimeOffsetValue = (DateTimeOffset)info.GetValue("dateTimeOffsetValue", typeof(DateTimeOffset)); _personValue = (Person)info.GetValue("personValue", typeof(Person)); _nullPersonValue = (Person)info.GetValue("nullPersonValue", typeof(Person)); _nullableInt = (int?)info.GetValue("nullableInt", typeof(int?)); _booleanValue = info.GetBoolean("booleanValue"); _byteValue = info.GetByte("byteValue"); _charValue = info.GetChar("charValue"); _dateTimeValue = info.GetDateTime("dateTimeValue"); _decimalValue = info.GetDecimal("decimalValue"); _shortValue = info.GetInt16("shortValue"); _longValue = info.GetInt64("longValue"); _sbyteValue = info.GetSByte("sbyteValue"); _floatValue = info.GetSingle("floatValue"); _ushortValue = info.GetUInt16("ushortValue"); _uintValue = info.GetUInt32("uintValue"); _ulongValue = info.GetUInt64("ulongValue"); } public void GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue("stringValue", _stringValue); info.AddValue("intValue", _intValue); info.AddValue("dateTimeOffsetValue", _dateTimeOffsetValue); info.AddValue("personValue", _personValue); info.AddValue("nullPersonValue", _nullPersonValue); info.AddValue("nullableInt", null); info.AddValue("booleanValue", _booleanValue); info.AddValue("byteValue", _byteValue); info.AddValue("charValue", _charValue); info.AddValue("dateTimeValue", _dateTimeValue); info.AddValue("decimalValue", _decimalValue); info.AddValue("shortValue", _shortValue); info.AddValue("longValue", _longValue); info.AddValue("sbyteValue", _sbyteValue); info.AddValue("floatValue", _floatValue); info.AddValue("ushortValue", _ushortValue); info.AddValue("uintValue", _uintValue); info.AddValue("ulongValue", _ulongValue); } } #if DEBUG [Test] public void SerializeISerializableInPartialTrustWithIgnoreInterface() { try { JsonTypeReflector.SetFullyTrusted(false); ISerializableTestObject value = new ISerializableTestObject("string!", 0, default(DateTimeOffset), null); string json = JsonConvert.SerializeObject(value, new JsonSerializerSettings { ContractResolver = new DefaultContractResolver(false) { IgnoreSerializableInterface = true } }); Assert.AreEqual("{}", json); value = JsonConvert.DeserializeObject("{booleanValue:true}", new JsonSerializerSettings { ContractResolver = new DefaultContractResolver(false) { IgnoreSerializableInterface = true } }); Assert.IsNotNull(value); Assert.AreEqual(false, value._booleanValue); } finally { JsonTypeReflector.SetFullyTrusted(true); } } [Test] public void SerializeISerializableInPartialTrust() { try { ExceptionAssert.Throws(() => { JsonTypeReflector.SetFullyTrusted(false); JsonConvert.DeserializeObject("{booleanValue:true}"); }, @"Type 'Newtonsoft.Json.Tests.Serialization.JsonSerializerTest+ISerializableTestObject' implements ISerializable but cannot be deserialized using the ISerializable interface because the current application is not fully trusted and ISerializable can expose secure data." + Environment.NewLine + @"To fix this error either change the environment to be fully trusted, change the application to not deserialize the type, add JsonObjectAttribute to the type or change the JsonSerializer setting ContractResolver to use a new DefaultContractResolver with IgnoreSerializableInterface set to true." + Environment.NewLine + @"Path 'booleanValue', line 1, position 14."); } finally { JsonTypeReflector.SetFullyTrusted(true); } } [Test] public void DeserializeISerializableInPartialTrust() { try { ExceptionAssert.Throws(() => { JsonTypeReflector.SetFullyTrusted(false); ISerializableTestObject value = new ISerializableTestObject("string!", 0, default(DateTimeOffset), null); JsonConvert.SerializeObject(value); }, @"Type 'Newtonsoft.Json.Tests.Serialization.JsonSerializerTest+ISerializableTestObject' implements ISerializable but cannot be serialized using the ISerializable interface because the current application is not fully trusted and ISerializable can expose secure data." + Environment.NewLine + @"To fix this error either change the environment to be fully trusted, change the application to not deserialize the type, add JsonObjectAttribute to the type or change the JsonSerializer setting ContractResolver to use a new DefaultContractResolver with IgnoreSerializableInterface set to true." + Environment.NewLine + @"Path ''."); } finally { JsonTypeReflector.SetFullyTrusted(true); } } #endif [Test] public void SerializeISerializableTestObject_IsoDate() { Person person = new Person(); person.BirthDate = new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Utc); person.LastModified = person.BirthDate; person.Department = "Department!"; person.Name = "Name!"; DateTimeOffset dateTimeOffset = new DateTimeOffset(2000, 12, 20, 22, 59, 59, TimeSpan.FromHours(2)); string dateTimeOffsetText; #if !NET20 dateTimeOffsetText = @"2000-12-20T22:59:59+02:00"; #else dateTimeOffsetText = @"12/20/2000 22:59:59 +02:00"; #endif ISerializableTestObject o = new ISerializableTestObject("String!", int.MinValue, dateTimeOffset, person); string json = JsonConvert.SerializeObject(o, Formatting.Indented); StringAssert.AreEqual(@"{ ""stringValue"": ""String!"", ""intValue"": -2147483648, ""dateTimeOffsetValue"": """ + dateTimeOffsetText + @""", ""personValue"": { ""Name"": ""Name!"", ""BirthDate"": ""2000-01-01T01:01:01Z"", ""LastModified"": ""2000-01-01T01:01:01Z"" }, ""nullPersonValue"": null, ""nullableInt"": null, ""booleanValue"": false, ""byteValue"": 0, ""charValue"": ""\u0000"", ""dateTimeValue"": ""0001-01-01T00:00:00Z"", ""decimalValue"": 0.0, ""shortValue"": 0, ""longValue"": 0, ""sbyteValue"": 0, ""floatValue"": 0.0, ""ushortValue"": 0, ""uintValue"": 0, ""ulongValue"": 0 }", json); ISerializableTestObject o2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("String!", o2._stringValue); Assert.AreEqual(int.MinValue, o2._intValue); Assert.AreEqual(dateTimeOffset, o2._dateTimeOffsetValue); Assert.AreEqual("Name!", o2._personValue.Name); Assert.AreEqual(null, o2._nullPersonValue); Assert.AreEqual(null, o2._nullableInt); } [Test] public void SerializeISerializableTestObject_MsAjax() { Person person = new Person(); person.BirthDate = new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Utc); person.LastModified = person.BirthDate; person.Department = "Department!"; person.Name = "Name!"; DateTimeOffset dateTimeOffset = new DateTimeOffset(2000, 12, 20, 22, 59, 59, TimeSpan.FromHours(2)); string dateTimeOffsetText; #if !NET20 dateTimeOffsetText = @"\/Date(977345999000+0200)\/"; #else dateTimeOffsetText = @"12/20/2000 22:59:59 +02:00"; #endif ISerializableTestObject o = new ISerializableTestObject("String!", int.MinValue, dateTimeOffset, person); string json = JsonConvert.SerializeObject(o, Formatting.Indented, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); StringAssert.AreEqual(@"{ ""stringValue"": ""String!"", ""intValue"": -2147483648, ""dateTimeOffsetValue"": """ + dateTimeOffsetText + @""", ""personValue"": { ""Name"": ""Name!"", ""BirthDate"": ""\/Date(946688461000)\/"", ""LastModified"": ""\/Date(946688461000)\/"" }, ""nullPersonValue"": null, ""nullableInt"": null, ""booleanValue"": false, ""byteValue"": 0, ""charValue"": ""\u0000"", ""dateTimeValue"": ""\/Date(-62135596800000)\/"", ""decimalValue"": 0.0, ""shortValue"": 0, ""longValue"": 0, ""sbyteValue"": 0, ""floatValue"": 0.0, ""ushortValue"": 0, ""uintValue"": 0, ""ulongValue"": 0 }", json); ISerializableTestObject o2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("String!", o2._stringValue); Assert.AreEqual(int.MinValue, o2._intValue); Assert.AreEqual(dateTimeOffset, o2._dateTimeOffsetValue); Assert.AreEqual("Name!", o2._personValue.Name); Assert.AreEqual(null, o2._nullPersonValue); Assert.AreEqual(null, o2._nullableInt); } #endif public class KVPair { public TKey Key { get; set; } public TValue Value { get; set; } public KVPair(TKey k, TValue v) { Key = k; Value = v; } } [Test] public void DeserializeUsingNonDefaultConstructorWithLeftOverValues() { List> kvPairs = JsonConvert.DeserializeObject>>( "[{\"Key\":\"Two\",\"Value\":\"2\"},{\"Key\":\"One\",\"Value\":\"1\"}]"); Assert.AreEqual(2, kvPairs.Count); Assert.AreEqual("Two", kvPairs[0].Key); Assert.AreEqual("2", kvPairs[0].Value); Assert.AreEqual("One", kvPairs[1].Key); Assert.AreEqual("1", kvPairs[1].Value); } [Test] public void SerializeClassWithInheritedProtectedMember() { AA myA = new AA(2); string json = JsonConvert.SerializeObject(myA, Formatting.Indented); StringAssert.AreEqual(@"{ ""AA_field1"": 2, ""AA_property1"": 2, ""AA_property2"": 2, ""AA_property3"": 2, ""AA_property4"": 2 }", json); BB myB = new BB(3, 4); json = JsonConvert.SerializeObject(myB, Formatting.Indented); StringAssert.AreEqual(@"{ ""BB_field1"": 4, ""BB_field2"": 4, ""AA_field1"": 3, ""BB_property1"": 4, ""BB_property2"": 4, ""BB_property3"": 4, ""BB_property4"": 4, ""BB_property5"": 4, ""BB_property7"": 4, ""AA_property1"": 3, ""AA_property2"": 3, ""AA_property3"": 3, ""AA_property4"": 3 }", json); } #if !(PORTABLE || ASPNETCORE50) [Test] public void DeserializeClassWithInheritedProtectedMember() { AA myA = JsonConvert.DeserializeObject( @"{ ""AA_field1"": 2, ""AA_field2"": 2, ""AA_property1"": 2, ""AA_property2"": 2, ""AA_property3"": 2, ""AA_property4"": 2, ""AA_property5"": 2, ""AA_property6"": 2 }"); Assert.AreEqual(2, ReflectionUtils.GetMemberValue(typeof(AA).GetField("AA_field1", BindingFlags.Instance | BindingFlags.NonPublic), myA)); Assert.AreEqual(0, ReflectionUtils.GetMemberValue(typeof(AA).GetField("AA_field2", BindingFlags.Instance | BindingFlags.NonPublic), myA)); Assert.AreEqual(2, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property1", BindingFlags.Instance | BindingFlags.NonPublic), myA)); Assert.AreEqual(2, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property2", BindingFlags.Instance | BindingFlags.NonPublic), myA)); Assert.AreEqual(2, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property3", BindingFlags.Instance | BindingFlags.NonPublic), myA)); Assert.AreEqual(2, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property4", BindingFlags.Instance | BindingFlags.NonPublic), myA)); Assert.AreEqual(0, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property5", BindingFlags.Instance | BindingFlags.NonPublic), myA)); Assert.AreEqual(0, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property6", BindingFlags.Instance | BindingFlags.NonPublic), myA)); BB myB = JsonConvert.DeserializeObject( @"{ ""BB_field1"": 4, ""BB_field2"": 4, ""AA_field1"": 3, ""AA_field2"": 3, ""AA_property1"": 2, ""AA_property2"": 2, ""AA_property3"": 2, ""AA_property4"": 2, ""AA_property5"": 2, ""AA_property6"": 2, ""BB_property1"": 3, ""BB_property2"": 3, ""BB_property3"": 3, ""BB_property4"": 3, ""BB_property5"": 3, ""BB_property6"": 3, ""BB_property7"": 3, ""BB_property8"": 3 }"); Assert.AreEqual(3, ReflectionUtils.GetMemberValue(typeof(AA).GetField("AA_field1", BindingFlags.Instance | BindingFlags.NonPublic), myB)); Assert.AreEqual(0, ReflectionUtils.GetMemberValue(typeof(AA).GetField("AA_field2", BindingFlags.Instance | BindingFlags.NonPublic), myB)); Assert.AreEqual(2, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property1", BindingFlags.Instance | BindingFlags.NonPublic), myB)); Assert.AreEqual(2, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property2", BindingFlags.Instance | BindingFlags.NonPublic), myB)); Assert.AreEqual(2, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property3", BindingFlags.Instance | BindingFlags.NonPublic), myB)); Assert.AreEqual(2, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property4", BindingFlags.Instance | BindingFlags.NonPublic), myB)); Assert.AreEqual(0, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property5", BindingFlags.Instance | BindingFlags.NonPublic), myB)); Assert.AreEqual(0, ReflectionUtils.GetMemberValue(typeof(AA).GetProperty("AA_property6", BindingFlags.Instance | BindingFlags.NonPublic), myB)); Assert.AreEqual(4, myB.BB_field1); Assert.AreEqual(4, myB.BB_field2); Assert.AreEqual(3, myB.BB_property1); Assert.AreEqual(3, myB.BB_property2); Assert.AreEqual(3, ReflectionUtils.GetMemberValue(typeof(BB).GetProperty("BB_property3", BindingFlags.Instance | BindingFlags.Public), myB)); Assert.AreEqual(3, ReflectionUtils.GetMemberValue(typeof(BB).GetProperty("BB_property4", BindingFlags.Instance | BindingFlags.NonPublic), myB)); Assert.AreEqual(0, myB.BB_property5); Assert.AreEqual(3, ReflectionUtils.GetMemberValue(typeof(BB).GetProperty("BB_property6", BindingFlags.Instance | BindingFlags.Public), myB)); Assert.AreEqual(3, ReflectionUtils.GetMemberValue(typeof(BB).GetProperty("BB_property7", BindingFlags.Instance | BindingFlags.Public), myB)); Assert.AreEqual(3, ReflectionUtils.GetMemberValue(typeof(BB).GetProperty("BB_property8", BindingFlags.Instance | BindingFlags.Public), myB)); } #endif public class AA { [JsonProperty] protected int AA_field1; protected int AA_field2; [JsonProperty] protected int AA_property1 { get; set; } [JsonProperty] protected int AA_property2 { get; private set; } [JsonProperty] protected int AA_property3 { private get; set; } [JsonProperty] private int AA_property4 { get; set; } protected int AA_property5 { get; private set; } protected int AA_property6 { private get; set; } public AA() { } public AA(int f) { AA_field1 = f; AA_field2 = f; AA_property1 = f; AA_property2 = f; AA_property3 = f; AA_property4 = f; AA_property5 = f; AA_property6 = f; } } public class BB : AA { [JsonProperty] public int BB_field1; public int BB_field2; [JsonProperty] public int BB_property1 { get; set; } [JsonProperty] public int BB_property2 { get; private set; } [JsonProperty] public int BB_property3 { private get; set; } [JsonProperty] private int BB_property4 { get; set; } public int BB_property5 { get; private set; } public int BB_property6 { private get; set; } [JsonProperty] public int BB_property7 { protected get; set; } public int BB_property8 { protected get; set; } public BB() { } public BB(int f, int g) : base(f) { BB_field1 = g; BB_field2 = g; BB_property1 = g; BB_property2 = g; BB_property3 = g; BB_property4 = g; BB_property5 = g; BB_property6 = g; BB_property7 = g; BB_property8 = g; } } #if !NET20 public class XNodeTestObject { public XDocument Document { get; set; } public XElement Element { get; set; } } #endif #if !NETFX_CORE public class XmlNodeTestObject { public XmlDocument Document { get; set; } } #endif #if !(NET20 || PORTABLE40) [Test] public void SerializeDeserializeXNodeProperties() { XNodeTestObject testObject = new XNodeTestObject(); testObject.Document = XDocument.Parse("hehe, root"); testObject.Element = XElement.Parse(@"element"); string json = JsonConvert.SerializeObject(testObject, Formatting.Indented); string expected = @"{ ""Document"": { ""root"": ""hehe, root"" }, ""Element"": { ""fifth"": { ""@xmlns:json"": ""http://json.org"", ""@json:Awesome"": ""true"", ""#text"": ""element"" } } }"; StringAssert.AreEqual(expected, json); XNodeTestObject newTestObject = JsonConvert.DeserializeObject(json); Assert.AreEqual(testObject.Document.ToString(), newTestObject.Document.ToString()); Assert.AreEqual(testObject.Element.ToString(), newTestObject.Element.ToString()); Assert.IsNull(newTestObject.Element.Parent); } #endif #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void SerializeDeserializeXmlNodeProperties() { XmlNodeTestObject testObject = new XmlNodeTestObject(); XmlDocument document = new XmlDocument(); document.LoadXml("hehe, root"); testObject.Document = document; string json = JsonConvert.SerializeObject(testObject, Formatting.Indented); string expected = @"{ ""Document"": { ""root"": ""hehe, root"" } }"; StringAssert.AreEqual(expected, json); XmlNodeTestObject newTestObject = JsonConvert.DeserializeObject(json); Assert.AreEqual(testObject.Document.InnerXml, newTestObject.Document.InnerXml); } #endif [Test] public void FullClientMapSerialization() { ClientMap source = new ClientMap() { position = new Pos() { X = 100, Y = 200 }, center = new PosDouble() { X = 251.6, Y = 361.3 } }; string json = JsonConvert.SerializeObject(source, new PosConverter(), new PosDoubleConverter()); Assert.AreEqual("{\"position\":new Pos(100,200),\"center\":new PosD(251.6,361.3)}", json); } public class ClientMap { public Pos position { get; set; } public PosDouble center { get; set; } } public class Pos { public int X { get; set; } public int Y { get; set; } } public class PosDouble { public double X { get; set; } public double Y { get; set; } } public class PosConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { Pos p = (Pos)value; if (p != null) writer.WriteRawValue(String.Format("new Pos({0},{1})", p.X, p.Y)); else writer.WriteNull(); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { throw new NotImplementedException(); } public override bool CanConvert(Type objectType) { return objectType == typeof(Pos); } } public class PosDoubleConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { PosDouble p = (PosDouble)value; if (p != null) writer.WriteRawValue(String.Format(CultureInfo.InvariantCulture, "new PosD({0},{1})", p.X, p.Y)); else writer.WriteNull(); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { throw new NotImplementedException(); } public override bool CanConvert(Type objectType) { return objectType == typeof(PosDouble); } } [Test] public void SerializeRefAdditionalContent() { //Additional text found in JSON string after finishing deserializing object. //Test 1 var reference = new Dictionary(); reference.Add("$ref", "Persons"); reference.Add("$id", 1); var child = new Dictionary(); child.Add("_id", 2); child.Add("Name", "Isabell"); child.Add("Father", reference); var json = JsonConvert.SerializeObject(child, Formatting.Indented); ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject>(json); }, "Additional content found in JSON reference object. A JSON reference object should only have a $ref property. Path 'Father.$id', line 6, position 11."); } [Test] public void SerializeRefBadType() { ExceptionAssert.Throws(() => { //Additional text found in JSON string after finishing deserializing object. //Test 1 var reference = new Dictionary(); reference.Add("$ref", 1); reference.Add("$id", 1); var child = new Dictionary(); child.Add("_id", 2); child.Add("Name", "Isabell"); child.Add("Father", reference); var json = JsonConvert.SerializeObject(child, Formatting.Indented); JsonConvert.DeserializeObject>(json); }, "JSON reference $ref property must have a string or null value. Path 'Father.$ref', line 5, position 14."); } [Test] public void SerializeRefNull() { var reference = new Dictionary(); reference.Add("$ref", null); reference.Add("$id", null); reference.Add("blah", "blah!"); var child = new Dictionary(); child.Add("_id", 2); child.Add("Name", "Isabell"); child.Add("Father", reference); string json = JsonConvert.SerializeObject(child); Console.WriteLine(json); Dictionary result = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, result.Count); Assert.AreEqual(1, ((JObject)result["Father"]).Count); Assert.AreEqual("blah!", (string)((JObject)result["Father"])["blah"]); } public class ConstructorCompexIgnoredProperty { [JsonIgnore] public Product Ignored { get; set; } public string First { get; set; } public int Second { get; set; } public ConstructorCompexIgnoredProperty(string first, int second) { First = first; Second = second; } } [Test] public void DeserializeIgnoredPropertyInConstructor() { string json = @"{""First"":""First"",""Second"":2,""Ignored"":{""Name"":""James""},""AdditionalContent"":{""LOL"":true}}"; ConstructorCompexIgnoredProperty cc = JsonConvert.DeserializeObject(json); Assert.AreEqual("First", cc.First); Assert.AreEqual(2, cc.Second); Assert.AreEqual(null, cc.Ignored); } [Test] public void DeserializeFloatAsDecimal() { string json = @"{'value':9.9}"; var dic = JsonConvert.DeserializeObject>( json, new JsonSerializerSettings { FloatParseHandling = FloatParseHandling.Decimal }); Assert.AreEqual(typeof(decimal), dic["value"].GetType()); Assert.AreEqual(9.9m, dic["value"]); } public class DictionaryKey { public string Value { get; set; } public override string ToString() { return Value; } public static implicit operator DictionaryKey(string value) { return new DictionaryKey() { Value = value }; } } [Test] public void SerializeDeserializeDictionaryKey() { Dictionary dictionary = new Dictionary(); dictionary.Add(new DictionaryKey() { Value = "First!" }, "First"); dictionary.Add(new DictionaryKey() { Value = "Second!" }, "Second"); string json = JsonConvert.SerializeObject(dictionary, Formatting.Indented); StringAssert.AreEqual(@"{ ""First!"": ""First"", ""Second!"": ""Second"" }", json); Dictionary newDictionary = JsonConvert.DeserializeObject>(json); Assert.AreEqual(2, newDictionary.Count); } [Test] public void SerializeNullableArray() { string jsonText = JsonConvert.SerializeObject(new double?[] { 2.4, 4.3, null }, Formatting.Indented); StringAssert.AreEqual(@"[ 2.4, 4.3, null ]", jsonText); } [Test] public void DeserializeNullableArray() { double?[] d = (double?[])JsonConvert.DeserializeObject(@"[ 2.4, 4.3, null ]", typeof(double?[])); Assert.AreEqual(3, d.Length); Assert.AreEqual(2.4, d[0]); Assert.AreEqual(4.3, d[1]); Assert.AreEqual(null, d[2]); } #if !NET20 [Test] public void SerializeHashSet() { string jsonText = JsonConvert.SerializeObject(new HashSet() { "One", "2", "III" }, Formatting.Indented); StringAssert.AreEqual(@"[ ""One"", ""2"", ""III"" ]", jsonText); HashSet d = JsonConvert.DeserializeObject>(jsonText); Assert.AreEqual(3, d.Count); Assert.IsTrue(d.Contains("One")); Assert.IsTrue(d.Contains("2")); Assert.IsTrue(d.Contains("III")); } #endif private class MyClass { public byte[] Prop1 { get; set; } public MyClass() { Prop1 = new byte[0]; } } [Test] public void DeserializeByteArray() { JsonSerializer serializer1 = new JsonSerializer(); serializer1.Converters.Add(new IsoDateTimeConverter()); serializer1.NullValueHandling = NullValueHandling.Ignore; string json = @"[{""Prop1"":""""},{""Prop1"":""""}]"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); MyClass[] z = (MyClass[])serializer1.Deserialize(reader, typeof(MyClass[])); Assert.AreEqual(2, z.Length); Assert.AreEqual(0, z[0].Prop1.Length); Assert.AreEqual(0, z[1].Prop1.Length); } #if !(NET20 || NETFX_CORE || ASPNETCORE50) public class StringDictionaryTestClass { public StringDictionary StringDictionaryProperty { get; set; } } [Test] public void StringDictionaryTest() { string classRef = typeof(StringDictionary).FullName; StringDictionaryTestClass s1 = new StringDictionaryTestClass() { StringDictionaryProperty = new StringDictionary() { { "1", "One" }, { "2", "II" }, { "3", "3" } } }; string json = JsonConvert.SerializeObject(s1, Formatting.Indented); // .NET 4.5.3 added IDictionary to StringDictionary if (s1.StringDictionaryProperty is IDictionary) { StringDictionaryTestClass d = JsonConvert.DeserializeObject(json); Assert.AreEqual(3, d.StringDictionaryProperty.Count); Assert.AreEqual("One", d.StringDictionaryProperty["1"]); Assert.AreEqual("II", d.StringDictionaryProperty["2"]); Assert.AreEqual("3", d.StringDictionaryProperty["3"]); } else { ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json); }, "Cannot create and populate list type " + classRef + ". Path 'StringDictionaryProperty', line 2, position 32."); } } #endif [JsonObject(MemberSerialization.OptIn)] public struct StructWithAttribute { public string MyString { get; set; } [JsonProperty] public int MyInt { get; set; } } [Test] public void SerializeStructWithJsonObjectAttribute() { StructWithAttribute testStruct = new StructWithAttribute { MyInt = int.MaxValue }; string json = JsonConvert.SerializeObject(testStruct, Formatting.Indented); StringAssert.AreEqual(@"{ ""MyInt"": 2147483647 }", json); StructWithAttribute newStruct = JsonConvert.DeserializeObject(json); Assert.AreEqual(int.MaxValue, newStruct.MyInt); } public class TimeZoneOffsetObject { public DateTimeOffset Offset { get; set; } } #if !NET20 [Test] public void ReadWriteTimeZoneOffsetIso() { var serializeObject = JsonConvert.SerializeObject(new TimeZoneOffsetObject { Offset = new DateTimeOffset(new DateTime(2000, 1, 1), TimeSpan.FromHours(6)) }); Assert.AreEqual("{\"Offset\":\"2000-01-01T00:00:00+06:00\"}", serializeObject); JsonTextReader reader = new JsonTextReader(new StringReader(serializeObject)); reader.DateParseHandling = DateParseHandling.None; JsonSerializer serializer = new JsonSerializer(); var deserializeObject = serializer.Deserialize(reader); Assert.AreEqual(TimeSpan.FromHours(6), deserializeObject.Offset.Offset); Assert.AreEqual(new DateTime(2000, 1, 1), deserializeObject.Offset.Date); } [Test] public void DeserializePropertyNullableDateTimeOffsetExactIso() { NullableDateTimeTestClass d = JsonConvert.DeserializeObject("{\"DateTimeOffsetField\":\"2000-01-01T00:00:00+06:00\"}"); Assert.AreEqual(new DateTimeOffset(new DateTime(2000, 1, 1), TimeSpan.FromHours(6)), d.DateTimeOffsetField); } [Test] public void ReadWriteTimeZoneOffsetMsAjax() { var serializeObject = JsonConvert.SerializeObject(new TimeZoneOffsetObject { Offset = new DateTimeOffset(new DateTime(2000, 1, 1), TimeSpan.FromHours(6)) }, Formatting.None, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); Assert.AreEqual("{\"Offset\":\"\\/Date(946663200000+0600)\\/\"}", serializeObject); JsonTextReader reader = new JsonTextReader(new StringReader(serializeObject)); JsonSerializer serializer = new JsonSerializer(); serializer.DateParseHandling = DateParseHandling.None; var deserializeObject = serializer.Deserialize(reader); Assert.AreEqual(TimeSpan.FromHours(6), deserializeObject.Offset.Offset); Assert.AreEqual(new DateTime(2000, 1, 1), deserializeObject.Offset.Date); } [Test] public void DeserializePropertyNullableDateTimeOffsetExactMsAjax() { NullableDateTimeTestClass d = JsonConvert.DeserializeObject("{\"DateTimeOffsetField\":\"\\/Date(946663200000+0600)\\/\"}"); Assert.AreEqual(new DateTimeOffset(new DateTime(2000, 1, 1), TimeSpan.FromHours(6)), d.DateTimeOffsetField); } #endif public abstract class LogEvent { [JsonProperty("event")] public abstract string EventName { get; } } public class DerivedEvent : LogEvent { public override string EventName { get { return "derived"; } } } [Test] public void OverridenPropertyMembers() { string json = JsonConvert.SerializeObject(new DerivedEvent(), Formatting.Indented); StringAssert.AreEqual(@"{ ""event"": ""derived"" }", json); } #if !(NET35 || NET20 || PORTABLE40) [Test] public void SerializeExpandoObject() { dynamic expando = new ExpandoObject(); expando.Int = 1; expando.Decimal = 99.9d; expando.Complex = new ExpandoObject(); expando.Complex.String = "I am a string"; expando.Complex.DateTime = new DateTime(2000, 12, 20, 18, 55, 0, DateTimeKind.Utc); string json = JsonConvert.SerializeObject(expando, Formatting.Indented); StringAssert.AreEqual(@"{ ""Int"": 1, ""Decimal"": 99.9, ""Complex"": { ""String"": ""I am a string"", ""DateTime"": ""2000-12-20T18:55:00Z"" } }", json); IDictionary newExpando = JsonConvert.DeserializeObject(json); CustomAssert.IsInstanceOfType(typeof(long), newExpando["Int"]); Assert.AreEqual((long)expando.Int, newExpando["Int"]); CustomAssert.IsInstanceOfType(typeof(double), newExpando["Decimal"]); Assert.AreEqual(expando.Decimal, newExpando["Decimal"]); CustomAssert.IsInstanceOfType(typeof(ExpandoObject), newExpando["Complex"]); IDictionary o = (ExpandoObject)newExpando["Complex"]; CustomAssert.IsInstanceOfType(typeof(string), o["String"]); Assert.AreEqual(expando.Complex.String, o["String"]); CustomAssert.IsInstanceOfType(typeof(DateTime), o["DateTime"]); Assert.AreEqual(expando.Complex.DateTime, o["DateTime"]); } #endif [Test] public void DeserializeDecimalExact() { decimal d = JsonConvert.DeserializeObject("123456789876543.21"); Assert.AreEqual(123456789876543.21m, d); } [Test] public void DeserializeNullableDecimalExact() { decimal? d = JsonConvert.DeserializeObject("123456789876543.21"); Assert.AreEqual(123456789876543.21m, d); } [Test] public void DeserializeDecimalPropertyExact() { string json = "{Amount:123456789876543.21}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.FloatParseHandling = FloatParseHandling.Decimal; JsonSerializer serializer = new JsonSerializer(); Invoice i = serializer.Deserialize(reader); Assert.AreEqual(123456789876543.21m, i.Amount); } [Test] public void DeserializeDecimalArrayExact() { string json = "[123456789876543.21]"; IList a = JsonConvert.DeserializeObject>(json); Assert.AreEqual(123456789876543.21m, a[0]); } [Test] public void DeserializeDecimalDictionaryExact() { string json = "{'Value':123456789876543.21}"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.FloatParseHandling = FloatParseHandling.Decimal; JsonSerializer serializer = new JsonSerializer(); IDictionary d = serializer.Deserialize>(reader); Assert.AreEqual(123456789876543.21m, d["Value"]); } public struct Vector { public float X; public float Y; public float Z; public override string ToString() { return string.Format("({0},{1},{2})", X, Y, Z); } } public class VectorParent { public Vector Position; } [Test] public void DeserializeStructProperty() { VectorParent obj = new VectorParent(); obj.Position = new Vector { X = 1, Y = 2, Z = 3 }; string str = JsonConvert.SerializeObject(obj); obj = JsonConvert.DeserializeObject(str); Assert.AreEqual(1, obj.Position.X); Assert.AreEqual(2, obj.Position.Y); Assert.AreEqual(3, obj.Position.Z); } [JsonObject(MemberSerialization.OptIn)] public class Derived : Base { [JsonProperty] public string IDoWork { get; private set; } private Derived() { } internal Derived(string dontWork, string doWork) : base(dontWork) { IDoWork = doWork; } } [JsonObject(MemberSerialization.OptIn)] public class Base { [JsonProperty] public string IDontWork { get; private set; } protected Base() { } internal Base(string dontWork) { IDontWork = dontWork; } } [Test] public void PrivateSetterOnBaseClassProperty() { var derived = new Derived("meh", "woo"); var settings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor }; string json = JsonConvert.SerializeObject(derived, Formatting.Indented, settings); var meh = JsonConvert.DeserializeObject(json, settings); Assert.AreEqual(((Derived)meh).IDoWork, "woo"); Assert.AreEqual(meh.IDontWork, "meh"); } #if !(NET20 || NETFX_CORE || ASPNETCORE50) [DataContract] public struct StructISerializable : ISerializable { private string _name; public StructISerializable(SerializationInfo info, StreamingContext context) { _name = info.GetString("Name"); } [DataMember] public string Name { get { return _name; } set { _name = value; } } public void GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue("Name", _name); } } [DataContract] public class NullableStructPropertyClass { private StructISerializable _foo1; private StructISerializable? _foo2; [DataMember] public StructISerializable Foo1 { get { return _foo1; } set { _foo1 = value; } } [DataMember] public StructISerializable? Foo2 { get { return _foo2; } set { _foo2 = value; } } } [Test] public void DeserializeNullableStruct() { NullableStructPropertyClass nullableStructPropertyClass = new NullableStructPropertyClass(); nullableStructPropertyClass.Foo1 = new StructISerializable() { Name = "foo 1" }; nullableStructPropertyClass.Foo2 = new StructISerializable() { Name = "foo 2" }; NullableStructPropertyClass barWithNull = new NullableStructPropertyClass(); barWithNull.Foo1 = new StructISerializable() { Name = "foo 1" }; barWithNull.Foo2 = null; //throws error on deserialization because bar1.Foo2 is of type Foo? string s = JsonConvert.SerializeObject(nullableStructPropertyClass); NullableStructPropertyClass deserialized = deserialize(s); Assert.AreEqual(deserialized.Foo1.Name, "foo 1"); Assert.AreEqual(deserialized.Foo2.Value.Name, "foo 2"); //no error Foo2 is null s = JsonConvert.SerializeObject(barWithNull); deserialized = deserialize(s); Assert.AreEqual(deserialized.Foo1.Name, "foo 1"); Assert.AreEqual(deserialized.Foo2, null); } private static NullableStructPropertyClass deserialize(string serStr) { return JsonConvert.DeserializeObject( serStr, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, MissingMemberHandling = MissingMemberHandling.Ignore }); } #endif public class Response { public string Name { get; set; } public JToken Data { get; set; } } [Test] public void DeserializeJToken() { Response response = new Response { Name = "Success", Data = new JObject(new JProperty("First", "Value1"), new JProperty("Second", "Value2")) }; string json = JsonConvert.SerializeObject(response, Formatting.Indented); Response deserializedResponse = JsonConvert.DeserializeObject(json); Assert.AreEqual("Success", deserializedResponse.Name); Assert.IsTrue(deserializedResponse.Data.DeepEquals(response.Data)); } [Test] public void DeserializeMinValueDecimal() { var data = new DecimalTest(decimal.MinValue); var json = JsonConvert.SerializeObject(data); var obj = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.Default }); Assert.AreEqual(decimal.MinValue, obj.Value); } [Test] public void NonPublicConstructorWithJsonConstructorTest() { NonPublicConstructorWithJsonConstructor c = JsonConvert.DeserializeObject("{}"); Assert.AreEqual("NonPublic", c.Constructor); } [Test] public void PublicConstructorOverridenByJsonConstructorTest() { PublicConstructorOverridenByJsonConstructor c = JsonConvert.DeserializeObject("{Value:'value!'}"); Assert.AreEqual("Public Paramatized", c.Constructor); Assert.AreEqual("value!", c.Value); } [Test] public void MultipleParamatrizedConstructorsJsonConstructorTest() { MultipleParamatrizedConstructorsJsonConstructor c = JsonConvert.DeserializeObject("{Value:'value!', Age:1}"); Assert.AreEqual("Public Paramatized 2", c.Constructor); Assert.AreEqual("value!", c.Value); Assert.AreEqual(1, c.Age); } [Test] public void DeserializeEnumerable() { EnumerableClass c = new EnumerableClass { Enumerable = new List { "One", "Two", "Three" } }; string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Enumerable"": [ ""One"", ""Two"", ""Three"" ] }", json); EnumerableClass c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("One", c2.Enumerable.ElementAt(0)); Assert.AreEqual("Two", c2.Enumerable.ElementAt(1)); Assert.AreEqual("Three", c2.Enumerable.ElementAt(2)); } [Test] public void SerializeAttributesOnBase() { ComplexItem i = new ComplexItem(); string json = JsonConvert.SerializeObject(i, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": null }", json); } [Test] public void DeserializeStringEnglish() { string json = @"{ 'Name': 'James Hughes', 'Age': '40', 'Height': '44.4', 'Price': '4' }"; DeserializeStringConvert p = JsonConvert.DeserializeObject(json); Assert.AreEqual(40, p.Age); Assert.AreEqual(44.4, p.Height); Assert.AreEqual(4m, p.Price); } [Test] public void DeserializeNullDateTimeValueTest() { ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject("null", typeof(DateTime)); }, "Error converting value {null} to type 'System.DateTime'. Path '', line 1, position 4."); } [Test] public void DeserializeNullNullableDateTimeValueTest() { object dateTime = JsonConvert.DeserializeObject("null", typeof(DateTime?)); Assert.IsNull(dateTime); } [Test] public void MultiIndexSuperTest() { MultiIndexSuper e = new MultiIndexSuper(); string json = JsonConvert.SerializeObject(e, Formatting.Indented); Assert.AreEqual(@"{}", json); } public class MultiIndexSuper : MultiIndexBase { } public abstract class MultiIndexBase { protected internal object this[string propertyName] { get { return null; } set { } } protected internal object this[object property] { get { return null; } set { } } } public class CommentTestClass { public bool Indexed { get; set; } public int StartYear { get; set; } public IList Values { get; set; } } [Test] public void CommentTestClassTest() { string json = @"{""indexed"":true, ""startYear"":1939, ""values"": [ 3000, /* 1940-1949 */ 3000, 3600, 3600, 3600, 3600, 4200, 4200, 4200, 4200, 4800, /* 1950-1959 */ 4800, 4800, 4800, 4800, 4800, 4800, 6600, 6600, 7800, 7800, /* 1960-1969 */ 7800, 7800, 9000, 10800, 13200, 14100, 15300, 16500, 17700, 22900, /* 1970-1979 */ 25900, 29700, 32400, 35700, 37800, 39600, 42000, 43800, 45000, 48000, /* 1980-1989 */ 51300, 53400, 55500, 57600, 60600, 61200, 62700, 65400, 68400, 72600, /* 1990-1999 */ 76200, 80400, 84900, 87000, 87900, 90000, 94200, 97500, 102000, 106800, /* 2000-2009 */ 106800, 106800] /* 2010-2011 */ }"; CommentTestClass commentTestClass = JsonConvert.DeserializeObject(json); Assert.AreEqual(true, commentTestClass.Indexed); Assert.AreEqual(1939, commentTestClass.StartYear); Assert.AreEqual(63, commentTestClass.Values.Count); } private class DTOWithParameterisedConstructor { public DTOWithParameterisedConstructor(string A) { this.A = A; B = 2; } public string A { get; set; } public int? B { get; set; } } private class DTOWithoutParameterisedConstructor { public DTOWithoutParameterisedConstructor() { B = 2; } public string A { get; set; } public int? B { get; set; } } [Test] public void PopulationBehaviourForOmittedPropertiesIsTheSameForParameterisedConstructorAsForDefaultConstructor() { string json = @"{A:""Test""}"; var withoutParameterisedConstructor = JsonConvert.DeserializeObject(json); var withParameterisedConstructor = JsonConvert.DeserializeObject(json); Assert.AreEqual(withoutParameterisedConstructor.B, withParameterisedConstructor.B); } public class EnumerableArrayPropertyClass { public IEnumerable Numbers { get { return new[] { 1, 2, 3 }; //fails //return new List(new[] { 1, 2, 3 }); //works } } } [Test] public void SkipPopulatingArrayPropertyClass() { string json = JsonConvert.SerializeObject(new EnumerableArrayPropertyClass()); JsonConvert.DeserializeObject(json); } #if !(NET20) [DataContract] public class BaseDataContract { [DataMember(Name = "virtualMember")] public virtual string VirtualMember { get; set; } [DataMember(Name = "nonVirtualMember")] public string NonVirtualMember { get; set; } } public class ChildDataContract : BaseDataContract { public override string VirtualMember { get; set; } public string NewMember { get; set; } } [Test] public void ChildDataContractTest() { ChildDataContract cc = new ChildDataContract { VirtualMember = "VirtualMember!", NonVirtualMember = "NonVirtualMember!" }; string result = JsonConvert.SerializeObject(cc, Formatting.Indented); // Assert.AreEqual(@"{ // ""VirtualMember"": ""VirtualMember!"", // ""NewMember"": null, // ""nonVirtualMember"": ""NonVirtualMember!"" //}", result); Console.WriteLine(result); } [Test] public void ChildDataContractTestWithDataContractSerializer() { ChildDataContract cc = new ChildDataContract { VirtualMember = "VirtualMember!", NonVirtualMember = "NonVirtualMember!" }; DataContractSerializer serializer = new DataContractSerializer(typeof(ChildDataContract)); MemoryStream ms = new MemoryStream(); serializer.WriteObject(ms, cc); string xml = Encoding.UTF8.GetString(ms.ToArray(), 0, Convert.ToInt32(ms.Length)); Console.WriteLine(xml); } #endif [JsonObject(MemberSerialization = MemberSerialization.OptIn)] public class BaseObject { [JsonProperty(PropertyName = "virtualMember")] public virtual string VirtualMember { get; set; } [JsonProperty(PropertyName = "nonVirtualMember")] public string NonVirtualMember { get; set; } } public class ChildObject : BaseObject { public override string VirtualMember { get; set; } public string NewMember { get; set; } } public class ChildWithDifferentOverrideObject : BaseObject { [JsonProperty(PropertyName = "differentVirtualMember")] public override string VirtualMember { get; set; } } [Test] public void ChildObjectTest() { ChildObject cc = new ChildObject { VirtualMember = "VirtualMember!", NonVirtualMember = "NonVirtualMember!" }; string result = JsonConvert.SerializeObject(cc); Assert.AreEqual(@"{""virtualMember"":""VirtualMember!"",""nonVirtualMember"":""NonVirtualMember!""}", result); } [Test] public void ChildWithDifferentOverrideObjectTest() { ChildWithDifferentOverrideObject cc = new ChildWithDifferentOverrideObject { VirtualMember = "VirtualMember!", NonVirtualMember = "NonVirtualMember!" }; string result = JsonConvert.SerializeObject(cc); Console.WriteLine(result); Assert.AreEqual(@"{""differentVirtualMember"":""VirtualMember!"",""nonVirtualMember"":""NonVirtualMember!""}", result); } [JsonObject(MemberSerialization = MemberSerialization.OptIn)] public interface IInterfaceObject { [JsonProperty(PropertyName = "virtualMember")] [JsonConverter(typeof(IsoDateTimeConverter))] DateTime InterfaceMember { get; set; } } public class ImplementInterfaceObject : IInterfaceObject { public DateTime InterfaceMember { get; set; } public string NewMember { get; set; } [JsonProperty(PropertyName = "newMemberWithProperty")] public string NewMemberWithProperty { get; set; } } [Test] public void ImplementInterfaceObjectTest() { ImplementInterfaceObject cc = new ImplementInterfaceObject { InterfaceMember = new DateTime(2010, 12, 31, 0, 0, 0, DateTimeKind.Utc), NewMember = "NewMember!" }; string result = JsonConvert.SerializeObject(cc, Formatting.Indented); StringAssert.AreEqual(@"{ ""virtualMember"": ""2010-12-31T00:00:00Z"", ""newMemberWithProperty"": null }", result); } public class NonDefaultConstructorWithReadOnlyCollectionProperty { public string Title { get; set; } public IList Categories { get; private set; } public NonDefaultConstructorWithReadOnlyCollectionProperty(string title) { Title = title; Categories = new List(); } } [Test] public void NonDefaultConstructorWithReadOnlyCollectionPropertyTest() { NonDefaultConstructorWithReadOnlyCollectionProperty c1 = new NonDefaultConstructorWithReadOnlyCollectionProperty("blah"); c1.Categories.Add("one"); c1.Categories.Add("two"); string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Title"": ""blah"", ""Categories"": [ ""one"", ""two"" ] }", json); NonDefaultConstructorWithReadOnlyCollectionProperty c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(c1.Title, c2.Title); Assert.AreEqual(c1.Categories.Count, c2.Categories.Count); Assert.AreEqual("one", c2.Categories[0]); Assert.AreEqual("two", c2.Categories[1]); } public class NonDefaultConstructorWithReadOnlyDictionaryProperty { public string Title { get; set; } public IDictionary Categories { get; private set; } public NonDefaultConstructorWithReadOnlyDictionaryProperty(string title) { Title = title; Categories = new Dictionary(); } } [Test] public void NonDefaultConstructorWithReadOnlyDictionaryPropertyTest() { NonDefaultConstructorWithReadOnlyDictionaryProperty c1 = new NonDefaultConstructorWithReadOnlyDictionaryProperty("blah"); c1.Categories.Add("one", 1); c1.Categories.Add("two", 2); string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Title"": ""blah"", ""Categories"": { ""one"": 1, ""two"": 2 } }", json); NonDefaultConstructorWithReadOnlyDictionaryProperty c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(c1.Title, c2.Title); Assert.AreEqual(c1.Categories.Count, c2.Categories.Count); Assert.AreEqual(1, c2.Categories["one"]); Assert.AreEqual(2, c2.Categories["two"]); } [JsonObject(MemberSerialization.OptIn)] public class ClassAttributeBase { [JsonProperty] public string BaseClassValue { get; set; } } public class ClassAttributeDerived : ClassAttributeBase { [JsonProperty] public string DerivedClassValue { get; set; } public string NonSerialized { get; set; } } public class CollectionClassAttributeDerived : ClassAttributeBase, ICollection { [JsonProperty] public string CollectionDerivedClassValue { get; set; } public void Add(object item) { throw new NotImplementedException(); } public void Clear() { throw new NotImplementedException(); } public bool Contains(object item) { throw new NotImplementedException(); } public void CopyTo(object[] array, int arrayIndex) { throw new NotImplementedException(); } public int Count { get { throw new NotImplementedException(); } } public bool IsReadOnly { get { throw new NotImplementedException(); } } public bool Remove(object item) { throw new NotImplementedException(); } public IEnumerator GetEnumerator() { throw new NotImplementedException(); } IEnumerator IEnumerable.GetEnumerator() { throw new NotImplementedException(); } } [Test] public void ClassAttributesInheritance() { string json = JsonConvert.SerializeObject(new ClassAttributeDerived { BaseClassValue = "BaseClassValue!", DerivedClassValue = "DerivedClassValue!", NonSerialized = "NonSerialized!" }, Formatting.Indented); StringAssert.AreEqual(@"{ ""DerivedClassValue"": ""DerivedClassValue!"", ""BaseClassValue"": ""BaseClassValue!"" }", json); json = JsonConvert.SerializeObject(new CollectionClassAttributeDerived { BaseClassValue = "BaseClassValue!", CollectionDerivedClassValue = "CollectionDerivedClassValue!" }, Formatting.Indented); StringAssert.AreEqual(@"{ ""CollectionDerivedClassValue"": ""CollectionDerivedClassValue!"", ""BaseClassValue"": ""BaseClassValue!"" }", json); } public class PrivateMembersClassWithAttributes { public PrivateMembersClassWithAttributes(string privateString, string internalString, string readonlyString) { _privateString = privateString; _readonlyString = readonlyString; _internalString = internalString; } public PrivateMembersClassWithAttributes() { _readonlyString = "default!"; } [JsonProperty] private string _privateString; [JsonProperty] private readonly string _readonlyString; [JsonProperty] internal string _internalString; public string UseValue() { return _readonlyString; } } [Test] public void PrivateMembersClassWithAttributesTest() { PrivateMembersClassWithAttributes c1 = new PrivateMembersClassWithAttributes("privateString!", "internalString!", "readonlyString!"); string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""_privateString"": ""privateString!"", ""_readonlyString"": ""readonlyString!"", ""_internalString"": ""internalString!"" }", json); PrivateMembersClassWithAttributes c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual("readonlyString!", c2.UseValue()); } public partial class BusRun { public IEnumerable> Departures { get; set; } public Boolean WheelchairAccessible { get; set; } } [Test] public void DeserializeGenericEnumerableProperty() { BusRun r = JsonConvert.DeserializeObject("{\"Departures\":[\"\\/Date(1309874148734-0400)\\/\",\"\\/Date(1309874148739-0400)\\/\",null],\"WheelchairAccessible\":true}"); Assert.AreEqual(typeof(List), r.Departures.GetType()); Assert.AreEqual(3, r.Departures.Count()); Assert.IsNotNull(r.Departures.ElementAt(0)); Assert.IsNotNull(r.Departures.ElementAt(1)); Assert.IsNull(r.Departures.ElementAt(2)); } #if !(NET20) [DataContract] public class BaseType { [DataMember] public string zebra; } [DataContract] public class DerivedType : BaseType { [DataMember(Order = 0)] public string bird; [DataMember(Order = 1)] public string parrot; [DataMember] public string dog; [DataMember(Order = 3)] public string antelope; [DataMember] public string cat; [JsonProperty(Order = 1)] public string albatross; [JsonProperty(Order = -2)] public string dinosaur; } [Test] public void JsonPropertyDataMemberOrder() { DerivedType d = new DerivedType(); string json = JsonConvert.SerializeObject(d, Formatting.Indented); StringAssert.AreEqual(@"{ ""dinosaur"": null, ""dog"": null, ""cat"": null, ""zebra"": null, ""bird"": null, ""parrot"": null, ""albatross"": null, ""antelope"": null }", json); } #endif public class ClassWithException { public IList Exceptions { get; set; } public ClassWithException() { Exceptions = new List(); } } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void SerializeException1() { ClassWithException classWithException = new ClassWithException(); try { throw new Exception("Test Exception"); } catch (Exception ex) { classWithException.Exceptions.Add(ex); } string sex = JsonConvert.SerializeObject(classWithException); ClassWithException dex = JsonConvert.DeserializeObject(sex); Assert.AreEqual(dex.Exceptions[0].ToString(), dex.Exceptions[0].ToString()); sex = JsonConvert.SerializeObject(classWithException, Formatting.Indented); dex = JsonConvert.DeserializeObject(sex); // this fails! Assert.AreEqual(dex.Exceptions[0].ToString(), dex.Exceptions[0].ToString()); } #endif [Test] public void UriGuidTimeSpanTestClassEmptyTest() { UriGuidTimeSpanTestClass c1 = new UriGuidTimeSpanTestClass(); string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Guid"": ""00000000-0000-0000-0000-000000000000"", ""NullableGuid"": null, ""TimeSpan"": ""00:00:00"", ""NullableTimeSpan"": null, ""Uri"": null }", json); UriGuidTimeSpanTestClass c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(c1.Guid, c2.Guid); Assert.AreEqual(c1.NullableGuid, c2.NullableGuid); Assert.AreEqual(c1.TimeSpan, c2.TimeSpan); Assert.AreEqual(c1.NullableTimeSpan, c2.NullableTimeSpan); Assert.AreEqual(c1.Uri, c2.Uri); } [Test] public void UriGuidTimeSpanTestClassValuesTest() { UriGuidTimeSpanTestClass c1 = new UriGuidTimeSpanTestClass { Guid = new Guid("1924129C-F7E0-40F3-9607-9939C531395A"), NullableGuid = new Guid("9E9F3ADF-E017-4F72-91E0-617EBE85967D"), TimeSpan = TimeSpan.FromDays(1), NullableTimeSpan = TimeSpan.FromHours(1), Uri = new Uri("http://testuri.com") }; string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Guid"": ""1924129c-f7e0-40f3-9607-9939c531395a"", ""NullableGuid"": ""9e9f3adf-e017-4f72-91e0-617ebe85967d"", ""TimeSpan"": ""1.00:00:00"", ""NullableTimeSpan"": ""01:00:00"", ""Uri"": ""http://testuri.com"" }", json); UriGuidTimeSpanTestClass c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(c1.Guid, c2.Guid); Assert.AreEqual(c1.NullableGuid, c2.NullableGuid); Assert.AreEqual(c1.TimeSpan, c2.TimeSpan); Assert.AreEqual(c1.NullableTimeSpan, c2.NullableTimeSpan); Assert.AreEqual(c1.Uri, c2.Uri); } [Test] public void UsingJsonTextWriter() { // The property of the object has to be a number for the cast exception to occure object o = new { p = 1 }; var json = JObject.FromObject(o); using (var sw = new StringWriter()) using (var jw = new JsonTextWriter(sw)) { jw.WriteToken(json.CreateReader()); jw.Flush(); string result = sw.ToString(); Assert.AreEqual(@"{""p"":1}", result); } } [Test] public void SerializeUriWithQuotes() { string input = "http://test.com/%22foo+bar%22"; Uri uri = new Uri(input); string json = JsonConvert.SerializeObject(uri); Uri output = JsonConvert.DeserializeObject(json); Assert.AreEqual(uri, output); } [Test] public void SerializeUriWithSlashes() { string input = @"http://tes/?a=b\\c&d=e\"; Uri uri = new Uri(input); string json = JsonConvert.SerializeObject(uri); Uri output = JsonConvert.DeserializeObject(json); Assert.AreEqual(uri, output); } [Test] public void DeserializeByteArrayWithTypeNameHandling() { TestObject test = new TestObject("Test", new byte[] { 72, 63, 62, 71, 92, 55 }); JsonSerializer serializer = new JsonSerializer(); serializer.TypeNameHandling = TypeNameHandling.All; byte[] objectBytes; using (MemoryStream bsonStream = new MemoryStream()) using (JsonWriter bsonWriter = new JsonTextWriter(new StreamWriter(bsonStream))) { serializer.Serialize(bsonWriter, test); bsonWriter.Flush(); objectBytes = bsonStream.ToArray(); } using (MemoryStream bsonStream = new MemoryStream(objectBytes)) using (JsonReader bsonReader = new JsonTextReader(new StreamReader(bsonStream))) { // Get exception here TestObject newObject = (TestObject)serializer.Deserialize(bsonReader); Assert.AreEqual("Test", newObject.Name); CollectionAssert.AreEquivalent(new byte[] { 72, 63, 62, 71, 92, 55 }, newObject.Data); } } public class ReflectionContractResolver : DefaultContractResolver { protected override IValueProvider CreateMemberValueProvider(MemberInfo member) { return new ReflectionValueProvider(member); } } [Test] public void SerializeStaticDefault() { DefaultContractResolver contractResolver = new DefaultContractResolver(); StaticTestClass c = new StaticTestClass { x = int.MaxValue }; StaticTestClass.y = 2; StaticTestClass.z = 3; string json = JsonConvert.SerializeObject(c, Formatting.Indented, new JsonSerializerSettings { ContractResolver = contractResolver }); StringAssert.AreEqual(@"{ ""x"": 2147483647, ""y"": 2, ""z"": 3 }", json); StaticTestClass c2 = JsonConvert.DeserializeObject(@"{ ""x"": -1, ""y"": -2, ""z"": -3 }", new JsonSerializerSettings { ContractResolver = contractResolver }); Assert.AreEqual(-1, c2.x); Assert.AreEqual(-2, StaticTestClass.y); Assert.AreEqual(-3, StaticTestClass.z); } [Test] public void SerializeStaticReflection() { ReflectionContractResolver contractResolver = new ReflectionContractResolver(); StaticTestClass c = new StaticTestClass { x = int.MaxValue }; StaticTestClass.y = 2; StaticTestClass.z = 3; string json = JsonConvert.SerializeObject(c, Formatting.Indented, new JsonSerializerSettings { ContractResolver = contractResolver }); StringAssert.AreEqual(@"{ ""x"": 2147483647, ""y"": 2, ""z"": 3 }", json); StaticTestClass c2 = JsonConvert.DeserializeObject(@"{ ""x"": -1, ""y"": -2, ""z"": -3 }", new JsonSerializerSettings { ContractResolver = contractResolver }); Assert.AreEqual(-1, c2.x); Assert.AreEqual(-2, StaticTestClass.y); Assert.AreEqual(-3, StaticTestClass.z); } #if !(NET20 || NETFX_CORE || ASPNETCORE50) [Test] public void DeserializeDecimalsWithCulture() { CultureInfo initialCulture = Thread.CurrentThread.CurrentCulture; try { CultureInfo testCulture = CultureInfo.CreateSpecificCulture("nb-NO"); Thread.CurrentThread.CurrentCulture = testCulture; Thread.CurrentThread.CurrentUICulture = testCulture; string json = @"{ 'Quantity': '1.5', 'OptionalQuantity': '2.2' }"; DecimalTestClass c = JsonConvert.DeserializeObject(json); Assert.AreEqual(1.5m, c.Quantity); Assert.AreEqual(2.2d, c.OptionalQuantity); } finally { Thread.CurrentThread.CurrentCulture = initialCulture; Thread.CurrentThread.CurrentUICulture = initialCulture; } } #endif [Test] public void ReadForTypeHackFixDecimal() { IList d1 = new List { 1.1m }; string json = JsonConvert.SerializeObject(d1); IList d2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(d1.Count, d2.Count); Assert.AreEqual(d1[0], d2[0]); } [Test] public void ReadForTypeHackFixDateTimeOffset() { IList d1 = new List { null }; string json = JsonConvert.SerializeObject(d1); IList d2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(d1.Count, d2.Count); Assert.AreEqual(d1[0], d2[0]); } [Test] public void ReadForTypeHackFixByteArray() { IList d1 = new List { null }; string json = JsonConvert.SerializeObject(d1); IList d2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(d1.Count, d2.Count); Assert.AreEqual(d1[0], d2[0]); } [Test] public void SerializeInheritanceHierarchyWithDuplicateProperty() { Bb b = new Bb(); b.no = true; Aa a = b; a.no = int.MaxValue; string json = JsonConvert.SerializeObject(b); Assert.AreEqual(@"{""no"":true}", json); Bb b2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(true, b2.no); } [Test] public void DeserializeNullInt() { string json = @"[ 1, 2, 3, null ]"; ExceptionAssert.Throws(() => { List numbers = JsonConvert.DeserializeObject>(json); }, "Error converting value {null} to type 'System.Int32'. Path '[3]', line 5, position 7."); } #if !(PORTABLE || ASPNETCORE50 || NETFX_CORE) public class ConvertableIntTestClass { public ConvertibleInt Integer { get; set; } public ConvertibleInt? NullableInteger1 { get; set; } public ConvertibleInt? NullableInteger2 { get; set; } } [Test] public void SerializeIConvertible() { ConvertableIntTestClass c = new ConvertableIntTestClass { Integer = new ConvertibleInt(1), NullableInteger1 = new ConvertibleInt(2), NullableInteger2 = null }; string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Integer"": 1, ""NullableInteger1"": 2, ""NullableInteger2"": null }", json); } [Test] public void DeserializeIConvertible() { string json = @"{ ""Integer"": 1, ""NullableInteger1"": 2, ""NullableInteger2"": null }"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json), "Error converting value 1 to type 'Newtonsoft.Json.Tests.ConvertibleInt'. Path 'Integer', line 2, position 15."); } #endif [Test] public void SerializeNullableWidgetStruct() { Widget widget = new Widget { Id = new WidgetId { Value = "id" } }; string json = JsonConvert.SerializeObject(widget); Assert.AreEqual(@"{""Id"":{""Value"":""id""}}", json); } [Test] public void DeserializeNullableWidgetStruct() { string json = @"{""Id"":{""Value"":""id""}}"; Widget w = JsonConvert.DeserializeObject(json); Assert.AreEqual(new WidgetId { Value = "id" }, w.Id); Assert.AreEqual(new WidgetId { Value = "id" }, w.Id.Value); Assert.AreEqual("id", w.Id.Value.Value); } [Test] public void DeserializeBoolInt() { ExceptionAssert.Throws(() => { string json = @"{ ""PreProperty"": true, ""PostProperty"": ""-1"" }"; JsonConvert.DeserializeObject(json); }, "Error reading integer. Unexpected token: Boolean. Path 'PreProperty', line 2, position 22."); } [Test] public void DeserializeUnexpectedEndInt() { ExceptionAssert.Throws(() => { string json = @"{ ""PreProperty"": "; JsonConvert.DeserializeObject(json); }); } [Test] public void DeserializeNullableGuid() { string json = @"{""Id"":null}"; var c = JsonConvert.DeserializeObject(json); Assert.AreEqual(null, c.Id); json = @"{""Id"":""d8220a4b-75b1-4b7a-8112-b7bdae956a45""}"; c = JsonConvert.DeserializeObject(json); Assert.AreEqual(new Guid("d8220a4b-75b1-4b7a-8112-b7bdae956a45"), c.Id); } [Test] public void DeserializeGuid() { Item expected = new Item() { SourceTypeID = new Guid("d8220a4b-75b1-4b7a-8112-b7bdae956a45"), BrokerID = new Guid("951663c4-924e-4c86-a57a-7ed737501dbd"), Latitude = 33.657145, Longitude = -117.766684, TimeStamp = new DateTime(2000, 3, 1, 23, 59, 59, DateTimeKind.Utc), Payload = new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 } }; string jsonString = JsonConvert.SerializeObject(expected, Formatting.Indented); StringAssert.AreEqual(@"{ ""SourceTypeID"": ""d8220a4b-75b1-4b7a-8112-b7bdae956a45"", ""BrokerID"": ""951663c4-924e-4c86-a57a-7ed737501dbd"", ""Latitude"": 33.657145, ""Longitude"": -117.766684, ""TimeStamp"": ""2000-03-01T23:59:59Z"", ""Payload"": { ""$type"": ""System.Byte[], mscorlib"", ""$value"": ""AAECAwQFBgcICQ=="" } }", jsonString); Item actual = JsonConvert.DeserializeObject(jsonString); Assert.AreEqual(new Guid("d8220a4b-75b1-4b7a-8112-b7bdae956a45"), actual.SourceTypeID); Assert.AreEqual(new Guid("951663c4-924e-4c86-a57a-7ed737501dbd"), actual.BrokerID); byte[] bytes = (byte[])actual.Payload; CollectionAssert.AreEquivalent((new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }).ToList(), bytes.ToList()); } [Test] public void DeserializeObjectDictionary() { var serializer = JsonSerializer.Create(new JsonSerializerSettings()); var dict = serializer.Deserialize>(new JsonTextReader(new StringReader("{'k1':'','k2':'v2'}"))); Assert.AreEqual("", dict["k1"]); Assert.AreEqual("v2", dict["k2"]); } [Test] public void DeserializeNullableEnum() { string json = JsonConvert.SerializeObject(new WithEnums { Id = 7, NullableEnum = null }); Assert.AreEqual(@"{""Id"":7,""NullableEnum"":null}", json); WithEnums e = JsonConvert.DeserializeObject(json); Assert.AreEqual(null, e.NullableEnum); json = JsonConvert.SerializeObject(new WithEnums { Id = 7, NullableEnum = MyEnum.Value2 }); Assert.AreEqual(@"{""Id"":7,""NullableEnum"":1}", json); e = JsonConvert.DeserializeObject(json); Assert.AreEqual(MyEnum.Value2, e.NullableEnum); } [Test] public void NullableStructWithConverter() { string json = JsonConvert.SerializeObject(new Widget1 { Id = new WidgetId1 { Value = 1234 } }); Assert.AreEqual(@"{""Id"":""1234""}", json); Widget1 w = JsonConvert.DeserializeObject(@"{""Id"":""1234""}"); Assert.AreEqual(new WidgetId1 { Value = 1234 }, w.Id); } [Test] public void SerializeDictionaryStringStringAndStringObject() { var serializer = JsonSerializer.Create(new JsonSerializerSettings()); var dict = serializer.Deserialize>(new JsonTextReader(new StringReader("{'k1':'','k2':'v2'}"))); var reader = new JsonTextReader(new StringReader("{'k1':'','k2':'v2'}")); var dict2 = serializer.Deserialize>(reader); Assert.AreEqual(dict["k1"], dict2["k1"]); } [Test] public void DeserializeEmptyStrings() { object v = JsonConvert.DeserializeObject(""); Assert.IsNull(v); v = JsonConvert.DeserializeObject(""); Assert.IsNull(v); v = JsonConvert.DeserializeObject(""); Assert.IsNull(v); v = JsonConvert.DeserializeObject(""); Assert.IsNull(v); v = JsonConvert.DeserializeObject(""); Assert.IsNull(v); v = JsonConvert.DeserializeObject(""); Assert.IsNull(v); v = JsonConvert.DeserializeObject(""); Assert.IsNull(v); } public class Sdfsdf { public double Id { get; set; } } [Test] public void DeserializeDoubleFromEmptyString() { ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(""); }, "No JSON content found and type 'System.Double' is not nullable. Path '', line 0, position 0."); } [Test] public void DeserializeEnumFromEmptyString() { ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(""); }, "No JSON content found and type 'System.StringComparison' is not nullable. Path '', line 0, position 0."); } [Test] public void DeserializeInt32FromEmptyString() { ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(""); }, "No JSON content found and type 'System.Int32' is not nullable. Path '', line 0, position 0."); } [Test] public void DeserializeByteArrayFromEmptyString() { byte[] b = JsonConvert.DeserializeObject(""); Assert.IsNull(b); } [Test] public void DeserializeDoubleFromNullString() { ExceptionAssert.Throws( () => { JsonConvert.DeserializeObject(null); }, new [] { "Value cannot be null." + Environment.NewLine + "Parameter name: value", "Argument cannot be null." + Environment.NewLine + "Parameter name: value" // mono }); } [Test] public void DeserializeFromNullString() { ExceptionAssert.Throws( () => { JsonConvert.DeserializeObject(null); }, new [] { "Value cannot be null." + Environment.NewLine + "Parameter name: value", "Argument cannot be null." + Environment.NewLine + "Parameter name: value" // mono }); } [Test] public void DeserializeIsoDatesWithIsoConverter() { string jsonIsoText = @"{""Value"":""2012-02-25T19:55:50.6095676+13:00""}"; DateTimeWrapper c = JsonConvert.DeserializeObject(jsonIsoText, new IsoDateTimeConverter()); Assert.AreEqual(DateTimeKind.Local, c.Value.Kind); } #if !NET20 [Test] public void DeserializeUTC() { DateTimeTestClass c = JsonConvert.DeserializeObject( @"{""PreField"":""Pre"",""DateTimeField"":""2008-12-12T12:12:12Z"",""DateTimeOffsetField"":""2008-12-12T12:12:12Z"",""PostField"":""Post""}", new JsonSerializerSettings { DateTimeZoneHandling = DateTimeZoneHandling.Local }); Assert.AreEqual(new DateTime(2008, 12, 12, 12, 12, 12, 0, DateTimeKind.Utc).ToLocalTime(), c.DateTimeField); Assert.AreEqual(new DateTimeOffset(2008, 12, 12, 12, 12, 12, 0, TimeSpan.Zero), c.DateTimeOffsetField); Assert.AreEqual("Pre", c.PreField); Assert.AreEqual("Post", c.PostField); DateTimeTestClass c2 = JsonConvert.DeserializeObject( @"{""PreField"":""Pre"",""DateTimeField"":""2008-01-01T01:01:01Z"",""DateTimeOffsetField"":""2008-01-01T01:01:01Z"",""PostField"":""Post""}", new JsonSerializerSettings { DateTimeZoneHandling = DateTimeZoneHandling.Local }); Assert.AreEqual(new DateTime(2008, 1, 1, 1, 1, 1, 0, DateTimeKind.Utc).ToLocalTime(), c2.DateTimeField); Assert.AreEqual(new DateTimeOffset(2008, 1, 1, 1, 1, 1, 0, TimeSpan.Zero), c2.DateTimeOffsetField); Assert.AreEqual("Pre", c2.PreField); Assert.AreEqual("Post", c2.PostField); } [Test] public void NullableDeserializeUTC() { NullableDateTimeTestClass c = JsonConvert.DeserializeObject( @"{""PreField"":""Pre"",""DateTimeField"":""2008-12-12T12:12:12Z"",""DateTimeOffsetField"":""2008-12-12T12:12:12Z"",""PostField"":""Post""}", new JsonSerializerSettings { DateTimeZoneHandling = DateTimeZoneHandling.Local }); Assert.AreEqual(new DateTime(2008, 12, 12, 12, 12, 12, 0, DateTimeKind.Utc).ToLocalTime(), c.DateTimeField); Assert.AreEqual(new DateTimeOffset(2008, 12, 12, 12, 12, 12, 0, TimeSpan.Zero), c.DateTimeOffsetField); Assert.AreEqual("Pre", c.PreField); Assert.AreEqual("Post", c.PostField); NullableDateTimeTestClass c2 = JsonConvert.DeserializeObject( @"{""PreField"":""Pre"",""DateTimeField"":null,""DateTimeOffsetField"":null,""PostField"":""Post""}"); Assert.AreEqual(null, c2.DateTimeField); Assert.AreEqual(null, c2.DateTimeOffsetField); Assert.AreEqual("Pre", c2.PreField); Assert.AreEqual("Post", c2.PostField); } [Test] public void PrivateConstructor() { var person = PersonWithPrivateConstructor.CreatePerson(); person.Name = "John Doe"; person.Age = 25; var serializedPerson = JsonConvert.SerializeObject(person); var roundtrippedPerson = JsonConvert.DeserializeObject(serializedPerson); Assert.AreEqual(person.Name, roundtrippedPerson.Name); } #endif #if !(NETFX_CORE || ASPNETCORE50) [Test] public void MetroBlogPost() { Product product = new Product(); product.Name = "Apple"; product.ExpiryDate = new DateTime(2012, 4, 1); product.Price = 3.99M; product.Sizes = new[] { "Small", "Medium", "Large" }; string json = JsonConvert.SerializeObject(product); //{ // "Name": "Apple", // "ExpiryDate": "2012-04-01T00:00:00", // "Price": 3.99, // "Sizes": [ "Small", "Medium", "Large" ] //} string metroJson = JsonConvert.SerializeObject(product, new JsonSerializerSettings { ContractResolver = new MetroPropertyNameResolver(), Converters = { new MetroStringConverter() }, Formatting = Formatting.Indented }); StringAssert.AreEqual(@"{ "":::NAME:::"": "":::APPLE:::"", "":::EXPIRYDATE:::"": ""2012-04-01T00:00:00"", "":::PRICE:::"": 3.99, "":::SIZES:::"": [ "":::SMALL:::"", "":::MEDIUM:::"", "":::LARGE:::"" ] }", metroJson); //{ // ":::NAME:::": ":::APPLE:::", // ":::EXPIRYDATE:::": "2012-04-01T00:00:00", // ":::PRICE:::": 3.99, // ":::SIZES:::": [ ":::SMALL:::", ":::MEDIUM:::", ":::LARGE:::" ] //} Color[] colors = new[] { Color.Blue, Color.Red, Color.Yellow, Color.Green, Color.Black, Color.Brown }; string json2 = JsonConvert.SerializeObject(colors, new JsonSerializerSettings { ContractResolver = new MetroPropertyNameResolver(), Converters = { new MetroStringConverter(), new MetroColorConverter() }, Formatting = Formatting.Indented }); StringAssert.AreEqual(@"[ "":::GRAY:::"", "":::GRAY:::"", "":::GRAY:::"", "":::GRAY:::"", "":::BLACK:::"", "":::GRAY:::"" ]", json2); } public class MetroColorConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { Color color = (Color)value; Color fixedColor = (color == Color.White || color == Color.Black) ? color : Color.Gray; writer.WriteValue(":::" + fixedColor.ToKnownColor().ToString().ToUpper() + ":::"); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { return Enum.Parse(typeof(Color), reader.Value.ToString()); } public override bool CanConvert(Type objectType) { return objectType == typeof(Color); } } #endif public class MultipleItemsClass { public string Name { get; set; } } [Test] public void MultipleItems() { IList values = new List(); JsonTextReader reader = new JsonTextReader(new StringReader(@"{ ""name"": ""bar"" }{ ""name"": ""baz"" }")); reader.SupportMultipleContent = true; while (true) { if (!reader.Read()) break; JsonSerializer serializer = new JsonSerializer(); MultipleItemsClass foo = serializer.Deserialize(reader); values.Add(foo); } Assert.AreEqual(2, values.Count); Assert.AreEqual("bar", values[0].Name); Assert.AreEqual("baz", values[1].Name); } private class FooBar { public DateTimeOffset Foo { get; set; } } [Test] public void TokenFromBson() { MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); writer.WriteStartArray(); writer.WriteValue("2000-01-02T03:04:05+06:00"); writer.WriteEndArray(); byte[] data = ms.ToArray(); BsonReader reader = new BsonReader(new MemoryStream(data)) { ReadRootValueAsArray = true }; JArray a = (JArray)JArray.ReadFrom(reader); JValue v = (JValue)a[0]; Console.WriteLine(v.Value.GetType()); Console.WriteLine(a.ToString()); } [Test] public void ObjectRequiredDeserializeMissing() { string json = "{}"; IList errors = new List(); EventHandler error = (s, e) => { errors.Add(e.ErrorContext.Error.Message); e.ErrorContext.Handled = true; }; var o = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { Error = error }); Assert.IsNotNull(o); Assert.AreEqual(4, errors.Count); Assert.IsTrue(errors[0].StartsWith("Required property 'NonAttributeProperty' not found in JSON. Path ''")); Assert.IsTrue(errors[1].StartsWith("Required property 'UnsetProperty' not found in JSON. Path ''")); Assert.IsTrue(errors[2].StartsWith("Required property 'AllowNullProperty' not found in JSON. Path ''")); Assert.IsTrue(errors[3].StartsWith("Required property 'AlwaysProperty' not found in JSON. Path ''")); } [Test] public void ObjectRequiredDeserializeNull() { string json = "{'NonAttributeProperty':null,'UnsetProperty':null,'AllowNullProperty':null,'AlwaysProperty':null}"; IList errors = new List(); EventHandler error = (s, e) => { errors.Add(e.ErrorContext.Error.Message); e.ErrorContext.Handled = true; }; var o = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { Error = error }); Assert.IsNotNull(o); Assert.AreEqual(3, errors.Count); Assert.IsTrue(errors[0].StartsWith("Required property 'NonAttributeProperty' expects a value but got null. Path ''")); Assert.IsTrue(errors[1].StartsWith("Required property 'UnsetProperty' expects a value but got null. Path ''")); Assert.IsTrue(errors[2].StartsWith("Required property 'AlwaysProperty' expects a value but got null. Path ''")); } [Test] public void ObjectRequiredSerialize() { IList errors = new List(); EventHandler error = (s, e) => { errors.Add(e.ErrorContext.Error.Message); e.ErrorContext.Handled = true; }; string json = JsonConvert.SerializeObject(new RequiredObject(), new JsonSerializerSettings { Error = error, Formatting = Formatting.Indented }); StringAssert.AreEqual(@"{ ""DefaultProperty"": null, ""AllowNullProperty"": null }", json); Assert.AreEqual(3, errors.Count); Assert.AreEqual("Cannot write a null value for property 'NonAttributeProperty'. Property requires a value. Path ''.", errors[0]); Assert.AreEqual("Cannot write a null value for property 'UnsetProperty'. Property requires a value. Path ''.", errors[1]); Assert.AreEqual("Cannot write a null value for property 'AlwaysProperty'. Property requires a value. Path ''.", errors[2]); } [Test] public void DeserializeCollectionItemConverter() { PropertyItemConverter c = new PropertyItemConverter { Data = new[] { "one", "two", "three" } }; var c2 = JsonConvert.DeserializeObject("{'Data':['::ONE::','::TWO::']}"); Assert.IsNotNull(c2); Assert.AreEqual(2, c2.Data.Count); Assert.AreEqual("one", c2.Data[0]); Assert.AreEqual("two", c2.Data[1]); } [Test] public void SerializeCollectionItemConverter() { PropertyItemConverter c = new PropertyItemConverter { Data = new[] { "one", "two", "three" } }; string json = JsonConvert.SerializeObject(c); Assert.AreEqual(@"{""Data"":["":::ONE:::"","":::TWO:::"","":::THREE:::""]}", json); } #if !NET20 [Test] public void DateTimeDictionaryKey_DateTimeOffset_Iso() { IDictionary dic1 = new Dictionary { { new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.Zero), 1 }, { new DateTimeOffset(2013, 12, 12, 12, 12, 12, TimeSpan.Zero), 2 } }; string json = JsonConvert.SerializeObject(dic1, Formatting.Indented); StringAssert.AreEqual(@"{ ""2000-12-12T12:12:12+00:00"": 1, ""2013-12-12T12:12:12+00:00"": 2 }", json); IDictionary dic2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(2, dic2.Count); Assert.AreEqual(1, dic2[new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.Zero)]); Assert.AreEqual(2, dic2[new DateTimeOffset(2013, 12, 12, 12, 12, 12, TimeSpan.Zero)]); } [Test] public void DateTimeDictionaryKey_DateTimeOffset_MS() { IDictionary dic1 = new Dictionary { { new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.Zero), 1 }, { new DateTimeOffset(2013, 12, 12, 12, 12, 12, TimeSpan.Zero), 2 } }; string json = JsonConvert.SerializeObject(dic1, Formatting.Indented, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); StringAssert.AreEqual(@"{ ""\/Date(976623132000+0000)\/"": 1, ""\/Date(1386850332000+0000)\/"": 2 }", json); IDictionary dic2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(2, dic2.Count); Assert.AreEqual(1, dic2[new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.Zero)]); Assert.AreEqual(2, dic2[new DateTimeOffset(2013, 12, 12, 12, 12, 12, TimeSpan.Zero)]); } #endif [Test] public void DateTimeDictionaryKey_DateTime_Iso() { IDictionary dic1 = new Dictionary { { new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc), 1 }, { new DateTime(2013, 12, 12, 12, 12, 12, DateTimeKind.Utc), 2 } }; string json = JsonConvert.SerializeObject(dic1, Formatting.Indented); StringAssert.AreEqual(@"{ ""2000-12-12T12:12:12Z"": 1, ""2013-12-12T12:12:12Z"": 2 }", json); IDictionary dic2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(2, dic2.Count); Assert.AreEqual(1, dic2[new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc)]); Assert.AreEqual(2, dic2[new DateTime(2013, 12, 12, 12, 12, 12, DateTimeKind.Utc)]); } [Test] public void DateTimeDictionaryKey_DateTime_MS() { IDictionary dic1 = new Dictionary { { new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc), 1 }, { new DateTime(2013, 12, 12, 12, 12, 12, DateTimeKind.Utc), 2 } }; string json = JsonConvert.SerializeObject(dic1, Formatting.Indented, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); StringAssert.AreEqual(@"{ ""\/Date(976623132000)\/"": 1, ""\/Date(1386850332000)\/"": 2 }", json); IDictionary dic2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(2, dic2.Count); Assert.AreEqual(1, dic2[new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc)]); Assert.AreEqual(2, dic2[new DateTime(2013, 12, 12, 12, 12, 12, DateTimeKind.Utc)]); } [Test] public void DeserializeEmptyJsonString() { string s = (string)new JsonSerializer().Deserialize(new JsonTextReader(new StringReader("''"))); Assert.AreEqual("", s); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void SerializeAndDeserializeWithAttributes() { var testObj = new PersonSerializable() { Name = "John Doe", Age = 28 }; var objDeserialized = SerializeAndDeserialize(testObj); Assert.AreEqual(testObj.Name, objDeserialized.Name); Assert.AreEqual(0, objDeserialized.Age); } private T SerializeAndDeserialize(T obj) where T : class { var json = Serialize(obj); return Deserialize(json); } private string Serialize(T obj) where T : class { var stringWriter = new StringWriter(); var serializer = new Newtonsoft.Json.JsonSerializer(); serializer.ContractResolver = new DefaultContractResolver(false) { IgnoreSerializableAttribute = false }; serializer.Serialize(stringWriter, obj); return stringWriter.ToString(); } private T Deserialize(string json) where T : class { var jsonReader = new Newtonsoft.Json.JsonTextReader(new StringReader(json)); var serializer = new Newtonsoft.Json.JsonSerializer(); serializer.ContractResolver = new DefaultContractResolver(false) { IgnoreSerializableAttribute = false }; return serializer.Deserialize(jsonReader, typeof(T)) as T; } #endif [Test] public void PropertyItemConverter() { Event1 e = new Event1 { EventName = "Blackadder III", Venue = "Gryphon Theatre", Performances = new List { DateTimeUtils.ConvertJavaScriptTicksToDateTime(1336458600000), DateTimeUtils.ConvertJavaScriptTicksToDateTime(1336545000000), DateTimeUtils.ConvertJavaScriptTicksToDateTime(1336636800000) } }; string json = JsonConvert.SerializeObject(e, Formatting.Indented); //{ // "EventName": "Blackadder III", // "Venue": "Gryphon Theatre", // "Performances": [ // new Date(1336458600000), // new Date(1336545000000), // new Date(1336636800000) // ] //} StringAssert.AreEqual(@"{ ""EventName"": ""Blackadder III"", ""Venue"": ""Gryphon Theatre"", ""Performances"": [ new Date( 1336458600000 ), new Date( 1336545000000 ), new Date( 1336636800000 ) ] }", json); } #if !(NET20 || NET35) public class IgnoreDataMemberTestClass { [IgnoreDataMember] public int Ignored { get; set; } } [Test] public void IgnoreDataMemberTest() { string json = JsonConvert.SerializeObject(new IgnoreDataMemberTestClass() { Ignored = int.MaxValue }, Formatting.Indented); Assert.AreEqual(@"{}", json); } #endif #if !(NET20 || NET35) [Test] public void SerializeDataContractSerializationAttributes() { DataContractSerializationAttributesClass dataContract = new DataContractSerializationAttributesClass { NoAttribute = "Value!", IgnoreDataMemberAttribute = "Value!", DataMemberAttribute = "Value!", IgnoreDataMemberAndDataMemberAttribute = "Value!" }; //MemoryStream ms = new MemoryStream(); //DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(DataContractSerializationAttributesClass)); //serializer.WriteObject(ms, dataContract); //Console.WriteLine(Encoding.UTF8.GetString(ms.ToArray())); string json = JsonConvert.SerializeObject(dataContract, Formatting.Indented); StringAssert.AreEqual(@"{ ""DataMemberAttribute"": ""Value!"", ""IgnoreDataMemberAndDataMemberAttribute"": ""Value!"" }", json); PocoDataContractSerializationAttributesClass poco = new PocoDataContractSerializationAttributesClass { NoAttribute = "Value!", IgnoreDataMemberAttribute = "Value!", DataMemberAttribute = "Value!", IgnoreDataMemberAndDataMemberAttribute = "Value!" }; json = JsonConvert.SerializeObject(poco, Formatting.Indented); StringAssert.AreEqual(@"{ ""NoAttribute"": ""Value!"", ""DataMemberAttribute"": ""Value!"" }", json); } #endif [Test] public void CheckAdditionalContent() { string json = "{one:1}{}"; JsonSerializerSettings settings = new JsonSerializerSettings(); JsonSerializer s = JsonSerializer.Create(settings); IDictionary o = s.Deserialize>(new JsonTextReader(new StringReader(json))); Assert.IsNotNull(o); Assert.AreEqual(1, o["one"]); settings.CheckAdditionalContent = true; s = JsonSerializer.Create(settings); ExceptionAssert.Throws(() => { s.Deserialize>(new JsonTextReader(new StringReader(json))); }, "Additional text encountered after finished reading JSON content: {. Path '', line 1, position 7."); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void DeserializeException() { string json = @"{ ""ClassName"" : ""System.InvalidOperationException"", ""Data"" : null, ""ExceptionMethod"" : ""8\nLogin\nAppBiz, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null\nMyApp.LoginBiz\nMyApp.User Login()"", ""HResult"" : -2146233079, ""HelpURL"" : null, ""InnerException"" : { ""ClassName"" : ""System.Exception"", ""Data"" : null, ""ExceptionMethod"" : null, ""HResult"" : -2146233088, ""HelpURL"" : null, ""InnerException"" : null, ""Message"" : ""Inner exception..."", ""RemoteStackIndex"" : 0, ""RemoteStackTraceString"" : null, ""Source"" : null, ""StackTraceString"" : null, ""WatsonBuckets"" : null }, ""Message"" : ""Outter exception..."", ""RemoteStackIndex"" : 0, ""RemoteStackTraceString"" : null, ""Source"" : ""AppBiz"", ""StackTraceString"" : "" at MyApp.LoginBiz.Login() in C:\\MyApp\\LoginBiz.cs:line 44\r\n at MyApp.LoginSvc.Login() in C:\\MyApp\\LoginSvc.cs:line 71\r\n at SyncInvokeLogin(Object , Object[] , Object[] )\r\n at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)\r\n at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)\r\n at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)\r\n at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage41(MessageRpc& rpc)\r\n at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc)\r\n at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)\r\n at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3(MessageRpc& rpc)\r\n at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage2(MessageRpc& rpc)\r\n at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc)\r\n at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1(MessageRpc& rpc)\r\n at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)"", ""WatsonBuckets"" : null }"; InvalidOperationException exception = JsonConvert.DeserializeObject(json); Assert.IsNotNull(exception); CustomAssert.IsInstanceOfType(typeof(InvalidOperationException), exception); Assert.AreEqual("Outter exception...", exception.Message); } #endif [Test] public void AdditionalContentAfterFinish() { ExceptionAssert.Throws(() => { string json = "[{},1]"; JsonSerializer serializer = new JsonSerializer(); serializer.CheckAdditionalContent = true; var reader = new JsonTextReader(new StringReader(json)); reader.Read(); reader.Read(); serializer.Deserialize(reader, typeof(MyType)); }, "Additional text found in JSON string after finishing deserializing object."); } [Test] public void DeserializeRelativeUri() { IList uris = JsonConvert.DeserializeObject>(@"[""http://localhost/path?query#hash""]"); Assert.AreEqual(1, uris.Count); Assert.AreEqual(new Uri("http://localhost/path?query#hash"), uris[0]); Uri uri = JsonConvert.DeserializeObject(@"""http://localhost/path?query#hash"""); Assert.IsNotNull(uri); Uri i1 = new Uri("http://localhost/path?query#hash", UriKind.RelativeOrAbsolute); Uri i2 = new Uri("http://localhost/path?query#hash"); Assert.AreEqual(i1, i2); uri = JsonConvert.DeserializeObject(@"""/path?query#hash"""); Assert.IsNotNull(uri); Assert.AreEqual(new Uri("/path?query#hash", UriKind.RelativeOrAbsolute), uri); } public class MyConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue("X"); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { return "X"; } public override bool CanConvert(Type objectType) { return true; } } public class MyType { [JsonProperty(ItemConverterType = typeof(MyConverter))] public Dictionary MyProperty { get; set; } } [Test] public void DeserializeDictionaryItemConverter() { var actual = JsonConvert.DeserializeObject(@"{ ""MyProperty"":{""Key"":""Y""}}"); Assert.AreEqual("X", actual.MyProperty["Key"]); } [Test] public void DeserializeCaseInsensitiveKeyValuePairConverter() { KeyValuePair result = JsonConvert.DeserializeObject>( "{key: 123, \"VALUE\": \"test value\"}" ); Assert.AreEqual(123, result.Key); Assert.AreEqual("test value", result.Value); } [Test] public void SerializeKeyValuePairConverterWithCamelCase() { string json = JsonConvert.SerializeObject(new KeyValuePair(123, "test value"), Formatting.Indented, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }); StringAssert.AreEqual(@"{ ""key"": 123, ""value"": ""test value"" }", json); } [JsonObject(MemberSerialization.Fields)] public class MyTuple { private readonly T1 m_Item1; public MyTuple(T1 item1) { m_Item1 = item1; } public T1 Item1 { get { return m_Item1; } } } [JsonObject(MemberSerialization.Fields)] public class MyTuplePartial { private readonly T1 m_Item1; public MyTuplePartial(T1 item1) { m_Item1 = item1; } public T1 Item1 { get { return m_Item1; } } } [Test] public void SerializeFloatingPointHandling() { string json; IList d = new List { 1.1, double.NaN, double.PositiveInfinity }; json = JsonConvert.SerializeObject(d); // [1.1,"NaN","Infinity"] json = JsonConvert.SerializeObject(d, new JsonSerializerSettings { FloatFormatHandling = FloatFormatHandling.Symbol }); // [1.1,NaN,Infinity] json = JsonConvert.SerializeObject(d, new JsonSerializerSettings { FloatFormatHandling = FloatFormatHandling.DefaultValue }); // [1.1,0.0,0.0] Assert.AreEqual("[1.1,0.0,0.0]", json); } #if !(NET20 || NET35 || NET40 || PORTABLE40) #if !(PORTABLE || ASPNETCORE50) [Test] public void DeserializeReadOnlyListWithBigInteger() { string json = @"[ 9000000000000000000000000000000000000000000000000 ]"; var l = JsonConvert.DeserializeObject>(json); BigInteger nineQuindecillion = l[0]; // 9000000000000000000000000000000000000000000000000 Assert.AreEqual(BigInteger.Parse("9000000000000000000000000000000000000000000000000"), nineQuindecillion); } #endif [Test] public void DeserializeReadOnlyListWithInt() { string json = @"[ 900 ]"; var l = JsonConvert.DeserializeObject>(json); int i = l[0]; // 900 Assert.AreEqual(900, i); } [Test] public void DeserializeReadOnlyListWithNullableType() { string json = @"[ 1, null ]"; var l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(1, l[0]); Assert.AreEqual(null, l[1]); } #endif [Test] public void SerializeCustomTupleWithSerializableAttribute() { var tuple = new MyTuple(500); var json = JsonConvert.SerializeObject(tuple); Assert.AreEqual(@"{""m_Item1"":500}", json); MyTuple obj = null; Action doStuff = () => { obj = JsonConvert.DeserializeObject>(json); }; #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) doStuff(); Assert.AreEqual(500, obj.Item1); #else ExceptionAssert.Throws( doStuff, "Unable to find a constructor to use for type Newtonsoft.Json.Tests.Serialization.JsonSerializerTest+MyTuple`1[System.Int32]. A class should either have a default constructor, one constructor with arguments or a constructor marked with the JsonConstructor attribute. Path 'm_Item1', line 1, position 11."); #endif } #if DEBUG [Test] public void SerializeCustomTupleWithSerializableAttributeInPartialTrust() { try { JsonTypeReflector.SetFullyTrusted(false); var tuple = new MyTuplePartial(500); var json = JsonConvert.SerializeObject(tuple); Assert.AreEqual(@"{""m_Item1"":500}", json); ExceptionAssert.Throws(() => JsonConvert.DeserializeObject>(json), "Unable to find a constructor to use for type Newtonsoft.Json.Tests.Serialization.JsonSerializerTest+MyTuplePartial`1[System.Int32]. A class should either have a default constructor, one constructor with arguments or a constructor marked with the JsonConstructor attribute. Path 'm_Item1', line 1, position 11."); } finally { JsonTypeReflector.SetFullyTrusted(true); } } #endif #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || NET35 || NET20 || PORTABLE40) [Test] public void SerializeTupleWithSerializableAttribute() { var tuple = Tuple.Create(500); var json = JsonConvert.SerializeObject(tuple, new JsonSerializerSettings { ContractResolver = new SerializableContractResolver() }); Assert.AreEqual(@"{""m_Item1"":500}", json); var obj = JsonConvert.DeserializeObject>(json, new JsonSerializerSettings { ContractResolver = new SerializableContractResolver() }); Assert.AreEqual(500, obj.Item1); } public class SerializableContractResolver : DefaultContractResolver { public SerializableContractResolver() { IgnoreSerializableAttribute = false; } } #endif #if NETFX_CORE [Test] public void SerializeWinRTJsonObject() { var o = Windows.Data.Json.JsonObject.Parse(@"{ ""CPU"": ""Intel"", ""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ] }"); string json = JsonConvert.SerializeObject(o, Formatting.Indented); Assert.AreEqual(@"{ ""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ], ""CPU"": ""Intel"" }", json); } #endif #if !NET20 [Test] public void RoundtripOfDateTimeOffset() { var content = @"{""startDateTime"":""2012-07-19T14:30:00+09:30""}"; var jsonSerializerSettings = new JsonSerializerSettings() { DateFormatHandling = DateFormatHandling.IsoDateFormat, DateParseHandling = DateParseHandling.DateTimeOffset, DateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind }; var obj = (JObject)JsonConvert.DeserializeObject(content, jsonSerializerSettings); var dateTimeOffset = (DateTimeOffset)((JValue)obj["startDateTime"]).Value; Assert.AreEqual(TimeSpan.FromHours(9.5), dateTimeOffset.Offset); Assert.AreEqual("07/19/2012 14:30:00 +09:30", dateTimeOffset.ToString(CultureInfo.InvariantCulture)); } public class NullableFloats { public object Object { get; set; } public float Float { get; set; } public double Double { get; set; } public float? NullableFloat { get; set; } public double? NullableDouble { get; set; } public object ObjectNull { get; set; } } [Test] public void NullableFloatingPoint() { NullableFloats floats = new NullableFloats { Object = double.NaN, ObjectNull = null, Float = float.NaN, NullableDouble = double.NaN, NullableFloat = null }; string json = JsonConvert.SerializeObject(floats, Formatting.Indented, new JsonSerializerSettings { FloatFormatHandling = FloatFormatHandling.DefaultValue }); StringAssert.AreEqual(@"{ ""Object"": 0.0, ""Float"": 0.0, ""Double"": 0.0, ""NullableFloat"": null, ""NullableDouble"": null, ""ObjectNull"": null }", json); } [Test] public void DateFormatString() { IList dates = new List { new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc), new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.FromHours(1)) }; string json = JsonConvert.SerializeObject(dates, Formatting.Indented, new JsonSerializerSettings { DateFormatString = "yyyy tt", Culture = new CultureInfo("en-NZ") }); StringAssert.AreEqual(@"[ ""2000 p.m."", ""2000 p.m."" ]", json); } [Test] public void DateFormatStringForInternetExplorer() { IList dates = new List { new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc), new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.FromHours(1)) }; string json = JsonConvert.SerializeObject(dates, Formatting.Indented, new JsonSerializerSettings { DateFormatString = @"yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffK" }); StringAssert.AreEqual(@"[ ""2000-12-12T12:12:12.000Z"", ""2000-12-12T12:12:12.000+01:00"" ]", json); } [Test] public void JsonSerializerDateFormatString() { IList dates = new List { new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc), new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.FromHours(1)) }; StringWriter sw = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(sw); JsonSerializer serializer = JsonSerializer.Create(new JsonSerializerSettings { DateFormatString = "yyyy tt", Culture = new CultureInfo("en-NZ"), Formatting = Formatting.Indented }); serializer.Serialize(jsonWriter, dates); Assert.IsNull(jsonWriter.DateFormatString); Assert.AreEqual(CultureInfo.InvariantCulture, jsonWriter.Culture); Assert.AreEqual(Formatting.None, jsonWriter.Formatting); string json = sw.ToString(); StringAssert.AreEqual(@"[ ""2000 p.m."", ""2000 p.m."" ]", json); } #if !(NET20 || NET35) [Test] public void SerializeDeserializeTuple() { Tuple tuple = Tuple.Create(500, 20); string json = JsonConvert.SerializeObject(tuple); Assert.AreEqual(@"{""Item1"":500,""Item2"":20}", json); Tuple tuple2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(500, tuple2.Item1); Assert.AreEqual(20, tuple2.Item2); } #endif public class MessageWithIsoDate { public String IsoDate { get; set; } } [Test] public void JsonSerializerStringEscapeHandling() { StringWriter sw = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(sw); JsonSerializer serializer = JsonSerializer.Create(new JsonSerializerSettings { StringEscapeHandling = StringEscapeHandling.EscapeHtml, Formatting = Formatting.Indented }); serializer.Serialize(jsonWriter, new { html = "" }); Assert.AreEqual(StringEscapeHandling.Default, jsonWriter.StringEscapeHandling); string json = sw.ToString(); StringAssert.AreEqual(@"{ ""html"": ""\u003chtml\u003e\u003c/html\u003e"" }", json); } public class NoConstructorReadOnlyCollection : ReadOnlyCollection { public NoConstructorReadOnlyCollection() : base(new List()) { } } [Test] public void NoConstructorReadOnlyCollectionTest() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject>("[1]"), "Cannot deserialize readonly or fixed size list: Newtonsoft.Json.Tests.Serialization.JsonSerializerTest+NoConstructorReadOnlyCollection`1[System.Int32]. Path '', line 1, position 1."); } #if !(NET40 || NET35 || NET20 || PORTABLE40) public class NoConstructorReadOnlyDictionary : ReadOnlyDictionary { public NoConstructorReadOnlyDictionary() : base(new Dictionary()) { } } [Test] public void NoConstructorReadOnlyDictionaryTest() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject>("{'1':1}"), "Cannot deserialize readonly or fixed size dictionary: Newtonsoft.Json.Tests.Serialization.JsonSerializerTest+NoConstructorReadOnlyDictionary`2[System.Int32,System.Int32]. Path '1', line 1, position 5."); } #endif #if !(PORTABLE || ASPNETCORE50 || NET35 || NET20 || PORTABLE40) [Test] public void ReadTooLargeInteger() { string json = @"[999999999999999999999999999999999999999999999999]"; IList l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(BigInteger.Parse("999999999999999999999999999999999999999999999999"), l[0]); ExceptionAssert.Throws(() => JsonConvert.DeserializeObject>(json), "Error converting value 999999999999999999999999999999999999999999999999 to type 'System.Int64'. Path '[0]', line 1, position 49."); } #endif #if !(NETFX_CORE || ASPNETCORE50) [Serializable] #endif [DataContract] public struct Pair { public Pair(TFirst first, TSecond second) : this() { this.First = first; this.Second = second; } [DataMember] public TFirst First { get; set; } [DataMember] public TSecond Second { get; set; } } [Test] public void SerializeStructWithSerializableAndDataContract() { Pair p = new Pair("One", 2); string json = JsonConvert.SerializeObject(p); Assert.AreEqual(@"{""First"":""One"",""Second"":2}", json); #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) DefaultContractResolver r = new DefaultContractResolver(); r.IgnoreSerializableAttribute = false; json = JsonConvert.SerializeObject(p, new JsonSerializerSettings { ContractResolver = r }); Assert.AreEqual(@"{""First"":""One"",""Second"":2}", json); #endif } [Test] public void ReadStringFloatingPointSymbols() { string json = @"[ ""NaN"", ""Infinity"", ""-Infinity"" ]"; IList floats = JsonConvert.DeserializeObject>(json); Assert.AreEqual(float.NaN, floats[0]); Assert.AreEqual(float.PositiveInfinity, floats[1]); Assert.AreEqual(float.NegativeInfinity, floats[2]); IList doubles = JsonConvert.DeserializeObject>(json); Assert.AreEqual(float.NaN, doubles[0]); Assert.AreEqual(float.PositiveInfinity, doubles[1]); Assert.AreEqual(float.NegativeInfinity, doubles[2]); } [Test] public void DefaultDateStringFormatVsUnsetDateStringFormat() { IDictionary dates = new Dictionary { { "DateTime-Unspecified", new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Unspecified) }, { "DateTime-Utc", new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc) }, { "DateTime-Local", new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Local) }, { "DateTimeOffset-Zero", new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.Zero) }, { "DateTimeOffset-Plus1", new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.FromHours(1)) }, { "DateTimeOffset-Plus15", new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.FromHours(1.5)) } }; string expected = JsonConvert.SerializeObject(dates, Formatting.Indented); Console.WriteLine(expected); string actual = JsonConvert.SerializeObject(dates, Formatting.Indented, new JsonSerializerSettings { DateFormatString = JsonSerializerSettings.DefaultDateFormatString }); Console.WriteLine(expected); Assert.AreEqual(expected, actual); } #endif #if !NET20 public class NullableTestClass { public bool? MyNullableBool { get; set; } public int? MyNullableInteger { get; set; } public DateTime? MyNullableDateTime { get; set; } public DateTimeOffset? MyNullableDateTimeOffset { get; set; } public Decimal? MyNullableDecimal { get; set; } } [Test] public void TestStringToNullableDeserialization() { string json = @"{ ""MyNullableBool"": """", ""MyNullableInteger"": """", ""MyNullableDateTime"": """", ""MyNullableDateTimeOffset"": """", ""MyNullableDecimal"": """" }"; NullableTestClass c2 = JsonConvert.DeserializeObject(json); Assert.IsNull(c2.MyNullableBool); Assert.IsNull(c2.MyNullableInteger); Assert.IsNull(c2.MyNullableDateTime); Assert.IsNull(c2.MyNullableDateTimeOffset); Assert.IsNull(c2.MyNullableDecimal); } #endif #if !(NET20 || NET35 || PORTABLE40) [Test] public void HashSetInterface() { ISet s1 = new HashSet(new[] { "1", "two", "III" }); string json = JsonConvert.SerializeObject(s1); ISet s2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(s1.Count, s2.Count); foreach (string s in s1) { Assert.IsTrue(s2.Contains(s)); } } #endif [Test] public void DeserializeDecimal() { JsonTextReader reader = new JsonTextReader(new StringReader("1234567890.123456")); var settings = new JsonSerializerSettings(); var serialiser = JsonSerializer.Create(settings); decimal? d = serialiser.Deserialize(reader); Assert.AreEqual(1234567890.123456m, d); } #if !(PORTABLE || ASPNETCORE50 || NETFX_CORE || PORTABLE40) [Test] public void DontSerializeStaticFields() { string json = JsonConvert.SerializeObject(new AnswerFilterModel(), Formatting.Indented, new JsonSerializerSettings { ContractResolver = new DefaultContractResolver { IgnoreSerializableAttribute = false } }); StringAssert.AreEqual(@"{ ""k__BackingField"": false, ""k__BackingField"": false, ""k__BackingField"": false, ""k__BackingField"": false, ""k__BackingField"": false, ""k__BackingField"": false }", json); } #endif #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void SerializeBigInteger() { BigInteger i = BigInteger.Parse("123456789999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990"); string json = JsonConvert.SerializeObject(new[] { i }, Formatting.Indented); StringAssert.AreEqual(@"[ 123456789999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990 ]", json); } #endif public class FooConstructor { [JsonProperty(PropertyName = "something_else")] public readonly string Bar; public FooConstructor(string bar) { if (bar == null) throw new ArgumentNullException("bar"); Bar = bar; } } [Test] public void DeserializeWithConstructor() { const string json = @"{""something_else"":""my value""}"; var foo = JsonConvert.DeserializeObject(json); Assert.AreEqual("my value", foo.Bar); } [Test] public void SerializeCustomReferenceResolver() { PersonReference john = new PersonReference { Id = new Guid("0B64FFDF-D155-44AD-9689-58D9ADB137F3"), Name = "John Smith" }; PersonReference jane = new PersonReference { Id = new Guid("AE3C399C-058D-431D-91B0-A36C266441B9"), Name = "Jane Smith" }; john.Spouse = jane; jane.Spouse = john; IList people = new List { john, jane }; string json = JsonConvert.SerializeObject(people, new JsonSerializerSettings { ReferenceResolver = new IdReferenceResolver(), PreserveReferencesHandling = PreserveReferencesHandling.Objects, Formatting = Formatting.Indented }); StringAssert.AreEqual(@"[ { ""$id"": ""0b64ffdf-d155-44ad-9689-58d9adb137f3"", ""Name"": ""John Smith"", ""Spouse"": { ""$id"": ""ae3c399c-058d-431d-91b0-a36c266441b9"", ""Name"": ""Jane Smith"", ""Spouse"": { ""$ref"": ""0b64ffdf-d155-44ad-9689-58d9adb137f3"" } } }, { ""$ref"": ""ae3c399c-058d-431d-91b0-a36c266441b9"" } ]", json); } #if !(PORTABLE || PORTABLE40 || NETFX_CORE || ASPNETCORE50) [Test] public void SerializeDictionaryWithStructKey() { string json = JsonConvert.SerializeObject( new Dictionary { { new Size(1, 2), new Size(3, 4) } } ); Assert.AreEqual(@"{""1, 2"":""3, 4""}", json); Dictionary d = JsonConvert.DeserializeObject>(json); Assert.AreEqual(new Size(1, 2), d.Keys.First()); Assert.AreEqual(new Size(3, 4), d.Values.First()); } #endif [Test] public void DeserializeCustomReferenceResolver() { string json = @"[ { ""$id"": ""0b64ffdf-d155-44ad-9689-58d9adb137f3"", ""Name"": ""John Smith"", ""Spouse"": { ""$id"": ""ae3c399c-058d-431d-91b0-a36c266441b9"", ""Name"": ""Jane Smith"", ""Spouse"": { ""$ref"": ""0b64ffdf-d155-44ad-9689-58d9adb137f3"" } } }, { ""$ref"": ""ae3c399c-058d-431d-91b0-a36c266441b9"" } ]"; IList people = JsonConvert.DeserializeObject>(json, new JsonSerializerSettings { ReferenceResolver = new IdReferenceResolver(), PreserveReferencesHandling = PreserveReferencesHandling.Objects, Formatting = Formatting.Indented }); Assert.AreEqual(2, people.Count); PersonReference john = people[0]; PersonReference jane = people[1]; Assert.AreEqual(john, jane.Spouse); Assert.AreEqual(jane, john.Spouse); } #if !(NETFX_CORE || NET35 || NET20 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void TypeConverterOnInterface() { var consoleWriter = new ConsoleWriter(); // If dynamic type handling is enabled, case 1 and 3 work fine var options = new JsonSerializerSettings { Converters = new JsonConverterCollection { new TypeConverterJsonConverter() }, //TypeNameHandling = TypeNameHandling.All }; // // Case 1: Serialize the concrete value and restore it from the interface // Therefore we need dynamic handling of type information if the type is not serialized with the type converter directly // var text1 = JsonConvert.SerializeObject(consoleWriter, Formatting.Indented, options); Assert.AreEqual(@"""Console Writer""", text1); var restoredWriter = JsonConvert.DeserializeObject(text1, options); Assert.AreEqual("ConsoleWriter", restoredWriter.PrintTest()); // // Case 2: Serialize a dictionary where the interface is the key // The key is always serialized with its ToString() method and therefore needs a mechanism to be restored from that (using the type converter) // var dict2 = new Dictionary(); dict2.Add(consoleWriter, "Console"); var text2 = JsonConvert.SerializeObject(dict2, Formatting.Indented, options); StringAssert.AreEqual(@"{ ""Console Writer"": ""Console"" }", text2); var restoredObject = JsonConvert.DeserializeObject>(text2, options); Assert.AreEqual("ConsoleWriter", restoredObject.First().Key.PrintTest()); // // Case 3 Serialize a dictionary where the interface is the value // The key is always serialized with its ToString() method and therefore needs a mechanism to be restored from that (using the type converter) // var dict3 = new Dictionary(); dict3.Add("Console", consoleWriter); var text3 = JsonConvert.SerializeObject(dict3, Formatting.Indented, options); StringAssert.AreEqual(@"{ ""Console"": ""Console Writer"" }", text3); var restoredDict2 = JsonConvert.DeserializeObject>(text3, options); Assert.AreEqual("ConsoleWriter", restoredDict2.First().Value.PrintTest()); } #endif [Test] public void Main() { ParticipantEntity product = new ParticipantEntity(); product.Properties = new Dictionary { { "s", "d" } }; string json = JsonConvert.SerializeObject(product); Console.WriteLine(json); ParticipantEntity deserializedProduct = JsonConvert.DeserializeObject(json); } #if !(PORTABLE || ASPNETCORE50 || NETFX_CORE) public class ConvertibleId : IConvertible { public int Value; TypeCode IConvertible.GetTypeCode() { return TypeCode.Object; } object IConvertible.ToType(Type conversionType, IFormatProvider provider) { if (conversionType == typeof(object)) { return this; } if (conversionType == typeof(int)) { return (int)Value; } if (conversionType == typeof(long)) { return (long)Value; } if (conversionType == typeof(string)) { return Value.ToString(CultureInfo.InvariantCulture); } throw new InvalidCastException(); } bool IConvertible.ToBoolean(IFormatProvider provider) { throw new InvalidCastException(); } byte IConvertible.ToByte(IFormatProvider provider) { throw new InvalidCastException(); } char IConvertible.ToChar(IFormatProvider provider) { throw new InvalidCastException(); } DateTime IConvertible.ToDateTime(IFormatProvider provider) { throw new InvalidCastException(); } decimal IConvertible.ToDecimal(IFormatProvider provider) { throw new InvalidCastException(); } double IConvertible.ToDouble(IFormatProvider provider) { throw new InvalidCastException(); } short IConvertible.ToInt16(IFormatProvider provider) { return (short)Value; } int IConvertible.ToInt32(IFormatProvider provider) { return Value; } long IConvertible.ToInt64(IFormatProvider provider) { return (long)Value; } sbyte IConvertible.ToSByte(IFormatProvider provider) { throw new InvalidCastException(); } float IConvertible.ToSingle(IFormatProvider provider) { throw new InvalidCastException(); } string IConvertible.ToString(IFormatProvider provider) { throw new InvalidCastException(); } ushort IConvertible.ToUInt16(IFormatProvider provider) { throw new InvalidCastException(); } uint IConvertible.ToUInt32(IFormatProvider provider) { throw new InvalidCastException(); } ulong IConvertible.ToUInt64(IFormatProvider provider) { throw new InvalidCastException(); } } public class TestClassConvertable { public ConvertibleId Id; public int X; } [Test] public void ConvertibleIdTest() { var c = new TestClassConvertable { Id = new ConvertibleId { Value = 1 }, X = 2 }; var s = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"{ ""Id"": ""1"", ""X"": 2 }", s); } #endif [Test] public void DuplicatePropertiesInNestedObject() { ExceptionAssert.Throws(() => { string content = @"{""result"":{""time"":1408188592,""time"":1408188593},""error"":null,""id"":""1""}"; JsonConvert.DeserializeObject(content); }, "Can not add property time to Newtonsoft.Json.Linq.JObject. Property with the same name already exists on object."); } [Test] public void RoundtripUriOriginalString() { string originalUri = "https://test.com?m=a%2bb"; Uri uriWithPlus = new Uri(originalUri); string jsonWithPlus = JsonConvert.SerializeObject(uriWithPlus); Uri uriWithPlus2 = JsonConvert.DeserializeObject(jsonWithPlus); Assert.AreEqual(originalUri, uriWithPlus2.OriginalString); } [Test] public void DateFormatStringWithDateTime() { DateTime dt = new DateTime(2000, 12, 22); string dateFormatString = "yyyy'-pie-'MMM'-'dddd'-'dd"; JsonSerializerSettings settings = new JsonSerializerSettings { DateFormatString = dateFormatString }; string json = JsonConvert.SerializeObject(dt, settings); Assert.AreEqual(@"""2000-pie-Dec-Friday-22""", json); DateTime dt1 = JsonConvert.DeserializeObject(json, settings); Assert.AreEqual(dt, dt1); JsonTextReader reader = new JsonTextReader(new StringReader(json)) { DateFormatString = dateFormatString }; JValue v = (JValue)JToken.ReadFrom(reader); Assert.AreEqual(JTokenType.Date, v.Type); Assert.AreEqual(typeof(DateTime), v.Value.GetType()); Assert.AreEqual(dt, (DateTime)v.Value); reader = new JsonTextReader(new StringReader(@"""abc""")) { DateFormatString = dateFormatString }; v = (JValue)JToken.ReadFrom(reader); Assert.AreEqual(JTokenType.String, v.Type); Assert.AreEqual(typeof(string), v.Value.GetType()); Assert.AreEqual("abc", v.Value); } [Test] public void DateFormatStringWithDateTimeAndCulture() { CultureInfo culture = new CultureInfo("tr-TR"); DateTime dt = new DateTime(2000, 12, 22); string dateFormatString = "yyyy'-pie-'MMM'-'dddd'-'dd"; JsonSerializerSettings settings = new JsonSerializerSettings { DateFormatString = dateFormatString, Culture = culture }; string json = JsonConvert.SerializeObject(dt, settings); Assert.AreEqual(@"""2000-pie-Ara-Cuma-22""", json); DateTime dt1 = JsonConvert.DeserializeObject(json, settings); Assert.AreEqual(dt, dt1); JsonTextReader reader = new JsonTextReader(new StringReader(json)) { DateFormatString = dateFormatString, Culture = culture }; JValue v = (JValue)JToken.ReadFrom(reader); Assert.AreEqual(JTokenType.Date, v.Type); Assert.AreEqual(typeof(DateTime), v.Value.GetType()); Assert.AreEqual(dt, (DateTime)v.Value); reader = new JsonTextReader(new StringReader(@"""2000-pie-Dec-Friday-22""")) { DateFormatString = dateFormatString, Culture = culture }; v = (JValue)JToken.ReadFrom(reader); Assert.AreEqual(JTokenType.String, v.Type); Assert.AreEqual(typeof(string), v.Value.GetType()); Assert.AreEqual("2000-pie-Dec-Friday-22", v.Value); } [Test] public void DateFormatStringWithDictionaryKey_DateTime() { DateTime dt = new DateTime(2000, 12, 22); string dateFormatString = "yyyy'-pie-'MMM'-'dddd'-'dd"; JsonSerializerSettings settings = new JsonSerializerSettings { DateFormatString = dateFormatString, Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(new Dictionary { { dt, "123" } }, settings); StringAssert.AreEqual(@"{ ""2000-pie-Dec-Friday-22"": ""123"" }", json); Dictionary d = JsonConvert.DeserializeObject>(json, settings); Assert.AreEqual(dt, d.Keys.ElementAt(0)); } [Test] public void DateFormatStringWithDictionaryKey_DateTime_ReadAhead() { DateTime dt = new DateTime(2000, 12, 22); string dateFormatString = "yyyy'-pie-'MMM'-'dddd'-'dd"; JsonSerializerSettings settings = new JsonSerializerSettings { DateFormatString = dateFormatString, MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead, Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(new Dictionary { { dt, "123" } }, settings); StringAssert.AreEqual(@"{ ""2000-pie-Dec-Friday-22"": ""123"" }", json); Dictionary d = JsonConvert.DeserializeObject>(json, settings); Assert.AreEqual(dt, d.Keys.ElementAt(0)); } #if !NET20 [Test] public void DateFormatStringWithDictionaryKey_DateTimeOffset() { DateTimeOffset dt = new DateTimeOffset(2000, 12, 22, 0, 0, 0, TimeSpan.Zero); string dateFormatString = "yyyy'-pie-'MMM'-'dddd'-'dd'!'K"; JsonSerializerSettings settings = new JsonSerializerSettings { DateFormatString = dateFormatString, Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(new Dictionary { { dt, "123" } }, settings); StringAssert.AreEqual(@"{ ""2000-pie-Dec-Friday-22!+00:00"": ""123"" }", json); Dictionary d = JsonConvert.DeserializeObject>(json, settings); Assert.AreEqual(dt, d.Keys.ElementAt(0)); } [Test] public void DateFormatStringWithDictionaryKey_DateTimeOffset_ReadAhead() { DateTimeOffset dt = new DateTimeOffset(2000, 12, 22, 0, 0, 0, TimeSpan.Zero); string dateFormatString = "yyyy'-pie-'MMM'-'dddd'-'dd'!'K"; JsonSerializerSettings settings = new JsonSerializerSettings { DateFormatString = dateFormatString, MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead, Formatting = Formatting.Indented }; string json = JsonConvert.SerializeObject(new Dictionary { { dt, "123" } }, settings); StringAssert.AreEqual(@"{ ""2000-pie-Dec-Friday-22!+00:00"": ""123"" }", json); Dictionary d = JsonConvert.DeserializeObject>(json, settings); Assert.AreEqual(dt, d.Keys.ElementAt(0)); } [Test] public void DateFormatStringWithDateTimeOffset() { DateTimeOffset dt = new DateTimeOffset(new DateTime(2000, 12, 22)); string dateFormatString = "yyyy'-pie-'MMM'-'dddd'-'dd"; JsonSerializerSettings settings = new JsonSerializerSettings { DateFormatString = dateFormatString }; string json = JsonConvert.SerializeObject(dt, settings); Assert.AreEqual(@"""2000-pie-Dec-Friday-22""", json); DateTimeOffset dt1 = JsonConvert.DeserializeObject(json, settings); Assert.AreEqual(dt, dt1); JsonTextReader reader = new JsonTextReader(new StringReader(json)) { DateFormatString = dateFormatString, DateParseHandling = DateParseHandling.DateTimeOffset }; JValue v = (JValue)JToken.ReadFrom(reader); Assert.AreEqual(JTokenType.Date, v.Type); Assert.AreEqual(typeof(DateTimeOffset), v.Value.GetType()); Assert.AreEqual(dt, (DateTimeOffset)v.Value); } [DataContract] public class ConstantTestClass { [DataMember] public const char MY_CONSTANT = '.'; } [Test] public void DeserializeConstantProperty() { ConstantTestClass c1 = new ConstantTestClass(); string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""MY_CONSTANT"": ""."" }", json); JsonConvert.DeserializeObject(json); } #endif [Test] public void ParameterizedConstructorWithBasePrivateProperties() { var original = new DerivedConstructorType("Base", "Derived"); var serializerSettings = new JsonSerializerSettings(); var jsonCopy = JsonConvert.SerializeObject(original, serializerSettings); Console.WriteLine(original); var clonedObject = JsonConvert.DeserializeObject(jsonCopy, serializerSettings); Assert.AreEqual("Base", clonedObject.BaseProperty); Assert.AreEqual("Derived", clonedObject.DerivedProperty); } public class DerivedConstructorType : BaseConstructorType { public DerivedConstructorType(string baseProperty, string derivedProperty) : base(baseProperty) { DerivedProperty = derivedProperty; } [JsonProperty] public string DerivedProperty { get; private set; } } public class BaseConstructorType { [JsonProperty] public string BaseProperty { get; private set; } public BaseConstructorType(string baseProperty) { BaseProperty = baseProperty; } } public class ErroringJsonConverter : JsonConverter { public ErroringJsonConverter(string s) { } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { throw new NotImplementedException(); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { throw new NotImplementedException(); } public override bool CanConvert(Type objectType) { throw new NotImplementedException(); } } [JsonConverter(typeof(ErroringJsonConverter))] public class ErroringTestClass { } [Test] public void ErrorCreatingJsonConverter() { ExceptionAssert.Throws(() => JsonConvert.SerializeObject(new ErroringTestClass()), "Error creating 'Newtonsoft.Json.Tests.Serialization.JsonSerializerTest+ErroringJsonConverter'."); } [Test] public void DeserializeInvalidOctalRootError() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject("020474068"), "Input string '020474068' is not a valid number. Path '', line 1, position 9."); } [Test] public void DeserializedDerivedWithPrivate() { string json = @"{ ""DerivedProperty"": ""derived"", ""BaseProperty"": ""base"" }"; var d = JsonConvert.DeserializeObject(json); Assert.AreEqual("base", d.BaseProperty); Assert.AreEqual("derived", d.DerivedProperty); } #if !NETFX_CORE [Test] public void MailMessageConverterTest() { const string JsonMessage = @"{ ""From"": { ""Address"": ""askywalker@theEmpire.gov"", ""DisplayName"": ""Darth Vader"" }, ""Sender"": null, ""ReplyTo"": null, ""ReplyToList"": [], ""To"": [ { ""Address"": ""lskywalker@theRebellion.org"", ""DisplayName"": ""Luke Skywalker"" } ], ""Bcc"": [], ""CC"": [ { ""Address"": ""lorgana@alderaan.gov"", ""DisplayName"": ""Princess Leia"" } ], ""Priority"": 0, ""DeliveryNotificationOptions"": 0, ""Subject"": ""Family tree"", ""SubjectEncoding"": null, ""Headers"": [], ""HeadersEncoding"": null, ""Body"": ""I am your father!"", ""BodyEncoding"": ""US-ASCII"", ""BodyTransferEncoding"": -1, ""IsBodyHtml"": true, ""Attachments"": [ { ""FileName"": ""skywalker family tree.jpg"", ""ContentBase64"": ""AQIDBAU="" } ], ""AlternateViews"": [] }"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject( JsonMessage, new MailAddressReadConverter(), new AttachmentReadConverter(), new EncodingReadConverter()); }, "Cannot populate list type System.Net.Mime.HeaderCollection. Path 'Headers', line 26, position 15."); } public class MailAddressReadConverter : JsonConverter { public override bool CanConvert(Type objectType) { return objectType == typeof(System.Net.Mail.MailAddress); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { var messageJObject = serializer.Deserialize(reader); if (messageJObject == null) { return null; } var address = messageJObject.GetValue("Address", StringComparison.OrdinalIgnoreCase).ToObject(); JToken displayNameToken; string displayName; if (messageJObject.TryGetValue("DisplayName", StringComparison.OrdinalIgnoreCase, out displayNameToken) && !string.IsNullOrEmpty(displayName = displayNameToken.ToObject())) { return new System.Net.Mail.MailAddress(address, displayName); } return new System.Net.Mail.MailAddress(address); } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { throw new NotImplementedException(); } } public class AttachmentReadConverter : JsonConverter { public override bool CanConvert(Type objectType) { return objectType == typeof(System.Net.Mail.Attachment); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { var info = serializer.Deserialize(reader); var attachment = info != null ? new System.Net.Mail.Attachment(new MemoryStream(Convert.FromBase64String(info.ContentBase64)), "application/octet-stream") { ContentDisposition = { FileName = info.FileName } } : null; return attachment; } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { throw new NotImplementedException(); } private class AttachmentInfo { [JsonProperty(Required = Required.Always)] public string FileName { get; set; } [JsonProperty(Required = Required.Always)] public string ContentBase64 { get; set; } } } public class EncodingReadConverter : JsonConverter { public override bool CanConvert(Type objectType) { return typeof(Encoding).IsAssignableFrom(objectType); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { var encodingName = serializer.Deserialize(reader); if (encodingName == null) return null; return Encoding.GetEncoding(encodingName); } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { throw new NotImplementedException(); } } #endif } public class DerivedWithPrivate : BaseWithPrivate { [JsonProperty] public string DerivedProperty { get; private set; } } public class BaseWithPrivate { [JsonProperty] public string BaseProperty { get; private set; } } public abstract class Test { public abstract T Value { get; set; } } [JsonObject(MemberSerialization.OptIn)] public class DecimalTest : Test { protected DecimalTest() { } public DecimalTest(decimal val) { Value = val; } [JsonProperty] public override decimal Value { get; set; } } public class NonPublicConstructorWithJsonConstructor { public string Value { get; private set; } public string Constructor { get; private set; } [JsonConstructor] private NonPublicConstructorWithJsonConstructor() { Constructor = "NonPublic"; } public NonPublicConstructorWithJsonConstructor(string value) { Value = value; Constructor = "Public Paramatized"; } } public abstract class AbstractTestClass { public string Value { get; set; } } public class AbstractImplementationTestClass : AbstractTestClass { } public abstract class AbstractListTestClass : List { } public class AbstractImplementationListTestClass : AbstractListTestClass { } public abstract class AbstractDictionaryTestClass : Dictionary { } public class AbstractImplementationDictionaryTestClass : AbstractDictionaryTestClass { } public class PublicConstructorOverridenByJsonConstructor { public string Value { get; private set; } public string Constructor { get; private set; } public PublicConstructorOverridenByJsonConstructor() { Constructor = "NonPublic"; } [JsonConstructor] public PublicConstructorOverridenByJsonConstructor(string value) { Value = value; Constructor = "Public Paramatized"; } } public class MultipleParamatrizedConstructorsJsonConstructor { public string Value { get; private set; } public int Age { get; private set; } public string Constructor { get; private set; } public MultipleParamatrizedConstructorsJsonConstructor(string value) { Value = value; Constructor = "Public Paramatized 1"; } [JsonConstructor] public MultipleParamatrizedConstructorsJsonConstructor(string value, int age) { Value = value; Age = age; Constructor = "Public Paramatized 2"; } } public class EnumerableClass { public IEnumerable Enumerable { get; set; } } [JsonObject(MemberSerialization.OptIn)] public class ItemBase { [JsonProperty] public string Name { get; set; } } public class ComplexItem : ItemBase { public Stream Source { get; set; } } public class DeserializeStringConvert { public string Name { get; set; } public int Age { get; set; } public double Height { get; set; } public decimal Price { get; set; } } [JsonObject(MemberSerialization.OptIn)] public class StaticTestClass { [JsonProperty] public int x = 1; [JsonProperty] public static int y = 2; [JsonProperty] public static int z { get; set; } static StaticTestClass() { z = 3; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/ConstructorHandlingTests.cs0000664000175000017500000001513612454416117032526 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Reflection; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class ConstructorHandlingTests : TestFixtureBase { [Test] public void UsePrivateConstructorIfThereAreMultipleConstructorsWithParametersAndNothingToFallbackTo() { string json = @"{Name:""Name!""}"; var c = JsonConvert.DeserializeObject(json); Assert.AreEqual("Name!", c.Name); } [Test] public void SuccessWithPrivateConstructorAndAllowNonPublic() { string json = @"{Name:""Name!""}"; PrivateConstructorTestClass c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor }); Assert.IsNotNull(c); Assert.AreEqual("Name!", c.Name); } [Test] public void FailWithPrivateConstructorPlusParametizedAndDefault() { ExceptionAssert.Throws(() => { string json = @"{Name:""Name!""}"; PrivateConstructorWithPublicParametizedConstructorTestClass c = JsonConvert.DeserializeObject(json); }); } [Test] public void SuccessWithPrivateConstructorPlusParametizedAndAllowNonPublic() { string json = @"{Name:""Name!""}"; PrivateConstructorWithPublicParametizedConstructorTestClass c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor }); Assert.IsNotNull(c); Assert.AreEqual("Name!", c.Name); Assert.AreEqual(1, c.Age); } [Test] public void SuccessWithPublicParametizedConstructor() { string json = @"{Name:""Name!""}"; var c = JsonConvert.DeserializeObject(json); Assert.IsNotNull(c); Assert.AreEqual("Name!", c.Name); } [Test] public void SuccessWithPublicParametizedConstructorWhenParamaterIsNotAProperty() { string json = @"{nameParameter:""Name!""}"; PublicParametizedConstructorWithNonPropertyParameterTestClass c = JsonConvert.DeserializeObject(json); Assert.IsNotNull(c); Assert.AreEqual("Name!", c.Name); } [Test] public void SuccessWithPublicParametizedConstructorWhenParamaterRequiresAConverter() { string json = @"{nameParameter:""Name!""}"; PublicParametizedConstructorRequiringConverterTestClass c = JsonConvert.DeserializeObject(json, new NameContainerConverter()); Assert.IsNotNull(c); Assert.AreEqual("Name!", c.Name.Value); } [Test] public void SuccessWithPublicParametizedConstructorWhenParamaterRequiresAConverterWithParameterAttribute() { string json = @"{nameParameter:""Name!""}"; PublicParametizedConstructorRequiringConverterWithParameterAttributeTestClass c = JsonConvert.DeserializeObject(json); Assert.IsNotNull(c); Assert.AreEqual("Name!", c.Name.Value); } [Test] public void SuccessWithPublicParametizedConstructorWhenParamaterRequiresAConverterWithPropertyAttribute() { string json = @"{name:""Name!""}"; PublicParametizedConstructorRequiringConverterWithPropertyAttributeTestClass c = JsonConvert.DeserializeObject(json); Assert.IsNotNull(c); Assert.AreEqual("Name!", c.Name.Value); } [Test] public void SuccessWithPublicParametizedConstructorWhenParamaterNameConflictsWithPropertyName() { string json = @"{name:""1""}"; PublicParametizedConstructorWithPropertyNameConflict c = JsonConvert.DeserializeObject(json); Assert.IsNotNull(c); Assert.AreEqual(1, c.Name); } [Test] public void PublicParametizedConstructorWithPropertyNameConflictWithAttribute() { string json = @"{name:""1""}"; PublicParametizedConstructorWithPropertyNameConflictWithAttribute c = JsonConvert.DeserializeObject(json); Assert.IsNotNull(c); Assert.AreEqual(1, c.Name); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/ContractResolverTests.cs0000664000175000017500000005515012454416117032033 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.ComponentModel; using System.IO; using System.Runtime.Serialization; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using System.Reflection; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Tests.Serialization { public class DynamicContractResolver : DefaultContractResolver { private readonly char _startingWithChar; public DynamicContractResolver(char startingWithChar) : base(false) { _startingWithChar = startingWithChar; } protected override IList CreateProperties(Type type, MemberSerialization memberSerialization) { IList properties = base.CreateProperties(type, memberSerialization); // only serializer properties that start with the specified character properties = properties.Where(p => p.PropertyName.StartsWith(_startingWithChar.ToString())).ToList(); return properties; } } public class EscapedPropertiesContractResolver : DefaultContractResolver { public string PropertyPrefix { get; set; } public string PropertySuffix { get; set; } protected internal override string ResolvePropertyName(string propertyName) { return base.ResolvePropertyName(PropertyPrefix + propertyName + PropertySuffix); } } public class Book { public string BookName { get; set; } public decimal BookPrice { get; set; } public string AuthorName { get; set; } public int AuthorAge { get; set; } public string AuthorCountry { get; set; } } public class IPersonContractResolver : DefaultContractResolver { protected override JsonContract CreateContract(Type objectType) { if (objectType == typeof(Employee)) objectType = typeof(IPerson); return base.CreateContract(objectType); } } public class AddressWithDataMember { #if !NET20 [DataMember(Name = "CustomerAddress1")] #endif public string AddressLine1 { get; set; } } [TestFixture] public class ContractResolverTests : TestFixtureBase { [Test] public void JsonPropertyDefaultValue() { JsonProperty p = new JsonProperty(); Assert.AreEqual(null, p.GetResolvedDefaultValue()); Assert.AreEqual(null, p.DefaultValue); p.PropertyType = typeof(int); Assert.AreEqual(0 , p.GetResolvedDefaultValue()); Assert.AreEqual(null, p.DefaultValue); p.PropertyType = typeof(DateTime); Assert.AreEqual(new DateTime(), p.GetResolvedDefaultValue()); Assert.AreEqual(null, p.DefaultValue); p.PropertyType = null; Assert.AreEqual(null, p.GetResolvedDefaultValue()); Assert.AreEqual(null, p.DefaultValue); p.PropertyType = typeof(CompareOptions); Assert.AreEqual(CompareOptions.None, (CompareOptions)p.GetResolvedDefaultValue()); Assert.AreEqual(null, p.DefaultValue); } [Test] public void ListInterface() { var resolver = new DefaultContractResolver(); var contract = (JsonArrayContract)resolver.ResolveContract(typeof(IList)); Assert.IsTrue(contract.IsInstantiable); Assert.AreEqual(typeof(List), contract.CreatedType); Assert.IsNotNull(contract.DefaultCreator); } [Test] public void PropertyAttributeProvider() { var resolver = new DefaultContractResolver(); var contract = (JsonObjectContract)resolver.ResolveContract(typeof(Invoice)); JsonProperty property = contract.Properties["FollowUpDays"]; Assert.AreEqual(1, property.AttributeProvider.GetAttributes(false).Count); Assert.AreEqual(typeof(DefaultValueAttribute), property.AttributeProvider.GetAttributes(false)[0].GetType()); } [Test] public void AbstractTestClass() { var resolver = new DefaultContractResolver(); var contract = (JsonObjectContract)resolver.ResolveContract(typeof(AbstractTestClass)); Assert.IsFalse(contract.IsInstantiable); Assert.IsNull(contract.DefaultCreator); Assert.IsNull(contract.OverrideCreator); ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(@"{Value:'Value!'}", new JsonSerializerSettings { ContractResolver = resolver }), "Could not create an instance of type Newtonsoft.Json.Tests.Serialization.AbstractTestClass. Type is an interface or abstract class and cannot be instantiated. Path 'Value', line 1, position 7."); contract.DefaultCreator = () => new AbstractImplementationTestClass(); var o = JsonConvert.DeserializeObject(@"{Value:'Value!'}", new JsonSerializerSettings { ContractResolver = resolver }); Assert.AreEqual("Value!", o.Value); } [Test] public void AbstractListTestClass() { var resolver = new DefaultContractResolver(); var contract = (JsonArrayContract)resolver.ResolveContract(typeof(AbstractListTestClass)); Assert.IsFalse(contract.IsInstantiable); Assert.IsNull(contract.DefaultCreator); Assert.IsFalse(contract.HasParametrizedCreator); ExceptionAssert.Throws(() => JsonConvert.DeserializeObject>(@"[1,2]", new JsonSerializerSettings { ContractResolver = resolver }), "Could not create an instance of type Newtonsoft.Json.Tests.Serialization.AbstractListTestClass`1[System.Int32]. Type is an interface or abstract class and cannot be instantiated. Path '', line 1, position 1."); contract.DefaultCreator = () => new AbstractImplementationListTestClass(); var l = JsonConvert.DeserializeObject>(@"[1,2]", new JsonSerializerSettings { ContractResolver = resolver }); Assert.AreEqual(2, l.Count); Assert.AreEqual(1, l[0]); Assert.AreEqual(2, l[1]); } public class CustomList : List { } [Test] public void ListInterfaceDefaultCreator() { var resolver = new DefaultContractResolver(); var contract = (JsonArrayContract)resolver.ResolveContract(typeof(IList)); Assert.IsTrue(contract.IsInstantiable); Assert.IsNotNull(contract.DefaultCreator); contract.DefaultCreator = () => new CustomList(); var l = JsonConvert.DeserializeObject>(@"[1,2,3]", new JsonSerializerSettings { ContractResolver = resolver }); Assert.AreEqual(typeof(CustomList), l.GetType()); Assert.AreEqual(3, l.Count); Assert.AreEqual(1, l[0]); Assert.AreEqual(2, l[1]); Assert.AreEqual(3, l[2]); } public class CustomDictionary : Dictionary { } [Test] public void DictionaryInterfaceDefaultCreator() { var resolver = new DefaultContractResolver(); var contract = (JsonDictionaryContract)resolver.ResolveContract(typeof(IDictionary)); Assert.IsTrue(contract.IsInstantiable); Assert.IsNotNull(contract.DefaultCreator); contract.DefaultCreator = () => new CustomDictionary(); var d = JsonConvert.DeserializeObject>(@"{key1:1,key2:2}", new JsonSerializerSettings { ContractResolver = resolver }); Assert.AreEqual(typeof(CustomDictionary), d.GetType()); Assert.AreEqual(2, d.Count); Assert.AreEqual(1, d["key1"]); Assert.AreEqual(2, d["key2"]); } [Test] public void AbstractDictionaryTestClass() { var resolver = new DefaultContractResolver(); var contract = (JsonDictionaryContract)resolver.ResolveContract(typeof(AbstractDictionaryTestClass)); Assert.IsFalse(contract.IsInstantiable); Assert.IsNull(contract.DefaultCreator); Assert.IsFalse(contract.HasParametrizedCreator); ExceptionAssert.Throws(() => JsonConvert.DeserializeObject>(@"{key1:1,key2:2}", new JsonSerializerSettings { ContractResolver = resolver }), "Could not create an instance of type Newtonsoft.Json.Tests.Serialization.AbstractDictionaryTestClass`2[System.String,System.Int32]. Type is an interface or abstract class and cannot be instantiated. Path 'key1', line 1, position 6."); contract.DefaultCreator = () => new AbstractImplementationDictionaryTestClass(); var d = JsonConvert.DeserializeObject>(@"{key1:1,key2:2}", new JsonSerializerSettings { ContractResolver = resolver }); Assert.AreEqual(2, d.Count); Assert.AreEqual(1, d["key1"]); Assert.AreEqual(2, d["key2"]); } [Test] public void SerializeWithEscapedPropertyName() { string json = JsonConvert.SerializeObject( new AddressWithDataMember { AddressLine1 = "value!" }, new JsonSerializerSettings { ContractResolver = new EscapedPropertiesContractResolver { PropertySuffix = @"-'-""-" } }); Assert.AreEqual(@"{""AddressLine1-'-\""-"":""value!""}", json); JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Read(); reader.Read(); Assert.AreEqual(@"AddressLine1-'-""-", reader.Value); } [Test] public void SerializeWithHtmlEscapedPropertyName() { string json = JsonConvert.SerializeObject( new AddressWithDataMember { AddressLine1 = "value!" }, new JsonSerializerSettings { ContractResolver = new EscapedPropertiesContractResolver { PropertyPrefix = "", PropertySuffix = "" }, StringEscapeHandling = StringEscapeHandling.EscapeHtml }); Assert.AreEqual(@"{""\u003cb\u003eAddressLine1\u003c/b\u003e"":""value!""}", json); JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Read(); reader.Read(); Assert.AreEqual(@"AddressLine1", reader.Value); } [Test] public void CalculatingPropertyNameEscapedSkipping() { JsonProperty p = new JsonProperty { PropertyName = "abc" }; Assert.IsTrue(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "123" }; Assert.IsTrue(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "._-" }; Assert.IsTrue(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "!@#" }; Assert.IsTrue(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "$%^" }; Assert.IsTrue(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "?*(" }; Assert.IsTrue(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = ")_+" }; Assert.IsTrue(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "=:," }; Assert.IsTrue(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = null }; Assert.IsTrue(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "&" }; Assert.IsFalse(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "<" }; Assert.IsFalse(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = ">" }; Assert.IsFalse(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "'" }; Assert.IsFalse(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = @"""" }; Assert.IsFalse(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = Environment.NewLine }; Assert.IsFalse(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "\0" }; Assert.IsFalse(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "\n" }; Assert.IsFalse(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "\v" }; Assert.IsFalse(p._skipPropertyNameEscape); p = new JsonProperty { PropertyName = "\u00B9" }; Assert.IsFalse(p._skipPropertyNameEscape); } #if !NET20 [Test] public void DeserializeDataMemberClassWithNoDataContract() { var resolver = new DefaultContractResolver(); var contract = (JsonObjectContract)resolver.ResolveContract(typeof(AddressWithDataMember)); Assert.AreEqual("AddressLine1", contract.Properties[0].PropertyName); } #endif [Test] public void ResolveProperties_IgnoreStatic() { var resolver = new DefaultContractResolver(); var contract = (JsonObjectContract)resolver.ResolveContract(typeof(NumberFormatInfo)); Assert.IsFalse(contract.Properties.Any(c => c.PropertyName == "InvariantInfo")); } [Test] public void ParametrizedCreator() { var resolver = new DefaultContractResolver(); var contract = (JsonObjectContract)resolver.ResolveContract(typeof(PublicParametizedConstructorWithPropertyNameConflictWithAttribute)); Assert.IsNull(contract.DefaultCreator); Assert.IsNotNull(contract.ParametrizedCreator); #pragma warning disable 618 Assert.AreEqual(contract.ParametrizedConstructor, typeof(PublicParametizedConstructorWithPropertyNameConflictWithAttribute).GetConstructor(new[] { typeof(string) })); #pragma warning restore 618 Assert.AreEqual(1, contract.CreatorParameters.Count); Assert.AreEqual("name", contract.CreatorParameters[0].PropertyName); #pragma warning disable 618 contract.ParametrizedConstructor = null; #pragma warning restore 618 Assert.IsNull(contract.ParametrizedCreator); } [Test] public void OverrideCreator() { var resolver = new DefaultContractResolver(); var contract = (JsonObjectContract)resolver.ResolveContract(typeof(MultipleParamatrizedConstructorsJsonConstructor)); Assert.IsNull(contract.DefaultCreator); Assert.IsNotNull(contract.OverrideCreator); #pragma warning disable 618 Assert.AreEqual(contract.OverrideConstructor, typeof(MultipleParamatrizedConstructorsJsonConstructor).GetConstructor(new[] { typeof(string), typeof(int) })); #pragma warning restore 618 Assert.AreEqual(2, contract.CreatorParameters.Count); Assert.AreEqual("Value", contract.CreatorParameters[0].PropertyName); Assert.AreEqual("Age", contract.CreatorParameters[1].PropertyName); #pragma warning disable 618 contract.OverrideConstructor = null; #pragma warning restore 618 Assert.IsNull(contract.OverrideCreator); } [Test] public void CustomOverrideCreator() { var resolver = new DefaultContractResolver(); var contract = (JsonObjectContract)resolver.ResolveContract(typeof(MultipleParamatrizedConstructorsJsonConstructor)); bool ensureCustomCreatorCalled = false; contract.OverrideCreator = args => { ensureCustomCreatorCalled = true; return new MultipleParamatrizedConstructorsJsonConstructor((string) args[0], (int) args[1]); }; #pragma warning disable 618 Assert.IsNull(contract.OverrideConstructor); #pragma warning restore 618 var o = JsonConvert.DeserializeObject("{Value:'value!', Age:1}", new JsonSerializerSettings { ContractResolver = resolver }); Assert.AreEqual("value!", o.Value); Assert.AreEqual(1, o.Age); Assert.IsTrue(ensureCustomCreatorCalled); } [Test] public void SerializeInterface() { Employee employee = new Employee { BirthDate = new DateTime(1977, 12, 30, 1, 1, 1, DateTimeKind.Utc), FirstName = "Maurice", LastName = "Moss", Department = "IT", JobTitle = "Support" }; string iPersonJson = JsonConvert.SerializeObject(employee, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new IPersonContractResolver() }); StringAssert.AreEqual(@"{ ""FirstName"": ""Maurice"", ""LastName"": ""Moss"", ""BirthDate"": ""1977-12-30T01:01:01Z"" }", iPersonJson); } [Test] public void SingleTypeWithMultipleContractResolvers() { Book book = new Book { BookName = "The Gathering Storm", BookPrice = 16.19m, AuthorName = "Brandon Sanderson", AuthorAge = 34, AuthorCountry = "United States of America" }; string startingWithA = JsonConvert.SerializeObject(book, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new DynamicContractResolver('A') }); // { // "AuthorName": "Brandon Sanderson", // "AuthorAge": 34, // "AuthorCountry": "United States of America" // } string startingWithB = JsonConvert.SerializeObject(book, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new DynamicContractResolver('B') }); // { // "BookName": "The Gathering Storm", // "BookPrice": 16.19 // } StringAssert.AreEqual(@"{ ""AuthorName"": ""Brandon Sanderson"", ""AuthorAge"": 34, ""AuthorCountry"": ""United States of America"" }", startingWithA); StringAssert.AreEqual(@"{ ""BookName"": ""The Gathering Storm"", ""BookPrice"": 16.19 }", startingWithB); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) #pragma warning disable 618 [Test] public void SerializeCompilerGeneratedMembers() { StructTest structTest = new StructTest { IntField = 1, IntProperty = 2, StringField = "Field", StringProperty = "Property" }; DefaultContractResolver skipCompilerGeneratedResolver = new DefaultContractResolver { DefaultMembersSearchFlags = BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public }; string skipCompilerGeneratedJson = JsonConvert.SerializeObject(structTest, Formatting.Indented, new JsonSerializerSettings { ContractResolver = skipCompilerGeneratedResolver }); StringAssert.AreEqual(@"{ ""StringField"": ""Field"", ""IntField"": 1, ""StringProperty"": ""Property"", ""IntProperty"": 2 }", skipCompilerGeneratedJson); DefaultContractResolver includeCompilerGeneratedResolver = new DefaultContractResolver { DefaultMembersSearchFlags = BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public, SerializeCompilerGeneratedMembers = true }; string includeCompilerGeneratedJson = JsonConvert.SerializeObject(structTest, Formatting.Indented, new JsonSerializerSettings { ContractResolver = includeCompilerGeneratedResolver }); StringAssert.AreEqual(@"{ ""StringField"": ""Field"", ""IntField"": 1, ""k__BackingField"": ""Property"", ""k__BackingField"": 2, ""StringProperty"": ""Property"", ""IntProperty"": 2 }", includeCompilerGeneratedJson); } #pragma warning restore 618 #endif } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/WebApiIntegrationTests.cs0000664000175000017500000001327412454416117032110 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; #if !NET20 using System.Linq; #endif using System.Text; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif #if !(NETFX_CORE || NET20) using System.Runtime.Serialization.Json; #endif using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class WebApiIntegrationTests : TestFixtureBase { [Test] public void SerializeSerializableType() { SerializableType serializableType = new SerializableType("protected") { publicField = "public", protectedInternalField = "protected internal", internalField = "internal", PublicProperty = "private", nonSerializedField = "Error" }; #if !(NETFX_CORE || NET20 || PORTABLE || ASPNETCORE50 || PORTABLE40) MemoryStream ms = new MemoryStream(); DataContractJsonSerializer dataContractJsonSerializer = new DataContractJsonSerializer(typeof(SerializableType)); dataContractJsonSerializer.WriteObject(ms, serializableType); string dtJson = Encoding.UTF8.GetString(ms.ToArray()); string dtExpected = @"{""internalField"":""internal"",""privateField"":""private"",""protectedField"":""protected"",""protectedInternalField"":""protected internal"",""publicField"":""public""}"; Assert.AreEqual(dtExpected, dtJson); #endif string expected = "{\"publicField\":\"public\",\"internalField\":\"internal\",\"protectedInternalField\":\"protected internal\",\"protectedField\":\"protected\",\"privateField\":\"private\"}"; string json = JsonConvert.SerializeObject(serializableType, new JsonSerializerSettings { ContractResolver = new DefaultContractResolver { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) IgnoreSerializableAttribute = false #endif } }); Assert.AreEqual(expected, json); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void SerializeInheritedType() { InheritedType serializableType = new InheritedType("protected") { publicField = "public", protectedInternalField = "protected internal", internalField = "internal", PublicProperty = "private", nonSerializedField = "Error", inheritedTypeField = "inherited" }; string json = JsonConvert.SerializeObject(serializableType); Assert.AreEqual(@"{""inheritedTypeField"":""inherited"",""publicField"":""public"",""PublicProperty"":""private""}", json); } #endif } public class InheritedType : SerializableType { public string inheritedTypeField; public InheritedType(string protectedFieldValue) : base(protectedFieldValue) { } } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Serializable] #else [JsonObject(MemberSerialization.Fields)] #endif public class SerializableType : IEquatable { public SerializableType(string protectedFieldValue) { protectedField = protectedFieldValue; } public string publicField; internal string internalField; protected internal string protectedInternalField; protected string protectedField; private string privateField; public string PublicProperty { get { return privateField; } set { privateField = value; } } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [NonSerialized] #else [JsonIgnore] #endif public string nonSerializedField; public bool Equals(SerializableType other) { return publicField == other.publicField && internalField == other.internalField && protectedInternalField == other.protectedInternalField && protectedField == other.protectedField && privateField == other.privateField; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/ReflectionAttributeProviderTests.cs0000664000175000017500000001012712454416117034220 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.ComponentModel; using System.Reflection; using System.Runtime.Serialization; using System.Text; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class ReflectionAttributeProviderTests : TestFixtureBase { public class ReflectionTestObject { [DefaultValue("1")] [JsonProperty] public int TestProperty { get; set; } [DefaultValue("1")] [JsonProperty] public int TestField; public ReflectionTestObject( [DefaultValue("1")] [JsonProperty] int testParameter) { TestProperty = testParameter; TestField = testParameter; } } [Test] public void GetAttributes_Property() { PropertyInfo property = typeof(ReflectionTestObject).GetProperty("TestProperty"); ReflectionAttributeProvider provider = new ReflectionAttributeProvider(property); IList attributes = provider.GetAttributes(typeof(DefaultValueAttribute), false); Assert.AreEqual(1, attributes.Count); attributes = provider.GetAttributes(false); Assert.AreEqual(2, attributes.Count); } [Test] public void GetAttributes_Field() { FieldInfo field = (FieldInfo)typeof(ReflectionTestObject).GetField("TestField"); ReflectionAttributeProvider provider = new ReflectionAttributeProvider(field); IList attributes = provider.GetAttributes(typeof(DefaultValueAttribute), false); Assert.AreEqual(1, attributes.Count); attributes = provider.GetAttributes(false); Assert.AreEqual(2, attributes.Count); } [Test] public void GetAttributes_Parameter() { ParameterInfo[] parameters = typeof(ReflectionTestObject).GetConstructor(new[] { typeof(int) }).GetParameters(); ParameterInfo parameter = parameters[0]; ReflectionAttributeProvider provider = new ReflectionAttributeProvider(parameter); IList attributes = provider.GetAttributes(typeof(DefaultValueAttribute), false); Assert.AreEqual(1, attributes.Count); attributes = provider.GetAttributes(false); Assert.AreEqual(2, attributes.Count); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/PopulateTests.cs0000664000175000017500000001177112454416117030326 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class PopulateTests : TestFixtureBase { [Test] public void PopulatePerson() { Person p = new Person(); JsonConvert.PopulateObject(@"{""Name"":""James""}", p); Assert.AreEqual("James", p.Name); } [Test] public void PopulateArray() { IList people = new List { new Person { Name = "Initial" } }; JsonConvert.PopulateObject(@"[{""Name"":""James""}, null]", people); Assert.AreEqual(3, people.Count); Assert.AreEqual("Initial", people[0].Name); Assert.AreEqual("James", people[1].Name); Assert.AreEqual(null, people[2]); } [Test] public void PopulateStore() { Store s = new Store(); s.Color = StoreColor.Red; s.product = new List { new Product { ExpiryDate = new DateTime(2000, 12, 3, 0, 0, 0, DateTimeKind.Utc), Name = "ProductName!", Price = 9.9m } }; s.Width = 99.99d; s.Mottos = new List { "Can do!", "We deliver!" }; string json = @"{ ""Color"": 2, ""Establised"": ""\/Date(1264122061000+0000)\/"", ""Width"": 99.99, ""Employees"": 999, ""RoomsPerFloor"": [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ], ""Open"": false, ""Symbol"": ""@"", ""Mottos"": [ ""Fail whale"" ], ""Cost"": 100980.1, ""Escape"": ""\r\n\t\f\b?{\\r\\n\""'"", ""product"": [ { ""Name"": ""ProductName!"", ""ExpiryDate"": ""\/Date(975801600000)\/"", ""Price"": 9.9, ""Sizes"": null } ] }"; JsonConvert.PopulateObject(json, s, new JsonSerializerSettings { ObjectCreationHandling = ObjectCreationHandling.Replace }); Assert.AreEqual(1, s.Mottos.Count); Assert.AreEqual("Fail whale", s.Mottos[0]); Assert.AreEqual(1, s.product.Count); //Assert.AreEqual("James", p.Name); } [Test] public void PopulateListOfPeople() { List p = new List(); JsonSerializer serializer = new JsonSerializer(); serializer.Populate(new StringReader(@"[{""Name"":""James""},{""Name"":""Jim""}]"), p); Assert.AreEqual(2, p.Count); Assert.AreEqual("James", p[0].Name); Assert.AreEqual("Jim", p[1].Name); } [Test] public void PopulateDictionary() { Dictionary p = new Dictionary(); JsonSerializer serializer = new JsonSerializer(); serializer.Populate(new StringReader(@"{""Name"":""James""}"), p); Assert.AreEqual(1, p.Count); Assert.AreEqual("James", p["Name"]); } [Test] public void PopulateWithBadJson() { ExceptionAssert.Throws(() => { JsonConvert.PopulateObject("1", new Person()); }, "Unexpected initial token 'Integer' when populating object. Expected JSON object or array. Path '', line 1, position 1."); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/MetadataPropertyHandlingTests.cs0000664000175000017500000004602712454416117033471 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Runtime.Serialization.Formatters; using System.Text; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class MetadataPropertyHandlingTests : TestFixtureBase { public class User { public string Name { get; set; } } [Test] public void Demo() { string json = @"{ 'Name': 'James', 'Password': 'Password1', '$type': 'Newtonsoft.Json.Tests.Serialization.MetadataPropertyHandlingTests+User, Newtonsoft.Json.Tests' }"; object o = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, // no longer needs to be first MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }); User u = (User)o; Console.WriteLine(u.Name); // James } [Test] public void DeserializeArraysWithPreserveObjectReferences() { string json = @"{ ""$id"": ""1"", ""$values"": [ null, { ""$id"": ""2"", ""$values"": [ null ] }, { ""$id"": ""3"", ""$values"": [ { ""$id"": ""4"", ""$values"": [ { ""$ref"": ""1"" } ] } ] } ] }"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All, MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }); }, @"Cannot preserve reference to array or readonly list, or list created from a non-default constructor: System.String[][]. Path '$values', line 3, position 15."); } #if !NETFX_CORE [Test] public void SerializeDeserialize_DictionaryContextContainsGuid_DeserializesItemAsGuid() { const string contextKey = "k1"; var someValue = Guid.NewGuid(); Dictionary inputContext = new Dictionary(); inputContext.Add(contextKey, someValue); JsonSerializerSettings jsonSerializerSettings = new JsonSerializerSettings() { Formatting = Formatting.Indented, TypeNameHandling = TypeNameHandling.All, MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }; string serializedString = JsonConvert.SerializeObject(inputContext, jsonSerializerSettings); Console.WriteLine(serializedString); var deserializedObject = (Dictionary)JsonConvert.DeserializeObject(serializedString, jsonSerializerSettings); Assert.AreEqual(someValue, deserializedObject[contextKey]); } #endif [Test] public void DeserializeGuid() { Item expected = new Item() { SourceTypeID = new Guid("d8220a4b-75b1-4b7a-8112-b7bdae956a45"), BrokerID = new Guid("951663c4-924e-4c86-a57a-7ed737501dbd"), Latitude = 33.657145, Longitude = -117.766684, TimeStamp = new DateTime(2000, 3, 1, 23, 59, 59, DateTimeKind.Utc), Payload = new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 } }; string jsonString = JsonConvert.SerializeObject(expected, Formatting.Indented); StringAssert.AreEqual(@"{ ""SourceTypeID"": ""d8220a4b-75b1-4b7a-8112-b7bdae956a45"", ""BrokerID"": ""951663c4-924e-4c86-a57a-7ed737501dbd"", ""Latitude"": 33.657145, ""Longitude"": -117.766684, ""TimeStamp"": ""2000-03-01T23:59:59Z"", ""Payload"": { ""$type"": ""System.Byte[], mscorlib"", ""$value"": ""AAECAwQFBgcICQ=="" } }", jsonString); Item actual = JsonConvert.DeserializeObject(jsonString, new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }); Assert.AreEqual(new Guid("d8220a4b-75b1-4b7a-8112-b7bdae956a45"), actual.SourceTypeID); Assert.AreEqual(new Guid("951663c4-924e-4c86-a57a-7ed737501dbd"), actual.BrokerID); byte[] bytes = (byte[])actual.Payload; CollectionAssert.AreEquivalent(new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }, bytes); } [Test] public void DeserializeListsWithPreserveObjectReferences() { string json = @"{ ""$id"": ""1"", ""$values"": [ null, { ""$id"": ""2"", ""$values"": [ null ] }, { ""$id"": ""3"", ""$values"": [ { ""$id"": ""4"", ""$values"": [ { ""$ref"": ""1"" } ] } ] } ] }"; PreserveReferencesHandlingTests.CircularList circularList = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All, MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }); Assert.AreEqual(3, circularList.Count); Assert.AreEqual(null, circularList[0]); Assert.AreEqual(1, circularList[1].Count); Assert.AreEqual(1, circularList[2].Count); Assert.AreEqual(1, circularList[2][0].Count); Assert.IsTrue(ReferenceEquals(circularList, circularList[2][0][0])); } [Test] public void DeserializeTypeNameOnly() { string json = @"{ ""$id"": ""1"", ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Employee"", ""Name"": ""Name!"", ""Manager"": null }"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json, null, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }); }, "Type specified in JSON 'Newtonsoft.Json.Tests.TestObjects.Employee' was not resolved. Path '$type', line 3, position 56."); } [Test] public void SerializeRefNull() { var reference = new Dictionary(); reference.Add("blah", "blah!"); reference.Add("$ref", null); reference.Add("$id", null); var child = new Dictionary(); child.Add("_id", 2); child.Add("Name", "Isabell"); child.Add("Father", reference); string json = JsonConvert.SerializeObject(child, Formatting.Indented); Console.WriteLine(json); Dictionary result = JsonConvert.DeserializeObject>(json, new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }); Assert.AreEqual(3, result.Count); Assert.AreEqual(1, ((JObject)result["Father"]).Count); Assert.AreEqual("blah!", (string)((JObject)result["Father"])["blah"]); } [Test] public void DeserializeEmployeeReference() { string json = @"[ { ""Name"": ""Mike Manager"", ""$id"": ""1"", ""Manager"": null }, { ""Name"": ""Joe User"", ""$id"": ""2"", ""Manager"": { ""$ref"": ""1"" } } ]"; List employees = JsonConvert.DeserializeObject>(json, new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }); Assert.AreEqual(2, employees.Count); Assert.AreEqual("Mike Manager", employees[0].Name); Assert.AreEqual("Joe User", employees[1].Name); Assert.AreEqual(employees[0], employees[1].Manager); } [Test] public void DeserializeFromJToken() { string json = @"[ { ""Name"": ""Mike Manager"", ""$id"": ""1"", ""Manager"": null }, { ""Name"": ""Joe User"", ""$id"": ""2"", ""Manager"": { ""$ref"": ""1"" } } ]"; JToken t1 = JToken.Parse(json); JToken t2 = t1.CloneToken(); List employees = t1.ToObject>(JsonSerializer.Create(new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead })); Assert.AreEqual(2, employees.Count); Assert.AreEqual("Mike Manager", employees[0].Name); Assert.AreEqual("Joe User", employees[1].Name); Assert.AreEqual(employees[0], employees[1].Manager); Assert.IsTrue(JToken.DeepEquals(t1, t2)); } #if !(PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void DeserializeGenericObjectListWithTypeName() { string employeeRef = typeof(EmployeeReference).AssemblyQualifiedName; string personRef = typeof(Person).AssemblyQualifiedName; string json = @"[ { ""Name"": ""Bob"", ""$id"": ""1"", ""$type"": """ + employeeRef + @""", ""Manager"": { ""$id"": ""2"", ""$type"": """ + employeeRef + @""", ""Name"": ""Frank"", ""Manager"": null } }, { ""Name"": null, ""$type"": """ + personRef + @""", ""BirthDate"": ""\/Date(978134400000)\/"", ""LastModified"": ""\/Date(978134400000)\/"" }, ""String!"", -2147483648 ]"; List values = (List)JsonConvert.DeserializeObject(json, typeof(List), new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, TypeNameAssemblyFormat = FormatterAssemblyStyle.Full, MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }); Assert.AreEqual(4, values.Count); EmployeeReference e = (EmployeeReference)values[0]; Person p = (Person)values[1]; Assert.AreEqual("Bob", e.Name); Assert.AreEqual("Frank", e.Manager.Name); Assert.AreEqual(null, p.Name); Assert.AreEqual(new DateTime(2000, 12, 30, 0, 0, 0, DateTimeKind.Utc), p.BirthDate); Assert.AreEqual(new DateTime(2000, 12, 30, 0, 0, 0, DateTimeKind.Utc), p.LastModified); Assert.AreEqual("String!", values[2]); Assert.AreEqual((long)int.MinValue, values[3]); } [Test] public void WriteListTypeNameForProperty() { string listRef = ReflectionUtils.GetTypeName(typeof(List), FormatterAssemblyStyle.Simple, null); TypeNameHandlingTests.TypeNameProperty typeNameProperty = new TypeNameHandlingTests.TypeNameProperty { Name = "Name!", Value = new List { 1, 2, 3, 4, 5 } }; string json = JsonConvert.SerializeObject(typeNameProperty, Formatting.Indented); StringAssert.AreEqual(@"{ ""Name"": ""Name!"", ""Value"": { ""$type"": """ + listRef + @""", ""$values"": [ 1, 2, 3, 4, 5 ] } }", json); TypeNameHandlingTests.TypeNameProperty deserialized = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.ReadAhead }); Assert.AreEqual("Name!", deserialized.Name); CustomAssert.IsInstanceOfType(typeof(List), deserialized.Value); List nested = (List)deserialized.Value; Assert.AreEqual(5, nested.Count); Assert.AreEqual(1, nested[0]); Assert.AreEqual(2, nested[1]); Assert.AreEqual(3, nested[2]); Assert.AreEqual(4, nested[3]); Assert.AreEqual(5, nested[4]); } #endif public class MetadataPropertyDisabledTestClass { [JsonProperty("$id")] public string Id { get; set; } [JsonProperty("$ref")] public string Ref { get; set; } [JsonProperty("$value")] public string Value { get; set; } [JsonProperty("$values")] public string Values { get; set; } [JsonProperty("$type")] public string Type { get; set; } } [Test] public void MetadataPropertyHandlingIgnore() { MetadataPropertyDisabledTestClass c1 = new MetadataPropertyDisabledTestClass { Id = "Id!", Ref = "Ref!", Type = "Type!", Value = "Value!", Values = "Values!" }; string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""$id"": ""Id!"", ""$ref"": ""Ref!"", ""$value"": ""Value!"", ""$values"": ""Values!"", ""$type"": ""Type!"" }", json); MetadataPropertyDisabledTestClass c2 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.Ignore }); Assert.AreEqual("Id!", c2.Id); Assert.AreEqual("Ref!", c2.Ref); Assert.AreEqual("Type!", c2.Type); Assert.AreEqual("Value!", c2.Value); Assert.AreEqual("Values!", c2.Values); } [Test] public void MetadataPropertyHandlingIgnore_EmptyObject() { string json = @"{}"; MetadataPropertyDisabledTestClass c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.Ignore }); Assert.AreEqual(null, c.Id); } [Test] public void PrimitiveType_MetadataPropertyIgnore() { Item actual = JsonConvert.DeserializeObject(@"{ ""SourceTypeID"": ""d8220a4b-75b1-4b7a-8112-b7bdae956a45"", ""BrokerID"": ""951663c4-924e-4c86-a57a-7ed737501dbd"", ""Latitude"": 33.657145, ""Longitude"": -117.766684, ""TimeStamp"": ""2000-03-01T23:59:59Z"", ""Payload"": { ""$type"": ""System.Byte[], mscorlib"", ""$value"": ""AAECAwQFBgcICQ=="" } }", new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.Ignore }); Assert.AreEqual(new Guid("d8220a4b-75b1-4b7a-8112-b7bdae956a45"), actual.SourceTypeID); Assert.AreEqual(new Guid("951663c4-924e-4c86-a57a-7ed737501dbd"), actual.BrokerID); JObject o = (JObject)actual.Payload; Assert.AreEqual("System.Byte[], mscorlib", (string)o["$type"]); Assert.AreEqual("AAECAwQFBgcICQ==", (string)o["$value"]); } public class ItemWithTypedPayload { public double Payload { get; set; } } [Test] public void PrimitiveType_MetadataPropertyIgnore_WithType() { ItemWithTypedPayload actual = JsonConvert.DeserializeObject(@"{ ""Payload"": { ""$type"": ""System.Double, mscorlib"", ""$value"": ""5"" } }", new JsonSerializerSettings()); Assert.AreEqual(5d, actual.Payload); ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(@"{ ""Payload"": { ""$type"": ""System.Double, mscorlib"", ""$value"": ""5"" } }", new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.Ignore }); }, @"Cannot deserialize the current JSON object (e.g. {""name"":""value""}) into type 'System.Double' because the type requires a JSON primitive value (e.g. string, number, boolean, null) to deserialize correctly. To fix this error either change the JSON to a JSON primitive value (e.g. string, number, boolean, null) or change the deserialized type so that it is a normal .NET type (e.g. not a primitive type like integer, not a collection type like an array or List) that can be deserialized from a JSON object. JsonObjectAttribute can also be added to the type to force it to deserialize from a JSON object. Path 'Payload.$type', line 3, position 13."); } [Test] public void DeserializeCircularReferencesWithConverter() { string json = @"{ ""$id"": ""1"", ""$type"": ""CircularReferenceClass"" }"; MetadataPropertyDisabledTestClass c = new MetadataPropertyDisabledTestClass(); JsonConvert.PopulateObject(json, c, new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.Ignore }); Assert.AreEqual("1", c.Id); Assert.AreEqual("CircularReferenceClass", c.Type); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/PreserveReferencesHandlingTests.cs0000664000175000017500000007735712454416117034013 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; using System.Runtime.Serialization.Formatters; using System.Text; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class PreserveReferencesHandlingTests : TestFixtureBase { [Test] public void SerializeDictionarysWithPreserveObjectReferences() { CircularDictionary circularDictionary = new CircularDictionary(); circularDictionary.Add("other", new CircularDictionary { { "blah", null } }); circularDictionary.Add("self", circularDictionary); string json = JsonConvert.SerializeObject(circularDictionary, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All }); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""other"": { ""$id"": ""2"", ""blah"": null }, ""self"": { ""$ref"": ""1"" } }", json); } [Test] public void DeserializeDictionarysWithPreserveObjectReferences() { string json = @"{ ""$id"": ""1"", ""other"": { ""$id"": ""2"", ""blah"": null }, ""self"": { ""$ref"": ""1"" } }"; CircularDictionary circularDictionary = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All }); Assert.AreEqual(2, circularDictionary.Count); Assert.AreEqual(1, circularDictionary["other"].Count); Assert.IsTrue(ReferenceEquals(circularDictionary, circularDictionary["self"])); } public class CircularList : List { } [Test] public void SerializeCircularListsError() { string classRef = typeof(CircularList).FullName; CircularList circularList = new CircularList(); circularList.Add(null); circularList.Add(new CircularList { null }); circularList.Add(new CircularList { new CircularList { circularList } }); ExceptionAssert.Throws(() => { JsonConvert.SerializeObject(circularList, Formatting.Indented); }, "Self referencing loop detected with type '" + classRef + "'. Path '[2][0]'."); } [Test] public void SerializeCircularListsIgnore() { CircularList circularList = new CircularList(); circularList.Add(null); circularList.Add(new CircularList { null }); circularList.Add(new CircularList { new CircularList { circularList } }); string json = JsonConvert.SerializeObject(circularList, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); StringAssert.AreEqual(@"[ null, [ null ], [ [] ] ]", json); } [Test] public void SerializeListsWithPreserveObjectReferences() { CircularList circularList = new CircularList(); circularList.Add(null); circularList.Add(new CircularList { null }); circularList.Add(new CircularList { new CircularList { circularList } }); string json = JsonConvert.SerializeObject(circularList, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All }); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""$values"": [ null, { ""$id"": ""2"", ""$values"": [ null ] }, { ""$id"": ""3"", ""$values"": [ { ""$id"": ""4"", ""$values"": [ { ""$ref"": ""1"" } ] } ] } ] }", json); } [Test] public void DeserializeListsWithPreserveObjectReferences() { string json = @"{ ""$id"": ""1"", ""$values"": [ null, { ""$id"": ""2"", ""$values"": [ null ] }, { ""$id"": ""3"", ""$values"": [ { ""$id"": ""4"", ""$values"": [ { ""$ref"": ""1"" } ] } ] } ] }"; CircularList circularList = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All }); Assert.AreEqual(3, circularList.Count); Assert.AreEqual(null, circularList[0]); Assert.AreEqual(1, circularList[1].Count); Assert.AreEqual(1, circularList[2].Count); Assert.AreEqual(1, circularList[2][0].Count); Assert.IsTrue(ReferenceEquals(circularList, circularList[2][0][0])); } [Test] public void DeserializeArraysWithPreserveObjectReferences() { string json = @"{ ""$id"": ""1"", ""$values"": [ null, { ""$id"": ""2"", ""$values"": [ null ] }, { ""$id"": ""3"", ""$values"": [ { ""$id"": ""4"", ""$values"": [ { ""$ref"": ""1"" } ] } ] } ] }"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All }); }, @"Cannot preserve reference to array or readonly list, or list created from a non-default constructor: System.String[][]. Path '$values', line 3, position 15."); } public class CircularDictionary : Dictionary { } [Test] public void SerializeCircularDictionarysError() { string classRef = typeof(CircularDictionary).FullName; CircularDictionary circularDictionary = new CircularDictionary(); circularDictionary.Add("other", new CircularDictionary { { "blah", null } }); circularDictionary.Add("self", circularDictionary); ExceptionAssert.Throws(() => { JsonConvert.SerializeObject(circularDictionary, Formatting.Indented); }, @"Self referencing loop detected with type '" + classRef + "'. Path ''."); } [Test] public void SerializeCircularDictionarysIgnore() { CircularDictionary circularDictionary = new CircularDictionary(); circularDictionary.Add("other", new CircularDictionary { { "blah", null } }); circularDictionary.Add("self", circularDictionary); string json = JsonConvert.SerializeObject(circularDictionary, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); StringAssert.AreEqual(@"{ ""other"": { ""blah"": null } }", json); } [Test] public void UnexpectedEnd() { string json = @"{ ""$id"":"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All, MetadataPropertyHandling = MetadataPropertyHandling.Default }); }, @"Unexpected end when deserializing object. Path '$id', line 2, position 9."); } public class CircularReferenceClassConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { CircularReferenceClass circularReferenceClass = (CircularReferenceClass)value; string reference = serializer.ReferenceResolver.GetReference(serializer, circularReferenceClass); JObject me = new JObject(); me["$id"] = new JValue(reference); me["$type"] = new JValue(value.GetType().Name); me["Name"] = new JValue(circularReferenceClass.Name); JObject o = JObject.FromObject(circularReferenceClass.Child, serializer); me["Child"] = o; me.WriteTo(writer); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { JObject o = JObject.Load(reader); string id = (string)o["$id"]; if (id != null) { CircularReferenceClass circularReferenceClass = new CircularReferenceClass(); serializer.Populate(o.CreateReader(), circularReferenceClass); return circularReferenceClass; } else { string reference = (string)o["$ref"]; return serializer.ReferenceResolver.ResolveReference(serializer, reference); } } public override bool CanConvert(Type objectType) { return (objectType == typeof(CircularReferenceClass)); } } [Test] public void SerializeCircularReferencesWithConverter() { CircularReferenceClass c1 = new CircularReferenceClass { Name = "c1" }; CircularReferenceClass c2 = new CircularReferenceClass { Name = "c2" }; CircularReferenceClass c3 = new CircularReferenceClass { Name = "c3" }; c1.Child = c2; c2.Child = c3; c3.Child = c1; string json = JsonConvert.SerializeObject(c1, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects, Converters = new List { new CircularReferenceClassConverter() } }); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""$type"": ""CircularReferenceClass"", ""Name"": ""c1"", ""Child"": { ""$id"": ""2"", ""$type"": ""CircularReferenceClass"", ""Name"": ""c2"", ""Child"": { ""$id"": ""3"", ""$type"": ""CircularReferenceClass"", ""Name"": ""c3"", ""Child"": { ""$ref"": ""1"" } } } }", json); } [Test] public void DeserializeCircularReferencesWithConverter() { string json = @"{ ""$id"": ""1"", ""$type"": ""CircularReferenceClass"", ""Name"": ""c1"", ""Child"": { ""$id"": ""2"", ""$type"": ""CircularReferenceClass"", ""Name"": ""c2"", ""Child"": { ""$id"": ""3"", ""$type"": ""CircularReferenceClass"", ""Name"": ""c3"", ""Child"": { ""$ref"": ""1"" } } } }"; CircularReferenceClass c1 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects, Converters = new List { new CircularReferenceClassConverter() } }); Assert.AreEqual("c1", c1.Name); Assert.AreEqual("c2", c1.Child.Name); Assert.AreEqual("c3", c1.Child.Child.Name); Assert.AreEqual("c1", c1.Child.Child.Child.Name); } [Test] public void SerializeEmployeeReference() { EmployeeReference mikeManager = new EmployeeReference { Name = "Mike Manager" }; EmployeeReference joeUser = new EmployeeReference { Name = "Joe User", Manager = mikeManager }; List employees = new List { mikeManager, joeUser }; string json = JsonConvert.SerializeObject(employees, Formatting.Indented); StringAssert.AreEqual(@"[ { ""$id"": ""1"", ""Name"": ""Mike Manager"", ""Manager"": null }, { ""$id"": ""2"", ""Name"": ""Joe User"", ""Manager"": { ""$ref"": ""1"" } } ]", json); } [Test] public void DeserializeEmployeeReference() { string json = @"[ { ""$id"": ""1"", ""Name"": ""Mike Manager"", ""Manager"": null }, { ""$id"": ""2"", ""Name"": ""Joe User"", ""Manager"": { ""$ref"": ""1"" } } ]"; List employees = JsonConvert.DeserializeObject>(json); Assert.AreEqual(2, employees.Count); Assert.AreEqual("Mike Manager", employees[0].Name); Assert.AreEqual("Joe User", employees[1].Name); Assert.AreEqual(employees[0], employees[1].Manager); } [Test] public void SerializeCircularReference() { CircularReferenceClass c1 = new CircularReferenceClass { Name = "c1" }; CircularReferenceClass c2 = new CircularReferenceClass { Name = "c2" }; CircularReferenceClass c3 = new CircularReferenceClass { Name = "c3" }; c1.Child = c2; c2.Child = c3; c3.Child = c1; string json = JsonConvert.SerializeObject(c1, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""Name"": ""c1"", ""Child"": { ""$id"": ""2"", ""Name"": ""c2"", ""Child"": { ""$id"": ""3"", ""Name"": ""c3"", ""Child"": { ""$ref"": ""1"" } } } }", json); } [Test] public void DeserializeCircularReference() { string json = @"{ ""$id"": ""1"", ""Name"": ""c1"", ""Child"": { ""$id"": ""2"", ""Name"": ""c2"", ""Child"": { ""$id"": ""3"", ""Name"": ""c3"", ""Child"": { ""$ref"": ""1"" } } } }"; CircularReferenceClass c1 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); Assert.AreEqual("c1", c1.Name); Assert.AreEqual("c2", c1.Child.Name); Assert.AreEqual("c3", c1.Child.Child.Name); Assert.AreEqual("c1", c1.Child.Child.Child.Name); } [Test] public void SerializeReferenceInList() { EmployeeReference e1 = new EmployeeReference { Name = "e1" }; EmployeeReference e2 = new EmployeeReference { Name = "e2" }; List employees = new List { e1, e2, e1, e2 }; string json = JsonConvert.SerializeObject(employees, Formatting.Indented); StringAssert.AreEqual(@"[ { ""$id"": ""1"", ""Name"": ""e1"", ""Manager"": null }, { ""$id"": ""2"", ""Name"": ""e2"", ""Manager"": null }, { ""$ref"": ""1"" }, { ""$ref"": ""2"" } ]", json); } [Test] public void DeserializeReferenceInList() { string json = @"[ { ""$id"": ""1"", ""Name"": ""e1"", ""Manager"": null }, { ""$id"": ""2"", ""Name"": ""e2"", ""Manager"": null }, { ""$ref"": ""1"" }, { ""$ref"": ""2"" } ]"; List employees = JsonConvert.DeserializeObject>(json); Assert.AreEqual(4, employees.Count); Assert.AreEqual("e1", employees[0].Name); Assert.AreEqual("e2", employees[1].Name); Assert.AreEqual("e1", employees[2].Name); Assert.AreEqual("e2", employees[3].Name); Assert.AreEqual(employees[0], employees[2]); Assert.AreEqual(employees[1], employees[3]); } [Test] public void SerializeReferenceInDictionary() { EmployeeReference e1 = new EmployeeReference { Name = "e1" }; EmployeeReference e2 = new EmployeeReference { Name = "e2" }; Dictionary employees = new Dictionary { { "One", e1 }, { "Two", e2 }, { "Three", e1 }, { "Four", e2 } }; string json = JsonConvert.SerializeObject(employees, Formatting.Indented); StringAssert.AreEqual(@"{ ""One"": { ""$id"": ""1"", ""Name"": ""e1"", ""Manager"": null }, ""Two"": { ""$id"": ""2"", ""Name"": ""e2"", ""Manager"": null }, ""Three"": { ""$ref"": ""1"" }, ""Four"": { ""$ref"": ""2"" } }", json); } [Test] public void DeserializeReferenceInDictionary() { string json = @"{ ""One"": { ""$id"": ""1"", ""Name"": ""e1"", ""Manager"": null }, ""Two"": { ""$id"": ""2"", ""Name"": ""e2"", ""Manager"": null }, ""Three"": { ""$ref"": ""1"" }, ""Four"": { ""$ref"": ""2"" } }"; Dictionary employees = JsonConvert.DeserializeObject>(json); Assert.AreEqual(4, employees.Count); EmployeeReference e1 = employees["One"]; EmployeeReference e2 = employees["Two"]; Assert.AreEqual("e1", e1.Name); Assert.AreEqual("e2", e2.Name); Assert.AreEqual(e1, employees["Three"]); Assert.AreEqual(e2, employees["Four"]); } [Test] public void ExampleWithout() { Person p = new Person { BirthDate = new DateTime(1980, 12, 23, 0, 0, 0, DateTimeKind.Utc), LastModified = new DateTime(2009, 2, 20, 12, 59, 21, DateTimeKind.Utc), Department = "IT", Name = "James" }; List people = new List(); people.Add(p); people.Add(p); string json = JsonConvert.SerializeObject(people, Formatting.Indented); //[ // { // "Name": "James", // "BirthDate": "\/Date(346377600000)\/", // "LastModified": "\/Date(1235134761000)\/" // }, // { // "Name": "James", // "BirthDate": "\/Date(346377600000)\/", // "LastModified": "\/Date(1235134761000)\/" // } //] } [Test] public void ExampleWith() { Person p = new Person { BirthDate = new DateTime(1980, 12, 23, 0, 0, 0, DateTimeKind.Utc), LastModified = new DateTime(2009, 2, 20, 12, 59, 21, DateTimeKind.Utc), Department = "IT", Name = "James" }; List people = new List(); people.Add(p); people.Add(p); string json = JsonConvert.SerializeObject(people, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); //[ // { // "$id": "1", // "Name": "James", // "BirthDate": "\/Date(346377600000)\/", // "LastModified": "\/Date(1235134761000)\/" // }, // { // "$ref": "1" // } //] List deserializedPeople = JsonConvert.DeserializeObject>(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); Console.WriteLine(deserializedPeople.Count); // 2 Person p1 = deserializedPeople[0]; Person p2 = deserializedPeople[1]; Console.WriteLine(p1.Name); // James Console.WriteLine(p2.Name); // James bool equal = Object.ReferenceEquals(p1, p2); // true } [JsonObject(MemberSerialization = MemberSerialization.OptIn)] public class User { #region properties [JsonProperty(Required = Required.Always, PropertyName = "SecretType")] private string secretType; [JsonProperty(Required = Required.Always)] public string Login { get; set; } public Type SecretType { get { return Type.GetType(secretType); } set { secretType = value.AssemblyQualifiedName; } } [JsonProperty] public User Friend { get; set; } #endregion #region constructors public User() { } public User(string login, Type secretType) : this() { Login = login; SecretType = secretType; } #endregion #region methods public override int GetHashCode() { return SecretType.GetHashCode(); } public override string ToString() { return string.Format("SecretType: {0}, Login: {1}", secretType, Login); } #endregion } [Test] public void DeserializeTypeWithDubiousGetHashcode() { User user1 = new User("Peter", typeof(Version)); User user2 = new User("Michael", typeof(Version)); user1.Friend = user2; JsonSerializerSettings serializerSettings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, ReferenceLoopHandling = ReferenceLoopHandling.Ignore, ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor, PreserveReferencesHandling = PreserveReferencesHandling.Objects }; string json = JsonConvert.SerializeObject(user1, Formatting.Indented, serializerSettings); User deserializedUser = JsonConvert.DeserializeObject(json, serializerSettings); Assert.IsNotNull(deserializedUser); } [Test] public void PreserveReferencesHandlingWithReusedJsonSerializer() { MyClass c = new MyClass(); IList myClasses1 = new List { c, c }; var ser = new JsonSerializer() { PreserveReferencesHandling = PreserveReferencesHandling.All }; MemoryStream ms = new MemoryStream(); using (var sw = new StreamWriter(ms)) using (var writer = new JsonTextWriter(sw) { Formatting = Formatting.Indented }) { ser.Serialize(writer, myClasses1); } byte[] data = ms.ToArray(); string json = Encoding.UTF8.GetString(data, 0, data.Length); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""$values"": [ { ""$id"": ""2"", ""PreProperty"": 0, ""PostProperty"": 0 }, { ""$ref"": ""2"" } ] }", json); ms = new MemoryStream(data); IList myClasses2; using (var sr = new StreamReader(ms)) using (var reader = new JsonTextReader(sr)) { myClasses2 = ser.Deserialize>(reader); } Assert.AreEqual(2, myClasses2.Count); Assert.AreEqual(myClasses2[0], myClasses2[1]); Assert.AreNotEqual(myClasses1[0], myClasses2[0]); } [Test] public void ReferencedIntList() { ReferencedList l = new ReferencedList(); l.Add(1); l.Add(2); l.Add(3); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ 1, 2, 3 ]", json); } [Test] public void ReferencedComponentList() { var c1 = new TestComponentSimple(); ReferencedList l = new ReferencedList(); l.Add(c1); l.Add(new TestComponentSimple()); l.Add(c1); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ { ""$id"": ""1"", ""MyProperty"": 0 }, { ""$id"": ""2"", ""MyProperty"": 0 }, { ""$ref"": ""1"" } ]", json); } [Test] public void ReferencedIntDictionary() { ReferencedDictionary l = new ReferencedDictionary(); l.Add("First", 1); l.Add("Second", 2); l.Add("Third", 3); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"{ ""First"": 1, ""Second"": 2, ""Third"": 3 }", json); } [Test] public void ReferencedComponentDictionary() { var c1 = new TestComponentSimple(); ReferencedDictionary l = new ReferencedDictionary(); l.Add("First", c1); l.Add("Second", new TestComponentSimple()); l.Add("Third", c1); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"{ ""First"": { ""$id"": ""1"", ""MyProperty"": 0 }, ""Second"": { ""$id"": ""2"", ""MyProperty"": 0 }, ""Third"": { ""$ref"": ""1"" } }", json); ReferencedDictionary d = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, d.Count); Assert.IsTrue(ReferenceEquals(d["First"], d["Third"])); } [Test] public void ReferencedObjectItems() { ReferenceObject o1 = new ReferenceObject(); o1.Component1 = new TestComponentSimple { MyProperty = 1 }; o1.Component2 = o1.Component1; o1.ComponentNotReference = new TestComponentSimple(); o1.String = "String!"; o1.Integer = int.MaxValue; string json = JsonConvert.SerializeObject(o1, Formatting.Indented); string expected = @"{ ""Component1"": { ""$id"": ""1"", ""MyProperty"": 1 }, ""Component2"": { ""$ref"": ""1"" }, ""ComponentNotReference"": { ""MyProperty"": 0 }, ""String"": ""String!"", ""Integer"": 2147483647 }"; StringAssert.AreEqual(expected, json); ReferenceObject referenceObject = JsonConvert.DeserializeObject(json); Assert.IsNotNull(referenceObject); Assert.IsTrue(ReferenceEquals(referenceObject.Component1, referenceObject.Component2)); } [Test] public void PropertyItemIsReferenceObject() { TestComponentSimple c1 = new TestComponentSimple(); PropertyItemIsReferenceObject o1 = new PropertyItemIsReferenceObject { Data = new PropertyItemIsReferenceBody { Prop1 = c1, Prop2 = c1, Data = new List { c1 } } }; string json = JsonConvert.SerializeObject(o1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Data"": { ""Prop1"": { ""$id"": ""1"", ""MyProperty"": 0 }, ""Prop2"": { ""$ref"": ""1"" }, ""Data"": { ""$id"": ""2"", ""$values"": [ { ""MyProperty"": 0 } ] } } }", json); PropertyItemIsReferenceObject o2 = JsonConvert.DeserializeObject(json); TestComponentSimple c2 = o2.Data.Prop1; TestComponentSimple c3 = o2.Data.Prop2; TestComponentSimple c4 = o2.Data.Data[0]; Assert.IsTrue(ReferenceEquals(c2, c3)); Assert.IsFalse(ReferenceEquals(c2, c4)); } [Test] public void DuplicateId() { string json = @"{ ""Data"": { ""Prop1"": { ""$id"": ""1"", ""MyProperty"": 0 }, ""Prop2"": { ""$id"": ""1"", ""MyProperty"": 0 } } }"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json, new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.Default }), "Error reading object reference '1'. Path 'Data.Prop2.MyProperty', line 9, position 20."); } } public class PropertyItemIsReferenceBody { public TestComponentSimple Prop1 { get; set; } public TestComponentSimple Prop2 { get; set; } public IList Data { get; set; } } public class PropertyItemIsReferenceObject { [JsonProperty(ItemIsReference = true)] public PropertyItemIsReferenceBody Data { get; set; } } public class PropertyItemIsReferenceList { [JsonProperty(ItemIsReference = true)] public IList> Data { get; set; } } [JsonArray(ItemIsReference = true)] public class ReferencedList : List { } [JsonDictionary(ItemIsReference = true)] public class ReferencedDictionary : Dictionary { } [JsonObject(ItemIsReference = true)] public class ReferenceObject { public TestComponentSimple Component1 { get; set; } public TestComponentSimple Component2 { get; set; } [JsonProperty(IsReference = false)] public TestComponentSimple ComponentNotReference { get; set; } public string String { get; set; } public int Integer { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerCollectionsTests.cs0000664000175000017500000014755412454416117033710 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Specialized; #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50 || PORTABLE40) using System.Collections.Concurrent; #endif using System.Collections.Generic; using System.Collections.ObjectModel; using System.Globalization; using System.IO; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Text; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class JsonSerializerCollectionsTests : TestFixtureBase { #if !NETFX_CORE public class NameValueCollectionTestClass { public NameValueCollection Collection { get; set; } } [Test] public void DeserializeNameValueCollection() { ExceptionAssert.Throws( () => JsonConvert.DeserializeObject("{Collection:[]}"), "Cannot create and populate list type System.Collections.Specialized.NameValueCollection. Path 'Collection', line 1, position 13."); } #endif [Test] public void MultiDObjectArray() { object[,] myOtherArray = { { new KeyValuePair("my value", 0.8), "foobar" }, { true, 0.4d }, { 0.05f, 6 } }; string myOtherArrayAsString = JsonConvert.SerializeObject(myOtherArray, Formatting.Indented); StringAssert.AreEqual(@"[ [ { ""Key"": ""my value"", ""Value"": 0.8 }, ""foobar"" ], [ true, 0.4 ], [ 0.05, 6 ] ]", myOtherArrayAsString); JObject o = JObject.Parse(@"{ ""Key"": ""my value"", ""Value"": 0.8 }"); object[,] myOtherResult = JsonConvert.DeserializeObject(myOtherArrayAsString); Assert.IsTrue(JToken.DeepEquals(o, (JToken)myOtherResult[0, 0])); Assert.AreEqual("foobar", myOtherResult[0, 1]); Assert.AreEqual(true, myOtherResult[1, 0]); Assert.AreEqual(0.4, myOtherResult[1, 1]); Assert.AreEqual(0.05, myOtherResult[2, 0]); Assert.AreEqual(6L, myOtherResult[2, 1]); } public class EnumerableClass : IEnumerable { private readonly IList _values; public EnumerableClass(IEnumerable values) { _values = new List(values); } public IEnumerator GetEnumerator() { return _values.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } [Test] public void DeserializeIEnumerableFromConstructor() { string json = @"[ 1, 2, null ]"; var result = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, result.Count()); Assert.AreEqual(1, result.ElementAt(0)); Assert.AreEqual(2, result.ElementAt(1)); Assert.AreEqual(null, result.ElementAt(2)); } public class EnumerableClassFailure : IEnumerable { private readonly IList _values; public EnumerableClassFailure() { _values = new List(); } public IEnumerator GetEnumerator() { return _values.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } [Test] public void DeserializeIEnumerableFromConstructor_Failure() { string json = @"[ ""One"", ""II"", ""3"" ]"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject>(json), "Cannot create and populate list type Newtonsoft.Json.Tests.Serialization.JsonSerializerCollectionsTests+EnumerableClassFailure`1[System.String]. Path '', line 1, position 1."); } public class PrivateDefaultCtorList : List { private PrivateDefaultCtorList() { } } [Test] public void DeserializePrivateListCtor() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject>("[1,2]"), "Unable to find a constructor to use for type Newtonsoft.Json.Tests.Serialization.JsonSerializerCollectionsTests+PrivateDefaultCtorList`1[System.Int32]. Path '', line 1, position 1."); var list = JsonConvert.DeserializeObject>("[1,2]", new JsonSerializerSettings { ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor }); Assert.AreEqual(2, list.Count); } public class PrivateDefaultCtorWithIEnumerableCtorList : List { private PrivateDefaultCtorWithIEnumerableCtorList() { } public PrivateDefaultCtorWithIEnumerableCtorList(IEnumerable values) : base(values) { Add(default(T)); } } [Test] public void DeserializePrivateListConstructor() { var list = JsonConvert.DeserializeObject>("[1,2]"); Assert.AreEqual(3, list.Count); Assert.AreEqual(1, list[0]); Assert.AreEqual(2, list[1]); Assert.AreEqual(0, list[2]); } [Test] public void DeserializeNonIsoDateDictionaryKey() { Dictionary d = JsonConvert.DeserializeObject>(@"{""04/28/2013 00:00:00"":""test""}"); Assert.AreEqual(1, d.Count); DateTime key = DateTime.Parse("04/28/2013 00:00:00", CultureInfo.InvariantCulture); Assert.AreEqual("test", d[key]); } [Test] public void DeserializeNonGenericList() { IList l = JsonConvert.DeserializeObject("['string!']"); Assert.AreEqual(typeof(List), l.GetType()); Assert.AreEqual(1, l.Count); Assert.AreEqual("string!", l[0]); } #if !(NET40 || NET35 || NET20 || PORTABLE40) [Test] public void DeserializeReadOnlyListInterface() { IReadOnlyList list = JsonConvert.DeserializeObject>("[1,2,3]"); Assert.AreEqual(3, list.Count); Assert.AreEqual(1, list[0]); Assert.AreEqual(2, list[1]); Assert.AreEqual(3, list[2]); } [Test] public void DeserializeReadOnlyCollectionInterface() { IReadOnlyCollection list = JsonConvert.DeserializeObject>("[1,2,3]"); Assert.AreEqual(3, list.Count); Assert.AreEqual(1, list.ElementAt(0)); Assert.AreEqual(2, list.ElementAt(1)); Assert.AreEqual(3, list.ElementAt(2)); } [Test] public void DeserializeReadOnlyCollection() { ReadOnlyCollection list = JsonConvert.DeserializeObject>("[1,2,3]"); Assert.AreEqual(3, list.Count); Assert.AreEqual(1, list[0]); Assert.AreEqual(2, list[1]); Assert.AreEqual(3, list[2]); } [Test] public void DeserializeReadOnlyDictionaryInterface() { IReadOnlyDictionary dic = JsonConvert.DeserializeObject>("{'one':1,'two':2}"); Assert.AreEqual(2, dic.Count); Assert.AreEqual(1, dic["one"]); Assert.AreEqual(2, dic["two"]); CustomAssert.IsInstanceOfType(typeof(ReadOnlyDictionary), dic); } [Test] public void DeserializeReadOnlyDictionary() { ReadOnlyDictionary dic = JsonConvert.DeserializeObject>("{'one':1,'two':2}"); Assert.AreEqual(2, dic.Count); Assert.AreEqual(1, dic["one"]); Assert.AreEqual(2, dic["two"]); } public class CustomReadOnlyDictionary : IReadOnlyDictionary { private readonly IDictionary _dictionary; public CustomReadOnlyDictionary(IDictionary dictionary) { _dictionary = dictionary; } public bool ContainsKey(TKey key) { return _dictionary.ContainsKey(key); } public IEnumerable Keys { get { return _dictionary.Keys; } } public bool TryGetValue(TKey key, out TValue value) { return _dictionary.TryGetValue(key, out value); } public IEnumerable Values { get { return _dictionary.Values; } } public TValue this[TKey key] { get { return _dictionary[key]; } } public int Count { get { return _dictionary.Count; } } public IEnumerator> GetEnumerator() { return _dictionary.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return _dictionary.GetEnumerator(); } } [Test] public void SerializeCustomReadOnlyDictionary() { IDictionary d = new Dictionary { { "one", 1 }, { "two", 2 } }; CustomReadOnlyDictionary dic = new CustomReadOnlyDictionary(d); string json = JsonConvert.SerializeObject(dic, Formatting.Indented); StringAssert.AreEqual(@"{ ""one"": 1, ""two"": 2 }", json); } public class CustomReadOnlyCollection : IReadOnlyCollection { private readonly IList _values; public CustomReadOnlyCollection(IList values) { _values = values; } public int Count { get { return _values.Count; } } public IEnumerator GetEnumerator() { return _values.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return _values.GetEnumerator(); } } [Test] public void SerializeCustomReadOnlyCollection() { IList l = new List { 1, 2, 3 }; CustomReadOnlyCollection list = new CustomReadOnlyCollection(l); string json = JsonConvert.SerializeObject(list, Formatting.Indented); StringAssert.AreEqual(@"[ 1, 2, 3 ]", json); } #endif [Test] public void TestEscapeDictionaryStrings() { const string s = @"host\user"; string serialized = JsonConvert.SerializeObject(s); Assert.AreEqual(@"""host\\user""", serialized); Dictionary d1 = new Dictionary(); d1.Add(5, s); Assert.AreEqual(@"{""5"":""host\\user""}", JsonConvert.SerializeObject(d1)); Dictionary d2 = new Dictionary(); d2.Add(s, 5); Assert.AreEqual(@"{""host\\user"":5}", JsonConvert.SerializeObject(d2)); } public class GenericListTestClass { public List GenericList { get; set; } public GenericListTestClass() { GenericList = new List(); } } [Test] public void DeserializeExistingGenericList() { GenericListTestClass c = new GenericListTestClass(); c.GenericList.Add("1"); c.GenericList.Add("2"); string json = JsonConvert.SerializeObject(c, Formatting.Indented); GenericListTestClass newValue = JsonConvert.DeserializeObject(json); Assert.AreEqual(2, newValue.GenericList.Count); Assert.AreEqual(typeof(List), newValue.GenericList.GetType()); } [Test] public void DeserializeSimpleKeyValuePair() { List> list = new List>(); list.Add(new KeyValuePair("key1", "value1")); list.Add(new KeyValuePair("key2", "value2")); string json = JsonConvert.SerializeObject(list); Assert.AreEqual(@"[{""Key"":""key1"",""Value"":""value1""},{""Key"":""key2"",""Value"":""value2""}]", json); List> result = JsonConvert.DeserializeObject>>(json); Assert.AreEqual(2, result.Count); Assert.AreEqual("key1", result[0].Key); Assert.AreEqual("value1", result[0].Value); Assert.AreEqual("key2", result[1].Key); Assert.AreEqual("value2", result[1].Value); } [Test] public void DeserializeComplexKeyValuePair() { DateTime dateTime = new DateTime(2000, 12, 1, 23, 1, 1, DateTimeKind.Utc); List> list = new List>(); list.Add(new KeyValuePair("key1", new WagePerson { BirthDate = dateTime, Department = "Department1", LastModified = dateTime, HourlyWage = 1 })); list.Add(new KeyValuePair("key2", new WagePerson { BirthDate = dateTime, Department = "Department2", LastModified = dateTime, HourlyWage = 2 })); string json = JsonConvert.SerializeObject(list, Formatting.Indented); StringAssert.AreEqual(@"[ { ""Key"": ""key1"", ""Value"": { ""HourlyWage"": 1.0, ""Name"": null, ""BirthDate"": ""2000-12-01T23:01:01Z"", ""LastModified"": ""2000-12-01T23:01:01Z"" } }, { ""Key"": ""key2"", ""Value"": { ""HourlyWage"": 2.0, ""Name"": null, ""BirthDate"": ""2000-12-01T23:01:01Z"", ""LastModified"": ""2000-12-01T23:01:01Z"" } } ]", json); List> result = JsonConvert.DeserializeObject>>(json); Assert.AreEqual(2, result.Count); Assert.AreEqual("key1", result[0].Key); Assert.AreEqual(1, result[0].Value.HourlyWage); Assert.AreEqual("key2", result[1].Key); Assert.AreEqual(2, result[1].Value.HourlyWage); } [Test] public void StringListAppenderConverterTest() { Movie p = new Movie(); p.ReleaseCountries = new List { "Existing" }; JsonConvert.PopulateObject("{'ReleaseCountries':['Appended']}", p, new JsonSerializerSettings { Converters = new List { new StringListAppenderConverter() } }); Assert.AreEqual(2, p.ReleaseCountries.Count); Assert.AreEqual("Existing", p.ReleaseCountries[0]); Assert.AreEqual("Appended", p.ReleaseCountries[1]); } [Test] public void StringAppenderConverterTest() { Movie p = new Movie(); p.Name = "Existing,"; JsonConvert.PopulateObject("{'Name':'Appended'}", p, new JsonSerializerSettings { Converters = new List { new StringAppenderConverter() } }); Assert.AreEqual("Existing,Appended", p.Name); } [Test] public void DeserializeIDictionary() { IDictionary dictionary = JsonConvert.DeserializeObject("{'name':'value!'}"); Assert.AreEqual(1, dictionary.Count); Assert.AreEqual("value!", dictionary["name"]); } [Test] public void DeserializeIList() { IList list = JsonConvert.DeserializeObject("['1', 'two', 'III']"); Assert.AreEqual(3, list.Count); } [Test] public void NullableValueGenericDictionary() { IDictionary v1 = new Dictionary { { "First", 1 }, { "Second", null }, { "Third", 3 } }; string json = JsonConvert.SerializeObject(v1, Formatting.Indented); StringAssert.AreEqual(@"{ ""First"": 1, ""Second"": null, ""Third"": 3 }", json); IDictionary v2 = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, v2.Count); Assert.AreEqual(1, v2["First"]); Assert.AreEqual(null, v2["Second"]); Assert.AreEqual(3, v2["Third"]); } #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void DeserializeConcurrentDictionary() { IDictionary components = new Dictionary { { "Key!", new TestObjects.Component() } }; GameObject go = new GameObject { Components = new ConcurrentDictionary(components), Id = "Id!", Name = "Name!" }; string originalJson = JsonConvert.SerializeObject(go, Formatting.Indented); StringAssert.AreEqual(@"{ ""Components"": { ""Key!"": {} }, ""Id"": ""Id!"", ""Name"": ""Name!"" }", originalJson); GameObject newObject = JsonConvert.DeserializeObject(originalJson); Assert.AreEqual(1, newObject.Components.Count); Assert.AreEqual("Id!", newObject.Id); Assert.AreEqual("Name!", newObject.Name); } #endif [Test] public void DeserializeKeyValuePairArray() { string json = @"[ { ""Value"": [ ""1"", ""2"" ], ""Key"": ""aaa"", ""BadContent"": [ 0 ] }, { ""Value"": [ ""3"", ""4"" ], ""Key"": ""bbb"" } ]"; IList>> values = JsonConvert.DeserializeObject>>>(json); Assert.AreEqual(2, values.Count); Assert.AreEqual("aaa", values[0].Key); Assert.AreEqual(2, values[0].Value.Count); Assert.AreEqual("1", values[0].Value[0]); Assert.AreEqual("2", values[0].Value[1]); Assert.AreEqual("bbb", values[1].Key); Assert.AreEqual(2, values[1].Value.Count); Assert.AreEqual("3", values[1].Value[0]); Assert.AreEqual("4", values[1].Value[1]); } [Test] public void DeserializeNullableKeyValuePairArray() { string json = @"[ { ""Value"": [ ""1"", ""2"" ], ""Key"": ""aaa"", ""BadContent"": [ 0 ] }, null, { ""Value"": [ ""3"", ""4"" ], ""Key"": ""bbb"" } ]"; IList>?> values = JsonConvert.DeserializeObject>?>>(json); Assert.AreEqual(3, values.Count); Assert.AreEqual("aaa", values[0].Value.Key); Assert.AreEqual(2, values[0].Value.Value.Count); Assert.AreEqual("1", values[0].Value.Value[0]); Assert.AreEqual("2", values[0].Value.Value[1]); Assert.AreEqual(null, values[1]); Assert.AreEqual("bbb", values[2].Value.Key); Assert.AreEqual(2, values[2].Value.Value.Count); Assert.AreEqual("3", values[2].Value.Value[0]); Assert.AreEqual("4", values[2].Value.Value[1]); } [Test] public void DeserializeNullToNonNullableKeyValuePairArray() { string json = @"[ null ]"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeObject>>>(json); }, "Cannot convert null value to KeyValuePair. Path '[0]', line 1, position 6."); } #if !(NET40 || NET35 || NET20 || PORTABLE40) public class PopulateReadOnlyTestClass { public IList NonReadOnlyList { get; set; } public IDictionary NonReadOnlyDictionary { get; set; } public IList Array { get; set; } public IList List { get; set; } public IDictionary Dictionary { get; set; } public IReadOnlyCollection IReadOnlyCollection { get; set; } public ReadOnlyCollection ReadOnlyCollection { get; set; } public IReadOnlyList IReadOnlyList { get; set; } public IReadOnlyDictionary IReadOnlyDictionary { get; set; } public ReadOnlyDictionary ReadOnlyDictionary { get; set; } public PopulateReadOnlyTestClass() { NonReadOnlyList = new List { 1 }; NonReadOnlyDictionary = new Dictionary { { "first", 2 } }; Array = new[] { 3 }; List = new ReadOnlyCollection(new[] { 4 }); Dictionary = new ReadOnlyDictionary(new Dictionary { { "first", 5 } }); IReadOnlyCollection = new ReadOnlyCollection(new[] { 6 }); ReadOnlyCollection = new ReadOnlyCollection(new[] { 7 }); IReadOnlyList = new ReadOnlyCollection(new[] { 8 }); IReadOnlyDictionary = new ReadOnlyDictionary(new Dictionary { { "first", 9 } }); ReadOnlyDictionary = new ReadOnlyDictionary(new Dictionary { { "first", 10 } }); } } [Test] public void SerializeReadOnlyCollections() { PopulateReadOnlyTestClass c1 = new PopulateReadOnlyTestClass(); string json = JsonConvert.SerializeObject(c1, Formatting.Indented); StringAssert.AreEqual(@"{ ""NonReadOnlyList"": [ 1 ], ""NonReadOnlyDictionary"": { ""first"": 2 }, ""Array"": [ 3 ], ""List"": [ 4 ], ""Dictionary"": { ""first"": 5 }, ""IReadOnlyCollection"": [ 6 ], ""ReadOnlyCollection"": [ 7 ], ""IReadOnlyList"": [ 8 ], ""IReadOnlyDictionary"": { ""first"": 9 }, ""ReadOnlyDictionary"": { ""first"": 10 } }", json); } [Test] public void PopulateReadOnlyCollections() { string json = @"{ ""NonReadOnlyList"": [ 11 ], ""NonReadOnlyDictionary"": { ""first"": 12 }, ""Array"": [ 13 ], ""List"": [ 14 ], ""Dictionary"": { ""first"": 15 }, ""IReadOnlyCollection"": [ 16 ], ""ReadOnlyCollection"": [ 17 ], ""IReadOnlyList"": [ 18 ], ""IReadOnlyDictionary"": { ""first"": 19 }, ""ReadOnlyDictionary"": { ""first"": 20 } }"; var c2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(1, c2.NonReadOnlyDictionary.Count); Assert.AreEqual(12, c2.NonReadOnlyDictionary["first"]); Assert.AreEqual(2, c2.NonReadOnlyList.Count); Assert.AreEqual(1, c2.NonReadOnlyList[0]); Assert.AreEqual(11, c2.NonReadOnlyList[1]); Assert.AreEqual(1, c2.Array.Count); Assert.AreEqual(13, c2.Array[0]); } #endif [Test] public void SerializeArray2D() { Array2D aa = new Array2D(); aa.Before = "Before!"; aa.After = "After!"; aa.Coordinates = new[,] { { 1, 1 }, { 1, 2 }, { 2, 1 }, { 2, 2 } }; string json = JsonConvert.SerializeObject(aa); Assert.AreEqual(@"{""Before"":""Before!"",""Coordinates"":[[1,1],[1,2],[2,1],[2,2]],""After"":""After!""}", json); } [Test] public void SerializeArray3D() { Array3D aa = new Array3D(); aa.Before = "Before!"; aa.After = "After!"; aa.Coordinates = new[, ,] { { { 1, 1, 1 }, { 1, 1, 2 } }, { { 1, 2, 1 }, { 1, 2, 2 } }, { { 2, 1, 1 }, { 2, 1, 2 } }, { { 2, 2, 1 }, { 2, 2, 2 } } }; string json = JsonConvert.SerializeObject(aa); Assert.AreEqual(@"{""Before"":""Before!"",""Coordinates"":[[[1,1,1],[1,1,2]],[[1,2,1],[1,2,2]],[[2,1,1],[2,1,2]],[[2,2,1],[2,2,2]]],""After"":""After!""}", json); } [Test] public void SerializeArray3DWithConverter() { Array3DWithConverter aa = new Array3DWithConverter(); aa.Before = "Before!"; aa.After = "After!"; aa.Coordinates = new[, ,] { { { 1, 1, 1 }, { 1, 1, 2 } }, { { 1, 2, 1 }, { 1, 2, 2 } }, { { 2, 1, 1 }, { 2, 1, 2 } }, { { 2, 2, 1 }, { 2, 2, 2 } } }; string json = JsonConvert.SerializeObject(aa, Formatting.Indented); StringAssert.AreEqual(@"{ ""Before"": ""Before!"", ""Coordinates"": [ [ [ 1.0, 1.0, 1.0 ], [ 1.0, 1.0, 2.0 ] ], [ [ 1.0, 2.0, 1.0 ], [ 1.0, 2.0, 2.0 ] ], [ [ 2.0, 1.0, 1.0 ], [ 2.0, 1.0, 2.0 ] ], [ [ 2.0, 2.0, 1.0 ], [ 2.0, 2.0, 2.0 ] ] ], ""After"": ""After!"" }", json); } [Test] public void DeserializeArray3DWithConverter() { string json = @"{ ""Before"": ""Before!"", ""Coordinates"": [ [ [ 1.0, 1.0, 1.0 ], [ 1.0, 1.0, 2.0 ] ], [ [ 1.0, 2.0, 1.0 ], [ 1.0, 2.0, 2.0 ] ], [ [ 2.0, 1.0, 1.0 ], [ 2.0, 1.0, 2.0 ] ], [ [ 2.0, 2.0, 1.0 ], [ 2.0, 2.0, 2.0 ] ] ], ""After"": ""After!"" }"; Array3DWithConverter aa = JsonConvert.DeserializeObject(json); Assert.AreEqual("Before!", aa.Before); Assert.AreEqual("After!", aa.After); Assert.AreEqual(4, aa.Coordinates.GetLength(0)); Assert.AreEqual(2, aa.Coordinates.GetLength(1)); Assert.AreEqual(3, aa.Coordinates.GetLength(2)); Assert.AreEqual(1, aa.Coordinates[0, 0, 0]); Assert.AreEqual(2, aa.Coordinates[1, 1, 1]); } [Test] public void DeserializeArray2D() { string json = @"{""Before"":""Before!"",""Coordinates"":[[1,1],[1,2],[2,1],[2,2]],""After"":""After!""}"; Array2D aa = JsonConvert.DeserializeObject(json); Assert.AreEqual("Before!", aa.Before); Assert.AreEqual("After!", aa.After); Assert.AreEqual(4, aa.Coordinates.GetLength(0)); Assert.AreEqual(2, aa.Coordinates.GetLength(1)); Assert.AreEqual(1, aa.Coordinates[0, 0]); Assert.AreEqual(2, aa.Coordinates[1, 1]); string after = JsonConvert.SerializeObject(aa); Assert.AreEqual(json, after); } [Test] public void DeserializeArray2D_WithTooManyItems() { string json = @"{""Before"":""Before!"",""Coordinates"":[[1,1],[1,2,3],[2,1],[2,2]],""After"":""After!""}"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json), "Cannot deserialize non-cubical array as multidimensional array."); } [Test] public void DeserializeArray2D_WithTooFewItems() { string json = @"{""Before"":""Before!"",""Coordinates"":[[1,1],[1],[2,1],[2,2]],""After"":""After!""}"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json), "Cannot deserialize non-cubical array as multidimensional array."); } [Test] public void DeserializeArray3D() { string json = @"{""Before"":""Before!"",""Coordinates"":[[[1,1,1],[1,1,2]],[[1,2,1],[1,2,2]],[[2,1,1],[2,1,2]],[[2,2,1],[2,2,2]]],""After"":""After!""}"; Array3D aa = JsonConvert.DeserializeObject(json); Assert.AreEqual("Before!", aa.Before); Assert.AreEqual("After!", aa.After); Assert.AreEqual(4, aa.Coordinates.GetLength(0)); Assert.AreEqual(2, aa.Coordinates.GetLength(1)); Assert.AreEqual(3, aa.Coordinates.GetLength(2)); Assert.AreEqual(1, aa.Coordinates[0, 0, 0]); Assert.AreEqual(2, aa.Coordinates[1, 1, 1]); string after = JsonConvert.SerializeObject(aa); Assert.AreEqual(json, after); } [Test] public void DeserializeArray3D_WithTooManyItems() { string json = @"{""Before"":""Before!"",""Coordinates"":[[[1,1,1],[1,1,2,1]],[[1,2,1],[1,2,2]],[[2,1,1],[2,1,2]],[[2,2,1],[2,2,2]]],""After"":""After!""}"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json), "Cannot deserialize non-cubical array as multidimensional array."); } [Test] public void DeserializeArray3D_WithBadItems() { string json = @"{""Before"":""Before!"",""Coordinates"":[[[1,1,1],[1,1,2]],[[1,2,1],[1,2,2]],[[2,1,1],[2,1,2]],[[2,2,1],{}]],""After"":""After!""}"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json), "Unexpected token when deserializing multidimensional array: StartObject. Path 'Coordinates[3][1]', line 1, position 99."); } [Test] public void DeserializeArray3D_WithTooFewItems() { string json = @"{""Before"":""Before!"",""Coordinates"":[[[1,1,1],[1,1]],[[1,2,1],[1,2,2]],[[2,1,1],[2,1,2]],[[2,2,1],[2,2,2]]],""After"":""After!""}"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json), "Cannot deserialize non-cubical array as multidimensional array."); } [Test] public void SerializeEmpty3DArray() { Array3D aa = new Array3D(); aa.Before = "Before!"; aa.After = "After!"; aa.Coordinates = new int[0, 0, 0]; string json = JsonConvert.SerializeObject(aa); Assert.AreEqual(@"{""Before"":""Before!"",""Coordinates"":[],""After"":""After!""}", json); } [Test] public void DeserializeEmpty3DArray() { string json = @"{""Before"":""Before!"",""Coordinates"":[],""After"":""After!""}"; Array3D aa = JsonConvert.DeserializeObject(json); Assert.AreEqual("Before!", aa.Before); Assert.AreEqual("After!", aa.After); Assert.AreEqual(0, aa.Coordinates.GetLength(0)); Assert.AreEqual(0, aa.Coordinates.GetLength(1)); Assert.AreEqual(0, aa.Coordinates.GetLength(2)); string after = JsonConvert.SerializeObject(aa); Assert.AreEqual(json, after); } [Test] public void DeserializeIncomplete3DArray() { string json = @"{""Before"":""Before!"",""Coordinates"":[/*hi*/[/*hi*/[1/*hi*/,/*hi*/1/*hi*/,1]/*hi*/,/*hi*/[1,1"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json)); } [Test] public void DeserializeIncompleteNotTopLevel3DArray() { string json = @"{""Before"":""Before!"",""Coordinates"":[/*hi*/[/*hi*/"; ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(json)); } [Test] public void DeserializeNull3DArray() { string json = @"{""Before"":""Before!"",""Coordinates"":null,""After"":""After!""}"; Array3D aa = JsonConvert.DeserializeObject(json); Assert.AreEqual("Before!", aa.Before); Assert.AreEqual("After!", aa.After); Assert.AreEqual(null, aa.Coordinates); string after = JsonConvert.SerializeObject(aa); Assert.AreEqual(json, after); } [Test] public void DeserializeSemiEmpty3DArray() { string json = @"{""Before"":""Before!"",""Coordinates"":[[]],""After"":""After!""}"; Array3D aa = JsonConvert.DeserializeObject(json); Assert.AreEqual("Before!", aa.Before); Assert.AreEqual("After!", aa.After); Assert.AreEqual(1, aa.Coordinates.GetLength(0)); Assert.AreEqual(0, aa.Coordinates.GetLength(1)); Assert.AreEqual(0, aa.Coordinates.GetLength(2)); string after = JsonConvert.SerializeObject(aa); Assert.AreEqual(json, after); } [Test] public void SerializeReferenceTracked3DArray() { Event1 e1 = new Event1 { EventName = "EventName!" }; Event1[,] array1 = new[,] { { e1, e1 }, { e1, e1 } }; IList values1 = new List { array1, array1 }; string json = JsonConvert.SerializeObject(values1, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All, Formatting = Formatting.Indented }); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""$values"": [ { ""$id"": ""2"", ""$values"": [ [ { ""$id"": ""3"", ""EventName"": ""EventName!"", ""Venue"": null, ""Performances"": null }, { ""$ref"": ""3"" } ], [ { ""$ref"": ""3"" }, { ""$ref"": ""3"" } ] ] }, { ""$ref"": ""2"" } ] }", json); } [Test] public void SerializeTypeName3DArray() { Event1 e1 = new Event1 { EventName = "EventName!" }; Event1[,] array1 = new[,] { { e1, e1 }, { e1, e1 } }; IList values1 = new List { array1, array1 }; string json = JsonConvert.SerializeObject(values1, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All, Formatting = Formatting.Indented }); StringAssert.AreEqual(@"{ ""$type"": ""System.Collections.Generic.List`1[[Newtonsoft.Json.Tests.TestObjects.Event1[,], Newtonsoft.Json.Tests]], mscorlib"", ""$values"": [ { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1[,], Newtonsoft.Json.Tests"", ""$values"": [ [ { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1, Newtonsoft.Json.Tests"", ""EventName"": ""EventName!"", ""Venue"": null, ""Performances"": null }, { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1, Newtonsoft.Json.Tests"", ""EventName"": ""EventName!"", ""Venue"": null, ""Performances"": null } ], [ { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1, Newtonsoft.Json.Tests"", ""EventName"": ""EventName!"", ""Venue"": null, ""Performances"": null }, { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1, Newtonsoft.Json.Tests"", ""EventName"": ""EventName!"", ""Venue"": null, ""Performances"": null } ] ] }, { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1[,], Newtonsoft.Json.Tests"", ""$values"": [ [ { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1, Newtonsoft.Json.Tests"", ""EventName"": ""EventName!"", ""Venue"": null, ""Performances"": null }, { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1, Newtonsoft.Json.Tests"", ""EventName"": ""EventName!"", ""Venue"": null, ""Performances"": null } ], [ { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1, Newtonsoft.Json.Tests"", ""EventName"": ""EventName!"", ""Venue"": null, ""Performances"": null }, { ""$type"": ""Newtonsoft.Json.Tests.TestObjects.Event1, Newtonsoft.Json.Tests"", ""EventName"": ""EventName!"", ""Venue"": null, ""Performances"": null } ] ] } ] }", json); IList values2 = (IList)JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }); Assert.AreEqual(2, values2.Count); Assert.AreEqual("EventName!", values2[0][0, 0].EventName); } [Test] public void PrimitiveValuesInObjectArray() { string json = @"{""action"":""Router"",""method"":""Navigate"",""data"":[""dashboard"",null],""type"":""rpc"",""tid"":2}"; ObjectArrayPropertyTest o = JsonConvert.DeserializeObject(json); Assert.AreEqual("Router", o.Action); Assert.AreEqual("Navigate", o.Method); Assert.AreEqual(2, o.Data.Length); Assert.AreEqual("dashboard", o.Data[0]); Assert.AreEqual(null, o.Data[1]); } [Test] public void ComplexValuesInObjectArray() { string json = @"{""action"":""Router"",""method"":""Navigate"",""data"":[""dashboard"",[""id"", 1, ""teststring"", ""test""],{""one"":1}],""type"":""rpc"",""tid"":2}"; ObjectArrayPropertyTest o = JsonConvert.DeserializeObject(json); Assert.AreEqual("Router", o.Action); Assert.AreEqual("Navigate", o.Method); Assert.AreEqual(3, o.Data.Length); Assert.AreEqual("dashboard", o.Data[0]); CustomAssert.IsInstanceOfType(typeof(JArray), o.Data[1]); Assert.AreEqual(4, ((JArray)o.Data[1]).Count); CustomAssert.IsInstanceOfType(typeof(JObject), o.Data[2]); Assert.AreEqual(1, ((JObject)o.Data[2]).Count); Assert.AreEqual(1, (int)((JObject)o.Data[2])["one"]); } #if !(NETFX_CORE || ASPNETCORE50) [Test] public void SerializeArrayAsArrayList() { string jsonText = @"[3, ""somestring"",[1,2,3],{}]"; ArrayList o = JsonConvert.DeserializeObject(jsonText); Assert.AreEqual(4, o.Count); Assert.AreEqual(3, ((JArray)o[2]).Count); Assert.AreEqual(0, ((JObject)o[3]).Count); } #endif [Test] public void SerializeMemberGenericList() { Name name = new Name("The Idiot in Next To Me"); PhoneNumber p1 = new PhoneNumber("555-1212"); PhoneNumber p2 = new PhoneNumber("444-1212"); name.pNumbers.Add(p1); name.pNumbers.Add(p2); string json = JsonConvert.SerializeObject(name, Formatting.Indented); StringAssert.AreEqual(@"{ ""personsName"": ""The Idiot in Next To Me"", ""pNumbers"": [ { ""phoneNumber"": ""555-1212"" }, { ""phoneNumber"": ""444-1212"" } ] }", json); Name newName = JsonConvert.DeserializeObject(json); Assert.AreEqual("The Idiot in Next To Me", newName.personsName); // not passed in as part of the constructor but assigned to pNumbers property Assert.AreEqual(2, newName.pNumbers.Count); Assert.AreEqual("555-1212", newName.pNumbers[0].phoneNumber); Assert.AreEqual("444-1212", newName.pNumbers[1].phoneNumber); } [Test] public void CustomCollectionSerialization() { ProductCollection collection = new ProductCollection() { new Product() { Name = "Test1" }, new Product() { Name = "Test2" }, new Product() { Name = "Test3" } }; JsonSerializer jsonSerializer = new JsonSerializer(); jsonSerializer.ReferenceLoopHandling = ReferenceLoopHandling.Ignore; StringWriter sw = new StringWriter(); jsonSerializer.Serialize(sw, collection); Assert.AreEqual(@"[{""Name"":""Test1"",""ExpiryDate"":""2000-01-01T00:00:00Z"",""Price"":0.0,""Sizes"":null},{""Name"":""Test2"",""ExpiryDate"":""2000-01-01T00:00:00Z"",""Price"":0.0,""Sizes"":null},{""Name"":""Test3"",""ExpiryDate"":""2000-01-01T00:00:00Z"",""Price"":0.0,""Sizes"":null}]", sw.GetStringBuilder().ToString()); ProductCollection collectionNew = (ProductCollection)jsonSerializer.Deserialize(new JsonTextReader(new StringReader(sw.GetStringBuilder().ToString())), typeof(ProductCollection)); CollectionAssert.AreEqual(collection, collectionNew); } [Test] public void GenericCollectionInheritance() { string json; GenericClass, string> foo1 = new GenericClass, string>(); foo1.Items.Add(new GenericItem { Value = "Hello" }); json = JsonConvert.SerializeObject(new { selectList = foo1 }); Assert.AreEqual(@"{""selectList"":[{""Value"":""Hello""}]}", json); GenericClass foo2 = new GenericClass(); foo2.Items.Add(new NonGenericItem { Value = "Hello" }); json = JsonConvert.SerializeObject(new { selectList = foo2 }); Assert.AreEqual(@"{""selectList"":[{""Value"":""Hello""}]}", json); NonGenericClass foo3 = new NonGenericClass(); foo3.Items.Add(new NonGenericItem { Value = "Hello" }); json = JsonConvert.SerializeObject(new { selectList = foo3 }); Assert.AreEqual(@"{""selectList"":[{""Value"":""Hello""}]}", json); } [Test] public void InheritedListSerialize() { Article a1 = new Article("a1"); Article a2 = new Article("a2"); ArticleCollection articles1 = new ArticleCollection(); articles1.Add(a1); articles1.Add(a2); string jsonText = JsonConvert.SerializeObject(articles1); ArticleCollection articles2 = JsonConvert.DeserializeObject(jsonText); Assert.AreEqual(articles1.Count, articles2.Count); Assert.AreEqual(articles1[0].Name, articles2[0].Name); } [Test] public void ReadOnlyCollectionSerialize() { ReadOnlyCollection r1 = new ReadOnlyCollection(new int[] { 0, 1, 2, 3, 4 }); string jsonText = JsonConvert.SerializeObject(r1); Assert.AreEqual("[0,1,2,3,4]", jsonText); ReadOnlyCollection r2 = JsonConvert.DeserializeObject>(jsonText); CollectionAssert.AreEqual(r1, r2); } [Test] public void SerializeGenericList() { Product p1 = new Product { Name = "Product 1", Price = 99.95m, ExpiryDate = new DateTime(2000, 12, 29, 0, 0, 0, DateTimeKind.Utc), }; Product p2 = new Product { Name = "Product 2", Price = 12.50m, ExpiryDate = new DateTime(2009, 7, 31, 0, 0, 0, DateTimeKind.Utc), }; List products = new List(); products.Add(p1); products.Add(p2); string json = JsonConvert.SerializeObject(products, Formatting.Indented); //[ // { // "Name": "Product 1", // "ExpiryDate": "\/Date(978048000000)\/", // "Price": 99.95, // "Sizes": null // }, // { // "Name": "Product 2", // "ExpiryDate": "\/Date(1248998400000)\/", // "Price": 12.50, // "Sizes": null // } //] StringAssert.AreEqual(@"[ { ""Name"": ""Product 1"", ""ExpiryDate"": ""2000-12-29T00:00:00Z"", ""Price"": 99.95, ""Sizes"": null }, { ""Name"": ""Product 2"", ""ExpiryDate"": ""2009-07-31T00:00:00Z"", ""Price"": 12.50, ""Sizes"": null } ]", json); } [Test] public void DeserializeGenericList() { string json = @"[ { ""Name"": ""Product 1"", ""ExpiryDate"": ""\/Date(978048000000)\/"", ""Price"": 99.95, ""Sizes"": null }, { ""Name"": ""Product 2"", ""ExpiryDate"": ""\/Date(1248998400000)\/"", ""Price"": 12.50, ""Sizes"": null } ]"; List products = JsonConvert.DeserializeObject>(json); Console.WriteLine(products.Count); // 2 Product p1 = products[0]; Console.WriteLine(p1.Name); // Product 1 Assert.AreEqual(2, products.Count); Assert.AreEqual("Product 1", products[0].Name); } #if !(NET40 || NET35 || NET20 || PORTABLE40) [Test] public void ReadOnlyIntegerList() { ReadOnlyIntegerList l = new ReadOnlyIntegerList(new List { 1, 2, 3, int.MaxValue }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ 1, 2, 3, 2147483647 ]", json); } #endif } #if !(NET40 || NET35 || NET20 || PORTABLE40) public class ReadOnlyIntegerList : IReadOnlyCollection { private readonly List _list; public ReadOnlyIntegerList(List l) { _list = l; } public int Count { get { return _list.Count; } } public IEnumerator GetEnumerator() { return _list.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } #endif public class Array2D { public string Before { get; set; } public int[,] Coordinates { get; set; } public string After { get; set; } } public class Array3D { public string Before { get; set; } public int[, ,] Coordinates { get; set; } public string After { get; set; } } public class Array3DWithConverter { public string Before { get; set; } [JsonProperty(ItemConverterType = typeof(IntToFloatConverter))] public int[, ,] Coordinates { get; set; } public string After { get; set; } } public class GenericItem { public T Value { get; set; } } public class NonGenericItem : GenericItem { } public class GenericClass : IEnumerable where T : GenericItem, new() { public IList Items { get; set; } public GenericClass() { Items = new List(); } public IEnumerator GetEnumerator() { if (Items != null) { foreach (T item in Items) { yield return item; } } else yield break; } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } public class NonGenericClass : GenericClass, string> { } public class StringListAppenderConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(value); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { List existingStrings = (List)existingValue; List newStrings = new List(existingStrings); reader.Read(); while (reader.TokenType != JsonToken.EndArray) { string s = (string)reader.Value; newStrings.Add(s); reader.Read(); } return newStrings; } public override bool CanConvert(Type objectType) { return (objectType == typeof(List)); } } public class StringAppenderConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(value); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { string existingString = (string)existingValue; string newString = existingString + (string)reader.Value; return newString; } public override bool CanConvert(Type objectType) { return (objectType == typeof(string)); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/SerializationErrorHandlingTests.cs0000664000175000017500000010561412454416117034031 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Runtime.Serialization; using System.Text; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using System.IO; using ErrorEventArgs = Newtonsoft.Json.Serialization.ErrorEventArgs; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class SerializationErrorHandlingTests : TestFixtureBase { [Test] public void ErrorDeserializingListHandled() { string json = @"[ { ""Name"": ""Jim"", ""BirthDate"": ""\/Date(978048000000)\/"", ""LastModified"": ""\/Date(978048000000)\/"" }, { ""Name"": ""Jim"", ""BirthDate"": ""\/Date(978048000000)\/"", ""LastModified"": ""\/Date(978048000000)\/"" } ]"; var possibleMsgs = new [] { "[1] - Error message for member 1 = An item with the same key has already been added.", "[1] - Error message for member 1 = An element with the same key already exists in the dictionary." // mono }; VersionKeyedCollection c = JsonConvert.DeserializeObject(json); Assert.AreEqual(1, c.Count); Assert.AreEqual(1, c.Messages.Count); Assert.IsTrue (possibleMsgs.Any (m => m == c.Messages[0]), "Expected One of: " + Environment.NewLine + string.Join (Environment.NewLine, possibleMsgs) + Environment.NewLine + "Was: " + Environment.NewLine + c.Messages[0]); } [Test] public void DeserializingErrorInChildObject() { ListErrorObjectCollection c = JsonConvert.DeserializeObject(@"[ { ""Member"": ""Value1"", ""Member2"": null }, { ""Member"": ""Value2"" }, { ""ThrowError"": ""Value"", ""Object"": { ""Array"": [ 1, 2 ] } }, { ""ThrowError"": ""Handle this!"", ""Member"": ""Value3"" } ]"); Assert.AreEqual(3, c.Count); Assert.AreEqual("Value1", c[0].Member); Assert.AreEqual("Value2", c[1].Member); Assert.AreEqual("Value3", c[2].Member); Assert.AreEqual("Handle this!", c[2].ThrowError); } [Test] public void SerializingErrorIn3DArray() { ListErrorObject[,,] c = new ListErrorObject[,,] { { { new ListErrorObject { Member = "Value1", ThrowError = "Handle this!", Member2 = "Member1" }, new ListErrorObject { Member = "Value2", Member2 = "Member2" }, new ListErrorObject { Member = "Value3", ThrowError = "Handle that!", Member2 = "Member3" } }, { new ListErrorObject { Member = "Value1", ThrowError = "Handle this!", Member2 = "Member1" }, new ListErrorObject { Member = "Value2", Member2 = "Member2" }, new ListErrorObject { Member = "Value3", ThrowError = "Handle that!", Member2 = "Member3" } } } }; string json = JsonConvert.SerializeObject(c, new JsonSerializerSettings { Formatting = Formatting.Indented, Error = (s, e) => { if (e.CurrentObject.GetType().IsArray) e.ErrorContext.Handled = true; } }); StringAssert.AreEqual(@"[ [ [ { ""Member"": ""Value1"", ""ThrowError"": ""Handle this!"", ""Member2"": ""Member1"" }, { ""Member"": ""Value2"" }, { ""Member"": ""Value3"", ""ThrowError"": ""Handle that!"", ""Member2"": ""Member3"" } ], [ { ""Member"": ""Value1"", ""ThrowError"": ""Handle this!"", ""Member2"": ""Member1"" }, { ""Member"": ""Value2"" }, { ""Member"": ""Value3"", ""ThrowError"": ""Handle that!"", ""Member2"": ""Member3"" } ] ] ]", json); } [Test] public void SerializingErrorInChildObject() { ListErrorObjectCollection c = new ListErrorObjectCollection { new ListErrorObject { Member = "Value1", ThrowError = "Handle this!", Member2 = "Member1" }, new ListErrorObject { Member = "Value2", Member2 = "Member2" }, new ListErrorObject { Member = "Value3", ThrowError = "Handle that!", Member2 = "Member3" } }; string json = JsonConvert.SerializeObject(c, Formatting.Indented); StringAssert.AreEqual(@"[ { ""Member"": ""Value1"", ""ThrowError"": ""Handle this!"", ""Member2"": ""Member1"" }, { ""Member"": ""Value2"" }, { ""Member"": ""Value3"", ""ThrowError"": ""Handle that!"", ""Member2"": ""Member3"" } ]", json); } [Test] public void DeserializingErrorInDateTimeCollection() { DateTimeErrorObjectCollection c = JsonConvert.DeserializeObject(@"[ ""2009-09-09T00:00:00Z"", ""kjhkjhkjhkjh"", [ 1 ], ""1977-02-20T00:00:00Z"", null, ""2000-12-01T00:00:00Z"" ]", new IsoDateTimeConverter()); Assert.AreEqual(3, c.Count); Assert.AreEqual(new DateTime(2009, 9, 9, 0, 0, 0, DateTimeKind.Utc), c[0]); Assert.AreEqual(new DateTime(1977, 2, 20, 0, 0, 0, DateTimeKind.Utc), c[1]); Assert.AreEqual(new DateTime(2000, 12, 1, 0, 0, 0, DateTimeKind.Utc), c[2]); } [Test] public void DeserializingErrorHandlingUsingEvent() { List errors = new List(); JsonSerializer serializer = JsonSerializer.Create(new JsonSerializerSettings { Error = delegate(object sender, ErrorEventArgs args) { errors.Add(args.ErrorContext.Path + " - " + args.ErrorContext.Member + " - " + args.ErrorContext.Error.Message); args.ErrorContext.Handled = true; }, Converters = { new IsoDateTimeConverter() } }); var c = serializer.Deserialize>(new JsonTextReader(new StringReader(@"[ ""2009-09-09T00:00:00Z"", ""I am not a date and will error!"", [ 1 ], ""1977-02-20T00:00:00Z"", null, ""2000-12-01T00:00:00Z"" ]"))); // 2009-09-09T00:00:00Z // 1977-02-20T00:00:00Z // 2000-12-01T00:00:00Z // The string was not recognized as a valid DateTime. There is a unknown word starting at index 0. // Unexpected token parsing date. Expected String, got StartArray. // Cannot convert null value to System.DateTime. Assert.AreEqual(3, c.Count); Assert.AreEqual(new DateTime(2009, 9, 9, 0, 0, 0, DateTimeKind.Utc), c[0]); Assert.AreEqual(new DateTime(1977, 2, 20, 0, 0, 0, DateTimeKind.Utc), c[1]); Assert.AreEqual(new DateTime(2000, 12, 1, 0, 0, 0, DateTimeKind.Utc), c[2]); Assert.AreEqual(3, errors.Count); #if !(NET20 || NET35) var possibleErrs = new [] { "[1] - 1 - The string was not recognized as a valid DateTime. There is an unknown word starting at index 0.", "[1] - 1 - String was not recognized as a valid DateTime." }; Assert.IsTrue(possibleErrs.Any (m => m == errors[0]), "Expected One of: " + string.Join (Environment.NewLine, possibleErrs) + Environment.NewLine + "But was: " + errors[0]); #else Assert.AreEqual("[1] - 1 - The string was not recognized as a valid DateTime. There is a unknown word starting at index 0.", errors[0]); #endif Assert.AreEqual("[2] - 2 - Unexpected token parsing date. Expected String, got StartArray. Path '[2]', line 4, position 10.", errors[1]); Assert.AreEqual("[4] - 4 - Cannot convert null value to System.DateTime. Path '[4]', line 8, position 13.", errors[2]); } [Test] public void DeserializingErrorInDateTimeCollectionWithAttributeWithEventNotCalled() { bool eventErrorHandlerCalled = false; DateTimeErrorObjectCollection c = JsonConvert.DeserializeObject( @"[ ""2009-09-09T00:00:00Z"", ""kjhkjhkjhkjh"", [ 1 ], ""1977-02-20T00:00:00Z"", null, ""2000-12-01T00:00:00Z"" ]", new JsonSerializerSettings { Error = (s, a) => eventErrorHandlerCalled = true, Converters = { new IsoDateTimeConverter() } }); Assert.AreEqual(3, c.Count); Assert.AreEqual(new DateTime(2009, 9, 9, 0, 0, 0, DateTimeKind.Utc), c[0]); Assert.AreEqual(new DateTime(1977, 2, 20, 0, 0, 0, DateTimeKind.Utc), c[1]); Assert.AreEqual(new DateTime(2000, 12, 1, 0, 0, 0, DateTimeKind.Utc), c[2]); Assert.AreEqual(false, eventErrorHandlerCalled); } [Test] public void SerializePerson() { PersonError person = new PersonError { Name = "George Michael Bluth", Age = 16, Roles = null, Title = "Mister Manager" }; string json = JsonConvert.SerializeObject(person, Formatting.Indented); Console.WriteLine(json); //{ // "Name": "George Michael Bluth", // "Age": 16, // "Title": "Mister Manager" //} StringAssert.AreEqual(@"{ ""Name"": ""George Michael Bluth"", ""Age"": 16, ""Title"": ""Mister Manager"" }", json); } [Test] public void DeserializeNestedUnhandled() { List errors = new List(); string json = @"[[""kjhkjhkjhkjh""]]"; Exception e = null; try { JsonSerializer serializer = new JsonSerializer(); serializer.Error += delegate(object sender, ErrorEventArgs args) { // only log an error once if (args.CurrentObject == args.ErrorContext.OriginalObject) errors.Add(args.ErrorContext.Path + " - " + args.ErrorContext.Member + " - " + args.ErrorContext.Error.Message); }; serializer.Deserialize(new StringReader(json), typeof(List>)); } catch (Exception ex) { e = ex; } Assert.AreEqual(@"Could not convert string to DateTime: kjhkjhkjhkjh. Path '[0][0]', line 1, position 16.", e.Message); Assert.AreEqual(1, errors.Count); Assert.AreEqual(@"[0][0] - 0 - Could not convert string to DateTime: kjhkjhkjhkjh. Path '[0][0]', line 1, position 16.", errors[0]); } [Test] public void MultipleRequiredPropertyErrors() { string json = "{}"; List errors = new List(); JsonSerializer serializer = new JsonSerializer(); serializer.MetadataPropertyHandling = MetadataPropertyHandling.Default; serializer.Error += delegate(object sender, ErrorEventArgs args) { errors.Add(args.ErrorContext.Path + " - " + args.ErrorContext.Member + " - " + args.ErrorContext.Error.Message); args.ErrorContext.Handled = true; }; serializer.Deserialize(new JsonTextReader(new StringReader(json)), typeof(MyTypeWithRequiredMembers)); Assert.AreEqual(2, errors.Count); Assert.IsTrue(errors[0].StartsWith(" - Required1 - Required property 'Required1' not found in JSON. Path '', line 1, position 2.")); Assert.IsTrue(errors[1].StartsWith(" - Required2 - Required property 'Required2' not found in JSON. Path '', line 1, position 2.")); } [Test] public void HandlingArrayErrors() { string json = "[\"a\",\"b\",\"45\",34]"; List errors = new List(); JsonSerializer serializer = new JsonSerializer(); serializer.Error += delegate(object sender, ErrorEventArgs args) { errors.Add(args.ErrorContext.Path + " - " + args.ErrorContext.Member + " - " + args.ErrorContext.Error.Message); args.ErrorContext.Handled = true; }; serializer.Deserialize(new JsonTextReader(new StringReader(json)), typeof(int[])); Assert.AreEqual(2, errors.Count); Assert.AreEqual("[0] - 0 - Could not convert string to integer: a. Path '[0]', line 1, position 4.", errors[0]); Assert.AreEqual("[1] - 1 - Could not convert string to integer: b. Path '[1]', line 1, position 8.", errors[1]); } [Test] public void HandlingMultidimensionalArrayErrors() { string json = "[[\"a\",\"45\"],[\"b\",34]]"; List errors = new List(); JsonSerializer serializer = new JsonSerializer(); serializer.Error += delegate(object sender, ErrorEventArgs args) { errors.Add(args.ErrorContext.Path + " - " + args.ErrorContext.Member + " - " + args.ErrorContext.Error.Message); args.ErrorContext.Handled = true; }; serializer.Deserialize(new JsonTextReader(new StringReader(json)), typeof(int[,])); Assert.AreEqual(2, errors.Count); Assert.AreEqual("[0][0] - 0 - Could not convert string to integer: a. Path '[0][0]', line 1, position 5.", errors[0]); Assert.AreEqual("[1][0] - 0 - Could not convert string to integer: b. Path '[1][0]', line 1, position 16.", errors[1]); } [Test] public void ErrorHandlingAndAvoidingRecursiveDepthError() { string json = "{'A':{'A':{'A':{'A':{'A':{}}}}}}"; JsonSerializer serializer = new JsonSerializer() { }; IList errors = new List(); serializer.Error += (sender, e) => { e.ErrorContext.Handled = true; errors.Add(e.ErrorContext.Path); }; serializer.Deserialize(new JsonTextReader(new StringReader(json)) { MaxDepth = 3 }); Assert.AreEqual(1, errors.Count); Assert.AreEqual("A.A.A", errors[0]); } public class Nest { public Nest A { get; set; } } [Test] public void InfiniteErrorHandlingLoopFromInputError() { IList errors = new List(); JsonSerializer serializer = new JsonSerializer(); serializer.Error += (sender, e) => { errors.Add(e.ErrorContext.Error.Message); e.ErrorContext.Handled = true; }; ErrorPerson[] result = serializer.Deserialize(new JsonTextReader(new ThrowingReader())); Assert.IsNull(result); Assert.AreEqual(3, errors.Count); Assert.AreEqual("too far", errors[0]); Assert.AreEqual("too far", errors[1]); Assert.AreEqual("Infinite loop detected from error handling. Path '[1023]', line 1, position 65536.", errors[2]); } [Test] public void InfiniteLoopArrayHandling() { IList errors = new List(); object o = JsonConvert.DeserializeObject( "[0,x]", typeof(int[]), new JsonSerializerSettings { Error = (sender, arg) => { errors.Add(arg.ErrorContext.Error.Message); arg.ErrorContext.Handled = true; } }); Assert.IsNull(o); Assert.AreEqual(3, errors.Count); Assert.AreEqual("Unexpected character encountered while parsing value: x. Path '[0]', line 1, position 3.", errors[0]); Assert.AreEqual("Unexpected character encountered while parsing value: x. Path '[0]', line 1, position 3.", errors[1]); Assert.AreEqual("Infinite loop detected from error handling. Path '[0]', line 1, position 3.", errors[2]); } [Test] public void InfiniteLoopArrayHandlingInObject() { IList errors = new List(); Dictionary o = JsonConvert.DeserializeObject>( "{'badarray':[0,x,2],'goodarray':[0,1,2]}", new JsonSerializerSettings { MetadataPropertyHandling = MetadataPropertyHandling.Default, Error = (sender, arg) => { errors.Add(arg.ErrorContext.Error.Message); arg.ErrorContext.Handled = true; } }); Assert.IsNull(o); Assert.AreEqual(4, errors.Count); Assert.AreEqual("Unexpected character encountered while parsing value: x. Path 'badarray[0]', line 1, position 15.", errors[0]); Assert.AreEqual("Unexpected character encountered while parsing value: x. Path 'badarray[0]', line 1, position 15.", errors[1]); Assert.AreEqual("Infinite loop detected from error handling. Path 'badarray[0]', line 1, position 15.", errors[2]); Assert.AreEqual("Unexpected character encountered while parsing value: x. Path 'badarray[0]', line 1, position 15.", errors[3]); } [Test] public void ErrorHandlingEndOfContent() { IList errors = new List(); const string input = "{\"events\":[{\"code\":64411},{\"code\":64411,\"prio"; const int maxDepth = 256; using (var jsonTextReader = new JsonTextReader(new StringReader(input)) { MaxDepth = maxDepth }) { JsonSerializer jsonSerializer = JsonSerializer.Create(new JsonSerializerSettings { MaxDepth = maxDepth, MetadataPropertyHandling = MetadataPropertyHandling.Default }); jsonSerializer.Error += (sender, e) => { errors.Add(e.ErrorContext.Error.Message); e.ErrorContext.Handled = true; }; LogMessage logMessage = jsonSerializer.Deserialize(jsonTextReader); Assert.IsNotNull(logMessage.Events); Assert.AreEqual(1, logMessage.Events.Count); Assert.AreEqual("64411", logMessage.Events[0].Code); } Assert.AreEqual(3, errors.Count); Assert.AreEqual(@"Unterminated string. Expected delimiter: "". Path 'events[1].code', line 1, position 45.", errors[0]); Assert.AreEqual(@"Unexpected end when deserializing array. Path 'events[1].code', line 1, position 45.", errors[1]); Assert.AreEqual(@"Unexpected end when deserializing object. Path 'events[1].code', line 1, position 45.", errors[2]); } [Test] public void ErrorHandlingEndOfContentDictionary() { IList errors = new List(); const string input = "{\"events\":{\"code\":64411},\"events2\":{\"code\":64412,"; const int maxDepth = 256; using (var jsonTextReader = new JsonTextReader(new StringReader(input)) { MaxDepth = maxDepth }) { JsonSerializer jsonSerializer = JsonSerializer.Create(new JsonSerializerSettings { MaxDepth = maxDepth, MetadataPropertyHandling = MetadataPropertyHandling.Default }); jsonSerializer.Error += (sender, e) => { errors.Add(e.ErrorContext.Error.Message); e.ErrorContext.Handled = true; }; IDictionary logEvents = jsonSerializer.Deserialize>(jsonTextReader); Assert.IsNotNull(logEvents); Assert.AreEqual(2, logEvents.Count); Assert.AreEqual("64411", logEvents["events"].Code); Assert.AreEqual("64412", logEvents["events2"].Code); } Assert.AreEqual(2, errors.Count); Assert.AreEqual(@"Unexpected end when deserializing object. Path 'events2.code', line 1, position 49.", errors[0]); Assert.AreEqual(@"Unexpected end when deserializing object. Path 'events2.code', line 1, position 49.", errors[1]); } #if !(NET35 || NET20 || PORTABLE40) [Test] public void ErrorHandlingEndOfContentDynamic() { IList errors = new List(); string json = @"{ ""Explicit"": true, ""Decimal"": 99.9, ""Int"": 1, ""ChildObject"": { ""Integer"": 123"; TestDynamicObject newDynamicObject = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { Error = (sender, e) => { errors.Add(e.ErrorContext.Error.Message); e.ErrorContext.Handled = true; }, MetadataPropertyHandling = MetadataPropertyHandling.Default }); Assert.AreEqual(true, newDynamicObject.Explicit); dynamic d = newDynamicObject; Assert.AreEqual(99.9, d.Decimal); Assert.AreEqual(1, d.Int); Assert.AreEqual(123, d.ChildObject.Integer); Assert.AreEqual(2, errors.Count); Assert.AreEqual(@"Unexpected end when deserializing object. Path 'ChildObject.Integer', line 6, position 19.", errors[0]); Assert.AreEqual(@"Unexpected end when deserializing object. Path 'ChildObject.Integer', line 6, position 19.", errors[1]); } #endif [Test] public void WriteEndOnPropertyState() { JsonSerializerSettings settings = new JsonSerializerSettings(); settings.Error += (obj, args) => { args.ErrorContext.Handled = true; }; var data = new List() { new ErrorPerson2 { FirstName = "Scott", LastName = "Hanselman" }, new ErrorPerson2 { FirstName = "Scott", LastName = "Hunter" }, new ErrorPerson2 { FirstName = "Scott", LastName = "Guthrie" }, }; Dictionary> dictionary = data.GroupBy(person => person.FirstName).ToDictionary(group => @group.Key, group => @group.Cast()); string output = JsonConvert.SerializeObject(dictionary, Formatting.None, settings); Assert.AreEqual(@"{""Scott"":[]}", output); } [Test] public void WriteEndOnPropertyState2() { JsonSerializerSettings settings = new JsonSerializerSettings(); settings.Error += (obj, args) => { args.ErrorContext.Handled = true; }; var data = new List { new ErrorPerson2 { FirstName = "Scott", LastName = "Hanselman" }, new ErrorPerson2 { FirstName = "Scott", LastName = "Hunter" }, new ErrorPerson2 { FirstName = "Scott", LastName = "Guthrie" }, new ErrorPerson2 { FirstName = "James", LastName = "Newton-King" }, }; Dictionary> dictionary = data.GroupBy(person => person.FirstName).ToDictionary(group => @group.Key, group => @group.Cast()); string output = JsonConvert.SerializeObject(dictionary, Formatting.None, settings); Assert.AreEqual(@"{""Scott"":[],""James"":[]}", output); } [Test] public void NoObjectWithEvent() { string json = "{\"}"; byte[] byteArray = Encoding.UTF8.GetBytes(json); MemoryStream stream = new MemoryStream(byteArray); JsonTextReader jReader = new JsonTextReader(new StreamReader(stream)); JsonSerializer s = new JsonSerializer(); s.Error += (sender, args) => { args.ErrorContext.Handled = true; }; ErrorPerson2 obj = s.Deserialize(jReader); Assert.IsNull(obj); } [Test] public void NoObjectWithAttribute() { string json = "{\"}"; byte[] byteArray = Encoding.UTF8.GetBytes(json); MemoryStream stream = new MemoryStream(byteArray); JsonTextReader jReader = new JsonTextReader(new StreamReader(stream)); JsonSerializer s = new JsonSerializer(); ExceptionAssert.Throws(() => { ErrorTestObject obj = s.Deserialize(jReader); }, @"Unterminated string. Expected delimiter: "". Path '', line 1, position 3."); } public class RootThing { public Something Something { get; set; } } public class RootSomethingElse { public SomethingElse SomethingElse { get; set; } } /// /// This could be an object we are passing up in an interface. /// [JsonConverter(typeof(SomethingConverter))] public class Something { public class SomethingConverter : JsonConverter { public override bool CanConvert(Type objectType) { return true; } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { try { // Do own stuff. // Then call deserialise for inner object. var innerObject = serializer.Deserialize(reader, typeof(SomethingElse)); return null; } catch (Exception ex) { // If we get an error wrap it in something less scary. throw new Exception("An error occurred.", ex); } } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { try { Something s = (Something)value; // Do own stuff. // Then call serialise for inner object. serializer.Serialize(writer, s.RootSomethingElse); } catch (Exception ex) { // If we get an error wrap it in something less scary. throw new Exception("An error occurred.", ex); } } } public RootSomethingElse RootSomethingElse { get; set; } public Something() { this.RootSomethingElse = new RootSomethingElse(); } } /// /// This is an object that is contained in the interface object. /// [JsonConverter(typeof(SomethingElseConverter))] public class SomethingElse { public class SomethingElseConverter : JsonConverter { public override bool CanConvert(Type objectType) { return true; } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { throw new NotImplementedException(); } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { throw new NotImplementedException(); } } } [Test] public void DeserializeWrappingErrorsAndErrorHandling() { var serialiser = JsonSerializer.Create(new JsonSerializerSettings() { }); string foo = "{ something: { rootSomethingElse { somethingElse: 0 } } }"; var reader = new System.IO.StringReader(foo); ExceptionAssert.Throws(() => { serialiser.Deserialize(reader, typeof(Something)); }, "An error occurred."); } [Test] public void SerializeWrappingErrorsAndErrorHandling() { var serialiser = JsonSerializer.Create(new JsonSerializerSettings() { }); Something s = new Something { RootSomethingElse = new RootSomethingElse { SomethingElse = new SomethingElse() } }; RootThing r = new RootThing { Something = s }; var writer = new System.IO.StringWriter(); ExceptionAssert.Throws(() => { serialiser.Serialize(writer, r); }, "An error occurred."); } [Test] public void DeserializeRootConverter() { SomethingElse result = JsonConvert.DeserializeObject("{}", new JsonSerializerSettings { Error = (o, e) => { e.ErrorContext.Handled = true; } }); Assert.IsNull(result); } [Test] public void SerializeRootConverter() { string result = JsonConvert.SerializeObject(new SomethingElse(), new JsonSerializerSettings { Error = (o, e) => { e.ErrorContext.Handled = true; } }); Assert.AreEqual(string.Empty, result); } } internal interface IErrorPerson2 { } internal class ErrorPerson2 //:IPerson - oops! Forgot to implement the person interface { public string LastName { get; set; } public string FirstName { get; set; } } public class ThrowingReader : TextReader { private int _position = 0; private static string element = "{\"FirstName\":\"Din\",\"LastName\":\"Rav\",\"Item\":{\"ItemName\":\"temp\"}}"; private bool _firstRead = true; private bool _readComma = false; public ThrowingReader() { } public override int Read(char[] buffer, int index, int count) { char[] temp = new char[buffer.Length]; int charsRead = 0; if (_firstRead) { charsRead = new StringReader("[").Read(temp, index, count); _firstRead = false; } else { if (_readComma) { charsRead = new StringReader(",").Read(temp, index, count); _readComma = false; } else { charsRead = new StringReader(element).Read(temp, index, count); _readComma = true; } } _position += charsRead; if (_position > 65536) { throw new Exception("too far"); } Array.Copy(temp, index, buffer, index, charsRead); return charsRead; } } public class ErrorPerson { public string FirstName { get; set; } public string LastName { get; set; } public ErrorItem Item { get; set; } } public class ErrorItem { public string ItemName { get; set; } } [JsonObject] public class MyTypeWithRequiredMembers { [JsonProperty(Required = Required.AllowNull)] public string Required1; [JsonProperty(Required = Required.AllowNull)] public string Required2; } public class LogMessage { public string DeviceId { get; set; } public IList Events { get; set; } } public class LogEvent { public string Code { get; set; } public int Priority { get; set; } } public class ErrorTestObject { [OnError] internal void OnError(StreamingContext context, ErrorContext errorContext) { } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/ImmutableCollectionsTests.cs0000664000175000017500000003052012454416117032644 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET20 || NET35 || NET40 || PORTABLE40) using System; using System.Collections.Generic; using System.Collections.Immutable; using System.Linq; using System.Text; using System.Threading.Tasks; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] [Ignore] public class ImmutableCollectionsTests : TestFixtureBase { #region List [Test] public void SerializeList() { ImmutableList l = ImmutableList.CreateRange(new List { "One", "II", "3" }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ ""One"", ""II"", ""3"" ]", json); Console.WriteLine("Serialized immutable list:"); Console.WriteLine(json); } [Test] public void DeserializeList() { string json = @"[ ""One"", ""II"", ""3"" ]"; ImmutableList l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count); Assert.AreEqual("One", l[0]); Assert.AreEqual("II", l[1]); Assert.AreEqual("3", l[2]); } [Test] public void DeserializeListInterface() { string json = @"[ 'Volibear', 'Teemo', 'Katarina' ]"; // what sorcery is this?! IImmutableList champions = JsonConvert.DeserializeObject>(json); Console.WriteLine(champions[0]); // Volibear Assert.AreEqual(3, champions.Count); Assert.AreEqual("Volibear", champions[0]); Assert.AreEqual("Teemo", champions[1]); Assert.AreEqual("Katarina", champions[2]); Console.WriteLine("Deserialized immutable list:"); Console.WriteLine(string.Join(", ", champions)); } #endregion #region Array [Test] public void SerializeArray() { ImmutableArray l = ImmutableArray.CreateRange(new List { "One", "II", "3" }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ ""One"", ""II"", ""3"" ]", json); } [Test] public void DeserializeArray() { string json = @"[ ""One"", ""II"", ""3"" ]"; ImmutableArray l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Length); Assert.AreEqual("One", l[0]); Assert.AreEqual("II", l[1]); Assert.AreEqual("3", l[2]); } [Test] public void SerializeDefaultArray() { ExceptionAssert.Throws( () => JsonConvert.SerializeObject(default(ImmutableArray), Formatting.Indented), "This operation cannot be performed on a default instance of ImmutableArray. Consider initializing the array, or checking the ImmutableArray.IsDefault property."); } #endregion #region Queue [Test] public void SerializeQueue() { ImmutableQueue l = ImmutableQueue.CreateRange(new List { "One", "II", "3" }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ ""One"", ""II"", ""3"" ]", json); } [Test] public void DeserializeQueue() { string json = @"[ ""One"", ""II"", ""3"" ]"; ImmutableQueue l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count()); Assert.AreEqual("One", l.ElementAt(0)); Assert.AreEqual("II", l.ElementAt(1)); Assert.AreEqual("3", l.ElementAt(2)); } [Test] public void DeserializeQueueInterface() { string json = @"[ ""One"", ""II"", ""3"" ]"; IImmutableQueue l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count()); Assert.AreEqual("One", l.ElementAt(0)); Assert.AreEqual("II", l.ElementAt(1)); Assert.AreEqual("3", l.ElementAt(2)); } #endregion #region Stack [Test] public void SerializeStack() { ImmutableStack l = ImmutableStack.CreateRange(new List { "One", "II", "3" }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ ""3"", ""II"", ""One"" ]", json); } [Test] public void DeserializeStack() { string json = @"[ ""One"", ""II"", ""3"" ]"; ImmutableStack l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count()); Assert.AreEqual("3", l.ElementAt(0)); Assert.AreEqual("II", l.ElementAt(1)); Assert.AreEqual("One", l.ElementAt(2)); } [Test] public void DeserializeStackInterface() { string json = @"[ ""One"", ""II"", ""3"" ]"; IImmutableStack l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count()); Assert.AreEqual("3", l.ElementAt(0)); Assert.AreEqual("II", l.ElementAt(1)); Assert.AreEqual("One", l.ElementAt(2)); } #endregion #region HashSet [Test] public void SerializeHashSet() { ImmutableHashSet l = ImmutableHashSet.CreateRange(new List { "One", "II", "3" }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); JArray a = JArray.Parse(json); Assert.AreEqual(3, a.Count); Assert.IsTrue(a.Any(t => t.DeepEquals("One"))); Assert.IsTrue(a.Any(t => t.DeepEquals("II"))); Assert.IsTrue(a.Any(t => t.DeepEquals("3"))); } [Test] public void DeserializeHashSet() { string json = @"[ ""One"", ""II"", ""3"" ]"; ImmutableHashSet l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count()); Assert.IsTrue(l.Contains("3")); Assert.IsTrue(l.Contains("II")); Assert.IsTrue(l.Contains("One")); } [Test] public void DeserializeHashSetInterface() { string json = @"[ ""One"", ""II"", ""3"" ]"; IImmutableSet l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count()); Assert.IsTrue(l.Contains("3")); Assert.IsTrue(l.Contains("II")); Assert.IsTrue(l.Contains("One")); } #endregion #region SortedSet [Test] public void SerializeSortedSet() { ImmutableSortedSet l = ImmutableSortedSet.CreateRange(new List { "One", "II", "3" }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"[ ""3"", ""II"", ""One"" ]", json); } [Test] public void DeserializeSortedSet() { string json = @"[ ""One"", ""II"", ""3"" ]"; ImmutableSortedSet l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count()); Assert.IsTrue(l.Contains("3")); Assert.IsTrue(l.Contains("II")); Assert.IsTrue(l.Contains("One")); } #endregion #region Dictionary [Test] public void SerializeDictionary() { ImmutableDictionary l = ImmutableDictionary.CreateRange(new Dictionary { { 1, "One" }, { 2, "II" }, { 3, "3" } }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); JObject a = JObject.Parse(json); Assert.AreEqual(3, a.Count); Assert.AreEqual("One", (string)a["1"]); Assert.AreEqual("II", (string)a["2"]); Assert.AreEqual("3", (string)a["3"]); } [Test] public void DeserializeDictionary() { string json = @"{ ""1"": ""One"", ""2"": ""II"", ""3"": ""3"" }"; ImmutableDictionary l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count); Assert.AreEqual("One", l[1]); Assert.AreEqual("II", l[2]); Assert.AreEqual("3", l[3]); } [Test] public void DeserializeDictionaryInterface() { string json = @"{ ""1"": ""One"", ""2"": ""II"", ""3"": ""3"" }"; IImmutableDictionary l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count); Assert.AreEqual("One", l[1]); Assert.AreEqual("II", l[2]); Assert.AreEqual("3", l[3]); } #endregion #region SortedDictionary [Test] public void SerializeSortedDictionary() { ImmutableSortedDictionary l = ImmutableSortedDictionary.CreateRange(new SortedDictionary { { 1, "One" }, { 2, "II" }, { 3, "3" } }); string json = JsonConvert.SerializeObject(l, Formatting.Indented); StringAssert.AreEqual(@"{ ""1"": ""One"", ""2"": ""II"", ""3"": ""3"" }", json); } [Test] public void DeserializeSortedDictionary() { string json = @"{ ""1"": ""One"", ""2"": ""II"", ""3"": ""3"" }"; ImmutableSortedDictionary l = JsonConvert.DeserializeObject>(json); Assert.AreEqual(3, l.Count); Assert.AreEqual("One", l[1]); Assert.AreEqual("II", l[2]); Assert.AreEqual("3", l[3]); } #endregion } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Serialization/SerializationEventAttributeTests.cs0000664000175000017500000004765012454416117034245 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Reflection; using System.Runtime.Serialization; using System.Text; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests.Serialization { [TestFixture] public class SerializationEventAttributeTests : TestFixtureBase { [Test] public void ObjectEvents() { SerializationEventTestObject[] objs = new[] { new SerializationEventTestObject(), new DerivedSerializationEventTestObject() }; foreach (SerializationEventTestObject current in objs) { SerializationEventTestObject obj = current; Assert.AreEqual(11, obj.Member1); Assert.AreEqual("Hello World!", obj.Member2); Assert.AreEqual("This is a nonserialized value", obj.Member3); Assert.AreEqual(null, obj.Member4); Assert.AreEqual(null, obj.Member5); string json = JsonConvert.SerializeObject(obj, Formatting.Indented); StringAssert.AreEqual(@"{ ""Member1"": 11, ""Member2"": ""This value went into the data file during serialization."", ""Member4"": null }", json); Assert.AreEqual(11, obj.Member1); Assert.AreEqual("This value was reset after serialization.", obj.Member2); Assert.AreEqual("This is a nonserialized value", obj.Member3); Assert.AreEqual(null, obj.Member4); string expectedError = String.Format("Error message for member Member6 = Error getting value from 'Member6' on '{0}'.", obj.GetType().FullName); Assert.AreEqual(expectedError, obj.Member5); JObject o = JObject.Parse(@"{ ""Member1"": 11, ""Member2"": ""This value went into the data file during serialization."", ""Member4"": null }"); o["Member6"] = "Dummy text for error"; obj = (SerializationEventTestObject)JsonConvert.DeserializeObject(o.ToString(), obj.GetType()); Assert.AreEqual(11, obj.Member1); Assert.AreEqual("This value went into the data file during serialization.", obj.Member2); Assert.AreEqual("This value was set during deserialization", obj.Member3); Assert.AreEqual("This value was set after deserialization.", obj.Member4); expectedError = String.Format("Error message for member Member6 = Error setting value to 'Member6' on '{0}'.", obj.GetType()); Assert.AreEqual(expectedError, obj.Member5); DerivedSerializationEventTestObject derivedObj = obj as DerivedSerializationEventTestObject; if (derivedObj != null) Assert.AreEqual("This value was set after deserialization.", derivedObj.Member7); } } [Test] public void ObjectWithConstructorEvents() { SerializationEventTestObjectWithConstructor obj = new SerializationEventTestObjectWithConstructor(11, "Hello World!", null); Assert.AreEqual(11, obj.Member1); Assert.AreEqual("Hello World!", obj.Member2); Assert.AreEqual("This is a nonserialized value", obj.Member3); Assert.AreEqual(null, obj.Member4); string json = JsonConvert.SerializeObject(obj, Formatting.Indented); StringAssert.AreEqual(@"{ ""Member1"": 11, ""Member2"": ""This value went into the data file during serialization."", ""Member4"": null }", json); Assert.AreEqual(11, obj.Member1); Assert.AreEqual("This value was reset after serialization.", obj.Member2); Assert.AreEqual("This is a nonserialized value", obj.Member3); Assert.AreEqual(null, obj.Member4); obj = JsonConvert.DeserializeObject(json); Assert.AreEqual(11, obj.Member1); Assert.AreEqual("This value went into the data file during serialization.", obj.Member2); Assert.AreEqual("This value was set during deserialization", obj.Member3); Assert.AreEqual("This value was set after deserialization.", obj.Member4); } [Test] public void ListEvents() { SerializationEventTestList obj = new SerializationEventTestList { 1.1m, 2.222222222m, int.MaxValue, Convert.ToDecimal(Math.PI) }; Assert.AreEqual(11, obj.Member1); Assert.AreEqual("Hello World!", obj.Member2); Assert.AreEqual("This is a nonserialized value", obj.Member3); Assert.AreEqual(null, obj.Member4); string json = JsonConvert.SerializeObject(obj, Formatting.Indented); StringAssert.AreEqual(@"[ -1.0, 1.1, 2.222222222, 2147483647.0, 3.14159265358979 ]", json); Assert.AreEqual(11, obj.Member1); Assert.AreEqual("This value was reset after serialization.", obj.Member2); Assert.AreEqual("This is a nonserialized value", obj.Member3); Assert.AreEqual(null, obj.Member4); obj = JsonConvert.DeserializeObject(json); Assert.AreEqual(11, obj.Member1); Assert.AreEqual("Hello World!", obj.Member2); Assert.AreEqual("This value was set during deserialization", obj.Member3); Assert.AreEqual("This value was set after deserialization.", obj.Member4); } [Test] public void DictionaryEvents() { SerializationEventTestDictionary obj = new SerializationEventTestDictionary { { 1.1m, "first" }, { 2.222222222m, "second" }, { int.MaxValue, "third" }, { Convert.ToDecimal(Math.PI), "fourth" } }; Assert.AreEqual(11, obj.Member1); Assert.AreEqual("Hello World!", obj.Member2); Assert.AreEqual("This is a nonserialized value", obj.Member3); Assert.AreEqual(null, obj.Member4); string json = JsonConvert.SerializeObject(obj, Formatting.Indented); StringAssert.AreEqual(@"{ ""1.1"": ""first"", ""2.222222222"": ""second"", ""2147483647"": ""third"", ""3.14159265358979"": ""fourth"", ""79228162514264337593543950335"": ""Inserted on serializing"" }", json); Assert.AreEqual(11, obj.Member1); Assert.AreEqual("This value was reset after serialization.", obj.Member2); Assert.AreEqual("This is a nonserialized value", obj.Member3); Assert.AreEqual(null, obj.Member4); obj = JsonConvert.DeserializeObject(json); Assert.AreEqual(11, obj.Member1); Assert.AreEqual("Hello World!", obj.Member2); Assert.AreEqual("This value was set during deserialization", obj.Member3); Assert.AreEqual("This value was set after deserialization.", obj.Member4); } [Test] public void ObjectEventsDocumentationExample() { SerializationEventTestObject obj = new SerializationEventTestObject(); Console.WriteLine(obj.Member1); // 11 Console.WriteLine(obj.Member2); // Hello World! Console.WriteLine(obj.Member3); // This is a nonserialized value Console.WriteLine(obj.Member4); // null Console.WriteLine(obj.Member5); // null string json = JsonConvert.SerializeObject(obj, Formatting.Indented); // { // "Member1": 11, // "Member2": "This value went into the data file during serialization.", // "Member4": null // } Console.WriteLine(obj.Member1); // 11 Console.WriteLine(obj.Member2); // This value was reset after serialization. Console.WriteLine(obj.Member3); // This is a nonserialized value Console.WriteLine(obj.Member4); // null Console.WriteLine(obj.Member5); // Error message for member Member6 = Exception has been thrown by the target of an invocation. obj = JsonConvert.DeserializeObject(json); Console.WriteLine(obj.Member1); // 11 Console.WriteLine(obj.Member2); // This value went into the data file during serialization. Console.WriteLine(obj.Member3); // This value was set during deserialization Console.WriteLine(obj.Member4); // This value was set after deserialization. } public class SerializationEventBaseTestObject { public string TestMember { get; set; } [OnSerializing] internal void OnSerializingMethod(StreamingContext context) { TestMember = "Set!"; } } public class SerializationEventContextSubClassTestObject : SerializationEventBaseTestObject { } [Test] public void SerializationEventContextTestObjectSubClassTest() { SerializationEventContextSubClassTestObject obj = new SerializationEventContextSubClassTestObject(); string json = JsonConvert.SerializeObject(obj, Formatting.Indented); StringAssert.AreEqual(@"{ ""TestMember"": ""Set!"" }", json); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) public class SerializationEventContextTestObject { public string TestMember { get; set; } [OnSerializing] internal void OnSerializingMethod(StreamingContext context) { TestMember = context.State + " " + context.Context; } } [Test] public void SerializationEventContextTest() { SerializationEventContextTestObject value = new SerializationEventContextTestObject(); string json = JsonConvert.SerializeObject(value, Formatting.Indented, new JsonSerializerSettings { Context = new StreamingContext( StreamingContextStates.Remoting, "ContextValue") }); StringAssert.AreEqual(@"{ ""TestMember"": ""Remoting ContextValue"" }", json); } #endif #if !(PORTABLE || ASPNETCORE50) public void WhenSerializationErrorDetectedBySerializer_ThenCallbackIsCalled() { // Verify contract is properly finding our callback var resolver = new DefaultContractResolver().ResolveContract(typeof(FooEvent)); #pragma warning disable 612,618 Debug.Assert(resolver.OnError != null); Debug.Assert(resolver.OnError == typeof(FooEvent).GetMethod("OnError", BindingFlags.Instance | BindingFlags.NonPublic)); #pragma warning restore 612,618 var serializer = JsonSerializer.Create(new JsonSerializerSettings { // If I don't specify Error here, the callback isn't called // either, but no exception is thrown. MissingMemberHandling = MissingMemberHandling.Error, }); // This throws with missing member exception, rather than calling my callback. var foo = serializer.Deserialize(new JsonTextReader(new StringReader("{ Id: 25 }"))); // When fixed, this would pass. Debug.Assert(foo.Identifier == 25); } #endif public class FooEvent { public int Identifier { get; set; } [OnError] private void OnError(StreamingContext context, ErrorContext error) { Identifier = 25; // Here we could for example manually copy the // persisted "Id" value into the renamed "Identifier" // property, etc. error.Handled = true; // We never get here :( Console.WriteLine("Error has been fixed"); } } [Test] public void DerivedSerializationEvents() { var c = JsonConvert.DeserializeObject("{}"); JsonConvert.SerializeObject(c, Formatting.Indented); IList e = c.GetEvents(); StringAssert.AreEqual(@"OnDeserializing OnDeserializing_Derived OnDeserialized OnDeserialized_Derived OnSerializing OnSerializing_Derived OnSerialized OnSerialized_Derived", string.Join(Environment.NewLine, e.ToArray())); } [Test] public void DerivedDerivedSerializationEvents() { var c = JsonConvert.DeserializeObject("{}"); JsonConvert.SerializeObject(c, Formatting.Indented); IList e = c.GetEvents(); StringAssert.AreEqual(@"OnDeserializing OnDeserializing_Derived OnDeserializing_Derived_Derived OnDeserialized OnDeserialized_Derived OnDeserialized_Derived_Derived OnSerializing OnSerializing_Derived OnSerializing_Derived_Derived OnSerialized OnSerialized_Derived OnSerialized_Derived_Derived", string.Join(Environment.NewLine, e.ToArray())); } #if !(NET20) [Test] public void DerivedDerivedSerializationEvents_DataContractSerializer() { string xml = @""; DataContractSerializer ss = new DataContractSerializer(typeof(DerivedDerivedSerializationEventOrderTestObject)); DerivedDerivedSerializationEventOrderTestObject c = (DerivedDerivedSerializationEventOrderTestObject)ss.ReadObject(new MemoryStream(Encoding.UTF8.GetBytes(xml))); MemoryStream ms = new MemoryStream(); ss.WriteObject(ms, c); IList e = c.GetEvents(); StringAssert.AreEqual(@"OnDeserializing OnDeserializing_Derived OnDeserializing_Derived_Derived OnDeserialized OnDeserialized_Derived OnDeserialized_Derived_Derived OnSerializing OnSerializing_Derived OnSerializing_Derived_Derived OnSerialized OnSerialized_Derived OnSerialized_Derived_Derived", string.Join(Environment.NewLine, e.ToArray())); } #endif [Test] public void NoStreamingContextParameter() { ExportPostData d = new ExportPostData { user = "user!", contract = new Contract { contractName = "name!" } }; ExceptionAssert.Throws(() => JsonConvert.SerializeObject(d, Formatting.Indented), "Serialization Callback 'Void Deserialized()' in type 'Newtonsoft.Json.Tests.Serialization.Contract' must have a single parameter of type 'System.Runtime.Serialization.StreamingContext'."); } } public class SerializationEventOrderTestObject { protected IList Events { get; private set; } public SerializationEventOrderTestObject() { Events = new List(); } public IList GetEvents() { return Events; } [OnSerializing] internal void OnSerializingMethod(StreamingContext context) { Events.Add("OnSerializing"); } [OnSerialized] internal void OnSerializedMethod(StreamingContext context) { Events.Add("OnSerialized"); } [OnDeserializing] internal void OnDeserializingMethod(StreamingContext context) { Events.Add("OnDeserializing"); } [OnDeserialized] internal void OnDeserializedMethod(StreamingContext context) { Events.Add("OnDeserialized"); } } public class DerivedSerializationEventOrderTestObject : SerializationEventOrderTestObject { [OnSerializing] internal new void OnSerializingMethod(StreamingContext context) { Events.Add("OnSerializing_Derived"); } [OnSerialized] internal new void OnSerializedMethod(StreamingContext context) { Events.Add("OnSerialized_Derived"); } [OnDeserializing] internal new void OnDeserializingMethod(StreamingContext context) { Events.Add("OnDeserializing_Derived"); } [OnDeserialized] internal new void OnDeserializedMethod(StreamingContext context) { Events.Add("OnDeserialized_Derived"); } } public class DerivedDerivedSerializationEventOrderTestObject : DerivedSerializationEventOrderTestObject { [OnSerializing] internal new void OnSerializingMethod(StreamingContext context) { Events.Add("OnSerializing_Derived_Derived"); } [OnSerialized] internal new void OnSerializedMethod(StreamingContext context) { Events.Add("OnSerialized_Derived_Derived"); } [OnDeserializing] internal new void OnDeserializingMethod(StreamingContext context) { Events.Add("OnDeserializing_Derived_Derived"); } [OnDeserialized] internal new void OnDeserializedMethod(StreamingContext context) { Events.Add("OnDeserialized_Derived_Derived"); } } public class ExportPostData { public Contract contract { get; set; } public bool includeSubItems { get; set; } public string user { get; set; } public string[] projects { get; set; } } public class Contract { public string _id { get; set; } public string contractName { get; set; } public string contractNumber { get; set; } public string updatedBy { get; set; } public DateTime updated_at { get; set; } private bool _onDeserializedCalled; public bool GetOnDeserializedCalled() { return _onDeserializedCalled; } [OnDeserialized] internal void Deserialized() { _onDeserializedCalled = true; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/bunny_pancake.jpg0000664000175000017500000004406212454416117025664 0ustar directhexdirecthexJFIFddDuckyAdobed   #%'%#//33//@@@@@@@@@@@@@@@&&0##0+.'''.+550055@@?@@@@@@@@@@@@,"!1AQ"aq2BRb#r3񂒲Cc$S4D&!1AQaq"2B ?nbKzFpe-@Ӷ٪.^"4$q_Lsfï!4=SYcZcX;_:O[Aom*qsr}k:Fe%m=‚hZdiQ{(t+ *2 S kLpUM)ifsrM^KnCvoQ9SQ ;c*^PtFqd4LWѓ{jxvqY-*A"(/X}T榵>oX0-zṶXӈZ* @Ε *i^6!F ?+6: oaZ{n < c,*;zM!j=BwxYS5z+vm[-\j*#mO?.^unɘsVK ˟}ɏe]K7`RlNPE~c9O1vt k?Ռhi ڜh_~Q&:ΨнIE>_bVܝRÏm(yzG%]"Vob|ؘYR6JagRAm@eKln8e@ tD4"ڀ<8$p[l[M8ԅ;h#/lɴCo!ԽM mY¤kqRd+70*{|3F׾K[0 31J.>-1RK]Ztq177=,xyj$VU.߻IC-P7>XnP jۭ@lb{`q)xQZC}nuolwY6Rx*#2br1Sٵ1n*ڪɊcwۀ ,B֚U5\+~N-3Siy!bˆ4o-(׮? N}l.ov >~5sjVЍOWgfhw_iV\. WGtmcio˳o¨<=~uvA^2.0? 5qǝ럍_ۯ/Qn׈`j/\/n.۱ip]p^g7b?2ߎ4taspyXvv^,ج5A7ʰS\ {iU m^5!mS;}C9'PNHֽ~,Fft}3ڿjw H`qu6.pu+Cs*ܷ۵ek-(!\1#5igU K]`&6)bφT<_սcpjۋL2spnF:UOZ;Mz[8Eg^X[;ch'g@khR|d*/(,|[<(^mYuTcMY"}xYM/,^EyWMR1ҋ7\l|I .,`<{%EK/};`)ogm[mӘ:9W;g#n, (<:rV/غS=B0T)fiv.:Np4w-{b۫[uqeVV6Λv@4Z6/j, T8¬n{ `&o{qv}::U\i?Y0]7CKwnF,ajs[۪T0&; %-}&ͯ+\c7;[Zmj B߹en۵8em[zۗN%L4Cz墖!.eP经=f_򪆑5`UvTB6qSqjՅ=vط:2 V#)T5+ ,xW"#4@Δ,2MT}fSWpyս쬎m4['mkE]ˍ!DƵ 6 6I9q`1m"Ŧ>bD[S8j&N-ʹoF; Y/f:fn]qus >Q]cmUSuw(M+^F[x?e̗ųjlu0=iW/n ~cUlv{s"WUwQY/^䵺ivajE$WR :c8yKm5p{5A,JONT%Aqzg̷[&-P3Nzz V̭OR^q[+V+(, rCIwU; 92ŻZlKZq5֮(, 1F6j(*J=5?l}GF,xkg,ه^uΥҡÑRhW{V W}E%7r:I:Ι]6mm4r2HE6<ޝMwgeKbݽJ\T§urVZ+(`aePpа/-ceA76Es+ᑩzս:|FN76oniShh QH ۷{PC4f\H pjp˒@s^|q *Irۥ뭜tkid3_T;Kvm3ǾJu*D7gmI|4ҁ0QeN,d)Q D*(<u"03a-:yRr9UQ!a 2N|k<#@843BI0~u`фBvaJBIޞ5Nx]8Մ92WieH3Q>2ie<ƋaI$g9/i;v46)+cHOVkdCn$dzou2n:Xյ7B-t֪Dmj>:GuB=M*n-Ћ#Kfaw\` a>Fw{6Ƽ)K֝RO즋6< "1ΛQS]HE۶^L:#nڴlW^?=w4bzMU}F"k;=57BmX~^c}D^c~ܜ!?eom5!l oԲyr5~lb1x3OwTIao!7-f4 rj|6,nͽ{qlS:.TmnYV ſM HR7kv"!K.8>nؙIaŻAb:=ܧXuo-YSQF."ի[gBY1gNq.^iH`,|%w77ob0 *2唻*mClB_rvE,D6#]ctqGrL7o*^8R՗]F(t)9;i`STaP|((„R5cA𵳰k lګTW $sm-j&4,crb8>|H^Q݈iUIfB+N+54$qʄ[#L^CH`1J5 f>fI͞cR3vᷱ[-m۾@dgnk KqK@N^K}a =ׯl/5ͫ 8g(-{u%iV/߿yt 9/n<$!*{==$\B*EړFkfKsng>zr"^dxԉ\CٍSJVW(X+SfWo=afq+}bni3/vd]\'=  j!nfݣ84'X2LhFfw_;v3Z67\A'YVMU}X*#~ѹdhV,Fyʈ1N'mL>4OIv-X;ѽb.'] }z-_شIcƼ+j|^wGs;-1kr1fF W@pơ*)20a=KWCjUz[<(lS)FPs"-h4p>R ^@̇qdA1X0/uf0?Qb0HRJO*1y7%z~7wNFlxUY%Fb~5pƛxHǹq|Yn[6S _+BHY7U@E',+Oct=u)|+U6&Γ./լplZGA.F)j.a@='Egcpa~f`pSU \ 'PI8K p Y]xmp`34{vTϟ뗖UY$ghMcRuHQ<(΀qػB=-UbkgiKeVv*z져w|b{mv8Qr0O_N~^v]OLI!u{ ʪ&=9hU9QsED* 3 *Ŵ?^@UPQ(ĚͭAytZUH*HDm^47 Ռ[n?mvC$tV,9SE)9ou&{9::bn@wcDm(8j!q5KҜhIfНv,BЎ\Y dj$Uu#^]+ecNNEcEXً1Ml!U_Dj>WV`|NU"#m4J(Nk/j8zess $moX% qZ ΢ݒXΝqK 4 Mko5+{qu sv~˨6, S&m6kdsdjE$V=Ŝ|+FPcXEjۥefip3.59~`"`,TT0U]A]~\RЅb$ ةk{Ԙ,9LPyRrϗ:LGP8SQzFz\kWgxW1v.F^E15,8{{W7B(D e v%z&\1uQ={DVL;A(JmæT]\T`jwu6.!dVr5aT"Ф 3BC4`MNTɩ#:={\N s~5_m`K@̚}dmYݻbpՋ 3QN5'29^v;ES)8L5k>+3K k{3ƵL7DxH+I- `Ïe'up̐{ҋ/۸,!vT6l˪ܬTi[9^an}4RfˍҗoʣW¢Λ0+=Au鞍#mp 4 O+JMUa)ki'v*=duv\BwXTF{h kݺ{g vϨ űr%i0< b_t >p5 >S Aa#P:W>u)gZe`Nb=qt&8{j,K3NL+t,Б(u~x&׬7`#7wI=Jwx/,LVvzۅvٚ뷳Pt͏ɏm3?:G9Ja[6?ȃ}R&z ޼i1 0IӌO m$#8Ӝk#-T8 <[CP& TUd~4`>J]U$*A r8]smh\K7.dXHQOvt"ڻ P 0u MUKSEi޴@%5s'YYUV‚1R˕5:p`&iy- f28Q"=aˌF8@4-ŠЃ#tn"i,"fK.φFZ@lG CyUTY!;{\q9a5sv- N5AǾ0[@yEHg=]#E1^5('qZcJlLf:K kzf͐pM31m"Gj*Gꟶ#O|V64T<jKh!!݌JxEprfcN#~-h,džc@A8:|K83M ˁvC_3b8a϶г5 %]b%,>AE\X"wë ?wLdb+GoРXv.nmQRQuntlu!uEX۳ Sw7tsw¦̬c}Cr[m8ϰ*syd VmĞӅ14?QhF, TķrD Oz9AJ2A}[Ӵ < H}eN5jR=#`vm n *ضfx tɊ4#m$aftlq!#q21,Xkq $x {HII j40H/qG@ +YpGQi{VI`IUinXĩ?V>fT pEIh4Y}bCL=Lg 1Q MBGM#FQkk pepVki]:4euhT/H 2$CC{4,8!`VPm,u&;Dh:J8PƖңH C9O*B.` /N83Pg0q"m #xU+˟ƞm$$Ju\u-3 cnJ8GL e8Nr7d1 :/\D|kmJFsr̈́ofY48p3ii\[I)3H$$`0 H-ae:B{^ChKW 2'Gh6}Al "!SVnykbxiضh]C Hsz{1uɈ ?]..Ȃ0ӯLEJ"2ң::*Z&Ja&SMNqrϖF؈Gu#/ [[7l;2)?0mkN@ :.Cu]`'A6!L4V4` Ӭ&M 9Sl+EOcq]#ڭPRT 9R/ey3Ok1}&Yp៲oqfi禔Md$Þ5["Nkl!gtV\9`~5=bt\c1úyj4=2T]D+Dx\b4%R9kvYCm!Ǿ70bN0³+t7*J24԰3ʡ+4dsK񥼞85 A<*5c>te9LpzXgj|z#+_e-&€}e,rVR.æCsU;@!˄ T7S7 qn#7k/$5ӘU[S2E^w*5Z;ZBuqi7ǧݲJK­Xoyfݑ/{skh@'SǶ0k;mO u)e,ē9^ծ|]1i͎6qsml]!gk89NܾQwTESݰv37dSolq˯4l¤2~t MhwLK[3i {Aԙj_a 'Ѳnn;\Ӽcy"%,ሠ "Mq|l# VҌ$ԯ0 u8˪[Uwڀ8|=Skf5]c@np;VsŘwX!qefV [A$b`I (&f Ͼ5F^h|֕GMomhN'ڶKi_03ZW9ίv>8Uqw7 zL*wMsr(\[\Z5M^|XPar lZ"chS^/dkE&Y.R$F9]%oוq-f[T'~ҟ"hF8՟ nڶp⬯PoM;,:]#u-,8[cPl䌺c'!(v;i(ERfdN 7;0~vˊX(䈘VuD s*鷻bI g [9ՏN_ ǿ3 CoD112',낓!3,O ȠÍVY$\*iwsaM9~Tu(@iUct204kBCD=$.9" ӼѧRȓ$r,I8j |-<)z RGYCԠ/1Шz,<@VFY Uۤ!#aʑqj& %Xe=Ιrͦ`c:C0 RϾnb@dK.&-YWڧ4A3AW.;2@͑qWSfν+Zv`Mz%g"y״*V\|@8Vm&GrHK_w{|9G]Y֝OMв2ӑmlĘԋ!11F"pN=:ZFx*i#|*$hi%G1N!Ž' U1|LfZVy4ùt$(=>.2xQ#YYaY gkllZ80 )薼ο+)ⴛ:p3MRۋmpBZ NrifU˴*qN22iqXQ)*uܿ3GW9(ݔN.aihF s[q? c&˪>8U3JY|-3yKh' j2 lͽjpՐ>:p,8Vl뙈!s OO)fC A'yS-'ŗIbO:buWiݳ m<}o{q-%L>8"%Sa2⧘K P=C.MԽae;!X 1:2 ^.$`0a@Ǎ9uJe'8濾1Cx}j Τ8cDTL"jةFc)ʆxQTJm0 J)Ӌi ыt? S I6BӐF9ŗ0ju j.\$r5e-.ϟa߸"Aw@g/gLIQiv9 U; gʪ>05ZZwhww³p,߼:MƵ4+50&(94J5,yn6n&jqΟ?]Bwff߁u vvW yף\/y!8"f/=]@nݫrR=+t͢ hy0u%{j˧s.&yONMն[[&3iԟsio8wWnbW}EX5kY[?J۱.NUd* ]t6.[SL3,ʕs}ڑoYk@[sUPlqoNsssHAKv&-A\tىLm$H՘PܲZ5xxBuСcBm5YʎV0n jn:8Sn_QKALbpN q1WS<|;U!vX"a.ݢ 0" U|($p$dz x3'CtNWaZe|84bޛN4׸xV+q28򃁤UO-۾C[=J1'$p(_o~ڬfo" ?]LG&z_[S +n# Y-o7HxZ1AηV^L9ʤnb#804#ηHDh؃t>4krI K)1Er j叾ZGp~M$uw NTs5aw!`&2yf\ZT{敝3]"'{)mxTAO5q'Z$n'XGnʍ/fb>ss3"ٰ@Ҥϝ9#q|^B;<fDkmXaH{\<_RR[W$hUhwquSVm٫Mn}.[l\pxH[77w_ֶ-=r6TDܱRڮ\ Z:t8ңڪ9 Wtjf1gǑ'/z8 ^*%fw1'V̪hV8jtF1p<5|G(l :mS9эq|)]z>ap.Ri 6iW4y}q.F㧻 < Nu&g ]9c>VKo,of ,r4Q1wLoj]O qbVO j;y7k#n$bW q.4I*L85zF.?}~N+\L>+{Kd5ck1g,gcdѧ͟g/2v7 SYZ6mu`\U2T}Wu~ZN]mnX"'U(BoHeܛ\Ƌ\L!ӝYl^`J:L2o7'm8}F3?pgchk6m.ڄ4FϒЦ2D1&zx\m3FIR8IT\1שj1OmSWNF=(׮\w)q.#oHnNcT˛e#1+ U5Cj?U >z&2᧲ƸwsPcg⯙iૡ3_cꌣC淕>3vS=}{\$t{[DkSϫG=> Qۣm~Sڼ:+On҂%l#XD-8fw?5ty8ՇGOT6?OWuv=oy|Zb5dJbIǷI_;?:"DEg_newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Package.appxmanifest0000664000175000017500000000320412454416117026312 0ustar directhexdirecthex Newtonsoft.Json.Tests.WinRT James Images\UnitTestStoreLogo.png Newtonsoft.Json.Tests.WinRT 6.2 6.2 newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/0000775000175000017500000000000012454416117024570 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ListTestClass.cs0000664000175000017500000000310212454416117027654 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject(MemberSerialization.OptIn)] public class ListTestClass { [JsonProperty] public string id { get; set; } [JsonProperty] public List items { get; set; } } [JsonObject(MemberSerialization.OptIn)] public class ListItem { [JsonProperty] public string id { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/JsonIgnoreAttributeOnClassTestClass.cs0000664000175000017500000000335512454416117034177 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject(MemberSerialization.OptIn)] public class JsonIgnoreAttributeOnClassTestClass { private int _property = 21; private int _ignoredProperty = 12; [JsonProperty("TheField")] public int Field; [JsonProperty] public int Property { get { return _property; } } public int IgnoredField; [JsonProperty] [JsonIgnore] // JsonIgnore should take priority public int IgnoredProperty { get { return _ignoredProperty; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/WidgetId1.cs0000664000175000017500000000246212454416117026704 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { [JsonConverter(typeof(WidgetIdJsonConverter))] public struct WidgetId1 { public long Value { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/MethodExecutorObject.cs0000664000175000017500000000254312454416117031211 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class MethodExecutorObject { public string serverClassName; public object[] serverMethodParams; public string clientGetResultFunction; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DirectoryAccount.cs0000664000175000017500000000423512454416117030404 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; using System.Runtime.Serialization; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.TestObjects { public class DirectoryAccount { // normal deserialization public string DisplayName { get; set; } // these properties are set in OnDeserialized public string UserName { get; set; } public string Domain { get; set; } [JsonExtensionData] private IDictionary _additionalData; [OnDeserialized] private void OnDeserialized(StreamingContext context) { // SAMAccountName is not deserialized to any property // and so it is added to the extension data dictionary string samAccountName = (string)_additionalData["SAMAccountName"]; Domain = samAccountName.Split('\\')[0]; UserName = samAccountName.Split('\\')[1]; } public DirectoryAccount() { _additionalData = new Dictionary(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PropertyCase.cs0000664000175000017500000000261712454416117027545 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PropertyCase { public string firstName { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public string lastName { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/JsonIgnoreAttributeTestClass.cs0000664000175000017500000000324712454416117032714 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class JsonIgnoreAttributeTestClass { private int _property = 21; private int _ignoredProperty = 12; public int Field; public int Property { get { return _property; } } [JsonIgnore] public int IgnoredField; [JsonIgnore] public int IgnoredProperty { get { return _ignoredProperty; } } [JsonIgnore] public Product IgnoredObject = new Product(); } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SerializationEventTestDictionary.cs0000664000175000017500000000562412454416117033633 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; using System.Runtime.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { public class SerializationEventTestDictionary : Dictionary { // This member is serialized and deserialized with no change. public int Member1 { get; private set; } // The value of this field is set and reset during and // after serialization. public string Member2 { get; private set; } // This field is not serialized. The OnDeserializedAttribute // is used to set the member value after serialization. public string Member3 { get; private set; } // This field is set to null, but populated after deserialization. public string Member4 { get; private set; } public SerializationEventTestDictionary() { Member1 = 11; Member2 = "Hello World!"; Member3 = "This is a nonserialized value"; Member4 = null; } [OnSerializing] internal void OnSerializingMethod(StreamingContext context) { Member2 = "This value went into the data file during serialization."; Add(decimal.MaxValue, "Inserted on serializing"); } [OnSerialized] internal void OnSerializedMethod(StreamingContext context) { Member2 = "This value was reset after serialization."; } [OnDeserializing] internal void OnDeserializingMethod(StreamingContext context) { Member3 = "This value was set during deserialization"; } [OnDeserialized] internal void OnDeserializedMethod(StreamingContext context) { Member4 = "This value was set after deserialization."; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DoubleClass.cs0000664000175000017500000000240412454416117027317 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class DoubleClass { public double? Height { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PrivateMembersClass.cs0000664000175000017500000000326312454416117031036 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PrivateMembersClass { public PrivateMembersClass(string privateString, string internalString) { _privateString = privateString; _internalString = internalString; } public PrivateMembersClass() { i = default(int); } private string _privateString; private readonly int i; internal string _internalString; public int UseValue() { return i; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ObjectArrayPropertyTest.cs0000664000175000017500000000254512454416117031737 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class ObjectArrayPropertyTest { public string Action { get; set; } public string Method { get; set; } public object[] Data { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/StructTest.cs0000664000175000017500000000257012454416117027247 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public struct StructTest { public string StringProperty { get; set; } public string StringField; public int IntProperty { get; set; } public int IntField; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ClassWithArray.cs0000664000175000017500000000331412454416117030020 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class ClassWithArray { private readonly IList bar; private string foo; public ClassWithArray() { bar = new List() { int.MaxValue }; } [JsonProperty("foo")] public string Foo { get { return foo; } set { foo = value; } } [JsonProperty(PropertyName = "bar")] public IList Bar { get { return bar; } } } }././@LongLink0000644000000000000000000000016700000000000011607 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PublicParametizedConstructorRequiringConverterTestClass.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PublicParametizedConstructorRequiringCon0000664000175000017500000000670312454416117034721 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class NameContainer { public string Value { get; set; } } public class NameContainerConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { NameContainer nameContainer = value as NameContainer; if (nameContainer != null) writer.WriteValue(nameContainer.Value); else writer.WriteNull(); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { NameContainer nameContainer = new NameContainer(); nameContainer.Value = (string)reader.Value; return nameContainer; } public override bool CanConvert(Type objectType) { return objectType == typeof(NameContainer); } } public class PublicParametizedConstructorRequiringConverterTestClass { private readonly NameContainer _nameContainer; public PublicParametizedConstructorRequiringConverterTestClass(NameContainer nameParameter) { _nameContainer = nameParameter; } public NameContainer Name { get { return _nameContainer; } } } public class PublicParametizedConstructorRequiringConverterWithParameterAttributeTestClass { private readonly NameContainer _nameContainer; public PublicParametizedConstructorRequiringConverterWithParameterAttributeTestClass([JsonConverter(typeof(NameContainerConverter))] NameContainer nameParameter) { _nameContainer = nameParameter; } public NameContainer Name { get { return _nameContainer; } } } public class PublicParametizedConstructorRequiringConverterWithPropertyAttributeTestClass { private readonly NameContainer _nameContainer; public PublicParametizedConstructorRequiringConverterWithPropertyAttributeTestClass(NameContainer name) { _nameContainer = name; } [JsonConverter(typeof(NameContainerConverter))] public NameContainer Name { get { return _nameContainer; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/VersionKeyedCollection.cs0000664000175000017500000000474012454416117031547 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Runtime.Serialization; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; namespace Newtonsoft.Json.Tests.TestObjects { public class VersionKeyedCollection : KeyedCollection, IEnumerable { public List Messages { get; set; } public VersionKeyedCollection() { Messages = new List(); } protected override string GetKeyForItem(Person item) { return item.Name; } [OnError] internal void OnErrorMethod(StreamingContext context, ErrorContext errorContext) { Messages.Add(errorContext.Path + " - Error message for member " + errorContext.Member + " = " + errorContext.Error.Message); errorContext.Handled = true; } IEnumerator IEnumerable.GetEnumerator() { for (int i = 0; i < Count; i++) { if (i % 2 == 0) throw new Exception("Index even: " + i); yield return this[i]; } } IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable)this).GetEnumerator(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ConstructorCaseSensitivityClass.cs0000664000175000017500000000307712454416117033510 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class ConstructorCaseSensitivityClass { public string param1 { get; set; } public string Param1 { get; set; } public string Param2 { get; set; } public ConstructorCaseSensitivityClass(string param1, string Param1, string param2) { this.param1 = param1; this.Param1 = Param1; Param2 = param2; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/GetOnlyPropertyClass.cs0000664000175000017500000000256112454416117031237 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class GetOnlyPropertyClass { public string Field = "Field"; public string GetOnlyProperty { get { return "GetOnlyProperty"; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Aa.cs0000664000175000017500000000235012454416117025440 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { internal class Aa { public int no; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Name.cs0000664000175000017500000000270612454416117026004 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class Name { public string personsName; public List pNumbers = new List(); public Name(string personsName) { this.personsName = personsName; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/WagePerson.cs0000664000175000017500000000245212454416117027174 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class WagePerson : Person { [JsonProperty] public decimal HourlyWage { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Currency.cs0000664000175000017500000001470212454416117026715 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || NETFX_CORE || ASPNETCORE50) using Microsoft.FSharp.Core; using System; using System.Collections; using System.Diagnostics; using System.Runtime.CompilerServices; namespace Newtonsoft.Json.Tests.TestObjects { [Serializable, DebuggerDisplay("{__DebugDisplay(),nq}"), CompilationMapping(SourceConstructFlags.SumType)] public class Currency { [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal readonly int _tag; [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal static readonly Currency _unique_AUD = new Currency(1); [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal static readonly Currency _unique_EUR = new Currency(4); [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal static readonly Currency _unique_JPY = new Currency(5); [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal static readonly Currency _unique_LocalCurrency = new Currency(0); [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal static readonly Currency _unique_NZD = new Currency(2); [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal static readonly Currency _unique_USD = new Currency(3); [CompilerGenerated, DebuggerNonUserCode] internal Currency(int _tag) { this._tag = _tag; } [CompilerGenerated, DebuggerNonUserCode] internal object __DebugDisplay() { return ExtraTopLevelOperators.PrintFormatToString>(new PrintfFormat, Unit, string, string, string>("%+0.8A")).Invoke(this); } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public static Currency AUD { [CompilationMapping(SourceConstructFlags.UnionCase, 1)] get { return _unique_AUD; } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public static Currency EUR { [CompilationMapping(SourceConstructFlags.UnionCase, 4)] get { return _unique_EUR; } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsAUD { [CompilerGenerated, DebuggerNonUserCode] get { return (this.Tag == 1); } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsEUR { [CompilerGenerated, DebuggerNonUserCode] get { return (this.Tag == 4); } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsJPY { [CompilerGenerated, DebuggerNonUserCode] get { return (this.Tag == 5); } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsLocalCurrency { [CompilerGenerated, DebuggerNonUserCode] get { return (this.Tag == 0); } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsNZD { [CompilerGenerated, DebuggerNonUserCode] get { return (this.Tag == 2); } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsUSD { [CompilerGenerated, DebuggerNonUserCode] get { return (this.Tag == 3); } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public static Currency JPY { [CompilationMapping(SourceConstructFlags.UnionCase, 5)] get { return _unique_JPY; } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public static Currency LocalCurrency { [CompilationMapping(SourceConstructFlags.UnionCase, 0)] get { return _unique_LocalCurrency; } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public static Currency NZD { [CompilationMapping(SourceConstructFlags.UnionCase, 2)] get { return _unique_NZD; } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public int Tag { [CompilerGenerated, DebuggerNonUserCode] get { return this._tag; } } [CompilerGenerated, DebuggerNonUserCode, DebuggerBrowsable(DebuggerBrowsableState.Never)] public static Currency USD { [CompilationMapping(SourceConstructFlags.UnionCase, 3)] get { return _unique_USD; } } public static class Tags { public const int AUD = 1; public const int EUR = 4; public const int JPY = 5; public const int LocalCurrency = 0; public const int NZD = 2; public const int USD = 3; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/NullableGuid.cs0000664000175000017500000000242112454416117027465 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class NullableGuid { public Guid? Id { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/EmployeeReference.cs0000664000175000017500000000254612454416117030524 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject(IsReference = true)] public class EmployeeReference { public string Name { get; set; } public EmployeeReference Manager { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/GameObject.cs0000664000175000017500000000323412454416117027121 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20) using System.Collections.Concurrent; namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject(MemberSerialization.OptIn)] public class GameObject { [JsonProperty] public string Id { get; set; } [JsonProperty] public string Name { get; set; } [JsonProperty] public ConcurrentDictionary Components; public GameObject() { Components = new ConcurrentDictionary(); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ClassAndMemberConverterClass.cs0000664000175000017500000000270012454416117032614 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class ClassAndMemberConverterClass { public ConverterPrecedenceClass DefaultConverter { get; set; } [JsonConverter(typeof(MemberConverterPrecedenceClassConverter))] public ConverterPrecedenceClass MemberConverter { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Component.cs0000664000175000017500000000267012454416117027066 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { #if !(NET35 || NET20) [JsonObject(MemberSerialization.OptIn)] public class Component { [JsonIgnore] // Ignore circular reference public GameObject GameObject { get; set; } public Component() { } } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/CircularReferenceClass.cs0000664000175000017500000000270212454416117031471 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class CircularReferenceClass { [JsonProperty(Required = Required.Always)] public string Name { get; set; } [JsonProperty(NullValueHandling = NullValueHandling.Ignore)] public CircularReferenceClass Child { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DateTimeTestClass.cs0000664000175000017500000000323712454416117030446 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !NET20 using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.TestObjects { public class DateTimeTestClass { public string PreField { get; set; } [DefaultValue("")] [JsonProperty(DefaultValueHandling = DefaultValueHandling.Ignore)] public DateTime DateTimeField { get; set; } public DateTimeOffset DateTimeOffsetField { get; set; } public string PostField { get; set; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SearchResult.cs0000664000175000017500000000252712454416117027531 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class SearchResult { public string Title { get; set; } public string Content { get; set; } public string Url { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DefaultValueAttributeTestClass.cs0000664000175000017500000000302412454416117033211 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.ComponentModel; namespace Newtonsoft.Json.Tests.TestObjects { #if !(NETFX_CORE || ASPNETCORE50) [Description("DefaultValueAttributeTestClass description!")] #endif public sealed class DefaultValueAttributeTestClass { [DefaultValue("TestProperty1Value")] public string TestProperty1 { get; set; } [DefaultValue(21)] public int TestField1; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Event.cs0000664000175000017500000001121312454416117026176 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { /// /// What types of events are there? Just sticking to a basic set of four for now. /// /// public enum EventType { Debug = 0, Info = 1, Warning = 2, Error = 3 } public sealed class Event { /// /// If no current user is specified, returns Nothing (0 from VB) /// /// /// private static int GetCurrentUserId() { return 0; } /// /// Gets either the application path or the current stack trace. /// NOTE: You MUST call this from the top level entry point. Otherwise, /// the stack trace will be buried in Logger itself. /// /// /// private static string GetCurrentSubLocation() { return ""; } private string _sublocation; private int _userId; private EventType _type; private string _summary; private string _details; private string _stackTrace; private string _tag; private DateTime _time; public Event(string summary) { _summary = summary; _time = DateTime.Now; if (_userId == 0) _userId = GetCurrentUserId(); //This call only works at top level for now. //If _stackTrace = Nothing Then _stackTrace = Environment.StackTrace if (_sublocation == null) _sublocation = GetCurrentSubLocation(); } public Event(string sublocation, int userId, EventType type, string summary, string details, string stackTrace, string tag) { _sublocation = sublocation; _userId = userId; _type = type; _summary = summary; _details = details; _stackTrace = stackTrace; _tag = tag; _time = DateTime.Now; if (_userId == 0) _userId = GetCurrentUserId(); //If _stackTrace = Nothing Then _stackTrace = Environment.StackTrace if (_sublocation == null) _sublocation = GetCurrentSubLocation(); } public override string ToString() { return string.Format("{{ sublocation = {0}, userId = {1}, type = {2}, summary = {3}, details = {4}, stackTrace = {5}, tag = {6} }}", _sublocation, _userId, _type, _summary, _details, _stackTrace, _tag); } public string sublocation { get { return _sublocation; } set { _sublocation = value; } } public int userId { get { return _userId; } set { _userId = value; } } public EventType type { get { return _type; } set { _type = value; } } public string summary { get { return _summary; } set { _summary = value; } } public string details { get { return _details; } set { _details = value; } } public string stackTrace { get { return _stackTrace; } set { _stackTrace = value; } } public string tag { get { return _tag; } set { _tag = value; } } public DateTime time { get { return _time; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DecimalTestClass.cs0000664000175000017500000000250312454416117030303 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class DecimalTestClass { public decimal Quantity { get; set; } public double OptionalQuantity { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/IdReferenceResolver.cs0000664000175000017500000000436712454416117031026 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { public class IdReferenceResolver : IReferenceResolver { private readonly IDictionary _people = new Dictionary(); public object ResolveReference(object context, string reference) { Guid id = new Guid(reference); PersonReference p; _people.TryGetValue(id, out p); return p; } public string GetReference(object context, object value) { PersonReference p = (PersonReference)value; _people[p.Id] = p; return p.Id.ToString(); } public bool IsReferenced(object context, object value) { PersonReference p = (PersonReference)value; return _people.ContainsKey(p.Id); } public void AddReference(object context, string reference, object value) { Guid id = new Guid(reference); _people[id] = (PersonReference)value; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Foo.cs0000664000175000017500000000263512454416117025650 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class Foo { public Foo() { Bars = new List(); } [JsonConverter(typeof(ListOfIds))] public List Bars { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/BadJsonPropertyClass.cs0000664000175000017500000000251412454416117031174 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class BadJsonPropertyClass { [JsonProperty("pie")] public string Pie = "Yum"; public string pie = "PieChart!"; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PublicParametizedConstructorTestClass.cs0000664000175000017500000000273712454416117034630 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PublicParametizedConstructorTestClass { private readonly string _name; public PublicParametizedConstructorTestClass(string name) { _name = name; } public string Name { get { return _name; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/MyClass.cs0000664000175000017500000000254412454416117026477 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class MyClass { public int PreProperty { get; set; } //public DateTime DateProperty { get; set; } public int PostProperty { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Person.cs0000664000175000017500000000510012454416117026361 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject(Id = "Person", Title = "Title!", Description = "JsonObjectAttribute description!", MemberSerialization = MemberSerialization.OptIn)] #if !(NETFX_CORE || ASPNETCORE50) [Description("DescriptionAttribute description!")] #endif public class Person { // "John Smith" [JsonProperty] public string Name { get; set; } // "2000-12-15T22:11:03" [JsonProperty] //[JsonConverter(typeof(IsoDateTimeConverter))] public DateTime BirthDate { get; set; } // new Date(976918263055) [JsonProperty] //[JsonConverter(typeof(JavaScriptDateTimeConverter))] public DateTime LastModified { get; set; } // not serialized public string Department { get; set; } } public interface IPerson { string FirstName { get; set; } string LastName { get; set; } DateTime BirthDate { get; set; } } public class Employee : IPerson { public string FirstName { get; set; } public string LastName { get; set; } public DateTime BirthDate { get; set; } public string Department { get; set; } public string JobTitle { get; set; } } public class Manager : Employee { public IList Employees { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SubKlass.cs0000664000175000017500000000255212454416117026652 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class SubKlass : SuperKlass { public string SubProp { get; set; } public SubKlass(string subprop) { SubProp = subprop; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ProductCollection.cs0000664000175000017500000000242112454416117030552 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class ProductCollection : List { } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PersonRaw.cs0000664000175000017500000000376712454416117027054 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.TestObjects { public class PersonRaw { private Guid _internalId; private string _firstName; private string _lastName; private JRaw _rawContent; [JsonIgnore] public Guid InternalId { get { return _internalId; } set { _internalId = value; } } [JsonProperty("first_name")] public string FirstName { get { return _firstName; } set { _firstName = value; } } public JRaw RawContent { get { return _rawContent; } set { _rawContent = value; } } [JsonProperty("last_name")] public string LastName { get { return _lastName; } set { _lastName = value; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/IPrivateImplementationB.cs0000664000175000017500000000242212454416117031652 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public interface IPrivateImplementationB { string PropertyB { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PersonPropertyClass.cs0000664000175000017500000000255712454416117031131 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PersonPropertyClass { public Person Person { get; set; } public PersonPropertyClass() { Person = new WagePerson(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/IntToFloatConverter.cs0000664000175000017500000000335612454416117031041 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class IntToFloatConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(Convert.ToDouble(value)); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { return Convert.ToInt32(reader.Value); } public override bool CanConvert(Type objectType) { return objectType == typeof(int); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/RequiredObject.cs0000664000175000017500000000330212454416117030024 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject(ItemRequired = Required.Always)] public class RequiredObject { public int? NonAttributeProperty { get; set; } [JsonProperty] public int? UnsetProperty { get; set; } [JsonProperty(Required = Required.Default)] public int? DefaultProperty { get; set; } [JsonProperty(Required = Required.AllowNull)] public int? AllowNullProperty { get; set; } [JsonProperty(Required = Required.Always)] public int? AlwaysProperty { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Widget1.cs0000664000175000017500000000240212454416117026421 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class Widget1 { public WidgetId1? Id { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/WidgetIdJsonConverter.cs0000664000175000017500000000366312454416117031351 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class WidgetIdJsonConverter : JsonConverter { public override bool CanConvert(Type objectType) { return objectType == typeof(WidgetId1) || objectType == typeof(WidgetId1?); } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { WidgetId1 id = (WidgetId1)value; writer.WriteValue(id.Value.ToString()); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; return new WidgetId1 { Value = int.Parse(reader.Value.ToString()) }; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/TestObject.cs0000664000175000017500000000272512454416117027173 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class TestObject { public TestObject() { } public TestObject(string name, byte[] data) { Name = name; Data = data; } public string Name { get; set; } public byte[] Data { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Widget.cs0000664000175000017500000000240012454416117026336 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class Widget { public WidgetId? Id { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Event1.cs0000664000175000017500000000301112454416117026254 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Converters; namespace Newtonsoft.Json.Tests.TestObjects { public class Event1 { public string EventName { get; set; } public string Venue { get; set; } [JsonProperty(ItemConverterType = typeof(JavaScriptDateTimeConverter))] public IList Performances { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ConverterPrecedenceClassConverter.cs0000664000175000017500000000463012454416117033725 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests.TestObjects { public abstract class ConverterPrecedenceClassConverter : JsonConverter { public abstract string ConverterType { get; } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { ConverterPrecedenceClass c = (ConverterPrecedenceClass)value; JToken j = new JArray(ConverterType, c.TestValue); j.WriteTo(writer); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { JToken j = JArray.Load(reader); string converter = (string)j[0]; if (converter != ConverterType) throw new Exception(StringUtils.FormatWith("Serialize converter {0} and deserialize converter {1} do not match.", CultureInfo.InvariantCulture, converter, ConverterType)); string testValue = (string)j[1]; return new ConverterPrecedenceClass(testValue); } public override bool CanConvert(Type objectType) { return (objectType == typeof(ConverterPrecedenceClass)); } } }././@LongLink0000644000000000000000000000015300000000000011602 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SerializationEventTestObjectWithConstructor.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SerializationEventTestObjectWithConstruc0000664000175000017500000000567012454416117034706 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Runtime.Serialization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { public class SerializationEventTestObjectWithConstructor { // This member is serialized and deserialized with no change. public int Member1 { get; private set; } // The value of this field is set and reset during and // after serialization. public string Member2 { get; private set; } // This field is not serialized. The OnDeserializedAttribute // is used to set the member value after serialization. [JsonIgnore] public string Member3 { get; private set; } // This field is set to null, but populated after deserialization. public string Member4 { get; private set; } public SerializationEventTestObjectWithConstructor(int member1, string member2, string member4) { Member1 = member1; Member2 = member2; Member3 = "This is a nonserialized value"; Member4 = member4; } [OnSerializing] internal void OnSerializingMethod(StreamingContext context) { Member2 = "This value went into the data file during serialization."; } [OnSerialized] internal void OnSerializedMethod(StreamingContext context) { Member2 = "This value was reset after serialization."; } [OnDeserializing] internal void OnDeserializingMethod(StreamingContext context) { Member3 = "This value was set during deserialization"; } [OnDeserialized] internal void OnDeserializedMethod(StreamingContext context) { Member4 = "This value was set after deserialization."; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ParticipantEntity.cs0000664000175000017500000000413112454416117030571 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { internal class ParticipantEntity { private Dictionary _properties; [JsonConstructor] public ParticipantEntity() { } /// /// Gets or sets the date and time that the participant was created in the CU. /// [JsonProperty(PropertyName = "pa_created", DefaultValueHandling = DefaultValueHandling.Ignore, NullValueHandling = NullValueHandling.Ignore)] public DateTimeOffset CreationDate { get; internal set; } /// /// Gets the properties of the participant. /// [JsonProperty(PropertyName = "pa_info")] public Dictionary Properties { get { return _properties ?? (_properties = new Dictionary()); } set { _properties = value; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/TypeClass.cs0000664000175000017500000000242412454416117027030 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class TypeClass { public Type TypeProperty { get; set; } } }././@LongLink0000644000000000000000000000015100000000000011600 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ArgumentConverterPrecedenceClassConverter.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ArgumentConverterPrecedenceClassConverte0000664000175000017500000000260212454416117034637 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class ArgumentConverterPrecedenceClassConverter : ConverterPrecedenceClassConverter { public override string ConverterType { get { return "Argument"; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ConstructorReadonlyFields.cs0000664000175000017500000000263712454416117032301 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class ConstructorReadonlyFields { public readonly string A; public readonly int B; public ConstructorReadonlyFields(string a, int b) { A = a; B = b; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Article.cs0000664000175000017500000000256012454416117026505 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class Article { public string Name; public Article() { } public Article(string name) { Name = name; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SetOnlyPropertyClass2.cs0000664000175000017500000000266112454416117031336 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class SetOnlyPropertyClass2 { private object _value; public object SetOnlyProperty { set { _value = value; } } public object GetValue() { return _value; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ConverterPrecedenceClass.cs0000664000175000017500000000271112454416117032033 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { [JsonConverter(typeof(ClassConverterPrecedenceClassConverter))] public class ConverterPrecedenceClass { public string TestValue { get; set; } public ConverterPrecedenceClass(string testValue) { TestValue = testValue; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/MetroStringConverter.cs0000664000175000017500000000423612454416117031271 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; namespace Newtonsoft.Json.Tests.TestObjects { public class MetroStringConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { #if !(NETFX_CORE || ASPNETCORE50) writer.WriteValue(":::" + value.ToString().ToUpper(CultureInfo.InvariantCulture) + ":::"); #else writer.WriteValue(":::" + value.ToString().ToUpper() + ":::"); #endif } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { string s = (string)reader.Value; if (s == null) return null; #if !(NETFX_CORE || ASPNETCORE50) return s.ToLower(CultureInfo.InvariantCulture).Trim(new[] { ':' }); #else return s.ToLower().Trim(new[] { ':' }); #endif } public override bool CanConvert(Type objectType) { return objectType == typeof(string); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Ratio.cs0000664000175000017500000001602712454416117026203 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Globalization; using System.Runtime.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { #if !(NETFX_CORE || ASPNETCORE50) public struct Ratio : IConvertible, IFormattable, ISerializable { private readonly int _numerator; private readonly int _denominator; public Ratio(int numerator, int denominator) { _numerator = numerator; _denominator = denominator; } #region Properties public int Numerator { get { return _numerator; } } public int Denominator { get { return _denominator; } } public bool IsNan { get { return _denominator == 0; } } #endregion #region Serialization operations public Ratio(SerializationInfo info, StreamingContext context) { _numerator = info.GetInt32("n"); _denominator = info.GetInt32("d"); } public void GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue("n", _numerator); info.AddValue("d", _denominator); } #endregion #region IConvertible Members public TypeCode GetTypeCode() { return TypeCode.Object; } public bool ToBoolean(IFormatProvider provider) { return _numerator == 0; } public byte ToByte(IFormatProvider provider) { return (byte)(_numerator / _denominator); } public char ToChar(IFormatProvider provider) { return Convert.ToChar(_numerator / _denominator); } public DateTime ToDateTime(IFormatProvider provider) { return Convert.ToDateTime(_numerator / _denominator); } public decimal ToDecimal(IFormatProvider provider) { return (decimal)_numerator / _denominator; } public double ToDouble(IFormatProvider provider) { return _denominator == 0 ? double.NaN : (double)_numerator / _denominator; } public short ToInt16(IFormatProvider provider) { return (short)(_numerator / _denominator); } public int ToInt32(IFormatProvider provider) { return _numerator / _denominator; } public long ToInt64(IFormatProvider provider) { return _numerator / _denominator; } public sbyte ToSByte(IFormatProvider provider) { return (sbyte)(_numerator / _denominator); } public float ToSingle(IFormatProvider provider) { return _denominator == 0 ? float.NaN : (float)_numerator / _denominator; } public string ToString(IFormatProvider provider) { return _denominator == 1 ? _numerator.ToString(provider) : _numerator.ToString(provider) + "/" + _denominator.ToString(provider); } public object ToType(Type conversionType, IFormatProvider provider) { return Convert.ChangeType(ToDouble(provider), conversionType, provider); } public ushort ToUInt16(IFormatProvider provider) { return (ushort)(_numerator / _denominator); } public uint ToUInt32(IFormatProvider provider) { return (uint)(_numerator / _denominator); } public ulong ToUInt64(IFormatProvider provider) { return (ulong)(_numerator / _denominator); } #endregion #region String operations public override string ToString() { return ToString(CultureInfo.InvariantCulture); } public string ToString(string format, IFormatProvider formatProvider) { return ToString(CultureInfo.InvariantCulture); } public static Ratio Parse(string input) { return Parse(input, CultureInfo.InvariantCulture); } public static Ratio Parse(string input, IFormatProvider formatProvider) { Ratio result; if (!TryParse(input, formatProvider, out result)) { throw new FormatException( string.Format( CultureInfo.InvariantCulture, "Text '{0}' is invalid text representation of ratio", input)); } return result; } public static bool TryParse(string input, out Ratio result) { return TryParse(input, CultureInfo.InvariantCulture, out result); } public static bool TryParse(string input, IFormatProvider formatProvider, out Ratio result) { if (input != null) { var fractionIndex = input.IndexOf('/'); int numerator; if (fractionIndex < 0) { if (int.TryParse(input, NumberStyles.Integer, formatProvider, out numerator)) { result = new Ratio(numerator, 1); return true; } } else { int denominator; if (int.TryParse(input.Substring(0, fractionIndex), NumberStyles.Integer, formatProvider, out numerator) && int.TryParse(input.Substring(fractionIndex + 1), NumberStyles.Integer, formatProvider, out denominator)) { result = new Ratio(numerator, denominator); return true; } } } result = default(Ratio); return false; } #endregion } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/LogEntry.cs0000664000175000017500000000247612454416117026673 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class LogEntry { public string Details { get; set; } public DateTime LogDate { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Bar.cs0000664000175000017500000000236412454416117025630 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class Bar { public int Id { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SerializationEventTestList.cs0000664000175000017500000000554112454416117032437 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.ObjectModel; using System.Runtime.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { public class SerializationEventTestList : Collection { // This member is serialized and deserialized with no change. public int Member1 { get; private set; } // The value of this field is set and reset during and // after serialization. public string Member2 { get; private set; } // This field is not serialized. The OnDeserializedAttribute // is used to set the member value after serialization. public string Member3 { get; private set; } // This field is set to null, but populated after deserialization. public string Member4 { get; private set; } public SerializationEventTestList() { Member1 = 11; Member2 = "Hello World!"; Member3 = "This is a nonserialized value"; Member4 = null; } [OnSerializing] internal void OnSerializingMethod(StreamingContext context) { Member2 = "This value went into the data file during serialization."; Insert(0, -1); } [OnSerialized] internal void OnSerializedMethod(StreamingContext context) { Member2 = "This value was reset after serialization."; } [OnDeserializing] internal void OnDeserializingMethod(StreamingContext context) { Member3 = "This value was set during deserialization"; } [OnDeserialized] internal void OnDeserializedMethod(StreamingContext context) { Member4 = "This value was set after deserialization."; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Content.cs0000664000175000017500000000331512454416117026533 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections; using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject(MemberSerialization = MemberSerialization.OptIn)] public class Content : IEnumerable { [JsonProperty] public List Children; [JsonProperty] public string Text; public IEnumerator GetEnumerator() { return Children.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return Children.GetEnumerator(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/TestComponentSimple.cs0000664000175000017500000000261112454416117031073 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject(MemberSerialization.OptIn)] public class TestComponentSimple { [JsonProperty] public int MyProperty { get; set; } public TestComponentSimple() { } } }././@LongLink0000644000000000000000000000017500000000000011606 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PublicParametizedConstructorWithNonPropertyParameterTestClass.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PublicParametizedConstructorWithNonPrope0000664000175000017500000000304112454416117034700 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PublicParametizedConstructorWithNonPropertyParameterTestClass { private readonly string _name; public PublicParametizedConstructorWithNonPropertyParameterTestClass(string nameParameter) { _name = nameParameter; } public string Name { get { return _name; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PhoneNumber.cs0000664000175000017500000000255312454416117027346 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PhoneNumber { public string phoneNumber; public PhoneNumber(string phoneNumber) { this.phoneNumber = phoneNumber; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/AnswerFilterModel.cs0000664000175000017500000000572112454416117030512 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.TestObjects { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) [Serializable] public class AnswerFilterModel { [NonSerialized] private readonly IList answerValues; /// /// Initializes a new instance of the class. /// public AnswerFilterModel() { answerValues = (from answer in Enum.GetNames(typeof(Antworten)) select new SelectListItem { Text = answer, Value = answer, Selected = false }) .ToList(); } /// /// Gets or sets a value indicating whether active. /// public bool Active { get; set; } /// /// Gets or sets a value indicating whether ja. /// nach bisherigen Antworten. /// public bool Ja { get; set; } /// /// Gets or sets a value indicating whether handlungsbedarf. /// public bool Handlungsbedarf { get; set; } /// /// Gets or sets a value indicating whether beratungsbedarf. /// public bool Beratungsbedarf { get; set; } /// /// Gets or sets a value indicating whether unzutreffend. /// public bool Unzutreffend { get; set; } /// /// Gets or sets a value indicating whether unbeantwortet. /// public bool Unbeantwortet { get; set; } /// /// Gets the answer values. /// public IEnumerable AnswerValues { get { return answerValues; } } } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DictionaryInterfaceClass.cs0000664000175000017500000000372712454416117032044 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; using Newtonsoft.Json.Tests.TestObjects; namespace Newtonsoft.Json.Tests.TestObjects { public class DictionaryInterfaceClass { public string Name { get; set; } public IDictionary Dictionary { get; set; } public ICollection Collection { get; set; } public EmployeeReference Employee { get; set; } public object Random { get; set; } public DictionaryInterfaceClass() { Dictionary = new Dictionary { { "existing", 1 } }; Collection = new List { 1, 2, 3 }; Employee = new EmployeeReference { Name = "EmployeeName!" }; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/JsonPropertyWithHandlingValues.cs0000664000175000017500000000544012454416117033261 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.ComponentModel; namespace Newtonsoft.Json.Tests.TestObjects { public class JsonPropertyWithHandlingValues { [JsonProperty(DefaultValueHandling = DefaultValueHandling.Ignore)] [DefaultValue("Default!")] public string DefaultValueHandlingIgnoreProperty { get; set; } [JsonProperty(DefaultValueHandling = DefaultValueHandling.Include)] [DefaultValue("Default!")] public string DefaultValueHandlingIncludeProperty { get; set; } [JsonProperty(DefaultValueHandling = DefaultValueHandling.Populate)] [DefaultValue("Default!")] public string DefaultValueHandlingPopulateProperty { get; set; } [JsonProperty(DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)] [DefaultValue("Default!")] public string DefaultValueHandlingIgnoreAndPopulateProperty { get; set; } [JsonProperty(NullValueHandling = NullValueHandling.Ignore)] public string NullValueHandlingIgnoreProperty { get; set; } [JsonProperty(NullValueHandling = NullValueHandling.Include)] public string NullValueHandlingIncludeProperty { get; set; } [JsonProperty(ReferenceLoopHandling = ReferenceLoopHandling.Error)] public JsonPropertyWithHandlingValues ReferenceLoopHandlingErrorProperty { get; set; } [JsonProperty(ReferenceLoopHandling = ReferenceLoopHandling.Ignore)] public JsonPropertyWithHandlingValues ReferenceLoopHandlingIgnoreProperty { get; set; } [JsonProperty(ReferenceLoopHandling = ReferenceLoopHandling.Serialize)] public JsonPropertyWithHandlingValues ReferenceLoopHandlingSerializeProperty { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/MetroPropertyNameResolver.cs0000664000175000017500000000315312454416117032277 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Globalization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { public class MetroPropertyNameResolver : DefaultContractResolver { protected internal override string ResolvePropertyName(string propertyName) { #if !(NETFX_CORE || ASPNETCORE50) return ":::" + propertyName.ToUpper(CultureInfo.InvariantCulture) + ":::"; #else return ":::" + propertyName.ToUpper() + ":::"; #endif } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/CustomerDataSet.cs0000664000175000017500000010150512454416117030170 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE40 || PORTABLE || ASPNETCORE50) using System; using System.Collections.Generic; using System.Text; namespace Newtonsoft.Json.Tests.TestObjects { /// ///Represents a strongly typed in-memory cache of data. /// [global::System.Serializable()] [global::System.ComponentModel.DesignerCategoryAttribute("code")] [global::System.ComponentModel.ToolboxItem(true)] [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedDataSetSchema")] [global::System.Xml.Serialization.XmlRootAttribute("CustomerDataSet")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.DataSet")] public partial class CustomerDataSet : global::System.Data.DataSet { private CustomersDataTable tableCustomers; private global::System.Data.SchemaSerializationMode _schemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema; [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public CustomerDataSet() { BeginInit(); InitClass(); global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(SchemaChanged); base.Tables.CollectionChanged += schemaChangedHandler; base.Relations.CollectionChanged += schemaChangedHandler; EndInit(); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected CustomerDataSet(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context, false) { if ((IsBinarySerialized(info, context) == true)) { InitVars(false); global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler1 = new global::System.ComponentModel.CollectionChangeEventHandler(SchemaChanged); Tables.CollectionChanged += schemaChangedHandler1; Relations.CollectionChanged += schemaChangedHandler1; return; } string strSchema = ((string)(info.GetValue("XmlSchema", typeof(string)))); if ((DetermineSchemaSerializationMode(info, context) == global::System.Data.SchemaSerializationMode.IncludeSchema)) { global::System.Data.DataSet ds = new global::System.Data.DataSet(); ds.ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema))); if ((ds.Tables["Customers"] != null)) { base.Tables.Add(new CustomersDataTable(ds.Tables["Customers"])); } DataSetName = ds.DataSetName; Prefix = ds.Prefix; Namespace = ds.Namespace; Locale = ds.Locale; CaseSensitive = ds.CaseSensitive; EnforceConstraints = ds.EnforceConstraints; Merge(ds, false, global::System.Data.MissingSchemaAction.Add); InitVars(); } else { ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema))); } GetSerializationData(info, context); global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(SchemaChanged); base.Tables.CollectionChanged += schemaChangedHandler; Relations.CollectionChanged += schemaChangedHandler; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] [global::System.ComponentModel.Browsable(false)] [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] public CustomersDataTable Customers { get { return tableCustomers; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] [global::System.ComponentModel.BrowsableAttribute(true)] [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Visible)] public override global::System.Data.SchemaSerializationMode SchemaSerializationMode { get { return _schemaSerializationMode; } set { _schemaSerializationMode = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)] public new global::System.Data.DataTableCollection Tables { get { return base.Tables; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)] public new global::System.Data.DataRelationCollection Relations { get { return base.Relations; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override void InitializeDerivedDataSet() { BeginInit(); InitClass(); EndInit(); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public override global::System.Data.DataSet Clone() { CustomerDataSet cln = ((CustomerDataSet)(base.Clone())); cln.InitVars(); cln.SchemaSerializationMode = SchemaSerializationMode; return cln; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override bool ShouldSerializeTables() { return false; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override bool ShouldSerializeRelations() { return false; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override void ReadXmlSerializable(global::System.Xml.XmlReader reader) { if ((DetermineSchemaSerializationMode(reader) == global::System.Data.SchemaSerializationMode.IncludeSchema)) { Reset(); global::System.Data.DataSet ds = new global::System.Data.DataSet(); ds.ReadXml(reader); if ((ds.Tables["Customers"] != null)) { base.Tables.Add(new CustomersDataTable(ds.Tables["Customers"])); } DataSetName = ds.DataSetName; Prefix = ds.Prefix; Namespace = ds.Namespace; Locale = ds.Locale; CaseSensitive = ds.CaseSensitive; EnforceConstraints = ds.EnforceConstraints; Merge(ds, false, global::System.Data.MissingSchemaAction.Add); InitVars(); } else { ReadXml(reader); InitVars(); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override global::System.Xml.Schema.XmlSchema GetSchemaSerializable() { global::System.IO.MemoryStream stream = new global::System.IO.MemoryStream(); WriteXmlSchema(new global::System.Xml.XmlTextWriter(stream, null)); stream.Position = 0; return global::System.Xml.Schema.XmlSchema.Read(new global::System.Xml.XmlTextReader(stream), null); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] internal void InitVars() { InitVars(true); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] internal void InitVars(bool initTable) { tableCustomers = ((CustomersDataTable)(base.Tables["Customers"])); if ((initTable == true)) { if ((tableCustomers != null)) { tableCustomers.InitVars(); } } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] private void InitClass() { DataSetName = "CustomerDataSet"; Prefix = ""; EnforceConstraints = true; SchemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema; tableCustomers = new CustomersDataTable(); base.Tables.Add(tableCustomers); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] private bool ShouldSerializeCustomers() { return false; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] private void SchemaChanged(object sender, global::System.ComponentModel.CollectionChangeEventArgs e) { if ((e.Action == global::System.ComponentModel.CollectionChangeAction.Remove)) { InitVars(); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) { CustomerDataSet ds = new CustomerDataSet(); global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny(); any.Namespace = ds.Namespace; sequence.Items.Add(any); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return type; } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return type; } [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public delegate void CustomersRowChangeEventHandler(object sender, CustomersRowChangeEvent e); /// ///Represents the strongly named DataTable class. /// [global::System.Serializable()] [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] public partial class CustomersDataTable : global::System.Data.DataTable, global::System.Collections.IEnumerable { private global::System.Data.DataColumn columnCustomerID; [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public CustomersDataTable() { TableName = "Customers"; BeginInit(); InitClass(); EndInit(); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] internal CustomersDataTable(global::System.Data.DataTable table) { TableName = table.TableName; if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { CaseSensitive = table.CaseSensitive; } if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { Locale = table.Locale; } if ((table.Namespace != table.DataSet.Namespace)) { Namespace = table.Namespace; } Prefix = table.Prefix; MinimumCapacity = table.MinimumCapacity; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected CustomersDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { InitVars(); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public global::System.Data.DataColumn CustomerIDColumn { get { return columnCustomerID; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] [global::System.ComponentModel.Browsable(false)] public int Count { get { return Rows.Count; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public CustomersRow this[int index] { get { return ((CustomersRow)(Rows[index])); } } [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public event CustomersRowChangeEventHandler CustomersRowChanging; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public event CustomersRowChangeEventHandler CustomersRowChanged; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public event CustomersRowChangeEventHandler CustomersRowDeleting; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public event CustomersRowChangeEventHandler CustomersRowDeleted; [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public void AddCustomersRow(CustomersRow row) { Rows.Add(row); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public CustomersRow AddCustomersRow(string CustomerID) { CustomersRow rowCustomersRow = ((CustomersRow)(NewRow())); object[] columnValuesArray = new object[] { CustomerID }; rowCustomersRow.ItemArray = columnValuesArray; Rows.Add(rowCustomersRow); return rowCustomersRow; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public virtual global::System.Collections.IEnumerator GetEnumerator() { return Rows.GetEnumerator(); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public override global::System.Data.DataTable Clone() { CustomersDataTable cln = ((CustomersDataTable)(base.Clone())); cln.InitVars(); return cln; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override global::System.Data.DataTable CreateInstance() { return new CustomersDataTable(); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] internal void InitVars() { columnCustomerID = base.Columns["CustomerID"]; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] private void InitClass() { columnCustomerID = new global::System.Data.DataColumn("CustomerID", typeof(string), null, global::System.Data.MappingType.Element); base.Columns.Add(columnCustomerID); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public CustomersRow NewCustomersRow() { return ((CustomersRow)(NewRow())); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { return new CustomersRow(builder); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override global::System.Type GetRowType() { return typeof(CustomersRow); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { base.OnRowChanged(e); if ((CustomersRowChanged != null)) { CustomersRowChanged(this, new CustomersRowChangeEvent(((CustomersRow)(e.Row)), e.Action)); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { base.OnRowChanging(e); if ((CustomersRowChanging != null)) { CustomersRowChanging(this, new CustomersRowChangeEvent(((CustomersRow)(e.Row)), e.Action)); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { base.OnRowDeleted(e); if ((CustomersRowDeleted != null)) { CustomersRowDeleted(this, new CustomersRowChangeEvent(((CustomersRow)(e.Row)), e.Action)); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { base.OnRowDeleting(e); if ((CustomersRowDeleting != null)) { CustomersRowDeleting(this, new CustomersRowChangeEvent(((CustomersRow)(e.Row)), e.Action)); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public void RemoveCustomersRow(CustomersRow row) { Rows.Remove(row); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); CustomerDataSet ds = new CustomerDataSet(); global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); any1.Namespace = "http://www.w3.org/2001/XMLSchema"; any1.MinOccurs = new decimal(0); any1.MaxOccurs = decimal.MaxValue; any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any1); global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; any2.MinOccurs = new decimal(1); any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any2); global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute1.Name = "namespace"; attribute1.FixedValue = ds.Namespace; type.Attributes.Add(attribute1); global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute2.Name = "tableTypeName"; attribute2.FixedValue = "CustomersDataTable"; type.Attributes.Add(attribute2); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return type; } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return type; } } /// ///Represents strongly named DataRow class. /// public partial class CustomersRow : global::System.Data.DataRow { private CustomersDataTable tableCustomers; [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] internal CustomersRow(global::System.Data.DataRowBuilder rb) : base(rb) { tableCustomers = ((CustomersDataTable)(Table)); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public string CustomerID { get { try { return ((string)(this[tableCustomers.CustomerIDColumn])); } catch (global::System.InvalidCastException e) { throw new global::System.Data.StrongTypingException("The value for column \'CustomerID\' in table \'Customers\' is DBNull.", e); } } set { this[tableCustomers.CustomerIDColumn] = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public bool IsCustomerIDNull() { return IsNull(tableCustomers.CustomerIDColumn); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public void SetCustomerIDNull() { this[tableCustomers.CustomerIDColumn] = global::System.Convert.DBNull; } } /// ///Row event argument class /// [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public class CustomersRowChangeEvent : global::System.EventArgs { private CustomersRow eventRow; private global::System.Data.DataRowAction eventAction; [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public CustomersRowChangeEvent(CustomersRow row, global::System.Data.DataRowAction action) { eventRow = row; eventAction = action; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public CustomersRow Row { get { return eventRow; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")] public global::System.Data.DataRowAction Action { get { return eventAction; } } } } } #endif././@LongLink0000644000000000000000000000016400000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PublicParametizedConstructorWithPropertyNameConflict.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PublicParametizedConstructorWithProperty0000664000175000017500000000366712454416117035002 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class PublicParametizedConstructorWithPropertyNameConflict { private readonly int _value; public PublicParametizedConstructorWithPropertyNameConflict(string name) { _value = Convert.ToInt32(name); } public int Name { get { return _value; } } } public class PublicParametizedConstructorWithPropertyNameConflictWithAttribute { private readonly int _value; public PublicParametizedConstructorWithPropertyNameConflictWithAttribute([JsonProperty("name")] string nameParameter) { _value = Convert.ToInt32(nameParameter); } public int Name { get { return _value; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Computer.cs0000664000175000017500000000325412454416117026721 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Runtime.Serialization; #if !NET20 namespace Newtonsoft.Json.Tests.TestObjects { [DataContract] public class Computer { // included in JSON [DataMember] public string Name { get; set; } [DataMember] public decimal SalePrice { get; set; } // ignored public string Manufacture { get; set; } public int StockCount { get; set; } public decimal WholeSalePrice { get; set; } public DateTime NextShipmentDate { get; set; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/WidgetId.cs0000664000175000017500000000240312454416117026616 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public struct WidgetId { public string Value { get; set; } } }././@LongLink0000644000000000000000000000014600000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ClassConverterPrecedenceClassConverter.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ClassConverterPrecedenceClassConverter.c0000664000175000017500000000257412454416117034535 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class ClassConverterPrecedenceClassConverter : ConverterPrecedenceClassConverter { public override string ConverterType { get { return "Class"; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/WithEnums.cs0000664000175000017500000000260212454416117027042 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class WithEnums { public int Id { get; set; } public MyEnum? NullableEnum { get; set; } } public enum MyEnum { Value1, Value2, Value3 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/RequiredMembersClass.cs0000664000175000017500000000314412454416117031202 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class RequiredMembersClass { [JsonProperty(Required = Required.Always)] public string FirstName { get; set; } [JsonProperty] public string MiddleName { get; set; } [JsonProperty(Required = Required.AllowNull)] public string LastName { get; set; } [JsonProperty(Required = Required.Default)] public DateTime BirthDate { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SelectListItem.cs0000664000175000017500000000253112454416117030012 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class SelectListItem { public string Text { get; set; } public string Value { get; set; } public bool Selected { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Product.cs0000664000175000017500000000347312454416117026546 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class Product { public string Name; public DateTime ExpiryDate = new DateTime(2000, 1, 1, 0, 0, 0, DateTimeKind.Utc); public decimal Price; public string[] Sizes; public override bool Equals(object obj) { if (obj is Product) { Product p = (Product)obj; return (p.Name == Name && p.ExpiryDate == ExpiryDate && p.Price == Price); } return base.Equals(obj); } public override int GetHashCode() { return (Name ?? string.Empty).GetHashCode(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/IncompatibleJsonAttributeClass.cs0000664000175000017500000000250012454416117033226 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using Newtonsoft.Json.Converters; namespace Newtonsoft.Json.Tests.TestObjects { [JsonConverter(typeof(IsoDateTimeConverter))] public class IncompatibleJsonAttributeClass { } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ListOfIds.cs0000664000175000017500000000450712454416117026765 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests.TestObjects { public class ListOfIds : JsonConverter where T : Bar, new() { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { IList list = (IList)value; writer.WriteStartArray(); foreach (T item in list) { writer.WriteValue(item.Id); } writer.WriteEndArray(); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { IList list = new List(); reader.Read(); while (reader.TokenType != JsonToken.EndArray) { long id = (long)reader.Value; list.Add(new T { Id = Convert.ToInt32(id) }); reader.Read(); } return list; } public override bool CanConvert(Type objectType) { return typeof(IList).IsAssignableFrom(objectType); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Item.cs0000664000175000017500000000306512454416117026021 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class Item { public Guid SourceTypeID { get; set; } public Guid BrokerID { get; set; } public double Latitude { get; set; } public double Longitude { get; set; } public DateTime TimeStamp { get; set; } [JsonProperty(TypeNameHandling = TypeNameHandling.All)] public object Payload { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/NonRequest.cs0000664000175000017500000000261012454416117027221 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class NonRequest { public Guid Sid { get; set; } public Guid Uid { get; set; } public IList FidOrder { get; set; } } }././@LongLink0000644000000000000000000000017300000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PrivateConstructorWithPublicParametizedConstructorTestClass.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PrivateConstructorWithPublicParametizedC0000664000175000017500000000320612454416117034660 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class PrivateConstructorWithPublicParametizedConstructorTestClass { public string Name { get; set; } public int Age { get; set; } private PrivateConstructorWithPublicParametizedConstructorTestClass() { Age = 1; } public PrivateConstructorWithPublicParametizedConstructorTestClass(string dummy) { throw new Exception("Should never get here."); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Shape.cs0000664000175000017500000001703212454416117026162 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || NETFX_CORE || ASPNETCORE50) using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Runtime.CompilerServices; using System.Text; using System.Threading.Tasks; using Microsoft.FSharp.Core; namespace Newtonsoft.Json.Tests.TestObjects { [Serializable, DebuggerDisplay("{__DebugDisplay(),nq}"), CompilationMapping(SourceConstructFlags.SumType)] public class Shape { // Fields [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal readonly int _tag; [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal static readonly Shape _unique_Empty; static Shape() { _unique_Empty = new Shape(3); } [CompilerGenerated] internal Shape(int _tag) { this._tag = _tag; } [CompilationMapping(SourceConstructFlags.UnionCase, 1)] public static Shape NewCircle(double _radius) { return new Circle(_radius); } [CompilationMapping(SourceConstructFlags.UnionCase, 2)] public static Shape NewPrism(double _width, double item2, double _height) { return new Prism(_width, item2, _height); } [CompilationMapping(SourceConstructFlags.UnionCase, 0)] public static Shape NewRectangle(double _width, double _length) { return new Rectangle(_width, _length); } [CompilerGenerated, DebuggerBrowsable(DebuggerBrowsableState.Never)] public static Shape Empty { [CompilationMapping(SourceConstructFlags.UnionCase, 3)] get { return _unique_Empty; } } [CompilerGenerated, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsCircle { [CompilerGenerated] get { return (this.Tag == 1); } } [CompilerGenerated, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsEmpty { [CompilerGenerated] get { return (this.Tag == 3); } } [CompilerGenerated, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsPrism { [CompilerGenerated] get { return (this.Tag == 2); } } [CompilerGenerated, DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsRectangle { [CompilerGenerated] get { return (this.Tag == 0); } } [CompilerGenerated, DebuggerBrowsable(DebuggerBrowsableState.Never)] public int Tag { [CompilerGenerated] get { return this._tag; } } [Serializable, DebuggerDisplay("{__DebugDisplay(),nq}")] public class Circle : Shape { // Fields [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal readonly double _radius; // Methods [CompilerGenerated, DebuggerNonUserCode] internal Circle(double _radius) : base(1) { this._radius = _radius; } // Properties [CompilationMapping(SourceConstructFlags.Field, 1, 0), CompilerGenerated, DebuggerNonUserCode] public double radius { [CompilerGenerated, DebuggerNonUserCode] get { return this._radius; } } } [Serializable, DebuggerDisplay("{__DebugDisplay(),nq}")] public class Prism : Shape { [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal readonly double _height; [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal readonly double _width; [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal readonly double item2; [CompilerGenerated, DebuggerNonUserCode] internal Prism(double _width, double item2, double _height) : base(2) { this._width = _width; this.item2 = item2; this._height = _height; } [CompilationMapping(SourceConstructFlags.Field, 2, 2), CompilerGenerated, DebuggerNonUserCode] public double height { [CompilerGenerated, DebuggerNonUserCode] get { return this._height; } } [CompilationMapping(SourceConstructFlags.Field, 2, 1), CompilerGenerated, DebuggerNonUserCode] public double Item2 { [CompilerGenerated, DebuggerNonUserCode] get { return this.item2; } } [CompilationMapping(SourceConstructFlags.Field, 2, 0), CompilerGenerated, DebuggerNonUserCode] public double width { [CompilerGenerated, DebuggerNonUserCode] get { return this._width; } } } [Serializable, DebuggerDisplay("{__DebugDisplay(),nq}")] public class Rectangle : Shape { [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal readonly double _length; [DebuggerBrowsable(DebuggerBrowsableState.Never), CompilerGenerated] internal readonly double _width; [CompilerGenerated, DebuggerNonUserCode] internal Rectangle(double _width, double _length) : base(0) { this._width = _width; this._length = _length; } [CompilationMapping(SourceConstructFlags.Field, 0, 1), CompilerGenerated, DebuggerNonUserCode] public double length { [CompilerGenerated, DebuggerNonUserCode] get { return this._length; } } [CompilationMapping(SourceConstructFlags.Field, 0, 0), CompilerGenerated, DebuggerNonUserCode] public double width { [CompilerGenerated, DebuggerNonUserCode] get { return this._width; } } } public static class Tags { // Fields public const int Circle = 1; public const int Empty = 3; public const int Prism = 2; public const int Rectangle = 0; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ProductShort.cs0000664000175000017500000000254712454416117027567 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class ProductShort { public string Name; public DateTime ExpiryDate; //public decimal Price; public string[] Sizes; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ArticleCollection.cs0000664000175000017500000000242112454416117030515 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class ArticleCollection : List
{ } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/GoogleMapGeocoderStructure.cs0000664000175000017500000000477312454416117032375 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class GoogleMapGeocoderStructure { public string Name; public Status Status; public List Placemark; } public class Status { public string Request; public string Code; } public class Placemark { public string Address; public AddressDetails AddressDetails; public Point Point; } public class AddressDetails { public int Accuracy; public Country Country; } public class Country { public string CountryNameCode; public AdministrativeArea AdministrativeArea; } public class AdministrativeArea { public string AdministrativeAreaName; public SubAdministrativeArea SubAdministrativeArea; } public class SubAdministrativeArea { public string SubAdministrativeAreaName; public Locality Locality; } public class Locality { public string LocalityName; public Thoroughfare Thoroughfare; public PostalCode PostalCode; } public class Thoroughfare { public string ThoroughfareName; } public class PostalCode { public string PostalCodeNumber; } public class Point { public List Coordinates; } }././@LongLink0000644000000000000000000000015300000000000011602 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/GenericListAndDictionaryInterfaceProperties.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/GenericListAndDictionaryInterfacePropert0000664000175000017500000000274012454416117034574 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class GenericListAndDictionaryInterfaceProperties { public IEnumerable IEnumerableProperty { get; set; } public IList IListProperty { get; set; } public IDictionary IDictionaryProperty { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Store.cs0000664000175000017500000000475712454416117026230 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class Store { public StoreColor Color = StoreColor.Yellow; public DateTime Establised = new DateTime(2010, 1, 22, 1, 1, 1, DateTimeKind.Utc); public double Width = 1.1; public int Employees = 999; public int[] RoomsPerFloor = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; public bool Open = false; public char Symbol = '@'; [JsonProperty(ObjectCreationHandling = ObjectCreationHandling.Replace)] public List Mottos = new List(); public decimal Cost = 100980.1M; public string Escape = "\r\n\t\f\b?{\\r\\n\"\'"; [JsonProperty(ObjectCreationHandling = ObjectCreationHandling.Replace)] public List product = new List(); public Store() { Mottos.Add("Hello World"); Mottos.Add("öäüÖÄÜ\\'{new Date(12345);}[222]_µ@²³~"); Mottos.Add(null); Mottos.Add(" "); Product rocket = new Product(); rocket.Name = "Rocket"; rocket.ExpiryDate = new DateTime(2000, 2, 2, 23, 1, 30, DateTimeKind.Utc); Product alien = new Product(); alien.Name = "Alien"; product.Add(rocket); product.Add(alien); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/IPrivateImplementationA.cs0000664000175000017500000000242212454416117031651 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public interface IPrivateImplementationA { string PropertyA { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PrivateImplementationAClass.cs0000664000175000017500000000277712454416117032543 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PrivateImplementationAClass : IPrivateImplementationA { [JsonIgnore] public string PropertyA { get; set; } [JsonProperty("PropertyA")] string IPrivateImplementationA.PropertyA { get { return PropertyA; } set { PropertyA = value; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/JsonPropertyClass.cs0000664000175000017500000000316512454416117030570 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class JsonPropertyClass { [JsonProperty("pie")] public string Pie = "Yum"; [JsonIgnore] public string pie = "No pie for you!"; public string pie1 = "PieChart!"; private int _sweetCakesCount; [JsonProperty("sweet_cakes_count")] public int SweetCakesCount { get { return _sweetCakesCount; } set { _sweetCakesCount = value; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/CircularReferenceWithIdClass.cs0000664000175000017500000000266212454416117032607 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject(Id = "MyExplicitId")] public class CircularReferenceWithIdClass { [JsonProperty(Required = Required.AllowNull)] public string Name { get; set; } public CircularReferenceWithIdClass Child { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PrivateImplementationBClass.cs0000664000175000017500000000406312454416117032532 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PrivateImplementationBClass : PrivateImplementationAClass, IPrivateImplementationB, IPrivateOverriddenImplementation { [JsonIgnore] public string PropertyB { get; set; } [JsonProperty("PropertyB")] string IPrivateImplementationB.PropertyB { get { return PropertyB; } set { PropertyB = value; } } [JsonProperty("OverriddenProperty")] private string OverriddenPropertyString { get { return OverriddenProperty.ToString(); } set { OverriddenProperty = value; } } [JsonIgnore] public object OverriddenProperty { get; set; } [JsonIgnore] object IPrivateOverriddenImplementation.OverriddenProperty { get { return OverriddenProperty; } set { OverriddenProperty = value; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PersonReference.cs0000664000175000017500000000260512454416117030207 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Text; namespace Newtonsoft.Json.Tests.TestObjects { public class PersonReference { internal Guid Id { get; set; } public string Name { get; set; } public PersonReference Spouse { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PropertyItemConverter.cs0000664000175000017500000000257612454416117031464 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class PropertyItemConverter { [JsonProperty(ItemConverterType = typeof(MetroStringConverter))] public IList Data { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Car.cs0000664000175000017500000000300412454416117025621 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class Car { // included in JSON public string Model { get; set; } public DateTime Year { get; set; } public List Features { get; set; } // ignored [JsonIgnore] public DateTime LastModified { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PrivateConstructorTestClass.cs0000664000175000017500000000334112454416117032626 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PrivateConstructorTestClass { public string Name { get; set; } public int Age { get; set; } private PrivateConstructorTestClass() { } // multiple constructors with arguments so the serializer doesn't know what to fall back to private PrivateConstructorTestClass(object a) { } // multiple constructors with arguments so the serializer doesn't know what to fall back to private PrivateConstructorTestClass(object a, object b) { } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ContentBaseClass.cs0000664000175000017500000000235112454416117030313 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public abstract class ContentBaseClass { } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PersonError.cs0000664000175000017500000000364412454416117027406 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Runtime.Serialization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { public class PersonError { private List _roles; public string Name { get; set; } public int Age { get; set; } public List Roles { get { if (_roles == null) throw new Exception("Roles not loaded!"); return _roles; } set { _roles = value; } } public string Title { get; set; } [OnError] internal void HandleError(StreamingContext context, ErrorContext errorContext) { errorContext.Handled = true; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/IPrivateOverriddenImplementation.cs0000664000175000017500000000244412454416117033576 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public interface IPrivateOverriddenImplementation { object OverriddenProperty { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DateTimeWrapper.cs0000664000175000017500000000242712454416117030161 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class DateTimeWrapper { public DateTime Value { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/GenericImpl.cs0000664000175000017500000000244012454416117027315 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class GenericImpl : AbstractGenericBase { public override int Id { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/TestComponent.cs0000664000175000017500000000265112454416117027725 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { #if !(NET35 || NET20) [JsonObject(MemberSerialization.OptIn)] public class TestComponent : Component { [JsonProperty] public int MyProperty { get; set; } public TestComponent() { } } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Shortie.cs0000664000175000017500000000302612454416117026535 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class Shortie { public string Original { get; set; } public string Shortened { get; set; } public string Short { get; set; } public ShortieException Error { get; set; } } public class ShortieException { public int Code { get; set; } public string ErrorMessage { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Movie.cs0000664000175000017500000000353612454416117026205 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class Movie { public string Name { get; set; } public string Description { get; set; } public string Classification { get; set; } public string Studio { get; set; } public DateTime? ReleaseDate { get; set; } public List ReleaseCountries { get; set; } public override string ToString() { return base.ToString(); } public override bool Equals(object obj) { return base.Equals(obj); } public override int GetHashCode() { return base.GetHashCode(); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SuperKlass.cs0000664000175000017500000000254312454416117027217 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class SuperKlass { public string SuperProp { get; set; } public SuperKlass() { SuperProp = "default superprop"; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/InterfacePropertyTestClass.cs0000664000175000017500000000313512454416117032414 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class Co : ICo { public string Name { get; set; } } public interface ICo { string Name { get; set; } } public interface IInterfacePropertyTestClass { ICo co { get; set; } } public class InterfacePropertyTestClass : IInterfacePropertyTestClass { public ICo co { get; set; } public InterfacePropertyTestClass() { } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/RoleTransfer.cs0000664000175000017500000000311212454416117027522 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public enum RoleTransferOperation { First, Second } public enum RoleTransferDirection { First, Second } public class RoleTransfer { public RoleTransferOperation Operation { get; set; } //This is enum type public string RoleName { get; set; } public RoleTransferDirection Direction { get; set; } //This is enum type } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/UriGuidTimeSpanTestClass.cs0000664000175000017500000000272712454416117031766 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class UriGuidTimeSpanTestClass { public Guid Guid { get; set; } public Guid? NullableGuid { get; set; } public TimeSpan TimeSpan { get; set; } public TimeSpan? NullableTimeSpan { get; set; } public Uri Uri { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/IMyInterface.cs0000664000175000017500000001165512454416117027446 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.ComponentModel; using System.Globalization; using System.Text; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.TestObjects { #if !(NETFX_CORE || NET35 || NET20 || PORTABLE || ASPNETCORE50 || PORTABLE40) [TypeConverter(typeof(MyInterfaceConverter))] internal interface IMyInterface { string Name { get; } string PrintTest(); } internal class MyInterfaceConverter : TypeConverter { private readonly List _writers = new List { new ConsoleWriter(), new TraceWriter() }; public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { return destinationType == typeof(string); } public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { return sourceType == typeof(string); } public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { if (value == null) return null; return (from w in _writers where w.Name == value.ToString() select w).FirstOrDefault(); } public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (value == null) return null; return ((IMyInterface)value).Name; } } [TypeConverter(typeof(MyInterfaceConverter))] internal class ConsoleWriter : IMyInterface { public string Name { get { return "Console Writer"; } } public string PrintTest() { return "ConsoleWriter"; } public override string ToString() { return Name; } } internal class TraceWriter : IMyInterface { public string Name { get { return "Trace Writer"; } } public override string ToString() { return Name; } public string PrintTest() { return "TraceWriter"; } } internal class TypeConverterJsonConverter : JsonConverter { private TypeConverter GetConverter(Type type) { var converters = type.GetCustomAttributes(typeof(TypeConverterAttribute), true).Union( from t in type.GetInterfaces() from c in t.GetCustomAttributes(typeof(TypeConverterAttribute), true) select c).Distinct(); return (from c in converters let converter = (TypeConverter)Activator.CreateInstance(Type.GetType(((TypeConverterAttribute)c).ConverterTypeName)) where converter.CanConvertFrom(typeof(string)) && converter.CanConvertTo(typeof(string)) select converter) .FirstOrDefault(); } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var converter = GetConverter(value.GetType()); var text = converter.ConvertToInvariantString(value); writer.WriteValue(text); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { var converter = GetConverter(objectType); return converter.ConvertFromInvariantString(reader.Value.ToString()); } public override bool CanConvert(Type objectType) { return GetConverter(objectType) != null; } } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Invoice.cs0000664000175000017500000000331212454416117026512 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.ComponentModel; namespace Newtonsoft.Json.Tests.TestObjects { public class Invoice { public string Company { get; set; } public decimal Amount { get; set; } // false is default value of bool public bool Paid { get; set; } // null is default value of nullable public DateTime? PaidDate { get; set; } // customize default values [DefaultValue(30)] public int FollowUpDays { get; set; } [DefaultValue("")] public string FollowUpEmailAddress { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PersonSerializable.cs0000664000175000017500000000326012454416117030715 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) [Serializable] public class PersonSerializable { public PersonSerializable() { } private string _name = ""; public string Name { get { return _name; } set { _name = value; } } [NonSerialized] private int _age = 0; public int Age { get { return _age; } set { _age = value; } } } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/UserNullable.cs0000664000175000017500000000266612454416117027526 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class UserNullable { public Guid Id; public string FName; public string LName; public int RoleId; public int? NullableRoleId; public int? NullRoleId; public bool? Active; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DateTimeErrorObjectCollection.cs0000664000175000017500000000304712454416117032774 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.ObjectModel; using System.Runtime.Serialization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { public class DateTimeErrorObjectCollection : Collection { [OnError] internal void OnErrorMethod(StreamingContext context, ErrorContext errorContext) { errorContext.Handled = true; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/TypedSubHashtable.cs0000664000175000017500000000253512454416117030477 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections; namespace Newtonsoft.Json.Tests.TestObjects { #if !(NETFX_CORE || ASPNETCORE50) public class TypedSubHashtable { public string Name; public Hashtable Hash; } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SerializationEventTestObject.cs0000664000175000017500000001074612454416117032735 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Runtime.Serialization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { public class SerializationEventTestObject { // This member is serialized and deserialized with no change. public int Member1 { get; set; } // The value of this field is set and reset during and // after serialization. public string Member2 { get; set; } // This field is not serialized. The OnDeserializedAttribute // is used to set the member value after serialization. [JsonIgnore] public string Member3 { get; set; } // This field is set to null, but populated after deserialization. public string Member4 { get; set; } // This field is set to null, but populated after error. [JsonIgnore] public string Member5 { get; set; } // Getting or setting this field will throw an error. public string Member6 { get { throw new Exception("Member5 get error!"); } set { throw new Exception("Member5 set error!"); } } public SerializationEventTestObject() { Member1 = 11; Member2 = "Hello World!"; Member3 = "This is a nonserialized value"; Member4 = null; } [OnSerializing] internal void OnSerializingMethod(StreamingContext context) { Member2 = "This value went into the data file during serialization."; } [OnSerialized] internal void OnSerializedMethod(StreamingContext context) { Member2 = "This value was reset after serialization."; } [OnDeserializing] internal void OnDeserializingMethod(StreamingContext context) { Member3 = "This value was set during deserialization"; } [OnDeserialized] internal void OnDeserializedMethod(StreamingContext context) { Member4 = "This value was set after deserialization."; } [OnError] internal void OnErrorMethod(StreamingContext context, ErrorContext errorContext) { Member5 = "Error message for member " + errorContext.Member + " = " + errorContext.Error.Message; errorContext.Handled = true; } } public class DerivedSerializationEventTestObject : SerializationEventTestObject { // This field is set to null, but populated after deserialization, only // in the derived class [JsonIgnore] public string Member7 { get; set; } // These empty methods exist to make sure we're not covering up the base // methods [OnSerializing] internal void OnDerivedSerializingMethod(StreamingContext context) { } [OnSerialized] internal void OnDerivedSerializedMethod(StreamingContext context) { } [OnDeserializing] internal void OnDerivedDeserializingMethod(StreamingContext context) { } [OnDeserialized] internal void OnDerivedDeserializedMethod(StreamingContext context) { Member7 = "This value was set after deserialization."; } [OnError] internal void OnDerivedErrorMethod(StreamingContext context, ErrorContext errorContext) { } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/HolderClass.cs0000664000175000017500000000330212454416117027320 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class HolderClass { public HolderClass() { } [Newtonsoft.Json.JsonProperty(TypeNameHandling = Newtonsoft.Json.TypeNameHandling.All)] public ContentBaseClass TestMember { get; set; } [Newtonsoft.Json.JsonProperty(TypeNameHandling = Newtonsoft.Json.TypeNameHandling.All)] public Dictionary> AnotherTestMember { get; set; } public ContentBaseClass AThirdTestMember { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ListErrorObject.cs0000664000175000017500000000361712454416117030202 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class ListErrorObject { public string Member { get; set; } private string _throwError; public string ThrowError { get { if (_throwError != null) return _throwError; throw new Exception("ListErrorObject.ThrowError get error!"); } set { if (value != null && value.StartsWith("Handle")) { _throwError = value; return; } throw new Exception("ListErrorObject.ThrowError set error!"); } } public string Member2 { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ConverableMembers.cs0000664000175000017500000000360712454416117030520 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { [JsonObject] public class ConverableMembers { public string String = "string"; public int Int32 = int.MaxValue; public uint UInt32 = uint.MaxValue; public byte Byte = byte.MaxValue; public sbyte SByte = sbyte.MaxValue; public short Short = short.MaxValue; public ushort UShort = ushort.MaxValue; public long Long = long.MaxValue; public ulong ULong = long.MaxValue; public double Double = double.MaxValue; public float Float = float.MaxValue; #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) public DBNull DBNull = DBNull.Value; #endif public bool Bool = true; public char Char = '\0'; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PersonWithPrivateConstructor.cs0000664000175000017500000000301212454416117033016 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class PersonWithPrivateConstructor { private PersonWithPrivateConstructor() { } public static PersonWithPrivateConstructor CreatePerson() { return new PersonWithPrivateConstructor(); } public string Name { get; set; } public int Age { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/JaggedArray.cs0000664000175000017500000000254112454416117027301 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class JaggedArray { public string Before { get; set; } public int[][] Coordinates { get; set; } public string After { get; set; } } }././@LongLink0000644000000000000000000000015400000000000011603 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PocoDataContractSerializationAttributesClass.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/PocoDataContractSerializationAttributesC0000664000175000017500000000322212454416117034612 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Runtime.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { #if !(NET20 || NET35) public class PocoDataContractSerializationAttributesClass { public string NoAttribute { get; set; } [IgnoreDataMember] public string IgnoreDataMemberAttribute { get; set; } [DataMember] public string DataMemberAttribute { get; set; } [IgnoreDataMember] [DataMember] public string IgnoreDataMemberAndDataMemberAttribute { get; set; } } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/StoreColor.cs0000664000175000017500000000252712454416117027220 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { [Flags] public enum StoreColor { Black = 1, Red = 2, Yellow = 4, White = 8, DarkGoldenrod = 16 } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Antworten.cs0000664000175000017500000000236312454416117027104 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public enum Antworten { First, Second } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Bb.cs0000664000175000017500000000236212454416117025445 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { internal class Bb : Aa { public new bool no; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ContentSubClass.cs0000664000175000017500000000267312454416117030201 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class ContentSubClass : ContentBaseClass { public ContentSubClass() { } public ContentSubClass(string EasyIn) { SomeString = EasyIn; } public string SomeString { get; set; } } }././@LongLink0000644000000000000000000000015000000000000011577 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DataContractSerializationAttributesClass.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/DataContractSerializationAttributesClass0000664000175000017500000000323612454416117034661 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Runtime.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { #if !(NET20 || NET35) [DataContract] public class DataContractSerializationAttributesClass { public string NoAttribute { get; set; } [IgnoreDataMember] public string IgnoreDataMemberAttribute { get; set; } [DataMember] public string DataMemberAttribute { get; set; } [IgnoreDataMember] [DataMember] public string IgnoreDataMemberAndDataMemberAttribute { get; set; } } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/AbstractGenericBase.cs0000664000175000017500000000243512454416117030756 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public abstract class AbstractGenericBase { public abstract TKey Id { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/Container.cs0000664000175000017500000000253012454416117027041 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; namespace Newtonsoft.Json.Tests.TestObjects { public class Container { public IList In { get; set; } public IList Out { get; set; } } }././@LongLink0000644000000000000000000000014700000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/MemberConverterPrecedenceClassConverter.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/MemberConverterPrecedenceClassConverter.0000664000175000017500000000257612454416117034536 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class MemberConverterPrecedenceClassConverter : ConverterPrecedenceClassConverter { public override string ConverterType { get { return "Member"; } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/RequestOnly.cs0000664000175000017500000000240412454416117027411 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class RequestOnly { public string Request { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ListErrorObjectCollection.cs0000664000175000017500000000303412454416117032207 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.ObjectModel; using System.Runtime.Serialization; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.TestObjects { public class ListErrorObjectCollection : Collection { [OnError] internal void OnErrorMethod(StreamingContext context, ErrorContext errorContext) { errorContext.Handled = true; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/ClassWithGuid.cs0000664000175000017500000000241012454416117027626 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; namespace Newtonsoft.Json.Tests.TestObjects { public class ClassWithGuid { public Guid GuidField; } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/MemberConverterClass.cs0000664000175000017500000000266612454416117031216 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Converters; namespace Newtonsoft.Json.Tests.TestObjects { public class MemberConverterClass { public DateTime DefaultConverter { get; set; } [JsonConverter(typeof(IsoDateTimeConverter))] public DateTime MemberConverter { get; set; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/NullableDateTimeTestClass.cs0000664000175000017500000000304412454416117032121 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !NET20 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.TestObjects { public class NullableDateTimeTestClass { public string PreField { get; set; } public DateTime? DateTimeField { get; set; } public DateTimeOffset? DateTimeOffsetField { get; set; } public string PostField { get; set; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestObjects/SetOnlyPropertyClass.cs0000664000175000017500000000252712454416117031255 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion namespace Newtonsoft.Json.Tests.TestObjects { public class SetOnlyPropertyClass { public string Field = "Field"; public string SetOnlyProperty { set { } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Portable.csproj0000664000175000017500000005045112454416117031514 0ustar directhexdirecthex Debug AnyCPU 9.0.30729 2.0 {3E6E2335-B079-4B5B-A65A-9D586914BCBB} Library Properties Newtonsoft.Json.Tests Newtonsoft.Json.Tests 3.5 v4.5 false publish\ true Disk false Foreground 7 Days false false true 0 1.0.0.%2a false false true true full false bin\Debug\Portable\ TRACE;DEBUG;PORTABLE prompt 4 AllRules.ruleset false pdbonly true bin\Release\Portable\ TRACE;PORTABLE prompt 4 AllRules.ruleset false False ..\packages\FSharp.Core.4.0.0\lib\FSharp.Core.dll ..\packages\NUnit.2.6.2\lib\nunit.framework.dll False ..\packages\System.Collections.Immutable.1.1.33-beta\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll 3.5 3.5 3.5 3.5 3.0 3.0 3.5 3.5 3.5 PreserveNewest PreserveNewest PreserveNewest False .NET Framework 3.5 SP1 Client Profile false False .NET Framework 3.5 SP1 true False Windows Installer 3.1 true {959F7F85-C98B-4876-971A-9036224578E4} Newtonsoft.Json.Portable PreserveNewest PreserveNewest newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/0000775000175000017500000000000012454416117025150 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/ReadingAndWritingJsonTests.cs0000664000175000017500000001255112454416117032720 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50) using System; using System.Collections.Generic; using System.ComponentModel; using System.Dynamic; using System.IO; using System.Linq; using System.Runtime.Serialization; using System.Text; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; using System.Globalization; using ErrorEventArgs = Newtonsoft.Json.Serialization.ErrorEventArgs; namespace Newtonsoft.Json.Tests.Documentation { [TestFixture] public class ReadingAndWritingJsonTests : TestFixtureBase { public void ReadingAndWritingJsonText() { #region ReadingAndWritingJsonText StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter writer = new JsonTextWriter(sw)) { writer.Formatting = Formatting.Indented; writer.WriteStartObject(); writer.WritePropertyName("CPU"); writer.WriteValue("Intel"); writer.WritePropertyName("PSU"); writer.WriteValue("500W"); writer.WritePropertyName("Drives"); writer.WriteStartArray(); writer.WriteValue("DVD read/writer"); writer.WriteComment("(broken)"); writer.WriteValue("500 gigabyte hard drive"); writer.WriteValue("200 gigabype hard drive"); writer.WriteEnd(); writer.WriteEndObject(); } // { // "CPU": "Intel", // "PSU": "500W", // "Drives": [ // "DVD read/writer" // /*(broken)*/, // "500 gigabyte hard drive", // "200 gigabype hard drive" // ] // } #endregion } [Test] public void ReadingJsonText() { #region ReadingJsonText string json = @"{ 'CPU': 'Intel', 'PSU': '500W', 'Drives': [ 'DVD read/writer' /*(broken)*/, '500 gigabyte hard drive', '200 gigabype hard drive' ] }"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); while (reader.Read()) { if (reader.Value != null) Console.WriteLine("Token: {0}, Value: {1}", reader.TokenType, reader.Value); else Console.WriteLine("Token: {0}", reader.TokenType); } // Token: StartObject // Token: PropertyName, Value: CPU // Token: String, Value: Intel // Token: PropertyName, Value: PSU // Token: String, Value: 500W // Token: PropertyName, Value: Drives // Token: StartArray // Token: String, Value: DVD read/writer // Token: Comment, Value: (broken) // Token: String, Value: 500 gigabyte hard drive // Token: String, Value: 200 gigabype hard drive // Token: EndArray // Token: EndObject #endregion } public void ReadingAndWritingJsonLinq() { #region ReadingAndWritingJsonLinq JObject o = new JObject( new JProperty("Name", "John Smith"), new JProperty("BirthDate", new DateTime(1983, 3, 20)) ); JsonSerializer serializer = new JsonSerializer(); Person p = (Person)serializer.Deserialize(new JTokenReader(o), typeof(Person)); Console.WriteLine(p.Name); // John Smith #endregion } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/TraceWriterTests.cs0000664000175000017500000001435412454416117030764 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50) using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Dynamic; using System.IO; using System.Linq; using System.Net; using System.Reflection; using System.Runtime.Serialization; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Tests.Documentation { public class LogEventInfo { public LogLevel Level; public string Message; public Exception Exception; } public class LogLevel { public static LogLevel Info; public static LogLevel Trace; public static LogLevel Error; public static LogLevel Warn; public static LogLevel Off; } public class Logger { public void Log(LogEventInfo logEvent) { } } public static class LogManager { public static Logger GetLogger(string className) { return new Logger(); } } [TestFixture] public class TraceWriterTests : TestFixtureBase { #region CustomTraceWriterExample public class NLogTraceWriter : ITraceWriter { private static readonly Logger Logger = LogManager.GetLogger("NLogTraceWriter"); public TraceLevel LevelFilter { // trace all messages. nlog can handle filtering get { return TraceLevel.Verbose; } } public void Trace(TraceLevel level, string message, Exception ex) { LogEventInfo logEvent = new LogEventInfo { Message = message, Level = GetLogLevel(level), Exception = ex }; // log Json.NET message to NLog Logger.Log(logEvent); } private LogLevel GetLogLevel(TraceLevel level) { switch (level) { case TraceLevel.Error: return LogLevel.Error; case TraceLevel.Warning: return LogLevel.Warn; case TraceLevel.Info: return LogLevel.Info; case TraceLevel.Off: return LogLevel.Off; default: return LogLevel.Trace; } } } #endregion [Test] public void MemoryTraceWriterTest() { #region MemoryTraceWriterExample Staff staff = new Staff(); staff.Name = "Arnie Admin"; staff.Roles = new List { "Administrator" }; staff.StartDate = new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc); ITraceWriter traceWriter = new MemoryTraceWriter(); JsonConvert.SerializeObject( staff, new JsonSerializerSettings { TraceWriter = traceWriter, Converters = { new JavaScriptDateTimeConverter() } }); Console.WriteLine(traceWriter); // 2012-11-11T12:08:42.761 Info Started serializing Newtonsoft.Json.Tests.Serialization.Staff. Path ''. // 2012-11-11T12:08:42.785 Info Started serializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path 'StartDate'. // 2012-11-11T12:08:42.791 Info Finished serializing System.DateTime with converter Newtonsoft.Json.Converters.JavaScriptDateTimeConverter. Path 'StartDate'. // 2012-11-11T12:08:42.797 Info Started serializing System.Collections.Generic.List`1[System.String]. Path 'Roles'. // 2012-11-11T12:08:42.798 Info Finished serializing System.Collections.Generic.List`1[System.String]. Path 'Roles'. // 2012-11-11T12:08:42.799 Info Finished serializing Newtonsoft.Json.Tests.Serialization.Staff. Path ''. // 2013-05-18T21:38:11.255 Verbose Serialized JSON: // { // "Name": "Arnie Admin", // "StartDate": new Date( // 976623132000 // ), // "Roles": [ // "Administrator" // ] // } #endregion MemoryTraceWriter memoryTraceWriter = (MemoryTraceWriter)traceWriter; Assert.AreEqual(916, memoryTraceWriter.ToString().Length); Assert.AreEqual(7, memoryTraceWriter.GetTraceMessages().Count()); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/JsonSchemaTests.cs0000664000175000017500000001420112454416117030552 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50) using System; using System.Collections.Generic; using System.ComponentModel; using System.Dynamic; using System.IO; using System.Linq; using System.Runtime.Serialization; using System.Text; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Schema; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; using System.Globalization; using ErrorEventArgs = Newtonsoft.Json.Serialization.ErrorEventArgs; using File = System.IO.File; namespace Newtonsoft.Json.Tests.Documentation { public class JsonSchemaTests { public void IsValidBasic() { #region IsValidBasic string schemaJson = @"{ 'description': 'A person', 'type': 'object', 'properties': { 'name': {'type':'string'}, 'hobbies': { 'type': 'array', 'items': {'type':'string'} } } }"; JsonSchema schema = JsonSchema.Parse(schemaJson); JObject person = JObject.Parse(@"{ 'name': 'James', 'hobbies': ['.NET', 'Blogging', 'Reading', 'Xbox', 'LOLCATS'] }"); bool valid = person.IsValid(schema); // true #endregion } public void IsValidMessages() { string schemaJson = @"{ 'description': 'A person', 'type': 'object', 'properties': { 'name': {'type':'string'}, 'hobbies': { 'type': 'array', 'items': {'type':'string'} } } }"; #region IsValidMessages JsonSchema schema = JsonSchema.Parse(schemaJson); JObject person = JObject.Parse(@"{ 'name': null, 'hobbies': ['Invalid content', 0.123456789] }"); IList messages; bool valid = person.IsValid(schema, out messages); // false // Invalid type. Expected String but got Null. Line 2, position 21. // Invalid type. Expected String but got Float. Line 3, position 51. #endregion } public void JsonValidatingReader() { string schemaJson = "{}"; #region JsonValidatingReader string json = @"{ 'name': 'James', 'hobbies': ['.NET', 'Blogging', 'Reading', 'Xbox', 'LOLCATS'] }"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); JsonValidatingReader validatingReader = new JsonValidatingReader(reader); validatingReader.Schema = JsonSchema.Parse(schemaJson); IList messages = new List(); validatingReader.ValidationEventHandler += (o, a) => messages.Add(a.Message); JsonSerializer serializer = new JsonSerializer(); Person p = serializer.Deserialize(validatingReader); #endregion } public void LoadJsonSchema() { #region LoadJsonSchema // load from a string JsonSchema schema1 = JsonSchema.Parse(@"{'type':'object'}"); // load from a file using (TextReader reader = File.OpenText(@"c:\schema\Person.json")) { JsonSchema schema2 = JsonSchema.Read(new JsonTextReader(reader)); // do stuff } #endregion } public void ManuallyCreateJsonSchema() { #region ManuallyCreateJsonSchema JsonSchema schema = new JsonSchema(); schema.Type = JsonSchemaType.Object; schema.Properties = new Dictionary { { "name", new JsonSchema { Type = JsonSchemaType.String } }, { "hobbies", new JsonSchema { Type = JsonSchemaType.Array, Items = new List { new JsonSchema { Type = JsonSchemaType.String } } } }, }; JObject person = JObject.Parse(@"{ 'name': 'James', 'hobbies': ['.NET', 'Blogging', 'Reading', 'Xbox', 'LOLCATS'] }"); bool valid = person.IsValid(schema); // true #endregion Assert.IsTrue(valid); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/SerializationTests.cs0000664000175000017500000007524612454416117031355 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50) using System; using System.Collections.Generic; using System.ComponentModel; using System.Dynamic; using System.IO; using System.Linq; using System.Runtime.Serialization; using System.Text; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; using System.Globalization; using ErrorEventArgs = Newtonsoft.Json.Serialization.ErrorEventArgs; namespace Newtonsoft.Json.Tests.Documentation { public class SerializationTests { public void SerializeObject() { #region SerializeObject Product product = new Product(); product.Name = "Apple"; product.ExpiryDate = new DateTime(2008, 12, 28); product.Price = 3.99M; product.Sizes = new string[] { "Small", "Medium", "Large" }; string output = JsonConvert.SerializeObject(product); //{ // "Name": "Apple", // "ExpiryDate": "2008-12-28T00:00:00", // "Price": 3.99, // "Sizes": [ // "Small", // "Medium", // "Large" // ] //} Product deserializedProduct = JsonConvert.DeserializeObject(output); #endregion } public void JsonSerializerToStream() { #region JsonSerializerToStream Product product = new Product(); product.ExpiryDate = new DateTime(2008, 12, 28); JsonSerializer serializer = new JsonSerializer(); serializer.Converters.Add(new JavaScriptDateTimeConverter()); serializer.NullValueHandling = NullValueHandling.Ignore; using (StreamWriter sw = new StreamWriter(@"c:\json.txt")) using (JsonWriter writer = new JsonTextWriter(sw)) { serializer.Serialize(writer, product); // {"ExpiryDate":new Date(1230375600000),"Price":0} } #endregion } #region SerializationAttributes [JsonObject(MemberSerialization.OptIn)] public class Person { // "John Smith" [JsonProperty] public string Name { get; set; } // "2000-12-15T22:11:03" [JsonProperty] public DateTime BirthDate { get; set; } // new Date(976918263055) [JsonProperty] [JsonConverter(typeof(JavaScriptDateTimeConverter))] public DateTime LastModified { get; set; } // not serialized because mode is opt-in public string Department { get; set; } } #endregion #region SerializationCallbacksObject public class SerializationEventTestObject { // 2222 // This member is serialized and deserialized with no change. public int Member1 { get; set; } // The value of this field is set and reset during and // after serialization. public string Member2 { get; set; } // This field is not serialized. The OnDeserializedAttribute // is used to set the member value after serialization. [JsonIgnore] public string Member3 { get; set; } // This field is set to null, but populated after deserialization. public string Member4 { get; set; } public SerializationEventTestObject() { Member1 = 11; Member2 = "Hello World!"; Member3 = "This is a nonserialized value"; Member4 = null; } [OnSerializing] internal void OnSerializingMethod(StreamingContext context) { Member2 = "This value went into the data file during serialization."; } [OnSerialized] internal void OnSerializedMethod(StreamingContext context) { Member2 = "This value was reset after serialization."; } [OnDeserializing] internal void OnDeserializingMethod(StreamingContext context) { Member3 = "This value was set during deserialization"; } [OnDeserialized] internal void OnDeserializedMethod(StreamingContext context) { Member4 = "This value was set after deserialization."; } } #endregion public void SerializationCallbacksExample() { #region SerializationCallbacksExample SerializationEventTestObject obj = new SerializationEventTestObject(); Console.WriteLine(obj.Member1); // 11 Console.WriteLine(obj.Member2); // Hello World! Console.WriteLine(obj.Member3); // This is a nonserialized value Console.WriteLine(obj.Member4); // null string json = JsonConvert.SerializeObject(obj, Formatting.Indented); // { // "Member1": 11, // "Member2": "This value went into the data file during serialization.", // "Member4": null // } Console.WriteLine(obj.Member1); // 11 Console.WriteLine(obj.Member2); // This value was reset after serialization. Console.WriteLine(obj.Member3); // This is a nonserialized value Console.WriteLine(obj.Member4); // null obj = JsonConvert.DeserializeObject(json); Console.WriteLine(obj.Member1); // 11 Console.WriteLine(obj.Member2); // This value went into the data file during serialization. Console.WriteLine(obj.Member3); // This value was set during deserialization Console.WriteLine(obj.Member4); // This value was set after deserialization. #endregion } public void SerializationErrorHandling() { #region SerializationErrorHandling List errors = new List(); List c = JsonConvert.DeserializeObject>(@"[ '2009-09-09T00:00:00Z', 'I am not a date and will error!', [ 1 ], '1977-02-20T00:00:00Z', null, '2000-12-01T00:00:00Z' ]", new JsonSerializerSettings { Error = delegate(object sender, ErrorEventArgs args) { errors.Add(args.ErrorContext.Error.Message); args.ErrorContext.Handled = true; }, Converters = { new IsoDateTimeConverter() } }); // 2009-09-09T00:00:00Z // 1977-02-20T00:00:00Z // 2000-12-01T00:00:00Z // The string was not recognized as a valid DateTime. There is a unknown word starting at index 0. // Unexpected token parsing date. Expected String, got StartArray. // Cannot convert null value to System.DateTime. #endregion } public void SerializationErrorHandlingWithParent() { #region SerializationErrorHandlingWithParent List errors = new List(); JsonSerializer serializer = new JsonSerializer(); serializer.Error += delegate(object sender, ErrorEventArgs args) { // only log an error once if (args.CurrentObject == args.ErrorContext.OriginalObject) errors.Add(args.ErrorContext.Error.Message); }; #endregion } #region SerializationErrorHandlingAttributeObject public class PersonError { private List _roles; public string Name { get; set; } public int Age { get; set; } public List Roles { get { if (_roles == null) throw new Exception("Roles not loaded!"); return _roles; } set { _roles = value; } } public string Title { get; set; } [OnError] internal void OnError(StreamingContext context, ErrorContext errorContext) { errorContext.Handled = true; } } #endregion public void SerializationErrorHandlingAttributeExample() { #region SerializationErrorHandlingAttributeExample PersonError person = new PersonError { Name = "George Michael Bluth", Age = 16, Roles = null, Title = "Mister Manager" }; string json = JsonConvert.SerializeObject(person, Formatting.Indented); Console.WriteLine(json); //{ // "Name": "George Michael Bluth", // "Age": 16, // "Title": "Mister Manager" //} #endregion } public void PreservingObjectReferencesOff() { #region PreservingObjectReferencesOff Person p = new Person { BirthDate = new DateTime(1980, 12, 23, 0, 0, 0, DateTimeKind.Utc), LastModified = new DateTime(2009, 2, 20, 12, 59, 21, DateTimeKind.Utc), Name = "James" }; List people = new List(); people.Add(p); people.Add(p); string json = JsonConvert.SerializeObject(people, Formatting.Indented); //[ // { // "Name": "James", // "BirthDate": "1980-12-23T00:00:00Z", // "LastModified": "2009-02-20T12:59:21Z" // }, // { // "Name": "James", // "BirthDate": "1980-12-23T00:00:00Z", // "LastModified": "2009-02-20T12:59:21Z" // } //] #endregion } public void PreservingObjectReferencesOn() { List people = new List(); #region PreservingObjectReferencesOn string json = JsonConvert.SerializeObject(people, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); //[ // { // "$id": "1", // "Name": "James", // "BirthDate": "1983-03-08T00:00Z", // "LastModified": "2012-03-21T05:40Z" // }, // { // "$ref": "1" // } //] List deserializedPeople = JsonConvert.DeserializeObject>(json, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); Console.WriteLine(deserializedPeople.Count); // 2 Person p1 = deserializedPeople[0]; Person p2 = deserializedPeople[1]; Console.WriteLine(p1.Name); // James Console.WriteLine(p2.Name); // James bool equal = Object.ReferenceEquals(p1, p2); // true #endregion } #region PreservingObjectReferencesAttribute [JsonObject(IsReference = true)] public class EmployeeReference { public string Name { get; set; } public EmployeeReference Manager { get; set; } } #endregion #region CustomCreationConverterObject public interface IPerson { string FirstName { get; set; } string LastName { get; set; } DateTime BirthDate { get; set; } } public class Employee : IPerson { public string FirstName { get; set; } public string LastName { get; set; } public DateTime BirthDate { get; set; } public string Department { get; set; } public string JobTitle { get; set; } } public class PersonConverter : CustomCreationConverter { public override IPerson Create(Type objectType) { return new Employee(); } } #endregion public void CustomCreationConverterExample() { string json = null; #region CustomCreationConverterExample //[ // { // "FirstName": "Maurice", // "LastName": "Moss", // "BirthDate": "1981-03-08T00:00Z", // "Department": "IT", // "JobTitle": "Support" // }, // { // "FirstName": "Jen", // "LastName": "Barber", // "BirthDate": "1985-12-10T00:00Z", // "Department": "IT", // "JobTitle": "Manager" // } //] List people = JsonConvert.DeserializeObject>(json, new PersonConverter()); IPerson person = people[0]; Console.WriteLine(person.GetType()); // Newtonsoft.Json.Tests.Employee Console.WriteLine(person.FirstName); // Maurice Employee employee = (Employee)person; Console.WriteLine(employee.JobTitle); // Support #endregion } public void ContractResolver() { #region ContractResolver Product product = new Product { ExpiryDate = new DateTime(2010, 12, 20, 18, 1, 0, DateTimeKind.Utc), Name = "Widget", Price = 9.99m, Sizes = new[] { "Small", "Medium", "Large" } }; string json = JsonConvert.SerializeObject( product, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() } ); //{ // "name": "Widget", // "expiryDate": "2010-12-20T18:01Z", // "price": 9.99, // "sizes": [ // "Small", // "Medium", // "Large" // ] //} #endregion } public void SerializingCollectionsSerializing() { #region SerializingCollectionsSerializing Product p1 = new Product { Name = "Product 1", Price = 99.95m, ExpiryDate = new DateTime(2000, 12, 29, 0, 0, 0, DateTimeKind.Utc), }; Product p2 = new Product { Name = "Product 2", Price = 12.50m, ExpiryDate = new DateTime(2009, 7, 31, 0, 0, 0, DateTimeKind.Utc), }; List products = new List(); products.Add(p1); products.Add(p2); string json = JsonConvert.SerializeObject(products, Formatting.Indented); //[ // { // "Name": "Product 1", // "ExpiryDate": "2000-12-29T00:00Z", // "Price": 99.95, // "Sizes": null // }, // { // "Name": "Product 2", // "ExpiryDate": "2009-07-31T00:00Z", // "Price": 12.50, // "Sizes": null // } //] #endregion } public void SerializingCollectionsDeserializing() { #region SerializingCollectionsDeserializing string json = @"[ { 'Name': 'Product 1', 'ExpiryDate': '2000-12-29T00:00Z', 'Price': 99.95, 'Sizes': null }, { 'Name': 'Product 2', 'ExpiryDate': '2009-07-31T00:00Z', 'Price': 12.50, 'Sizes': null } ]"; List products = JsonConvert.DeserializeObject>(json); Console.WriteLine(products.Count); // 2 Product p1 = products[0]; Console.WriteLine(p1.Name); // Product 1 #endregion } public void SerializingCollectionsDeserializingDictionaries() { #region SerializingCollectionsDeserializingDictionaries string json = @"{""key1"":""value1"",""key2"":""value2""}"; Dictionary values = JsonConvert.DeserializeObject>(json); Console.WriteLine(values.Count); // 2 Console.WriteLine(values["key1"]); // value1 #endregion } #region SerializingDatesInJson public class LogEntry { public string Details { get; set; } public DateTime LogDate { get; set; } } public void WriteJsonDates() { LogEntry entry = new LogEntry { LogDate = new DateTime(2009, 2, 15, 0, 0, 0, DateTimeKind.Utc), Details = "Application started." }; // default as of Json.NET 4.5 string isoJson = JsonConvert.SerializeObject(entry); // {"Details":"Application started.","LogDate":"2009-02-15T00:00:00Z"} JsonSerializerSettings microsoftDateFormatSettings = new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }; string microsoftJson = JsonConvert.SerializeObject(entry, microsoftDateFormatSettings); // {"Details":"Application started.","LogDate":"\/Date(1234656000000)\/"} string javascriptJson = JsonConvert.SerializeObject(entry, new JavaScriptDateTimeConverter()); // {"Details":"Application started.","LogDate":new Date(1234656000000)} } #endregion #region ReducingSerializedJsonSizeOptOut public class Car { // included in JSON public string Model { get; set; } public DateTime Year { get; set; } public List Features { get; set; } // ignored [JsonIgnore] public DateTime LastModified { get; set; } } #endregion #region ReducingSerializedJsonSizeOptIn [DataContract] public class Computer { // included in JSON [DataMember] public string Name { get; set; } [DataMember] public decimal SalePrice { get; set; } // ignored public string Manufacture { get; set; } public int StockCount { get; set; } public decimal WholeSalePrice { get; set; } public DateTime NextShipmentDate { get; set; } } #endregion #region ReducingSerializedJsonSizeNullValueHandlingObject public class Movie { public string Name { get; set; } public string Description { get; set; } public string Classification { get; set; } public string Studio { get; set; } public DateTime? ReleaseDate { get; set; } public List ReleaseCountries { get; set; } } #endregion public void ReducingSerializedJsonSizeNullValueHandlingExample() { #region ReducingSerializedJsonSizeNullValueHandlingExample Movie movie = new Movie(); movie.Name = "Bad Boys III"; movie.Description = "It's no Bad Boys"; string included = JsonConvert.SerializeObject(movie, Formatting.Indented, new JsonSerializerSettings { }); // { // "Name": "Bad Boys III", // "Description": "It's no Bad Boys", // "Classification": null, // "Studio": null, // "ReleaseDate": null, // "ReleaseCountries": null // } string ignored = JsonConvert.SerializeObject(movie, Formatting.Indented, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); // { // "Name": "Bad Boys III", // "Description": "It's no Bad Boys" // } #endregion } #region ReducingSerializedJsonSizeDefaultValueHandlingObject public class Invoice { public string Company { get; set; } public decimal Amount { get; set; } // false is default value of bool public bool Paid { get; set; } // null is default value of nullable public DateTime? PaidDate { get; set; } // customize default values [DefaultValue(30)] public int FollowUpDays { get; set; } [DefaultValue("")] public string FollowUpEmailAddress { get; set; } } #endregion public void ReducingSerializedJsonSizeDefaultValueHandlingExample() { #region ReducingSerializedJsonSizeDefaultValueHandlingExample Invoice invoice = new Invoice { Company = "Acme Ltd.", Amount = 50.0m, Paid = false, FollowUpDays = 30, FollowUpEmailAddress = string.Empty, PaidDate = null }; string included = JsonConvert.SerializeObject(invoice, Formatting.Indented, new JsonSerializerSettings { }); // { // "Company": "Acme Ltd.", // "Amount": 50.0, // "Paid": false, // "PaidDate": null, // "FollowUpDays": 30, // "FollowUpEmailAddress": "" // } string ignored = JsonConvert.SerializeObject(invoice, Formatting.Indented, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); // { // "Company": "Acme Ltd.", // "Amount": 50.0 // } #endregion } #region ReducingSerializedJsonSizeContractResolverObject public class DynamicContractResolver : DefaultContractResolver { private readonly char _startingWithChar; public DynamicContractResolver(char startingWithChar) { _startingWithChar = startingWithChar; } protected override IList CreateProperties(Type type, MemberSerialization memberSerialization) { IList properties = base.CreateProperties(type, memberSerialization); // only serializer properties that start with the specified character properties = properties.Where(p => p.PropertyName.StartsWith(_startingWithChar.ToString())).ToList(); return properties; } } public class Book { public string BookName { get; set; } public decimal BookPrice { get; set; } public string AuthorName { get; set; } public int AuthorAge { get; set; } public string AuthorCountry { get; set; } } #endregion public void ReducingSerializedJsonSizeContractResolverExample() { #region ReducingSerializedJsonSizeContractResolverExample Book book = new Book { BookName = "The Gathering Storm", BookPrice = 16.19m, AuthorName = "Brandon Sanderson", AuthorAge = 34, AuthorCountry = "United States of America" }; string startingWithA = JsonConvert.SerializeObject(book, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new DynamicContractResolver('A') }); // { // "AuthorName": "Brandon Sanderson", // "AuthorAge": 34, // "AuthorCountry": "United States of America" // } string startingWithB = JsonConvert.SerializeObject(book, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new DynamicContractResolver('B') }); // { // "BookName": "The Gathering Storm", // "BookPrice": 16.19 // } #endregion } #region SerializingPartialJsonFragmentsObject public class SearchResult { public string Title { get; set; } public string Content { get; set; } public string Url { get; set; } } #endregion public void SerializingPartialJsonFragmentsExample() { #region SerializingPartialJsonFragmentsExample string googleSearchText = @"{ 'responseData': { 'results': [ { 'GsearchResultClass': 'GwebSearch', 'unescapedUrl': 'http://en.wikipedia.org/wiki/Paris_Hilton', 'url': 'http://en.wikipedia.org/wiki/Paris_Hilton', 'visibleUrl': 'en.wikipedia.org', 'cacheUrl': 'http://www.google.com/search?q=cache:TwrPfhd22hYJ:en.wikipedia.org', 'title': 'Paris Hilton - Wikipedia, the free encyclopedia', 'titleNoFormatting': 'Paris Hilton - Wikipedia, the free encyclopedia', 'content': '[1] In 2006, she released her debut album...' }, { 'GsearchResultClass': 'GwebSearch', 'unescapedUrl': 'http://www.imdb.com/name/nm0385296/', 'url': 'http://www.imdb.com/name/nm0385296/', 'visibleUrl': 'www.imdb.com', 'cacheUrl': 'http://www.google.com/search?q=cache:1i34KkqnsooJ:www.imdb.com', 'title': 'Paris Hilton', 'titleNoFormatting': 'Paris Hilton', 'content': 'Self: Zoolander. Socialite Paris Hilton...' } ], 'cursor': { 'pages': [ { 'start': '0', 'label': 1 }, { 'start': '4', 'label': 2 }, { 'start': '8', 'label': 3 }, { 'start': '12', 'label': 4 } ], 'estimatedResultCount': '59600000', 'currentPageIndex': 0, 'moreResultsUrl': 'http://www.google.com/search?oe=utf8&ie=utf8...' } }, 'responseDetails': null, 'responseStatus': 200 }"; JObject googleSearch = JObject.Parse(googleSearchText); // get JSON result objects into a list IList results = googleSearch["responseData"]["results"].Children().ToList(); // serialize JSON results into .NET objects IList searchResults = new List(); foreach (JToken result in results) { SearchResult searchResult = JsonConvert.DeserializeObject(result.ToString()); searchResults.Add(searchResult); } // Title = Paris Hilton - Wikipedia, the free encyclopedia // Content = [1] In 2006, she released her debut album... // Url = http://en.wikipedia.org/wiki/Paris_Hilton // Title = Paris Hilton // Content = Self: Zoolander. Socialite Paris Hilton... // Url = http://www.imdb.com/name/nm0385296/ #endregion } public void SerializeMultidimensionalArrayExample() { string[,] famousCouples = new string[,] { { "Adam", "Eve" }, { "Bonnie", "Clyde" }, { "Donald", "Daisy" }, { "Han", "Leia" } }; string json = JsonConvert.SerializeObject(famousCouples, Formatting.Indented); // [ // ["Adam", "Eve"], // ["Bonnie", "Clyde"], // ["Donald", "Daisy"], // ["Han", "Leia"] // ] string[,] deserialized = JsonConvert.DeserializeObject(json); Console.WriteLine(deserialized[3, 0] + ", " + deserialized[3, 1]); // Han, Leia } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/0000775000175000017500000000000012454416117026554 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Bson/0000775000175000017500000000000012454416117027455 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Bson/DeserializeFromBson.cs0000664000175000017500000000175712454416117033724 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using Newtonsoft.Json.Bson; namespace Newtonsoft.Json.Tests.Documentation.Samples.Bson { public class DeserializeFromBson { #region Types public class Event { public string Name { get; set; } public DateTime StartDate { get; set; } } #endregion public void Example() { #region Usage byte[] data = Convert.FromBase64String("MQAAAAJOYW1lAA8AAABNb3ZpZSBQcmVtaWVyZQAJU3RhcnREYXRlAMDgKWE8AQAAAA=="); MemoryStream ms = new MemoryStream(data); using (BsonReader reader = new BsonReader(ms)) { JsonSerializer serializer = new JsonSerializer(); Event e = serializer.Deserialize(reader); Console.WriteLine(e.Name); // Movie Premiere } #endregion } } }././@LongLink0000644000000000000000000000015400000000000011603 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Bson/DeserializeFromBsonCollection.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Bson/DeserializeFromBsonCollec0000664000175000017500000000327212454416117034434 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using Newtonsoft.Json.Bson; namespace Newtonsoft.Json.Tests.Documentation.Samples.Bson { public class DeserializeFromBsonCollection { #region Types public class Event { public string Name { get; set; } public DateTime StartDate { get; set; } } #endregion public void Example() { //IList e = new List // { // new Event {StartDate = new DateTime(2013, 3, 31), Name = "Easter"} // }; //MemoryStream ms1 = new MemoryStream(); //using (BsonWriter writer = new BsonWriter(ms1)) //{ // JsonSerializer serializer = new JsonSerializer(); // serializer.Serialize(writer, e); //} //string ss = Convert.ToBase64String(ms1.ToArray()); //Console.WriteLine(ss); #region Usage string s = "MQAAAAMwACkAAAACTmFtZQAHAAAARWFzdGVyAAlTdGFydERhdGUAgDf0uj0BAAAAAA=="; byte[] data = Convert.FromBase64String(s); MemoryStream ms = new MemoryStream(data); using (BsonReader reader = new BsonReader(ms)) { reader.ReadRootValueAsArray = true; JsonSerializer serializer = new JsonSerializer(); IList events = serializer.Deserialize>(reader); Console.WriteLine(events.Count); // 1 Console.WriteLine(events[0].Name); // Easter } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Bson/SerializeToBson.cs0000664000175000017500000000221212454416117033055 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using Newtonsoft.Json.Bson; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Bson { public class SerializeToBson { #region Types public class Event { public string Name { get; set; } public DateTime StartDate { get; set; } } #endregion public void Example() { #region Usage Event e = new Event { Name = "Movie Premiere", StartDate = new DateTime(2013, 1, 22, 20, 30, 0) }; MemoryStream ms = new MemoryStream(); using (BsonWriter writer = new BsonWriter(ms)) { JsonSerializer serializer = new JsonSerializer(); serializer.Serialize(writer, e); } string data = Convert.ToBase64String(ms.ToArray()); Console.WriteLine(data); // MQAAAAJOYW1lAA8AAABNb3ZpZSBQcmVtaWVyZQAJU3RhcnREYXRlAMDgKWE8AQAAAA== #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Xml/0000775000175000017500000000000012454416117027314 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Xml/ConvertJsonToXml.cs0000664000175000017500000000257412454416117033111 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Xml { public class ConvertJsonToXml { public void Example() { #region Usage string json = @"{ '@Id': 1, 'Email': 'james@example.com', 'Active': true, 'CreatedDate': '2013-01-20T00:00:00Z', 'Roles': [ 'User', 'Admin' ], 'Team': { '@Id': 2, 'Name': 'Software Developers', 'Description': 'Creators of fine software products and services.' } }"; XNode node = JsonConvert.DeserializeXNode(json, "Root"); Console.WriteLine(node.ToString()); // // james@example.com // true // 2013-01-20T00:00:00Z // User // Admin // // Software Developers // Creators of fine software products and services. // // #endregion } } }././@LongLink0000644000000000000000000000015000000000000011577 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Xml/ConvertXmlToJsonForceArray.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Xml/ConvertXmlToJsonForceArray0000664000175000017500000000310412454416117034451 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml; namespace Newtonsoft.Json.Tests.Documentation.Samples.Xml { public class ConvertXmlToJsonForceArray { public void Example() { #region Usage string xml = @" Alan http://www.google.com Admin1 "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string json = JsonConvert.SerializeXmlNode(doc); Console.WriteLine(json); // { // "person": { // "@id": "1", // "name": "Alan", // "url": "http://www.google.com", // "role": "Admin1" // } // } xml = @" Alan http://www.google.com Admin "; doc = new XmlDocument(); doc.LoadXml(xml); json = JsonConvert.SerializeXmlNode(doc); Console.WriteLine(json); // { // "person": { // "@id": "1", // "name": "Alan", // "url": "http://www.google.com", // "role": [ // "Admin" // ] // } // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Xml/ConvertXmlToJson.cs0000664000175000017500000000267712454416117033115 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml; namespace Newtonsoft.Json.Tests.Documentation.Samples.Xml { public class ConvertXmlToJson { public void Example() { #region Usage string xml = @" Alan http://www.google.com Louis http://www.yahoo.com "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string json = JsonConvert.SerializeXmlNode(doc); Console.WriteLine(json); // { // "?xml": { // "@version": "1.0", // "@standalone": "no" // }, // "root": { // "person": [ // { // "@id": "1", // "name": "Alan", // "url": "http://www.google.com" // }, // { // "@id": "2", // "name": "Louis", // "url": "http://www.yahoo.com" // } // ] // } // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Json/0000775000175000017500000000000012454416117027465 5ustar directhexdirecthex././@LongLink0000644000000000000000000000015200000000000011601 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Json/WriteJsonWithJsonTextWriter.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Json/WriteJsonWithJsonTextWrit0000664000175000017500000000302712454416117034537 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Json { public class WriteJsonWithJsonTextWriter { public void Example() { #region Usage StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter writer = new JsonTextWriter(sw)) { writer.Formatting = Formatting.Indented; writer.WriteStartObject(); writer.WritePropertyName("CPU"); writer.WriteValue("Intel"); writer.WritePropertyName("PSU"); writer.WriteValue("500W"); writer.WritePropertyName("Drives"); writer.WriteStartArray(); writer.WriteValue("DVD read/writer"); writer.WriteComment("(broken)"); writer.WriteValue("500 gigabyte hard drive"); writer.WriteValue("200 gigabype hard drive"); writer.WriteEnd(); writer.WriteEndObject(); } Console.WriteLine(sb.ToString()); // { // "CPU": "Intel", // "PSU": "500W", // "Drives": [ // "DVD read/writer" // /*(broken)*/, // "500 gigabyte hard drive", // "200 gigabype hard drive" // ] // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Json/CustomJsonReader.cs0000664000175000017500000004364512454416117033257 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Xml; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Documentation.Samples.Json { #region Types public class XmlJsonReader : JsonReader { private readonly Stack _stateStack; private readonly XmlReader _reader; private JTokenType? _valueType; public XmlJsonReader(XmlReader reader) { _reader = reader; _stateStack = new Stack(); } private JTokenType PeekState() { JTokenType current = (_stateStack.Count > 0) ? _stateStack.Peek() : JTokenType.None; return current; } public override bool Read() { if (HandleValueType()) return true; while (_reader.Read()) { switch (_reader.NodeType) { case XmlNodeType.Element: string typeName = _reader.GetAttribute("type"); if (typeName == null) throw new Exception("No type specified."); _valueType = (JTokenType)Enum.Parse(typeof(JTokenType), typeName, true); switch (PeekState()) { case JTokenType.None: HandleValueType(); return true; case JTokenType.Object: SetToken(JsonToken.PropertyName, _reader.LocalName); _stateStack.Push(JTokenType.Property); return true; case JTokenType.Array: case JTokenType.Constructor: continue; default: throw new ArgumentOutOfRangeException(); } case XmlNodeType.EndElement: switch (_stateStack.Peek()) { case JTokenType.Object: SetToken(JsonToken.EndObject); _stateStack.Pop(); if (PeekState() == JTokenType.Property) _stateStack.Pop(); return true; case JTokenType.Array: SetToken(JsonToken.EndArray); _stateStack.Pop(); if (PeekState() == JTokenType.Property) _stateStack.Pop(); return true; case JTokenType.Constructor: SetToken(JsonToken.EndConstructor); _stateStack.Pop(); if (PeekState() == JTokenType.Property) _stateStack.Pop(); return true; } _stateStack.Pop(); if (PeekState() == JTokenType.Property) _stateStack.Pop(); break; case XmlNodeType.Text: case XmlNodeType.CDATA: switch (_valueType) { case JTokenType.Integer: SetToken(JsonToken.Integer, Convert.ToInt64(_reader.Value)); break; case JTokenType.Float: SetToken(JsonToken.Float, Convert.ToDouble(_reader.Value)); break; case JTokenType.String: case JTokenType.Uri: case JTokenType.TimeSpan: case JTokenType.Guid: SetToken(JsonToken.String, _reader.Value); break; case JTokenType.Boolean: SetToken(JsonToken.Boolean, Convert.ToBoolean(_reader.Value)); break; case JTokenType.Date: SetToken(JsonToken.Date, Convert.ToDateTime(_reader.Value)); break; case JTokenType.Bytes: SetToken(JsonToken.Bytes, Convert.FromBase64String(_reader.Value)); break; default: throw new ArgumentOutOfRangeException(); } _stateStack.Push(_valueType.Value); return true; default: throw new ArgumentOutOfRangeException(); } } return false; } private bool HandleValueType() { switch (_valueType) { case JTokenType.Null: SetToken(JsonToken.Null); _valueType = null; if (PeekState() == JTokenType.Property) _stateStack.Pop(); return true; case JTokenType.Object: SetToken(JsonToken.StartObject); _stateStack.Push(JTokenType.Object); _valueType = null; return true; case JTokenType.Array: SetToken(JsonToken.StartArray); _stateStack.Push(JTokenType.Array); _valueType = null; return true; case JTokenType.Constructor: string constructorName = _reader.GetAttribute("name"); if (constructorName == null) throw new Exception("No constructor name specified."); SetToken(JsonToken.StartConstructor, constructorName); _stateStack.Push(JTokenType.Constructor); _valueType = null; return true; } return false; } public override int? ReadAsInt32() { if (!Read()) return null; return (Value != null) ? (int?)Convert.ToInt32(Value) : null; } public override string ReadAsString() { if (!Read()) return null; return (string)Value; } public override byte[] ReadAsBytes() { if (!Read()) return null; return (byte[])Value; } public override decimal? ReadAsDecimal() { if (!Read()) return null; return (Value != null) ? (decimal?)Convert.ToDecimal(Value) : null; } public override DateTime? ReadAsDateTime() { if (!Read()) return null; return (Value != null) ? (DateTime?)Convert.ToDateTime(Value) : null; } public override DateTimeOffset? ReadAsDateTimeOffset() { if (!Read()) return null; return (Value != null) ? (DateTimeOffset?)Convert.ToDateTime(Value) : null; } } #endregion public class CustomJsonReader { public void Example() { #region Usage string xml = @" This is a string! ! 123 2001-02-22T20:59:59Z 2001-02-22T20:59:59+12:00 1.1 3.14 19.95 d66eab59-3715-4b35-9e06-fa61c1216eaa http://james.newtonking.com 1 SGVsbG8gd29ybGQh True This is a string! 2000 12 30 "; StringReader sr = new StringReader(xml); using (XmlReader xmlReader = XmlReader.Create(sr, new XmlReaderSettings { IgnoreWhitespace = true })) using (XmlJsonReader reader = new XmlJsonReader(xmlReader)) { JObject o = JObject.Load(reader); //{ // "Null": null, // "String": "This is a string!", // "Char": "!", // "Integer": 123, // "DateTime": "2001-02-23T09:59:59+13:00", // "DateTimeOffset": "2001-02-22T21:59:59+13:00", // "Float": 1.1, // "Double": 3.14, // "Decimal": 19.95, // "Guid": "d66eab59-3715-4b35-9e06-fa61c1216eaa", // "Uri": "http://james.newtonking.com", // "Array": [ // 1, // "SGVsbG8gd29ybGQh", // true // ], // "Object": { // "String": "This is a string!", // "Null": null // }, // "Constructor": new Date(2000, 12, 30) //} } #endregion using (XmlReader xmlReader = XmlReader.Create(new StringReader(xml), new XmlReaderSettings { IgnoreWhitespace = true })) using (XmlJsonReader reader = new XmlJsonReader(xmlReader)) { Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Null", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("String", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("This is a string!", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Char", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("!", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Integer", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(123, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("DateTime", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(DateTime.Parse("2001-02-22T20:59:59Z"), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("DateTimeOffset", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(DateTime.Parse("2001-02-22T20:59:59+12:00"), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Float", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(1.1d, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Double", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(3.14d, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Decimal", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(19.95d, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Guid", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("d66eab59-3715-4b35-9e06-fa61c1216eaa", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Uri", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("http://james.newtonking.com", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Array", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.AreEqual(1, reader.ReadAsInt32()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(1, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Bytes, reader.TokenType); Assert.AreEqual(Encoding.UTF8.GetBytes("Hello world!"), reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.AreEqual(true, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Object", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("String", reader.Value); Assert.AreEqual("This is a string!", reader.ReadAsString()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("This is a string!", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Null", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Constructor", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartConstructor, reader.TokenType); Assert.AreEqual("Date", reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(2000, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(12, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(30, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndConstructor, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } } } }././@LongLink0000644000000000000000000000015100000000000011600 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Json/ReadJsonWithJsonTextReader.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Json/ReadJsonWithJsonTextReade0000664000175000017500000000306012454416117034410 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Json { public class ReadJsonWithJsonTextReader { public void Example() { #region Usage string json = @"{ 'CPU': 'Intel', 'PSU': '500W', 'Drives': [ 'DVD read/writer' /*(broken)*/, '500 gigabyte hard drive', '200 gigabype hard drive' ] }"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); while (reader.Read()) { if (reader.Value != null) Console.WriteLine("Token: {0}, Value: {1}", reader.TokenType, reader.Value); else Console.WriteLine("Token: {0}", reader.TokenType); } // Token: StartObject // Token: PropertyName, Value: CPU // Token: String, Value: Intel // Token: PropertyName, Value: PSU // Token: String, Value: 500W // Token: PropertyName, Value: Drives // Token: StartArray // Token: String, Value: DVD read/writer // Token: Comment, Value: (broken) // Token: String, Value: 500 gigabyte hard drive // Token: String, Value: 200 gigabype hard drive // Token: EndArray // Token: EndObject #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Json/CustomJsonWriter.cs0000664000175000017500000003042512454416117033321 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; using System.Text; using System.Xml; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Json { #region Types public class XmlJsonWriter : JsonWriter { private readonly XmlWriter _writer; private string _propertyName; public XmlJsonWriter(XmlWriter writer) { _writer = writer; } public override void WriteComment(string text) { base.WriteComment(text); _writer.WriteComment(text); } public override void WritePropertyName(string name) { base.WritePropertyName(name); _propertyName = name; } public override void WriteNull() { base.WriteNull(); WriteValueElement(JTokenType.Null); _writer.WriteEndElement(); } public override void WriteValue(DateTime value) { base.WriteValue(value); WriteValueElement(JTokenType.Date); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(DateTimeOffset value) { base.WriteValue(value); WriteValueElement(JTokenType.Date); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(Guid value) { base.WriteValue(value); WriteValueElement(JTokenType.Guid); _writer.WriteValue(value.ToString()); _writer.WriteEndElement(); } public override void WriteValue(TimeSpan value) { base.WriteValue(value); WriteValueElement(JTokenType.TimeSpan); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(Uri value) { base.WriteValue(value); WriteValueElement(JTokenType.Uri); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(string value) { base.WriteValue(value); WriteValueElement(JTokenType.String); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(int value) { base.WriteValue(value); WriteValueElement(JTokenType.Integer); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(long value) { base.WriteValue(value); WriteValueElement(JTokenType.Integer); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(short value) { base.WriteValue(value); WriteValueElement(JTokenType.Integer); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(byte value) { base.WriteValue(value); WriteValueElement(JTokenType.Integer); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(bool value) { base.WriteValue(value); WriteValueElement(JTokenType.Boolean); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(char value) { base.WriteValue(value); WriteValueElement(JTokenType.String); _writer.WriteValue(value.ToString(CultureInfo.InvariantCulture)); _writer.WriteEndElement(); } public override void WriteValue(decimal value) { base.WriteValue(value); WriteValueElement(JTokenType.Float); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(double value) { base.WriteValue(value); WriteValueElement(JTokenType.Float); _writer.WriteValue(value); _writer.WriteEndElement(); } public override void WriteValue(float value) { base.WriteValue(value); WriteValueElement(JTokenType.Float); _writer.WriteValue(value); _writer.WriteEndElement(); } private void WriteValueElement(JTokenType type) { if (_propertyName != null) { WriteValueElement(_propertyName, type); _propertyName = null; } else { WriteValueElement("Item", type); } } private void WriteValueElement(string elementName, JTokenType type) { _writer.WriteStartElement(elementName); _writer.WriteAttributeString("type", type.ToString()); } public override void WriteStartArray() { bool isStart = (WriteState == WriteState.Start); base.WriteStartArray(); if (isStart) WriteValueElement("Root", JTokenType.Array); else WriteValueElement(JTokenType.Array); } public override void WriteStartObject() { bool isStart = (WriteState == WriteState.Start); base.WriteStartObject(); if (isStart) WriteValueElement("Root", JTokenType.Object); else WriteValueElement(JTokenType.Object); } public override void WriteStartConstructor(string name) { bool isStart = (WriteState == WriteState.Start); base.WriteStartConstructor(name); if (isStart) WriteValueElement("Root", JTokenType.Constructor); else WriteValueElement(JTokenType.Constructor); _writer.WriteAttributeString("name", name); } public override void WriteEndArray() { base.WriteEndArray(); _writer.WriteEndElement(); } public override void WriteEndObject() { base.WriteEndObject(); _writer.WriteEndElement(); } public override void WriteEndConstructor() { base.WriteEndConstructor(); _writer.WriteEndElement(); } public override void Flush() { _writer.Flush(); } protected override void WriteIndent() { _writer.WriteWhitespace(Environment.NewLine); // levels of indentation multiplied by the indent count int currentIndentCount = Top * 2; while (currentIndentCount > 0) { // write up to a max of 10 characters at once to avoid creating too many new strings int writeCount = Math.Min(currentIndentCount, 10); _writer.WriteWhitespace(new string(' ', writeCount)); currentIndentCount -= writeCount; } } } #endregion public class CustomJsonWriter { public void Example() { #region Usage var user = new { Name = "James", Age = 30, Enabled = true, Roles = new[] { "Publisher", "Administrator" } }; StringWriter sw = new StringWriter(); using (XmlWriter xmlWriter = XmlWriter.Create(sw, new XmlWriterSettings { OmitXmlDeclaration = true })) using (XmlJsonWriter writer = new XmlJsonWriter(xmlWriter)) { writer.Formatting = Formatting.Indented; JsonSerializer serializer = new JsonSerializer(); serializer.Serialize(writer, user); } Console.WriteLine(sw.ToString()); // // James // 30 // true // // Publisher // Administrator // // #endregion sw = new StringWriter(); using (XmlWriter xmlWriter = XmlWriter.Create(sw, new XmlWriterSettings { OmitXmlDeclaration = true })) using (XmlJsonWriter writer = new XmlJsonWriter(xmlWriter)) { writer.Formatting = Formatting.Indented; writer.WriteStartObject(); writer.WritePropertyName("Null"); writer.WriteNull(); writer.WritePropertyName("String"); writer.WriteValue("This is a string!"); writer.WritePropertyName("Char"); writer.WriteValue('!'); writer.WritePropertyName("Integer"); writer.WriteValue(123); writer.WritePropertyName("DateTime"); writer.WriteValue(new DateTime(2001, 2, 22, 20, 59, 59, DateTimeKind.Utc)); writer.WritePropertyName("DateTimeOffset"); writer.WriteValue(new DateTimeOffset(2001, 2, 22, 20, 59, 59, TimeSpan.FromHours(12))); writer.WritePropertyName("Float"); writer.WriteValue(1.1f); writer.WritePropertyName("Double"); writer.WriteValue(3.14d); writer.WritePropertyName("Decimal"); writer.WriteValue(19.95m); writer.WritePropertyName("Guid"); writer.WriteValue(Guid.NewGuid()); writer.WritePropertyName("Uri"); writer.WriteValue(new Uri("http://james.newtonking.com")); writer.WritePropertyName("Array"); writer.WriteStartArray(); writer.WriteValue(1); writer.WriteValue(2); writer.WriteValue(3); writer.WriteEndArray(); writer.WritePropertyName("Object"); writer.WriteStartObject(); writer.WritePropertyName("String"); writer.WriteValue("This is a string!"); writer.WritePropertyName("Null"); writer.WriteNull(); writer.WriteEndObject(); writer.WritePropertyName("Constructor"); writer.WriteStartConstructor("Date"); writer.WriteValue(2000); writer.WriteValue(12); writer.WriteValue(30); writer.WriteEndConstructor(); writer.WriteEndObject(); writer.Flush(); } Console.WriteLine(sw.ToString()); // // // This is a string! // ! // 123 // 2001-02-22T20:59:59Z // 2001-02-22T20:59:59+12:00 // 1.1 // 3.14 // 19.95 // d66eab59-3715-4b35-9e06-fa61c1216eaa // http://james.newtonking.com // // 1 // 2 // 3 // // // This is a string! // // // // 2000 // 12 // 30 // // } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/0000775000175000017500000000000012454416117027754 5ustar directhexdirecthex././@LongLink0000644000000000000000000000015000000000000011577 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/JTokenValidateWithEvent.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/JTokenValidateWithEvent0000664000175000017500000000263112454416117034403 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Schema { public class JTokenValidateWithEvent { public void Example() { #region Usage string schemaJson = @"{ 'description': 'A person', 'type': 'object', 'properties': { 'name': {'type':'string'}, 'hobbies': { 'type': 'array', 'items': {'type':'string'} } } }"; JsonSchema schema = JsonSchema.Parse(schemaJson); JObject person = JObject.Parse(@"{ 'name': null, 'hobbies': ['Invalid content', 0.123456789] }"); IList messages = new List(); ValidationEventHandler validationEventHandler = (sender, args) => { messages.Add(args.Message); }; person.Validate(schema, validationEventHandler); foreach (string message in messages) { Console.WriteLine(message); } // Invalid type. Expected String but got Null. Line 2, position 21. // Invalid type. Expected String but got Float. Line 3, position 51. #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/JsonSchemaParse.cs0000664000175000017500000000203312454416117033326 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Schema { public class JsonSchemaParse { public void Example() { #region Usage string schemaJson = @"{ 'description': 'A person', 'type': 'object', 'properties': { 'name': {'type':'string'}, 'hobbies': { 'type': 'array', 'items': {'type':'string'} } } }"; JsonSchema schema = JsonSchema.Parse(schemaJson); Console.WriteLine(schema.Type); // Object foreach (var property in schema.Properties) { Console.WriteLine(property.Key + " - " + property.Value.Type); } // name - String // hobbies - Array #endregion } } }././@LongLink0000644000000000000000000000015100000000000011600 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/CreateJsonSchemaManually.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/CreateJsonSchemaManuall0000664000175000017500000000323712454416117034374 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Schema { public class CreateJsonSchemaManually { public void Example() { #region Usage JsonSchema schema = new JsonSchema(); schema.Type = JsonSchemaType.Object; schema.Properties = new Dictionary { { "name", new JsonSchema { Type = JsonSchemaType.String } }, { "hobbies", new JsonSchema { Type = JsonSchemaType.Array, Items = new List { new JsonSchema { Type = JsonSchemaType.String } } } }, }; string schemaJson = schema.ToString(); Console.WriteLine(schemaJson); // { // "type": "object", // "properties": { // "name": { // "type": "string" // }, // "hobbies": { // "type": "array", // "items": { // "type": "string" // } // } // } // } JObject person = JObject.Parse(@"{ 'name': 'James', 'hobbies': ['.NET', 'Blogging', 'Reading', 'Xbox', 'LOLCATS'] }"); bool valid = person.IsValid(schema); Console.WriteLine(valid); // true #endregion } } }././@LongLink0000644000000000000000000000015200000000000011601 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/JTokenIsValidWithMessages.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/JTokenIsValidWithMessag0000664000175000017500000000252412454416117034344 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Schema { public class JTokenIsValidWithMessages { public void Example() { #region Usage string schemaJson = @"{ 'description': 'A person', 'type': 'object', 'properties': { 'name': {'type':'string'}, 'hobbies': { 'type': 'array', 'items': {'type':'string'} } } }"; JsonSchema schema = JsonSchema.Parse(schemaJson); JObject person = JObject.Parse(@"{ 'name': null, 'hobbies': ['Invalid content', 0.123456789] }"); IList messages; bool valid = person.IsValid(schema, out messages); Console.WriteLine(valid); // false foreach (string message in messages) { Console.WriteLine(message); } // Invalid type. Expected String but got Null. Line 2, position 21. // Invalid type. Expected String but got Float. Line 3, position 51. #endregion } } }././@LongLink0000644000000000000000000000016200000000000011602 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/JsonValidatingReaderAndSerializer.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/JsonValidatingReaderAnd0000664000175000017500000000331512454416117034363 0ustar directhexdirecthexusing Newtonsoft.Json.Schema; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Schema { public class JsonValidatingReaderAndSerializer { #region Types public class Person { public string Name { get; set; } public IList Hobbies { get; set; } } #endregion public void Example() { #region Usage string schemaJson = @"{ 'description': 'A person', 'type': 'object', 'properties': { 'name': {'type':'string'}, 'hobbies': { 'type': 'array', 'items': {'type':'string'} } } }"; string json = @"{ 'name': 'James', 'hobbies': ['.NET', 'Blogging', 'Reading', 'Xbox', 'LOLCATS'] }"; JsonTextReader reader = new JsonTextReader(new StringReader(json)); JsonValidatingReader validatingReader = new JsonValidatingReader(reader); validatingReader.Schema = JsonSchema.Parse(schemaJson); IList messages = new List(); validatingReader.ValidationEventHandler += (o, a) => messages.Add(a.Message); JsonSerializer serializer = new JsonSerializer(); Person p = serializer.Deserialize(validatingReader); Console.WriteLine(p.Name); // James bool isValid = (messages.Count == 0); Console.WriteLine(isValid); // true #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/JTokenIsValid.cs0000664000175000017500000000176512454416117032762 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Schema { public class JTokenIsValid { public void Example() { #region Usage JsonSchema schema = JsonSchema.Parse(@"{ 'type': 'object', 'properties': { 'name': {'type':'string'}, 'hobbies': { 'type': 'array', 'items': {'type':'string'} } } }"); JObject person = JObject.Parse(@"{ 'name': 'James', 'hobbies': ['.NET', 'Blogging', 'Reading', 'Xbox', 'LOLCATS'] }"); IList errorMessages; bool valid = person.IsValid(schema, out errorMessages); Console.WriteLine(valid); // true #endregion } } }././@LongLink0000644000000000000000000000014600000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/RefJsonSchemaResolver.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/RefJsonSchemaResolver.c0000664000175000017500000000274512454416117034341 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Schema { public class RefJsonSchemaResolver { public void Example() { #region Usage string schemaJson; JsonSchemaResolver resolver = new JsonSchemaResolver(); schemaJson = @"{ 'id': 'person', 'type': 'object', 'properties': { 'name': {'type':'string'}, 'age': {'type':'integer'} } }"; JsonSchema personSchema = JsonSchema.Parse(schemaJson, resolver); schemaJson = @"{ 'id': 'employee', 'type': 'object', 'extends': {'$ref':'person'}, 'properties': { 'salary': {'type':'number'}, 'jobTitle': {'type':'string'} } }"; JsonSchema employeeSchema = JsonSchema.Parse(schemaJson, resolver); string json = @"{ 'name': 'James', 'age': 29, 'salary': 9000.01, 'jobTitle': 'Junior Vice President' }"; JObject employee = JObject.Parse(json); bool valid = employee.IsValid(employeeSchema); Console.WriteLine(valid); // true #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/SaveJsonSchemaToFile.cs0000664000175000017500000000157112454416117034263 0ustar directhexdirecthexusing Newtonsoft.Json.Schema; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Schema { public class SaveJsonSchemaToFile { public void Example() { #region Usage JsonSchema schema = new JsonSchema { Type = JsonSchemaType.Object }; // serialize JsonSchema to a string and then write string to a file File.WriteAllText(@"c:\schema.json", schema.ToString()); // serialize JsonSchema directly to a file using (StreamWriter file = File.CreateText(@"c:\schema.json")) using (JsonTextWriter writer = new JsonTextWriter(file)) { schema.WriteTo(writer); } #endregion } } }././@LongLink0000644000000000000000000000014700000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/LoadJsonSchemaFromFile.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Schema/LoadJsonSchemaFromFile.0000664000175000017500000000144112454416117034233 0ustar directhexdirecthexusing Newtonsoft.Json.Schema; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Schema { public class LoadJsonSchemaFromFile { public void Example() { #region Usage // read file into a string and parse JsonSchema from the string JsonSchema schema1 = JsonSchema.Parse(File.ReadAllText(@"c:\schema.json")); // read JsonSchema directly from a file using (StreamReader file = File.OpenText(@"c:\schema.json")) using (JsonTextReader reader = new JsonTextReader(file)) { JsonSchema schema2 = JsonSchema.Read(reader); } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/0000775000175000017500000000000012454416117027457 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/Clone.cs0000664000175000017500000000212212454416117031043 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class Clone { public void Example() { #region Usage JObject o1 = new JObject { { "String", "A string!" }, { "Items", new JArray(1, 2) } }; Console.WriteLine(o1.ToString()); // { // "String": "A string!", // "Items": [ // 1, // 2 // ] // } JObject o2 = (JObject)o1.DeepClone(); Console.WriteLine(o2.ToString()); // { // "String": "A string!", // "Items": [ // 1, // 2 // ] // } Console.WriteLine(JToken.DeepEquals(o1, o2)); // true Console.WriteLine(Object.ReferenceEquals(o1, o2)); // false #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ToObjectType.cs0000664000175000017500000000126712454416117032367 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ToObjectType { public void Example() { #region Usage JValue v1 = new JValue(true); bool b = (bool)v1.ToObject(typeof(bool)); Console.WriteLine(b); // true int i = (int)v1.ToObject(typeof(int)); Console.WriteLine(i); // 1 string s = (string)v1.ToObject(typeof(string)); Console.WriteLine(s); // "True" #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ReadJTokenFromBson.cs0000664000175000017500000000145412454416117033446 0ustar directhexdirecthexusing Newtonsoft.Json.Bson; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ReadJTokenFromBson { public void Example() { #region Usage byte[] data = Convert.FromBase64String("KQAAAAJuYW1lMQAHAAAAdmFsdWUxAAJuYW1lMgAHAAAAdmFsdWUyAAA="); MemoryStream ms = new MemoryStream(data); JObject o; using (BsonReader reader = new BsonReader(ms)) { o = (JObject)JToken.ReadFrom(reader); } string value = (string)o["name1"]; Console.WriteLine(value); // value1 #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/WriteJTokenToBson.cs0000664000175000017500000000153512454416117033344 0ustar directhexdirecthexusing Newtonsoft.Json.Bson; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class WriteJTokenToBson { public void Example() { #region Usage JObject o = new JObject { { "name1", "value1" }, { "name2", "value2" } }; MemoryStream ms = new MemoryStream(); using (BsonWriter writer = new BsonWriter(ms)) { o.WriteTo(writer); } string data = Convert.ToBase64String(ms.ToArray()); Console.WriteLine(data); // KQAAAAJuYW1lMQAHAAAAdmFsdWUxAAJuYW1lMgAHAAAAdmFsdWUyAAA= #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/QueryJsonLinq.cs0000664000175000017500000000441112454416117032571 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class QueryJsonLinq { public void Example() { #region Usage string json = @"{ 'channel': { 'title': 'James Newton-King', 'link': 'http://james.newtonking.com', 'description': 'James Newton-King\'s blog.', 'item': [ { 'title': 'Json.NET 1.3 + New license + Now on CodePlex', 'description': 'Annoucing the release of Json.NET 1.3, the MIT license and the source on CodePlex', 'link': 'http://james.newtonking.com/projects/json-net.aspx', 'category': [ 'Json.NET', 'CodePlex' ] }, { 'title': 'LINQ to JSON beta', 'description': 'Annoucing LINQ to JSON', 'link': 'http://james.newtonking.com/projects/json-net.aspx', 'category': [ 'Json.NET', 'LINQ' ] } ] } }"; JObject rss = JObject.Parse(json); var postTitles = from p in rss["channel"]["item"] select (string)p["title"]; foreach (var item in postTitles) { Console.WriteLine(item); } //LINQ to JSON beta //Json.NET 1.3 + New license + Now on CodePlex var categories = from c in rss["channel"]["item"].Children()["category"].Values() group c by c into g orderby g.Count() descending select new { Category = g.Key, Count = g.Count() }; foreach (var c in categories) { Console.WriteLine(c.Category + " - Count: " + c.Count); } //Json.NET - Count: 2 //LINQ - Count: 1 //CodePlex - Count: 1 #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateJsonDynamic.cs0000664000175000017500000000175412454416117033357 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class CreateJsonDynamic { public void Example() { #region Usage dynamic product = new JObject(); product.ProductName = "Elbow Grease"; product.Enabled = true; product.Price = 4.90m; product.StockCount = 9000; product.StockValue = 44100; product.Tags = new JArray("Real", "OnSale"); Console.WriteLine(product.ToString()); // { // "ProductName": "Elbow Grease", // "Enabled": true, // "Price": 4.90, // "StockCount": 9000, // "StockValue": 44100, // "Tags": [ // "Real", // "OnSale" // ] // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/FromObject.cs0000664000175000017500000000324412454416117032043 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class FromObject { #region Types public class Computer { public string Cpu { get; set; } public int Memory { get; set; } public IList Drives { get; set; } } #endregion public void Example() { #region Usage JValue i = (JValue)JToken.FromObject(12345); Console.WriteLine(i.Type); // Integer Console.WriteLine(i.ToString()); // 12345 JValue s = (JValue)JToken.FromObject("A string"); Console.WriteLine(s.Type); // String Console.WriteLine(s.ToString()); // A string Computer computer = new Computer { Cpu = "Intel", Memory = 32, Drives = new List { "DVD", "SSD" } }; JObject o = (JObject)JToken.FromObject(computer); Console.WriteLine(o.ToString()); // { // "Cpu": "Intel", // "Memory": 32, // "Drives": [ // "DVD", // "SSD" // ] // } JArray a = (JArray)JToken.FromObject(computer.Drives); Console.WriteLine(a.ToString()); // [ // "DVD", // "SSD" // ] #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/JValueCast.cs0000664000175000017500000000247412454416117032016 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class JValueCast { public void Example() { #region Usage JValue v1 = new JValue("1"); int i = (int)v1; Console.WriteLine(i); // 1 JValue v2 = new JValue(true); bool b = (bool)v2; Console.WriteLine(b); // true JValue v3 = new JValue("19.95"); decimal d = (decimal)v3; Console.WriteLine(d); // 19.95 JValue v4 = new JValue(new DateTime(2013, 1, 21)); string s = (string)v4; Console.WriteLine(s); // 01/21/2013 00:00:00 JValue v5 = new JValue("http://www.bing.com"); Uri u = (Uri)v5; Console.WriteLine(u); // http://www.bing.com/ JValue v6 = JValue.CreateNull(); u = (Uri)v6; Console.WriteLine((u != null) ? u.ToString() : "{null}"); // {null} DateTime? dt = (DateTime?)v6; Console.WriteLine((dt != null) ? dt.ToString() : "{null}"); // {null} #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/SerializeWithLinq.cs0000664000175000017500000000421012454416117033412 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class SerializeWithLinq { #region Types public class BlogPost { public string Title { get; set; } public string AuthorName { get; set; } public string AuthorTwitter { get; set; } public string Body { get; set; } public DateTime PostedDate { get; set; } } #endregion public void Example() { #region Usage IList blogPosts = new List { new BlogPost { Title = "Json.NET is awesome!", AuthorName = "James Newton-King", AuthorTwitter = "JamesNK", PostedDate = new DateTime(2013, 1, 23, 19, 30, 0), Body = @"

Title!

Content!

" } }; JArray blogPostsArray = new JArray( blogPosts.Select(p => new JObject { { "Title", p.Title }, { "Author", new JObject { { "Name", p.AuthorName }, { "Twitter", p.AuthorTwitter } } }, { "Date", p.PostedDate }, { "BodyHtml", HttpUtility.HtmlEncode(p.Body) }, }) ); Console.WriteLine(blogPostsArray.ToString()); // [ // { // "Title": "Json.NET is awesome!", // "Author": { // "Name": "James Newton-King", // "Twitter": "JamesNK" // }, // "Date": "2013-01-23T19:30:00", // "BodyHtml": "<h3>Title!</h3>\r\n<p>Content!</p>" // } // ] #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ParseJsonAny.cs0000664000175000017500000000137112454416117032364 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ParseJsonAny { public void Example() { #region Usage JToken t1 = JToken.Parse("{}"); Console.WriteLine(t1.Type); // Object JToken t2 = JToken.Parse("[]"); Console.WriteLine(t2.Type); // Array JToken t3 = JToken.Parse("null"); Console.WriteLine(t3.Type); // Null JToken t4 = JToken.Parse(@"'A string!'"); Console.WriteLine(t4.Type); // String #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ToObjectComplex.cs0000664000175000017500000000174012454416117033051 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ToObjectComplex { #region Types public class Person { public string Name { get; set; } } #endregion public void Example() { #region Usage string json = @"{ 'd': [ { 'Name': 'John Smith' }, { 'Name': 'Mike Smith' } ] }"; JObject o = JObject.Parse(json); JArray a = (JArray)o["d"]; IList person = a.ToObject>(); Console.WriteLine(person[0].Name); // John Smith Console.WriteLine(person[1].Name); // Mike Smith #endregion } } }././@LongLink0000644000000000000000000000015300000000000011602 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/QueryJsonSelectTokenWithLinq.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/QueryJsonSelectTokenWithL0000664000175000017500000000343612454416117034460 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class QueryJsonSelectTokenWithLinq { public void Example() { #region Usage JObject o = JObject.Parse(@"{ 'Stores': [ 'Lambton Quay', 'Willis Street' ], 'Manufacturers': [ { 'Name': 'Acme Co', 'Products': [ { 'Name': 'Anvil', 'Price': 50 } ] }, { 'Name': 'Contoso', 'Products': [ { 'Name': 'Elbow Grease', 'Price': 99.95 }, { 'Name': 'Headlight Fluid', 'Price': 4 } ] } ] }"); IList storeNames = o.SelectToken("Stores").Select(s => (string)s).ToList(); Console.WriteLine(string.Join(", ", storeNames)); // Lambton Quay, Willis Street IList firstProductNames = o["Manufacturers"].Select(m => (string)m.SelectToken("Products[1].Name")) .Where(n => n != null).ToList(); Console.WriteLine(string.Join(", ", firstProductNames)); // Headlight Fluid decimal totalPrice = o["Manufacturers"].Sum(m => (decimal)m.SelectToken("Products[0].Price")); Console.WriteLine(totalPrice); // 149.95 #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ToString.cs0000664000175000017500000000173412454416117031564 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ToString { public void Example() { #region Usage JObject o = JObject.Parse(@"{'string1':'value','integer2':99,'datetime3':'2000-05-23T00:00:00'}"); Console.WriteLine(o.ToString()); // { // "string1": "value", // "integer2": 99, // "datetime3": "2000-05-23T00:00:00" // } Console.WriteLine(o.ToString(Formatting.None)); // {"string1":"value","integer2":99,"datetime3":"2000-05-23T00:00:00"} Console.WriteLine(o.ToString(Formatting.None, new JavaScriptDateTimeConverter())); // {"string1":"value","integer2":99,"datetime3":new Date(959032800000)} #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/JObjectProperties.cs0000664000175000017500000000162712454416117033411 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class JObjectProperties { public void Example() { #region Usage JObject o = new JObject { { "name1", "value1" }, { "name2", "value2" } }; foreach (JProperty property in o.Properties()) { Console.WriteLine(property.Name + " - " + property.Value); } // name1 - value1 // name2 - value2 foreach (KeyValuePair property in o) { Console.WriteLine(property.Key + " - " + property.Value); } // name1 - value1 // name2 - value2 #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/DeserializeWithLinq.cs0000664000175000017500000000324612454416117033733 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class DeserializeWithLinq { #region Types public class BlogPost { public string Title { get; set; } public string AuthorName { get; set; } public string AuthorTwitter { get; set; } public string Body { get; set; } public DateTime PostedDate { get; set; } } #endregion public void Example() { #region Usage string json = @"[ { 'Title': 'Json.NET is awesome!', 'Author': { 'Name': 'James Newton-King', 'Twitter': '@JamesNK', 'Picture': '/jamesnk.png' }, 'Date': '2013-01-23T19:30:00', 'BodyHtml': '<h3>Title!</h3>\r\n<p>Content!</p>' } ]"; JArray blogPostArray = JArray.Parse(json); IList blogPosts = blogPostArray.Select(p => new BlogPost { Title = (string)p["Title"], AuthorName = (string)p["Author"]["Name"], AuthorTwitter = (string)p["Author"]["Twitter"], PostedDate = (DateTime)p["Date"], Body = HttpUtility.HtmlDecode((string)p["BodyHtml"]) }).ToList(); Console.WriteLine(blogPosts[0].Body); //

Title!

//

Content!

#endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ParseJsonObject.cs0000664000175000017500000000144512454416117033045 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ParseJsonObject { public void Example() { #region Usage string json = @"{ CPU: 'Intel', Drives: [ 'DVD read/writer', '500 gigabyte hard drive' ] }"; JObject o = JObject.Parse(json); Console.WriteLine(o.ToString()); // { // "CPU": "Intel", // "Drives": [ // "DVD read/writer", // "500 gigabyte hard drive" // ] // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ReadJson.cs0000664000175000017500000000127312454416117031516 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ReadJson { public void Example() { #region Usage JObject o1 = JObject.Parse(File.ReadAllText(@"c:\videogames.json")); // read JSON directly from a file using (StreamReader file = File.OpenText(@"c:\videogames.json")) using (JsonTextReader reader = new JsonTextReader(file)) { JObject o2 = (JObject)JToken.ReadFrom(reader); } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/DeepEquals.cs0000664000175000017500000000223012454416117032033 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class DeepEquals { public void Example() { #region Usage JValue s1 = new JValue("A string"); JValue s2 = new JValue("A string"); JValue s3 = new JValue("A STRING"); Console.WriteLine(JToken.DeepEquals(s1, s2)); // true Console.WriteLine(JToken.DeepEquals(s2, s3)); // false JObject o1 = new JObject { { "Integer", 12345 }, { "String", "A string" }, { "Items", new JArray(1, 2) } }; JObject o2 = new JObject { { "Integer", 12345 }, { "String", "A string" }, { "Items", new JArray(1, 2) } }; Console.WriteLine(JToken.DeepEquals(o1, o2)); // true Console.WriteLine(JToken.DeepEquals(s1, o1["String"])); // true #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ParseJsonArray.cs0000664000175000017500000000120012454416117032702 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ParseJsonArray { public void Example() { #region Usage string json = @"[ 'Small', 'Medium', 'Large' ]"; JArray a = JArray.Parse(json); Console.WriteLine(a.ToString()); // [ // "Small", // "Medium", // "Large" // ] #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateWriter.cs0000664000175000017500000000166112454416117032412 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class CreateWriter { public void Example() { #region Usage JObject o = new JObject { { "name1", "value1" }, { "name2", "value2" } }; JsonWriter writer = o.CreateWriter(); writer.WritePropertyName("name3"); writer.WriteStartArray(); writer.WriteValue(1); writer.WriteValue(2); writer.WriteEndArray(); Console.WriteLine(o.ToString()); // { // "name1": "value1", // "name2": "value2", // "name3": [ // 1, // 2 // ] // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ModifyJson.cs0000664000175000017500000000303612454416117032071 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ModifyJson { public void Example() { #region Usage string json = @"{ 'channel': { 'title': 'Star Wars', 'link': 'http://www.starwars.com', 'description': 'Star Wars blog.', 'obsolete': 'Obsolete value', 'item': [] } }"; JObject rss = JObject.Parse(json); JObject channel = (JObject)rss["channel"]; channel["title"] = ((string)channel["title"]).ToUpper(); channel["description"] = ((string)channel["description"]).ToUpper(); channel.Property("obsolete").Remove(); channel.Property("description").AddAfterSelf(new JProperty("new", "New value")); JArray item = (JArray)channel["item"]; item.Add("Item 1"); item.Add("Item 2"); Console.WriteLine(rss.ToString()); // { // "channel": { // "title": "STAR WARS", // "link": "http://www.starwars.com", // "description": "STAR WARS BLOG.", // "new": "New value", // "item": [ // "Item 1", // "Item 2" // ] // } // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ToObjectGeneric.cs0000664000175000017500000000122512454416117033014 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ToObjectGeneric { public void Example() { #region Usage JValue v1 = new JValue(true); bool b = v1.ToObject(); Console.WriteLine(b); // true int i = v1.ToObject(); Console.WriteLine(i); // 1 string s = v1.ToObject(); Console.WriteLine(s); // "True" #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/QueryJsonSelectToken.cs0000664000175000017500000000313712454416117034112 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class QueryJsonSelectToken { public void Example() { #region Usage JObject o = JObject.Parse(@"{ 'Stores': [ 'Lambton Quay', 'Willis Street' ], 'Manufacturers': [ { 'Name': 'Acme Co', 'Products': [ { 'Name': 'Anvil', 'Price': 50 } ] }, { 'Name': 'Contoso', 'Products': [ { 'Name': 'Elbow Grease', 'Price': 99.95 }, { 'Name': 'Headlight Fluid', 'Price': 4 } ] } ] }"); string name = (string)o.SelectToken("Manufacturers[0].Name"); Console.WriteLine(name); // Acme Co decimal productPrice = (decimal)o.SelectToken("Manufacturers[0].Products[0].Price"); Console.WriteLine(productPrice); // 50 string productName = (string)o.SelectToken("Manufacturers[1].Products[0].Name"); Console.WriteLine(productName); // Elbow Grease #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/QueryJson.cs0000664000175000017500000000420212454416117031743 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class QueryJson { public void Example() { #region Usage string json = @"{ 'channel': { 'title': 'James Newton-King', 'link': 'http://james.newtonking.com', 'description': 'James Newton-King\'s blog.', 'item': [ { 'title': 'Json.NET 1.3 + New license + Now on CodePlex', 'description': 'Annoucing the release of Json.NET 1.3, the MIT license and the source on CodePlex', 'link': 'http://james.newtonking.com/projects/json-net.aspx', 'category': [ 'Json.NET', 'CodePlex' ] }, { 'title': 'LINQ to JSON beta', 'description': 'Annoucing LINQ to JSON', 'link': 'http://james.newtonking.com/projects/json-net.aspx', 'category': [ 'Json.NET', 'LINQ' ] } ] } }"; JObject rss = JObject.Parse(json); string rssTitle = (string)rss["channel"]["title"]; Console.WriteLine(rssTitle); // James Newton-King string itemTitle = (string)rss["channel"]["item"][0]["title"]; Console.WriteLine(itemTitle); // Json.NET 1.3 + New license + Now on CodePlex JArray categories = (JArray)rss["channel"]["item"][0]["category"]; Console.WriteLine(categories); // [ // "Json.NET", // "CodePlex" // ] IList categoriesText = categories.Select(c => (string)c).ToList(); Console.WriteLine(string.Join(", ", categoriesText)); // Json.NET, CodePlex #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/QueryJsonDynamic.cs0000664000175000017500000000235012454416117033252 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class QueryJsonDynamic { public void Example() { #region Usage string json = @"[ { 'Title': 'Json.NET is awesome!', 'Author': { 'Name': 'James Newton-King', 'Twitter': '@JamesNK', 'Picture': '/jamesnk.png' }, 'Date': '2013-01-23T19:30:00', 'BodyHtml': '<h3>Title!</h3>\r\n<p>Content!</p>' } ]"; dynamic blogPosts = JArray.Parse(json); dynamic blogPost = blogPosts[0]; string title = blogPost.Title; Console.WriteLine(title); // Json.NET is awesome! string author = blogPost.Author.Name; Console.WriteLine(author); // James Newton-King DateTime postDate = blogPost.Date; Console.WriteLine(postDate); // 23/01/2013 7:30:00 p.m. #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateReader.cs0000664000175000017500000000235612454416117032342 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class CreateReader { public void Example() { #region Usage JObject o = new JObject { { "Cpu", "Intel" }, { "Memory", 32 }, { "Drives", new JArray { "DVD", "SSD" } } }; JsonReader reader = o.CreateReader(); while (reader.Read()) { Console.Write(reader.TokenType); if (reader.Value != null) Console.Write(" - " + reader.Value); Console.WriteLine(); } // StartObject // PropertyName - Cpu // String - Intel // PropertyName - Memory // Integer - 32 // PropertyName - Drives // StartArray // String - DVD // String - SSD // EndArray // EndObject #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/WriteToJsonFile.cs0000664000175000017500000000157312454416117033043 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class WriteToJsonFile { public void Example() { #region Usage JObject videogameRatings = new JObject( new JProperty("Halo", 9), new JProperty("Starcraft", 9), new JProperty("Call of Duty", 7.5)); File.WriteAllText(@"c:\videogames.json", videogameRatings.ToString()); // write JSON directly to a file using (StreamWriter file = File.CreateText(@"c:\videogames.json")) using (JsonTextWriter writer = new JsonTextWriter(file)) { videogameRatings.WriteTo(writer); } #endregion } } }././@LongLink0000644000000000000000000000015000000000000011577 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateJsonAnonymousObject.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateJsonAnonymousObject0000664000175000017500000000462112454416117034502 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class CreateJsonAnonymousObject { #region Types public class Post { public string Title { get; set; } public string Description { get; set; } public string Link { get; set; } public IList Categories { get; set; } } #endregion public void Example() { #region Usage List posts = new List { new Post { Title = "Episode VII", Description = "Episode VII production", Categories = new List { "episode-vii", "movie" }, Link = "episode-vii-production.aspx" } }; JObject o = JObject.FromObject(new { channel = new { title = "Star Wars", link = "http://www.starwars.com", description = "Star Wars blog.", item = from p in posts orderby p.Title select new { title = p.Title, description = p.Description, link = p.Link, category = p.Categories } } }); Console.WriteLine(o.ToString()); // { // "channel": { // "title": "Star Wars", // "link": "http://www.starwars.com", // "description": "Star Wars blog.", // "item": [ // { // "title": "Episode VII", // "description": "Episode VII production", // "link": "episode-vii-production.aspx", // "category": [ // "episode-vii", // "movie" // ] // } // ] // } // } #endregion } } }././@LongLink0000644000000000000000000000015600000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateJsonCollectionInitializer.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateJsonCollectionIniti0000664000175000017500000000160412454416117034451 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class CreateJsonCollectionInitializer { public void Example() { #region Usage JObject o = new JObject { { "Cpu", "Intel" }, { "Memory", 32 }, { "Drives", new JArray { "DVD", "SSD" } } }; Console.WriteLine(o.ToString()); // { // "Cpu": "Intel", // "Memory": 32, // "Drives": [ // "DVD", // "SSD" // ] // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateJsonJTokenWriter.cs0000664000175000017500000000174012454416117034355 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class CreateJsonJTokenWriter { public void Example() { #region Usage JTokenWriter writer = new JTokenWriter(); writer.WriteStartObject(); writer.WritePropertyName("name1"); writer.WriteValue("value1"); writer.WritePropertyName("name2"); writer.WriteStartArray(); writer.WriteValue(1); writer.WriteValue(2); writer.WriteEndArray(); writer.WriteEndObject(); JObject o = (JObject)writer.Token; Console.WriteLine(o.ToString()); // { // "name1": "value1", // "name2": [ // 1, // 2 // ] // } #endregion } } }././@LongLink0000644000000000000000000000014600000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateJsonDeclaratively.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateJsonDeclaratively.c0000664000175000017500000000602012454416117034367 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class CreateJsonDeclaratively { #region Types public class Post { public string Title { get; set; } public string Description { get; set; } public string Link { get; set; } public IList Categories { get; set; } } #endregion private List GetPosts() { return null; } public void Example() { #region Usage List posts = GetPosts(); JObject rss = new JObject( new JProperty("channel", new JObject( new JProperty("title", "James Newton-King"), new JProperty("link", "http://james.newtonking.com"), new JProperty("description", "James Newton-King's blog."), new JProperty("item", new JArray( from p in posts orderby p.Title select new JObject( new JProperty("title", p.Title), new JProperty("description", p.Description), new JProperty("link", p.Link), new JProperty("category", new JArray( from c in p.Categories select new JValue(c))))))))); Console.WriteLine(rss.ToString()); // { // "channel": { // "title": "James Newton-King", // "link": "http://james.newtonking.com", // "description": "James Newton-King's blog.", // "item": [ // { // "title": "Json.NET 1.3 + New license + Now on CodePlex", // "description": "Annoucing the release of Json.NET 1.3, the MIT license and being available on CodePlex", // "link": "http://james.newtonking.com/projects/json-net.aspx", // "category": [ // "Json.NET", // "CodePlex" // ] // }, // { // "title": "LINQ to JSON beta", // "description": "Annoucing LINQ to JSON", // "link": "http://james.newtonking.com/projects/json-net.aspx", // "category": [ // "Json.NET", // "LINQ" // ] // } // ] // } // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/ToStringJsonConverter.cs0000664000175000017500000000121712454416117034302 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class ToStringJsonConverter { public void Example() { #region Usage JObject o = JObject.Parse(@"{'string1':'value','integer2':99,'datetime3':'2000-05-23T00:00:00'}"); Console.WriteLine(o.ToString(Formatting.None, new JavaScriptDateTimeConverter())); // {"string1":"value","integer2":99,"datetime3":new Date(959032800000)} #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/CreateJsonManually.cs0000664000175000017500000000133112454416117033544 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class CreateJsonManually { public void Example() { #region Usage JArray array = new JArray(); array.Add("Manual text"); array.Add(new DateTime(2000, 5, 23)); JObject o = new JObject(); o["MyArray"] = array; string json = o.ToString(); // { // "MyArray": [ // "Manual text", // "2000-05-23T00:00:00" // ] // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Linq/JValueValue.cs0000664000175000017500000000135112454416117032171 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Linq { public class JValueValue { public void Example() { #region Usage JValue s = new JValue("A string value"); Console.WriteLine(s.Value.GetType().Name); // String Console.WriteLine(s.Value); // A string value JValue u = new JValue(new Uri("http://www.google.com/")); Console.WriteLine(u.Value.GetType().Name); // Uri Console.WriteLine(u.Value); // http://www.google.com/ #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/0000775000175000017500000000000012454416117030665 5ustar directhexdirecthex././@LongLink0000644000000000000000000000015600000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeTypeNameHandling.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeTypeNameHa0000664000175000017500000000564212454416117034462 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeTypeNameHandling { #region Types public abstract class Business { public string Name { get; set; } } public class Hotel : Business { public int Stars { get; set; } } public class Stockholder { public string FullName { get; set; } public IList Businesses { get; set; } } #endregion public void Example() { #region Usage Stockholder stockholder = new Stockholder { FullName = "Steve Stockholder", Businesses = new List { new Hotel { Name = "Hudson Hotel", Stars = 4 } } }; string jsonTypeNameAll = JsonConvert.SerializeObject(stockholder, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }); Console.WriteLine(jsonTypeNameAll); // { // "$type": "Newtonsoft.Json.Samples.Stockholder, Newtonsoft.Json.Tests", // "FullName": "Steve Stockholder", // "Businesses": { // "$type": "System.Collections.Generic.List`1[[Newtonsoft.Json.Samples.Business, Newtonsoft.Json.Tests]], mscorlib", // "$values": [ // { // "$type": "Newtonsoft.Json.Samples.Hotel, Newtonsoft.Json.Tests", // "Stars": 4, // "Name": "Hudson Hotel" // } // ] // } // } string jsonTypeNameAuto = JsonConvert.SerializeObject(stockholder, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto }); Console.WriteLine(jsonTypeNameAuto); // { // "FullName": "Steve Stockholder", // "Businesses": [ // { // "$type": "Newtonsoft.Json.Samples.Hotel, Newtonsoft.Json.Tests", // "Stars": 4, // "Name": "Hudson Hotel" // } // ] // } // for security TypeNameHandling is required when deserializing Stockholder newStockholder = JsonConvert.DeserializeObject(jsonTypeNameAuto, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto }); Console.WriteLine(newStockholder.Businesses[0].GetType().Name); // Hotel #endregion } } }././@LongLink0000644000000000000000000000015000000000000011577 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeCollection.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeCollection0000664000175000017500000000117512454416117034557 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeCollection { public void Example() { #region Usage List videogames = new List { "Starcraft", "Halo", "Legend of Zelda" }; string json = JsonConvert.SerializeObject(videogames); Console.WriteLine(json); // ["Starcraft","Halo","Legend of Zelda"] #endregion } } }././@LongLink0000644000000000000000000000014600000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeObject.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeObject.c0000664000175000017500000000176412454416117034430 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeObject { #region Types public class Account { public string Email { get; set; } public bool Active { get; set; } public DateTime CreatedDate { get; set; } public IList Roles { get; set; } } #endregion public void Example() { #region Usage string json = @"{ 'Email': 'james@example.com', 'Active': true, 'CreatedDate': '2013-01-20T00:00:00Z', 'Roles': [ 'User', 'Admin' ] }"; Account account = JsonConvert.DeserializeObject(json); Console.WriteLine(account.Email); // james@example.com #endregion } } }././@LongLink0000644000000000000000000000016000000000000011600 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeDateFormatHandling.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeDateFormat0000664000175000017500000000152512454416117034511 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeDateFormatHandling { public void Example() { #region Usage DateTime mayanEndOfTheWorld = new DateTime(2012, 12, 21); string jsonIsoDate = JsonConvert.SerializeObject(mayanEndOfTheWorld); Console.WriteLine(jsonIsoDate); // "2012-12-21T00:00:00" string jsonMsDate = JsonConvert.SerializeObject(mayanEndOfTheWorld, new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); Console.WriteLine(jsonMsDate); // "\/Date(1356044400000+0100)\/" #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/TraceWriter.cs0000664000175000017500000000275412454416117033457 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class TraceWriter { #region Types public class Account { public string FullName { get; set; } public bool Deleted { get; set; } } #endregion public void Example() { #region Usage string json = @"{ 'FullName': 'Dan Deleted', 'Deleted': true, 'DeletedDate': '2013-01-20T00:00:00' }"; MemoryTraceWriter traceWriter = new MemoryTraceWriter(); Account account = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TraceWriter = traceWriter }); Console.WriteLine(traceWriter.ToString()); // 2013-01-21T01:36:24.422 Info Started deserializing Newtonsoft.Json.Tests.Documentation.Examples.TraceWriter+Account. Path 'FullName', line 2, position 20. // 2013-01-21T01:36:24.442 Verbose Could not find member 'DeletedDate' on Newtonsoft.Json.Tests.Documentation.Examples.TraceWriter+Account. Path 'DeletedDate', line 4, position 23. // 2013-01-21T01:36:24.447 Info Finished deserializing Newtonsoft.Json.Tests.Documentation.Examples.TraceWriter+Account. Path '', line 5, position 8. #endregion } } }././@LongLink0000644000000000000000000000015400000000000011603 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/NullValueHandlingIgnore.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/NullValueHandlingIg0000664000175000017500000000260712454416117034451 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class NullValueHandlingIgnore { #region Types public class Person { public string Name { get; set; } public int Age { get; set; } public Person Partner { get; set; } public decimal? Salary { get; set; } } #endregion public void Example() { #region Usage Person person = new Person { Name = "Nigal Newborn", Age = 1 }; string jsonIncludeNullValues = JsonConvert.SerializeObject(person, Formatting.Indented); Console.WriteLine(jsonIncludeNullValues); // { // "Name": "Nigal Newborn", // "Age": 1, // "Partner": null, // "Salary": null // } string jsonIgnoreNullValues = JsonConvert.SerializeObject(person, Formatting.Indented, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); Console.WriteLine(jsonIgnoreNullValues); // { // "Name": "Nigal Newborn", // "Age": 1 // } #endregion } } }././@LongLink0000644000000000000000000000014600000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonPropertyOrder.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonPropertyOrder.c0000664000175000017500000000325012454416117034503 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class JsonPropertyOrder { #region Types public class Account { public string EmailAddress { get; set; } // appear last [JsonProperty(Order = 1)] public bool Deleted { get; set; } [JsonProperty(Order = 2)] public DateTime DeletedDate { get; set; } public DateTime CreatedDate { get; set; } public DateTime UpdatedDate { get; set; } // appear first [JsonProperty(Order = -2)] public string FullName { get; set; } } #endregion public void Example() { #region Usage Account account = new Account { FullName = "Aaron Account", EmailAddress = "aaron@example.com", Deleted = true, DeletedDate = new DateTime(2013, 1, 25), UpdatedDate = new DateTime(2013, 1, 25), CreatedDate = new DateTime(2010, 10, 1) }; string json = JsonConvert.SerializeObject(account, Formatting.Indented); Console.WriteLine(json); // { // "FullName": "Aaron Account", // "EmailAddress": "aaron@example.com", // "CreatedDate": "2010-10-01T00:00:00", // "UpdatedDate": "2013-01-25T00:00:00", // "Deleted": true, // "DeletedDate": "2013-01-25T00:00:00" // } #endregion } } }././@LongLink0000644000000000000000000000016000000000000011600 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DefaultValueAttributeIgnore.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DefaultValueAttribu0000664000175000017500000000250012454416117034521 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DefaultValueAttributeIgnore { #region Types public class Customer { public string FirstName { get; set; } public string LastName { get; set; } [DefaultValue(" ")] public string FullName { get { return FirstName + " " + LastName; } } } #endregion public void Example() { #region Usage Customer customer = new Customer(); string jsonIncludeDefaultValues = JsonConvert.SerializeObject(customer, Formatting.Indented); Console.WriteLine(jsonIncludeDefaultValues); // { // "FirstName": null, // "LastName": null, // "FullName": " " // } string jsonIgnoreDefaultValues = JsonConvert.SerializeObject(customer, Formatting.Indented, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); Console.WriteLine(jsonIgnoreDefaultValues); // {} #endregion } } }././@LongLink0000644000000000000000000000016100000000000011601 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonPropertyItemLevelSetting.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonPropertyItemLev0000664000175000017500000000351712454416117034562 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class JsonPropertyItemLevelSetting { #region Types public class Business { public string Name { get; set; } [JsonProperty(ItemIsReference = true)] public IList Employees { get; set; } } public class Employee { public string Name { get; set; } [JsonProperty(IsReference = true)] public Employee Manager { get; set; } } #endregion public void Example() { #region Usage Employee manager = new Employee { Name = "George-Michael" }; Employee worker = new Employee { Name = "Maeby", Manager = manager }; Business business = new Business { Name = "Acme Ltd.", Employees = new List { manager, worker } }; string json = JsonConvert.SerializeObject(business, Formatting.Indented); Console.WriteLine(json); // { // "Name": "Acme Ltd.", // "Employees": [ // { // "$id": "1", // "Name": "George-Michael", // "Manager": null // }, // { // "$id": "2", // "Name": "Maeby", // "Manager": { // "$ref": "1" // } // } // ] // } #endregion } } }././@LongLink0000644000000000000000000000014700000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeDataSet.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeDataSet.0000664000175000017500000000177312454416117034404 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeDataSet { public void Example() { #region Usage string json = @"{ 'Table1': [ { 'id': 0, 'item': 'item 0' }, { 'id': 1, 'item': 'item 1' } ] }"; DataSet dataSet = JsonConvert.DeserializeObject(json); DataTable dataTable = dataSet.Tables["Table1"]; Console.WriteLine(dataTable.Rows.Count); // 2 foreach (DataRow row in dataTable.Rows) { Console.WriteLine(row["id"] + " - " + row["item"]); } // 0 - item 0 // 1 - item 1 #endregion } } }././@LongLink0000644000000000000000000000015600000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DataContractAndDataMember.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DataContractAndData0000664000175000017500000000221112454416117034370 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DataContractAndDataMember { #region Types [DataContract] public class File { // excluded from serialization // does not have DataMemberAttribute public Guid Id { get; set; } [DataMember] public string Name { get; set; } [DataMember] public int Size { get; set; } } #endregion public void Example() { #region Usage File file = new File { Id = Guid.NewGuid(), Name = "ImportantLegalDocuments.docx", Size = 50 * 1024 }; string json = JsonConvert.SerializeObject(file, Formatting.Indented); Console.WriteLine(json); // { // "Name": "ImportantLegalDocuments.docx", // "Size": 51200 // } #endregion } } }././@LongLink0000644000000000000000000000015200000000000011601 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeCollection.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeCollecti0000664000175000017500000000110212454416117034521 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeCollection { public void Example() { #region Usage string json = @"['Starcraft','Halo','Legend of Zelda']"; List videogames = JsonConvert.DeserializeObject>(json); Console.WriteLine(string.Join(", ", videogames)); // Starcraft, Halo, Legend of Zelda #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/MaxDepth.cs0000664000175000017500000000163312454416117032731 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class MaxDepth { public void Example() { #region Usage string json = @"[ [ [ '1', 'Two', 'III' ] ] ]"; try { JsonConvert.DeserializeObject>>>(json, new JsonSerializerSettings { MaxDepth = 2 }); } catch (JsonReaderException ex) { Console.WriteLine(ex.Message); // The reader's MaxDepth of 2 has been exceeded. Path '[0][0]', line 3, position 12. } #endregion } } }././@LongLink0000644000000000000000000000016000000000000011600 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonConverterAttributeClass.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonConverterAttrib0000664000175000017500000000275112454416117034564 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Converters; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class JsonConverterAttributeClass { #region Types public class UserConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { User user = (User)value; writer.WriteValue(user.UserName); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { User user = new User(); user.UserName = (string)reader.Value; return user; } public override bool CanConvert(Type objectType) { return objectType == typeof(User); } } [JsonConverter(typeof(UserConverter))] public class User { public string UserName { get; set; } } #endregion public void Example() { #region Usage User user = new User { UserName = @"domain\username" }; string json = JsonConvert.SerializeObject(user, Formatting.Indented); Console.WriteLine(json); // "domain\\username" #endregion } } }././@LongLink0000644000000000000000000000015700000000000011606 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DefaultValueHandlingIgnore.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DefaultValueHandlin0000664000175000017500000000234312454416117034471 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DefaultValueHandlingIgnore { #region Types public class Person { public string Name { get; set; } public int Age { get; set; } public Person Partner { get; set; } public decimal? Salary { get; set; } } #endregion public void Example() { #region Usage Person person = new Person(); string jsonIncludeDefaultValues = JsonConvert.SerializeObject(person, Formatting.Indented); Console.WriteLine(jsonIncludeDefaultValues); // { // "Name": null, // "Age": 0, // "Partner": null, // "Salary": null // } string jsonIgnoreDefaultValues = JsonConvert.SerializeObject(person, Formatting.Indented, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore }); Console.WriteLine(jsonIgnoreDefaultValues); // {} #endregion } } }././@LongLink0000644000000000000000000000015500000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonObjectAttributeOptIn.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonObjectAttribute0000664000175000017500000000220312454416117034531 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class JsonObjectAttributeOptIn { #region Types [JsonObject(MemberSerialization.OptIn)] public class File { // excluded from serialization // does not have JsonPropertyAttribute public Guid Id { get; set; } [JsonProperty] public string Name { get; set; } [JsonProperty] public int Size { get; set; } } #endregion public void Example() { #region Usage File file = new File { Id = Guid.NewGuid(), Name = "ImportantLegalDocuments.docx", Size = 50 * 1024 }; string json = JsonConvert.SerializeObject(file, Formatting.Indented); Console.WriteLine(json); // { // "Name": "ImportantLegalDocuments.docx", // "Size": 51200 // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonPropertyName.cs0000664000175000017500000000174312454416117034500 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class JsonPropertyName { #region Types public class Videogame { [JsonProperty("name")] public string Name { get; set; } [JsonProperty("release_date")] public DateTime ReleaseDate { get; set; } } #endregion public void Example() { #region Usage Videogame starcraft = new Videogame { Name = "Starcraft", ReleaseDate = new DateTime(1998, 1, 1) }; string json = JsonConvert.SerializeObject(starcraft, Formatting.Indented); Console.WriteLine(json); // { // "name": "Starcraft", // "release_date": "1998-01-01T00:00:00" // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeObject.cs0000664000175000017500000000250612454416117034275 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeObject { #region Types public class Account { public string Email { get; set; } public bool Active { get; set; } public DateTime CreatedDate { get; set; } public IList Roles { get; set; } } #endregion public void Example() { #region Usage Account account = new Account { Email = "james@example.com", Active = true, CreatedDate = new DateTime(2013, 1, 20, 0, 0, 0, DateTimeKind.Utc), Roles = new List { "User", "Admin" } }; string json = JsonConvert.SerializeObject(account, Formatting.Indented); // { // "Email": "james@example.com", // "Active": true, // "CreatedDate": "2013-01-20T00:00:00Z", // "Roles": [ // "User", // "Admin" // ] // } Console.WriteLine(json); #endregion } } }././@LongLink0000644000000000000000000000014700000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/PropertyJsonIgnore.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/PropertyJsonIgnore.0000664000175000017500000000173612454416117034517 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class PropertyJsonIgnore { #region Types public class Account { public string FullName { get; set; } public string EmailAddress { get; set; } [JsonIgnore] public string PasswordHash { get; set; } } #endregion public void Example() { #region Usage Account account = new Account { FullName = "Joe User", EmailAddress = "joe@example.com", PasswordHash = "VHdlZXQgJ1F1aWNrc2lsdmVyJyB0byBASmFtZXNOSw==" }; string json = JsonConvert.SerializeObject(account); Console.WriteLine(json); // {"FullName":"Joe User","EmailAddress":"joe@example.com"} #endregion } } }././@LongLink0000644000000000000000000000015300000000000011602 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/ErrorHandlingAttribute.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/ErrorHandlingAttrib0000664000175000017500000000313612454416117034517 0ustar directhexdirecthexusing Newtonsoft.Json.Serialization; using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class ErrorHandlingAttribute { #region Types public class Employee { private List _roles; public string Name { get; set; } public int Age { get; set; } public List Roles { get { if (_roles == null) throw new Exception("Roles not loaded!"); return _roles; } set { _roles = value; } } public string Title { get; set; } [OnError] internal void OnError(StreamingContext context, ErrorContext errorContext) { errorContext.Handled = true; } } #endregion public void Example() { #region Usage Employee person = new Employee { Name = "George Michael Bluth", Age = 16, Roles = null, Title = "Mister Manager" }; string json = JsonConvert.SerializeObject(person, Formatting.Indented); Console.WriteLine(json); // { // "Name": "George Michael Bluth", // "Age": 16, // "Title": "Mister Manager" // } #endregion } } }././@LongLink0000644000000000000000000000016500000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/PreserveReferencesHandlingObject.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/PreserveReferencesH0000664000175000017500000000622712454416117034524 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class PreserveReferencesHandlingObject { #region Types public class Directory { public string Name { get; set; } public Directory Parent { get; set; } public IList Files { get; set; } } public class File { public string Name { get; set; } public Directory Parent { get; set; } } #endregion public void Example() { #region Usage Directory root = new Directory { Name = "Root" }; Directory documents = new Directory { Name = "My Documents", Parent = root }; File file = new File { Name = "ImportantLegalDocument.docx", Parent = documents }; documents.Files = new List { file }; try { JsonConvert.SerializeObject(documents, Formatting.Indented); } catch (JsonSerializationException) { // Self referencing loop detected for property 'Parent' with type // 'Newtonsoft.Json.Tests.Documentation.Examples.ReferenceLoopHandlingObject+Directory'. Path 'Files[0]'. } string preserveReferenacesAll = JsonConvert.SerializeObject(documents, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All }); Console.WriteLine(preserveReferenacesAll); // { // "$id": "1", // "Name": "My Documents", // "Parent": { // "$id": "2", // "Name": "Root", // "Parent": null, // "Files": null // }, // "Files": { // "$id": "3", // "$values": [ // { // "$id": "4", // "Name": "ImportantLegalDocument.docx", // "Parent": { // "$ref": "1" // } // } // ] // } // } string preserveReferenacesObjects = JsonConvert.SerializeObject(documents, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects }); Console.WriteLine(preserveReferenacesObjects); // { // "$id": "1", // "Name": "My Documents", // "Parent": { // "$id": "2", // "Name": "Root", // "Parent": null, // "Files": null // }, // "Files": [ // { // "$id": "3", // "Name": "ImportantLegalDocument.docx", // "Parent": { // "$ref": "1" // } // } // ] // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/PopulateObject.cs0000664000175000017500000000257612454416117034146 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class PopulateObject { #region Types public class Account { public string Email { get; set; } public bool Active { get; set; } public DateTime CreatedDate { get; set; } public IList Roles { get; set; } } #endregion public void Example() { #region Usage Account account = new Account { Email = "james@example.com", Active = true, CreatedDate = new DateTime(2013, 1, 20, 0, 0, 0, DateTimeKind.Utc), Roles = new List { "User", "Admin" } }; string json = @"{ 'Active': false, 'Roles': [ 'Expired' ] }"; JsonConvert.PopulateObject(json, account); Console.WriteLine(account.Email); // james@example.com Console.WriteLine(account.Active); // false Console.WriteLine(string.Join(", ", account.Roles)); // User, Admin, Expired #endregion } } }././@LongLink0000644000000000000000000000016200000000000011602 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeDateTimeZoneHandling.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeDateTimeZo0000664000175000017500000000661312454416117034473 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeDateTimeZoneHandling { #region Types public class Flight { public string Destination { get; set; } public DateTime DepartureDate { get; set; } public DateTime DepartureDateUtc { get; set; } public DateTime DepartureDateLocal { get; set; } public TimeSpan Duration { get; set; } } #endregion public void Example() { #region Usage Flight flight = new Flight { Destination = "Dubai", DepartureDate = new DateTime(2013, 1, 21, 0, 0, 0, DateTimeKind.Unspecified), DepartureDateUtc = new DateTime(2013, 1, 21, 0, 0, 0, DateTimeKind.Utc), DepartureDateLocal = new DateTime(2013, 1, 21, 0, 0, 0, DateTimeKind.Local), Duration = TimeSpan.FromHours(5.5) }; string jsonWithRoundtripTimeZone = JsonConvert.SerializeObject(flight, Formatting.Indented, new JsonSerializerSettings { DateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind }); Console.WriteLine(jsonWithRoundtripTimeZone); // { // "Destination": "Dubai", // "DepartureDate": "2013-01-21T00:00:00", // "DepartureDateUtc": "2013-01-21T00:00:00Z", // "DepartureDateLocal": "2013-01-21T00:00:00+01:00", // "Duration": "05:30:00" // } string jsonWithLocalTimeZone = JsonConvert.SerializeObject(flight, Formatting.Indented, new JsonSerializerSettings { DateTimeZoneHandling = DateTimeZoneHandling.Local }); Console.WriteLine(jsonWithLocalTimeZone); // { // "Destination": "Dubai", // "DepartureDate": "2013-01-21T00:00:00+01:00", // "DepartureDateUtc": "2013-01-21T01:00:00+01:00", // "DepartureDateLocal": "2013-01-21T00:00:00+01:00", // "Duration": "05:30:00" // } string jsonWithUtcTimeZone = JsonConvert.SerializeObject(flight, Formatting.Indented, new JsonSerializerSettings { DateTimeZoneHandling = DateTimeZoneHandling.Utc }); Console.WriteLine(jsonWithUtcTimeZone); // { // "Destination": "Dubai", // "DepartureDate": "2013-01-21T00:00:00Z", // "DepartureDateUtc": "2013-01-21T00:00:00Z", // "DepartureDateLocal": "2013-01-20T23:00:00Z", // "Duration": "05:30:00" // } string jsonWithUnspecifiedTimeZone = JsonConvert.SerializeObject(flight, Formatting.Indented, new JsonSerializerSettings { DateTimeZoneHandling = DateTimeZoneHandling.Unspecified }); Console.WriteLine(jsonWithUnspecifiedTimeZone); // { // "Destination": "Dubai", // "DepartureDate": "2013-01-21T00:00:00", // "DepartureDateUtc": "2013-01-21T00:00:00", // "DepartureDateLocal": "2013-01-21T00:00:00", // "Duration": "05:30:00" // } #endregion } } }././@LongLink0000644000000000000000000000014700000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/ErrorHandlingEvent.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/ErrorHandlingEvent.0000664000175000017500000000275012454416117034432 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class ErrorHandlingEvent { public void Example() { #region Usage List errors = new List(); List c = JsonConvert.DeserializeObject>(@"[ '2009-09-09T00:00:00Z', 'I am not a date and will error!', [ 1 ], '1977-02-20T00:00:00Z', null, '2000-12-01T00:00:00Z' ]", new JsonSerializerSettings { Error = delegate(object sender, ErrorEventArgs args) { errors.Add(args.ErrorContext.Error.Message); args.ErrorContext.Handled = true; }, Converters = { new IsoDateTimeConverter() } }); // 2009-09-09T00:00:00Z // 1977-02-20T00:00:00Z // 2000-12-01T00:00:00Z // The string was not recognized as a valid DateTime. There is a unknown word starting at index 0. // Unexpected token parsing date. Expected String, got StartArray. // Cannot convert null value to System.DateTime. #endregion } } }././@LongLink0000644000000000000000000000017300000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonObjectAttributeOverrideIEnumerable.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonObjectAttribute0000664000175000017500000000302612454416117034535 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class JsonObjectAttributeOverrideIEnumerable { #region Types [JsonObject] public class Directory : IEnumerable { public string Name { get; set; } public IList Files { get; set; } public Directory() { Files = new List(); } public IEnumerator GetEnumerator() { return Files.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } #endregion public void Example() { #region Usage Directory directory = new Directory { Name = "My Documents", Files = { "ImportantLegalDocuments.docx", "WiseFinancalAdvice.xlsx" } }; string json = JsonConvert.SerializeObject(directory, Formatting.Indented); Console.WriteLine(json); // { // "Name": "My Documents", // "Files": [ // "ImportantLegalDocuments.docx", // "WiseFinancalAdvice.xlsx" // ] // } #endregion } } }././@LongLink0000644000000000000000000000015000000000000011577 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeDictionary.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeDictionary0000664000175000017500000000136612454416117034573 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeDictionary { public void Example() { #region Usage Dictionary points = new Dictionary { { "James", 9001 }, { "Jo", 3474 }, { "Jess", 11926 } }; string json = JsonConvert.SerializeObject(points, Formatting.Indented); Console.WriteLine(json); // { // "James": 9001, // "Jo": 3474, // "Jess": 11926 // } #endregion } } }././@LongLink0000644000000000000000000000014600000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/CustomTraceWriter.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/CustomTraceWriter.c0000664000175000017500000000443712454416117034467 0ustar directhexdirecthexusing Newtonsoft.Json.Serialization; using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class CustomTraceWriter { #region Types public class NLogTraceWriter : ITraceWriter { private static readonly Logger Logger = LogManager.GetLogger("NLogTraceWriter"); public TraceLevel LevelFilter { // trace all messages. nlog can handle filtering get { return TraceLevel.Verbose; } } public void Trace(TraceLevel level, string message, Exception ex) { LogEventInfo logEvent = new LogEventInfo { Message = message, Level = GetLogLevel(level), Exception = ex }; // log Json.NET message to NLog Logger.Log(logEvent); } private LogLevel GetLogLevel(TraceLevel level) { switch (level) { case TraceLevel.Error: return LogLevel.Error; case TraceLevel.Warning: return LogLevel.Warn; case TraceLevel.Info: return LogLevel.Info; case TraceLevel.Off: return LogLevel.Off; default: return LogLevel.Trace; } } } #endregion public void Example() { #region Usage IList countries = new List { "New Zealand", "Australia", "Denmark", "China" }; string json = JsonConvert.SerializeObject(countries, Formatting.Indented, new JsonSerializerSettings { TraceWriter = new NLogTraceWriter() }); Console.WriteLine(json); // [ // "New Zealand", // "Australia", // "Denmark", // "China" // ] #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeDataSet.cs0000664000175000017500000000263312454416117034415 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeDataSet { public void Example() { #region Usage DataSet dataSet = new DataSet("dataSet"); dataSet.Namespace = "NetFrameWork"; DataTable table = new DataTable(); DataColumn idColumn = new DataColumn("id", typeof(int)); idColumn.AutoIncrement = true; DataColumn itemColumn = new DataColumn("item"); table.Columns.Add(idColumn); table.Columns.Add(itemColumn); dataSet.Tables.Add(table); for (int i = 0; i < 2; i++) { DataRow newRow = table.NewRow(); newRow["item"] = "item " + i; table.Rows.Add(newRow); } dataSet.AcceptChanges(); string json = JsonConvert.SerializeObject(dataSet, Formatting.Indented); Console.WriteLine(json); // { // "Table1": [ // { // "id": 0, // "item": "item 0" // }, // { // "id": 1, // "item": "item 1" // } // ] // } #endregion } } }././@LongLink0000644000000000000000000000016600000000000011606 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeWithJsonSerializerToFile.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeWithJsonSe0000664000175000017500000000211312454416117034512 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using File = System.IO.File; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeWithJsonSerializerToFile { #region Types public class Movie { public string Name { get; set; } public int Year { get; set; } } #endregion public void Example() { #region Usage Movie movie = new Movie { Name = "Bad Boys", Year = 1995 }; // serialize JSON to a string and then write string to a file File.WriteAllText(@"c:\movie.json", JsonConvert.SerializeObject(movie)); // serialize JSON directly to a file using (StreamWriter file = File.CreateText(@"c:\movie.json")) { JsonSerializer serializer = new JsonSerializer(); serializer.Serialize(file, movie); } #endregion } } }././@LongLink0000644000000000000000000000016500000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonPropertyPropertyLevelSetting.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonPropertyPropert0000664000175000017500000000175112454416117034646 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class JsonPropertyPropertyLevelSetting { #region Types public class Vessel { public string Name { get; set; } public string Class { get; set; } [JsonProperty(NullValueHandling = NullValueHandling.Ignore)] public DateTime? LaunchDate { get; set; } } #endregion public void Example() { #region Usage Vessel vessel = new Vessel { Name = "Red October", Class = "Typhoon" }; string json = JsonConvert.SerializeObject(vessel, Formatting.Indented); Console.WriteLine(json); // { // "Name": "Red October", // "Class": "Typhoon" // } #endregion } } }././@LongLink0000644000000000000000000000016000000000000011600 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/ReferenceLoopHandlingIgnore.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/ReferenceLoopHandli0000664000175000017500000000212012454416117034453 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class ReferenceLoopHandlingIgnore { #region Types public class Employee { public string Name { get; set; } public Employee Manager { get; set; } } #endregion public void Example() { #region Usage Employee joe = new Employee { Name = "Joe User" }; Employee mike = new Employee { Name = "Mike Manager" }; joe.Manager = mike; mike.Manager = mike; string json = JsonConvert.SerializeObject(joe, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); Console.WriteLine(json); // { // "Name": "Joe User", // "Manager": { // "Name": "Mike Manager" // } // } #endregion } } }././@LongLink0000644000000000000000000000016500000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeMissingMemberHandling.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeMissingM0000664000175000017500000000221712454416117034521 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeMissingMemberHandling { #region Types public class Account { public string FullName { get; set; } public bool Deleted { get; set; } } #endregion public void Example() { #region Usage string json = @"{ 'FullName': 'Dan Deleted', 'Deleted': true, 'DeletedDate': '2013-01-20T00:00:00' }"; try { JsonConvert.DeserializeObject(json, new JsonSerializerSettings { MissingMemberHandling = MissingMemberHandling.Error }); } catch (JsonSerializationException ex) { Console.WriteLine(ex.Message); // Could not find member 'DeletedDate' on object of type 'Account'. Path 'DeletedDate', line 4, position 23. } #endregion } } }././@LongLink0000644000000000000000000000016100000000000011601 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeConditionalProperty.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeConditiona0000664000175000017500000000267612454416117034562 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeConditionalProperty { #region Types public class Employee { public string Name { get; set; } public Employee Manager { get; set; } public bool ShouldSerializeManager() { // don't serialize the Manager property if an employee is their own manager return (Manager != this); } } #endregion public void Example() { #region Usage Employee joe = new Employee(); joe.Name = "Joe Employee"; Employee mike = new Employee(); mike.Name = "Mike Manager"; joe.Manager = mike; // mike is his own manager // ShouldSerialize will skip this property mike.Manager = mike; string json = JsonConvert.SerializeObject(new[] { joe, mike }, Formatting.Indented); Console.WriteLine(json); // [ // { // "Name": "Joe Employee", // "Manager": { // "Name": "Mike Manager" // } // }, // { // "Name": "Mike Manager" // } // ] #endregion } } }././@LongLink0000644000000000000000000000015500000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeAnonymousType.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeAnonymou0000664000175000017500000000137312454416117034602 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeAnonymousType { public void Example() { #region Usage var definition = new { Name = "" }; string json1 = @"{'Name':'James'}"; var customer1 = JsonConvert.DeserializeAnonymousType(json1, definition); Console.WriteLine(customer1.Name); // James string json2 = @"{'Name':'Mike'}"; var customer2 = JsonConvert.DeserializeAnonymousType(json2, definition); Console.WriteLine(customer2.Name); // Mike #endregion } } }././@LongLink0000644000000000000000000000016300000000000011603 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonConverterAttributeProperty.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonConverterAttrib0000664000175000017500000000212512454416117034557 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Converters; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class JsonConverterAttributeProperty { #region Types public enum UserStatus { NotConfirmed, Active, Deleted } public class User { public string UserName { get; set; } [JsonConverter(typeof(StringEnumConverter))] public UserStatus Status { get; set; } } #endregion public void Example() { #region Usage User user = new User { UserName = @"domain\username", Status = UserStatus.Deleted }; string json = JsonConvert.SerializeObject(user, Formatting.Indented); Console.WriteLine(json); // { // "UserName": "domain\\username", // "Status": "Deleted" // } #endregion } } }././@LongLink0000644000000000000000000000016300000000000011603 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeConstructorHandling.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeConstruc0000664000175000017500000000261512454416117034575 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeConstructorHandling { #region Types public class Website { public string Url { get; set; } private Website() { } public Website(Website website) { if (website == null) throw new ArgumentNullException("website"); Url = website.Url; } } #endregion public void Example() { #region Usage string json = @"{'Url':'http://www.google.com'}"; try { JsonConvert.DeserializeObject(json); } catch (TargetInvocationException ex) { Console.WriteLine(ex); // Value cannot be null. // Parameter name: website } Website website = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor }); Console.WriteLine(website.Url); // http://www.google.com #endregion } } }././@LongLink0000644000000000000000000000016400000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializationCallbackAttributes.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializationCallba0000664000175000017500000000700312454416117034524 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializationCallbackAttributes { #region Types public class SerializationEventTestObject { // 2222 // This member is serialized and deserialized with no change. public int Member1 { get; set; } // The value of this field is set and reset during and // after serialization. public string Member2 { get; set; } // This field is not serialized. The OnDeserializedAttribute // is used to set the member value after serialization. [JsonIgnore] public string Member3 { get; set; } // This field is set to null, but populated after deserialization. public string Member4 { get; set; } public SerializationEventTestObject() { Member1 = 11; Member2 = "Hello World!"; Member3 = "This is a nonserialized value"; Member4 = null; } [OnSerializing] internal void OnSerializingMethod(StreamingContext context) { Member2 = "This value went into the data file during serialization."; } [OnSerialized] internal void OnSerializedMethod(StreamingContext context) { Member2 = "This value was reset after serialization."; } [OnDeserializing] internal void OnDeserializingMethod(StreamingContext context) { Member3 = "This value was set during deserialization"; } [OnDeserialized] internal void OnDeserializedMethod(StreamingContext context) { Member4 = "This value was set after deserialization."; } } #endregion public void Example() { #region Usage SerializationEventTestObject obj = new SerializationEventTestObject(); Console.WriteLine(obj.Member1); // 11 Console.WriteLine(obj.Member2); // Hello World! Console.WriteLine(obj.Member3); // This is a nonserialized value Console.WriteLine(obj.Member4); // null string json = JsonConvert.SerializeObject(obj, Formatting.Indented); // { // "Member1": 11, // "Member2": "This value went into the data file during serialization.", // "Member4": null // } Console.WriteLine(obj.Member1); // 11 Console.WriteLine(obj.Member2); // This value was reset after serialization. Console.WriteLine(obj.Member3); // This is a nonserialized value Console.WriteLine(obj.Member4); // null obj = JsonConvert.DeserializeObject(json); Console.WriteLine(obj.Member1); // 11 Console.WriteLine(obj.Member2); // This value went into the data file during serialization. Console.WriteLine(obj.Member3); // This value was set during deserialization Console.WriteLine(obj.Member4); // This value was set after deserialization. #endregion } } }././@LongLink0000644000000000000000000000017200000000000011603 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeWithJsonSerializerFromFile.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeWithJson0000664000175000017500000000177412454416117034547 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using File = System.IO.File; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeWithJsonSerializerFromFile { #region Types public class Movie { public string Name { get; set; } public int Year { get; set; } } #endregion public void Example() { #region Usage // read file into a string and deserialize JSON to a type Movie movie1 = JsonConvert.DeserializeObject(File.ReadAllText(@"c:\movie.json")); // deserialize JSON directly from a file using (StreamReader file = File.OpenText(@"c:\movie.json")) { JsonSerializer serializer = new JsonSerializer(); Movie movie2 = (Movie)serializer.Deserialize(file, typeof(Movie)); } #endregion } } }././@LongLink0000644000000000000000000000016700000000000011607 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeCustomCreationConverter.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeCustomCr0000664000175000017500000000276312454416117034540 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Converters; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeCustomCreationConverter { #region Types public class Person { public string FirstName { get; set; } public string LastName { get; set; } public DateTime BirthDate { get; set; } } public class Employee : Person { public string Department { get; set; } public string JobTitle { get; set; } } public class PersonConverter : CustomCreationConverter { public override Person Create(Type objectType) { return new Employee(); } } #endregion public void Example() { #region Usage string json = @"{ 'Department': 'Furniture', 'JobTitle': 'Carpenter', 'FirstName': 'John', 'LastName': 'Joinery', 'BirthDate': '1983-02-02T00:00:00' }"; Person person = JsonConvert.DeserializeObject(json, new PersonConverter()); Console.WriteLine(person.GetType().Name); // Employee Employee employee = (Employee)person; Console.WriteLine(employee.JobTitle); // Capenter #endregion } } }././@LongLink0000644000000000000000000000015100000000000011600 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonPropertyRequired.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/JsonPropertyRequire0000664000175000017500000000171012454416117034622 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class JsonPropertyRequired { #region Types public class Videogame { [JsonProperty(Required = Required.Always)] public string Name { get; set; } [JsonProperty(Required = Required.AllowNull)] public DateTime? ReleaseDate { get; set; } } #endregion public void Example() { #region Usage string json = @"{ 'Name': 'Starcraft III', 'ReleaseDate': null }"; Videogame starcraft = JsonConvert.DeserializeObject(json); Console.WriteLine(starcraft.Name); // Starcraft III Console.WriteLine(starcraft.ReleaseDate); // null #endregion } } }././@LongLink0000644000000000000000000000015300000000000011602 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/CustomContractResolver.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/CustomContractResol0000664000175000017500000000437712454416117034600 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class CustomContractResolver { #region Types public class DynamicContractResolver : DefaultContractResolver { private readonly char _startingWithChar; public DynamicContractResolver(char startingWithChar) { _startingWithChar = startingWithChar; } protected override IList CreateProperties(Type type, MemberSerialization memberSerialization) { IList properties = base.CreateProperties(type, memberSerialization); // only serializer properties that start with the specified character properties = properties.Where(p => p.PropertyName.StartsWith(_startingWithChar.ToString())).ToList(); return properties; } } public class Person { public string FirstName { get; set; } public string LastName { get; set; } public string FullName { get { return FirstName + " " + LastName; } } } #endregion public void Example() { #region Usage Person person = new Person { FirstName = "Dennis", LastName = "Deepwater-Diver" }; string startingWithF = JsonConvert.SerializeObject(person, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new DynamicContractResolver('F') }); Console.WriteLine(startingWithF); // { // "FirstName": "Dennis", // "FullName": "Dennis Deepwater-Diver" // } string startingWithL = JsonConvert.SerializeObject(person, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new DynamicContractResolver('L') }); Console.WriteLine(startingWithL); // { // "LastName": "Deepwater-Diver" // } #endregion } } }././@LongLink0000644000000000000000000000015000000000000011577 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/CustomJsonConverter.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/CustomJsonConverter0000664000175000017500000000557112454416117034614 0ustar directhexdirecthexusing Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class CustomJsonConverter { #region Types public class KeysJsonConverter : JsonConverter { private readonly Type[] _types; public KeysJsonConverter(params Type[] types) { _types = types; } public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { JToken t = JToken.FromObject(value); if (t.Type != JTokenType.Object) { t.WriteTo(writer); } else { JObject o = (JObject)t; IList propertyNames = o.Properties().Select(p => p.Name).ToList(); o.AddFirst(new JProperty("Keys", new JArray(propertyNames))); o.WriteTo(writer); } } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { throw new NotImplementedException("Unnecessary because CanRead is false. The type will skip the converter."); } public override bool CanRead { get { return false; } } public override bool CanConvert(Type objectType) { return _types.Any(t => t == objectType); } } public class Employee { public string FirstName { get; set; } public string LastName { get; set; } public IList Roles { get; set; } } #endregion public void Example() { #region Usage Employee employee = new Employee { FirstName = "James", LastName = "Newton-King", Roles = new List { "Admin" } }; string json = JsonConvert.SerializeObject(employee, Formatting.Indented, new KeysJsonConverter(typeof(Employee))); Console.WriteLine(json); // { // "Keys": [ // "FirstName", // "LastName", // "Roles" // ], // "FirstName": "James", // "LastName": "Newton-King", // "Roles": [ // "Admin" // ] // } Employee newEmployee = JsonConvert.DeserializeObject(json, new KeysJsonConverter(typeof(Employee))); Console.WriteLine(newEmployee.FirstName); // James #endregion } } }././@LongLink0000644000000000000000000000016600000000000011606 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeObjectCreationHandling.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeObjectCr0000664000175000017500000000335112454416117034466 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeObjectCreationHandling { #region Types public class UserViewModel { public string Name { get; set; } public IList Offices { get; private set; } public UserViewModel() { Offices = new List { "Auckland", "Wellington", "Christchurch" }; } } #endregion public void Example() { #region Usage string json = @"{ 'Name': 'James', 'Offices': [ 'Auckland', 'Wellington', 'Christchurch' ] }"; UserViewModel model1 = JsonConvert.DeserializeObject(json); foreach (string office in model1.Offices) { Console.WriteLine(office); } // Auckland // Wellington // Christchurch // Auckland // Wellington // Christchurch UserViewModel model2 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { ObjectCreationHandling = ObjectCreationHandling.Replace }); foreach (string office in model2.Offices) { Console.WriteLine(office); } // Auckland // Wellington // Christchurch #endregion } } }././@LongLink0000644000000000000000000000015200000000000011601 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeDictionary.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/DeserializeDictiona0000664000175000017500000000132512454416117034524 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class DeserializeDictionary { public void Example() { #region Usage string json = @"{ 'href': '/account/login.aspx', 'target': '_blank' }"; Dictionary htmlAttributes = JsonConvert.DeserializeObject>(json); Console.WriteLine(htmlAttributes["href"]); // /account/login.aspx Console.WriteLine(htmlAttributes["target"]); // _blank #endregion } } }././@LongLink0000644000000000000000000000016000000000000011600 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeWithJsonConverters.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeWithJsonCo0000664000175000017500000000240312454416117034506 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Converters; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeWithJsonConverters { public void Example() { #region Usage List stringComparisons = new List { StringComparison.CurrentCulture, StringComparison.InvariantCulture }; string jsonWithoutConverter = JsonConvert.SerializeObject(stringComparisons); Console.WriteLine(jsonWithoutConverter); // [0,2] string jsonWithConverter = JsonConvert.SerializeObject(stringComparisons, new StringEnumConverter()); Console.WriteLine(jsonWithConverter); // ["CurrentCulture","InvariantCulture"] List newStringComparsions = JsonConvert.DeserializeObject>( jsonWithConverter, new StringEnumConverter()); Console.WriteLine(string.Join(", ", newStringComparsions.Select(c => c.ToString()))); // CurrentCulture, InvariantCulture #endregion } } }././@LongLink0000644000000000000000000000015600000000000011605 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeContractResolver.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeContractRe0000664000175000017500000000230712454416117034526 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Serialization; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeContractResolver { #region Types public class Person { public string FirstName { get; set; } public string LastName { get; set; } public string FullName { get { return FirstName + " " + LastName; } } } #endregion public void Example() { #region Usage Person person = new Person { FirstName = "Sarah", LastName = "Security" }; string json = JsonConvert.SerializeObject(person, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }); Console.WriteLine(json); // { // "firstName": "Sarah", // "lastName": "Security", // "fullName": "Sarah Security" // } #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeRawJson.cs0000664000175000017500000000200212454416117034441 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeRawJson { #region Types public class JavaScriptSettings { public JRaw OnLoadFunction { get; set; } public JRaw OnUnloadFunction { get; set; } } #endregion public void Example() { #region Usage JavaScriptSettings settings = new JavaScriptSettings { OnLoadFunction = new JRaw("OnLoad"), OnUnloadFunction = new JRaw("function(e) { alert(e); }") }; string json = JsonConvert.SerializeObject(settings, Formatting.Indented); Console.WriteLine(json); // { // "OnLoadFunction": OnLoad, // "OnUnloadFunction": function(e) { alert(e); } // } #endregion } } }././@LongLink0000644000000000000000000000016100000000000011601 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeSerializationBinder.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeSerializat0000664000175000017500000000404412454416117034571 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeSerializationBinder { #region Types public class KnownTypesBinder : SerializationBinder { public IList KnownTypes { get; set; } public override Type BindToType(string assemblyName, string typeName) { return KnownTypes.SingleOrDefault(t => t.Name == typeName); } public override void BindToName(Type serializedType, out string assemblyName, out string typeName) { assemblyName = null; typeName = serializedType.Name; } } public class Car { public string Maker { get; set; } public string Model { get; set; } } #endregion public void Example() { #region Usage KnownTypesBinder knownTypesBinder = new KnownTypesBinder { KnownTypes = new List { typeof(Car) } }; Car car = new Car { Maker = "Ford", Model = "Explorer" }; string json = JsonConvert.SerializeObject(car, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, Binder = knownTypesBinder }); Console.WriteLine(json); // { // "$type": "Car", // "Maker": "Ford", // "Model": "Explorer" // } object newValue = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, Binder = knownTypesBinder }); Console.WriteLine(newValue.GetType().Name); // Car #endregion } } }././@LongLink0000644000000000000000000000015400000000000011603 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeUnindentedJson.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/Samples/Serializer/SerializeUnindented0000664000175000017500000000224312454416117034556 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Serializer { public class SerializeUnindentedJson { #region Types public class Account { public string Email { get; set; } public bool Active { get; set; } public DateTime CreatedDate { get; set; } public IList Roles { get; set; } } #endregion public void Example() { #region Usage Account account = new Account { Email = "james@example.com", Active = true, CreatedDate = new DateTime(2013, 1, 20, 0, 0, 0, DateTimeKind.Utc), Roles = new List { "User", "Admin" } }; string json = JsonConvert.SerializeObject(account); // {"Email":"james@example.com","Active":true,"CreatedDate":"2013-01-20T00:00:00Z","Roles":["User","Admin"]} Console.WriteLine(json); #endregion } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/JsonNetVsWindowsDataJsonTests.cs0000664000175000017500000000662412454416117033422 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Documentation { public class JsonNetVsWindowsDataJsonTests { public void CreatingJson() { #if NETFX_CORE #region CreatingJSON // Windows.Data.Json // ----------------- JsonObject jsonObject = new JsonObject { {"CPU", JsonValue.CreateStringValue("Intel")}, { "Drives", new JsonArray { JsonValue.CreateStringValue("DVD read/writer"), JsonValue.CreateStringValue("500 gigabyte hard drive") } } }; string json1 = jsonObject.Stringify(); // LINQ to JSON // ------------ JObject jObject = new JObject { {"CPU", "Intel"}, { "Drives", new JArray { "DVD read/writer", "500 gigabyte hard drive" } } }; string json2 = jObject.ToString(); #endregion #endif } public void QueryingJson() { #if NETFX_CORE #region QueryingJSON string json = @"{ 'channel': { 'title': 'James Newton-King', 'link': 'http://james.newtonking.com', 'description': 'James Newton-King's blog.', 'item': [ { 'title': 'Json.NET 1.3 + New license + Now on CodePlex', 'description': 'Annoucing the release of Json.NET 1.3, the MIT license and the source on CodePlex', 'link': 'http://james.newtonking.com/projects/json-net.aspx', 'category': [ 'Json.NET', 'CodePlex' ] } ] } }"; // Windows.Data.Json // ----------------- JsonObject jsonObject = JsonObject.Parse(json); string itemTitle1 = jsonObject["channel"].GetObject()["item"].GetArray()[0].GetObject()["title"].GetString(); // LINQ to JSON // ------------ JObject jObject = JObject.Parse(json); string itemTitle2 = (string)jObject["channel"]["item"][0]["title"]; #endregion #endif } public void Converting() { #if NETFX_CORE #region Converting JsonObject jsonObject = new JsonObject { {"CPU", JsonValue.CreateStringValue("Intel")}, {"Drives", new JsonArray { JsonValue.CreateStringValue("DVD read/writer"), JsonValue.CreateStringValue("500 gigabyte hard drive") } } }; // convert Windows.Data.Json to LINQ to JSON JObject o = JObject.FromObject(jsonObject); // convert LINQ to JSON to Windows.Data.Json JArray a = (JArray)o["Drives"]; JsonArray jsonArray = a.ToObject(); #endregion #endif } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/ConvertingJsonAndXmlTests.cs0000664000175000017500000001326612454416117032606 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50) using System; using System.Collections.Generic; using System.ComponentModel; using System.Dynamic; using System.IO; using System.Linq; using System.Runtime.Serialization; using System.Text; using System.Xml; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; using System.Globalization; using ErrorEventArgs = Newtonsoft.Json.Serialization.ErrorEventArgs; namespace Newtonsoft.Json.Tests.Documentation { public class ConvertingJsonAndXmlTests { public void SerializeXmlNode() { #region SerializeXmlNode string xml = @" Alan http://www.google.com Louis http://www.yahoo.com "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string jsonText = JsonConvert.SerializeXmlNode(doc); //{ // "?xml": { // "@version": "1.0", // "@standalone": "no" // }, // "root": { // "person": [ // { // "@id": "1", // "name": "Alan", // "url": "http://www.google.com" // }, // { // "@id": "2", // "name": "Louis", // "url": "http://www.yahoo.com" // } // ] // } //} #endregion } public void DeserializeXmlNode() { #region DeserializeXmlNode string json = @"{ '?xml': { '@version': '1.0', '@standalone': 'no' }, 'root': { 'person': [ { '@id': '1', 'name': 'Alan', 'url': 'http://www.google.com' }, { '@id': '2', 'name': 'Louis', 'url': 'http://www.yahoo.com' } ] } }"; XmlDocument doc = (XmlDocument)JsonConvert.DeserializeXmlNode(json); // // // // Alan // http://www.google.com // // // Louis // http://www.yahoo.com // // #endregion } public void ForceJsonArray() { #region ForceJsonArray string xml = @" Alan http://www.google.com Admin1 "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string json = JsonConvert.SerializeXmlNode(doc); //{ // "person": { // "@id": "1", // "name": "Alan", // "url": "http://www.google.com", // "role": "Admin1" // } //} xml = @" Alan http://www.google.com Admin "; doc = new XmlDocument(); doc.LoadXml(xml); json = JsonConvert.SerializeXmlNode(doc); //{ // "person": { // "@id": "1", // "name": "Alan", // "url": "http://www.google.com", // "role": [ // "Admin" // ] // } //} #endregion } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/ConditionalPropertiesTests.cs0000664000175000017500000001302312454416117033041 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50) using System; using System.Collections.Generic; using System.ComponentModel; using System.Dynamic; using System.IO; using System.Linq; using System.Net; using System.Reflection; using System.Runtime.Serialization; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Tests.Documentation { public class Employee { public string Name { get; set; } public Employee Manager { get; set; } } #region ShouldSerializeContractResolver public class ShouldSerializeContractResolver : DefaultContractResolver { public new static readonly ShouldSerializeContractResolver Instance = new ShouldSerializeContractResolver(); protected override JsonProperty CreateProperty(MemberInfo member, MemberSerialization memberSerialization) { JsonProperty property = base.CreateProperty(member, memberSerialization); if (property.DeclaringType == typeof(Employee) && property.PropertyName == "Manager") { property.ShouldSerialize = instance => { Employee e = (Employee)instance; return e.Manager != e; }; } return property; } } #endregion [TestFixture] public class ConditionalPropertiesTests : TestFixtureBase { #region EmployeeShouldSerializeExample public class Employee { public string Name { get; set; } public Employee Manager { get; set; } public bool ShouldSerializeManager() { // don't serialize the Manager property if an employee is their own manager return (Manager != this); } } #endregion [Test] public void ShouldSerializeClassTest() { #region ShouldSerializeClassTest Employee joe = new Employee(); joe.Name = "Joe Employee"; Employee mike = new Employee(); mike.Name = "Mike Manager"; joe.Manager = mike; // mike is his own manager // ShouldSerialize will skip this property mike.Manager = mike; string json = JsonConvert.SerializeObject(new[] { joe, mike }, Formatting.Indented); // [ // { // "Name": "Joe Employee", // "Manager": { // "Name": "Mike Manager" // } // }, // { // "Name": "Mike Manager" // } // ] #endregion StringAssert.AreEqual(@"[ { ""Name"": ""Joe Employee"", ""Manager"": { ""Name"": ""Mike Manager"" } }, { ""Name"": ""Mike Manager"" } ]", json); } [Test] public void ShouldSerializeContractResolverTest() { Newtonsoft.Json.Tests.Documentation.Employee joe = new Newtonsoft.Json.Tests.Documentation.Employee(); joe.Name = "Joe Employee"; Newtonsoft.Json.Tests.Documentation.Employee mike = new Newtonsoft.Json.Tests.Documentation.Employee(); mike.Name = "Mike Manager"; joe.Manager = mike; mike.Manager = mike; string json = JsonConvert.SerializeObject( new[] { joe, mike }, Formatting.Indented, new JsonSerializerSettings { ContractResolver = ShouldSerializeContractResolver.Instance }); StringAssert.AreEqual(@"[ { ""Name"": ""Joe Employee"", ""Manager"": { ""Name"": ""Mike Manager"" } }, { ""Name"": ""Mike Manager"" } ]", json); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/PerformanceTests.cs0000664000175000017500000001552512454416117030773 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50) using System; using System.Collections.Generic; using System.ComponentModel; using System.Dynamic; using System.IO; using System.Linq; using System.Net; using System.Runtime.Serialization; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Tests.Documentation { public class HttpClient { public Task GetStringAsync(string requestUri) { return null; } public Task GetStreamAsync(string requestUri) { return null; } } #region JsonConverterAttribute [JsonConverter(typeof(PersonConverter))] public class Person { public Person() { Likes = new List(); } public string Name { get; set; } public IList Likes { get; private set; } } #endregion #region JsonConverterContractResolver public class ConverterContractResolver : DefaultContractResolver { public new static readonly ConverterContractResolver Instance = new ConverterContractResolver(); protected override JsonContract CreateContract(Type objectType) { JsonContract contract = base.CreateContract(objectType); // this will only be called once and then cached if (objectType == typeof(DateTime) || objectType == typeof(DateTimeOffset)) contract.Converter = new JavaScriptDateTimeConverter(); return contract; } } #endregion public class PersonConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { return null; } public override bool CanConvert(Type objectType) { return (objectType == typeof(Person)); } } [TestFixture] public class PerformanceTests : TestFixtureBase { [Test] public void ConverterContractResolverTest() { string json = JsonConvert.SerializeObject(new DateTime(2000, 10, 10, 10, 10, 10, DateTimeKind.Utc), new JsonSerializerSettings { ContractResolver = ConverterContractResolver.Instance }); Console.WriteLine(json); } public void DeserializeString() { #region DeserializeString HttpClient client = new HttpClient(); // read the json into a string // string could potentially be very large and cause memory problems string json = client.GetStringAsync("http://www.test.com/large.json").Result; Person p = JsonConvert.DeserializeObject(json); #endregion } public void DeserializeStream() { #region DeserializeStream HttpClient client = new HttpClient(); using (Stream s = client.GetStreamAsync("http://www.test.com/large.json").Result) using (StreamReader sr = new StreamReader(s)) using (JsonReader reader = new JsonTextReader(sr)) { JsonSerializer serializer = new JsonSerializer(); // read the json from a stream // json size doesn't matter because only a small piece is read at a time from the HTTP request Person p = serializer.Deserialize(reader); } #endregion } } public static class PersonWriter { #region ReaderWriter public static string ToJson(this Person p) { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); // { writer.WriteStartObject(); // "name" : "Jerry" writer.WritePropertyName("name"); writer.WriteValue(p.Name); // "likes": ["Comedy", "Superman"] writer.WritePropertyName("likes"); writer.WriteStartArray(); foreach (string like in p.Likes) { writer.WriteValue(like); } writer.WriteEndArray(); // } writer.WriteEndObject(); return sw.ToString(); } #endregion public static Person ToPerson(this string s) { StringReader sr = new StringReader(s); JsonTextReader reader = new JsonTextReader(sr); Person p = new Person(); // { reader.Read(); // "name" reader.Read(); // "Jerry" p.Name = reader.ReadAsString(); // "likes" reader.Read(); // [ reader.Read(); // "Comedy", "Superman", ] while (reader.Read() && reader.TokenType != JsonToken.EndArray) { p.Likes.Add((string)reader.Value); } // } reader.Read(); return p; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Documentation/LinqToJsonTests.cs0000664000175000017500000003524412454416117030572 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE || ASPNETCORE50) using System; using System.Collections.Generic; using System.ComponentModel; using System.Dynamic; using System.IO; using System.Linq; using System.Runtime.Serialization; using System.Text; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; using System.Globalization; using ErrorEventArgs = Newtonsoft.Json.Serialization.ErrorEventArgs; using File = System.IO.File; namespace Newtonsoft.Json.Tests.Documentation { public static class File { public static StreamReader OpenText(string path) { return null; } public static StreamWriter CreateText(string path) { return null; } public static void WriteAllText(string path, string contents) { Console.WriteLine(contents); } public static string ReadAllText(string path) { return null; } } public class LinqToJsonTests { public void LinqToJsonBasic() { #region LinqToJsonBasic JObject o = JObject.Parse(@"{ 'CPU': 'Intel', 'Drives': [ 'DVD read/writer', '500 gigabyte hard drive' ] }"); string cpu = (string)o["CPU"]; // Intel string firstDrive = (string)o["Drives"][0]; // DVD read/writer IList allDrives = o["Drives"].Select(t => (string)t).ToList(); // DVD read/writer // 500 gigabyte hard drive #endregion } public void LinqToJsonCreateNormal() { #region LinqToJsonCreateNormal JArray array = new JArray(); JValue text = new JValue("Manual text"); JValue date = new JValue(new DateTime(2000, 5, 23)); array.Add(text); array.Add(date); string json = array.ToString(); // [ // "Manual text", // "2000-05-23T00:00:00" // ] #endregion } public class Post { public string Title { get; set; } public string Description { get; set; } public string Link { get; set; } public IList Categories { get; set; } } private List GetPosts() { return null; } public void LinqToJsonCreateDeclaratively() { #region LinqToJsonCreateDeclaratively List posts = GetPosts(); JObject rss = new JObject( new JProperty("channel", new JObject( new JProperty("title", "James Newton-King"), new JProperty("link", "http://james.newtonking.com"), new JProperty("description", "James Newton-King's blog."), new JProperty("item", new JArray( from p in posts orderby p.Title select new JObject( new JProperty("title", p.Title), new JProperty("description", p.Description), new JProperty("link", p.Link), new JProperty("category", new JArray( from c in p.Categories select new JValue(c))))))))); Console.WriteLine(rss.ToString()); //{ // "channel": { // "title": "James Newton-King", // "link": "http://james.newtonking.com", // "description": "James Newton-King's blog.", // "item": [ // { // "title": "Json.NET 1.3 + New license + Now on CodePlex", // "description": "Annoucing the release of Json.NET 1.3, the MIT license and being available on CodePlex", // "link": "http://james.newtonking.com/projects/json-net.aspx", // "category": [ // "Json.NET", // "CodePlex" // ] // }, // { // "title": "LINQ to JSON beta", // "description": "Annoucing LINQ to JSON", // "link": "http://james.newtonking.com/projects/json-net.aspx", // "category": [ // "Json.NET", // "LINQ" // ] // } // ] // } //} #endregion } public void LinqToJsonCreateFromObject() { List posts = null; #region LinqToJsonCreateFromObject JObject o = JObject.FromObject(new { channel = new { title = "James Newton-King", link = "http://james.newtonking.com", description = "James Newton-King's blog.", item = from p in posts orderby p.Title select new { title = p.Title, description = p.Description, link = p.Link, category = p.Categories } } }); #endregion } public void LinqToJsonCreateParse() { #region LinqToJsonCreateParse string json = @"{ CPU: 'Intel', Drives: [ 'DVD read/writer', '500 gigabyte hard drive' ] }"; JObject o = JObject.Parse(json); #endregion } public void LinqToJsonCreateParseArray() { #region LinqToJsonCreateParseArray string json = @"[ 'Small', 'Medium', 'Large' ]"; JArray a = JArray.Parse(json); #endregion } public void LinqToJsonReadObject() { #region LinqToJsonReadObject using (StreamReader reader = File.OpenText(@"c:\person.json")) { JObject o = (JObject)JToken.ReadFrom(new JsonTextReader(reader)); // do stuff } #endregion } public void LinqToJsonSimpleQuerying() { #region LinqToJsonSimpleQuerying string json = @"{ 'channel': { 'title': 'James Newton-King', 'link': 'http://james.newtonking.com', 'description': 'James Newton-King's blog.', 'item': [ { 'title': 'Json.NET 1.3 + New license + Now on CodePlex', 'description': 'Annoucing the release of Json.NET 1.3, the MIT license and the source on CodePlex', 'link': 'http://james.newtonking.com/projects/json-net.aspx', 'categories': [ 'Json.NET', 'CodePlex' ] }, { 'title': 'LINQ to JSON beta', 'description': 'Annoucing LINQ to JSON', 'link': 'http://james.newtonking.com/projects/json-net.aspx', 'categories': [ 'Json.NET', 'LINQ' ] } ] } }"; JObject rss = JObject.Parse(json); string rssTitle = (string)rss["channel"]["title"]; // James Newton-King string itemTitle = (string)rss["channel"]["item"][0]["title"]; // Json.NET 1.3 + New license + Now on CodePlex JArray categories = (JArray)rss["channel"]["item"][0]["categories"]; // ["Json.NET", "CodePlex"] IList categoriesText = categories.Select(c => (string)c).ToList(); // Json.NET // CodePlex #endregion } public void LinqToJsonQuerying() { JObject rss = new JObject(); #region LinqToJsonQuerying var postTitles = from p in rss["channel"]["item"] select (string)p["title"]; foreach (var item in postTitles) { Console.WriteLine(item); } //LINQ to JSON beta //Json.NET 1.3 + New license + Now on CodePlex var categories = from c in rss["channel"]["item"].Children()["category"].Values() group c by c into g orderby g.Count() descending select new { Category = g.Key, Count = g.Count() }; foreach (var c in categories) { Console.WriteLine(c.Category + " - Count: " + c.Count); } //Json.NET - Count: 2 //LINQ - Count: 1 //CodePlex - Count: 1 #endregion } #region LinqToJsonDeserializeObject public class Shortie { public string Original { get; set; } public string Shortened { get; set; } public string Short { get; set; } public ShortieException Error { get; set; } } public class ShortieException { public int Code { get; set; } public string ErrorMessage { get; set; } } #endregion public void LinqToJsonDeserializeExample() { #region LinqToJsonDeserializeExample string jsonText = @"{ 'short': { 'original': 'http://www.foo.com/', 'short': 'krehqk', 'error': { 'code':0, 'msg':'No action taken' } }"; JObject json = JObject.Parse(jsonText); Shortie shortie = new Shortie { Original = (string)json["short"]["original"], Short = (string)json["short"]["short"], Error = new ShortieException { Code = (int)json["short"]["error"]["code"], ErrorMessage = (string)json["short"]["error"]["msg"] } }; Console.WriteLine(shortie.Original); // http://www.foo.com/ Console.WriteLine(shortie.Error.ErrorMessage); // No action taken #endregion } public void SelectTokenSimple() { JObject o = new JObject(); #region SelectTokenSimple string name = (string)o.SelectToken("Manufacturers[0].Name"); #endregion } public void SelectTokenComplex() { #region SelectTokenComplex JObject o = JObject.Parse(@"{ 'Stores': [ 'Lambton Quay', 'Willis Street' ], 'Manufacturers': [ { 'Name': 'Acme Co', 'Products': [ { 'Name': 'Anvil', 'Price': 50 } ] }, { 'Name': 'Contoso', 'Products': [ { 'Name': 'Elbow Grease', 'Price': 99.95 }, { 'Name': 'Headlight Fluid', 'Price': 4 } ] } ] }"); string name = (string)o.SelectToken("Manufacturers[0].Name"); // Acme Co decimal productPrice = (decimal)o.SelectToken("Manufacturers[0].Products[0].Price"); // 50 string productName = (string)o.SelectToken("Manufacturers[1].Products[0].Name"); // Elbow Grease #endregion } public void SelectTokenLinq() { JObject o = new JObject(); #region SelectTokenLinq IList storeNames = o.SelectToken("Stores").Select(s => (string)s).ToList(); // Lambton Quay // Willis Street IList firstProductNames = o["Manufacturers"].Select(m => (string)m.SelectToken("Products[1].Name")).ToList(); // null // Headlight Fluid decimal totalPrice = o["Manufacturers"].Sum(m => (decimal)m.SelectToken("Products[0].Price")); // 149.95 #endregion } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/0000775000175000017500000000000012454416117024471 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/JavaScriptDateTimeConverterTests.cs0000664000175000017500000002216012454416117033417 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Converters; using Newtonsoft.Json.Tests.Serialization; using Newtonsoft.Json.Tests.TestObjects; namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class JavaScriptDateTimeConverterTests : TestFixtureBase { [Test] public void SerializeDateTime() { JavaScriptDateTimeConverter converter = new JavaScriptDateTimeConverter(); DateTime d = new DateTime(2000, 12, 15, 22, 11, 3, 55, DateTimeKind.Utc); string result; result = JsonConvert.SerializeObject(d, converter); Assert.AreEqual("new Date(976918263055)", result); } #if !NET20 [Test] public void SerializeDateTimeOffset() { JavaScriptDateTimeConverter converter = new JavaScriptDateTimeConverter(); DateTimeOffset now = new DateTimeOffset(2000, 12, 15, 22, 11, 3, 55, TimeSpan.Zero); string result; result = JsonConvert.SerializeObject(now, converter); Assert.AreEqual("new Date(976918263055)", result); } [Test] public void sdfs() { int i = Convert.ToInt32("+1"); Console.WriteLine(i); } [Test] public void SerializeNullableDateTimeClass() { NullableDateTimeTestClass t = new NullableDateTimeTestClass() { DateTimeField = null, DateTimeOffsetField = null }; JavaScriptDateTimeConverter converter = new JavaScriptDateTimeConverter(); string result; result = JsonConvert.SerializeObject(t, converter); Assert.AreEqual(@"{""PreField"":null,""DateTimeField"":null,""DateTimeOffsetField"":null,""PostField"":null}", result); t = new NullableDateTimeTestClass() { DateTimeField = new DateTime(2000, 12, 15, 22, 11, 3, 55, DateTimeKind.Utc), DateTimeOffsetField = new DateTimeOffset(2000, 12, 15, 22, 11, 3, 55, TimeSpan.Zero) }; result = JsonConvert.SerializeObject(t, converter); Assert.AreEqual(@"{""PreField"":null,""DateTimeField"":new Date(976918263055),""DateTimeOffsetField"":new Date(976918263055),""PostField"":null}", result); } [Test] public void DeserializeNullToNonNullable() { ExceptionAssert.Throws(() => { DateTimeTestClass c2 = JsonConvert.DeserializeObject(@"{""PreField"":""Pre"",""DateTimeField"":null,""DateTimeOffsetField"":null,""PostField"":""Post""}", new JavaScriptDateTimeConverter()); }, "Cannot convert null value to System.DateTime. Path 'DateTimeField', line 1, position 38."); } [Test] public void DeserializeDateTimeOffset() { JavaScriptDateTimeConverter converter = new JavaScriptDateTimeConverter(); DateTimeOffset start = new DateTimeOffset(2000, 12, 15, 22, 11, 3, 55, TimeSpan.Zero); string json = JsonConvert.SerializeObject(start, converter); DateTimeOffset result = JsonConvert.DeserializeObject(json, converter); Assert.AreEqual(new DateTimeOffset(2000, 12, 15, 22, 11, 3, 55, TimeSpan.Zero), result); } #endif [Test] public void DeserializeDateTime() { JavaScriptDateTimeConverter converter = new JavaScriptDateTimeConverter(); DateTime result = JsonConvert.DeserializeObject("new Date(976918263055)", converter); Assert.AreEqual(new DateTime(2000, 12, 15, 22, 11, 3, 55, DateTimeKind.Utc), result); } [Test] public void ConverterList() { ConverterList l1 = new ConverterList(); l1.Add(new DateTime(2000, 12, 12, 20, 10, 0, DateTimeKind.Utc)); l1.Add(new DateTime(1983, 10, 9, 23, 10, 0, DateTimeKind.Utc)); string json = JsonConvert.SerializeObject(l1, Formatting.Indented); StringAssert.AreEqual(@"[ new Date( 976651800000 ), new Date( 434589000000 ) ]", json); ConverterList l2 = JsonConvert.DeserializeObject>(json); Assert.IsNotNull(l2); Assert.AreEqual(new DateTime(2000, 12, 12, 20, 10, 0, DateTimeKind.Utc), l2[0]); Assert.AreEqual(new DateTime(1983, 10, 9, 23, 10, 0, DateTimeKind.Utc), l2[1]); } [Test] public void ConverterDictionary() { ConverterDictionary l1 = new ConverterDictionary(); l1.Add("First", new DateTime(2000, 12, 12, 20, 10, 0, DateTimeKind.Utc)); l1.Add("Second", new DateTime(1983, 10, 9, 23, 10, 0, DateTimeKind.Utc)); string json = JsonConvert.SerializeObject(l1, Formatting.Indented); StringAssert.AreEqual(@"{ ""First"": new Date( 976651800000 ), ""Second"": new Date( 434589000000 ) }", json); ConverterDictionary l2 = JsonConvert.DeserializeObject>(json); Assert.IsNotNull(l2); Assert.AreEqual(new DateTime(2000, 12, 12, 20, 10, 0, DateTimeKind.Utc), l2["First"]); Assert.AreEqual(new DateTime(1983, 10, 9, 23, 10, 0, DateTimeKind.Utc), l2["Second"]); } [Test] public void ConverterObject() { ConverterObject l1 = new ConverterObject(); l1.Object1 = new DateTime(2000, 12, 12, 20, 10, 0, DateTimeKind.Utc); l1.Object2 = null; l1.ObjectNotHandled = new DateTime(2000, 12, 12, 20, 10, 0, DateTimeKind.Utc); string json = JsonConvert.SerializeObject(l1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Object1"": new Date( 976651800000 ), ""Object2"": null, ""ObjectNotHandled"": 631122486000000000 }", json); ConverterObject l2 = JsonConvert.DeserializeObject(json); Assert.IsNotNull(l2); //Assert.AreEqual(new DateTime(2000, 12, 12, 20, 10, 0, DateTimeKind.Utc), l2["First"]); //Assert.AreEqual(new DateTime(1983, 10, 9, 23, 10, 0, DateTimeKind.Utc), l2["Second"]); } } [JsonArray(ItemConverterType = typeof(JavaScriptDateTimeConverter))] public class ConverterList : List { } [JsonDictionary(ItemConverterType = typeof(JavaScriptDateTimeConverter))] public class ConverterDictionary : Dictionary { } [JsonObject(ItemConverterType = typeof(JavaScriptDateTimeConverter))] public class ConverterObject { public object Object1 { get; set; } public object Object2 { get; set; } [JsonConverter(typeof(DateIntConverter))] public object ObjectNotHandled { get; set; } } public class DateIntConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { DateTime? d = (DateTime?)value; if (d == null) writer.WriteNull(); else writer.WriteValue(d.Value.Ticks); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { return new DateTime(Convert.ToInt64(reader.Value), DateTimeKind.Utc); } public override bool CanConvert(Type objectType) { return objectType == typeof(DateTime) || objectType == typeof(DateTime?); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/DataTableConverterTests.cs0000664000175000017500000004225012454416117031557 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.IO; using System.Text; using Newtonsoft.Json.Bson; using Newtonsoft.Json.Linq; #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) using System; using System.Collections.Generic; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif #if !NETFX_CORE using System.Data; #endif using Newtonsoft.Json.Tests.TestObjects; namespace Newtonsoft.Json.Tests.Converters { public class DataTableConverterTests : TestFixtureBase { [Test] public void Deserialize() { string json = @"[ { ""id"": 0, ""item"": ""item 0"", ""DataTableCol"": [ { ""NestedStringCol"": ""0!"" } ], ""ArrayCol"": [ 0 ], ""DateCol"": ""2000-12-29T00:00:00Z"" }, { ""id"": 1, ""item"": ""item 1"", ""DataTableCol"": [ { ""NestedStringCol"": ""1!"" } ], ""ArrayCol"": [ 1 ], ""DateCol"": ""2000-12-29T00:00:00Z"" } ]"; DataTable deserializedDataTable = JsonConvert.DeserializeObject(json); Assert.IsNotNull(deserializedDataTable); Assert.AreEqual(string.Empty, deserializedDataTable.TableName); Assert.AreEqual(5, deserializedDataTable.Columns.Count); Assert.AreEqual("id", deserializedDataTable.Columns[0].ColumnName); Assert.AreEqual(typeof(long), deserializedDataTable.Columns[0].DataType); Assert.AreEqual("item", deserializedDataTable.Columns[1].ColumnName); Assert.AreEqual(typeof(string), deserializedDataTable.Columns[1].DataType); Assert.AreEqual("DataTableCol", deserializedDataTable.Columns[2].ColumnName); Assert.AreEqual(typeof(DataTable), deserializedDataTable.Columns[2].DataType); Assert.AreEqual("ArrayCol", deserializedDataTable.Columns[3].ColumnName); Assert.AreEqual(typeof(long[]), deserializedDataTable.Columns[3].DataType); Assert.AreEqual("DateCol", deserializedDataTable.Columns[4].ColumnName); Assert.AreEqual(typeof(DateTime), deserializedDataTable.Columns[4].DataType); Assert.AreEqual(2, deserializedDataTable.Rows.Count); DataRow dr1 = deserializedDataTable.Rows[0]; Assert.AreEqual(0L, dr1["id"]); Assert.AreEqual("item 0", dr1["item"]); Assert.AreEqual("0!", ((DataTable)dr1["DataTableCol"]).Rows[0]["NestedStringCol"]); Assert.AreEqual(0L, ((long[])dr1["ArrayCol"])[0]); Assert.AreEqual(new DateTime(2000, 12, 29, 0, 0, 0, DateTimeKind.Utc), dr1["DateCol"]); DataRow dr2 = deserializedDataTable.Rows[1]; Assert.AreEqual(1L, dr2["id"]); Assert.AreEqual("item 1", dr2["item"]); Assert.AreEqual("1!", ((DataTable)dr2["DataTableCol"]).Rows[0]["NestedStringCol"]); Assert.AreEqual(1L, ((long[])dr2["ArrayCol"])[0]); Assert.AreEqual(new DateTime(2000, 12, 29, 0, 0, 0, DateTimeKind.Utc), dr2["DateCol"]); } #if !NET20 [Test] public void DeserializeParseHandling() { string json = @"[ { ""DateCol"": ""2000-12-29T00:00:00Z"", ""FloatCol"": 99.9999999999999999999 }, { ""DateCol"": ""2000-12-29T00:00:00Z"", ""FloatCol"": 99.9999999999999999999 } ]"; DataTable deserializedDataTable = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { DateParseHandling = DateParseHandling.DateTimeOffset, FloatParseHandling = FloatParseHandling.Decimal }); Assert.IsNotNull(deserializedDataTable); Assert.AreEqual(string.Empty, deserializedDataTable.TableName); Assert.AreEqual(2, deserializedDataTable.Columns.Count); Assert.AreEqual("DateCol", deserializedDataTable.Columns[0].ColumnName); Assert.AreEqual(typeof(DateTimeOffset), deserializedDataTable.Columns[0].DataType); Assert.AreEqual("FloatCol", deserializedDataTable.Columns[1].ColumnName); Assert.AreEqual(typeof(decimal), deserializedDataTable.Columns[1].DataType); Assert.AreEqual(2, deserializedDataTable.Rows.Count); DataRow dr1 = deserializedDataTable.Rows[0]; Assert.AreEqual(new DateTimeOffset(2000, 12, 29, 0, 0, 0, TimeSpan.Zero), dr1["DateCol"]); Assert.AreEqual(99.9999999999999999999m, dr1["FloatCol"]); DataRow dr2 = deserializedDataTable.Rows[1]; Assert.AreEqual(new DateTimeOffset(2000, 12, 29, 0, 0, 0, TimeSpan.Zero), dr2["DateCol"]); Assert.AreEqual(99.9999999999999999999m, dr2["FloatCol"]); } #endif [Test] public void Serialize() { // create a new DataTable. DataTable myTable = new DataTable("blah"); // create DataColumn objects of data types. DataColumn colString = new DataColumn("StringCol"); colString.DataType = typeof(string); myTable.Columns.Add(colString); DataColumn colInt32 = new DataColumn("Int32Col"); colInt32.DataType = typeof(int); myTable.Columns.Add(colInt32); DataColumn colBoolean = new DataColumn("BooleanCol"); colBoolean.DataType = typeof(bool); myTable.Columns.Add(colBoolean); DataColumn colTimeSpan = new DataColumn("TimeSpanCol"); colTimeSpan.DataType = typeof(TimeSpan); myTable.Columns.Add(colTimeSpan); DataColumn colDateTime = new DataColumn("DateTimeCol"); colDateTime.DataType = typeof(DateTime); colDateTime.DateTimeMode = DataSetDateTime.Utc; myTable.Columns.Add(colDateTime); DataColumn colDecimal = new DataColumn("DecimalCol"); colDecimal.DataType = typeof(decimal); myTable.Columns.Add(colDecimal); DataColumn colDataTable = new DataColumn("DataTableCol"); colDataTable.DataType = typeof(DataTable); myTable.Columns.Add(colDataTable); DataColumn colArray = new DataColumn("ArrayCol"); colArray.DataType = typeof(int[]); myTable.Columns.Add(colArray); DataColumn colBytes = new DataColumn("BytesCol"); colBytes.DataType = typeof(byte[]); myTable.Columns.Add(colBytes); // populate one row with values. DataRow myNewRow = myTable.NewRow(); myNewRow["StringCol"] = "Item Name"; myNewRow["Int32Col"] = 2147483647; myNewRow["BooleanCol"] = true; myNewRow["TimeSpanCol"] = new TimeSpan(10, 22, 10, 15, 100); myNewRow["DateTimeCol"] = new DateTime(2000, 12, 29, 0, 0, 0, DateTimeKind.Utc); myNewRow["DecimalCol"] = 64.0021; myNewRow["ArrayCol"] = new[] { 1 }; myNewRow["BytesCol"] = Encoding.UTF8.GetBytes("Hello world"); DataTable nestedTable = new DataTable("Nested"); DataColumn nestedColString = new DataColumn("NestedStringCol"); nestedColString.DataType = typeof(string); nestedTable.Columns.Add(nestedColString); DataRow myNewNestedRow = nestedTable.NewRow(); myNewNestedRow["NestedStringCol"] = "Nested!"; nestedTable.Rows.Add(myNewNestedRow); myNewRow["DataTableCol"] = nestedTable; myTable.Rows.Add(myNewRow); string json = JsonConvert.SerializeObject(myTable, Formatting.Indented); StringAssert.AreEqual(@"[ { ""StringCol"": ""Item Name"", ""Int32Col"": 2147483647, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021, ""DataTableCol"": [ { ""NestedStringCol"": ""Nested!"" } ], ""ArrayCol"": [ 1 ], ""BytesCol"": ""SGVsbG8gd29ybGQ="" } ]", json); } public class TestDataTableConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { DataTable d = (DataTable)value; writer.WriteValue(d.TableName); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { //reader.Read(); DataTable d = new DataTable((string)reader.Value); return d; } public override bool CanConvert(Type objectType) { return (objectType == typeof(DataTable)); } } [Test] public void PassedInJsonConverterOverridesInternalConverter() { DataTable t1 = new DataTable("Custom"); string json = JsonConvert.SerializeObject(t1, Formatting.Indented, new TestDataTableConverter()); Assert.AreEqual(@"""Custom""", json); DataTable t2 = JsonConvert.DeserializeObject(json, new TestDataTableConverter()); Assert.AreEqual(t1.TableName, t2.TableName); } [Test] public void RoundtripBsonBytes() { Guid g = new Guid("EDE9A599-A7D9-44A9-9243-7C287049DD20"); var table = new DataTable(); table.Columns.Add("data", typeof(byte[])); table.Columns.Add("id", typeof(Guid)); table.Rows.Add(Encoding.UTF8.GetBytes("Hello world!"), g); JsonSerializer serializer = new JsonSerializer(); MemoryStream ms = new MemoryStream(); BsonWriter bw = new BsonWriter(ms); serializer.Serialize(bw, table); JToken o = JToken.ReadFrom(new BsonReader(new MemoryStream(ms.ToArray())) { ReadRootValueAsArray = true }); StringAssert.AreEqual(@"[ { ""data"": ""SGVsbG8gd29ybGQh"", ""id"": ""ede9a599-a7d9-44a9-9243-7c287049dd20"" } ]", o.ToString()); DataTable deserializedDataTable = serializer.Deserialize(new BsonReader(new MemoryStream(ms.ToArray())) { ReadRootValueAsArray = true }); Assert.AreEqual(string.Empty, deserializedDataTable.TableName); Assert.AreEqual(2, deserializedDataTable.Columns.Count); Assert.AreEqual("data", deserializedDataTable.Columns[0].ColumnName); Assert.AreEqual(typeof(byte[]), deserializedDataTable.Columns[0].DataType); Assert.AreEqual("id", deserializedDataTable.Columns[1].ColumnName); Assert.AreEqual(typeof(Guid), deserializedDataTable.Columns[1].DataType); Assert.AreEqual(1, deserializedDataTable.Rows.Count); DataRow dr1 = deserializedDataTable.Rows[0]; CollectionAssert.AreEquivalent(Encoding.UTF8.GetBytes("Hello world!"), (byte[])dr1["data"]); Assert.AreEqual(g, (Guid)dr1["id"]); } [Test] public void SerializeDataTableWithNull() { var table = new DataTable(); table.Columns.Add("item"); table.Columns.Add("price", typeof(double)); table.Rows.Add("shirt", 49.99); table.Rows.Add("pants", 54.99); table.Rows.Add("shoes"); // no price var json = JsonConvert.SerializeObject(table); Assert.AreEqual(@"[" + @"{""item"":""shirt"",""price"":49.99}," + @"{""item"":""pants"",""price"":54.99}," + @"{""item"":""shoes"",""price"":null}]", json); } [Test] public void SerializeDataTableWithNullAndIgnoreNullHandling() { var table = new DataTable(); table.Columns.Add("item"); table.Columns.Add("price", typeof(double)); table.Rows.Add("shirt", 49.99); table.Rows.Add("pants", 54.99); table.Rows.Add("shoes"); // no price var json = JsonConvert.SerializeObject(table, Formatting.None, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); Assert.AreEqual(@"[" + @"{""item"":""shirt"",""price"":49.99}," + @"{""item"":""pants"",""price"":54.99}," + @"{""item"":""shoes""}]", json); } [Test] public void DerializeDataTableWithImplicitNull() { const string json = @"[" + @"{""item"":""shirt"",""price"":49.99}," + @"{""item"":""pants"",""price"":54.99}," + @"{""item"":""shoes""}]"; var table = JsonConvert.DeserializeObject(json); Assert.AreEqual("shirt", table.Rows[0]["item"]); Assert.AreEqual("pants", table.Rows[1]["item"]); Assert.AreEqual("shoes", table.Rows[2]["item"]); Assert.AreEqual(49.99, (double)table.Rows[0]["price"], 0.01); Assert.AreEqual(54.99, (double)table.Rows[1]["price"], 0.01); CustomAssert.IsInstanceOfType(typeof(System.DBNull), table.Rows[2]["price"]); } [Test] public void DerializeDataTableWithExplicitNull() { const string json = @"[" + @"{""item"":""shirt"",""price"":49.99}," + @"{""item"":""pants"",""price"":54.99}," + @"{""item"":""shoes"",""price"":null}]"; var table = JsonConvert.DeserializeObject(json); Assert.AreEqual("shirt", table.Rows[0]["item"]); Assert.AreEqual("pants", table.Rows[1]["item"]); Assert.AreEqual("shoes", table.Rows[2]["item"]); Assert.AreEqual(49.99, (double)table.Rows[0]["price"], 0.01); Assert.AreEqual(54.99, (double)table.Rows[1]["price"], 0.01); CustomAssert.IsInstanceOfType(typeof(System.DBNull), table.Rows[2]["price"]); } [Test] public void SerializeKeyValuePairWithDataTableKey() { DataTable table = new DataTable(); DataColumn idColumn = new DataColumn("id", typeof(int)); idColumn.AutoIncrement = true; DataColumn itemColumn = new DataColumn("item"); table.Columns.Add(idColumn); table.Columns.Add(itemColumn); DataRow r = table.NewRow(); r["item"] = "item!"; r.EndEdit(); table.Rows.Add(r); KeyValuePair pair = new KeyValuePair(table, 1); string serializedpair = JsonConvert.SerializeObject(pair, Formatting.Indented); StringAssert.AreEqual(@"{ ""Key"": [ { ""id"": 0, ""item"": ""item!"" } ], ""Value"": 1 }", serializedpair); var pair2 = (KeyValuePair)JsonConvert.DeserializeObject(serializedpair, typeof(KeyValuePair)); Assert.AreEqual(1, pair2.Value); Assert.AreEqual(1, pair2.Key.Rows.Count); Assert.AreEqual("item!", pair2.Key.Rows[0]["item"]); } [Test] public void SerializedTypedDataTable() { CustomerDataSet.CustomersDataTable dt = new CustomerDataSet.CustomersDataTable(); dt.AddCustomersRow("432"); string json = JsonConvert.SerializeObject(dt, Formatting.Indented); StringAssert.AreEqual(@"[ { ""CustomerID"": ""432"" } ]", json); } [Test] public void DeserializedTypedDataTable() { string json = @"[ { ""CustomerID"": ""432"" } ]"; var dt = JsonConvert.DeserializeObject(json); Assert.AreEqual("432", dt[0].CustomerID); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/DiscriminatedUnionConverterTests.cs0000664000175000017500000001360412454416117033527 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || NETFX_CORE || ASPNETCORE50) using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Tests.TestObjects; using NUnit.Framework; namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class DiscriminatedUnionConverterTests : TestFixtureBase { public class DoubleDoubleConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { double d = (double)value; writer.WriteValue(d * 2); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { double d = (double)reader.Value; return d / 2; } public override bool CanConvert(Type objectType) { return objectType == typeof(double); } } [Test] public void SerializeUnionWithConverter() { string json = JsonConvert.SerializeObject(Shape.NewRectangle(10.0, 5.0), new DoubleDoubleConverter()); Assert.AreEqual(@"{""Case"":""Rectangle"",""Fields"":[20.0,10.0]}", json); Shape c = JsonConvert.DeserializeObject(json, new DoubleDoubleConverter()); Assert.AreEqual(true, c.IsRectangle); Shape.Rectangle r = (Shape.Rectangle)c; Assert.AreEqual(5.0, r.length); Assert.AreEqual(10.0, r.width); } [Test] public void SerializeBasicUnion() { string json = JsonConvert.SerializeObject(Currency.AUD); Assert.AreEqual(@"{""Case"":""AUD""}", json); } [Test] public void SerializeUnionWithFields() { string json = JsonConvert.SerializeObject(Shape.NewRectangle(10.0, 5.0)); Assert.AreEqual(@"{""Case"":""Rectangle"",""Fields"":[10.0,5.0]}", json); } [Test] public void DeserializeBasicUnion() { Currency c = JsonConvert.DeserializeObject(@"{""Case"":""AUD""}"); Assert.AreEqual(Currency.AUD, c); c = JsonConvert.DeserializeObject(@"{""Case"":""EUR""}"); Assert.AreEqual(Currency.EUR, c); c = JsonConvert.DeserializeObject(@"null"); Assert.AreEqual(null, c); } [Test] public void DeserializeUnionWithFields() { Shape c = JsonConvert.DeserializeObject(@"{""Case"":""Rectangle"",""Fields"":[10.0,5.0]}"); Assert.AreEqual(true, c.IsRectangle); Shape.Rectangle r = (Shape.Rectangle)c; Assert.AreEqual(5.0, r.length); Assert.AreEqual(10.0, r.width); } [Test] public void DeserializeBasicUnion_NoMatch() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(@"{""Case"":""abcdefg"",""Fields"":[]}"), "No union type found with the name 'abcdefg'. Path 'Case', line 1, position 17."); } [Test] public void DeserializeBasicUnion_MismatchedFieldCount() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(@"{""Case"":""AUD"",""Fields"":[1]}"), "The number of field values does not match the number of properties definied by union 'AUD'. Path '', line 1, position 27."); } [Test] public void DeserializeBasicUnion_NoCaseName() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(@"{""Fields"":[1]}"), "No 'Case' property with union name found. Path '', line 1, position 14."); } [Test] public void DeserializeBasicUnion_UnexpectedEnd() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(@"{""Case"":"), "Unexpected end when reading union. Path 'Case', line 1, position 8."); } [Test] public void DeserializeBasicUnion_FieldsObject() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(@"{""Case"":""AUD"",""Fields"":{}}"), "Union fields must been an array. Path 'Fields', line 1, position 24."); } [Test] public void DeserializeBasicUnion_UnexpectedProperty() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject(@"{""Case123"":""AUD""}"), "Unexpected property 'Case123' found when reading union. Path 'Case123', line 1, position 11."); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/JsonValueConverterTests.cs0000664000175000017500000003464412454416117031654 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if NETFX_CORE using System; using Newtonsoft.Json.Converters; #if !NETFX_CORE using NUnit.Framework; #else using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #endif using Windows.Data.Json; using System.IO; using System.Diagnostics; using Newtonsoft.Json.Linq; using System.Collections.Generic; using System.Linq; namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class JsonValueConverterTests : TestFixtureBase { public class Computer { public string Cpu { get; set; } public List Drives { get; set; } } [Test] public void WriteJson() { JsonObject o = JsonObject.Parse(@"{ ""CPU"": ""Intel"", ""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ] }"); StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); JsonValueConverter converter = new JsonValueConverter(); converter.WriteJson(writer, o, null); string json = sw.ToString(); Assert.AreEqual(@"{""Drives"":[""DVD read/writer"",""500 gigabyte hard drive""],""CPU"":""Intel""}", json); } [Test] public void ReadJson() { string json = @"{ ""CPU"": ""Intel"", ""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ] }"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); JsonObject o = (JsonObject) converter.ReadJson(writer, typeof (JsonObject), null, null); Assert.AreEqual(2, o.Count); Assert.AreEqual("Intel", o.GetNamedString("CPU")); Assert.AreEqual("DVD read/writer", o.GetNamedArray("Drives")[0].GetString()); Assert.AreEqual("500 gigabyte hard drive", o.GetNamedArray("Drives")[1].GetString()); } [Test] public void ReadJsonComments() { string json = @"{/*comment!*/ ""CPU"": ""Intel"",/*comment!*/ ""Drives"": [/*comment!*/ ""DVD read/writer"", /*comment!*/""500 gigabyte hard drive"" ]/*comment!*/ }"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); JsonObject o = (JsonObject) converter.ReadJson(writer, typeof (JsonObject), null, null); Assert.AreEqual(2, o.Count); Assert.AreEqual("Intel", o.GetNamedString("CPU")); Assert.AreEqual("DVD read/writer", o.GetNamedArray("Drives")[0].GetString()); Assert.AreEqual("500 gigabyte hard drive", o.GetNamedArray("Drives")[1].GetString()); } [Test] public void ReadJsonNullValue() { string json = "null"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); JsonValue v = (JsonValue) converter.ReadJson(writer, typeof (JsonValue), null, null); Assert.AreEqual(JsonValueType.Null, v.ValueType); } [Test] public void ReadJsonUnsupportedValue() { string json = "undefined"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); ExceptionAssert.Throws(() => { converter.ReadJson(writer, typeof (JsonValue), null, null); }, "Unexpected or unsupported token: Undefined. Path '', line 1, position 9."); } [Test] public void ReadJsonUnexpectedEndInArray() { string json = "["; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); ExceptionAssert.Throws(() => { converter.ReadJson(writer, typeof (JsonValue), null, null); }, "Unexpected end. Path '', line 1, position 1."); } [Test] public void ReadJsonUnexpectedEndAfterComment() { string json = "[/*comment!*/"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); ExceptionAssert.Throws(() => { converter.ReadJson(writer, typeof (JsonValue), null, null); }, "Unexpected end. Path '', line 1, position 13."); } [Test] public void ReadJsonUnexpectedEndInObject() { string json = "{'hi':"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); ExceptionAssert.Throws(() => { converter.ReadJson(writer, typeof (JsonValue), null, null); }, "Unexpected end. Path 'hi', line 1, position 6."); } [Test] public void ReadJsonBadJsonType() { string json = "null"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); ExceptionAssert.Throws(() => { converter.ReadJson(writer, typeof (JsonObject), null, null); }, "Could not convert 'Windows.Data.Json.JsonValue' to 'Windows.Data.Json.JsonObject'. Path '', line 1, position 4."); } [Test] public void JsonConvertDeserialize() { string json = @"[ ""DVD read/writer"", ""500 gigabyte hard drive"" ]"; JsonArray a = JsonConvert.DeserializeObject(json); Assert.AreEqual(2, a.Count); Assert.AreEqual("DVD read/writer", a[0].GetString()); Assert.AreEqual("500 gigabyte hard drive", a[1].GetString()); } [Test] public void JsonConvertSerialize() { JsonArray a = JsonArray.Parse(@"[ ""DVD read/writer"", ""500 gigabyte hard drive"" ]"); string json = JsonConvert.SerializeObject(a, Formatting.Indented); Assert.AreEqual(@"[ ""DVD read/writer"", ""500 gigabyte hard drive"" ]", json); } [Test] public void SerializeDouble() { JsonObject o = new JsonObject(); o["zero"] = JsonValue.CreateNumberValue(0); o["int"] = JsonValue.CreateNumberValue(1); o["smallfraction"] = JsonValue.CreateNumberValue(3.0000000000000009); o["double"] = JsonValue.CreateNumberValue(1.1); o["probablyint"] = JsonValue.CreateNumberValue(1.0); o["Epsilon"] = JsonValue.CreateNumberValue(double.Epsilon); o["MinValue"] = JsonValue.CreateNumberValue(double.MinValue); o["MaxValue"] = JsonValue.CreateNumberValue(double.MaxValue); o["NaN"] = JsonValue.CreateNumberValue(double.NaN); o["NegativeInfinity"] = JsonValue.CreateNumberValue(double.NegativeInfinity); o["PositiveInfinity"] = JsonValue.CreateNumberValue(double.PositiveInfinity); string json = JsonConvert.SerializeObject(o, Formatting.Indented); Assert.AreEqual(@"{ ""PositiveInfinity"": ""Infinity"", ""NegativeInfinity"": ""-Infinity"", ""MinValue"": -1.7976931348623157E+308, ""double"": 1.1, ""int"": 1, ""zero"": 0, ""Epsilon"": 4.94065645841247E-324, ""MaxValue"": 1.7976931348623157E+308, ""NaN"": ""NaN"", ""smallfraction"": 3.0000000000000009, ""probablyint"": 1 }", json); } [Test] public void DeserializePerformance() { string json = @"{ ""CPU"": ""Intel"", ""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ] }"; Stopwatch timer = new Stopwatch(); timer.Start(); for (int i = 0; i < 100000; i++) { JsonObject o = JsonObject.Parse(json); } timer.Stop(); string winrt = timer.Elapsed.TotalSeconds.ToString(); timer = new Stopwatch(); timer.Start(); for (int i = 0; i < 100000; i++) { JObject o = JObject.Parse(json); } timer.Stop(); string linq = timer.Elapsed.TotalSeconds.ToString(); // warm up JsonConvert.DeserializeObject(json); timer = new Stopwatch(); timer.Start(); for (int i = 0; i < 100000; i++) { Computer o = JsonConvert.DeserializeObject(json); } timer.Stop(); string jsonnet = timer.Elapsed.TotalSeconds.ToString(); Debug.WriteLine("winrt: {0}, jsonnet: {1}, jsonnet linq: {2}", winrt, jsonnet, linq); } [Test] public void SerializePerformance() { string json = @"{ ""CPU"": ""Intel"", ""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ] }"; JsonObject o = JsonObject.Parse(json); JObject o1 = JObject.Parse(json); Computer o2 = JsonConvert.DeserializeObject(json); Stopwatch timer = new Stopwatch(); timer.Start(); for (int i = 0; i < 100000; i++) { o.Stringify(); } timer.Stop(); string winrt = timer.Elapsed.TotalSeconds.ToString(); timer.Start(); for (int i = 0; i < 100000; i++) { o1.ToString(Formatting.None); } timer.Stop(); string linq = timer.Elapsed.TotalSeconds.ToString(); timer = new Stopwatch(); timer.Start(); for (int i = 0; i < 100000; i++) { JsonConvert.SerializeObject(o); } timer.Stop(); string jsonnet = timer.Elapsed.TotalSeconds.ToString(); Debug.WriteLine("winrt: {0}, jsonnet: {1}, jsonnet linq: {2}", winrt, jsonnet, linq); } [Test] public void ParseJson() { string json = @"{ ""channel"": { ""title"": ""James Newton-King"", ""link"": ""http://james.newtonking.com"", ""description"": ""James Newton-King's blog."", ""item"": [ { ""title"": ""Json.NET 1.3 + New license + Now on CodePlex"", ""description"": ""Annoucing the release of Json.NET 1.3, the MIT license and the source being available on CodePlex"", ""link"": ""http://james.newtonking.com/projects/json-net.aspx"", ""category"": [ ""Json.NET"", ""CodePlex"" ] } ] } }"; // Windows.Data.Json // ----------------- JsonObject jsonObject = JsonObject.Parse(json); string itemTitle1 = jsonObject["channel"].GetObject()["item"].GetArray()[0].GetObject()["title"].GetString(); // LINQ to JSON // ------------ JObject jObject = JObject.Parse(json); string itemTitle2 = (string) jObject["channel"]["item"][0]["title"]; } [Test] public void CreateJson() { // Windows.Data.Json // ----------------- JsonObject jsonObject = new JsonObject { {"CPU", JsonValue.CreateStringValue("Intel")}, { "Drives", new JsonArray { JsonValue.CreateStringValue("DVD read/writer"), JsonValue.CreateStringValue("500 gigabyte hard drive") } } }; string json1 = jsonObject.Stringify(); // LINQ to JSON // ------------ JObject jObject = new JObject { {"CPU", "Intel"}, { "Drives", new JArray { "DVD read/writer", "500 gigabyte hard drive" } } }; string json2 = jObject.ToString(); } [Test] public void Converting() { JsonObject jsonObject = new JsonObject { {"CPU", JsonValue.CreateStringValue("Intel")}, { "Drives", new JsonArray { JsonValue.CreateStringValue("DVD read/writer"), JsonValue.CreateStringValue("500 gigabyte hard drive") } } }; // convert Windows.Data.Json to LINQ to JSON JObject o = JObject.FromObject(jsonObject); // convert LINQ to JSON to Windows.Data.Json JArray a = (JArray) o["Drives"]; JsonArray jsonArray = a.ToObject(); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/ObjectIdConverterTests.cs0000664000175000017500000000631612454416117031424 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.IO; using Newtonsoft.Json.Bson; using Newtonsoft.Json.Utilities; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class ObjectIdConverterTests : TestFixtureBase { public class ObjectIdTestClass { [JsonProperty("_id")] public BsonObjectId Id { get; set; } [JsonProperty("test")] public string Test { get; set; } } [Test] public void Serialize() { ObjectIdTestClass c = new ObjectIdTestClass { Id = new BsonObjectId(HexToBytes("4ABBED9D1D8B0F0218000001")), Test = "1234£56" }; MemoryStream ms = new MemoryStream(); JsonSerializer serializer = new JsonSerializer(); // serialize product to BSON BsonWriter writer = new BsonWriter(ms); serializer.Serialize(writer, c); byte[] expected = HexToBytes("29000000075F6964004ABBED9D1D8B0F02180000010274657374000900000031323334C2A335360000"); CollectionAssert.AreEquivalent(expected, ms.ToArray()); } [Test] public void Deserialize() { byte[] bson = HexToBytes("29000000075F6964004ABBED9D1D8B0F02180000010274657374000900000031323334C2A335360000"); JsonSerializer serializer = new JsonSerializer(); BsonReader reader = new BsonReader(new MemoryStream(bson)); ObjectIdTestClass c = serializer.Deserialize(reader); CollectionAssert.AreEquivalent(c.Id.Value, HexToBytes("4ABBED9D1D8B0F0218000001")); Assert.AreEqual(c.Test, "1234£56"); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/VersionConverterTests.cs0000664000175000017500000001174612454416117031371 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Converters; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Converters { public class VersionClass { public VersionClass(string version1, string version2) { StringProperty1 = "StringProperty1"; Version1 = new Version(version1); Version2 = new Version(version2); StringProperty2 = "StringProperty2"; } public VersionClass() { } public string StringProperty1 { get; set; } public Version Version1 { get; set; } public Version Version2 { get; set; } public string StringProperty2 { get; set; } } [TestFixture] public class VersionConverterTests : TestFixtureBase { private void SerializeVersionClass(string version1, string version2) { VersionClass versionClass = new VersionClass(version1, version2); string json = JsonConvert.SerializeObject(versionClass, Formatting.Indented, new VersionConverter()); string expectedJson = string.Format(@"{{ ""StringProperty1"": ""StringProperty1"", ""Version1"": ""{0}"", ""Version2"": ""{1}"", ""StringProperty2"": ""StringProperty2"" }}", version1, version2); StringAssert.AreEqual(expectedJson, json); } [Test] public void SerializeVersionClass() { SerializeVersionClass("1.0.0.0", "2.0.0.0"); SerializeVersionClass("1.2.0.0", "2.3.0.0"); SerializeVersionClass("1.2.3.0", "2.3.4.0"); SerializeVersionClass("1.2.3.4", "2.3.4.5"); SerializeVersionClass("1.2", "2.3"); SerializeVersionClass("1.2.3", "2.3.4"); SerializeVersionClass("1.2.3.4", "2.3.4.5"); } private void DeserializeVersionClass(string version1, string version2) { string json = string.Format(@"{{""StringProperty1"": ""StringProperty1"", ""Version1"": ""{0}"", ""Version2"": ""{1}"", ""StringProperty2"": ""StringProperty2""}}", version1, version2); Version expectedVersion1 = new Version(version1); Version expectedVersion2 = new Version(version2); VersionClass versionClass = JsonConvert.DeserializeObject(json, new VersionConverter()); Assert.AreEqual("StringProperty1", versionClass.StringProperty1); Assert.AreEqual(expectedVersion1, versionClass.Version1); Assert.AreEqual(expectedVersion2, versionClass.Version2); Assert.AreEqual("StringProperty2", versionClass.StringProperty2); } [Test] public void DeserializeVersionClass() { DeserializeVersionClass("1.0.0.0", "2.0.0.0"); DeserializeVersionClass("1.2.0.0", "2.3.0.0"); DeserializeVersionClass("1.2.3.0", "2.3.4.0"); DeserializeVersionClass("1.2.3.4", "2.3.4.5"); DeserializeVersionClass("1.2", "2.3"); DeserializeVersionClass("1.2.3", "2.3.4"); DeserializeVersionClass("1.2.3.4", "2.3.4.5"); } [Test] public void RoundtripImplicitConverter() { var version = new Version(1, 0, 0, 0); string reportJSON = JsonConvert.SerializeObject(version); //Test Version report2 = JsonConvert.DeserializeObject(reportJSON); string reportJSON2 = JsonConvert.SerializeObject(report2); Assert.AreEqual(reportJSON, reportJSON2); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/DataSetConverterTests.cs0000664000175000017500000004260512454416117031267 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) using System; using Newtonsoft.Json.Converters; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using System.Data; namespace Newtonsoft.Json.Tests.Converters { public class DataSetConverterTests : TestFixtureBase { [Test] public void DeserializeInvalidDataTable() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject("{\"pending_count\":23,\"completed_count\":45}"), "Unexpected JSON token when reading DataTable. Expected StartArray, got Integer. Path 'pending_count', line 1, position 19."); } [Test] public void SerializeAndDeserialize() { DataSet dataSet = new DataSet("dataSet"); dataSet.Namespace = "NetFrameWork"; DataTable table = new DataTable(); DataColumn idColumn = new DataColumn("id", typeof(int)); idColumn.AutoIncrement = true; DataColumn itemColumn = new DataColumn("item"); table.Columns.Add(idColumn); table.Columns.Add(itemColumn); dataSet.Tables.Add(table); for (int i = 0; i < 2; i++) { DataRow newRow = table.NewRow(); newRow["item"] = "item " + i; table.Rows.Add(newRow); } dataSet.AcceptChanges(); string json = JsonConvert.SerializeObject(dataSet, Formatting.Indented); StringAssert.AreEqual(@"{ ""Table1"": [ { ""id"": 0, ""item"": ""item 0"" }, { ""id"": 1, ""item"": ""item 1"" } ] }", json); DataSet deserializedDataSet = JsonConvert.DeserializeObject(json); Assert.IsNotNull(deserializedDataSet); Assert.AreEqual(1, deserializedDataSet.Tables.Count); DataTable dt = deserializedDataSet.Tables[0]; Assert.AreEqual("Table1", dt.TableName); Assert.AreEqual(2, dt.Columns.Count); Assert.AreEqual("id", dt.Columns[0].ColumnName); Assert.AreEqual(typeof(long), dt.Columns[0].DataType); Assert.AreEqual("item", dt.Columns[1].ColumnName); Assert.AreEqual(typeof(string), dt.Columns[1].DataType); Assert.AreEqual(2, dt.Rows.Count); } [Test] public void SerializeMultiTableDataSet() { DataSet ds = new DataSet(); ds.Tables.Add(CreateDataTable("FirstTable", 2)); ds.Tables.Add(CreateDataTable("SecondTable", 1)); string json = JsonConvert.SerializeObject(ds, Formatting.Indented, new IsoDateTimeConverter()); // { // "FirstTable": [ // { // "StringCol": "Item Name", // "Int32Col": 1, // "BooleanCol": true, // "TimeSpanCol": "10.22:10:15.1000000", // "DateTimeCol": "2000-12-29T00:00:00Z", // "DecimalCol": 64.0021 // }, // { // "StringCol": "Item Name", // "Int32Col": 2, // "BooleanCol": true, // "TimeSpanCol": "10.22:10:15.1000000", // "DateTimeCol": "2000-12-29T00:00:00Z", // "DecimalCol": 64.0021 // } // ], // "SecondTable": [ // { // "StringCol": "Item Name", // "Int32Col": 1, // "BooleanCol": true, // "TimeSpanCol": "10.22:10:15.1000000", // "DateTimeCol": "2000-12-29T00:00:00Z", // "DecimalCol": 64.0021 // } // ] // } DataSet deserializedDs = JsonConvert.DeserializeObject(json, new IsoDateTimeConverter()); StringAssert.AreEqual(@"{ ""FirstTable"": [ { ""StringCol"": ""Item Name"", ""Int32Col"": 1, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 }, { ""StringCol"": ""Item Name"", ""Int32Col"": 2, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 } ], ""SecondTable"": [ { ""StringCol"": ""Item Name"", ""Int32Col"": 1, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 } ] }", json); Assert.IsNotNull(deserializedDs); } [Test] public void DeserializeMultiTableDataSet() { string json = @"{ ""FirstTable"": [ { ""StringCol"": ""Item Name"", ""Int32Col"": 2147483647, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 } ], ""SecondTable"": [ { ""StringCol"": ""Item Name"", ""Int32Col"": 2147483647, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 } ] }"; DataSet ds = JsonConvert.DeserializeObject(json); Assert.IsNotNull(ds); Assert.AreEqual(2, ds.Tables.Count); Assert.AreEqual("FirstTable", ds.Tables[0].TableName); Assert.AreEqual("SecondTable", ds.Tables[1].TableName); DataTable dt = ds.Tables[0]; Assert.AreEqual("StringCol", dt.Columns[0].ColumnName); Assert.AreEqual(typeof(string), dt.Columns[0].DataType); Assert.AreEqual("Int32Col", dt.Columns[1].ColumnName); Assert.AreEqual(typeof(long), dt.Columns[1].DataType); Assert.AreEqual("BooleanCol", dt.Columns[2].ColumnName); Assert.AreEqual(typeof(bool), dt.Columns[2].DataType); Assert.AreEqual("TimeSpanCol", dt.Columns[3].ColumnName); Assert.AreEqual(typeof(string), dt.Columns[3].DataType); Assert.AreEqual("DateTimeCol", dt.Columns[4].ColumnName); Assert.AreEqual(typeof(DateTime), dt.Columns[4].DataType); Assert.AreEqual("DecimalCol", dt.Columns[5].ColumnName); Assert.AreEqual(typeof(double), dt.Columns[5].DataType); Assert.AreEqual(1, ds.Tables[0].Rows.Count); Assert.AreEqual(1, ds.Tables[1].Rows.Count); } private DataTable CreateDataTable(string dataTableName, int rows) { // create a new DataTable. DataTable myTable = new DataTable(dataTableName); // create DataColumn objects of data types. DataColumn colString = new DataColumn("StringCol"); colString.DataType = typeof(string); myTable.Columns.Add(colString); DataColumn colInt32 = new DataColumn("Int32Col"); colInt32.DataType = typeof(int); myTable.Columns.Add(colInt32); DataColumn colBoolean = new DataColumn("BooleanCol"); colBoolean.DataType = typeof(bool); myTable.Columns.Add(colBoolean); DataColumn colTimeSpan = new DataColumn("TimeSpanCol"); colTimeSpan.DataType = typeof(TimeSpan); myTable.Columns.Add(colTimeSpan); DataColumn colDateTime = new DataColumn("DateTimeCol"); colDateTime.DataType = typeof(DateTime); colDateTime.DateTimeMode = DataSetDateTime.Utc; myTable.Columns.Add(colDateTime); DataColumn colDecimal = new DataColumn("DecimalCol"); colDecimal.DataType = typeof(decimal); myTable.Columns.Add(colDecimal); for (int i = 1; i <= rows; i++) { DataRow myNewRow = myTable.NewRow(); myNewRow["StringCol"] = "Item Name"; myNewRow["Int32Col"] = i; myNewRow["BooleanCol"] = true; myNewRow["TimeSpanCol"] = new TimeSpan(10, 22, 10, 15, 100); myNewRow["DateTimeCol"] = new DateTime(2000, 12, 29, 0, 0, 0, DateTimeKind.Utc); myNewRow["DecimalCol"] = 64.0021; myTable.Rows.Add(myNewRow); } return myTable; } public class DataSetAndTableTestClass { public string Before { get; set; } public DataSet Set { get; set; } public string Middle { get; set; } public DataTable Table { get; set; } public string After { get; set; } } [Test] public void SerializeWithCamelCaseResolver() { DataSet ds = new DataSet(); ds.Tables.Add(CreateDataTable("FirstTable", 2)); ds.Tables.Add(CreateDataTable("SecondTable", 1)); string json = JsonConvert.SerializeObject(ds, Formatting.Indented, new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }); StringAssert.AreEqual(@"{ ""firstTable"": [ { ""stringCol"": ""Item Name"", ""int32Col"": 1, ""booleanCol"": true, ""timeSpanCol"": ""10.22:10:15.1000000"", ""dateTimeCol"": ""2000-12-29T00:00:00Z"", ""decimalCol"": 64.0021 }, { ""stringCol"": ""Item Name"", ""int32Col"": 2, ""booleanCol"": true, ""timeSpanCol"": ""10.22:10:15.1000000"", ""dateTimeCol"": ""2000-12-29T00:00:00Z"", ""decimalCol"": 64.0021 } ], ""secondTable"": [ { ""stringCol"": ""Item Name"", ""int32Col"": 1, ""booleanCol"": true, ""timeSpanCol"": ""10.22:10:15.1000000"", ""dateTimeCol"": ""2000-12-29T00:00:00Z"", ""decimalCol"": 64.0021 } ] }", json); } [Test] public void SerializeDataSetProperty() { DataSet ds = new DataSet(); ds.Tables.Add(CreateDataTable("FirstTable", 2)); ds.Tables.Add(CreateDataTable("SecondTable", 1)); DataSetAndTableTestClass c = new DataSetAndTableTestClass { Before = "Before", Set = ds, Middle = "Middle", Table = CreateDataTable("LoneTable", 2), After = "After" }; string json = JsonConvert.SerializeObject(c, Formatting.Indented, new IsoDateTimeConverter()); StringAssert.AreEqual(@"{ ""Before"": ""Before"", ""Set"": { ""FirstTable"": [ { ""StringCol"": ""Item Name"", ""Int32Col"": 1, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 }, { ""StringCol"": ""Item Name"", ""Int32Col"": 2, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 } ], ""SecondTable"": [ { ""StringCol"": ""Item Name"", ""Int32Col"": 1, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 } ] }, ""Middle"": ""Middle"", ""Table"": [ { ""StringCol"": ""Item Name"", ""Int32Col"": 1, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 }, { ""StringCol"": ""Item Name"", ""Int32Col"": 2, ""BooleanCol"": true, ""TimeSpanCol"": ""10.22:10:15.1000000"", ""DateTimeCol"": ""2000-12-29T00:00:00Z"", ""DecimalCol"": 64.0021 } ], ""After"": ""After"" }", json); DataSetAndTableTestClass c2 = JsonConvert.DeserializeObject(json, new IsoDateTimeConverter()); Assert.AreEqual(c.Before, c2.Before); Assert.AreEqual(c.Set.Tables.Count, c2.Set.Tables.Count); Assert.AreEqual(c.Middle, c2.Middle); Assert.AreEqual(c.Table.Rows.Count, c2.Table.Rows.Count); Assert.AreEqual(c.After, c2.After); } [Test] public void SerializedTypedDataSet() { CustomerDataSet ds = new CustomerDataSet(); ds.Customers.AddCustomersRow("234"); string json = JsonConvert.SerializeObject(ds, Formatting.Indented); StringAssert.AreEqual(@"{ ""Customers"": [ { ""CustomerID"": ""234"" } ] }", json); CustomerDataSet ds1 = new CustomerDataSet(); DataTable table = ds1.Tables["Customers"]; DataRow row = ds1.Tables["Customers"].NewRow(); row["CustomerID"] = "234"; table.Rows.Add(row); string json1 = JsonConvert.SerializeObject(ds1, Formatting.Indented); StringAssert.AreEqual(@"{ ""Customers"": [ { ""CustomerID"": ""234"" } ] }", json1); } [Test] public void DeserializedTypedDataSet() { string json = @"{ ""Customers"": [ { ""CustomerID"": ""234"" } ] }"; var ds = JsonConvert.DeserializeObject(json); Assert.AreEqual("234", ds.Customers[0].CustomerID); } [Test] public void ContractResolverInsideConverter() { var test = new MultipleDataTablesJsonTest { TableWrapper1 = new DataTableWrapper { DataTableProperty = CreateDataTable(3, "Table1Col") }, TableWrapper2 = new DataTableWrapper { DataTableProperty = CreateDataTable(3, "Table2Col") } }; string json = JsonConvert.SerializeObject(test, Formatting.Indented, new LowercaseDataTableConverter()); StringAssert.AreEqual(@"{ ""TableWrapper1"": { ""DataTableProperty"": [ { ""table1col1"": ""1"", ""table1col2"": ""2"", ""table1col3"": ""3"" } ], ""StringProperty"": null, ""IntProperty"": 0 }, ""TableWrapper2"": { ""DataTableProperty"": [ { ""table2col1"": ""1"", ""table2col2"": ""2"", ""table2col3"": ""3"" } ], ""StringProperty"": null, ""IntProperty"": 0 } }", json); } private static DataTable CreateDataTable(int cols, string colNamePrefix) { var table = new DataTable(); for (int i = 1; i <= cols; i++) { table.Columns.Add(new DataColumn() { ColumnName = colNamePrefix + i, DefaultValue = i }); } table.Rows.Add(table.NewRow()); return table; } public class DataTableWrapper { public DataTable DataTableProperty { get; set; } public String StringProperty { get; set; } public Int32 IntProperty { get; set; } } public class MultipleDataTablesJsonTest { public DataTableWrapper TableWrapper1 { get; set; } public DataTableWrapper TableWrapper2 { get; set; } } public class LowercaseDataTableConverter : DataTableConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var dataTableSerializer = new JsonSerializer { ContractResolver = new LowercaseContractResolver() }; base.WriteJson(writer, value, dataTableSerializer); } } public class LowercaseContractResolver : DefaultContractResolver { protected internal override string ResolvePropertyName(string propertyName) { return propertyName.ToLower(); } } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/BinaryConverterTests.cs0000664000175000017500000001514312454416117031163 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if !(NET20 || NETFX_CORE || ASPNETCORE50) using System.Data.Linq; #endif #if !(NETFX_CORE || ASPNETCORE50) using System.Data.SqlTypes; #endif using System.Text; using Newtonsoft.Json.Converters; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class BinaryConverterTests : TestFixtureBase { private static readonly byte[] TestData = Encoding.UTF8.GetBytes("This is some test data!!!"); public class ByteArrayClass { public byte[] ByteArray { get; set; } public byte[] NullByteArray { get; set; } } #if !(NET20 || NETFX_CORE || PORTABLE || PORTABLE40 || ASPNETCORE50) [Test] public void DeserializeBinaryClass() { string json = @"{ ""Binary"": ""VGhpcyBpcyBzb21lIHRlc3QgZGF0YSEhIQ=="", ""NullBinary"": null }"; BinaryClass binaryClass = JsonConvert.DeserializeObject(json, new BinaryConverter()); Assert.AreEqual(new Binary(TestData), binaryClass.Binary); Assert.AreEqual(null, binaryClass.NullBinary); } [Test] public void DeserializeBinaryClassFromJsonArray() { string json = @"{ ""Binary"": [0, 1, 2, 3], ""NullBinary"": null }"; BinaryClass binaryClass = JsonConvert.DeserializeObject(json, new BinaryConverter()); Assert.AreEqual(new byte[] { 0, 1, 2, 3 }, binaryClass.Binary.ToArray()); Assert.AreEqual(null, binaryClass.NullBinary); } public class BinaryClass { public Binary Binary { get; set; } public Binary NullBinary { get; set; } } [Test] public void SerializeBinaryClass() { BinaryClass binaryClass = new BinaryClass(); binaryClass.Binary = new Binary(TestData); binaryClass.NullBinary = null; string json = JsonConvert.SerializeObject(binaryClass, Formatting.Indented, new BinaryConverter()); StringAssert.AreEqual(@"{ ""Binary"": ""VGhpcyBpcyBzb21lIHRlc3QgZGF0YSEhIQ=="", ""NullBinary"": null }", json); } #endif [Test] public void SerializeByteArrayClass() { ByteArrayClass byteArrayClass = new ByteArrayClass(); byteArrayClass.ByteArray = TestData; byteArrayClass.NullByteArray = null; string json = JsonConvert.SerializeObject(byteArrayClass, Formatting.Indented); StringAssert.AreEqual(@"{ ""ByteArray"": ""VGhpcyBpcyBzb21lIHRlc3QgZGF0YSEhIQ=="", ""NullByteArray"": null }", json); } #if !(NETFX_CORE || PORTABLE || PORTABLE40 || ASPNETCORE50) public class SqlBinaryClass { public SqlBinary SqlBinary { get; set; } public SqlBinary? NullableSqlBinary1 { get; set; } public SqlBinary? NullableSqlBinary2 { get; set; } } [Test] public void SerializeSqlBinaryClass() { SqlBinaryClass sqlBinaryClass = new SqlBinaryClass(); sqlBinaryClass.SqlBinary = new SqlBinary(TestData); sqlBinaryClass.NullableSqlBinary1 = new SqlBinary(TestData); sqlBinaryClass.NullableSqlBinary2 = null; string json = JsonConvert.SerializeObject(sqlBinaryClass, Formatting.Indented, new BinaryConverter()); StringAssert.AreEqual(@"{ ""SqlBinary"": ""VGhpcyBpcyBzb21lIHRlc3QgZGF0YSEhIQ=="", ""NullableSqlBinary1"": ""VGhpcyBpcyBzb21lIHRlc3QgZGF0YSEhIQ=="", ""NullableSqlBinary2"": null }", json); } [Test] public void DeserializeSqlBinaryClass() { string json = @"{ ""SqlBinary"": ""VGhpcyBpcyBzb21lIHRlc3QgZGF0YSEhIQ=="", ""NullableSqlBinary1"": ""VGhpcyBpcyBzb21lIHRlc3QgZGF0YSEhIQ=="", ""NullableSqlBinary2"": null }"; SqlBinaryClass sqlBinaryClass = JsonConvert.DeserializeObject(json, new BinaryConverter()); Assert.AreEqual(new SqlBinary(TestData), sqlBinaryClass.SqlBinary); Assert.AreEqual(new SqlBinary(TestData), sqlBinaryClass.NullableSqlBinary1); Assert.AreEqual(null, sqlBinaryClass.NullableSqlBinary2); } #endif [Test] public void DeserializeByteArrayClass() { string json = @"{ ""ByteArray"": ""VGhpcyBpcyBzb21lIHRlc3QgZGF0YSEhIQ=="", ""NullByteArray"": null }"; ByteArrayClass byteArrayClass = JsonConvert.DeserializeObject(json); CollectionAssert.AreEquivalent(TestData, byteArrayClass.ByteArray); Assert.AreEqual(null, byteArrayClass.NullByteArray); } [Test] public void DeserializeByteArrayFromJsonArray() { string json = @"{ ""ByteArray"": [0, 1, 2, 3], ""NullByteArray"": null }"; ByteArrayClass c = JsonConvert.DeserializeObject(json); Assert.IsNotNull(c.ByteArray); Assert.AreEqual(4, c.ByteArray.Length); CollectionAssert.AreEquivalent(new byte[] { 0, 1, 2, 3 }, c.ByteArray); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/RegexConverterTests.cs0000664000175000017500000002032612454416117031010 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; using System.Text.RegularExpressions; using Newtonsoft.Json.Bson; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Utilities; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Tests.TestObjects; namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class RegexConverterTests : TestFixtureBase { public class RegexTestClass { public Regex Regex { get; set; } } [Test] public void SerializeToText() { Regex regex = new Regex("abc", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant); string json = JsonConvert.SerializeObject(regex, Formatting.Indented, new RegexConverter()); StringAssert.AreEqual(@"{ ""Pattern"": ""abc"", ""Options"": 513 }", json); } [Test] public void SerializeCamelCaseAndStringEnums() { Regex regex = new Regex("abc", RegexOptions.IgnoreCase); string json = JsonConvert.SerializeObject(regex, Formatting.Indented, new JsonSerializerSettings { Converters = { new RegexConverter(), new StringEnumConverter() { CamelCaseText = true } }, ContractResolver = new CamelCasePropertyNamesContractResolver() }); StringAssert.AreEqual(@"{ ""pattern"": ""abc"", ""options"": ""ignoreCase"" }", json); } [Test] public void DeserializeCamelCaseAndStringEnums() { string json = @"{ ""pattern"": ""abc"", ""options"": ""ignoreCase"" }"; Regex regex = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { Converters = { new RegexConverter() } }); Assert.AreEqual("abc", regex.ToString()); Assert.AreEqual(RegexOptions.IgnoreCase, regex.Options); } [Test] public void DeserializeISerializeRegexJson() { string json = @"{ ""Regex"": { ""pattern"": ""(hi)"", ""options"": 5, ""matchTimeout"": -10000 } }"; RegexTestClass r = JsonConvert.DeserializeObject(json); Assert.AreEqual("(hi)", r.Regex.ToString()); Assert.AreEqual(RegexOptions.IgnoreCase | RegexOptions.ExplicitCapture, r.Regex.Options); } [Test] public void SerializeToBson() { Regex regex = new Regex("abc", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); JsonSerializer serializer = new JsonSerializer(); serializer.Converters.Add(new RegexConverter()); serializer.Serialize(writer, new RegexTestClass { Regex = regex }); string expected = "13-00-00-00-0B-52-65-67-65-78-00-61-62-63-00-69-75-00-00"; string bson = BytesToHex(ms.ToArray()); Assert.AreEqual(expected, bson); } [Test] public void DeserializeFromText() { string json = @"{ ""Pattern"": ""abc"", ""Options"": 513 }"; Regex newRegex = JsonConvert.DeserializeObject(json, new RegexConverter()); Assert.AreEqual("abc", newRegex.ToString()); Assert.AreEqual(RegexOptions.IgnoreCase | RegexOptions.CultureInvariant, newRegex.Options); } [Test] public void DeserializeFromBson() { MemoryStream ms = new MemoryStream(HexToBytes("13-00-00-00-0B-52-65-67-65-78-00-61-62-63-00-69-75-00-00")); BsonReader reader = new BsonReader(ms); JsonSerializer serializer = new JsonSerializer(); serializer.Converters.Add(new RegexConverter()); RegexTestClass c = serializer.Deserialize(reader); Assert.AreEqual("abc", c.Regex.ToString()); Assert.AreEqual(RegexOptions.IgnoreCase, c.Regex.Options); } [Test] public void ConvertEmptyRegexBson() { Regex regex = new Regex(string.Empty); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); JsonSerializer serializer = new JsonSerializer(); serializer.Converters.Add(new RegexConverter()); serializer.Serialize(writer, new RegexTestClass { Regex = regex }); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); serializer.Converters.Add(new RegexConverter()); RegexTestClass c = serializer.Deserialize(reader); Assert.AreEqual("", c.Regex.ToString()); Assert.AreEqual(RegexOptions.None, c.Regex.Options); } [Test] public void ConvertRegexWithAllOptionsBson() { Regex regex = new Regex( "/", RegexOptions.IgnoreCase | RegexOptions.Singleline | RegexOptions.Multiline | RegexOptions.ExplicitCapture); MemoryStream ms = new MemoryStream(); BsonWriter writer = new BsonWriter(ms); JsonSerializer serializer = new JsonSerializer(); serializer.Converters.Add(new RegexConverter()); serializer.Serialize(writer, new RegexTestClass { Regex = regex }); string expected = "14-00-00-00-0B-52-65-67-65-78-00-2F-00-69-6D-73-75-78-00-00"; string bson = BytesToHex(ms.ToArray()); Assert.AreEqual(expected, bson); ms.Seek(0, SeekOrigin.Begin); BsonReader reader = new BsonReader(ms); serializer.Converters.Add(new RegexConverter()); RegexTestClass c = serializer.Deserialize(reader); Assert.AreEqual("/", c.Regex.ToString()); Assert.AreEqual(RegexOptions.IgnoreCase | RegexOptions.Singleline | RegexOptions.Multiline | RegexOptions.ExplicitCapture, c.Regex.Options); } [Test] public void ConvertEmptyRegexJson() { Regex regex = new Regex(""); string json = JsonConvert.SerializeObject(new RegexTestClass { Regex = regex }, Formatting.Indented, new RegexConverter()); StringAssert.AreEqual(@"{ ""Regex"": { ""Pattern"": """", ""Options"": 0 } }", json); RegexTestClass newRegex = JsonConvert.DeserializeObject(json, new RegexConverter()); Assert.AreEqual("", newRegex.Regex.ToString()); Assert.AreEqual(RegexOptions.None, newRegex.Regex.Options); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/ExpandoObjectConverterTests.cs0000664000175000017500000001243612454416117032466 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET35 || NET20 || PORTABLE40) using System; using System.Collections.Generic; using System.Dynamic; using System.Linq; using System.Text; using Newtonsoft.Json.Converters; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class ExpandoObjectConverterTests : TestFixtureBase { public class ExpandoContainer { public string Before { get; set; } public ExpandoObject Expando { get; set; } public string After { get; set; } } [Test] public void SerializeExpandoObject() { ExpandoContainer d = new ExpandoContainer { Before = "Before!", Expando = new ExpandoObject(), After = "After!" }; dynamic o = d.Expando; o.String = "String!"; o.Integer = 234; o.Float = 1.23d; o.List = new List { "First", "Second", "Third" }; o.Object = new Dictionary { { "First", 1 } }; string json = JsonConvert.SerializeObject(d, Formatting.Indented); StringAssert.AreEqual(@"{ ""Before"": ""Before!"", ""Expando"": { ""String"": ""String!"", ""Integer"": 234, ""Float"": 1.23, ""List"": [ ""First"", ""Second"", ""Third"" ], ""Object"": { ""First"": 1 } }, ""After"": ""After!"" }", json); } [Test] public void SerializeNullExpandoObject() { ExpandoContainer d = new ExpandoContainer(); string json = JsonConvert.SerializeObject(d, Formatting.Indented); StringAssert.AreEqual(@"{ ""Before"": null, ""Expando"": null, ""After"": null }", json); } [Test] public void DeserializeExpandoObject() { string json = @"{ ""Before"": ""Before!"", ""Expando"": { ""String"": ""String!"", ""Integer"": 234, ""Float"": 1.23, ""List"": [ ""First"", ""Second"", ""Third"" ], ""Object"": { ""First"": 1 } }, ""After"": ""After!"" }"; ExpandoContainer o = JsonConvert.DeserializeObject(json); Assert.AreEqual(o.Before, "Before!"); Assert.AreEqual(o.After, "After!"); Assert.IsNotNull(o.Expando); dynamic d = o.Expando; CustomAssert.IsInstanceOfType(typeof(ExpandoObject), d); Assert.AreEqual("String!", d.String); CustomAssert.IsInstanceOfType(typeof(string), d.String); Assert.AreEqual(234, d.Integer); CustomAssert.IsInstanceOfType(typeof(long), d.Integer); Assert.AreEqual(1.23, d.Float); CustomAssert.IsInstanceOfType(typeof(double), d.Float); Assert.IsNotNull(d.List); Assert.AreEqual(3, d.List.Count); CustomAssert.IsInstanceOfType(typeof(List), d.List); Assert.AreEqual("First", d.List[0]); CustomAssert.IsInstanceOfType(typeof(string), d.List[0]); Assert.AreEqual("Second", d.List[1]); Assert.AreEqual("Third", d.List[2]); Assert.IsNotNull(d.Object); CustomAssert.IsInstanceOfType(typeof(ExpandoObject), d.Object); Assert.AreEqual(1, d.Object.First); CustomAssert.IsInstanceOfType(typeof(long), d.Object.First); } [Test] public void DeserializeNullExpandoObject() { string json = @"{ ""Before"": null, ""Expando"": null, ""After"": null }"; ExpandoContainer c = JsonConvert.DeserializeObject(json); Assert.AreEqual(null, c.Expando); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/XmlNodeConverterTest.cs0000664000175000017500000024575512454416117031140 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Text; #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) using System; using System.Collections.Generic; using Newtonsoft.Json.Tests.Serialization; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json; using System.IO; using System.Xml; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Linq; #if !NET20 using System.Xml.Linq; #endif namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class XmlNodeConverterTest : TestFixtureBase { private string SerializeXmlNode(XmlNode node) { string json = JsonConvert.SerializeXmlNode(node, Formatting.Indented); XmlNodeReader reader = new XmlNodeReader(node); #if !NET20 XObject xNode; if (node is XmlDocument) { xNode = XDocument.Load(reader); } else if (node is XmlAttribute) { XmlAttribute attribute = (XmlAttribute)node; xNode = new XAttribute(XName.Get(attribute.LocalName, attribute.NamespaceURI), attribute.Value); } else { reader.MoveToContent(); xNode = XNode.ReadFrom(reader); } string linqJson = JsonConvert.SerializeXNode(xNode, Formatting.Indented); Assert.AreEqual(json, linqJson); #endif return json; } private XmlNode DeserializeXmlNode(string json) { return DeserializeXmlNode(json, null); } private XmlNode DeserializeXmlNode(string json, string deserializeRootElementName) { JsonTextReader reader; reader = new JsonTextReader(new StringReader(json)); reader.Read(); XmlNodeConverter converter = new XmlNodeConverter(); if (deserializeRootElementName != null) converter.DeserializeRootElementName = deserializeRootElementName; XmlNode node = (XmlNode)converter.ReadJson(reader, typeof(XmlDocument), null, new JsonSerializer()); #if !NET20 string xmlText = node.OuterXml; reader = new JsonTextReader(new StringReader(json)); reader.Read(); XDocument d = (XDocument)converter.ReadJson(reader, typeof(XDocument), null, new JsonSerializer()); string linqXmlText = d.ToString(SaveOptions.DisableFormatting); if (d.Declaration != null) linqXmlText = d.Declaration + linqXmlText; Assert.AreEqual(xmlText, linqXmlText); #endif return node; } #if !NET20 public class Foo { public XElement Bar { get; set; } } [Test] public void SerializeAndDeserializeXElement() { Foo foo = new Foo { Bar = null }; string json = JsonConvert.SerializeObject(foo); Assert.AreEqual(@"{""Bar"":null}", json); Foo foo2 = JsonConvert.DeserializeObject(json); Assert.IsNull(foo2.Bar); } [Test] public void MultipleNamespacesXDocument() { string xml = @""; XDocument d = XDocument.Parse(xml); string json = JsonConvert.SerializeObject(d, Formatting.Indented); Console.WriteLine(json); XDocument doc = JsonConvert.DeserializeObject(json); Console.WriteLine(doc.ToString()); Assert.AreEqual(xml, doc.ToString()); } #endif [Test] public void MultipleNamespacesXmlDocument() { string xml = @""; XmlDocument d = new XmlDocument(); d.LoadXml(xml); string json = JsonConvert.SerializeObject(d, Formatting.Indented); Console.WriteLine(json); XmlDocument doc = JsonConvert.DeserializeObject(json); Console.WriteLine(doc.OuterXml); Assert.AreEqual(xml, doc.OuterXml); } [Test] public void SerializeXmlElement() { string xml = @" 6 79 Approved Someone "; var xmlDocument = new XmlDocument(); xmlDocument.LoadXml(xml); var result = xmlDocument.FirstChild.ChildNodes.Cast().ToArray(); var json = JsonConvert.SerializeObject(result, Formatting.Indented); // <--- fails here with the cast message StringAssert.AreEqual(@"[ { ""Country"": ""6"" }, { ""FinancialTransactionApprovalRequestUID"": ""79"" }, { ""TransactionStatus"": ""Approved"" }, { ""StatusChangeComment"": """" }, { ""RequestedBy"": ""Someone"" } ]", json); } #if !NET20 [Test] public void SerializeXElement() { string xml = @" 6 79 Approved Someone "; var xmlDocument = XDocument.Parse(xml); var result = xmlDocument.Root.Nodes().ToArray(); var json = JsonConvert.SerializeObject(result, Formatting.Indented); // <--- fails here with the cast message StringAssert.AreEqual(@"[ { ""Country"": ""6"" }, { ""FinancialTransactionApprovalRequestUID"": ""79"" }, { ""TransactionStatus"": ""Approved"" }, { ""StatusChangeComment"": """" }, { ""RequestedBy"": ""Someone"" } ]", json); } public class DecimalContainer { public decimal Number { get; set; } } [Test] public void FloatParseHandlingDecimal() { decimal d = (decimal)Math.PI + 1000000000m; var x = new DecimalContainer { Number = d }; var json = JsonConvert.SerializeObject(x, Formatting.Indented); XDocument doc1 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { Converters = { new XmlNodeConverter() }, FloatParseHandling = FloatParseHandling.Decimal }); var xml = doc1.ToString(); Assert.AreEqual("1000000003.14159265358979", xml); string json2 = JsonConvert.SerializeObject(doc1, Formatting.Indented); DecimalContainer x2 = JsonConvert.DeserializeObject(json2); Assert.AreEqual(x.Number, x2.Number); } public class DateTimeOffsetContainer { public DateTimeOffset Date { get; set; } } [Test] public void DateTimeParseHandlingOffset() { DateTimeOffset d = new DateTimeOffset(2012, 12, 12, 12, 44, 1, TimeSpan.FromHours(12).Add(TimeSpan.FromMinutes(34))); var x = new DateTimeOffsetContainer { Date = d }; var json = JsonConvert.SerializeObject(x, Formatting.Indented); XDocument doc1 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { Converters = { new XmlNodeConverter() }, DateParseHandling = DateParseHandling.DateTimeOffset }); var xml = doc1.ToString(); Assert.AreEqual("2012-12-12T12:44:01+12:34", xml); string json2 = JsonConvert.SerializeObject(doc1, Formatting.Indented); DateTimeOffsetContainer x2 = JsonConvert.DeserializeObject(json2); Assert.AreEqual(x.Date, x2.Date); } [Test] public void GroupElementsOfTheSameName() { string xml = "

Text1Span1 Span2 Text2

"; string json = JsonConvert.SerializeXNode(XElement.Parse(xml)); Assert.AreEqual(@"{""root"":{""p"":{""#text"":[""Text1"","" Text2""],""span"":[""Span1"",""Span2""]}}}", json); XDocument doc = JsonConvert.DeserializeXNode(json); StringAssert.AreEqual(@"

Text1 Text2Span1Span2

", doc.ToString()); } [Test] public void SerializeEmptyDocument() { XmlDocument doc = new XmlDocument(); doc.LoadXml(""); string json = JsonConvert.SerializeXmlNode(doc, Formatting.Indented, true); Assert.AreEqual("null", json); doc = new XmlDocument(); doc.LoadXml(""); json = JsonConvert.SerializeXmlNode(doc, Formatting.Indented, true); Assert.AreEqual(@"""""", json); XDocument doc1 = XDocument.Parse(""); json = JsonConvert.SerializeXNode(doc1, Formatting.Indented, true); Assert.AreEqual("null", json); doc1 = XDocument.Parse(""); json = JsonConvert.SerializeXNode(doc1, Formatting.Indented, true); Assert.AreEqual(@"""""", json); } [Test] public void SerializeAndDeserializeXmlWithNamespaceInChildrenAndNoValueInChildren() { var xmlString = @" AAA adad "; var xml = XElement.Parse(xmlString); var json1 = JsonConvert.SerializeXNode(xml); var xmlBack = JsonConvert.DeserializeObject(json1); var equals = XElement.DeepEquals(xmlBack, xml); Assert.IsTrue(equals); } #endif [Test] public void DocumentSerializeIndented() { string xml = @" Web 2.0 Conference October 5 7 Argent Hotel, San Francisco, CA "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string jsonText = SerializeXmlNode(doc); string expected = @"{ ""?xml"": { ""@version"": ""1.0"", ""@standalone"": ""no"" }, ""?xml-stylesheet"": ""href=\""classic.xsl\"" type=\""text/xml\"""", ""span"": { ""@class"": ""vevent"", ""a"": { ""@class"": ""url"", ""@href"": ""http://www.web2con.com/"", ""span"": [ { ""@class"": ""summary"", ""#text"": ""Web 2.0 Conference"", ""#cdata-section"": ""my escaped text"" }, { ""@class"": ""location"", ""#text"": ""Argent Hotel, San Francisco, CA"" } ], ""abbr"": [ { ""@class"": ""dtstart"", ""@title"": ""2005-10-05"", ""#text"": ""October 5"" }, { ""@class"": ""dtend"", ""@title"": ""2005-10-08"", ""#text"": ""7"" } ] } } }"; StringAssert.AreEqual(expected, jsonText); Console.WriteLine("DocumentSerializeIndented"); Console.WriteLine(jsonText); Console.WriteLine(); } [Test] public void SerializeNodeTypes() { XmlDocument doc = new XmlDocument(); string jsonText; Console.WriteLine("SerializeNodeTypes"); string xml = @" "; XmlDocument document = new XmlDocument(); document.LoadXml(xml); // XmlAttribute XmlAttribute attribute = document.DocumentElement.ChildNodes[0].Attributes["IsDataSet", "urn:schemas-microsoft-com:xml-msdata"]; attribute.Value = "true"; jsonText = JsonConvert.SerializeXmlNode(attribute); Console.WriteLine(jsonText); Assert.AreEqual(@"{""@msdata:IsDataSet"":""true""}", jsonText); #if !NET20 XDocument d = XDocument.Parse(xml); XAttribute a = d.Root.Element("{http://www.w3.org/2001/XMLSchema}element").Attribute("{urn:schemas-microsoft-com:xml-msdata}IsDataSet"); jsonText = JsonConvert.SerializeXNode(a); Assert.AreEqual(@"{""@msdata:IsDataSet"":""true""}", jsonText); #endif // XmlProcessingInstruction XmlProcessingInstruction instruction = doc.CreateProcessingInstruction("xml-stylesheet", @"href=""classic.xsl"" type=""text/xml"""); jsonText = JsonConvert.SerializeXmlNode(instruction); Console.WriteLine(jsonText); Assert.AreEqual(@"{""?xml-stylesheet"":""href=\""classic.xsl\"" type=\""text/xml\""""}", jsonText); // XmlProcessingInstruction XmlCDataSection cDataSection = doc.CreateCDataSection("true"); jsonText = JsonConvert.SerializeXmlNode(cDataSection); Console.WriteLine(jsonText); Assert.AreEqual(@"{""#cdata-section"":""true""}", jsonText); // XmlElement XmlElement element = doc.CreateElement("xs", "Choice", "http://www.w3.org/2001/XMLSchema"); element.SetAttributeNode(doc.CreateAttribute("msdata", "IsDataSet", "urn:schemas-microsoft-com:xml-msdata")); XmlAttribute aa = doc.CreateAttribute(@"xmlns", "xs", "http://www.w3.org/2000/xmlns/"); aa.Value = "http://www.w3.org/2001/XMLSchema"; element.SetAttributeNode(aa); aa = doc.CreateAttribute(@"xmlns", "msdata", "http://www.w3.org/2000/xmlns/"); aa.Value = "urn:schemas-microsoft-com:xml-msdata"; element.SetAttributeNode(aa); element.AppendChild(instruction); element.AppendChild(cDataSection); doc.AppendChild(element); jsonText = JsonConvert.SerializeXmlNode(element, Formatting.Indented); StringAssert.AreEqual(@"{ ""xs:Choice"": { ""@msdata:IsDataSet"": """", ""@xmlns:xs"": ""http://www.w3.org/2001/XMLSchema"", ""@xmlns:msdata"": ""urn:schemas-microsoft-com:xml-msdata"", ""?xml-stylesheet"": ""href=\""classic.xsl\"" type=\""text/xml\"""", ""#cdata-section"": ""true"" } }", jsonText); } [Test] public void DocumentFragmentSerialize() { XmlDocument doc = new XmlDocument(); XmlDocumentFragment fragement = doc.CreateDocumentFragment(); fragement.InnerXml = "widgetwidget"; string jsonText = JsonConvert.SerializeXmlNode(fragement); string expected = @"{""Item"":[""widget"",""widget""]}"; Assert.AreEqual(expected, jsonText); Console.WriteLine("DocumentFragmentSerialize"); Console.WriteLine(jsonText); Console.WriteLine(); } [Test] public void XmlDocumentTypeSerialize() { string xml = @"00-16.310Dow Jones2014-04-17 15:50:370016460.4902014-04-17 15:50:3716408.54016368.14016424.140-0.099016424.8500DJII013618870011309.0009302.2800009.290NASDAQ2014-04-17 15:40:01004110.4602014-04-17 15:40:014095.5204064.7004080.3000.22704086.2300COMP017842101004371.7103154.9600Couldn't find ticker: SPIC?2"; string expected = @"{ ""?xml"": { ""@version"": ""1.0"", ""@encoding"": ""utf-8"" }, ""!DOCTYPE"": { ""@name"": ""STOCKQUOTE"", ""@public"": ""-//W3C//DTD StockQuote 1.5//EN"", ""@system"": ""http://www.idontexistnopenopewhatnope123.org/dtd/stockquote_1.5.dtd"" }, ""STOCKQUOTE"": { ""@ROWCOUNT"": ""2"", ""RESULT"": { ""ROW"": [ { ""ASK"": ""0"", ""BID"": ""0"", ""CHANGE"": ""-16.310"", ""COMPANYNAME"": ""Dow Jones"", ""DATETIME"": ""2014-04-17 15:50:37"", ""DIVIDEND"": ""0"", ""EPS"": ""0"", ""EXCHANGE"": """", ""HIGH"": ""16460.490"", ""LASTDATETIME"": ""2014-04-17 15:50:37"", ""LASTPRICE"": ""16408.540"", ""LOW"": ""16368.140"", ""OPEN"": ""16424.140"", ""PCHANGE"": ""-0.099"", ""PE"": ""0"", ""PREVIOUSCLOSE"": ""16424.850"", ""SHARES"": ""0"", ""TICKER"": ""DJII"", ""TRADES"": ""0"", ""VOLUME"": ""136188700"", ""YEARHIGH"": ""11309.000"", ""YEARLOW"": ""9302.280"", ""YIELD"": ""0"" }, { ""ASK"": ""0"", ""BID"": ""0"", ""CHANGE"": ""9.290"", ""COMPANYNAME"": ""NASDAQ"", ""DATETIME"": ""2014-04-17 15:40:01"", ""DIVIDEND"": ""0"", ""EPS"": ""0"", ""EXCHANGE"": """", ""HIGH"": ""4110.460"", ""LASTDATETIME"": ""2014-04-17 15:40:01"", ""LASTPRICE"": ""4095.520"", ""LOW"": ""4064.700"", ""OPEN"": ""4080.300"", ""PCHANGE"": ""0.227"", ""PE"": ""0"", ""PREVIOUSCLOSE"": ""4086.230"", ""SHARES"": ""0"", ""TICKER"": ""COMP"", ""TRADES"": ""0"", ""VOLUME"": ""1784210100"", ""YEARHIGH"": ""4371.710"", ""YEARLOW"": ""3154.960"", ""YIELD"": ""0"" } ] }, ""STATUS"": ""Couldn't find ticker: SPIC?"", ""STATUSCODE"": ""2"" } }"; XmlDocument doc1 = new XmlDocument(); doc1.XmlResolver = null; doc1.LoadXml(xml); string json1 = JsonConvert.SerializeXmlNode(doc1, Formatting.Indented); StringAssert.AreEqual(expected, json1); XmlDocument doc11 = JsonConvert.DeserializeXmlNode(json1); StringAssert.AreEqual(xml, ToStringWithDeclaration(doc11)); #if !NET20 XDocument doc2 = XDocument.Parse(xml); string json2 = JsonConvert.SerializeXNode(doc2, Formatting.Indented); StringAssert.AreEqual(expected, json2); XDocument doc22 = JsonConvert.DeserializeXNode(json2); StringAssert.AreEqual(xml, ToStringWithDeclaration(doc22)); #endif } public class Utf8StringWriter : StringWriter { public override Encoding Encoding { get { return Encoding.UTF8; } } public Utf8StringWriter(StringBuilder sb) : base(sb) { } } #if !NET20 public static string ToStringWithDeclaration(XDocument doc, bool indent = false) { StringBuilder builder = new StringBuilder(); using (var writer = XmlWriter.Create(new Utf8StringWriter(builder), new XmlWriterSettings { Indent = indent })) { doc.Save(writer); } return builder.ToString(); } #endif public static string ToStringWithDeclaration(XmlDocument doc, bool indent = false) { StringBuilder builder = new StringBuilder(); using (var writer = XmlWriter.Create(new Utf8StringWriter(builder), new XmlWriterSettings { Indent = indent })) { doc.Save(writer); } return builder.ToString(); } [Test] public void NamespaceSerializeDeserialize() { string xml = @" "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string jsonText = SerializeXmlNode(doc); string expected = @"{ ""?xml"": { ""@version"": ""1.0"", ""@encoding"": ""utf-8"" }, ""xs:schema"": { ""@xs:id"": ""SomeID"", ""@xmlns"": """", ""@xmlns:xs"": ""http://www.w3.org/2001/XMLSchema"", ""@xmlns:msdata"": ""urn:schemas-microsoft-com:xml-msdata"", ""xs:element"": { ""@name"": ""MyDataSet"", ""@msdata:IsDataSet"": ""true"", ""xs:complexType"": { ""xs:choice"": { ""@maxOccurs"": ""unbounded"", ""xs:element"": { ""@name"": ""customers"", ""xs:complexType"": { ""xs:sequence"": { ""xs:element"": [ { ""@name"": ""CustomerID"", ""@type"": ""xs:integer"", ""@minOccurs"": ""0"" }, { ""@name"": ""CompanyName"", ""@type"": ""xs:string"", ""@minOccurs"": ""0"" }, { ""@name"": ""Phone"", ""@type"": ""xs:string"" } ] } } } } } } } }"; StringAssert.AreEqual(expected, jsonText); XmlDocument deserializedDoc = (XmlDocument)DeserializeXmlNode(jsonText); Assert.AreEqual(doc.InnerXml, deserializedDoc.InnerXml); Console.WriteLine("NamespaceSerializeDeserialize"); Console.WriteLine(jsonText); Console.WriteLine(deserializedDoc.InnerXml); Console.WriteLine(); } [Test] public void DocumentDeserialize() { string jsonText = @"{ ""?xml"": { ""@version"": ""1.0"", ""@standalone"": ""no"" }, ""span"": { ""@class"": ""vevent"", ""a"": { ""@class"": ""url"", ""span"": { ""@class"": ""summary"", ""#text"": ""Web 2.0 Conference"", ""#cdata-section"": ""my escaped text"" }, ""@href"": ""http://www.web2con.com/"" } } }"; XmlDocument doc = (XmlDocument)DeserializeXmlNode(jsonText); string expected = @" Web 2.0 Conference "; string formattedXml = GetIndentedInnerXml(doc); Console.WriteLine("DocumentDeserialize"); Console.WriteLine(formattedXml); Console.WriteLine(); StringAssert.AreEqual(expected, formattedXml); } private string GetIndentedInnerXml(XmlNode node) { XmlWriterSettings settings = new XmlWriterSettings(); settings.Indent = true; StringWriter sw = new StringWriter(); using (XmlWriter writer = XmlWriter.Create(sw, settings)) { node.WriteTo(writer); } return sw.ToString(); } [Test] public void SingleTextNode() { string xml = @" Alan http://www.google.com Louis http://www.yahoo.com "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string jsonText = SerializeXmlNode(doc); XmlDocument newDoc = (XmlDocument)DeserializeXmlNode(jsonText); Assert.AreEqual(doc.InnerXml, newDoc.InnerXml); } [Test] public void EmptyNode() { string xml = @" Alan Louis http://www.yahoo.com "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string jsonText = SerializeXmlNode(doc); Console.WriteLine(jsonText); XmlDocument newDoc = (XmlDocument)DeserializeXmlNode(jsonText); Assert.AreEqual(doc.InnerXml, newDoc.InnerXml); } [Test] public void OtherElementDataTypes() { string jsonText = @"{""?xml"":{""@version"":""1.0"",""@standalone"":""no""},""root"":{""person"":[{""@id"":""1"",""Float"":2.5,""Integer"":99},{""Boolean"":true,""@id"":""2"",""date"":""\/Date(954374400000)\/""}]}}"; XmlDocument newDoc = (XmlDocument)DeserializeXmlNode(jsonText); string expected = @"2.599true2000-03-30T00:00:00Z"; Assert.AreEqual(expected, newDoc.InnerXml); } [Test] public void NoRootObject() { ExceptionAssert.Throws(() => { XmlDocument newDoc = (XmlDocument)JsonConvert.DeserializeXmlNode(@"[1]"); }, "XmlNodeConverter can only convert JSON that begins with an object."); } [Test] public void RootObjectMultipleProperties() { ExceptionAssert.Throws(() => { XmlDocument newDoc = (XmlDocument)JsonConvert.DeserializeXmlNode(@"{Prop1:1,Prop2:2}"); }, "JSON root object has multiple properties. The root object must have a single property in order to create a valid XML document. Consider specifing a DeserializeRootElementName."); } [Test] public void JavaScriptConstructor() { string jsonText = @"{root:{r:new Date(34343, 55)}}"; XmlDocument newDoc = (XmlDocument)DeserializeXmlNode(jsonText); string expected = @"3434355"; Assert.AreEqual(expected, newDoc.InnerXml); string json = SerializeXmlNode(newDoc); expected = @"{ ""root"": { ""r"": { ""Date"": [ ""34343"", ""55"" ] } } }"; StringAssert.AreEqual(expected, json); } [Test] public void ForceJsonArray() { string arrayXml = @" Alan http://www.google.com Admin "; XmlDocument arrayDoc = new XmlDocument(); arrayDoc.LoadXml(arrayXml); string arrayJsonText = SerializeXmlNode(arrayDoc); string expected = @"{ ""root"": { ""person"": { ""@id"": ""1"", ""name"": ""Alan"", ""url"": ""http://www.google.com"", ""role"": [ ""Admin"" ] } } }"; StringAssert.AreEqual(expected, arrayJsonText); arrayXml = @" Alan http://www.google.com Admin1 Admin2 "; arrayDoc = new XmlDocument(); arrayDoc.LoadXml(arrayXml); arrayJsonText = SerializeXmlNode(arrayDoc); expected = @"{ ""root"": { ""person"": { ""@id"": ""1"", ""name"": ""Alan"", ""url"": ""http://www.google.com"", ""role"": [ ""Admin1"", ""Admin2"" ] } } }"; StringAssert.AreEqual(expected, arrayJsonText); arrayXml = @" Alan http://www.google.com Admin1 "; arrayDoc = new XmlDocument(); arrayDoc.LoadXml(arrayXml); arrayJsonText = SerializeXmlNode(arrayDoc); expected = @"{ ""root"": { ""person"": { ""@id"": ""1"", ""name"": ""Alan"", ""url"": ""http://www.google.com"", ""role"": ""Admin1"" } } }"; StringAssert.AreEqual(expected, arrayJsonText); } [Test] public void MultipleRootPropertiesXmlDocument() { string json = @"{""count"": 773840,""photos"": null}"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeXmlNode(json); }, "JSON root object has multiple properties. The root object must have a single property in order to create a valid XML document. Consider specifing a DeserializeRootElementName."); } #if !NET20 [Test] public void MultipleRootPropertiesXDocument() { string json = @"{""count"": 773840,""photos"": null}"; ExceptionAssert.Throws(() => { JsonConvert.DeserializeXNode(json); }, "JSON root object has multiple properties. The root object must have a single property in order to create a valid XML document. Consider specifing a DeserializeRootElementName."); } #endif [Test] public void MultipleRootPropertiesAddRootElement() { string json = @"{""count"": 773840,""photos"": 773840}"; XmlDocument newDoc = JsonConvert.DeserializeXmlNode(json, "myRoot"); Assert.AreEqual(@"773840773840", newDoc.InnerXml); #if !NET20 XDocument newXDoc = JsonConvert.DeserializeXNode(json, "myRoot"); Assert.AreEqual(@"773840773840", newXDoc.ToString(SaveOptions.DisableFormatting)); #endif } [Test] public void NestedArrays() { string json = @"{ ""available_sizes"": [ [ ""assets/images/resized/0001/1070/11070v1-max-150x150.jpg"", ""assets/images/resized/0001/1070/11070v1-max-150x150.jpg"" ], [ ""assets/images/resized/0001/1070/11070v1-max-250x250.jpg"", ""assets/images/resized/0001/1070/11070v1-max-250x250.jpg"" ], [ ""assets/images/resized/0001/1070/11070v1-max-250x250.jpg"" ] ] }"; XmlDocument newDoc = JsonConvert.DeserializeXmlNode(json, "myRoot"); string xml = IndentXml(newDoc.InnerXml); StringAssert.AreEqual(@" assets/images/resized/0001/1070/11070v1-max-150x150.jpg assets/images/resized/0001/1070/11070v1-max-150x150.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg ", IndentXml(newDoc.InnerXml)); #if !NET20 XDocument newXDoc = JsonConvert.DeserializeXNode(json, "myRoot"); StringAssert.AreEqual(@" assets/images/resized/0001/1070/11070v1-max-150x150.jpg assets/images/resized/0001/1070/11070v1-max-150x150.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg ", IndentXml(newXDoc.ToString(SaveOptions.DisableFormatting))); #endif string newJson = JsonConvert.SerializeXmlNode(newDoc, Formatting.Indented); Console.WriteLine(newJson); } [Test] public void RoundTripNestedArrays() { string json = @"{ ""available_sizes"": [ [ ""assets/images/resized/0001/1070/11070v1-max-150x150.jpg"", ""assets/images/resized/0001/1070/11070v1-max-150x150.jpg"" ], [ ""assets/images/resized/0001/1070/11070v1-max-250x250.jpg"", ""assets/images/resized/0001/1070/11070v1-max-250x250.jpg"" ], [ ""assets/images/resized/0001/1070/11070v1-max-250x250.jpg"" ] ] }"; XmlDocument newDoc = JsonConvert.DeserializeXmlNode(json, "myRoot", true); StringAssert.AreEqual(@" assets/images/resized/0001/1070/11070v1-max-150x150.jpg assets/images/resized/0001/1070/11070v1-max-150x150.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg ", IndentXml(newDoc.InnerXml)); #if !NET20 XDocument newXDoc = JsonConvert.DeserializeXNode(json, "myRoot", true); Console.WriteLine(IndentXml(newXDoc.ToString(SaveOptions.DisableFormatting))); StringAssert.AreEqual(@" assets/images/resized/0001/1070/11070v1-max-150x150.jpg assets/images/resized/0001/1070/11070v1-max-150x150.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg assets/images/resized/0001/1070/11070v1-max-250x250.jpg ", IndentXml(newXDoc.ToString(SaveOptions.DisableFormatting))); #endif string newJson = JsonConvert.SerializeXmlNode(newDoc, Formatting.Indented, true); StringAssert.AreEqual(json, newJson); } [Test] public void MultipleNestedArraysToXml() { string json = @"{ ""available_sizes"": [ [ [113, 150], ""assets/images/resized/0001/1070/11070v1-max-150x150.jpg"" ], [ [189, 250], ""assets/images/resized/0001/1070/11070v1-max-250x250.jpg"" ], [ [341, 450], ""assets/images/resized/0001/1070/11070v1-max-450x450.jpg"" ] ] }"; XmlDocument newDoc = JsonConvert.DeserializeXmlNode(json, "myRoot"); Assert.AreEqual(@"113150assets/images/resized/0001/1070/11070v1-max-150x150.jpg189250assets/images/resized/0001/1070/11070v1-max-250x250.jpg341450assets/images/resized/0001/1070/11070v1-max-450x450.jpg", newDoc.InnerXml); #if !NET20 XDocument newXDoc = JsonConvert.DeserializeXNode(json, "myRoot"); Assert.AreEqual(@"113150assets/images/resized/0001/1070/11070v1-max-150x150.jpg189250assets/images/resized/0001/1070/11070v1-max-250x250.jpg341450assets/images/resized/0001/1070/11070v1-max-450x450.jpg", newXDoc.ToString(SaveOptions.DisableFormatting)); #endif } [Test] public void Encoding() { XmlDocument doc = new XmlDocument(); doc.LoadXml(@"O""Connor"); // i use "" so it will be easier to see the problem string json = SerializeXmlNode(doc); StringAssert.AreEqual(@"{ ""name"": ""O\""Connor"" }", json); } [Test] public void SerializeComment() { string xml = @" Text "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string jsonText = SerializeXmlNode(doc); string expected = @"{ ""span"": { ""@class"": ""vevent"", ""a"": { ""@class"": ""url"", ""@href"": ""http://www.web2con.com/""/* Hi */, ""span"": ""Text"" }/* Hi! */ } }"; StringAssert.AreEqual(expected, jsonText); XmlDocument newDoc = (XmlDocument)DeserializeXmlNode(jsonText); Assert.AreEqual(@"Text", newDoc.InnerXml); } [Test] public void SerializeExample() { string xml = @" Alan http://www.google.com Louis http://www.yahoo.com "; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string jsonText = SerializeXmlNode(doc); // { // "?xml": { // "@version": "1.0", // "@standalone": "no" // }, // "root": { // "person": [ // { // "@id": "1", // "name": "Alan", // "url": "http://www.google.com" // }, // { // "@id": "2", // "name": "Louis", // "url": "http://www.yahoo.com" // } // ] // } // } // format jsonText = JObject.Parse(jsonText).ToString(); StringAssert.AreEqual(@"{ ""?xml"": { ""@version"": ""1.0"", ""@standalone"": ""no"" }, ""root"": { ""person"": [ { ""@id"": ""1"", ""name"": ""Alan"", ""url"": ""http://www.google.com"" }, { ""@id"": ""2"", ""name"": ""Louis"", ""url"": ""http://www.yahoo.com"" } ] } }", jsonText); XmlDocument newDoc = (XmlDocument)DeserializeXmlNode(jsonText); Assert.AreEqual(doc.InnerXml, newDoc.InnerXml); } [Test] public void DeserializeExample() { string json = @"{ ""?xml"": { ""@version"": ""1.0"", ""@standalone"": ""no"" }, ""root"": { ""person"": [ { ""@id"": ""1"", ""name"": ""Alan"", ""url"": ""http://www.google.com"" }, { ""@id"": ""2"", ""name"": ""Louis"", ""url"": ""http://www.yahoo.com"" } ] } }"; XmlDocument doc = (XmlDocument)DeserializeXmlNode(json); // // // // Alan // http://www.google.com // // // Louis // http://www.yahoo.com // // StringAssert.AreEqual(@"Alanhttp://www.google.comLouishttp://www.yahoo.com", doc.InnerXml); } [Test] public void SerializeDeserializeMetadataProperties() { PreserveReferencesHandlingTests.CircularDictionary circularDictionary = new PreserveReferencesHandlingTests.CircularDictionary(); circularDictionary.Add("other", new PreserveReferencesHandlingTests.CircularDictionary { { "blah", null } }); circularDictionary.Add("self", circularDictionary); string json = JsonConvert.SerializeObject(circularDictionary, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All }); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""other"": { ""$id"": ""2"", ""blah"": null }, ""self"": { ""$ref"": ""1"" } }", json); XmlNode node = DeserializeXmlNode(json, "root"); string xml = GetIndentedInnerXml(node); string expected = @" "; StringAssert.AreEqual(expected, xml); string xmlJson = SerializeXmlNode(node); string expectedXmlJson = @"{ ""root"": { ""$id"": ""1"", ""other"": { ""$id"": ""2"", ""blah"": null }, ""self"": { ""$ref"": ""1"" } } }"; StringAssert.AreEqual(expectedXmlJson, xmlJson); } [Test] public void EmptyPropertyName() { string json = @"{ ""8452309520V2"": { """": { ""CLIENT"": { ""ID_EXPIRATION_1"": { ""VALUE"": ""12/12/2000"", ""DATATYPE"": ""D"", ""MSG"": ""Missing Identification Exp. Date 1"" }, ""ID_ISSUEDATE_1"": { ""VALUE"": """", ""DATATYPE"": ""D"", ""MSG"": ""Missing Identification Issue Date 1"" } } }, ""457463534534"": { ""ACCOUNT"": { ""FUNDING_SOURCE"": { ""VALUE"": ""FS0"", ""DATATYPE"": ""L"", ""MSG"": ""Missing Source of Funds"" } } } } }{ ""34534634535345"": { """": { ""CLIENT"": { ""ID_NUMBER_1"": { ""VALUE"": """", ""DATATYPE"": ""S"", ""MSG"": ""Missing Picture ID"" }, ""ID_EXPIRATION_1"": { ""VALUE"": ""12/12/2000"", ""DATATYPE"": ""D"", ""MSG"": ""Missing Picture ID"" }, ""WALK_IN"": { ""VALUE"": """", ""DATATYPE"": ""L"", ""MSG"": ""Missing Walk in"" }, ""PERSONAL_MEETING"": { ""VALUE"": ""PM1"", ""DATATYPE"": ""L"", ""MSG"": ""Missing Met Client in Person"" }, ""ID_ISSUEDATE_1"": { ""VALUE"": """", ""DATATYPE"": ""D"", ""MSG"": ""Missing Picture ID"" }, ""PHOTO_ID"": { ""VALUE"": """", ""DATATYPE"": ""L"", ""MSG"": ""Missing Picture ID"" }, ""ID_TYPE_1"": { ""VALUE"": """", ""DATATYPE"": ""L"", ""MSG"": ""Missing Picture ID"" } } }, ""45635624523"": { ""ACCOUNT"": { ""FUNDING_SOURCE"": { ""VALUE"": ""FS1"", ""DATATYPE"": ""L"", ""MSG"": ""Missing Source of Funds"" } } } } }"; ExceptionAssert.Throws(() => { DeserializeXmlNode(json); }, "XmlNodeConverter cannot convert JSON with an empty property name to XML."); } [Test] public void SingleItemArrayPropertySerialization() { Product product = new Product(); product.Name = "Apple"; product.ExpiryDate = new DateTime(2008, 12, 28, 0, 0, 0, DateTimeKind.Utc); product.Price = 3.99M; product.Sizes = new string[] { "Small" }; string output = JsonConvert.SerializeObject(product, new IsoDateTimeConverter()); XmlDocument xmlProduct = JsonConvert.DeserializeXmlNode(output, "product", true); StringAssert.AreEqual(@" Apple 2008-12-28T00:00:00Z 3.99 Small ", IndentXml(xmlProduct.InnerXml)); string output2 = JsonConvert.SerializeXmlNode(xmlProduct.DocumentElement, Formatting.Indented); StringAssert.AreEqual(@"{ ""product"": { ""Name"": ""Apple"", ""ExpiryDate"": ""2008-12-28T00:00:00Z"", ""Price"": ""3.99"", ""Sizes"": [ ""Small"" ] } }", output2); } public class TestComplexArrayClass { public string Name { get; set; } public IList Products { get; set; } } [Test] public void ComplexSingleItemArrayPropertySerialization() { TestComplexArrayClass o = new TestComplexArrayClass { Name = "Hi", Products = new List { new Product { Name = "First" } } }; string output = JsonConvert.SerializeObject(o, new IsoDateTimeConverter()); XmlDocument xmlProduct = JsonConvert.DeserializeXmlNode(output, "test", true); StringAssert.AreEqual(@" Hi First 2000-01-01T00:00:00Z 0 ", IndentXml(xmlProduct.InnerXml)); string output2 = JsonConvert.SerializeXmlNode(xmlProduct.DocumentElement, Formatting.Indented, true); StringAssert.AreEqual(@"{ ""Name"": ""Hi"", ""Products"": [ { ""Name"": ""First"", ""ExpiryDate"": ""2000-01-01T00:00:00Z"", ""Price"": ""0"", ""Sizes"": null } ] }", output2); } private string IndentXml(string xml) { XmlReader reader = XmlReader.Create(new StringReader(xml)); StringWriter sw = new StringWriter(); XmlWriter writer = XmlWriter.Create(sw, new XmlWriterSettings { Indent = true, OmitXmlDeclaration = true }); while (reader.Read()) { writer.WriteNode(reader, false); } writer.Flush(); return sw.ToString(); } [Test] public void OmitRootObject() { string xml = @" Hi Hi First 2000-01-01T00:00:00Z 0 "; XmlDocument d = new XmlDocument(); d.LoadXml(xml); string output = JsonConvert.SerializeXmlNode(d, Formatting.Indented, true); StringAssert.AreEqual(@"{ ""Name"": [ ""Hi"", ""Hi"" ], ""Products"": [ { ""Name"": ""First"", ""ExpiryDate"": ""2000-01-01T00:00:00Z"", ""Price"": ""0"", ""Sizes"": null } ] }", output); } [Test] public void EmtpyElementWithArrayAttributeShouldWriteAttributes() { string xml = @" "; XmlDocument d = new XmlDocument(); d.LoadXml(xml); string json = JsonConvert.SerializeXmlNode(d, Formatting.Indented); StringAssert.AreEqual(@"{ ""?xml"": { ""@version"": ""1.0"", ""@encoding"": ""utf-8"" }, ""root"": { ""A"": { ""B"": [ { ""@name"": ""sample"" } ], ""C"": [ """", """" ] } } }", json); XmlDocument d2 = JsonConvert.DeserializeXmlNode(json); StringAssert.AreEqual(@" ", ToStringWithDeclaration(d2, true)); } [Test] public void EmtpyElementWithArrayAttributeShouldWriteElement() { string xml = @" "; XmlDocument d = new XmlDocument(); d.LoadXml(xml); string json = JsonConvert.SerializeXmlNode(d, Formatting.Indented); StringAssert.AreEqual(@"{ ""root"": { ""Reports"": [ {} ] } }", json); } [Test] public void DeserializeNonInt64IntegerValues() { var dict = new Dictionary { { "Int16", (short)1 }, { "Float", 2f }, { "Int32", 3 } }; var obj = JObject.FromObject(dict); var serializer = JsonSerializer.Create(new JsonSerializerSettings { Converters = { new XmlNodeConverter() { DeserializeRootElementName = "root" } } }); using (var reader = obj.CreateReader()) { var value = (XmlDocument)serializer.Deserialize(reader, typeof(XmlDocument)); Assert.AreEqual(@"123", value.InnerXml); } } [Test] public void DeserializingBooleanValues() { MemoryStream ms = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(@"{root:{""@booleanType"":true}}")); MemoryStream xml = new MemoryStream(); JsonBodyToSoapXml(ms, xml); string xmlString = System.Text.Encoding.UTF8.GetString(xml.ToArray()); Assert.AreEqual(@"", xmlString); } private static void JsonBodyToSoapXml(Stream json, Stream xml) { Newtonsoft.Json.JsonSerializerSettings settings = new Newtonsoft.Json.JsonSerializerSettings(); settings.Converters.Add(new Newtonsoft.Json.Converters.XmlNodeConverter()); Newtonsoft.Json.JsonSerializer serializer = Newtonsoft.Json.JsonSerializer.Create(settings); using (Newtonsoft.Json.JsonTextReader reader = new Newtonsoft.Json.JsonTextReader(new System.IO.StreamReader(json))) { XmlDocument doc = (XmlDocument)serializer.Deserialize(reader, typeof(XmlDocument)); if (reader.Read() && reader.TokenType != JsonToken.Comment) throw new JsonSerializationException("Additional text found in JSON string after finishing deserializing object."); using (XmlWriter writer = XmlWriter.Create(xml)) { doc.Save(writer); } } } #if !NET20 [Test] public void DeserializeXNodeDefaultNamespace() { string xaml = @" "; string json = JsonConvert.SerializeXNode(XDocument.Parse(xaml), Formatting.Indented); string expectedJson = @"{ ""Grid"": { ""@xmlns"": ""http://schemas.microsoft.com/winfx/2006/xaml/presentation"", ""@xmlns:x"": ""http://schemas.microsoft.com/winfx/2006/xaml"", ""@xmlns:toolkit"": ""clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"", ""@Style"": ""{StaticResource trimFormGrid}"", ""@x:Name"": ""TrimObjectForm"", ""Grid.ColumnDefinitions"": { ""ColumnDefinition"": [ { ""@Width"": ""63*"" }, { ""@Width"": ""320*"" } ] }, ""Grid.RowDefinitions"": { ""@xmlns"": """", ""RowDefinition"": [ null, null, null, null, null, null, null, null ] }, ""TextBox"": [ { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding TypedTitle, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordTypedTitle"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""0"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding ExternalReference, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordExternalReference"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""1"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding Author, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordAuthor"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""4"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding Container, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordContainer"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""5"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding IsEnclosed, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordIsEnclosed"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""6"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding Assignee, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordAssignee"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""7"", ""@xmlns"": """" } ], ""toolkit:DatePicker"": [ { ""@Style"": ""{StaticResource trimFormGrid_DP}"", ""@Value"": ""{Binding DateCreated, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordDateCreated"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""2"" }, { ""@Style"": ""{StaticResource trimFormGrid_DP}"", ""@Value"": ""{Binding DateDue, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordDateDue"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""3"" } ], ""TextBlock"": [ { ""@Grid.Column"": ""0"", ""@Text"": ""Title (Free Text Part)"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""0"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""External ID"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""1"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Date Created"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""2"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Date Due"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""3"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Author"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""4"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Container"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""5"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Enclosed?"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""6"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Assignee"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""7"", ""@xmlns"": """" } ] } }"; StringAssert.AreEqual(expectedJson, json); XNode node = JsonConvert.DeserializeXNode(json); string xaml2 = node.ToString(); string expectedXaml = @" "; StringAssert.AreEqual(expectedXaml, xaml2); } #endif [Test] public void DeserializeXmlNodeDefaultNamespace() { string xaml = @" "; XmlDocument document = new XmlDocument(); document.LoadXml(xaml); string json = JsonConvert.SerializeXmlNode(document, Formatting.Indented); string expectedJson = @"{ ""Grid"": { ""@xmlns"": ""http://schemas.microsoft.com/winfx/2006/xaml/presentation"", ""@xmlns:x"": ""http://schemas.microsoft.com/winfx/2006/xaml"", ""@xmlns:toolkit"": ""clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"", ""@Style"": ""{StaticResource trimFormGrid}"", ""@x:Name"": ""TrimObjectForm"", ""Grid.ColumnDefinitions"": { ""ColumnDefinition"": [ { ""@Width"": ""63*"" }, { ""@Width"": ""320*"" } ] }, ""Grid.RowDefinitions"": { ""@xmlns"": """", ""RowDefinition"": [ null, null, null, null, null, null, null, null ] }, ""TextBox"": [ { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding TypedTitle, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordTypedTitle"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""0"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding ExternalReference, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordExternalReference"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""1"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding Author, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordAuthor"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""4"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding Container, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordContainer"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""5"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding IsEnclosed, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordIsEnclosed"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""6"", ""@xmlns"": """" }, { ""@Style"": ""{StaticResource trimFormGrid_TB}"", ""@Text"": ""{Binding Assignee, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordAssignee"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""7"", ""@xmlns"": """" } ], ""toolkit:DatePicker"": [ { ""@Style"": ""{StaticResource trimFormGrid_DP}"", ""@Value"": ""{Binding DateCreated, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordDateCreated"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""2"" }, { ""@Style"": ""{StaticResource trimFormGrid_DP}"", ""@Value"": ""{Binding DateDue, Converter={StaticResource trimPropertyConverter}}"", ""@Name"": ""RecordDateDue"", ""@Grid.Column"": ""1"", ""@Grid.Row"": ""3"" } ], ""TextBlock"": [ { ""@Grid.Column"": ""0"", ""@Text"": ""Title (Free Text Part)"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""0"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""External ID"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""1"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Date Created"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""2"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Date Due"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""3"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Author"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""4"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Container"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""5"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Enclosed?"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""6"", ""@xmlns"": """" }, { ""@Grid.Column"": ""0"", ""@Text"": ""Assignee"", ""@Style"": ""{StaticResource trimFormGrid_LBL}"", ""@Grid.Row"": ""7"", ""@xmlns"": """" } ] } }"; StringAssert.AreEqual(expectedJson, json); XmlNode node = JsonConvert.DeserializeXmlNode(json); StringWriter sw = new StringWriter(); XmlWriter writer = XmlWriter.Create(sw, new XmlWriterSettings { Indent = true, OmitXmlDeclaration = true }); node.WriteTo(writer); writer.Flush(); string xaml2 = sw.ToString(); string expectedXaml = @" "; StringAssert.AreEqual(expectedXaml, xaml2); } [Test] public void DeserializeAttributePropertyNotAtStart() { string json = @"{""item"": {""@action"": ""update"", ""@itemid"": ""1"", ""elements"": [{""@action"": ""none"", ""@id"": ""2""},{""@action"": ""none"", ""@id"": ""3""}],""@description"": ""temp""}}"; XmlDocument xmldoc = JsonConvert.DeserializeXmlNode(json); Assert.AreEqual(@"", xmldoc.InnerXml); } [Test] public void SerializingXmlNamespaceScope() { var xmlString = @" "; #if !NET20 var xml = XElement.Parse(xmlString); var json1 = JsonConvert.SerializeObject(xml); Assert.AreEqual(@"{""root"":{""@xmlns"":""http://www.example.com/ns"",""a"":null,""bns:b"":{""@xmlns:bns"":""http://www.example.com/ns""},""c"":null}}", json1); #endif #if !(NETFX_CORE) var xml1 = new XmlDocument(); xml1.LoadXml(xmlString); var json2 = JsonConvert.SerializeObject(xml1); Assert.AreEqual(@"{""root"":{""@xmlns"":""http://www.example.com/ns"",""a"":null,""bns:b"":{""@xmlns:bns"":""http://www.example.com/ns""},""c"":null}}", json2); #endif } #if !NET20 public class NullableXml { public string Name; public XElement notNull; public XElement isNull; } [Test] public void SerializeAndDeserializeNullableXml() { var xml = new NullableXml { Name = "test", notNull = XElement.Parse("test") }; var json = JsonConvert.SerializeObject(xml); var w2 = JsonConvert.DeserializeObject(json); Assert.AreEqual(xml.Name, w2.Name); Assert.AreEqual(xml.isNull, w2.isNull); Assert.AreEqual(xml.notNull.ToString(), w2.notNull.ToString()); } #endif #if !NET20 [Test] public void SerializeAndDeserializeXElementWithNamespaceInChildrenRootDontHaveNameSpace() { var xmlString = @" Asd AAA adad "; var xml = XElement.Parse(xmlString); var json1 = JsonConvert.SerializeXNode(xml); var xmlBack = JsonConvert.DeserializeObject(json1); var equals = XElement.DeepEquals(xmlBack, xml); Assert.IsTrue(equals); } #endif [Test] public void SerializeAndDeserializeXmlElementWithNamespaceInChildrenRootDontHaveNameSpace() { var xmlString = @" Asd AAA adad "; XmlDocument xml = new XmlDocument(); xml.LoadXml(xmlString); var json1 = JsonConvert.SerializeXmlNode(xml); var xmlBack = JsonConvert.DeserializeObject(json1); Assert.AreEqual(@"AsdAAAadad", xmlBack.OuterXml); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/KeyValuePairConverterTests.cs0000664000175000017500000000427112454416117032300 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Text; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class KeyValuePairConverterTests : TestFixtureBase { [Test] public void SerializeUsingInternalConverter() { DefaultContractResolver contractResolver = new DefaultContractResolver(); JsonObjectContract contract = (JsonObjectContract) contractResolver.ResolveContract(typeof (KeyValuePair)); Assert.AreEqual(typeof(KeyValuePairConverter), contract.InternalConverter.GetType()); IList> values = new List> { new KeyValuePair("123", 123), new KeyValuePair("456", 456) }; string json = JsonConvert.SerializeObject(values, Formatting.Indented); StringAssert.AreEqual(@"[ { ""Key"": ""123"", ""Value"": 123 }, { ""Key"": ""456"", ""Value"": 456 } ]", json); IList> v2 = JsonConvert.DeserializeObject>>(json); Assert.AreEqual(2, v2.Count); Assert.AreEqual("123", v2[0].Key); Assert.AreEqual(123, v2[0].Value); Assert.AreEqual("456", v2[1].Key); Assert.AreEqual(456, v2[1].Value); } [Test] public void DeserializeUnexpectedEnd() { ExceptionAssert.Throws(() => JsonConvert.DeserializeObject>(@"{""Key"": ""123"","), "Unexpected end when reading KeyValuePair. Path 'Key', line 1, position 14."); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/CustomCreationConverterTests.cs0000664000175000017500000002070012454416117032671 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Converters; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class CustomCreationConverterTests : TestFixtureBase { public interface IPerson { string FirstName { get; set; } string LastName { get; set; } DateTime BirthDate { get; set; } } public class Employee : IPerson { public string FirstName { get; set; } public string LastName { get; set; } public DateTime BirthDate { get; set; } public string Department { get; set; } public string JobTitle { get; set; } } public class PersonConverter : CustomCreationConverter { public override IPerson Create(Type objectType) { return new Employee(); } } public void DeserializeObject() { string json = JsonConvert.SerializeObject(new List { new Employee { BirthDate = new DateTime(1977, 12, 30, 1, 1, 1, DateTimeKind.Utc), FirstName = "Maurice", LastName = "Moss", Department = "IT", JobTitle = "Support" }, new Employee { BirthDate = new DateTime(1978, 3, 15, 1, 1, 1, DateTimeKind.Utc), FirstName = "Jen", LastName = "Barber", Department = "IT", JobTitle = "Manager" } }, Formatting.Indented); //[ // { // "FirstName": "Maurice", // "LastName": "Moss", // "BirthDate": "\/Date(252291661000)\/", // "Department": "IT", // "JobTitle": "Support" // }, // { // "FirstName": "Jen", // "LastName": "Barber", // "BirthDate": "\/Date(258771661000)\/", // "Department": "IT", // "JobTitle": "Manager" // } //] List people = JsonConvert.DeserializeObject>(json, new PersonConverter()); IPerson person = people[0]; Console.WriteLine(person.GetType()); // Newtonsoft.Json.Tests.Employee Console.WriteLine(person.FirstName); // Maurice Employee employee = (Employee)person; Console.WriteLine(employee.JobTitle); // Support } public class MyClass { public string Value { get; set; } [JsonConverter(typeof(MyThingConverter))] public IThing Thing { get; set; } } public interface IThing { int Number { get; } } public class MyThing : IThing { public int Number { get; set; } } public class MyThingConverter : CustomCreationConverter { public override IThing Create(Type objectType) { return new MyThing(); } } [Test] public void AssertDoesDeserialize() { const string json = @"{ ""Value"": ""A value"", ""Thing"": { ""Number"": 123 } } "; MyClass myClass = JsonConvert.DeserializeObject(json); Assert.IsNotNull(myClass); Assert.AreEqual("A value", myClass.Value); Assert.IsNotNull(myClass.Thing); Assert.AreEqual(123, myClass.Thing.Number); } [Test] public void AssertShouldSerializeTest() { MyClass myClass = new MyClass { Value = "Foo", Thing = new MyThing { Number = 456, } }; string json = JsonConvert.SerializeObject(myClass); // <-- Exception here const string expected = @"{""Value"":""Foo"",""Thing"":{""Number"":456}}"; Assert.AreEqual(expected, json); } internal interface IRange { T First { get; } T Last { get; } } internal class Range : IRange { public T First { get; set; } public T Last { get; set; } } internal class NullInterfaceTestClass { public virtual Guid Id { get; set; } public virtual int? Year { get; set; } public virtual string Company { get; set; } public virtual IRange DecimalRange { get; set; } public virtual IRange IntRange { get; set; } public virtual IRange NullDecimalRange { get; set; } } internal class DecimalRangeConverter : CustomCreationConverter> { public override IRange Create(Type objectType) { return new Range(); } } internal class IntRangeConverter : CustomCreationConverter> { public override IRange Create(Type objectType) { return new Range(); } } [Test] public void DeserializeAndConvertNullValue() { NullInterfaceTestClass initial = new NullInterfaceTestClass { Company = "Company!", DecimalRange = new Range { First = 0, Last = 1 }, Id = new Guid(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), IntRange = new Range { First = int.MinValue, Last = int.MaxValue }, Year = 2010, NullDecimalRange = null }; string json = JsonConvert.SerializeObject(initial, Formatting.Indented); StringAssert.AreEqual(@"{ ""Id"": ""00000001-0002-0003-0405-060708090a0b"", ""Year"": 2010, ""Company"": ""Company!"", ""DecimalRange"": { ""First"": 0.0, ""Last"": 1.0 }, ""IntRange"": { ""First"": -2147483648, ""Last"": 2147483647 }, ""NullDecimalRange"": null }", json); NullInterfaceTestClass deserialized = JsonConvert.DeserializeObject( json, new IntRangeConverter(), new DecimalRangeConverter()); Assert.AreEqual("Company!", deserialized.Company); Assert.AreEqual(new Guid(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), deserialized.Id); Assert.AreEqual(0, deserialized.DecimalRange.First); Assert.AreEqual(1, deserialized.DecimalRange.Last); Assert.AreEqual(int.MinValue, deserialized.IntRange.First); Assert.AreEqual(int.MaxValue, deserialized.IntRange.Last); Assert.AreEqual(null, deserialized.NullDecimalRange); Assert.AreEqual(2010, deserialized.Year); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/StringEnumConverterTests.cs0000664000175000017500000004272512454416117032040 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Runtime.Serialization; using System.Text; using System.Text.RegularExpressions; using Newtonsoft.Json.Converters; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Tests.TestObjects; namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class StringEnumConverterTests : TestFixtureBase { public class EnumClass { public StoreColor StoreColor { get; set; } public StoreColor? NullableStoreColor1 { get; set; } public StoreColor? NullableStoreColor2 { get; set; } } public class EnumContainer { public T Enum { get; set; } } [Flags] public enum FlagsTestEnum { Default = 0, First = 1, Second = 2 } public enum NegativeEnum { Negative = -1, Zero = 0, Positive = 1 } #if !NET20 public enum NamedEnum { [EnumMember(Value = "@first")] First, [EnumMember(Value = "@second")] Second, Third } public enum NamedEnumDuplicate { [EnumMember(Value = "Third")] First, [EnumMember(Value = "@second")] Second, Third } #endif public class NegativeEnumClass { public NegativeEnum Value1 { get; set; } public NegativeEnum Value2 { get; set; } } #if !NET20 [Test] public void NamedEnumDuplicateTest() { ExceptionAssert.Throws(() => { EnumContainer c = new EnumContainer { Enum = NamedEnumDuplicate.First }; JsonConvert.SerializeObject(c, Formatting.Indented, new StringEnumConverter()); }, "Enum name 'Third' already exists on enum 'NamedEnumDuplicate'."); } [Test] public void SerializeNameEnumTest() { EnumContainer c = new EnumContainer { Enum = NamedEnum.First }; string json = JsonConvert.SerializeObject(c, Formatting.Indented, new StringEnumConverter()); StringAssert.AreEqual(@"{ ""Enum"": ""@first"" }", json); c = new EnumContainer { Enum = NamedEnum.Third }; json = JsonConvert.SerializeObject(c, Formatting.Indented, new StringEnumConverter()); StringAssert.AreEqual(@"{ ""Enum"": ""Third"" }", json); } [Test] public void DeserializeNameEnumTest() { string json = @"{ ""Enum"": ""@first"" }"; EnumContainer c = JsonConvert.DeserializeObject>(json, new StringEnumConverter()); Assert.AreEqual(NamedEnum.First, c.Enum); json = @"{ ""Enum"": ""Third"" }"; c = JsonConvert.DeserializeObject>(json, new StringEnumConverter()); Assert.AreEqual(NamedEnum.Third, c.Enum); } #endif [Test] public void SerializeEnumClass() { EnumClass enumClass = new EnumClass(); enumClass.StoreColor = StoreColor.Red; enumClass.NullableStoreColor1 = StoreColor.White; enumClass.NullableStoreColor2 = null; string json = JsonConvert.SerializeObject(enumClass, Formatting.Indented, new StringEnumConverter()); StringAssert.AreEqual(@"{ ""StoreColor"": ""Red"", ""NullableStoreColor1"": ""White"", ""NullableStoreColor2"": null }", json); } [Test] public void SerializeEnumClassWithCamelCase() { EnumClass enumClass = new EnumClass(); enumClass.StoreColor = StoreColor.Red; enumClass.NullableStoreColor1 = StoreColor.DarkGoldenrod; enumClass.NullableStoreColor2 = null; string json = JsonConvert.SerializeObject(enumClass, Formatting.Indented, new StringEnumConverter { CamelCaseText = true }); StringAssert.AreEqual(@"{ ""StoreColor"": ""red"", ""NullableStoreColor1"": ""darkGoldenrod"", ""NullableStoreColor2"": null }", json); } [Test] public void SerializeEnumClassUndefined() { EnumClass enumClass = new EnumClass(); enumClass.StoreColor = (StoreColor)1000; enumClass.NullableStoreColor1 = (StoreColor)1000; enumClass.NullableStoreColor2 = null; string json = JsonConvert.SerializeObject(enumClass, Formatting.Indented, new StringEnumConverter()); StringAssert.AreEqual(@"{ ""StoreColor"": 1000, ""NullableStoreColor1"": 1000, ""NullableStoreColor2"": null }", json); } [Test] public void SerializeFlagEnum() { EnumClass enumClass = new EnumClass(); enumClass.StoreColor = StoreColor.Red | StoreColor.White; enumClass.NullableStoreColor1 = StoreColor.White & StoreColor.Yellow; enumClass.NullableStoreColor2 = StoreColor.Red | StoreColor.White | StoreColor.Black; string json = JsonConvert.SerializeObject(enumClass, Formatting.Indented, new StringEnumConverter()); StringAssert.AreEqual(@"{ ""StoreColor"": ""Red, White"", ""NullableStoreColor1"": 0, ""NullableStoreColor2"": ""Black, Red, White"" }", json); } [Test] public void SerializeNegativeEnum() { NegativeEnumClass negativeEnumClass = new NegativeEnumClass(); negativeEnumClass.Value1 = NegativeEnum.Negative; negativeEnumClass.Value2 = (NegativeEnum)int.MinValue; string json = JsonConvert.SerializeObject(negativeEnumClass, Formatting.Indented, new StringEnumConverter()); StringAssert.AreEqual(@"{ ""Value1"": ""Negative"", ""Value2"": -2147483648 }", json); } [Test] public void DeserializeNegativeEnum() { string json = @"{ ""Value1"": ""Negative"", ""Value2"": -2147483648 }"; NegativeEnumClass negativeEnumClass = JsonConvert.DeserializeObject(json, new StringEnumConverter()); Assert.AreEqual(NegativeEnum.Negative, negativeEnumClass.Value1); Assert.AreEqual((NegativeEnum)int.MinValue, negativeEnumClass.Value2); } [Test] public void DeserializeFlagEnum() { string json = @"{ ""StoreColor"": ""Red, White"", ""NullableStoreColor1"": 0, ""NullableStoreColor2"": ""black, Red, White"" }"; EnumClass enumClass = JsonConvert.DeserializeObject(json, new StringEnumConverter()); Assert.AreEqual(StoreColor.Red | StoreColor.White, enumClass.StoreColor); Assert.AreEqual((StoreColor)0, enumClass.NullableStoreColor1); Assert.AreEqual(StoreColor.Red | StoreColor.White | StoreColor.Black, enumClass.NullableStoreColor2); } [Test] public void DeserializeEnumClass() { string json = @"{ ""StoreColor"": ""Red"", ""NullableStoreColor1"": ""White"", ""NullableStoreColor2"": null }"; EnumClass enumClass = JsonConvert.DeserializeObject(json, new StringEnumConverter()); Assert.AreEqual(StoreColor.Red, enumClass.StoreColor); Assert.AreEqual(StoreColor.White, enumClass.NullableStoreColor1); Assert.AreEqual(null, enumClass.NullableStoreColor2); } [Test] public void DeserializeEnumClassUndefined() { string json = @"{ ""StoreColor"": 1000, ""NullableStoreColor1"": 1000, ""NullableStoreColor2"": null }"; EnumClass enumClass = JsonConvert.DeserializeObject(json, new StringEnumConverter()); Assert.AreEqual((StoreColor)1000, enumClass.StoreColor); Assert.AreEqual((StoreColor)1000, enumClass.NullableStoreColor1); Assert.AreEqual(null, enumClass.NullableStoreColor2); } [Test] public void CamelCaseTextFlagEnumSerialization() { EnumContainer c = new EnumContainer { Enum = FlagsTestEnum.First | FlagsTestEnum.Second }; string json = JsonConvert.SerializeObject(c, Formatting.Indented, new StringEnumConverter { CamelCaseText = true }); StringAssert.AreEqual(@"{ ""Enum"": ""first, second"" }", json); } [Test] public void CamelCaseTextFlagEnumDeserialization() { string json = @"{ ""Enum"": ""first, second"" }"; EnumContainer c = JsonConvert.DeserializeObject>(json, new StringEnumConverter { CamelCaseText = true }); Assert.AreEqual(FlagsTestEnum.First | FlagsTestEnum.Second, c.Enum); } [Test] public void DeserializeEmptyStringIntoNullable() { string json = @"{ ""StoreColor"": ""Red"", ""NullableStoreColor1"": ""White"", ""NullableStoreColor2"": """" }"; EnumClass c = JsonConvert.DeserializeObject(json, new StringEnumConverter()); Assert.IsNull(c.NullableStoreColor2); } [Test] public void DeserializeInvalidString() { string json = "{ \"Value\" : \"Three\" }"; ExceptionAssert.Throws(() => { var serializer = new JsonSerializer(); serializer.Converters.Add(new StringEnumConverter()); serializer.Deserialize(new JsonTextReader(new StringReader(json))); }, @"Error converting value ""Three"" to type 'Newtonsoft.Json.Tests.Converters.StringEnumConverterTests+MyEnum'. Path 'Value', line 1, position 19."); } public class Bucket { public MyEnum Value; } public enum MyEnum { Alpha, Beta, } [Test] public void DeserializeIntegerButNotAllowed() { string json = "{ \"Value\" : 123 }"; try { var serializer = new JsonSerializer(); serializer.Converters.Add(new StringEnumConverter { AllowIntegerValues = false }); serializer.Deserialize(new JsonTextReader(new StringReader(json))); } catch (JsonSerializationException ex) { Assert.AreEqual("Error converting value 123 to type 'Newtonsoft.Json.Tests.Converters.StringEnumConverterTests+MyEnum'. Path 'Value', line 1, position 15.", ex.Message); Assert.AreEqual(@"Integer value 123 is not allowed. Path 'Value', line 1, position 15.", ex.InnerException.Message); return; } Assert.Fail(); } #if !NET20 [Test] public void EnumMemberPlusFlags() { List lfoo = new List { Foo.Bat | Foo.SerializeAsBaz, Foo.FooBar, Foo.Bat, Foo.SerializeAsBaz, Foo.FooBar | Foo.SerializeAsBaz, (Foo)int.MaxValue }; string json1 = JsonConvert.SerializeObject(lfoo, Formatting.Indented, new StringEnumConverter { CamelCaseText = true }); StringAssert.AreEqual(@"[ ""Bat, baz"", ""foo_bar"", ""Bat"", ""baz"", ""foo_bar, baz"", 2147483647 ]", json1); IList foos = JsonConvert.DeserializeObject>(json1); Assert.AreEqual(6, foos.Count); Assert.AreEqual(Foo.Bat | Foo.SerializeAsBaz, foos[0]); Assert.AreEqual(Foo.FooBar, foos[1]); Assert.AreEqual(Foo.Bat, foos[2]); Assert.AreEqual(Foo.SerializeAsBaz, foos[3]); Assert.AreEqual(Foo.FooBar | Foo.SerializeAsBaz, foos[4]); Assert.AreEqual((Foo)int.MaxValue, foos[5]); List lbar = new List() { Bar.FooBar, Bar.Bat, Bar.SerializeAsBaz }; string json2 = JsonConvert.SerializeObject(lbar, Formatting.Indented, new StringEnumConverter { CamelCaseText = true }); StringAssert.AreEqual(@"[ ""foo_bar"", ""Bat"", ""baz"" ]", json2); IList bars = JsonConvert.DeserializeObject>(json2); Assert.AreEqual(3, bars.Count); Assert.AreEqual(Bar.FooBar, bars[0]); Assert.AreEqual(Bar.Bat, bars[1]); Assert.AreEqual(Bar.SerializeAsBaz, bars[2]); } [Test] public void DuplicateNameEnumTest() { ExceptionAssert.Throws( () => JsonConvert.DeserializeObject("'foo_bar'", new StringEnumConverter()), @"Error converting value ""foo_bar"" to type 'Newtonsoft.Json.Tests.Converters.DuplicateNameEnum'. Path '', line 1, position 9."); } // Define other methods and classes here [Flags] [JsonConverter(typeof(StringEnumConverter))] private enum Foo { [EnumMember(Value = "foo_bar")] FooBar = 0x01, Bat = 0x02, [EnumMember(Value = "baz")] SerializeAsBaz = 0x4, } [JsonConverter(typeof(StringEnumConverter))] private enum Bar { [EnumMember(Value = "foo_bar")] FooBar, Bat, [EnumMember(Value = "baz")] SerializeAsBaz } [Test] public void DataContractSerializerDuplicateNameEnumTest() { MemoryStream ms = new MemoryStream(); var s = new DataContractSerializer(typeof(DuplicateEnumNameTestClass)); ExceptionAssert.Throws(() => { s.WriteObject(ms, new DuplicateEnumNameTestClass { Value = DuplicateNameEnum.foo_bar, Value2 = DuplicateNameEnum2.foo_bar_NOT_USED }); Console.WriteLine(Encoding.UTF8.GetString(ms.ToArray(), 0, (int)ms.Length)); string xml = @" foo_bar foo_bar "; Console.WriteLine(xml); var o = (DuplicateEnumNameTestClass)s.ReadObject(new MemoryStream(Encoding.UTF8.GetBytes(xml))); Assert.AreEqual(DuplicateNameEnum.foo_bar, o.Value); Assert.AreEqual(DuplicateNameEnum2.FooBar, o.Value2); }, "Type 'Newtonsoft.Json.Tests.Converters.DuplicateNameEnum' contains two members 'foo_bar' 'and 'FooBar' with the same name 'foo_bar'. Multiple members with the same name in one type are not supported. Consider changing one of the member names using EnumMemberAttribute attribute."); } #endif } #if !NET20 [DataContract] public class DuplicateEnumNameTestClass { [DataMember] public DuplicateNameEnum Value { get; set; } [DataMember] public DuplicateNameEnum2 Value2 { get; set; } } [DataContract] public enum DuplicateNameEnum { [EnumMember] first = 0, [EnumMember] foo_bar = 1, [EnumMember(Value = "foo_bar")] FooBar = 2, [EnumMember] foo_bar_NOT_USED = 3 } [DataContract] public enum DuplicateNameEnum2 { [EnumMember] first = 0, [EnumMember(Value = "foo_bar")] FooBar = 1, [EnumMember] foo_bar = 2, [EnumMember(Value = "TEST")] foo_bar_NOT_USED = 3 } #endif }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Converters/IsoDateTimeConverterTests.cs0000664000175000017500000003122012454416117032100 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Converters; using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Tests.Converters { [TestFixture] public class IsoDateTimeConverterTests : TestFixtureBase { [Test] public void PropertiesShouldBeSet() { IsoDateTimeConverter converter = new IsoDateTimeConverter(); Assert.AreEqual(CultureInfo.CurrentCulture, converter.Culture); Assert.AreEqual(string.Empty, converter.DateTimeFormat); Assert.AreEqual(DateTimeStyles.RoundtripKind, converter.DateTimeStyles); converter = new IsoDateTimeConverter() { DateTimeFormat = "F", Culture = CultureInfo.InvariantCulture, DateTimeStyles = DateTimeStyles.None }; Assert.AreEqual(CultureInfo.InvariantCulture, converter.Culture); Assert.AreEqual("F", converter.DateTimeFormat); Assert.AreEqual(DateTimeStyles.None, converter.DateTimeStyles); } public static string GetUtcOffsetText(DateTime d) { TimeSpan utcOffset = d.GetUtcOffset(); return utcOffset.Hours.ToString("+00;-00", CultureInfo.InvariantCulture) + ":" + utcOffset.Minutes.ToString("00;00", CultureInfo.InvariantCulture); } [Test] public void SerializeDateTime() { IsoDateTimeConverter converter = new IsoDateTimeConverter(); DateTime d = new DateTime(2000, 12, 15, 22, 11, 3, 55, DateTimeKind.Utc); string result; result = JsonConvert.SerializeObject(d, converter); Assert.AreEqual(@"""2000-12-15T22:11:03.055Z""", result); Assert.AreEqual(d, JsonConvert.DeserializeObject(result, converter)); d = new DateTime(2000, 12, 15, 22, 11, 3, 55, DateTimeKind.Local); result = JsonConvert.SerializeObject(d, converter); Assert.AreEqual(@"""2000-12-15T22:11:03.055" + GetUtcOffsetText(d) + @"""", result); } [Test] public void SerializeFormattedDateTimeInvariantCulture() { IsoDateTimeConverter converter = new IsoDateTimeConverter() { DateTimeFormat = "F", Culture = CultureInfo.InvariantCulture }; DateTime d = new DateTime(2000, 12, 15, 22, 11, 3, 0, DateTimeKind.Utc); string result; result = JsonConvert.SerializeObject(d, converter); Assert.AreEqual(@"""Friday, 15 December 2000 22:11:03""", result); Assert.AreEqual(d, JsonConvert.DeserializeObject(result, converter)); d = new DateTime(2000, 12, 15, 22, 11, 3, 0, DateTimeKind.Local); result = JsonConvert.SerializeObject(d, converter); Assert.AreEqual(@"""Friday, 15 December 2000 22:11:03""", result); } [Test] public void SerializeCustomFormattedDateTime() { IsoDateTimeConverter converter = new IsoDateTimeConverter { DateTimeFormat = "dd/MM/yyyy", Culture = CultureInfo.InvariantCulture }; string json = @"""09/12/2006"""; DateTime d = JsonConvert.DeserializeObject(json, converter); Assert.AreEqual(9, d.Day); Assert.AreEqual(12, d.Month); Assert.AreEqual(2006, d.Year); } #if !(NETFX_CORE || ASPNETCORE50) [Test] public void SerializeFormattedDateTimeNewZealandCulture() { IsoDateTimeConverter converter = new IsoDateTimeConverter() { DateTimeFormat = "F", Culture = CultureInfo.GetCultureInfo("en-NZ") }; DateTime d = new DateTime(2000, 12, 15, 22, 11, 3, 0, DateTimeKind.Utc); string result; result = JsonConvert.SerializeObject(d, converter); Assert.AreEqual(@"""Friday, 15 December 2000 10:11:03 p.m.""", result); Assert.AreEqual(d, JsonConvert.DeserializeObject(result, converter)); d = new DateTime(2000, 12, 15, 22, 11, 3, 0, DateTimeKind.Local); result = JsonConvert.SerializeObject(d, converter); Assert.AreEqual(@"""Friday, 15 December 2000 10:11:03 p.m.""", result); } [Test] public void SerializeDateTimeCulture() { IsoDateTimeConverter converter = new IsoDateTimeConverter() { Culture = CultureInfo.GetCultureInfo("en-NZ") }; string json = @"""09/12/2006"""; DateTime d = JsonConvert.DeserializeObject(json, converter); Assert.AreEqual(9, d.Day); Assert.AreEqual(12, d.Month); Assert.AreEqual(2006, d.Year); } #endif #if !NET20 [Test] public void SerializeDateTimeOffset() { IsoDateTimeConverter converter = new IsoDateTimeConverter(); DateTimeOffset d = new DateTimeOffset(2000, 12, 15, 22, 11, 3, 55, TimeSpan.Zero); string result; result = JsonConvert.SerializeObject(d, converter); Assert.AreEqual(@"""2000-12-15T22:11:03.055+00:00""", result); Assert.AreEqual(d, JsonConvert.DeserializeObject(result, converter)); } [Test] public void SerializeUTC() { DateTimeTestClass c = new DateTimeTestClass(); c.DateTimeField = new DateTime(2008, 12, 12, 12, 12, 12, 0, DateTimeKind.Utc).ToLocalTime(); c.DateTimeOffsetField = new DateTime(2008, 12, 12, 12, 12, 12, 0, DateTimeKind.Utc).ToLocalTime(); c.PreField = "Pre"; c.PostField = "Post"; string json = JsonConvert.SerializeObject(c, new IsoDateTimeConverter() { DateTimeStyles = DateTimeStyles.AssumeUniversal }); Assert.AreEqual(@"{""PreField"":""Pre"",""DateTimeField"":""2008-12-12T12:12:12Z"",""DateTimeOffsetField"":""2008-12-12T12:12:12+00:00"",""PostField"":""Post""}", json); //test the other edge case too c.DateTimeField = new DateTime(2008, 1, 1, 1, 1, 1, 0, DateTimeKind.Utc).ToLocalTime(); c.DateTimeOffsetField = new DateTime(2008, 1, 1, 1, 1, 1, 0, DateTimeKind.Utc).ToLocalTime(); c.PreField = "Pre"; c.PostField = "Post"; json = JsonConvert.SerializeObject(c, new IsoDateTimeConverter() { DateTimeStyles = DateTimeStyles.AssumeUniversal }); Assert.AreEqual(@"{""PreField"":""Pre"",""DateTimeField"":""2008-01-01T01:01:01Z"",""DateTimeOffsetField"":""2008-01-01T01:01:01+00:00"",""PostField"":""Post""}", json); } [Test] public void NullableSerializeUTC() { NullableDateTimeTestClass c = new NullableDateTimeTestClass(); c.DateTimeField = new DateTime(2008, 12, 12, 12, 12, 12, 0, DateTimeKind.Utc).ToLocalTime(); c.DateTimeOffsetField = new DateTime(2008, 12, 12, 12, 12, 12, 0, DateTimeKind.Utc).ToLocalTime(); c.PreField = "Pre"; c.PostField = "Post"; string json = JsonConvert.SerializeObject(c, new IsoDateTimeConverter() { DateTimeStyles = DateTimeStyles.AssumeUniversal }); Assert.AreEqual(@"{""PreField"":""Pre"",""DateTimeField"":""2008-12-12T12:12:12Z"",""DateTimeOffsetField"":""2008-12-12T12:12:12+00:00"",""PostField"":""Post""}", json); //test the other edge case too c.DateTimeField = null; c.DateTimeOffsetField = null; c.PreField = "Pre"; c.PostField = "Post"; json = JsonConvert.SerializeObject(c, new IsoDateTimeConverter() { DateTimeStyles = DateTimeStyles.AssumeUniversal }); Assert.AreEqual(@"{""PreField"":""Pre"",""DateTimeField"":null,""DateTimeOffsetField"":null,""PostField"":""Post""}", json); } [Test] public void NullableDeserializeEmptyString() { string json = @"{""DateTimeField"":""""}"; NullableDateTimeTestClass c = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { Converters = new[] { new IsoDateTimeConverter() } }); Assert.AreEqual(null, c.DateTimeField); } [Test] public void DeserializeNullToNonNullable() { ExceptionAssert.Throws(() => { DateTimeTestClass c2 = JsonConvert.DeserializeObject(@"{""PreField"":""Pre"",""DateTimeField"":null,""DateTimeOffsetField"":null,""PostField"":""Post""}", new IsoDateTimeConverter() { DateTimeStyles = DateTimeStyles.AssumeUniversal }); }, "Cannot convert null value to System.DateTime. Path 'DateTimeField', line 1, position 38."); } [Test] public void SerializeShouldChangeNonUTCDates() { DateTime localDateTime = new DateTime(2008, 1, 1, 1, 1, 1, 0, DateTimeKind.Local); DateTimeTestClass c = new DateTimeTestClass(); c.DateTimeField = localDateTime; c.PreField = "Pre"; c.PostField = "Post"; string json = JsonConvert.SerializeObject(c, new IsoDateTimeConverter() { DateTimeStyles = DateTimeStyles.AssumeUniversal }); //note that this fails without the Utc converter... c.DateTimeField = new DateTime(2008, 1, 1, 1, 1, 1, 0, DateTimeKind.Utc); string json2 = JsonConvert.SerializeObject(c, new IsoDateTimeConverter() { DateTimeStyles = DateTimeStyles.AssumeUniversal }); TimeSpan offset = localDateTime.GetUtcOffset(); // if the current timezone is utc then local already equals utc if (offset == TimeSpan.Zero) Assert.AreEqual(json, json2); else Assert.AreNotEqual(json, json2); } #endif [Test] public void BlogCodeSample() { Person p = new Person { Name = "Keith", BirthDate = new DateTime(1980, 3, 8), LastModified = new DateTime(2009, 4, 12, 20, 44, 55), }; string jsonText = JsonConvert.SerializeObject(p, new IsoDateTimeConverter()); // { // "Name": "Keith", // "BirthDate": "1980-03-08T00:00:00", // "LastModified": "2009-04-12T20:44:55" // } Console.WriteLine(jsonText); } #if !NET20 [Test] public void DeserializeDateTimeOffset() { var settings = new JsonSerializerSettings(); settings.DateParseHandling = DateParseHandling.DateTimeOffset; settings.Converters.Add(new IsoDateTimeConverter()); // Intentionally use an offset that is unlikely in the real world, // so the test will be accurate regardless of the local time zone setting. var offset = new TimeSpan(2, 15, 0); var dto = new DateTimeOffset(2014, 1, 1, 0, 0, 0, 0, offset); var test = JsonConvert.DeserializeObject("\"2014-01-01T00:00:00+02:15\"", settings); Assert.AreEqual(dto, test); Assert.AreEqual(dto.ToString("o"), test.ToString("o")); } #endif } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/large_sample.xml0000664000175000017500000341001612454416117025521 0ustar directhexdirecthex Add 70587 147075 Add 70587 147076 Add 70587 147077 Add 70588 147078 Add 70603 147102 Add 70612 147116 Add 70612 147117 Add 70612 147118 Add 70621 147143 Add 70627 147160 Add 70629 147166 Add 70636 147185 Add 70636 147186 Add 70639 147192 Add 70647 147208 Add 70652 147220 Add 70661 147245 Add 70662 147250 Add 70662 147251 Add 70662 147253 Add 70669 147270 Add 70672 147276 Add 70681 147300 Add 70686 147317 Add 70687 147318 Add 70687 147319 Add 70687 147320 Add 70694 147327 Add 70703 147344 Add 70703 147345 Add 70703 147350 Add 70703 147351 Add 70703 147352 Add 70705 147358 Add 70705 147359 Add 70712 147376 Add 70714 147377 Add 70714 147378 Add 70719 147387 Add 70722 147392 Add 70722 147393 Add 70722 147394 Add 70730 147411 Add 70730 147412 Add 70739 147425 Add 70746 147435 Add 70746 147436 Add 70747 147437 Add 70756 147452 Add 70756 147453 Add 70761 147460 Add 70761 147461 Add 70761 147462 Add 70762 147467 Add 70762 147469 Add 70762 147470 Add 70770 147475 Add 70772 147477 Add 70772 147478 Add 70772 147479 Add 70773 147484 Add 70773 147485 Add 70773 147486 Add 70779 147492 Add 70780 147493 Add 70780 147494 Add 70788 147509 Add 70789 147510 Add 70789 147511 Add 70806 147534 Add 70811 147543 Add 70812 147544 Add 70812 147545 Add 70813 147546 Add 70821 147559 Add 70828 147568 Add 70829 147570 Add 70846 147611 Add 70847 147612 Add 70853 147620 Add 70854 147621 Add 70855 147627 Add 70856 147628 Add 70861 147634 Add 70861 147635 Add 70864 147637 Add 70871 147645 Add 70895 147676 Add 70897 147678 Add 70897 147679 Add 70904 147687 Add 70911 147694 Add 70911 147695 Add 70914 147701 Add 70923 147718 Add 70931 147744 Add 70937 147796 Add 70939 147801 Add 70940 147803 Add 70945 147810 Add 70945 147812 Add 70946 147813 Add 70953 147829 Add 70956 147835 Add 70964 147853 Add 70965 147854 Add 70965 147855 Add 70970 147869 Add 70971 147871 Add 70978 147885 Add 70979 147886 Add 70980 147888 Add 70982 147893 Add 70989 147902 Add 70989 147903 Add 70990 147905 Add 70997 147928 Add 70998 147929 Add 71004 147944 Add 71004 147945 Add 71004 147946 Add 71006 147947 Add 71013 147961 Add 71013 147962 Add 71014 147963 Add 71020 147977 Add 71020 147978 Add 71021 147979 Add 71021 147980 Add 71023 147986 Add 71031 148004 Add 71032 148010 Add 71037 148022 Add 71040 148029 Add 71046 148044 Add 71047 148046 Add 71048 148047 Add 71055 148064 Add 71057 148070 Add 71057 148071 Add 71064 148085 Add 71064 148086 Add 71064 148087 Add 71064 148088 Add 71064 148089 Add 71071 148105 Add 71080 148127 Add 71081 148128 Add 71081 148129 Add 71082 148130 Add 71088 148147 Add 71095 148470 Add 71095 148471 Add 71095 148479 Add 71095 148480 Add 71095 148481 Add 71095 148487 Add 71095 148488 Add 71095 148489 Add 71095 148495 Add 71095 148496 Add 71095 148498 Add 71095 148503 Add 71095 148504 Add 71095 148505 Add 71095 148506 Add 71095 148512 Add 71095 148514 Add 71095 148515 Add 71098 148520 Add 71099 148521 Add 71099 148523 Add 71099 148528 Add 71099 148529 Add 71099 148530 Add 71105 148546 Add 71112 148557 Add 71115 148564 Add 71122 148579 Add 71124 148582 Add 71129 148590 Add 71137 148604 Add 71140 148612 Add 71140 148614 Add 71145 148622 Add 71145 148623 Add 71149 148629 Add 71154 148640 Add 71156 148646 Add 71162 148655 Add 71163 148657 Add 71173 148679 Add 71174 148680 Add 71181 148695 Add 71188 148704 Add 71197 148721 Add 71198 148722 Add 71198 148723 Add 71199 148724 Add 71207 148739 Add 71207 148740 Add 71212 148748 Add 71215 148754 Add 71221 148771 Add 71222 148773 Add 71223 148774 Add 71231 148790 Add 71238 148805 Add 71239 148807 Add 71241 148813 Add 71241 148814 Add 71249 148830 Add 71254 148839 Add 71254 148840 Add 71255 148841 Add 71263 148854 Add 71271 148874 Add 71280 148888 Add 71281 148889 Add 71281 148890 Add 71281 148891 Add 71290 148913 Add 71290 148914 Add 71291 148915 Add 71296 148924 Add 71299 148929 Add 71304 148938 Add 71306 148941 Add 71313 148956 Add 71314 148957 Add 71322 148972 Add 71322 148973 Add 71322 148974 Add 71338 148997 Add 71338 148999 Add 71346 149013 Add 71346 149014 Add 71347 149015 Add 71347 149016 Add 71349 149021 Add 71357 149032 Add 71363 149041 Add 71364 149046 Add 71365 149047 Add 71365 149048 Add 71366 149049 Add 71373 149072 Add 71373 149073 Add 71374 149074 Add 71374 149075 Add 71379 149088 Add 71379 149089 Add 71380 149090 Add 71380 149091 Add 71388 149107 Add 71388 149108 Add 71391 149114 Add 71397 149131 Add 71398 149133 Add 71740 149892 Add 71742 149893 Add 71757 149999 Add 71758 150000 Add 71759 150001 Add 71765 150007 Add 71766 150008 Add 71766 150009 Add 71767 150010 Add 71767 150011 Add 71774 150016 Add 71775 150017 Add 71775 150018 Add 71775 150019 Add 71781 150025 Add 71784 150032 Add 71784 150035 Add 71789 150041 Add 71790 150042 Add 71790 150043 Add 71790 150044 Add 71799 150083 Add 71800 150084 Add 71800 150085 Add 71808 150091 Add 71808 150092 Add 71809 150094 Add 71814 150103 Add 71822 150116 Add 71824 150118 Add 71824 150119 Add 71824 150124 Add 71824 150125 Add 71824 150126 Add 71824 150133 Add 71824 150135 Add 71824 150136 Add 71833 150150 Add 71833 150151 Add 71834 150152 Add 71840 150158 Add 71841 150159 Add 71849 150175 Add 71850 150176 Add 71851 150177 Add 71851 150178 Add 71865 150200 Add 71866 150201 Add 71867 150203 Add 71874 150216 Add 71874 150217 Add 71875 150219 Add 71876 150220 Add 71881 150228 Add 71884 150234 Add 71884 150235 Add 71889 150244 Add 71898 150261 Add 71906 150270 Add 71915 150283 Add 71916 150285 Add 71923 150293 Add 71924 150294 Add 71925 150295 Add 71931 150302 Add 71933 150303 Add 71939 150311 Add 71949 150325 Add 71950 150327 Add 71956 150334 Add 71959 150336 Add 71964 150343 Add 71965 150344 Add 71967 150350 Add 71968 150351 Add 71968 150352 Add 71968 150353 Add 71973 150359 Add 71974 150360 Add 71974 150361 Add 71974 150362 Add 70592 147085 Add 70592 147086 Add 70598 147092 Add 70599 147093 Add 70599 147094 Add 70606 147108 Add 70606 147109 Add 70609 147110 Add 70617 147133 Add 70617 147134 Add 70617 147135 Add 70617 147136 Add 70623 147152 Add 70624 147153 Add 70632 147175 Add 70635 147183 Add 70635 147184 Add 70640 147193 Add 70648 147209 Add 70649 147210 Add 70651 147217 Add 70651 147218 Add 70658 147234 Add 70658 147235 Add 70658 147236 Add 70666 147267 Add 70666 147268 Add 70674 147283 Add 70674 147284 Add 70674 147285 Add 70674 147286 Add 70677 147295 Add 70682 147301 Add 70682 147302 Add 70682 147308 Add 70683 147310 Add 70683 147311 Add 70690 147325 Add 70698 147333 Add 70698 147334 Add 70699 147336 Add 70700 147342 Add 70702 147343 Add 70707 147362 Add 70718 147385 Add 70723 147395 Add 70725 147401 Add 70725 147403 Add 70734 147418 Add 70734 147419 Add 70740 147426 Add 70740 147427 Add 70741 147428 Add 70742 147429 Add 70751 147442 Add 70751 147443 Add 70751 147444 Add 70751 147445 Add 70785 147502 Add 70793 147518 Add 70794 147519 Add 70799 147526 Add 70800 147527 Add 70801 147529 Add 70807 147535 Add 70808 147537 Add 70810 147542 Add 70816 147551 Add 70817 147552 Add 70824 147562 Add 70827 147567 Add 70833 147576 Add 70833 147577 Add 70835 147579 Add 70840 147584 Add 70842 147586 Add 70842 147587 Add 70842 147592 Add 70842 147594 Add 70842 147595 Add 70842 147596 Add 70842 147601 Add 70842 147602 Add 70842 147603 Add 70842 147604 Add 70851 147618 Add 70852 147619 Add 70875 147646 Add 70876 147651 Add 70877 147653 Add 70884 147662 Add 70892 147670 Add 70902 147684 Add 70910 147693 Add 70916 147703 Add 70925 147721 Add 70926 147726 Add 70926 147727 Add 70926 147728 Add 70926 147729 Add 70926 147735 Add 70926 147736 Add 70932 147745 Add 70933 147746 Add 70935 147779 Add 70935 147788 Add 70941 147804 Add 70949 147820 Add 70950 147821 Add 70952 147826 Add 70952 147827 Add 70952 147828 Add 70958 147837 Add 70961 147844 Add 70961 147845 Add 70969 147868 Add 70974 147879 Add 70975 147880 Add 70983 147894 Add 70985 147896 Add 70993 147912 Add 70994 147920 Add 70994 147922 Add 70999 147930 Add 71001 147935 Add 71001 147936 Add 71002 147937 Add 71002 147938 Add 71008 147952 Add 71009 147953 Add 71009 147954 Add 71009 147955 Add 71011 147960 Add 71017 147969 Add 71017 147971 Add 71026 147994 Add 71026 147995 Add 71033 148012 Add 71033 148013 Add 71036 148021 Add 71043 148035 Add 71044 148036 Add 71044 148039 Add 71050 148054 Add 71053 148062 Add 71060 148077 Add 71061 148080 Add 71066 148094 Add 71067 148095 Add 71067 148096 Add 71069 148102 Add 71074 148111 Add 71075 148112 Add 71075 148113 Add 71077 148119 Add 71077 148120 Add 71078 148121 Add 71085 148138 Add 71091 148422 Add 71093 148431 Add 71093 148437 Add 71093 148438 Add 71093 148440 Add 71093 148453 Add 71094 148463 Add 71094 148465 Add 71100 148531 Add 71100 148532 Add 71102 148538 Add 71102 148539 Add 71110 148555 Add 71111 148556 Add 71127 148588 Add 71128 148589 Add 71134 148598 Add 71141 148615 Add 71144 148621 Add 71150 148631 Add 71150 148632 Add 71152 148637 Add 71153 148638 Add 71166 148663 Add 71166 148664 Add 71170 148673 Add 71170 148674 Add 71175 148682 Add 71176 148687 Add 71177 148688 Add 71178 148690 Add 71183 148697 Add 71193 148712 Add 71193 148713 Add 71194 148715 Add 71200 148729 Add 71201 148732 Add 71211 148746 Add 71216 148756 Add 71216 148757 Add 71226 148780 Add 71226 148781 Add 71233 148797 Add 71242 148816 Add 71245 148823 Add 71245 148824 Add 71251 148832 Add 71258 148847 Add 71258 148848 Add 71259 148849 Add 71267 148863 Add 71268 148864 Add 71268 148865 Add 71269 148866 Add 71269 148871 Add 71270 148873 Add 71275 148879 Add 71277 148880 Add 71283 148896 Add 71284 148897 Add 71284 148898 Add 71284 148899 Add 71286 148904 Add 71287 148906 Add 71287 148907 Add 71292 148916 Add 71294 148922 Add 71295 148923 Add 71300 148930 Add 71301 148931 Add 71302 148932 Add 71308 148947 Add 71308 148948 Add 71312 148955 Add 71317 148963 Add 71317 148964 Add 71318 148965 Add 71326 148980 Add 71327 148982 Add 71328 148983 Add 71334 148990 Add 71335 148991 Add 71342 149006 Add 71342 149007 Add 71343 149008 Add 71350 149022 Add 71351 149023 Add 71352 149024 Add 71352 149025 Add 71360 149038 Add 71362 149040 Add 71367 149056 Add 71367 149057 Add 71369 149064 Add 71370 149065 Add 71370 149066 Add 71375 149080 Add 71376 149081 Add 71376 149082 Add 71376 149083 Add 71384 149097 Add 71384 149098 Add 71384 149099 Add 71384 149100 Add 71386 149105 Add 71392 149116 Add 71394 149123 Add 71395 149124 Add 71395 149125 Add 71736 149882 Add 71738 149885 Add 71743 149894 Add 71751 149986 Add 71752 149991 Add 71753 149992 Add 71753 149993 Add 71754 149994 Add 71760 150002 Add 71780 150024 Add 71786 150036 Add 71794 150074 Add 71794 150075 Add 71794 150076 Add 71801 150086 Add 71813 150099 Add 71813 150100 Add 71813 150101 Add 71813 150102 Add 71818 150108 Add 71819 150109 Add 71820 150110 Add 71820 150111 Add 71827 150141 Add 71828 150142 Add 71828 150143 Add 71828 150144 Add 71835 150153 Add 71843 150168 Add 71844 150169 Add 71854 150183 Add 71854 150184 Add 71855 150185 Add 71861 150191 Add 71862 150192 Add 71862 150193 Add 71871 150209 Add 71880 150226 Add 71880 150227 Add 71885 150236 Add 71887 150241 Add 71888 150243 Add 71894 150251 Add 71896 150252 Add 71896 150253 Add 71897 150258 Add 71897 150260 Add 71902 150266 Add 71903 150267 Add 71904 150268 Add 71905 150269 Add 71910 150275 Add 71911 150277 Add 71912 150278 Add 71922 150292 Add 71930 150301 Add 71938 150308 Add 71938 150309 Add 71938 150310 Add 71943 150317 Add 71944 150319 Add 71945 150320 Add 71972 150358 Add 71977 150370 Add 71985 150378 Add 71987 150383 Add 71987 150387 Add 71987 150400 Add 71987 150401 Add 71996 150418 Add 71997 150419 Add 72004 150434 Add 72004 150436 Add 71974 150367 Add 71974 150369 Add 71982 150375 Add 71983 150376 Add 71984 150377 Add 71991 150410 Add 71992 150411 Add 71993 150412 Add 72000 150426 Add 72001 150427 Add 72001 150428 Add 72006 150470 Add 72008 150475 Add 72008 150476 Add 72008 150477 Add 72009 150478 Add 72009 150479 Add 72015 150543 Add 72015 150544 Add 72024 150601 Add 72026 150603 Add 72059 150642 Add 72068 150651 Add 72073 150661 Add 72073 150662 Add 72090 150679 Add 72101 150693 Add 72101 150694 Add 72107 150702 Add 72109 150704 Add 72116 150726 Add 72117 150727 Add 72126 150743 Add 72132 150760 Add 72133 150761 Add 72133 150762 Add 72151 150785 Add 72158 150794 Add 72158 150795 Add 72776 151679 Add 72777 151680 Add 72783 151688 Add 72792 151704 Add 72800 151714 Add 72809 151724 Add 72819 151737 Add 72819 151738 Add 72827 151747 Add 72828 151748 Add 72833 151754 Add 72834 151755 Add 72835 151757 Add 72845 151772 Add 72852 151780 Add 72861 151805 Add 72862 151807 Add 72868 151821 Add 72868 151822 Add 72868 151823 Add 72868 151824 Add 72870 151830 Add 72870 151831 Add 72870 151832 Add 72877 151846 Add 72878 151847 Add 72886 151863 Add 72892 151873 Add 72893 151874 Add 72926 151916 Add 72950 151938 Add 72976 151971 Add 72977 151972 Add 72984 151982 Add 72985 151983 Add 72987 151988 Add 72987 151990 Add 73003 152021 Add 73003 152022 Add 73003 152023 Add 73010 152030 Add 73011 152031 Add 73012 152032 Add 73012 152033 Add 73026 152048 Add 73027 152050 Add 73037 152064 Add 73046 152075 Add 73051 152080 Add 73052 152081 Add 73059 152090 Add 73060 152091 Add 73070 152106 Add 73071 152107 Add 73077 152116 Add 73084 152125 Add 73087 152130 Add 73087 152131 Add 73092 152138 Add 73093 152139 Add 73095 152141 Add 73101 152147 Add 73102 152149 Add 73102 152150 Add 73112 152163 Add 73120 152180 Add 73120 152181 Add 73126 152189 Add 73126 152190 Add 73126 152191 Add 73127 152192 Add 73143 152214 Add 73144 152216 Add 73162 152240 Add 73162 152241 Add 73162 152242 Add 73168 152247 Add 73170 152248 Add 73171 152250 Add 73176 152258 Add 73196 152292 Add 73202 152300 Add 73209 152314 Add 73211 152323 Add 73212 152324 Add 73236 152367 Add 73238 152372 Add 73246 152384 Add 73262 152406 Add 73271 152416 Add 73277 152424 Add 73277 152425 Add 73295 152451 Add 73337 152506 Add 73338 152509 Add 73354 152540 Add 73354 152541 Add 73354 152548 Add 73360 152558 Add 73362 152565 Add 73393 152607 Add 73436 152643 Add 73472 152683 Add 73478 152693 Add 73502 152725 Add 73503 152726 Add 73527 152757 Add 73528 152758 Add 73528 152759 Add 73536 152773 Add 73537 152774 Add 73537 152775 Add 73544 152784 Add 73560 152808 Add 73577 152835 Add 73580 152840 Add 73589 152850 Add 73589 152851 Add 73596 152860 Add 73597 152866 Add 73619 152892 Add 73644 152933 Add 73656 152952 Add 73680 152985 Add 73686 152994 Add 70437 146013 Add 70437 146025 Add 70437 146030 Add 70437 146039 Add 70437 146040 Add 70437 146041 Add 70437 146048 Add 70444 146165 Add 70444 146167 Add 70446 146172 Add 70447 146174 Add 70447 146175 Add 70452 146199 Add 70452 146200 Add 70453 146205 Add 70453 146206 Add 70453 146207 Add 70453 146208 Add 70453 146209 Add 70454 146214 Add 70454 146215 Add 70454 146216 Add 70454 146217 Add 70463 146624 Add 70463 146625 Add 70463 146626 Add 70463 146632 Add 70469 146660 Add 70469 146665 Add 70469 146667 Add 70469 146668 Add 70469 146673 Add 70469 146674 Add 70469 146675 Add 70469 146676 Add 70471 146690 Add 70478 146717 Add 70479 146724 Add 70479 146725 Add 70479 146726 Add 70479 146727 Add 70480 146734 Add 70480 146740 Add 70480 146748 Add 70480 146749 Add 70480 146750 Add 70480 146751 Add 70480 146752 Add 70480 146757 Add 70480 146759 Add 70480 146760 Add 70480 146765 Add 70480 146766 Add 70480 146767 Add 70480 146768 Add 70480 146774 Add 70480 146775 Add 70480 146776 Add 70480 146777 Add 70489 146801 Add 70489 146802 Add 70495 146826 Add 70497 146832 Add 70497 146834 Add 70503 146858 Add 70503 146859 Add 70504 146860 Add 70510 146875 Add 70514 146891 Add 70514 146892 Add 70519 146907 Add 70519 146908 Add 70522 146916 Add 70522 146917 Add 70522 146924 Add 70522 146925 Add 70527 146942 Add 70527 146943 Add 70528 146944 Add 70530 146951 Add 70536 146968 Add 70537 146974 Add 70538 146975 Add 70538 146976 Add 70562 147034 Add 70563 147035 Add 70569 147050 Add 70572 147052 Add 70577 147059 Add 70578 147060 Add 70578 147061 Add 70579 147066 Add 70580 147067 Add 71398 149138 Add 71399 149139 Add 71399 149140 Add 71399 149141 Add 71405 149156 Add 71405 149157 Add 71406 149158 Add 71408 149164 Add 71408 149165 Add 71408 149166 Add 71414 149181 Add 71414 149182 Add 71415 149183 Add 71421 149199 Add 71421 149200 Add 71423 149205 Add 71423 149206 Add 71424 149207 Add 71424 149208 Add 71432 149223 Add 71433 149225 Add 71438 149247 Add 71439 149248 Add 71439 149249 Add 71439 149250 Add 71447 149272 Add 71448 149274 Add 71449 149275 Add 71457 149289 Add 71458 149290 Add 71463 149298 Add 71464 149299 Add 71466 149300 Add 71471 149309 Add 71475 149314 Add 71480 149323 Add 71481 149324 Add 71488 149334 Add 71491 149340 Add 71497 149356 Add 71497 149357 Add 71498 149358 Add 71498 149359 Add 71505 149366 Add 71505 149367 Add 71507 149372 Add 71507 149373 Add 71508 149374 Add 71513 149383 Add 71522 149401 Add 71524 149406 Add 71530 149414 Add 71531 149415 Add 71531 149416 Add 71540 149431 Add 71541 149432 Add 71541 149433 Add 71549 149448 Add 71555 149456 Add 71557 149459 Add 71558 149464 Add 71558 149465 Add 71558 149466 Add 71564 149481 Add 71565 149483 Add 71565 149484 Add 71572 149500 Add 71572 149501 Add 71574 149506 Add 71575 149507 Add 71580 149518 Add 71582 149523 Add 71583 149524 Add 71591 149539 Add 71591 149540 Add 71591 149541 Add 71591 149542 Add 71597 149551 Add 71600 149557 Add 71600 149558 Add 71600 149559 Add 71605 149567 Add 71605 149568 Add 72004 150437 Add 72004 150450 Add 72004 150452 Add 72004 150459 Add 72005 150461 Add 72005 150462 Add 72005 150467 Add 72005 150469 Add 72012 150487 Add 72014 150501 Add 72014 150502 Add 72014 150528 Add 72014 150535 Add 72019 150595 Add 72027 150604 Add 72047 150617 Add 72047 150618 Add 72047 150619 Add 72047 150620 Add 72047 150627 Add 72047 150628 Add 72052 150634 Add 72053 150635 Add 72054 150636 Add 72054 150637 Add 72060 150643 Add 72061 150644 Add 72062 150645 Add 72062 150646 Add 72069 150652 Add 72069 150653 Add 72070 150654 Add 72072 150660 Add 72077 150668 Add 72088 150677 Add 72102 150695 Add 72102 150696 Add 72111 150710 Add 72111 150711 Add 72113 150718 Add 72113 150719 Add 72113 150720 Add 72119 150729 Add 72122 150734 Add 72122 150735 Add 72122 150736 Add 72122 150737 Add 72122 150738 Add 72128 150745 Add 72128 150746 Add 72128 150751 Add 72128 150752 Add 72128 150753 Add 72128 150754 Add 72136 150769 Add 72137 150770 Add 72144 150776 Add 72152 150786 Add 72161 150801 Add 72162 150802 Add 72162 150803 Add 72163 150804 Add 72787 151696 Add 72789 151697 Add 72790 151699 Add 72806 151720 Add 72806 151721 Add 72807 151722 Add 72838 151762 Add 72839 151763 Add 72855 151788 Add 72865 151814 Add 72866 151816 Add 72873 151838 Add 72873 151839 Add 72883 151857 Add 72888 151866 Add 72898 151880 Add 72915 151904 Add 72958 151946 Add 72958 151947 Add 72958 151948 Add 72963 151955 Add 72971 151964 Add 72971 151965 Add 72982 151979 Add 72990 151998 Add 72991 151999 Add 72996 152008 Add 72998 152013 Add 72999 152014 Add 73006 152024 Add 73016 152038 Add 73025 152047 Add 73031 152057 Add 73063 152096 Add 73064 152098 Add 73064 152099 Add 73072 152108 Add 73074 152113 Add 73088 152132 Add 73088 152133 Add 73113 152164 Add 73113 152165 Add 73113 152166 Add 73116 152172 Add 73116 152173 Add 73116 152174 Add 73117 152175 Add 73125 152188 Add 73130 152197 Add 73131 152198 Add 73131 152199 Add 73133 152200 Add 73148 152222 Add 73156 152231 Add 73157 152232 Add 73158 152233 Add 73173 152255 Add 73180 152264 Add 73189 152280 Add 73189 152281 Add 73191 152283 Add 73200 152297 Add 73206 152308 Add 73216 152330 Add 73217 152333 Add 73225 152348 Add 73225 152350 Add 73234 152364 Add 73234 152365 Add 73258 152397 Add 73289 152442 Add 73307 152464 Add 73314 152475 Add 73314 152476 Add 73317 152483 Add 73325 152492 Add 73332 152500 Add 73347 152524 Add 73348 152526 Add 73350 152532 Add 73350 152534 Add 73356 152551 Add 73364 152567 Add 73367 152573 Add 73372 152581 Add 73408 152615 Add 73415 152624 Add 73425 152632 Add 73433 152640 Add 73440 152649 Add 73441 152650 Add 73441 152651 Add 73465 152675 Add 73474 152685 Add 73493 152717 Add 73500 152724 Add 73531 152765 Add 73565 152817 Add 73566 152818 Add 73581 152841 Add 73608 152875 Add 73609 152876 Add 73615 152884 Add 73624 152899 Add 73626 152901 Add 73626 152902 Add 73633 152915 Add 73640 152927 Add 73643 152932 Add 73649 152940 Add 73658 152957 Add 73667 152966 Add 73668 152967 Add 73675 152976 Add 73685 152993 Add 73690 153002 Add 73698 153017 Add 73700 153019 Add 70441 146074 Add 70441 146090 Add 70442 146141 Add 70442 146156 Add 70451 146198 Add 70456 146223 Add 70456 146232 Add 70456 146234 Add 70456 146239 Add 70456 146240 Add 70456 146242 Add 70456 146248 Add 70456 146249 Add 70456 146250 Add 70456 146255 Add 70456 146256 Add 70456 146257 Add 70456 146259 Add 70456 146264 Add 70456 146265 Add 70456 146266 Add 70456 146267 Add 70456 146272 Add 70456 146273 Add 70456 146274 Add 70456 146275 Add 70456 146282 Add 70456 146283 Add 70456 146284 Add 70456 146290 Add 70456 146291 Add 70456 146297 Add 70456 146298 Add 70456 146299 Add 70456 146306 Add 70456 146307 Add 70456 146308 Add 70456 146309 Add 70457 146323 Add 70457 146324 Add 70457 146325 Add 70457 146326 Add 70457 146331 Add 70457 146333 Add 70457 146339 Add 70457 146341 Add 70457 146342 Add 70457 146347 Add 70457 146350 Add 70457 146351 Add 70457 146356 Add 70457 146364 Add 70457 146367 Add 70457 146372 Add 70457 146373 Add 70457 146374 Add 70457 146375 Add 70457 146383 Add 70457 146384 Add 70457 146389 Add 70457 146390 Add 70457 146391 Add 70457 146399 Add 70457 146400 Add 70457 146406 Add 70457 146407 Add 70457 146408 Add 70457 146409 Add 70457 146415 Add 70457 146416 Add 70457 146423 Add 70457 146424 Add 70457 146425 Add 70457 146426 Add 70457 146431 Add 70457 146434 Add 70457 146439 Add 70457 146440 Add 70457 146441 Add 70457 146442 Add 70457 146456 Add 70457 146457 Add 70457 146458 Add 70457 146465 Add 70457 146466 Add 70457 146475 Add 70457 146481 Add 70457 146482 Add 70457 146483 Add 70457 146484 Add 70457 146490 Add 70457 146491 Add 70457 146492 Add 70457 146498 Add 70457 146509 Add 70457 146517 Add 70457 146523 Add 70458 146524 Add 70458 146525 Add 70458 146526 Add 70458 146532 Add 70458 146534 Add 70458 146541 Add 70458 146542 Add 70458 146543 Add 70458 146548 Add 70458 146551 Add 70458 146556 Add 70458 146557 Add 70458 146558 Add 70458 146559 Add 70458 146565 Add 70458 146566 Add 70458 146567 Add 70458 146568 Add 70458 146573 Add 70458 146574 Add 70458 146575 Add 70458 146576 Add 70458 146583 Add 70458 146584 Add 70458 146585 Add 70459 146598 Add 70459 146599 Add 70459 146600 Add 70459 146606 Add 70459 146607 Add 70459 146608 Add 70459 146609 Add 70459 146610 Add 70459 146615 Add 70459 146616 Add 70459 146617 Add 70459 146618 Add 70467 146650 Add 70468 146657 Add 70468 146658 Add 70468 146659 Add 70474 146699 Add 70474 146700 Add 70475 146710 Add 70476 146716 Add 70481 146783 Add 70481 146785 Add 70482 146791 Add 70484 146792 Add 70490 146807 Add 70490 146809 Add 70491 146815 Add 70492 146816 Add 70492 146817 Add 70493 146819 Add 70500 146844 Add 70501 146851 Add 70506 146866 Add 70506 146867 Add 70507 146869 Add 70509 146874 Add 70515 146899 Add 70516 146900 Add 71606 149573 Add 71607 149575 Add 71614 149593 Add 71622 149608 Add 71625 149616 Add 71630 149626 Add 71632 149631 Add 71633 149633 Add 71633 149634 Add 71639 149673 Add 71639 149674 Add 71639 149675 Add 71639 149676 Add 71639 149682 Add 71639 149683 Add 71639 149684 Add 71639 149685 Add 71639 149690 Add 71639 149693 Add 71642 149698 Add 71642 149699 Add 71642 149700 Add 71642 149701 Add 71649 149717 Add 71650 149718 Add 71655 149725 Add 71655 149726 Add 71656 149732 Add 71656 149733 Add 71656 149734 Add 71657 149735 Add 71665 149748 Add 71666 149749 Add 71666 149751 Add 71666 149752 Add 71666 149757 Add 71666 149758 Add 71666 149759 Add 71666 149760 Add 71666 149765 Add 71666 149767 Add 71666 149768 Add 71666 149773 Add 71666 149774 Add 71667 149775 Add 71672 149782 Add 71673 149783 Add 71674 149784 Add 71680 149793 Add 71681 149799 Add 71682 149800 Add 71683 149802 Add 71689 149809 Add 71689 149810 Add 71692 149815 Add 71692 149816 Add 71697 149824 Add 71700 149832 Add 71707 149840 Add 71708 149842 Add 71709 149843 Add 71717 149857 Add 71724 149865 Add 71725 149866 Add 71725 149867 Add 72167 150810 Add 72168 150811 Add 72168 150812 Add 72182 150819 Add 72182 150820 Add 72190 150830 Add 72193 150835 Add 72200 150843 Add 72201 150844 Add 72207 150853 Add 72208 150854 Add 72209 150855 Add 72215 150863 Add 72217 150868 Add 72224 150879 Add 72224 150880 Add 72232 150887 Add 72233 150888 Add 72242 150903 Add 72242 150904 Add 72243 150905 Add 72248 150921 Add 72251 150928 Add 72252 150929 Add 72252 150930 Add 72257 150937 Add 72266 150953 Add 72266 150954 Add 72267 150955 Add 72268 150962 Add 72274 150971 Add 72275 150972 Add 72282 150979 Add 72283 150980 Add 72293 150995 Add 72308 151002 Add 72309 151004 Add 72310 151005 Add 72326 151027 Add 72332 151035 Add 72333 151038 Add 72343 151055 Add 72349 151063 Add 72357 151069 Add 72357 151071 Add 72358 151072 Add 72365 151078 Add 72366 151080 Add 72385 151104 Add 72391 151114 Add 72394 151119 Add 72400 151128 Add 72400 151129 Add 72400 151136 Add 72401 151137 Add 72409 151163 Add 72424 151177 Add 72442 151197 Add 72459 151227 Add 72459 151228 Add 72459 151229 Add 72476 151244 Add 72476 151245 Add 72483 151253 Add 72484 151254 Add 72485 151255 Add 72486 151256 Add 72500 151272 Add 72508 151288 Add 72509 151289 Add 72516 151295 Add 72517 151296 Add 72524 151303 Add 72525 151304 Add 72525 151305 Add 72526 151306 Add 72533 151314 Add 72541 151328 Add 72541 151329 Add 72544 151336 Add 72550 151344 Add 72559 151355 Add 72560 151356 Add 72592 151403 Add 72593 151405 Add 72593 151406 Add 72599 151414 Add 72611 151438 Add 72627 151465 Add 72641 151489 Add 72653 151512 Add 72653 151513 Add 72658 151523 Add 72668 151537 Add 72684 151563 Add 72686 151565 Add 72691 151572 Add 72710 151596 Add 72711 151598 Add 72716 151605 Add 72742 151632 Add 72750 151640 Add 72753 151645 Add 72759 151655 Add 72761 151657 Add 72767 151665 Add 73772 153167 Add 73786 153191 Add 73787 153193 Add 73794 153208 Add 73811 153241 Add 73813 153244 Add 73823 153266 Add 73837 153300 Add 73839 153303 Add 73846 153316 Add 73846 153317 Add 73847 153318 Add 73853 153325 Add 73854 153326 Add 73863 153336 Add 73880 153368 Add 73881 153369 Add 73895 153387 Add 73905 153400 Add 73906 153401 Add 73913 153418 Add 73922 153426 Add 73922 153428 Add 73929 153434 Add 73929 153435 Add 73929 153436 Add 73930 153442 Add 73955 153476 Add 73963 153485 Add 73964 153486 Add 73964 153487 Add 73970 153493 Add 73971 153494 Add 73972 153495 Add 73978 153501 Add 73988 153510 Add 73990 153512 Add 73998 153520 Add 74020 153552 Add 74021 153553 Add 74031 153568 Add 74031 153569 Add 74037 153577 Add 74057 153604 Add 74062 153611 Add 74073 153628 Add 74073 153629 Add 74105 153660 Add 74106 153662 Add 74113 153668 Add 74149 153704 Add 74156 153711 Add 74163 153720 Add 74164 153721 Add 74165 153728 Add 74165 153736 Add 74165 153737 Add 74189 153743 Add 74190 153744 Add 74196 153761 Add 74197 153762 Add 74197 153763 Add 74214 153793 Add 74215 153796 Add 74222 153811 Add 74222 153812 Add 74223 153818 Add 74223 153819 Add 74223 153821 Add 74224 153826 Add 74230 153852 Add 74230 153853 Add 74231 153863 Add 74237 153880 Add 74240 153886 Add 74246 153911 Add 74246 153912 Add 74247 153918 Add 74248 153920 Add 74249 153929 Add 74249 153930 Add 74254 153943 Add 74257 153945 Add 74296 153980 Add 74299 153985 Add 74306 153993 Add 74306 153994 Add 74307 153995 Add 74314 154002 Add 74316 154004 Add 74321 154021 Add 74322 154022 Add 74329 154169 Add 74330 154170 Add 73747 153119 Add 73756 153135 Add 73761 153144 Add 74405 154262 Add 74407 154263 Add 74413 154269 Add 74413 154270 Add 74413 154271 Add 74413 154272 Add 74423 154287 Add 74423 154289 Add 74423 154294 Add 74424 154295 Add 74433 154305 Add 74438 154311 Add 74439 154312 Add 74441 154314 Add 74446 154320 Add 74447 154321 Add 74458 154338 Add 74474 154356 Add 74481 154370 Add 74497 154404 Add 74513 154429 Add 74546 154464 Add 74556 154471 Add 74622 154531 Add 74658 154563 Add 74722 154622 Add 74759 154653 Add 74766 154657 Add 74772 154663 Add 74773 154664 Add 74774 154665 Add 74790 154682 Add 74797 154688 Add 74847 154732 Add 74856 154737 Add 74867 154745 Add 74872 154749 Add 74881 154757 Add 74916 154796 Add 74917 154797 Add 74923 154805 Add 74923 154807 Add 74931 154813 Add 74933 154814 Add 74939 154823 Add 74948 154829 Add 74951 154832 Add 74964 154840 Add 74973 154846 Add 74983 154847 Add 74989 154848 Add 74991 154849 Add 75000 154854 Add 75015 154866 Add 75024 154879 Add 75032 154888 Add 75032 154889 Add 75034 154890 Add 75039 155123 Add 75039 155124 Add 75040 155125 Add 75058 155147 Add 75058 155148 Add 75065 155158 Add 75073 155172 Add 75074 155175 Add 75082 155182 Add 75634 155641 Add 75636 155642 Add 75644 155649 Add 75649 155656 Add 75650 155657 Add 75651 155658 Add 75658 155700 Add 75659 155701 Add 75661 155706 Add 75668 155723 Add 75669 155724 Add 75686 155748 Add 75709 155817 Add 75710 155818 Add 75717 155826 Add 76368 157779 Add 76371 157782 Add 76376 157787 Add 76378 157789 Add 76410 157815 Add 76421 157821 Add 76435 157832 Add 76437 157838 Add 76445 157912 Add 76446 157913 Add 76446 157914 Add 76447 157915 Add 76453 157922 Add 76461 158029 Add 76471 158047 Add 76471 158048 Add 76471 158049 Add 76471 158054 Add 76471 158056 Add 76471 158073 Add 76471 158081 Add 76471 158082 Add 76471 158096 Add 76471 158097 Add 76471 158098 Add 76471 158107 Add 76471 158121 Add 76471 158122 Add 76471 158147 Add 76471 158149 Add 76471 158173 Add 76471 158188 Add 76471 158191 Add 76471 158206 Add 76471 158208 Add 76471 158213 Add 76471 158214 Add 76471 158222 Add 76471 158223 Add 76471 158224 Add 76471 158232 Add 76471 158233 Add 76471 158256 Add 76471 158258 Add 76471 158264 Add 76471 158266 Add 76471 158305 Add 76471 158307 Add 76471 158314 Add 76471 158317 Add 76471 158325 Add 76471 158331 Add 76471 158339 Add 76471 158347 Add 76471 158348 Add 76471 158349 Add 76471 158365 Add 76471 158366 Add 76471 158374 Add 76471 158380 Add 76471 158382 Add 76471 158383 Add 76471 158390 Add 76471 158391 Add 76471 158397 Add 76471 158399 Add 76471 158400 Add 76471 158406 Add 76471 158408 Add 76471 158409 Add 76471 158416 Add 76471 158417 Add 76471 158422 Add 76471 158423 Add 76471 158424 Add 76471 158425 Add 76471 158432 Add 76471 158433 Add 76471 158434 Add 76471 158439 Add 76471 158441 Add 76471 158442 Add 76471 158447 Add 76471 158448 Add 76471 158449 Add 76471 158450 Add 76471 158456 Add 76471 158458 Add 76471 158459 Add 76471 158465 Add 76471 158466 Add 76471 158467 Add 76471 158472 Add 76471 158473 Add 76471 158474 Add 76471 158482 Add 76471 158483 Add 76471 158484 Add 76471 158489 Add 76471 158498 Add 76471 158499 Add 76471 158500 Add 76471 158501 Add 76471 158506 Add 76471 158507 Add 76471 158508 Add 76471 158509 Add 76471 158514 Add 76471 158515 Add 76471 158522 Add 76471 158523 Add 76471 158524 Add 76471 158526 Add 76471 158531 Add 76471 158532 Add 76471 158533 Add 76471 158534 Add 76471 158540 Add 76471 158541 Add 76471 158542 Add 76471 158547 Add 76471 158550 Add 76471 158551 Add 76471 158556 Add 76471 158557 Add 76471 158559 Add 76471 158567 Add 76471 158573 Add 76471 158574 Add 76471 158575 Add 76471 158576 Add 76471 158581 Add 76471 158582 Add 76471 158584 Add 76471 158590 Add 76471 158592 Add 76471 158599 Add 76471 158601 Add 76471 158607 Add 76471 158608 Add 76471 158609 Add 76471 158614 Add 76471 158615 Add 76471 158616 Add 76471 158617 Add 76471 158618 Add 76471 158623 Add 76471 158624 Add 76471 158626 Add 76471 158631 Add 76471 158633 Add 76471 158640 Add 76471 158641 Add 76471 158649 Add 76471 158650 Add 76471 158651 Add 76471 158658 Add 76471 158664 Add 76471 158666 Add 76471 158667 Add 76471 158668 Add 76471 158673 Add 76471 158674 Add 76471 158675 Add 76471 158682 Add 76471 158683 Add 76471 158690 Add 76471 158692 Add 76471 158698 Add 76471 158699 Add 76471 158701 Add 76471 158706 Add 76471 158707 Add 76471 158708 Add 76471 158709 Add 76471 158715 Add 76471 158716 Add 76471 158717 Add 76471 158725 Add 76471 158731 Add 76471 158732 Add 76471 158733 Add 76471 158734 Add 76471 158735 Add 76471 158742 Add 76471 158743 Add 76471 158748 Add 76471 158750 Add 76471 158756 Add 76471 158757 Add 76471 158758 Add 76471 158759 Add 76471 158760 Add 76471 158766 Add 76471 158767 Add 76471 158768 Add 76471 158774 Add 76471 158775 Add 76471 158776 Add 76471 158783 Add 76471 158784 Add 76471 158785 Add 76471 158798 Add 76471 158800 Add 76471 158801 Add 76471 158807 Add 76471 158808 Add 76471 158810 Add 76471 158826 Add 76471 158832 Add 76471 158834 Add 76471 158840 Add 76471 158841 Add 76471 158842 Add 76471 158843 Add 76471 158850 Add 76471 158851 Add 76471 158857 Add 76471 158858 Add 76471 158859 Add 76471 158860 Add 76471 158866 Add 76471 158867 Add 76471 158868 Add 76471 158873 Add 76471 158874 Add 76471 158875 Add 76471 158877 Add 76471 158882 Add 76471 158884 Add 76471 158890 Add 76471 158891 Add 76471 158893 Add 76471 158901 Add 76471 158902 Add 76471 158909 Add 76471 158910 Add 76471 158917 Add 76471 158918 Add 76471 158924 Add 76471 158925 Add 76471 158926 Add 76471 158927 Add 76471 158934 Add 76471 158935 Add 76471 158940 Add 76471 158941 Add 76471 158942 Add 76471 158943 Add 76471 158949 Add 76471 158950 Add 76471 158958 Add 76471 158959 Add 76471 158960 Add 76471 158965 Add 76471 158966 Add 76471 158977 Add 76471 158984 Add 76471 158990 Add 76471 158991 Add 76471 158992 Add 76471 158993 Add 76471 158994 Add 76471 159000 Add 76471 159001 Add 76471 159002 Add 76471 159007 Add 76471 159008 Add 76471 159010 Add 76471 159018 Add 76471 159019 Add 76471 159025 Add 76471 159026 Add 76471 159033 Add 76471 159035 Add 76471 159042 Add 76471 159043 Add 76471 159044 Add 76471 159049 Add 76471 159051 Add 76471 159052 Add 76471 159058 Add 76471 159060 Add 76471 159066 Add 76471 159074 Add 76471 159076 Add 76471 159077 Add 77130 160478 Add 77131 160479 Add 77137 160487 Add 77145 160495 Add 77147 160497 Add 77148 160498 Add 77198 160555 Add 77212 160570 Add 77213 160571 Add 77214 160572 Add 77215 160573 Add 77220 160579 Add 77231 160595 Add 77247 160620 Add 77289 160678 Add 77290 160679 Add 77299 160688 Add 77314 160703 Add 77315 160704 Add 77324 160720 Add 77332 160728 Add 77338 160737 Add 77374 160780 Add 77381 160790 Add 77388 160798 Add 77389 160799 Add 77397 160807 Add 77405 160820 Add 77405 160821 Add 77416 160838 Add 77433 160862 Add 77440 160873 Add 77441 160874 Add 77446 160882 Add 77458 160898 Add 77479 160915 Add 77489 160924 Add 77505 160939 Add 77506 160940 Add 77513 160948 Add 77514 160949 Add 77521 160964 Add 77522 160966 Add 77533 161014 Add 77548 161029 Add 77550 161031 Add 77557 161063 Add 77563 161072 Add 77564 161073 Add 77571 161083 Add 77575 161088 Add 77717 161230 Add 77740 161255 Add 77741 161256 Add 77742 161257 Add 77755 161266 Add 77764 161275 Add 77772 161283 Add 77783 161300 Add 77789 161305 Add 77790 161306 Add 77792 161308 Add 77797 161313 Add 77800 161315 Add 77808 161330 Add 77809 161331 Add 77817 161338 Add 77822 161342 Add 77842 161364 Add 77857 161380 Add 77858 161381 Add 77859 161382 Add 77864 161407 Add 77872 161417 Add 77884 161431 Add 77889 161439 Add 77889 161440 Add 77889 161441 Add 77889 161442 Add 77900 161455 Add 77900 161456 Add 77900 161457 Add 77900 161458 Add 77906 161467 Add 77907 161472 Add 77940 161508 Add 77941 161514 Add 77982 161549 Add 77983 161550 Add 77990 161567 Add 78000 161575 Add 78000 161576 Add 78006 161583 Add 78007 161584 Add 74341 154186 Add 74355 154202 Add 74355 154203 Add 74355 154204 Add 74366 154219 Add 74366 154220 Add 74379 154239 Add 74397 154255 Add 75751 156143 Add 75751 156144 Add 75751 156149 Add 75751 156150 Add 75751 156151 Add 75751 156158 Add 75751 156159 Add 75751 156160 Add 75751 156161 Add 75751 156167 Add 75751 156168 Add 75751 156174 Add 75751 156176 Add 75751 156177 Add 75751 156178 Add 75751 156183 Add 75751 156184 Add 75751 156185 Add 75751 156191 Add 75751 156193 Add 75751 156199 Add 75751 156201 Add 75751 156210 Add 75751 156211 Add 75751 156218 Add 75751 156224 Add 75751 156226 Add 75751 156228 Add 75751 156233 Add 75751 156234 Add 75751 156243 Add 75751 156244 Add 75751 156250 Add 75751 156251 Add 75751 156253 Add 75751 156266 Add 75751 156267 Add 75751 156268 Add 75753 156278 Add 75759 156291 Add 75761 156293 Add 75761 156294 Add 75766 156308 Add 75767 156309 Add 75775 156320 Add 75794 156351 Add 75794 156352 Add 75794 156358 Add 75795 156359 Add 75826 156401 Add 75842 156428 Add 75850 156443 Add 75875 156492 Add 75885 156511 Add 75895 156526 Add 75900 156534 Add 75901 156535 Add 75902 156536 Add 75903 156537 Add 75912 156550 Add 75912 156551 Add 75917 156559 Add 75918 156560 Add 75918 156561 Add 75925 156569 Add 75934 156579 Add 75944 156592 Add 75945 156593 Add 75953 156602 Add 75977 156634 Add 75977 156635 Add 75979 156637 Add 76009 156667 Add 76010 156668 Add 76017 156679 Add 76018 156684 Add 76020 156685 Add 76026 156692 Add 76051 156735 Add 76077 156759 Add 76078 156760 Add 76078 156761 Add 76079 156794 Add 76079 156802 Add 76079 156818 Add 76079 156819 Add 76079 156827 Add 76079 156844 Add 76079 156888 Add 76079 156961 Add 76079 156968 Add 76079 156969 Add 76079 156995 Add 76084 157455 Add 76095 157471 Add 76096 157472 Add 76101 157479 Add 76117 157495 Add 76118 157496 Add 76119 157497 Add 76120 157498 Add 76126 157504 Add 76128 157506 Add 76134 157514 Add 76144 157521 Add 76145 157522 Add 76161 157545 Add 76161 157546 Add 76176 157563 Add 76185 157572 Add 76193 157578 Add 76195 157580 Add 76196 157581 Add 76204 157589 Add 76210 157595 Add 76211 157596 Add 76212 157597 Add 76219 157606 Add 76259 157655 Add 76268 157664 Add 76269 157665 Add 76285 157679 Add 76285 157680 Add 76318 157720 Add 76327 157732 Add 76471 159083 Add 76471 159084 Add 76471 159085 Add 76471 159091 Add 76471 159093 Add 76471 159094 Add 76471 159099 Add 76471 159100 Add 76471 159102 Add 76471 159108 Add 76471 159109 Add 76471 159111 Add 76471 159117 Add 76471 159119 Add 76471 159126 Add 76471 159127 Add 76471 159132 Add 76471 159133 Add 76471 159135 Add 76471 159136 Add 76471 159142 Add 76471 159143 Add 76471 159144 Add 76471 159150 Add 76471 159152 Add 76471 159158 Add 76471 159161 Add 76471 159166 Add 76471 159169 Add 76471 159174 Add 76471 159175 Add 76471 159177 Add 76471 159183 Add 76471 159184 Add 76471 159186 Add 76471 159191 Add 76471 159192 Add 76471 159199 Add 76471 159201 Add 76471 159202 Add 76471 159209 Add 76471 159210 Add 76471 159211 Add 76471 159219 Add 76471 159226 Add 76471 159227 Add 76471 159228 Add 76471 159233 Add 76471 159235 Add 76471 159241 Add 76471 159242 Add 76471 159243 Add 76471 159244 Add 76471 159249 Add 76471 159250 Add 76471 159251 Add 76471 159252 Add 76471 159260 Add 76471 159261 Add 76471 159268 Add 76471 159274 Add 76471 159275 Add 76471 159276 Add 76471 159283 Add 76471 159285 Add 76471 159286 Add 76471 159291 Add 76471 159293 Add 76471 159294 Add 76471 159300 Add 76471 159301 Add 76471 159302 Add 76471 159308 Add 76471 159309 Add 76471 159310 Add 76471 159316 Add 76471 159318 Add 76471 159319 Add 76471 159325 Add 76471 159326 Add 76471 159327 Add 76471 159328 Add 76471 159333 Add 76471 159334 Add 76471 159335 Add 76471 159342 Add 76471 159345 Add 76471 159351 Add 76471 159352 Add 76471 159358 Add 76471 159359 Add 76471 159360 Add 76471 159366 Add 76471 159370 Add 76471 159376 Add 76471 159377 Add 76471 159378 Add 76471 159383 Add 76471 159392 Add 76471 159395 Add 76471 159403 Add 76471 159408 Add 76471 159409 Add 76471 159411 Add 76471 159418 Add 76471 159425 Add 76471 159428 Add 76471 159443 Add 76471 159444 Add 76471 159450 Add 76471 159451 Add 76471 159452 Add 76471 159453 Add 76471 159458 Add 76471 159459 Add 76471 159461 Add 76471 159462 Add 76471 159467 Add 76471 159468 Add 76471 159469 Add 76471 159470 Add 76471 159475 Add 76471 159476 Add 76471 159477 Add 76471 159478 Add 76471 159486 Add 76471 159487 Add 76471 159494 Add 76471 159495 Add 76471 159501 Add 76471 159542 Add 76471 159544 Add 76471 159561 Add 76471 159570 Add 76471 159575 Add 76471 159577 Add 76471 159600 Add 76471 159602 Add 76471 159604 Add 76471 159609 Add 76471 159625 Add 76472 159627 Add 76479 159634 Add 76480 159636 Add 76480 159637 Add 76493 159654 Add 76496 159659 Add 76535 159704 Add 76552 159728 Add 76560 159737 Add 76569 159746 Add 76577 159761 Add 76585 159771 Add 76605 159795 Add 76611 159802 Add 76627 159821 Add 76645 159843 Add 76647 159845 Add 76654 159852 Add 76655 159853 Add 76662 159860 Add 76670 159868 Add 76677 159876 Add 76678 159877 Add 76679 159878 Add 76687 159888 Add 76694 159895 Add 76694 159896 Add 76727 159936 Add 76728 159937 Add 76755 159969 Add 76761 159977 Add 76761 159978 Add 76781 160010 Add 76788 160019 Add 76789 160020 Add 76813 160046 Add 76828 160063 Add 76853 160094 Add 76854 160096 Add 76855 160097 Add 76861 160102 Add 76863 160104 Add 76864 160105 Add 76871 160119 Add 76871 160122 Add 76898 160154 Add 76904 160161 Add 76912 160172 Add 76912 160178 Add 76937 160210 Add 76937 160214 Add 76938 160220 Add 76961 160252 Add 76973 160269 Add 76986 160295 Add 76986 160296 Add 77006 160320 Add 77047 160371 Add 77047 160381 Add 77053 160389 Add 77064 160403 Add 77070 160411 Add 77078 160420 Add 77087 160430 Add 77095 160438 Add 77107 160453 Add 77115 160461 Add 77123 160469 Add 77123 160470 Add 78042 161625 Add 78042 161626 Add 78048 161634 Add 78082 161666 Add 78083 161667 Add 78090 161673 Add 78091 161674 Add 78092 161675 Add 78093 161676 Add 70588 147079 Add 70596 147089 Add 70597 147090 Add 70613 147120 Add 70613 147121 Add 70614 147122 Add 70614 147123 Add 70619 147139 Add 70628 147163 Add 70631 147170 Add 70631 147171 Add 70631 147173 Add 70637 147188 Add 70638 147189 Add 70639 147190 Add 70645 147206 Add 70647 147207 Add 70653 147222 Add 70653 147223 Add 70661 147246 Add 70661 147247 Add 70662 147248 Add 70662 147249 Add 70662 147254 Add 70662 147256 Add 70670 147272 Add 70671 147273 Add 70678 147297 Add 70680 147299 Add 70688 147321 Add 70689 147322 Add 70689 147323 Add 70697 147329 Add 70703 147347 Add 70703 147348 Add 70703 147349 Add 70703 147354 Add 70703 147355 Add 70705 147357 Add 70711 147371 Add 70711 147372 Add 70712 147373 Add 70712 147374 Add 70720 147388 Add 70721 147389 Add 70722 147391 Add 70731 147413 Add 70731 147414 Add 70738 147422 Add 70739 147424 Add 70744 147432 Add 70745 147433 Add 70748 147438 Add 70754 147449 Add 70756 147455 Add 70762 147464 Add 70762 147465 Add 70762 147466 Add 70762 147471 Add 70773 147480 Add 70773 147481 Add 70773 147482 Add 70773 147483 Add 70778 147490 Add 70778 147491 Add 70780 147496 Add 70781 147497 Add 70787 147507 Add 70796 147521 Add 70797 147522 Add 70798 147524 Add 70798 147525 Add 70803 147531 Add 70804 147532 Add 70805 147533 Add 70821 147558 Add 70829 147572 Add 70837 147582 Add 70848 147614 Add 70854 147622 Add 70854 147623 Add 70854 147624 Add 70854 147625 Add 70865 147638 Add 70879 147656 Add 70879 147658 Add 70888 147664 Add 70890 147665 Add 70898 147680 Add 70913 147700 Add 70921 147717 Add 70931 147742 Add 70937 147797 Add 70938 147798 Add 70939 147800 Add 70947 147814 Add 70947 147815 Add 70948 147816 Add 70954 147831 Add 70955 147833 Add 70956 147834 Add 70962 147848 Add 70963 147849 Add 70971 147872 Add 70971 147873 Add 70973 147875 Add 70987 147900 Add 70996 147923 Add 71003 147941 Add 71007 147948 Add 71007 147949 Add 71007 147950 Add 71014 147964 Add 71015 147965 Add 71015 147966 Add 71015 147967 Add 71020 147976 Add 71021 147981 Add 71021 147982 Add 71028 148000 Add 71029 148001 Add 71032 148007 Add 71032 148008 Add 71032 148009 Add 71038 148023 Add 71038 148024 Add 71045 148040 Add 71045 148041 Add 71046 148042 Add 71055 148065 Add 71056 148066 Add 71056 148067 Add 71056 148068 Add 71062 148082 Add 71063 148083 Add 71063 148084 Add 71065 148090 Add 71065 148091 Add 71071 148106 Add 71072 148107 Add 71073 148109 Add 71079 148124 Add 71080 148126 Add 71088 148148 Add 71089 148150 Add 71095 148466 Add 71095 148468 Add 71095 148469 Add 71095 148474 Add 71095 148475 Add 71095 148476 Add 71095 148477 Add 71095 148482 Add 71095 148483 Add 71095 148484 Add 71095 148485 Add 71095 148486 Add 71095 148491 Add 71095 148492 Add 71095 148493 Add 71095 148494 Add 71095 148499 Add 71095 148500 Add 71095 148502 Add 71095 148507 Add 71095 148509 Add 71095 148510 Add 71095 148516 Add 71095 148517 Add 71096 148518 Add 71099 148524 Add 71099 148525 Add 71099 148526 Add 71099 148527 Add 71107 148549 Add 71107 148550 Add 71112 148558 Add 71113 148560 Add 71114 148561 Add 71120 148575 Add 71122 148578 Add 71124 148583 Add 71129 148591 Add 71130 148592 Add 71139 148608 Add 71139 148609 Add 71140 148610 Add 71146 148625 Add 71147 148626 Add 71148 148627 Add 71154 148641 Add 71155 148643 Add 71155 148644 Add 71165 148661 Add 71173 148678 Add 71179 148691 Add 71180 148692 Add 71187 148703 Add 71190 148708 Add 71196 148718 Add 71196 148719 Add 71199 148725 Add 71199 148726 Add 71213 148750 Add 71215 148753 Add 71221 148770 Add 71224 148775 Add 71224 148776 Add 71231 148792 Add 71240 148809 Add 71241 148811 Add 71246 148825 Add 71248 148827 Add 71256 148844 Add 71263 148852 Add 71263 148853 Add 71266 148858 Add 71266 148859 Add 71266 148860 Add 71266 148861 Add 71272 148876 Add 71279 148885 Add 71280 148887 Add 71282 148892 Add 71282 148893 Add 71282 148894 Add 71288 148909 Add 71289 148910 Add 71297 148926 Add 71297 148927 Add 71298 148928 Add 71304 148937 Add 71306 148942 Add 71306 148943 Add 71307 148944 Add 71315 148960 Add 71316 148961 Add 71323 148975 Add 71330 148985 Add 71331 148986 Add 71347 149017 Add 71348 149020 Add 71354 149027 Add 71357 149034 Add 71358 149035 Add 71363 149042 Add 71364 149045 Add 71366 149051 Add 71366 149052 Add 71371 149068 Add 71371 149069 Add 71374 149076 Add 71374 149077 Add 71374 149078 Add 71382 149092 Add 71383 149095 Add 71383 149096 Add 71389 149109 Add 71389 149110 Add 71390 149111 Add 71390 149112 Add 71396 149126 Add 71396 149127 Add 71396 149129 Add 71398 149134 Add 71398 149135 Add 71747 149979 Add 71748 149980 Add 71756 149997 Add 71757 149998 Add 71765 150006 Add 71772 150014 Add 71773 150015 Add 71783 150029 Add 71789 150039 Add 71789 150040 Add 71790 150045 Add 71791 150046 Add 71792 150047 Add 71798 150082 Add 71806 150089 Add 71807 150090 Add 71816 150105 Add 71817 150106 Add 71822 150115 Add 71824 150120 Add 71824 150121 Add 71824 150122 Add 71824 150123 Add 71824 150129 Add 71824 150130 Add 71824 150131 Add 71824 150132 Add 71824 150137 Add 71825 150138 Add 71825 150139 Add 71826 150140 Add 71832 150148 Add 71842 150165 Add 71848 150172 Add 71848 150173 Add 71848 150174 Add 71851 150180 Add 71856 150187 Add 71859 150190 Add 71864 150195 Add 71864 150197 Add 71864 150198 Add 71865 150199 Add 71873 150213 Add 71874 150215 Add 71876 150221 Add 71881 150229 Add 71882 150230 Add 71882 150231 Add 71883 150232 Add 71891 150248 Add 71892 150249 Add 71899 150262 Add 71899 150263 Add 71900 150264 Add 71901 150265 Add 71907 150271 Add 71908 150272 Add 71909 150274 Add 71914 150280 Add 71915 150282 Add 71926 150296 Add 71934 150304 Add 71940 150313 Add 71942 150316 Add 71948 150324 Add 71951 150329 Add 71965 150346 Add 71966 150348 Add 71974 150365 Add 71974 150366 Add 71981 150374 Add 71989 150406 Add 71989 150407 Add 71991 150408 Add 71993 150413 Add 71998 150421 Add 71998 150422 Add 71999 150424 Add 72001 150429 Add 72006 150471 Add 72007 150472 Add 72009 150480 Add 72009 150481 Add 72015 150538 Add 72015 150539 Add 72015 150540 Add 72015 150541 Add 72015 150546 Add 72015 150547 Add 72016 150548 Add 72023 150600 Add 72040 150613 Add 72043 150615 Add 72049 150630 Add 72050 150631 Add 72051 150632 Add 72051 150633 Add 72056 150639 Add 72057 150640 Add 72058 150641 Add 72073 150663 Add 72073 150664 Add 72076 150667 Add 72082 150673 Add 72084 150674 Add 72100 150691 Add 72110 150705 Add 72110 150706 Add 72110 150707 Add 72115 150722 Add 72116 150724 Add 72116 150725 Add 72123 150740 Add 72125 150741 Add 72126 150742 Add 72133 150764 Add 72133 150765 Add 72133 150766 Add 72140 150773 Add 72142 150775 Add 72148 150780 Add 72149 150781 Add 72151 150783 Add 72151 150784 Add 72160 150800 Add 72165 150807 Add 72785 151691 Add 72785 151692 Add 72792 151702 Add 72792 151703 Add 72810 151725 Add 72811 151726 Add 72818 151735 Add 72819 151736 Add 72833 151753 Add 72835 151759 Add 72842 151767 Add 72843 151768 Add 72844 151769 Add 72858 151795 Add 72860 151800 Add 72861 151801 Add 72868 151826 Add 72869 151828 Add 72876 151843 Add 72877 151845 Add 72886 151862 Add 72903 151886 Add 72909 151895 Add 72928 151918 Add 72954 151942 Add 72961 151952 Add 72968 151960 Add 72969 151961 Add 72970 151962 Add 72985 151984 Add 72986 151986 Add 72986 151987 Add 72987 151992 Add 72992 152000 Add 72993 152002 Add 72993 152003 Add 72994 152004 Add 73001 152017 Add 73002 152020 Add 73009 152028 Add 73010 152029 Add 73020 152042 Add 73035 152060 Add 73036 152062 Add 73061 152092 Add 73062 152094 Add 73062 152095 Add 73078 152118 Add 73085 152128 Add 73092 152137 Add 73101 152146 Add 73104 152152 Add 73104 152153 Add 73111 152159 Add 73111 152160 Add 73112 152162 Add 73118 152177 Add 73120 152179 Add 73121 152184 Add 73127 152193 Add 73127 152194 Add 73128 152195 Add 73129 152196 Add 73134 152201 Add 73136 152203 Add 73137 152204 Add 73146 152219 Add 73146 152220 Add 73152 152226 Add 73154 152229 Add 73159 152234 Add 73162 152238 Add 73163 152243 Add 73177 152260 Add 73179 152263 Add 73187 152276 Add 73203 152301 Add 73204 152303 Add 73209 152319 Add 73219 152335 Add 73220 152337 Add 73227 152352 Add 73237 152368 Add 73238 152369 Add 73238 152371 Add 73260 152401 Add 73260 152402 Add 73269 152413 Add 73296 152453 Add 73305 152460 Add 73310 152469 Add 73321 152485 Add 73327 152495 Add 73344 152518 Add 73353 152538 Add 73354 152544 Add 73362 152563 Add 73428 152635 Add 73429 152636 Add 73430 152638 Add 73437 152644 Add 73455 152664 Add 73460 152669 Add 73461 152670 Add 73494 152720 Add 73521 152752 Add 73536 152772 Add 73544 152786 Add 73564 152814 Add 73569 152821 Add 73569 152822 Add 73579 152837 Add 73579 152838 Add 73596 152862 Add 73597 152864 Add 73602 152871 Add 73627 152903 Add 73628 152904 Add 73628 152905 Add 73662 152961 Add 73677 152980 Add 73681 152988 Add 73688 152998 Add 70437 146011 Add 70437 146012 Add 70437 146017 Add 70437 146020 Add 70437 146021 Add 70437 146026 Add 70437 146028 Add 70437 146029 Add 70437 146037 Add 70444 146162 Add 70444 146163 Add 70447 146176 Add 70452 146201 Add 70452 146203 Add 70453 146204 Add 70453 146210 Add 70453 146211 Add 70453 146212 Add 70453 146213 Add 70462 146621 Add 70463 146629 Add 70463 146631 Add 70463 146636 Add 70469 146661 Add 70469 146669 Add 70469 146670 Add 70469 146671 Add 70469 146678 Add 70469 146679 Add 70471 146689 Add 70478 146719 Add 70479 146721 Add 70479 146722 Add 70479 146728 Add 70480 146729 Add 70480 146730 Add 70480 146731 Add 70480 146736 Add 70480 146737 Add 70480 146744 Add 70480 146746 Add 70480 146747 Add 70480 146753 Add 70480 146755 Add 70480 146756 Add 70480 146761 Add 70480 146762 Add 70480 146763 Add 70480 146764 Add 70480 146769 Add 70480 146770 Add 70480 146771 Add 70480 146772 Add 70480 146773 Add 70480 146778 Add 70480 146779 Add 70480 146780 Add 70480 146781 Add 70485 146794 Add 70486 146795 Add 70487 146798 Add 70495 146829 Add 70504 146861 Add 70504 146862 Add 70510 146878 Add 70510 146881 Add 70513 146886 Add 70513 146887 Add 70513 146888 Add 70514 146895 Add 70521 146912 Add 70521 146913 Add 70522 146914 Add 70522 146921 Add 70522 146922 Add 70522 146923 Add 70528 146945 Add 70528 146946 Add 70529 146947 Add 70536 146973 Add 70554 147020 Add 70572 147053 Add 70572 147054 Add 70578 147062 Add 70578 147064 Add 70579 147065 Add 71398 149137 Add 71406 149159 Add 71406 149160 Add 71413 149177 Add 71413 149178 Add 71414 149179 Add 71416 149184 Add 71421 149201 Add 71421 149202 Add 71422 149204 Add 71430 149220 Add 71433 149226 Add 71438 149244 Add 71440 149251 Add 71440 149252 Add 71441 149253 Add 71455 149285 Add 71455 149286 Add 71456 149287 Add 71457 149288 Add 71466 149301 Add 71472 149310 Add 71473 149311 Add 71474 149312 Add 71475 149313 Add 71483 149326 Add 71488 149335 Add 71489 149337 Add 71490 149338 Add 71496 149354 Add 71499 149360 Add 71500 149361 Add 71506 149368 Add 71506 149369 Add 71507 149370 Add 71507 149371 Add 71514 149385 Add 71515 149386 Add 71516 149387 Add 71522 149403 Add 71523 149405 Add 71533 149418 Add 71533 149419 Add 71538 149427 Add 71538 149429 Add 71538 149430 Add 71547 149443 Add 71547 149444 Add 71548 149445 Add 71548 149446 Add 71548 149447 Add 71557 149460 Add 71557 149462 Add 71563 149477 Add 71563 149478 Add 71563 149479 Add 71566 149485 Add 71566 149486 Add 71566 149487 Add 71573 149502 Add 71573 149503 Add 71573 149504 Add 71574 149505 Add 71580 149520 Add 71581 149521 Add 71582 149522 Add 71588 149536 Add 71589 149537 Add 71590 149538 Add 71592 149545 Add 71598 149552 Add 71598 149553 Add 71599 149554 Add 71599 149555 Add 71605 149569 Add 71605 149570 Add 71606 149571 Add 71606 149572 Add 71608 149577 Add 71608 149578 Add 71617 149596 Add 71623 149611 Add 71624 149613 Add 71631 149627 Add 71631 149628 Add 71632 149629 Add 71639 149670 Add 71639 149671 Add 71639 149672 Add 71639 149677 Add 71639 149678 Add 71639 149680 Add 71639 149681 Add 71639 149686 Add 71639 149687 Add 71639 149688 Add 71639 149689 Add 71639 149694 Add 71639 149695 Add 71642 149696 Add 71642 149697 Add 71642 149702 Add 71642 149703 Add 71642 149704 Add 71642 149705 Add 71655 149727 Add 71655 149728 Add 71655 149729 Add 71655 149730 Add 71655 149731 Add 71657 149736 Add 71658 149737 Add 71658 149738 Add 71658 149739 Add 71664 149745 Add 71665 149747 Add 71666 149753 Add 71666 149754 Add 71666 149755 Add 71666 149756 Add 71666 149761 Add 71666 149762 Add 71666 149763 Add 71666 149764 Add 71666 149769 Add 71666 149770 Add 71666 149771 Add 71666 149772 Add 71672 149779 Add 71672 149780 Add 71672 149781 Add 71680 149795 Add 71680 149796 Add 71680 149797 Add 71681 149798 Add 71690 149811 Add 71691 149813 Add 71699 149829 Add 71706 149839 Add 71714 149854 Add 71715 149855 Add 71716 149856 Add 71722 149863 Add 71723 149864 Add 71734 149879 Add 71734 149880 Add 72166 150808 Add 72167 150809 Add 72184 150822 Add 72185 150823 Add 72185 150824 Add 72190 150831 Add 72191 150832 Add 72192 150834 Add 72198 150841 Add 72199 150842 Add 72210 150856 Add 72216 150865 Add 72233 150889 Add 72234 150890 Add 72234 150891 Add 72235 150892 Add 72240 150898 Add 72241 150899 Add 72241 150900 Add 72241 150901 Add 72243 150906 Add 72243 150907 Add 72243 150908 Add 72248 150922 Add 72248 150923 Add 72249 150924 Add 72249 150925 Add 72250 150926 Add 72258 150939 Add 72259 150940 Add 72259 150942 Add 72265 150949 Add 72265 150950 Add 72265 150951 Add 72267 150956 Add 72267 150957 Add 72267 150958 Add 72267 150959 Add 72277 150974 Add 72283 150981 Add 72284 150982 Add 72285 150983 Add 72290 150990 Add 72299 150998 Add 72301 150999 Add 72307 151000 Add 72310 151007 Add 72315 151014 Add 72315 151015 Add 72316 151017 Add 72324 151025 Add 72325 151026 Add 72333 151039 Add 72335 151041 Add 72340 151048 Add 72341 151049 Add 72341 151050 Add 72344 151057 Add 72344 151058 Add 72350 151064 Add 72352 151065 Add 72360 151073 Add 72367 151081 Add 72368 151083 Add 72369 151084 Add 72374 151090 Add 72375 151091 Add 72376 151092 Add 72377 151093 Add 72382 151098 Add 72383 151099 Add 72384 151100 Add 72392 151115 Add 72392 151116 Add 72393 151117 Add 72393 151118 Add 72399 151126 Add 72400 151132 Add 72400 151134 Add 72400 151135 Add 72402 151149 Add 72407 151160 Add 72424 151173 Add 72424 151174 Add 72424 151175 Add 72424 151176 Add 72427 151181 Add 72432 151190 Add 72435 151191 Add 72436 151192 Add 72442 151200 Add 72450 151217 Add 72451 151218 Add 72458 151225 Add 72459 151226 Add 72466 151235 Add 72491 151265 Add 72493 151267 Add 72501 151273 Add 72502 151274 Add 72502 151276 Add 72510 151290 Add 72511 151291 Add 72518 151298 Add 72519 151299 Add 72527 151307 Add 72533 151315 Add 72533 151316 Add 72535 151318 Add 72542 151332 Add 72544 151335 Add 72550 151343 Add 72568 151365 Add 72569 151367 Add 72574 151375 Add 72585 151392 Add 72585 151393 Add 72594 151407 Add 72599 151416 Add 72600 151417 Add 72628 151466 Add 72642 151491 Add 72643 151493 Add 72643 151494 Add 72651 151508 Add 72651 151509 Add 72652 151510 Add 72658 151524 Add 72658 151525 Add 72659 151526 Add 72694 151576 Add 72695 151577 Add 72701 151584 Add 72708 151592 Add 72708 151593 Add 72719 151609 Add 72725 151617 Add 72735 151625 Add 72736 151626 Add 72743 151633 Add 72745 151635 Add 72750 151641 Add 72751 151643 Add 72758 151652 Add 72768 151666 Add 72769 151667 Add 73779 153180 Add 73780 153182 Add 73811 153239 Add 73821 153263 Add 73823 153265 Add 73828 153279 Add 73830 153287 Add 73831 153289 Add 73856 153330 Add 73870 153355 Add 73871 153356 Add 73872 153357 Add 73878 153364 Add 73887 153380 Add 73889 153382 Add 73896 153388 Add 73898 153389 Add 73911 153416 Add 73915 153421 Add 73930 153441 Add 73939 153455 Add 73939 153456 Add 73946 153463 Add 73947 153464 Add 73948 153465 Add 73953 153473 Add 73962 153483 Add 73965 153488 Add 73998 153521 Add 74006 153530 Add 74006 153531 Add 74021 153555 Add 74022 153556 Add 74045 153588 Add 74046 153589 Add 74053 153599 Add 74054 153600 Add 74062 153613 Add 74063 153614 Add 74064 153615 Add 74070 153623 Add 74071 153624 Add 74072 153625 Add 74130 153689 Add 74165 153723 Add 74165 153724 Add 74187 153741 Add 74188 153742 Add 74195 153757 Add 74199 153765 Add 74204 153781 Add 74206 153782 Add 74212 153791 Add 74215 153797 Add 74222 153816 Add 74224 153823 Add 74224 153830 Add 74224 153831 Add 74224 153833 Add 74224 153834 Add 74230 153856 Add 74230 153859 Add 74232 153864 Add 74232 153866 Add 74237 153882 Add 74239 153884 Add 74247 153917 Add 74248 153923 Add 74249 153924 Add 74249 153931 Add 74249 153933 Add 74249 153934 Add 74297 153981 Add 74297 153982 Add 74297 153983 Add 74298 153984 Add 74304 153991 Add 74312 154000 Add 74313 154001 Add 74322 154023 Add 74322 154024 Add 74323 154025 Add 74324 154026 Add 73695 153012 Add 73696 153015 Add 73720 153055 Add 73720 153056 Add 73729 153081 Add 73737 153098 Add 73745 153114 Add 73756 153137 Add 74415 154274 Add 74423 154290 Add 74423 154292 Add 74429 154299 Add 74431 154300 Add 74455 154332 Add 74455 154333 Add 74490 154390 Add 74490 154391 Add 74491 154393 Add 74499 154410 Add 74525 154443 Add 74532 154449 Add 74548 154465 Add 74549 154466 Add 74573 154485 Add 74599 154510 Add 74708 154609 Add 74717 154618 Add 74747 154643 Add 74748 154644 Add 74755 154650 Add 74758 154652 Add 74774 154666 Add 74775 154667 Add 74775 154668 Add 74791 154683 Add 74815 154708 Add 74817 154710 Add 74874 154751 Add 74898 154775 Add 74899 154776 Add 74909 154783 Add 74915 154795 Add 74924 154808 Add 74924 154809 Add 74924 154810 Add 74951 154833 Add 74951 154834 Add 74966 154842 Add 74998 154852 Add 75007 154858 Add 75009 154859 Add 75016 154867 Add 75016 154868 Add 75016 154869 Add 75031 154886 Add 75041 155126 Add 75042 155127 Add 75042 155128 Add 75043 155129 Add 75048 155134 Add 75050 155137 Add 75056 155144 Add 75057 155145 Add 75057 155146 Add 75066 155159 Add 75066 155160 Add 75066 155161 Add 75067 155162 Add 75075 155176 Add 75076 155177 Add 75076 155179 Add 75090 155194 Add 75091 155195 Add 75098 155201 Add 75157 155246 Add 75653 155660 Add 75660 155702 Add 75660 155704 Add 75661 155705 Add 75677 155737 Add 75678 155738 Add 75683 155745 Add 75684 155746 Add 75685 155747 Add 75691 155756 Add 75693 155762 Add 75694 155763 Add 75700 155777 Add 75701 155778 Add 75703 155811 Add 75735 155855 Add 75735 155856 Add 76329 157734 Add 76330 157735 Add 76330 157736 Add 76336 157751 Add 76343 157759 Add 76363 157776 Add 76363 157777 Add 76395 157802 Add 76396 157803 Add 76418 157817 Add 76419 157818 Add 76420 157819 Add 76420 157820 Add 76428 157825 Add 76430 157827 Add 76468 158035 Add 76470 158036 Add 76471 158045 Add 76471 158052 Add 76471 158059 Add 76471 158062 Add 76471 158067 Add 76471 158084 Add 76471 158086 Add 76471 158104 Add 76471 158109 Add 76471 158110 Add 76471 158118 Add 76471 158120 Add 76471 158135 Add 76471 158142 Add 76471 158143 Add 76471 158144 Add 76471 158154 Add 76471 158162 Add 76471 158176 Add 76471 158179 Add 76471 158187 Add 76471 158193 Add 76471 158195 Add 76471 158202 Add 76471 158209 Add 76471 158212 Add 76471 158217 Add 76471 158218 Add 76471 158219 Add 76471 158220 Add 76471 158227 Add 76471 158237 Add 76471 158242 Add 76471 158254 Add 76471 158259 Add 76471 158261 Add 76471 158262 Add 76471 158279 Add 76471 158301 Add 76471 158303 Add 76471 158328 Add 76471 158343 Add 76471 158351 Add 76471 158361 Add 76471 158369 Add 76471 158370 Add 76471 158371 Add 76471 158376 Add 76471 158378 Add 76471 158385 Add 76471 158388 Add 76471 158393 Add 76471 158394 Add 76471 158401 Add 76471 158402 Add 76471 158404 Add 76471 158410 Add 76471 158411 Add 76471 158412 Add 76471 158413 Add 76471 158421 Add 76471 158426 Add 76471 158427 Add 76471 158429 Add 76471 158430 Add 76471 158435 Add 76471 158436 Add 76471 158437 Add 76471 158443 Add 76471 158445 Add 76471 158451 Add 76471 158452 Add 76471 158453 Add 76471 158454 Add 76471 158455 Add 76471 158461 Add 76471 158468 Add 76471 158471 Add 76471 158476 Add 76471 158477 Add 76471 158478 Add 76471 158485 Add 76471 158488 Add 76471 158493 Add 76471 158496 Add 76471 158504 Add 76471 158505 Add 76471 158510 Add 76471 158511 Add 76471 158512 Add 76471 158513 Add 76471 158518 Add 76471 158519 Add 76471 158520 Add 76471 158529 Add 76471 158535 Add 76471 158536 Add 76471 158538 Add 76471 158546 Add 76471 158555 Add 76471 158560 Add 76471 158562 Add 76471 158568 Add 76471 158569 Add 76471 158570 Add 76471 158571 Add 76471 158572 Add 76471 158578 Add 76471 158579 Add 76471 158586 Add 76471 158588 Add 76471 158595 Add 76471 158596 Add 76471 158597 Add 76471 158604 Add 76471 158605 Add 76471 158611 Add 76471 158612 Add 76471 158613 Add 76471 158620 Add 76471 158621 Add 76471 158622 Add 76471 158628 Add 76471 158629 Add 76471 158630 Add 76471 158636 Add 76471 158637 Add 76471 158638 Add 76471 158645 Add 76471 158646 Add 76471 158647 Add 76471 158653 Add 76471 158655 Add 76471 158660 Add 76471 158661 Add 76471 158662 Add 76471 158672 Add 76471 158679 Add 76471 158686 Add 76471 158688 Add 76471 158689 Add 76471 158695 Add 76471 158697 Add 76471 158702 Add 76471 158703 Add 76471 158704 Add 76471 158710 Add 76471 158711 Add 76471 158712 Add 76471 158719 Add 76471 158720 Add 76471 158721 Add 76471 158728 Add 76471 158736 Add 76471 158738 Add 76471 158739 Add 76471 158744 Add 76471 158746 Add 76471 158747 Add 76471 158753 Add 76471 158754 Add 76471 158755 Add 76471 158762 Add 76471 158764 Add 76471 158769 Add 76471 158770 Add 76471 158771 Add 76471 158772 Add 76471 158779 Add 76471 158780 Add 76471 158787 Add 76471 158788 Add 76471 158789 Add 76471 158795 Add 76471 158796 Add 76471 158802 Add 76471 158803 Add 76471 158805 Add 76471 158811 Add 76471 158812 Add 76471 158813 Add 76471 158814 Add 76471 158827 Add 76471 158828 Add 76471 158829 Add 76471 158830 Add 76471 158831 Add 76471 158837 Add 76471 158839 Add 76471 158846 Add 76471 158847 Add 76471 158852 Add 76471 158854 Add 76471 158855 Add 76471 158856 Add 76471 158861 Add 76471 158862 Add 76471 158863 Add 76471 158869 Add 76471 158870 Add 76471 158871 Add 76471 158878 Add 76471 158880 Add 76471 158881 Add 76471 158886 Add 76471 158888 Add 76471 158889 Add 76471 158896 Add 76471 158897 Add 76471 158903 Add 76471 158904 Add 76471 158912 Add 76471 158914 Add 76471 158921 Add 76471 158928 Add 76471 158929 Add 76471 158931 Add 76471 158937 Add 76471 158938 Add 76471 158939 Add 76471 158944 Add 76471 158946 Add 76471 158947 Add 76471 158948 Add 76471 158953 Add 76471 158954 Add 76471 158955 Add 76471 158956 Add 76471 158962 Add 76471 158969 Add 76471 158971 Add 76471 158972 Add 76471 158973 Add 76471 158981 Add 76471 158987 Add 76471 158988 Add 76471 158989 Add 76471 158995 Add 76471 158996 Add 76471 158998 Add 76471 159003 Add 76471 159004 Add 76471 159006 Add 76471 159011 Add 76471 159012 Add 76471 159014 Add 76471 159023 Add 76471 159028 Add 76471 159029 Add 76471 159031 Add 76471 159036 Add 76471 159037 Add 76471 159039 Add 76471 159045 Add 76471 159046 Add 76471 159047 Add 76471 159053 Add 76471 159054 Add 76471 159055 Add 76471 159056 Add 76471 159061 Add 76471 159062 Add 76471 159063 Add 76471 159064 Add 76471 159071 Add 77140 160490 Add 77157 160507 Add 77165 160515 Add 77173 160525 Add 77180 160532 Add 77181 160533 Add 77188 160540 Add 77190 160542 Add 77196 160552 Add 77224 160584 Add 77255 160632 Add 77288 160677 Add 77297 160686 Add 77305 160692 Add 77312 160700 Add 77312 160701 Add 77313 160702 Add 77321 160717 Add 77322 160718 Add 77323 160719 Add 77329 160725 Add 77330 160726 Add 77348 160751 Add 77349 160752 Add 77349 160753 Add 77354 160758 Add 77355 160759 Add 77356 160760 Add 77357 160761 Add 77363 160766 Add 77371 160777 Add 77382 160791 Add 77390 160801 Add 77391 160802 Add 77397 160808 Add 77398 160809 Add 77399 160810 Add 77413 160833 Add 77414 160834 Add 77424 160843 Add 77449 160885 Add 77455 160893 Add 77482 160918 Add 77490 160925 Add 77499 160934 Add 77508 160943 Add 77514 160950 Add 77514 160951 Add 77515 160952 Add 77523 160967 Add 77524 160969 Add 77530 161011 Add 77539 161020 Add 77546 161027 Add 77555 161059 Add 77556 161061 Add 77557 161062 Add 77566 161075 Add 77573 161085 Add 77573 161086 Add 77574 161087 Add 77588 161100 Add 77589 161102 Add 77590 161103 Add 77591 161104 Add 77713 161226 Add 77732 161245 Add 77733 161246 Add 77739 161254 Add 77747 161259 Add 77749 161260 Add 77758 161269 Add 77766 161277 Add 77773 161284 Add 77773 161285 Add 77805 161326 Add 77806 161327 Add 77808 161329 Add 77815 161336 Add 77816 161337 Add 77823 161343 Add 77823 161344 Add 77825 161346 Add 77830 161352 Add 77831 161353 Add 77840 161362 Add 77841 161363 Add 77849 161371 Add 77866 161410 Add 77867 161411 Add 77873 161418 Add 77874 161419 Add 77875 161421 Add 77889 161438 Add 77890 161444 Add 77891 161445 Add 77900 161460 Add 77900 161461 Add 77906 161470 Add 77906 161471 Add 77909 161477 Add 77915 161485 Add 77917 161486 Add 77924 161494 Add 77925 161495 Add 77931 161501 Add 77932 161502 Add 77933 161503 Add 77934 161504 Add 77966 161538 Add 78008 161585 Add 78009 161587 Add 78009 161588 Add 78015 161594 Add 78017 161597 Add 78025 161605 Add 74354 154199 Add 74354 154200 Add 74354 154201 Add 74356 154207 Add 74357 154208 Add 74364 154215 Add 74364 154216 Add 74365 154217 Add 74366 154218 Add 74380 154240 Add 74381 154241 Add 74382 154242 Add 74383 154243 Add 74388 154248 Add 74389 154249 Add 74398 154257 Add 75745 156131 Add 75750 156137 Add 75751 156140 Add 75751 156145 Add 75751 156148 Add 75751 156154 Add 75751 156157 Add 75751 156162 Add 75751 156163 Add 75751 156164 Add 75751 156172 Add 75751 156190 Add 75751 156197 Add 75751 156198 Add 75751 156213 Add 75751 156214 Add 75751 156220 Add 75751 156221 Add 75751 156229 Add 75751 156231 Add 75751 156232 Add 75751 156237 Add 75751 156247 Add 75751 156255 Add 75751 156256 Add 75751 156257 Add 75751 156263 Add 75751 156270 Add 75751 156272 Add 75751 156274 Add 75761 156295 Add 75761 156296 Add 75766 156307 Add 75770 156312 Add 75777 156323 Add 75778 156324 Add 75784 156337 Add 75784 156338 Add 75794 156354 Add 75794 156355 Add 75794 156356 Add 75794 156357 Add 75809 156373 Add 75843 156429 Add 75844 156432 Add 75853 156448 Add 75860 156463 Add 75869 156480 Add 75870 156482 Add 75870 156483 Add 75877 156496 Add 75878 156498 Add 75883 156507 Add 75887 156516 Add 75892 156522 Add 75893 156523 Add 75894 156524 Add 75917 156558 Add 75927 156571 Add 75935 156580 Add 75935 156581 Add 75936 156582 Add 75942 156588 Add 75942 156589 Add 75975 156631 Add 75976 156633 Add 75979 156638 Add 76017 156683 Add 76029 156697 Add 76076 156758 Add 76079 156789 Add 76079 156825 Add 76079 156840 Add 76079 156866 Add 76079 156880 Add 76079 156882 Add 76079 156883 Add 76079 156908 Add 76079 156909 Add 76079 156933 Add 76079 156948 Add 76087 157458 Add 76092 157467 Add 76093 157468 Add 76094 157469 Add 76109 157482 Add 76111 157484 Add 76112 157485 Add 76121 157499 Add 76136 157516 Add 76153 157534 Add 76153 157535 Add 76159 157542 Add 76159 157543 Add 76160 157544 Add 76169 157557 Add 76178 157566 Add 76179 157567 Add 76209 157594 Add 76213 157599 Add 76220 157607 Add 76226 157616 Add 76227 157618 Add 76270 157666 Add 76271 157667 Add 76311 157708 Add 76312 157709 Add 76312 157710 Add 76313 157711 Add 76321 157726 Add 76471 159078 Add 76471 159086 Add 76471 159087 Add 76471 159089 Add 76471 159097 Add 76471 159104 Add 76471 159105 Add 76471 159106 Add 76471 159114 Add 76471 159115 Add 76471 159120 Add 76471 159121 Add 76471 159122 Add 76471 159128 Add 76471 159129 Add 76471 159130 Add 76471 159138 Add 76471 159139 Add 76471 159145 Add 76471 159146 Add 76471 159147 Add 76471 159148 Add 76471 159154 Add 76471 159162 Add 76471 159163 Add 76471 159165 Add 76471 159171 Add 76471 159172 Add 76471 159173 Add 76471 159178 Add 76471 159180 Add 76471 159181 Add 76471 159187 Add 76471 159188 Add 76471 159189 Add 76471 159190 Add 76471 159195 Add 76471 159196 Add 76471 159198 Add 76471 159203 Add 76471 159204 Add 76471 159205 Add 76471 159206 Add 76471 159214 Add 76471 159215 Add 76471 159220 Add 76471 159221 Add 76471 159222 Add 76471 159223 Add 76471 159229 Add 76471 159237 Add 76471 159238 Add 76471 159240 Add 76471 159245 Add 76471 159246 Add 76471 159247 Add 76471 159248 Add 76471 159254 Add 76471 159255 Add 76471 159262 Add 76471 159263 Add 76471 159264 Add 76471 159271 Add 76471 159272 Add 76471 159273 Add 76471 159280 Add 76471 159282 Add 76471 159287 Add 76471 159288 Add 76471 159289 Add 76471 159295 Add 76471 159296 Add 76471 159297 Add 76471 159298 Add 76471 159299 Add 76471 159304 Add 76471 159305 Add 76471 159306 Add 76471 159313 Add 76471 159314 Add 76471 159320 Add 76471 159321 Add 76471 159323 Add 76471 159324 Add 76471 159330 Add 76471 159331 Add 76471 159337 Add 76471 159339 Add 76471 159347 Add 76471 159348 Add 76471 159349 Add 76471 159354 Add 76471 159362 Add 76471 159363 Add 76471 159371 Add 76471 159372 Add 76471 159379 Add 76471 159380 Add 76471 159389 Add 76471 159390 Add 76471 159396 Add 76471 159397 Add 76471 159404 Add 76471 159405 Add 76471 159416 Add 76471 159421 Add 76471 159423 Add 76471 159424 Add 76471 159430 Add 76471 159432 Add 76471 159437 Add 76471 159438 Add 76471 159439 Add 76471 159441 Add 76471 159446 Add 76471 159447 Add 76471 159448 Add 76471 159449 Add 76471 159454 Add 76471 159455 Add 76471 159457 Add 76471 159463 Add 76471 159464 Add 76471 159465 Add 76471 159466 Add 76471 159472 Add 76471 159473 Add 76471 159504 Add 76471 159516 Add 76471 159531 Add 76471 159532 Add 76471 159540 Add 76471 159546 Add 76471 159547 Add 76471 159556 Add 76471 159557 Add 76471 159588 Add 76471 159591 Add 76471 159614 Add 76478 159633 Add 76485 159646 Add 76494 159655 Add 76496 159657 Add 76496 159658 Add 76520 159688 Add 76520 159689 Add 76521 159691 Add 76528 159699 Add 76538 159707 Add 76544 159716 Add 76553 159730 Add 76554 159731 Add 76555 159732 Add 76561 159738 Add 76561 159739 Add 76563 159741 Add 76570 159747 Add 76578 159764 Add 76586 159772 Add 76588 159775 Add 76614 159805 Add 76628 159822 Add 76630 159825 Add 76636 159833 Add 76695 159897 Add 76702 159905 Add 76704 159907 Add 76721 159930 Add 76731 159939 Add 76737 159948 Add 76738 159949 Add 76739 159950 Add 76746 159957 Add 76764 159984 Add 76772 159999 Add 76779 160008 Add 76780 160009 Add 76786 160017 Add 76814 160047 Add 76821 160056 Add 76831 160066 Add 76845 160083 Add 76871 160114 Add 76871 160117 Add 76873 160124 Add 76895 160150 Add 76912 160173 Add 76922 160190 Add 76928 160198 Add 76936 160208 Add 76937 160215 Add 76938 160217 Add 76938 160218 Add 76945 160231 Add 76956 160248 Add 76980 160282 Add 76988 160299 Add 76989 160300 Add 76990 160301 Add 76997 160310 Add 77039 160360 Add 77045 160366 Add 77047 160382 Add 77054 160391 Add 77055 160392 Add 77056 160393 Add 77082 160425 Add 77089 160432 Add 77097 160442 Add 77103 160449 Add 77104 160450 Add 77106 160452 Add 77113 160459 Add 77114 160460 Add 77120 160466 Add 77121 160467 Add 78039 161622 Add 78050 161636 Add 78057 161646 Add 78064 161652 Add 78068 161654 Add 78073 161660 Add 78074 161661 Add 79226 161679 Add 79234 158193 Add 79234 158135 Add 78067 161778 Add 76471 161788 Add 76471 161789 Add 76471 161794 Add 76471 161795 Add 76471 161796 Add 77824 161802 Add 74249 161803 Add 71206 161804 Add 79234 159591 Add 79234 161819 Add 79234 161820 Add 79234 161822 Add 79234 161829 Add 79234 161837 Add 79234 161838 Add 79234 159614 Add 79234 158187 Add 79234 159557 Add 79234 161796 Add 79234 161839 Add 79234 161794 Add 79234 161844 Add 79234 161845 Add 79234 161846 Add 79234 158045 Add 79234 159547 Add 79234 158142 Add 79234 159540 Add 79234 158062 Add 79234 158143 Add 79234 158104 Add 79234 161852 Add 79234 158086 Add 79234 158052 Add 79234 158219 Add 79234 158144 Add 79234 158343 Add 79234 158259 Add 79234 158118 Add 79234 158120 Add 79234 158202 Add 79234 158261 Add 79234 158262 Add 79234 158319 Add 79234 158328 Add 79234 158351 Add 79234 158361 Add 79234 159546 Add 79234 159556 Add 79234 158154 Add 79234 158218 Add 79234 159504 Add 79234 158217 Add 79234 159588 Add 79234 158220 Add 79234 158301 Add 79234 159532 Add 79234 158176 Add 79234 158237 Add 79234 161789 Add 79234 161788 Add 79234 161855 Add 79234 161795 Add 79234 159437 Add 79234 159438 Add 79234 159439 Add 79234 159441 Add 79234 159446 Add 79234 159447 Add 79234 159448 Add 79234 159449 Add 79234 159454 Add 79234 159455 Add 79234 159457 Add 79234 159463 Add 79234 159464 Add 79234 159465 Add 79234 159466 Add 79234 159472 Add 79234 159473 Add 79234 159362 Add 79234 159363 Add 79234 158162 Add 79234 159371 Add 79234 159372 Add 79234 158067 Add 79234 159379 Add 79234 159380 Add 79234 158059 Add 79234 159389 Add 79234 159390 Add 79234 159396 Add 79234 159397 Add 79234 159404 Add 79234 159405 Add 79234 159416 Add 79234 159421 Add 79234 159423 Add 79234 159424 Add 79234 159430 Add 79234 159432 Add 79234 161872 Add 76386 161880 Add 79234 146378 Add 79234 146397 Add 79234 162404 Add 79234 162405 Add 79234 162406 Add 79234 162407 Add 79234 162413 Add 79234 162415 Add 79234 162422 Add 79234 162424 Add 79234 162429 Add 79234 162430 Add 79234 162431 Add 79234 162432 Add 79234 162454 Add 79234 162465 Add 79234 160719 Add 79234 161480 Add 79234 162471 Add 79234 154033 Add 79234 162473 Add 79234 157819 Add 79234 162474 Add 79234 146527 Add 79234 162480 Add 79234 162482 Add 79234 162487 Add 79234 162489 Add 79234 162490 Add 79234 162491 Add 73729 162497 Add 80549 151240 Add 79234 146176 Add 75778 162513 Add 71792 147749 Add 79234 162522 Add 79234 162523 Add 79234 162524 Add 79234 162538 Add 79234 162541 Add 79234 162546 Add 79234 162556 Add 79234 153882 Add 79234 155777 Add 79234 157785 Add 79234 161336 Add 79234 161244 Add 79234 153806 Add 79234 153884 Add 79234 153941 Add 79234 160683 Add 79234 155195 Add 79234 161652 Add 79234 161044 Add 70523 146927 Add 70524 146933 Add 70525 146934 Add 70525 146936 Add 70534 146959 Add 70534 146960 Add 70534 146961 Add 70540 146984 Add 70541 146993 Add 70541 147001 Add 70542 147008 Add 70543 147010 Add 70551 147016 Add 70565 147041 Add 70576 147058 Add 70582 147069 Add 70584 147074 Add 71400 149142 Add 71403 149147 Add 71403 149148 Add 71404 149150 Add 71404 149155 Add 71411 149172 Add 71411 149174 Add 71411 149175 Add 71418 149189 Add 71419 149191 Add 71420 149197 Add 71420 149198 Add 71427 149214 Add 71428 149215 Add 71429 149216 Add 71429 149217 Add 71434 149230 Add 71434 149232 Add 71434 149233 Add 71437 149242 Add 71442 149255 Add 71444 149265 Add 71444 149266 Add 71453 149281 Add 71453 149283 Add 71454 149284 Add 71459 149291 Add 71459 149292 Add 71462 149297 Add 71469 149306 Add 71470 149307 Add 71470 149308 Add 71476 149316 Add 71476 149317 Add 71479 149322 Add 71486 149331 Add 71487 149332 Add 71487 149333 Add 71492 149342 Add 71492 149348 Add 71493 149349 Add 71503 149364 Add 71504 149365 Add 71509 149375 Add 71509 149376 Add 71512 149381 Add 71517 149389 Add 71517 149392 Add 71520 149398 Add 71521 149400 Add 71535 149422 Add 71536 149424 Add 71537 149425 Add 71542 149434 Add 71545 149440 Add 71545 149441 Add 71546 149442 Add 71552 149451 Add 71559 149467 Add 71562 149474 Add 71562 149475 Add 71567 149489 Add 71567 149490 Add 71567 149491 Add 71568 149492 Add 71569 149493 Add 71571 149498 Add 71571 149499 Add 71576 149508 Add 71578 149514 Add 71579 149517 Add 71584 149526 Add 71586 149531 Add 71587 149532 Add 71587 149534 Add 71595 149548 Add 71596 149550 Add 71604 149565 Add 71609 149581 Add 71609 149582 Add 71610 149583 Add 71610 149584 Add 71618 149598 Add 71618 149600 Add 71618 149601 Add 71621 149606 Add 71621 149607 Add 71626 149617 Add 71628 149623 Add 71629 149624 Add 71634 149635 Add 71636 149641 Add 71636 149642 Add 71643 149707 Add 71644 149708 Add 71645 149709 Add 71645 149710 Add 71654 149724 Add 71660 149740 Add 71661 149741 Add 71662 149742 Add 71663 149743 Add 71669 149776 Add 71677 149785 Add 71678 149790 Add 71694 149817 Add 71694 149818 Add 71712 149850 Add 71712 149851 Add 71718 149858 Add 71719 149859 Add 71720 149860 Add 71726 149869 Add 72181 150818 Add 72187 150827 Add 72188 150828 Add 72194 150836 Add 72195 150837 Add 72196 150838 Add 72203 150846 Add 72206 150851 Add 72206 150852 Add 72213 150861 Add 72214 150862 Add 72221 150876 Add 72231 150886 Add 72236 150893 Add 72237 150894 Add 72238 150895 Add 72246 150918 Add 72246 150919 Add 72247 150920 Add 72256 150935 Add 72261 150944 Add 72262 150945 Add 72262 150946 Add 72263 150947 Add 72269 150963 Add 72272 150968 Add 72272 150969 Add 72273 150970 Add 72280 150977 Add 72281 150978 Add 72287 150985 Add 72288 150987 Add 72288 150988 Add 72297 150996 Add 72298 150997 Add 72312 151010 Add 72313 151011 Add 72314 151013 Add 72328 151029 Add 72328 151030 Add 72337 151044 Add 72338 151045 Add 72339 151046 Add 72339 151047 Add 72346 151060 Add 72347 151061 Add 72348 151062 Add 72364 151077 Add 72370 151085 Add 72371 151086 Add 72372 151087 Add 72372 151088 Add 72378 151094 Add 72379 151095 Add 72380 151096 Add 72381 151097 Add 72386 151105 Add 72388 151110 Add 72389 151111 Add 72389 151112 Add 72390 151113 Add 72395 151120 Add 72403 151155 Add 72411 151164 Add 72421 151169 Add 72421 151170 Add 72422 151171 Add 72422 151172 Add 72430 151186 Add 72431 151187 Add 72431 151188 Add 72431 151189 Add 72437 151194 Add 72438 151195 Add 72440 151196 Add 72445 151203 Add 72445 151204 Add 72445 151205 Add 72445 151206 Add 72447 151211 Add 72448 151213 Add 72448 151214 Add 72470 151239 Add 72478 151246 Add 72478 151247 Add 72488 151261 Add 72489 151263 Add 72490 151264 Add 72496 151269 Add 72498 151271 Add 72504 151279 Add 72504 151281 Add 72506 151286 Add 72507 151287 Add 72515 151294 Add 72532 151313 Add 72537 151320 Add 72538 151322 Add 72545 151338 Add 72546 151339 Add 72556 151353 Add 72564 151361 Add 72570 151369 Add 72571 151370 Add 72571 151371 Add 72573 151373 Add 72579 151380 Add 72582 151387 Add 72587 151396 Add 72588 151398 Add 72597 151411 Add 72598 151413 Add 72604 151422 Add 72607 151430 Add 72607 151431 Add 72612 151439 Add 72613 151440 Add 72615 151446 Add 72621 151453 Add 72631 151470 Add 72631 151471 Add 72631 151473 Add 72640 151487 Add 72640 151488 Add 72645 151497 Add 72645 151498 Add 72648 151503 Add 72648 151504 Add 72649 151505 Add 72655 151515 Add 72662 151529 Add 72663 151530 Add 72679 151554 Add 72689 151570 Add 72699 151581 Add 72715 151604 Add 72722 151612 Add 72723 151613 Add 72729 151621 Add 72731 151623 Add 72747 151638 Add 72765 151662 Add 72766 151663 Add 72771 151670 Add 73768 153158 Add 73777 153175 Add 73777 153176 Add 73777 153177 Add 73782 153186 Add 73790 153201 Add 73808 153234 Add 73809 153235 Add 73815 153250 Add 73815 153252 Add 73818 153258 Add 73827 153275 Add 73827 153276 Add 73827 153277 Add 73834 153293 Add 73841 153308 Add 73842 153310 Add 73858 153333 Add 73869 153344 Add 73869 153350 Add 73869 153351 Add 73874 153359 Add 73875 153360 Add 73876 153361 Add 73885 153375 Add 73885 153376 Add 73885 153377 Add 73890 153383 Add 73890 153384 Add 73890 153386 Add 73900 153392 Add 73900 153393 Add 73900 153394 Add 73900 153395 Add 73907 153402 Add 73907 153403 Add 73909 153408 Add 73909 153409 Add 73909 153410 Add 73909 153412 Add 73949 153467 Add 73951 153470 Add 73957 153478 Add 73986 153509 Add 74002 153525 Add 74026 153561 Add 74027 153562 Add 74043 153584 Add 74050 153595 Add 74066 153617 Add 74066 153618 Add 74067 153619 Add 74117 153676 Add 74119 153678 Add 74128 153686 Add 74158 153712 Add 74161 153718 Add 74191 153745 Add 74192 153746 Add 74194 153753 Add 74194 153754 Add 74200 153768 Add 74200 153769 Add 74200 153770 Add 74200 153771 Add 74202 153777 Add 74202 153779 Add 74208 153786 Add 74209 153787 Add 74218 153801 Add 70590 147081 Add 70593 147087 Add 70593 147088 Add 70600 147095 Add 70600 147096 Add 70601 147097 Add 70610 147112 Add 70615 147124 Add 70617 147130 Add 70617 147137 Add 70618 147138 Add 70624 147154 Add 70625 147155 Add 70625 147156 Add 70632 147174 Add 70641 147196 Add 70641 147197 Add 70642 147198 Add 70650 147212 Add 70650 147215 Add 70657 147232 Add 70659 147238 Add 70659 147239 Add 70666 147264 Add 70666 147265 Add 70666 147266 Add 70673 147280 Add 70674 147287 Add 70674 147288 Add 70675 147289 Add 70675 147290 Add 70682 147304 Add 70682 147305 Add 70682 147306 Add 70685 147314 Add 70685 147315 Add 70685 147316 Add 70698 147330 Add 70699 147338 Add 70699 147339 Add 70699 147340 Add 70699 147341 Add 70708 147363 Add 70708 147364 Add 70709 147366 Add 70715 147379 Add 70716 147382 Add 70726 147404 Add 70726 147405 Add 70726 147406 Add 70743 147431 Add 70749 147439 Add 70749 147440 Add 70750 147441 Add 70752 147447 Add 70757 147456 Add 70757 147457 Add 70766 147473 Add 70776 147488 Add 70776 147489 Add 70783 147498 Add 70783 147499 Add 70790 147513 Add 70790 147514 Add 70790 147515 Add 70791 147516 Add 70802 147530 Add 70809 147539 Add 70810 147540 Add 70810 147541 Add 70815 147547 Add 70816 147548 Add 70819 147555 Add 70826 147564 Add 70827 147565 Add 70827 147566 Add 70832 147575 Add 70835 147580 Add 70842 147588 Add 70842 147589 Add 70842 147590 Add 70842 147591 Add 70842 147597 Add 70842 147599 Add 70843 147606 Add 70844 147608 Add 70849 147615 Add 70850 147616 Add 70851 147617 Add 70858 147631 Add 70860 147633 Add 70867 147641 Add 70868 147642 Add 70875 147649 Add 70876 147650 Add 70892 147667 Add 70893 147673 Add 70894 147675 Add 70907 147690 Add 70908 147692 Add 70919 147706 Add 70919 147707 Add 70926 147722 Add 70926 147723 Add 70926 147724 Add 70926 147725 Add 70926 147730 Add 70926 147731 Add 70926 147732 Add 70926 147734 Add 70927 147739 Add 70935 147749 Add 70935 147750 Add 70935 147759 Add 70935 147773 Add 70935 147775 Add 70942 147806 Add 70951 147822 Add 70951 147823 Add 70952 147824 Add 70959 147839 Add 70961 147847 Add 70966 147857 Add 70966 147858 Add 70967 147859 Add 70967 147864 Add 70969 147867 Add 70977 147882 Add 70977 147883 Add 70985 147897 Add 70991 147907 Add 70992 147909 Add 70993 147914 Add 70994 147916 Add 70994 147917 Add 71000 147932 Add 71001 147934 Add 71002 147939 Add 71002 147940 Add 71010 147956 Add 71010 147957 Add 71016 147968 Add 71018 147973 Add 71018 147974 Add 71024 147989 Add 71024 147990 Add 71025 147993 Add 71027 147998 Add 71034 148014 Add 71034 148015 Add 71034 148016 Add 71035 148018 Add 71042 148032 Add 71043 148034 Add 71049 148050 Add 71051 148056 Add 71052 148059 Add 71058 148073 Add 71058 148074 Add 71066 148092 Add 71066 148093 Add 71068 148099 Add 71069 148100 Add 71074 148110 Add 71075 148115 Add 71076 148117 Add 71077 148118 Add 71083 148132 Add 71084 148134 Add 71086 148140 Add 71086 148141 Add 71093 148426 Add 71093 148427 Add 71093 148432 Add 71093 148450 Add 71101 148534 Add 71102 148536 Add 71102 148541 Add 71103 148542 Add 71109 148552 Add 71116 148568 Add 71117 148569 Add 71119 148574 Add 71126 148586 Add 71134 148599 Add 71135 148600 Add 71142 148617 Add 71144 148619 Add 71152 148636 Add 71158 148650 Add 71166 148666 Add 71167 148667 Add 71168 148668 Add 71185 148700 Add 71186 148702 Add 71195 148716 Add 71195 148717 Add 71200 148728 Add 71209 148743 Add 71217 148759 Add 71220 148768 Add 71225 148777 Add 71227 148783 Add 71236 148802 Add 71236 148803 Add 71243 148817 Add 71243 148818 Add 71244 148819 Add 71244 148820 Add 71252 148833 Add 71252 148834 Add 71253 148837 Add 71259 148850 Add 71269 148867 Add 71269 148868 Add 71269 148869 Add 71284 148900 Add 71285 148901 Add 71285 148902 Add 71286 148903 Add 71292 148917 Add 71293 148918 Add 71303 148934 Add 71303 148935 Add 71303 148936 Add 71310 148951 Add 71311 148952 Add 71311 148954 Add 71319 148967 Add 71320 148969 Add 71325 148976 Add 71325 148977 Add 71326 148979 Add 71335 148992 Add 71336 148993 Add 71336 148994 Add 71337 148995 Add 71343 149009 Add 71353 149026 Add 71359 149037 Add 71367 149053 Add 71367 149054 Add 71368 149060 Add 71369 149062 Add 71375 149079 Add 71377 149084 Add 71377 149085 Add 71385 149102 Add 71392 149117 Add 71392 149118 Add 71393 149119 Add 71393 149121 Add 71735 149881 Add 71738 149888 Add 71751 149988 Add 71752 149989 Add 71752 149990 Add 71761 150003 Add 71761 150004 Add 71768 150012 Add 71769 150013 Add 71776 150020 Add 71777 150021 Add 71778 150022 Add 71780 150023 Add 71793 150073 Add 71796 150078 Add 71796 150079 Add 71796 150080 Add 71802 150087 Add 71805 150088 Add 71810 150095 Add 71811 150096 Add 71812 150097 Add 71813 150098 Add 71820 150112 Add 71820 150113 Add 71821 150114 Add 71829 150145 Add 71837 150155 Add 71837 150156 Add 71838 150157 Add 71845 150170 Add 71846 150171 Add 71853 150182 Add 71868 150204 Add 71869 150205 Add 71870 150206 Add 71870 150207 Add 71877 150222 Add 71878 150223 Add 71878 150224 Add 71885 150237 Add 71886 150238 Add 71886 150239 Add 71887 150240 Add 71896 150254 Add 71897 150255 Add 71897 150256 Add 71897 150257 Add 71918 150287 Add 71919 150289 Add 71920 150290 Add 71920 150291 Add 71927 150297 Add 71928 150298 Add 71929 150299 Add 71935 150305 Add 71936 150306 Add 71937 150307 Add 71945 150321 Add 71946 150322 Add 71947 150323 Add 71953 150330 Add 71954 150331 Add 71955 150332 Add 71960 150337 Add 71961 150338 Add 71962 150339 Add 71962 150340 Add 71963 150341 Add 71970 150355 Add 71971 150356 Add 71972 150357 Add 71978 150371 Add 71979 150372 Add 71980 150373 Add 71987 150380 Add 71987 150382 Add 71987 150388 Add 71987 150389 Add 71987 150391 Add 71994 150414 Add 71995 150415 Add 71996 150416 Add 72002 150430 Add 72002 150431 Add 72002 150432 Add 72003 150433 Add 72004 150440 Add 72004 150447 Add 72004 150454 Add 72004 150455 Add 72004 150456 Add 72004 150457 Add 72004 150458 Add 72005 150463 Add 72005 150464 Add 72005 150465 Add 72005 150466 Add 72010 150482 Add 72010 150483 Add 72014 150496 Add 72014 150498 Add 72014 150505 Add 72014 150506 Add 72014 150516 Add 72014 150521 Add 72014 150532 Add 72014 150533 Add 72021 150598 Add 72028 150605 Add 72030 150606 Add 72030 150607 Add 72044 150616 Add 72047 150622 Add 72047 150623 Add 72047 150624 Add 72047 150625 Add 72055 150638 Add 72063 150647 Add 72064 150648 Add 72071 150657 Add 72072 150658 Add 72086 150675 Add 72094 150683 Add 72097 150688 Add 72097 150689 Add 72097 150690 Add 72103 150698 Add 72113 150716 Add 72113 150717 Add 72120 150730 Add 72121 150731 Add 72121 150732 Add 72122 150733 Add 72128 150747 Add 72128 150748 Add 72128 150750 Add 72129 150755 Add 72129 150757 Add 72130 150758 Add 72152 150789 Add 72156 150792 Add 72164 150805 Add 72774 151677 Add 72780 151683 Add 72780 151684 Add 72781 151686 Add 72791 151700 Add 72815 151733 Add 72854 151785 Add 72856 151792 Add 72857 151793 Add 72857 151794 Add 72863 151809 Add 72864 151811 Add 72871 151834 Add 72871 151835 Add 72872 151836 Add 72879 151850 Add 72938 151928 Add 72988 151993 Add 72989 151995 Add 72997 152011 Add 72998 152012 Add 73008 152025 Add 73008 152026 Add 73013 152034 Add 73013 152035 Add 73021 152043 Add 73021 152044 Add 73022 152045 Add 73039 152067 Add 73041 152069 Add 73050 152079 Add 73055 152084 Add 73056 152085 Add 73066 152102 Add 73073 152110 Add 73073 152112 Add 73090 152135 Add 73097 152143 Add 73105 152154 Add 73115 152168 Add 73115 152169 Add 73115 152170 Add 73116 152171 Add 73117 152176 Add 73123 152185 Add 73124 152186 Add 73142 152211 Add 73142 152212 Add 73147 152221 Add 73167 152245 Add 73167 152246 Add 73172 152252 Add 73173 152254 Add 73183 152268 Add 73183 152269 Add 73183 152270 Add 73189 152278 Add 73192 152284 Add 73192 152286 Add 73206 152310 Add 73208 152312 Add 73216 152329 Add 73222 152343 Add 73224 152346 Add 73230 152355 Add 73232 152362 Add 73241 152378 Add 73247 152385 Add 73247 152386 Add 73255 152394 Add 73266 152411 Add 73298 152455 Add 73306 152463 Add 73316 152478 Add 73316 152480 Add 73323 152487 Add 73341 152512 Add 73341 152513 Add 73349 152530 Add 73356 152552 Add 73372 152579 Add 73375 152585 Add 73392 152604 Add 73439 152646 Add 73439 152647 Add 73442 152653 Add 73466 152677 Add 73467 152678 Add 73476 152688 Add 73476 152689 Add 73481 152696 Add 73516 152744 Add 73524 152755 Add 73533 152769 Add 73559 152806 Add 73574 152828 Add 73591 152854 Add 73606 152873 Add 73617 152887 Add 73618 152888 Add 73618 152889 Add 73633 152913 Add 73641 152929 Add 73642 152930 Add 73642 152931 Add 73649 152939 Add 73657 152953 Add 73657 152956 Add 73665 152964 Add 73666 152965 Add 73674 152973 Add 73682 152990 Add 73692 153006 Add 70441 146060 Add 70441 146067 Add 70441 146068 Add 70441 146086 Add 70442 146094 Add 70442 146096 Add 70442 146102 Add 70442 146104 Add 70442 146118 Add 70442 146119 Add 70442 146126 Add 70442 146137 Add 70442 146153 Add 70443 146161 Add 70449 146184 Add 70451 146194 Add 70451 146195 Add 70456 146221 Add 70456 146227 Add 70456 146229 Add 70456 146235 Add 70456 146237 Add 70456 146244 Add 70456 146245 Add 70456 146251 Add 70456 146253 Add 70456 146254 Add 70456 146260 Add 70456 146261 Add 70456 146262 Add 70456 146268 Add 70456 146269 Add 70456 146270 Add 70456 146271 Add 70456 146277 Add 70456 146278 Add 70456 146285 Add 70456 146286 Add 70456 146287 Add 70456 146288 Add 70456 146293 Add 70456 146294 Add 70456 146295 Add 70456 146296 Add 70456 146301 Add 70456 146303 Add 70456 146305 Add 70456 146310 Add 70456 146311 Add 70456 146312 Add 70457 146321 Add 70457 146327 Add 70457 146328 Add 70457 146329 Add 70457 146335 Add 70457 146336 Add 70457 146338 Add 70457 146344 Add 70457 146345 Add 70457 146346 Add 70457 146352 Add 70457 146353 Add 70457 146354 Add 70457 146355 Add 70457 146360 Add 70457 146361 Add 70457 146362 Add 70457 146368 Add 70457 146369 Add 70457 146370 Add 70457 146371 Add 70457 146378 Add 70457 146380 Add 70457 146385 Add 70457 146386 Add 70457 146387 Add 70457 146393 Add 70457 146394 Add 70457 146395 Add 70457 146396 Add 70457 146397 Add 70457 146402 Add 70457 146403 Add 70457 146404 Add 70457 146405 Add 70457 146410 Add 70457 146411 Add 70457 146412 Add 70457 146413 Add 70457 146418 Add 70457 146419 Add 70457 146420 Add 70457 146421 Add 70457 146427 Add 70457 146429 Add 70457 146430 Add 70457 146435 Add 70457 146436 Add 70457 146438 Add 70457 146444 Add 70457 146445 Add 70457 146446 Add 70457 146447 Add 70457 146452 Add 70457 146453 Add 70457 146454 Add 70457 146455 Add 70457 146460 Add 70457 146462 Add 70457 146469 Add 70457 146472 Add 70457 146478 Add 70457 146479 Add 70457 146480 Add 70457 146485 Add 70457 146486 Add 70457 146487 Add 70457 146494 Add 70457 146495 Add 70457 146496 Add 70457 146497 Add 70457 146502 Add 70457 146503 Add 70457 146504 Add 70457 146505 Add 70457 146510 Add 70457 146511 Add 70457 146512 Add 70457 146513 Add 70457 146519 Add 70457 146520 Add 70458 146527 Add 70458 146529 Add 70458 146530 Add 70458 146535 Add 70458 146536 Add 70458 146537 Add 70458 146538 Add 70458 146539 Add 70458 146544 Add 70458 146545 Add 70458 146546 Add 70458 146547 Add 70458 146553 Add 70458 146560 Add 70458 146561 Add 70458 146562 Add 70458 146563 Add 70458 146564 Add 70458 146569 Add 70458 146570 Add 70458 146572 Add 70458 146579 Add 70458 146580 Add 70458 146586 Add 70459 146602 Add 70459 146603 Add 70459 146605 Add 70459 146611 Add 70459 146612 Add 70459 146613 Add 70459 146619 Add 70464 146639 Add 70465 146646 Add 70468 146653 Add 70468 146654 Add 70468 146656 Add 70474 146696 Add 70476 146712 Add 70476 146713 Add 70476 146714 Add 70481 146786 Add 70482 146788 Add 70482 146789 Add 70490 146804 Add 70490 146805 Add 70491 146811 Add 70491 146812 Add 70491 146814 Add 70493 146820 Add 70493 146821 Add 70498 146837 Add 70500 146845 Add 70501 146847 Add 70507 146870 Add 70509 146872 Add 70509 146873 Add 70515 146897 Add 70515 146898 Add 70523 146928 Add 70524 146929 Add 70524 146930 Add 70541 146988 Add 70541 146996 Add 70549 147012 Add 70557 147029 Add 70559 147030 Add 70565 147037 Add 70565 147038 Add 70565 147039 Add 70565 147040 Add 70573 147055 Add 70582 147070 Add 70583 147072 Add 70584 147073 Add 71400 149143 Add 71401 149144 Add 71402 149145 Add 71402 149146 Add 71404 149151 Add 71404 149152 Add 71404 149154 Add 71409 149168 Add 71410 149169 Add 71411 149170 Add 71411 149171 Add 71412 149176 Add 71417 149185 Add 71417 149186 Add 71419 149193 Add 71419 149194 Add 71420 149196 Add 71425 149209 Add 71425 149210 Add 71425 149211 Add 71434 149228 Add 71434 149229 Add 71434 149234 Add 71435 149236 Add 71435 149237 Add 71435 149238 Add 71437 149243 Add 71442 149254 Add 71444 149261 Add 71444 149262 Add 71444 149270 Add 71445 149271 Add 71450 149276 Add 71451 149277 Add 71452 149278 Add 71453 149279 Add 71460 149293 Add 71461 149296 Add 71467 149302 Add 71467 149303 Add 71468 149304 Add 71468 149305 Add 71477 149318 Add 71477 149319 Add 71478 149321 Add 71484 149327 Add 71485 149328 Add 71485 149329 Add 71492 149343 Add 71492 149344 Add 71492 149345 Add 71492 149346 Add 71494 149351 Add 71495 149353 Add 71501 149362 Add 71502 149363 Add 71510 149378 Add 71511 149379 Add 71511 149380 Add 71517 149393 Add 71518 149395 Add 71519 149396 Add 71527 149411 Add 71528 149412 Add 71534 149420 Add 71543 149435 Add 71543 149436 Add 71544 149437 Add 71545 149438 Add 71552 149452 Add 71553 149453 Add 71554 149454 Add 71559 149468 Add 71560 149469 Add 71562 149472 Add 71567 149488 Add 71570 149496 Add 71571 149497 Add 71576 149510 Add 71577 149511 Add 71577 149513 Add 71585 149529 Add 71586 149530 Add 71593 149546 Add 71594 149547 Add 71601 149560 Add 71602 149561 Add 71602 149562 Add 71609 149579 Add 71611 149585 Add 71611 149586 Add 71612 149587 Add 71612 149588 Add 71612 149589 Add 71619 149602 Add 71620 149604 Add 71620 149605 Add 71627 149620 Add 71627 149621 Add 71628 149622 Add 71634 149636 Add 71634 149637 Add 71635 149639 Add 71646 149713 Add 71651 149719 Add 71652 149721 Add 71653 149722 Add 71670 149778 Add 71678 149787 Add 71678 149788 Add 71685 149804 Add 71686 149805 Add 71695 149819 Add 71695 149820 Add 71695 149821 Add 71696 149822 Add 71696 149823 Add 71701 149836 Add 71702 149837 Add 71704 149838 Add 71710 149844 Add 71710 149847 Add 71711 149848 Add 71713 149853 Add 71721 149862 Add 71727 149870 Add 71728 149871 Add 71728 149872 Add 71729 149873 Add 72178 150814 Add 72179 150815 Add 72180 150816 Add 72180 150817 Add 72186 150825 Add 72197 150839 Add 72204 150847 Add 72205 150849 Add 72205 150850 Add 72211 150857 Add 72212 150858 Add 72212 150859 Add 72221 150872 Add 72221 150873 Add 72229 150883 Add 72230 150884 Add 72239 150897 Add 72245 150914 Add 72245 150915 Add 72246 150916 Add 72246 150917 Add 72253 150931 Add 72254 150933 Add 72255 150934 Add 72264 150948 Add 72270 150964 Add 72270 150965 Add 72270 150966 Add 72271 150967 Add 72278 150975 Add 72279 150976 Add 72286 150984 Add 72289 150989 Add 72322 151023 Add 72331 151033 Add 72336 151042 Add 72337 151043 Add 72345 151059 Add 72353 151066 Add 72354 151067 Add 72355 151068 Add 72362 151074 Add 72363 151075 Add 72364 151076 Add 72386 151106 Add 72387 151107 Add 72387 151108 Add 72388 151109 Add 72396 151123 Add 72397 151124 Add 72398 151125 Add 72404 151156 Add 72404 151157 Add 72405 151158 Add 72421 151167 Add 72421 151168 Add 72445 151207 Add 72445 151208 Add 72446 151210 Add 72448 151215 Add 72462 151233 Add 72473 151242 Add 72480 151250 Add 72481 151251 Add 72487 151258 Add 72487 151259 Add 72488 151260 Add 72495 151268 Add 72503 151277 Add 72505 151284 Add 72505 151285 Add 72513 151292 Add 72514 151293 Add 72521 151300 Add 72523 151302 Add 72528 151309 Add 72540 151324 Add 72540 151327 Add 72554 151351 Add 72555 151352 Add 72562 151359 Add 72570 151368 Add 72573 151374 Add 72579 151382 Add 72580 151384 Add 72581 151385 Add 72589 151399 Add 72590 151401 Add 72605 151425 Add 72614 151444 Add 72620 151451 Add 72621 151452 Add 72624 151457 Add 72624 151458 Add 72629 151467 Add 72629 151469 Add 72632 151475 Add 72632 151476 Add 72632 151477 Add 72637 151485 Add 72647 151501 Add 72656 151518 Add 72664 151533 Add 72664 151534 Add 72665 151535 Add 72674 151543 Add 72679 151550 Add 72679 151551 Add 72679 151552 Add 72682 151559 Add 72687 151567 Add 72688 151568 Add 72712 151599 Add 72713 151602 Add 72721 151611 Add 72732 151624 Add 72756 151649 Add 72762 151658 Add 72763 151659 Add 72763 151660 Add 72764 151661 Add 72773 151674 Add 72774 151675 Add 73766 153154 Add 73774 153170 Add 73800 153220 Add 73801 153221 Add 73817 153255 Add 73817 153256 Add 73825 153271 Add 73826 153273 Add 73826 153274 Add 73840 153306 Add 73841 153307 Add 73844 153312 Add 73852 153324 Add 73857 153332 Add 73866 153339 Add 73869 153348 Add 73869 153349 Add 73876 153362 Add 73877 153363 Add 73883 153372 Add 73885 153374 Add 73885 153379 Add 73899 153390 Add 73899 153391 Add 73901 153396 Add 73902 153397 Add 73908 153404 Add 73908 153405 Add 73909 153407 Add 73909 153413 Add 73910 153415 Add 73926 153431 Add 73933 153446 Add 73935 153449 Add 73957 153479 Add 73958 153480 Add 73959 153481 Add 73960 153482 Add 73968 153490 Add 73969 153491 Add 73975 153498 Add 73976 153499 Add 73984 153506 Add 73984 153507 Add 73985 153508 Add 73991 153513 Add 73991 153514 Add 73993 153516 Add 73999 153522 Add 74000 153523 Add 74016 153547 Add 74017 153548 Add 74027 153563 Add 74034 153572 Add 74035 153573 Add 74035 153574 Add 74041 153582 Add 74058 153606 Add 74068 153621 Add 74218 153803 Add 74219 153804 Add 74225 153836 Add 74228 153845 Add 74228 153846 Add 74234 153870 Add 74235 153871 Add 74236 153876 Add 74236 153877 Add 74241 153887 Add 74242 153893 Add 74242 153894 Add 74242 153895 Add 74244 153901 Add 74244 153905 Add 74245 153910 Add 74250 153936 Add 74251 153937 Add 74270 153960 Add 74300 153986 Add 74308 153996 Add 74308 153997 Add 74317 154005 Add 74319 154010 Add 74319 154011 Add 74319 154012 Add 74319 154013 Add 74320 154020 Add 74325 154027 Add 74325 154028 Add 74325 154029 Add 74325 154035 Add 74325 154036 Add 74325 154043 Add 74325 154044 Add 74325 154045 Add 74325 154046 Add 74325 154047 Add 74325 154052 Add 74325 154053 Add 74325 154054 Add 74325 154062 Add 74325 154063 Add 74325 154069 Add 74325 154070 Add 74325 154071 Add 74325 154072 Add 74325 154077 Add 74325 154078 Add 74325 154079 Add 74325 154080 Add 74325 154087 Add 74325 154088 Add 74325 154095 Add 74325 154096 Add 74325 154103 Add 74325 154104 Add 74325 154110 Add 74325 154113 Add 74325 154114 Add 74325 154119 Add 74325 154120 Add 74325 154121 Add 74325 154122 Add 74325 154127 Add 74325 154128 Add 74325 154129 Add 74325 154135 Add 74325 154136 Add 74325 154138 Add 74325 154139 Add 74325 154145 Add 74325 154146 Add 74325 154152 Add 74325 154153 Add 74325 154154 Add 74325 154160 Add 74326 154164 Add 74335 154178 Add 73727 153077 Add 73750 153125 Add 73751 153126 Add 73752 153127 Add 73766 153153 Add 74418 154278 Add 74418 154279 Add 74418 154281 Add 74427 154297 Add 74453 154330 Add 74479 154364 Add 74485 154380 Add 74492 154394 Add 74500 154412 Add 74500 154413 Add 74519 154436 Add 74535 154454 Add 74604 154514 Add 74678 154581 Add 74686 154589 Add 74712 154612 Add 74713 154614 Add 74743 154638 Add 74743 154639 Add 74760 154654 Add 74763 154656 Add 74803 154696 Add 74813 154706 Add 74820 154713 Add 74880 154756 Add 74886 154763 Add 74894 154770 Add 74904 154780 Add 74904 154781 Add 74910 154788 Add 74919 154798 Add 74921 154804 Add 75004 154856 Add 75013 154862 Add 75013 154864 Add 75020 154873 Add 75020 154874 Add 75035 154891 Add 75037 154897 Add 75037 154898 Add 75037 154899 Add 75037 154905 Add 75037 154906 Add 75037 154907 Add 75037 154914 Add 75037 154915 Add 75037 154916 Add 75037 154921 Add 75037 154923 Add 75037 154924 Add 75037 154929 Add 75037 154930 Add 75037 154931 Add 75037 154932 Add 75037 154938 Add 75037 154939 Add 75037 154940 Add 75037 154941 Add 75037 154946 Add 75037 154947 Add 75037 154949 Add 75037 154954 Add 75037 154955 Add 75037 154956 Add 75037 154963 Add 75037 154965 Add 75037 154966 Add 75037 154973 Add 75037 154974 Add 75037 154979 Add 75037 154980 Add 75037 154982 Add 75037 154983 Add 75037 154988 Add 75037 154989 Add 75037 154990 Add 75037 154991 Add 75037 154997 Add 75037 154998 Add 75037 154999 Add 75037 155004 Add 75037 155005 Add 75037 155006 Add 75037 155007 Add 75037 155008 Add 75037 155013 Add 75038 155016 Add 75038 155022 Add 75038 155023 Add 75038 155031 Add 75038 155032 Add 75038 155033 Add 75038 155038 Add 75038 155041 Add 75038 155046 Add 75038 155047 Add 75038 155048 Add 75038 155055 Add 75038 155056 Add 75038 155058 Add 75038 155066 Add 75038 155072 Add 75038 155073 Add 75038 155074 Add 75038 155083 Add 75038 155088 Add 75038 155091 Add 75038 155098 Add 75038 155099 Add 75038 155100 Add 75038 155105 Add 75038 155106 Add 75038 155108 Add 75038 155115 Add 75038 155116 Add 75044 155130 Add 75046 155131 Add 75046 155132 Add 75047 155133 Add 75062 155155 Add 75063 155156 Add 75064 155157 Add 75069 155166 Add 75086 155188 Add 75087 155189 Add 75088 155191 Add 75094 155197 Add 75096 155198 Add 75637 155643 Add 75656 155666 Add 75656 155668 Add 75656 155673 Add 75656 155674 Add 75656 155675 Add 75656 155676 Add 75656 155681 Add 75656 155682 Add 75656 155683 Add 75656 155684 Add 75656 155691 Add 75656 155693 Add 75656 155698 Add 75662 155707 Add 75663 155708 Add 75663 155709 Add 75663 155710 Add 75670 155725 Add 75680 155740 Add 75688 155750 Add 75696 155765 Add 75697 155766 Add 75698 155767 Add 75698 155773 Add 75698 155774 Add 75699 155776 Add 75706 155815 Add 75713 155823 Add 75737 155858 Add 75738 155859 Add 75738 155868 Add 75738 155874 Add 75738 155876 Add 75738 155877 Add 75738 155883 Add 75738 155884 Add 75738 155890 Add 75738 155892 Add 75738 155901 Add 75738 155902 Add 75738 155908 Add 75738 155909 Add 75738 155915 Add 75738 155916 Add 75738 155917 Add 75738 155918 Add 75738 155924 Add 75738 155925 Add 75738 155927 Add 75738 155932 Add 75738 155934 Add 75738 155935 Add 75738 155941 Add 75738 155942 Add 76339 157754 Add 76347 157763 Add 76348 157764 Add 76359 157773 Add 76391 157798 Add 76398 157804 Add 76399 157806 Add 76423 157822 Add 76434 157830 Add 76434 157831 Add 76439 157839 Add 76440 157863 Add 76440 157864 Add 76440 157879 Add 76440 157887 Add 76440 157888 Add 76441 157904 Add 76441 157905 Add 76442 157906 Add 76448 157916 Add 76456 158024 Add 76466 158033 Add 77124 160472 Add 77136 160486 Add 77144 160494 Add 77153 160503 Add 77168 160520 Add 77169 160521 Add 77184 160536 Add 77186 160538 Add 77191 160545 Add 77225 160587 Add 77225 160589 Add 77235 160605 Add 77250 160623 Add 77253 160630 Add 77258 160639 Add 77267 160648 Add 77276 160662 Add 77284 160673 Add 77291 160680 Add 77300 160689 Add 77308 160695 Add 77309 160696 Add 77319 160712 Add 77319 160713 Add 77320 160714 Add 77320 160715 Add 77326 160721 Add 77326 160722 Add 77327 160723 Add 77334 160732 Add 77350 160754 Add 77351 160755 Add 77353 160757 Add 77375 160781 Add 77375 160782 Add 77386 160795 Add 77386 160796 Add 77387 160797 Add 77394 160804 Add 77395 160805 Add 77402 160813 Add 77402 160814 Add 77410 160829 Add 79234 147247 Add 79234 158179 Add 70689 158202 Add 70828 162599 Add 79234 162630 Add 79234 162631 Add 79234 162632 Add 79234 162633 Add 76436 146564 Add 80741 162656 Add 79234 146452 Add 79234 146502 Add 79234 146504 Add 79234 146328 Add 79234 146329 Add 79234 146338 Add 79234 146346 Add 79234 146353 Add 79234 146354 Add 79234 146355 Add 79234 146360 Add 79234 146361 Add 79234 146368 Add 79234 146369 Add 79234 146370 Add 79234 146371 Add 79234 146380 Add 79234 146385 Add 79234 146386 Add 79234 146387 Add 79234 146394 Add 79234 146403 Add 79234 146436 Add 79234 146444 Add 79234 146445 Add 79234 146447 Add 79234 146453 Add 79234 146454 Add 79234 146455 Add 79234 146469 Add 79234 146510 Add 79234 146513 Add 79234 146503 Add 79234 146321 Add 79234 146472 Add 79234 146327 Add 79234 146478 Add 79234 146479 Add 79234 146480 Add 79234 146485 Add 79234 146486 Add 79234 146335 Add 79234 146336 Add 79234 146344 Add 79234 146345 Add 79234 146487 Add 79234 146494 Add 79234 146495 Add 79234 146352 Add 79234 146362 Add 79234 146393 Add 79234 146395 Add 79234 146402 Add 79234 146404 Add 79234 146405 Add 79234 146410 Add 79234 146411 Add 79234 146412 Add 79234 146413 Add 79234 146496 Add 79234 146497 Add 79234 146418 Add 79234 146419 Add 79234 146420 Add 79234 146421 Add 79234 146427 Add 79234 146429 Add 79234 146430 Add 79234 146435 Add 79234 146438 Add 79234 146446 Add 79234 146460 Add 79234 146462 Add 79234 146505 Add 79234 146511 Add 79234 146512 Add 79234 146519 Add 78076 161905 Add 78084 161912 Add 71725 161921 Add 80456 161928 Add 79379 161937 Add 79226 161944 Add 77931 162011 Add 74204 162014 Add 71231 162023 Add 76471 162031 Add 76471 162036 Add 74249 162048 Add 72158 162056 Add 72826 162061 Add 79234 162064 Add 80481 162078 Add 79234 151675 Add 79234 162089 Add 79234 162097 Add 79234 162098 Add 79234 148586 Add 79234 162105 Add 79234 162106 Add 79234 150847 Add 79234 162113 Add 79234 162114 Add 79234 151845 Add 79234 162115 Add 79234 162120 Add 79234 150926 Add 79234 162121 Add 79234 162123 Add 79234 152243 Add 79234 162128 Add 79234 153498 Add 79234 162129 Add 79234 162130 Add 79234 162137 Add 79234 162139 Add 79234 162140 Add 79234 150023 Add 79234 162145 Add 79234 162146 Add 79234 162147 Add 79234 162153 Add 79234 148032 Add 79234 150323 Add 79234 148040 Add 79234 162156 Add 79234 154451 Add 79234 162162 Add 79234 162164 Add 79234 154326 Add 79234 162170 Add 79234 162171 Add 79234 148703 Add 79234 162172 Add 79234 155744 Add 79234 162173 Add 79234 162178 Add 79234 162179 Add 79234 162180 Add 79234 158195 Add 79234 149530 Add 79234 162187 Add 79234 162188 Add 79234 162189 Add 79234 162190 Add 79234 162195 Add 79234 162196 Add 79234 151686 Add 79234 162197 Add 79234 162198 Add 79234 153380 Add 79234 162203 Add 79234 162204 Add 79234 162206 Add 79234 162212 Add 79234 162213 Add 79234 162214 Add 79234 162215 Add 79234 147900 Add 79234 162221 Add 79234 162228 Add 79234 162229 Add 79234 162231 Add 79234 162232 Add 79234 162237 Add 79234 162238 Add 79234 162239 Add 79234 162240 Add 79234 162247 Add 79234 162248 Add 79234 151285 Add 79234 162253 Add 79234 162254 Add 79234 162255 Add 79234 162256 Add 79234 162257 Add 79234 148717 Add 79234 162262 Add 79234 162263 Add 79234 162264 Add 79234 162270 Add 79234 149027 Add 79234 162279 Add 79234 149522 Add 79234 153984 Add 79234 162280 Add 79234 162281 Add 79234 162289 Add 79234 162290 Add 79234 162295 Add 79234 162304 Add 79234 162306 Add 79234 153739 Add 79234 162312 Add 79234 162313 Add 79234 162314 Add 79234 150951 Add 79234 162322 Add 79234 162323 Add 79234 162324 Add 79234 152201 Add 79234 162330 Add 79234 162331 Add 79234 162332 Add 79234 162339 Add 79234 162340 Add 79234 148776 Add 79234 162346 Add 79234 150138 Add 79234 162349 Add 79234 149176 Add 79234 162354 Add 79234 162355 Add 79234 162356 Add 79234 149637 Add 79234 162357 Add 79234 149570 Add 79234 152887 Add 79234 162363 Add 79234 162364 Add 79234 162370 Add 79234 162372 Add 79234 162373 Add 79234 162374 newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.csproj0000664000175000017500000007505612454416117027755 0ustar directhexdirecthex Debug AnyCPU {CCD1B8C4-7349-409C-A090-A9B9A1ABD981} Library Properties Newtonsoft.Json.Tests Newtonsoft.Json.Tests v4.5 512 true full false bin\Debug\Net45\ DEBUG;TRACE prompt 4 pdbonly true bin\Release\Net45\ TRACE prompt 4 ..\packages\Autofac.3.5.0\lib\net40\Autofac.dll False ..\packages\FSharp.Core.4.0.0\lib\FSharp.Core.dll False ..\packages\NUnit.2.6.2\lib\nunit.framework.dll False ..\packages\System.Collections.Immutable.1.1.33-beta\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll True True FileSystemEntityModel.edmx True True LinqToSqlClasses.dbml Component PreserveNewest MSLinqToSQLGenerator LinqToSqlClasses.designer.cs Designer Designer Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always Always PreserveNewest EntityModelCodeGenerator FileSystemEntityModel.Designer.cs LinqToSqlClasses.dbml PreserveNewest PreserveNewest PreserveNewest {eeea67f9-9089-481d-a4dc-0966dec9fd7d} Newtonsoft.Json newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/DemoTests.cs0000664000175000017500000004212012454416117024574 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; using Newtonsoft.Json.Serialization; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests { [TestFixture] public class DemoTests : TestFixtureBase { public class HtmlColor { public int Red { get; set; } public int Green { get; set; } public int Blue { get; set; } } [Test] public void JsonConverter() { HtmlColor red = new HtmlColor { Red = 255, Green = 0, Blue = 0 }; string json = JsonConvert.SerializeObject(red, new JsonSerializerSettings { Formatting = Formatting.Indented }); // { // "Red": 255, // "Green": 0, // "Blue": 0 // } json = JsonConvert.SerializeObject(red, new JsonSerializerSettings { Formatting = Formatting.Indented, Converters = { new HtmlColorConverter() } }); // "#FF0000" HtmlColor r2 = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { Formatting = Formatting.Indented, Converters = { new HtmlColorConverter() } }); Assert.AreEqual(255, r2.Red); Assert.AreEqual(0, r2.Green); Assert.AreEqual(0, r2.Blue); Console.WriteLine(json); } public class PersonDemo { public string Name { get; set; } public int Age { get; set; } public string Job { get; set; } } public class Session { public string Name { get; set; } public DateTime Date { get; set; } } [Test] public void GenerateSchema() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); JsonSchema schema = generator.Generate(typeof(Session)); // { // "type": "object", // "properties": { // "Name": { // "required": true, // "type": [ // "string", // "null" // ] // }, // "Date": { // "required": true, // "type": "string" // } // } // } } public class HtmlColorConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { // create hex string from value HtmlColor color = (HtmlColor)value; string hexString = color.Red.ToString("X2") + color.Green.ToString("X2") + color.Blue.ToString("X2"); // write value to json writer.WriteValue("#" + hexString); } //public override object ReadJson(JsonReader reader, Type objectType, // object existingValue, JsonSerializer serializer) //{ // throw new NotImplementedException(); //} public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { // get hex string string hexString = (string)reader.Value; hexString = hexString.TrimStart('#'); // build html color from hex return new HtmlColor { Red = Convert.ToInt32(hexString.Substring(0, 2), 16), Green = Convert.ToInt32(hexString.Substring(2, 2), 16), Blue = Convert.ToInt32(hexString.Substring(4, 2), 16) }; } public override bool CanConvert(Type objectType) { return objectType == typeof(HtmlColor); } } [Test] public void SerializationGuide() { IList roles = new List { "User", "Admin" }; string roleJson = JsonConvert.SerializeObject(roles, Formatting.Indented); // [ // "User", // "Admin" // ] IDictionary dailyRegistrations = new Dictionary { { new DateTime(2014, 6, 1), 23 }, { new DateTime(2014, 6, 2), 50 } }; string regJson = JsonConvert.SerializeObject(dailyRegistrations, Formatting.Indented); // { // "2014-06-01T00:00:00": 23, // "2014-06-02T00:00:00": 50 // } City c = new City { Name = "Oslo", Population = 650000 }; string cityJson = JsonConvert.SerializeObject(c, Formatting.Indented); // { // "Name": "Oslo", // "Population": 650000 // } } [Test] public void SerializationBasics() { IList roles = new List { "User", "Admin" }; MemoryTraceWriter traceWriter = new MemoryTraceWriter(); string j = JsonConvert.SerializeObject(roles, new JsonSerializerSettings { Formatting = Formatting.Indented, TraceWriter = traceWriter }); string trace = traceWriter.ToString(); // Started serializing System.Collections.Generic.List`1[System.String]. // Finished serializing System.Collections.Generic.List`1[System.String]. // 2014-05-13T13:41:53.706 Verbose Serialized JSON: // [ // "User", // "Admin" // ] Console.WriteLine(trace); } [Test] public void SerializationBasics2() { var s = new Session { Name = "Serialize All The Things", Date = new DateTime(2014, 6, 4) }; string j = JsonConvert.SerializeObject(s, new JsonSerializerSettings { Formatting = Formatting.Indented, Converters = { new JavaScriptDateTimeConverter() } }); // { // "Name": "Serialize All The Things", // "Date": new Date(1401796800000) // } Console.WriteLine(j); } [Test] public void DeserializationBasics1() { string j = @"{ 'Name': 'Serialize All The Things', 'Date': new Date(1401796800000) }"; var s = JsonConvert.DeserializeObject(j, new JsonSerializerSettings { Converters = { new JavaScriptDateTimeConverter() } }); // Name = Serialize All The Things // Date = Tuesday, 3 June 2014 } [Test] public void DeserializationBasics2() { Session s = new Session(); s.Date = new DateTime(2014, 6, 4); string j = @"{ 'Name': 'Serialize All The Things' }"; JsonConvert.PopulateObject(j, s); // Name = Serialize All The Things // Date = Tuesday, 3 June 2014 } public class City { public string Name { get; set; } public int Population { get; set; } } public class Employee { public string Name { get; set; } } public class Manager : Employee { public IList Reportees { get; set; } } [Test] public void SerializeReferencesByValue() { Employee arnie = new Employee { Name = "Arnie Admin" }; Manager mike = new Manager { Name = "Mike Manager" }; Manager susan = new Manager { Name = "Susan Supervisor" }; mike.Reportees = new[] { arnie, susan }; susan.Reportees = new[] { arnie }; string json = JsonConvert.SerializeObject(mike, Formatting.Indented); // { // "Reportees": [ // { // "Name": "Arnie Admin" // }, // { // "Reportees": [ // { // "Name": "Arnie Admin" // } // ], // "Name": "Susan Supervisor" // } // ], // "Name": "Mike Manager" // } Console.WriteLine(json); } [Test] public void SerializeReferencesWithMetadata() { Employee arnie = new Employee { Name = "Arnie Admin" }; Manager mike = new Manager { Name = "Mike Manager" }; Manager susan = new Manager { Name = "Susan Supervisor" }; mike.Reportees = new[] { arnie, susan }; susan.Reportees = new[] { arnie }; string json = JsonConvert.SerializeObject(mike, new JsonSerializerSettings { Formatting = Formatting.Indented, TypeNameHandling = TypeNameHandling.Objects, PreserveReferencesHandling = PreserveReferencesHandling.Objects }); // { // "$id": "1", // "$type": "YourNamespace.Manager, YourAssembly", // "Name": "Mike Manager", // "Reportees": [ // { // "$id": "2", // "$type": "YourNamespace.Employee, YourAssembly", // "Name": "Arnie Admin" // }, // { // "$id": "3", // "$type": "YourNamespace.Manager, YourAssembly", // "Name": "Susan Supervisor", // "Reportees": [ // { // "$ref": "2" // } // ] // } // ] // } Console.WriteLine(json); } [Test] public void RoundtripTypesAndReferences() { string json = @"{ '$id': '1', '$type': 'Newtonsoft.Json.Tests.DemoTests+Manager, Newtonsoft.Json.Tests', 'Reportees': [ { '$id': '2', '$type': 'Newtonsoft.Json.Tests.DemoTests+Employee, Newtonsoft.Json.Tests', 'Name': 'Arnie Admin' }, { '$id': '3', '$type': 'Newtonsoft.Json.Tests.DemoTests+Manager, Newtonsoft.Json.Tests', 'Reportees': [ { '$ref': '2' } ], 'Name': 'Susan Supervisor' } ], 'Name': 'Mike Manager' }"; var e = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, PreserveReferencesHandling = PreserveReferencesHandling.Objects }); // Name = Mike Manager // Reportees = Arnie Admin, Susan Supervisor Manager mike = (Manager)e; Manager susan = (Manager)mike.Reportees[1]; Object.ReferenceEquals(mike.Reportees[0], susan.Reportees[0]); // true Assert.IsTrue(ReferenceEquals(mike.Reportees[0], susan.Reportees[0])); } public class House { public string StreetAddress { get; set; } public DateTime BuildDate { get; set; } public int Bedrooms { get; set; } public decimal FloorArea { get; set; } } public class House1 { public string StreetAddress { get; set; } [JsonIgnore] public int Bedrooms { get; set; } [JsonIgnore] public decimal FloorArea { get; set; } [JsonIgnore] public DateTime BuildDate { get; set; } } [JsonObject(MemberSerialization.OptIn)] public class House3 { [JsonProperty] public string StreetAddress { get; set; } public int Bedrooms { get; set; } public decimal FloorArea { get; set; } public DateTime BuildDate { get; set; } } [JsonObject(MemberSerialization.OptIn)] public class House2 { [JsonProperty("address")] public string StreetAddress { get; set; } public int Bedrooms { get; set; } public decimal FloorArea { get; set; } public DateTime BuildDate { get; set; } } [JsonObject(MemberSerialization.OptIn)] public class House4 { [JsonProperty("address", Order = 2)] public string StreetAddress { get; set; } public int Bedrooms { get; set; } public decimal FloorArea { get; set; } [JsonProperty("buildDate", Order = 1)] public DateTime BuildDate { get; set; } } [JsonObject(MemberSerialization.OptIn)] public class House5 { [JsonProperty("address", Order = 2)] public string StreetAddress { get; set; } public int Bedrooms { get; set; } public decimal FloorArea { get; set; } [JsonProperty("buildDate", Order = 1)] [JsonConverter(typeof(JavaScriptDateTimeConverter))] public DateTime BuildDate { get; set; } } [Test] public void SerializeAttributes() { var house = new House3(); house.StreetAddress = "221B Baker Street"; house.Bedrooms = 2; house.FloorArea = 100m; house.BuildDate = new DateTime(1890, 1, 1); string json = JsonConvert.SerializeObject(house, Formatting.Indented); // { // "StreetAddress": "221B Baker Street", // "Bedrooms": 2, // "FloorArea": 100.0, // "BuildDate": "1890-01-01T00:00:00" // } // { // "StreetAddress": "221B Baker Street" // } // { // "address": "221B Baker Street" // } // { // "buildDate": "1890-01-01T00:00:00", // "address": "221B Baker Street" // } // { // "buildDate": new Date(-2524568400000), // "address": "221B Baker Street" // } } [Test] public void MergeJson() { JObject o1 = JObject.Parse(@"{ 'FirstName': 'John', 'LastName': 'Smith', 'Enabled': false, 'Roles': [ 'User' ] }"); JObject o2 = JObject.Parse(@"{ 'Enabled': true, 'Roles': [ 'User', 'Admin' ] }"); o1.Merge(o2, new JsonMergeSettings { // union arrays together to avoid duplicates MergeArrayHandling = MergeArrayHandling.Union }); string json = o1.ToString(); // { // "FirstName": "John", // "LastName": "Smith", // "Enabled": true, // "Roles": [ // "User", // "Admin" // ] // } Console.WriteLine(json); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/TestFixtureBase.cs0000664000175000017500000002703312454416117025754 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Reflection; using System.Text.RegularExpressions; #if NET20 using Newtonsoft.Json.Serialization; #else using System.Runtime.Serialization.Json; #endif using System.Text; using System.Threading; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using TestMethod = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; using SetUp = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestInitializeAttribute; #elif ASPNETCORE50 using Xunit; using Assert = Newtonsoft.Json.Tests.XUnitAssert; using XAssert = Xunit.Assert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Utilities; using System.Collections; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests { public class TestReflectionUtils { public static IEnumerable GetConstructors(Type type) { #if !(NETFX_CORE || ASPNETCORE50) return type.GetConstructors(); #else return type.GetTypeInfo().DeclaredConstructors; #endif } public static PropertyInfo GetProperty(Type type, string name) { #if !(NETFX_CORE || ASPNETCORE50) return type.GetProperty(name); #else return type.GetTypeInfo().GetDeclaredProperty(name); #endif } public static FieldInfo GetField(Type type, string name) { #if !(NETFX_CORE || ASPNETCORE50) return type.GetField(name); #else return type.GetTypeInfo().GetDeclaredField(name); #endif } public static MethodInfo GetMethod(Type type, string name) { #if !(NETFX_CORE || ASPNETCORE50) return type.GetMethod(name); #else return type.GetTypeInfo().GetDeclaredMethod(name); #endif } } #if ASPNETCORE50 public class TestFixtureAttribute : Attribute { // xunit doesn't need a test fixture attribute // this exists so the project compiles } public class XUnitAssert { public static void IsInstanceOf(Type expectedType, object o) { XAssert.IsType(expectedType, o); } public static void AreEqual(double expected, double actual, double r) { XAssert.Equal(expected, actual, 5); // hack } public static void AreEqual(object expected, object actual, string message = null) { XAssert.Equal(expected, actual); } public static void AreEqual(T expected, T actual, string message = null) { XAssert.Equal(expected, actual); } public static void AreNotEqual(object expected, object actual, string message = null) { XAssert.NotEqual(expected, actual); } public static void AreNotEqual(T expected, T actual, string message = null) { XAssert.NotEqual(expected, actual); } public static void Fail(string message = null, params object[] args) { if (message != null) message = message.FormatWith(CultureInfo.InvariantCulture, args); XAssert.True(false, message); } public static void IsTrue(bool condition, string message = null) { XAssert.True(condition); } public static void IsFalse(bool condition) { XAssert.False(condition); } public static void IsNull(object o) { XAssert.Null(o); } public static void IsNotNull(object o) { XAssert.NotNull(o); } public static void AreNotSame(object expected, object actual) { XAssert.NotSame(expected, actual); } public static void AreSame(object expected, object actual) { XAssert.Same(expected, actual); } } public class CollectionAssert { public static void AreEquivalent(IEnumerable expected, IEnumerable actual) { XAssert.Equal(expected, actual); } public static void AreEqual(IEnumerable expected, IEnumerable actual) { XAssert.Equal(expected, actual); } } #endif [TestFixture] public abstract class TestFixtureBase { #if !NET20 protected string GetDataContractJsonSerializeResult(object o) { MemoryStream ms = new MemoryStream(); DataContractJsonSerializer s = new DataContractJsonSerializer(o.GetType()); s.WriteObject(ms, o); var data = ms.ToArray(); return Encoding.UTF8.GetString(data, 0, data.Length); } #endif protected string GetOffset(DateTime d, DateFormatHandling dateFormatHandling) { char[] chars = new char[8]; int pos = DateTimeUtils.WriteDateTimeOffset(chars, 0, DateTime.SpecifyKind(d, DateTimeKind.Local).GetUtcOffset(), dateFormatHandling); return new string(chars, 0, pos); } protected string BytesToHex(byte[] bytes) { return BytesToHex(bytes, false); } protected string BytesToHex(byte[] bytes, bool removeDashes) { string hex = BitConverter.ToString(bytes); if (removeDashes) hex = hex.Replace("-", ""); return hex; } protected byte[] HexToBytes(string hex) { string fixedHex = hex.Replace("-", string.Empty); // array to put the result in byte[] bytes = new byte[fixedHex.Length / 2]; // variable to determine shift of high/low nibble int shift = 4; // offset of the current byte in the array int offset = 0; // loop the characters in the string foreach (char c in fixedHex) { // get character code in range 0-9, 17-22 // the % 32 handles lower case characters int b = (c - '0') % 32; // correction for a-f if (b > 9) b -= 7; // store nibble (4 bits) in byte array bytes[offset] |= (byte)(b << shift); // toggle the shift variable between 0 and 4 shift ^= 4; // move to next byte if (shift != 0) offset++; } return bytes; } #if ASPNETCORE50 protected TestFixtureBase() #else [SetUp] protected void TestSetup() #endif { #if !NETFX_CORE //CultureInfo turkey = CultureInfo.CreateSpecificCulture("tr"); //Thread.CurrentThread.CurrentCulture = turkey; //Thread.CurrentThread.CurrentUICulture = turkey; Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture; #endif JsonConvert.DefaultSettings = null; } protected void WriteEscapedJson(string json) { Console.WriteLine(EscapeJson(json)); } protected string EscapeJson(string json) { return @"@""" + json.Replace(@"""", @"""""") + @""""; } } #if NETFX_CORE public static class Console { public static void WriteLine(params object[] args) { } } #endif public static class CustomAssert { public static void IsInstanceOfType(Type t, object instance) { #if NETFX_CORE if (!instance.GetType().IsAssignableFrom(t)) throw new Exception("Not instance of type"); #else Assert.IsInstanceOf(t, instance); #endif } public static void Contains(IList collection, object value) { Contains(collection, value, null); } public static void Contains(IList collection, object value, string message) { #if !(NETFX_CORE || ASPNETCORE50) Assert.Contains(value, collection, message); #else if (!collection.Cast().Any(i => i.Equals(value))) throw new Exception(message ?? "Value not found in collection."); #endif } } public static class StringAssert { private readonly static Regex Regex = new Regex(@"\r\n|\n\r|\n|\r", RegexOptions.CultureInvariant); public static void AreEqual(string expected, string actual) { expected = Normalize(expected); actual = Normalize(actual); Assert.AreEqual(expected, actual); } public static bool Equals(string s1, string s2) { s1 = Normalize(s1); s2 = Normalize(s2); return string.Equals(s1, s2); } public static string Normalize(string s) { if (s != null) s = Regex.Replace(s, "\r\n"); return s; } } public static class ExceptionAssert { public static void Throws(Action action, params string[] possibleMessages) where TException : Exception { try { action(); Assert.Fail("Exception of type {0} expected. No exception thrown.", typeof(TException).Name); } catch (TException ex) { if (possibleMessages != null && possibleMessages.Length > 0) { bool match = false; foreach (string possibleMessage in possibleMessages) { if (StringAssert.Equals(possibleMessage, ex.Message)) { match = true; break; } } if (!match) throw new Exception("Unexpected exception message." + Environment.NewLine + "Expected one of: " + string.Join(Environment.NewLine, possibleMessages) + Environment.NewLine + "Got: " + ex.Message + Environment.NewLine + Environment.NewLine + ex); } } catch (Exception ex) { throw new Exception(string.Format("Exception of type {0} expected; got exception of type {1}.", typeof(TException).Name, ex.GetType().Name), ex); } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/JsonValidatingReaderTests.cs0000664000175000017500000017445112454416117027764 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #endif #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif using System.Text; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using System.Xml; using System.Xml.Schema; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; using Newtonsoft.Json.Utilities; using ValidationEventArgs = Newtonsoft.Json.Schema.ValidationEventArgs; namespace Newtonsoft.Json.Tests { [TestFixture] public class JsonValidatingReaderTests : TestFixtureBase { [Test] public void CheckInnerReader() { string json = "{'name':'James','hobbies':['pie','cake']}"; JsonReader reader = new JsonTextReader(new StringReader(json)); JsonValidatingReader validatingReader = new JsonValidatingReader(reader); Assert.AreEqual(reader, validatingReader.Reader); } [Test] public void ValidateTypes() { string schemaJson = @"{ ""description"":""A person"", ""type"":""object"", ""properties"": { ""name"":{""type"":""string""}, ""hobbies"": { ""type"":""array"", ""items"": {""type"":""string""} } } }"; string json = @"{'name':""James"",'hobbies':[""pie"",'cake']}"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; JsonSchema schema = JsonSchema.Parse(schemaJson); reader.Schema = schema; Assert.AreEqual(schema, reader.Schema); Assert.AreEqual(0, reader.Depth); Assert.AreEqual("", reader.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.AreEqual("", reader.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("name", reader.Value.ToString()); Assert.AreEqual("name", reader.Path); Assert.AreEqual(1, reader.Depth); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("James", reader.Value.ToString()); Assert.AreEqual(typeof(string), reader.ValueType); Assert.AreEqual('"', reader.QuoteChar); Assert.AreEqual("name", reader.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("hobbies", reader.Value.ToString()); Assert.AreEqual('\'', reader.QuoteChar); Assert.AreEqual("hobbies", reader.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.AreEqual("hobbies", reader.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("pie", reader.Value.ToString()); Assert.AreEqual('"', reader.QuoteChar); Assert.AreEqual("hobbies[0]", reader.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("cake", reader.Value.ToString()); Assert.AreEqual("hobbies[1]", reader.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.AreEqual("hobbies", reader.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.AreEqual("", reader.Path); Assert.IsFalse(reader.Read()); Assert.IsNull(validationEventArgs); } [Test] public void ValidateUnrestrictedArray() { string schemaJson = @"{ ""type"":""array"" }"; string json = "['pie','cake',['nested1','nested2'],{'nestedproperty1':1.1,'nestedproperty2':[null]}]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("pie", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("cake", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("nested1", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("nested2", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("nestedproperty1", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(1.1, reader.Value); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("nestedproperty2", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNull(validationEventArgs); } [Test] public void StringLessThanMinimumLength() { string schemaJson = @"{ ""type"":""string"", ""minLength"":5, ""maxLength"":50, }"; string json = "'pie'"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("String 'pie' is less than minimum length of 5. Line 1, position 5.", validationEventArgs.Message); Assert.IsNotNull(validationEventArgs); } [Test] public void StringGreaterThanMaximumLength() { string schemaJson = @"{ ""type"":""string"", ""minLength"":5, ""maxLength"":10 }"; string json = "'The quick brown fox jumps over the lazy dog.'"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("String 'The quick brown fox jumps over the lazy dog.' exceeds maximum length of 10. Line 1, position 46.", validationEventArgs.Message); Assert.IsNotNull(validationEventArgs); } [Test] public void StringIsNotInEnum() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""string"", ""enum"":[""one"",""two""] }, ""maxItems"":3 }"; string json = "['one','two','THREE']"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(@"Value ""THREE"" is not defined in enum. Line 1, position 20.", validationEventArgs.Message); Assert.AreEqual("[2]", validationEventArgs.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNotNull(validationEventArgs); } [Test] public void StringDoesNotMatchPattern() { string schemaJson = @"{ ""type"":""string"", ""pattern"":""foo"" }"; string json = "'The quick brown fox jumps over the lazy dog.'"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("String 'The quick brown fox jumps over the lazy dog.' does not match regex pattern 'foo'. Line 1, position 46.", validationEventArgs.Message); Assert.AreEqual("", validationEventArgs.Path); Assert.IsNotNull(validationEventArgs); } [Test] public void IntegerGreaterThanMaximumValue() { string schemaJson = @"{ ""type"":""integer"", ""maximum"":5 }"; string json = "10"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual("Integer 10 exceeds maximum value of 5. Line 1, position 2.", validationEventArgs.Message); Assert.AreEqual("", validationEventArgs.Path); Assert.IsNotNull(validationEventArgs); } #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void IntegerGreaterThanMaximumValue_BigInteger() { string schemaJson = @"{ ""type"":""integer"", ""maximum"":5 }"; string json = "99999999999999999999999999999999999999999999999999999999999999999999"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual("Integer 99999999999999999999999999999999999999999999999999999999999999999999 exceeds maximum value of 5. Line 1, position 68.", validationEventArgs.Message); Assert.AreEqual("", validationEventArgs.Path); Assert.IsNotNull(validationEventArgs); } [Test] public void IntegerLessThanMaximumValue_BigInteger() { string schemaJson = @"{ ""type"":""integer"", ""minimum"":5 }"; JValue v = new JValue(new BigInteger(1)); Json.Schema.ValidationEventArgs validationEventArgs = null; v.Validate(JsonSchema.Parse(schemaJson), (sender, args) => { validationEventArgs = args; }); Assert.IsNotNull(validationEventArgs); Assert.AreEqual("Integer 1 is less than minimum value of 5.", validationEventArgs.Message); Assert.AreEqual("", validationEventArgs.Path); } #endif [Test] public void ThrowExceptionWhenNoValidationEventHandler() { ExceptionAssert.Throws(() => { string schemaJson = @"{ ""type"":""integer"", ""maximum"":5 }"; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader("10"))); reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); }, "Integer 10 exceeds maximum value of 5. Line 1, position 2."); } [Test] public void IntegerLessThanMinimumValue() { string schemaJson = @"{ ""type"":""integer"", ""minimum"":5 }"; string json = "1"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual("Integer 1 is less than minimum value of 5. Line 1, position 1.", validationEventArgs.Message); Assert.IsNotNull(validationEventArgs); } [Test] public void IntegerIsNotInEnum() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""integer"", ""enum"":[1,2] }, ""maxItems"":3 }"; string json = "[1,2,3]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(@"Value 3 is not defined in enum. Line 1, position 6.", validationEventArgs.Message); Assert.AreEqual("[2]", validationEventArgs.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNotNull(validationEventArgs); } [Test] public void FloatGreaterThanMaximumValue() { string schemaJson = @"{ ""type"":""number"", ""maximum"":5 }"; string json = "10.0"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual("Float 10.0 exceeds maximum value of 5. Line 1, position 4.", validationEventArgs.Message); Assert.IsNotNull(validationEventArgs); } [Test] public void FloatLessThanMinimumValue() { string schemaJson = @"{ ""type"":""number"", ""minimum"":5 }"; string json = "1.1"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual("Float 1.1 is less than minimum value of 5. Line 1, position 3.", validationEventArgs.Message); Assert.IsNotNull(validationEventArgs); } [Test] public void FloatIsNotInEnum() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""number"", ""enum"":[1.1,2.2] }, ""maxItems"":3 }"; string json = "[1.1,2.2,3.0]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(@"Value 3.0 is not defined in enum. Line 1, position 12.", validationEventArgs.Message); Assert.AreEqual("[2]", validationEventArgs.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNotNull(validationEventArgs); } [Test] public void FloatDivisibleBy() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""number"", ""divisibleBy"":0.1 } }"; string json = "[1.1,2.2,4.001]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(@"Float 4.001 is not evenly divisible by 0.1. Line 1, position 14.", validationEventArgs.Message); Assert.AreEqual("[2]", validationEventArgs.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNotNull(validationEventArgs); } #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void BigIntegerDivisibleBy_Success() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""number"", ""divisibleBy"":2 } }"; string json = "[999999999999999999999999999999999999999999999999999999998]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsNull(validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); } [Test] public void BigIntegerDivisibleBy_Failure() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""number"", ""divisibleBy"":2 } }"; string json = "[999999999999999999999999999999999999999999999999999999999]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(@"Integer 999999999999999999999999999999999999999999999999999999999 is not evenly divisible by 2. Line 1, position 58.", validationEventArgs.Message); Assert.AreEqual("[0]", validationEventArgs.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNotNull(validationEventArgs); } [Test] public void BigIntegerDivisibleBy_Fraction() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""number"", ""divisibleBy"":1.1 } }"; string json = "[999999999999999999999999999999999999999999999999999999999]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsNotNull(validationEventArgs); Assert.AreEqual(@"Integer 999999999999999999999999999999999999999999999999999999999 is not evenly divisible by 1.1. Line 1, position 58.", validationEventArgs.Message); Assert.AreEqual("[0]", validationEventArgs.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); } [Test] public void BigIntegerDivisibleBy_FractionWithZeroValue() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""number"", ""divisibleBy"":1.1 } }"; JArray a = new JArray(new JValue(new BigInteger(0))); ValidationEventArgs validationEventArgs = null; a.Validate(JsonSchema.Parse(schemaJson), (sender, args) => { validationEventArgs = args; }); Assert.IsNull(validationEventArgs); } #endif [Test] public void IntValidForNumber() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""number"" } }"; string json = "[1]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNull(validationEventArgs); } [Test] public void NullNotInEnum() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""null"", ""enum"":[] }, ""maxItems"":3 }"; string json = "[null]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.AreEqual(@"Value null is not defined in enum. Line 1, position 5.", validationEventArgs.Message); Assert.AreEqual("[0]", validationEventArgs.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNotNull(validationEventArgs); } [Test] public void BooleanNotInEnum() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""boolean"", ""enum"":[true] }, ""maxItems"":3 }"; string json = "[true,false]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Boolean, reader.TokenType); Assert.AreEqual(@"Value false is not defined in enum. Line 1, position 11.", validationEventArgs.Message); Assert.AreEqual("[1]", validationEventArgs.Path); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNotNull(validationEventArgs); } [Test] public void ArrayCountGreaterThanMaximumItems() { string schemaJson = @"{ ""type"":""array"", ""minItems"":2, ""maxItems"":3 }"; string json = "[null,null,null,null]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.AreEqual("Array item count 4 exceeds maximum count of 3. Line 1, position 21.", validationEventArgs.Message); Assert.IsNotNull(validationEventArgs); } [Test] public void ArrayCountLessThanMinimumItems() { string schemaJson = @"{ ""type"":""array"", ""minItems"":2, ""maxItems"":3 }"; string json = "[null]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.AreEqual("Array item count 1 is less than minimum count of 2. Line 1, position 6.", validationEventArgs.Message); Assert.IsNotNull(validationEventArgs); } [Test] public void InvalidDataType() { string schemaJson = @"{ ""type"":""string"", ""minItems"":2, ""maxItems"":3, ""items"":{} }"; string json = "[null,null,null,null]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.AreEqual(@"Invalid type. Expected String but got Array. Line 1, position 1.", validationEventArgs.Message); Assert.IsNotNull(validationEventArgs); } [Test] public void StringDisallowed() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""disallow"":[""number""] }, ""maxItems"":3 }"; string json = "['pie',1.1]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(@"Type Float is disallowed. Line 1, position 10.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsNotNull(validationEventArgs); } [Test] public void MissingRequiredProperties() { string schemaJson = @"{ ""description"":""A person"", ""type"":""object"", ""properties"": { ""name"":{""type"":""string""}, ""hobbies"":{""type"":""string"",""required"":true}, ""age"":{""type"":""integer"",""required"":true} } }"; string json = "{'name':'James'}"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("name", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("James", reader.Value.ToString()); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.AreEqual("Required properties are missing from object: hobbies, age. Line 1, position 16.", validationEventArgs.Message); Assert.AreEqual("", validationEventArgs.Path); Assert.IsNotNull(validationEventArgs); } [Test] public void MissingNonRequiredProperties() { string schemaJson = @"{ ""description"":""A person"", ""type"":""object"", ""properties"": { ""name"":{""type"":""string"",""required"":true}, ""hobbies"":{""type"":""string"",""required"":false}, ""age"":{""type"":""integer""} } }"; string json = "{'name':'James'}"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("name", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("James", reader.Value.ToString()); Assert.IsNull(validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsNull(validationEventArgs); } [Test] public void DisableAdditionalProperties() { string schemaJson = @"{ ""description"":""A person"", ""type"":""object"", ""properties"": { ""name"":{""type"":""string""} }, ""additionalProperties"":false }"; string json = "{'name':'James','additionalProperty1':null,'additionalProperty2':null}"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("name", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("James", reader.Value.ToString()); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("additionalProperty1", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.AreEqual(null, reader.Value); Assert.AreEqual("Property 'additionalProperty1' has not been defined and the schema does not allow additional properties. Line 1, position 38.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("additionalProperty2", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.AreEqual(null, reader.Value); Assert.AreEqual("Property 'additionalProperty2' has not been defined and the schema does not allow additional properties. Line 1, position 65.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsNotNull(validationEventArgs); } [Test] public void ExtendsStringGreaterThanMaximumLength() { string schemaJson = @"{ ""extends"":{ ""type"":""string"", ""minLength"":5, ""maxLength"":10 }, ""maxLength"":9 }"; List errors = new List(); string json = "'The quick brown fox jumps over the lazy dog.'"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; errors.Add(validationEventArgs.Message); }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual(1, errors.Count); Assert.AreEqual("String 'The quick brown fox jumps over the lazy dog.' exceeds maximum length of 9. Line 1, position 46.", errors[0]); Assert.IsNotNull(validationEventArgs); } private JsonSchema GetExtendedSchema() { string first = @"{ ""id"":""first"", ""type"":""object"", ""properties"": { ""firstproperty"":{""type"":""string"",""required"":true} }, ""additionalProperties"":{} }"; string second = @"{ ""id"":""second"", ""type"":""object"", ""extends"":{""$ref"":""first""}, ""properties"": { ""secondproperty"":{""type"":""string"",""required"":true} }, ""additionalProperties"":false }"; JsonSchemaResolver resolver = new JsonSchemaResolver(); JsonSchema firstSchema = JsonSchema.Parse(first, resolver); JsonSchema secondSchema = JsonSchema.Parse(second, resolver); return secondSchema; } [Test] public void ExtendsDisallowAdditionProperties() { string json = "{'firstproperty':'blah','secondproperty':'blah2','additional':'blah3','additional2':'blah4'}"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = GetExtendedSchema(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("firstproperty", reader.Value.ToString()); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("blah", reader.Value.ToString()); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("secondproperty", reader.Value.ToString()); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("blah2", reader.Value.ToString()); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("additional", reader.Value.ToString()); Assert.AreEqual("Property 'additional' has not been defined and the schema does not allow additional properties. Line 1, position 62.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("blah3", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("additional2", reader.Value.ToString()); Assert.AreEqual("Property 'additional2' has not been defined and the schema does not allow additional properties. Line 1, position 84.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("blah4", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void ExtendsMissingRequiredProperties() { string json = "{}"; List errors = new List(); JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { errors.Add(args.Message); }; reader.Schema = GetExtendedSchema(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.AreEqual(1, errors.Count); Assert.AreEqual("Required properties are missing from object: secondproperty, firstproperty. Line 1, position 2.", errors[0]); } [Test] public void NoAdditionalItems() { string schemaJson = @"{ ""type"":""array"", ""items"": [{""type"":""string""},{""type"":""integer""}], ""additionalItems"": false }"; string json = @"[1, 'a', null]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual("Invalid type. Expected String but got Integer. Line 1, position 2.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("Invalid type. Expected Integer but got String. Line 1, position 7.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.AreEqual("Index 3 has not been defined and the schema does not allow additional items. Line 1, position 13.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void PatternPropertiesNoAdditionalProperties() { string schemaJson = @"{ ""type"":""object"", ""patternProperties"": { ""hi"": {""type"":""string""}, ""ho"": {""type"":""string""} }, ""additionalProperties"": false }"; string json = @"{ ""hi"": ""A string!"", ""hide"": ""A string!"", ""ho"": 1, ""hey"": ""A string!"" }"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual("Invalid type. Expected String but got Integer. Line 4, position 10.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("Property 'hey' has not been defined and the schema does not allow additional properties. Line 5, position 9.", validationEventArgs.Message); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void ExtendedComplex() { string first = @"{ ""id"":""first"", ""type"":""object"", ""properties"": { ""firstproperty"":{""type"":""string""}, ""secondproperty"":{""type"":""string"",""maxLength"":10}, ""thirdproperty"":{ ""type"":""object"", ""properties"": { ""thirdproperty_firstproperty"":{""type"":""string"",""maxLength"":10,""minLength"":7} } } }, ""additionalProperties"":{} }"; string second = @"{ ""id"":""second"", ""type"":""object"", ""extends"":{""$ref"":""first""}, ""properties"": { ""secondproperty"":{""type"":""any""}, ""thirdproperty"":{ ""extends"":{ ""properties"": { ""thirdproperty_firstproperty"":{""maxLength"":9,""minLength"":6,""pattern"":""hi2u""} }, ""additionalProperties"":{""maxLength"":9,""minLength"":6,""enum"":[""one"",""two""]} }, ""type"":""object"", ""properties"": { ""thirdproperty_firstproperty"":{""pattern"":""hi""} }, ""additionalProperties"":{""type"":""string"",""enum"":[""two"",""three""]} }, ""fourthproperty"":{""type"":""string""} }, ""additionalProperties"":false }"; JsonSchemaResolver resolver = new JsonSchemaResolver(); JsonSchema firstSchema = JsonSchema.Parse(first, resolver); JsonSchema secondSchema = JsonSchema.Parse(second, resolver); JsonSchemaModelBuilder modelBuilder = new JsonSchemaModelBuilder(); string json = @"{ 'firstproperty':'blahblahblahblahblahblah', 'secondproperty':'secasecasecasecaseca', 'thirdproperty':{ 'thirdproperty_firstproperty':'aaa', 'additional':'three' } }"; Json.Schema.ValidationEventArgs validationEventArgs = null; List errors = new List(); JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; errors.Add(validationEventArgs.Path + " - " + validationEventArgs.Message); }; reader.Schema = secondSchema; Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("firstproperty", reader.Value.ToString()); Assert.AreEqual(null, validationEventArgs); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("blahblahblahblahblahblah", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("secondproperty", reader.Value.ToString()); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("secasecasecasecaseca", reader.Value.ToString()); Assert.AreEqual(1, errors.Count); Assert.AreEqual("secondproperty - String 'secasecasecasecaseca' exceeds maximum length of 10. Line 3, position 42.", errors[0]); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("thirdproperty", reader.Value.ToString()); Assert.AreEqual(1, errors.Count); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.AreEqual(1, errors.Count); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("thirdproperty_firstproperty", reader.Value.ToString()); Assert.AreEqual(1, errors.Count); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("aaa", reader.Value.ToString()); Assert.AreEqual(4, errors.Count); Assert.AreEqual("thirdproperty.thirdproperty_firstproperty - String 'aaa' is less than minimum length of 7. Line 5, position 40.", errors[1]); Assert.AreEqual("thirdproperty.thirdproperty_firstproperty - String 'aaa' does not match regex pattern 'hi'. Line 5, position 40.", errors[2]); Assert.AreEqual("thirdproperty.thirdproperty_firstproperty - String 'aaa' does not match regex pattern 'hi2u'. Line 5, position 40.", errors[3]); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual("additional", reader.Value.ToString()); Assert.AreEqual(4, errors.Count); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.AreEqual("three", reader.Value.ToString()); Assert.AreEqual(5, errors.Count); Assert.AreEqual("thirdproperty.additional - String 'three' is less than minimum length of 6. Line 6, position 25.", errors[4]); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void DuplicateErrorsTest() { string schema = @"{ ""id"":""ErrorDemo.Database"", ""properties"":{ ""ErrorDemoDatabase"":{ ""type"":""object"", ""required"":true, ""properties"":{ ""URL"":{ ""type"":""string"", ""required"":true }, ""Version"":{ ""type"":""string"", ""required"":true }, ""Date"":{ ""type"":""string"", ""format"":""date-time"", ""required"":true }, ""MACLevels"":{ ""type"":""object"", ""required"":true, ""properties"":{ ""MACLevel"":{ ""type"":""array"", ""required"":true, ""items"":[ { ""required"":true, ""properties"":{ ""IDName"":{ ""type"":""string"", ""required"":true }, ""Order"":{ ""type"":""string"", ""required"":true }, ""IDDesc"":{ ""type"":""string"", ""required"":true }, ""IsActive"":{ ""type"":""string"", ""required"":true } } } ] } } } } } } }"; string json = @"{ ""ErrorDemoDatabase"":{ ""URL"":""localhost:3164"", ""Version"":""1.0"", ""Date"":""6.23.2010, 9:35:18.121"", ""MACLevels"":{ ""MACLevel"":[ { ""@IDName"":""Developer"", ""Order"":""0"", ""IDDesc"":""DeveloperDesc"", ""IsActive"":""True"" }, { ""IDName"":""Technician"", ""Order"":""1"", ""IDDesc"":""TechnicianDesc"", ""IsActive"":""True"" }, { ""IDName"":""Administrator"", ""Order"":""2"", ""IDDesc"":""AdministratorDesc"", ""IsActive"":""True"" }, { ""IDName"":""PowerUser"", ""Order"":""3"", ""IDDesc"":""PowerUserDesc"", ""IsActive"":""True"" }, { ""IDName"":""Operator"", ""Order"":""4"", ""IDDesc"":""OperatorDesc"", ""IsActive"":""True"" } ] } } }"; IList validationEventArgs = new List(); JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs.Add(args); }; reader.Schema = JsonSchema.Parse(schema); while (reader.Read()) { } Assert.AreEqual(1, validationEventArgs.Count); } [Test] public void ReadAsBytes() { JsonSchema s = new JsonSchemaGenerator().Generate(typeof(byte[])); byte[] data = Encoding.UTF8.GetBytes("Hello world"); JsonReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(@"""" + Convert.ToBase64String(data) + @""""))) { Schema = s }; byte[] bytes = reader.ReadAsBytes(); CollectionAssert.AreEquivalent(data, bytes); } [Test] public void ReadAsInt32() { JsonSchema s = new JsonSchemaGenerator().Generate(typeof(int)); JsonReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(@"1"))) { Schema = s }; int? i = reader.ReadAsInt32(); Assert.AreEqual(1, i); } [Test] public void ReadAsInt32Failure() { ExceptionAssert.Throws(() => { JsonSchema s = new JsonSchemaGenerator().Generate(typeof(int)); s.Maximum = 2; JsonReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(@"5"))) { Schema = s }; reader.ReadAsInt32(); }, "Integer 5 exceeds maximum value of 2. Line 1, position 1."); } [Test] public void ReadAsDecimal() { JsonSchema s = new JsonSchemaGenerator().Generate(typeof(decimal)); JsonReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(@"1.5"))) { Schema = s }; decimal? d = reader.ReadAsDecimal(); Assert.AreEqual(1.5m, d); } [Test] public void ReadAsDecimalFailure() { ExceptionAssert.Throws(() => { JsonSchema s = new JsonSchemaGenerator().Generate(typeof(decimal)); s.DivisibleBy = 1; JsonReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(@"5.5"))) { Schema = s }; reader.ReadAsDecimal(); }, "Float 5.5 is not evenly divisible by 1. Line 1, position 3."); } [Test] public void ReadAsInt32FromSerializer() { JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader("[1,2,3]"))); reader.Schema = new JsonSchemaGenerator().Generate(typeof(int[])); int[] values = new JsonSerializer().Deserialize(reader); Assert.AreEqual(3, values.Length); Assert.AreEqual(1, values[0]); Assert.AreEqual(2, values[1]); Assert.AreEqual(3, values[2]); } [Test] public void ReadAsInt32InArray() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""integer"" }, ""maxItems"":1 }"; string json = "[1,2]"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); reader.Read(); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); reader.ReadAsInt32(); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(null, validationEventArgs); reader.ReadAsInt32(); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(null, validationEventArgs); reader.ReadAsInt32(); Assert.AreEqual(JsonToken.EndArray, reader.TokenType); Assert.AreEqual("Array item count 2 exceeds maximum count of 1. Line 1, position 5.", validationEventArgs.Message); Assert.AreEqual("", validationEventArgs.Path); } [Test] public void ReadAsInt32InArrayIncomplete() { string schemaJson = @"{ ""type"":""array"", ""items"":{ ""type"":""integer"" }, ""maxItems"":1 }"; string json = "[1,2"; Json.Schema.ValidationEventArgs validationEventArgs = null; JsonValidatingReader reader = new JsonValidatingReader(new JsonTextReader(new StringReader(json))); reader.ValidationEventHandler += (sender, args) => { validationEventArgs = args; }; reader.Schema = JsonSchema.Parse(schemaJson); reader.Read(); Assert.AreEqual(JsonToken.StartArray, reader.TokenType); reader.ReadAsInt32(); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(null, validationEventArgs); reader.ReadAsInt32(); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(null, validationEventArgs); reader.ReadAsInt32(); Assert.AreEqual(JsonToken.None, reader.TokenType); Assert.AreEqual(null, validationEventArgs); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/0000775000175000017500000000000012454416117023537 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaNodeTests.cs0000664000175000017500000000767212454416117027765 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using Newtonsoft.Json.Schema; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Schema { [TestFixture] public class JsonSchemaNodeTests : TestFixtureBase { [Test] public void AddSchema() { string first = @"{ ""id"":""first"", ""type"":""object"", ""properties"": { ""firstproperty"":{""type"":""string"",""maxLength"":10}, ""secondproperty"":{ ""type"":""object"", ""properties"": { ""secondproperty_firstproperty"":{""type"":""string"",""maxLength"":10,""minLength"":7} } } }, ""additionalProperties"":{} }"; string second = @"{ ""id"":""second"", ""type"":""object"", ""extends"":{""$ref"":""first""}, ""properties"": { ""firstproperty"":{""type"":""string""}, ""secondproperty"":{ ""extends"":{ ""properties"": { ""secondproperty_firstproperty"":{""maxLength"":9,""minLength"":6} } }, ""type"":""object"", ""properties"": { ""secondproperty_firstproperty"":{} } }, ""thirdproperty"":{""type"":""string""} }, ""additionalProperties"":false }"; JsonSchemaResolver resolver = new JsonSchemaResolver(); JsonSchema firstSchema = JsonSchema.Parse(first, resolver); JsonSchema secondSchema = JsonSchema.Parse(second, resolver); JsonSchemaModelBuilder modelBuilder = new JsonSchemaModelBuilder(); JsonSchemaNode node = modelBuilder.AddSchema(null, secondSchema); Assert.AreEqual(2, node.Schemas.Count); Assert.AreEqual(2, node.Properties["firstproperty"].Schemas.Count); Assert.AreEqual(3, node.Properties["secondproperty"].Schemas.Count); Assert.AreEqual(3, node.Properties["secondproperty"].Properties["secondproperty_firstproperty"].Schemas.Count); } [Test] public void CircularReference() { string json = @"{ ""id"":""CircularReferenceArray"", ""description"":""CircularReference"", ""type"":[""array""], ""items"":{""$ref"":""CircularReferenceArray""} }"; JsonSchema schema = JsonSchema.Parse(json); JsonSchemaModelBuilder modelBuilder = new JsonSchemaModelBuilder(); JsonSchemaNode node = modelBuilder.AddSchema(null, schema); Assert.AreEqual(1, node.Schemas.Count); Assert.AreEqual(node, node.Items[0]); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaGeneratorTests.cs0000664000175000017500000006051012454416117031014 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.Globalization; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Utilities; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Schema; using System.IO; using Newtonsoft.Json.Linq; using System.Text; using Extensions = Newtonsoft.Json.Schema.Extensions; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Schema { [TestFixture] public class JsonSchemaGeneratorTests : TestFixtureBase { [Test] public void Generate_GenericDictionary() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); JsonSchema schema = generator.Generate(typeof(Dictionary>)); string json = schema.ToString(); StringAssert.AreEqual(@"{ ""type"": ""object"", ""additionalProperties"": { ""type"": [ ""array"", ""null"" ], ""items"": { ""type"": [ ""string"", ""null"" ] } } }", json); Dictionary> value = new Dictionary> { { "HasValue", new List() { "first", "second", null } }, { "NoValue", null } }; string valueJson = JsonConvert.SerializeObject(value, Formatting.Indented); JObject o = JObject.Parse(valueJson); Assert.IsTrue(o.IsValid(schema)); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void Generate_DefaultValueAttributeTestClass() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); JsonSchema schema = generator.Generate(typeof(DefaultValueAttributeTestClass)); string json = schema.ToString(); StringAssert.AreEqual(@"{ ""description"": ""DefaultValueAttributeTestClass description!"", ""type"": ""object"", ""additionalProperties"": false, ""properties"": { ""TestField1"": { ""required"": true, ""type"": ""integer"", ""default"": 21 }, ""TestProperty1"": { ""required"": true, ""type"": [ ""string"", ""null"" ], ""default"": ""TestProperty1Value"" } } }", json); } #endif [Test] public void Generate_Person() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); JsonSchema schema = generator.Generate(typeof(Person)); string json = schema.ToString(); StringAssert.AreEqual(@"{ ""id"": ""Person"", ""title"": ""Title!"", ""description"": ""JsonObjectAttribute description!"", ""type"": ""object"", ""properties"": { ""Name"": { ""required"": true, ""type"": [ ""string"", ""null"" ] }, ""BirthDate"": { ""required"": true, ""type"": ""string"" }, ""LastModified"": { ""required"": true, ""type"": ""string"" } } }", json); } [Test] public void Generate_UserNullable() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); JsonSchema schema = generator.Generate(typeof(UserNullable)); string json = schema.ToString(); StringAssert.AreEqual(@"{ ""type"": ""object"", ""properties"": { ""Id"": { ""required"": true, ""type"": ""string"" }, ""FName"": { ""required"": true, ""type"": [ ""string"", ""null"" ] }, ""LName"": { ""required"": true, ""type"": [ ""string"", ""null"" ] }, ""RoleId"": { ""required"": true, ""type"": ""integer"" }, ""NullableRoleId"": { ""required"": true, ""type"": [ ""integer"", ""null"" ] }, ""NullRoleId"": { ""required"": true, ""type"": [ ""integer"", ""null"" ] }, ""Active"": { ""required"": true, ""type"": [ ""boolean"", ""null"" ] } } }", json); } [Test] public void Generate_RequiredMembersClass() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); JsonSchema schema = generator.Generate(typeof(RequiredMembersClass)); Assert.AreEqual(JsonSchemaType.String, schema.Properties["FirstName"].Type); Assert.AreEqual(JsonSchemaType.String | JsonSchemaType.Null, schema.Properties["MiddleName"].Type); Assert.AreEqual(JsonSchemaType.String | JsonSchemaType.Null, schema.Properties["LastName"].Type); Assert.AreEqual(JsonSchemaType.String, schema.Properties["BirthDate"].Type); } [Test] public void Generate_Store() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); JsonSchema schema = generator.Generate(typeof(Store)); Assert.AreEqual(11, schema.Properties.Count); JsonSchema productArraySchema = schema.Properties["product"]; JsonSchema productSchema = productArraySchema.Items[0]; Assert.AreEqual(4, productSchema.Properties.Count); } [Test] public void MissingSchemaIdHandlingTest() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); JsonSchema schema = generator.Generate(typeof(Store)); Assert.AreEqual(null, schema.Id); generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; schema = generator.Generate(typeof(Store)); Assert.AreEqual(typeof(Store).FullName, schema.Id); generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseAssemblyQualifiedName; schema = generator.Generate(typeof(Store)); Assert.AreEqual(typeof(Store).AssemblyQualifiedName, schema.Id); } [Test] public void CircularReferenceError() { ExceptionAssert.Throws(() => { JsonSchemaGenerator generator = new JsonSchemaGenerator(); generator.Generate(typeof(CircularReferenceClass)); }, @"Unresolved circular reference for type 'Newtonsoft.Json.Tests.TestObjects.CircularReferenceClass'. Explicitly define an Id for the type using a JsonObject/JsonArray attribute or automatically generate a type Id using the UndefinedSchemaIdHandling property."); } [Test] public void CircularReferenceWithTypeNameId() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; JsonSchema schema = generator.Generate(typeof(CircularReferenceClass), true); Assert.AreEqual(JsonSchemaType.String, schema.Properties["Name"].Type); Assert.AreEqual(typeof(CircularReferenceClass).FullName, schema.Id); Assert.AreEqual(JsonSchemaType.Object | JsonSchemaType.Null, schema.Properties["Child"].Type); Assert.AreEqual(schema, schema.Properties["Child"]); } [Test] public void CircularReferenceWithExplicitId() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); JsonSchema schema = generator.Generate(typeof(CircularReferenceWithIdClass)); Assert.AreEqual(JsonSchemaType.String | JsonSchemaType.Null, schema.Properties["Name"].Type); Assert.AreEqual("MyExplicitId", schema.Id); Assert.AreEqual(JsonSchemaType.Object | JsonSchemaType.Null, schema.Properties["Child"].Type); Assert.AreEqual(schema, schema.Properties["Child"]); } [Test] public void GenerateSchemaForType() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; JsonSchema schema = generator.Generate(typeof(Type)); Assert.AreEqual(JsonSchemaType.String, schema.Type); string json = JsonConvert.SerializeObject(typeof(Version), Formatting.Indented); JValue v = new JValue(json); Assert.IsTrue(v.IsValid(schema)); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void GenerateSchemaForISerializable() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; JsonSchema schema = generator.Generate(typeof(Exception)); Assert.AreEqual(JsonSchemaType.Object, schema.Type); Assert.AreEqual(true, schema.AllowAdditionalProperties); Assert.AreEqual(null, schema.Properties); } #endif #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void GenerateSchemaForDBNull() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; JsonSchema schema = generator.Generate(typeof(DBNull)); Assert.AreEqual(JsonSchemaType.Null, schema.Type); } public class CustomDirectoryInfoMapper : DefaultContractResolver { public CustomDirectoryInfoMapper() : base(true) { } protected override JsonContract CreateContract(Type objectType) { if (objectType == typeof(DirectoryInfo)) return base.CreateObjectContract(objectType); return base.CreateContract(objectType); } protected override IList CreateProperties(Type type, MemberSerialization memberSerialization) { IList properties = base.CreateProperties(type, memberSerialization); JsonPropertyCollection c = new JsonPropertyCollection(type); c.AddRange(properties.Where(m => m.PropertyName != "Root")); return c; } } [Test] public void GenerateSchemaForDirectoryInfo() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; generator.ContractResolver = new CustomDirectoryInfoMapper { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) IgnoreSerializableAttribute = true #endif }; JsonSchema schema = generator.Generate(typeof(DirectoryInfo), true); string json = schema.ToString(); StringAssert.AreEqual(@"{ ""id"": ""System.IO.DirectoryInfo"", ""required"": true, ""type"": [ ""object"", ""null"" ], ""additionalProperties"": false, ""properties"": { ""Name"": { ""required"": true, ""type"": [ ""string"", ""null"" ] }, ""Parent"": { ""$ref"": ""System.IO.DirectoryInfo"" }, ""Exists"": { ""required"": true, ""type"": ""boolean"" }, ""FullName"": { ""required"": true, ""type"": [ ""string"", ""null"" ] }, ""Extension"": { ""required"": true, ""type"": [ ""string"", ""null"" ] }, ""CreationTime"": { ""required"": true, ""type"": ""string"" }, ""CreationTimeUtc"": { ""required"": true, ""type"": ""string"" }, ""LastAccessTime"": { ""required"": true, ""type"": ""string"" }, ""LastAccessTimeUtc"": { ""required"": true, ""type"": ""string"" }, ""LastWriteTime"": { ""required"": true, ""type"": ""string"" }, ""LastWriteTimeUtc"": { ""required"": true, ""type"": ""string"" }, ""Attributes"": { ""required"": true, ""type"": ""integer"" } } }", json); DirectoryInfo temp = new DirectoryInfo(@"c:\temp"); JTokenWriter jsonWriter = new JTokenWriter(); JsonSerializer serializer = new JsonSerializer(); serializer.Converters.Add(new IsoDateTimeConverter()); serializer.ContractResolver = new CustomDirectoryInfoMapper { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) IgnoreSerializableInterface = true #endif }; serializer.Serialize(jsonWriter, temp); List errors = new List(); jsonWriter.Token.Validate(schema, (sender, args) => errors.Add(args.Message)); Assert.AreEqual(0, errors.Count); } #endif [Test] public void GenerateSchemaCamelCase() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; generator.ContractResolver = new CamelCasePropertyNamesContractResolver() { #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) IgnoreSerializableAttribute = true #endif }; JsonSchema schema = generator.Generate(typeof(Version), true); string json = schema.ToString(); StringAssert.AreEqual(@"{ ""id"": ""System.Version"", ""type"": [ ""object"", ""null"" ], ""additionalProperties"": false, ""properties"": { ""major"": { ""required"": true, ""type"": ""integer"" }, ""minor"": { ""required"": true, ""type"": ""integer"" }, ""build"": { ""required"": true, ""type"": ""integer"" }, ""revision"": { ""required"": true, ""type"": ""integer"" }, ""majorRevision"": { ""required"": true, ""type"": ""integer"" }, ""minorRevision"": { ""required"": true, ""type"": ""integer"" } } }", json); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void GenerateSchemaSerializable() { JsonSchemaGenerator generator = new JsonSchemaGenerator(); generator.ContractResolver = new DefaultContractResolver { IgnoreSerializableAttribute = false }; generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; JsonSchema schema = generator.Generate(typeof(Version), true); string json = schema.ToString(); StringAssert.AreEqual(@"{ ""id"": ""System.Version"", ""type"": [ ""object"", ""null"" ], ""additionalProperties"": false, ""properties"": { ""_Major"": { ""required"": true, ""type"": ""integer"" }, ""_Minor"": { ""required"": true, ""type"": ""integer"" }, ""_Build"": { ""required"": true, ""type"": ""integer"" }, ""_Revision"": { ""required"": true, ""type"": ""integer"" } } }", json); JTokenWriter jsonWriter = new JTokenWriter(); JsonSerializer serializer = new JsonSerializer(); serializer.ContractResolver = new DefaultContractResolver { IgnoreSerializableAttribute = false }; serializer.Serialize(jsonWriter, new Version(1, 2, 3, 4)); List errors = new List(); jsonWriter.Token.Validate(schema, (sender, args) => errors.Add(args.Message)); Assert.AreEqual(0, errors.Count); StringAssert.AreEqual(@"{ ""_Major"": 1, ""_Minor"": 2, ""_Build"": 3, ""_Revision"": 4 }", jsonWriter.Token.ToString()); Version version = jsonWriter.Token.ToObject(serializer); Assert.AreEqual(1, version.Major); Assert.AreEqual(2, version.Minor); Assert.AreEqual(3, version.Build); Assert.AreEqual(4, version.Revision); } #endif public enum SortTypeFlag { No = 0, Asc = 1, Desc = -1 } public class X { public SortTypeFlag x; } [Test] public void GenerateSchemaWithNegativeEnum() { JsonSchemaGenerator jsonSchemaGenerator = new JsonSchemaGenerator(); JsonSchema schema = jsonSchemaGenerator.Generate(typeof(X)); string json = schema.ToString(); StringAssert.AreEqual(@"{ ""type"": ""object"", ""properties"": { ""x"": { ""required"": true, ""type"": ""integer"", ""enum"": [ 0, 1, -1 ] } } }", json); } [Test] public void CircularCollectionReferences() { Type type = typeof(Workspace); JsonSchemaGenerator jsonSchemaGenerator = new JsonSchemaGenerator(); jsonSchemaGenerator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; JsonSchema jsonSchema = jsonSchemaGenerator.Generate(type); // should succeed Assert.IsNotNull(jsonSchema); } [Test] public void CircularReferenceWithMixedRequires() { JsonSchemaGenerator jsonSchemaGenerator = new JsonSchemaGenerator(); jsonSchemaGenerator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; JsonSchema jsonSchema = jsonSchemaGenerator.Generate(typeof(CircularReferenceClass)); string json = jsonSchema.ToString(); StringAssert.AreEqual(@"{ ""id"": ""Newtonsoft.Json.Tests.TestObjects.CircularReferenceClass"", ""type"": [ ""object"", ""null"" ], ""properties"": { ""Name"": { ""required"": true, ""type"": ""string"" }, ""Child"": { ""$ref"": ""Newtonsoft.Json.Tests.TestObjects.CircularReferenceClass"" } } }", json); } [Test] public void JsonPropertyWithHandlingValues() { JsonSchemaGenerator jsonSchemaGenerator = new JsonSchemaGenerator(); jsonSchemaGenerator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseTypeName; JsonSchema jsonSchema = jsonSchemaGenerator.Generate(typeof(JsonPropertyWithHandlingValues)); string json = jsonSchema.ToString(); StringAssert.AreEqual(@"{ ""id"": ""Newtonsoft.Json.Tests.TestObjects.JsonPropertyWithHandlingValues"", ""required"": true, ""type"": [ ""object"", ""null"" ], ""properties"": { ""DefaultValueHandlingIgnoreProperty"": { ""type"": [ ""string"", ""null"" ], ""default"": ""Default!"" }, ""DefaultValueHandlingIncludeProperty"": { ""required"": true, ""type"": [ ""string"", ""null"" ], ""default"": ""Default!"" }, ""DefaultValueHandlingPopulateProperty"": { ""required"": true, ""type"": [ ""string"", ""null"" ], ""default"": ""Default!"" }, ""DefaultValueHandlingIgnoreAndPopulateProperty"": { ""type"": [ ""string"", ""null"" ], ""default"": ""Default!"" }, ""NullValueHandlingIgnoreProperty"": { ""type"": [ ""string"", ""null"" ] }, ""NullValueHandlingIncludeProperty"": { ""required"": true, ""type"": [ ""string"", ""null"" ] }, ""ReferenceLoopHandlingErrorProperty"": { ""$ref"": ""Newtonsoft.Json.Tests.TestObjects.JsonPropertyWithHandlingValues"" }, ""ReferenceLoopHandlingIgnoreProperty"": { ""$ref"": ""Newtonsoft.Json.Tests.TestObjects.JsonPropertyWithHandlingValues"" }, ""ReferenceLoopHandlingSerializeProperty"": { ""$ref"": ""Newtonsoft.Json.Tests.TestObjects.JsonPropertyWithHandlingValues"" } } }", json); } [Test] public void GenerateForNullableInt32() { JsonSchemaGenerator jsonSchemaGenerator = new JsonSchemaGenerator(); JsonSchema jsonSchema = jsonSchemaGenerator.Generate(typeof(NullableInt32TestClass)); string json = jsonSchema.ToString(); StringAssert.AreEqual(@"{ ""type"": ""object"", ""properties"": { ""Value"": { ""required"": true, ""type"": [ ""integer"", ""null"" ] } } }", json); } [JsonConverter(typeof(StringEnumConverter))] public enum SortTypeFlagAsString { No = 0, Asc = 1, Desc = -1 } public class Y { public SortTypeFlagAsString y; } #if !ASPNETCORE50 [Test] [Ignore] public void GenerateSchemaWithStringEnum() { JsonSchemaGenerator jsonSchemaGenerator = new JsonSchemaGenerator(); JsonSchema schema = jsonSchemaGenerator.Generate(typeof(Y)); string json = schema.ToString(); // NOTE: This fails because the enum is serialized as an integer and not a string. // NOTE: There should exist a way to serialize the enum as lowercase strings. Assert.AreEqual(@"{ ""type"": ""object"", ""properties"": { ""y"": { ""required"": true, ""type"": ""string"", ""enum"": [ ""no"", ""asc"", ""desc"" ] } } }", json); } #endif } public class NullableInt32TestClass { public int? Value { get; set; } } public class DMDSLBase { public String Comment; } public class Workspace : DMDSLBase { public ControlFlowItemCollection Jobs = new ControlFlowItemCollection(); } public class ControlFlowItemBase : DMDSLBase { public String Name; } public class ControlFlowItem : ControlFlowItemBase //A Job { public TaskCollection Tasks = new TaskCollection(); public ContainerCollection Containers = new ContainerCollection(); } public class ControlFlowItemCollection : List { } public class Task : ControlFlowItemBase { public DataFlowTaskCollection DataFlowTasks = new DataFlowTaskCollection(); public BulkInsertTaskCollection BulkInsertTask = new BulkInsertTaskCollection(); } public class TaskCollection : List { } public class Container : ControlFlowItemBase { public ControlFlowItemCollection ContainerJobs = new ControlFlowItemCollection(); } public class ContainerCollection : List { } public class DataFlowTask_DSL : ControlFlowItemBase { } public class DataFlowTaskCollection : List { } public class SequenceContainer_DSL : Container { } public class BulkInsertTaskCollection : List { } public class BulkInsertTask_DSL { } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/0000775000175000017500000000000012454416117024614 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/minLength.json0000664000175000017500000000127012454416117027434 0ustar directhexdirecthex[ { "description": "minLength validation", "schema": {"minLength": 2}, "tests": [ { "description": "longer is valid", "data": "foo", "valid": true }, { "description": "exact length is valid", "data": "fo", "valid": true }, { "description": "too short is invalid", "data": "f", "valid": false }, { "description": "ignores non-strings", "data": 1, "valid": true } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/minItems.json0000664000175000017500000000126512454416117027300 0ustar directhexdirecthex[ { "description": "minItems validation", "schema": {"minItems": 1}, "tests": [ { "description": "longer is valid", "data": [1, 2], "valid": true }, { "description": "exact length is valid", "data": [1], "valid": true }, { "description": "too short is invalid", "data": [], "valid": false }, { "description": "ignores non-arrays", "data": "", "valid": true } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/disallow.json0000664000175000017500000000362012454416117027326 0ustar directhexdirecthex[ { "description": "disallow", "schema": { "disallow": "integer" }, "tests": [ { "description": "allowed", "data": "foo", "valid": true }, { "description": "disallowed", "data": 1, "valid": false } ] }, { "description": "multiple disallow", "schema": { "disallow": ["integer", "boolean"] }, "tests": [ { "description": "valid", "data": "foo", "valid": true }, { "description": "mismatch", "data": 1, "valid": false }, { "description": "other mismatch", "data": true, "valid": false } ] }, { "description": "multiple disallow subschema", "schema": { "disallow": ["string", { "type": "object", "properties": { "foo": { "type": "string" } } }] }, "tests": [ { "description": "match", "data": 1, "valid": true }, { "description": "other match", "data": {"foo": 1}, "valid": true }, { "description": "mismatch", "data": "foo", "valid": false }, { "description": "other mismatch", "data": {"foo": "bar"}, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/maxLength.json0000664000175000017500000000127112454416117027437 0ustar directhexdirecthex[ { "description": "maxLength validation", "schema": {"maxLength": 2}, "tests": [ { "description": "shorter is valid", "data": "f", "valid": true }, { "description": "exact length is valid", "data": "fo", "valid": true }, { "description": "too long is invalid", "data": "foo", "valid": false }, { "description": "ignores non-strings", "data": 10, "valid": true } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/divisibleBy.json0000664000175000017500000000301012454416117027746 0ustar directhexdirecthex[ { "description": "by int", "schema": {"divisibleBy": 2}, "tests": [ { "description": "int by int", "data": 10, "valid": true }, { "description": "int by int fail", "data": 7, "valid": false }, { "description": "ignores non-numbers", "data": "foo", "valid": true } ] }, { "description": "by number", "schema": {"divisibleBy": 1.5}, "tests": [ { "description": "zero is divisible by anything (except 0)", "data": 0, "valid": true }, { "description": "4.5 is divisible by 1.5", "data": 4.5, "valid": true }, { "description": "35 is not divisible by 1.5", "data": 35, "valid": false } ] }, { "description": "by small number", "schema": {"divisibleBy": 0.0001}, "tests": [ { "description": "0.0075 is divisible by 0.0001", "data": 0.0075, "valid": true }, { "description": "0.00751 is not divisible by 0.0001", "data": 0.00751, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/required.json0000664000175000017500000000240212454416117027325 0ustar directhexdirecthex[ { "description": "required validation", "schema": { "properties": { "foo": {"required" : true}, "bar": {} } }, "tests": [ { "description": "present required property is valid", "data": {"foo": 1}, "valid": true }, { "description": "non-present required property is invalid", "data": {"bar": 1}, "valid": false } ] }, { "description": "required default validation", "schema": { "properties": { "foo": {} } }, "tests": [ { "description": "not required by default", "data": {}, "valid": true } ] }, { "description": "required explicitly false validation", "schema": { "properties": { "foo": {"required": false} } }, "tests": [ { "description": "not required if required is false", "data": {}, "valid": true } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/maxItems.json0000664000175000017500000000130212454416117027272 0ustar directhexdirecthex[ { "description": "maxItems validation", "schema": {"maxItems": 2}, "tests": [ { "description": "shorter is valid", "data": [1], "valid": true }, { "description": "exact length is valid", "data": [1, 2], "valid": true }, { "description": "too long is invalid", "data": [1, 2, 3], "valid": false }, { "description": "ignores non-arrays", "data": "foobar", "valid": true } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/minimum.json0000664000175000017500000000204712454416117027165 0ustar directhexdirecthex[ { "description": "minimum validation", "schema": {"minimum": 1.1}, "tests": [ { "description": "above the minimum is valid", "data": 2.6, "valid": true }, { "description": "below the minimum is invalid", "data": 0.6, "valid": false }, { "description": "ignores non-numbers", "data": "x", "valid": true } ] }, { "description": "exclusiveMinimum validation", "schema": { "minimum": 1.1, "exclusiveMinimum": true }, "tests": [ { "description": "above the minimum is still valid", "data": 1.2, "valid": true }, { "description": "boundary point is invalid", "data": 1.1, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/additionalProperties.json0000664000175000017500000000364712454416117031706 0ustar directhexdirecthex[ { "description": "additionalProperties being false does not allow other properties", "schema": { "properties": {"foo": {}, "bar": {}}, "additionalProperties": false }, "tests": [ { "description": "no additional properties is valid", "data": {"foo": 1}, "valid": true }, { "description": "an additional property is invalid", "data": {"foo" : 1, "bar" : 2, "quux" : "boom"}, "valid": false }, { "description": "ignores non-objects", "data": [1, 2, 3], "valid": true } ] }, { "description": "additionalProperties allows a schema which should validate", "schema": { "properties": {"foo": {}, "bar": {}}, "additionalProperties": {"type": "boolean"} }, "tests": [ { "description": "no additional properties is valid", "data": {"foo": 1}, "valid": true }, { "description": "an additional valid property is valid", "data": {"foo" : 1, "bar" : 2, "quux" : true}, "valid": true }, { "description": "an additional invalid property is invalid", "data": {"foo" : 1, "bar" : 2, "quux" : 12}, "valid": false } ] }, { "description": "additionalProperties are allowed by default", "schema": {"properties": {"foo": {}, "bar": {}}}, "tests": [ { "description": "additional properties are allowed", "data": {"foo": 1, "bar": 2, "quux": true}, "valid": true } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/patternProperties.json0000664000175000017500000000453112454416117031244 0ustar directhexdirecthex[ { "description": "patternProperties validates properties matching a regex", "schema": { "patternProperties": { "f.*o": {"type": "integer"} } }, "tests": [ { "description": "a single valid match is valid", "data": {"foo": 1}, "valid": true }, { "description": "multiple valid matches is valid", "data": {"foo": 1, "foooooo" : 2}, "valid": true }, { "description": "a single invalid match is invalid", "data": {"foo": "bar", "fooooo": 2}, "valid": false }, { "description": "multiple invalid matches is invalid", "data": {"foo": "bar", "foooooo" : "baz"}, "valid": false }, { "description": "ignores non-objects", "data": 12, "valid": true } ] }, { "description": "multiple simultaneous patternProperties are validated", "schema": { "patternProperties": { "a*": {"type": "integer"}, "aaa*": {"maximum": 20} } }, "tests": [ { "description": "a single valid match is valid", "data": {"a": 21}, "valid": true }, { "description": "a simultaneous match is valid", "data": {"aaaa": 18}, "valid": true }, { "description": "multiple matches is valid", "data": {"a": 21, "aaaa": 18}, "valid": true }, { "description": "an invalid due to one is invalid", "data": {"a": "bar"}, "valid": false }, { "description": "an invalid due to the other is invalid", "data": {"aaaa": 31}, "valid": false }, { "description": "an invalid due to both is invalid", "data": {"aaa": "foo", "aaaa": 31}, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/extends.json0000664000175000017500000000503712454416117027166 0ustar directhexdirecthex[ { "description": "extends", "schema": { "properties": {"bar": {"type": "integer", "required": true}}, "extends": { "properties": { "foo": {"type": "string", "required": true} } } }, "tests": [ { "description": "extends", "data": {"foo": "baz", "bar": 2}, "valid": true }, { "description": "mismatch extends", "data": {"foo": "baz"}, "valid": false }, { "description": "mismatch extended", "data": {"bar": 2}, "valid": false }, { "description": "wrong type", "data": {"foo": "baz", "bar": "quux"}, "valid": false } ] }, { "description": "multiple extends", "schema": { "properties": {"bar": {"type": "integer", "required": true}}, "extends" : [ { "properties": { "foo": {"type": "string", "required": true} } }, { "properties": { "baz": {"type": "null", "required": true} } } ] }, "tests": [ { "description": "valid", "data": {"foo": "quux", "bar": 2, "baz": null}, "valid": true }, { "description": "mismatch first extends", "data": {"bar": 2, "baz": null}, "valid": false }, { "description": "mismatch second extends", "data": {"foo": "quux", "bar": 2}, "valid": false }, { "description": "mismatch both", "data": {"bar": 2}, "valid": false } ] }, { "description": "extends simple types", "schema": { "minimum": 20, "extends": {"maximum": 30} }, "tests": [ { "description": "valid", "data": 25, "valid": true }, { "description": "mismatch extends", "data": 35, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/additionalItems.json0000664000175000017500000000432112454416117030621 0ustar directhexdirecthex[ { "description": "additionalItems as schema", "schema": { "items": [], "additionalItems": {"type": "integer"} }, "tests": [ { "description": "additional items match schema", "data": [ 1, 2, 3, 4 ], "valid": true }, { "description": "additional items do not match schema", "data": [ 1, 2, 3, "foo" ], "valid": false } ] }, { "description": "items is schema, no additionalItems", "schema": { "items": {}, "additionalItems": false }, "tests": [ { "description": "all items match schema", "data": [ 1, 2, 3, 4, 5 ], "valid": true } ] }, { "description": "array of items with no additionalItems", "schema": { "items": [{}, {}, {}], "additionalItems": false }, "tests": [ { "description": "no additional items present", "data": [ 1, 2, 3 ], "valid": true }, { "description": "additional items are not permitted", "data": [ 1, 2, 3, 4 ], "valid": false } ] }, { "description": "additionalItems as false without items", "schema": {"additionalItems": false}, "tests": [ { "description": "items defaults to empty schema so everything is valid", "data": [ 1, 2, 3, 4, 5 ], "valid": true }, { "description": "ignores non-arrays", "data": {"foo" : "bar"}, "valid": true } ] }, { "description": "additionalItems are allowed by default", "schema": {"items": []}, "tests": [ { "description": "only the first items are validated", "data": [1, "foo", false], "valid": true } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/maximum.json0000664000175000017500000000204712454416117027167 0ustar directhexdirecthex[ { "description": "maximum validation", "schema": {"maximum": 3.0}, "tests": [ { "description": "below the maximum is valid", "data": 2.6, "valid": true }, { "description": "above the maximum is invalid", "data": 3.5, "valid": false }, { "description": "ignores non-numbers", "data": "x", "valid": true } ] }, { "description": "exclusiveMaximum validation", "schema": { "maximum": 3.0, "exclusiveMaximum": true }, "tests": [ { "description": "below the maximum is still valid", "data": 2.2, "valid": true }, { "description": "boundary point is invalid", "data": 3.0, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/pattern.json0000664000175000017500000000110612454416117027162 0ustar directhexdirecthex[ { "description": "pattern validation", "schema": {"pattern": "^a*$"}, "tests": [ { "description": "a matching pattern is valid", "data": "aaa", "valid": true }, { "description": "a non-matching pattern is invalid", "data": "abc", "valid": false }, { "description": "ignores non-strings", "data": true, "valid": true } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/enum.json0000664000175000017500000000202012454416117026445 0ustar directhexdirecthex[ { "description": "simple enum validation", "schema": {"enum": [1, 2, 3]}, "tests": [ { "description": "one of the enum is valid", "data": 1, "valid": true }, { "description": "something else is invalid", "data": 4, "valid": false } ] }, { "description": "heterogeneous enum validation", "schema": {"enum": [6, "foo", [], true, {"foo": 12}]}, "tests": [ { "description": "one of the enum is valid", "data": [], "valid": true }, { "description": "something else is invalid", "data": null, "valid": false }, { "description": "objects are deep compared", "data": {"foo": false}, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/ref.json0000664000175000017500000000434612454416117026272 0ustar directhexdirecthex[ { "description": "root pointer ref", "schema": { "properties": { "foo": {"$ref": "#"} }, "additionalProperties": false }, "tests": [ { "description": "match", "data": {"foo": false}, "valid": true }, { "description": "recursive match", "data": {"foo": {"foo": false}}, "valid": true }, { "description": "mismatch", "data": {"bar": false}, "valid": false }, { "description": "recursive mismatch", "data": {"foo": {"bar": false}}, "valid": false } ] }, { "description": "relative pointer ref", "schema": { "properties": { "foo": {"type": "integer"}, "bar": {"$ref": "#/properties/foo"} } }, "tests": [ { "description": "match", "data": {"bar": 3}, "valid": true }, { "description": "mismatch", "data": {"bar": true}, "valid": false } ] }, { "description": "escaped pointer ref", "schema": { "tilda~field": {"type": "integer"}, "slash/field": {"type": "integer"}, "percent%field": {"type": "integer"}, "properties": { "tilda": {"$ref": "#/tilda~0field"}, "slash": {"$ref": "#/slash~1field"}, "percent": {"$ref": "#/percent%25field"} } }, "tests": [ { "description": "slash", "data": {"slash": "aoeu"}, "valid": false }, { "description": "tilda", "data": {"tilda": "aoeu"}, "valid": false }, { "description": "percent", "data": {"percent": "aoeu"}, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/items.json0000664000175000017500000000216012454416117026627 0ustar directhexdirecthex[ { "description": "a schema given for items", "schema": { "items": {"type": "integer"} }, "tests": [ { "description": "valid items", "data": [ 1, 2, 3 ], "valid": true }, { "description": "wrong type of items", "data": [1, "x"], "valid": false }, { "description": "ignores non-arrays", "data": {"foo" : "bar"}, "valid": true } ] }, { "description": "an array of schemas for items", "schema": { "items": [ {"type": "integer"}, {"type": "string"} ] }, "tests": [ { "description": "correct types", "data": [ 1, "foo" ], "valid": true }, { "description": "wrong types", "data": [ "foo", 1 ], "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/type.json0000664000175000017500000003213312454416117026472 0ustar directhexdirecthex[ { "description": "integer type matches integers", "schema": {"type": "integer"}, "tests": [ { "description": "an integer is an integer", "data": 1, "valid": true }, { "description": "a float is not an integer", "data": 1.1, "valid": false }, { "description": "a float is not an integer even without fractional part", "data": 1.0, "valid": false }, { "description": "a string is not an integer", "data": "foo", "valid": false }, { "description": "an object is not an integer", "data": {}, "valid": false }, { "description": "an array is not an integer", "data": [], "valid": false }, { "description": "a boolean is not an integer", "data": true, "valid": false }, { "description": "null is not an integer", "data": null, "valid": false } ] }, { "description": "number type matches numbers", "schema": {"type": "number"}, "tests": [ { "description": "an integer is a number", "data": 1, "valid": true }, { "description": "a float is a number", "data": 1.1, "valid": true }, { "description": "a string is not a number", "data": "foo", "valid": false }, { "description": "an object is not a number", "data": {}, "valid": false }, { "description": "an array is not a number", "data": [], "valid": false }, { "description": "a boolean is not a number", "data": true, "valid": false }, { "description": "null is not a number", "data": null, "valid": false } ] }, { "description": "string type matches strings", "schema": {"type": "string"}, "tests": [ { "description": "1 is not a string", "data": 1, "valid": false }, { "description": "a float is not a string", "data": 1.1, "valid": false }, { "description": "a string is a string", "data": "foo", "valid": true }, { "description": "an object is not a string", "data": {}, "valid": false }, { "description": "an array is not a string", "data": [], "valid": false }, { "description": "a boolean is not a string", "data": true, "valid": false }, { "description": "null is not a string", "data": null, "valid": false } ] }, { "description": "object type matches objects", "schema": {"type": "object"}, "tests": [ { "description": "an integer is not an object", "data": 1, "valid": false }, { "description": "a float is not an object", "data": 1.1, "valid": false }, { "description": "a string is not an object", "data": "foo", "valid": false }, { "description": "an object is an object", "data": {}, "valid": true }, { "description": "an array is not an object", "data": [], "valid": false }, { "description": "a boolean is not an object", "data": true, "valid": false }, { "description": "null is not an object", "data": null, "valid": false } ] }, { "description": "array type matches arrays", "schema": {"type": "array"}, "tests": [ { "description": "an integer is not an array", "data": 1, "valid": false }, { "description": "a float is not an array", "data": 1.1, "valid": false }, { "description": "a string is not an array", "data": "foo", "valid": false }, { "description": "an object is not an array", "data": {}, "valid": false }, { "description": "an array is not an array", "data": [], "valid": true }, { "description": "a boolean is not an array", "data": true, "valid": false }, { "description": "null is not an array", "data": null, "valid": false } ] }, { "description": "boolean type matches booleans", "schema": {"type": "boolean"}, "tests": [ { "description": "an integer is not a boolean", "data": 1, "valid": false }, { "description": "a float is not a boolean", "data": 1.1, "valid": false }, { "description": "a string is not a boolean", "data": "foo", "valid": false }, { "description": "an object is not a boolean", "data": {}, "valid": false }, { "description": "an array is not a boolean", "data": [], "valid": false }, { "description": "a boolean is not a boolean", "data": true, "valid": true }, { "description": "null is not a boolean", "data": null, "valid": false } ] }, { "description": "null type matches only the null object", "schema": {"type": "null"}, "tests": [ { "description": "an integer is not null", "data": 1, "valid": false }, { "description": "a float is not null", "data": 1.1, "valid": false }, { "description": "a string is not null", "data": "foo", "valid": false }, { "description": "an object is not null", "data": {}, "valid": false }, { "description": "an array is not null", "data": [], "valid": false }, { "description": "a boolean is not null", "data": true, "valid": false }, { "description": "null is null", "data": null, "valid": true } ] }, { "description": "any type matches any type", "schema": {"type": "any"}, "tests": [ { "description": "any type includes integers", "data": 1, "valid": true }, { "description": "any type includes float", "data": 1.1, "valid": true }, { "description": "any type includes string", "data": "foo", "valid": true }, { "description": "any type includes object", "data": {}, "valid": true }, { "description": "any type includes array", "data": [], "valid": true }, { "description": "any type includes boolean", "data": true, "valid": true }, { "description": "any type includes null", "data": null, "valid": true } ] }, { "description": "multiple types can be specified in an array", "schema": {"type": ["integer", "string"]}, "tests": [ { "description": "an integer is valid", "data": 1, "valid": true }, { "description": "a string is valid", "data": "foo", "valid": true }, { "description": "a float is invalid", "data": 1.1, "valid": false }, { "description": "an object is invalid", "data": {}, "valid": false }, { "description": "an array is invalid", "data": [], "valid": false }, { "description": "a boolean is invalid", "data": true, "valid": false }, { "description": "null is invalid", "data": null, "valid": false } ] }, { "description": "types can include schemas", "schema": { "type": [ "array", {"type": "object"} ] }, "tests": [ { "description": "an integer is invalid", "data": 1, "valid": false }, { "description": "a string is invalid", "data": "foo", "valid": false }, { "description": "a float is invalid", "data": 1.1, "valid": false }, { "description": "an object is valid", "data": {}, "valid": true }, { "description": "an array is valid", "data": [], "valid": true }, { "description": "a boolean is invalid", "data": true, "valid": false }, { "description": "null is invalid", "data": null, "valid": false } ] }, { "description": "when types includes a schema it should fully validate the schema", "schema": { "type": [ "integer", { "properties": { "foo": {"type": "null"} } } ] }, "tests": [ { "description": "an integer is valid", "data": 1, "valid": true }, { "description": "an object is valid only if it is fully valid", "data": {"foo": null}, "valid": true }, { "description": "an object is invalid otherwise", "data": {"foo": "bar"}, "valid": false } ] }, { "description": "types from separate schemas are merged", "schema": { "type": [ {"type": ["string"]}, {"type": ["array", "null"]} ] }, "tests": [ { "description": "an integer is invalid", "data": 1, "valid": false }, { "description": "a string is valid", "data": "foo", "valid": true }, { "description": "an array is valid", "data": [1, 2, 3], "valid": true } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/uniqueItems.json0000664000175000017500000000506512454416117030025 0ustar directhexdirecthex[ { "description": "uniqueItems validation", "schema": {"uniqueItems": true}, "tests": [ { "description": "unique array of integers is valid", "data": [1, 2], "valid": true }, { "description": "non-unique array of integers is invalid", "data": [1, 1], "valid": false }, { "description": "numbers are unique if mathematically unequal", "data": [1.0, 1.00, 1], "valid": false }, { "description": "unique array of objects is valid", "data": [{"foo": "bar"}, {"foo": "baz"}], "valid": true }, { "description": "non-unique array of objects is invalid", "data": [{"foo": "bar"}, {"foo": "bar"}], "valid": false }, { "description": "unique array of nested objects is valid", "data": [ {"foo": {"bar" : {"baz" : true}}}, {"foo": {"bar" : {"baz" : false}}} ], "valid": true }, { "description": "non-unique array of nested objects is invalid", "data": [ {"foo": {"bar" : {"baz" : true}}}, {"foo": {"bar" : {"baz" : true}}} ], "valid": false }, { "description": "unique array of arrays is valid", "data": [["foo"], ["bar"]], "valid": true }, { "description": "non-unique array of arrays is invalid", "data": [["foo"], ["foo"]], "valid": false }, { "description": "1 and true are unique", "data": [1, true], "valid": true }, { "description": "0 and false are unique", "data": [0, false], "valid": true }, { "description": "unique heterogeneous types are valid", "data": [{}, [1], true, null, 1], "valid": true }, { "description": "non-unique heterogeneous types are invalid", "data": [{}, [1], true, null, {}, 1], "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/properties.json0000664000175000017500000000550112454416117027704 0ustar directhexdirecthex[ { "description": "object properties validation", "schema": { "properties": { "foo": {"type": "integer"}, "bar": {"type": "string"} } }, "tests": [ { "description": "both properties present and valid is valid", "data": {"foo": 1, "bar": "baz"}, "valid": true }, { "description": "one property invalid is invalid", "data": {"foo": 1, "bar": {}}, "valid": false }, { "description": "both properties invalid is invalid", "data": {"foo": [], "bar": {}}, "valid": false }, { "description": "doesn't invalidate other properties", "data": {"quux": []}, "valid": true }, { "description": "ignores non-objects", "data": [], "valid": true } ] }, { "description": "properties, patternProperties, additionalProperties interaction", "schema": { "properties": { "foo": {"type": "array", "maxItems": 3}, "bar": {"type": "array"} }, "patternProperties": {"f.o": {"minItems": 2}}, "additionalProperties": {"type": "integer"} }, "tests": [ { "description": "property validates property", "data": {"foo": [1, 2]}, "valid": true }, { "description": "property invalidates property", "data": {"foo": [1, 2, 3, 4]}, "valid": false }, { "description": "patternProperty invalidates property", "data": {"foo": []}, "valid": false }, { "description": "patternProperty validates nonproperty", "data": {"fxo": [1, 2]}, "valid": true }, { "description": "patternProperty invalidates nonproperty", "data": {"fxo": []}, "valid": false }, { "description": "additionalProperty ignores property", "data": {"bar": []}, "valid": true }, { "description": "additionalProperty validates others", "data": {"quux": 3}, "valid": true }, { "description": "additionalProperty invalidates others", "data": {"quux": "foo"}, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/Specs/dependencies.json0000664000175000017500000000565512454416117030150 0ustar directhexdirecthex[ { "description": "dependencies", "schema": { "dependencies": {"bar": "foo"} }, "tests": [ { "description": "neither", "data": {}, "valid": true }, { "description": "nondependant", "data": {"foo": 1}, "valid": true }, { "description": "with dependency", "data": {"foo": 1, "bar": 2}, "valid": true }, { "description": "missing dependency", "data": {"bar": 2}, "valid": false }, { "description": "ignores non-objects", "data": "foo", "valid": true } ] }, { "description": "multiple dependencies", "schema": { "dependencies": {"quux": ["foo", "bar"]} }, "tests": [ { "description": "neither", "data": {}, "valid": true }, { "description": "nondependants", "data": {"foo": 1, "bar": 2}, "valid": true }, { "description": "with dependencies", "data": {"foo": 1, "bar": 2, "quux": 3}, "valid": true }, { "description": "missing dependency", "data": {"foo": 1, "quux": 2}, "valid": false }, { "description": "missing other dependency", "data": {"bar": 1, "quux": 2}, "valid": false }, { "description": "missing both dependencies", "data": {"quux": 1}, "valid": false } ] }, { "description": "multiple dependencies subschema", "schema": { "dependencies": { "bar": { "properties": { "foo": {"type": "integer"}, "bar": {"type": "integer"} } } } }, "tests": [ { "description": "valid", "data": {"foo": 1, "bar": 2}, "valid": true }, { "description": "wrong type", "data": {"foo": "quux", "bar": 2}, "valid": false }, { "description": "wrong type other", "data": {"foo": 2, "bar": "quux"}, "valid": false }, { "description": "wrong type both", "data": {"foo": "quux", "bar": "quux"}, "valid": false } ] } ] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaTests.cs0000664000175000017500000003532012454416117027146 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Schema { [TestFixture] public class JsonSchemaTests : TestFixtureBase { [Test] public void Extends() { string json; JsonSchemaResolver resolver = new JsonSchemaResolver(); json = @"{ ""id"":""first"", ""type"":""object"", ""additionalProperties"":{} }"; JsonSchema first = JsonSchema.Parse(json, resolver); json = @"{ ""id"":""second"", ""type"":""object"", ""extends"":{""$ref"":""first""}, ""additionalProperties"":{""type"":""string""} }"; JsonSchema second = JsonSchema.Parse(json, resolver); Assert.AreEqual(first, second.Extends[0]); json = @"{ ""id"":""third"", ""type"":""object"", ""extends"":{""$ref"":""second""}, ""additionalProperties"":false }"; JsonSchema third = JsonSchema.Parse(json, resolver); Assert.AreEqual(second, third.Extends[0]); Assert.AreEqual(first, third.Extends[0].Extends[0]); StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; third.WriteTo(jsonWriter, resolver); string writtenJson = writer.ToString(); StringAssert.AreEqual(@"{ ""id"": ""third"", ""type"": ""object"", ""additionalProperties"": false, ""extends"": { ""$ref"": ""second"" } }", writtenJson); StringWriter writer1 = new StringWriter(); JsonTextWriter jsonWriter1 = new JsonTextWriter(writer1); jsonWriter1.Formatting = Formatting.Indented; third.WriteTo(jsonWriter1); writtenJson = writer1.ToString(); StringAssert.AreEqual(@"{ ""id"": ""third"", ""type"": ""object"", ""additionalProperties"": false, ""extends"": { ""id"": ""second"", ""type"": ""object"", ""additionalProperties"": { ""type"": ""string"" }, ""extends"": { ""id"": ""first"", ""type"": ""object"", ""additionalProperties"": {} } } }", writtenJson); } [Test] public void Extends_Multiple() { string json = @"{ ""type"":""object"", ""extends"":{""type"":""string""}, ""additionalProperties"":{""type"":""string""} }"; JsonSchema s = JsonSchema.Parse(json); StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; string newJson = s.ToString(); StringAssert.AreEqual(@"{ ""type"": ""object"", ""additionalProperties"": { ""type"": ""string"" }, ""extends"": { ""type"": ""string"" } }", newJson); json = @"{ ""type"":""object"", ""extends"":[{""type"":""string""}], ""additionalProperties"":{""type"":""string""} }"; s = JsonSchema.Parse(json); writer = new StringWriter(); jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; newJson = s.ToString(); StringAssert.AreEqual(@"{ ""type"": ""object"", ""additionalProperties"": { ""type"": ""string"" }, ""extends"": { ""type"": ""string"" } }", newJson); json = @"{ ""type"":""object"", ""extends"":[{""type"":""string""},{""type"":""object""}], ""additionalProperties"":{""type"":""string""} }"; s = JsonSchema.Parse(json); writer = new StringWriter(); jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; newJson = s.ToString(); StringAssert.AreEqual(@"{ ""type"": ""object"", ""additionalProperties"": { ""type"": ""string"" }, ""extends"": [ { ""type"": ""string"" }, { ""type"": ""object"" } ] }", newJson); } [Test] public void WriteTo_AdditionalProperties() { StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; JsonSchema schema = JsonSchema.Parse(@"{ ""description"":""AdditionalProperties"", ""type"":[""string"", ""integer""], ""additionalProperties"":{""type"":[""object"", ""boolean""]} }"); schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""description"": ""AdditionalProperties"", ""type"": [ ""string"", ""integer"" ], ""additionalProperties"": { ""type"": [ ""boolean"", ""object"" ] } }", json); } [Test] public void WriteTo_Properties() { JsonSchema schema = JsonSchema.Parse(@"{ ""description"":""A person"", ""type"":""object"", ""properties"": { ""name"":{""type"":""string""}, ""hobbies"": { ""type"":""array"", ""items"": {""type"":""string""} } } }"); StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""description"": ""A person"", ""type"": ""object"", ""properties"": { ""name"": { ""type"": ""string"" }, ""hobbies"": { ""type"": ""array"", ""items"": { ""type"": ""string"" } } } }", json); } [Test] public void WriteTo_Enum() { JsonSchema schema = JsonSchema.Parse(@"{ ""description"":""Type"", ""type"":[""string"",""array""], ""items"":{}, ""enum"":[""string"",""object"",""array"",""boolean"",""number"",""integer"",""null"",""any""] }"); StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""description"": ""Type"", ""type"": [ ""string"", ""array"" ], ""items"": {}, ""enum"": [ ""string"", ""object"", ""array"", ""boolean"", ""number"", ""integer"", ""null"", ""any"" ] }", json); } [Test] public void WriteTo_CircularReference() { string json = @"{ ""id"":""CircularReferenceArray"", ""description"":""CircularReference"", ""type"":[""array""], ""items"":{""$ref"":""CircularReferenceArray""} }"; JsonSchema schema = JsonSchema.Parse(json); StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string writtenJson = writer.ToString(); StringAssert.AreEqual(@"{ ""id"": ""CircularReferenceArray"", ""description"": ""CircularReference"", ""type"": ""array"", ""items"": { ""$ref"": ""CircularReferenceArray"" } }", writtenJson); } [Test] public void WriteTo_DisallowMultiple() { JsonSchema schema = JsonSchema.Parse(@"{ ""description"":""Type"", ""type"":[""string"",""array""], ""items"":{}, ""disallow"":[""string"",""object"",""array""] }"); StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""description"": ""Type"", ""type"": [ ""string"", ""array"" ], ""items"": {}, ""disallow"": [ ""string"", ""object"", ""array"" ] }", json); } [Test] public void WriteTo_DisallowSingle() { JsonSchema schema = JsonSchema.Parse(@"{ ""description"":""Type"", ""type"":[""string"",""array""], ""items"":{}, ""disallow"":""any"" }"); StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""description"": ""Type"", ""type"": [ ""string"", ""array"" ], ""items"": {}, ""disallow"": ""any"" }", json); } [Test] public void WriteTo_MultipleItems() { JsonSchema schema = JsonSchema.Parse(@"{ ""items"":[{},{}] }"); StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""items"": [ {}, {} ] }", json); } [Test] public void WriteTo_ExclusiveMinimum_ExclusiveMaximum() { JsonSchema schema = new JsonSchema(); schema.ExclusiveMinimum = true; schema.ExclusiveMaximum = true; StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""exclusiveMinimum"": true, ""exclusiveMaximum"": true }", json); } [Test] public void WriteTo_PatternProperties() { JsonSchema schema = new JsonSchema(); schema.PatternProperties = new Dictionary { { "[abc]", new JsonSchema() } }; StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""patternProperties"": { ""[abc]"": {} } }", json); } [Test] public void ToString_AdditionalItems() { JsonSchema schema = JsonSchema.Parse(@"{ ""additionalItems"": {""type"": ""integer""} }"); string json = schema.ToString(); StringAssert.AreEqual(@"{ ""additionalItems"": { ""type"": ""integer"" } }", json); } [Test] public void WriteTo_PositionalItemsValidation_True() { JsonSchema schema = new JsonSchema(); schema.PositionalItemsValidation = true; StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""items"": [] }", json); } [Test] public void WriteTo_PositionalItemsValidation_TrueWithItemsSchema() { JsonSchema schema = new JsonSchema(); schema.PositionalItemsValidation = true; schema.Items = new List { new JsonSchema { Type = JsonSchemaType.String } }; StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""items"": [ { ""type"": ""string"" } ] }", json); } [Test] public void WriteTo_PositionalItemsValidation_FalseWithItemsSchema() { JsonSchema schema = new JsonSchema(); schema.Items = new List { new JsonSchema { Type = JsonSchemaType.String } }; StringWriter writer = new StringWriter(); JsonTextWriter jsonWriter = new JsonTextWriter(writer); jsonWriter.Formatting = Formatting.Indented; schema.WriteTo(jsonWriter); string json = writer.ToString(); StringAssert.AreEqual(@"{ ""items"": { ""type"": ""string"" } }", json); } [Test] public void IntegerValidatesAgainstFloatFlags() { JsonSchema schema = JsonSchema.Parse(@"{ ""type"": ""object"", ""$schema"": ""http://json-schema.org/draft-03/schema"", ""required"": false, ""properties"": { ""NumberProperty"": { ""required"": false, ""type"": [ ""number"", ""null"" ] } } }"); JObject json = JObject.Parse(@"{ ""NumberProperty"": 23 }"); Assert.IsTrue(json.IsValid(schema)); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/ExtensionsTests.cs0000664000175000017500000004102312454416117027250 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Schema; using Newtonsoft.Json.Linq; using System.IO; using Newtonsoft.Json.Tests.TestObjects; #if !(NETFX_CORE || ASPNETCORE50) using System.Data; #endif namespace Newtonsoft.Json.Tests.Schema { [TestFixture] public class ExtensionsTests : TestFixtureBase { [Test] public void IsValid() { JsonSchema schema = JsonSchema.Parse("{'type':'integer'}"); JToken stringToken = JToken.FromObject("pie"); JToken integerToken = JToken.FromObject(1); IList errorMessages; Assert.AreEqual(true, integerToken.IsValid(schema)); Assert.AreEqual(true, integerToken.IsValid(schema, out errorMessages)); Assert.AreEqual(0, errorMessages.Count); Assert.AreEqual(false, stringToken.IsValid(schema)); Assert.AreEqual(false, stringToken.IsValid(schema, out errorMessages)); Assert.AreEqual(1, errorMessages.Count); Assert.AreEqual("Invalid type. Expected Integer but got String.", errorMessages[0]); } [Test] public void ValidateWithEventHandler() { JsonSchema schema = JsonSchema.Parse("{'pattern':'lol'}"); JToken stringToken = JToken.FromObject("pie lol"); List errors = new List(); stringToken.Validate(schema, (sender, args) => errors.Add(args.Message)); Assert.AreEqual(0, errors.Count); stringToken = JToken.FromObject("pie"); stringToken.Validate(schema, (sender, args) => errors.Add(args.Message)); Assert.AreEqual(1, errors.Count); Assert.AreEqual("String 'pie' does not match regex pattern 'lol'.", errors[0]); } [Test] public void ValidateWithOutEventHandlerFailure() { ExceptionAssert.Throws(() => { JsonSchema schema = JsonSchema.Parse("{'pattern':'lol'}"); JToken stringToken = JToken.FromObject("pie"); stringToken.Validate(schema); }, @"String 'pie' does not match regex pattern 'lol'."); } [Test] public void ValidateWithOutEventHandlerSuccess() { JsonSchema schema = JsonSchema.Parse("{'pattern':'lol'}"); JToken stringToken = JToken.FromObject("pie lol"); stringToken.Validate(schema); } [Test] public void ValidateFailureWithOutLineInfoBecauseOfEndToken() { // changed in 6.0.6 to now include line info! JsonSchema schema = JsonSchema.Parse("{'properties':{'lol':{'required':true}}}"); JObject o = JObject.Parse("{}"); List errors = new List(); o.Validate(schema, (sender, args) => errors.Add(args.Message)); Assert.AreEqual("Required properties are missing from object: lol. Line 1, position 1.", errors[0]); Assert.AreEqual(1, errors.Count); } [Test] public void ValidateRequiredFieldsWithLineInfo() { JsonSchema schema = JsonSchema.Parse("{'properties':{'lol':{'type':'string'}}}"); JObject o = JObject.Parse("{'lol':1}"); List errors = new List(); o.Validate(schema, (sender, args) => errors.Add(args.Path + " - " + args.Message)); Assert.AreEqual("lol - Invalid type. Expected String but got Integer. Line 1, position 8.", errors[0]); Assert.AreEqual("1", o.SelectToken("lol").ToString()); Assert.AreEqual(1, errors.Count); } [Test] public void Blog() { string schemaJson = @" { ""description"": ""A person schema"", ""type"": ""object"", ""properties"": { ""name"": {""type"":""string""}, ""hobbies"": { ""type"": ""array"", ""items"": {""type"":""string""} } } } "; //JsonSchema schema; //using (JsonTextReader reader = new JsonTextReader(new StringReader(schemaJson))) //{ // JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); // schema = builder.Parse(reader); //} JsonSchema schema = JsonSchema.Parse(schemaJson); JObject person = JObject.Parse(@"{ ""name"": ""James"", ""hobbies"": ["".NET"", ""Blogging"", ""Reading"", ""Xbox"", ""LOLCATS""] }"); bool valid = person.IsValid(schema); // true } private void GenerateSchemaAndSerializeFromType(T value) { JsonSchemaGenerator generator = new JsonSchemaGenerator(); generator.UndefinedSchemaIdHandling = UndefinedSchemaIdHandling.UseAssemblyQualifiedName; JsonSchema typeSchema = generator.Generate(typeof(T)); string schema = typeSchema.ToString(); string json = JsonConvert.SerializeObject(value, Formatting.Indented); JToken token = JToken.ReadFrom(new JsonTextReader(new StringReader(json))); List errors = new List(); token.Validate(typeSchema, (sender, args) => { errors.Add(args.Message); }); if (errors.Count > 0) Assert.Fail("Schema generated for type '{0}' is not valid." + Environment.NewLine + string.Join(Environment.NewLine, errors.ToArray()), typeof(T)); } [Test] public void GenerateSchemaAndSerializeFromTypeTests() { GenerateSchemaAndSerializeFromType(new List { "1", "Two", "III" }); GenerateSchemaAndSerializeFromType(new List { 1 }); GenerateSchemaAndSerializeFromType(new Version("1.2.3.4")); GenerateSchemaAndSerializeFromType(new Store()); GenerateSchemaAndSerializeFromType(new Person()); GenerateSchemaAndSerializeFromType(new PersonRaw()); GenerateSchemaAndSerializeFromType(new CircularReferenceClass() { Name = "I'm required" }); GenerateSchemaAndSerializeFromType(new CircularReferenceWithIdClass()); GenerateSchemaAndSerializeFromType(new ClassWithArray()); GenerateSchemaAndSerializeFromType(new ClassWithGuid()); #if !NET20 GenerateSchemaAndSerializeFromType(new NullableDateTimeTestClass()); #endif #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) GenerateSchemaAndSerializeFromType(new DataSet()); #endif GenerateSchemaAndSerializeFromType(new object()); GenerateSchemaAndSerializeFromType(1); GenerateSchemaAndSerializeFromType("Hi"); GenerateSchemaAndSerializeFromType(new DateTime(2000, 12, 29, 23, 59, 0, DateTimeKind.Utc)); GenerateSchemaAndSerializeFromType(TimeSpan.FromTicks(1000000)); #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) GenerateSchemaAndSerializeFromType(DBNull.Value); #endif GenerateSchemaAndSerializeFromType(new JsonPropertyWithHandlingValues()); } [Test] public void UndefinedPropertyOnNoPropertySchema() { JsonSchema schema = JsonSchema.Parse(@"{ ""description"": ""test"", ""type"": ""object"", ""additionalProperties"": false, ""properties"": { } }"); JObject o = JObject.Parse("{'g':1}"); List errors = new List(); o.Validate(schema, (sender, args) => errors.Add(args.Message)); Assert.AreEqual(1, errors.Count); Assert.AreEqual("Property 'g' has not been defined and the schema does not allow additional properties. Line 1, position 5.", errors[0]); } [Test] public void ExclusiveMaximum_Int() { ExceptionAssert.Throws(() => { JsonSchema schema = new JsonSchema(); schema.Maximum = 10; schema.ExclusiveMaximum = true; JValue v = new JValue(10); v.Validate(schema); }, "Integer 10 equals maximum value of 10 and exclusive maximum is true."); } [Test] public void ExclusiveMaximum_Float() { ExceptionAssert.Throws(() => { JsonSchema schema = new JsonSchema(); schema.Maximum = 10.1; schema.ExclusiveMaximum = true; JValue v = new JValue(10.1); v.Validate(schema); }, "Float 10.1 equals maximum value of 10.1 and exclusive maximum is true."); } [Test] public void ExclusiveMinimum_Int() { ExceptionAssert.Throws(() => { JsonSchema schema = new JsonSchema(); schema.Minimum = 10; schema.ExclusiveMinimum = true; JValue v = new JValue(10); v.Validate(schema); }, "Integer 10 equals minimum value of 10 and exclusive minimum is true."); } [Test] public void ExclusiveMinimum_Float() { ExceptionAssert.Throws(() => { JsonSchema schema = new JsonSchema(); schema.Minimum = 10.1; schema.ExclusiveMinimum = true; JValue v = new JValue(10.1); v.Validate(schema); }, "Float 10.1 equals minimum value of 10.1 and exclusive minimum is true."); } [Test] public void DivisibleBy_Int() { ExceptionAssert.Throws(() => { JsonSchema schema = new JsonSchema(); schema.DivisibleBy = 3; JValue v = new JValue(10); v.Validate(schema); }, "Integer 10 is not evenly divisible by 3."); } [Test] public void DivisibleBy_Approx() { JsonSchema schema = new JsonSchema(); schema.DivisibleBy = 0.01; JValue v = new JValue(20.49); v.Validate(schema); } [Test] public void UniqueItems_SimpleUnique() { JsonSchema schema = new JsonSchema(); schema.UniqueItems = true; JArray a = new JArray(1, 2, 3); Assert.IsTrue(a.IsValid(schema)); } [Test] public void UniqueItems_SimpleDuplicate() { JsonSchema schema = new JsonSchema(); schema.UniqueItems = true; JArray a = new JArray(1, 2, 3, 2, 2); IList errorMessages; Assert.IsFalse(a.IsValid(schema, out errorMessages)); Assert.AreEqual(2, errorMessages.Count); Assert.AreEqual("Non-unique array item at index 3.", errorMessages[0]); Assert.AreEqual("Non-unique array item at index 4.", errorMessages[1]); } [Test] public void UniqueItems_ComplexDuplicate() { JsonSchema schema = new JsonSchema(); schema.UniqueItems = true; JArray a = new JArray(1, new JObject(new JProperty("value", "value!")), 3, 2, new JObject(new JProperty("value", "value!")), 4, 2, new JObject(new JProperty("value", "value!"))); IList errorMessages; Assert.IsFalse(a.IsValid(schema, out errorMessages)); Assert.AreEqual(3, errorMessages.Count); Assert.AreEqual("Non-unique array item at index 4.", errorMessages[0]); Assert.AreEqual("Non-unique array item at index 6.", errorMessages[1]); Assert.AreEqual("Non-unique array item at index 7.", errorMessages[2]); } [Test] public void UniqueItems_NestedDuplicate() { JsonSchema schema = new JsonSchema(); schema.UniqueItems = true; schema.Items = new List { new JsonSchema { UniqueItems = true } }; schema.PositionalItemsValidation = false; JArray a = new JArray( new JArray(1, 2), new JArray(1, 1), new JArray(3, 4), new JArray(1, 2), new JArray(1, 1) ); IList errorMessages; Assert.IsFalse(a.IsValid(schema, out errorMessages)); Assert.AreEqual(4, errorMessages.Count); Assert.AreEqual("Non-unique array item at index 1.", errorMessages[0]); Assert.AreEqual("Non-unique array item at index 3.", errorMessages[1]); Assert.AreEqual("Non-unique array item at index 1.", errorMessages[2]); Assert.AreEqual("Non-unique array item at index 4.", errorMessages[3]); } [Test] public void Enum_Properties() { JsonSchema schema = new JsonSchema(); schema.Properties = new Dictionary { { "bar", new JsonSchema { Enum = new List { new JValue(1), new JValue(2) } } } }; JObject o = new JObject( new JProperty("bar", 1) ); IList errorMessages; Assert.IsTrue(o.IsValid(schema, out errorMessages)); Assert.AreEqual(0, errorMessages.Count); o = new JObject( new JProperty("bar", 3) ); Assert.IsFalse(o.IsValid(schema, out errorMessages)); Assert.AreEqual(1, errorMessages.Count); } [Test] public void UniqueItems_Property() { JsonSchema schema = new JsonSchema(); schema.Properties = new Dictionary { { "bar", new JsonSchema { UniqueItems = true } } }; JObject o = new JObject( new JProperty("bar", new JArray(1, 2, 3, 3)) ); IList errorMessages; Assert.IsFalse(o.IsValid(schema, out errorMessages)); Assert.AreEqual(1, errorMessages.Count); } [Test] public void Items_Positional() { JsonSchema schema = new JsonSchema(); schema.Items = new List { new JsonSchema { Type = JsonSchemaType.Object }, new JsonSchema { Type = JsonSchemaType.Integer } }; schema.PositionalItemsValidation = true; JArray a = new JArray(new JObject(), 1); IList errorMessages; Assert.IsTrue(a.IsValid(schema, out errorMessages)); Assert.AreEqual(0, errorMessages.Count); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaSpecTests.cs0000664000175000017500000001216512454416117027763 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(ASPNETCORE50 || NETFX_CORE) using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; using System.Text; using NUnit.Framework; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Schema; namespace Newtonsoft.Json.Tests.Schema { public class JsonSchemaSpecTest { public string FileName { get; set; } public string TestCaseDescription { get; set; } public JObject Schema { get; set; } public string TestDescription { get; set; } public JToken Data { get; set; } public bool IsValid { get; set; } public int TestNumber { get; set; } public override string ToString() { return FileName + " - " + TestCaseDescription + " - " + TestDescription; } } [TestFixture] public class JsonSchemaSpecTests : TestFixtureBase { [TestCaseSourceAttribute("GetSpecTestDetails")] public void SpecTest(JsonSchemaSpecTest jsonSchemaSpecTest) { //if (jsonSchemaSpecTest.ToString() == "enum.json - simple enum validation - something else is invalid") { Console.WriteLine("Running JSON Schema test " + jsonSchemaSpecTest.TestNumber + ": " + jsonSchemaSpecTest); JsonSchema s = JsonSchema.Read(jsonSchemaSpecTest.Schema.CreateReader()); IList errorMessages; bool v = jsonSchemaSpecTest.Data.IsValid(s, out errorMessages); errorMessages = errorMessages ?? new List(); Assert.AreEqual(jsonSchemaSpecTest.IsValid, v, jsonSchemaSpecTest.TestCaseDescription + " - " + jsonSchemaSpecTest.TestDescription + " - errors: " + string.Join(", ", errorMessages)); } } public IList GetSpecTestDetails() { IList specTests = new List(); // get test files location relative to the test project dll string baseDirectory = AppDomain.CurrentDomain.BaseDirectory; string baseTestPath = Path.Combine(baseDirectory, "Schema", "Specs"); string[] testFiles = Directory.GetFiles(baseTestPath, "*.json", SearchOption.AllDirectories); // read through each of the *.json test files and extract the test details foreach (string testFile in testFiles) { string testJson = System.IO.File.ReadAllText(testFile); JArray a = JArray.Parse(testJson); foreach (JObject testCase in a) { foreach (JObject test in testCase["tests"]) { JsonSchemaSpecTest jsonSchemaSpecTest = new JsonSchemaSpecTest(); jsonSchemaSpecTest.FileName = Path.GetFileName(testFile); jsonSchemaSpecTest.TestCaseDescription = (string)testCase["description"]; jsonSchemaSpecTest.Schema = (JObject)testCase["schema"]; jsonSchemaSpecTest.TestDescription = (string)test["description"]; jsonSchemaSpecTest.Data = test["data"]; jsonSchemaSpecTest.IsValid = (bool)test["valid"]; jsonSchemaSpecTest.TestNumber = specTests.Count + 1; specTests.Add(jsonSchemaSpecTest); } } } specTests = specTests.Where(s => s.FileName != "dependencies.json" && s.TestCaseDescription != "multiple disallow subschema" && s.TestCaseDescription != "types from separate schemas are merged" && s.TestCaseDescription != "when types includes a schema it should fully validate the schema" && s.TestCaseDescription != "types can include schemas").ToList(); return specTests; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaBuilderTests.cs0000664000175000017500000005235412454416117030463 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Schema; using System.IO; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Schema { [TestFixture] public class JsonSchemaBuilderTests : TestFixtureBase { [Test] public void Simple() { string json = @" { ""description"": ""A person"", ""type"": ""object"", ""properties"": { ""name"": {""type"":""string""}, ""hobbies"": { ""type"": ""array"", ""items"": {""type"":""string""} } } } "; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("A person", schema.Description); Assert.AreEqual(JsonSchemaType.Object, schema.Type); Assert.AreEqual(2, schema.Properties.Count); Assert.AreEqual(JsonSchemaType.String, schema.Properties["name"].Type); Assert.AreEqual(JsonSchemaType.Array, schema.Properties["hobbies"].Type); Assert.AreEqual(JsonSchemaType.String, schema.Properties["hobbies"].Items[0].Type); } [Test] public void MultipleTypes() { string json = @"{ ""description"":""Age"", ""type"":[""string"", ""integer""] }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("Age", schema.Description); Assert.AreEqual(JsonSchemaType.String | JsonSchemaType.Integer, schema.Type); } [Test] public void MultipleItems() { string json = @"{ ""description"":""MultipleItems"", ""type"":""array"", ""items"": [{""type"":""string""},{""type"":""array""}] }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("MultipleItems", schema.Description); Assert.AreEqual(JsonSchemaType.String, schema.Items[0].Type); Assert.AreEqual(JsonSchemaType.Array, schema.Items[1].Type); } [Test] public void AdditionalProperties() { string json = @"{ ""description"":""AdditionalProperties"", ""type"":[""string"", ""integer""], ""additionalProperties"":{""type"":[""object"", ""boolean""]} }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("AdditionalProperties", schema.Description); Assert.AreEqual(JsonSchemaType.Object | JsonSchemaType.Boolean, schema.AdditionalProperties.Type); } [Test] public void Required() { string json = @"{ ""description"":""Required"", ""required"":true }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("Required", schema.Description); Assert.AreEqual(true, schema.Required); } [Test] public void ExclusiveMinimum_ExclusiveMaximum() { string json = @"{ ""exclusiveMinimum"":true, ""exclusiveMaximum"":true }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual(true, schema.ExclusiveMinimum); Assert.AreEqual(true, schema.ExclusiveMaximum); } [Test] public void ReadOnly() { string json = @"{ ""description"":""ReadOnly"", ""readonly"":true }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("ReadOnly", schema.Description); Assert.AreEqual(true, schema.ReadOnly); } [Test] public void Hidden() { string json = @"{ ""description"":""Hidden"", ""hidden"":true }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("Hidden", schema.Description); Assert.AreEqual(true, schema.Hidden); } [Test] public void Id() { string json = @"{ ""description"":""Id"", ""id"":""testid"" }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("Id", schema.Description); Assert.AreEqual("testid", schema.Id); } [Test] public void Title() { string json = @"{ ""description"":""Title"", ""title"":""testtitle"" }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("Title", schema.Description); Assert.AreEqual("testtitle", schema.Title); } [Test] public void Pattern() { string json = @"{ ""description"":""Pattern"", ""pattern"":""testpattern"" }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("Pattern", schema.Description); Assert.AreEqual("testpattern", schema.Pattern); } [Test] public void Format() { string json = @"{ ""description"":""Format"", ""format"":""testformat"" }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("Format", schema.Description); Assert.AreEqual("testformat", schema.Format); } [Test] public void Requires() { string json = @"{ ""description"":""Requires"", ""requires"":""PurpleMonkeyDishwasher"" }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("Requires", schema.Description); Assert.AreEqual("PurpleMonkeyDishwasher", schema.Requires); } [Test] public void MinimumMaximum() { string json = @"{ ""description"":""MinimumMaximum"", ""minimum"":1.1, ""maximum"":1.2, ""minItems"":1, ""maxItems"":2, ""minLength"":5, ""maxLength"":50, ""divisibleBy"":3, }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("MinimumMaximum", schema.Description); Assert.AreEqual(1.1, schema.Minimum); Assert.AreEqual(1.2, schema.Maximum); Assert.AreEqual(1, schema.MinimumItems); Assert.AreEqual(2, schema.MaximumItems); Assert.AreEqual(5, schema.MinimumLength); Assert.AreEqual(50, schema.MaximumLength); Assert.AreEqual(3, schema.DivisibleBy); } [Test] public void DisallowSingleType() { string json = @"{ ""description"":""DisallowSingleType"", ""disallow"":""string"" }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("DisallowSingleType", schema.Description); Assert.AreEqual(JsonSchemaType.String, schema.Disallow); } [Test] public void DisallowMultipleTypes() { string json = @"{ ""description"":""DisallowMultipleTypes"", ""disallow"":[""string"",""number""] }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("DisallowMultipleTypes", schema.Description); Assert.AreEqual(JsonSchemaType.String | JsonSchemaType.Float, schema.Disallow); } [Test] public void DefaultPrimitiveType() { string json = @"{ ""description"":""DefaultPrimitiveType"", ""default"":1.1 }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("DefaultPrimitiveType", schema.Description); Assert.AreEqual(1.1, (double)schema.Default); } [Test] public void DefaultComplexType() { string json = @"{ ""description"":""DefaultComplexType"", ""default"":{""pie"":true} }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("DefaultComplexType", schema.Description); Assert.IsTrue(JToken.DeepEquals(JObject.Parse(@"{""pie"":true}"), schema.Default)); } [Test] public void Enum() { string json = @"{ ""description"":""Type"", ""type"":[""string"",""array""], ""enum"":[""string"",""object"",""array"",""boolean"",""number"",""integer"",""null"",""any""] }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("Type", schema.Description); Assert.AreEqual(JsonSchemaType.String | JsonSchemaType.Array, schema.Type); Assert.AreEqual(8, schema.Enum.Count); Assert.AreEqual("string", (string)schema.Enum[0]); Assert.AreEqual("any", (string)schema.Enum[schema.Enum.Count - 1]); } [Test] public void CircularReference() { string json = @"{ ""id"":""CircularReferenceArray"", ""description"":""CircularReference"", ""type"":[""array""], ""items"":{""$ref"":""CircularReferenceArray""} }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("CircularReference", schema.Description); Assert.AreEqual("CircularReferenceArray", schema.Id); Assert.AreEqual(JsonSchemaType.Array, schema.Type); Assert.AreEqual(schema, schema.Items[0]); } [Test] public void UnresolvedReference() { ExceptionAssert.Throws(() => { string json = @"{ ""id"":""CircularReferenceArray"", ""description"":""CircularReference"", ""type"":[""array""], ""items"":{""$ref"":""MyUnresolvedReference""} }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); }, @"Could not resolve schema reference 'MyUnresolvedReference'."); } [Test] public void PatternProperties() { string json = @"{ ""patternProperties"": { ""[abc]"": { ""id"":""Blah"" } } }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.IsNotNull(schema.PatternProperties); Assert.AreEqual(1, schema.PatternProperties.Count); Assert.AreEqual("Blah", schema.PatternProperties["[abc]"].Id); } [Test] public void AdditionalItems() { string json = @"{ ""items"": [], ""additionalItems"": {""type"": ""integer""} }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.IsNotNull(schema.AdditionalItems); Assert.AreEqual(JsonSchemaType.Integer, schema.AdditionalItems.Type); Assert.AreEqual(true, schema.AllowAdditionalItems); } [Test] public void DisallowAdditionalItems() { string json = @"{ ""items"": [], ""additionalItems"": false }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.IsNull(schema.AdditionalItems); Assert.AreEqual(false, schema.AllowAdditionalItems); } [Test] public void AllowAdditionalItems() { string json = @"{ ""items"": {}, ""additionalItems"": false }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.IsNull(schema.AdditionalItems); Assert.AreEqual(false, schema.AllowAdditionalItems); } [Test] public void Location() { string json = @"{ ""properties"":{ ""foo"":{ ""type"":""array"", ""items"":[ { ""type"":""integer"" }, { ""properties"":{ ""foo"":{ ""type"":""integer"" } } } ] } } }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual("#", schema.Location); Assert.AreEqual("#/properties/foo", schema.Properties["foo"].Location); Assert.AreEqual("#/properties/foo/items/1/properties/foo", schema.Properties["foo"].Items[1].Properties["foo"].Location); } [Test] public void Reference_BackwardsLocation() { string json = @"{ ""properties"": { ""foo"": {""type"": ""integer""}, ""bar"": {""$ref"": ""#/properties/foo""} } }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual(schema.Properties["foo"], schema.Properties["bar"]); } [Test] public void Reference_ForwardsLocation() { string json = @"{ ""properties"": { ""bar"": {""$ref"": ""#/properties/foo""}, ""foo"": {""type"": ""integer""} } }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual(schema.Properties["foo"], schema.Properties["bar"]); } [Test] public void Reference_NonStandardLocation() { string json = @"{ ""properties"": { ""bar"": {""$ref"": ""#/common/foo""}, ""foo"": {""$ref"": ""#/common/foo""} }, ""common"": { ""foo"": {""type"": ""integer""} } }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual(schema.Properties["foo"], schema.Properties["bar"]); } [Test] public void EscapedReferences() { string json = @"{ ""tilda~field"": {""type"": ""integer""}, ""slash/field"": {""type"": ""object""}, ""percent%field"": {""type"": ""array""}, ""properties"": { ""tilda"": {""$ref"": ""#/tilda~0field""}, ""slash"": {""$ref"": ""#/slash~1field""}, ""percent"": {""$ref"": ""#/percent%25field""} } }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual(JsonSchemaType.Integer, schema.Properties["tilda"].Type); Assert.AreEqual(JsonSchemaType.Object, schema.Properties["slash"].Type); Assert.AreEqual(JsonSchemaType.Array, schema.Properties["percent"].Type); } [Test] public void References_Array() { string json = @"{ ""array"": [{""type"": ""integer""},{""prop"":{""type"": ""object""}}], ""properties"": { ""array"": {""$ref"": ""#/array/0""}, ""arrayprop"": {""$ref"": ""#/array/1/prop""} } }"; JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); JsonSchema schema = builder.Read(new JsonTextReader(new StringReader(json))); Assert.AreEqual(JsonSchemaType.Integer, schema.Properties["array"].Type); Assert.AreEqual(JsonSchemaType.Object, schema.Properties["arrayprop"].Type); } [Test] public void References_IndexTooBig() { // JsonException : Could not resolve schema reference '#/array/10'. string json = @"{ ""array"": [{""type"": ""integer""},{""prop"":{""type"": ""object""}}], ""properties"": { ""array"": {""$ref"": ""#/array/0""}, ""arrayprop"": {""$ref"": ""#/array/10""} } }"; ExceptionAssert.Throws(() => { JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); builder.Read(new JsonTextReader(new StringReader(json))); }, "Could not resolve schema reference '#/array/10'."); } [Test] public void References_IndexNegative() { string json = @"{ ""array"": [{""type"": ""integer""},{""prop"":{""type"": ""object""}}], ""properties"": { ""array"": {""$ref"": ""#/array/0""}, ""arrayprop"": {""$ref"": ""#/array/-1""} } }"; ExceptionAssert.Throws(() => { JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); builder.Read(new JsonTextReader(new StringReader(json))); }, "Could not resolve schema reference '#/array/-1'."); } [Test] public void References_IndexNotInteger() { string json = @"{ ""array"": [{""type"": ""integer""},{""prop"":{""type"": ""object""}}], ""properties"": { ""array"": {""$ref"": ""#/array/0""}, ""arrayprop"": {""$ref"": ""#/array/one""} } }"; ExceptionAssert.Throws(() => { JsonSchemaBuilder builder = new JsonSchemaBuilder(new JsonSchemaResolver()); builder.Read(new JsonTextReader(new StringReader(json))); }, "Could not resolve schema reference '#/array/one'."); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaModelBuilderTests.cs0000664000175000017500000001545112454416117031441 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using Newtonsoft.Json.Schema; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Schema { [TestFixture] public class JsonSchemaModelBuilderTests : TestFixtureBase { [Test] public void ExtendedComplex() { string first = @"{ ""id"":""first"", ""type"":""object"", ""properties"": { ""firstproperty"":{""type"":""string""}, ""secondproperty"":{""type"":""string"",""maxLength"":10}, ""thirdproperty"":{ ""type"":""object"", ""properties"": { ""thirdproperty_firstproperty"":{""type"":""string"",""maxLength"":10,""minLength"":7} } } }, ""additionalProperties"":{} }"; string second = @"{ ""id"":""second"", ""type"":""object"", ""extends"":{""$ref"":""first""}, ""properties"": { ""secondproperty"":{""type"":""any""}, ""thirdproperty"":{ ""extends"":{ ""properties"": { ""thirdproperty_firstproperty"":{""maxLength"":9,""minLength"":6,""pattern"":""hi2u""} }, ""additionalProperties"":{""maxLength"":9,""minLength"":6,""enum"":[""one"",""two""]} }, ""type"":""object"", ""properties"": { ""thirdproperty_firstproperty"":{""pattern"":""hi""} }, ""additionalProperties"":{""type"":""string"",""enum"":[""two"",""three""]} }, ""fourthproperty"":{""type"":""string""} }, ""additionalProperties"":false }"; JsonSchemaResolver resolver = new JsonSchemaResolver(); JsonSchema firstSchema = JsonSchema.Parse(first, resolver); JsonSchema secondSchema = JsonSchema.Parse(second, resolver); JsonSchemaModelBuilder modelBuilder = new JsonSchemaModelBuilder(); JsonSchemaModel model = modelBuilder.Build(secondSchema); Assert.AreEqual(4, model.Properties.Count); Assert.AreEqual(JsonSchemaType.String, model.Properties["firstproperty"].Type); Assert.AreEqual(JsonSchemaType.String, model.Properties["secondproperty"].Type); Assert.AreEqual(10, model.Properties["secondproperty"].MaximumLength); Assert.AreEqual(null, model.Properties["secondproperty"].Enum); Assert.AreEqual(null, model.Properties["secondproperty"].Patterns); Assert.AreEqual(JsonSchemaType.Object, model.Properties["thirdproperty"].Type); Assert.AreEqual(3, model.Properties["thirdproperty"].AdditionalProperties.Enum.Count); Assert.AreEqual("two", (string)model.Properties["thirdproperty"].AdditionalProperties.Enum[0]); Assert.AreEqual("three", (string)model.Properties["thirdproperty"].AdditionalProperties.Enum[1]); Assert.AreEqual("one", (string)model.Properties["thirdproperty"].AdditionalProperties.Enum[2]); Assert.AreEqual(JsonSchemaType.String, model.Properties["thirdproperty"].Properties["thirdproperty_firstproperty"].Type); Assert.AreEqual(9, model.Properties["thirdproperty"].Properties["thirdproperty_firstproperty"].MaximumLength); Assert.AreEqual(7, model.Properties["thirdproperty"].Properties["thirdproperty_firstproperty"].MinimumLength); Assert.AreEqual(2, model.Properties["thirdproperty"].Properties["thirdproperty_firstproperty"].Patterns.Count); Assert.AreEqual("hi", model.Properties["thirdproperty"].Properties["thirdproperty_firstproperty"].Patterns[0]); Assert.AreEqual("hi2u", model.Properties["thirdproperty"].Properties["thirdproperty_firstproperty"].Patterns[1]); Assert.AreEqual(null, model.Properties["thirdproperty"].Properties["thirdproperty_firstproperty"].Properties); Assert.AreEqual(null, model.Properties["thirdproperty"].Properties["thirdproperty_firstproperty"].Items); Assert.AreEqual(null, model.Properties["thirdproperty"].Properties["thirdproperty_firstproperty"].AdditionalProperties); } [Test] public void CircularReference() { string json = @"{ ""id"":""CircularReferenceArray"", ""description"":""CircularReference"", ""type"":[""array""], ""items"":{""$ref"":""CircularReferenceArray""} }"; JsonSchema schema = JsonSchema.Parse(json); JsonSchemaModelBuilder modelBuilder = new JsonSchemaModelBuilder(); JsonSchemaModel model = modelBuilder.Build(schema); Assert.AreEqual(JsonSchemaType.Array, model.Type); Assert.AreEqual(model, model.Items[0]); } [Test] public void Required() { string schemaJson = @"{ ""description"":""A person"", ""type"":""object"", ""properties"": { ""name"":{""type"":""string""}, ""hobbies"":{""type"":""string"",required:true}, ""age"":{""type"":""integer"",required:true} } }"; JsonSchema schema = JsonSchema.Parse(schemaJson); JsonSchemaModelBuilder modelBuilder = new JsonSchemaModelBuilder(); JsonSchemaModel model = modelBuilder.Build(schema); Assert.AreEqual(JsonSchemaType.Object, model.Type); Assert.AreEqual(3, model.Properties.Count); Assert.AreEqual(false, model.Properties["name"].Required); Assert.AreEqual(true, model.Properties["hobbies"].Required); Assert.AreEqual(true, model.Properties["age"].Required); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Schema/PerformanceTests.cs0000664000175000017500000001021312454416117027347 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Schema; using NUnit.Framework; namespace Newtonsoft.Json.Tests.Schema { [TestFixture] public class PerformanceTests : TestFixtureBase { [Test] public void ReaderPerformance() { string json = @"[ { ""id"": 2, ""name"": ""An ice sculpture"", ""price"": 12.50, ""tags"": [""cold"", ""ice""], ""dimensions"": { ""length"": 7.0, ""width"": 12.0, ""height"": 9.5 }, ""warehouseLocation"": { ""latitude"": -78.75, ""longitude"": 20.4 } }, { ""id"": 3, ""name"": ""A blue mouse"", ""price"": 25.50, ""dimensions"": { ""length"": 3.1, ""width"": 1.0, ""height"": 1.0 }, ""warehouseLocation"": { ""latitude"": 54.4, ""longitude"": -32.7 } } ]"; JsonSchema schema = JsonSchema.Parse(@"{ ""$schema"": ""http://json-schema.org/draft-04/schema#"", ""title"": ""Product set"", ""type"": ""array"", ""items"": { ""title"": ""Product"", ""type"": ""object"", ""properties"": { ""id"": { ""description"": ""The unique identifier for a product"", ""type"": ""number"", ""required"": true }, ""name"": { ""type"": ""string"", ""required"": true }, ""price"": { ""type"": ""number"", ""minimum"": 0, ""exclusiveMinimum"": true, ""required"": true }, ""tags"": { ""type"": ""array"", ""items"": { ""type"": ""string"" }, ""minItems"": 1, ""uniqueItems"": true }, ""dimensions"": { ""type"": ""object"", ""properties"": { ""length"": {""type"": ""number"",""required"": true}, ""width"": {""type"": ""number"",""required"": true}, ""height"": {""type"": ""number"",""required"": true} } }, ""warehouseLocation"": { ""description"": ""A geographical coordinate"", ""type"": ""object"", ""properties"": { ""latitude"": { ""type"": ""number"" }, ""longitude"": { ""type"": ""number"" } } } } } }"); using (var tester = new PerformanceTester("Reader")) { for (int i = 0; i < 5000; i++) { JsonTextReader reader = new JsonTextReader(new StringReader(json)); JsonValidatingReader validatingReader = new JsonValidatingReader(reader); validatingReader.Schema = schema; while (validatingReader.Read()) { } } } } } public class PerformanceTester : IDisposable { private readonly Stopwatch _stopwatch = new Stopwatch(); private readonly Action _callback; public PerformanceTester(string description) : this(ts => Console.WriteLine(description + ": " + ts.TotalSeconds)) { } public PerformanceTester(Action callback) { _callback = callback; _stopwatch.Start(); } public static PerformanceTester Start(Action callback) { return new PerformanceTester(callback); } public void Dispose() { _stopwatch.Stop(); if (_callback != null) _callback(Result); } public TimeSpan Result { get { return _stopwatch.Elapsed; } } } } newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/FileSystemEntityModel.Designer.cs0000664000175000017500000004417212454416117030677 0ustar directhexdirecthex//------------------------------------------------------------------------------ // // This code was generated from a template. // // Manual changes to this file may cause unexpected behavior in your application. // Manual changes to this file will be overwritten if the code is regenerated. // //------------------------------------------------------------------------------ using System; using System.ComponentModel; using System.Data.EntityClient; using System.Data.Objects; using System.Data.Objects.DataClasses; using System.Linq; using System.Runtime.Serialization; using System.Xml.Serialization; [assembly: EdmSchemaAttribute()] #region EDM Relationship Metadata [assembly: EdmRelationshipAttribute("DataServicesTestDatabaseModel", "FK_File_Folder", "Folder", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(Newtonsoft.Json.Tests.Folder), "File", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(Newtonsoft.Json.Tests.File))] [assembly: EdmRelationshipAttribute("DataServicesTestDatabaseModel", "FK_Folder_Folder", "Folder", System.Data.Metadata.Edm.RelationshipMultiplicity.ZeroOrOne, typeof(Newtonsoft.Json.Tests.Folder), "Folder1", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(Newtonsoft.Json.Tests.Folder))] #endregion namespace Newtonsoft.Json.Tests { #region Contexts /// /// No Metadata Documentation available. /// public partial class DataServicesTestDatabaseEntities : ObjectContext { #region Constructors /// /// Initializes a new DataServicesTestDatabaseEntities object using the connection string found in the 'DataServicesTestDatabaseEntities' section of the application configuration file. /// public DataServicesTestDatabaseEntities() : base("name=DataServicesTestDatabaseEntities", "DataServicesTestDatabaseEntities") { OnContextCreated(); } /// /// Initialize a new DataServicesTestDatabaseEntities object. /// public DataServicesTestDatabaseEntities(string connectionString) : base(connectionString, "DataServicesTestDatabaseEntities") { OnContextCreated(); } /// /// Initialize a new DataServicesTestDatabaseEntities object. /// public DataServicesTestDatabaseEntities(EntityConnection connection) : base(connection, "DataServicesTestDatabaseEntities") { OnContextCreated(); } #endregion #region Partial Methods partial void OnContextCreated(); #endregion #region ObjectSet Properties /// /// No Metadata Documentation available. /// public ObjectSet File { get { if ((_File == null)) { _File = base.CreateObjectSet("File"); } return _File; } } private ObjectSet _File; /// /// No Metadata Documentation available. /// public ObjectSet Folder { get { if ((_Folder == null)) { _Folder = base.CreateObjectSet("Folder"); } return _Folder; } } private ObjectSet _Folder; #endregion #region AddTo Methods /// /// Deprecated Method for adding a new object to the File EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// public void AddToFile(File file) { base.AddObject("File", file); } /// /// Deprecated Method for adding a new object to the Folder EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// public void AddToFolder(Folder folder) { base.AddObject("Folder", folder); } #endregion } #endregion #region Entities /// /// No Metadata Documentation available. /// [EdmEntityTypeAttribute(NamespaceName="DataServicesTestDatabaseModel", Name="File")] [Serializable()] [DataContractAttribute(IsReference=true)] public partial class File : EntityObject { #region Factory Method /// /// Create a new File object. /// /// Initial value of the FileId property. /// Initial value of the Name property. /// Initial value of the Description property. /// Initial value of the CreatedDate property. public static File CreateFile(global::System.Guid fileId, global::System.String name, global::System.String description, global::System.DateTime createdDate) { File file = new File(); file.FileId = fileId; file.Name = name; file.Description = description; file.CreatedDate = createdDate; return file; } #endregion #region Primitive Properties /// /// No Metadata Documentation available. /// [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)] [DataMemberAttribute()] public global::System.Guid FileId { get { return _FileId; } set { if (_FileId != value) { OnFileIdChanging(value); ReportPropertyChanging("FileId"); _FileId = StructuralObject.SetValidValue(value); ReportPropertyChanged("FileId"); OnFileIdChanged(); } } } private global::System.Guid _FileId; partial void OnFileIdChanging(global::System.Guid value); partial void OnFileIdChanged(); /// /// No Metadata Documentation available. /// [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)] [DataMemberAttribute()] public global::System.String Name { get { return _Name; } set { OnNameChanging(value); ReportPropertyChanging("Name"); _Name = StructuralObject.SetValidValue(value, false); ReportPropertyChanged("Name"); OnNameChanged(); } } private global::System.String _Name; partial void OnNameChanging(global::System.String value); partial void OnNameChanged(); /// /// No Metadata Documentation available. /// [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)] [DataMemberAttribute()] public global::System.String Description { get { return _Description; } set { OnDescriptionChanging(value); ReportPropertyChanging("Description"); _Description = StructuralObject.SetValidValue(value, false); ReportPropertyChanged("Description"); OnDescriptionChanged(); } } private global::System.String _Description; partial void OnDescriptionChanging(global::System.String value); partial void OnDescriptionChanged(); /// /// No Metadata Documentation available. /// [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)] [DataMemberAttribute()] public global::System.DateTime CreatedDate { get { return _CreatedDate; } set { OnCreatedDateChanging(value); ReportPropertyChanging("CreatedDate"); _CreatedDate = StructuralObject.SetValidValue(value); ReportPropertyChanged("CreatedDate"); OnCreatedDateChanged(); } } private global::System.DateTime _CreatedDate; partial void OnCreatedDateChanging(global::System.DateTime value); partial void OnCreatedDateChanged(); #endregion #region Navigation Properties /// /// No Metadata Documentation available. /// [XmlIgnoreAttribute()] [SoapIgnoreAttribute()] [DataMemberAttribute()] [EdmRelationshipNavigationPropertyAttribute("DataServicesTestDatabaseModel", "FK_File_Folder", "Folder")] public Folder Folder { get { return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference("DataServicesTestDatabaseModel.FK_File_Folder", "Folder").Value; } set { ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference("DataServicesTestDatabaseModel.FK_File_Folder", "Folder").Value = value; } } /// /// No Metadata Documentation available. /// [BrowsableAttribute(false)] [DataMemberAttribute()] public EntityReference FolderReference { get { return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference("DataServicesTestDatabaseModel.FK_File_Folder", "Folder"); } set { if ((value != null)) { ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference("DataServicesTestDatabaseModel.FK_File_Folder", "Folder", value); } } } #endregion } /// /// No Metadata Documentation available. /// [EdmEntityTypeAttribute(NamespaceName="DataServicesTestDatabaseModel", Name="Folder")] [Serializable()] [DataContractAttribute(IsReference=true)] public partial class Folder : EntityObject { #region Factory Method /// /// Create a new Folder object. /// /// Initial value of the FolderId property. /// Initial value of the Name property. /// Initial value of the Description property. /// Initial value of the CreatedDate property. public static Folder CreateFolder(global::System.Guid folderId, global::System.String name, global::System.String description, global::System.DateTime createdDate) { Folder folder = new Folder(); folder.FolderId = folderId; folder.Name = name; folder.Description = description; folder.CreatedDate = createdDate; return folder; } #endregion #region Primitive Properties /// /// No Metadata Documentation available. /// [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)] [DataMemberAttribute()] public global::System.Guid FolderId { get { return _FolderId; } set { if (_FolderId != value) { OnFolderIdChanging(value); ReportPropertyChanging("FolderId"); _FolderId = StructuralObject.SetValidValue(value); ReportPropertyChanged("FolderId"); OnFolderIdChanged(); } } } private global::System.Guid _FolderId; partial void OnFolderIdChanging(global::System.Guid value); partial void OnFolderIdChanged(); /// /// No Metadata Documentation available. /// [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)] [DataMemberAttribute()] public global::System.String Name { get { return _Name; } set { OnNameChanging(value); ReportPropertyChanging("Name"); _Name = StructuralObject.SetValidValue(value, false); ReportPropertyChanged("Name"); OnNameChanged(); } } private global::System.String _Name; partial void OnNameChanging(global::System.String value); partial void OnNameChanged(); /// /// No Metadata Documentation available. /// [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)] [DataMemberAttribute()] public global::System.String Description { get { return _Description; } set { OnDescriptionChanging(value); ReportPropertyChanging("Description"); _Description = StructuralObject.SetValidValue(value, false); ReportPropertyChanged("Description"); OnDescriptionChanged(); } } private global::System.String _Description; partial void OnDescriptionChanging(global::System.String value); partial void OnDescriptionChanged(); /// /// No Metadata Documentation available. /// [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)] [DataMemberAttribute()] public global::System.DateTime CreatedDate { get { return _CreatedDate; } set { OnCreatedDateChanging(value); ReportPropertyChanging("CreatedDate"); _CreatedDate = StructuralObject.SetValidValue(value); ReportPropertyChanged("CreatedDate"); OnCreatedDateChanged(); } } private global::System.DateTime _CreatedDate; partial void OnCreatedDateChanging(global::System.DateTime value); partial void OnCreatedDateChanged(); #endregion #region Navigation Properties /// /// No Metadata Documentation available. /// [XmlIgnoreAttribute()] [SoapIgnoreAttribute()] [DataMemberAttribute()] [EdmRelationshipNavigationPropertyAttribute("DataServicesTestDatabaseModel", "FK_File_Folder", "File")] public EntityCollection Files { get { return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection("DataServicesTestDatabaseModel.FK_File_Folder", "File"); } set { if ((value != null)) { ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection("DataServicesTestDatabaseModel.FK_File_Folder", "File", value); } } } /// /// No Metadata Documentation available. /// [XmlIgnoreAttribute()] [SoapIgnoreAttribute()] [DataMemberAttribute()] [EdmRelationshipNavigationPropertyAttribute("DataServicesTestDatabaseModel", "FK_Folder_Folder", "Folder1")] public EntityCollection ChildFolders { get { return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection("DataServicesTestDatabaseModel.FK_Folder_Folder", "Folder1"); } set { if ((value != null)) { ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection("DataServicesTestDatabaseModel.FK_Folder_Folder", "Folder1", value); } } } /// /// No Metadata Documentation available. /// [XmlIgnoreAttribute()] [SoapIgnoreAttribute()] [DataMemberAttribute()] [EdmRelationshipNavigationPropertyAttribute("DataServicesTestDatabaseModel", "FK_Folder_Folder", "Folder")] public Folder ParentFolder { get { return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference("DataServicesTestDatabaseModel.FK_Folder_Folder", "Folder").Value; } set { ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference("DataServicesTestDatabaseModel.FK_Folder_Folder", "Folder").Value = value; } } /// /// No Metadata Documentation available. /// [BrowsableAttribute(false)] [DataMemberAttribute()] public EntityReference ParentFolderReference { get { return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference("DataServicesTestDatabaseModel.FK_Folder_Folder", "Folder"); } set { if ((value != null)) { ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference("DataServicesTestDatabaseModel.FK_Folder_Folder", "Folder", value); } } } #endregion } #endregion } newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Portable40.csproj0000664000175000017500000005064212454416117031662 0ustar directhexdirecthex Debug AnyCPU 9.0.30729 2.0 {3E6E2335-B079-4B5B-A65A-9D586914BCBB} Library Properties Newtonsoft.Json.Tests Newtonsoft.Json.Tests 3.5 v4.0 false publish\ true Disk false Foreground 7 Days false false true 0 1.0.0.%2a false false true true full false bin\Debug\Portable40\ TRACE;DEBUG;PORTABLE40 prompt 4 AllRules.ruleset false pdbonly true bin\Release\Portable40\ TRACE;PORTABLE40 prompt 4 AllRules.ruleset false False ..\packages\FSharp.Core.4.0.0\lib\FSharp.Core.dll False ..\packages\NUnit.2.6.2\lib\nunit.framework.dll 3.5 3.5 3.5 3.5 3.0 3.0 3.5 3.5 3.5 True True FileSystemEntityModel.edmx EntityModelCodeGenerator FileSystemEntityModel.Designer.cs PreserveNewest PreserveNewest PreserveNewest False .NET Framework 3.5 SP1 Client Profile false False .NET Framework 3.5 SP1 true False Windows Installer 3.1 true {959f7f85-c98b-4876-971a-9036224578e4} Newtonsoft.Json.Portable40 PreserveNewest PreserveNewest newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/ExceptionTests.cs0000664000175000017500000001055112454416117025651 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using Newtonsoft.Json.Schema; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests { [TestFixture] public class ExceptionTests : TestFixtureBase { [Test] public void JsonSerializationException() { JsonSerializationException exception = new JsonSerializationException(); Assert.AreEqual("Exception of type 'Newtonsoft.Json.JsonSerializationException' was thrown.", exception.Message); exception = new JsonSerializationException("Message!"); Assert.AreEqual("Message!", exception.Message); Assert.AreEqual(null, exception.InnerException); exception = new JsonSerializationException("Message!", new Exception("Inner!")); Assert.AreEqual("Message!", exception.Message); Assert.AreEqual("Inner!", exception.InnerException.Message); } [Test] public void JsonWriterException() { JsonWriterException exception = new JsonWriterException(); Assert.AreEqual("Exception of type 'Newtonsoft.Json.JsonWriterException' was thrown.", exception.Message); exception = new JsonWriterException("Message!"); Assert.AreEqual("Message!", exception.Message); Assert.AreEqual(null, exception.InnerException); exception = new JsonWriterException("Message!", new Exception("Inner!")); Assert.AreEqual("Message!", exception.Message); Assert.AreEqual("Inner!", exception.InnerException.Message); } [Test] public void JsonReaderException() { JsonReaderException exception = new JsonReaderException(); Assert.AreEqual("Exception of type 'Newtonsoft.Json.JsonReaderException' was thrown.", exception.Message); exception = new JsonReaderException("Message!"); Assert.AreEqual("Message!", exception.Message); Assert.AreEqual(null, exception.InnerException); exception = new JsonReaderException("Message!", new Exception("Inner!")); Assert.AreEqual("Message!", exception.Message); Assert.AreEqual("Inner!", exception.InnerException.Message); } [Test] public void JsonSchemaException() { JsonSchemaException exception = new JsonSchemaException(); Assert.AreEqual("Exception of type 'Newtonsoft.Json.Schema.JsonSchemaException' was thrown.", exception.Message); exception = new JsonSchemaException("Message!"); Assert.AreEqual("Message!", exception.Message); Assert.AreEqual(null, exception.InnerException); exception = new JsonSchemaException("Message!", new Exception("Inner!")); Assert.AreEqual("Message!", exception.Message); Assert.AreEqual("Inner!", exception.InnerException.Message); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Properties/0000775000175000017500000000000012454416117024473 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Properties/AssemblyInfo.cs0000664000175000017500000000561012454416117027417 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Reflection; using System.Runtime.InteropServices; using System.Security; // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. #if PORTABLE40 [assembly: AssemblyTitle("Json.NET Tests Portable .NET 4.0")] #elif PORTABLE [assembly: AssemblyTitle("Json.NET Tests Portable")] #elif NETFX_CORE [assembly: AssemblyTitle("Json.NET Tests WinRT")] #elif NET20 [assembly: AssemblyTitle("Json.NET Tests .NET 2.0")] #elif NET35 [assembly: AssemblyTitle("Json.NET Tests .NET 3.5")] #elif NET40 [assembly: AssemblyTitle("Json.NET Tests .NET 4.0")] #else [assembly: AssemblyTitle("Json.NET Tests")] #endif [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Newtonsoft")] [assembly: AssemblyProduct("Json.NET Tests")] [assembly: AssemblyCopyright("Copyright James Newton-King 2008")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] // Setting ComVisible to false makes the types in this assembly not visible // to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] // The following GUID is for the ID of the typelib if this project is exposed to COM [assembly: Guid("0be3d72b-d2ef-409c-985c-d3ede89a25f1")] // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: [assembly: AssemblyVersion("6.0.0.0")] [assembly: AssemblyFileVersion("6.0.8.18111")] newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/large.json0000664000175000017500003225127612454416117024346 0ustar directhexdirecthex[ { "_id": "5420ea1c9d34f914b83bc28a", "index": 0, "guid": "88ccc7c0-e2dd-4523-8066-84c58f0dfd5d", "isActive": false, "balance": "$1,553.84", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Goodwin Cherry", "gender": "male", "company": "DIGIPRINT", "email": "goodwincherry@digiprint.com", "phone": "+1 (809) 545-2897", "address": "894 Montauk Avenue, Wyoming, Virgin Islands, 7416", "about": "Id aute esse amet tempor excepteur in ex aute velit irure. Proident mollit minim fugiat ex non anim Lorem mollit est ullamco consectetur dolor officia adipisicing. Voluptate ut et non quis nisi. Quis occaecat commodo excepteur et deserunt fugiat sit occaecat. Deserunt incididunt laboris nisi sint irure nostrud sint amet et id. Ut pariatur in eiusmod sit excepteur.\r\n", "registered": "2014-06-14T20:34:23-12:00", "latitude": -89.19685, "longitude": 32.263679, "tags": [ "aliqua", "esse", "non", "officia", "enim", "nostrud", "consectetur" ], "friends": [ { "id": 0, "name": "Saundra Lucas" }, { "id": 1, "name": "Rachelle Hancock" }, { "id": 2, "name": "Sharp Wilkerson" } ], "greeting": "Hello, Goodwin Cherry! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1c2ce68275fc87b664", "index": 1, "guid": "63e815df-7102-42ca-96ae-adf7915dbd1f", "isActive": false, "balance": "$2,184.56", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Perez Zamora", "gender": "male", "company": "SHADEASE", "email": "perezzamora@shadease.com", "phone": "+1 (843) 562-2745", "address": "902 Noel Avenue, Goldfield, Massachusetts, 5555", "about": "Labore sunt qui consequat anim veniam voluptate aliqua. Tempor ullamco est culpa anim incididunt ipsum culpa veniam et ut ad excepteur commodo Lorem. Laboris duis do amet culpa sunt in velit incididunt nisi ex dolor. Lorem do sint veniam sint pariatur qui reprehenderit. Nisi in cupidatat eu irure esse et ipsum Lorem.\r\n", "registered": "2014-06-11T11:33:57-12:00", "latitude": 52.963756, "longitude": -97.251673, "tags": [ "commodo", "do", "ullamco", "duis", "aliqua", "adipisicing", "aliquip" ], "friends": [ { "id": 0, "name": "Strickland Mack" }, { "id": 1, "name": "Allison Oneill" }, { "id": 2, "name": "Hampton Lawson" } ], "greeting": "Hello, Perez Zamora! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1c101c26a29fc0476d", "index": 2, "guid": "362d0d30-2aa3-4a14-b292-908288c05e1f", "isActive": false, "balance": "$2,429.42", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Jenifer Thomas", "gender": "female", "company": "OPTIQUE", "email": "jeniferthomas@optique.com", "phone": "+1 (882) 462-3944", "address": "820 Hausman Street, Yardville, Utah, 3474", "about": "Eiusmod voluptate voluptate culpa est adipisicing officia nisi id irure voluptate irure do dolore. Laboris ipsum irure qui ut in. In ipsum nulla adipisicing eu reprehenderit deserunt excepteur culpa ea in nisi ut.\r\n", "registered": "2014-09-09T05:57:09-12:00", "latitude": 18.683324, "longitude": -63.517571, "tags": [ "enim", "cupidatat", "velit", "officia", "irure", "mollit", "culpa" ], "friends": [ { "id": 0, "name": "Ilene Stein" }, { "id": 1, "name": "Albert Jacobs" }, { "id": 2, "name": "Flores Malone" } ], "greeting": "Hello, Jenifer Thomas! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ca37a29860a4dfd5e", "index": 3, "guid": "0809fe29-3699-4387-9e58-8db8d2b7f319", "isActive": true, "balance": "$1,996.94", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Davenport Lynch", "gender": "male", "company": "LEXICONDO", "email": "davenportlynch@lexicondo.com", "phone": "+1 (968) 446-3983", "address": "204 Krier Place, Evergreen, Montana, 9336", "about": "Sunt deserunt qui eu fugiat aliqua laboris dolor ea. Ex nulla magna sint elit magna labore occaecat sunt reprehenderit ullamco ad eiusmod ex ipsum. Aliquip incididunt anim laborum occaecat.\r\n", "registered": "2014-05-16T17:19:40-12:00", "latitude": -57.231585, "longitude": 3.976962, "tags": [ "commodo", "laborum", "Lorem", "cupidatat", "ad", "labore", "ex" ], "friends": [ { "id": 0, "name": "Hattie Hendrix" }, { "id": 1, "name": "Antonia Meyer" }, { "id": 2, "name": "Dotson Walton" } ], "greeting": "Hello, Davenport Lynch! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1c82d58f63225c12a7", "index": 4, "guid": "2dd86f1e-4dcc-4d1d-a969-a5f23c7ba6e9", "isActive": false, "balance": "$1,443.58", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Kim Stanley", "gender": "male", "company": "POLARIUM", "email": "kimstanley@polarium.com", "phone": "+1 (988) 443-3682", "address": "121 Clermont Avenue, Wanship, Wisconsin, 5023", "about": "Nostrud pariatur cupidatat dolor nostrud ad do incididunt sunt deserunt exercitation. Nisi do in amet excepteur consequat aliqua officia minim. Deserunt ullamco incididunt eu ut reprehenderit ad quis incididunt eiusmod sit. Amet occaecat ex adipisicing duis sit exercitation.\r\n", "registered": "2014-08-23T09:47:55-12:00", "latitude": 1.724018, "longitude": 24.692547, "tags": [ "velit", "cupidatat", "labore", "duis", "id", "voluptate", "veniam" ], "friends": [ { "id": 0, "name": "Meghan Collins" }, { "id": 1, "name": "Williamson Sosa" }, { "id": 2, "name": "Trina Sampson" } ], "greeting": "Hello, Kim Stanley! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d43231e8b4f7c4873", "index": 5, "guid": "02a3ae83-e43a-4f3e-bdd3-e595cb6dd844", "isActive": true, "balance": "$2,385.81", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Rosie Cain", "gender": "female", "company": "COLUMELLA", "email": "rosiecain@columella.com", "phone": "+1 (903) 427-3522", "address": "570 Harway Avenue, Vowinckel, Maine, 7201", "about": "Dolor dolore anim dolore non eu esse. Reprehenderit deserunt eu voluptate cupidatat ex cillum et id anim magna esse eu aute. Officia duis culpa enim aliqua id commodo ad proident irure eu ad.\r\n", "registered": "2014-03-30T23:54:03-13:00", "latitude": 44.108963, "longitude": -98.770796, "tags": [ "consequat", "reprehenderit", "nisi", "aliqua", "ex", "proident", "dolor" ], "friends": [ { "id": 0, "name": "Patrick Sawyer" }, { "id": 1, "name": "Norma Wilder" }, { "id": 2, "name": "Berg Mccray" } ], "greeting": "Hello, Rosie Cain! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d74a4a1b2f4fb3550", "index": 6, "guid": "b4088fa9-377c-4712-80ad-8ce4bc0e5cbf", "isActive": false, "balance": "$2,367.96", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Meadows Sanford", "gender": "male", "company": "GEEKFARM", "email": "meadowssanford@geekfarm.com", "phone": "+1 (973) 561-3382", "address": "742 Howard Alley, Sabillasville, Virginia, 7760", "about": "Qui anim voluptate sint ut est do dolor incididunt sint officia laboris veniam cillum. Lorem culpa veniam officia magna tempor. Mollit non exercitation adipisicing velit do in anim irure eiusmod Lorem excepteur. Aute adipisicing culpa Lorem culpa minim minim sunt est dolor voluptate sit velit. Minim aliqua voluptate exercitation sint eiusmod qui excepteur dolor magna esse do dolore. Consectetur aliquip aliqua enim id quis ipsum laboris. Eiusmod voluptate fugiat non adipisicing velit ea consequat laboris deserunt aliqua.\r\n", "registered": "2014-01-01T01:20:34-13:00", "latitude": 24.520713, "longitude": 21.808698, "tags": [ "laborum", "labore", "consequat", "amet", "elit", "commodo", "commodo" ], "friends": [ { "id": 0, "name": "Felicia Cardenas" }, { "id": 1, "name": "Robert Morrow" }, { "id": 2, "name": "Sondra Livingston" } ], "greeting": "Hello, Meadows Sanford! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d5aaefdfc32a09d87", "index": 7, "guid": "2ca7d495-6e47-495f-9a35-552c7625fe86", "isActive": true, "balance": "$3,822.34", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Downs Hamilton", "gender": "male", "company": "SLOGANAUT", "email": "downshamilton@sloganaut.com", "phone": "+1 (965) 508-2675", "address": "171 Doughty Street, Stockwell, Kentucky, 2353", "about": "Sint aute sint enim pariatur dolore enim nulla magna proident. Minim elit incididunt et quis eu anim in pariatur officia ut anim aliqua. Occaecat non culpa occaecat amet. Minim eu fugiat laboris velit exercitation id dolor cillum.\r\n", "registered": "2014-01-13T13:57:06-13:00", "latitude": -49.640647, "longitude": -161.677012, "tags": [ "ut", "proident", "ipsum", "reprehenderit", "est", "cupidatat", "qui" ], "friends": [ { "id": 0, "name": "Olivia Shepherd" }, { "id": 1, "name": "Etta Clayton" }, { "id": 2, "name": "Dodson Atkinson" } ], "greeting": "Hello, Downs Hamilton! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d94907966c78cdb2b", "index": 8, "guid": "78e77065-7b31-4e44-9e55-b6e3fea8bce2", "isActive": true, "balance": "$3,056.49", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Mattie Clay", "gender": "female", "company": "XLEEN", "email": "mattieclay@xleen.com", "phone": "+1 (862) 483-2637", "address": "667 Irvington Place, Zarephath, Connecticut, 8135", "about": "Excepteur nulla dolor id incididunt. Cillum ullamco magna dolor ullamco deserunt minim. Eiusmod proident ut aute id adipisicing laborum mollit. Magna voluptate ut voluptate eu eu incididunt nisi velit velit incididunt dolore. Amet velit ullamco consequat dolore aliqua esse mollit mollit deserunt. Nostrud exercitation nisi ipsum esse sunt cillum id reprehenderit qui. Aute aliquip deserunt excepteur duis consequat ut ullamco in.\r\n", "registered": "2014-02-20T19:13:50-13:00", "latitude": 54.729228, "longitude": -36.939348, "tags": [ "magna", "aliquip", "laboris", "duis", "excepteur", "enim", "occaecat" ], "friends": [ { "id": 0, "name": "Anastasia Whitehead" }, { "id": 1, "name": "Dorothy Rush" }, { "id": 2, "name": "Brock Hayden" } ], "greeting": "Hello, Mattie Clay! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dcaf6a7a27ce7839d", "index": 9, "guid": "ec48ffba-c569-48dc-aa36-656f975779da", "isActive": false, "balance": "$2,490.68", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "James Wooten", "gender": "female", "company": "CABLAM", "email": "jameswooten@cablam.com", "phone": "+1 (940) 438-2934", "address": "909 Oakland Place, Wintersburg, Mississippi, 2276", "about": "Minim cillum duis ut officia. Ea irure do qui nostrud consectetur. Exercitation tempor adipisicing nisi amet irure exercitation elit cupidatat pariatur esse duis in et eiusmod. Ullamco sint voluptate exercitation cupidatat voluptate enim aute qui eiusmod veniam cillum laboris. Incididunt exercitation anim sunt cupidatat officia ipsum. Aliquip in mollit dolore veniam. Anim ipsum incididunt occaecat et fugiat qui et sit velit nulla est id.\r\n", "registered": "2014-02-18T00:52:48-13:00", "latitude": 25.439032, "longitude": -173.907045, "tags": [ "et", "consectetur", "Lorem", "proident", "aliqua", "aliquip", "elit" ], "friends": [ { "id": 0, "name": "Vanessa Blankenship" }, { "id": 1, "name": "Salas Kent" }, { "id": 2, "name": "Flynn Ramirez" } ], "greeting": "Hello, James Wooten! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ddeafffa9f6c771c4", "index": 10, "guid": "be7dc5c4-781e-4b1d-8ffa-a6316a4f0cf2", "isActive": true, "balance": "$1,152.49", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Lina Hardy", "gender": "female", "company": "TERRAGO", "email": "linahardy@terrago.com", "phone": "+1 (930) 440-2731", "address": "812 Sharon Street, Cartwright, Washington, 6505", "about": "Est proident esse culpa occaecat voluptate ullamco enim. Ut sint ullamco duis minim ea sunt ullamco cupidatat qui. Cillum duis adipisicing sit enim aliqua ea aute. Ullamco aute velit eu anim aliqua fugiat ad officia irure duis elit est ea. Ut nulla ex quis velit tempor officia. Consequat exercitation do officia elit.\r\n", "registered": "2014-06-20T05:25:53-12:00", "latitude": -65.712253, "longitude": 14.106718, "tags": [ "irure", "amet", "excepteur", "nulla", "nisi", "culpa", "irure" ], "friends": [ { "id": 0, "name": "Lou Ross" }, { "id": 1, "name": "Porter Wade" }, { "id": 2, "name": "Small Cunningham" } ], "greeting": "Hello, Lina Hardy! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d6220ea333ead842c", "index": 11, "guid": "3e86e0c0-5dbb-4c65-9b85-511bb2fbc3e5", "isActive": true, "balance": "$1,850.95", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Ballard Noble", "gender": "male", "company": "BRISTO", "email": "ballardnoble@bristo.com", "phone": "+1 (960) 543-3174", "address": "830 Ainslie Street, Savannah, Tennessee, 7294", "about": "Commodo proident eu et adipisicing culpa minim laborum proident amet. Aliqua commodo cupidatat officia quis quis ullamco cillum. Qui cupidatat commodo ea ullamco et et aliqua. Duis ipsum non aliqua pariatur fugiat voluptate mollit mollit eiusmod. Eu irure sint non magna occaecat id laboris sint pariatur proident do eiusmod. Ullamco nostrud ad non incididunt irure amet consequat sint.\r\n", "registered": "2014-07-13T08:51:22-12:00", "latitude": -74.083728, "longitude": 75.019135, "tags": [ "commodo", "et", "magna", "duis", "qui", "quis", "laboris" ], "friends": [ { "id": 0, "name": "Lorie Montgomery" }, { "id": 1, "name": "Kline Tran" }, { "id": 2, "name": "Allyson Valdez" } ], "greeting": "Hello, Ballard Noble! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d8536852fc0c19480", "index": 12, "guid": "2915622a-a4b5-4452-a1d7-032c845188ff", "isActive": false, "balance": "$3,772.16", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Soto Hebert", "gender": "male", "company": "FORTEAN", "email": "sotohebert@fortean.com", "phone": "+1 (884) 438-3506", "address": "152 Woodhull Street, Sterling, Alabama, 8760", "about": "Commodo sit proident enim minim aliquip. Nulla in eu Lorem aliquip id ut. Qui est velit excepteur ut non consectetur minim qui ex aliqua laboris anim adipisicing. Consequat nostrud exercitation laborum minim tempor.\r\n", "registered": "2014-07-25T00:33:19-12:00", "latitude": -9.824359, "longitude": -49.577641, "tags": [ "velit", "veniam", "aute", "ut", "exercitation", "voluptate", "reprehenderit" ], "friends": [ { "id": 0, "name": "Patsy Simmons" }, { "id": 1, "name": "Ramsey Fox" }, { "id": 2, "name": "Durham Mosley" } ], "greeting": "Hello, Soto Hebert! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d546ef1f9802c942c", "index": 13, "guid": "ad27ab72-85e4-46a6-96a5-459df2dd6cf9", "isActive": true, "balance": "$2,067.67", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Hanson Cole", "gender": "male", "company": "SNORUS", "email": "hansoncole@snorus.com", "phone": "+1 (815) 556-3691", "address": "948 Adelphi Street, Tyhee, Ohio, 7348", "about": "Et laborum incididunt voluptate veniam non. Ullamco officia laboris officia cupidatat minim dolor culpa exercitation ipsum sit id voluptate enim laboris. Mollit deserunt reprehenderit qui irure tempor reprehenderit minim culpa. Dolor exercitation ex pariatur enim.\r\n", "registered": "2014-05-08T19:15:37-12:00", "latitude": 5.00193, "longitude": -45.935238, "tags": [ "reprehenderit", "ea", "proident", "in", "voluptate", "nostrud", "ipsum" ], "friends": [ { "id": 0, "name": "Victoria Waters" }, { "id": 1, "name": "Amalia Vega" }, { "id": 2, "name": "Fern Madden" } ], "greeting": "Hello, Hanson Cole! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dfb919fc7d43600ac", "index": 14, "guid": "3e236348-352f-4575-9f23-02fc8c877e73", "isActive": false, "balance": "$1,144.11", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Katharine Bradford", "gender": "female", "company": "CENTREXIN", "email": "katharinebradford@centrexin.com", "phone": "+1 (802) 558-2575", "address": "706 Fuller Place, Hillsboro, Hawaii, 3714", "about": "Sit duis deserunt dolor nisi ullamco enim mollit eiusmod aliqua. Proident non consequat cillum culpa anim amet dolor deserunt. Nostrud do aliquip duis reprehenderit nostrud ipsum anim incididunt do qui fugiat. Ad sunt reprehenderit culpa incididunt ea exercitation. Laboris commodo quis ad commodo cupidatat nostrud duis ut anim. Sit sint sint dolor ullamco minim laboris adipisicing magna Lorem tempor.\r\n", "registered": "2014-01-08T06:52:34-13:00", "latitude": -36.273398, "longitude": -150.828529, "tags": [ "magna", "veniam", "proident", "adipisicing", "exercitation", "excepteur", "excepteur" ], "friends": [ { "id": 0, "name": "Lottie Slater" }, { "id": 1, "name": "Conner Maddox" }, { "id": 2, "name": "Lydia Ward" } ], "greeting": "Hello, Katharine Bradford! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d2448d83b0da28c2d", "index": 15, "guid": "a59344fe-b54e-464f-b2ab-2138aa5bedbf", "isActive": false, "balance": "$2,049.59", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Colette Rice", "gender": "female", "company": "JASPER", "email": "coletterice@jasper.com", "phone": "+1 (800) 538-2980", "address": "554 Bank Street, Cade, New Mexico, 6229", "about": "Officia consectetur mollit nostrud aliquip proident excepteur incididunt velit voluptate id commodo quis. Sunt et tempor magna duis nulla elit minim. Ipsum eiusmod mollit adipisicing ipsum deserunt labore sunt id elit reprehenderit et commodo deserunt. Est enim ullamco irure incididunt nulla qui. Exercitation qui elit quis ad eiusmod ut.\r\n", "registered": "2014-06-09T21:00:09-12:00", "latitude": -5.778107, "longitude": -171.92381, "tags": [ "ad", "sunt", "commodo", "et", "id", "consequat", "tempor" ], "friends": [ { "id": 0, "name": "Mccullough Hendricks" }, { "id": 1, "name": "Marina Morse" }, { "id": 2, "name": "Woods James" } ], "greeting": "Hello, Colette Rice! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1df7049e619b87764b", "index": 16, "guid": "db5424ff-4b52-4a72-8818-513edc4c9172", "isActive": true, "balance": "$3,633.32", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Susanne Griffith", "gender": "female", "company": "ZENTRY", "email": "susannegriffith@zentry.com", "phone": "+1 (960) 468-3144", "address": "281 Dikeman Street, Goochland, Maryland, 4575", "about": "Aliqua nulla ad aliqua sit proident proident aliquip magna. Nisi labore laboris in laborum aliquip nostrud voluptate eu minim aliquip ea deserunt fugiat. Elit voluptate nostrud laborum ex voluptate et aliquip tempor laborum occaecat. Anim ad ex laborum minim do commodo eiusmod.\r\n", "registered": "2014-07-20T19:20:27-12:00", "latitude": -36.100056, "longitude": 126.0204, "tags": [ "anim", "consectetur", "nisi", "sunt", "fugiat", "magna", "ullamco" ], "friends": [ { "id": 0, "name": "Ellen Webb" }, { "id": 1, "name": "Harriett Kirk" }, { "id": 2, "name": "Penelope Rutledge" } ], "greeting": "Hello, Susanne Griffith! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d2c4fc282d2ae5dcb", "index": 17, "guid": "3c75771d-0bb3-4378-9281-0e2b6b16e18e", "isActive": false, "balance": "$3,268.05", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Todd Baker", "gender": "male", "company": "ACRODANCE", "email": "toddbaker@acrodance.com", "phone": "+1 (876) 480-2364", "address": "445 Borinquen Pl, Leroy, Alaska, 3991", "about": "Lorem sit in eiusmod ea velit quis fugiat esse reprehenderit magna enim sint quis. Occaecat elit tempor reprehenderit ad irure eiusmod Lorem. Do amet irure eu aliquip aliqua incididunt cillum aliquip exercitation culpa ad cillum. Sint labore in nulla nisi minim elit sunt officia tempor esse ipsum. Officia ipsum enim cillum aliquip dolore sit fugiat quis et velit mollit eu in. Irure commodo magna consectetur pariatur do anim nulla non ea qui cillum sint velit.\r\n", "registered": "2014-03-04T20:47:38-13:00", "latitude": 37.628639, "longitude": -17.008497, "tags": [ "culpa", "eiusmod", "Lorem", "tempor", "reprehenderit", "minim", "aute" ], "friends": [ { "id": 0, "name": "Gutierrez Daniels" }, { "id": 1, "name": "Tammy Wright" }, { "id": 2, "name": "Leah Patel" } ], "greeting": "Hello, Todd Baker! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d01ba7d1d9e397d57", "index": 18, "guid": "29a7d403-8887-4d97-8a73-1efbcf31b341", "isActive": false, "balance": "$2,779.56", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Ebony Cook", "gender": "female", "company": "NORSUL", "email": "ebonycook@norsul.com", "phone": "+1 (850) 419-2474", "address": "556 Wallabout Street, Crumpler, Arizona, 1792", "about": "Duis et dolore ad laborum adipisicing incididunt minim sunt. Sint ex adipisicing nulla ad reprehenderit sint ipsum laborum magna. Excepteur Lorem minim excepteur enim nisi id. In ipsum est culpa sint fugiat consectetur elit do ad.\r\n", "registered": "2014-02-02T04:53:38-13:00", "latitude": 35.657838, "longitude": -98.983731, "tags": [ "duis", "magna", "deserunt", "consequat", "amet", "aute", "incididunt" ], "friends": [ { "id": 0, "name": "Amanda Bullock" }, { "id": 1, "name": "Shaffer Nicholson" }, { "id": 2, "name": "Cathleen Grimes" } ], "greeting": "Hello, Ebony Cook! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d65d4a9a816eb3412", "index": 19, "guid": "e55d9561-b52c-4577-9de1-25c234d40382", "isActive": true, "balance": "$3,811.46", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Desiree Olsen", "gender": "female", "company": "ASSITIA", "email": "desireeolsen@assitia.com", "phone": "+1 (802) 479-2118", "address": "156 Kane Street, Waterford, Federated States Of Micronesia, 218", "about": "Ipsum esse nisi ullamco velit. Qui magna irure ea amet cillum officia amet. Et minim do nulla tempor pariatur minim reprehenderit veniam aliqua laboris adipisicing. Ut exercitation Lorem officia ad reprehenderit irure ut. Ipsum minim ut ut cupidatat velit elit excepteur occaecat ea duis non mollit et. Sint culpa proident non non.\r\n", "registered": "2014-05-05T03:30:56-12:00", "latitude": -66.976964, "longitude": -96.526022, "tags": [ "officia", "excepteur", "dolor", "eiusmod", "Lorem", "sint", "irure" ], "friends": [ { "id": 0, "name": "Macdonald Ramsey" }, { "id": 1, "name": "Eloise Barrera" }, { "id": 2, "name": "Garza Moses" } ], "greeting": "Hello, Desiree Olsen! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d1df0b67a0329ae81", "index": 20, "guid": "eb65d11c-96b2-4c0b-88ae-8ab292b0aeee", "isActive": true, "balance": "$2,093.39", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Casey Huff", "gender": "female", "company": "PROVIDCO", "email": "caseyhuff@providco.com", "phone": "+1 (943) 504-3956", "address": "995 Dodworth Street, Terlingua, Oklahoma, 8866", "about": "Dolor commodo excepteur exercitation reprehenderit. Ea in id irure irure aute velit pariatur pariatur commodo aute laboris est. Voluptate est velit sint dolor eu non voluptate anim exercitation exercitation aute in.\r\n", "registered": "2014-01-14T06:03:49-13:00", "latitude": -29.223113, "longitude": 118.12043, "tags": [ "commodo", "consequat", "qui", "aliquip", "ad", "voluptate", "est" ], "friends": [ { "id": 0, "name": "Reva Mcintyre" }, { "id": 1, "name": "Mccray Hicks" }, { "id": 2, "name": "Haley Carlson" } ], "greeting": "Hello, Casey Huff! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1deab244771a339a29", "index": 21, "guid": "5a7a10df-727f-4884-8e36-ff4b4f2b6d49", "isActive": false, "balance": "$3,666.83", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Beverly Ayers", "gender": "female", "company": "EYERIS", "email": "beverlyayers@eyeris.com", "phone": "+1 (804) 585-3486", "address": "505 Wilson Avenue, Nipinnawasee, Michigan, 4096", "about": "Et commodo excepteur do nostrud officia sit et non sunt ad dolor cillum consectetur pariatur. Nisi nisi ut enim pariatur velit consequat officia irure et deserunt tempor anim. Est ea tempor anim velit ut ipsum ullamco aute. Velit ut elit sint fugiat Lorem dolor deserunt id enim nisi voluptate minim. Mollit elit eu sint est id aliqua aliquip officia dolore aliquip. Velit sunt officia ut excepteur in consectetur dolore do occaecat sunt tempor id.\r\n", "registered": "2014-05-29T04:08:23-12:00", "latitude": -21.823089, "longitude": -136.366352, "tags": [ "proident", "pariatur", "voluptate", "velit", "aliqua", "aliquip", "et" ], "friends": [ { "id": 0, "name": "Jeri Leach" }, { "id": 1, "name": "Copeland Lyons" }, { "id": 2, "name": "Decker Robles" } ], "greeting": "Hello, Beverly Ayers! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d6754ef475d4b6df5", "index": 22, "guid": "96e315f1-b277-4194-bf07-d2ecb7ebfda6", "isActive": false, "balance": "$3,937.60", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Salinas Curry", "gender": "male", "company": "TRIPSCH", "email": "salinascurry@tripsch.com", "phone": "+1 (947) 414-3931", "address": "415 Clarkson Avenue, Holcombe, Kansas, 6075", "about": "Laboris ullamco laborum laborum voluptate ullamco. Laborum aliqua deserunt occaecat elit deserunt aliquip quis dolore sit deserunt. Duis dolor veniam et minim tempor. Ad excepteur deserunt aute proident incididunt. Esse deserunt labore do adipisicing do magna. Labore anim qui consectetur aliqua laboris reprehenderit ipsum Lorem sint. Quis labore laboris ut amet cupidatat in laborum nostrud et magna occaecat culpa sunt aliqua.\r\n", "registered": "2014-05-14T09:33:00-12:00", "latitude": -50.695921, "longitude": -140.628237, "tags": [ "et", "non", "reprehenderit", "proident", "incididunt", "incididunt", "incididunt" ], "friends": [ { "id": 0, "name": "Margery Marquez" }, { "id": 1, "name": "Norman Acevedo" }, { "id": 2, "name": "Glenda Reeves" } ], "greeting": "Hello, Salinas Curry! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d9a5df89150b72ac3", "index": 23, "guid": "0694c8e9-16cb-448f-b6f5-02c6bec13c90", "isActive": false, "balance": "$3,124.04", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Benita Irwin", "gender": "female", "company": "ISODRIVE", "email": "benitairwin@isodrive.com", "phone": "+1 (924) 442-2405", "address": "795 Throop Avenue, Yukon, South Dakota, 145", "about": "Aliquip Lorem mollit veniam ad consequat sint mollit mollit aute ut. Ad ullamco ea pariatur consectetur sint labore nisi nostrud labore cillum dolore duis. Proident deserunt quis dolore elit. Excepteur ullamco magna et cupidatat nisi. Dolor veniam dolore occaecat ut incididunt excepteur ut aliqua exercitation incididunt.\r\n", "registered": "2014-08-24T21:26:56-12:00", "latitude": 14.593928, "longitude": -130.056646, "tags": [ "ut", "cupidatat", "in", "excepteur", "officia", "Lorem", "id" ], "friends": [ { "id": 0, "name": "Perkins Terrell" }, { "id": 1, "name": "Weaver Schmidt" }, { "id": 2, "name": "Suarez Delaney" } ], "greeting": "Hello, Benita Irwin! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ddac154f5b4e2da50", "index": 24, "guid": "5fd1d992-9cc0-4257-9476-58c254cb2566", "isActive": true, "balance": "$1,743.00", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Winters Wyatt", "gender": "male", "company": "FLYBOYZ", "email": "winterswyatt@flyboyz.com", "phone": "+1 (810) 449-3143", "address": "577 Dunne Court, Ticonderoga, West Virginia, 6564", "about": "Ullamco labore proident commodo consequat nisi ut nisi sint enim sint culpa exercitation. In pariatur ex tempor enim non ut occaecat culpa incididunt ea mollit. Eiusmod Lorem minim sit aute ullamco. Amet ullamco irure aliquip do sit voluptate dolor officia in. Cupidatat non fugiat reprehenderit et excepteur duis veniam nulla reprehenderit est Lorem officia.\r\n", "registered": "2014-01-27T20:57:26-13:00", "latitude": -43.891631, "longitude": 51.91962, "tags": [ "nulla", "irure", "nisi", "fugiat", "eu", "irure", "do" ], "friends": [ { "id": 0, "name": "Cline Lindsey" }, { "id": 1, "name": "Cherie Head" }, { "id": 2, "name": "Garner Morrison" } ], "greeting": "Hello, Winters Wyatt! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d8a467804bf45a24f", "index": 25, "guid": "62567188-d648-4b95-949b-64e8aff588b8", "isActive": false, "balance": "$3,848.90", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Elnora Crawford", "gender": "female", "company": "PORTALIS", "email": "elnoracrawford@portalis.com", "phone": "+1 (940) 415-2688", "address": "635 Leonora Court, Mayfair, Texas, 7569", "about": "Laborum occaecat mollit laborum irure. Nisi dolor nostrud ad ex aliqua Lorem. Fugiat in eiusmod laboris in duis ut excepteur id in aliqua aliqua. Nulla reprehenderit proident qui sit. Velit dolore nostrud non quis sunt quis magna magna nostrud qui occaecat consequat. Non quis nulla aliquip ad sunt fugiat aliqua laboris pariatur.\r\n", "registered": "2014-09-12T19:17:01-12:00", "latitude": -74.41271, "longitude": 33.410336, "tags": [ "elit", "amet", "ipsum", "elit", "officia", "fugiat", "amet" ], "friends": [ { "id": 0, "name": "Conway Espinoza" }, { "id": 1, "name": "Obrien Sullivan" }, { "id": 2, "name": "Sheena Day" } ], "greeting": "Hello, Elnora Crawford! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dcee450bbdd87ea17", "index": 26, "guid": "17879822-3d24-4de0-a2d2-6fee148a05e9", "isActive": false, "balance": "$3,467.88", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Trudy Harmon", "gender": "female", "company": "POWERNET", "email": "trudyharmon@powernet.com", "phone": "+1 (891) 476-3951", "address": "824 Windsor Place, Turpin, Oregon, 1132", "about": "Consequat eiusmod ut deserunt ex ipsum magna commodo ipsum. Et deserunt et eu cupidatat. Officia aliquip exercitation consectetur labore officia labore irure sunt consequat cupidatat do cupidatat. Commodo eu esse commodo irure pariatur commodo dolor. Ea fugiat eiusmod esse velit fugiat occaecat nulla in cupidatat nulla tempor. Irure commodo non elit sint magna commodo ut commodo reprehenderit do culpa irure sunt duis. Culpa magna velit sit minim.\r\n", "registered": "2014-04-30T17:41:23-12:00", "latitude": -84.262847, "longitude": -68.431652, "tags": [ "ullamco", "fugiat", "occaecat", "duis", "deserunt", "dolor", "Lorem" ], "friends": [ { "id": 0, "name": "Greta English" }, { "id": 1, "name": "Baker Buckley" }, { "id": 2, "name": "Eileen Haley" } ], "greeting": "Hello, Trudy Harmon! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dd31d59fb7819e729", "index": 27, "guid": "44abbc08-0932-4370-8c99-8c6ecf9ebf76", "isActive": false, "balance": "$2,224.19", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Lela Mullen", "gender": "female", "company": "BLANET", "email": "lelamullen@blanet.com", "phone": "+1 (990) 578-2742", "address": "613 Degraw Street, Taycheedah, Nevada, 7906", "about": "Quis ea cupidatat cupidatat Lorem deserunt cillum do aute. In occaecat consectetur incididunt ea qui cillum ea ea velit. Fugiat ut laboris officia veniam ullamco laborum mollit qui. Nostrud reprehenderit veniam id mollit nisi tempor reprehenderit enim anim nisi proident excepteur. Nisi duis amet esse reprehenderit pariatur sunt in. Ut nisi tempor tempor ex cillum et nulla. Incididunt nulla fugiat nulla velit enim ut pariatur labore et dolore sint.\r\n", "registered": "2014-04-27T03:05:28-12:00", "latitude": 28.696354, "longitude": 98.469427, "tags": [ "laborum", "pariatur", "nisi", "minim", "ullamco", "commodo", "cillum" ], "friends": [ { "id": 0, "name": "Opal Bray" }, { "id": 1, "name": "Mandy Gay" }, { "id": 2, "name": "Mcmillan Pitts" } ], "greeting": "Hello, Lela Mullen! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d4f517bfb6f080f15", "index": 28, "guid": "b0bd713a-a6fd-4ac1-80c9-abe2379f055d", "isActive": false, "balance": "$3,327.18", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Horton Vance", "gender": "male", "company": "HOUSEDOWN", "email": "hortonvance@housedown.com", "phone": "+1 (849) 576-3381", "address": "372 Poly Place, Lumberton, Minnesota, 8476", "about": "Ipsum velit mollit officia irure velit tempor sint do minim. Lorem occaecat ad enim laborum laborum minim nostrud sint reprehenderit proident. Ipsum adipisicing minim magna veniam. Fugiat irure nulla ea mollit adipisicing proident dolor culpa occaecat. Minim fugiat nostrud est sit. Minim cillum ex in do ullamco ad officia. Adipisicing culpa velit mollit enim.\r\n", "registered": "2014-05-26T15:41:33-12:00", "latitude": -55.745481, "longitude": -48.538942, "tags": [ "laboris", "eiusmod", "amet", "laboris", "eu", "Lorem", "culpa" ], "friends": [ { "id": 0, "name": "Arlene Kidd" }, { "id": 1, "name": "Hickman Bridges" }, { "id": 2, "name": "Hess Alford" } ], "greeting": "Hello, Horton Vance! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d3c4c177ae61be04c", "index": 29, "guid": "4182083e-837a-477d-ad8d-58a020df27e5", "isActive": false, "balance": "$2,942.29", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Mullins Riley", "gender": "male", "company": "ENDIPINE", "email": "mullinsriley@endipine.com", "phone": "+1 (959) 439-2524", "address": "323 Bedell Lane, Macdona, Missouri, 2366", "about": "Culpa deserunt labore irure ea sunt excepteur voluptate culpa. Excepteur commodo tempor dolore adipisicing deserunt est anim dolor. Do qui exercitation sint dolore dolore non adipisicing ut anim ut Lorem qui irure cupidatat. Pariatur laboris exercitation laborum aliqua ipsum. Irure nulla aliquip voluptate reprehenderit fugiat dolore velit do duis fugiat mollit.\r\n", "registered": "2014-05-17T13:39:35-12:00", "latitude": -11.551368, "longitude": 147.68596, "tags": [ "proident", "ullamco", "consequat", "reprehenderit", "mollit", "ea", "enim" ], "friends": [ { "id": 0, "name": "Aguilar Brennan" }, { "id": 1, "name": "Ruiz Austin" }, { "id": 2, "name": "Tran Oneil" } ], "greeting": "Hello, Mullins Riley! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1db7442d20c6ced284", "index": 30, "guid": "a208693e-ead4-4c36-b769-cf4158b8abf7", "isActive": false, "balance": "$2,623.36", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Gentry Richard", "gender": "male", "company": "ADORNICA", "email": "gentryrichard@adornica.com", "phone": "+1 (993) 584-3618", "address": "132 Green Street, Reinerton, Rhode Island, 6475", "about": "Laboris ut laborum exercitation occaecat laborum qui laboris sunt. Aute cillum nulla velit aliqua irure voluptate duis reprehenderit minim culpa laborum culpa ipsum exercitation. In aliqua eu laborum in officia nisi voluptate proident. Culpa Lorem consectetur quis consequat ipsum elit exercitation do.\r\n", "registered": "2014-02-26T04:00:43-13:00", "latitude": 70.675705, "longitude": -88.449085, "tags": [ "cillum", "Lorem", "enim", "ipsum", "proident", "esse", "Lorem" ], "friends": [ { "id": 0, "name": "Petra Casey" }, { "id": 1, "name": "Lopez Figueroa" }, { "id": 2, "name": "Ada Gallagher" } ], "greeting": "Hello, Gentry Richard! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d09763e31baef3b51", "index": 31, "guid": "4f679f75-9018-4a7b-b982-16abe2c5550f", "isActive": false, "balance": "$3,960.51", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Susan Copeland", "gender": "female", "company": "SYNTAC", "email": "susancopeland@syntac.com", "phone": "+1 (821) 513-2174", "address": "361 Coventry Road, Needmore, Florida, 517", "about": "Enim magna incididunt qui ex incididunt consectetur irure adipisicing. Veniam est non sunt sint ut anim ex officia et nulla reprehenderit Lorem sint sint. Anim cillum adipisicing laborum ea eu deserunt. Nulla ea eiusmod eiusmod fugiat mollit qui dolore deserunt ea. Exercitation dolor elit commodo amet laborum. Ullamco velit commodo magna ex proident do veniam.\r\n", "registered": "2014-03-19T06:27:30-13:00", "latitude": -22.261953, "longitude": -23.422261, "tags": [ "non", "excepteur", "dolore", "sint", "minim", "excepteur", "nisi" ], "friends": [ { "id": 0, "name": "Connie Gould" }, { "id": 1, "name": "Gale Sellers" }, { "id": 2, "name": "Betsy Long" } ], "greeting": "Hello, Susan Copeland! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dc26e10d3feb1ffe6", "index": 32, "guid": "b1e277c5-238b-4e00-b842-a40005b261f4", "isActive": true, "balance": "$3,489.97", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Tyler Barnett", "gender": "male", "company": "INEAR", "email": "tylerbarnett@inear.com", "phone": "+1 (933) 588-2290", "address": "637 Miami Court, Springville, North Carolina, 8616", "about": "Ea est reprehenderit mollit pariatur ullamco. Ullamco sint ut aliquip ipsum eiusmod incididunt laborum est nisi est mollit. Non sint reprehenderit consectetur nisi enim dolore mollit quis ut ex culpa Lorem. Laboris eu consectetur velit fugiat exercitation commodo consectetur sint. Proident anim aliquip amet id laboris quis elit minim sunt. Culpa et qui ad cillum aliquip magna tempor velit esse minim nisi.\r\n", "registered": "2014-03-24T11:38:19-13:00", "latitude": -64.398747, "longitude": -178.668538, "tags": [ "in", "commodo", "esse", "pariatur", "sit", "aliqua", "quis" ], "friends": [ { "id": 0, "name": "Flowers Morin" }, { "id": 1, "name": "Latisha Scott" }, { "id": 2, "name": "Sears Prince" } ], "greeting": "Hello, Tyler Barnett! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d1173b317d26701f0", "index": 33, "guid": "8e239b83-10a7-4b2f-981d-7670502f7aa8", "isActive": false, "balance": "$3,259.26", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Stanton Ryan", "gender": "male", "company": "GUSHKOOL", "email": "stantonryan@gushkool.com", "phone": "+1 (869) 434-3924", "address": "279 Ludlam Place, Bynum, New Hampshire, 4241", "about": "Exercitation aliquip esse anim officia dolore enim pariatur. Deserunt consequat nulla officia exercitation. Pariatur consequat duis est eiusmod consequat quis non sint non cupidatat. Velit proident nisi qui veniam cupidatat laboris ea Lorem est qui fugiat et esse. Quis exercitation consequat do aliqua aute nostrud in ea magna eiusmod. Sunt magna irure ipsum esse pariatur enim minim ea ullamco. Magna ullamco labore ut laboris nisi cillum officia.\r\n", "registered": "2014-05-19T05:28:08-12:00", "latitude": 50.765882, "longitude": -127.306323, "tags": [ "non", "cillum", "commodo", "ipsum", "culpa", "proident", "aliqua" ], "friends": [ { "id": 0, "name": "Lang Knox" }, { "id": 1, "name": "Duran Yang" }, { "id": 2, "name": "Dena Baldwin" } ], "greeting": "Hello, Stanton Ryan! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d81b92360c56f686b", "index": 34, "guid": "7d27e81f-339c-4298-ba33-bff700a44550", "isActive": false, "balance": "$3,411.45", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Aurora Hall", "gender": "female", "company": "KOZGENE", "email": "aurorahall@kozgene.com", "phone": "+1 (803) 456-3635", "address": "851 Rutherford Place, Smock, Arkansas, 2834", "about": "Ea culpa proident sunt in sunt nisi incididunt culpa cupidatat tempor occaecat commodo proident. Eu ad et culpa quis dolore laboris culpa aute nostrud sit veniam. Deserunt veniam ex do ullamco aliqua culpa irure minim deserunt elit excepteur. Sunt elit ipsum commodo ad deserunt. Tempor aute pariatur esse esse Lorem. Esse tempor est voluptate eiusmod esse sint.\r\n", "registered": "2014-04-16T11:29:12-12:00", "latitude": -55.956715, "longitude": 127.286288, "tags": [ "culpa", "consectetur", "pariatur", "et", "anim", "culpa", "commodo" ], "friends": [ { "id": 0, "name": "Hunter Joyner" }, { "id": 1, "name": "Maricela Goodwin" }, { "id": 2, "name": "Guerrero Munoz" } ], "greeting": "Hello, Aurora Hall! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d5466d789e6edc7c6", "index": 35, "guid": "05626efa-bd97-4519-b632-594b034263b1", "isActive": true, "balance": "$3,711.06", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Nola Bush", "gender": "female", "company": "SURELOGIC", "email": "nolabush@surelogic.com", "phone": "+1 (926) 435-3354", "address": "621 Huntington Street, Kylertown, Iowa, 2160", "about": "Est sunt amet tempor consequat pariatur velit culpa nulla est nisi cupidatat sit. Reprehenderit culpa cupidatat officia voluptate duis qui do mollit voluptate. Deserunt velit Lorem elit laboris. Culpa quis irure laboris sunt ut irure. Nisi nostrud Lorem esse pariatur labore aliqua non exercitation do ea ad proident pariatur. Deserunt est ipsum ut reprehenderit ea in laborum proident elit duis voluptate ipsum eiusmod qui.\r\n", "registered": "2014-07-13T08:20:19-12:00", "latitude": -17.195038, "longitude": 175.249439, "tags": [ "ullamco", "ipsum", "mollit", "id", "do", "velit", "laboris" ], "friends": [ { "id": 0, "name": "Larsen Ramos" }, { "id": 1, "name": "Robbins Wagner" }, { "id": 2, "name": "Jan Sandoval" } ], "greeting": "Hello, Nola Bush! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dd6c9505245661ad8", "index": 36, "guid": "361f71b8-e301-4056-88c2-4cadd903e964", "isActive": false, "balance": "$3,949.56", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Bray Bentley", "gender": "male", "company": "UNDERTAP", "email": "braybentley@undertap.com", "phone": "+1 (903) 422-3574", "address": "815 Eastern Parkway, Silkworth, Nebraska, 6853", "about": "Ex ut eu do consectetur esse eiusmod sunt mollit ad proident et fugiat proident irure. Et esse sit exercitation cupidatat sunt nulla elit dolore dolor anim voluptate. Cupidatat id enim culpa enim et voluptate sunt ad veniam consequat dolor sint. Aute Lorem aliquip culpa dolor consequat irure laboris sunt veniam officia consectetur et deserunt eu.\r\n", "registered": "2014-07-29T14:28:46-12:00", "latitude": -22.329528, "longitude": 137.553715, "tags": [ "enim", "enim", "id", "labore", "commodo", "minim", "aute" ], "friends": [ { "id": 0, "name": "Lorna Skinner" }, { "id": 1, "name": "Vincent Sharpe" }, { "id": 2, "name": "Renee Hull" } ], "greeting": "Hello, Bray Bentley! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1db72be4b836f3cc8e", "index": 37, "guid": "5b6eb33a-5aeb-443f-99d2-25ad395afa93", "isActive": true, "balance": "$1,413.95", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Earline Carney", "gender": "female", "company": "HOPELI", "email": "earlinecarney@hopeli.com", "phone": "+1 (910) 430-3686", "address": "475 Congress Street, Jugtown, District Of Columbia, 8861", "about": "Culpa aliqua aliqua aliquip id sint reprehenderit nostrud. Velit dolore esse commodo laboris non elit ut amet id consectetur. Eiusmod excepteur ad eu sit aliquip mollit exercitation irure ad cupidatat ex est irure nostrud. Est ut dolore ipsum ad incididunt officia aliquip. Adipisicing cillum pariatur laborum ea esse fugiat.\r\n", "registered": "2014-07-27T18:04:26-12:00", "latitude": -45.136718, "longitude": 9.675587, "tags": [ "labore", "ea", "eu", "velit", "Lorem", "do", "veniam" ], "friends": [ { "id": 0, "name": "Hubbard Heath" }, { "id": 1, "name": "Ratliff Ortega" }, { "id": 2, "name": "Wanda Charles" } ], "greeting": "Hello, Earline Carney! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d004354f0a48c038c", "index": 38, "guid": "a9234edb-c4ad-4539-95ed-b9a52ab4be4a", "isActive": true, "balance": "$3,632.22", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Hendrix Hill", "gender": "male", "company": "COMCUBINE", "email": "hendrixhill@comcubine.com", "phone": "+1 (953) 425-3145", "address": "807 Logan Street, Stouchsburg, New Jersey, 400", "about": "Ullamco velit laborum ipsum consectetur duis ut cillum nulla occaecat consequat. Eu sit consequat id veniam est ea et consectetur sunt mollit. Commodo consequat est eu sit ex pariatur sit adipisicing cupidatat velit non laboris nisi. Velit Lorem duis pariatur velit.\r\n", "registered": "2014-06-02T16:39:41-12:00", "latitude": 31.61379, "longitude": 152.219958, "tags": [ "sunt", "aliquip", "velit", "ut", "aute", "officia", "esse" ], "friends": [ { "id": 0, "name": "Staci Thompson" }, { "id": 1, "name": "Bolton Huffman" }, { "id": 2, "name": "Emerson Bishop" } ], "greeting": "Hello, Hendrix Hill! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d9d83dd27488f82dd", "index": 39, "guid": "3b7ea341-ada0-4209-bd91-d6027cca43bd", "isActive": true, "balance": "$3,289.88", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Key Jimenez", "gender": "male", "company": "ANIMALIA", "email": "keyjimenez@animalia.com", "phone": "+1 (854) 416-3771", "address": "358 Elliott Place, Farmington, Palau, 8580", "about": "Id consectetur duis non sunt excepteur. Eu occaecat enim ad minim consequat laborum voluptate ad esse adipisicing. Sunt occaecat fugiat ex commodo ea elit id exercitation cillum Lorem laborum nostrud est.\r\n", "registered": "2014-03-21T03:02:20-13:00", "latitude": 74.314955, "longitude": 79.203065, "tags": [ "quis", "exercitation", "pariatur", "velit", "laboris", "sunt", "adipisicing" ], "friends": [ { "id": 0, "name": "Tanisha Morris" }, { "id": 1, "name": "Richmond Gentry" }, { "id": 2, "name": "Daphne Estes" } ], "greeting": "Hello, Key Jimenez! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dd247705b655fe98b", "index": 40, "guid": "3b31fccb-bb63-4287-b900-0a86e25f91eb", "isActive": true, "balance": "$3,831.09", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Walters Tate", "gender": "male", "company": "MICRONAUT", "email": "walterstate@micronaut.com", "phone": "+1 (999) 420-3988", "address": "194 Locust Avenue, Cornucopia, Puerto Rico, 8654", "about": "Enim esse nisi Lorem est nulla. Reprehenderit commodo commodo qui ex sit deserunt fugiat cupidatat minim. Elit occaecat do sint quis excepteur sunt exercitation nostrud aliquip dolor. Lorem eiusmod irure laborum labore incididunt nulla nisi eiusmod laboris ut minim velit tempor dolor. Voluptate ipsum nostrud excepteur occaecat mollit.\r\n", "registered": "2014-01-09T16:11:25-13:00", "latitude": 16.55322, "longitude": 72.591692, "tags": [ "aliqua", "nulla", "irure", "laboris", "commodo", "minim", "ullamco" ], "friends": [ { "id": 0, "name": "Sandy Tyson" }, { "id": 1, "name": "Nannie Stanton" }, { "id": 2, "name": "Bean Pope" } ], "greeting": "Hello, Walters Tate! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d101a2f634078a277", "index": 41, "guid": "556ea2d5-4038-42f2-ba9c-0e9a36131101", "isActive": true, "balance": "$2,373.76", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Rosalyn Galloway", "gender": "female", "company": "EXOTECHNO", "email": "rosalyngalloway@exotechno.com", "phone": "+1 (870) 445-3881", "address": "356 Gerry Street, Beaulieu, California, 9895", "about": "Voluptate do aliqua non aliqua. Dolor fugiat reprehenderit minim aliqua consequat velit ut dolor laborum. Quis cillum ad proident excepteur mollit non ullamco eiusmod in voluptate. Ea esse esse culpa in reprehenderit officia do mollit velit. Proident proident id sint ad anim ea anim pariatur. Laboris dolore veniam labore duis commodo nisi nisi. Amet ipsum elit excepteur pariatur.\r\n", "registered": "2014-02-10T21:23:13-13:00", "latitude": -11.642328, "longitude": 39.097989, "tags": [ "ad", "culpa", "ex", "Lorem", "culpa", "dolore", "laborum" ], "friends": [ { "id": 0, "name": "Grimes Compton" }, { "id": 1, "name": "Ward Morgan" }, { "id": 2, "name": "Lesa Meadows" } ], "greeting": "Hello, Rosalyn Galloway! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dffdc7255cf84740c", "index": 42, "guid": "2d9bf8f3-d557-4bdc-99fe-1b13e265d0c0", "isActive": true, "balance": "$3,931.52", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Michael Paul", "gender": "male", "company": "MANGELICA", "email": "michaelpaul@mangelica.com", "phone": "+1 (875) 458-3186", "address": "362 Stryker Court, Murillo, Vermont, 5420", "about": "Reprehenderit enim pariatur tempor voluptate ipsum minim consectetur elit exercitation enim ipsum tempor amet. Magna do cillum irure cillum qui incididunt labore officia consequat culpa mollit ea. Cillum amet id dolore proident et ea. Quis nostrud cupidatat ex enim labore quis eiusmod laboris magna. Irure labore esse aliquip anim fugiat exercitation eiusmod. Est pariatur dolore consectetur do. Incididunt consequat eiusmod incididunt aute enim consequat sint dolore aute elit.\r\n", "registered": "2014-08-01T04:15:36-12:00", "latitude": -16.720779, "longitude": -92.484085, "tags": [ "aliquip", "ullamco", "Lorem", "nulla", "incididunt", "in", "minim" ], "friends": [ { "id": 0, "name": "Paulette Browning" }, { "id": 1, "name": "Hallie Knapp" }, { "id": 2, "name": "Isabelle Santos" } ], "greeting": "Hello, Michael Paul! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d29355bce1150915a", "index": 43, "guid": "a3bb5c9d-6735-4b87-99f7-e288de755ac1", "isActive": true, "balance": "$3,549.38", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Vilma Frank", "gender": "female", "company": "CHORIZON", "email": "vilmafrank@chorizon.com", "phone": "+1 (881) 570-3741", "address": "267 Varanda Place, Edgar, Indiana, 1808", "about": "Velit reprehenderit in culpa Lorem proident anim ullamco eiusmod mollit commodo. Tempor officia tempor nisi et cupidatat. Esse nulla labore aute aute magna sunt sint et elit eiusmod pariatur velit exercitation voluptate. Tempor aliqua elit consectetur fugiat id ipsum. Tempor esse sit incididunt nostrud consectetur laborum duis voluptate id nisi veniam consectetur.\r\n", "registered": "2014-09-02T13:15:38-12:00", "latitude": -82.125139, "longitude": 52.084729, "tags": [ "aliqua", "sunt", "aliquip", "ipsum", "do", "cupidatat", "labore" ], "friends": [ { "id": 0, "name": "Cheryl Bird" }, { "id": 1, "name": "Wilder Bryan" }, { "id": 2, "name": "Wolf Joyce" } ], "greeting": "Hello, Vilma Frank! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1df248e668e32f0e07", "index": 44, "guid": "0569b14d-b8a7-41f4-b30f-4eb940f8686d", "isActive": false, "balance": "$2,156.01", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Fuller Wilcox", "gender": "male", "company": "IMMUNICS", "email": "fullerwilcox@immunics.com", "phone": "+1 (848) 588-2724", "address": "628 Vanderbilt Street, Catharine, Illinois, 1257", "about": "Sit laboris aliqua velit voluptate. Quis magna magna sit nulla Lorem dolor fugiat fugiat cillum elit. Sint laboris velit qui pariatur dolor laborum.\r\n", "registered": "2014-09-15T13:45:45-12:00", "latitude": 45.065349, "longitude": -24.012133, "tags": [ "nisi", "proident", "enim", "velit", "ex", "consequat", "laboris" ], "friends": [ { "id": 0, "name": "Crane Dawson" }, { "id": 1, "name": "Robertson Glover" }, { "id": 2, "name": "Tracie Mcknight" } ], "greeting": "Hello, Fuller Wilcox! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d728a60c1d903cd64", "index": 45, "guid": "f4365c85-2c24-4876-978c-9d9a9a00615d", "isActive": true, "balance": "$1,116.09", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Barnett Harris", "gender": "male", "company": "ENERVATE", "email": "barnettharris@enervate.com", "phone": "+1 (927) 490-2169", "address": "180 Wolcott Street, Oberlin, South Carolina, 4568", "about": "Ad sunt consequat ut quis non ex occaecat do. Elit velit esse eu in magna enim nulla pariatur dolor. Sint reprehenderit officia sit sunt veniam occaecat cillum duis adipisicing. Irure fugiat aliqua anim ad non mollit sit exercitation laborum adipisicing.\r\n", "registered": "2014-02-11T02:38:54-13:00", "latitude": -39.572942, "longitude": 169.29117, "tags": [ "est", "culpa", "elit", "ex", "aliqua", "Lorem", "excepteur" ], "friends": [ { "id": 0, "name": "Mcintyre Price" }, { "id": 1, "name": "Lindsey Mckee" }, { "id": 2, "name": "Rose Mcguire" } ], "greeting": "Hello, Barnett Harris! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dab80cc9b520468bc", "index": 46, "guid": "5f183816-c8e6-4071-b4e9-42c2f032d5bc", "isActive": true, "balance": "$3,422.83", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Myers Gray", "gender": "male", "company": "RONBERT", "email": "myersgray@ronbert.com", "phone": "+1 (807) 474-2671", "address": "954 Macon Street, Denio, American Samoa, 8715", "about": "Id sint excepteur culpa do sunt. Cupidatat sint irure aliqua exercitation non ad officia ullamco proident qui. In ullamco culpa dolore non. Eiusmod nulla proident proident enim. Laborum irure est laboris et nulla ipsum ex sit duis.\r\n", "registered": "2014-07-28T11:13:52-12:00", "latitude": -41.982949, "longitude": 42.265418, "tags": [ "reprehenderit", "irure", "ut", "Lorem", "veniam", "amet", "mollit" ], "friends": [ { "id": 0, "name": "Sherri Sheppard" }, { "id": 1, "name": "Dionne Kaufman" }, { "id": 2, "name": "Ana Chavez" } ], "greeting": "Hello, Myers Gray! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d5d49f7f8c99b807e", "index": 47, "guid": "97c4e533-a77d-4668-83c5-fe03af0d0553", "isActive": false, "balance": "$3,656.34", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Vance Nichols", "gender": "male", "company": "ZILLANET", "email": "vancenichols@zillanet.com", "phone": "+1 (962) 517-3896", "address": "125 Quentin Street, Calvary, Delaware, 1452", "about": "Veniam officia ad et culpa. Nostrud occaecat nulla sunt ex. Consectetur laboris dolore fugiat nisi pariatur aliqua duis tempor dolor. Consectetur id sunt officia aliqua do duis Lorem ex duis dolor enim. Ut ad excepteur magna reprehenderit tempor elit aute deserunt fugiat est voluptate do aliqua sint.\r\n", "registered": "2014-04-21T14:34:39-12:00", "latitude": -57.988177, "longitude": 110.92757, "tags": [ "reprehenderit", "pariatur", "consequat", "in", "nulla", "ea", "ut" ], "friends": [ { "id": 0, "name": "Melody Mathews" }, { "id": 1, "name": "Rosa Young" }, { "id": 2, "name": "Nikki Santana" } ], "greeting": "Hello, Vance Nichols! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d32ac9ca5c81e64b6", "index": 48, "guid": "1751554f-e771-4b12-a18e-4bfc1b01ee9b", "isActive": false, "balance": "$3,578.82", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Head Mcneil", "gender": "male", "company": "CORMORAN", "email": "headmcneil@cormoran.com", "phone": "+1 (806) 511-3653", "address": "830 Jamaica Avenue, Wakarusa, Pennsylvania, 2062", "about": "Anim ex et sit irure ex consequat pariatur cillum enim aliqua id. Aliqua veniam elit ex quis incididunt irure proident et. Lorem Lorem exercitation esse irure eu incididunt aliqua aute. Pariatur commodo amet nostrud ipsum. Dolore duis esse veniam excepteur dolor labore in. Sit minim tempor exercitation qui et fugiat proident et deserunt mollit mollit ex. Ea deserunt laboris ipsum ullamco minim pariatur.\r\n", "registered": "2014-05-09T21:18:36-12:00", "latitude": -22.501999, "longitude": -96.664481, "tags": [ "sint", "magna", "ad", "amet", "consequat", "qui", "qui" ], "friends": [ { "id": 0, "name": "Gould Lang" }, { "id": 1, "name": "Nora Obrien" }, { "id": 2, "name": "Carlene Todd" } ], "greeting": "Hello, Head Mcneil! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d3189938fbf8b6d1b", "index": 49, "guid": "afb5302c-52d3-4d97-b128-7c498a41b7b7", "isActive": false, "balance": "$3,594.83", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Harding Holcomb", "gender": "male", "company": "YOGASM", "email": "hardingholcomb@yogasm.com", "phone": "+1 (910) 454-3242", "address": "935 Wakeman Place, Gouglersville, Georgia, 1333", "about": "Mollit aute tempor nostrud elit aliqua enim in ad sunt aliquip voluptate. Esse ipsum non sint proident id reprehenderit reprehenderit nostrud commodo laborum pariatur et esse excepteur. Aute duis aliquip aute culpa eu veniam ad ea adipisicing ex ad qui irure. Amet nisi laboris qui aliquip commodo ad cupidatat elit do ad pariatur sint ad cupidatat.\r\n", "registered": "2014-09-18T10:10:02-12:00", "latitude": 27.643071, "longitude": 128.373601, "tags": [ "incididunt", "duis", "nostrud", "laboris", "occaecat", "anim", "exercitation" ], "friends": [ { "id": 0, "name": "Norris Bolton" }, { "id": 1, "name": "Maria Wise" }, { "id": 2, "name": "Emily Humphrey" } ], "greeting": "Hello, Harding Holcomb! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d2dd7ed8e0639c6b9", "index": 50, "guid": "b909cd0b-64f0-4160-bb10-78a985fb3e31", "isActive": false, "balance": "$1,241.43", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Laura Mclean", "gender": "female", "company": "EMTRAK", "email": "lauramclean@emtrak.com", "phone": "+1 (929) 449-2178", "address": "460 Just Court, Hendersonville, North Dakota, 5124", "about": "Culpa occaecat incididunt consequat nisi adipisicing veniam sunt ad velit ad excepteur. Anim amet do nostrud duis minim nostrud consequat fugiat qui consequat ad amet fugiat. Excepteur ullamco proident in quis sit veniam id in consequat duis non occaecat mollit. Duis dolore ad tempor laboris nisi nulla ullamco id est tempor nisi ipsum.\r\n", "registered": "2014-06-03T06:07:13-12:00", "latitude": -83.488239, "longitude": 170.42931, "tags": [ "adipisicing", "fugiat", "ea", "labore", "reprehenderit", "enim", "dolore" ], "friends": [ { "id": 0, "name": "Hester Calhoun" }, { "id": 1, "name": "Elsa Carroll" }, { "id": 2, "name": "Ashlee Little" } ], "greeting": "Hello, Laura Mclean! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d4dadeb3bc1e7b251", "index": 51, "guid": "de42729c-4f49-4e4a-ba0d-72658eb3e465", "isActive": true, "balance": "$2,139.73", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Evans Adkins", "gender": "male", "company": "ORBIN", "email": "evansadkins@orbin.com", "phone": "+1 (816) 534-2915", "address": "834 Elm Avenue, Martinsville, Louisiana, 9920", "about": "Aute consequat aliqua dolor elit enim consequat et velit in aliquip culpa. Nisi velit aute consectetur ullamco nisi magna ullamco dolor esse nulla. Non sint in do nulla veniam enim enim irure eu pariatur quis minim. Cillum deserunt aute laborum pariatur aute.\r\n", "registered": "2014-01-02T07:25:35-13:00", "latitude": 56.293881, "longitude": 178.64105, "tags": [ "amet", "magna", "ea", "magna", "sunt", "incididunt", "nulla" ], "friends": [ { "id": 0, "name": "Armstrong Alvarado" }, { "id": 1, "name": "Lynch Wiggins" }, { "id": 2, "name": "Winnie Oneal" } ], "greeting": "Hello, Evans Adkins! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d73f800d848757d3f", "index": 52, "guid": "0606df34-2bd5-4538-86b0-58449376f94a", "isActive": true, "balance": "$3,002.56", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Aida Lopez", "gender": "female", "company": "QUANTALIA", "email": "aidalopez@quantalia.com", "phone": "+1 (878) 488-3754", "address": "822 Apollo Street, Blackgum, Northern Mariana Islands, 5659", "about": "Velit reprehenderit cupidatat ea duis dolore adipisicing eu duis. Amet nisi esse anim labore. Commodo nostrud esse Lorem aute ex consequat veniam nostrud anim proident. Est nostrud anim occaecat aute dolor sunt pariatur. Minim ut minim ea ea. Exercitation velit cupidatat ullamco nulla velit laboris excepteur minim. Minim adipisicing aliquip duis sunt tempor tempor aliqua non sint fugiat.\r\n", "registered": "2014-09-03T02:52:02-12:00", "latitude": -59.79558, "longitude": -6.052297, "tags": [ "duis", "incididunt", "in", "nulla", "ea", "fugiat", "tempor" ], "friends": [ { "id": 0, "name": "Maddox Osborn" }, { "id": 1, "name": "Burt Duran" }, { "id": 2, "name": "Goodman Russo" } ], "greeting": "Hello, Aida Lopez! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d03ab10adb1475cc8", "index": 53, "guid": "9f8d5bd1-3092-49cd-8106-1f3ffde4d739", "isActive": false, "balance": "$1,170.01", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Emilia Moran", "gender": "female", "company": "SOPRANO", "email": "emiliamoran@soprano.com", "phone": "+1 (946) 460-2659", "address": "771 John Street, Marbury, Colorado, 9437", "about": "Est aute reprehenderit est anim esse. Eiusmod fugiat aliquip dolore elit exercitation laboris ad magna pariatur. Consequat cillum velit sint occaecat tempor. Sint ipsum commodo adipisicing id aute quis.\r\n", "registered": "2014-07-30T07:15:13-12:00", "latitude": 40.93083, "longitude": 91.36597, "tags": [ "aute", "veniam", "minim", "consequat", "minim", "irure", "labore" ], "friends": [ { "id": 0, "name": "Meyer Rios" }, { "id": 1, "name": "Mccoy Rivas" }, { "id": 2, "name": "Rivera Leblanc" } ], "greeting": "Hello, Emilia Moran! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d911930268c0db70d", "index": 54, "guid": "c32bc3f7-c6f5-4bb8-8e6e-5046f1f6ef1a", "isActive": true, "balance": "$3,035.35", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Ester Navarro", "gender": "female", "company": "APPLIDECK", "email": "esternavarro@applideck.com", "phone": "+1 (815) 582-3213", "address": "551 Metropolitan Avenue, Zeba, Idaho, 8321", "about": "Reprehenderit reprehenderit tempor quis est magna deserunt voluptate irure duis aliqua voluptate enim. Irure quis officia nostrud sit. Nostrud culpa Lorem dolore pariatur consectetur nulla voluptate veniam aliqua sunt sit magna. Et dolor aute quis sit nisi ipsum pariatur culpa excepteur esse. Cillum aute veniam enim occaecat cillum laboris proident velit. Ea fugiat consectetur ex est occaecat duis minim eu dolore.\r\n", "registered": "2014-02-23T09:06:35-13:00", "latitude": -77.646458, "longitude": 153.67977, "tags": [ "sunt", "labore", "nulla", "dolor", "duis", "do", "esse" ], "friends": [ { "id": 0, "name": "Bullock Pratt" }, { "id": 1, "name": "Mara Mercer" }, { "id": 2, "name": "Tamika Chan" } ], "greeting": "Hello, Ester Navarro! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dadb8ea1a32d41eb8", "index": 55, "guid": "65a72818-3d6a-4a5d-ae43-98029faf431e", "isActive": false, "balance": "$2,283.57", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Roslyn Carter", "gender": "female", "company": "ROOFORIA", "email": "roslyncarter@rooforia.com", "phone": "+1 (934) 443-2314", "address": "891 Seagate Avenue, Orason, Marshall Islands, 1801", "about": "Ut consequat et ipsum veniam ad labore proident aute labore. Eu qui laborum exercitation est velit nostrud adipisicing elit nisi sit tempor duis nulla. Elit nisi nostrud fugiat sint cillum consequat fugiat consequat sit eiusmod id qui laboris. Reprehenderit minim deserunt proident eu eu. Dolor officia ex ipsum ullamco aute mollit ipsum aliqua occaecat anim amet.\r\n", "registered": "2014-06-15T05:47:19-12:00", "latitude": -20.179568, "longitude": 135.282802, "tags": [ "cupidatat", "in", "consequat", "qui", "et", "mollit", "aliqua" ], "friends": [ { "id": 0, "name": "Francine Cantu" }, { "id": 1, "name": "Jerri Alvarez" }, { "id": 2, "name": "Amber Benjamin" } ], "greeting": "Hello, Roslyn Carter! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d303782eeda7e34a6", "index": 56, "guid": "1b00cf33-d1fd-43ab-87b0-b344158e9bc8", "isActive": false, "balance": "$2,821.00", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Carolyn Strickland", "gender": "female", "company": "COWTOWN", "email": "carolynstrickland@cowtown.com", "phone": "+1 (801) 421-3094", "address": "965 Fenimore Street, Indio, New York, 832", "about": "Non duis eu consectetur magna anim commodo in. Enim enim et consequat dolor aliquip voluptate aliqua. Lorem nisi Lorem exercitation et tempor non qui deserunt est fugiat dolore aliqua. Amet ullamco aliquip aliquip deserunt sunt velit.\r\n", "registered": "2014-06-12T07:48:22-12:00", "latitude": 69.016777, "longitude": 164.214588, "tags": [ "tempor", "occaecat", "exercitation", "ad", "ipsum", "minim", "ea" ], "friends": [ { "id": 0, "name": "Billie Schroeder" }, { "id": 1, "name": "Black Barker" }, { "id": 2, "name": "Amelia Schultz" } ], "greeting": "Hello, Carolyn Strickland! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d928ee99b1d0f3b21", "index": 57, "guid": "6c17a1d7-842d-48f2-a9dd-ce0540f01cc1", "isActive": false, "balance": "$1,629.78", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Janine Torres", "gender": "female", "company": "LINGOAGE", "email": "janinetorres@lingoage.com", "phone": "+1 (844) 594-3965", "address": "262 Glen Street, Wescosville, Guam, 6961", "about": "Eiusmod irure aliqua sunt nulla quis eiusmod ad esse duis est laboris fugiat. Et nostrud veniam ad excepteur culpa amet ad elit duis anim eu. Adipisicing id pariatur proident et eu veniam culpa duis et. Lorem magna amet id veniam ea nisi ad non eu in.\r\n", "registered": "2014-08-13T08:05:59-12:00", "latitude": 76.468741, "longitude": -10.676784, "tags": [ "nostrud", "aliquip", "enim", "qui", "nulla", "eu", "do" ], "friends": [ { "id": 0, "name": "Caroline Boyd" }, { "id": 1, "name": "Swanson Franco" }, { "id": 2, "name": "Minerva Houston" } ], "greeting": "Hello, Janine Torres! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d6fee59b373b5d44b", "index": 58, "guid": "65de98db-5111-4e2b-8b84-57fdf9f220e8", "isActive": true, "balance": "$1,225.55", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Hendricks Ratliff", "gender": "male", "company": "ZENSUS", "email": "hendricksratliff@zensus.com", "phone": "+1 (845) 589-3097", "address": "437 Radde Place, Orovada, Virgin Islands, 6282", "about": "Veniam incididunt culpa cillum anim mollit. Sunt officia dolor cupidatat occaecat aute excepteur tempor nostrud aute et laborum fugiat excepteur velit. Nulla exercitation velit ut ullamco veniam et est do excepteur duis dolor incididunt aliqua velit. Dolore eu eu sunt ut pariatur. Do id eu cupidatat consequat nulla magna eu duis.\r\n", "registered": "2014-06-03T10:42:29-12:00", "latitude": -77.27098, "longitude": -96.906127, "tags": [ "in", "minim", "sit", "duis", "id", "occaecat", "eu" ], "friends": [ { "id": 0, "name": "Francesca Benton" }, { "id": 1, "name": "Mariana Roman" }, { "id": 2, "name": "Mitzi Schneider" } ], "greeting": "Hello, Hendricks Ratliff! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d9df98307425782cd", "index": 59, "guid": "dcc2330d-7cc6-40d9-b1a8-1ae7d8dd673e", "isActive": true, "balance": "$1,552.41", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Maggie Brady", "gender": "female", "company": "EXOTERIC", "email": "maggiebrady@exoteric.com", "phone": "+1 (920) 549-3913", "address": "646 Kings Hwy, Bennett, Massachusetts, 8039", "about": "Dolore enim velit quis aliquip occaecat nostrud nisi enim labore proident amet ipsum ipsum sit. Ex ad ad pariatur aliquip est commodo duis eu tempor aute. Aliqua ut voluptate incididunt adipisicing proident magna dolor exercitation ipsum. Occaecat elit pariatur dolor est sit ex magna. Veniam aliquip qui eu consectetur velit pariatur occaecat cillum officia consectetur. Ex duis culpa sit commodo officia mollit ea minim aute adipisicing duis excepteur pariatur laborum. Adipisicing consectetur enim excepteur labore ex elit labore reprehenderit anim fugiat aliqua voluptate qui.\r\n", "registered": "2014-07-01T16:41:26-12:00", "latitude": -78.561782, "longitude": -103.232668, "tags": [ "laboris", "mollit", "aute", "ipsum", "enim", "ut", "irure" ], "friends": [ { "id": 0, "name": "Elena Shannon" }, { "id": 1, "name": "Dixon Coleman" }, { "id": 2, "name": "Ochoa Ochoa" } ], "greeting": "Hello, Maggie Brady! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dfae4c204b7bca946", "index": 60, "guid": "10951bbd-51a0-46e5-9479-0390bdddb740", "isActive": false, "balance": "$3,148.58", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Elliott Mcclain", "gender": "male", "company": "PHARMEX", "email": "elliottmcclain@pharmex.com", "phone": "+1 (839) 441-2638", "address": "779 Vanderveer Street, Shasta, Utah, 5285", "about": "Eu occaecat do ex dolor cillum dolor voluptate magna. Qui ex aute sunt sunt aute labore ea pariatur ex elit. Non non minim ex mollit elit sint proident aute velit. Qui occaecat in magna est excepteur ad ut pariatur nostrud in elit do minim.\r\n", "registered": "2014-07-31T12:20:17-12:00", "latitude": -81.57672, "longitude": -145.454068, "tags": [ "dolor", "aliquip", "sunt", "non", "est", "do", "eiusmod" ], "friends": [ { "id": 0, "name": "Ann Lowe" }, { "id": 1, "name": "Inez Hardin" }, { "id": 2, "name": "Gonzales Watkins" } ], "greeting": "Hello, Elliott Mcclain! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d8d166200a17d48d4", "index": 61, "guid": "22e04861-5b07-4ade-b1b9-21daed28a6ee", "isActive": false, "balance": "$1,371.45", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Roach Good", "gender": "male", "company": "COMBOT", "email": "roachgood@combot.com", "phone": "+1 (972) 465-2876", "address": "609 Gunnison Court, Trinway, Montana, 5877", "about": "Anim enim nostrud voluptate culpa enim occaecat id consectetur amet. Officia irure anim magna ullamco eiusmod culpa laborum ut. Proident pariatur commodo aute nisi commodo sint esse deserunt esse aute nisi laboris eu tempor. Incididunt fugiat voluptate amet tempor reprehenderit velit adipisicing velit non proident enim do. Aliqua et quis in elit occaecat occaecat duis voluptate labore laboris. Quis culpa et enim mollit laborum quis nisi nisi ut ex aliqua aliquip. Labore Lorem amet labore mollit occaecat magna id ex mollit qui culpa aliqua ea.\r\n", "registered": "2014-07-09T09:23:49-12:00", "latitude": -16.970926, "longitude": 124.636183, "tags": [ "reprehenderit", "mollit", "incididunt", "sunt", "in", "mollit", "veniam" ], "friends": [ { "id": 0, "name": "Medina Cohen" }, { "id": 1, "name": "Lynda Gamble" }, { "id": 2, "name": "Holt Haynes" } ], "greeting": "Hello, Roach Good! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d30d695276fd92c9a", "index": 62, "guid": "e25e6500-6648-437e-a7ff-d2e7092455ff", "isActive": true, "balance": "$3,670.41", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Lee Gibson", "gender": "female", "company": "NEPTIDE", "email": "leegibson@neptide.com", "phone": "+1 (951) 406-3189", "address": "191 Tompkins Place, Riviera, Wisconsin, 9403", "about": "Eu anim duis fugiat labore proident aliqua commodo exercitation in. Occaecat reprehenderit cillum proident amet velit aliquip sunt incididunt irure ipsum deserunt qui ipsum. Tempor ad ut culpa anim ea mollit mollit irure.\r\n", "registered": "2014-05-02T23:47:58-12:00", "latitude": -84.485672, "longitude": 81.914247, "tags": [ "elit", "veniam", "esse", "reprehenderit", "dolore", "elit", "nulla" ], "friends": [ { "id": 0, "name": "Sweeney Roth" }, { "id": 1, "name": "Barrera Camacho" }, { "id": 2, "name": "Jennifer Branch" } ], "greeting": "Hello, Lee Gibson! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dca40753c3a2f8129", "index": 63, "guid": "5502e6d9-6de0-4277-a8e2-c0f970c1825e", "isActive": true, "balance": "$3,970.72", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Moon Fuller", "gender": "male", "company": "ZILLAN", "email": "moonfuller@zillan.com", "phone": "+1 (928) 454-2004", "address": "701 Stratford Road, Fostoria, Maine, 2517", "about": "Officia irure labore ipsum Lorem nulla nisi proident amet aliquip aute aliquip aute cillum. Nostrud Lorem dolor sint dolore veniam do. Culpa tempor officia ad in ullamco est exercitation adipisicing sit magna fugiat. Ipsum duis ut occaecat quis exercitation aliquip dolore irure. Nostrud ex sit sint consectetur commodo ad occaecat consequat amet ad eiusmod eu deserunt ad. Officia minim amet anim consequat excepteur ullamco reprehenderit qui laborum commodo. In pariatur eu esse consequat culpa duis tempor et est nostrud consequat.\r\n", "registered": "2014-04-29T20:50:51-12:00", "latitude": 80.923448, "longitude": 40.300446, "tags": [ "deserunt", "velit", "laboris", "deserunt", "non", "consequat", "ex" ], "friends": [ { "id": 0, "name": "Merle Holden" }, { "id": 1, "name": "Hays Butler" }, { "id": 2, "name": "Kirsten Horton" } ], "greeting": "Hello, Moon Fuller! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d7467867e6cf932ea", "index": 64, "guid": "a2e813c8-306a-42c5-b2f1-120dcc778603", "isActive": true, "balance": "$1,472.35", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Elvia Molina", "gender": "female", "company": "ELECTONIC", "email": "elviamolina@electonic.com", "phone": "+1 (870) 495-2095", "address": "822 Robert Street, Sultana, Virginia, 6131", "about": "Magna incididunt Lorem ut consequat nostrud culpa eu anim et laborum laboris quis Lorem. Magna voluptate veniam voluptate duis eu dolor nostrud consequat. Consequat incididunt non cillum aute ad non amet pariatur velit sint fugiat pariatur velit. Commodo culpa cupidatat elit dolore eu ipsum esse ut laboris proident. Ut velit culpa laboris tempor dolore do consequat consectetur Lorem sint.\r\n", "registered": "2014-06-22T17:33:21-12:00", "latitude": 17.288302, "longitude": 35.510482, "tags": [ "veniam", "sit", "pariatur", "reprehenderit", "pariatur", "mollit", "sint" ], "friends": [ { "id": 0, "name": "Anita Le" }, { "id": 1, "name": "Schneider Summers" }, { "id": 2, "name": "Wagner Gardner" } ], "greeting": "Hello, Elvia Molina! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d84e2ea25aa4c2de9", "index": 65, "guid": "3db693c3-4879-41a5-975d-2e45efeedac3", "isActive": true, "balance": "$3,974.01", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Stark Wallace", "gender": "male", "company": "PETIGEMS", "email": "starkwallace@petigems.com", "phone": "+1 (944) 548-3663", "address": "974 Clarendon Road, Vicksburg, Kentucky, 2225", "about": "Ea fugiat voluptate incididunt aute incididunt laborum sit. Ad proident amet laboris culpa laboris deserunt enim labore cupidatat. Ex pariatur voluptate mollit nostrud ea. Ipsum qui pariatur dolor proident eu enim veniam pariatur mollit magna fugiat esse ex. Sunt labore esse anim cillum exercitation. Officia cillum excepteur proident adipisicing nostrud culpa id anim sit elit ea sunt ullamco culpa.\r\n", "registered": "2014-08-27T07:16:28-12:00", "latitude": -71.058113, "longitude": -173.008433, "tags": [ "nisi", "esse", "veniam", "dolore", "nulla", "quis", "commodo" ], "friends": [ { "id": 0, "name": "William Johnson" }, { "id": 1, "name": "Brandy Conner" }, { "id": 2, "name": "Millie Finch" } ], "greeting": "Hello, Stark Wallace! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1db64b2935bf655a16", "index": 66, "guid": "2cdab6eb-4374-480e-bc50-e352cae6a176", "isActive": false, "balance": "$3,474.63", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Jasmine Haney", "gender": "female", "company": "EGYPTO", "email": "jasminehaney@egypto.com", "phone": "+1 (940) 568-2565", "address": "838 Indiana Place, Moscow, Connecticut, 2624", "about": "Eu est nostrud ipsum sunt deserunt dolore ex non fugiat qui. Ut excepteur sunt proident non veniam in ad. Nisi nulla in reprehenderit aliquip qui ut. Magna qui non ullamco cupidatat esse aliqua qui labore ut Lorem ut culpa enim. Adipisicing pariatur aliqua ullamco aute culpa. Est est Lorem nulla nostrud dolore dolore aute nisi dolore ullamco pariatur est est. Voluptate ullamco sint deserunt sunt laboris.\r\n", "registered": "2014-08-23T02:28:24-12:00", "latitude": -25.757901, "longitude": 56.45311, "tags": [ "proident", "culpa", "ullamco", "est", "exercitation", "commodo", "commodo" ], "friends": [ { "id": 0, "name": "Estelle Martin" }, { "id": 1, "name": "Tania Crosby" }, { "id": 2, "name": "Spears Lloyd" } ], "greeting": "Hello, Jasmine Haney! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d2f68edc15871be27", "index": 67, "guid": "a00ac274-3bca-4b3c-9b7a-c76ac6d64434", "isActive": true, "balance": "$3,238.34", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Campos Lester", "gender": "male", "company": "CINASTER", "email": "camposlester@cinaster.com", "phone": "+1 (855) 501-2965", "address": "388 Haring Street, Waverly, Mississippi, 8977", "about": "In consectetur consectetur in et aliqua officia do in anim deserunt. Amet adipisicing est deserunt deserunt ex velit ut ut pariatur ea eiusmod. Nisi tempor anim consequat nostrud ipsum. Excepteur ullamco veniam ullamco adipisicing qui occaecat.\r\n", "registered": "2014-04-15T03:54:22-12:00", "latitude": 57.286148, "longitude": -166.160099, "tags": [ "laboris", "minim", "nisi", "voluptate", "ex", "aliquip", "id" ], "friends": [ { "id": 0, "name": "Waller Whitfield" }, { "id": 1, "name": "Antoinette Evans" }, { "id": 2, "name": "Iva Blackburn" } ], "greeting": "Hello, Campos Lester! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d9a5118e87b030286", "index": 68, "guid": "792aac98-5063-426d-96e9-174750be71a5", "isActive": true, "balance": "$1,650.01", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Corrine Walter", "gender": "female", "company": "NIXELT", "email": "corrinewalter@nixelt.com", "phone": "+1 (911) 432-3988", "address": "166 Kaufman Place, Wedgewood, Washington, 9300", "about": "Anim consequat mollit sunt ipsum exercitation consequat pariatur aute aliquip occaecat. Quis aliquip dolore magna consequat. Veniam mollit amet amet proident. In in irure tempor anim exercitation nisi ad. Fugiat ad ea eiusmod ad. Consectetur dolore fugiat adipisicing adipisicing consequat ipsum nostrud ad labore irure sint.\r\n", "registered": "2014-09-14T17:42:21-12:00", "latitude": -20.69314, "longitude": 119.429587, "tags": [ "incididunt", "elit", "id", "veniam", "eiusmod", "ut", "ipsum" ], "friends": [ { "id": 0, "name": "Courtney Underwood" }, { "id": 1, "name": "Chambers William" }, { "id": 2, "name": "Riley Mccarty" } ], "greeting": "Hello, Corrine Walter! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d448f679ca2e58bf6", "index": 69, "guid": "f3f93e5d-5672-4628-8638-c3692e870041", "isActive": false, "balance": "$1,449.48", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Annmarie Mullins", "gender": "female", "company": "ROBOID", "email": "annmariemullins@roboid.com", "phone": "+1 (842) 581-2213", "address": "601 Lincoln Place, Summerset, Tennessee, 4040", "about": "Pariatur culpa cillum proident ea magna ut in sunt labore commodo. Velit irure quis ea cillum consectetur ut sint nulla culpa sunt voluptate qui. Officia consectetur elit velit sit non minim cillum amet adipisicing culpa sit elit aliqua. Eu ut nisi sunt nisi labore. Excepteur id ullamco sunt enim eiusmod.\r\n", "registered": "2014-05-02T02:29:49-12:00", "latitude": 72.70885, "longitude": 54.776964, "tags": [ "tempor", "anim", "ad", "nulla", "incididunt", "proident", "est" ], "friends": [ { "id": 0, "name": "Claire Sweet" }, { "id": 1, "name": "Clements Watts" }, { "id": 2, "name": "Charmaine Moreno" } ], "greeting": "Hello, Annmarie Mullins! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1db9dbe76403983a6d", "index": 70, "guid": "56cc2197-92c6-4712-a6c5-b46bb790ea8d", "isActive": true, "balance": "$2,147.15", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Wheeler Mcmillan", "gender": "male", "company": "SNOWPOKE", "email": "wheelermcmillan@snowpoke.com", "phone": "+1 (945) 576-3975", "address": "320 Kings Place, Springdale, Alabama, 429", "about": "Quis nostrud enim fugiat ea culpa duis sint aute exercitation. Nisi est ex tempor in exercitation officia tempor. Culpa sit occaecat in labore anim elit sit ullamco incididunt.\r\n", "registered": "2014-07-26T18:24:33-12:00", "latitude": 1.556327, "longitude": 11.282234, "tags": [ "amet", "qui", "ea", "anim", "exercitation", "excepteur", "reprehenderit" ], "friends": [ { "id": 0, "name": "Jacquelyn Greer" }, { "id": 1, "name": "Adams Barron" }, { "id": 2, "name": "Haney Flynn" } ], "greeting": "Hello, Wheeler Mcmillan! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d870db17b5db96a76", "index": 71, "guid": "b604208d-571b-431f-a7e4-06d3de41c585", "isActive": true, "balance": "$2,358.12", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Sanford Rasmussen", "gender": "male", "company": "SOLGAN", "email": "sanfordrasmussen@solgan.com", "phone": "+1 (862) 443-3271", "address": "608 Branton Street, Glenbrook, Ohio, 3871", "about": "Sit eiusmod quis nulla id nostrud aliquip pariatur Lorem et officia dolore laboris dolore. Magna duis elit est irure. Mollit ea Lorem velit dolor excepteur nostrud eu laboris magna reprehenderit consectetur. Magna eiusmod consequat tempor veniam enim ullamco mollit consectetur do cupidatat eiusmod incididunt. Elit voluptate ad aute sint do ea ea et. Id excepteur fugiat mollit ipsum. Dolor quis culpa nostrud culpa.\r\n", "registered": "2014-05-17T18:54:05-12:00", "latitude": -25.429772, "longitude": -175.122347, "tags": [ "eu", "proident", "nisi", "quis", "sit", "eiusmod", "deserunt" ], "friends": [ { "id": 0, "name": "Michele Carson" }, { "id": 1, "name": "Beverley Michael" }, { "id": 2, "name": "Donovan Bond" } ], "greeting": "Hello, Sanford Rasmussen! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d39fe9a608af2d385", "index": 72, "guid": "da23a1a9-c567-488c-9df0-8fa459193dc9", "isActive": false, "balance": "$3,886.89", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Alexander Banks", "gender": "male", "company": "EURON", "email": "alexanderbanks@euron.com", "phone": "+1 (970) 576-3910", "address": "786 Dahl Court, Chautauqua, Hawaii, 2173", "about": "Eiusmod ea tempor pariatur occaecat voluptate dolor non aliqua excepteur ex tempor veniam laborum occaecat. Sint excepteur dolore occaecat excepteur exercitation nostrud nostrud sit. Excepteur irure ex veniam ea consequat irure elit culpa commodo proident sit ea. Officia incididunt qui sunt excepteur velit sit pariatur cillum aute mollit.\r\n", "registered": "2014-03-15T07:09:10-13:00", "latitude": -82.431048, "longitude": -94.807262, "tags": [ "ad", "pariatur", "sint", "aute", "consequat", "tempor", "proident" ], "friends": [ { "id": 0, "name": "Levine Conley" }, { "id": 1, "name": "Peters Riddle" }, { "id": 2, "name": "Josephine Rosa" } ], "greeting": "Hello, Alexander Banks! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d7cce2bf473ddc66f", "index": 73, "guid": "4924cff8-e1f3-4600-b89e-253991710ed9", "isActive": true, "balance": "$3,059.79", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Hartman Palmer", "gender": "male", "company": "VENOFLEX", "email": "hartmanpalmer@venoflex.com", "phone": "+1 (819) 537-2715", "address": "527 Rockaway Avenue, Jackpot, New Mexico, 9724", "about": "Laboris est deserunt irure deserunt. Nostrud cillum eu duis ex consequat nisi duis tempor aliquip cillum laborum exercitation. Deserunt qui sit non magna dolor cillum nulla esse fugiat.\r\n", "registered": "2014-03-22T02:30:46-13:00", "latitude": -65.474865, "longitude": 72.807413, "tags": [ "amet", "sunt", "qui", "irure", "ad", "nisi", "ut" ], "friends": [ { "id": 0, "name": "Charles Mckenzie" }, { "id": 1, "name": "Mills Koch" }, { "id": 2, "name": "Nelson Goodman" } ], "greeting": "Hello, Hartman Palmer! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d0b3844d8332ffd22", "index": 74, "guid": "f5357c68-78ea-4ad8-bdea-ea271071ba70", "isActive": false, "balance": "$1,449.54", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Kenya Ray", "gender": "female", "company": "GOLOGY", "email": "kenyaray@gology.com", "phone": "+1 (961) 599-3364", "address": "775 Forest Place, Abrams, Maryland, 8162", "about": "Reprehenderit culpa exercitation eiusmod sunt laborum. Consectetur mollit nisi exercitation nostrud nisi sunt non proident velit veniam ipsum mollit dolor officia. Excepteur sunt nisi mollit qui minim incididunt magna qui do elit culpa id ipsum. Duis laboris nisi sint pariatur laborum cupidatat consectetur ex fugiat duis.\r\n", "registered": "2014-06-09T15:50:13-12:00", "latitude": 1.223274, "longitude": 87.915378, "tags": [ "ut", "incididunt", "consequat", "aliqua", "sunt", "cillum", "ad" ], "friends": [ { "id": 0, "name": "Imelda Bradshaw" }, { "id": 1, "name": "Estes King" }, { "id": 2, "name": "Vazquez Bender" } ], "greeting": "Hello, Kenya Ray! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d9ec78fe44a74cb84", "index": 75, "guid": "92ebeb8b-9e50-4906-9b19-a932176643a7", "isActive": false, "balance": "$2,213.75", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Kent Garza", "gender": "male", "company": "PATHWAYS", "email": "kentgarza@pathways.com", "phone": "+1 (944) 421-2981", "address": "234 Henderson Walk, Sutton, Alaska, 5771", "about": "Et do aute eiusmod aute adipisicing excepteur enim ullamco enim tempor elit. Amet amet incididunt sint reprehenderit tempor magna velit magna velit do veniam in labore consequat. Aliquip fugiat est fugiat officia ex nostrud consectetur et mollit ea cupidatat adipisicing officia ipsum. Veniam ex ut ad fugiat adipisicing laborum dolor.\r\n", "registered": "2014-02-13T20:29:47-13:00", "latitude": -70.540874, "longitude": -95.689934, "tags": [ "eu", "laborum", "minim", "commodo", "consequat", "Lorem", "minim" ], "friends": [ { "id": 0, "name": "Althea Nolan" }, { "id": 1, "name": "Blankenship Cote" }, { "id": 2, "name": "Parsons Delacruz" } ], "greeting": "Hello, Kent Garza! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dbbd60a82e99b49f7", "index": 76, "guid": "40b05795-63e7-4bfb-98ed-15ab57333770", "isActive": false, "balance": "$1,701.70", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Gibson Sanders", "gender": "male", "company": "FARMAGE", "email": "gibsonsanders@farmage.com", "phone": "+1 (812) 530-3291", "address": "928 Kane Place, Gibbsville, Arizona, 1888", "about": "Mollit eiusmod nostrud nulla magna. Anim duis pariatur voluptate culpa do adipisicing proident labore. Nisi exercitation qui proident incididunt sint consequat.\r\n", "registered": "2014-03-28T13:39:39-13:00", "latitude": 48.989809, "longitude": 69.50502, "tags": [ "mollit", "ullamco", "et", "dolor", "ipsum", "velit", "exercitation" ], "friends": [ { "id": 0, "name": "Powell Ewing" }, { "id": 1, "name": "Vinson Sexton" }, { "id": 2, "name": "Webb Salinas" } ], "greeting": "Hello, Gibson Sanders! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dd3d9ac732c0c7373", "index": 77, "guid": "544ceb57-7da1-49ee-b0a0-0fe3120e8d89", "isActive": false, "balance": "$1,207.74", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Rosetta Alexander", "gender": "female", "company": "BITENDREX", "email": "rosettaalexander@bitendrex.com", "phone": "+1 (905) 434-2266", "address": "660 Woods Place, Hanover, Federated States Of Micronesia, 971", "about": "Ipsum do id aliqua laboris officia nisi labore amet. Officia sit mollit duis non est velit. Ad ea cillum consectetur consequat consequat aliqua sunt. Enim sint id velit deserunt. Eu sint ullamco proident ex est reprehenderit nostrud ex elit ea aliquip enim occaecat.\r\n", "registered": "2014-01-30T02:06:51-13:00", "latitude": -1.346968, "longitude": 46.086184, "tags": [ "nisi", "occaecat", "quis", "elit", "culpa", "enim", "aliqua" ], "friends": [ { "id": 0, "name": "Patty Lane" }, { "id": 1, "name": "Rivas Kline" }, { "id": 2, "name": "Gail Lowery" } ], "greeting": "Hello, Rosetta Alexander! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dfe8f253be3e37bf1", "index": 78, "guid": "1f43efe4-b6d5-46ca-b11d-616c834cdabe", "isActive": true, "balance": "$3,124.23", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Baxter Dodson", "gender": "male", "company": "PARAGONIA", "email": "baxterdodson@paragonia.com", "phone": "+1 (845) 414-3989", "address": "351 Belmont Avenue, Brooktrails, Oklahoma, 9181", "about": "Id eiusmod labore reprehenderit cupidatat enim fugiat amet. Sit ad dolor incididunt velit sunt sunt mollit magna sint ea deserunt esse ipsum id. Velit aute consequat laboris commodo aliquip esse. Cillum esse nostrud est qui tempor esse labore laborum elit dolor non Lorem. Anim elit eiusmod proident eiusmod minim fugiat officia. Aliqua minim officia tempor dolore id. Elit ad minim pariatur officia elit nostrud nostrud occaecat.\r\n", "registered": "2014-04-07T12:26:53-12:00", "latitude": 81.879092, "longitude": 42.907989, "tags": [ "minim", "ex", "ut", "qui", "amet", "irure", "non" ], "friends": [ { "id": 0, "name": "Farley Russell" }, { "id": 1, "name": "Johanna Reese" }, { "id": 2, "name": "Miranda Short" } ], "greeting": "Hello, Baxter Dodson! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d9bf968b5f08672fd", "index": 79, "guid": "3bd67dc4-b6be-4ab7-89b0-44f66ec219b3", "isActive": false, "balance": "$2,775.62", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Blackwell Cameron", "gender": "male", "company": "QUONK", "email": "blackwellcameron@quonk.com", "phone": "+1 (862) 590-2982", "address": "773 Jackson Court, Fairforest, Michigan, 1949", "about": "Sit qui sunt mollit qui officia. In aliquip anim occaecat aute tempor sint minim ut. Sunt nulla proident proident aliquip sunt irure anim ut consectetur aute dolore anim.\r\n", "registered": "2014-08-07T23:23:33-12:00", "latitude": 76.792369, "longitude": -48.26799, "tags": [ "nulla", "eiusmod", "dolor", "Lorem", "sint", "laborum", "dolor" ], "friends": [ { "id": 0, "name": "Mendoza Lawrence" }, { "id": 1, "name": "Delia Small" }, { "id": 2, "name": "Catherine Wilkins" } ], "greeting": "Hello, Blackwell Cameron! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1de04fe62046a04041", "index": 80, "guid": "f6454035-b5a2-4860-8205-c65e0259ec20", "isActive": true, "balance": "$1,989.14", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Ortiz Frye", "gender": "male", "company": "XEREX", "email": "ortizfrye@xerex.com", "phone": "+1 (905) 583-2491", "address": "741 Boerum Street, Frystown, Kansas, 9314", "about": "Aute amet eu voluptate ad voluptate anim est sunt pariatur. In nisi veniam tempor labore magna. Do quis nulla tempor occaecat aliquip. Magna laboris ad aliquip voluptate aute nisi consectetur et aute commodo labore proident deserunt.\r\n", "registered": "2014-05-26T21:33:11-12:00", "latitude": 68.935763, "longitude": 26.710369, "tags": [ "et", "magna", "minim", "anim", "velit", "nisi", "ipsum" ], "friends": [ { "id": 0, "name": "Talley Medina" }, { "id": 1, "name": "Celeste Terry" }, { "id": 2, "name": "Navarro Mccullough" } ], "greeting": "Hello, Ortiz Frye! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1df8e763c35f366149", "index": 81, "guid": "d9e0fc3a-fdf4-402a-8bcf-524f84ac0208", "isActive": true, "balance": "$3,853.07", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Ines Manning", "gender": "female", "company": "FANFARE", "email": "inesmanning@fanfare.com", "phone": "+1 (852) 495-2609", "address": "674 Hegeman Avenue, Harold, South Dakota, 3602", "about": "Pariatur ad et nisi veniam veniam. Incididunt laboris laborum enim pariatur. Incididunt irure qui qui aute commodo sunt sunt aliqua eu culpa. Est in exercitation aliqua fugiat deserunt elit quis esse. Do cillum veniam mollit dolore mollit deserunt ipsum minim proident magna. Deserunt veniam veniam ullamco labore ea qui. Consectetur reprehenderit fugiat exercitation laborum esse esse consectetur.\r\n", "registered": "2014-07-15T02:14:12-12:00", "latitude": -19.032182, "longitude": -16.023604, "tags": [ "ad", "dolore", "commodo", "deserunt", "elit", "deserunt", "reprehenderit" ], "friends": [ { "id": 0, "name": "Summers Langley" }, { "id": 1, "name": "John Jackson" }, { "id": 2, "name": "Mcgee Grant" } ], "greeting": "Hello, Ines Manning! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d1e8200e8abbd261c", "index": 82, "guid": "d986be68-edcb-4ed6-a5b8-697fe148a29f", "isActive": true, "balance": "$2,727.56", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Frye Hatfield", "gender": "male", "company": "TROPOLI", "email": "fryehatfield@tropoli.com", "phone": "+1 (946) 406-2353", "address": "308 Kermit Place, Oasis, West Virginia, 950", "about": "Dolor eu incididunt duis mollit. Aliqua ut proident dolor cillum nostrud pariatur ut. Sit ex consectetur voluptate commodo consectetur esse amet in sunt esse.\r\n", "registered": "2014-03-27T20:36:13-13:00", "latitude": -84.4506, "longitude": -66.853992, "tags": [ "ut", "elit", "ullamco", "aute", "occaecat", "cupidatat", "dolore" ], "friends": [ { "id": 0, "name": "Lara Hodges" }, { "id": 1, "name": "Fulton Trevino" }, { "id": 2, "name": "Wood Thornton" } ], "greeting": "Hello, Frye Hatfield! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d2169c2c958c284fe", "index": 83, "guid": "2e4462e9-38e6-4c89-b330-d3c951213b47", "isActive": true, "balance": "$1,405.95", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Krystal Kelley", "gender": "female", "company": "PROWASTE", "email": "krystalkelley@prowaste.com", "phone": "+1 (964) 486-3485", "address": "321 Louisa Street, Tilleda, Texas, 7245", "about": "Labore est minim commodo proident cillum. Excepteur duis irure minim nulla dolore proident culpa do eu deserunt. Sit incididunt id id velit laboris eu.\r\n", "registered": "2014-03-15T22:17:53-13:00", "latitude": -5.966026, "longitude": 69.608977, "tags": [ "laborum", "ex", "laborum", "labore", "anim", "laboris", "est" ], "friends": [ { "id": 0, "name": "Nell Joseph" }, { "id": 1, "name": "Guerra Stephens" }, { "id": 2, "name": "Erna Norman" } ], "greeting": "Hello, Krystal Kelley! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d8ef4424210f25d16", "index": 84, "guid": "b9b15ff6-f056-40cc-a6ad-132b65eceb9c", "isActive": true, "balance": "$1,973.41", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Good Nash", "gender": "male", "company": "ZENCO", "email": "goodnash@zenco.com", "phone": "+1 (933) 528-2460", "address": "875 Hunterfly Place, Layhill, Oregon, 8837", "about": "Est exercitation quis deserunt pariatur pariatur nisi id adipisicing. Quis irure dolore cupidatat est incididunt commodo deserunt reprehenderit consequat. Do dolor aliquip nostrud do pariatur aliqua cillum cillum ea qui aliqua veniam. Consectetur velit dolor incididunt aute ipsum et in duis ea ipsum. Ipsum exercitation ex pariatur sit deserunt adipisicing laboris quis Lorem et.\r\n", "registered": "2014-05-12T01:26:10-12:00", "latitude": -11.518771, "longitude": -89.877565, "tags": [ "in", "labore", "nisi", "ullamco", "esse", "deserunt", "ut" ], "friends": [ { "id": 0, "name": "Sandoval Gibbs" }, { "id": 1, "name": "Molina Foreman" }, { "id": 2, "name": "Leigh Leon" } ], "greeting": "Hello, Good Nash! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dfe678cb6110ece23", "index": 85, "guid": "7991cf81-070e-436e-8404-a67d0d62a5d3", "isActive": true, "balance": "$3,046.85", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Callie Holt", "gender": "female", "company": "NETPLAX", "email": "callieholt@netplax.com", "phone": "+1 (825) 548-2376", "address": "885 Juliana Place, Iola, Nevada, 7022", "about": "Aliqua adipisicing tempor consectetur officia id mollit velit culpa ullamco qui. Proident fugiat elit commodo et exercitation deserunt fugiat cillum sunt reprehenderit sit exercitation aliqua. Et ex in velit fugiat Lorem ad incididunt est consequat laboris. Et consequat eiusmod laboris consequat sint officia id officia proident sint dolore. Elit excepteur in occaecat commodo id. Excepteur voluptate ut adipisicing voluptate do aute excepteur irure tempor occaecat adipisicing.\r\n", "registered": "2014-03-11T01:16:41-13:00", "latitude": 77.947584, "longitude": -66.758148, "tags": [ "deserunt", "anim", "in", "qui", "ullamco", "commodo", "ut" ], "friends": [ { "id": 0, "name": "Margarita Griffin" }, { "id": 1, "name": "Elise Sutton" }, { "id": 2, "name": "Therese Woodard" } ], "greeting": "Hello, Callie Holt! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1daf11801148ae0368", "index": 86, "guid": "9d7c03c6-ecf3-430a-9075-2b83689135f7", "isActive": true, "balance": "$3,266.40", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Hyde Larsen", "gender": "male", "company": "ZIPAK", "email": "hydelarsen@zipak.com", "phone": "+1 (992) 547-3779", "address": "888 Wythe Avenue, Boling, Minnesota, 5487", "about": "Mollit pariatur esse aliqua magna officia ullamco dolor tempor excepteur Lorem culpa. Cillum qui ipsum officia esse amet irure eu nulla. Deserunt dolor cillum magna mollit qui nostrud officia velit culpa cupidatat ad occaecat irure cillum. Aliquip laboris est pariatur deserunt.\r\n", "registered": "2014-03-07T00:36:20-13:00", "latitude": -68.673077, "longitude": 128.388558, "tags": [ "cupidatat", "pariatur", "est", "dolore", "in", "minim", "deserunt" ], "friends": [ { "id": 0, "name": "Haynes Parks" }, { "id": 1, "name": "Sophie Benson" }, { "id": 2, "name": "Stone Jefferson" } ], "greeting": "Hello, Hyde Larsen! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d6462cdbf3f117ae9", "index": 87, "guid": "d3258ff3-5c84-4210-8c2e-98c215b473a8", "isActive": true, "balance": "$1,430.75", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Maryanne Ruiz", "gender": "female", "company": "PARCOE", "email": "maryanneruiz@parcoe.com", "phone": "+1 (917) 411-2058", "address": "482 Bainbridge Street, Rosine, Missouri, 8307", "about": "Et ea ea exercitation ut proident cillum excepteur aliqua labore dolor. Adipisicing est quis incididunt ea. Minim amet fugiat eiusmod dolore tempor ex ex pariatur incididunt.\r\n", "registered": "2014-09-11T06:17:40-12:00", "latitude": -79.103277, "longitude": -50.379397, "tags": [ "commodo", "irure", "ex", "laboris", "anim", "cillum", "occaecat" ], "friends": [ { "id": 0, "name": "Walls Mclaughlin" }, { "id": 1, "name": "Bruce Bernard" }, { "id": 2, "name": "Hollie Bonner" } ], "greeting": "Hello, Maryanne Ruiz! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d179db455727ebf19", "index": 88, "guid": "0d7ca10d-1ef0-4e78-a45f-6fc1a5da27a5", "isActive": false, "balance": "$2,174.57", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Marjorie Fischer", "gender": "female", "company": "ANARCO", "email": "marjoriefischer@anarco.com", "phone": "+1 (870) 402-3926", "address": "308 Richmond Street, Hannasville, Rhode Island, 6359", "about": "Mollit exercitation consequat ullamco reprehenderit esse do tempor. Cillum velit ex est quis id elit commodo. Quis elit anim pariatur proident elit consequat in dolore excepteur ea. Officia sit veniam qui cupidatat culpa proident officia non aliqua incididunt. Est Lorem ea enim Lorem ad ut officia cupidatat ad laboris tempor Lorem in. Aliquip aute dolore anim sint excepteur duis consectetur sunt.\r\n", "registered": "2014-06-23T10:42:16-12:00", "latitude": 82.459261, "longitude": 11.436541, "tags": [ "voluptate", "enim", "pariatur", "reprehenderit", "duis", "est", "adipisicing" ], "friends": [ { "id": 0, "name": "Pearl Whitney" }, { "id": 1, "name": "Booth Conway" }, { "id": 2, "name": "Hunt Patton" } ], "greeting": "Hello, Marjorie Fischer! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dfdd04d1589fa7648", "index": 89, "guid": "4f818685-2487-486c-a5c3-389b99c5f3c9", "isActive": false, "balance": "$1,643.44", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Blake Hahn", "gender": "male", "company": "EYEWAX", "email": "blakehahn@eyewax.com", "phone": "+1 (828) 584-3628", "address": "895 Nixon Court, Dennard, Florida, 8030", "about": "Elit nostrud incididunt qui veniam esse consequat incididunt nisi et Lorem nostrud enim anim minim. Officia deserunt officia sint veniam nulla consequat dolore ut laboris amet. Anim consectetur qui sint eu dolore id voluptate ut. Veniam veniam labore ad commodo veniam. Consectetur eu veniam do dolor ad dolore ea eiusmod mollit voluptate fugiat.\r\n", "registered": "2014-05-07T13:31:10-12:00", "latitude": -45.826915, "longitude": -115.897086, "tags": [ "mollit", "in", "nostrud", "sit", "laboris", "aute", "reprehenderit" ], "friends": [ { "id": 0, "name": "Roman Mcpherson" }, { "id": 1, "name": "Morton Cabrera" }, { "id": 2, "name": "Charity Sanchez" } ], "greeting": "Hello, Blake Hahn! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1de14ddfe6125dbf2a", "index": 90, "guid": "a137a2a8-6927-4e9c-b20d-8ceebab5ce1d", "isActive": false, "balance": "$1,098.00", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Mamie Davidson", "gender": "female", "company": "SUPPORTAL", "email": "mamiedavidson@supportal.com", "phone": "+1 (836) 443-3046", "address": "478 Georgia Avenue, Hayes, North Carolina, 6023", "about": "Amet tempor duis voluptate ex adipisicing ut sunt occaecat eiusmod culpa elit. Commodo mollit occaecat qui mollit in aliqua. Mollit minim aliquip cupidatat excepteur ut voluptate adipisicing adipisicing elit irure officia veniam. Do consequat velit voluptate fugiat labore culpa elit mollit. Enim dolor aute anim eiusmod exercitation labore.\r\n", "registered": "2014-08-31T23:41:29-12:00", "latitude": 6.565459, "longitude": -128.140762, "tags": [ "dolor", "sunt", "cupidatat", "veniam", "aliquip", "eu", "aliquip" ], "friends": [ { "id": 0, "name": "Trevino Preston" }, { "id": 1, "name": "Bettie Williams" }, { "id": 2, "name": "Sheryl Reilly" } ], "greeting": "Hello, Mamie Davidson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dd31cef13f6f180cb", "index": 91, "guid": "4d9c459d-69ae-4a4b-bf8d-ef1139ccfb3f", "isActive": true, "balance": "$3,466.31", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Rosanne Jacobson", "gender": "female", "company": "CORECOM", "email": "rosannejacobson@corecom.com", "phone": "+1 (834) 454-2191", "address": "621 Fair Street, Winchester, New Hampshire, 8732", "about": "Id id irure aliqua nostrud nisi adipisicing consectetur velit. Anim non laboris elit fugiat velit officia exercitation cillum. Excepteur dolore deserunt et sint veniam non sunt occaecat in fugiat officia irure et.\r\n", "registered": "2014-07-21T15:01:49-12:00", "latitude": 76.025679, "longitude": 20.112511, "tags": [ "incididunt", "incididunt", "ipsum", "fugiat", "occaecat", "duis", "labore" ], "friends": [ { "id": 0, "name": "Munoz Jones" }, { "id": 1, "name": "Maude Bennett" }, { "id": 2, "name": "Sheppard Quinn" } ], "greeting": "Hello, Rosanne Jacobson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dc0b0c8e0e101de2e", "index": 92, "guid": "b0ef2cbe-754c-4515-add7-58b11464a6a2", "isActive": false, "balance": "$2,070.83", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Clayton Zimmerman", "gender": "male", "company": "ISOLOGIA", "email": "claytonzimmerman@isologia.com", "phone": "+1 (813) 590-2588", "address": "695 Seeley Street, Townsend, Arkansas, 8855", "about": "Et esse veniam sit ipsum ipsum ex in. Culpa ut occaecat ullamco culpa magna nisi veniam nulla elit culpa mollit aliqua enim. Sint aliquip irure id proident ullamco consectetur deserunt eiusmod officia adipisicing nulla. Veniam nostrud occaecat minim exercitation ullamco mollit minim magna. Tempor id exercitation eiusmod nulla cupidatat ex exercitation. Lorem ullamco excepteur ut irure. Elit nisi laboris laboris velit et laboris proident elit eu occaecat id elit deserunt Lorem.\r\n", "registered": "2014-02-28T02:13:27-13:00", "latitude": -11.077654, "longitude": 102.797454, "tags": [ "dolor", "cillum", "eu", "cupidatat", "consectetur", "veniam", "dolore" ], "friends": [ { "id": 0, "name": "Abigail Cruz" }, { "id": 1, "name": "Turner Moody" }, { "id": 2, "name": "Travis Barton" } ], "greeting": "Hello, Clayton Zimmerman! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1da8bb4a28ba61ee08", "index": 93, "guid": "4e4ee32b-c12d-476f-bd6c-ff9ee4130e5c", "isActive": false, "balance": "$1,048.53", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Latonya Ayala", "gender": "female", "company": "CENTREE", "email": "latonyaayala@centree.com", "phone": "+1 (992) 561-2362", "address": "522 Hudson Avenue, Keyport, Iowa, 5427", "about": "Cupidatat officia nulla aute quis proident. Occaecat mollit reprehenderit occaecat exercitation amet esse reprehenderit qui elit dolor reprehenderit. Proident pariatur aliqua do anim id fugiat fugiat minim ut consequat nostrud deserunt consectetur.\r\n", "registered": "2014-04-13T19:22:54-12:00", "latitude": 4.418259, "longitude": 164.406206, "tags": [ "labore", "eu", "dolore", "exercitation", "do", "laborum", "proident" ], "friends": [ { "id": 0, "name": "Schwartz Workman" }, { "id": 1, "name": "Jacobs Hopper" }, { "id": 2, "name": "Ivy Turner" } ], "greeting": "Hello, Latonya Ayala! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d8d3b45d3e1b6946b", "index": 94, "guid": "47a0381f-4ff3-4881-a90e-ddc0c5630e6c", "isActive": false, "balance": "$2,717.57", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Eula Shaffer", "gender": "female", "company": "GYNKO", "email": "eulashaffer@gynko.com", "phone": "+1 (870) 534-3971", "address": "416 Highlawn Avenue, Brenton, Nebraska, 8100", "about": "Consectetur laboris laboris id mollit laborum aute. Dolor elit magna do non exercitation ut fugiat nisi laborum magna ea. Laboris nostrud ea consequat laboris tempor anim voluptate incididunt culpa enim reprehenderit enim enim exercitation. Voluptate ullamco nisi nisi aliqua.\r\n", "registered": "2014-05-25T16:48:30-12:00", "latitude": 14.542281, "longitude": 88.335034, "tags": [ "consectetur", "labore", "occaecat", "esse", "incididunt", "consectetur", "est" ], "friends": [ { "id": 0, "name": "Carla Miranda" }, { "id": 1, "name": "Welch Cash" }, { "id": 2, "name": "Carpenter Randall" } ], "greeting": "Hello, Eula Shaffer! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d6dd4e0010a82cc1e", "index": 95, "guid": "0ac2973b-7931-4232-95e4-8cc28938fc33", "isActive": false, "balance": "$2,837.99", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Blair Drake", "gender": "male", "company": "BIOHAB", "email": "blairdrake@biohab.com", "phone": "+1 (987) 586-2153", "address": "431 Bills Place, Hoagland, District Of Columbia, 5177", "about": "Quis deserunt laborum irure dolore. Incididunt in reprehenderit consequat deserunt do dolore velit. Mollit incididunt sunt velit eiusmod magna anim cupidatat. Enim cupidatat fugiat exercitation duis ea duis. Id amet nulla dolor exercitation id magna laboris velit exercitation ex. Quis id dolore ullamco dolor incididunt ea cillum fugiat Lorem veniam reprehenderit do enim. Sunt tempor culpa fugiat enim commodo.\r\n", "registered": "2014-04-06T17:58:52-12:00", "latitude": -74.220257, "longitude": 159.685832, "tags": [ "minim", "aliquip", "duis", "commodo", "pariatur", "veniam", "ea" ], "friends": [ { "id": 0, "name": "Taylor Calderon" }, { "id": 1, "name": "Palmer Mckinney" }, { "id": 2, "name": "Cornelia Estrada" } ], "greeting": "Hello, Blair Drake! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dc26148871bf4e832", "index": 96, "guid": "dbe4e146-168b-480a-bcba-0dc1794fd507", "isActive": false, "balance": "$2,508.92", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Noelle Weaver", "gender": "female", "company": "VERAQ", "email": "noelleweaver@veraq.com", "phone": "+1 (998) 413-3263", "address": "436 Empire Boulevard, Tedrow, New Jersey, 3855", "about": "Consectetur in labore esse laboris aute irure amet nulla non esse ut do mollit. Nostrud sit duis do sint. Velit mollit ex voluptate laborum. Anim officia aliqua nulla consequat id labore dolore velit velit ex duis.\r\n", "registered": "2014-05-26T00:36:23-12:00", "latitude": 81.61503, "longitude": 145.085441, "tags": [ "pariatur", "labore", "aliqua", "aute", "cupidatat", "eiusmod", "labore" ], "friends": [ { "id": 0, "name": "Lilia Welch" }, { "id": 1, "name": "Leslie Durham" }, { "id": 2, "name": "King Woodward" } ], "greeting": "Hello, Noelle Weaver! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d7ebc721c95ab3e0e", "index": 97, "guid": "41b625d9-df6d-40b7-8cc7-1df8101e6bee", "isActive": true, "balance": "$2,874.54", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Marshall Fowler", "gender": "male", "company": "CORIANDER", "email": "marshallfowler@coriander.com", "phone": "+1 (853) 584-2214", "address": "656 Herkimer Place, Byrnedale, Palau, 2110", "about": "Exercitation nulla anim nulla culpa nulla id pariatur. Id occaecat voluptate qui est est sit ea proident voluptate. Do ut aliqua non dolore dolor laboris proident velit sit excepteur fugiat amet veniam cupidatat. Voluptate eu cupidatat non duis magna quis quis amet dolore anim.\r\n", "registered": "2014-02-17T07:05:07-13:00", "latitude": 1.197181, "longitude": 121.684003, "tags": [ "sint", "minim", "qui", "irure", "voluptate", "amet", "culpa" ], "friends": [ { "id": 0, "name": "Joseph Holloway" }, { "id": 1, "name": "Andrews Britt" }, { "id": 2, "name": "Gomez Berg" } ], "greeting": "Hello, Marshall Fowler! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dbb16040f8b14e751", "index": 98, "guid": "d8671ff4-3087-418d-9f7f-add555d38f86", "isActive": true, "balance": "$3,312.59", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Johns Moss", "gender": "male", "company": "APEX", "email": "johnsmoss@apex.com", "phone": "+1 (909) 410-3881", "address": "624 Nova Court, Basye, Puerto Rico, 9585", "about": "Fugiat cillum veniam ut do cillum occaecat. Culpa sint adipisicing reprehenderit est exercitation enim aute labore enim minim non reprehenderit magna. Officia anim quis sunt magna occaecat velit labore sint proident eiusmod proident.\r\n", "registered": "2014-04-03T17:28:38-13:00", "latitude": -3.178548, "longitude": 78.945571, "tags": [ "laborum", "est", "dolor", "voluptate", "in", "voluptate", "consequat" ], "friends": [ { "id": 0, "name": "Kelley Stark" }, { "id": 1, "name": "Zelma Mendoza" }, { "id": 2, "name": "Leon Harrison" } ], "greeting": "Hello, Johns Moss! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d40578b0194938aec", "index": 99, "guid": "e4015f8a-8986-4981-ab95-e7cdcfc4fcba", "isActive": true, "balance": "$1,337.73", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Walton Dickerson", "gender": "male", "company": "EVEREST", "email": "waltondickerson@everest.com", "phone": "+1 (822) 456-2143", "address": "950 Adams Street, Irwin, California, 2429", "about": "Et culpa nulla aliquip nulla reprehenderit dolor non dolor velit dolor sint in. Ad laborum id ipsum eiusmod laboris consectetur irure. Excepteur eu ipsum magna eiusmod ad ea adipisicing nisi.\r\n", "registered": "2014-08-20T12:50:54-12:00", "latitude": 69.612505, "longitude": 12.083948, "tags": [ "sit", "minim", "et", "pariatur", "esse", "sit", "veniam" ], "friends": [ { "id": 0, "name": "Santiago Arnold" }, { "id": 1, "name": "Frost Rodriquez" }, { "id": 2, "name": "Greene Guy" } ], "greeting": "Hello, Walton Dickerson! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1da8afe54e80c2f8d1", "index": 100, "guid": "5f673917-48ed-4346-834d-b7e6889d22e9", "isActive": false, "balance": "$2,826.50", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Henson Vang", "gender": "male", "company": "ROCKYARD", "email": "hensonvang@rockyard.com", "phone": "+1 (981) 549-2486", "address": "382 Maujer Street, Emison, Vermont, 4133", "about": "Sint deserunt aliqua commodo ea. Lorem ut adipisicing minim anim pariatur reprehenderit pariatur minim dolore. Eiusmod labore officia officia officia exercitation ipsum. Commodo veniam laboris eu pariatur nostrud minim incididunt ex. Sunt ad adipisicing cupidatat consectetur sit laboris.\r\n", "registered": "2014-07-26T16:40:56-12:00", "latitude": 1.10171, "longitude": 9.117229, "tags": [ "deserunt", "esse", "officia", "laborum", "dolor", "adipisicing", "dolor" ], "friends": [ { "id": 0, "name": "Rodgers Lynn" }, { "id": 1, "name": "Richard York" }, { "id": 2, "name": "Payne Erickson" } ], "greeting": "Hello, Henson Vang! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d8fbdf1faa073ceeb", "index": 101, "guid": "5ec37899-9983-4bfa-bdbd-33a302c39026", "isActive": false, "balance": "$3,302.51", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Reid Fields", "gender": "male", "company": "PASTURIA", "email": "reidfields@pasturia.com", "phone": "+1 (863) 538-2271", "address": "207 Willoughby Street, Norris, Indiana, 5415", "about": "Sunt id enim nulla anim laborum commodo deserunt. Nostrud culpa ipsum magna ex pariatur aliqua nulla laboris ut. Ad culpa eiusmod enim laboris sunt incididunt exercitation cillum. Lorem dolore mollit esse excepteur excepteur incididunt deserunt exercitation in do sit. Occaecat anim eu anim do adipisicing eiusmod.\r\n", "registered": "2014-03-30T18:02:38-13:00", "latitude": 57.789946, "longitude": -163.083688, "tags": [ "nulla", "sunt", "dolor", "aliquip", "culpa", "veniam", "dolor" ], "friends": [ { "id": 0, "name": "Whitley Aguilar" }, { "id": 1, "name": "Estrada Gomez" }, { "id": 2, "name": "Malone Stewart" } ], "greeting": "Hello, Reid Fields! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1df66f83d7e290c631", "index": 102, "guid": "67d67262-1d79-4dbc-bf14-a79911d16d09", "isActive": true, "balance": "$1,231.13", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Vickie Foster", "gender": "female", "company": "KRAGGLE", "email": "vickiefoster@kraggle.com", "phone": "+1 (922) 476-3458", "address": "509 Middagh Street, Mulberry, Illinois, 6482", "about": "Commodo officia velit do qui non dolor culpa. Sunt anim occaecat do voluptate deserunt sit aliquip. Qui irure qui sint excepteur sunt enim incididunt labore voluptate. Culpa fugiat laborum consequat elit id reprehenderit minim aliqua nulla labore incididunt sunt. Proident eiusmod non ex fugiat amet officia.\r\n", "registered": "2014-03-31T11:10:01-13:00", "latitude": -86.222008, "longitude": -8.39298, "tags": [ "exercitation", "id", "minim", "commodo", "incididunt", "enim", "non" ], "friends": [ { "id": 0, "name": "Julianne Pacheco" }, { "id": 1, "name": "Mooney Rodgers" }, { "id": 2, "name": "Gallegos Meyers" } ], "greeting": "Hello, Vickie Foster! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d43bc5dc3303398a0", "index": 103, "guid": "237734b1-7ada-4b23-9c2b-f7f7e9b6f7f9", "isActive": false, "balance": "$1,898.50", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Augusta Roach", "gender": "female", "company": "EXOPLODE", "email": "augustaroach@exoplode.com", "phone": "+1 (905) 487-2797", "address": "748 Nichols Avenue, Jacksonburg, South Carolina, 5428", "about": "Incididunt duis adipisicing aute qui cillum quis id in enim. Commodo aliquip voluptate id culpa Lorem do cupidatat ullamco aute laboris. Exercitation duis nisi nostrud aute veniam aliqua Lorem sit laborum. Nisi magna excepteur ut Lorem anim ea labore pariatur aliquip officia. Elit nostrud consectetur non sunt exercitation veniam aute amet excepteur officia. Ullamco magna dolore fugiat culpa laboris ea sit nostrud in veniam non ipsum culpa duis.\r\n", "registered": "2014-05-03T06:15:50-12:00", "latitude": -25.460704, "longitude": 155.246625, "tags": [ "excepteur", "aliqua", "magna", "adipisicing", "nostrud", "est", "ullamco" ], "friends": [ { "id": 0, "name": "Cain Gallegos" }, { "id": 1, "name": "Alvarez Stokes" }, { "id": 2, "name": "Angie Marks" } ], "greeting": "Hello, Augusta Roach! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d54767903532efbdd", "index": 104, "guid": "2e208cb9-172f-4e53-96a1-a2a16bcaabaf", "isActive": true, "balance": "$3,107.11", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Floyd Woods", "gender": "male", "company": "HATOLOGY", "email": "floydwoods@hatology.com", "phone": "+1 (964) 401-2982", "address": "494 Moultrie Street, Rodanthe, American Samoa, 8734", "about": "Eu ipsum do minim id consectetur consectetur aute nisi consequat. Reprehenderit ad exercitation nostrud tempor aliquip. Veniam veniam incididunt culpa deserunt. Duis cillum duis magna laboris occaecat magna in ex dolore anim excepteur nulla amet. Consectetur fugiat laboris proident culpa ad. Minim ad ut aute labore ea minim magna quis dolor magna fugiat dolor. Cillum culpa pariatur ex duis amet excepteur ullamco exercitation consectetur adipisicing veniam tempor anim esse.\r\n", "registered": "2014-06-25T18:57:40-12:00", "latitude": 84.91741, "longitude": -150.634466, "tags": [ "laboris", "ipsum", "officia", "commodo", "sint", "nisi", "dolor" ], "friends": [ { "id": 0, "name": "Eunice Briggs" }, { "id": 1, "name": "Diann Serrano" }, { "id": 2, "name": "Brennan Cooper" } ], "greeting": "Hello, Floyd Woods! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d08f4853868c7fa8c", "index": 105, "guid": "71f883cc-c851-4eab-83f6-50b314b9742f", "isActive": false, "balance": "$3,804.80", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Hannah Floyd", "gender": "female", "company": "GENEKOM", "email": "hannahfloyd@genekom.com", "phone": "+1 (946) 566-2624", "address": "304 Turner Place, Sunwest, Delaware, 5772", "about": "Lorem reprehenderit magna dolor ut laboris. Deserunt sit ea cillum consectetur excepteur in laboris minim ad est quis culpa esse. Est ullamco ex duis ut sunt minim laborum adipisicing in non labore velit. Elit consequat incididunt amet ut labore proident non. Deserunt ea est sit veniam. Est pariatur qui minim voluptate eiusmod dolore proident.\r\n", "registered": "2014-03-23T09:48:35-13:00", "latitude": -89.16024, "longitude": -134.38388, "tags": [ "enim", "amet", "do", "fugiat", "ex", "minim", "do" ], "friends": [ { "id": 0, "name": "Krista Stevenson" }, { "id": 1, "name": "Jody Sargent" }, { "id": 2, "name": "Jaime Johnston" } ], "greeting": "Hello, Hannah Floyd! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d60d7b9b1b945ed79", "index": 106, "guid": "1f57bb44-ea47-4bc1-9aa0-e22dbc683d53", "isActive": true, "balance": "$3,009.77", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Virginia Valenzuela", "gender": "female", "company": "HARMONEY", "email": "virginiavalenzuela@harmoney.com", "phone": "+1 (809) 590-3605", "address": "528 Havens Place, Longbranch, Pennsylvania, 3229", "about": "Veniam culpa quis deserunt in dolor aliqua dolor veniam excepteur elit. Consequat duis dolore aute anim aliqua amet dolore exercitation cupidatat id reprehenderit enim voluptate consectetur. Officia qui reprehenderit in aute ex magna pariatur velit. Aliquip et velit occaecat voluptate consectetur Lorem sint est pariatur velit nostrud sint cillum nisi. Nostrud incididunt non velit culpa incididunt adipisicing. Reprehenderit exercitation duis eiusmod cupidatat fugiat eu aliquip nisi dolore voluptate. Reprehenderit eu sint elit ex consectetur eu deserunt.\r\n", "registered": "2014-07-31T05:42:39-12:00", "latitude": 33.714888, "longitude": -77.57502, "tags": [ "sint", "anim", "duis", "officia", "velit", "consequat", "consequat" ], "friends": [ { "id": 0, "name": "Reyna Richards" }, { "id": 1, "name": "Michelle Duffy" }, { "id": 2, "name": "Kathleen Blanchard" } ], "greeting": "Hello, Virginia Valenzuela! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1de98b601866c27db6", "index": 107, "guid": "6ce491f9-29ce-4a3d-8eea-7e962e44523d", "isActive": false, "balance": "$2,588.74", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Mcpherson Craig", "gender": "male", "company": "MATRIXITY", "email": "mcphersoncraig@matrixity.com", "phone": "+1 (839) 582-2867", "address": "734 Lake Avenue, Clayville, Georgia, 6418", "about": "Consectetur nostrud cupidatat mollit non velit mollit. Duis esse officia do id. Pariatur mollit mollit amet ipsum eu excepteur non non.\r\n", "registered": "2014-05-10T05:37:47-12:00", "latitude": -80.288814, "longitude": 100.07878, "tags": [ "cillum", "nostrud", "quis", "officia", "et", "elit", "cupidatat" ], "friends": [ { "id": 0, "name": "Kramer Byrd" }, { "id": 1, "name": "Carter White" }, { "id": 2, "name": "Kaye Hensley" } ], "greeting": "Hello, Mcpherson Craig! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d6753fb6e3dbbd99d", "index": 108, "guid": "d9fc0534-75fa-4dcc-a46e-3cdedb50e51a", "isActive": true, "balance": "$2,309.30", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Shari Martinez", "gender": "female", "company": "ROCKLOGIC", "email": "sharimartinez@rocklogic.com", "phone": "+1 (999) 538-3193", "address": "578 Newton Street, Gulf, North Dakota, 8707", "about": "Aliquip nulla anim sunt id sit elit. Nulla esse elit proident non excepteur consequat enim ullamco id. Occaecat non sint cupidatat exercitation duis aliquip laboris pariatur id sint. Pariatur proident deserunt Lorem nisi amet officia elit. Cupidatat anim pariatur qui mollit fugiat tempor ut aliqua occaecat. Pariatur id mollit ea consectetur excepteur dolore. Ea et exercitation enim magna ullamco.\r\n", "registered": "2014-03-18T23:28:58-13:00", "latitude": -37.935388, "longitude": -12.332926, "tags": [ "enim", "ex", "dolor", "laboris", "amet", "laboris", "ullamco" ], "friends": [ { "id": 0, "name": "Lucinda Richmond" }, { "id": 1, "name": "Avis Mcclure" }, { "id": 2, "name": "Marcie Peters" } ], "greeting": "Hello, Shari Martinez! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dccc76b4b12189b3d", "index": 109, "guid": "51184b50-c32e-44ee-b946-45b9307b8a3c", "isActive": false, "balance": "$2,565.69", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Mitchell Lara", "gender": "male", "company": "CAXT", "email": "mitchelllara@caxt.com", "phone": "+1 (970) 464-3410", "address": "983 Hubbard Place, Bentley, Louisiana, 4313", "about": "Fugiat Lorem consequat ea aliquip deserunt aliquip deserunt. Cupidatat quis do ut proident voluptate minim officia consectetur ut tempor consectetur. Anim incididunt laborum Lorem proident eu. Occaecat Lorem quis Lorem ut do voluptate.\r\n", "registered": "2014-05-27T04:51:33-12:00", "latitude": -37.635747, "longitude": 154.885113, "tags": [ "adipisicing", "quis", "tempor", "deserunt", "quis", "commodo", "laboris" ], "friends": [ { "id": 0, "name": "Mccarty Cleveland" }, { "id": 1, "name": "Young Howell" }, { "id": 2, "name": "Marcella Nielsen" } ], "greeting": "Hello, Mitchell Lara! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d8f8d5b77052b5c05", "index": 110, "guid": "bfd400fb-56f0-4018-886f-a7afc6eba118", "isActive": false, "balance": "$3,766.42", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Hayes Rhodes", "gender": "male", "company": "LIQUICOM", "email": "hayesrhodes@liquicom.com", "phone": "+1 (990) 453-3414", "address": "880 Nolans Lane, Alleghenyville, Northern Mariana Islands, 7777", "about": "Exercitation sit laborum laboris Lorem. Qui exercitation deserunt pariatur ipsum proident magna deserunt consequat esse qui. Et amet ad consequat veniam ea ullamco eiusmod dolore pariatur.\r\n", "registered": "2014-09-08T08:37:58-12:00", "latitude": -0.726434, "longitude": 134.802602, "tags": [ "veniam", "nisi", "ad", "occaecat", "est", "qui", "minim" ], "friends": [ { "id": 0, "name": "Cherry Hartman" }, { "id": 1, "name": "Jayne Travis" }, { "id": 2, "name": "Laverne Wilson" } ], "greeting": "Hello, Hayes Rhodes! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1da40871a803b9c74d", "index": 111, "guid": "cfe52607-d2c2-4c93-ace5-e7e64f155580", "isActive": true, "balance": "$1,482.01", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Whitfield Pace", "gender": "male", "company": "NEOCENT", "email": "whitfieldpace@neocent.com", "phone": "+1 (979) 526-3933", "address": "137 Williamsburg Street, Bison, Colorado, 2835", "about": "Dolor sint consequat ullamco tempor aliqua qui cupidatat adipisicing. Culpa fugiat Lorem proident nisi id aute commodo consectetur do ullamco aliqua. Do cillum occaecat velit non duis. Nulla irure nulla ullamco reprehenderit tempor adipisicing non deserunt reprehenderit. Sit occaecat pariatur pariatur sint nostrud.\r\n", "registered": "2014-08-05T23:25:25-12:00", "latitude": 25.071373, "longitude": 119.473226, "tags": [ "qui", "elit", "qui", "deserunt", "ullamco", "est", "culpa" ], "friends": [ { "id": 0, "name": "Isabella Sparks" }, { "id": 1, "name": "Stokes Patterson" }, { "id": 2, "name": "Kristine Wood" } ], "greeting": "Hello, Whitfield Pace! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1df2844bfe0218fa1f", "index": 112, "guid": "f9f7a182-2b62-4485-b6c6-dbf0c10488aa", "isActive": true, "balance": "$2,799.73", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Susanna Rodriguez", "gender": "female", "company": "ZOMBOID", "email": "susannarodriguez@zomboid.com", "phone": "+1 (807) 465-2609", "address": "827 Hampton Place, Brethren, Idaho, 8181", "about": "Ad sint excepteur adipisicing do irure irure cupidatat cillum duis amet. Qui culpa cillum laboris labore laboris sunt amet. Aute et amet nulla excepteur do ea non eiusmod enim elit eiusmod cupidatat ea mollit. Officia in ad cillum labore minim et aliquip magna pariatur occaecat nisi laborum proident adipisicing.\r\n", "registered": "2014-02-02T06:57:32-13:00", "latitude": 10.470249, "longitude": -32.250606, "tags": [ "et", "consequat", "velit", "irure", "et", "anim", "velit" ], "friends": [ { "id": 0, "name": "Christian Bates" }, { "id": 1, "name": "Britney Shepard" }, { "id": 2, "name": "Mona Mercado" } ], "greeting": "Hello, Susanna Rodriguez! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d3ac8e00e98089a93", "index": 113, "guid": "9f156485-ba46-4d62-899f-5816b10a032f", "isActive": true, "balance": "$2,163.32", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Whitaker Fitzpatrick", "gender": "male", "company": "UNEEQ", "email": "whitakerfitzpatrick@uneeq.com", "phone": "+1 (936) 518-2988", "address": "679 Pooles Lane, Wheaton, Marshall Islands, 1855", "about": "Et ad irure Lorem est est. Officia labore id laborum dolore incididunt tempor id consequat sint ad incididunt Lorem. Commodo laboris adipisicing nisi magna nostrud ut sit qui nisi laborum voluptate deserunt officia. In incididunt consectetur nostrud elit sit in excepteur cupidatat ad consequat reprehenderit cupidatat enim pariatur.\r\n", "registered": "2014-03-27T23:55:17-13:00", "latitude": 23.574592, "longitude": 84.73584, "tags": [ "ipsum", "commodo", "excepteur", "magna", "nulla", "ipsum", "cupidatat" ], "friends": [ { "id": 0, "name": "Wallace Hart" }, { "id": 1, "name": "Hull Poole" }, { "id": 2, "name": "Martinez Franks" } ], "greeting": "Hello, Whitaker Fitzpatrick! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dd7cf34ad068646c4", "index": 114, "guid": "26d91078-3c2b-4635-b6b1-df944ffe1401", "isActive": true, "balance": "$3,912.50", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Woodard Watson", "gender": "male", "company": "MARQET", "email": "woodardwatson@marqet.com", "phone": "+1 (938) 435-2903", "address": "312 Ashland Place, Otranto, New York, 4692", "about": "Cupidatat quis veniam sint tempor sit labore anim duis cillum cillum veniam amet dolor. Ad ad magna magna fugiat fugiat aliqua deserunt. Ut non do esse labore. Et aliquip nisi Lorem ut officia nisi magna consequat.\r\n", "registered": "2014-05-11T08:55:36-12:00", "latitude": -44.246004, "longitude": 102.45412, "tags": [ "tempor", "incididunt", "duis", "nostrud", "id", "sunt", "nostrud" ], "friends": [ { "id": 0, "name": "Rogers Shaw" }, { "id": 1, "name": "Annette Smith" }, { "id": 2, "name": "Kari Bell" } ], "greeting": "Hello, Woodard Watson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d7c713d2496c246e1", "index": 115, "guid": "4d9764aa-ae37-4291-a3b2-42c8a8560fc1", "isActive": false, "balance": "$3,399.36", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Corina Simon", "gender": "female", "company": "ERSUM", "email": "corinasimon@ersum.com", "phone": "+1 (872) 421-3120", "address": "965 Herzl Street, Rosburg, Guam, 8672", "about": "Cillum eiusmod excepteur ea magna consequat ut velit exercitation ea eu reprehenderit Lorem nulla occaecat. Ut excepteur incididunt fugiat voluptate magna nostrud mollit anim excepteur Lorem cupidatat. Ut aliquip excepteur sunt in ut ipsum fugiat qui incididunt velit occaecat aliquip ut. Est velit nostrud est anim ullamco. Excepteur minim consequat amet Lorem nostrud. Quis adipisicing laborum ad id sint incididunt. Ipsum nostrud commodo cupidatat aliquip Lorem amet adipisicing et enim laborum.\r\n", "registered": "2014-05-04T01:46:19-12:00", "latitude": -1.824766, "longitude": -103.916027, "tags": [ "reprehenderit", "consequat", "proident", "ex", "nostrud", "nostrud", "tempor" ], "friends": [ { "id": 0, "name": "Marissa Orr" }, { "id": 1, "name": "Belinda Page" }, { "id": 2, "name": "Barron Greene" } ], "greeting": "Hello, Corina Simon! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1deef69b171cf34e85", "index": 116, "guid": "5f587119-084a-4157-9a51-212108acc2e9", "isActive": true, "balance": "$2,112.30", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Noble Flowers", "gender": "male", "company": "ZILCH", "email": "nobleflowers@zilch.com", "phone": "+1 (932) 430-3309", "address": "359 Coles Street, Echo, Virgin Islands, 3352", "about": "Veniam ad elit commodo voluptate ut officia cillum. Ad dolor amet exercitation irure dolor enim incididunt elit laborum nulla. Do excepteur minim voluptate proident veniam. Ullamco nulla id culpa ad velit. Lorem ad occaecat aute proident commodo eu proident duis tempor mollit.\r\n", "registered": "2014-04-26T09:50:18-12:00", "latitude": -44.278137, "longitude": -27.715709, "tags": [ "Lorem", "nulla", "laborum", "duis", "ad", "ipsum", "dolore" ], "friends": [ { "id": 0, "name": "Mathews Spencer" }, { "id": 1, "name": "Kathie Booker" }, { "id": 2, "name": "Raymond Vinson" } ], "greeting": "Hello, Noble Flowers! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1def87b5fe33f76b07", "index": 117, "guid": "68bf6e8e-cb94-4e7b-878f-88f4d48a6e64", "isActive": true, "balance": "$3,561.25", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Lawson Craft", "gender": "male", "company": "MIRACLIS", "email": "lawsoncraft@miraclis.com", "phone": "+1 (893) 531-2757", "address": "215 Clifton Place, Sussex, Massachusetts, 2231", "about": "Anim proident occaecat labore consectetur fugiat pariatur. Ea sunt fugiat fugiat occaecat anim irure nisi reprehenderit dolor ut pariatur nulla deserunt cupidatat. Incididunt eu do minim et. Lorem eiusmod et laboris enim veniam ullamco non duis commodo velit eiusmod. Nostrud ullamco adipisicing nostrud consectetur est qui culpa.\r\n", "registered": "2014-09-02T15:04:57-12:00", "latitude": -26.80551, "longitude": -23.053348, "tags": [ "est", "excepteur", "est", "culpa", "cupidatat", "incididunt", "id" ], "friends": [ { "id": 0, "name": "Jordan Frazier" }, { "id": 1, "name": "Klein Guerrero" }, { "id": 2, "name": "Herminia Francis" } ], "greeting": "Hello, Lawson Craft! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1da7a4434191aacb92", "index": 118, "guid": "b3e29137-79c5-44e5-b9fa-ba9ed018fb8a", "isActive": true, "balance": "$1,517.30", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Marianne Wiley", "gender": "female", "company": "GEEKOL", "email": "mariannewiley@geekol.com", "phone": "+1 (967) 594-3852", "address": "812 Plymouth Street, Ripley, Utah, 3671", "about": "Proident cupidatat elit non occaecat in anim proident in do fugiat cupidatat id laboris irure. Anim non laboris Lorem amet deserunt voluptate mollit esse velit eiusmod consequat laborum irure. Qui excepteur laborum voluptate sit in mollit. Reprehenderit minim dolore eu voluptate nulla nostrud labore. Qui voluptate qui occaecat in cillum veniam veniam do laboris velit ut.\r\n", "registered": "2014-02-02T08:53:50-13:00", "latitude": -19.428179, "longitude": -131.747726, "tags": [ "ea", "adipisicing", "duis", "culpa", "ullamco", "irure", "laboris" ], "friends": [ { "id": 0, "name": "Doreen Kelly" }, { "id": 1, "name": "Shawna Klein" }, { "id": 2, "name": "Tina Mcbride" } ], "greeting": "Hello, Marianne Wiley! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dfd6ad5b7fd9515ae", "index": 119, "guid": "b56af40c-caf4-4c40-967d-0e21f56cfe54", "isActive": false, "balance": "$3,125.56", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Pope Carey", "gender": "male", "company": "BUGSALL", "email": "popecarey@bugsall.com", "phone": "+1 (884) 498-3243", "address": "522 Pershing Loop, Craig, Montana, 7120", "about": "Adipisicing minim esse quis aliqua aliquip elit cillum ad fugiat dolor. Sit elit non fugiat sint occaecat dolor culpa. Laborum occaecat enim fugiat ea. Quis ex labore consectetur ipsum quis esse aliquip qui ad elit dolor et est proident. Ipsum cupidatat labore aliqua laboris aute officia veniam. Magna mollit ut tempor do tempor dolore reprehenderit est anim quis minim exercitation duis.\r\n", "registered": "2014-04-05T09:50:25-13:00", "latitude": -80.928636, "longitude": 99.158207, "tags": [ "irure", "do", "eiusmod", "veniam", "minim", "fugiat", "sunt" ], "friends": [ { "id": 0, "name": "Rose Fry" }, { "id": 1, "name": "Cohen Beasley" }, { "id": 2, "name": "Slater Gaines" } ], "greeting": "Hello, Pope Carey! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d25e3c38bda99a06e", "index": 120, "guid": "db8b6b70-a178-4fec-910d-241091d671ca", "isActive": false, "balance": "$3,602.54", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Holcomb Warner", "gender": "male", "company": "AQUAMATE", "email": "holcombwarner@aquamate.com", "phone": "+1 (906) 593-3812", "address": "638 Garland Court, Axis, Wisconsin, 4135", "about": "Consectetur in officia et duis. In exercitation eiusmod magna eu. Esse nisi enim pariatur fugiat enim culpa non officia id excepteur excepteur fugiat officia. Et voluptate eiusmod eiusmod cupidatat dolor ad in fugiat.\r\n", "registered": "2014-05-12T21:34:47-12:00", "latitude": -58.447499, "longitude": 175.700136, "tags": [ "nulla", "laboris", "et", "enim", "laborum", "proident", "elit" ], "friends": [ { "id": 0, "name": "Ruth Henry" }, { "id": 1, "name": "Shields Clark" }, { "id": 2, "name": "Hardy Baird" } ], "greeting": "Hello, Holcomb Warner! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d7108b1b750063cdd", "index": 121, "guid": "02df3827-7772-4ac6-add1-fdb3ebb83e4f", "isActive": true, "balance": "$1,675.79", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Martina Noel", "gender": "female", "company": "KEENGEN", "email": "martinanoel@keengen.com", "phone": "+1 (931) 596-2185", "address": "716 Colonial Court, Homestead, Maine, 3201", "about": "Exercitation ea aliquip irure elit esse dolore. Occaecat aute velit sint ad adipisicing pariatur nisi sit Lorem proident labore sint. Nulla et enim adipisicing est.\r\n", "registered": "2014-09-19T08:07:10-12:00", "latitude": -11.449498, "longitude": -51.243889, "tags": [ "fugiat", "minim", "amet", "exercitation", "dolor", "sit", "voluptate" ], "friends": [ { "id": 0, "name": "Wooten Dunlap" }, { "id": 1, "name": "Stella Kramer" }, { "id": 2, "name": "Heath Hubbard" } ], "greeting": "Hello, Martina Noel! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d69cf417a850c90cf", "index": 122, "guid": "20fe9b65-0d24-4441-b3cc-11c922d57f38", "isActive": true, "balance": "$3,321.59", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Barbara Petersen", "gender": "female", "company": "PLASMOSIS", "email": "barbarapetersen@plasmosis.com", "phone": "+1 (816) 505-2206", "address": "788 Provost Street, Interlochen, Virginia, 7498", "about": "Tempor velit enim esse ullamco minim amet consequat. Nulla qui officia occaecat cillum proident dolore nisi culpa commodo tempor eu reprehenderit id ut. Ipsum culpa consequat anim mollit labore.\r\n", "registered": "2014-05-12T14:06:44-12:00", "latitude": -87.832469, "longitude": -133.141147, "tags": [ "esse", "ad", "non", "esse", "reprehenderit", "et", "exercitation" ], "friends": [ { "id": 0, "name": "Davidson Ford" }, { "id": 1, "name": "Kerri Buck" }, { "id": 2, "name": "Katina Harrington" } ], "greeting": "Hello, Barbara Petersen! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1de2d603d741a87be0", "index": 123, "guid": "02fe22c7-9a55-4f4a-be21-8d4b72c50219", "isActive": true, "balance": "$1,378.18", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Mercer Johns", "gender": "male", "company": "ISOSWITCH", "email": "mercerjohns@isoswitch.com", "phone": "+1 (989) 491-2098", "address": "815 Division Place, Fairfield, Kentucky, 4340", "about": "Voluptate irure sit mollit quis. Anim sunt voluptate dolore exercitation sint minim reprehenderit eu voluptate labore quis aliquip. Duis aliquip ullamco quis reprehenderit proident quis velit. Sint amet reprehenderit anim reprehenderit excepteur laboris est minim est. Sit irure officia duis elit amet mollit. Proident culpa et consectetur dolor quis sint mollit sit. In laboris sunt non amet qui Lorem nulla proident in nisi duis.\r\n", "registered": "2014-02-11T04:59:22-13:00", "latitude": -81.810424, "longitude": -101.823722, "tags": [ "velit", "eu", "cupidatat", "id", "labore", "occaecat", "amet" ], "friends": [ { "id": 0, "name": "Addie Montoya" }, { "id": 1, "name": "Burris Berger" }, { "id": 2, "name": "Preston Osborne" } ], "greeting": "Hello, Mercer Johns! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1db7bf5834399b2885", "index": 124, "guid": "b3160a86-b0ff-4fc7-ba98-cb998324aa0f", "isActive": true, "balance": "$1,590.53", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Patel Mathis", "gender": "male", "company": "TWIGGERY", "email": "patelmathis@twiggery.com", "phone": "+1 (807) 490-2634", "address": "366 Merit Court, Drummond, Connecticut, 6395", "about": "Deserunt nulla est consectetur excepteur quis enim do aliquip ut. Consectetur dolore ullamco eu do in sit dolore. Exercitation cillum magna ex do aliqua laboris. Minim consectetur ipsum elit aliqua incididunt pariatur magna quis.\r\n", "registered": "2014-03-08T00:51:50-13:00", "latitude": 38.341079, "longitude": 61.726382, "tags": [ "irure", "quis", "sit", "sunt", "qui", "esse", "et" ], "friends": [ { "id": 0, "name": "Kendra Melton" }, { "id": 1, "name": "Landry Eaton" }, { "id": 2, "name": "Keisha Mays" } ], "greeting": "Hello, Patel Mathis! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d7596350e8635f9ec", "index": 125, "guid": "8071fa3f-c9ad-4608-adf5-1011a399dfa6", "isActive": true, "balance": "$2,574.81", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Isabel Gill", "gender": "female", "company": "ANDERSHUN", "email": "isabelgill@andershun.com", "phone": "+1 (952) 500-3650", "address": "880 Whitty Lane, Hamilton, Mississippi, 2687", "about": "Eu ea excepteur Lorem exercitation nostrud veniam et eiusmod occaecat qui minim reprehenderit aliqua quis. Ipsum in tempor enim commodo duis sit minim duis esse consequat quis magna. Sint elit ea fugiat labore. Anim proident non esse esse cillum eiusmod ut velit.\r\n", "registered": "2014-07-11T02:02:00-12:00", "latitude": 65.124296, "longitude": 141.458396, "tags": [ "nulla", "velit", "reprehenderit", "minim", "amet", "velit", "anim" ], "friends": [ { "id": 0, "name": "Sharron Wheeler" }, { "id": 1, "name": "Fry Carr" }, { "id": 2, "name": "Mueller Wolfe" } ], "greeting": "Hello, Isabel Gill! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d58a545aae7c8a344", "index": 126, "guid": "d47f0c93-ec98-47a9-8541-9ccaeb977e61", "isActive": false, "balance": "$2,476.95", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Cecile Huber", "gender": "female", "company": "CIPROMOX", "email": "cecilehuber@cipromox.com", "phone": "+1 (858) 401-2417", "address": "380 Madeline Court, Chestnut, Washington, 1591", "about": "Magna non mollit consectetur dolor excepteur elit. Duis ullamco nulla aliqua aliqua. Consequat proident in pariatur ipsum excepteur enim labore ex. Ex qui esse sint enim in nulla amet ullamco adipisicing. Fugiat nostrud ut incididunt elit velit elit.\r\n", "registered": "2014-01-01T19:50:42-13:00", "latitude": 34.910816, "longitude": -53.268406, "tags": [ "minim", "sit", "elit", "do", "elit", "adipisicing", "esse" ], "friends": [ { "id": 0, "name": "Griffith Pierce" }, { "id": 1, "name": "Chase Merritt" }, { "id": 2, "name": "Kinney Aguirre" } ], "greeting": "Hello, Cecile Huber! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d06787f72d2115e26", "index": 127, "guid": "1ec49d24-07c6-46d6-be4b-e89b92a555fa", "isActive": true, "balance": "$3,905.13", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Wilma Luna", "gender": "female", "company": "ROTODYNE", "email": "wilmaluna@rotodyne.com", "phone": "+1 (954) 598-3224", "address": "260 Bayard Street, Mappsville, Tennessee, 7872", "about": "Et sunt culpa nostrud enim ex id mollit ex aute non. Excepteur est duis Lorem ullamco ex nostrud nisi ex id non. Occaecat occaecat laborum id minim dolore officia quis voluptate consectetur ad officia voluptate. Irure incididunt sunt duis laborum duis pariatur nostrud incididunt aliquip sit elit ad. Laboris veniam quis duis excepteur do in eiusmod cillum consequat commodo tempor. Veniam et mollit sunt mollit et.\r\n", "registered": "2014-06-03T03:40:47-12:00", "latitude": -84.945312, "longitude": -109.201379, "tags": [ "id", "do", "laboris", "commodo", "Lorem", "incididunt", "aliqua" ], "friends": [ { "id": 0, "name": "Simone Bowen" }, { "id": 1, "name": "Tricia Mueller" }, { "id": 2, "name": "Nicholson Duncan" } ], "greeting": "Hello, Wilma Luna! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dba1da7ccc1eabf25", "index": 128, "guid": "f7718aed-92ed-4acd-aed9-399aed4d7119", "isActive": true, "balance": "$1,653.08", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Terrie Burt", "gender": "female", "company": "OMATOM", "email": "terrieburt@omatom.com", "phone": "+1 (970) 566-2742", "address": "157 Bowne Street, Masthope, Alabama, 578", "about": "Dolore reprehenderit minim culpa officia excepteur esse. Occaecat ex culpa voluptate consequat do laborum tempor. Amet voluptate laborum Lorem in Lorem ad. Cupidatat voluptate dolore occaecat aliquip cupidatat proident. Ipsum incididunt duis Lorem Lorem Lorem sit qui qui excepteur. Cillum nostrud sint nisi quis commodo dolore tempor. Id culpa proident eiusmod minim magna exercitation laboris duis deserunt deserunt officia elit.\r\n", "registered": "2014-02-10T00:33:31-13:00", "latitude": 25.545838, "longitude": 37.377747, "tags": [ "proident", "ut", "nisi", "nisi", "labore", "eiusmod", "ea" ], "friends": [ { "id": 0, "name": "Madeline Saunders" }, { "id": 1, "name": "Zamora Caldwell" }, { "id": 2, "name": "Roberta House" } ], "greeting": "Hello, Terrie Burt! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d1df3c1fa277ef080", "index": 129, "guid": "ac568fb1-f9a3-4f95-8fd3-d5c78a2a0aad", "isActive": true, "balance": "$2,409.18", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Gladys Dudley", "gender": "female", "company": "XPLOR", "email": "gladysdudley@xplor.com", "phone": "+1 (999) 559-2140", "address": "726 Ingraham Street, Joes, Ohio, 4411", "about": "Dolor sit aliqua et officia quis ea deserunt ipsum adipisicing Lorem eiusmod magna ut. Sit adipisicing esse duis do commodo aute. Id non exercitation dolore ex eu culpa sit. Ex in ullamco officia labore ad.\r\n", "registered": "2014-02-19T08:47:50-13:00", "latitude": 83.453787, "longitude": -59.138909, "tags": [ "ut", "culpa", "exercitation", "nisi", "ex", "in", "eu" ], "friends": [ { "id": 0, "name": "Henry Wynn" }, { "id": 1, "name": "Anna Wilkinson" }, { "id": 2, "name": "Blackburn Bailey" } ], "greeting": "Hello, Gladys Dudley! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1df9f7663119eb544a", "index": 130, "guid": "9137db9a-0a7e-43eb-8752-b1a71ea2c3f4", "isActive": false, "balance": "$1,081.77", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Holder Barry", "gender": "male", "company": "OVOLO", "email": "holderbarry@ovolo.com", "phone": "+1 (949) 594-3454", "address": "330 Canda Avenue, Roosevelt, Hawaii, 9638", "about": "Quis Lorem amet ad pariatur veniam sunt aliquip labore id labore qui fugiat eiusmod. Dolore esse magna amet fugiat laboris anim incididunt Lorem officia fugiat occaecat eu laborum. Laboris sunt deserunt sit fugiat consectetur sunt.\r\n", "registered": "2014-08-30T04:50:11-12:00", "latitude": 29.000546, "longitude": 27.143201, "tags": [ "enim", "culpa", "nisi", "eiusmod", "aute", "officia", "ullamco" ], "friends": [ { "id": 0, "name": "Leonard Atkins" }, { "id": 1, "name": "Beatriz Donaldson" }, { "id": 2, "name": "Berta Hutchinson" } ], "greeting": "Hello, Holder Barry! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d545cd322bca7175d", "index": 131, "guid": "e73a886f-27bc-4309-9a8e-b4e988ad76bd", "isActive": false, "balance": "$1,320.96", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Adele Decker", "gender": "female", "company": "NORALEX", "email": "adeledecker@noralex.com", "phone": "+1 (915) 576-3431", "address": "348 Portland Avenue, Guilford, New Mexico, 1503", "about": "Mollit voluptate anim commodo esse consectetur enim. Veniam duis fugiat voluptate culpa exercitation nisi ut nulla eu irure adipisicing et proident ut. Ullamco quis qui est anim ipsum laborum fugiat aliqua qui.\r\n", "registered": "2014-01-23T18:10:17-13:00", "latitude": -42.341781, "longitude": 142.760701, "tags": [ "minim", "nulla", "deserunt", "aute", "officia", "et", "excepteur" ], "friends": [ { "id": 0, "name": "Jones Cochran" }, { "id": 1, "name": "Robin Mckay" }, { "id": 2, "name": "Jackson Simpson" } ], "greeting": "Hello, Adele Decker! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d4b7d31789cd31255", "index": 132, "guid": "577340fa-e642-4391-9c72-f52ec56e944f", "isActive": false, "balance": "$3,298.44", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Mayer Everett", "gender": "male", "company": "AUSTECH", "email": "mayereverett@austech.com", "phone": "+1 (854) 452-3075", "address": "428 Polhemus Place, Stockdale, Maryland, 4875", "about": "Quis nostrud nisi anim nulla minim ipsum mollit et officia. Do ad sit nulla aute nostrud incididunt officia elit sit pariatur ex officia exercitation. Esse sunt nostrud mollit deserunt id ullamco. Aliquip voluptate excepteur Lorem id et quis magna velit est mollit commodo. Lorem pariatur ullamco ullamco laboris aliquip nisi nisi id. Aute ea consectetur commodo consectetur commodo pariatur commodo minim. Eu in ipsum minim ipsum mollit laboris commodo nisi.\r\n", "registered": "2014-08-01T12:07:09-12:00", "latitude": -73.778944, "longitude": 64.048589, "tags": [ "elit", "esse", "mollit", "eu", "irure", "magna", "elit" ], "friends": [ { "id": 0, "name": "Lorraine Delgado" }, { "id": 1, "name": "Mai Mcgowan" }, { "id": 2, "name": "Jolene Fleming" } ], "greeting": "Hello, Mayer Everett! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d256b99fcb82439bf", "index": 133, "guid": "df1838d5-1f12-4e45-b9d4-e253d260a5ee", "isActive": true, "balance": "$2,519.79", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Sims Burton", "gender": "male", "company": "DIGIGEN", "email": "simsburton@digigen.com", "phone": "+1 (918) 511-3394", "address": "283 Maple Street, Dale, Alaska, 9731", "about": "Lorem aliquip sint ipsum laboris. Duis velit magna sit incididunt laborum minim sit. Ad cillum sunt ut commodo proident anim culpa dolor excepteur enim consequat. Aliquip Lorem veniam aliqua sit nisi eiusmod. Voluptate dolor elit sit minim cupidatat. Id eu consectetur nisi qui sint.\r\n", "registered": "2014-09-01T16:57:29-12:00", "latitude": 83.814438, "longitude": -156.36737, "tags": [ "officia", "dolore", "ea", "consectetur", "aliquip", "in", "nulla" ], "friends": [ { "id": 0, "name": "Sonia Graves" }, { "id": 1, "name": "Bette Potts" }, { "id": 2, "name": "Kristi Holland" } ], "greeting": "Hello, Sims Burton! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1df1779c57a287af93", "index": 134, "guid": "3072a50c-900d-4240-9735-7e51b1672744", "isActive": false, "balance": "$2,786.40", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Paige Hewitt", "gender": "female", "company": "XURBAN", "email": "paigehewitt@xurban.com", "phone": "+1 (973) 515-3013", "address": "953 Cooper Street, Westerville, Arizona, 5762", "about": "Nostrud qui in ipsum qui dolore eu veniam excepteur. In do duis cupidatat proident proident non quis. Proident ex fugiat velit ullamco dolor sint voluptate.\r\n", "registered": "2014-08-16T03:21:31-12:00", "latitude": 40.981109, "longitude": 104.506753, "tags": [ "aliqua", "laborum", "dolor", "nulla", "mollit", "pariatur", "dolore" ], "friends": [ { "id": 0, "name": "Aimee Porter" }, { "id": 1, "name": "Ophelia Callahan" }, { "id": 2, "name": "Santos Christensen" } ], "greeting": "Hello, Paige Hewitt! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d0bb979eb99cfe822", "index": 135, "guid": "9928e9ac-748c-40f1-be43-35a884281c73", "isActive": false, "balance": "$1,365.40", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Juana Salazar", "gender": "female", "company": "OVATION", "email": "juanasalazar@ovation.com", "phone": "+1 (915) 475-3828", "address": "229 Prescott Place, Veyo, Federated States Of Micronesia, 6450", "about": "Dolor id ex excepteur consectetur est quis reprehenderit commodo veniam cillum quis mollit. Duis occaecat anim est ex esse Lorem in Lorem irure qui ea labore. Cupidatat laborum reprehenderit sint ullamco ex consequat eu enim commodo fugiat. Non do velit proident do in aliqua ex amet do cupidatat irure adipisicing reprehenderit veniam. Commodo irure laborum laborum proident fugiat nisi ea cillum consequat do eu. Et id deserunt enim eiusmod nulla fugiat pariatur id fugiat esse anim labore labore. Qui ea minim ad officia incididunt do nulla cillum eiusmod.\r\n", "registered": "2014-02-21T02:12:56-13:00", "latitude": 58.52736, "longitude": -176.008583, "tags": [ "minim", "ipsum", "esse", "ex", "voluptate", "in", "laborum" ], "friends": [ { "id": 0, "name": "Velez Emerson" }, { "id": 1, "name": "Haley Velasquez" }, { "id": 2, "name": "Mayo Chapman" } ], "greeting": "Hello, Juana Salazar! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d759e243d8a32ce29", "index": 136, "guid": "cd3f093b-ea7f-4e73-a57a-ef926787680d", "isActive": true, "balance": "$2,260.14", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Burke Jennings", "gender": "male", "company": "GYNK", "email": "burkejennings@gynk.com", "phone": "+1 (945) 434-3497", "address": "612 Cook Street, Cutter, Oklahoma, 3345", "about": "Reprehenderit cupidatat voluptate fugiat amet veniam enim et consequat incididunt et dolor occaecat. Ipsum officia duis pariatur laborum enim. Magna ad ex amet mollit irure minim cupidatat esse duis adipisicing consequat. Aliqua dolore nulla ex irure tempor quis quis est aliqua eu eiusmod in commodo.\r\n", "registered": "2014-04-03T18:26:25-13:00", "latitude": -74.441983, "longitude": -51.963155, "tags": [ "reprehenderit", "enim", "consequat", "proident", "commodo", "occaecat", "aliquip" ], "friends": [ { "id": 0, "name": "Jane Logan" }, { "id": 1, "name": "Claudine Sloan" }, { "id": 2, "name": "Huber Lamb" } ], "greeting": "Hello, Burke Jennings! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d6bfaf240bcd4ef54", "index": 137, "guid": "713f0d32-f7df-4833-be8f-14ecf5b833a3", "isActive": false, "balance": "$1,265.81", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Milagros Jensen", "gender": "female", "company": "PORTICO", "email": "milagrosjensen@portico.com", "phone": "+1 (943) 578-3518", "address": "258 Pioneer Street, Matheny, Michigan, 2593", "about": "Nisi exercitation aliqua incididunt voluptate nisi sint magna anim et reprehenderit ut voluptate irure eu. Aute nulla eu ullamco est esse. Enim qui deserunt non esse consectetur non eiusmod elit magna sit est pariatur quis. Consectetur pariatur sint dolore elit occaecat commodo.\r\n", "registered": "2014-09-05T04:33:31-12:00", "latitude": -40.615686, "longitude": 4.436614, "tags": [ "laboris", "magna", "irure", "dolor", "Lorem", "nostrud", "tempor" ], "friends": [ { "id": 0, "name": "Rachel Carrillo" }, { "id": 1, "name": "Rowe Mccarthy" }, { "id": 2, "name": "Yolanda Salas" } ], "greeting": "Hello, Milagros Jensen! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1de8e71efa0175007c", "index": 138, "guid": "26745816-07c2-416c-b75d-21f8aadaf803", "isActive": false, "balance": "$1,545.30", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Tyson Castillo", "gender": "male", "company": "ZAGGLES", "email": "tysoncastillo@zaggles.com", "phone": "+1 (999) 536-2366", "address": "435 Downing Street, Robinette, Kansas, 9304", "about": "Deserunt cillum sunt cillum cillum velit. Ad deserunt labore elit mollit ea deserunt. Culpa magna incididunt consectetur aute duis quis nostrud. Fugiat qui tempor minim eu. Mollit enim ut reprehenderit sunt velit. Excepteur magna incididunt laboris Lorem Lorem sint. Ea mollit ut sint aliquip dolore.\r\n", "registered": "2014-08-20T14:24:26-12:00", "latitude": -48.282289, "longitude": -172.884884, "tags": [ "commodo", "qui", "quis", "ex", "officia", "qui", "qui" ], "friends": [ { "id": 0, "name": "Dona Tanner" }, { "id": 1, "name": "Ferrell Chase" }, { "id": 2, "name": "Bertie Suarez" } ], "greeting": "Hello, Tyson Castillo! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dc58161230d4a5d9f", "index": 139, "guid": "8a2a8333-0123-4c6a-853f-aeabe2569ff2", "isActive": false, "balance": "$3,190.91", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Dora Leonard", "gender": "female", "company": "PANZENT", "email": "doraleonard@panzent.com", "phone": "+1 (880) 447-2412", "address": "935 Knight Court, Monument, South Dakota, 2657", "about": "Duis voluptate pariatur est deserunt. Eiusmod reprehenderit labore id ut nostrud incididunt cupidatat duis consequat dolore voluptate esse. Cillum sunt dolor consectetur commodo aliquip commodo occaecat laboris ut consequat irure. Amet fugiat fugiat et sit incididunt laborum voluptate. Nostrud irure amet esse ut nostrud proident eu. Non amet magna tempor amet officia.\r\n", "registered": "2014-03-08T15:42:50-13:00", "latitude": -25.948848, "longitude": -92.812386, "tags": [ "laboris", "nostrud", "incididunt", "incididunt", "non", "magna", "deserunt" ], "friends": [ { "id": 0, "name": "Gilliam Castro" }, { "id": 1, "name": "Clarice Burks" }, { "id": 2, "name": "Dianne Perry" } ], "greeting": "Hello, Dora Leonard! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d86259087e0d69965", "index": 140, "guid": "cd9a0ff3-ca16-442b-b9bf-06d4d939bdb4", "isActive": false, "balance": "$3,845.19", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Clay Hansen", "gender": "male", "company": "CINCYR", "email": "clayhansen@cincyr.com", "phone": "+1 (894) 408-2171", "address": "794 Manhattan Avenue, Lloyd, West Virginia, 4493", "about": "Eu irure labore nisi dolore et ex. Exercitation minim incididunt elit aliquip est in laborum. Culpa excepteur quis aliqua aute veniam ex ad incididunt irure est Lorem nisi. Exercitation eu eu occaecat laboris occaecat officia ut. Ad et dolor commodo Lorem dolor ad ullamco amet qui. In eu voluptate id commodo in nisi officia aliqua quis non exercitation qui.\r\n", "registered": "2014-02-06T20:44:10-13:00", "latitude": -36.785912, "longitude": 169.92093, "tags": [ "excepteur", "consectetur", "anim", "duis", "laborum", "dolor", "irure" ], "friends": [ { "id": 0, "name": "Wall Avery" }, { "id": 1, "name": "Morrison Holman" }, { "id": 2, "name": "Bowman Boyle" } ], "greeting": "Hello, Clay Hansen! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d8c4387572bd32102", "index": 141, "guid": "a847e60e-2286-4219-b009-62bbbef2a81e", "isActive": false, "balance": "$1,865.22", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Wright Bauer", "gender": "male", "company": "FITCORE", "email": "wrightbauer@fitcore.com", "phone": "+1 (929) 444-3631", "address": "866 Ivan Court, Grapeview, Texas, 2599", "about": "Est amet aliqua dolor et exercitation ullamco. Ex et adipisicing reprehenderit proident reprehenderit non pariatur. Pariatur magna labore qui nisi commodo. Adipisicing aliquip Lorem mollit tempor id tempor est labore ipsum dolore. Labore quis duis aliqua minim ut tempor officia commodo magna irure magna consequat do. Aliqua aliquip ea velit non veniam commodo sint esse duis consequat voluptate sunt quis. Voluptate mollit veniam aliqua consectetur in eu non ex.\r\n", "registered": "2014-06-09T07:11:42-12:00", "latitude": 41.697988, "longitude": -2.839639, "tags": [ "irure", "voluptate", "ea", "est", "tempor", "culpa", "cillum" ], "friends": [ { "id": 0, "name": "Oneil Avila" }, { "id": 1, "name": "Pierce Vazquez" }, { "id": 2, "name": "Anderson Tucker" } ], "greeting": "Hello, Wright Bauer! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dfcdb491569cc95ed", "index": 142, "guid": "a256a908-3053-424d-99e3-a53f37e6663f", "isActive": true, "balance": "$3,037.70", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Pearson Swanson", "gender": "male", "company": "FLEETMIX", "email": "pearsonswanson@fleetmix.com", "phone": "+1 (907) 416-3559", "address": "601 Duryea Place, Yonah, Oregon, 9613", "about": "Ut occaecat nisi ullamco consequat pariatur cupidatat sint nisi occaecat velit Lorem qui cupidatat tempor. Commodo cupidatat tempor aliqua officia in est cillum laborum excepteur aliqua quis est et. Aute ipsum commodo eiusmod tempor est tempor amet consequat magna nostrud. Consectetur mollit ex magna labore amet commodo incididunt. Est incididunt voluptate commodo consectetur cillum culpa incididunt nostrud do in.\r\n", "registered": "2014-05-11T12:44:28-12:00", "latitude": -50.387808, "longitude": -59.530469, "tags": [ "mollit", "incididunt", "do", "consectetur", "Lorem", "consequat", "pariatur" ], "friends": [ { "id": 0, "name": "Bernadette Miles" }, { "id": 1, "name": "Cortez Hays" }, { "id": 2, "name": "Matthews Whitley" } ], "greeting": "Hello, Pearson Swanson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d8ab1d8e2c6573014", "index": 143, "guid": "df2aef44-89a7-453a-a3e7-64349f469227", "isActive": false, "balance": "$1,891.23", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Padilla Stone", "gender": "male", "company": "KNOWLYSIS", "email": "padillastone@knowlysis.com", "phone": "+1 (932) 519-2592", "address": "604 Rockwell Place, Chical, Nevada, 3375", "about": "Laboris duis minim ad fugiat eiusmod. Proident est veniam cupidatat enim est in amet ut. Tempor est officia do nulla eiusmod. Quis proident sunt anim in aliquip esse aute esse minim esse do pariatur.\r\n", "registered": "2014-06-10T20:09:31-12:00", "latitude": 50.921129, "longitude": 102.322581, "tags": [ "esse", "id", "est", "est", "do", "dolore", "id" ], "friends": [ { "id": 0, "name": "Snow Villarreal" }, { "id": 1, "name": "Jeanne Howe" }, { "id": 2, "name": "Saunders Keith" } ], "greeting": "Hello, Padilla Stone! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d88f29ad3b51beed6", "index": 144, "guid": "177d21af-2a7a-4856-9a00-1ab674d59002", "isActive": true, "balance": "$1,359.60", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Kelly Mayo", "gender": "female", "company": "VIXO", "email": "kellymayo@vixo.com", "phone": "+1 (929) 584-2636", "address": "803 Albemarle Road, Advance, Minnesota, 5847", "about": "Ex dolore velit et incididunt proident. Adipisicing ut ut laboris nisi cillum et eiusmod culpa ex proident irure mollit ea aliqua. Ex sit ex ullamco eiusmod do anim sint fugiat et.\r\n", "registered": "2014-03-10T16:40:24-13:00", "latitude": 0.261318, "longitude": -158.272126, "tags": [ "sunt", "do", "pariatur", "cillum", "in", "nulla", "nostrud" ], "friends": [ { "id": 0, "name": "Beth Rosales" }, { "id": 1, "name": "Zimmerman Mason" }, { "id": 2, "name": "Leanne Warren" } ], "greeting": "Hello, Kelly Mayo! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d82d22c58f69399af", "index": 145, "guid": "96a9da3a-c195-4882-8da2-e155fec3c68a", "isActive": false, "balance": "$3,658.30", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Cook Barlow", "gender": "male", "company": "HOTCAKES", "email": "cookbarlow@hotcakes.com", "phone": "+1 (923) 406-3753", "address": "729 Scott Avenue, Kimmell, Missouri, 114", "about": "Incididunt ex deserunt labore ad aute consequat aliquip id elit est. Eu est ipsum cupidatat laboris eu laboris ex excepteur cillum ad duis amet adipisicing. Officia nostrud minim sit do cupidatat quis. Ad amet dolore veniam sit et voluptate esse aute sunt id nisi occaecat adipisicing fugiat. Quis incididunt ullamco proident irure veniam aliqua mollit.\r\n", "registered": "2014-07-27T19:05:01-12:00", "latitude": -73.545788, "longitude": -45.720336, "tags": [ "laboris", "ut", "deserunt", "eiusmod", "consequat", "id", "deserunt" ], "friends": [ { "id": 0, "name": "Jeanette Davis" }, { "id": 1, "name": "Marsh Solis" }, { "id": 2, "name": "Alexis Riggs" } ], "greeting": "Hello, Cook Barlow! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d959c89ae52ba719f", "index": 146, "guid": "197b2c6b-ad36-47dd-b203-71bcd12b5ccf", "isActive": false, "balance": "$1,477.62", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Burnett Matthews", "gender": "male", "company": "FROSNEX", "email": "burnettmatthews@frosnex.com", "phone": "+1 (938) 485-3851", "address": "201 Crosby Avenue, Slovan, Rhode Island, 7023", "about": "Commodo amet adipisicing reprehenderit dolore amet mollit eiusmod Lorem adipisicing velit eiusmod. Tempor sit laboris ad tempor exercitation do nisi nostrud tempor aute culpa ad. Ad laborum nulla incididunt aute. In consectetur voluptate deserunt cillum non ut dolor elit est quis nulla ex sunt. Do aliqua ut esse mollit velit et consectetur non dolore. Commodo anim in commodo consequat minim velit aute. Consectetur mollit cillum id ea nisi cillum adipisicing sunt esse voluptate amet est tempor ea.\r\n", "registered": "2014-09-02T19:50:27-12:00", "latitude": -82.066831, "longitude": 0.094978, "tags": [ "dolor", "deserunt", "duis", "velit", "Lorem", "do", "do" ], "friends": [ { "id": 0, "name": "Jenna Petty" }, { "id": 1, "name": "Beatrice Marshall" }, { "id": 2, "name": "Farrell Black" } ], "greeting": "Hello, Burnett Matthews! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dd1621f468b66167e", "index": 147, "guid": "0967942b-4c5b-49c7-a0fc-2ad58f5b37b7", "isActive": true, "balance": "$1,415.00", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Edwards Sykes", "gender": "male", "company": "FANGOLD", "email": "edwardssykes@fangold.com", "phone": "+1 (999) 410-3996", "address": "834 Kingston Avenue, Ona, Florida, 5041", "about": "Laboris nulla commodo proident aliqua do est esse nisi. Velit qui do aute ea Lorem Lorem amet commodo ea nulla eu officia. Laboris nostrud cillum nulla ut pariatur minim labore laboris eu deserunt.\r\n", "registered": "2014-08-16T14:58:01-12:00", "latitude": 35.044915, "longitude": -89.120369, "tags": [ "aliquip", "ex", "voluptate", "eu", "aliqua", "sit", "cupidatat" ], "friends": [ { "id": 0, "name": "Cathy Becker" }, { "id": 1, "name": "Day Cox" }, { "id": 2, "name": "Janie Murphy" } ], "greeting": "Hello, Edwards Sykes! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d28ebe66dd88f95b6", "index": 148, "guid": "b249a830-b4eb-4884-9d43-7b4bb45f626d", "isActive": true, "balance": "$1,767.04", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Mcgowan Kim", "gender": "male", "company": "EXIAND", "email": "mcgowankim@exiand.com", "phone": "+1 (823) 474-3924", "address": "346 Sackman Street, Idledale, North Carolina, 8019", "about": "Laboris duis aliqua dolor ut fugiat duis do fugiat occaecat. Ullamco sit proident tempor laboris. Deserunt do sit id eu occaecat voluptate magna ipsum ullamco tempor sit sint ullamco. Qui elit voluptate cillum veniam aliquip ad ullamco anim nisi fugiat. In eu adipisicing ut amet elit consequat esse eiusmod ullamco aliqua ad. Ad dolor consequat veniam et cillum excepteur in ipsum elit. Esse nisi do officia ullamco minim aute non est deserunt aliquip nostrud Lorem.\r\n", "registered": "2014-04-01T03:40:08-13:00", "latitude": -22.066466, "longitude": -91.814291, "tags": [ "amet", "deserunt", "deserunt", "sint", "ipsum", "ut", "eiusmod" ], "friends": [ { "id": 0, "name": "Beck Stafford" }, { "id": 1, "name": "Sophia Daniel" }, { "id": 2, "name": "Debora Hudson" } ], "greeting": "Hello, Mcgowan Kim! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dae4f8ab2e1603b08", "index": 149, "guid": "ba520a1d-d1e6-4ddc-ae6c-4f42b9d6ee4e", "isActive": false, "balance": "$1,427.70", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Madelyn Snow", "gender": "female", "company": "TURNABOUT", "email": "madelynsnow@turnabout.com", "phone": "+1 (846) 550-3228", "address": "276 Village Road, Nicholson, New Hampshire, 3432", "about": "Nulla adipisicing esse ullamco sit velit aliqua quis dolor velit aliquip non labore qui. Ea Lorem excepteur mollit occaecat mollit enim cillum. Minim cillum esse ea incididunt incididunt incididunt officia et excepteur. Amet officia proident qui nostrud veniam occaecat cillum nostrud in fugiat aliqua dolore duis nulla. Tempor minim laborum fugiat quis sint ea duis do elit minim magna est ullamco proident. Irure sunt minim pariatur magna nulla dolore cillum sint et irure commodo laborum fugiat veniam.\r\n", "registered": "2014-03-21T08:18:01-13:00", "latitude": -65.531011, "longitude": 124.615619, "tags": [ "minim", "duis", "dolor", "ex", "est", "amet", "sunt" ], "friends": [ { "id": 0, "name": "Lynn Patrick" }, { "id": 1, "name": "Vasquez Padilla" }, { "id": 2, "name": "Hicks Melendez" } ], "greeting": "Hello, Madelyn Snow! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d7b9a7d1f69869ec0", "index": 150, "guid": "18ecd29a-9461-4e7a-aa0b-6d4ce5babeef", "isActive": false, "balance": "$3,282.41", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Lori Vasquez", "gender": "female", "company": "PLASMOS", "email": "lorivasquez@plasmos.com", "phone": "+1 (993) 583-3274", "address": "218 Coyle Street, Madaket, Arkansas, 3854", "about": "Et ullamco culpa culpa non veniam anim sint cupidatat irure officia nisi officia. Fugiat enim esse elit eiusmod ut quis. Magna in laborum duis nulla duis sit. Aliqua quis ipsum do quis amet do sit velit laborum excepteur est minim do. Quis elit ipsum laborum sit dolor laboris dolore mollit reprehenderit sit ut occaecat officia.\r\n", "registered": "2014-05-08T00:24:36-12:00", "latitude": 9.827784, "longitude": -84.568277, "tags": [ "sit", "proident", "non", "dolor", "voluptate", "sit", "mollit" ], "friends": [ { "id": 0, "name": "Hopkins Tyler" }, { "id": 1, "name": "Maxine Mooney" }, { "id": 2, "name": "Rena Garrison" } ], "greeting": "Hello, Lori Vasquez! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d53e7bc5022946374", "index": 151, "guid": "40e60818-538b-4c18-b2a5-4cd6d140d129", "isActive": false, "balance": "$3,499.37", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Kaufman Best", "gender": "male", "company": "ISOTERNIA", "email": "kaufmanbest@isoternia.com", "phone": "+1 (993) 518-2335", "address": "407 Junius Street, Crayne, Iowa, 565", "about": "Occaecat occaecat consectetur magna labore. Enim voluptate irure Lorem fugiat voluptate dolor sint ut ad veniam duis. Dolor est laboris adipisicing quis ex eiusmod irure. Quis magna ex mollit non dolor reprehenderit proident est. Ea sit proident esse duis veniam. Non sunt adipisicing cillum amet ut nulla. Eu ea magna tempor est minim qui tempor anim veniam.\r\n", "registered": "2014-02-10T06:05:05-13:00", "latitude": 38.422272, "longitude": -176.718134, "tags": [ "minim", "commodo", "esse", "irure", "sit", "deserunt", "consequat" ], "friends": [ { "id": 0, "name": "April Mccormick" }, { "id": 1, "name": "Alfreda Cross" }, { "id": 2, "name": "Rosa Albert" } ], "greeting": "Hello, Kaufman Best! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1de50965024a12b548", "index": 152, "guid": "de75f2c7-a98b-470c-a345-5e752ef1822f", "isActive": true, "balance": "$2,764.57", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Ronda Newton", "gender": "female", "company": "COMVEYER", "email": "rondanewton@comveyer.com", "phone": "+1 (932) 438-2365", "address": "530 Brevoort Place, Escondida, Nebraska, 3675", "about": "Deserunt commodo sint culpa exercitation nisi culpa non officia in tempor Lorem voluptate Lorem. Aute dolore ipsum tempor deserunt ipsum commodo. Mollit minim ex reprehenderit ea dolor laborum laboris cupidatat nisi eiusmod aliqua. Esse proident nostrud esse mollit commodo exercitation proident ea incididunt sint nisi deserunt. Aliqua culpa aute laborum occaecat elit deserunt deserunt enim cillum culpa enim laborum commodo. Nisi magna ex id deserunt ullamco pariatur ad enim Lorem Lorem.\r\n", "registered": "2014-07-05T00:29:26-12:00", "latitude": 76.105746, "longitude": 44.761014, "tags": [ "Lorem", "laborum", "officia", "ut", "exercitation", "excepteur", "quis" ], "friends": [ { "id": 0, "name": "Marisa Kemp" }, { "id": 1, "name": "Paula Nelson" }, { "id": 2, "name": "Rosemary Duke" } ], "greeting": "Hello, Ronda Newton! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1df586eac9d901e0a5", "index": 153, "guid": "b876e689-4793-4c69-9cd7-106512eb8c51", "isActive": true, "balance": "$1,695.80", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Skinner Perez", "gender": "male", "company": "ONTALITY", "email": "skinnerperez@ontality.com", "phone": "+1 (898) 592-3666", "address": "110 Wythe Place, Lodoga, District Of Columbia, 1655", "about": "Quis Lorem reprehenderit id amet ea incididunt deserunt fugiat aute officia non eu. Aliquip consectetur anim laborum ipsum tempor reprehenderit do tempor excepteur ipsum aliqua nisi. Laboris eiusmod incididunt cillum cillum. Cupidatat ex exercitation et magna aute exercitation velit aute consectetur non adipisicing. Ipsum veniam cillum sint aliqua officia officia mollit aute occaecat enim. Esse fugiat quis dolore dolore nostrud.\r\n", "registered": "2014-07-26T17:57:51-12:00", "latitude": -59.531038, "longitude": -104.393014, "tags": [ "id", "elit", "sunt", "officia", "laboris", "sunt", "duis" ], "friends": [ { "id": 0, "name": "Katherine Hoffman" }, { "id": 1, "name": "Hodges Waller" }, { "id": 2, "name": "Mcmahon Bowman" } ], "greeting": "Hello, Skinner Perez! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d8ccf191bac466827", "index": 154, "guid": "f627062c-d47e-4cb0-9977-2107241b4ddc", "isActive": false, "balance": "$2,464.49", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Lakeisha Morales", "gender": "female", "company": "BISBA", "email": "lakeishamorales@bisba.com", "phone": "+1 (834) 456-2297", "address": "840 Calyer Street, Titanic, New Jersey, 7461", "about": "Occaecat reprehenderit ea quis dolore cupidatat occaecat anim aute eu enim reprehenderit sunt amet. Ex eu ea esse sint duis et cupidatat ullamco ea. Irure commodo aute quis mollit cillum ipsum culpa id voluptate.\r\n", "registered": "2014-06-06T13:26:23-12:00", "latitude": -16.635216, "longitude": 118.179508, "tags": [ "ut", "voluptate", "irure", "irure", "dolore", "reprehenderit", "in" ], "friends": [ { "id": 0, "name": "Aguirre Mejia" }, { "id": 1, "name": "Jodi Hurst" }, { "id": 2, "name": "Lena Kennedy" } ], "greeting": "Hello, Lakeisha Morales! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d149d2dcc3f8e763c", "index": 155, "guid": "d3790b63-f4a9-4afd-b8b8-f6af027d0f2c", "isActive": false, "balance": "$1,592.23", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Montgomery Farrell", "gender": "male", "company": "TASMANIA", "email": "montgomeryfarrell@tasmania.com", "phone": "+1 (949) 508-2047", "address": "455 Abbey Court, Edneyville, Palau, 9683", "about": "Enim ipsum adipisicing in commodo non labore irure incididunt sunt elit ut. Dolore sint aute exercitation non tempor pariatur culpa ea officia. Duis eu commodo nisi incididunt aliqua commodo laborum dolore dolore et. Do sit ea commodo culpa pariatur occaecat amet sint qui cillum est tempor.\r\n", "registered": "2014-07-21T16:40:20-12:00", "latitude": 5.024695, "longitude": 64.993334, "tags": [ "eu", "aliquip", "labore", "reprehenderit", "anim", "reprehenderit", "consequat" ], "friends": [ { "id": 0, "name": "Beulah Doyle" }, { "id": 1, "name": "Riggs Hoover" }, { "id": 2, "name": "Lana Dalton" } ], "greeting": "Hello, Montgomery Farrell! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d3a046b16b90861a7", "index": 156, "guid": "cf3115d1-e5ff-4839-b39f-00e470c8485d", "isActive": false, "balance": "$1,134.39", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Sykes Mcdowell", "gender": "male", "company": "EMTRAC", "email": "sykesmcdowell@emtrac.com", "phone": "+1 (809) 467-3656", "address": "298 Stewart Street, Westphalia, Puerto Rico, 8325", "about": "Quis non nulla velit minim labore consequat dolore est. Ipsum irure excepteur est ad ad irure in esse dolore adipisicing aute magna elit. Aliquip consequat ex enim sit duis dolor sint do.\r\n", "registered": "2014-03-12T23:22:15-13:00", "latitude": -61.797164, "longitude": -166.388439, "tags": [ "nisi", "cillum", "ipsum", "ut", "non", "enim", "laboris" ], "friends": [ { "id": 0, "name": "Houston Marsh" }, { "id": 1, "name": "Tara Juarez" }, { "id": 2, "name": "Kane Dillard" } ], "greeting": "Hello, Sykes Mcdowell! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1db403a2e06959a07c", "index": 157, "guid": "7c1c4c78-abdb-49de-b442-1ab1a287169a", "isActive": false, "balance": "$3,781.82", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Angel Lee", "gender": "female", "company": "ENERFORCE", "email": "angellee@enerforce.com", "phone": "+1 (827) 581-2200", "address": "195 Fay Court, Lacomb, California, 3217", "about": "Mollit consectetur aliqua fugiat tempor labore cillum do sunt non dolore aliquip tempor ullamco culpa. Eu eu non velit aliquip aliquip. Reprehenderit aute veniam in elit officia ea.\r\n", "registered": "2014-02-24T01:47:27-13:00", "latitude": -83.949224, "longitude": -69.948844, "tags": [ "velit", "mollit", "elit", "minim", "aute", "esse", "sit" ], "friends": [ { "id": 0, "name": "Flossie Mayer" }, { "id": 1, "name": "Lott Beard" }, { "id": 2, "name": "Hazel Randolph" } ], "greeting": "Hello, Angel Lee! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dedccc8edbad96aca", "index": 158, "guid": "32ab26ac-4953-4c2b-90bd-ed1f80f3e702", "isActive": false, "balance": "$2,779.40", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Tisha Rocha", "gender": "female", "company": "PUSHCART", "email": "tisharocha@pushcart.com", "phone": "+1 (852) 461-3696", "address": "922 Morgan Avenue, Martinez, Vermont, 2165", "about": "Culpa commodo amet occaecat eiusmod pariatur ipsum est non excepteur amet esse fugiat esse deserunt. Excepteur cupidatat enim non veniam magna aute irure ut veniam velit. Amet est reprehenderit est est anim reprehenderit culpa magna consectetur.\r\n", "registered": "2014-09-21T04:31:16-12:00", "latitude": 53.172549, "longitude": 9.791565, "tags": [ "laboris", "sint", "esse", "tempor", "adipisicing", "esse", "irure" ], "friends": [ { "id": 0, "name": "Osborne Owen" }, { "id": 1, "name": "Rice Justice" }, { "id": 2, "name": "Dawson Walters" } ], "greeting": "Hello, Tisha Rocha! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d79ab71a7fcc55863", "index": 159, "guid": "b0857b62-198b-4c48-ab24-728118c91517", "isActive": false, "balance": "$2,406.80", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Deena Moon", "gender": "female", "company": "ISOPLEX", "email": "deenamoon@isoplex.com", "phone": "+1 (838) 419-2403", "address": "568 Vandam Street, Bluetown, Indiana, 265", "about": "Sunt sunt reprehenderit sunt dolor enim magna adipisicing ut. Labore commodo esse nulla proident est fugiat sint nostrud aute. Tempor aliquip nulla amet dolor aute. Occaecat deserunt eu pariatur laborum. Tempor aliqua aliquip eu ut magna exercitation. Dolore mollit commodo cupidatat id ad nostrud deserunt ipsum duis sint excepteur laboris.\r\n", "registered": "2014-08-03T16:12:54-12:00", "latitude": -47.655773, "longitude": 126.961391, "tags": [ "occaecat", "dolor", "laboris", "esse", "voluptate", "ex", "aliquip" ], "friends": [ { "id": 0, "name": "Roxie Byers" }, { "id": 1, "name": "Reilly Mcdaniel" }, { "id": 2, "name": "Verna Pearson" } ], "greeting": "Hello, Deena Moon! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d9a0eab5164ca33bc", "index": 160, "guid": "f4f0fcff-f024-4f6f-8dbb-871f6afe680d", "isActive": true, "balance": "$2,910.92", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Gena Mcintosh", "gender": "female", "company": "GENESYNK", "email": "genamcintosh@genesynk.com", "phone": "+1 (983) 563-2707", "address": "869 Cox Place, Gallina, Illinois, 6986", "about": "In sunt voluptate officia occaecat est Lorem id labore. Aliqua excepteur occaecat magna minim laboris do enim pariatur elit in do ad eu. Non consectetur laborum nisi incididunt laboris cupidatat consequat sint aliquip.\r\n", "registered": "2014-04-25T01:51:35-12:00", "latitude": 23.379379, "longitude": 168.619704, "tags": [ "exercitation", "exercitation", "culpa", "labore", "nostrud", "amet", "cupidatat" ], "friends": [ { "id": 0, "name": "Candice Robertson" }, { "id": 1, "name": "Effie Sherman" }, { "id": 2, "name": "Oneill Gillespie" } ], "greeting": "Hello, Gena Mcintosh! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1df863d7ccc216f1d6", "index": 161, "guid": "dbf4eb4a-033e-4505-bb09-1f792270f157", "isActive": false, "balance": "$2,126.06", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Calderon Glass", "gender": "male", "company": "REALMO", "email": "calderonglass@realmo.com", "phone": "+1 (829) 484-2849", "address": "435 Verona Place, Bartley, South Carolina, 8827", "about": "Reprehenderit cupidatat dolor cillum ea. Voluptate aliquip sit elit reprehenderit reprehenderit enim reprehenderit aliqua. Eu et officia mollit commodo id ex irure veniam aute. Pariatur eiusmod laboris ipsum do deserunt dolor sunt do incididunt quis nisi veniam. Ullamco cupidatat ad excepteur mollit officia eu tempor aliquip occaecat voluptate labore incididunt in.\r\n", "registered": "2014-05-05T23:43:20-12:00", "latitude": -77.170389, "longitude": 6.278145, "tags": [ "ut", "laboris", "sunt", "reprehenderit", "amet", "et", "aliqua" ], "friends": [ { "id": 0, "name": "Brittany Wells" }, { "id": 1, "name": "Tamara Love" }, { "id": 2, "name": "Erika Owens" } ], "greeting": "Hello, Calderon Glass! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d8c4ec355a15da690", "index": 162, "guid": "6dbb0d9f-90c4-445a-8d95-f8c418922aab", "isActive": false, "balance": "$3,913.82", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Lindsey Levy", "gender": "male", "company": "SHEPARD", "email": "lindseylevy@shepard.com", "phone": "+1 (959) 476-3683", "address": "965 Falmouth Street, Noxen, American Samoa, 3160", "about": "Nostrud labore eu quis minim culpa. Consectetur laboris do anim tempor est cillum duis ea aute ullamco cupidatat irure aliqua deserunt. Cillum elit proident enim duis ullamco adipisicing fugiat cupidatat laboris enim. Consectetur excepteur commodo tempor irure aliqua qui ea ad pariatur nisi dolor cillum eu ut. Culpa nisi esse irure adipisicing et quis exercitation ad ex pariatur ad ut. Ea ut ea est amet quis enim proident duis sit.\r\n", "registered": "2014-05-04T16:07:32-12:00", "latitude": 10.267807, "longitude": 134.419503, "tags": [ "fugiat", "fugiat", "do", "consectetur", "occaecat", "excepteur", "magna" ], "friends": [ { "id": 0, "name": "Dawn Dillon" }, { "id": 1, "name": "Gilmore Williamson" }, { "id": 2, "name": "Alejandra Ware" } ], "greeting": "Hello, Lindsey Levy! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dde4bd2f21a577fca", "index": 163, "guid": "270aaf98-434f-4c05-b655-0898ca227817", "isActive": true, "balance": "$1,166.49", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Casey Alston", "gender": "male", "company": "INSOURCE", "email": "caseyalston@insource.com", "phone": "+1 (863) 412-3567", "address": "262 Stoddard Place, Loomis, Delaware, 1369", "about": "Incididunt irure aute pariatur proident nulla irure esse consectetur qui eu. Aliquip consequat laborum labore exercitation exercitation nisi qui consequat sit. Enim consequat aute anim mollit ea est dolore exercitation eu enim tempor officia eu.\r\n", "registered": "2014-02-27T23:05:55-13:00", "latitude": -7.26199, "longitude": -154.174448, "tags": [ "sit", "Lorem", "in", "do", "exercitation", "consectetur", "irure" ], "friends": [ { "id": 0, "name": "Boone Nieves" }, { "id": 1, "name": "Campbell Deleon" }, { "id": 2, "name": "Lilly Parrish" } ], "greeting": "Hello, Casey Alston! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dc97baef4076be02b", "index": 164, "guid": "f1975627-3d85-4f8d-8e4c-55f985fdf983", "isActive": true, "balance": "$3,083.10", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Annie Farley", "gender": "female", "company": "PEARLESSA", "email": "anniefarley@pearlessa.com", "phone": "+1 (925) 573-3014", "address": "143 Dover Street, Wawona, Pennsylvania, 5272", "about": "Ea ullamco ex anim sit quis ut veniam quis ad pariatur nostrud occaecat veniam. Non qui ad qui commodo et. Tempor eu eu occaecat irure. Commodo magna in labore esse.\r\n", "registered": "2014-03-04T05:42:48-13:00", "latitude": -30.985206, "longitude": 134.858854, "tags": [ "nostrud", "Lorem", "proident", "sunt", "voluptate", "non", "sunt" ], "friends": [ { "id": 0, "name": "Moody Pugh" }, { "id": 1, "name": "Blanca Barber" }, { "id": 2, "name": "Walker Hayes" } ], "greeting": "Hello, Annie Farley! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d4117c580d6e2150f", "index": 165, "guid": "32eb7f4d-6263-4ef4-8bc4-38c24f2f38b5", "isActive": false, "balance": "$3,231.74", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Hayden Pennington", "gender": "male", "company": "ARTWORLDS", "email": "haydenpennington@artworlds.com", "phone": "+1 (835) 507-3342", "address": "277 Kent Avenue, Vandiver, Georgia, 9087", "about": "Laboris eiusmod nulla et cupidatat duis excepteur exercitation. Officia ex cillum commodo anim aliqua. Fugiat ea dolor cupidatat quis nisi in nisi qui do sit quis. Incididunt laboris proident cupidatat incididunt velit magna sint quis adipisicing non labore. Aliqua aliqua incididunt occaecat sunt reprehenderit cillum amet non esse ullamco aliqua pariatur. Occaecat nostrud voluptate qui dolor magna nisi officia id laboris ad.\r\n", "registered": "2014-07-30T16:40:42-12:00", "latitude": -42.004351, "longitude": -39.907443, "tags": [ "tempor", "ut", "culpa", "aliqua", "aliquip", "irure", "ullamco" ], "friends": [ { "id": 0, "name": "Tameka May" }, { "id": 1, "name": "Jerry Hyde" }, { "id": 2, "name": "Sutton Nunez" } ], "greeting": "Hello, Hayden Pennington! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d11cad16032e8677c", "index": 166, "guid": "3bf21eb7-7c4b-4d35-b0e2-30ab3d48347c", "isActive": true, "balance": "$3,095.80", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Morgan Hodge", "gender": "female", "company": "ZEPITOPE", "email": "morganhodge@zepitope.com", "phone": "+1 (803) 472-3988", "address": "406 Waldane Court, Chelsea, North Dakota, 9904", "about": "Nulla qui velit id id velit labore duis laboris pariatur in reprehenderit reprehenderit ut. Dolore non sit sint aute voluptate exercitation. Cupidatat officia eiusmod dolor commodo cupidatat culpa dolor consectetur nisi non cillum ad. Et reprehenderit et deserunt aute esse ea amet aute magna ad pariatur nisi culpa irure. Lorem consectetur ea sint ad id laboris excepteur ex culpa velit sit excepteur. Consequat Lorem dolore adipisicing do fugiat magna deserunt duis commodo sit elit veniam. Deserunt labore in laboris officia labore laborum mollit nostrud labore aliquip labore nostrud excepteur commodo.\r\n", "registered": "2014-03-26T02:31:21-13:00", "latitude": -46.63204, "longitude": -22.296287, "tags": [ "qui", "adipisicing", "eu", "magna", "non", "laboris", "irure" ], "friends": [ { "id": 0, "name": "Benton Dominguez" }, { "id": 1, "name": "Lynne Mitchell" }, { "id": 2, "name": "Deloris Rogers" } ], "greeting": "Hello, Morgan Hodge! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ddfef6c664c5ee633", "index": 167, "guid": "8bb1bd89-5b1e-4532-9ec8-27210a77aee2", "isActive": false, "balance": "$3,342.28", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Harvey Odom", "gender": "male", "company": "CEDWARD", "email": "harveyodom@cedward.com", "phone": "+1 (896) 530-2490", "address": "995 Victor Road, Aguila, Louisiana, 3129", "about": "Sit reprehenderit officia excepteur ut anim officia duis cupidatat commodo sint mollit amet eiusmod irure. In sit consequat est et. Mollit aute sint anim dolor ea voluptate tempor fugiat aute sint aliqua excepteur esse qui. Et exercitation ullamco dolore cupidatat esse do. Eu dolor duis dolor cupidatat eiusmod cupidatat tempor veniam incididunt enim incididunt commodo do qui.\r\n", "registered": "2014-05-07T22:39:54-12:00", "latitude": 8.376947, "longitude": 96.187765, "tags": [ "sint", "aliqua", "cupidatat", "voluptate", "cupidatat", "est", "sunt" ], "friends": [ { "id": 0, "name": "Craig Brock" }, { "id": 1, "name": "Miller Dixon" }, { "id": 2, "name": "Shanna Barnes" } ], "greeting": "Hello, Harvey Odom! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d3c66dd026ad8b386", "index": 168, "guid": "3a743c7e-35f9-4c96-ba26-b4c43b4e2d05", "isActive": false, "balance": "$2,815.63", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Richards Massey", "gender": "male", "company": "ZENSURE", "email": "richardsmassey@zensure.com", "phone": "+1 (942) 570-3874", "address": "898 Horace Court, Datil, Northern Mariana Islands, 4979", "about": "Minim adipisicing Lorem consequat in dolore in dolor incididunt occaecat. Esse eu laborum proident eu non in. Ut nostrud esse ad adipisicing labore deserunt anim. Commodo proident duis cillum tempor amet dolor.\r\n", "registered": "2014-02-06T13:29:55-13:00", "latitude": 0.481823, "longitude": -60.286345, "tags": [ "ipsum", "exercitation", "officia", "eu", "enim", "pariatur", "in" ], "friends": [ { "id": 0, "name": "Marla Morton" }, { "id": 1, "name": "Robbie Landry" }, { "id": 2, "name": "Deanna Garcia" } ], "greeting": "Hello, Richards Massey! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d4290b751cf003113", "index": 169, "guid": "c947f2df-909f-4bcf-98cf-7319a62127b2", "isActive": true, "balance": "$2,489.41", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Tonya Bowers", "gender": "female", "company": "PHOLIO", "email": "tonyabowers@pholio.com", "phone": "+1 (811) 428-2081", "address": "134 Sands Street, Haring, Colorado, 8897", "about": "Consectetur magna deserunt minim ex. Veniam ad exercitation sit proident nulla eu. Magna laborum qui veniam deserunt laboris minim sint reprehenderit. Sit dolor non minim Lorem cillum et nisi id tempor velit mollit. Mollit duis incididunt velit nostrud tempor excepteur reprehenderit. Cillum reprehenderit et pariatur ex id.\r\n", "registered": "2014-03-30T07:20:30-13:00", "latitude": -54.384567, "longitude": 36.563616, "tags": [ "eu", "deserunt", "occaecat", "nisi", "occaecat", "eiusmod", "commodo" ], "friends": [ { "id": 0, "name": "Odom Whitaker" }, { "id": 1, "name": "Watson Gordon" }, { "id": 2, "name": "Fischer Downs" } ], "greeting": "Hello, Tonya Bowers! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d875b3f7bf846c1f6", "index": 170, "guid": "59e43a73-c2c3-487a-bdcd-e9619bd94372", "isActive": false, "balance": "$1,611.50", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Sharlene Rose", "gender": "female", "company": "ZOSIS", "email": "sharlenerose@zosis.com", "phone": "+1 (942) 573-3295", "address": "348 Cropsey Avenue, Saticoy, Idaho, 942", "about": "Elit pariatur amet ut consequat esse fugiat ullamco consectetur. Laboris ullamco ex fugiat sint. Aliquip occaecat eu aliqua cillum deserunt magna elit voluptate. Elit eu velit ex minim deserunt nostrud qui.\r\n", "registered": "2014-05-26T20:49:39-12:00", "latitude": -72.838808, "longitude": -91.955569, "tags": [ "nulla", "in", "magna", "velit", "do", "nulla", "voluptate" ], "friends": [ { "id": 0, "name": "Claudette Blackwell" }, { "id": 1, "name": "Potter Steele" }, { "id": 2, "name": "Kaitlin Dorsey" } ], "greeting": "Hello, Sharlene Rose! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dca7559169796adfd", "index": 171, "guid": "fcf40094-f232-4fb1-9080-dc1465287a56", "isActive": false, "balance": "$3,258.29", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Kimberley Burch", "gender": "female", "company": "IDEGO", "email": "kimberleyburch@idego.com", "phone": "+1 (927) 436-2397", "address": "758 Varick Street, Greenbackville, Marshall Islands, 7290", "about": "Sint excepteur sint laboris ipsum eiusmod. Aliquip consectetur fugiat velit mollit irure aute voluptate. Aute dolore fugiat cupidatat laboris occaecat exercitation consectetur aliquip duis incididunt. Culpa dolor qui incididunt id elit duis velit ipsum quis labore laborum proident. Sit ad laborum cupidatat excepteur officia adipisicing elit laboris cillum. In veniam proident sint fugiat dolore cillum culpa eiusmod quis nulla eu ipsum deserunt. Excepteur ex incididunt ipsum eiusmod.\r\n", "registered": "2014-01-25T05:11:02-13:00", "latitude": 0.293621, "longitude": -150.933211, "tags": [ "et", "velit", "laborum", "id", "labore", "id", "cupidatat" ], "friends": [ { "id": 0, "name": "Crosby Miller" }, { "id": 1, "name": "Kelly Gross" }, { "id": 2, "name": "Avila Rowe" } ], "greeting": "Hello, Kimberley Burch! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d004193808c24fe67", "index": 172, "guid": "29d18d95-7fac-4966-a2e2-da18f45d7721", "isActive": true, "balance": "$3,065.72", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Sloan Fitzgerald", "gender": "male", "company": "ISOPOP", "email": "sloanfitzgerald@isopop.com", "phone": "+1 (905) 498-3381", "address": "482 Tehama Street, Beechmont, New York, 2515", "about": "Voluptate ea laborum sunt exercitation deserunt reprehenderit. Sint ipsum ex ipsum duis Lorem occaecat proident. Reprehenderit irure aliquip Lorem esse dolore officia occaecat sunt veniam deserunt.\r\n", "registered": "2014-01-07T15:06:53-13:00", "latitude": 78.622246, "longitude": 122.303702, "tags": [ "id", "esse", "est", "sint", "cupidatat", "magna", "proident" ], "friends": [ { "id": 0, "name": "Brittney Burris" }, { "id": 1, "name": "Hall Case" }, { "id": 2, "name": "Moran Hines" } ], "greeting": "Hello, Sloan Fitzgerald! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dc3f4c38007c9d0cc", "index": 173, "guid": "80f3d8ad-b042-423a-8168-c0b23536371d", "isActive": true, "balance": "$2,106.38", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Ofelia Contreras", "gender": "female", "company": "VIAGRAND", "email": "ofeliacontreras@viagrand.com", "phone": "+1 (967) 464-3622", "address": "602 Amersfort Place, Bendon, Guam, 6439", "about": "Minim culpa nostrud aliqua consequat qui incididunt sint magna mollit aliqua labore. Eu irure est esse officia aute dolor nisi sunt sit minim nostrud. Qui minim magna amet culpa exercitation nisi eu in officia.\r\n", "registered": "2014-06-11T12:02:38-12:00", "latitude": -49.092463, "longitude": 69.541151, "tags": [ "cupidatat", "esse", "amet", "consequat", "consequat", "do", "in" ], "friends": [ { "id": 0, "name": "Katelyn Chen" }, { "id": 1, "name": "Alexandria Bean" }, { "id": 2, "name": "Cooke Burns" } ], "greeting": "Hello, Ofelia Contreras! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d8addeaab945791ea", "index": 174, "guid": "d7e47de6-cc52-4cbd-a801-fda954b03726", "isActive": false, "balance": "$1,767.48", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Sullivan Bruce", "gender": "male", "company": "VORATAK", "email": "sullivanbruce@voratak.com", "phone": "+1 (893) 538-3320", "address": "980 Hall Street, Davenport, Virgin Islands, 6331", "about": "Sint minim laboris velit aliquip magna pariatur occaecat incididunt. Velit est velit dolore mollit eu. Duis dolor nostrud cupidatat reprehenderit. Consequat consequat Lorem quis laboris pariatur. Ea quis commodo in eu quis culpa cillum magna magna irure. Irure sit excepteur nulla eu.\r\n", "registered": "2014-04-22T18:09:52-12:00", "latitude": 82.997431, "longitude": -138.063705, "tags": [ "qui", "nulla", "enim", "cillum", "excepteur", "ex", "pariatur" ], "friends": [ { "id": 0, "name": "Monique Gilliam" }, { "id": 1, "name": "Andrea Weiss" }, { "id": 2, "name": "Christa Sharp" } ], "greeting": "Hello, Sullivan Bruce! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1de9518bdcccb3196d", "index": 175, "guid": "0bac65c9-b75a-4166-a476-568a6413cea6", "isActive": true, "balance": "$2,919.15", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Gamble Rivera", "gender": "male", "company": "ONTAGENE", "email": "gamblerivera@ontagene.com", "phone": "+1 (835) 565-2801", "address": "169 Shale Street, Emerald, Massachusetts, 3132", "about": "Lorem ex ea incididunt ea proident velit voluptate sit eiusmod proident quis cupidatat. Qui occaecat tempor magna reprehenderit ea id non ut do. Ullamco Lorem elit exercitation in in anim veniam. Velit occaecat deserunt velit ea veniam veniam sint officia non exercitation nisi.\r\n", "registered": "2014-02-23T09:15:41-13:00", "latitude": 43.991834, "longitude": -108.413573, "tags": [ "irure", "esse", "culpa", "incididunt", "elit", "laboris", "mollit" ], "friends": [ { "id": 0, "name": "Chaney Hobbs" }, { "id": 1, "name": "Jimenez Parker" }, { "id": 2, "name": "Alicia West" } ], "greeting": "Hello, Gamble Rivera! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ddd4b8da0a97ac3be", "index": 176, "guid": "a7aae0f4-fd22-4fef-a8fb-730b0004117a", "isActive": true, "balance": "$2,751.82", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Mary Peck", "gender": "female", "company": "LUNCHPOD", "email": "marypeck@lunchpod.com", "phone": "+1 (801) 475-3354", "address": "506 Montague Terrace, Brownlee, Utah, 7526", "about": "Ullamco id duis ex reprehenderit ullamco incididunt labore mollit reprehenderit nulla aliqua quis sint. Et culpa non nisi adipisicing quis dolor. Proident nisi laborum ullamco do dolore. Qui ipsum amet aute ullamco enim sint proident irure consectetur commodo quis anim. Mollit Lorem quis velit aute adipisicing voluptate sit culpa consequat sit magna sunt. Dolor deserunt deserunt Lorem tempor ipsum officia voluptate proident officia Lorem aliqua ex tempor.\r\n", "registered": "2014-04-03T15:23:01-13:00", "latitude": 28.33112, "longitude": 59.492488, "tags": [ "enim", "ipsum", "in", "ea", "dolor", "exercitation", "ipsum" ], "friends": [ { "id": 0, "name": "Hood Hogan" }, { "id": 1, "name": "Tammie Coffey" }, { "id": 2, "name": "Rene Snider" } ], "greeting": "Hello, Mary Peck! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d1ebd10262123e565", "index": 177, "guid": "9401da3d-e52d-42c3-9392-05f33c680da1", "isActive": true, "balance": "$1,632.99", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Melendez Flores", "gender": "male", "company": "COREPAN", "email": "melendezflores@corepan.com", "phone": "+1 (957) 557-3843", "address": "183 Prospect Place, Sattley, Montana, 3198", "about": "Esse Lorem consectetur dolor ullamco deserunt dolor veniam aliqua reprehenderit sint eu dolore. Ad in voluptate aute et sunt. Ullamco nostrud voluptate anim in dolor amet sint. Id anim labore eiusmod et anim excepteur elit ea in commodo ut eu. Est irure culpa cupidatat elit cupidatat proident pariatur officia est pariatur in duis veniam id.\r\n", "registered": "2014-09-08T16:02:42-12:00", "latitude": 18.8402, "longitude": -102.275187, "tags": [ "dolor", "nisi", "id", "irure", "est", "cupidatat", "irure" ], "friends": [ { "id": 0, "name": "Natalia Harrell" }, { "id": 1, "name": "Cecilia Henson" }, { "id": 2, "name": "Cervantes Booth" } ], "greeting": "Hello, Melendez Flores! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1de07dd30bcb1a8bdb", "index": 178, "guid": "1d414cc3-a4af-439d-a01d-676ff6f24f82", "isActive": false, "balance": "$3,859.59", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Jacqueline Willis", "gender": "female", "company": "JOVIOLD", "email": "jacquelinewillis@joviold.com", "phone": "+1 (988) 568-2945", "address": "952 Anchorage Place, Takilma, Wisconsin, 5504", "about": "Tempor reprehenderit exercitation exercitation laborum culpa aliquip dolore sit. Enim duis est incididunt pariatur non qui excepteur aliquip nisi. Consequat qui veniam anim ipsum incididunt non. Exercitation laborum ullamco elit do nisi minim ex eu excepteur. Lorem sunt tempor culpa sint irure exercitation culpa. Commodo excepteur quis consequat deserunt.\r\n", "registered": "2014-01-23T13:30:38-13:00", "latitude": 38.8213, "longitude": -28.796229, "tags": [ "quis", "anim", "nisi", "ad", "commodo", "esse", "proident" ], "friends": [ { "id": 0, "name": "Wilkins Carpenter" }, { "id": 1, "name": "Marcy Pena" }, { "id": 2, "name": "Mcclure Washington" } ], "greeting": "Hello, Jacqueline Willis! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1db21d436cd49044b9", "index": 179, "guid": "6e11a358-4739-431d-b47a-6cd952c461f2", "isActive": false, "balance": "$2,051.28", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Rollins Potter", "gender": "male", "company": "EBIDCO", "email": "rollinspotter@ebidco.com", "phone": "+1 (973) 461-2205", "address": "569 Essex Street, Walker, Maine, 737", "about": "Magna minim pariatur ut aute. Cupidatat ad excepteur ut proident cupidatat tempor aliquip sit. Velit consectetur id eu Lorem esse sint.\r\n", "registered": "2014-07-02T15:41:21-12:00", "latitude": -61.81434, "longitude": -6.43867, "tags": [ "fugiat", "aliqua", "in", "sunt", "pariatur", "ullamco", "velit" ], "friends": [ { "id": 0, "name": "Heidi Gates" }, { "id": 1, "name": "Le Hopkins" }, { "id": 2, "name": "Conley Gilbert" } ], "greeting": "Hello, Rollins Potter! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dfe409242667729b9", "index": 180, "guid": "e67c6bc7-649b-4c49-8be8-683a7f7fa01a", "isActive": false, "balance": "$3,877.72", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Macias Walls", "gender": "male", "company": "RODEMCO", "email": "maciaswalls@rodemco.com", "phone": "+1 (828) 581-2664", "address": "426 Fiske Place, Bellamy, Virginia, 3190", "about": "Fugiat veniam deserunt ex minim nisi Lorem. Eiusmod officia ullamco do voluptate amet dolore tempor qui Lorem sit ut. Proident aliqua do ex labore. Laborum ex enim irure non esse minim velit ullamco labore qui. Nisi commodo aute consequat cillum laborum excepteur occaecat sunt in esse aliquip. In elit irure sit aute minim ad in in ex non aliquip. Esse est incididunt sunt nulla veniam duis incididunt dolor cillum mollit voluptate Lorem minim.\r\n", "registered": "2014-08-04T21:21:47-12:00", "latitude": 71.807201, "longitude": -72.9376, "tags": [ "incididunt", "laboris", "ex", "amet", "ullamco", "et", "labore" ], "friends": [ { "id": 0, "name": "Brianna Franklin" }, { "id": 1, "name": "Church Reed" }, { "id": 2, "name": "Shelby Odonnell" } ], "greeting": "Hello, Macias Walls! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d04809b44c421e5e3", "index": 181, "guid": "36d1aa1b-7923-4209-98f4-0fad72d7e1af", "isActive": false, "balance": "$3,481.16", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Cathryn Chang", "gender": "female", "company": "OVIUM", "email": "cathrynchang@ovium.com", "phone": "+1 (849) 579-2758", "address": "413 Sunnyside Court, Freeburn, Kentucky, 7905", "about": "Duis occaecat enim enim adipisicing incididunt nostrud. Cupidatat magna sit mollit est occaecat id labore ad occaecat. In cupidatat do eiusmod sit culpa.\r\n", "registered": "2014-02-15T09:25:44-13:00", "latitude": 47.272554, "longitude": -41.416173, "tags": [ "est", "consectetur", "cillum", "consequat", "irure", "ex", "nisi" ], "friends": [ { "id": 0, "name": "Bennett Snyder" }, { "id": 1, "name": "Fowler Elliott" }, { "id": 2, "name": "Candace Neal" } ], "greeting": "Hello, Cathryn Chang! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d865411e3df5323fc", "index": 182, "guid": "bef65213-139a-4f39-af2b-7d234feeecce", "isActive": true, "balance": "$1,442.66", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Castaneda Boone", "gender": "male", "company": "HALAP", "email": "castanedaboone@halap.com", "phone": "+1 (997) 481-3263", "address": "548 Louisiana Avenue, Canterwood, Connecticut, 526", "about": "Aliqua excepteur quis ea aliquip ut reprehenderit cillum labore excepteur velit non in incididunt. Nisi in eu dolor do anim deserunt laboris. Nisi velit reprehenderit ex commodo adipisicing laboris laboris proident esse id duis dolor. Esse ea est laborum ea adipisicing est elit do dolore. Fugiat exercitation ipsum labore anim velit reprehenderit.\r\n", "registered": "2014-03-05T07:18:40-13:00", "latitude": 52.253053, "longitude": 148.102413, "tags": [ "anim", "ut", "laborum", "nostrud", "ea", "aliqua", "eu" ], "friends": [ { "id": 0, "name": "Daisy Valencia" }, { "id": 1, "name": "Mayra Robinson" }, { "id": 2, "name": "Marisol Macdonald" } ], "greeting": "Hello, Castaneda Boone! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d155460e553c1b60d", "index": 183, "guid": "3b2f7364-dcb2-4cc3-b8e9-64f276dbee93", "isActive": false, "balance": "$1,828.17", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Linda Santiago", "gender": "female", "company": "EXOSIS", "email": "lindasantiago@exosis.com", "phone": "+1 (934) 538-2379", "address": "828 Fountain Avenue, Waiohinu, Mississippi, 4811", "about": "Ipsum amet incididunt laboris et ad id aute. Enim laboris veniam ad ipsum voluptate ipsum occaecat qui. Cillum minim mollit tempor dolore excepteur consectetur ipsum excepteur ullamco veniam quis occaecat velit. Eu sunt non voluptate voluptate laborum qui proident ea qui dolor sint labore ut laboris. Aliquip adipisicing non excepteur qui cupidatat eu ad eiusmod culpa nisi ea.\r\n", "registered": "2014-07-07T06:28:16-12:00", "latitude": -35.773416, "longitude": -174.279129, "tags": [ "enim", "amet", "dolore", "id", "minim", "ipsum", "exercitation" ], "friends": [ { "id": 0, "name": "Pickett Bartlett" }, { "id": 1, "name": "Owen Weeks" }, { "id": 2, "name": "Mcknight Lott" } ], "greeting": "Hello, Linda Santiago! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d87c1b30ac4c15aa5", "index": 184, "guid": "57c6d216-4399-458d-8408-28743cab5f1b", "isActive": false, "balance": "$3,404.35", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Burton Oconnor", "gender": "male", "company": "HYDROCOM", "email": "burtonoconnor@hydrocom.com", "phone": "+1 (851) 412-3292", "address": "165 Catherine Street, Tampico, Washington, 9108", "about": "Amet Lorem minim ea Lorem mollit qui elit sit ut voluptate aliquip consectetur voluptate. Non dolore ut commodo minim esse pariatur nisi Lorem magna aute aute minim ex. Lorem do irure amet exercitation qui sunt culpa ad enim aliquip nisi nisi.\r\n", "registered": "2014-01-09T14:21:11-13:00", "latitude": -36.361804, "longitude": -122.387414, "tags": [ "et", "labore", "sint", "ipsum", "ea", "sunt", "labore" ], "friends": [ { "id": 0, "name": "Joy Dejesus" }, { "id": 1, "name": "Little Cline" }, { "id": 2, "name": "Mason Larson" } ], "greeting": "Hello, Burton Oconnor! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d5ded4381a8095a1b", "index": 185, "guid": "caa461b6-2113-4730-8b36-8d13bb22b141", "isActive": false, "balance": "$1,260.35", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Melissa Velazquez", "gender": "female", "company": "AFFLUEX", "email": "melissavelazquez@affluex.com", "phone": "+1 (849) 522-2759", "address": "212 Irwin Street, Lupton, Tennessee, 7428", "about": "Excepteur deserunt nostrud laborum dolore veniam elit dolor ad officia proident. Consequat laboris laboris sunt Lorem quis fugiat sint aute excepteur laboris cillum. Tempor minim Lorem esse nostrud tempor ea magna sunt eu pariatur officia officia occaecat. Elit incididunt labore consectetur nostrud quis consequat voluptate. Qui exercitation et anim aliquip do tempor qui commodo ea esse dolor esse. Elit esse non proident Lorem sunt sint.\r\n", "registered": "2014-05-03T20:01:09-12:00", "latitude": 60.390837, "longitude": -133.564146, "tags": [ "commodo", "exercitation", "amet", "pariatur", "laboris", "sint", "exercitation" ], "friends": [ { "id": 0, "name": "Hope Newman" }, { "id": 1, "name": "Rae Dyer" }, { "id": 2, "name": "Bowen Blair" } ], "greeting": "Hello, Melissa Velazquez! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d023f61a30cca7290", "index": 186, "guid": "e2a7d769-4a44-4c6b-86b7-864859cecb79", "isActive": true, "balance": "$3,350.40", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Kelli Keller", "gender": "female", "company": "GEOFORMA", "email": "kellikeller@geoforma.com", "phone": "+1 (852) 424-3200", "address": "284 Chester Avenue, Ilchester, Alabama, 2882", "about": "Quis est aute laboris consequat. Enim aute cupidatat fugiat nulla ullamco cupidatat ea id labore. Velit esse laboris voluptate commodo non velit elit excepteur anim. Voluptate commodo qui et excepteur dolor fugiat irure veniam sit fugiat ipsum ut.\r\n", "registered": "2014-05-03T23:57:32-12:00", "latitude": -38.360027, "longitude": -73.305845, "tags": [ "mollit", "nisi", "qui", "aute", "minim", "ad", "nulla" ], "friends": [ { "id": 0, "name": "Rosario Hampton" }, { "id": 1, "name": "Georgette Hernandez" }, { "id": 2, "name": "Cochran Nguyen" } ], "greeting": "Hello, Kelli Keller! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dc78749537f83be85", "index": 187, "guid": "67b0091b-d424-4f77-bd0e-35752760efc7", "isActive": true, "balance": "$2,763.88", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Alston Ingram", "gender": "male", "company": "REMOTION", "email": "alstoningram@remotion.com", "phone": "+1 (881) 510-2836", "address": "518 Crescent Street, Allentown, Ohio, 1851", "about": "Aute dolore tempor do consectetur non occaecat commodo. Non ipsum sint voluptate ullamco aliqua cillum incididunt. Voluptate fugiat aute culpa occaecat incididunt labore quis. Aliquip tempor minim fugiat qui irure ullamco.\r\n", "registered": "2014-03-18T21:27:12-13:00", "latitude": -12.52641, "longitude": 131.43782, "tags": [ "aliqua", "esse", "nulla", "nostrud", "dolor", "fugiat", "veniam" ], "friends": [ { "id": 0, "name": "Greer Maldonado" }, { "id": 1, "name": "Douglas Guthrie" }, { "id": 2, "name": "Celina Fletcher" } ], "greeting": "Hello, Alston Ingram! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d3b70c4b56b96d05a", "index": 188, "guid": "23e51057-98f5-496f-9843-2a577b4aefb2", "isActive": false, "balance": "$3,702.51", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Moses Jarvis", "gender": "male", "company": "SUPREMIA", "email": "mosesjarvis@supremia.com", "phone": "+1 (908) 517-3185", "address": "904 Rugby Road, Grahamtown, Hawaii, 8131", "about": "Nulla et nulla commodo incididunt ea Lorem duis dolor aliquip duis proident Lorem commodo. Incididunt culpa do minim esse ut velit quis eu. Qui elit sunt ea esse ad. Proident incididunt Lorem velit aute minim ut excepteur aliquip aute aliqua dolore eiusmod. Occaecat sit laborum commodo minim cupidatat mollit ex elit sint voluptate elit ex elit. Culpa dolor nostrud tempor dolor est. Excepteur minim ullamco Lorem ut irure magna labore magna adipisicing incididunt aute.\r\n", "registered": "2014-06-18T07:35:49-12:00", "latitude": 44.335609, "longitude": -17.530209, "tags": [ "non", "aute", "nostrud", "amet", "sint", "excepteur", "eu" ], "friends": [ { "id": 0, "name": "Fanny Hinton" }, { "id": 1, "name": "Mable Battle" }, { "id": 2, "name": "Amparo Allen" } ], "greeting": "Hello, Moses Jarvis! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d29a93b7d4c8732f6", "index": 189, "guid": "742aa8d1-2e87-4f20-8a63-4116d28336a0", "isActive": true, "balance": "$1,282.68", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Yvette Barrett", "gender": "female", "company": "NEWCUBE", "email": "yvettebarrett@newcube.com", "phone": "+1 (870) 433-3325", "address": "248 Hewes Street, Itmann, New Mexico, 6866", "about": "Nulla in pariatur commodo in est veniam enim laboris aliquip ex exercitation reprehenderit. Sint magna sit exercitation deserunt sint dolor culpa exercitation quis velit esse qui veniam. Ut adipisicing consectetur tempor sit culpa officia amet deserunt. Deserunt duis nostrud exercitation aliquip sit consectetur nulla tempor enim ut exercitation veniam sint.\r\n", "registered": "2014-04-13T00:20:39-12:00", "latitude": -77.055732, "longitude": 153.034681, "tags": [ "dolore", "esse", "aliquip", "eiusmod", "exercitation", "est", "duis" ], "friends": [ { "id": 0, "name": "Claudia Rojas" }, { "id": 1, "name": "Christian Dotson" }, { "id": 2, "name": "Jenkins Spence" } ], "greeting": "Hello, Yvette Barrett! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d74e412f90e9b2894", "index": 190, "guid": "bada9871-0d3e-4fdc-91c0-6ca9a2203232", "isActive": false, "balance": "$1,459.92", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Merritt Burke", "gender": "male", "company": "ZENSOR", "email": "merrittburke@zensor.com", "phone": "+1 (936) 431-3812", "address": "479 Beacon Court, Topanga, Maryland, 5170", "about": "Ex do dolore irure anim ullamco laborum. Incididunt aliqua deserunt qui consectetur commodo et est culpa. Ipsum laborum officia exercitation nostrud exercitation ut elit mollit aute Lorem ex ipsum ullamco.\r\n", "registered": "2014-06-05T07:41:17-12:00", "latitude": -27.412347, "longitude": 79.983382, "tags": [ "dolore", "non", "ea", "commodo", "culpa", "excepteur", "duis" ], "friends": [ { "id": 0, "name": "Harper Rosario" }, { "id": 1, "name": "Tammi Stephenson" }, { "id": 2, "name": "Mindy Frederick" } ], "greeting": "Hello, Merritt Burke! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d1f1d08f6e86edae5", "index": 191, "guid": "6dfa6129-972e-4c09-be5d-4cdff0a54dc4", "isActive": false, "balance": "$2,933.00", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Boyer Kirkland", "gender": "male", "company": "SYBIXTEX", "email": "boyerkirkland@sybixtex.com", "phone": "+1 (850) 562-3125", "address": "367 Porter Avenue, Ribera, Alaska, 9729", "about": "Tempor mollit minim consequat officia nulla tempor dolore cupidatat sint qui elit ipsum qui reprehenderit. Excepteur aliquip aliquip nisi cillum reprehenderit in eu veniam cupidatat do nisi proident amet ut. Aute nulla id eu aute esse esse magna velit adipisicing.\r\n", "registered": "2014-04-14T07:41:49-12:00", "latitude": 21.607764, "longitude": -138.340513, "tags": [ "id", "occaecat", "sunt", "commodo", "dolore", "laborum", "dolore" ], "friends": [ { "id": 0, "name": "Silvia Wall" }, { "id": 1, "name": "Jeannine Parsons" }, { "id": 2, "name": "Ferguson Curtis" } ], "greeting": "Hello, Boyer Kirkland! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d6d5860844a2fb86f", "index": 192, "guid": "fcc6b9ce-1fdc-4f3a-89ae-348e5c98dc88", "isActive": false, "balance": "$1,035.14", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Frieda Diaz", "gender": "female", "company": "FURNITECH", "email": "friedadiaz@furnitech.com", "phone": "+1 (901) 401-2433", "address": "103 Meserole Avenue, Coloma, Arizona, 9597", "about": "Reprehenderit cillum ex aute officia ut eu id minim ex. Officia quis est occaecat nostrud consequat Lorem officia reprehenderit voluptate non quis irure aliquip id. Anim sint exercitation velit consequat dolor dolor. Et commodo anim do enim tempor eiusmod minim. Ea in nostrud pariatur aliqua labore qui. Consequat magna quis quis veniam eiusmod consectetur consequat. Eu cillum ipsum nisi pariatur consequat officia duis id nulla.\r\n", "registered": "2014-01-15T20:07:57-13:00", "latitude": 36.26898, "longitude": -41.564474, "tags": [ "quis", "aute", "anim", "commodo", "incididunt", "laboris", "non" ], "friends": [ { "id": 0, "name": "Compton Henderson" }, { "id": 1, "name": "Foreman Fisher" }, { "id": 2, "name": "Ila Forbes" } ], "greeting": "Hello, Frieda Diaz! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d30f6dbe948abc8b6", "index": 193, "guid": "0cdf2f55-dab4-45da-a550-e6f3b020e877", "isActive": true, "balance": "$1,763.96", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Cora Bass", "gender": "female", "company": "DEVILTOE", "email": "corabass@deviltoe.com", "phone": "+1 (837) 569-2617", "address": "416 Knapp Street, Kempton, Federated States Of Micronesia, 4532", "about": "Nisi id laboris duis magna quis labore aliquip eu consectetur et sunt elit ipsum. Nostrud ea excepteur adipisicing mollit id sunt quis enim qui anim do quis. Sit enim nisi Lorem duis commodo tempor culpa veniam cupidatat qui sunt et minim. Qui cupidatat sint ut labore enim voluptate eu.\r\n", "registered": "2014-07-17T15:35:21-12:00", "latitude": -17.974783, "longitude": 109.924118, "tags": [ "consectetur", "pariatur", "elit", "laboris", "voluptate", "sit", "nulla" ], "friends": [ { "id": 0, "name": "Kidd Rowland" }, { "id": 1, "name": "Kay Horn" }, { "id": 2, "name": "Stein Yates" } ], "greeting": "Hello, Cora Bass! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d8f32838c1a201443", "index": 194, "guid": "cb816a82-7376-41fa-b5a1-08d501f0bce6", "isActive": true, "balance": "$3,511.04", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Summer Spears", "gender": "female", "company": "PYRAMIS", "email": "summerspears@pyramis.com", "phone": "+1 (813) 519-3833", "address": "939 Christopher Avenue, Hilltop, Oklahoma, 460", "about": "Aliqua nulla id consequat aliquip. Mollit eu eu amet pariatur mollit fugiat aute duis. Aliqua duis dolore do ea amet nulla laborum anim ipsum adipisicing cupidatat irure. Irure incididunt sit ea Lorem magna quis do do. Duis commodo anim et dolor aute ex est cillum culpa culpa. Duis occaecat in eiusmod commodo eiusmod officia ullamco fugiat et excepteur pariatur laboris. Ex ad anim enim id labore nostrud.\r\n", "registered": "2014-03-02T00:24:43-13:00", "latitude": 73.499165, "longitude": 140.139974, "tags": [ "quis", "est", "deserunt", "ea", "adipisicing", "consequat", "do" ], "friends": [ { "id": 0, "name": "Mcdowell Hester" }, { "id": 1, "name": "Lacey Fernandez" }, { "id": 2, "name": "Collins Sweeney" } ], "greeting": "Hello, Summer Spears! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d4d87170ecd2fc682", "index": 195, "guid": "d0a45ca9-102d-473d-9d6d-064eb6cc0a2f", "isActive": true, "balance": "$1,363.16", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Jill Abbott", "gender": "female", "company": "CYTREK", "email": "jillabbott@cytrek.com", "phone": "+1 (938) 436-2717", "address": "661 Townsend Street, Foscoe, Michigan, 6158", "about": "Laboris pariatur culpa sint velit laborum veniam laborum esse tempor aliqua sint Lorem qui. Sunt deserunt esse ex deserunt exercitation commodo dolor ipsum duis excepteur culpa culpa. Non velit duis nostrud veniam in Lorem. Nostrud occaecat cillum occaecat aute reprehenderit ut irure. Labore exercitation eiusmod irure commodo irure dolore consectetur.\r\n", "registered": "2014-07-28T21:25:29-12:00", "latitude": 1.813978, "longitude": 87.483435, "tags": [ "tempor", "enim", "officia", "anim", "minim", "duis", "ad" ], "friends": [ { "id": 0, "name": "Marva Kane" }, { "id": 1, "name": "Foley Clements" }, { "id": 2, "name": "Dale Romero" } ], "greeting": "Hello, Jill Abbott! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d9c88d0b18539df41", "index": 196, "guid": "121f109f-674a-40ac-9a2b-925d38977e4e", "isActive": true, "balance": "$2,950.97", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Carey Moore", "gender": "male", "company": "EPLOSION", "email": "careymoore@eplosion.com", "phone": "+1 (802) 496-2391", "address": "335 Rutland Road, Century, Kansas, 1044", "about": "Adipisicing esse culpa tempor pariatur labore velit. Irure ex cillum mollit sit exercitation sit laboris amet proident non occaecat magna id ullamco. Laborum duis consequat eu anim dolore irure fugiat mollit eiusmod cupidatat consectetur ullamco. Voluptate ad officia eu irure ex. Anim exercitation esse proident mollit consequat.\r\n", "registered": "2014-03-30T07:23:09-13:00", "latitude": -20.066337, "longitude": 2.020504, "tags": [ "ut", "adipisicing", "officia", "reprehenderit", "est", "ad", "officia" ], "friends": [ { "id": 0, "name": "Francis Adams" }, { "id": 1, "name": "Hansen Mcfadden" }, { "id": 2, "name": "Mullen Clarke" } ], "greeting": "Hello, Carey Moore! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d20c0e52a78bb96a7", "index": 197, "guid": "03dd61fa-055a-459e-b92c-ca7dfb762cb2", "isActive": true, "balance": "$3,845.89", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Dillon Church", "gender": "male", "company": "EXOZENT", "email": "dillonchurch@exozent.com", "phone": "+1 (858) 505-2846", "address": "332 Kenmore Terrace, Finderne, South Dakota, 2195", "about": "Amet elit minim sint proident dolor. Ad eiusmod nulla est velit et aliquip esse enim nulla aute occaecat sunt. Irure irure commodo quis est sunt amet ex quis pariatur aute amet. Ut sit ullamco dolor aliqua incididunt esse est. Pariatur exercitation laboris fugiat labore ad officia. Magna mollit voluptate occaecat laborum reprehenderit elit tempor.\r\n", "registered": "2014-04-23T01:45:38-12:00", "latitude": 62.53667, "longitude": 136.487042, "tags": [ "et", "exercitation", "amet", "esse", "proident", "ipsum", "pariatur" ], "friends": [ { "id": 0, "name": "Cleveland David" }, { "id": 1, "name": "Leticia Mcdonald" }, { "id": 2, "name": "Fitzgerald Lindsay" } ], "greeting": "Hello, Dillon Church! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1db5a35da58557ae66", "index": 198, "guid": "4af12b8e-ec4e-4204-ac6f-f29aedc449d6", "isActive": false, "balance": "$1,516.87", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Graham Key", "gender": "male", "company": "LIMOZEN", "email": "grahamkey@limozen.com", "phone": "+1 (957) 455-2474", "address": "186 Canarsie Road, Carlton, West Virginia, 785", "about": "Id officia occaecat ut ipsum aute ipsum fugiat nisi cillum anim nostrud. Proident culpa non ut est pariatur tempor veniam laboris mollit id. Incididunt eiusmod ut ad sint elit nulla occaecat elit id consectetur aliqua. Duis magna ad cupidatat in id irure exercitation consectetur anim. Occaecat ea labore aliqua ipsum aliqua sit sint do laboris irure Lorem laborum laborum. Cupidatat eu consectetur officia consequat ipsum irure deserunt. Reprehenderit cupidatat eiusmod aute id aute aliqua.\r\n", "registered": "2014-03-26T07:22:47-13:00", "latitude": -62.151594, "longitude": -149.932669, "tags": [ "aliqua", "amet", "do", "ut", "mollit", "voluptate", "sunt" ], "friends": [ { "id": 0, "name": "Leona Murray" }, { "id": 1, "name": "Juliette Phelps" }, { "id": 2, "name": "Marks Wolf" } ], "greeting": "Hello, Graham Key! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1df8355b2cb94eb56c", "index": 199, "guid": "e6c21c0e-cf6a-4a67-94d5-4d925947ba61", "isActive": false, "balance": "$1,599.47", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Marcia Hooper", "gender": "female", "company": "GRUPOLI", "email": "marciahooper@grupoli.com", "phone": "+1 (871) 482-2689", "address": "148 Elm Place, Harrison, Texas, 4649", "about": "Laborum duis dolore mollit velit ea minim dolore sit sunt mollit. Ut nostrud ut tempor aute sint exercitation. Nulla et ad quis est voluptate et sit. Do non nostrud in quis officia dolor id eu. Consectetur adipisicing voluptate incididunt nostrud ut tempor veniam ullamco duis.\r\n", "registered": "2014-03-17T19:21:49-13:00", "latitude": 4.681168, "longitude": 70.343673, "tags": [ "voluptate", "tempor", "cupidatat", "amet", "incididunt", "ad", "adipisicing" ], "friends": [ { "id": 0, "name": "Freeman Mills" }, { "id": 1, "name": "Hart Middleton" }, { "id": 2, "name": "Charlotte Hawkins" } ], "greeting": "Hello, Marcia Hooper! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d7b8beca9f705f03b", "index": 200, "guid": "c3949150-11a1-41d7-b1e4-cccec799549f", "isActive": true, "balance": "$1,510.58", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Araceli Norris", "gender": "female", "company": "GEEKMOSIS", "email": "aracelinorris@geekmosis.com", "phone": "+1 (916) 530-2817", "address": "218 Veranda Place, Caroleen, Oregon, 3515", "about": "Magna sunt commodo occaecat quis sunt voluptate ut mollit aliquip tempor ipsum tempor in occaecat. Sunt minim quis pariatur commodo aliquip duis eiusmod laboris mollit esse tempor. Ipsum occaecat ullamco sit minim. Nostrud eu velit aliquip duis tempor velit exercitation consequat sit cupidatat. Adipisicing dolor eiusmod consectetur minim laborum ipsum non minim amet qui ad. In officia consequat aliqua voluptate nostrud elit est ex ea non velit consequat qui excepteur. In nisi adipisicing magna exercitation consectetur laborum ad id amet mollit nisi excepteur aute et.\r\n", "registered": "2014-07-02T03:58:19-12:00", "latitude": -37.404467, "longitude": -39.900728, "tags": [ "cupidatat", "aute", "laborum", "pariatur", "exercitation", "Lorem", "commodo" ], "friends": [ { "id": 0, "name": "Rebecca Rich" }, { "id": 1, "name": "Carr Cervantes" }, { "id": 2, "name": "Olsen Campbell" } ], "greeting": "Hello, Araceli Norris! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d2386eb28a0baa98c", "index": 201, "guid": "808345f4-41d6-416d-8b6e-4bdf16c437d1", "isActive": false, "balance": "$1,130.98", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Tabitha Mcfarland", "gender": "female", "company": "AMRIL", "email": "tabithamcfarland@amril.com", "phone": "+1 (935) 496-3251", "address": "150 Cobek Court, Bayview, Nevada, 731", "about": "Dolore nisi laboris proident nostrud aute culpa incididunt dolore in labore consectetur id. Quis ullamco tempor ullamco est voluptate anim dolore fugiat nulla dolor veniam. Eu dolore sint mollit cupidatat ullamco ex nulla aliqua officia ad culpa. Sunt magna laborum et eu sit proident aute officia veniam aliquip nisi irure sit est.\r\n", "registered": "2014-06-22T03:40:17-12:00", "latitude": 66.742137, "longitude": -143.88752, "tags": [ "do", "incididunt", "id", "sunt", "enim", "mollit", "irure" ], "friends": [ { "id": 0, "name": "Emma Beach" }, { "id": 1, "name": "Carolina Vaughn" }, { "id": 2, "name": "Virgie Ashley" } ], "greeting": "Hello, Tabitha Mcfarland! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dddec45c8c48968f1", "index": 202, "guid": "48cbd9d2-f48a-4a7f-9e77-a5ecdc156341", "isActive": true, "balance": "$1,641.80", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Herman Chandler", "gender": "male", "company": "MAGNEATO", "email": "hermanchandler@magneato.com", "phone": "+1 (820) 589-2899", "address": "428 Miller Avenue, Gardiner, Minnesota, 3864", "about": "Sint dolore officia consectetur mollit reprehenderit ipsum aute. Nulla incididunt sint id in pariatur tempor occaecat culpa elit aliquip in cillum occaecat quis. Non Lorem nostrud sit pariatur dolore amet officia qui. Pariatur eu irure Lorem deserunt ipsum eu ipsum aliqua sunt minim mollit eiusmod sint enim. Proident minim dolor ut elit dolore velit magna non. Nostrud pariatur pariatur ipsum esse aute minim eu.\r\n", "registered": "2014-02-18T07:02:33-13:00", "latitude": -6.550464, "longitude": 20.086494, "tags": [ "ad", "et", "elit", "duis", "magna", "exercitation", "anim" ], "friends": [ { "id": 0, "name": "Oconnor Vaughan" }, { "id": 1, "name": "Tiffany Robbins" }, { "id": 2, "name": "Barry Levine" } ], "greeting": "Hello, Herman Chandler! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d824a7c15e8814a14", "index": 203, "guid": "441fb23d-b066-44f9-bc16-21c326cab812", "isActive": false, "balance": "$1,144.51", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Carrillo Combs", "gender": "male", "company": "ARCTIQ", "email": "carrillocombs@arctiq.com", "phone": "+1 (916) 524-2303", "address": "800 Lake Place, Deercroft, Missouri, 1345", "about": "Ex ut quis Lorem magna id laborum nisi. Sit consectetur dolor ipsum magna et ut ipsum et enim. Culpa adipisicing pariatur aliqua culpa in consequat. In mollit reprehenderit do elit ipsum proident id exercitation.\r\n", "registered": "2014-09-01T20:00:30-12:00", "latitude": 50.219442, "longitude": 97.651779, "tags": [ "anim", "nostrud", "eiusmod", "ex", "Lorem", "labore", "qui" ], "friends": [ { "id": 0, "name": "Elisabeth Schwartz" }, { "id": 1, "name": "Vicki Sims" }, { "id": 2, "name": "Hoffman Maxwell" } ], "greeting": "Hello, Carrillo Combs! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1df7f5fce2bfc28924", "index": 204, "guid": "3caa3d1e-2b46-464f-adaf-c8ebb9652d5c", "isActive": false, "balance": "$1,971.47", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Cooley Talley", "gender": "male", "company": "GEEKNET", "email": "cooleytalley@geeknet.com", "phone": "+1 (943) 491-2479", "address": "383 Aurelia Court, Balm, Rhode Island, 2294", "about": "Do pariatur ea id aute ea reprehenderit eiusmod et ad commodo est. Ea ut aliquip quis sint cillum fugiat ea. Lorem non laboris aliqua adipisicing non dolor culpa est reprehenderit aute Lorem mollit nisi aliquip. Esse consequat aliqua mollit officia excepteur ea.\r\n", "registered": "2014-02-19T23:28:29-13:00", "latitude": -63.891395, "longitude": -81.659829, "tags": [ "ipsum", "mollit", "incididunt", "proident", "cillum", "ex", "exercitation" ], "friends": [ { "id": 0, "name": "Lorrie Knowles" }, { "id": 1, "name": "Poole Green" }, { "id": 2, "name": "Wilson Gutierrez" } ], "greeting": "Hello, Cooley Talley! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d7437e55b135deebd", "index": 205, "guid": "e29efaa7-6a68-42bf-b523-ed061fcaa313", "isActive": false, "balance": "$3,247.01", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Howe Rivers", "gender": "male", "company": "DELPHIDE", "email": "howerivers@delphide.com", "phone": "+1 (906) 594-2068", "address": "540 Imlay Street, Blue, Florida, 1589", "about": "Veniam do est nulla reprehenderit laborum dolor id minim occaecat duis aute sit. Incididunt officia laboris nisi laborum ullamco proident. Cupidatat aute elit est dolore eiusmod qui ut sit officia mollit dolor adipisicing culpa aliqua. Voluptate elit minim officia ad in qui voluptate reprehenderit irure tempor non amet. Tempor labore occaecat in duis aliquip consequat pariatur fugiat enim consequat nostrud anim. Do cillum qui exercitation mollit eiusmod reprehenderit fugiat quis occaecat.\r\n", "registered": "2014-04-11T04:01:24-12:00", "latitude": 71.616017, "longitude": 56.98192, "tags": [ "voluptate", "enim", "enim", "magna", "anim", "reprehenderit", "enim" ], "friends": [ { "id": 0, "name": "Franks Garner" }, { "id": 1, "name": "Lessie Mann" }, { "id": 2, "name": "Caitlin Harvey" } ], "greeting": "Hello, Howe Rivers! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d5eb41ca44f57590e", "index": 206, "guid": "fbbe163d-c475-45bc-a845-903596835b41", "isActive": true, "balance": "$1,704.48", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Georgina Pollard", "gender": "female", "company": "APEXTRI", "email": "georginapollard@apextri.com", "phone": "+1 (926) 529-3853", "address": "825 Beach Place, Motley, North Carolina, 8219", "about": "Ut sit laboris incididunt consequat exercitation esse ex anim aliqua pariatur aliqua dolore. Consequat irure in irure ex consectetur labore eiusmod sint ut fugiat duis. Nisi excepteur ut sint consectetur enim sit mollit proident mollit. Reprehenderit proident voluptate consectetur reprehenderit veniam tempor duis nostrud incididunt sint ullamco cupidatat velit. Eiusmod cupidatat dolore ullamco in. Dolor et est elit excepteur do adipisicing. Do nulla ipsum fugiat magna aute ex.\r\n", "registered": "2014-01-14T23:18:48-13:00", "latitude": 80.433669, "longitude": 133.622491, "tags": [ "consectetur", "aliqua", "nulla", "anim", "adipisicing", "adipisicing", "nulla" ], "friends": [ { "id": 0, "name": "Maldonado Davenport" }, { "id": 1, "name": "Matilda Norton" }, { "id": 2, "name": "Logan Mendez" } ], "greeting": "Hello, Georgina Pollard! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d6a5855774439c586", "index": 207, "guid": "3c93dc61-4874-4592-a5e9-d0b379c05c99", "isActive": true, "balance": "$3,645.62", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Catalina George", "gender": "female", "company": "TELLIFLY", "email": "catalinageorge@tellifly.com", "phone": "+1 (948) 575-3713", "address": "853 Interborough Parkway, Greenbush, New Hampshire, 5574", "about": "Duis esse consequat quis amet ut duis est nostrud laboris minim ullamco aute. Nulla sint mollit duis eiusmod elit. Dolore est eiusmod fugiat ex do amet. Ipsum cupidatat minim culpa cillum voluptate do ad nulla. Ipsum Lorem adipisicing occaecat ut excepteur irure qui labore excepteur sunt mollit ad Lorem in.\r\n", "registered": "2014-08-30T08:01:00-12:00", "latitude": 45.843025, "longitude": -63.57374, "tags": [ "laborum", "excepteur", "exercitation", "ad", "incididunt", "enim", "irure" ], "friends": [ { "id": 0, "name": "Lavonne Park" }, { "id": 1, "name": "Mcdonald Kerr" }, { "id": 2, "name": "Horne Roberts" } ], "greeting": "Hello, Catalina George! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d58beb459d2a6cbaa", "index": 208, "guid": "8f4acd49-539f-43fc-9b4e-9a21e1561c10", "isActive": false, "balance": "$1,031.11", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Jeanine Holder", "gender": "female", "company": "FLUMBO", "email": "jeanineholder@flumbo.com", "phone": "+1 (951) 407-2241", "address": "556 Mayfair Drive, Linganore, Arkansas, 9380", "about": "Ex duis tempor eiusmod commodo laborum. Lorem consequat aute laboris irure veniam culpa Lorem nisi ad magna commodo ex duis magna. Id aliquip sit exercitation anim aliqua eiusmod duis sint mollit. Ad deserunt tempor nulla et consectetur id. Anim ullamco proident magna veniam dolore est. Eiusmod pariatur fugiat exercitation aliqua officia nulla adipisicing ullamco ea.\r\n", "registered": "2014-08-27T04:30:14-12:00", "latitude": -30.39348, "longitude": -77.308221, "tags": [ "ex", "velit", "nostrud", "dolor", "cupidatat", "labore", "in" ], "friends": [ { "id": 0, "name": "Rochelle Rollins" }, { "id": 1, "name": "Ellis Gonzalez" }, { "id": 2, "name": "Daniels Gonzales" } ], "greeting": "Hello, Jeanine Holder! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d3b1678e5d571e464", "index": 209, "guid": "56beccec-fce6-40ff-ba0a-448fed91a8b2", "isActive": false, "balance": "$3,846.50", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Grace Dickson", "gender": "female", "company": "DYNO", "email": "gracedickson@dyno.com", "phone": "+1 (817) 459-2312", "address": "505 McClancy Place, Jamestown, Iowa, 5238", "about": "Fugiat nostrud eu ipsum sint anim. Deserunt occaecat duis id id reprehenderit labore fugiat. Reprehenderit esse eiusmod sint est amet veniam sint qui ipsum amet proident amet exercitation nisi. Enim ad magna laborum quis exercitation voluptate nulla. Ut aliqua sint dolor dolore irure proident amet in fugiat tempor excepteur ut aute. Excepteur nostrud non magna et tempor sit amet nisi ullamco quis eu. Et et commodo velit irure aliquip incididunt ea consequat anim adipisicing.\r\n", "registered": "2014-04-07T22:53:44-12:00", "latitude": 65.819561, "longitude": -58.830999, "tags": [ "ipsum", "culpa", "sunt", "irure", "veniam", "velit", "irure" ], "friends": [ { "id": 0, "name": "Erin Jordan" }, { "id": 1, "name": "Jo Herman" }, { "id": 2, "name": "Rodriguez Mcmahon" } ], "greeting": "Hello, Grace Dickson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d5510ba4f0b4aad9c", "index": 210, "guid": "e05abd3c-02ab-4b88-a95b-b0bba59de0f9", "isActive": false, "balance": "$2,380.04", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Taylor Frost", "gender": "female", "company": "ISONUS", "email": "taylorfrost@isonus.com", "phone": "+1 (869) 419-2065", "address": "903 Verona Street, Yorklyn, Nebraska, 2416", "about": "Elit sit laboris Lorem nostrud sint in sint consequat do aute ipsum consectetur. Veniam ipsum non culpa sunt magna. Velit veniam elit irure fugiat mollit duis amet mollit ad amet Lorem labore eiusmod esse. Reprehenderit magna dolore anim sit cillum. Reprehenderit est non Lorem non deserunt velit exercitation amet et dolore enim. Fugiat est ullamco est aliqua dolor dolor cupidatat consequat fugiat voluptate eu elit minim. Elit ex laborum laborum ad Lorem irure nulla qui sit sunt tempor cupidatat culpa dolor.\r\n", "registered": "2014-06-19T10:16:42-12:00", "latitude": -6.368261, "longitude": -149.280006, "tags": [ "eiusmod", "sunt", "veniam", "voluptate", "quis", "qui", "laborum" ], "friends": [ { "id": 0, "name": "Kayla Dale" }, { "id": 1, "name": "Amie Taylor" }, { "id": 2, "name": "Bernice Kirby" } ], "greeting": "Hello, Taylor Frost! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dbd092661482fe79a", "index": 211, "guid": "50aa7301-55a0-4570-bb2c-1c5060097c99", "isActive": true, "balance": "$2,310.10", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Valencia Hale", "gender": "male", "company": "XSPORTS", "email": "valenciahale@xsports.com", "phone": "+1 (808) 589-3752", "address": "231 Adler Place, Cascades, District Of Columbia, 6404", "about": "Nostrud Lorem commodo et officia amet cillum ea. Sint laboris eiusmod tempor nostrud dolore labore elit sunt velit cupidatat. Incididunt minim voluptate labore exercitation nisi cupidatat.\r\n", "registered": "2014-09-07T07:13:17-12:00", "latitude": 10.881445, "longitude": -114.142389, "tags": [ "veniam", "commodo", "eu", "id", "eiusmod", "magna", "eu" ], "friends": [ { "id": 0, "name": "Knight Ballard" }, { "id": 1, "name": "Jenny Daugherty" }, { "id": 2, "name": "Randi Cobb" } ], "greeting": "Hello, Valencia Hale! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d3127ea60af8ab4b0", "index": 212, "guid": "aa5a273d-8bfd-40f4-9f60-5cf7494e1497", "isActive": true, "balance": "$3,748.63", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Aisha Phillips", "gender": "female", "company": "ISOSURE", "email": "aishaphillips@isosure.com", "phone": "+1 (909) 533-2082", "address": "860 Lorraine Street, Edmund, New Jersey, 3687", "about": "Dolor dolor laborum incididunt elit voluptate minim labore reprehenderit in labore officia et consectetur laboris. Officia consequat ut Lorem ex exercitation. Minim ut laboris amet eu eiusmod aute laborum nulla voluptate tempor qui mollit.\r\n", "registered": "2014-05-18T21:52:03-12:00", "latitude": 40.626104, "longitude": 82.214225, "tags": [ "labore", "incididunt", "sit", "cupidatat", "nisi", "consequat", "adipisicing" ], "friends": [ { "id": 0, "name": "Warren Savage" }, { "id": 1, "name": "Viola Maynard" }, { "id": 2, "name": "Tamra Colon" } ], "greeting": "Hello, Aisha Phillips! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d54bfc424967ccb32", "index": 213, "guid": "57ba6c26-8bff-4f12-bd68-f92f1554a29d", "isActive": false, "balance": "$2,482.72", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Jarvis Pickett", "gender": "male", "company": "STRALUM", "email": "jarvispickett@stralum.com", "phone": "+1 (839) 592-2433", "address": "106 Erskine Loop, Hayden, Palau, 8492", "about": "Labore eu magna exercitation fugiat reprehenderit deserunt commodo ullamco qui ex. Exercitation proident ullamco nulla voluptate ut nulla duis pariatur quis excepteur eu do. In eiusmod nisi nostrud ullamco non magna do dolore id proident. Ad consectetur magna exercitation do reprehenderit. Labore anim laboris nisi cillum exercitation eiusmod incididunt irure non exercitation ea et tempor sint. Nulla nisi voluptate proident qui.\r\n", "registered": "2014-07-26T21:39:26-12:00", "latitude": 52.356908, "longitude": 56.681755, "tags": [ "Lorem", "anim", "dolore", "adipisicing", "id", "sit", "labore" ], "friends": [ { "id": 0, "name": "Jana Foley" }, { "id": 1, "name": "Constance Harding" }, { "id": 2, "name": "Battle Ball" } ], "greeting": "Hello, Jarvis Pickett! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d1c8ae6d082d4300a", "index": 214, "guid": "a6af6805-ca00-4ad5-a2ad-8b680f651c63", "isActive": false, "balance": "$1,722.26", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Cole Walker", "gender": "male", "company": "EQUICOM", "email": "colewalker@equicom.com", "phone": "+1 (985) 421-3382", "address": "992 Roosevelt Place, Sanford, Puerto Rico, 8702", "about": "Nisi exercitation ullamco cillum Lorem. Magna est ad anim nostrud sit dolor quis aliquip reprehenderit enim qui labore consequat adipisicing. Minim excepteur mollit ut Lorem aute. Fugiat ullamco adipisicing nisi occaecat eiusmod pariatur irure occaecat. Aliqua proident dolor aliqua quis fugiat officia nostrud qui consequat sit cillum ea deserunt ad. Do consectetur est officia nulla veniam ullamco.\r\n", "registered": "2014-09-04T00:11:19-12:00", "latitude": -26.007551, "longitude": -73.319746, "tags": [ "sint", "fugiat", "consequat", "sint", "pariatur", "exercitation", "duis" ], "friends": [ { "id": 0, "name": "Gay Ferguson" }, { "id": 1, "name": "Camille Townsend" }, { "id": 2, "name": "French Knight" } ], "greeting": "Hello, Cole Walker! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d0ddc1db6a3b33cef", "index": 215, "guid": "1de0af6f-c2d5-4c4f-970a-af3d4a89db0c", "isActive": false, "balance": "$2,051.89", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Christine Reynolds", "gender": "female", "company": "ISBOL", "email": "christinereynolds@isbol.com", "phone": "+1 (863) 557-3558", "address": "743 Howard Place, Southview, California, 7420", "about": "Non tempor ex dolor incididunt voluptate exercitation nostrud. Eu do eiusmod sit magna sint incididunt irure adipisicing. Cupidatat sunt commodo ullamco dolor veniam elit nostrud aliquip. Ex eiusmod incididunt occaecat ex sint commodo pariatur duis sunt incididunt. Incididunt exercitation consequat sint excepteur qui esse. Consectetur elit anim ut minim do.\r\n", "registered": "2014-05-15T05:54:01-12:00", "latitude": 8.876875, "longitude": 7.483879, "tags": [ "eu", "nulla", "sunt", "incididunt", "consectetur", "ipsum", "labore" ], "friends": [ { "id": 0, "name": "Alma Dunn" }, { "id": 1, "name": "Katheryn Graham" }, { "id": 2, "name": "Lorena Vincent" } ], "greeting": "Hello, Christine Reynolds! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d0df4955fbc7a5169", "index": 216, "guid": "75da305d-6ff8-4d3c-b299-e639c498335a", "isActive": true, "balance": "$3,565.83", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Ashley Ellison", "gender": "male", "company": "EXERTA", "email": "ashleyellison@exerta.com", "phone": "+1 (825) 446-2819", "address": "372 Drew Street, Fontanelle, Vermont, 1328", "about": "In eiusmod duis dolor culpa excepteur culpa ea culpa occaecat aliqua tempor eiusmod sit consequat. Nisi irure eu sunt id in qui sint et Lorem dolore culpa. Laboris quis cillum ut exercitation id aute exercitation. Laboris consectetur mollit sunt aute nulla magna est ad Lorem nisi nisi. Labore cillum nostrud cupidatat aliquip dolor. Nulla et duis ullamco exercitation reprehenderit consectetur Lorem culpa amet nostrud nostrud ut fugiat consectetur.\r\n", "registered": "2014-08-27T07:11:57-12:00", "latitude": -72.183732, "longitude": 72.589917, "tags": [ "tempor", "anim", "laborum", "esse", "proident", "occaecat", "quis" ], "friends": [ { "id": 0, "name": "Latasha Armstrong" }, { "id": 1, "name": "Terra Reid" }, { "id": 2, "name": "Olson Sears" } ], "greeting": "Hello, Ashley Ellison! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1de2dc14b1e0b1b6cf", "index": 217, "guid": "93cec8d8-5b86-43f8-ac81-3f38d93bf9f8", "isActive": true, "balance": "$3,322.08", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Angelina Anthony", "gender": "female", "company": "ORBIXTAR", "email": "angelinaanthony@orbixtar.com", "phone": "+1 (888) 599-2982", "address": "299 Foster Avenue, Waukeenah, Indiana, 8141", "about": "Sunt do do excepteur officia aute consequat laboris laborum reprehenderit qui aliquip. Adipisicing incididunt ullamco ipsum enim. Dolore laborum dolore incididunt pariatur in. Aute Lorem commodo non irure. Do ad tempor deserunt deserunt incididunt consectetur voluptate anim mollit quis. Magna duis ipsum incididunt Lorem do velit non ex dolor aute. Labore nulla consectetur cupidatat duis fugiat reprehenderit eiusmod deserunt nostrud veniam excepteur.\r\n", "registered": "2014-05-20T06:03:51-12:00", "latitude": 81.411446, "longitude": -84.965934, "tags": [ "tempor", "nulla", "incididunt", "est", "nostrud", "excepteur", "id" ], "friends": [ { "id": 0, "name": "Ware Myers" }, { "id": 1, "name": "Hobbs Raymond" }, { "id": 2, "name": "Bond Golden" } ], "greeting": "Hello, Angelina Anthony! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d1006a20cb308e891", "index": 218, "guid": "ca4214e5-399e-45f2-be96-5f053096ea42", "isActive": true, "balance": "$1,150.30", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Janelle Roy", "gender": "female", "company": "BEADZZA", "email": "janelleroy@beadzza.com", "phone": "+1 (818) 441-2430", "address": "984 Devon Avenue, Coalmont, Illinois, 3602", "about": "Dolor cillum labore aliqua officia consectetur magna adipisicing qui officia aliqua proident Lorem. Dolor incididunt qui aute aliquip aute consectetur adipisicing aliquip nisi. Amet fugiat reprehenderit ullamco labore minim incididunt consectetur culpa magna. Exercitation ex enim exercitation voluptate ea amet anim tempor qui. Adipisicing labore cupidatat deserunt pariatur laboris in do occaecat amet excepteur exercitation est ea non. Quis ad anim sint labore mollit labore veniam magna aliqua. Esse nisi ea et esse id reprehenderit enim exercitation.\r\n", "registered": "2014-02-16T07:16:28-13:00", "latitude": 13.292754, "longitude": 99.796183, "tags": [ "aliquip", "culpa", "ex", "mollit", "sunt", "ullamco", "eiusmod" ], "friends": [ { "id": 0, "name": "Dorothea Clemons" }, { "id": 1, "name": "Frazier England" }, { "id": 2, "name": "Alexandra Reyes" } ], "greeting": "Hello, Janelle Roy! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dce88445e71359285", "index": 219, "guid": "504c5378-41c8-400d-82ad-b6819d70da61", "isActive": false, "balance": "$1,478.70", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Sweet Shields", "gender": "male", "company": "MOREGANIC", "email": "sweetshields@moreganic.com", "phone": "+1 (848) 567-2367", "address": "431 Jackson Street, Chloride, South Carolina, 8791", "about": "Occaecat eu adipisicing adipisicing in nisi consequat aute voluptate duis. Dolore anim do velit velit excepteur officia laborum aliquip magna. Reprehenderit elit exercitation nisi reprehenderit est magna deserunt deserunt do anim et exercitation non id.\r\n", "registered": "2014-07-13T17:41:26-12:00", "latitude": -24.953579, "longitude": -68.457693, "tags": [ "Lorem", "incididunt", "ea", "nisi", "labore", "exercitation", "ipsum" ], "friends": [ { "id": 0, "name": "Johnnie Tillman" }, { "id": 1, "name": "Hawkins Valentine" }, { "id": 2, "name": "Bessie Edwards" } ], "greeting": "Hello, Sweet Shields! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d92681298dbe04dc5", "index": 220, "guid": "da987735-dce1-4734-a16b-2b0e4e18c81c", "isActive": true, "balance": "$3,189.12", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Alissa Shelton", "gender": "female", "company": "SOFTMICRO", "email": "alissashelton@softmicro.com", "phone": "+1 (847) 582-2047", "address": "591 Lawrence Street, Cotopaxi, American Samoa, 2830", "about": "Enim id officia id quis ad aliqua ea consequat officia non labore eu aliquip. Aute ex exercitation quis nostrud. Ex culpa nulla excepteur minim ipsum laborum deserunt id commodo duis ut.\r\n", "registered": "2014-05-27T16:01:44-12:00", "latitude": -78.821173, "longitude": 168.136127, "tags": [ "occaecat", "deserunt", "et", "magna", "consequat", "magna", "in" ], "friends": [ { "id": 0, "name": "Mcleod Soto" }, { "id": 1, "name": "Osborn Mccall" }, { "id": 2, "name": "Buchanan Strong" } ], "greeting": "Hello, Alissa Shelton! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dbb3c9cdc7d55ee0b", "index": 221, "guid": "0adf5175-59d9-42dc-aa3d-7a5e6f343f50", "isActive": true, "balance": "$2,520.86", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Vivian Brown", "gender": "female", "company": "EZENT", "email": "vivianbrown@ezent.com", "phone": "+1 (881) 486-2880", "address": "295 Gerritsen Avenue, Shepardsville, Delaware, 1220", "about": "Dolore ipsum adipisicing dolor eu occaecat excepteur minim. Id esse mollit cillum elit aliquip dolor irure elit non tempor. Aliquip officia labore dolore voluptate mollit velit duis laboris et aliquip veniam consequat et magna. Voluptate dolore irure tempor do est officia occaecat consectetur labore Lorem irure excepteur. Adipisicing nisi eiusmod duis aliquip reprehenderit minim esse exercitation consectetur ipsum eiusmod adipisicing ad. Ea Lorem magna eu sint. Occaecat nisi reprehenderit amet veniam id irure mollit culpa ea duis sint eu commodo nisi.\r\n", "registered": "2014-02-27T09:48:41-13:00", "latitude": -28.981409, "longitude": -32.056421, "tags": [ "est", "Lorem", "dolore", "dolore", "consequat", "adipisicing", "pariatur" ], "friends": [ { "id": 0, "name": "Moss Gregory" }, { "id": 1, "name": "Villarreal Mccoy" }, { "id": 2, "name": "Weiss Mcconnell" } ], "greeting": "Hello, Vivian Brown! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d3f079e16bf6c21f1", "index": 222, "guid": "6d8ea59e-928c-431f-9f19-d4b1977fccce", "isActive": false, "balance": "$3,028.96", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Cara Collier", "gender": "female", "company": "EXOSWITCH", "email": "caracollier@exoswitch.com", "phone": "+1 (987) 477-2988", "address": "361 Allen Avenue, Ruffin, Pennsylvania, 312", "about": "Pariatur esse qui fugiat qui. Voluptate minim quis labore sint aute id officia qui proident sint. Et mollit minim pariatur labore excepteur velit aliquip sint tempor tempor.\r\n", "registered": "2014-08-03T03:40:17-12:00", "latitude": -25.814944, "longitude": -158.616407, "tags": [ "duis", "excepteur", "qui", "ipsum", "eiusmod", "esse", "duis" ], "friends": [ { "id": 0, "name": "Rowland Baxter" }, { "id": 1, "name": "Scott Blake" }, { "id": 2, "name": "Cote Lancaster" } ], "greeting": "Hello, Cara Collier! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d506ee7a9e7c41067", "index": 223, "guid": "bd40edff-9794-4130-9118-3dc6b55ec4e9", "isActive": false, "balance": "$1,886.95", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Helene Donovan", "gender": "female", "company": "VURBO", "email": "helenedonovan@vurbo.com", "phone": "+1 (927) 546-2993", "address": "556 Times Placez, Zortman, Georgia, 8798", "about": "Duis cillum proident mollit consequat laborum velit minim esse laboris ea magna duis. Amet elit ullamco incididunt est et ullamco proident cupidatat eiusmod anim. Aliquip commodo ipsum amet nostrud cupidatat do occaecat id sint labore reprehenderit cupidatat occaecat veniam. Est sint consequat Lorem reprehenderit culpa ut. Amet fugiat proident consequat consectetur nulla fugiat commodo est labore nisi nostrud irure.\r\n", "registered": "2014-03-17T03:37:12-13:00", "latitude": -11.585885, "longitude": -100.427548, "tags": [ "sit", "ad", "deserunt", "nulla", "ea", "id", "sint" ], "friends": [ { "id": 0, "name": "Burgess Jenkins" }, { "id": 1, "name": "Eva Pate" }, { "id": 2, "name": "Colon Velez" } ], "greeting": "Hello, Helene Donovan! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dfa3d9efff27e8757", "index": 224, "guid": "82e7d457-c616-496c-b053-7f1716e8260f", "isActive": false, "balance": "$3,544.22", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Sanders Higgins", "gender": "male", "company": "NURPLEX", "email": "sandershiggins@nurplex.com", "phone": "+1 (962) 540-3211", "address": "284 Hendrickson Place, Reno, North Dakota, 5949", "about": "Aute deserunt ea ea do fugiat cillum nulla non et proident. Cillum ipsum anim laborum adipisicing ad excepteur anim labore. Exercitation sit ut fugiat exercitation tempor anim ea esse velit ea mollit ut. Consectetur qui occaecat incididunt esse voluptate excepteur aliquip cupidatat. Ad veniam aliquip nisi sit ipsum Lorem qui laboris nulla eiusmod et veniam elit. Reprehenderit nulla do in in est ipsum Lorem. Id eiusmod do nostrud cillum.\r\n", "registered": "2014-06-27T07:11:25-12:00", "latitude": 22.598496, "longitude": 25.180069, "tags": [ "incididunt", "fugiat", "in", "nulla", "sit", "nisi", "nostrud" ], "friends": [ { "id": 0, "name": "Hudson Berry" }, { "id": 1, "name": "Concepcion Peterson" }, { "id": 2, "name": "Betty Solomon" } ], "greeting": "Hello, Sanders Higgins! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d2aff645a62d83554", "index": 225, "guid": "48f41d2e-0d7d-4b2f-a9ed-1b60ec4dd986", "isActive": false, "balance": "$2,934.75", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Priscilla Nixon", "gender": "female", "company": "ICOLOGY", "email": "priscillanixon@icology.com", "phone": "+1 (857) 487-3023", "address": "159 Kent Street, Cowiche, Louisiana, 2457", "about": "Dolor commodo nulla quis veniam. Magna tempor culpa velit culpa dolor velit dolor quis do ea enim anim. Enim ipsum culpa quis anim exercitation nulla reprehenderit duis. Elit sit minim adipisicing est irure elit esse laborum sint non ad veniam non. Consectetur magna et occaecat commodo sint consectetur anim eu aliqua cillum dolor. Occaecat aliquip labore enim irure ullamco voluptate sit laborum ad.\r\n", "registered": "2014-03-15T04:36:43-13:00", "latitude": 19.505255, "longitude": 1.79519, "tags": [ "labore", "culpa", "tempor", "tempor", "sit", "ex", "nulla" ], "friends": [ { "id": 0, "name": "Lee Fulton" }, { "id": 1, "name": "Curtis Roberson" }, { "id": 2, "name": "Jeanie Stuart" } ], "greeting": "Hello, Priscilla Nixon! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d59bb0530ee50279d", "index": 226, "guid": "9bd4ef6b-7140-458f-bdae-42ff81b99ef1", "isActive": true, "balance": "$2,497.69", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Jennings Chambers", "gender": "male", "company": "SPHERIX", "email": "jenningschambers@spherix.com", "phone": "+1 (920) 583-2451", "address": "949 Montana Place, Campo, Northern Mariana Islands, 4764", "about": "Enim occaecat sit pariatur do aliqua amet cillum ad ad labore ullamco reprehenderit commodo ex. Commodo esse ad ad eiusmod exercitation laboris cupidatat. Ad tempor exercitation non ut aliquip mollit elit quis veniam labore adipisicing. Occaecat irure culpa cupidatat consectetur excepteur irure labore culpa quis do culpa minim eu.\r\n", "registered": "2014-05-08T15:04:25-12:00", "latitude": 9.981382, "longitude": 136.749001, "tags": [ "non", "excepteur", "do", "dolor", "anim", "exercitation", "minim" ], "friends": [ { "id": 0, "name": "Mclaughlin Ellis" }, { "id": 1, "name": "Autumn Lambert" }, { "id": 2, "name": "Mcbride Guerra" } ], "greeting": "Hello, Jennings Chambers! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d65b3090c97618394", "index": 227, "guid": "0e5e7ced-168b-4d13-8352-1a0e7b2a2a9a", "isActive": true, "balance": "$3,325.22", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Cooper Stevens", "gender": "male", "company": "DADABASE", "email": "cooperstevens@dadabase.com", "phone": "+1 (953) 507-2764", "address": "554 Crown Street, Baker, Colorado, 514", "about": "Commodo ea est aute et ex cillum reprehenderit quis nisi. Deserunt duis deserunt aliquip ad et. Minim veniam culpa anim minim voluptate. Incididunt aute Lorem veniam deserunt anim fugiat non deserunt nostrud commodo dolore et. Exercitation velit sunt proident minim aute ea sunt veniam culpa qui ut laboris reprehenderit. Reprehenderit aliquip proident amet ea aliqua.\r\n", "registered": "2014-06-06T05:13:42-12:00", "latitude": 39.798611, "longitude": 115.777779, "tags": [ "culpa", "voluptate", "aliqua", "eiusmod", "aliqua", "sit", "esse" ], "friends": [ { "id": 0, "name": "Monica Hunt" }, { "id": 1, "name": "Laurie Guzman" }, { "id": 2, "name": "Rosalie Hickman" } ], "greeting": "Hello, Cooper Stevens! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d4f6f220437c6feea", "index": 228, "guid": "95a15895-cacc-4230-a0cf-6d342a448f44", "isActive": true, "balance": "$3,952.77", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Wolfe Cooley", "gender": "male", "company": "INFOTRIPS", "email": "wolfecooley@infotrips.com", "phone": "+1 (858) 480-2125", "address": "862 Bond Street, Cumberland, Idaho, 1626", "about": "Occaecat elit cupidatat ullamco id id culpa esse adipisicing laboris do. Aliquip pariatur officia fugiat cupidatat deserunt dolor ad ipsum amet ea minim. Aliqua consequat Lorem consectetur occaecat eu ullamco occaecat ea commodo magna veniam.\r\n", "registered": "2014-03-16T19:11:15-13:00", "latitude": 12.651536, "longitude": 122.817289, "tags": [ "laborum", "deserunt", "velit", "ullamco", "mollit", "dolor", "laboris" ], "friends": [ { "id": 0, "name": "Tillman Ortiz" }, { "id": 1, "name": "Barbra French" }, { "id": 2, "name": "Gordon Carver" } ], "greeting": "Hello, Wolfe Cooley! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d3ba01bae5c5f1d83", "index": 229, "guid": "c3f2c77e-862e-4562-a41d-60be1c55b930", "isActive": true, "balance": "$1,309.20", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Howell Hughes", "gender": "male", "company": "PODUNK", "email": "howellhughes@podunk.com", "phone": "+1 (919) 450-3912", "address": "870 Bergen Place, Vienna, Marshall Islands, 2730", "about": "Laboris in labore id aliquip nulla irure tempor ad culpa culpa laboris enim ex enim. Occaecat commodo ad ex eiusmod commodo veniam. Velit veniam do est sit laborum. Est id dolor minim enim enim veniam excepteur quis minim ipsum esse reprehenderit in culpa. Proident magna ullamco reprehenderit culpa pariatur. Ex dolore id qui dolore labore pariatur non aliquip ea occaecat esse mollit sunt ipsum.\r\n", "registered": "2014-01-29T05:56:46-13:00", "latitude": 38.944156, "longitude": 170.29765, "tags": [ "incididunt", "do", "culpa", "excepteur", "proident", "aliquip", "ad" ], "friends": [ { "id": 0, "name": "Kemp Acosta" }, { "id": 1, "name": "Francis Christian" }, { "id": 2, "name": "Marguerite Powers" } ], "greeting": "Hello, Howell Hughes! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d8dbcb62bb48e32f2", "index": 230, "guid": "1c0c3b66-fd8c-4909-bdb0-94cd3cf20628", "isActive": true, "balance": "$1,678.95", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Peggy Oliver", "gender": "female", "company": "STROZEN", "email": "peggyoliver@strozen.com", "phone": "+1 (806) 454-2184", "address": "271 Dumont Avenue, Heil, New York, 7687", "about": "Adipisicing esse eu sit commodo incididunt. Cupidatat occaecat aute sunt reprehenderit ea culpa eu nostrud anim elit sit esse fugiat. In consequat cupidatat consectetur irure in adipisicing culpa consequat magna laborum cupidatat exercitation reprehenderit. Incididunt voluptate veniam reprehenderit reprehenderit ut laboris officia.\r\n", "registered": "2014-02-07T03:08:16-13:00", "latitude": 33.214883, "longitude": -51.905017, "tags": [ "proident", "anim", "labore", "enim", "dolor", "dolore", "proident" ], "friends": [ { "id": 0, "name": "Hoover Douglas" }, { "id": 1, "name": "Clark Brewer" }, { "id": 2, "name": "Esmeralda Walsh" } ], "greeting": "Hello, Peggy Oliver! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d69fe3cfa0e607625", "index": 231, "guid": "f194cf82-5e08-40fd-a887-ac0952e5da8e", "isActive": false, "balance": "$3,776.24", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Miranda Herring", "gender": "female", "company": "GEOSTELE", "email": "mirandaherring@geostele.com", "phone": "+1 (820) 525-3732", "address": "381 Grove Place, Flintville, Guam, 3965", "about": "Quis adipisicing enim ex ullamco reprehenderit consequat velit reprehenderit anim exercitation proident. Occaecat tempor culpa pariatur nisi. Minim culpa culpa consequat in cillum nulla irure. Cillum duis minim velit pariatur id elit consequat occaecat nostrud Lorem ut ipsum. Non tempor commodo incididunt Lorem mollit occaecat cillum. Ex nostrud consequat esse adipisicing duis id et ipsum proident id quis ipsum.\r\n", "registered": "2014-08-30T13:06:40-12:00", "latitude": -42.090097, "longitude": 100.079922, "tags": [ "culpa", "voluptate", "culpa", "id", "excepteur", "cupidatat", "consectetur" ], "friends": [ { "id": 0, "name": "Merrill Chaney" }, { "id": 1, "name": "Harrell Hunter" }, { "id": 2, "name": "Nguyen Cantrell" } ], "greeting": "Hello, Miranda Herring! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d1e4d1bd79db31706", "index": 232, "guid": "054013ae-b91a-438c-967a-01d52cd38420", "isActive": false, "balance": "$2,126.22", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Beryl Monroe", "gender": "female", "company": "MOLTONIC", "email": "berylmonroe@moltonic.com", "phone": "+1 (887) 557-3545", "address": "544 Jackson Place, Dotsero, Virgin Islands, 9743", "about": "Reprehenderit cupidatat in dolor veniam nulla culpa sunt. Sint aliquip labore labore aliqua excepteur nulla nulla qui irure esse duis exercitation labore. Eiusmod consectetur do elit adipisicing minim aliquip minim laboris qui eu occaecat. Incididunt reprehenderit amet officia qui eu pariatur sint enim.\r\n", "registered": "2014-01-24T14:42:17-13:00", "latitude": 83.675384, "longitude": 141.638589, "tags": [ "velit", "duis", "officia", "tempor", "ex", "minim", "nostrud" ], "friends": [ { "id": 0, "name": "Lois Harper" }, { "id": 1, "name": "Bates Stout" }, { "id": 2, "name": "Guzman Glenn" } ], "greeting": "Hello, Beryl Monroe! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1da9249ae9bab66bbe", "index": 233, "guid": "9452a0e6-9aab-43ae-a9f1-ba8174cb2b59", "isActive": false, "balance": "$1,166.22", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Mcfadden Goff", "gender": "male", "company": "NIKUDA", "email": "mcfaddengoff@nikuda.com", "phone": "+1 (882) 445-3487", "address": "512 Hemlock Street, Yettem, Massachusetts, 3424", "about": "Ut eiusmod do eiusmod Lorem et quis Lorem magna culpa deserunt laboris. Minim Lorem aliqua adipisicing voluptate veniam ipsum sit sunt laborum Lorem aliqua cillum minim nostrud. Ullamco ad anim ullamco labore eiusmod Lorem laboris.\r\n", "registered": "2014-05-27T22:00:06-12:00", "latitude": -45.315303, "longitude": -57.785539, "tags": [ "enim", "mollit", "ut", "ipsum", "anim", "exercitation", "dolor" ], "friends": [ { "id": 0, "name": "Kirby Cannon" }, { "id": 1, "name": "Doyle Buchanan" }, { "id": 2, "name": "Hill Trujillo" } ], "greeting": "Hello, Mcfadden Goff! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dc4ffeab9f6c1a250", "index": 234, "guid": "21006115-0deb-4028-9e3b-cdff4d0e299a", "isActive": true, "balance": "$3,391.35", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Dana Pittman", "gender": "female", "company": "AVIT", "email": "danapittman@avit.com", "phone": "+1 (981) 588-2393", "address": "605 Clay Street, Bowie, Utah, 3369", "about": "Reprehenderit voluptate ullamco elit proident est est occaecat veniam. Dolor do veniam non ipsum ex ad. Incididunt aliqua in proident pariatur sint enim et minim. Aute tempor consequat reprehenderit excepteur irure officia elit magna aliquip cillum. In et esse quis aliquip nulla ea tempor sint labore et excepteur. Veniam voluptate veniam officia labore et eiusmod ex.\r\n", "registered": "2014-09-01T11:26:03-12:00", "latitude": 81.789762, "longitude": 26.000062, "tags": [ "excepteur", "consequat", "incididunt", "consequat", "consequat", "aliquip", "nulla" ], "friends": [ { "id": 0, "name": "Phoebe Crane" }, { "id": 1, "name": "Margie Pruitt" }, { "id": 2, "name": "Franklin Holmes" } ], "greeting": "Hello, Dana Pittman! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d6ee082e8869af342", "index": 235, "guid": "a4a7e7e3-106c-463d-8513-acc978dbd10b", "isActive": false, "balance": "$2,964.82", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Dickson Bryant", "gender": "male", "company": "COMVENE", "email": "dicksonbryant@comvene.com", "phone": "+1 (972) 527-3537", "address": "208 Flatbush Avenue, Johnsonburg, Montana, 5041", "about": "Occaecat duis Lorem ut pariatur nisi tempor ea. Consectetur cillum culpa ipsum sint. Est minim id deserunt minim laboris nisi nostrud deserunt quis in occaecat ut commodo. Nulla laboris cupidatat magna ut nostrud fugiat excepteur irure.\r\n", "registered": "2014-04-01T17:42:40-13:00", "latitude": 2.418476, "longitude": 165.674583, "tags": [ "veniam", "sint", "consectetur", "incididunt", "est", "proident", "mollit" ], "friends": [ { "id": 0, "name": "Kasey Cummings" }, { "id": 1, "name": "Morse Gilmore" }, { "id": 2, "name": "Snider Powell" } ], "greeting": "Hello, Dickson Bryant! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dce5bd13be6f56416", "index": 236, "guid": "93d8c95f-b737-4cc5-ab3e-8e617f29487d", "isActive": true, "balance": "$2,113.08", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Washington Silva", "gender": "male", "company": "OPTYK", "email": "washingtonsilva@optyk.com", "phone": "+1 (907) 534-3222", "address": "174 Fanchon Place, Eden, Wisconsin, 6591", "about": "Adipisicing excepteur commodo exercitation minim ea labore ipsum ex sint veniam veniam. Nulla mollit do ut irure. Exercitation laboris ea est deserunt sit do deserunt officia nostrud mollit.\r\n", "registered": "2014-03-22T16:48:49-13:00", "latitude": -58.591315, "longitude": -23.240941, "tags": [ "reprehenderit", "ex", "eu", "cupidatat", "occaecat", "anim", "dolor" ], "friends": [ { "id": 0, "name": "Tia Wong" }, { "id": 1, "name": "Erickson Hood" }, { "id": 2, "name": "Lindsay Herrera" } ], "greeting": "Hello, Washington Silva! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d0e3509d30fec98dc", "index": 237, "guid": "e15b87c4-cf6c-4d33-b1e0-e9b922c65fdf", "isActive": false, "balance": "$3,441.81", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Nixon Hanson", "gender": "male", "company": "HAIRPORT", "email": "nixonhanson@hairport.com", "phone": "+1 (919) 443-3148", "address": "826 Dooley Street, Waumandee, Maine, 6664", "about": "Ullamco pariatur voluptate Lorem eiusmod sit dolore. Dolore occaecat quis proident anim occaecat tempor duis incididunt nostrud Lorem. Voluptate deserunt aliqua est proident ut id nisi ullamco veniam. Occaecat officia in sunt veniam elit nostrud. Mollit reprehenderit culpa laboris occaecat esse. Sunt dolore sit laborum commodo pariatur voluptate magna laboris ad anim aute commodo id laboris. In sit esse ex aute ad non.\r\n", "registered": "2014-03-19T00:33:05-13:00", "latitude": -37.410935, "longitude": 79.608786, "tags": [ "ea", "deserunt", "velit", "occaecat", "nisi", "minim", "labore" ], "friends": [ { "id": 0, "name": "Lamb Hammond" }, { "id": 1, "name": "Mercedes Burnett" }, { "id": 2, "name": "Alyce Barr" } ], "greeting": "Hello, Nixon Hanson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1da99c0b01cb5c0f54", "index": 238, "guid": "72d6024d-3197-4c86-aeb5-29d1442bc719", "isActive": true, "balance": "$2,647.91", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Avery Bradley", "gender": "male", "company": "TRI@TRIBALOG", "email": "averybradley@tri@tribalog.com", "phone": "+1 (932) 580-2247", "address": "664 Huron Street, Carlos, Virginia, 4032", "about": "Anim voluptate ullamco irure laboris sunt culpa in fugiat nisi culpa velit excepteur id. Irure culpa officia in ad aute cupidatat quis reprehenderit. Mollit aliquip et est consequat id mollit aute reprehenderit minim enim duis cupidatat consectetur excepteur. Eiusmod anim dolor velit mollit exercitation eiusmod minim culpa proident eiusmod minim.\r\n", "registered": "2014-08-22T20:00:11-12:00", "latitude": 85.224007, "longitude": -46.527424, "tags": [ "reprehenderit", "magna", "consectetur", "occaecat", "velit", "in", "consectetur" ], "friends": [ { "id": 0, "name": "Page Howard" }, { "id": 1, "name": "Crystal Webster" }, { "id": 2, "name": "Ray Weber" } ], "greeting": "Hello, Avery Bradley! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dffd5a5c596bf2e02", "index": 239, "guid": "fa8f00fa-bb25-4d0f-b60d-199cc786cdb5", "isActive": true, "balance": "$3,246.33", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Newman Faulkner", "gender": "male", "company": "ISOLOGIX", "email": "newmanfaulkner@isologix.com", "phone": "+1 (919) 554-3967", "address": "765 Tennis Court, Edgewater, Kentucky, 7826", "about": "Cupidatat anim laboris est tempor nulla ut ullamco nisi cupidatat et aliqua. Anim velit commodo dolore do aliquip cillum dolor anim ipsum quis sunt aliqua ullamco. Reprehenderit non adipisicing esse non dolor qui ea. Nisi esse exercitation ipsum magna anim est irure adipisicing dolor laborum in. Veniam amet ullamco nulla velit consequat id sint minim incididunt. Dolore elit eu aliquip veniam nisi et labore ut nostrud dolor sunt pariatur.\r\n", "registered": "2014-04-10T05:02:46-12:00", "latitude": -71.088522, "longitude": 110.301499, "tags": [ "aliqua", "reprehenderit", "consequat", "aute", "nisi", "nulla", "reprehenderit" ], "friends": [ { "id": 0, "name": "Ericka Richardson" }, { "id": 1, "name": "Sherman Hess" }, { "id": 2, "name": "Shannon Olson" } ], "greeting": "Hello, Newman Faulkner! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1dd21a8e1eba6adc34", "index": 240, "guid": "e7d67122-5402-48ab-8482-196feccbe16e", "isActive": true, "balance": "$1,872.23", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Carole Ferrell", "gender": "female", "company": "TOURMANIA", "email": "caroleferrell@tourmania.com", "phone": "+1 (849) 469-3181", "address": "665 Chase Court, Kent, Connecticut, 6730", "about": "Consectetur sint aute culpa nostrud velit laboris exercitation nisi. Et ea pariatur dolore deserunt nostrud aute. Nulla mollit ipsum exercitation laboris et.\r\n", "registered": "2014-06-07T17:44:32-12:00", "latitude": -22.116252, "longitude": -73.043173, "tags": [ "proident", "adipisicing", "aliqua", "velit", "officia", "quis", "quis" ], "friends": [ { "id": 0, "name": "Fuentes Blevins" }, { "id": 1, "name": "Hilda Andrews" }, { "id": 2, "name": "Wilda Campos" } ], "greeting": "Hello, Carole Ferrell! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1df6c41cd0c7307f22", "index": 241, "guid": "f1923672-a608-4856-9306-9a9e1d11b544", "isActive": true, "balance": "$2,263.13", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Vonda Dean", "gender": "female", "company": "CALCU", "email": "vondadean@calcu.com", "phone": "+1 (952) 597-2149", "address": "750 Wortman Avenue, Vivian, Mississippi, 2891", "about": "Deserunt consequat elit culpa ea culpa minim ad velit ea. Proident reprehenderit nisi aliquip nostrud. Cillum nostrud amet dolore dolore voluptate ex veniam sit. Nisi eu adipisicing pariatur cillum Lorem amet cillum sit. Qui nisi eiusmod consectetur nisi. Ut excepteur ut deserunt culpa deserunt ipsum. Excepteur velit minim est aliqua tempor ipsum fugiat do ex.\r\n", "registered": "2014-07-26T22:53:42-12:00", "latitude": -34.725318, "longitude": -83.360613, "tags": [ "consectetur", "ea", "magna", "velit", "ea", "velit", "do" ], "friends": [ { "id": 0, "name": "Johnston Cotton" }, { "id": 1, "name": "Shepard Winters" }, { "id": 2, "name": "Boyle Payne" } ], "greeting": "Hello, Vonda Dean! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1daa1a37bbce133146", "index": 242, "guid": "363943cc-a598-486b-b6aa-188516d38bb9", "isActive": true, "balance": "$3,008.44", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Browning Puckett", "gender": "male", "company": "METROZ", "email": "browningpuckett@metroz.com", "phone": "+1 (913) 480-2573", "address": "792 Turnbull Avenue, Brule, Washington, 3661", "about": "Ex ea esse incididunt excepteur culpa cillum dolore nostrud culpa. Eiusmod ea eu occaecat officia. Cupidatat do sit labore velit esse consequat deserunt in.\r\n", "registered": "2014-04-07T06:43:45-12:00", "latitude": 39.224827, "longitude": -5.573993, "tags": [ "non", "officia", "ex", "elit", "ut", "magna", "consequat" ], "friends": [ { "id": 0, "name": "Pena Finley" }, { "id": 1, "name": "Valerie Conrad" }, { "id": 2, "name": "Barr Allison" } ], "greeting": "Hello, Browning Puckett! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d4ebd8e4e30538f68", "index": 243, "guid": "b8c93b18-36f2-4909-82ac-8b2ae0aebc6a", "isActive": false, "balance": "$1,781.70", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Marta Dennis", "gender": "female", "company": "XANIDE", "email": "martadennis@xanide.com", "phone": "+1 (972) 439-3746", "address": "403 Albany Avenue, Torboy, Tennessee, 4385", "about": "Ea nisi eu nisi cupidatat ad cillum cillum ad ipsum. Velit exercitation pariatur incididunt laborum elit consequat dolor nulla incididunt. Exercitation irure cillum consequat laborum. Velit laboris officia ad anim qui Lorem enim aliquip sit exercitation incididunt quis. Enim officia proident ullamco anim officia velit. Consequat velit ex do ut.\r\n", "registered": "2014-04-22T14:49:48-12:00", "latitude": 23.174055, "longitude": -160.552289, "tags": [ "deserunt", "dolor", "do", "mollit", "exercitation", "laborum", "mollit" ], "friends": [ { "id": 0, "name": "Bradshaw Bright" }, { "id": 1, "name": "Molly Freeman" }, { "id": 2, "name": "Noreen Vargas" } ], "greeting": "Hello, Marta Dennis! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d92500044536de605", "index": 244, "guid": "b817d13d-5fe8-474c-a1ee-f735e4f27ce3", "isActive": false, "balance": "$2,625.44", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "James Fuentes", "gender": "male", "company": "BUZZNESS", "email": "jamesfuentes@buzzness.com", "phone": "+1 (994) 527-3668", "address": "763 Farragut Place, Elizaville, Alabama, 5923", "about": "Occaecat aliquip amet ad in ipsum cupidatat sit eu commodo. Labore eiusmod aliquip non reprehenderit laboris quis amet sunt adipisicing veniam commodo incididunt. Officia ea Lorem anim velit do ullamco veniam Lorem. Labore nostrud exercitation officia nisi exercitation. Aliqua nulla esse excepteur ut ea et est enim irure anim enim elit ex. Ullamco aliquip voluptate dolore magna magna qui mollit consectetur non. Sunt sunt consequat fugiat est anim Lorem ullamco consectetur eu adipisicing officia.\r\n", "registered": "2014-04-27T07:51:09-12:00", "latitude": -37.353792, "longitude": -57.994234, "tags": [ "officia", "ullamco", "sit", "anim", "laborum", "eu", "irure" ], "friends": [ { "id": 0, "name": "Oliver Giles" }, { "id": 1, "name": "Ayers Singleton" }, { "id": 2, "name": "Burks Farmer" } ], "greeting": "Hello, James Fuentes! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d88b748b4c4ac127b", "index": 245, "guid": "dddb24e0-1c26-49a3-9e47-ec2f163b1c3d", "isActive": true, "balance": "$1,953.16", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Hatfield Lewis", "gender": "male", "company": "VERTIDE", "email": "hatfieldlewis@vertide.com", "phone": "+1 (949) 565-2836", "address": "250 Temple Court, Bridgetown, Ohio, 5028", "about": "Ipsum sunt dolore voluptate ullamco elit. Exercitation cupidatat laboris pariatur mollit et nisi non in. Id aute exercitation deserunt cillum qui aliquip commodo ullamco consequat nulla duis. Cillum incididunt ex in est sit commodo sint cillum deserunt cillum amet.\r\n", "registered": "2014-09-01T05:01:59-12:00", "latitude": 41.491635, "longitude": 60.619922, "tags": [ "incididunt", "excepteur", "incididunt", "velit", "qui", "quis", "magna" ], "friends": [ { "id": 0, "name": "Russo Castaneda" }, { "id": 1, "name": "Dale Burgess" }, { "id": 2, "name": "Vicky Brooks" } ], "greeting": "Hello, Hatfield Lewis! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1de962d388f5aa7991", "index": 246, "guid": "22dcd653-9f8f-49bd-a75e-10c5e95ae8a7", "isActive": true, "balance": "$2,004.61", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Faye Boyer", "gender": "female", "company": "CALLFLEX", "email": "fayeboyer@callflex.com", "phone": "+1 (820) 427-3771", "address": "294 Wyona Street, Oley, Hawaii, 2181", "about": "Eiusmod amet mollit voluptate duis. Officia ad magna laboris nostrud dolor. Culpa proident ut sint sint ut tempor pariatur. Nisi est esse duis ut mollit dolor cupidatat. Mollit tempor et eu reprehenderit enim culpa est amet nostrud ullamco aliqua nostrud aliqua.\r\n", "registered": "2014-01-20T06:21:28-13:00", "latitude": 36.644984, "longitude": 31.697216, "tags": [ "in", "mollit", "est", "ea", "ut", "aliqua", "sint" ], "friends": [ { "id": 0, "name": "Hester Cortez" }, { "id": 1, "name": "Stacey Beck" }, { "id": 2, "name": "Mejia Hurley" } ], "greeting": "Hello, Faye Boyer! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1da75b0485c51eb8cf", "index": 247, "guid": "52270dbf-8525-4b2d-9705-6365e6f6bd22", "isActive": true, "balance": "$2,682.69", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Graciela Macias", "gender": "female", "company": "ENOMEN", "email": "gracielamacias@enomen.com", "phone": "+1 (953) 508-3404", "address": "333 Madoc Avenue, Crenshaw, New Mexico, 5702", "about": "Elit quis magna sunt nulla dolore. Nostrud fugiat deserunt laboris officia officia. Mollit commodo dolor ullamco amet veniam eu sunt. Laboris ea aute sunt deserunt aliquip consectetur amet elit.\r\n", "registered": "2014-01-02T02:55:39-13:00", "latitude": -81.610395, "longitude": 10.520955, "tags": [ "exercitation", "reprehenderit", "dolor", "proident", "consequat", "ut", "magna" ], "friends": [ { "id": 0, "name": "Gonzalez Buckner" }, { "id": 1, "name": "Edwina Cooke" }, { "id": 2, "name": "Chan Garrett" } ], "greeting": "Hello, Graciela Macias! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1dc52783cef6d57ccf", "index": 248, "guid": "7b01349b-9bc2-4630-a75e-e03fdb62448f", "isActive": false, "balance": "$1,617.94", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Susie Mcleod", "gender": "female", "company": "EVENTAGE", "email": "susiemcleod@eventage.com", "phone": "+1 (813) 401-2799", "address": "208 Navy Street, Valle, Maryland, 8217", "about": "Ad velit in commodo nisi. Et incididunt do fugiat ut id laborum proident ad culpa irure incididunt Lorem do nostrud. Nulla reprehenderit nulla id occaecat commodo sint non ad officia aute est nulla et. Labore Lorem sit excepteur voluptate sunt id.\r\n", "registered": "2014-01-31T13:28:46-13:00", "latitude": 73.74569, "longitude": 62.524409, "tags": [ "elit", "esse", "in", "proident", "ad", "dolor", "sunt" ], "friends": [ { "id": 0, "name": "Lucy Mcgee" }, { "id": 1, "name": "Shana Horne" }, { "id": 2, "name": "Buckner Kinney" } ], "greeting": "Hello, Susie Mcleod! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1de7398d6171efba2f", "index": 249, "guid": "12eacdaf-a5ec-4f76-9768-f66a440931a8", "isActive": true, "balance": "$1,292.04", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Nadine Witt", "gender": "female", "company": "IDETICA", "email": "nadinewitt@idetica.com", "phone": "+1 (995) 540-3946", "address": "129 Cumberland Walk, Jacksonwald, Alaska, 6973", "about": "Do mollit reprehenderit magna ex tempor aliquip eiusmod minim occaecat veniam exercitation. Consectetur magna nulla officia non nisi eiusmod nulla tempor. Lorem nostrud nulla occaecat ullamco voluptate qui ex mollit dolore officia nulla tempor occaecat ex. Exercitation aliquip sit tempor in eiusmod est excepteur.\r\n", "registered": "2014-05-06T17:59:01-12:00", "latitude": -5.315754, "longitude": 118.453423, "tags": [ "tempor", "pariatur", "eu", "ipsum", "ipsum", "incididunt", "pariatur" ], "friends": [ { "id": 0, "name": "Deidre Perkins" }, { "id": 1, "name": "Mavis Merrill" }, { "id": 2, "name": "Karin Cherry" } ], "greeting": "Hello, Nadine Witt! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1da8f18853f57dc60a", "index": 250, "guid": "dcf451a5-e4a0-4b4e-a207-5a4f6b5cca0d", "isActive": true, "balance": "$2,660.61", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Carroll Lucas", "gender": "male", "company": "SLAMBDA", "email": "carrolllucas@slambda.com", "phone": "+1 (985) 511-3853", "address": "345 Luquer Street, Walton, Arizona, 3192", "about": "Sit veniam nostrud et ea proident ad. Consequat magna proident pariatur officia veniam proident elit cillum veniam. Voluptate cupidatat labore commodo commodo id pariatur culpa consequat dolore do laboris incididunt sunt adipisicing. Fugiat elit id dolor non veniam occaecat sint. Culpa elit laboris cillum consectetur in ea occaecat mollit ea minim in.\r\n", "registered": "2014-06-17T06:06:35-12:00", "latitude": 55.108834, "longitude": 179.039102, "tags": [ "ex", "eu", "duis", "cillum", "Lorem", "incididunt", "sunt" ], "friends": [ { "id": 0, "name": "Byrd Hancock" }, { "id": 1, "name": "Marquita Wilkerson" }, { "id": 2, "name": "Samantha Zamora" } ], "greeting": "Hello, Carroll Lucas! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d0f6497622727a29d", "index": 251, "guid": "bdf62f76-d286-4662-9caf-a0d51a23232b", "isActive": false, "balance": "$1,431.32", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Ellison Mack", "gender": "male", "company": "INVENTURE", "email": "ellisonmack@inventure.com", "phone": "+1 (899) 510-2339", "address": "560 Stillwell Avenue, Westboro, Federated States Of Micronesia, 3261", "about": "Cillum eiusmod laborum dolor sit. Magna aliquip laboris aute ea elit ut ea deserunt. Consectetur enim duis eu magna cupidatat consequat voluptate minim anim.\r\n", "registered": "2014-04-08T18:31:05-12:00", "latitude": 77.336805, "longitude": -19.493816, "tags": [ "deserunt", "magna", "consequat", "officia", "cillum", "qui", "ea" ], "friends": [ { "id": 0, "name": "Delores Oneill" }, { "id": 1, "name": "Maribel Lawson" }, { "id": 2, "name": "Faulkner Thomas" } ], "greeting": "Hello, Ellison Mack! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d13f77d8569f74bb9", "index": 252, "guid": "fc6a6eef-c90c-423e-9331-da2d265e59d9", "isActive": true, "balance": "$3,607.02", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Farmer Stein", "gender": "male", "company": "ACCUPRINT", "email": "farmerstein@accuprint.com", "phone": "+1 (894) 495-2453", "address": "907 Strauss Street, Delco, Oklahoma, 5165", "about": "Qui cupidatat ex mollit amet. Sint elit nostrud et ea adipisicing est sit. Fugiat labore occaecat excepteur esse deserunt ullamco esse qui dolore eu in mollit aute. Commodo duis aliqua elit tempor id pariatur culpa. Fugiat velit ea ipsum minim tempor in veniam. Pariatur et culpa tempor ullamco amet. Nisi in occaecat pariatur excepteur minim quis duis.\r\n", "registered": "2014-06-21T18:25:44-12:00", "latitude": -26.098237, "longitude": -173.795076, "tags": [ "sunt", "eiusmod", "aliqua", "laboris", "proident", "sit", "est" ], "friends": [ { "id": 0, "name": "Rosario Jacobs" }, { "id": 1, "name": "Morgan Malone" }, { "id": 2, "name": "Gayle Lynch" } ], "greeting": "Hello, Farmer Stein! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d2abfc28c065fb4a0", "index": 253, "guid": "0a3f53df-6b6d-4603-9cdc-040d4f857be3", "isActive": false, "balance": "$1,582.52", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Karina Hendrix", "gender": "female", "company": "EWAVES", "email": "karinahendrix@ewaves.com", "phone": "+1 (910) 560-2624", "address": "149 Chapel Street, Garberville, Michigan, 6156", "about": "In esse esse sit culpa tempor eiusmod non. Amet sint esse tempor exercitation ad consectetur. Aliqua deserunt mollit consectetur amet cupidatat voluptate in. In nulla esse do sunt est cillum nulla fugiat culpa nostrud non amet. Sit laboris magna ipsum irure esse aute ex veniam aliqua tempor excepteur cillum duis minim.\r\n", "registered": "2014-09-03T09:16:54-12:00", "latitude": 21.90211, "longitude": -144.372403, "tags": [ "enim", "tempor", "reprehenderit", "in", "cillum", "commodo", "ea" ], "friends": [ { "id": 0, "name": "Guadalupe Meyer" }, { "id": 1, "name": "Lourdes Walton" }, { "id": 2, "name": "Kellie Stanley" } ], "greeting": "Hello, Karina Hendrix! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d618f38314e04e41b", "index": 254, "guid": "3db6c08b-d66e-454a-873c-14bf79347150", "isActive": false, "balance": "$2,016.47", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Elaine Collins", "gender": "female", "company": "PURIA", "email": "elainecollins@puria.com", "phone": "+1 (951) 446-2388", "address": "525 Autumn Avenue, Gambrills, Kansas, 4648", "about": "Adipisicing est eu voluptate pariatur aliqua anim laboris mollit ullamco veniam. Enim laboris nostrud consequat eu elit quis reprehenderit esse. Excepteur ad minim occaecat do dolore id ea. Non irure ullamco irure culpa proident cillum cupidatat esse irure. Sunt laboris ut minim pariatur ullamco.\r\n", "registered": "2014-02-26T08:37:28-13:00", "latitude": -56.169093, "longitude": -60.284408, "tags": [ "exercitation", "ut", "eiusmod", "voluptate", "nostrud", "id", "do" ], "friends": [ { "id": 0, "name": "Davis Sosa" }, { "id": 1, "name": "Henrietta Sampson" }, { "id": 2, "name": "Frank Cain" } ], "greeting": "Hello, Elaine Collins! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ddc6001e9143017b9", "index": 255, "guid": "6282c5dc-537a-4229-9489-8fbf8cf7a8b3", "isActive": false, "balance": "$1,199.88", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Leanna Sawyer", "gender": "female", "company": "CIRCUM", "email": "leannasawyer@circum.com", "phone": "+1 (910) 434-3395", "address": "472 Exeter Street, Tryon, South Dakota, 225", "about": "Est excepteur eiusmod id dolore ea culpa amet enim velit occaecat ad proident sunt sint. Ad laboris pariatur ipsum reprehenderit officia consequat nulla aliquip non incididunt ullamco proident voluptate. Ex aliquip anim fugiat voluptate eu anim incididunt ex ea amet eu. Sint voluptate anim sit excepteur eu do. Eiusmod nisi aliqua mollit reprehenderit sint cillum anim est ea sit dolor. Minim deserunt enim labore nostrud eiusmod ex magna sunt labore reprehenderit labore.\r\n", "registered": "2014-01-14T09:43:00-13:00", "latitude": 81.402627, "longitude": -174.03204, "tags": [ "amet", "enim", "deserunt", "ad", "fugiat", "ullamco", "ea" ], "friends": [ { "id": 0, "name": "Bianca Wilder" }, { "id": 1, "name": "Bridget Mccray" }, { "id": 2, "name": "Bobbi Sanford" } ], "greeting": "Hello, Leanna Sawyer! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1df2625d169b50c5f9", "index": 256, "guid": "9a1de3f7-5e8e-47b0-bff3-8bb5598db0b0", "isActive": false, "balance": "$2,680.28", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Lewis Cardenas", "gender": "male", "company": "ENTROFLEX", "email": "lewiscardenas@entroflex.com", "phone": "+1 (946) 487-3379", "address": "756 Prospect Avenue, Dodge, West Virginia, 2110", "about": "Dolor elit nulla dolore laboris eu tempor ut amet. Eu pariatur sint tempor qui ipsum cupidatat. Laboris exercitation nisi qui qui id exercitation mollit. Non est pariatur eiusmod pariatur aute excepteur dolore laboris qui qui Lorem eiusmod. Veniam et nostrud enim consectetur officia in eiusmod irure qui cillum. Tempor est exercitation culpa cupidatat laborum amet nisi voluptate nisi.\r\n", "registered": "2014-05-15T08:04:53-12:00", "latitude": -74.047635, "longitude": 17.989497, "tags": [ "et", "mollit", "velit", "non", "magna", "ex", "aliqua" ], "friends": [ { "id": 0, "name": "Pollard Morrow" }, { "id": 1, "name": "Evangelina Livingston" }, { "id": 2, "name": "Sara Hamilton" } ], "greeting": "Hello, Lewis Cardenas! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1db73a9c62769e9d76", "index": 257, "guid": "8318bb8e-e332-4322-baa9-4d57cf95738e", "isActive": false, "balance": "$1,724.49", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Marietta Shepherd", "gender": "female", "company": "CORPORANA", "email": "mariettashepherd@corporana.com", "phone": "+1 (953) 463-3579", "address": "594 Boardwalk , Oceola, Texas, 4608", "about": "Proident fugiat in cupidatat dolore eu do fugiat est. Cillum voluptate anim deserunt consectetur enim tempor. Tempor ullamco ea eu velit sit labore aliquip id non eiusmod nulla irure ad sunt. Nostrud veniam consequat veniam id enim nostrud in cillum minim reprehenderit veniam eiusmod. Cillum voluptate ipsum dolor anim pariatur. Ipsum ex labore dolor veniam cillum consectetur id ipsum minim enim ex. Cupidatat duis sint incididunt occaecat occaecat laboris.\r\n", "registered": "2014-09-14T01:06:07-12:00", "latitude": 23.158531, "longitude": 11.753538, "tags": [ "amet", "qui", "do", "proident", "irure", "laborum", "labore" ], "friends": [ { "id": 0, "name": "Powers Clayton" }, { "id": 1, "name": "Christy Atkinson" }, { "id": 2, "name": "Madeleine Clay" } ], "greeting": "Hello, Marietta Shepherd! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d79b0f7a4691f5536", "index": 258, "guid": "86d8efa8-b400-453b-b7e2-13713941cd95", "isActive": true, "balance": "$3,128.50", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Chrystal Whitehead", "gender": "female", "company": "POLARIA", "email": "chrystalwhitehead@polaria.com", "phone": "+1 (823) 482-2908", "address": "756 Chestnut Street, Juarez, Oregon, 3264", "about": "Sit ut adipisicing velit ex. Aliquip ut aute eiusmod exercitation deserunt ullamco eu duis laboris tempor mollit nisi anim labore. Laborum velit elit dolor deserunt.\r\n", "registered": "2014-07-12T17:04:16-12:00", "latitude": 43.263908, "longitude": -15.557948, "tags": [ "proident", "commodo", "occaecat", "sunt", "laborum", "consequat", "culpa" ], "friends": [ { "id": 0, "name": "Leach Rush" }, { "id": 1, "name": "Roxanne Hayden" }, { "id": 2, "name": "Pacheco Wooten" } ], "greeting": "Hello, Chrystal Whitehead! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dd373e37a5f9df98c", "index": 259, "guid": "6952e75c-5402-4bb0-b0a7-9bf45d5306f9", "isActive": true, "balance": "$3,488.08", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Juliana Blankenship", "gender": "female", "company": "FURNAFIX", "email": "julianablankenship@furnafix.com", "phone": "+1 (914) 459-2980", "address": "455 Driggs Avenue, Rutherford, Nevada, 405", "about": "Qui laboris et elit cillum consectetur qui id est qui. Ullamco et veniam aute ea cillum sunt irure consectetur proident ad pariatur incididunt. Cillum mollit sint sit sint. Dolore nisi duis dolor in cillum velit eiusmod in cupidatat ad. Anim ut nulla labore aliquip ad aute non. Ullamco elit non nulla deserunt. Culpa adipisicing in officia quis aliqua tempor fugiat id qui qui.\r\n", "registered": "2014-09-09T22:25:41-12:00", "latitude": 84.202201, "longitude": 60.21898, "tags": [ "do", "cupidatat", "eu", "ea", "occaecat", "mollit", "fugiat" ], "friends": [ { "id": 0, "name": "Tracey Kent" }, { "id": 1, "name": "Melanie Ramirez" }, { "id": 2, "name": "Foster Hardy" } ], "greeting": "Hello, Juliana Blankenship! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ddce0b43827a1046f", "index": 260, "guid": "bf6467aa-1f1c-4a02-ab5f-fc6ddf14f6cc", "isActive": true, "balance": "$2,018.38", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Geraldine Ross", "gender": "female", "company": "SUNCLIPSE", "email": "geraldineross@sunclipse.com", "phone": "+1 (869) 422-3874", "address": "314 Beard Street, Bethpage, Minnesota, 9514", "about": "Fugiat irure deserunt consectetur ullamco eu. Voluptate anim nostrud esse Lorem ex magna ea nisi laboris ex et id. Laborum pariatur ex eiusmod consequat aute ad ex ut dolore ipsum minim sint id officia. Magna quis enim duis nostrud Lorem qui tempor occaecat nostrud aliquip nulla consequat ad. Enim qui mollit aliqua duis minim dolor dolor aliqua amet aliquip cillum officia laboris tempor. Et veniam nisi aliqua culpa nulla labore tempor anim irure. Duis qui veniam anim aute.\r\n", "registered": "2014-03-12T09:26:53-13:00", "latitude": -45.319468, "longitude": 72.53343, "tags": [ "consectetur", "velit", "minim", "adipisicing", "cupidatat", "et", "in" ], "friends": [ { "id": 0, "name": "Patrica Wade" }, { "id": 1, "name": "Rodriquez Cunningham" }, { "id": 2, "name": "Thelma Noble" } ], "greeting": "Hello, Geraldine Ross! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1da1d3388ab4edd25f", "index": 261, "guid": "c5695b2b-86ee-4477-8a78-40b1a05d34ba", "isActive": true, "balance": "$1,430.87", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Wyatt Montgomery", "gender": "male", "company": "MOTOVATE", "email": "wyattmontgomery@motovate.com", "phone": "+1 (894) 525-3496", "address": "397 Bedford Avenue, Turah, Missouri, 7370", "about": "Occaecat velit laboris consequat non consequat non officia Lorem. Ullamco magna occaecat laborum cupidatat do ea. Dolor tempor aliqua deserunt nulla culpa. Dolore quis sint laborum ea sunt consectetur duis enim quis. Id duis amet incididunt fugiat qui consequat labore elit et ipsum non mollit aliquip. Officia ullamco tempor velit nisi irure cupidatat dolore nostrud reprehenderit aute enim cillum.\r\n", "registered": "2014-04-27T00:22:07-12:00", "latitude": 76.750161, "longitude": 106.812077, "tags": [ "cupidatat", "ea", "incididunt", "laboris", "ex", "mollit", "aliquip" ], "friends": [ { "id": 0, "name": "Jordan Tran" }, { "id": 1, "name": "Dixie Valdez" }, { "id": 2, "name": "Cunningham Hebert" } ], "greeting": "Hello, Wyatt Montgomery! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d8522480418b96844", "index": 262, "guid": "50f7140b-bab7-4527-822d-8cb93c5e7dc3", "isActive": false, "balance": "$2,094.64", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Agnes Simmons", "gender": "female", "company": "ELENTRIX", "email": "agnessimmons@elentrix.com", "phone": "+1 (908) 571-2347", "address": "137 Union Avenue, Neahkahnie, Rhode Island, 8928", "about": "Ut eu ipsum ipsum qui fugiat labore ipsum ipsum et ea. Eu pariatur veniam laboris nisi aliquip voluptate nostrud. Ullamco amet sunt sunt ea tempor dolore aute dolor mollit Lorem ut sit pariatur. Veniam consequat dolore excepteur enim proident sit eiusmod consequat eiusmod. Aliqua labore aliqua ullamco Lorem veniam pariatur irure cupidatat eu laborum pariatur dolore magna consectetur. Quis do excepteur sint excepteur ex ex aliquip nostrud amet do. Eiusmod minim ullamco nostrud irure ut.\r\n", "registered": "2014-08-14T22:50:24-12:00", "latitude": -86.04142, "longitude": -171.957548, "tags": [ "cupidatat", "enim", "culpa", "sit", "irure", "aliqua", "reprehenderit" ], "friends": [ { "id": 0, "name": "Montoya Fox" }, { "id": 1, "name": "Monroe Mosley" }, { "id": 2, "name": "Anne Cole" } ], "greeting": "Hello, Agnes Simmons! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1db60392cfa111b8e7", "index": 263, "guid": "86d88965-686e-4397-81db-c51405c29ced", "isActive": false, "balance": "$1,125.03", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Waters Waters", "gender": "male", "company": "BLEENDOT", "email": "waterswaters@bleendot.com", "phone": "+1 (957) 497-2449", "address": "626 Classon Avenue, Verdi, Florida, 7482", "about": "Dolor pariatur sint consectetur ipsum irure quis labore aliquip nisi ut cupidatat aliquip culpa ipsum. Tempor id veniam labore culpa culpa nostrud reprehenderit. Fugiat non incididunt in ut ullamco nisi laboris. Duis Lorem duis irure exercitation fugiat est quis fugiat laborum cillum non.\r\n", "registered": "2014-01-06T20:16:11-13:00", "latitude": 86.42373, "longitude": 71.513418, "tags": [ "in", "labore", "non", "duis", "esse", "et", "laborum" ], "friends": [ { "id": 0, "name": "Gay Vega" }, { "id": 1, "name": "Gaines Madden" }, { "id": 2, "name": "Cotton Bradford" } ], "greeting": "Hello, Waters Waters! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1d2667c16fbb6da873", "index": 264, "guid": "880bf77f-a1ff-4b33-bd66-f64bfa658754", "isActive": false, "balance": "$2,069.50", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Simon Slater", "gender": "male", "company": "ZEAM", "email": "simonslater@zeam.com", "phone": "+1 (860) 476-3924", "address": "479 Dobbin Street, Dixie, North Carolina, 6174", "about": "Nostrud enim anim sit irure cillum consequat minim anim culpa. Velit excepteur esse eiusmod laborum ipsum aute nisi ad. Dolor laborum amet et ipsum aliqua enim amet in ullamco.\r\n", "registered": "2014-07-14T04:27:23-12:00", "latitude": -62.847036, "longitude": 56.319644, "tags": [ "aliqua", "minim", "minim", "Lorem", "mollit", "ad", "deserunt" ], "friends": [ { "id": 0, "name": "Annabelle Maddox" }, { "id": 1, "name": "Rios Ward" }, { "id": 2, "name": "Ruby Rice" } ], "greeting": "Hello, Simon Slater! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d872af2e7dbc65b89", "index": 265, "guid": "5a11ac16-1d71-4bd7-a744-ca28e9dd0eaf", "isActive": false, "balance": "$3,673.77", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Craft Hendricks", "gender": "male", "company": "TROPOLIS", "email": "crafthendricks@tropolis.com", "phone": "+1 (854) 585-3806", "address": "147 Lefferts Avenue, Coral, New Hampshire, 8497", "about": "Nisi mollit aliqua culpa labore ipsum. Quis consectetur ad excepteur ea deserunt. Aliquip est incididunt est cupidatat nostrud pariatur aliqua incididunt velit ipsum reprehenderit. Laboris sit duis cupidatat deserunt et ex magna laboris id amet excepteur labore ea. Do laboris culpa consectetur commodo minim est ea labore commodo labore ipsum aute. Laborum aute enim ea enim in. Minim minim officia ex consectetur cillum id in reprehenderit.\r\n", "registered": "2014-01-16T08:42:44-13:00", "latitude": 36.291323, "longitude": 41.646991, "tags": [ "exercitation", "ullamco", "laborum", "irure", "duis", "ut", "consequat" ], "friends": [ { "id": 0, "name": "Elva Morse" }, { "id": 1, "name": "Price James" }, { "id": 2, "name": "Carver Griffith" } ], "greeting": "Hello, Craft Hendricks! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1d6bf30ad13be33998", "index": 266, "guid": "afc06cf4-540f-49c4-8c79-e2846e2ef15e", "isActive": true, "balance": "$1,798.43", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Moore Webb", "gender": "male", "company": "TINGLES", "email": "moorewebb@tingles.com", "phone": "+1 (951) 513-2670", "address": "511 Navy Walk, Rushford, Arkansas, 887", "about": "Deserunt adipisicing magna deserunt dolor elit commodo officia aliqua deserunt excepteur proident minim cupidatat dolor. Exercitation consectetur sit non excepteur enim excepteur pariatur esse minim enim ullamco sit nulla. Est adipisicing do irure irure et fugiat tempor labore elit voluptate ea ad do eu. Cillum laborum nostrud consectetur esse non nostrud proident sunt velit. Lorem dolore anim consequat laborum in deserunt commodo eiusmod quis. Eiusmod qui occaecat nulla elit anim veniam est ut magna.\r\n", "registered": "2014-05-24T21:14:19-12:00", "latitude": 36.250496, "longitude": 24.569313, "tags": [ "laboris", "mollit", "occaecat", "deserunt", "ipsum", "proident", "nulla" ], "friends": [ { "id": 0, "name": "Esperanza Kirk" }, { "id": 1, "name": "Christi Rutledge" }, { "id": 2, "name": "Garrison Baker" } ], "greeting": "Hello, Moore Webb! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1dbf4b0eb202849a11", "index": 267, "guid": "654075ea-7dbc-4c09-a606-52ce8ba1e070", "isActive": false, "balance": "$2,394.87", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Debra Daniels", "gender": "female", "company": "DOGNOST", "email": "debradaniels@dognost.com", "phone": "+1 (895) 576-2201", "address": "871 Schaefer Street, Omar, Iowa, 3772", "about": "Aliquip esse consequat ut cillum cillum anim voluptate. Ut sint dolor tempor amet magna. Magna aliquip officia laboris esse ea nulla id adipisicing eiusmod in. Amet aliqua pariatur officia eiusmod.\r\n", "registered": "2014-04-27T16:50:56-12:00", "latitude": -72.239744, "longitude": 179.115763, "tags": [ "commodo", "aliquip", "esse", "duis", "voluptate", "veniam", "ad" ], "friends": [ { "id": 0, "name": "Peterson Wright" }, { "id": 1, "name": "Valarie Patel" }, { "id": 2, "name": "Melinda Cook" } ], "greeting": "Hello, Debra Daniels! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d1dcfaef1a1e94bdf", "index": 268, "guid": "079128f7-f4e7-4b71-9772-b4de16426e91", "isActive": true, "balance": "$2,094.97", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Nunez Bullock", "gender": "male", "company": "RECOGNIA", "email": "nunezbullock@recognia.com", "phone": "+1 (891) 424-2508", "address": "817 Garden Place, Helen, Nebraska, 6874", "about": "Consequat reprehenderit deserunt excepteur fugiat dolor non nisi excepteur eiusmod in culpa. Id dolore tempor sint fugiat adipisicing do ex consequat esse qui irure. Consequat laboris adipisicing commodo est irure exercitation labore consectetur sunt exercitation cupidatat non occaecat incididunt. Est sit laborum do reprehenderit amet nulla ea.\r\n", "registered": "2014-08-13T03:07:11-12:00", "latitude": -23.394105, "longitude": 76.923115, "tags": [ "veniam", "duis", "occaecat", "do", "irure", "Lorem", "sit" ], "friends": [ { "id": 0, "name": "Lucas Nicholson" }, { "id": 1, "name": "Reese Grimes" }, { "id": 2, "name": "Deleon Olsen" } ], "greeting": "Hello, Nunez Bullock! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ddf013a114ce58628", "index": 269, "guid": "b59509d9-750c-4648-baa5-1315cd6ad5a0", "isActive": false, "balance": "$2,601.39", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Margaret Ramsey", "gender": "female", "company": "EXTRO", "email": "margaretramsey@extro.com", "phone": "+1 (993) 597-2624", "address": "845 Bergen Court, Urbana, District Of Columbia, 6970", "about": "Ea non minim qui Lorem aliqua non. Lorem ex consectetur consectetur sit cillum adipisicing amet reprehenderit commodo excepteur. Ipsum dolore laborum ipsum do non. Officia commodo ullamco culpa dolore fugiat consectetur non nisi dolor nisi.\r\n", "registered": "2014-08-26T10:51:45-12:00", "latitude": 85.226034, "longitude": -45.164004, "tags": [ "duis", "occaecat", "amet", "nostrud", "sunt", "nulla", "do" ], "friends": [ { "id": 0, "name": "Adrienne Barrera" }, { "id": 1, "name": "Angelia Moses" }, { "id": 2, "name": "Kathrine Huff" } ], "greeting": "Hello, Margaret Ramsey! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d97e09f6579dab05c", "index": 270, "guid": "a3760ece-400d-469a-9c03-e2be045e9f68", "isActive": true, "balance": "$1,553.28", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Essie Mcintyre", "gender": "female", "company": "CANOPOLY", "email": "essiemcintyre@canopoly.com", "phone": "+1 (942) 403-3236", "address": "389 Stillwell Place, Camino, New Jersey, 8187", "about": "Commodo consequat sunt reprehenderit qui proident nostrud sint minim dolore ad id eu eiusmod. Ex laborum enim Lorem qui minim magna irure eu voluptate eu commodo excepteur aliquip. Sint mollit ea labore aliqua amet ex fugiat laboris ea fugiat culpa elit in. Nisi aliqua officia mollit exercitation tempor ea non ad ipsum culpa. Velit occaecat exercitation adipisicing adipisicing pariatur consectetur sunt dolore sit culpa culpa do ullamco.\r\n", "registered": "2014-04-03T01:27:20-13:00", "latitude": 2.069493, "longitude": 18.348731, "tags": [ "tempor", "nostrud", "sint", "Lorem", "nulla", "eiusmod", "eiusmod" ], "friends": [ { "id": 0, "name": "Holland Hicks" }, { "id": 1, "name": "Wiggins Carlson" }, { "id": 2, "name": "Lauri Ayers" } ], "greeting": "Hello, Essie Mcintyre! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1df5ec3ce6d02d3e2b", "index": 271, "guid": "c8ad95bc-47a7-4e8d-86ec-33f2cd240b3c", "isActive": true, "balance": "$3,180.03", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Clarke Leach", "gender": "male", "company": "SEALOUD", "email": "clarkeleach@sealoud.com", "phone": "+1 (865) 579-3566", "address": "714 Hastings Street, Maury, Palau, 1332", "about": "Veniam qui nulla eiusmod mollit fugiat excepteur commodo incididunt laborum in amet in incididunt. Cupidatat sit pariatur qui ullamco. Qui sit cillum adipisicing commodo incididunt nostrud. Pariatur ullamco ipsum aute eiusmod nulla amet proident incididunt aliquip aliqua minim irure consequat. Ipsum aute exercitation eu Lorem. Amet do Lorem magna deserunt commodo sit ut adipisicing ipsum. Laboris sit est do dolor veniam dolore incididunt cupidatat reprehenderit aute.\r\n", "registered": "2014-05-03T23:51:28-12:00", "latitude": 49.783891, "longitude": -67.881849, "tags": [ "ad", "incididunt", "ea", "laboris", "adipisicing", "commodo", "aliqua" ], "friends": [ { "id": 0, "name": "Stewart Lyons" }, { "id": 1, "name": "Patrice Robles" }, { "id": 2, "name": "Shelia Curry" } ], "greeting": "Hello, Clarke Leach! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1db361c9a0a6d4e448", "index": 272, "guid": "849b6b7c-3928-4a32-8112-b9437bc14a16", "isActive": true, "balance": "$2,217.82", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Case Marquez", "gender": "male", "company": "NAMEGEN", "email": "casemarquez@namegen.com", "phone": "+1 (849) 432-2551", "address": "435 Pacific Street, Marshall, Puerto Rico, 5073", "about": "Eiusmod quis et ea mollit pariatur veniam est nostrud minim. Ipsum esse reprehenderit dolor nisi sunt do ullamco quis. Deserunt est dolore duis enim et. Sint aliquip qui elit laborum deserunt anim. Fugiat mollit esse ullamco enim veniam est consectetur aliqua cillum.\r\n", "registered": "2014-01-05T08:31:11-13:00", "latitude": -1.992303, "longitude": -151.759485, "tags": [ "labore", "adipisicing", "non", "non", "duis", "cupidatat", "adipisicing" ], "friends": [ { "id": 0, "name": "Santana Acevedo" }, { "id": 1, "name": "Delaney Reeves" }, { "id": 2, "name": "Lawrence Irwin" } ], "greeting": "Hello, Case Marquez! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1d80ae24b92f7c5d36", "index": 273, "guid": "8f6d5cd8-5b07-4ad7-be1b-16bd46cdc948", "isActive": false, "balance": "$3,527.18", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Barker Terrell", "gender": "male", "company": "GEOLOGIX", "email": "barkerterrell@geologix.com", "phone": "+1 (951) 575-3734", "address": "494 Covert Street, Lookingglass, California, 2048", "about": "Ut occaecat cupidatat anim aute dolor. Ut ex officia eiusmod duis cupidatat et. Laborum ad do cupidatat consectetur nisi aliqua non cupidatat. Consectetur incididunt cupidatat quis amet ea ipsum officia qui sit cillum ex pariatur nulla ut. Et quis eu id et et reprehenderit ex ad esse ex minim ex duis do. Consectetur incididunt culpa officia aliqua nulla nostrud.\r\n", "registered": "2014-01-29T02:06:11-13:00", "latitude": 70.869726, "longitude": 87.306837, "tags": [ "anim", "irure", "eiusmod", "non", "nostrud", "velit", "sint" ], "friends": [ { "id": 0, "name": "Snyder Schmidt" }, { "id": 1, "name": "Cleo Delaney" }, { "id": 2, "name": "Stephenson Wyatt" } ], "greeting": "Hello, Barker Terrell! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1df1e3c113e4cbe3f8", "index": 274, "guid": "2ca29867-e48e-444a-a528-aab3151ca6bc", "isActive": true, "balance": "$2,596.74", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Lelia Lindsey", "gender": "female", "company": "PROTODYNE", "email": "lelialindsey@protodyne.com", "phone": "+1 (975) 540-3613", "address": "132 Fillmore Avenue, Holtville, Vermont, 3708", "about": "Elit Lorem et dolor veniam. Velit nulla adipisicing sint aliquip aliquip. Sit et velit nisi Lorem dolore ea est cupidatat. Consectetur consequat anim sunt ea culpa consectetur minim cillum reprehenderit sit. Id duis ea in magna ex in tempor duis id labore dolore duis magna cillum.\r\n", "registered": "2014-06-01T06:37:21-12:00", "latitude": 63.600243, "longitude": -142.589338, "tags": [ "adipisicing", "esse", "ea", "do", "pariatur", "ex", "fugiat" ], "friends": [ { "id": 0, "name": "Sonya Head" }, { "id": 1, "name": "Branch Morrison" }, { "id": 2, "name": "Ava Crawford" } ], "greeting": "Hello, Lelia Lindsey! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eb53b4ee7f083e5dd", "index": 275, "guid": "af9b2990-4ef3-4a83-9416-edf2fccfea00", "isActive": false, "balance": "$1,712.13", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Mckee Espinoza", "gender": "male", "company": "COGNICODE", "email": "mckeeespinoza@cognicode.com", "phone": "+1 (904) 459-3827", "address": "989 Dahlgreen Place, Leeper, Indiana, 7744", "about": "Excepteur mollit incididunt proident Lorem nostrud reprehenderit. Aliqua reprehenderit ea adipisicing officia excepteur consectetur et Lorem occaecat pariatur sunt sint enim. Laborum excepteur duis cupidatat nisi voluptate incididunt. Tempor pariatur nostrud Lorem pariatur laboris sit adipisicing eiusmod et ex dolor ipsum. Adipisicing occaecat ipsum anim pariatur excepteur dolor ex nulla et id non ullamco amet. Quis deserunt esse anim fugiat dolore eiusmod irure et nisi enim sunt ipsum culpa in.\r\n", "registered": "2014-05-02T02:05:11-12:00", "latitude": 11.399816, "longitude": 88.594301, "tags": [ "incididunt", "commodo", "et", "tempor", "consequat", "est", "elit" ], "friends": [ { "id": 0, "name": "Holden Sullivan" }, { "id": 1, "name": "Morales Day" }, { "id": 2, "name": "Middleton Harmon" } ], "greeting": "Hello, Mckee Espinoza! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e6aef9e2488899d71", "index": 276, "guid": "1a6a641b-3539-4447-bd9e-c88d43750da2", "isActive": false, "balance": "$2,764.82", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Christie English", "gender": "female", "company": "XINWARE", "email": "christieenglish@xinware.com", "phone": "+1 (845) 496-2356", "address": "107 Lenox Road, Sardis, Illinois, 8467", "about": "Laboris quis esse aliqua culpa id excepteur velit adipisicing eu velit ipsum do. Consequat minim veniam sit et. Ut eiusmod culpa sunt occaecat aute deserunt consequat labore proident enim ad. Irure amet aliqua dolore laborum pariatur do nostrud magna sunt proident aliqua consequat. Officia sint consequat veniam irure mollit dolore consectetur minim amet aliqua excepteur minim. Et magna occaecat duis esse enim reprehenderit qui commodo et reprehenderit incididunt. Magna id ea officia tempor aliqua et.\r\n", "registered": "2014-03-23T21:39:00-13:00", "latitude": 73.765976, "longitude": 164.936455, "tags": [ "excepteur", "esse", "ea", "eiusmod", "labore", "exercitation", "velit" ], "friends": [ { "id": 0, "name": "Mallory Buckley" }, { "id": 1, "name": "Garcia Haley" }, { "id": 2, "name": "Tate Mullen" } ], "greeting": "Hello, Christie English! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e0baa160c7cd3abfd", "index": 277, "guid": "8a19f6d1-2898-4c51-a03f-52676062deae", "isActive": true, "balance": "$1,599.10", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Morrow Bray", "gender": "male", "company": "SIGNITY", "email": "morrowbray@signity.com", "phone": "+1 (979) 423-2539", "address": "303 Post Court, Condon, South Carolina, 6715", "about": "Duis id do nostrud magna occaecat ut do aliqua duis culpa irure mollit duis commodo. Do pariatur fugiat eu dolore anim ipsum esse laborum enim incididunt laboris. Est ea et eu sint elit. Cupidatat dolor aliquip fugiat voluptate proident velit velit cupidatat esse exercitation aliqua mollit amet excepteur. Aute ex cupidatat elit irure sunt id commodo Lorem sint. Adipisicing culpa esse sunt proident laboris proident. Eu sunt eu consequat excepteur est.\r\n", "registered": "2014-08-21T02:57:47-12:00", "latitude": -48.297242, "longitude": 45.429011, "tags": [ "excepteur", "adipisicing", "mollit", "velit", "officia", "irure", "incididunt" ], "friends": [ { "id": 0, "name": "Kristen Gay" }, { "id": 1, "name": "Pauline Pitts" }, { "id": 2, "name": "Silva Vance" } ], "greeting": "Hello, Morrow Bray! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e62897a1544789d4b", "index": 278, "guid": "e9ed4689-f2de-4c5a-98eb-d8d33e704273", "isActive": true, "balance": "$3,381.55", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Diane Kidd", "gender": "female", "company": "CENTREGY", "email": "dianekidd@centregy.com", "phone": "+1 (985) 548-3127", "address": "548 Lincoln Road, Muse, American Samoa, 9016", "about": "Incididunt exercitation nisi quis esse occaecat dolor duis eiusmod laboris ipsum cupidatat reprehenderit duis. Nostrud occaecat aliquip fugiat sit ex sit. Nostrud id velit elit aliquip voluptate aliqua adipisicing. Deserunt eiusmod est et nulla amet in ad commodo culpa velit tempor.\r\n", "registered": "2014-06-03T04:13:22-12:00", "latitude": 61.708758, "longitude": 178.661781, "tags": [ "cupidatat", "pariatur", "culpa", "culpa", "quis", "aute", "do" ], "friends": [ { "id": 0, "name": "Alyson Bridges" }, { "id": 1, "name": "Kris Alford" }, { "id": 2, "name": "Evelyn Riley" } ], "greeting": "Hello, Diane Kidd! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eb52c2c69f889dcdd", "index": 279, "guid": "86e9848f-e964-4b1d-aa04-0a89bb2cd455", "isActive": false, "balance": "$3,289.51", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Rutledge Brennan", "gender": "male", "company": "BLEEKO", "email": "rutledgebrennan@bleeko.com", "phone": "+1 (970) 537-2770", "address": "733 Virginia Place, Wiscon, Delaware, 1159", "about": "Mollit occaecat irure Lorem eiusmod tempor. Laborum ut enim aliquip exercitation voluptate. Labore fugiat minim in ullamco proident et enim laborum do. Amet ea amet tempor ea.\r\n", "registered": "2014-01-13T10:50:36-13:00", "latitude": -26.403154, "longitude": 144.19584, "tags": [ "nostrud", "eiusmod", "aliqua", "voluptate", "sunt", "id", "fugiat" ], "friends": [ { "id": 0, "name": "Morris Austin" }, { "id": 1, "name": "Natalie Oneil" }, { "id": 2, "name": "Bobbie Richard" } ], "greeting": "Hello, Rutledge Brennan! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e1689a056b8918457", "index": 280, "guid": "2f8307ec-ddca-4f05-afba-20ce01dc8209", "isActive": false, "balance": "$3,009.80", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Hewitt Casey", "gender": "male", "company": "BALOOBA", "email": "hewittcasey@balooba.com", "phone": "+1 (946) 495-2283", "address": "449 Baltic Street, Windsor, Pennsylvania, 6302", "about": "Cupidatat veniam non culpa culpa anim enim qui ea proident. Aliqua nulla consequat laborum voluptate pariatur Lorem anim. In cillum mollit excepteur incididunt qui fugiat fugiat enim non ipsum. Laboris tempor labore dolore occaecat et. Ad aliqua consequat laborum dolore minim magna dolor elit. Aliquip dolore ad incididunt ut aute deserunt duis consequat pariatur ipsum nulla.\r\n", "registered": "2014-03-29T13:13:26-13:00", "latitude": -16.699609, "longitude": -156.946084, "tags": [ "aliquip", "magna", "cillum", "id", "culpa", "id", "enim" ], "friends": [ { "id": 0, "name": "Morin Figueroa" }, { "id": 1, "name": "Brooke Gallagher" }, { "id": 2, "name": "Gill Copeland" } ], "greeting": "Hello, Hewitt Casey! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e654757a1919bd6cc", "index": 281, "guid": "13649ea2-c380-4f1b-8955-57212ffde0f0", "isActive": false, "balance": "$3,405.81", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Dalton Gould", "gender": "male", "company": "MAGNAFONE", "email": "daltongould@magnafone.com", "phone": "+1 (874) 466-3459", "address": "322 Nassau Street, Wanamie, Georgia, 7103", "about": "Qui laboris ipsum commodo Lorem labore in culpa deserunt non et duis nulla sunt ad. Sunt voluptate et culpa non ea laborum sunt. Pariatur nulla nulla tempor consequat mollit commodo ut do voluptate consectetur elit. Veniam tempor reprehenderit ipsum aliqua cillum minim laboris ullamco fugiat id. Dolor enim mollit anim est laboris mollit aliquip ex ex minim consequat voluptate nisi. Sunt dolore magna in incididunt.\r\n", "registered": "2014-08-24T02:12:48-12:00", "latitude": -22.701333, "longitude": 175.964347, "tags": [ "consequat", "velit", "officia", "minim", "velit", "magna", "incididunt" ], "friends": [ { "id": 0, "name": "Rosalinda Sellers" }, { "id": 1, "name": "Shawn Long" }, { "id": 2, "name": "Walter Barnett" } ], "greeting": "Hello, Dalton Gould! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ee23870a88d2226df", "index": 282, "guid": "90007a05-d000-451a-9f58-66d938aa8836", "isActive": false, "balance": "$1,578.68", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Dunlap Morin", "gender": "male", "company": "AQUASURE", "email": "dunlapmorin@aquasure.com", "phone": "+1 (823) 471-2146", "address": "949 Livonia Avenue, Trucksville, North Dakota, 2829", "about": "Ullamco qui magna occaecat occaecat cupidatat ut elit nulla tempor deserunt consequat. Exercitation Lorem exercitation nulla exercitation laboris aute. Consectetur Lorem in eu in esse eiusmod. Dolore occaecat pariatur proident pariatur ut officia cupidatat non.\r\n", "registered": "2014-06-26T22:34:13-12:00", "latitude": 84.942688, "longitude": 33.18616, "tags": [ "consectetur", "nostrud", "ipsum", "sint", "reprehenderit", "dolore", "fugiat" ], "friends": [ { "id": 0, "name": "Nelda Scott" }, { "id": 1, "name": "Reyes Prince" }, { "id": 2, "name": "Vaughn Ryan" } ], "greeting": "Hello, Dunlap Morin! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e44326e8be2c5e1a4", "index": 283, "guid": "b110aa4d-1181-4dc2-b14b-054c4e72c1b0", "isActive": false, "balance": "$3,194.75", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Sallie Knox", "gender": "female", "company": "SPRINGBEE", "email": "sallieknox@springbee.com", "phone": "+1 (895) 435-2555", "address": "558 Voorhies Avenue, Robinson, Louisiana, 634", "about": "Fugiat ex officia ullamco dolore et voluptate. Laboris et proident qui aute minim qui nisi adipisicing labore magna sint incididunt voluptate exercitation. Qui fugiat velit incididunt amet amet consectetur excepteur amet ullamco Lorem elit. Sint magna ullamco do ea qui excepteur reprehenderit cillum excepteur Lorem cillum id. Voluptate fugiat culpa sit qui velit ex aliqua tempor exercitation aute do dolor mollit. Amet laborum anim ex ex qui. Tempor mollit dolore ea cillum occaecat do consequat Lorem minim adipisicing ipsum.\r\n", "registered": "2014-06-12T19:35:39-12:00", "latitude": 50.652738, "longitude": 86.539766, "tags": [ "eiusmod", "laborum", "adipisicing", "sint", "enim", "adipisicing", "reprehenderit" ], "friends": [ { "id": 0, "name": "Kirkland Yang" }, { "id": 1, "name": "Lucille Baldwin" }, { "id": 2, "name": "Florence Hall" } ], "greeting": "Hello, Sallie Knox! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ef1141f69a8a5cfc5", "index": 284, "guid": "3035644f-9fb1-474f-9484-cb960a647864", "isActive": true, "balance": "$3,556.37", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Luann Joyner", "gender": "female", "company": "QUARMONY", "email": "luannjoyner@quarmony.com", "phone": "+1 (813) 547-2988", "address": "802 Norman Avenue, Dahlen, Northern Mariana Islands, 3490", "about": "Laborum et incididunt elit aute sit eu minim deserunt ad aliquip eu. Qui incididunt dolore minim deserunt minim deserunt est consectetur amet proident minim consequat deserunt. Officia qui cillum et aute consequat esse aliquip commodo occaecat id. Fugiat excepteur consectetur proident aliquip cillum enim mollit pariatur pariatur exercitation veniam aliquip laboris excepteur. Ex incididunt do nostrud velit labore. Officia aute mollit commodo nisi. Ut consectetur est irure nisi non adipisicing occaecat aliquip laborum.\r\n", "registered": "2014-08-02T07:47:19-12:00", "latitude": -20.16186, "longitude": 136.083977, "tags": [ "tempor", "in", "magna", "laborum", "ex", "consequat", "irure" ], "friends": [ { "id": 0, "name": "Helen Goodwin" }, { "id": 1, "name": "Lakisha Munoz" }, { "id": 2, "name": "Jami Bush" } ], "greeting": "Hello, Luann Joyner! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e36a70f1c0f59256b", "index": 285, "guid": "b265814c-15d3-4d48-9fb9-7f810db5125d", "isActive": false, "balance": "$1,943.03", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Benson Ramos", "gender": "male", "company": "CONFRENZY", "email": "bensonramos@confrenzy.com", "phone": "+1 (819) 594-3015", "address": "142 Ryder Avenue, Kraemer, Colorado, 1289", "about": "Velit proident officia elit duis adipisicing elit ea irure exercitation et proident sint. Id in est dolor cillum culpa. In ea magna nostrud est exercitation magna est in occaecat aute quis ullamco exercitation. Sit cillum aute exercitation tempor. Excepteur velit do magna amet in incididunt duis elit velit. Deserunt culpa nisi aliquip minim dolor aute esse velit labore adipisicing ex.\r\n", "registered": "2014-01-26T17:49:50-13:00", "latitude": -23.145842, "longitude": 35.848471, "tags": [ "cupidatat", "anim", "id", "eiusmod", "cillum", "enim", "sunt" ], "friends": [ { "id": 0, "name": "Janice Wagner" }, { "id": 1, "name": "Darlene Sandoval" }, { "id": 2, "name": "Tabatha Bentley" } ], "greeting": "Hello, Benson Ramos! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1edb88e5ad32256f7c", "index": 286, "guid": "1c09f2f6-d8cf-445c-88a6-d0e86803c677", "isActive": true, "balance": "$1,349.44", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Chandler Skinner", "gender": "male", "company": "ECLIPTO", "email": "chandlerskinner@eclipto.com", "phone": "+1 (993) 546-3397", "address": "116 Grant Avenue, Gadsden, Idaho, 5281", "about": "Incididunt magna deserunt commodo officia. Cillum cillum nostrud aliqua consectetur enim excepteur ipsum. Nostrud culpa quis reprehenderit cupidatat incididunt officia et enim labore veniam anim velit. Deserunt occaecat anim proident ad ullamco est reprehenderit labore ad amet proident ullamco. Adipisicing enim non aute dolor fugiat ea ullamco incididunt deserunt ut commodo officia tempor velit. Cupidatat quis aute irure dolore enim laboris consequat mollit veniam irure sit do. Sit cillum ullamco qui est dolore ad ea veniam enim est.\r\n", "registered": "2014-06-16T21:02:43-12:00", "latitude": 61.759799, "longitude": -69.00783, "tags": [ "sit", "culpa", "do", "irure", "ex", "eu", "do" ], "friends": [ { "id": 0, "name": "Bass Sharpe" }, { "id": 1, "name": "Lea Hull" }, { "id": 2, "name": "Bender Carney" } ], "greeting": "Hello, Chandler Skinner! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e8cc0fea34c9ea601", "index": 287, "guid": "8ba9979d-8d65-46f1-90c9-c6546ba8964c", "isActive": false, "balance": "$3,362.59", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "York Heath", "gender": "male", "company": "CODACT", "email": "yorkheath@codact.com", "phone": "+1 (804) 514-3807", "address": "621 Highland Avenue, Williston, Marshall Islands, 4776", "about": "Non excepteur pariatur ut aliquip Lorem cillum Lorem. Eiusmod eu eu sint voluptate. Proident commodo id deserunt nostrud deserunt dolor.\r\n", "registered": "2014-02-12T12:58:16-13:00", "latitude": 48.199985, "longitude": 44.79586, "tags": [ "dolor", "est", "sint", "velit", "dolore", "ex", "exercitation" ], "friends": [ { "id": 0, "name": "Veronica Ortega" }, { "id": 1, "name": "Graves Charles" }, { "id": 2, "name": "Loretta Hill" } ], "greeting": "Hello, York Heath! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ec87adf49c5af5b5f", "index": 288, "guid": "8906f55d-c2ac-4eee-aa0f-4b853727024c", "isActive": false, "balance": "$2,595.29", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Angelita Thompson", "gender": "female", "company": "SKYPLEX", "email": "angelitathompson@skyplex.com", "phone": "+1 (982) 562-3975", "address": "968 Wolf Place, Corinne, New York, 3144", "about": "Ut amet labore officia nulla non. Duis elit duis aute incididunt duis non ipsum nisi labore ullamco aliqua elit. Nostrud exercitation Lorem et cillum officia dolore excepteur commodo consequat adipisicing sit irure est. Officia elit ut ea ea reprehenderit nostrud sit ut. Incididunt excepteur ipsum reprehenderit sunt exercitation duis duis irure quis id aliqua.\r\n", "registered": "2014-05-03T07:39:02-12:00", "latitude": -55.007224, "longitude": -56.054544, "tags": [ "consectetur", "ad", "fugiat", "dolore", "dolor", "sit", "mollit" ], "friends": [ { "id": 0, "name": "Atkinson Huffman" }, { "id": 1, "name": "Chapman Bishop" }, { "id": 2, "name": "Roseann Jimenez" } ], "greeting": "Hello, Angelita Thompson! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e0b2b9db8ff8c1b28", "index": 289, "guid": "e875b94b-5fb0-4870-a626-bbf8505eaa7c", "isActive": false, "balance": "$1,563.14", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "English Morris", "gender": "male", "company": "ZOARERE", "email": "englishmorris@zoarere.com", "phone": "+1 (868) 463-2035", "address": "909 Knickerbocker Avenue, Bannock, Guam, 3796", "about": "Et dolore occaecat cupidatat excepteur eu do cillum pariatur labore. Reprehenderit irure minim dolore laborum reprehenderit incididunt ad id. Id adipisicing reprehenderit ut elit esse dolore nostrud eiusmod aliqua excepteur non occaecat. Aute sint nisi minim non consequat duis velit laboris occaecat occaecat deserunt. Non velit eu voluptate et ut. Esse nostrud sint minim fugiat incididunt aute velit deserunt nostrud qui voluptate. Proident adipisicing magna eu consectetur reprehenderit culpa reprehenderit ullamco adipisicing est aliqua.\r\n", "registered": "2014-05-23T08:28:05-12:00", "latitude": -64.503973, "longitude": -110.72289, "tags": [ "duis", "cillum", "sunt", "pariatur", "sunt", "esse", "culpa" ], "friends": [ { "id": 0, "name": "Horn Gentry" }, { "id": 1, "name": "Helga Estes" }, { "id": 2, "name": "Shirley Tate" } ], "greeting": "Hello, English Morris! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eac9e35324048b785", "index": 290, "guid": "2a2c0b79-fd16-4fc9-bd36-23579e5cc80a", "isActive": true, "balance": "$2,594.05", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Nina Tyson", "gender": "female", "company": "ZIDOX", "email": "ninatyson@zidox.com", "phone": "+1 (989) 411-3172", "address": "304 Melrose Street, Ellerslie, Virgin Islands, 9475", "about": "Mollit qui ipsum laborum velit irure ea qui velit laborum. Quis quis aute do cupidatat mollit ad non excepteur elit nulla ullamco. Officia ut mollit sit amet proident id et ex. Nulla veniam incididunt id amet est aute sint officia fugiat est quis fugiat ea. Aliquip adipisicing cupidatat consectetur sint esse esse.\r\n", "registered": "2014-07-31T13:28:25-12:00", "latitude": -84.174329, "longitude": 38.686721, "tags": [ "voluptate", "anim", "ex", "irure", "exercitation", "incididunt", "dolor" ], "friends": [ { "id": 0, "name": "Charlene Stanton" }, { "id": 1, "name": "Murphy Pope" }, { "id": 2, "name": "Prince Galloway" } ], "greeting": "Hello, Nina Tyson! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ee0409d2f654abce7", "index": 291, "guid": "6a205499-8434-42bc-a6d3-d4c079c092c8", "isActive": false, "balance": "$3,328.58", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Helena Compton", "gender": "female", "company": "BOILICON", "email": "helenacompton@boilicon.com", "phone": "+1 (856) 410-2948", "address": "502 Schweikerts Walk, Graniteville, Massachusetts, 7698", "about": "Irure officia laborum voluptate nisi eu officia nulla. Mollit do sunt nisi duis. Et irure excepteur est sit laborum esse velit anim occaecat nulla ex.\r\n", "registered": "2014-07-28T03:27:07-12:00", "latitude": -89.494233, "longitude": 7.947138, "tags": [ "nisi", "aliqua", "pariatur", "incididunt", "labore", "fugiat", "sint" ], "friends": [ { "id": 0, "name": "Simpson Morgan" }, { "id": 1, "name": "Petersen Meadows" }, { "id": 2, "name": "Clarissa Paul" } ], "greeting": "Hello, Helena Compton! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ee88dd53778a27a6e", "index": 292, "guid": "59dc6666-70d0-436e-be2b-bad44436a920", "isActive": false, "balance": "$3,913.97", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Lucile Browning", "gender": "female", "company": "OBONES", "email": "lucilebrowning@obones.com", "phone": "+1 (883) 497-2180", "address": "189 Bay Avenue, Broadlands, Utah, 2431", "about": "Consequat laborum reprehenderit sit nisi ex dolor culpa cupidatat. Amet velit veniam proident cupidatat reprehenderit ut deserunt labore exercitation cupidatat esse duis quis. Aute nisi elit esse consequat veniam duis esse fugiat ea veniam. Lorem qui aute velit excepteur ex quis anim ut quis voluptate mollit ad.\r\n", "registered": "2014-02-25T23:02:40-13:00", "latitude": 19.807107, "longitude": -123.290331, "tags": [ "fugiat", "velit", "consectetur", "minim", "consectetur", "voluptate", "mollit" ], "friends": [ { "id": 0, "name": "Bonner Knapp" }, { "id": 1, "name": "Lacy Santos" }, { "id": 2, "name": "Stephens Frank" } ], "greeting": "Hello, Lucile Browning! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e058a06eaf34134d9", "index": 293, "guid": "822998cb-7a0e-49bf-b531-868a3947ae23", "isActive": false, "balance": "$3,397.73", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Higgins Bird", "gender": "male", "company": "PETICULAR", "email": "higginsbird@peticular.com", "phone": "+1 (980) 493-3166", "address": "133 Rodney Street, Longoria, Montana, 9835", "about": "Esse et velit amet non non voluptate ipsum commodo adipisicing consequat. Laboris duis pariatur deserunt deserunt duis commodo deserunt proident enim incididunt. Veniam enim duis nostrud Lorem in esse consequat eiusmod culpa adipisicing minim occaecat. Qui nulla non sit mollit velit esse consectetur.\r\n", "registered": "2014-08-11T18:43:21-12:00", "latitude": -3.586896, "longitude": 32.355968, "tags": [ "tempor", "occaecat", "ad", "anim", "elit", "voluptate", "reprehenderit" ], "friends": [ { "id": 0, "name": "Teri Bryan" }, { "id": 1, "name": "Frances Joyce" }, { "id": 2, "name": "Juliet Wilcox" } ], "greeting": "Hello, Higgins Bird! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eb2c653037ce8f000", "index": 294, "guid": "f8c2fce1-ed6b-4536-993d-c16e14a2c8f3", "isActive": false, "balance": "$1,777.76", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Mays Dawson", "gender": "male", "company": "VENDBLEND", "email": "maysdawson@vendblend.com", "phone": "+1 (879) 460-2647", "address": "546 Chauncey Street, Innsbrook, Wisconsin, 7340", "about": "Commodo ullamco proident elit Lorem. Dolor non sit velit nostrud ullamco id pariatur nulla sint nisi irure laboris. Irure deserunt occaecat minim est consectetur. Et dolor reprehenderit consectetur sunt. Mollit veniam adipisicing exercitation anim adipisicing elit consequat et consectetur exercitation minim. Nostrud incididunt magna non enim consequat nisi velit qui non duis sit proident enim.\r\n", "registered": "2014-02-22T06:33:50-13:00", "latitude": 84.771938, "longitude": -117.274491, "tags": [ "sit", "commodo", "nisi", "officia", "duis", "esse", "dolor" ], "friends": [ { "id": 0, "name": "Lizzie Glover" }, { "id": 1, "name": "Bertha Mcknight" }, { "id": 2, "name": "Phillips Harris" } ], "greeting": "Hello, Mays Dawson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e3a41cf1e5ecaae19", "index": 295, "guid": "4a1b9424-ed0a-492f-af54-42a66798b63b", "isActive": true, "balance": "$1,272.78", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Bell Price", "gender": "male", "company": "PORTICA", "email": "bellprice@portica.com", "phone": "+1 (903) 524-3838", "address": "890 Malta Street, Curtice, Maine, 2203", "about": "Duis excepteur Lorem est ex dolore in aliqua. Aliquip sit nostrud consectetur quis. Dolor consectetur sint tempor eiusmod. Non cillum consequat ut amet esse Lorem dolore esse sint exercitation proident. Cillum aliqua id cillum adipisicing Lorem.\r\n", "registered": "2014-02-11T20:17:13-13:00", "latitude": 74.481404, "longitude": -32.287909, "tags": [ "quis", "duis", "dolor", "exercitation", "ipsum", "fugiat", "in" ], "friends": [ { "id": 0, "name": "Thomas Mckee" }, { "id": 1, "name": "Cantu Mcguire" }, { "id": 2, "name": "Neal Gray" } ], "greeting": "Hello, Bell Price! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ec42f78ff60304c1e", "index": 296, "guid": "76db1e2e-346c-41af-84e1-cea35e723892", "isActive": false, "balance": "$3,810.82", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Phyllis Sheppard", "gender": "female", "company": "RUGSTARS", "email": "phyllissheppard@rugstars.com", "phone": "+1 (862) 545-2634", "address": "600 Boerum Place, Florence, Virginia, 2548", "about": "Aliqua duis mollit irure Lorem non id nisi consectetur. Et eiusmod consequat cillum laboris cupidatat commodo culpa ea culpa quis exercitation pariatur sit ullamco. Ipsum qui est incididunt sit in aliquip aliqua proident dolor. Elit aute consequat deserunt minim adipisicing et culpa et aliqua ea nostrud reprehenderit.\r\n", "registered": "2014-02-20T21:47:33-13:00", "latitude": -13.427067, "longitude": -41.900346, "tags": [ "occaecat", "laborum", "esse", "ea", "in", "magna", "cillum" ], "friends": [ { "id": 0, "name": "Clara Kaufman" }, { "id": 1, "name": "Mia Chavez" }, { "id": 2, "name": "Patricia Nichols" } ], "greeting": "Hello, Phyllis Sheppard! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e933d7c67ed715dba", "index": 297, "guid": "a84b4b36-9c12-4b3d-88e0-eef452c00b3f", "isActive": false, "balance": "$3,487.46", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Janet Mathews", "gender": "female", "company": "RECRITUBE", "email": "janetmathews@recritube.com", "phone": "+1 (882) 516-3808", "address": "951 Cypress Court, Tecolotito, Kentucky, 4703", "about": "In duis culpa incididunt reprehenderit ad occaecat. Esse aute consectetur elit mollit id ad. Aute enim ut sint fugiat sunt aliqua duis quis.\r\n", "registered": "2014-01-20T13:32:32-13:00", "latitude": 10.037471, "longitude": -56.563005, "tags": [ "laborum", "reprehenderit", "ullamco", "deserunt", "adipisicing", "exercitation", "aute" ], "friends": [ { "id": 0, "name": "Latoya Young" }, { "id": 1, "name": "Thompson Santana" }, { "id": 2, "name": "Alice Mcneil" } ], "greeting": "Hello, Janet Mathews! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ea501018a0392a454", "index": 298, "guid": "92a40d16-87bd-45b8-ab33-86febbbcd31d", "isActive": false, "balance": "$2,522.03", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Hillary Lang", "gender": "female", "company": "COSMOSIS", "email": "hillarylang@cosmosis.com", "phone": "+1 (923) 543-3779", "address": "813 Ebony Court, Martell, Connecticut, 6123", "about": "Esse Lorem incididunt veniam occaecat ullamco. Consectetur esse nulla ullamco minim sunt pariatur qui reprehenderit culpa enim consectetur ipsum ullamco ipsum. Duis amet non anim excepteur Lorem sit elit officia officia excepteur mollit sunt. Lorem incididunt irure anim consectetur nulla veniam reprehenderit incididunt deserunt nisi sunt.\r\n", "registered": "2014-09-13T06:56:47-12:00", "latitude": 13.250762, "longitude": 113.11596, "tags": [ "cupidatat", "laborum", "quis", "mollit", "nisi", "aute", "proident" ], "friends": [ { "id": 0, "name": "Janette Obrien" }, { "id": 1, "name": "Romero Todd" }, { "id": 2, "name": "Banks Holcomb" } ], "greeting": "Hello, Hillary Lang! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e5a0ca392938daecd", "index": 299, "guid": "b16bf049-4624-4bfb-b925-e31b364b5274", "isActive": false, "balance": "$2,339.30", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Sellers Bolton", "gender": "male", "company": "ULTRIMAX", "email": "sellersbolton@ultrimax.com", "phone": "+1 (853) 502-3277", "address": "114 Sumner Place, Hebron, Mississippi, 8190", "about": "Cillum sint laboris sit nostrud fugiat incididunt commodo ullamco deserunt et duis. Labore nostrud qui dolore labore dolor nostrud ullamco enim amet ipsum. Id elit in consectetur dolore sunt consectetur anim mollit dolore ea id.\r\n", "registered": "2014-01-27T06:42:43-13:00", "latitude": -4.539406, "longitude": 47.428653, "tags": [ "voluptate", "nulla", "consequat", "cupidatat", "veniam", "est", "consequat" ], "friends": [ { "id": 0, "name": "Muriel Wise" }, { "id": 1, "name": "Pate Humphrey" }, { "id": 2, "name": "Justine Mclean" } ], "greeting": "Hello, Sellers Bolton! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ed5848c7ac7c9c902", "index": 300, "guid": "f28ccce4-f6a7-4262-8557-2a85aeaf9a53", "isActive": true, "balance": "$2,515.21", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Stevenson Calhoun", "gender": "male", "company": "EXTREMO", "email": "stevensoncalhoun@extremo.com", "phone": "+1 (883) 499-2727", "address": "351 Madison Place, Machias, Washington, 9618", "about": "Labore exercitation eu consequat quis esse in non. Quis aute qui do minim incididunt nostrud aliquip esse dolore aute. Magna est id ex enim officia mollit esse occaecat ex sunt eiusmod. Duis nulla fugiat commodo nulla Lorem laborum irure ea labore. Id velit reprehenderit dolore velit. Ullamco sit nulla culpa ut eu ipsum ea eu nostrud commodo deserunt tempor.\r\n", "registered": "2014-08-04T04:12:53-12:00", "latitude": 71.356234, "longitude": 25.034218, "tags": [ "enim", "ad", "consequat", "esse", "adipisicing", "ut", "ex" ], "friends": [ { "id": 0, "name": "Odonnell Carroll" }, { "id": 1, "name": "Mosley Little" }, { "id": 2, "name": "Cox Adkins" } ], "greeting": "Hello, Stevenson Calhoun! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e8eec5f78c4d9c2a7", "index": 301, "guid": "51517197-60e8-4b05-ba5a-70511e4be9cb", "isActive": true, "balance": "$2,023.17", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Fields Alvarado", "gender": "male", "company": "ASIMILINE", "email": "fieldsalvarado@asimiline.com", "phone": "+1 (965) 492-2206", "address": "227 Story Street, Imperial, Tennessee, 7473", "about": "Aliquip cillum in in id exercitation velit aute Lorem adipisicing eu deserunt nisi aliquip. Anim dolore magna quis est mollit non est enim eu. Aliqua velit irure occaecat non exercitation voluptate excepteur est. Enim duis irure ullamco consequat exercitation deserunt incididunt et aliquip do amet qui cupidatat. Consequat cupidatat ex aliqua ea esse velit non. Aliqua laboris consequat in occaecat reprehenderit commodo nulla amet est sunt cupidatat.\r\n", "registered": "2014-07-20T17:37:15-12:00", "latitude": 5.133614, "longitude": 119.691197, "tags": [ "ut", "tempor", "veniam", "cillum", "cupidatat", "duis", "Lorem" ], "friends": [ { "id": 0, "name": "Leonor Wiggins" }, { "id": 1, "name": "Mckinney Oneal" }, { "id": 2, "name": "Cassandra Lopez" } ], "greeting": "Hello, Fields Alvarado! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ee8b6adab478b2fef", "index": 302, "guid": "daa55168-1c72-48ab-9836-42724ebcf9db", "isActive": true, "balance": "$3,991.47", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Concetta Osborn", "gender": "female", "company": "QABOOS", "email": "concettaosborn@qaboos.com", "phone": "+1 (940) 559-2904", "address": "526 Seaview Court, Dunbar, Alabama, 2390", "about": "Velit mollit mollit non excepteur consectetur et id duis elit est. Nostrud sunt anim ipsum consequat irure aliquip qui eiusmod pariatur dolor velit nisi in. Exercitation ipsum in veniam esse et irure sit commodo officia eu adipisicing Lorem. Veniam magna pariatur nulla ea dolore est fugiat. Exercitation sint commodo sint nostrud consequat duis veniam. Voluptate cillum minim do laboris exercitation et ea occaecat voluptate adipisicing. Mollit pariatur ex minim eiusmod nulla ipsum quis culpa ipsum.\r\n", "registered": "2014-08-14T16:23:17-12:00", "latitude": -48.958946, "longitude": -27.759198, "tags": [ "et", "non", "id", "id", "nostrud", "sunt", "labore" ], "friends": [ { "id": 0, "name": "Spence Duran" }, { "id": 1, "name": "Angeline Russo" }, { "id": 2, "name": "Hooper Moran" } ], "greeting": "Hello, Concetta Osborn! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ef01bb7c666b1ba50", "index": 303, "guid": "2160723e-1974-4c2c-b2e4-21b634aaa202", "isActive": false, "balance": "$3,765.51", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Jacobson Rios", "gender": "male", "company": "KIDGREASE", "email": "jacobsonrios@kidgrease.com", "phone": "+1 (832) 511-2430", "address": "717 Bulwer Place, Wolcott, Ohio, 6755", "about": "Consectetur labore occaecat deserunt sunt consectetur amet commodo ipsum do enim Lorem nisi fugiat. Ut aute sit cillum adipisicing proident reprehenderit sit labore nisi. Veniam ad aliqua est esse pariatur veniam occaecat non do ea non. Cupidatat proident eu et non velit nostrud reprehenderit ex. Amet laboris cupidatat veniam consequat. Id incididunt in adipisicing velit magna deserunt sit. Nulla aliqua officia deserunt ullamco ullamco commodo adipisicing.\r\n", "registered": "2014-03-01T09:13:59-13:00", "latitude": -50.277736, "longitude": -31.362706, "tags": [ "fugiat", "duis", "veniam", "pariatur", "anim", "fugiat", "officia" ], "friends": [ { "id": 0, "name": "Selma Rivas" }, { "id": 1, "name": "Sharon Leblanc" }, { "id": 2, "name": "Parker Navarro" } ], "greeting": "Hello, Jacobson Rios! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e1a94dcf405e95ab2", "index": 304, "guid": "bd3effd4-cfc7-4cd1-8a50-ccbd677bf70e", "isActive": false, "balance": "$1,191.41", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Yesenia Pratt", "gender": "female", "company": "DIGITALUS", "email": "yeseniapratt@digitalus.com", "phone": "+1 (976) 501-3264", "address": "607 Seigel Street, Hemlock, Hawaii, 8823", "about": "Id elit dolor consectetur mollit qui sint incididunt ex id commodo eu sint magna. Cillum ex labore eu veniam quis anim. Incididunt et enim pariatur deserunt cillum laborum consequat et velit est minim reprehenderit adipisicing Lorem.\r\n", "registered": "2014-04-11T10:46:18-12:00", "latitude": -21.547495, "longitude": 163.263463, "tags": [ "incididunt", "culpa", "occaecat", "officia", "occaecat", "tempor", "esse" ], "friends": [ { "id": 0, "name": "Pamela Mercer" }, { "id": 1, "name": "Sheila Chan" }, { "id": 2, "name": "Juarez Carter" } ], "greeting": "Hello, Yesenia Pratt! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e90202672433ce1e7", "index": 305, "guid": "dd1ebaac-ec4d-4e30-85d0-1bb4c4073d1c", "isActive": true, "balance": "$2,255.73", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Quinn Cantu", "gender": "male", "company": "SKINSERVE", "email": "quinncantu@skinserve.com", "phone": "+1 (814) 502-2798", "address": "758 Stuart Street, Caberfae, New Mexico, 7366", "about": "Velit officia cillum enim deserunt est culpa tempor aliqua proident exercitation ad. Et ullamco aute tempor aliquip. Occaecat ullamco occaecat reprehenderit et veniam culpa eu. Veniam voluptate nulla commodo ullamco reprehenderit ut irure deserunt officia nulla aliquip non. Officia deserunt cupidatat aute fugiat. Minim pariatur fugiat aliqua labore sint in amet ea fugiat ipsum nulla officia aliqua. Duis tempor sint sint officia aliqua nulla proident officia.\r\n", "registered": "2014-06-28T04:33:46-12:00", "latitude": -63.904591, "longitude": -74.708574, "tags": [ "dolor", "ut", "ullamco", "cillum", "commodo", "eiusmod", "ea" ], "friends": [ { "id": 0, "name": "May Alvarez" }, { "id": 1, "name": "Adela Benjamin" }, { "id": 2, "name": "Nolan Strickland" } ], "greeting": "Hello, Quinn Cantu! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e838039ff1f9c423f", "index": 306, "guid": "786d52af-7ffb-42d4-8c29-ec5aa7a8e927", "isActive": false, "balance": "$3,462.00", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Holloway Schroeder", "gender": "male", "company": "ECLIPSENT", "email": "hollowayschroeder@eclipsent.com", "phone": "+1 (897) 494-3399", "address": "474 Winthrop Street, Brady, Maryland, 4191", "about": "In voluptate deserunt culpa consequat irure deserunt aliquip qui sint nulla. Laborum nisi reprehenderit officia labore laboris ipsum aliqua dolore voluptate et sint. Excepteur sit nulla non non cillum aliquip laboris anim consequat cupidatat ullamco Lorem qui. Lorem occaecat commodo excepteur sit occaecat velit do fugiat ea aliquip et ex. Exercitation aute exercitation et enim.\r\n", "registered": "2014-09-07T10:01:49-12:00", "latitude": 33.110997, "longitude": 173.99809, "tags": [ "excepteur", "ea", "qui", "Lorem", "qui", "ea", "in" ], "friends": [ { "id": 0, "name": "Kristina Barker" }, { "id": 1, "name": "Martha Schultz" }, { "id": 2, "name": "Aurelia Torres" } ], "greeting": "Hello, Holloway Schroeder! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ee87e424f9cbc273d", "index": 307, "guid": "68e61383-d9c9-4264-a80d-c515a9069827", "isActive": true, "balance": "$3,409.46", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Barber Boyd", "gender": "male", "company": "MELBACOR", "email": "barberboyd@melbacor.com", "phone": "+1 (836) 585-2639", "address": "239 Troutman Street, Fresno, Alaska, 6349", "about": "Excepteur aliqua est labore sit proident sint eu tempor. Non esse laborum ex dolore anim ad proident incididunt do qui cillum consequat exercitation. Non qui pariatur consectetur elit eu. Consequat commodo adipisicing in minim tempor laboris esse duis aliquip. Cupidatat proident id dolor est aliqua tempor id.\r\n", "registered": "2014-02-23T03:47:21-13:00", "latitude": -76.527781, "longitude": 67.245214, "tags": [ "laborum", "exercitation", "culpa", "deserunt", "Lorem", "id", "Lorem" ], "friends": [ { "id": 0, "name": "Carmen Franco" }, { "id": 1, "name": "Howard Houston" }, { "id": 2, "name": "Gertrude Ratliff" } ], "greeting": "Hello, Barber Boyd! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e489d60d1674be732", "index": 308, "guid": "cb80cc13-d388-40ac-8311-cf7f61daac03", "isActive": true, "balance": "$1,194.22", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Bryant Benton", "gender": "male", "company": "BLUEGRAIN", "email": "bryantbenton@bluegrain.com", "phone": "+1 (991) 441-2871", "address": "176 Taylor Street, Cressey, Arizona, 1599", "about": "Nostrud excepteur anim ad eu. Duis anim nisi adipisicing sunt tempor. Ut laborum excepteur minim ullamco mollit Lorem aute ut laboris duis. Exercitation aliqua ad esse consectetur officia. Dolor et cillum incididunt consectetur labore fugiat ut est. Reprehenderit laborum exercitation veniam proident tempor laborum veniam. Veniam exercitation quis nostrud quis cillum laborum aute.\r\n", "registered": "2014-08-27T09:54:31-12:00", "latitude": 20.188665, "longitude": -142.001268, "tags": [ "proident", "aliquip", "adipisicing", "aliqua", "excepteur", "Lorem", "consequat" ], "friends": [ { "id": 0, "name": "Patti Roman" }, { "id": 1, "name": "Ball Schneider" }, { "id": 2, "name": "Debbie Brady" } ], "greeting": "Hello, Bryant Benton! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e69db3d29165b5847", "index": 309, "guid": "0af089d5-1c41-4f17-9c11-96939aa58643", "isActive": false, "balance": "$3,847.09", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Jewel Shannon", "gender": "female", "company": "COMFIRM", "email": "jewelshannon@comfirm.com", "phone": "+1 (974) 522-3163", "address": "483 Vandervoort Avenue, Malott, Federated States Of Micronesia, 5533", "about": "Quis cupidatat velit eu commodo in ipsum ipsum ad eu elit. Irure occaecat aliquip occaecat tempor sunt esse in fugiat et elit. Aliqua mollit et non eu dolore. Non velit officia Lorem veniam laborum ullamco nisi duis. Proident irure in aute ex mollit ullamco commodo.\r\n", "registered": "2014-08-17T01:24:24-12:00", "latitude": 1.063769, "longitude": 51.915155, "tags": [ "incididunt", "consectetur", "velit", "culpa", "commodo", "proident", "excepteur" ], "friends": [ { "id": 0, "name": "Brady Coleman" }, { "id": 1, "name": "Gloria Ochoa" }, { "id": 2, "name": "Sawyer Mcclain" } ], "greeting": "Hello, Jewel Shannon! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ecfab9cfd4800ae53", "index": 310, "guid": "7a43f4b4-9246-45de-8ad4-03fa178d24b9", "isActive": true, "balance": "$2,894.91", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Mack Lowe", "gender": "male", "company": "QUALITERN", "email": "macklowe@qualitern.com", "phone": "+1 (857) 568-2209", "address": "778 Williams Place, Callaghan, Oklahoma, 5858", "about": "Ipsum cillum aliquip nisi dolor deserunt eiusmod. Id elit amet minim ipsum excepteur consectetur sunt exercitation proident magna nisi. Do officia ut cillum Lorem est magna sint elit. Sit labore incididunt do ad ut qui enim. Lorem est sint culpa commodo mollit. Aliqua est minim nostrud consequat pariatur aliquip nostrud.\r\n", "registered": "2014-07-07T00:20:50-12:00", "latitude": 63.763048, "longitude": 33.133338, "tags": [ "elit", "officia", "tempor", "eiusmod", "commodo", "amet", "et" ], "friends": [ { "id": 0, "name": "Lester Hardin" }, { "id": 1, "name": "Terrell Watkins" }, { "id": 2, "name": "Ida Good" } ], "greeting": "Hello, Mack Lowe! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ecd73c57fae46a893", "index": 311, "guid": "e11bcfc1-1320-47cd-b358-9d39a0a31352", "isActive": true, "balance": "$1,572.49", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Brewer Cohen", "gender": "male", "company": "DREAMIA", "email": "brewercohen@dreamia.com", "phone": "+1 (853) 468-2579", "address": "990 Hill Street, Austinburg, Michigan, 2387", "about": "Ea fugiat voluptate amet ea enim do irure adipisicing nisi nulla velit. Elit sit cupidatat ipsum in nisi Lorem fugiat occaecat anim do est in laboris. Labore Lorem Lorem dolore culpa consectetur. Duis anim ea proident enim incididunt reprehenderit exercitation consectetur quis labore. In duis id velit ullamco eu. Est nostrud eiusmod veniam dolore. Adipisicing ullamco sunt est eiusmod elit ea.\r\n", "registered": "2014-04-26T06:49:38-12:00", "latitude": 1.130115, "longitude": -101.651227, "tags": [ "nulla", "in", "nulla", "nostrud", "est", "magna", "in" ], "friends": [ { "id": 0, "name": "Alyssa Gamble" }, { "id": 1, "name": "Dudley Haynes" }, { "id": 2, "name": "Nichols Gibson" } ], "greeting": "Hello, Brewer Cohen! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e7939f08882b3969d", "index": 312, "guid": "7d4def78-fc91-4eb8-962b-ca1b118998e9", "isActive": true, "balance": "$2,552.43", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Tanya Roth", "gender": "female", "company": "INTERLOO", "email": "tanyaroth@interloo.com", "phone": "+1 (959) 502-3294", "address": "788 Box Street, Bentonville, Kansas, 6052", "about": "Laboris eu ut tempor adipisicing. Anim proident cillum nisi laboris elit adipisicing ea in ut. Pariatur commodo duis consectetur adipisicing non deserunt nisi consequat dolore sint ex nisi. Eu ipsum irure cillum deserunt. Lorem exercitation deserunt sit occaecat ad ea velit aliquip reprehenderit officia ipsum ipsum. Voluptate in mollit non adipisicing culpa et qui et adipisicing sint mollit incididunt.\r\n", "registered": "2014-07-28T18:07:17-12:00", "latitude": -66.57044, "longitude": 31.17034, "tags": [ "laboris", "cillum", "do", "labore", "fugiat", "duis", "esse" ], "friends": [ { "id": 0, "name": "Pugh Camacho" }, { "id": 1, "name": "Holman Branch" }, { "id": 2, "name": "Lindsay Fuller" } ], "greeting": "Hello, Tanya Roth! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eb013e90242e6b933", "index": 313, "guid": "8f8b993d-8de5-4f59-a477-e4697df1d7aa", "isActive": true, "balance": "$1,556.04", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Fran Holden", "gender": "female", "company": "MARKETOID", "email": "franholden@marketoid.com", "phone": "+1 (821) 432-2757", "address": "594 Berry Street, Roulette, South Dakota, 4801", "about": "Aliquip Lorem quis Lorem id sint ex aute in enim exercitation ipsum incididunt sunt. Mollit ut et ipsum qui officia cupidatat officia enim laborum Lorem magna exercitation. Velit commodo consectetur elit excepteur eu aute reprehenderit quis cupidatat. Ipsum enim nulla ipsum velit ea deserunt sit consequat anim labore amet mollit fugiat. Sunt in fugiat non excepteur.\r\n", "registered": "2014-01-08T07:41:48-13:00", "latitude": -17.80112, "longitude": -118.268435, "tags": [ "dolor", "cillum", "enim", "non", "ex", "esse", "pariatur" ], "friends": [ { "id": 0, "name": "Lora Butler" }, { "id": 1, "name": "Mcneil Horton" }, { "id": 2, "name": "Gwendolyn Molina" } ], "greeting": "Hello, Fran Holden! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e90c1c3937c021c3c", "index": 314, "guid": "1b22b173-fe70-4d86-a32e-2e7d78af0962", "isActive": false, "balance": "$2,554.34", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Florine Le", "gender": "female", "company": "TALAE", "email": "florinele@talae.com", "phone": "+1 (859) 528-3046", "address": "290 Clinton Avenue, Alafaya, West Virginia, 2765", "about": "Ipsum ad qui laboris reprehenderit exercitation nisi sit sit magna reprehenderit nisi irure. Enim pariatur occaecat nulla cupidatat eu irure qui magna ea. Ipsum reprehenderit eiusmod magna aliqua laborum magna ut. Culpa magna quis exercitation ullamco aliqua duis ullamco fugiat enim. Minim officia adipisicing duis cillum dolore esse ullamco anim. Fugiat labore cupidatat tempor do culpa magna eiusmod nisi elit non commodo.\r\n", "registered": "2014-02-05T22:44:55-13:00", "latitude": -23.120742, "longitude": -136.901146, "tags": [ "fugiat", "aliqua", "est", "id", "id", "minim", "mollit" ], "friends": [ { "id": 0, "name": "Millicent Summers" }, { "id": 1, "name": "Hebert Gardner" }, { "id": 2, "name": "Judith Wallace" } ], "greeting": "Hello, Florine Le! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e3df7e0c2bb4fa320", "index": 315, "guid": "0398182b-6e8c-41b9-881b-b64e1eb6190e", "isActive": true, "balance": "$3,672.11", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Johnson Johnson", "gender": "male", "company": "PLASTO", "email": "johnsonjohnson@plasto.com", "phone": "+1 (963) 508-3211", "address": "979 McKibbin Street, Rehrersburg, Texas, 3152", "about": "Veniam eiusmod Lorem sunt duis. Officia mollit consectetur qui et esse. Eiusmod deserunt culpa tempor tempor tempor qui cupidatat cupidatat cillum dolore proident dolor.\r\n", "registered": "2014-05-15T17:20:49-12:00", "latitude": -8.203252, "longitude": 106.050235, "tags": [ "eiusmod", "tempor", "dolor", "consequat", "magna", "labore", "laboris" ], "friends": [ { "id": 0, "name": "Bonnie Conner" }, { "id": 1, "name": "Brenda Finch" }, { "id": 2, "name": "Freda Haney" } ], "greeting": "Hello, Johnson Johnson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e0d4766c2ef3da58a", "index": 316, "guid": "01a41cde-b6ba-4b0f-b6bd-f7cbd63dbc11", "isActive": false, "balance": "$3,540.91", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Lenore Martin", "gender": "female", "company": "ORBALIX", "email": "lenoremartin@orbalix.com", "phone": "+1 (989) 457-2590", "address": "787 Roebling Street, Sandston, Oregon, 9753", "about": "Occaecat qui velit commodo veniam consectetur dolor dolore ipsum est voluptate Lorem. Ut eiusmod et nisi officia ex nisi voluptate enim veniam laboris proident consequat. Commodo irure voluptate in ullamco. Aute ea cillum in labore Lorem occaecat anim. Ut anim esse voluptate aute aute. Irure ex ullamco ut fugiat sit exercitation cillum culpa dolore cillum laboris aliquip deserunt amet.\r\n", "registered": "2014-03-13T05:14:38-13:00", "latitude": 61.334061, "longitude": 176.46489, "tags": [ "mollit", "sunt", "nostrud", "amet", "magna", "fugiat", "incididunt" ], "friends": [ { "id": 0, "name": "Sparks Crosby" }, { "id": 1, "name": "Marci Lloyd" }, { "id": 2, "name": "Willie Lester" } ], "greeting": "Hello, Lenore Martin! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e41be0ed741e71bd6", "index": 317, "guid": "bd13a9f8-6ee8-41d0-9794-c83bffd2037d", "isActive": false, "balance": "$2,697.38", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Joni Whitfield", "gender": "female", "company": "STRALOY", "email": "joniwhitfield@straloy.com", "phone": "+1 (838) 418-2391", "address": "385 Vandervoort Place, Leland, Nevada, 2045", "about": "Sit voluptate est in fugiat id officia veniam. Nulla irure qui aliqua in deserunt fugiat amet eu consectetur quis nostrud. Qui esse culpa irure id dolore commodo ex cillum id voluptate sunt excepteur.\r\n", "registered": "2014-04-12T18:11:58-12:00", "latitude": -19.402718, "longitude": 77.873806, "tags": [ "deserunt", "dolor", "culpa", "laboris", "ex", "esse", "dolor" ], "friends": [ { "id": 0, "name": "Beard Evans" }, { "id": 1, "name": "Mcintosh Blackburn" }, { "id": 2, "name": "Earlene Walter" } ], "greeting": "Hello, Joni Whitfield! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e78643a39b1e7fc13", "index": 318, "guid": "eaf74a37-5fe9-4aa2-88d8-58c8c7cc2b12", "isActive": false, "balance": "$2,778.77", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Ladonna Underwood", "gender": "female", "company": "RADIANTIX", "email": "ladonnaunderwood@radiantix.com", "phone": "+1 (995) 430-3638", "address": "610 Kay Court, Wakulla, Minnesota, 9771", "about": "Cillum aute cillum dolor laborum in voluptate et pariatur elit quis voluptate cupidatat. Est cupidatat id reprehenderit laborum eu dolor aliquip. Sint velit consectetur ad ipsum adipisicing deserunt et qui sit. Esse amet consequat esse ea duis cupidatat veniam fugiat reprehenderit reprehenderit commodo fugiat aliqua eu. Cupidatat laboris in mollit enim consectetur voluptate culpa cupidatat eiusmod cupidatat ullamco culpa. Aliquip ad nulla Lorem id minim do elit labore excepteur tempor ullamco do ex adipisicing.\r\n", "registered": "2014-01-02T15:37:43-13:00", "latitude": -2.064508, "longitude": 117.42935, "tags": [ "aliquip", "eu", "elit", "dolor", "amet", "adipisicing", "ad" ], "friends": [ { "id": 0, "name": "Delgado William" }, { "id": 1, "name": "Noemi Mccarty" }, { "id": 2, "name": "Rhoda Mullins" } ], "greeting": "Hello, Ladonna Underwood! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eb0e4f889657ceb20", "index": 319, "guid": "6ec8da12-1da4-4b46-870d-188ba83e6d79", "isActive": false, "balance": "$2,357.16", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Myrna Sweet", "gender": "female", "company": "UTARIAN", "email": "myrnasweet@utarian.com", "phone": "+1 (962) 403-3170", "address": "330 Jefferson Street, Hailesboro, Missouri, 195", "about": "In et ullamco mollit ullamco. Mollit sunt qui anim in eu esse mollit nisi proident nostrud officia aliquip mollit elit. Ex adipisicing et pariatur enim culpa aute elit adipisicing quis.\r\n", "registered": "2014-01-02T05:14:45-13:00", "latitude": 68.500243, "longitude": -47.462551, "tags": [ "ex", "voluptate", "esse", "officia", "ullamco", "mollit", "ullamco" ], "friends": [ { "id": 0, "name": "Humphrey Watts" }, { "id": 1, "name": "Byers Moreno" }, { "id": 2, "name": "Darcy Mcmillan" } ], "greeting": "Hello, Myrna Sweet! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ebb70e3c4ec932e29", "index": 320, "guid": "8e2d8ec7-e8d9-4ff1-80a0-13bc8cb3cb3c", "isActive": true, "balance": "$3,477.98", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Dee Greer", "gender": "female", "company": "SULTRAX", "email": "deegreer@sultrax.com", "phone": "+1 (846) 489-3962", "address": "176 Lois Avenue, Beaverdale, Rhode Island, 9290", "about": "Ea ex nulla occaecat cillum ipsum. Ad in qui enim reprehenderit eiusmod ullamco proident reprehenderit anim cillum. Commodo in occaecat id ex aliqua excepteur ex id labore.\r\n", "registered": "2014-03-16T22:37:56-13:00", "latitude": -51.021013, "longitude": 132.460368, "tags": [ "reprehenderit", "aute", "ullamco", "anim", "duis", "ipsum", "qui" ], "friends": [ { "id": 0, "name": "Pearlie Barron" }, { "id": 1, "name": "Ryan Flynn" }, { "id": 2, "name": "Simmons Rasmussen" } ], "greeting": "Hello, Dee Greer! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e412c2a78755000ce", "index": 321, "guid": "4a523323-7c6b-4b47-a67d-c2e0bc0f0259", "isActive": false, "balance": "$1,442.59", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Teresa Carson", "gender": "female", "company": "NAVIR", "email": "teresacarson@navir.com", "phone": "+1 (814) 547-2976", "address": "784 Riverdale Avenue, Glidden, Florida, 8338", "about": "Cillum qui ipsum anim laboris cupidatat dolore duis. Irure eu qui adipisicing enim. Aliqua magna voluptate culpa ipsum in elit magna. Nisi cillum enim exercitation quis nisi quis labore do aliqua esse amet fugiat velit id. Id pariatur est reprehenderit laboris incididunt.\r\n", "registered": "2014-09-16T04:48:12-12:00", "latitude": 30.293178, "longitude": 150.940234, "tags": [ "ullamco", "occaecat", "elit", "duis", "duis", "aliquip", "dolor" ], "friends": [ { "id": 0, "name": "Figueroa Michael" }, { "id": 1, "name": "Louella Bond" }, { "id": 2, "name": "Elinor Banks" } ], "greeting": "Hello, Teresa Carson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ead32360e6d73ff87", "index": 322, "guid": "a430c66d-1b0c-4f5f-bf41-3a61e4d5a7a6", "isActive": false, "balance": "$2,538.52", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Marian Conley", "gender": "female", "company": "ZILENCIO", "email": "marianconley@zilencio.com", "phone": "+1 (858) 468-2737", "address": "662 Cameron Court, Castleton, North Carolina, 2074", "about": "Sit nostrud voluptate dolor dolor nisi veniam incididunt nulla laboris eu sunt adipisicing nisi occaecat. Commodo ipsum ex ullamco esse. Enim sit laborum fugiat ullamco duis elit consequat aute elit amet culpa officia ea commodo. Aliquip minim nostrud culpa anim dolore esse enim ex consequat voluptate aliqua commodo velit. Eiusmod cillum exercitation duis elit. Consequat non cillum ea eu adipisicing amet deserunt aliqua cillum commodo id tempor.\r\n", "registered": "2014-03-05T10:01:56-13:00", "latitude": 21.033496, "longitude": 107.861597, "tags": [ "est", "est", "anim", "proident", "nulla", "dolor", "incididunt" ], "friends": [ { "id": 0, "name": "Baldwin Riddle" }, { "id": 1, "name": "Combs Rosa" }, { "id": 2, "name": "Savannah Palmer" } ], "greeting": "Hello, Marian Conley! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ef01a48922ae4d24c", "index": 323, "guid": "43f1873a-f297-4064-9332-956d44b063e8", "isActive": true, "balance": "$2,370.41", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Bailey Mckenzie", "gender": "male", "company": "QUADEEBO", "email": "baileymckenzie@quadeebo.com", "phone": "+1 (944) 497-2838", "address": "188 Caton Place, Roeville, New Hampshire, 7824", "about": "Deserunt pariatur reprehenderit laborum pariatur duis esse elit aute laboris adipisicing reprehenderit commodo excepteur adipisicing. Nisi proident aliquip ex minim quis Lorem. Occaecat eu exercitation cupidatat labore ut.\r\n", "registered": "2014-01-04T08:20:32-13:00", "latitude": -37.055101, "longitude": 40.353966, "tags": [ "qui", "veniam", "cillum", "incididunt", "enim", "consectetur", "exercitation" ], "friends": [ { "id": 0, "name": "Lisa Koch" }, { "id": 1, "name": "Alberta Goodman" }, { "id": 2, "name": "Moreno Ray" } ], "greeting": "Hello, Bailey Mckenzie! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1eb98ae9e9c2af9488", "index": 324, "guid": "742995f4-49dc-4b03-8bd3-06e7af9f1e66", "isActive": true, "balance": "$2,047.40", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "West Bradshaw", "gender": "male", "company": "MANUFACT", "email": "westbradshaw@manufact.com", "phone": "+1 (906) 594-3935", "address": "965 Matthews Place, Suitland, Arkansas, 9797", "about": "Occaecat consequat ullamco non id ipsum Lorem qui consequat cillum nisi quis laborum. Reprehenderit velit sit in dolore voluptate minim minim excepteur consectetur esse cupidatat. Aliquip laboris mollit dolor elit magna mollit irure. Tempor sunt cupidatat id labore voluptate dolore tempor excepteur eu commodo et ea. Aliqua tempor duis cillum ad veniam veniam dolore.\r\n", "registered": "2014-07-04T21:56:00-12:00", "latitude": -36.416354, "longitude": 96.708011, "tags": [ "duis", "eiusmod", "commodo", "commodo", "occaecat", "irure", "anim" ], "friends": [ { "id": 0, "name": "Rivers King" }, { "id": 1, "name": "Erica Bender" }, { "id": 2, "name": "Huffman Garza" } ], "greeting": "Hello, West Bradshaw! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e23c8587a2726add8", "index": 325, "guid": "6be3197c-6859-4766-99c9-1365658e24bd", "isActive": false, "balance": "$3,665.70", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Laurel Nolan", "gender": "female", "company": "ZANYMAX", "email": "laurelnolan@zanymax.com", "phone": "+1 (985) 470-3370", "address": "802 Beaumont Street, Chilton, Iowa, 1176", "about": "Id consequat cupidatat officia et nisi ullamco mollit ex esse nostrud. Pariatur irure in tempor velit anim culpa anim fugiat. Pariatur sint dolore occaecat culpa aliquip Lorem deserunt cillum et consequat ad elit dolor.\r\n", "registered": "2014-05-01T01:35:47-12:00", "latitude": 1.091285, "longitude": -65.119524, "tags": [ "culpa", "duis", "quis", "tempor", "non", "nulla", "veniam" ], "friends": [ { "id": 0, "name": "Olive Cote" }, { "id": 1, "name": "Orr Delacruz" }, { "id": 2, "name": "Winifred Sanders" } ], "greeting": "Hello, Laurel Nolan! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e1fa5f8822cdf1e74", "index": 326, "guid": "e9688362-b964-4ccd-980b-2388b3527cdf", "isActive": false, "balance": "$3,317.73", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Deana Ewing", "gender": "female", "company": "TOYLETRY", "email": "deanaewing@toyletry.com", "phone": "+1 (858) 497-3854", "address": "344 Truxton Street, Genoa, Nebraska, 1864", "about": "Mollit nulla mollit laboris et commodo. Ipsum proident culpa ea cupidatat eu eiusmod qui officia aute. Qui dolore eu commodo tempor.\r\n", "registered": "2014-08-11T12:49:18-12:00", "latitude": 82.944084, "longitude": 156.633847, "tags": [ "consectetur", "eu", "ipsum", "pariatur", "eiusmod", "ipsum", "enim" ], "friends": [ { "id": 0, "name": "Joanne Sexton" }, { "id": 1, "name": "Jeannette Salinas" }, { "id": 2, "name": "Adkins Alexander" } ], "greeting": "Hello, Deana Ewing! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e670cf9e668967305", "index": 327, "guid": "5c3e8143-077b-4388-b13d-c11bbd5969d1", "isActive": true, "balance": "$1,685.41", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Ruthie Lane", "gender": "female", "company": "DECRATEX", "email": "ruthielane@decratex.com", "phone": "+1 (920) 476-3709", "address": "507 Highland Place, Remington, District Of Columbia, 6374", "about": "Anim occaecat veniam duis consequat commodo duis voluptate cillum ut commodo eiusmod consectetur. Exercitation exercitation proident sint amet. Id officia sunt sit anim sit eu dolore laboris sunt esse est exercitation. Deserunt adipisicing irure aliquip id quis ad aute minim aute enim ut pariatur commodo eu. Nisi Lorem anim irure incididunt consectetur minim dolore ea.\r\n", "registered": "2014-09-15T16:42:20-12:00", "latitude": -84.702686, "longitude": 123.435869, "tags": [ "nisi", "qui", "ullamco", "occaecat", "esse", "ea", "exercitation" ], "friends": [ { "id": 0, "name": "Daugherty Kline" }, { "id": 1, "name": "Curry Lowery" }, { "id": 2, "name": "Castro Dodson" } ], "greeting": "Hello, Ruthie Lane! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ef8de87820e71d601", "index": 328, "guid": "3163b67e-ac2b-497c-b7fc-d2e2a8f03c58", "isActive": false, "balance": "$1,789.75", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Galloway Russell", "gender": "male", "company": "XIIX", "email": "gallowayrussell@xiix.com", "phone": "+1 (917) 561-2325", "address": "935 Richardson Street, Hollins, New Jersey, 2246", "about": "In consequat proident mollit labore aliqua Lorem ullamco sint minim esse amet incididunt eiusmod consectetur. Culpa est ullamco minim do. Cupidatat excepteur irure ea nulla pariatur consectetur ipsum et consectetur dolore. Anim ad et aute deserunt officia.\r\n", "registered": "2014-07-27T06:20:03-12:00", "latitude": 16.872485, "longitude": 11.690536, "tags": [ "ad", "in", "proident", "eiusmod", "labore", "voluptate", "est" ], "friends": [ { "id": 0, "name": "Brigitte Reese" }, { "id": 1, "name": "Jennie Short" }, { "id": 2, "name": "Misty Cameron" } ], "greeting": "Hello, Galloway Russell! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e9bbbe4e9b3b4283d", "index": 329, "guid": "f6ba6fec-6b0c-49fe-b73c-6f3a54ddf073", "isActive": false, "balance": "$2,613.37", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Kara Lawrence", "gender": "female", "company": "COFINE", "email": "karalawrence@cofine.com", "phone": "+1 (863) 413-3506", "address": "415 Louis Place, Bangor, Palau, 4243", "about": "Ea fugiat voluptate culpa pariatur ipsum nostrud adipisicing nulla exercitation ullamco ullamco. Consequat ipsum ea aliqua minim ex reprehenderit ea. Elit Lorem id incididunt cillum anim laborum do. Ullamco duis irure ut commodo est anim in sint dolor.\r\n", "registered": "2014-01-11T23:38:01-13:00", "latitude": -17.123617, "longitude": -163.867958, "tags": [ "nulla", "quis", "tempor", "magna", "deserunt", "aliquip", "excepteur" ], "friends": [ { "id": 0, "name": "Cantrell Small" }, { "id": 1, "name": "Christina Wilkins" }, { "id": 2, "name": "Gray Frye" } ], "greeting": "Hello, Kara Lawrence! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e8ef1a7088f26406c", "index": 330, "guid": "f6704be8-c2ed-4ddb-b47a-5fc21a0ffa42", "isActive": false, "balance": "$1,886.34", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Trisha Medina", "gender": "female", "company": "VIASIA", "email": "trishamedina@viasia.com", "phone": "+1 (836) 437-3994", "address": "358 Hooper Street, Kiskimere, Puerto Rico, 3925", "about": "Eu officia sunt occaecat voluptate et nulla esse. Esse ea id culpa eiusmod et cupidatat voluptate non occaecat. Consectetur ad aute laborum pariatur laboris Lorem consequat et sunt dolore est.\r\n", "registered": "2014-01-19T17:13:32-13:00", "latitude": -61.927182, "longitude": 136.166028, "tags": [ "adipisicing", "incididunt", "proident", "id", "ipsum", "adipisicing", "mollit" ], "friends": [ { "id": 0, "name": "Kelsey Terry" }, { "id": 1, "name": "Dina Mccullough" }, { "id": 2, "name": "Hale Manning" } ], "greeting": "Hello, Trisha Medina! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ede8aa5baf12cb87c", "index": 331, "guid": "33a31089-f09e-4c17-9672-ead4da3b74b3", "isActive": true, "balance": "$1,118.49", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Olga Langley", "gender": "female", "company": "AUTOMON", "email": "olgalangley@automon.com", "phone": "+1 (964) 598-2210", "address": "849 Garnet Street, Limestone, California, 5480", "about": "Mollit dolore sunt ut nostrud est quis consectetur nisi. Voluptate dolore ad esse adipisicing qui ipsum fugiat proident elit do magna amet eiusmod nisi. Commodo labore culpa labore voluptate.\r\n", "registered": "2014-07-03T16:37:33-12:00", "latitude": 13.224353, "longitude": 162.301837, "tags": [ "pariatur", "id", "irure", "excepteur", "occaecat", "elit", "ad" ], "friends": [ { "id": 0, "name": "Conrad Jackson" }, { "id": 1, "name": "Savage Grant" }, { "id": 2, "name": "Steele Hatfield" } ], "greeting": "Hello, Olga Langley! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e0bf0d43a399c1eab", "index": 332, "guid": "31209906-d42e-41df-a8a5-f5bf552ea4ad", "isActive": false, "balance": "$2,292.29", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Shaw Hodges", "gender": "male", "company": "RETRACK", "email": "shawhodges@retrack.com", "phone": "+1 (961) 494-2616", "address": "565 Douglass Street, Ypsilanti, Vermont, 5647", "about": "Amet id culpa reprehenderit quis magna cillum tempor. Amet dolore esse amet quis proident elit nostrud do fugiat do labore magna proident est. Proident labore cillum labore ea in magna commodo enim ea irure incididunt laborum veniam.\r\n", "registered": "2014-07-16T23:07:20-12:00", "latitude": -61.273653, "longitude": -127.224177, "tags": [ "non", "ad", "et", "id", "laboris", "dolore", "nisi" ], "friends": [ { "id": 0, "name": "Earnestine Trevino" }, { "id": 1, "name": "Baird Thornton" }, { "id": 2, "name": "Shelton Kelley" } ], "greeting": "Hello, Shaw Hodges! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e1be8df63db2c28aa", "index": 333, "guid": "d3353d2d-8dc6-4c0f-8170-8e4a36661db0", "isActive": true, "balance": "$3,938.72", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Massey Joseph", "gender": "male", "company": "NETERIA", "email": "masseyjoseph@neteria.com", "phone": "+1 (860) 515-3660", "address": "935 Carroll Street, Fredericktown, Indiana, 7325", "about": "Minim reprehenderit et anim culpa sunt officia aute velit reprehenderit mollit commodo id. Consequat ea irure ullamco irure elit anim aliqua pariatur non ex velit anim. Tempor tempor ea dolor enim reprehenderit dolore.\r\n", "registered": "2014-09-21T06:32:19-12:00", "latitude": -17.529782, "longitude": -164.276661, "tags": [ "aute", "do", "mollit", "occaecat", "aliqua", "proident", "reprehenderit" ], "friends": [ { "id": 0, "name": "Hughes Stephens" }, { "id": 1, "name": "Marlene Norman" }, { "id": 2, "name": "Ernestine Nash" } ], "greeting": "Hello, Massey Joseph! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e0007a0a17a446238", "index": 334, "guid": "b39f5c5f-8eec-48ac-87ea-4532c562df43", "isActive": false, "balance": "$2,260.96", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Lynette Gibbs", "gender": "female", "company": "LOTRON", "email": "lynettegibbs@lotron.com", "phone": "+1 (930) 500-3954", "address": "940 Batchelder Street, Fedora, Illinois, 9946", "about": "Amet laborum aliquip aute id est ad in. Eu velit est elit do consectetur esse consequat elit. Ex voluptate do sint quis voluptate. Enim sint mollit officia eiusmod sit et quis mollit adipisicing qui exercitation. Qui labore cupidatat ut do amet sit. In culpa do sunt do proident.\r\n", "registered": "2014-08-29T04:33:57-12:00", "latitude": -52.582455, "longitude": 61.001889, "tags": [ "sunt", "aliquip", "minim", "occaecat", "voluptate", "enim", "aliquip" ], "friends": [ { "id": 0, "name": "Oneal Foreman" }, { "id": 1, "name": "Torres Leon" }, { "id": 2, "name": "Jensen Holt" } ], "greeting": "Hello, Lynette Gibbs! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1edcc37bef478b0811", "index": 335, "guid": "76a78944-1a32-45b4-9401-7ea3e9a3ddbd", "isActive": true, "balance": "$1,573.46", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Jackie Griffin", "gender": "female", "company": "TETRATREX", "email": "jackiegriffin@tetratrex.com", "phone": "+1 (837) 452-3977", "address": "276 Brightwater Avenue, Shaft, South Carolina, 4942", "about": "Tempor irure dolor sunt consequat adipisicing elit. Cupidatat aliquip labore ad pariatur amet dolore pariatur culpa mollit. Duis excepteur elit est nulla proident nostrud mollit. Sunt laborum duis incididunt excepteur deserunt eu elit.\r\n", "registered": "2014-06-01T17:27:17-12:00", "latitude": 65.449735, "longitude": 91.024488, "tags": [ "reprehenderit", "consequat", "ipsum", "magna", "cillum", "ullamco", "officia" ], "friends": [ { "id": 0, "name": "Hutchinson Sutton" }, { "id": 1, "name": "Stevens Woodard" }, { "id": 2, "name": "Vega Larsen" } ], "greeting": "Hello, Jackie Griffin! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e54ea4aad8a529080", "index": 336, "guid": "252074b6-05ed-44ee-a504-2368da35b61b", "isActive": true, "balance": "$2,414.43", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Sandra Parks", "gender": "female", "company": "RODEOLOGY", "email": "sandraparks@rodeology.com", "phone": "+1 (916) 455-2767", "address": "192 Hoyt Street, Adelino, American Samoa, 8239", "about": "Ullamco occaecat Lorem nulla esse non. Dolore exercitation dolore velit veniam irure aliqua esse adipisicing laboris Lorem. Culpa voluptate aliqua pariatur ex incididunt sunt velit irure deserunt. Mollit mollit occaecat mollit pariatur fugiat commodo excepteur enim minim enim.\r\n", "registered": "2014-07-13T05:11:23-12:00", "latitude": -26.961401, "longitude": -3.943096, "tags": [ "et", "veniam", "aute", "amet", "amet", "magna", "magna" ], "friends": [ { "id": 0, "name": "Luisa Benson" }, { "id": 1, "name": "Megan Jefferson" }, { "id": 2, "name": "Kennedy Ruiz" } ], "greeting": "Hello, Sandra Parks! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e8c02662cbb680280", "index": 337, "guid": "f3b30ee8-55af-4b26-b9db-cf1b32f3a690", "isActive": true, "balance": "$2,607.55", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Sanchez Mclaughlin", "gender": "male", "company": "ZILODYNE", "email": "sanchezmclaughlin@zilodyne.com", "phone": "+1 (925) 462-3429", "address": "596 Lott Street, Richford, Delaware, 9129", "about": "Labore consequat tempor aliquip id aute cillum aliquip veniam nisi. Fugiat aute ad sit mollit sit ad Lorem. Ad exercitation dolore elit ipsum ea tempor.\r\n", "registered": "2014-02-18T10:39:43-13:00", "latitude": 76.031843, "longitude": 162.978206, "tags": [ "culpa", "tempor", "occaecat", "irure", "elit", "quis", "incididunt" ], "friends": [ { "id": 0, "name": "Duncan Bernard" }, { "id": 1, "name": "Georgia Bonner" }, { "id": 2, "name": "Wendy Fischer" } ], "greeting": "Hello, Sanchez Mclaughlin! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e94c1c2577310f1a2", "index": 338, "guid": "d3e230b1-abd3-4790-a77a-f1e05585f8b3", "isActive": false, "balance": "$3,017.62", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Marilyn Whitney", "gender": "female", "company": "COMTENT", "email": "marilynwhitney@comtent.com", "phone": "+1 (906) 480-3515", "address": "225 Putnam Avenue, Sena, Pennsylvania, 3699", "about": "Aute laboris eu nulla eu adipisicing cupidatat incididunt dolore dolore. Et aliqua et commodo consequat est aliquip veniam. Officia voluptate do labore nulla elit velit exercitation ad laborum incididunt dolor. Veniam occaecat mollit dolor irure officia ex velit duis ullamco. Nostrud dolore ipsum exercitation minim pariatur officia proident ea qui.\r\n", "registered": "2014-03-26T12:03:12-13:00", "latitude": 45.80823, "longitude": 112.637722, "tags": [ "voluptate", "laborum", "reprehenderit", "aliquip", "velit", "nulla", "deserunt" ], "friends": [ { "id": 0, "name": "England Conway" }, { "id": 1, "name": "Cobb Patton" }, { "id": 2, "name": "Long Hahn" } ], "greeting": "Hello, Marilyn Whitney! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e79b13809ab60c861", "index": 339, "guid": "e3b82b18-dbe5-4307-86d8-e71c883487e0", "isActive": false, "balance": "$1,024.12", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Alford Mcpherson", "gender": "male", "company": "EARTHPURE", "email": "alfordmcpherson@earthpure.com", "phone": "+1 (818) 584-2850", "address": "610 Belvidere Street, Canoochee, Georgia, 111", "about": "Consectetur officia adipisicing magna consectetur ad eiusmod anim fugiat ut esse occaecat veniam est. Nostrud nostrud commodo pariatur magna nisi amet aliqua voluptate sit. Elit commodo mollit dolor ex veniam minim laborum non proident pariatur ad. Qui culpa et deserunt anim magna culpa do esse consectetur magna est. Laboris deserunt sunt aliquip adipisicing cillum tempor excepteur nulla officia ex deserunt. Dolor ad duis ea laboris elit exercitation proident anim.\r\n", "registered": "2014-07-14T21:32:12-12:00", "latitude": 88.545135, "longitude": -25.949682, "tags": [ "laborum", "nulla", "mollit", "fugiat", "exercitation", "et", "qui" ], "friends": [ { "id": 0, "name": "Grant Cabrera" }, { "id": 1, "name": "Griffin Sanchez" }, { "id": 2, "name": "Reba Davidson" } ], "greeting": "Hello, Alford Mcpherson! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e53bfb21c06f5c14a", "index": 340, "guid": "a3c1483a-1475-4b99-a212-7e0726a4674c", "isActive": false, "balance": "$2,512.28", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Ethel Preston", "gender": "female", "company": "PIGZART", "email": "ethelpreston@pigzart.com", "phone": "+1 (900) 429-2979", "address": "799 Paerdegat Avenue, Maplewood, North Dakota, 4002", "about": "Sint proident veniam enim velit ut culpa ad proident aliquip fugiat. Sunt laboris elit tempor magna exercitation. Aliquip veniam reprehenderit cillum eu ipsum veniam qui excepteur exercitation est enim deserunt. Ea consequat ex adipisicing esse adipisicing est sint in sint incididunt laborum eu consectetur. Nulla commodo consectetur do aute cillum dolor duis mollit laboris. Ad reprehenderit amet tempor est ex velit consequat.\r\n", "registered": "2014-03-16T13:14:32-13:00", "latitude": -28.597138, "longitude": -12.855849, "tags": [ "sint", "mollit", "incididunt", "deserunt", "voluptate", "ipsum", "non" ], "friends": [ { "id": 0, "name": "Rosales Williams" }, { "id": 1, "name": "Julia Reilly" }, { "id": 2, "name": "Mckenzie Jacobson" } ], "greeting": "Hello, Ethel Preston! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e9d38d51fe720cd71", "index": 341, "guid": "c38b1c93-96ab-49ed-bff4-7b9221014fe0", "isActive": false, "balance": "$3,604.51", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Jimmie Jones", "gender": "female", "company": "IMANT", "email": "jimmiejones@imant.com", "phone": "+1 (947) 401-3799", "address": "138 Neptune Court, Umapine, Louisiana, 3768", "about": "Pariatur duis ad quis reprehenderit enim minim. Fugiat qui non deserunt officia incididunt reprehenderit ex nisi. Esse minim exercitation aute excepteur cillum adipisicing nulla cillum in quis sint. Eiusmod ea eu magna aliqua aute ullamco sunt veniam. Dolore veniam exercitation voluptate nostrud incididunt id. Excepteur aute dolore velit irure deserunt in ad labore excepteur magna cillum labore aliquip. Do deserunt proident minim ut.\r\n", "registered": "2014-03-05T10:19:36-13:00", "latitude": -6.886895, "longitude": -80.515602, "tags": [ "Lorem", "exercitation", "ad", "consectetur", "pariatur", "in", "ut" ], "friends": [ { "id": 0, "name": "Katrina Bennett" }, { "id": 1, "name": "Hopper Quinn" }, { "id": 2, "name": "Luz Zimmerman" } ], "greeting": "Hello, Jimmie Jones! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e3d125cdda5b1ef59", "index": 342, "guid": "3d14a392-04a6-472b-8ba8-fa8d8ba4faa8", "isActive": true, "balance": "$3,801.37", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Webster Cruz", "gender": "male", "company": "ECSTASIA", "email": "webstercruz@ecstasia.com", "phone": "+1 (843) 532-3950", "address": "419 Lawrence Avenue, Manitou, Northern Mariana Islands, 3087", "about": "Enim dolor reprehenderit eu irure Lorem est anim amet ad. Pariatur et proident deserunt labore pariatur duis nulla. Irure ullamco anim veniam quis ad pariatur ex cupidatat et occaecat reprehenderit.\r\n", "registered": "2014-01-28T06:04:01-13:00", "latitude": -1.662005, "longitude": 22.086031, "tags": [ "in", "sint", "voluptate", "ullamco", "dolor", "proident", "aliquip" ], "friends": [ { "id": 0, "name": "Norton Moody" }, { "id": 1, "name": "Miles Barton" }, { "id": 2, "name": "Dillard Ayala" } ], "greeting": "Hello, Webster Cruz! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e55a8b47821ada6f8", "index": 343, "guid": "da23c406-dece-4e3a-85bf-5f38cf1051de", "isActive": false, "balance": "$1,163.83", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Regina Workman", "gender": "female", "company": "VELITY", "email": "reginaworkman@velity.com", "phone": "+1 (939) 566-2928", "address": "424 Nassau Avenue, Siglerville, Colorado, 4344", "about": "Duis veniam elit dolore eiusmod deserunt. Amet nulla minim enim ad in cillum velit ut duis ea. Laborum aliquip sit ea nulla culpa occaecat. Tempor ad do aliquip et.\r\n", "registered": "2014-09-03T05:38:33-12:00", "latitude": 81.450982, "longitude": -79.655175, "tags": [ "ipsum", "quis", "adipisicing", "aute", "nostrud", "do", "id" ], "friends": [ { "id": 0, "name": "Newton Hopper" }, { "id": 1, "name": "Iris Turner" }, { "id": 2, "name": "Dyer Shaffer" } ], "greeting": "Hello, Regina Workman! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ef8a5181b953c63f4", "index": 344, "guid": "3ec04570-447d-4571-b6c5-5bd3e5a922ec", "isActive": true, "balance": "$3,515.61", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Nicole Miranda", "gender": "female", "company": "BOILCAT", "email": "nicolemiranda@boilcat.com", "phone": "+1 (920) 513-3931", "address": "556 Hull Street, Cawood, Idaho, 8951", "about": "Culpa eu qui aliqua cupidatat. Ipsum veniam cillum dolore labore officia et qui nulla voluptate id ipsum sit ad. Tempor ea labore tempor amet aliqua tempor excepteur aliqua anim labore. Minim dolore non laboris consectetur proident. Aute veniam voluptate labore amet id consectetur et cupidatat duis elit nisi.\r\n", "registered": "2014-04-19T04:55:32-12:00", "latitude": 51.585816, "longitude": -106.428943, "tags": [ "in", "laborum", "excepteur", "do", "cillum", "aliquip", "ullamco" ], "friends": [ { "id": 0, "name": "Austin Cash" }, { "id": 1, "name": "Reed Randall" }, { "id": 2, "name": "Guy Drake" } ], "greeting": "Hello, Nicole Miranda! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e50d20f15bb0f6f5a", "index": 345, "guid": "64e9d8f5-72be-4c30-bd6b-56dae2448cbf", "isActive": true, "balance": "$1,092.44", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Koch Calderon", "gender": "male", "company": "NEUROCELL", "email": "kochcalderon@neurocell.com", "phone": "+1 (958) 584-3812", "address": "316 Fairview Place, Churchill, Marshall Islands, 1311", "about": "Nulla eiusmod ex qui in. Esse veniam adipisicing veniam Lorem. Nostrud ex cupidatat minim nulla nisi magna irure sunt tempor. Non veniam aliqua aliqua ex. Cillum non anim est et adipisicing adipisicing est qui mollit. Cillum elit nulla exercitation nulla incididunt et eu magna duis incididunt ipsum cupidatat.\r\n", "registered": "2014-06-13T23:32:45-12:00", "latitude": 37.752744, "longitude": -141.845733, "tags": [ "magna", "occaecat", "culpa", "excepteur", "dolor", "aliquip", "anim" ], "friends": [ { "id": 0, "name": "Green Mckinney" }, { "id": 1, "name": "Ella Estrada" }, { "id": 2, "name": "Melton Weaver" } ], "greeting": "Hello, Koch Calderon! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e93b1a0d56752e0ba", "index": 346, "guid": "d242aa2c-b5ed-4c0c-8470-eb6078eece36", "isActive": true, "balance": "$1,799.08", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Lorene Welch", "gender": "female", "company": "ENERSOL", "email": "lorenewelch@enersol.com", "phone": "+1 (835) 491-3986", "address": "509 Newport Street, Loyalhanna, New York, 9971", "about": "Consequat amet enim officia est in commodo minim adipisicing. Laboris laboris reprehenderit nulla non occaecat exercitation excepteur velit duis. Excepteur anim Lorem esse do non laboris amet eu ullamco consectetur laborum. Mollit labore do fugiat sit consequat irure ipsum nisi est dolor dolor id sunt. Magna culpa magna anim incididunt in. Magna proident nisi ullamco laboris. Minim incididunt dolore excepteur consequat amet non irure excepteur tempor quis fugiat.\r\n", "registered": "2014-03-27T01:13:57-13:00", "latitude": 13.984642, "longitude": -150.66392, "tags": [ "amet", "veniam", "eu", "mollit", "elit", "duis", "magna" ], "friends": [ { "id": 0, "name": "Lenora Durham" }, { "id": 1, "name": "Randall Woodward" }, { "id": 2, "name": "Kerr Fowler" } ], "greeting": "Hello, Lorene Welch! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eedbe03d8cffffc11", "index": 347, "guid": "1ddb71d0-2646-4e6c-9687-05e5a2cfb70a", "isActive": false, "balance": "$2,137.25", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Reynolds Holloway", "gender": "male", "company": "QIAO", "email": "reynoldsholloway@qiao.com", "phone": "+1 (909) 563-3126", "address": "843 Sullivan Place, Bath, Guam, 2643", "about": "Do aliquip aliqua culpa elit ex id quis nulla nulla elit veniam. Tempor proident eu est elit excepteur consequat ex exercitation nisi exercitation id duis aliquip adipisicing. Nulla labore minim eu eu incididunt ex nisi sunt Lorem. Amet deserunt esse pariatur eu sint sint Lorem amet est.\r\n", "registered": "2014-08-02T00:38:15-12:00", "latitude": 85.028409, "longitude": -81.502871, "tags": [ "laboris", "fugiat", "occaecat", "duis", "non", "consequat", "mollit" ], "friends": [ { "id": 0, "name": "Melba Britt" }, { "id": 1, "name": "Glenna Berg" }, { "id": 2, "name": "Townsend Moss" } ], "greeting": "Hello, Reynolds Holloway! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e51b5d0acb9da5f79", "index": 348, "guid": "711aa9c4-4d7c-4f10-b077-fc66e2982dc0", "isActive": true, "balance": "$3,016.98", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Pace Stark", "gender": "male", "company": "QUORDATE", "email": "pacestark@quordate.com", "phone": "+1 (815) 411-2936", "address": "147 Village Court, Hackneyville, Virgin Islands, 6819", "about": "Magna anim esse aliqua officia esse dolor in aliqua. Dolore incididunt enim dolore anim adipisicing sint magna ea Lorem duis aliquip ad. Adipisicing Lorem ipsum cillum officia consequat et adipisicing labore eiusmod commodo. Voluptate eiusmod nisi consequat cillum ad culpa ex cupidatat voluptate nulla qui. Eiusmod veniam anim non cupidatat irure sunt. Nulla est ad cupidatat excepteur adipisicing est duis dolor veniam Lorem in reprehenderit. Consequat incididunt ex ea in labore exercitation ipsum et consequat.\r\n", "registered": "2014-05-30T05:17:11-12:00", "latitude": 0.701601, "longitude": 92.41912, "tags": [ "labore", "elit", "fugiat", "non", "ullamco", "est", "proident" ], "friends": [ { "id": 0, "name": "Sosa Mendoza" }, { "id": 1, "name": "Josie Harrison" }, { "id": 2, "name": "Chavez Dickerson" } ], "greeting": "Hello, Pace Stark! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e99b6f3e073ca0e72", "index": 349, "guid": "5e091f1a-3adc-471c-9a5d-c761e0723654", "isActive": true, "balance": "$1,930.00", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Janis Arnold", "gender": "female", "company": "COMTEXT", "email": "janisarnold@comtext.com", "phone": "+1 (942) 553-2607", "address": "221 Glenmore Avenue, Kingstowne, Massachusetts, 6604", "about": "Aliqua ut exercitation ad sint. Cillum excepteur consectetur ut ipsum esse dolore incididunt proident adipisicing. Cillum duis amet cillum est ipsum magna. Excepteur et commodo aliquip deserunt in anim mollit nostrud nisi sunt do officia. Sint in mollit nisi cillum ipsum ut laborum laborum labore minim. Sunt cillum occaecat qui laboris qui dolore occaecat elit culpa exercitation.\r\n", "registered": "2014-06-10T03:03:32-12:00", "latitude": 21.599554, "longitude": -58.009744, "tags": [ "ad", "reprehenderit", "exercitation", "id", "do", "officia", "in" ], "friends": [ { "id": 0, "name": "Nita Rodriquez" }, { "id": 1, "name": "Gates Guy" }, { "id": 2, "name": "Lauren Vang" } ], "greeting": "Hello, Janis Arnold! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e3095548704785be5", "index": 350, "guid": "fc05b9e9-6ac5-4c4e-b3dd-e462bc6f31be", "isActive": false, "balance": "$1,068.82", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Lynnette Lynn", "gender": "female", "company": "ZAPHIRE", "email": "lynnettelynn@zaphire.com", "phone": "+1 (809) 446-2884", "address": "529 Oak Street, Sedley, Utah, 1466", "about": "Proident fugiat enim qui adipisicing officia do tempor commodo tempor minim Lorem voluptate. Nostrud labore do irure labore ad ea pariatur in. Laboris dolore magna pariatur cillum ex. Duis ea elit ad officia qui pariatur sint esse magna aliqua exercitation labore adipisicing.\r\n", "registered": "2014-08-15T23:40:13-12:00", "latitude": 65.406036, "longitude": -46.566218, "tags": [ "sit", "ad", "commodo", "do", "minim", "laboris", "elit" ], "friends": [ { "id": 0, "name": "Maxwell York" }, { "id": 1, "name": "Felecia Erickson" }, { "id": 2, "name": "Manuela Fields" } ], "greeting": "Hello, Lynnette Lynn! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e7bc5d2e46b0289c8", "index": 351, "guid": "75edcd2a-1e90-44cb-8992-29fd87d402b6", "isActive": true, "balance": "$2,072.35", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Calhoun Aguilar", "gender": "male", "company": "QUAREX", "email": "calhounaguilar@quarex.com", "phone": "+1 (997) 441-2278", "address": "479 Colonial Road, Fingerville, Montana, 4194", "about": "Officia excepteur aliquip quis sunt occaecat minim Lorem enim nulla ad. Officia ea sit tempor elit et eu nostrud excepteur et in exercitation mollit. Elit ea do nostrud sit deserunt esse proident minim adipisicing magna.\r\n", "registered": "2014-02-24T22:24:53-13:00", "latitude": -46.589535, "longitude": 132.711165, "tags": [ "mollit", "culpa", "laborum", "deserunt", "sint", "in", "esse" ], "friends": [ { "id": 0, "name": "Carey Gomez" }, { "id": 1, "name": "Nancy Stewart" }, { "id": 2, "name": "David Foster" } ], "greeting": "Hello, Calhoun Aguilar! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e9a530235d042d5da", "index": 352, "guid": "df38f76e-c1a8-419f-8de9-6afd8319ddbc", "isActive": true, "balance": "$2,528.11", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Chandra Pacheco", "gender": "female", "company": "VITRICOMP", "email": "chandrapacheco@vitricomp.com", "phone": "+1 (951) 459-2426", "address": "135 Norwood Avenue, Santel, Wisconsin, 6591", "about": "Ea culpa velit sit veniam. Duis consectetur minim sit mollit. Consectetur minim eu labore pariatur officia commodo incididunt ullamco deserunt in amet consectetur. Proident elit id qui reprehenderit nostrud sunt et aute enim. Cupidatat ea excepteur irure mollit excepteur Lorem id esse adipisicing duis veniam aute dolor culpa. Enim laborum dolore excepteur ea. Fugiat enim cillum in velit nostrud ullamco.\r\n", "registered": "2014-04-26T23:25:27-12:00", "latitude": -25.269563, "longitude": -121.145126, "tags": [ "eu", "quis", "aliquip", "deserunt", "enim", "amet", "duis" ], "friends": [ { "id": 0, "name": "Fisher Rodgers" }, { "id": 1, "name": "Randolph Meyers" }, { "id": 2, "name": "Sarah Roach" } ], "greeting": "Hello, Chandra Pacheco! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e5f8c4f9e155bd2e6", "index": 353, "guid": "b58e48f0-18d6-4563-94cb-965f9e9fabae", "isActive": false, "balance": "$2,096.12", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Watts Gallegos", "gender": "male", "company": "CYTREX", "email": "wattsgallegos@cytrex.com", "phone": "+1 (955) 476-2259", "address": "492 Ditmas Avenue, Fannett, Maine, 141", "about": "Minim veniam cillum dolor commodo nulla velit quis ea nulla quis minim et minim. Aliqua commodo duis sint sunt tempor veniam tempor deserunt velit ad culpa dolor cupidatat. Deserunt sit sunt exercitation minim veniam pariatur eu sint nostrud eiusmod exercitation quis aliqua do. Ex ut cillum amet occaecat laboris aute proident. Cillum magna aute consequat id laborum pariatur labore culpa eu pariatur ut consectetur non voluptate. Aliqua labore sit duis ea exercitation aliqua.\r\n", "registered": "2014-09-15T18:04:12-12:00", "latitude": 65.28449, "longitude": -131.514715, "tags": [ "commodo", "nulla", "velit", "id", "sint", "sit", "est" ], "friends": [ { "id": 0, "name": "Hensley Stokes" }, { "id": 1, "name": "Briana Marks" }, { "id": 2, "name": "Hamilton Woods" } ], "greeting": "Hello, Watts Gallegos! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e3fe8bbcf4ba5a5df", "index": 354, "guid": "c84f5498-46c5-4cd4-9dca-622a2b405a38", "isActive": false, "balance": "$2,275.57", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Chasity Briggs", "gender": "female", "company": "RODEOCEAN", "email": "chasitybriggs@rodeocean.com", "phone": "+1 (904) 446-3985", "address": "479 Dinsmore Place, Gloucester, Virginia, 8542", "about": "Nulla ad excepteur velit magna minim et. Est ex mollit ipsum commodo sit do dolore ea exercitation et. Consectetur ut labore voluptate nisi proident ut cupidatat minim et veniam deserunt ex et adipisicing. Duis velit ea sint laborum. Laborum esse enim cillum ad magna et do qui duis.\r\n", "registered": "2014-08-21T16:26:35-12:00", "latitude": 83.408355, "longitude": -155.887091, "tags": [ "adipisicing", "elit", "eu", "minim", "quis", "velit", "consectetur" ], "friends": [ { "id": 0, "name": "Josefa Serrano" }, { "id": 1, "name": "Ollie Cooper" }, { "id": 2, "name": "Lula Floyd" } ], "greeting": "Hello, Chasity Briggs! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e58b99c98f7766949", "index": 355, "guid": "bc2a6681-0694-40e7-9ebc-85d1ce0de52b", "isActive": false, "balance": "$3,379.61", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Harris Stevenson", "gender": "male", "company": "WARETEL", "email": "harrisstevenson@waretel.com", "phone": "+1 (843) 582-3392", "address": "822 Jewel Street, Haena, Kentucky, 7443", "about": "Duis anim incididunt sunt id eiusmod. Dolore ea et cupidatat mollit. Quis aliqua aliqua ex in occaecat. Laboris occaecat commodo pariatur amet sit exercitation. Aute do cupidatat amet amet.\r\n", "registered": "2014-07-28T12:00:13-12:00", "latitude": -10.8864, "longitude": -14.003775, "tags": [ "Lorem", "proident", "ad", "amet", "exercitation", "dolor", "pariatur" ], "friends": [ { "id": 0, "name": "Langley Sargent" }, { "id": 1, "name": "Barton Johnston" }, { "id": 2, "name": "Sadie Valenzuela" } ], "greeting": "Hello, Harris Stevenson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e6ede2c4c9ae9e934", "index": 356, "guid": "8784324c-8222-4749-8a43-f855b603b692", "isActive": false, "balance": "$3,178.84", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Jeannie Richards", "gender": "female", "company": "SLOFAST", "email": "jeannierichards@slofast.com", "phone": "+1 (908) 508-3249", "address": "425 Chester Court, Frizzleburg, Connecticut, 4393", "about": "Dolor nulla adipisicing anim magna duis reprehenderit tempor minim aliquip duis sunt incididunt ad irure. Anim laborum excepteur anim irure ex eu aute cupidatat cillum veniam. Nisi ad ipsum magna magna ex occaecat est est.\r\n", "registered": "2014-03-11T04:30:40-13:00", "latitude": 2.565084, "longitude": 77.497405, "tags": [ "ad", "laboris", "est", "tempor", "tempor", "amet", "commodo" ], "friends": [ { "id": 0, "name": "Pittman Duffy" }, { "id": 1, "name": "Hahn Blanchard" }, { "id": 2, "name": "Lyons Craig" } ], "greeting": "Hello, Jeannie Richards! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ed15c6ad8eda4652d", "index": 357, "guid": "c390d78b-d2a8-4091-ba16-67210b0f42a5", "isActive": true, "balance": "$1,755.12", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Rosalind Byrd", "gender": "female", "company": "BIFLEX", "email": "rosalindbyrd@biflex.com", "phone": "+1 (878) 429-2854", "address": "448 Ralph Avenue, Belmont, Mississippi, 533", "about": "Aliqua nulla proident proident est occaecat proident do sit dolore fugiat. Nisi id culpa laboris magna laborum excepteur amet dolore velit culpa mollit. Elit ex aliquip velit magna. Lorem labore do fugiat labore magna.\r\n", "registered": "2014-02-12T12:01:08-13:00", "latitude": -74.475688, "longitude": 164.529448, "tags": [ "labore", "consequat", "ipsum", "sint", "excepteur", "aliquip", "officia" ], "friends": [ { "id": 0, "name": "Lynn White" }, { "id": 1, "name": "Harriet Hensley" }, { "id": 2, "name": "Witt Martinez" } ], "greeting": "Hello, Rosalind Byrd! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e6eb190d05f390f82", "index": 358, "guid": "a244716d-8a71-48f8-aafd-277880d6af8c", "isActive": false, "balance": "$3,852.12", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Mercado Richmond", "gender": "male", "company": "EWEVILLE", "email": "mercadorichmond@eweville.com", "phone": "+1 (859) 423-2423", "address": "594 Beadel Street, Swartzville, Washington, 6437", "about": "Qui culpa Lorem enim do fugiat ea occaecat occaecat Lorem id ad. Deserunt consequat id duis culpa esse quis eu magna ullamco occaecat ad incididunt. Velit cillum eiusmod non adipisicing aliquip laborum et. Proident eu fugiat voluptate eiusmod laborum nisi aliqua dolore est. Eu nostrud cillum sit reprehenderit pariatur voluptate occaecat dolor sit laborum quis incididunt velit qui.\r\n", "registered": "2014-02-07T00:30:02-13:00", "latitude": -60.03204, "longitude": -77.07415, "tags": [ "esse", "officia", "laboris", "aliqua", "esse", "eiusmod", "ex" ], "friends": [ { "id": 0, "name": "Amy Mcclure" }, { "id": 1, "name": "Corinne Peters" }, { "id": 2, "name": "Luna Lara" } ], "greeting": "Hello, Mercado Richmond! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e68ebf98f816f503c", "index": 359, "guid": "b42ac33f-e406-482a-9e37-6d150f30e957", "isActive": true, "balance": "$3,147.54", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Chen Cleveland", "gender": "male", "company": "OVERFORK", "email": "chencleveland@overfork.com", "phone": "+1 (883) 485-2206", "address": "719 Elton Street, Draper, Tennessee, 6795", "about": "Cupidatat est adipisicing Lorem eiusmod velit anim in mollit officia incididunt nisi nostrud laborum. Deserunt consectetur non duis nulla sunt ad in quis velit Lorem sit adipisicing nulla reprehenderit. Aliquip consectetur et dolore laborum in consequat eu consectetur exercitation esse ipsum consequat. Ex aliqua nostrud culpa velit cillum laborum id ullamco qui elit velit consectetur eiusmod. Adipisicing duis laboris nostrud veniam labore tempor. In ex sunt ea consequat elit nulla esse officia fugiat tempor proident quis ex fugiat.\r\n", "registered": "2014-08-16T16:26:11-12:00", "latitude": 80.111779, "longitude": -110.05794, "tags": [ "dolor", "duis", "do", "adipisicing", "aliqua", "enim", "et" ], "friends": [ { "id": 0, "name": "Bernard Howell" }, { "id": 1, "name": "Cynthia Nielsen" }, { "id": 2, "name": "Barnes Rhodes" } ], "greeting": "Hello, Chen Cleveland! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ecad7ab43e4c9d5ca", "index": 360, "guid": "e3ba000e-4396-46f0-abfe-a20862d8c641", "isActive": true, "balance": "$2,325.95", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Elizabeth Hartman", "gender": "female", "company": "ZAYA", "email": "elizabethhartman@zaya.com", "phone": "+1 (956) 521-3886", "address": "413 Rutledge Street, Loma, Alabama, 5186", "about": "Est incididunt commodo enim et ad cupidatat ullamco voluptate. Minim laborum et laboris laborum. Lorem ea ipsum ex minim dolore occaecat aliqua. In amet sint est aute id magna ullamco. Quis labore enim duis incididunt tempor aute amet.\r\n", "registered": "2014-07-10T21:43:35-12:00", "latitude": -27.850321, "longitude": -26.454793, "tags": [ "pariatur", "tempor", "aute", "qui", "irure", "occaecat", "consectetur" ], "friends": [ { "id": 0, "name": "Glass Travis" }, { "id": 1, "name": "Celia Wilson" }, { "id": 2, "name": "Rowena Pace" } ], "greeting": "Hello, Elizabeth Hartman! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ef63df1257e8bf28e", "index": 361, "guid": "f2532c95-c1f1-4b67-afad-1dedc75f2d5a", "isActive": true, "balance": "$1,237.23", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Carmela Sparks", "gender": "female", "company": "STUCCO", "email": "carmelasparks@stucco.com", "phone": "+1 (858) 511-2141", "address": "699 Liberty Avenue, Garnet, Ohio, 5408", "about": "Veniam Lorem culpa id deserunt proident nisi ex aute minim velit laborum dolor nostrud laboris. In laboris do mollit tempor officia magna ullamco aute nostrud mollit. Ex est quis sit laborum dolor. Do sint velit exercitation et ut in amet. Qui ullamco dolore voluptate quis elit culpa quis id esse consequat nulla velit nostrud laborum.\r\n", "registered": "2014-08-18T15:05:01-12:00", "latitude": 57.756963, "longitude": 125.636474, "tags": [ "non", "eu", "non", "deserunt", "consectetur", "Lorem", "aute" ], "friends": [ { "id": 0, "name": "Rita Patterson" }, { "id": 1, "name": "Wynn Wood" }, { "id": 2, "name": "Whitney Rodriguez" } ], "greeting": "Hello, Carmela Sparks! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e72debe976e556b52", "index": 362, "guid": "644c46ed-2d58-4e95-9b9a-e8e52b9e2585", "isActive": false, "balance": "$3,220.61", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Nadia Bates", "gender": "female", "company": "GINK", "email": "nadiabates@gink.com", "phone": "+1 (916) 444-3545", "address": "818 Bristol Street, Walland, Hawaii, 5253", "about": "Et sit incididunt ea ipsum nisi duis cillum aute aute dolore ut deserunt. Exercitation eiusmod non sunt voluptate. Sit incididunt ea do aliquip. Nostrud excepteur dolor Lorem tempor amet ullamco laborum ut nostrud sit sint fugiat. Qui eiusmod dolore in adipisicing quis laboris velit et cupidatat sunt ad.\r\n", "registered": "2014-03-22T21:53:34-13:00", "latitude": 48.082051, "longitude": 63.096082, "tags": [ "duis", "minim", "do", "incididunt", "enim", "consequat", "anim" ], "friends": [ { "id": 0, "name": "Delacruz Shepard" }, { "id": 1, "name": "Geneva Mercado" }, { "id": 2, "name": "Kristin Fitzpatrick" } ], "greeting": "Hello, Nadia Bates! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1edee35a2b69e1da46", "index": 363, "guid": "26958dc3-9fa9-486e-9966-8f2219820f2b", "isActive": false, "balance": "$1,818.05", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Sofia Hart", "gender": "female", "company": "BIOSPAN", "email": "sofiahart@biospan.com", "phone": "+1 (869) 485-2561", "address": "513 Gallatin Place, Wheatfields, New Mexico, 132", "about": "Incididunt laborum ipsum commodo anim ut ut anim enim sunt dolor excepteur. Exercitation exercitation ullamco qui ad commodo aliqua officia cupidatat magna elit exercitation sit elit irure. Laborum laborum cupidatat duis qui cupidatat duis. Laboris do anim voluptate elit laborum duis nisi. Nisi fugiat occaecat adipisicing deserunt sit aute nostrud non sit et aliquip. Sint quis velit duis officia reprehenderit et veniam occaecat amet. Duis irure sunt nisi tempor nulla labore labore sunt.\r\n", "registered": "2014-07-11T18:38:55-12:00", "latitude": 3.659773, "longitude": -145.916717, "tags": [ "veniam", "amet", "veniam", "id", "in", "Lorem", "elit" ], "friends": [ { "id": 0, "name": "Estela Poole" }, { "id": 1, "name": "Gardner Franks" }, { "id": 2, "name": "Brown Watson" } ], "greeting": "Hello, Sofia Hart! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ec3cebab667a32450", "index": 364, "guid": "5669edbd-b2d3-4125-be49-6eb3bfef6fe5", "isActive": false, "balance": "$1,206.96", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Lowe Shaw", "gender": "male", "company": "LIQUIDOC", "email": "loweshaw@liquidoc.com", "phone": "+1 (889) 453-2606", "address": "252 Veronica Place, Avoca, Maryland, 1903", "about": "Mollit ea anim est velit commodo et do minim. Amet cillum nisi nulla voluptate nisi et aliquip reprehenderit adipisicing nisi quis aliqua fugiat aliquip. Exercitation deserunt reprehenderit id sit voluptate ex. Anim nisi incididunt adipisicing dolor id nisi fugiat fugiat nisi. Officia ipsum est reprehenderit aute commodo enim. Enim proident incididunt sunt sit aute magna magna commodo cillum qui laboris cupidatat.\r\n", "registered": "2014-03-05T07:08:15-13:00", "latitude": -29.909714, "longitude": -117.114551, "tags": [ "pariatur", "labore", "ad", "est", "mollit", "minim", "in" ], "friends": [ { "id": 0, "name": "Finley Smith" }, { "id": 1, "name": "Doris Bell" }, { "id": 2, "name": "Williams Simon" } ], "greeting": "Hello, Lowe Shaw! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e35e4348b0e470547", "index": 365, "guid": "4f9556a2-eaec-446d-be06-183030b3a622", "isActive": true, "balance": "$2,961.34", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Valentine Orr", "gender": "male", "company": "EPLODE", "email": "valentineorr@eplode.com", "phone": "+1 (913) 480-2795", "address": "967 Bridge Street, Cresaptown, Alaska, 7619", "about": "Nostrud consectetur consequat consequat nostrud officia duis Lorem nostrud amet elit velit do. Sint culpa nisi ut laboris non non do consequat aute id esse. Laboris eiusmod labore ipsum mollit ullamco velit commodo consequat. Adipisicing cupidatat exercitation sint ex proident consectetur eiusmod ex elit.\r\n", "registered": "2014-03-01T09:47:56-13:00", "latitude": 35.328009, "longitude": 106.10511, "tags": [ "consequat", "in", "id", "id", "irure", "commodo", "sit" ], "friends": [ { "id": 0, "name": "Mccormick Page" }, { "id": 1, "name": "Potts Greene" }, { "id": 2, "name": "Nellie Flowers" } ], "greeting": "Hello, Valentine Orr! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e014e65d4b1bd4a26", "index": 366, "guid": "a06f7310-1a54-4200-a9d1-fbf431c32480", "isActive": true, "balance": "$3,250.45", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Phelps Spencer", "gender": "male", "company": "LYRICHORD", "email": "phelpsspencer@lyrichord.com", "phone": "+1 (823) 409-3947", "address": "873 Losee Terrace, Goodville, Arizona, 2629", "about": "Eiusmod Lorem magna sunt amet aliqua. Quis magna incididunt ipsum adipisicing reprehenderit eiusmod ipsum cupidatat Lorem fugiat aute nisi incididunt. Ullamco incididunt eiusmod cupidatat officia dolore cupidatat consequat laborum reprehenderit eiusmod irure deserunt esse culpa. Occaecat non tempor aliquip proident velit ut. Laborum ipsum velit excepteur non ad enim dolore elit elit in. Quis ut aliquip magna minim sit consequat reprehenderit. Fugiat minim veniam reprehenderit sint in incididunt qui adipisicing mollit officia consequat eu veniam.\r\n", "registered": "2014-08-19T20:47:58-12:00", "latitude": 83.229211, "longitude": 58.569142, "tags": [ "laboris", "cillum", "nostrud", "minim", "culpa", "tempor", "voluptate" ], "friends": [ { "id": 0, "name": "Watkins Booker" }, { "id": 1, "name": "Carol Vinson" }, { "id": 2, "name": "Walsh Craft" } ], "greeting": "Hello, Phelps Spencer! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e542c93a071557405", "index": 367, "guid": "3e4bb86a-d75c-4458-bb54-d08b422ce9a2", "isActive": true, "balance": "$2,699.68", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Gracie Frazier", "gender": "female", "company": "SNIPS", "email": "graciefrazier@snips.com", "phone": "+1 (883) 423-2486", "address": "268 Frank Court, Levant, Federated States Of Micronesia, 343", "about": "Elit qui duis exercitation cillum quis. In ad tempor consequat est. Qui nostrud laboris quis velit laboris est ad culpa. Deserunt cillum excepteur ad fugiat id enim aute.\r\n", "registered": "2014-04-07T01:30:18-12:00", "latitude": 8.898465, "longitude": 76.070516, "tags": [ "proident", "duis", "eiusmod", "dolor", "proident", "non", "cupidatat" ], "friends": [ { "id": 0, "name": "Dominguez Guerrero" }, { "id": 1, "name": "Stephanie Francis" }, { "id": 2, "name": "Wilkinson Wiley" } ], "greeting": "Hello, Gracie Frazier! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ec3f9a1c66cab59fc", "index": 368, "guid": "9af2d6e0-d879-4327-8c45-450af8a06179", "isActive": true, "balance": "$3,676.00", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Heather Kelly", "gender": "female", "company": "FARMEX", "email": "heatherkelly@farmex.com", "phone": "+1 (928) 566-2151", "address": "615 Conway Street, Blairstown, Oklahoma, 1546", "about": "Ex sit esse commodo sint duis consequat laborum adipisicing eu culpa. Minim ullamco aliquip consequat quis. Cupidatat duis consequat aliquip pariatur voluptate tempor ad eiusmod voluptate labore officia qui amet. Deserunt quis pariatur qui tempor minim ullamco cupidatat deserunt. Aliqua adipisicing in adipisicing adipisicing adipisicing. Exercitation nostrud irure ea voluptate et. Magna dolore minim aliqua fugiat ut.\r\n", "registered": "2014-07-19T17:33:49-12:00", "latitude": 15.735468, "longitude": -147.060877, "tags": [ "voluptate", "mollit", "minim", "consectetur", "do", "nisi", "deserunt" ], "friends": [ { "id": 0, "name": "Kristy Klein" }, { "id": 1, "name": "Holly Mcbride" }, { "id": 2, "name": "Giles Carey" } ], "greeting": "Hello, Heather Kelly! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e3143e5d275993381", "index": 369, "guid": "78c7eeb7-2765-4e6d-a2b3-e89ffd5a11e5", "isActive": false, "balance": "$2,668.51", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Maryellen Fry", "gender": "female", "company": "OZEAN", "email": "maryellenfry@ozean.com", "phone": "+1 (852) 596-3521", "address": "245 Columbus Place, Brazos, Michigan, 2430", "about": "Consequat eiusmod est id dolore Lorem nisi consequat. Adipisicing ipsum fugiat cupidatat mollit proident excepteur. Aliqua culpa fugiat ex officia tempor qui dolor et exercitation ipsum nisi. Aliquip ex laborum quis aliqua excepteur voluptate enim mollit labore. Nostrud culpa deserunt exercitation laboris dolore nostrud ut veniam. Voluptate ut laboris amet exercitation exercitation ex in veniam ea tempor occaecat culpa. Dolore exercitation adipisicing aute qui excepteur cupidatat sint aliqua amet dolor magna.\r\n", "registered": "2014-04-16T23:17:14-12:00", "latitude": -64.025414, "longitude": 161.433618, "tags": [ "Lorem", "commodo", "nisi", "elit", "ex", "ullamco", "enim" ], "friends": [ { "id": 0, "name": "Tanner Beasley" }, { "id": 1, "name": "Dolly Gaines" }, { "id": 2, "name": "Mccarthy Warner" } ], "greeting": "Hello, Maryellen Fry! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e1cf9f2ab09bfce19", "index": 370, "guid": "c83fc394-21cc-45cd-b562-390784ac0133", "isActive": false, "balance": "$2,378.94", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Wilcox Henry", "gender": "male", "company": "MEDIOT", "email": "wilcoxhenry@mediot.com", "phone": "+1 (979) 479-2078", "address": "718 Broome Street, Faywood, Kansas, 5687", "about": "Voluptate eu excepteur dolore laboris cillum nisi enim exercitation do. Aute non adipisicing do anim et. Pariatur dolore nulla dolore aliqua amet Lorem labore veniam dolore voluptate reprehenderit qui officia. Minim ex qui deserunt duis anim aliquip nostrud ex commodo laboris aute commodo. Velit in culpa veniam occaecat fugiat aliqua pariatur ut ipsum id non tempor sint ad. Do culpa tempor cillum sunt id dolor velit adipisicing et est.\r\n", "registered": "2014-08-26T06:41:28-12:00", "latitude": 71.397743, "longitude": 99.031764, "tags": [ "est", "consectetur", "officia", "laboris", "proident", "velit", "pariatur" ], "friends": [ { "id": 0, "name": "Terry Clark" }, { "id": 1, "name": "Pratt Baird" }, { "id": 2, "name": "Lambert Noel" } ], "greeting": "Hello, Wilcox Henry! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e572a78a469cb35d9", "index": 371, "guid": "a30221d9-80ee-40d3-ad44-f39ee50629e2", "isActive": false, "balance": "$3,586.84", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Rasmussen Dunlap", "gender": "male", "company": "GEEKETRON", "email": "rasmussendunlap@geeketron.com", "phone": "+1 (913) 533-3793", "address": "429 Vanderbilt Avenue, Crisman, South Dakota, 1090", "about": "Adipisicing dolore elit proident pariatur ea. Et adipisicing duis duis occaecat ad. Labore sit id laborum voluptate sit qui commodo mollit eiusmod laboris cillum et. Voluptate dolor veniam exercitation dolor velit Lorem voluptate nisi quis enim cupidatat magna aliqua.\r\n", "registered": "2014-03-12T23:50:41-13:00", "latitude": -0.610695, "longitude": -37.159665, "tags": [ "et", "non", "qui", "nostrud", "ad", "id", "fugiat" ], "friends": [ { "id": 0, "name": "Jodie Kramer" }, { "id": 1, "name": "Lancaster Hubbard" }, { "id": 2, "name": "Toni Petersen" } ], "greeting": "Hello, Rasmussen Dunlap! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e915ceca2196593f2", "index": 372, "guid": "ee1456e1-7cf1-4c7b-a0f7-38135b36f397", "isActive": true, "balance": "$2,781.50", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Schmidt Ford", "gender": "male", "company": "UBERLUX", "email": "schmidtford@uberlux.com", "phone": "+1 (865) 476-2571", "address": "261 Gold Street, Whipholt, West Virginia, 3150", "about": "Eiusmod qui excepteur consequat eiusmod in. Aliqua sit et pariatur laboris commodo cupidatat sunt sit minim et qui. Est cillum voluptate id et id est reprehenderit.\r\n", "registered": "2014-03-27T03:27:39-13:00", "latitude": 57.212254, "longitude": -3.526685, "tags": [ "excepteur", "minim", "velit", "reprehenderit", "et", "proident", "sint" ], "friends": [ { "id": 0, "name": "Reeves Buck" }, { "id": 1, "name": "Estella Harrington" }, { "id": 2, "name": "Candy Johns" } ], "greeting": "Hello, Schmidt Ford! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1eaedd14bd655b4045", "index": 373, "guid": "bee10ac7-c9ad-4422-9f58-f26e253826f3", "isActive": true, "balance": "$2,469.24", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Woodward Montoya", "gender": "male", "company": "ULTRASURE", "email": "woodwardmontoya@ultrasure.com", "phone": "+1 (804) 573-2454", "address": "891 Cass Place, Ahwahnee, Texas, 1331", "about": "Exercitation est magna consequat aute cillum id ullamco incididunt cupidatat. Exercitation cupidatat occaecat est et enim voluptate eu eu officia. Occaecat culpa non duis mollit sunt duis ut. In ut sit ut aliqua in irure non sit.\r\n", "registered": "2014-06-20T17:15:03-12:00", "latitude": -34.705366, "longitude": -14.035872, "tags": [ "tempor", "ullamco", "laborum", "mollit", "amet", "veniam", "ullamco" ], "friends": [ { "id": 0, "name": "Solis Berger" }, { "id": 1, "name": "Short Osborne" }, { "id": 2, "name": "Tommie Mathis" } ], "greeting": "Hello, Woodward Montoya! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e3e32067574d1fe26", "index": 374, "guid": "825dd6bb-e3d5-47f5-9a7e-ad4c97f32542", "isActive": false, "balance": "$3,412.36", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Castillo Melton", "gender": "male", "company": "COMVERGES", "email": "castillomelton@comverges.com", "phone": "+1 (942) 445-2018", "address": "525 Joval Court, Rodman, Oregon, 4511", "about": "Esse ut consectetur dolore exercitation fugiat est ipsum. Aliqua consectetur nisi proident ad aliqua tempor deserunt adipisicing. Anim sint Lorem Lorem ex est. Anim eiusmod consequat officia incididunt quis.\r\n", "registered": "2014-09-23T02:14:35-12:00", "latitude": -83.769403, "longitude": 54.267615, "tags": [ "ad", "nulla", "ut", "et", "Lorem", "ea", "enim" ], "friends": [ { "id": 0, "name": "Traci Eaton" }, { "id": 1, "name": "Ingrid Mays" }, { "id": 2, "name": "Knowles Gill" } ], "greeting": "Hello, Castillo Melton! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e01e0ee90915c81ec", "index": 375, "guid": "7a8b10ba-3ee9-4bdd-b406-0048ca28d6a2", "isActive": false, "balance": "$1,263.84", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Whitehead Wheeler", "gender": "male", "company": "JUMPSTACK", "email": "whiteheadwheeler@jumpstack.com", "phone": "+1 (881) 427-3003", "address": "712 Coffey Street, Washington, Nevada, 7823", "about": "Occaecat quis ut duis eiusmod in. Eu dolore ut adipisicing aute. Id labore labore occaecat ut deserunt incididunt voluptate consequat tempor non ullamco fugiat. Tempor enim id occaecat est cillum incididunt proident aliqua sunt exercitation cillum et culpa. Officia consequat quis nulla ea sit dolor consectetur laborum esse ex ea. Deserunt veniam in cillum duis labore proident anim officia anim ullamco nisi. Excepteur pariatur cupidatat dolore nisi adipisicing ipsum id anim consectetur cupidatat nostrud.\r\n", "registered": "2014-07-08T08:14:38-12:00", "latitude": -34.950256, "longitude": 59.105506, "tags": [ "excepteur", "aliquip", "dolore", "officia", "nostrud", "officia", "ipsum" ], "friends": [ { "id": 0, "name": "Tracy Carr" }, { "id": 1, "name": "Jefferson Wolfe" }, { "id": 2, "name": "Liza Huber" } ], "greeting": "Hello, Whitehead Wheeler! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e446ce708145be87e", "index": 376, "guid": "91a3f913-6d03-4d5d-9a8c-9d3ea4aa4a94", "isActive": false, "balance": "$2,415.70", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Paul Pierce", "gender": "male", "company": "JAMNATION", "email": "paulpierce@jamnation.com", "phone": "+1 (854) 472-3926", "address": "187 Fane Court, Hobucken, Minnesota, 7250", "about": "Sit officia deserunt nisi cillum dolore. Adipisicing occaecat ex est laborum reprehenderit nulla minim. Elit laborum Lorem id aliquip magna consequat adipisicing quis commodo aliqua nisi laboris do. Qui ipsum magna excepteur qui magna. Ut aliqua aliqua in proident occaecat.\r\n", "registered": "2014-01-27T08:04:55-13:00", "latitude": -9.518437, "longitude": -135.301789, "tags": [ "tempor", "voluptate", "aliquip", "aliquip", "eiusmod", "eiusmod", "commodo" ], "friends": [ { "id": 0, "name": "Love Merritt" }, { "id": 1, "name": "Bright Aguirre" }, { "id": 2, "name": "Russell Luna" } ], "greeting": "Hello, Paul Pierce! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e87947ac7e75a570d", "index": 377, "guid": "20b3ca56-3504-481f-8584-ba023b2b8712", "isActive": true, "balance": "$2,689.66", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Shannon Bowen", "gender": "male", "company": "ZILLA", "email": "shannonbowen@zilla.com", "phone": "+1 (910) 435-3189", "address": "964 Atkins Avenue, Nicut, Missouri, 8791", "about": "In aute cupidatat exercitation aliquip aliqua eu esse. Magna quis aliquip quis est exercitation in sint minim incididunt excepteur. Velit excepteur nulla consectetur amet ex dolor.\r\n", "registered": "2014-04-08T10:06:20-12:00", "latitude": 88.916679, "longitude": 168.064744, "tags": [ "et", "non", "officia", "esse", "id", "excepteur", "fugiat" ], "friends": [ { "id": 0, "name": "Katy Mueller" }, { "id": 1, "name": "Flora Duncan" }, { "id": 2, "name": "Kim Burt" } ], "greeting": "Hello, Shannon Bowen! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e53048f8dbb0cbc86", "index": 378, "guid": "8e851c75-574f-4c2a-a088-fb2bfdff4cf3", "isActive": false, "balance": "$3,652.26", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Josefina Saunders", "gender": "female", "company": "EARTHMARK", "email": "josefinasaunders@earthmark.com", "phone": "+1 (896) 501-3401", "address": "829 Meeker Avenue, Salix, Rhode Island, 968", "about": "Ea elit ipsum ex in in nisi voluptate deserunt pariatur consequat laborum cillum. Dolor incididunt dolore culpa culpa non irure aliqua nulla dolore non magna tempor tempor. Exercitation nostrud amet ullamco laborum voluptate incididunt velit ut reprehenderit occaecat anim deserunt. Id est do quis sint aute proident ex.\r\n", "registered": "2014-03-10T19:09:35-13:00", "latitude": 47.168526, "longitude": 113.115918, "tags": [ "dolor", "laboris", "nisi", "fugiat", "amet", "esse", "irure" ], "friends": [ { "id": 0, "name": "Ursula Caldwell" }, { "id": 1, "name": "Thornton House" }, { "id": 2, "name": "Juanita Dudley" } ], "greeting": "Hello, Josefina Saunders! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ecd47068daf635117", "index": 379, "guid": "b7bb1505-1054-46b8-abfe-04d96665377f", "isActive": true, "balance": "$2,238.61", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Eleanor Wynn", "gender": "female", "company": "IMAGINART", "email": "eleanorwynn@imaginart.com", "phone": "+1 (872) 527-2312", "address": "459 Johnson Avenue, Morningside, Florida, 2362", "about": "Aliqua irure non ut duis commodo amet eu laboris ullamco eiusmod irure ut proident. In commodo laborum velit anim aliqua id. Minim mollit elit labore in amet ea. Eu anim ad do mollit quis esse.\r\n", "registered": "2014-04-04T15:52:34-13:00", "latitude": -1.449098, "longitude": -43.453555, "tags": [ "sint", "duis", "laboris", "culpa", "laborum", "dolore", "mollit" ], "friends": [ { "id": 0, "name": "Kirk Wilkinson" }, { "id": 1, "name": "Abbott Bailey" }, { "id": 2, "name": "Rebekah Barry" } ], "greeting": "Hello, Eleanor Wynn! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eb51ee4b875298ef1", "index": 380, "guid": "68781736-69b4-4c5f-80ec-2d519aac7911", "isActive": false, "balance": "$2,849.32", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Burch Atkins", "gender": "male", "company": "EXOBLUE", "email": "burchatkins@exoblue.com", "phone": "+1 (868) 544-2400", "address": "224 Flatlands Avenue, Ernstville, North Carolina, 2265", "about": "Lorem consectetur consectetur ea esse. Quis magna commodo ex elit fugiat. Mollit excepteur incididunt ullamco labore esse elit enim amet anim esse. Proident incididunt in voluptate incididunt aliqua qui sit velit sint labore consectetur commodo est magna. Exercitation amet reprehenderit nostrud deserunt fugiat commodo occaecat sint laborum cupidatat ut ad in. Voluptate ea esse sunt ad excepteur est ex culpa consectetur quis nostrud.\r\n", "registered": "2014-04-18T13:08:28-12:00", "latitude": 22.890024, "longitude": -60.876692, "tags": [ "fugiat", "est", "officia", "amet", "ipsum", "dolor", "Lorem" ], "friends": [ { "id": 0, "name": "Huff Donaldson" }, { "id": 1, "name": "Trujillo Hutchinson" }, { "id": 2, "name": "Jewell Decker" } ], "greeting": "Hello, Burch Atkins! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e2f3bb29e5af7e59e", "index": 381, "guid": "fbb141d5-6a1e-4b51-8535-9eef72b2bb14", "isActive": false, "balance": "$3,462.40", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Lilian Cochran", "gender": "female", "company": "PLUTORQUE", "email": "liliancochran@plutorque.com", "phone": "+1 (876) 551-2585", "address": "795 Stuyvesant Avenue, Unionville, New Hampshire, 9712", "about": "Fugiat sunt ea ad elit sunt veniam nisi amet dolore Lorem. Id dolore laboris laborum duis sit est veniam exercitation. Aliqua do consequat pariatur minim sunt excepteur velit. Ex incididunt Lorem est commodo anim amet sunt aute qui esse dolore. Nostrud magna quis dolore veniam est officia.\r\n", "registered": "2014-01-10T08:52:18-13:00", "latitude": 13.896786, "longitude": -151.305736, "tags": [ "exercitation", "incididunt", "ea", "ea", "sunt", "nulla", "ipsum" ], "friends": [ { "id": 0, "name": "Mcfarland Mckay" }, { "id": 1, "name": "Selena Simpson" }, { "id": 2, "name": "Strong Everett" } ], "greeting": "Hello, Lilian Cochran! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e5ae2e7478691479d", "index": 382, "guid": "8cc72aea-f8bf-4619-8bd8-8637409be9f6", "isActive": false, "balance": "$3,085.30", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Mae Delgado", "gender": "female", "company": "SOLAREN", "email": "maedelgado@solaren.com", "phone": "+1 (843) 531-2608", "address": "478 Church Lane, Healy, Arkansas, 5128", "about": "Ipsum consectetur eiusmod reprehenderit ea et enim nulla est. Velit deserunt elit ex commodo tempor ex non proident labore esse officia. Laborum excepteur incididunt cillum cillum commodo deserunt ea ex cillum amet. Nisi fugiat nisi sit deserunt in amet aliqua dolore labore. Sit sit fugiat enim consequat sit adipisicing elit esse enim cillum. Eiusmod do irure sint elit eiusmod veniam ad reprehenderit incididunt.\r\n", "registered": "2014-04-15T23:47:28-12:00", "latitude": 24.061483, "longitude": -141.416651, "tags": [ "esse", "commodo", "qui", "sunt", "commodo", "aute", "incididunt" ], "friends": [ { "id": 0, "name": "Lloyd Mcgowan" }, { "id": 1, "name": "Deann Fleming" }, { "id": 2, "name": "Cameron Burton" } ], "greeting": "Hello, Mae Delgado! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ed6d2fbe6bd6287b8", "index": 383, "guid": "e3afadb8-9550-4b89-b5a0-d007697e664c", "isActive": true, "balance": "$1,707.43", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Hammond Graves", "gender": "male", "company": "SCHOOLIO", "email": "hammondgraves@schoolio.com", "phone": "+1 (862) 499-2422", "address": "491 Russell Street, Osage, Iowa, 762", "about": "Laboris quis labore enim minim. Fugiat sit aliqua aliqua culpa excepteur duis ut reprehenderit reprehenderit commodo ad. Ex incididunt pariatur magna laborum nostrud reprehenderit anim consectetur anim. Consequat laboris fugiat esse est voluptate commodo voluptate nulla excepteur enim fugiat dolore eiusmod id. Cupidatat non duis enim cupidatat. Magna cillum irure sint deserunt elit fugiat tempor magna exercitation. Irure laborum dolore Lorem dolor et id sint ipsum duis.\r\n", "registered": "2014-06-27T00:17:13-12:00", "latitude": 67.193408, "longitude": 119.710605, "tags": [ "sit", "enim", "pariatur", "excepteur", "minim", "proident", "est" ], "friends": [ { "id": 0, "name": "Riddle Potts" }, { "id": 1, "name": "Nichole Holland" }, { "id": 2, "name": "Serrano Hewitt" } ], "greeting": "Hello, Hammond Graves! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e099c345ac8e5bea9", "index": 384, "guid": "4155b02a-1974-44a3-9ffa-92f3cd52d40c", "isActive": false, "balance": "$1,306.57", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Ginger Porter", "gender": "female", "company": "ZORK", "email": "gingerporter@zork.com", "phone": "+1 (927) 533-3796", "address": "868 Raleigh Place, Shindler, Nebraska, 7929", "about": "Deserunt id cillum elit sunt consectetur. Nisi laboris sit duis sit qui ut qui sunt elit. Consequat ad amet consectetur id laborum dolore id elit ea reprehenderit labore duis. Laborum reprehenderit ullamco mollit dolore nulla pariatur Lorem non.\r\n", "registered": "2014-09-19T09:54:32-12:00", "latitude": 58.515995, "longitude": -138.039551, "tags": [ "sit", "minim", "dolore", "velit", "do", "in", "sit" ], "friends": [ { "id": 0, "name": "Queen Callahan" }, { "id": 1, "name": "Valenzuela Christensen" }, { "id": 2, "name": "June Salazar" } ], "greeting": "Hello, Ginger Porter! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e4d968da871b021a9", "index": 385, "guid": "d0ca01ea-167d-4eec-a696-bc96bdb4f6eb", "isActive": false, "balance": "$2,091.56", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Edna Emerson", "gender": "female", "company": "FOSSIEL", "email": "ednaemerson@fossiel.com", "phone": "+1 (838) 532-2525", "address": "119 Martense Street, Nile, District Of Columbia, 3660", "about": "Sint ipsum exercitation tempor incididunt anim consequat ut cupidatat laboris qui quis Lorem. Ullamco laborum anim pariatur excepteur et duis do id. Consequat enim ipsum laboris tempor cillum qui nostrud amet. Deserunt aliquip dolore anim consequat dolor nostrud ullamco non quis consectetur proident minim tempor.\r\n", "registered": "2014-07-12T12:51:38-12:00", "latitude": 29.87232, "longitude": -111.489062, "tags": [ "mollit", "nulla", "nostrud", "labore", "Lorem", "ullamco", "occaecat" ], "friends": [ { "id": 0, "name": "Fletcher Velasquez" }, { "id": 1, "name": "Suzette Chapman" }, { "id": 2, "name": "Cheri Jennings" } ], "greeting": "Hello, Edna Emerson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e403759caeb3120b9", "index": 386, "guid": "448a9f89-f98f-4b53-9640-a01077b0c9e8", "isActive": true, "balance": "$1,073.44", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Coleen Logan", "gender": "female", "company": "KEGULAR", "email": "coleenlogan@kegular.com", "phone": "+1 (810) 547-2209", "address": "233 Blake Court, Epworth, New Jersey, 8049", "about": "Ipsum incididunt commodo non non sunt irure officia magna nostrud pariatur excepteur est. Adipisicing qui minim sint reprehenderit irure. Incididunt qui laboris velit aute Lorem aute esse non nisi exercitation anim. Incididunt quis qui est tempor nisi pariatur dolore velit id consequat eu ut est. Eu qui commodo elit occaecat. Pariatur velit et ex esse commodo. Sint in et adipisicing pariatur incididunt non officia nostrud et consectetur veniam in.\r\n", "registered": "2014-03-14T07:33:38-13:00", "latitude": 4.37548, "longitude": 87.225678, "tags": [ "qui", "dolore", "officia", "adipisicing", "ad", "elit", "nisi" ], "friends": [ { "id": 0, "name": "Margret Sloan" }, { "id": 1, "name": "Sampson Lamb" }, { "id": 2, "name": "Smith Jensen" } ], "greeting": "Hello, Coleen Logan! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e5b73bde6e9539385", "index": 387, "guid": "da502eb0-a6d8-432e-a62b-94c1919c010e", "isActive": false, "balance": "$2,434.82", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Kelley Carrillo", "gender": "female", "company": "ACUMENTOR", "email": "kelleycarrillo@acumentor.com", "phone": "+1 (997) 585-3508", "address": "283 Morton Street, Loveland, Palau, 4657", "about": "Commodo esse nostrud veniam consequat adipisicing consequat aute aute. Eu est sit occaecat sunt exercitation eu laboris. Incididunt quis incididunt tempor elit minim minim commodo nulla sit culpa excepteur ea. Aliquip qui nulla est tempor fugiat culpa excepteur pariatur non minim. Est Lorem quis adipisicing magna sit magna consectetur ullamco veniam sint. Dolor laborum mollit Lorem nisi quis deserunt cupidatat. Est nisi consequat nulla irure proident id aute ut cillum quis amet.\r\n", "registered": "2014-07-17T12:52:11-12:00", "latitude": -0.257126, "longitude": -0.754923, "tags": [ "consequat", "sint", "officia", "aute", "pariatur", "enim", "qui" ], "friends": [ { "id": 0, "name": "Myrtle Mccarthy" }, { "id": 1, "name": "Shelley Salas" }, { "id": 2, "name": "Carlson Castillo" } ], "greeting": "Hello, Kelley Carrillo! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e746d47e0a9c799ed", "index": 388, "guid": "63373be2-f1c7-480a-b79c-e4a4871f5f2c", "isActive": false, "balance": "$3,847.40", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Spencer Tanner", "gender": "male", "company": "QUILK", "email": "spencertanner@quilk.com", "phone": "+1 (866) 443-2742", "address": "636 Dennett Place, Thornport, Puerto Rico, 1167", "about": "Consequat dolor non id pariatur aliquip culpa sint veniam labore excepteur. Tempor ipsum velit culpa dolore commodo nulla cillum exercitation. Dolor do ex esse elit consequat pariatur dolore consectetur aute laboris laboris anim nisi. Occaecat sint pariatur dolor nulla adipisicing ipsum sunt. Ipsum reprehenderit in anim sint irure.\r\n", "registered": "2014-05-31T06:15:51-12:00", "latitude": -41.475217, "longitude": -130.053634, "tags": [ "commodo", "anim", "laboris", "magna", "dolore", "Lorem", "aliquip" ], "friends": [ { "id": 0, "name": "Goff Chase" }, { "id": 1, "name": "Blevins Suarez" }, { "id": 2, "name": "George Leonard" } ], "greeting": "Hello, Spencer Tanner! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ee20f7f0d66f6952e", "index": 389, "guid": "f323a859-c973-4d9a-9a16-a916b3089788", "isActive": true, "balance": "$2,703.88", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Becker Castro", "gender": "male", "company": "ZEDALIS", "email": "beckercastro@zedalis.com", "phone": "+1 (911) 535-3976", "address": "276 Graham Avenue, Manila, California, 9321", "about": "Deserunt est laborum commodo fugiat ipsum. Velit commodo ex tempor duis elit. Nisi ad ea consectetur nisi.\r\n", "registered": "2014-03-10T08:19:49-13:00", "latitude": 18.855826, "longitude": 71.089793, "tags": [ "ullamco", "aute", "exercitation", "in", "officia", "est", "voluptate" ], "friends": [ { "id": 0, "name": "Maritza Burks" }, { "id": 1, "name": "Bentley Perry" }, { "id": 2, "name": "Hogan Hansen" } ], "greeting": "Hello, Becker Castro! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e6e0e814f8b45bd0e", "index": 390, "guid": "1efc2b67-44eb-4177-b819-13ca59353950", "isActive": true, "balance": "$3,951.31", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Tessa Avery", "gender": "female", "company": "COMTRACT", "email": "tessaavery@comtract.com", "phone": "+1 (921) 563-2178", "address": "307 Broadway , Dola, Vermont, 7768", "about": "Id ut qui sunt ipsum magna nisi dolor veniam. Nisi cillum culpa nisi reprehenderit nulla incididunt anim Lorem consequat sit. Non sint quis veniam veniam sunt est commodo do velit. Ullamco reprehenderit mollit sunt sit. Exercitation magna nisi voluptate do incididunt fugiat deserunt nisi. Ea consectetur anim excepteur ad.\r\n", "registered": "2014-02-06T04:30:43-13:00", "latitude": 51.327114, "longitude": 150.949311, "tags": [ "incididunt", "ullamco", "aliqua", "Lorem", "minim", "sunt", "amet" ], "friends": [ { "id": 0, "name": "Ross Holman" }, { "id": 1, "name": "Dejesus Boyle" }, { "id": 2, "name": "Mclean Bauer" } ], "greeting": "Hello, Tessa Avery! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e560cedb70a30f9ad", "index": 391, "guid": "61558a18-3846-4c24-9181-c405e974803f", "isActive": false, "balance": "$1,553.69", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Carrie Avila", "gender": "female", "company": "VERBUS", "email": "carrieavila@verbus.com", "phone": "+1 (888) 405-2489", "address": "113 Woodruff Avenue, Mulino, Indiana, 837", "about": "Tempor consequat reprehenderit consequat duis minim id cupidatat et. Reprehenderit dolore commodo sunt dolor proident et ullamco veniam. Adipisicing aliquip deserunt nostrud ad ipsum in culpa. In ex dolore reprehenderit ipsum commodo quis mollit ipsum nostrud officia quis duis nostrud deserunt. Ea laborum duis pariatur incididunt irure fugiat veniam dolor minim nisi minim aliqua. Lorem adipisicing consequat consectetur sint esse dolor veniam sint deserunt ipsum fugiat laborum qui dolor. Ipsum duis nostrud eu cillum pariatur.\r\n", "registered": "2014-05-15T20:04:49-12:00", "latitude": -16.515505, "longitude": 106.163119, "tags": [ "consequat", "id", "do", "magna", "anim", "dolor", "duis" ], "friends": [ { "id": 0, "name": "Bishop Vazquez" }, { "id": 1, "name": "Bridgett Tucker" }, { "id": 2, "name": "Larson Swanson" } ], "greeting": "Hello, Carrie Avila! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e1ec6cf06c75913dc", "index": 392, "guid": "580659f8-1eed-49d7-994b-ae749561bf17", "isActive": false, "balance": "$3,849.35", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Robyn Miles", "gender": "female", "company": "MUSANPOLY", "email": "robynmiles@musanpoly.com", "phone": "+1 (996) 514-3934", "address": "287 Clinton Street, Belleview, Illinois, 8706", "about": "Nostrud dolore aliqua nostrud veniam aliqua esse tempor laboris occaecat nulla esse ullamco. Fugiat adipisicing dolore minim consectetur commodo enim. Pariatur Lorem labore cupidatat dolore laborum. Mollit dolor qui culpa amet. Magna ullamco eu eiusmod voluptate dolore fugiat qui in adipisicing excepteur.\r\n", "registered": "2014-04-30T14:23:41-12:00", "latitude": -1.188155, "longitude": 142.136587, "tags": [ "cupidatat", "in", "quis", "officia", "occaecat", "sit", "sunt" ], "friends": [ { "id": 0, "name": "Mildred Hays" }, { "id": 1, "name": "Deirdre Whitley" }, { "id": 2, "name": "Fannie Stone" } ], "greeting": "Hello, Robyn Miles! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e367a9dbc4812a095", "index": 393, "guid": "a63f0b7b-1011-4874-b57d-c691a1e4f8a4", "isActive": false, "balance": "$1,016.70", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "May Villarreal", "gender": "female", "company": "KIGGLE", "email": "mayvillarreal@kiggle.com", "phone": "+1 (871) 488-2566", "address": "876 Sunnyside Avenue, Magnolia, South Carolina, 2961", "about": "Excepteur aliquip veniam commodo Lorem dolore anim magna amet. Nostrud ad proident magna elit aute consequat ipsum cupidatat dolore sunt commodo ullamco ullamco voluptate. Proident aliquip magna ex ipsum id proident. Magna labore non do exercitation do sint.\r\n", "registered": "2014-01-10T02:12:03-13:00", "latitude": -24.512992, "longitude": -177.604859, "tags": [ "mollit", "aliquip", "labore", "quis", "aliqua", "proident", "proident" ], "friends": [ { "id": 0, "name": "Rhonda Howe" }, { "id": 1, "name": "Gregory Keith" }, { "id": 2, "name": "Irma Mayo" } ], "greeting": "Hello, May Villarreal! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e0d135bc09be2de4d", "index": 394, "guid": "db6c88e6-7f17-4620-aee6-ce0db7871d30", "isActive": true, "balance": "$2,377.36", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Coleman Rosales", "gender": "male", "company": "TERRASYS", "email": "colemanrosales@terrasys.com", "phone": "+1 (900) 503-3465", "address": "157 Rapelye Street, Nelson, American Samoa, 7096", "about": "Culpa officia consectetur magna culpa. Consectetur irure labore exercitation aute mollit ad. Aliquip Lorem cillum enim exercitation ea ad magna et minim proident occaecat voluptate. Nisi dolor labore irure proident et quis sit non culpa. Duis reprehenderit non cillum nisi.\r\n", "registered": "2014-03-03T01:34:35-13:00", "latitude": 60.87464, "longitude": -130.63663, "tags": [ "occaecat", "ipsum", "sunt", "dolore", "eu", "qui", "nisi" ], "friends": [ { "id": 0, "name": "Bowers Mason" }, { "id": 1, "name": "Cherry Warren" }, { "id": 2, "name": "Angelica Barlow" } ], "greeting": "Hello, Coleman Rosales! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e94ad416faa230b01", "index": 395, "guid": "4cb7ea06-7a3b-4ffc-a019-12424cebb11d", "isActive": true, "balance": "$2,145.03", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Leola Davis", "gender": "female", "company": "APPLICA", "email": "leoladavis@applica.com", "phone": "+1 (854) 455-3580", "address": "453 Alton Place, Deltaville, Delaware, 6300", "about": "Fugiat minim nisi officia sunt enim ullamco dolor. Enim ullamco culpa culpa magna amet Lorem minim excepteur quis elit. Voluptate ullamco nisi in eiusmod esse laboris cillum. Dolore reprehenderit enim velit nulla officia ad reprehenderit occaecat nostrud mollit sunt Lorem amet veniam. Esse qui consectetur veniam est do magna commodo esse eiusmod minim quis consequat. Do cupidatat incididunt excepteur sint nostrud aliquip et enim.\r\n", "registered": "2014-05-10T02:49:32-12:00", "latitude": 66.091976, "longitude": 170.603586, "tags": [ "consequat", "officia", "eu", "ipsum", "cupidatat", "qui", "sit" ], "friends": [ { "id": 0, "name": "Schroeder Solis" }, { "id": 1, "name": "Stacie Riggs" }, { "id": 2, "name": "Alta Matthews" } ], "greeting": "Hello, Leola Davis! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e1284c0cda6b2714f", "index": 396, "guid": "d8c50511-6f2f-4ada-8cf4-feb446ebdd93", "isActive": true, "balance": "$2,598.54", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Solomon Petty", "gender": "male", "company": "ZIORE", "email": "solomonpetty@ziore.com", "phone": "+1 (945) 471-2690", "address": "687 Eckford Street, Witmer, Pennsylvania, 4462", "about": "Elit culpa amet elit do cupidatat aliquip Lorem. Cupidatat ullamco duis amet tempor esse pariatur nisi aliqua proident elit. Enim fugiat dolore velit aliquip nulla qui cillum cupidatat occaecat ullamco culpa laboris.\r\n", "registered": "2014-07-31T05:59:24-12:00", "latitude": 23.200098, "longitude": 60.476277, "tags": [ "dolor", "adipisicing", "esse", "ea", "duis", "ullamco", "nostrud" ], "friends": [ { "id": 0, "name": "Sue Marshall" }, { "id": 1, "name": "Allie Black" }, { "id": 2, "name": "Twila Sykes" } ], "greeting": "Hello, Solomon Petty! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e94a57083bbb9e34f", "index": 397, "guid": "e017847c-b131-468d-9b1a-d234e2f1aad6", "isActive": false, "balance": "$3,831.20", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Jaclyn Becker", "gender": "female", "company": "PAWNAGRA", "email": "jaclynbecker@pawnagra.com", "phone": "+1 (951) 480-2812", "address": "609 Sedgwick Street, Crawfordsville, Georgia, 3506", "about": "Voluptate ex nulla velit esse dolore excepteur officia fugiat eiusmod ipsum labore fugiat reprehenderit labore. Fugiat do id mollit magna esse aute laboris excepteur voluptate do labore aliqua sunt. Ad occaecat qui occaecat magna ea reprehenderit exercitation adipisicing qui. Pariatur occaecat adipisicing ullamco nostrud dolore anim anim nostrud duis aliquip dolor aliquip incididunt. Eiusmod elit nulla aliquip id nisi incididunt cillum. Pariatur consequat adipisicing ad cupidatat officia anim occaecat proident voluptate et magna anim.\r\n", "registered": "2014-02-10T07:48:20-13:00", "latitude": -53.101468, "longitude": 94.305832, "tags": [ "cillum", "magna", "anim", "incididunt", "nisi", "dolor", "tempor" ], "friends": [ { "id": 0, "name": "Roy Cox" }, { "id": 1, "name": "Jessica Murphy" }, { "id": 2, "name": "Allen Kim" } ], "greeting": "Hello, Jaclyn Becker! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ebb3b8d9d5bc2a5be", "index": 398, "guid": "87a6ae66-5a0c-4347-8901-d3e5f3414de8", "isActive": true, "balance": "$2,033.33", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Eugenia Stafford", "gender": "female", "company": "MAGNINA", "email": "eugeniastafford@magnina.com", "phone": "+1 (977) 423-2705", "address": "185 Amherst Street, Collins, North Dakota, 8746", "about": "Laboris ea aute et esse consectetur ut velit dolor reprehenderit tempor cillum. Consectetur anim sint consectetur ullamco do commodo voluptate elit pariatur ut. Irure magna mollit consequat labore pariatur dolore occaecat et veniam.\r\n", "registered": "2014-04-04T00:30:26-13:00", "latitude": 19.352232, "longitude": 148.199057, "tags": [ "pariatur", "pariatur", "est", "consequat", "excepteur", "nostrud", "anim" ], "friends": [ { "id": 0, "name": "Maynard Daniel" }, { "id": 1, "name": "Aileen Hudson" }, { "id": 2, "name": "Dean Snow" } ], "greeting": "Hello, Eugenia Stafford! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e5442545d32098bf9", "index": 399, "guid": "2bdb3496-f15b-490f-acd8-c682683846c4", "isActive": true, "balance": "$3,425.21", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Gabriela Patrick", "gender": "female", "company": "IMPERIUM", "email": "gabrielapatrick@imperium.com", "phone": "+1 (850) 442-2790", "address": "914 Surf Avenue, Jessie, Louisiana, 2276", "about": "Laborum aliquip adipisicing magna commodo minim in aute. Duis voluptate ipsum consequat laborum exercitation quis ut aute laboris. Sit officia exercitation laboris ex laboris culpa magna nostrud. Nostrud eiusmod proident reprehenderit consequat proident adipisicing ex cillum commodo est officia.\r\n", "registered": "2014-02-08T19:57:42-13:00", "latitude": 51.656901, "longitude": -42.861711, "tags": [ "aliquip", "reprehenderit", "velit", "dolore", "reprehenderit", "eu", "esse" ], "friends": [ { "id": 0, "name": "Harmon Padilla" }, { "id": 1, "name": "Franco Melendez" }, { "id": 2, "name": "Donna Vasquez" } ], "greeting": "Hello, Gabriela Patrick! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e8792142eaeab50e7", "index": 400, "guid": "b2ef3fdd-f29d-4a5a-9a85-88db779d5bf8", "isActive": false, "balance": "$1,734.04", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Madden Tyler", "gender": "male", "company": "VERTON", "email": "maddentyler@verton.com", "phone": "+1 (846) 557-3361", "address": "534 Guernsey Street, Sexton, Northern Mariana Islands, 1078", "about": "Quis reprehenderit mollit consequat dolore non anim cillum. Proident proident Lorem in pariatur deserunt aute. Amet nostrud enim tempor nostrud. Duis ad ipsum reprehenderit excepteur officia tempor Lorem ex consectetur dolor consectetur cupidatat. Sint ex cillum cillum laboris quis culpa qui reprehenderit sit velit exercitation qui et.\r\n", "registered": "2014-04-25T07:33:04-12:00", "latitude": 70.986542, "longitude": 116.090067, "tags": [ "commodo", "proident", "minim", "occaecat", "sint", "quis", "tempor" ], "friends": [ { "id": 0, "name": "Gross Mooney" }, { "id": 1, "name": "Sally Garrison" }, { "id": 2, "name": "Dianna Best" } ], "greeting": "Hello, Madden Tyler! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e50446a2e4c4cbf32", "index": 401, "guid": "79ea3194-01fe-4e8f-bce3-d8bd35eac507", "isActive": true, "balance": "$3,849.39", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Pat Mccormick", "gender": "female", "company": "ENQUILITY", "email": "patmccormick@enquility.com", "phone": "+1 (812) 435-2576", "address": "630 Gelston Avenue, Riceville, Colorado, 553", "about": "Id proident est eu ut veniam irure pariatur fugiat laborum ex culpa ipsum tempor irure. Tempor ad voluptate velit consequat voluptate aliqua in sint. Eu qui aute laboris irure cillum magna occaecat anim commodo laboris in aliquip elit ipsum. Dolore ullamco esse aute mollit non officia. Lorem quis dolor velit sint. Irure magna non mollit esse reprehenderit amet proident ullamco esse velit enim velit fugiat. Ut consequat veniam in ullamco amet nostrud exercitation duis proident.\r\n", "registered": "2014-03-25T21:41:49-13:00", "latitude": 46.954229, "longitude": -150.548551, "tags": [ "voluptate", "cillum", "ipsum", "ea", "commodo", "aute", "anim" ], "friends": [ { "id": 0, "name": "Rush Cross" }, { "id": 1, "name": "Ina Albert" }, { "id": 2, "name": "Drake Newton" } ], "greeting": "Hello, Pat Mccormick! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ea13e86fce78133f2", "index": 402, "guid": "ba4ab3a2-6ebd-42a7-a861-0b22e8f3d4a6", "isActive": true, "balance": "$3,616.96", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Kathy Kemp", "gender": "female", "company": "ZANITY", "email": "kathykemp@zanity.com", "phone": "+1 (805) 440-2369", "address": "340 Greenwood Avenue, Bethany, Idaho, 7503", "about": "Lorem in ea occaecat consequat labore. Commodo consectetur ea do sit. Officia dolore eu cillum ad eu esse.\r\n", "registered": "2014-04-07T16:31:42-12:00", "latitude": 10.328888, "longitude": 172.508237, "tags": [ "reprehenderit", "et", "minim", "ut", "sint", "eiusmod", "deserunt" ], "friends": [ { "id": 0, "name": "Lane Nelson" }, { "id": 1, "name": "Leta Duke" }, { "id": 2, "name": "Abby Perez" } ], "greeting": "Hello, Kathy Kemp! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ed424333fc03723ec", "index": 403, "guid": "b397d996-fcbf-498a-9603-8c883d2dde7d", "isActive": false, "balance": "$2,785.93", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Lolita Hoffman", "gender": "female", "company": "OMNIGOG", "email": "lolitahoffman@omnigog.com", "phone": "+1 (922) 466-3549", "address": "271 Jerome Street, Idamay, Marshall Islands, 5854", "about": "Enim minim do cillum mollit adipisicing enim sunt nulla ea velit reprehenderit proident sit nisi. Ex commodo labore incididunt cillum adipisicing consectetur et laboris ex non veniam excepteur dolor incididunt. Cupidatat sint magna sunt magna mollit velit nostrud veniam labore. Irure ut qui officia sunt elit ut. Magna in nostrud laboris tempor non dolor. Et ut adipisicing mollit consequat irure laboris officia velit anim cillum. Ipsum veniam ex occaecat magna officia occaecat magna aliquip veniam incididunt eiusmod.\r\n", "registered": "2014-06-12T01:18:37-12:00", "latitude": -35.301951, "longitude": 60.592175, "tags": [ "ad", "voluptate", "ut", "pariatur", "duis", "ut", "ex" ], "friends": [ { "id": 0, "name": "Clemons Waller" }, { "id": 1, "name": "Levy Bowman" }, { "id": 2, "name": "Yang Morales" } ], "greeting": "Hello, Lolita Hoffman! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e1d7e7e38bb1d116e", "index": 404, "guid": "69c0a0dd-1514-4cfa-85e0-a4ac4d610012", "isActive": false, "balance": "$3,484.34", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Elba Mejia", "gender": "female", "company": "COMVEX", "email": "elbamejia@comvex.com", "phone": "+1 (836) 582-2312", "address": "762 Mill Avenue, Moquino, New York, 4343", "about": "Cillum aliquip commodo qui laboris incididunt pariatur dolor officia tempor consectetur. Deserunt do minim est magna nulla ex dolore cillum culpa eu. Commodo magna ad do quis laboris ullamco ut reprehenderit in nostrud. Ipsum deserunt nostrud quis pariatur ad nulla. Elit cillum magna sit duis ad esse ullamco. Incididunt proident voluptate ad elit dolor aute nisi proident aliquip aliqua commodo non. Quis quis ut esse amet ad.\r\n", "registered": "2014-02-08T07:55:25-13:00", "latitude": -89.173048, "longitude": 167.834053, "tags": [ "eu", "adipisicing", "ipsum", "qui", "mollit", "consequat", "veniam" ], "friends": [ { "id": 0, "name": "Keith Hurst" }, { "id": 1, "name": "Hodge Kennedy" }, { "id": 2, "name": "Booker Farrell" } ], "greeting": "Hello, Elba Mejia! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e6fb9c6c557142d9c", "index": 405, "guid": "5b5bcf4e-837d-490e-bc0f-ec3ed4ea8497", "isActive": false, "balance": "$2,022.53", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Duffy Doyle", "gender": "male", "company": "FURNIGEER", "email": "duffydoyle@furnigeer.com", "phone": "+1 (973) 512-2350", "address": "710 Benson Avenue, Allamuchy, Guam, 3813", "about": "Ex velit sint laboris reprehenderit labore aliquip cillum tempor aute dolor. Elit sunt non dolor magna. Eu aliqua mollit excepteur laborum officia ex. Ipsum proident minim elit exercitation dolor dolore commodo in mollit magna ut. Qui veniam ut pariatur reprehenderit nulla voluptate nostrud incididunt est do dolore non. Ea irure enim deserunt dolor eiusmod adipisicing enim esse mollit exercitation dolore aliqua ut. Amet irure aute commodo cillum esse sit duis.\r\n", "registered": "2014-06-17T22:46:32-12:00", "latitude": 36.752969, "longitude": 42.577276, "tags": [ "laboris", "ea", "deserunt", "tempor", "do", "consequat", "nulla" ], "friends": [ { "id": 0, "name": "Velazquez Hoover" }, { "id": 1, "name": "Golden Dalton" }, { "id": 2, "name": "Maryann Mcdowell" } ], "greeting": "Hello, Duffy Doyle! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ec6e692c3a4931906", "index": 406, "guid": "d3cf6efb-98a0-4348-8f1c-f7018be926b2", "isActive": true, "balance": "$3,411.15", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Elsie Marsh", "gender": "female", "company": "NITRACYR", "email": "elsiemarsh@nitracyr.com", "phone": "+1 (874) 437-3842", "address": "545 McKibben Street, Columbus, Virgin Islands, 5482", "about": "Fugiat dolor nulla elit proident nostrud velit tempor exercitation adipisicing ea deserunt tempor deserunt aute. Officia excepteur sunt in proident deserunt. Aute ea laborum deserunt occaecat consequat qui fugiat aliqua ad incididunt. Labore laborum irure nostrud officia est. Laboris tempor consectetur nulla aliquip commodo voluptate veniam aute laborum in cupidatat.\r\n", "registered": "2014-03-04T04:13:14-13:00", "latitude": -72.258694, "longitude": 175.864718, "tags": [ "amet", "cillum", "incididunt", "dolore", "laborum", "aute", "proident" ], "friends": [ { "id": 0, "name": "Terri Juarez" }, { "id": 1, "name": "Diaz Dillard" }, { "id": 2, "name": "Janell Lee" } ], "greeting": "Hello, Elsie Marsh! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e9b0765550f2a90b3", "index": 407, "guid": "7d78e91d-fcab-4ade-88a8-7ad62f18863e", "isActive": true, "balance": "$1,547.57", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Vargas Mayer", "gender": "male", "company": "OATFARM", "email": "vargasmayer@oatfarm.com", "phone": "+1 (873) 591-3824", "address": "299 Quentin Road, Calpine, Massachusetts, 7124", "about": "Sint eiusmod ipsum ullamco ullamco. Voluptate labore deserunt magna commodo. Laborum consequat eiusmod proident cillum id veniam dolore sint laboris dolor deserunt.\r\n", "registered": "2014-08-15T13:46:08-12:00", "latitude": -4.218781, "longitude": -113.201286, "tags": [ "magna", "sint", "ut", "velit", "amet", "ullamco", "cillum" ], "friends": [ { "id": 0, "name": "Tami Beard" }, { "id": 1, "name": "Raquel Randolph" }, { "id": 2, "name": "Sylvia Rocha" } ], "greeting": "Hello, Vargas Mayer! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e10d5f0eb5f7ca306", "index": 408, "guid": "f6326bd1-2a87-4750-8860-a150db143b51", "isActive": true, "balance": "$1,287.31", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Irwin Owen", "gender": "male", "company": "JETSILK", "email": "irwinowen@jetsilk.com", "phone": "+1 (891) 406-3475", "address": "946 Hanover Place, Iberia, Utah, 6805", "about": "Veniam ea commodo amet consectetur. Mollit exercitation nostrud labore eiusmod ut dolor velit nisi consectetur. Incididunt voluptate labore dolor cillum pariatur enim labore labore. Quis amet cillum duis cupidatat sunt irure dolor ullamco Lorem.\r\n", "registered": "2014-05-07T01:51:38-12:00", "latitude": 58.909952, "longitude": 124.679597, "tags": [ "cupidatat", "aliqua", "mollit", "nulla", "eu", "aute", "ex" ], "friends": [ { "id": 0, "name": "Harrington Justice" }, { "id": 1, "name": "Ramirez Walters" }, { "id": 2, "name": "Roth Moon" } ], "greeting": "Hello, Irwin Owen! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e74d81fd1fc8e44ff", "index": 409, "guid": "068e5fad-0e6e-4315-92f5-fe0fabf477f1", "isActive": true, "balance": "$3,613.75", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Cannon Byers", "gender": "male", "company": "BOSTONIC", "email": "cannonbyers@bostonic.com", "phone": "+1 (949) 585-3491", "address": "925 President Street, Sisquoc, Montana, 4493", "about": "Nulla aliquip deserunt nulla culpa id. Ullamco nulla fugiat duis non consectetur cillum elit ad aliquip. Eiusmod excepteur eiusmod Lorem deserunt cillum nostrud id. Adipisicing irure ipsum enim anim. Cillum culpa sit nostrud sunt consequat Lorem duis pariatur tempor incididunt. Voluptate est minim ullamco ut incididunt nostrud incididunt minim irure Lorem labore.\r\n", "registered": "2014-03-02T00:39:14-13:00", "latitude": -13.535254, "longitude": -93.51796, "tags": [ "magna", "nostrud", "nulla", "do", "labore", "ut", "est" ], "friends": [ { "id": 0, "name": "Joyner Mcdaniel" }, { "id": 1, "name": "Nieves Pearson" }, { "id": 2, "name": "Collier Mcintosh" } ], "greeting": "Hello, Cannon Byers! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e3bcc1d9d997f28b5", "index": 410, "guid": "227580f8-da01-42cd-95f7-ce8f52ae1fb6", "isActive": true, "balance": "$3,068.94", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Herrera Robertson", "gender": "male", "company": "CODAX", "email": "herrerarobertson@codax.com", "phone": "+1 (848) 490-2479", "address": "399 Linden Boulevard, Odessa, Wisconsin, 9660", "about": "Enim elit consequat nostrud id enim. Ea laboris amet deserunt esse cillum anim ut amet irure excepteur. Minim enim deserunt esse veniam minim nisi duis. Fugiat excepteur ad incididunt Lorem laboris minim irure ipsum. Consectetur in enim proident cillum. Officia quis irure aute amet dolore commodo cillum excepteur. Esse eu eu ea amet amet consequat cupidatat pariatur qui reprehenderit dolore.\r\n", "registered": "2014-03-19T07:30:45-13:00", "latitude": -45.577807, "longitude": -0.24922, "tags": [ "occaecat", "do", "nulla", "ex", "elit", "veniam", "commodo" ], "friends": [ { "id": 0, "name": "Alison Sherman" }, { "id": 1, "name": "Pitts Gillespie" }, { "id": 2, "name": "Dennis Glass" } ], "greeting": "Hello, Herrera Robertson! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1eae4f8ca2fc07ed97", "index": 411, "guid": "40cc6678-e285-4a68-91f1-a326fb34bf58", "isActive": false, "balance": "$1,440.21", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Jillian Wells", "gender": "female", "company": "MOBILDATA", "email": "jillianwells@mobildata.com", "phone": "+1 (847) 425-2840", "address": "886 Monitor Street, Tyro, Maine, 8990", "about": "Nulla deserunt in deserunt nulla laborum do fugiat. Quis aliquip consequat ex sit non ea fugiat enim incididunt dolore labore ut irure. Exercitation voluptate occaecat cillum est occaecat consequat proident nulla aute enim mollit occaecat. Cupidatat excepteur laborum in consequat incididunt consequat. Eu dolor magna deserunt sit irure elit. Dolor aliquip voluptate ut officia velit minim duis culpa reprehenderit occaecat non.\r\n", "registered": "2014-02-15T03:43:12-13:00", "latitude": 42.24462, "longitude": 128.966112, "tags": [ "minim", "tempor", "enim", "occaecat", "eiusmod", "dolor", "cupidatat" ], "friends": [ { "id": 0, "name": "Sherrie Love" }, { "id": 1, "name": "Hardin Owens" }, { "id": 2, "name": "Willis Levy" } ], "greeting": "Hello, Jillian Wells! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e00e2dbad919e8d93", "index": 412, "guid": "05a70b45-5ce0-43fa-ba29-0d3dfe70c673", "isActive": false, "balance": "$3,453.15", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Naomi Dillon", "gender": "female", "company": "BITTOR", "email": "naomidillon@bittor.com", "phone": "+1 (963) 481-3651", "address": "813 Ide Court, Cashtown, Virginia, 7669", "about": "Consequat consequat anim ipsum incididunt est. Qui culpa ipsum magna fugiat reprehenderit commodo qui pariatur sunt magna mollit id sint. Ipsum voluptate consequat reprehenderit commodo deserunt duis dolor ullamco Lorem sunt commodo irure commodo. Ipsum nisi mollit occaecat proident laborum tempor non enim. Amet dolor culpa exercitation sit dolor esse laborum est ad quis.\r\n", "registered": "2014-09-06T03:14:04-12:00", "latitude": 38.573187, "longitude": 22.546491, "tags": [ "voluptate", "in", "sit", "esse", "proident", "aute", "consectetur" ], "friends": [ { "id": 0, "name": "Rocha Williamson" }, { "id": 1, "name": "Robinson Ware" }, { "id": 2, "name": "Crawford Alston" } ], "greeting": "Hello, Naomi Dillon! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e5e62cb99bb36f130", "index": 413, "guid": "0ed9b99c-2fc4-4e55-932b-b279ee0415dc", "isActive": false, "balance": "$2,431.86", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Barlow Nieves", "gender": "male", "company": "COMBOGEN", "email": "barlownieves@combogen.com", "phone": "+1 (964) 529-2501", "address": "814 Applegate Court, Barrelville, Kentucky, 5768", "about": "Nisi qui adipisicing non excepteur. Do officia amet exercitation incididunt id cillum nisi sit enim fugiat duis in exercitation consectetur. Consectetur Lorem laborum officia ut eu. Adipisicing cillum qui nostrud dolore id aute duis cillum nulla officia minim ex. Ad dolore officia sit adipisicing dolore Lorem adipisicing. In laboris dolor ea aliquip excepteur elit laboris culpa voluptate voluptate consectetur exercitation id Lorem. Minim fugiat ullamco adipisicing nulla deserunt dolor esse cupidatat in quis aliquip.\r\n", "registered": "2014-08-17T00:10:55-12:00", "latitude": -65.119383, "longitude": 117.282626, "tags": [ "ex", "aliquip", "nisi", "fugiat", "nulla", "mollit", "cupidatat" ], "friends": [ { "id": 0, "name": "Esther Deleon" }, { "id": 1, "name": "Jocelyn Parrish" }, { "id": 2, "name": "Fitzpatrick Farley" } ], "greeting": "Hello, Barlow Nieves! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ee1c658690033ea28", "index": 414, "guid": "db869d39-ab7e-40c0-9c28-474622d73be8", "isActive": false, "balance": "$3,093.51", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Neva Pugh", "gender": "female", "company": "ZYTRAX", "email": "nevapugh@zytrax.com", "phone": "+1 (905) 582-3683", "address": "787 Midwood Street, Kula, Connecticut, 1942", "about": "Ex enim ex ut non. Consequat do nisi incididunt sunt pariatur id nulla. Duis consequat do dolor laboris. Culpa id sit veniam nisi. Deserunt ut do non occaecat laboris nulla do. Aliquip deserunt ea sint exercitation magna elit proident ea quis occaecat non cillum adipisicing aute.\r\n", "registered": "2014-01-15T09:32:04-13:00", "latitude": -65.722541, "longitude": 14.094894, "tags": [ "nostrud", "velit", "nulla", "voluptate", "ex", "dolor", "aliqua" ], "friends": [ { "id": 0, "name": "Cruz Barber" }, { "id": 1, "name": "Sybil Hayes" }, { "id": 2, "name": "Callahan Pennington" } ], "greeting": "Hello, Neva Pugh! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ea32f2101151d2f2f", "index": 415, "guid": "1fa0767b-cb9c-4080-8a0e-694261f9aecd", "isActive": true, "balance": "$1,928.47", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Liz May", "gender": "female", "company": "OTHERSIDE", "email": "lizmay@otherside.com", "phone": "+1 (897) 598-3526", "address": "815 Ovington Avenue, Bawcomville, Mississippi, 229", "about": "Ut ut laborum quis in cillum qui sit deserunt eiusmod aliqua non ipsum. Ut nisi cupidatat labore tempor. Fugiat deserunt tempor aliquip tempor cupidatat reprehenderit irure cupidatat Lorem. Ut ullamco reprehenderit qui laboris nisi proident adipisicing nostrud cupidatat ad. Dolor laborum occaecat dolor officia aute aute culpa sint dolore id. Adipisicing enim est cupidatat nulla duis non duis amet magna.\r\n", "registered": "2014-06-02T03:56:22-12:00", "latitude": -79.300179, "longitude": -115.690389, "tags": [ "cupidatat", "aute", "proident", "ex", "cillum", "ullamco", "deserunt" ], "friends": [ { "id": 0, "name": "Ashley Hyde" }, { "id": 1, "name": "Ortega Nunez" }, { "id": 2, "name": "Stout Hodge" } ], "greeting": "Hello, Liz May! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e85f837e7f5300a6c", "index": 416, "guid": "5cc3ab4b-ab9b-4c67-bac6-0373f3f68086", "isActive": false, "balance": "$2,647.59", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Liliana Dominguez", "gender": "female", "company": "TERSANKI", "email": "lilianadominguez@tersanki.com", "phone": "+1 (839) 457-2541", "address": "577 Barbey Street, Hartsville/Hartley, Washington, 9927", "about": "Eiusmod qui veniam occaecat voluptate nulla laborum eu laborum. Cupidatat esse eiusmod est velit do ut irure. Ex magna elit laboris proident ex qui fugiat. Ipsum ex culpa pariatur nisi et amet excepteur. Proident proident qui voluptate elit Lorem aliquip ipsum ad magna aute velit nostrud. Id sunt aliqua veniam ea veniam dolore commodo magna nostrud anim veniam sit ea pariatur. Irure et incididunt sit magna amet elit pariatur et incididunt ut enim sint occaecat dolore.\r\n", "registered": "2014-04-10T08:17:17-12:00", "latitude": -10.444014, "longitude": -94.610425, "tags": [ "consectetur", "irure", "sint", "sunt", "et", "laboris", "enim" ], "friends": [ { "id": 0, "name": "Kate Mitchell" }, { "id": 1, "name": "Boyd Rogers" }, { "id": 2, "name": "Faith Odom" } ], "greeting": "Hello, Liliana Dominguez! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e7d657456fa173df4", "index": 417, "guid": "b0a482a4-1d72-454e-be31-24a507a432f8", "isActive": true, "balance": "$1,574.77", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Pansy Brock", "gender": "female", "company": "DIGIFAD", "email": "pansybrock@digifad.com", "phone": "+1 (896) 528-3088", "address": "367 Beverly Road, Courtland, Tennessee, 1582", "about": "Mollit qui mollit officia ullamco velit amet exercitation minim non. Enim labore culpa officia pariatur qui pariatur eu velit proident magna irure dolore amet. Laborum laborum sint officia laboris sint ex commodo in labore excepteur quis fugiat cillum proident. Aliquip cupidatat ullamco aute do dolor. Laboris incididunt cupidatat pariatur excepteur ex in consectetur duis amet laboris velit aute duis. Fugiat aute magna anim quis nulla cillum exercitation consequat ut voluptate.\r\n", "registered": "2014-07-13T13:17:00-12:00", "latitude": 31.145807, "longitude": -76.741483, "tags": [ "do", "excepteur", "sint", "nostrud", "non", "id", "qui" ], "friends": [ { "id": 0, "name": "Chelsea Dixon" }, { "id": 1, "name": "Dickerson Barnes" }, { "id": 2, "name": "Gilda Massey" } ], "greeting": "Hello, Pansy Brock! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e77e3f8143af4f2ac", "index": 418, "guid": "05232684-ebaa-46c5-a8fd-11f493076c03", "isActive": true, "balance": "$2,881.82", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Valdez Morton", "gender": "male", "company": "PLASMOX", "email": "valdezmorton@plasmox.com", "phone": "+1 (984) 576-3329", "address": "857 Llama Court, Cedarville, Alabama, 5558", "about": "Excepteur esse ex laborum cupidatat voluptate sint sint excepteur aute do id cupidatat incididunt. Eiusmod do aute aliqua do pariatur fugiat. Mollit sit anim ut sint irure tempor qui non cupidatat enim labore ipsum et. Excepteur duis anim fugiat esse in. Ipsum cupidatat minim dolor dolor veniam aute et consequat do aliquip non.\r\n", "registered": "2014-07-04T00:50:53-12:00", "latitude": -55.268464, "longitude": 151.485881, "tags": [ "nisi", "non", "enim", "veniam", "incididunt", "amet", "id" ], "friends": [ { "id": 0, "name": "Stanley Landry" }, { "id": 1, "name": "Forbes Garcia" }, { "id": 2, "name": "Berry Bowers" } ], "greeting": "Hello, Valdez Morton! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e130104464e9fcae6", "index": 419, "guid": "c84d5789-8dc0-4829-ab8c-725c4e0d582e", "isActive": false, "balance": "$3,273.90", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Susana Whitaker", "gender": "female", "company": "PROGENEX", "email": "susanawhitaker@progenex.com", "phone": "+1 (971) 489-3787", "address": "629 Rewe Street, Hickory, Ohio, 336", "about": "Voluptate mollit laboris eu eiusmod est velit qui Lorem. Nostrud proident minim labore laboris minim sunt mollit. Nulla ex ullamco consectetur ut. Pariatur reprehenderit aliqua proident exercitation aute sit non culpa mollit quis. Veniam mollit et occaecat aliqua elit.\r\n", "registered": "2014-04-01T23:48:31-13:00", "latitude": -87.592985, "longitude": -55.730236, "tags": [ "irure", "laborum", "cupidatat", "minim", "tempor", "ullamco", "nisi" ], "friends": [ { "id": 0, "name": "Lara Gordon" }, { "id": 1, "name": "Hancock Downs" }, { "id": 2, "name": "Caldwell Rose" } ], "greeting": "Hello, Susana Whitaker! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eac4924a4450adc0c", "index": 420, "guid": "c38658c6-1f0e-4521-a8d4-6cb29d24f076", "isActive": false, "balance": "$3,830.40", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Freida Blackwell", "gender": "female", "company": "FISHLAND", "email": "freidablackwell@fishland.com", "phone": "+1 (887) 502-2562", "address": "109 Vandalia Avenue, Dowling, Hawaii, 9579", "about": "Nostrud pariatur proident ex non sint culpa veniam ullamco dolore. Eu laboris esse amet culpa in. Dolor esse dolor consequat officia veniam exercitation eu labore officia laboris nostrud reprehenderit minim sunt. Culpa sit ut deserunt amet enim nisi veniam mollit tempor eiusmod. In amet id commodo ex sit. Lorem sunt pariatur est nostrud officia consequat velit quis sit excepteur cupidatat est. Mollit sit veniam eiusmod nulla.\r\n", "registered": "2014-07-28T19:37:47-12:00", "latitude": -23.182197, "longitude": -119.865777, "tags": [ "et", "sit", "magna", "laborum", "do", "anim", "adipisicing" ], "friends": [ { "id": 0, "name": "Knapp Steele" }, { "id": 1, "name": "Lowery Dorsey" }, { "id": 2, "name": "Marquez Burch" } ], "greeting": "Hello, Freida Blackwell! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e2945c29411388d44", "index": 421, "guid": "6f4b4ac6-b2e5-43c6-af86-e0db7004e68a", "isActive": false, "balance": "$3,453.45", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Madge Miller", "gender": "female", "company": "TERAPRENE", "email": "madgemiller@teraprene.com", "phone": "+1 (932) 594-3833", "address": "486 Ford Street, Romeville, New Mexico, 6785", "about": "Do mollit commodo aute minim est dolore pariatur consectetur adipisicing officia do dolor cillum amet. Enim cupidatat eiusmod nulla non nisi sint cupidatat anim cillum. Exercitation fugiat anim do nulla occaecat cupidatat amet magna labore id officia officia ipsum deserunt. Lorem sunt sit laborum enim Lorem est amet proident consectetur id.\r\n", "registered": "2014-07-21T15:41:18-12:00", "latitude": 22.240912, "longitude": -54.575059, "tags": [ "duis", "magna", "et", "consectetur", "commodo", "id", "est" ], "friends": [ { "id": 0, "name": "Daniel Gross" }, { "id": 1, "name": "Briggs Rowe" }, { "id": 2, "name": "Malinda Fitzgerald" } ], "greeting": "Hello, Madge Miller! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e5323cbe57eec3317", "index": 422, "guid": "6184a6ce-ca91-44ab-9704-e724c53e8882", "isActive": true, "balance": "$2,167.53", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Christensen Burris", "gender": "male", "company": "AQUOAVO", "email": "christensenburris@aquoavo.com", "phone": "+1 (836) 525-2053", "address": "220 Quincy Street, Thomasville, Maryland, 6422", "about": "Id deserunt amet ut nostrud magna aliqua. Culpa adipisicing proident mollit et. Occaecat proident sunt non in sunt fugiat minim nulla deserunt.\r\n", "registered": "2014-07-20T13:44:49-12:00", "latitude": -21.672517, "longitude": 4.144024, "tags": [ "reprehenderit", "irure", "ad", "fugiat", "deserunt", "culpa", "irure" ], "friends": [ { "id": 0, "name": "Rhodes Case" }, { "id": 1, "name": "Alana Hines" }, { "id": 2, "name": "Parks Contreras" } ], "greeting": "Hello, Christensen Burris! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e860a8775f40f91a1", "index": 423, "guid": "cc98be23-c5cb-44c6-8262-831e0fe7ed88", "isActive": true, "balance": "$3,041.05", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Ramona Chen", "gender": "female", "company": "ISOSPHERE", "email": "ramonachen@isosphere.com", "phone": "+1 (802) 525-3084", "address": "452 Underhill Avenue, Roland, Alaska, 9354", "about": "Non officia mollit officia reprehenderit. Ex aute est dolore commodo commodo laborum duis duis nostrud officia incididunt. Fugiat duis irure dolor fugiat commodo deserunt consectetur exercitation do in. Aliquip consequat do cillum adipisicing amet.\r\n", "registered": "2014-04-30T10:28:48-12:00", "latitude": 82.341006, "longitude": -5.166574, "tags": [ "et", "enim", "elit", "esse", "aliqua", "tempor", "labore" ], "friends": [ { "id": 0, "name": "Atkins Bean" }, { "id": 1, "name": "Ayala Burns" }, { "id": 2, "name": "Tucker Bruce" } ], "greeting": "Hello, Ramona Chen! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ec1918a0557a0c5e6", "index": 424, "guid": "4e5e2c5e-c8d8-4e91-b435-da62b1b3e4b7", "isActive": true, "balance": "$3,550.93", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Darla Gilliam", "gender": "female", "company": "UNI", "email": "darlagilliam@uni.com", "phone": "+1 (857) 530-3458", "address": "593 Herkimer Court, Brutus, Arizona, 6560", "about": "Nisi anim culpa anim qui enim nostrud elit deserunt magna voluptate aliquip eiusmod in. Aliqua Lorem anim sit cillum anim Lorem labore. Adipisicing labore esse elit tempor. In voluptate sunt amet minim quis labore exercitation incididunt. Ea ipsum proident nisi cupidatat eiusmod nulla aute culpa qui Lorem.\r\n", "registered": "2014-03-14T11:18:58-13:00", "latitude": -12.999057, "longitude": 144.994894, "tags": [ "consequat", "ea", "laborum", "consequat", "mollit", "consectetur", "fugiat" ], "friends": [ { "id": 0, "name": "Chris Weiss" }, { "id": 1, "name": "Nona Sharp" }, { "id": 2, "name": "Cindy Rivera" } ], "greeting": "Hello, Darla Gilliam! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e259bdfe1e7c6c596", "index": 425, "guid": "2af16731-9a78-4358-8d6a-734ca4a7e1be", "isActive": true, "balance": "$1,819.57", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Terry Hobbs", "gender": "female", "company": "ZAGGLE", "email": "terryhobbs@zaggle.com", "phone": "+1 (921) 412-3874", "address": "172 Royce Place, Norwood, Federated States Of Micronesia, 8760", "about": "Est sit nisi magna voluptate id nisi aute pariatur est eu labore qui consequat occaecat. Aliquip exercitation sint eu occaecat enim ullamco ex. Officia laboris non et consectetur ut id magna. Nisi fugiat laboris voluptate et ut sunt.\r\n", "registered": "2014-04-06T15:33:49-12:00", "latitude": -31.183396, "longitude": 120.386055, "tags": [ "ad", "est", "labore", "sunt", "mollit", "velit", "deserunt" ], "friends": [ { "id": 0, "name": "Patterson Parker" }, { "id": 1, "name": "Mcclain West" }, { "id": 2, "name": "Gretchen Peck" } ], "greeting": "Hello, Terry Hobbs! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1edeb0a0ad49a67400", "index": 426, "guid": "c3411f1e-990f-41e9-a3ec-c9e134008cea", "isActive": false, "balance": "$3,615.33", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Loraine Hogan", "gender": "female", "company": "DIGIGENE", "email": "lorainehogan@digigene.com", "phone": "+1 (891) 483-3097", "address": "953 Bushwick Court, Falconaire, Oklahoma, 834", "about": "Officia consequat anim est veniam laborum est exercitation fugiat aliquip. Deserunt enim cillum excepteur mollit sunt. Aliqua anim voluptate velit minim aute nostrud elit excepteur ex elit pariatur. Ad sint exercitation sunt cupidatat ea. Consequat sit velit non fugiat ut ullamco et consectetur.\r\n", "registered": "2014-07-30T18:03:52-12:00", "latitude": -1.740492, "longitude": 160.882745, "tags": [ "irure", "esse", "enim", "nostrud", "voluptate", "reprehenderit", "tempor" ], "friends": [ { "id": 0, "name": "Fleming Coffey" }, { "id": 1, "name": "Lucia Snider" }, { "id": 2, "name": "Whitney Flores" } ], "greeting": "Hello, Loraine Hogan! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ecdc64d1114b845fa", "index": 427, "guid": "33c4ff3f-32b4-464e-b7a8-fc1e4a95d960", "isActive": true, "balance": "$2,726.24", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Guthrie Harrell", "gender": "male", "company": "SILODYNE", "email": "guthrieharrell@silodyne.com", "phone": "+1 (897) 521-3426", "address": "127 Schenck Avenue, Stonybrook, Michigan, 8667", "about": "Veniam sit ipsum reprehenderit sunt qui ex elit elit in quis cupidatat aliquip pariatur. Velit nostrud minim exercitation sint velit dolor velit exercitation duis anim minim ullamco. Et qui proident occaecat magna. Ut ea nisi deserunt dolore. Labore aliqua velit ipsum aute ex anim fugiat minim qui ad. Laborum officia aliquip sunt cillum officia irure aliquip irure labore. Ullamco quis dolore consequat culpa minim.\r\n", "registered": "2014-01-08T18:06:20-13:00", "latitude": -37.541757, "longitude": -84.638173, "tags": [ "exercitation", "irure", "fugiat", "dolore", "Lorem", "cupidatat", "officia" ], "friends": [ { "id": 0, "name": "Petty Henson" }, { "id": 1, "name": "Ora Booth" }, { "id": 2, "name": "Cummings Willis" } ], "greeting": "Hello, Guthrie Harrell! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ea12005082ab8cba1", "index": 428, "guid": "21121d01-1420-4814-90aa-955724627651", "isActive": false, "balance": "$2,099.20", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Sargent Carpenter", "gender": "male", "company": "MANTRIX", "email": "sargentcarpenter@mantrix.com", "phone": "+1 (801) 444-3446", "address": "745 Bath Avenue, Keller, Kansas, 8465", "about": "Et aliquip pariatur commodo est tempor aliquip eiusmod. Mollit amet Lorem cillum excepteur aliquip. Minim ad dolore cupidatat qui non et labore duis enim id et ipsum. Amet esse ullamco nostrud non est laborum qui fugiat commodo sint dolore laborum nulla. In deserunt occaecat voluptate sint laborum adipisicing sint amet sint nostrud veniam occaecat.\r\n", "registered": "2014-03-05T19:42:55-13:00", "latitude": -8.40988, "longitude": 111.000931, "tags": [ "qui", "est", "velit", "sint", "tempor", "proident", "ea" ], "friends": [ { "id": 0, "name": "Eaton Pena" }, { "id": 1, "name": "Mcdaniel Washington" }, { "id": 2, "name": "Bridgette Potter" } ], "greeting": "Hello, Sargent Carpenter! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eda7d03262cdd5a00", "index": 429, "guid": "a518d92d-7b7f-4202-9fe5-1d65930d4e6a", "isActive": true, "balance": "$1,149.32", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Tamera Gates", "gender": "female", "company": "ENTALITY", "email": "tameragates@entality.com", "phone": "+1 (803) 490-3084", "address": "287 Woodbine Street, Rivera, South Dakota, 9338", "about": "Occaecat non amet ea labore id eu aliqua. Fugiat velit exercitation ullamco consequat adipisicing anim. Excepteur sunt duis ut duis elit sunt voluptate minim deserunt aliquip do anim incididunt ipsum. Nisi dolore deserunt et eiusmod laboris minim aute eiusmod excepteur incididunt incididunt. Sunt enim nostrud anim minim. Fugiat ex occaecat nisi sint fugiat.\r\n", "registered": "2014-05-22T05:51:19-12:00", "latitude": 65.846237, "longitude": 141.291306, "tags": [ "esse", "sit", "id", "sint", "quis", "deserunt", "anim" ], "friends": [ { "id": 0, "name": "Vang Hopkins" }, { "id": 1, "name": "Mcconnell Gilbert" }, { "id": 2, "name": "Richardson Walls" } ], "greeting": "Hello, Tamera Gates! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ee5f6a74592f5e358", "index": 430, "guid": "585df6c8-2e9f-4f28-8d81-44676c33780a", "isActive": true, "balance": "$1,512.14", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Mathis Franklin", "gender": "male", "company": "DYMI", "email": "mathisfranklin@dymi.com", "phone": "+1 (808) 556-3437", "address": "112 Waldorf Court, Fillmore, West Virginia, 2167", "about": "Id quis duis qui elit anim do aute sunt Lorem id tempor ullamco nostrud. Consequat duis est labore aliquip dolor sint ea non exercitation ea laborum. Aute enim tempor voluptate consectetur fugiat non culpa in qui dolor aliquip. Eu pariatur sit commodo ea non fugiat id magna ea. Enim non enim quis Lorem consectetur sunt laborum est culpa sunt consectetur quis exercitation.\r\n", "registered": "2014-01-22T08:08:32-13:00", "latitude": 13.69447, "longitude": 85.725402, "tags": [ "non", "consequat", "quis", "cupidatat", "nostrud", "in", "ea" ], "friends": [ { "id": 0, "name": "Wilkerson Reed" }, { "id": 1, "name": "Lillie Odonnell" }, { "id": 2, "name": "Cristina Chang" } ], "greeting": "Hello, Mathis Franklin! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eaa4acc15f7b13d70", "index": 431, "guid": "cc0a7b5f-a633-46bd-944f-ae9e8675c575", "isActive": false, "balance": "$1,774.00", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Benjamin Snyder", "gender": "male", "company": "GLASSTEP", "email": "benjaminsnyder@glasstep.com", "phone": "+1 (867) 497-2575", "address": "302 Osborn Street, Marenisco, Texas, 7347", "about": "Tempor consequat aliqua tempor aliqua velit eiusmod reprehenderit nulla Lorem quis ipsum. Non pariatur consequat eu anim exercitation aute dolore consequat enim ut voluptate sint. Do deserunt quis aliqua id ad magna ad pariatur. In in in reprehenderit eiusmod officia dolore magna consequat eu aliqua cupidatat ullamco do. Ea consectetur aliquip esse pariatur consectetur dolore veniam irure sint voluptate officia aliquip aute non. Nisi tempor incididunt dolore ullamco nostrud non labore. Incididunt veniam consectetur pariatur consectetur exercitation.\r\n", "registered": "2014-02-13T23:52:44-13:00", "latitude": 26.038133, "longitude": 106.666182, "tags": [ "laborum", "ea", "aliquip", "consectetur", "esse", "labore", "nulla" ], "friends": [ { "id": 0, "name": "Patton Elliott" }, { "id": 1, "name": "Michael Neal" }, { "id": 2, "name": "Rojas Boone" } ], "greeting": "Hello, Benjamin Snyder! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ef7c40dad8c3002f7", "index": 432, "guid": "a6bdf650-101d-45e7-bdd0-f4f85f47d34b", "isActive": false, "balance": "$1,179.76", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Parrish Valencia", "gender": "male", "company": "SYNKGEN", "email": "parrishvalencia@synkgen.com", "phone": "+1 (937) 485-2447", "address": "457 Will Place, Stewartville, Oregon, 4772", "about": "Cillum sunt pariatur et occaecat eu culpa aute. Culpa ipsum enim cupidatat duis non reprehenderit. Anim est proident velit laborum deserunt elit cupidatat exercitation dolore eiusmod cillum ea consequat esse.\r\n", "registered": "2014-08-20T02:51:17-12:00", "latitude": -75.590809, "longitude": 162.905415, "tags": [ "eiusmod", "ullamco", "id", "dolore", "id", "proident", "tempor" ], "friends": [ { "id": 0, "name": "Buck Robinson" }, { "id": 1, "name": "Meyers Macdonald" }, { "id": 2, "name": "Brooks Santiago" } ], "greeting": "Hello, Parrish Valencia! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ee34c7a4d97f40e17", "index": 433, "guid": "efad1337-465f-4e2a-9b0b-0f5bcd6ade2e", "isActive": true, "balance": "$1,154.33", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Anthony Bartlett", "gender": "male", "company": "BIOLIVE", "email": "anthonybartlett@biolive.com", "phone": "+1 (804) 532-2648", "address": "772 Strong Place, Greer, Nevada, 7407", "about": "Fugiat nostrud magna reprehenderit quis culpa ipsum consequat ullamco elit non proident in ad sunt. Ea ex ad dolor eiusmod. Anim minim voluptate ea eu laboris aliqua elit labore culpa exercitation magna. Ut et reprehenderit do fugiat aliqua elit culpa enim culpa et officia. Excepteur amet sunt mollit veniam dolore in Lorem deserunt reprehenderit. Voluptate Lorem occaecat elit irure do pariatur. Mollit in et mollit commodo esse dolor ex.\r\n", "registered": "2014-04-06T13:20:20-12:00", "latitude": 51.076857, "longitude": 39.127218, "tags": [ "in", "cupidatat", "ut", "eiusmod", "dolore", "ullamco", "dolore" ], "friends": [ { "id": 0, "name": "Minnie Weeks" }, { "id": 1, "name": "Barrett Lott" }, { "id": 2, "name": "Sheree Oconnor" } ], "greeting": "Hello, Anthony Bartlett! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ed097857e2117e528", "index": 434, "guid": "4f623553-bbcd-4e91-96b4-47a8baac8413", "isActive": false, "balance": "$3,274.33", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Best Dejesus", "gender": "male", "company": "INJOY", "email": "bestdejesus@injoy.com", "phone": "+1 (827) 474-2148", "address": "164 Vine Street, Waikele, Minnesota, 1740", "about": "Nostrud nulla dolore laborum minim consequat ipsum officia officia ipsum voluptate eu labore voluptate irure. Cupidatat aute officia labore velit ipsum occaecat officia occaecat magna et. Do et veniam sunt eiusmod commodo sunt consequat dolor sit sunt in ullamco.\r\n", "registered": "2014-04-14T07:23:45-12:00", "latitude": -83.435549, "longitude": -0.906896, "tags": [ "deserunt", "ullamco", "do", "velit", "ullamco", "non", "magna" ], "friends": [ { "id": 0, "name": "Park Cline" }, { "id": 1, "name": "Cabrera Larson" }, { "id": 2, "name": "Bird Velazquez" } ], "greeting": "Hello, Best Dejesus! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e840a1a76a7dca956", "index": 435, "guid": "db6af366-e03b-48e1-b2cd-e877644579f7", "isActive": false, "balance": "$2,536.86", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Adriana Newman", "gender": "female", "company": "PLAYCE", "email": "adriananewman@playce.com", "phone": "+1 (997) 582-2941", "address": "469 Suydam Place, Utting, Missouri, 9546", "about": "Anim id consectetur culpa dolore eu cillum aliquip. Magna officia mollit dolor do reprehenderit. Aute consequat ullamco deserunt ad culpa proident velit. Sunt commodo minim ex velit ut cillum. Elit duis voluptate qui laboris enim irure officia eu incididunt in elit.\r\n", "registered": "2014-04-08T21:29:16-12:00", "latitude": 24.919104, "longitude": -146.603637, "tags": [ "consectetur", "dolor", "amet", "nisi", "excepteur", "culpa", "ullamco" ], "friends": [ { "id": 0, "name": "Leblanc Dyer" }, { "id": 1, "name": "Weeks Blair" }, { "id": 2, "name": "Serena Keller" } ], "greeting": "Hello, Adriana Newman! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e755dcd81d7d62a9e", "index": 436, "guid": "ff94a605-e8d5-491e-908d-a5693117f49c", "isActive": false, "balance": "$3,651.73", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Hurley Hampton", "gender": "male", "company": "ZILLACON", "email": "hurleyhampton@zillacon.com", "phone": "+1 (910) 457-2182", "address": "545 Royce Street, Dubois, Rhode Island, 140", "about": "Eu deserunt fugiat ipsum irure amet. Aute aliqua tempor laborum ullamco esse cillum quis deserunt sint ea mollit. Aliquip do do voluptate excepteur eu voluptate reprehenderit cillum. Sint elit sint elit duis duis Lorem commodo ea incididunt qui velit. Sunt ad ut proident dolore esse fugiat cillum sunt duis laborum.\r\n", "registered": "2014-04-04T07:24:00-13:00", "latitude": -35.843853, "longitude": 60.41911, "tags": [ "anim", "eiusmod", "aliqua", "sit", "do", "tempor", "qui" ], "friends": [ { "id": 0, "name": "Vaughan Hernandez" }, { "id": 1, "name": "Singleton Nguyen" }, { "id": 2, "name": "Fox Ingram" } ], "greeting": "Hello, Hurley Hampton! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ecf1eeb6f54bef092", "index": 437, "guid": "3f7bc5b4-1e31-4913-8eae-7257faf58bb3", "isActive": false, "balance": "$2,710.27", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Warner Maldonado", "gender": "male", "company": "VISUALIX", "email": "warnermaldonado@visualix.com", "phone": "+1 (988) 500-2378", "address": "789 Hubbard Street, Russellville, Florida, 8190", "about": "Dolor exercitation excepteur anim culpa nisi ipsum excepteur mollit ad voluptate amet ut excepteur. Quis qui mollit sint aliqua ex id proident tempor nostrud commodo excepteur. Aliqua qui laborum amet et aliquip quis magna ipsum ut ex ea nulla deserunt ipsum. Officia fugiat sint nostrud consectetur reprehenderit labore.\r\n", "registered": "2014-04-09T11:00:56-12:00", "latitude": -6.53106, "longitude": 21.690348, "tags": [ "ex", "reprehenderit", "esse", "mollit", "laborum", "ea", "incididunt" ], "friends": [ { "id": 0, "name": "Mcguire Guthrie" }, { "id": 1, "name": "Erma Fletcher" }, { "id": 2, "name": "White Jarvis" } ], "greeting": "Hello, Warner Maldonado! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ebb8350a3dd37d4e2", "index": 438, "guid": "96dc55f2-a0fb-4abc-892e-9f2e3c5b3ed8", "isActive": false, "balance": "$1,526.82", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Aline Hinton", "gender": "female", "company": "SENMAO", "email": "alinehinton@senmao.com", "phone": "+1 (993) 412-3362", "address": "578 Lee Avenue, Kidder, North Carolina, 3524", "about": "Ex ad ut ut do laboris. Cupidatat dolor voluptate cillum sunt amet tempor velit cupidatat est. Tempor sunt sit consectetur dolor commodo id cupidatat ad fugiat exercitation sit dolor.\r\n", "registered": "2014-04-09T07:44:57-12:00", "latitude": 71.240315, "longitude": -15.304879, "tags": [ "mollit", "Lorem", "pariatur", "non", "nostrud", "nulla", "adipisicing" ], "friends": [ { "id": 0, "name": "Eddie Battle" }, { "id": 1, "name": "Judy Allen" }, { "id": 2, "name": "Gillespie Barrett" } ], "greeting": "Hello, Aline Hinton! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e9227585b743cec2a", "index": 439, "guid": "6928c896-713a-46a9-b1d0-d5c4cda33ddf", "isActive": false, "balance": "$2,293.14", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Myra Rojas", "gender": "female", "company": "QIMONK", "email": "myrarojas@qimonk.com", "phone": "+1 (831) 419-2186", "address": "175 Hopkins Street, Fidelis, New Hampshire, 864", "about": "Reprehenderit magna fugiat minim est nulla non dolore. Aute quis ex consectetur amet aliqua voluptate sit et amet eiusmod proident ad non. Consectetur est in fugiat labore enim exercitation consequat deserunt ut minim ullamco ea duis ut.\r\n", "registered": "2014-03-19T20:00:39-13:00", "latitude": -68.008911, "longitude": -55.635684, "tags": [ "elit", "adipisicing", "ea", "magna", "magna", "cillum", "ut" ], "friends": [ { "id": 0, "name": "Katie Dotson" }, { "id": 1, "name": "Hinton Spence" }, { "id": 2, "name": "Acevedo Burke" } ], "greeting": "Hello, Myra Rojas! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ec2156a4945a51f8d", "index": 440, "guid": "9c381d90-245b-422a-9166-7627066747a6", "isActive": true, "balance": "$2,969.57", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Stuart Rosario", "gender": "male", "company": "GEEKOLA", "email": "stuartrosario@geekola.com", "phone": "+1 (986) 540-3041", "address": "697 Florence Avenue, Websterville, Arkansas, 1257", "about": "Pariatur sit est ex veniam tempor et. Enim adipisicing laborum anim tempor ea est dolor. Deserunt laborum exercitation cupidatat officia occaecat enim fugiat pariatur reprehenderit aliquip laborum. Aute pariatur consectetur Lorem culpa irure cupidatat mollit in minim. Magna sit quis incididunt Lorem incididunt qui voluptate irure. Eu ullamco ad qui cupidatat enim pariatur consequat culpa nisi.\r\n", "registered": "2014-02-06T08:04:43-13:00", "latitude": -88.163763, "longitude": -74.710779, "tags": [ "deserunt", "culpa", "esse", "minim", "qui", "nulla", "qui" ], "friends": [ { "id": 0, "name": "Everett Stephenson" }, { "id": 1, "name": "Imogene Frederick" }, { "id": 2, "name": "Frederick Kirkland" } ], "greeting": "Hello, Stuart Rosario! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e2dfccaa058e8c6d6", "index": 441, "guid": "40298f9a-391b-4552-a94a-d506f506bdc2", "isActive": false, "balance": "$2,790.80", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Bush Wall", "gender": "male", "company": "TECHADE", "email": "bushwall@techade.com", "phone": "+1 (933) 516-2061", "address": "300 Pilling Street, Rockhill, Iowa, 3633", "about": "Exercitation exercitation officia dolor nostrud esse dolore ea. Consectetur velit mollit enim veniam pariatur ipsum aute cillum voluptate eiusmod. Minim quis proident irure excepteur ullamco. Officia eiusmod dolore ullamco anim et aliqua eiusmod nisi deserunt do ullamco. Quis aute velit occaecat magna culpa consequat aliquip ut in duis labore. Sit nulla anim laboris commodo pariatur qui elit tempor culpa veniam sint qui deserunt.\r\n", "registered": "2014-04-14T08:17:47-12:00", "latitude": -27.754995, "longitude": 113.274143, "tags": [ "ut", "eu", "Lorem", "esse", "nisi", "veniam", "sint" ], "friends": [ { "id": 0, "name": "Bettye Parsons" }, { "id": 1, "name": "Young Curtis" }, { "id": 2, "name": "Audra Diaz" } ], "greeting": "Hello, Bush Wall! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ee403bba5d719c033", "index": 442, "guid": "4a6c1d08-67d9-4df8-b42b-b3612703eceb", "isActive": false, "balance": "$3,487.00", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Evangeline Henderson", "gender": "female", "company": "TECHTRIX", "email": "evangelinehenderson@techtrix.com", "phone": "+1 (961) 556-2064", "address": "183 Irving Place, Elfrida, Nebraska, 3609", "about": "Dolor eu nulla aliqua Lorem ea ipsum minim dolor irure do. Excepteur minim minim do irure commodo est pariatur dolor elit in eiusmod labore esse in. Ea in tempor commodo voluptate qui magna magna in tempor ullamco. Nostrud nisi elit in do.\r\n", "registered": "2014-04-08T10:54:00-12:00", "latitude": -49.877326, "longitude": -121.984463, "tags": [ "nostrud", "do", "magna", "dolore", "pariatur", "nostrud", "ipsum" ], "friends": [ { "id": 0, "name": "Wiley Fisher" }, { "id": 1, "name": "Casandra Forbes" }, { "id": 2, "name": "Bonita Bass" } ], "greeting": "Hello, Evangeline Henderson! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e29ee1049f9041094", "index": 443, "guid": "16ac02ef-6c63-45f0-9622-913165ec2054", "isActive": true, "balance": "$3,271.16", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Denise Rowland", "gender": "female", "company": "ESSENSIA", "email": "deniserowland@essensia.com", "phone": "+1 (863) 535-3149", "address": "724 Etna Street, Aberdeen, District Of Columbia, 5349", "about": "Amet laborum consequat voluptate irure. Irure non enim voluptate do proident incididunt anim aliqua. Deserunt Lorem et consectetur laboris duis consequat nulla fugiat sit cillum veniam culpa cupidatat commodo. Ullamco exercitation veniam tempor labore nulla ipsum voluptate incididunt mollit velit esse. Ad nostrud duis nostrud ullamco aliqua anim. Tempor excepteur dolore ullamco incididunt do reprehenderit.\r\n", "registered": "2014-07-24T04:01:19-12:00", "latitude": 16.623766, "longitude": -123.749906, "tags": [ "eiusmod", "culpa", "do", "adipisicing", "nisi", "ut", "Lorem" ], "friends": [ { "id": 0, "name": "Consuelo Horn" }, { "id": 1, "name": "Arline Yates" }, { "id": 2, "name": "Perry Spears" } ], "greeting": "Hello, Denise Rowland! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eeaf1a0397161dc9c", "index": 444, "guid": "138092a7-48b3-4a41-a0ff-6cec8559995b", "isActive": false, "balance": "$2,299.17", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Yates Hester", "gender": "male", "company": "ACCEL", "email": "yateshester@accel.com", "phone": "+1 (978) 463-3946", "address": "742 Seton Place, Yogaville, New Jersey, 7873", "about": "Incididunt eu sint deserunt id anim. Incididunt Lorem aliquip quis laborum tempor esse deserunt do incididunt ex magna cupidatat ad. Aute irure voluptate anim ea eu do anim aute nostrud.\r\n", "registered": "2014-05-24T04:35:11-12:00", "latitude": -81.957658, "longitude": 16.763392, "tags": [ "cupidatat", "ea", "qui", "fugiat", "magna", "aute", "dolor" ], "friends": [ { "id": 0, "name": "Enid Fernandez" }, { "id": 1, "name": "Bartlett Sweeney" }, { "id": 2, "name": "Berger Abbott" } ], "greeting": "Hello, Yates Hester! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ef023ca6c3d1570a5", "index": 445, "guid": "10f6738c-23c3-4f6e-800b-f0185a520c65", "isActive": true, "balance": "$1,543.23", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Dunn Kane", "gender": "male", "company": "CUJO", "email": "dunnkane@cujo.com", "phone": "+1 (824) 406-3799", "address": "707 Utica Avenue, Bodega, Palau, 3283", "about": "Cupidatat est officia qui ut. Labore dolore velit pariatur ex excepteur. Proident commodo enim consequat ullamco qui occaecat commodo incididunt velit.\r\n", "registered": "2014-08-04T14:01:08-12:00", "latitude": 52.975536, "longitude": -35.305093, "tags": [ "excepteur", "aliquip", "sint", "excepteur", "est", "et", "mollit" ], "friends": [ { "id": 0, "name": "Diana Clements" }, { "id": 1, "name": "Beach Romero" }, { "id": 2, "name": "Vera Moore" } ], "greeting": "Hello, Dunn Kane! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e3ad8bc28b53dd78c", "index": 446, "guid": "c972e99b-357d-4144-a2dd-4e22003c4cea", "isActive": false, "balance": "$2,973.69", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Corine Adams", "gender": "female", "company": "BRAINCLIP", "email": "corineadams@brainclip.com", "phone": "+1 (993) 417-2611", "address": "230 Bryant Street, Caroline, Puerto Rico, 846", "about": "Velit consequat ut Lorem fugiat sint ipsum id magna qui nostrud exercitation laborum ad. Velit anim veniam in duis et incididunt incididunt. Et voluptate reprehenderit amet exercitation ut cupidatat. Minim irure minim sunt enim dolor reprehenderit. Minim magna est aliquip enim nulla veniam laborum laboris sint id dolor in officia minim. Ad elit est irure Lorem excepteur labore proident duis pariatur. Magna sunt nostrud elit pariatur anim adipisicing culpa fugiat deserunt ad.\r\n", "registered": "2014-03-30T20:18:52-13:00", "latitude": -13.308984, "longitude": -31.375402, "tags": [ "veniam", "qui", "Lorem", "consectetur", "in", "dolor", "veniam" ], "friends": [ { "id": 0, "name": "Ola Mcfadden" }, { "id": 1, "name": "Adrian Clarke" }, { "id": 2, "name": "Nielsen Church" } ], "greeting": "Hello, Corine Adams! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e0ba7d9bdf24faadf", "index": 447, "guid": "a35b9782-ce5d-4a7e-bc59-c70f99206bba", "isActive": true, "balance": "$3,991.55", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Tasha David", "gender": "female", "company": "KRAG", "email": "tashadavid@krag.com", "phone": "+1 (903) 466-2836", "address": "983 Glendale Court, Carbonville, California, 6282", "about": "Quis in nulla cillum do qui occaecat. Incididunt anim consectetur ad quis ea irure. Tempor excepteur eu occaecat sit minim proident. Ad commodo laborum velit reprehenderit deserunt ullamco veniam adipisicing deserunt.\r\n", "registered": "2014-01-01T16:12:17-13:00", "latitude": -27.722067, "longitude": -161.012757, "tags": [ "nostrud", "tempor", "elit", "commodo", "ipsum", "nisi", "non" ], "friends": [ { "id": 0, "name": "Glover Mcdonald" }, { "id": 1, "name": "Melva Lindsay" }, { "id": 2, "name": "Camacho Key" } ], "greeting": "Hello, Tasha David! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e18ed5728cd66802f", "index": 448, "guid": "128b2754-564b-4ada-97df-2c29e40cfe22", "isActive": true, "balance": "$3,183.13", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Goldie Murray", "gender": "female", "company": "MOMENTIA", "email": "goldiemurray@momentia.com", "phone": "+1 (832) 481-2459", "address": "782 Roder Avenue, Whitewater, Vermont, 6135", "about": "Enim enim velit sunt qui dolor officia mollit eiusmod ex ex do proident adipisicing. Aliquip sit culpa minim labore qui ut sit elit est elit commodo. Sint incididunt voluptate aliquip laborum tempor magna nisi. Cupidatat ea aliquip sunt et.\r\n", "registered": "2014-08-05T03:34:43-12:00", "latitude": 30.467243, "longitude": -21.225549, "tags": [ "eiusmod", "ea", "nulla", "sit", "pariatur", "non", "deserunt" ], "friends": [ { "id": 0, "name": "Pennington Phelps" }, { "id": 1, "name": "Owens Wolf" }, { "id": 2, "name": "Knox Hooper" } ], "greeting": "Hello, Goldie Murray! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ef61b9b8ac1182350", "index": 449, "guid": "3d69277a-3521-4f26-8540-3250ee803b86", "isActive": true, "balance": "$3,523.29", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Herring Mills", "gender": "male", "company": "OCTOCORE", "email": "herringmills@octocore.com", "phone": "+1 (819) 577-2649", "address": "387 Cherry Street, Eureka, Indiana, 5221", "about": "Duis aliqua quis mollit voluptate dolore officia esse sit cillum nulla elit. Ullamco proident irure nostrud quis est sint est aliquip ex laborum adipisicing ullamco incididunt sunt. Aliqua consectetur sint culpa occaecat consectetur commodo consequat eu culpa consequat cillum deserunt ut magna. Esse elit dolore esse ex amet nostrud.\r\n", "registered": "2014-06-06T21:28:56-12:00", "latitude": -4.992424, "longitude": 94.655869, "tags": [ "aliqua", "aute", "sunt", "consequat", "in", "cillum", "voluptate" ], "friends": [ { "id": 0, "name": "Justice Middleton" }, { "id": 1, "name": "House Hawkins" }, { "id": 2, "name": "Alvarado Norris" } ], "greeting": "Hello, Herring Mills! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ee64f58ef2ff75d52", "index": 450, "guid": "e017df94-0209-4ad1-be33-4d9bcf02659f", "isActive": false, "balance": "$2,435.53", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Ingram Rich", "gender": "male", "company": "ZENTHALL", "email": "ingramrich@zenthall.com", "phone": "+1 (958) 518-3736", "address": "638 Williams Court, Northchase, Illinois, 9260", "about": "Id veniam aute sit proident. Qui commodo qui do esse ullamco sint ut quis velit fugiat anim dolore voluptate elit. Aute minim ipsum tempor laboris. Elit ad cillum labore ipsum laborum.\r\n", "registered": "2014-03-28T16:55:38-13:00", "latitude": -22.739883, "longitude": 154.61702, "tags": [ "minim", "sunt", "irure", "reprehenderit", "enim", "anim", "nostrud" ], "friends": [ { "id": 0, "name": "Danielle Cervantes" }, { "id": 1, "name": "Duke Campbell" }, { "id": 2, "name": "Harrison Mcfarland" } ], "greeting": "Hello, Ingram Rich! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ef9b9440a7889c2b6", "index": 451, "guid": "f125cab0-5f39-4b5d-8812-9ba926e63d07", "isActive": false, "balance": "$3,337.64", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Wong Beach", "gender": "male", "company": "DATACATOR", "email": "wongbeach@datacator.com", "phone": "+1 (865) 411-3306", "address": "561 Otsego Street, Grimsley, South Carolina, 6856", "about": "Laborum consectetur anim est eu ad esse sit consequat eu irure minim. Amet fugiat non quis sit quis. Dolor in culpa ullamco commodo et labore exercitation reprehenderit tempor do quis tempor anim qui.\r\n", "registered": "2014-08-14T08:50:54-12:00", "latitude": 59.860041, "longitude": -27.506176, "tags": [ "est", "id", "sunt", "amet", "eu", "sit", "consectetur" ], "friends": [ { "id": 0, "name": "Della Vaughn" }, { "id": 1, "name": "Gibbs Ashley" }, { "id": 2, "name": "Bradford Chandler" } ], "greeting": "Hello, Wong Beach! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eaea900e0560831b5", "index": 452, "guid": "4d131447-76d7-4cde-a0fd-35cd56f52b13", "isActive": true, "balance": "$3,015.43", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Henderson Vaughan", "gender": "male", "company": "EARGO", "email": "hendersonvaughan@eargo.com", "phone": "+1 (861) 549-3920", "address": "304 Herkimer Street, Ronco, American Samoa, 6024", "about": "Nostrud voluptate minim laborum officia nostrud laborum. Aliquip dolore nostrud et esse occaecat deserunt eu. Aute culpa eiusmod deserunt esse et mollit.\r\n", "registered": "2014-05-02T15:03:14-12:00", "latitude": 84.480197, "longitude": 69.024591, "tags": [ "culpa", "amet", "eu", "do", "duis", "laboris", "laboris" ], "friends": [ { "id": 0, "name": "Weber Robbins" }, { "id": 1, "name": "Salazar Levine" }, { "id": 2, "name": "Louise Combs" } ], "greeting": "Hello, Henderson Vaughan! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ede4541fbfa2c1af6", "index": 453, "guid": "9f18dd28-eb00-4e69-8534-c6a3a04aea1a", "isActive": false, "balance": "$2,953.85", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Arnold Schwartz", "gender": "male", "company": "INSURON", "email": "arnoldschwartz@insuron.com", "phone": "+1 (955) 462-3097", "address": "218 Everett Avenue, Blodgett, Delaware, 7990", "about": "Est non pariatur in Lorem occaecat. Elit sint culpa amet culpa est. Elit exercitation non amet adipisicing. Excepteur aute anim ipsum sint. In nostrud elit ullamco Lorem ex officia duis voluptate dolore laboris tempor ut. Occaecat duis quis pariatur reprehenderit laboris enim aliquip aliquip proident officia aliqua veniam.\r\n", "registered": "2014-01-14T02:10:58-13:00", "latitude": 16.629049, "longitude": 4.80283, "tags": [ "esse", "eu", "consequat", "elit", "ut", "incididunt", "cillum" ], "friends": [ { "id": 0, "name": "Janna Sims" }, { "id": 1, "name": "Ford Maxwell" }, { "id": 2, "name": "Roberson Talley" } ], "greeting": "Hello, Arnold Schwartz! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e8fa18ba0b7f5d89c", "index": 454, "guid": "a7c49cd9-c992-4dbf-8ea3-b08df2909fda", "isActive": false, "balance": "$1,832.43", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Bernadine Knowles", "gender": "female", "company": "MANTRO", "email": "bernadineknowles@mantro.com", "phone": "+1 (818) 520-3602", "address": "798 Jardine Place, Delshire, Pennsylvania, 5070", "about": "Est ad magna aliqua sit magna dolore. Excepteur labore in voluptate minim irure aliqua officia. Reprehenderit exercitation excepteur dolor reprehenderit ullamco. Do dolore duis eu eu fugiat commodo ullamco esse cillum Lorem do irure ea. Excepteur occaecat pariatur ipsum eiusmod anim amet voluptate excepteur culpa.\r\n", "registered": "2014-06-15T17:03:48-12:00", "latitude": 47.325253, "longitude": 111.212811, "tags": [ "in", "ad", "in", "officia", "ea", "proident", "nisi" ], "friends": [ { "id": 0, "name": "Bradley Green" }, { "id": 1, "name": "Livingston Gutierrez" }, { "id": 2, "name": "Fay Rivers" } ], "greeting": "Hello, Bernadine Knowles! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e9294e9bb9b3c0636", "index": 455, "guid": "f12c87f2-a971-4a9b-b327-13583d1acb6c", "isActive": true, "balance": "$1,431.24", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Coffey Garner", "gender": "male", "company": "ENVIRE", "email": "coffeygarner@envire.com", "phone": "+1 (992) 485-2270", "address": "488 Arion Place, Eagletown, Georgia, 4418", "about": "Est ipsum irure ipsum irure velit. Enim do anim fugiat culpa. Cillum et aliqua eu consequat. Elit id laborum enim Lorem in sit magna excepteur amet. In cupidatat magna reprehenderit cupidatat culpa anim velit ullamco aute tempor anim.\r\n", "registered": "2014-07-30T04:31:03-12:00", "latitude": -11.340036, "longitude": -15.502479, "tags": [ "in", "aute", "et", "sunt", "id", "tempor", "magna" ], "friends": [ { "id": 0, "name": "Carissa Mann" }, { "id": 1, "name": "Ewing Harvey" }, { "id": 2, "name": "Brandie Pollard" } ], "greeting": "Hello, Coffey Garner! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eebb2dd8d996f8ef3", "index": 456, "guid": "e3ec8fff-f0ce-4974-b8ed-9ff4916e9746", "isActive": true, "balance": "$1,119.77", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Bridges Davenport", "gender": "male", "company": "RAMJOB", "email": "bridgesdavenport@ramjob.com", "phone": "+1 (973) 440-3920", "address": "713 Creamer Street, Joppa, North Dakota, 1261", "about": "Aliquip nisi culpa qui aute commodo mollit nisi anim mollit nulla ullamco ea officia. Commodo Lorem nisi fugiat aliquip magna. Duis et laborum quis aliquip ad adipisicing est ipsum. Pariatur qui incididunt consectetur nostrud amet amet laboris duis duis voluptate eiusmod reprehenderit. Qui anim ipsum culpa consequat ut id consectetur irure commodo est anim labore commodo ea. In sit incididunt veniam labore proident et officia aliquip pariatur aliqua id id.\r\n", "registered": "2014-07-21T02:47:22-12:00", "latitude": 57.3175, "longitude": -105.390989, "tags": [ "deserunt", "aute", "aute", "consequat", "eiusmod", "fugiat", "fugiat" ], "friends": [ { "id": 0, "name": "Cecelia Norton" }, { "id": 1, "name": "Finch Mendez" }, { "id": 2, "name": "Lidia George" } ], "greeting": "Hello, Bridges Davenport! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1eca70f75ea4ad18c2", "index": 457, "guid": "dab13327-52bd-4986-ac8b-488d0e3aeac8", "isActive": true, "balance": "$2,318.19", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Meredith Park", "gender": "female", "company": "ACRUEX", "email": "meredithpark@acruex.com", "phone": "+1 (830) 465-3826", "address": "564 Lawn Court, Kenvil, Louisiana, 4103", "about": "Ad ullamco amet sit enim fugiat voluptate aliquip laborum officia Lorem duis tempor et. Ea voluptate ad officia et ullamco in nulla amet in quis fugiat incididunt officia quis. Minim culpa sunt ullamco qui cupidatat minim nisi nostrud duis enim voluptate voluptate.\r\n", "registered": "2014-06-22T19:19:39-12:00", "latitude": 27.882632, "longitude": -171.966993, "tags": [ "quis", "aliqua", "mollit", "ipsum", "voluptate", "elit", "deserunt" ], "friends": [ { "id": 0, "name": "Espinoza Kerr" }, { "id": 1, "name": "Rhea Roberts" }, { "id": 2, "name": "Becky Holder" } ], "greeting": "Hello, Meredith Park! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e384440b06fee3805", "index": 458, "guid": "738df4ca-8416-4f92-aa13-41d9b3cf35b6", "isActive": false, "balance": "$3,686.28", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Stacy Rollins", "gender": "female", "company": "TALENDULA", "email": "stacyrollins@talendula.com", "phone": "+1 (896) 457-2650", "address": "686 Lynch Street, Temperanceville, Northern Mariana Islands, 1274", "about": "Id minim in aute aute nisi cillum commodo irure irure. Ipsum dolor magna veniam cupidatat non dolor. Qui pariatur et labore sit nisi reprehenderit tempor aliqua. Reprehenderit labore eiusmod consequat elit dolore nisi voluptate ex deserunt dolore.\r\n", "registered": "2014-07-28T15:32:41-12:00", "latitude": 5.788605, "longitude": -107.688499, "tags": [ "eiusmod", "dolor", "culpa", "minim", "dolor", "adipisicing", "ea" ], "friends": [ { "id": 0, "name": "Gwen Gonzalez" }, { "id": 1, "name": "Velasquez Gonzales" }, { "id": 2, "name": "Chang Dickson" } ], "greeting": "Hello, Stacy Rollins! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ecb01b2a40efadee3", "index": 459, "guid": "d374c92c-0961-4b3d-a156-421e70e05980", "isActive": true, "balance": "$1,567.53", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Carney Jordan", "gender": "male", "company": "NETBOOK", "email": "carneyjordan@netbook.com", "phone": "+1 (983) 424-2277", "address": "146 Sheffield Avenue, Kerby, Colorado, 8589", "about": "Cupidatat id irure dolor ut aliquip reprehenderit et deserunt est sit. Mollit incididunt laboris qui irure fugiat exercitation id sit eu mollit. Sit cillum exercitation magna sint sint cupidatat culpa ex tempor ad ex magna aliquip minim. Ex veniam sunt ex nostrud cupidatat pariatur Lorem consectetur irure enim commodo aliqua eiusmod.\r\n", "registered": "2014-07-15T19:56:27-12:00", "latitude": -57.373604, "longitude": -152.900909, "tags": [ "id", "do", "mollit", "aliqua", "cupidatat", "enim", "et" ], "friends": [ { "id": 0, "name": "Glenn Herman" }, { "id": 1, "name": "Cardenas Mcmahon" }, { "id": 2, "name": "Polly Frost" } ], "greeting": "Hello, Carney Jordan! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e1c25eb6dfc97f681", "index": 460, "guid": "c8ed2fa5-eadc-48a6-b2ac-ae8475beb4eb", "isActive": true, "balance": "$3,562.21", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Stefanie Dale", "gender": "female", "company": "CUBIX", "email": "stefaniedale@cubix.com", "phone": "+1 (889) 524-3454", "address": "658 Elmwood Avenue, Hiwasse, Idaho, 9982", "about": "Elit irure eiusmod duis quis velit. Quis nostrud laborum irure ullamco tempor. Anim reprehenderit laboris cillum ut cillum adipisicing eiusmod in. Fugiat adipisicing dolore qui magna duis adipisicing reprehenderit cupidatat dolor. Est duis velit ea ea ut mollit dolore ad cillum cillum. Deserunt laborum culpa enim velit ea est esse labore in.\r\n", "registered": "2014-02-25T03:15:18-13:00", "latitude": 66.018174, "longitude": -47.529948, "tags": [ "amet", "enim", "est", "excepteur", "veniam", "aliqua", "velit" ], "friends": [ { "id": 0, "name": "Fernandez Taylor" }, { "id": 1, "name": "Robles Kirby" }, { "id": 2, "name": "Bethany Hale" } ], "greeting": "Hello, Stefanie Dale! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e976fce49752a2cb6", "index": 461, "guid": "0525baf8-c438-417f-80fa-1cb5016a76cc", "isActive": false, "balance": "$1,938.48", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Elma Ballard", "gender": "female", "company": "MITROC", "email": "elmaballard@mitroc.com", "phone": "+1 (944) 413-2271", "address": "180 Commerce Street, Leming, Marshall Islands, 9275", "about": "Aliquip ipsum deserunt commodo id dolore sint esse culpa enim culpa. Sunt est ex consequat non cillum pariatur cupidatat reprehenderit et nisi Lorem occaecat qui consequat. Ad labore Lorem officia aliqua. Tempor consectetur anim aute irure veniam esse culpa pariatur ipsum et laboris nisi.\r\n", "registered": "2014-01-29T10:28:31-13:00", "latitude": 65.056148, "longitude": 90.578318, "tags": [ "dolore", "deserunt", "commodo", "veniam", "incididunt", "non", "duis" ], "friends": [ { "id": 0, "name": "Nash Daugherty" }, { "id": 1, "name": "Mann Cobb" }, { "id": 2, "name": "Sabrina Phillips" } ], "greeting": "Hello, Elma Ballard! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e79afd64222c8ae7d", "index": 462, "guid": "4da91fce-f066-4f8e-aea6-1664a4f0c4bb", "isActive": true, "balance": "$3,406.09", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Lila Savage", "gender": "female", "company": "SONGBIRD", "email": "lilasavage@songbird.com", "phone": "+1 (995) 472-2187", "address": "465 Baycliff Terrace, Eggertsville, New York, 8865", "about": "Voluptate incididunt ipsum anim ipsum fugiat esse consequat excepteur. Consectetur ad aliqua laborum adipisicing cillum aliqua ipsum fugiat. Dolore laborum sunt et incididunt. Proident labore ex aliquip excepteur commodo nulla Lorem do sit consectetur consectetur nulla eu. Esse minim eu elit irure nisi eu enim nostrud dolor eiusmod aute reprehenderit in elit. Fugiat non eu irure quis excepteur duis in elit.\r\n", "registered": "2014-08-02T18:36:35-12:00", "latitude": -42.852987, "longitude": -95.10453, "tags": [ "adipisicing", "sunt", "elit", "amet", "reprehenderit", "Lorem", "excepteur" ], "friends": [ { "id": 0, "name": "Joan Maynard" }, { "id": 1, "name": "Donaldson Colon" }, { "id": 2, "name": "Elisa Pickett" } ], "greeting": "Hello, Lila Savage! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eae0e9480ca9af029", "index": 463, "guid": "ece7f4e9-1f5a-4c7d-a54e-e4936df3d7fd", "isActive": true, "balance": "$3,345.23", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Mckay Foley", "gender": "male", "company": "INDEXIA", "email": "mckayfoley@indexia.com", "phone": "+1 (899) 534-3268", "address": "281 Howard Avenue, Weeksville, Guam, 1403", "about": "Ex voluptate consequat enim adipisicing velit do Lorem occaecat deserunt nostrud. Cillum anim ipsum eu esse ullamco dolore ipsum enim amet commodo et ut. Pariatur ut officia consectetur enim officia elit amet consequat sunt eu magna pariatur cillum.\r\n", "registered": "2014-03-08T16:18:09-13:00", "latitude": 63.275188, "longitude": 120.622054, "tags": [ "consectetur", "pariatur", "minim", "reprehenderit", "cupidatat", "sint", "magna" ], "friends": [ { "id": 0, "name": "Letitia Harding" }, { "id": 1, "name": "Sexton Ball" }, { "id": 2, "name": "Ramos Walker" } ], "greeting": "Hello, Mckay Foley! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ed170b031a7374431", "index": 464, "guid": "d251026a-66f6-4958-b2a3-b2c993f63790", "isActive": false, "balance": "$3,701.63", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Buckley Ferguson", "gender": "male", "company": "INSURESYS", "email": "buckleyferguson@insuresys.com", "phone": "+1 (805) 567-3480", "address": "919 Stockholm Street, Fulford, Virgin Islands, 9241", "about": "Magna occaecat veniam ipsum ea esse laborum nisi sunt aute ex pariatur. Sint mollit esse dolore quis reprehenderit quis. Mollit deserunt reprehenderit ad ad enim esse velit voluptate.\r\n", "registered": "2014-08-19T16:41:06-12:00", "latitude": -43.48786, "longitude": 124.296954, "tags": [ "incididunt", "duis", "fugiat", "voluptate", "aliqua", "incididunt", "do" ], "friends": [ { "id": 0, "name": "Sharpe Townsend" }, { "id": 1, "name": "Alisha Knight" }, { "id": 2, "name": "Hines Reynolds" } ], "greeting": "Hello, Buckley Ferguson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e424a7dcd82c25e00", "index": 465, "guid": "63121076-eb71-4363-b3b9-ed661bd2ba0d", "isActive": true, "balance": "$1,341.54", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Joyce Dunn", "gender": "female", "company": "LUXURIA", "email": "joycedunn@luxuria.com", "phone": "+1 (917) 535-3229", "address": "481 Euclid Avenue, Baden, Massachusetts, 6230", "about": "Lorem anim dolor cupidatat aliqua duis consectetur. Laborum nostrud pariatur laboris labore sit eiusmod incididunt voluptate dolor cillum ut magna esse. Nisi velit officia ullamco qui minim tempor velit aliqua laborum fugiat labore. Proident proident nulla quis consequat nulla consectetur in.\r\n", "registered": "2014-04-07T10:40:48-12:00", "latitude": 66.484334, "longitude": 112.112318, "tags": [ "dolore", "quis", "voluptate", "cupidatat", "proident", "non", "commodo" ], "friends": [ { "id": 0, "name": "Louisa Graham" }, { "id": 1, "name": "Butler Vincent" }, { "id": 2, "name": "Blanche Ellison" } ], "greeting": "Hello, Joyce Dunn! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e0297dae3f17af53b", "index": 466, "guid": "cb519677-a2ed-4778-be05-a718f9b500d0", "isActive": true, "balance": "$2,134.94", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Garrett Armstrong", "gender": "male", "company": "APEXIA", "email": "garrettarmstrong@apexia.com", "phone": "+1 (871) 483-3471", "address": "716 Bushwick Place, Retsof, Utah, 4498", "about": "Consectetur exercitation sit enim pariatur ullamco proident laborum cupidatat ullamco ad eiusmod ullamco exercitation. Ullamco laborum tempor pariatur esse dolor. Id irure ullamco culpa et exercitation sint voluptate in.\r\n", "registered": "2014-09-23T07:41:22-12:00", "latitude": 9.881025, "longitude": 74.83463, "tags": [ "amet", "proident", "duis", "commodo", "non", "do", "sit" ], "friends": [ { "id": 0, "name": "Beasley Reid" }, { "id": 1, "name": "Cassie Sears" }, { "id": 2, "name": "Shepherd Anthony" } ], "greeting": "Hello, Garrett Armstrong! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e66d235b032670d0b", "index": 467, "guid": "7f8e450e-7dab-4240-80fb-d78ce52c2afc", "isActive": false, "balance": "$2,386.72", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Sherry Myers", "gender": "female", "company": "ZENOLUX", "email": "sherrymyers@zenolux.com", "phone": "+1 (896) 436-2084", "address": "453 Brooklyn Road, Belgreen, Montana, 9384", "about": "Irure labore elit officia sit voluptate aliquip. Veniam qui deserunt consectetur fugiat. Sint consectetur excepteur eiusmod cillum quis ut ex pariatur nulla ea incididunt do cupidatat. In fugiat veniam ad nostrud nulla anim veniam. Exercitation dolore amet deserunt cillum ea.\r\n", "registered": "2014-03-17T06:04:49-13:00", "latitude": 20.049613, "longitude": 77.136045, "tags": [ "tempor", "sit", "excepteur", "pariatur", "veniam", "voluptate", "voluptate" ], "friends": [ { "id": 0, "name": "Carson Raymond" }, { "id": 1, "name": "Peck Golden" }, { "id": 2, "name": "Manning Roy" } ], "greeting": "Hello, Sherry Myers! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e83147304a5e12f69", "index": 468, "guid": "6f94eac2-38be-431b-9619-39cff4287c3c", "isActive": true, "balance": "$1,519.19", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Pruitt Clemons", "gender": "male", "company": "ENAUT", "email": "pruittclemons@enaut.com", "phone": "+1 (820) 434-2600", "address": "266 Vista Place, Fairacres, Wisconsin, 4054", "about": "Sunt consequat esse est Lorem amet ullamco officia quis ipsum do aliqua culpa eu. Commodo elit consequat irure mollit id dolor aliquip velit ad aute veniam. Incididunt labore nostrud cupidatat aliqua consequat aliquip enim et nisi aliquip nulla ipsum. Ullamco officia labore nisi id aliquip adipisicing.\r\n", "registered": "2014-08-15T21:20:40-12:00", "latitude": -59.416766, "longitude": 159.030475, "tags": [ "id", "duis", "pariatur", "pariatur", "ad", "nostrud", "elit" ], "friends": [ { "id": 0, "name": "Workman England" }, { "id": 1, "name": "Bauer Reyes" }, { "id": 2, "name": "Frankie Shields" } ], "greeting": "Hello, Pruitt Clemons! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ec424f5d5c037936e", "index": 469, "guid": "bab1f2aa-cbba-4fc6-b9d7-e0010a9a158f", "isActive": false, "balance": "$2,233.49", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Bryan Tillman", "gender": "male", "company": "HAWKSTER", "email": "bryantillman@hawkster.com", "phone": "+1 (885) 542-3901", "address": "706 Karweg Place, Trona, Maine, 1350", "about": "Laboris duis labore do veniam. Officia labore adipisicing excepteur exercitation elit id aute non voluptate proident in laborum tempor officia. In est eiusmod officia do adipisicing. Dolor reprehenderit ullamco laboris nostrud non occaecat pariatur enim sit cillum voluptate. Ut qui tempor qui culpa dolore laboris do incididunt.\r\n", "registered": "2014-06-06T10:49:34-12:00", "latitude": -85.720563, "longitude": 25.845782, "tags": [ "est", "deserunt", "ullamco", "pariatur", "dolore", "tempor", "cillum" ], "friends": [ { "id": 0, "name": "Burns Valentine" }, { "id": 1, "name": "Kerry Edwards" }, { "id": 2, "name": "Hurst Shelton" } ], "greeting": "Hello, Bryan Tillman! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e4a38617946a0808e", "index": 470, "guid": "46756a8d-819e-4545-b10b-ee259576d5f4", "isActive": true, "balance": "$1,690.33", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Blanchard Soto", "gender": "male", "company": "GROK", "email": "blanchardsoto@grok.com", "phone": "+1 (941) 545-2852", "address": "967 Melba Court, Derwood, Virginia, 1035", "about": "In aliqua anim nulla culpa ex. Consectetur cillum tempor reprehenderit officia exercitation nulla nisi dolore exercitation consectetur cupidatat deserunt. Culpa ea excepteur eu nostrud ex ipsum aliquip ullamco culpa est tempor nisi. Voluptate tempor ipsum aliquip reprehenderit consectetur non mollit exercitation do elit. Id reprehenderit velit excepteur sunt labore nulla ipsum irure cillum consequat. Velit sint ea nostrud et esse reprehenderit enim irure consectetur.\r\n", "registered": "2014-08-20T03:17:14-12:00", "latitude": -15.179706, "longitude": 65.944416, "tags": [ "Lorem", "do", "amet", "reprehenderit", "voluptate", "id", "anim" ], "friends": [ { "id": 0, "name": "Cash Mccall" }, { "id": 1, "name": "Gallagher Strong" }, { "id": 2, "name": "Rich Brown" } ], "greeting": "Hello, Blanchard Soto! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e39ae4d6e0e326e34", "index": 471, "guid": "2d69d163-dbc7-4f71-b938-7ebbf369bb92", "isActive": false, "balance": "$2,156.49", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Violet Gregory", "gender": "female", "company": "INQUALA", "email": "violetgregory@inquala.com", "phone": "+1 (801) 417-3073", "address": "758 Oliver Street, Chesapeake, Kentucky, 1186", "about": "Sunt sunt duis in consequat adipisicing laborum labore laboris. Ullamco sit excepteur ut esse commodo mollit sunt eu in consectetur id minim tempor dolor. Sit est nostrud nulla culpa. Magna nisi irure velit deserunt nulla nostrud anim dolor incididunt. Velit eiusmod id nisi excepteur dolor voluptate consectetur reprehenderit cupidatat in ipsum. Officia adipisicing cillum nostrud ullamco proident.\r\n", "registered": "2014-04-19T00:19:19-12:00", "latitude": 38.470668, "longitude": 115.29631, "tags": [ "ullamco", "reprehenderit", "aliqua", "mollit", "amet", "exercitation", "sunt" ], "friends": [ { "id": 0, "name": "Joyce Mccoy" }, { "id": 1, "name": "Wade Mcconnell" }, { "id": 2, "name": "Willa Collier" } ], "greeting": "Hello, Violet Gregory! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e20b33654e2ade9c7", "index": 472, "guid": "3bbcce39-99bd-44d1-aa08-5ea3e34c2535", "isActive": false, "balance": "$2,530.89", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Shauna Baxter", "gender": "female", "company": "INTRAWEAR", "email": "shaunabaxter@intrawear.com", "phone": "+1 (842) 521-2837", "address": "228 Central Avenue, Darlington, Connecticut, 2427", "about": "Commodo veniam sunt magna ullamco ad laborum. Laboris duis fugiat cillum enim ipsum. Esse aliquip velit nisi irure duis magna aute irure ullamco. Sit id in cillum anim. Dolor aliqua in fugiat ex et velit officia labore tempor nulla officia commodo in veniam. Adipisicing pariatur aliqua duis reprehenderit culpa anim cillum sit mollit esse.\r\n", "registered": "2014-06-06T10:03:10-12:00", "latitude": 45.325674, "longitude": 113.54424, "tags": [ "voluptate", "eu", "amet", "ut", "magna", "dolore", "veniam" ], "friends": [ { "id": 0, "name": "Kitty Blake" }, { "id": 1, "name": "Nanette Lancaster" }, { "id": 2, "name": "Elvira Donovan" } ], "greeting": "Hello, Shauna Baxter! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e68631a972c9dd4b8", "index": 473, "guid": "d6398e2f-1b31-4631-9f3f-87d944772cb9", "isActive": true, "balance": "$2,953.51", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Tonia Jenkins", "gender": "female", "company": "WAAB", "email": "toniajenkins@waab.com", "phone": "+1 (823) 481-2759", "address": "784 Moore Street, Boykin, Mississippi, 8995", "about": "Ullamco velit aute quis sint nostrud consectetur sunt. Sunt elit ea aliqua culpa adipisicing qui id ullamco ex consectetur cillum. Lorem officia consectetur commodo dolor sit excepteur cillum. Esse dolore labore voluptate esse. Adipisicing labore excepteur aliqua dolore tempor consectetur sit ut consequat cillum. Cupidatat fugiat laborum duis nulla anim incididunt laboris.\r\n", "registered": "2014-05-08T21:17:38-12:00", "latitude": -9.033325, "longitude": 29.73603, "tags": [ "sunt", "do", "amet", "commodo", "aliquip", "voluptate", "qui" ], "friends": [ { "id": 0, "name": "Mendez Pate" }, { "id": 1, "name": "Eliza Velez" }, { "id": 2, "name": "Contreras Higgins" } ], "greeting": "Hello, Tonia Jenkins! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ec94656eb5bc3610b", "index": 474, "guid": "8381b663-833a-49c1-96ca-97086285ca20", "isActive": false, "balance": "$3,348.07", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Shelly Berry", "gender": "female", "company": "DARWINIUM", "email": "shellyberry@darwinium.com", "phone": "+1 (898) 409-2386", "address": "281 Lott Place, Sunnyside, Washington, 4566", "about": "Cupidatat deserunt laboris incididunt ea incididunt. Sunt in laborum culpa in mollit magna non ea. Fugiat tempor magna anim quis ad exercitation eiusmod reprehenderit nulla veniam veniam. Minim nulla tempor irure nulla adipisicing consectetur. Nisi laborum minim officia quis exercitation labore magna enim nulla magna labore duis. Nulla tempor Lorem voluptate irure do ipsum excepteur sit voluptate amet incididunt dolore.\r\n", "registered": "2014-02-18T16:11:48-13:00", "latitude": 23.859151, "longitude": -30.575973, "tags": [ "exercitation", "eiusmod", "et", "tempor", "ut", "adipisicing", "minim" ], "friends": [ { "id": 0, "name": "Puckett Peterson" }, { "id": 1, "name": "Mccall Solomon" }, { "id": 2, "name": "Stafford Nixon" } ], "greeting": "Hello, Shelly Berry! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e365631f0fc7a8da9", "index": 475, "guid": "9d169016-c7be-4b4d-9d0a-62993660fec5", "isActive": true, "balance": "$3,999.49", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Allison Fulton", "gender": "male", "company": "POLARAX", "email": "allisonfulton@polarax.com", "phone": "+1 (802) 443-2796", "address": "720 Cumberland Street, Kansas, Tennessee, 6923", "about": "Id laborum proident deserunt officia enim ut do labore. In officia officia adipisicing ut et anim do dolore esse non officia nulla tempor culpa. Deserunt duis anim aliqua enim eiusmod irure sint adipisicing incididunt labore labore occaecat. Aliquip veniam culpa culpa sint culpa ipsum deserunt proident irure consectetur deserunt fugiat. Ad ipsum Lorem cillum non non esse laboris. Irure pariatur amet minim pariatur irure dolor. Eiusmod reprehenderit ad et ex exercitation quis dolor.\r\n", "registered": "2014-06-20T15:24:04-12:00", "latitude": 59.968837, "longitude": -93.493792, "tags": [ "sit", "anim", "ad", "Lorem", "magna", "qui", "ut" ], "friends": [ { "id": 0, "name": "Keller Roberson" }, { "id": 1, "name": "Holmes Stuart" }, { "id": 2, "name": "Carly Chambers" } ], "greeting": "Hello, Allison Fulton! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e91a3e8646c9bef38", "index": 476, "guid": "fa71ddc1-ff22-4115-b104-adc39e8ebf63", "isActive": true, "balance": "$2,356.49", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Lillian Ellis", "gender": "female", "company": "ISOTRACK", "email": "lillianellis@isotrack.com", "phone": "+1 (838) 510-3748", "address": "499 Seabring Street, Gerton, Alabama, 6752", "about": "Labore ad enim duis veniam ea magna. Reprehenderit dolore quis Lorem eu. Tempor incididunt qui excepteur labore sint esse consectetur est est consequat cillum mollit. Non mollit sint consectetur ullamco ut anim ut consectetur elit. Minim ad officia ad ipsum aliquip. Aliquip deserunt quis incididunt dolore sunt deserunt deserunt et adipisicing occaecat veniam ex.\r\n", "registered": "2014-06-07T09:44:01-12:00", "latitude": 3.868567, "longitude": -90.281514, "tags": [ "sunt", "ullamco", "id", "id", "non", "aliqua", "esse" ], "friends": [ { "id": 0, "name": "Britt Lambert" }, { "id": 1, "name": "Acosta Guerra" }, { "id": 2, "name": "Lawanda Stevens" } ], "greeting": "Hello, Lillian Ellis! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e5e788c186161cba7", "index": 477, "guid": "cf23828a-9b35-487e-9591-aa540dfdc2da", "isActive": true, "balance": "$2,566.03", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Murray Hunt", "gender": "male", "company": "CEPRENE", "email": "murrayhunt@ceprene.com", "phone": "+1 (939) 478-2957", "address": "684 Emerson Place, Chamberino, Ohio, 3444", "about": "Labore laborum reprehenderit tempor exercitation consectetur irure amet et nisi. Id ex laboris commodo adipisicing eu esse Lorem. Reprehenderit eu eu proident id pariatur.\r\n", "registered": "2014-07-07T12:24:12-12:00", "latitude": -9.684157, "longitude": 23.014829, "tags": [ "Lorem", "consectetur", "consectetur", "nisi", "elit", "ex", "sint" ], "friends": [ { "id": 0, "name": "Cross Guzman" }, { "id": 1, "name": "Noel Hickman" }, { "id": 2, "name": "Martin Cooley" } ], "greeting": "Hello, Murray Hunt! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ec7bf49fe1ce6daee", "index": 478, "guid": "d0532544-489d-418f-99fa-57cb91f5e5a9", "isActive": true, "balance": "$2,318.99", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Dorsey Ortiz", "gender": "male", "company": "ORBEAN", "email": "dorseyortiz@orbean.com", "phone": "+1 (837) 451-3992", "address": "662 Corbin Place, Dyckesville, Hawaii, 4366", "about": "Lorem tempor ut sit occaecat deserunt eiusmod. Dolor tempor cupidatat anim irure sunt magna sunt incididunt. Fugiat tempor proident nostrud ad fugiat dolore culpa voluptate ea elit ad. Duis consectetur consectetur reprehenderit do labore laboris pariatur. Ex ex exercitation non ullamco dolor eiusmod.\r\n", "registered": "2014-01-18T02:30:20-13:00", "latitude": -9.567766, "longitude": -145.563759, "tags": [ "proident", "ea", "veniam", "occaecat", "sunt", "proident", "aliquip" ], "friends": [ { "id": 0, "name": "Natasha French" }, { "id": 1, "name": "Angelique Carver" }, { "id": 2, "name": "Schultz Hughes" } ], "greeting": "Hello, Dorsey Ortiz! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e1bbfecc0a51cc44a", "index": 479, "guid": "95546e4d-f1b8-49a2-9bd9-d1336809e53b", "isActive": false, "balance": "$2,237.36", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Hernandez Acosta", "gender": "male", "company": "MICROLUXE", "email": "hernandezacosta@microluxe.com", "phone": "+1 (851) 520-2582", "address": "447 Lorimer Street, Jacumba, New Mexico, 7879", "about": "Ullamco eu excepteur cupidatat consequat laborum esse pariatur ut pariatur quis laborum. Sint sit occaecat Lorem enim nulla elit quis esse deserunt et reprehenderit. Laborum sunt ad et esse ipsum officia non ipsum eu eu quis voluptate.\r\n", "registered": "2014-08-01T14:11:36-12:00", "latitude": -84.30734, "longitude": 160.62084, "tags": [ "eiusmod", "nisi", "fugiat", "ullamco", "amet", "tempor", "minim" ], "friends": [ { "id": 0, "name": "Deborah Christian" }, { "id": 1, "name": "Dominique Powers" }, { "id": 2, "name": "Underwood Oliver" } ], "greeting": "Hello, Hernandez Acosta! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e482889905908eb56", "index": 480, "guid": "981354d3-e716-4905-a784-8013f24741e9", "isActive": true, "balance": "$1,847.67", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Wise Douglas", "gender": "male", "company": "GINKOGENE", "email": "wisedouglas@ginkogene.com", "phone": "+1 (911) 539-2944", "address": "587 Grafton Street, Kapowsin, Maryland, 6606", "about": "Nisi non veniam laboris officia aute nisi ut esse sint veniam. Magna in duis enim pariatur ex. Dolor duis eiusmod commodo deserunt minim cupidatat elit aute ullamco voluptate ea ex. Ullamco ut irure cillum qui fugiat qui tempor quis pariatur veniam dolor ex.\r\n", "registered": "2014-07-13T22:20:49-12:00", "latitude": -9.913283, "longitude": -126.194538, "tags": [ "ullamco", "cillum", "do", "ut", "veniam", "dolore", "ex" ], "friends": [ { "id": 0, "name": "Melisa Brewer" }, { "id": 1, "name": "Kimberly Walsh" }, { "id": 2, "name": "Jessie Herring" } ], "greeting": "Hello, Wise Douglas! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e9e76e5aa882fb237", "index": 481, "guid": "e85b6e3c-196c-4cee-805f-0c578c6f5439", "isActive": false, "balance": "$1,177.40", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Gilbert Chaney", "gender": "male", "company": "NIMON", "email": "gilbertchaney@nimon.com", "phone": "+1 (910) 500-2401", "address": "247 Chestnut Avenue, Rockbridge, Alaska, 757", "about": "Proident in do occaecat commodo laboris ex esse magna reprehenderit. Culpa et nostrud culpa incididunt veniam eiusmod cillum eu esse aliquip nulla ad nulla aliqua. Sint esse ad in aliqua.\r\n", "registered": "2014-06-16T05:30:30-12:00", "latitude": -65.444763, "longitude": 129.505075, "tags": [ "qui", "nulla", "est", "amet", "et", "sint", "ex" ], "friends": [ { "id": 0, "name": "Dollie Hunter" }, { "id": 1, "name": "Margo Cantrell" }, { "id": 2, "name": "Roberts Monroe" } ], "greeting": "Hello, Gilbert Chaney! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ed957fd71f0061067", "index": 482, "guid": "9b8cf655-94e1-41fd-b74b-039d2ac3acc8", "isActive": true, "balance": "$3,849.57", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Lupe Harper", "gender": "female", "company": "MAXIMIND", "email": "lupeharper@maximind.com", "phone": "+1 (851) 580-2487", "address": "661 Thomas Street, Riverton, Arizona, 3163", "about": "Elit minim veniam cupidatat eu amet laboris amet ad. Sunt nostrud proident elit aute nostrud exercitation magna velit aute quis. Nisi dolor non incididunt minim in et veniam enim exercitation quis Lorem velit consequat. Do velit sunt in proident deserunt sunt. Veniam consequat ullamco cillum ullamco velit ipsum in laborum. Culpa velit in tempor cupidatat magna. Minim dolor Lorem culpa dolore sunt minim quis consectetur velit nisi.\r\n", "registered": "2014-04-23T10:57:16-12:00", "latitude": -40.400109, "longitude": -137.092546, "tags": [ "veniam", "occaecat", "cupidatat", "pariatur", "proident", "excepteur", "nostrud" ], "friends": [ { "id": 0, "name": "Goodwin Stout" }, { "id": 1, "name": "Sharp Glenn" }, { "id": 2, "name": "Sheri Goff" } ], "greeting": "Hello, Lupe Harper! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eddceff93465e3f35", "index": 483, "guid": "df10d14b-0079-43bb-a741-93adc362414b", "isActive": false, "balance": "$2,731.32", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Perez Cannon", "gender": "male", "company": "ENTROPIX", "email": "perezcannon@entropix.com", "phone": "+1 (833) 410-2230", "address": "913 Forrest Street, Newkirk, Federated States Of Micronesia, 9518", "about": "Non ipsum consectetur ipsum laborum elit adipisicing eiusmod. Id mollit aliqua eiusmod ex nisi id cupidatat fugiat duis cillum minim sint. Aute enim consequat aute magna sit cillum consectetur sunt non. Cillum cillum aliquip ex id in. Ex exercitation cupidatat nulla veniam nisi fugiat ut aliqua dolore elit quis aute dolor. Anim esse duis veniam deserunt consectetur pariatur in exercitation aliquip aute nisi occaecat duis in. Velit qui adipisicing aliqua laboris nulla ad voluptate culpa aliqua occaecat deserunt dolore commodo ipsum.\r\n", "registered": "2014-08-13T13:35:27-12:00", "latitude": 9.306622, "longitude": -39.265679, "tags": [ "enim", "enim", "mollit", "sit", "enim", "Lorem", "nulla" ], "friends": [ { "id": 0, "name": "Strickland Buchanan" }, { "id": 1, "name": "Hampton Trujillo" }, { "id": 2, "name": "Joann Pittman" } ], "greeting": "Hello, Perez Cannon! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eb30e183d2aa1e5fd", "index": 484, "guid": "d5af863f-0343-4499-9800-d02a27363247", "isActive": true, "balance": "$2,211.18", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Colleen Crane", "gender": "female", "company": "FLUM", "email": "colleencrane@flum.com", "phone": "+1 (982) 539-3040", "address": "161 Loring Avenue, Deseret, Oklahoma, 9121", "about": "Consequat tempor exercitation dolore excepteur laborum proident pariatur. Commodo anim nulla culpa enim deserunt. Nulla ad culpa ad culpa. Ad labore Lorem est officia ad eiusmod Lorem. Consequat officia dolor velit occaecat amet culpa.\r\n", "registered": "2014-07-19T02:51:27-12:00", "latitude": -41.051392, "longitude": -133.600612, "tags": [ "adipisicing", "id", "officia", "culpa", "irure", "consectetur", "voluptate" ], "friends": [ { "id": 0, "name": "Albert Pruitt" }, { "id": 1, "name": "Flores Holmes" }, { "id": 2, "name": "Davenport Bryant" } ], "greeting": "Hello, Colleen Crane! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e337742c6ab9b17a0", "index": 485, "guid": "aeba4d92-0aee-4de8-958c-2b892023425f", "isActive": true, "balance": "$2,194.81", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Dotson Cummings", "gender": "male", "company": "KNEEDLES", "email": "dotsoncummings@kneedles.com", "phone": "+1 (958) 538-3297", "address": "994 Debevoise Street, Matthews, Michigan, 5884", "about": "Commodo laborum dolor irure quis pariatur veniam dolore amet consequat laboris id ad aliqua. Culpa quis deserunt velit ipsum voluptate occaecat ipsum voluptate magna. Cillum eu magna officia minim enim incididunt ullamco deserunt sunt.\r\n", "registered": "2014-07-17T14:23:13-12:00", "latitude": 73.893331, "longitude": 145.985754, "tags": [ "id", "id", "nostrud", "consequat", "in", "ipsum", "est" ], "friends": [ { "id": 0, "name": "Leila Gilmore" }, { "id": 1, "name": "Miriam Powell" }, { "id": 2, "name": "Wendi Silva" } ], "greeting": "Hello, Dotson Cummings! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e3feed379467450c9", "index": 486, "guid": "39b7d31a-a197-4477-996d-acc41821efd3", "isActive": false, "balance": "$2,302.28", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Kim Wong", "gender": "male", "company": "UPLINX", "email": "kimwong@uplinx.com", "phone": "+1 (890) 407-3932", "address": "985 Dank Court, Brecon, Kansas, 1667", "about": "Anim aliqua ex deserunt ullamco laborum sint qui aliquip consectetur duis deserunt qui. Cupidatat exercitation ipsum deserunt cillum est. Consectetur occaecat enim proident non incididunt tempor anim dolor qui dolore in occaecat deserunt quis. Enim voluptate voluptate irure et pariatur commodo ex incididunt ex aute aliqua. Nisi culpa sunt ea ullamco ipsum ad ullamco incididunt.\r\n", "registered": "2014-05-18T23:42:26-12:00", "latitude": 87.346843, "longitude": 108.361192, "tags": [ "reprehenderit", "nostrud", "cillum", "sit", "nisi", "nisi", "minim" ], "friends": [ { "id": 0, "name": "Williamson Hood" }, { "id": 1, "name": "Patrick Herrera" }, { "id": 2, "name": "Nettie Hanson" } ], "greeting": "Hello, Kim Wong! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ef5a39ee1cbd164e1", "index": 487, "guid": "70f5ced0-307b-48ef-abc9-430df70aaa62", "isActive": false, "balance": "$3,898.95", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Berg Hammond", "gender": "male", "company": "EZENTIA", "email": "berghammond@ezentia.com", "phone": "+1 (809) 528-3722", "address": "373 Harman Street, Rossmore, South Dakota, 2074", "about": "Aute laborum mollit ut duis proident aliquip ea. Duis aute aliquip dolore culpa fugiat sint eiusmod. Esse tempor reprehenderit deserunt nostrud dolor. Et velit adipisicing qui velit ut qui officia consectetur cupidatat officia cupidatat nisi. In qui pariatur magna veniam duis velit duis exercitation quis incididunt ipsum est ad aute. Ut nulla nisi excepteur proident amet minim.\r\n", "registered": "2014-03-15T06:08:15-13:00", "latitude": -44.553069, "longitude": -1.313117, "tags": [ "minim", "dolore", "minim", "duis", "ipsum", "pariatur", "sunt" ], "friends": [ { "id": 0, "name": "Meadows Burnett" }, { "id": 1, "name": "Downs Barr" }, { "id": 2, "name": "Dodson Bradley" } ], "greeting": "Hello, Berg Hammond! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e4146ad4a9df10a3b", "index": 488, "guid": "26d17372-a2b8-4fb9-88bc-67d6bbf3239d", "isActive": false, "balance": "$2,121.36", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Valeria Howard", "gender": "female", "company": "ZENTIA", "email": "valeriahoward@zentia.com", "phone": "+1 (894) 521-2320", "address": "144 Homecrest Avenue, Gwynn, West Virginia, 6388", "about": "Nisi enim qui exercitation irure est do sint non labore nisi. Eu in officia velit laborum aute sint officia fugiat sit amet. Cillum est adipisicing nostrud adipisicing occaecat fugiat. Nulla nostrud adipisicing aute ipsum sunt minim veniam veniam. Minim aliqua deserunt commodo voluptate sunt adipisicing laborum voluptate ut nostrud nisi. Anim eiusmod ex tempor deserunt deserunt.\r\n", "registered": "2014-03-31T17:41:59-13:00", "latitude": 8.628979, "longitude": -43.24106, "tags": [ "occaecat", "in", "in", "officia", "labore", "culpa", "dolor" ], "friends": [ { "id": 0, "name": "Mabel Webster" }, { "id": 1, "name": "Karla Weber" }, { "id": 2, "name": "Brock Faulkner" } ], "greeting": "Hello, Valeria Howard! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e2a5f2be7d2b72917", "index": 489, "guid": "cb398c36-1518-4044-8dce-08cf9c910475", "isActive": true, "balance": "$1,995.13", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Karyn Richardson", "gender": "female", "company": "BUZZMAKER", "email": "karynrichardson@buzzmaker.com", "phone": "+1 (913) 513-3266", "address": "853 Noll Street, Westmoreland, Texas, 9338", "about": "Magna non aliquip aute pariatur ut deserunt occaecat reprehenderit amet enim. Aliquip enim do proident deserunt qui dolore officia. Enim laborum do esse occaecat nostrud culpa occaecat quis labore officia. Do eiusmod eiusmod adipisicing cillum reprehenderit consequat occaecat fugiat.\r\n", "registered": "2014-01-30T20:47:48-13:00", "latitude": 80.733124, "longitude": -79.324747, "tags": [ "dolore", "esse", "veniam", "exercitation", "ad", "mollit", "mollit" ], "friends": [ { "id": 0, "name": "Salas Hess" }, { "id": 1, "name": "Flynn Olson" }, { "id": 2, "name": "Porter Ferrell" } ], "greeting": "Hello, Karyn Richardson! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ebe1b26101dda4fa4", "index": 490, "guid": "e345080b-2c45-4c64-ae75-623bfccc0cbd", "isActive": true, "balance": "$2,396.95", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Small Blevins", "gender": "male", "company": "IMAGEFLOW", "email": "smallblevins@imageflow.com", "phone": "+1 (804) 533-3475", "address": "898 Jaffray Street, Dragoon, Oregon, 6153", "about": "Mollit aliqua enim anim laborum voluptate. Quis dolor Lorem aliquip fugiat dolore aute ad ea proident aute pariatur eiusmod. Irure anim sit in duis aute laboris proident. Non aute ea consectetur quis aliqua laboris nulla cillum. Consequat dolore id incididunt consectetur duis dolore nulla do velit proident. Eu sint eu ea tempor aliqua eu mollit fugiat sit magna anim.\r\n", "registered": "2014-01-14T02:59:34-13:00", "latitude": 13.887977, "longitude": -91.018211, "tags": [ "irure", "ex", "enim", "incididunt", "labore", "esse", "eiusmod" ], "friends": [ { "id": 0, "name": "Angela Andrews" }, { "id": 1, "name": "Ballard Campos" }, { "id": 2, "name": "Joanna Dean" } ], "greeting": "Hello, Small Blevins! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e2f13740a4c0fe301", "index": 491, "guid": "0bd473fa-bf4f-4c71-84a6-cb209fdb5593", "isActive": false, "balance": "$3,941.72", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Gina Cotton", "gender": "female", "company": "FUTURIZE", "email": "ginacotton@futurize.com", "phone": "+1 (999) 407-2030", "address": "686 Meserole Street, Woodburn, Nevada, 7663", "about": "Eu enim anim est velit sit proident aliquip consequat commodo voluptate dolore tempor esse qui. Pariatur minim dolore labore nisi nulla duis non irure labore duis cillum aliquip. Magna eu dolor esse eiusmod id minim ad officia.\r\n", "registered": "2014-04-16T22:55:19-12:00", "latitude": -78.831562, "longitude": 111.249362, "tags": [ "dolor", "occaecat", "deserunt", "fugiat", "id", "excepteur", "nulla" ], "friends": [ { "id": 0, "name": "Socorro Winters" }, { "id": 1, "name": "Kline Payne" }, { "id": 2, "name": "Soto Puckett" } ], "greeting": "Hello, Gina Cotton! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ec7cd2f6eb3f941d8", "index": 492, "guid": "c65c1b48-10e4-4d42-8033-276c86b104c8", "isActive": true, "balance": "$3,413.27", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Adeline Finley", "gender": "female", "company": "MAKINGWAY", "email": "adelinefinley@makingway.com", "phone": "+1 (877) 490-2883", "address": "549 Myrtle Avenue, Hampstead, Minnesota, 5896", "about": "Labore elit sunt esse nisi laboris sint fugiat in enim exercitation. Fugiat veniam officia elit cillum velit. Aliquip ex mollit mollit quis eu ea ea nisi. Non officia nulla nulla culpa aliqua deserunt cillum cillum irure aliqua. Lorem enim incididunt incididunt duis.\r\n", "registered": "2014-04-06T17:02:45-12:00", "latitude": -28.41112, "longitude": -119.614677, "tags": [ "ullamco", "id", "id", "occaecat", "magna", "ad", "dolor" ], "friends": [ { "id": 0, "name": "Lola Conrad" }, { "id": 1, "name": "Marion Allison" }, { "id": 2, "name": "Edith Dennis" } ], "greeting": "Hello, Adeline Finley! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ee0574c594e7d3122", "index": 493, "guid": "d82e49de-6411-486f-8431-2881065b788d", "isActive": true, "balance": "$1,049.49", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Ramsey Bright", "gender": "male", "company": "PLEXIA", "email": "ramseybright@plexia.com", "phone": "+1 (807) 592-2774", "address": "437 Bush Street, Clinton, Missouri, 2890", "about": "Duis Lorem anim sunt culpa consectetur ullamco cupidatat reprehenderit nulla. Excepteur cillum aliqua mollit dolore ut exercitation do aliqua qui commodo eiusmod officia. Consectetur ad nostrud anim ut eu tempor. Tempor cillum aliqua mollit esse nulla consectetur enim deserunt commodo nulla proident sunt qui. Esse duis adipisicing magna elit veniam nisi do ullamco.\r\n", "registered": "2014-01-25T21:06:38-13:00", "latitude": -67.716133, "longitude": -135.346748, "tags": [ "eiusmod", "consequat", "exercitation", "consectetur", "sit", "nostrud", "minim" ], "friends": [ { "id": 0, "name": "Durham Freeman" }, { "id": 1, "name": "Lily Vargas" }, { "id": 2, "name": "Jean Fuentes" } ], "greeting": "Hello, Ramsey Bright! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ef336fbded3193519", "index": 494, "guid": "238ee6d9-dcc1-45dc-88fd-df7432b5c385", "isActive": true, "balance": "$1,282.53", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Genevieve Giles", "gender": "female", "company": "PRISMATIC", "email": "genevievegiles@prismatic.com", "phone": "+1 (818) 525-3264", "address": "135 Tilden Avenue, Rivereno, Rhode Island, 7082", "about": "Nulla qui ad occaecat enim. Cillum cupidatat sunt fugiat enim qui quis Lorem labore ad aliqua qui sit nulla. In nisi ad cillum sunt sunt fugiat excepteur. Ea incididunt qui velit dolor ullamco excepteur ad pariatur anim in magna incididunt. Consectetur deserunt reprehenderit voluptate consequat officia ut non exercitation reprehenderit do.\r\n", "registered": "2014-05-11T20:46:17-12:00", "latitude": -88.170737, "longitude": 120.267275, "tags": [ "proident", "in", "voluptate", "et", "officia", "veniam", "qui" ], "friends": [ { "id": 0, "name": "Magdalena Singleton" }, { "id": 1, "name": "Hanson Farmer" }, { "id": 2, "name": "Rachael Lewis" } ], "greeting": "Hello, Genevieve Giles! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e8b2e5d2d8a31daca", "index": 495, "guid": "0b12d2a1-b13a-4091-8087-30e85bb68ead", "isActive": true, "balance": "$2,404.90", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Conner Castaneda", "gender": "male", "company": "TELPOD", "email": "connercastaneda@telpod.com", "phone": "+1 (883) 483-3887", "address": "650 Ditmars Street, Newry, Florida, 129", "about": "Officia elit consequat consequat do laborum voluptate fugiat minim. Cillum nostrud incididunt ipsum reprehenderit duis in pariatur ad ex adipisicing laboris. Adipisicing amet consequat ullamco do elit reprehenderit.\r\n", "registered": "2014-01-15T19:34:04-13:00", "latitude": -79.417737, "longitude": -163.787303, "tags": [ "quis", "pariatur", "sunt", "culpa", "occaecat", "cillum", "adipisicing" ], "friends": [ { "id": 0, "name": "Mccullough Burgess" }, { "id": 1, "name": "Woods Brooks" }, { "id": 2, "name": "Dorthy Boyer" } ], "greeting": "Hello, Conner Castaneda! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ed1753b7b0fef4d06", "index": 496, "guid": "c46e460b-0de8-483c-8561-60874adc017c", "isActive": false, "balance": "$3,180.85", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Sonja Cortez", "gender": "female", "company": "GEEKUS", "email": "sonjacortez@geekus.com", "phone": "+1 (848) 500-3243", "address": "758 Dorset Street, Falmouth, North Carolina, 361", "about": "Laborum nulla ipsum excepteur sit ea sit enim non. Aute do amet magna aliqua amet ullamco id mollit aliquip fugiat reprehenderit. Officia nulla aute mollit velit labore minim mollit.\r\n", "registered": "2014-02-09T16:43:17-13:00", "latitude": -62.641698, "longitude": -134.197139, "tags": [ "sit", "sunt", "sit", "tempor", "ad", "nisi", "duis" ], "friends": [ { "id": 0, "name": "Penny Beck" }, { "id": 1, "name": "Todd Hurley" }, { "id": 2, "name": "Gutierrez Macias" } ], "greeting": "Hello, Sonja Cortez! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e3220de43a297092e", "index": 497, "guid": "150d4ab8-be8c-45db-bcb7-9b76c0b4984a", "isActive": false, "balance": "$3,083.21", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Eve Buckner", "gender": "female", "company": "COLLAIRE", "email": "evebuckner@collaire.com", "phone": "+1 (864) 566-3840", "address": "949 Dictum Court, Ladera, New Hampshire, 7158", "about": "Et aliqua nostrud fugiat eiusmod et reprehenderit excepteur deserunt ea elit et. Do pariatur qui ex aute do. Nisi officia occaecat aute nulla Lorem eiusmod veniam cupidatat sunt qui ea. Lorem et tempor aliquip qui elit voluptate aliqua est non incididunt do officia dolore. Eu laborum velit laborum Lorem mollit. Ea duis cillum laboris labore laborum nostrud voluptate veniam.\r\n", "registered": "2014-01-23T07:27:17-13:00", "latitude": 25.088941, "longitude": -71.82495, "tags": [ "pariatur", "mollit", "deserunt", "ullamco", "irure", "duis", "adipisicing" ], "friends": [ { "id": 0, "name": "Kathryn Cooke" }, { "id": 1, "name": "Shaffer Garrett" }, { "id": 2, "name": "Maureen Mcleod" } ], "greeting": "Hello, Eve Buckner! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e461b55859526497b", "index": 498, "guid": "91135af9-0679-4314-9348-24df453ffb9d", "isActive": true, "balance": "$1,254.43", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Macdonald Mcgee", "gender": "male", "company": "PHOTOBIN", "email": "macdonaldmcgee@photobin.com", "phone": "+1 (836) 519-3322", "address": "877 Harbor Lane, Lopezo, Arkansas, 5040", "about": "Aliqua velit enim magna et minim quis aliqua enim consequat veniam ad anim. Id Lorem consectetur voluptate ullamco. Excepteur ut veniam enim laborum sint culpa incididunt. Sint cillum et id id ut do quis duis dolore veniam aliqua deserunt quis laborum. In velit laboris irure aliquip voluptate ullamco. Nisi commodo nostrud consequat sunt enim deserunt esse aliqua. Ullamco Lorem eu dolor non nulla aliquip.\r\n", "registered": "2014-09-23T06:42:12-12:00", "latitude": -24.1406, "longitude": 150.036605, "tags": [ "cillum", "excepteur", "cillum", "consequat", "cupidatat", "id", "ad" ], "friends": [ { "id": 0, "name": "Garza Horne" }, { "id": 1, "name": "Mccray Kinney" }, { "id": 2, "name": "Copeland Witt" } ], "greeting": "Hello, Macdonald Mcgee! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e250349ebd224e29a", "index": 499, "guid": "192fe490-2caa-4f0e-8724-df391e87f3b7", "isActive": false, "balance": "$2,478.87", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Decker Perkins", "gender": "male", "company": "ZOID", "email": "deckerperkins@zoid.com", "phone": "+1 (825) 409-2469", "address": "184 Vanderveer Place, Wattsville, Iowa, 6055", "about": "Sint deserunt elit mollit commodo consequat enim laboris ipsum ad in consequat tempor anim. Fugiat nostrud consectetur cillum officia deserunt id ea. Magna proident et Lorem commodo sint quis culpa occaecat irure officia aliquip exercitation. Eiusmod qui nisi aliquip quis do consectetur ipsum.\r\n", "registered": "2014-07-11T10:14:29-12:00", "latitude": -9.979088, "longitude": -16.181023, "tags": [ "cupidatat", "ut", "consequat", "enim", "eiusmod", "Lorem", "nulla" ], "friends": [ { "id": 0, "name": "Irene Merrill" }, { "id": 1, "name": "Salinas Cherry" }, { "id": 2, "name": "Keri Lucas" } ], "greeting": "Hello, Decker Perkins! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ee30c98d3b9d84d99", "index": 500, "guid": "1ae03229-6c23-4f6a-9ce2-3af317547565", "isActive": true, "balance": "$1,918.70", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Clare Hancock", "gender": "female", "company": "IMKAN", "email": "clarehancock@imkan.com", "phone": "+1 (988) 561-3444", "address": "944 Macdougal Street, Navarre, Nebraska, 9173", "about": "Magna dolor officia aute pariatur. Culpa veniam voluptate dolore voluptate magna ad ullamco nulla cillum eu. Ad ad culpa consequat qui. Ullamco mollit aute ut labore adipisicing pariatur. Exercitation incididunt ut pariatur do dolor.\r\n", "registered": "2014-04-09T05:51:00-12:00", "latitude": 17.101758, "longitude": 21.762124, "tags": [ "anim", "amet", "reprehenderit", "ea", "id", "ea", "aliquip" ], "friends": [ { "id": 0, "name": "Theresa Wilkerson" }, { "id": 1, "name": "Jacklyn Zamora" }, { "id": 2, "name": "Yvonne Mack" } ], "greeting": "Hello, Clare Hancock! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e297fc6a40e80005e", "index": 501, "guid": "a348a96b-1daf-4c83-a462-589e728cc14e", "isActive": true, "balance": "$1,921.08", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Norman Oneill", "gender": "male", "company": "BIOTICA", "email": "normanoneill@biotica.com", "phone": "+1 (948) 420-2084", "address": "995 Roosevelt Court, Hachita, District Of Columbia, 390", "about": "Duis duis qui nisi ea non exercitation anim ex sunt fugiat laborum tempor. Proident sunt est quis veniam qui labore. Nulla nisi culpa do veniam quis incididunt aliquip ex elit deserunt nostrud nulla. Nisi amet ut nostrud nostrud laborum nostrud in elit. Minim fugiat amet enim laborum qui laborum laborum ex laboris magna mollit nostrud. Do laboris sit anim mollit deserunt laboris reprehenderit amet non elit nulla nostrud.\r\n", "registered": "2014-02-19T12:36:54-13:00", "latitude": -33.459956, "longitude": 50.753285, "tags": [ "magna", "proident", "magna", "aliquip", "consectetur", "cillum", "nostrud" ], "friends": [ { "id": 0, "name": "Perkins Lawson" }, { "id": 1, "name": "Weaver Thomas" }, { "id": 2, "name": "Velma Stein" } ], "greeting": "Hello, Norman Oneill! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e5eea626e4ca3d84e", "index": 502, "guid": "73e20cea-81d5-4629-bba3-1c916e58348f", "isActive": true, "balance": "$3,537.12", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Suarez Jacobs", "gender": "male", "company": "MEDESIGN", "email": "suarezjacobs@medesign.com", "phone": "+1 (959) 458-3542", "address": "439 Gaylord Drive, Bagtown, New Jersey, 2866", "about": "Ut qui occaecat ex culpa esse. Aliqua irure irure commodo do consequat sunt amet nulla. Proident tempor do sunt exercitation. Tempor Lorem ut consequat consequat cillum sunt anim elit tempor mollit. Anim culpa eu velit mollit consequat anim mollit aliquip. Id commodo sit officia labore ea labore sint.\r\n", "registered": "2014-06-27T08:11:58-12:00", "latitude": 22.008652, "longitude": 144.607361, "tags": [ "ex", "tempor", "cillum", "elit", "ad", "esse", "velit" ], "friends": [ { "id": 0, "name": "Winters Malone" }, { "id": 1, "name": "Cline Lynch" }, { "id": 2, "name": "Hilary Hendrix" } ], "greeting": "Hello, Suarez Jacobs! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ea46e92ce36335499", "index": 503, "guid": "fc07e3b2-3725-4666-a8b5-96bf242140a8", "isActive": false, "balance": "$2,573.64", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Garner Meyer", "gender": "male", "company": "HYPLEX", "email": "garnermeyer@hyplex.com", "phone": "+1 (861) 543-2638", "address": "318 Engert Avenue, Forestburg, Palau, 4607", "about": "Eiusmod et ea eu adipisicing irure. Consectetur cupidatat consequat magna enim duis. Ad ut laboris mollit commodo nulla aliqua cillum fugiat incididunt mollit dolor sint culpa duis. Reprehenderit sint dolor deserunt reprehenderit cupidatat sit labore eiusmod dolor. Anim ad est qui labore commodo reprehenderit reprehenderit do. Culpa esse magna veniam excepteur exercitation est nulla proident aute ipsum et sunt pariatur excepteur.\r\n", "registered": "2014-09-01T07:50:33-12:00", "latitude": 75.565247, "longitude": 92.601452, "tags": [ "sunt", "nisi", "laborum", "fugiat", "consectetur", "aliquip", "reprehenderit" ], "friends": [ { "id": 0, "name": "Suzanne Walton" }, { "id": 1, "name": "Conway Stanley" }, { "id": 2, "name": "Brandi Collins" } ], "greeting": "Hello, Garner Meyer! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ed40b2ad3037aaf02", "index": 504, "guid": "490ec4eb-d3fb-41c3-9a61-b957b7cd623b", "isActive": true, "balance": "$2,260.10", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Obrien Sosa", "gender": "male", "company": "NETROPIC", "email": "obriensosa@netropic.com", "phone": "+1 (974) 445-3050", "address": "807 Girard Street, Grazierville, Puerto Rico, 8924", "about": "Excepteur id voluptate consectetur dolor est nisi labore. Consectetur officia aute exercitation nisi proident. Consequat non consequat laborum anim consectetur proident ea dolor officia sunt exercitation nostrud. Dolor dolor nulla id eu. Velit sint ullamco excepteur mollit do. Consectetur pariatur proident adipisicing nisi do ex exercitation duis dolore dolore consectetur do adipisicing ad. Sint laborum eiusmod velit voluptate ipsum commodo mollit cillum fugiat.\r\n", "registered": "2014-07-17T00:43:57-12:00", "latitude": 46.523049, "longitude": -26.919359, "tags": [ "cupidatat", "ex", "minim", "cillum", "consectetur", "pariatur", "fugiat" ], "friends": [ { "id": 0, "name": "Letha Sampson" }, { "id": 1, "name": "Sasha Cain" }, { "id": 2, "name": "Alba Sawyer" } ], "greeting": "Hello, Obrien Sosa! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e503828c0a050def1", "index": 505, "guid": "ef9ffc3e-b7e0-469f-a97a-dfb38f775f37", "isActive": false, "balance": "$2,020.18", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Maura Wilder", "gender": "female", "company": "ZERBINA", "email": "maurawilder@zerbina.com", "phone": "+1 (846) 594-3595", "address": "452 Forbell Street, Templeton, California, 7194", "about": "Cupidatat sunt incididunt do incididunt. Dolor ut fugiat sint ut aute ullamco in occaecat sint excepteur commodo eu. Tempor laborum esse magna sunt sunt dolore aute aliquip laborum non ullamco cillum qui incididunt. Ad dolore cupidatat voluptate ipsum incididunt qui velit. Duis duis labore exercitation pariatur occaecat ut tempor sint ut sint nisi eiusmod. Aliqua do commodo excepteur enim culpa. Pariatur in cillum fugiat amet eu qui.\r\n", "registered": "2014-07-20T13:32:47-12:00", "latitude": 87.949657, "longitude": 154.478739, "tags": [ "laboris", "est", "ullamco", "adipisicing", "aliquip", "aute", "culpa" ], "friends": [ { "id": 0, "name": "Francisca Mccray" }, { "id": 1, "name": "Baker Sanford" }, { "id": 2, "name": "Mcmillan Cardenas" } ], "greeting": "Hello, Maura Wilder! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1eeb61a56567bfab5b", "index": 506, "guid": "bb165550-2018-483c-9e3d-f080f993d939", "isActive": true, "balance": "$3,648.49", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Horton Morrow", "gender": "male", "company": "CYCLONICA", "email": "hortonmorrow@cyclonica.com", "phone": "+1 (946) 512-3036", "address": "494 Schenectady Avenue, Gibsonia, Vermont, 8039", "about": "Eu enim voluptate aliqua laboris ad do amet laborum irure laboris eu elit. Consequat aliquip dolor do adipisicing. Magna consequat excepteur labore proident excepteur aliquip ad anim. Reprehenderit occaecat irure ea Lorem incididunt enim sit Lorem cillum quis. Deserunt dolor velit nulla eiusmod nulla amet veniam commodo.\r\n", "registered": "2014-03-15T13:16:22-13:00", "latitude": -7.47041, "longitude": -116.531256, "tags": [ "minim", "cupidatat", "sint", "voluptate", "minim", "nisi", "ex" ], "friends": [ { "id": 0, "name": "Hickman Livingston" }, { "id": 1, "name": "Julie Hamilton" }, { "id": 2, "name": "Alisa Shepherd" } ], "greeting": "Hello, Horton Morrow! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e2ab79ffd6a5ebb5c", "index": 507, "guid": "ebd14bb8-3a17-42a7-92af-39b82c2452df", "isActive": false, "balance": "$3,795.11", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Rosella Clayton", "gender": "female", "company": "QOT", "email": "rosellaclayton@qot.com", "phone": "+1 (894) 504-2505", "address": "625 Dewey Place, Why, Indiana, 7105", "about": "Ad ad officia reprehenderit amet est tempor tempor adipisicing. Eu aliquip exercitation nisi tempor pariatur nostrud consequat eiusmod eu esse minim ut sit. Velit deserunt amet ex officia cillum quis tempor eiusmod. Anim exercitation incididunt ipsum laboris. Lorem culpa sit cillum dolore sint commodo nisi est. Occaecat cupidatat elit aliquip ipsum culpa quis reprehenderit adipisicing tempor cupidatat ad tempor id aliquip. Velit ad veniam reprehenderit ullamco nisi ut.\r\n", "registered": "2014-02-18T07:52:45-13:00", "latitude": 61.997063, "longitude": -121.423083, "tags": [ "elit", "labore", "quis", "exercitation", "excepteur", "aliqua", "exercitation" ], "friends": [ { "id": 0, "name": "Rosanna Atkinson" }, { "id": 1, "name": "Hess Clay" }, { "id": 2, "name": "Luella Whitehead" } ], "greeting": "Hello, Rosella Clayton! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ed45e8798004bf176", "index": 508, "guid": "e416a8d1-ad9d-4fe3-957a-79e8cd883d6b", "isActive": true, "balance": "$2,593.88", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Mullins Rush", "gender": "male", "company": "ISOSTREAM", "email": "mullinsrush@isostream.com", "phone": "+1 (812) 584-3463", "address": "606 Banner Avenue, Elrama, Illinois, 4927", "about": "Occaecat excepteur nostrud ad minim excepteur non deserunt minim. Aliqua do sint non dolor enim Lorem laboris elit veniam enim proident est aliquip. Proident irure amet veniam cupidatat est ex duis proident sint proident voluptate. Officia ut aute duis velit cillum labore reprehenderit magna irure tempor qui. Ea Lorem Lorem eiusmod irure in ea eiusmod. Culpa nisi occaecat ut cupidatat proident voluptate velit dolore nulla ullamco Lorem velit ut occaecat. Et veniam do aliqua fugiat in occaecat Lorem pariatur consectetur labore magna sunt ut sunt.\r\n", "registered": "2014-04-07T19:31:27-12:00", "latitude": -26.65056, "longitude": 142.194589, "tags": [ "velit", "do", "ex", "elit", "occaecat", "sunt", "eu" ], "friends": [ { "id": 0, "name": "Jamie Hayden" }, { "id": 1, "name": "Aguilar Wooten" }, { "id": 2, "name": "Ruiz Blankenship" } ], "greeting": "Hello, Mullins Rush! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ea381819e87039f3d", "index": 509, "guid": "162e167c-7f09-4ca9-8de2-8dfd48f16a1c", "isActive": false, "balance": "$1,087.86", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Mollie Kent", "gender": "female", "company": "NEBULEAN", "email": "molliekent@nebulean.com", "phone": "+1 (917) 510-3650", "address": "536 Hazel Court, Wilsonia, South Carolina, 2968", "about": "Ut commodo ad consectetur eu laborum. Adipisicing culpa quis elit aliquip Lorem adipisicing excepteur esse fugiat duis dolore aliqua cupidatat. Cillum elit veniam fugiat tempor ex duis enim commodo elit aliquip fugiat. Reprehenderit laboris quis esse ad esse tempor esse sit ut qui fugiat ex. Minim anim proident cillum tempor magna qui tempor cillum pariatur nulla nulla amet ut. Enim do laborum qui commodo sunt tempor velit minim dolor. Esse exercitation laboris duis ipsum non labore ullamco laborum proident duis magna ea enim.\r\n", "registered": "2014-05-20T03:14:23-12:00", "latitude": 61.169019, "longitude": -160.834079, "tags": [ "aliquip", "eiusmod", "pariatur", "excepteur", "velit", "dolor", "quis" ], "friends": [ { "id": 0, "name": "Tran Ramirez" }, { "id": 1, "name": "Audrey Hardy" }, { "id": 2, "name": "Gentry Ross" } ], "greeting": "Hello, Mollie Kent! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e4409d6a113254e77", "index": 510, "guid": "4fb8544e-f8ba-4b97-a650-27582ee48f57", "isActive": false, "balance": "$2,036.53", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Lopez Wade", "gender": "male", "company": "OHMNET", "email": "lopezwade@ohmnet.com", "phone": "+1 (899) 566-2441", "address": "605 Danforth Street, Leyner, American Samoa, 8187", "about": "Ea cillum laborum in velit occaecat officia occaecat duis ex deserunt est. Laborum duis velit velit do quis veniam fugiat sunt. Sint nostrud occaecat do quis est aliqua culpa eu pariatur ad nulla consequat esse amet. Deserunt cupidatat do deserunt culpa officia veniam excepteur aliqua eiusmod deserunt consequat. Et velit ipsum voluptate quis sit laboris ea reprehenderit consequat id. Veniam minim elit est ipsum cupidatat laboris id proident. Est veniam ipsum nisi excepteur adipisicing ullamco ullamco exercitation.\r\n", "registered": "2014-03-21T01:34:09-13:00", "latitude": 45.149388, "longitude": 140.205991, "tags": [ "commodo", "eiusmod", "consectetur", "dolor", "sunt", "quis", "dolor" ], "friends": [ { "id": 0, "name": "Dolores Cunningham" }, { "id": 1, "name": "Kristie Noble" }, { "id": 2, "name": "Karen Montgomery" } ], "greeting": "Hello, Lopez Wade! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1efa63b3f61820a0e1", "index": 511, "guid": "7e18f2f9-f4b3-4d94-ba9b-74234868e5f5", "isActive": false, "balance": "$1,357.91", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Rosemarie Tran", "gender": "female", "company": "AQUASSEUR", "email": "rosemarietran@aquasseur.com", "phone": "+1 (823) 490-2920", "address": "343 Bouck Court, Wacissa, Delaware, 6971", "about": "Ipsum id eiusmod aliquip enim magna nulla duis duis est. Reprehenderit veniam amet minim sint anim proident mollit sunt ad aute ad elit. Id deserunt exercitation non esse pariatur sint laborum ipsum minim aliquip aliqua. Labore labore et elit ipsum officia veniam laboris aliquip sint adipisicing.\r\n", "registered": "2014-07-10T16:11:45-12:00", "latitude": -10.892176, "longitude": 138.506084, "tags": [ "sunt", "amet", "et", "aliquip", "exercitation", "cillum", "incididunt" ], "friends": [ { "id": 0, "name": "Lesley Valdez" }, { "id": 1, "name": "Tyler Hebert" }, { "id": 2, "name": "Gabrielle Simmons" } ], "greeting": "Hello, Rosemarie Tran! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ec3ba36ae62eb6518", "index": 512, "guid": "80afb678-a979-4712-a294-3d9b4abc5e91", "isActive": false, "balance": "$2,640.75", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Meagan Fox", "gender": "female", "company": "GOGOL", "email": "meaganfox@gogol.com", "phone": "+1 (943) 422-2113", "address": "892 Pleasant Place, Hiko, Pennsylvania, 2748", "about": "Adipisicing enim sit eiusmod excepteur nulla. Cillum deserunt sunt quis cillum enim aliqua voluptate nisi veniam Lorem id incididunt voluptate. Deserunt excepteur dolore ut cupidatat nisi do deserunt aliquip non laborum est occaecat esse sint. Officia commodo cillum sunt sunt labore consectetur pariatur fugiat eu. Ut dolore id consectetur enim nostrud tempor nulla nostrud occaecat aute nisi nisi veniam.\r\n", "registered": "2014-05-01T18:12:08-12:00", "latitude": -70.243749, "longitude": 74.432051, "tags": [ "eiusmod", "nisi", "occaecat", "duis", "sint", "elit", "Lorem" ], "friends": [ { "id": 0, "name": "Deanne Mosley" }, { "id": 1, "name": "Pam Cole" }, { "id": 2, "name": "Flowers Waters" } ], "greeting": "Hello, Meagan Fox! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e1268419ee5ce4c28", "index": 513, "guid": "59d0d698-2b56-4aac-a3d3-e9dad002d60b", "isActive": false, "balance": "$3,432.85", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Sears Vega", "gender": "male", "company": "REMOLD", "email": "searsvega@remold.com", "phone": "+1 (912) 592-2395", "address": "149 Barlow Drive, Tuskahoma, Georgia, 3849", "about": "Sint fugiat ullamco mollit id mollit laboris dolore veniam occaecat enim eiusmod incididunt dolore. Consequat in consectetur enim duis sit ut occaecat. Ullamco proident sit cillum nisi id ea commodo aute in non id pariatur. Et nisi officia commodo incididunt veniam laboris eu non mollit in Lorem exercitation. Sit veniam ut aute exercitation incididunt aliquip veniam minim esse qui aliquip. Officia ipsum elit enim duis ut reprehenderit veniam Lorem reprehenderit amet ad amet ullamco. Excepteur irure exercitation voluptate commodo occaecat eiusmod excepteur.\r\n", "registered": "2014-06-14T07:43:26-12:00", "latitude": -53.895179, "longitude": -67.666455, "tags": [ "nostrud", "sunt", "non", "enim", "ea", "elit", "nostrud" ], "friends": [ { "id": 0, "name": "Stanton Madden" }, { "id": 1, "name": "Mari Bradford" }, { "id": 2, "name": "Carmella Slater" } ], "greeting": "Hello, Sears Vega! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e2b8c46f8e50f2c2b", "index": 514, "guid": "571a7c9e-fd9a-4fbd-8bf5-253f011bae62", "isActive": false, "balance": "$2,965.77", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Marie Maddox", "gender": "female", "company": "GENMOM", "email": "mariemaddox@genmom.com", "phone": "+1 (847) 536-2034", "address": "273 Denton Place, Cazadero, North Dakota, 4113", "about": "Voluptate adipisicing aute incididunt enim. Enim qui adipisicing proident commodo. Duis amet ex eu cillum proident incididunt laboris voluptate. Veniam Lorem tempor adipisicing est cupidatat qui proident nisi officia cillum nostrud consequat. Id fugiat ullamco eiusmod elit Lorem sit et anim ut.\r\n", "registered": "2014-01-13T13:43:07-13:00", "latitude": 20.785925, "longitude": -45.62015, "tags": [ "aliqua", "veniam", "tempor", "et", "et", "ipsum", "commodo" ], "friends": [ { "id": 0, "name": "Lang Ward" }, { "id": 1, "name": "Duran Rice" }, { "id": 2, "name": "Marsha Hendricks" } ], "greeting": "Hello, Marie Maddox! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ec7627df144f29e37", "index": 515, "guid": "fb80188b-629d-403b-93d9-057147180eb2", "isActive": false, "balance": "$1,529.72", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Hunter Morse", "gender": "male", "company": "EQUITOX", "email": "huntermorse@equitox.com", "phone": "+1 (955) 568-2093", "address": "448 Dakota Place, Hiseville, Louisiana, 6623", "about": "Nostrud excepteur id est dolor sunt in ipsum ad consequat ipsum quis proident. Nostrud irure cupidatat in magna labore labore laborum ea ut. Aliqua ullamco ea ad ad qui amet ullamco proident est incididunt.\r\n", "registered": "2014-05-31T03:14:46-12:00", "latitude": 21.481186, "longitude": -57.976574, "tags": [ "nisi", "culpa", "laborum", "pariatur", "ad", "nisi", "exercitation" ], "friends": [ { "id": 0, "name": "Odessa James" }, { "id": 1, "name": "Guerrero Griffith" }, { "id": 2, "name": "Marylou Webb" } ], "greeting": "Hello, Hunter Morse! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e25a544dc16f2e0e8", "index": 516, "guid": "868cfdb4-c840-4358-8031-32332883da7e", "isActive": true, "balance": "$3,881.98", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Larsen Kirk", "gender": "male", "company": "ZILIDIUM", "email": "larsenkirk@zilidium.com", "phone": "+1 (825) 548-2698", "address": "622 Seacoast Terrace, Avalon, Northern Mariana Islands, 4656", "about": "Laboris id sit sunt aliqua ipsum nulla qui occaecat Lorem duis dolor eiusmod magna. Ex labore velit aute deserunt sit sunt. Velit non irure do esse ut qui occaecat do qui irure quis. Officia velit sit duis duis aute officia duis enim voluptate duis sunt ut nisi anim. Irure irure aliqua commodo aliqua do irure.\r\n", "registered": "2014-06-17T18:25:38-12:00", "latitude": -48.450724, "longitude": 160.026968, "tags": [ "dolore", "cupidatat", "sint", "irure", "est", "do", "nulla" ], "friends": [ { "id": 0, "name": "Jannie Rutledge" }, { "id": 1, "name": "Robbins Baker" }, { "id": 2, "name": "Bray Daniels" } ], "greeting": "Hello, Larsen Kirk! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ebd458a46ebae93d9", "index": 517, "guid": "f2a7138e-f3c3-489a-9fd1-bf729eda1c28", "isActive": false, "balance": "$1,424.07", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Vincent Wright", "gender": "male", "company": "GADTRON", "email": "vincentwright@gadtron.com", "phone": "+1 (937) 512-2886", "address": "618 Joralemon Street, Chesterfield, Colorado, 9841", "about": "Velit ad exercitation anim reprehenderit. Do dolor cillum commodo elit reprehenderit enim. Occaecat ut ex enim amet duis ea laboris sint irure aliquip pariatur reprehenderit mollit ipsum. Culpa laboris aliqua cupidatat pariatur culpa ullamco do tempor.\r\n", "registered": "2014-07-19T12:38:13-12:00", "latitude": 24.742191, "longitude": -52.307351, "tags": [ "excepteur", "anim", "duis", "ipsum", "fugiat", "labore", "esse" ], "friends": [ { "id": 0, "name": "Hubbard Patel" }, { "id": 1, "name": "Saundra Cook" }, { "id": 2, "name": "Rachelle Bullock" } ], "greeting": "Hello, Vincent Wright! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ec0eaa1c4db7b1af7", "index": 518, "guid": "8ca72da9-12f8-4188-82ad-4a1d5dbfe706", "isActive": false, "balance": "$3,119.39", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Allison Nicholson", "gender": "female", "company": "XYQAG", "email": "allisonnicholson@xyqag.com", "phone": "+1 (946) 456-3448", "address": "473 Pitkin Avenue, Convent, Idaho, 2848", "about": "Proident ex duis elit cupidatat. Velit qui cillum anim amet tempor est. Reprehenderit qui et id dolore. Nisi laborum laboris excepteur fugiat sit nisi.\r\n", "registered": "2014-02-27T07:58:53-13:00", "latitude": -82.629159, "longitude": -127.956815, "tags": [ "laboris", "et", "Lorem", "voluptate", "laboris", "consequat", "exercitation" ], "friends": [ { "id": 0, "name": "Jenifer Grimes" }, { "id": 1, "name": "Ratliff Olsen" }, { "id": 2, "name": "Ilene Ramsey" } ], "greeting": "Hello, Allison Nicholson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ec78258d365636ef0", "index": 519, "guid": "e357cad7-dbc5-478d-bcac-767e698eeec7", "isActive": false, "balance": "$1,903.65", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Hendrix Barrera", "gender": "male", "company": "HELIXO", "email": "hendrixbarrera@helixo.com", "phone": "+1 (873) 532-2129", "address": "102 Monroe Place, Jardine, Marshall Islands, 6813", "about": "Aute ut nulla non consequat incididunt aute reprehenderit Lorem minim culpa. Irure irure quis officia sunt enim commodo ea. Cupidatat do irure excepteur eiusmod ex nostrud aliqua mollit velit in amet incididunt. Aute anim nulla culpa consequat.\r\n", "registered": "2014-06-03T13:05:08-12:00", "latitude": -87.968651, "longitude": -103.677024, "tags": [ "veniam", "laboris", "aliqua", "magna", "amet", "fugiat", "magna" ], "friends": [ { "id": 0, "name": "Bolton Moses" }, { "id": 1, "name": "Hattie Huff" }, { "id": 2, "name": "Antonia Mcintyre" } ], "greeting": "Hello, Hendrix Barrera! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ec5fb41a23723ae38", "index": 520, "guid": "583c6ca5-65ba-440f-a096-1d4bfa3cd6da", "isActive": true, "balance": "$1,417.02", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Meghan Hicks", "gender": "female", "company": "VIDTO", "email": "meghanhicks@vidto.com", "phone": "+1 (814) 519-2808", "address": "980 Pierrepont Street, Berwind, New York, 5812", "about": "Nulla excepteur ullamco veniam adipisicing qui minim velit est ad eiusmod amet. Amet cillum nisi aute incididunt sunt tempor eiusmod labore exercitation sit quis veniam. Occaecat minim irure ea ad consectetur consequat.\r\n", "registered": "2014-01-30T03:22:32-13:00", "latitude": 81.816203, "longitude": -131.220834, "tags": [ "ut", "sint", "cupidatat", "minim", "sunt", "ex", "eiusmod" ], "friends": [ { "id": 0, "name": "Trina Carlson" }, { "id": 1, "name": "Rosie Ayers" }, { "id": 2, "name": "Norma Leach" } ], "greeting": "Hello, Meghan Hicks! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e9c7994e63bb54fcf", "index": 521, "guid": "6a564fb6-3936-4632-844e-75b7643812bc", "isActive": true, "balance": "$2,752.63", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Emerson Lyons", "gender": "male", "company": "BEZAL", "email": "emersonlyons@bezal.com", "phone": "+1 (840) 474-2165", "address": "880 Cheever Place, Nescatunga, Guam, 1674", "about": "Lorem incididunt reprehenderit culpa ut cillum Lorem veniam enim magna. Consequat id laboris aliqua dolor sint quis aliquip ad qui nostrud. Fugiat Lorem cupidatat velit tempor ipsum pariatur. Et deserunt non dolor labore ut pariatur laborum veniam velit eu fugiat cupidatat amet labore. Nostrud consectetur duis consectetur esse consequat dolor do culpa ut.\r\n", "registered": "2014-02-25T09:04:30-13:00", "latitude": 39.356833, "longitude": 117.032155, "tags": [ "aliqua", "laboris", "laboris", "sit", "dolore", "dolor", "laboris" ], "friends": [ { "id": 0, "name": "Key Robles" }, { "id": 1, "name": "Felicia Curry" }, { "id": 2, "name": "Richmond Marquez" } ], "greeting": "Hello, Emerson Lyons! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eef843f3bb4a4dbb2", "index": 522, "guid": "63d61f8a-85ec-400d-922d-d0eea62d0d15", "isActive": false, "balance": "$3,760.75", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Robert Acevedo", "gender": "female", "company": "ENTOGROK", "email": "robertacevedo@entogrok.com", "phone": "+1 (959) 596-2400", "address": "808 Amity Street, Westwood, Virgin Islands, 596", "about": "Cillum amet proident ad consectetur dolore exercitation magna ipsum consequat. Eu cupidatat ea veniam cupidatat pariatur anim. In officia proident Lorem non in voluptate veniam. Est labore ullamco et dolore deserunt ullamco sit mollit dolor occaecat id minim incididunt pariatur. Dolor mollit exercitation deserunt aliquip dolore duis et ex. Ipsum veniam occaecat voluptate ipsum deserunt sit ullamco consectetur officia excepteur. Mollit dolore occaecat nostrud consectetur laboris cillum occaecat quis duis.\r\n", "registered": "2014-07-09T03:54:11-12:00", "latitude": 1.323403, "longitude": 112.620088, "tags": [ "qui", "minim", "consectetur", "deserunt", "et", "eiusmod", "do" ], "friends": [ { "id": 0, "name": "Walters Reeves" }, { "id": 1, "name": "Sondra Irwin" }, { "id": 2, "name": "Olivia Terrell" } ], "greeting": "Hello, Robert Acevedo! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eb367fdd112be8ea3", "index": 523, "guid": "59ec8357-6b71-4806-8a59-746f1252af23", "isActive": false, "balance": "$2,005.95", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Bean Schmidt", "gender": "male", "company": "ZANILLA", "email": "beanschmidt@zanilla.com", "phone": "+1 (865) 470-3028", "address": "350 Taaffe Place, Camas, Massachusetts, 9766", "about": "Cillum esse laborum in culpa qui est anim sit amet Lorem Lorem irure. Nostrud voluptate culpa dolor consequat elit officia exercitation nulla sint irure. Pariatur esse velit pariatur commodo occaecat. Excepteur irure deserunt excepteur duis magna velit ea eu dolore ea minim. Lorem exercitation sunt ex dolore adipisicing reprehenderit in exercitation consequat sit aute labore ex ea.\r\n", "registered": "2014-02-19T13:50:03-13:00", "latitude": 7.594179, "longitude": -100.384467, "tags": [ "consectetur", "exercitation", "culpa", "cupidatat", "duis", "duis", "labore" ], "friends": [ { "id": 0, "name": "Grimes Delaney" }, { "id": 1, "name": "Ward Wyatt" }, { "id": 2, "name": "Michael Lindsey" } ], "greeting": "Hello, Bean Schmidt! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1edfad498fa179cb13", "index": 524, "guid": "ea472205-7672-4da3-a2b7-808a4c5af92e", "isActive": false, "balance": "$1,543.82", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Etta Head", "gender": "female", "company": "SEQUITUR", "email": "ettahead@sequitur.com", "phone": "+1 (862) 485-3869", "address": "864 Dewitt Avenue, Brandermill, Utah, 481", "about": "Sit laborum est est et pariatur consequat et et. Proident dolor non esse anim eiusmod cupidatat cupidatat et magna nisi pariatur. Elit incididunt sit qui fugiat duis reprehenderit et enim tempor. Dolore nisi excepteur dolor eu.\r\n", "registered": "2014-07-12T15:32:18-12:00", "latitude": -30.111589, "longitude": 63.900893, "tags": [ "sit", "pariatur", "id", "ad", "non", "ex", "eiusmod" ], "friends": [ { "id": 0, "name": "Wilder Morrison" }, { "id": 1, "name": "Mattie Crawford" }, { "id": 2, "name": "Anastasia Espinoza" } ], "greeting": "Hello, Etta Head! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e9feacf930abeb5f9", "index": 525, "guid": "c70e9b61-f0e0-40a8-9b5d-82e74e0276ea", "isActive": true, "balance": "$3,030.82", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Dorothy Sullivan", "gender": "female", "company": "PROSELY", "email": "dorothysullivan@prosely.com", "phone": "+1 (932) 504-3738", "address": "186 Guider Avenue, Sunriver, Montana, 6059", "about": "Aute duis eu minim adipisicing. Magna ut Lorem ea dolor ipsum officia nostrud aute minim nulla eiusmod. Velit qui velit exercitation qui nostrud ipsum sit sint excepteur voluptate laboris do ullamco.\r\n", "registered": "2014-01-17T14:56:54-13:00", "latitude": -11.348704, "longitude": -29.775574, "tags": [ "cillum", "dolor", "sint", "ut", "mollit", "cupidatat", "qui" ], "friends": [ { "id": 0, "name": "James Day" }, { "id": 1, "name": "Wolf Harmon" }, { "id": 2, "name": "Vanessa English" } ], "greeting": "Hello, Dorothy Sullivan! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e2debdaf32f1f1ab5", "index": 526, "guid": "d9ccfdc3-cf43-445f-9e1e-9ec66509d5b3", "isActive": true, "balance": "$1,419.77", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Fuller Buckley", "gender": "male", "company": "WATERBABY", "email": "fullerbuckley@waterbaby.com", "phone": "+1 (862) 593-2608", "address": "141 Bartlett Place, Whitehaven, Wisconsin, 3324", "about": "Duis sunt officia Lorem quis consectetur sit. Cillum anim incididunt velit ea dolor exercitation nisi elit non officia. Enim amet aliquip eu et. Duis magna consequat voluptate eiusmod. Qui enim aute esse dolor laborum eiusmod eiusmod ea quis pariatur commodo fugiat pariatur esse.\r\n", "registered": "2014-02-10T00:08:38-13:00", "latitude": 6.617212, "longitude": -97.686069, "tags": [ "aliqua", "exercitation", "aliquip", "officia", "incididunt", "veniam", "qui" ], "friends": [ { "id": 0, "name": "Lina Haley" }, { "id": 1, "name": "Crane Mullen" }, { "id": 2, "name": "Lou Bray" } ], "greeting": "Hello, Fuller Buckley! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e20ea695cd1cb50c6", "index": 527, "guid": "11c4170b-4387-4fe3-ac27-cc184ab34f7b", "isActive": true, "balance": "$3,690.25", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Robertson Gay", "gender": "male", "company": "FROLIX", "email": "robertsongay@frolix.com", "phone": "+1 (968) 557-2715", "address": "761 Harkness Avenue, Cobbtown, Maine, 9593", "about": "Labore ut laboris pariatur consectetur esse fugiat aute qui. Non reprehenderit consectetur velit in. Sint anim irure minim in dolore esse enim esse excepteur amet occaecat.\r\n", "registered": "2014-01-06T10:08:30-13:00", "latitude": 89.77638, "longitude": -128.834487, "tags": [ "dolor", "magna", "elit", "sint", "laboris", "laboris", "dolore" ], "friends": [ { "id": 0, "name": "Lorie Pitts" }, { "id": 1, "name": "Allyson Vance" }, { "id": 2, "name": "Barnett Kidd" } ], "greeting": "Hello, Robertson Gay! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ed2a2e0a3b9b77cbf", "index": 528, "guid": "a2723313-e192-41eb-b409-feed3193c297", "isActive": false, "balance": "$2,664.69", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Patsy Bridges", "gender": "female", "company": "MANGLO", "email": "patsybridges@manglo.com", "phone": "+1 (859) 470-3679", "address": "763 Tech Place, Sehili, Virginia, 7556", "about": "Duis proident minim enim pariatur ad do cupidatat labore ex fugiat adipisicing reprehenderit consequat. Enim proident aliqua consectetur nostrud laboris in laboris aliquip amet et eiusmod incididunt. Culpa sunt commodo do consectetur pariatur consectetur elit consectetur enim qui exercitation. Excepteur tempor nisi aliqua aute do consequat mollit est reprehenderit est. Deserunt sit aute occaecat non est fugiat enim.\r\n", "registered": "2014-03-10T18:33:30-13:00", "latitude": 51.806941, "longitude": 89.161106, "tags": [ "eiusmod", "ipsum", "incididunt", "duis", "sunt", "enim", "et" ], "friends": [ { "id": 0, "name": "Victoria Alford" }, { "id": 1, "name": "Mcintyre Riley" }, { "id": 2, "name": "Myers Brennan" } ], "greeting": "Hello, Patsy Bridges! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e3591b32e39a097d4", "index": 529, "guid": "026232d9-44c6-41e7-8e4d-4d95dfcaeff1", "isActive": false, "balance": "$3,137.64", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Vance Austin", "gender": "male", "company": "BITREX", "email": "vanceaustin@bitrex.com", "phone": "+1 (845) 476-2542", "address": "807 Orient Avenue, Kaka, Kentucky, 4984", "about": "Ullamco quis Lorem sint mollit aliqua. Elit cupidatat voluptate nostrud dolore occaecat sint. Dolor enim duis reprehenderit officia aliqua amet ullamco mollit esse ad.\r\n", "registered": "2014-07-26T15:28:17-12:00", "latitude": 39.883545, "longitude": 6.500107, "tags": [ "irure", "nostrud", "aute", "cillum", "voluptate", "qui", "excepteur" ], "friends": [ { "id": 0, "name": "Head Oneil" }, { "id": 1, "name": "Gould Richard" }, { "id": 2, "name": "Harding Casey" } ], "greeting": "Hello, Vance Austin! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ec0cd28711f2d4d0a", "index": 530, "guid": "680d74b6-a6ae-4273-9b9f-b09a7e1e3797", "isActive": true, "balance": "$3,697.40", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Norris Figueroa", "gender": "male", "company": "POSHOME", "email": "norrisfigueroa@poshome.com", "phone": "+1 (991) 461-3397", "address": "425 Kansas Place, Calverton, Connecticut, 6693", "about": "Tempor et veniam eiusmod pariatur ex culpa. Proident ipsum est aliqua consectetur occaecat reprehenderit occaecat adipisicing minim ipsum tempor. Non aliqua eiusmod aliqua eu.\r\n", "registered": "2014-02-12T20:20:56-13:00", "latitude": 40.860128, "longitude": -61.709051, "tags": [ "et", "officia", "sunt", "culpa", "ea", "irure", "cillum" ], "friends": [ { "id": 0, "name": "Amalia Gallagher" }, { "id": 1, "name": "Fern Copeland" }, { "id": 2, "name": "Evans Gould" } ], "greeting": "Hello, Norris Figueroa! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ebe0856624f9ad15d", "index": 531, "guid": "cc2e457b-ca29-4208-96cc-ff632d6f20d6", "isActive": false, "balance": "$2,410.56", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Katharine Sellers", "gender": "female", "company": "KIOSK", "email": "katharinesellers@kiosk.com", "phone": "+1 (910) 451-2503", "address": "845 Maple Avenue, Wildwood, Mississippi, 805", "about": "Ea nisi cupidatat cillum magna velit. Consectetur sunt veniam eiusmod est cupidatat incididunt veniam. Est sint esse qui ex velit dolor ipsum eiusmod minim.\r\n", "registered": "2014-01-11T00:49:53-13:00", "latitude": -41.512894, "longitude": -148.317075, "tags": [ "aliquip", "voluptate", "commodo", "aliquip", "quis", "qui", "velit" ], "friends": [ { "id": 0, "name": "Lottie Long" }, { "id": 1, "name": "Lydia Barnett" }, { "id": 2, "name": "Armstrong Morin" } ], "greeting": "Hello, Katharine Sellers! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e3fc026298bdfca39", "index": 532, "guid": "d9e7785c-bd2c-4bdf-b58f-e1fd8f07f25f", "isActive": true, "balance": "$3,901.43", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Lynch Scott", "gender": "male", "company": "SATIANCE", "email": "lynchscott@satiance.com", "phone": "+1 (850) 540-3056", "address": "463 Clymer Street, Disautel, Washington, 2469", "about": "Sit nulla voluptate nisi laboris dolore irure. Nostrud esse culpa aute veniam nulla irure fugiat excepteur nulla velit exercitation pariatur. Ex quis eiusmod excepteur dolor. In adipisicing consequat amet minim consectetur fugiat anim duis culpa excepteur. Occaecat laboris laboris laborum anim est occaecat nisi laboris non tempor cillum nisi. Labore velit do reprehenderit cillum ipsum sunt minim aliquip dolor proident elit.\r\n", "registered": "2014-08-16T05:02:50-12:00", "latitude": -38.750101, "longitude": 112.588043, "tags": [ "enim", "minim", "nisi", "sint", "aute", "amet", "exercitation" ], "friends": [ { "id": 0, "name": "Colette Prince" }, { "id": 1, "name": "Marina Ryan" }, { "id": 2, "name": "Susanne Knox" } ], "greeting": "Hello, Lynch Scott! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e3410b6c844481aef", "index": 533, "guid": "4a611f89-0ce1-4634-8fd1-c0d04f5fa328", "isActive": false, "balance": "$1,675.75", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Ellen Yang", "gender": "female", "company": "ZOINAGE", "email": "ellenyang@zoinage.com", "phone": "+1 (883) 472-3192", "address": "419 Albemarle Terrace, Lynn, Tennessee, 8890", "about": "Eiusmod consequat pariatur sit eu ipsum culpa proident reprehenderit consequat in ipsum esse. Quis commodo enim voluptate sint irure aliqua in anim veniam. Eu anim sunt magna enim voluptate sunt duis consequat sit irure. Aute deserunt amet labore ex nisi in exercitation in magna amet commodo id. Ad ea nisi eu reprehenderit incididunt irure sint.\r\n", "registered": "2014-07-25T00:03:37-12:00", "latitude": -83.594425, "longitude": -24.33348, "tags": [ "eiusmod", "amet", "aute", "eu", "veniam", "nisi", "tempor" ], "friends": [ { "id": 0, "name": "Maddox Baldwin" }, { "id": 1, "name": "Burt Hall" }, { "id": 2, "name": "Harriett Joyner" } ], "greeting": "Hello, Ellen Yang! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ed62372d60c72b521", "index": 534, "guid": "f51c9876-c1a3-456d-a27c-1b215deaa6bc", "isActive": true, "balance": "$3,177.74", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Penelope Goodwin", "gender": "female", "company": "KAGE", "email": "penelopegoodwin@kage.com", "phone": "+1 (978) 589-3115", "address": "667 Halsey Street, Hondah, Alabama, 1654", "about": "Cillum tempor cillum non qui occaecat. Non qui incididunt aliqua mollit anim cillum velit aliquip proident consequat esse et laboris enim. Consectetur aliquip cillum eiusmod in.\r\n", "registered": "2014-09-08T01:59:46-12:00", "latitude": -7.611331, "longitude": 130.597516, "tags": [ "est", "eu", "dolor", "culpa", "quis", "aliquip", "Lorem" ], "friends": [ { "id": 0, "name": "Goodman Munoz" }, { "id": 1, "name": "Meyer Bush" }, { "id": 2, "name": "Mccoy Ramos" } ], "greeting": "Hello, Penelope Goodwin! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1edf587ea6645784bc", "index": 535, "guid": "0b16b835-ab6c-4c4a-9715-30fac3e10466", "isActive": true, "balance": "$1,619.96", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Tammy Wagner", "gender": "female", "company": "SPEEDBOLT", "email": "tammywagner@speedbolt.com", "phone": "+1 (894) 400-2489", "address": "237 Polar Street, Kirk, Ohio, 2659", "about": "Sunt mollit sunt laboris culpa nulla exercitation tempor magna anim. Tempor adipisicing ex mollit laboris. Do enim ex ea adipisicing nostrud qui officia reprehenderit labore.\r\n", "registered": "2014-08-17T22:57:07-12:00", "latitude": 4.805599, "longitude": -34.836253, "tags": [ "enim", "consequat", "dolore", "anim", "exercitation", "Lorem", "nostrud" ], "friends": [ { "id": 0, "name": "Rivera Sandoval" }, { "id": 1, "name": "Leah Bentley" }, { "id": 2, "name": "Ebony Skinner" } ], "greeting": "Hello, Tammy Wagner! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e58df704dd22bd859", "index": 536, "guid": "b91ca64d-1a0c-4e2e-a03c-7ee96eb5b103", "isActive": true, "balance": "$1,568.94", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Amanda Sharpe", "gender": "female", "company": "TWIIST", "email": "amandasharpe@twiist.com", "phone": "+1 (907) 429-2044", "address": "816 Ferry Place, Rose, Hawaii, 2914", "about": "Consequat enim veniam nisi est qui cupidatat esse ex enim amet commodo. Sunt elit ut mollit consequat veniam amet eiusmod magna ipsum commodo. Nostrud ipsum labore eu nisi quis commodo velit quis. Magna veniam quis sunt duis magna aliquip exercitation amet Lorem eu. Occaecat anim esse fugiat qui nostrud. Amet est consequat quis consequat Lorem.\r\n", "registered": "2014-01-02T20:57:41-13:00", "latitude": 88.483399, "longitude": 112.453709, "tags": [ "labore", "do", "pariatur", "anim", "esse", "Lorem", "nulla" ], "friends": [ { "id": 0, "name": "Bullock Hull" }, { "id": 1, "name": "Black Carney" }, { "id": 2, "name": "Cathleen Heath" } ], "greeting": "Hello, Amanda Sharpe! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e20ef726ff3157d0e", "index": 537, "guid": "942d86a8-c8c5-472e-83d9-18daceb5808f", "isActive": false, "balance": "$3,205.92", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Swanson Ortega", "gender": "male", "company": "ESCHOIR", "email": "swansonortega@eschoir.com", "phone": "+1 (934) 494-2718", "address": "783 Lewis Place, Frierson, New Mexico, 6096", "about": "Ullamco cupidatat laborum cupidatat qui amet ut reprehenderit. Incididunt minim culpa magna ullamco commodo. Fugiat officia enim occaecat veniam enim reprehenderit ad aliquip. Deserunt do irure cupidatat anim qui duis ipsum.\r\n", "registered": "2014-01-13T11:38:36-13:00", "latitude": 26.656047, "longitude": -0.506269, "tags": [ "occaecat", "duis", "pariatur", "irure", "cupidatat", "duis", "laboris" ], "friends": [ { "id": 0, "name": "Desiree Charles" }, { "id": 1, "name": "Eloise Hill" }, { "id": 2, "name": "Hendricks Thompson" } ], "greeting": "Hello, Swanson Ortega! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e4e22da78f8d50430", "index": 538, "guid": "0c1fb708-4330-4d9b-95fc-33cc8e871647", "isActive": false, "balance": "$1,790.66", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Dixon Huffman", "gender": "male", "company": "ORGANICA", "email": "dixonhuffman@organica.com", "phone": "+1 (898) 462-2244", "address": "312 Main Street, Charco, Maryland, 6357", "about": "Aliquip tempor ea et labore ipsum in id consequat in. Et magna culpa ex cupidatat. Tempor ex cillum commodo eiusmod consequat tempor eiusmod eu labore incididunt.\r\n", "registered": "2014-04-13T14:27:36-12:00", "latitude": -16.183454, "longitude": -0.45041, "tags": [ "occaecat", "aute", "dolor", "esse", "enim", "labore", "commodo" ], "friends": [ { "id": 0, "name": "Ochoa Bishop" }, { "id": 1, "name": "Elliott Jimenez" }, { "id": 2, "name": "Casey Morris" } ], "greeting": "Hello, Dixon Huffman! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e5325b59aec77ca08", "index": 539, "guid": "278a78db-c10d-4a1c-a775-bc9da123d4cb", "isActive": false, "balance": "$3,181.85", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Reva Gentry", "gender": "female", "company": "PEARLESEX", "email": "revagentry@pearlesex.com", "phone": "+1 (894) 580-2088", "address": "958 Keap Street, Carrizo, Alaska, 8214", "about": "Exercitation consectetur commodo ad adipisicing nulla laborum fugiat exercitation sit. Aliqua consectetur proident minim minim occaecat aliquip amet elit sit ullamco nulla laborum amet. Anim nostrud officia fugiat deserunt ea nostrud elit sunt mollit eiusmod minim.\r\n", "registered": "2014-08-06T12:22:41-12:00", "latitude": 37.460756, "longitude": 38.458093, "tags": [ "occaecat", "cillum", "incididunt", "amet", "adipisicing", "proident", "ullamco" ], "friends": [ { "id": 0, "name": "Gonzales Estes" }, { "id": 1, "name": "Roach Tate" }, { "id": 2, "name": "Haley Tyson" } ], "greeting": "Hello, Reva Gentry! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e25248c5f802c174c", "index": 540, "guid": "364da2b5-9667-4e6d-ad13-494144b63d23", "isActive": false, "balance": "$1,849.98", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Medina Stanton", "gender": "male", "company": "GEEKULAR", "email": "medinastanton@geekular.com", "phone": "+1 (855) 413-3386", "address": "953 Ovington Court, Accoville, Arizona, 9805", "about": "Cillum proident pariatur Lorem aliqua nisi sit commodo sint. Dolore est amet excepteur labore magna nostrud nostrud magna labore quis fugiat aliqua dolor. Pariatur elit velit do do officia non officia voluptate cillum amet nostrud ea et. Consectetur qui amet nulla dolore tempor irure elit dolore sint officia nulla. Reprehenderit commodo do mollit nostrud eiusmod occaecat qui.\r\n", "registered": "2014-04-07T01:02:57-12:00", "latitude": -26.498493, "longitude": 2.989122, "tags": [ "duis", "proident", "duis", "est", "et", "ullamco", "culpa" ], "friends": [ { "id": 0, "name": "Beverly Pope" }, { "id": 1, "name": "Holt Galloway" }, { "id": 2, "name": "Sweeney Compton" } ], "greeting": "Hello, Medina Stanton! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e33faf168f6c4a328", "index": 541, "guid": "c8934615-3a1a-41e5-885b-8c9158403635", "isActive": true, "balance": "$1,511.48", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Jeri Morgan", "gender": "female", "company": "KINDALOO", "email": "jerimorgan@kindaloo.com", "phone": "+1 (936) 479-3297", "address": "298 Kossuth Place, Guthrie, Federated States Of Micronesia, 8307", "about": "Ut id nulla consequat eiusmod dolore sit quis excepteur est sint eu pariatur proident. Culpa ut minim eu consectetur voluptate aliqua qui anim eiusmod adipisicing proident irure est. Dolore ut magna occaecat aute irure veniam eiusmod excepteur ea dolor labore qui. Et ex quis sit cillum dolore dolore labore nulla ut. Mollit dolor quis cupidatat magna aute sint cillum in aute fugiat ipsum sunt aliqua enim. Dolore aliquip fugiat Lorem quis.\r\n", "registered": "2014-07-24T08:59:51-12:00", "latitude": -74.558237, "longitude": 94.400029, "tags": [ "aute", "ex", "eiusmod", "adipisicing", "ex", "duis", "eu" ], "friends": [ { "id": 0, "name": "Margery Meadows" }, { "id": 1, "name": "Barrera Paul" }, { "id": 2, "name": "Glenda Browning" } ], "greeting": "Hello, Jeri Morgan! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e3e0bc62d8bcdb273", "index": 542, "guid": "d7ad3dae-a8c4-42c4-a34a-a449a2d86ba4", "isActive": false, "balance": "$2,602.86", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Moon Knapp", "gender": "male", "company": "UNISURE", "email": "moonknapp@unisure.com", "phone": "+1 (896) 575-3492", "address": "929 Eaton Court, Albany, Oklahoma, 7663", "about": "Laborum commodo eiusmod et commodo nulla ut. Dolor ex adipisicing ullamco ullamco reprehenderit qui dolore excepteur veniam. Fugiat exercitation veniam aute ad ex. Aliquip cillum sit exercitation cupidatat eu non elit cillum.\r\n", "registered": "2014-02-02T04:16:49-13:00", "latitude": -79.22963, "longitude": -71.240935, "tags": [ "consequat", "excepteur", "do", "anim", "voluptate", "id", "est" ], "friends": [ { "id": 0, "name": "Hays Santos" }, { "id": 1, "name": "Schneider Frank" }, { "id": 2, "name": "Benita Bird" } ], "greeting": "Hello, Moon Knapp! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e617de442ca73dc86", "index": 543, "guid": "0ad6f2ba-7e59-4c99-bfd9-031c89f0d3a7", "isActive": false, "balance": "$2,644.30", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Cherie Bryan", "gender": "female", "company": "QUARX", "email": "cheriebryan@quarx.com", "phone": "+1 (846) 438-3412", "address": "811 Greene Avenue, Orick, Michigan, 5930", "about": "Labore consectetur velit velit incididunt. Labore sunt reprehenderit Lorem dolore consectetur elit. Eu occaecat deserunt excepteur nulla dolor tempor nulla ad.\r\n", "registered": "2014-09-22T22:36:02-12:00", "latitude": -52.451784, "longitude": 108.051885, "tags": [ "adipisicing", "ipsum", "labore", "Lorem", "ex", "quis", "enim" ], "friends": [ { "id": 0, "name": "Wagner Joyce" }, { "id": 1, "name": "Stark Wilcox" }, { "id": 2, "name": "Elnora Dawson" } ], "greeting": "Hello, Cherie Bryan! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eba988b0ada4a2cae", "index": 544, "guid": "73fde2dd-4098-4d72-a0f4-459996395cb3", "isActive": true, "balance": "$1,836.01", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "William Glover", "gender": "male", "company": "ZOXY", "email": "williamglover@zoxy.com", "phone": "+1 (897) 559-3685", "address": "471 Minna Street, Gracey, Kansas, 5587", "about": "Commodo ullamco fugiat fugiat exercitation exercitation duis laboris et. Fugiat anim velit deserunt aute anim voluptate. Cillum occaecat velit qui ea pariatur labore adipisicing. Enim ipsum officia eu labore amet culpa laboris amet commodo eiusmod esse do. Exercitation amet labore voluptate laboris laboris voluptate magna non pariatur nulla fugiat. Quis excepteur id eu cupidatat. Nulla laboris excepteur excepteur culpa mollit enim eiusmod et ut.\r\n", "registered": "2014-07-11T11:46:31-12:00", "latitude": 43.2546, "longitude": 42.850917, "tags": [ "ipsum", "nulla", "esse", "eiusmod", "adipisicing", "labore", "commodo" ], "friends": [ { "id": 0, "name": "Spears Mcknight" }, { "id": 1, "name": "Campos Harris" }, { "id": 2, "name": "Sheena Price" } ], "greeting": "Hello, William Glover! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ea7b917728be97232", "index": 545, "guid": "e253f307-011a-443f-8ceb-da0383e9c9ea", "isActive": false, "balance": "$2,296.35", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Trudy Mckee", "gender": "female", "company": "RECRISYS", "email": "trudymckee@recrisys.com", "phone": "+1 (962) 545-3188", "address": "538 Kathleen Court, Defiance, South Dakota, 6501", "about": "Eiusmod anim est mollit occaecat velit quis Lorem duis quis dolor. Aliqua et veniam labore minim minim laborum laboris nisi laboris. Eiusmod in pariatur ex id qui qui cupidatat non sit incididunt aute ut mollit. Cupidatat nisi ad deserunt anim. Dolor dolore in laboris duis.\r\n", "registered": "2014-02-13T10:01:39-13:00", "latitude": -89.654766, "longitude": 143.476382, "tags": [ "aute", "officia", "id", "anim", "ex", "laborum", "ad" ], "friends": [ { "id": 0, "name": "Waller Mcguire" }, { "id": 1, "name": "Chambers Gray" }, { "id": 2, "name": "Riley Sheppard" } ], "greeting": "Hello, Trudy Mckee! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eda8768ddd31dc189", "index": 546, "guid": "155a1db3-0442-401d-b644-4a5d10d96bd8", "isActive": true, "balance": "$1,751.98", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Clements Kaufman", "gender": "male", "company": "MARTGO", "email": "clementskaufman@martgo.com", "phone": "+1 (813) 445-3416", "address": "419 Freeman Street, Maxville, West Virginia, 7952", "about": "Eiusmod aliquip quis cupidatat velit consectetur. Dolor cupidatat ut irure duis amet officia. Mollit deserunt ad adipisicing esse ad tempor. Ullamco amet nulla laborum enim labore consequat cillum exercitation non excepteur fugiat Lorem. Pariatur velit proident voluptate commodo duis cillum magna est occaecat cupidatat cupidatat sint officia. Aute in reprehenderit non nulla culpa non nostrud duis culpa eu eu incididunt. Dolor exercitation adipisicing quis aliquip deserunt minim.\r\n", "registered": "2014-03-31T06:13:38-13:00", "latitude": -81.601461, "longitude": -15.049879, "tags": [ "ipsum", "velit", "anim", "reprehenderit", "id", "mollit", "proident" ], "friends": [ { "id": 0, "name": "Wheeler Chavez" }, { "id": 1, "name": "Greta Nichols" }, { "id": 2, "name": "Eileen Mathews" } ], "greeting": "Hello, Clements Kaufman! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e7c00e8bf441ffd50", "index": 547, "guid": "d07413e1-ec53-4400-bf44-4a6f926fd40c", "isActive": true, "balance": "$2,838.06", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Adams Young", "gender": "male", "company": "ZIDANT", "email": "adamsyoung@zidant.com", "phone": "+1 (971) 573-3896", "address": "904 Erasmus Street, Diaperville, Texas, 9299", "about": "Commodo adipisicing sit irure in adipisicing do officia ut. Consequat nulla aute voluptate do. Ipsum pariatur irure ea labore sit ex nostrud aliquip duis labore esse. Ex ea fugiat ea nulla velit laborum. Adipisicing velit voluptate ex aliqua reprehenderit do magna reprehenderit id ullamco consectetur id fugiat. Magna magna nulla ad ullamco laborum tempor veniam eu velit. Id consequat do ut et duis.\r\n", "registered": "2014-05-11T03:55:42-12:00", "latitude": 51.622418, "longitude": -132.861178, "tags": [ "qui", "nisi", "cillum", "sint", "ullamco", "ex", "tempor" ], "friends": [ { "id": 0, "name": "Haney Santana" }, { "id": 1, "name": "Lela Mcneil" }, { "id": 2, "name": "Opal Lang" } ], "greeting": "Hello, Adams Young! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ec9221be1ed8c9212", "index": 548, "guid": "e49e6336-24b2-4b5d-90fc-e1de19b8a563", "isActive": true, "balance": "$2,208.81", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Sanford Obrien", "gender": "male", "company": "DIGINETIC", "email": "sanfordobrien@diginetic.com", "phone": "+1 (889) 491-2338", "address": "710 High Street, Bowden, Oregon, 6848", "about": "Cillum ipsum enim minim do laboris deserunt occaecat. Id eiusmod cillum magna nisi velit exercitation eu ut proident ex fugiat in. Ullamco laborum quis aliqua adipisicing aliqua.\r\n", "registered": "2014-07-09T20:04:12-12:00", "latitude": 40.787495, "longitude": -95.949435, "tags": [ "cupidatat", "enim", "officia", "dolore", "officia", "nisi", "nostrud" ], "friends": [ { "id": 0, "name": "Donovan Todd" }, { "id": 1, "name": "Mandy Holcomb" }, { "id": 2, "name": "Alexander Bolton" } ], "greeting": "Hello, Sanford Obrien! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ef0608a60dd6d02fb", "index": 549, "guid": "b00306c7-b81f-4ce3-bd13-3507281f1e02", "isActive": false, "balance": "$1,245.37", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Arlene Wise", "gender": "female", "company": "ZOLARITY", "email": "arlenewise@zolarity.com", "phone": "+1 (833) 477-2257", "address": "425 Norfolk Street, Klondike, Nevada, 2836", "about": "Aute consectetur velit sint aute pariatur enim elit cillum tempor. Lorem ipsum incididunt minim consequat. Commodo nostrud eu qui do fugiat in excepteur adipisicing. Minim culpa non tempor aliqua sit sint exercitation nostrud anim incididunt ea aliquip.\r\n", "registered": "2014-05-31T05:07:47-12:00", "latitude": 51.08137, "longitude": -99.470698, "tags": [ "id", "sit", "aliqua", "ea", "laborum", "quis", "ad" ], "friends": [ { "id": 0, "name": "Petra Humphrey" }, { "id": 1, "name": "Levine Mclean" }, { "id": 2, "name": "Ada Calhoun" } ], "greeting": "Hello, Arlene Wise! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eaaa1567cb53bc33c", "index": 550, "guid": "0fc96ab2-8bd6-4fd3-985a-fde3733f498e", "isActive": false, "balance": "$3,095.80", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Susan Carroll", "gender": "female", "company": "ETERNIS", "email": "susancarroll@eternis.com", "phone": "+1 (916) 433-2985", "address": "221 Gardner Avenue, Bladensburg, Minnesota, 171", "about": "Ullamco voluptate non reprehenderit reprehenderit labore adipisicing fugiat veniam dolore nostrud proident. Officia nulla incididunt eiusmod voluptate veniam pariatur. Consequat do est consequat est dolore. Nisi in excepteur adipisicing ea sit qui in adipisicing veniam dolore. Adipisicing elit ad laborum exercitation ea id nisi et duis voluptate amet excepteur voluptate. Reprehenderit anim in cillum tempor labore exercitation eu.\r\n", "registered": "2014-05-10T05:39:16-12:00", "latitude": 85.158037, "longitude": 24.91218, "tags": [ "do", "officia", "proident", "duis", "incididunt", "sunt", "labore" ], "friends": [ { "id": 0, "name": "Peters Little" }, { "id": 1, "name": "Hartman Adkins" }, { "id": 2, "name": "Connie Alvarado" } ], "greeting": "Hello, Susan Carroll! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ed668c84106f01008", "index": 551, "guid": "7a453956-7fec-46e6-90b2-479f725f2bdc", "isActive": true, "balance": "$3,864.89", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Charles Wiggins", "gender": "male", "company": "AQUAFIRE", "email": "charleswiggins@aquafire.com", "phone": "+1 (967) 483-2526", "address": "446 Laurel Avenue, Tuttle, Missouri, 3260", "about": "Nostrud ut duis voluptate aute occaecat qui exercitation non fugiat. Mollit exercitation ex tempor fugiat fugiat minim officia ullamco deserunt fugiat nostrud consectetur. Dolore sint sunt eiusmod anim eiusmod aliquip incididunt. Nostrud exercitation deserunt aliquip reprehenderit elit do eu reprehenderit est. Nisi irure veniam elit duis qui eu sint.\r\n", "registered": "2014-06-17T13:32:43-12:00", "latitude": -22.20516, "longitude": -41.381521, "tags": [ "ut", "ea", "ipsum", "ad", "fugiat", "duis", "commodo" ], "friends": [ { "id": 0, "name": "Gale Oneal" }, { "id": 1, "name": "Betsy Lopez" }, { "id": 2, "name": "Latisha Osborn" } ], "greeting": "Hello, Charles Wiggins! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e334f3f6fb2564e13", "index": 552, "guid": "73f09f98-08eb-4320-b98d-52cf722c2709", "isActive": true, "balance": "$2,176.25", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Mills Duran", "gender": "male", "company": "ZILLACTIC", "email": "millsduran@zillactic.com", "phone": "+1 (894) 524-3317", "address": "894 Pulaski Street, Greensburg, Rhode Island, 9511", "about": "Proident aliquip excepteur excepteur aliqua fugiat irure. Anim do cillum culpa aliqua ullamco adipisicing ad labore. Irure magna ut mollit est aute do dolore sunt nulla amet.\r\n", "registered": "2014-01-15T18:16:01-13:00", "latitude": -50.991173, "longitude": 133.865016, "tags": [ "deserunt", "nisi", "qui", "culpa", "sint", "ad", "ullamco" ], "friends": [ { "id": 0, "name": "Nelson Russo" }, { "id": 1, "name": "Estes Moran" }, { "id": 2, "name": "Dena Rios" } ], "greeting": "Hello, Mills Duran! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eed97ffd784153670", "index": 553, "guid": "900d971d-2242-4f10-9027-c1c14e16be06", "isActive": false, "balance": "$3,855.95", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Aurora Rivas", "gender": "female", "company": "SNACKTION", "email": "aurorarivas@snacktion.com", "phone": "+1 (969) 553-2351", "address": "571 Bergen Avenue, Bourg, Florida, 1661", "about": "Nisi sint dolore labore dolor ad in laborum minim officia. Ex sit qui velit velit et occaecat adipisicing pariatur ullamco id veniam incididunt. Et nulla dolore occaecat proident veniam deserunt aute dolor. Aliquip incididunt ad reprehenderit velit laborum aute irure mollit labore tempor officia Lorem. Fugiat dolore incididunt deserunt Lorem ullamco laboris labore sint.\r\n", "registered": "2014-08-01T11:32:41-12:00", "latitude": -6.130538, "longitude": -140.625993, "tags": [ "exercitation", "aute", "pariatur", "cillum", "do", "elit", "sint" ], "friends": [ { "id": 0, "name": "Maricela Leblanc" }, { "id": 1, "name": "Vazquez Navarro" }, { "id": 2, "name": "Kent Pratt" } ], "greeting": "Hello, Aurora Rivas! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e1c0d42913e03bcc4", "index": 554, "guid": "efcb32b3-3c88-46d9-99ec-9832e2801e23", "isActive": false, "balance": "$2,266.78", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Nola Mercer", "gender": "female", "company": "XYLAR", "email": "nolamercer@xylar.com", "phone": "+1 (999) 421-3685", "address": "992 College Place, Wadsworth, North Carolina, 8165", "about": "Deserunt nisi et nostrud ea incididunt excepteur et culpa consequat ullamco quis sit sit nostrud. Cillum reprehenderit consectetur sint laboris excepteur ad in incididunt cillum ut duis eiusmod qui esse. Aliqua laborum tempor consequat do.\r\n", "registered": "2014-03-18T15:17:58-13:00", "latitude": 30.875066, "longitude": 122.163185, "tags": [ "excepteur", "cupidatat", "in", "ut", "velit", "laborum", "dolore" ], "friends": [ { "id": 0, "name": "Blankenship Chan" }, { "id": 1, "name": "Jan Carter" }, { "id": 2, "name": "Parsons Cantu" } ], "greeting": "Hello, Nola Mercer! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e95d49638ee1da528", "index": 555, "guid": "e92ceba5-279a-48d5-a95e-0bb6a05f6436", "isActive": false, "balance": "$2,036.99", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Lorna Alvarez", "gender": "female", "company": "JUNIPOOR", "email": "lornaalvarez@junipoor.com", "phone": "+1 (902) 526-3409", "address": "378 Franklin Avenue, Staples, New Hampshire, 3379", "about": "Esse aliqua deserunt culpa tempor adipisicing anim aliquip velit laborum aliquip sunt. Ex dolore occaecat eu reprehenderit laborum. Eu occaecat incididunt magna elit ullamco qui. Occaecat id quis voluptate adipisicing irure voluptate laborum aliquip. Nisi nulla veniam est proident nostrud laborum aliqua cupidatat dolore occaecat tempor.\r\n", "registered": "2014-08-18T06:06:33-12:00", "latitude": 85.33054, "longitude": 166.048065, "tags": [ "aliquip", "cupidatat", "incididunt", "ullamco", "irure", "deserunt", "laboris" ], "friends": [ { "id": 0, "name": "Renee Benjamin" }, { "id": 1, "name": "Earline Strickland" }, { "id": 2, "name": "Gibson Schroeder" } ], "greeting": "Hello, Lorna Alvarez! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e7d451f3540b0ac05", "index": 556, "guid": "3e0ce106-38f8-4cd2-bb94-543d9c1a48ac", "isActive": false, "balance": "$2,512.79", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Wanda Barker", "gender": "female", "company": "VANTAGE", "email": "wandabarker@vantage.com", "phone": "+1 (949) 512-2201", "address": "601 Hamilton Walk, Emory, Arkansas, 785", "about": "Proident velit in tempor enim culpa laboris aute exercitation exercitation proident excepteur. Laborum dolore tempor commodo reprehenderit excepteur veniam proident. Ex excepteur exercitation magna excepteur sint quis incididunt tempor anim non excepteur cupidatat reprehenderit.\r\n", "registered": "2014-03-11T05:20:10-13:00", "latitude": 67.451267, "longitude": 154.371309, "tags": [ "dolor", "commodo", "exercitation", "exercitation", "elit", "ad", "fugiat" ], "friends": [ { "id": 0, "name": "Staci Schultz" }, { "id": 1, "name": "Powell Torres" }, { "id": 2, "name": "Vinson Boyd" } ], "greeting": "Hello, Wanda Barker! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eb893ea076c9f7315", "index": 557, "guid": "ddd266e2-9f24-409d-aa90-326464dace4a", "isActive": false, "balance": "$3,279.65", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Webb Franco", "gender": "male", "company": "APPLIDEC", "email": "webbfranco@applidec.com", "phone": "+1 (823) 511-2306", "address": "946 Woodrow Court, Blanford, Iowa, 2432", "about": "Anim dolor proident quis quis esse ea eiusmod proident occaecat. Ut irure est proident dolor eiusmod aute dolor nostrud qui deserunt. Ut magna reprehenderit dolore non laboris aliqua.\r\n", "registered": "2014-08-08T03:12:14-12:00", "latitude": 51.670203, "longitude": 167.153534, "tags": [ "aliquip", "aliquip", "aute", "quis", "culpa", "aliqua", "velit" ], "friends": [ { "id": 0, "name": "Rivas Houston" }, { "id": 1, "name": "Baxter Ratliff" }, { "id": 2, "name": "Tanisha Benton" } ], "greeting": "Hello, Webb Franco! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1eae7b420668f92aaa", "index": 558, "guid": "6eb183c3-3708-434b-8c21-e5743d51f8f5", "isActive": false, "balance": "$2,256.02", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Daphne Roman", "gender": "female", "company": "AUSTEX", "email": "daphneroman@austex.com", "phone": "+1 (879) 580-2514", "address": "342 School Lane, Bartonsville, Nebraska, 5956", "about": "Irure proident adipisicing ea labore Lorem reprehenderit quis duis. Nisi ex laborum anim tempor. Dolor cupidatat nostrud cillum aliqua aliquip incididunt ut amet. Anim et elit sunt sit in labore eiusmod elit. Amet consectetur elit commodo magna consequat ullamco esse laborum fugiat eu. Dolore minim enim culpa occaecat laborum consequat eiusmod consectetur incididunt laborum mollit anim. Mollit laborum ipsum pariatur et nulla commodo enim quis eiusmod nostrud minim ea dolore aute.\r\n", "registered": "2014-02-23T04:29:12-13:00", "latitude": 75.480001, "longitude": 149.078757, "tags": [ "fugiat", "dolor", "elit", "sint", "cupidatat", "qui", "duis" ], "friends": [ { "id": 0, "name": "Farley Schneider" }, { "id": 1, "name": "Miranda Brady" }, { "id": 2, "name": "Blackwell Shannon" } ], "greeting": "Hello, Daphne Roman! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e7ce6e47546976e4b", "index": 559, "guid": "2b3ee51e-7400-4b27-890d-b2b9aab069a5", "isActive": false, "balance": "$2,268.01", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Mendoza Coleman", "gender": "male", "company": "HANDSHAKE", "email": "mendozacoleman@handshake.com", "phone": "+1 (800) 527-2725", "address": "734 Sandford Street, Topaz, District Of Columbia, 1283", "about": "Occaecat irure proident non consectetur consequat aliqua deserunt excepteur laboris est ex ipsum duis non. Consectetur eiusmod incididunt in nostrud. Aute officia voluptate aliqua dolore labore velit Lorem qui nulla nisi Lorem laboris. Laboris elit nisi aute amet non enim Lorem excepteur voluptate eu commodo deserunt nostrud consectetur. Eiusmod eu eiusmod incididunt culpa veniam. Id id proident sint enim ipsum exercitation commodo irure mollit nulla minim adipisicing do.\r\n", "registered": "2014-01-21T14:49:20-13:00", "latitude": 69.278263, "longitude": -73.563067, "tags": [ "nulla", "qui", "tempor", "incididunt", "pariatur", "quis", "occaecat" ], "friends": [ { "id": 0, "name": "Sandy Ochoa" }, { "id": 1, "name": "Ortiz Mcclain" }, { "id": 2, "name": "Nannie Lowe" } ], "greeting": "Hello, Mendoza Coleman! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ea624884bb620fd57", "index": 560, "guid": "19144c8e-955d-4ff2-b86d-0a464ec8bb88", "isActive": false, "balance": "$3,571.30", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Rosalyn Hardin", "gender": "female", "company": "FIBEROX", "email": "rosalynhardin@fiberox.com", "phone": "+1 (915) 470-3397", "address": "393 Scholes Street, Coldiron, New Jersey, 1782", "about": "Incididunt officia enim dolore adipisicing mollit esse enim fugiat est occaecat minim tempor ullamco. Ea et cillum laboris aute pariatur cillum ullamco dolor. In adipisicing officia deserunt anim mollit sint anim ex voluptate excepteur. Voluptate veniam voluptate elit tempor nulla ad consequat occaecat fugiat id reprehenderit.\r\n", "registered": "2014-05-03T06:35:17-12:00", "latitude": -26.733472, "longitude": 20.516439, "tags": [ "nulla", "aliquip", "aliquip", "in", "culpa", "mollit", "esse" ], "friends": [ { "id": 0, "name": "Talley Watkins" }, { "id": 1, "name": "Lesa Good" }, { "id": 2, "name": "Paulette Cohen" } ], "greeting": "Hello, Rosalyn Hardin! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ec227a868ac90933a", "index": 561, "guid": "82533afe-5493-4df8-a256-d914daac3864", "isActive": false, "balance": "$3,626.05", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Navarro Gamble", "gender": "male", "company": "NORSUP", "email": "navarrogamble@norsup.com", "phone": "+1 (925) 510-3722", "address": "351 Campus Place, Kennedyville, Palau, 8231", "about": "Lorem sunt fugiat nulla veniam minim officia adipisicing exercitation labore laboris. In aliquip et nisi irure occaecat magna consequat adipisicing do cupidatat laboris nulla ea. Proident minim mollit do sit minim eu fugiat id consectetur quis dolor pariatur dolor. Fugiat laboris do pariatur exercitation nisi. Mollit consectetur et est Lorem officia consequat sunt ullamco ut id sunt aute sit. Culpa ipsum consectetur sunt aute laborum fugiat quis.\r\n", "registered": "2014-09-04T06:34:46-12:00", "latitude": 42.210418, "longitude": 80.443436, "tags": [ "proident", "amet", "reprehenderit", "pariatur", "consequat", "nostrud", "non" ], "friends": [ { "id": 0, "name": "Summers Haynes" }, { "id": 1, "name": "Mcgee Gibson" }, { "id": 2, "name": "Hallie Roth" } ], "greeting": "Hello, Navarro Gamble! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e698b674e597967db", "index": 562, "guid": "757097fd-f249-4ec1-b5aa-370058f3f050", "isActive": false, "balance": "$3,911.64", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Isabelle Camacho", "gender": "female", "company": "EQUITAX", "email": "isabellecamacho@equitax.com", "phone": "+1 (844) 560-3631", "address": "820 Humboldt Street, Dorneyville, Puerto Rico, 9333", "about": "Fugiat exercitation est dolore commodo sunt magna consectetur esse Lorem et nostrud. Aute magna amet voluptate est mollit aliqua pariatur amet nisi irure. Dolore velit adipisicing veniam non eiusmod sit laboris velit non aute.\r\n", "registered": "2014-04-12T03:58:38-12:00", "latitude": 15.777481, "longitude": -118.648719, "tags": [ "amet", "cupidatat", "ipsum", "veniam", "enim", "duis", "nisi" ], "friends": [ { "id": 0, "name": "Vilma Branch" }, { "id": 1, "name": "Frye Fuller" }, { "id": 2, "name": "Lara Holden" } ], "greeting": "Hello, Isabelle Camacho! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ee62d0ad9488ea853", "index": 563, "guid": "816037ca-81cb-4f1f-b75f-ebb99f6a1ae2", "isActive": true, "balance": "$3,996.98", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Cheryl Butler", "gender": "female", "company": "DIGIAL", "email": "cherylbutler@digial.com", "phone": "+1 (965) 405-2876", "address": "448 Emmons Avenue, Cuylerville, California, 4757", "about": "Proident reprehenderit mollit eiusmod elit ullamco proident adipisicing laboris minim. Fugiat minim exercitation cillum voluptate excepteur laboris aliquip. Adipisicing ex consectetur nulla anim. Qui proident ullamco ex non anim est nisi culpa proident aute. Non ipsum culpa enim sint esse est laborum non nulla cillum.\r\n", "registered": "2014-03-08T16:56:39-13:00", "latitude": 4.371529, "longitude": -115.651011, "tags": [ "duis", "amet", "excepteur", "officia", "consectetur", "sit", "est" ], "friends": [ { "id": 0, "name": "Tracie Horton" }, { "id": 1, "name": "Lindsey Molina" }, { "id": 2, "name": "Fulton Le" } ], "greeting": "Hello, Cheryl Butler! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ee161054311cc47bb", "index": 564, "guid": "5a95edd8-e157-44e6-9601-9334c79ef70f", "isActive": false, "balance": "$3,558.85", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Rose Summers", "gender": "female", "company": "GORGANIC", "email": "rosesummers@gorganic.com", "phone": "+1 (987) 588-2124", "address": "123 Withers Street, Brandywine, Vermont, 172", "about": "Consequat quis veniam eiusmod qui dolore deserunt et incididunt nostrud nulla ad. Nostrud adipisicing officia pariatur adipisicing eu ut incididunt in elit cillum laborum. Culpa officia quis velit est id mollit nostrud do magna adipisicing. Consequat duis consequat nulla commodo cillum cupidatat proident do velit laboris in nulla pariatur ipsum. Consectetur quis pariatur reprehenderit nisi dolor. Dolore duis incididunt magna amet enim aliqua culpa non amet culpa. Ipsum do dolor sint aliqua.\r\n", "registered": "2014-02-10T00:05:56-13:00", "latitude": -59.730667, "longitude": 65.10136, "tags": [ "sunt", "aliqua", "eu", "commodo", "ullamco", "esse", "ullamco" ], "friends": [ { "id": 0, "name": "Wood Gardner" }, { "id": 1, "name": "Sherri Wallace" }, { "id": 2, "name": "Dionne Johnson" } ], "greeting": "Hello, Rose Summers! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e27e54f0b2e423f3b", "index": 565, "guid": "f545209d-46d4-43c1-b964-24aec0a7147e", "isActive": false, "balance": "$2,370.37", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Guerra Conner", "gender": "male", "company": "OULU", "email": "guerraconner@oulu.com", "phone": "+1 (850) 475-2115", "address": "551 Berriman Street, Osmond, Indiana, 5850", "about": "Eu deserunt ipsum Lorem Lorem eiusmod nulla sunt labore ut labore nostrud amet deserunt. Consequat exercitation dolor ea dolore deserunt sit irure aliqua in sint dolor. Cillum qui consequat dolore sunt et fugiat eu dolor Lorem id sint sunt irure. Nostrud consequat esse nostrud ex officia.\r\n", "registered": "2014-03-07T01:52:03-13:00", "latitude": 70.688953, "longitude": 56.799413, "tags": [ "pariatur", "reprehenderit", "sint", "quis", "velit", "sit", "nisi" ], "friends": [ { "id": 0, "name": "Good Finch" }, { "id": 1, "name": "Sandoval Haney" }, { "id": 2, "name": "Molina Martin" } ], "greeting": "Hello, Guerra Conner! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e767decf1388d6e47", "index": 566, "guid": "5fb1ac3e-0f2d-4731-ba85-b78d4f043350", "isActive": true, "balance": "$1,296.86", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Ana Crosby", "gender": "female", "company": "COMDOM", "email": "anacrosby@comdom.com", "phone": "+1 (860) 524-2230", "address": "761 Vernon Avenue, Bascom, Illinois, 7782", "about": "Cillum reprehenderit adipisicing nulla excepteur exercitation nostrud. In eiusmod sit consequat sunt excepteur elit. Exercitation labore culpa magna mollit enim commodo laboris aute quis magna incididunt officia eiusmod.\r\n", "registered": "2014-09-13T21:46:02-12:00", "latitude": -76.914576, "longitude": 30.758824, "tags": [ "minim", "do", "laborum", "ea", "mollit", "anim", "elit" ], "friends": [ { "id": 0, "name": "Melody Lloyd" }, { "id": 1, "name": "Rosa Lester" }, { "id": 2, "name": "Nikki Whitfield" } ], "greeting": "Hello, Ana Crosby! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1e9d5f73788f1b60d2", "index": 567, "guid": "c82f9901-4d6b-481a-bb13-96af69d0ff3a", "isActive": false, "balance": "$1,377.53", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Nora Evans", "gender": "female", "company": "FLOTONIC", "email": "noraevans@flotonic.com", "phone": "+1 (835) 403-3245", "address": "999 India Street, Lowgap, South Carolina, 6593", "about": "Ex non est qui cillum adipisicing veniam non ipsum consectetur tempor laborum. Cillum nostrud aute nulla sunt consectetur eiusmod anim duis id non nisi. Velit nostrud anim non consequat.\r\n", "registered": "2014-05-27T14:31:59-12:00", "latitude": 29.468917, "longitude": -124.196183, "tags": [ "fugiat", "adipisicing", "non", "veniam", "aliqua", "sit", "duis" ], "friends": [ { "id": 0, "name": "Hyde Blackburn" }, { "id": 1, "name": "Carlene Walter" }, { "id": 2, "name": "Maria Underwood" } ], "greeting": "Hello, Nora Evans! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e3d43b3269a92e816", "index": 568, "guid": "8ecdbd16-ba35-490d-ae58-502af67a0071", "isActive": true, "balance": "$1,015.88", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Haynes William", "gender": "male", "company": "KYAGURU", "email": "hayneswilliam@kyaguru.com", "phone": "+1 (826) 507-2162", "address": "984 River Street, Ezel, American Samoa, 5142", "about": "Culpa eu irure officia velit anim reprehenderit enim. Dolore aliquip magna in cupidatat ea proident ipsum nostrud. Eu reprehenderit ex Lorem ut in consequat consequat deserunt sit non veniam dolor. Magna dolor enim voluptate incididunt in.\r\n", "registered": "2014-04-30T18:16:39-12:00", "latitude": 29.740384, "longitude": 82.944108, "tags": [ "minim", "ipsum", "voluptate", "ipsum", "consequat", "irure", "proident" ], "friends": [ { "id": 0, "name": "Stone Mccarty" }, { "id": 1, "name": "Walls Mullins" }, { "id": 2, "name": "Bruce Sweet" } ], "greeting": "Hello, Haynes William! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e839e2f8f84b738ca", "index": 569, "guid": "4c6b9365-3779-4f0b-afe3-9ae5aff1fd98", "isActive": false, "balance": "$2,862.16", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Booth Watts", "gender": "male", "company": "XOGGLE", "email": "boothwatts@xoggle.com", "phone": "+1 (878) 476-3488", "address": "230 Celeste Court, Bakersville, Delaware, 6248", "about": "Nulla quis nulla mollit minim. Velit proident qui culpa minim voluptate elit amet reprehenderit aute mollit magna. Veniam sunt officia sint irure voluptate voluptate proident. Eu duis aliqua nostrud nisi commodo irure. Veniam minim velit veniam pariatur do. Ipsum excepteur nulla quis culpa amet velit nisi ea minim amet tempor consequat.\r\n", "registered": "2014-07-25T05:46:49-12:00", "latitude": -37.450415, "longitude": 62.416093, "tags": [ "labore", "aliqua", "proident", "eiusmod", "in", "eu", "Lorem" ], "friends": [ { "id": 0, "name": "Emily Moreno" }, { "id": 1, "name": "Hunt Mcmillan" }, { "id": 2, "name": "Laura Greer" } ], "greeting": "Hello, Booth Watts! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ea02705141ae9fead", "index": 570, "guid": "d1664ba2-e163-4ec6-9a57-648545ad0bbb", "isActive": false, "balance": "$2,302.75", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Hester Barron", "gender": "female", "company": "NORALI", "email": "hesterbarron@norali.com", "phone": "+1 (993) 520-3985", "address": "882 Herbert Street, Starks, Pennsylvania, 7483", "about": "Sunt non elit duis tempor eu eiusmod ut sunt. Adipisicing laboris fugiat commodo aute fugiat tempor esse excepteur do dolor cupidatat consectetur consequat ullamco. Laboris ea nisi reprehenderit ut exercitation ex pariatur duis dolore mollit. Esse veniam do ex id ad et ex laboris dolor. Ex sint cillum sint nostrud ad cillum anim occaecat non tempor aute. Nulla reprehenderit cillum aliqua aute aute.\r\n", "registered": "2014-08-29T03:50:49-12:00", "latitude": 51.248017, "longitude": -162.895125, "tags": [ "cupidatat", "voluptate", "incididunt", "nisi", "tempor", "minim", "officia" ], "friends": [ { "id": 0, "name": "Elsa Flynn" }, { "id": 1, "name": "Blake Rasmussen" }, { "id": 2, "name": "Roman Carson" } ], "greeting": "Hello, Hester Barron! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ec05698b51ea9b26c", "index": 571, "guid": "d8d430d0-3829-46aa-9c0d-35a5254e7558", "isActive": false, "balance": "$1,388.80", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Morton Michael", "gender": "male", "company": "TUBALUM", "email": "mortonmichael@tubalum.com", "phone": "+1 (852) 547-3720", "address": "329 Jodie Court, Freelandville, Georgia, 5730", "about": "Et id laboris sunt Lorem. Officia ipsum qui laborum cillum. Elit proident laboris excepteur eiusmod laborum cillum ex laboris. Et fugiat elit labore ipsum dolor veniam culpa consequat. Duis deserunt dolore veniam ad. Exercitation sint aliqua tempor cillum ea aute ea adipisicing aute. Do ut et exercitation enim laborum enim sunt ad aliqua nostrud.\r\n", "registered": "2014-08-21T11:46:09-12:00", "latitude": 35.717565, "longitude": 24.984324, "tags": [ "pariatur", "nisi", "anim", "ipsum", "sunt", "consequat", "dolor" ], "friends": [ { "id": 0, "name": "Ashlee Bond" }, { "id": 1, "name": "Winnie Banks" }, { "id": 2, "name": "Aida Conley" } ], "greeting": "Hello, Morton Michael! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ecd833533360a4352", "index": 572, "guid": "285f26e9-747d-4aee-a0c3-c242356efaf9", "isActive": true, "balance": "$3,251.03", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Trevino Riddle", "gender": "male", "company": "COMTEST", "email": "trevinoriddle@comtest.com", "phone": "+1 (930) 450-2884", "address": "723 Oxford Walk, Rowe, North Dakota, 1954", "about": "Ipsum nostrud quis qui ut nisi qui tempor dolor ad quis anim esse. Anim Lorem officia sunt deserunt esse sunt et culpa adipisicing reprehenderit. Laborum ipsum aliqua cillum dolor nisi sint duis eu exercitation sit dolor ipsum laborum.\r\n", "registered": "2014-06-08T21:12:09-12:00", "latitude": -78.430353, "longitude": 26.225809, "tags": [ "Lorem", "veniam", "amet", "aliquip", "in", "duis", "proident" ], "friends": [ { "id": 0, "name": "Munoz Rosa" }, { "id": 1, "name": "Sheppard Palmer" }, { "id": 2, "name": "Emilia Mckenzie" } ], "greeting": "Hello, Trevino Riddle! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e0c5685e9fac74eff", "index": 573, "guid": "1b77f0dc-ce5b-47f0-be8b-0aea203bb797", "isActive": true, "balance": "$1,323.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Clayton Koch", "gender": "male", "company": "ORBAXTER", "email": "claytonkoch@orbaxter.com", "phone": "+1 (995) 521-2478", "address": "992 Sedgwick Place, Nanafalia, Louisiana, 1829", "about": "Tempor consectetur consectetur officia in cillum. Voluptate culpa mollit non ad ullamco quis officia voluptate culpa consequat. Eu laboris esse elit excepteur veniam nulla laborum culpa Lorem irure commodo qui consectetur occaecat. Ullamco occaecat cillum laborum duis sit occaecat dolore eu aliquip minim nostrud laborum velit non. Occaecat nulla voluptate ad laborum quis culpa fugiat. Veniam ipsum et sunt dolore in commodo nulla magna ullamco. Cillum do incididunt nostrud eu ad ea dolore deserunt ex excepteur do ipsum voluptate.\r\n", "registered": "2014-01-08T20:27:07-13:00", "latitude": -76.053966, "longitude": 34.901163, "tags": [ "sunt", "fugiat", "voluptate", "labore", "in", "nulla", "velit" ], "friends": [ { "id": 0, "name": "Ester Goodman" }, { "id": 1, "name": "Mara Ray" }, { "id": 2, "name": "Tamika Bradshaw" } ], "greeting": "Hello, Clayton Koch! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ebfee9e9bf3daca54", "index": 574, "guid": "7752e0b7-1b4a-4446-8d04-111afe998b2f", "isActive": true, "balance": "$3,595.82", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Roslyn King", "gender": "female", "company": "QUINEX", "email": "roslynking@quinex.com", "phone": "+1 (893) 443-2047", "address": "564 Bogart Street, Gasquet, Northern Mariana Islands, 6878", "about": "Est aliqua culpa minim laboris cillum sint cupidatat duis est. Ex qui ut aute fugiat nisi nostrud. Qui ullamco nisi nostrud enim cillum nisi sit enim. Minim labore do commodo tempor eu cupidatat et aliqua. Enim ut nisi esse laboris exercitation.\r\n", "registered": "2014-07-17T03:57:21-12:00", "latitude": 81.831576, "longitude": 74.154208, "tags": [ "laborum", "occaecat", "nostrud", "dolor", "qui", "deserunt", "ad" ], "friends": [ { "id": 0, "name": "Turner Bender" }, { "id": 1, "name": "Francine Garza" }, { "id": 2, "name": "Jerri Nolan" } ], "greeting": "Hello, Roslyn King! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ef069b8130671eaa3", "index": 575, "guid": "2e5f6c3b-62be-4d62-9003-e38a4c32271b", "isActive": false, "balance": "$1,290.35", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Travis Cote", "gender": "male", "company": "BILLMED", "email": "traviscote@billmed.com", "phone": "+1 (808) 452-3891", "address": "644 Oriental Court, Ruckersville, Colorado, 2428", "about": "Culpa exercitation officia pariatur sint elit deserunt ad elit aliqua ex. Nisi enim id minim magna nostrud sint enim nulla sunt laboris dolore ullamco mollit eu. Consectetur consequat exercitation eu enim culpa ex amet magna ipsum. Amet veniam irure sit do deserunt sit duis veniam nostrud laboris.\r\n", "registered": "2014-02-24T14:47:02-13:00", "latitude": -54.250645, "longitude": 161.911823, "tags": [ "sunt", "do", "enim", "do", "adipisicing", "mollit", "ex" ], "friends": [ { "id": 0, "name": "Amber Delacruz" }, { "id": 1, "name": "Schwartz Sanders" }, { "id": 2, "name": "Jacobs Ewing" } ], "greeting": "Hello, Travis Cote! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e9d72740cf26ff04c", "index": 576, "guid": "57e71fe2-ed23-4f4d-8f8b-235892d30a22", "isActive": false, "balance": "$2,535.04", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Welch Sexton", "gender": "male", "company": "ZILLACOM", "email": "welchsexton@zillacom.com", "phone": "+1 (902) 566-3908", "address": "394 Remsen Avenue, Dalton, Idaho, 2090", "about": "In commodo aliquip aliquip quis exercitation ex deserunt cupidatat sunt laborum nostrud. Laborum aliquip adipisicing ullamco amet dolor labore consequat pariatur adipisicing veniam pariatur consectetur sint sint. Deserunt elit cupidatat commodo qui culpa nisi deserunt et cillum elit est laboris aute culpa. Qui pariatur magna proident deserunt pariatur excepteur. Id ex labore irure anim laboris in ex laboris sit non eu qui nostrud. Esse ullamco elit dolore occaecat proident adipisicing ut ut eiusmod irure eiusmod elit excepteur. Fugiat enim veniam fugiat Lorem.\r\n", "registered": "2014-07-07T20:12:36-12:00", "latitude": 87.724245, "longitude": -161.208033, "tags": [ "reprehenderit", "laboris", "sint", "sint", "nulla", "mollit", "sunt" ], "friends": [ { "id": 0, "name": "Carolyn Salinas" }, { "id": 1, "name": "Billie Alexander" }, { "id": 2, "name": "Carpenter Lane" } ], "greeting": "Hello, Welch Sexton! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e383ec5adc2191153", "index": 577, "guid": "1edb9552-3342-434a-8155-ece8a77a2985", "isActive": true, "balance": "$3,786.66", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Blair Kline", "gender": "male", "company": "NETPLODE", "email": "blairkline@netplode.com", "phone": "+1 (908) 520-2110", "address": "956 Brown Street, Coultervillle, Marshall Islands, 1045", "about": "Ipsum esse aute in deserunt ipsum. Sit laborum fugiat proident sit esse magna Lorem nisi. Aute elit in deserunt ullamco est. Nostrud aliqua amet ut elit fugiat aliquip exercitation mollit velit laborum ea. Veniam do irure id ea cillum in qui. Esse pariatur exercitation aliqua et pariatur ad culpa proident est ea do velit cupidatat amet. Aliquip dolore excepteur aliqua aliqua dolore sit id adipisicing occaecat laboris.\r\n", "registered": "2014-02-09T12:38:44-13:00", "latitude": -14.517932, "longitude": 64.292719, "tags": [ "veniam", "excepteur", "pariatur", "fugiat", "amet", "adipisicing", "occaecat" ], "friends": [ { "id": 0, "name": "Taylor Lowery" }, { "id": 1, "name": "Palmer Dodson" }, { "id": 2, "name": "King Russell" } ], "greeting": "Hello, Blair Kline! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e789f06f2016da499", "index": 578, "guid": "be562d11-1846-43dd-afb7-fb35cdbaacda", "isActive": true, "balance": "$2,358.01", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Amelia Reese", "gender": "female", "company": "GEOFARM", "email": "ameliareese@geofarm.com", "phone": "+1 (969) 434-2679", "address": "492 Beayer Place, Hall, New York, 5764", "about": "Dolor exercitation nulla mollit mollit aliquip incididunt laborum commodo pariatur aute adipisicing. Exercitation dolore voluptate aute magna. Pariatur mollit elit irure aliqua excepteur aliquip esse eiusmod sunt velit cillum. Et dolore amet velit sit incididunt sit laborum et sint. Dolore do veniam consequat cillum ut irure. Laborum proident ut excepteur ullamco commodo ad laborum proident commodo. Anim incididunt in et enim excepteur aliqua incididunt.\r\n", "registered": "2014-05-11T21:40:56-12:00", "latitude": 68.072833, "longitude": -177.201869, "tags": [ "consequat", "ut", "aliquip", "ad", "nostrud", "id", "duis" ], "friends": [ { "id": 0, "name": "Marshall Short" }, { "id": 1, "name": "Joseph Cameron" }, { "id": 2, "name": "Andrews Lawrence" } ], "greeting": "Hello, Amelia Reese! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1e135e5e67ec7c4acf", "index": 579, "guid": "9160c07a-d6b0-4e8a-a9c5-1df72d194ea6", "isActive": false, "balance": "$2,519.60", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Janine Small", "gender": "female", "company": "RUBADUB", "email": "janinesmall@rubadub.com", "phone": "+1 (994) 479-2019", "address": "394 Terrace Place, Snelling, Guam, 4819", "about": "Occaecat elit proident incididunt cillum velit ex consequat Lorem in laboris Lorem. Eu sint minim dolor non deserunt Lorem sint dolore ea amet sunt aliquip sunt labore. Irure quis consequat officia irure sint anim voluptate. Tempor eiusmod occaecat sint veniam occaecat occaecat.\r\n", "registered": "2014-03-17T19:06:45-13:00", "latitude": -72.027697, "longitude": -27.352523, "tags": [ "voluptate", "sint", "adipisicing", "proident", "nostrud", "ad", "sunt" ], "friends": [ { "id": 0, "name": "Caroline Wilkins" }, { "id": 1, "name": "Gomez Frye" }, { "id": 2, "name": "Johns Medina" } ], "greeting": "Hello, Janine Small! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1eb66161a969b19cff", "index": 580, "guid": "4b7b931f-d755-4e0a-b0fb-dafdebf1dad7", "isActive": false, "balance": "$1,187.26", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Minerva Terry", "gender": "female", "company": "RETROTEX", "email": "minervaterry@retrotex.com", "phone": "+1 (913) 494-2456", "address": "636 Hyman Court, Tilden, Virgin Islands, 8950", "about": "Ut et exercitation esse incididunt magna adipisicing est velit aute et. Quis sint velit reprehenderit dolore nisi Lorem non velit excepteur nostrud est. Est cillum pariatur consectetur aute veniam ea magna. Voluptate et reprehenderit occaecat laborum irure.\r\n", "registered": "2014-07-31T16:20:58-12:00", "latitude": -8.608129, "longitude": 39.389196, "tags": [ "proident", "eiusmod", "irure", "sit", "reprehenderit", "laboris", "cillum" ], "friends": [ { "id": 0, "name": "Francesca Mccullough" }, { "id": 1, "name": "Mariana Manning" }, { "id": 2, "name": "Mitzi Langley" } ], "greeting": "Hello, Minerva Terry! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ecb793c61840b5fa6", "index": 581, "guid": "327c0450-ece4-427d-9f51-f2cc09459184", "isActive": false, "balance": "$2,150.95", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Kelley Jackson", "gender": "male", "company": "OPPORTECH", "email": "kelleyjackson@opportech.com", "phone": "+1 (854) 597-2971", "address": "902 Diamond Street, Caspar, Massachusetts, 4248", "about": "Ad ex reprehenderit velit reprehenderit anim nisi non nisi ad. Proident irure in duis irure id pariatur adipisicing deserunt. Irure enim labore deserunt excepteur in velit officia duis. Cillum ullamco ea est cupidatat nisi id officia laborum Lorem qui eu aute consequat laborum. Reprehenderit laboris nostrud mollit reprehenderit minim in fugiat. Magna veniam nisi velit ipsum ad occaecat excepteur minim minim proident deserunt.\r\n", "registered": "2014-04-26T23:38:52-12:00", "latitude": 39.545109, "longitude": 125.552345, "tags": [ "id", "magna", "labore", "qui", "pariatur", "exercitation", "minim" ], "friends": [ { "id": 0, "name": "Leon Grant" }, { "id": 1, "name": "Walton Hatfield" }, { "id": 2, "name": "Maggie Hodges" } ], "greeting": "Hello, Kelley Jackson! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1e9cca1bb001022b35", "index": 582, "guid": "9515a69f-1359-496f-97a6-2c1526facb3e", "isActive": true, "balance": "$1,129.96", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Elena Trevino", "gender": "female", "company": "LUNCHPAD", "email": "elenatrevino@lunchpad.com", "phone": "+1 (886) 449-3326", "address": "657 Whitney Avenue, Homeworth, Utah, 8291", "about": "Est officia velit nulla cupidatat quis deserunt aliquip. Aliquip exercitation id mollit consectetur dolore veniam. Ex id anim ipsum qui aute quis est proident pariatur esse sit voluptate.\r\n", "registered": "2014-07-15T05:23:48-12:00", "latitude": 58.764605, "longitude": -129.154407, "tags": [ "adipisicing", "tempor", "cupidatat", "ullamco", "Lorem", "labore", "cupidatat" ], "friends": [ { "id": 0, "name": "Ann Thornton" }, { "id": 1, "name": "Inez Kelley" }, { "id": 2, "name": "Lynda Joseph" } ], "greeting": "Hello, Elena Trevino! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fcc83f7ef2e37d270", "index": 583, "guid": "79a2e537-fdf8-45a1-a0f3-d7922a988f6f", "isActive": true, "balance": "$2,192.73", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Lee Stephens", "gender": "female", "company": "NIQUENT", "email": "leestephens@niquent.com", "phone": "+1 (804) 476-2856", "address": "394 Preston Court, Sparkill, Montana, 2922", "about": "Mollit commodo nulla aute sit nisi tempor laboris mollit. Excepteur exercitation consequat ullamco sint aliquip veniam ea excepteur. Incididunt nulla Lorem do veniam aute cillum qui cillum. Aliquip quis velit labore eiusmod esse sunt cillum. Sunt proident ipsum nostrud ipsum in consequat ea. Dolor reprehenderit aute minim sunt.\r\n", "registered": "2014-05-21T21:57:55-12:00", "latitude": -18.296319, "longitude": -135.570452, "tags": [ "do", "aute", "excepteur", "elit", "irure", "fugiat", "excepteur" ], "friends": [ { "id": 0, "name": "Jennifer Norman" }, { "id": 1, "name": "Santiago Nash" }, { "id": 2, "name": "Frost Gibbs" } ], "greeting": "Hello, Lee Stephens! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f317b03badbece784", "index": 584, "guid": "e1e8352a-4a12-4906-b904-5f89a1a10e98", "isActive": true, "balance": "$1,109.83", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Greene Foreman", "gender": "male", "company": "STELAECOR", "email": "greeneforeman@stelaecor.com", "phone": "+1 (846) 545-3817", "address": "584 Orange Street, Chamizal, Wisconsin, 4724", "about": "Id non nulla pariatur ut ipsum laborum. Id velit cillum tempor incididunt sint adipisicing mollit adipisicing labore. Commodo consectetur minim proident dolor. Aute eu laborum culpa occaecat aliqua occaecat dolor voluptate eiusmod laborum exercitation occaecat duis labore.\r\n", "registered": "2014-06-17T17:39:46-12:00", "latitude": -88.828759, "longitude": 163.815185, "tags": [ "eiusmod", "minim", "nulla", "cupidatat", "nisi", "deserunt", "ad" ], "friends": [ { "id": 0, "name": "Merle Leon" }, { "id": 1, "name": "Henson Holt" }, { "id": 2, "name": "Kirsten Griffin" } ], "greeting": "Hello, Greene Foreman! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f06a837d87f90f09c", "index": 585, "guid": "fd4a4c0e-bef2-44ef-b05c-f2f41bebc67d", "isActive": true, "balance": "$1,639.42", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Rodgers Sutton", "gender": "male", "company": "ORBOID", "email": "rodgerssutton@orboid.com", "phone": "+1 (994) 525-2527", "address": "368 Burnett Street, Sperryville, Maine, 9172", "about": "Deserunt ea nulla dolor est. Occaecat aute nisi id ut laboris eiusmod. Minim ullamco fugiat nostrud sint mollit aliqua est minim tempor officia consequat esse anim consectetur.\r\n", "registered": "2014-03-16T23:20:22-13:00", "latitude": -80.119888, "longitude": -177.088656, "tags": [ "in", "ea", "commodo", "est", "dolor", "non", "ad" ], "friends": [ { "id": 0, "name": "Richard Woodard" }, { "id": 1, "name": "Payne Larsen" }, { "id": 2, "name": "Reid Parks" } ], "greeting": "Hello, Rodgers Sutton! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fedf11f7a5836b66f", "index": 586, "guid": "4bc3fcd8-2a67-4c01-87d0-980861508901", "isActive": true, "balance": "$2,498.50", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Elvia Benson", "gender": "female", "company": "TELEPARK", "email": "elviabenson@telepark.com", "phone": "+1 (884) 599-2224", "address": "270 Dean Street, Barstow, Virginia, 6622", "about": "Veniam qui minim occaecat adipisicing exercitation aute. Duis amet dolor sint ea. Excepteur magna Lorem amet Lorem Lorem quis dolore occaecat. Reprehenderit mollit cupidatat proident officia qui fugiat consequat non dolore. Dolore pariatur laborum enim et sunt culpa aliquip proident.\r\n", "registered": "2014-04-06T01:08:04-13:00", "latitude": 84.499878, "longitude": 41.601737, "tags": [ "ea", "tempor", "non", "eiusmod", "nulla", "laborum", "ullamco" ], "friends": [ { "id": 0, "name": "Anita Jefferson" }, { "id": 1, "name": "Brandy Ruiz" }, { "id": 2, "name": "Whitley Mclaughlin" } ], "greeting": "Hello, Elvia Benson! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8b98733a15e959b6", "index": 587, "guid": "ce24ee2a-3785-43a6-b0a9-a3be3c477c43", "isActive": false, "balance": "$3,709.48", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Estrada Bernard", "gender": "male", "company": "COLAIRE", "email": "estradabernard@colaire.com", "phone": "+1 (923) 466-3466", "address": "690 Desmond Court, Warren, Kentucky, 8329", "about": "Duis in culpa adipisicing mollit Lorem exercitation. Est dolor culpa commodo ut culpa enim est voluptate sunt anim veniam consequat aliquip. Amet veniam veniam veniam sit eiusmod aliquip reprehenderit eiusmod dolore eu nostrud in. Est eiusmod ad Lorem dolor incididunt cillum. Exercitation ex anim ipsum duis proident ut.\r\n", "registered": "2014-08-02T05:51:56-12:00", "latitude": 73.291328, "longitude": 129.419905, "tags": [ "reprehenderit", "fugiat", "tempor", "elit", "culpa", "pariatur", "tempor" ], "friends": [ { "id": 0, "name": "Malone Bonner" }, { "id": 1, "name": "Millie Fischer" }, { "id": 2, "name": "Mooney Whitney" } ], "greeting": "Hello, Estrada Bernard! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f6bb418992a2e3efa", "index": 588, "guid": "0d4206fe-1091-4d19-8441-a012f093f482", "isActive": true, "balance": "$3,912.16", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Gallegos Conway", "gender": "male", "company": "ZORROMOP", "email": "gallegosconway@zorromop.com", "phone": "+1 (931) 465-3508", "address": "947 Hart Place, Sims, Connecticut, 6268", "about": "Occaecat ipsum elit deserunt ut et aliquip veniam Lorem in qui. Eiusmod aute Lorem cupidatat quis excepteur quis laboris commodo cupidatat sunt enim cupidatat anim. Proident velit esse exercitation occaecat dolor adipisicing. Aliqua in ullamco cupidatat excepteur laboris enim culpa id. Consectetur anim anim sint nostrud occaecat non occaecat.\r\n", "registered": "2014-06-17T02:16:38-12:00", "latitude": -89.72179, "longitude": -58.820313, "tags": [ "reprehenderit", "exercitation", "ad", "pariatur", "eu", "cupidatat", "labore" ], "friends": [ { "id": 0, "name": "Cain Patton" }, { "id": 1, "name": "Alvarez Hahn" }, { "id": 2, "name": "Jasmine Mcpherson" } ], "greeting": "Hello, Gallegos Conway! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fb3651da91ff9f29a", "index": 589, "guid": "80f5118a-b596-4e16-a7e3-b637a47e3e8b", "isActive": true, "balance": "$1,998.69", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Floyd Cabrera", "gender": "male", "company": "REALYSIS", "email": "floydcabrera@realysis.com", "phone": "+1 (946) 493-2652", "address": "739 Monroe Street, Shelby, Mississippi, 4434", "about": "Velit pariatur sit in cupidatat excepteur aliqua eiusmod reprehenderit culpa. In incididunt id ad adipisicing esse laboris deserunt. Eu officia aliqua incididunt commodo. Qui cillum exercitation eiusmod qui non proident. Minim occaecat dolore fugiat nulla ipsum. Aute in eu ea sit pariatur proident ex elit duis consectetur magna incididunt ut. Anim proident et do duis aliquip voluptate laborum ex sit ex et.\r\n", "registered": "2014-07-10T21:22:56-12:00", "latitude": 17.50399, "longitude": 52.119732, "tags": [ "consectetur", "irure", "sit", "ea", "nisi", "est", "nisi" ], "friends": [ { "id": 0, "name": "Brennan Sanchez" }, { "id": 1, "name": "Mcpherson Davidson" }, { "id": 2, "name": "Estelle Preston" } ], "greeting": "Hello, Floyd Cabrera! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1feb683d50726fefa9", "index": 590, "guid": "ba00b2ae-7ea0-4994-a130-6dff37e22ffb", "isActive": true, "balance": "$2,036.07", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Tania Williams", "gender": "female", "company": "ENORMO", "email": "taniawilliams@enormo.com", "phone": "+1 (963) 559-2585", "address": "346 Debevoise Avenue, Bergoo, Washington, 5799", "about": "Exercitation exercitation dolore adipisicing laborum quis eu dolor. Id dolore eiusmod dolor elit. Incididunt culpa fugiat fugiat ea ut cillum. Exercitation labore culpa elit sunt excepteur sunt duis sunt quis ullamco. Velit non veniam id irure non mollit. Veniam et reprehenderit voluptate laborum commodo ex anim reprehenderit in ullamco. Culpa mollit non enim adipisicing sint occaecat adipisicing.\r\n", "registered": "2014-06-15T13:02:27-12:00", "latitude": -88.209307, "longitude": 67.718226, "tags": [ "irure", "elit", "velit", "magna", "nisi", "nulla", "consectetur" ], "friends": [ { "id": 0, "name": "Kramer Reilly" }, { "id": 1, "name": "Carter Jacobson" }, { "id": 2, "name": "Mitchell Jones" } ], "greeting": "Hello, Tania Williams! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f28ab8fdc590621c9", "index": 591, "guid": "153fddc4-c814-4205-8838-e7499f5fad5d", "isActive": false, "balance": "$2,639.37", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Mccarty Bennett", "gender": "male", "company": "RODEOMAD", "email": "mccartybennett@rodeomad.com", "phone": "+1 (805) 434-2530", "address": "340 Berkeley Place, Biddle, Tennessee, 5919", "about": "Consequat veniam qui in magna dolor dolore id. Velit aliquip est esse duis deserunt nulla fugiat enim eu elit deserunt fugiat. Laboris veniam pariatur deserunt magna eu pariatur veniam.\r\n", "registered": "2014-03-31T11:21:00-13:00", "latitude": 24.545648, "longitude": -121.016349, "tags": [ "tempor", "minim", "sunt", "cillum", "et", "qui", "dolor" ], "friends": [ { "id": 0, "name": "Antoinette Quinn" }, { "id": 1, "name": "Hayes Zimmerman" }, { "id": 2, "name": "Cherry Cruz" } ], "greeting": "Hello, Mccarty Bennett! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f7a0cde42dc3b1e5c", "index": 592, "guid": "955725a9-59b1-4112-a546-d1ac8b43867e", "isActive": true, "balance": "$3,981.90", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Iva Moody", "gender": "female", "company": "VOIPA", "email": "ivamoody@voipa.com", "phone": "+1 (804) 576-3856", "address": "804 Varick Avenue, Wollochet, Alabama, 472", "about": "Officia reprehenderit reprehenderit id mollit incididunt adipisicing. Sit sint aliquip consequat ipsum labore. Veniam ex eu commodo reprehenderit nisi laborum in culpa officia eu. Sint dolor enim ea veniam in consectetur aliquip dolor tempor. Enim excepteur ut consequat voluptate pariatur. Lorem magna Lorem eiusmod aliquip cupidatat amet non dolor veniam do ipsum.\r\n", "registered": "2014-07-29T08:53:37-12:00", "latitude": 3.116085, "longitude": 146.163673, "tags": [ "laboris", "ex", "proident", "aliquip", "et", "dolor", "in" ], "friends": [ { "id": 0, "name": "Whitfield Barton" }, { "id": 1, "name": "Stokes Ayala" }, { "id": 2, "name": "Christian Workman" } ], "greeting": "Hello, Iva Moody! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fa8975002c132d9f4", "index": 593, "guid": "bfed15f5-66bc-4395-b2f7-f25ab484a906", "isActive": false, "balance": "$3,089.17", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Whitaker Hopper", "gender": "male", "company": "BULLZONE", "email": "whitakerhopper@bullzone.com", "phone": "+1 (978) 537-2610", "address": "554 Hoyts Lane, Snowville, Ohio, 116", "about": "Velit veniam non qui laboris culpa minim anim exercitation aute ex. Irure voluptate nostrud ipsum minim occaecat. Quis excepteur ullamco sit dolore sunt in aliquip. Officia quis sunt ullamco nisi voluptate excepteur et ex deserunt voluptate exercitation sit. Ea commodo incididunt pariatur cupidatat culpa eu dolore minim ad.\r\n", "registered": "2014-03-09T15:08:38-13:00", "latitude": -28.673844, "longitude": 53.984791, "tags": [ "laborum", "sit", "aute", "incididunt", "id", "occaecat", "esse" ], "friends": [ { "id": 0, "name": "Wallace Turner" }, { "id": 1, "name": "Corrine Shaffer" }, { "id": 2, "name": "Hull Miranda" } ], "greeting": "Hello, Whitaker Hopper! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f19e99c911b17c81e", "index": 594, "guid": "1f178187-5e6e-447b-a540-7c450adb2919", "isActive": true, "balance": "$2,291.25", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Martinez Cash", "gender": "male", "company": "GLUKGLUK", "email": "martinezcash@glukgluk.com", "phone": "+1 (817) 592-2051", "address": "592 Friel Place, Fairhaven, Hawaii, 6157", "about": "Dolor est in aliqua aute commodo sunt laboris sit aute est deserunt esse in occaecat. Exercitation elit minim labore proident enim nostrud id mollit dolore. Fugiat dolor irure et ad cillum proident veniam est. Ad voluptate et nostrud labore officia sunt culpa eu cillum qui in. Irure amet mollit cillum Lorem laborum. Ullamco cillum irure eu eiusmod id dolore aute veniam reprehenderit laboris magna deserunt culpa nulla.\r\n", "registered": "2014-01-18T07:32:27-13:00", "latitude": 50.911965, "longitude": 106.956922, "tags": [ "eu", "laboris", "fugiat", "nostrud", "ipsum", "occaecat", "est" ], "friends": [ { "id": 0, "name": "Courtney Randall" }, { "id": 1, "name": "Annmarie Drake" }, { "id": 2, "name": "Claire Calderon" } ], "greeting": "Hello, Martinez Cash! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fb55e5922ca113368", "index": 595, "guid": "b15fe586-289b-46a3-8e12-a29f9d5589d7", "isActive": false, "balance": "$2,082.48", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Charmaine Mckinney", "gender": "female", "company": "COMSTRUCT", "email": "charmainemckinney@comstruct.com", "phone": "+1 (988) 562-3253", "address": "716 Agate Court, Kanauga, New Mexico, 1437", "about": "Esse ad laboris amet consequat sunt ea officia labore consectetur in dolore sunt amet incididunt. Non aute sunt amet consectetur ipsum adipisicing occaecat aliquip duis minim aliqua commodo. Dolor nulla mollit qui magna. Aliqua duis consectetur aute do in ad officia laborum aliquip commodo. Voluptate id esse quis commodo Lorem adipisicing veniam aliqua occaecat esse officia ex ad. Quis non duis quis reprehenderit Lorem esse cillum laborum ullamco qui excepteur exercitation aute quis. Dolore mollit duis aliquip officia.\r\n", "registered": "2014-01-29T18:10:09-13:00", "latitude": 74.393637, "longitude": -9.283045, "tags": [ "ipsum", "anim", "cillum", "et", "adipisicing", "nulla", "proident" ], "friends": [ { "id": 0, "name": "Jacquelyn Estrada" }, { "id": 1, "name": "Woodard Weaver" }, { "id": 2, "name": "Rogers Welch" } ], "greeting": "Hello, Charmaine Mckinney! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f0703724c6c3a4313", "index": 596, "guid": "f8bc31d7-08af-44ca-b385-8b9a74138665", "isActive": false, "balance": "$2,777.01", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Michele Durham", "gender": "female", "company": "VALPREAL", "email": "micheledurham@valpreal.com", "phone": "+1 (987) 568-3848", "address": "513 Keen Court, Kilbourne, Maryland, 7802", "about": "Proident officia in officia incididunt ad id adipisicing Lorem sit nostrud ipsum. Exercitation sunt amet sunt consequat cupidatat nisi ullamco aliqua laboris do excepteur dolor. Nostrud incididunt anim exercitation ad dolor laborum elit qui cupidatat proident pariatur consectetur.\r\n", "registered": "2014-02-26T07:12:16-13:00", "latitude": -77.403703, "longitude": 88.300919, "tags": [ "elit", "elit", "consequat", "officia", "pariatur", "elit", "duis" ], "friends": [ { "id": 0, "name": "Barron Woodward" }, { "id": 1, "name": "Beverley Fowler" }, { "id": 2, "name": "Josephine Holloway" } ], "greeting": "Hello, Michele Durham! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f7286ad49d881c9a1", "index": 597, "guid": "c676a455-24e8-4f6d-b170-f25db257b389", "isActive": true, "balance": "$2,347.51", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Noble Britt", "gender": "male", "company": "CHILLIUM", "email": "noblebritt@chillium.com", "phone": "+1 (807) 440-3105", "address": "488 Hamilton Avenue, Saddlebrooke, Alaska, 6235", "about": "Eu nulla occaecat exercitation cupidatat minim consectetur ex et voluptate cupidatat dolor cupidatat pariatur do. Deserunt consectetur anim Lorem officia eiusmod consequat mollit ullamco sunt et aute eu sit. Fugiat ex laborum officia consectetur cillum reprehenderit eiusmod. Qui et non culpa ut fugiat eiusmod laborum dolore Lorem voluptate incididunt. Nostrud tempor enim reprehenderit ut nostrud consequat. Aliqua sunt minim pariatur magna sunt ad adipisicing ad fugiat et cupidatat incididunt ea exercitation. Sint excepteur laboris velit aliqua nostrud consequat id duis exercitation eu.\r\n", "registered": "2014-06-15T14:53:31-12:00", "latitude": -15.700303, "longitude": 49.640199, "tags": [ "amet", "adipisicing", "et", "consectetur", "duis", "tempor", "mollit" ], "friends": [ { "id": 0, "name": "Kenya Berg" }, { "id": 1, "name": "Mathews Moss" }, { "id": 2, "name": "Imelda Stark" } ], "greeting": "Hello, Noble Britt! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fd24d0cb3ff7421ad", "index": 598, "guid": "dea483c0-84ea-4fb2-a94f-86533c993b00", "isActive": false, "balance": "$2,749.01", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Raymond Mendoza", "gender": "male", "company": "ANDRYX", "email": "raymondmendoza@andryx.com", "phone": "+1 (882) 438-2462", "address": "873 Saratoga Avenue, Waterloo, Arizona, 872", "about": "Aliquip eu officia reprehenderit irure amet. Cillum ipsum voluptate in proident est ullamco tempor sit ut. Ad consequat occaecat nostrud voluptate velit sit est aute duis est occaecat. Nisi eu non pariatur ullamco ullamco veniam cupidatat anim in mollit exercitation occaecat.\r\n", "registered": "2014-03-22T01:51:05-13:00", "latitude": 7.084214, "longitude": 61.471701, "tags": [ "nisi", "id", "anim", "ullamco", "esse", "cillum", "ut" ], "friends": [ { "id": 0, "name": "Lawson Harrison" }, { "id": 1, "name": "Klein Dickerson" }, { "id": 2, "name": "Pope Arnold" } ], "greeting": "Hello, Raymond Mendoza! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fd84392fed4b04dec", "index": 599, "guid": "ee82a4d3-45ec-4028-9832-9f69767affb2", "isActive": true, "balance": "$2,798.35", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Althea Rodriquez", "gender": "female", "company": "STEELFAB", "email": "althearodriquez@steelfab.com", "phone": "+1 (848) 582-3064", "address": "960 Halleck Street, Statenville, Federated States Of Micronesia, 115", "about": "Magna culpa pariatur ipsum nostrud aliqua. Irure nostrud laboris velit dolore est incididunt officia do veniam qui aliqua officia quis occaecat. Elit aliquip eu quis incididunt proident quis dolore commodo aliquip eiusmod. Commodo aliquip ea ad eu ut id dolor irure anim irure occaecat eu. Ipsum dolor esse eiusmod consectetur enim.\r\n", "registered": "2014-05-07T16:38:36-12:00", "latitude": -66.179834, "longitude": -146.354626, "tags": [ "irure", "enim", "ullamco", "consequat", "minim", "ad", "fugiat" ], "friends": [ { "id": 0, "name": "Rose Guy" }, { "id": 1, "name": "Cohen Vang" }, { "id": 2, "name": "Rosetta Lynn" } ], "greeting": "Hello, Althea Rodriquez! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f4338bc8973591b10", "index": 600, "guid": "4c343610-ecbb-4874-8c09-e0e252d40103", "isActive": true, "balance": "$3,071.97", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Slater York", "gender": "male", "company": "DEEPENDS", "email": "slateryork@deepends.com", "phone": "+1 (862) 600-3161", "address": "824 Story Court, Eastmont, Oklahoma, 3385", "about": "Est consequat velit laborum dolore exercitation qui aliquip aliqua deserunt duis officia enim aute. Minim fugiat enim est id veniam id ad laboris. Laborum laborum culpa aliquip sint mollit eiusmod ipsum anim dolor consequat. Enim tempor consequat aute ut reprehenderit labore sint pariatur aute.\r\n", "registered": "2014-09-01T00:25:40-12:00", "latitude": -25.731135, "longitude": -16.418509, "tags": [ "cupidatat", "elit", "non", "ad", "amet", "esse", "aute" ], "friends": [ { "id": 0, "name": "Patty Erickson" }, { "id": 1, "name": "Gail Fields" }, { "id": 2, "name": "Holcomb Aguilar" } ], "greeting": "Hello, Slater York! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fee794cb4a0eb3072", "index": 601, "guid": "dcc3cbe8-4f0c-41a7-b794-b3ac38e41559", "isActive": false, "balance": "$3,283.95", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Johanna Gomez", "gender": "female", "company": "INTERGEEK", "email": "johannagomez@intergeek.com", "phone": "+1 (990) 420-3382", "address": "904 Wyckoff Avenue, Glendale, Michigan, 3254", "about": "Dolor et ullamco reprehenderit adipisicing consequat proident minim enim reprehenderit deserunt cillum aliqua. Velit pariatur Lorem sunt cupidatat. Cupidatat do irure commodo voluptate veniam. Consequat exercitation ipsum cillum cillum.\r\n", "registered": "2014-06-18T20:26:18-12:00", "latitude": 10.130174, "longitude": 172.656549, "tags": [ "esse", "eu", "incididunt", "Lorem", "minim", "pariatur", "esse" ], "friends": [ { "id": 0, "name": "Delia Stewart" }, { "id": 1, "name": "Catherine Foster" }, { "id": 2, "name": "Shields Pacheco" } ], "greeting": "Hello, Johanna Gomez! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fe7b532ed66f2fb4d", "index": 602, "guid": "d3c51f73-3526-4a7e-8b98-b968bc040c5a", "isActive": false, "balance": "$3,093.88", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Hardy Rodgers", "gender": "male", "company": "YURTURE", "email": "hardyrodgers@yurture.com", "phone": "+1 (988) 467-2024", "address": "799 Harrison Place, Nash, Kansas, 3640", "about": "Cillum exercitation ipsum consectetur est voluptate sint duis sunt veniam laborum. Voluptate incididunt mollit ipsum reprehenderit ut ex aliquip irure culpa velit aute. Nostrud elit reprehenderit quis culpa nostrud fugiat reprehenderit voluptate minim. Ullamco irure officia reprehenderit dolore nulla do quis est. Minim magna est non sunt excepteur excepteur commodo ad labore anim. Cillum qui enim ullamco elit nisi reprehenderit veniam qui nostrud ipsum exercitation consectetur. Tempor commodo aliquip est magna elit nostrud et ullamco proident fugiat aliquip deserunt exercitation in.\r\n", "registered": "2014-03-25T14:43:15-13:00", "latitude": 19.001297, "longitude": -3.18597, "tags": [ "ut", "quis", "labore", "qui", "labore", "commodo", "culpa" ], "friends": [ { "id": 0, "name": "Wooten Meyers" }, { "id": 1, "name": "Heath Roach" }, { "id": 2, "name": "Davidson Gallegos" } ], "greeting": "Hello, Hardy Rodgers! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8aca56d94f875aa5", "index": 603, "guid": "274effc8-a315-4b84-8998-871b6c7bcd54", "isActive": true, "balance": "$3,546.21", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Celeste Stokes", "gender": "female", "company": "LETPRO", "email": "celestestokes@letpro.com", "phone": "+1 (889) 593-2093", "address": "712 Hope Street, Ryderwood, South Dakota, 4180", "about": "Ad duis occaecat quis et deserunt et ullamco mollit exercitation est. Laboris anim aute occaecat id. Aute amet culpa Lorem Lorem tempor dolore ea irure elit id ullamco dolor laborum. Aliqua tempor magna occaecat ullamco cupidatat.\r\n", "registered": "2014-08-30T09:19:26-12:00", "latitude": -36.497035, "longitude": -13.252326, "tags": [ "pariatur", "pariatur", "quis", "exercitation", "eiusmod", "amet", "quis" ], "friends": [ { "id": 0, "name": "Ines Marks" }, { "id": 1, "name": "John Woods" }, { "id": 2, "name": "Mercer Briggs" } ], "greeting": "Hello, Celeste Stokes! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f005e9f83e7272b85", "index": 604, "guid": "da86163e-7858-4695-a88d-5926d9e4815e", "isActive": true, "balance": "$3,267.21", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Burris Serrano", "gender": "male", "company": "AUTOGRATE", "email": "burrisserrano@autograte.com", "phone": "+1 (996) 484-3642", "address": "753 Hinckley Place, Nutrioso, West Virginia, 9763", "about": "Amet culpa reprehenderit sunt nulla nostrud mollit ex do dolor esse. Cillum ad irure consequat ipsum. Sint consectetur amet laboris Lorem esse ad adipisicing non. Aliqua cupidatat incididunt nisi anim labore officia pariatur non aliquip fugiat incididunt ut reprehenderit et. Ipsum aute commodo elit dolore. Et exercitation irure consequat reprehenderit ex veniam exercitation enim.\r\n", "registered": "2014-03-29T09:56:46-13:00", "latitude": 57.350137, "longitude": -23.841908, "tags": [ "enim", "sit", "voluptate", "est", "in", "ad", "dolor" ], "friends": [ { "id": 0, "name": "Krystal Cooper" }, { "id": 1, "name": "Nell Floyd" }, { "id": 2, "name": "Preston Stevenson" } ], "greeting": "Hello, Burris Serrano! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fb19340f4364c5c16", "index": 605, "guid": "028e6bb7-da86-4532-9466-b8a64579f440", "isActive": false, "balance": "$3,126.90", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Erna Sargent", "gender": "female", "company": "TERRAGEN", "email": "ernasargent@terragen.com", "phone": "+1 (899) 574-3388", "address": "279 Bridgewater Street, Dupuyer, Texas, 4456", "about": "Irure aute eiusmod aliquip do incididunt est in. Magna anim consectetur veniam dolore. Consequat fugiat dolor esse nostrud et id proident cillum esse quis.\r\n", "registered": "2014-05-19T02:40:16-12:00", "latitude": 37.822015, "longitude": -162.204249, "tags": [ "eiusmod", "excepteur", "sunt", "exercitation", "exercitation", "fugiat", "incididunt" ], "friends": [ { "id": 0, "name": "Patel Johnston" }, { "id": 1, "name": "Leigh Valenzuela" }, { "id": 2, "name": "Landry Richards" } ], "greeting": "Hello, Erna Sargent! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f06b0c52f7444eb51", "index": 606, "guid": "c238b3e8-84a5-4b07-a395-19cff65ddc20", "isActive": false, "balance": "$3,296.39", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Fry Duffy", "gender": "male", "company": "AVENETRO", "email": "fryduffy@avenetro.com", "phone": "+1 (953) 484-3828", "address": "388 Schermerhorn Street, Orviston, Oregon, 8549", "about": "Consectetur commodo excepteur officia excepteur tempor Lorem proident pariatur. Consectetur eu sunt ut mollit tempor nulla tempor commodo ad. Esse velit ex proident minim enim sit elit officia pariatur sunt sit esse. Occaecat cillum aliqua eu dolor qui minim.\r\n", "registered": "2014-05-10T18:39:27-12:00", "latitude": -17.64271, "longitude": -10.150729, "tags": [ "enim", "deserunt", "ullamco", "laborum", "fugiat", "cupidatat", "nostrud" ], "friends": [ { "id": 0, "name": "Mueller Blanchard" }, { "id": 1, "name": "Callie Craig" }, { "id": 2, "name": "Margarita Byrd" } ], "greeting": "Hello, Fry Duffy! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fbe0008408064ea88", "index": 607, "guid": "89223c60-a08c-4da5-9fd0-2ddcb2e29c01", "isActive": true, "balance": "$2,665.31", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Elise White", "gender": "female", "company": "ZYTRAC", "email": "elisewhite@zytrac.com", "phone": "+1 (868) 520-2624", "address": "869 Woodpoint Road, Moraida, Nevada, 2387", "about": "Velit mollit nulla ea incididunt sunt laborum id dolore dolore nulla cillum non eu. Voluptate sit laboris eu magna esse ea sint id dolor tempor nostrud est incididunt ex. Duis dolore ad proident ex occaecat amet eiusmod. Elit nulla deserunt esse ullamco. Aliquip consequat labore deserunt eiusmod fugiat elit culpa duis proident ipsum exercitation.\r\n", "registered": "2014-02-19T10:17:27-13:00", "latitude": 8.598066, "longitude": -82.610372, "tags": [ "ex", "fugiat", "et", "laboris", "officia", "ut", "eiusmod" ], "friends": [ { "id": 0, "name": "Therese Hensley" }, { "id": 1, "name": "Griffith Martinez" }, { "id": 2, "name": "Sophie Richmond" } ], "greeting": "Hello, Elise White! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f78d3209a310d3277", "index": 608, "guid": "e5eca3cb-a9b0-41f0-8fc3-89d9aebcd05f", "isActive": false, "balance": "$3,150.16", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Chase Mcclure", "gender": "male", "company": "MULTRON", "email": "chasemcclure@multron.com", "phone": "+1 (914) 420-2889", "address": "414 Bevy Court, Berlin, Minnesota, 5699", "about": "Pariatur laborum anim aliqua non sit fugiat nostrud sunt eiusmod laboris eu. Aliqua ut irure veniam incididunt aliquip consequat commodo dolor elit proident. Sit occaecat laborum elit enim deserunt laboris nisi veniam. Commodo occaecat dolore amet consequat est dolore aute do pariatur veniam minim. Pariatur commodo cupidatat Lorem culpa ut voluptate qui dolore pariatur occaecat ullamco.\r\n", "registered": "2014-03-09T17:35:01-13:00", "latitude": 12.747246, "longitude": 33.327771, "tags": [ "duis", "sit", "velit", "voluptate", "occaecat", "commodo", "minim" ], "friends": [ { "id": 0, "name": "Kinney Peters" }, { "id": 1, "name": "Nicholson Lara" }, { "id": 2, "name": "Zamora Cleveland" } ], "greeting": "Hello, Chase Mcclure! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1feecf849258c4e845", "index": 609, "guid": "770a68e4-9670-44b8-ab3a-724b03c5c1ea", "isActive": false, "balance": "$3,626.11", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Maryanne Howell", "gender": "female", "company": "DAISU", "email": "maryannehowell@daisu.com", "phone": "+1 (877) 588-2922", "address": "844 Division Avenue, Aurora, Missouri, 1302", "about": "Commodo adipisicing adipisicing officia ea nostrud proident eiusmod. Id irure amet esse adipisicing voluptate. Aute minim laborum adipisicing magna Lorem incididunt veniam nostrud consectetur. Sint reprehenderit eiusmod id culpa magna nostrud irure nostrud labore ut esse velit. Duis ad elit enim esse exercitation fugiat consequat aute ex. Mollit voluptate non reprehenderit esse sint ullamco consequat. Incididunt sit consequat est in minim officia eu id commodo pariatur laboris ipsum.\r\n", "registered": "2014-04-10T18:31:05-12:00", "latitude": 52.580221, "longitude": -133.289249, "tags": [ "aliquip", "officia", "et", "magna", "mollit", "eu", "et" ], "friends": [ { "id": 0, "name": "Hollie Nielsen" }, { "id": 1, "name": "Henry Rhodes" }, { "id": 2, "name": "Blackburn Hartman" } ], "greeting": "Hello, Maryanne Howell! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8e52d2ba63cc291e", "index": 610, "guid": "ea7b27c4-14dc-4e02-90a1-69306322d938", "isActive": true, "balance": "$1,717.84", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Marjorie Travis", "gender": "female", "company": "MALATHION", "email": "marjorietravis@malathion.com", "phone": "+1 (806) 434-2654", "address": "526 Livingston Street, Mansfield, Rhode Island, 7671", "about": "Cupidatat commodo nostrud duis in incididunt nisi nostrud aute duis. Minim pariatur aliqua elit ullamco voluptate. Quis in Lorem magna sunt proident fugiat aute. Non cupidatat incididunt et sunt occaecat laboris consectetur. Ullamco minim cillum non pariatur tempor do anim sit anim.\r\n", "registered": "2014-03-05T22:59:05-13:00", "latitude": 44.949982, "longitude": 7.004003, "tags": [ "cupidatat", "duis", "excepteur", "commodo", "adipisicing", "fugiat", "irure" ], "friends": [ { "id": 0, "name": "Pearl Wilson" }, { "id": 1, "name": "Charity Pace" }, { "id": 2, "name": "Holder Sparks" } ], "greeting": "Hello, Marjorie Travis! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f86de1b67e89dee15", "index": 611, "guid": "b9bc4dd8-4720-4590-a214-f287db5a810b", "isActive": true, "balance": "$1,562.35", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Mamie Patterson", "gender": "female", "company": "CONJURICA", "email": "mamiepatterson@conjurica.com", "phone": "+1 (878) 554-3169", "address": "190 Estate Road, Fairmount, Florida, 9876", "about": "Excepteur occaecat duis sit mollit dolore. Duis esse nulla fugiat aliquip fugiat incididunt occaecat officia aute voluptate. Cupidatat ea in consectetur nulla culpa reprehenderit. Esse velit Lorem do amet officia adipisicing fugiat amet magna. Dolore enim nostrud aute sint nisi tempor ut minim sunt enim.\r\n", "registered": "2014-07-05T17:24:22-12:00", "latitude": -74.552206, "longitude": -71.890891, "tags": [ "duis", "voluptate", "in", "eiusmod", "nostrud", "labore", "ullamco" ], "friends": [ { "id": 0, "name": "Leonard Wood" }, { "id": 1, "name": "Bettie Rodriguez" }, { "id": 2, "name": "Jones Bates" } ], "greeting": "Hello, Mamie Patterson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f6595d784ad5197fd", "index": 612, "guid": "1cb6e998-4a03-461e-85ef-8bd3519a7aa8", "isActive": true, "balance": "$2,790.77", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Jackson Shepard", "gender": "male", "company": "COMTRAIL", "email": "jacksonshepard@comtrail.com", "phone": "+1 (803) 525-2976", "address": "358 Delevan Street, Cannondale, North Carolina, 4803", "about": "Eiusmod minim ea duis in sunt elit. Duis mollit voluptate commodo aliqua nisi consectetur deserunt culpa velit officia aute consectetur elit. Culpa consequat qui irure nulla Lorem anim ipsum nostrud sunt. Qui reprehenderit consectetur cillum commodo irure consequat do Lorem consectetur consectetur et pariatur laborum. Aliquip anim occaecat nisi anim minim enim duis excepteur labore. Do deserunt do sit aliquip non dolore pariatur in eu cillum ad. Et est fugiat aute commodo amet nostrud velit elit consectetur eiusmod est velit.\r\n", "registered": "2014-08-23T22:18:49-12:00", "latitude": -28.691582, "longitude": 134.571121, "tags": [ "ut", "elit", "nisi", "nisi", "incididunt", "culpa", "eiusmod" ], "friends": [ { "id": 0, "name": "Sheryl Mercado" }, { "id": 1, "name": "Mayer Fitzpatrick" }, { "id": 2, "name": "Rosanne Hart" } ], "greeting": "Hello, Jackson Shepard! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fa545c5f917aa28bc", "index": 613, "guid": "eee5be02-37aa-4d8e-ac32-85fe10b854c2", "isActive": true, "balance": "$2,599.41", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Sims Poole", "gender": "male", "company": "VIAGREAT", "email": "simspoole@viagreat.com", "phone": "+1 (925) 510-2374", "address": "433 Eagle Street, Gerber, New Hampshire, 9442", "about": "Eu mollit sit consequat commodo incididunt pariatur consequat commodo culpa. Ea exercitation sit labore velit veniam veniam reprehenderit quis. Adipisicing eu aliqua aliqua nisi mollit laboris. Nisi quis eu elit deserunt aute sunt quis dolor sit aute excepteur aute voluptate. Excepteur veniam sit irure exercitation duis est qui.\r\n", "registered": "2014-05-04T17:41:48-12:00", "latitude": 89.52178, "longitude": -59.141888, "tags": [ "nisi", "voluptate", "ad", "magna", "exercitation", "commodo", "esse" ], "friends": [ { "id": 0, "name": "Maude Franks" }, { "id": 1, "name": "Santos Watson" }, { "id": 2, "name": "Abigail Shaw" } ], "greeting": "Hello, Sims Poole! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fcb37695be28048bf", "index": 614, "guid": "2a9ce8c7-38d5-44c6-83de-235de496367d", "isActive": false, "balance": "$3,151.75", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Velez Smith", "gender": "male", "company": "DANJA", "email": "velezsmith@danja.com", "phone": "+1 (832) 581-3217", "address": "816 Lincoln Terrace, Mooresburg, Arkansas, 1690", "about": "Aliqua anim magna est veniam dolore officia esse. Do non ex consequat officia id sint aute voluptate reprehenderit. Veniam ad sunt laboris deserunt exercitation quis nisi ullamco enim sint commodo. Laborum aute enim occaecat duis sint excepteur sit sunt voluptate nostrud. Aliqua duis eu velit Lorem commodo magna quis voluptate in fugiat esse. Sint irure duis cupidatat sit ipsum. Elit consequat enim amet deserunt laborum officia adipisicing ut deserunt et minim sit cillum nisi.\r\n", "registered": "2014-07-20T20:34:19-12:00", "latitude": -85.059738, "longitude": 13.007133, "tags": [ "fugiat", "sint", "dolor", "do", "nisi", "dolor", "do" ], "friends": [ { "id": 0, "name": "Latonya Bell" }, { "id": 1, "name": "Haley Simon" }, { "id": 2, "name": "Ivy Orr" } ], "greeting": "Hello, Velez Smith! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f5d9ed7a1a4735867", "index": 615, "guid": "f0f71138-bc77-4692-829f-40aa27a6a439", "isActive": true, "balance": "$1,230.82", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Eula Page", "gender": "female", "company": "ISIS", "email": "eulapage@isis.com", "phone": "+1 (847) 568-3040", "address": "950 Randolph Street, Rew, Iowa, 6801", "about": "Elit incididunt reprehenderit pariatur quis ipsum minim fugiat consectetur aute nulla. Id ex consectetur esse enim laboris elit consectetur incididunt adipisicing est occaecat minim ullamco voluptate. Do Lorem enim sunt officia elit velit nostrud est irure exercitation amet proident anim tempor. Aliquip minim ullamco fugiat do ut exercitation.\r\n", "registered": "2014-01-04T20:37:42-13:00", "latitude": 12.705276, "longitude": -156.828823, "tags": [ "do", "pariatur", "labore", "adipisicing", "deserunt", "velit", "in" ], "friends": [ { "id": 0, "name": "Carla Greene" }, { "id": 1, "name": "Mayo Flowers" }, { "id": 2, "name": "Cornelia Spencer" } ], "greeting": "Hello, Eula Page! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1feb799ff80294aecd", "index": 616, "guid": "281aa221-c072-4ded-bc6d-70b4051fe601", "isActive": false, "balance": "$1,250.19", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Burke Booker", "gender": "male", "company": "ANOCHA", "email": "burkebooker@anocha.com", "phone": "+1 (814) 418-2386", "address": "396 Carlton Avenue, Blanco, Nebraska, 7668", "about": "Voluptate tempor dolore minim ad officia sit consectetur anim duis. Irure ullamco excepteur qui aute ea eiusmod non aliqua officia quis. Dolore in est incididunt cupidatat culpa ex consequat est. Fugiat nostrud cillum elit enim magna duis laboris est Lorem consectetur. In laborum quis duis consectetur amet deserunt nulla amet velit. Sint mollit proident nostrud nulla cupidatat minim cillum proident quis et do ex.\r\n", "registered": "2014-02-21T14:51:44-13:00", "latitude": -71.401384, "longitude": 169.371164, "tags": [ "in", "ipsum", "ea", "minim", "nostrud", "commodo", "dolore" ], "friends": [ { "id": 0, "name": "Huber Vinson" }, { "id": 1, "name": "Noelle Craft" }, { "id": 2, "name": "Lilia Frazier" } ], "greeting": "Hello, Burke Booker! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fd30321f9524eb992", "index": 617, "guid": "63ead582-df74-45b7-8025-a040b45001e3", "isActive": true, "balance": "$3,820.90", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Leslie Guerrero", "gender": "female", "company": "ZYPLE", "email": "leslieguerrero@zyple.com", "phone": "+1 (904) 430-3921", "address": "545 Furman Avenue, Oneida, District Of Columbia, 3018", "about": "Ad elit cupidatat anim magna esse qui. Est cupidatat pariatur elit commodo proident consequat incididunt Lorem ut sit labore. Qui tempor sunt tempor do aliquip do culpa aliqua tempor ea dolor et nulla. Adipisicing non consectetur velit exercitation culpa enim consequat nisi occaecat. Occaecat Lorem deserunt consectetur pariatur ut labore culpa aliqua elit. Commodo do nostrud sunt commodo est eiusmod laboris eu nisi nulla quis aliqua excepteur.\r\n", "registered": "2014-06-04T02:53:47-12:00", "latitude": 32.466737, "longitude": -50.499031, "tags": [ "culpa", "minim", "ipsum", "consectetur", "non", "enim", "voluptate" ], "friends": [ { "id": 0, "name": "Rowe Francis" }, { "id": 1, "name": "Tyson Wiley" }, { "id": 2, "name": "Ferrell Kelly" } ], "greeting": "Hello, Leslie Guerrero! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fc8ad8a85b24b69d8", "index": 618, "guid": "95d08d35-905a-4341-aa51-f9f0bd1e093a", "isActive": true, "balance": "$3,652.80", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Gilliam Klein", "gender": "male", "company": "ZYTREK", "email": "gilliamklein@zytrek.com", "phone": "+1 (916) 435-3176", "address": "131 Dahill Road, Brambleton, New Jersey, 2732", "about": "Mollit enim ipsum id sint sit veniam consequat. Deserunt est in proident ut eu non commodo duis ut esse quis. Veniam cupidatat aliqua ipsum exercitation reprehenderit.\r\n", "registered": "2014-06-21T16:02:37-12:00", "latitude": 7.539062, "longitude": 98.227911, "tags": [ "ea", "commodo", "adipisicing", "in", "ad", "deserunt", "id" ], "friends": [ { "id": 0, "name": "Zelma Mcbride" }, { "id": 1, "name": "Vickie Carey" }, { "id": 2, "name": "Julianne Fry" } ], "greeting": "Hello, Gilliam Klein! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fc67cdc8ece85096d", "index": 619, "guid": "1283cde4-4d56-410f-899f-5a50907bd05e", "isActive": true, "balance": "$1,327.88", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Augusta Beasley", "gender": "female", "company": "HONOTRON", "email": "augustabeasley@honotron.com", "phone": "+1 (821) 533-3951", "address": "437 Ferris Street, Lemoyne, Palau, 4222", "about": "Lorem amet ea pariatur duis veniam duis anim. Nulla anim minim nulla ullamco eu incididunt ullamco amet irure. Sunt ullamco irure exercitation officia consectetur Lorem ullamco deserunt amet tempor. Proident consequat ea in id anim occaecat dolore magna eiusmod cupidatat id excepteur tempor. Ad adipisicing irure labore cupidatat irure ea.\r\n", "registered": "2014-03-18T00:50:05-13:00", "latitude": -64.088262, "longitude": 1.44745, "tags": [ "sint", "enim", "aliqua", "elit", "excepteur", "officia", "id" ], "friends": [ { "id": 0, "name": "Clay Gaines" }, { "id": 1, "name": "Angie Warner" }, { "id": 2, "name": "Wall Henry" } ], "greeting": "Hello, Augusta Beasley! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fd5da0dd9ad1ce635", "index": 620, "guid": "6d11ef31-9d66-464b-b4be-ae840f51cec6", "isActive": false, "balance": "$3,522.43", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Eunice Clark", "gender": "female", "company": "ZENTILITY", "email": "euniceclark@zentility.com", "phone": "+1 (849) 482-2550", "address": "732 Poplar Avenue, Woodlands, Puerto Rico, 1065", "about": "Proident deserunt tempor dolore qui reprehenderit amet eiusmod voluptate do et et. Ad nisi do excepteur ea eiusmod eu. Velit laborum non ullamco ut commodo Lorem aliqua consectetur magna Lorem laboris quis aute in. Consequat cupidatat tempor deserunt labore ex ad cillum aliqua elit. Ex consequat nulla enim do ex amet. Culpa nisi sit laboris culpa deserunt esse nulla.\r\n", "registered": "2014-06-11T16:33:01-12:00", "latitude": -31.677491, "longitude": 77.547689, "tags": [ "occaecat", "sit", "amet", "ea", "id", "fugiat", "culpa" ], "friends": [ { "id": 0, "name": "Morrison Baird" }, { "id": 1, "name": "Diann Noel" }, { "id": 2, "name": "Bowman Dunlap" } ], "greeting": "Hello, Eunice Clark! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f704cf3349ae1f762", "index": 621, "guid": "c228f416-5610-4db1-b435-15b21fba163f", "isActive": true, "balance": "$3,443.45", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Wright Kramer", "gender": "male", "company": "CYTRAK", "email": "wrightkramer@cytrak.com", "phone": "+1 (923) 579-2085", "address": "959 Grove Street, Manchester, California, 5054", "about": "Ut cupidatat laborum commodo elit cupidatat minim. Dolore quis aliqua commodo nostrud sit ipsum nostrud consequat eiusmod Lorem. Ad qui veniam reprehenderit minim eu velit nisi consequat. Enim sit minim adipisicing nisi in. Excepteur et voluptate ipsum pariatur.\r\n", "registered": "2014-06-17T03:01:25-12:00", "latitude": -46.473389, "longitude": 70.92999, "tags": [ "nulla", "excepteur", "laboris", "dolor", "dolor", "nostrud", "non" ], "friends": [ { "id": 0, "name": "Hannah Hubbard" }, { "id": 1, "name": "Oneil Petersen" }, { "id": 2, "name": "Krista Ford" } ], "greeting": "Hello, Wright Kramer! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ffcfdd187f24d6c92", "index": 622, "guid": "cb8c065e-2a47-43b5-87a3-e723dddfb980", "isActive": false, "balance": "$1,001.39", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Jody Buck", "gender": "female", "company": "SPLINX", "email": "jodybuck@splinx.com", "phone": "+1 (904) 539-2411", "address": "999 Charles Place, Wauhillau, Vermont, 3718", "about": "Qui velit exercitation do incididunt incididunt consectetur nulla sunt ullamco anim et. Ut voluptate fugiat quis amet amet occaecat exercitation ea qui et nostrud commodo sit dolore. Duis deserunt ut sunt anim velit commodo irure. Nostrud non consectetur in deserunt cillum laboris laboris reprehenderit qui. Proident cupidatat enim nulla consectetur. Fugiat consectetur id consectetur nulla ad veniam consectetur sit ipsum qui nulla. Labore dolor consectetur cillum voluptate sit occaecat.\r\n", "registered": "2014-09-22T14:16:22-12:00", "latitude": 38.319311, "longitude": 53.740304, "tags": [ "ex", "excepteur", "excepteur", "ad", "reprehenderit", "nulla", "non" ], "friends": [ { "id": 0, "name": "Jaime Harrington" }, { "id": 1, "name": "Pierce Johns" }, { "id": 2, "name": "Virginia Montoya" } ], "greeting": "Hello, Jody Buck! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f661ec5991d0a865e", "index": 623, "guid": "196ebfc9-2348-4382-98ba-f5550ef5feb2", "isActive": false, "balance": "$2,423.84", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Anderson Berger", "gender": "male", "company": "VIRXO", "email": "andersonberger@virxo.com", "phone": "+1 (896) 455-3419", "address": "845 Whitwell Place, Saranap, Indiana, 6344", "about": "Qui eiusmod do ad ipsum eu excepteur et incididunt. Aute velit irure irure fugiat. Sint proident enim officia ipsum dolor culpa cupidatat amet ut. Tempor consequat minim nisi aute nisi aliqua do in enim eiusmod labore reprehenderit.\r\n", "registered": "2014-02-05T18:50:58-13:00", "latitude": -65.312806, "longitude": -141.715127, "tags": [ "consequat", "consequat", "laboris", "officia", "nulla", "cillum", "minim" ], "friends": [ { "id": 0, "name": "Pearson Osborne" }, { "id": 1, "name": "Cortez Mathis" }, { "id": 2, "name": "Matthews Melton" } ], "greeting": "Hello, Anderson Berger! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fe78872d689f2b60e", "index": 624, "guid": "03ab55d3-27f9-4649-9151-0b360324abed", "isActive": false, "balance": "$3,301.16", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Reyna Eaton", "gender": "female", "company": "ZIZZLE", "email": "reynaeaton@zizzle.com", "phone": "+1 (829) 430-2462", "address": "743 Gunther Place, Nadine, Illinois, 5535", "about": "Irure adipisicing aliqua exercitation velit laborum ad anim fugiat dolor exercitation quis tempor Lorem adipisicing. Sint labore eiusmod proident do est amet eu id. Ipsum ut proident amet proident aute do nostrud anim sint ullamco ea non.\r\n", "registered": "2014-05-29T03:18:03-12:00", "latitude": -52.34497, "longitude": 18.612564, "tags": [ "deserunt", "ad", "proident", "nulla", "culpa", "et", "esse" ], "friends": [ { "id": 0, "name": "Michelle Mays" }, { "id": 1, "name": "Padilla Gill" }, { "id": 2, "name": "Kathleen Wheeler" } ], "greeting": "Hello, Reyna Eaton! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fc6f4f7a6dc6ececb", "index": 625, "guid": "8799ffb8-4de2-40e0-b58c-f6a3b7c55970", "isActive": true, "balance": "$3,058.69", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Snow Carr", "gender": "male", "company": "ACIUM", "email": "snowcarr@acium.com", "phone": "+1 (885) 476-2856", "address": "116 Anna Court, Chase, South Carolina, 6819", "about": "Nulla aliquip officia fugiat in. Laborum anim excepteur mollit laboris ex ullamco tempor tempor aliqua et est sunt ea. Dolore cupidatat ut mollit eiusmod eiusmod proident minim consequat ullamco aliqua. Et irure sint eiusmod dolore officia nulla anim ex minim ipsum. Minim esse est officia velit non officia.\r\n", "registered": "2014-03-26T08:33:36-13:00", "latitude": 36.263322, "longitude": 143.944017, "tags": [ "voluptate", "labore", "ullamco", "aute", "do", "ad", "ad" ], "friends": [ { "id": 0, "name": "Saunders Wolfe" }, { "id": 1, "name": "Kaye Huber" }, { "id": 2, "name": "Shari Pierce" } ], "greeting": "Hello, Snow Carr! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f5e7e3f503c7b9d4f", "index": 626, "guid": "4cea58fe-65dc-4f9b-aa5b-428ed33ee59f", "isActive": false, "balance": "$2,840.34", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Lucinda Merritt", "gender": "female", "company": "MAXEMIA", "email": "lucindamerritt@maxemia.com", "phone": "+1 (983) 576-3932", "address": "443 Evans Street, Ivanhoe, American Samoa, 3625", "about": "Ullamco Lorem velit cillum in deserunt laborum labore pariatur. Qui commodo eiusmod magna consequat sit anim excepteur enim culpa esse. Sit irure amet non magna ipsum nostrud. Officia elit enim pariatur elit amet qui ipsum reprehenderit commodo.\r\n", "registered": "2014-06-14T12:01:46-12:00", "latitude": -21.216849, "longitude": 93.027, "tags": [ "id", "cupidatat", "magna", "in", "irure", "culpa", "eu" ], "friends": [ { "id": 0, "name": "Avis Aguirre" }, { "id": 1, "name": "Zimmerman Luna" }, { "id": 2, "name": "Marcie Bowen" } ], "greeting": "Hello, Lucinda Merritt! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fd28dc1af68105117", "index": 627, "guid": "985c93d5-5374-45ee-8730-287f555646c4", "isActive": true, "balance": "$2,490.98", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Young Mueller", "gender": "female", "company": "GENMY", "email": "youngmueller@genmy.com", "phone": "+1 (822) 437-3936", "address": "258 Croton Loop, Teasdale, Delaware, 6594", "about": "Ut ut velit id exercitation culpa laboris eu veniam mollit est mollit. Eu cupidatat reprehenderit aute mollit et adipisicing id. Consequat irure nulla ullamco quis reprehenderit fugiat officia. Lorem reprehenderit deserunt cupidatat ut voluptate nulla nostrud sint laboris proident velit in dolor adipisicing. Sit non laboris dolore qui anim cillum dolor quis. Nulla et dolor fugiat sint proident ut cupidatat pariatur culpa. Ex voluptate ipsum minim esse cupidatat in eiusmod pariatur excepteur magna dolor minim sit.\r\n", "registered": "2014-01-23T22:59:41-13:00", "latitude": 80.013926, "longitude": -100.597423, "tags": [ "est", "et", "ut", "sit", "nisi", "cupidatat", "excepteur" ], "friends": [ { "id": 0, "name": "Marcella Duncan" }, { "id": 1, "name": "Cook Burt" }, { "id": 2, "name": "Jayne Saunders" } ], "greeting": "Hello, Young Mueller! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ff483f8724cfcc03f", "index": 628, "guid": "c277692d-27bd-4513-ab3a-01dc1c6439ac", "isActive": true, "balance": "$3,224.77", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Laverne Caldwell", "gender": "female", "company": "SCENTRIC", "email": "lavernecaldwell@scentric.com", "phone": "+1 (840) 464-3063", "address": "260 Cortelyou Road, Blandburg, Pennsylvania, 4702", "about": "Et non dolor in laborum eiusmod labore eiusmod culpa id minim dolore mollit mollit. Ipsum duis et in adipisicing anim dolore dolor quis reprehenderit anim nostrud enim proident. Veniam sint ea proident qui id.\r\n", "registered": "2014-04-13T05:43:31-12:00", "latitude": -35.092847, "longitude": -153.008575, "tags": [ "ut", "veniam", "tempor", "mollit", "non", "excepteur", "pariatur" ], "friends": [ { "id": 0, "name": "Isabella House" }, { "id": 1, "name": "Kristine Dudley" }, { "id": 2, "name": "Susanna Wynn" } ], "greeting": "Hello, Laverne Caldwell! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fa5f0c58a0b4b7c39", "index": 629, "guid": "bf908ed7-3701-4407-a60d-14a9b1704dc3", "isActive": false, "balance": "$1,522.60", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Britney Wilkinson", "gender": "female", "company": "BULLJUICE", "email": "britneywilkinson@bulljuice.com", "phone": "+1 (970) 430-2718", "address": "557 Tompkins Avenue, Loretto, Georgia, 8874", "about": "Reprehenderit dolor labore ad eiusmod aute aute. Qui officia aliquip labore enim esse fugiat fugiat enim in ullamco ullamco consequat. Mollit irure mollit anim exercitation adipisicing Lorem ullamco in. Labore duis nostrud dolor dolore Lorem exercitation.\r\n", "registered": "2014-05-10T15:07:22-12:00", "latitude": -34.51043, "longitude": -102.825037, "tags": [ "duis", "occaecat", "aute", "dolor", "est", "nisi", "incididunt" ], "friends": [ { "id": 0, "name": "Marsh Bailey" }, { "id": 1, "name": "Burnett Barry" }, { "id": 2, "name": "Mona Atkins" } ], "greeting": "Hello, Britney Wilkinson! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f16ee0c8afe79b086", "index": 630, "guid": "e8eb3037-a314-4b29-b876-7fc1b77b9662", "isActive": false, "balance": "$2,348.07", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Annette Donaldson", "gender": "female", "company": "ELEMANTRA", "email": "annettedonaldson@elemantra.com", "phone": "+1 (851) 472-2545", "address": "420 Stone Avenue, Thatcher, North Dakota, 1789", "about": "Lorem ipsum cupidatat elit eiusmod esse ullamco ut sunt non officia Lorem proident. Ea deserunt aliqua consequat sunt velit id aute voluptate commodo. Reprehenderit anim incididunt sit nisi veniam id tempor id fugiat ipsum officia fugiat duis irure. Esse aliqua fugiat quis aliqua ea pariatur pariatur magna qui culpa voluptate. Elit ea reprehenderit pariatur sint quis.\r\n", "registered": "2014-09-17T07:21:43-12:00", "latitude": 67.137569, "longitude": -56.732573, "tags": [ "aliquip", "proident", "quis", "voluptate", "ut", "sunt", "qui" ], "friends": [ { "id": 0, "name": "Kari Hutchinson" }, { "id": 1, "name": "Corina Decker" }, { "id": 2, "name": "Farrell Cochran" } ], "greeting": "Hello, Annette Donaldson! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fc4e7d5f484d91321", "index": 631, "guid": "c3d664cc-56e4-4f71-91bb-f244df82e32e", "isActive": true, "balance": "$2,383.38", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Edwards Mckay", "gender": "male", "company": "ASSISTIX", "email": "edwardsmckay@assistix.com", "phone": "+1 (907) 501-2494", "address": "576 Powell Street, Naomi, Louisiana, 3490", "about": "Aute dolor minim proident velit veniam ut consectetur enim cupidatat quis. Eiusmod ullamco adipisicing in Lorem dolor eu sit qui ipsum cupidatat voluptate deserunt. Aliquip voluptate elit Lorem nisi magna sit id magna. Ad anim occaecat sit aliquip ipsum adipisicing aute ut.\r\n", "registered": "2014-09-23T07:04:50-12:00", "latitude": 40.747131, "longitude": -133.093274, "tags": [ "amet", "aliqua", "magna", "minim", "ipsum", "commodo", "laborum" ], "friends": [ { "id": 0, "name": "Day Simpson" }, { "id": 1, "name": "Marissa Everett" }, { "id": 2, "name": "Mcgowan Delgado" } ], "greeting": "Hello, Edwards Mckay! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fe8f00ab6b19c322b", "index": 632, "guid": "548a7093-277f-4342-904d-688db075bdad", "isActive": false, "balance": "$1,672.84", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Beck Mcgowan", "gender": "male", "company": "ARTIQ", "email": "beckmcgowan@artiq.com", "phone": "+1 (842) 553-2502", "address": "289 Bradford Street, Virgie, Northern Mariana Islands, 3738", "about": "Ex ut eiusmod reprehenderit nostrud aliquip qui officia sunt eu ipsum ad aliquip qui amet. Minim exercitation dolore aliqua pariatur amet culpa nisi ad veniam fugiat enim. Officia mollit esse anim et excepteur anim quis non et officia sunt. Adipisicing in esse voluptate fugiat cupidatat reprehenderit non anim do enim fugiat esse non commodo. Exercitation dolore officia consequat eu aute mollit proident ut consequat aliquip laborum.\r\n", "registered": "2014-05-13T23:04:54-12:00", "latitude": 7.550757, "longitude": -134.516178, "tags": [ "qui", "proident", "cupidatat", "consectetur", "enim", "non", "irure" ], "friends": [ { "id": 0, "name": "Belinda Fleming" }, { "id": 1, "name": "Kathie Burton" }, { "id": 2, "name": "Jordan Graves" } ], "greeting": "Hello, Beck Mcgowan! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fa39e591f654ae074", "index": 633, "guid": "ae1a2473-d1b9-4cb5-855a-f8e21b44e979", "isActive": true, "balance": "$1,112.72", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Vasquez Potts", "gender": "male", "company": "RENOVIZE", "email": "vasquezpotts@renovize.com", "phone": "+1 (906) 416-3591", "address": "701 Montague Street, Weogufka, Colorado, 4998", "about": "Veniam commodo Lorem commodo voluptate incididunt consequat. Aliqua non dolore ipsum incididunt officia ullamco labore velit voluptate. Sint ut veniam mollit dolore esse non commodo.\r\n", "registered": "2014-03-29T18:21:56-13:00", "latitude": -86.92948, "longitude": 13.808144, "tags": [ "culpa", "elit", "minim", "id", "nostrud", "nisi", "aliquip" ], "friends": [ { "id": 0, "name": "Herminia Holland" }, { "id": 1, "name": "Marianne Hewitt" }, { "id": 2, "name": "Hicks Porter" } ], "greeting": "Hello, Vasquez Potts! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f4f2aa184258d700b", "index": 634, "guid": "18dd8b4d-d80a-4330-82e4-99e6d3de43b1", "isActive": true, "balance": "$1,630.61", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Doreen Callahan", "gender": "female", "company": "UNCORP", "email": "doreencallahan@uncorp.com", "phone": "+1 (851) 401-3788", "address": "847 Louise Terrace, Fivepointville, Idaho, 9963", "about": "Ex elit do velit sit tempor do nulla incididunt aliquip Lorem ad magna anim. Occaecat in mollit ex voluptate pariatur. Lorem deserunt cillum ad dolore. Cupidatat fugiat officia amet consectetur et aliquip proident qui. Nisi culpa consectetur mollit qui excepteur. Eiusmod culpa ea qui et esse reprehenderit id mollit officia quis cupidatat commodo sint non. Tempor amet consequat irure ea pariatur magna cupidatat voluptate laborum.\r\n", "registered": "2014-05-29T15:11:05-12:00", "latitude": -54.354405, "longitude": 83.517906, "tags": [ "in", "reprehenderit", "magna", "officia", "excepteur", "sit", "deserunt" ], "friends": [ { "id": 0, "name": "Hopkins Christensen" }, { "id": 1, "name": "Shawna Salazar" }, { "id": 2, "name": "Kaufman Emerson" } ], "greeting": "Hello, Doreen Callahan! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f645c40afadd417eb", "index": 635, "guid": "d509fda2-5e03-4ecb-b811-10f6cec9df1e", "isActive": true, "balance": "$3,615.64", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Tina Velasquez", "gender": "female", "company": "ZOUNDS", "email": "tinavelasquez@zounds.com", "phone": "+1 (909) 496-3551", "address": "594 Butler Place, Boyd, Marshall Islands, 1329", "about": "Et cillum duis aliqua voluptate sit excepteur incididunt enim est exercitation. Esse laborum cillum cupidatat est duis do ea culpa reprehenderit in consectetur. Irure officia incididunt veniam anim reprehenderit enim.\r\n", "registered": "2014-07-02T14:38:45-12:00", "latitude": 80.965922, "longitude": 130.031717, "tags": [ "proident", "ullamco", "minim", "minim", "elit", "voluptate", "ut" ], "friends": [ { "id": 0, "name": "Rosa Chapman" }, { "id": 1, "name": "Skinner Jennings" }, { "id": 2, "name": "Hodges Logan" } ], "greeting": "Hello, Tina Velasquez! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f3b0a2e1ced570a6f", "index": 636, "guid": "1fc3c7ef-4bfd-4f99-b9d5-6d5a00a11d28", "isActive": false, "balance": "$2,731.53", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Mcmahon Sloan", "gender": "male", "company": "TETAK", "email": "mcmahonsloan@tetak.com", "phone": "+1 (844) 470-2991", "address": "954 Willoughby Avenue, Wilmington, New York, 5999", "about": "Non in fugiat exercitation pariatur anim sint velit. Tempor fugiat laborum laboris ullamco. Excepteur velit proident incididunt ad nulla. Pariatur id officia ea cupidatat velit aliqua Lorem sunt magna nostrud ex culpa commodo. Est qui amet minim commodo dolore sunt sunt laboris ea nisi. Elit velit voluptate nisi anim irure exercitation nulla labore eu deserunt sint officia. Ad minim ad mollit pariatur ea et cupidatat minim commodo aute ut ut pariatur.\r\n", "registered": "2014-02-18T05:51:33-13:00", "latitude": -49.794466, "longitude": -9.293611, "tags": [ "proident", "aliquip", "deserunt", "reprehenderit", "aliqua", "est", "cupidatat" ], "friends": [ { "id": 0, "name": "Aguirre Lamb" }, { "id": 1, "name": "Montgomery Jensen" }, { "id": 2, "name": "Riggs Carrillo" } ], "greeting": "Hello, Mcmahon Sloan! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f7824e01e5fc60923", "index": 637, "guid": "3800006f-a47a-4d2d-aa1b-bdc6a4599468", "isActive": false, "balance": "$3,953.13", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Ruth Mccarthy", "gender": "female", "company": "QUILITY", "email": "ruthmccarthy@quility.com", "phone": "+1 (970) 480-3998", "address": "530 Buffalo Avenue, Cochranville, Guam, 3167", "about": "Sit veniam cillum tempor consequat nulla enim ullamco ut consectetur nulla mollit in tempor. Qui irure esse culpa cillum qui adipisicing culpa aliqua non adipisicing duis id aliqua adipisicing. Aliquip consectetur labore anim ex aliqua aute veniam duis ad qui. Ullamco tempor anim cupidatat eiusmod voluptate ut magna aute culpa.\r\n", "registered": "2014-06-16T15:14:20-12:00", "latitude": -79.371731, "longitude": 159.986757, "tags": [ "veniam", "est", "labore", "id", "duis", "enim", "dolor" ], "friends": [ { "id": 0, "name": "Sykes Salas" }, { "id": 1, "name": "Houston Castillo" }, { "id": 2, "name": "Kane Tanner" } ], "greeting": "Hello, Ruth Mccarthy! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fc3e2d3f8864634ef", "index": 638, "guid": "d66dae72-da42-4fd4-8075-745a3a8e69d6", "isActive": false, "balance": "$2,857.23", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Lott Chase", "gender": "male", "company": "TEMORAK", "email": "lottchase@temorak.com", "phone": "+1 (985) 425-3525", "address": "418 Boynton Place, Bend, Virgin Islands, 7357", "about": "Aliqua deserunt tempor officia qui deserunt ex. Consequat irure magna ullamco non ut pariatur quis deserunt id excepteur cillum voluptate. Elit adipisicing cupidatat Lorem occaecat fugiat amet aliqua do pariatur ullamco ea adipisicing labore elit. Et excepteur eu aute esse laboris dolore anim deserunt id laborum culpa esse.\r\n", "registered": "2014-06-12T05:51:33-12:00", "latitude": -64.698676, "longitude": -29.945802, "tags": [ "et", "nulla", "tempor", "do", "est", "nostrud", "proident" ], "friends": [ { "id": 0, "name": "Osborne Suarez" }, { "id": 1, "name": "Rice Leonard" }, { "id": 2, "name": "Martina Castro" } ], "greeting": "Hello, Lott Chase! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ff2e06b73a3c9246e", "index": 639, "guid": "f8d35618-9555-490c-8a3b-db8f72cef11f", "isActive": true, "balance": "$1,716.22", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Dawson Burks", "gender": "male", "company": "CEMENTION", "email": "dawsonburks@cemention.com", "phone": "+1 (944) 499-2102", "address": "589 Dekoven Court, Welch, Massachusetts, 3407", "about": "Ut cupidatat sint magna id id exercitation ad minim aliqua aute dolor occaecat. Id est enim laboris fugiat fugiat sit sint dolore reprehenderit ipsum mollit consequat. Aliquip culpa nulla dolor Lorem cupidatat adipisicing qui laborum nostrud amet et. Labore exercitation nulla dolor excepteur esse aliqua magna proident ad nisi veniam irure ipsum dolor. Veniam Lorem aliquip laboris nisi.\r\n", "registered": "2014-08-17T05:33:27-12:00", "latitude": 26.315874, "longitude": -125.678916, "tags": [ "culpa", "officia", "adipisicing", "est", "ad", "pariatur", "sint" ], "friends": [ { "id": 0, "name": "Stella Perry" }, { "id": 1, "name": "Reilly Hansen" }, { "id": 2, "name": "Oneill Avery" } ], "greeting": "Hello, Dawson Burks! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f807a94b0a81b265b", "index": 640, "guid": "0201971b-ce6f-4c9c-82e0-986d4b34bf86", "isActive": true, "balance": "$1,896.98", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Barbara Holman", "gender": "female", "company": "PROXSOFT", "email": "barbaraholman@proxsoft.com", "phone": "+1 (963) 439-3810", "address": "317 Evergreen Avenue, Norvelt, Utah, 9858", "about": "Duis reprehenderit sint Lorem culpa consectetur. Adipisicing consequat consequat velit exercitation in occaecat incididunt eu ex nisi. Duis aute dolor sit irure deserunt deserunt aliquip pariatur irure ut. Qui labore commodo dolore sit in velit quis irure sint esse est. Aliqua qui laboris laborum aliqua commodo laborum aute aliqua dolor amet ea. Labore sint dolore enim incididunt esse anim reprehenderit. Nostrud voluptate minim labore ea ea tempor ad irure velit ea ullamco aute aliqua velit.\r\n", "registered": "2014-02-09T13:20:52-13:00", "latitude": 45.353375, "longitude": -6.854702, "tags": [ "nulla", "dolor", "nisi", "nostrud", "in", "est", "esse" ], "friends": [ { "id": 0, "name": "Calderon Boyle" }, { "id": 1, "name": "Lindsey Bauer" }, { "id": 2, "name": "Kerri Avila" } ], "greeting": "Hello, Barbara Holman! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fbd7e7a9f7c9a514a", "index": 641, "guid": "31630ec0-6867-491f-a79b-50e7a8dc7a41", "isActive": true, "balance": "$2,749.11", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Katina Vazquez", "gender": "female", "company": "GEEKY", "email": "katinavazquez@geeky.com", "phone": "+1 (880) 510-2707", "address": "967 Hart Street, Springhill, Montana, 4551", "about": "Do est in cupidatat magna sunt dolor ut sint nulla occaecat nisi fugiat. Elit exercitation pariatur eiusmod voluptate exercitation in Lorem ad aliquip enim laborum aliquip ut sunt. Duis laborum id sunt cillum. Cupidatat ad duis nostrud velit pariatur laborum excepteur tempor et nulla fugiat.\r\n", "registered": "2014-08-18T14:56:52-12:00", "latitude": -49.779192, "longitude": -158.86887, "tags": [ "eu", "exercitation", "nulla", "dolore", "eu", "fugiat", "in" ], "friends": [ { "id": 0, "name": "Addie Tucker" }, { "id": 1, "name": "Gilmore Swanson" }, { "id": 2, "name": "Kendra Miles" } ], "greeting": "Hello, Katina Vazquez! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fc4b30009980b5eda", "index": 642, "guid": "9af5b801-69e5-41da-851f-b47cc7a6f32d", "isActive": false, "balance": "$2,935.79", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Casey Hays", "gender": "male", "company": "FUELWORKS", "email": "caseyhays@fuelworks.com", "phone": "+1 (860) 400-2138", "address": "580 Kiely Place, Lorraine, Wisconsin, 3222", "about": "Velit id reprehenderit fugiat qui exercitation ad sunt eiusmod exercitation consectetur ipsum dolore laboris. Et dolore nisi eu reprehenderit culpa labore sit nulla commodo pariatur. Dolor pariatur id aliqua occaecat adipisicing aliquip sunt ut enim sint. Eu nisi et esse cillum eiusmod. Nostrud incididunt amet ad pariatur consequat anim pariatur commodo ipsum Lorem. Officia id nisi nisi incididunt aliquip ex aliqua ex id labore dolor.\r\n", "registered": "2014-05-17T10:57:41-12:00", "latitude": 52.315961, "longitude": -35.580446, "tags": [ "id", "veniam", "adipisicing", "labore", "id", "elit", "dolore" ], "friends": [ { "id": 0, "name": "Boone Whitley" }, { "id": 1, "name": "Campbell Stone" }, { "id": 2, "name": "Moody Villarreal" } ], "greeting": "Hello, Casey Hays! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f272ce38b0bbc906c", "index": 643, "guid": "21de67ad-fd2e-4e5b-b401-625e87504acd", "isActive": false, "balance": "$3,079.56", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Walker Howe", "gender": "male", "company": "MAROPTIC", "email": "walkerhowe@maroptic.com", "phone": "+1 (894) 497-2441", "address": "831 Lott Avenue, Soudan, Maine, 5701", "about": "Eu laboris minim et sit. Sint anim nulla voluptate et fugiat dolor occaecat. Anim ut est in incididunt incididunt veniam ipsum veniam. Adipisicing aliqua eu cupidatat eu ullamco proident laboris consequat velit in excepteur pariatur. Velit voluptate cupidatat sint in laboris nisi sit est aute proident mollit minim.\r\n", "registered": "2014-04-27T20:28:59-12:00", "latitude": 2.029977, "longitude": 62.458831, "tags": [ "sint", "consectetur", "cillum", "minim", "sit", "excepteur", "culpa" ], "friends": [ { "id": 0, "name": "Keisha Keith" }, { "id": 1, "name": "Hayden Mayo" }, { "id": 2, "name": "Isabel Rosales" } ], "greeting": "Hello, Walker Howe! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fa1a29c44ef9c5700", "index": 644, "guid": "eab92006-72ac-47c6-9ec5-f310fc2c8409", "isActive": true, "balance": "$1,773.88", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Sharron Mason", "gender": "female", "company": "BARKARAMA", "email": "sharronmason@barkarama.com", "phone": "+1 (804) 466-2585", "address": "585 Brighton Avenue, Troy, Virginia, 9477", "about": "Pariatur laborum non consequat tempor sit ad irure sit. Dolor excepteur mollit deserunt exercitation cillum labore aliquip ex deserunt aute. Fugiat pariatur excepteur voluptate consectetur sit excepteur irure consequat minim commodo consectetur occaecat. Nulla aute id ullamco officia commodo minim dolor ad. Quis cupidatat est exercitation consequat ut dolore deserunt anim qui exercitation. Tempor ex nulla sunt aliquip laborum officia consequat veniam Lorem tempor incididunt officia proident.\r\n", "registered": "2014-04-19T04:45:49-12:00", "latitude": -42.696021, "longitude": -173.524371, "tags": [ "incididunt", "velit", "ullamco", "magna", "enim", "excepteur", "qui" ], "friends": [ { "id": 0, "name": "Sutton Warren" }, { "id": 1, "name": "Benton Barlow" }, { "id": 2, "name": "Harvey Davis" } ], "greeting": "Hello, Sharron Mason! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f512e8ec3f221238d", "index": 645, "guid": "44a5323a-4bb3-4d02-a5ab-872d223d6bf9", "isActive": true, "balance": "$3,305.65", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Cecile Solis", "gender": "female", "company": "BYTREX", "email": "cecilesolis@bytrex.com", "phone": "+1 (855) 431-3416", "address": "211 Gain Court, Driftwood, Kentucky, 6925", "about": "Aliquip do ut aliquip velit excepteur ad esse ullamco. Aliquip ad irure elit aliqua aliquip sit exercitation ut aute sit cupidatat commodo amet nisi. Aute duis amet irure nostrud id cupidatat irure enim ex quis minim labore. Ex aute ea amet quis voluptate proident ad cillum sunt.\r\n", "registered": "2014-06-15T07:47:41-12:00", "latitude": -54.52805, "longitude": 145.722405, "tags": [ "tempor", "ut", "aute", "do", "voluptate", "laboris", "aliquip" ], "friends": [ { "id": 0, "name": "Wilma Riggs" }, { "id": 1, "name": "Craig Matthews" }, { "id": 2, "name": "Simone Petty" } ], "greeting": "Hello, Cecile Solis! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f4b60cc248c865d09", "index": 646, "guid": "6c856b4a-b499-41e6-aee1-e42d07af80e2", "isActive": false, "balance": "$2,009.70", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Tricia Marshall", "gender": "female", "company": "ECRAZE", "email": "triciamarshall@ecraze.com", "phone": "+1 (921) 564-2461", "address": "920 Ocean Parkway, Frank, Connecticut, 5924", "about": "Cillum ex excepteur mollit eiusmod cillum do minim non dolore et tempor sint pariatur. In in esse dolore commodo nisi adipisicing. Pariatur Lorem fugiat aliqua nisi dolore proident amet non est ea ipsum culpa. Ullamco ad consectetur et Lorem et proident sint sit occaecat eiusmod velit et sit pariatur. Minim commodo aute nulla cillum officia commodo labore irure laboris eiusmod ut. Consectetur est cillum enim mollit magna amet qui minim eu in anim minim excepteur. Anim reprehenderit nulla nulla est sit proident cillum.\r\n", "registered": "2014-03-11T21:56:55-13:00", "latitude": -27.071824, "longitude": -105.604087, "tags": [ "cupidatat", "ex", "id", "esse", "ea", "dolore", "fugiat" ], "friends": [ { "id": 0, "name": "Terrie Black" }, { "id": 1, "name": "Miller Sykes" }, { "id": 2, "name": "Richards Becker" } ], "greeting": "Hello, Tricia Marshall! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fefc77750e85af626", "index": 647, "guid": "1547790a-01ee-4154-a9ae-e25a2caf29a6", "isActive": true, "balance": "$1,877.71", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Madeline Cox", "gender": "female", "company": "CORPULSE", "email": "madelinecox@corpulse.com", "phone": "+1 (808) 552-3261", "address": "352 Commercial Street, Clara, Mississippi, 9296", "about": "Nisi non cillum in nisi cupidatat. Irure exercitation ex nisi officia. Deserunt cupidatat consequat nostrud deserunt et nisi pariatur qui eu nostrud labore. Et excepteur culpa aliquip culpa culpa aute ea in reprehenderit ut. Nulla aliquip aliquip deserunt dolor proident enim aute. Dolor laboris commodo occaecat sunt sit et veniam ex aute ut labore ad ipsum pariatur. Amet reprehenderit anim deserunt elit aliqua esse occaecat id fugiat.\r\n", "registered": "2014-04-16T07:24:39-12:00", "latitude": 26.813452, "longitude": -3.96023, "tags": [ "minim", "do", "tempor", "deserunt", "ea", "cupidatat", "voluptate" ], "friends": [ { "id": 0, "name": "Odom Murphy" }, { "id": 1, "name": "Roberta Kim" }, { "id": 2, "name": "Watson Stafford" } ], "greeting": "Hello, Madeline Cox! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ffe4ae48e7f949f91", "index": 648, "guid": "93355796-c849-4f10-88ad-095803ec6dda", "isActive": false, "balance": "$3,098.71", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Fischer Daniel", "gender": "male", "company": "NUTRALAB", "email": "fischerdaniel@nutralab.com", "phone": "+1 (905) 519-3532", "address": "756 Colby Court, Dunlo, Washington, 1843", "about": "Consequat id mollit cillum nisi adipisicing fugiat reprehenderit. Eu consequat commodo aliqua et consectetur tempor ad pariatur cillum ad in laborum do aliquip. Dolore Lorem veniam officia excepteur excepteur quis irure sit ea aliquip laborum cillum ipsum non. Ullamco ipsum do excepteur minim.\r\n", "registered": "2014-07-06T01:05:35-12:00", "latitude": -54.940548, "longitude": -142.939946, "tags": [ "ad", "eiusmod", "eu", "dolore", "ex", "amet", "dolore" ], "friends": [ { "id": 0, "name": "Gladys Hudson" }, { "id": 1, "name": "Anna Snow" }, { "id": 2, "name": "Potter Patrick" } ], "greeting": "Hello, Fischer Daniel! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f2f1bd3fe9dc1dd83", "index": 649, "guid": "9da81f16-b78a-406b-a5f4-5b4c8a9e0c8e", "isActive": true, "balance": "$1,768.24", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Crosby Padilla", "gender": "male", "company": "PHORMULA", "email": "crosbypadilla@phormula.com", "phone": "+1 (967) 576-3361", "address": "498 Menahan Street, Coinjock, Tennessee, 7755", "about": "Aute incididunt eiusmod qui nostrud eu ullamco proident proident non ut. Veniam quis sunt Lorem ullamco cillum consequat occaecat aute consectetur amet qui incididunt quis ipsum. Aliquip officia ullamco qui veniam ipsum irure eiusmod eiusmod eu cillum labore id duis. Sunt consectetur aliquip velit eu nisi laboris cupidatat commodo sint dolore. Non id nostrud mollit magna aliqua cupidatat anim nisi minim commodo enim ipsum amet voluptate. Laborum ad proident anim pariatur laborum.\r\n", "registered": "2014-06-23T22:33:07-12:00", "latitude": 21.004137, "longitude": 125.490945, "tags": [ "cillum", "incididunt", "tempor", "do", "tempor", "ullamco", "reprehenderit" ], "friends": [ { "id": 0, "name": "Kelly Melendez" }, { "id": 1, "name": "Beatriz Vasquez" }, { "id": 2, "name": "Avila Tyler" } ], "greeting": "Hello, Crosby Padilla! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ff94d6b36f0211fd1", "index": 650, "guid": "a91053f2-2942-451a-aa56-28f4a7358601", "isActive": false, "balance": "$2,313.12", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Berta Mooney", "gender": "female", "company": "SCENTY", "email": "bertamooney@scenty.com", "phone": "+1 (826) 455-3442", "address": "406 Cornelia Street, Orin, Alabama, 309", "about": "Reprehenderit dolore eiusmod labore do adipisicing dolore esse. Proident laborum quis excepteur reprehenderit nisi in consequat dolore deserunt. Commodo excepteur irure do officia fugiat ex id.\r\n", "registered": "2014-07-05T22:22:15-12:00", "latitude": -28.264095, "longitude": -65.196481, "tags": [ "do", "aute", "proident", "nostrud", "id", "tempor", "consequat" ], "friends": [ { "id": 0, "name": "Sloan Garrison" }, { "id": 1, "name": "Adele Best" }, { "id": 2, "name": "Robin Mccormick" } ], "greeting": "Hello, Berta Mooney! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f74a3814bfbe4f0ff", "index": 651, "guid": "3c6bd7cb-575e-4379-a6f2-9acfb426acdb", "isActive": false, "balance": "$3,771.98", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Lorraine Cross", "gender": "female", "company": "CAPSCREEN", "email": "lorrainecross@capscreen.com", "phone": "+1 (937) 497-3233", "address": "302 Frost Street, Buxton, Ohio, 7113", "about": "Anim commodo ut ut est culpa aliquip ullamco. Ullamco aliquip minim aute magna tempor qui non voluptate quis mollit anim sint ut. Non adipisicing ullamco veniam ut duis velit. Ut cupidatat mollit amet dolore Lorem anim sit. Cillum magna exercitation do id esse in mollit.\r\n", "registered": "2014-09-01T08:09:38-12:00", "latitude": 57.617192, "longitude": 51.611689, "tags": [ "duis", "nulla", "non", "sit", "in", "exercitation", "consequat" ], "friends": [ { "id": 0, "name": "Hall Albert" }, { "id": 1, "name": "Moran Newton" }, { "id": 2, "name": "Mai Kemp" } ], "greeting": "Hello, Lorraine Cross! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f11bcd9f64412bd9b", "index": 652, "guid": "f5bdd8f7-fdd5-479a-a958-816c805c586a", "isActive": true, "balance": "$3,695.75", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Jolene Nelson", "gender": "female", "company": "KOFFEE", "email": "jolenenelson@koffee.com", "phone": "+1 (937) 429-2949", "address": "369 Kosciusko Street, Shawmut, Hawaii, 6784", "about": "Id voluptate occaecat minim dolore esse mollit velit. Sunt enim labore amet ea esse in irure ipsum excepteur aliqua consectetur sit eu magna. Culpa eu incididunt velit deserunt excepteur tempor. Proident ipsum cillum est Lorem ipsum exercitation deserunt qui irure eu. Cillum quis id excepteur excepteur occaecat ad mollit aliquip dolore incididunt cupidatat deserunt ea. Eiusmod nulla velit eu est fugiat magna aliquip tempor tempor sint ipsum exercitation. Duis et elit sit Lorem esse proident.\r\n", "registered": "2014-07-12T21:24:00-12:00", "latitude": -59.392237, "longitude": -130.800204, "tags": [ "cupidatat", "ut", "voluptate", "in", "dolor", "eu", "sint" ], "friends": [ { "id": 0, "name": "Cooke Duke" }, { "id": 1, "name": "Sullivan Perez" }, { "id": 2, "name": "Sonia Hoffman" } ], "greeting": "Hello, Jolene Nelson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f7df4d24d5214d673", "index": 653, "guid": "a4ca4f21-85ff-4d1b-9c6f-8f563ff60383", "isActive": true, "balance": "$1,542.02", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Gamble Waller", "gender": "male", "company": "XIXAN", "email": "gamblewaller@xixan.com", "phone": "+1 (995) 537-3834", "address": "580 Clara Street, Boonville, New Mexico, 7949", "about": "Amet qui consectetur ad voluptate cupidatat anim nulla. Reprehenderit cillum ea magna enim dolor dolore voluptate ullamco sunt cupidatat. Deserunt reprehenderit proident irure aute in nulla id elit. Ex ex ex est officia commodo ut aliqua tempor fugiat consectetur in eu dolore. Deserunt Lorem culpa proident Lorem dolore nulla deserunt sint.\r\n", "registered": "2014-08-20T01:30:31-12:00", "latitude": -33.344075, "longitude": 15.169448, "tags": [ "ex", "ea", "ipsum", "labore", "adipisicing", "occaecat", "excepteur" ], "friends": [ { "id": 0, "name": "Chaney Bowman" }, { "id": 1, "name": "Bette Morales" }, { "id": 2, "name": "Jimenez Mejia" } ], "greeting": "Hello, Gamble Waller! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f009cef9e98781bdf", "index": 654, "guid": "29d6cceb-e490-469d-ab7b-96f5e763e0a8", "isActive": true, "balance": "$1,403.78", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Kristi Hurst", "gender": "female", "company": "ACCUPHARM", "email": "kristihurst@accupharm.com", "phone": "+1 (804) 559-3559", "address": "987 Wyckoff Street, Chicopee, Maryland, 8643", "about": "Irure dolor dolore anim excepteur irure Lorem. Laborum est tempor ipsum labore deserunt culpa cupidatat eu veniam. Labore nulla ea enim minim ex pariatur ipsum aute cillum incididunt tempor ipsum ad anim. Nisi qui proident nulla ad occaecat exercitation tempor pariatur enim cillum reprehenderit. Deserunt proident veniam anim proident consequat reprehenderit. Consectetur elit laboris irure esse pariatur magna elit excepteur ipsum mollit magna cillum.\r\n", "registered": "2014-06-30T19:36:18-12:00", "latitude": 25.77876, "longitude": -17.407741, "tags": [ "anim", "Lorem", "mollit", "commodo", "dolore", "ullamco", "sunt" ], "friends": [ { "id": 0, "name": "Paige Kennedy" }, { "id": 1, "name": "Aimee Farrell" }, { "id": 2, "name": "Hood Doyle" } ], "greeting": "Hello, Kristi Hurst! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fac8c4fc8272c9180", "index": 655, "guid": "26421174-616c-4941-beab-777121fe3ba3", "isActive": true, "balance": "$2,173.38", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Ophelia Hoover", "gender": "female", "company": "URBANSHEE", "email": "opheliahoover@urbanshee.com", "phone": "+1 (924) 453-2314", "address": "756 Tampa Court, Shrewsbury, Alaska, 9108", "about": "Eu occaecat nostrud veniam nostrud dolor. Ullamco laborum amet aliquip elit consectetur id consequat culpa consequat ad qui in occaecat aute. Culpa est tempor reprehenderit nisi deserunt officia. Dolor ipsum enim labore pariatur voluptate veniam cillum excepteur anim.\r\n", "registered": "2014-06-19T15:13:09-12:00", "latitude": -25.057751, "longitude": 68.123334, "tags": [ "ea", "aliqua", "magna", "nostrud", "occaecat", "eu", "laborum" ], "friends": [ { "id": 0, "name": "Melendez Dalton" }, { "id": 1, "name": "Juana Mcdowell" }, { "id": 2, "name": "Cervantes Marsh" } ], "greeting": "Hello, Ophelia Hoover! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f171ae01e40b85fb6", "index": 656, "guid": "723f7982-3c99-41a1-8d3b-c6f6423fd301", "isActive": false, "balance": "$1,747.32", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Jane Juarez", "gender": "female", "company": "TRANSLINK", "email": "janejuarez@translink.com", "phone": "+1 (862) 475-2613", "address": "414 Troy Avenue, Sugartown, Arizona, 7892", "about": "Dolore voluptate id labore ut tempor sit Lorem. Elit sint fugiat in nisi dolor. Sint sit incididunt culpa mollit. Occaecat consectetur eiusmod dolor exercitation aute culpa amet deserunt proident aliquip commodo adipisicing nostrud. Laboris id consequat pariatur elit laboris ad nostrud tempor nostrud Lorem mollit. Ullamco ad laboris in voluptate Lorem deserunt nulla duis ad exercitation aute ipsum qui non. Ex esse Lorem voluptate nostrud commodo quis veniam mollit labore.\r\n", "registered": "2014-05-07T07:55:07-12:00", "latitude": -22.346853, "longitude": 123.458068, "tags": [ "sunt", "irure", "officia", "non", "excepteur", "consectetur", "minim" ], "friends": [ { "id": 0, "name": "Claudine Dillard" }, { "id": 1, "name": "Milagros Lee" }, { "id": 2, "name": "Wilkins Mayer" } ], "greeting": "Hello, Jane Juarez! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f144b24af248ad5fe", "index": 657, "guid": "dc826563-6c62-4022-b41f-8f4135ffd78d", "isActive": false, "balance": "$2,360.78", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Mcclure Beard", "gender": "male", "company": "MULTIFLEX", "email": "mcclurebeard@multiflex.com", "phone": "+1 (809) 509-2382", "address": "123 Ridgewood Place, Elbert, Federated States Of Micronesia, 2916", "about": "Ullamco aute voluptate ea Lorem dolore labore culpa laborum. Et occaecat ullamco dolore esse. Pariatur tempor sint consectetur tempor duis laboris anim tempor do.\r\n", "registered": "2014-07-22T05:22:35-12:00", "latitude": 66.191188, "longitude": -148.219544, "tags": [ "do", "nostrud", "voluptate", "velit", "occaecat", "voluptate", "aliquip" ], "friends": [ { "id": 0, "name": "Rollins Randolph" }, { "id": 1, "name": "Le Rocha" }, { "id": 2, "name": "Rachel Owen" } ], "greeting": "Hello, Mcclure Beard! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f18f521e31e781a76", "index": 658, "guid": "b1048284-bf31-4718-a086-f8d6d32bcf46", "isActive": true, "balance": "$1,710.45", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Conley Justice", "gender": "male", "company": "DATAGEN", "email": "conleyjustice@datagen.com", "phone": "+1 (946) 439-3578", "address": "618 Narrows Avenue, Groton, Oklahoma, 9655", "about": "Magna adipisicing eiusmod fugiat sint mollit qui fugiat eu eu nulla nisi. Proident velit est commodo ad cupidatat eu elit cillum ipsum occaecat consectetur minim mollit amet. Enim magna nisi amet non exercitation. Eiusmod dolor dolore nostrud exercitation officia do nisi dolore velit nulla culpa minim ullamco duis. Aute exercitation veniam ea adipisicing cupidatat reprehenderit sint elit nisi laborum. Veniam adipisicing elit nisi voluptate dolore.\r\n", "registered": "2014-07-19T13:44:58-12:00", "latitude": 4.368108, "longitude": -165.81182, "tags": [ "amet", "ipsum", "irure", "veniam", "qui", "qui", "nostrud" ], "friends": [ { "id": 0, "name": "Yolanda Walters" }, { "id": 1, "name": "Macias Moon" }, { "id": 2, "name": "Church Byers" } ], "greeting": "Hello, Conley Justice! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f4b9fcd0f8a0a32be", "index": 659, "guid": "cc184042-2420-46d7-9571-5075bf9ff67f", "isActive": true, "balance": "$2,975.39", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Dona Mcdaniel", "gender": "female", "company": "PYRAMI", "email": "donamcdaniel@pyrami.com", "phone": "+1 (892) 443-2072", "address": "798 Conklin Avenue, Marne, Michigan, 1632", "about": "Tempor sunt amet nostrud ullamco ad excepteur commodo in voluptate esse adipisicing sunt velit. Ea voluptate Lorem do laboris minim tempor ad anim ullamco consectetur labore qui. Elit aute sit et cillum adipisicing id. Laboris aliqua nisi ullamco officia velit sint minim pariatur. Magna est voluptate occaecat mollit quis exercitation velit mollit officia. Laborum aliqua aliquip et qui occaecat labore velit proident consectetur officia. Enim magna est laboris reprehenderit ex elit esse.\r\n", "registered": "2014-07-06T13:07:40-12:00", "latitude": 33.954245, "longitude": 5.856287, "tags": [ "tempor", "ullamco", "nisi", "deserunt", "mollit", "tempor", "eiusmod" ], "friends": [ { "id": 0, "name": "Bertie Pearson" }, { "id": 1, "name": "Dora Mcintosh" }, { "id": 2, "name": "Clarice Robertson" } ], "greeting": "Hello, Dona Mcdaniel! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f60ca60ddcaf9868a", "index": 660, "guid": "6f1af9a2-37ec-4d32-82cd-39ce9ca7b768", "isActive": false, "balance": "$2,654.38", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Bennett Sherman", "gender": "male", "company": "COMTRAK", "email": "bennettsherman@comtrak.com", "phone": "+1 (937) 442-3703", "address": "366 Bassett Avenue, Dixonville, Kansas, 3303", "about": "Sunt deserunt sit sint est non. Ea in incididunt est veniam pariatur elit consequat nostrud eiusmod et consequat ad veniam. Nisi id eu excepteur quis nulla. Eu aliqua excepteur anim enim culpa et nisi reprehenderit nulla Lorem. Ex laboris veniam enim irure amet fugiat officia consectetur do. Sunt dolore nulla laborum anim dolore officia enim sit eu incididunt esse deserunt. Aliqua reprehenderit deserunt aute culpa laborum minim et.\r\n", "registered": "2014-02-26T07:11:44-13:00", "latitude": -65.419724, "longitude": -88.64985, "tags": [ "laborum", "eiusmod", "id", "Lorem", "ex", "laborum", "excepteur" ], "friends": [ { "id": 0, "name": "Dianne Gillespie" }, { "id": 1, "name": "Fowler Glass" }, { "id": 2, "name": "Bernadette Wells" } ], "greeting": "Hello, Bennett Sherman! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fdd1f32a197185bee", "index": 661, "guid": "03557da1-5789-4c61-a894-5b8b6d0bc83b", "isActive": false, "balance": "$1,175.77", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Castaneda Love", "gender": "male", "company": "PAPRIKUT", "email": "castanedalove@paprikut.com", "phone": "+1 (931) 442-2308", "address": "469 Little Street, Makena, South Dakota, 4583", "about": "Non Lorem ad Lorem nostrud. Incididunt magna enim ad ipsum. Tempor excepteur commodo elit occaecat dolore elit consequat laborum consectetur. Anim cillum cupidatat enim incididunt sunt non veniam minim ea eu cillum non.\r\n", "registered": "2014-04-08T11:00:10-12:00", "latitude": 23.369876, "longitude": 120.836873, "tags": [ "velit", "dolor", "aute", "occaecat", "proident", "irure", "elit" ], "friends": [ { "id": 0, "name": "Pickett Owens" }, { "id": 1, "name": "Jeanne Levy" }, { "id": 2, "name": "Kelly Dillon" } ], "greeting": "Hello, Castaneda Love! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f03b75d8f047fe637", "index": 662, "guid": "6ed853ba-169a-47f2-959d-8a5094e73003", "isActive": true, "balance": "$3,739.97", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Beth Williamson", "gender": "female", "company": "KINETICUT", "email": "bethwilliamson@kineticut.com", "phone": "+1 (994) 465-3726", "address": "310 Rock Street, Ironton, West Virginia, 9857", "about": "Nisi in quis nulla ut. Id excepteur magna nostrud occaecat excepteur. Quis laborum dolore ad cillum. Est est proident cupidatat magna officia deserunt sit. Dolor culpa nostrud Lorem commodo in magna consequat deserunt tempor sunt irure nostrud sit. Laboris amet sint nulla voluptate nulla et enim minim consequat officia magna anim. Velit anim velit nostrud esse excepteur.\r\n", "registered": "2014-05-28T09:05:26-12:00", "latitude": 88.967209, "longitude": -166.280393, "tags": [ "in", "fugiat", "eu", "Lorem", "id", "id", "commodo" ], "friends": [ { "id": 0, "name": "Owen Ware" }, { "id": 1, "name": "Leanne Alston" }, { "id": 2, "name": "Jeanette Nieves" } ], "greeting": "Hello, Beth Williamson! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fb9338f8c748a31fd", "index": 663, "guid": "117ffab1-0b65-40a0-875a-2c47b95c3248", "isActive": true, "balance": "$3,975.38", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Alexis Deleon", "gender": "female", "company": "PERKLE", "email": "alexisdeleon@perkle.com", "phone": "+1 (931) 585-3935", "address": "851 Perry Place, Blende, Texas, 9828", "about": "Sit voluptate voluptate tempor anim. Pariatur excepteur dolor irure exercitation anim aliqua eiusmod eiusmod non reprehenderit ex. Anim nulla ut sint proident qui ad culpa sunt veniam. Sint aliqua eiusmod ad aliquip do.\r\n", "registered": "2014-07-09T11:14:39-12:00", "latitude": 33.22765, "longitude": 47.166065, "tags": [ "mollit", "deserunt", "nisi", "minim", "exercitation", "eiusmod", "sit" ], "friends": [ { "id": 0, "name": "Jenna Parrish" }, { "id": 1, "name": "Mcknight Farley" }, { "id": 2, "name": "Burton Pugh" } ], "greeting": "Hello, Alexis Deleon! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fcb88679819b7cbdb", "index": 664, "guid": "48865b90-17aa-4c40-bc01-620b309a71b7", "isActive": true, "balance": "$3,508.52", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Little Barber", "gender": "male", "company": "XYMONK", "email": "littlebarber@xymonk.com", "phone": "+1 (950) 415-3751", "address": "187 Wogan Terrace, Babb, Oregon, 4436", "about": "Consequat ullamco officia commodo cupidatat excepteur id esse ipsum id. Consequat quis voluptate dolore laborum tempor excepteur. Veniam nisi pariatur ex irure esse cupidatat in. Veniam consequat deserunt eiusmod non non est cillum amet proident. Esse do dolor aliquip reprehenderit enim ipsum consectetur minim enim adipisicing.\r\n", "registered": "2014-06-18T18:58:17-12:00", "latitude": -27.418314, "longitude": -115.680999, "tags": [ "labore", "Lorem", "sit", "dolor", "Lorem", "laboris", "reprehenderit" ], "friends": [ { "id": 0, "name": "Mason Hayes" }, { "id": 1, "name": "Beatrice Pennington" }, { "id": 2, "name": "Cathy May" } ], "greeting": "Hello, Little Barber! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f5434de9d83c4b5db", "index": 665, "guid": "f0949a7a-de8f-4435-ae27-fe68e4429a6f", "isActive": true, "balance": "$1,738.71", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Janie Hyde", "gender": "female", "company": "ZEROLOGY", "email": "janiehyde@zerology.com", "phone": "+1 (917) 534-3146", "address": "327 Clove Road, Greenfields, Nevada, 2410", "about": "Mollit laboris proident do aute voluptate. Do tempor consequat consequat enim laborum consequat elit aliquip quis. Aliquip ad commodo commodo minim nisi do laboris culpa ut ad labore id. Ea minim elit pariatur veniam anim est mollit id commodo non enim labore consectetur. Eu voluptate minim incididunt cupidatat mollit cillum duis in sunt est cupidatat esse.\r\n", "registered": "2014-05-03T12:11:01-12:00", "latitude": -20.399999, "longitude": 9.011958, "tags": [ "sit", "nisi", "labore", "dolor", "deserunt", "veniam", "ut" ], "friends": [ { "id": 0, "name": "Sophia Nunez" }, { "id": 1, "name": "Debora Hodge" }, { "id": 2, "name": "Madelyn Dominguez" } ], "greeting": "Hello, Janie Hyde! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ff7d0b74eee27c3e8", "index": 666, "guid": "eea5f68e-e437-433f-9d67-07251970851b", "isActive": true, "balance": "$3,987.45", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Bowen Mitchell", "gender": "male", "company": "MIXERS", "email": "bowenmitchell@mixers.com", "phone": "+1 (857) 501-3607", "address": "338 Ridge Boulevard, Grantville, Minnesota, 4958", "about": "Exercitation minim eu voluptate sunt sit aliqua. Et veniam culpa exercitation amet qui occaecat elit minim. Do veniam aliqua ea eiusmod exercitation irure nulla qui. Consequat aute ullamco veniam voluptate esse excepteur consequat. Dolor eiusmod occaecat dolor deserunt magna qui sit velit magna occaecat fugiat voluptate magna. Duis dolore ullamco excepteur amet voluptate in eu fugiat aliqua commodo est officia officia.\r\n", "registered": "2014-03-29T01:52:53-13:00", "latitude": -77.248859, "longitude": -38.980857, "tags": [ "non", "Lorem", "officia", "sit", "amet", "quis", "culpa" ], "friends": [ { "id": 0, "name": "Lynn Rogers" }, { "id": 1, "name": "Rosario Odom" }, { "id": 2, "name": "Cochran Brock" } ], "greeting": "Hello, Bowen Mitchell! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fd239b6eb923294b7", "index": 667, "guid": "d5626093-51fe-48d6-bb5d-bf12db1787e0", "isActive": true, "balance": "$2,064.85", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Lori Dixon", "gender": "female", "company": "QUOTEZART", "email": "loridixon@quotezart.com", "phone": "+1 (958) 572-3446", "address": "507 Ryerson Street, Lafferty, Missouri, 2586", "about": "Voluptate Lorem sint occaecat ipsum deserunt. Cillum quis do sunt velit magna magna officia ea excepteur. Consectetur consectetur ut ex laborum nisi excepteur quis est mollit magna nulla est cillum aliquip. Consectetur duis pariatur cillum proident magna aliquip. Ullamco tempor nostrud nisi tempor excepteur occaecat irure sit consequat nulla officia minim sint.\r\n", "registered": "2014-02-26T22:29:19-13:00", "latitude": -82.391598, "longitude": -35.338809, "tags": [ "irure", "pariatur", "elit", "in", "veniam", "minim", "sit" ], "friends": [ { "id": 0, "name": "Alston Barnes" }, { "id": 1, "name": "Maxine Massey" }, { "id": 2, "name": "Greer Morton" } ], "greeting": "Hello, Lori Dixon! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fbacb5dbdbea25ad3", "index": 668, "guid": "e22ebd38-8064-4df1-acb5-0d74a0d6e33b", "isActive": false, "balance": "$2,318.47", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Douglas Landry", "gender": "male", "company": "NURALI", "email": "douglaslandry@nurali.com", "phone": "+1 (929) 518-3701", "address": "349 Thatford Avenue, Klagetoh, Rhode Island, 9575", "about": "Amet adipisicing culpa est labore eiusmod ut do in eiusmod mollit anim. Velit irure et sint minim sint irure sunt. Nulla eiusmod ipsum eiusmod aliquip ullamco eu tempor voluptate amet pariatur proident. Exercitation anim sint labore culpa fugiat voluptate minim pariatur. Pariatur officia ad esse consequat nulla pariatur. Ut adipisicing ipsum id duis sit pariatur sunt laboris deserunt voluptate aliqua.\r\n", "registered": "2014-08-16T02:25:03-12:00", "latitude": 31.486622, "longitude": 142.626769, "tags": [ "amet", "officia", "esse", "esse", "magna", "et", "sunt" ], "friends": [ { "id": 0, "name": "Moses Garcia" }, { "id": 1, "name": "Jenkins Bowers" }, { "id": 2, "name": "Merritt Whitaker" } ], "greeting": "Hello, Douglas Landry! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fa00942542e4f5d51", "index": 669, "guid": "648d830c-6ad0-4e31-95be-b36715fc38c6", "isActive": true, "balance": "$1,048.47", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Rena Gordon", "gender": "female", "company": "QUINTITY", "email": "renagordon@quintity.com", "phone": "+1 (880) 595-2538", "address": "707 Tillary Street, Movico, Florida, 6587", "about": "Lorem voluptate quis quis pariatur est. Magna laboris excepteur minim deserunt reprehenderit consequat qui cillum ea. Deserunt dolore cupidatat occaecat aute. Est ullamco labore sit elit do magna ullamco eiusmod labore cillum. Excepteur amet non Lorem cupidatat. Nisi mollit est ipsum labore tempor cillum sit dolore amet voluptate enim consectetur duis.\r\n", "registered": "2014-05-20T16:40:55-12:00", "latitude": -36.23494, "longitude": -135.519033, "tags": [ "nostrud", "sunt", "ullamco", "laboris", "ea", "culpa", "reprehenderit" ], "friends": [ { "id": 0, "name": "Harper Downs" }, { "id": 1, "name": "April Rose" }, { "id": 2, "name": "Alfreda Blackwell" } ], "greeting": "Hello, Rena Gordon! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f1788c7097361bcde", "index": 670, "guid": "61f0cbde-3952-4b6d-b110-8dcbba531cc1", "isActive": true, "balance": "$1,016.03", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Ronda Steele", "gender": "female", "company": "GEEKWAGON", "email": "rondasteele@geekwagon.com", "phone": "+1 (903) 469-2610", "address": "719 Cleveland Street, Chaparrito, North Carolina, 2123", "about": "Cillum velit exercitation ut qui sint reprehenderit ad aute culpa adipisicing Lorem cillum ad incididunt. Minim magna duis labore occaecat laborum officia labore eu. Esse enim pariatur commodo sunt. Aliqua sint tempor elit est adipisicing ea. Sit velit dolor aute id veniam dolore aliqua enim nulla eiusmod duis consequat. Nostrud laboris amet aliqua ut.\r\n", "registered": "2014-01-08T04:58:47-13:00", "latitude": 41.992294, "longitude": -120.019129, "tags": [ "nisi", "adipisicing", "ullamco", "in", "aliqua", "aute", "incididunt" ], "friends": [ { "id": 0, "name": "Marisa Dorsey" }, { "id": 1, "name": "Boyer Burch" }, { "id": 2, "name": "Ferguson Miller" } ], "greeting": "Hello, Ronda Steele! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ff43de68b4fac40b9", "index": 671, "guid": "42564232-71d6-49a8-bcca-d8448fc4eab0", "isActive": true, "balance": "$1,668.48", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Compton Gross", "gender": "male", "company": "ZIALACTIC", "email": "comptongross@zialactic.com", "phone": "+1 (996) 439-2467", "address": "509 Neptune Avenue, Coventry, New Hampshire, 8353", "about": "Laboris sit ipsum qui Lorem ullamco ullamco magna aute qui ad sint excepteur in minim. Ea nulla mollit occaecat sunt consectetur esse laborum velit. Excepteur ut anim sit adipisicing. Irure duis cupidatat cupidatat proident qui anim fugiat consequat veniam velit. Esse est reprehenderit sint ullamco veniam do nisi dolor. Ea ullamco ea pariatur enim adipisicing amet labore.\r\n", "registered": "2014-01-07T11:06:06-13:00", "latitude": 19.102234, "longitude": -18.771294, "tags": [ "minim", "exercitation", "quis", "qui", "ad", "irure", "consectetur" ], "friends": [ { "id": 0, "name": "Paula Rowe" }, { "id": 1, "name": "Rosemary Fitzgerald" }, { "id": 2, "name": "Foreman Burris" } ], "greeting": "Hello, Compton Gross! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f80f89dba5e80b117", "index": 672, "guid": "70d18928-31f5-47b0-a2e1-b8ddff83cfd9", "isActive": true, "balance": "$2,753.50", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Kidd Case", "gender": "male", "company": "ROCKABYE", "email": "kiddcase@rockabye.com", "phone": "+1 (977) 555-3588", "address": "270 Lyme Avenue, Enlow, Arkansas, 2214", "about": "Sunt proident pariatur velit laboris eu consequat enim laboris. Voluptate cupidatat cupidatat nostrud consequat laborum commodo non amet veniam est. Est labore qui incididunt proident deserunt nulla exercitation culpa exercitation occaecat. Voluptate fugiat exercitation sunt ipsum reprehenderit fugiat sit nostrud. Cupidatat amet veniam enim ex ea pariatur ea id. Do est et cillum eu minim nostrud.\r\n", "registered": "2014-03-30T04:53:41-13:00", "latitude": -37.667528, "longitude": 8.43259, "tags": [ "labore", "elit", "nulla", "eu", "nulla", "dolor", "proident" ], "friends": [ { "id": 0, "name": "Katherine Hines" }, { "id": 1, "name": "Lakeisha Contreras" }, { "id": 2, "name": "Jodi Chen" } ], "greeting": "Hello, Kidd Case! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f2ff3ac3d22ce1926", "index": 673, "guid": "13e0c439-9744-476b-94bc-2270b19500c8", "isActive": false, "balance": "$1,508.42", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Lena Bean", "gender": "female", "company": "KYAGORO", "email": "lenabean@kyagoro.com", "phone": "+1 (932) 452-3286", "address": "945 Clark Street, Welda, Iowa, 3412", "about": "Adipisicing consequat est pariatur est est do irure. Enim deserunt eu ipsum occaecat anim incididunt. Aute laborum aute laborum nulla veniam. Nulla ut ullamco commodo eu amet veniam pariatur cupidatat est. Adipisicing mollit veniam nostrud magna. Culpa proident cupidatat labore mollit consectetur sunt occaecat.\r\n", "registered": "2014-06-04T12:31:58-12:00", "latitude": -23.449242, "longitude": -156.901867, "tags": [ "duis", "do", "dolor", "exercitation", "aliqua", "cupidatat", "irure" ], "friends": [ { "id": 0, "name": "Beulah Burns" }, { "id": 1, "name": "Stein Bruce" }, { "id": 2, "name": "Mcdowell Gilliam" } ], "greeting": "Hello, Lena Bean! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f08a308f2218255cd", "index": 674, "guid": "d65e9fac-b56d-486a-a4e1-99b7944b33ba", "isActive": true, "balance": "$1,421.34", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Collins Weiss", "gender": "male", "company": "EXTRAGENE", "email": "collinsweiss@extragene.com", "phone": "+1 (818) 434-3611", "address": "831 Everit Street, Elwood, Nebraska, 4077", "about": "Officia non et et exercitation ex nostrud excepteur est tempor aliquip exercitation. Id voluptate consequat commodo dolore aute. Aute occaecat nisi esse ipsum proident laboris ipsum elit aute do. Do aliquip amet elit mollit ut qui in incididunt sit irure ipsum.\r\n", "registered": "2014-07-11T04:44:19-12:00", "latitude": 8.83933, "longitude": 164.10563, "tags": [ "do", "excepteur", "proident", "nulla", "sunt", "cupidatat", "est" ], "friends": [ { "id": 0, "name": "Foley Sharp" }, { "id": 1, "name": "Lana Rivera" }, { "id": 2, "name": "Tara Hobbs" } ], "greeting": "Hello, Collins Weiss! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f39505c312d75cf10", "index": 675, "guid": "10c645b8-d32c-420b-a2be-eba63d5bdd72", "isActive": true, "balance": "$3,486.70", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Angel Parker", "gender": "female", "company": "IZZBY", "email": "angelparker@izzby.com", "phone": "+1 (819) 464-2736", "address": "890 Glenwood Road, Belfair, District Of Columbia, 1929", "about": "Elit incididunt nisi non adipisicing. Ex anim irure consequat duis non. Irure quis eu aliquip tempor do qui. Enim sint nulla ullamco cupidatat. Mollit sit enim cupidatat labore qui culpa consequat deserunt labore incididunt enim ipsum cillum mollit. Proident in irure magna laborum velit cupidatat sit in exercitation consectetur exercitation ut eiusmod qui. Reprehenderit fugiat incididunt aliquip velit dolore qui consequat quis dolor.\r\n", "registered": "2014-07-08T17:29:12-12:00", "latitude": 29.953914, "longitude": -82.005432, "tags": [ "cillum", "duis", "nisi", "sunt", "deserunt", "esse", "incididunt" ], "friends": [ { "id": 0, "name": "Flossie West" }, { "id": 1, "name": "Dale Peck" }, { "id": 2, "name": "Hazel Hogan" } ], "greeting": "Hello, Angel Parker! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f37183f74e2bcff22", "index": 676, "guid": "cf0b4fc6-6e82-4d1d-980b-ca33b2eace7a", "isActive": true, "balance": "$2,582.55", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Tisha Coffey", "gender": "female", "company": "JIMBIES", "email": "tishacoffey@jimbies.com", "phone": "+1 (961) 403-3789", "address": "321 Legion Street, Freetown, New Jersey, 8246", "about": "Enim ea Lorem non eu incididunt do est et ullamco. Irure sit occaecat officia est non est cupidatat. Nisi proident ipsum sint enim aute eiusmod ad aliquip ullamco irure officia sit aute. In amet sunt ad velit ut. Occaecat duis aute et amet velit velit. Nulla excepteur id cillum et. Laboris minim exercitation aliqua irure sit duis occaecat irure Lorem officia sint nisi mollit.\r\n", "registered": "2014-09-14T13:55:11-12:00", "latitude": -7.417932, "longitude": 59.788258, "tags": [ "enim", "sunt", "tempor", "eiusmod", "reprehenderit", "cupidatat", "nulla" ], "friends": [ { "id": 0, "name": "Deena Snider" }, { "id": 1, "name": "Carey Flores" }, { "id": 2, "name": "Hansen Harrell" } ], "greeting": "Hello, Tisha Coffey! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ffe75360177c3183c", "index": 677, "guid": "3378c320-b210-492b-bba3-73e32817c47d", "isActive": true, "balance": "$2,446.19", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Mullen Henson", "gender": "male", "company": "EXODOC", "email": "mullenhenson@exodoc.com", "phone": "+1 (902) 475-2594", "address": "382 Harden Street, Darbydale, Palau, 7893", "about": "Lorem quis aute id labore irure laboris occaecat voluptate. Do sunt ad elit anim. Do cupidatat ex in reprehenderit magna anim occaecat laboris ullamco cillum deserunt tempor labore.\r\n", "registered": "2014-05-22T13:54:14-12:00", "latitude": -84.143301, "longitude": 36.390657, "tags": [ "excepteur", "ipsum", "ea", "ipsum", "consequat", "fugiat", "cillum" ], "friends": [ { "id": 0, "name": "Roxie Booth" }, { "id": 1, "name": "Verna Willis" }, { "id": 2, "name": "Gena Carpenter" } ], "greeting": "Hello, Mullen Henson! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fa505b75dba040718", "index": 678, "guid": "69002c7f-69ce-47f8-9192-af49fd1dc795", "isActive": false, "balance": "$3,951.19", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Candice Pena", "gender": "female", "company": "OVERPLEX", "email": "candicepena@overplex.com", "phone": "+1 (872) 428-2083", "address": "365 Front Street, Riner, Puerto Rico, 801", "about": "Consectetur enim proident mollit aute aute incididunt laboris exercitation non cupidatat officia sit ea Lorem. Aliquip reprehenderit aliquip Lorem aliquip eu adipisicing magna. Id fugiat voluptate elit consectetur minim eu dolor. Aliquip non ut est laborum exercitation aliqua. Mollit magna fugiat velit reprehenderit. Exercitation amet deserunt ea enim pariatur laboris consectetur voluptate.\r\n", "registered": "2014-02-01T03:18:30-13:00", "latitude": 25.767884, "longitude": -115.475944, "tags": [ "dolor", "adipisicing", "qui", "esse", "in", "velit", "aute" ], "friends": [ { "id": 0, "name": "Effie Washington" }, { "id": 1, "name": "Dillon Potter" }, { "id": 2, "name": "Cleveland Gates" } ], "greeting": "Hello, Candice Pena! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f9f26d4259d3b325d", "index": 679, "guid": "e5d00979-7df9-4f72-b274-39149869fa8f", "isActive": false, "balance": "$2,931.75", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Brittany Hopkins", "gender": "female", "company": "ECOSYS", "email": "brittanyhopkins@ecosys.com", "phone": "+1 (983) 428-3927", "address": "772 Holmes Lane, Ferney, California, 7947", "about": "Id non duis commodo aliquip nostrud quis est amet deserunt velit nostrud. Enim ut consectetur pariatur qui. Quis enim consequat fugiat id magna in ad mollit in. Dolor excepteur consectetur occaecat eiusmod incididunt sit non aute cupidatat sunt. Adipisicing laboris ad veniam qui adipisicing sint aute id exercitation cupidatat mollit in. Fugiat reprehenderit nulla laborum deserunt irure sint sunt duis consequat. Reprehenderit elit tempor Lorem mollit duis id nisi ullamco et mollit officia fugiat excepteur eiusmod.\r\n", "registered": "2014-07-16T21:19:18-12:00", "latitude": 81.814904, "longitude": -168.207708, "tags": [ "Lorem", "deserunt", "dolore", "reprehenderit", "pariatur", "dolore", "amet" ], "friends": [ { "id": 0, "name": "Tamara Gilbert" }, { "id": 1, "name": "Erika Walls" }, { "id": 2, "name": "Fitzgerald Franklin" } ], "greeting": "Hello, Brittany Hopkins! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f377a84bffb8bbf5e", "index": 680, "guid": "6e7f5f6e-ae92-40af-a38d-f7914b5df32c", "isActive": false, "balance": "$1,158.86", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Dawn Reed", "gender": "female", "company": "NEXGENE", "email": "dawnreed@nexgene.com", "phone": "+1 (945) 558-3702", "address": "787 Blake Avenue, Worton, Vermont, 9190", "about": "Esse est incididunt cupidatat nostrud duis anim minim. Ea id laboris voluptate amet adipisicing cupidatat ex. Aliqua id ut commodo sunt dolore pariatur anim pariatur dolor in laboris sit id. Excepteur eiusmod laboris reprehenderit esse occaecat nostrud magna ullamco excepteur excepteur minim. Exercitation Lorem officia eu elit minim est qui tempor anim consequat ea sit tempor.\r\n", "registered": "2014-01-14T09:25:23-13:00", "latitude": -52.045555, "longitude": 108.742049, "tags": [ "sit", "in", "nostrud", "consectetur", "amet", "sit", "minim" ], "friends": [ { "id": 0, "name": "Graham Odonnell" }, { "id": 1, "name": "Alejandra Chang" }, { "id": 2, "name": "Lilly Snyder" } ], "greeting": "Hello, Dawn Reed! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fc9f6fcdfa9faa8c7", "index": 681, "guid": "55326ed6-175a-43f7-ba4f-33b58fa6f7ab", "isActive": false, "balance": "$3,319.44", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Marks Elliott", "gender": "male", "company": "KINETICA", "email": "markselliott@kinetica.com", "phone": "+1 (921) 593-2081", "address": "106 Seagate Terrace, Ogema, Indiana, 6678", "about": "Reprehenderit exercitation labore sint ad labore voluptate cillum sit magna Lorem laboris pariatur cillum qui. Esse cillum minim ipsum laboris id consectetur id minim ex. Est duis nostrud incididunt aute cillum occaecat nostrud Lorem voluptate excepteur sint pariatur proident consequat. Velit commodo aliquip cupidatat tempor consectetur sint. Id enim dolore aliquip Lorem sit nulla nulla elit laborum ea laboris cupidatat dolore. Dolore aute enim ullamco aute ipsum elit aliquip voluptate laborum labore nisi proident nulla.\r\n", "registered": "2014-06-27T01:09:13-12:00", "latitude": 2.061665, "longitude": 109.342557, "tags": [ "magna", "et", "veniam", "aute", "occaecat", "incididunt", "eu" ], "friends": [ { "id": 0, "name": "Annie Neal" }, { "id": 1, "name": "Blanca Boone" }, { "id": 2, "name": "Freeman Valencia" } ], "greeting": "Hello, Marks Elliott! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f38fd197be9cdc84a", "index": 682, "guid": "f3740ed4-37e9-4a7f-9f22-ad7c5eca8eee", "isActive": false, "balance": "$2,811.49", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Hart Robinson", "gender": "male", "company": "EMERGENT", "email": "hartrobinson@emergent.com", "phone": "+1 (837) 520-3816", "address": "622 Baughman Place, Muir, Illinois, 8773", "about": "Cillum exercitation reprehenderit veniam commodo mollit in eu est anim. Cupidatat tempor in adipisicing qui amet commodo. Aute duis eu aliquip et aliquip et. Ad qui commodo ex ad ipsum nostrud dolor anim in quis deserunt. Consequat id enim commodo quis enim enim irure adipisicing sit minim irure velit esse Lorem. Officia dolore aliquip culpa adipisicing. Nisi voluptate eiusmod velit ex irure nisi excepteur dolor.\r\n", "registered": "2014-09-20T15:27:27-12:00", "latitude": -57.411246, "longitude": 7.444776, "tags": [ "esse", "sit", "ullamco", "labore", "amet", "mollit", "eu" ], "friends": [ { "id": 0, "name": "Tameka Macdonald" }, { "id": 1, "name": "Jerry Santiago" }, { "id": 2, "name": "Morgan Bartlett" } ], "greeting": "Hello, Hart Robinson! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f901e1a2db5b73727", "index": 683, "guid": "2b72bb8a-1719-4ee4-8e0f-fa1038bbf08f", "isActive": true, "balance": "$2,596.01", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Carr Weeks", "gender": "male", "company": "SIGNIDYNE", "email": "carrweeks@signidyne.com", "phone": "+1 (933) 487-3286", "address": "870 Hendrix Street, Stewart, South Carolina, 7866", "about": "Ad eu dolore velit excepteur mollit veniam mollit incididunt fugiat excepteur consectetur enim. Aliqua dolore consequat magna laboris ad in. Labore qui aliqua eu deserunt labore enim ipsum sit in magna elit proident dolor nisi. Quis est laborum quis ea cillum. Consequat esse enim ad labore elit minim sint.\r\n", "registered": "2014-07-24T09:55:46-12:00", "latitude": 18.75763, "longitude": 108.951764, "tags": [ "sint", "mollit", "mollit", "pariatur", "do", "dolor", "Lorem" ], "friends": [ { "id": 0, "name": "Lynne Lott" }, { "id": 1, "name": "Deloris Oconnor" }, { "id": 2, "name": "Shanna Dejesus" } ], "greeting": "Hello, Carr Weeks! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f924bc6672e08a054", "index": 684, "guid": "3e5d0a8d-6146-4a76-8ccd-037d4b5ecf60", "isActive": true, "balance": "$2,124.67", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Olsen Cline", "gender": "male", "company": "HINWAY", "email": "olsencline@hinway.com", "phone": "+1 (873) 465-3727", "address": "110 Schroeders Avenue, Roy, American Samoa, 7926", "about": "Magna ut aliquip voluptate in veniam deserunt. Enim duis aliquip amet in in ullamco incididunt incididunt. Veniam eiusmod excepteur irure laborum fugiat ipsum ipsum ullamco nulla do. Id labore do cillum deserunt. Deserunt consectetur ex ullamco est enim et laborum irure aute cillum mollit irure mollit. Culpa eiusmod ut consectetur amet dolore anim veniam esse eu.\r\n", "registered": "2014-09-21T17:58:04-12:00", "latitude": -27.768959, "longitude": 31.990871, "tags": [ "culpa", "non", "officia", "qui", "reprehenderit", "in", "consequat" ], "friends": [ { "id": 0, "name": "Herman Larson" }, { "id": 1, "name": "Marla Velazquez" }, { "id": 2, "name": "Robbie Newman" } ], "greeting": "Hello, Olsen Cline! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f134ef61084b2485a", "index": 685, "guid": "0c2a7924-f321-4b00-8704-5c17cbca83b4", "isActive": true, "balance": "$1,406.41", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Oconnor Dyer", "gender": "male", "company": "CANDECOR", "email": "oconnordyer@candecor.com", "phone": "+1 (985) 582-3386", "address": "783 Sapphire Street, Tetherow, Delaware, 6353", "about": "Commodo consequat eiusmod adipisicing sint tempor fugiat dolore ex. Id est ad laboris consequat excepteur. Deserunt commodo dolore ad do quis incididunt.\r\n", "registered": "2014-01-13T16:22:55-13:00", "latitude": -34.511904, "longitude": 112.599247, "tags": [ "tempor", "excepteur", "Lorem", "veniam", "minim", "tempor", "nisi" ], "friends": [ { "id": 0, "name": "Deanna Blair" }, { "id": 1, "name": "Barry Keller" }, { "id": 2, "name": "Carrillo Hampton" } ], "greeting": "Hello, Oconnor Dyer! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fb8d0d86bb495558f", "index": 686, "guid": "da29aef5-3f9b-47df-b97b-deaa9c4c32ad", "isActive": false, "balance": "$2,600.21", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Hoffman Hernandez", "gender": "male", "company": "SUREPLEX", "email": "hoffmanhernandez@sureplex.com", "phone": "+1 (811) 506-2387", "address": "333 Hornell Loop, Harborton, Pennsylvania, 2599", "about": "Enim consectetur commodo reprehenderit proident occaecat ullamco fugiat velit eiusmod. Incididunt cupidatat irure Lorem do minim. Exercitation cupidatat magna esse esse. Ea cupidatat esse labore ut excepteur id elit dolor cillum nisi officia ullamco qui. Laboris tempor eiusmod enim irure sint. Non id tempor sunt nulla Lorem tempor nulla in amet dolor.\r\n", "registered": "2014-05-01T02:31:57-12:00", "latitude": -87.078206, "longitude": 5.70344, "tags": [ "ullamco", "exercitation", "voluptate", "reprehenderit", "labore", "pariatur", "elit" ], "friends": [ { "id": 0, "name": "Cooley Nguyen" }, { "id": 1, "name": "Poole Ingram" }, { "id": 2, "name": "Wilson Maldonado" } ], "greeting": "Hello, Hoffman Hernandez! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fa72c83b6801dc5b4", "index": 687, "guid": "45ad3e76-ae73-4919-af4a-acc4e2faff57", "isActive": true, "balance": "$3,106.50", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Tonya Guthrie", "gender": "female", "company": "DUOFLEX", "email": "tonyaguthrie@duoflex.com", "phone": "+1 (953) 434-2254", "address": "979 Decatur Street, Bradenville, Georgia, 3346", "about": "Id non Lorem et est cillum est in quis Lorem est aute. Proident consequat nisi commodo sint irure occaecat nisi ipsum commodo laboris fugiat magna duis non. Cillum qui incididunt nulla cillum esse consectetur est sint labore consequat est incididunt. Exercitation eu Lorem consectetur exercitation aute dolore irure ea eiusmod velit.\r\n", "registered": "2014-07-22T09:04:22-12:00", "latitude": 29.178959, "longitude": 56.953159, "tags": [ "incididunt", "ex", "ea", "magna", "ea", "duis", "velit" ], "friends": [ { "id": 0, "name": "Sharlene Fletcher" }, { "id": 1, "name": "Howe Jarvis" }, { "id": 2, "name": "Claudette Hinton" } ], "greeting": "Hello, Tonya Guthrie! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fd56dbd5e8f7ba6ce", "index": 688, "guid": "9fcc7027-27a6-4938-97ae-c99a868fc4c8", "isActive": false, "balance": "$2,971.50", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Franks Battle", "gender": "male", "company": "INSECTUS", "email": "franksbattle@insectus.com", "phone": "+1 (927) 459-2050", "address": "669 Linden Street, Herlong, North Dakota, 825", "about": "Non aliqua proident magna magna do magna non consequat cupidatat do adipisicing. Ipsum excepteur proident culpa laborum reprehenderit proident eu sint. Nulla aute ex esse non culpa ipsum commodo sunt excepteur ex est. Occaecat enim occaecat in ullamco. Deserunt ullamco Lorem sit et magna eiusmod laborum eu aute amet laborum. Reprehenderit fugiat tempor mollit eu nisi laboris aliqua veniam ad elit.\r\n", "registered": "2014-07-24T13:29:23-12:00", "latitude": 49.744917, "longitude": -2.33793, "tags": [ "ut", "amet", "enim", "ullamco", "mollit", "consequat", "et" ], "friends": [ { "id": 0, "name": "Kaitlin Allen" }, { "id": 1, "name": "Kimberley Barrett" }, { "id": 2, "name": "Brittney Rojas" } ], "greeting": "Hello, Franks Battle! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f971556ad2b539e27", "index": 689, "guid": "629fa819-5408-4593-9d94-d03532aababd", "isActive": true, "balance": "$1,618.16", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Ofelia Dotson", "gender": "female", "company": "INTERODEO", "email": "ofeliadotson@interodeo.com", "phone": "+1 (875) 494-3545", "address": "820 Linwood Street, Madrid, Louisiana, 9878", "about": "Amet aliqua qui deserunt ullamco. Reprehenderit ex veniam ad nulla reprehenderit ipsum id ex irure. Ex cillum ex eu id occaecat et aute laboris ex tempor. Nulla pariatur pariatur enim ad officia cupidatat voluptate cillum do.\r\n", "registered": "2014-07-08T02:21:14-12:00", "latitude": -9.984009, "longitude": 141.808653, "tags": [ "exercitation", "Lorem", "sint", "duis", "consectetur", "nostrud", "id" ], "friends": [ { "id": 0, "name": "Katelyn Spence" }, { "id": 1, "name": "Alexandria Burke" }, { "id": 2, "name": "Maldonado Rosario" } ], "greeting": "Hello, Ofelia Dotson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1feb4e1b19cce8b11c", "index": 690, "guid": "d8e1a5e9-68ad-4406-817d-26bf642837be", "isActive": true, "balance": "$2,939.08", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Monique Stephenson", "gender": "female", "company": "NETUR", "email": "moniquestephenson@netur.com", "phone": "+1 (843) 411-2805", "address": "302 Delmonico Place, Day, Northern Mariana Islands, 3285", "about": "Mollit voluptate reprehenderit adipisicing anim voluptate et quis aliqua ex aliqua cillum mollit voluptate pariatur. Et nostrud ad Lorem dolor ipsum sint cupidatat Lorem dolore ut quis aute enim. Eu sint non nulla est Lorem enim et ex aute. Ad esse deserunt adipisicing consectetur dolore sunt nulla et commodo cupidatat. Eiusmod ipsum aliqua incididunt ea ad sint cillum in officia consequat sunt culpa minim. Adipisicing magna adipisicing dolor cupidatat.\r\n", "registered": "2014-04-20T03:24:25-12:00", "latitude": -79.057271, "longitude": 161.571672, "tags": [ "irure", "esse", "ea", "eiusmod", "laborum", "enim", "consequat" ], "friends": [ { "id": 0, "name": "Andrea Frederick" }, { "id": 1, "name": "Christa Kirkland" }, { "id": 2, "name": "Logan Wall" } ], "greeting": "Hello, Monique Stephenson! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f84b9014491923652", "index": 691, "guid": "bbda84d4-8690-4063-b589-1cca130773f5", "isActive": true, "balance": "$3,173.23", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Mcdonald Parsons", "gender": "male", "company": "WAZZU", "email": "mcdonaldparsons@wazzu.com", "phone": "+1 (856) 531-2073", "address": "172 Battery Avenue, Tibbie, Colorado, 7603", "about": "Duis dolor occaecat nisi fugiat Lorem aliqua pariatur commodo deserunt ex irure minim id duis. Ipsum est culpa mollit magna pariatur consequat nostrud eu veniam aliquip. Aute sint enim pariatur pariatur nostrud. Cupidatat culpa dolor culpa duis sint.\r\n", "registered": "2014-05-13T11:14:22-12:00", "latitude": 17.464929, "longitude": -35.598141, "tags": [ "laborum", "magna", "eiusmod", "ullamco", "ut", "nulla", "nulla" ], "friends": [ { "id": 0, "name": "Alicia Curtis" }, { "id": 1, "name": "Mary Diaz" }, { "id": 2, "name": "Tammie Henderson" } ], "greeting": "Hello, Mcdonald Parsons! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fce1d2586e1dee439", "index": 692, "guid": "49f7258d-2d7c-4fb8-9ae2-21dcabf755f0", "isActive": false, "balance": "$1,758.31", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Horne Fisher", "gender": "male", "company": "INSURITY", "email": "hornefisher@insurity.com", "phone": "+1 (964) 514-2953", "address": "757 Campus Road, Newcastle, Idaho, 4551", "about": "Do consectetur elit dolore deserunt laboris cillum et enim aliquip. Reprehenderit reprehenderit cupidatat nisi exercitation nisi officia eiusmod sunt qui quis minim sit. Culpa sunt ad qui qui velit aliqua do in laborum anim adipisicing.\r\n", "registered": "2014-09-13T09:05:58-12:00", "latitude": -5.558682, "longitude": -25.717558, "tags": [ "culpa", "velit", "ipsum", "aliqua", "laboris", "laboris", "nisi" ], "friends": [ { "id": 0, "name": "Ellis Forbes" }, { "id": 1, "name": "Daniels Bass" }, { "id": 2, "name": "Rodriguez Rowland" } ], "greeting": "Hello, Horne Fisher! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f06f375e7a5363b42", "index": 693, "guid": "14e9c684-f537-4c5e-ad26-9390a4bdc7c8", "isActive": false, "balance": "$3,033.18", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Rene Horn", "gender": "female", "company": "FRENEX", "email": "renehorn@frenex.com", "phone": "+1 (900) 575-3286", "address": "477 Lester Court, Gilmore, Marshall Islands, 4466", "about": "Qui non aliqua do irure. Fugiat ea aliquip ullamco aliqua tempor occaecat voluptate est dolor amet eiusmod reprehenderit. Quis duis ipsum esse nulla nostrud occaecat. In culpa commodo cillum commodo velit.\r\n", "registered": "2014-01-16T18:36:52-13:00", "latitude": -59.259015, "longitude": 40.726221, "tags": [ "fugiat", "aliqua", "ad", "adipisicing", "exercitation", "deserunt", "commodo" ], "friends": [ { "id": 0, "name": "Valencia Yates" }, { "id": 1, "name": "Natalia Spears" }, { "id": 2, "name": "Cecilia Hester" } ], "greeting": "Hello, Rene Horn! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f8d898900b083f418", "index": 694, "guid": "6b34a53b-47d1-4741-aba6-a42cc499014c", "isActive": true, "balance": "$3,069.64", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Knight Fernandez", "gender": "male", "company": "ZILLIDIUM", "email": "knightfernandez@zillidium.com", "phone": "+1 (865) 449-2483", "address": "319 Schenck Place, Cataract, New York, 5990", "about": "Nostrud id dolor eiusmod esse minim duis dolor fugiat minim dolor. Laborum proident labore elit aute minim consequat magna ullamco nisi. Cillum est anim magna sit est ut mollit nostrud eiusmod. Fugiat non officia sunt eiusmod sint ex minim. Laboris laborum non laboris culpa qui mollit id fugiat esse labore.\r\n", "registered": "2014-03-11T23:31:20-13:00", "latitude": 79.251137, "longitude": 92.475151, "tags": [ "fugiat", "consectetur", "officia", "exercitation", "amet", "quis", "elit" ], "friends": [ { "id": 0, "name": "Jacqueline Sweeney" }, { "id": 1, "name": "Warren Abbott" }, { "id": 2, "name": "Marcy Kane" } ], "greeting": "Hello, Knight Fernandez! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f67cc16a06f10ceb5", "index": 695, "guid": "4216ed9e-e147-4ea8-9597-985f92e633a2", "isActive": false, "balance": "$1,793.52", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Jarvis Clements", "gender": "male", "company": "COMBOGENE", "email": "jarvisclements@combogene.com", "phone": "+1 (869) 443-2851", "address": "157 Hampton Avenue, Salvo, Guam, 1975", "about": "Cupidatat ut sunt eu irure velit nulla mollit culpa eiusmod mollit eu nisi eiusmod nostrud. Est enim minim tempor irure veniam cillum quis. Aute in labore dolore qui nostrud sint laborum non mollit enim esse. Voluptate ut ullamco do laboris veniam cupidatat. Nostrud ea sunt eiusmod nisi proident ex fugiat velit et adipisicing fugiat deserunt. Minim pariatur Lorem excepteur consequat occaecat aliquip aliquip nisi dolore.\r\n", "registered": "2014-07-02T17:15:03-12:00", "latitude": -8.067826, "longitude": 2.635829, "tags": [ "culpa", "quis", "et", "in", "exercitation", "est", "sit" ], "friends": [ { "id": 0, "name": "Battle Romero" }, { "id": 1, "name": "Heidi Moore" }, { "id": 2, "name": "Cole Adams" } ], "greeting": "Hello, Jarvis Clements! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fe01ce43818694afd", "index": 696, "guid": "2357fec6-abd8-4ae7-a028-af385760e4cb", "isActive": false, "balance": "$3,636.75", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Gay Mcfadden", "gender": "male", "company": "KOOGLE", "email": "gaymcfadden@koogle.com", "phone": "+1 (884) 554-2629", "address": "207 Monaco Place, Allison, Virgin Islands, 574", "about": "Est proident duis dolore sint esse qui commodo enim do deserunt velit. Eiusmod consectetur ea do sunt do labore culpa elit in in. Aliqua elit nisi sunt tempor. Sunt ea commodo elit pariatur reprehenderit consequat sunt excepteur ipsum. Ad sunt velit aliqua nostrud amet anim elit sit labore ad.\r\n", "registered": "2014-01-18T06:39:30-13:00", "latitude": -77.462292, "longitude": 25.269503, "tags": [ "aute", "eiusmod", "aliqua", "ex", "pariatur", "fugiat", "laborum" ], "friends": [ { "id": 0, "name": "Brianna Clarke" }, { "id": 1, "name": "French Church" }, { "id": 2, "name": "Shelby David" } ], "greeting": "Hello, Gay Mcfadden! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8c2b4c5405713736", "index": 697, "guid": "a259fbff-4e08-49e7-8b01-77c907ab77b0", "isActive": false, "balance": "$1,030.71", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Cathryn Mcdonald", "gender": "female", "company": "INTRADISK", "email": "cathrynmcdonald@intradisk.com", "phone": "+1 (923) 432-3985", "address": "670 Duffield Street, Mapletown, Massachusetts, 8144", "about": "Sit do qui cillum reprehenderit consectetur ad aliquip. Excepteur ex elit sit consequat nulla officia in laborum et culpa aute minim. Occaecat ut dolor proident minim incididunt sint ut cillum cupidatat est.\r\n", "registered": "2014-08-14T13:08:19-12:00", "latitude": 86.364878, "longitude": -153.379787, "tags": [ "exercitation", "elit", "nostrud", "duis", "irure", "ut", "ad" ], "friends": [ { "id": 0, "name": "Candace Lindsay" }, { "id": 1, "name": "Daisy Key" }, { "id": 2, "name": "Ashley Murray" } ], "greeting": "Hello, Cathryn Mcdonald! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fe81522e049f6edf8", "index": 698, "guid": "37c67f10-22c1-456b-bb5f-5cb294817a38", "isActive": false, "balance": "$3,694.53", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Olson Phelps", "gender": "male", "company": "ZENTURY", "email": "olsonphelps@zentury.com", "phone": "+1 (820) 515-3221", "address": "912 Union Street, Chapin, Utah, 1858", "about": "Et cillum esse dolor duis labore aute deserunt veniam consequat sunt proident elit fugiat eu. Officia culpa cupidatat consequat aute fugiat sit consequat nostrud occaecat deserunt voluptate. Voluptate veniam exercitation nisi qui id Lorem Lorem esse excepteur voluptate ipsum consectetur. Culpa commodo est voluptate sint id elit id commodo officia aliquip sit aute laborum nulla. Minim sunt veniam laborum aliquip nulla tempor voluptate exercitation adipisicing ex. Consectetur laboris et sit irure do in nostrud ad magna. Incididunt ea aute esse sint.\r\n", "registered": "2014-02-19T12:52:54-13:00", "latitude": 74.271314, "longitude": -98.003503, "tags": [ "dolore", "esse", "eiusmod", "reprehenderit", "id", "occaecat", "voluptate" ], "friends": [ { "id": 0, "name": "Mayra Wolf" }, { "id": 1, "name": "Marisol Hooper" }, { "id": 2, "name": "Ware Mills" } ], "greeting": "Hello, Olson Phelps! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f9b916e862802e196", "index": 699, "guid": "9100358b-e5ed-4e07-b78b-b34962970391", "isActive": true, "balance": "$3,892.31", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Linda Middleton", "gender": "female", "company": "MIRACULA", "email": "lindamiddleton@miracula.com", "phone": "+1 (894) 575-2871", "address": "888 Tapscott Street, Glasgow, Montana, 6622", "about": "Laboris laboris ea ut ipsum esse do sunt cupidatat in aliqua cillum adipisicing laboris ut. Adipisicing do esse mollit proident quis ut cillum excepteur occaecat est cillum irure non Lorem. Elit consectetur amet ipsum cillum amet dolore veniam exercitation excepteur labore est fugiat laboris ullamco.\r\n", "registered": "2014-06-25T03:48:44-12:00", "latitude": 23.504303, "longitude": 28.646559, "tags": [ "exercitation", "id", "irure", "incididunt", "laborum", "voluptate", "sint" ], "friends": [ { "id": 0, "name": "Hobbs Hawkins" }, { "id": 1, "name": "Bond Norris" }, { "id": 2, "name": "Frazier Rich" } ], "greeting": "Hello, Linda Middleton! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fa739b97400bfae1c", "index": 700, "guid": "d9bbd97f-d781-4774-a8a6-c2788e7877fc", "isActive": false, "balance": "$1,149.60", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Sweet Cervantes", "gender": "male", "company": "VINCH", "email": "sweetcervantes@vinch.com", "phone": "+1 (990) 450-2276", "address": "543 Lloyd Street, Cleary, Wisconsin, 771", "about": "Do incididunt sint dolor aute sint eiusmod id occaecat ipsum magna. Adipisicing proident enim aliquip proident laborum irure ex ea cillum id commodo aliquip fugiat. Fugiat duis culpa laboris adipisicing ea eiusmod est laborum sit nisi duis quis. Aliqua et Lorem laboris quis dolore nulla.\r\n", "registered": "2014-01-11T22:21:02-13:00", "latitude": 74.465282, "longitude": 73.778349, "tags": [ "esse", "officia", "veniam", "duis", "consectetur", "eiusmod", "ad" ], "friends": [ { "id": 0, "name": "Hawkins Campbell" }, { "id": 1, "name": "Mcleod Mcfarland" }, { "id": 2, "name": "Osborn Beach" } ], "greeting": "Hello, Sweet Cervantes! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f201fb93d7f87de5f", "index": 701, "guid": "8a23085d-87fd-449c-beca-815db9201f15", "isActive": false, "balance": "$1,210.33", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Joy Vaughn", "gender": "female", "company": "NETILITY", "email": "joyvaughn@netility.com", "phone": "+1 (919) 454-3133", "address": "911 Monument Walk, Logan, Maine, 6698", "about": "Nulla incididunt est non nisi irure laborum. Aute qui adipisicing amet sint excepteur culpa proident irure qui exercitation reprehenderit voluptate qui. Officia irure sunt mollit sit dolor excepteur. Esse dolor occaecat esse ullamco pariatur elit labore nisi qui. Nostrud occaecat non amet ut ut anim adipisicing excepteur enim aute nostrud elit. Fugiat ut reprehenderit minim sit ad nulla nisi laborum sint est dolor anim officia.\r\n", "registered": "2014-05-20T01:54:14-12:00", "latitude": -29.803552, "longitude": 125.839787, "tags": [ "sunt", "adipisicing", "duis", "mollit", "incididunt", "ipsum", "sunt" ], "friends": [ { "id": 0, "name": "Melissa Ashley" }, { "id": 1, "name": "Buchanan Chandler" }, { "id": 2, "name": "Hope Vaughan" } ], "greeting": "Hello, Joy Vaughn! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f8aa80ebf75d5388c", "index": 702, "guid": "bef3bf34-4ba2-4a16-b336-fb78471e8e6c", "isActive": true, "balance": "$2,169.85", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Rae Robbins", "gender": "female", "company": "ESCENTA", "email": "raerobbins@escenta.com", "phone": "+1 (892) 555-2733", "address": "356 Holly Street, Cumminsville, Virginia, 9931", "about": "Ut ad aute est velit ea culpa adipisicing amet do. Dolor ad aliquip veniam elit do Lorem aliquip sunt minim nostrud do proident nisi qui. Fugiat aliquip cillum veniam voluptate exercitation esse. Sit aliquip duis velit magna ea non. Eu mollit est reprehenderit veniam exercitation tempor labore est ex anim. Sunt pariatur duis fugiat id culpa ea id aliqua labore. Aute ad qui sit nostrud.\r\n", "registered": "2014-06-19T20:45:30-12:00", "latitude": -12.445136, "longitude": -162.502327, "tags": [ "consequat", "et", "dolore", "voluptate", "tempor", "laborum", "ea" ], "friends": [ { "id": 0, "name": "Kelli Levine" }, { "id": 1, "name": "Georgette Combs" }, { "id": 2, "name": "Moss Schwartz" } ], "greeting": "Hello, Rae Robbins! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f32aad8720243a530", "index": 703, "guid": "e53a4d20-089d-46f0-9267-28a272d6212d", "isActive": true, "balance": "$2,344.68", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Villarreal Sims", "gender": "male", "company": "MEDCOM", "email": "villarrealsims@medcom.com", "phone": "+1 (897) 593-2240", "address": "842 Arlington Place, Ola, Kentucky, 5635", "about": "Exercitation occaecat consectetur non aute ut tempor veniam nostrud irure exercitation excepteur veniam tempor do. Consequat ipsum qui culpa laboris laborum ullamco sint ut amet consectetur minim sint eiusmod. Enim non laboris ipsum ipsum eiusmod commodo magna sint esse labore anim qui.\r\n", "registered": "2014-01-13T12:57:15-13:00", "latitude": 23.242386, "longitude": 151.418628, "tags": [ "consequat", "laborum", "esse", "culpa", "sunt", "labore", "sint" ], "friends": [ { "id": 0, "name": "Weiss Maxwell" }, { "id": 1, "name": "Rowland Talley" }, { "id": 2, "name": "Celina Knowles" } ], "greeting": "Hello, Villarreal Sims! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fc5c641948ceaefb1", "index": 704, "guid": "bd7e6efb-e972-4a32-bf55-7aacb21001e4", "isActive": false, "balance": "$1,811.38", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Fanny Green", "gender": "female", "company": "SPACEWAX", "email": "fannygreen@spacewax.com", "phone": "+1 (842) 468-3833", "address": "684 Billings Place, Enoree, Connecticut, 273", "about": "Commodo irure nulla amet duis laborum occaecat ea deserunt tempor reprehenderit sit nulla. Et nisi excepteur deserunt eiusmod incididunt minim dolore nulla duis adipisicing cillum irure ex culpa. Dolore pariatur magna proident amet consectetur do exercitation enim nostrud ex veniam dolore minim. In nisi amet proident aliquip deserunt est ut sit. Tempor ad enim laborum anim minim veniam quis proident.\r\n", "registered": "2014-02-21T04:56:05-13:00", "latitude": 48.464684, "longitude": -35.781417, "tags": [ "exercitation", "qui", "consectetur", "ipsum", "mollit", "duis", "do" ], "friends": [ { "id": 0, "name": "Mable Gutierrez" }, { "id": 1, "name": "Scott Rivers" }, { "id": 2, "name": "Amparo Garner" } ], "greeting": "Hello, Fanny Green! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f527b6210da744d0c", "index": 705, "guid": "6883ab6d-b4b7-4a59-ab72-a84da56b9a43", "isActive": true, "balance": "$1,219.32", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Cote Mann", "gender": "male", "company": "LOVEPAD", "email": "cotemann@lovepad.com", "phone": "+1 (911) 517-3278", "address": "773 Rose Street, Malo, Mississippi, 7320", "about": "Lorem eiusmod voluptate id sunt reprehenderit commodo id labore duis tempor. Cillum occaecat enim est aute aute. Ex fugiat cillum officia id dolore sit aliquip. Veniam exercitation amet do ea deserunt consequat est officia cillum reprehenderit. Et consequat adipisicing deserunt dolor id consectetur excepteur ut.\r\n", "registered": "2014-05-30T19:26:17-12:00", "latitude": -62.71436, "longitude": 177.631308, "tags": [ "laboris", "nisi", "in", "sit", "ullamco", "consectetur", "culpa" ], "friends": [ { "id": 0, "name": "Burgess Harvey" }, { "id": 1, "name": "Colon Pollard" }, { "id": 2, "name": "Yvette Davenport" } ], "greeting": "Hello, Cote Mann! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ff9d5faa4e6cdb79c", "index": 706, "guid": "b089696a-702e-4881-a316-03c00aa3d10e", "isActive": false, "balance": "$1,642.98", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Claudia Norton", "gender": "female", "company": "MYOPIUM", "email": "claudianorton@myopium.com", "phone": "+1 (880) 499-3636", "address": "628 Ocean Avenue, Twilight, Washington, 9656", "about": "Officia dolore culpa culpa cillum culpa cupidatat aliqua veniam fugiat incididunt occaecat reprehenderit. Consectetur culpa deserunt reprehenderit eiusmod in fugiat ullamco cillum anim nostrud id non ipsum sunt. Dolore amet laboris aliquip eu reprehenderit amet incididunt proident ex ipsum reprehenderit. Exercitation tempor commodo exercitation labore ad.\r\n", "registered": "2014-05-29T02:45:53-12:00", "latitude": -28.508308, "longitude": -13.001572, "tags": [ "Lorem", "incididunt", "qui", "consectetur", "non", "laborum", "aute" ], "friends": [ { "id": 0, "name": "Christian Mendez" }, { "id": 1, "name": "Sanders George" }, { "id": 2, "name": "Tammi Park" } ], "greeting": "Hello, Claudia Norton! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f4bd9c79a5f3cf203", "index": 707, "guid": "590e9beb-7d97-4934-8c96-2becda7f88b0", "isActive": true, "balance": "$2,387.79", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Mindy Kerr", "gender": "female", "company": "DIGIQUE", "email": "mindykerr@digique.com", "phone": "+1 (938) 534-3435", "address": "180 Richards Street, Montura, Tennessee, 2308", "about": "Consequat voluptate voluptate laboris laborum et culpa fugiat adipisicing. Esse veniam nisi aliquip aliquip. Enim ut tempor consequat ad nulla in mollit excepteur. Nisi esse in ullamco excepteur dolor ullamco nulla. Cillum cillum magna exercitation enim amet commodo veniam minim eu velit esse labore quis consequat. Consequat amet labore incididunt commodo cupidatat laborum magna amet ad sit proident irure esse non.\r\n", "registered": "2014-03-27T15:50:00-13:00", "latitude": -6.16537, "longitude": 46.926847, "tags": [ "enim", "fugiat", "proident", "nostrud", "cillum", "exercitation", "ea" ], "friends": [ { "id": 0, "name": "Silvia Roberts" }, { "id": 1, "name": "Hudson Holder" }, { "id": 2, "name": "Jeannine Rollins" } ], "greeting": "Hello, Mindy Kerr! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f4b6bae9e40d65d2d", "index": 708, "guid": "f34905e0-09a8-4882-9cf0-aa6e0ede43c1", "isActive": false, "balance": "$3,515.20", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Lee Gonzalez", "gender": "male", "company": "SULTRAXIN", "email": "leegonzalez@sultraxin.com", "phone": "+1 (851) 409-2599", "address": "202 Granite Street, Toftrees, Alabama, 8324", "about": "Sunt qui elit excepteur cillum occaecat. Reprehenderit in ex ullamco sunt ea tempor cupidatat occaecat ipsum voluptate deserunt sit id culpa. Veniam aliqua commodo amet magna incididunt exercitation pariatur. Commodo ad culpa aliquip officia aliqua eiusmod. Elit ut fugiat excepteur incididunt consectetur cillum. Proident et ut labore ad amet duis adipisicing id velit ad. Sunt velit ut dolor do esse et.\r\n", "registered": "2014-03-20T10:16:11-13:00", "latitude": 82.284619, "longitude": 31.420237, "tags": [ "esse", "aute", "proident", "reprehenderit", "sint", "fugiat", "cillum" ], "friends": [ { "id": 0, "name": "Curtis Gonzales" }, { "id": 1, "name": "Jennings Dickson" }, { "id": 2, "name": "Frieda Jordan" } ], "greeting": "Hello, Lee Gonzalez! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fab8eb2f349929195", "index": 709, "guid": "91ffcd2d-8e65-4c8c-a41f-b32ff56f7811", "isActive": true, "balance": "$3,429.48", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Ila Herman", "gender": "female", "company": "HOMETOWN", "email": "ilaherman@hometown.com", "phone": "+1 (948) 522-2003", "address": "605 Crystal Street, Roderfield, Ohio, 1981", "about": "Ipsum laboris esse fugiat ex proident ad amet cillum Lorem do. Est fugiat est sit officia nisi aute aliquip incididunt nostrud commodo. Laborum proident ea magna eu quis consequat eiusmod consequat laboris. Quis enim consectetur sunt labore. Minim qui cillum ipsum sint dolore exercitation est quis veniam ad minim enim non. Do eu ipsum aliqua qui elit incididunt officia cillum quis elit non non ad.\r\n", "registered": "2014-06-22T17:15:38-12:00", "latitude": 4.284966, "longitude": 52.740783, "tags": [ "magna", "incididunt", "ipsum", "non", "excepteur", "sint", "ullamco" ], "friends": [ { "id": 0, "name": "Cora Mcmahon" }, { "id": 1, "name": "Kay Frost" }, { "id": 2, "name": "Mclaughlin Dale" } ], "greeting": "Hello, Ila Herman! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f0d9ef8f6659bcd9e", "index": 710, "guid": "456f5b1a-3811-40d1-a650-353dc4824c16", "isActive": false, "balance": "$2,194.28", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Summer Taylor", "gender": "female", "company": "ZILPHUR", "email": "summertaylor@zilphur.com", "phone": "+1 (866) 572-3472", "address": "610 Nevins Street, Tioga, Hawaii, 4870", "about": "Sit reprehenderit mollit reprehenderit ut qui. Non ipsum cupidatat officia excepteur. Non ullamco cupidatat tempor irure consequat cillum.\r\n", "registered": "2014-09-07T09:31:40-12:00", "latitude": -48.889107, "longitude": 70.989241, "tags": [ "proident", "irure", "non", "do", "do", "dolor", "officia" ], "friends": [ { "id": 0, "name": "Mcbride Kirby" }, { "id": 1, "name": "Lacey Hale" }, { "id": 2, "name": "Jill Ballard" } ], "greeting": "Hello, Summer Taylor! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f29077430f8c8792a", "index": 711, "guid": "ab7c5823-66cf-4e08-9dce-e81727200e36", "isActive": false, "balance": "$3,580.43", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Marva Daugherty", "gender": "female", "company": "MAZUDA", "email": "marvadaugherty@mazuda.com", "phone": "+1 (897) 559-3092", "address": "999 Centre Street, Abiquiu, New Mexico, 2190", "about": "Reprehenderit magna laborum est cupidatat consectetur ex ut. Ullamco cillum non consequat ad culpa officia elit ut aute reprehenderit aute. Voluptate voluptate veniam fugiat veniam cillum. Cupidatat culpa cupidatat adipisicing duis eu aliqua sit. Cupidatat irure ex sint eiusmod esse ad ex officia exercitation.\r\n", "registered": "2014-08-31T17:19:25-12:00", "latitude": -71.82267, "longitude": 3.970014, "tags": [ "reprehenderit", "nostrud", "minim", "culpa", "pariatur", "in", "amet" ], "friends": [ { "id": 0, "name": "Cooper Cobb" }, { "id": 1, "name": "Wolfe Phillips" }, { "id": 2, "name": "Francis Savage" } ], "greeting": "Hello, Marva Daugherty! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1ff728ac3a735a5772", "index": 712, "guid": "dea8caa6-82ca-4096-b40f-6148fa42e9d0", "isActive": true, "balance": "$1,531.56", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Tillman Maynard", "gender": "male", "company": "ZILLADYNE", "email": "tillmanmaynard@zilladyne.com", "phone": "+1 (908) 428-3408", "address": "101 Ash Street, Summertown, Maryland, 2497", "about": "Laborum ipsum voluptate magna deserunt enim ea excepteur elit ipsum tempor. Mollit elit duis minim fugiat incididunt est Lorem. Eiusmod enim ullamco est et culpa eiusmod.\r\n", "registered": "2014-07-28T17:20:45-12:00", "latitude": 62.096229, "longitude": -47.255211, "tags": [ "ad", "pariatur", "dolore", "proident", "magna", "exercitation", "exercitation" ], "friends": [ { "id": 0, "name": "Leticia Colon" }, { "id": 1, "name": "Gordon Pickett" }, { "id": 2, "name": "Leona Foley" } ], "greeting": "Hello, Tillman Maynard! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8031736fe65c36fa", "index": 713, "guid": "243ef76b-a0e9-4960-a065-47612261b188", "isActive": false, "balance": "$3,989.66", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Juliette Harding", "gender": "female", "company": "ACCIDENCY", "email": "julietteharding@accidency.com", "phone": "+1 (997) 505-3380", "address": "605 Durland Place, Villarreal, Alaska, 6641", "about": "Aliqua ad exercitation tempor exercitation cillum ex id occaecat. Minim deserunt culpa in sunt laboris deserunt enim elit officia enim. In aliquip quis sit tempor quis consequat do eiusmod qui sit in qui. Velit ea labore commodo consequat id eu deserunt aliqua commodo ea pariatur veniam. Proident ad labore dolor ullamco veniam consectetur laboris commodo ea excepteur ea. Qui anim deserunt cupidatat cupidatat cupidatat consectetur anim esse dolore labore ipsum laboris.\r\n", "registered": "2014-08-14T12:44:34-12:00", "latitude": 76.118239, "longitude": 101.56883, "tags": [ "deserunt", "proident", "nulla", "est", "culpa", "labore", "dolor" ], "friends": [ { "id": 0, "name": "Marcia Ball" }, { "id": 1, "name": "Howell Walker" }, { "id": 2, "name": "Charlotte Ferguson" } ], "greeting": "Hello, Juliette Harding! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f4beb5752980b2c6d", "index": 714, "guid": "b8ae52ac-2537-46fb-ae39-44439d729fe4", "isActive": false, "balance": "$1,175.77", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Araceli Townsend", "gender": "female", "company": "ISOTRONIC", "email": "aracelitownsend@isotronic.com", "phone": "+1 (913) 439-3800", "address": "661 Himrod Street, Coaldale, Arizona, 7257", "about": "Quis occaecat sunt est ex dolore irure sint officia ea magna esse tempor ut sint. Cupidatat aute in mollit fugiat eiusmod. Dolor ea deserunt magna fugiat et cillum laboris nostrud. Consectetur ut reprehenderit incididunt nulla culpa reprehenderit dolor eiusmod velit minim aliqua. Non et nisi est exercitation est sit deserunt consequat laborum fugiat nulla aliquip. Enim reprehenderit amet aliquip et quis deserunt ut nostrud cupidatat reprehenderit non reprehenderit in quis.\r\n", "registered": "2014-02-27T20:49:22-13:00", "latitude": 68.849102, "longitude": 121.766793, "tags": [ "consectetur", "reprehenderit", "dolore", "et", "reprehenderit", "nostrud", "laboris" ], "friends": [ { "id": 0, "name": "Kemp Knight" }, { "id": 1, "name": "Francis Reynolds" }, { "id": 2, "name": "Hoover Dunn" } ], "greeting": "Hello, Araceli Townsend! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f12ff7c75034e8646", "index": 715, "guid": "5dd7aa54-ee9f-41fb-b499-ac273d887f16", "isActive": false, "balance": "$3,314.29", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Clark Graham", "gender": "male", "company": "INTERFIND", "email": "clarkgraham@interfind.com", "phone": "+1 (837) 447-2186", "address": "209 Bergen Street, Choctaw, Federated States Of Micronesia, 3260", "about": "Sunt occaecat aliqua quis deserunt fugiat enim. Officia dolore occaecat elit exercitation consectetur. Pariatur occaecat dolor elit ut est amet qui sit cillum est occaecat veniam consequat commodo. Do reprehenderit Lorem reprehenderit est incididunt Lorem cillum ea proident incididunt. Reprehenderit veniam deserunt est enim ipsum mollit fugiat. Est aliquip laborum Lorem officia cillum magna esse non nisi commodo ex et elit. Eiusmod tempor ex pariatur proident eiusmod ea sit.\r\n", "registered": "2014-06-14T11:12:22-12:00", "latitude": -25.683022, "longitude": -39.313615, "tags": [ "aliquip", "est", "occaecat", "officia", "occaecat", "Lorem", "ex" ], "friends": [ { "id": 0, "name": "Rebecca Vincent" }, { "id": 1, "name": "Tabitha Ellison" }, { "id": 2, "name": "Emma Armstrong" } ], "greeting": "Hello, Clark Graham! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f4bfc1f0792805edd", "index": 716, "guid": "e7cea693-e389-47bb-a3b5-b822e3b09dbe", "isActive": false, "balance": "$1,205.38", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Carolina Reid", "gender": "female", "company": "ECRATER", "email": "carolinareid@ecrater.com", "phone": "+1 (904) 470-2977", "address": "886 Conselyea Street, Dundee, Oklahoma, 5650", "about": "Adipisicing quis adipisicing pariatur esse sint nisi amet excepteur aliqua. Velit duis sit sint proident sit. Pariatur do excepteur ad sit. Id quis et Lorem et. Aliqua ut excepteur aute laborum do incididunt est laboris eiusmod ut.\r\n", "registered": "2014-09-21T18:42:45-12:00", "latitude": 40.344709, "longitude": -28.642819, "tags": [ "magna", "reprehenderit", "amet", "eiusmod", "cillum", "aliqua", "fugiat" ], "friends": [ { "id": 0, "name": "Merrill Sears" }, { "id": 1, "name": "Harrell Anthony" }, { "id": 2, "name": "Nguyen Myers" } ], "greeting": "Hello, Carolina Reid! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f301e51f6f020faf8", "index": 717, "guid": "bf75354d-b195-48b5-852a-dea9f57d337c", "isActive": true, "balance": "$3,587.63", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Virgie Raymond", "gender": "female", "company": "RONELON", "email": "virgieraymond@ronelon.com", "phone": "+1 (834) 567-3618", "address": "716 Gem Street, Caledonia, Michigan, 5843", "about": "Culpa reprehenderit Lorem occaecat nostrud nisi ad consequat reprehenderit est in. Do nulla magna dolor cillum adipisicing ullamco nisi proident esse. Proident sint qui elit voluptate est est.\r\n", "registered": "2014-05-02T08:00:22-12:00", "latitude": 5.811051, "longitude": -57.663689, "tags": [ "irure", "Lorem", "eiusmod", "elit", "voluptate", "velit", "amet" ], "friends": [ { "id": 0, "name": "Tiffany Golden" }, { "id": 1, "name": "Bates Roy" }, { "id": 2, "name": "Guzman Clemons" } ], "greeting": "Hello, Virgie Raymond! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f67c45b481470d2cd", "index": 718, "guid": "85418908-0d50-450c-ad93-45adec49fc58", "isActive": false, "balance": "$1,748.97", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Mcfadden England", "gender": "male", "company": "QUIZMO", "email": "mcfaddenengland@quizmo.com", "phone": "+1 (841) 546-3644", "address": "837 Hale Avenue, Barronett, Kansas, 9366", "about": "Ad laborum tempor eu exercitation sunt anim enim amet in incididunt. Culpa sunt qui id pariatur deserunt excepteur. Occaecat esse laborum laboris non. Cillum consectetur sunt aute qui tempor id fugiat Lorem sint laboris aliqua ex quis. Nulla sunt cillum sit minim nulla dolore laboris cupidatat nisi esse dolor et. Fugiat est duis mollit pariatur velit.\r\n", "registered": "2014-02-25T21:36:34-13:00", "latitude": 34.015725, "longitude": 4.772554, "tags": [ "nostrud", "reprehenderit", "enim", "eu", "in", "sit", "nisi" ], "friends": [ { "id": 0, "name": "Elisabeth Reyes" }, { "id": 1, "name": "Vicki Shields" }, { "id": 2, "name": "Kirby Tillman" } ], "greeting": "Hello, Mcfadden England! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fc3e895430e80785b", "index": 719, "guid": "19926662-4c85-4da2-b962-8f80422202bd", "isActive": false, "balance": "$2,790.53", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Doyle Valentine", "gender": "male", "company": "POOCHIES", "email": "doylevalentine@poochies.com", "phone": "+1 (907) 457-3138", "address": "288 Bokee Court, Hinsdale, South Dakota, 6257", "about": "Sint esse laboris consectetur mollit adipisicing excepteur dolore esse ea voluptate esse. Duis laborum enim amet consequat occaecat sit deserunt fugiat ea voluptate nostrud sint. Officia tempor ullamco et commodo officia incididunt mollit labore aliquip. Sunt qui ipsum ex laborum nulla adipisicing pariatur occaecat cillum duis tempor adipisicing. Veniam elit occaecat pariatur consequat veniam do culpa elit mollit magna laborum. Reprehenderit laboris aute elit duis incididunt ea esse anim duis. Esse sint qui qui anim commodo proident reprehenderit incididunt ipsum laboris sit.\r\n", "registered": "2014-03-26T10:58:11-13:00", "latitude": 36.447112, "longitude": -71.16084, "tags": [ "ipsum", "sunt", "fugiat", "velit", "sint", "quis", "ut" ], "friends": [ { "id": 0, "name": "Lorrie Edwards" }, { "id": 1, "name": "Hill Shelton" }, { "id": 2, "name": "Franklin Soto" } ], "greeting": "Hello, Doyle Valentine! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f4a85d4a0e5678a6f", "index": 720, "guid": "96e7fa8e-9ef4-4504-aad3-71ee1dba23f1", "isActive": true, "balance": "$1,515.26", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Lessie Mccall", "gender": "female", "company": "VETRON", "email": "lessiemccall@vetron.com", "phone": "+1 (862) 513-3425", "address": "585 Harrison Avenue, Whitmer, West Virginia, 8248", "about": "In in labore eu nisi sunt veniam. Deserunt ad adipisicing ullamco incididunt ipsum eiusmod excepteur proident officia aliqua aliquip. Et ex Lorem ullamco aliquip eiusmod. Cillum labore ea duis esse. Non cillum laborum Lorem laborum ut anim deserunt consectetur veniam sint nulla tempor nostrud et. Incididunt ipsum amet elit ea aliquip laboris. Cillum consequat reprehenderit duis esse irure incididunt tempor.\r\n", "registered": "2014-02-24T14:16:23-13:00", "latitude": 71.361255, "longitude": 64.728537, "tags": [ "commodo", "commodo", "adipisicing", "sint", "mollit", "aute", "cillum" ], "friends": [ { "id": 0, "name": "Dickson Strong" }, { "id": 1, "name": "Caitlin Brown" }, { "id": 2, "name": "Morse Gregory" } ], "greeting": "Hello, Lessie Mccall! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f9ed1aadd9bbcc2b6", "index": 721, "guid": "6f8160bb-5cf8-4822-8155-2c158f88ae85", "isActive": false, "balance": "$3,578.14", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Snider Mccoy", "gender": "male", "company": "IDEALIS", "email": "snidermccoy@idealis.com", "phone": "+1 (868) 411-2114", "address": "307 Calder Place, Summerfield, Texas, 9299", "about": "Quis exercitation eu commodo aute officia reprehenderit reprehenderit proident consectetur esse laborum Lorem. Sunt laborum nisi quis minim exercitation eu. Qui veniam elit laborum tempor. Elit nulla eiusmod aliqua in in dolore ut sint. Ipsum laborum officia elit incididunt reprehenderit aliquip enim adipisicing et minim sit et sint. Sunt dolor adipisicing laborum dolor excepteur consectetur ullamco ipsum ipsum non. Eiusmod nisi deserunt ad ex incididunt eu amet laborum dolor.\r\n", "registered": "2014-03-02T06:43:36-13:00", "latitude": 21.7525, "longitude": 24.962858, "tags": [ "minim", "incididunt", "aute", "ea", "occaecat", "incididunt", "ut" ], "friends": [ { "id": 0, "name": "Washington Mcconnell" }, { "id": 1, "name": "Erickson Collier" }, { "id": 2, "name": "Lindsay Baxter" } ], "greeting": "Hello, Snider Mccoy! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fc58ac6a650a21621", "index": 722, "guid": "3973808d-8a31-4b8b-83e3-c1aac5e2052c", "isActive": false, "balance": "$3,990.64", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Nixon Blake", "gender": "male", "company": "ZOLAVO", "email": "nixonblake@zolavo.com", "phone": "+1 (858) 469-2019", "address": "147 Amber Street, Boomer, Oregon, 1361", "about": "Laborum culpa exercitation ut qui fugiat labore Lorem. Duis est exercitation laborum tempor sint anim deserunt adipisicing. Adipisicing ex in magna sit cupidatat reprehenderit velit commodo cillum.\r\n", "registered": "2014-03-16T00:23:59-13:00", "latitude": 3.950806, "longitude": 9.492433, "tags": [ "exercitation", "est", "dolor", "labore", "voluptate", "non", "anim" ], "friends": [ { "id": 0, "name": "Georgina Lancaster" }, { "id": 1, "name": "Lamb Donovan" }, { "id": 2, "name": "Matilda Jenkins" } ], "greeting": "Hello, Nixon Blake! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fa0c380f24be28468", "index": 723, "guid": "5e7e671d-0f76-446b-b075-21117c727de9", "isActive": true, "balance": "$2,124.64", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Avery Pate", "gender": "male", "company": "PULZE", "email": "averypate@pulze.com", "phone": "+1 (981) 475-2317", "address": "296 Court Square, Connerton, Nevada, 9472", "about": "Enim consectetur exercitation et pariatur ad voluptate enim proident occaecat commodo anim tempor irure. Proident nulla ipsum consectetur occaecat irure aliquip id culpa in cillum cillum. Ex eiusmod anim sint ex eu in dolore esse anim exercitation ea. Quis commodo adipisicing incididunt anim qui tempor culpa Lorem cupidatat Lorem pariatur reprehenderit adipisicing. Anim laboris irure et proident eu proident culpa pariatur commodo eiusmod velit. Elit nostrud elit occaecat consectetur minim.\r\n", "registered": "2014-05-20T14:04:45-12:00", "latitude": -62.013436, "longitude": -150.203226, "tags": [ "est", "in", "proident", "laboris", "amet", "nulla", "nulla" ], "friends": [ { "id": 0, "name": "Catalina Velez" }, { "id": 1, "name": "Page Higgins" }, { "id": 2, "name": "Ray Berry" } ], "greeting": "Hello, Avery Pate! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f1917efa48e1ac85e", "index": 724, "guid": "bc911319-54ac-4222-9a34-6ec499008147", "isActive": true, "balance": "$1,434.28", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Newman Peterson", "gender": "male", "company": "ZENTIME", "email": "newmanpeterson@zentime.com", "phone": "+1 (918) 453-2651", "address": "655 Manor Court, Volta, Minnesota, 7010", "about": "Pariatur culpa anim nulla nisi. Sunt ut amet esse velit. Ea enim eu mollit ut aute occaecat pariatur enim mollit amet dolor.\r\n", "registered": "2014-05-02T23:12:29-12:00", "latitude": -40.988589, "longitude": -14.084514, "tags": [ "et", "id", "elit", "ea", "deserunt", "velit", "culpa" ], "friends": [ { "id": 0, "name": "Lavonne Solomon" }, { "id": 1, "name": "Jeanine Nixon" }, { "id": 2, "name": "Rochelle Fulton" } ], "greeting": "Hello, Newman Peterson! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f99b151920d8b4dec", "index": 725, "guid": "b21f5ca9-0e3f-441a-a969-8ae14047fd7e", "isActive": true, "balance": "$1,558.25", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Grace Roberson", "gender": "female", "company": "CONFERIA", "email": "graceroberson@conferia.com", "phone": "+1 (837) 455-3454", "address": "969 Noble Street, Camptown, Missouri, 4021", "about": "Nulla aliquip commodo cupidatat labore fugiat cillum ex cillum eiusmod. Do Lorem amet anim fugiat qui ex cupidatat labore irure duis nulla pariatur. Amet exercitation in eiusmod ipsum reprehenderit laboris Lorem magna proident voluptate laboris labore incididunt anim. Esse nostrud proident ad dolore irure aliquip proident. Eiusmod quis mollit commodo non sint laborum culpa minim consectetur cupidatat laborum sint. Aute eu voluptate qui nostrud sit sit et officia fugiat veniam Lorem.\r\n", "registered": "2014-01-24T13:56:32-13:00", "latitude": 56.542282, "longitude": -38.675306, "tags": [ "incididunt", "nostrud", "sit", "minim", "ipsum", "cupidatat", "incididunt" ], "friends": [ { "id": 0, "name": "Erin Stuart" }, { "id": 1, "name": "Jo Chambers" }, { "id": 2, "name": "Taylor Ellis" } ], "greeting": "Hello, Grace Roberson! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8270bbcd78752154", "index": 726, "guid": "3d390a26-6891-4055-b325-264aeeab2c86", "isActive": false, "balance": "$2,312.33", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Kayla Lambert", "gender": "female", "company": "ACCUSAGE", "email": "kaylalambert@accusage.com", "phone": "+1 (934) 582-2649", "address": "661 Jefferson Avenue, Forbestown, Rhode Island, 8908", "about": "Proident sunt dolor ad excepteur. Nisi sint laborum sint nostrud enim aliqua esse in et qui nisi cupidatat non. Culpa exercitation velit amet do nulla Lorem velit cillum reprehenderit amet dolore. Adipisicing nisi consequat est est cupidatat dolore sint ex do tempor adipisicing officia. Duis minim laborum ad duis occaecat minim amet ullamco laborum.\r\n", "registered": "2014-04-18T04:43:05-12:00", "latitude": -28.837707, "longitude": 166.350854, "tags": [ "deserunt", "pariatur", "et", "esse", "ex", "laboris", "consectetur" ], "friends": [ { "id": 0, "name": "Sherman Guerra" }, { "id": 1, "name": "Amie Stevens" }, { "id": 2, "name": "Fuentes Hunt" } ], "greeting": "Hello, Kayla Lambert! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fe803fc31ca744f1f", "index": 727, "guid": "b21f1ceb-cc55-4c71-a616-884a392ea8a8", "isActive": true, "balance": "$3,199.58", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Bernice Guzman", "gender": "female", "company": "COMVEYOR", "email": "berniceguzman@comveyor.com", "phone": "+1 (802) 532-2405", "address": "881 Havemeyer Street, Felt, Florida, 3707", "about": "Veniam aute esse dolor consequat in culpa ad consequat duis occaecat fugiat. Consectetur do cupidatat proident irure. Eu incididunt cillum velit enim. Quis laboris elit anim aliqua. Pariatur aliquip proident qui quis qui id consectetur nisi. Ut ipsum exercitation do nulla eu laboris officia veniam. Velit do enim exercitation ad.\r\n", "registered": "2014-07-13T11:50:10-12:00", "latitude": -50.629277, "longitude": 131.111411, "tags": [ "incididunt", "ullamco", "duis", "officia", "non", "culpa", "eiusmod" ], "friends": [ { "id": 0, "name": "Johnston Hickman" }, { "id": 1, "name": "Jenny Cooley" }, { "id": 2, "name": "Randi Ortiz" } ], "greeting": "Hello, Bernice Guzman! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fe108a4d47b30ac7d", "index": 728, "guid": "22e83b8b-3707-4637-a78c-78fad44ef851", "isActive": true, "balance": "$2,691.58", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Shepard French", "gender": "male", "company": "COSMETEX", "email": "shepardfrench@cosmetex.com", "phone": "+1 (872) 567-3042", "address": "367 Jamison Lane, Savage, North Carolina, 9428", "about": "Elit ad ullamco dolore in est nostrud id commodo anim quis. Consequat nulla cillum anim consectetur. Id sunt Lorem ad veniam ea. Sunt adipisicing nostrud qui aliquip irure dolore amet excepteur esse elit. Ullamco ad do minim occaecat. Pariatur eiusmod ullamco incididunt esse duis ut laborum ex sint nisi pariatur ut. Culpa tempor minim adipisicing voluptate officia anim eu in laborum irure.\r\n", "registered": "2014-01-24T03:07:35-13:00", "latitude": 62.056727, "longitude": -82.656855, "tags": [ "voluptate", "cillum", "elit", "minim", "tempor", "laboris", "velit" ], "friends": [ { "id": 0, "name": "Aisha Carver" }, { "id": 1, "name": "Boyle Hughes" }, { "id": 2, "name": "Viola Acosta" } ], "greeting": "Hello, Shepard French! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f87edb78faffc52a2", "index": 729, "guid": "042bde20-078e-4f29-adaa-e77595245f14", "isActive": false, "balance": "$2,870.95", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Tamra Christian", "gender": "female", "company": "GINKLE", "email": "tamrachristian@ginkle.com", "phone": "+1 (992) 553-3952", "address": "289 Beverley Road, Juntura, New Hampshire, 3268", "about": "Eiusmod sunt id pariatur consectetur consequat eiusmod sit sunt pariatur pariatur consequat proident. Velit occaecat consectetur in ad in adipisicing nulla. Est eiusmod quis mollit anim aliqua et eiusmod consequat qui adipisicing enim ipsum sint. Amet eu laboris laboris aute voluptate do Lorem nisi culpa laboris voluptate reprehenderit enim nostrud. Cillum velit eiusmod mollit in sunt sit esse laboris cupidatat aliquip in enim cillum Lorem. Culpa non non voluptate mollit ad consectetur enim reprehenderit reprehenderit ut velit. Irure anim eiusmod aute incididunt commodo culpa.\r\n", "registered": "2014-03-10T20:33:01-13:00", "latitude": 17.289069, "longitude": -3.747878, "tags": [ "do", "minim", "deserunt", "fugiat", "in", "ex", "labore" ], "friends": [ { "id": 0, "name": "Jana Powers" }, { "id": 1, "name": "Constance Oliver" }, { "id": 2, "name": "Browning Douglas" } ], "greeting": "Hello, Tamra Christian! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f30c50d07901d6cb4", "index": 730, "guid": "3770f825-96ba-4cef-ae5c-8124ed77d50e", "isActive": true, "balance": "$3,532.49", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Camille Brewer", "gender": "female", "company": "DEMINIMUM", "email": "camillebrewer@deminimum.com", "phone": "+1 (938) 421-3836", "address": "400 Seaview Avenue, Glenshaw, Arkansas, 6756", "about": "Dolore minim id Lorem dolore minim. Sit est duis occaecat quis ullamco commodo laboris aute anim laborum tempor sint. Ut fugiat quis dolore irure pariatur incididunt sunt quis ut nostrud laboris incididunt do. Excepteur tempor aute anim laborum voluptate labore ut. Ex commodo laborum duis id reprehenderit. Est excepteur qui ut nisi aliquip sunt dolor culpa officia. Voluptate irure amet cupidatat reprehenderit quis non do nulla quis eu ad labore officia.\r\n", "registered": "2014-01-16T09:50:39-13:00", "latitude": -85.734075, "longitude": -169.334454, "tags": [ "cupidatat", "eiusmod", "commodo", "sunt", "Lorem", "incididunt", "exercitation" ], "friends": [ { "id": 0, "name": "Pena Walsh" }, { "id": 1, "name": "Barr Herring" }, { "id": 2, "name": "Christine Chaney" } ], "greeting": "Hello, Camille Brewer! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fe1db7f212f772a0c", "index": 731, "guid": "547d626f-5704-4c6a-8950-54b1774b4e22", "isActive": true, "balance": "$2,653.59", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Alma Hunter", "gender": "female", "company": "UNIA", "email": "almahunter@unia.com", "phone": "+1 (975) 434-2331", "address": "626 Cambridge Place, Caron, Iowa, 4000", "about": "Ipsum commodo sunt do est pariatur aute. Aliquip mollit non Lorem sunt sit excepteur mollit do deserunt in ullamco in ad. Fugiat proident duis incididunt mollit excepteur sit velit eiusmod.\r\n", "registered": "2014-02-27T18:17:09-13:00", "latitude": -1.720124, "longitude": 85.700621, "tags": [ "labore", "ad", "excepteur", "qui", "tempor", "sint", "esse" ], "friends": [ { "id": 0, "name": "Bradshaw Cantrell" }, { "id": 1, "name": "Katheryn Monroe" }, { "id": 2, "name": "James Harper" } ], "greeting": "Hello, Alma Hunter! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f7dd13c2cda634ae7", "index": 732, "guid": "d579e8a2-9602-40cd-acb9-bdc547b5649a", "isActive": false, "balance": "$3,679.42", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Lorena Stout", "gender": "female", "company": "EMPIRICA", "email": "lorenastout@empirica.com", "phone": "+1 (947) 529-3156", "address": "375 Pine Street, Bordelonville, Nebraska, 5732", "about": "Reprehenderit ex elit dolore sit ullamco culpa. Duis reprehenderit ea ullamco esse excepteur voluptate Lorem nostrud veniam labore adipisicing dolor. Aliquip adipisicing magna duis ea id Lorem proident quis qui esse sunt velit. Duis fugiat qui dolor veniam ullamco id ad minim fugiat.\r\n", "registered": "2014-04-28T07:11:55-12:00", "latitude": -66.403729, "longitude": -0.410601, "tags": [ "Lorem", "ea", "aute", "voluptate", "cupidatat", "nulla", "exercitation" ], "friends": [ { "id": 0, "name": "Latasha Glenn" }, { "id": 1, "name": "Terra Goff" }, { "id": 2, "name": "Oliver Cannon" } ], "greeting": "Hello, Lorena Stout! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f44286131d2883707", "index": 733, "guid": "f278dd06-e7ff-436b-83a2-d0a1542b750c", "isActive": true, "balance": "$1,047.89", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Angelina Buchanan", "gender": "female", "company": "AQUACINE", "email": "angelinabuchanan@aquacine.com", "phone": "+1 (830) 415-2002", "address": "645 Aberdeen Street, Clay, District Of Columbia, 6858", "about": "Nisi excepteur commodo dolore reprehenderit ipsum tempor exercitation ullamco tempor aliqua aliqua irure. Esse sint deserunt sit elit aliqua reprehenderit nisi ipsum excepteur fugiat reprehenderit sit. Dolore Lorem consectetur nulla duis mollit. Incididunt ex fugiat ex aliquip dolore ut exercitation officia minim aute fugiat officia Lorem velit. Elit laboris ea laboris deserunt. Ad ex occaecat velit dolor sit.\r\n", "registered": "2014-03-29T19:01:59-13:00", "latitude": -58.631381, "longitude": -86.205345, "tags": [ "nisi", "et", "magna", "laborum", "laborum", "labore", "duis" ], "friends": [ { "id": 0, "name": "Janelle Trujillo" }, { "id": 1, "name": "Dorothea Pittman" }, { "id": 2, "name": "Alexandra Crane" } ], "greeting": "Hello, Angelina Buchanan! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f0ccdb463cba86662", "index": 734, "guid": "4db0bfc5-a71d-4b23-9201-b28e2a5c5c62", "isActive": true, "balance": "$1,622.72", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Ayers Pruitt", "gender": "male", "company": "DANCERITY", "email": "ayerspruitt@dancerity.com", "phone": "+1 (999) 421-2417", "address": "302 Crooke Avenue, Elliott, New Jersey, 4182", "about": "Consequat velit nisi nostrud est commodo ad commodo laborum amet voluptate minim laboris duis in. Occaecat tempor minim eu ullamco reprehenderit sunt non ullamco ea nulla. Est qui ullamco reprehenderit adipisicing veniam qui cillum est fugiat cillum adipisicing elit. Labore culpa laboris enim laboris occaecat velit. In irure commodo enim ad esse sunt sit ullamco. Cillum voluptate sint pariatur non ut. Quis exercitation ut dolor excepteur et.\r\n", "registered": "2014-09-08T13:29:58-12:00", "latitude": -31.152912, "longitude": -156.94622, "tags": [ "aliqua", "laborum", "adipisicing", "nulla", "occaecat", "mollit", "pariatur" ], "friends": [ { "id": 0, "name": "Johnnie Holmes" }, { "id": 1, "name": "Burks Bryant" }, { "id": 2, "name": "Bessie Cummings" } ], "greeting": "Hello, Ayers Pruitt! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f77b5b4fbd2a00f06", "index": 735, "guid": "586f9b41-7fe9-4f0c-91e5-d536fb70a906", "isActive": true, "balance": "$2,856.18", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Alissa Gilmore", "gender": "female", "company": "OLYMPIX", "email": "alissagilmore@olympix.com", "phone": "+1 (831) 580-2084", "address": "632 Brightwater Court, Dawn, Palau, 9834", "about": "Occaecat quis eu excepteur ad voluptate pariatur. Officia sunt sit mollit eiusmod eiusmod quis proident labore reprehenderit duis. Enim labore do sunt nostrud consequat dolor ipsum minim Lorem ex et magna.\r\n", "registered": "2014-08-30T19:18:17-12:00", "latitude": -65.925693, "longitude": -127.846153, "tags": [ "culpa", "dolor", "laboris", "voluptate", "eiusmod", "esse", "do" ], "friends": [ { "id": 0, "name": "Hatfield Powell" }, { "id": 1, "name": "Vivian Silva" }, { "id": 2, "name": "Russo Wong" } ], "greeting": "Hello, Alissa Gilmore! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fa3a0a1e85c998686", "index": 736, "guid": "37748d8d-7381-492c-9bbd-8c5a81aa4d3d", "isActive": false, "balance": "$2,227.74", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Hester Hood", "gender": "male", "company": "CALCULA", "email": "hesterhood@calcula.com", "phone": "+1 (818) 468-2538", "address": "843 Ira Court, Croom, Puerto Rico, 7830", "about": "Reprehenderit ullamco deserunt nulla occaecat sit cillum est duis minim sunt. Irure dolor voluptate quis officia cupidatat ipsum eiusmod enim quis. Quis et aliquip non labore sit qui occaecat culpa voluptate proident. Elit id ullamco aute amet deserunt mollit in magna quis officia nulla proident nisi laborum.\r\n", "registered": "2014-01-26T03:37:07-13:00", "latitude": 37.97414, "longitude": -84.183862, "tags": [ "excepteur", "pariatur", "tempor", "dolore", "laborum", "laboris", "culpa" ], "friends": [ { "id": 0, "name": "Cara Herrera" }, { "id": 1, "name": "Helene Hanson" }, { "id": 2, "name": "Mejia Hammond" } ], "greeting": "Hello, Hester Hood! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f79a3ba3d9a6eba13", "index": 737, "guid": "55c4c044-d8bd-4221-9ba4-2e14c04f038c", "isActive": true, "balance": "$1,062.01", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Gonzalez Burnett", "gender": "male", "company": "DRAGBOT", "email": "gonzalezburnett@dragbot.com", "phone": "+1 (924) 591-3248", "address": "600 Bayview Place, Dunnavant, California, 7297", "about": "Anim tempor qui magna Lorem. Incididunt tempor Lorem aliquip fugiat reprehenderit ipsum veniam sit ad laboris deserunt ea. Elit esse pariatur ullamco qui anim nulla non eu Lorem.\r\n", "registered": "2014-07-22T18:44:10-12:00", "latitude": -58.546443, "longitude": -171.074445, "tags": [ "sint", "dolore", "irure", "sunt", "sint", "enim", "occaecat" ], "friends": [ { "id": 0, "name": "Chan Barr" }, { "id": 1, "name": "Buckner Bradley" }, { "id": 2, "name": "Eva Howard" } ], "greeting": "Hello, Gonzalez Burnett! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fb3d57fcf8d1e1af7", "index": 738, "guid": "dacb2f56-3122-4045-8ea0-bb189e85d7a2", "isActive": false, "balance": "$3,001.41", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Carroll Webster", "gender": "male", "company": "SENSATE", "email": "carrollwebster@sensate.com", "phone": "+1 (960) 458-3209", "address": "304 Kingsway Place, Colton, Vermont, 9713", "about": "Nisi minim officia velit id officia irure fugiat dolor excepteur. Sit tempor dolor labore labore sunt. Do nisi commodo id laboris cillum ex nisi. Consectetur veniam exercitation do ut enim amet aliquip aliqua cillum. Minim aliqua id proident magna esse. Quis excepteur culpa veniam ex. Deserunt adipisicing laboris sint laborum eiusmod irure aliqua culpa.\r\n", "registered": "2014-02-12T15:48:31-13:00", "latitude": 60.894296, "longitude": -154.956193, "tags": [ "et", "consectetur", "eiusmod", "pariatur", "ea", "nulla", "nisi" ], "friends": [ { "id": 0, "name": "Concepcion Weber" }, { "id": 1, "name": "Betty Faulkner" }, { "id": 2, "name": "Byrd Richardson" } ], "greeting": "Hello, Carroll Webster! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ff81732189f7cb992", "index": 739, "guid": "823167c6-32ed-4c1d-bc8e-352ce11c25d8", "isActive": false, "balance": "$2,661.47", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Priscilla Hess", "gender": "female", "company": "ISOLOGICA", "email": "priscillahess@isologica.com", "phone": "+1 (830) 480-3544", "address": "371 Java Street, Farmers, Indiana, 2724", "about": "Dolore minim aliquip minim tempor aliquip excepteur minim ex cillum dolore. Et ipsum mollit exercitation velit do. Aute commodo laboris elit ullamco magna tempor anim fugiat nulla ea. Amet commodo et deserunt consectetur labore laborum occaecat est irure enim.\r\n", "registered": "2014-05-06T08:10:46-12:00", "latitude": -39.169119, "longitude": -163.51466, "tags": [ "quis", "exercitation", "proident", "ex", "aliqua", "magna", "duis" ], "friends": [ { "id": 0, "name": "Jeanie Olson" }, { "id": 1, "name": "Ellison Ferrell" }, { "id": 2, "name": "Autumn Blevins" } ], "greeting": "Hello, Priscilla Hess! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f76d6a044e28ca1e1", "index": 740, "guid": "cdf0e391-987e-4eef-9f10-d62a93fd82bf", "isActive": false, "balance": "$2,141.01", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Faulkner Andrews", "gender": "male", "company": "UTARA", "email": "faulknerandrews@utara.com", "phone": "+1 (807) 460-3970", "address": "143 Trucklemans Lane, Brownsville, Illinois, 1361", "about": "Incididunt consectetur sint nulla quis culpa. Magna velit nisi qui incididunt excepteur nostrud proident voluptate in do laborum culpa duis incididunt. Sit voluptate esse minim aliquip labore enim commodo aliqua. Mollit excepteur elit occaecat minim pariatur non elit. Aute fugiat veniam quis do quis incididunt adipisicing irure adipisicing proident est Lorem amet ex. Minim labore duis exercitation est magna consectetur enim nostrud duis id occaecat anim. Velit ullamco culpa consequat nulla voluptate nisi anim culpa sit.\r\n", "registered": "2014-08-15T01:21:49-12:00", "latitude": -44.729662, "longitude": 112.327131, "tags": [ "velit", "sunt", "velit", "Lorem", "deserunt", "reprehenderit", "sunt" ], "friends": [ { "id": 0, "name": "Farmer Campos" }, { "id": 1, "name": "Morgan Dean" }, { "id": 2, "name": "Monica Cotton" } ], "greeting": "Hello, Faulkner Andrews! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8b503d740d966e0e", "index": 741, "guid": "20b0a95a-b936-4b5b-956a-4711591027a1", "isActive": false, "balance": "$1,786.44", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Laurie Winters", "gender": "female", "company": "TUBESYS", "email": "lauriewinters@tubesys.com", "phone": "+1 (851) 417-2433", "address": "848 Senator Street, Brewster, South Carolina, 7512", "about": "Fugiat deserunt anim irure minim labore. Veniam laboris anim elit aliquip tempor aliqua sint quis enim deserunt esse excepteur ex tempor. Fugiat fugiat laborum exercitation eu quis magna pariatur ad in.\r\n", "registered": "2014-06-03T12:59:14-12:00", "latitude": 58.270778, "longitude": 147.31023, "tags": [ "ut", "occaecat", "laborum", "ea", "enim", "quis", "cupidatat" ], "friends": [ { "id": 0, "name": "Davis Payne" }, { "id": 1, "name": "Rosalie Puckett" }, { "id": 2, "name": "Barbra Finley" } ], "greeting": "Hello, Laurie Winters! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f0807304837487f40", "index": 742, "guid": "55e84918-e9ba-42e9-810d-e00a30d4ecf5", "isActive": true, "balance": "$2,975.22", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Marguerite Conrad", "gender": "female", "company": "ZILLATIDE", "email": "margueriteconrad@zillatide.com", "phone": "+1 (946) 588-2303", "address": "498 Bayview Avenue, Morriston, American Samoa, 6005", "about": "Mollit velit est enim adipisicing sunt cillum culpa cillum in nisi deserunt ullamco eu excepteur. Anim commodo in ut nostrud labore velit. Id sit magna velit adipisicing velit enim labore nostrud excepteur excepteur ullamco sit nostrud laborum. Ea magna irure nisi nisi dolore aliquip.\r\n", "registered": "2014-03-07T19:36:41-13:00", "latitude": -10.024921, "longitude": 130.322884, "tags": [ "excepteur", "nisi", "Lorem", "voluptate", "mollit", "sit", "laboris" ], "friends": [ { "id": 0, "name": "Peggy Allison" }, { "id": 1, "name": "Frank Dennis" }, { "id": 2, "name": "Esmeralda Bright" } ], "greeting": "Hello, Marguerite Conrad! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f40ab82cc35ba9b73", "index": 743, "guid": "a9378e03-e07f-4c11-962f-530756d7eccb", "isActive": false, "balance": "$3,035.48", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Lewis Freeman", "gender": "male", "company": "COMVEY", "email": "lewisfreeman@comvey.com", "phone": "+1 (890) 531-2626", "address": "596 Locust Street, Delwood, Delaware, 1360", "about": "Proident aliquip nostrud excepteur voluptate ad enim in esse tempor incididunt Lorem voluptate commodo id. Cillum laboris qui eiusmod labore. Est veniam incididunt id eiusmod qui consectetur eu. Labore irure ex veniam ut magna commodo sint nostrud ea laboris excepteur commodo velit. Commodo sit laboris tempor labore fugiat ut officia aliqua consectetur tempor est enim. Ut quis magna magna deserunt quis minim deserunt. Ullamco velit aliqua esse laboris culpa dolore aliquip irure nisi.\r\n", "registered": "2014-09-11T08:49:57-12:00", "latitude": -26.513645, "longitude": -179.831804, "tags": [ "exercitation", "exercitation", "cillum", "nostrud", "reprehenderit", "deserunt", "pariatur" ], "friends": [ { "id": 0, "name": "Pollard Vargas" }, { "id": 1, "name": "Powers Fuentes" }, { "id": 2, "name": "Leach Giles" } ], "greeting": "Hello, Lewis Freeman! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8ae9c48297a200f2", "index": 744, "guid": "2be42f67-5f8d-4f45-856e-21cf88483945", "isActive": false, "balance": "$2,212.52", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Miranda Singleton", "gender": "female", "company": "MUSAPHICS", "email": "mirandasingleton@musaphics.com", "phone": "+1 (927) 463-2970", "address": "112 Dunham Place, Kenwood, Pennsylvania, 2956", "about": "Pariatur excepteur enim incididunt laboris nisi laborum amet deserunt elit sint consequat id eiusmod aliqua. Esse ipsum quis excepteur ea. Officia in irure pariatur id excepteur sit mollit anim eu nulla anim ea. Exercitation irure amet ex qui occaecat eiusmod minim elit sit cupidatat id. Aute ipsum laboris officia laboris ad voluptate ipsum aliqua. Sit aliqua veniam anim ea nulla quis mollit dolor cillum.\r\n", "registered": "2014-02-05T20:00:17-13:00", "latitude": -39.549602, "longitude": -9.316049, "tags": [ "nisi", "dolor", "amet", "commodo", "ut", "veniam", "ut" ], "friends": [ { "id": 0, "name": "Pacheco Farmer" }, { "id": 1, "name": "Beryl Lewis" }, { "id": 2, "name": "Foster Castaneda" } ], "greeting": "Hello, Miranda Singleton! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fde6dd62f0d388d1b", "index": 745, "guid": "1c5cde2b-556a-4873-8abf-ad3876690d1d", "isActive": false, "balance": "$1,709.70", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Rodriquez Burgess", "gender": "male", "company": "MEDICROIX", "email": "rodriquezburgess@medicroix.com", "phone": "+1 (867) 438-3514", "address": "537 Miller Place, Detroit, Georgia, 1347", "about": "Deserunt laborum dolor ut culpa ea eu deserunt sint enim non non tempor eiusmod adipisicing. Est duis voluptate cupidatat nisi. Sunt ad Lorem reprehenderit veniam et fugiat sit cupidatat sit.\r\n", "registered": "2014-03-31T03:52:26-13:00", "latitude": -65.164953, "longitude": -101.216989, "tags": [ "ullamco", "sit", "quis", "non", "consequat", "ut", "esse" ], "friends": [ { "id": 0, "name": "Wyatt Brooks" }, { "id": 1, "name": "Lois Boyer" }, { "id": 2, "name": "Dana Cortez" } ], "greeting": "Hello, Rodriquez Burgess! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f49a50df32bd06d7b", "index": 746, "guid": "ce6d36d0-623f-42a0-a2cb-30f7ace7bf12", "isActive": true, "balance": "$1,409.63", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Phoebe Beck", "gender": "female", "company": "ACCRUEX", "email": "phoebebeck@accruex.com", "phone": "+1 (907) 522-3801", "address": "592 Jay Street, Edenburg, North Dakota, 8756", "about": "Sunt sit laborum culpa dolor. Labore adipisicing commodo qui ex. Nostrud dolor officia excepteur sint. Velit eu sunt eiusmod do labore deserunt qui laborum deserunt in laboris incididunt elit eiusmod. Qui amet ex ipsum irure eu dolore dolore. Magna cupidatat aute pariatur aute ad nostrud labore esse adipisicing adipisicing ipsum do.\r\n", "registered": "2014-04-18T05:41:41-12:00", "latitude": -86.115175, "longitude": -46.976189, "tags": [ "ad", "velit", "Lorem", "Lorem", "culpa", "incididunt", "incididunt" ], "friends": [ { "id": 0, "name": "Margie Hurley" }, { "id": 1, "name": "Jordan Macias" }, { "id": 2, "name": "Cunningham Buckner" } ], "greeting": "Hello, Phoebe Beck! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fff3d1c99b172350a", "index": 747, "guid": "fbffe294-19d1-457b-80c7-b836ea781a97", "isActive": false, "balance": "$3,354.00", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Montoya Cooke", "gender": "male", "company": "TECHMANIA", "email": "montoyacooke@techmania.com", "phone": "+1 (890) 482-2783", "address": "570 Atlantic Avenue, Geyserville, Louisiana, 1803", "about": "Irure amet sit non adipisicing et sit. Tempor cupidatat id eiusmod culpa. Proident sunt labore laborum ut nulla duis eu fugiat veniam ullamco amet magna. Aliqua tempor labore labore duis aliqua elit nulla est consequat labore deserunt fugiat non eiusmod. Eu dolore qui deserunt irure qui exercitation enim sunt irure cupidatat voluptate ex pariatur. Minim in excepteur nostrud dolor sint excepteur duis eiusmod. Aliqua fugiat eiusmod quis velit cupidatat elit.\r\n", "registered": "2014-03-15T05:50:07-13:00", "latitude": -31.372014, "longitude": 25.918264, "tags": [ "anim", "qui", "aute", "occaecat", "laborum", "aliquip", "commodo" ], "friends": [ { "id": 0, "name": "Kasey Garrett" }, { "id": 1, "name": "Monroe Mcleod" }, { "id": 2, "name": "Tia Mcgee" } ], "greeting": "Hello, Montoya Cooke! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f79fee6cdc7bcd5b4", "index": 748, "guid": "87303d3f-3fde-4e0e-8038-c7f34650aad9", "isActive": true, "balance": "$1,459.28", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Mercedes Horne", "gender": "female", "company": "QUILCH", "email": "mercedeshorne@quilch.com", "phone": "+1 (962) 441-2364", "address": "336 Conover Street, Williams, Northern Mariana Islands, 4699", "about": "Laboris nulla quis qui deserunt culpa ullamco. Veniam aute reprehenderit fugiat elit Lorem cillum veniam sunt ullamco. Eu cupidatat esse reprehenderit occaecat qui mollit.\r\n", "registered": "2014-07-21T01:07:54-12:00", "latitude": -66.553643, "longitude": -89.481487, "tags": [ "id", "aliquip", "ut", "esse", "consequat", "veniam", "exercitation" ], "friends": [ { "id": 0, "name": "Alyce Kinney" }, { "id": 1, "name": "Waters Witt" }, { "id": 2, "name": "Gaines Perkins" } ], "greeting": "Hello, Mercedes Horne! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8977deb9dcb731f0", "index": 749, "guid": "3e18fb12-a484-48b0-9925-4a836066d66a", "isActive": false, "balance": "$3,215.52", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Cotton Merrill", "gender": "male", "company": "DUFLEX", "email": "cottonmerrill@duflex.com", "phone": "+1 (921) 533-2050", "address": "986 Tapscott Avenue, Carrsville, Colorado, 108", "about": "Magna consequat cupidatat labore pariatur non. Ullamco aute fugiat esse ipsum culpa sunt sunt veniam ut laboris eiusmod non duis velit. Dolor dolore adipisicing tempor Lorem officia et sunt excepteur excepteur eiusmod consectetur fugiat.\r\n", "registered": "2014-09-11T08:09:59-12:00", "latitude": 22.230258, "longitude": -76.553241, "tags": [ "non", "esse", "Lorem", "aute", "sint", "pariatur", "ex" ], "friends": [ { "id": 0, "name": "Simon Cherry" }, { "id": 1, "name": "Crystal Lucas" }, { "id": 2, "name": "Rios Hancock" } ], "greeting": "Hello, Cotton Merrill! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fd5974ace3aaf8384", "index": 750, "guid": "abcb4393-7cf0-4f25-b440-87f48cf41caa", "isActive": true, "balance": "$2,705.80", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Craft Wilkerson", "gender": "male", "company": "QUANTASIS", "email": "craftwilkerson@quantasis.com", "phone": "+1 (818) 445-2232", "address": "714 Lancaster Avenue, Centerville, Idaho, 3871", "about": "In velit ea ad et exercitation commodo occaecat commodo eiusmod officia commodo cupidatat laborum labore. Laboris nulla sunt reprehenderit pariatur. Laboris occaecat anim qui commodo reprehenderit ut proident eu tempor. Ad occaecat magna veniam fugiat qui duis deserunt ea duis eiusmod anim laborum eiusmod. Cillum enim exercitation incididunt quis consequat in laborum id.\r\n", "registered": "2014-08-21T15:18:17-12:00", "latitude": 31.242211, "longitude": -148.795188, "tags": [ "tempor", "sunt", "adipisicing", "consectetur", "occaecat", "cillum", "deserunt" ], "friends": [ { "id": 0, "name": "Price Zamora" }, { "id": 1, "name": "Carver Mack" }, { "id": 2, "name": "Ericka Oneill" } ], "greeting": "Hello, Craft Wilkerson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f7d396cbe3a28bcdb", "index": 751, "guid": "ef4d47b8-62c4-4217-a12b-91a9fb1819d0", "isActive": true, "balance": "$1,364.68", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Shannon Lawson", "gender": "female", "company": "QUIZKA", "email": "shannonlawson@quizka.com", "phone": "+1 (988) 585-3462", "address": "927 Woodside Avenue, Dellview, Marshall Islands, 609", "about": "Consequat amet incididunt sint ipsum ullamco proident anim commodo sunt pariatur incididunt. Elit officia non irure aute commodo veniam aliquip dolore. Sint velit nisi ex officia laboris non duis laboris consequat commodo laborum excepteur. Laborum laborum reprehenderit pariatur reprehenderit ea enim incididunt deserunt sit quis.\r\n", "registered": "2014-05-08T12:58:27-12:00", "latitude": 7.185075, "longitude": -166.649813, "tags": [ "nisi", "consectetur", "mollit", "mollit", "est", "culpa", "eiusmod" ], "friends": [ { "id": 0, "name": "Moore Thomas" }, { "id": 1, "name": "Carole Stein" }, { "id": 2, "name": "Hilda Jacobs" } ], "greeting": "Hello, Shannon Lawson! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1faa11936b872a8354", "index": 752, "guid": "10538787-b94d-466c-a412-82ad3f440b1b", "isActive": false, "balance": "$2,953.42", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Wilda Malone", "gender": "female", "company": "COMVOY", "email": "wildamalone@comvoy.com", "phone": "+1 (929) 443-2399", "address": "436 Emerald Street, Skyland, New York, 1522", "about": "Incididunt cupidatat minim ullamco sint amet excepteur duis nulla cupidatat laborum magna. Veniam dolor ullamco adipisicing ad sint est eu sint exercitation magna sunt. Qui dolore et laborum enim culpa tempor nulla culpa. Aute duis anim laboris laborum id deserunt commodo proident do consequat tempor dolore sunt. Dolore consequat qui cillum labore adipisicing culpa est reprehenderit. Mollit minim laboris Lorem qui incididunt dolor veniam dolor commodo dolore culpa est laborum sint. Amet ad pariatur ad Lorem in nostrud.\r\n", "registered": "2014-06-17T17:48:52-12:00", "latitude": 18.334093, "longitude": 117.104202, "tags": [ "magna", "tempor", "laborum", "sunt", "veniam", "qui", "consectetur" ], "friends": [ { "id": 0, "name": "Garrison Lynch" }, { "id": 1, "name": "Vonda Hendrix" }, { "id": 2, "name": "Valerie Meyer" } ], "greeting": "Hello, Wilda Malone! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f4a61d4c1fbd50b55", "index": 753, "guid": "49e2aa76-d1b4-42a5-894b-a94cc2c3db5c", "isActive": true, "balance": "$2,634.66", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Marta Walton", "gender": "female", "company": "FRANSCENE", "email": "martawalton@franscene.com", "phone": "+1 (925) 473-3321", "address": "681 Nelson Street, Grenelefe, Guam, 9990", "about": "Ad veniam qui velit do amet dolor ex commodo veniam ad eu et cillum voluptate. Voluptate in tempor dolore eiusmod mollit do elit pariatur voluptate sit laboris. Veniam in ad consectetur est aliqua officia aliqua laborum proident amet est. Occaecat ut labore id sit non nulla dolor.\r\n", "registered": "2014-09-12T20:25:50-12:00", "latitude": -39.267859, "longitude": -27.764445, "tags": [ "cillum", "cillum", "voluptate", "cillum", "tempor", "irure", "dolore" ], "friends": [ { "id": 0, "name": "Molly Stanley" }, { "id": 1, "name": "Peterson Collins" }, { "id": 2, "name": "Noreen Sosa" } ], "greeting": "Hello, Marta Walton! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f8f977aca0452c341", "index": 754, "guid": "f681a147-4c97-4abd-8563-1d7e6ffe9bc2", "isActive": true, "balance": "$2,386.41", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Dale Sampson", "gender": "female", "company": "ZUVY", "email": "dalesampson@zuvy.com", "phone": "+1 (875) 530-2276", "address": "349 Moffat Street, Beason, Virgin Islands, 3521", "about": "Laboris qui laboris incididunt irure excepteur. Sunt ad est nisi nulla occaecat nulla minim irure excepteur. Ex velit do ullamco ullamco adipisicing. Cillum quis ad labore aliquip aliquip dolore esse laborum id qui. Culpa labore minim pariatur irure quis aliqua quis ut eu et.\r\n", "registered": "2014-08-16T20:14:10-12:00", "latitude": 54.039886, "longitude": 35.437606, "tags": [ "eu", "quis", "cillum", "occaecat", "ea", "occaecat", "labore" ], "friends": [ { "id": 0, "name": "Vicky Cain" }, { "id": 1, "name": "Faye Sawyer" }, { "id": 2, "name": "Nunez Wilder" } ], "greeting": "Hello, Dale Sampson! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f9d7ba7b06a7c02d8", "index": 755, "guid": "fc02dc47-ce1a-41a8-ad7b-27f5c9eeb775", "isActive": false, "balance": "$1,659.55", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Lucas Mccray", "gender": "male", "company": "ACCUFARM", "email": "lucasmccray@accufarm.com", "phone": "+1 (922) 571-3015", "address": "988 Anthony Street, Fairview, Massachusetts, 6833", "about": "Occaecat ex voluptate velit anim anim aliquip qui nulla labore. Eu esse deserunt nostrud aute ex voluptate est eiusmod laboris. Consequat laboris consectetur mollit ex reprehenderit sint. Officia et est ipsum culpa veniam labore aliquip exercitation laboris fugiat tempor non. Labore esse sunt duis deserunt.\r\n", "registered": "2014-04-16T04:57:48-12:00", "latitude": -31.378558, "longitude": -162.740757, "tags": [ "sit", "officia", "tempor", "duis", "pariatur", "aliquip", "do" ], "friends": [ { "id": 0, "name": "Stacey Sanford" }, { "id": 1, "name": "Graciela Cardenas" }, { "id": 2, "name": "Edwina Morrow" } ], "greeting": "Hello, Lucas Mccray! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f3bf3c12413a1b9fe", "index": 756, "guid": "f0232c52-3971-4631-adc3-783bc2e3e53b", "isActive": true, "balance": "$1,716.37", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Susie Livingston", "gender": "female", "company": "WEBIOTIC", "email": "susielivingston@webiotic.com", "phone": "+1 (977) 433-3295", "address": "294 Beaver Street, Bowmansville, Utah, 6860", "about": "Et qui mollit sunt labore irure Lorem. Eiusmod officia fugiat esse pariatur. Voluptate cupidatat aliquip esse aliqua consectetur ut est nulla fugiat culpa labore.\r\n", "registered": "2014-01-23T03:03:18-13:00", "latitude": 36.460703, "longitude": 47.170062, "tags": [ "velit", "Lorem", "ea", "ullamco", "Lorem", "ullamco", "officia" ], "friends": [ { "id": 0, "name": "Reese Hamilton" }, { "id": 1, "name": "Deleon Shepherd" }, { "id": 2, "name": "Holland Clayton" } ], "greeting": "Hello, Susie Livingston! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fc6ff4c7912467655", "index": 757, "guid": "557c641a-7534-4016-a291-c28652212d70", "isActive": true, "balance": "$3,156.24", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Lucy Atkinson", "gender": "female", "company": "EARBANG", "email": "lucyatkinson@earbang.com", "phone": "+1 (868) 474-3592", "address": "288 Aster Court, Watchtower, Montana, 8980", "about": "Lorem et est nostrud dolore reprehenderit adipisicing commodo officia magna pariatur. Consectetur ut id esse enim consectetur. Excepteur consectetur adipisicing non reprehenderit ut aute cillum. Mollit occaecat deserunt excepteur irure ut reprehenderit voluptate dolore. Aute dolor culpa sunt pariatur eu nostrud consectetur quis amet. Labore commodo cupidatat cillum Lorem quis minim ad pariatur laboris nostrud ad incididunt culpa veniam.\r\n", "registered": "2014-09-08T09:02:59-12:00", "latitude": 79.421488, "longitude": -96.00802, "tags": [ "fugiat", "eu", "voluptate", "dolore", "excepteur", "Lorem", "aliqua" ], "friends": [ { "id": 0, "name": "Shana Clay" }, { "id": 1, "name": "Nadine Whitehead" }, { "id": 2, "name": "Deidre Rush" } ], "greeting": "Hello, Lucy Atkinson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ff9268cbb16efbd5b", "index": 758, "guid": "21a52f1a-40fd-4733-9861-9e72c4547075", "isActive": true, "balance": "$2,713.92", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Mavis Hayden", "gender": "female", "company": "KONNECT", "email": "mavishayden@konnect.com", "phone": "+1 (929) 528-3649", "address": "257 Lake Street, Nogal, Wisconsin, 3169", "about": "Est nulla consectetur sit fugiat cupidatat proident exercitation amet ea ad. Laborum id occaecat irure excepteur qui anim minim incididunt nulla. Irure nostrud magna culpa officia mollit fugiat.\r\n", "registered": "2014-06-30T21:16:06-12:00", "latitude": -3.172523, "longitude": -46.982108, "tags": [ "reprehenderit", "nostrud", "et", "culpa", "qui", "commodo", "eiusmod" ], "friends": [ { "id": 0, "name": "Karin Wooten" }, { "id": 1, "name": "Wiggins Blankenship" }, { "id": 2, "name": "Marquita Kent" } ], "greeting": "Hello, Mavis Hayden! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f258dd56678cb1b8e", "index": 759, "guid": "bbc305fb-b746-4c99-9dc8-66d753658dca", "isActive": false, "balance": "$1,738.27", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Samantha Ramirez", "gender": "female", "company": "ZIGGLES", "email": "samantharamirez@ziggles.com", "phone": "+1 (952) 442-2043", "address": "132 Grattan Street, Highland, Maine, 5152", "about": "Magna eu dolore ad enim occaecat esse ut cillum occaecat esse amet. Dolor est anim do velit ipsum cillum ea aliqua in in ea sint. Aliquip ex deserunt minim dolore ea culpa sint duis tempor. Incididunt veniam pariatur esse duis exercitation irure dolor laborum irure ad fugiat. Occaecat enim culpa labore fugiat. Esse dolore enim ut sunt ex. Exercitation ea velit nostrud excepteur aliquip eu esse ad.\r\n", "registered": "2014-07-14T23:28:35-12:00", "latitude": 8.454128, "longitude": 152.808975, "tags": [ "veniam", "ut", "sit", "occaecat", "velit", "commodo", "deserunt" ], "friends": [ { "id": 0, "name": "Delores Hardy" }, { "id": 1, "name": "Maribel Ross" }, { "id": 2, "name": "Rosario Wade" } ], "greeting": "Hello, Samantha Ramirez! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f99074decf0b80e07", "index": 760, "guid": "d2933ea4-62fc-4644-b89b-286e108599da", "isActive": false, "balance": "$2,572.78", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Clarke Cunningham", "gender": "male", "company": "EVENTIX", "email": "clarkecunningham@eventix.com", "phone": "+1 (966) 582-3511", "address": "675 Lamont Court, Rivers, Virginia, 6360", "about": "Nostrud laboris aliqua ut quis non ea nulla anim incididunt veniam duis cupidatat. Est dolore occaecat culpa cillum veniam dolore pariatur nostrud cupidatat dolore veniam. Nisi mollit elit pariatur commodo. Aliqua commodo qui veniam dolor enim et incididunt magna officia sunt aute proident. Voluptate dolore enim dolore fugiat officia aute. Excepteur excepteur commodo ullamco deserunt et voluptate nostrud ut nostrud. Mollit adipisicing tempor nulla enim nisi esse pariatur ullamco ullamco labore consequat amet nostrud.\r\n", "registered": "2014-05-14T00:55:59-12:00", "latitude": 67.225645, "longitude": -132.382487, "tags": [ "anim", "reprehenderit", "consequat", "non", "est", "excepteur", "nostrud" ], "friends": [ { "id": 0, "name": "Gayle Noble" }, { "id": 1, "name": "Stewart Montgomery" }, { "id": 2, "name": "Karina Tran" } ], "greeting": "Hello, Clarke Cunningham! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fb58f9d7eb809bb8a", "index": 761, "guid": "7e27548c-b52a-4d0f-aec3-ce3ecab58322", "isActive": false, "balance": "$2,425.15", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Case Valdez", "gender": "male", "company": "COMSTAR", "email": "casevaldez@comstar.com", "phone": "+1 (922) 437-3953", "address": "341 Bethel Loop, Smeltertown, Kentucky, 4808", "about": "Culpa aliquip ipsum ipsum voluptate occaecat ex sit labore irure esse veniam. Exercitation minim aliqua dolore amet officia est. Reprehenderit nostrud Lorem ad et ad velit exercitation eu consequat aliquip. Anim sit do ex ad excepteur consectetur ad. Ad cupidatat aliquip magna eu irure qui qui aliquip eiusmod non.\r\n", "registered": "2014-06-21T21:05:50-12:00", "latitude": -89.678501, "longitude": 109.013025, "tags": [ "officia", "qui", "minim", "adipisicing", "excepteur", "exercitation", "fugiat" ], "friends": [ { "id": 0, "name": "Santana Hebert" }, { "id": 1, "name": "Delaney Simmons" }, { "id": 2, "name": "Guadalupe Fox" } ], "greeting": "Hello, Case Valdez! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fa5482fa7e6b746c5", "index": 762, "guid": "745b8386-2059-423a-a7c0-fefbd2446716", "isActive": true, "balance": "$1,019.02", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Lourdes Mosley", "gender": "female", "company": "ASSISTIA", "email": "lourdesmosley@assistia.com", "phone": "+1 (820) 544-3377", "address": "993 Judge Street, Henrietta, Connecticut, 1532", "about": "Pariatur dolore elit nisi et eiusmod duis qui labore ullamco laborum cillum in dolor. Ullamco sunt officia qui non. Incididunt pariatur pariatur anim eiusmod cupidatat pariatur officia do id do. Aute ullamco reprehenderit aliquip nostrud elit eiusmod et ex laboris irure. Consequat proident reprehenderit excepteur ullamco incididunt veniam cupidatat sint velit cupidatat sit. Pariatur cupidatat culpa culpa deserunt incididunt consequat ut officia esse ad et et aliquip ut. Aliquip dolore fugiat anim laboris irure ad laborum in aliqua non aute.\r\n", "registered": "2014-07-31T04:21:48-12:00", "latitude": -84.852264, "longitude": 85.524792, "tags": [ "incididunt", "mollit", "eiusmod", "et", "aliqua", "et", "mollit" ], "friends": [ { "id": 0, "name": "Kellie Cole" }, { "id": 1, "name": "Lawrence Waters" }, { "id": 2, "name": "Barker Vega" } ], "greeting": "Hello, Lourdes Mosley! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f04e93cb47e381e11", "index": 763, "guid": "21fa02ad-497f-429b-bef1-b52a4a8e22bc", "isActive": true, "balance": "$2,700.89", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Elaine Madden", "gender": "female", "company": "RAMEON", "email": "elainemadden@rameon.com", "phone": "+1 (962) 549-2638", "address": "931 Metrotech Courtr, Cloverdale, Mississippi, 8932", "about": "Magna sunt nulla labore cillum proident laboris laboris minim ex mollit tempor. Consectetur anim ipsum nostrud sint cillum veniam minim ex consequat ea duis Lorem occaecat adipisicing. Consectetur reprehenderit aliqua culpa ad est eiusmod ut. Do consectetur sunt et ut reprehenderit incididunt ut quis ut eiusmod nulla. Incididunt enim reprehenderit qui ullamco elit qui.\r\n", "registered": "2014-05-10T06:08:59-12:00", "latitude": 46.162323, "longitude": 118.14271, "tags": [ "est", "qui", "deserunt", "esse", "adipisicing", "sint", "esse" ], "friends": [ { "id": 0, "name": "Snyder Bradford" }, { "id": 1, "name": "Henrietta Slater" }, { "id": 2, "name": "Stephenson Maddox" } ], "greeting": "Hello, Elaine Madden! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ff31a47b267290df6", "index": 764, "guid": "21f63566-64d8-4d0f-b882-3c81d9ab29da", "isActive": false, "balance": "$2,745.73", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Leanna Ward", "gender": "female", "company": "MAGMINA", "email": "leannaward@magmina.com", "phone": "+1 (929) 415-2536", "address": "148 Lewis Avenue, Faxon, Washington, 4065", "about": "Ad aliqua pariatur proident ullamco et reprehenderit magna veniam nisi non pariatur ipsum. Amet id non eiusmod ex irure esse tempor. Deserunt dolor anim dolore amet elit sint. Quis magna enim nulla elit. Aliqua est pariatur do consequat tempor irure ea adipisicing sit veniam amet cillum ea. Nisi mollit excepteur enim occaecat tempor aliquip aute amet magna. Consequat proident deserunt duis est laboris ullamco nostrud eu labore ipsum pariatur deserunt.\r\n", "registered": "2014-01-27T10:44:44-13:00", "latitude": 58.892051, "longitude": 104.387601, "tags": [ "deserunt", "laborum", "sit", "anim", "velit", "et", "cillum" ], "friends": [ { "id": 0, "name": "Branch Rice" }, { "id": 1, "name": "Bianca Hendricks" }, { "id": 2, "name": "Mckee Morse" } ], "greeting": "Hello, Leanna Ward! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fab2c50bb97f3ba9a", "index": 765, "guid": "3ba70ff6-aaf9-46c1-acd1-5df004ea2505", "isActive": false, "balance": "$3,700.05", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Holden James", "gender": "male", "company": "PYRAMIA", "email": "holdenjames@pyramia.com", "phone": "+1 (887) 498-3835", "address": "668 Bay Parkway, Fruitdale, Tennessee, 4908", "about": "Magna eiusmod dolor veniam cillum mollit ut exercitation commodo. Cillum sit aute minim Lorem deserunt esse. Lorem irure aliquip laborum est excepteur Lorem pariatur nostrud laborum cupidatat nulla. Consequat magna quis sit veniam ad cupidatat veniam ipsum mollit pariatur. Laborum magna proident consectetur culpa officia pariatur ut nostrud cupidatat. Ex eu occaecat anim ea commodo id cupidatat ex laborum est reprehenderit cupidatat laborum velit.\r\n", "registered": "2014-07-29T01:14:25-12:00", "latitude": 19.638317, "longitude": -68.409043, "tags": [ "cupidatat", "ea", "enim", "dolor", "aliquip", "anim", "eu" ], "friends": [ { "id": 0, "name": "Morales Griffith" }, { "id": 1, "name": "Bridget Webb" }, { "id": 2, "name": "Middleton Kirk" } ], "greeting": "Hello, Holden James! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f42eba53d23ebfdee", "index": 766, "guid": "0f504cd1-a80c-4c3d-a8a7-771475de19f7", "isActive": false, "balance": "$2,099.33", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Bobbi Rutledge", "gender": "female", "company": "QUONATA", "email": "bobbirutledge@quonata.com", "phone": "+1 (910) 598-2270", "address": "836 Lincoln Avenue, Munjor, Alabama, 2345", "about": "Anim cillum tempor velit magna ipsum consectetur deserunt et commodo irure Lorem. Labore veniam occaecat duis id. Consectetur ipsum dolore occaecat non. Dolore enim commodo non adipisicing commodo in tempor aliquip elit velit nulla excepteur. Elit duis dolor amet tempor do commodo eiusmod. Quis reprehenderit incididunt cupidatat deserunt sunt sunt magna laboris. Sit reprehenderit in excepteur duis anim magna laboris labore eu.\r\n", "registered": "2014-05-05T23:18:12-12:00", "latitude": 76.617109, "longitude": -27.879909, "tags": [ "excepteur", "duis", "aliqua", "eu", "eu", "sit", "eiusmod" ], "friends": [ { "id": 0, "name": "Garcia Baker" }, { "id": 1, "name": "Tate Daniels" }, { "id": 2, "name": "Evangelina Wright" } ], "greeting": "Hello, Bobbi Rutledge! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fbf5a9fbfe6bd392b", "index": 767, "guid": "1eeee823-ede8-4b93-8359-aaf1f5905091", "isActive": false, "balance": "$2,905.38", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Morrow Patel", "gender": "male", "company": "GOLISTIC", "email": "morrowpatel@golistic.com", "phone": "+1 (955) 479-2436", "address": "301 Milford Street, Valmy, Ohio, 4126", "about": "Cupidatat nostrud magna do ullamco in proident duis. Ad cupidatat veniam minim irure. Nulla et labore aute laborum incididunt ex id ut non eu cillum. Eu minim qui occaecat ea culpa. Irure ea irure incididunt cupidatat laborum duis et ex. Ipsum ex nulla veniam incididunt et nulla id et ut. In irure ipsum commodo dolore officia non fugiat et ipsum commodo.\r\n", "registered": "2014-06-22T16:31:54-12:00", "latitude": 18.979069, "longitude": -52.526946, "tags": [ "duis", "aliqua", "cillum", "laborum", "dolore", "consequat", "anim" ], "friends": [ { "id": 0, "name": "Silva Cook" }, { "id": 1, "name": "Sara Bullock" }, { "id": 2, "name": "Rutledge Nicholson" } ], "greeting": "Hello, Morrow Patel! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fa1f75b62d366cf2c", "index": 768, "guid": "e9f02d93-014d-403e-ad2e-d0273b80999d", "isActive": false, "balance": "$1,353.07", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Marietta Grimes", "gender": "female", "company": "INCUBUS", "email": "mariettagrimes@incubus.com", "phone": "+1 (879) 526-2652", "address": "988 Veterans Avenue, Brantleyville, Hawaii, 1475", "about": "Ex elit aliquip veniam est ipsum ad ad. Quis voluptate eu velit officia. In labore irure laboris mollit adipisicing aute anim tempor. Incididunt cillum ex id in commodo ipsum proident commodo velit enim dolore incididunt cillum. Adipisicing adipisicing nisi veniam et dolor laboris laboris id Lorem do cupidatat aliquip nulla. Proident aute fugiat et proident dolor fugiat incididunt deserunt.\r\n", "registered": "2014-06-05T08:40:44-12:00", "latitude": 78.397193, "longitude": -132.369822, "tags": [ "mollit", "ullamco", "mollit", "et", "laboris", "culpa", "consectetur" ], "friends": [ { "id": 0, "name": "Morris Olsen" }, { "id": 1, "name": "Hewitt Ramsey" }, { "id": 2, "name": "Morin Barrera" } ], "greeting": "Hello, Marietta Grimes! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ffcf570de291256ad", "index": 769, "guid": "66e1d886-3687-4b98-a259-ab2ddf1b976d", "isActive": true, "balance": "$3,664.46", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Gill Moses", "gender": "male", "company": "ENDIPIN", "email": "gillmoses@endipin.com", "phone": "+1 (834) 443-2785", "address": "616 Aitken Place, Northridge, New Mexico, 8397", "about": "Exercitation enim aute cupidatat sunt nisi anim deserunt ad magna cupidatat irure et ullamco id. Dolor excepteur sint commodo laboris esse aliquip excepteur eiusmod veniam id. Sint do enim fugiat aliqua qui consectetur est. In fugiat adipisicing id enim mollit velit ea. Consequat nisi ut nulla est ex eiusmod irure ullamco ex non nostrud.\r\n", "registered": "2014-07-01T15:10:38-12:00", "latitude": 63.872332, "longitude": 86.165153, "tags": [ "anim", "enim", "consectetur", "officia", "labore", "eiusmod", "commodo" ], "friends": [ { "id": 0, "name": "Dalton Huff" }, { "id": 1, "name": "Walter Mcintyre" }, { "id": 2, "name": "Christy Hicks" } ], "greeting": "Hello, Gill Moses! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fb1cec657f1974e0f", "index": 770, "guid": "127573be-4a6f-4b6c-a8ec-df51528e47a8", "isActive": true, "balance": "$3,942.39", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Madeleine Carlson", "gender": "female", "company": "GAPTEC", "email": "madeleinecarlson@gaptec.com", "phone": "+1 (932) 456-2526", "address": "707 Harwood Place, Cornfields, Maryland, 1818", "about": "Deserunt quis enim deserunt Lorem. Incididunt laborum dolor eiusmod sint occaecat proident culpa ad cupidatat eiusmod consectetur do ex. Ea ea ut eu reprehenderit adipisicing laboris ad do voluptate aute irure amet excepteur ullamco. Nostrud nostrud incididunt id ipsum consectetur minim minim minim reprehenderit non.\r\n", "registered": "2014-03-10T20:46:51-13:00", "latitude": -36.083548, "longitude": -41.58078, "tags": [ "sit", "ea", "enim", "est", "Lorem", "velit", "proident" ], "friends": [ { "id": 0, "name": "Chrystal Ayers" }, { "id": 1, "name": "Dunlap Leach" }, { "id": 2, "name": "Roxanne Lyons" } ], "greeting": "Hello, Madeleine Carlson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f3e8e68c866dbe326", "index": 771, "guid": "d9f98664-8a82-4ad1-bc4b-4bfdc3e4ab21", "isActive": true, "balance": "$2,715.87", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Juliana Robles", "gender": "female", "company": "COGENTRY", "email": "julianarobles@cogentry.com", "phone": "+1 (846) 440-3577", "address": "705 Brooklyn Avenue, Gratton, Alaska, 1963", "about": "Et in aliqua culpa enim ut laborum qui exercitation. Sunt proident reprehenderit sint mollit velit dolore pariatur. Magna anim eu pariatur et mollit sint esse nisi. Do laborum occaecat commodo elit. Esse aliqua amet quis elit exercitation excepteur sit enim laborum. Ut eiusmod dolor laboris do dolore.\r\n", "registered": "2014-09-07T02:20:27-12:00", "latitude": 24.483635, "longitude": -108.981926, "tags": [ "qui", "Lorem", "dolore", "occaecat", "consectetur", "voluptate", "consequat" ], "friends": [ { "id": 0, "name": "Reyes Curry" }, { "id": 1, "name": "Vaughn Marquez" }, { "id": 2, "name": "Kirkland Acevedo" } ], "greeting": "Hello, Juliana Robles! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f4b50bc50405d6f70", "index": 772, "guid": "76a3b2bc-3ee8-4cbf-a1d5-99f961429d3e", "isActive": false, "balance": "$1,632.12", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Benson Reeves", "gender": "male", "company": "TRASOLA", "email": "bensonreeves@trasola.com", "phone": "+1 (945) 493-3994", "address": "973 Olive Street, Edinburg, Arizona, 4616", "about": "Quis consectetur laboris occaecat id et nulla irure eu. Esse sit incididunt ipsum fugiat aute aute nostrud pariatur ut nisi et. Non exercitation do dolor amet pariatur labore.\r\n", "registered": "2014-05-20T16:44:17-12:00", "latitude": 28.755805, "longitude": 55.278032, "tags": [ "id", "deserunt", "pariatur", "ipsum", "ea", "sunt", "adipisicing" ], "friends": [ { "id": 0, "name": "Tracey Irwin" }, { "id": 1, "name": "Chandler Terrell" }, { "id": 2, "name": "Melanie Schmidt" } ], "greeting": "Hello, Benson Reeves! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ffaf2610dab0b26ac", "index": 773, "guid": "6bee7aef-fa75-48d2-a526-2e95e2ab9154", "isActive": true, "balance": "$1,127.36", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Geraldine Delaney", "gender": "female", "company": "VORTEXACO", "email": "geraldinedelaney@vortexaco.com", "phone": "+1 (940) 522-3495", "address": "213 Johnson Street, Olney, Federated States Of Micronesia, 4437", "about": "Id anim consequat ut eu. Et ut excepteur ea id sint deserunt irure voluptate in. Elit deserunt aute ullamco incididunt fugiat enim id exercitation. Do sit aute cupidatat aute aliqua amet deserunt excepteur consectetur quis.\r\n", "registered": "2014-06-01T16:27:26-12:00", "latitude": -51.815037, "longitude": -47.363215, "tags": [ "dolore", "in", "reprehenderit", "labore", "officia", "reprehenderit", "cillum" ], "friends": [ { "id": 0, "name": "Patrica Wyatt" }, { "id": 1, "name": "Bass Lindsey" }, { "id": 2, "name": "Thelma Head" } ], "greeting": "Hello, Geraldine Delaney! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fff3ca8223ce1a31a", "index": 774, "guid": "7ea12835-a5c3-4773-bd66-6a275ef566ba", "isActive": true, "balance": "$3,087.14", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Bender Morrison", "gender": "male", "company": "QUAILCOM", "email": "bendermorrison@quailcom.com", "phone": "+1 (925) 411-3358", "address": "649 Hutchinson Court, Elliston, Oklahoma, 3616", "about": "Aliquip culpa id aute elit sit voluptate duis sint qui pariatur nostrud exercitation. Ad elit minim proident excepteur consequat enim ut consectetur. Velit Lorem mollit tempor velit elit voluptate ex dolor mollit. Lorem labore dolor est voluptate ad non sunt incididunt sit veniam pariatur ullamco voluptate officia. Aliquip in voluptate velit in nostrud magna nostrud do ullamco.\r\n", "registered": "2014-05-23T04:28:12-12:00", "latitude": 82.339006, "longitude": -96.94772, "tags": [ "proident", "proident", "exercitation", "quis", "deserunt", "consequat", "id" ], "friends": [ { "id": 0, "name": "Dixie Crawford" }, { "id": 1, "name": "York Espinoza" }, { "id": 2, "name": "Graves Sullivan" } ], "greeting": "Hello, Bender Morrison! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f3611d76332c5af1f", "index": 775, "guid": "9b085b64-25c0-44e7-936c-8c9589da1e97", "isActive": false, "balance": "$1,719.98", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Atkinson Day", "gender": "male", "company": "EMOLTRA", "email": "atkinsonday@emoltra.com", "phone": "+1 (929) 562-2934", "address": "623 Murdock Court, Tolu, Michigan, 5728", "about": "Fugiat pariatur ipsum quis deserunt duis eiusmod voluptate minim pariatur. Sit qui reprehenderit pariatur amet non minim commodo culpa cillum. Nostrud ea ad ut incididunt dolor eu in duis eu qui laborum eu dolor cupidatat.\r\n", "registered": "2014-08-05T17:29:01-12:00", "latitude": -2.155487, "longitude": 126.27556, "tags": [ "velit", "laborum", "esse", "sint", "consectetur", "excepteur", "irure" ], "friends": [ { "id": 0, "name": "Chapman Harmon" }, { "id": 1, "name": "Agnes English" }, { "id": 2, "name": "Anne Buckley" } ], "greeting": "Hello, Atkinson Day! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fdfa8d79d18b06da6", "index": 776, "guid": "da609901-b3b0-4543-acd3-bcfbc40cafc4", "isActive": false, "balance": "$2,165.22", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Gay Haley", "gender": "female", "company": "DAIDO", "email": "gayhaley@daido.com", "phone": "+1 (811) 490-2838", "address": "959 Bennet Court, Inkerman, Kansas, 7047", "about": "Pariatur et dolor quis amet nulla est aliqua est. Cupidatat consectetur reprehenderit duis dolore labore elit laborum occaecat. Duis ad excepteur Lorem id ex. Pariatur aliquip proident ex ad consectetur elit exercitation cillum veniam quis nulla laborum aute ipsum. Sunt excepteur laboris anim ullamco non laboris aliqua veniam labore Lorem est in commodo dolore. Est anim elit ullamco dolor laboris Lorem tempor magna ut. Excepteur magna minim elit incididunt amet incididunt pariatur et cillum fugiat officia eiusmod aliquip qui.\r\n", "registered": "2014-06-10T04:19:15-12:00", "latitude": -28.030316, "longitude": 177.087668, "tags": [ "aliqua", "irure", "eiusmod", "do", "minim", "ad", "et" ], "friends": [ { "id": 0, "name": "Annabelle Mullen" }, { "id": 1, "name": "English Bray" }, { "id": 2, "name": "Ruby Gay" } ], "greeting": "Hello, Gay Haley! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f434e71ec8e5e804b", "index": 777, "guid": "4c666376-624c-4066-aeb4-de2ec051bd09", "isActive": false, "balance": "$2,423.78", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Elva Pitts", "gender": "female", "company": "DOGSPA", "email": "elvapitts@dogspa.com", "phone": "+1 (827) 517-2754", "address": "217 Heath Place, Singer, South Dakota, 2391", "about": "Est reprehenderit in proident commodo. Labore nulla deserunt ullamco est elit consequat ipsum et incididunt culpa ad culpa. Aliqua ex excepteur aute dolor magna id quis nisi duis ea nisi. Fugiat in reprehenderit nisi nulla sunt in cillum esse dolor. Qui minim velit minim ullamco amet ut magna tempor voluptate reprehenderit consectetur aliqua in voluptate.\r\n", "registered": "2014-06-14T08:11:20-12:00", "latitude": 44.45657, "longitude": 77.539605, "tags": [ "eiusmod", "adipisicing", "adipisicing", "quis", "aliquip", "officia", "pariatur" ], "friends": [ { "id": 0, "name": "Esperanza Vance" }, { "id": 1, "name": "Horn Kidd" }, { "id": 2, "name": "Murphy Bridges" } ], "greeting": "Hello, Elva Pitts! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ff53a3108c698c83d", "index": 778, "guid": "8f564d14-4cc5-452b-b90e-201251b52664", "isActive": true, "balance": "$3,283.26", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Christi Alford", "gender": "female", "company": "COMCUR", "email": "christialford@comcur.com", "phone": "+1 (903) 487-2379", "address": "868 Clifford Place, Islandia, West Virginia, 930", "about": "Consectetur mollit amet velit eu laboris magna fugiat do. Id quis mollit cupidatat consectetur laborum tempor nisi nostrud velit enim. Est ipsum occaecat voluptate amet sint deserunt ad in enim minim adipisicing et elit fugiat. Dolore minim nulla ut exercitation labore quis. Anim consectetur veniam reprehenderit duis commodo non dolor sit culpa ex in nostrud ad non. Laboris velit cupidatat et et quis commodo nostrud.\r\n", "registered": "2014-06-19T04:52:11-12:00", "latitude": 86.442445, "longitude": 115.883144, "tags": [ "irure", "do", "cupidatat", "ea", "adipisicing", "irure", "velit" ], "friends": [ { "id": 0, "name": "Debra Riley" }, { "id": 1, "name": "Valarie Brennan" }, { "id": 2, "name": "Melinda Austin" } ], "greeting": "Hello, Christi Alford! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f7c50642563535ed4", "index": 779, "guid": "9cb802e7-7ed7-4d94-b487-a195b04fe27b", "isActive": true, "balance": "$1,784.26", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Prince Oneil", "gender": "male", "company": "BUZZOPIA", "email": "princeoneil@buzzopia.com", "phone": "+1 (881) 470-3974", "address": "127 Milton Street, Succasunna, Texas, 769", "about": "In deserunt aliqua aliquip excepteur voluptate ut et aliquip nulla anim id deserunt. Incididunt occaecat et excepteur pariatur et anim est aliqua eu elit. Irure aliquip laborum tempor aliquip tempor dolor commodo consequat ut excepteur deserunt voluptate nostrud. Occaecat nulla officia amet sint tempor proident nostrud exercitation dolore. Ex consectetur aute aliqua officia non consequat consequat mollit consectetur dolor. Culpa incididunt est reprehenderit est incididunt ex commodo sit pariatur duis.\r\n", "registered": "2014-04-02T18:25:57-13:00", "latitude": -44.177576, "longitude": 77.268417, "tags": [ "in", "non", "reprehenderit", "ullamco", "sunt", "elit", "esse" ], "friends": [ { "id": 0, "name": "Simpson Richard" }, { "id": 1, "name": "Margaret Casey" }, { "id": 2, "name": "Petersen Figueroa" } ], "greeting": "Hello, Prince Oneil! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f41bf4d1233bc51fe", "index": 780, "guid": "ba7a9a6a-9ddb-43ee-a77d-5fa6c0fec278", "isActive": false, "balance": "$2,343.10", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Adrienne Gallagher", "gender": "female", "company": "INRT", "email": "adriennegallagher@inrt.com", "phone": "+1 (851) 500-3879", "address": "564 Irving Avenue, Bainbridge, Oregon, 4070", "about": "Deserunt minim ullamco occaecat ex eu tempor aute laborum. Duis tempor est ad ea. Adipisicing id do adipisicing eiusmod cillum. Duis ad consectetur excepteur adipisicing elit velit dolore pariatur do non. Do veniam velit nulla consequat esse magna irure consequat duis laboris ut dolore commodo amet. Magna magna voluptate aliqua cupidatat exercitation laborum enim ut fugiat esse enim voluptate ex.\r\n", "registered": "2014-06-10T11:26:43-12:00", "latitude": 67.00586, "longitude": 127.854452, "tags": [ "esse", "elit", "sunt", "laboris", "irure", "non", "consectetur" ], "friends": [ { "id": 0, "name": "Bonner Copeland" }, { "id": 1, "name": "Angelia Gould" }, { "id": 2, "name": "Kathrine Sellers" } ], "greeting": "Hello, Adrienne Gallagher! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f281f35b28c7a06e8", "index": 781, "guid": "ec7eca58-c13a-467b-8457-c86a78f57e90", "isActive": true, "balance": "$3,826.31", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Essie Long", "gender": "female", "company": "ATGEN", "email": "essielong@atgen.com", "phone": "+1 (953) 468-3368", "address": "169 Micieli Place, Cliffside, Nevada, 489", "about": "Dolore cupidatat sint irure eiusmod. Ut nulla eiusmod sit proident laborum aliqua proident mollit aliquip deserunt cupidatat. Irure non esse sunt magna nulla ut ea. Culpa eiusmod Lorem non adipisicing. Ad nostrud duis enim magna irure elit.\r\n", "registered": "2014-03-12T01:25:31-13:00", "latitude": -9.630776, "longitude": 85.776058, "tags": [ "exercitation", "et", "cupidatat", "ut", "adipisicing", "ea", "officia" ], "friends": [ { "id": 0, "name": "Lauri Barnett" }, { "id": 1, "name": "Patrice Morin" }, { "id": 2, "name": "Stephens Scott" } ], "greeting": "Hello, Essie Long! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f081fc0cacbb6dbb5", "index": 782, "guid": "97f3ba23-8486-440d-ae1a-bd8f3ef73c5d", "isActive": false, "balance": "$3,838.58", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Shelia Prince", "gender": "female", "company": "COMTREK", "email": "sheliaprince@comtrek.com", "phone": "+1 (908) 452-3621", "address": "804 Crawford Avenue, Germanton, Minnesota, 3677", "about": "Exercitation ullamco quis aliquip sint. Reprehenderit officia commodo laborum elit proident minim eu deserunt quis fugiat laborum aliquip culpa laborum. Qui eiusmod ea aute ipsum adipisicing nostrud labore labore nostrud. Ad labore excepteur exercitation ex et. Eu commodo aliqua deserunt do velit duis occaecat aliqua nisi aliquip id. Reprehenderit occaecat velit labore in laborum laboris amet et. Velit irure do veniam do et aliquip duis ex irure officia velit eu Lorem.\r\n", "registered": "2014-01-27T00:31:09-13:00", "latitude": 30.018563, "longitude": 105.549086, "tags": [ "ad", "excepteur", "culpa", "enim", "laborum", "consequat", "sint" ], "friends": [ { "id": 0, "name": "Cleo Ryan" }, { "id": 1, "name": "Lelia Knox" }, { "id": 2, "name": "Higgins Yang" } ], "greeting": "Hello, Shelia Prince! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f673abdd44c34161a", "index": 783, "guid": "9ec1d1ed-81dc-4368-b5c3-3b05915192d0", "isActive": false, "balance": "$2,139.46", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Mays Baldwin", "gender": "male", "company": "TSUNAMIA", "email": "maysbaldwin@tsunamia.com", "phone": "+1 (805) 469-2618", "address": "515 Gerald Court, Seymour, Missouri, 2075", "about": "Laboris deserunt id id qui. Veniam do mollit officia aliquip est in adipisicing pariatur anim enim. Eiusmod id do ex id deserunt est enim mollit proident ex velit aliqua consequat.\r\n", "registered": "2014-07-29T19:11:58-12:00", "latitude": 84.937513, "longitude": -155.153848, "tags": [ "et", "Lorem", "ullamco", "fugiat", "adipisicing", "est", "culpa" ], "friends": [ { "id": 0, "name": "Sonya Hall" }, { "id": 1, "name": "Ava Joyner" }, { "id": 2, "name": "Christie Goodwin" } ], "greeting": "Hello, Mays Baldwin! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f998a6bbd14cd41f0", "index": 784, "guid": "bcf51fac-9e3b-481e-9745-f18ff4b7e315", "isActive": false, "balance": "$2,954.33", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Phillips Munoz", "gender": "male", "company": "ANACHO", "email": "phillipsmunoz@anacho.com", "phone": "+1 (850) 437-3192", "address": "271 Reed Street, Franklin, Rhode Island, 4033", "about": "Fugiat cupidatat tempor laboris nostrud minim voluptate elit sint aute quis exercitation elit. Dolore reprehenderit Lorem commodo mollit aute minim do id culpa dolor ex consequat. Irure ex in nisi est elit. Culpa adipisicing duis amet cillum esse et occaecat sint id dolore sint. Occaecat in labore laboris laborum ea ex aute irure nisi.\r\n", "registered": "2014-02-05T19:41:11-13:00", "latitude": 18.251832, "longitude": -64.046819, "tags": [ "laboris", "tempor", "veniam", "veniam", "nulla", "qui", "exercitation" ], "friends": [ { "id": 0, "name": "Mallory Bush" }, { "id": 1, "name": "Kristen Ramos" }, { "id": 2, "name": "Bell Wagner" } ], "greeting": "Hello, Phillips Munoz! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f9fce87192ffc6dff", "index": 785, "guid": "2543cc19-b4a0-4c68-bd2d-ff76f3e4045c", "isActive": false, "balance": "$2,306.99", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Pauline Sandoval", "gender": "female", "company": "PAPRICUT", "email": "paulinesandoval@papricut.com", "phone": "+1 (813) 464-2554", "address": "136 Hinsdale Street, Richville, Florida, 8654", "about": "Pariatur cupidatat fugiat sunt veniam est. Labore eiusmod quis do consequat labore deserunt ad quis duis minim adipisicing Lorem tempor. Ullamco enim quis elit excepteur quis labore tempor anim ut ipsum. Do sit do esse magna adipisicing ad aliquip do nulla aute pariatur aliquip. Deserunt aliqua est elit tempor occaecat laboris elit reprehenderit anim fugiat ut velit. Officia incididunt eu Lorem nisi qui fugiat in nisi.\r\n", "registered": "2014-04-01T14:36:59-13:00", "latitude": 22.968196, "longitude": -136.747576, "tags": [ "esse", "deserunt", "non", "cillum", "culpa", "cillum", "mollit" ], "friends": [ { "id": 0, "name": "Thomas Bentley" }, { "id": 1, "name": "Diane Skinner" }, { "id": 2, "name": "Cantu Sharpe" } ], "greeting": "Hello, Pauline Sandoval! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f3e87495ca52bea60", "index": 786, "guid": "4c2205f9-ffb5-489b-8ca2-bd8ae42dcd1c", "isActive": false, "balance": "$1,351.25", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Alyson Hull", "gender": "female", "company": "MEGALL", "email": "alysonhull@megall.com", "phone": "+1 (899) 593-3903", "address": "423 Chester Street, Bluffview, North Carolina, 6377", "about": "Non labore consequat excepteur consequat non consectetur irure amet eiusmod anim nulla veniam ut eu. Aliqua occaecat ullamco do dolor amet enim laborum. Lorem in fugiat consectetur enim Lorem pariatur consectetur irure minim veniam ut sunt. Ea veniam qui laborum enim ad. Pariatur non quis sit voluptate consectetur consequat in esse ex enim occaecat fugiat pariatur. Dolor elit eiusmod minim ad officia eiusmod eu consequat ad ea duis.\r\n", "registered": "2014-04-04T19:46:03-13:00", "latitude": 21.923192, "longitude": 140.984396, "tags": [ "nisi", "id", "est", "nostrud", "non", "laboris", "culpa" ], "friends": [ { "id": 0, "name": "Kris Carney" }, { "id": 1, "name": "Evelyn Heath" }, { "id": 2, "name": "Natalie Ortega" } ], "greeting": "Hello, Alyson Hull! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fe0ab2f7af9522d52", "index": 787, "guid": "7c55e74a-79a0-40a4-8982-77c47373d2d0", "isActive": false, "balance": "$3,363.49", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Bobbie Charles", "gender": "female", "company": "EXOSPACE", "email": "bobbiecharles@exospace.com", "phone": "+1 (926) 491-3156", "address": "535 Summit Street, Grandview, New Hampshire, 8972", "about": "Nostrud id nostrud eu eiusmod. Nostrud pariatur eiusmod voluptate officia deserunt nostrud duis dolore. Irure officia anim non Lorem amet aliquip. Nisi irure pariatur magna id. In sint nulla officia nulla sit officia occaecat.\r\n", "registered": "2014-08-29T04:04:09-12:00", "latitude": 53.967691, "longitude": -49.693549, "tags": [ "cupidatat", "nulla", "occaecat", "consequat", "excepteur", "incididunt", "ullamco" ], "friends": [ { "id": 0, "name": "Neal Hill" }, { "id": 1, "name": "Thompson Thompson" }, { "id": 2, "name": "Romero Huffman" } ], "greeting": "Hello, Bobbie Charles! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f84524e0e9c05c5db", "index": 788, "guid": "fc4df97c-ae6a-4b47-98cb-95cf0b4fdfe5", "isActive": true, "balance": "$1,278.31", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Brooke Bishop", "gender": "female", "company": "BEDDER", "email": "brookebishop@bedder.com", "phone": "+1 (881) 484-3442", "address": "736 Prince Street, Hatteras, Arkansas, 8225", "about": "Dolor id consectetur velit aute nisi. Irure dolore nulla ut ea consequat. Incididunt incididunt exercitation officia officia fugiat fugiat. Consectetur aute et adipisicing est eiusmod. Ut duis consequat pariatur labore officia ex. Occaecat eu aliqua dolor Lorem esse ut Lorem pariatur sunt nostrud.\r\n", "registered": "2014-03-22T16:32:34-13:00", "latitude": 24.007641, "longitude": 1.856247, "tags": [ "magna", "adipisicing", "non", "eiusmod", "excepteur", "nostrud", "ex" ], "friends": [ { "id": 0, "name": "Rosalinda Jimenez" }, { "id": 1, "name": "Shawn Morris" }, { "id": 2, "name": "Banks Gentry" } ], "greeting": "Hello, Brooke Bishop! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f85e513da60a74deb", "index": 789, "guid": "e7aa4653-5436-4e4b-99db-e7dadaa6ee17", "isActive": true, "balance": "$1,529.87", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Sellers Estes", "gender": "male", "company": "NSPIRE", "email": "sellersestes@nspire.com", "phone": "+1 (938) 519-3987", "address": "933 Cozine Avenue, Marienthal, Iowa, 4480", "about": "Aute occaecat minim laborum nulla magna proident ullamco eiusmod quis non nisi ipsum consequat est. Fugiat aute cillum sit mollit ad incididunt. Reprehenderit mollit laborum exercitation veniam eiusmod nisi dolor deserunt. Ut laborum cillum amet ut adipisicing id ad enim in commodo cupidatat. Excepteur qui aliqua excepteur commodo duis velit magna ea dolor. Ut adipisicing aliqua tempor officia ad culpa do.\r\n", "registered": "2014-01-23T12:15:29-13:00", "latitude": -72.814884, "longitude": -55.567329, "tags": [ "ut", "ea", "consequat", "eiusmod", "aute", "nisi", "voluptate" ], "friends": [ { "id": 0, "name": "Nelda Tate" }, { "id": 1, "name": "Sallie Tyson" }, { "id": 2, "name": "Lucille Stanton" } ], "greeting": "Hello, Sellers Estes! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ff8b861c8fad5e6e4", "index": 790, "guid": "8584c456-9382-48db-8fa2-c7ae1825419e", "isActive": false, "balance": "$3,014.38", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Pate Pope", "gender": "male", "company": "GEEKOSIS", "email": "patepope@geekosis.com", "phone": "+1 (979) 581-2418", "address": "241 Dupont Street, Rosewood, Nebraska, 8491", "about": "Aliquip aliquip cupidatat ad aute et amet officia nisi ipsum commodo anim. Id aliquip proident sint labore anim non eiusmod id nulla officia. Voluptate ad voluptate deserunt ad laborum cillum veniam excepteur tempor magna et. Ad laborum magna dolor veniam consequat veniam. Est fugiat irure ad excepteur sint. Dolore voluptate ad fugiat dolore anim. Consequat deserunt enim qui aliquip cupidatat enim ad.\r\n", "registered": "2014-06-07T06:17:09-12:00", "latitude": 26.173735, "longitude": 27.923539, "tags": [ "ut", "quis", "officia", "incididunt", "qui", "ex", "magna" ], "friends": [ { "id": 0, "name": "Stevenson Galloway" }, { "id": 1, "name": "Odonnell Compton" }, { "id": 2, "name": "Florence Morgan" } ], "greeting": "Hello, Pate Pope! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f67544daa09452ff4", "index": 791, "guid": "5183d25e-e3cf-4182-a523-935707f0b97e", "isActive": false, "balance": "$3,106.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Luann Meadows", "gender": "female", "company": "COASH", "email": "luannmeadows@coash.com", "phone": "+1 (922) 456-3525", "address": "647 Caton Avenue, Sharon, District Of Columbia, 4638", "about": "Incididunt duis mollit esse nulla ut do. Dolore quis eu cillum nulla consequat culpa cupidatat ut dolor amet tempor esse cupidatat. Do et consectetur proident adipisicing laborum aliqua laboris incididunt amet id velit voluptate ex eiusmod. Sit culpa sint officia enim fugiat ut eu.\r\n", "registered": "2014-06-28T08:29:32-12:00", "latitude": -53.563046, "longitude": -156.797268, "tags": [ "incididunt", "sit", "ipsum", "sint", "aliquip", "nostrud", "proident" ], "friends": [ { "id": 0, "name": "Helen Paul" }, { "id": 1, "name": "Lakisha Browning" }, { "id": 2, "name": "Mosley Knapp" } ], "greeting": "Hello, Luann Meadows! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f86e0eea03a10a0e2", "index": 792, "guid": "4d2cf219-f7db-4fb3-97c4-09d10351bf52", "isActive": false, "balance": "$2,108.70", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Jami Santos", "gender": "female", "company": "REPETWIRE", "email": "jamisantos@repetwire.com", "phone": "+1 (814) 586-2661", "address": "581 Eldert Street, Konterra, New Jersey, 4130", "about": "Nulla exercitation sunt minim labore fugiat laborum enim ullamco. Ad voluptate id aliquip nisi irure fugiat elit dolore quis est deserunt occaecat quis id. Aliquip amet non nulla commodo culpa quis adipisicing officia amet. Laborum minim tempor dolor anim adipisicing fugiat laboris culpa magna. Velit proident deserunt irure fugiat. Lorem cupidatat elit dolor ea anim non laborum non eu reprehenderit incididunt cillum.\r\n", "registered": "2014-08-31T02:24:37-12:00", "latitude": -27.990434, "longitude": 173.304567, "tags": [ "deserunt", "dolore", "sunt", "nulla", "aliqua", "non", "velit" ], "friends": [ { "id": 0, "name": "Janice Frank" }, { "id": 1, "name": "Cox Bird" }, { "id": 2, "name": "Fields Bryan" } ], "greeting": "Hello, Jami Santos! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f859e4182b4e3f3d9", "index": 793, "guid": "aa7ddc1e-a529-41ef-8116-bffec82332ce", "isActive": false, "balance": "$2,728.66", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Darlene Joyce", "gender": "female", "company": "ZOGAK", "email": "darlenejoyce@zogak.com", "phone": "+1 (815) 491-2218", "address": "952 Revere Place, Waterview, Palau, 9918", "about": "Occaecat deserunt amet ad velit. Exercitation sunt pariatur adipisicing dolor. Adipisicing quis proident consequat ea nulla ipsum occaecat mollit velit culpa sit ex fugiat aliqua. Quis dolore labore veniam et minim quis mollit commodo.\r\n", "registered": "2014-08-21T08:54:58-12:00", "latitude": -59.219842, "longitude": 87.840279, "tags": [ "ut", "et", "ex", "dolore", "dolor", "irure", "nisi" ], "friends": [ { "id": 0, "name": "Mckinney Wilcox" }, { "id": 1, "name": "Tabatha Dawson" }, { "id": 2, "name": "Spence Glover" } ], "greeting": "Hello, Darlene Joyce! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f2f83a6cbe2d58398", "index": 794, "guid": "aece9460-4a0b-43be-915f-adb45ca72e6c", "isActive": true, "balance": "$1,921.12", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Hooper Mcknight", "gender": "male", "company": "PHEAST", "email": "hoopermcknight@pheast.com", "phone": "+1 (946) 475-2693", "address": "378 Wilson Street, Rockingham, Puerto Rico, 8471", "about": "Sint aliquip eu cillum ipsum sint consectetur occaecat ea laboris eu velit nostrud dolor nulla. Velit aute commodo id aliquip dolor minim nisi minim dolor nostrud do. Ut consectetur cillum mollit in officia enim occaecat anim. Anim aliquip exercitation reprehenderit cillum est do. Consequat ea reprehenderit ex proident laborum eu et consequat proident consequat. Incididunt veniam est ut reprehenderit in. Id officia aliquip reprehenderit aute ullamco ex esse adipisicing sint sit Lorem proident occaecat ut.\r\n", "registered": "2014-05-22T19:20:21-12:00", "latitude": 45.304896, "longitude": 125.391644, "tags": [ "commodo", "eiusmod", "nulla", "aute", "do", "irure", "culpa" ], "friends": [ { "id": 0, "name": "Jacobson Harris" }, { "id": 1, "name": "Lea Price" }, { "id": 2, "name": "Veronica Mckee" } ], "greeting": "Hello, Hooper Mcknight! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fe7fe6bad1839e2ab", "index": 795, "guid": "f4673e5e-7ba1-40df-b120-10c72610728d", "isActive": false, "balance": "$1,757.81", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Parker Mcguire", "gender": "male", "company": "BICOL", "email": "parkermcguire@bicol.com", "phone": "+1 (807) 439-2808", "address": "570 Ellery Street, Vaughn, California, 1650", "about": "Eiusmod fugiat quis anim deserunt mollit. Consequat duis in ea Lorem elit nisi elit non. Voluptate Lorem consectetur ullamco pariatur. Nulla in irure duis ad qui consequat eiusmod ad. Eiusmod id velit duis laborum excepteur ipsum deserunt ex laboris mollit mollit. Ad enim deserunt eiusmod velit amet culpa ipsum. Occaecat dolor elit quis velit ipsum.\r\n", "registered": "2014-03-18T14:13:38-13:00", "latitude": 33.976328, "longitude": 47.313105, "tags": [ "cupidatat", "ad", "labore", "laborum", "dolore", "elit", "sit" ], "friends": [ { "id": 0, "name": "Loretta Gray" }, { "id": 1, "name": "Angelita Sheppard" }, { "id": 2, "name": "Juarez Kaufman" } ], "greeting": "Hello, Parker Mcguire! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fe88350eb1adb7fc4", "index": 796, "guid": "177444f7-6bca-43bb-ae60-d1f3d4690493", "isActive": false, "balance": "$3,177.59", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Quinn Chavez", "gender": "male", "company": "GALLAXIA", "email": "quinnchavez@gallaxia.com", "phone": "+1 (822) 485-3814", "address": "805 Thornton Street, Marion, Vermont, 869", "about": "Incididunt laboris aliquip nisi cupidatat cupidatat qui incididunt minim officia exercitation culpa duis. Voluptate occaecat ullamco ut reprehenderit enim anim. Aliquip et aliquip nulla cillum pariatur elit ea aliqua Lorem incididunt ea aliqua anim fugiat. Quis sint sint eu sunt. Cupidatat dolore cupidatat et nostrud ipsum nisi anim ea occaecat aliquip.\r\n", "registered": "2014-07-26T10:37:33-12:00", "latitude": -76.614685, "longitude": 153.118437, "tags": [ "exercitation", "cillum", "in", "exercitation", "qui", "pariatur", "ex" ], "friends": [ { "id": 0, "name": "Roseann Nichols" }, { "id": 1, "name": "Helga Mathews" }, { "id": 2, "name": "May Young" } ], "greeting": "Hello, Quinn Chavez! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ff6a96550263b392f", "index": 797, "guid": "44e7e085-1da2-4dfe-bfc5-4e7a52c288d7", "isActive": true, "balance": "$3,306.20", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Shirley Santana", "gender": "female", "company": "PHUEL", "email": "shirleysantana@phuel.com", "phone": "+1 (818) 469-3712", "address": "895 Fulton Street, Bancroft, Indiana, 5280", "about": "Laborum laborum veniam minim tempor labore tempor laboris culpa culpa ex exercitation tempor. Mollit quis dolor anim occaecat. Voluptate velit exercitation do anim commodo enim elit tempor deserunt nulla reprehenderit ex ullamco minim. Magna nostrud reprehenderit aute nostrud proident qui dolor.\r\n", "registered": "2014-08-31T07:36:41-12:00", "latitude": -11.131101, "longitude": 65.258215, "tags": [ "officia", "ea", "irure", "cupidatat", "sunt", "culpa", "tempor" ], "friends": [ { "id": 0, "name": "Nolan Mcneil" }, { "id": 1, "name": "Holloway Lang" }, { "id": 2, "name": "Nina Obrien" } ], "greeting": "Hello, Shirley Santana! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f2dab0be7832316d5", "index": 798, "guid": "9e8a6c7a-161b-4af0-831a-c4e6f96ed1b5", "isActive": false, "balance": "$3,415.00", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Charlene Todd", "gender": "female", "company": "SINGAVERA", "email": "charlenetodd@singavera.com", "phone": "+1 (992) 551-3647", "address": "797 Aviation Road, Lawrence, Illinois, 1149", "about": "Tempor duis ullamco in cillum aute ipsum proident proident pariatur occaecat commodo do nulla. Laboris ex reprehenderit minim dolore. Aute eiusmod ipsum consectetur minim irure. Consectetur sit amet laboris aliquip culpa mollit ex sit commodo. Aliquip duis laborum commodo non sit deserunt magna elit.\r\n", "registered": "2014-05-12T17:42:21-12:00", "latitude": -42.980838, "longitude": -63.419164, "tags": [ "dolore", "quis", "et", "veniam", "Lorem", "velit", "irure" ], "friends": [ { "id": 0, "name": "Helena Holcomb" }, { "id": 1, "name": "Barber Bolton" }, { "id": 2, "name": "Clarissa Wise" } ], "greeting": "Hello, Charlene Todd! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fb54225035ae9173f", "index": 799, "guid": "f7076aad-0a5f-4d1c-8e32-ad4189c85185", "isActive": true, "balance": "$1,857.16", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Howard Humphrey", "gender": "male", "company": "EVENTEX", "email": "howardhumphrey@eventex.com", "phone": "+1 (835) 506-2545", "address": "342 Arkansas Drive, Hardyville, South Carolina, 7617", "about": "Tempor commodo commodo ad sit magna et. In culpa quis incididunt ipsum aliqua fugiat qui pariatur. Ut tempor incididunt consequat Lorem nulla nisi nisi. Nisi eiusmod mollit aliquip commodo cupidatat esse laborum laborum incididunt dolor officia exercitation et anim. Cillum commodo sunt anim dolore do aute amet. Proident nulla mollit fugiat velit officia cupidatat aute labore irure. Laboris consectetur consequat laboris fugiat Lorem dolor minim cupidatat dolor sit aliqua ipsum do.\r\n", "registered": "2014-07-10T19:46:31-12:00", "latitude": 56.22792, "longitude": 1.214674, "tags": [ "enim", "amet", "id", "dolore", "veniam", "Lorem", "irure" ], "friends": [ { "id": 0, "name": "Lucile Mclean" }, { "id": 1, "name": "Lacy Calhoun" }, { "id": 2, "name": "Bryant Carroll" } ], "greeting": "Hello, Howard Humphrey! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1ff8b32151e823b7fd", "index": 800, "guid": "85d67c12-2096-48aa-931b-40a9be8a10ca", "isActive": true, "balance": "$1,980.07", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Ball Little", "gender": "male", "company": "UPDAT", "email": "balllittle@updat.com", "phone": "+1 (902) 420-3104", "address": "740 Kensington Walk, Hasty, American Samoa, 4557", "about": "Laboris exercitation adipisicing elit eu aliquip nostrud labore do laboris consequat excepteur minim sit anim. Deserunt non et magna enim qui eu cupidatat non adipisicing aliquip. Esse ut ad incididunt aliquip anim excepteur. Et aute proident amet velit proident et ipsum adipisicing Lorem veniam id consequat exercitation nostrud.\r\n", "registered": "2014-08-01T12:38:03-12:00", "latitude": -1.400722, "longitude": 8.246102, "tags": [ "consectetur", "nostrud", "eiusmod", "in", "dolore", "sunt", "officia" ], "friends": [ { "id": 0, "name": "Brady Adkins" }, { "id": 1, "name": "Sawyer Alvarado" }, { "id": 2, "name": "Teri Wiggins" } ], "greeting": "Hello, Ball Little! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f654d5f31043edba3", "index": 801, "guid": "3f55e2b2-320d-42db-b4fe-607f8f33c330", "isActive": true, "balance": "$2,640.98", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Frances Oneal", "gender": "female", "company": "ANIXANG", "email": "francesoneal@anixang.com", "phone": "+1 (943) 490-2660", "address": "133 Rost Place, Sanborn, Delaware, 4944", "about": "Et aute id ut qui et do pariatur. Cillum velit duis ipsum adipisicing velit reprehenderit voluptate commodo occaecat ad commodo pariatur laborum qui. Non adipisicing occaecat mollit nostrud eiusmod dolore aute. Adipisicing irure mollit labore aliquip.\r\n", "registered": "2014-02-10T02:19:44-13:00", "latitude": 14.779976, "longitude": 141.559406, "tags": [ "velit", "tempor", "ex", "ea", "amet", "nostrud", "id" ], "friends": [ { "id": 0, "name": "Juliet Lopez" }, { "id": 1, "name": "Mack Osborn" }, { "id": 2, "name": "Lester Duran" } ], "greeting": "Hello, Frances Oneal! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f76cf90277379fbcd", "index": 802, "guid": "fd732794-80e3-498b-9150-cf45046fac14", "isActive": false, "balance": "$3,208.65", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Lizzie Russo", "gender": "female", "company": "CUBICIDE", "email": "lizzierusso@cubicide.com", "phone": "+1 (898) 445-3267", "address": "976 Fleet Walk, Breinigsville, Pennsylvania, 4603", "about": "Officia duis ex Lorem incididunt id mollit ea proident incididunt ut. Non officia labore fugiat ea in. Sit excepteur ex reprehenderit amet tempor.\r\n", "registered": "2014-01-07T22:45:30-13:00", "latitude": 68.590965, "longitude": 27.129214, "tags": [ "labore", "ut", "voluptate", "ipsum", "ea", "enim", "irure" ], "friends": [ { "id": 0, "name": "Terrell Moran" }, { "id": 1, "name": "Bertha Rios" }, { "id": 2, "name": "Phyllis Rivas" } ], "greeting": "Hello, Lizzie Russo! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f88534303f63cfad1", "index": 803, "guid": "a640bae7-450d-4297-bf7f-6beed55d9dd4", "isActive": false, "balance": "$2,395.33", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Clara Leblanc", "gender": "female", "company": "EARTHWAX", "email": "claraleblanc@earthwax.com", "phone": "+1 (992) 598-3732", "address": "956 Auburn Place, Graball, Georgia, 4611", "about": "Lorem excepteur anim minim anim elit laborum cupidatat nisi duis magna aliquip adipisicing. Tempor occaecat velit ut id eiusmod enim ut id ea sit consectetur nulla. Eu culpa eiusmod velit aliqua. Dolore proident et sit proident. Enim veniam amet quis nostrud commodo. Exercitation magna id deserunt non elit dolor sit anim nostrud Lorem nostrud ullamco. Reprehenderit incididunt exercitation cupidatat dolore dolore consequat amet veniam eu.\r\n", "registered": "2014-03-20T13:10:25-13:00", "latitude": -31.459955, "longitude": 55.872666, "tags": [ "in", "culpa", "enim", "laboris", "consectetur", "duis", "irure" ], "friends": [ { "id": 0, "name": "Mia Navarro" }, { "id": 1, "name": "Brewer Pratt" }, { "id": 2, "name": "Patricia Mercer" } ], "greeting": "Hello, Clara Leblanc! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f3d7edfb50a0d6c12", "index": 804, "guid": "1def2925-53be-4719-8057-883dd14dfbea", "isActive": true, "balance": "$2,571.36", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Dudley Chan", "gender": "male", "company": "BRAINQUIL", "email": "dudleychan@brainquil.com", "phone": "+1 (957) 492-2300", "address": "823 Nostrand Avenue, Brookfield, North Dakota, 6972", "about": "Lorem exercitation eiusmod exercitation ea enim Lorem fugiat in nulla non et aliqua cillum. Officia amet labore ea nisi cillum ad in aliquip dolor nisi ullamco cupidatat culpa velit. Irure fugiat Lorem laborum ullamco aute nulla nulla officia.\r\n", "registered": "2014-02-18T03:58:53-13:00", "latitude": 25.020186, "longitude": -51.471217, "tags": [ "qui", "adipisicing", "ullamco", "sint", "dolore", "labore", "reprehenderit" ], "friends": [ { "id": 0, "name": "Janet Carter" }, { "id": 1, "name": "Latoya Cantu" }, { "id": 2, "name": "Alice Alvarez" } ], "greeting": "Hello, Dudley Chan! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fbfd271d7f8b1806c", "index": 805, "guid": "c1354dd7-741a-4851-8cc3-a582f0f41a14", "isActive": true, "balance": "$3,426.61", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Hillary Benjamin", "gender": "female", "company": "VALREDA", "email": "hillarybenjamin@valreda.com", "phone": "+1 (990) 587-2060", "address": "605 Mill Road, Herbster, Louisiana, 2246", "about": "Labore cillum dolor pariatur excepteur. Ea ad adipisicing cillum enim officia elit mollit Lorem aliqua. Eiusmod amet cupidatat eiusmod esse tempor. Velit commodo pariatur elit laboris ad ex. Consequat voluptate fugiat irure aute aliqua sint reprehenderit aliquip consectetur laboris dolor. Dolore sit occaecat cillum voluptate reprehenderit occaecat proident quis consectetur. Tempor minim exercitation aliqua ad excepteur.\r\n", "registered": "2014-08-26T15:54:05-12:00", "latitude": -67.849677, "longitude": 66.600809, "tags": [ "voluptate", "consectetur", "aliqua", "excepteur", "labore", "id", "non" ], "friends": [ { "id": 0, "name": "Nichols Strickland" }, { "id": 1, "name": "Janette Schroeder" }, { "id": 2, "name": "Muriel Barker" } ], "greeting": "Hello, Hillary Benjamin! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f21a503d08599843b", "index": 806, "guid": "2ed5e27e-0447-4aa2-bc32-358db5abaf93", "isActive": false, "balance": "$1,594.30", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Pugh Schultz", "gender": "male", "company": "ISOLOGICS", "email": "pughschultz@isologics.com", "phone": "+1 (848) 555-2814", "address": "121 Quay Street, Englevale, Northern Mariana Islands, 5155", "about": "Sint nisi pariatur elit elit aute ea. Culpa nulla in mollit eiusmod nostrud irure culpa aliqua laboris non qui do veniam dolor. Anim magna esse aute labore tempor est ullamco consequat in.\r\n", "registered": "2014-01-12T17:20:29-13:00", "latitude": -50.508567, "longitude": 158.994444, "tags": [ "reprehenderit", "minim", "id", "dolore", "non", "fugiat", "commodo" ], "friends": [ { "id": 0, "name": "Justine Torres" }, { "id": 1, "name": "Leonor Boyd" }, { "id": 2, "name": "Holman Franco" } ], "greeting": "Hello, Pugh Schultz! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f1f800afc8a5a8795", "index": 807, "guid": "1faf2b8b-84db-478b-b44e-a1191f45d7d9", "isActive": false, "balance": "$2,734.05", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Cassandra Houston", "gender": "female", "company": "COMTOURS", "email": "cassandrahouston@comtours.com", "phone": "+1 (950) 440-3331", "address": "400 Willow Place, Weedville, Colorado, 7865", "about": "Commodo esse aliqua quis magna ut sit nostrud aliquip laborum. Esse est laboris aute consequat magna sit consequat quis cillum pariatur eu velit ut sint. Ut cupidatat et sit esse do adipisicing pariatur pariatur quis eiusmod.\r\n", "registered": "2014-02-05T07:16:04-13:00", "latitude": 55.424289, "longitude": 152.481027, "tags": [ "eiusmod", "id", "aliqua", "velit", "eiusmod", "commodo", "voluptate" ], "friends": [ { "id": 0, "name": "Concetta Ratliff" }, { "id": 1, "name": "Mcneil Benton" }, { "id": 2, "name": "Angeline Roman" } ], "greeting": "Hello, Cassandra Houston! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f05485ca412c74374", "index": 808, "guid": "7e6530dd-e2b4-4d9a-bdc7-6639067f6ff2", "isActive": true, "balance": "$3,008.65", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Selma Schneider", "gender": "female", "company": "REVERSUS", "email": "selmaschneider@reversus.com", "phone": "+1 (908) 596-3198", "address": "803 Hillel Place, Alamo, Idaho, 3012", "about": "Nisi nostrud labore incididunt ea tempor ut enim laboris mollit cupidatat et ullamco elit pariatur. Nulla id sit ipsum minim deserunt id et aliquip magna. Dolore id ad reprehenderit sunt voluptate culpa sint.\r\n", "registered": "2014-03-05T02:40:04-13:00", "latitude": 34.616028, "longitude": 29.969601, "tags": [ "mollit", "incididunt", "ex", "consectetur", "pariatur", "minim", "do" ], "friends": [ { "id": 0, "name": "Sharon Brady" }, { "id": 1, "name": "Hebert Shannon" }, { "id": 2, "name": "Johnson Coleman" } ], "greeting": "Hello, Selma Schneider! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f1fc3acb68bc88b76", "index": 809, "guid": "d4d69e75-8270-4bde-871e-53d45f98e553", "isActive": true, "balance": "$1,805.30", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Yesenia Ochoa", "gender": "female", "company": "ELITA", "email": "yeseniaochoa@elita.com", "phone": "+1 (972) 548-3842", "address": "787 Gilmore Court, Hollymead, Marshall Islands, 5958", "about": "Cillum aute ullamco officia ut ea ad. Deserunt minim ullamco deserunt velit laborum ea elit deserunt laborum elit. Minim laborum veniam sunt consectetur sint aute.\r\n", "registered": "2014-04-04T09:22:46-13:00", "latitude": -87.099795, "longitude": -87.416123, "tags": [ "ea", "veniam", "deserunt", "excepteur", "aliquip", "aute", "ea" ], "friends": [ { "id": 0, "name": "Pamela Mcclain" }, { "id": 1, "name": "Sparks Lowe" }, { "id": 2, "name": "Beard Hardin" } ], "greeting": "Hello, Yesenia Ochoa! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f373a4aaa51b36acd", "index": 810, "guid": "5e177d27-8982-44d9-a933-e05dd5cbbc6c", "isActive": true, "balance": "$1,759.69", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Mcintosh Watkins", "gender": "male", "company": "MONDICIL", "email": "mcintoshwatkins@mondicil.com", "phone": "+1 (883) 458-2771", "address": "270 Mill Street, Worcester, New York, 4699", "about": "Deserunt eiusmod cillum velit labore sit ullamco Lorem duis ut incididunt eu non. Qui occaecat nulla sit consequat laborum ipsum. Sit Lorem occaecat proident eiusmod ipsum velit ea sint sit elit amet.\r\n", "registered": "2014-05-05T01:56:19-12:00", "latitude": -1.882025, "longitude": -51.448829, "tags": [ "consequat", "ea", "consectetur", "laborum", "eiusmod", "cupidatat", "eiusmod" ], "friends": [ { "id": 0, "name": "Sheila Good" }, { "id": 1, "name": "Delgado Cohen" }, { "id": 2, "name": "Humphrey Gamble" } ], "greeting": "Hello, Mcintosh Watkins! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fc29b4531fd07107d", "index": 811, "guid": "45b8dcf3-50e5-4e38-9f53-0d1693dedd6d", "isActive": true, "balance": "$3,941.72", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Byers Haynes", "gender": "male", "company": "NAXDIS", "email": "byershaynes@naxdis.com", "phone": "+1 (829) 452-2887", "address": "491 Albee Square, Alderpoint, Guam, 4269", "about": "Eiusmod in non nulla minim duis mollit culpa magna. Laboris proident dolore ex sint aliquip. Ipsum reprehenderit anim fugiat commodo. Duis id exercitation aliquip incididunt officia. Ullamco tempor velit magna cupidatat reprehenderit non irure. Irure reprehenderit et dolor pariatur Lorem consequat exercitation aliqua tempor anim incididunt occaecat aliqua.\r\n", "registered": "2014-07-10T20:48:10-12:00", "latitude": 58.778459, "longitude": 11.08204, "tags": [ "cillum", "esse", "minim", "magna", "mollit", "do", "enim" ], "friends": [ { "id": 0, "name": "Adela Gibson" }, { "id": 1, "name": "Ryan Roth" }, { "id": 2, "name": "Simmons Camacho" } ], "greeting": "Hello, Byers Haynes! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fd61d44046bf8f1a8", "index": 812, "guid": "3db546be-797e-4376-a769-65466ecf1096", "isActive": false, "balance": "$1,736.90", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Figueroa Branch", "gender": "male", "company": "DATAGENE", "email": "figueroabranch@datagene.com", "phone": "+1 (959) 440-3591", "address": "670 Montgomery Street, Lydia, Virgin Islands, 2265", "about": "Eiusmod non excepteur enim labore nulla laborum pariatur irure deserunt cillum do ex elit laboris. Aute aliqua pariatur aliquip veniam deserunt nulla quis deserunt voluptate irure laborum excepteur excepteur. Nulla qui ipsum nisi consequat est sit aliqua qui velit ut laboris voluptate ipsum proident. Cupidatat ex Lorem dolor adipisicing ea aute ex ipsum exercitation aliqua do amet ut excepteur.\r\n", "registered": "2014-08-18T16:11:55-12:00", "latitude": 61.038139, "longitude": -164.326897, "tags": [ "nostrud", "laboris", "nostrud", "nisi", "ad", "sint", "tempor" ], "friends": [ { "id": 0, "name": "Kristina Fuller" }, { "id": 1, "name": "Baldwin Holden" }, { "id": 2, "name": "Martha Butler" } ], "greeting": "Hello, Figueroa Branch! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f8d5a6d37a38c65b6", "index": 813, "guid": "0eb94f69-d8f9-433c-b9d5-ad94b2594fa4", "isActive": true, "balance": "$3,705.67", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Aurelia Horton", "gender": "female", "company": "ENERSAVE", "email": "aureliahorton@enersave.com", "phone": "+1 (987) 402-2024", "address": "995 Fleet Street, Onton, Massachusetts, 3149", "about": "Mollit incididunt veniam deserunt cillum qui elit proident minim laborum qui laborum quis irure. Excepteur culpa cillum dolore mollit esse consequat culpa non. Laborum veniam esse anim adipisicing quis mollit eu labore. Officia dolor Lorem in laboris exercitation do elit irure nostrud. Lorem ex laborum eu anim pariatur incididunt sint tempor sit velit veniam et culpa ea.\r\n", "registered": "2014-09-05T10:55:18-12:00", "latitude": 40.303491, "longitude": -100.463131, "tags": [ "ea", "consequat", "consectetur", "pariatur", "esse", "culpa", "laboris" ], "friends": [ { "id": 0, "name": "Combs Molina" }, { "id": 1, "name": "Bailey Le" }, { "id": 2, "name": "Carmen Summers" } ], "greeting": "Hello, Aurelia Horton! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f6b28d8924d583ef7", "index": 814, "guid": "81125c36-3774-4109-8ae6-6899259d6898", "isActive": false, "balance": "$3,252.37", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Moreno Gardner", "gender": "male", "company": "XELEGYL", "email": "morenogardner@xelegyl.com", "phone": "+1 (824) 570-3276", "address": "625 Rogers Avenue, Lindisfarne, Utah, 2938", "about": "Sit ullamco sint proident adipisicing incididunt exercitation elit ad. Eiusmod ipsum occaecat veniam est enim culpa ipsum. Pariatur incididunt sit sit id ipsum cupidatat duis sunt id ad est aliqua. Cupidatat sit consequat aliquip consequat ullamco sint sit sunt est ex. Irure nulla ullamco amet veniam sint officia labore occaecat qui reprehenderit. Dolor qui eiusmod proident occaecat dolor dolor adipisicing. Duis consequat Lorem aliqua aliqua non.\r\n", "registered": "2014-02-12T12:36:41-13:00", "latitude": 50.258509, "longitude": -13.149388, "tags": [ "deserunt", "et", "ea", "sint", "fugiat", "qui", "mollit" ], "friends": [ { "id": 0, "name": "Gertrude Wallace" }, { "id": 1, "name": "West Johnson" }, { "id": 2, "name": "Rivers Conner" } ], "greeting": "Hello, Moreno Gardner! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fbd93fc54ae6fd9b6", "index": 815, "guid": "767e2458-302c-423e-bcf0-febc944cf40e", "isActive": true, "balance": "$3,499.51", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Patti Finch", "gender": "female", "company": "SUREMAX", "email": "pattifinch@suremax.com", "phone": "+1 (879) 487-3799", "address": "540 Folsom Place, Williamson, Montana, 5969", "about": "Ea deserunt minim et fugiat et. Excepteur anim consequat do commodo incididunt cillum esse. Labore officia cupidatat consequat reprehenderit id nostrud voluptate ullamco tempor esse dolor pariatur. Cupidatat ullamco nostrud aliquip qui reprehenderit non aliquip non fugiat commodo in elit.\r\n", "registered": "2014-07-20T03:44:28-12:00", "latitude": 34.466984, "longitude": 61.420228, "tags": [ "deserunt", "anim", "voluptate", "non", "laboris", "mollit", "nulla" ], "friends": [ { "id": 0, "name": "Huffman Haney" }, { "id": 1, "name": "Debbie Martin" }, { "id": 2, "name": "Orr Crosby" } ], "greeting": "Hello, Patti Finch! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fb913f2bfa80d6860", "index": 816, "guid": "362863bd-d36d-4bfd-a041-b93878807f86", "isActive": true, "balance": "$3,572.49", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Adkins Lloyd", "gender": "male", "company": "GAZAK", "email": "adkinslloyd@gazak.com", "phone": "+1 (982) 420-2747", "address": "187 Colin Place, Rote, Wisconsin, 4670", "about": "Adipisicing aliqua aute eu veniam. Aliquip nostrud occaecat Lorem officia deserunt anim mollit fugiat cupidatat sint sint. Ad irure qui cupidatat anim sit magna eu aute velit deserunt duis. Consequat aute nulla veniam non incididunt ut adipisicing ad nisi. Esse dolore laborum ullamco nostrud et.\r\n", "registered": "2014-04-06T03:09:49-12:00", "latitude": -0.092857, "longitude": -136.850152, "tags": [ "ea", "ex", "duis", "deserunt", "voluptate", "Lorem", "duis" ], "friends": [ { "id": 0, "name": "Daugherty Lester" }, { "id": 1, "name": "Jewel Whitfield" }, { "id": 2, "name": "Gloria Evans" } ], "greeting": "Hello, Adkins Lloyd! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f227ac07ecaae16e8", "index": 817, "guid": "79005ad4-35c5-49af-a4dd-8e1563ec9cb1", "isActive": true, "balance": "$2,293.19", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Curry Blackburn", "gender": "male", "company": "OLUCORE", "email": "curryblackburn@olucore.com", "phone": "+1 (901) 502-2794", "address": "873 Grace Court, Kenmar, Maine, 1224", "about": "Ea aliquip culpa nulla eu consequat deserunt fugiat aliqua exercitation elit dolore. Ullamco adipisicing do sunt eu excepteur amet nostrud id fugiat dolor esse qui irure. Irure laborum non reprehenderit in consequat amet ullamco veniam aliqua commodo eu.\r\n", "registered": "2014-09-02T13:02:33-12:00", "latitude": 10.032674, "longitude": -172.299481, "tags": [ "pariatur", "veniam", "mollit", "ex", "ex", "enim", "id" ], "friends": [ { "id": 0, "name": "Castro Walter" }, { "id": 1, "name": "Galloway Underwood" }, { "id": 2, "name": "Cantrell William" } ], "greeting": "Hello, Curry Blackburn! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fea0284072241d4b1", "index": 818, "guid": "0c78510c-e513-46f7-b759-436c9f149f41", "isActive": false, "balance": "$1,831.59", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Ida Mccarty", "gender": "female", "company": "AMTAP", "email": "idamccarty@amtap.com", "phone": "+1 (920) 590-2655", "address": "695 Lafayette Walk, Darrtown, Virginia, 9715", "about": "Fugiat qui voluptate ea sint amet. Elit consectetur ad in irure sit. Fugiat et laboris labore velit nulla et non ea dolore reprehenderit. Non elit quis voluptate aute incididunt ipsum. In excepteur labore eu laboris. Do nostrud adipisicing excepteur officia culpa ipsum pariatur.\r\n", "registered": "2014-02-04T23:02:32-13:00", "latitude": 2.891818, "longitude": 129.3787, "tags": [ "in", "commodo", "voluptate", "esse", "dolore", "culpa", "occaecat" ], "friends": [ { "id": 0, "name": "Gray Mullins" }, { "id": 1, "name": "Hale Sweet" }, { "id": 2, "name": "Alyssa Watts" } ], "greeting": "Hello, Ida Mccarty! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f53a393692d4763da", "index": 819, "guid": "bb41a459-563e-4c18-9e1d-4ec06a9b2d0d", "isActive": false, "balance": "$3,518.63", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Conrad Moreno", "gender": "male", "company": "SARASONIC", "email": "conradmoreno@sarasonic.com", "phone": "+1 (990) 546-2896", "address": "585 Bowery Street, Concho, Kentucky, 5818", "about": "Occaecat consequat exercitation sit veniam nulla sint adipisicing consectetur sint id ex dolore deserunt. Qui quis irure incididunt et sunt elit ipsum adipisicing. Amet in enim quis est sunt laborum proident fugiat est duis. Do in Lorem labore velit in fugiat consectetur nulla. Labore culpa consequat id occaecat sit pariatur veniam et ipsum. Nulla enim aliquip laboris officia enim id commodo ea qui dolor est sint.\r\n", "registered": "2014-09-23T06:34:43-12:00", "latitude": -33.868739, "longitude": -63.834299, "tags": [ "est", "Lorem", "labore", "consequat", "nostrud", "commodo", "excepteur" ], "friends": [ { "id": 0, "name": "Tanya Mcmillan" }, { "id": 1, "name": "Savage Greer" }, { "id": 2, "name": "Steele Barron" } ], "greeting": "Hello, Conrad Moreno! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fb6e4c3d6a9117d7b", "index": 820, "guid": "fdf61ca6-f441-48b0-b5b2-eb5ca3e76b0c", "isActive": true, "balance": "$2,097.56", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Lindsay Flynn", "gender": "female", "company": "NAMEBOX", "email": "lindsayflynn@namebox.com", "phone": "+1 (945) 487-3303", "address": "763 Franklin Street, Vale, Connecticut, 1995", "about": "Est magna sit labore laborum ad aliquip Lorem reprehenderit enim laborum consequat deserunt consequat. Ipsum non ut ut minim do mollit exercitation ad excepteur consequat. Voluptate Lorem occaecat non do do aliquip qui veniam amet incididunt ex ipsum. Reprehenderit consequat elit fugiat aliqua voluptate esse minim voluptate commodo aliquip laboris amet deserunt veniam. Anim adipisicing occaecat deserunt reprehenderit aute.\r\n", "registered": "2014-01-05T16:20:18-13:00", "latitude": 52.176333, "longitude": -164.588884, "tags": [ "eiusmod", "commodo", "consectetur", "nulla", "reprehenderit", "non", "enim" ], "friends": [ { "id": 0, "name": "Shaw Rasmussen" }, { "id": 1, "name": "Fran Carson" }, { "id": 2, "name": "Lora Michael" } ], "greeting": "Hello, Lindsay Flynn! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fdbeb2e213ad438ed", "index": 821, "guid": "51ad7fdf-a5ae-42f5-b486-49621af0a73d", "isActive": false, "balance": "$2,078.78", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Gwendolyn Bond", "gender": "female", "company": "CENTICE", "email": "gwendolynbond@centice.com", "phone": "+1 (938) 501-3548", "address": "662 Stryker Street, Grill, Mississippi, 4044", "about": "Elit Lorem est enim culpa amet adipisicing exercitation aliquip veniam irure deserunt. Mollit in voluptate duis laborum Lorem nulla aliqua Lorem nulla. Do veniam pariatur ut proident aliquip consequat labore consequat enim magna dolore laboris commodo. Esse ut anim mollit sint minim. Irure aute exercitation eiusmod irure quis exercitation ad deserunt irure ut cillum ut.\r\n", "registered": "2014-01-10T21:22:44-13:00", "latitude": -33.039838, "longitude": -86.603148, "tags": [ "minim", "in", "adipisicing", "excepteur", "amet", "excepteur", "non" ], "friends": [ { "id": 0, "name": "Florine Banks" }, { "id": 1, "name": "Millicent Conley" }, { "id": 2, "name": "Baird Riddle" } ], "greeting": "Hello, Gwendolyn Bond! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fd5547592cdbacbc3", "index": 822, "guid": "d13e64e3-f8b3-4aaf-9540-493e507ba04f", "isActive": true, "balance": "$2,158.38", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Judith Rosa", "gender": "female", "company": "HIVEDOM", "email": "judithrosa@hivedom.com", "phone": "+1 (859) 433-3461", "address": "808 Montgomery Place, Clarence, Washington, 6812", "about": "Sint ad Lorem Lorem veniam cupidatat duis nulla incididunt. Magna labore duis qui commodo non ea. Adipisicing nisi ad tempor magna. Proident ullamco non duis cillum dolore minim ullamco Lorem fugiat et id officia enim do. Ad voluptate ex cillum quis. Voluptate ea deserunt proident ipsum eiusmod ex ullamco fugiat officia est qui dolore.\r\n", "registered": "2014-07-13T13:50:54-12:00", "latitude": -63.978317, "longitude": 100.933121, "tags": [ "minim", "est", "labore", "eu", "ea", "dolore", "tempor" ], "friends": [ { "id": 0, "name": "Bonnie Palmer" }, { "id": 1, "name": "Shelton Mckenzie" }, { "id": 2, "name": "Massey Koch" } ], "greeting": "Hello, Judith Rosa! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f8318fc412da209d5", "index": 823, "guid": "0646a13a-fee8-4db4-b395-be07e496a92d", "isActive": false, "balance": "$2,354.45", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Hughes Goodman", "gender": "male", "company": "FIBRODYNE", "email": "hughesgoodman@fibrodyne.com", "phone": "+1 (956) 487-2891", "address": "358 Marconi Place, Coleville, Tennessee, 4500", "about": "Incididunt dolore Lorem elit sunt qui laborum dolore fugiat enim exercitation. Incididunt ad eu dolore adipisicing proident cupidatat non duis elit nisi adipisicing duis quis aute. Est eu dolore quis proident sunt enim aliquip quis minim. Culpa enim mollit excepteur non. Nulla non aliqua ex eiusmod dolor sunt labore est ex non elit do officia. Qui dolor adipisicing mollit duis quis dolore magna adipisicing sint pariatur. Velit et aliqua amet occaecat labore sunt irure exercitation laboris.\r\n", "registered": "2014-07-24T09:55:17-12:00", "latitude": 4.97093, "longitude": -141.510923, "tags": [ "laboris", "mollit", "cillum", "deserunt", "ad", "eiusmod", "pariatur" ], "friends": [ { "id": 0, "name": "Oneal Ray" }, { "id": 1, "name": "Brenda Bradshaw" }, { "id": 2, "name": "Torres King" } ], "greeting": "Hello, Hughes Goodman! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f79da50f25e7c0230", "index": 824, "guid": "f6e3b19d-4d25-47ca-9076-71cccc0b5bf1", "isActive": false, "balance": "$3,110.53", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Freda Bender", "gender": "female", "company": "KOG", "email": "fredabender@kog.com", "phone": "+1 (925) 451-3519", "address": "325 Suydam Street, Thermal, Alabama, 7141", "about": "Elit laborum labore laborum dolor occaecat laborum. Est consequat cillum in ut dolore deserunt enim commodo laboris. Laboris pariatur mollit tempor nisi ea incididunt ut aliqua. Anim dolor proident dolore non magna elit ullamco reprehenderit et irure et occaecat est. Consequat mollit irure culpa labore occaecat proident cupidatat nulla amet.\r\n", "registered": "2014-07-19T17:51:38-12:00", "latitude": -57.146006, "longitude": -100.164552, "tags": [ "cupidatat", "velit", "magna", "nostrud", "laboris", "nulla", "nisi" ], "friends": [ { "id": 0, "name": "Jensen Garza" }, { "id": 1, "name": "Lenore Nolan" }, { "id": 2, "name": "Marci Cote" } ], "greeting": "Hello, Freda Bender! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fc799afcc6226a33c", "index": 825, "guid": "7252fa67-46d6-4a0e-b202-810a9b392885", "isActive": false, "balance": "$2,252.54", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Hutchinson Delacruz", "gender": "male", "company": "PREMIANT", "email": "hutchinsondelacruz@premiant.com", "phone": "+1 (817) 532-3487", "address": "343 Hancock Street, Harmon, Ohio, 1859", "about": "In sunt sit culpa occaecat quis. Ad irure do fugiat velit mollit nostrud ut non nisi incididunt aliqua dolor eu quis. Exercitation proident labore eu nostrud magna culpa quis magna quis.\r\n", "registered": "2014-06-11T07:29:43-12:00", "latitude": -13.876393, "longitude": 98.068231, "tags": [ "culpa", "fugiat", "in", "sunt", "officia", "sunt", "eu" ], "friends": [ { "id": 0, "name": "Stevens Sanders" }, { "id": 1, "name": "Vega Ewing" }, { "id": 2, "name": "Willie Sexton" } ], "greeting": "Hello, Hutchinson Delacruz! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fa2dce30abcbd0046", "index": 826, "guid": "3c01bbf8-3f64-4d15-8d33-8e0d6a5abb77", "isActive": true, "balance": "$2,084.91", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Kennedy Salinas", "gender": "male", "company": "LIMAGE", "email": "kennedysalinas@limage.com", "phone": "+1 (850) 454-3622", "address": "589 Tudor Terrace, Harleigh, Hawaii, 460", "about": "Deserunt Lorem ex in veniam ullamco elit nostrud quis elit. Aliqua non ea sint laborum ea ex aliquip ex eiusmod duis minim officia nisi occaecat. Dolore cillum non in culpa fugiat ut veniam elit.\r\n", "registered": "2014-01-31T21:26:30-13:00", "latitude": 41.35873, "longitude": -157.685556, "tags": [ "pariatur", "velit", "magna", "nulla", "consequat", "magna", "aliquip" ], "friends": [ { "id": 0, "name": "Joni Alexander" }, { "id": 1, "name": "Sanchez Lane" }, { "id": 2, "name": "Earlene Kline" } ], "greeting": "Hello, Kennedy Salinas! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f8ba70d6884e363c6", "index": 827, "guid": "62c5fcd1-1153-4aa3-9444-e28a27bb5dc9", "isActive": true, "balance": "$1,512.42", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Duncan Lowery", "gender": "male", "company": "ELPRO", "email": "duncanlowery@elpro.com", "phone": "+1 (982) 489-3020", "address": "890 Cranberry Street, Libertytown, New Mexico, 8797", "about": "Non adipisicing tempor culpa adipisicing et ad officia labore dolor dolor id. Irure ea sit in consequat amet. Voluptate proident aliquip nisi consequat nostrud est aliquip esse aliquip. Commodo ex est quis excepteur. Ut sunt occaecat culpa cupidatat id. Laboris exercitation consequat dolore do nostrud anim fugiat Lorem.\r\n", "registered": "2014-03-04T23:20:20-13:00", "latitude": 65.603966, "longitude": -81.434451, "tags": [ "culpa", "velit", "et", "dolore", "reprehenderit", "officia", "do" ], "friends": [ { "id": 0, "name": "Ladonna Dodson" }, { "id": 1, "name": "Noemi Russell" }, { "id": 2, "name": "Rhoda Reese" } ], "greeting": "Hello, Duncan Lowery! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fdc19d192b090a671", "index": 828, "guid": "822f5ee6-be08-40bf-824b-4cf4f2b0e7cf", "isActive": true, "balance": "$2,687.79", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "England Short", "gender": "male", "company": "OTHERWAY", "email": "englandshort@otherway.com", "phone": "+1 (817) 594-3284", "address": "848 Reeve Place, Jeff, Maryland, 2791", "about": "Ad esse laboris reprehenderit nostrud dolor reprehenderit mollit nisi voluptate aute Lorem id ipsum veniam. Labore enim culpa aute quis dolor enim pariatur duis exercitation nulla cupidatat irure quis aliquip. Eu adipisicing laborum exercitation ipsum ipsum deserunt ex reprehenderit do eu.\r\n", "registered": "2014-07-11T18:16:42-12:00", "latitude": -41.429349, "longitude": 152.027669, "tags": [ "adipisicing", "est", "anim", "id", "et", "anim", "in" ], "friends": [ { "id": 0, "name": "Cobb Cameron" }, { "id": 1, "name": "Myrna Lawrence" }, { "id": 2, "name": "Long Small" } ], "greeting": "Hello, England Short! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f52a4bc3975c23ba3", "index": 829, "guid": "acff0051-65bb-4d9e-ac4a-84c817d5015d", "isActive": true, "balance": "$1,505.03", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Alford Wilkins", "gender": "male", "company": "CENTURIA", "email": "alfordwilkins@centuria.com", "phone": "+1 (826) 489-3924", "address": "997 Kenmore Court, Laurelton, Alaska, 4501", "about": "Voluptate et consectetur proident elit exercitation excepteur occaecat dolore dolore eiusmod sunt cillum dolore. Enim consectetur dolore laborum minim culpa excepteur qui non exercitation ea. Ullamco nostrud consectetur ut incididunt nulla cupidatat. Aute consequat sit sit ullamco dolore est sint in qui tempor do sint consequat laboris. Sunt cillum fugiat quis et esse nostrud.\r\n", "registered": "2014-05-12T03:50:20-12:00", "latitude": -0.369662, "longitude": 178.727018, "tags": [ "exercitation", "adipisicing", "dolore", "exercitation", "ea", "proident", "voluptate" ], "friends": [ { "id": 0, "name": "Grant Frye" }, { "id": 1, "name": "Griffin Medina" }, { "id": 2, "name": "Darcy Terry" } ], "greeting": "Hello, Alford Wilkins! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f72111e259b140349", "index": 830, "guid": "376d03c1-5224-493f-9e4d-00dbb6936b74", "isActive": false, "balance": "$1,070.95", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Rosales Mccullough", "gender": "male", "company": "OPTICOM", "email": "rosalesmccullough@opticom.com", "phone": "+1 (942) 594-2376", "address": "502 Boulevard Court, Barclay, Arizona, 724", "about": "Amet sint laborum reprehenderit eu aliquip commodo occaecat deserunt non commodo laboris ullamco duis. Nisi nisi sit esse nulla occaecat veniam sint id anim id cupidatat fugiat quis irure. Esse ex quis reprehenderit deserunt sunt.\r\n", "registered": "2014-02-08T05:51:24-13:00", "latitude": -18.743595, "longitude": 24.243315, "tags": [ "aliquip", "aliquip", "adipisicing", "culpa", "magna", "qui", "labore" ], "friends": [ { "id": 0, "name": "Dee Manning" }, { "id": 1, "name": "Mckenzie Langley" }, { "id": 2, "name": "Hopper Jackson" } ], "greeting": "Hello, Rosales Mccullough! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f400527779f091120", "index": 831, "guid": "8cbeadf5-ebf3-49f4-92d5-d6f379ca0235", "isActive": true, "balance": "$1,984.82", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Webster Grant", "gender": "male", "company": "MENBRAIN", "email": "webstergrant@menbrain.com", "phone": "+1 (966) 443-3586", "address": "712 McDonald Avenue, Foxworth, Federated States Of Micronesia, 6344", "about": "Aute nulla ut amet sit laborum consectetur qui irure occaecat sunt eiusmod ad dolore amet. Ex dolor laboris occaecat esse do Lorem ipsum do tempor mollit. Anim aute ex in velit id Lorem.\r\n", "registered": "2014-01-12T09:26:02-13:00", "latitude": 30.474317, "longitude": -157.462778, "tags": [ "ullamco", "pariatur", "dolor", "deserunt", "eiusmod", "aliquip", "amet" ], "friends": [ { "id": 0, "name": "Norton Hatfield" }, { "id": 1, "name": "Pearlie Hodges" }, { "id": 2, "name": "Teresa Trevino" } ], "greeting": "Hello, Webster Grant! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f60a6fac8ca26400a", "index": 832, "guid": "0b52e59f-384b-474c-8e2d-5698c576c0da", "isActive": true, "balance": "$1,150.73", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Louella Thornton", "gender": "female", "company": "EDECINE", "email": "louellathornton@edecine.com", "phone": "+1 (935) 432-2130", "address": "513 Lefferts Place, Alfarata, Oklahoma, 574", "about": "Eu reprehenderit in mollit amet laborum anim consequat ipsum do incididunt non Lorem. Enim ullamco nostrud pariatur sint elit anim tempor ullamco aute esse. Id pariatur eiusmod in dolor sunt. Incididunt esse exercitation fugiat aliquip aute. In voluptate sint nisi occaecat ullamco ad voluptate pariatur. Occaecat ipsum ut magna voluptate consequat laborum laboris dolor officia elit est aute veniam.\r\n", "registered": "2014-06-22T09:53:46-12:00", "latitude": 68.395586, "longitude": 162.919691, "tags": [ "aute", "et", "eu", "pariatur", "cupidatat", "tempor", "labore" ], "friends": [ { "id": 0, "name": "Elinor Kelley" }, { "id": 1, "name": "Marian Joseph" }, { "id": 2, "name": "Miles Stephens" } ], "greeting": "Hello, Louella Thornton! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f731fa194ed7274c0", "index": 833, "guid": "1647929e-8234-4a78-97b2-9b1d73066e4a", "isActive": false, "balance": "$1,976.72", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Dillard Norman", "gender": "male", "company": "GRACKER", "email": "dillardnorman@gracker.com", "phone": "+1 (890) 502-3473", "address": "618 Lawton Street, Spokane, Michigan, 7227", "about": "Ut mollit ut dolor eiusmod laboris do do do ut. Sit ut qui est pariatur labore consequat laboris elit. Officia sunt est nostrud ea magna tempor enim irure pariatur pariatur. Dolore sint duis proident laborum nostrud qui veniam veniam sunt mollit. Qui est tempor Lorem esse ullamco incididunt eu ipsum ex proident eiusmod.\r\n", "registered": "2014-07-02T11:55:35-12:00", "latitude": -66.657364, "longitude": 49.201371, "tags": [ "nisi", "proident", "consectetur", "ea", "eiusmod", "nulla", "tempor" ], "friends": [ { "id": 0, "name": "Newton Nash" }, { "id": 1, "name": "Savannah Gibbs" }, { "id": 2, "name": "Lisa Foreman" } ], "greeting": "Hello, Dillard Norman! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f6f1d8abe8ab5db20", "index": 834, "guid": "d6bbe629-8c29-498e-bdc2-a49528915ddd", "isActive": true, "balance": "$1,043.83", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Alberta Leon", "gender": "female", "company": "ZAJ", "email": "albertaleon@zaj.com", "phone": "+1 (957) 583-2580", "address": "431 Alabama Avenue, Lewis, Kansas, 1945", "about": "Adipisicing adipisicing ullamco commodo dolor est qui dolore. Cupidatat anim non dolor consectetur irure excepteur minim. Adipisicing eiusmod eiusmod eu in aliqua minim ullamco veniam. Cupidatat in occaecat occaecat enim laboris.\r\n", "registered": "2014-01-27T10:36:47-13:00", "latitude": 27.662622, "longitude": 22.594996, "tags": [ "id", "aute", "fugiat", "fugiat", "nisi", "elit", "et" ], "friends": [ { "id": 0, "name": "Dyer Holt" }, { "id": 1, "name": "Austin Griffin" }, { "id": 2, "name": "Reed Sutton" } ], "greeting": "Hello, Alberta Leon! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f8696c622504480c4", "index": 835, "guid": "240c7392-67d6-4b82-9653-f97796eaaa56", "isActive": true, "balance": "$2,030.53", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Guy Woodard", "gender": "male", "company": "ZILLAR", "email": "guywoodard@zillar.com", "phone": "+1 (918) 576-3455", "address": "756 Lafayette Avenue, Kersey, South Dakota, 2401", "about": "Elit mollit aute laborum ipsum. Tempor ea amet magna duis fugiat quis occaecat qui Lorem laboris elit amet voluptate fugiat. Culpa labore sit id adipisicing id nostrud enim cupidatat mollit aliquip enim. Sit id Lorem veniam anim ipsum nulla. Id voluptate voluptate veniam esse aute. Commodo voluptate veniam mollit pariatur officia quis cupidatat qui et enim aliquip. Excepteur ipsum eu culpa sit.\r\n", "registered": "2014-05-07T10:33:50-12:00", "latitude": 88.250365, "longitude": -92.48203, "tags": [ "id", "adipisicing", "sit", "quis", "proident", "quis", "ipsum" ], "friends": [ { "id": 0, "name": "Koch Larsen" }, { "id": 1, "name": "Green Parks" }, { "id": 2, "name": "Erica Benson" } ], "greeting": "Hello, Guy Woodard! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f0b1abdac039929db", "index": 836, "guid": "449f4526-e933-48da-ba7c-932fb21dfa7f", "isActive": false, "balance": "$3,964.25", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Melton Jefferson", "gender": "male", "company": "MEDIFAX", "email": "meltonjefferson@medifax.com", "phone": "+1 (976) 575-3298", "address": "764 Elizabeth Place, Lithium, West Virginia, 4352", "about": "Ex sit non ut labore elit incididunt fugiat Lorem est esse officia. Minim id Lorem adipisicing ea sit duis cupidatat dolor consectetur irure ullamco aute tempor incididunt. Quis esse amet enim cupidatat labore ut nostrud aliquip magna amet incididunt sint tempor culpa. Lorem est voluptate proident et. Fugiat excepteur velit eu esse proident excepteur officia elit eiusmod eiusmod amet dolore. Ullamco eu aliqua laboris sunt ad Lorem voluptate est reprehenderit. Laborum elit occaecat culpa do deserunt fugiat.\r\n", "registered": "2014-02-27T02:26:44-13:00", "latitude": -74.575796, "longitude": 56.110967, "tags": [ "ex", "ipsum", "ad", "minim", "adipisicing", "velit", "magna" ], "friends": [ { "id": 0, "name": "Randall Ruiz" }, { "id": 1, "name": "Laurel Mclaughlin" }, { "id": 2, "name": "Olive Bernard" } ], "greeting": "Hello, Melton Jefferson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fadf6691200436050", "index": 837, "guid": "c9244012-f550-4bfe-994e-8e1d8bb0bf24", "isActive": false, "balance": "$3,476.50", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Kerr Bonner", "gender": "male", "company": "DOGNOSIS", "email": "kerrbonner@dognosis.com", "phone": "+1 (825) 483-2582", "address": "652 Independence Avenue, Cavalero, Texas, 3058", "about": "Commodo minim consequat esse ad. Lorem ad laboris minim voluptate. Adipisicing enim est proident ullamco minim fugiat ullamco enim. Id non deserunt aliqua cupidatat sit eiusmod.\r\n", "registered": "2014-04-17T04:39:48-12:00", "latitude": -20.509623, "longitude": -52.215406, "tags": [ "aute", "duis", "ut", "amet", "dolore", "ullamco", "dolore" ], "friends": [ { "id": 0, "name": "Winifred Fischer" }, { "id": 1, "name": "Reynolds Whitney" }, { "id": 2, "name": "Deana Conway" } ], "greeting": "Hello, Kerr Bonner! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f6cd6958d97fc3951", "index": 838, "guid": "254c4076-03fb-4cc2-85af-4e1cb86e0b04", "isActive": true, "balance": "$1,436.83", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Townsend Patton", "gender": "male", "company": "EXOSPEED", "email": "townsendpatton@exospeed.com", "phone": "+1 (896) 496-2880", "address": "957 Elliott Walk, Dexter, Oregon, 1898", "about": "Quis et do proident ullamco exercitation consectetur ipsum eu aute irure officia fugiat ut. Excepteur elit fugiat laborum non commodo occaecat et veniam est reprehenderit laboris minim occaecat. Commodo duis commodo exercitation aliquip sit eu est officia minim commodo.\r\n", "registered": "2014-01-22T01:47:28-13:00", "latitude": -24.489991, "longitude": -90.065641, "tags": [ "ad", "cillum", "sunt", "eiusmod", "ex", "occaecat", "officia" ], "friends": [ { "id": 0, "name": "Pace Hahn" }, { "id": 1, "name": "Sosa Mcpherson" }, { "id": 2, "name": "Chavez Cabrera" } ], "greeting": "Hello, Townsend Patton! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fa5649fe1762f2b15", "index": 839, "guid": "662c60cb-b932-4efa-8878-40349d422f80", "isActive": false, "balance": "$2,885.34", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Joanne Sanchez", "gender": "female", "company": "GLUID", "email": "joannesanchez@gluid.com", "phone": "+1 (923) 500-3494", "address": "818 Hunts Lane, Chumuckla, Nevada, 9085", "about": "Commodo voluptate elit aute non mollit non pariatur aliqua in adipisicing commodo minim. Sint ullamco fugiat proident duis esse occaecat ad proident. Non minim do Lorem ut enim laborum. Sunt sint quis eu aute aliqua amet quis ipsum. Magna laboris proident cillum cillum qui cillum pariatur esse in irure do in.\r\n", "registered": "2014-09-23T03:59:22-12:00", "latitude": 83.289006, "longitude": 119.812001, "tags": [ "cupidatat", "velit", "est", "aliquip", "amet", "id", "ex" ], "friends": [ { "id": 0, "name": "Jeannette Davidson" }, { "id": 1, "name": "Ruthie Preston" }, { "id": 2, "name": "Gates Williams" } ], "greeting": "Hello, Joanne Sanchez! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f3361ca0a933e7d73", "index": 840, "guid": "326e0885-43f8-4e17-84b4-4513b5ceecc3", "isActive": true, "balance": "$2,587.74", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Maxwell Reilly", "gender": "male", "company": "QUILM", "email": "maxwellreilly@quilm.com", "phone": "+1 (831) 406-2511", "address": "334 Thames Street, Kipp, Minnesota, 4366", "about": "Laborum amet incididunt culpa exercitation. Est sunt culpa culpa mollit. Amet incididunt labore ea dolore pariatur culpa ex aliquip officia id quis cupidatat culpa reprehenderit. Occaecat non quis reprehenderit magna dolore.\r\n", "registered": "2014-01-18T16:33:24-13:00", "latitude": 15.271546, "longitude": 100.506519, "tags": [ "adipisicing", "ipsum", "magna", "culpa", "consectetur", "adipisicing", "voluptate" ], "friends": [ { "id": 0, "name": "Calhoun Jacobson" }, { "id": 1, "name": "Brigitte Jones" }, { "id": 2, "name": "David Bennett" } ], "greeting": "Hello, Maxwell Reilly! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1fabdeb6562aa4e4c5", "index": 841, "guid": "d139f6a1-8fb5-48e6-9f06-3467fa05133b", "isActive": true, "balance": "$3,219.49", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Fisher Quinn", "gender": "male", "company": "ENJOLA", "email": "fisherquinn@enjola.com", "phone": "+1 (862) 406-3084", "address": "286 Stockton Street, Alden, Missouri, 4690", "about": "Elit incididunt proident minim occaecat ad. Id velit eiusmod sit eu ullamco officia proident mollit. Do magna non in mollit reprehenderit mollit non proident. Aute irure culpa non velit ea dolore Lorem enim quis proident excepteur. Id ad irure dolore aliqua. Culpa qui occaecat qui ut commodo amet laboris do voluptate. Ea ad eu ea irure ut labore.\r\n", "registered": "2014-01-01T09:34:37-13:00", "latitude": -3.14407, "longitude": -91.041566, "tags": [ "eu", "ipsum", "exercitation", "adipisicing", "deserunt", "irure", "proident" ], "friends": [ { "id": 0, "name": "Jennie Zimmerman" }, { "id": 1, "name": "Misty Cruz" }, { "id": 2, "name": "Kara Moody" } ], "greeting": "Hello, Fisher Quinn! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f0e8b51d3fb2a7257", "index": 842, "guid": "fe4ce5bc-d225-4af2-be60-4b19a3be70ac", "isActive": true, "balance": "$1,188.50", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Christina Barton", "gender": "female", "company": "SPORTAN", "email": "christinabarton@sportan.com", "phone": "+1 (884) 479-2400", "address": "455 Pierrepont Place, Beyerville, Rhode Island, 933", "about": "Est dolore labore sit deserunt ad eu ipsum. Quis deserunt et nisi cupidatat reprehenderit amet nulla proident nostrud excepteur ut anim velit. Incididunt non dolor et consequat sit enim consectetur non voluptate voluptate irure tempor. Do nulla amet labore quis sit qui irure est. Do laboris sint mollit in enim sunt minim velit eu tempor ea velit. Cupidatat dolore amet dolore sint aliqua aliqua fugiat tempor.\r\n", "registered": "2014-07-20T17:52:36-12:00", "latitude": -39.221388, "longitude": 117.821535, "tags": [ "proident", "ad", "aute", "elit", "est", "veniam", "duis" ], "friends": [ { "id": 0, "name": "Trisha Ayala" }, { "id": 1, "name": "Randolph Workman" }, { "id": 2, "name": "Kelsey Hopper" } ], "greeting": "Hello, Christina Barton! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fed119af256f171ab", "index": 843, "guid": "c2b99997-a571-4741-afd6-a9643ad04bf4", "isActive": false, "balance": "$3,678.90", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Dina Turner", "gender": "female", "company": "OPTICON", "email": "dinaturner@opticon.com", "phone": "+1 (948) 411-3052", "address": "504 Regent Place, Wells, Florida, 3707", "about": "Pariatur occaecat pariatur occaecat ad est nisi dolore do laborum esse elit. Quis velit tempor ad aliquip aliqua et magna velit. Officia est aliquip nostrud ipsum excepteur amet mollit dolor incididunt occaecat qui et exercitation magna. Eiusmod ad ipsum officia sit Lorem nostrud. Dolor nisi ea id consectetur sit aute quis labore excepteur occaecat cupidatat. Dolor laborum sit dolor laboris laboris mollit labore sit elit in. Veniam ut fugiat ad officia in excepteur duis anim veniam nisi esse id mollit deserunt.\r\n", "registered": "2014-09-03T20:50:04-12:00", "latitude": -18.000846, "longitude": -55.244794, "tags": [ "cupidatat", "ut", "do", "occaecat", "voluptate", "consectetur", "culpa" ], "friends": [ { "id": 0, "name": "Olga Shaffer" }, { "id": 1, "name": "Earnestine Miranda" }, { "id": 2, "name": "Watts Cash" } ], "greeting": "Hello, Dina Turner! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f23d48cd68445eced", "index": 844, "guid": "f2dd0b7d-7f75-436a-8d14-7e7f99a99800", "isActive": false, "balance": "$2,338.67", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Hensley Randall", "gender": "male", "company": "AEORA", "email": "hensleyrandall@aeora.com", "phone": "+1 (955) 473-2568", "address": "216 Ridgecrest Terrace, Dargan, North Carolina, 3194", "about": "Ullamco ea consequat ullamco adipisicing duis sit elit Lorem Lorem pariatur dolor. Anim veniam eiusmod nulla ullamco tempor culpa. Anim non velit ullamco aute ea incididunt labore velit ad in Lorem labore. Sit adipisicing nisi ea et magna. Cupidatat minim nulla deserunt culpa ut. Do ipsum exercitation laborum nostrud in Lorem do proident. Est et veniam aliqua et proident.\r\n", "registered": "2014-04-06T13:15:27-12:00", "latitude": 20.05784, "longitude": 25.951691, "tags": [ "quis", "dolor", "id", "sit", "aliqua", "aliqua", "cillum" ], "friends": [ { "id": 0, "name": "Marlene Drake" }, { "id": 1, "name": "Hamilton Calderon" }, { "id": 2, "name": "Harris Mckinney" } ], "greeting": "Hello, Hensley Randall! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1facb5ea81da281699", "index": 845, "guid": "a8ed305f-bd7d-452b-81ca-a1bff0c279c3", "isActive": true, "balance": "$1,384.33", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Langley Estrada", "gender": "male", "company": "TURNLING", "email": "langleyestrada@turnling.com", "phone": "+1 (833) 535-2052", "address": "580 Cove Lane, Selma, New Hampshire, 7773", "about": "Irure id dolore enim elit exercitation labore adipisicing sunt Lorem aliqua cillum ut quis sunt. Adipisicing eiusmod sunt deserunt tempor veniam dolore non ipsum sit elit commodo dolor reprehenderit. Ut anim anim enim sit irure ea. Minim nisi voluptate enim cillum officia. Aliquip enim velit ad ea aute duis est nulla amet pariatur deserunt pariatur veniam. Ex ullamco dolor dolor aliqua id eiusmod.\r\n", "registered": "2014-04-27T03:03:30-12:00", "latitude": 1.52303, "longitude": -147.484881, "tags": [ "in", "eiusmod", "culpa", "exercitation", "qui", "consequat", "non" ], "friends": [ { "id": 0, "name": "Ernestine Weaver" }, { "id": 1, "name": "Barton Welch" }, { "id": 2, "name": "Pittman Durham" } ], "greeting": "Hello, Langley Estrada! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f3bf5043dde8a5357", "index": 846, "guid": "d645fb24-18b9-44da-a918-b96300b9018e", "isActive": false, "balance": "$1,006.84", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Lynette Woodward", "gender": "female", "company": "CINESANCT", "email": "lynettewoodward@cinesanct.com", "phone": "+1 (870) 461-2299", "address": "958 Willmohr Street, Oretta, Arkansas, 1947", "about": "Fugiat aliquip reprehenderit tempor do dolor eu. Ea enim tempor enim adipisicing minim mollit officia proident pariatur. Ullamco Lorem laboris velit dolor mollit dolor excepteur minim reprehenderit duis elit veniam.\r\n", "registered": "2014-03-08T21:16:36-13:00", "latitude": -34.568837, "longitude": -174.827417, "tags": [ "exercitation", "dolor", "enim", "pariatur", "cupidatat", "quis", "ullamco" ], "friends": [ { "id": 0, "name": "Jackie Fowler" }, { "id": 1, "name": "Sandra Holloway" }, { "id": 2, "name": "Hahn Britt" } ], "greeting": "Hello, Lynette Woodward! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fb7d31f0a05cc8975", "index": 847, "guid": "0437ae8f-6f34-4692-9915-0ed67b9f3233", "isActive": false, "balance": "$2,912.43", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Luisa Berg", "gender": "female", "company": "KEEG", "email": "luisaberg@keeg.com", "phone": "+1 (938) 489-3183", "address": "108 Homecrest Court, Cucumber, Iowa, 5310", "about": "Ipsum occaecat nisi cupidatat sunt non laboris laboris ea culpa sit do quis anim. Consectetur deserunt dolor nisi enim reprehenderit adipisicing tempor id. Qui anim officia id quis officia veniam laboris do.\r\n", "registered": "2014-02-13T16:10:02-13:00", "latitude": 10.254675, "longitude": -37.700803, "tags": [ "qui", "esse", "nulla", "veniam", "occaecat", "quis", "dolore" ], "friends": [ { "id": 0, "name": "Megan Moss" }, { "id": 1, "name": "Georgia Stark" }, { "id": 2, "name": "Lyons Mendoza" } ], "greeting": "Hello, Luisa Berg! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f648496a9782ee3f1", "index": 848, "guid": "b888e77d-3abc-4e40-b7b3-7feddafe1f2e", "isActive": true, "balance": "$2,779.09", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Wendy Harrison", "gender": "female", "company": "ZAPPIX", "email": "wendyharrison@zappix.com", "phone": "+1 (813) 466-2972", "address": "504 Strickland Avenue, Wikieup, Nebraska, 1500", "about": "Sunt enim ut anim excepteur Lorem proident nulla culpa. Velit fugiat anim non veniam anim consequat. Et minim culpa qui minim ut excepteur. Occaecat labore ex cupidatat fugiat commodo deserunt pariatur dolor adipisicing non. Non fugiat dolore Lorem id irure sunt incididunt deserunt in fugiat sint est aliquip.\r\n", "registered": "2014-06-11T00:30:14-12:00", "latitude": -66.262762, "longitude": 95.313125, "tags": [ "eu", "Lorem", "aliqua", "commodo", "laborum", "nostrud", "est" ], "friends": [ { "id": 0, "name": "Lynn Dickerson" }, { "id": 1, "name": "Witt Arnold" }, { "id": 2, "name": "Marilyn Rodriquez" } ], "greeting": "Hello, Wendy Harrison! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f100fb2a53d31da86", "index": 849, "guid": "1b7d8091-6538-49bb-a157-afcfb85970eb", "isActive": true, "balance": "$2,245.64", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Mercado Guy", "gender": "male", "company": "DANCITY", "email": "mercadoguy@dancity.com", "phone": "+1 (830) 483-2672", "address": "645 Dorchester Road, Sunbury, District Of Columbia, 6350", "about": "Exercitation nulla magna cillum irure aliquip nostrud deserunt pariatur. Cillum fugiat in pariatur ad tempor non ad esse qui ex labore dolore. Eiusmod eiusmod ea incididunt do dolor adipisicing enim ipsum.\r\n", "registered": "2014-07-20T18:54:16-12:00", "latitude": -45.302626, "longitude": 4.072683, "tags": [ "culpa", "elit", "in", "reprehenderit", "elit", "culpa", "aliqua" ], "friends": [ { "id": 0, "name": "Reba Vang" }, { "id": 1, "name": "Ethel Lynn" }, { "id": 2, "name": "Luna York" } ], "greeting": "Hello, Mercado Guy! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f181e0174c3b66534", "index": 850, "guid": "bf2c6aaa-4917-43ff-a62e-cbafcab65a12", "isActive": false, "balance": "$2,646.80", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Chen Erickson", "gender": "male", "company": "GREEKER", "email": "chenerickson@greeker.com", "phone": "+1 (847) 517-2361", "address": "935 Landis Court, Enetai, New Jersey, 2586", "about": "Reprehenderit in proident aliqua officia laboris in deserunt. Est pariatur eu officia voluptate excepteur adipisicing. In labore irure labore tempor officia tempor exercitation culpa culpa aute consequat eiusmod. Anim reprehenderit veniam aliquip dolore consectetur amet nostrud in non commodo aute qui deserunt sit. Ipsum aliquip quis deserunt anim incididunt do magna proident aute. Do enim deserunt in culpa in duis nisi amet amet proident laborum incididunt.\r\n", "registered": "2014-03-17T08:33:15-13:00", "latitude": 25.966077, "longitude": -71.65726, "tags": [ "ex", "sit", "officia", "non", "ea", "elit", "officia" ], "friends": [ { "id": 0, "name": "Julia Fields" }, { "id": 1, "name": "Bernard Aguilar" }, { "id": 2, "name": "Jimmie Gomez" } ], "greeting": "Hello, Chen Erickson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fed9b1ebf4911fd14", "index": 851, "guid": "17147e41-acde-4555-bd0e-33418ef2bf5d", "isActive": true, "balance": "$2,346.70", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Barnes Stewart", "gender": "male", "company": "WRAPTURE", "email": "barnesstewart@wrapture.com", "phone": "+1 (850) 407-3149", "address": "564 Gatling Place, Harviell, Palau, 5161", "about": "Cillum adipisicing velit nisi aliquip. Officia ea elit velit et minim tempor eiusmod pariatur aliquip Lorem sit qui. Ipsum magna ad aliquip officia labore velit cillum pariatur proident quis et dolore. Officia tempor aliqua velit sit veniam dolore id occaecat fugiat officia. Est elit excepteur cupidatat labore magna.\r\n", "registered": "2014-06-03T02:12:36-12:00", "latitude": 74.168457, "longitude": 86.827677, "tags": [ "reprehenderit", "exercitation", "ad", "id", "dolor", "in", "nostrud" ], "friends": [ { "id": 0, "name": "Katrina Foster" }, { "id": 1, "name": "Glass Pacheco" }, { "id": 2, "name": "Luz Rodgers" } ], "greeting": "Hello, Barnes Stewart! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1ff574128b1ccac510", "index": 852, "guid": "a154a183-bab3-44bd-b30e-8395970ec1e1", "isActive": false, "balance": "$2,672.00", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Wynn Meyers", "gender": "male", "company": "PORTALINE", "email": "wynnmeyers@portaline.com", "phone": "+1 (801) 448-2343", "address": "764 Bushwick Avenue, Eagleville, Puerto Rico, 4072", "about": "Aliqua proident anim ex elit occaecat commodo voluptate eu. In laboris tempor eu dolore occaecat duis eu culpa esse eiusmod sint ullamco qui. Cillum eiusmod officia cupidatat aute exercitation non fugiat incididunt velit irure dolore qui. Nostrud incididunt ullamco eiusmod cupidatat occaecat consectetur sit exercitation.\r\n", "registered": "2014-09-20T04:28:53-12:00", "latitude": -87.687611, "longitude": 95.782664, "tags": [ "amet", "pariatur", "et", "sunt", "aliquip", "et", "dolore" ], "friends": [ { "id": 0, "name": "Regina Roach" }, { "id": 1, "name": "Iris Gallegos" }, { "id": 2, "name": "Whitney Stokes" } ], "greeting": "Hello, Wynn Meyers! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f3fcba6232f6cb50d", "index": 853, "guid": "690ffd90-19be-4249-9004-21bbbdbd1263", "isActive": true, "balance": "$2,754.53", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Delacruz Marks", "gender": "male", "company": "GONKLE", "email": "delacruzmarks@gonkle.com", "phone": "+1 (949) 541-2689", "address": "800 Bragg Court, Groveville, California, 3684", "about": "Occaecat aliqua labore labore aliquip adipisicing incididunt sint. Laborum excepteur Lorem nisi ullamco tempor eiusmod laboris adipisicing excepteur ipsum ea occaecat deserunt. Aute id incididunt laboris sunt id enim non irure in Lorem. In sit cillum quis in magna aute aute consequat velit consequat. Magna do consequat qui Lorem voluptate.\r\n", "registered": "2014-06-11T13:03:31-12:00", "latitude": -25.698548, "longitude": 77.322558, "tags": [ "elit", "dolor", "magna", "sunt", "elit", "sit", "velit" ], "friends": [ { "id": 0, "name": "Nicole Woods" }, { "id": 1, "name": "Gardner Briggs" }, { "id": 2, "name": "Brown Serrano" } ], "greeting": "Hello, Delacruz Marks! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f4113ea2ca8b60a6d", "index": 854, "guid": "11741819-0cd4-452d-955c-85826488d559", "isActive": false, "balance": "$2,913.80", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Lowe Cooper", "gender": "male", "company": "BALUBA", "email": "lowecooper@baluba.com", "phone": "+1 (981) 449-2575", "address": "700 Lombardy Street, Gila, Vermont, 7416", "about": "Dolor non quis consequat id exercitation eu officia reprehenderit qui labore. Magna mollit consequat et minim quis ut anim. Do qui aliqua amet id est laborum occaecat officia veniam. Duis nostrud laboris irure eiusmod aute nostrud quis quis. Non commodo nostrud aliquip sunt exercitation ex. Veniam minim esse nostrud nostrud elit aute cupidatat anim cupidatat. Laborum do tempor excepteur ea voluptate laboris aliquip eu dolor incididunt.\r\n", "registered": "2014-04-19T00:36:47-12:00", "latitude": -4.736758, "longitude": 51.217723, "tags": [ "aute", "in", "ad", "est", "qui", "sunt", "non" ], "friends": [ { "id": 0, "name": "Finley Floyd" }, { "id": 1, "name": "Ella Stevenson" }, { "id": 2, "name": "Williams Sargent" } ], "greeting": "Hello, Lowe Cooper! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea1f6a04934c8c319718", "index": 855, "guid": "e519b886-1978-4f5c-80d1-0fa47cfebd68", "isActive": false, "balance": "$3,647.37", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Lorene Johnston", "gender": "female", "company": "EXTRAGEN", "email": "lorenejohnston@extragen.com", "phone": "+1 (954) 419-2417", "address": "594 Jerome Avenue, Albrightsville, Indiana, 6533", "about": "Laboris dolor cupidatat nulla consequat non aliqua qui dolor sit. Esse esse tempor ipsum do sunt aliquip. Pariatur culpa ut culpa aliquip sint ea qui. Nisi amet sit esse officia incididunt. Voluptate reprehenderit exercitation eu irure Lorem veniam ex id.\r\n", "registered": "2014-07-13T20:37:55-12:00", "latitude": 40.670529, "longitude": -90.625013, "tags": [ "mollit", "qui", "sint", "pariatur", "consectetur", "dolor", "duis" ], "friends": [ { "id": 0, "name": "Valentine Valenzuela" }, { "id": 1, "name": "Mccormick Richards" }, { "id": 2, "name": "Potts Duffy" } ], "greeting": "Hello, Lorene Johnston! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1fe85246cfea9249b0", "index": 856, "guid": "26158346-acf9-4245-92df-89a0410b84c4", "isActive": false, "balance": "$3,708.86", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Lenora Blanchard", "gender": "female", "company": "KAGGLE", "email": "lenorablanchard@kaggle.com", "phone": "+1 (850) 522-3749", "address": "859 Portal Street, Brogan, Illinois, 1258", "about": "Et consequat ipsum esse exercitation in nostrud elit. Nisi mollit minim officia nostrud enim magna incididunt eu do officia enim duis. Ex reprehenderit excepteur eu irure exercitation id nostrud qui dolore fugiat enim. Mollit amet excepteur ipsum ut proident elit sunt elit consectetur deserunt laborum elit consequat anim. Incididunt non non consequat sunt laborum anim proident ad nisi eu labore in consequat ullamco. Id occaecat dolor velit mollit labore ex commodo commodo sint.\r\n", "registered": "2014-09-02T23:33:32-12:00", "latitude": 53.675195, "longitude": 11.831945, "tags": [ "adipisicing", "sunt", "consectetur", "commodo", "ullamco", "excepteur", "Lorem" ], "friends": [ { "id": 0, "name": "Phelps Craig" }, { "id": 1, "name": "Watkins Byrd" }, { "id": 2, "name": "Melba White" } ], "greeting": "Hello, Lenora Blanchard! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fd42bd32416cdc34d", "index": 857, "guid": "6612bb08-8579-4dd1-bf19-b59a9da3d98b", "isActive": true, "balance": "$2,513.97", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Glenna Hensley", "gender": "female", "company": "CUIZINE", "email": "glennahensley@cuizine.com", "phone": "+1 (894) 563-3729", "address": "534 Canton Court, Wright, South Carolina, 2540", "about": "Mollit tempor consectetur deserunt Lorem consectetur ea culpa. Eu pariatur laboris nulla minim ea nostrud cupidatat irure sit consectetur sit. Ad reprehenderit aute duis incididunt. Exercitation culpa ut ut ullamco mollit cupidatat sint cupidatat ipsum sunt irure sunt est officia. Ad incididunt duis duis magna eu incididunt do et ullamco dolor. Ad officia veniam ex in esse aute enim cupidatat tempor dolore id voluptate pariatur. Duis enim deserunt deserunt cupidatat tempor magna proident aliquip cupidatat elit Lorem in ullamco veniam.\r\n", "registered": "2014-04-05T18:19:48-13:00", "latitude": 0.254402, "longitude": -89.55315, "tags": [ "veniam", "nostrud", "ex", "elit", "magna", "magna", "deserunt" ], "friends": [ { "id": 0, "name": "Josie Martinez" }, { "id": 1, "name": "Janis Richmond" }, { "id": 2, "name": "Nita Mcclure" } ], "greeting": "Hello, Glenna Hensley! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1fbc688c045c77d9f6", "index": 858, "guid": "487adbdc-e69b-4059-badb-3a5a1b37b2a7", "isActive": true, "balance": "$2,909.09", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Walsh Peters", "gender": "male", "company": "XUMONK", "email": "walshpeters@xumonk.com", "phone": "+1 (856) 482-2960", "address": "376 Willow Street, Fowlerville, American Samoa, 9363", "about": "Minim irure aliquip ad ea occaecat ullamco nulla aliqua velit aute sint. Ullamco enim consequat consectetur excepteur nulla irure pariatur mollit in duis reprehenderit in culpa. Ipsum labore consequat dolor qui laborum voluptate adipisicing. Esse quis et voluptate reprehenderit cupidatat culpa pariatur id ad magna enim Lorem.\r\n", "registered": "2014-08-21T14:13:00-12:00", "latitude": 26.051437, "longitude": -40.187177, "tags": [ "proident", "veniam", "reprehenderit", "fugiat", "labore", "reprehenderit", "ex" ], "friends": [ { "id": 0, "name": "Lauren Lara" }, { "id": 1, "name": "Dominguez Cleveland" }, { "id": 2, "name": "Wilkinson Howell" } ], "greeting": "Hello, Walsh Peters! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea1f6f103364ec38ceea", "index": 859, "guid": "8aa9b933-3dae-40f0-bc61-5d04156802b5", "isActive": false, "balance": "$3,445.83", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Giles Nielsen", "gender": "male", "company": "FUTURITY", "email": "gilesnielsen@futurity.com", "phone": "+1 (945) 565-3709", "address": "264 Sutter Avenue, Lutsen, Delaware, 1331", "about": "Laborum proident commodo adipisicing elit. Est aliquip adipisicing ipsum aute nostrud duis do eiusmod laboris. Ex amet irure consectetur laboris occaecat quis laborum magna do id. Labore exercitation mollit sunt do eiusmod. Velit consequat ad dolor Lorem minim officia ad Lorem voluptate minim laborum mollit aliquip.\r\n", "registered": "2014-07-08T03:18:22-12:00", "latitude": 73.058097, "longitude": -132.075647, "tags": [ "nostrud", "ad", "enim", "labore", "adipisicing", "veniam", "reprehenderit" ], "friends": [ { "id": 0, "name": "Tanner Rhodes" }, { "id": 1, "name": "Mccarthy Hartman" }, { "id": 2, "name": "Lynnette Travis" } ], "greeting": "Hello, Giles Nielsen! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea1f5707a31b9150f49b", "index": 860, "guid": "682284af-d85d-4221-95df-298d1289d738", "isActive": false, "balance": "$3,996.19", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Felecia Wilson", "gender": "female", "company": "PRIMORDIA", "email": "feleciawilson@primordia.com", "phone": "+1 (988) 489-3189", "address": "675 Conduit Boulevard, Como, Pennsylvania, 4856", "about": "Id culpa et minim ut duis aute dolore. Quis aute non consequat dolore ex esse qui exercitation incididunt eu laborum tempor sunt. Lorem exercitation nulla Lorem Lorem cillum. Et pariatur non mollit est esse ex officia esse. Ut reprehenderit do irure proident adipisicing. Id ad sit minim ex tempor.\r\n", "registered": "2014-01-06T23:52:50-13:00", "latitude": -26.137931, "longitude": 158.287368, "tags": [ "tempor", "commodo", "sunt", "exercitation", "qui", "et", "excepteur" ], "friends": [ { "id": 0, "name": "Wilcox Pace" }, { "id": 1, "name": "Manuela Sparks" }, { "id": 2, "name": "Carey Patterson" } ], "greeting": "Hello, Felecia Wilson! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2071190e540bcaa50c", "index": 861, "guid": "bbe3403d-6095-4386-87d1-5ad114c2f1e1", "isActive": true, "balance": "$3,003.57", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Terry Wood", "gender": "male", "company": "PYRAMAX", "email": "terrywood@pyramax.com", "phone": "+1 (899) 473-2956", "address": "169 Court Street, Eastvale, Georgia, 7061", "about": "Sit amet incididunt deserunt laborum aliquip occaecat. Cillum Lorem quis aute nostrud fugiat sunt mollit pariatur. Culpa sit Lorem do ut nulla laboris minim anim velit fugiat ut mollit ad incididunt. Esse ullamco veniam reprehenderit cupidatat adipisicing occaecat anim proident qui dolor laborum id.\r\n", "registered": "2014-08-08T22:40:47-12:00", "latitude": 31.778327, "longitude": 80.217316, "tags": [ "enim", "ullamco", "laborum", "ad", "cupidatat", "officia", "culpa" ], "friends": [ { "id": 0, "name": "Pratt Rodriguez" }, { "id": 1, "name": "Nancy Bates" }, { "id": 2, "name": "Lambert Shepard" } ], "greeting": "Hello, Terry Wood! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea207cf5b7864bc7b804", "index": 862, "guid": "3a2e0153-ca3a-49d0-8a5a-727c2256463a", "isActive": false, "balance": "$2,594.23", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Rasmussen Mercado", "gender": "male", "company": "KATAKANA", "email": "rasmussenmercado@katakana.com", "phone": "+1 (890) 512-3833", "address": "722 Lexington Avenue, Tooleville, North Dakota, 6711", "about": "Duis commodo veniam irure amet quis voluptate reprehenderit. Nulla officia est irure adipisicing ipsum sint ad. Aliqua ut exercitation reprehenderit reprehenderit consequat aliquip.\r\n", "registered": "2014-07-09T08:47:56-12:00", "latitude": 29.710682, "longitude": 85.097286, "tags": [ "ut", "ex", "sit", "cupidatat", "nisi", "amet", "non" ], "friends": [ { "id": 0, "name": "Lancaster Fitzpatrick" }, { "id": 1, "name": "Schmidt Hart" }, { "id": 2, "name": "Chandra Poole" } ], "greeting": "Hello, Rasmussen Mercado! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20dc097170893cb763", "index": 863, "guid": "95d60b34-1fbc-4c3f-b187-252eee561e0f", "isActive": true, "balance": "$1,645.23", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Sarah Franks", "gender": "female", "company": "ILLUMITY", "email": "sarahfranks@illumity.com", "phone": "+1 (939) 441-3464", "address": "962 Brighton Court, Lavalette, Louisiana, 2531", "about": "Nostrud mollit eu nostrud duis amet consequat minim ullamco esse nulla deserunt duis. Officia culpa aliqua sunt et. Nostrud ex sunt sint nisi reprehenderit et do incididunt fugiat laboris quis voluptate.\r\n", "registered": "2014-03-30T10:52:12-13:00", "latitude": 28.20563, "longitude": 120.589947, "tags": [ "ex", "id", "elit", "consequat", "eiusmod", "tempor", "in" ], "friends": [ { "id": 0, "name": "Reeves Watson" }, { "id": 1, "name": "Woodward Shaw" }, { "id": 2, "name": "Solis Smith" } ], "greeting": "Hello, Sarah Franks! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2074b5596c7c580bee", "index": 864, "guid": "e53649fa-0c95-4eb1-873f-e72503ea12f2", "isActive": false, "balance": "$3,910.15", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Briana Bell", "gender": "female", "company": "PARLEYNET", "email": "brianabell@parleynet.com", "phone": "+1 (949) 555-3123", "address": "922 Columbia Street, Crown, Northern Mariana Islands, 9365", "about": "Est ex deserunt nostrud cillum. Occaecat excepteur commodo nisi aliqua dolor et sunt sint sint id eu consectetur exercitation non. Consectetur incididunt in elit sit reprehenderit voluptate reprehenderit dolore est officia ut ad. Amet voluptate minim excepteur mollit commodo esse pariatur minim esse magna eiusmod esse. Anim quis laboris qui Lorem ea esse proident ea. Eiusmod voluptate velit et cillum. Incididunt id consectetur Lorem aliquip anim qui cupidatat excepteur velit enim occaecat.\r\n", "registered": "2014-02-23T23:06:40-13:00", "latitude": -26.195835, "longitude": -131.49965, "tags": [ "quis", "commodo", "cupidatat", "tempor", "culpa", "sint", "irure" ], "friends": [ { "id": 0, "name": "Chasity Simon" }, { "id": 1, "name": "Josefa Orr" }, { "id": 2, "name": "Ollie Page" } ], "greeting": "Hello, Briana Bell! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20ef8ab8b4d817995d", "index": 865, "guid": "c76fb701-5c2c-4c65-b043-0c10d6a320ad", "isActive": true, "balance": "$2,509.76", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Short Greene", "gender": "male", "company": "ASSURITY", "email": "shortgreene@assurity.com", "phone": "+1 (998) 560-3106", "address": "775 Butler Street, Katonah, Colorado, 2949", "about": "Consectetur aute quis qui quis aliquip irure. Adipisicing aute ipsum reprehenderit eiusmod consectetur esse culpa id. Consequat officia ea nisi fugiat exercitation. Qui nulla aliquip anim voluptate ea occaecat sunt proident incididunt nulla ullamco duis.\r\n", "registered": "2014-08-13T13:53:42-12:00", "latitude": -33.058295, "longitude": 11.884178, "tags": [ "nisi", "elit", "labore", "eu", "reprehenderit", "dolore", "proident" ], "friends": [ { "id": 0, "name": "Castillo Flowers" }, { "id": 1, "name": "Lula Spencer" }, { "id": 2, "name": "Knowles Booker" } ], "greeting": "Hello, Short Greene! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea202b096f6c67becc16", "index": 866, "guid": "1fa566c4-dd13-4268-b921-a6384dfaf1ea", "isActive": false, "balance": "$1,729.32", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Whitehead Vinson", "gender": "male", "company": "MEDMEX", "email": "whiteheadvinson@medmex.com", "phone": "+1 (876) 451-3499", "address": "805 Beekman Place, Greenock, Idaho, 8530", "about": "Quis pariatur anim laborum culpa elit deserunt deserunt proident laboris cupidatat reprehenderit. Exercitation minim culpa est laboris dolor aliqua. Eu nostrud pariatur eiusmod culpa anim non incididunt ipsum dolor. Laborum duis cupidatat commodo consequat veniam cupidatat ut magna labore labore labore reprehenderit. Amet sunt sint sint et nulla adipisicing ad.\r\n", "registered": "2014-09-20T06:02:53-12:00", "latitude": -27.153486, "longitude": -164.218869, "tags": [ "sit", "ea", "amet", "nisi", "quis", "deserunt", "qui" ], "friends": [ { "id": 0, "name": "Sadie Craft" }, { "id": 1, "name": "Jeannie Frazier" }, { "id": 2, "name": "Rosalind Guerrero" } ], "greeting": "Hello, Whitehead Vinson! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20447ca4fd404408c7", "index": 867, "guid": "121d69ef-5091-49d8-81b5-424012bd58a5", "isActive": false, "balance": "$2,130.92", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Harriet Francis", "gender": "female", "company": "VELOS", "email": "harrietfrancis@velos.com", "phone": "+1 (991) 428-2617", "address": "310 Dwight Street, Celeryville, Marshall Islands, 2141", "about": "Do quis qui ipsum officia qui voluptate amet duis pariatur officia. Nostrud ex anim qui eu adipisicing do ex adipisicing aliquip consequat. Irure nisi exercitation eiusmod pariatur laborum laboris adipisicing eiusmod veniam nulla dolore id sit.\r\n", "registered": "2014-07-08T17:53:37-12:00", "latitude": 82.496407, "longitude": -17.516693, "tags": [ "laborum", "cillum", "aliqua", "Lorem", "tempor", "sunt", "ex" ], "friends": [ { "id": 0, "name": "Jefferson Wiley" }, { "id": 1, "name": "Amy Kelly" }, { "id": 2, "name": "Paul Klein" } ], "greeting": "Hello, Harriet Francis! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2096220a6692350a1d", "index": 868, "guid": "5938cfa4-4931-4d0c-889c-c89c02e43afa", "isActive": false, "balance": "$3,367.86", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Corinne Mcbride", "gender": "female", "company": "SUSTENZA", "email": "corinnemcbride@sustenza.com", "phone": "+1 (824) 559-2366", "address": "638 Bragg Street, Venice, New York, 3281", "about": "Ullamco excepteur aliquip adipisicing deserunt sint aliqua do qui incididunt aute cupidatat cupidatat aliqua cupidatat. Deserunt exercitation est tempor elit quis nulla est do irure eu eiusmod nostrud. Do mollit tempor culpa qui nulla sint nostrud ea in pariatur eu. Duis et cupidatat eu tempor sint velit ut nostrud tempor aute. Tempor fugiat adipisicing aliqua pariatur aliqua in consectetur duis. Ipsum aute veniam fugiat dolore ipsum enim non qui est aliqua elit ad dolor culpa.\r\n", "registered": "2014-05-11T05:59:19-12:00", "latitude": 70.347494, "longitude": 134.363824, "tags": [ "pariatur", "ipsum", "quis", "voluptate", "reprehenderit", "incididunt", "fugiat" ], "friends": [ { "id": 0, "name": "Cynthia Carey" }, { "id": 1, "name": "Love Fry" }, { "id": 2, "name": "Bright Beasley" } ], "greeting": "Hello, Corinne Mcbride! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20e2fedc6961534897", "index": 869, "guid": "7fbf80fe-7337-4de8-a2e0-df6d92df3347", "isActive": false, "balance": "$3,084.64", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Russell Gaines", "gender": "male", "company": "GRAINSPOT", "email": "russellgaines@grainspot.com", "phone": "+1 (861) 490-2318", "address": "375 Gotham Avenue, Benson, Guam, 5053", "about": "Lorem aliquip et cupidatat exercitation officia voluptate. Dolor ea labore aliquip et. Sit duis aliquip adipisicing sunt laborum reprehenderit non aliqua excepteur.\r\n", "registered": "2014-02-16T23:40:09-13:00", "latitude": -15.211319, "longitude": -128.165761, "tags": [ "aute", "Lorem", "dolor", "voluptate", "laboris", "qui", "nostrud" ], "friends": [ { "id": 0, "name": "Elizabeth Warner" }, { "id": 1, "name": "Shannon Henry" }, { "id": 2, "name": "Celia Clark" } ], "greeting": "Hello, Russell Gaines! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20dbec26935d4f399b", "index": 870, "guid": "a8275591-67d0-49c2-b51c-3fd407b166e7", "isActive": false, "balance": "$3,045.88", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Thornton Baird", "gender": "male", "company": "QUALITEX", "email": "thorntonbaird@qualitex.com", "phone": "+1 (926) 526-3845", "address": "463 Rockaway Parkway, Stollings, Virgin Islands, 133", "about": "Aliquip consequat ipsum adipisicing occaecat commodo consequat non cillum adipisicing ea. Consectetur nostrud incididunt magna sunt nostrud magna duis cillum magna ex id ea. Aute magna cupidatat non voluptate aliqua aute irure dolor. Ea minim eiusmod eiusmod non consectetur sit eiusmod fugiat ea qui labore adipisicing labore mollit. Mollit do sunt nulla dolor reprehenderit ex mollit nisi est sit.\r\n", "registered": "2014-06-16T17:45:51-12:00", "latitude": 0.445041, "longitude": 124.018015, "tags": [ "esse", "fugiat", "quis", "consequat", "ut", "culpa", "eiusmod" ], "friends": [ { "id": 0, "name": "Kirk Noel" }, { "id": 1, "name": "Rowena Dunlap" }, { "id": 2, "name": "Abbott Kramer" } ], "greeting": "Hello, Thornton Baird! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20c3de1090b4046f1d", "index": 871, "guid": "3eca869e-0cb8-4a5c-91e4-635c97111e52", "isActive": true, "balance": "$1,052.16", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Carmela Hubbard", "gender": "female", "company": "ZBOO", "email": "carmelahubbard@zboo.com", "phone": "+1 (803) 437-3094", "address": "102 Powers Street, Nettie, Massachusetts, 8040", "about": "Aliqua cupidatat aliquip sit ex adipisicing culpa ex esse labore labore exercitation. Laborum fugiat amet enim Lorem minim veniam nulla voluptate esse sunt. Culpa id ipsum id quis eu ad adipisicing velit. Sit Lorem nulla reprehenderit ad ex.\r\n", "registered": "2014-04-26T07:34:44-12:00", "latitude": 49.532101, "longitude": 154.947185, "tags": [ "in", "incididunt", "aute", "sit", "non", "non", "ex" ], "friends": [ { "id": 0, "name": "Burch Petersen" }, { "id": 1, "name": "Rita Ford" }, { "id": 2, "name": "Huff Buck" } ], "greeting": "Hello, Carmela Hubbard! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2017c47f991e936997", "index": 872, "guid": "35e314a3-f030-48e4-862b-9a5698cea6bf", "isActive": false, "balance": "$2,780.35", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Nadia Harrington", "gender": "female", "company": "GOKO", "email": "nadiaharrington@goko.com", "phone": "+1 (907) 449-2083", "address": "435 Gates Avenue, Dante, Utah, 7293", "about": "Amet excepteur Lorem ea culpa duis occaecat sint pariatur mollit pariatur amet laboris nisi. Eu exercitation enim non exercitation consectetur. Nisi eu amet do dolore sunt deserunt elit aliquip amet culpa nisi adipisicing occaecat amet. Proident culpa reprehenderit culpa sint laboris non consequat dolor reprehenderit dolor. Minim sunt aliqua nisi enim anim proident excepteur. Consequat do incididunt laboris dolore reprehenderit proident sunt laborum minim non do. Eiusmod tempor laboris reprehenderit ut.\r\n", "registered": "2014-07-28T17:02:29-12:00", "latitude": -57.486144, "longitude": 56.528935, "tags": [ "minim", "est", "pariatur", "ex", "laboris", "aliquip", "cillum" ], "friends": [ { "id": 0, "name": "Trujillo Johns" }, { "id": 1, "name": "Geneva Montoya" }, { "id": 2, "name": "Kristin Berger" } ], "greeting": "Hello, Nadia Harrington! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea202465b52effedd644", "index": 873, "guid": "af1b2b74-f6eb-495b-a9fa-42af76315d93", "isActive": true, "balance": "$2,614.35", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Sofia Osborne", "gender": "female", "company": "TALKALOT", "email": "sofiaosborne@talkalot.com", "phone": "+1 (817) 597-2711", "address": "571 Sullivan Street, Nord, Montana, 2635", "about": "Aute laborum qui Lorem id laborum culpa deserunt. Dolor irure sunt veniam tempor ex eiusmod incididunt nostrud. Duis ipsum magna et aliqua ea.\r\n", "registered": "2014-05-09T14:33:09-12:00", "latitude": 39.752069, "longitude": -161.054089, "tags": [ "laboris", "dolore", "do", "deserunt", "sunt", "excepteur", "sit" ], "friends": [ { "id": 0, "name": "Estela Mathis" }, { "id": 1, "name": "Mcfarland Melton" }, { "id": 2, "name": "Strong Eaton" } ], "greeting": "Hello, Sofia Osborne! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20daa45a1056ff6fa4", "index": 874, "guid": "e5db5e01-13e5-4416-b1fe-d0ec3880d8b9", "isActive": false, "balance": "$1,826.96", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Lloyd Mays", "gender": "male", "company": "LYRIA", "email": "lloydmays@lyria.com", "phone": "+1 (995) 416-3087", "address": "548 Mersereau Court, Duryea, Wisconsin, 3335", "about": "Consequat culpa mollit velit aliqua veniam esse Lorem ullamco cupidatat cupidatat nulla magna commodo. Veniam in cillum enim fugiat. Dolore nulla ut veniam fugiat.\r\n", "registered": "2014-01-19T01:06:59-13:00", "latitude": -58.018457, "longitude": 51.800111, "tags": [ "labore", "sint", "veniam", "tempor", "cupidatat", "laborum", "veniam" ], "friends": [ { "id": 0, "name": "Doris Gill" }, { "id": 1, "name": "Cameron Wheeler" }, { "id": 2, "name": "Hammond Carr" } ], "greeting": "Hello, Lloyd Mays! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2037c354e98deab151", "index": 875, "guid": "2e2e6690-4c26-4221-b74d-968577500574", "isActive": false, "balance": "$3,745.12", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Nellie Wolfe", "gender": "female", "company": "KENEGY", "email": "nelliewolfe@kenegy.com", "phone": "+1 (900) 485-2021", "address": "780 Balfour Place, Vincent, Maine, 614", "about": "Voluptate elit irure deserunt qui reprehenderit aute deserunt incididunt. Incididunt minim anim laborum occaecat aute. Do ipsum occaecat quis occaecat tempor ad pariatur magna sint ullamco qui magna.\r\n", "registered": "2014-01-27T20:30:03-13:00", "latitude": 59.107981, "longitude": 114.292774, "tags": [ "ut", "excepteur", "et", "ullamco", "pariatur", "tempor", "enim" ], "friends": [ { "id": 0, "name": "Carol Huber" }, { "id": 1, "name": "Gracie Pierce" }, { "id": 2, "name": "Stephanie Merritt" } ], "greeting": "Hello, Nellie Wolfe! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2073e626ef650c5a21", "index": 876, "guid": "22c20d80-e692-4329-adb1-8340dc6d645d", "isActive": true, "balance": "$3,160.43", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Heather Aguirre", "gender": "female", "company": "ZYTREX", "email": "heatheraguirre@zytrex.com", "phone": "+1 (859) 402-2459", "address": "535 Oriental Boulevard, Ebro, Virginia, 8861", "about": "Ipsum sunt cillum occaecat ea cillum officia Lorem. Amet enim sunt ipsum esse voluptate do. Tempor adipisicing ut ea commodo exercitation officia. Laboris ut cillum amet do deserunt eiusmod culpa. Nisi duis adipisicing sunt nisi sit incididunt dolor laborum id ad nostrud qui culpa in.\r\n", "registered": "2014-02-03T14:51:48-13:00", "latitude": -63.195022, "longitude": -152.186581, "tags": [ "nulla", "nulla", "excepteur", "exercitation", "dolor", "reprehenderit", "aliquip" ], "friends": [ { "id": 0, "name": "Kristy Luna" }, { "id": 1, "name": "Riddle Bowen" }, { "id": 2, "name": "Serrano Mueller" } ], "greeting": "Hello, Heather Aguirre! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea208fd16edccb360800", "index": 877, "guid": "e349ebca-2e08-40ec-9459-c2b2d20dec12", "isActive": false, "balance": "$2,404.35", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Holly Duncan", "gender": "female", "company": "ANIVET", "email": "hollyduncan@anivet.com", "phone": "+1 (873) 483-3498", "address": "161 Schenck Street, Salunga, Kentucky, 6410", "about": "Lorem commodo deserunt Lorem voluptate irure exercitation ad commodo magna officia eiusmod. Ullamco do amet eu minim amet in. Sunt cillum laborum est cupidatat cupidatat elit ut velit. Quis eu culpa dolore enim. Deserunt consequat eiusmod in velit nulla dolore irure tempor sint pariatur. Ea sit laboris dolore elit pariatur mollit ea ullamco. Labore aute quis consectetur adipisicing nostrud laborum non deserunt aliqua aute.\r\n", "registered": "2014-03-01T05:33:31-13:00", "latitude": 25.962535, "longitude": -178.123021, "tags": [ "dolore", "mollit", "pariatur", "reprehenderit", "irure", "sit", "veniam" ], "friends": [ { "id": 0, "name": "Valenzuela Burt" }, { "id": 1, "name": "Maryellen Saunders" }, { "id": 2, "name": "Fletcher Caldwell" } ], "greeting": "Hello, Holly Duncan! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20976eb47f36d18932", "index": 878, "guid": "729a20fa-1109-4a16-84e3-cc8b0cdf7cdd", "isActive": false, "balance": "$2,624.84", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Sampson House", "gender": "male", "company": "NETAGY", "email": "sampsonhouse@netagy.com", "phone": "+1 (978) 545-2880", "address": "533 Garfield Place, Talpa, Connecticut, 7100", "about": "Laboris dolor duis anim ullamco enim ea. Duis sunt aute non nostrud culpa ullamco est sint laboris adipisicing quis ex. Dolor officia aliquip sit commodo pariatur. Aute aliquip duis minim elit Lorem enim sunt quis pariatur Lorem et ullamco eu do. Eu culpa laboris consequat quis minim consectetur magna laborum esse consectetur est labore anim dolore.\r\n", "registered": "2014-07-29T15:01:48-12:00", "latitude": -88.98271, "longitude": -41.450899, "tags": [ "id", "pariatur", "dolor", "id", "exercitation", "irure", "pariatur" ], "friends": [ { "id": 0, "name": "Dolly Dudley" }, { "id": 1, "name": "Smith Wynn" }, { "id": 2, "name": "Carlson Wilkinson" } ], "greeting": "Hello, Sampson House! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2067847d6adb42a1e1", "index": 879, "guid": "fcfd5269-5997-4ef3-9cf9-37d60813ab2e", "isActive": false, "balance": "$1,011.48", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Spencer Bailey", "gender": "male", "company": "TERASCAPE", "email": "spencerbailey@terascape.com", "phone": "+1 (801) 479-3114", "address": "808 Ocean Court, Steinhatchee, Mississippi, 6811", "about": "Cillum eiusmod quis laboris ad sunt proident elit. Nostrud nulla laborum fugiat do officia ullamco do quis commodo mollit proident ea velit. Culpa est ad enim laborum Lorem pariatur ad magna eu esse proident sunt non. Ex deserunt duis ex sunt reprehenderit pariatur pariatur sint laboris sit nulla. Amet excepteur cillum velit labore fugiat deserunt esse culpa veniam exercitation commodo anim Lorem. Aliqua dolore occaecat aute sunt deserunt. Fugiat esse adipisicing commodo consequat sit ullamco.\r\n", "registered": "2014-01-08T04:43:11-13:00", "latitude": -59.612504, "longitude": 48.902484, "tags": [ "magna", "velit", "in", "in", "sunt", "nostrud", "eu" ], "friends": [ { "id": 0, "name": "Jodie Barry" }, { "id": 1, "name": "Toni Atkins" }, { "id": 2, "name": "Goff Donaldson" } ], "greeting": "Hello, Spencer Bailey! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2097a9721c73c8160b", "index": 880, "guid": "39ba8457-b37c-4c6a-a91b-f01a793c64ac", "isActive": true, "balance": "$1,748.28", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Blevins Hutchinson", "gender": "male", "company": "GLOBOIL", "email": "blevinshutchinson@globoil.com", "phone": "+1 (911) 447-2911", "address": "122 Perry Terrace, Mathews, Washington, 9854", "about": "Pariatur quis labore laboris in labore laborum ad elit laboris aliqua fugiat aliqua dolor. Sit deserunt pariatur sint amet eiusmod. Nisi aliquip cupidatat non labore. Velit est esse reprehenderit elit officia ipsum excepteur do incididunt. Esse eu et qui nostrud proident officia cupidatat sint laboris dolor consequat sit. Culpa laborum minim aliquip tempor. Ipsum deserunt voluptate fugiat voluptate eu esse adipisicing aliquip tempor.\r\n", "registered": "2014-01-21T21:11:27-13:00", "latitude": -4.01469, "longitude": 137.318532, "tags": [ "mollit", "sint", "non", "sit", "commodo", "ut", "elit" ], "friends": [ { "id": 0, "name": "Estella Decker" }, { "id": 1, "name": "Candy Cochran" }, { "id": 2, "name": "George Mckay" } ], "greeting": "Hello, Blevins Hutchinson! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea203323e50e530c8207", "index": 881, "guid": "25cb83e1-cb6a-446e-9eac-97f3742eb2ec", "isActive": false, "balance": "$3,971.72", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Becker Simpson", "gender": "male", "company": "DIGIRANG", "email": "beckersimpson@digirang.com", "phone": "+1 (846) 572-2951", "address": "849 Farragut Road, Greenwich, Tennessee, 6689", "about": "Incididunt qui cupidatat qui aliquip aute. Commodo laborum nisi in minim labore ut Lorem fugiat anim deserunt commodo veniam id adipisicing. Dolore voluptate mollit quis ut consectetur mollit commodo proident esse. Tempor minim commodo ad consequat dolore non consectetur labore. In id incididunt nisi ex ea velit quis ex ad ut ad.\r\n", "registered": "2014-08-08T19:36:46-12:00", "latitude": 71.470558, "longitude": -177.770683, "tags": [ "consequat", "incididunt", "dolore", "pariatur", "Lorem", "proident", "fugiat" ], "friends": [ { "id": 0, "name": "Bentley Everett" }, { "id": 1, "name": "Hogan Delgado" }, { "id": 2, "name": "Ross Mcgowan" } ], "greeting": "Hello, Becker Simpson! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea203edb9413814538d4", "index": 882, "guid": "0c38c454-80d9-427c-83b6-53a0819498bf", "isActive": true, "balance": "$3,283.90", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Tommie Fleming", "gender": "female", "company": "MACRONAUT", "email": "tommiefleming@macronaut.com", "phone": "+1 (840) 499-2546", "address": "738 Moore Place, Rosedale, Alabama, 6384", "about": "Sunt qui elit culpa aliqua adipisicing cupidatat laborum fugiat ut excepteur. Dolor labore commodo consequat irure est sit commodo laborum incididunt aliqua Lorem do. Sit sunt consectetur dolore magna enim eu dolor culpa minim ullamco eu sint commodo. Et eiusmod esse qui voluptate voluptate est.\r\n", "registered": "2014-08-24T14:51:20-12:00", "latitude": 13.788192, "longitude": -20.500928, "tags": [ "qui", "exercitation", "aute", "in", "id", "in", "ut" ], "friends": [ { "id": 0, "name": "Dejesus Burton" }, { "id": 1, "name": "Mclean Graves" }, { "id": 2, "name": "Bishop Potts" } ], "greeting": "Hello, Tommie Fleming! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2018d1f6bc8753dc6c", "index": 883, "guid": "5f6694dd-e7c8-4b8a-8e50-6266bc562e1b", "isActive": true, "balance": "$3,904.77", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Traci Holland", "gender": "female", "company": "EXPOSA", "email": "traciholland@exposa.com", "phone": "+1 (810) 435-2646", "address": "524 Bliss Terrace, Corriganville, Ohio, 356", "about": "Ut ad in anim elit enim sint commodo culpa. Incididunt pariatur non laboris nisi ad. Culpa voluptate quis elit pariatur ipsum ad incididunt. Ipsum minim irure qui non qui dolor elit commodo dolore aliqua. Excepteur dolore consectetur irure esse eiusmod velit labore nulla quis aliquip irure. Exercitation magna ad aute tempor sit. Dolor voluptate esse id duis.\r\n", "registered": "2014-08-13T15:10:23-12:00", "latitude": 79.152516, "longitude": 137.361882, "tags": [ "occaecat", "laborum", "veniam", "elit", "in", "excepteur", "non" ], "friends": [ { "id": 0, "name": "Larson Hewitt" }, { "id": 1, "name": "Gregory Porter" }, { "id": 2, "name": "Coleman Callahan" } ], "greeting": "Hello, Traci Holland! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2065948db393fbd577", "index": 884, "guid": "daa88ba7-08fa-4ce7-9b0b-698b9e892056", "isActive": true, "balance": "$2,409.83", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Bowers Christensen", "gender": "male", "company": "EXOVENT", "email": "bowerschristensen@exovent.com", "phone": "+1 (953) 584-3566", "address": "235 Cedar Street, Snyderville, Hawaii, 4459", "about": "Quis fugiat reprehenderit aute consequat laboris fugiat aute sit Lorem irure id labore ea sint. Esse commodo pariatur labore qui nulla elit velit deserunt commodo. Fugiat non cupidatat fugiat enim. Enim reprehenderit ullamco qui adipisicing officia excepteur aliqua. Quis commodo ullamco laboris laborum ut exercitation duis tempor pariatur nulla occaecat non officia. Duis ea est incididunt cillum id quis tempor aliqua dolor minim ad cupidatat.\r\n", "registered": "2014-09-12T20:00:01-12:00", "latitude": -62.312965, "longitude": 112.287026, "tags": [ "veniam", "irure", "deserunt", "commodo", "nulla", "est", "ullamco" ], "friends": [ { "id": 0, "name": "Ingrid Salazar" }, { "id": 1, "name": "Tracy Emerson" }, { "id": 2, "name": "Liza Velasquez" } ], "greeting": "Hello, Bowers Christensen! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20eaa19dbabdb21f0f", "index": 885, "guid": "d2407938-f145-42d4-850b-0ebced0c11da", "isActive": true, "balance": "$3,914.29", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Katy Chapman", "gender": "female", "company": "KROG", "email": "katychapman@krog.com", "phone": "+1 (915) 515-2622", "address": "588 Montauk Court, Strykersville, New Mexico, 3774", "about": "Mollit ad do culpa dolor aliquip. Labore id eiusmod id nulla adipisicing quis magna ullamco et in eiusmod. Eiusmod reprehenderit enim velit anim esse commodo dolore deserunt reprehenderit magna in sit non occaecat. Nisi sint duis quis anim.\r\n", "registered": "2014-05-17T06:42:39-12:00", "latitude": -4.075771, "longitude": 132.645667, "tags": [ "et", "deserunt", "dolore", "ad", "tempor", "nisi", "in" ], "friends": [ { "id": 0, "name": "Flora Jennings" }, { "id": 1, "name": "Kim Logan" }, { "id": 2, "name": "Josefina Sloan" } ], "greeting": "Hello, Katy Chapman! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2067002fd28af74c4b", "index": 886, "guid": "372287d7-8b27-431d-94a1-7631aadc09b5", "isActive": true, "balance": "$1,088.50", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Ursula Lamb", "gender": "female", "company": "FIREWAX", "email": "ursulalamb@firewax.com", "phone": "+1 (811) 586-3243", "address": "527 Banker Street, Whitestone, Maryland, 6551", "about": "Fugiat est voluptate do esse ad consectetur veniam dolor adipisicing. Cupidatat aliquip velit deserunt duis veniam cillum aliquip ad consequat. Quis proident labore mollit sunt nisi nulla non. Sunt reprehenderit proident qui qui sint nulla anim occaecat reprehenderit pariatur. Fugiat tempor pariatur elit deserunt excepteur.\r\n", "registered": "2014-03-15T05:37:17-13:00", "latitude": 53.982769, "longitude": 29.108237, "tags": [ "ullamco", "qui", "non", "consequat", "incididunt", "sit", "id" ], "friends": [ { "id": 0, "name": "Schroeder Jensen" }, { "id": 1, "name": "Juanita Carrillo" }, { "id": 2, "name": "Eleanor Mccarthy" } ], "greeting": "Hello, Ursula Lamb! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea203f541eafa5591000", "index": 887, "guid": "052e3e4e-f1d2-4df5-810e-b7aa814b2764", "isActive": false, "balance": "$2,950.22", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Solomon Salas", "gender": "male", "company": "SENMEI", "email": "solomonsalas@senmei.com", "phone": "+1 (890) 561-2844", "address": "940 Dare Court, Conestoga, Alaska, 692", "about": "Excepteur veniam culpa id nisi et et dolor qui deserunt tempor. Sunt sit commodo cupidatat ut tempor fugiat. Eu nulla fugiat tempor tempor cupidatat sint reprehenderit. Qui labore cupidatat proident exercitation commodo pariatur nulla quis cillum duis laborum reprehenderit ipsum sint. Consequat laborum eu ea aliqua Lorem. Ea duis cupidatat quis et. Tempor pariatur in cillum in laboris quis consequat aliqua Lorem enim elit excepteur officia cupidatat.\r\n", "registered": "2014-02-25T13:39:28-13:00", "latitude": 20.83303, "longitude": -22.594568, "tags": [ "laboris", "ipsum", "qui", "nisi", "qui", "magna", "non" ], "friends": [ { "id": 0, "name": "Roy Castillo" }, { "id": 1, "name": "Rebekah Tanner" }, { "id": 2, "name": "Allen Chase" } ], "greeting": "Hello, Solomon Salas! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20f1c534a76f2af37b", "index": 888, "guid": "c27cd305-1089-493e-8df9-1603172e77e3", "isActive": false, "balance": "$1,519.33", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Maynard Suarez", "gender": "male", "company": "ORONOKO", "email": "maynardsuarez@oronoko.com", "phone": "+1 (973) 598-3045", "address": "577 National Drive, Drytown, Arizona, 5765", "about": "Fugiat voluptate ex deserunt proident officia proident aute non cillum aliqua est ex fugiat. Consequat aute ex eu id nulla adipisicing veniam ad non quis tempor esse et. Veniam anim ad tempor cillum. Id nostrud consequat voluptate aute ullamco amet. Dolor ipsum cillum non eiusmod aute.\r\n", "registered": "2014-03-09T20:16:15-13:00", "latitude": 66.028623, "longitude": -1.224447, "tags": [ "irure", "fugiat", "proident", "dolore", "laborum", "incididunt", "velit" ], "friends": [ { "id": 0, "name": "Jewell Leonard" }, { "id": 1, "name": "Dean Castro" }, { "id": 2, "name": "Lilian Burks" } ], "greeting": "Hello, Maynard Suarez! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20bc8c037b9815e133", "index": 889, "guid": "4252758a-75bb-4fcc-8bd5-f404fdf68d9c", "isActive": true, "balance": "$3,406.56", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Selena Perry", "gender": "female", "company": "OPTICALL", "email": "selenaperry@opticall.com", "phone": "+1 (800) 400-3750", "address": "931 Hendrickson Street, Leola, Federated States Of Micronesia, 2767", "about": "Nostrud elit do ullamco duis ut pariatur. Duis incididunt consequat incididunt consequat aute. Nisi aliqua consequat et in eu. Cillum tempor ex sit ut fugiat aute.\r\n", "registered": "2014-07-03T08:11:04-12:00", "latitude": -77.632228, "longitude": -15.325379, "tags": [ "laborum", "tempor", "ut", "ex", "anim", "laboris", "occaecat" ], "friends": [ { "id": 0, "name": "Mae Hansen" }, { "id": 1, "name": "Deann Avery" }, { "id": 2, "name": "Harmon Holman" } ], "greeting": "Hello, Selena Perry! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea207ca15c3a06b7ae7b", "index": 890, "guid": "1776456c-cb48-4ee8-9514-360dd37c6923", "isActive": true, "balance": "$1,441.11", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Franco Boyle", "gender": "male", "company": "UNQ", "email": "francoboyle@unq.com", "phone": "+1 (914) 520-3745", "address": "971 Highland Boulevard, Chalfant, Oklahoma, 3817", "about": "Tempor velit laboris proident quis labore eiusmod quis. Laboris aliquip sit tempor id ipsum occaecat commodo dolor adipisicing aliquip sit ex ullamco. Occaecat eiusmod excepteur ea magna exercitation commodo. Esse dolor sit excepteur in velit esse consequat sunt elit ut. Mollit cillum laborum amet aute eu aute eiusmod Lorem ea quis ad exercitation.\r\n", "registered": "2014-08-29T01:09:10-12:00", "latitude": -26.16716, "longitude": -137.41561, "tags": [ "ipsum", "non", "sint", "irure", "amet", "magna", "duis" ], "friends": [ { "id": 0, "name": "Madden Bauer" }, { "id": 1, "name": "Gross Avila" }, { "id": 2, "name": "Rush Vazquez" } ], "greeting": "Hello, Franco Boyle! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea208f0ef5fa0dcc170f", "index": 891, "guid": "85c6c122-8d40-49d5-ac1d-13357f0ed93f", "isActive": false, "balance": "$3,299.89", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Drake Tucker", "gender": "male", "company": "PRINTSPAN", "email": "draketucker@printspan.com", "phone": "+1 (993) 475-3284", "address": "302 Bartlett Street, Marysville, Michigan, 9572", "about": "Ut anim irure ipsum dolor labore ex dolore laboris veniam dolore. Nulla ad tempor excepteur pariatur ea minim. Laborum laboris cillum cupidatat ipsum sint laborum et sint occaecat. Labore nisi id laborum occaecat eu elit magna aliquip officia. Elit aliqua occaecat tempor voluptate do deserunt exercitation ex sunt nulla ipsum sint sunt proident.\r\n", "registered": "2014-08-13T09:22:42-12:00", "latitude": 23.664641, "longitude": -150.539033, "tags": [ "in", "sit", "adipisicing", "velit", "aute", "reprehenderit", "proident" ], "friends": [ { "id": 0, "name": "Nichole Swanson" }, { "id": 1, "name": "Ginger Miles" }, { "id": 2, "name": "Lane Hays" } ], "greeting": "Hello, Drake Tucker! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20b453410e88349383", "index": 892, "guid": "7bb3f953-bb34-4a50-816d-e5ef9f4af81d", "isActive": false, "balance": "$3,760.53", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Queen Whitley", "gender": "female", "company": "EARWAX", "email": "queenwhitley@earwax.com", "phone": "+1 (940) 593-3631", "address": "255 Manhattan Court, Tivoli, Kansas, 7175", "about": "Est quis cupidatat amet enim duis consequat aliqua nisi velit et. Veniam commodo culpa dolore veniam. In consequat dolor in laborum consequat elit deserunt ex duis est excepteur Lorem sint. Est veniam cillum duis ullamco ullamco excepteur dolor esse fugiat officia excepteur aliquip adipisicing qui.\r\n", "registered": "2014-05-17T16:11:29-12:00", "latitude": 40.34729, "longitude": 23.710961, "tags": [ "aute", "nulla", "proident", "sunt", "laborum", "reprehenderit", "anim" ], "friends": [ { "id": 0, "name": "Clemons Stone" }, { "id": 1, "name": "Levy Villarreal" }, { "id": 2, "name": "June Howe" } ], "greeting": "Hello, Queen Whitley! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2023aba6eab8f232e5", "index": 893, "guid": "2310afb8-971f-4d47-8d01-c161a3103e8e", "isActive": false, "balance": "$1,060.57", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Edna Keith", "gender": "female", "company": "BIZMATIC", "email": "ednakeith@bizmatic.com", "phone": "+1 (921) 433-3752", "address": "937 Kingsland Avenue, Garfield, South Dakota, 3528", "about": "Aliqua laborum laborum et veniam. Excepteur minim labore excepteur non. Elit nulla exercitation ex nisi elit ex est incididunt dolor sint consequat quis adipisicing. Irure quis consectetur labore laborum cupidatat dolor cillum ex nisi excepteur labore reprehenderit. Elit fugiat elit ea deserunt. Lorem consequat officia ea est anim enim do laboris culpa quis laboris.\r\n", "registered": "2014-04-02T10:56:01-13:00", "latitude": 66.725869, "longitude": -56.649898, "tags": [ "do", "ea", "proident", "consectetur", "pariatur", "et", "nostrud" ], "friends": [ { "id": 0, "name": "Yang Mayo" }, { "id": 1, "name": "Keith Rosales" }, { "id": 2, "name": "Suzette Mason" } ], "greeting": "Hello, Edna Keith! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20dcb3c5026eec92ed", "index": 894, "guid": "dc4c481a-54be-4503-b306-fd944ee9b761", "isActive": false, "balance": "$1,246.15", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Cheri Warren", "gender": "female", "company": "ENDICIL", "email": "cheriwarren@endicil.com", "phone": "+1 (897) 420-3332", "address": "349 Grand Avenue, Gorham, West Virginia, 4209", "about": "Incididunt aliquip id excepteur cupidatat proident ad ullamco. Pariatur amet veniam labore officia ut. Tempor eu officia eu esse velit aute elit officia. Mollit id tempor excepteur qui Lorem est ad laborum commodo esse laborum cillum do id. Ullamco laboris culpa laboris ad aliquip exercitation in nostrud nostrud officia.\r\n", "registered": "2014-02-26T16:27:21-13:00", "latitude": 41.570529, "longitude": 21.059179, "tags": [ "excepteur", "ea", "eiusmod", "et", "cupidatat", "consequat", "ad" ], "friends": [ { "id": 0, "name": "Hodge Barlow" }, { "id": 1, "name": "Coleen Davis" }, { "id": 2, "name": "Margret Solis" } ], "greeting": "Hello, Cheri Warren! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20a1169bc3853762cc", "index": 895, "guid": "eb9b806d-015a-49d9-88fa-a1e911005ddd", "isActive": false, "balance": "$2,829.64", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Kelley Riggs", "gender": "female", "company": "ZOLAR", "email": "kelleyriggs@zolar.com", "phone": "+1 (818) 470-3044", "address": "341 Grand Street, Floris, Texas, 7374", "about": "Aliquip ipsum deserunt veniam nostrud esse magna amet ad labore aute. Consequat id ad nostrud id id nostrud sunt nostrud quis. Non labore irure id cupidatat aute. Aute do esse sint sint aliqua mollit irure non nisi. In ut aliquip labore qui reprehenderit officia magna et commodo magna tempor nulla est. Est anim laborum incididunt ad ea in nulla velit tempor.\r\n", "registered": "2014-06-21T18:53:58-12:00", "latitude": 26.475247, "longitude": -85.16585, "tags": [ "proident", "laborum", "velit", "aliquip", "non", "ipsum", "amet" ], "friends": [ { "id": 0, "name": "Booker Matthews" }, { "id": 1, "name": "Myrtle Petty" }, { "id": 2, "name": "Shelley Marshall" } ], "greeting": "Hello, Kelley Riggs! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea209197e70f738943d5", "index": 896, "guid": "db9af26e-9bc4-45d7-a5c1-b50625fae9e3", "isActive": false, "balance": "$2,928.00", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Maritza Black", "gender": "female", "company": "GLEAMINK", "email": "maritzablack@gleamink.com", "phone": "+1 (903) 476-2795", "address": "182 Henry Street, Robbins, Oregon, 343", "about": "Proident labore deserunt ullamco voluptate. Velit nisi et id deserunt velit tempor irure anim Lorem amet excepteur. Minim aute consequat dolore velit velit eu nisi ipsum. Cillum esse proident officia nostrud mollit id ad amet velit exercitation. Lorem do nostrud fugiat culpa ex.\r\n", "registered": "2014-02-03T22:39:29-13:00", "latitude": -12.401231, "longitude": -47.841817, "tags": [ "aliquip", "labore", "sint", "sint", "eiusmod", "quis", "excepteur" ], "friends": [ { "id": 0, "name": "Duffy Sykes" }, { "id": 1, "name": "Velazquez Becker" }, { "id": 2, "name": "Golden Cox" } ], "greeting": "Hello, Maritza Black! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20b16b12f162bdde4e", "index": 897, "guid": "29c77af4-db42-4453-904c-e8c650090977", "isActive": true, "balance": "$1,640.09", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Tessa Murphy", "gender": "female", "company": "KANGLE", "email": "tessamurphy@kangle.com", "phone": "+1 (840) 443-3436", "address": "898 Greenpoint Avenue, Sidman, Nevada, 578", "about": "Dolore irure qui in excepteur anim. Labore irure ad ex culpa reprehenderit qui laborum irure ex quis quis sunt Lorem. Sit enim voluptate sint ea do dolor ut commodo. Mollit adipisicing consectetur sint Lorem eiusmod do labore sit in esse. Non culpa enim qui do reprehenderit enim tempor ipsum sint occaecat.\r\n", "registered": "2014-03-11T00:15:28-13:00", "latitude": -27.192102, "longitude": 157.485975, "tags": [ "cupidatat", "sint", "sint", "commodo", "eiusmod", "officia", "fugiat" ], "friends": [ { "id": 0, "name": "Carrie Kim" }, { "id": 1, "name": "Bridgett Stafford" }, { "id": 2, "name": "Diaz Daniel" } ], "greeting": "Hello, Tessa Murphy! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20e0df100550d96ef6", "index": 898, "guid": "18958cf7-06e7-448c-a2ce-030732c923c0", "isActive": true, "balance": "$2,142.82", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Vargas Hudson", "gender": "male", "company": "BOINK", "email": "vargashudson@boink.com", "phone": "+1 (962) 482-2924", "address": "556 Irving Street, Stagecoach, Minnesota, 8703", "about": "Dolor et amet in ullamco et deserunt id. Sunt laboris sint veniam id enim irure aliqua do consectetur irure consequat duis do. Minim sint velit laboris est duis. Eiusmod occaecat reprehenderit Lorem eu non sint excepteur voluptate sit anim ut aute.\r\n", "registered": "2014-09-22T14:46:27-12:00", "latitude": 77.44293, "longitude": -1.770823, "tags": [ "non", "proident", "do", "ea", "culpa", "est", "dolor" ], "friends": [ { "id": 0, "name": "Irwin Snow" }, { "id": 1, "name": "Harrington Patrick" }, { "id": 2, "name": "Robyn Padilla" } ], "greeting": "Hello, Vargas Hudson! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea208fe45f5757b337f8", "index": 899, "guid": "ebefbc83-2691-48b7-be78-d073b133be66", "isActive": false, "balance": "$1,200.95", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Ramirez Melendez", "gender": "male", "company": "SULFAX", "email": "ramirezmelendez@sulfax.com", "phone": "+1 (857) 408-2657", "address": "534 Claver Place, Hessville, Missouri, 1061", "about": "Consectetur quis aliquip dolore ipsum proident laborum cillum consequat labore aute culpa sit. Sit et id ad proident. Lorem nisi qui laboris velit aliquip magna ut et dolore laboris fugiat aliquip.\r\n", "registered": "2014-04-10T06:57:22-12:00", "latitude": -3.393302, "longitude": 172.063502, "tags": [ "do", "culpa", "dolore", "enim", "officia", "adipisicing", "dolor" ], "friends": [ { "id": 0, "name": "Mildred Vasquez" }, { "id": 1, "name": "Roth Tyler" }, { "id": 2, "name": "Cannon Mooney" } ], "greeting": "Hello, Ramirez Melendez! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2035b212ac3c931a2c", "index": 900, "guid": "6b3bb33e-a389-485f-837d-d3bec3fadd5d", "isActive": false, "balance": "$1,344.32", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Joyner Garrison", "gender": "male", "company": "MAINELAND", "email": "joynergarrison@maineland.com", "phone": "+1 (991) 566-2229", "address": "736 Newkirk Placez, Belvoir, Rhode Island, 6365", "about": "Ipsum cillum dolor esse velit sunt dolor minim eiusmod do exercitation officia. In minim consectetur officia reprehenderit pariatur officia irure nisi non sit non. Reprehenderit laborum sint quis qui.\r\n", "registered": "2014-05-07T14:01:12-12:00", "latitude": 42.064639, "longitude": 115.266915, "tags": [ "dolore", "ullamco", "magna", "dolore", "nisi", "ipsum", "elit" ], "friends": [ { "id": 0, "name": "Nieves Best" }, { "id": 1, "name": "Collier Mccormick" }, { "id": 2, "name": "Deirdre Cross" } ], "greeting": "Hello, Joyner Garrison! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea200ecbb9d40a812854", "index": 901, "guid": "dcbd8c53-2d2f-43f1-95a8-e4e3ca4a9301", "isActive": true, "balance": "$3,305.95", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Herrera Albert", "gender": "male", "company": "HOMELUX", "email": "herreraalbert@homelux.com", "phone": "+1 (997) 534-2233", "address": "503 Oceanview Avenue, Grayhawk, Florida, 8494", "about": "Cupidatat laboris officia eu ipsum voluptate officia commodo aliqua laborum aliqua sit aute dolor culpa. Voluptate fugiat Lorem amet ea reprehenderit. Esse voluptate tempor do id commodo deserunt aliquip qui anim dolor est. Esse ullamco minim et irure incididunt. Enim amet sunt ipsum pariatur ut reprehenderit ea commodo. Minim aute officia est sunt. Eiusmod nulla ea pariatur proident.\r\n", "registered": "2014-04-12T14:16:30-12:00", "latitude": -79.407515, "longitude": -89.47985, "tags": [ "fugiat", "culpa", "exercitation", "irure", "consequat", "culpa", "sunt" ], "friends": [ { "id": 0, "name": "Pitts Newton" }, { "id": 1, "name": "Fannie Kemp" }, { "id": 2, "name": "Dennis Nelson" } ], "greeting": "Hello, Herrera Albert! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20bb7d8663dd528080", "index": 902, "guid": "9d1b13e7-67a1-46a9-9b5a-4ec82f6c7a29", "isActive": false, "balance": "$3,462.78", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "May Duke", "gender": "female", "company": "IPLAX", "email": "mayduke@iplax.com", "phone": "+1 (914) 551-2104", "address": "323 Brigham Street, Bonanza, North Carolina, 9219", "about": "Aliqua pariatur ea nostrud aliqua cupidatat aliquip minim nisi. Ut adipisicing nulla occaecat laboris reprehenderit. Nulla exercitation velit ullamco ipsum consectetur. Dolor dolore nostrud ullamco ut aute nostrud Lorem amet ipsum minim enim ad culpa. Exercitation qui reprehenderit labore amet sunt incididunt magna in.\r\n", "registered": "2014-03-18T20:13:42-13:00", "latitude": 84.212297, "longitude": -64.817224, "tags": [ "minim", "consectetur", "id", "ullamco", "anim", "proident", "est" ], "friends": [ { "id": 0, "name": "Rhonda Perez" }, { "id": 1, "name": "Hardin Hoffman" }, { "id": 2, "name": "Willis Waller" } ], "greeting": "Hello, May Duke! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20aa7bc4a9142b0b63", "index": 903, "guid": "36a7c07c-a82b-4ea9-b7ea-dd86acd43261", "isActive": true, "balance": "$1,968.02", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Rocha Bowman", "gender": "male", "company": "ACUSAGE", "email": "rochabowman@acusage.com", "phone": "+1 (902) 550-3611", "address": "977 Grimes Road, Winston, New Hampshire, 2213", "about": "Aute voluptate laborum voluptate Lorem cillum dolor ea est Lorem. Pariatur cillum eu amet mollit laborum aute enim aliqua et proident. Exercitation aliquip pariatur id cupidatat aute ut qui aliquip Lorem. Non enim veniam ex dolor velit laborum enim nulla amet. Pariatur dolor aute et nisi do Lorem duis nisi cupidatat fugiat. Cupidatat excepteur nostrud laborum ipsum reprehenderit excepteur. Mollit sit laboris reprehenderit consectetur velit non cupidatat in in labore.\r\n", "registered": "2014-09-17T17:57:31-12:00", "latitude": -55.478271, "longitude": 11.094198, "tags": [ "id", "culpa", "ut", "aliqua", "exercitation", "Lorem", "cillum" ], "friends": [ { "id": 0, "name": "Robinson Morales" }, { "id": 1, "name": "Crawford Mejia" }, { "id": 2, "name": "Barlow Hurst" } ], "greeting": "Hello, Rocha Bowman! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20e772c15eb01d2035", "index": 904, "guid": "145dafc4-fcae-4c57-963e-c967d49f76be", "isActive": true, "balance": "$2,526.91", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Fitzpatrick Kennedy", "gender": "male", "company": "FILODYNE", "email": "fitzpatrickkennedy@filodyne.com", "phone": "+1 (925) 535-2077", "address": "503 Cooke Court, Clarksburg, Arkansas, 289", "about": "Est laboris sunt deserunt sit laboris. Sit Lorem est id esse veniam deserunt ut nulla ut do. Culpa voluptate est dolore est sunt aute est. Consequat sit anim voluptate sint eiusmod sit fugiat magna tempor anim id minim. Non do ullamco culpa enim incididunt est laborum in laboris velit velit anim incididunt. Tempor nisi elit exercitation ad Lorem irure excepteur aliqua magna occaecat pariatur adipisicing tempor non. Non in consectetur sit veniam incididunt nulla sint cupidatat.\r\n", "registered": "2014-06-10T16:35:06-12:00", "latitude": -34.604219, "longitude": -4.272452, "tags": [ "minim", "nostrud", "anim", "consequat", "irure", "ex", "consequat" ], "friends": [ { "id": 0, "name": "Cruz Farrell" }, { "id": 1, "name": "Callahan Doyle" }, { "id": 2, "name": "Irma Hoover" } ], "greeting": "Hello, Fitzpatrick Kennedy! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20821badeb610847a3", "index": 905, "guid": "d99459d9-b173-4f4e-8183-138b6cff5452", "isActive": false, "balance": "$2,438.87", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Cherry Dalton", "gender": "female", "company": "STREZZO", "email": "cherrydalton@strezzo.com", "phone": "+1 (968) 538-2476", "address": "919 Cypress Avenue, Allensworth, Iowa, 9661", "about": "Dolor voluptate et ipsum dolore consectetur in sint non excepteur nisi elit aliquip culpa. Minim irure elit excepteur est veniam minim voluptate. Eiusmod deserunt quis voluptate laborum ut ex ipsum laborum in esse voluptate. Nisi deserunt commodo incididunt ipsum. Excepteur sit sit laboris dolor magna nisi eiusmod magna nulla velit amet voluptate labore amet.\r\n", "registered": "2014-08-28T01:52:12-12:00", "latitude": 19.271449, "longitude": 172.473623, "tags": [ "sunt", "ullamco", "labore", "nostrud", "nisi", "aliquip", "excepteur" ], "friends": [ { "id": 0, "name": "Angelica Mcdowell" }, { "id": 1, "name": "Leola Marsh" }, { "id": 2, "name": "Ortega Juarez" } ], "greeting": "Hello, Cherry Dalton! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20a16407adc3ba0925", "index": 906, "guid": "2faaefd8-52a3-4094-94fe-1edef0a3e0d1", "isActive": false, "balance": "$2,679.34", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Stout Dillard", "gender": "male", "company": "ZINCA", "email": "stoutdillard@zinca.com", "phone": "+1 (976) 537-3127", "address": "326 Furman Street, Mahtowa, Nebraska, 5621", "about": "Exercitation reprehenderit sit sit sunt quis eiusmod ea pariatur laborum minim occaecat magna cillum. Duis deserunt dolor ea nulla ut tempor ipsum est eu anim irure velit. Exercitation officia duis occaecat et mollit adipisicing reprehenderit dolor amet. Eu ex anim deserunt pariatur eu ut dolore duis aliquip officia sunt velit reprehenderit. Ea incididunt in sint non eu magna velit anim anim velit proident. Pariatur nisi labore ut in et proident labore quis. Eiusmod proident aliqua laboris aute reprehenderit pariatur aute officia irure.\r\n", "registered": "2014-01-26T00:28:41-13:00", "latitude": 49.489397, "longitude": -45.204044, "tags": [ "voluptate", "laboris", "anim", "anim", "elit", "labore", "sit" ], "friends": [ { "id": 0, "name": "Stacie Lee" }, { "id": 1, "name": "Alta Mayer" }, { "id": 2, "name": "Sue Beard" } ], "greeting": "Hello, Stout Dillard! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2009fc022035c869d1", "index": 907, "guid": "9f35f88b-b00e-4d79-9027-37f83f24d47e", "isActive": false, "balance": "$3,803.27", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Allie Randolph", "gender": "female", "company": "KENGEN", "email": "allierandolph@kengen.com", "phone": "+1 (842) 421-3417", "address": "294 Sumpter Street, Comptche, District Of Columbia, 3312", "about": "Ipsum pariatur ea velit labore ullamco enim. Sunt occaecat qui aliqua magna nulla. Exercitation laborum excepteur Lorem incididunt deserunt aute sunt irure commodo aliqua deserunt incididunt in. Consequat laborum eu sunt eiusmod cillum pariatur sit.\r\n", "registered": "2014-06-10T22:49:06-12:00", "latitude": -29.02537, "longitude": -158.944716, "tags": [ "ipsum", "minim", "incididunt", "esse", "dolor", "pariatur", "esse" ], "friends": [ { "id": 0, "name": "Boyd Rocha" }, { "id": 1, "name": "Dickerson Owen" }, { "id": 2, "name": "Twila Justice" } ], "greeting": "Hello, Allie Randolph! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20953b17da7d143297", "index": 908, "guid": "fa685e85-6d28-48e6-b7f2-ab6e24e1ba61", "isActive": false, "balance": "$3,598.46", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Valdez Walters", "gender": "male", "company": "FUELTON", "email": "valdezwalters@fuelton.com", "phone": "+1 (827) 533-2228", "address": "176 George Street, Crucible, New Jersey, 1750", "about": "Consequat sunt exercitation incididunt nostrud amet. Commodo voluptate incididunt fugiat aute adipisicing aliqua irure eu sunt consequat. Officia qui eiusmod cillum minim consectetur id cupidatat mollit labore sit. Quis laborum minim quis dolor Lorem incididunt proident elit occaecat do eu dolore ea exercitation.\r\n", "registered": "2014-09-10T13:37:10-12:00", "latitude": -24.617718, "longitude": -40.291146, "tags": [ "ex", "non", "reprehenderit", "proident", "dolore", "elit", "culpa" ], "friends": [ { "id": 0, "name": "Jaclyn Moon" }, { "id": 1, "name": "Jessica Byers" }, { "id": 2, "name": "Eugenia Mcdaniel" } ], "greeting": "Hello, Valdez Walters! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea204cae2d2666d4e623", "index": 909, "guid": "ba18743a-d2d5-4d72-ac8e-4ffe42eac100", "isActive": true, "balance": "$1,898.71", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Aileen Pearson", "gender": "female", "company": "SKYBOLD", "email": "aileenpearson@skybold.com", "phone": "+1 (913) 504-2724", "address": "878 Church Avenue, Maybell, Palau, 8573", "about": "Magna incididunt labore occaecat occaecat proident deserunt ut proident cillum cupidatat esse ipsum reprehenderit pariatur. Id aliquip laboris deserunt magna ipsum amet reprehenderit anim duis reprehenderit reprehenderit tempor. Laborum labore aute enim ipsum duis ipsum. Mollit cupidatat adipisicing deserunt anim aute adipisicing. Amet exercitation et aliquip id velit amet laborum sunt. Culpa duis cillum nisi minim.\r\n", "registered": "2014-08-01T16:47:01-12:00", "latitude": -6.805662, "longitude": 107.192224, "tags": [ "eiusmod", "nulla", "qui", "do", "culpa", "labore", "irure" ], "friends": [ { "id": 0, "name": "Gabriela Mcintosh" }, { "id": 1, "name": "Donna Robertson" }, { "id": 2, "name": "Sally Sherman" } ], "greeting": "Hello, Aileen Pearson! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea205c2f13d486ef0ef3", "index": 910, "guid": "816dfb3a-76c7-430d-9f9a-90950ffe977d", "isActive": true, "balance": "$3,475.32", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Dianna Gillespie", "gender": "female", "company": "SONIQUE", "email": "diannagillespie@sonique.com", "phone": "+1 (824) 550-3288", "address": "279 Sutton Street, Dana, Puerto Rico, 4797", "about": "Exercitation dolore excepteur cupidatat et proident mollit anim. Sunt dolore id consectetur quis id tempor sit ad sit sit ipsum consectetur. Labore officia nostrud laborum esse dolor sit et et duis fugiat magna. Irure officia amet Lorem exercitation tempor est. Eiusmod fugiat sint labore ut mollit enim. Esse incididunt consectetur consectetur proident elit eiusmod pariatur. Commodo id in nisi consectetur excepteur Lorem qui ut incididunt.\r\n", "registered": "2014-07-01T17:31:30-12:00", "latitude": -1.174973, "longitude": -52.508391, "tags": [ "esse", "esse", "eiusmod", "nulla", "ut", "cillum", "ipsum" ], "friends": [ { "id": 0, "name": "Pat Glass" }, { "id": 1, "name": "Stanley Wells" }, { "id": 2, "name": "Forbes Love" } ], "greeting": "Hello, Dianna Gillespie! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20e1098755d566f1f0", "index": 911, "guid": "db2fa03a-29db-43b4-8977-0ca728219da7", "isActive": false, "balance": "$2,166.40", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Berry Owens", "gender": "male", "company": "EARTHPLEX", "email": "berryowens@earthplex.com", "phone": "+1 (868) 598-3258", "address": "412 Cadman Plaza, Chemung, California, 6335", "about": "Irure commodo mollit mollit ullamco ipsum excepteur. Est cillum aute deserunt ipsum ad sunt. Esse ullamco duis mollit nostrud amet incididunt voluptate aute anim nulla. Deserunt ex sint amet laborum nostrud sunt. Duis excepteur esse enim consequat irure tempor exercitation et do nisi quis consequat exercitation ea.\r\n", "registered": "2014-03-10T19:55:24-13:00", "latitude": 31.600479, "longitude": -21.367753, "tags": [ "aliquip", "non", "ipsum", "ullamco", "ad", "veniam", "enim" ], "friends": [ { "id": 0, "name": "Ina Levy" }, { "id": 1, "name": "Kathy Dillon" }, { "id": 2, "name": "Leta Williamson" } ], "greeting": "Hello, Berry Owens! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20a0ea890fda41da19", "index": 912, "guid": "4ed30836-8ee0-4aa7-897f-72576e2e872d", "isActive": true, "balance": "$2,976.14", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Abby Ware", "gender": "female", "company": "TELEQUIET", "email": "abbyware@telequiet.com", "phone": "+1 (808) 456-3788", "address": "604 Newkirk Avenue, Winesburg, Vermont, 5980", "about": "Proident et nostrud veniam Lorem tempor esse laborum elit ipsum mollit adipisicing esse ea. Aliquip cupidatat consequat non reprehenderit ipsum labore veniam. Nostrud veniam ea Lorem nostrud mollit. Ex qui ad nulla mollit eiusmod nostrud adipisicing laboris quis dolor do officia id cupidatat.\r\n", "registered": "2014-07-27T10:39:52-12:00", "latitude": 86.984131, "longitude": 104.517568, "tags": [ "mollit", "Lorem", "proident", "nulla", "cillum", "aute", "excepteur" ], "friends": [ { "id": 0, "name": "Hancock Alston" }, { "id": 1, "name": "Lolita Nieves" }, { "id": 2, "name": "Elba Deleon" } ], "greeting": "Hello, Abby Ware! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea209afab627b12e9f83", "index": 913, "guid": "cde4c74b-e862-4a7d-900d-481148763328", "isActive": true, "balance": "$2,072.63", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Maryann Parrish", "gender": "female", "company": "ROUGHIES", "email": "maryannparrish@roughies.com", "phone": "+1 (815) 592-3108", "address": "823 Dekalb Avenue, Efland, Indiana, 9707", "about": "Occaecat sit nostrud minim esse cillum minim. Id mollit dolore magna do tempor. Sit dolore dolor eiusmod elit mollit cupidatat ut aliquip sint duis elit amet occaecat. In ex sint quis consectetur mollit culpa. Qui fugiat nulla voluptate nostrud aute cillum aliquip laborum sint adipisicing est ullamco. Ullamco velit sint do deserunt mollit.\r\n", "registered": "2014-07-15T12:40:51-12:00", "latitude": -23.026468, "longitude": -163.417217, "tags": [ "laboris", "labore", "velit", "sint", "laboris", "anim", "ea" ], "friends": [ { "id": 0, "name": "Elsie Farley" }, { "id": 1, "name": "Terri Pugh" }, { "id": 2, "name": "Caldwell Barber" } ], "greeting": "Hello, Maryann Parrish! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea206f99e1cfa1babf3b", "index": 914, "guid": "5326943e-fa49-42ba-aa83-1ea94fc5e41b", "isActive": false, "balance": "$2,415.31", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Knapp Hayes", "gender": "male", "company": "MEMORA", "email": "knapphayes@memora.com", "phone": "+1 (852) 494-2805", "address": "216 Vermont Street, Bedias, Illinois, 1052", "about": "Nulla ipsum deserunt tempor tempor adipisicing et. Tempor minim est cillum enim Lorem ipsum. Amet id eiusmod deserunt cillum officia elit elit do incididunt ea occaecat pariatur consectetur labore.\r\n", "registered": "2014-06-21T11:44:07-12:00", "latitude": -54.554218, "longitude": -35.339742, "tags": [ "laborum", "nulla", "cillum", "non", "deserunt", "ullamco", "minim" ], "friends": [ { "id": 0, "name": "Lowery Pennington" }, { "id": 1, "name": "Janell May" }, { "id": 2, "name": "Marquez Hyde" } ], "greeting": "Hello, Knapp Hayes! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20d54952340769307b", "index": 915, "guid": "f112413c-1f7a-4460-902b-579f57d2c6f3", "isActive": true, "balance": "$1,886.38", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Tami Nunez", "gender": "female", "company": "SLUMBERIA", "email": "taminunez@slumberia.com", "phone": "+1 (857) 488-2162", "address": "977 Montieth Street, Morgandale, South Carolina, 3161", "about": "Ipsum veniam ut cupidatat deserunt amet. Dolor occaecat magna ea dolor sit reprehenderit enim consequat reprehenderit eu ullamco mollit duis. Minim ullamco ipsum magna consequat veniam velit.\r\n", "registered": "2014-02-16T06:38:24-13:00", "latitude": 47.428385, "longitude": -79.615327, "tags": [ "excepteur", "eu", "quis", "do", "do", "dolor", "non" ], "friends": [ { "id": 0, "name": "Raquel Hodge" }, { "id": 1, "name": "Daniel Dominguez" }, { "id": 2, "name": "Briggs Mitchell" } ], "greeting": "Hello, Tami Nunez! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20f007f0c0755b2efb", "index": 916, "guid": "10efd71a-f599-4442-9326-ede2d5ed757b", "isActive": false, "balance": "$1,690.87", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Sylvia Rogers", "gender": "female", "company": "BESTO", "email": "sylviarogers@besto.com", "phone": "+1 (925) 457-3519", "address": "435 Coleridge Street, Cetronia, American Samoa, 6701", "about": "Ea adipisicing adipisicing ullamco est ipsum dolore. Incididunt sunt ex laborum fugiat non pariatur exercitation cillum quis labore. Enim ipsum consectetur quis labore aliqua excepteur consectetur et aliqua ut anim minim irure. Ut incididunt irure in minim commodo irure labore nisi amet aute veniam nisi anim officia.\r\n", "registered": "2014-08-26T20:59:26-12:00", "latitude": 88.502999, "longitude": -175.732889, "tags": [ "magna", "eu", "do", "et", "ut", "aliquip", "duis" ], "friends": [ { "id": 0, "name": "Alison Odom" }, { "id": 1, "name": "Jillian Brock" }, { "id": 2, "name": "Sherrie Dixon" } ], "greeting": "Hello, Sylvia Rogers! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea200e04f672726933eb", "index": 917, "guid": "f69a7cfe-e909-43ab-81c2-23dffded0e7f", "isActive": false, "balance": "$3,348.98", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Naomi Barnes", "gender": "female", "company": "DOGTOWN", "email": "naomibarnes@dogtown.com", "phone": "+1 (858) 496-2858", "address": "105 Nautilus Avenue, Galesville, Delaware, 6050", "about": "Dolor est officia ea sunt occaecat ad non laboris et magna laborum. Amet cupidatat amet quis labore exercitation velit ipsum culpa minim laboris. Consectetur sunt ullamco fugiat pariatur elit mollit aliquip quis veniam.\r\n", "registered": "2014-05-11T10:33:16-12:00", "latitude": 78.910746, "longitude": -91.36274, "tags": [ "anim", "cupidatat", "sunt", "quis", "deserunt", "deserunt", "laborum" ], "friends": [ { "id": 0, "name": "Christensen Massey" }, { "id": 1, "name": "Rhodes Morton" }, { "id": 2, "name": "Esther Landry" } ], "greeting": "Hello, Naomi Barnes! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2025fd723b8f6d94de", "index": 918, "guid": "3281a0d5-a930-4edb-bc58-fa0fe140078a", "isActive": true, "balance": "$2,624.82", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Jocelyn Garcia", "gender": "female", "company": "QNEKT", "email": "jocelyngarcia@qnekt.com", "phone": "+1 (802) 466-2135", "address": "795 Kenilworth Place, Spelter, Pennsylvania, 4816", "about": "Nostrud non ex voluptate consectetur nostrud culpa veniam consectetur consequat. Anim ex id tempor incididunt Lorem veniam duis sint pariatur anim. Velit eu sint ut et cillum excepteur. Ipsum non veniam ex ad ex amet exercitation cillum nostrud nisi veniam aliqua ut.\r\n", "registered": "2014-04-13T21:08:35-12:00", "latitude": 47.700463, "longitude": 159.069898, "tags": [ "Lorem", "reprehenderit", "duis", "velit", "aliqua", "laborum", "sunt" ], "friends": [ { "id": 0, "name": "Neva Bowers" }, { "id": 1, "name": "Sybil Whitaker" }, { "id": 2, "name": "Parks Gordon" } ], "greeting": "Hello, Jocelyn Garcia! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20a2555df25fbb68c0", "index": 919, "guid": "674c915d-9437-4744-943c-b3e0c54e38b4", "isActive": true, "balance": "$2,555.75", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Liz Downs", "gender": "female", "company": "SAVVY", "email": "lizdowns@savvy.com", "phone": "+1 (820) 442-3324", "address": "537 Hawthorne Street, Floriston, Georgia, 130", "about": "Nostrud cupidatat elit duis aute esse veniam aliquip sint dolor amet proident eiusmod velit. Officia adipisicing enim deserunt velit. Labore magna anim laborum consectetur aute pariatur qui occaecat quis consectetur. Sint sit anim mollit eiusmod dolor esse exercitation aliqua velit Lorem. Adipisicing elit tempor ut eiusmod irure mollit fugiat quis aliqua laborum aute. Eiusmod elit cupidatat et et do velit culpa velit id cupidatat Lorem. Elit aliqua aliqua minim laboris veniam consectetur magna fugiat incididunt nisi ipsum.\r\n", "registered": "2014-05-09T08:41:34-12:00", "latitude": -79.473224, "longitude": 31.59339, "tags": [ "aliqua", "sit", "commodo", "reprehenderit", "fugiat", "id", "duis" ], "friends": [ { "id": 0, "name": "Atkins Rose" }, { "id": 1, "name": "Ayala Blackwell" }, { "id": 2, "name": "Ashley Steele" } ], "greeting": "Hello, Liz Downs! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea207cfa976a9e46119e", "index": 920, "guid": "df6daed2-6b61-4a6e-90ab-4e1bbc01d53a", "isActive": true, "balance": "$3,601.46", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Liliana Dorsey", "gender": "female", "company": "ATOMICA", "email": "lilianadorsey@atomica.com", "phone": "+1 (859) 526-3097", "address": "860 Railroad Avenue, Allendale, North Dakota, 149", "about": "Fugiat proident est officia exercitation ullamco sunt laboris laboris excepteur excepteur ut proident. Duis minim nostrud minim sint proident proident aliqua elit amet sint laborum aute laborum nostrud. Aute occaecat minim occaecat eu aliquip adipisicing officia nulla ipsum aliquip quis irure irure mollit.\r\n", "registered": "2014-09-06T03:53:52-12:00", "latitude": -28.582933, "longitude": -165.367508, "tags": [ "laborum", "nisi", "anim", "quis", "aliquip", "nulla", "dolore" ], "friends": [ { "id": 0, "name": "Kate Burch" }, { "id": 1, "name": "Faith Miller" }, { "id": 2, "name": "Pansy Gross" } ], "greeting": "Hello, Liliana Dorsey! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20ab8f66a45a277d63", "index": 921, "guid": "486f189d-cb8e-40df-9229-3a6c7bc6641a", "isActive": true, "balance": "$3,073.43", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Chelsea Rowe", "gender": "female", "company": "MINGA", "email": "chelsearowe@minga.com", "phone": "+1 (991) 414-2325", "address": "310 Lacon Court, Woodlake, Louisiana, 9730", "about": "Officia commodo ut Lorem sunt proident enim dolor proident ipsum deserunt. Esse deserunt irure cupidatat cupidatat. In sit est laborum ea veniam eiusmod commodo. Ut cupidatat proident esse aute eiusmod in. Velit cillum ipsum elit ex cupidatat nisi eu do anim laboris. Aliqua exercitation consectetur sit quis officia duis consequat. Labore pariatur sunt nulla et magna sunt esse laborum.\r\n", "registered": "2014-01-02T23:23:56-13:00", "latitude": 82.337955, "longitude": -149.933384, "tags": [ "dolore", "sint", "elit", "dolor", "tempor", "voluptate", "sint" ], "friends": [ { "id": 0, "name": "Gilda Fitzgerald" }, { "id": 1, "name": "Susana Burris" }, { "id": 2, "name": "Lara Case" } ], "greeting": "Hello, Chelsea Rowe! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea208aac5b339d559935", "index": 922, "guid": "9671df71-902d-4d5a-afa7-f6a10c77bc5d", "isActive": false, "balance": "$3,233.81", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Freida Hines", "gender": "female", "company": "MUSIX", "email": "freidahines@musix.com", "phone": "+1 (944) 493-3644", "address": "269 Fillmore Place, Urie, Northern Mariana Islands, 8313", "about": "Nisi ad ullamco laborum est. Enim incididunt nulla reprehenderit nulla dolore enim cupidatat. Dolore exercitation occaecat consequat laborum laboris laborum enim fugiat laborum. Laboris ea consectetur exercitation aute in laborum tempor esse in qui. Adipisicing mollit esse et laborum ut irure nostrud est dolore cillum tempor consequat nulla proident. Excepteur duis velit elit sunt sit Lorem commodo voluptate nulla ipsum occaecat occaecat occaecat. Amet nisi Lorem consequat consectetur eu fugiat qui nulla qui minim ad incididunt ipsum deserunt.\r\n", "registered": "2014-09-14T12:08:41-12:00", "latitude": -83.863326, "longitude": -121.779196, "tags": [ "voluptate", "est", "qui", "ea", "ipsum", "nostrud", "aute" ], "friends": [ { "id": 0, "name": "Tucker Contreras" }, { "id": 1, "name": "Madge Chen" }, { "id": 2, "name": "Malinda Bean" } ], "greeting": "Hello, Freida Hines! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea201d04d65805cf97c9", "index": 923, "guid": "194c4f31-77d9-4030-8e48-048041964be5", "isActive": false, "balance": "$1,086.32", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Patterson Burns", "gender": "male", "company": "GEEKOLOGY", "email": "pattersonburns@geekology.com", "phone": "+1 (818) 564-2866", "address": "532 Heyward Street, Golconda, Colorado, 8245", "about": "Incididunt sit non laborum minim excepteur. Ea amet tempor laborum incididunt aliqua exercitation exercitation magna. Adipisicing sint laborum ipsum qui enim ea culpa ex commodo nisi. Velit quis velit pariatur in laboris pariatur eiusmod tempor adipisicing aute elit in laborum est. Ea amet in consequat eiusmod dolore exercitation proident pariatur in.\r\n", "registered": "2014-06-08T23:35:18-12:00", "latitude": -88.653543, "longitude": 104.609956, "tags": [ "commodo", "eiusmod", "dolor", "culpa", "ea", "sunt", "pariatur" ], "friends": [ { "id": 0, "name": "Mcclain Bruce" }, { "id": 1, "name": "Alana Gilliam" }, { "id": 2, "name": "Ramona Weiss" } ], "greeting": "Hello, Patterson Burns! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20c361ded5227b34cf", "index": 924, "guid": "c73b7f5d-c0f6-4104-bc53-e1c16be0d0fa", "isActive": true, "balance": "$3,725.72", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Darla Sharp", "gender": "female", "company": "ECRATIC", "email": "darlasharp@ecratic.com", "phone": "+1 (963) 434-2255", "address": "131 Seigel Court, Knowlton, Idaho, 9662", "about": "Ea consequat excepteur non dolore voluptate et quis aliquip adipisicing. Excepteur mollit irure consequat id esse nostrud sit nulla sint deserunt id elit. Fugiat deserunt dolor sit culpa culpa enim. Tempor aute laborum eu occaecat proident aliquip. Exercitation sit magna pariatur ipsum nisi excepteur amet nulla amet irure exercitation aliquip minim. Voluptate ullamco nostrud eu est amet cillum laboris voluptate enim. Cillum est labore reprehenderit dolor elit magna pariatur.\r\n", "registered": "2014-02-22T14:44:26-13:00", "latitude": 2.746757, "longitude": -43.535909, "tags": [ "nisi", "reprehenderit", "occaecat", "amet", "pariatur", "tempor", "consectetur" ], "friends": [ { "id": 0, "name": "Fleming Rivera" }, { "id": 1, "name": "Guthrie Hobbs" }, { "id": 2, "name": "Chris Parker" } ], "greeting": "Hello, Darla Sharp! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20c8f87a60149aa086", "index": 925, "guid": "3b11e2c0-cbae-41ca-b008-1801815166ea", "isActive": false, "balance": "$1,430.99", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Petty West", "gender": "male", "company": "SECURIA", "email": "pettywest@securia.com", "phone": "+1 (907) 500-3911", "address": "812 Hicks Street, Southmont, Marshall Islands, 6036", "about": "In officia dolor mollit ea excepteur ad ut culpa consequat et ad exercitation. Exercitation sit adipisicing consectetur qui commodo nisi. Id incididunt ex deserunt sint magna duis exercitation fugiat dolore consectetur eiusmod.\r\n", "registered": "2014-05-15T04:30:13-12:00", "latitude": 30.289144, "longitude": -96.668177, "tags": [ "ut", "reprehenderit", "nulla", "occaecat", "est", "excepteur", "est" ], "friends": [ { "id": 0, "name": "Nona Peck" }, { "id": 1, "name": "Cummings Hogan" }, { "id": 2, "name": "Sargent Coffey" } ], "greeting": "Hello, Petty West! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea206ed6f7bd1f13a742", "index": 926, "guid": "4931efb9-904f-4426-9f3d-350c35115047", "isActive": false, "balance": "$3,993.13", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Eaton Snider", "gender": "male", "company": "OCEANICA", "email": "eatonsnider@oceanica.com", "phone": "+1 (950) 550-2448", "address": "528 Kimball Street, Hegins, New York, 679", "about": "Aute aliqua ipsum quis excepteur. Aute aliquip commodo adipisicing dolor ex anim nostrud consectetur anim ullamco labore exercitation. Sit sunt consequat in nulla culpa adipisicing. Incididunt est esse dolor ut occaecat irure minim exercitation ullamco fugiat. Sunt pariatur deserunt laborum Lorem eu.\r\n", "registered": "2014-08-26T17:32:34-12:00", "latitude": 63.71909, "longitude": -113.734221, "tags": [ "nisi", "ullamco", "dolor", "velit", "qui", "amet", "commodo" ], "friends": [ { "id": 0, "name": "Cindy Flores" }, { "id": 1, "name": "Mcdaniel Harrell" }, { "id": 2, "name": "Vang Henson" } ], "greeting": "Hello, Eaton Snider! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea208e8c2963b2e4442a", "index": 927, "guid": "5015aa62-f4fd-4318-8c27-e712b3bc5ec2", "isActive": false, "balance": "$3,261.86", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Terry Booth", "gender": "female", "company": "FLEXIGEN", "email": "terrybooth@flexigen.com", "phone": "+1 (803) 564-3235", "address": "289 Fayette Street, Vernon, Guam, 9897", "about": "Proident commodo labore aute amet voluptate ut labore occaecat id minim Lorem ea fugiat tempor. Ex proident consectetur ea in proident amet incididunt. Et et aute nisi ipsum. Mollit culpa commodo ex ullamco magna velit reprehenderit nulla.\r\n", "registered": "2014-08-19T04:53:17-12:00", "latitude": -9.755467, "longitude": -50.649484, "tags": [ "laboris", "adipisicing", "exercitation", "sunt", "irure", "tempor", "nulla" ], "friends": [ { "id": 0, "name": "Gretchen Willis" }, { "id": 1, "name": "Loraine Carpenter" }, { "id": 2, "name": "Lucia Pena" } ], "greeting": "Hello, Terry Booth! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20766dee91fd32ebfa", "index": 928, "guid": "75748178-1cac-42fb-8fb1-8238f95bdc65", "isActive": false, "balance": "$2,126.35", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Whitney Washington", "gender": "female", "company": "BOLAX", "email": "whitneywashington@bolax.com", "phone": "+1 (848) 516-2774", "address": "886 Malbone Street, Jennings, Virgin Islands, 7467", "about": "Ipsum laborum aliquip reprehenderit occaecat anim est Lorem cupidatat commodo. Ullamco cupidatat et exercitation do ullamco ad dolore Lorem ullamco sint do. Ipsum exercitation adipisicing amet ipsum ad voluptate minim proident. Lorem adipisicing commodo consectetur tempor officia magna et laboris.\r\n", "registered": "2014-01-05T22:19:46-13:00", "latitude": -51.411636, "longitude": -107.467324, "tags": [ "minim", "ad", "minim", "irure", "fugiat", "proident", "anim" ], "friends": [ { "id": 0, "name": "Mcconnell Potter" }, { "id": 1, "name": "Ora Gates" }, { "id": 2, "name": "Bridgette Hopkins" } ], "greeting": "Hello, Whitney Washington! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20c6a9f11ba2494353", "index": 929, "guid": "b9868222-4895-45f8-8c7e-617fdc8b8610", "isActive": false, "balance": "$2,703.26", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Richardson Gilbert", "gender": "male", "company": "LOCAZONE", "email": "richardsongilbert@locazone.com", "phone": "+1 (884) 579-3835", "address": "623 Varet Street, Outlook, Massachusetts, 308", "about": "Mollit ad irure ullamco voluptate excepteur velit velit. Adipisicing aliqua tempor duis nisi officia exercitation dolore dolore proident commodo dolor consectetur in. Ex eu non qui esse qui adipisicing sint velit aliqua et sit irure consectetur. Ex aute sint labore do sint labore excepteur.\r\n", "registered": "2014-07-02T18:17:57-12:00", "latitude": 12.732819, "longitude": -165.458409, "tags": [ "cupidatat", "sunt", "nostrud", "ullamco", "fugiat", "excepteur", "aliquip" ], "friends": [ { "id": 0, "name": "Mathis Walls" }, { "id": 1, "name": "Tamera Franklin" }, { "id": 2, "name": "Wilkerson Reed" } ], "greeting": "Hello, Richardson Gilbert! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20bdcee49d001efe5b", "index": 930, "guid": "f450ab21-df84-471a-ba9d-073c8f4c16db", "isActive": false, "balance": "$2,748.54", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Benjamin Odonnell", "gender": "male", "company": "ZOLAREX", "email": "benjaminodonnell@zolarex.com", "phone": "+1 (873) 593-3701", "address": "443 Meadow Street, Winfred, Utah, 733", "about": "Qui sunt et sunt consectetur amet enim nisi ullamco eiusmod. Nulla culpa fugiat amet fugiat sint amet nostrud pariatur. Duis occaecat dolore ut voluptate ut sit. Tempor veniam in et est velit.\r\n", "registered": "2014-05-31T17:52:36-12:00", "latitude": 11.445097, "longitude": 6.204428, "tags": [ "excepteur", "irure", "quis", "enim", "sunt", "nostrud", "aliqua" ], "friends": [ { "id": 0, "name": "Patton Chang" }, { "id": 1, "name": "Lillie Snyder" }, { "id": 2, "name": "Cristina Elliott" } ], "greeting": "Hello, Benjamin Odonnell! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea208b512256ebae11da", "index": 931, "guid": "14c24181-ef6d-41ec-8ada-925d4246c431", "isActive": false, "balance": "$3,498.24", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Michael Neal", "gender": "female", "company": "DAYCORE", "email": "michaelneal@daycore.com", "phone": "+1 (928) 580-3439", "address": "859 Duryea Court, Fairlee, Montana, 7201", "about": "Incididunt labore magna sit consectetur incididunt. Ut qui exercitation incididunt mollit sit enim labore pariatur id tempor aliquip labore. Sint esse cupidatat magna consequat cupidatat qui exercitation et exercitation duis consequat nulla labore esse. In dolor reprehenderit occaecat adipisicing reprehenderit labore pariatur quis id non amet. Veniam consequat est tempor et esse labore aliqua. Duis cupidatat ea est amet ut anim eiusmod minim adipisicing.\r\n", "registered": "2014-01-11T04:50:00-13:00", "latitude": 5.065323, "longitude": 58.278327, "tags": [ "nisi", "et", "cupidatat", "in", "consectetur", "magna", "veniam" ], "friends": [ { "id": 0, "name": "Rojas Boone" }, { "id": 1, "name": "Parrish Valencia" }, { "id": 2, "name": "Minnie Robinson" } ], "greeting": "Hello, Michael Neal! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea202e2dbc56085d208f", "index": 932, "guid": "4f27d1d1-8835-4cf7-ae20-b9e8ae028287", "isActive": true, "balance": "$1,925.54", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Sheree Macdonald", "gender": "female", "company": "SONGLINES", "email": "shereemacdonald@songlines.com", "phone": "+1 (951) 534-3506", "address": "255 Garden Street, Tonopah, Wisconsin, 1957", "about": "Cillum eu id et sit ipsum amet eiusmod sunt esse id deserunt. Non fugiat reprehenderit in Lorem magna. Deserunt laboris irure dolore et incididunt in minim cillum eiusmod aute magna sit. Nulla et culpa nisi mollit. Aliqua irure anim in aute. Non minim fugiat aliqua eiusmod est esse consequat nisi dolore laborum deserunt.\r\n", "registered": "2014-06-30T09:10:30-12:00", "latitude": 10.85674, "longitude": 36.431262, "tags": [ "qui", "aute", "adipisicing", "tempor", "culpa", "veniam", "Lorem" ], "friends": [ { "id": 0, "name": "Adriana Santiago" }, { "id": 1, "name": "Serena Bartlett" }, { "id": 2, "name": "Buck Weeks" } ], "greeting": "Hello, Sheree Macdonald! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20900480916cae9ef6", "index": 933, "guid": "0fe88dbd-db3a-4f8f-a288-360bf0faca7e", "isActive": true, "balance": "$1,664.65", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Meyers Lott", "gender": "male", "company": "KONGLE", "email": "meyerslott@kongle.com", "phone": "+1 (872) 470-3344", "address": "109 Matthews Court, Adamstown, Maine, 9995", "about": "Sit in adipisicing cillum mollit voluptate est. Laboris aliqua laborum occaecat excepteur ipsum anim dolor tempor dolore sit consequat. Duis irure exercitation cupidatat adipisicing aute officia incididunt culpa ea proident labore amet adipisicing. Duis labore amet magna sint qui incididunt cupidatat deserunt laborum culpa ex ea consequat ut. Voluptate duis fugiat eiusmod labore esse duis aliqua est culpa incididunt. Nulla deserunt in cillum ea dolore mollit proident nisi veniam aliquip eu. Aute magna quis culpa excepteur excepteur aliquip occaecat Lorem fugiat.\r\n", "registered": "2014-07-28T16:57:08-12:00", "latitude": 49.103566, "longitude": 11.48368, "tags": [ "exercitation", "pariatur", "do", "ullamco", "fugiat", "laborum", "excepteur" ], "friends": [ { "id": 0, "name": "Brooks Oconnor" }, { "id": 1, "name": "Erma Dejesus" }, { "id": 2, "name": "Anthony Cline" } ], "greeting": "Hello, Meyers Lott! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20175a4c2a834a4f87", "index": 934, "guid": "49d77502-0b32-46b6-849b-9addbe28dca4", "isActive": false, "balance": "$3,777.28", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Aline Larson", "gender": "female", "company": "KONGENE", "email": "alinelarson@kongene.com", "phone": "+1 (876) 496-2677", "address": "873 Vermont Court, Coyote, Virginia, 877", "about": "Proident et labore officia cupidatat labore ex. Anim cillum duis fugiat et labore ullamco in Lorem voluptate occaecat. Incididunt voluptate Lorem amet velit dolore tempor aliquip Lorem in pariatur irure. Dolore minim fugiat Lorem commodo pariatur cillum quis enim ullamco sit qui ea.\r\n", "registered": "2014-09-16T17:43:04-12:00", "latitude": 34.309395, "longitude": 21.711534, "tags": [ "laborum", "minim", "culpa", "nisi", "sunt", "ipsum", "culpa" ], "friends": [ { "id": 0, "name": "Barrett Velazquez" }, { "id": 1, "name": "Eddie Newman" }, { "id": 2, "name": "Best Dyer" } ], "greeting": "Hello, Aline Larson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20f018a4243d0ca266", "index": 935, "guid": "e8deed7c-656f-4b7f-b9c0-9fab8202160a", "isActive": true, "balance": "$3,132.33", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Judy Blair", "gender": "female", "company": "FREAKIN", "email": "judyblair@freakin.com", "phone": "+1 (828) 439-2318", "address": "415 Langham Street, Gorst, Kentucky, 321", "about": "Nulla mollit in cillum ad adipisicing eu mollit. Esse in est dolore ex ut consectetur exercitation dolore labore culpa. Lorem labore et mollit sunt. Aliqua cillum incididunt anim nostrud qui. Nostrud adipisicing nisi minim exercitation ea esse fugiat eu. Id sit nisi commodo labore esse eiusmod consequat labore dolor aliquip voluptate tempor cillum sint. Sint amet qui in ad irure proident cupidatat laboris dolor.\r\n", "registered": "2014-04-17T17:45:20-12:00", "latitude": -87.592195, "longitude": -49.763165, "tags": [ "esse", "ex", "minim", "dolor", "proident", "velit", "id" ], "friends": [ { "id": 0, "name": "Park Keller" }, { "id": 1, "name": "Myra Hampton" }, { "id": 2, "name": "Katie Hernandez" } ], "greeting": "Hello, Judy Blair! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2029a92ff39a046d70", "index": 936, "guid": "53c19976-8338-4b70-9f6e-1d38e8b1b73c", "isActive": false, "balance": "$2,807.78", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Imogene Nguyen", "gender": "female", "company": "GEOFORM", "email": "imogenenguyen@geoform.com", "phone": "+1 (881) 422-3328", "address": "630 Coleman Street, Watrous, Connecticut, 4350", "about": "Id enim id ex proident ipsum reprehenderit eiusmod amet mollit dolore. Velit aliquip ad et aute sunt esse ut ullamco deserunt quis velit officia ullamco esse. Proident ut Lorem consectetur exercitation officia aute anim et pariatur commodo nostrud anim enim. Qui aliquip anim id amet amet adipisicing et eu nisi. Consectetur voluptate consectetur dolor aliquip velit laboris officia aliqua consectetur et non do adipisicing et. Tempor proident pariatur velit exercitation est labore dolor minim est pariatur pariatur. Laborum sunt ad fugiat pariatur dolore ea velit reprehenderit qui aliqua aute ut.\r\n", "registered": "2014-07-17T23:54:34-12:00", "latitude": -45.14846, "longitude": -135.892324, "tags": [ "occaecat", "amet", "sunt", "minim", "in", "sit", "aliquip" ], "friends": [ { "id": 0, "name": "Bettye Ingram" }, { "id": 1, "name": "Audra Maldonado" }, { "id": 2, "name": "Evangeline Guthrie" } ], "greeting": "Hello, Imogene Nguyen! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20343224d7ff5e01ed", "index": 937, "guid": "d8dfbe2c-9428-4221-82dc-2eb76ba0cc85", "isActive": false, "balance": "$3,123.96", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Cabrera Fletcher", "gender": "male", "company": "PROSURE", "email": "cabrerafletcher@prosure.com", "phone": "+1 (901) 545-2801", "address": "144 Newel Street, Catherine, Mississippi, 6015", "about": "Excepteur quis proident sunt ullamco consequat aute irure sint eu ullamco fugiat consectetur ex voluptate. Sunt elit ea aliqua qui. Deserunt pariatur aliqua sit nisi sint consectetur enim consequat eiusmod velit anim deserunt elit. Officia aute amet non ea ad excepteur id adipisicing culpa laboris laboris. Cillum ad ut dolor ex. Id nulla Lorem fugiat ea cupidatat fugiat occaecat non. Ea aliqua deserunt irure sit ut est in nisi.\r\n", "registered": "2014-08-31T05:11:24-12:00", "latitude": 15.904729, "longitude": -128.035525, "tags": [ "irure", "dolor", "ea", "irure", "nulla", "eu", "aute" ], "friends": [ { "id": 0, "name": "Casandra Jarvis" }, { "id": 1, "name": "Bonita Hinton" }, { "id": 2, "name": "Bird Battle" } ], "greeting": "Hello, Cabrera Fletcher! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea205a2bd2dff915c394", "index": 938, "guid": "700326e1-49ae-448d-a9c9-77392336437c", "isActive": false, "balance": "$3,187.88", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Denise Allen", "gender": "female", "company": "BEDLAM", "email": "deniseallen@bedlam.com", "phone": "+1 (980) 455-2317", "address": "418 McKinley Avenue, Glenville, Washington, 3699", "about": "Dolore est voluptate eiusmod culpa nostrud aute eu enim proident. In aliquip irure ullamco ullamco Lorem esse enim culpa irure. Aute amet in sint proident.\r\n", "registered": "2014-04-30T10:00:13-12:00", "latitude": -81.326729, "longitude": -45.979968, "tags": [ "fugiat", "aute", "ipsum", "sit", "qui", "aute", "eiusmod" ], "friends": [ { "id": 0, "name": "Leblanc Barrett" }, { "id": 1, "name": "Consuelo Rojas" }, { "id": 2, "name": "Weeks Dotson" } ], "greeting": "Hello, Denise Allen! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea208ba373bf228424bc", "index": 939, "guid": "bf6aa160-fdef-4995-a668-10616c85ad77", "isActive": false, "balance": "$1,574.19", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Arline Spence", "gender": "female", "company": "GEEKKO", "email": "arlinespence@geekko.com", "phone": "+1 (933) 581-3861", "address": "288 Pineapple Street, Devon, Tennessee, 1920", "about": "Excepteur id id eu in deserunt est cupidatat amet. Elit labore ea ullamco nostrud laborum enim laboris aliquip qui eu nisi pariatur et. Adipisicing cillum eiusmod dolor et ex ullamco ipsum esse esse aliquip id deserunt consectetur eiusmod.\r\n", "registered": "2014-05-29T00:14:35-12:00", "latitude": -58.475423, "longitude": -101.975831, "tags": [ "culpa", "et", "do", "et", "anim", "qui", "laboris" ], "friends": [ { "id": 0, "name": "Enid Burke" }, { "id": 1, "name": "Diana Rosario" }, { "id": 2, "name": "Hurley Stephenson" } ], "greeting": "Hello, Arline Spence! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20bb3d12f217116d1d", "index": 940, "guid": "a0236367-ebd9-4c68-8448-7feb0f93bcbe", "isActive": false, "balance": "$1,506.93", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Vaughan Frederick", "gender": "male", "company": "BUZZWORKS", "email": "vaughanfrederick@buzzworks.com", "phone": "+1 (945) 558-3442", "address": "639 Ridgewood Avenue, Stevens, Alabama, 7795", "about": "Qui deserunt ea laboris laboris. Reprehenderit do id duis irure ex pariatur culpa anim reprehenderit magna et. Duis mollit quis ex sunt duis cupidatat est tempor laborum excepteur Lorem dolore adipisicing.\r\n", "registered": "2014-08-08T10:33:32-12:00", "latitude": 84.748318, "longitude": 122.503914, "tags": [ "qui", "sit", "sit", "elit", "cillum", "non", "laboris" ], "friends": [ { "id": 0, "name": "Vera Kirkland" }, { "id": 1, "name": "Corine Wall" }, { "id": 2, "name": "Ola Parsons" } ], "greeting": "Hello, Vaughan Frederick! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20376ea330bd4fb637", "index": 941, "guid": "28757ab8-ef7f-4dcf-b838-9527463d6236", "isActive": false, "balance": "$2,322.39", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Adrian Curtis", "gender": "female", "company": "QUILTIGEN", "email": "adriancurtis@quiltigen.com", "phone": "+1 (982) 506-3647", "address": "933 Overbaugh Place, Taft, Ohio, 6399", "about": "Labore laboris do adipisicing amet. Dolor ex culpa esse ex. Ex aliqua ad et Lorem elit est eiusmod sint ad eu. Nisi anim anim cupidatat nisi duis. Velit mollit anim commodo et sit fugiat veniam et incididunt aliqua veniam aliquip culpa. Eiusmod voluptate consectetur eiusmod aute veniam consectetur velit sunt eu duis non in. Non esse duis quis eiusmod.\r\n", "registered": "2014-03-25T00:14:35-13:00", "latitude": -89.013148, "longitude": -113.439928, "tags": [ "do", "adipisicing", "in", "sit", "labore", "id", "ipsum" ], "friends": [ { "id": 0, "name": "Singleton Diaz" }, { "id": 1, "name": "Fox Henderson" }, { "id": 2, "name": "Warner Fisher" } ], "greeting": "Hello, Adrian Curtis! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2076b8c186e0937833", "index": 942, "guid": "4245360d-8c64-463f-aca8-76f4002922cc", "isActive": false, "balance": "$3,029.44", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Tasha Forbes", "gender": "female", "company": "VIRVA", "email": "tashaforbes@virva.com", "phone": "+1 (981) 558-2763", "address": "496 Doscher Street, Biehle, Hawaii, 2014", "about": "Dolore ipsum non cupidatat ullamco enim nostrud sit amet ad. Dolore cupidatat ea commodo est consectetur incididunt. Pariatur deserunt ipsum dolore fugiat cillum minim exercitation mollit do culpa occaecat ut enim. Occaecat incididunt nisi sit laboris eiusmod anim. Ut nisi ex officia ipsum dolore velit aliqua commodo proident labore exercitation. Dolor exercitation nisi dolor nulla anim anim. Ipsum reprehenderit laborum culpa adipisicing dolore ea elit do dolor consectetur deserunt nisi.\r\n", "registered": "2014-07-24T07:31:08-12:00", "latitude": 15.272528, "longitude": 171.027587, "tags": [ "labore", "elit", "exercitation", "amet", "magna", "commodo", "dolor" ], "friends": [ { "id": 0, "name": "Mcguire Bass" }, { "id": 1, "name": "White Rowland" }, { "id": 2, "name": "Gillespie Horn" } ], "greeting": "Hello, Tasha Forbes! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20ab8a1adf5b4f1126", "index": 943, "guid": "c2ebd9d3-ce0e-484a-abb6-7b3090856e29", "isActive": false, "balance": "$3,821.59", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Melva Yates", "gender": "female", "company": "TYPHONICA", "email": "melvayates@typhonica.com", "phone": "+1 (993) 452-3034", "address": "601 Argyle Road, Conway, New Mexico, 5172", "about": "Sit occaecat consectetur duis labore aliqua occaecat sit id veniam culpa anim. Et anim deserunt sunt elit amet veniam pariatur duis ut deserunt eu. Sunt veniam enim ex minim laborum consectetur minim. Magna aliquip et qui magna. Sit irure laborum nostrud esse dolor mollit deserunt eiusmod ipsum adipisicing officia laborum laborum.\r\n", "registered": "2014-08-07T00:09:44-12:00", "latitude": -12.128732, "longitude": -20.630413, "tags": [ "esse", "amet", "occaecat", "et", "quis", "quis", "nostrud" ], "friends": [ { "id": 0, "name": "Goldie Spears" }, { "id": 1, "name": "Danielle Hester" }, { "id": 2, "name": "Hinton Fernandez" } ], "greeting": "Hello, Melva Yates! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20a2cf1ecedb2e4789", "index": 944, "guid": "0231ff14-8735-4df6-b750-f1261ed73912", "isActive": true, "balance": "$3,248.93", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Acevedo Sweeney", "gender": "male", "company": "VIOCULAR", "email": "acevedosweeney@viocular.com", "phone": "+1 (994) 586-2900", "address": "165 Columbia Place, Somerset, Maryland, 9150", "about": "Sunt ad veniam labore ipsum amet reprehenderit culpa non anim. Ipsum ea ipsum elit eiusmod reprehenderit duis mollit ad deserunt. Ullamco cillum adipisicing voluptate dolor labore incididunt nisi nostrud dolor reprehenderit laborum consectetur labore.\r\n", "registered": "2014-06-12T08:26:47-12:00", "latitude": 41.369277, "longitude": -66.499598, "tags": [ "dolore", "est", "consequat", "deserunt", "mollit", "commodo", "laboris" ], "friends": [ { "id": 0, "name": "Stuart Abbott" }, { "id": 1, "name": "Everett Kane" }, { "id": 2, "name": "Della Clements" } ], "greeting": "Hello, Acevedo Sweeney! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea208c272c9e82ea174c", "index": 945, "guid": "13b401f0-7d0c-4018-8807-a8bc0c382d66", "isActive": true, "balance": "$2,574.83", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Frederick Romero", "gender": "male", "company": "TROLLERY", "email": "frederickromero@trollery.com", "phone": "+1 (986) 556-3711", "address": "511 Alice Court, Woodruff, Alaska, 4129", "about": "Amet elit pariatur sint aute qui sunt exercitation occaecat dolor nostrud excepteur qui esse. Anim elit consequat cupidatat officia exercitation minim consequat minim minim non cupidatat tempor. Eu fugiat laboris exercitation minim pariatur qui officia officia quis elit veniam nisi aliquip culpa. Veniam cillum nisi excepteur dolor fugiat adipisicing.\r\n", "registered": "2014-06-29T18:50:25-12:00", "latitude": 3.439112, "longitude": 99.425244, "tags": [ "amet", "sit", "eiusmod", "aliquip", "consequat", "consectetur", "velit" ], "friends": [ { "id": 0, "name": "Louise Moore" }, { "id": 1, "name": "Janna Adams" }, { "id": 2, "name": "Bernadine Mcfadden" } ], "greeting": "Hello, Frederick Romero! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20331d726dddb127d2", "index": 946, "guid": "867b2271-ec00-4705-81f5-1a730534d251", "isActive": false, "balance": "$3,156.32", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Bush Clarke", "gender": "male", "company": "OBLIQ", "email": "bushclarke@obliq.com", "phone": "+1 (919) 502-2362", "address": "405 Onderdonk Avenue, Lisco, Arizona, 8452", "about": "Dolore sunt culpa fugiat culpa aute enim ullamco non fugiat. Adipisicing dolore pariatur sint ullamco ipsum incididunt commodo enim anim cupidatat commodo laboris nisi. In dolor veniam est esse quis proident cupidatat aute consectetur. Velit est commodo consequat laborum culpa velit. Amet exercitation culpa incididunt aliquip proident amet duis laboris ex.\r\n", "registered": "2014-02-21T12:44:21-13:00", "latitude": 84.261264, "longitude": -67.603102, "tags": [ "duis", "pariatur", "aute", "excepteur", "reprehenderit", "amet", "aliqua" ], "friends": [ { "id": 0, "name": "Fay Church" }, { "id": 1, "name": "Carissa David" }, { "id": 2, "name": "Young Mcdonald" } ], "greeting": "Hello, Bush Clarke! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea206bce8259b509058b", "index": 947, "guid": "474f3692-a704-4ef0-ae42-b82e388b4526", "isActive": false, "balance": "$3,033.36", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Wiley Lindsay", "gender": "male", "company": "KLUGGER", "email": "wileylindsay@klugger.com", "phone": "+1 (903) 438-3261", "address": "487 Devoe Street, Veguita, Federated States Of Micronesia, 4935", "about": "Non aute sunt et consectetur sit veniam irure sit mollit aliqua fugiat magna deserunt velit. Ex nostrud dolor nisi in mollit aliquip anim magna dolor veniam elit adipisicing. Deserunt officia tempor ex veniam pariatur in qui et cillum irure eiusmod voluptate. Cupidatat tempor cillum duis enim in et aliqua dolore esse aliquip qui incididunt aute consequat. Duis sint nulla minim amet nostrud ut elit ut Lorem officia.\r\n", "registered": "2014-05-29T15:44:37-12:00", "latitude": 74.861577, "longitude": -79.571989, "tags": [ "nostrud", "incididunt", "ex", "qui", "sunt", "aliquip", "in" ], "friends": [ { "id": 0, "name": "Perry Key" }, { "id": 1, "name": "Brandie Murray" }, { "id": 2, "name": "Yates Phelps" } ], "greeting": "Hello, Wiley Lindsay! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20b5008852556c8e6f", "index": 948, "guid": "a4b1da1b-c0e4-4202-9f29-2fea19a85516", "isActive": false, "balance": "$3,738.62", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Bartlett Wolf", "gender": "male", "company": "BOVIS", "email": "bartlettwolf@bovis.com", "phone": "+1 (827) 501-2278", "address": "527 Poplar Street, Trexlertown, Oklahoma, 5511", "about": "Laboris nostrud est et ut tempor mollit cillum in sit reprehenderit amet. Anim eu aliquip minim aliqua ipsum Lorem non reprehenderit elit incididunt. Sit duis aliqua fugiat nulla ipsum dolor excepteur veniam anim proident nulla incididunt Lorem irure. Eu occaecat excepteur id fugiat anim non aliqua ex eu qui cupidatat. Pariatur cupidatat aliquip reprehenderit non proident do velit adipisicing ea eu ut Lorem aute id. Do ea tempor incididunt voluptate cillum.\r\n", "registered": "2014-01-20T08:20:49-13:00", "latitude": 14.611804, "longitude": 30.373051, "tags": [ "duis", "eu", "sit", "nostrud", "voluptate", "ullamco", "pariatur" ], "friends": [ { "id": 0, "name": "Berger Hooper" }, { "id": 1, "name": "Cecelia Mills" }, { "id": 2, "name": "Dunn Middleton" } ], "greeting": "Hello, Bartlett Wolf! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea200db90a13e944a28e", "index": 949, "guid": "1d9ca739-3330-4fc8-bd6b-7c8a8391fe42", "isActive": true, "balance": "$2,719.85", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Lidia Hawkins", "gender": "female", "company": "EVIDENDS", "email": "lidiahawkins@evidends.com", "phone": "+1 (896) 478-2632", "address": "361 Concord Street, Riegelwood, Michigan, 4388", "about": "Adipisicing id proident irure culpa ex anim. Amet cillum ea in laboris. Id ex sunt est minim nulla anim velit laborum ex.\r\n", "registered": "2014-02-09T19:12:44-13:00", "latitude": -29.815739, "longitude": 46.809324, "tags": [ "excepteur", "aute", "nostrud", "id", "laboris", "ad", "dolore" ], "friends": [ { "id": 0, "name": "Beach Norris" }, { "id": 1, "name": "Meredith Rich" }, { "id": 2, "name": "Nielsen Cervantes" } ], "greeting": "Hello, Lidia Hawkins! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2026293a627f69fbe7", "index": 950, "guid": "f832d931-0668-467f-902d-8f6189f0d0cd", "isActive": true, "balance": "$1,614.78", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Rhea Campbell", "gender": "female", "company": "SENTIA", "email": "rheacampbell@sentia.com", "phone": "+1 (915) 433-3744", "address": "768 Schenck Court, Gordon, Kansas, 8695", "about": "Nisi dolore reprehenderit reprehenderit duis aliqua do nostrud. Sit reprehenderit mollit quis ullamco. Sunt qui reprehenderit ex nostrud consectetur do voluptate do sit anim incididunt exercitation incididunt velit.\r\n", "registered": "2014-09-18T21:39:15-12:00", "latitude": 47.381149, "longitude": -5.29456, "tags": [ "ullamco", "voluptate", "fugiat", "dolor", "irure", "officia", "aliquip" ], "friends": [ { "id": 0, "name": "Glover Mcfarland" }, { "id": 1, "name": "Camacho Beach" }, { "id": 2, "name": "Pennington Vaughn" } ], "greeting": "Hello, Rhea Campbell! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20dd07b36bd483a376", "index": 951, "guid": "a658cee3-9e97-4e44-af51-6194e09faa08", "isActive": true, "balance": "$3,379.38", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Becky Ashley", "gender": "female", "company": "ENTHAZE", "email": "beckyashley@enthaze.com", "phone": "+1 (899) 558-2288", "address": "946 Sackett Street, Jenkinsville, South Dakota, 2302", "about": "Magna labore aliqua occaecat aliquip elit culpa. Qui culpa anim deserunt proident tempor amet consectetur. Duis cillum sit laboris ea laborum reprehenderit magna reprehenderit pariatur eu nisi culpa ex ipsum. Laboris nisi id cillum tempor est et id fugiat deserunt laborum deserunt amet magna. Duis ipsum elit deserunt elit ullamco aliqua excepteur. Est reprehenderit eu tempor id et.\r\n", "registered": "2014-04-23T14:42:40-12:00", "latitude": 52.005412, "longitude": 132.855704, "tags": [ "amet", "laboris", "voluptate", "ex", "cillum", "aliquip", "aliquip" ], "friends": [ { "id": 0, "name": "Owens Chandler" }, { "id": 1, "name": "Stacy Vaughan" }, { "id": 2, "name": "Knox Robbins" } ], "greeting": "Hello, Becky Ashley! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea200dd57612106c559c", "index": 952, "guid": "2dd8d066-656c-4d64-bc4b-905ffd8a53e0", "isActive": true, "balance": "$2,949.97", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Herring Levine", "gender": "male", "company": "MEDALERT", "email": "herringlevine@medalert.com", "phone": "+1 (973) 454-3133", "address": "573 Leonard Street, Lund, West Virginia, 4232", "about": "Labore ut culpa nisi enim est dolor. Magna consequat excepteur irure sunt ea velit ex do Lorem reprehenderit elit. Dolor cillum commodo et minim Lorem aute magna aute ea. Consectetur laborum ipsum ea aute ea ea laboris laboris non.\r\n", "registered": "2014-06-02T10:50:08-12:00", "latitude": 67.991141, "longitude": 59.644656, "tags": [ "ullamco", "non", "aliqua", "culpa", "reprehenderit", "deserunt", "est" ], "friends": [ { "id": 0, "name": "Justice Combs" }, { "id": 1, "name": "House Schwartz" }, { "id": 2, "name": "Alvarado Sims" } ], "greeting": "Hello, Herring Levine! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2053644026575d09aa", "index": 953, "guid": "dea628ee-8f28-4013-93a8-bb643dc7516a", "isActive": true, "balance": "$2,139.75", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Gwen Maxwell", "gender": "female", "company": "TALKOLA", "email": "gwenmaxwell@talkola.com", "phone": "+1 (823) 447-2446", "address": "835 Walker Court, Bloomington, Texas, 4603", "about": "Ut consequat sint in commodo et pariatur eiusmod occaecat qui nulla laboris pariatur. Aliquip do dolore ut nostrud occaecat. Ut labore non commodo aliquip occaecat exercitation nostrud laborum ipsum. Quis sint elit velit do proident culpa commodo elit labore ad labore officia. Ad deserunt ea dolor mollit exercitation exercitation et enim sunt est.\r\n", "registered": "2014-05-20T15:02:01-12:00", "latitude": 15.622205, "longitude": -65.584626, "tags": [ "in", "ut", "non", "tempor", "officia", "ex", "adipisicing" ], "friends": [ { "id": 0, "name": "Polly Talley" }, { "id": 1, "name": "Ingram Knowles" }, { "id": 2, "name": "Duke Green" } ], "greeting": "Hello, Gwen Maxwell! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20c451c1f223ca72e4", "index": 954, "guid": "2bff00bb-16b6-435d-9a37-05b2892c585c", "isActive": true, "balance": "$1,217.31", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Harrison Gutierrez", "gender": "male", "company": "ORBIFLEX", "email": "harrisongutierrez@orbiflex.com", "phone": "+1 (871) 579-3766", "address": "582 Oxford Street, Sanders, Oregon, 2019", "about": "Consequat aliqua nisi exercitation qui veniam mollit et veniam Lorem ad officia irure mollit fugiat. Deserunt laboris aliqua anim labore dolor ipsum exercitation velit sit. Minim excepteur est enim in ipsum commodo et commodo aliqua pariatur eu laborum velit eiusmod. Ullamco excepteur et magna voluptate ullamco anim eu duis proident irure laborum. Laborum sit irure et magna ea ullamco anim laborum occaecat.\r\n", "registered": "2014-04-28T04:05:10-12:00", "latitude": -38.790365, "longitude": 5.370949, "tags": [ "voluptate", "eu", "Lorem", "incididunt", "quis", "Lorem", "do" ], "friends": [ { "id": 0, "name": "Wong Rivers" }, { "id": 1, "name": "Stefanie Garner" }, { "id": 2, "name": "Bethany Mann" } ], "greeting": "Hello, Harrison Gutierrez! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea200d050f4f43f30a00", "index": 955, "guid": "e4f80c0f-38d0-414e-bcb7-1d1e77e98987", "isActive": true, "balance": "$1,945.10", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Elma Harvey", "gender": "female", "company": "COMTOUR", "email": "elmaharvey@comtour.com", "phone": "+1 (985) 435-2988", "address": "766 Dunne Place, Gilgo, Nevada, 9982", "about": "Ea aliquip deserunt quis reprehenderit ut. Fugiat nulla id non qui consequat excepteur dolor velit. Magna consequat aliqua sunt ullamco.\r\n", "registered": "2014-08-04T14:41:14-12:00", "latitude": 42.590599, "longitude": -119.17091, "tags": [ "Lorem", "amet", "adipisicing", "duis", "non", "ut", "amet" ], "friends": [ { "id": 0, "name": "Sabrina Pollard" }, { "id": 1, "name": "Gibbs Davenport" }, { "id": 2, "name": "Bradford Norton" } ], "greeting": "Hello, Elma Harvey! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2036906e345e1c475c", "index": 956, "guid": "05681479-5c43-4c2b-b4fe-f0b1af77e5e1", "isActive": false, "balance": "$1,354.80", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Henderson Mendez", "gender": "male", "company": "LUMBREX", "email": "hendersonmendez@lumbrex.com", "phone": "+1 (911) 465-3839", "address": "893 Eldert Lane, Durham, Minnesota, 248", "about": "Dolore tempor Lorem consectetur ullamco officia enim. Mollit ex non adipisicing nisi esse duis sunt id dolore laboris et in tempor voluptate. Id do nisi ex commodo duis do cillum. Officia occaecat ea Lorem do eu ad deserunt in reprehenderit ex. Est veniam occaecat anim eu labore et exercitation anim commodo nostrud.\r\n", "registered": "2014-07-24T02:37:01-12:00", "latitude": 27.379576, "longitude": -169.055676, "tags": [ "laborum", "et", "tempor", "dolore", "et", "laborum", "deserunt" ], "friends": [ { "id": 0, "name": "Lila George" }, { "id": 1, "name": "Joan Park" }, { "id": 2, "name": "Weber Kerr" } ], "greeting": "Hello, Henderson Mendez! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20db8cbcc1db750c5d", "index": 957, "guid": "96ea6b27-13d5-4b74-96c4-96c598aa4ba5", "isActive": true, "balance": "$3,404.69", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Elisa Roberts", "gender": "female", "company": "SURETECH", "email": "elisaroberts@suretech.com", "phone": "+1 (990) 490-3622", "address": "634 Fleet Place, Downsville, Missouri, 5829", "about": "Aute pariatur tempor culpa excepteur adipisicing sint mollit nostrud eu enim amet cillum. Ipsum reprehenderit esse id et. Nisi ea nulla minim adipisicing Lorem mollit occaecat nisi enim sit consectetur qui fugiat ea. Ex non nisi excepteur qui dolore laborum pariatur. Labore et aliquip ad tempor.\r\n", "registered": "2014-04-13T13:31:41-12:00", "latitude": 41.206638, "longitude": 8.320224, "tags": [ "reprehenderit", "velit", "consequat", "sunt", "id", "ut", "voluptate" ], "friends": [ { "id": 0, "name": "Salazar Holder" }, { "id": 1, "name": "Arnold Rollins" }, { "id": 2, "name": "Letitia Gonzalez" } ], "greeting": "Hello, Elisa Roberts! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea209f1fd8c7dfdd14ab", "index": 958, "guid": "ac358ee5-6727-4516-a534-1f880333b9e2", "isActive": false, "balance": "$1,842.71", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Alisha Gonzales", "gender": "female", "company": "MAGNEMO", "email": "alishagonzales@magnemo.com", "phone": "+1 (912) 446-3470", "address": "783 Canal Avenue, Ventress, Rhode Island, 656", "about": "Elit et officia pariatur veniam exercitation magna elit incididunt ad. Tempor enim non excepteur commodo et dolore commodo. Et est Lorem aliqua eu sunt Lorem non laboris in duis.\r\n", "registered": "2014-04-23T22:29:50-12:00", "latitude": -78.50416, "longitude": 178.703142, "tags": [ "ut", "minim", "nostrud", "laboris", "nisi", "minim", "elit" ], "friends": [ { "id": 0, "name": "Joyce Dickson" }, { "id": 1, "name": "Louisa Jordan" }, { "id": 2, "name": "Blanche Herman" } ], "greeting": "Hello, Alisha Gonzales! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20d5b346c2ac4d8713", "index": 959, "guid": "a0d3202a-6428-426d-b743-0825eaed72d4", "isActive": false, "balance": "$3,955.75", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Ford Mcmahon", "gender": "male", "company": "PHARMACON", "email": "fordmcmahon@pharmacon.com", "phone": "+1 (982) 567-3671", "address": "542 Tiffany Place, Lindcove, Florida, 9754", "about": "Aliqua sit ex ut cillum ea dolore minim. Cillum dolor pariatur nulla nostrud sunt tempor velit laborum ut minim. Dolore consectetur voluptate adipisicing nulla est sit proident dolore elit deserunt. Laborum sunt aute ut pariatur ad do irure et aliquip Lorem voluptate est exercitation consequat. Id ea reprehenderit in do sint cupidatat consequat ullamco ea amet ad.\r\n", "registered": "2014-07-12T09:38:18-12:00", "latitude": -51.529428, "longitude": -32.819373, "tags": [ "laboris", "laboris", "do", "ipsum", "excepteur", "velit", "adipisicing" ], "friends": [ { "id": 0, "name": "Cassie Frost" }, { "id": 1, "name": "Sherry Dale" }, { "id": 2, "name": "Frankie Taylor" } ], "greeting": "Hello, Ford Mcmahon! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea205a0296f340c931e5", "index": 960, "guid": "8eb7afde-01d0-41a4-97b4-f0b4e5ff4988", "isActive": true, "balance": "$2,378.32", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Roberson Kirby", "gender": "male", "company": "VICON", "email": "robersonkirby@vicon.com", "phone": "+1 (845) 595-2570", "address": "921 Plaza Street, Gardners, North Carolina, 6529", "about": "Sunt ullamco enim ea officia velit aute. Qui excepteur magna occaecat excepteur sit labore sit. Mollit commodo voluptate elit deserunt excepteur enim anim non mollit ullamco. Sunt occaecat eu adipisicing non exercitation nisi et. Minim esse exercitation labore nostrud voluptate quis ea laboris sint mollit nostrud enim duis mollit. Cupidatat consequat reprehenderit incididunt ex exercitation.\r\n", "registered": "2014-03-17T15:18:20-13:00", "latitude": -63.701852, "longitude": 14.018587, "tags": [ "aute", "pariatur", "in", "excepteur", "deserunt", "ex", "tempor" ], "friends": [ { "id": 0, "name": "Bradley Hale" }, { "id": 1, "name": "Kerry Ballard" }, { "id": 2, "name": "Livingston Daugherty" } ], "greeting": "Hello, Roberson Kirby! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2066a2971374ac6e6e", "index": 961, "guid": "6f211444-b4fe-4823-bc8f-8cfe6f4a17bc", "isActive": true, "balance": "$1,454.52", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Coffey Cobb", "gender": "male", "company": "EXOSTREAM", "email": "coffeycobb@exostream.com", "phone": "+1 (880) 588-2345", "address": "592 Middleton Street, Vallonia, New Hampshire, 8740", "about": "Nostrud laboris pariatur occaecat officia nostrud. Duis in reprehenderit aute labore cillum minim qui. Eiusmod reprehenderit enim cillum ea excepteur occaecat culpa commodo esse enim cillum dolore cupidatat. Minim excepteur reprehenderit velit mollit mollit elit ipsum adipisicing dolor ad officia. Irure cillum non tempor mollit duis eiusmod do sunt tempor nulla. Ea nulla aliqua dolore velit in qui fugiat sit dolor et consectetur laborum. Dolor incididunt ea exercitation voluptate excepteur esse ullamco ea elit reprehenderit nisi duis.\r\n", "registered": "2014-03-06T08:31:18-13:00", "latitude": -66.919746, "longitude": -171.22511, "tags": [ "eiusmod", "minim", "nostrud", "enim", "nulla", "nisi", "deserunt" ], "friends": [ { "id": 0, "name": "Violet Phillips" }, { "id": 1, "name": "Ewing Savage" }, { "id": 2, "name": "Willa Maynard" } ], "greeting": "Hello, Coffey Cobb! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2016f8f5383c102d56", "index": 962, "guid": "5f94e9fd-35ca-494c-8a93-26a6ee0b26af", "isActive": true, "balance": "$2,858.31", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Shauna Colon", "gender": "female", "company": "MARVANE", "email": "shaunacolon@marvane.com", "phone": "+1 (957) 469-2102", "address": "534 Bay Street, Ada, Arkansas, 8099", "about": "Culpa do reprehenderit enim velit. Ex tempor consectetur consequat sit aliqua officia reprehenderit adipisicing labore. Ullamco qui minim qui et enim cillum id sit aute consequat. Ad dolore officia commodo ex est aute sint duis. Eu reprehenderit exercitation labore tempor nisi reprehenderit et do commodo aliqua.\r\n", "registered": "2014-01-23T18:55:56-13:00", "latitude": -39.85856, "longitude": 163.20484, "tags": [ "ex", "ex", "id", "nostrud", "commodo", "do", "velit" ], "friends": [ { "id": 0, "name": "Kitty Pickett" }, { "id": 1, "name": "Bridges Foley" }, { "id": 2, "name": "Nanette Harding" } ], "greeting": "Hello, Shauna Colon! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea203a404ce72d4f13ba", "index": 963, "guid": "b37e47d9-64a1-444a-949a-24f747aa6fab", "isActive": true, "balance": "$2,178.83", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Elvira Ball", "gender": "female", "company": "PERMADYNE", "email": "elviraball@permadyne.com", "phone": "+1 (903) 587-2338", "address": "283 Ryder Street, Homeland, Iowa, 3895", "about": "Ea aliqua mollit consequat reprehenderit Lorem ad adipisicing exercitation excepteur dolore fugiat deserunt tempor. Irure nulla aliqua est magna sunt proident pariatur in mollit duis deserunt ullamco. Ad proident ipsum in minim sint aliquip irure ad fugiat cillum exercitation officia dolore excepteur. Aliquip minim anim dolor occaecat deserunt aliquip eiusmod laborum tempor veniam enim sunt deserunt irure.\r\n", "registered": "2014-07-09T11:21:11-12:00", "latitude": -80.22617, "longitude": -88.503847, "tags": [ "aute", "reprehenderit", "amet", "culpa", "velit", "consequat", "eu" ], "friends": [ { "id": 0, "name": "Finch Walker" }, { "id": 1, "name": "Espinoza Ferguson" }, { "id": 2, "name": "Tonia Townsend" } ], "greeting": "Hello, Elvira Ball! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2097b5d6acca61deb5", "index": 964, "guid": "b94c2210-ef6f-4e0f-8b35-8c81b7aa6359", "isActive": true, "balance": "$3,040.53", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Velasquez Knight", "gender": "male", "company": "THREDZ", "email": "velasquezknight@thredz.com", "phone": "+1 (886) 512-3146", "address": "992 Oceanic Avenue, Herald, Nebraska, 5325", "about": "Elit adipisicing ipsum sit anim elit nisi officia nostrud. Irure in velit sunt id commodo anim consequat pariatur laborum reprehenderit officia labore pariatur excepteur. Elit ea enim sit qui magna ullamco fugiat. Proident in veniam enim duis cillum laboris sint exercitation ut amet elit exercitation eu. Cillum id officia est irure cillum qui laborum. Aute minim aliqua aute proident sunt amet est proident consequat duis amet labore voluptate.\r\n", "registered": "2014-08-23T21:57:03-12:00", "latitude": 2.574934, "longitude": -178.372304, "tags": [ "mollit", "amet", "do", "cupidatat", "proident", "ea", "aliqua" ], "friends": [ { "id": 0, "name": "Chang Reynolds" }, { "id": 1, "name": "Carney Dunn" }, { "id": 2, "name": "Glenn Graham" } ], "greeting": "Hello, Velasquez Knight! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea207922be6f440cbcce", "index": 965, "guid": "494607c6-7d21-4d99-94c1-89c0989e9c22", "isActive": true, "balance": "$2,924.03", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Eliza Vincent", "gender": "female", "company": "BLUPLANET", "email": "elizavincent@bluplanet.com", "phone": "+1 (914) 479-3545", "address": "818 Mermaid Avenue, Lowell, District Of Columbia, 3052", "about": "Elit laboris adipisicing aliquip adipisicing aliqua ea dolor Lorem officia amet ex consequat. Eu excepteur sit et quis sit. Tempor enim mollit anim aliquip excepteur. Esse consectetur aute labore est enim sit aliquip amet ea proident labore.\r\n", "registered": "2014-01-27T14:00:24-13:00", "latitude": -17.019371, "longitude": 56.332398, "tags": [ "velit", "laboris", "nulla", "cillum", "dolor", "et", "ullamco" ], "friends": [ { "id": 0, "name": "Shelly Ellison" }, { "id": 1, "name": "Carly Armstrong" }, { "id": 2, "name": "Cardenas Reid" } ], "greeting": "Hello, Eliza Vincent! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea200ab4d0ce7a200cd1", "index": 966, "guid": "d274ff92-3fdf-454f-82ff-9962a98024da", "isActive": false, "balance": "$1,956.34", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Lillian Sears", "gender": "female", "company": "SLAX", "email": "lilliansears@slax.com", "phone": "+1 (856) 540-3458", "address": "442 Dearborn Court, Thynedale, New Jersey, 7561", "about": "Aliquip do anim consectetur dolor cillum tempor duis velit nulla ex. Ut sunt qui sunt quis cupidatat. Anim dolor laboris amet eu. Culpa labore Lorem amet ullamco labore sunt nostrud velit commodo. Consectetur in est id aliqua labore. Dolore irure nostrud eu enim magna anim do labore.\r\n", "registered": "2014-09-02T00:43:09-12:00", "latitude": -55.400177, "longitude": 36.074245, "tags": [ "laboris", "aute", "tempor", "nisi", "elit", "fugiat", "exercitation" ], "friends": [ { "id": 0, "name": "Lawanda Anthony" }, { "id": 1, "name": "Natasha Myers" }, { "id": 2, "name": "Angelique Raymond" } ], "greeting": "Hello, Lillian Sears! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20e9ff73dbdd35299c", "index": 967, "guid": "7ea4e595-c65a-4f37-8d5e-6ef2b971c9de", "isActive": true, "balance": "$3,315.47", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Deborah Golden", "gender": "female", "company": "CRUSTATIA", "email": "deborahgolden@crustatia.com", "phone": "+1 (806) 424-3698", "address": "459 Bijou Avenue, Harrodsburg, Palau, 2760", "about": "Ut commodo amet cillum duis nisi amet cupidatat dolor fugiat sit sunt nisi. Nostrud voluptate veniam magna anim commodo. Cillum esse labore aliquip officia sit do enim culpa sunt. In cillum voluptate occaecat anim ullamco veniam dolor duis adipisicing sunt elit dolore. Reprehenderit tempor ex id Lorem aute nostrud occaecat Lorem deserunt qui. Ea consectetur qui enim laboris voluptate.\r\n", "registered": "2014-06-11T17:19:09-12:00", "latitude": 22.840198, "longitude": -147.566473, "tags": [ "enim", "exercitation", "ex", "tempor", "ipsum", "aliquip", "esse" ], "friends": [ { "id": 0, "name": "Dominique Roy" }, { "id": 1, "name": "Fernandez Clemons" }, { "id": 2, "name": "Robles England" } ], "greeting": "Hello, Deborah Golden! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea208ce059da5c7159b1", "index": 968, "guid": "73d0a64c-5b31-48c8-8147-5a098fd68a4f", "isActive": true, "balance": "$1,397.13", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Melisa Reyes", "gender": "female", "company": "LUDAK", "email": "melisareyes@ludak.com", "phone": "+1 (825) 539-2287", "address": "552 Prospect Street, Cecilia, Puerto Rico, 4737", "about": "Ea tempor irure eu cillum fugiat enim cillum excepteur. Amet occaecat veniam duis fugiat consectetur. Adipisicing voluptate est adipisicing anim tempor laboris in dolor nulla ipsum nulla voluptate. Cupidatat non laborum aliquip laboris dolore excepteur excepteur. Enim pariatur incididunt esse eiusmod in ullamco irure eiusmod mollit dolor.\r\n", "registered": "2014-07-22T13:39:49-12:00", "latitude": 12.411143, "longitude": -22.034884, "tags": [ "adipisicing", "sint", "quis", "ullamco", "cupidatat", "aliquip", "amet" ], "friends": [ { "id": 0, "name": "Nash Shields" }, { "id": 1, "name": "Mann Tillman" }, { "id": 2, "name": "Donaldson Valentine" } ], "greeting": "Hello, Melisa Reyes! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20b388caafc3426ae2", "index": 969, "guid": "b6603b41-74f6-4b60-9908-1b87536b644a", "isActive": true, "balance": "$1,362.97", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Mckay Edwards", "gender": "male", "company": "AQUAZURE", "email": "mckayedwards@aquazure.com", "phone": "+1 (860) 519-4000", "address": "544 Ross Street, Clarktown, California, 1717", "about": "Qui ea do consequat tempor reprehenderit anim. Aute sunt anim duis non dolor incididunt dolor mollit quis nulla cillum dolor occaecat. Excepteur ipsum irure qui reprehenderit ut deserunt cillum enim sunt ipsum pariatur et. Non nisi culpa sit ad et amet occaecat.\r\n", "registered": "2014-07-17T15:13:44-12:00", "latitude": -21.133673, "longitude": -123.154983, "tags": [ "est", "sint", "quis", "ea", "elit", "fugiat", "irure" ], "friends": [ { "id": 0, "name": "Sexton Shelton" }, { "id": 1, "name": "Ramos Soto" }, { "id": 2, "name": "Kimberly Mccall" } ], "greeting": "Hello, Mckay Edwards! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea200ecd4131e0113f13", "index": 970, "guid": "cd6d1bc2-b899-46f2-a48a-b57ed15a28e4", "isActive": true, "balance": "$2,069.70", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Jessie Strong", "gender": "female", "company": "UNIWORLD", "email": "jessiestrong@uniworld.com", "phone": "+1 (859) 423-3438", "address": "793 Cyrus Avenue, Cassel, Vermont, 3026", "about": "Enim tempor magna non velit incididunt veniam magna aliquip amet dolore id do veniam cillum. Dolore et non reprehenderit non dolore aliqua proident non qui id. Pariatur culpa ex voluptate ullamco pariatur excepteur pariatur. Tempor excepteur aute minim aliqua cillum enim ea magna quis id enim adipisicing. Laborum magna nostrud velit aute. Occaecat nulla anim laborum Lorem deserunt anim nulla nostrud. Duis elit duis ipsum eiusmod.\r\n", "registered": "2014-07-14T00:31:26-12:00", "latitude": 58.662908, "longitude": 116.4587, "tags": [ "proident", "incididunt", "magna", "amet", "dolor", "commodo", "ipsum" ], "friends": [ { "id": 0, "name": "Dollie Brown" }, { "id": 1, "name": "Buckley Gregory" }, { "id": 2, "name": "Margo Mccoy" } ], "greeting": "Hello, Jessie Strong! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea206a2e156deac4c562", "index": 971, "guid": "305f70f7-4306-469f-b069-3cc3f4f90591", "isActive": false, "balance": "$3,509.18", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Sharpe Mcconnell", "gender": "male", "company": "CONCILITY", "email": "sharpemcconnell@concility.com", "phone": "+1 (847) 477-2830", "address": "438 Remsen Street, Belva, Indiana, 555", "about": "Nulla do labore duis mollit sit incididunt Lorem proident ut nostrud qui eiusmod deserunt dolor. Dolore minim officia incididunt proident labore ut sint mollit proident id nisi. Mollit commodo nisi est consectetur aliqua cupidatat amet est commodo non consectetur magna fugiat nisi. Excepteur reprehenderit deserunt labore ullamco magna aliquip pariatur ex.\r\n", "registered": "2014-03-28T17:47:52-13:00", "latitude": 9.644052, "longitude": 14.967993, "tags": [ "consequat", "ad", "amet", "cupidatat", "sit", "ut", "adipisicing" ], "friends": [ { "id": 0, "name": "Hines Collier" }, { "id": 1, "name": "Butler Baxter" }, { "id": 2, "name": "Lupe Blake" } ], "greeting": "Hello, Sharpe Mcconnell! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2013e0aa807ab380dd", "index": 972, "guid": "79096993-545e-4207-9673-f9e7bab7f8f3", "isActive": true, "balance": "$1,380.96", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Sheri Lancaster", "gender": "female", "company": "ZISIS", "email": "sherilancaster@zisis.com", "phone": "+1 (873) 541-3700", "address": "612 Doone Court, Trail, Illinois, 1528", "about": "Anim laboris consequat dolore sunt non eu qui deserunt laborum consequat. Id id amet cillum id irure. Sit nostrud dolor sint minim. Fugiat incididunt dolor tempor enim ea sunt.\r\n", "registered": "2014-08-27T09:02:41-12:00", "latitude": 18.031779, "longitude": -97.634832, "tags": [ "reprehenderit", "aute", "ut", "incididunt", "laboris", "nulla", "eu" ], "friends": [ { "id": 0, "name": "Garrett Donovan" }, { "id": 1, "name": "Joann Jenkins" }, { "id": 2, "name": "Beasley Pate" } ], "greeting": "Hello, Sheri Lancaster! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20360952714f6bb082", "index": 973, "guid": "da9671c1-0b44-4b4f-b5f6-c70ccb62d841", "isActive": false, "balance": "$2,845.12", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Shepherd Velez", "gender": "male", "company": "STOCKPOST", "email": "shepherdvelez@stockpost.com", "phone": "+1 (884) 472-3686", "address": "336 Montrose Avenue, Caln, South Carolina, 6337", "about": "Irure id voluptate ex irure cupidatat. Laborum anim Lorem sint magna Lorem pariatur elit tempor eiusmod in. Ut labore reprehenderit reprehenderit non do.\r\n", "registered": "2014-02-03T01:26:17-13:00", "latitude": 16.721474, "longitude": -174.852821, "tags": [ "ex", "ea", "laborum", "culpa", "do", "velit", "excepteur" ], "friends": [ { "id": 0, "name": "Colleen Higgins" }, { "id": 1, "name": "Carson Berry" }, { "id": 2, "name": "Peck Peterson" } ], "greeting": "Hello, Shepherd Velez! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2045755e7a6d5a3b67", "index": 974, "guid": "cf241559-d479-42e8-bad7-7c65bba66334", "isActive": false, "balance": "$3,500.10", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Leila Solomon", "gender": "female", "company": "XTH", "email": "leilasolomon@xth.com", "phone": "+1 (822) 401-3202", "address": "989 Lloyd Court, Mammoth, American Samoa, 4785", "about": "Consectetur sunt veniam anim consequat elit minim labore aute. Esse magna eiusmod Lorem commodo est aliquip. Proident deserunt irure commodo commodo duis ad non. Cupidatat duis culpa ipsum laboris cillum sint adipisicing esse est aute nisi. Ipsum non ullamco ea deserunt non esse.\r\n", "registered": "2014-08-04T03:18:02-12:00", "latitude": 81.719729, "longitude": 25.883543, "tags": [ "ea", "esse", "voluptate", "ullamco", "eiusmod", "cupidatat", "excepteur" ], "friends": [ { "id": 0, "name": "Miriam Nixon" }, { "id": 1, "name": "Manning Fulton" }, { "id": 2, "name": "Wendi Roberson" } ], "greeting": "Hello, Leila Solomon! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20200f8927c839a1af", "index": 975, "guid": "1ba5b4a5-82fa-4830-b693-f6dc5a0e0a93", "isActive": true, "balance": "$1,176.79", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Pruitt Stuart", "gender": "male", "company": "BUNGA", "email": "pruittstuart@bunga.com", "phone": "+1 (806) 571-2583", "address": "605 Bedford Place, Strong, Delaware, 871", "about": "Ut incididunt velit aliqua enim in velit elit exercitation occaecat ad ex minim eu. Reprehenderit id qui consectetur veniam dolore cillum. Consequat in reprehenderit cillum labore non eiusmod ad deserunt ea amet est est pariatur. Nisi aliqua eiusmod cillum laborum elit eu enim elit ea fugiat ex. Aliqua reprehenderit esse fugiat consectetur fugiat aliqua velit duis.\r\n", "registered": "2014-08-13T08:39:00-12:00", "latitude": -43.638761, "longitude": 1.187614, "tags": [ "proident", "laborum", "anim", "ipsum", "eu", "et", "velit" ], "friends": [ { "id": 0, "name": "Nettie Chambers" }, { "id": 1, "name": "Valeria Ellis" }, { "id": 2, "name": "Mabel Lambert" } ], "greeting": "Hello, Pruitt Stuart! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20cd7f85cf019ea664", "index": 976, "guid": "21b204d2-d30d-430a-964c-e3c95b5e9e42", "isActive": false, "balance": "$2,420.79", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Karla Guerra", "gender": "female", "company": "XERONK", "email": "karlaguerra@xeronk.com", "phone": "+1 (942) 460-2684", "address": "885 Goodwin Place, Roberts, Pennsylvania, 3836", "about": "Qui non qui sint voluptate anim officia proident. Nulla commodo proident adipisicing ullamco exercitation minim nisi culpa consequat. Laborum anim ad consequat nulla commodo deserunt nulla sunt irure irure non. Consectetur eu esse voluptate nostrud amet amet.\r\n", "registered": "2014-08-09T21:47:43-12:00", "latitude": 75.759978, "longitude": 10.869824, "tags": [ "dolore", "amet", "laborum", "velit", "quis", "do", "Lorem" ], "friends": [ { "id": 0, "name": "Karyn Stevens" }, { "id": 1, "name": "Angela Hunt" }, { "id": 2, "name": "Workman Guzman" } ], "greeting": "Hello, Karla Guerra! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20309dab79fc58f72b", "index": 977, "guid": "587ad08a-f88b-446a-b71d-22f8dae9ecdb", "isActive": false, "balance": "$2,622.19", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Joanna Hickman", "gender": "female", "company": "ACLIMA", "email": "joannahickman@aclima.com", "phone": "+1 (982) 545-3256", "address": "632 Mill Lane, Independence, Georgia, 4124", "about": "Aliqua est officia velit aliquip ullamco mollit laboris esse. Elit non et dolore exercitation veniam est et non culpa esse elit laborum. Veniam sit voluptate deserunt quis ipsum consectetur mollit excepteur culpa excepteur aliquip. Voluptate qui occaecat occaecat ullamco. Cillum aliquip labore nisi voluptate sint consequat.\r\n", "registered": "2014-08-16T21:01:25-12:00", "latitude": 84.35298, "longitude": 71.465631, "tags": [ "voluptate", "fugiat", "ea", "occaecat", "qui", "id", "aliqua" ], "friends": [ { "id": 0, "name": "Gina Cooley" }, { "id": 1, "name": "Socorro Ortiz" }, { "id": 2, "name": "Bauer French" } ], "greeting": "Hello, Joanna Hickman! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20f99b9a6a026d6f5d", "index": 978, "guid": "aba616c3-d360-430a-b25f-36c1a722b043", "isActive": true, "balance": "$1,617.10", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Bryan Carver", "gender": "male", "company": "AMTAS", "email": "bryancarver@amtas.com", "phone": "+1 (870) 585-2933", "address": "575 Madison Street, Cliff, North Dakota, 2127", "about": "Minim tempor quis amet laboris cillum aute enim aliquip enim enim id quis. Amet Lorem aute magna laboris anim anim excepteur duis dolore ipsum consequat irure. Eu anim anim ea non culpa dolore aliqua voluptate ut magna consectetur anim veniam. Aliqua consectetur nisi eiusmod irure aliquip. Tempor dolore aute excepteur sit elit nostrud sunt elit mollit. Aute officia ipsum laborum et cillum et magna mollit irure et.\r\n", "registered": "2014-07-12T00:22:51-12:00", "latitude": 59.762674, "longitude": -53.663596, "tags": [ "Lorem", "anim", "laborum", "aute", "sunt", "proident", "adipisicing" ], "friends": [ { "id": 0, "name": "Adeline Hughes" }, { "id": 1, "name": "Lola Acosta" }, { "id": 2, "name": "Marion Christian" } ], "greeting": "Hello, Bryan Carver! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea202a613898513b1f02", "index": 979, "guid": "e9e19bd2-4431-4ff9-b47f-e08c147d4081", "isActive": false, "balance": "$3,627.47", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Burns Powers", "gender": "male", "company": "EXTRAWEAR", "email": "burnspowers@extrawear.com", "phone": "+1 (872) 424-3903", "address": "583 King Street, Ballico, Louisiana, 3514", "about": "Eu cillum occaecat do minim dolor dolor elit culpa est cupidatat ullamco. Ipsum est sit occaecat ea non anim culpa enim labore quis do. Esse culpa mollit ex in tempor ad consectetur deserunt laborum proident magna ipsum. Et culpa in ad nisi veniam sint dolore ut in. Cillum id incididunt Lorem laboris veniam pariatur ad occaecat ut quis.\r\n", "registered": "2014-08-08T16:52:26-12:00", "latitude": -82.70883, "longitude": -97.515462, "tags": [ "irure", "fugiat", "est", "ad", "consequat", "voluptate", "do" ], "friends": [ { "id": 0, "name": "Edith Oliver" }, { "id": 1, "name": "Hurst Douglas" }, { "id": 2, "name": "Blanchard Brewer" } ], "greeting": "Hello, Burns Powers! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20a014b1aa6bf8fca3", "index": 980, "guid": "d17374ba-261f-4e16-b820-04d9ac7ee4cf", "isActive": true, "balance": "$3,034.93", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Cash Walsh", "gender": "male", "company": "ARCHITAX", "email": "cashwalsh@architax.com", "phone": "+1 (994) 556-2307", "address": "664 Rochester Avenue, Wyano, Northern Mariana Islands, 8203", "about": "Ullamco proident fugiat pariatur qui ipsum veniam laborum. Sint mollit dolor in ea deserunt. Duis proident sunt eiusmod consectetur elit consequat ad non ut est consectetur.\r\n", "registered": "2014-09-18T04:59:49-12:00", "latitude": 65.229279, "longitude": 21.881438, "tags": [ "ea", "dolore", "velit", "ullamco", "irure", "cillum", "nisi" ], "friends": [ { "id": 0, "name": "Lily Herring" }, { "id": 1, "name": "Jean Chaney" }, { "id": 2, "name": "Gallagher Hunter" } ], "greeting": "Hello, Cash Walsh! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea207fadc327588d0e5f", "index": 981, "guid": "3bf829d4-7b1f-4e9b-83b8-8135bf170b3a", "isActive": true, "balance": "$1,301.84", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Genevieve Cantrell", "gender": "female", "company": "KIDSTOCK", "email": "genevievecantrell@kidstock.com", "phone": "+1 (920) 526-2310", "address": "641 Ashford Street, Hoehne, Colorado, 771", "about": "Magna mollit culpa consequat enim occaecat cillum occaecat elit incididunt. Ut laboris voluptate et ad Lorem reprehenderit fugiat non anim ipsum excepteur ad Lorem. Elit eiusmod nulla id aliquip anim ad id culpa consequat. Quis ut sunt cillum id mollit deserunt excepteur.\r\n", "registered": "2014-07-09T23:19:26-12:00", "latitude": -32.512684, "longitude": 173.750901, "tags": [ "pariatur", "anim", "cillum", "ut", "magna", "velit", "non" ], "friends": [ { "id": 0, "name": "Rich Monroe" }, { "id": 1, "name": "Joyce Harper" }, { "id": 2, "name": "Wade Stout" } ], "greeting": "Hello, Genevieve Cantrell! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20bb84bcb2c51068bc", "index": 982, "guid": "dcc6d0f6-eee9-4042-b040-fcbfca606dbd", "isActive": false, "balance": "$1,245.36", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Magdalena Glenn", "gender": "female", "company": "NIPAZ", "email": "magdalenaglenn@nipaz.com", "phone": "+1 (997) 501-2425", "address": "699 Bleecker Street, Finzel, Idaho, 3331", "about": "Excepteur aliquip cupidatat aliqua ad irure sit est aliqua est. Nisi cupidatat id ipsum elit sint et culpa aliqua magna laboris eiusmod non tempor. Commodo consequat esse dolor veniam. Quis exercitation pariatur ut aliquip.\r\n", "registered": "2014-07-31T13:38:11-12:00", "latitude": 0.994758, "longitude": 56.266613, "tags": [ "magna", "culpa", "amet", "eu", "nulla", "esse", "Lorem" ], "friends": [ { "id": 0, "name": "Mendez Goff" }, { "id": 1, "name": "Contreras Cannon" }, { "id": 2, "name": "Rachael Buchanan" } ], "greeting": "Hello, Magdalena Glenn! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea200627ebaac5d73c33", "index": 983, "guid": "82be4f5c-b89e-46d9-88ab-bddd2497d326", "isActive": true, "balance": "$1,505.21", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Dorthy Trujillo", "gender": "female", "company": "ZENTIX", "email": "dorthytrujillo@zentix.com", "phone": "+1 (850) 421-3540", "address": "636 Seba Avenue, Noblestown, Marshall Islands, 2350", "about": "Aliquip ex mollit fugiat laboris mollit est et quis officia reprehenderit qui ipsum anim sint. Est eu id sit laboris irure reprehenderit irure commodo ad veniam amet et commodo ea. Lorem irure irure anim officia proident.\r\n", "registered": "2014-02-25T07:07:02-13:00", "latitude": -72.010919, "longitude": -152.840651, "tags": [ "ipsum", "elit", "ad", "nulla", "incididunt", "ex", "exercitation" ], "friends": [ { "id": 0, "name": "Sonja Pittman" }, { "id": 1, "name": "Penny Crane" }, { "id": 2, "name": "Puckett Pruitt" } ], "greeting": "Hello, Dorthy Trujillo! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20dddb739fd50846b9", "index": 984, "guid": "870c0f91-5c38-4bec-a2fe-ceb8a1c3bab4", "isActive": false, "balance": "$3,962.64", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Mccall Holmes", "gender": "male", "company": "VOLAX", "email": "mccallholmes@volax.com", "phone": "+1 (946) 540-3247", "address": "355 Kensington Street, Warsaw, New York, 6761", "about": "Consectetur eu cupidatat tempor minim laborum voluptate ea est ut. In id officia proident aliquip elit dolor do aliqua Lorem aute. Officia do occaecat quis labore fugiat non dolor culpa officia minim. Pariatur nostrud excepteur in id dolor do esse. Dolore amet minim esse voluptate ipsum nisi deserunt ipsum velit nulla culpa eiusmod. Eu nostrud sunt esse est cillum eu pariatur irure anim deserunt dolore et reprehenderit fugiat. Nostrud eu Lorem dolore occaecat voluptate irure elit irure labore cupidatat sint.\r\n", "registered": "2014-03-12T10:16:50-13:00", "latitude": 84.340979, "longitude": -29.537829, "tags": [ "dolor", "in", "id", "consectetur", "nostrud", "Lorem", "id" ], "friends": [ { "id": 0, "name": "Eve Bryant" }, { "id": 1, "name": "Stafford Cummings" }, { "id": 2, "name": "Kathryn Gilmore" } ], "greeting": "Hello, Mccall Holmes! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20ae1d9f50a13e5c64", "index": 985, "guid": "7d145120-5e66-4c61-8e48-c08744143695", "isActive": true, "balance": "$2,861.68", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Maureen Powell", "gender": "female", "company": "INSURETY", "email": "maureenpowell@insurety.com", "phone": "+1 (882) 452-2932", "address": "711 Channel Avenue, Deputy, Guam, 6875", "about": "Minim cupidatat labore excepteur elit ea ad nisi exercitation tempor enim. Laborum Lorem sit proident ipsum quis deserunt tempor dolor fugiat nulla occaecat magna eu. Irure elit esse esse labore excepteur deserunt commodo culpa laboris. Tempor do consequat veniam esse in irure velit pariatur deserunt.\r\n", "registered": "2014-06-28T00:41:53-12:00", "latitude": 61.034511, "longitude": -24.589493, "tags": [ "excepteur", "cupidatat", "ut", "fugiat", "occaecat", "ad", "cupidatat" ], "friends": [ { "id": 0, "name": "Irene Silva" }, { "id": 1, "name": "Allison Wong" }, { "id": 2, "name": "Keller Hood" } ], "greeting": "Hello, Maureen Powell! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20b2df733b046a289c", "index": 986, "guid": "4a7a68ae-9cf6-499c-b35e-864ffd9b05cc", "isActive": true, "balance": "$3,308.07", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Holmes Herrera", "gender": "male", "company": "SQUISH", "email": "holmesherrera@squish.com", "phone": "+1 (953) 447-2869", "address": "280 Visitation Place, Soham, Virgin Islands, 6210", "about": "Elit cillum Lorem excepteur nulla ullamco voluptate ex veniam aliquip irure. Dolore ipsum occaecat ad fugiat. Nisi sint aliqua consequat pariatur tempor qui nisi amet duis amet pariatur. Magna amet Lorem velit consectetur ipsum nisi sit non aute.\r\n", "registered": "2014-02-02T00:48:26-13:00", "latitude": -87.060465, "longitude": -44.94687, "tags": [ "sunt", "aute", "quis", "laboris", "duis", "aliqua", "exercitation" ], "friends": [ { "id": 0, "name": "Keri Hanson" }, { "id": 1, "name": "Britt Hammond" }, { "id": 2, "name": "Acosta Burnett" } ], "greeting": "Hello, Holmes Herrera! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20edd8eff3457e5fae", "index": 987, "guid": "d8e84f2f-fc8b-4615-aa64-7932f255ccaf", "isActive": false, "balance": "$2,965.86", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Murray Barr", "gender": "male", "company": "IRACK", "email": "murraybarr@irack.com", "phone": "+1 (843) 561-2716", "address": "401 Williams Avenue, Richmond, Massachusetts, 4525", "about": "Dolor duis quis incididunt laborum ullamco irure minim ullamco tempor id. Excepteur quis ut esse mollit mollit laborum ea exercitation occaecat elit magna qui ullamco cillum. Officia nisi veniam do duis non ut culpa cupidatat exercitation ipsum esse. Proident sit adipisicing id Lorem do dolore laboris. Veniam reprehenderit ullamco esse eiusmod eiusmod et voluptate officia ex est incididunt ea exercitation excepteur.\r\n", "registered": "2014-03-02T09:44:11-13:00", "latitude": -32.539877, "longitude": -158.981979, "tags": [ "sint", "ex", "fugiat", "quis", "do", "occaecat", "est" ], "friends": [ { "id": 0, "name": "Clare Bradley" }, { "id": 1, "name": "Cross Howard" }, { "id": 2, "name": "Noel Webster" } ], "greeting": "Hello, Murray Barr! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2080abecb46ca55c21", "index": 988, "guid": "a62589a9-a0b8-4e4a-9837-ef7c76fedf40", "isActive": false, "balance": "$2,303.48", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Martin Weber", "gender": "male", "company": "GENMEX", "email": "martinweber@genmex.com", "phone": "+1 (972) 472-2940", "address": "299 Harbor Court, Cherokee, Utah, 9330", "about": "Eu Lorem sint in esse ex nostrud nulla ad reprehenderit labore tempor. Duis eu nisi incididunt anim eiusmod cupidatat quis aliqua Lorem commodo dolor irure incididunt. Lorem proident cillum qui aliquip dolor sit officia officia eu commodo.\r\n", "registered": "2014-09-18T00:45:19-12:00", "latitude": 15.960481, "longitude": -173.40165, "tags": [ "adipisicing", "consequat", "eiusmod", "qui", "culpa", "ea", "dolore" ], "friends": [ { "id": 0, "name": "Theresa Faulkner" }, { "id": 1, "name": "Dorsey Richardson" }, { "id": 2, "name": "Schultz Hess" } ], "greeting": "Hello, Martin Weber! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2016aec87df281e052", "index": 989, "guid": "e7fe5cc0-bae8-4035-bec0-1cbdbe433ce0", "isActive": true, "balance": "$2,090.25", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Hernandez Olson", "gender": "male", "company": "STEELTAB", "email": "hernandezolson@steeltab.com", "phone": "+1 (861) 497-2605", "address": "541 Hanson Place, Linwood, Montana, 3263", "about": "Aliqua amet ex ad ea ea aliqua tempor incididunt eiusmod qui. Ex eiusmod Lorem est sit officia ipsum consequat occaecat exercitation proident. Enim sint do reprehenderit voluptate esse officia velit sint amet ex. Velit in ex ad veniam cillum veniam et. Duis duis cillum velit reprehenderit culpa duis ad nulla excepteur cupidatat veniam.\r\n", "registered": "2014-08-11T13:35:29-12:00", "latitude": -52.228591, "longitude": 42.924188, "tags": [ "duis", "esse", "amet", "esse", "ut", "commodo", "nisi" ], "friends": [ { "id": 0, "name": "Jacklyn Ferrell" }, { "id": 1, "name": "Yvonne Blevins" }, { "id": 2, "name": "Velma Andrews" } ], "greeting": "Hello, Hernandez Olson! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20c622f7a7883978e9", "index": 990, "guid": "256c1c44-784f-48c6-865f-03bb8288c587", "isActive": true, "balance": "$3,243.53", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Hilary Campos", "gender": "female", "company": "BLURRYBUS", "email": "hilarycampos@blurrybus.com", "phone": "+1 (891) 501-2955", "address": "645 Tabor Court, Kieler, Wisconsin, 7218", "about": "Aliquip ut fugiat qui laborum proident deserunt elit labore magna commodo. Sint ad laboris duis duis. Esse exercitation quis sint tempor veniam dolor id esse eu nulla cupidatat. Eu in magna mollit laboris ut et excepteur culpa dolore anim laborum culpa elit ea.\r\n", "registered": "2014-09-12T20:55:50-12:00", "latitude": 34.155138, "longitude": 159.163908, "tags": [ "elit", "laboris", "est", "ad", "irure", "voluptate", "laborum" ], "friends": [ { "id": 0, "name": "Suzanne Dean" }, { "id": 1, "name": "Underwood Cotton" }, { "id": 2, "name": "Brandi Winters" } ], "greeting": "Hello, Hilary Campos! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2003e64355fa3267cb", "index": 991, "guid": "491c46c9-8e14-42c0-9d4a-419f13b2d203", "isActive": false, "balance": "$3,263.26", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Wise Payne", "gender": "male", "company": "PIVITOL", "email": "wisepayne@pivitol.com", "phone": "+1 (840) 479-2089", "address": "556 Amboy Street, Bellfountain, Maine, 6409", "about": "Elit reprehenderit aute magna esse et quis dolor dolor. Commodo culpa qui nisi consequat excepteur cillum excepteur ea sint irure culpa magna excepteur nulla. Velit laborum cupidatat exercitation dolor commodo est dolor cillum. Nisi Lorem enim dolore do aliquip nostrud laboris minim. Ad ex occaecat exercitation fugiat do anim pariatur.\r\n", "registered": "2014-03-20T13:34:04-13:00", "latitude": 8.222677, "longitude": -143.19395, "tags": [ "dolore", "in", "nostrud", "nisi", "est", "voluptate", "ea" ], "friends": [ { "id": 0, "name": "Letha Puckett" }, { "id": 1, "name": "Gilbert Finley" }, { "id": 2, "name": "Sasha Conrad" } ], "greeting": "Hello, Wise Payne! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2030c41eb8b241b374", "index": 992, "guid": "95f539b9-0dad-494b-b4fb-162629dfaaf8", "isActive": false, "balance": "$2,141.04", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Alba Allison", "gender": "female", "company": "PROFLEX", "email": "albaallison@proflex.com", "phone": "+1 (966) 445-2585", "address": "914 Ruby Street, National, Virginia, 3136", "about": "Magna aliquip consectetur ad tempor nisi ipsum in. Et sint pariatur incididunt ipsum. Anim est officia nisi irure consequat. Ipsum esse mollit pariatur reprehenderit aute dolor et fugiat est pariatur occaecat laboris. Ex sit non cillum reprehenderit eu.\r\n", "registered": "2014-01-22T04:33:04-13:00", "latitude": -45.34949, "longitude": 29.805163, "tags": [ "culpa", "laboris", "sint", "velit", "officia", "laborum", "consectetur" ], "friends": [ { "id": 0, "name": "Roberts Dennis" }, { "id": 1, "name": "Maura Bright" }, { "id": 2, "name": "Goodwin Freeman" } ], "greeting": "Hello, Alba Allison! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2009a2e00430e3b587", "index": 993, "guid": "cb296507-f244-4dcb-bcf3-bb3a30f5c9a5", "isActive": false, "balance": "$1,289.18", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Francisca Vargas", "gender": "female", "company": "GRONK", "email": "franciscavargas@gronk.com", "phone": "+1 (878) 470-2842", "address": "967 Bancroft Place, Neibert, Kentucky, 7498", "about": "Irure id eu exercitation commodo aute sunt proident anim ipsum excepteur adipisicing Lorem. Excepteur cupidatat ex dolor aute et velit deserunt. Id commodo sit minim id aute nulla laborum incididunt amet ex anim velit fugiat. Reprehenderit incididunt elit minim cupidatat. Minim velit mollit commodo elit nisi. Labore ex ea mollit et nostrud duis. Duis et labore deserunt labore labore aliquip commodo.\r\n", "registered": "2014-05-27T16:57:00-12:00", "latitude": 22.681193, "longitude": 144.917556, "tags": [ "elit", "tempor", "ad", "consectetur", "ex", "incididunt", "qui" ], "friends": [ { "id": 0, "name": "Sharp Fuentes" }, { "id": 1, "name": "Perez Giles" }, { "id": 2, "name": "Strickland Singleton" } ], "greeting": "Hello, Francisca Vargas! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20e8e2004ca76ef755", "index": 994, "guid": "3440ca5b-e82f-4617-b53a-8d244861927b", "isActive": true, "balance": "$2,712.44", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Hampton Farmer", "gender": "male", "company": "VISALIA", "email": "hamptonfarmer@visalia.com", "phone": "+1 (934) 566-2131", "address": "403 Opal Court, Canby, Connecticut, 3881", "about": "Ut voluptate eu Lorem minim aliquip quis sint sunt aliqua ipsum enim commodo. Dolor minim ea ex voluptate. Deserunt eiusmod excepteur eu cupidatat nisi cupidatat ad ex nisi ex ad. Et proident ad aliquip magna culpa exercitation consectetur sit labore nulla.\r\n", "registered": "2014-08-12T10:57:47-12:00", "latitude": -52.697649, "longitude": 158.865602, "tags": [ "commodo", "voluptate", "tempor", "tempor", "id", "eu", "voluptate" ], "friends": [ { "id": 0, "name": "Albert Lewis" }, { "id": 1, "name": "Julie Castaneda" }, { "id": 2, "name": "Alisa Burgess" } ], "greeting": "Hello, Hampton Farmer! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea208b05c97e6ccf5242", "index": 995, "guid": "56d2be2a-abe5-4478-a9a0-2ac90c25fd07", "isActive": false, "balance": "$1,153.24", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Rosella Brooks", "gender": "female", "company": "DENTREX", "email": "rosellabrooks@dentrex.com", "phone": "+1 (891) 528-2361", "address": "447 Holt Court, Norfolk, Mississippi, 7575", "about": "Reprehenderit elit cupidatat anim commodo. In in sunt aliqua velit non reprehenderit velit magna. Anim id magna exercitation in commodo. Laborum irure voluptate aliqua qui fugiat occaecat labore. Eiusmod incididunt tempor reprehenderit occaecat id tempor nisi. Anim reprehenderit magna exercitation ullamco nisi exercitation non.\r\n", "registered": "2014-03-18T01:56:14-13:00", "latitude": 18.364575, "longitude": 106.604933, "tags": [ "incididunt", "mollit", "tempor", "aliqua", "adipisicing", "est", "Lorem" ], "friends": [ { "id": 0, "name": "Flores Boyer" }, { "id": 1, "name": "Rosanna Cortez" }, { "id": 2, "name": "Davenport Beck" } ], "greeting": "Hello, Rosella Brooks! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea203ff37e2efeb0f7ac", "index": 996, "guid": "f1f57976-98f3-4ca2-b333-7be9fa212528", "isActive": false, "balance": "$1,415.46", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Dotson Hurley", "gender": "male", "company": "UXMOX", "email": "dotsonhurley@uxmox.com", "phone": "+1 (804) 597-2840", "address": "996 Ridge Court, Kohatk, Washington, 931", "about": "Ut amet consectetur sit deserunt excepteur. Minim minim magna enim incididunt ex proident eiusmod. Fugiat dolore consequat qui elit eu cupidatat est officia ipsum mollit pariatur pariatur non. Laboris aliquip culpa cupidatat elit fugiat do id et. Nostrud aliquip ea enim labore consequat sunt ut ut adipisicing nulla.\r\n", "registered": "2014-04-29T07:14:17-12:00", "latitude": -76.626424, "longitude": 78.31411, "tags": [ "ex", "ex", "Lorem", "enim", "cupidatat", "elit", "duis" ], "friends": [ { "id": 0, "name": "Luella Macias" }, { "id": 1, "name": "Jamie Buckner" }, { "id": 2, "name": "Mollie Cooke" } ], "greeting": "Hello, Dotson Hurley! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20fc341a34efd6d210", "index": 997, "guid": "d0f4dbd2-a2a6-44a4-b1db-d56d2d08de7f", "isActive": true, "balance": "$3,944.19", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Kim Garrett", "gender": "male", "company": "ECOLIGHT", "email": "kimgarrett@ecolight.com", "phone": "+1 (922) 557-3743", "address": "716 Barwell Terrace, Sylvanite, Tennessee, 8776", "about": "Non incididunt nulla enim est id consequat qui eu in officia id dolore voluptate ad. Aliquip consectetur exercitation ut fugiat officia eu commodo excepteur laborum Lorem. Aliqua minim exercitation aute dolore mollit ut dolore eiusmod et exercitation dolore proident eiusmod incididunt.\r\n", "registered": "2014-09-08T13:07:11-12:00", "latitude": -45.131726, "longitude": -133.402011, "tags": [ "aliquip", "cupidatat", "duis", "ex", "excepteur", "ex", "in" ], "friends": [ { "id": 0, "name": "Audrey Mcleod" }, { "id": 1, "name": "Williamson Mcgee" }, { "id": 2, "name": "Patrick Horne" } ], "greeting": "Hello, Kim Garrett! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2042b61f1d4ed443a5", "index": 998, "guid": "e93601ee-2e54-4cab-82eb-bd22e2842931", "isActive": true, "balance": "$3,724.80", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Berg Kinney", "gender": "male", "company": "FUTURIS", "email": "bergkinney@futuris.com", "phone": "+1 (954) 436-2279", "address": "109 Arlington Avenue, Esmont, Alabama, 3853", "about": "Enim elit officia dolor non elit esse do in irure. Minim ex eu aliquip eu duis pariatur ullamco est qui voluptate amet id veniam incididunt. Exercitation deserunt cillum mollit ex ad et amet. Aliqua elit reprehenderit voluptate enim dolore.\r\n", "registered": "2014-05-04T20:17:35-12:00", "latitude": -22.435669, "longitude": 150.465766, "tags": [ "sint", "minim", "sunt", "Lorem", "incididunt", "sunt", "reprehenderit" ], "friends": [ { "id": 0, "name": "Dolores Witt" }, { "id": 1, "name": "Kristie Perkins" }, { "id": 2, "name": "Meadows Merrill" } ], "greeting": "Hello, Berg Kinney! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20502f115931884ce7", "index": 999, "guid": "b5409e08-7c6e-4512-bdbd-76c259ab47b6", "isActive": false, "balance": "$2,297.95", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Downs Cherry", "gender": "male", "company": "DIGIPRINT", "email": "downscherry@digiprint.com", "phone": "+1 (902) 574-3867", "address": "846 Montauk Avenue, Wyoming, Ohio, 2663", "about": "Tempor laboris mollit excepteur elit mollit cupidatat deserunt veniam tempor cupidatat qui aliqua. Ex minim ea ipsum in cupidatat eu ipsum aliquip sint. Dolor dolor pariatur est consectetur velit nostrud cillum sunt velit ullamco Lorem in. Et esse consequat adipisicing culpa. Eiusmod magna consectetur officia eiusmod ullamco eiusmod anim minim culpa. Nulla laboris duis esse tempor nostrud ipsum id voluptate id sit elit adipisicing. Sint fugiat eu officia nostrud elit magna reprehenderit ad adipisicing commodo in.\r\n", "registered": "2014-03-07T11:16:05-13:00", "latitude": 16.054523, "longitude": -74.116873, "tags": [ "id", "irure", "dolore", "pariatur", "et", "ullamco", "occaecat" ], "friends": [ { "id": 0, "name": "Karen Lucas" }, { "id": 1, "name": "Rosemarie Hancock" }, { "id": 2, "name": "Lesley Wilkerson" } ], "greeting": "Hello, Downs Cherry! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20defa078e4e9a7ecb", "index": 1000, "guid": "3a0c6b08-2ba6-44c9-9379-4e9b92e8250f", "isActive": false, "balance": "$3,830.22", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Dodson Zamora", "gender": "male", "company": "SHADEASE", "email": "dodsonzamora@shadease.com", "phone": "+1 (880) 497-3670", "address": "569 Noel Avenue, Goldfield, Hawaii, 475", "about": "Laboris sit esse enim ad laboris minim minim labore officia. Ipsum amet culpa aliquip voluptate esse deserunt ex mollit officia dolor irure incididunt proident est. Elit et laborum proident cupidatat.\r\n", "registered": "2014-04-14T12:28:00-12:00", "latitude": -30.105, "longitude": -28.64633, "tags": [ "incididunt", "non", "aute", "qui", "fugiat", "eu", "officia" ], "friends": [ { "id": 0, "name": "Brock Mack" }, { "id": 1, "name": "Salas Oneill" }, { "id": 2, "name": "Flynn Lawson" } ], "greeting": "Hello, Dodson Zamora! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20036a6a82ec9242a5", "index": 1001, "guid": "09f56d96-2be4-4690-a640-ad8c8431f34d", "isActive": true, "balance": "$3,184.24", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Porter Thomas", "gender": "male", "company": "OPTIQUE", "email": "porterthomas@optique.com", "phone": "+1 (919) 522-3399", "address": "302 Hausman Street, Yardville, New Mexico, 7634", "about": "Dolor ex quis do incididunt ex id. Esse id exercitation aute sunt excepteur qui. Sunt anim ullamco aliquip minim sint aliqua enim duis dolore veniam consectetur pariatur. Veniam anim enim id voluptate amet est magna qui enim id id pariatur. Aliquip est aliquip velit enim officia duis esse consectetur non consequat ea est.\r\n", "registered": "2014-07-23T07:23:07-12:00", "latitude": -26.410627, "longitude": 15.566331, "tags": [ "in", "sit", "eiusmod", "tempor", "laborum", "ipsum", "sunt" ], "friends": [ { "id": 0, "name": "Small Stein" }, { "id": 1, "name": "Gabrielle Jacobs" }, { "id": 2, "name": "Ballard Malone" } ], "greeting": "Hello, Porter Thomas! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20df7514a8d9278a75", "index": 1002, "guid": "770d2f5a-4ef4-44d7-a02e-6d2c60bda1d6", "isActive": true, "balance": "$1,518.26", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Meagan Lynch", "gender": "female", "company": "LEXICONDO", "email": "meaganlynch@lexicondo.com", "phone": "+1 (990) 551-3346", "address": "806 Krier Place, Evergreen, Maryland, 5267", "about": "Culpa incididunt sint in irure magna. Lorem aute dolor incididunt enim cillum nisi ex. Cillum aute ea tempor ex quis. Tempor veniam proident eiusmod nulla.\r\n", "registered": "2014-01-28T20:29:57-13:00", "latitude": 40.316033, "longitude": -141.934013, "tags": [ "consequat", "amet", "esse", "voluptate", "nostrud", "aute", "nisi" ], "friends": [ { "id": 0, "name": "Deanne Hendrix" }, { "id": 1, "name": "Pam Meyer" }, { "id": 2, "name": "Kline Walton" } ], "greeting": "Hello, Meagan Lynch! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20cbacae1dbdd97f1a", "index": 1003, "guid": "a2ef7772-c0f2-4ba9-b7a1-fcc6208ff9ff", "isActive": true, "balance": "$1,529.98", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Mari Stanley", "gender": "female", "company": "POLARIUM", "email": "maristanley@polarium.com", "phone": "+1 (993) 493-3083", "address": "923 Clermont Avenue, Wanship, Alaska, 5677", "about": "Anim laborum aliqua eu commodo id. Ipsum sit ipsum deserunt eiusmod elit pariatur enim nostrud Lorem laboris. Elit incididunt anim ullamco anim duis laborum nostrud elit cillum adipisicing ex.\r\n", "registered": "2014-04-13T20:35:24-12:00", "latitude": 80.34134, "longitude": -5.581255, "tags": [ "cupidatat", "nisi", "ea", "ex", "duis", "aliquip", "in" ], "friends": [ { "id": 0, "name": "Carmella Collins" }, { "id": 1, "name": "Soto Sosa" }, { "id": 2, "name": "Marie Sampson" } ], "greeting": "Hello, Mari Stanley! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20faadb9753324359d", "index": 1004, "guid": "10962cd4-ead4-42f8-8e5e-b8d5dccc38a1", "isActive": true, "balance": "$1,467.58", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Marsha Cain", "gender": "female", "company": "COLUMELLA", "email": "marshacain@columella.com", "phone": "+1 (858) 410-3152", "address": "462 Harway Avenue, Vowinckel, Arizona, 7669", "about": "Tempor velit aute sint mollit proident cillum. Aliqua cillum et ad aliquip mollit excepteur veniam. Adipisicing mollit excepteur ullamco cupidatat dolor voluptate qui cillum eiusmod nisi excepteur aliqua quis.\r\n", "registered": "2014-06-13T21:14:42-12:00", "latitude": -54.899234, "longitude": -85.664438, "tags": [ "ea", "ut", "aliqua", "sit", "anim", "amet", "et" ], "friends": [ { "id": 0, "name": "Ramsey Sawyer" }, { "id": 1, "name": "Odessa Wilder" }, { "id": 2, "name": "Marylou Mccray" } ], "greeting": "Hello, Marsha Cain! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20215de918a5674f16", "index": 1005, "guid": "60853f71-4dc8-40d9-92b3-739ff45ff670", "isActive": false, "balance": "$1,137.42", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Durham Sanford", "gender": "male", "company": "GEEKFARM", "email": "durhamsanford@geekfarm.com", "phone": "+1 (883) 434-2263", "address": "325 Howard Alley, Sabillasville, Federated States Of Micronesia, 8460", "about": "Veniam esse culpa labore nostrud quis fugiat mollit cupidatat et esse. Esse dolore ullamco dolor sunt duis dolore fugiat velit nostrud. Anim consectetur aute nisi ex dolore aliqua pariatur duis fugiat culpa. Adipisicing aute culpa ipsum magna ipsum cupidatat ut excepteur eiusmod amet in non. Labore amet anim commodo esse voluptate cillum reprehenderit duis esse ut duis tempor ipsum. Nulla aliqua Lorem laboris reprehenderit nostrud sit.\r\n", "registered": "2014-08-14T05:12:46-12:00", "latitude": 6.342919, "longitude": 14.64342, "tags": [ "nostrud", "minim", "qui", "proident", "eu", "aliqua", "do" ], "friends": [ { "id": 0, "name": "Jannie Cardenas" }, { "id": 1, "name": "Saundra Morrow" }, { "id": 2, "name": "Rachelle Livingston" } ], "greeting": "Hello, Durham Sanford! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20ec7702c882ca05ad", "index": 1006, "guid": "59f07ecb-d289-467f-947e-6ee71a6ace9e", "isActive": false, "balance": "$3,045.44", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Hanson Hamilton", "gender": "male", "company": "SLOGANAUT", "email": "hansonhamilton@sloganaut.com", "phone": "+1 (987) 517-3831", "address": "280 Doughty Street, Stockwell, Oklahoma, 9343", "about": "Magna sint non ullamco laborum ut id quis enim laboris proident elit culpa irure. Laboris et pariatur amet magna. In veniam minim eiusmod eiusmod incididunt ad quis. Proident amet fugiat aliquip pariatur Lorem exercitation sit reprehenderit. Nostrud sint sit consequat labore occaecat dolore velit in. Dolor minim enim velit laborum aute. Minim cupidatat ad nisi commodo.\r\n", "registered": "2014-01-31T14:40:15-13:00", "latitude": -61.84879, "longitude": 71.205125, "tags": [ "minim", "laborum", "minim", "ad", "eiusmod", "adipisicing", "reprehenderit" ], "friends": [ { "id": 0, "name": "Allison Shepherd" }, { "id": 1, "name": "Conner Clayton" }, { "id": 2, "name": "Jenifer Atkinson" } ], "greeting": "Hello, Hanson Hamilton! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2054b446f27757d08e", "index": 1007, "guid": "ec32e9e9-4355-4e52-9ebf-e0fb2a1b4436", "isActive": true, "balance": "$1,479.86", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Ilene Clay", "gender": "female", "company": "XLEEN", "email": "ileneclay@xleen.com", "phone": "+1 (803) 597-3171", "address": "520 Irvington Place, Zarephath, Michigan, 9432", "about": "Labore sint cupidatat tempor id duis aliqua. Consequat amet sint nostrud esse sit. Elit labore voluptate tempor voluptate elit proident est do nostrud sint do veniam occaecat consectetur.\r\n", "registered": "2014-07-03T05:29:11-12:00", "latitude": 9.625845, "longitude": 68.797249, "tags": [ "magna", "eu", "ipsum", "magna", "labore", "minim", "ullamco" ], "friends": [ { "id": 0, "name": "Hattie Whitehead" }, { "id": 1, "name": "Antonia Rush" }, { "id": 2, "name": "Mccullough Hayden" } ], "greeting": "Hello, Ilene Clay! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea201265fe917741c620", "index": 1008, "guid": "2085bfa2-beb4-49d8-84f1-804c308b1433", "isActive": false, "balance": "$3,910.21", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Woods Wooten", "gender": "male", "company": "CABLAM", "email": "woodswooten@cablam.com", "phone": "+1 (981) 585-2695", "address": "730 Oakland Place, Wintersburg, Kansas, 5959", "about": "Tempor ea voluptate id ad tempor veniam amet ea. Eiusmod consequat pariatur elit enim dolore dolore laborum adipisicing deserunt tempor ad voluptate dolore veniam. Est qui fugiat commodo pariatur. Eiusmod quis adipisicing velit occaecat culpa esse. Sunt sit velit id exercitation cillum consectetur qui est commodo commodo.\r\n", "registered": "2014-01-28T06:00:26-13:00", "latitude": -87.802633, "longitude": -148.4323, "tags": [ "cillum", "sunt", "velit", "amet", "labore", "ad", "eiusmod" ], "friends": [ { "id": 0, "name": "Meghan Blankenship" }, { "id": 1, "name": "Trina Kent" }, { "id": 2, "name": "Todd Ramirez" } ], "greeting": "Hello, Woods Wooten! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20194d82c3623c9771", "index": 1009, "guid": "39a3e440-ae20-4095-a0f3-44f9e242943d", "isActive": true, "balance": "$1,919.27", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Gutierrez Hardy", "gender": "male", "company": "TERRAGO", "email": "gutierrezhardy@terrago.com", "phone": "+1 (824) 473-2465", "address": "897 Sharon Street, Cartwright, South Dakota, 1813", "about": "Est exercitation minim aliqua nulla anim sunt et pariatur culpa magna consequat fugiat nisi. Exercitation ad laborum id duis est adipisicing do consequat sit. Voluptate cillum pariatur pariatur aute sit est aliqua et cupidatat cupidatat magna quis aliqua. Adipisicing voluptate adipisicing non nostrud voluptate consequat ex qui amet.\r\n", "registered": "2014-03-25T17:36:12-13:00", "latitude": 12.753346, "longitude": -119.872676, "tags": [ "sit", "commodo", "nulla", "excepteur", "consequat", "nostrud", "pariatur" ], "friends": [ { "id": 0, "name": "Shaffer Ross" }, { "id": 1, "name": "Macdonald Wade" }, { "id": 2, "name": "Rosie Cunningham" } ], "greeting": "Hello, Gutierrez Hardy! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea208f7f6e4a98798610", "index": 1010, "guid": "497fff46-9ab2-4c15-8575-5f90a7f604aa", "isActive": true, "balance": "$1,514.87", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Norma Noble", "gender": "female", "company": "BRISTO", "email": "normanoble@bristo.com", "phone": "+1 (939) 539-3295", "address": "426 Ainslie Street, Savannah, West Virginia, 6343", "about": "Culpa nisi in ipsum deserunt minim proident eiusmod dolor ad laboris voluptate culpa minim. Amet ex officia occaecat nisi in esse. Elit officia nisi reprehenderit anim veniam duis proident in pariatur consequat anim laborum veniam qui. Ipsum sit pariatur nostrud anim dolor aute culpa sint sit in eiusmod. Adipisicing magna exercitation sit fugiat. Id irure irure ad Lorem adipisicing anim ad ad aliquip amet adipisicing qui.\r\n", "registered": "2014-04-07T23:40:59-12:00", "latitude": -32.393315, "longitude": 134.81363, "tags": [ "id", "consectetur", "in", "mollit", "ad", "minim", "in" ], "friends": [ { "id": 0, "name": "Felicia Montgomery" }, { "id": 1, "name": "Garza Tran" }, { "id": 2, "name": "Mccray Valdez" } ], "greeting": "Hello, Norma Noble! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20b0f55b916c99f0e4", "index": 1011, "guid": "2fa679e9-bcb0-41cf-b04e-035c7ea07836", "isActive": true, "balance": "$2,476.43", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Copeland Hebert", "gender": "male", "company": "FORTEAN", "email": "copelandhebert@fortean.com", "phone": "+1 (882) 518-3003", "address": "341 Woodhull Street, Sterling, Texas, 1505", "about": "Minim mollit in pariatur irure culpa commodo nisi laborum. Aliqua anim enim culpa velit sint cillum est laboris. Quis sint tempor sit occaecat ad pariatur. Irure quis ipsum nulla incididunt commodo. Sint laboris cupidatat irure anim sit fugiat deserunt adipisicing nostrud consectetur tempor consequat.\r\n", "registered": "2014-06-20T23:02:49-12:00", "latitude": 10.814406, "longitude": -32.776117, "tags": [ "tempor", "reprehenderit", "fugiat", "cillum", "occaecat", "tempor", "sunt" ], "friends": [ { "id": 0, "name": "Decker Simmons" }, { "id": 1, "name": "Salinas Fox" }, { "id": 2, "name": "Norman Mosley" } ], "greeting": "Hello, Copeland Hebert! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20860274d7b9030b8a", "index": 1012, "guid": "3da5dbf3-6ea9-4372-a7b4-cdbcd1005210", "isActive": false, "balance": "$1,340.70", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Robert Cole", "gender": "female", "company": "SNORUS", "email": "robertcole@snorus.com", "phone": "+1 (969) 572-2910", "address": "140 Adelphi Street, Tyhee, Oregon, 9845", "about": "Fugiat ipsum officia esse id deserunt. Anim sit incididunt sunt aliqua elit nostrud cupidatat cupidatat nostrud. Ipsum duis laborum laborum ullamco deserunt veniam nulla.\r\n", "registered": "2014-04-05T07:21:31-13:00", "latitude": 76.355346, "longitude": 144.739843, "tags": [ "id", "sit", "elit", "tempor", "consectetur", "voluptate", "reprehenderit" ], "friends": [ { "id": 0, "name": "Perkins Waters" }, { "id": 1, "name": "Weaver Vega" }, { "id": 2, "name": "Suarez Madden" } ], "greeting": "Hello, Robert Cole! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2028d9ba1f629d9e7a", "index": 1013, "guid": "b02d9bb4-ad57-42b6-a0d8-fbb5a64ea844", "isActive": false, "balance": "$3,309.20", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Sondra Bradford", "gender": "female", "company": "CENTREXIN", "email": "sondrabradford@centrexin.com", "phone": "+1 (816) 510-3175", "address": "797 Fuller Place, Hillsboro, Nevada, 9362", "about": "Commodo laboris aute pariatur minim aliquip officia ea. Cupidatat incididunt anim reprehenderit non consectetur nostrud reprehenderit sunt consequat ea esse duis. Aliquip nostrud amet aute pariatur cillum aute minim. Dolore dolore voluptate non consequat quis deserunt. Aliquip dolor deserunt exercitation proident quis quis sit ea sunt.\r\n", "registered": "2014-08-05T00:52:31-12:00", "latitude": -89.102927, "longitude": -135.59748, "tags": [ "nulla", "consequat", "eu", "fugiat", "non", "velit", "laborum" ], "friends": [ { "id": 0, "name": "Winters Slater" }, { "id": 1, "name": "Olivia Maddox" }, { "id": 2, "name": "Cline Ward" } ], "greeting": "Hello, Sondra Bradford! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea203ec4767237b3e24b", "index": 1014, "guid": "b20f52b8-f2a0-42cb-85b9-717d982937c9", "isActive": false, "balance": "$3,543.31", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Etta Rice", "gender": "female", "company": "JASPER", "email": "ettarice@jasper.com", "phone": "+1 (840) 403-2409", "address": "423 Bank Street, Cade, Minnesota, 8218", "about": "Ut commodo ex pariatur fugiat reprehenderit nulla Lorem voluptate magna deserunt non. Nostrud deserunt ad sunt anim enim officia velit cupidatat. Dolor irure veniam non et sunt mollit culpa magna non eu ex ex. Deserunt do elit id voluptate qui commodo esse. Mollit mollit adipisicing aute proident aliqua aliquip esse fugiat fugiat reprehenderit excepteur. Anim labore labore est do incididunt consequat ad dolore est in.\r\n", "registered": "2014-04-28T21:03:54-12:00", "latitude": -87.548047, "longitude": 120.465586, "tags": [ "aute", "consequat", "eu", "dolor", "irure", "voluptate", "excepteur" ], "friends": [ { "id": 0, "name": "Mattie Hendricks" }, { "id": 1, "name": "Garner Morse" }, { "id": 2, "name": "Conway James" } ], "greeting": "Hello, Etta Rice! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea209edb669ff2f0ee7e", "index": 1015, "guid": "67578c13-1054-483d-a327-2c5ac8cc18bb", "isActive": true, "balance": "$3,278.49", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Anastasia Griffith", "gender": "female", "company": "ZENTRY", "email": "anastasiagriffith@zentry.com", "phone": "+1 (804) 483-2046", "address": "493 Dikeman Street, Goochland, Missouri, 2399", "about": "Aliquip nostrud do deserunt ullamco consectetur dolore anim. Enim deserunt ut officia tempor id anim et officia ipsum proident laboris. Anim ullamco ex aliquip pariatur ad consectetur dolor irure excepteur. Fugiat sunt consequat elit aliqua deserunt pariatur mollit amet aliquip laborum. Nulla reprehenderit magna sint et velit fugiat. Est ad sit ullamco proident minim est incididunt velit commodo nulla. Veniam nostrud pariatur aute culpa magna ex laboris amet laborum sunt dolore amet.\r\n", "registered": "2014-04-18T09:58:51-12:00", "latitude": -45.46112, "longitude": 7.330419, "tags": [ "incididunt", "culpa", "sint", "esse", "reprehenderit", "cillum", "officia" ], "friends": [ { "id": 0, "name": "Dorothy Webb" }, { "id": 1, "name": "James Kirk" }, { "id": 2, "name": "Vanessa Rutledge" } ], "greeting": "Hello, Anastasia Griffith! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea209e1ffcbadc811938", "index": 1016, "guid": "9edc0f71-0fdc-438d-bee9-b278bc4430ea", "isActive": true, "balance": "$3,769.46", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Lina Baker", "gender": "female", "company": "ACRODANCE", "email": "linabaker@acrodance.com", "phone": "+1 (966) 590-3417", "address": "254 Borinquen Pl, Leroy, Rhode Island, 8044", "about": "Ad deserunt dolor eiusmod officia. Consequat incididunt reprehenderit amet voluptate voluptate voluptate eu incididunt incididunt Lorem excepteur. Tempor labore enim aute fugiat aliqua aliqua aute laboris veniam irure. Mollit officia irure laborum ad. Do officia labore ut Lorem in amet. Do esse id cillum ea culpa Lorem fugiat.\r\n", "registered": "2014-07-08T05:25:59-12:00", "latitude": -61.764874, "longitude": 2.440598, "tags": [ "enim", "pariatur", "sunt", "amet", "aliquip", "elit", "occaecat" ], "friends": [ { "id": 0, "name": "Obrien Daniels" }, { "id": 1, "name": "Lou Wright" }, { "id": 2, "name": "Baker Patel" } ], "greeting": "Hello, Lina Baker! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20658c196ed6f3f1fc", "index": 1017, "guid": "17fdceeb-ec0c-4cf2-aa9b-840e80231760", "isActive": true, "balance": "$2,031.41", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Mcmillan Cook", "gender": "male", "company": "NORSUL", "email": "mcmillancook@norsul.com", "phone": "+1 (881) 430-3746", "address": "141 Wallabout Street, Crumpler, Florida, 993", "about": "Nisi deserunt minim mollit veniam sunt proident minim eiusmod. Anim velit ex sunt do aute in cupidatat. Dolore ad reprehenderit nisi ullamco voluptate. Ut adipisicing consequat dolore quis ea irure in sit nostrud esse. Eiusmod tempor et et qui magna magna ex anim ut nulla.\r\n", "registered": "2014-07-29T04:15:31-12:00", "latitude": -56.183234, "longitude": -144.418353, "tags": [ "voluptate", "anim", "duis", "eu", "irure", "exercitation", "sint" ], "friends": [ { "id": 0, "name": "Lorie Bullock" }, { "id": 1, "name": "Horton Nicholson" }, { "id": 2, "name": "Hickman Grimes" } ], "greeting": "Hello, Mcmillan Cook! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea206fd66d35848ff90d", "index": 1018, "guid": "6b6252c1-5d02-4b27-9f8b-609a9a1fffa6", "isActive": true, "balance": "$1,563.82", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Allyson Olsen", "gender": "female", "company": "ASSITIA", "email": "allysonolsen@assitia.com", "phone": "+1 (804) 440-2383", "address": "781 Kane Street, Waterford, North Carolina, 2814", "about": "Enim ex culpa ipsum commodo incididunt nulla voluptate reprehenderit. Deserunt non anim culpa proident labore laboris commodo ex voluptate ad laborum in eu nisi. Pariatur magna magna consectetur nostrud nulla. Aliquip nulla aliquip sint reprehenderit laborum cupidatat culpa dolor elit deserunt ea laboris eiusmod.\r\n", "registered": "2014-01-02T05:02:17-13:00", "latitude": -57.897761, "longitude": 142.007401, "tags": [ "ex", "irure", "Lorem", "labore", "consequat", "deserunt", "cillum" ], "friends": [ { "id": 0, "name": "Hess Ramsey" }, { "id": 1, "name": "Patsy Barrera" }, { "id": 2, "name": "Victoria Moses" } ], "greeting": "Hello, Allyson Olsen! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20cc380c81dad4e4bf", "index": 1019, "guid": "759925a6-2e57-401b-8d8a-9e7db892d92a", "isActive": false, "balance": "$1,208.83", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Mullins Huff", "gender": "male", "company": "PROVIDCO", "email": "mullinshuff@providco.com", "phone": "+1 (827) 589-3481", "address": "565 Dodworth Street, Terlingua, New Hampshire, 5804", "about": "Minim ad cupidatat esse cillum ipsum ad velit cupidatat aliquip excepteur officia duis aliquip dolor. Consectetur proident labore id consectetur commodo nulla ex occaecat Lorem quis sint ad elit. Nulla esse ut nulla fugiat velit eiusmod officia laboris laborum esse irure voluptate consectetur veniam. Aute officia voluptate deserunt mollit duis nulla sint sint consectetur reprehenderit minim ea duis. Minim enim consequat Lorem tempor magna commodo consequat ad et sit qui deserunt culpa. Anim excepteur laborum non deserunt reprehenderit anim nulla irure occaecat mollit sint ut reprehenderit. Minim irure sunt aliquip qui ut excepteur amet non dolore consectetur sit reprehenderit ullamco.\r\n", "registered": "2014-01-23T02:43:11-13:00", "latitude": 83.858064, "longitude": -74.073605, "tags": [ "quis", "ea", "reprehenderit", "aliqua", "labore", "irure", "elit" ], "friends": [ { "id": 0, "name": "Amalia Mcintyre" }, { "id": 1, "name": "Fern Hicks" }, { "id": 2, "name": "Katharine Carlson" } ], "greeting": "Hello, Mullins Huff! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea206164a20fc3b14ee9", "index": 1020, "guid": "cf2a2fd9-bdfc-46a7-935f-bc5be0d500cf", "isActive": false, "balance": "$1,480.71", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Lottie Ayers", "gender": "female", "company": "EYERIS", "email": "lottieayers@eyeris.com", "phone": "+1 (902) 476-2917", "address": "683 Wilson Avenue, Nipinnawasee, Arkansas, 9597", "about": "Voluptate commodo dolore eiusmod minim anim sit do. Aliquip cupidatat deserunt esse mollit nulla amet nulla nulla ipsum elit reprehenderit. Est voluptate ipsum veniam incididunt et Lorem eiusmod Lorem aute quis laboris magna irure. Lorem fugiat aliqua officia exercitation minim sint sit enim ipsum. Fugiat consectetur ex labore aliqua officia et. Sunt aliqua velit qui officia eu laboris duis consectetur cupidatat.\r\n", "registered": "2014-01-12T04:42:06-13:00", "latitude": 70.168158, "longitude": 44.891852, "tags": [ "ea", "do", "aliqua", "proident", "nisi", "est", "minim" ], "friends": [ { "id": 0, "name": "Lydia Leach" }, { "id": 1, "name": "Aguilar Lyons" }, { "id": 2, "name": "Ruiz Robles" } ], "greeting": "Hello, Lottie Ayers! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20d007337dcb24f261", "index": 1021, "guid": "7c15de12-6f04-4ee8-a6fb-c1027f234f0d", "isActive": true, "balance": "$3,329.48", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Tran Curry", "gender": "male", "company": "TRIPSCH", "email": "trancurry@tripsch.com", "phone": "+1 (984) 466-2623", "address": "751 Clarkson Avenue, Holcombe, Iowa, 4291", "about": "Ex labore non sunt enim cupidatat voluptate ad voluptate culpa dolor non reprehenderit. Sunt reprehenderit pariatur irure nulla nisi ut. Incididunt adipisicing occaecat esse tempor id enim magna sint culpa. Pariatur quis fugiat cillum exercitation dolore proident culpa enim duis duis. Excepteur incididunt dolor exercitation quis ex consectetur amet quis nisi. Labore aliqua anim officia incididunt in aliquip Lorem. Ea ex eu nisi est cupidatat duis exercitation ipsum in nisi sint duis.\r\n", "registered": "2014-01-01T19:58:52-13:00", "latitude": -46.97003, "longitude": -160.071906, "tags": [ "esse", "dolor", "magna", "sit", "esse", "enim", "duis" ], "friends": [ { "id": 0, "name": "Gentry Marquez" }, { "id": 1, "name": "Lopez Acevedo" }, { "id": 2, "name": "Colette Reeves" } ], "greeting": "Hello, Tran Curry! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea205bd1404568ed2a5b", "index": 1022, "guid": "dda411ea-4098-46e4-8526-4f2aac690d42", "isActive": true, "balance": "$3,836.12", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Marina Irwin", "gender": "female", "company": "ISODRIVE", "email": "marinairwin@isodrive.com", "phone": "+1 (854) 550-2017", "address": "285 Throop Avenue, Yukon, Nebraska, 3429", "about": "Proident ea duis do nostrud ullamco magna ad dolor incididunt eiusmod. Aliqua laboris consequat proident incididunt labore duis laboris duis voluptate ad in ullamco consequat minim. Reprehenderit non est fugiat excepteur velit occaecat quis culpa aliqua ea. Consectetur ad adipisicing eiusmod excepteur magna reprehenderit officia nostrud enim ut ullamco cupidatat.\r\n", "registered": "2014-08-24T13:19:19-12:00", "latitude": -27.5627, "longitude": -10.416802, "tags": [ "mollit", "veniam", "ea", "sunt", "nisi", "fugiat", "est" ], "friends": [ { "id": 0, "name": "Susanne Terrell" }, { "id": 1, "name": "Tyler Schmidt" }, { "id": 2, "name": "Ellen Delaney" } ], "greeting": "Hello, Marina Irwin! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea207af683c87c14624a", "index": 1023, "guid": "033776e7-fd7d-4dd0-823d-e3108e1e51fa", "isActive": true, "balance": "$2,107.44", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Flowers Wyatt", "gender": "male", "company": "FLYBOYZ", "email": "flowerswyatt@flyboyz.com", "phone": "+1 (812) 404-3836", "address": "231 Dunne Court, Ticonderoga, District Of Columbia, 2431", "about": "Dolore sint excepteur ad veniam ullamco exercitation aliquip. Reprehenderit amet eiusmod nostrud proident nisi occaecat voluptate. Commodo cupidatat amet deserunt anim aute. Dolore dolore exercitation aliqua dolor Lorem occaecat.\r\n", "registered": "2014-01-01T05:30:40-13:00", "latitude": 57.798907, "longitude": 104.605083, "tags": [ "anim", "magna", "fugiat", "amet", "quis", "consectetur", "occaecat" ], "friends": [ { "id": 0, "name": "Sears Lindsey" }, { "id": 1, "name": "Stanton Head" }, { "id": 2, "name": "Harriett Morrison" } ], "greeting": "Hello, Flowers Wyatt! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20025b2262c29c465d", "index": 1024, "guid": "669de5b6-594f-469d-b3dd-0c6bae23418d", "isActive": true, "balance": "$3,267.71", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Lang Crawford", "gender": "male", "company": "PORTALIS", "email": "langcrawford@portalis.com", "phone": "+1 (876) 539-2706", "address": "908 Leonora Court, Mayfair, New Jersey, 6924", "about": "Enim consectetur laborum quis eu voluptate officia. Incididunt velit ex ut qui. Enim pariatur commodo tempor pariatur velit. Non ut cupidatat deserunt qui tempor pariatur. Dolor labore mollit ipsum ea sint irure Lorem aliquip consectetur elit incididunt tempor officia.\r\n", "registered": "2014-06-20T18:14:28-12:00", "latitude": -78.356371, "longitude": -139.115963, "tags": [ "adipisicing", "ipsum", "ea", "fugiat", "ut", "dolor", "dolor" ], "friends": [ { "id": 0, "name": "Penelope Espinoza" }, { "id": 1, "name": "Duran Sullivan" }, { "id": 2, "name": "Hunter Day" } ], "greeting": "Hello, Lang Crawford! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea201aba8074c844c21c", "index": 1025, "guid": "e49f908c-330e-42f8-9972-b0373c729a80", "isActive": true, "balance": "$1,212.56", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Guerrero Harmon", "gender": "male", "company": "POWERNET", "email": "guerreroharmon@powernet.com", "phone": "+1 (967) 439-3147", "address": "787 Windsor Place, Turpin, Palau, 6141", "about": "Irure ut laboris voluptate mollit dolore sint irure aliqua mollit anim elit. Ea esse enim dolore qui aliquip nostrud adipisicing minim. Pariatur exercitation in aliqua ipsum irure. Adipisicing minim dolor labore consequat minim elit non laboris aute in laboris cillum. Fugiat quis magna incididunt cillum ea culpa adipisicing eiusmod exercitation elit. Nostrud consequat anim officia ea est magna.\r\n", "registered": "2014-02-10T18:31:22-13:00", "latitude": -84.802637, "longitude": 27.906896, "tags": [ "ullamco", "occaecat", "sit", "quis", "Lorem", "adipisicing", "eiusmod" ], "friends": [ { "id": 0, "name": "Larsen English" }, { "id": 1, "name": "Tammy Buckley" }, { "id": 2, "name": "Robbins Haley" } ], "greeting": "Hello, Guerrero Harmon! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20c2276ef0bda3611e", "index": 1026, "guid": "798ea1bb-0435-48df-b1f0-b9982842ea67", "isActive": false, "balance": "$2,215.19", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Bray Mullen", "gender": "male", "company": "BLANET", "email": "braymullen@blanet.com", "phone": "+1 (836) 412-2296", "address": "518 Degraw Street, Taycheedah, Puerto Rico, 3495", "about": "Ut duis mollit non anim do consectetur irure nisi in do. Esse nostrud culpa nulla sunt. Magna minim nulla irure ut tempor aute elit est elit proident. Ea consequat Lorem ut aliquip minim eu cillum cillum excepteur proident ea. Elit ipsum sint voluptate enim ut aute nostrud eu magna sit aute. Sint et eu sint occaecat cupidatat ipsum sit nisi labore. Excepteur duis occaecat nostrud id incididunt.\r\n", "registered": "2014-06-26T09:15:42-12:00", "latitude": -89.308724, "longitude": -118.821983, "tags": [ "dolore", "eiusmod", "eiusmod", "duis", "eu", "excepteur", "commodo" ], "friends": [ { "id": 0, "name": "Vincent Bray" }, { "id": 1, "name": "Hubbard Gay" }, { "id": 2, "name": "Leah Pitts" } ], "greeting": "Hello, Bray Mullen! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20ec36de1b48c616c2", "index": 1027, "guid": "ffe2d32c-e77f-4031-b65a-046ab7fe7ebe", "isActive": true, "balance": "$3,495.51", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Ratliff Vance", "gender": "male", "company": "HOUSEDOWN", "email": "ratliffvance@housedown.com", "phone": "+1 (885) 493-2058", "address": "316 Poly Place, Lumberton, California, 2129", "about": "Ullamco elit quis pariatur laborum voluptate excepteur. Pariatur culpa voluptate elit quis dolore. Mollit minim id occaecat do id ut exercitation fugiat ut aliqua labore dolore dolor aliquip. Lorem elit velit deserunt ullamco Lorem fugiat. Reprehenderit ullamco adipisicing aute minim nulla non consectetur Lorem et officia fugiat minim non sit. In velit minim eiusmod duis voluptate voluptate culpa qui sint cillum mollit sunt.\r\n", "registered": "2014-01-16T08:23:17-13:00", "latitude": 67.890578, "longitude": -5.724962, "tags": [ "ullamco", "laboris", "exercitation", "ea", "minim", "in", "Lorem" ], "friends": [ { "id": 0, "name": "Ebony Kidd" }, { "id": 1, "name": "Hendrix Bridges" }, { "id": 2, "name": "Bolton Alford" } ], "greeting": "Hello, Ratliff Vance! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20830701821408c247", "index": 1028, "guid": "55b1ff2b-4db1-4cc5-812e-82625596abfb", "isActive": false, "balance": "$2,285.26", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Amanda Riley", "gender": "female", "company": "ENDIPINE", "email": "amandariley@endipine.com", "phone": "+1 (978) 449-3372", "address": "471 Bedell Lane, Macdona, Vermont, 4968", "about": "Sunt laboris incididunt ut cillum laborum voluptate est qui quis reprehenderit minim ut dolore dolor. Cupidatat adipisicing ut in pariatur anim ut culpa fugiat. Ad mollit magna deserunt ut. Reprehenderit ea velit nostrud consectetur laboris. Veniam exercitation sint quis nostrud cupidatat ea fugiat veniam nostrud et. Dolor occaecat amet cillum ipsum tempor et ad. Nisi consequat aliquip et aute velit sit sunt aute irure esse.\r\n", "registered": "2014-03-20T14:32:25-13:00", "latitude": -50.853265, "longitude": 136.813855, "tags": [ "ut", "qui", "proident", "esse", "cillum", "nulla", "velit" ], "friends": [ { "id": 0, "name": "Cathleen Brennan" }, { "id": 1, "name": "Desiree Austin" }, { "id": 2, "name": "Emerson Oneil" } ], "greeting": "Hello, Amanda Riley! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20024e3b8699814954", "index": 1029, "guid": "c229eb76-9d92-41b3-9373-4d48d313020e", "isActive": false, "balance": "$1,393.17", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Eloise Richard", "gender": "female", "company": "ADORNICA", "email": "eloiserichard@adornica.com", "phone": "+1 (909) 467-3703", "address": "665 Green Street, Reinerton, Indiana, 9443", "about": "Pariatur laboris consequat voluptate id reprehenderit pariatur velit tempor est quis occaecat anim et nulla. Non duis veniam non ex et mollit aliquip commodo qui. Occaecat enim pariatur ad minim reprehenderit culpa sint officia eiusmod officia nostrud.\r\n", "registered": "2014-09-12T18:14:11-12:00", "latitude": -39.908495, "longitude": -115.921273, "tags": [ "irure", "ea", "duis", "sit", "Lorem", "quis", "deserunt" ], "friends": [ { "id": 0, "name": "Casey Casey" }, { "id": 1, "name": "Reva Figueroa" }, { "id": 2, "name": "Haley Gallagher" } ], "greeting": "Hello, Eloise Richard! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea207ab98bc083db197a", "index": 1030, "guid": "6881a8ef-51ab-43d2-a889-a5dbf7d66a0d", "isActive": false, "balance": "$3,213.64", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Key Copeland", "gender": "male", "company": "SYNTAC", "email": "keycopeland@syntac.com", "phone": "+1 (947) 496-3681", "address": "110 Coventry Road, Needmore, Illinois, 9772", "about": "In reprehenderit ut nostrud cillum sunt proident ullamco Lorem fugiat amet irure id dolor. Nostrud ad enim cupidatat cupidatat nostrud occaecat fugiat commodo. Commodo ut esse culpa labore incididunt fugiat do aute quis ex aliqua. Enim consequat aute duis cillum eu voluptate nulla eiusmod veniam in eiusmod tempor ut.\r\n", "registered": "2014-02-16T17:41:01-13:00", "latitude": 7.605534, "longitude": 40.427368, "tags": [ "in", "id", "consectetur", "est", "exercitation", "eu", "eiusmod" ], "friends": [ { "id": 0, "name": "Richmond Gould" }, { "id": 1, "name": "Beverly Sellers" }, { "id": 2, "name": "Walters Long" } ], "greeting": "Hello, Key Copeland! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2096dda7bc50805e3b", "index": 1031, "guid": "8cdaa66d-5f7d-414e-bab6-c71e3cb7e416", "isActive": false, "balance": "$2,795.72", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Bean Barnett", "gender": "male", "company": "INEAR", "email": "beanbarnett@inear.com", "phone": "+1 (836) 460-3573", "address": "949 Miami Court, Springville, South Carolina, 6895", "about": "Nisi duis magna Lorem quis culpa voluptate laboris tempor. Elit amet anim sunt et ipsum minim in irure ipsum aliqua amet. Reprehenderit voluptate minim enim fugiat adipisicing culpa aute dolore. Esse culpa aute non Lorem enim fugiat ut eu deserunt nostrud labore.\r\n", "registered": "2014-01-28T04:23:40-13:00", "latitude": 30.988396, "longitude": -101.075477, "tags": [ "aliquip", "culpa", "exercitation", "incididunt", "excepteur", "elit", "est" ], "friends": [ { "id": 0, "name": "Grimes Morin" }, { "id": 1, "name": "Jeri Scott" }, { "id": 2, "name": "Margery Prince" } ], "greeting": "Hello, Bean Barnett! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea206ebfbea9073eb286", "index": 1032, "guid": "0e852dcc-7928-42ff-8e02-bde7091cb2b6", "isActive": false, "balance": "$3,651.38", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Glenda Ryan", "gender": "female", "company": "GUSHKOOL", "email": "glendaryan@gushkool.com", "phone": "+1 (950) 483-3989", "address": "705 Ludlam Place, Bynum, American Samoa, 726", "about": "Cupidatat est incididunt qui commodo Lorem. Sit in Lorem cillum sint nisi. Enim quis non adipisicing anim velit aute dolore occaecat fugiat adipisicing nulla magna laborum dolor. In aute cupidatat aliquip ad cupidatat exercitation adipisicing. Commodo proident consectetur sint occaecat adipisicing amet irure Lorem tempor aliqua. Minim eu consectetur nostrud nulla duis laborum ad exercitation anim dolore cillum. Et sunt quis laboris consectetur laboris veniam laborum.\r\n", "registered": "2014-08-19T18:01:52-12:00", "latitude": -80.538703, "longitude": 4.163291, "tags": [ "laboris", "commodo", "velit", "enim", "aliquip", "excepteur", "do" ], "friends": [ { "id": 0, "name": "Ward Knox" }, { "id": 1, "name": "Benita Yang" }, { "id": 2, "name": "Cherie Baldwin" } ], "greeting": "Hello, Glenda Ryan! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea206e9de20fc0ffb2ff", "index": 1033, "guid": "eb9767ef-713b-4f02-bc0c-d6624f7eaba4", "isActive": true, "balance": "$3,303.03", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Michael Hall", "gender": "male", "company": "KOZGENE", "email": "michaelhall@kozgene.com", "phone": "+1 (855) 594-3560", "address": "519 Rutherford Place, Smock, Delaware, 2269", "about": "Dolor fugiat non voluptate excepteur cupidatat consectetur. Id veniam sit reprehenderit pariatur. Magna mollit adipisicing anim ad.\r\n", "registered": "2014-08-30T16:01:58-12:00", "latitude": -3.662244, "longitude": 108.946921, "tags": [ "ipsum", "cillum", "reprehenderit", "sint", "laboris", "aute", "magna" ], "friends": [ { "id": 0, "name": "Wilder Joyner" }, { "id": 1, "name": "Wolf Goodwin" }, { "id": 2, "name": "Fuller Munoz" } ], "greeting": "Hello, Michael Hall! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2024ef525d48ba7564", "index": 1034, "guid": "4e862b0a-f78c-4d61-a6f7-f6e0abc9d977", "isActive": false, "balance": "$3,190.95", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Crane Bush", "gender": "male", "company": "SURELOGIC", "email": "cranebush@surelogic.com", "phone": "+1 (998) 447-3187", "address": "131 Huntington Street, Kylertown, Pennsylvania, 8560", "about": "Id ullamco laborum cupidatat fugiat deserunt cupidatat cillum voluptate sint aliqua labore. Deserunt mollit ipsum est labore commodo irure eu laboris consequat esse pariatur laboris laboris sint. Quis irure aliquip consectetur consequat mollit quis reprehenderit laborum id. Commodo sit quis labore aliqua ad incididunt velit non. Eu deserunt et cillum aliquip adipisicing cillum duis adipisicing Lorem anim aliqua. Est aliquip dolore amet aute non et minim sunt laboris. Cillum sint et magna eu ex consequat ea dolore incididunt est tempor.\r\n", "registered": "2014-08-26T22:32:02-12:00", "latitude": -1.505554, "longitude": 63.164407, "tags": [ "irure", "ex", "nostrud", "ullamco", "sit", "commodo", "mollit" ], "friends": [ { "id": 0, "name": "Elnora Ramos" }, { "id": 1, "name": "Robertson Wagner" }, { "id": 2, "name": "Barnett Sandoval" } ], "greeting": "Hello, Crane Bush! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20b7beeda47fc9ee4b", "index": 1035, "guid": "d164591a-d2b4-4832-a326-43f7e2768cfd", "isActive": false, "balance": "$2,910.97", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Mcintyre Bentley", "gender": "male", "company": "UNDERTAP", "email": "mcintyrebentley@undertap.com", "phone": "+1 (916) 597-2626", "address": "721 Eastern Parkway, Silkworth, Georgia, 9053", "about": "Incididunt ex deserunt ad culpa tempor. Aliquip sunt voluptate deserunt eiusmod sit laboris excepteur dolore adipisicing voluptate sint cillum voluptate Lorem. Ad id sint id commodo amet amet aute excepteur sint veniam incididunt dolore laborum nostrud. Duis proident dolor non ipsum non incididunt Lorem nulla id mollit fugiat do adipisicing. Ipsum qui pariatur reprehenderit ea fugiat ullamco pariatur fugiat nisi ullamco. Reprehenderit id culpa id ea eiusmod ea incididunt laboris do et eiusmod.\r\n", "registered": "2014-01-17T22:06:28-13:00", "latitude": 21.252738, "longitude": 100.045496, "tags": [ "laborum", "commodo", "voluptate", "ipsum", "aliquip", "ut", "veniam" ], "friends": [ { "id": 0, "name": "Myers Skinner" }, { "id": 1, "name": "Vance Sharpe" }, { "id": 2, "name": "Sheena Hull" } ], "greeting": "Hello, Mcintyre Bentley! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20b0effa3e9ade3708", "index": 1036, "guid": "84ce763f-81f0-42a1-9e06-191c21e5b995", "isActive": true, "balance": "$1,476.17", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Trudy Carney", "gender": "female", "company": "HOPELI", "email": "trudycarney@hopeli.com", "phone": "+1 (824) 494-2567", "address": "251 Congress Street, Jugtown, North Dakota, 3969", "about": "Anim voluptate proident quis ullamco voluptate exercitation commodo irure esse cupidatat incididunt mollit velit aute. Dolor ullamco est nostrud id id. Nulla Lorem ad aute magna deserunt adipisicing pariatur enim ullamco exercitation. Reprehenderit laboris commodo excepteur fugiat sint nostrud laboris magna sint fugiat velit Lorem.\r\n", "registered": "2014-09-05T11:44:48-12:00", "latitude": -82.603749, "longitude": 127.290162, "tags": [ "eu", "sit", "elit", "consectetur", "deserunt", "ex", "culpa" ], "friends": [ { "id": 0, "name": "Greta Heath" }, { "id": 1, "name": "Eileen Ortega" }, { "id": 2, "name": "Head Charles" } ], "greeting": "Hello, Trudy Carney! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea204565b9836865739b", "index": 1037, "guid": "73916da6-44ea-4e07-a099-66bb2f90d619", "isActive": false, "balance": "$3,105.91", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Lela Hill", "gender": "female", "company": "COMCUBINE", "email": "lelahill@comcubine.com", "phone": "+1 (913) 468-2685", "address": "236 Logan Street, Stouchsburg, Louisiana, 565", "about": "Sint irure amet laboris commodo laborum. Qui et minim eu id. In incididunt nisi commodo ea ex voluptate in amet est labore qui voluptate magna. Pariatur exercitation magna voluptate ut ipsum proident laboris dolore reprehenderit.\r\n", "registered": "2014-01-21T02:50:08-13:00", "latitude": 46.531521, "longitude": -152.642021, "tags": [ "occaecat", "reprehenderit", "fugiat", "dolor", "veniam", "minim", "velit" ], "friends": [ { "id": 0, "name": "Opal Thompson" }, { "id": 1, "name": "Gould Huffman" }, { "id": 2, "name": "Mandy Bishop" } ], "greeting": "Hello, Lela Hill! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2058a9fbbf4404ad1e", "index": 1038, "guid": "116a53f4-3d2f-4f14-bfd1-234449ed492b", "isActive": true, "balance": "$1,651.06", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Harding Jimenez", "gender": "male", "company": "ANIMALIA", "email": "hardingjimenez@animalia.com", "phone": "+1 (905) 528-3989", "address": "656 Elliott Place, Farmington, Northern Mariana Islands, 7505", "about": "Cillum eu dolor tempor qui irure qui eiusmod ad culpa qui quis voluptate aute anim. Eu commodo dolor veniam mollit nisi excepteur nostrud velit consequat mollit occaecat irure duis tempor. Dolore quis consectetur deserunt sint qui anim mollit aliqua sunt laboris voluptate deserunt. Do magna aliquip cupidatat excepteur ut exercitation velit minim enim ea commodo fugiat in. Cillum officia nulla ipsum ipsum ipsum adipisicing. Ex laborum ad proident esse mollit commodo reprehenderit officia nisi id officia velit magna commodo. Exercitation dolor sunt et duis irure dolor dolor ullamco nulla elit Lorem.\r\n", "registered": "2014-08-01T08:59:50-12:00", "latitude": -62.814338, "longitude": 87.333249, "tags": [ "duis", "est", "et", "irure", "veniam", "aliqua", "proident" ], "friends": [ { "id": 0, "name": "Norris Morris" }, { "id": 1, "name": "Evans Gentry" }, { "id": 2, "name": "Arlene Estes" } ], "greeting": "Hello, Harding Jimenez! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20616b1a1ed45c0fb1", "index": 1039, "guid": "50e3b8fa-76a4-44a4-8a8b-64167889da69", "isActive": false, "balance": "$3,752.14", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Petra Tate", "gender": "female", "company": "MICRONAUT", "email": "petratate@micronaut.com", "phone": "+1 (866) 425-2259", "address": "341 Locust Avenue, Cornucopia, Colorado, 5045", "about": "Veniam sit adipisicing enim et Lorem. Aliqua consectetur irure ipsum anim sunt. Non exercitation sit fugiat aliquip duis aliquip sit laborum eu. Proident fugiat ex elit culpa culpa cillum dolore nostrud minim irure qui nostrud eu. Mollit commodo quis ex elit. Dolore adipisicing mollit veniam voluptate laboris non elit adipisicing. Veniam sit eiusmod eiusmod velit id aute dolor.\r\n", "registered": "2014-03-16T03:44:15-13:00", "latitude": -83.296623, "longitude": -33.10741, "tags": [ "officia", "cillum", "adipisicing", "nulla", "qui", "consequat", "eiusmod" ], "friends": [ { "id": 0, "name": "Ada Tyson" }, { "id": 1, "name": "Susan Stanton" }, { "id": 2, "name": "Armstrong Pope" } ], "greeting": "Hello, Petra Tate! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2062d0076bfb0c506a", "index": 1040, "guid": "023ebbe1-0a18-4f07-b55b-b532632f11e0", "isActive": true, "balance": "$2,884.04", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Lynch Galloway", "gender": "male", "company": "EXOTECHNO", "email": "lynchgalloway@exotechno.com", "phone": "+1 (927) 456-3694", "address": "155 Gerry Street, Beaulieu, Idaho, 7354", "about": "Exercitation ex id ut dolore duis voluptate. Occaecat pariatur non ipsum aute labore. Amet sunt dolor ut dolore consequat labore deserunt. Adipisicing voluptate esse incididunt sit veniam adipisicing enim ex esse consequat amet in. Eu sint cillum velit est deserunt exercitation reprehenderit dolore non proident sint. Ut labore sit esse Lorem ipsum officia sit dolor laborum dolor irure et.\r\n", "registered": "2014-07-19T07:51:17-12:00", "latitude": 9.394548, "longitude": -76.751854, "tags": [ "minim", "tempor", "ullamco", "laborum", "incididunt", "nisi", "quis" ], "friends": [ { "id": 0, "name": "Connie Compton" }, { "id": 1, "name": "Maddox Morgan" }, { "id": 2, "name": "Burt Meadows" } ], "greeting": "Hello, Lynch Galloway! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20dc028f309f419bce", "index": 1041, "guid": "8babacd4-608a-420f-ad9d-01bfa5edb389", "isActive": false, "balance": "$3,914.97", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Goodman Paul", "gender": "male", "company": "MANGELICA", "email": "goodmanpaul@mangelica.com", "phone": "+1 (970) 509-3994", "address": "699 Stryker Court, Murillo, Marshall Islands, 8443", "about": "Do aliqua pariatur eiusmod labore irure. Elit eu labore proident mollit fugiat et. In aute velit in elit ipsum consectetur exercitation aliqua qui. Qui minim ad ipsum in ex proident laboris officia dolore duis commodo ad officia.\r\n", "registered": "2014-08-31T23:07:27-12:00", "latitude": 74.963371, "longitude": 69.991556, "tags": [ "dolor", "Lorem", "ipsum", "dolore", "ullamco", "tempor", "fugiat" ], "friends": [ { "id": 0, "name": "Meyer Browning" }, { "id": 1, "name": "Mccoy Knapp" }, { "id": 2, "name": "Gale Santos" } ], "greeting": "Hello, Goodman Paul! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20d11ea45cf844deeb", "index": 1042, "guid": "592cd7bf-c2f4-4d55-adc2-bd3c0fcbb68f", "isActive": false, "balance": "$2,934.39", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Rivera Frank", "gender": "male", "company": "CHORIZON", "email": "riverafrank@chorizon.com", "phone": "+1 (904) 496-2580", "address": "661 Varanda Place, Edgar, New York, 5014", "about": "Consectetur irure cillum eiusmod ullamco laborum Lorem velit cupidatat amet adipisicing reprehenderit nostrud. Tempor tempor qui ut pariatur pariatur occaecat culpa aliquip aliqua aliqua proident. Exercitation elit est nostrud incididunt cupidatat consectetur consectetur laboris velit magna. Nisi incididunt Lorem tempor irure. Dolore do ex qui et nisi voluptate est officia consequat. Cupidatat Lorem quis id officia velit Lorem ipsum veniam amet est. In aliquip nostrud velit exercitation do sunt commodo sint.\r\n", "registered": "2014-03-04T08:53:22-13:00", "latitude": 29.760329, "longitude": 43.883514, "tags": [ "ullamco", "ad", "ex", "cupidatat", "excepteur", "sunt", "non" ], "friends": [ { "id": 0, "name": "Betsy Bird" }, { "id": 1, "name": "Latisha Bryan" }, { "id": 2, "name": "Dena Joyce" } ], "greeting": "Hello, Rivera Frank! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20012943641e534e64", "index": 1043, "guid": "bc45a623-b3c8-4170-88a0-9b7bc74e177b", "isActive": false, "balance": "$3,182.14", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Aurora Wilcox", "gender": "female", "company": "IMMUNICS", "email": "aurorawilcox@immunics.com", "phone": "+1 (832) 415-3519", "address": "661 Vanderbilt Street, Catharine, Guam, 2885", "about": "Et exercitation ad magna elit occaecat. Cillum laborum aliqua ex ad. Voluptate do ad officia incididunt eu aute non sint fugiat occaecat.\r\n", "registered": "2014-03-02T00:55:04-13:00", "latitude": -33.752373, "longitude": -145.192512, "tags": [ "nostrud", "dolore", "reprehenderit", "incididunt", "laborum", "id", "consequat" ], "friends": [ { "id": 0, "name": "Maricela Dawson" }, { "id": 1, "name": "Nola Glover" }, { "id": 2, "name": "Bullock Mcknight" } ], "greeting": "Hello, Aurora Wilcox! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea207f94f2846205ae59", "index": 1044, "guid": "b0afdb42-8fe2-45c4-ba19-e3cf4416df16", "isActive": true, "balance": "$1,490.29", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Jan Harris", "gender": "female", "company": "ENERVATE", "email": "janharris@enervate.com", "phone": "+1 (810) 426-2852", "address": "568 Wolcott Street, Oberlin, Virgin Islands, 1839", "about": "Eu incididunt nisi laborum Lorem ullamco. Cupidatat quis culpa non nisi anim et minim eu laborum nostrud aliquip nisi sit. Proident occaecat est exercitation qui cillum. Irure pariatur occaecat dolore ad esse proident est et tempor nisi ex cillum.\r\n", "registered": "2014-09-15T18:22:40-12:00", "latitude": 39.595228, "longitude": -73.72612, "tags": [ "elit", "duis", "deserunt", "consequat", "occaecat", "commodo", "ipsum" ], "friends": [ { "id": 0, "name": "Lorna Price" }, { "id": 1, "name": "Renee Mckee" }, { "id": 2, "name": "Black Mcguire" } ], "greeting": "Hello, Jan Harris! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea202b7f697a99a7fd29", "index": 1045, "guid": "ba38f3b3-5eab-4e0c-a0ad-a7814513ea5c", "isActive": false, "balance": "$2,018.80", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Swanson Gray", "gender": "male", "company": "RONBERT", "email": "swansongray@ronbert.com", "phone": "+1 (935) 425-2156", "address": "903 Macon Street, Denio, Massachusetts, 5010", "about": "Enim occaecat eu occaecat labore ullamco eiusmod. Aliquip Lorem aliquip ullamco culpa sint. Culpa dolor incididunt cupidatat nostrud laborum irure.\r\n", "registered": "2014-01-01T11:24:37-13:00", "latitude": 50.136429, "longitude": -125.605721, "tags": [ "commodo", "do", "cillum", "culpa", "ut", "esse", "magna" ], "friends": [ { "id": 0, "name": "Hendricks Sheppard" }, { "id": 1, "name": "Earline Kaufman" }, { "id": 2, "name": "Wanda Chavez" } ], "greeting": "Hello, Swanson Gray! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2094e461d5ec660086", "index": 1046, "guid": "09c4fb97-4c13-4da4-8f59-3bf6ff279700", "isActive": false, "balance": "$2,307.91", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Staci Nichols", "gender": "female", "company": "ZILLANET", "email": "stacinichols@zillanet.com", "phone": "+1 (951) 414-2390", "address": "657 Quentin Street, Calvary, Utah, 3866", "about": "Voluptate veniam officia eiusmod ex pariatur elit irure tempor nulla nisi ad aliqua. Consequat exercitation cupidatat sunt culpa cupidatat nostrud est consequat aliquip proident officia sunt consequat consequat. Dolore exercitation labore dolore labore dolore officia.\r\n", "registered": "2014-07-10T22:51:07-12:00", "latitude": 69.313301, "longitude": -144.296799, "tags": [ "elit", "consequat", "aliqua", "ut", "reprehenderit", "mollit", "quis" ], "friends": [ { "id": 0, "name": "Dixon Mathews" }, { "id": 1, "name": "Tanisha Young" }, { "id": 2, "name": "Ochoa Santana" } ], "greeting": "Hello, Staci Nichols! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20e2d8cb2b6ed6a726", "index": 1047, "guid": "0576a003-e8a1-4ddd-93bd-7f5648727520", "isActive": false, "balance": "$3,801.12", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Daphne Mcneil", "gender": "female", "company": "CORMORAN", "email": "daphnemcneil@cormoran.com", "phone": "+1 (916) 509-3682", "address": "825 Jamaica Avenue, Wakarusa, Montana, 2649", "about": "Esse labore velit do culpa qui est deserunt occaecat dolore qui sunt laborum deserunt voluptate. Sunt velit aliqua duis esse ipsum cillum nulla magna dolor amet cillum nulla magna. Dolore enim labore enim deserunt deserunt aute fugiat nisi consectetur. Dolor dolore sunt et officia. Irure pariatur reprehenderit reprehenderit sint cupidatat officia laboris.\r\n", "registered": "2014-04-29T19:15:49-12:00", "latitude": 19.53657, "longitude": 143.561661, "tags": [ "exercitation", "occaecat", "occaecat", "elit", "ad", "consequat", "nisi" ], "friends": [ { "id": 0, "name": "Elliott Lang" }, { "id": 1, "name": "Gonzales Obrien" }, { "id": 2, "name": "Sandy Todd" } ], "greeting": "Hello, Daphne Mcneil! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20229ee463b6085d7f", "index": 1048, "guid": "4d520ad2-45c2-4ac7-a0d4-80e833535f99", "isActive": true, "balance": "$2,127.00", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Roach Holcomb", "gender": "male", "company": "YOGASM", "email": "roachholcomb@yogasm.com", "phone": "+1 (890) 425-3802", "address": "401 Wakeman Place, Gouglersville, Wisconsin, 979", "about": "Proident aute magna cupidatat aliqua nulla consequat culpa ex aliquip. Sunt do quis commodo sit irure sint. Magna laboris eu nostrud eiusmod enim est incididunt. Consequat nostrud Lorem velit commodo consectetur id veniam amet. Consectetur nostrud ullamco veniam excepteur aliquip consequat ex sunt eiusmod incididunt.\r\n", "registered": "2014-08-18T07:09:38-12:00", "latitude": 77.762062, "longitude": 108.566925, "tags": [ "ex", "exercitation", "nulla", "Lorem", "labore", "in", "fugiat" ], "friends": [ { "id": 0, "name": "Medina Bolton" }, { "id": 1, "name": "Nannie Wise" }, { "id": 2, "name": "Holt Humphrey" } ], "greeting": "Hello, Roach Holcomb! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20dc7912b18f684aef", "index": 1049, "guid": "3f15804d-f82c-4c2a-91a8-9f8fa3128687", "isActive": false, "balance": "$1,747.71", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Sweeney Mclean", "gender": "male", "company": "EMTRAK", "email": "sweeneymclean@emtrak.com", "phone": "+1 (966) 463-3676", "address": "686 Just Court, Hendersonville, Maine, 884", "about": "Mollit sunt occaecat eu nostrud cillum aliqua anim esse proident dolore ea magna laboris. Non sint labore tempor officia aliqua Lorem veniam sunt ullamco esse culpa aute excepteur incididunt. Nulla sunt incididunt enim magna adipisicing in et nisi. Incididunt ad adipisicing ullamco est. Mollit cillum commodo nisi nisi laborum culpa consectetur duis occaecat nostrud deserunt magna commodo. Adipisicing ex ut amet dolor voluptate do eu do consequat eu in non. Fugiat incididunt officia veniam veniam deserunt commodo labore nulla incididunt.\r\n", "registered": "2014-02-12T04:15:08-13:00", "latitude": 45.464636, "longitude": 149.578315, "tags": [ "proident", "velit", "eiusmod", "sit", "magna", "sunt", "minim" ], "friends": [ { "id": 0, "name": "Barrera Calhoun" }, { "id": 1, "name": "Moon Carroll" }, { "id": 2, "name": "Hays Little" } ], "greeting": "Hello, Sweeney Mclean! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20f91961c3e7cd4f23", "index": 1050, "guid": "63787566-1948-4a6d-a03c-98a9acc1b07e", "isActive": true, "balance": "$1,063.36", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Schneider Adkins", "gender": "male", "company": "ORBIN", "email": "schneideradkins@orbin.com", "phone": "+1 (990) 575-3842", "address": "925 Elm Avenue, Martinsville, Virginia, 1552", "about": "Mollit amet laboris nostrud ex et adipisicing voluptate commodo commodo. Ullamco dolore commodo aute officia nulla incididunt Lorem laboris. Aliqua ex ex eu cupidatat in incididunt et anim eiusmod aute excepteur ipsum officia.\r\n", "registered": "2014-07-22T10:55:27-12:00", "latitude": 73.029608, "longitude": -50.427908, "tags": [ "sint", "culpa", "aute", "deserunt", "consectetur", "eiusmod", "culpa" ], "friends": [ { "id": 0, "name": "Wagner Alvarado" }, { "id": 1, "name": "Stark Wiggins" }, { "id": 2, "name": "Rosalyn Oneal" } ], "greeting": "Hello, Schneider Adkins! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20e38625ac5e9a89c2", "index": 1051, "guid": "72deb49d-ac43-4112-84c4-af19d2c2a844", "isActive": false, "balance": "$2,169.65", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Lesa Lopez", "gender": "female", "company": "QUANTALIA", "email": "lesalopez@quantalia.com", "phone": "+1 (882) 536-3939", "address": "925 Apollo Street, Blackgum, Kentucky, 5693", "about": "Aute occaecat voluptate do labore commodo reprehenderit. Velit labore in nisi pariatur ipsum cillum in ad veniam quis. Non ullamco esse enim enim ut do quis. Sunt sint elit ad enim magna non ipsum excepteur labore ullamco incididunt enim labore. Ad do adipisicing velit aute commodo excepteur nostrud magna. Velit commodo adipisicing officia nostrud ut.\r\n", "registered": "2014-05-03T15:14:53-12:00", "latitude": -55.014652, "longitude": 2.935907, "tags": [ "excepteur", "cillum", "cupidatat", "deserunt", "sit", "aliquip", "voluptate" ], "friends": [ { "id": 0, "name": "Paulette Osborn" }, { "id": 1, "name": "Hallie Duran" }, { "id": 2, "name": "Isabelle Russo" } ], "greeting": "Hello, Lesa Lopez! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20a131723b3cafb745", "index": 1052, "guid": "11ddfc3d-2af3-448d-9b44-f5d51af5aadc", "isActive": true, "balance": "$1,409.72", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "William Moran", "gender": "male", "company": "SOPRANO", "email": "williammoran@soprano.com", "phone": "+1 (862) 499-2631", "address": "293 John Street, Marbury, Connecticut, 1377", "about": "Ipsum mollit ea eu nisi duis eu commodo reprehenderit sint occaecat sunt. Enim laborum non ex aliqua. Incididunt laboris ipsum cillum ullamco reprehenderit cupidatat veniam adipisicing deserunt veniam. Sit quis dolore adipisicing minim voluptate anim laboris. Commodo officia nisi elit nisi sunt proident commodo fugiat non sit tempor cupidatat.\r\n", "registered": "2014-04-24T15:20:43-12:00", "latitude": -40.442611, "longitude": 157.704277, "tags": [ "elit", "officia", "sunt", "veniam", "velit", "reprehenderit", "sit" ], "friends": [ { "id": 0, "name": "Vilma Rios" }, { "id": 1, "name": "Spears Rivas" }, { "id": 2, "name": "Cheryl Leblanc" } ], "greeting": "Hello, William Moran! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20bbced527b5a60ccd", "index": 1053, "guid": "63bb447c-ee91-4864-b677-64089173fb43", "isActive": false, "balance": "$3,378.34", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Tracie Navarro", "gender": "female", "company": "APPLIDECK", "email": "tracienavarro@applideck.com", "phone": "+1 (898) 554-2066", "address": "854 Metropolitan Avenue, Zeba, Mississippi, 3862", "about": "Incididunt labore nostrud nulla do magna pariatur exercitation ullamco. Ex commodo nulla id ipsum non officia commodo mollit pariatur quis sit ipsum duis ex. Laborum proident eu occaecat et mollit.\r\n", "registered": "2014-01-01T01:19:04-13:00", "latitude": 55.963574, "longitude": 12.978131, "tags": [ "eiusmod", "officia", "magna", "voluptate", "do", "sint", "eu" ], "friends": [ { "id": 0, "name": "Lindsey Pratt" }, { "id": 1, "name": "Rose Mercer" }, { "id": 2, "name": "Sherri Chan" } ], "greeting": "Hello, Tracie Navarro! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20e80064c75a87ef71", "index": 1054, "guid": "a1677111-2c16-4e7a-9b50-a40064d45e87", "isActive": false, "balance": "$1,555.00", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Dionne Carter", "gender": "female", "company": "ROOFORIA", "email": "dionnecarter@rooforia.com", "phone": "+1 (988) 496-3083", "address": "278 Seagate Avenue, Orason, Washington, 4245", "about": "Sunt consectetur sit laborum amet. Cupidatat ex aliquip do ea. Laboris ut culpa sint culpa duis fugiat ipsum deserunt laboris nostrud. Velit amet sint ad officia ut. Pariatur duis culpa eiusmod in consequat proident. Magna veniam proident pariatur ullamco ullamco pariatur mollit est adipisicing minim. Sit exercitation aute proident et aute incididunt sint amet esse.\r\n", "registered": "2014-04-14T19:33:52-12:00", "latitude": 42.127324, "longitude": -104.677233, "tags": [ "excepteur", "ex", "amet", "do", "qui", "duis", "dolore" ], "friends": [ { "id": 0, "name": "Ana Cantu" }, { "id": 1, "name": "Melody Alvarez" }, { "id": 2, "name": "Rosa Benjamin" } ], "greeting": "Hello, Dionne Carter! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20837c4134e94e7947", "index": 1055, "guid": "0c988a3c-b61d-4ccc-82d6-4911491e8965", "isActive": true, "balance": "$3,926.76", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Nikki Strickland", "gender": "female", "company": "COWTOWN", "email": "nikkistrickland@cowtown.com", "phone": "+1 (858) 483-2525", "address": "412 Fenimore Street, Indio, Tennessee, 3414", "about": "Enim deserunt dolore do dolor. Reprehenderit sint irure ad mollit laborum dolore. Consequat sunt nisi elit non eu sunt voluptate aliqua. Sunt laboris fugiat mollit magna reprehenderit aliqua excepteur enim irure occaecat eu.\r\n", "registered": "2014-09-03T04:57:13-12:00", "latitude": -88.828059, "longitude": -166.916515, "tags": [ "sit", "voluptate", "dolor", "proident", "cupidatat", "proident", "magna" ], "friends": [ { "id": 0, "name": "Nora Schroeder" }, { "id": 1, "name": "Campos Barker" }, { "id": 2, "name": "Waller Schultz" } ], "greeting": "Hello, Nikki Strickland! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20647e5baa85c6c9ea", "index": 1056, "guid": "8da975ac-b933-41be-8987-7f4c794aa67a", "isActive": true, "balance": "$1,810.31", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Chambers Torres", "gender": "male", "company": "LINGOAGE", "email": "chamberstorres@lingoage.com", "phone": "+1 (927) 532-3643", "address": "742 Glen Street, Wescosville, Alabama, 8411", "about": "Enim et nisi pariatur pariatur. Amet fugiat id labore amet occaecat consequat officia eu. Ex elit magna eu ipsum qui non ut non qui exercitation ea consequat minim. Ex magna incididunt sunt ea duis ad pariatur nisi laborum velit. Aute cupidatat laborum non ullamco enim mollit magna mollit ea dolor sint nulla. Magna adipisicing do qui do occaecat enim. Dolor ex do culpa minim deserunt minim ipsum non anim.\r\n", "registered": "2014-08-06T00:20:35-12:00", "latitude": 85.847948, "longitude": 52.598549, "tags": [ "in", "incididunt", "tempor", "tempor", "anim", "nisi", "laborum" ], "friends": [ { "id": 0, "name": "Riley Boyd" }, { "id": 1, "name": "Carlene Franco" }, { "id": 2, "name": "Maria Houston" } ], "greeting": "Hello, Chambers Torres! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea200bb00a79799977f8", "index": 1057, "guid": "880a0284-92fe-4efb-a8c3-dbc7219ac567", "isActive": false, "balance": "$1,996.55", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Emily Ratliff", "gender": "female", "company": "ZENSUS", "email": "emilyratliff@zensus.com", "phone": "+1 (839) 560-2448", "address": "879 Radde Place, Orovada, Ohio, 1319", "about": "Culpa incididunt cillum ad consequat enim nostrud nostrud exercitation. Consequat do sunt qui nulla aliqua veniam non eu eiusmod deserunt non ullamco aute. Exercitation elit duis sunt consequat dolore.\r\n", "registered": "2014-07-27T01:54:51-12:00", "latitude": 73.234409, "longitude": 179.182988, "tags": [ "non", "aute", "eiusmod", "qui", "dolor", "dolore", "sint" ], "friends": [ { "id": 0, "name": "Clements Benton" }, { "id": 1, "name": "Wheeler Roman" }, { "id": 2, "name": "Laura Schneider" } ], "greeting": "Hello, Emily Ratliff! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea209574888573999f45", "index": 1058, "guid": "e279620b-08c1-4480-93fa-4d69337369ec", "isActive": true, "balance": "$2,780.38", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Adams Brady", "gender": "male", "company": "EXOTERIC", "email": "adamsbrady@exoteric.com", "phone": "+1 (821) 485-3642", "address": "191 Kings Hwy, Bennett, Hawaii, 7745", "about": "Laboris quis aute cupidatat deserunt. Laboris Lorem incididunt sunt eiusmod nulla nisi. Quis exercitation enim exercitation do esse laboris elit. Labore laborum Lorem laboris et amet culpa enim pariatur. Sunt amet deserunt proident irure quis pariatur. Ut esse excepteur occaecat aliquip.\r\n", "registered": "2014-04-05T00:17:19-13:00", "latitude": 28.926827, "longitude": 141.350785, "tags": [ "est", "dolore", "reprehenderit", "sunt", "ea", "et", "veniam" ], "friends": [ { "id": 0, "name": "Haney Shannon" }, { "id": 1, "name": "Hester Coleman" }, { "id": 2, "name": "Elsa Ochoa" } ], "greeting": "Hello, Adams Brady! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20e55c1af09530fa0f", "index": 1059, "guid": "bae1aa57-8c9c-42b2-b3d8-1acdf750fd0a", "isActive": true, "balance": "$2,341.13", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Ashlee Mcclain", "gender": "female", "company": "PHARMEX", "email": "ashleemcclain@pharmex.com", "phone": "+1 (828) 482-3591", "address": "161 Vanderveer Street, Shasta, New Mexico, 4836", "about": "Do consectetur qui laboris voluptate aliquip enim non ea ex id exercitation labore aliquip cillum. Ipsum adipisicing laboris sit tempor deserunt ex sint. In anim sunt deserunt veniam cillum esse ex irure duis nisi. Voluptate ut ut adipisicing in ad consequat aliquip consectetur.\r\n", "registered": "2014-06-30T05:03:56-12:00", "latitude": 59.724256, "longitude": -23.395398, "tags": [ "ut", "sunt", "voluptate", "reprehenderit", "laboris", "tempor", "aliqua" ], "friends": [ { "id": 0, "name": "Sanford Lowe" }, { "id": 1, "name": "Winnie Hardin" }, { "id": 2, "name": "Aida Watkins" } ], "greeting": "Hello, Ashlee Mcclain! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea202112fe265f557102", "index": 1060, "guid": "a6bd6657-127f-4577-83a7-81408c78a13a", "isActive": true, "balance": "$3,235.07", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Emilia Good", "gender": "female", "company": "COMBOT", "email": "emiliagood@combot.com", "phone": "+1 (948) 446-3666", "address": "533 Gunnison Court, Trinway, Maryland, 379", "about": "Excepteur enim id officia esse dolore. Id ad non minim commodo proident ex occaecat deserunt adipisicing elit nisi fugiat. Quis elit cillum aliqua ea irure cupidatat ad. Id laboris nisi sint ad commodo deserunt occaecat magna dolore.\r\n", "registered": "2014-06-21T21:45:57-12:00", "latitude": 59.612898, "longitude": -81.596136, "tags": [ "proident", "voluptate", "dolore", "est", "cillum", "non", "nisi" ], "friends": [ { "id": 0, "name": "Ester Cohen" }, { "id": 1, "name": "Mara Gamble" }, { "id": 2, "name": "Donovan Haynes" } ], "greeting": "Hello, Emilia Good! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20c01699ebd76215c3", "index": 1061, "guid": "af884001-521f-4be5-8458-00e2d68ff2b0", "isActive": false, "balance": "$3,817.58", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Tamika Gibson", "gender": "female", "company": "NEPTIDE", "email": "tamikagibson@neptide.com", "phone": "+1 (806) 515-2671", "address": "503 Tompkins Place, Riviera, Alaska, 3683", "about": "Adipisicing culpa cupidatat ut ad id irure ullamco labore. Cupidatat laborum nisi cillum tempor elit est incididunt ex sunt nisi. Excepteur ex pariatur dolor consequat fugiat ea aute deserunt in id. Pariatur ut amet magna irure pariatur id ut ut et voluptate laboris ipsum. Occaecat occaecat anim veniam anim id nisi. Anim laborum culpa dolore elit ea nostrud. Qui est laboris proident id veniam dolore laborum proident.\r\n", "registered": "2014-02-18T02:38:59-13:00", "latitude": -85.366624, "longitude": -126.892299, "tags": [ "et", "sunt", "cillum", "cillum", "do", "do", "id" ], "friends": [ { "id": 0, "name": "Roslyn Roth" }, { "id": 1, "name": "Alexander Camacho" }, { "id": 2, "name": "Francine Branch" } ], "greeting": "Hello, Tamika Gibson! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea202b7ec32698ac8f45", "index": 1062, "guid": "3a2df0fb-25b8-4453-a44c-82fd625d931e", "isActive": false, "balance": "$1,924.91", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Jerri Fuller", "gender": "female", "company": "ZILLAN", "email": "jerrifuller@zillan.com", "phone": "+1 (911) 459-3103", "address": "962 Stratford Road, Fostoria, Arizona, 6413", "about": "Commodo tempor nostrud nisi duis. Ipsum nostrud excepteur nostrud irure ipsum sint magna. Laboris excepteur duis et occaecat in eu. Velit esse anim dolor pariatur qui dolore mollit aliquip eiusmod reprehenderit labore fugiat dolore. Deserunt id qui qui mollit aute cupidatat commodo amet consequat consectetur. Ullamco aute quis eiusmod exercitation est.\r\n", "registered": "2014-07-14T02:21:44-12:00", "latitude": -64.206101, "longitude": 49.876184, "tags": [ "veniam", "sint", "enim", "magna", "mollit", "enim", "amet" ], "friends": [ { "id": 0, "name": "Amber Holden" }, { "id": 1, "name": "Levine Butler" }, { "id": 2, "name": "Carolyn Horton" } ], "greeting": "Hello, Jerri Fuller! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20a744280382b9216e", "index": 1063, "guid": "f6e36178-64e8-43d7-9b94-0ce4a0f0865a", "isActive": true, "balance": "$3,481.87", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Peters Molina", "gender": "male", "company": "ELECTONIC", "email": "petersmolina@electonic.com", "phone": "+1 (807) 521-3578", "address": "676 Robert Street, Sultana, Federated States Of Micronesia, 1573", "about": "Adipisicing eiusmod minim sit enim nulla. Consequat sunt laborum elit tempor sit labore et est id ad tempor. Nulla laboris duis eiusmod exercitation nostrud quis anim dolore aliqua laboris duis. Sunt consequat in voluptate commodo nostrud ipsum non veniam. Culpa sunt officia aute enim dolore est minim.\r\n", "registered": "2014-01-11T02:29:24-13:00", "latitude": -88.118992, "longitude": 81.405607, "tags": [ "et", "tempor", "ut", "occaecat", "non", "dolor", "ut" ], "friends": [ { "id": 0, "name": "Hartman Le" }, { "id": 1, "name": "Billie Summers" }, { "id": 2, "name": "Amelia Gardner" } ], "greeting": "Hello, Peters Molina! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2051dfbc518442a161", "index": 1064, "guid": "30121747-8868-4bb6-8fe8-2321511158f3", "isActive": true, "balance": "$1,747.79", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Janine Wallace", "gender": "female", "company": "PETIGEMS", "email": "janinewallace@petigems.com", "phone": "+1 (803) 554-2586", "address": "418 Clarendon Road, Vicksburg, Oklahoma, 7307", "about": "Est nisi adipisicing sit consectetur do. Aliqua pariatur nulla sit fugiat sit eiusmod mollit in cillum fugiat duis. Ipsum do qui proident irure. Nulla quis adipisicing labore magna nulla. Non laboris incididunt pariatur tempor irure consectetur id eiusmod proident. Laboris officia exercitation ad ad reprehenderit minim esse pariatur eu.\r\n", "registered": "2014-05-23T14:00:10-12:00", "latitude": -64.818055, "longitude": -33.568483, "tags": [ "minim", "id", "elit", "sint", "tempor", "nulla", "consectetur" ], "friends": [ { "id": 0, "name": "Caroline Johnson" }, { "id": 1, "name": "Minerva Conner" }, { "id": 2, "name": "Francesca Finch" } ], "greeting": "Hello, Janine Wallace! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea201843265bb80f7a85", "index": 1065, "guid": "1e04ea1e-e480-4ef7-9ca9-ae672ae74cb8", "isActive": false, "balance": "$2,713.63", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Charles Haney", "gender": "male", "company": "EGYPTO", "email": "charleshaney@egypto.com", "phone": "+1 (971) 464-2446", "address": "691 Indiana Place, Moscow, Michigan, 4720", "about": "Amet sit sunt magna cupidatat non. In anim culpa aliqua sunt ullamco velit duis adipisicing aliquip id qui exercitation esse. Reprehenderit pariatur in eiusmod cillum sit incididunt minim sint pariatur consectetur Lorem adipisicing pariatur.\r\n", "registered": "2014-01-02T09:39:04-13:00", "latitude": -15.710433, "longitude": 46.451293, "tags": [ "enim", "occaecat", "incididunt", "enim", "pariatur", "laboris", "Lorem" ], "friends": [ { "id": 0, "name": "Mariana Martin" }, { "id": 1, "name": "Mitzi Crosby" }, { "id": 2, "name": "Maggie Lloyd" } ], "greeting": "Hello, Charles Haney! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20077ff21b430b6822", "index": 1066, "guid": "36f5a96d-bfbc-4861-9ed1-dc83f310a29e", "isActive": false, "balance": "$2,099.11", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Elena Lester", "gender": "female", "company": "CINASTER", "email": "elenalester@cinaster.com", "phone": "+1 (878) 401-2194", "address": "302 Haring Street, Waverly, Kansas, 6531", "about": "Do sit ullamco magna fugiat. Ut pariatur ullamco non aute eu excepteur consequat qui. Fugiat sit commodo do ex anim qui officia culpa velit esse aliquip pariatur.\r\n", "registered": "2014-07-22T17:08:12-12:00", "latitude": 46.033641, "longitude": 108.196446, "tags": [ "ex", "sit", "ipsum", "et", "cillum", "Lorem", "reprehenderit" ], "friends": [ { "id": 0, "name": "Mills Whitfield" }, { "id": 1, "name": "Nelson Evans" }, { "id": 2, "name": "Ann Blackburn" } ], "greeting": "Hello, Elena Lester! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20c802409d89a8fa0b", "index": 1067, "guid": "87769db6-43f7-4dd9-ba3c-0847610266f5", "isActive": false, "balance": "$2,018.53", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Estes Walter", "gender": "male", "company": "NIXELT", "email": "esteswalter@nixelt.com", "phone": "+1 (848) 548-3084", "address": "187 Kaufman Place, Wedgewood, South Dakota, 5239", "about": "Anim ex voluptate deserunt eu amet dolor mollit incididunt enim id anim. Sit velit commodo pariatur adipisicing. Dolor id velit laboris pariatur velit non voluptate ullamco laborum ipsum. Dolore ipsum sunt eu aute occaecat elit sint. Cillum laborum proident velit exercitation veniam magna nulla sint nostrud culpa labore aliqua esse. Occaecat anim Lorem duis deserunt aliqua nulla sunt laborum culpa Lorem mollit.\r\n", "registered": "2014-05-26T14:44:35-12:00", "latitude": -1.435369, "longitude": 118.071047, "tags": [ "mollit", "cupidatat", "laboris", "reprehenderit", "est", "eiusmod", "aliquip" ], "friends": [ { "id": 0, "name": "Vazquez Underwood" }, { "id": 1, "name": "Kent William" }, { "id": 2, "name": "Inez Mccarty" } ], "greeting": "Hello, Estes Walter! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2004d6d97b735a18ec", "index": 1068, "guid": "30dd5a95-b4f2-4ead-9a6e-79ad38555745", "isActive": true, "balance": "$2,605.59", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Blankenship Mullins", "gender": "male", "company": "ROBOID", "email": "blankenshipmullins@roboid.com", "phone": "+1 (986) 464-2221", "address": "709 Lincoln Place, Summerset, West Virginia, 7455", "about": "Pariatur labore cupidatat eiusmod cillum laboris proident consequat ex quis magna dolore aliqua aliqua pariatur. Ullamco sunt voluptate reprehenderit ex laboris amet dolore. Non adipisicing ad qui eu consequat ipsum dolor pariatur id nisi occaecat aliqua.\r\n", "registered": "2014-01-02T16:32:28-13:00", "latitude": -89.374213, "longitude": -73.874904, "tags": [ "laborum", "aliqua", "qui", "id", "occaecat", "exercitation", "id" ], "friends": [ { "id": 0, "name": "Lynda Sweet" }, { "id": 1, "name": "Lee Watts" }, { "id": 2, "name": "Jennifer Moreno" } ], "greeting": "Hello, Blankenship Mullins! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea205f45fc9c4655c77b", "index": 1069, "guid": "94e5c3b1-27cd-4a80-afd4-2e0e44416019", "isActive": false, "balance": "$2,540.49", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Merle Mcmillan", "gender": "female", "company": "SNOWPOKE", "email": "merlemcmillan@snowpoke.com", "phone": "+1 (812) 548-2554", "address": "327 Kings Place, Springdale, Texas, 4540", "about": "Anim ad cupidatat tempor in dolore. Irure ea tempor sunt do ut cillum est culpa ad occaecat qui sunt. Voluptate occaecat adipisicing ullamco duis ea fugiat ut ex laborum est id. Cupidatat nostrud minim do enim labore aute do aliquip. Mollit sint id elit commodo deserunt officia ut cillum excepteur voluptate nostrud cupidatat culpa. Nostrud ad cillum nisi dolore do id Lorem qui amet nisi est. Deserunt reprehenderit aute excepteur dolore labore occaecat eu non sit ex aute dolor nostrud nisi.\r\n", "registered": "2014-04-11T08:23:30-12:00", "latitude": -12.980188, "longitude": 138.178792, "tags": [ "consectetur", "aliquip", "cupidatat", "nisi", "elit", "duis", "mollit" ], "friends": [ { "id": 0, "name": "Parsons Greer" }, { "id": 1, "name": "Gibson Barron" }, { "id": 2, "name": "Kirsten Flynn" } ], "greeting": "Hello, Merle Mcmillan! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2022e25e5d8a1b3751", "index": 1070, "guid": "19e85900-90e5-400d-84c7-81679acc7d52", "isActive": true, "balance": "$2,468.59", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Powell Rasmussen", "gender": "male", "company": "SOLGAN", "email": "powellrasmussen@solgan.com", "phone": "+1 (877) 579-3985", "address": "395 Branton Street, Glenbrook, Oregon, 2756", "about": "Anim laboris officia officia nostrud sint est aliquip tempor exercitation qui aute tempor. Veniam esse consectetur deserunt anim nostrud. Do ullamco ea ex minim consectetur ad nostrud nisi. Labore qui laboris cillum et. Esse anim non deserunt proident. Excepteur proident nostrud esse consectetur enim ullamco excepteur adipisicing sint velit esse labore. Excepteur laborum sunt eiusmod qui laboris deserunt pariatur nisi eu dolore sunt tempor.\r\n", "registered": "2014-04-18T05:00:08-12:00", "latitude": -43.015426, "longitude": 62.415561, "tags": [ "labore", "id", "aliqua", "cupidatat", "amet", "veniam", "nostrud" ], "friends": [ { "id": 0, "name": "Vinson Carson" }, { "id": 1, "name": "Webb Michael" }, { "id": 2, "name": "Rivas Bond" } ], "greeting": "Hello, Powell Rasmussen! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea20e4b48a2d8e5046b0", "index": 1071, "guid": "b10f73e6-1a90-4149-8557-6019431add92", "isActive": false, "balance": "$3,375.37", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Elvia Banks", "gender": "female", "company": "EURON", "email": "elviabanks@euron.com", "phone": "+1 (823) 511-3771", "address": "164 Dahl Court, Chautauqua, Nevada, 3689", "about": "Occaecat qui commodo eiusmod irure excepteur fugiat nulla adipisicing Lorem eiusmod. Excepteur in est sunt voluptate esse fugiat irure exercitation. In fugiat cupidatat incididunt do.\r\n", "registered": "2014-01-11T13:42:56-13:00", "latitude": 82.517492, "longitude": -102.207297, "tags": [ "nisi", "est", "anim", "fugiat", "veniam", "id", "ipsum" ], "friends": [ { "id": 0, "name": "Baxter Conley" }, { "id": 1, "name": "Anita Riddle" }, { "id": 2, "name": "Brandy Rosa" } ], "greeting": "Hello, Elvia Banks! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea200d8a53ba4eb0342a", "index": 1072, "guid": "8d7ca258-1099-4a91-a876-e09e7fa3c799", "isActive": true, "balance": "$2,808.18", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Farley Palmer", "gender": "male", "company": "VENOFLEX", "email": "farleypalmer@venoflex.com", "phone": "+1 (920) 554-2816", "address": "630 Rockaway Avenue, Jackpot, Minnesota, 4600", "about": "Exercitation cillum occaecat mollit laboris labore officia velit aliquip culpa consectetur elit proident reprehenderit non. Velit dolore qui cupidatat minim. Proident nulla enim nostrud occaecat pariatur duis Lorem excepteur est sint reprehenderit cillum et. Eu reprehenderit do ipsum dolore do consequat id fugiat sunt. Ex laborum consequat dolor proident cillum reprehenderit tempor adipisicing enim laborum ad officia voluptate occaecat. Cupidatat non ex anim tempor dolore enim ea qui est sunt eu.\r\n", "registered": "2014-04-19T22:55:18-12:00", "latitude": -37.154167, "longitude": 66.713937, "tags": [ "Lorem", "ut", "ipsum", "magna", "duis", "ea", "et" ], "friends": [ { "id": 0, "name": "Miranda Mckenzie" }, { "id": 1, "name": "Millie Koch" }, { "id": 2, "name": "Blackwell Goodman" } ], "greeting": "Hello, Farley Palmer! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20476b37b039fd2910", "index": 1073, "guid": "db1e4f76-56e8-4759-a0db-3176ccad419e", "isActive": false, "balance": "$1,718.31", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Jasmine Ray", "gender": "female", "company": "GOLOGY", "email": "jasmineray@gology.com", "phone": "+1 (911) 572-3196", "address": "246 Forest Place, Abrams, Missouri, 8435", "about": "Commodo veniam culpa qui dolor incididunt reprehenderit dolore deserunt eiusmod incididunt sunt adipisicing. Nisi sit esse velit labore adipisicing aliqua qui officia sit in laboris ut culpa Lorem. Laborum id dolore tempor eu commodo. Incididunt tempor in reprehenderit officia aute id ea fugiat commodo culpa quis qui aliqua id. Nulla nulla labore mollit ea laborum elit do. Proident aute cillum laborum ex eiusmod veniam. Irure in laborum minim dolore aliquip incididunt mollit.\r\n", "registered": "2014-07-10T21:05:40-12:00", "latitude": 61.075197, "longitude": 45.913584, "tags": [ "commodo", "dolor", "proident", "irure", "dolor", "incididunt", "et" ], "friends": [ { "id": 0, "name": "Estelle Bradshaw" }, { "id": 1, "name": "Tania King" }, { "id": 2, "name": "Mendoza Bender" } ], "greeting": "Hello, Jasmine Ray! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20fcfd27343050bb3f", "index": 1074, "guid": "72623186-f5d5-40e4-b3e2-1c99a32efa77", "isActive": true, "balance": "$1,641.89", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Antoinette Garza", "gender": "female", "company": "PATHWAYS", "email": "antoinettegarza@pathways.com", "phone": "+1 (818) 587-2129", "address": "171 Henderson Walk, Sutton, Rhode Island, 1413", "about": "Id sit cillum in enim eiusmod. Duis eu occaecat sunt officia id. Voluptate reprehenderit excepteur commodo velit non proident occaecat veniam consectetur dolor. Esse est cillum aliquip voluptate minim. Eiusmod in ipsum ea incididunt est Lorem ipsum aliqua fugiat fugiat do. Eu excepteur anim occaecat laborum duis ad adipisicing proident labore quis ut nisi. Reprehenderit sunt deserunt commodo sint quis anim dolor magna dolore amet reprehenderit.\r\n", "registered": "2014-08-17T08:03:56-12:00", "latitude": 79.817485, "longitude": -50.106266, "tags": [ "elit", "do", "adipisicing", "anim", "aliquip", "eiusmod", "mollit" ], "friends": [ { "id": 0, "name": "Iva Nolan" }, { "id": 1, "name": "Ortiz Cote" }, { "id": 2, "name": "Talley Delacruz" } ], "greeting": "Hello, Antoinette Garza! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea205e59dc30bbdbf368", "index": 1075, "guid": "4a7e0171-6d3e-4891-8821-234a80af9560", "isActive": true, "balance": "$3,024.29", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Navarro Sanders", "gender": "male", "company": "FARMAGE", "email": "navarrosanders@farmage.com", "phone": "+1 (818) 401-2409", "address": "465 Kane Place, Gibbsville, Florida, 1553", "about": "Consequat labore magna ex elit incididunt consequat id. Consequat commodo tempor laboris commodo exercitation ipsum proident et id ut aliquip veniam. Culpa occaecat excepteur in et enim excepteur nostrud qui occaecat est. Non labore aliquip minim incididunt deserunt dolore id est veniam et adipisicing eiusmod. Nulla deserunt est laboris aliqua fugiat Lorem ea ad sint in magna do ad. Id proident excepteur anim velit mollit non qui aute aliqua et consectetur Lorem excepteur. Magna pariatur ad sit dolor aliquip deserunt dolore ullamco irure adipisicing.\r\n", "registered": "2014-05-17T16:15:28-12:00", "latitude": 50.939908, "longitude": 75.829304, "tags": [ "laborum", "labore", "nostrud", "dolore", "consequat", "elit", "officia" ], "friends": [ { "id": 0, "name": "Summers Ewing" }, { "id": 1, "name": "Mcgee Sexton" }, { "id": 2, "name": "Frye Salinas" } ], "greeting": "Hello, Navarro Sanders! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20fd4f8b2856ccb29d", "index": 1076, "guid": "09b0da99-0eed-422e-9510-6062f8f7614a", "isActive": true, "balance": "$2,978.19", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Corrine Alexander", "gender": "female", "company": "BITENDREX", "email": "corrinealexander@bitendrex.com", "phone": "+1 (895) 505-2774", "address": "103 Woods Place, Hanover, North Carolina, 5874", "about": "Aliqua quis do proident quis. Sit sit pariatur laboris elit ipsum do incididunt velit irure consectetur. Voluptate cupidatat dolore enim consectetur et est cupidatat. Elit excepteur reprehenderit pariatur culpa occaecat. Eu voluptate cupidatat velit tempor officia quis labore do quis. Deserunt laborum enim anim adipisicing reprehenderit ex.\r\n", "registered": "2014-07-29T19:47:52-12:00", "latitude": 38.509238, "longitude": 119.031413, "tags": [ "ipsum", "pariatur", "esse", "excepteur", "irure", "veniam", "nulla" ], "friends": [ { "id": 0, "name": "Courtney Lane" }, { "id": 1, "name": "Lara Kline" }, { "id": 2, "name": "Fulton Lowery" } ], "greeting": "Hello, Corrine Alexander! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2038c289c662b8d6fe", "index": 1077, "guid": "bb313b45-148e-49bf-b1cc-6ada6fe66fb9", "isActive": true, "balance": "$2,028.31", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Annmarie Dodson", "gender": "female", "company": "PARAGONIA", "email": "annmariedodson@paragonia.com", "phone": "+1 (864) 455-3155", "address": "561 Belmont Avenue, Brooktrails, New Hampshire, 5611", "about": "Veniam aute magna laborum sunt voluptate do consectetur nostrud aute. Nisi adipisicing quis cupidatat fugiat ex fugiat mollit tempor minim non. Id proident excepteur veniam labore laboris.\r\n", "registered": "2014-02-18T04:32:01-13:00", "latitude": -42.318186, "longitude": -24.244423, "tags": [ "reprehenderit", "incididunt", "non", "quis", "est", "eu", "culpa" ], "friends": [ { "id": 0, "name": "Claire Russell" }, { "id": 1, "name": "Charmaine Reese" }, { "id": 2, "name": "Jacquelyn Short" } ], "greeting": "Hello, Annmarie Dodson! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea20ee8d507b6b673f24", "index": 1078, "guid": "c244ffce-145c-497e-af9c-15a7f230b07a", "isActive": false, "balance": "$3,707.10", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Michele Cameron", "gender": "female", "company": "QUONK", "email": "michelecameron@quonk.com", "phone": "+1 (833) 508-2323", "address": "905 Jackson Court, Fairforest, Arkansas, 1397", "about": "Ex anim laboris eu tempor. Eiusmod magna deserunt dolore enim fugiat excepteur est et ea elit in adipisicing. Magna enim reprehenderit ut esse ex irure proident.\r\n", "registered": "2014-06-01T18:10:13-12:00", "latitude": -49.811474, "longitude": 147.57281, "tags": [ "sit", "aliquip", "qui", "in", "sit", "ullamco", "cillum" ], "friends": [ { "id": 0, "name": "Wood Lawrence" }, { "id": 1, "name": "Beverley Small" }, { "id": 2, "name": "Josephine Wilkins" } ], "greeting": "Hello, Michele Cameron! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2059075f5181e02dc5", "index": 1079, "guid": "3cb9ac01-3613-4ced-a8a2-985abdb1b534", "isActive": false, "balance": "$2,279.86", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Kenya Frye", "gender": "female", "company": "XEREX", "email": "kenyafrye@xerex.com", "phone": "+1 (946) 476-3123", "address": "694 Boerum Street, Frystown, Iowa, 9802", "about": "Do veniam elit anim labore cupidatat pariatur. Mollit non et amet commodo proident commodo. Culpa deserunt mollit et minim aute sint officia mollit do ea pariatur id enim enim.\r\n", "registered": "2014-03-27T10:29:40-13:00", "latitude": -84.209156, "longitude": 126.12527, "tags": [ "ea", "et", "in", "laboris", "ea", "reprehenderit", "culpa" ], "friends": [ { "id": 0, "name": "Guerra Medina" }, { "id": 1, "name": "Good Terry" }, { "id": 2, "name": "Sandoval Mccullough" } ], "greeting": "Hello, Kenya Frye! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea202eda40155a28db80", "index": 1080, "guid": "7cac85dc-84b3-4417-9aac-e7d0589db568", "isActive": false, "balance": "$1,301.54", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Imelda Manning", "gender": "female", "company": "FANFARE", "email": "imeldamanning@fanfare.com", "phone": "+1 (903) 536-3091", "address": "167 Hegeman Avenue, Harold, Nebraska, 6897", "about": "Esse sunt ut voluptate culpa id do. Cillum commodo eu est occaecat pariatur irure officia cillum pariatur ad. Enim qui veniam do labore in enim veniam ea. Proident dolor consectetur enim labore labore et labore quis ex mollit amet. Nisi velit anim enim labore eiusmod ea ullamco esse consectetur esse nisi eiusmod. Ut ipsum amet dolor est do nostrud voluptate dolor. Lorem elit incididunt aliquip culpa sit enim cupidatat.\r\n", "registered": "2014-06-29T22:22:05-12:00", "latitude": 19.234237, "longitude": -175.148052, "tags": [ "esse", "culpa", "officia", "qui", "reprehenderit", "magna", "in" ], "friends": [ { "id": 0, "name": "Molina Langley" }, { "id": 1, "name": "Althea Jackson" }, { "id": 2, "name": "Hyde Grant" } ], "greeting": "Hello, Imelda Manning! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea204c7a2a1310f80496", "index": 1081, "guid": "0eb4def7-4ac2-4da5-bd39-4f0c04919386", "isActive": false, "balance": "$1,015.86", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Rosetta Hatfield", "gender": "female", "company": "TROPOLI", "email": "rosettahatfield@tropoli.com", "phone": "+1 (927) 476-3430", "address": "398 Kermit Place, Oasis, District Of Columbia, 6802", "about": "Commodo veniam incididunt commodo amet dolore velit do duis quis proident aliqua. Cupidatat consectetur qui cillum ut do. Ad labore id ex occaecat nisi. Et incididunt sint anim ex pariatur Lorem in ullamco ipsum ad nisi magna tempor. Dolor velit ad consectetur deserunt nulla dolore adipisicing veniam excepteur ex ea exercitation laborum. Sunt nostrud dolore velit duis dolor reprehenderit adipisicing incididunt enim occaecat ad ipsum. Dolore aliquip nostrud nostrud adipisicing sunt sit excepteur enim ad eiusmod.\r\n", "registered": "2014-07-07T04:11:27-12:00", "latitude": 71.335493, "longitude": -68.556555, "tags": [ "occaecat", "velit", "ad", "fugiat", "minim", "elit", "qui" ], "friends": [ { "id": 0, "name": "Haynes Hodges" }, { "id": 1, "name": "Stone Trevino" }, { "id": 2, "name": "Walls Thornton" } ], "greeting": "Hello, Rosetta Hatfield! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2083afa15c5a390710", "index": 1082, "guid": "314c674c-e405-4982-80f5-8eb5d33f5261", "isActive": true, "balance": "$1,248.98", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Bruce Kelley", "gender": "male", "company": "PROWASTE", "email": "brucekelley@prowaste.com", "phone": "+1 (904) 549-2711", "address": "866 Louisa Street, Tilleda, New Jersey, 2657", "about": "Non minim ipsum enim nulla mollit cillum deserunt amet excepteur commodo excepteur amet ea fugiat. Incididunt voluptate dolor tempor eu magna sunt consectetur minim pariatur aute voluptate sunt. Mollit excepteur labore et aliqua consectetur dolor ut.\r\n", "registered": "2014-06-10T11:50:48-12:00", "latitude": -66.875693, "longitude": 31.136377, "tags": [ "tempor", "pariatur", "elit", "anim", "exercitation", "ex", "ut" ], "friends": [ { "id": 0, "name": "Patty Joseph" }, { "id": 1, "name": "Booth Stephens" }, { "id": 2, "name": "Gail Norman" } ], "greeting": "Hello, Bruce Kelley! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea20be38ac8c36918834", "index": 1083, "guid": "7b47da1a-c424-4053-8df0-2cd760de5c4e", "isActive": false, "balance": "$2,716.52", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Johanna Nash", "gender": "female", "company": "ZENCO", "email": "johannanash@zenco.com", "phone": "+1 (998) 435-3107", "address": "948 Hunterfly Place, Layhill, Palau, 4073", "about": "Occaecat amet dolore eiusmod laborum cillum magna incididunt eu magna sit non. In magna in ex elit cupidatat. Ipsum ipsum adipisicing est esse.\r\n", "registered": "2014-08-08T15:08:38-12:00", "latitude": -58.776395, "longitude": 144.032388, "tags": [ "eiusmod", "minim", "fugiat", "magna", "magna", "cupidatat", "anim" ], "friends": [ { "id": 0, "name": "Delia Gibbs" }, { "id": 1, "name": "Catherine Foreman" }, { "id": 2, "name": "Celeste Leon" } ], "greeting": "Hello, Johanna Nash! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2086cc1f7a069b116e", "index": 1084, "guid": "b4acd19a-54db-4115-926d-8fe1eb50e47a", "isActive": true, "balance": "$2,336.58", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Hunt Holt", "gender": "male", "company": "NETPLAX", "email": "huntholt@netplax.com", "phone": "+1 (934) 561-3154", "address": "365 Juliana Place, Iola, Puerto Rico, 9047", "about": "Magna irure nisi do non. Pariatur reprehenderit exercitation mollit ullamco tempor fugiat. Fugiat ipsum deserunt ad mollit nostrud. Eu do eu aute adipisicing labore pariatur consectetur aliqua ullamco cupidatat deserunt ullamco cillum.\r\n", "registered": "2014-03-06T13:29:08-13:00", "latitude": -35.296288, "longitude": -35.125261, "tags": [ "in", "qui", "quis", "fugiat", "nulla", "dolore", "laborum" ], "friends": [ { "id": 0, "name": "Ines Griffin" }, { "id": 1, "name": "John Sutton" }, { "id": 2, "name": "Blake Woodard" } ], "greeting": "Hello, Hunt Holt! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2150e6184d7a858c35", "index": 1085, "guid": "42072e9e-5a51-4bdd-af8b-bc6cd44d578e", "isActive": false, "balance": "$3,579.83", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Krystal Larsen", "gender": "female", "company": "ZIPAK", "email": "krystallarsen@zipak.com", "phone": "+1 (953) 570-3935", "address": "831 Wythe Avenue, Boling, California, 4524", "about": "Consectetur nostrud incididunt sunt Lorem voluptate ullamco veniam tempor id consequat non ea. Cupidatat cillum do sint commodo quis voluptate. Reprehenderit proident qui qui consequat sunt occaecat incididunt id non enim anim proident. Commodo excepteur occaecat cillum dolore in proident. Eu deserunt consequat aute ad elit sunt elit ipsum qui fugiat mollit officia.\r\n", "registered": "2014-03-31T10:01:10-13:00", "latitude": 81.708282, "longitude": -63.134201, "tags": [ "velit", "id", "velit", "adipisicing", "mollit", "duis", "sunt" ], "friends": [ { "id": 0, "name": "Roman Parks" }, { "id": 1, "name": "Morton Benson" }, { "id": 2, "name": "Trevino Jefferson" } ], "greeting": "Hello, Krystal Larsen! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea210a73abe26d472a8b", "index": 1086, "guid": "ce057ff7-48d8-485c-abf5-cbead0b409da", "isActive": true, "balance": "$2,681.72", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Nell Ruiz", "gender": "female", "company": "PARCOE", "email": "nellruiz@parcoe.com", "phone": "+1 (883) 469-2300", "address": "309 Bainbridge Street, Rosine, Vermont, 7622", "about": "Dolor sint consequat voluptate aute ea laboris ea. Qui aliqua culpa eu do qui mollit in sunt mollit laborum non sunt. Commodo ex enim cillum mollit et amet anim eiusmod. Adipisicing aute velit labore culpa officia eu est ea ullamco voluptate tempor.\r\n", "registered": "2014-01-02T06:05:32-13:00", "latitude": -16.423974, "longitude": -131.515659, "tags": [ "ad", "sunt", "cillum", "commodo", "mollit", "id", "aute" ], "friends": [ { "id": 0, "name": "Munoz Mclaughlin" }, { "id": 1, "name": "Sheppard Bernard" }, { "id": 2, "name": "Erna Bonner" } ], "greeting": "Hello, Nell Ruiz! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2163c0e856f8677461", "index": 1087, "guid": "bccbbeed-b8e6-48b0-b9cb-9c736c9caa71", "isActive": true, "balance": "$2,916.36", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Clayton Fischer", "gender": "male", "company": "ANARCO", "email": "claytonfischer@anarco.com", "phone": "+1 (820) 523-3247", "address": "229 Richmond Street, Hannasville, Indiana, 6021", "about": "Mollit laboris veniam excepteur laboris velit officia nostrud. Laboris duis nostrud duis sunt velit amet occaecat ut pariatur. Mollit enim fugiat nostrud aliquip enim mollit consequat.\r\n", "registered": "2014-06-30T08:08:01-12:00", "latitude": 46.639903, "longitude": -37.033713, "tags": [ "sit", "adipisicing", "aute", "do", "in", "irure", "adipisicing" ], "friends": [ { "id": 0, "name": "Turner Whitney" }, { "id": 1, "name": "Travis Conway" }, { "id": 2, "name": "Schwartz Patton" } ], "greeting": "Hello, Clayton Fischer! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21cd440f63516675ce", "index": 1088, "guid": "f916748e-d239-4424-a5f8-b21a7586e46b", "isActive": true, "balance": "$3,647.62", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Leigh Hahn", "gender": "female", "company": "EYEWAX", "email": "leighhahn@eyewax.com", "phone": "+1 (912) 547-2369", "address": "179 Nixon Court, Dennard, Illinois, 9620", "about": "Reprehenderit fugiat esse aliquip ut nisi minim anim mollit eu cupidatat nisi deserunt. Nulla anim ad anim nulla esse exercitation excepteur nostrud esse occaecat. Officia aliquip cillum incididunt reprehenderit laborum consequat irure. Incididunt magna occaecat nisi anim dolore ipsum amet.\r\n", "registered": "2014-03-18T00:36:26-13:00", "latitude": 4.437179, "longitude": 136.909464, "tags": [ "officia", "veniam", "enim", "proident", "nulla", "labore", "pariatur" ], "friends": [ { "id": 0, "name": "Callie Mcpherson" }, { "id": 1, "name": "Margarita Cabrera" }, { "id": 2, "name": "Elise Sanchez" } ], "greeting": "Hello, Leigh Hahn! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21ad55763f021072a0", "index": 1089, "guid": "32725e07-4036-41c6-9cdb-9cd6e465788f", "isActive": false, "balance": "$3,845.48", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Jacobs Davidson", "gender": "male", "company": "SUPPORTAL", "email": "jacobsdavidson@supportal.com", "phone": "+1 (848) 590-2476", "address": "794 Georgia Avenue, Hayes, South Carolina, 8817", "about": "Esse eiusmod tempor ad esse ea sunt non ut excepteur non eiusmod commodo. Fugiat fugiat mollit irure est consequat proident do qui sunt. Eiusmod velit ex aliquip irure quis. Nisi veniam exercitation nisi aute tempor commodo consequat id occaecat. Culpa cupidatat velit ipsum enim. Occaecat excepteur anim id deserunt do.\r\n", "registered": "2014-08-13T00:35:03-12:00", "latitude": -71.641623, "longitude": 141.761314, "tags": [ "sint", "ullamco", "eu", "mollit", "ex", "dolor", "culpa" ], "friends": [ { "id": 0, "name": "Welch Preston" }, { "id": 1, "name": "Therese Williams" }, { "id": 2, "name": "Carpenter Reilly" } ], "greeting": "Hello, Jacobs Davidson! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2158406f37f2491345", "index": 1090, "guid": "ac51cee3-b4a4-491e-92ee-602de46ce5e9", "isActive": true, "balance": "$1,805.33", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Blair Jacobson", "gender": "male", "company": "CORECOM", "email": "blairjacobson@corecom.com", "phone": "+1 (938) 441-2453", "address": "381 Fair Street, Winchester, American Samoa, 954", "about": "Incididunt ad quis fugiat id quis sit sint amet enim id minim ex officia. Fugiat consectetur excepteur eiusmod in. Occaecat nulla cupidatat cillum eu aute voluptate ipsum sint ad. Laboris ipsum sint occaecat nostrud qui et nisi nulla. Ut consectetur irure reprehenderit ad nulla nostrud consequat.\r\n", "registered": "2014-07-26T07:36:59-12:00", "latitude": -7.402784, "longitude": -177.314792, "tags": [ "cupidatat", "nisi", "consequat", "incididunt", "anim", "amet", "cillum" ], "friends": [ { "id": 0, "name": "Sophie Jones" }, { "id": 1, "name": "Maryanne Bennett" }, { "id": 2, "name": "Hollie Quinn" } ], "greeting": "Hello, Blair Jacobson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21afafb79099d0e287", "index": 1091, "guid": "a6ab8903-59f2-4bf6-90a0-845ddc3d3085", "isActive": true, "balance": "$3,443.72", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Marjorie Zimmerman", "gender": "female", "company": "ISOLOGIA", "email": "marjoriezimmerman@isologia.com", "phone": "+1 (983) 533-2326", "address": "934 Seeley Street, Townsend, Delaware, 3225", "about": "Deserunt mollit dolor elit culpa adipisicing dolor. Qui incididunt ad duis eu commodo aliqua officia. Ut labore do consequat cillum anim ullamco dolore sit eiusmod commodo id dolor laboris.\r\n", "registered": "2014-05-20T15:56:15-12:00", "latitude": -11.544933, "longitude": -10.390633, "tags": [ "anim", "anim", "aute", "anim", "nulla", "irure", "officia" ], "friends": [ { "id": 0, "name": "Pearl Cruz" }, { "id": 1, "name": "Charity Moody" }, { "id": 2, "name": "Mamie Barton" } ], "greeting": "Hello, Marjorie Zimmerman! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21e8753b2e7a4792b7", "index": 1092, "guid": "efdd15b9-2ecb-4420-aaa5-229500213c5a", "isActive": true, "balance": "$3,314.15", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Bettie Ayala", "gender": "female", "company": "CENTREE", "email": "bettieayala@centree.com", "phone": "+1 (893) 507-3557", "address": "794 Hudson Avenue, Keyport, Pennsylvania, 4308", "about": "Tempor ipsum excepteur quis eiusmod labore veniam eu ullamco. Reprehenderit tempor fugiat excepteur nulla anim do elit deserunt deserunt ea laborum cillum. Do mollit pariatur id nisi consequat ipsum quis ipsum esse laborum pariatur labore laborum. Aute cillum ullamco eiusmod irure eiusmod eiusmod. Veniam laborum fugiat voluptate mollit magna sint.\r\n", "registered": "2014-01-02T13:38:08-13:00", "latitude": 66.238782, "longitude": 42.362851, "tags": [ "occaecat", "quis", "in", "ut", "incididunt", "id", "cillum" ], "friends": [ { "id": 0, "name": "Taylor Workman" }, { "id": 1, "name": "Palmer Hopper" }, { "id": 2, "name": "Sheryl Turner" } ], "greeting": "Hello, Bettie Ayala! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21ae8f26ecd2482808", "index": 1093, "guid": "56deb502-4c32-4db9-bfcd-7835a3ffd4d4", "isActive": false, "balance": "$3,538.79", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Rosanne Shaffer", "gender": "female", "company": "GYNKO", "email": "rosanneshaffer@gynko.com", "phone": "+1 (851) 524-3358", "address": "686 Highlawn Avenue, Brenton, Georgia, 1213", "about": "Labore anim fugiat laborum consectetur Lorem occaecat laboris excepteur sunt exercitation id. Culpa officia ea magna consectetur ea exercitation. Cillum cupidatat ipsum et duis do duis et dolor.\r\n", "registered": "2014-06-12T14:49:12-12:00", "latitude": -82.51676, "longitude": 67.277483, "tags": [ "dolore", "Lorem", "consequat", "deserunt", "enim", "sint", "nisi" ], "friends": [ { "id": 0, "name": "King Miranda" }, { "id": 1, "name": "Marshall Cash" }, { "id": 2, "name": "Joseph Randall" } ], "greeting": "Hello, Rosanne Shaffer! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea212aabd340ae17f695", "index": 1094, "guid": "730b7d3f-0c78-4478-a1f1-08f6a5924d29", "isActive": false, "balance": "$2,223.75", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Andrews Drake", "gender": "male", "company": "BIOHAB", "email": "andrewsdrake@biohab.com", "phone": "+1 (981) 573-3334", "address": "460 Bills Place, Hoagland, North Dakota, 5764", "about": "Ullamco occaecat sit velit id ipsum eu labore mollit anim nisi ad. Aliquip magna amet veniam id sint incididunt laboris dolore fugiat laboris labore sint dolore. Aliquip mollit nisi mollit voluptate sint nostrud. Ex deserunt amet ea sunt.\r\n", "registered": "2014-01-17T06:11:46-13:00", "latitude": -30.260473, "longitude": -23.090872, "tags": [ "eu", "ullamco", "excepteur", "cillum", "excepteur", "laborum", "id" ], "friends": [ { "id": 0, "name": "Gomez Calderon" }, { "id": 1, "name": "Johns Mckinney" }, { "id": 2, "name": "Kelley Estrada" } ], "greeting": "Hello, Andrews Drake! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21e8800d6f5e8b1ffa", "index": 1095, "guid": "63d2a828-f06e-4734-a2ad-d818aaccead7", "isActive": false, "balance": "$3,476.88", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Maude Weaver", "gender": "female", "company": "VERAQ", "email": "maudeweaver@veraq.com", "phone": "+1 (860) 561-3494", "address": "773 Empire Boulevard, Tedrow, Louisiana, 3238", "about": "Anim voluptate fugiat reprehenderit mollit excepteur labore occaecat elit quis tempor aliqua consequat adipisicing excepteur. In qui sunt nisi ea. Ea ullamco enim aliqua qui mollit ad. Magna pariatur nulla id ullamco ea reprehenderit quis reprehenderit minim aute eu dolore.\r\n", "registered": "2014-02-28T00:06:05-13:00", "latitude": -52.791532, "longitude": -76.459906, "tags": [ "elit", "velit", "Lorem", "labore", "cupidatat", "incididunt", "non" ], "friends": [ { "id": 0, "name": "Leon Welch" }, { "id": 1, "name": "Abigail Durham" }, { "id": 2, "name": "Walton Woodward" } ], "greeting": "Hello, Maude Weaver! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21ca1308ea0fc545ce", "index": 1096, "guid": "dfd09bb2-6800-4af4-9033-ac9d71e26337", "isActive": false, "balance": "$1,009.69", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Latonya Fowler", "gender": "female", "company": "CORIANDER", "email": "latonyafowler@coriander.com", "phone": "+1 (910) 466-2462", "address": "536 Herkimer Place, Byrnedale, Northern Mariana Islands, 4671", "about": "Sunt enim enim Lorem excepteur pariatur sunt officia non laborum culpa consequat incididunt incididunt mollit. Mollit minim velit sunt exercitation consectetur commodo. Aliquip amet mollit exercitation id aliquip sunt labore excepteur occaecat laboris anim. Dolore adipisicing laboris anim ipsum voluptate anim labore cillum pariatur duis.\r\n", "registered": "2014-03-02T09:09:03-13:00", "latitude": 18.416237, "longitude": -152.174955, "tags": [ "eu", "nisi", "velit", "aliquip", "aliquip", "commodo", "sunt" ], "friends": [ { "id": 0, "name": "Santiago Holloway" }, { "id": 1, "name": "Frost Britt" }, { "id": 2, "name": "Ivy Berg" } ], "greeting": "Hello, Latonya Fowler! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2191987cc806d41faf", "index": 1097, "guid": "0375c846-e9fb-48d0-bc45-cbbf6c308451", "isActive": true, "balance": "$2,116.19", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Greene Moss", "gender": "male", "company": "APEX", "email": "greenemoss@apex.com", "phone": "+1 (821) 406-3157", "address": "212 Nova Court, Basye, Colorado, 3890", "about": "Amet esse pariatur proident do sit sunt ea consectetur aliquip laborum do. Velit officia cupidatat culpa deserunt velit deserunt cupidatat. Velit non ullamco aute nulla officia adipisicing do do sint aute ut cupidatat quis ullamco.\r\n", "registered": "2014-03-07T19:35:07-13:00", "latitude": 33.133981, "longitude": -172.366033, "tags": [ "fugiat", "ex", "eiusmod", "aute", "pariatur", "ex", "sint" ], "friends": [ { "id": 0, "name": "Eula Stark" }, { "id": 1, "name": "Henson Mendoza" }, { "id": 2, "name": "Rodgers Harrison" } ], "greeting": "Hello, Greene Moss! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea212986fa00b3e42afe", "index": 1098, "guid": "8e232f18-e39e-4090-b913-e6281c4dfd0d", "isActive": true, "balance": "$1,696.45", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Richard Dickerson", "gender": "male", "company": "EVEREST", "email": "richarddickerson@everest.com", "phone": "+1 (801) 417-2767", "address": "924 Adams Street, Irwin, Idaho, 4658", "about": "Labore id voluptate eiusmod irure elit quis nostrud adipisicing aliqua ea occaecat ullamco sint. Est elit nostrud eiusmod magna nisi ea consequat quis ad deserunt magna laborum. Anim dolore eiusmod nostrud nisi ut amet officia aute duis aliquip velit id aute Lorem. Culpa ipsum aliqua labore quis ex ullamco anim. Lorem minim minim nulla ut nulla minim cupidatat proident ex adipisicing reprehenderit officia ea Lorem. Irure elit elit dolor est dolor proident non non excepteur cupidatat reprehenderit magna. Incididunt velit adipisicing adipisicing ullamco.\r\n", "registered": "2014-06-05T04:31:30-12:00", "latitude": -64.214221, "longitude": 94.043469, "tags": [ "ad", "irure", "sunt", "ad", "nostrud", "sint", "ut" ], "friends": [ { "id": 0, "name": "Payne Arnold" }, { "id": 1, "name": "Carla Rodriquez" }, { "id": 2, "name": "Cornelia Guy" } ], "greeting": "Hello, Richard Dickerson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21d8413fee6bdcd52a", "index": 1099, "guid": "25605e5d-b899-4740-9572-157860b805be", "isActive": false, "balance": "$3,504.38", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Reid Vang", "gender": "male", "company": "ROCKYARD", "email": "reidvang@rockyard.com", "phone": "+1 (989) 522-2378", "address": "480 Maujer Street, Emison, Marshall Islands, 9645", "about": "Esse dolore aliquip culpa sint pariatur sunt labore amet adipisicing cillum cillum. Cillum aliquip Lorem labore nulla exercitation veniam laborum. Ut eu esse pariatur laborum labore anim pariatur excepteur minim sint id voluptate aliquip. Nisi occaecat magna sunt cillum incididunt eu irure ipsum ullamco. Cupidatat sint proident aliquip officia laboris officia.\r\n", "registered": "2014-04-22T08:45:49-12:00", "latitude": -87.426041, "longitude": -45.047592, "tags": [ "sint", "nostrud", "cupidatat", "velit", "commodo", "ea", "eu" ], "friends": [ { "id": 0, "name": "Noelle Lynn" }, { "id": 1, "name": "Lilia York" }, { "id": 2, "name": "Whitley Erickson" } ], "greeting": "Hello, Reid Vang! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea214ca25bc711fa53cd", "index": 1100, "guid": "8d2ecc9a-5417-4ae4-9a27-ea1ee77d228f", "isActive": false, "balance": "$3,574.66", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Leslie Fields", "gender": "female", "company": "PASTURIA", "email": "lesliefields@pasturia.com", "phone": "+1 (810) 527-3693", "address": "314 Willoughby Street, Norris, New York, 6504", "about": "Mollit esse exercitation tempor voluptate consequat. Anim occaecat adipisicing laborum magna sit dolor deserunt pariatur officia nostrud aliqua commodo consequat consequat. Eiusmod qui ullamco proident mollit et fugiat esse. Consectetur laborum aliqua reprehenderit proident laborum mollit deserunt eiusmod culpa tempor irure sint consequat deserunt. Quis minim cillum nostrud ad. Consectetur fugiat cupidatat veniam occaecat culpa velit incididunt amet. Nostrud elit excepteur veniam dolor labore elit in.\r\n", "registered": "2014-03-03T00:17:07-13:00", "latitude": -60.649826, "longitude": 27.260671, "tags": [ "amet", "incididunt", "sint", "non", "enim", "magna", "est" ], "friends": [ { "id": 0, "name": "Zelma Aguilar" }, { "id": 1, "name": "Vickie Gomez" }, { "id": 2, "name": "Estrada Stewart" } ], "greeting": "Hello, Leslie Fields! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21ad3cbc6d277533ef", "index": 1101, "guid": "35c83b1a-a292-44ce-8cd4-e732d808ecb4", "isActive": false, "balance": "$3,642.25", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Malone Foster", "gender": "male", "company": "KRAGGLE", "email": "malonefoster@kraggle.com", "phone": "+1 (848) 565-2914", "address": "458 Middagh Street, Mulberry, Guam, 3588", "about": "Ea consequat proident et tempor tempor exercitation do cupidatat ad ex occaecat excepteur. Et dolore reprehenderit officia fugiat aute aute irure. Et excepteur proident ad amet ex proident aliqua ex quis dolor eiusmod in Lorem velit. Culpa ea mollit aliquip anim laborum eu cillum commodo consectetur deserunt adipisicing aute. Exercitation ullamco excepteur aliquip cillum et. Qui non officia exercitation dolore et velit.\r\n", "registered": "2014-05-13T18:46:21-12:00", "latitude": -73.097023, "longitude": -172.30048, "tags": [ "minim", "veniam", "duis", "mollit", "nulla", "consequat", "excepteur" ], "friends": [ { "id": 0, "name": "Julianne Pacheco" }, { "id": 1, "name": "Mooney Rodgers" }, { "id": 2, "name": "Gallegos Meyers" } ], "greeting": "Hello, Malone Foster! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea210e54630648f5407f", "index": 1102, "guid": "524d3e92-25ad-4f98-8813-aba2b765c80b", "isActive": false, "balance": "$3,430.72", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Cain Roach", "gender": "male", "company": "EXOPLODE", "email": "cainroach@exoplode.com", "phone": "+1 (825) 463-3538", "address": "309 Nichols Avenue, Jacksonburg, Virgin Islands, 9225", "about": "Ipsum laborum irure aliqua esse cupidatat qui pariatur est pariatur dolore velit Lorem. Anim sint consectetur aliqua proident enim. Laborum exercitation proident labore sunt ut culpa tempor irure labore.\r\n", "registered": "2014-02-07T08:01:40-13:00", "latitude": 62.942516, "longitude": -156.029613, "tags": [ "occaecat", "duis", "nisi", "fugiat", "proident", "adipisicing", "commodo" ], "friends": [ { "id": 0, "name": "Augusta Gallegos" }, { "id": 1, "name": "Alvarez Stokes" }, { "id": 2, "name": "Angie Marks" } ], "greeting": "Hello, Cain Roach! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea219b31ba143e8e85e1", "index": 1103, "guid": "364ff12e-496f-479e-a52c-de6022779d31", "isActive": false, "balance": "$1,489.41", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Floyd Woods", "gender": "male", "company": "HATOLOGY", "email": "floydwoods@hatology.com", "phone": "+1 (862) 590-2906", "address": "442 Moultrie Street, Rodanthe, Massachusetts, 5076", "about": "Sit sit minim nostrud commodo do voluptate. Dolore pariatur sint fugiat irure dolore sunt velit. Consectetur ut adipisicing ut aute Lorem dolore ex mollit excepteur laboris. Labore tempor nostrud anim ullamco fugiat do quis quis. Cillum dolore et exercitation consectetur anim ullamco magna nulla.\r\n", "registered": "2014-07-07T21:10:50-12:00", "latitude": 4.552307, "longitude": 74.999899, "tags": [ "ex", "eu", "reprehenderit", "magna", "irure", "cillum", "cillum" ], "friends": [ { "id": 0, "name": "Eunice Briggs" }, { "id": 1, "name": "Diann Serrano" }, { "id": 2, "name": "Brennan Cooper" } ], "greeting": "Hello, Floyd Woods! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2179ccecca7ff21c78", "index": 1104, "guid": "070797bc-bca6-4a86-8b09-629a75621384", "isActive": false, "balance": "$2,716.10", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Hannah Floyd", "gender": "female", "company": "GENEKOM", "email": "hannahfloyd@genekom.com", "phone": "+1 (862) 470-3830", "address": "732 Turner Place, Sunwest, Utah, 7979", "about": "Sit sit ea minim laboris. Reprehenderit nisi enim tempor et. Dolore dolor irure minim pariatur commodo adipisicing adipisicing. Ad occaecat cillum minim id ullamco duis nisi est culpa culpa.\r\n", "registered": "2014-06-13T12:37:02-12:00", "latitude": -4.077204, "longitude": 42.565651, "tags": [ "velit", "mollit", "id", "laboris", "commodo", "irure", "reprehenderit" ], "friends": [ { "id": 0, "name": "Mcpherson Stevenson" }, { "id": 1, "name": "Kramer Sargent" }, { "id": 2, "name": "Krista Johnston" } ], "greeting": "Hello, Hannah Floyd! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea212c184810dedce337", "index": 1105, "guid": "bfbc4d61-a3a4-42b1-b990-8e7fbf69affa", "isActive": false, "balance": "$2,397.58", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Jody Valenzuela", "gender": "female", "company": "HARMONEY", "email": "jodyvalenzuela@harmoney.com", "phone": "+1 (974) 416-3114", "address": "331 Havens Place, Longbranch, Montana, 1633", "about": "Sit magna veniam sit minim Lorem sit duis consectetur esse cillum minim laboris. Aliquip velit labore aute pariatur Lorem voluptate amet elit nulla tempor pariatur tempor. Non eiusmod proident fugiat consectetur irure qui amet reprehenderit proident est cupidatat ipsum. Id aliqua magna ex quis commodo.\r\n", "registered": "2014-04-03T14:02:01-13:00", "latitude": 6.936911, "longitude": 45.859726, "tags": [ "dolore", "enim", "duis", "aliquip", "deserunt", "nisi", "non" ], "friends": [ { "id": 0, "name": "Carter Richards" }, { "id": 1, "name": "Mitchell Duffy" }, { "id": 2, "name": "Jaime Blanchard" } ], "greeting": "Hello, Jody Valenzuela! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea217fa09fc9854cd643", "index": 1106, "guid": "d8ec65fe-9418-4e54-a985-c8eed8aa9838", "isActive": false, "balance": "$1,412.31", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Virginia Craig", "gender": "female", "company": "MATRIXITY", "email": "virginiacraig@matrixity.com", "phone": "+1 (845) 592-2095", "address": "987 Lake Avenue, Clayville, Wisconsin, 2057", "about": "Non laboris ad aute velit dolore et eu adipisicing fugiat. Sunt laborum et excepteur cillum anim excepteur deserunt labore veniam enim. Sit tempor qui aliqua consectetur laboris sunt do est voluptate non cillum fugiat ullamco sint. Et reprehenderit consectetur pariatur occaecat pariatur incididunt dolore ea ex anim ipsum enim. Culpa pariatur ut consectetur eu proident ex aute reprehenderit ipsum ea qui quis sunt. Excepteur qui aliquip laborum cillum cupidatat sunt labore incididunt ullamco. Eiusmod excepteur proident anim aliqua officia aliqua qui exercitation officia laboris cillum.\r\n", "registered": "2014-05-30T22:19:20-12:00", "latitude": -38.215696, "longitude": -143.172521, "tags": [ "eiusmod", "ullamco", "ut", "cupidatat", "aliqua", "ex", "proident" ], "friends": [ { "id": 0, "name": "Reyna Byrd" }, { "id": 1, "name": "Michelle White" }, { "id": 2, "name": "Mccarty Hensley" } ], "greeting": "Hello, Virginia Craig! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21eec024ea333e978d", "index": 1107, "guid": "ab1c53cc-5d6f-495c-ba9d-4c80cf4fa449", "isActive": true, "balance": "$2,459.94", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Kathleen Martinez", "gender": "female", "company": "ROCKLOGIC", "email": "kathleenmartinez@rocklogic.com", "phone": "+1 (947) 540-2590", "address": "684 Newton Street, Gulf, Maine, 3520", "about": "Nulla et aliquip nostrud duis excepteur velit sunt magna irure consectetur deserunt reprehenderit. Aute dolore ad nostrud officia in aliqua ipsum anim. Fugiat voluptate elit est deserunt officia id eiusmod velit amet ipsum duis.\r\n", "registered": "2014-05-10T10:52:14-12:00", "latitude": 88.803514, "longitude": 24.727537, "tags": [ "officia", "non", "nostrud", "esse", "id", "cupidatat", "pariatur" ], "friends": [ { "id": 0, "name": "Hayes Richmond" }, { "id": 1, "name": "Kaye Mcclure" }, { "id": 2, "name": "Cherry Peters" } ], "greeting": "Hello, Kathleen Martinez! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21919f62ba6efa88fe", "index": 1108, "guid": "f8dd8147-1872-40ef-ae6d-c812df6a3a72", "isActive": false, "balance": "$3,038.88", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Whitfield Lara", "gender": "male", "company": "CAXT", "email": "whitfieldlara@caxt.com", "phone": "+1 (940) 438-3155", "address": "124 Hubbard Place, Bentley, Virginia, 1967", "about": "Cupidatat pariatur ut pariatur dolore pariatur incididunt irure ad mollit labore aliquip. Exercitation eu sit sunt aute. Labore enim ad ea aliquip ut. Voluptate velit nisi non mollit labore. Sit cupidatat laborum ipsum magna Lorem nulla est cillum qui nostrud do occaecat minim commodo. Non occaecat in quis irure est mollit laboris proident minim excepteur eiusmod aliqua voluptate voluptate. Lorem magna quis eu consectetur eu ex consequat minim.\r\n", "registered": "2014-09-10T20:57:07-12:00", "latitude": -30.546454, "longitude": 67.150556, "tags": [ "ullamco", "sunt", "nostrud", "aliquip", "nisi", "consequat", "culpa" ], "friends": [ { "id": 0, "name": "Shari Cleveland" }, { "id": 1, "name": "Stokes Howell" }, { "id": 2, "name": "Christian Nielsen" } ], "greeting": "Hello, Whitfield Lara! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21effcda4ae3ca5176", "index": 1109, "guid": "6e3de071-9b95-440e-b2b5-3510dc042511", "isActive": true, "balance": "$1,759.25", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Lucinda Rhodes", "gender": "female", "company": "LIQUICOM", "email": "lucindarhodes@liquicom.com", "phone": "+1 (905) 459-2412", "address": "136 Nolans Lane, Alleghenyville, Kentucky, 5220", "about": "Lorem quis non ullamco cillum ea tempor dolore minim eiusmod fugiat laboris in nisi voluptate. Ad ex id enim Lorem adipisicing voluptate nostrud do sit adipisicing laborum exercitation. Non nisi elit est aliquip exercitation ea laboris velit magna magna Lorem ea laborum. Laborum commodo cillum est nulla do non ex deserunt ut ipsum ipsum et amet ea. Quis labore laboris cillum reprehenderit sunt reprehenderit pariatur pariatur voluptate. Lorem in laboris fugiat deserunt est id ex dolor in minim nisi.\r\n", "registered": "2014-09-02T15:41:50-12:00", "latitude": -60.468654, "longitude": -118.491844, "tags": [ "aliqua", "laborum", "voluptate", "et", "aliqua", "amet", "sint" ], "friends": [ { "id": 0, "name": "Avis Hartman" }, { "id": 1, "name": "Marcie Travis" }, { "id": 2, "name": "Whitaker Wilson" } ], "greeting": "Hello, Lucinda Rhodes! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2104304210ef5d0891", "index": 1110, "guid": "2299736d-ddac-467e-874a-58c0b1f20b36", "isActive": false, "balance": "$3,842.70", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Young Pace", "gender": "female", "company": "NEOCENT", "email": "youngpace@neocent.com", "phone": "+1 (964) 448-3582", "address": "513 Williamsburg Street, Bison, Connecticut, 5920", "about": "Consequat id magna labore nisi exercitation sint tempor quis irure aute duis minim eiusmod. Nostrud ullamco minim magna ad et elit incididunt excepteur anim duis do consectetur in. Duis adipisicing reprehenderit deserunt consequat laborum exercitation amet officia qui proident quis laboris. Nostrud commodo duis culpa proident cupidatat officia mollit. Anim consequat adipisicing quis commodo culpa esse et est. Excepteur adipisicing dolore deserunt labore cillum nostrud enim officia occaecat deserunt. Eu cupidatat sint sunt sunt dolore non adipisicing cillum reprehenderit culpa.\r\n", "registered": "2014-08-06T06:44:24-12:00", "latitude": -17.399837, "longitude": -143.953805, "tags": [ "occaecat", "ex", "eu", "consectetur", "fugiat", "voluptate", "officia" ], "friends": [ { "id": 0, "name": "Marcella Sparks" }, { "id": 1, "name": "Jayne Patterson" }, { "id": 2, "name": "Laverne Wood" } ], "greeting": "Hello, Young Pace! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21e62667773dab016f", "index": 1111, "guid": "095bce46-ffae-49b2-af2b-0f89e42d4d1c", "isActive": false, "balance": "$1,397.32", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Wallace Rodriguez", "gender": "male", "company": "ZOMBOID", "email": "wallacerodriguez@zomboid.com", "phone": "+1 (830) 427-3429", "address": "674 Hampton Place, Brethren, Mississippi, 3115", "about": "Enim esse occaecat aliquip duis duis quis officia do cupidatat. Ipsum elit laborum sunt in ullamco enim aliquip. Culpa cillum consectetur non dolore nostrud non velit tempor cillum magna pariatur exercitation. Ad reprehenderit voluptate elit consequat officia aute pariatur eu. Deserunt commodo culpa sit culpa. Pariatur cillum veniam dolore voluptate officia ut cupidatat minim est.\r\n", "registered": "2014-02-24T04:53:39-13:00", "latitude": 86.535154, "longitude": -114.779091, "tags": [ "occaecat", "in", "amet", "est", "irure", "incididunt", "incididunt" ], "friends": [ { "id": 0, "name": "Isabella Bates" }, { "id": 1, "name": "Kristine Shepard" }, { "id": 2, "name": "Hull Mercado" } ], "greeting": "Hello, Wallace Rodriguez! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea219ae6af813689d3d4", "index": 1112, "guid": "689d27be-1228-429c-87c9-600e83f42389", "isActive": false, "balance": "$3,294.37", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Martinez Fitzpatrick", "gender": "male", "company": "UNEEQ", "email": "martinezfitzpatrick@uneeq.com", "phone": "+1 (837) 516-2454", "address": "344 Pooles Lane, Wheaton, Washington, 410", "about": "Velit amet nisi esse nostrud cupidatat ipsum excepteur eiusmod commodo. Veniam commodo excepteur amet culpa reprehenderit. Culpa amet aute enim aliqua. Laboris incididunt labore non proident.\r\n", "registered": "2014-05-08T02:32:25-12:00", "latitude": 35.732019, "longitude": 127.051666, "tags": [ "laborum", "Lorem", "laboris", "do", "cupidatat", "eiusmod", "cupidatat" ], "friends": [ { "id": 0, "name": "Susanna Hart" }, { "id": 1, "name": "Britney Poole" }, { "id": 2, "name": "Woodard Franks" } ], "greeting": "Hello, Martinez Fitzpatrick! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21aeb0d4cf325b5302", "index": 1113, "guid": "e0b7508a-e3f2-49c9-bfb3-fa5be6129ad3", "isActive": true, "balance": "$1,133.13", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Mona Watson", "gender": "female", "company": "MARQET", "email": "monawatson@marqet.com", "phone": "+1 (911) 579-2123", "address": "225 Ashland Place, Otranto, Tennessee, 3293", "about": "Deserunt veniam anim nulla ipsum labore ipsum duis cillum occaecat elit. Dolor fugiat culpa id consequat in. Cupidatat nostrud esse esse officia mollit dolore ut minim officia commodo. Occaecat consectetur fugiat do incididunt laboris veniam nulla. Ullamco laboris deserunt nisi mollit esse elit commodo. Lorem duis anim excepteur nulla proident. Minim ex incididunt ea et cillum ex.\r\n", "registered": "2014-01-08T16:09:04-13:00", "latitude": 27.846201, "longitude": -99.265902, "tags": [ "aliquip", "consequat", "esse", "officia", "duis", "enim", "pariatur" ], "friends": [ { "id": 0, "name": "Rogers Shaw" }, { "id": 1, "name": "Barron Smith" }, { "id": 2, "name": "Annette Bell" } ], "greeting": "Hello, Mona Watson! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21b439e5469ab27d2e", "index": 1114, "guid": "9160be50-0ada-420a-8394-8282ec84d21e", "isActive": true, "balance": "$3,793.37", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Kari Simon", "gender": "female", "company": "ERSUM", "email": "karisimon@ersum.com", "phone": "+1 (848) 435-2279", "address": "358 Herzl Street, Rosburg, Alabama, 4902", "about": "Mollit cupidatat officia aliqua aute sint. Qui anim culpa ullamco fugiat cillum ea. Aliquip pariatur sunt aliqua aliqua fugiat ad veniam ea quis. Commodo nostrud duis mollit nisi consequat laborum nisi duis eiusmod eiusmod ex. Fugiat deserunt aute culpa ad quis duis sunt incididunt ullamco enim.\r\n", "registered": "2014-04-14T09:53:56-12:00", "latitude": -67.500537, "longitude": 163.711138, "tags": [ "aliqua", "duis", "labore", "adipisicing", "cupidatat", "ad", "voluptate" ], "friends": [ { "id": 0, "name": "Corina Orr" }, { "id": 1, "name": "Marissa Page" }, { "id": 2, "name": "Noble Greene" } ], "greeting": "Hello, Kari Simon! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2138f04bcc99652b4d", "index": 1115, "guid": "97168be5-55fa-4fc5-b5be-74e02b06e0db", "isActive": false, "balance": "$3,638.41", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Belinda Flowers", "gender": "female", "company": "ZILCH", "email": "belindaflowers@zilch.com", "phone": "+1 (918) 574-2232", "address": "831 Coles Street, Echo, Ohio, 9315", "about": "Sunt exercitation deserunt eiusmod laboris eu dolore consectetur id laboris sit et. Minim aliqua incididunt velit sunt laborum enim reprehenderit cupidatat incididunt adipisicing aliquip anim. Aliquip eu aute deserunt commodo occaecat pariatur ipsum et exercitation sit sit incididunt laboris eu. Consequat mollit laboris ullamco ad quis sint do consectetur aliqua. Minim qui anim enim irure sunt deserunt aliquip laborum consequat ex sit eu. Dolore non dolor sint magna. Esse et irure et esse.\r\n", "registered": "2014-07-26T11:06:05-12:00", "latitude": -40.660431, "longitude": 82.648035, "tags": [ "fugiat", "laboris", "cillum", "consectetur", "cillum", "Lorem", "magna" ], "friends": [ { "id": 0, "name": "Kathie Spencer" }, { "id": 1, "name": "Jordan Booker" }, { "id": 2, "name": "Mathews Vinson" } ], "greeting": "Hello, Belinda Flowers! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21513aca030a9d74ab", "index": 1116, "guid": "ccdc943a-8298-4b3f-a195-cbbe8776a475", "isActive": false, "balance": "$3,263.28", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Herminia Craft", "gender": "female", "company": "MIRACLIS", "email": "herminiacraft@miraclis.com", "phone": "+1 (858) 556-3614", "address": "714 Clifton Place, Sussex, Hawaii, 9866", "about": "Officia aliquip magna sunt amet labore velit mollit mollit est. Ea ullamco cillum minim dolore qui ea fugiat ad consectetur eiusmod reprehenderit aliqua cupidatat. Sit mollit velit ad exercitation ex.\r\n", "registered": "2014-01-24T17:55:14-13:00", "latitude": -55.757085, "longitude": -136.117065, "tags": [ "ea", "tempor", "laboris", "elit", "laborum", "nostrud", "eiusmod" ], "friends": [ { "id": 0, "name": "Raymond Frazier" }, { "id": 1, "name": "Lawson Guerrero" }, { "id": 2, "name": "Marianne Francis" } ], "greeting": "Hello, Herminia Craft! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2127bb6656c9249e85", "index": 1117, "guid": "013caa0a-67d9-4063-a91d-d4f7798c4d45", "isActive": false, "balance": "$3,051.37", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Klein Wiley", "gender": "male", "company": "GEEKOL", "email": "kleinwiley@geekol.com", "phone": "+1 (921) 597-3955", "address": "254 Plymouth Street, Ripley, New Mexico, 4884", "about": "Magna tempor commodo aute excepteur deserunt esse ipsum non fugiat amet proident Lorem ea. Quis ea ullamco veniam velit ut. Eu voluptate consectetur elit labore cupidatat magna laborum Lorem occaecat est esse reprehenderit.\r\n", "registered": "2014-09-12T23:28:07-12:00", "latitude": -72.891603, "longitude": 101.732368, "tags": [ "amet", "ipsum", "est", "labore", "ad", "occaecat", "labore" ], "friends": [ { "id": 0, "name": "Doreen Kelly" }, { "id": 1, "name": "Pope Klein" }, { "id": 2, "name": "Shawna Mcbride" } ], "greeting": "Hello, Klein Wiley! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea213abc99997cc0612b", "index": 1118, "guid": "bc0be45b-57bd-454d-8c64-948c62d2855f", "isActive": true, "balance": "$2,869.48", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Rose Carey", "gender": "male", "company": "BUGSALL", "email": "rosecarey@bugsall.com", "phone": "+1 (976) 402-3277", "address": "579 Pershing Loop, Craig, Maryland, 5479", "about": "Laborum nostrud amet sit commodo voluptate do ipsum commodo consectetur duis. Voluptate commodo nulla veniam aute deserunt. Occaecat cillum consectetur enim commodo aliqua est sint cupidatat ad ipsum Lorem ut magna. Fugiat pariatur consectetur minim reprehenderit enim dolor in in ad mollit consectetur. Enim nisi dolor incididunt officia labore ullamco occaecat.\r\n", "registered": "2014-08-18T21:42:25-12:00", "latitude": 57.759903, "longitude": -133.882237, "tags": [ "velit", "ad", "sunt", "duis", "nulla", "sint", "commodo" ], "friends": [ { "id": 0, "name": "Tina Fry" }, { "id": 1, "name": "Cohen Beasley" }, { "id": 2, "name": "Slater Gaines" } ], "greeting": "Hello, Rose Carey! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21d9b431d89e803740", "index": 1119, "guid": "09cd471e-4c67-42a3-afd9-8a7c18a475b0", "isActive": false, "balance": "$3,642.95", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Ruth Warner", "gender": "female", "company": "AQUAMATE", "email": "ruthwarner@aquamate.com", "phone": "+1 (883) 430-3374", "address": "558 Garland Court, Axis, Alaska, 1578", "about": "Dolore ullamco fugiat exercitation aliquip ipsum ullamco nisi pariatur fugiat aute magna. Qui qui amet sunt exercitation voluptate. Enim enim do commodo laboris magna officia voluptate esse amet laborum officia pariatur reprehenderit irure. Dolor nisi aliqua exercitation eu. Adipisicing id reprehenderit voluptate elit ex culpa occaecat enim laborum esse labore laboris.\r\n", "registered": "2014-03-09T17:22:36-13:00", "latitude": 75.121887, "longitude": 65.614656, "tags": [ "adipisicing", "elit", "Lorem", "cillum", "ipsum", "proident", "ut" ], "friends": [ { "id": 0, "name": "Martina Henry" }, { "id": 1, "name": "Holcomb Clark" }, { "id": 2, "name": "Shields Baird" } ], "greeting": "Hello, Ruth Warner! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21b92cf06df91fc335", "index": 1120, "guid": "2e1bde55-af1f-495e-91d9-19289d0cce12", "isActive": true, "balance": "$3,379.49", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Hardy Noel", "gender": "male", "company": "KEENGEN", "email": "hardynoel@keengen.com", "phone": "+1 (913) 436-2098", "address": "478 Colonial Court, Homestead, Arizona, 813", "about": "Ipsum est laborum consectetur officia cupidatat ut voluptate nisi et labore nisi laborum tempor. Consectetur occaecat commodo aute cillum. Cillum cupidatat nulla eiusmod aute velit aliqua id pariatur ut proident pariatur nisi tempor.\r\n", "registered": "2014-06-11T23:11:28-12:00", "latitude": -29.542615, "longitude": -49.73876, "tags": [ "reprehenderit", "dolore", "non", "consectetur", "culpa", "esse", "minim" ], "friends": [ { "id": 0, "name": "Wooten Dunlap" }, { "id": 1, "name": "Heath Kramer" }, { "id": 2, "name": "Stella Hubbard" } ], "greeting": "Hello, Hardy Noel! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2151198739859d47e8", "index": 1121, "guid": "bdd553a6-f3f0-4556-afa4-4e1f7277d192", "isActive": false, "balance": "$1,930.05", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Davidson Petersen", "gender": "male", "company": "PLASMOSIS", "email": "davidsonpetersen@plasmosis.com", "phone": "+1 (873) 459-2705", "address": "212 Provost Street, Interlochen, Federated States Of Micronesia, 3638", "about": "Ad eiusmod proident Lorem aute irure amet eiusmod aute culpa ex excepteur officia. Adipisicing reprehenderit minim sint duis do ex consequat. Exercitation magna id anim reprehenderit ex aute est non excepteur adipisicing consectetur commodo laboris.\r\n", "registered": "2014-02-04T18:22:21-13:00", "latitude": -75.908836, "longitude": -34.971192, "tags": [ "dolor", "pariatur", "irure", "Lorem", "quis", "reprehenderit", "duis" ], "friends": [ { "id": 0, "name": "Mercer Ford" }, { "id": 1, "name": "Burris Buck" }, { "id": 2, "name": "Barbara Harrington" } ], "greeting": "Hello, Davidson Petersen! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21c1eebabe08f2e6f5", "index": 1122, "guid": "ebb64604-d3ee-4173-9233-d836cfab7d01", "isActive": false, "balance": "$3,961.35", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Kerri Johns", "gender": "female", "company": "ISOSWITCH", "email": "kerrijohns@isoswitch.com", "phone": "+1 (830) 535-2383", "address": "337 Division Place, Fairfield, Oklahoma, 4330", "about": "Incididunt est elit dolore quis commodo. Amet aliqua consequat occaecat esse. Ea duis cupidatat excepteur sunt fugiat id sit esse sint cillum qui ipsum dolore occaecat. Dolore occaecat officia id aute officia irure cupidatat eiusmod fugiat eiusmod. Cupidatat pariatur occaecat cupidatat non cillum laborum. Esse duis duis sint nisi laborum esse labore est culpa id. Veniam laboris nisi in adipisicing ipsum velit ipsum voluptate veniam dolore.\r\n", "registered": "2014-09-19T20:29:19-12:00", "latitude": 56.779212, "longitude": 43.744508, "tags": [ "ad", "cillum", "sint", "exercitation", "minim", "duis", "ullamco" ], "friends": [ { "id": 0, "name": "Preston Montoya" }, { "id": 1, "name": "Katina Berger" }, { "id": 2, "name": "Addie Osborne" } ], "greeting": "Hello, Kerri Johns! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea217b278dd10d30d8d6", "index": 1123, "guid": "6a0fe912-1e32-4876-8f24-d8015b35a45e", "isActive": false, "balance": "$3,226.21", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Patel Mathis", "gender": "male", "company": "TWIGGERY", "email": "patelmathis@twiggery.com", "phone": "+1 (988) 499-3015", "address": "587 Merit Court, Drummond, Michigan, 7951", "about": "Culpa veniam velit laborum nulla. Laborum id labore elit in. Cupidatat sint ad deserunt dolor aliqua qui tempor aute mollit. Sunt id cupidatat quis cillum elit aliqua irure mollit ipsum. Adipisicing voluptate et sint aliqua aliqua exercitation aliquip cillum veniam proident eu consectetur. Lorem veniam veniam ex veniam dolor excepteur.\r\n", "registered": "2014-04-05T10:16:13-13:00", "latitude": -52.164499, "longitude": 143.158795, "tags": [ "voluptate", "veniam", "labore", "laborum", "pariatur", "nulla", "culpa" ], "friends": [ { "id": 0, "name": "Kendra Melton" }, { "id": 1, "name": "Landry Eaton" }, { "id": 2, "name": "Keisha Mays" } ], "greeting": "Hello, Patel Mathis! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea219294fe9939861f56", "index": 1124, "guid": "41515167-7737-4e66-a995-a4b6f179e2c3", "isActive": true, "balance": "$3,376.15", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Isabel Gill", "gender": "female", "company": "ANDERSHUN", "email": "isabelgill@andershun.com", "phone": "+1 (982) 592-3289", "address": "954 Whitty Lane, Hamilton, Kansas, 8030", "about": "Velit do velit excepteur in do excepteur reprehenderit id duis adipisicing enim. Dolor occaecat esse sit ex mollit veniam velit non elit culpa ullamco. Sit culpa consequat nisi excepteur sunt. Nostrud irure pariatur consectetur id ad. Sint dolor aute Lorem sit cupidatat culpa magna nisi dolore reprehenderit sunt.\r\n", "registered": "2014-02-12T02:47:22-13:00", "latitude": 31.20475, "longitude": -85.686988, "tags": [ "eiusmod", "enim", "exercitation", "eu", "dolor", "minim", "anim" ], "friends": [ { "id": 0, "name": "Sharron Wheeler" }, { "id": 1, "name": "Cecile Carr" }, { "id": 2, "name": "Fry Wolfe" } ], "greeting": "Hello, Isabel Gill! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2113335b98406ac58a", "index": 1125, "guid": "6a651084-0e52-4b9b-bdce-1d8a28729197", "isActive": true, "balance": "$3,331.32", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Wilma Huber", "gender": "female", "company": "CIPROMOX", "email": "wilmahuber@cipromox.com", "phone": "+1 (997) 401-3949", "address": "248 Madeline Court, Chestnut, South Dakota, 8869", "about": "Eiusmod mollit magna ad labore in dolore id. Sunt ad veniam eu veniam aute. Anim esse officia deserunt ullamco ad exercitation. Officia velit ut incididunt est ullamco. Et duis est est cillum. Velit proident voluptate ipsum nisi. Consectetur deserunt commodo fugiat magna dolore ad.\r\n", "registered": "2014-01-09T11:51:30-13:00", "latitude": -65.107484, "longitude": 176.219287, "tags": [ "ullamco", "do", "exercitation", "amet", "pariatur", "amet", "nostrud" ], "friends": [ { "id": 0, "name": "Mueller Pierce" }, { "id": 1, "name": "Simone Merritt" }, { "id": 2, "name": "Tricia Aguirre" } ], "greeting": "Hello, Wilma Huber! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea213e315e95460f8426", "index": 1126, "guid": "3d70d1e1-da61-4f4e-8bfb-b0f563afc825", "isActive": false, "balance": "$1,496.28", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Griffith Luna", "gender": "male", "company": "ROTODYNE", "email": "griffithluna@rotodyne.com", "phone": "+1 (979) 481-2874", "address": "223 Bayard Street, Mappsville, West Virginia, 5598", "about": "Ea pariatur id laborum quis nostrud eu et velit do mollit pariatur labore. Proident ullamco do culpa ipsum eiusmod magna laboris. Qui est pariatur aute ea. Aute non aliqua cupidatat non exercitation dolor ullamco excepteur tempor cillum enim aute in aliqua. Lorem velit ea pariatur et qui esse dolor. Enim reprehenderit incididunt quis quis in id eu reprehenderit ullamco aliqua nisi enim incididunt occaecat.\r\n", "registered": "2014-05-08T21:25:02-12:00", "latitude": 49.778067, "longitude": 93.213801, "tags": [ "amet", "ullamco", "nisi", "ad", "est", "eu", "cupidatat" ], "friends": [ { "id": 0, "name": "Terrie Bowen" }, { "id": 1, "name": "Madeline Mueller" }, { "id": 2, "name": "Chase Duncan" } ], "greeting": "Hello, Griffith Luna! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2197f5b9c31202a514", "index": 1127, "guid": "29014d5f-5466-436b-befe-3dbca7a5a1a1", "isActive": false, "balance": "$2,329.55", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Kinney Burt", "gender": "male", "company": "OMATOM", "email": "kinneyburt@omatom.com", "phone": "+1 (841) 443-2926", "address": "531 Bowne Street, Masthope, Texas, 9388", "about": "Nostrud ipsum excepteur excepteur quis occaecat ex ad. Laboris occaecat fugiat et proident officia non Lorem amet duis laborum eiusmod. Eiusmod esse cupidatat Lorem do occaecat consectetur consectetur excepteur sit est mollit ipsum officia. Nulla sunt do Lorem sunt tempor sit dolore adipisicing dolore fugiat.\r\n", "registered": "2014-07-12T05:13:49-12:00", "latitude": 53.342395, "longitude": 86.325327, "tags": [ "excepteur", "nulla", "aliqua", "quis", "tempor", "duis", "deserunt" ], "friends": [ { "id": 0, "name": "Roberta Saunders" }, { "id": 1, "name": "Gladys Caldwell" }, { "id": 2, "name": "Nicholson House" } ], "greeting": "Hello, Kinney Burt! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21ba6ca9133da16a57", "index": 1128, "guid": "204899c5-1610-467b-b64d-925b53be4894", "isActive": true, "balance": "$1,785.61", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Zamora Dudley", "gender": "male", "company": "XPLOR", "email": "zamoradudley@xplor.com", "phone": "+1 (860) 409-3544", "address": "490 Ingraham Street, Joes, Oregon, 7854", "about": "Est ullamco et elit non Lorem est exercitation sint nostrud reprehenderit exercitation anim officia mollit. Est deserunt officia ipsum do est. Magna aliquip voluptate eiusmod ullamco labore irure.\r\n", "registered": "2014-02-21T05:22:02-13:00", "latitude": 56.825388, "longitude": -129.441169, "tags": [ "dolor", "nostrud", "enim", "non", "occaecat", "proident", "sit" ], "friends": [ { "id": 0, "name": "Henry Wynn" }, { "id": 1, "name": "Blackburn Wilkinson" }, { "id": 2, "name": "Anna Bailey" } ], "greeting": "Hello, Zamora Dudley! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21e566429d4db7255c", "index": 1129, "guid": "46c39b3b-02d3-4b03-a679-a8d04cfcb045", "isActive": true, "balance": "$2,297.08", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Beatriz Barry", "gender": "female", "company": "OVOLO", "email": "beatrizbarry@ovolo.com", "phone": "+1 (820) 524-3531", "address": "521 Canda Avenue, Roosevelt, Nevada, 8099", "about": "Eu amet incididunt magna culpa consequat laboris et non. Veniam in aute velit et amet magna esse officia amet elit irure magna. Velit eu cillum nostrud eiusmod est ex veniam cupidatat. Exercitation eu est consequat tempor sit officia. Sunt eu consectetur labore velit voluptate officia cillum minim minim proident aliquip velit officia.\r\n", "registered": "2014-03-11T12:24:09-13:00", "latitude": -53.225479, "longitude": -91.611763, "tags": [ "elit", "est", "ipsum", "anim", "dolor", "fugiat", "cillum" ], "friends": [ { "id": 0, "name": "Holder Atkins" }, { "id": 1, "name": "Berta Donaldson" }, { "id": 2, "name": "Adele Hutchinson" } ], "greeting": "Hello, Beatriz Barry! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21306f42ebd25d4c0f", "index": 1130, "guid": "6c42d296-e45c-45d7-a19a-619b092799c2", "isActive": false, "balance": "$1,395.34", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Leonard Decker", "gender": "male", "company": "NORALEX", "email": "leonarddecker@noralex.com", "phone": "+1 (943) 458-2314", "address": "615 Portland Avenue, Guilford, Minnesota, 7852", "about": "Consequat est aliquip aliqua ad fugiat ipsum. Ullamco amet anim sit id dolore officia qui est consectetur aliqua adipisicing. Sunt cillum dolore ea consequat voluptate. Dolor non Lorem dolore quis sint laboris et eiusmod consectetur. Amet occaecat quis duis qui. Consectetur minim commodo sunt et aliquip ut minim officia ea quis esse.\r\n", "registered": "2014-07-24T10:23:58-12:00", "latitude": 65.222681, "longitude": 59.678325, "tags": [ "sit", "veniam", "mollit", "sint", "nisi", "commodo", "aliqua" ], "friends": [ { "id": 0, "name": "Jones Cochran" }, { "id": 1, "name": "Jackson Mckay" }, { "id": 2, "name": "Mayer Simpson" } ], "greeting": "Hello, Leonard Decker! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21dea5fc8f5dbe86b2", "index": 1131, "guid": "2516615e-bb97-42fa-adb4-4f47b6a8f110", "isActive": false, "balance": "$3,886.20", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Robin Everett", "gender": "female", "company": "AUSTECH", "email": "robineverett@austech.com", "phone": "+1 (851) 509-3358", "address": "581 Polhemus Place, Stockdale, Missouri, 8994", "about": "Reprehenderit fugiat id aliqua ex elit nulla ipsum amet excepteur ad incididunt veniam in consequat. Laborum id non exercitation aliquip incididunt amet aute reprehenderit consectetur dolore sint cupidatat. Velit est exercitation ipsum excepteur ex deserunt enim minim in. Dolore dolore incididunt officia magna consequat exercitation sunt exercitation aute commodo ex consectetur. Nostrud adipisicing est magna mollit commodo velit commodo cupidatat tempor nostrud officia fugiat.\r\n", "registered": "2014-05-03T05:25:07-12:00", "latitude": 72.042451, "longitude": 143.688995, "tags": [ "ut", "non", "fugiat", "deserunt", "duis", "id", "reprehenderit" ], "friends": [ { "id": 0, "name": "Lorraine Delgado" }, { "id": 1, "name": "Mai Mcgowan" }, { "id": 2, "name": "Sims Fleming" } ], "greeting": "Hello, Robin Everett! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea216124e42312650eb0", "index": 1132, "guid": "3826c422-c9e9-4281-86fe-094d4ede08cc", "isActive": false, "balance": "$3,133.49", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Jolene Burton", "gender": "female", "company": "DIGIGEN", "email": "joleneburton@digigen.com", "phone": "+1 (971) 414-3285", "address": "406 Maple Street, Dale, Rhode Island, 1793", "about": "Duis est ex sit laborum Lorem nulla culpa ex labore consequat qui. Mollit pariatur consectetur duis voluptate laboris aute qui culpa quis qui consequat cupidatat ullamco. Est minim adipisicing nulla laboris. Est amet ad ut proident in nulla sint sint mollit reprehenderit. Eiusmod ipsum excepteur excepteur velit cupidatat duis. Duis magna laboris officia id voluptate non in eu.\r\n", "registered": "2014-08-16T07:46:01-12:00", "latitude": -69.105302, "longitude": -89.403798, "tags": [ "et", "cillum", "ipsum", "ea", "Lorem", "eu", "nisi" ], "friends": [ { "id": 0, "name": "Santos Graves" }, { "id": 1, "name": "Sonia Potts" }, { "id": 2, "name": "Velez Holland" } ], "greeting": "Hello, Jolene Burton! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea218a6c0eaf712442a7", "index": 1133, "guid": "1b9ba746-614c-476e-a1b8-ac5fe87bc28e", "isActive": true, "balance": "$3,754.36", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Bette Hewitt", "gender": "female", "company": "XURBAN", "email": "bettehewitt@xurban.com", "phone": "+1 (987) 580-3508", "address": "424 Cooper Street, Westerville, Florida, 287", "about": "In incididunt duis deserunt aute consectetur culpa duis adipisicing. Mollit aliquip nisi dolore Lorem aliquip nulla officia exercitation laboris proident velit dolor duis. Do nulla proident esse sunt do aliquip. Officia proident dolore nulla commodo quis labore adipisicing occaecat ea tempor consectetur quis qui elit.\r\n", "registered": "2014-03-31T17:20:19-13:00", "latitude": 43.431823, "longitude": 48.863942, "tags": [ "reprehenderit", "anim", "consequat", "tempor", "exercitation", "excepteur", "quis" ], "friends": [ { "id": 0, "name": "Kristi Porter" }, { "id": 1, "name": "Paige Callahan" }, { "id": 2, "name": "Haley Christensen" } ], "greeting": "Hello, Bette Hewitt! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea215b12876dc52173ac", "index": 1134, "guid": "e064cd6f-2a60-45b8-96d9-b804f5cb7ea4", "isActive": false, "balance": "$3,003.95", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Aimee Salazar", "gender": "female", "company": "OVATION", "email": "aimeesalazar@ovation.com", "phone": "+1 (932) 417-3771", "address": "783 Prescott Place, Veyo, North Carolina, 8025", "about": "Voluptate est esse fugiat do amet. Nostrud labore tempor eiusmod deserunt fugiat ipsum nisi magna in mollit eu eu quis ex. Sint cillum culpa nulla dolor occaecat aliquip ipsum tempor incididunt culpa. Sint laboris minim esse culpa sint aliqua ullamco ut commodo. Eu in elit nulla duis excepteur excepteur irure mollit culpa esse adipisicing. Mollit exercitation laboris nostrud sit enim elit ad deserunt anim duis. Ex reprehenderit esse ad ex ex laborum id pariatur aute sunt non consequat deserunt.\r\n", "registered": "2014-08-02T05:02:00-12:00", "latitude": -4.609714, "longitude": 28.278583, "tags": [ "nulla", "culpa", "ut", "ex", "enim", "est", "ex" ], "friends": [ { "id": 0, "name": "Ophelia Emerson" }, { "id": 1, "name": "Juana Velasquez" }, { "id": 2, "name": "Mayo Chapman" } ], "greeting": "Hello, Aimee Salazar! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2103f5aaa724660437", "index": 1135, "guid": "cfb179e4-8bb3-4ad6-b508-e2219b46f316", "isActive": true, "balance": "$1,371.14", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Burke Jennings", "gender": "male", "company": "GYNK", "email": "burkejennings@gynk.com", "phone": "+1 (880) 579-3795", "address": "744 Cook Street, Cutter, New Hampshire, 9739", "about": "Laboris consequat laboris reprehenderit ea magna ex est aliquip. Amet exercitation consequat elit ipsum voluptate minim fugiat cupidatat ea eu ea ea nisi et. Pariatur cupidatat sint commodo dolor ut aliquip nulla. Aliquip elit fugiat sit nostrud fugiat pariatur qui est mollit veniam. Ex culpa cillum pariatur ut excepteur nisi reprehenderit incididunt nostrud. Velit magna enim velit commodo amet. Et eu do Lorem cillum velit incididunt incididunt qui aliquip cillum.\r\n", "registered": "2014-07-27T07:52:36-12:00", "latitude": 67.379203, "longitude": 116.772614, "tags": [ "non", "elit", "dolor", "nostrud", "do", "sunt", "eu" ], "friends": [ { "id": 0, "name": "Huber Logan" }, { "id": 1, "name": "Rowe Sloan" }, { "id": 2, "name": "Tyson Lamb" } ], "greeting": "Hello, Burke Jennings! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21387f8040a5944ce2", "index": 1136, "guid": "9eac1edb-1680-4ec9-a9be-c364c5d35827", "isActive": false, "balance": "$3,148.35", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Ferrell Jensen", "gender": "male", "company": "PORTICO", "email": "ferrelljensen@portico.com", "phone": "+1 (858) 515-3202", "address": "128 Pioneer Street, Matheny, Arkansas, 2546", "about": "Adipisicing aute enim pariatur non tempor duis ex voluptate qui laborum sint tempor laboris. Laborum exercitation veniam elit officia labore dolor aute ad labore adipisicing incididunt cupidatat occaecat. Magna deserunt elit est in nisi. Laborum consectetur et eiusmod incididunt ullamco pariatur excepteur ipsum veniam eu dolore. Qui tempor exercitation culpa veniam veniam nisi est veniam sunt. Lorem enim ex cillum laboris fugiat culpa consequat sunt non.\r\n", "registered": "2014-03-22T04:47:55-13:00", "latitude": 70.287, "longitude": 67.157959, "tags": [ "esse", "sit", "non", "ad", "amet", "tempor", "do" ], "friends": [ { "id": 0, "name": "Jane Carrillo" }, { "id": 1, "name": "Gilliam Mccarthy" }, { "id": 2, "name": "Claudine Salas" } ], "greeting": "Hello, Ferrell Jensen! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea217659abbffa7faeb4", "index": 1137, "guid": "fc61ff22-a461-4dda-a3f6-b95ec3a16960", "isActive": true, "balance": "$1,219.17", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Clay Castillo", "gender": "male", "company": "ZAGGLES", "email": "claycastillo@zaggles.com", "phone": "+1 (919) 587-3527", "address": "688 Downing Street, Robinette, Iowa, 6258", "about": "Labore do exercitation fugiat adipisicing tempor velit ea. Laboris ullamco sit enim amet aute esse aliqua ea culpa voluptate aute aliquip proident sint. Consectetur in eiusmod consequat nisi id laboris commodo adipisicing amet duis in deserunt.\r\n", "registered": "2014-01-10T01:38:03-13:00", "latitude": 2.293979, "longitude": -62.123228, "tags": [ "consectetur", "aute", "tempor", "proident", "commodo", "cillum", "dolor" ], "friends": [ { "id": 0, "name": "Milagros Tanner" }, { "id": 1, "name": "Rachel Chase" }, { "id": 2, "name": "Wall Suarez" } ], "greeting": "Hello, Clay Castillo! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21e6d03e86838ed969", "index": 1138, "guid": "84273275-3d24-4ac5-9364-b04b6f3dc42c", "isActive": false, "balance": "$3,030.61", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Morrison Leonard", "gender": "male", "company": "PANZENT", "email": "morrisonleonard@panzent.com", "phone": "+1 (977) 528-2840", "address": "529 Knight Court, Monument, Nebraska, 4726", "about": "Do est anim ex ea consequat laborum ea deserunt Lorem est ut nostrud. Ea ut velit non do tempor consequat deserunt ullamco. Exercitation quis tempor irure cupidatat mollit mollit cillum ex consequat sit. Mollit duis reprehenderit nisi exercitation adipisicing minim nulla Lorem ea. Magna enim fugiat magna qui. Ipsum ut proident excepteur exercitation aute in dolore. Eu aliqua aliquip cillum cillum proident ea culpa non.\r\n", "registered": "2014-03-02T04:04:36-13:00", "latitude": -50.307036, "longitude": -55.206373, "tags": [ "aute", "aliqua", "aliqua", "reprehenderit", "labore", "ad", "sit" ], "friends": [ { "id": 0, "name": "Yolanda Castro" }, { "id": 1, "name": "Bowman Burks" }, { "id": 2, "name": "Dona Perry" } ], "greeting": "Hello, Morrison Leonard! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea210008191df09eac94", "index": 1139, "guid": "b62b66a3-44c5-447c-84ba-de72e874ee63", "isActive": true, "balance": "$3,480.91", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Wright Hansen", "gender": "male", "company": "CINCYR", "email": "wrighthansen@cincyr.com", "phone": "+1 (946) 455-2282", "address": "484 Manhattan Avenue, Lloyd, District Of Columbia, 9630", "about": "Labore adipisicing aute nostrud esse minim commodo nulla qui. Irure anim eiusmod cillum nulla sint ullamco elit eiusmod. Ut tempor dolor anim proident laboris sint culpa velit sit ad sint sint. Officia qui consectetur sunt minim fugiat enim occaecat est qui in. Magna nisi dolor minim Lorem et aliqua eiusmod eiusmod quis anim duis. In commodo est eiusmod cupidatat cupidatat. Aliqua nulla ipsum ex reprehenderit anim dolor.\r\n", "registered": "2014-06-10T18:26:11-12:00", "latitude": 21.041842, "longitude": 85.784095, "tags": [ "pariatur", "laboris", "mollit", "veniam", "elit", "exercitation", "quis" ], "friends": [ { "id": 0, "name": "Bertie Avery" }, { "id": 1, "name": "Oneil Holman" }, { "id": 2, "name": "Pierce Boyle" } ], "greeting": "Hello, Wright Hansen! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21470411c5d22b336d", "index": 1140, "guid": "b32e4dea-195f-4baa-9f8e-0c900de53ec2", "isActive": false, "balance": "$3,820.45", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Dora Bauer", "gender": "female", "company": "FITCORE", "email": "dorabauer@fitcore.com", "phone": "+1 (984) 569-2262", "address": "295 Ivan Court, Grapeview, New Jersey, 7321", "about": "Commodo do irure dolor duis pariatur. Ad proident occaecat pariatur sunt nulla dolor. Nostrud velit laborum sunt consectetur sit. Eu mollit qui fugiat enim deserunt eiusmod sunt amet voluptate ex voluptate. Aliquip occaecat in pariatur ullamco deserunt proident esse dolore sint eiusmod duis adipisicing labore.\r\n", "registered": "2014-01-05T16:51:28-13:00", "latitude": -33.125815, "longitude": 39.762173, "tags": [ "nostrud", "qui", "culpa", "nulla", "pariatur", "veniam", "esse" ], "friends": [ { "id": 0, "name": "Clarice Avila" }, { "id": 1, "name": "Dianne Vazquez" }, { "id": 2, "name": "Anderson Tucker" } ], "greeting": "Hello, Dora Bauer! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21b2036c5164d5f870", "index": 1141, "guid": "122545c1-08e6-437b-b4be-e53d092f8c6f", "isActive": false, "balance": "$1,755.17", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Bernadette Swanson", "gender": "female", "company": "FLEETMIX", "email": "bernadetteswanson@fleetmix.com", "phone": "+1 (920) 558-3930", "address": "916 Duryea Place, Yonah, Palau, 9825", "about": "Proident duis consequat cupidatat consectetur est in proident commodo ex ut elit. Est quis tempor anim cillum enim velit cillum non elit in proident. Occaecat sit esse officia cillum deserunt amet ad et veniam laborum veniam. Veniam commodo ipsum sunt amet in sunt incididunt officia enim.\r\n", "registered": "2014-08-05T01:25:57-12:00", "latitude": 4.557983, "longitude": -73.598374, "tags": [ "nisi", "eiusmod", "nulla", "occaecat", "voluptate", "pariatur", "nostrud" ], "friends": [ { "id": 0, "name": "Pearson Miles" }, { "id": 1, "name": "Cortez Hays" }, { "id": 2, "name": "Jeanne Whitley" } ], "greeting": "Hello, Bernadette Swanson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21231b8696c00986c6", "index": 1142, "guid": "8fa86350-60d2-4b60-9e28-6611fe241de7", "isActive": false, "balance": "$3,605.83", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Matthews Stone", "gender": "male", "company": "KNOWLYSIS", "email": "matthewsstone@knowlysis.com", "phone": "+1 (822) 432-3117", "address": "703 Rockwell Place, Chical, Puerto Rico, 1747", "about": "Do qui consequat proident laboris ea. Veniam consequat reprehenderit aliqua pariatur minim incididunt non laborum cillum dolore et ullamco. Sunt et do cillum id ea eu velit sunt dolore nisi proident. Occaecat officia laboris qui magna ea aute anim enim pariatur ipsum velit. Culpa sunt magna labore et ad aliqua. Ullamco minim ipsum culpa cupidatat dolore aliquip eu laboris consequat.\r\n", "registered": "2014-05-31T11:15:48-12:00", "latitude": -20.933875, "longitude": -13.482442, "tags": [ "anim", "id", "exercitation", "do", "pariatur", "et", "cillum" ], "friends": [ { "id": 0, "name": "Kelly Villarreal" }, { "id": 1, "name": "Padilla Howe" }, { "id": 2, "name": "Snow Keith" } ], "greeting": "Hello, Matthews Stone! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea210d9a8b25f2d1850d", "index": 1143, "guid": "b6cc293a-afeb-4025-97f9-510ab97fee27", "isActive": true, "balance": "$1,119.17", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Saunders Mayo", "gender": "male", "company": "VIXO", "email": "saundersmayo@vixo.com", "phone": "+1 (826) 569-2671", "address": "302 Albemarle Road, Advance, California, 1003", "about": "In nisi cupidatat culpa cillum ipsum sunt sunt. Dolor id incididunt id anim minim magna nostrud anim. Exercitation adipisicing cupidatat culpa ullamco exercitation anim. Nulla amet ad ea magna eiusmod Lorem sint id. Cillum excepteur do laboris id in eu nulla exercitation ipsum consequat duis nisi. Dolor nulla ad culpa nisi quis. Cillum qui aute voluptate occaecat exercitation ex minim Lorem velit ex elit nulla consectetur enim.\r\n", "registered": "2014-09-15T00:54:36-12:00", "latitude": 67.53696, "longitude": 97.015797, "tags": [ "aliquip", "reprehenderit", "velit", "nulla", "et", "quis", "officia" ], "friends": [ { "id": 0, "name": "Zimmerman Rosales" }, { "id": 1, "name": "Beth Mason" }, { "id": 2, "name": "Cook Warren" } ], "greeting": "Hello, Saunders Mayo! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea216fb6d8306e23cb49", "index": 1144, "guid": "0cf099f8-062f-4e1b-be4d-69dff770a1aa", "isActive": true, "balance": "$2,383.68", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Marsh Barlow", "gender": "male", "company": "HOTCAKES", "email": "marshbarlow@hotcakes.com", "phone": "+1 (947) 566-3631", "address": "325 Scott Avenue, Kimmell, Vermont, 8728", "about": "Esse ipsum consectetur cillum Lorem do minim eu deserunt enim ad id fugiat deserunt ea. Incididunt minim id ipsum reprehenderit cupidatat occaecat cupidatat. Ullamco sunt velit esse exercitation voluptate elit irure in qui.\r\n", "registered": "2014-01-27T03:05:15-13:00", "latitude": 84.411396, "longitude": 43.512937, "tags": [ "elit", "et", "cillum", "consequat", "ut", "ut", "labore" ], "friends": [ { "id": 0, "name": "Burnett Davis" }, { "id": 1, "name": "Leanne Solis" }, { "id": 2, "name": "Jeanette Riggs" } ], "greeting": "Hello, Marsh Barlow! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21976eae0f716d74fa", "index": 1145, "guid": "c7d5dfeb-b3e8-4bec-9bf5-2596586f143d", "isActive": true, "balance": "$2,363.29", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Farrell Matthews", "gender": "male", "company": "FROSNEX", "email": "farrellmatthews@frosnex.com", "phone": "+1 (885) 542-2667", "address": "124 Crosby Avenue, Slovan, Indiana, 1108", "about": "Nostrud magna sit eiusmod duis nostrud laboris anim irure. Labore exercitation fugiat amet commodo. Eu non magna officia dolore incididunt ipsum officia qui eiusmod. Aliquip sit commodo velit eiusmod magna sint et pariatur ea dolor est ipsum culpa voluptate. Non reprehenderit minim voluptate nostrud. Ipsum ut fugiat incididunt do.\r\n", "registered": "2014-02-02T21:29:00-13:00", "latitude": -10.815694, "longitude": 9.427304, "tags": [ "anim", "aliqua", "pariatur", "excepteur", "anim", "deserunt", "est" ], "friends": [ { "id": 0, "name": "Alexis Petty" }, { "id": 1, "name": "Edwards Marshall" }, { "id": 2, "name": "Day Black" } ], "greeting": "Hello, Farrell Matthews! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21b5a9ab57699cee7f", "index": 1146, "guid": "d0894333-2bf9-4448-9a16-1df0855b3d8e", "isActive": false, "balance": "$1,821.45", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Mcgowan Sykes", "gender": "male", "company": "FANGOLD", "email": "mcgowansykes@fangold.com", "phone": "+1 (869) 428-3390", "address": "666 Kingston Avenue, Ona, Illinois, 1661", "about": "Esse laborum ut dolor commodo excepteur ipsum nostrud veniam dolore incididunt aliqua esse tempor. Nisi aliquip est id magna mollit nisi laboris ullamco laborum irure et mollit cupidatat. Nostrud sunt consequat adipisicing velit ex duis consectetur. Ullamco ut ea officia duis enim elit minim ipsum incididunt tempor minim ea cupidatat. Deserunt esse incididunt occaecat et ut voluptate ea pariatur eu enim. Quis nostrud est duis pariatur cillum dolore enim sunt consectetur. Nulla adipisicing ad pariatur voluptate aliqua enim nostrud veniam occaecat quis.\r\n", "registered": "2014-06-15T10:32:28-12:00", "latitude": -42.939168, "longitude": 14.960804, "tags": [ "qui", "non", "minim", "officia", "nisi", "exercitation", "qui" ], "friends": [ { "id": 0, "name": "Beck Becker" }, { "id": 1, "name": "Vasquez Cox" }, { "id": 2, "name": "Hicks Murphy" } ], "greeting": "Hello, Mcgowan Sykes! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea212715778c5219df42", "index": 1147, "guid": "f4f3a4bb-5cda-40df-9fdb-a17faacb988d", "isActive": true, "balance": "$3,199.85", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Hopkins Kim", "gender": "male", "company": "EXIAND", "email": "hopkinskim@exiand.com", "phone": "+1 (969) 591-2296", "address": "534 Sackman Street, Idledale, South Carolina, 9428", "about": "Aliquip sunt consectetur eu tempor nulla sunt cupidatat elit commodo elit qui ex. Qui adipisicing labore aliqua nulla anim enim. Laboris esse ex ad tempor proident. Exercitation adipisicing amet Lorem aliqua excepteur labore elit veniam. Anim ea laboris mollit non tempor officia ipsum aliquip exercitation.\r\n", "registered": "2014-07-18T19:34:54-12:00", "latitude": -10.851864, "longitude": 106.856654, "tags": [ "ea", "ea", "elit", "culpa", "Lorem", "tempor", "do" ], "friends": [ { "id": 0, "name": "Jenna Stafford" }, { "id": 1, "name": "Beatrice Daniel" }, { "id": 2, "name": "Kaufman Hudson" } ], "greeting": "Hello, Hopkins Kim! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21c6517835930047a8", "index": 1148, "guid": "6904e410-205f-42e1-b664-effb2244b248", "isActive": true, "balance": "$3,734.50", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Cathy Snow", "gender": "female", "company": "TURNABOUT", "email": "cathysnow@turnabout.com", "phone": "+1 (861) 534-2826", "address": "140 Village Road, Nicholson, American Samoa, 2775", "about": "Laborum mollit qui occaecat culpa fugiat. Eiusmod nulla eiusmod ipsum culpa in fugiat aliqua proident. Sit velit esse fugiat sit sit.\r\n", "registered": "2014-05-16T00:21:27-12:00", "latitude": 36.77717, "longitude": -146.480493, "tags": [ "labore", "occaecat", "dolore", "in", "nulla", "pariatur", "cupidatat" ], "friends": [ { "id": 0, "name": "Janie Patrick" }, { "id": 1, "name": "Sophia Padilla" }, { "id": 2, "name": "Rosa Melendez" } ], "greeting": "Hello, Cathy Snow! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21d5cd8a251f011026", "index": 1149, "guid": "91834214-4ba8-4b3b-a9a0-ff43b5b05db9", "isActive": true, "balance": "$2,991.72", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Debora Vasquez", "gender": "female", "company": "PLASMOS", "email": "deboravasquez@plasmos.com", "phone": "+1 (853) 533-2215", "address": "652 Coyle Street, Madaket, Delaware, 8364", "about": "Magna irure irure labore ad aute adipisicing voluptate sint id qui ipsum commodo irure. Aliqua tempor incididunt anim et est. Anim ex ad dolor non id ipsum nostrud sit deserunt deserunt laborum adipisicing voluptate velit. Eiusmod enim duis tempor proident nulla nostrud eu incididunt aliqua aute minim esse. Labore velit laboris deserunt laborum laborum commodo sunt consequat et.\r\n", "registered": "2014-06-04T14:49:44-12:00", "latitude": 33.012378, "longitude": 124.626321, "tags": [ "esse", "incididunt", "quis", "exercitation", "occaecat", "elit", "et" ], "friends": [ { "id": 0, "name": "Skinner Tyler" }, { "id": 1, "name": "Hodges Mooney" }, { "id": 2, "name": "Madelyn Garrison" } ], "greeting": "Hello, Debora Vasquez! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea214b5dc130101ba9ec", "index": 1150, "guid": "08b992f5-efba-4258-b136-53f36e7050b2", "isActive": false, "balance": "$1,116.80", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Lynn Best", "gender": "female", "company": "ISOTERNIA", "email": "lynnbest@isoternia.com", "phone": "+1 (952) 600-2972", "address": "645 Junius Street, Crayne, Pennsylvania, 7428", "about": "Eu ea eiusmod est laboris. Fugiat nisi ea eu et aliquip ad incididunt sint. Adipisicing labore aliqua nisi proident esse et culpa proident ipsum anim. Commodo duis cillum ullamco pariatur aliqua reprehenderit in. Fugiat non amet velit cillum. Consectetur sint aliquip in sunt ea consectetur amet cillum.\r\n", "registered": "2014-06-22T03:18:08-12:00", "latitude": 32.69174, "longitude": -92.816482, "tags": [ "eu", "laborum", "ut", "duis", "proident", "et", "esse" ], "friends": [ { "id": 0, "name": "Lori Mccormick" }, { "id": 1, "name": "Maxine Cross" }, { "id": 2, "name": "Mcmahon Albert" } ], "greeting": "Hello, Lynn Best! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21deb37c4a07995416", "index": 1151, "guid": "7d1d5e7e-c320-43ba-890d-8ae51bcee0d9", "isActive": true, "balance": "$2,834.89", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Rena Newton", "gender": "female", "company": "COMVEYER", "email": "renanewton@comveyer.com", "phone": "+1 (874) 479-2527", "address": "328 Brevoort Place, Escondida, Georgia, 9815", "about": "Ex ex elit aliquip non adipisicing. Dolore sint dolor esse nulla. Deserunt et voluptate do cillum mollit quis exercitation ex officia commodo mollit. Culpa excepteur eu aliquip id nulla veniam mollit ea.\r\n", "registered": "2014-06-23T13:17:57-12:00", "latitude": -82.76508, "longitude": 37.51285, "tags": [ "laborum", "veniam", "cupidatat", "dolore", "eu", "fugiat", "duis" ], "friends": [ { "id": 0, "name": "Aguirre Kemp" }, { "id": 1, "name": "April Nelson" }, { "id": 2, "name": "Montgomery Duke" } ], "greeting": "Hello, Rena Newton! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21d4a91046ff2de0ae", "index": 1152, "guid": "4ce3115f-5c91-4c56-ad82-5b2be88ec0ae", "isActive": false, "balance": "$2,032.21", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Alfreda Perez", "gender": "female", "company": "ONTALITY", "email": "alfredaperez@ontality.com", "phone": "+1 (965) 446-3743", "address": "103 Wythe Place, Lodoga, North Dakota, 4264", "about": "Tempor id nisi consectetur consequat qui. Magna do sunt cillum deserunt do dolore qui pariatur. Ad aute est tempor dolor qui consequat. Magna consectetur veniam pariatur dolor aliqua duis consectetur laborum pariatur in in sit aute ex. Lorem sit sunt aliquip sit deserunt.\r\n", "registered": "2014-07-16T05:56:17-12:00", "latitude": 67.376475, "longitude": 12.210681, "tags": [ "ea", "consequat", "Lorem", "ut", "aute", "aute", "commodo" ], "friends": [ { "id": 0, "name": "Riggs Hoffman" }, { "id": 1, "name": "Sykes Waller" }, { "id": 2, "name": "Ronda Bowman" } ], "greeting": "Hello, Alfreda Perez! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea215a6f29dd6a12af95", "index": 1153, "guid": "4e040db4-5077-4dee-b3ce-c81e7db7ce80", "isActive": true, "balance": "$2,127.30", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Marisa Morales", "gender": "female", "company": "BISBA", "email": "marisamorales@bisba.com", "phone": "+1 (933) 538-3240", "address": "383 Calyer Street, Titanic, Louisiana, 2204", "about": "Do voluptate id mollit ad pariatur exercitation Lorem. Incididunt dolor fugiat ea nulla eiusmod mollit cupidatat sunt duis cupidatat. Ex sit officia magna elit qui qui irure dolor nostrud irure sit aliqua reprehenderit. Dolore cillum est eiusmod proident.\r\n", "registered": "2014-02-28T08:02:02-13:00", "latitude": -50.934642, "longitude": 98.236159, "tags": [ "officia", "ut", "eiusmod", "officia", "sint", "tempor", "adipisicing" ], "friends": [ { "id": 0, "name": "Houston Mejia" }, { "id": 1, "name": "Paula Hurst" }, { "id": 2, "name": "Kane Kennedy" } ], "greeting": "Hello, Marisa Morales! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2151d5010146d3a5be", "index": 1154, "guid": "60498ef1-aff7-443b-859b-b73b03dc67e7", "isActive": false, "balance": "$1,493.14", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Rosemary Farrell", "gender": "female", "company": "TASMANIA", "email": "rosemaryfarrell@tasmania.com", "phone": "+1 (916) 574-2669", "address": "449 Abbey Court, Edneyville, Northern Mariana Islands, 7208", "about": "Ullamco anim voluptate enim ea amet aliquip. Sint non id ullamco veniam irure adipisicing non esse sint id do. Anim dolor eiusmod elit elit deserunt eu commodo irure consectetur Lorem ut. Aliquip dolor irure veniam labore magna cillum laborum labore adipisicing amet voluptate. Deserunt aute veniam ipsum Lorem occaecat pariatur sunt amet ullamco sit sit. Sint tempor veniam consequat eiusmod commodo laboris veniam.\r\n", "registered": "2014-03-22T12:48:50-13:00", "latitude": 59.007131, "longitude": 20.638628, "tags": [ "dolore", "occaecat", "cupidatat", "officia", "dolor", "irure", "duis" ], "friends": [ { "id": 0, "name": "Lott Doyle" }, { "id": 1, "name": "Osborne Hoover" }, { "id": 2, "name": "Katherine Dalton" } ], "greeting": "Hello, Rosemary Farrell! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea211ae0b7a40ece4974", "index": 1155, "guid": "8f2042bc-967f-43ac-ac0d-21e29f9d0969", "isActive": false, "balance": "$3,303.50", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Lakeisha Mcdowell", "gender": "female", "company": "EMTRAC", "email": "lakeishamcdowell@emtrac.com", "phone": "+1 (958) 506-2225", "address": "750 Stewart Street, Westphalia, Colorado, 2333", "about": "Sit sunt officia aute velit duis non labore elit duis nostrud tempor laborum. Velit consectetur veniam cillum id commodo. Sint labore culpa eiusmod nisi do commodo. Consectetur aliqua sunt eu ut nostrud qui quis excepteur nostrud in. Ipsum nulla aliqua quis ad quis consectetur exercitation dolore sint commodo. Quis eiusmod do irure incididunt anim ipsum aliqua anim velit in ullamco.\r\n", "registered": "2014-08-20T00:36:03-12:00", "latitude": 58.033284, "longitude": -175.79982, "tags": [ "dolor", "magna", "deserunt", "aute", "veniam", "cillum", "culpa" ], "friends": [ { "id": 0, "name": "Rice Marsh" }, { "id": 1, "name": "Jodi Juarez" }, { "id": 2, "name": "Dawson Dillard" } ], "greeting": "Hello, Lakeisha Mcdowell! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21e46fa17a479b0cf2", "index": 1156, "guid": "3c5ae545-3683-464f-8d97-5bed974958ac", "isActive": true, "balance": "$3,278.81", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Reilly Lee", "gender": "male", "company": "ENERFORCE", "email": "reillylee@enerforce.com", "phone": "+1 (839) 532-3833", "address": "704 Fay Court, Lacomb, Idaho, 7092", "about": "Cupidatat et laborum pariatur officia exercitation fugiat excepteur laborum deserunt qui. Eiusmod officia nulla dolore cillum officia Lorem ut adipisicing. Ut enim sunt sit nisi duis laborum occaecat esse. Sit cupidatat ad duis anim adipisicing exercitation laborum enim reprehenderit sunt nulla sit proident voluptate. Mollit aute ex sit laboris ea occaecat quis laborum nulla aliquip id esse ipsum dolor.\r\n", "registered": "2014-08-17T03:07:04-12:00", "latitude": 10.061756, "longitude": -154.360104, "tags": [ "ex", "quis", "labore", "enim", "proident", "veniam", "nisi" ], "friends": [ { "id": 0, "name": "Oneill Mayer" }, { "id": 1, "name": "Lena Beard" }, { "id": 2, "name": "Beulah Randolph" } ], "greeting": "Hello, Reilly Lee! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2197ca1038ed6d08bf", "index": 1157, "guid": "17b48b88-1237-4eec-98fb-bc8bbcf5904d", "isActive": false, "balance": "$2,200.73", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Calderon Rocha", "gender": "male", "company": "PUSHCART", "email": "calderonrocha@pushcart.com", "phone": "+1 (961) 447-2476", "address": "113 Morgan Avenue, Martinez, Marshall Islands, 1110", "about": "Sint dolore id consequat pariatur irure minim magna occaecat fugiat officia sunt adipisicing aliquip. Aute labore consectetur dolor est exercitation consectetur voluptate laborum laboris ad ad ea ea. Labore enim labore elit est.\r\n", "registered": "2014-07-28T06:15:55-12:00", "latitude": -76.269812, "longitude": -158.74207, "tags": [ "proident", "in", "elit", "irure", "sit", "culpa", "exercitation" ], "friends": [ { "id": 0, "name": "Lindsey Owen" }, { "id": 1, "name": "Gilmore Justice" }, { "id": 2, "name": "Lana Walters" } ], "greeting": "Hello, Calderon Rocha! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2172147130f5a0b50b", "index": 1158, "guid": "df4e28bf-97c9-46bb-ad26-b260d78d2f8a", "isActive": true, "balance": "$3,496.19", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Tara Moon", "gender": "female", "company": "ISOPLEX", "email": "taramoon@isoplex.com", "phone": "+1 (927) 540-2947", "address": "145 Vandam Street, Bluetown, New York, 5052", "about": "Aliqua cupidatat magna anim ullamco eu magna reprehenderit laboris consequat. Dolor sit irure enim exercitation consectetur incididunt officia deserunt fugiat sint. Amet ex cupidatat pariatur culpa ullamco non nisi esse. Adipisicing esse amet sint est et laboris occaecat reprehenderit nulla enim officia proident aliquip. Nostrud eiusmod fugiat ullamco mollit labore id amet eu minim pariatur laboris aliquip. Commodo ipsum elit culpa labore. Dolor ex aliquip mollit consectetur deserunt enim sunt nisi.\r\n", "registered": "2014-02-03T12:28:07-13:00", "latitude": 1.088614, "longitude": 161.791065, "tags": [ "reprehenderit", "proident", "proident", "labore", "do", "incididunt", "sint" ], "friends": [ { "id": 0, "name": "Casey Byers" }, { "id": 1, "name": "Boone Mcdaniel" }, { "id": 2, "name": "Angel Pearson" } ], "greeting": "Hello, Tara Moon! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21d61ce00580473bae", "index": 1159, "guid": "1253395f-7e9f-4459-8a69-32de31cc4054", "isActive": true, "balance": "$1,750.06", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Flossie Mcintosh", "gender": "female", "company": "GENESYNK", "email": "flossiemcintosh@genesynk.com", "phone": "+1 (853) 500-2307", "address": "109 Cox Place, Gallina, Guam, 7131", "about": "Do est labore minim ipsum veniam magna do ut aliquip sunt. Proident enim proident ut ea aliqua occaecat consectetur. Magna cillum aliqua velit consequat occaecat in sit ullamco excepteur tempor aliquip cupidatat. Labore ea amet anim nostrud reprehenderit reprehenderit aliqua cillum sint. Deserunt consequat occaecat laboris duis qui reprehenderit amet laboris nostrud dolor nostrud consequat quis ullamco.\r\n", "registered": "2014-05-04T13:23:53-12:00", "latitude": 47.284019, "longitude": 29.640917, "tags": [ "velit", "cupidatat", "nulla", "non", "non", "occaecat", "ut" ], "friends": [ { "id": 0, "name": "Hazel Robertson" }, { "id": 1, "name": "Tisha Sherman" }, { "id": 2, "name": "Deena Gillespie" } ], "greeting": "Hello, Flossie Mcintosh! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21b31c6a0c8108f217", "index": 1160, "guid": "e999e061-2b4b-4a89-bb34-297af82ff68e", "isActive": false, "balance": "$2,039.03", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Roxie Glass", "gender": "female", "company": "REALMO", "email": "roxieglass@realmo.com", "phone": "+1 (805) 553-2223", "address": "871 Verona Place, Bartley, Virgin Islands, 8368", "about": "Nisi tempor id amet eu et occaecat et. Eiusmod labore commodo velit officia deserunt. Quis consectetur et in nostrud eiusmod. Lorem cupidatat aliqua ipsum ullamco consequat ipsum do deserunt consectetur eu cupidatat. Commodo adipisicing magna consequat in.\r\n", "registered": "2014-09-15T11:10:03-12:00", "latitude": -54.641021, "longitude": 25.087455, "tags": [ "ut", "aliquip", "qui", "laborum", "dolore", "irure", "elit" ], "friends": [ { "id": 0, "name": "Campbell Wells" }, { "id": 1, "name": "Verna Love" }, { "id": 2, "name": "Gena Owens" } ], "greeting": "Hello, Roxie Glass! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea215e2d88629fc4b323", "index": 1161, "guid": "67abac19-6a4a-412c-97dc-f13ddb13c6ea", "isActive": true, "balance": "$2,890.37", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Moody Levy", "gender": "male", "company": "SHEPARD", "email": "moodylevy@shepard.com", "phone": "+1 (902) 560-3340", "address": "881 Falmouth Street, Noxen, Massachusetts, 1572", "about": "Pariatur ullamco ipsum veniam voluptate eu. Ipsum sunt eu nostrud Lorem velit velit veniam tempor ut. Adipisicing quis eu labore tempor magna laborum ea anim reprehenderit commodo fugiat ipsum consequat.\r\n", "registered": "2014-09-02T17:53:51-12:00", "latitude": -12.59186, "longitude": -54.173217, "tags": [ "sint", "sit", "non", "non", "ut", "esse", "elit" ], "friends": [ { "id": 0, "name": "Candice Dillon" }, { "id": 1, "name": "Walker Williamson" }, { "id": 2, "name": "Hayden Ware" } ], "greeting": "Hello, Moody Levy! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2141ff432c478ea1bc", "index": 1162, "guid": "dca6a0d6-6717-4274-a12a-4c9785d046cf", "isActive": false, "balance": "$1,160.38", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Effie Alston", "gender": "female", "company": "INSOURCE", "email": "effiealston@insource.com", "phone": "+1 (906) 511-2593", "address": "143 Stoddard Place, Loomis, Utah, 1930", "about": "Laborum nisi nulla quis officia. Pariatur et irure fugiat aliqua id minim cupidatat ut in culpa est. Magna non nisi nostrud labore et reprehenderit duis fugiat labore nisi culpa mollit est eiusmod.\r\n", "registered": "2014-05-02T18:45:17-12:00", "latitude": -6.338974, "longitude": -143.137466, "tags": [ "aliqua", "sit", "aliqua", "ad", "aliquip", "elit", "ut" ], "friends": [ { "id": 0, "name": "Brittany Nieves" }, { "id": 1, "name": "Sutton Deleon" }, { "id": 2, "name": "Benton Parrish" } ], "greeting": "Hello, Effie Alston! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea210b6dd2fcdee38326", "index": 1163, "guid": "5346e5de-6a57-47e4-8197-3bd38756f386", "isActive": false, "balance": "$3,657.68", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Harvey Farley", "gender": "male", "company": "PEARLESSA", "email": "harveyfarley@pearlessa.com", "phone": "+1 (930) 545-2092", "address": "826 Dover Street, Wawona, Montana, 536", "about": "Aliqua ut est quis non mollit deserunt. Eiusmod commodo elit ipsum nulla in culpa voluptate officia. Velit ex non qui occaecat proident ad veniam dolor sunt duis. Ullamco enim consectetur labore cillum dolor aliqua ea id. Sit pariatur ea dolor sint fugiat ipsum.\r\n", "registered": "2014-01-29T03:10:16-13:00", "latitude": 73.96094, "longitude": 71.36074, "tags": [ "mollit", "ea", "occaecat", "exercitation", "irure", "cupidatat", "velit" ], "friends": [ { "id": 0, "name": "Tamara Pugh" }, { "id": 1, "name": "Erika Barber" }, { "id": 2, "name": "Dawn Hayes" } ], "greeting": "Hello, Harvey Farley! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21141a00ae14339d87", "index": 1164, "guid": "8f3853d6-3563-46d4-971f-19fde8198715", "isActive": true, "balance": "$2,295.16", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Craig Pennington", "gender": "male", "company": "ARTWORLDS", "email": "craigpennington@artworlds.com", "phone": "+1 (845) 509-3914", "address": "865 Kent Avenue, Vandiver, Wisconsin, 624", "about": "Voluptate tempor non dolor est labore. Sunt sint cupidatat minim nisi exercitation ullamco. Duis adipisicing ut eu minim voluptate proident. Esse dolore laboris ullamco occaecat amet incididunt.\r\n", "registered": "2014-08-22T05:52:11-12:00", "latitude": 0.976908, "longitude": 81.821149, "tags": [ "nostrud", "ut", "incididunt", "laborum", "commodo", "nostrud", "ut" ], "friends": [ { "id": 0, "name": "Miller May" }, { "id": 1, "name": "Richards Hyde" }, { "id": 2, "name": "Odom Nunez" } ], "greeting": "Hello, Craig Pennington! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21906cce875e1d56a4", "index": 1165, "guid": "0e65e6c0-d6ef-4d34-be5f-7cb41ca81d90", "isActive": true, "balance": "$3,362.57", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Watson Hodge", "gender": "male", "company": "ZEPITOPE", "email": "watsonhodge@zepitope.com", "phone": "+1 (830) 505-2795", "address": "825 Waldane Court, Chelsea, Maine, 4104", "about": "Occaecat incididunt id fugiat dolore irure nisi ex irure eu elit deserunt exercitation. Qui ea occaecat proident esse aliquip eu irure ullamco excepteur proident aliqua. Esse nisi occaecat ad minim eiusmod dolore mollit exercitation consectetur fugiat. Ut sit ullamco aute proident cupidatat labore est aliquip labore qui. Ad id do aliquip ex non esse enim.\r\n", "registered": "2014-06-30T12:10:49-12:00", "latitude": -46.789985, "longitude": 52.674405, "tags": [ "cupidatat", "excepteur", "officia", "esse", "fugiat", "laboris", "velit" ], "friends": [ { "id": 0, "name": "Fischer Dominguez" }, { "id": 1, "name": "Potter Mitchell" }, { "id": 2, "name": "Alejandra Rogers" } ], "greeting": "Hello, Watson Hodge! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea216f6dc54ed60fb15c", "index": 1166, "guid": "0ab670ba-47e6-48fc-a7a9-de25b9e636a4", "isActive": false, "balance": "$3,796.41", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Lilly Odom", "gender": "female", "company": "CEDWARD", "email": "lillyodom@cedward.com", "phone": "+1 (880) 444-3366", "address": "295 Victor Road, Aguila, Virginia, 3219", "about": "Dolore ipsum non esse et veniam elit dolor. Esse laboris velit elit mollit enim quis laborum excepteur ullamco. Eu dolor amet ipsum consequat. Qui id eu elit ut do occaecat excepteur pariatur commodo. Veniam dolor cupidatat exercitation ullamco nisi dolore adipisicing consectetur. Anim nulla occaecat nulla do aliquip ad non ut sit.\r\n", "registered": "2014-03-27T04:57:09-13:00", "latitude": -38.789057, "longitude": 93.656152, "tags": [ "dolor", "sit", "occaecat", "ullamco", "esse", "sit", "consequat" ], "friends": [ { "id": 0, "name": "Annie Brock" }, { "id": 1, "name": "Blanca Dixon" }, { "id": 2, "name": "Tameka Barnes" } ], "greeting": "Hello, Lilly Odom! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2108654dae0ee25f48", "index": 1167, "guid": "7c84e780-13c1-4d72-9a28-5df98e99143b", "isActive": true, "balance": "$3,546.21", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Jerry Massey", "gender": "female", "company": "ZENSURE", "email": "jerrymassey@zensure.com", "phone": "+1 (830) 501-3185", "address": "425 Horace Court, Datil, Kentucky, 2498", "about": "Nisi veniam incididunt sint officia irure reprehenderit et eiusmod occaecat mollit culpa. Id velit ad mollit incididunt ad eiusmod fugiat nulla labore proident. Veniam quis eiusmod et eu et mollit quis consequat aliquip. Cupidatat culpa consectetur voluptate enim minim occaecat consectetur magna irure culpa. Labore sunt ad proident laborum nisi consectetur pariatur qui.\r\n", "registered": "2014-03-14T09:04:19-13:00", "latitude": 52.088536, "longitude": -111.064883, "tags": [ "culpa", "id", "culpa", "consectetur", "esse", "nisi", "qui" ], "friends": [ { "id": 0, "name": "Morgan Morton" }, { "id": 1, "name": "Crosby Landry" }, { "id": 2, "name": "Lynne Garcia" } ], "greeting": "Hello, Jerry Massey! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21d7f13d22a82c2959", "index": 1168, "guid": "b5f5ea6a-7007-4b85-a551-372dcfc60c1f", "isActive": false, "balance": "$1,581.29", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Deloris Bowers", "gender": "female", "company": "PHOLIO", "email": "delorisbowers@pholio.com", "phone": "+1 (934) 457-3352", "address": "433 Sands Street, Haring, Connecticut, 9463", "about": "Cillum minim esse ipsum reprehenderit est ea eiusmod laborum. Aliqua dolor cupidatat reprehenderit pariatur deserunt sit ad tempor aliqua dolore. Magna fugiat consectetur ullamco nostrud voluptate dolore. Qui culpa aute culpa dolor ad exercitation eu incididunt consequat. Ipsum ea sunt elit sunt consectetur excepteur ad ipsum in. Fugiat qui anim ipsum duis velit minim laborum elit sunt nulla sint deserunt cillum ex.\r\n", "registered": "2014-06-23T11:39:35-12:00", "latitude": -29.059322, "longitude": -19.110311, "tags": [ "labore", "excepteur", "adipisicing", "et", "cillum", "deserunt", "quis" ], "friends": [ { "id": 0, "name": "Kelly Whitaker" }, { "id": 1, "name": "Avila Gordon" }, { "id": 2, "name": "Sloan Downs" } ], "greeting": "Hello, Deloris Bowers! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21b831e7014609874a", "index": 1169, "guid": "632be21d-2368-4287-8f57-0aa63632304c", "isActive": true, "balance": "$2,688.77", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Hall Rose", "gender": "male", "company": "ZOSIS", "email": "hallrose@zosis.com", "phone": "+1 (984) 438-3856", "address": "502 Cropsey Avenue, Saticoy, Mississippi, 2662", "about": "Minim aute reprehenderit ad incididunt esse pariatur minim deserunt laborum excepteur. Voluptate officia enim elit tempor exercitation ad sunt. Veniam eiusmod veniam nisi aliqua fugiat occaecat. Sint proident ut cupidatat sunt incididunt exercitation aute aliquip. Sunt sit ut mollit consequat commodo nisi minim ullamco culpa ipsum. Exercitation non commodo ullamco ad excepteur dolore duis consectetur laborum consequat consectetur. Cupidatat ea sunt nisi nostrud consequat et minim consequat fugiat.\r\n", "registered": "2014-02-07T00:03:50-13:00", "latitude": 82.456696, "longitude": -140.509397, "tags": [ "nulla", "ex", "et", "non", "ea", "laborum", "sint" ], "friends": [ { "id": 0, "name": "Moran Blackwell" }, { "id": 1, "name": "Cooke Steele" }, { "id": 2, "name": "Sullivan Dorsey" } ], "greeting": "Hello, Hall Rose! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21b11dda703ad28526", "index": 1170, "guid": "b6ffc2bf-5cf3-4b05-8c34-57390e0826b0", "isActive": true, "balance": "$2,627.88", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Gamble Burch", "gender": "male", "company": "IDEGO", "email": "gambleburch@idego.com", "phone": "+1 (804) 412-2922", "address": "106 Varick Street, Greenbackville, Washington, 8211", "about": "Fugiat ut ex occaecat consectetur minim id eu dolore cillum officia aliqua id ea. Labore ad proident minim magna anim et enim elit incididunt commodo sint minim. Id officia adipisicing ea magna consequat do tempor aliqua enim fugiat commodo esse nostrud ad. Deserunt reprehenderit magna occaecat deserunt dolor ex laboris in nisi dolore. Est anim proident ea duis voluptate. Irure ex ea in consectetur aute et nisi do aliqua et fugiat anim Lorem.\r\n", "registered": "2014-06-05T05:22:04-12:00", "latitude": 12.543637, "longitude": 98.154026, "tags": [ "nisi", "exercitation", "cillum", "ipsum", "laboris", "ad", "do" ], "friends": [ { "id": 0, "name": "Chaney Miller" }, { "id": 1, "name": "Shanna Gross" }, { "id": 2, "name": "Jimenez Rowe" } ], "greeting": "Hello, Gamble Burch! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21735109b5c7de5f43", "index": 1171, "guid": "b08794f2-7a83-45a2-9fbc-a704f30025f4", "isActive": false, "balance": "$3,900.03", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Marla Fitzgerald", "gender": "female", "company": "ISOPOP", "email": "marlafitzgerald@isopop.com", "phone": "+1 (813) 447-2403", "address": "162 Tehama Street, Beechmont, Tennessee, 4131", "about": "Exercitation excepteur eiusmod ea ea consectetur consectetur eu amet est ullamco. Ex do proident proident consequat ex. Laborum amet voluptate reprehenderit qui labore esse. Sint ullamco duis ipsum aliquip laboris duis sit excepteur eiusmod adipisicing sit nisi ipsum aliquip. Adipisicing occaecat nisi eiusmod magna. Magna dolor do ad pariatur consectetur ex velit irure labore adipisicing velit incididunt. Consequat aliqua officia nisi esse irure veniam.\r\n", "registered": "2014-08-03T01:56:06-12:00", "latitude": 24.1503, "longitude": -128.154081, "tags": [ "nostrud", "non", "nisi", "voluptate", "ullamco", "duis", "est" ], "friends": [ { "id": 0, "name": "Robbie Burris" }, { "id": 1, "name": "Deanna Case" }, { "id": 2, "name": "Hood Hines" } ], "greeting": "Hello, Marla Fitzgerald! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea217cb2191c792f4346", "index": 1172, "guid": "c787897f-8fa1-4555-8cf7-8f174912e73d", "isActive": true, "balance": "$1,363.54", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Melendez Contreras", "gender": "male", "company": "VIAGRAND", "email": "melendezcontreras@viagrand.com", "phone": "+1 (819) 504-3234", "address": "949 Amersfort Place, Bendon, Alabama, 4226", "about": "Ad laboris esse non consequat minim sunt id adipisicing ipsum dolor do. Consequat nisi aliquip amet elit culpa anim minim enim magna nulla dolore ea elit pariatur. Nulla consequat excepteur officia laboris nostrud. Et duis adipisicing id dolore irure adipisicing cupidatat.\r\n", "registered": "2014-06-23T04:09:45-12:00", "latitude": 55.356744, "longitude": -144.828292, "tags": [ "dolor", "anim", "id", "excepteur", "eu", "cillum", "amet" ], "friends": [ { "id": 0, "name": "Tonya Chen" }, { "id": 1, "name": "Sharlene Bean" }, { "id": 2, "name": "Cervantes Burns" } ], "greeting": "Hello, Melendez Contreras! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21f323796b0b801676", "index": 1173, "guid": "3a853c5c-c5ee-42e6-89b0-5625c9816675", "isActive": false, "balance": "$2,730.42", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Claudette Bruce", "gender": "female", "company": "VORATAK", "email": "claudettebruce@voratak.com", "phone": "+1 (838) 514-2265", "address": "388 Hall Street, Davenport, Ohio, 394", "about": "Officia ullamco sunt minim officia sint cupidatat nisi ullamco nostrud exercitation elit quis. Adipisicing sint ea nulla nisi nulla do proident nisi aliquip officia et labore do velit. Et nisi labore veniam eu Lorem veniam velit ut proident nisi voluptate proident. Lorem do non fugiat officia esse. Exercitation est do aute veniam adipisicing irure et ut ea culpa magna irure nulla. Eu consectetur nulla officia dolor velit reprehenderit proident occaecat. Incididunt cupidatat duis consectetur qui officia sit commodo voluptate ea officia reprehenderit aliquip veniam excepteur.\r\n", "registered": "2014-01-30T13:59:45-13:00", "latitude": 36.271784, "longitude": 64.3818, "tags": [ "in", "do", "et", "aliqua", "proident", "fugiat", "dolore" ], "friends": [ { "id": 0, "name": "Kaitlin Gilliam" }, { "id": 1, "name": "Kimberley Weiss" }, { "id": 2, "name": "Wilkins Sharp" } ], "greeting": "Hello, Claudette Bruce! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2103bf482655ee2074", "index": 1174, "guid": "a5462750-4b99-445a-a738-9e34b9a8bdbe", "isActive": false, "balance": "$2,083.65", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Mcclure Rivera", "gender": "male", "company": "ONTAGENE", "email": "mcclurerivera@ontagene.com", "phone": "+1 (968) 411-2105", "address": "962 Shale Street, Emerald, Hawaii, 7982", "about": "Reprehenderit amet officia excepteur sit cupidatat ea id excepteur non laboris ad minim anim veniam. Aute do magna ad laboris dolore minim. In aute et commodo non excepteur laboris.\r\n", "registered": "2014-06-06T20:10:48-12:00", "latitude": 55.855219, "longitude": 117.539187, "tags": [ "nostrud", "sint", "quis", "eiusmod", "proident", "sunt", "id" ], "friends": [ { "id": 0, "name": "Brittney Hobbs" }, { "id": 1, "name": "Rollins Parker" }, { "id": 2, "name": "Ofelia West" } ], "greeting": "Hello, Mcclure Rivera! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2163191cef044cca49", "index": 1175, "guid": "a7d94328-32ca-43e8-9c16-3b911c598d3d", "isActive": true, "balance": "$2,336.67", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Le Peck", "gender": "male", "company": "LUNCHPOD", "email": "lepeck@lunchpod.com", "phone": "+1 (841) 467-3738", "address": "200 Montague Terrace, Brownlee, New Mexico, 6599", "about": "Est adipisicing adipisicing mollit elit ex aliqua qui laboris est tempor consequat. Qui amet ad proident dolor dolore pariatur ullamco incididunt minim elit. Eiusmod adipisicing cupidatat sit eiusmod. Esse ullamco ad esse duis aliquip cupidatat sint consectetur sit cupidatat. Aliquip sit culpa non adipisicing. Fugiat occaecat ex velit mollit tempor duis proident veniam.\r\n", "registered": "2014-01-19T01:31:09-13:00", "latitude": -12.581991, "longitude": -98.318182, "tags": [ "velit", "veniam", "id", "ipsum", "consectetur", "ad", "ex" ], "friends": [ { "id": 0, "name": "Conley Hogan" }, { "id": 1, "name": "Katelyn Coffey" }, { "id": 2, "name": "Alexandria Snider" } ], "greeting": "Hello, Le Peck! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2190d908f00c75e48e", "index": 1176, "guid": "2ef7bf66-1b13-4fed-959e-67cb0089f2f8", "isActive": false, "balance": "$1,460.11", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Macias Flores", "gender": "male", "company": "COREPAN", "email": "maciasflores@corepan.com", "phone": "+1 (835) 467-3468", "address": "109 Prospect Place, Sattley, Maryland, 823", "about": "Culpa sunt esse velit pariatur id officia labore laborum elit irure. Consectetur dolor reprehenderit velit aliquip exercitation aliqua proident pariatur aute qui sit est aliquip id. Duis velit magna cupidatat anim labore dolor ullamco sit cupidatat elit consequat. Nisi tempor amet adipisicing minim consectetur ex mollit fugiat anim non aliqua.\r\n", "registered": "2014-02-23T09:07:42-13:00", "latitude": -89.055079, "longitude": 169.712335, "tags": [ "officia", "mollit", "enim", "mollit", "irure", "cupidatat", "dolore" ], "friends": [ { "id": 0, "name": "Monique Harrell" }, { "id": 1, "name": "Church Henson" }, { "id": 2, "name": "Bennett Booth" } ], "greeting": "Hello, Macias Flores! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2115f088a0bdeb2d85", "index": 1177, "guid": "18bdbbf9-9b66-4900-9936-5bda7999666f", "isActive": true, "balance": "$3,240.80", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Andrea Willis", "gender": "female", "company": "JOVIOLD", "email": "andreawillis@joviold.com", "phone": "+1 (832) 435-2262", "address": "395 Anchorage Place, Takilma, Alaska, 2558", "about": "Sint est consectetur quis consequat reprehenderit deserunt proident ipsum dolor Lorem. Elit aute esse labore incididunt do duis laboris fugiat. Consequat elit eiusmod nostrud proident cillum magna dolor dolore nostrud velit officia. Sint dolore anim veniam dolor. Aute irure non cillum cillum cupidatat ullamco consequat laborum. Enim excepteur ipsum reprehenderit qui culpa non laborum adipisicing nulla id. Lorem cillum aliqua est duis pariatur.\r\n", "registered": "2014-03-20T01:11:32-13:00", "latitude": 64.286116, "longitude": -16.498252, "tags": [ "consectetur", "ad", "cillum", "magna", "consequat", "occaecat", "qui" ], "friends": [ { "id": 0, "name": "Fowler Carpenter" }, { "id": 1, "name": "Castaneda Pena" }, { "id": 2, "name": "Pickett Washington" } ], "greeting": "Hello, Andrea Willis! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21e0185588ae334b15", "index": 1178, "guid": "64839673-9598-4a6c-ab84-833f330fb7bb", "isActive": false, "balance": "$2,387.23", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Owen Potter", "gender": "male", "company": "EBIDCO", "email": "owenpotter@ebidco.com", "phone": "+1 (955) 595-3898", "address": "671 Essex Street, Walker, Arizona, 8000", "about": "Exercitation magna ipsum ullamco in excepteur qui do laboris culpa do magna. Sunt dolore voluptate labore adipisicing sit quis sunt anim eiusmod elit qui. Do id quis eu et magna. Magna sint exercitation culpa sit aliquip consectetur ut nulla. Commodo occaecat magna ipsum minim adipisicing eiusmod est mollit. Voluptate id occaecat voluptate consequat nisi cillum Lorem eu veniam aute est magna nostrud dolor.\r\n", "registered": "2014-03-20T01:51:05-13:00", "latitude": 28.753379, "longitude": -68.392861, "tags": [ "aliqua", "aliquip", "dolor", "in", "exercitation", "sunt", "velit" ], "friends": [ { "id": 0, "name": "Christa Gates" }, { "id": 1, "name": "Mcknight Hopkins" }, { "id": 2, "name": "Burton Gilbert" } ], "greeting": "Hello, Owen Potter! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21fa1a11b39136c5ad", "index": 1179, "guid": "4d315ffb-0a99-427f-b5d1-83d438f910c3", "isActive": false, "balance": "$1,122.63", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Little Walls", "gender": "male", "company": "RODEMCO", "email": "littlewalls@rodemco.com", "phone": "+1 (989) 432-3692", "address": "369 Fiske Place, Bellamy, Federated States Of Micronesia, 8764", "about": "Quis enim aliquip est dolore magna sit do. Lorem consequat voluptate duis mollit magna exercitation. Consequat sint eiusmod excepteur Lorem elit eu occaecat tempor commodo ullamco. Lorem dolore cillum laboris adipisicing pariatur eu nulla sunt nisi occaecat reprehenderit.\r\n", "registered": "2014-07-29T16:55:12-12:00", "latitude": -5.932282, "longitude": -14.186982, "tags": [ "ex", "officia", "minim", "commodo", "ex", "sunt", "ea" ], "friends": [ { "id": 0, "name": "Alicia Franklin" }, { "id": 1, "name": "Mason Reed" }, { "id": 2, "name": "Bowen Odonnell" } ], "greeting": "Hello, Little Walls! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21fbcd065788c6b0e1", "index": 1180, "guid": "3a74db32-5e90-43d8-967b-4916635e4264", "isActive": true, "balance": "$3,485.67", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Mary Chang", "gender": "female", "company": "OVIUM", "email": "marychang@ovium.com", "phone": "+1 (947) 400-2370", "address": "809 Sunnyside Court, Freeburn, Oklahoma, 7298", "about": "Occaecat sunt veniam excepteur non in ea commodo laboris. Duis magna laborum magna enim ut fugiat consequat nulla incididunt. Do Lorem fugiat qui officia officia. Aliquip et anim anim laborum ad id pariatur. Ex sint nisi dolor quis laborum. Ea anim culpa amet qui deserunt reprehenderit magna consectetur laboris.\r\n", "registered": "2014-06-15T14:46:11-12:00", "latitude": -56.51496, "longitude": -66.441705, "tags": [ "sunt", "culpa", "consectetur", "amet", "Lorem", "ullamco", "et" ], "friends": [ { "id": 0, "name": "Rosario Snyder" }, { "id": 1, "name": "Cochran Elliott" }, { "id": 2, "name": "Tammie Neal" } ], "greeting": "Hello, Mary Chang! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21988a8a2b26c8477f", "index": 1181, "guid": "9f8a1dd7-6fdc-4e1e-9314-6764febe513e", "isActive": false, "balance": "$3,073.65", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Rene Boone", "gender": "female", "company": "HALAP", "email": "reneboone@halap.com", "phone": "+1 (870) 572-2269", "address": "769 Louisiana Avenue, Canterwood, Michigan, 3795", "about": "Ex exercitation nulla ea dolor dolore non adipisicing elit laborum laboris cillum. Exercitation esse Lorem quis nostrud deserunt ut officia qui. Quis non consectetur eu nisi nostrud do.\r\n", "registered": "2014-03-11T16:06:53-13:00", "latitude": 27.86715, "longitude": 7.169049, "tags": [ "ipsum", "dolor", "nulla", "fugiat", "nostrud", "culpa", "nostrud" ], "friends": [ { "id": 0, "name": "Alston Valencia" }, { "id": 1, "name": "Natalia Robinson" }, { "id": 2, "name": "Greer Macdonald" } ], "greeting": "Hello, Rene Boone! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2132823cdd44c3b66f", "index": 1182, "guid": "f03b09e2-c0eb-418d-84b6-4dd24059dd26", "isActive": false, "balance": "$2,393.64", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Douglas Santiago", "gender": "male", "company": "EXOSIS", "email": "douglassantiago@exosis.com", "phone": "+1 (912) 518-2819", "address": "211 Fountain Avenue, Waiohinu, Kansas, 6102", "about": "Sint consequat voluptate in mollit non sint ad laboris velit. Aliquip proident velit eiusmod veniam velit ex dolor commodo est incididunt ullamco sint ullamco. Commodo aliquip consequat laboris incididunt aliqua sunt do ut mollit in cillum reprehenderit do.\r\n", "registered": "2014-08-23T08:01:56-12:00", "latitude": -12.480237, "longitude": 97.336963, "tags": [ "aute", "velit", "deserunt", "culpa", "cillum", "veniam", "duis" ], "friends": [ { "id": 0, "name": "Cecilia Bartlett" }, { "id": 1, "name": "Jacqueline Weeks" }, { "id": 2, "name": "Marcy Lott" } ], "greeting": "Hello, Douglas Santiago! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2114f3f6d569cf0468", "index": 1183, "guid": "87a65f54-a6ae-44f3-a0c7-62fb315dbfc6", "isActive": false, "balance": "$2,301.74", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Moses Oconnor", "gender": "male", "company": "HYDROCOM", "email": "mosesoconnor@hydrocom.com", "phone": "+1 (904) 495-2524", "address": "349 Catherine Street, Tampico, South Dakota, 3281", "about": "Aliqua culpa cillum do dolor Lorem esse deserunt. Fugiat occaecat reprehenderit quis quis cillum ullamco eu mollit officia et ex est. Proident cupidatat dolor duis adipisicing veniam quis id anim laborum cupidatat dolore irure esse est.\r\n", "registered": "2014-04-17T06:31:01-12:00", "latitude": 36.749589, "longitude": -81.106402, "tags": [ "sint", "culpa", "aute", "qui", "eiusmod", "sit", "ullamco" ], "friends": [ { "id": 0, "name": "Heidi Dejesus" }, { "id": 1, "name": "Brianna Cline" }, { "id": 2, "name": "Shelby Larson" } ], "greeting": "Hello, Moses Oconnor! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21a2c58316fb3b0bbf", "index": 1184, "guid": "c42b40b1-e62d-413d-a866-0c520a5ae281", "isActive": true, "balance": "$1,075.81", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Jenkins Velazquez", "gender": "male", "company": "AFFLUEX", "email": "jenkinsvelazquez@affluex.com", "phone": "+1 (996) 408-2619", "address": "308 Irwin Street, Lupton, West Virginia, 5592", "about": "Elit nostrud Lorem tempor officia consectetur eu elit nostrud duis. Ullamco dolor culpa reprehenderit nostrud deserunt amet sit esse eiusmod minim dolore quis elit. Ad incididunt sint qui non amet id incididunt occaecat adipisicing esse ut. Dolore consectetur deserunt aute culpa excepteur laboris in enim aliquip aliqua pariatur consequat consectetur officia. Nulla sunt nulla nulla commodo consequat ipsum do duis quis exercitation irure est irure aliqua. Exercitation commodo elit enim commodo Lorem do dolor do magna. Et id aliquip qui ullamco sit officia aute sit ipsum eu ea.\r\n", "registered": "2014-06-04T19:33:26-12:00", "latitude": -32.484181, "longitude": 84.234614, "tags": [ "amet", "aliquip", "irure", "magna", "adipisicing", "ullamco", "aliqua" ], "friends": [ { "id": 0, "name": "Cathryn Newman" }, { "id": 1, "name": "Merritt Dyer" }, { "id": 2, "name": "Harper Blair" } ], "greeting": "Hello, Jenkins Velazquez! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea211b9a4bf5eb2e6b7c", "index": 1185, "guid": "dd0d2339-f10d-41ad-a786-492d85a33df3", "isActive": true, "balance": "$2,393.59", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Candace Keller", "gender": "female", "company": "GEOFORMA", "email": "candacekeller@geoforma.com", "phone": "+1 (961) 447-2602", "address": "542 Chester Avenue, Ilchester, Texas, 102", "about": "Ea duis anim voluptate quis nostrud reprehenderit. Aute excepteur esse irure minim. Minim do irure nulla ad consequat exercitation. Dolor eu anim aliquip nulla sint do exercitation sit cillum sit officia ex. Minim labore ea excepteur incididunt consectetur sit aute et sit. Labore sint irure sit deserunt enim. Aliquip do elit consectetur in esse tempor sit amet qui nostrud elit magna nisi Lorem.\r\n", "registered": "2014-08-01T17:12:07-12:00", "latitude": 12.727333, "longitude": 5.107518, "tags": [ "nisi", "consectetur", "sunt", "cillum", "aliquip", "ipsum", "tempor" ], "friends": [ { "id": 0, "name": "Boyer Hampton" }, { "id": 1, "name": "Daisy Hernandez" }, { "id": 2, "name": "Ferguson Nguyen" } ], "greeting": "Hello, Candace Keller! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21c21bf2c6cab5de82", "index": 1186, "guid": "14a2b862-f6da-41c2-b9bb-7a0cfec05238", "isActive": false, "balance": "$1,398.02", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Compton Ingram", "gender": "male", "company": "REMOTION", "email": "comptoningram@remotion.com", "phone": "+1 (868) 564-2587", "address": "862 Crescent Street, Allentown, Oregon, 2450", "about": "Dolore esse id aute veniam sunt fugiat veniam labore eiusmod fugiat fugiat eu sunt. Amet cupidatat labore occaecat consequat ex ipsum. Et aute et et dolor. Ullamco veniam incididunt et officia ut. Labore irure deserunt Lorem dolor dolor duis.\r\n", "registered": "2014-05-30T17:47:28-12:00", "latitude": -49.469144, "longitude": -6.495448, "tags": [ "nostrud", "ullamco", "qui", "non", "est", "duis", "aliqua" ], "friends": [ { "id": 0, "name": "Foreman Maldonado" }, { "id": 1, "name": "Kidd Guthrie" }, { "id": 2, "name": "Stein Fletcher" } ], "greeting": "Hello, Compton Ingram! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2103cdd2c5d3fd5b78", "index": 1187, "guid": "fc079b50-d982-4c59-861b-b661f6243baa", "isActive": false, "balance": "$2,920.97", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Mayra Jarvis", "gender": "female", "company": "SUPREMIA", "email": "mayrajarvis@supremia.com", "phone": "+1 (836) 526-2063", "address": "865 Rugby Road, Grahamtown, Nevada, 4629", "about": "Veniam laborum tempor ex veniam voluptate enim velit laboris. Adipisicing mollit et veniam nisi exercitation duis commodo eu. Ipsum aute do eiusmod ut laborum ipsum excepteur deserunt ex.\r\n", "registered": "2014-01-28T07:18:22-13:00", "latitude": 39.637496, "longitude": -95.162678, "tags": [ "esse", "duis", "deserunt", "cupidatat", "fugiat", "id", "deserunt" ], "friends": [ { "id": 0, "name": "Mcdowell Hinton" }, { "id": 1, "name": "Marisol Battle" }, { "id": 2, "name": "Linda Allen" } ], "greeting": "Hello, Mayra Jarvis! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea219a9fb9961c790c98", "index": 1188, "guid": "e65d3136-bd3a-48f1-86d8-62f821fa073c", "isActive": true, "balance": "$2,935.74", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Joy Barrett", "gender": "female", "company": "NEWCUBE", "email": "joybarrett@newcube.com", "phone": "+1 (965) 562-3749", "address": "243 Hewes Street, Itmann, Minnesota, 5820", "about": "Excepteur do aute non veniam consectetur ullamco minim occaecat. Occaecat duis sint qui adipisicing pariatur ut irure excepteur amet. Culpa sit amet consectetur Lorem cillum labore officia labore mollit laborum pariatur. Cupidatat incididunt exercitation adipisicing irure exercitation ipsum ullamco ea. Elit exercitation labore ex ad duis veniam ipsum. Esse tempor tempor voluptate ullamco incididunt proident. Culpa adipisicing aliqua velit veniam incididunt duis do id aliqua eu do.\r\n", "registered": "2014-03-29T11:02:30-13:00", "latitude": -66.154847, "longitude": 22.194532, "tags": [ "voluptate", "esse", "excepteur", "aliquip", "id", "commodo", "minim" ], "friends": [ { "id": 0, "name": "Collins Rojas" }, { "id": 1, "name": "Foley Dotson" }, { "id": 2, "name": "Dale Spence" } ], "greeting": "Hello, Joy Barrett! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21f2f91db3ec2ba2c5", "index": 1189, "guid": "dab1abfd-3ef1-4376-ba12-62a5af42c4b6", "isActive": false, "balance": "$3,532.71", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Melissa Burke", "gender": "female", "company": "ZENSOR", "email": "melissaburke@zensor.com", "phone": "+1 (920) 424-2959", "address": "815 Beacon Court, Topanga, Missouri, 9534", "about": "Dolore et in amet ex proident. Officia anim quis do culpa fugiat incididunt quis consequat Lorem ullamco mollit irure. Esse consequat ipsum qui incididunt pariatur. Ipsum sit Lorem nostrud excepteur esse irure aute labore. Sunt id nisi occaecat adipisicing anim do dolor. Aute nisi laborum dolore amet eu velit magna voluptate voluptate nostrud. Fugiat sit nostrud ad consequat elit do nisi occaecat deserunt.\r\n", "registered": "2014-08-23T02:29:08-12:00", "latitude": 5.547462, "longitude": 68.788442, "tags": [ "amet", "anim", "proident", "tempor", "sint", "tempor", "enim" ], "friends": [ { "id": 0, "name": "Hope Rosario" }, { "id": 1, "name": "Rae Stephenson" }, { "id": 2, "name": "Carey Frederick" } ], "greeting": "Hello, Melissa Burke! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21ea1fa3facb8b0744", "index": 1190, "guid": "3f00ce33-e8f4-4674-b5db-fc70e54ad093", "isActive": false, "balance": "$3,879.29", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Kelli Kirkland", "gender": "female", "company": "SYBIXTEX", "email": "kellikirkland@sybixtex.com", "phone": "+1 (920) 596-3765", "address": "232 Porter Avenue, Ribera, Rhode Island, 2123", "about": "Veniam ut ea laborum elit quis reprehenderit adipisicing. Pariatur proident et minim sit adipisicing ex nulla esse nostrud. Commodo veniam enim est tempor proident dolore.\r\n", "registered": "2014-01-12T09:33:05-13:00", "latitude": 62.461868, "longitude": -91.731687, "tags": [ "est", "adipisicing", "aliqua", "Lorem", "minim", "consectetur", "magna" ], "friends": [ { "id": 0, "name": "Hansen Wall" }, { "id": 1, "name": "Georgette Parsons" }, { "id": 2, "name": "Mullen Curtis" } ], "greeting": "Hello, Kelli Kirkland! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21687073a577cdd845", "index": 1191, "guid": "2b59993a-1883-4fa0-82e6-1fe533ab4d63", "isActive": false, "balance": "$2,966.83", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Celina Diaz", "gender": "female", "company": "FURNITECH", "email": "celinadiaz@furnitech.com", "phone": "+1 (910) 512-3224", "address": "906 Meserole Avenue, Coloma, Florida, 6998", "about": "Culpa ullamco dolore proident enim consectetur deserunt est ipsum fugiat consectetur cupidatat dolore excepteur reprehenderit. Commodo Lorem ut adipisicing consequat ut cupidatat aliquip culpa non anim proident magna. Eu dolor aute ipsum elit.\r\n", "registered": "2014-06-16T19:45:24-12:00", "latitude": -53.776949, "longitude": -70.531532, "tags": [ "exercitation", "cupidatat", "nulla", "do", "fugiat", "ad", "aliquip" ], "friends": [ { "id": 0, "name": "Fanny Henderson" }, { "id": 1, "name": "Mable Fisher" }, { "id": 2, "name": "Amparo Forbes" } ], "greeting": "Hello, Celina Diaz! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea211a9f62432456f8d3", "index": 1192, "guid": "85825601-f40d-446b-930b-233b5bb7e15a", "isActive": false, "balance": "$2,919.31", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Yvette Bass", "gender": "female", "company": "DEVILTOE", "email": "yvettebass@deviltoe.com", "phone": "+1 (813) 571-3563", "address": "558 Knapp Street, Kempton, North Carolina, 7733", "about": "Cupidatat et sint velit in pariatur laborum proident veniam proident aliqua officia. Proident tempor proident laboris non irure proident pariatur dolor laboris magna. Incididunt nostrud nostrud do id aliquip incididunt Lorem ex laborum do velit aute nisi. Lorem est labore nisi consectetur ut reprehenderit ullamco esse excepteur adipisicing ad consequat. Occaecat ipsum et excepteur irure quis laborum quis dolore velit culpa occaecat officia.\r\n", "registered": "2014-09-04T07:15:55-12:00", "latitude": 30.218526, "longitude": -43.72362, "tags": [ "dolor", "dolor", "incididunt", "qui", "pariatur", "qui", "amet" ], "friends": [ { "id": 0, "name": "Claudia Rowland" }, { "id": 1, "name": "Dillon Horn" }, { "id": 2, "name": "Christian Yates" } ], "greeting": "Hello, Yvette Bass! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea216b947c00f074bd03", "index": 1193, "guid": "fa112368-e3b2-489e-bd0a-331711b1021e", "isActive": true, "balance": "$3,318.95", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Cleveland Spears", "gender": "male", "company": "PYRAMIS", "email": "clevelandspears@pyramis.com", "phone": "+1 (958) 410-2648", "address": "474 Christopher Avenue, Hilltop, New Hampshire, 3447", "about": "Officia commodo irure consectetur cupidatat qui minim amet eiusmod in velit. Quis aliquip dolore duis eiusmod nisi. Dolor ullamco ad et culpa sunt est occaecat ad dolore eu est. Tempor et minim amet nulla labore deserunt pariatur enim et. Nostrud esse adipisicing commodo excepteur reprehenderit cupidatat consequat laborum incididunt ipsum occaecat voluptate.\r\n", "registered": "2014-02-03T13:02:42-13:00", "latitude": 87.47569, "longitude": 6.209836, "tags": [ "reprehenderit", "exercitation", "aute", "laborum", "anim", "commodo", "mollit" ], "friends": [ { "id": 0, "name": "Tammi Hester" }, { "id": 1, "name": "Fitzgerald Fernandez" }, { "id": 2, "name": "Mindy Sweeney" } ], "greeting": "Hello, Cleveland Spears! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21fae5df1a76307a67", "index": 1194, "guid": "38a05480-5ab2-4203-918b-2dd2595fd153", "isActive": false, "balance": "$1,090.42", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Silvia Abbott", "gender": "female", "company": "CYTREK", "email": "silviaabbott@cytrek.com", "phone": "+1 (820) 501-2682", "address": "322 Townsend Street, Foscoe, Arkansas, 7837", "about": "Reprehenderit consectetur eu do excepteur esse ullamco aliquip laborum elit excepteur. Est commodo consequat commodo pariatur pariatur sunt tempor duis commodo adipisicing sit ipsum. Veniam labore reprehenderit dolore incididunt laborum in cillum. Pariatur cillum ea do cillum fugiat cillum laboris aliqua. Elit Lorem non officia sit elit id voluptate do minim ea ea quis id. Consequat esse culpa minim et aliquip magna et. Cillum exercitation aliqua enim nisi et Lorem consequat commodo sit velit enim ea non.\r\n", "registered": "2014-07-13T01:14:04-12:00", "latitude": -86.594103, "longitude": 159.922236, "tags": [ "Lorem", "Lorem", "exercitation", "duis", "dolore", "voluptate", "nulla" ], "friends": [ { "id": 0, "name": "Jeannine Kane" }, { "id": 1, "name": "Frieda Clements" }, { "id": 2, "name": "Ila Romero" } ], "greeting": "Hello, Silvia Abbott! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21398dc30b11f789bc", "index": 1195, "guid": "2487f70c-fe19-4723-9809-323c46a4213f", "isActive": true, "balance": "$2,581.23", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Graham Moore", "gender": "male", "company": "EPLOSION", "email": "grahammoore@eplosion.com", "phone": "+1 (969) 476-2508", "address": "233 Rutland Road, Century, Iowa, 9790", "about": "Consectetur labore nisi magna quis. Velit do culpa laborum incididunt cillum. Minim labore excepteur ex elit ad esse cillum Lorem nostrud. Nostrud irure dolor dolor occaecat dolore ut aliquip deserunt. Pariatur id anim proident cillum do aliqua adipisicing magna ad sit. Sunt ex sint irure culpa id.\r\n", "registered": "2014-08-11T22:47:26-12:00", "latitude": -38.883597, "longitude": -127.471053, "tags": [ "culpa", "anim", "ex", "dolore", "velit", "sint", "pariatur" ], "friends": [ { "id": 0, "name": "Marks Adams" }, { "id": 1, "name": "Freeman Mcfadden" }, { "id": 2, "name": "Hart Clarke" } ], "greeting": "Hello, Graham Moore! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea213a25914d775ef709", "index": 1196, "guid": "3c610e78-1bb2-4207-8fbe-0fc5bc3e3a6e", "isActive": true, "balance": "$3,874.67", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Cora Church", "gender": "female", "company": "EXOZENT", "email": "corachurch@exozent.com", "phone": "+1 (818) 549-2762", "address": "746 Kenmore Terrace, Finderne, Nebraska, 7708", "about": "Irure ad do ex ad irure proident aute ut ex aliquip aute eu reprehenderit. Consectetur irure dolore culpa elit in excepteur ipsum amet velit et dolor mollit irure et. Consectetur enim dolore id do dolor occaecat aliquip labore mollit irure eu. Fugiat fugiat quis consequat laboris consequat occaecat mollit duis excepteur elit fugiat dolor magna deserunt. Magna sunt ipsum amet amet consectetur tempor dolor incididunt ipsum deserunt aliqua elit ex. Ea ea nulla officia deserunt fugiat mollit irure cupidatat dolore et deserunt esse. Mollit ullamco magna mollit do ad ut minim sunt mollit consequat mollit pariatur ullamco.\r\n", "registered": "2014-05-11T05:48:42-12:00", "latitude": 7.522621, "longitude": -159.684579, "tags": [ "do", "adipisicing", "aliqua", "minim", "ex", "elit", "incididunt" ], "friends": [ { "id": 0, "name": "Kay David" }, { "id": 1, "name": "Summer Mcdonald" }, { "id": 2, "name": "Lacey Lindsay" } ], "greeting": "Hello, Cora Church! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21d4c574f5aa179e29", "index": 1197, "guid": "f1ac8459-a017-4c7a-b561-99f5d4476646", "isActive": true, "balance": "$2,739.65", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Carr Key", "gender": "male", "company": "LIMOZEN", "email": "carrkey@limozen.com", "phone": "+1 (877) 434-2690", "address": "494 Canarsie Road, Carlton, District Of Columbia, 9473", "about": "Ut aliquip cupidatat cillum reprehenderit aute veniam tempor tempor amet nisi. Dolor dolore laborum eu ad ea. Sint laboris labore id aliquip ex consectetur velit exercitation occaecat non qui enim elit aute.\r\n", "registered": "2014-08-04T13:21:54-12:00", "latitude": 68.731407, "longitude": -174.840265, "tags": [ "aliquip", "est", "laborum", "mollit", "fugiat", "pariatur", "laboris" ], "friends": [ { "id": 0, "name": "Jill Murray" }, { "id": 1, "name": "Marva Phelps" }, { "id": 2, "name": "Olsen Wolf" } ], "greeting": "Hello, Carr Key! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea215f8ab9bca01dad7f", "index": 1198, "guid": "88223468-229e-4063-80ae-251adc412403", "isActive": true, "balance": "$3,022.75", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Francis Hooper", "gender": "female", "company": "GRUPOLI", "email": "francishooper@grupoli.com", "phone": "+1 (858) 478-3316", "address": "431 Elm Place, Harrison, New Jersey, 8108", "about": "Qui nisi anim in eiusmod proident aliqua proident Lorem esse ea ad pariatur voluptate. Cupidatat culpa ea sunt proident pariatur exercitation aliqua velit. Mollit esse ex pariatur Lorem dolor excepteur ipsum nisi nulla tempor. Quis ad et fugiat proident occaecat nisi cupidatat ea occaecat mollit labore ex amet. Sint commodo laborum ad aliquip cillum deserunt labore commodo aliquip magna aute enim. Excepteur qui magna consequat ipsum mollit eu proident ea duis exercitation exercitation dolor. Adipisicing anim cillum laboris cupidatat duis irure exercitation mollit qui ex adipisicing non.\r\n", "registered": "2014-01-01T02:49:08-13:00", "latitude": -89.874927, "longitude": 16.993015, "tags": [ "sunt", "velit", "aliqua", "fugiat", "laborum", "laboris", "amet" ], "friends": [ { "id": 0, "name": "Leticia Mills" }, { "id": 1, "name": "Herman Middleton" }, { "id": 2, "name": "Oconnor Hawkins" } ], "greeting": "Hello, Francis Hooper! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea214560c6dce7369782", "index": 1199, "guid": "dcf79ced-5cbe-43d2-9826-27eb4f4d5709", "isActive": false, "balance": "$2,027.04", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Barry Norris", "gender": "male", "company": "GEEKMOSIS", "email": "barrynorris@geekmosis.com", "phone": "+1 (884) 498-2597", "address": "686 Veranda Place, Caroleen, Palau, 6057", "about": "Excepteur labore Lorem laborum pariatur laboris laborum duis irure tempor. Veniam non elit consectetur in cillum irure nostrud excepteur quis. Elit officia ea aliquip culpa in sunt dolor officia ut proident dolor occaecat. Ea ipsum excepteur pariatur eiusmod id occaecat.\r\n", "registered": "2014-01-03T11:44:03-13:00", "latitude": -67.168366, "longitude": 31.132949, "tags": [ "magna", "fugiat", "ea", "exercitation", "quis", "aute", "in" ], "friends": [ { "id": 0, "name": "Carrillo Rich" }, { "id": 1, "name": "Leona Cervantes" }, { "id": 2, "name": "Hoffman Campbell" } ], "greeting": "Hello, Barry Norris! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21c5b2871e92e21900", "index": 1200, "guid": "57c99bf8-f0df-44a5-b7a1-df0942859c59", "isActive": false, "balance": "$2,460.64", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Juliette Mcfarland", "gender": "female", "company": "AMRIL", "email": "juliettemcfarland@amril.com", "phone": "+1 (893) 462-3943", "address": "302 Cobek Court, Bayview, Puerto Rico, 8943", "about": "Laborum ut incididunt ea ad sunt pariatur excepteur voluptate qui occaecat aliqua sint laboris. Enim ad aliqua est non Lorem. Sunt esse laboris sint occaecat mollit nisi. Excepteur sint consectetur reprehenderit do. Id minim incididunt id cillum sunt ullamco consequat eu velit mollit ullamco. Sunt id sunt irure consectetur dolore eu aliquip cupidatat ea aute. Mollit id pariatur elit velit ipsum tempor.\r\n", "registered": "2014-06-24T20:14:49-12:00", "latitude": 68.417705, "longitude": -113.149634, "tags": [ "dolor", "excepteur", "non", "adipisicing", "sunt", "dolore", "sit" ], "friends": [ { "id": 0, "name": "Marcia Beach" }, { "id": 1, "name": "Charlotte Vaughn" }, { "id": 2, "name": "Araceli Ashley" } ], "greeting": "Hello, Juliette Mcfarland! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea213f917795e8af71d9", "index": 1201, "guid": "305dc379-9c47-43d7-b2f1-facb1b987aae", "isActive": true, "balance": "$1,313.20", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Rebecca Chandler", "gender": "female", "company": "MAGNEATO", "email": "rebeccachandler@magneato.com", "phone": "+1 (947) 476-3382", "address": "826 Miller Avenue, Gardiner, California, 1466", "about": "Aliquip sunt mollit fugiat laborum elit velit deserunt voluptate voluptate dolor. Dolor laboris laborum duis consequat officia ipsum anim consectetur ea do sit dolor. Culpa aliqua elit pariatur nisi voluptate. Minim dolor laboris dolore ex culpa.\r\n", "registered": "2014-08-12T05:54:20-12:00", "latitude": 9.434565, "longitude": -2.066395, "tags": [ "ipsum", "laboris", "pariatur", "elit", "proident", "velit", "laboris" ], "friends": [ { "id": 0, "name": "Tabitha Vaughan" }, { "id": 1, "name": "Emma Robbins" }, { "id": 2, "name": "Cooley Levine" } ], "greeting": "Hello, Rebecca Chandler! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea219c5af4ed6e0936d9", "index": 1202, "guid": "23c45d12-b45e-42ff-a7ab-22857e024640", "isActive": true, "balance": "$2,797.38", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Carolina Combs", "gender": "female", "company": "ARCTIQ", "email": "carolinacombs@arctiq.com", "phone": "+1 (892) 544-2925", "address": "459 Lake Place, Deercroft, Vermont, 4349", "about": "Sunt cillum duis officia dolore duis eiusmod ipsum laboris eu ad magna ex dolore voluptate. Est laboris pariatur esse est non. Velit minim velit consectetur anim Lorem esse cillum.\r\n", "registered": "2014-01-19T13:56:11-13:00", "latitude": 68.700712, "longitude": 86.584751, "tags": [ "labore", "voluptate", "ullamco", "ut", "enim", "voluptate", "cupidatat" ], "friends": [ { "id": 0, "name": "Poole Schwartz" }, { "id": 1, "name": "Virgie Sims" }, { "id": 2, "name": "Tiffany Maxwell" } ], "greeting": "Hello, Carolina Combs! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea215ae6478499c72592", "index": 1203, "guid": "d075f1d5-c30b-4177-9f3a-e1d572ea4620", "isActive": false, "balance": "$1,508.84", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Wilson Talley", "gender": "male", "company": "GEEKNET", "email": "wilsontalley@geeknet.com", "phone": "+1 (800) 595-3620", "address": "862 Aurelia Court, Balm, Indiana, 6450", "about": "Ex reprehenderit labore proident nisi Lorem reprehenderit proident ut anim culpa mollit. Dolore sint fugiat cupidatat occaecat ad. Lorem et Lorem ipsum proident cillum exercitation Lorem. Irure sunt nulla sunt cupidatat nisi occaecat pariatur consectetur nulla eiusmod.\r\n", "registered": "2014-01-16T23:41:04-13:00", "latitude": -2.043963, "longitude": 105.484852, "tags": [ "laborum", "id", "irure", "aute", "cupidatat", "deserunt", "officia" ], "friends": [ { "id": 0, "name": "Elisabeth Knowles" }, { "id": 1, "name": "Vicki Green" }, { "id": 2, "name": "Lorrie Gutierrez" } ], "greeting": "Hello, Wilson Talley! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea211d0e0c7c51e0c8dd", "index": 1204, "guid": "aa894f0e-a8a1-4804-87d2-ede2484b0154", "isActive": false, "balance": "$1,272.38", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Howe Rivers", "gender": "male", "company": "DELPHIDE", "email": "howerivers@delphide.com", "phone": "+1 (950) 401-2164", "address": "287 Imlay Street, Blue, Illinois, 6638", "about": "Aliquip reprehenderit aute cillum proident deserunt mollit laborum magna consequat cillum cillum ea dolore. Sunt commodo proident do occaecat nostrud enim amet est. Deserunt consequat minim aute mollit ad irure nisi proident occaecat eiusmod laboris quis est. Qui proident laborum ad laboris ea laborum velit duis ut consequat quis ipsum. Cupidatat velit deserunt ullamco ex nostrud ad.\r\n", "registered": "2014-05-24T05:08:03-12:00", "latitude": -46.482015, "longitude": 120.76638, "tags": [ "do", "pariatur", "esse", "elit", "excepteur", "eiusmod", "nostrud" ], "friends": [ { "id": 0, "name": "Lessie Garner" }, { "id": 1, "name": "Caitlin Mann" }, { "id": 2, "name": "Franks Harvey" } ], "greeting": "Hello, Howe Rivers! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2188fe9d95d8722c4f", "index": 1205, "guid": "6922ab1d-56a5-4c35-9dfd-89eb08e24334", "isActive": false, "balance": "$3,821.00", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Maldonado Pollard", "gender": "male", "company": "APEXTRI", "email": "maldonadopollard@apextri.com", "phone": "+1 (851) 407-3946", "address": "438 Beach Place, Motley, South Carolina, 2387", "about": "Magna ullamco dolor est labore dolor quis deserunt incididunt veniam tempor cillum. Officia irure mollit ad ex consequat laboris laboris ad commodo cillum occaecat veniam incididunt. Occaecat est est sint et nulla consequat elit anim anim. Aute deserunt voluptate sit mollit.\r\n", "registered": "2014-01-15T06:42:46-13:00", "latitude": -53.210023, "longitude": 29.402832, "tags": [ "qui", "sint", "esse", "id", "deserunt", "commodo", "non" ], "friends": [ { "id": 0, "name": "Georgina Davenport" }, { "id": 1, "name": "Logan Norton" }, { "id": 2, "name": "Mcdonald Mendez" } ], "greeting": "Hello, Maldonado Pollard! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21efad6abf6948f4ac", "index": 1206, "guid": "da495b14-71c5-49d8-9900-7b2b94a35b2e", "isActive": false, "balance": "$3,344.73", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Matilda George", "gender": "female", "company": "TELLIFLY", "email": "matildageorge@tellifly.com", "phone": "+1 (916) 526-2833", "address": "143 Interborough Parkway, Greenbush, American Samoa, 6745", "about": "Est in eu non labore dolore officia anim sint commodo eiusmod. Ullamco laboris sunt anim dolor non officia culpa aliquip voluptate ipsum commodo ea. Pariatur adipisicing reprehenderit cillum velit deserunt nulla qui consequat proident dolore reprehenderit dolore. Incididunt consectetur velit cillum voluptate excepteur incididunt laborum voluptate esse. Consequat est labore excepteur minim ut reprehenderit velit. Et sit qui consectetur exercitation eu ut laboris incididunt incididunt. Nulla commodo deserunt excepteur velit ipsum incididunt enim.\r\n", "registered": "2014-07-18T19:36:15-12:00", "latitude": 33.222035, "longitude": -150.055499, "tags": [ "aliquip", "pariatur", "eu", "adipisicing", "magna", "esse", "do" ], "friends": [ { "id": 0, "name": "Horne Park" }, { "id": 1, "name": "Catalina Kerr" }, { "id": 2, "name": "Lavonne Roberts" } ], "greeting": "Hello, Matilda George! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2192f60640ff0d1f33", "index": 1207, "guid": "67e6ccc7-c699-49ad-a9a3-59b6253ffbb9", "isActive": true, "balance": "$2,768.55", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Jeanine Holder", "gender": "female", "company": "FLUMBO", "email": "jeanineholder@flumbo.com", "phone": "+1 (848) 407-2264", "address": "678 Mayfair Drive, Linganore, Delaware, 1916", "about": "Occaecat reprehenderit eu laboris laborum tempor velit ut duis et excepteur fugiat. Tempor in adipisicing ut anim cillum deserunt minim tempor commodo duis voluptate. Velit ex ea duis proident amet non. Et nisi anim ipsum qui mollit et minim aliquip velit. Incididunt veniam ea quis in est consequat dolor reprehenderit ut ullamco pariatur. Laborum adipisicing incididunt consequat irure irure consequat veniam.\r\n", "registered": "2014-02-17T11:06:35-13:00", "latitude": -6.663929, "longitude": 123.955228, "tags": [ "duis", "nulla", "nulla", "exercitation", "labore", "sint", "occaecat" ], "friends": [ { "id": 0, "name": "Rochelle Rollins" }, { "id": 1, "name": "Grace Gonzalez" }, { "id": 2, "name": "Erin Gonzales" } ], "greeting": "Hello, Jeanine Holder! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21a0bb7e517ff423c6", "index": 1208, "guid": "b61310ad-948a-4ac1-85e2-d5d029baf54d", "isActive": false, "balance": "$3,346.07", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Jo Dickson", "gender": "female", "company": "DYNO", "email": "jodickson@dyno.com", "phone": "+1 (987) 433-2804", "address": "132 McClancy Place, Jamestown, Pennsylvania, 2777", "about": "Ut laborum ipsum minim officia et. Deserunt pariatur quis duis sunt officia exercitation quis ullamco velit officia commodo sit. Cupidatat dolor non ad sit duis ex et amet incididunt enim commodo nostrud ex. Nostrud labore ut ex et cupidatat sit. Est sint officia minim tempor aliqua ut anim ad veniam sunt. Culpa sit dolor proident amet veniam ut aliqua. Aliqua ea enim excepteur incididunt minim incididunt nostrud aute dolor consectetur aute consectetur amet sunt.\r\n", "registered": "2014-01-08T21:40:36-13:00", "latitude": 31.85277, "longitude": -169.735084, "tags": [ "adipisicing", "eu", "occaecat", "sit", "laborum", "incididunt", "dolor" ], "friends": [ { "id": 0, "name": "Taylor Jordan" }, { "id": 1, "name": "Kayla Herman" }, { "id": 2, "name": "Amie Mcmahon" } ], "greeting": "Hello, Jo Dickson! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21df8e85dffab31c53", "index": 1209, "guid": "61be63cb-7bf7-4a97-a019-969f256a1712", "isActive": false, "balance": "$3,020.12", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Ellis Frost", "gender": "male", "company": "ISONUS", "email": "ellisfrost@isonus.com", "phone": "+1 (917) 457-3451", "address": "619 Verona Street, Yorklyn, Georgia, 7546", "about": "Aute in laborum dolore commodo qui. Fugiat voluptate eiusmod culpa veniam mollit. Non aliquip aliqua eiusmod commodo mollit.\r\n", "registered": "2014-04-03T13:49:57-13:00", "latitude": -66.455319, "longitude": -116.919091, "tags": [ "officia", "duis", "aliquip", "veniam", "quis", "mollit", "sunt" ], "friends": [ { "id": 0, "name": "Bernice Dale" }, { "id": 1, "name": "Daniels Taylor" }, { "id": 2, "name": "Jenny Kirby" } ], "greeting": "Hello, Ellis Frost! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea210759ce33eb90646b", "index": 1210, "guid": "9d77d282-6808-4fff-a352-895b812d2507", "isActive": false, "balance": "$3,426.24", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Randi Hale", "gender": "female", "company": "XSPORTS", "email": "randihale@xsports.com", "phone": "+1 (939) 542-3295", "address": "888 Adler Place, Cascades, North Dakota, 2537", "about": "Commodo ex tempor irure aliqua fugiat ad. Anim proident qui quis ut eu. Occaecat eu non adipisicing tempor velit qui duis do incididunt. Nulla voluptate mollit aute mollit. Magna ut sunt ex commodo minim in nulla in id aliqua nostrud commodo enim adipisicing. Aliquip adipisicing nostrud fugiat sunt ex velit eu ad dolore veniam consectetur cupidatat nostrud.\r\n", "registered": "2014-08-27T21:47:09-12:00", "latitude": -76.226289, "longitude": -81.516606, "tags": [ "pariatur", "do", "incididunt", "et", "minim", "pariatur", "id" ], "friends": [ { "id": 0, "name": "Aisha Ballard" }, { "id": 1, "name": "Rodriguez Daugherty" }, { "id": 2, "name": "Valencia Cobb" } ], "greeting": "Hello, Randi Hale! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21979bb07b1937a40e", "index": 1211, "guid": "4f3b1b09-102a-4dc3-bcae-43de80368201", "isActive": false, "balance": "$1,423.36", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Viola Phillips", "gender": "female", "company": "ISOSURE", "email": "violaphillips@isosure.com", "phone": "+1 (822) 402-2761", "address": "718 Lorraine Street, Edmund, Louisiana, 2622", "about": "Sit occaecat irure exercitation in qui sit laboris. Nulla ex exercitation in in incididunt sint. Culpa tempor sunt fugiat dolor non reprehenderit non. In sint commodo aute aliquip dolore in aliqua anim qui commodo sunt proident. Nulla mollit aute velit excepteur nulla ullamco dolor sint aliquip occaecat.\r\n", "registered": "2014-04-02T03:12:11-13:00", "latitude": 70.304637, "longitude": 53.922853, "tags": [ "nisi", "amet", "pariatur", "mollit", "dolore", "do", "ad" ], "friends": [ { "id": 0, "name": "Knight Savage" }, { "id": 1, "name": "Tamra Maynard" }, { "id": 2, "name": "Warren Colon" } ], "greeting": "Hello, Viola Phillips! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21dedc845aacae17fa", "index": 1212, "guid": "936d43ba-c76f-48cf-becc-23967bce154c", "isActive": false, "balance": "$3,785.70", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Jarvis Pickett", "gender": "male", "company": "STRALUM", "email": "jarvispickett@stralum.com", "phone": "+1 (801) 423-2534", "address": "608 Erskine Loop, Hayden, Northern Mariana Islands, 6278", "about": "Elit fugiat et elit do voluptate. In cillum minim aliquip ex magna nulla eiusmod id consectetur ea officia quis. Esse dolore tempor excepteur amet duis enim aliqua fugiat adipisicing nostrud tempor aute occaecat tempor. Cillum excepteur enim elit magna eu tempor nulla exercitation aliqua laborum et elit. Velit velit minim laborum anim. Quis reprehenderit velit tempor velit elit aliquip est consectetur mollit ea ad consequat minim voluptate.\r\n", "registered": "2014-06-07T03:54:57-12:00", "latitude": 81.266019, "longitude": 1.844752, "tags": [ "consequat", "ut", "pariatur", "velit", "consequat", "minim", "deserunt" ], "friends": [ { "id": 0, "name": "Jana Foley" }, { "id": 1, "name": "Battle Harding" }, { "id": 2, "name": "Constance Ball" } ], "greeting": "Hello, Jarvis Pickett! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2130b17f6c39bc87d9", "index": 1213, "guid": "01ab0481-d89f-4be4-9167-6b35900c4bb8", "isActive": false, "balance": "$3,870.77", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Cole Walker", "gender": "male", "company": "EQUICOM", "email": "colewalker@equicom.com", "phone": "+1 (896) 559-2110", "address": "693 Roosevelt Place, Sanford, Colorado, 5084", "about": "Proident veniam laborum et dolore tempor laboris in qui deserunt sint deserunt non enim. Exercitation aliqua occaecat velit ex anim commodo aliqua ea aliqua duis ea id elit. Commodo proident est in fugiat aute ex incididunt dolor reprehenderit consequat eiusmod Lorem incididunt ut.\r\n", "registered": "2014-09-10T03:18:16-12:00", "latitude": 80.103178, "longitude": -41.951083, "tags": [ "est", "id", "quis", "excepteur", "laborum", "aliquip", "quis" ], "friends": [ { "id": 0, "name": "Gay Ferguson" }, { "id": 1, "name": "French Townsend" }, { "id": 2, "name": "Ashley Knight" } ], "greeting": "Hello, Cole Walker! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21ab7cb052fb293db3", "index": 1214, "guid": "755febae-af2e-4e9e-9bab-8b89fbfe88c3", "isActive": false, "balance": "$3,885.72", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Olson Reynolds", "gender": "male", "company": "ISBOL", "email": "olsonreynolds@isbol.com", "phone": "+1 (903) 550-3612", "address": "596 Howard Place, Southview, Idaho, 1868", "about": "Fugiat proident est Lorem mollit ullamco laboris deserunt laborum cillum anim. Eu aute fugiat elit excepteur. Sit commodo consectetur ad duis voluptate ipsum consectetur excepteur nostrud ut. Adipisicing occaecat esse velit ut veniam ea nisi voluptate dolor ut ullamco eu. Sunt ex officia ex nulla sint ipsum in qui laboris dolor esse occaecat qui reprehenderit. Et excepteur adipisicing consectetur cillum ex ad commodo mollit dolor aute esse.\r\n", "registered": "2014-07-18T03:06:34-12:00", "latitude": -37.689758, "longitude": -33.032283, "tags": [ "nulla", "enim", "nisi", "ullamco", "voluptate", "dolor", "officia" ], "friends": [ { "id": 0, "name": "Camille Dunn" }, { "id": 1, "name": "Christine Graham" }, { "id": 2, "name": "Ware Vincent" } ], "greeting": "Hello, Olson Reynolds! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea216ec65e5883d8a51d", "index": 1215, "guid": "aa977339-ee09-4872-9868-f96fec2a2e4f", "isActive": true, "balance": "$2,324.06", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Hobbs Ellison", "gender": "male", "company": "EXERTA", "email": "hobbsellison@exerta.com", "phone": "+1 (991) 531-2337", "address": "621 Drew Street, Fontanelle, Marshall Islands, 7315", "about": "Excepteur cupidatat culpa do pariatur ex. Irure voluptate veniam voluptate est laboris ipsum. Magna ad commodo laborum adipisicing in minim deserunt tempor magna. Commodo dolore ex consequat elit. Nisi id enim eiusmod do excepteur sunt duis ipsum eiusmod laborum. Laboris mollit ea enim reprehenderit nulla mollit laboris sunt commodo qui incididunt ipsum quis. Id in duis exercitation ex ipsum nostrud occaecat excepteur ut pariatur.\r\n", "registered": "2014-06-26T10:47:24-12:00", "latitude": -43.3572, "longitude": -118.122649, "tags": [ "occaecat", "excepteur", "est", "sint", "aute", "non", "dolore" ], "friends": [ { "id": 0, "name": "Bond Armstrong" }, { "id": 1, "name": "Alma Reid" }, { "id": 2, "name": "Katheryn Sears" } ], "greeting": "Hello, Hobbs Ellison! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21583f5e3886222abd", "index": 1216, "guid": "120952eb-c48e-42f5-aafc-8c111b911830", "isActive": true, "balance": "$3,867.28", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Frazier Anthony", "gender": "male", "company": "ORBIXTAR", "email": "frazieranthony@orbixtar.com", "phone": "+1 (964) 565-3726", "address": "876 Foster Avenue, Waukeenah, New York, 5888", "about": "Esse dolore qui cillum ullamco cupidatat ipsum commodo ex minim. Culpa ullamco ut do cupidatat occaecat. Nostrud eu eu pariatur aliquip voluptate sit dolore. Labore est elit non non consequat pariatur ut eiusmod dolore cupidatat exercitation. Id ex fugiat veniam do reprehenderit irure cupidatat enim commodo labore dolore ipsum reprehenderit ullamco. Velit cupidatat incididunt pariatur in aliqua laborum anim officia non aliquip anim.\r\n", "registered": "2014-06-29T20:36:24-12:00", "latitude": 10.087776, "longitude": 10.789188, "tags": [ "dolore", "sit", "elit", "veniam", "incididunt", "ipsum", "dolore" ], "friends": [ { "id": 0, "name": "Lorena Myers" }, { "id": 1, "name": "Sweet Raymond" }, { "id": 2, "name": "Hawkins Golden" } ], "greeting": "Hello, Frazier Anthony! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2182412b4ee42e4877", "index": 1217, "guid": "6f9aee27-3e9c-4c99-a246-212ae9da9986", "isActive": false, "balance": "$3,050.96", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Latasha Roy", "gender": "female", "company": "BEADZZA", "email": "latasharoy@beadzza.com", "phone": "+1 (908) 536-2066", "address": "166 Devon Avenue, Coalmont, Guam, 1313", "about": "Amet ipsum proident veniam duis qui dolore. Eiusmod minim exercitation minim esse exercitation. Sint ut nisi ut veniam adipisicing fugiat dolore quis sint commodo. Eiusmod nostrud fugiat qui excepteur minim cupidatat ea incididunt laboris sit dolor ex. Pariatur voluptate laboris nulla cupidatat magna. Ut voluptate Lorem consectetur proident cillum do dolore amet aute adipisicing. Anim nostrud dolore fugiat eiusmod dolor mollit aute officia esse ad amet.\r\n", "registered": "2014-05-18T02:47:01-12:00", "latitude": 73.988936, "longitude": 36.311496, "tags": [ "pariatur", "do", "ipsum", "qui", "Lorem", "minim", "incididunt" ], "friends": [ { "id": 0, "name": "Terra Clemons" }, { "id": 1, "name": "Mcleod England" }, { "id": 2, "name": "Angelina Reyes" } ], "greeting": "Hello, Latasha Roy! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21155d009f39d0bbab", "index": 1218, "guid": "94ee016f-dce3-493b-840c-fb18899827d7", "isActive": false, "balance": "$1,178.15", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Osborn Shields", "gender": "male", "company": "MOREGANIC", "email": "osbornshields@moreganic.com", "phone": "+1 (901) 497-2444", "address": "829 Jackson Street, Chloride, Virgin Islands, 4505", "about": "Laborum laborum laborum sit id amet officia nulla irure nostrud. Ex commodo pariatur dolore culpa officia. Occaecat nostrud ipsum sunt irure sit laboris amet duis pariatur duis. Consectetur ex irure ea officia cillum nulla ullamco excepteur tempor ea.\r\n", "registered": "2014-05-11T12:14:21-12:00", "latitude": 48.404699, "longitude": -54.088974, "tags": [ "commodo", "laboris", "commodo", "esse", "labore", "adipisicing", "magna" ], "friends": [ { "id": 0, "name": "Janelle Tillman" }, { "id": 1, "name": "Dorothea Valentine" }, { "id": 2, "name": "Buchanan Edwards" } ], "greeting": "Hello, Osborn Shields! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21f8d72bf25e284b4d", "index": 1219, "guid": "50bb9229-21e5-4753-a55b-8f8622bc058c", "isActive": true, "balance": "$3,910.81", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Moss Shelton", "gender": "male", "company": "SOFTMICRO", "email": "mossshelton@softmicro.com", "phone": "+1 (869) 553-2225", "address": "143 Lawrence Street, Cotopaxi, Massachusetts, 7608", "about": "Velit et occaecat consequat deserunt voluptate quis anim sit irure excepteur. Commodo pariatur officia mollit incididunt irure reprehenderit est ad consequat. Adipisicing minim proident velit voluptate irure ad nisi cupidatat.\r\n", "registered": "2014-02-19T20:58:09-13:00", "latitude": -63.530229, "longitude": -151.98797, "tags": [ "officia", "est", "ea", "eu", "ullamco", "veniam", "proident" ], "friends": [ { "id": 0, "name": "Villarreal Soto" }, { "id": 1, "name": "Weiss Mccall" }, { "id": 2, "name": "Rowland Strong" } ], "greeting": "Hello, Moss Shelton! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea210198442dfe2147de", "index": 1220, "guid": "32c87e36-53b8-4e8e-8849-272f66c28248", "isActive": false, "balance": "$2,655.42", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Alexandra Brown", "gender": "female", "company": "EZENT", "email": "alexandrabrown@ezent.com", "phone": "+1 (980) 547-3261", "address": "683 Gerritsen Avenue, Shepardsville, Utah, 1498", "about": "Cillum est id eiusmod magna non consectetur tempor pariatur commodo cillum. Amet proident aute voluptate ipsum ad adipisicing ad magna culpa eiusmod reprehenderit est ea. Aliqua nulla incididunt laborum aliqua. Enim sit officia dolore mollit dolor proident id labore in esse eiusmod anim. Occaecat qui fugiat excepteur ex sunt minim fugiat fugiat non ad veniam eiusmod tempor non. Mollit eiusmod consequat eiusmod eu dolor anim adipisicing. Magna eu magna quis laboris id Lorem veniam sit.\r\n", "registered": "2014-09-06T12:09:38-12:00", "latitude": -72.450872, "longitude": 59.918986, "tags": [ "minim", "tempor", "veniam", "enim", "ex", "nisi", "laboris" ], "friends": [ { "id": 0, "name": "Johnnie Gregory" }, { "id": 1, "name": "Scott Mccoy" }, { "id": 2, "name": "Cote Mcconnell" } ], "greeting": "Hello, Alexandra Brown! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21274f07154c69c4e8", "index": 1221, "guid": "92eb7aaa-fe81-476e-ae56-88b55eea859b", "isActive": false, "balance": "$1,610.21", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Bessie Collier", "gender": "female", "company": "EXOSWITCH", "email": "bessiecollier@exoswitch.com", "phone": "+1 (907) 522-2348", "address": "136 Allen Avenue, Ruffin, Montana, 6086", "about": "Exercitation enim officia laboris cupidatat occaecat. Veniam pariatur non labore do amet elit culpa enim in ut Lorem voluptate qui. Velit do ipsum in et irure excepteur consequat nostrud quis ea culpa. Reprehenderit cupidatat ad esse eiusmod pariatur qui sit cupidatat. Eiusmod esse incididunt laborum magna ut. Ad culpa anim anim est esse in est quis nostrud est ut elit. Qui culpa amet pariatur aute laboris sunt qui.\r\n", "registered": "2014-09-04T03:56:13-12:00", "latitude": 75.348256, "longitude": 83.922188, "tags": [ "enim", "ea", "officia", "dolore", "in", "deserunt", "fugiat" ], "friends": [ { "id": 0, "name": "Burgess Baxter" }, { "id": 1, "name": "Colon Blake" }, { "id": 2, "name": "Sanders Lancaster" } ], "greeting": "Hello, Bessie Collier! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21c27daa6e64ea7d9e", "index": 1222, "guid": "443404da-fa06-4166-bbe8-d2fcfec45bda", "isActive": true, "balance": "$3,512.38", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Hudson Donovan", "gender": "male", "company": "VURBO", "email": "hudsondonovan@vurbo.com", "phone": "+1 (902) 573-2807", "address": "261 Times Placez, Zortman, Wisconsin, 4617", "about": "Aliquip eu ea irure adipisicing amet laborum amet laboris laborum cupidatat magna nostrud cupidatat cupidatat. Incididunt culpa aliquip exercitation ipsum. Quis eu tempor ut irure duis fugiat labore ut sunt labore irure ex incididunt. Do sint in aliquip nulla Lorem laborum. Nostrud mollit magna dolore adipisicing velit tempor reprehenderit tempor ea eiusmod consequat adipisicing. Voluptate ullamco Lorem laboris tempor quis magna nulla voluptate ex non eiusmod adipisicing. Consectetur nostrud do ullamco consectetur veniam ullamco pariatur mollit minim minim sint qui esse excepteur.\r\n", "registered": "2014-03-15T08:38:36-13:00", "latitude": -10.493051, "longitude": -111.221378, "tags": [ "voluptate", "Lorem", "sit", "et", "est", "adipisicing", "exercitation" ], "friends": [ { "id": 0, "name": "Lee Jenkins" }, { "id": 1, "name": "Alissa Pate" }, { "id": 2, "name": "Curtis Velez" } ], "greeting": "Hello, Hudson Donovan! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21d59c930e218323de", "index": 1223, "guid": "41bc720a-9f6f-4251-b947-7518aebaf6cf", "isActive": true, "balance": "$3,337.07", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Vivian Higgins", "gender": "female", "company": "NURPLEX", "email": "vivianhiggins@nurplex.com", "phone": "+1 (825) 491-3822", "address": "149 Hendrickson Place, Reno, Maine, 2101", "about": "Esse ut reprehenderit enim ad mollit Lorem occaecat elit non labore esse. Est officia magna consectetur eu. Commodo fugiat cillum do nisi culpa qui mollit sunt quis voluptate. Qui nisi enim magna nostrud ullamco. Aliquip non fugiat reprehenderit exercitation elit minim sunt sint ea laborum.\r\n", "registered": "2014-05-18T08:28:54-12:00", "latitude": 2.002579, "longitude": 146.440389, "tags": [ "incididunt", "elit", "ut", "excepteur", "tempor", "amet", "non" ], "friends": [ { "id": 0, "name": "Cara Berry" }, { "id": 1, "name": "Helene Peterson" }, { "id": 2, "name": "Jennings Solomon" } ], "greeting": "Hello, Vivian Higgins! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea217ccbcf7582a6244e", "index": 1224, "guid": "9138ed34-8208-4bc9-86af-c3e18e58ea42", "isActive": true, "balance": "$3,431.14", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Mclaughlin Nixon", "gender": "male", "company": "ICOLOGY", "email": "mclaughlinnixon@icology.com", "phone": "+1 (814) 453-2305", "address": "233 Kent Street, Cowiche, Virginia, 273", "about": "Eu labore incididunt amet sit occaecat excepteur eu culpa exercitation ex. Eu nulla ut veniam nisi qui enim tempor officia enim culpa in. Magna pariatur ipsum anim magna veniam irure. Voluptate eu non cillum ullamco esse.\r\n", "registered": "2014-01-31T18:14:14-13:00", "latitude": 6.415313, "longitude": 30.953778, "tags": [ "ipsum", "voluptate", "exercitation", "laboris", "pariatur", "pariatur", "aliqua" ], "friends": [ { "id": 0, "name": "Mcbride Fulton" }, { "id": 1, "name": "Cooper Roberson" }, { "id": 2, "name": "Eva Stuart" } ], "greeting": "Hello, Mclaughlin Nixon! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21366cd4d18756d1fc", "index": 1225, "guid": "94d4f5f9-8c75-45ba-9435-1f5f5feee894", "isActive": false, "balance": "$2,964.63", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Concepcion Chambers", "gender": "female", "company": "SPHERIX", "email": "concepcionchambers@spherix.com", "phone": "+1 (988) 557-3849", "address": "889 Montana Place, Campo, Kentucky, 3383", "about": "Culpa consectetur qui cupidatat mollit ad do. Officia ullamco commodo est nisi est esse dolore et. Non occaecat ut ex dolor dolore nulla cillum. Proident consectetur laborum officia proident laborum sint.\r\n", "registered": "2014-01-18T14:47:54-13:00", "latitude": 41.619476, "longitude": 13.07428, "tags": [ "ea", "sint", "incididunt", "Lorem", "laborum", "adipisicing", "enim" ], "friends": [ { "id": 0, "name": "Wolfe Ellis" }, { "id": 1, "name": "Tillman Lambert" }, { "id": 2, "name": "Gordon Guerra" } ], "greeting": "Hello, Concepcion Chambers! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea215e876bedb4c60139", "index": 1226, "guid": "d6b2845f-cdcf-47b3-bee4-d885975cd622", "isActive": true, "balance": "$1,194.56", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Howell Stevens", "gender": "male", "company": "DADABASE", "email": "howellstevens@dadabase.com", "phone": "+1 (917) 520-2553", "address": "276 Crown Street, Baker, Connecticut, 1650", "about": "Occaecat sunt irure et proident dolor culpa enim id proident sit enim quis. Nulla officia pariatur ullamco laboris. Mollit nostrud amet labore qui non elit id aliquip adipisicing fugiat proident laborum officia duis. Ex reprehenderit enim dolore veniam irure enim esse commodo. Pariatur consequat nulla ullamco nostrud excepteur consequat eu Lorem proident cillum. Nulla exercitation deserunt veniam laboris aute nisi fugiat exercitation fugiat.\r\n", "registered": "2014-01-09T08:24:34-13:00", "latitude": -48.824207, "longitude": 128.568565, "tags": [ "excepteur", "tempor", "exercitation", "sunt", "nulla", "elit", "commodo" ], "friends": [ { "id": 0, "name": "Kemp Hunt" }, { "id": 1, "name": "Francis Guzman" }, { "id": 2, "name": "Hoover Hickman" } ], "greeting": "Hello, Howell Stevens! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21003c0745ce58b7ec", "index": 1227, "guid": "7a7af2bf-2fbe-4e36-9b96-30ca4afd2ef2", "isActive": false, "balance": "$2,991.58", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Clark Cooley", "gender": "male", "company": "INFOTRIPS", "email": "clarkcooley@infotrips.com", "phone": "+1 (800) 526-2810", "address": "288 Bond Street, Cumberland, Mississippi, 5804", "about": "In velit elit eiusmod id elit laborum consectetur labore in pariatur exercitation dolore enim ipsum. Magna sint culpa ullamco aute dolore deserunt voluptate exercitation. Nisi labore sunt Lorem incididunt duis aliquip aute aliquip aute commodo ex nulla eu cillum. Sint est officia minim mollit esse ex. Nisi nostrud excepteur esse reprehenderit nisi quis reprehenderit commodo laboris Lorem ea eiusmod tempor. Nulla cupidatat aliqua proident dolore exercitation ipsum reprehenderit sit eu nostrud ipsum ea cillum id. Minim voluptate deserunt cillum culpa eu nulla quis veniam esse nisi voluptate.\r\n", "registered": "2014-02-25T06:40:29-13:00", "latitude": -82.9865, "longitude": 142.311855, "tags": [ "ad", "id", "deserunt", "proident", "duis", "consequat", "mollit" ], "friends": [ { "id": 0, "name": "Betty Ortiz" }, { "id": 1, "name": "Priscilla French" }, { "id": 2, "name": "Merrill Carver" } ], "greeting": "Hello, Clark Cooley! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21671c124e7be8adf3", "index": 1228, "guid": "36d6e998-174f-4d3c-81d0-161422fce0f7", "isActive": false, "balance": "$1,857.45", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Harrell Hughes", "gender": "male", "company": "PODUNK", "email": "harrellhughes@podunk.com", "phone": "+1 (963) 467-2705", "address": "239 Bergen Place, Vienna, Washington, 7396", "about": "Sint minim irure ad aute sunt consequat aliqua adipisicing duis aute ut est aliquip. Ex et veniam adipisicing ea qui tempor. Cupidatat duis aute eu minim proident officia reprehenderit cillum aliqua esse veniam ad tempor. Incididunt tempor duis amet sint do commodo sit consequat anim id minim.\r\n", "registered": "2014-01-19T16:00:20-13:00", "latitude": 69.63465, "longitude": 14.657093, "tags": [ "minim", "ut", "consectetur", "est", "est", "amet", "dolor" ], "friends": [ { "id": 0, "name": "Nguyen Acosta" }, { "id": 1, "name": "Jeanie Christian" }, { "id": 2, "name": "Autumn Powers" } ], "greeting": "Hello, Harrell Hughes! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea218cb04f3f28b006d4", "index": 1229, "guid": "55e75daf-a1b9-4139-aba5-f7411a254de9", "isActive": false, "balance": "$1,716.19", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Monica Oliver", "gender": "female", "company": "STROZEN", "email": "monicaoliver@strozen.com", "phone": "+1 (879) 467-2664", "address": "327 Dumont Avenue, Heil, Tennessee, 126", "about": "Eu est anim cupidatat deserunt elit id ut laboris tempor dolore nisi. Do veniam esse eu aliquip reprehenderit ut laborum labore enim sit sint. Fugiat quis mollit mollit excepteur excepteur elit consectetur fugiat nostrud laboris id reprehenderit velit ad. Eiusmod reprehenderit ut eu mollit commodo dolor eu officia exercitation officia magna. Dolore aliquip sint sit duis.\r\n", "registered": "2014-01-20T15:05:07-13:00", "latitude": 65.681331, "longitude": -167.262158, "tags": [ "irure", "laborum", "qui", "reprehenderit", "commodo", "nostrud", "aliquip" ], "friends": [ { "id": 0, "name": "Laurie Douglas" }, { "id": 1, "name": "Bates Brewer" }, { "id": 2, "name": "Rosalie Walsh" } ], "greeting": "Hello, Monica Oliver! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21af88f88bd4eb26ca", "index": 1230, "guid": "9d57a31a-f80a-4e56-a7c5-014ab93c95ea", "isActive": true, "balance": "$2,289.38", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Barbra Herring", "gender": "female", "company": "GEOSTELE", "email": "barbraherring@geostele.com", "phone": "+1 (934) 551-2401", "address": "829 Grove Place, Flintville, Alabama, 8721", "about": "Culpa amet velit aliquip eu occaecat proident ea occaecat quis aute enim. Tempor sunt ad excepteur anim cupidatat veniam in irure eiusmod. Non consectetur aliqua fugiat culpa nisi culpa commodo laborum consequat. Proident consectetur adipisicing aute reprehenderit culpa labore aliqua. Veniam amet tempor nisi est qui duis nulla.\r\n", "registered": "2014-06-05T09:20:51-12:00", "latitude": -84.286849, "longitude": -137.97516, "tags": [ "ad", "ullamco", "enim", "id", "nostrud", "Lorem", "est" ], "friends": [ { "id": 0, "name": "Marguerite Chaney" }, { "id": 1, "name": "Guzman Hunter" }, { "id": 2, "name": "Mcfadden Cantrell" } ], "greeting": "Hello, Barbra Herring! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21d0ecf36c1447a4a8", "index": 1231, "guid": "0ca67eb3-4d70-4a6f-9daf-4f669224530b", "isActive": false, "balance": "$1,598.32", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Peggy Monroe", "gender": "female", "company": "MOLTONIC", "email": "peggymonroe@moltonic.com", "phone": "+1 (849) 445-2547", "address": "481 Jackson Place, Dotsero, Ohio, 6721", "about": "Proident ad cupidatat consectetur duis reprehenderit duis commodo. Tempor est laborum mollit pariatur enim. Sint dolore proident cupidatat laboris deserunt cillum duis occaecat ex exercitation esse id.\r\n", "registered": "2014-05-08T05:27:24-12:00", "latitude": 85.873925, "longitude": -157.93027, "tags": [ "eiusmod", "duis", "exercitation", "pariatur", "irure", "aliquip", "nisi" ], "friends": [ { "id": 0, "name": "Kirby Harper" }, { "id": 1, "name": "Doyle Stout" }, { "id": 2, "name": "Hill Glenn" } ], "greeting": "Hello, Peggy Monroe! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea211edb1dde52a40ff1", "index": 1232, "guid": "98395c7e-65b4-4200-a219-23b43ecf907b", "isActive": true, "balance": "$3,126.18", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Esmeralda Goff", "gender": "female", "company": "NIKUDA", "email": "esmeraldagoff@nikuda.com", "phone": "+1 (910) 568-3499", "address": "933 Hemlock Street, Yettem, Hawaii, 3515", "about": "Laboris amet excepteur eiusmod duis laborum culpa adipisicing. Excepteur incididunt duis elit veniam sint irure do deserunt non. Incididunt qui aute consectetur non cillum exercitation consectetur anim aute elit officia adipisicing et occaecat. Fugiat nulla exercitation id aliqua veniam. Veniam aliqua consequat esse ea aute exercitation qui duis dolor anim. Do duis deserunt nostrud id ullamco sint consequat Lorem dolore. Do ad in dolor enim cupidatat veniam excepteur Lorem consectetur amet irure non ipsum incididunt.\r\n", "registered": "2014-03-06T16:12:58-13:00", "latitude": -50.014276, "longitude": -113.209451, "tags": [ "ad", "nostrud", "ea", "dolore", "nostrud", "aliqua", "aliqua" ], "friends": [ { "id": 0, "name": "Miranda Cannon" }, { "id": 1, "name": "Beryl Buchanan" }, { "id": 2, "name": "Lois Trujillo" } ], "greeting": "Hello, Esmeralda Goff! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21e661934b1e8e33b7", "index": 1233, "guid": "c8d58a3b-cd30-4ee4-a566-41308a872e55", "isActive": false, "balance": "$2,127.86", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Dana Pittman", "gender": "female", "company": "AVIT", "email": "danapittman@avit.com", "phone": "+1 (855) 573-3417", "address": "259 Clay Street, Bowie, New Mexico, 5109", "about": "Enim ut exercitation veniam ut dolore cillum adipisicing consequat laborum laborum nostrud id amet. Nulla consectetur cillum ex irure sint deserunt eu. Ullamco do id velit officia est dolore voluptate labore commodo ipsum labore ea. Qui laborum enim est pariatur nostrud laborum. Velit anim tempor commodo dolore ex esse sint.\r\n", "registered": "2014-04-01T13:43:12-13:00", "latitude": -59.871919, "longitude": 5.002034, "tags": [ "duis", "cupidatat", "amet", "sit", "officia", "labore", "ullamco" ], "friends": [ { "id": 0, "name": "Franklin Crane" }, { "id": 1, "name": "Dickson Pruitt" }, { "id": 2, "name": "Phoebe Holmes" } ], "greeting": "Hello, Dana Pittman! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea212d3bd392cf2b563c", "index": 1234, "guid": "fe2851eb-80f0-4632-8eba-5a820059391c", "isActive": false, "balance": "$3,790.00", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Margie Bryant", "gender": "female", "company": "COMVENE", "email": "margiebryant@comvene.com", "phone": "+1 (851) 413-2058", "address": "511 Flatbush Avenue, Johnsonburg, Maryland, 2699", "about": "Excepteur officia aliquip consectetur cillum ea nostrud ex eiusmod exercitation amet proident quis magna aliqua. Qui deserunt esse mollit anim mollit elit anim. Fugiat ipsum reprehenderit cillum occaecat enim do magna cupidatat proident commodo. Amet tempor ipsum ullamco cupidatat officia anim labore aliqua duis commodo exercitation. Qui mollit eiusmod fugiat occaecat officia tempor quis officia commodo velit irure cillum. Voluptate deserunt fugiat irure ex sint labore consectetur exercitation.\r\n", "registered": "2014-05-22T12:34:14-12:00", "latitude": -72.073447, "longitude": 91.092985, "tags": [ "voluptate", "sunt", "sunt", "ea", "ipsum", "in", "occaecat" ], "friends": [ { "id": 0, "name": "Kasey Cummings" }, { "id": 1, "name": "Tia Gilmore" }, { "id": 2, "name": "Mercedes Powell" } ], "greeting": "Hello, Margie Bryant! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea211fba6034004f5588", "index": 1235, "guid": "abdcfbb3-6d2f-44c4-9d74-c3d4471a2039", "isActive": true, "balance": "$1,854.07", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Morse Silva", "gender": "male", "company": "OPTYK", "email": "morsesilva@optyk.com", "phone": "+1 (999) 471-2649", "address": "757 Fanchon Place, Eden, Alaska, 8696", "about": "Amet do Lorem pariatur Lorem quis id incididunt eiusmod officia do proident exercitation voluptate. Sunt adipisicing occaecat ullamco et. Excepteur pariatur in Lorem labore sint ad ut labore et. Sint anim enim sit adipisicing enim.\r\n", "registered": "2014-04-11T16:30:02-12:00", "latitude": 45.938916, "longitude": 156.471407, "tags": [ "nulla", "eu", "elit", "eu", "incididunt", "deserunt", "eiusmod" ], "friends": [ { "id": 0, "name": "Snider Wong" }, { "id": 1, "name": "Alyce Hood" }, { "id": 2, "name": "Crystal Herrera" } ], "greeting": "Hello, Morse Silva! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2142a09ffcff7febfc", "index": 1236, "guid": "84b13842-1b3d-41fb-95de-53bcf18578c4", "isActive": true, "balance": "$3,584.27", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Ericka Hanson", "gender": "female", "company": "HAIRPORT", "email": "erickahanson@hairport.com", "phone": "+1 (986) 547-3170", "address": "319 Dooley Street, Waumandee, Arizona, 5236", "about": "Exercitation elit consequat reprehenderit ullamco. Do incididunt laboris ullamco fugiat voluptate ea laboris. Deserunt amet exercitation velit minim. Ut ea ullamco voluptate sit in deserunt qui.\r\n", "registered": "2014-05-19T15:02:51-12:00", "latitude": -68.967852, "longitude": -144.084646, "tags": [ "veniam", "adipisicing", "culpa", "sit", "anim", "reprehenderit", "ex" ], "friends": [ { "id": 0, "name": "Washington Hammond" }, { "id": 1, "name": "Erickson Burnett" }, { "id": 2, "name": "Lindsay Barr" } ], "greeting": "Hello, Ericka Hanson! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea212b7cf512521c5279", "index": 1237, "guid": "7f5045f5-796f-45fb-a316-722f4b6f790f", "isActive": false, "balance": "$1,490.56", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Shannon Bradley", "gender": "female", "company": "TRI@TRIBALOG", "email": "shannonbradley@tri@tribalog.com", "phone": "+1 (948) 441-2722", "address": "628 Huron Street, Carlos, Federated States Of Micronesia, 2314", "about": "Cupidatat mollit commodo adipisicing duis irure ea Lorem nulla magna quis ea. Fugiat ullamco fugiat magna ut labore cillum labore nisi adipisicing officia magna laborum. Aliqua Lorem nulla incididunt ipsum consequat fugiat. Proident quis proident excepteur ex sit deserunt eu commodo amet Lorem est id pariatur id. Ex do quis aute aliquip deserunt commodo veniam elit enim ex amet voluptate.\r\n", "registered": "2014-02-04T17:53:53-13:00", "latitude": 53.741077, "longitude": -178.572697, "tags": [ "excepteur", "cupidatat", "quis", "dolore", "sunt", "veniam", "et" ], "friends": [ { "id": 0, "name": "Carole Howard" }, { "id": 1, "name": "Nixon Webster" }, { "id": 2, "name": "Hilda Weber" } ], "greeting": "Hello, Shannon Bradley! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea212fc27aed758a0fa3", "index": 1238, "guid": "f4b38935-4909-4b60-849d-e8cf82ee9a96", "isActive": false, "balance": "$3,502.64", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Lamb Faulkner", "gender": "male", "company": "ISOLOGIX", "email": "lambfaulkner@isologix.com", "phone": "+1 (951) 538-2655", "address": "248 Tennis Court, Edgewater, Oklahoma, 5279", "about": "Enim ex sint labore ad cupidatat laborum consequat esse. Cupidatat adipisicing duis commodo non cillum ullamco. Elit amet fugiat cupidatat non. Proident eu elit do non voluptate voluptate amet laborum.\r\n", "registered": "2014-05-17T02:48:22-12:00", "latitude": -6.193583, "longitude": 41.859461, "tags": [ "dolore", "enim", "laborum", "tempor", "deserunt", "proident", "reprehenderit" ], "friends": [ { "id": 0, "name": "Wilda Richardson" }, { "id": 1, "name": "Avery Hess" }, { "id": 2, "name": "Vonda Olson" } ], "greeting": "Hello, Lamb Faulkner! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21cb2af46d855a2948", "index": 1239, "guid": "6a710edc-72bb-46d1-8ffe-dfa6e2d0874f", "isActive": false, "balance": "$2,955.50", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Page Ferrell", "gender": "male", "company": "TOURMANIA", "email": "pageferrell@tourmania.com", "phone": "+1 (979) 527-2334", "address": "930 Chase Court, Kent, Michigan, 8909", "about": "Cupidatat magna cillum adipisicing ea mollit incididunt do deserunt. Quis sit laboris cupidatat veniam deserunt eu ipsum ipsum aliqua ad. Deserunt cillum veniam sunt ea ipsum aute. Aliquip consectetur dolor ad aliquip elit elit quis Lorem est Lorem labore ex laborum ad. Id eiusmod ut officia minim magna nisi est anim sunt fugiat eiusmod. Lorem anim anim laboris ipsum. In commodo et fugiat eiusmod culpa quis consectetur sunt adipisicing.\r\n", "registered": "2014-02-14T02:10:57-13:00", "latitude": -51.392509, "longitude": -110.034848, "tags": [ "consectetur", "officia", "duis", "enim", "occaecat", "culpa", "non" ], "friends": [ { "id": 0, "name": "Valerie Blevins" }, { "id": 1, "name": "Ray Andrews" }, { "id": 2, "name": "Marta Campos" } ], "greeting": "Hello, Page Ferrell! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea219ee0c35893cf9221", "index": 1240, "guid": "7b1a40b6-f0eb-4fdb-b64c-954e94864179", "isActive": true, "balance": "$1,867.50", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Molly Dean", "gender": "female", "company": "CALCU", "email": "mollydean@calcu.com", "phone": "+1 (831) 511-2641", "address": "924 Wortman Avenue, Vivian, Kansas, 5999", "about": "Lorem irure nisi nulla est tempor adipisicing adipisicing ex amet cupidatat. Quis duis ut esse incididunt mollit adipisicing ad reprehenderit veniam fugiat mollit labore. Dolor exercitation sunt voluptate consectetur enim cillum exercitation sunt consectetur proident mollit dolore. Tempor labore dolor ad esse officia. Laborum consectetur ad in duis ut. Irure tempor qui sit nisi nulla consectetur cillum velit.\r\n", "registered": "2014-02-09T10:46:35-13:00", "latitude": -49.664424, "longitude": 25.08629, "tags": [ "mollit", "tempor", "aute", "incididunt", "in", "Lorem", "anim" ], "friends": [ { "id": 0, "name": "Noreen Cotton" }, { "id": 1, "name": "Dale Winters" }, { "id": 2, "name": "Vicky Payne" } ], "greeting": "Hello, Molly Dean! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea213add87d293616a11", "index": 1241, "guid": "1f0de8e6-7b19-4304-b770-bcec77b146c8", "isActive": false, "balance": "$3,636.58", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Newman Puckett", "gender": "male", "company": "METROZ", "email": "newmanpuckett@metroz.com", "phone": "+1 (989) 561-2643", "address": "700 Turnbull Avenue, Brule, South Dakota, 9421", "about": "Anim esse do officia aliqua mollit mollit id fugiat cupidatat dolor ut anim ut. Laboris occaecat excepteur adipisicing dolor est minim fugiat minim ad nostrud. Labore nulla esse labore minim enim veniam reprehenderit. Cillum enim deserunt ex nostrud duis. Velit laborum cillum ut Lorem aute tempor exercitation ut do. Et velit est nostrud velit elit exercitation elit.\r\n", "registered": "2014-02-04T23:55:01-13:00", "latitude": 72.069761, "longitude": 34.482298, "tags": [ "ullamco", "anim", "exercitation", "culpa", "proident", "proident", "proident" ], "friends": [ { "id": 0, "name": "Faye Finley" }, { "id": 1, "name": "Stacey Conrad" }, { "id": 2, "name": "Graciela Allison" } ], "greeting": "Hello, Newman Puckett! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21e1cc8877f7c9e8cd", "index": 1242, "guid": "8abae9c5-38a6-488e-a245-fd60e9557867", "isActive": false, "balance": "$3,590.20", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Sherman Dennis", "gender": "male", "company": "XANIDE", "email": "shermandennis@xanide.com", "phone": "+1 (891) 437-2651", "address": "341 Albany Avenue, Torboy, West Virginia, 6064", "about": "Cillum sit in est do nostrud sit ullamco anim aliquip sit consectetur tempor duis. Labore cillum nisi ea officia voluptate incididunt adipisicing ullamco eiusmod. Minim laborum reprehenderit amet amet in nulla quis non. Qui non ea amet consequat enim sint in voluptate sit voluptate laboris.\r\n", "registered": "2014-03-17T07:15:01-13:00", "latitude": -83.183987, "longitude": 122.762083, "tags": [ "mollit", "aliquip", "exercitation", "minim", "anim", "et", "ut" ], "friends": [ { "id": 0, "name": "Fuentes Bright" }, { "id": 1, "name": "Edwina Freeman" }, { "id": 2, "name": "Johnston Vargas" } ], "greeting": "Hello, Sherman Dennis! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2161ccc8279204d0d2", "index": 1243, "guid": "e792fb2b-3710-4a51-9cc6-58ddf56f18eb", "isActive": true, "balance": "$2,812.77", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Susie Fuentes", "gender": "female", "company": "BUZZNESS", "email": "susiefuentes@buzzness.com", "phone": "+1 (928) 466-3533", "address": "974 Farragut Place, Elizaville, Texas, 4248", "about": "Minim consequat aliquip sit reprehenderit elit qui nulla minim dolor. Eu mollit dolor aliqua mollit fugiat nulla eu Lorem laborum quis irure laborum. Voluptate nisi ipsum in sunt irure officia nisi incididunt reprehenderit ipsum occaecat consequat. Nostrud mollit reprehenderit cupidatat veniam ullamco ex incididunt.\r\n", "registered": "2014-02-21T07:39:13-13:00", "latitude": -0.661106, "longitude": -51.366799, "tags": [ "amet", "consectetur", "ut", "voluptate", "nulla", "non", "magna" ], "friends": [ { "id": 0, "name": "Shepard Giles" }, { "id": 1, "name": "Boyle Singleton" }, { "id": 2, "name": "Browning Farmer" } ], "greeting": "Hello, Susie Fuentes! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea217ce350f7d10fa79f", "index": 1244, "guid": "9f4bc7e9-1147-4227-bde8-5fe4a481dd62", "isActive": true, "balance": "$2,994.19", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Lucy Lewis", "gender": "female", "company": "VERTIDE", "email": "lucylewis@vertide.com", "phone": "+1 (843) 448-3300", "address": "552 Temple Court, Bridgetown, Oregon, 4620", "about": "Occaecat qui tempor et elit veniam et laboris fugiat elit commodo ut. Fugiat est in officia non laborum magna in consectetur. Lorem cupidatat eu id laboris eiusmod. Elit consectetur dolore ullamco fugiat in eu laboris labore. Proident nulla occaecat eu est. Quis mollit occaecat excepteur commodo esse ex enim amet laborum proident ex culpa Lorem elit. Aliquip aliqua dolor laborum nulla consectetur ullamco laboris consectetur sit.\r\n", "registered": "2014-09-08T04:05:32-12:00", "latitude": 35.150607, "longitude": 133.70927, "tags": [ "ipsum", "exercitation", "ut", "qui", "laboris", "sunt", "aliqua" ], "friends": [ { "id": 0, "name": "Shana Castaneda" }, { "id": 1, "name": "Pena Burgess" }, { "id": 2, "name": "Barr Brooks" } ], "greeting": "Hello, Lucy Lewis! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21cd3fb8f8a25ea2f6", "index": 1245, "guid": "8b338d47-8460-4fc1-a12a-8597674a5869", "isActive": false, "balance": "$2,839.98", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Nadine Boyer", "gender": "female", "company": "CALLFLEX", "email": "nadineboyer@callflex.com", "phone": "+1 (933) 492-3552", "address": "830 Wyona Street, Oley, Nevada, 7257", "about": "Labore anim occaecat excepteur elit occaecat dolor. Pariatur sint sint commodo cupidatat occaecat. Et laborum reprehenderit est excepteur laborum proident veniam. Aute et eu esse deserunt amet et anim nostrud fugiat mollit occaecat Lorem nostrud voluptate. Laboris officia adipisicing aliqua elit non labore ex Lorem.\r\n", "registered": "2014-03-04T00:45:24-13:00", "latitude": -58.318219, "longitude": -173.011036, "tags": [ "nostrud", "sit", "amet", "aliqua", "aute", "proident", "deserunt" ], "friends": [ { "id": 0, "name": "Bradshaw Cortez" }, { "id": 1, "name": "Deidre Beck" }, { "id": 2, "name": "Mavis Hurley" } ], "greeting": "Hello, Nadine Boyer! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21befa175ae3052d2c", "index": 1246, "guid": "0490e0c0-73d8-47ec-8b8b-86697fdcc59b", "isActive": true, "balance": "$1,057.19", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "James Macias", "gender": "male", "company": "ENOMEN", "email": "jamesmacias@enomen.com", "phone": "+1 (996) 416-3813", "address": "139 Madoc Avenue, Crenshaw, Minnesota, 1108", "about": "Ullamco adipisicing cillum eiusmod enim cillum exercitation deserunt est consequat eu ullamco esse. Esse do excepteur voluptate tempor officia culpa deserunt eu minim magna consequat commodo nostrud. Duis sunt laborum incididunt eu duis esse occaecat anim mollit excepteur qui. Ipsum Lorem sint ullamco fugiat et voluptate tempor. Anim irure sit laborum dolor ipsum labore nostrud irure minim magna laboris nisi culpa laboris.\r\n", "registered": "2014-06-02T04:53:28-12:00", "latitude": 60.362178, "longitude": -46.235444, "tags": [ "sit", "anim", "est", "enim", "cillum", "excepteur", "sunt" ], "friends": [ { "id": 0, "name": "Oliver Buckner" }, { "id": 1, "name": "Karin Cooke" }, { "id": 2, "name": "Marquita Garrett" } ], "greeting": "Hello, James Macias! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea217a986425542f0a47", "index": 1247, "guid": "fc4aba96-efa4-4056-b06a-cacfc0c4d362", "isActive": false, "balance": "$1,643.27", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Ayers Mcleod", "gender": "male", "company": "EVENTAGE", "email": "ayersmcleod@eventage.com", "phone": "+1 (822) 494-2359", "address": "839 Navy Street, Valle, Missouri, 1279", "about": "Quis consectetur commodo excepteur reprehenderit ut occaecat cillum veniam. Id anim cupidatat excepteur minim esse. Ullamco sunt id eiusmod duis laborum do amet veniam exercitation enim excepteur duis. Proident sint quis excepteur ipsum fugiat nisi amet magna aliqua veniam dolore commodo culpa irure. Enim aliqua commodo ullamco veniam consequat occaecat. Veniam ex Lorem voluptate excepteur labore eiusmod culpa nisi id do officia laborum incididunt. Qui labore veniam reprehenderit nisi reprehenderit amet quis Lorem mollit incididunt nisi tempor adipisicing.\r\n", "registered": "2014-03-15T01:12:26-13:00", "latitude": 63.987518, "longitude": -59.059402, "tags": [ "quis", "in", "sunt", "esse", "ex", "cillum", "ipsum" ], "friends": [ { "id": 0, "name": "Burks Mcgee" }, { "id": 1, "name": "Hatfield Horne" }, { "id": 2, "name": "Russo Kinney" } ], "greeting": "Hello, Ayers Mcleod! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea210176a8d0c642c931", "index": 1248, "guid": "9926944a-ee36-4435-a6a1-2fe770004de9", "isActive": true, "balance": "$1,359.71", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Samantha Witt", "gender": "female", "company": "IDETICA", "email": "samanthawitt@idetica.com", "phone": "+1 (963) 403-3654", "address": "669 Cumberland Walk, Jacksonwald, Rhode Island, 2457", "about": "Minim proident consectetur minim culpa amet laborum velit culpa ipsum deserunt adipisicing mollit quis voluptate. Cillum laborum proident minim mollit. Est ex reprehenderit officia et excepteur sint reprehenderit aliqua aute culpa est voluptate qui dolore.\r\n", "registered": "2014-05-14T08:49:41-12:00", "latitude": -30.774683, "longitude": -29.253982, "tags": [ "labore", "id", "labore", "culpa", "est", "laboris", "voluptate" ], "friends": [ { "id": 0, "name": "Hester Perkins" }, { "id": 1, "name": "Mejia Merrill" }, { "id": 2, "name": "Gonzalez Cherry" } ], "greeting": "Hello, Samantha Witt! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21c1b4655bc201e9ce", "index": 1249, "guid": "9181ff7c-a115-416f-b5fd-d0c2679cb894", "isActive": false, "balance": "$3,195.75", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Delores Lucas", "gender": "female", "company": "SLAMBDA", "email": "deloreslucas@slambda.com", "phone": "+1 (945) 586-3293", "address": "624 Luquer Street, Walton, Florida, 8401", "about": "Qui anim ex nostrud cupidatat mollit nisi commodo incididunt ullamco in exercitation sunt. Excepteur dolor eu do consequat eu. Officia sint exercitation proident et. Sint deserunt culpa occaecat veniam fugiat cupidatat eu deserunt labore. Aliquip commodo velit Lorem eiusmod cillum mollit pariatur irure Lorem exercitation in minim. Proident adipisicing irure velit sit fugiat elit proident sint dolor. Magna mollit excepteur ex veniam commodo enim ad ut minim.\r\n", "registered": "2014-05-22T06:16:56-12:00", "latitude": -34.810545, "longitude": 20.148225, "tags": [ "aliqua", "sit", "deserunt", "exercitation", "tempor", "excepteur", "veniam" ], "friends": [ { "id": 0, "name": "Chan Hancock" }, { "id": 1, "name": "Buckner Wilkerson" }, { "id": 2, "name": "Carroll Zamora" } ], "greeting": "Hello, Delores Lucas! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea219b7de015a1bbd1c4", "index": 1250, "guid": "5fb395fc-ec64-4b7e-8123-9841c755a3d5", "isActive": true, "balance": "$1,186.23", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Byrd Mack", "gender": "male", "company": "INVENTURE", "email": "byrdmack@inventure.com", "phone": "+1 (987) 589-3611", "address": "436 Stillwell Avenue, Westboro, North Carolina, 7096", "about": "Non consequat anim voluptate reprehenderit. Sit qui sit ea et id ullamco dolore qui in id do officia. Adipisicing deserunt enim culpa id do enim fugiat aliquip amet. Dolore ad irure nulla incididunt sint id sit veniam. Exercitation amet sunt incididunt officia dolor adipisicing excepteur dolore sit.\r\n", "registered": "2014-07-24T03:09:54-12:00", "latitude": -23.054957, "longitude": 175.688898, "tags": [ "do", "in", "elit", "velit", "mollit", "nisi", "cillum" ], "friends": [ { "id": 0, "name": "Ellison Oneill" }, { "id": 1, "name": "Maribel Lawson" }, { "id": 2, "name": "Rosario Thomas" } ], "greeting": "Hello, Byrd Mack! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21161ca90c11c7bd51", "index": 1251, "guid": "baf2b40a-f689-48e2-8a1f-9bf3d4b74198", "isActive": true, "balance": "$1,540.74", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Gayle Stein", "gender": "female", "company": "ACCUPRINT", "email": "gaylestein@accuprint.com", "phone": "+1 (980) 512-3114", "address": "642 Strauss Street, Delco, New Hampshire, 2916", "about": "Quis aliqua sunt non nulla aliquip qui consectetur laboris et. In sint nisi incididunt deserunt. Nisi velit velit magna duis do cillum nisi eu irure nostrud ipsum.\r\n", "registered": "2014-09-19T00:20:52-12:00", "latitude": -58.154086, "longitude": 164.773682, "tags": [ "consectetur", "sint", "consequat", "ea", "reprehenderit", "reprehenderit", "non" ], "friends": [ { "id": 0, "name": "Faulkner Jacobs" }, { "id": 1, "name": "Farmer Malone" }, { "id": 2, "name": "Morgan Lynch" } ], "greeting": "Hello, Gayle Stein! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2193b8d1fc3aa48342", "index": 1252, "guid": "4d617797-86fc-4f92-850e-303bd23bf52e", "isActive": false, "balance": "$2,137.02", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Davis Hendrix", "gender": "male", "company": "EWAVES", "email": "davishendrix@ewaves.com", "phone": "+1 (909) 454-2031", "address": "649 Chapel Street, Garberville, Arkansas, 3882", "about": "Ad elit esse laborum fugiat labore ut commodo excepteur irure et. Ipsum exercitation Lorem est anim excepteur et adipisicing in ea aute exercitation. Nisi laboris nostrud minim officia et voluptate sit cupidatat commodo consequat elit ex. Eu occaecat sunt consectetur sit et sint ex eiusmod incididunt.\r\n", "registered": "2014-08-06T01:07:06-12:00", "latitude": -31.048034, "longitude": 44.700477, "tags": [ "est", "cillum", "commodo", "do", "ut", "aute", "consectetur" ], "friends": [ { "id": 0, "name": "Karina Meyer" }, { "id": 1, "name": "Frank Walton" }, { "id": 2, "name": "Lewis Stanley" } ], "greeting": "Hello, Davis Hendrix! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea210e5f3842c391744b", "index": 1253, "guid": "a2007baa-38e0-470b-a84b-0692982e2ae6", "isActive": true, "balance": "$2,327.93", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Guadalupe Collins", "gender": "female", "company": "PURIA", "email": "guadalupecollins@puria.com", "phone": "+1 (934) 423-3001", "address": "656 Autumn Avenue, Gambrills, Iowa, 8343", "about": "Occaecat Lorem sunt voluptate voluptate ex dolor ad quis proident laboris dolor voluptate. Id cillum do voluptate excepteur nulla Lorem deserunt. Irure ut id ipsum Lorem deserunt do cupidatat mollit. Id labore fugiat dolore et amet consequat sit magna ipsum deserunt esse velit et consectetur. Deserunt et cillum adipisicing enim labore voluptate ad veniam.\r\n", "registered": "2014-01-04T05:08:58-13:00", "latitude": -71.650368, "longitude": 16.815032, "tags": [ "ad", "excepteur", "irure", "adipisicing", "qui", "consequat", "amet" ], "friends": [ { "id": 0, "name": "Lourdes Sosa" }, { "id": 1, "name": "Pollard Sampson" }, { "id": 2, "name": "Powers Cain" } ], "greeting": "Hello, Guadalupe Collins! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea215d2b66fa43cd4c3e", "index": 1254, "guid": "0ca70b75-26c2-4f40-a806-39f7d8f0282d", "isActive": true, "balance": "$1,512.62", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Kellie Sawyer", "gender": "female", "company": "CIRCUM", "email": "kelliesawyer@circum.com", "phone": "+1 (986) 480-3527", "address": "139 Exeter Street, Tryon, Nebraska, 7190", "about": "Officia velit nostrud sit fugiat. Irure eiusmod amet ea reprehenderit proident. Non laborum sint quis commodo consectetur ullamco aliqua dolore eiusmod quis. Anim id dolore nostrud deserunt laboris tempor et in excepteur aliquip tempor ipsum do incididunt. Lorem non duis consectetur dolor excepteur. Esse non minim ea ipsum do ipsum excepteur anim culpa nisi deserunt cupidatat tempor deserunt. Ut commodo incididunt officia nisi deserunt dolore est voluptate veniam id ex sint.\r\n", "registered": "2014-06-29T21:44:41-12:00", "latitude": -68.886522, "longitude": 2.808743, "tags": [ "ad", "nostrud", "labore", "reprehenderit", "ut", "labore", "ipsum" ], "friends": [ { "id": 0, "name": "Leach Wilder" }, { "id": 1, "name": "Pacheco Mccray" }, { "id": 2, "name": "Foster Sanford" } ], "greeting": "Hello, Kellie Sawyer! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2188b2990b650c1b42", "index": 1255, "guid": "49283ae6-915e-4149-8adf-c038de493f85", "isActive": false, "balance": "$1,177.36", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Elaine Cardenas", "gender": "female", "company": "ENTROFLEX", "email": "elainecardenas@entroflex.com", "phone": "+1 (955) 553-2726", "address": "445 Prospect Avenue, Dodge, District Of Columbia, 3454", "about": "Anim sit occaecat eiusmod enim anim non do. Eu irure aliqua non ad veniam aliqua cillum Lorem. Ullamco velit ullamco magna veniam in do. Magna sint sit tempor enim elit in eu dolor. Reprehenderit exercitation proident enim do incididunt consequat aliquip non.\r\n", "registered": "2014-01-09T14:54:46-13:00", "latitude": 85.383311, "longitude": -69.789022, "tags": [ "eiusmod", "consectetur", "ut", "incididunt", "nostrud", "est", "sunt" ], "friends": [ { "id": 0, "name": "Rodriquez Morrow" }, { "id": 1, "name": "Wyatt Livingston" }, { "id": 2, "name": "Henrietta Hamilton" } ], "greeting": "Hello, Elaine Cardenas! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea215e971b9cb64d500a", "index": 1256, "guid": "9c3aaef3-6050-467a-ba84-2f384a42468e", "isActive": true, "balance": "$3,590.75", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Jordan Shepherd", "gender": "male", "company": "CORPORANA", "email": "jordanshepherd@corporana.com", "phone": "+1 (870) 425-3231", "address": "767 Boardwalk , Oceola, New Jersey, 7161", "about": "Officia ipsum aliqua proident est consectetur do nisi. Adipisicing cillum adipisicing sunt pariatur nostrud aliquip laboris velit voluptate in consequat sint. Lorem minim adipisicing nulla ex qui pariatur velit incididunt deserunt Lorem Lorem. Nulla Lorem in voluptate sit nostrud Lorem ad sunt eu pariatur consectetur mollit consequat fugiat. Commodo irure proident veniam sunt consequat duis voluptate. Non deserunt sit qui laboris. Mollit sint consequat est ad ipsum nostrud deserunt fugiat consectetur eu ullamco.\r\n", "registered": "2014-08-08T23:04:13-12:00", "latitude": 74.167443, "longitude": 112.088622, "tags": [ "consectetur", "incididunt", "duis", "cillum", "consequat", "Lorem", "excepteur" ], "friends": [ { "id": 0, "name": "Cunningham Clayton" }, { "id": 1, "name": "Leanna Atkinson" }, { "id": 2, "name": "Montoya Clay" } ], "greeting": "Hello, Jordan Shepherd! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2179484400100d2e8a", "index": 1257, "guid": "dae6b536-783a-4fb7-822f-c53308618f78", "isActive": true, "balance": "$1,871.85", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Monroe Whitehead", "gender": "male", "company": "POLARIA", "email": "monroewhitehead@polaria.com", "phone": "+1 (966) 412-3189", "address": "328 Chestnut Street, Juarez, Palau, 8817", "about": "Ullamco sit deserunt ad tempor sit qui. Enim ad consectetur ullamco do enim duis excepteur fugiat et deserunt irure. Laborum elit excepteur est id consequat veniam aliquip commodo.\r\n", "registered": "2014-04-10T01:33:25-12:00", "latitude": 69.684053, "longitude": 51.824687, "tags": [ "consequat", "duis", "consequat", "reprehenderit", "voluptate", "cillum", "enim" ], "friends": [ { "id": 0, "name": "Bianca Rush" }, { "id": 1, "name": "Waters Hayden" }, { "id": 2, "name": "Gaines Wooten" } ], "greeting": "Hello, Monroe Whitehead! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea218c85f5f3bc26a770", "index": 1258, "guid": "913563d4-28c6-4e20-a882-4d7080796aa4", "isActive": true, "balance": "$2,872.33", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Cotton Blankenship", "gender": "male", "company": "FURNAFIX", "email": "cottonblankenship@furnafix.com", "phone": "+1 (988) 415-2904", "address": "363 Driggs Avenue, Rutherford, Puerto Rico, 4822", "about": "Deserunt aliqua ipsum incididunt sint laboris ut ad in eiusmod. Fugiat dolor ex consequat qui dolor in. Proident velit aliqua dolor minim officia reprehenderit proident exercitation quis duis eiusmod reprehenderit eiusmod. Velit occaecat fugiat irure officia et elit voluptate nisi velit. Officia fugiat veniam ut reprehenderit sint laboris ipsum veniam nostrud minim.\r\n", "registered": "2014-07-20T12:29:52-12:00", "latitude": 68.170452, "longitude": -137.343044, "tags": [ "eiusmod", "elit", "voluptate", "ullamco", "ut", "adipisicing", "aliqua" ], "friends": [ { "id": 0, "name": "Bridget Kent" }, { "id": 1, "name": "Simon Ramirez" }, { "id": 2, "name": "Rios Hardy" } ], "greeting": "Hello, Cotton Blankenship! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2179cc3bbe4ddefc21", "index": 1259, "guid": "a32d4a58-32e9-4faa-9b55-e665e94f8780", "isActive": true, "balance": "$3,299.50", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Bobbi Ross", "gender": "female", "company": "SUNCLIPSE", "email": "bobbiross@sunclipse.com", "phone": "+1 (923) 451-2405", "address": "632 Beard Street, Bethpage, California, 7994", "about": "Eu cupidatat pariatur ullamco proident ullamco officia consectetur in dolore exercitation elit. Excepteur irure officia veniam eu aliqua duis ullamco fugiat aliqua commodo velit culpa. Tempor esse aute eiusmod exercitation id aliqua et. Ea labore occaecat elit exercitation ea. Lorem mollit Lorem ea sint. Ea culpa ea laboris ex officia proident nulla. Labore enim ex aute excepteur pariatur occaecat ut aliqua duis laboris.\r\n", "registered": "2014-05-24T23:18:58-12:00", "latitude": 8.262159, "longitude": -52.819669, "tags": [ "fugiat", "ex", "enim", "deserunt", "veniam", "officia", "ea" ], "friends": [ { "id": 0, "name": "Craft Wade" }, { "id": 1, "name": "Evangelina Cunningham" }, { "id": 2, "name": "Sara Noble" } ], "greeting": "Hello, Bobbi Ross! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21fbb24b8a6032b5a4", "index": 1260, "guid": "54bbe611-5bb8-4f7b-a55e-a78ada823d95", "isActive": true, "balance": "$3,074.54", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Marietta Montgomery", "gender": "female", "company": "MOTOVATE", "email": "mariettamontgomery@motovate.com", "phone": "+1 (894) 501-3475", "address": "165 Bedford Avenue, Turah, Vermont, 1265", "about": "Labore minim Lorem quis sint commodo proident. Ea ullamco id sit aute qui consectetur est id laboris adipisicing tempor dolore. Non quis exercitation mollit ipsum labore do. Aute aute sit eiusmod consequat aliquip. Dolore consectetur anim exercitation aliqua velit enim. Laboris ad magna anim occaecat. Fugiat aliqua proident irure quis ex deserunt ex.\r\n", "registered": "2014-03-06T06:09:39-13:00", "latitude": -54.576701, "longitude": -158.881374, "tags": [ "reprehenderit", "officia", "officia", "occaecat", "tempor", "officia", "occaecat" ], "friends": [ { "id": 0, "name": "Christy Tran" }, { "id": 1, "name": "Madeleine Valdez" }, { "id": 2, "name": "Chrystal Hebert" } ], "greeting": "Hello, Marietta Montgomery! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21bb46e227ee4e3236", "index": 1261, "guid": "dd1d009c-264f-46a5-8ed8-bb1072fadf8b", "isActive": false, "balance": "$2,953.14", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Roxanne Simmons", "gender": "female", "company": "ELENTRIX", "email": "roxannesimmons@elentrix.com", "phone": "+1 (815) 482-3627", "address": "276 Union Avenue, Neahkahnie, Indiana, 1034", "about": "Quis duis est cupidatat irure ullamco qui velit consequat id. Ea in cupidatat amet id sint non cillum ea qui eiusmod. Amet eu est sunt consequat dolor labore minim culpa cillum excepteur amet.\r\n", "registered": "2014-04-19T08:24:57-12:00", "latitude": 27.961169, "longitude": -165.396568, "tags": [ "ea", "et", "culpa", "ipsum", "pariatur", "quis", "minim" ], "friends": [ { "id": 0, "name": "Juliana Fox" }, { "id": 1, "name": "Tracey Mosley" }, { "id": 2, "name": "Melanie Cole" } ], "greeting": "Hello, Roxanne Simmons! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea212797c3b0369d2152", "index": 1262, "guid": "032726b5-bc0c-4f7d-ac92-655cd42c89dc", "isActive": true, "balance": "$1,470.93", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Price Waters", "gender": "male", "company": "BLEENDOT", "email": "pricewaters@bleendot.com", "phone": "+1 (982) 506-2611", "address": "887 Classon Avenue, Verdi, Illinois, 9234", "about": "Reprehenderit aute aute excepteur cupidatat. Ullamco duis dolore veniam consectetur sit nulla adipisicing culpa. Nisi magna enim pariatur do. Nostrud aliquip consectetur magna aute tempor dolor sit elit enim. Voluptate velit deserunt est Lorem dolore non mollit non ea tempor ipsum. Ullamco ullamco ipsum Lorem sunt qui ullamco eu commodo consequat veniam adipisicing dolor ullamco.\r\n", "registered": "2014-02-14T19:20:16-13:00", "latitude": 7.023161, "longitude": -0.141502, "tags": [ "et", "cillum", "consequat", "adipisicing", "tempor", "cillum", "veniam" ], "friends": [ { "id": 0, "name": "Carver Vega" }, { "id": 1, "name": "Moore Madden" }, { "id": 2, "name": "Geraldine Bradford" } ], "greeting": "Hello, Price Waters! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2182ec827ab091eb40", "index": 1263, "guid": "57f1f582-86e2-42aa-8bce-97664444ae64", "isActive": false, "balance": "$2,763.48", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Garrison Slater", "gender": "male", "company": "ZEAM", "email": "garrisonslater@zeam.com", "phone": "+1 (938) 475-3983", "address": "698 Dobbin Street, Dixie, South Carolina, 727", "about": "Enim tempor cupidatat est deserunt commodo ut culpa commodo nostrud excepteur. Cillum incididunt deserunt cupidatat deserunt do sunt eiusmod fugiat Lorem nulla. Commodo aliqua consectetur fugiat enim ipsum. Tempor reprehenderit anim culpa dolore deserunt. Amet occaecat qui nulla nostrud irure ipsum deserunt deserunt mollit proident sint sint ut.\r\n", "registered": "2014-01-23T00:30:03-13:00", "latitude": 9.970528, "longitude": 55.327161, "tags": [ "veniam", "aliqua", "nostrud", "et", "irure", "occaecat", "fugiat" ], "friends": [ { "id": 0, "name": "Patrica Maddox" }, { "id": 1, "name": "Peterson Ward" }, { "id": 2, "name": "Thelma Rice" } ], "greeting": "Hello, Garrison Slater! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21c7586ef93feb94fc", "index": 1264, "guid": "f86e1b03-3236-4954-bc0e-7a75a88fea45", "isActive": false, "balance": "$2,980.94", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Nunez Hendricks", "gender": "male", "company": "TROPOLIS", "email": "nunezhendricks@tropolis.com", "phone": "+1 (982) 454-2616", "address": "342 Lefferts Avenue, Coral, American Samoa, 6761", "about": "Anim dolore quis minim ipsum sint anim amet aliqua incididunt. Commodo nulla elit ea magna nisi amet pariatur enim cupidatat. Dolore ex nulla et qui ad nisi mollit id.\r\n", "registered": "2014-05-02T09:20:44-12:00", "latitude": -5.877103, "longitude": 159.982564, "tags": [ "qui", "nulla", "veniam", "adipisicing", "ut", "non", "quis" ], "friends": [ { "id": 0, "name": "Dixie Morse" }, { "id": 1, "name": "Agnes James" }, { "id": 2, "name": "Lucas Griffith" } ], "greeting": "Hello, Nunez Hendricks! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21415588c6f1cd2a96", "index": 1265, "guid": "cf937c4b-faf6-49d6-9c6b-dada88a34d2c", "isActive": false, "balance": "$3,561.17", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Anne Webb", "gender": "female", "company": "TINGLES", "email": "annewebb@tingles.com", "phone": "+1 (857) 422-2307", "address": "618 Navy Walk, Rushford, Delaware, 8752", "about": "Aute exercitation dolor aliquip ad. Labore voluptate occaecat reprehenderit proident adipisicing velit aute consectetur dolore esse occaecat. Reprehenderit nisi laboris nulla fugiat dolore deserunt. Do non laborum excepteur nisi aliqua. Voluptate irure ea officia et ex eu Lorem aute laborum ex officia officia. Mollit ea magna quis sit fugiat. Sunt amet sint anim ea ipsum culpa eiusmod nulla nostrud labore proident amet tempor.\r\n", "registered": "2014-06-11T03:16:00-12:00", "latitude": -58.30655, "longitude": 6.330464, "tags": [ "occaecat", "ad", "mollit", "mollit", "incididunt", "laborum", "ut" ], "friends": [ { "id": 0, "name": "Reese Kirk" }, { "id": 1, "name": "Deleon Rutledge" }, { "id": 2, "name": "Gay Baker" } ], "greeting": "Hello, Anne Webb! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21016e4ed537406c83", "index": 1266, "guid": "566516df-0b9b-4376-99b2-7515da741c6e", "isActive": true, "balance": "$1,787.45", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Annabelle Daniels", "gender": "female", "company": "DOGNOST", "email": "annabelledaniels@dognost.com", "phone": "+1 (979) 409-2649", "address": "801 Schaefer Street, Omar, Pennsylvania, 6576", "about": "Dolor dolore culpa exercitation consectetur nisi quis enim. Pariatur aliqua cupidatat voluptate aliquip commodo elit deserunt velit ullamco irure fugiat tempor. Do aute officia sint sit amet cupidatat velit aute tempor consequat consequat laboris. In id amet mollit et elit dolor est. Ut ipsum incididunt excepteur tempor aliquip.\r\n", "registered": "2014-07-14T05:01:22-12:00", "latitude": 14.395088, "longitude": -172.923069, "tags": [ "duis", "elit", "incididunt", "consectetur", "qui", "nostrud", "exercitation" ], "friends": [ { "id": 0, "name": "Ruby Wright" }, { "id": 1, "name": "Holland Patel" }, { "id": 2, "name": "Wiggins Cook" } ], "greeting": "Hello, Annabelle Daniels! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21cb887374cbbd5a96", "index": 1267, "guid": "30790c8c-b12c-408a-be1a-3bdd66b3bee5", "isActive": false, "balance": "$2,843.76", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Elva Bullock", "gender": "female", "company": "RECOGNIA", "email": "elvabullock@recognia.com", "phone": "+1 (981) 482-2783", "address": "674 Garden Place, Helen, Georgia, 418", "about": "Et veniam adipisicing officia quis commodo quis labore nostrud incididunt ex dolor proident et occaecat. Non irure occaecat commodo ullamco velit in consequat mollit. Lorem ea dolor laborum commodo sit tempor magna eiusmod nulla culpa excepteur irure. Minim consequat amet et sit nisi labore cillum cupidatat quis veniam ullamco enim. Cillum aliquip Lorem sint ea enim. Dolor cupidatat proident esse dolore deserunt ipsum nisi officia.\r\n", "registered": "2014-09-12T00:29:27-12:00", "latitude": -41.382905, "longitude": -18.42658, "tags": [ "cillum", "deserunt", "eu", "nisi", "est", "amet", "laboris" ], "friends": [ { "id": 0, "name": "Esperanza Nicholson" }, { "id": 1, "name": "Christi Grimes" }, { "id": 2, "name": "Debra Olsen" } ], "greeting": "Hello, Elva Bullock! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea210de956357c8fadcd", "index": 1268, "guid": "faa2a002-642a-4431-ae9c-17ec813bb19a", "isActive": false, "balance": "$3,189.91", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Valarie Ramsey", "gender": "female", "company": "EXTRO", "email": "valarieramsey@extro.com", "phone": "+1 (904) 412-2978", "address": "181 Bergen Court, Urbana, North Dakota, 5371", "about": "Cillum minim elit occaecat laborum nostrud voluptate ipsum esse sint voluptate quis amet. Reprehenderit officia do qui nisi deserunt deserunt excepteur veniam esse aute dolor ullamco. Cillum qui id ex laboris eiusmod proident anim nisi proident deserunt excepteur excepteur duis. Culpa deserunt ex laborum ut minim. Qui ipsum id quis in qui consequat cupidatat ullamco nulla do tempor. Ea eu quis elit in pariatur adipisicing. Tempor veniam consectetur do occaecat occaecat irure commodo officia esse.\r\n", "registered": "2014-04-03T21:08:49-13:00", "latitude": 81.920627, "longitude": 107.166488, "tags": [ "enim", "eiusmod", "exercitation", "minim", "cupidatat", "dolor", "et" ], "friends": [ { "id": 0, "name": "Clarke Barrera" }, { "id": 1, "name": "Melinda Moses" }, { "id": 2, "name": "Stewart Huff" } ], "greeting": "Hello, Valarie Ramsey! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21a732a6e01e93d736", "index": 1269, "guid": "443f588c-18a3-4a6a-84ee-36303507b7ce", "isActive": true, "balance": "$3,273.95", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Case Mcintyre", "gender": "male", "company": "CANOPOLY", "email": "casemcintyre@canopoly.com", "phone": "+1 (815) 512-3120", "address": "828 Stillwell Place, Camino, Louisiana, 5169", "about": "Sunt magna ex adipisicing duis. Sit esse sit sit commodo reprehenderit pariatur et id. Ipsum ut veniam id eu. Et sit ut excepteur non elit aute eiusmod et et aliquip aliquip. Sint officia esse nulla velit.\r\n", "registered": "2014-03-06T19:28:04-13:00", "latitude": 8.528352, "longitude": -66.209311, "tags": [ "nostrud", "anim", "commodo", "ad", "in", "est", "sit" ], "friends": [ { "id": 0, "name": "Margaret Hicks" }, { "id": 1, "name": "Adrienne Carlson" }, { "id": 2, "name": "Santana Ayers" } ], "greeting": "Hello, Case Mcintyre! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea210f92c150406ba519", "index": 1270, "guid": "81b55dff-6d96-43e5-a149-6941b724f539", "isActive": true, "balance": "$1,326.22", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Angelia Leach", "gender": "female", "company": "SEALOUD", "email": "angelialeach@sealoud.com", "phone": "+1 (850) 497-2126", "address": "164 Hastings Street, Maury, Northern Mariana Islands, 6754", "about": "Et sit cupidatat ut sunt deserunt minim aliqua non ut consectetur. Sint consectetur enim incididunt quis aliquip. Qui id velit eiusmod eu id officia qui magna. Non elit excepteur quis laboris. Minim aliqua aliqua ex adipisicing ad amet amet Lorem amet non adipisicing exercitation cupidatat.\r\n", "registered": "2014-04-17T09:38:05-12:00", "latitude": 13.362492, "longitude": -147.693277, "tags": [ "ullamco", "ex", "nostrud", "ullamco", "reprehenderit", "ut", "ea" ], "friends": [ { "id": 0, "name": "Kathrine Lyons" }, { "id": 1, "name": "Delaney Robles" }, { "id": 2, "name": "Lawrence Curry" } ], "greeting": "Hello, Angelia Leach! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea210a17fa517bad0952", "index": 1271, "guid": "2b662bd1-dde2-4de4-a53f-2c49031b54f4", "isActive": false, "balance": "$1,321.59", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Essie Marquez", "gender": "female", "company": "NAMEGEN", "email": "essiemarquez@namegen.com", "phone": "+1 (858) 593-3005", "address": "147 Pacific Street, Marshall, Colorado, 1766", "about": "Aliqua consequat adipisicing minim aute consequat ullamco nulla duis magna ex deserunt nulla. Ea adipisicing amet voluptate dolor elit reprehenderit qui. Sint aliqua velit cillum tempor aliquip consequat sunt esse proident laborum sunt proident culpa officia. Sunt elit nulla duis mollit esse cillum reprehenderit adipisicing ad. Esse do sunt ut ut consectetur occaecat veniam velit nisi elit esse Lorem cillum.\r\n", "registered": "2014-03-25T11:24:20-13:00", "latitude": -86.588947, "longitude": -141.115999, "tags": [ "incididunt", "dolore", "deserunt", "irure", "laborum", "officia", "minim" ], "friends": [ { "id": 0, "name": "Lauri Acevedo" }, { "id": 1, "name": "Barker Reeves" }, { "id": 2, "name": "Snyder Irwin" } ], "greeting": "Hello, Essie Marquez! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21abd5c9625b66acda", "index": 1272, "guid": "7a38ca59-7b34-4c70-82fa-1b72cc6cef8e", "isActive": false, "balance": "$1,705.92", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Stephenson Terrell", "gender": "male", "company": "GEOLOGIX", "email": "stephensonterrell@geologix.com", "phone": "+1 (804) 545-3403", "address": "994 Covert Street, Lookingglass, Idaho, 508", "about": "Minim id voluptate labore incididunt. Mollit qui est aute laborum consectetur pariatur. Lorem eiusmod officia labore ex dolor ea enim. Sunt sint aliqua fugiat consequat id incididunt irure eu anim. Ipsum excepteur laboris Lorem et sunt fugiat id. In elit amet pariatur nulla laboris. Dolore aute proident dolor nulla ex.\r\n", "registered": "2014-03-20T20:44:26-13:00", "latitude": 53.984069, "longitude": 31.233948, "tags": [ "quis", "proident", "in", "elit", "sint", "commodo", "labore" ], "friends": [ { "id": 0, "name": "Patrice Schmidt" }, { "id": 1, "name": "Branch Delaney" }, { "id": 2, "name": "Shelia Wyatt" } ], "greeting": "Hello, Stephenson Terrell! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21277a97412c3a6e45", "index": 1273, "guid": "67f015d4-2312-41e1-9e7f-eb7b56ac901e", "isActive": false, "balance": "$1,873.11", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Mckee Lindsey", "gender": "male", "company": "PROTODYNE", "email": "mckeelindsey@protodyne.com", "phone": "+1 (950) 413-3902", "address": "726 Fillmore Avenue, Holtville, Marshall Islands, 8648", "about": "Ea duis deserunt dolor exercitation proident. Occaecat quis nulla quis Lorem fugiat duis amet reprehenderit sunt enim. Ea est aliqua ipsum adipisicing ipsum cillum nulla fugiat cillum sunt id sunt.\r\n", "registered": "2014-08-07T01:45:23-12:00", "latitude": 85.061304, "longitude": 44.918754, "tags": [ "nostrud", "irure", "nulla", "culpa", "proident", "non", "velit" ], "friends": [ { "id": 0, "name": "Holden Head" }, { "id": 1, "name": "Morales Morrison" }, { "id": 2, "name": "Middleton Crawford" } ], "greeting": "Hello, Mckee Lindsey! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21232b0445377671c6", "index": 1274, "guid": "1daa3bf1-707b-43f4-921b-3b6211b7f124", "isActive": false, "balance": "$3,419.92", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Garcia Espinoza", "gender": "male", "company": "COGNICODE", "email": "garciaespinoza@cognicode.com", "phone": "+1 (832) 600-3710", "address": "533 Dahlgreen Place, Leeper, New York, 9013", "about": "Sunt proident exercitation cillum ut consectetur magna sunt ipsum excepteur. Pariatur officia deserunt excepteur laboris qui reprehenderit. Sunt magna aliqua occaecat duis mollit ipsum magna nulla. Sunt aliqua aliqua eiusmod ad Lorem in ullamco esse nisi. Qui laboris sint eu aute.\r\n", "registered": "2014-05-08T17:02:16-12:00", "latitude": -81.089968, "longitude": 49.913639, "tags": [ "tempor", "laborum", "commodo", "id", "quis", "officia", "aliqua" ], "friends": [ { "id": 0, "name": "Cleo Sullivan" }, { "id": 1, "name": "Tate Day" }, { "id": 2, "name": "Morrow Harmon" } ], "greeting": "Hello, Garcia Espinoza! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21b14e0589c64e28f6", "index": 1275, "guid": "be02d30b-ade8-4fb2-b603-4e06d187ef25", "isActive": true, "balance": "$1,327.40", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Silva English", "gender": "male", "company": "XINWARE", "email": "silvaenglish@xinware.com", "phone": "+1 (886) 441-2427", "address": "839 Lenox Road, Sardis, Guam, 6977", "about": "Labore aute amet sunt consequat aute mollit aute culpa ex eu officia tempor velit. Nisi sunt excepteur occaecat ipsum elit aute adipisicing commodo commodo. Quis laboris magna anim voluptate deserunt aliquip quis do laboris sint fugiat. In exercitation ullamco veniam nisi officia tempor deserunt anim nulla cillum et laborum sit aliqua. Irure culpa aute aliquip aliqua enim voluptate mollit Lorem nulla id.\r\n", "registered": "2014-06-23T05:40:04-12:00", "latitude": -27.542534, "longitude": 49.053501, "tags": [ "deserunt", "eu", "sit", "cillum", "est", "anim", "sunt" ], "friends": [ { "id": 0, "name": "Rutledge Buckley" }, { "id": 1, "name": "Lelia Haley" }, { "id": 2, "name": "Sonya Mullen" } ], "greeting": "Hello, Silva English! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21f48c7ea342f99f01", "index": 1276, "guid": "bf2374cc-e5b8-463a-a16a-a24dd3a8bd07", "isActive": true, "balance": "$3,504.43", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Morris Bray", "gender": "male", "company": "SIGNITY", "email": "morrisbray@signity.com", "phone": "+1 (963) 530-2037", "address": "575 Post Court, Condon, Virgin Islands, 3547", "about": "Deserunt ipsum qui qui Lorem nostrud do anim Lorem officia consectetur aute ipsum aliqua adipisicing. Sunt nisi commodo ullamco aliqua anim laborum enim. Sit irure consectetur dolor et ea adipisicing cillum exercitation. Ut consequat nisi laborum enim proident non veniam. Adipisicing qui Lorem aute enim eiusmod nulla reprehenderit anim. Et adipisicing sunt est aute laborum. Consequat elit ea veniam nostrud.\r\n", "registered": "2014-01-17T21:08:49-13:00", "latitude": 79.709353, "longitude": -84.693786, "tags": [ "labore", "veniam", "culpa", "ipsum", "aliqua", "sunt", "incididunt" ], "friends": [ { "id": 0, "name": "Ava Gay" }, { "id": 1, "name": "Christie Pitts" }, { "id": 2, "name": "Hewitt Vance" } ], "greeting": "Hello, Morris Bray! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21046894f8ec9022fd", "index": 1277, "guid": "34876145-81f7-4372-add1-d6efa3857e33", "isActive": false, "balance": "$3,311.08", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Morin Kidd", "gender": "male", "company": "CENTREGY", "email": "morinkidd@centregy.com", "phone": "+1 (972) 550-3215", "address": "665 Lincoln Road, Muse, Massachusetts, 7814", "about": "Sint dolore sunt commodo nulla ad officia aute dolore irure reprehenderit ex labore labore. Aliquip nulla proident commodo ullamco magna et duis. Incididunt laborum anim amet commodo Lorem in. Non eu proident ea dolore sint tempor ut laboris enim aute. Adipisicing occaecat enim tempor duis.\r\n", "registered": "2014-06-23T17:25:06-12:00", "latitude": -85.326671, "longitude": -13.775693, "tags": [ "deserunt", "irure", "Lorem", "eu", "labore", "dolor", "minim" ], "friends": [ { "id": 0, "name": "Gill Bridges" }, { "id": 1, "name": "Mallory Alford" }, { "id": 2, "name": "Dalton Riley" } ], "greeting": "Hello, Morin Kidd! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea218a34e3f2239e4bed", "index": 1278, "guid": "ac566ec5-96f0-4c00-a40a-6a0cc51df1bd", "isActive": false, "balance": "$2,666.33", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Walter Brennan", "gender": "male", "company": "BLEEKO", "email": "walterbrennan@bleeko.com", "phone": "+1 (869) 547-3048", "address": "927 Virginia Place, Wiscon, Utah, 8903", "about": "Culpa anim tempor exercitation enim sit id Lorem voluptate voluptate laborum. Nulla ipsum voluptate tempor incididunt anim do exercitation exercitation aliquip tempor ut excepteur incididunt. Pariatur nulla aliqua labore laborum dolor. Aliqua id culpa reprehenderit minim. Commodo sit veniam dolor et excepteur eu esse elit esse duis duis. Mollit cillum excepteur ex sit magna est adipisicing cillum.\r\n", "registered": "2014-08-06T20:21:44-12:00", "latitude": -14.448736, "longitude": 121.091596, "tags": [ "ad", "ex", "dolore", "elit", "velit", "veniam", "excepteur" ], "friends": [ { "id": 0, "name": "Kristen Austin" }, { "id": 1, "name": "Pauline Oneil" }, { "id": 2, "name": "Diane Richard" } ], "greeting": "Hello, Walter Brennan! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21ff27b94cef246bb7", "index": 1279, "guid": "d1c961ac-995b-4f82-9148-ca91da0bb62c", "isActive": false, "balance": "$2,761.90", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Alyson Casey", "gender": "female", "company": "BALOOBA", "email": "alysoncasey@balooba.com", "phone": "+1 (804) 571-2325", "address": "489 Baltic Street, Windsor, Montana, 9037", "about": "Quis sint incididunt sit et sit reprehenderit non mollit cupidatat. Ea Lorem nostrud deserunt in ea consectetur. Qui incididunt adipisicing magna duis sint tempor officia et tempor labore. Aute proident anim qui officia ea excepteur proident ex anim magna.\r\n", "registered": "2014-08-19T00:09:13-12:00", "latitude": 46.453044, "longitude": -3.873711, "tags": [ "sint", "ex", "ipsum", "laboris", "deserunt", "deserunt", "incididunt" ], "friends": [ { "id": 0, "name": "Kris Figueroa" }, { "id": 1, "name": "Dunlap Gallagher" }, { "id": 2, "name": "Reyes Copeland" } ], "greeting": "Hello, Alyson Casey! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21353861f49e0c4d79", "index": 1280, "guid": "7f13f4d8-50f8-4d4c-915d-bc4a1df9bad9", "isActive": false, "balance": "$3,161.93", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Evelyn Gould", "gender": "female", "company": "MAGNAFONE", "email": "evelyngould@magnafone.com", "phone": "+1 (824) 445-3523", "address": "790 Nassau Street, Wanamie, Wisconsin, 1093", "about": "Qui sit voluptate excepteur elit tempor veniam Lorem minim et ullamco ex eu. Laborum fugiat cupidatat adipisicing est esse mollit qui qui. Mollit eiusmod enim tempor voluptate voluptate anim velit Lorem deserunt duis commodo deserunt consequat. Aute mollit voluptate incididunt consectetur irure deserunt sint. Irure qui in incididunt veniam commodo nisi dolor cillum est.\r\n", "registered": "2014-02-23T16:26:10-13:00", "latitude": -37.66344, "longitude": -163.851155, "tags": [ "ipsum", "elit", "ipsum", "sint", "pariatur", "aliquip", "quis" ], "friends": [ { "id": 0, "name": "Natalie Sellers" }, { "id": 1, "name": "Bobbie Long" }, { "id": 2, "name": "Vaughn Barnett" } ], "greeting": "Hello, Evelyn Gould! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21240c3722c1bbb845", "index": 1281, "guid": "67f830a8-0c07-47cb-8a25-e4ef047d5bca", "isActive": false, "balance": "$3,066.20", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Brooke Morin", "gender": "female", "company": "AQUASURE", "email": "brookemorin@aquasure.com", "phone": "+1 (807) 587-2911", "address": "591 Livonia Avenue, Trucksville, Maine, 4500", "about": "Labore consequat magna est do deserunt officia commodo enim quis. Ut mollit cillum adipisicing commodo irure consectetur pariatur enim mollit nostrud eu. Amet cupidatat tempor aliqua dolore velit et nisi labore velit duis adipisicing culpa qui duis. Duis do et dolore proident nulla. Aliqua proident ad id occaecat magna. Id sit veniam consectetur proident eiusmod incididunt qui laborum aliqua mollit pariatur.\r\n", "registered": "2014-04-24T10:05:14-12:00", "latitude": -21.482649, "longitude": 57.205713, "tags": [ "voluptate", "aute", "officia", "sit", "et", "eu", "eiusmod" ], "friends": [ { "id": 0, "name": "Rosalinda Scott" }, { "id": 1, "name": "Kirkland Prince" }, { "id": 2, "name": "Benson Ryan" } ], "greeting": "Hello, Brooke Morin! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea213d93ffe567cf2bf5", "index": 1282, "guid": "3fd12069-4452-4d1c-8052-8054cb5e258c", "isActive": false, "balance": "$2,510.48", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Shawn Knox", "gender": "female", "company": "SPRINGBEE", "email": "shawnknox@springbee.com", "phone": "+1 (954) 431-3258", "address": "939 Voorhies Avenue, Robinson, Virginia, 5001", "about": "Aliquip tempor est do excepteur ut nostrud ut irure nostrud. Laborum exercitation nostrud aute velit laborum aute. Ex laboris enim nostrud exercitation aute. Sunt excepteur nisi occaecat nisi ex Lorem esse cupidatat est nostrud sunt mollit sunt et. Qui anim esse dolor ea amet esse id est nulla. Quis duis reprehenderit in elit aute fugiat mollit.\r\n", "registered": "2014-06-03T08:09:02-12:00", "latitude": 77.301061, "longitude": 136.607802, "tags": [ "irure", "duis", "eu", "ad", "et", "tempor", "sunt" ], "friends": [ { "id": 0, "name": "Nelda Yang" }, { "id": 1, "name": "Sallie Baldwin" }, { "id": 2, "name": "Chandler Hall" } ], "greeting": "Hello, Shawn Knox! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21cc0f5775d4e6ae3b", "index": 1283, "guid": "8b532e0d-3450-4c4e-ad13-f007068576a9", "isActive": false, "balance": "$1,125.62", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Bass Joyner", "gender": "male", "company": "QUARMONY", "email": "bassjoyner@quarmony.com", "phone": "+1 (947) 493-3589", "address": "140 Norman Avenue, Dahlen, Kentucky, 1254", "about": "Dolor do elit mollit ad ut est. Anim ea excepteur velit est. Sunt aliqua ad laborum aute mollit occaecat laborum fugiat dolore pariatur eiusmod id aute Lorem.\r\n", "registered": "2014-09-12T18:11:42-12:00", "latitude": 84.83297, "longitude": 7.525135, "tags": [ "fugiat", "est", "aliqua", "voluptate", "est", "do", "laborum" ], "friends": [ { "id": 0, "name": "Bender Goodwin" }, { "id": 1, "name": "Lucille Munoz" }, { "id": 2, "name": "Florence Bush" } ], "greeting": "Hello, Bass Joyner! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea215bf94c1b7c600a49", "index": 1284, "guid": "893cf624-f35d-4746-8bf8-06eaa7daa81f", "isActive": true, "balance": "$1,625.44", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Luann Ramos", "gender": "female", "company": "CONFRENZY", "email": "luannramos@confrenzy.com", "phone": "+1 (929) 507-2834", "address": "421 Ryder Avenue, Kraemer, Connecticut, 6940", "about": "Eu ea ipsum non officia fugiat excepteur. Aliquip cillum ullamco aliqua do incididunt aliqua elit ex incididunt. Officia culpa quis velit elit consectetur cillum dolor do aute ipsum elit ipsum. Eiusmod ut deserunt elit proident adipisicing nisi elit magna sit commodo nulla.\r\n", "registered": "2014-08-06T22:42:57-12:00", "latitude": -38.472553, "longitude": 167.125712, "tags": [ "incididunt", "proident", "magna", "ipsum", "aliquip", "velit", "nisi" ], "friends": [ { "id": 0, "name": "York Wagner" }, { "id": 1, "name": "Helen Sandoval" }, { "id": 2, "name": "Lakisha Bentley" } ], "greeting": "Hello, Luann Ramos! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea214cb9faa07d71530e", "index": 1285, "guid": "2ab3ac82-c2a8-4b47-9982-c476839e785c", "isActive": true, "balance": "$3,440.74", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Graves Skinner", "gender": "male", "company": "ECLIPTO", "email": "gravesskinner@eclipto.com", "phone": "+1 (927) 562-3534", "address": "626 Grant Avenue, Gadsden, Mississippi, 9270", "about": "Velit incididunt adipisicing ad duis eiusmod laboris quis deserunt. Duis ipsum aliqua nulla pariatur. Amet eu anim fugiat qui aliquip. Dolore dolor ut qui amet ea cillum id.\r\n", "registered": "2014-06-17T02:00:59-12:00", "latitude": -73.54683, "longitude": -61.101833, "tags": [ "sunt", "qui", "dolor", "ex", "mollit", "dolor", "est" ], "friends": [ { "id": 0, "name": "Atkinson Sharpe" }, { "id": 1, "name": "Chapman Hull" }, { "id": 2, "name": "Jami Carney" } ], "greeting": "Hello, Graves Skinner! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21c09bc61a7afc4d43", "index": 1286, "guid": "e1e8ad9c-ef03-4f7d-bd3c-7a4d9fbbda00", "isActive": false, "balance": "$3,937.38", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "English Heath", "gender": "male", "company": "CODACT", "email": "englishheath@codact.com", "phone": "+1 (890) 457-3343", "address": "188 Highland Avenue, Williston, Washington, 3290", "about": "Laborum sit enim id exercitation anim minim esse qui consequat nulla nisi occaecat aute. Laborum et culpa magna elit reprehenderit amet cupidatat. Lorem duis esse duis tempor consectetur qui. Ex commodo proident sit eiusmod nostrud deserunt ea consequat in nisi reprehenderit aute adipisicing ut.\r\n", "registered": "2014-02-02T19:27:52-13:00", "latitude": 51.00223, "longitude": -174.764783, "tags": [ "ut", "pariatur", "ullamco", "id", "magna", "est", "pariatur" ], "friends": [ { "id": 0, "name": "Janice Ortega" }, { "id": 1, "name": "Darlene Charles" }, { "id": 2, "name": "Tabatha Hill" } ], "greeting": "Hello, English Heath! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea212073d7ca5eaf7fc2", "index": 1287, "guid": "5f5eb700-d2bf-4065-9d2c-8b5c58f04c10", "isActive": false, "balance": "$1,129.48", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Horn Thompson", "gender": "male", "company": "SKYPLEX", "email": "hornthompson@skyplex.com", "phone": "+1 (817) 581-2425", "address": "636 Wolf Place, Corinne, Tennessee, 8347", "about": "Nisi ullamco fugiat amet laboris eiusmod nulla Lorem qui minim ad. Qui cillum laboris qui esse reprehenderit nulla adipisicing voluptate. Tempor ad laboris sunt qui est eiusmod eu sint consectetur. Esse anim aliquip fugiat sint nisi. Fugiat irure cillum fugiat ut. Occaecat officia nulla quis minim do. Nisi deserunt cillum exercitation occaecat et ex anim.\r\n", "registered": "2014-04-07T06:34:50-12:00", "latitude": -81.894889, "longitude": 47.319775, "tags": [ "ea", "consectetur", "occaecat", "reprehenderit", "excepteur", "dolore", "elit" ], "friends": [ { "id": 0, "name": "Lea Huffman" }, { "id": 1, "name": "Murphy Bishop" }, { "id": 2, "name": "Veronica Jimenez" } ], "greeting": "Hello, Horn Thompson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21d2808b939ae672f8", "index": 1288, "guid": "e82eaf05-5f59-4464-a655-65d7d600330e", "isActive": false, "balance": "$2,978.52", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Loretta Morris", "gender": "female", "company": "ZOARERE", "email": "lorettamorris@zoarere.com", "phone": "+1 (866) 481-2671", "address": "842 Knickerbocker Avenue, Bannock, Alabama, 9364", "about": "Cillum enim nisi quis adipisicing fugiat id duis eiusmod eiusmod incididunt Lorem ea amet dolore. Nisi culpa amet anim est. Est magna reprehenderit do duis anim. Non dolore elit Lorem fugiat amet do nostrud quis culpa amet nostrud. Ex tempor Lorem dolore aliqua cillum sit commodo magna cupidatat. Eu anim ullamco adipisicing aliqua.\r\n", "registered": "2014-06-05T00:17:59-12:00", "latitude": 73.518398, "longitude": 158.678807, "tags": [ "sint", "elit", "aliquip", "eiusmod", "officia", "enim", "nulla" ], "friends": [ { "id": 0, "name": "Angelita Gentry" }, { "id": 1, "name": "Roseann Estes" }, { "id": 2, "name": "Helga Tate" } ], "greeting": "Hello, Loretta Morris! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21b979e50f5da21a48", "index": 1289, "guid": "cd2f3636-4647-401e-9384-57e5edd5d34e", "isActive": true, "balance": "$1,831.41", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Shirley Tyson", "gender": "female", "company": "ZIDOX", "email": "shirleytyson@zidox.com", "phone": "+1 (831) 534-3791", "address": "820 Melrose Street, Ellerslie, Ohio, 7271", "about": "Ea aliqua fugiat consequat ea exercitation adipisicing exercitation tempor. Esse sint est elit cillum proident aliqua laboris. Sunt adipisicing aliquip reprehenderit adipisicing pariatur culpa do ea officia sit aliqua deserunt reprehenderit et. Mollit eu sit ullamco exercitation cillum eiusmod adipisicing amet deserunt ipsum. Mollit ut eu aliquip est nostrud eu in commodo anim. Ipsum voluptate ex dolor velit exercitation ex adipisicing anim ad qui voluptate est aliqua sint. Non pariatur nulla non deserunt proident culpa.\r\n", "registered": "2014-09-11T05:53:21-12:00", "latitude": 63.34479, "longitude": -79.089024, "tags": [ "do", "adipisicing", "id", "ea", "veniam", "aliquip", "exercitation" ], "friends": [ { "id": 0, "name": "Nina Stanton" }, { "id": 1, "name": "Prince Pope" }, { "id": 2, "name": "Charlene Galloway" } ], "greeting": "Hello, Shirley Tyson! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea219d3e860685bbdd6f", "index": 1290, "guid": "cc91efc8-d2e2-41de-89eb-78bdd3f0f3be", "isActive": false, "balance": "$3,669.20", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Helena Compton", "gender": "female", "company": "BOILICON", "email": "helenacompton@boilicon.com", "phone": "+1 (844) 545-2431", "address": "629 Schweikerts Walk, Graniteville, Hawaii, 2554", "about": "Sint ut laboris non in in aute voluptate veniam excepteur elit magna. Aliquip et esse commodo est. Est veniam ipsum nostrud nulla deserunt.\r\n", "registered": "2014-06-11T19:09:11-12:00", "latitude": -12.601705, "longitude": -127.014203, "tags": [ "est", "non", "adipisicing", "culpa", "laborum", "exercitation", "anim" ], "friends": [ { "id": 0, "name": "Clarissa Morgan" }, { "id": 1, "name": "Simpson Meadows" }, { "id": 2, "name": "Lucile Paul" } ], "greeting": "Hello, Helena Compton! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21f9d900f444207b2d", "index": 1291, "guid": "9111b6f8-038b-4ea4-80b1-4946bda82fb8", "isActive": false, "balance": "$2,804.75", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Lacy Browning", "gender": "female", "company": "OBONES", "email": "lacybrowning@obones.com", "phone": "+1 (835) 476-3119", "address": "575 Bay Avenue, Broadlands, New Mexico, 5704", "about": "Do consequat est labore in consectetur. Do aliqua dolore amet duis. Ullamco fugiat cupidatat quis nulla ad Lorem fugiat reprehenderit anim aliqua occaecat ipsum aute. Nulla ad adipisicing consequat reprehenderit Lorem cupidatat. Proident consequat in aliquip Lorem ea aute dolor. Aute aliquip nostrud elit aliqua esse enim ipsum veniam eu.\r\n", "registered": "2014-01-07T09:42:16-13:00", "latitude": -22.285026, "longitude": -133.204505, "tags": [ "cillum", "ullamco", "et", "est", "nostrud", "minim", "quis" ], "friends": [ { "id": 0, "name": "Petersen Knapp" }, { "id": 1, "name": "Teri Santos" }, { "id": 2, "name": "Frances Frank" } ], "greeting": "Hello, Lacy Browning! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2197c4e9faae64fb4d", "index": 1292, "guid": "fef41644-d887-4f97-b756-760bcc13c55c", "isActive": true, "balance": "$2,254.15", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Bonner Bird", "gender": "male", "company": "PETICULAR", "email": "bonnerbird@peticular.com", "phone": "+1 (910) 420-2311", "address": "778 Rodney Street, Longoria, Maryland, 9714", "about": "Nostrud laboris ex duis in incididunt ad labore sunt est in. Est dolor aute incididunt est. Sint fugiat consectetur officia nostrud adipisicing Lorem duis ipsum est consectetur.\r\n", "registered": "2014-09-15T01:51:13-12:00", "latitude": -30.939451, "longitude": 114.888796, "tags": [ "tempor", "commodo", "magna", "est", "sint", "duis", "in" ], "friends": [ { "id": 0, "name": "Stephens Bryan" }, { "id": 1, "name": "Juliet Joyce" }, { "id": 2, "name": "Higgins Wilcox" } ], "greeting": "Hello, Bonner Bird! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21a45db96260c26c40", "index": 1293, "guid": "7a1800e5-2239-4851-a104-c23826db6465", "isActive": true, "balance": "$2,005.77", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Mays Dawson", "gender": "male", "company": "VENDBLEND", "email": "maysdawson@vendblend.com", "phone": "+1 (941) 586-3714", "address": "253 Chauncey Street, Innsbrook, Alaska, 7044", "about": "Id quis Lorem est est qui. Cupidatat consectetur ex amet consectetur anim laboris. Mollit excepteur mollit labore aute ipsum. Dolore nulla adipisicing pariatur ut officia. Amet eiusmod labore officia incididunt magna aute laborum fugiat velit ut adipisicing. Ut quis excepteur adipisicing reprehenderit dolor eiusmod dolore velit culpa excepteur pariatur. Officia anim commodo enim irure culpa est esse adipisicing et qui mollit elit ea minim.\r\n", "registered": "2014-08-11T23:35:48-12:00", "latitude": 60.879455, "longitude": 131.303116, "tags": [ "exercitation", "eu", "cillum", "officia", "sit", "irure", "velit" ], "friends": [ { "id": 0, "name": "Lizzie Glover" }, { "id": 1, "name": "Phillips Mcknight" }, { "id": 2, "name": "Bertha Harris" } ], "greeting": "Hello, Mays Dawson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2183418b70e4386059", "index": 1294, "guid": "b723c811-b15b-4b15-887d-7fef2afa909d", "isActive": false, "balance": "$2,426.19", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Bell Price", "gender": "male", "company": "PORTICA", "email": "bellprice@portica.com", "phone": "+1 (927) 564-2813", "address": "730 Malta Street, Curtice, Arizona, 2405", "about": "Adipisicing commodo reprehenderit minim non aliqua elit labore ullamco. Aute labore eu dolor ullamco deserunt laboris commodo dolore nostrud laborum est ullamco. Tempor voluptate mollit sit in. Minim minim ad et culpa.\r\n", "registered": "2014-03-26T00:08:17-13:00", "latitude": 11.34031, "longitude": 26.285915, "tags": [ "quis", "elit", "aliqua", "et", "amet", "incididunt", "fugiat" ], "friends": [ { "id": 0, "name": "Phyllis Mckee" }, { "id": 1, "name": "Thomas Mcguire" }, { "id": 2, "name": "Clara Gray" } ], "greeting": "Hello, Bell Price! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21f5fac446db8e973c", "index": 1295, "guid": "7d62aef2-ef12-4227-8a55-a025724ce554", "isActive": true, "balance": "$3,750.06", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Cantu Sheppard", "gender": "male", "company": "RUGSTARS", "email": "cantusheppard@rugstars.com", "phone": "+1 (903) 517-3093", "address": "402 Boerum Place, Florence, Federated States Of Micronesia, 8259", "about": "Magna adipisicing cillum ad in do excepteur. Irure quis velit labore tempor irure eu tempor nostrud do proident veniam tempor occaecat. Aliquip occaecat nulla amet occaecat mollit consectetur do consequat. Occaecat cillum incididunt id ipsum labore incididunt elit nulla commodo sunt. Cillum ut ex in ullamco. Eiusmod anim duis incididunt excepteur commodo deserunt aute occaecat aute sint officia elit.\r\n", "registered": "2014-03-22T07:17:08-13:00", "latitude": 45.985669, "longitude": 55.156545, "tags": [ "aute", "amet", "qui", "esse", "sint", "deserunt", "est" ], "friends": [ { "id": 0, "name": "Mia Kaufman" }, { "id": 1, "name": "Neal Chavez" }, { "id": 2, "name": "Thompson Nichols" } ], "greeting": "Hello, Cantu Sheppard! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2107f985865515cfe6", "index": 1296, "guid": "6948c331-af29-4a5d-b7d7-60bc50f0486f", "isActive": true, "balance": "$3,572.59", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Patricia Mathews", "gender": "female", "company": "RECRITUBE", "email": "patriciamathews@recritube.com", "phone": "+1 (989) 448-2648", "address": "815 Cypress Court, Tecolotito, Oklahoma, 3479", "about": "Occaecat esse est et exercitation est dolor aliquip irure ullamco Lorem tempor dolore amet velit. Amet est ullamco non dolor ad voluptate in laboris aliqua ad. Et occaecat ea eu velit eiusmod. Sint laboris in duis occaecat aliquip elit sunt excepteur ipsum. Aliquip anim quis ea tempor culpa nisi enim ex eu cupidatat magna deserunt eu cupidatat. Minim est non ipsum laborum et ad commodo dolore velit deserunt eu in consectetur mollit.\r\n", "registered": "2014-03-07T05:47:41-13:00", "latitude": -86.645023, "longitude": 4.464973, "tags": [ "tempor", "ex", "dolore", "sint", "id", "deserunt", "adipisicing" ], "friends": [ { "id": 0, "name": "Janet Young" }, { "id": 1, "name": "Romero Santana" }, { "id": 2, "name": "Latoya Mcneil" } ], "greeting": "Hello, Patricia Mathews! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21f36107d3b7dff63d", "index": 1297, "guid": "aa40f16b-cd2d-489a-a977-07d40d391e4a", "isActive": false, "balance": "$2,359.41", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Banks Lang", "gender": "male", "company": "COSMOSIS", "email": "bankslang@cosmosis.com", "phone": "+1 (956) 409-2843", "address": "673 Ebony Court, Martell, Michigan, 2806", "about": "Proident reprehenderit dolore sunt in minim id sunt anim. In laboris irure ad id elit enim sit eiusmod nisi amet quis. Et ut ex est elit amet mollit duis consectetur est aliqua eiusmod. Minim aute elit qui ex enim cillum laboris culpa anim. Cillum duis Lorem nostrud in voluptate aliquip.\r\n", "registered": "2014-07-14T23:27:16-12:00", "latitude": -39.380304, "longitude": 154.172259, "tags": [ "aliquip", "consectetur", "fugiat", "officia", "quis", "mollit", "sit" ], "friends": [ { "id": 0, "name": "Alice Obrien" }, { "id": 1, "name": "Hillary Todd" }, { "id": 2, "name": "Sellers Holcomb" } ], "greeting": "Hello, Banks Lang! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea212ddeabe1f307c55c", "index": 1298, "guid": "ad52da6c-14f2-4e91-9a35-e95f7350c977", "isActive": true, "balance": "$3,365.88", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Pate Bolton", "gender": "male", "company": "ULTRIMAX", "email": "patebolton@ultrimax.com", "phone": "+1 (879) 481-2093", "address": "148 Sumner Place, Hebron, Kansas, 6589", "about": "Adipisicing deserunt quis amet velit fugiat aliqua ad. Consectetur pariatur exercitation sint anim adipisicing amet voluptate mollit ea est sit dolor. In commodo incididunt culpa ullamco adipisicing qui irure anim adipisicing dolore officia enim in eu. Duis proident nulla occaecat non velit exercitation.\r\n", "registered": "2014-04-25T18:39:22-12:00", "latitude": 36.124681, "longitude": 76.245985, "tags": [ "officia", "ea", "amet", "pariatur", "voluptate", "aliqua", "minim" ], "friends": [ { "id": 0, "name": "Janette Wise" }, { "id": 1, "name": "Muriel Humphrey" }, { "id": 2, "name": "Justine Mclean" } ], "greeting": "Hello, Pate Bolton! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21dc9280c4caf72cb4", "index": 1299, "guid": "1f1da679-5a2b-46f6-bc56-ed086b404ad9", "isActive": true, "balance": "$3,109.14", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Stevenson Calhoun", "gender": "male", "company": "EXTREMO", "email": "stevensoncalhoun@extremo.com", "phone": "+1 (833) 465-3739", "address": "318 Madison Place, Machias, South Dakota, 978", "about": "Eiusmod ipsum do aliquip Lorem labore dolor reprehenderit laborum elit velit aliqua est officia. Cupidatat consectetur ipsum qui quis magna ipsum incididunt commodo culpa ut deserunt dolor nostrud. Lorem eu nisi qui duis occaecat elit sit ea ut quis nisi.\r\n", "registered": "2014-01-23T16:54:18-13:00", "latitude": 19.233468, "longitude": 125.440725, "tags": [ "laborum", "proident", "velit", "dolore", "ullamco", "amet", "veniam" ], "friends": [ { "id": 0, "name": "Odonnell Carroll" }, { "id": 1, "name": "Leonor Little" }, { "id": 2, "name": "Cassandra Adkins" } ], "greeting": "Hello, Stevenson Calhoun! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21b1cd9b3a3a4d7877", "index": 1300, "guid": "0042ce14-5d61-4ce8-9e3d-74499c6dad56", "isActive": false, "balance": "$2,786.09", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Concetta Alvarado", "gender": "female", "company": "ASIMILINE", "email": "concettaalvarado@asimiline.com", "phone": "+1 (812) 599-2198", "address": "754 Story Street, Imperial, West Virginia, 6978", "about": "Exercitation consectetur proident tempor veniam incididunt adipisicing do elit non laboris laborum eu. Aliqua duis ex sit ea enim mollit elit culpa anim exercitation occaecat magna enim incididunt. Nisi laborum anim nulla sunt. Dolore duis cupidatat ex irure qui id occaecat excepteur aute ex incididunt exercitation esse. Reprehenderit incididunt ipsum et dolor esse culpa nisi proident ipsum consectetur occaecat. Tempor ad dolore id occaecat nisi cupidatat est ut in.\r\n", "registered": "2014-04-05T14:56:27-13:00", "latitude": 20.434783, "longitude": -162.445155, "tags": [ "ad", "laboris", "ex", "officia", "in", "Lorem", "voluptate" ], "friends": [ { "id": 0, "name": "Mosley Wiggins" }, { "id": 1, "name": "Angeline Oneal" }, { "id": 2, "name": "Selma Lopez" } ], "greeting": "Hello, Concetta Alvarado! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21364e0081025d6b15", "index": 1301, "guid": "910e5e44-20a9-4676-836c-a82ed9d8ac04", "isActive": true, "balance": "$2,810.78", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Sharon Osborn", "gender": "female", "company": "QABOOS", "email": "sharonosborn@qaboos.com", "phone": "+1 (874) 590-3353", "address": "175 Seaview Court, Dunbar, Texas, 4466", "about": "Pariatur culpa deserunt pariatur id consequat id. Ut elit ullamco aliquip irure. Incididunt culpa ad elit laborum est esse id consectetur mollit.\r\n", "registered": "2014-03-08T01:38:53-13:00", "latitude": 72.338224, "longitude": 163.126851, "tags": [ "non", "velit", "veniam", "culpa", "magna", "consectetur", "non" ], "friends": [ { "id": 0, "name": "Yesenia Duran" }, { "id": 1, "name": "Pamela Russo" }, { "id": 2, "name": "Sheila Moran" } ], "greeting": "Hello, Sharon Osborn! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2111b416437a8b9da7", "index": 1302, "guid": "dd9a944d-3918-45c2-8f21-3191e86f96bf", "isActive": true, "balance": "$1,875.57", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Cox Rios", "gender": "male", "company": "KIDGREASE", "email": "coxrios@kidgrease.com", "phone": "+1 (842) 511-3998", "address": "907 Bulwer Place, Wolcott, Oregon, 3394", "about": "In qui nulla ullamco pariatur fugiat laboris velit. Qui mollit non ea minim magna esse nisi id velit consectetur. Sint ad dolore qui amet ad dolore anim officia reprehenderit nulla quis labore commodo. Minim amet fugiat duis incididunt esse cillum laborum cupidatat esse.\r\n", "registered": "2014-02-09T08:55:47-13:00", "latitude": 46.48246, "longitude": -152.147208, "tags": [ "reprehenderit", "proident", "id", "ad", "reprehenderit", "ex", "aliqua" ], "friends": [ { "id": 0, "name": "Fields Rivas" }, { "id": 1, "name": "Mckinney Leblanc" }, { "id": 2, "name": "Adela Navarro" } ], "greeting": "Hello, Cox Rios! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea215b8a23dde99938fc", "index": 1303, "guid": "659b3979-d128-4b60-9b27-56d75016f953", "isActive": true, "balance": "$3,746.35", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Spence Pratt", "gender": "male", "company": "DIGITALUS", "email": "spencepratt@digitalus.com", "phone": "+1 (811) 412-2719", "address": "386 Seigel Street, Hemlock, Nevada, 8951", "about": "Elit dolor officia aliqua adipisicing laboris nostrud non. Irure cupidatat deserunt commodo duis ipsum laboris labore ullamco aliquip excepteur tempor labore. Ex cillum cillum voluptate in enim.\r\n", "registered": "2014-02-19T08:40:18-13:00", "latitude": 49.712599, "longitude": 174.49274, "tags": [ "irure", "exercitation", "est", "qui", "nostrud", "aliquip", "quis" ], "friends": [ { "id": 0, "name": "Kristina Mercer" }, { "id": 1, "name": "Martha Chan" }, { "id": 2, "name": "Aurelia Carter" } ], "greeting": "Hello, Spence Pratt! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea212543e47fd30320a4", "index": 1304, "guid": "b7321f5f-6783-418f-befa-fd9134a311c7", "isActive": false, "balance": "$1,632.80", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Carmen Cantu", "gender": "female", "company": "SKINSERVE", "email": "carmencantu@skinserve.com", "phone": "+1 (855) 455-3054", "address": "731 Stuart Street, Caberfae, Minnesota, 7490", "about": "Ea culpa incididunt irure sint elit magna culpa proident. Sit adipisicing nulla sunt cillum velit pariatur tempor do ex. Et fugiat duis non laboris laborum laboris ipsum ex in pariatur ipsum. Eiusmod tempor eu officia pariatur laboris Lorem adipisicing culpa magna. Elit dolor cupidatat magna eu aliquip ea fugiat amet sunt irure incididunt.\r\n", "registered": "2014-01-18T15:44:14-13:00", "latitude": -13.567628, "longitude": -133.66936, "tags": [ "nostrud", "aliqua", "est", "mollit", "aute", "in", "exercitation" ], "friends": [ { "id": 0, "name": "Hooper Alvarez" }, { "id": 1, "name": "Gertrude Benjamin" }, { "id": 2, "name": "Jacobson Strickland" } ], "greeting": "Hello, Carmen Cantu! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21b95e989fd7f57e9b", "index": 1305, "guid": "1290d156-b9a4-4835-b13f-b02381df19ed", "isActive": true, "balance": "$3,285.79", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Patti Schroeder", "gender": "female", "company": "ECLIPSENT", "email": "pattischroeder@eclipsent.com", "phone": "+1 (900) 437-2639", "address": "929 Winthrop Street, Brady, Missouri, 1362", "about": "Mollit sint exercitation tempor ad aliqua do commodo est laboris sint ullamco nulla voluptate. Pariatur occaecat ad minim enim. Non dolore laboris eiusmod voluptate non nisi irure voluptate. Adipisicing ea duis commodo deserunt ullamco esse. Magna ut dolor do nostrud. Lorem aliquip voluptate nostrud elit adipisicing veniam sit consectetur. Incididunt anim incididunt tempor ut non ullamco nisi voluptate velit magna ad.\r\n", "registered": "2014-01-22T18:57:44-13:00", "latitude": -17.732558, "longitude": -123.392639, "tags": [ "et", "duis", "pariatur", "dolor", "est", "fugiat", "reprehenderit" ], "friends": [ { "id": 0, "name": "Parker Barker" }, { "id": 1, "name": "Debbie Schultz" }, { "id": 2, "name": "Juarez Torres" } ], "greeting": "Hello, Patti Schroeder! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21e5f12681abf11409", "index": 1306, "guid": "8b058ab3-5928-4561-859c-c8fefb30e04f", "isActive": true, "balance": "$3,997.54", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Quinn Boyd", "gender": "male", "company": "MELBACOR", "email": "quinnboyd@melbacor.com", "phone": "+1 (901) 532-2509", "address": "778 Troutman Street, Fresno, Rhode Island, 4362", "about": "Lorem nisi fugiat magna occaecat ut consectetur non ut nisi nisi do pariatur in occaecat. Fugiat laboris ullamco laboris qui anim eiusmod qui ipsum dolore sint in ad qui nisi. Eu enim nisi sunt commodo. Esse ea ullamco dolore excepteur irure nisi eiusmod velit cupidatat qui ullamco. Quis laboris dolor tempor aute. Irure voluptate magna reprehenderit veniam do ut sit qui nulla id cillum dolor.\r\n", "registered": "2014-01-16T16:56:41-13:00", "latitude": -48.247958, "longitude": -29.569595, "tags": [ "minim", "proident", "velit", "ipsum", "amet", "enim", "dolor" ], "friends": [ { "id": 0, "name": "Jewel Franco" }, { "id": 1, "name": "May Houston" }, { "id": 2, "name": "Nolan Ratliff" } ], "greeting": "Hello, Quinn Boyd! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21f8d2c7d0fa7e6cb7", "index": 1307, "guid": "cfeb546e-aa6f-40b8-944e-5885ce2c5084", "isActive": false, "balance": "$3,035.39", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Holloway Benton", "gender": "male", "company": "BLUEGRAIN", "email": "hollowaybenton@bluegrain.com", "phone": "+1 (890) 532-3851", "address": "363 Taylor Street, Cressey, Florida, 9658", "about": "Ex irure adipisicing irure aliquip incididunt in et est sit nisi voluptate esse culpa. Ad eiusmod esse commodo aliquip exercitation enim Lorem. Cupidatat exercitation id anim qui laboris sint in ea. Ullamco cupidatat id reprehenderit qui excepteur est tempor reprehenderit ex dolor. Id dolore fugiat officia exercitation cillum est pariatur consectetur aliqua proident ex ea. Officia reprehenderit culpa Lorem tempor exercitation non exercitation laboris culpa non dolore.\r\n", "registered": "2014-07-15T14:26:40-12:00", "latitude": 10.401368, "longitude": 40.050277, "tags": [ "duis", "do", "adipisicing", "do", "irure", "nostrud", "non" ], "friends": [ { "id": 0, "name": "Barber Roman" }, { "id": 1, "name": "Howard Schneider" }, { "id": 2, "name": "Gloria Brady" } ], "greeting": "Hello, Holloway Benton! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea216f767f10247d8f8d", "index": 1308, "guid": "7daf5d23-6e51-4d75-81b8-2394bcd85bef", "isActive": true, "balance": "$3,347.74", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Bryant Shannon", "gender": "male", "company": "COMFIRM", "email": "bryantshannon@comfirm.com", "phone": "+1 (921) 555-2873", "address": "385 Vandervoort Avenue, Malott, North Carolina, 1569", "about": "Ex enim amet velit enim qui pariatur velit mollit exercitation Lorem enim cupidatat cupidatat id. Ut excepteur velit dolor deserunt dolor deserunt cupidatat Lorem do. Id pariatur do ut enim amet voluptate commodo dolore voluptate dolore aute.\r\n", "registered": "2014-03-12T15:02:17-13:00", "latitude": -64.948049, "longitude": -98.466454, "tags": [ "enim", "consectetur", "nostrud", "minim", "enim", "fugiat", "esse" ], "friends": [ { "id": 0, "name": "Ida Coleman" }, { "id": 1, "name": "Alyssa Ochoa" }, { "id": 2, "name": "Ball Mcclain" } ], "greeting": "Hello, Bryant Shannon! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21793ecc9f529472c7", "index": 1309, "guid": "65a9a761-4404-4701-96bc-3d7ff27dc099", "isActive": true, "balance": "$3,163.29", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Brady Lowe", "gender": "male", "company": "QUALITERN", "email": "bradylowe@qualitern.com", "phone": "+1 (951) 510-3791", "address": "272 Williams Place, Callaghan, New Hampshire, 3986", "about": "Esse commodo magna ullamco nisi aliquip deserunt irure tempor esse ea eu exercitation ut. Fugiat ea qui ut consequat non incididunt dolore laborum laboris aliquip Lorem occaecat. Ullamco ad amet culpa ut duis ex minim. Officia eiusmod pariatur amet veniam ea qui cillum elit aliquip dolor magna. Non ex sunt fugiat deserunt adipisicing laborum nostrud et excepteur id labore ullamco reprehenderit. Dolore labore et est cupidatat ipsum aliquip ea consequat nostrud labore aute. Aliquip eu eiusmod adipisicing ea nostrud aliquip reprehenderit id labore aliquip elit.\r\n", "registered": "2014-09-05T21:03:55-12:00", "latitude": 40.852102, "longitude": 74.637068, "tags": [ "anim", "duis", "in", "quis", "aliquip", "non", "ea" ], "friends": [ { "id": 0, "name": "Sawyer Hardin" }, { "id": 1, "name": "Tanya Watkins" }, { "id": 2, "name": "Lindsay Good" } ], "greeting": "Hello, Brady Lowe! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2167b8832b7d8cb914", "index": 1310, "guid": "9335623c-cc82-4375-8b29-5ee6c5c1a1d3", "isActive": true, "balance": "$1,063.54", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Fran Cohen", "gender": "female", "company": "DREAMIA", "email": "francohen@dreamia.com", "phone": "+1 (822) 438-3979", "address": "976 Hill Street, Austinburg, Arkansas, 6354", "about": "Do ullamco laborum et enim ex officia esse quis. Velit veniam eiusmod proident est cillum. Qui in dolore incididunt nulla enim nostrud culpa laboris.\r\n", "registered": "2014-02-22T15:50:49-13:00", "latitude": 55.055001, "longitude": -71.797491, "tags": [ "deserunt", "laboris", "occaecat", "veniam", "et", "non", "consequat" ], "friends": [ { "id": 0, "name": "Mack Gamble" }, { "id": 1, "name": "Lester Haynes" }, { "id": 2, "name": "Lora Gibson" } ], "greeting": "Hello, Fran Cohen! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2177236aeb76a566c0", "index": 1311, "guid": "ffb8a256-8112-4a6e-8453-3616328116d8", "isActive": true, "balance": "$3,537.70", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Gwendolyn Roth", "gender": "female", "company": "INTERLOO", "email": "gwendolynroth@interloo.com", "phone": "+1 (919) 591-3449", "address": "970 Box Street, Bentonville, Iowa, 1812", "about": "Culpa aliquip aute sit Lorem qui. Adipisicing officia et pariatur eu sit duis sit adipisicing consectetur proident magna sint exercitation laboris. Id nisi laboris nostrud qui commodo elit excepteur amet ea.\r\n", "registered": "2014-09-20T12:43:11-12:00", "latitude": -19.677467, "longitude": -179.049504, "tags": [ "enim", "labore", "adipisicing", "sunt", "nulla", "ullamco", "qui" ], "friends": [ { "id": 0, "name": "Florine Camacho" }, { "id": 1, "name": "Terrell Branch" }, { "id": 2, "name": "Brewer Fuller" } ], "greeting": "Hello, Gwendolyn Roth! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2130f78c0112fe3ac7", "index": 1312, "guid": "b2303f99-bdb1-4e8e-82c3-6193395ec485", "isActive": false, "balance": "$1,487.56", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Millicent Holden", "gender": "female", "company": "MARKETOID", "email": "millicentholden@marketoid.com", "phone": "+1 (994) 457-3574", "address": "711 Berry Street, Roulette, Nebraska, 8238", "about": "Officia commodo et occaecat quis labore. Esse et id anim adipisicing eiusmod ex adipisicing adipisicing aute sit esse voluptate laborum. Culpa reprehenderit ea in reprehenderit nisi exercitation exercitation tempor ex duis ex.\r\n", "registered": "2014-08-22T03:23:45-12:00", "latitude": -48.436908, "longitude": -33.388161, "tags": [ "laboris", "in", "aliqua", "commodo", "nulla", "consequat", "do" ], "friends": [ { "id": 0, "name": "Judith Butler" }, { "id": 1, "name": "Bonnie Horton" }, { "id": 2, "name": "Dudley Molina" } ], "greeting": "Hello, Millicent Holden! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea212e00d9aea76c5257", "index": 1313, "guid": "29f9e7c6-5e21-4fe5-8732-257e1480ea01", "isActive": true, "balance": "$3,286.40", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Brenda Le", "gender": "female", "company": "TALAE", "email": "brendale@talae.com", "phone": "+1 (834) 453-3960", "address": "374 Clinton Avenue, Alafaya, District Of Columbia, 2962", "about": "Laborum laborum elit proident aute minim enim id sunt. Est laboris pariatur labore amet officia qui in excepteur sunt pariatur. Labore aliquip incididunt Lorem mollit culpa pariatur enim sint ut dolor ut sint. Proident incididunt exercitation dolor culpa quis nostrud sit. Irure tempor in duis commodo ipsum exercitation pariatur Lorem.\r\n", "registered": "2014-04-29T08:08:36-12:00", "latitude": 59.247167, "longitude": -131.920041, "tags": [ "id", "minim", "ea", "est", "sunt", "non", "reprehenderit" ], "friends": [ { "id": 0, "name": "Nichols Summers" }, { "id": 1, "name": "Freda Gardner" }, { "id": 2, "name": "Pugh Wallace" } ], "greeting": "Hello, Brenda Le! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea214993e9e2f26feca1", "index": 1314, "guid": "13ec4feb-e928-4ad8-a1f5-03c5b93099d8", "isActive": true, "balance": "$2,206.86", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Holman Johnson", "gender": "male", "company": "PLASTO", "email": "holmanjohnson@plasto.com", "phone": "+1 (874) 405-3990", "address": "373 McKibbin Street, Rehrersburg, New Jersey, 346", "about": "Velit Lorem sint ea pariatur fugiat occaecat dolore do deserunt commodo non. Anim culpa Lorem laborum ullamco esse est magna. Aliqua deserunt nisi duis aliquip ex. Nisi do sint irure ex officia ullamco ut tempor adipisicing ex enim velit. Velit magna id occaecat occaecat adipisicing enim sit proident laborum ipsum nostrud id adipisicing excepteur. Cupidatat eu enim veniam proident labore nisi ex dolore nulla ullamco dolor duis ut.\r\n", "registered": "2014-05-08T00:41:29-12:00", "latitude": -10.887758, "longitude": -145.158468, "tags": [ "ex", "aute", "duis", "amet", "ut", "consectetur", "sunt" ], "friends": [ { "id": 0, "name": "Mcneil Conner" }, { "id": 1, "name": "Lenore Finch" }, { "id": 2, "name": "Marci Haney" } ], "greeting": "Hello, Holman Johnson! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21337393aff4bb82f8", "index": 1315, "guid": "78071324-b56b-46d5-849f-f8d170b2203c", "isActive": false, "balance": "$2,964.82", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Hebert Martin", "gender": "male", "company": "ORBALIX", "email": "hebertmartin@orbalix.com", "phone": "+1 (890) 492-3105", "address": "639 Roebling Street, Sandston, Palau, 8657", "about": "Veniam veniam officia ullamco magna amet quis officia dolore aliquip culpa. Cillum amet dolore laborum excepteur sit excepteur culpa dolor velit anim cillum. Veniam et aliqua est fugiat. Esse nulla sit reprehenderit quis eu irure sit irure officia minim eiusmod. Quis exercitation eiusmod eu laborum qui esse incididunt consectetur. Qui eiusmod exercitation est aliquip voluptate elit. Culpa minim elit Lorem labore dolor nulla.\r\n", "registered": "2014-04-25T22:16:41-12:00", "latitude": -73.912665, "longitude": -110.893534, "tags": [ "Lorem", "excepteur", "commodo", "fugiat", "adipisicing", "et", "dolor" ], "friends": [ { "id": 0, "name": "Willie Crosby" }, { "id": 1, "name": "Joni Lloyd" }, { "id": 2, "name": "Johnson Lester" } ], "greeting": "Hello, Hebert Martin! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2103ef60dafa1b9c05", "index": 1316, "guid": "213fe66d-e259-4291-8fce-de9fa9af84ce", "isActive": false, "balance": "$3,390.05", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Earlene Whitfield", "gender": "female", "company": "STRALOY", "email": "earlenewhitfield@straloy.com", "phone": "+1 (954) 446-2279", "address": "328 Vandervoort Place, Leland, Puerto Rico, 2996", "about": "Sint anim in ad sunt laborum minim ipsum Lorem excepteur tempor. Nostrud velit ad tempor adipisicing id amet commodo pariatur amet. Consectetur voluptate Lorem est cillum nostrud. Adipisicing id adipisicing excepteur cillum fugiat enim consectetur tempor enim nulla duis laborum culpa.\r\n", "registered": "2014-03-21T10:08:38-13:00", "latitude": -52.247301, "longitude": 6.193189, "tags": [ "proident", "pariatur", "cupidatat", "pariatur", "sint", "culpa", "sint" ], "friends": [ { "id": 0, "name": "Sparks Evans" }, { "id": 1, "name": "Beard Blackburn" }, { "id": 2, "name": "Mcintosh Walter" } ], "greeting": "Hello, Earlene Whitfield! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21c7ff80fe60507aba", "index": 1317, "guid": "6a04ea26-2fe3-4778-a7dc-ea5d3254bf4e", "isActive": false, "balance": "$2,993.39", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Ladonna Underwood", "gender": "female", "company": "RADIANTIX", "email": "ladonnaunderwood@radiantix.com", "phone": "+1 (915) 529-2971", "address": "229 Kay Court, Wakulla, California, 2030", "about": "Dolor dolor qui dolor ea magna. Cillum ex elit eiusmod mollit. Aute dolore sunt sint minim incididunt est officia sunt ullamco labore sunt pariatur officia.\r\n", "registered": "2014-04-21T12:12:33-12:00", "latitude": -57.561416, "longitude": -170.739909, "tags": [ "sint", "voluptate", "commodo", "nisi", "deserunt", "reprehenderit", "sint" ], "friends": [ { "id": 0, "name": "Delgado William" }, { "id": 1, "name": "Noemi Mccarty" }, { "id": 2, "name": "Humphrey Mullins" } ], "greeting": "Hello, Ladonna Underwood! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21011466d305709dc9", "index": 1318, "guid": "d3673e9d-93bb-4d55-bd7f-fd42fe9dcbbc", "isActive": false, "balance": "$2,249.47", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Rhoda Sweet", "gender": "female", "company": "UTARIAN", "email": "rhodasweet@utarian.com", "phone": "+1 (880) 527-2905", "address": "789 Jefferson Street, Hailesboro, Vermont, 5598", "about": "Ex non do officia anim ex mollit adipisicing quis. Ipsum ut anim aute duis id anim exercitation elit. Ullamco ad laboris exercitation aute id culpa excepteur veniam. Elit exercitation ea laborum id minim.\r\n", "registered": "2014-06-18T19:12:13-12:00", "latitude": -24.997406, "longitude": 116.093338, "tags": [ "dolore", "sit", "est", "dolor", "dolor", "commodo", "aliquip" ], "friends": [ { "id": 0, "name": "Myrna Watts" }, { "id": 1, "name": "Darcy Moreno" }, { "id": 2, "name": "Dee Mcmillan" } ], "greeting": "Hello, Rhoda Sweet! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21dcb6b03c122e38e7", "index": 1319, "guid": "1faa2855-d65d-42d1-b733-7516e41d743f", "isActive": true, "balance": "$2,026.34", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Pearlie Greer", "gender": "female", "company": "SULTRAX", "email": "pearliegreer@sultrax.com", "phone": "+1 (838) 465-2932", "address": "875 Lois Avenue, Beaverdale, Indiana, 3488", "about": "Exercitation voluptate aliquip consectetur laborum elit elit sint reprehenderit aliquip quis in. Ipsum occaecat commodo et qui magna culpa sit consectetur nostrud veniam. Deserunt deserunt sunt id est nisi tempor magna ut nostrud elit laboris qui. Qui magna consectetur pariatur commodo sunt ipsum. Laborum cillum est nostrud sint veniam fugiat do consequat enim occaecat culpa qui qui. Nostrud aute irure ullamco elit ea cupidatat amet eiusmod deserunt. Pariatur voluptate tempor sunt laborum ad enim.\r\n", "registered": "2014-02-25T10:48:29-13:00", "latitude": 12.606107, "longitude": -150.89503, "tags": [ "esse", "cillum", "aliqua", "ex", "consequat", "labore", "voluptate" ], "friends": [ { "id": 0, "name": "Teresa Barron" }, { "id": 1, "name": "Byers Flynn" }, { "id": 2, "name": "Ryan Rasmussen" } ], "greeting": "Hello, Pearlie Greer! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21cbba2e6e33ab4635", "index": 1320, "guid": "ba7032b7-6279-4546-8c4f-0cf0b5694c25", "isActive": true, "balance": "$2,935.81", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Louella Carson", "gender": "female", "company": "NAVIR", "email": "louellacarson@navir.com", "phone": "+1 (848) 425-2724", "address": "278 Riverdale Avenue, Glidden, Illinois, 3273", "about": "Elit ut ad exercitation deserunt do aliqua nulla ut non laboris. Occaecat veniam sint sint dolore magna pariatur pariatur sit voluptate nisi dolor velit occaecat. Eu et deserunt ullamco nostrud anim enim laboris eiusmod qui labore.\r\n", "registered": "2014-06-30T21:38:12-12:00", "latitude": 22.268138, "longitude": -138.648998, "tags": [ "sit", "eiusmod", "laborum", "id", "ut", "ullamco", "ea" ], "friends": [ { "id": 0, "name": "Simmons Michael" }, { "id": 1, "name": "Figueroa Bond" }, { "id": 2, "name": "Baldwin Banks" } ], "greeting": "Hello, Louella Carson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21bd2479a5e3d9dc27", "index": 1321, "guid": "e5e40475-38f0-4095-8f81-158542639146", "isActive": true, "balance": "$2,890.90", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Combs Conley", "gender": "male", "company": "ZILENCIO", "email": "combsconley@zilencio.com", "phone": "+1 (853) 572-2215", "address": "200 Cameron Court, Castleton, South Carolina, 3355", "about": "Occaecat proident consequat exercitation nulla et ut. Et voluptate esse duis elit esse cillum occaecat dolore exercitation duis voluptate voluptate officia proident. Do dolor do laborum irure ea Lorem Lorem est eiusmod. Mollit excepteur dolore duis eu et fugiat dolor ad excepteur ullamco. Incididunt ad velit exercitation reprehenderit laborum.\r\n", "registered": "2014-08-10T14:33:35-12:00", "latitude": -85.329197, "longitude": -96.059927, "tags": [ "excepteur", "laborum", "exercitation", "tempor", "enim", "officia", "velit" ], "friends": [ { "id": 0, "name": "Bailey Riddle" }, { "id": 1, "name": "Moreno Rosa" }, { "id": 2, "name": "West Palmer" } ], "greeting": "Hello, Combs Conley! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21c69ff9799bd90967", "index": 1322, "guid": "d5b2c614-9a22-4f60-ba26-803be123feab", "isActive": true, "balance": "$2,025.92", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Rivers Mckenzie", "gender": "male", "company": "QUADEEBO", "email": "riversmckenzie@quadeebo.com", "phone": "+1 (984) 435-2129", "address": "544 Caton Place, Roeville, American Samoa, 6753", "about": "Eu fugiat elit irure qui eiusmod veniam ex tempor irure dolor. Aliqua cillum labore Lorem ullamco elit in velit id ea esse. Officia Lorem magna cillum magna labore sint et magna elit quis quis qui labore cupidatat. Incididunt minim laborum do cillum aute ea veniam ad amet fugiat sit exercitation aute sunt.\r\n", "registered": "2014-06-05T08:06:44-12:00", "latitude": -8.767123, "longitude": -43.741367, "tags": [ "enim", "qui", "irure", "aliqua", "esse", "magna", "nisi" ], "friends": [ { "id": 0, "name": "Elinor Koch" }, { "id": 1, "name": "Marian Goodman" }, { "id": 2, "name": "Huffman Ray" } ], "greeting": "Hello, Rivers Mckenzie! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21b90d2c920a13d79e", "index": 1323, "guid": "0f890760-c9dd-4574-a3a6-d45d494ec1d1", "isActive": false, "balance": "$1,042.85", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Orr Bradshaw", "gender": "male", "company": "MANUFACT", "email": "orrbradshaw@manufact.com", "phone": "+1 (948) 550-2718", "address": "456 Matthews Place, Suitland, Delaware, 790", "about": "Amet amet proident quis fugiat commodo incididunt sit. Consectetur incididunt commodo deserunt ad aliqua eiusmod exercitation reprehenderit dolore enim dolor do dolore. Amet laborum aliqua cupidatat ad aute Lorem labore id consequat ut exercitation reprehenderit. Ipsum ipsum culpa enim consequat eiusmod exercitation nostrud amet proident proident consectetur.\r\n", "registered": "2014-02-02T01:17:32-13:00", "latitude": -13.575702, "longitude": -69.359245, "tags": [ "tempor", "aliquip", "ex", "aliqua", "laborum", "fugiat", "enim" ], "friends": [ { "id": 0, "name": "Savannah King" }, { "id": 1, "name": "Adkins Bender" }, { "id": 2, "name": "Daugherty Garza" } ], "greeting": "Hello, Orr Bradshaw! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21c44d34da9dfdb31a", "index": 1324, "guid": "a8615961-01e2-447c-bb17-248042be10ed", "isActive": false, "balance": "$3,104.85", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Curry Nolan", "gender": "male", "company": "ZANYMAX", "email": "currynolan@zanymax.com", "phone": "+1 (808) 573-2588", "address": "423 Beaumont Street, Chilton, Pennsylvania, 1139", "about": "Cupidatat ex anim velit commodo pariatur excepteur reprehenderit occaecat cupidatat laboris amet aliqua duis. Cupidatat aliquip deserunt reprehenderit veniam amet esse. Commodo eu ea elit excepteur aliquip. Nulla culpa in aliquip cillum reprehenderit. Sint laborum in incididunt fugiat. In non enim laboris occaecat reprehenderit in qui esse commodo. Anim incididunt velit officia consectetur minim labore.\r\n", "registered": "2014-05-03T20:57:18-12:00", "latitude": 7.277593, "longitude": -95.987043, "tags": [ "fugiat", "aute", "dolore", "culpa", "aute", "exercitation", "eu" ], "friends": [ { "id": 0, "name": "Lisa Cote" }, { "id": 1, "name": "Castro Delacruz" }, { "id": 2, "name": "Alberta Sanders" } ], "greeting": "Hello, Curry Nolan! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea211c1d02318a324094", "index": 1325, "guid": "06c479c8-25f9-4336-827f-bd48f8ded163", "isActive": false, "balance": "$3,527.44", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Galloway Ewing", "gender": "male", "company": "TOYLETRY", "email": "gallowayewing@toyletry.com", "phone": "+1 (896) 457-3762", "address": "501 Truxton Street, Genoa, Georgia, 1972", "about": "Eiusmod eiusmod dolor sit esse velit est ea quis nisi exercitation sunt ad. Anim id excepteur aliquip excepteur cillum. Nisi excepteur adipisicing in eiusmod duis minim ad dolore esse pariatur qui. Mollit dolore enim aliqua consequat exercitation consectetur excepteur do do commodo veniam.\r\n", "registered": "2014-01-13T14:55:37-13:00", "latitude": -44.621611, "longitude": -13.634395, "tags": [ "dolor", "esse", "fugiat", "eiusmod", "labore", "magna", "officia" ], "friends": [ { "id": 0, "name": "Cantrell Sexton" }, { "id": 1, "name": "Gray Salinas" }, { "id": 2, "name": "Hale Alexander" } ], "greeting": "Hello, Galloway Ewing! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2193a5a133cad16599", "index": 1326, "guid": "a003282f-1e90-4d19-8cfd-0e3ef1e4d3fe", "isActive": true, "balance": "$2,181.58", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Erica Lane", "gender": "female", "company": "DECRATEX", "email": "ericalane@decratex.com", "phone": "+1 (878) 506-2317", "address": "968 Highland Place, Remington, North Dakota, 4094", "about": "Ut nisi in labore minim deserunt. Enim in veniam laborum amet. Commodo ipsum dolore consectetur irure veniam anim. Magna sit velit elit sunt esse culpa excepteur. Nisi voluptate eu laboris id qui excepteur irure anim. Pariatur pariatur velit commodo exercitation quis aute.\r\n", "registered": "2014-04-17T19:51:03-12:00", "latitude": 58.826458, "longitude": -13.887549, "tags": [ "laboris", "velit", "consequat", "non", "Lorem", "reprehenderit", "dolor" ], "friends": [ { "id": 0, "name": "Laurel Kline" }, { "id": 1, "name": "Olive Lowery" }, { "id": 2, "name": "Winifred Dodson" } ], "greeting": "Hello, Erica Lane! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2143920476a3836d41", "index": 1327, "guid": "ca833413-8daa-430b-8a0e-cf599009481b", "isActive": false, "balance": "$3,710.39", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Deana Russell", "gender": "female", "company": "XIIX", "email": "deanarussell@xiix.com", "phone": "+1 (964) 490-2897", "address": "799 Richardson Street, Hollins, Louisiana, 4949", "about": "Incididunt velit irure deserunt amet labore minim occaecat nisi in officia in Lorem consectetur. Amet aliquip Lorem ad fugiat consectetur mollit mollit pariatur aliquip reprehenderit. Nisi excepteur ut est nisi ad dolore tempor Lorem aute velit occaecat exercitation.\r\n", "registered": "2014-05-09T03:27:16-12:00", "latitude": 86.803458, "longitude": 30.078823, "tags": [ "elit", "non", "aliqua", "commodo", "culpa", "ullamco", "sunt" ], "friends": [ { "id": 0, "name": "Joanne Reese" }, { "id": 1, "name": "Jeannette Short" }, { "id": 2, "name": "Conrad Cameron" } ], "greeting": "Hello, Deana Russell! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2158e9d2448f8f0908", "index": 1328, "guid": "ef2d128d-18bf-41e1-a23d-d362e437bffe", "isActive": true, "balance": "$3,033.10", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Ruthie Lawrence", "gender": "female", "company": "COFINE", "email": "ruthielawrence@cofine.com", "phone": "+1 (934) 429-2539", "address": "786 Louis Place, Bangor, Northern Mariana Islands, 4475", "about": "Voluptate nostrud est non ex nulla culpa magna sunt aute excepteur id aliqua proident esse. Cupidatat irure amet est dolore nostrud do eiusmod aliquip Lorem ut exercitation id. Ad esse commodo exercitation enim sit nostrud amet.\r\n", "registered": "2014-01-03T00:21:57-13:00", "latitude": 17.226047, "longitude": -177.665251, "tags": [ "mollit", "ad", "tempor", "et", "aliquip", "sunt", "officia" ], "friends": [ { "id": 0, "name": "Savage Small" }, { "id": 1, "name": "Brigitte Wilkins" }, { "id": 2, "name": "Steele Frye" } ], "greeting": "Hello, Ruthie Lawrence! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21a24dcf0d894fbf28", "index": 1329, "guid": "62e0758d-88a7-43e1-b510-69368e38a0d8", "isActive": false, "balance": "$3,731.54", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Jennie Medina", "gender": "female", "company": "VIASIA", "email": "jenniemedina@viasia.com", "phone": "+1 (828) 473-3769", "address": "905 Hooper Street, Kiskimere, Colorado, 6817", "about": "Commodo adipisicing mollit excepteur nostrud amet Lorem consectetur voluptate labore laborum minim in. Magna elit magna nulla qui Lorem exercitation culpa est qui minim nulla elit veniam mollit. Cillum ex eiusmod anim culpa nostrud quis aute reprehenderit adipisicing exercitation voluptate id. Incididunt veniam culpa nisi ipsum consectetur ipsum amet veniam fugiat proident magna ullamco ea. Ad excepteur ullamco ex aute nulla et nostrud cupidatat mollit et labore elit. Dolore velit consectetur cillum excepteur exercitation ex ipsum nulla. Cillum aute occaecat in id qui mollit ex ex eu nisi sit.\r\n", "registered": "2014-04-24T05:22:13-12:00", "latitude": -84.9952, "longitude": -131.065772, "tags": [ "officia", "occaecat", "elit", "reprehenderit", "labore", "minim", "excepteur" ], "friends": [ { "id": 0, "name": "Misty Terry" }, { "id": 1, "name": "Kara Mccullough" }, { "id": 2, "name": "Shaw Manning" } ], "greeting": "Hello, Jennie Medina! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21f220b3c81bdfd25a", "index": 1330, "guid": "bf8b298b-7eb2-4a3e-ad2b-dbb53c6dae07", "isActive": false, "balance": "$1,409.49", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Baird Langley", "gender": "male", "company": "AUTOMON", "email": "bairdlangley@automon.com", "phone": "+1 (919) 498-3148", "address": "939 Garnet Street, Limestone, Idaho, 9894", "about": "Ea eiusmod qui deserunt irure ad esse minim quis ullamco excepteur. Incididunt mollit incididunt incididunt mollit exercitation in irure dolor est pariatur consequat pariatur incididunt velit. Esse ut exercitation proident dolor amet pariatur enim amet ex adipisicing. In aute labore id cupidatat nostrud tempor proident. Exercitation excepteur consectetur sunt esse ipsum sint ullamco eu cillum est excepteur enim sunt aute. Consectetur irure amet consequat et sint occaecat exercitation consequat magna reprehenderit mollit. Adipisicing sunt id eu nostrud aliquip.\r\n", "registered": "2014-07-23T14:22:45-12:00", "latitude": -29.082685, "longitude": -90.744258, "tags": [ "ex", "laborum", "elit", "occaecat", "nostrud", "amet", "ullamco" ], "friends": [ { "id": 0, "name": "Shelton Jackson" }, { "id": 1, "name": "Christina Grant" }, { "id": 2, "name": "Trisha Hatfield" } ], "greeting": "Hello, Baird Langley! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2158453156499468d2", "index": 1331, "guid": "0b02be53-9050-4edd-80ef-4f722c822cf3", "isActive": true, "balance": "$2,123.33", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Kelsey Hodges", "gender": "female", "company": "RETRACK", "email": "kelseyhodges@retrack.com", "phone": "+1 (950) 489-3116", "address": "239 Douglass Street, Ypsilanti, Marshall Islands, 8918", "about": "Laborum dolor reprehenderit enim nostrud velit veniam excepteur laborum tempor. Ea dolore ipsum qui consequat cillum do culpa elit ea eu irure magna esse. Laborum est sunt id ad fugiat ullamco id eu minim. Est laborum dolore incididunt laboris sunt. Lorem proident dolore nulla quis qui excepteur adipisicing exercitation.\r\n", "registered": "2014-07-26T23:08:35-12:00", "latitude": 66.994589, "longitude": 3.537266, "tags": [ "adipisicing", "voluptate", "dolor", "qui", "magna", "eu", "labore" ], "friends": [ { "id": 0, "name": "Dina Trevino" }, { "id": 1, "name": "Massey Thornton" }, { "id": 2, "name": "Olga Kelley" } ], "greeting": "Hello, Kelsey Hodges! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea219f5ef6ea7c8682ff", "index": 1332, "guid": "2ce023b6-8014-4337-a7bc-93949d8172be", "isActive": false, "balance": "$2,885.77", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Hughes Joseph", "gender": "male", "company": "NETERIA", "email": "hughesjoseph@neteria.com", "phone": "+1 (843) 431-2760", "address": "176 Carroll Street, Fredericktown, New York, 7922", "about": "Fugiat laboris enim quis anim culpa aliquip enim est labore laboris consectetur. Anim voluptate deserunt aute anim enim. Amet ad proident adipisicing incididunt amet. Tempor sit tempor Lorem cillum amet duis enim magna reprehenderit cillum laborum. Velit excepteur deserunt aliqua laborum excepteur quis eiusmod ad commodo nisi laborum. Ut laboris incididunt pariatur anim non.\r\n", "registered": "2014-04-15T22:33:41-12:00", "latitude": -28.727854, "longitude": -139.438003, "tags": [ "ullamco", "dolor", "minim", "ad", "fugiat", "cupidatat", "qui" ], "friends": [ { "id": 0, "name": "Oneal Stephens" }, { "id": 1, "name": "Torres Norman" }, { "id": 2, "name": "Jensen Nash" } ], "greeting": "Hello, Hughes Joseph! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21bebb9b6b2f0b6491", "index": 1333, "guid": "f33e0566-66f1-4a67-a26d-a1d855a19dba", "isActive": true, "balance": "$2,637.73", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Hutchinson Gibbs", "gender": "male", "company": "LOTRON", "email": "hutchinsongibbs@lotron.com", "phone": "+1 (959) 438-3385", "address": "379 Batchelder Street, Fedora, Guam, 8658", "about": "Laborum Lorem reprehenderit non esse est tempor irure et minim velit. Reprehenderit ad ad aute sit elit laboris ipsum nulla. Officia mollit minim irure velit pariatur amet laboris incididunt labore excepteur. Ea cupidatat ad incididunt officia qui sit. Excepteur laboris velit id incididunt. Nostrud sint commodo do enim mollit culpa. Velit velit laboris culpa Lorem.\r\n", "registered": "2014-05-29T01:09:58-12:00", "latitude": -80.778408, "longitude": -119.849189, "tags": [ "commodo", "excepteur", "tempor", "amet", "proident", "cillum", "aute" ], "friends": [ { "id": 0, "name": "Stevens Foreman" }, { "id": 1, "name": "Earnestine Leon" }, { "id": 2, "name": "Vega Holt" } ], "greeting": "Hello, Hutchinson Gibbs! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2116594fb1fba7bf88", "index": 1334, "guid": "fb9e5369-8f1b-48d2-9567-9e43c4586c89", "isActive": false, "balance": "$3,794.44", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Marlene Griffin", "gender": "female", "company": "TETRATREX", "email": "marlenegriffin@tetratrex.com", "phone": "+1 (807) 548-3817", "address": "112 Brightwater Avenue, Shaft, Virgin Islands, 2213", "about": "Ea voluptate duis ad reprehenderit qui proident occaecat pariatur nulla. Laboris irure ex do excepteur consectetur nulla consequat. Sit laboris ullamco deserunt consequat ea voluptate aliquip anim ea et aliquip dolore qui magna.\r\n", "registered": "2014-01-09T07:34:21-13:00", "latitude": -81.699033, "longitude": 41.188687, "tags": [ "commodo", "fugiat", "nisi", "eu", "irure", "sunt", "consectetur" ], "friends": [ { "id": 0, "name": "Ernestine Sutton" }, { "id": 1, "name": "Kennedy Woodard" }, { "id": 2, "name": "Sanchez Larsen" } ], "greeting": "Hello, Marlene Griffin! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21e5e2545aa09ad00b", "index": 1335, "guid": "b7ed1068-8dc4-48f8-8334-a3a78807e57d", "isActive": true, "balance": "$2,701.47", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Duncan Parks", "gender": "male", "company": "RODEOLOGY", "email": "duncanparks@rodeology.com", "phone": "+1 (823) 543-3173", "address": "416 Hoyt Street, Adelino, Massachusetts, 4157", "about": "Commodo laboris mollit deserunt labore. Culpa sint elit ad in ut laboris dolore mollit ullamco excepteur reprehenderit. Sit duis ullamco ut sit ut.\r\n", "registered": "2014-05-02T06:53:02-12:00", "latitude": 22.271361, "longitude": -60.797306, "tags": [ "minim", "aliqua", "qui", "ullamco", "dolore", "eiusmod", "excepteur" ], "friends": [ { "id": 0, "name": "England Benson" }, { "id": 1, "name": "Lynette Jefferson" }, { "id": 2, "name": "Jackie Ruiz" } ], "greeting": "Hello, Duncan Parks! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21e13bc20e5c992c36", "index": 1336, "guid": "1ec8271a-605a-40d3-b7b1-e6f68f58759e", "isActive": true, "balance": "$3,777.37", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Sandra Mclaughlin", "gender": "female", "company": "ZILODYNE", "email": "sandramclaughlin@zilodyne.com", "phone": "+1 (801) 587-2200", "address": "661 Lott Street, Richford, Utah, 8870", "about": "Ad mollit in incididunt labore. Occaecat minim aliqua cillum ex ad. Sunt duis proident nisi labore eu irure esse voluptate veniam Lorem elit nisi fugiat pariatur. Sunt cupidatat aliquip eu consequat anim ullamco tempor do velit do anim duis. Est sit ex ad incididunt deserunt enim velit. Ad ex do duis officia est culpa eiusmod magna duis.\r\n", "registered": "2014-05-10T07:33:38-12:00", "latitude": 2.421625, "longitude": -79.35733, "tags": [ "fugiat", "adipisicing", "pariatur", "veniam", "est", "ad", "aliquip" ], "friends": [ { "id": 0, "name": "Cobb Bernard" }, { "id": 1, "name": "Luisa Bonner" }, { "id": 2, "name": "Megan Fischer" } ], "greeting": "Hello, Sandra Mclaughlin! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21ed93a27145f93196", "index": 1337, "guid": "df739397-6864-4c0b-b1bc-847a9fb38c34", "isActive": true, "balance": "$1,195.96", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Long Whitney", "gender": "male", "company": "COMTENT", "email": "longwhitney@comtent.com", "phone": "+1 (890) 466-2302", "address": "754 Putnam Avenue, Sena, Montana, 2556", "about": "Irure mollit ullamco dolor adipisicing Lorem. Cillum ut ullamco sint tempor qui elit elit aliquip nostrud est ad sunt. Est do magna tempor deserunt nulla nisi commodo cillum velit anim. Commodo Lorem cupidatat pariatur qui. Laborum ut nulla aliquip magna sint labore consectetur aliquip et mollit. Commodo anim aliqua nulla eiusmod quis fugiat consectetur eu voluptate aute velit ipsum. Enim amet dolor quis pariatur magna minim.\r\n", "registered": "2014-09-05T19:37:53-12:00", "latitude": 24.463297, "longitude": 167.520807, "tags": [ "nisi", "fugiat", "duis", "Lorem", "reprehenderit", "ipsum", "dolore" ], "friends": [ { "id": 0, "name": "Georgia Conway" }, { "id": 1, "name": "Alford Patton" }, { "id": 2, "name": "Wendy Hahn" } ], "greeting": "Hello, Long Whitney! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea215ba5637603b4a242", "index": 1338, "guid": "5376d447-6e26-4ba6-a590-5aef489741cf", "isActive": true, "balance": "$3,409.03", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Grant Mcpherson", "gender": "male", "company": "EARTHPURE", "email": "grantmcpherson@earthpure.com", "phone": "+1 (985) 512-2166", "address": "269 Belvidere Street, Canoochee, Wisconsin, 6833", "about": "Fugiat exercitation dolore do velit. Aute ea nulla adipisicing excepteur consectetur. Sunt mollit voluptate mollit elit esse velit duis est proident. Eu sunt fugiat enim magna est ullamco ut quis enim velit amet esse enim adipisicing. Dolor pariatur nostrud commodo commodo amet aliqua enim elit. In Lorem ipsum magna sint irure cillum et ea ex enim deserunt proident eiusmod Lorem.\r\n", "registered": "2014-01-06T22:25:14-13:00", "latitude": -72.969606, "longitude": 77.083867, "tags": [ "veniam", "exercitation", "consectetur", "aute", "ea", "laboris", "eiusmod" ], "friends": [ { "id": 0, "name": "Griffin Cabrera" }, { "id": 1, "name": "Rosales Sanchez" }, { "id": 2, "name": "Marilyn Davidson" } ], "greeting": "Hello, Grant Mcpherson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2104e686b084b050a5", "index": 1339, "guid": "b4842a71-8576-4ef9-9d65-dcc8645cafa0", "isActive": false, "balance": "$3,244.49", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Mckenzie Preston", "gender": "male", "company": "PIGZART", "email": "mckenziepreston@pigzart.com", "phone": "+1 (891) 401-2199", "address": "264 Paerdegat Avenue, Maplewood, Maine, 2778", "about": "Consequat exercitation deserunt dolore laboris dolor. Quis irure do exercitation do in. Eiusmod in ad enim minim aliqua ut velit pariatur et est. Nulla mollit deserunt commodo dolor adipisicing quis officia ea. Cillum do ullamco voluptate excepteur ad.\r\n", "registered": "2014-03-27T08:14:15-13:00", "latitude": 4.315093, "longitude": 43.862876, "tags": [ "pariatur", "adipisicing", "nostrud", "cupidatat", "laboris", "voluptate", "exercitation" ], "friends": [ { "id": 0, "name": "Reba Williams" }, { "id": 1, "name": "Hopper Reilly" }, { "id": 2, "name": "Webster Jacobson" } ], "greeting": "Hello, Mckenzie Preston! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21b49f6c40d7d2343e", "index": 1340, "guid": "e407b674-6ea5-4733-9d67-5ed0bb3bfa33", "isActive": true, "balance": "$1,487.30", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Ethel Jones", "gender": "female", "company": "IMANT", "email": "etheljones@imant.com", "phone": "+1 (847) 545-3523", "address": "603 Neptune Court, Umapine, Virginia, 2004", "about": "Nulla ex irure mollit exercitation mollit mollit aliquip. Amet commodo eiusmod aute mollit culpa cillum laborum sint labore cillum sit. Esse Lorem qui fugiat excepteur occaecat.\r\n", "registered": "2014-08-10T18:22:22-12:00", "latitude": 79.336236, "longitude": 21.506508, "tags": [ "esse", "amet", "ad", "Lorem", "ipsum", "quis", "qui" ], "friends": [ { "id": 0, "name": "Julia Bennett" }, { "id": 1, "name": "Jimmie Quinn" }, { "id": 2, "name": "Katrina Zimmerman" } ], "greeting": "Hello, Ethel Jones! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21f3555e854e984163", "index": 1341, "guid": "d8d40ff0-fe6e-4c63-8b7a-fb8db592751e", "isActive": true, "balance": "$3,794.45", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Norton Cruz", "gender": "male", "company": "ECSTASIA", "email": "nortoncruz@ecstasia.com", "phone": "+1 (899) 476-2505", "address": "797 Lawrence Avenue, Manitou, Kentucky, 5759", "about": "Occaecat sunt dolor et tempor veniam nostrud cillum in commodo ut eu adipisicing pariatur laborum. Amet dolor cupidatat cillum eu eu non id dolor et ullamco. Laboris pariatur enim culpa proident irure. Laboris non sint ex magna. Culpa dolor dolor ad ad excepteur minim mollit nulla commodo commodo ipsum sint sunt.\r\n", "registered": "2014-08-05T05:21:25-12:00", "latitude": 58.955687, "longitude": 65.138905, "tags": [ "adipisicing", "deserunt", "cillum", "tempor", "culpa", "cupidatat", "enim" ], "friends": [ { "id": 0, "name": "Miles Moody" }, { "id": 1, "name": "Dillard Barton" }, { "id": 2, "name": "Newton Ayala" } ], "greeting": "Hello, Norton Cruz! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea215c5c31f474a48720", "index": 1342, "guid": "4869c86b-cf63-4acb-9cc6-9324da2c1fd6", "isActive": false, "balance": "$3,435.58", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Luz Workman", "gender": "female", "company": "VELITY", "email": "luzworkman@velity.com", "phone": "+1 (891) 545-2585", "address": "848 Nassau Avenue, Siglerville, Connecticut, 8490", "about": "Reprehenderit eu eiusmod quis aliqua ex elit incididunt ex labore. Voluptate quis veniam fugiat cupidatat ipsum do aute Lorem adipisicing aliqua tempor. Anim do enim Lorem veniam officia exercitation quis officia dolore nisi.\r\n", "registered": "2014-08-07T19:33:17-12:00", "latitude": 79.318262, "longitude": 37.757964, "tags": [ "cillum", "exercitation", "nisi", "labore", "non", "officia", "sit" ], "friends": [ { "id": 0, "name": "Regina Hopper" }, { "id": 1, "name": "Dyer Turner" }, { "id": 2, "name": "Austin Shaffer" } ], "greeting": "Hello, Luz Workman! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea218c5eb4991c9d9cb6", "index": 1343, "guid": "321b466f-78ff-45e9-a86c-27241be4fd60", "isActive": true, "balance": "$2,699.94", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Reed Miranda", "gender": "male", "company": "BOILCAT", "email": "reedmiranda@boilcat.com", "phone": "+1 (981) 435-2394", "address": "343 Hull Street, Cawood, Mississippi, 3670", "about": "Do culpa culpa culpa ipsum anim. Exercitation nostrud non quis culpa pariatur est nostrud labore consequat. Mollit dolor sint cillum tempor ipsum amet mollit incididunt culpa consectetur commodo mollit non laboris.\r\n", "registered": "2014-03-29T10:10:27-13:00", "latitude": 40.068527, "longitude": -153.319791, "tags": [ "consequat", "enim", "occaecat", "elit", "esse", "aliquip", "ad" ], "friends": [ { "id": 0, "name": "Guy Cash" }, { "id": 1, "name": "Koch Randall" }, { "id": 2, "name": "Green Drake" } ], "greeting": "Hello, Reed Miranda! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21c94e01a7d7a76966", "index": 1344, "guid": "33df3af4-8331-4f7f-b38f-c98168fae7e5", "isActive": true, "balance": "$3,028.52", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Iris Calderon", "gender": "female", "company": "NEUROCELL", "email": "iriscalderon@neurocell.com", "phone": "+1 (877) 434-3220", "address": "274 Fairview Place, Churchill, Washington, 8778", "about": "Ut sunt est consequat ut aliquip ut incididunt excepteur ipsum. Proident sit exercitation sit sint nulla nisi commodo Lorem ad amet. Do pariatur voluptate non consequat eu elit aliqua reprehenderit sit laboris est esse minim. Amet cillum exercitation cupidatat aute minim. Nulla et duis officia nisi dolore reprehenderit consequat velit labore in do consequat irure. Sint sint laboris esse nisi irure aute veniam cillum esse ad esse laborum sunt. Excepteur est tempor velit laboris laboris.\r\n", "registered": "2014-05-03T23:04:38-12:00", "latitude": 32.164828, "longitude": 56.303284, "tags": [ "esse", "amet", "sit", "ad", "voluptate", "est", "sit" ], "friends": [ { "id": 0, "name": "Nicole Mckinney" }, { "id": 1, "name": "Ella Estrada" }, { "id": 2, "name": "Lorene Weaver" } ], "greeting": "Hello, Iris Calderon! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2193007278bc8df6e9", "index": 1345, "guid": "db949b8f-b4bb-435b-a119-3caed1a20fab", "isActive": false, "balance": "$1,682.10", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Lenora Welch", "gender": "female", "company": "ENERSOL", "email": "lenorawelch@enersol.com", "phone": "+1 (928) 424-2852", "address": "712 Newport Street, Loyalhanna, Tennessee, 5332", "about": "Tempor laboris ad deserunt duis ea duis amet aliqua consectetur anim occaecat. Velit sit ipsum non dolore ullamco ullamco. Laboris magna anim enim aliquip. Aliqua id sit dolore magna culpa non minim deserunt dolor laboris aliqua. Dolore reprehenderit consequat sit amet. Lorem adipisicing ea qui consequat Lorem ex non nisi non deserunt mollit commodo.\r\n", "registered": "2014-02-22T17:52:57-13:00", "latitude": 6.621881, "longitude": 7.502837, "tags": [ "dolor", "nostrud", "id", "fugiat", "ex", "quis", "esse" ], "friends": [ { "id": 0, "name": "Melba Durham" }, { "id": 1, "name": "Glenna Woodward" }, { "id": 2, "name": "Josie Fowler" } ], "greeting": "Hello, Lenora Welch! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21a4a948a75a570da8", "index": 1346, "guid": "02704754-0803-4401-8794-1aabaab26dab", "isActive": false, "balance": "$3,393.97", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Janis Holloway", "gender": "female", "company": "QIAO", "email": "janisholloway@qiao.com", "phone": "+1 (862) 597-2415", "address": "247 Sullivan Place, Bath, Alabama, 5447", "about": "Qui ea aliquip Lorem incididunt est. Voluptate qui commodo labore aliquip eu eiusmod non reprehenderit aliquip labore et nostrud. Sit commodo nisi in ullamco. Laborum sit magna ea occaecat eu nisi culpa et culpa in. Exercitation aute consequat proident esse. Adipisicing est labore pariatur occaecat cupidatat esse labore laboris commodo cupidatat laborum pariatur officia labore. Excepteur quis pariatur aliquip ex elit sint.\r\n", "registered": "2014-05-21T18:28:31-12:00", "latitude": 23.022492, "longitude": 89.7476, "tags": [ "aute", "duis", "eu", "et", "ullamco", "labore", "sint" ], "friends": [ { "id": 0, "name": "Nita Britt" }, { "id": 1, "name": "Melton Berg" }, { "id": 2, "name": "Randall Moss" } ], "greeting": "Hello, Janis Holloway! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2106c445f037eaa674", "index": 1347, "guid": "c31e23f7-7ae9-4258-9d27-0d4e6da49848", "isActive": false, "balance": "$1,577.45", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Lauren Stark", "gender": "female", "company": "QUORDATE", "email": "laurenstark@quordate.com", "phone": "+1 (985) 526-2299", "address": "683 Village Court, Hackneyville, Ohio, 8453", "about": "Voluptate nostrud ex dolor deserunt. Nostrud elit nulla eu id qui in proident. Consequat irure proident do proident labore minim est labore dolore. Dolore eiusmod non eiusmod pariatur incididunt dolore culpa aliqua reprehenderit cillum velit quis laborum deserunt.\r\n", "registered": "2014-03-08T12:16:07-13:00", "latitude": -59.922433, "longitude": -111.243876, "tags": [ "proident", "nisi", "consectetur", "enim", "minim", "excepteur", "sint" ], "friends": [ { "id": 0, "name": "Lynnette Mendoza" }, { "id": 1, "name": "Felecia Harrison" }, { "id": 2, "name": "Manuela Dickerson" } ], "greeting": "Hello, Lauren Stark! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2134248db6a39ae85d", "index": 1348, "guid": "97a40aa8-6fd5-4d02-b534-04ec6d970113", "isActive": false, "balance": "$1,034.70", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Carey Arnold", "gender": "female", "company": "COMTEXT", "email": "careyarnold@comtext.com", "phone": "+1 (894) 420-3451", "address": "693 Glenmore Avenue, Kingstowne, Hawaii, 2742", "about": "Quis occaecat anim laborum non commodo nisi adipisicing duis magna ex nulla. Minim ut fugiat enim sunt. Aliqua non nostrud consectetur officia ea consequat anim nostrud cillum irure ipsum laboris do proident. Anim aliqua voluptate mollit sunt nisi commodo laborum dolore aliquip enim elit enim pariatur aliquip. Sunt ad cillum occaecat consequat do dolore occaecat deserunt proident.\r\n", "registered": "2014-01-11T12:18:23-13:00", "latitude": -51.343225, "longitude": -115.941679, "tags": [ "ex", "pariatur", "ad", "dolore", "sint", "nisi", "fugiat" ], "friends": [ { "id": 0, "name": "Nancy Rodriquez" }, { "id": 1, "name": "Chandra Guy" }, { "id": 2, "name": "Kerr Vang" } ], "greeting": "Hello, Carey Arnold! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea214b6eb5438d7ae450", "index": 1349, "guid": "e55e41fe-5da2-4233-86b3-576ca47509be", "isActive": true, "balance": "$2,180.35", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Reynolds Lynn", "gender": "male", "company": "ZAPHIRE", "email": "reynoldslynn@zaphire.com", "phone": "+1 (840) 561-2439", "address": "713 Oak Street, Sedley, New Mexico, 9888", "about": "Sit anim ad cupidatat ea minim ex nulla sunt cupidatat deserunt. Incididunt tempor laboris dolor cillum non. Occaecat sint culpa qui in exercitation ut. Cillum pariatur aliqua ad officia veniam consequat. Velit ullamco nulla consectetur nulla nisi cupidatat adipisicing adipisicing in do sint. Et labore aliquip ea ea est eu minim duis.\r\n", "registered": "2014-05-29T05:07:43-12:00", "latitude": -20.39721, "longitude": 119.097513, "tags": [ "pariatur", "proident", "pariatur", "ex", "proident", "laboris", "sit" ], "friends": [ { "id": 0, "name": "Sarah York" }, { "id": 1, "name": "Townsend Erickson" }, { "id": 2, "name": "Briana Fields" } ], "greeting": "Hello, Reynolds Lynn! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea21714ffd66117cf458", "index": 1350, "guid": "c5a7f179-2361-465a-b486-335f768543e5", "isActive": false, "balance": "$3,541.83", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Pace Aguilar", "gender": "male", "company": "QUAREX", "email": "paceaguilar@quarex.com", "phone": "+1 (951) 465-2834", "address": "706 Colonial Road, Fingerville, Maryland, 9301", "about": "Proident adipisicing irure incididunt adipisicing in et velit. Cupidatat non sit aliquip anim velit mollit. Ullamco cupidatat velit ea veniam in irure anim aute qui id. Mollit fugiat magna ea Lorem voluptate veniam magna officia nisi occaecat. Cupidatat officia non duis nulla cillum consectetur eiusmod quis exercitation incididunt nisi. Dolor officia incididunt cupidatat incididunt ea tempor in reprehenderit esse deserunt in consequat. Duis adipisicing eiusmod veniam laboris ex irure proident id.\r\n", "registered": "2014-03-29T03:47:20-13:00", "latitude": -36.975964, "longitude": 102.937483, "tags": [ "exercitation", "occaecat", "mollit", "qui", "ut", "magna", "reprehenderit" ], "friends": [ { "id": 0, "name": "Chasity Gomez" }, { "id": 1, "name": "Sosa Stewart" }, { "id": 2, "name": "Josefa Foster" } ], "greeting": "Hello, Pace Aguilar! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea217e41a6be0df7c206", "index": 1351, "guid": "cb9bd573-2952-4f47-8981-e91a08877e52", "isActive": true, "balance": "$1,451.33", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Chavez Pacheco", "gender": "male", "company": "VITRICOMP", "email": "chavezpacheco@vitricomp.com", "phone": "+1 (997) 586-2919", "address": "870 Norwood Avenue, Santel, Alaska, 1733", "about": "Anim id adipisicing laborum adipisicing ullamco aliqua. Elit dolor irure tempor adipisicing ea fugiat Lorem proident sunt incididunt dolor sunt. Ad velit commodo consectetur duis pariatur culpa tempor non. Aliquip qui exercitation culpa adipisicing non cupidatat nostrud ad magna aliquip laboris cupidatat ut. Dolore cillum commodo sunt mollit et cupidatat veniam duis laboris.\r\n", "registered": "2014-05-10T08:53:51-12:00", "latitude": 0.017197, "longitude": -68.85049, "tags": [ "sint", "adipisicing", "incididunt", "minim", "quis", "enim", "ex" ], "friends": [ { "id": 0, "name": "Gates Rodgers" }, { "id": 1, "name": "Ollie Meyers" }, { "id": 2, "name": "Maxwell Roach" } ], "greeting": "Hello, Chavez Pacheco! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2190e6f353c5329854", "index": 1352, "guid": "4de2268e-d982-4f3a-8d8f-dca013c1ae6e", "isActive": true, "balance": "$1,412.08", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Lula Gallegos", "gender": "female", "company": "CYTREX", "email": "lulagallegos@cytrex.com", "phone": "+1 (843) 482-2843", "address": "868 Ditmas Avenue, Fannett, Arizona, 4995", "about": "Tempor do quis ullamco ea consectetur ipsum. Deserunt qui anim cupidatat et amet tempor id. Est ut fugiat pariatur qui. Ex est mollit tempor commodo esse qui. Dolor pariatur anim occaecat aute eu non ex aliquip aliquip cillum cupidatat ullamco.\r\n", "registered": "2014-03-05T09:09:34-13:00", "latitude": -70.112185, "longitude": 90.438372, "tags": [ "qui", "ipsum", "reprehenderit", "nostrud", "qui", "incididunt", "in" ], "friends": [ { "id": 0, "name": "Sadie Stokes" }, { "id": 1, "name": "Calhoun Marks" }, { "id": 2, "name": "David Woods" } ], "greeting": "Hello, Lula Gallegos! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21b4a66022f1247a29", "index": 1353, "guid": "68bc9313-3096-4144-974c-bf6874d8d1aa", "isActive": true, "balance": "$3,756.75", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Jeannie Briggs", "gender": "female", "company": "RODEOCEAN", "email": "jeanniebriggs@rodeocean.com", "phone": "+1 (959) 545-2732", "address": "103 Dinsmore Place, Gloucester, Federated States Of Micronesia, 9718", "about": "Mollit aute id qui commodo aliqua incididunt proident aliquip nisi veniam nulla mollit voluptate. Ullamco ipsum reprehenderit magna esse dolore dolor Lorem deserunt ea. Labore voluptate ut Lorem quis sit labore.\r\n", "registered": "2014-05-15T21:25:50-12:00", "latitude": -44.445851, "longitude": -23.326348, "tags": [ "eu", "minim", "occaecat", "ut", "fugiat", "consectetur", "voluptate" ], "friends": [ { "id": 0, "name": "Rosalind Serrano" }, { "id": 1, "name": "Fisher Cooper" }, { "id": 2, "name": "Randolph Floyd" } ], "greeting": "Hello, Jeannie Briggs! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21eeaa3bdd4749c6a6", "index": 1354, "guid": "e590ed7d-f6ac-4328-a894-a9c617942fe5", "isActive": true, "balance": "$2,846.43", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Watts Stevenson", "gender": "male", "company": "WARETEL", "email": "wattsstevenson@waretel.com", "phone": "+1 (860) 541-2684", "address": "545 Jewel Street, Haena, Oklahoma, 647", "about": "Tempor anim id excepteur deserunt excepteur. Mollit aliqua consectetur adipisicing et sunt eu amet et ut nulla nulla in. Lorem officia sunt enim incididunt amet consectetur. Consectetur incididunt consequat tempor ullamco eu aliquip non in incididunt pariatur. Velit veniam commodo incididunt commodo irure. Qui dolore ipsum sunt irure cupidatat quis duis ad minim ex aute excepteur. Quis tempor cillum eu incididunt ex et magna aliqua officia ad ipsum sit laboris.\r\n", "registered": "2014-06-22T03:56:56-12:00", "latitude": -2.671731, "longitude": -41.360801, "tags": [ "anim", "ad", "ea", "est", "amet", "esse", "enim" ], "friends": [ { "id": 0, "name": "Hensley Sargent" }, { "id": 1, "name": "Harriet Johnston" }, { "id": 2, "name": "Amy Valenzuela" } ], "greeting": "Hello, Watts Stevenson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21e6ba1ae234372231", "index": 1355, "guid": "71340db0-c9f9-4e00-8b6d-67c3e42b49ff", "isActive": false, "balance": "$3,364.11", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Hamilton Richards", "gender": "male", "company": "SLOFAST", "email": "hamiltonrichards@slofast.com", "phone": "+1 (935) 513-2395", "address": "388 Chester Court, Frizzleburg, Michigan, 3997", "about": "Sit fugiat ad dolore incididunt mollit magna sit pariatur. Ea aliqua quis dolor veniam cillum adipisicing fugiat. Mollit deserunt mollit laboris velit laborum elit. Et non incididunt culpa aute veniam sunt dolore reprehenderit sit fugiat mollit commodo occaecat. Exercitation mollit anim laborum commodo officia mollit id amet dolor excepteur proident proident. Excepteur irure ipsum ad deserunt.\r\n", "registered": "2014-04-01T10:19:02-13:00", "latitude": -49.575881, "longitude": 16.393715, "tags": [ "labore", "dolore", "id", "esse", "elit", "eiusmod", "do" ], "friends": [ { "id": 0, "name": "Corinne Duffy" }, { "id": 1, "name": "Cynthia Blanchard" }, { "id": 2, "name": "Elizabeth Craig" } ], "greeting": "Hello, Hamilton Richards! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21366bac76e4f29991", "index": 1356, "guid": "2ceaee1d-7c9f-40f8-a3da-449436f95488", "isActive": true, "balance": "$3,083.89", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Celia Byrd", "gender": "female", "company": "BIFLEX", "email": "celiabyrd@biflex.com", "phone": "+1 (919) 571-2700", "address": "260 Ralph Avenue, Belmont, Kansas, 1814", "about": "Culpa incididunt aliquip Lorem laborum duis aliquip eu irure quis minim ut sunt. Veniam mollit occaecat enim ut voluptate cillum nulla occaecat tempor cillum. In Lorem magna anim eiusmod velit. Irure velit excepteur dolore veniam irure ea et consequat Lorem. Veniam culpa ex do fugiat ea ullamco dolore id ullamco. Veniam duis aliqua aliqua mollit non ex mollit ut labore sint adipisicing ex. Consequat proident consequat irure elit labore exercitation Lorem qui occaecat fugiat ad laboris.\r\n", "registered": "2014-05-06T05:22:13-12:00", "latitude": -42.931145, "longitude": -59.102221, "tags": [ "ex", "irure", "pariatur", "sint", "esse", "ea", "aliqua" ], "friends": [ { "id": 0, "name": "Rowena White" }, { "id": 1, "name": "Carmela Hensley" }, { "id": 2, "name": "Rita Martinez" } ], "greeting": "Hello, Celia Byrd! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21f284d5f635b442b4", "index": 1357, "guid": "94037e16-0076-4b53-9845-b96564c1a593", "isActive": true, "balance": "$1,323.78", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Harris Richmond", "gender": "male", "company": "EWEVILLE", "email": "harrisrichmond@eweville.com", "phone": "+1 (884) 520-2642", "address": "615 Beadel Street, Swartzville, South Dakota, 6604", "about": "Consectetur magna deserunt reprehenderit eiusmod laboris. Esse non quis sunt Lorem id eiusmod pariatur magna Lorem duis Lorem ipsum consectetur nostrud. Commodo esse id do magna sunt labore esse. Non culpa deserunt veniam labore est nulla id id. Aliqua sunt reprehenderit fugiat ex enim tempor. Tempor amet aliqua duis aliquip.\r\n", "registered": "2014-01-24T21:15:19-13:00", "latitude": 12.45994, "longitude": -82.780705, "tags": [ "pariatur", "est", "ut", "non", "anim", "Lorem", "aute" ], "friends": [ { "id": 0, "name": "Langley Mcclure" }, { "id": 1, "name": "Barton Peters" }, { "id": 2, "name": "Pittman Lara" } ], "greeting": "Hello, Harris Richmond! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2138b652d2aa08378e", "index": 1358, "guid": "88c8610c-dbf3-48fd-9db3-a58ece8a1fc6", "isActive": false, "balance": "$3,794.29", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Nadia Cleveland", "gender": "female", "company": "OVERFORK", "email": "nadiacleveland@overfork.com", "phone": "+1 (813) 405-2387", "address": "915 Elton Street, Draper, West Virginia, 3131", "about": "Elit elit culpa in est. Ea esse labore voluptate commodo non laborum id fugiat quis. Pariatur tempor ipsum dolor irure aute tempor fugiat Lorem deserunt officia duis id cupidatat. Reprehenderit eiusmod anim laboris labore amet exercitation. Sunt Lorem cupidatat eiusmod pariatur sint anim enim eiusmod occaecat magna non voluptate id. Ullamco aliqua aliqua nisi ut aliqua sit velit in laboris duis et laboris. Incididunt eiusmod proident voluptate duis Lorem ullamco nostrud proident id do.\r\n", "registered": "2014-02-04T21:45:32-13:00", "latitude": 42.67179, "longitude": -56.160047, "tags": [ "ad", "qui", "ea", "magna", "laborum", "aliquip", "cillum" ], "friends": [ { "id": 0, "name": "Geneva Howell" }, { "id": 1, "name": "Hahn Nielsen" }, { "id": 2, "name": "Lyons Rhodes" } ], "greeting": "Hello, Nadia Cleveland! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21a2e4d9bca786f75d", "index": 1359, "guid": "83bcb42a-b353-4c0d-8946-9198a0694222", "isActive": true, "balance": "$2,541.64", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Lynn Hartman", "gender": "male", "company": "ZAYA", "email": "lynnhartman@zaya.com", "phone": "+1 (970) 511-3486", "address": "811 Rutledge Street, Loma, Texas, 4226", "about": "Sint voluptate commodo ullamco enim sint qui nisi est sit et quis. Velit ex ipsum quis minim non aliquip ullamco labore ea ipsum incididunt. Nisi Lorem exercitation aliqua consequat culpa Lorem culpa. Officia culpa dolor consectetur labore non ullamco culpa exercitation cupidatat et pariatur dolor amet. Cillum proident ipsum occaecat enim Lorem irure pariatur ullamco.\r\n", "registered": "2014-09-17T08:53:43-12:00", "latitude": -25.437044, "longitude": -69.940688, "tags": [ "elit", "quis", "laboris", "sunt", "minim", "proident", "nulla" ], "friends": [ { "id": 0, "name": "Kristin Travis" }, { "id": 1, "name": "Sofia Wilson" }, { "id": 2, "name": "Witt Pace" } ], "greeting": "Hello, Lynn Hartman! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21373f2e501a049719", "index": 1360, "guid": "7dd95d67-7c22-4a27-8597-873a05decb2f", "isActive": false, "balance": "$2,329.19", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Estela Sparks", "gender": "female", "company": "STUCCO", "email": "estelasparks@stucco.com", "phone": "+1 (857) 549-2799", "address": "141 Liberty Avenue, Garnet, Oregon, 9296", "about": "Elit et labore officia est et proident magna laboris. Consequat magna aute anim sunt dolore tempor velit do pariatur Lorem ex Lorem incididunt exercitation. Sunt occaecat do veniam cillum sint ea nisi magna ipsum amet laborum.\r\n", "registered": "2014-05-16T16:12:48-12:00", "latitude": -76.27428, "longitude": -26.918693, "tags": [ "ad", "laborum", "Lorem", "eiusmod", "magna", "laborum", "dolore" ], "friends": [ { "id": 0, "name": "Doris Patterson" }, { "id": 1, "name": "Nellie Wood" }, { "id": 2, "name": "Carol Rodriguez" } ], "greeting": "Hello, Estela Sparks! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21d5998f2dbb15ef12", "index": 1361, "guid": "146deeae-f630-466c-9997-6893de26d379", "isActive": false, "balance": "$1,106.50", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Gracie Bates", "gender": "female", "company": "GINK", "email": "graciebates@gink.com", "phone": "+1 (857) 404-2788", "address": "374 Bristol Street, Walland, Nevada, 5911", "about": "Reprehenderit aliqua nulla quis proident excepteur nostrud culpa consequat velit officia. Ea in deserunt cillum culpa irure nisi sit commodo exercitation amet. Culpa in pariatur labore amet tempor ullamco in exercitation dolore consectetur sint consectetur. Ea mollit laborum fugiat sint minim commodo qui deserunt.\r\n", "registered": "2014-02-07T00:52:56-13:00", "latitude": -69.385611, "longitude": 40.276566, "tags": [ "sint", "laboris", "nostrud", "enim", "et", "pariatur", "aliquip" ], "friends": [ { "id": 0, "name": "Stephanie Shepard" }, { "id": 1, "name": "Heather Mercado" }, { "id": 2, "name": "Kristy Fitzpatrick" } ], "greeting": "Hello, Gracie Bates! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea217679458342f39c33", "index": 1362, "guid": "f698202e-fe06-4d9a-80a3-4736188d30d4", "isActive": true, "balance": "$1,386.42", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Mercado Hart", "gender": "male", "company": "BIOSPAN", "email": "mercadohart@biospan.com", "phone": "+1 (856) 597-3072", "address": "714 Gallatin Place, Wheatfields, Minnesota, 8164", "about": "Reprehenderit eiusmod consequat fugiat irure sit laboris enim reprehenderit eiusmod occaecat. Lorem aliqua laboris reprehenderit pariatur commodo eiusmod labore elit ipsum nisi incididunt. Fugiat laboris ad dolore mollit sit ex ut eiusmod est eu nisi cillum velit. Amet eiusmod dolor amet nulla minim magna dolore adipisicing sit aliqua qui.\r\n", "registered": "2014-08-07T03:14:11-12:00", "latitude": -16.307698, "longitude": -153.743505, "tags": [ "Lorem", "Lorem", "nostrud", "ea", "ut", "elit", "ullamco" ], "friends": [ { "id": 0, "name": "Luna Poole" }, { "id": 1, "name": "Chen Franks" }, { "id": 2, "name": "Bernard Watson" } ], "greeting": "Hello, Mercado Hart! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea21f27f7c0b3d84d501", "index": 1363, "guid": "eea9fc97-eb71-4863-8902-3b31fa42a132", "isActive": false, "balance": "$2,350.28", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Barnes Shaw", "gender": "male", "company": "LIQUIDOC", "email": "barnesshaw@liquidoc.com", "phone": "+1 (953) 504-2252", "address": "869 Veronica Place, Avoca, Missouri, 4261", "about": "Ipsum commodo dolor commodo pariatur qui id. Excepteur veniam non reprehenderit cupidatat et officia id aliquip aute dolor consectetur cupidatat. Duis in pariatur proident duis non mollit aliqua sunt cupidatat. Officia labore eiusmod consectetur culpa incididunt aliquip adipisicing.\r\n", "registered": "2014-08-05T17:40:33-12:00", "latitude": 89.150543, "longitude": 105.15446, "tags": [ "adipisicing", "velit", "et", "non", "fugiat", "nulla", "adipisicing" ], "friends": [ { "id": 0, "name": "Glass Smith" }, { "id": 1, "name": "Wynn Bell" }, { "id": 2, "name": "Whitney Simon" } ], "greeting": "Hello, Barnes Shaw! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea219f948f7f733c4e17", "index": 1364, "guid": "04ef807d-fd0e-469f-b602-a20da6d0a90f", "isActive": true, "balance": "$1,202.29", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Delacruz Orr", "gender": "male", "company": "EPLODE", "email": "delacruzorr@eplode.com", "phone": "+1 (873) 450-3820", "address": "506 Bridge Street, Cresaptown, Rhode Island, 3126", "about": "Id pariatur exercitation dolor eu officia culpa. Deserunt eu ad nulla Lorem deserunt aliquip adipisicing non aliquip laborum. Laboris adipisicing cillum et tempor et Lorem ad dolore deserunt sit cillum cillum aliqua. Sunt ea mollit labore velit eiusmod qui cupidatat non nisi sint ea nostrud proident do. Esse consequat culpa nisi dolore non aliquip ex velit occaecat dolor. Eu amet eu minim sit consectetur est.\r\n", "registered": "2014-04-07T18:56:22-12:00", "latitude": 6.472645, "longitude": 3.820791, "tags": [ "ex", "cupidatat", "laborum", "pariatur", "aliquip", "exercitation", "nostrud" ], "friends": [ { "id": 0, "name": "Gardner Page" }, { "id": 1, "name": "Brown Greene" }, { "id": 2, "name": "Lowe Flowers" } ], "greeting": "Hello, Delacruz Orr! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2154b55c1195d8c8e8", "index": 1365, "guid": "0b3089ce-3e82-4edc-a6fc-941ca11ba3be", "isActive": true, "balance": "$2,962.73", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Finley Spencer", "gender": "male", "company": "LYRICHORD", "email": "finleyspencer@lyrichord.com", "phone": "+1 (846) 447-2978", "address": "416 Losee Terrace, Goodville, Florida, 6834", "about": "Ex quis mollit consequat velit velit irure incididunt ex sint id. Esse laboris do consequat et voluptate qui non labore labore minim culpa voluptate enim. In anim commodo qui ad id enim est commodo. Deserunt voluptate culpa proident labore velit esse anim tempor sint fugiat do amet ex eu.\r\n", "registered": "2014-09-16T04:17:26-12:00", "latitude": -46.066023, "longitude": -158.937971, "tags": [ "amet", "culpa", "cupidatat", "laboris", "do", "minim", "voluptate" ], "friends": [ { "id": 0, "name": "Holly Booker" }, { "id": 1, "name": "Maryellen Vinson" }, { "id": 2, "name": "Williams Craft" } ], "greeting": "Hello, Finley Spencer! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21bdbb9333bf660764", "index": 1366, "guid": "a18e3240-90dc-48ef-a34a-edec328fd92b", "isActive": true, "balance": "$3,897.73", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Dolly Frazier", "gender": "female", "company": "SNIPS", "email": "dollyfrazier@snips.com", "phone": "+1 (800) 513-3721", "address": "762 Frank Court, Levant, North Carolina, 6100", "about": "Do anim culpa consequat et nisi mollit velit consequat aliquip. Mollit nostrud amet pariatur elit. Proident qui consectetur magna minim dolore nisi anim elit elit nisi laboris deserunt cillum. Enim adipisicing ut eu enim deserunt proident cillum adipisicing ut non. Ut sint sit culpa ullamco et anim ad esse dolore exercitation irure aute qui proident. Sunt ullamco qui laboris non nulla irure occaecat fugiat mollit amet cillum adipisicing.\r\n", "registered": "2014-08-13T18:01:21-12:00", "latitude": -47.97551, "longitude": -93.292825, "tags": [ "adipisicing", "quis", "magna", "in", "cupidatat", "veniam", "ipsum" ], "friends": [ { "id": 0, "name": "Valentine Guerrero" }, { "id": 1, "name": "Mccormick Francis" }, { "id": 2, "name": "Potts Wiley" } ], "greeting": "Hello, Dolly Frazier! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea215f3481568b9078d8", "index": 1367, "guid": "c20befd5-8e9b-40b3-b2ed-eda830913cba", "isActive": false, "balance": "$2,387.40", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Jodie Kelly", "gender": "female", "company": "FARMEX", "email": "jodiekelly@farmex.com", "phone": "+1 (870) 597-3861", "address": "308 Conway Street, Blairstown, New Hampshire, 9030", "about": "Ut pariatur eiusmod incididunt nisi nisi anim minim esse laboris. Elit do nulla reprehenderit fugiat exercitation pariatur velit veniam id sunt nostrud dolore. Enim eu ipsum Lorem sunt.\r\n", "registered": "2014-07-03T17:00:58-12:00", "latitude": 29.452443, "longitude": 7.561607, "tags": [ "enim", "exercitation", "ad", "ipsum", "ut", "occaecat", "tempor" ], "friends": [ { "id": 0, "name": "Toni Klein" }, { "id": 1, "name": "Estella Mcbride" }, { "id": 2, "name": "Candy Carey" } ], "greeting": "Hello, Jodie Kelly! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea21d9dea2105bc012ab", "index": 1368, "guid": "c1710f7f-f58f-4f6b-964d-75264062657e", "isActive": false, "balance": "$1,728.71", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Tommie Fry", "gender": "female", "company": "OZEAN", "email": "tommiefry@ozean.com", "phone": "+1 (944) 575-3587", "address": "365 Columbus Place, Brazos, Arkansas, 593", "about": "Id duis proident deserunt est in nulla tempor esse nisi do sit qui. Eiusmod id elit ipsum in aliquip duis aliquip est do dolore. Ullamco sint excepteur nisi pariatur proident consectetur dolor dolore. Sint laboris ea voluptate reprehenderit ea in. Duis deserunt proident occaecat minim aliqua enim eu ut. Id elit duis adipisicing ea est ut ex culpa ullamco consequat occaecat irure ea. Proident tempor id ipsum incididunt ullamco occaecat deserunt.\r\n", "registered": "2014-03-03T19:16:50-13:00", "latitude": -8.857749, "longitude": -151.523218, "tags": [ "irure", "exercitation", "velit", "exercitation", "sit", "dolor", "Lorem" ], "friends": [ { "id": 0, "name": "Phelps Beasley" }, { "id": 1, "name": "Watkins Gaines" }, { "id": 2, "name": "Walsh Warner" } ], "greeting": "Hello, Tommie Fry! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea214897768b6336d097", "index": 1369, "guid": "155b6b38-13a7-4ce9-a09b-332bc733c78b", "isActive": false, "balance": "$2,941.89", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Dominguez Henry", "gender": "male", "company": "MEDIOT", "email": "dominguezhenry@mediot.com", "phone": "+1 (818) 480-2844", "address": "779 Broome Street, Faywood, Iowa, 5674", "about": "Ipsum quis occaecat ea irure veniam cillum aliquip esse nisi officia do veniam mollit. Irure ut sint nulla esse enim sunt et nostrud ea proident ipsum consectetur. Anim nostrud incididunt ullamco reprehenderit. Aliqua nisi cillum officia amet amet deserunt id enim cupidatat occaecat ex pariatur pariatur. Et exercitation non exercitation tempor adipisicing dolor elit. Anim qui sit laborum amet mollit est ea. Labore ipsum do cillum voluptate occaecat esse ut voluptate deserunt reprehenderit nisi quis consequat nisi.\r\n", "registered": "2014-08-08T13:03:55-12:00", "latitude": -67.175455, "longitude": -87.601389, "tags": [ "reprehenderit", "proident", "magna", "dolore", "consectetur", "sunt", "ad" ], "friends": [ { "id": 0, "name": "Traci Clark" }, { "id": 1, "name": "Ingrid Baird" }, { "id": 2, "name": "Tracy Noel" } ], "greeting": "Hello, Dominguez Henry! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea228a10969cbf868c64", "index": 1370, "guid": "3108404b-a851-425b-b851-3a6153df5fec", "isActive": false, "balance": "$3,620.40", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Wilkinson Dunlap", "gender": "male", "company": "GEEKETRON", "email": "wilkinsondunlap@geeketron.com", "phone": "+1 (837) 471-3598", "address": "488 Vanderbilt Avenue, Crisman, Nebraska, 1767", "about": "Est officia commodo ex qui occaecat laboris minim laboris occaecat laborum eiusmod nostrud. Aliqua excepteur cillum eu proident est officia voluptate id minim pariatur exercitation. Consectetur adipisicing ad non sunt irure exercitation eiusmod cillum ad pariatur eiusmod ad Lorem sit. In quis esse duis et labore ipsum aliqua consectetur ipsum pariatur aliquip minim magna reprehenderit.\r\n", "registered": "2014-04-09T07:02:42-12:00", "latitude": -70.301227, "longitude": 118.03681, "tags": [ "Lorem", "eiusmod", "cupidatat", "enim", "minim", "Lorem", "sunt" ], "friends": [ { "id": 0, "name": "Liza Kramer" }, { "id": 1, "name": "Giles Hubbard" }, { "id": 2, "name": "Katy Petersen" } ], "greeting": "Hello, Wilkinson Dunlap! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22d6e1aa7878c73b53", "index": 1371, "guid": "14a1376a-da2a-4fc8-857f-a3102f38a219", "isActive": false, "balance": "$2,754.42", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Flora Ford", "gender": "female", "company": "UBERLUX", "email": "floraford@uberlux.com", "phone": "+1 (934) 421-2107", "address": "436 Gold Street, Whipholt, District Of Columbia, 1596", "about": "Deserunt in qui magna officia ex anim do cupidatat eiusmod anim ut consectetur et. Et Lorem amet est nulla ad occaecat magna occaecat. Incididunt ex in pariatur est exercitation elit sunt. Ullamco tempor nisi velit labore nostrud mollit dolor est culpa.\r\n", "registered": "2014-06-17T19:28:45-12:00", "latitude": -54.428443, "longitude": -99.404588, "tags": [ "nisi", "pariatur", "do", "minim", "enim", "ipsum", "officia" ], "friends": [ { "id": 0, "name": "Kim Buck" }, { "id": 1, "name": "Tanner Harrington" }, { "id": 2, "name": "Mccarthy Johns" } ], "greeting": "Hello, Flora Ford! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22619581ae59533686", "index": 1372, "guid": "90362051-39cb-46bc-8f7a-38fd08c2e38d", "isActive": true, "balance": "$1,781.63", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Wilcox Montoya", "gender": "male", "company": "ULTRASURE", "email": "wilcoxmontoya@ultrasure.com", "phone": "+1 (924) 408-3337", "address": "313 Cass Place, Ahwahnee, New Jersey, 3090", "about": "Anim veniam aliquip ut do tempor anim eu nisi occaecat nisi fugiat in ad. Aliquip ad amet excepteur aliqua in nostrud aliquip. Eu culpa commodo exercitation in adipisicing. Cupidatat aliquip minim amet exercitation incididunt mollit irure dolor duis officia laborum est. Irure duis velit labore qui duis sint magna esse ad. Culpa ipsum quis elit sit. Incididunt ad sint eiusmod sint proident ad laborum amet aliquip Lorem proident.\r\n", "registered": "2014-08-27T22:18:09-12:00", "latitude": -0.938262, "longitude": -38.511149, "tags": [ "proident", "deserunt", "enim", "irure", "irure", "sunt", "aliquip" ], "friends": [ { "id": 0, "name": "Josefina Berger" }, { "id": 1, "name": "Ursula Osborne" }, { "id": 2, "name": "Juanita Mathis" } ], "greeting": "Hello, Wilcox Montoya! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea223be8e57072cc1571", "index": 1373, "guid": "185f95cf-2701-43d2-8284-27afb33e460d", "isActive": true, "balance": "$1,748.27", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Eleanor Melton", "gender": "female", "company": "COMVERGES", "email": "eleanormelton@comverges.com", "phone": "+1 (811) 427-3638", "address": "545 Joval Court, Rodman, Palau, 1671", "about": "Reprehenderit elit adipisicing cillum officia fugiat voluptate fugiat aliqua. Commodo tempor ut incididunt labore excepteur. Laborum fugiat nulla tempor tempor laborum nulla enim pariatur occaecat sunt. Minim eu qui qui ad id eu velit. Est qui id do occaecat ullamco ex adipisicing ea esse aute do labore enim. Eu elit commodo ex occaecat ex elit labore non quis duis commodo.\r\n", "registered": "2014-01-28T18:30:59-13:00", "latitude": 86.825582, "longitude": 75.154296, "tags": [ "esse", "non", "commodo", "sint", "Lorem", "in", "Lorem" ], "friends": [ { "id": 0, "name": "Terry Eaton" }, { "id": 1, "name": "Pratt Mays" }, { "id": 2, "name": "Lambert Gill" } ], "greeting": "Hello, Eleanor Melton! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22f5d4ad4aff76cfd0", "index": 1374, "guid": "c9102b76-00f3-4f45-9ed4-4ffcf7db9763", "isActive": false, "balance": "$3,388.88", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Rebekah Wheeler", "gender": "female", "company": "JUMPSTACK", "email": "rebekahwheeler@jumpstack.com", "phone": "+1 (842) 575-3610", "address": "662 Coffey Street, Washington, Puerto Rico, 8322", "about": "Eu nisi adipisicing exercitation do ex adipisicing sit sint id officia consectetur elit. Ipsum id aliqua est ut officia in Lorem aliqua adipisicing incididunt laborum ex est. Aliqua pariatur aute dolor excepteur magna qui aute Lorem esse fugiat ullamco aliquip. Cupidatat sint qui eiusmod elit anim. Sunt nostrud proident enim ex anim. Deserunt dolore nisi consequat elit pariatur ex. Ea tempor aute duis et enim.\r\n", "registered": "2014-04-29T16:05:24-12:00", "latitude": -29.088016, "longitude": 36.416373, "tags": [ "tempor", "magna", "aliquip", "duis", "nostrud", "cupidatat", "cillum" ], "friends": [ { "id": 0, "name": "Rasmussen Carr" }, { "id": 1, "name": "Lancaster Wolfe" }, { "id": 2, "name": "Schmidt Huber" } ], "greeting": "Hello, Rebekah Wheeler! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2271c0bb87d3eba013", "index": 1375, "guid": "e6813d16-3982-4e22-b1c5-912935135917", "isActive": true, "balance": "$1,096.55", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Reeves Pierce", "gender": "male", "company": "JAMNATION", "email": "reevespierce@jamnation.com", "phone": "+1 (976) 413-2436", "address": "262 Fane Court, Hobucken, California, 4373", "about": "Reprehenderit aute id duis proident minim non magna eiusmod ipsum ipsum id. Consectetur veniam quis aliquip voluptate labore. Qui incididunt ullamco nostrud dolore proident anim qui et irure et minim veniam. Non ad pariatur in dolor consectetur ea aliquip. Reprehenderit ipsum officia reprehenderit eu aute.\r\n", "registered": "2014-04-17T13:00:57-12:00", "latitude": -34.34946, "longitude": -49.70412, "tags": [ "in", "sunt", "exercitation", "exercitation", "consectetur", "tempor", "ipsum" ], "friends": [ { "id": 0, "name": "Jewell Merritt" }, { "id": 1, "name": "Woodward Aguirre" }, { "id": 2, "name": "Solis Luna" } ], "greeting": "Hello, Reeves Pierce! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22c82786cfbd1bee8a", "index": 1376, "guid": "748b24d6-4487-460b-b99c-9814d52f47ff", "isActive": false, "balance": "$3,660.99", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Lilian Bowen", "gender": "female", "company": "ZILLA", "email": "lilianbowen@zilla.com", "phone": "+1 (971) 527-2150", "address": "609 Atkins Avenue, Nicut, Vermont, 1160", "about": "Velit ut laboris cupidatat aliquip ut fugiat incididunt incididunt deserunt ex id et excepteur fugiat. Nostrud proident aute ullamco laborum do ipsum eu eiusmod. Aliqua enim anim anim aute consequat ut anim labore. Ad ut in velit excepteur pariatur irure laboris elit ea laboris reprehenderit. Aliquip et cillum anim dolor nostrud ipsum aliqua Lorem aliqua.\r\n", "registered": "2014-06-17T19:31:30-12:00", "latitude": -62.040234, "longitude": -63.305101, "tags": [ "aute", "deserunt", "qui", "aliqua", "do", "et", "officia" ], "friends": [ { "id": 0, "name": "Selena Mueller" }, { "id": 1, "name": "Short Duncan" }, { "id": 2, "name": "Mae Burt" } ], "greeting": "Hello, Lilian Bowen! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22c5a985e019db102b", "index": 1377, "guid": "af5a94c0-cfba-4fb6-85fd-8298813fc83c", "isActive": false, "balance": "$1,613.71", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Deann Saunders", "gender": "female", "company": "EARTHMARK", "email": "deannsaunders@earthmark.com", "phone": "+1 (992) 530-3729", "address": "805 Meeker Avenue, Salix, Indiana, 8952", "about": "Amet ex non sint laborum ad cupidatat deserunt occaecat laborum qui nulla. Esse consequat aliquip adipisicing sint. Tempor fugiat ea aliquip occaecat nostrud ea aliquip Lorem aute exercitation amet aute.\r\n", "registered": "2014-07-06T08:34:13-12:00", "latitude": 2.505853, "longitude": 173.864197, "tags": [ "non", "do", "id", "fugiat", "ea", "ullamco", "fugiat" ], "friends": [ { "id": 0, "name": "Nichole Caldwell" }, { "id": 1, "name": "Castillo House" }, { "id": 2, "name": "Ginger Dudley" } ], "greeting": "Hello, Deann Saunders! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22d141ca2d66faf582", "index": 1378, "guid": "871708c9-aaac-41c2-b552-ff0a3c4ead2c", "isActive": true, "balance": "$2,340.87", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Knowles Wynn", "gender": "male", "company": "IMAGINART", "email": "knowleswynn@imaginart.com", "phone": "+1 (974) 562-3107", "address": "691 Johnson Avenue, Morningside, Illinois, 5259", "about": "Amet sint amet non commodo eu nisi reprehenderit nisi aliqua ad commodo pariatur. Ut nostrud irure deserunt quis ipsum. Incididunt sunt enim velit exercitation consectetur nostrud qui. Excepteur fugiat non duis nulla nisi sint ut. Ut elit mollit ex fugiat laborum mollit sit tempor officia aliquip voluptate voluptate minim nisi.\r\n", "registered": "2014-01-08T02:12:15-13:00", "latitude": 63.338359, "longitude": -113.225975, "tags": [ "enim", "ea", "culpa", "sunt", "aliquip", "aute", "quis" ], "friends": [ { "id": 0, "name": "Whitehead Wilkinson" }, { "id": 1, "name": "Jefferson Bailey" }, { "id": 2, "name": "Paul Barry" } ], "greeting": "Hello, Knowles Wynn! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea225d760b93b9600a93", "index": 1379, "guid": "39926a1d-cb2b-4dd1-bd3c-7d65ac7b9339", "isActive": false, "balance": "$1,369.53", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Love Atkins", "gender": "male", "company": "EXOBLUE", "email": "loveatkins@exoblue.com", "phone": "+1 (870) 582-3490", "address": "697 Flatlands Avenue, Ernstville, South Carolina, 1690", "about": "Dolore elit culpa officia sunt excepteur cupidatat eu culpa adipisicing. Ea magna elit ullamco exercitation mollit veniam elit sit enim esse incididunt incididunt minim. Do et laboris proident nisi nisi cupidatat aute magna.\r\n", "registered": "2014-09-01T21:51:12-12:00", "latitude": -67.70385, "longitude": -11.076884, "tags": [ "consectetur", "veniam", "qui", "exercitation", "cupidatat", "eu", "labore" ], "friends": [ { "id": 0, "name": "Queen Donaldson" }, { "id": 1, "name": "Bright Hutchinson" }, { "id": 2, "name": "June Decker" } ], "greeting": "Hello, Love Atkins! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2275eed4d428461d8e", "index": 1380, "guid": "1097a13a-7ce9-49b2-a292-5becb16ca68e", "isActive": false, "balance": "$2,248.13", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Edna Cochran", "gender": "female", "company": "PLUTORQUE", "email": "ednacochran@plutorque.com", "phone": "+1 (978) 510-3102", "address": "196 Stuyvesant Avenue, Unionville, American Samoa, 1306", "about": "Deserunt ea fugiat officia Lorem sint magna incididunt qui consequat sit fugiat. Velit do adipisicing incididunt anim ullamco sit. Sit anim exercitation enim reprehenderit officia eu in laboris sint dolore enim do qui id. Anim ad fugiat eu ut officia deserunt ullamco reprehenderit. Dolore et quis sunt exercitation id ullamco nulla tempor tempor amet duis laboris dolor magna.\r\n", "registered": "2014-05-02T19:32:36-12:00", "latitude": 51.708284, "longitude": 95.659378, "tags": [ "consectetur", "irure", "enim", "aliquip", "sint", "reprehenderit", "ad" ], "friends": [ { "id": 0, "name": "Russell Mckay" }, { "id": 1, "name": "Suzette Simpson" }, { "id": 2, "name": "Cheri Everett" } ], "greeting": "Hello, Edna Cochran! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea229a05e7e47d07298d", "index": 1381, "guid": "9258fe96-def3-46c5-8007-f0e59f811a87", "isActive": false, "balance": "$1,869.97", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Coleen Delgado", "gender": "female", "company": "SOLAREN", "email": "coleendelgado@solaren.com", "phone": "+1 (844) 415-3011", "address": "614 Church Lane, Healy, Delaware, 9128", "about": "Exercitation et tempor velit reprehenderit ex. Cillum ipsum fugiat ex proident dolor cupidatat fugiat labore. Nulla eu adipisicing amet nostrud minim. Laborum Lorem id ea sit incididunt Lorem in et duis ex dolor irure consequat. Consequat ea nostrud enim ad nulla pariatur et voluptate deserunt quis nisi nostrud mollit adipisicing. Ad nulla anim occaecat nulla amet in consequat. Occaecat commodo id voluptate deserunt incididunt deserunt enim adipisicing ad aliqua ad id dolor dolore.\r\n", "registered": "2014-07-03T03:40:02-12:00", "latitude": -38.521277, "longitude": 147.20575, "tags": [ "deserunt", "aliquip", "dolore", "magna", "adipisicing", "fugiat", "aliqua" ], "friends": [ { "id": 0, "name": "Margret Mcgowan" }, { "id": 1, "name": "Shannon Fleming" }, { "id": 2, "name": "Kelley Burton" } ], "greeting": "Hello, Coleen Delgado! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22b53433f07c43c034", "index": 1382, "guid": "895d6a70-de33-4f6f-8812-a8b5f3df2e1e", "isActive": true, "balance": "$3,881.31", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Myrtle Graves", "gender": "female", "company": "SCHOOLIO", "email": "myrtlegraves@schoolio.com", "phone": "+1 (991) 414-2759", "address": "449 Russell Street, Osage, Pennsylvania, 1998", "about": "Laborum est aliqua minim quis labore exercitation do elit occaecat tempor laborum eiusmod. Elit ad ex dolor enim voluptate pariatur Lorem consectetur. Ut culpa enim qui et reprehenderit labore velit duis irure adipisicing.\r\n", "registered": "2014-07-25T21:32:47-12:00", "latitude": -14.438693, "longitude": 158.083266, "tags": [ "laborum", "ea", "nulla", "officia", "cupidatat", "id", "nostrud" ], "friends": [ { "id": 0, "name": "Shelley Potts" }, { "id": 1, "name": "Thornton Holland" }, { "id": 2, "name": "Maritza Hewitt" } ], "greeting": "Hello, Myrtle Graves! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22dba313ddf8d9d457", "index": 1383, "guid": "3ca7c58f-32b1-4899-a5cf-9dc4a7206587", "isActive": false, "balance": "$2,617.09", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Tessa Porter", "gender": "female", "company": "ZORK", "email": "tessaporter@zork.com", "phone": "+1 (906) 555-3599", "address": "713 Raleigh Place, Shindler, Georgia, 154", "about": "Enim duis magna nulla esse eiusmod commodo velit commodo consequat fugiat enim dolore aute dolore. Sunt anim excepteur enim occaecat dolore quis aliqua dolore laboris ad nostrud ad eu. Qui est enim Lorem consectetur nostrud esse cupidatat Lorem culpa pariatur duis ea qui dolor. Qui officia ea et ex eiusmod ex elit aliqua ipsum occaecat deserunt quis exercitation sunt. Fugiat dolor labore tempor cillum aliquip excepteur tempor voluptate incididunt sit.\r\n", "registered": "2014-05-23T06:31:59-12:00", "latitude": 53.428029, "longitude": -60.86628, "tags": [ "amet", "Lorem", "ipsum", "velit", "culpa", "occaecat", "esse" ], "friends": [ { "id": 0, "name": "Carrie Callahan" }, { "id": 1, "name": "Kirk Christensen" }, { "id": 2, "name": "Abbott Salazar" } ], "greeting": "Hello, Tessa Porter! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22f98721ffc147c596", "index": 1384, "guid": "54af2841-1cc9-4ef6-a860-cc0dd0acdea7", "isActive": false, "balance": "$2,742.97", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Burch Emerson", "gender": "male", "company": "FOSSIEL", "email": "burchemerson@fossiel.com", "phone": "+1 (972) 417-3164", "address": "741 Martense Street, Nile, North Dakota, 6632", "about": "Aliquip eiusmod ut veniam magna aute culpa dolore occaecat mollit culpa tempor ex cillum. Ex laboris pariatur voluptate ad Lorem et. Ea voluptate est nisi laboris enim sit ut aute anim. Aute magna culpa dolor laborum deserunt labore tempor pariatur et culpa duis commodo do aliqua. Sunt id nisi incididunt nostrud eu exercitation id. Deserunt sunt exercitation id ipsum nisi consequat velit.\r\n", "registered": "2014-05-01T12:14:12-12:00", "latitude": -72.601594, "longitude": -109.153078, "tags": [ "adipisicing", "commodo", "adipisicing", "ut", "incididunt", "et", "consequat" ], "friends": [ { "id": 0, "name": "Huff Velasquez" }, { "id": 1, "name": "Trujillo Chapman" }, { "id": 2, "name": "Mcfarland Jennings" } ], "greeting": "Hello, Burch Emerson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22e3d48356766fe755", "index": 1385, "guid": "b31d955b-0c67-4360-b746-1a7ae44b22ea", "isActive": true, "balance": "$2,976.79", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Bridgett Logan", "gender": "female", "company": "KEGULAR", "email": "bridgettlogan@kegular.com", "phone": "+1 (807) 555-3098", "address": "853 Blake Court, Epworth, Louisiana, 2920", "about": "Reprehenderit incididunt excepteur exercitation sit labore qui laboris Lorem et nostrud et. Aliquip velit in mollit id consectetur aliqua ullamco. Eu officia ullamco esse aute incididunt consectetur officia exercitation. Dolore labore ut aute velit do sit exercitation ullamco nulla.\r\n", "registered": "2014-07-26T11:59:42-12:00", "latitude": -60.216657, "longitude": 1.365995, "tags": [ "non", "nisi", "tempor", "sint", "tempor", "consectetur", "eu" ], "friends": [ { "id": 0, "name": "Robyn Sloan" }, { "id": 1, "name": "Strong Lamb" }, { "id": 2, "name": "Mildred Jensen" } ], "greeting": "Hello, Bridgett Logan! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22dd9e5ab38977d36c", "index": 1386, "guid": "82160f6d-ea52-476d-b56c-8f28174177ba", "isActive": true, "balance": "$1,386.24", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Lloyd Carrillo", "gender": "male", "company": "ACUMENTOR", "email": "lloydcarrillo@acumentor.com", "phone": "+1 (873) 421-2140", "address": "952 Morton Street, Loveland, Northern Mariana Islands, 969", "about": "Occaecat amet sunt exercitation fugiat adipisicing dolor elit fugiat irure cupidatat. Cupidatat magna magna consequat laboris labore voluptate dolore do sunt. Magna reprehenderit aliquip quis cupidatat. Ipsum enim proident fugiat minim tempor. Aliquip nostrud consequat esse duis proident irure ut exercitation reprehenderit occaecat duis eu fugiat. Tempor tempor qui aliquip labore veniam ullamco mollit consectetur. Excepteur dolore ex id cillum excepteur adipisicing sit deserunt laboris duis.\r\n", "registered": "2014-03-30T11:37:21-13:00", "latitude": -16.541875, "longitude": -94.752906, "tags": [ "sunt", "eiusmod", "minim", "officia", "esse", "ullamco", "labore" ], "friends": [ { "id": 0, "name": "Deirdre Mccarthy" }, { "id": 1, "name": "Cameron Salas" }, { "id": 2, "name": "Hammond Castillo" } ], "greeting": "Hello, Lloyd Carrillo! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea227f424a041e46e27f", "index": 1387, "guid": "25a43215-06e0-45d9-a967-b9a7874d0c75", "isActive": false, "balance": "$2,787.47", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Fannie Tanner", "gender": "female", "company": "QUILK", "email": "fannietanner@quilk.com", "phone": "+1 (925) 400-2843", "address": "869 Dennett Place, Thornport, Colorado, 1548", "about": "Duis irure laboris deserunt eiusmod. Ut sint ullamco ex in culpa aliqua eu labore. Ullamco nisi amet sunt laboris.\r\n", "registered": "2014-07-31T07:32:50-12:00", "latitude": -73.892837, "longitude": -91.842349, "tags": [ "laboris", "laboris", "fugiat", "enim", "anim", "ipsum", "fugiat" ], "friends": [ { "id": 0, "name": "Riddle Chase" }, { "id": 1, "name": "Serrano Suarez" }, { "id": 2, "name": "May Leonard" } ], "greeting": "Hello, Fannie Tanner! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22c9c2bcf522957020", "index": 1388, "guid": "69eefe9b-ad16-4ec1-9c78-5cffdc9b45e6", "isActive": false, "balance": "$1,599.44", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Rhonda Castro", "gender": "female", "company": "ZEDALIS", "email": "rhondacastro@zedalis.com", "phone": "+1 (933) 484-3298", "address": "987 Graham Avenue, Manila, Idaho, 187", "about": "Ad ut duis aliqua esse anim esse minim amet. Culpa id sunt occaecat duis commodo eiusmod. Fugiat non et qui duis enim amet et Lorem exercitation adipisicing culpa velit. Fugiat Lorem ullamco commodo duis nulla reprehenderit reprehenderit ut fugiat ut nulla. Cillum elit sit do nulla duis laborum. Dolor officia ex culpa eiusmod nulla deserunt duis aliqua.\r\n", "registered": "2014-04-14T20:20:49-12:00", "latitude": 67.15999, "longitude": -32.452295, "tags": [ "exercitation", "mollit", "aute", "exercitation", "pariatur", "deserunt", "proident" ], "friends": [ { "id": 0, "name": "Valenzuela Burks" }, { "id": 1, "name": "Irma Perry" }, { "id": 2, "name": "Cherry Hansen" } ], "greeting": "Hello, Rhonda Castro! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea223806591c1cb0c443", "index": 1389, "guid": "53c4d14e-cf1d-4872-8be7-fb23f0f2fe92", "isActive": false, "balance": "$2,276.50", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Fletcher Avery", "gender": "male", "company": "COMTRACT", "email": "fletcheravery@comtract.com", "phone": "+1 (954) 412-2165", "address": "466 Broadway , Dola, Marshall Islands, 4723", "about": "Ad Lorem ex ut culpa non aliquip. Consequat culpa dolor cupidatat nostrud quis proident duis sint velit quis. In dolor cillum adipisicing ut excepteur eu. Ex dolor magna reprehenderit nisi fugiat nisi consequat mollit sint est ea. Enim sint ea duis commodo mollit tempor do dolor. Incididunt exercitation ea enim ex adipisicing nisi consectetur qui.\r\n", "registered": "2014-06-22T06:36:26-12:00", "latitude": -26.149929, "longitude": 179.620346, "tags": [ "laboris", "velit", "laborum", "culpa", "velit", "nulla", "laboris" ], "friends": [ { "id": 0, "name": "Angelica Holman" }, { "id": 1, "name": "Sampson Boyle" }, { "id": 2, "name": "Leola Bauer" } ], "greeting": "Hello, Fletcher Avery! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221389f4060ff105bf", "index": 1390, "guid": "54db9776-00c3-4650-b2cb-2aed51dc145f", "isActive": true, "balance": "$2,598.70", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Stacie Avila", "gender": "female", "company": "VERBUS", "email": "stacieavila@verbus.com", "phone": "+1 (878) 476-2581", "address": "687 Woodruff Avenue, Mulino, New York, 8401", "about": "Voluptate veniam aute voluptate voluptate minim labore. Incididunt commodo tempor voluptate incididunt pariatur laboris non est dolor ullamco Lorem qui ut fugiat. Excepteur non aliqua elit aliqua anim consequat sit. Ea velit reprehenderit esse ut fugiat ad ad nulla. Dolor laboris velit culpa et. Velit nostrud minim deserunt sit nulla aliquip do quis dolore incididunt dolore qui amet veniam.\r\n", "registered": "2014-08-24T09:45:22-12:00", "latitude": -45.514191, "longitude": -151.847098, "tags": [ "aliqua", "ad", "sunt", "mollit", "voluptate", "velit", "laboris" ], "friends": [ { "id": 0, "name": "Alta Vazquez" }, { "id": 1, "name": "Smith Tucker" }, { "id": 2, "name": "Carlson Swanson" } ], "greeting": "Hello, Stacie Avila! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22339f7707b9d67211", "index": 1391, "guid": "2c0373ac-d79e-404e-9a7a-61ffef7a5d27", "isActive": true, "balance": "$3,765.19", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Sue Miles", "gender": "female", "company": "MUSANPOLY", "email": "suemiles@musanpoly.com", "phone": "+1 (830) 516-3256", "address": "492 Clinton Street, Belleview, Guam, 7993", "about": "Dolore minim duis cupidatat irure sit cillum aliqua sit officia et. Cupidatat reprehenderit adipisicing commodo amet adipisicing nulla magna laboris. Dolore enim exercitation et mollit eiusmod dolore veniam nulla. Eu Lorem in pariatur duis sit amet incididunt reprehenderit id dolore. Sit id sint sint et non laboris velit eu quis qui commodo commodo culpa est. Tempor dolor nostrud ad fugiat adipisicing non laboris tempor proident esse incididunt.\r\n", "registered": "2014-02-04T03:41:19-13:00", "latitude": 82.601383, "longitude": 138.377575, "tags": [ "enim", "Lorem", "duis", "anim", "elit", "ullamco", "voluptate" ], "friends": [ { "id": 0, "name": "Spencer Hays" }, { "id": 1, "name": "Goff Whitley" }, { "id": 2, "name": "Blevins Stone" } ], "greeting": "Hello, Sue Miles! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2291785c76eedc97d6", "index": 1392, "guid": "506488b8-5003-47b5-9a83-49e12b4bddc7", "isActive": false, "balance": "$2,357.39", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Allie Villarreal", "gender": "female", "company": "KIGGLE", "email": "allievillarreal@kiggle.com", "phone": "+1 (930) 458-3070", "address": "195 Sunnyside Avenue, Magnolia, Virgin Islands, 8507", "about": "Proident anim reprehenderit incididunt laboris deserunt do id id minim esse dolor incididunt exercitation exercitation. Labore qui magna nisi esse anim veniam aute dolore ea minim elit. Ad nulla cupidatat eiusmod cupidatat do qui anim eu anim mollit excepteur eu reprehenderit. Deserunt mollit Lorem id mollit consequat et aliqua consectetur consectetur laborum.\r\n", "registered": "2014-06-03T18:25:47-12:00", "latitude": -5.925085, "longitude": 165.436617, "tags": [ "nisi", "veniam", "culpa", "quis", "dolor", "eu", "excepteur" ], "friends": [ { "id": 0, "name": "Twila Howe" }, { "id": 1, "name": "George Keith" }, { "id": 2, "name": "Jaclyn Mayo" } ], "greeting": "Hello, Allie Villarreal! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea227c620c595ce66067", "index": 1393, "guid": "ad9e1f6c-2df9-490d-87f8-165e85595d05", "isActive": true, "balance": "$1,143.18", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Jessica Rosales", "gender": "female", "company": "TERRASYS", "email": "jessicarosales@terrasys.com", "phone": "+1 (969) 563-2171", "address": "147 Rapelye Street, Nelson, Massachusetts, 5659", "about": "Mollit adipisicing in ea nisi. Velit sit incididunt anim minim deserunt proident sunt. Non est sit exercitation deserunt incididunt sint tempor proident. Lorem aute ex ipsum ad proident proident. Ullamco enim minim et proident duis duis non eu. Sit consequat cupidatat aute exercitation.\r\n", "registered": "2014-04-01T01:21:06-13:00", "latitude": 25.567285, "longitude": 139.294534, "tags": [ "qui", "laboris", "nostrud", "in", "adipisicing", "eu", "reprehenderit" ], "friends": [ { "id": 0, "name": "Becker Mason" }, { "id": 1, "name": "Bentley Warren" }, { "id": 2, "name": "Eugenia Barlow" } ], "greeting": "Hello, Jessica Rosales! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22452109c569038b21", "index": 1394, "guid": "6a376372-2db2-4e5b-8709-e6d63d3538a7", "isActive": true, "balance": "$2,966.73", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Hogan Davis", "gender": "male", "company": "APPLICA", "email": "hogandavis@applica.com", "phone": "+1 (881) 519-3046", "address": "677 Alton Place, Deltaville, Utah, 921", "about": "Ea exercitation velit eiusmod id do. Irure nisi eu aute minim magna dolore irure proident do veniam do. Laborum excepteur tempor labore nisi adipisicing aute Lorem deserunt commodo. Irure et occaecat id non minim fugiat occaecat. Laborum nostrud est in velit consectetur nostrud irure ad laborum sit minim minim magna esse.\r\n", "registered": "2014-06-07T17:13:07-12:00", "latitude": 85.100266, "longitude": 87.768802, "tags": [ "ipsum", "aute", "pariatur", "ullamco", "nostrud", "magna", "cillum" ], "friends": [ { "id": 0, "name": "Ross Solis" }, { "id": 1, "name": "Aileen Riggs" }, { "id": 2, "name": "Gabriela Matthews" } ], "greeting": "Hello, Hogan Davis! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22895ef18f7d8c3ba4", "index": 1395, "guid": "ecd961db-c910-4250-a7f1-f99f8a9ec4e2", "isActive": false, "balance": "$3,434.01", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Dejesus Petty", "gender": "male", "company": "ZIORE", "email": "dejesuspetty@ziore.com", "phone": "+1 (810) 504-3549", "address": "743 Eckford Street, Witmer, Montana, 2736", "about": "Sit est irure reprehenderit tempor est veniam non nisi commodo. Dolore ipsum eu aliquip est irure proident nostrud. Reprehenderit voluptate do irure ad ullamco officia aute quis do culpa anim. Dolor do pariatur proident nostrud reprehenderit cillum aute enim anim. Ullamco irure nostrud non labore reprehenderit id laborum commodo. Pariatur adipisicing tempor ex ex laboris eiusmod in dolor dolor occaecat esse. Enim fugiat commodo nisi irure proident nostrud laboris do do velit voluptate quis.\r\n", "registered": "2014-08-06T18:42:41-12:00", "latitude": 68.472135, "longitude": 10.225051, "tags": [ "magna", "proident", "eiusmod", "culpa", "eiusmod", "ut", "exercitation" ], "friends": [ { "id": 0, "name": "Donna Marshall" }, { "id": 1, "name": "Mclean Black" }, { "id": 2, "name": "Bishop Sykes" } ], "greeting": "Hello, Dejesus Petty! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea223ab949e67ce9c5fc", "index": 1396, "guid": "85fbb7da-6df3-4683-84d4-f6821ffae14c", "isActive": false, "balance": "$2,122.54", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Sally Becker", "gender": "female", "company": "PAWNAGRA", "email": "sallybecker@pawnagra.com", "phone": "+1 (992) 490-3530", "address": "668 Sedgwick Street, Crawfordsville, Wisconsin, 8867", "about": "Non duis exercitation officia esse eiusmod. Officia in occaecat sit eiusmod commodo proident laborum ut elit incididunt adipisicing incididunt adipisicing dolor. Occaecat proident est cillum laboris mollit laborum incididunt commodo veniam. Sunt amet irure mollit laboris magna ipsum fugiat et velit dolor culpa aliqua. Sit dolor voluptate adipisicing consectetur cupidatat et adipisicing Lorem magna aute qui.\r\n", "registered": "2014-03-22T02:06:51-13:00", "latitude": -69.214484, "longitude": 159.889742, "tags": [ "dolor", "nulla", "dolore", "quis", "reprehenderit", "irure", "occaecat" ], "friends": [ { "id": 0, "name": "Dianna Cox" }, { "id": 1, "name": "Pat Murphy" }, { "id": 2, "name": "Ina Kim" } ], "greeting": "Hello, Sally Becker! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2230bbf02cde1ccbfc", "index": 1397, "guid": "093d55c4-e788-4d03-af93-4c1f80a49a87", "isActive": false, "balance": "$3,939.07", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Larson Stafford", "gender": "male", "company": "MAGNINA", "email": "larsonstafford@magnina.com", "phone": "+1 (907) 424-2072", "address": "377 Amherst Street, Collins, Maine, 975", "about": "Esse dolor reprehenderit laborum magna est excepteur aliquip pariatur reprehenderit ad quis sunt. Sunt irure minim cillum officia id non ullamco laborum nostrud amet dolore sit. Fugiat anim incididunt eu mollit tempor officia excepteur ullamco consectetur non proident id.\r\n", "registered": "2014-08-27T21:29:49-12:00", "latitude": -57.568795, "longitude": -63.367941, "tags": [ "aliqua", "est", "sit", "ipsum", "commodo", "anim", "elit" ], "friends": [ { "id": 0, "name": "Kathy Daniel" }, { "id": 1, "name": "Leta Hudson" }, { "id": 2, "name": "Gregory Snow" } ], "greeting": "Hello, Larson Stafford! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea225b101773c6a1745e", "index": 1398, "guid": "4b4bb731-64a8-4772-ac7e-a4c240065493", "isActive": true, "balance": "$3,581.26", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Abby Patrick", "gender": "female", "company": "IMPERIUM", "email": "abbypatrick@imperium.com", "phone": "+1 (961) 422-3878", "address": "139 Surf Avenue, Jessie, Virginia, 1966", "about": "Aliqua laboris voluptate qui anim velit sunt cupidatat anim dolor. Aliqua id quis aliquip aliquip tempor. Lorem pariatur velit dolor quis laborum veniam deserunt eu do laborum dolor voluptate Lorem. Aliqua dolor ad magna culpa incididunt ullamco dolore eiusmod non proident. In laborum eu nulla aute excepteur dolore fugiat ut. Fugiat tempor excepteur sit mollit occaecat ut enim id officia.\r\n", "registered": "2014-03-06T15:40:55-13:00", "latitude": 21.350718, "longitude": 131.636924, "tags": [ "cillum", "est", "sunt", "aliqua", "sit", "tempor", "cupidatat" ], "friends": [ { "id": 0, "name": "Lolita Padilla" }, { "id": 1, "name": "Elba Melendez" }, { "id": 2, "name": "Maryann Vasquez" } ], "greeting": "Hello, Abby Patrick! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2205bf741c9e84634c", "index": 1399, "guid": "bc49f44d-aa83-41c4-8c1a-ad6387b64748", "isActive": true, "balance": "$1,778.20", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Coleman Tyler", "gender": "male", "company": "VERTON", "email": "colemantyler@verton.com", "phone": "+1 (810) 440-3730", "address": "224 Guernsey Street, Sexton, Kentucky, 8108", "about": "Quis mollit sit aliqua fugiat laborum. Magna ex ad Lorem sit eu veniam eu sit sit nostrud fugiat. Do amet cillum excepteur nisi et amet. In anim aute aliqua irure eu commodo occaecat culpa consequat esse quis anim eu. Aliqua ex consectetur et cupidatat exercitation ad velit. Do officia ullamco commodo aute enim et occaecat esse eiusmod laborum nostrud.\r\n", "registered": "2014-03-07T03:54:07-13:00", "latitude": 42.411349, "longitude": 139.493999, "tags": [ "consectetur", "fugiat", "ut", "laborum", "magna", "id", "do" ], "friends": [ { "id": 0, "name": "Elsie Mooney" }, { "id": 1, "name": "Bowers Garrison" }, { "id": 2, "name": "Terri Best" } ], "greeting": "Hello, Coleman Tyler! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2285e9100879c96260", "index": 1400, "guid": "47bab9f3-fa67-41cd-8b3d-6e706dc1b971", "isActive": false, "balance": "$3,942.02", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Schroeder Mccormick", "gender": "male", "company": "ENQUILITY", "email": "schroedermccormick@enquility.com", "phone": "+1 (908) 410-3056", "address": "829 Gelston Avenue, Riceville, Connecticut, 5349", "about": "Occaecat laboris laborum ad anim eiusmod incididunt sint est est. Velit quis nostrud ad ipsum. Lorem quis aliquip anim do qui fugiat elit enim ipsum exercitation. Qui duis fugiat reprehenderit anim culpa amet. Reprehenderit veniam veniam do incididunt excepteur.\r\n", "registered": "2014-01-28T12:25:17-13:00", "latitude": 0.167318, "longitude": -87.010504, "tags": [ "amet", "dolor", "dolor", "culpa", "mollit", "enim", "sint" ], "friends": [ { "id": 0, "name": "Solomon Cross" }, { "id": 1, "name": "Janell Albert" }, { "id": 2, "name": "Tami Newton" } ], "greeting": "Hello, Schroeder Mccormick! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea229226df36859ac236", "index": 1401, "guid": "d217de14-2218-498b-b016-506d161ea0da", "isActive": false, "balance": "$2,576.20", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Raquel Kemp", "gender": "female", "company": "ZANITY", "email": "raquelkemp@zanity.com", "phone": "+1 (915) 560-3319", "address": "843 Greenwood Avenue, Bethany, Mississippi, 1872", "about": "Ad nostrud esse sit fugiat fugiat labore ullamco eu minim anim ex proident fugiat. Ullamco dolor reprehenderit occaecat deserunt nisi laborum ut ex cillum ut. Sunt tempor tempor esse amet ipsum aliqua do ut sint minim officia. Cupidatat et mollit Lorem cillum Lorem in anim.\r\n", "registered": "2014-02-14T20:28:41-13:00", "latitude": 27.424484, "longitude": -63.215146, "tags": [ "veniam", "Lorem", "sunt", "incididunt", "laboris", "dolore", "sunt" ], "friends": [ { "id": 0, "name": "Roy Nelson" }, { "id": 1, "name": "Sylvia Duke" }, { "id": 2, "name": "Allen Perez" } ], "greeting": "Hello, Raquel Kemp! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2221191bd2aa8b0e13", "index": 1402, "guid": "726d8813-ffa1-4d7e-a537-dd889680fd54", "isActive": true, "balance": "$3,167.27", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Maynard Hoffman", "gender": "male", "company": "OMNIGOG", "email": "maynardhoffman@omnigog.com", "phone": "+1 (810) 400-3719", "address": "778 Jerome Street, Idamay, Washington, 5845", "about": "Deserunt dolor consectetur amet elit aute officia dolor nostrud sunt est. Elit ipsum et sunt sint elit culpa aliqua excepteur voluptate. Laborum ullamco et voluptate Lorem labore quis ex nostrud aliqua sint. Et est et in ut veniam sint dolore duis commodo nulla laborum. Cupidatat magna amet voluptate duis magna elit. Adipisicing consequat cillum deserunt consequat qui exercitation amet enim do cillum Lorem commodo. Pariatur officia cupidatat deserunt nostrud voluptate tempor velit do exercitation consequat consectetur consequat minim magna.\r\n", "registered": "2014-09-16T22:59:18-12:00", "latitude": 60.697478, "longitude": 0.043397, "tags": [ "nisi", "nostrud", "laboris", "culpa", "amet", "excepteur", "aliquip" ], "friends": [ { "id": 0, "name": "Alison Waller" }, { "id": 1, "name": "Dean Bowman" }, { "id": 2, "name": "Harmon Morales" } ], "greeting": "Hello, Maynard Hoffman! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22f071a8af3d0171c5", "index": 1403, "guid": "a66d3e56-292b-4a97-adcf-0696c3fc5c2c", "isActive": true, "balance": "$1,845.97", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Franco Mejia", "gender": "male", "company": "COMVEX", "email": "francomejia@comvex.com", "phone": "+1 (927) 464-3246", "address": "503 Mill Avenue, Moquino, Tennessee, 3043", "about": "Laboris ut do dolor Lorem et ex. Duis elit duis laboris velit culpa aliqua officia Lorem aliquip duis irure ut. Reprehenderit mollit aliqua eu eu quis veniam sunt cillum sit incididunt non tempor. Aliquip enim irure ex eu laborum commodo dolor aliquip eu. Excepteur labore voluptate reprehenderit voluptate ut ut nostrud dolore eiusmod elit ipsum dolore. Commodo laborum ea esse veniam sit dolore incididunt irure irure cillum laboris ex.\r\n", "registered": "2014-04-25T05:31:35-12:00", "latitude": -80.925652, "longitude": -152.960797, "tags": [ "est", "commodo", "ullamco", "cupidatat", "sit", "exercitation", "mollit" ], "friends": [ { "id": 0, "name": "Madden Hurst" }, { "id": 1, "name": "Gross Kennedy" }, { "id": 2, "name": "Jillian Farrell" } ], "greeting": "Hello, Franco Mejia! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2205e9cfb9ed2785c6", "index": 1404, "guid": "4c8aa075-907b-466b-bad3-cc77e5a3ec26", "isActive": false, "balance": "$2,275.81", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Sherrie Doyle", "gender": "female", "company": "FURNIGEER", "email": "sherriedoyle@furnigeer.com", "phone": "+1 (823) 417-2700", "address": "733 Benson Avenue, Allamuchy, Alabama, 6584", "about": "Exercitation non pariatur eiusmod et esse amet. Qui eiusmod sunt minim sit. Dolore commodo exercitation et reprehenderit dolor cupidatat. Nulla commodo aliquip eu esse dolor consequat deserunt irure exercitation quis duis aliquip qui. Irure dolore est commodo anim.\r\n", "registered": "2014-05-09T00:10:46-12:00", "latitude": 31.802726, "longitude": -131.124183, "tags": [ "sit", "enim", "ex", "consequat", "laboris", "cupidatat", "sint" ], "friends": [ { "id": 0, "name": "Rush Hoover" }, { "id": 1, "name": "Naomi Dalton" }, { "id": 2, "name": "Drake Mcdowell" } ], "greeting": "Hello, Sherrie Doyle! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2213b305b314f21a25", "index": 1405, "guid": "de1793e5-8c02-476f-b2e0-856f63688ece", "isActive": true, "balance": "$3,802.49", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Esther Marsh", "gender": "female", "company": "NITRACYR", "email": "esthermarsh@nitracyr.com", "phone": "+1 (846) 525-2907", "address": "291 McKibben Street, Columbus, Ohio, 8653", "about": "Voluptate irure incididunt voluptate id fugiat magna magna occaecat. Amet enim nisi exercitation officia qui. Est ullamco nisi eiusmod irure anim consectetur reprehenderit. Non ad proident est laborum veniam tempor magna fugiat reprehenderit mollit.\r\n", "registered": "2014-05-04T03:46:17-12:00", "latitude": -74.297017, "longitude": -120.507454, "tags": [ "nisi", "cillum", "ipsum", "excepteur", "ullamco", "anim", "duis" ], "friends": [ { "id": 0, "name": "Jocelyn Juarez" }, { "id": 1, "name": "Lane Dillard" }, { "id": 2, "name": "Neva Lee" } ], "greeting": "Hello, Esther Marsh! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea225760001937766d98", "index": 1406, "guid": "7df66dcc-05ba-49fe-9560-ada8449c64ae", "isActive": true, "balance": "$1,624.42", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Sybil Mayer", "gender": "female", "company": "OATFARM", "email": "sybilmayer@oatfarm.com", "phone": "+1 (809) 544-3192", "address": "509 Quentin Road, Calpine, Hawaii, 594", "about": "Ex elit exercitation laboris velit mollit ipsum consequat ullamco officia fugiat. Laboris amet duis consequat adipisicing labore ex officia qui. Occaecat dolor aliquip consequat aute ipsum irure tempor irure duis dolor magna magna eu laborum. Magna cupidatat adipisicing nulla sunt mollit veniam incididunt mollit reprehenderit ullamco. Cupidatat tempor ipsum elit non magna aliqua reprehenderit id dolore est. Dolore sit qui esse sint sit dolor reprehenderit dolor elit eu adipisicing enim deserunt officia.\r\n", "registered": "2014-05-19T18:56:30-12:00", "latitude": -43.468551, "longitude": 72.210592, "tags": [ "nostrud", "ex", "esse", "commodo", "voluptate", "amet", "ex" ], "friends": [ { "id": 0, "name": "Liz Beard" }, { "id": 1, "name": "Ashley Randolph" }, { "id": 2, "name": "Liliana Rocha" } ], "greeting": "Hello, Sybil Mayer! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea229b455b6ea9ba80f5", "index": 1407, "guid": "cafa4d1c-dcbf-435d-8fd7-548b2e1223fb", "isActive": true, "balance": "$1,927.28", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Kate Owen", "gender": "female", "company": "JETSILK", "email": "kateowen@jetsilk.com", "phone": "+1 (850) 542-3397", "address": "968 Hanover Place, Iberia, New Mexico, 5957", "about": "Non amet anim laboris officia ea amet elit adipisicing cillum et ullamco reprehenderit reprehenderit. Reprehenderit enim exercitation laborum ex cillum adipisicing laboris ut ipsum. Lorem magna officia do esse nisi voluptate consequat commodo ipsum ut eu aliqua in.\r\n", "registered": "2014-05-22T16:42:30-12:00", "latitude": -71.678055, "longitude": 145.382432, "tags": [ "sit", "mollit", "ex", "nostrud", "cillum", "ex", "ullamco" ], "friends": [ { "id": 0, "name": "Faith Justice" }, { "id": 1, "name": "Pansy Walters" }, { "id": 2, "name": "Clemons Moon" } ], "greeting": "Hello, Kate Owen! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea220abe8cd8c8ff0ec2", "index": 1408, "guid": "c6b59f26-ca36-4295-9d4d-53341183311a", "isActive": true, "balance": "$2,245.02", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Chelsea Byers", "gender": "female", "company": "BOSTONIC", "email": "chelseabyers@bostonic.com", "phone": "+1 (971) 572-3264", "address": "357 President Street, Sisquoc, Maryland, 4082", "about": "Pariatur id cillum dolor ullamco deserunt sunt magna sit enim ipsum do. Consequat magna voluptate eu velit esse dolore. Laborum non laboris officia irure occaecat. Irure non laboris laborum eu enim eiusmod sit commodo laboris proident sunt pariatur. Est esse esse proident amet nulla ad ut sit cupidatat cillum officia id exercitation. Culpa tempor excepteur non est Lorem cupidatat occaecat tempor exercitation proident fugiat.\r\n", "registered": "2014-06-30T18:08:26-12:00", "latitude": 10.77436, "longitude": -94.723792, "tags": [ "Lorem", "culpa", "non", "deserunt", "dolor", "enim", "eu" ], "friends": [ { "id": 0, "name": "Gilda Mcdaniel" }, { "id": 1, "name": "Susana Pearson" }, { "id": 2, "name": "Levy Mcintosh" } ], "greeting": "Hello, Chelsea Byers! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22378c1b8de4adf9c8", "index": 1409, "guid": "30418006-507e-47ff-a719-f1ffb25b2ea5", "isActive": false, "balance": "$1,003.90", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Yang Robertson", "gender": "male", "company": "CODAX", "email": "yangrobertson@codax.com", "phone": "+1 (820) 432-2067", "address": "615 Linden Boulevard, Odessa, Alaska, 9421", "about": "Irure ullamco excepteur tempor quis nostrud ipsum consequat aliquip laboris. Tempor nisi proident laboris consectetur sunt minim do ut laborum sunt tempor velit dolore aute. Fugiat sunt irure enim tempor quis consectetur et cupidatat eiusmod dolor veniam incididunt consequat cillum.\r\n", "registered": "2014-08-29T19:16:06-12:00", "latitude": -67.971221, "longitude": -28.780913, "tags": [ "id", "cupidatat", "enim", "non", "id", "Lorem", "cupidatat" ], "friends": [ { "id": 0, "name": "Keith Sherman" }, { "id": 1, "name": "Lara Gillespie" }, { "id": 2, "name": "Hodge Glass" } ], "greeting": "Hello, Yang Robertson! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea220a354951648aeea2", "index": 1410, "guid": "32a7beaa-e75f-490d-a3d9-ae62a97f7e1a", "isActive": false, "balance": "$1,752.36", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Freida Wells", "gender": "female", "company": "MOBILDATA", "email": "freidawells@mobildata.com", "phone": "+1 (930) 570-2890", "address": "531 Monitor Street, Tyro, Arizona, 8383", "about": "Deserunt eu culpa magna aute excepteur est pariatur nostrud dolor. Est consequat minim fugiat cillum aliquip mollit. Ut nulla duis irure nostrud nisi magna non.\r\n", "registered": "2014-09-19T12:05:05-12:00", "latitude": 82.65852, "longitude": 172.192343, "tags": [ "pariatur", "proident", "occaecat", "enim", "id", "aute", "excepteur" ], "friends": [ { "id": 0, "name": "Booker Love" }, { "id": 1, "name": "Duffy Owens" }, { "id": 2, "name": "Velazquez Levy" } ], "greeting": "Hello, Freida Wells! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22454fcfce07ffb9ef", "index": 1411, "guid": "a79df715-ae48-4b80-a10c-30899a22251c", "isActive": true, "balance": "$2,808.81", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Golden Dillon", "gender": "male", "company": "BITTOR", "email": "goldendillon@bittor.com", "phone": "+1 (959) 450-3263", "address": "864 Ide Court, Cashtown, Federated States Of Micronesia, 9918", "about": "Veniam eu sit tempor est pariatur. Exercitation reprehenderit qui officia cupidatat deserunt occaecat commodo cillum. Proident deserunt adipisicing ex veniam enim in incididunt in labore occaecat aute. Quis ut sunt reprehenderit et aliquip esse eiusmod voluptate aliquip exercitation esse. Amet consequat occaecat commodo aliqua. Ipsum tempor elit ullamco amet dolore id elit voluptate officia.\r\n", "registered": "2014-05-16T07:33:15-12:00", "latitude": -35.285985, "longitude": -67.252506, "tags": [ "ut", "minim", "in", "est", "sunt", "tempor", "sint" ], "friends": [ { "id": 0, "name": "Diaz Williamson" }, { "id": 1, "name": "Madge Ware" }, { "id": 2, "name": "Malinda Alston" } ], "greeting": "Hello, Golden Dillon! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22a45602e0c27a8b82", "index": 1412, "guid": "87d093a9-66e5-4307-b0ac-1a6ae7c01126", "isActive": false, "balance": "$2,453.72", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Alana Nieves", "gender": "female", "company": "COMBOGEN", "email": "alananieves@combogen.com", "phone": "+1 (842) 531-2458", "address": "412 Applegate Court, Barrelville, Oklahoma, 5232", "about": "Et ipsum magna laboris reprehenderit irure tempor. Occaecat enim dolore fugiat reprehenderit. Cillum culpa quis dolor proident elit dolore Lorem. Aliqua consectetur ipsum laborum ullamco deserunt quis ipsum. Voluptate adipisicing occaecat laborum sunt esse anim ullamco velit velit ipsum ex adipisicing excepteur veniam. Nulla in ea consectetur esse tempor occaecat adipisicing nisi.\r\n", "registered": "2014-03-26T02:25:51-13:00", "latitude": -69.365418, "longitude": 40.698631, "tags": [ "aliquip", "deserunt", "consectetur", "fugiat", "mollit", "velit", "qui" ], "friends": [ { "id": 0, "name": "Ramona Deleon" }, { "id": 1, "name": "Darla Parrish" }, { "id": 2, "name": "Chris Farley" } ], "greeting": "Hello, Alana Nieves! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22b81acc4c85f1f9a2", "index": 1413, "guid": "58a98ae0-aa98-4e4d-9da6-9d3edd9b203f", "isActive": false, "balance": "$2,369.90", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Vargas Pugh", "gender": "male", "company": "ZYTRAX", "email": "vargaspugh@zytrax.com", "phone": "+1 (927) 428-3681", "address": "319 Midwood Street, Kula, Michigan, 606", "about": "Mollit eu consectetur magna et tempor. Fugiat aliquip magna labore occaecat. Consectetur magna officia laboris cupidatat dolor laboris dolore aliqua esse Lorem. Excepteur officia commodo ipsum excepteur nostrud magna excepteur occaecat. Ea in laborum eiusmod Lorem proident minim proident magna consectetur veniam magna ad. Incididunt ut incididunt ad esse quis labore aliqua ex proident in id ad sint. Pariatur adipisicing nostrud anim aute culpa adipisicing cillum pariatur.\r\n", "registered": "2014-06-11T18:51:16-12:00", "latitude": 45.265429, "longitude": 67.289668, "tags": [ "adipisicing", "ex", "culpa", "mollit", "esse", "aliquip", "consequat" ], "friends": [ { "id": 0, "name": "Nona Barber" }, { "id": 1, "name": "Irwin Hayes" }, { "id": 2, "name": "Harrington Pennington" } ], "greeting": "Hello, Vargas Pugh! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2241ec3384b18ee170", "index": 1414, "guid": "15654fe1-5117-4378-a2ff-119e43836ede", "isActive": false, "balance": "$3,806.14", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Cindy May", "gender": "female", "company": "OTHERSIDE", "email": "cindymay@otherside.com", "phone": "+1 (921) 508-3092", "address": "373 Ovington Avenue, Bawcomville, Kansas, 2160", "about": "Pariatur tempor culpa nostrud occaecat consequat velit voluptate commodo ipsum mollit consectetur cupidatat. Laborum minim mollit aliqua pariatur proident minim. Irure non non sint irure voluptate voluptate sit exercitation esse. Sunt dolor anim in irure pariatur commodo. Laborum sint excepteur consectetur dolore officia nisi irure et.\r\n", "registered": "2014-05-02T04:44:41-12:00", "latitude": -29.017421, "longitude": 127.164259, "tags": [ "anim", "sint", "et", "cillum", "anim", "sunt", "dolor" ], "friends": [ { "id": 0, "name": "Terry Hyde" }, { "id": 1, "name": "Gretchen Nunez" }, { "id": 2, "name": "Loraine Hodge" } ], "greeting": "Hello, Cindy May! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22fde453bbe29e5d7c", "index": 1415, "guid": "84dbdb8b-a001-4a2d-bffd-2324036f231f", "isActive": true, "balance": "$1,299.99", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Lucia Dominguez", "gender": "female", "company": "TERSANKI", "email": "luciadominguez@tersanki.com", "phone": "+1 (832) 514-3975", "address": "216 Barbey Street, Hartsville/Hartley, South Dakota, 5136", "about": "Ipsum velit nisi et est culpa quis ut deserunt eu excepteur elit. Aliqua aliquip ipsum in voluptate nulla sint duis. Ullamco nisi consectetur ea elit qui. Cupidatat nulla labore consequat nisi eu nisi eiusmod nulla proident. Ullamco consequat velit dolore deserunt sit in officia anim consectetur. Reprehenderit cillum tempor qui do excepteur.\r\n", "registered": "2014-02-19T06:34:32-13:00", "latitude": 81.099849, "longitude": -41.902247, "tags": [ "Lorem", "dolor", "duis", "aliquip", "eu", "dolor", "aliqua" ], "friends": [ { "id": 0, "name": "Whitney Mitchell" }, { "id": 1, "name": "Ramirez Rogers" }, { "id": 2, "name": "Roth Odom" } ], "greeting": "Hello, Lucia Dominguez! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2281065a06a5a0d2b7", "index": 1416, "guid": "9cc7e7ff-46b3-4993-9874-3c5cf7eb22df", "isActive": false, "balance": "$1,545.45", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Cannon Brock", "gender": "male", "company": "DIGIFAD", "email": "cannonbrock@digifad.com", "phone": "+1 (928) 572-3506", "address": "718 Beverly Road, Courtland, West Virginia, 6329", "about": "Minim est esse ad eiusmod ut enim enim id aliqua laborum velit labore irure aute. Aliqua irure ullamco deserunt reprehenderit duis velit sit quis anim voluptate consequat. Nostrud qui anim quis est Lorem ullamco incididunt laborum qui et. Anim id enim in et irure pariatur velit. Aliquip occaecat elit non deserunt sunt minim pariatur deserunt. Eiusmod nostrud mollit anim labore eu pariatur. Aliquip esse nulla labore Lorem id mollit ipsum magna non anim voluptate fugiat ea commodo.\r\n", "registered": "2014-07-07T16:25:56-12:00", "latitude": 85.97084, "longitude": -121.534562, "tags": [ "proident", "dolore", "consequat", "sit", "tempor", "reprehenderit", "nulla" ], "friends": [ { "id": 0, "name": "Ora Dixon" }, { "id": 1, "name": "Bridgette Barnes" }, { "id": 2, "name": "Joyner Massey" } ], "greeting": "Hello, Cannon Brock! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea228f74df6a27393422", "index": 1417, "guid": "c1eae223-76b0-4e0e-9d35-b4c3b0f65fb4", "isActive": false, "balance": "$2,659.61", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Nieves Morton", "gender": "male", "company": "PLASMOX", "email": "nievesmorton@plasmox.com", "phone": "+1 (923) 473-2070", "address": "516 Llama Court, Cedarville, Texas, 3870", "about": "Ea eiusmod cillum magna laboris. Officia ut occaecat aliquip elit nostrud exercitation eiusmod aliqua duis. Lorem Lorem consectetur consectetur consectetur sunt. Est ullamco dolore deserunt laboris fugiat voluptate velit eu reprehenderit voluptate. Consequat excepteur deserunt id adipisicing ex non ad mollit non. Occaecat commodo culpa mollit aute duis aliquip aliqua occaecat culpa ex aliqua velit duis.\r\n", "registered": "2014-03-05T23:20:43-13:00", "latitude": 24.931793, "longitude": -17.552853, "tags": [ "irure", "aliqua", "ea", "eiusmod", "ut", "do", "voluptate" ], "friends": [ { "id": 0, "name": "Collier Landry" }, { "id": 1, "name": "Tamera Garcia" }, { "id": 2, "name": "Lillie Bowers" } ], "greeting": "Hello, Nieves Morton! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea229cce4412cf445709", "index": 1418, "guid": "9b2c6933-b612-4d34-a298-aae4cae609f0", "isActive": true, "balance": "$1,195.85", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Cristina Whitaker", "gender": "female", "company": "PROGENEX", "email": "cristinawhitaker@progenex.com", "phone": "+1 (859) 505-2336", "address": "954 Rewe Street, Hickory, Oregon, 9103", "about": "Id ea in est consectetur mollit enim est ipsum deserunt. Labore in voluptate tempor cillum ullamco. Cupidatat fugiat non aliqua tempor excepteur. Consequat ad veniam nostrud dolore magna.\r\n", "registered": "2014-06-25T00:47:49-12:00", "latitude": 73.335855, "longitude": -78.991574, "tags": [ "dolore", "qui", "labore", "in", "adipisicing", "dolore", "tempor" ], "friends": [ { "id": 0, "name": "Michael Gordon" }, { "id": 1, "name": "Minnie Downs" }, { "id": 2, "name": "Sheree Rose" } ], "greeting": "Hello, Cristina Whitaker! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2215323c0b4e899d8d", "index": 1419, "guid": "8a4a3474-1b45-46f8-8992-e40fd418ff05", "isActive": true, "balance": "$2,495.91", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Adriana Blackwell", "gender": "female", "company": "FISHLAND", "email": "adrianablackwell@fishland.com", "phone": "+1 (892) 441-2980", "address": "771 Vandalia Avenue, Dowling, Nevada, 1037", "about": "Aliqua labore dolor excepteur mollit aute commodo ut sunt. Consectetur velit excepteur veniam anim nulla consectetur mollit cupidatat consequat commodo. Ea ipsum sint pariatur anim sit ad commodo magna aute eiusmod aliquip ut enim mollit. Velit reprehenderit dolor eiusmod aliqua Lorem nulla ullamco tempor mollit aute occaecat. Labore magna aliqua non veniam cillum non mollit deserunt sint.\r\n", "registered": "2014-01-13T02:53:23-13:00", "latitude": 25.871695, "longitude": 91.648779, "tags": [ "labore", "velit", "do", "proident", "incididunt", "laborum", "fugiat" ], "friends": [ { "id": 0, "name": "Serena Steele" }, { "id": 1, "name": "Herrera Dorsey" }, { "id": 2, "name": "Pitts Burch" } ], "greeting": "Hello, Adriana Blackwell! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22da27b150b93aa030", "index": 1420, "guid": "f456d765-0c34-4c44-9714-f0f7fe4287b9", "isActive": false, "balance": "$3,961.99", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Erma Miller", "gender": "female", "company": "TERAPRENE", "email": "ermamiller@teraprene.com", "phone": "+1 (905) 407-3340", "address": "586 Ford Street, Romeville, Minnesota, 2213", "about": "Occaecat Lorem voluptate est ipsum cillum exercitation fugiat laborum ex consectetur irure laborum excepteur cupidatat. In laborum Lorem voluptate do. Sint reprehenderit fugiat laborum tempor elit aliquip eiusmod do tempor tempor labore. Fugiat sit nulla esse qui ullamco dolor occaecat aliqua adipisicing. Sit ad elit dolor consectetur in.\r\n", "registered": "2014-06-17T22:59:43-12:00", "latitude": -31.621216, "longitude": 27.826134, "tags": [ "quis", "sunt", "officia", "consequat", "tempor", "adipisicing", "et" ], "friends": [ { "id": 0, "name": "Aline Gross" }, { "id": 1, "name": "Eddie Rowe" }, { "id": 2, "name": "Dennis Fitzgerald" } ], "greeting": "Hello, Erma Miller! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2214218c32ce27c5dc", "index": 1421, "guid": "0f968d8e-9c91-4b45-99c0-7eee9ae0345f", "isActive": false, "balance": "$2,889.08", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Hardin Burris", "gender": "male", "company": "AQUOAVO", "email": "hardinburris@aquoavo.com", "phone": "+1 (928) 533-3884", "address": "862 Quincy Street, Thomasville, Missouri, 3389", "about": "Exercitation excepteur sint consectetur do ex. Do dolore ullamco aliquip consequat ex officia irure ex. Occaecat reprehenderit culpa id enim occaecat anim proident commodo proident in adipisicing sint dolor.\r\n", "registered": "2014-07-11T17:29:41-12:00", "latitude": 89.211443, "longitude": 143.991855, "tags": [ "eiusmod", "quis", "incididunt", "laboris", "quis", "aliqua", "commodo" ], "friends": [ { "id": 0, "name": "Willis Case" }, { "id": 1, "name": "Rocha Hines" }, { "id": 2, "name": "Robinson Contreras" } ], "greeting": "Hello, Hardin Burris! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22bb0312d67cce3256", "index": 1422, "guid": "88469d72-ef88-4515-ae89-eecf159b101e", "isActive": true, "balance": "$1,776.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Judy Chen", "gender": "female", "company": "ISOSPHERE", "email": "judychen@isosphere.com", "phone": "+1 (914) 428-2752", "address": "791 Underhill Avenue, Roland, Rhode Island, 6774", "about": "Duis incididunt ea culpa et ut ea sunt non. Non cillum veniam qui esse tempor proident. Ullamco cillum commodo laborum amet duis eu Lorem eu ut aute. Irure laborum dolor qui commodo consequat tempor reprehenderit consequat consequat commodo eu aute velit minim. Anim ut culpa excepteur mollit incididunt anim eu cupidatat aute sit.\r\n", "registered": "2014-01-24T20:39:11-13:00", "latitude": -67.472823, "longitude": 57.407868, "tags": [ "dolor", "esse", "ad", "id", "minim", "fugiat", "dolor" ], "friends": [ { "id": 0, "name": "Myra Bean" }, { "id": 1, "name": "Crawford Burns" }, { "id": 2, "name": "Katie Bruce" } ], "greeting": "Hello, Judy Chen! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea226c6534f188e958a3", "index": 1423, "guid": "951d6a00-f864-483a-acd3-d94cc8ebc924", "isActive": false, "balance": "$1,625.54", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Barlow Gilliam", "gender": "male", "company": "UNI", "email": "barlowgilliam@uni.com", "phone": "+1 (917) 469-2700", "address": "989 Herkimer Court, Brutus, Florida, 2182", "about": "Ut sint amet exercitation incididunt ex. Magna sint dolor adipisicing dolor laboris. Et cupidatat irure velit et eiusmod in laboris. Reprehenderit aliqua occaecat exercitation ex eu adipisicing officia ut.\r\n", "registered": "2014-05-10T12:22:48-12:00", "latitude": 24.389219, "longitude": -67.337644, "tags": [ "labore", "laborum", "non", "sit", "excepteur", "excepteur", "est" ], "friends": [ { "id": 0, "name": "Imogene Weiss" }, { "id": 1, "name": "Bettye Sharp" }, { "id": 2, "name": "Fitzpatrick Rivera" } ], "greeting": "Hello, Barlow Gilliam! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22d46b9f7da66d8eb2", "index": 1424, "guid": "200a07f1-78d1-4033-bc1b-ca17df30b133", "isActive": false, "balance": "$1,223.90", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Audra Hobbs", "gender": "female", "company": "ZAGGLE", "email": "audrahobbs@zaggle.com", "phone": "+1 (825) 533-3645", "address": "795 Royce Place, Norwood, North Carolina, 4616", "about": "Magna non excepteur minim aliquip adipisicing ea occaecat. Incididunt consectetur excepteur magna velit officia qui nisi eu laborum nisi amet sunt. Ea eu reprehenderit velit enim. Aliqua ipsum duis sit non cillum. Eu nulla eiusmod nulla cupidatat anim et culpa nulla tempor eu dolor. Veniam ad nostrud officia laborum dolor exercitation ut reprehenderit aliqua. Magna velit ex veniam reprehenderit est incididunt aliqua laboris exercitation.\r\n", "registered": "2014-02-15T18:13:47-13:00", "latitude": -51.867315, "longitude": 165.447453, "tags": [ "consequat", "ex", "mollit", "irure", "est", "minim", "velit" ], "friends": [ { "id": 0, "name": "Evangeline Parker" }, { "id": 1, "name": "Cruz West" }, { "id": 2, "name": "Casandra Peck" } ], "greeting": "Hello, Audra Hobbs! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22c9be4f543f7497b9", "index": 1425, "guid": "debc0c65-b77e-4af8-8351-64f65aeffdec", "isActive": false, "balance": "$3,343.25", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Bonita Hogan", "gender": "female", "company": "DIGIGENE", "email": "bonitahogan@digigene.com", "phone": "+1 (855) 569-2915", "address": "454 Bushwick Court, Falconaire, New Hampshire, 5569", "about": "Lorem mollit veniam ipsum consectetur nulla minim ex officia adipisicing do irure magna occaecat. Laborum nisi dolor fugiat non Lorem officia elit. Culpa do dolor amet aliqua do id cillum in mollit officia qui sint sint. Do sit officia nostrud labore irure Lorem sit fugiat culpa. Aliquip eiusmod consequat occaecat minim enim minim nostrud. Voluptate consectetur cupidatat sit Lorem in reprehenderit dolore.\r\n", "registered": "2014-08-30T19:15:06-12:00", "latitude": 45.37247, "longitude": 52.202637, "tags": [ "est", "labore", "ea", "aliqua", "aute", "deserunt", "ex" ], "friends": [ { "id": 0, "name": "Callahan Coffey" }, { "id": 1, "name": "Denise Snider" }, { "id": 2, "name": "Consuelo Flores" } ], "greeting": "Hello, Bonita Hogan! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22dd15c5f313f446b5", "index": 1426, "guid": "573495a3-1d0d-4c06-b51f-3439c9f032e7", "isActive": false, "balance": "$3,354.84", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Ortega Harrell", "gender": "male", "company": "SILODYNE", "email": "ortegaharrell@silodyne.com", "phone": "+1 (846) 600-2503", "address": "676 Schenck Avenue, Stonybrook, Arkansas, 6275", "about": "Esse nostrud id nostrud aliquip consectetur amet quis eiusmod incididunt do voluptate. Nisi quis ea exercitation in cillum sint dolor Lorem esse tempor velit ad irure ullamco. Consequat velit ea cillum consectetur commodo ut occaecat amet nisi aliquip nulla officia. Labore laborum ad cillum est qui non nulla nulla esse. Et non quis fugiat eiusmod nulla sint nulla consequat tempor veniam nostrud occaecat. Enim pariatur minim ex aliqua non nulla deserunt veniam nostrud velit veniam.\r\n", "registered": "2014-05-16T23:42:01-12:00", "latitude": 26.875415, "longitude": 156.293423, "tags": [ "pariatur", "ipsum", "non", "nostrud", "ipsum", "duis", "enim" ], "friends": [ { "id": 0, "name": "Stout Henson" }, { "id": 1, "name": "Arline Booth" }, { "id": 2, "name": "Enid Willis" } ], "greeting": "Hello, Ortega Harrell! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2279201783a68edb24", "index": 1427, "guid": "edd1de49-ca7b-4ade-a02c-b3abb773c842", "isActive": false, "balance": "$2,821.64", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Diana Carpenter", "gender": "female", "company": "MANTRIX", "email": "dianacarpenter@mantrix.com", "phone": "+1 (970) 596-3160", "address": "680 Bath Avenue, Keller, Iowa, 927", "about": "Ea mollit exercitation dolore reprehenderit culpa velit reprehenderit do nostrud. Veniam enim officia id aliquip ea consequat in enim qui. Nulla ea ea est consequat laboris eiusmod exercitation eiusmod amet adipisicing adipisicing reprehenderit eu.\r\n", "registered": "2014-09-19T19:06:30-12:00", "latitude": 81.695499, "longitude": -139.882096, "tags": [ "incididunt", "aliquip", "culpa", "in", "aliqua", "ex", "proident" ], "friends": [ { "id": 0, "name": "Boyd Pena" }, { "id": 1, "name": "Vera Washington" }, { "id": 2, "name": "Corine Potter" } ], "greeting": "Hello, Diana Carpenter! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22ee86127371f49989", "index": 1428, "guid": "b3933bf5-ae16-4c59-aecc-10aa99d9d6af", "isActive": false, "balance": "$2,635.59", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Ola Gates", "gender": "female", "company": "ENTALITY", "email": "olagates@entality.com", "phone": "+1 (872) 435-3512", "address": "188 Woodbine Street, Rivera, Nebraska, 7903", "about": "Nostrud et anim amet qui ipsum veniam excepteur velit velit adipisicing. Reprehenderit veniam ipsum commodo et in. Velit sint voluptate mollit sit mollit sit qui reprehenderit adipisicing mollit voluptate.\r\n", "registered": "2014-03-01T05:17:10-13:00", "latitude": -79.58556, "longitude": -149.982488, "tags": [ "in", "adipisicing", "ipsum", "consectetur", "reprehenderit", "ut", "pariatur" ], "friends": [ { "id": 0, "name": "Dickerson Hopkins" }, { "id": 1, "name": "Adrian Gilbert" }, { "id": 2, "name": "Tasha Walls" } ], "greeting": "Hello, Ola Gates! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea221949798f95e33b8b", "index": 1429, "guid": "eab60418-84fa-40fa-84d4-e84164ca8d06", "isActive": false, "balance": "$1,028.85", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Melva Franklin", "gender": "female", "company": "DYMI", "email": "melvafranklin@dymi.com", "phone": "+1 (869) 419-2913", "address": "579 Waldorf Court, Fillmore, District Of Columbia, 7738", "about": "Culpa minim duis mollit magna laboris. Mollit aute esse nostrud culpa sunt aliquip. Ipsum aliqua pariatur consequat cillum aute reprehenderit. Exercitation qui ex eu aliquip dolor id in minim in. Est sunt anim irure mollit laborum consequat irure aute ad sit cupidatat. Cupidatat excepteur Lorem do ut duis cillum Lorem laborum est consequat sint consequat dolore esse. Irure eiusmod enim consectetur officia enim consequat non ad tempor elit velit excepteur consequat sint.\r\n", "registered": "2014-09-13T10:12:04-12:00", "latitude": -81.664129, "longitude": -100.919805, "tags": [ "velit", "aliquip", "commodo", "sit", "labore", "magna", "et" ], "friends": [ { "id": 0, "name": "Goldie Reed" }, { "id": 1, "name": "Danielle Odonnell" }, { "id": 2, "name": "Della Chang" } ], "greeting": "Hello, Melva Franklin! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22f7f8679fab1318ec", "index": 1430, "guid": "25c2d4ef-5311-4ceb-abe0-875253163d2c", "isActive": false, "balance": "$1,093.99", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Valdez Snyder", "gender": "male", "company": "GLASSTEP", "email": "valdezsnyder@glasstep.com", "phone": "+1 (883) 567-3601", "address": "900 Osborn Street, Marenisco, New Jersey, 4476", "about": "Est id cillum nisi adipisicing aliquip nulla irure. Lorem nisi id culpa commodo pariatur est enim pariatur aliquip eiusmod. Mollit officia ea ad laborum consectetur proident. Qui ipsum laborum excepteur fugiat. Qui non consequat do sint velit non cillum duis mollit aute officia eu cupidatat.\r\n", "registered": "2014-05-15T08:14:36-12:00", "latitude": -48.630833, "longitude": 102.92304, "tags": [ "laborum", "aliquip", "cillum", "enim", "anim", "duis", "exercitation" ], "friends": [ { "id": 0, "name": "Stanley Elliott" }, { "id": 1, "name": "Louise Neal" }, { "id": 2, "name": "Janna Boone" } ], "greeting": "Hello, Valdez Snyder! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22ab21141185bfd75a", "index": 1431, "guid": "a4f203a9-8447-4386-85b8-25213cd418ce", "isActive": false, "balance": "$2,270.09", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Bernadine Valencia", "gender": "female", "company": "SYNKGEN", "email": "bernadinevalencia@synkgen.com", "phone": "+1 (874) 578-2483", "address": "420 Will Place, Stewartville, Palau, 188", "about": "Ea adipisicing mollit quis do veniam nostrud laboris fugiat occaecat dolore dolore labore consectetur cupidatat. Esse dolor non ipsum adipisicing pariatur sunt ipsum est eu do anim occaecat sint sint. Dolor quis ad eu nostrud aliqua sit dolor anim non laborum qui quis deserunt consequat.\r\n", "registered": "2014-05-03T16:17:44-12:00", "latitude": -81.969628, "longitude": -132.873022, "tags": [ "aliqua", "est", "magna", "Lorem", "consequat", "aute", "duis" ], "friends": [ { "id": 0, "name": "Forbes Robinson" }, { "id": 1, "name": "Fay Macdonald" }, { "id": 2, "name": "Carissa Santiago" } ], "greeting": "Hello, Bernadine Valencia! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22fb95e25e5c2808de", "index": 1432, "guid": "4552ddf7-9248-43b2-904a-fe35a3dc2823", "isActive": true, "balance": "$1,427.88", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Berry Bartlett", "gender": "male", "company": "BIOLIVE", "email": "berrybartlett@biolive.com", "phone": "+1 (999) 553-3578", "address": "317 Strong Place, Greer, Puerto Rico, 7628", "about": "Do irure amet pariatur culpa sunt mollit consectetur amet nulla sunt sit pariatur occaecat ex. Dolor veniam officia reprehenderit in. Pariatur eu velit dolore elit ex fugiat ex adipisicing. Commodo reprehenderit qui ut aliqua officia mollit laborum consectetur fugiat elit dolore sunt. Consequat elit anim mollit aliqua duis eiusmod ullamco eu do sit amet fugiat aliqua. Fugiat elit et nostrud labore anim voluptate anim ex ex cupidatat in.\r\n", "registered": "2014-05-18T12:44:32-12:00", "latitude": 44.983494, "longitude": 159.335307, "tags": [ "dolore", "esse", "duis", "occaecat", "voluptate", "aliqua", "aliquip" ], "friends": [ { "id": 0, "name": "Brandie Weeks" }, { "id": 1, "name": "Cecelia Lott" }, { "id": 2, "name": "Hancock Oconnor" } ], "greeting": "Hello, Berry Bartlett! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22d07416a9860fa387", "index": 1433, "guid": "c1a8ecea-6c1d-4dec-8d59-b94af756fe6d", "isActive": true, "balance": "$3,839.47", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Caldwell Dejesus", "gender": "male", "company": "INJOY", "email": "caldwelldejesus@injoy.com", "phone": "+1 (813) 588-2780", "address": "159 Vine Street, Waikele, California, 5174", "about": "Fugiat consectetur commodo quis officia dolor cupidatat anim anim irure. Nulla aliquip est et id et culpa consectetur ea ipsum adipisicing est deserunt est. Fugiat et magna minim in aliquip cillum eiusmod Lorem cillum reprehenderit minim laboris eu. Aliquip irure veniam velit aliqua ipsum dolor Lorem. Esse ipsum eiusmod deserunt duis minim. Sint mollit ea dolore reprehenderit.\r\n", "registered": "2014-01-24T07:31:34-13:00", "latitude": -5.127295, "longitude": 165.719343, "tags": [ "culpa", "sint", "fugiat", "ad", "ad", "ad", "est" ], "friends": [ { "id": 0, "name": "Knapp Cline" }, { "id": 1, "name": "Lidia Larson" }, { "id": 2, "name": "Meredith Velazquez" } ], "greeting": "Hello, Caldwell Dejesus! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea225064d3dba512576d", "index": 1434, "guid": "b95634c6-8e3a-4618-89ff-05eff2be96e2", "isActive": false, "balance": "$2,730.25", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Rhea Newman", "gender": "female", "company": "PLAYCE", "email": "rheanewman@playce.com", "phone": "+1 (833) 551-2660", "address": "269 Suydam Place, Utting, Vermont, 375", "about": "Occaecat sint sunt ea aliquip Lorem sunt Lorem amet sint anim anim fugiat laborum deserunt. Ullamco cupidatat mollit adipisicing fugiat laboris laboris et deserunt eiusmod ullamco elit tempor fugiat. Pariatur dolore sunt enim minim velit culpa nisi in labore qui nisi ea officia.\r\n", "registered": "2014-04-21T14:54:27-12:00", "latitude": 88.457317, "longitude": -29.837106, "tags": [ "cupidatat", "reprehenderit", "deserunt", "eiusmod", "qui", "et", "quis" ], "friends": [ { "id": 0, "name": "Becky Dyer" }, { "id": 1, "name": "Stacy Blair" }, { "id": 2, "name": "Gwen Keller" } ], "greeting": "Hello, Rhea Newman! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2237ec53315f5a77de", "index": 1435, "guid": "559ba52b-478e-4de2-85d4-1e6d6efe1ed9", "isActive": true, "balance": "$3,105.20", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Polly Hampton", "gender": "female", "company": "ZILLACON", "email": "pollyhampton@zillacon.com", "phone": "+1 (902) 559-3979", "address": "686 Royce Street, Dubois, Indiana, 9688", "about": "Sint cillum commodo enim veniam culpa quis occaecat labore in. Excepteur proident est tempor incididunt ipsum incididunt cillum culpa amet deserunt exercitation nisi nostrud fugiat. Voluptate ullamco excepteur id consectetur aliqua labore ut. Ex cillum aliquip deserunt laboris dolore sit elit eu amet.\r\n", "registered": "2014-06-26T11:39:01-12:00", "latitude": 12.532887, "longitude": 165.05736, "tags": [ "fugiat", "aliquip", "pariatur", "in", "cupidatat", "sunt", "aliquip" ], "friends": [ { "id": 0, "name": "Lowery Hernandez" }, { "id": 1, "name": "Marquez Nguyen" }, { "id": 2, "name": "Stefanie Ingram" } ], "greeting": "Hello, Polly Hampton! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22fc78e55f9e5b833f", "index": 1436, "guid": "f1a14949-aa6c-467f-91e3-2469e031268e", "isActive": false, "balance": "$2,738.74", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Daniel Maldonado", "gender": "male", "company": "VISUALIX", "email": "danielmaldonado@visualix.com", "phone": "+1 (843) 463-2003", "address": "401 Hubbard Street, Russellville, Illinois, 3914", "about": "Exercitation laboris eu veniam duis cillum tempor nostrud sit elit. Ea ullamco veniam laboris proident ad incididunt do culpa reprehenderit exercitation sint est aute. Magna commodo dolore in cupidatat. Pariatur laborum sit laboris exercitation et ea proident. Proident ea dolore id ullamco velit fugiat reprehenderit. Non reprehenderit consequat laboris dolore labore sit mollit velit commodo magna non.\r\n", "registered": "2014-01-01T07:01:13-13:00", "latitude": -41.348053, "longitude": 110.595241, "tags": [ "commodo", "quis", "laborum", "do", "minim", "qui", "ipsum" ], "friends": [ { "id": 0, "name": "Bethany Guthrie" }, { "id": 1, "name": "Briggs Fletcher" }, { "id": 2, "name": "Christensen Jarvis" } ], "greeting": "Hello, Daniel Maldonado! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2261c07990aa427dfe", "index": 1437, "guid": "228363c0-305a-4953-b0fe-b0eec3995226", "isActive": false, "balance": "$1,943.03", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Rhodes Hinton", "gender": "male", "company": "SENMAO", "email": "rhodeshinton@senmao.com", "phone": "+1 (972) 420-2821", "address": "805 Lee Avenue, Kidder, South Carolina, 1886", "about": "Eiusmod occaecat tempor eiusmod in excepteur velit eu sint. Ea ipsum ex est officia enim excepteur aute eiusmod pariatur minim tempor adipisicing excepteur ex. Sint sunt sint consequat consectetur in esse ipsum deserunt ullamco incididunt et velit magna. Eiusmod deserunt veniam commodo labore. Minim dolor commodo occaecat dolore in est proident consequat. Ex minim ipsum fugiat eu sunt officia ipsum consequat ad. Nostrud cillum fugiat reprehenderit aliquip pariatur eiusmod occaecat sint ea deserunt aute occaecat velit aliquip.\r\n", "registered": "2014-06-16T03:21:35-12:00", "latitude": -88.619336, "longitude": -128.169579, "tags": [ "non", "sit", "deserunt", "magna", "dolor", "id", "dolore" ], "friends": [ { "id": 0, "name": "Parks Battle" }, { "id": 1, "name": "Elma Allen" }, { "id": 2, "name": "Atkins Barrett" } ], "greeting": "Hello, Rhodes Hinton! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22b4769a5acf7f32cd", "index": 1438, "guid": "3d3bc0c2-ddee-4446-aab4-910ef19fdeef", "isActive": true, "balance": "$3,058.42", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Ayala Rojas", "gender": "male", "company": "QIMONK", "email": "ayalarojas@qimonk.com", "phone": "+1 (912) 400-2748", "address": "725 Hopkins Street, Fidelis, American Samoa, 9361", "about": "Quis magna ea amet in deserunt. Aliqua id magna laborum ipsum deserunt officia occaecat esse anim. Et qui nostrud laborum Lorem aliqua velit culpa consequat nulla irure est. Lorem nulla irure consequat aliquip consequat nisi nostrud adipisicing occaecat cupidatat officia. Do est sint labore enim proident dolor elit nostrud exercitation aliqua.\r\n", "registered": "2014-03-26T02:34:38-13:00", "latitude": -1.285497, "longitude": 115.153821, "tags": [ "Lorem", "sint", "Lorem", "veniam", "adipisicing", "ea", "sit" ], "friends": [ { "id": 0, "name": "Tucker Dotson" }, { "id": 1, "name": "Sabrina Spence" }, { "id": 2, "name": "Lila Burke" } ], "greeting": "Hello, Ayala Rojas! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea220e7293550541fe4b", "index": 1439, "guid": "05e7b4f4-5a2f-4d87-a79e-ab8af790f454", "isActive": false, "balance": "$3,046.20", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Joan Rosario", "gender": "female", "company": "GEEKOLA", "email": "joanrosario@geekola.com", "phone": "+1 (912) 491-3737", "address": "785 Florence Avenue, Websterville, Delaware, 1666", "about": "Fugiat excepteur duis culpa adipisicing nostrud reprehenderit elit fugiat qui voluptate. Enim eu qui consectetur ea velit voluptate eu ex et pariatur. Laboris magna sunt laboris laborum excepteur proident velit.\r\n", "registered": "2014-03-04T00:39:07-13:00", "latitude": 88.904436, "longitude": 113.17368, "tags": [ "aute", "excepteur", "elit", "cillum", "in", "irure", "aliqua" ], "friends": [ { "id": 0, "name": "Elisa Stephenson" }, { "id": 1, "name": "Letitia Frederick" }, { "id": 2, "name": "Patterson Kirkland" } ], "greeting": "Hello, Joan Rosario! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22bd3f749813e5b332", "index": 1440, "guid": "a41ee43d-a2c5-447d-af02-d4a8592776a7", "isActive": true, "balance": "$1,534.33", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Alisha Wall", "gender": "female", "company": "TECHADE", "email": "alishawall@techade.com", "phone": "+1 (884) 418-2411", "address": "449 Pilling Street, Rockhill, Pennsylvania, 1517", "about": "Ad ex elit nulla est ea esse qui nulla id. Enim minim cupidatat id aute aute eiusmod duis aliquip. Voluptate consequat cupidatat consequat anim ipsum dolor velit.\r\n", "registered": "2014-05-08T00:36:34-12:00", "latitude": -60.74394, "longitude": 139.03482, "tags": [ "labore", "veniam", "in", "ad", "ea", "Lorem", "esse" ], "friends": [ { "id": 0, "name": "Joyce Parsons" }, { "id": 1, "name": "Louisa Curtis" }, { "id": 2, "name": "Blanche Diaz" } ], "greeting": "Hello, Alisha Wall! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea224dfb3c3a1dc03fb4", "index": 1441, "guid": "cb94f8e5-c0ea-4224-8154-97070281f1dd", "isActive": true, "balance": "$3,367.03", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Cassie Henderson", "gender": "female", "company": "TECHTRIX", "email": "cassiehenderson@techtrix.com", "phone": "+1 (986) 572-3784", "address": "630 Irving Place, Elfrida, Georgia, 1741", "about": "Nulla occaecat Lorem amet laboris ullamco laborum do fugiat nisi deserunt. Proident id non id Lorem veniam incididunt. In exercitation ex labore et aliquip commodo. Sint incididunt eiusmod aliqua Lorem enim. Commodo aliquip labore sunt irure pariatur sunt magna dolore duis officia aliquip. Minim officia nisi minim mollit ullamco veniam dolor. Labore tempor nulla laborum occaecat.\r\n", "registered": "2014-07-09T00:58:53-12:00", "latitude": -40.772541, "longitude": 21.000435, "tags": [ "incididunt", "cillum", "ut", "adipisicing", "voluptate", "incididunt", "pariatur" ], "friends": [ { "id": 0, "name": "Mcclain Fisher" }, { "id": 1, "name": "Fleming Forbes" }, { "id": 2, "name": "Sherry Bass" } ], "greeting": "Hello, Cassie Henderson! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2257166757e565e461", "index": 1442, "guid": "9d7183cb-ad0f-4185-a1c4-d5cb1c12c258", "isActive": false, "balance": "$3,590.86", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Frankie Rowland", "gender": "female", "company": "ESSENSIA", "email": "frankierowland@essensia.com", "phone": "+1 (984) 576-3061", "address": "306 Etna Street, Aberdeen, North Dakota, 3196", "about": "Quis magna aliquip irure veniam sit amet nostrud dolore eiusmod laborum nostrud. Labore voluptate dolor incididunt proident eiusmod aliquip. Dolor irure qui deserunt nostrud. Eu aute voluptate reprehenderit culpa non. Ea tempor laborum tempor pariatur dolore voluptate ea qui nulla reprehenderit in adipisicing non cupidatat. Est sint proident voluptate reprehenderit non incididunt enim et consequat voluptate culpa culpa.\r\n", "registered": "2014-09-10T00:53:08-12:00", "latitude": 47.23088, "longitude": -28.976871, "tags": [ "magna", "tempor", "consequat", "pariatur", "et", "sunt", "commodo" ], "friends": [ { "id": 0, "name": "Guthrie Horn" }, { "id": 1, "name": "Kerry Yates" }, { "id": 2, "name": "Violet Spears" } ], "greeting": "Hello, Frankie Rowland! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea223dac697e98eb875a", "index": 1443, "guid": "508c4fd8-6e5e-465f-b3ab-989d86767bfc", "isActive": false, "balance": "$2,084.73", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Willa Hester", "gender": "female", "company": "ACCEL", "email": "willahester@accel.com", "phone": "+1 (826) 412-3753", "address": "944 Seton Place, Yogaville, Louisiana, 4265", "about": "In fugiat irure commodo amet minim sit ad. Enim reprehenderit consequat dolor consectetur irure exercitation officia consequat reprehenderit dolor aliqua. Ex elit do proident labore adipisicing incididunt in consequat ipsum. Do elit culpa cupidatat aliqua mollit nisi amet. Sunt commodo do ipsum consectetur sit voluptate pariatur tempor ut. Labore dolor velit aliquip officia ea cupidatat labore cillum laborum non ea eiusmod deserunt. Incididunt ea fugiat proident laborum dolore mollit nisi aute et in et dolore.\r\n", "registered": "2014-06-25T00:33:55-12:00", "latitude": -45.898822, "longitude": 172.622058, "tags": [ "elit", "quis", "non", "officia", "qui", "nulla", "culpa" ], "friends": [ { "id": 0, "name": "Petty Fernandez" }, { "id": 1, "name": "Shauna Sweeney" }, { "id": 2, "name": "Kitty Abbott" } ], "greeting": "Hello, Willa Hester! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22b2421452e6c47758", "index": 1444, "guid": "6c97e507-d20b-4e0a-af7a-d5881a062a0b", "isActive": false, "balance": "$2,133.72", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Nanette Kane", "gender": "female", "company": "CUJO", "email": "nanettekane@cujo.com", "phone": "+1 (984) 551-3074", "address": "812 Utica Avenue, Bodega, Northern Mariana Islands, 9738", "about": "Lorem quis fugiat eiusmod aliqua. Laborum irure duis occaecat elit nostrud nulla labore elit velit incididunt. Dolore esse officia pariatur reprehenderit Lorem eiusmod reprehenderit duis irure. Consequat consequat ex sunt enim minim velit qui dolor sit amet aliquip nulla. Aute nulla officia enim ullamco ad deserunt. Tempor sit non aute aute elit minim in ad laboris. Veniam pariatur aliquip mollit consectetur.\r\n", "registered": "2014-09-18T11:03:25-12:00", "latitude": -63.643371, "longitude": 132.147869, "tags": [ "ullamco", "sit", "proident", "est", "mollit", "reprehenderit", "anim" ], "friends": [ { "id": 0, "name": "Cummings Clements" }, { "id": 1, "name": "Sargent Romero" }, { "id": 2, "name": "Elvira Moore" } ], "greeting": "Hello, Nanette Kane! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22a3e9e09076571ac1", "index": 1445, "guid": "49c03802-4bad-44f8-bd23-ee7c0815c59b", "isActive": true, "balance": "$2,188.81", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Tonia Adams", "gender": "female", "company": "BRAINCLIP", "email": "toniaadams@brainclip.com", "phone": "+1 (825) 500-3558", "address": "273 Bryant Street, Caroline, Colorado, 9454", "about": "Exercitation pariatur enim in anim excepteur irure ullamco elit minim. Culpa ea reprehenderit sunt cupidatat voluptate aute enim voluptate. Officia consequat voluptate in dolore id et consequat qui non. Officia esse non voluptate excepteur fugiat excepteur ipsum eiusmod elit ea ex. Nulla in amet consectetur magna esse dolore sint magna nisi do duis tempor.\r\n", "registered": "2014-04-20T13:22:23-12:00", "latitude": 86.000563, "longitude": 132.717862, "tags": [ "consectetur", "aute", "proident", "Lorem", "do", "laborum", "minim" ], "friends": [ { "id": 0, "name": "Eliza Mcfadden" }, { "id": 1, "name": "Eaton Clarke" }, { "id": 2, "name": "Shelly Church" } ], "greeting": "Hello, Tonia Adams! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22dfa7ee06e9e8de09", "index": 1446, "guid": "1c92f8ab-8ef3-4c76-9890-af47ce907740", "isActive": true, "balance": "$2,032.28", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Carly David", "gender": "female", "company": "KRAG", "email": "carlydavid@krag.com", "phone": "+1 (831) 422-3833", "address": "714 Glendale Court, Carbonville, Idaho, 6744", "about": "Laborum minim in enim nostrud ut magna reprehenderit id magna aliqua ullamco id. Et mollit anim eu labore tempor officia nisi sint veniam. Culpa sint commodo exercitation labore aliqua reprehenderit reprehenderit culpa nostrud elit pariatur. Ullamco ad exercitation ut culpa esse. Voluptate sint velit dolor dolor nostrud consequat sunt ea nostrud.\r\n", "registered": "2014-04-30T13:44:18-12:00", "latitude": 21.060843, "longitude": 52.859977, "tags": [ "in", "dolore", "nulla", "reprehenderit", "laborum", "qui", "exercitation" ], "friends": [ { "id": 0, "name": "Mcdaniel Mcdonald" }, { "id": 1, "name": "Vang Lindsay" }, { "id": 2, "name": "Lillian Key" } ], "greeting": "Hello, Carly David! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22badf50fe941eb588", "index": 1447, "guid": "dcae607e-e55e-4f89-b706-cc7ede6ac764", "isActive": false, "balance": "$3,364.88", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Lawanda Murray", "gender": "female", "company": "MOMENTIA", "email": "lawandamurray@momentia.com", "phone": "+1 (893) 542-3040", "address": "813 Roder Avenue, Whitewater, Marshall Islands, 723", "about": "Et velit non pariatur eu amet consequat eu aliqua consequat adipisicing in. Lorem aliquip ut id officia nisi consectetur aliqua exercitation ut occaecat cupidatat eiusmod in. Magna est velit proident dolor amet enim. Enim nisi adipisicing id aliquip reprehenderit eu. Nostrud laborum ad irure incididunt. Qui cillum incididunt occaecat pariatur nulla quis.\r\n", "registered": "2014-09-16T05:38:52-12:00", "latitude": -42.383554, "longitude": 166.088053, "tags": [ "qui", "sunt", "eu", "aliqua", "incididunt", "cillum", "proident" ], "friends": [ { "id": 0, "name": "Mcconnell Phelps" }, { "id": 1, "name": "Natasha Wolf" }, { "id": 2, "name": "Angelique Hooper" } ], "greeting": "Hello, Lawanda Murray! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221bf57642a1ca60bb", "index": 1448, "guid": "d05149fc-c821-4b9e-a9d1-145b76c6a909", "isActive": false, "balance": "$2,421.34", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Richardson Mills", "gender": "male", "company": "OCTOCORE", "email": "richardsonmills@octocore.com", "phone": "+1 (915) 524-2952", "address": "589 Cherry Street, Eureka, New York, 3252", "about": "Ipsum duis proident sunt adipisicing duis. Adipisicing duis ipsum velit laboris exercitation sunt et est aliqua. Ullamco minim culpa incididunt non quis proident anim. Laboris ipsum qui aute ad pariatur. Ipsum laborum cillum exercitation qui voluptate id exercitation incididunt. Non eu est aliquip aute voluptate reprehenderit veniam non magna.\r\n", "registered": "2014-02-13T16:35:06-13:00", "latitude": 51.158482, "longitude": 150.81147, "tags": [ "irure", "fugiat", "dolore", "enim", "amet", "id", "minim" ], "friends": [ { "id": 0, "name": "Mathis Middleton" }, { "id": 1, "name": "Wilkerson Hawkins" }, { "id": 2, "name": "Benjamin Norris" } ], "greeting": "Hello, Richardson Mills! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22daba95580772e934", "index": 1449, "guid": "6c55afd0-1fa6-445b-925a-eba994e8a113", "isActive": true, "balance": "$3,465.54", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Patton Rich", "gender": "male", "company": "ZENTHALL", "email": "pattonrich@zenthall.com", "phone": "+1 (946) 555-3365", "address": "148 Williams Court, Northchase, Guam, 248", "about": "Cillum dolore dolore magna magna exercitation consectetur consectetur. Consequat qui in sit nulla esse amet. Duis sint sit anim laborum cupidatat nostrud id nostrud ex Lorem velit id. Nisi ad Lorem deserunt voluptate id.\r\n", "registered": "2014-04-30T05:41:13-12:00", "latitude": -15.769441, "longitude": 42.701709, "tags": [ "tempor", "eu", "irure", "do", "voluptate", "aliquip", "voluptate" ], "friends": [ { "id": 0, "name": "Rojas Cervantes" }, { "id": 1, "name": "Deborah Campbell" }, { "id": 2, "name": "Dominique Mcfarland" } ], "greeting": "Hello, Patton Rich! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22de2c3b715077fa08", "index": 1450, "guid": "299b52e5-55b1-41d3-ac21-d4644a1576c8", "isActive": true, "balance": "$3,748.32", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Parrish Beach", "gender": "male", "company": "DATACATOR", "email": "parrishbeach@datacator.com", "phone": "+1 (913) 594-2837", "address": "216 Otsego Street, Grimsley, Virgin Islands, 1865", "about": "Excepteur eu laboris anim consectetur in occaecat adipisicing elit ipsum. Excepteur occaecat veniam commodo labore aliquip dolore officia exercitation esse aliquip reprehenderit. Ut cupidatat et occaecat excepteur tempor anim nulla nulla. Nostrud nulla nisi tempor minim qui incididunt quis magna.\r\n", "registered": "2014-09-10T06:00:01-12:00", "latitude": 29.856077, "longitude": 28.814947, "tags": [ "cillum", "nostrud", "enim", "consectetur", "elit", "sit", "sunt" ], "friends": [ { "id": 0, "name": "Melisa Vaughn" }, { "id": 1, "name": "Buck Ashley" }, { "id": 2, "name": "Kimberly Chandler" } ], "greeting": "Hello, Parrish Beach! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2289ac67282467b0fa", "index": 1451, "guid": "21eb75cf-4998-485c-b74d-9cc0d4f28648", "isActive": true, "balance": "$1,791.68", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Meyers Vaughan", "gender": "male", "company": "EARGO", "email": "meyersvaughan@eargo.com", "phone": "+1 (861) 597-3795", "address": "603 Herkimer Street, Ronco, Massachusetts, 5431", "about": "Mollit consequat ipsum cupidatat ex adipisicing ipsum laboris irure mollit consectetur adipisicing anim. Veniam aliqua esse sint irure laborum tempor. Culpa quis proident cupidatat ad. Labore in voluptate minim irure dolore proident ut nostrud reprehenderit aliquip minim. Sint ea mollit ullamco cillum labore cupidatat ipsum aliqua.\r\n", "registered": "2014-07-20T14:05:14-12:00", "latitude": -60.257487, "longitude": -66.520443, "tags": [ "voluptate", "velit", "laborum", "magna", "sint", "ad", "qui" ], "friends": [ { "id": 0, "name": "Jessie Robbins" }, { "id": 1, "name": "Dollie Levine" }, { "id": 2, "name": "Margo Combs" } ], "greeting": "Hello, Meyers Vaughan! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2287d9713cadc3e43c", "index": 1452, "guid": "574d63ac-1251-4336-93ea-879caf4d7bd5", "isActive": false, "balance": "$1,724.84", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Brooks Schwartz", "gender": "male", "company": "INSURON", "email": "brooksschwartz@insuron.com", "phone": "+1 (970) 458-3626", "address": "168 Everett Avenue, Blodgett, Utah, 7053", "about": "Exercitation sint sunt eiusmod cillum id quis irure duis irure id reprehenderit qui. Ipsum adipisicing quis aliquip tempor consequat in exercitation ut consectetur ut ipsum enim. Laboris ut consequat pariatur aliqua enim sunt. Id consectetur sunt velit Lorem cillum ea voluptate esse ex. Labore excepteur quis incididunt ex minim. Minim nostrud est id dolore nulla veniam cillum dolor non qui deserunt ut exercitation aliquip.\r\n", "registered": "2014-01-24T00:58:37-13:00", "latitude": 13.095467, "longitude": 63.893187, "tags": [ "minim", "officia", "veniam", "et", "consectetur", "irure", "sunt" ], "friends": [ { "id": 0, "name": "Lupe Sims" }, { "id": 1, "name": "Anthony Maxwell" }, { "id": 2, "name": "Barrett Talley" } ], "greeting": "Hello, Brooks Schwartz! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22585ec04f1e5c2de4", "index": 1453, "guid": "05b1545a-3a30-4d92-8d7d-20cab16dfb6d", "isActive": true, "balance": "$3,386.38", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Best Knowles", "gender": "male", "company": "MANTRO", "email": "bestknowles@mantro.com", "phone": "+1 (945) 507-3568", "address": "986 Jardine Place, Delshire, Montana, 8096", "about": "Exercitation magna tempor proident cillum excepteur reprehenderit esse adipisicing duis. Reprehenderit ad fugiat exercitation et laborum fugiat fugiat ad excepteur laborum et. Culpa nostrud occaecat esse enim amet sunt anim anim enim Lorem. Consequat cillum ut magna occaecat aliqua labore magna culpa.\r\n", "registered": "2014-05-26T18:12:51-12:00", "latitude": -19.058991, "longitude": 41.571185, "tags": [ "fugiat", "ut", "cillum", "officia", "labore", "labore", "qui" ], "friends": [ { "id": 0, "name": "Park Green" }, { "id": 1, "name": "Cabrera Gutierrez" }, { "id": 2, "name": "Bird Rivers" } ], "greeting": "Hello, Best Knowles! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22b2e438db4319434d", "index": 1454, "guid": "fc320350-d1af-4447-8a42-5a6682ff48bc", "isActive": false, "balance": "$3,752.80", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Sheri Garner", "gender": "female", "company": "ENVIRE", "email": "sherigarner@envire.com", "phone": "+1 (920) 441-3804", "address": "428 Arion Place, Eagletown, Wisconsin, 8058", "about": "Ipsum qui consectetur nulla sunt occaecat pariatur. Eiusmod ad est aliquip duis cupidatat dolore pariatur consectetur amet. Elit reprehenderit labore sunt sint sit proident. Ipsum anim minim labore in excepteur aliqua sint.\r\n", "registered": "2014-07-15T11:29:35-12:00", "latitude": -76.018246, "longitude": -29.300625, "tags": [ "voluptate", "eiusmod", "ullamco", "ut", "exercitation", "fugiat", "veniam" ], "friends": [ { "id": 0, "name": "Joann Mann" }, { "id": 1, "name": "Leblanc Harvey" }, { "id": 2, "name": "Weeks Pollard" } ], "greeting": "Hello, Sheri Garner! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22fc14601b14d9fed9", "index": 1455, "guid": "f09fb213-cbff-45d5-81d6-5fa3635bff0f", "isActive": true, "balance": "$2,849.71", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Colleen Davenport", "gender": "female", "company": "RAMJOB", "email": "colleendavenport@ramjob.com", "phone": "+1 (851) 535-3229", "address": "542 Creamer Street, Joppa, Maine, 1154", "about": "Culpa ut aliqua tempor qui quis labore Lorem cupidatat. Cillum fugiat irure nulla et officia magna Lorem ex anim cillum Lorem eu. Ea culpa enim do dolore.\r\n", "registered": "2014-06-09T14:20:15-12:00", "latitude": -32.322745, "longitude": -111.737407, "tags": [ "occaecat", "Lorem", "excepteur", "proident", "incididunt", "veniam", "consectetur" ], "friends": [ { "id": 0, "name": "Leila Norton" }, { "id": 1, "name": "Miriam Mendez" }, { "id": 2, "name": "Hurley George" } ], "greeting": "Hello, Colleen Davenport! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22d8c87ffd8c97bc21", "index": 1456, "guid": "9cdeed90-935f-40ea-89db-3393924c0378", "isActive": false, "balance": "$2,512.87", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Wendi Park", "gender": "female", "company": "ACRUEX", "email": "wendipark@acruex.com", "phone": "+1 (818) 600-2829", "address": "177 Lawn Court, Kenvil, Virginia, 8286", "about": "Consectetur voluptate et commodo duis dolore. Incididunt pariatur et non enim dolor elit quis proident tempor id. Et dolore non cillum culpa ut commodo. Excepteur eiusmod tempor nulla minim commodo ex dolor commodo officia.\r\n", "registered": "2014-02-14T14:22:20-13:00", "latitude": -39.916282, "longitude": -136.46262, "tags": [ "occaecat", "in", "fugiat", "ex", "aute", "reprehenderit", "cupidatat" ], "friends": [ { "id": 0, "name": "Vaughan Kerr" }, { "id": 1, "name": "Singleton Roberts" }, { "id": 2, "name": "Fox Holder" } ], "greeting": "Hello, Wendi Park! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22e9ed7846ec06d1fc", "index": 1457, "guid": "de0b3ad8-70e4-4a7e-b4b1-9a06bbb7538e", "isActive": false, "balance": "$3,025.42", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Warner Rollins", "gender": "male", "company": "TALENDULA", "email": "warnerrollins@talendula.com", "phone": "+1 (885) 536-2153", "address": "438 Lynch Street, Temperanceville, Kentucky, 8671", "about": "Cupidatat consequat ipsum incididunt duis in commodo eiusmod dolor minim ipsum incididunt incididunt excepteur. Esse sint velit commodo do eiusmod consectetur Lorem exercitation proident proident nostrud ipsum. Laborum deserunt dolor anim excepteur aliquip esse qui mollit.\r\n", "registered": "2014-08-27T06:54:34-12:00", "latitude": -17.604318, "longitude": -3.880211, "tags": [ "fugiat", "ea", "eu", "et", "elit", "exercitation", "enim" ], "friends": [ { "id": 0, "name": "Nettie Gonzalez" }, { "id": 1, "name": "Valeria Gonzales" }, { "id": 2, "name": "Mcguire Dickson" } ], "greeting": "Hello, Warner Rollins! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22e4ead7781639afe9", "index": 1458, "guid": "109cf5bd-fe9c-403a-bc6d-18d1606721f7", "isActive": true, "balance": "$2,546.33", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Mabel Jordan", "gender": "female", "company": "NETBOOK", "email": "mabeljordan@netbook.com", "phone": "+1 (807) 405-2988", "address": "330 Sheffield Avenue, Kerby, Connecticut, 8704", "about": "Aliqua nisi sunt exercitation Lorem anim enim do non mollit dolore. Laborum exercitation in aliqua nisi. Ullamco tempor ut sit veniam labore cillum aliquip nostrud sunt ut aliqua laboris. Elit eu cillum proident mollit. Sit tempor fugiat ad culpa Lorem ut voluptate nisi. Cillum qui aliquip cupidatat sit amet nulla laborum aliquip nostrud.\r\n", "registered": "2014-09-03T15:43:36-12:00", "latitude": -82.818497, "longitude": -142.772965, "tags": [ "eiusmod", "nisi", "eu", "duis", "adipisicing", "deserunt", "in" ], "friends": [ { "id": 0, "name": "White Herman" }, { "id": 1, "name": "Karla Mcmahon" }, { "id": 2, "name": "Karyn Frost" } ], "greeting": "Hello, Mabel Jordan! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22c135d16cade37637", "index": 1459, "guid": "df1c672c-e4d9-4d50-8788-acead7bafb76", "isActive": false, "balance": "$1,393.42", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Angela Dale", "gender": "female", "company": "CUBIX", "email": "angeladale@cubix.com", "phone": "+1 (956) 468-3895", "address": "990 Elmwood Avenue, Hiwasse, Mississippi, 4576", "about": "Ut eu ipsum nisi consectetur tempor ea fugiat nostrud culpa duis amet. Magna do veniam enim labore do tempor velit labore consectetur. Officia eiusmod excepteur eiusmod velit consectetur ut nulla proident non dolor voluptate ut culpa elit. Occaecat adipisicing non aliqua sunt veniam amet voluptate cillum qui ullamco velit. Voluptate aliqua nisi anim officia qui pariatur sint. Excepteur proident irure aliqua aliquip ipsum tempor ex sint excepteur enim reprehenderit ullamco.\r\n", "registered": "2014-03-11T15:32:52-13:00", "latitude": -58.39098, "longitude": 100.075132, "tags": [ "consequat", "ipsum", "qui", "labore", "deserunt", "laboris", "aliquip" ], "friends": [ { "id": 0, "name": "Joanna Taylor" }, { "id": 1, "name": "Gillespie Kirby" }, { "id": 2, "name": "Gina Hale" } ], "greeting": "Hello, Angela Dale! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22b3f6327012f9169a", "index": 1460, "guid": "b4d8a710-8cab-418c-bf2c-202640ff76f1", "isActive": true, "balance": "$1,577.73", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Hinton Ballard", "gender": "male", "company": "MITROC", "email": "hintonballard@mitroc.com", "phone": "+1 (947) 443-2563", "address": "528 Commerce Street, Leming, Washington, 2747", "about": "Minim magna laboris labore cupidatat cillum officia sint amet commodo. Sunt duis consectetur eu mollit ullamco dolore sint sunt excepteur non cupidatat. Culpa ut amet ea in dolore labore. Quis nulla aute exercitation aliquip reprehenderit dolore sit officia ipsum. Aliqua nostrud Lorem elit in mollit non sunt amet sunt sint elit ex.\r\n", "registered": "2014-07-10T07:38:59-12:00", "latitude": -87.709466, "longitude": -14.382227, "tags": [ "dolore", "quis", "anim", "proident", "eu", "laboris", "et" ], "friends": [ { "id": 0, "name": "Acevedo Daugherty" }, { "id": 1, "name": "Stuart Cobb" }, { "id": 2, "name": "Everett Phillips" } ], "greeting": "Hello, Hinton Ballard! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2254ab29398dc3ed65", "index": 1461, "guid": "52b4282f-e8fd-45ae-8a63-ce6e38d2a23f", "isActive": false, "balance": "$2,710.78", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Socorro Savage", "gender": "female", "company": "SONGBIRD", "email": "socorrosavage@songbird.com", "phone": "+1 (907) 573-2817", "address": "861 Baycliff Terrace, Eggertsville, Tennessee, 985", "about": "Cupidatat magna pariatur adipisicing sint excepteur consequat nulla est eiusmod. Consequat nulla aliquip tempor duis fugiat cillum occaecat cillum fugiat pariatur aliquip deserunt. Commodo exercitation amet nulla irure deserunt magna minim magna ipsum ut culpa consequat. Eiusmod tempor veniam sunt laborum cupidatat ad. Labore id culpa commodo nulla do dolor tempor. Sit laboris enim mollit magna eu esse consequat sunt velit nulla. Veniam eiusmod anim nostrud proident nulla labore nisi tempor sunt ipsum minim Lorem irure.\r\n", "registered": "2014-09-15T17:23:38-12:00", "latitude": -80.402152, "longitude": -6.818804, "tags": [ "deserunt", "fugiat", "non", "et", "officia", "incididunt", "irure" ], "friends": [ { "id": 0, "name": "Frederick Maynard" }, { "id": 1, "name": "Bush Colon" }, { "id": 2, "name": "Adeline Pickett" } ], "greeting": "Hello, Socorro Savage! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2207a225228abe32c4", "index": 1462, "guid": "b35929ad-c026-4b72-807f-93af01ab4a35", "isActive": false, "balance": "$3,565.26", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Lola Foley", "gender": "female", "company": "INDEXIA", "email": "lolafoley@indexia.com", "phone": "+1 (887) 415-2954", "address": "712 Howard Avenue, Weeksville, Alabama, 616", "about": "Ut veniam ea est aliqua adipisicing proident officia duis qui. Duis enim est aute sit anim anim mollit amet et. Et minim excepteur officia cupidatat officia quis commodo fugiat aliquip officia. Lorem commodo velit esse ad cupidatat mollit.\r\n", "registered": "2014-08-09T07:59:54-12:00", "latitude": -1.1553, "longitude": -55.286278, "tags": [ "duis", "aute", "mollit", "ipsum", "Lorem", "fugiat", "aliquip" ], "friends": [ { "id": 0, "name": "Marion Harding" }, { "id": 1, "name": "Young Ball" }, { "id": 2, "name": "Wiley Walker" } ], "greeting": "Hello, Lola Foley! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2281bb219567de46fc", "index": 1463, "guid": "52a1ba14-d70b-4b81-87c0-1a00e46b2c7c", "isActive": false, "balance": "$2,769.76", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Perry Ferguson", "gender": "male", "company": "INSURESYS", "email": "perryferguson@insuresys.com", "phone": "+1 (958) 442-2152", "address": "199 Stockholm Street, Fulford, Ohio, 321", "about": "Esse laborum laborum sunt pariatur esse adipisicing dolor occaecat labore ex anim incididunt. Deserunt excepteur minim ipsum dolor nisi nostrud Lorem eiusmod et reprehenderit deserunt ad. Ipsum enim labore dolore ad. Culpa cupidatat commodo aliquip eiusmod velit mollit ea pariatur et.\r\n", "registered": "2014-05-19T05:12:55-12:00", "latitude": 60.994187, "longitude": -4.900245, "tags": [ "occaecat", "minim", "labore", "sit", "et", "et", "excepteur" ], "friends": [ { "id": 0, "name": "Edith Townsend" }, { "id": 1, "name": "Yates Knight" }, { "id": 2, "name": "Lily Reynolds" } ], "greeting": "Hello, Perry Ferguson! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22fc3ff17f5b22a1d5", "index": 1464, "guid": "0101b786-d2d3-49ec-a377-cc6e88a042be", "isActive": true, "balance": "$2,276.20", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Bartlett Dunn", "gender": "male", "company": "LUXURIA", "email": "bartlettdunn@luxuria.com", "phone": "+1 (881) 460-2113", "address": "334 Euclid Avenue, Baden, Hawaii, 1243", "about": "Enim ullamco dolore sint in exercitation sunt consequat proident eu anim dolore aliqua pariatur id. Minim eu voluptate nisi dolor aute sint officia excepteur irure minim excepteur qui aliqua ea. Aliqua fugiat ex ipsum elit eu exercitation excepteur elit occaecat aliqua exercitation. Nulla amet cillum cillum nostrud. Aliqua consequat fugiat non ea ad anim proident ipsum pariatur et irure commodo laboris reprehenderit.\r\n", "registered": "2014-02-11T05:13:30-13:00", "latitude": 46.443822, "longitude": -116.720871, "tags": [ "veniam", "ad", "culpa", "mollit", "ex", "tempor", "culpa" ], "friends": [ { "id": 0, "name": "Jean Graham" }, { "id": 1, "name": "Berger Vincent" }, { "id": 2, "name": "Genevieve Ellison" } ], "greeting": "Hello, Bartlett Dunn! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea229888d0f7dc40d5f0", "index": 1465, "guid": "3644809b-c439-4e7e-a67a-95052f7650f2", "isActive": true, "balance": "$1,740.51", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Magdalena Armstrong", "gender": "female", "company": "APEXIA", "email": "magdalenaarmstrong@apexia.com", "phone": "+1 (894) 498-2690", "address": "764 Bushwick Place, Retsof, New Mexico, 4550", "about": "Tempor non excepteur ipsum voluptate et consequat laboris nisi deserunt qui. Amet ea qui veniam cupidatat non eu reprehenderit. Est consequat voluptate non non magna velit non. Adipisicing ullamco velit eu nostrud sit commodo id enim elit exercitation et cupidatat deserunt id. Cupidatat culpa magna aute aliquip voluptate voluptate sint mollit elit voluptate eiusmod aliqua minim id. Nisi elit consectetur veniam in est culpa adipisicing duis officia do labore consequat anim.\r\n", "registered": "2014-02-02T18:50:12-13:00", "latitude": 16.78777, "longitude": 74.083178, "tags": [ "sit", "enim", "nostrud", "quis", "sunt", "culpa", "velit" ], "friends": [ { "id": 0, "name": "Dunn Reid" }, { "id": 1, "name": "Beach Sears" }, { "id": 2, "name": "Rachael Anthony" } ], "greeting": "Hello, Magdalena Armstrong! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22c8ed331a8f16ec66", "index": 1466, "guid": "9590e58e-cd4c-4b44-8b6d-6fb436be85ca", "isActive": true, "balance": "$1,623.66", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Nielsen Myers", "gender": "male", "company": "ZENOLUX", "email": "nielsenmyers@zenolux.com", "phone": "+1 (934) 562-3178", "address": "930 Brooklyn Road, Belgreen, Maryland, 2932", "about": "Amet voluptate exercitation ad quis exercitation et velit consectetur nisi. Aliquip do anim esse ad. Elit tempor aliqua non aliqua voluptate tempor irure eu labore anim quis eu est amet. Commodo ullamco mollit aliqua voluptate incididunt et laboris esse.\r\n", "registered": "2014-06-15T23:14:50-12:00", "latitude": -21.854491, "longitude": -153.782831, "tags": [ "minim", "ad", "occaecat", "voluptate", "commodo", "voluptate", "ex" ], "friends": [ { "id": 0, "name": "Dorthy Raymond" }, { "id": 1, "name": "Sonja Golden" }, { "id": 2, "name": "Penny Roy" } ], "greeting": "Hello, Nielsen Myers! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea223b0f3f08994b441b", "index": 1467, "guid": "97aa2fb1-8e43-4460-b4a9-3961139569f2", "isActive": true, "balance": "$2,970.71", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Glover Clemons", "gender": "male", "company": "ENAUT", "email": "gloverclemons@enaut.com", "phone": "+1 (847) 578-2890", "address": "481 Vista Place, Fairacres, Alaska, 9291", "about": "Labore mollit laborum culpa velit incididunt quis. Exercitation dolore laborum reprehenderit ut commodo aute nulla. Commodo aliqua do cupidatat non magna occaecat cupidatat velit esse incididunt proident commodo sint. Magna pariatur sunt reprehenderit dolor consectetur incididunt officia nisi Lorem ea consectetur sit eiusmod ullamco. Eiusmod duis aliqua ex minim voluptate non nisi laboris tempor irure commodo. Culpa ipsum nulla sunt magna commodo tempor nostrud voluptate ad consequat reprehenderit.\r\n", "registered": "2014-04-27T16:54:34-12:00", "latitude": -45.233963, "longitude": -38.277611, "tags": [ "excepteur", "culpa", "magna", "dolor", "aute", "aute", "laboris" ], "friends": [ { "id": 0, "name": "Eve England" }, { "id": 1, "name": "Kathryn Reyes" }, { "id": 2, "name": "Camacho Shields" } ], "greeting": "Hello, Glover Clemons! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2212262452e7ccb409", "index": 1468, "guid": "c572b852-f164-4e25-8712-ca0368c46251", "isActive": true, "balance": "$2,621.48", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Pennington Tillman", "gender": "male", "company": "HAWKSTER", "email": "penningtontillman@hawkster.com", "phone": "+1 (842) 543-3517", "address": "769 Karweg Place, Trona, Arizona, 183", "about": "Consectetur eu sunt incididunt nostrud in non eu. Voluptate commodo in sint laboris nostrud. Ut cillum esse qui excepteur mollit. Est sunt duis irure et eiusmod anim officia ex mollit cillum.\r\n", "registered": "2014-01-26T15:57:20-13:00", "latitude": 87.608789, "longitude": -118.316543, "tags": [ "culpa", "deserunt", "ad", "non", "ex", "commodo", "anim" ], "friends": [ { "id": 0, "name": "Owens Valentine" }, { "id": 1, "name": "Maureen Edwards" }, { "id": 2, "name": "Irene Shelton" } ], "greeting": "Hello, Pennington Tillman! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22490f52be105f0ae2", "index": 1469, "guid": "3f4c296f-d1fc-42ed-bfbc-b8756c53eb48", "isActive": false, "balance": "$2,882.21", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Knox Soto", "gender": "male", "company": "GROK", "email": "knoxsoto@grok.com", "phone": "+1 (969) 431-2453", "address": "784 Melba Court, Derwood, Federated States Of Micronesia, 3238", "about": "Nulla ex labore sint eu culpa in cillum. Reprehenderit id ut ut Lorem qui adipisicing officia cillum. Veniam in aliqua tempor amet ex proident nulla. Cupidatat culpa ipsum cillum irure commodo sit mollit Lorem do duis deserunt. Amet culpa id ea est velit esse sint.\r\n", "registered": "2014-07-19T15:19:49-12:00", "latitude": -62.963388, "longitude": 62.184198, "tags": [ "quis", "aliquip", "culpa", "do", "non", "ad", "dolor" ], "friends": [ { "id": 0, "name": "Keri Mccall" }, { "id": 1, "name": "Herring Strong" }, { "id": 2, "name": "Clare Brown" } ], "greeting": "Hello, Knox Soto! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea225f2eb773dc9fd799", "index": 1470, "guid": "6c0d56f0-4f4f-4213-a945-c11e00f959b7", "isActive": false, "balance": "$3,531.16", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Justice Gregory", "gender": "male", "company": "INQUALA", "email": "justicegregory@inquala.com", "phone": "+1 (997) 466-2336", "address": "342 Oliver Street, Chesapeake, Oklahoma, 4277", "about": "Pariatur dolor commodo nisi id incididunt. Labore incididunt id ex excepteur id tempor aute duis. Occaecat sunt occaecat duis dolor cupidatat enim magna sunt eu eiusmod Lorem nostrud.\r\n", "registered": "2014-01-07T20:24:47-13:00", "latitude": -65.596241, "longitude": -51.436724, "tags": [ "magna", "officia", "velit", "amet", "exercitation", "non", "incididunt" ], "friends": [ { "id": 0, "name": "Theresa Mccoy" }, { "id": 1, "name": "House Mcconnell" }, { "id": 2, "name": "Alvarado Collier" } ], "greeting": "Hello, Justice Gregory! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22bc9948ab9be2183f", "index": 1471, "guid": "20bb71a1-d0c0-482f-84bd-7fb0f3717ab2", "isActive": false, "balance": "$2,897.39", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Jacklyn Baxter", "gender": "female", "company": "INTRAWEAR", "email": "jacklynbaxter@intrawear.com", "phone": "+1 (969) 503-3312", "address": "153 Central Avenue, Darlington, Michigan, 7328", "about": "Ex eu eiusmod incididunt laborum irure laborum sint. Culpa irure elit eiusmod enim qui anim in Lorem labore ad fugiat. Anim nisi tempor tempor velit ea cupidatat non magna sit consectetur esse in incididunt. Qui sunt ullamco officia et enim.\r\n", "registered": "2014-07-23T12:58:08-12:00", "latitude": 2.704255, "longitude": -152.52519, "tags": [ "ipsum", "dolore", "veniam", "velit", "laborum", "aliqua", "sunt" ], "friends": [ { "id": 0, "name": "Yvonne Blake" }, { "id": 1, "name": "Ingram Lancaster" }, { "id": 2, "name": "Velma Donovan" } ], "greeting": "Hello, Jacklyn Baxter! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22d766a49650b431c1", "index": 1472, "guid": "5784602b-936e-4427-85e0-421ee5657c6f", "isActive": false, "balance": "$1,263.22", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Hilary Jenkins", "gender": "female", "company": "WAAB", "email": "hilaryjenkins@waab.com", "phone": "+1 (856) 455-2868", "address": "784 Moore Street, Boykin, Kansas, 5906", "about": "Nisi proident ad labore est nostrud laboris elit esse eu ipsum cupidatat proident. Sunt ipsum Lorem non adipisicing elit sunt voluptate et adipisicing occaecat in elit. Nisi mollit do in do sunt culpa id officia in ex est. Nostrud anim ea ullamco adipisicing laborum irure sint dolor aliqua pariatur aute ullamco reprehenderit. Ipsum et id officia duis aute.\r\n", "registered": "2014-09-11T11:54:18-12:00", "latitude": -68.981427, "longitude": 117.428457, "tags": [ "ut", "esse", "proident", "consectetur", "consectetur", "quis", "exercitation" ], "friends": [ { "id": 0, "name": "Suzanne Pate" }, { "id": 1, "name": "Duke Velez" }, { "id": 2, "name": "Brandi Higgins" } ], "greeting": "Hello, Hilary Jenkins! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22a00c3a73092ffe93", "index": 1473, "guid": "b7ecd373-80af-48f0-afe6-f7e9c797c1e5", "isActive": false, "balance": "$2,127.12", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Letha Berry", "gender": "female", "company": "DARWINIUM", "email": "lethaberry@darwinium.com", "phone": "+1 (894) 439-2509", "address": "515 Lott Place, Sunnyside, South Dakota, 7446", "about": "Veniam exercitation ea aliqua id pariatur cupidatat ad officia labore aliquip qui. Mollit velit eiusmod ea consectetur nulla officia velit deserunt velit enim. Mollit reprehenderit est exercitation aliquip. Culpa do ipsum deserunt exercitation ullamco nisi ex velit.\r\n", "registered": "2014-01-18T20:41:47-13:00", "latitude": -2.245553, "longitude": -21.300344, "tags": [ "esse", "aliqua", "enim", "reprehenderit", "proident", "nisi", "id" ], "friends": [ { "id": 0, "name": "Sasha Peterson" }, { "id": 1, "name": "Harrison Solomon" }, { "id": 2, "name": "Alba Nixon" } ], "greeting": "Hello, Letha Berry! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea225e4d0aaf21841e77", "index": 1474, "guid": "1d192723-ee8e-43d0-9bd2-1d392a368d12", "isActive": true, "balance": "$2,559.35", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Maura Fulton", "gender": "female", "company": "POLARAX", "email": "maurafulton@polarax.com", "phone": "+1 (878) 596-3517", "address": "437 Cumberland Street, Kansas, West Virginia, 3518", "about": "Sunt irure cupidatat dolor magna consectetur est esse magna irure. Eiusmod Lorem ad irure nisi commodo. Eu in reprehenderit elit occaecat laborum qui irure do quis reprehenderit nisi adipisicing. Do labore elit Lorem eu eu enim fugiat exercitation in aliquip ipsum. Mollit amet tempor dolore tempor voluptate officia proident dolore. Irure exercitation dolore quis laborum.\r\n", "registered": "2014-05-11T19:24:25-12:00", "latitude": -52.214139, "longitude": 150.139659, "tags": [ "est", "qui", "nostrud", "sunt", "ad", "anim", "ea" ], "friends": [ { "id": 0, "name": "Wong Roberson" }, { "id": 1, "name": "Gibbs Stuart" }, { "id": 2, "name": "Francisca Chambers" } ], "greeting": "Hello, Maura Fulton! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22a4391df92a1247ce", "index": 1475, "guid": "31c0ccd8-9849-4cc1-82b9-4762ecd9d609", "isActive": false, "balance": "$3,851.11", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Julie Ellis", "gender": "female", "company": "ISOTRACK", "email": "julieellis@isotrack.com", "phone": "+1 (823) 415-3567", "address": "690 Seabring Street, Gerton, Texas, 8759", "about": "Elit reprehenderit mollit ad non ad occaecat magna ex laboris minim consequat amet nulla. Enim laboris Lorem pariatur Lorem sunt proident ad ea eu ea mollit commodo. Ullamco Lorem pariatur ex consequat do cupidatat. Anim eiusmod veniam ullamco adipisicing cillum qui velit laboris sit officia reprehenderit enim minim labore. Veniam anim velit irure sunt amet cillum. Deserunt nulla dolor velit consequat. Dolor quis est ullamco in sint nisi aliqua ad deserunt aliquip do Lorem.\r\n", "registered": "2014-05-24T14:13:54-12:00", "latitude": 22.227493, "longitude": 141.604995, "tags": [ "cupidatat", "ea", "voluptate", "officia", "ad", "fugiat", "nostrud" ], "friends": [ { "id": 0, "name": "Alisa Lambert" }, { "id": 1, "name": "Rosella Guerra" }, { "id": 2, "name": "Bradford Stevens" } ], "greeting": "Hello, Julie Ellis! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22c890fbefb6004e21", "index": 1476, "guid": "0ff8cf09-1344-4ef0-b032-9912da645c3b", "isActive": true, "balance": "$2,571.85", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Henderson Hunt", "gender": "male", "company": "CEPRENE", "email": "hendersonhunt@ceprene.com", "phone": "+1 (824) 578-2613", "address": "776 Emerson Place, Chamberino, Oregon, 5401", "about": "Cillum occaecat reprehenderit exercitation nisi veniam. Consequat consectetur aliqua elit ut minim aute occaecat mollit sint proident laborum. Nulla sit ad magna laborum sunt quis do ex sint. Esse eu duis eu eu nisi ex consequat ad duis est. Minim culpa incididunt ea eu.\r\n", "registered": "2014-06-04T14:23:27-12:00", "latitude": 13.087986, "longitude": -87.140493, "tags": [ "et", "eiusmod", "ea", "reprehenderit", "et", "minim", "nostrud" ], "friends": [ { "id": 0, "name": "Weber Guzman" }, { "id": 1, "name": "Salazar Hickman" }, { "id": 2, "name": "Rosanna Cooley" } ], "greeting": "Hello, Henderson Hunt! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2273ae40f1b71edb4b", "index": 1477, "guid": "cd764cf7-03ff-45d4-8638-9440d25341c6", "isActive": false, "balance": "$1,911.60", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Arnold Ortiz", "gender": "male", "company": "ORBEAN", "email": "arnoldortiz@orbean.com", "phone": "+1 (809) 497-2956", "address": "155 Corbin Place, Dyckesville, Nevada, 1001", "about": "Ex excepteur nisi culpa adipisicing non. Veniam non ea culpa et proident ad Lorem commodo enim ullamco anim. Quis veniam nulla nostrud duis in duis qui quis ad do commodo minim veniam. Enim id in laborum ea sunt id deserunt eu sit tempor voluptate sunt cillum.\r\n", "registered": "2014-04-03T23:33:36-13:00", "latitude": 64.644959, "longitude": 178.474727, "tags": [ "nulla", "magna", "quis", "aliquip", "aliqua", "in", "irure" ], "friends": [ { "id": 0, "name": "Luella French" }, { "id": 1, "name": "Jamie Carver" }, { "id": 2, "name": "Ford Hughes" } ], "greeting": "Hello, Arnold Ortiz! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22f18f9f9e8d7403e1", "index": 1478, "guid": "b52c85a1-713f-4401-8b13-2b790c3bdf33", "isActive": false, "balance": "$1,442.65", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Mollie Acosta", "gender": "female", "company": "MICROLUXE", "email": "mollieacosta@microluxe.com", "phone": "+1 (838) 490-3209", "address": "344 Lorimer Street, Jacumba, Minnesota, 5832", "about": "Nostrud culpa do aliqua occaecat esse exercitation sint pariatur enim ullamco exercitation. Ea ad non magna ut fugiat irure ea. Eiusmod ipsum enim aliqua culpa labore ea adipisicing tempor enim nisi pariatur. Enim do veniam consequat est sint duis elit. Laboris mollit sit exercitation id occaecat culpa id dolore laborum occaecat ut et. Minim magna dolor fugiat eiusmod enim Lorem ut nisi. Lorem duis enim laborum non magna commodo labore.\r\n", "registered": "2014-02-27T13:50:44-13:00", "latitude": -86.929773, "longitude": 2.401277, "tags": [ "enim", "occaecat", "voluptate", "elit", "exercitation", "exercitation", "eu" ], "friends": [ { "id": 0, "name": "Audrey Christian" }, { "id": 1, "name": "Roberson Powers" }, { "id": 2, "name": "Dolores Oliver" } ], "greeting": "Hello, Mollie Acosta! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22dc09462b212607be", "index": 1479, "guid": "f662319e-bc4d-4f0a-8164-576b8e1cf62b", "isActive": false, "balance": "$2,408.60", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Bradley Douglas", "gender": "male", "company": "GINKOGENE", "email": "bradleydouglas@ginkogene.com", "phone": "+1 (932) 520-2456", "address": "582 Grafton Street, Kapowsin, Missouri, 9345", "about": "Occaecat culpa enim dolore fugiat esse mollit ad. Qui id aute in ex proident ullamco veniam irure ad proident eu proident. Adipisicing officia veniam anim commodo veniam non labore dolore fugiat officia. Id do ex tempor proident enim occaecat mollit aliquip id ipsum deserunt. Eu veniam enim ut est amet in sint exercitation est consequat. Exercitation aliquip sint quis quis officia enim amet id cillum.\r\n", "registered": "2014-08-21T22:54:15-12:00", "latitude": -32.27206, "longitude": 23.13113, "tags": [ "excepteur", "nulla", "anim", "ut", "ea", "in", "deserunt" ], "friends": [ { "id": 0, "name": "Kristie Brewer" }, { "id": 1, "name": "Karen Walsh" }, { "id": 2, "name": "Livingston Herring" } ], "greeting": "Hello, Bradley Douglas! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221c9e2b446eaf35eb", "index": 1480, "guid": "08110c75-5057-4b25-b377-20a5f62475f0", "isActive": false, "balance": "$3,833.00", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Rosemarie Chaney", "gender": "female", "company": "NIMON", "email": "rosemariechaney@nimon.com", "phone": "+1 (827) 522-3008", "address": "264 Chestnut Avenue, Rockbridge, Rhode Island, 4558", "about": "Commodo culpa consectetur reprehenderit labore excepteur proident. Velit in minim irure reprehenderit mollit. Amet et minim pariatur sint enim irure eu sunt. Labore incididunt ut amet Lorem voluptate ea ex magna.\r\n", "registered": "2014-07-05T08:15:21-12:00", "latitude": 82.039535, "longitude": 138.312014, "tags": [ "voluptate", "enim", "cupidatat", "aliquip", "ipsum", "irure", "laboris" ], "friends": [ { "id": 0, "name": "Lesley Hunter" }, { "id": 1, "name": "Coffey Cantrell" }, { "id": 2, "name": "Gabrielle Monroe" } ], "greeting": "Hello, Rosemarie Chaney! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22a715cd2aea0ee216", "index": 1481, "guid": "a0f88b6f-7824-4a83-82e0-e2277239b7e4", "isActive": false, "balance": "$2,332.60", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Ewing Harper", "gender": "male", "company": "MAXIMIND", "email": "ewingharper@maximind.com", "phone": "+1 (880) 504-2728", "address": "495 Thomas Street, Riverton, Florida, 8838", "about": "Veniam esse minim ut commodo consectetur eiusmod. Officia ad irure velit tempor duis adipisicing quis magna est. Eu nulla nostrud qui cillum irure proident elit ut velit aute ut ea quis velit. Fugiat laborum cillum proident in magna aute laborum ea. Reprehenderit reprehenderit tempor exercitation nostrud magna ut.\r\n", "registered": "2014-05-02T04:00:55-12:00", "latitude": -43.370178, "longitude": 79.110446, "tags": [ "tempor", "do", "ullamco", "excepteur", "velit", "anim", "proident" ], "friends": [ { "id": 0, "name": "Meagan Stout" }, { "id": 1, "name": "Deanne Glenn" }, { "id": 2, "name": "Pam Goff" } ], "greeting": "Hello, Ewing Harper! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22f6adf67a7be00a77", "index": 1482, "guid": "b87be803-e1a8-4083-b701-1e1509d9aa28", "isActive": true, "balance": "$2,406.65", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Mari Cannon", "gender": "female", "company": "ENTROPIX", "email": "maricannon@entropix.com", "phone": "+1 (963) 596-3266", "address": "794 Forrest Street, Newkirk, North Carolina, 8205", "about": "Do veniam laboris esse labore ex non dolore ad officia ullamco laboris minim. Exercitation reprehenderit esse magna qui labore nisi ad et laborum veniam ex aute voluptate. Ut occaecat dolor duis quis proident ut sunt consequat irure. Minim fugiat exercitation minim est. Consequat fugiat culpa consequat laborum. Duis cupidatat cillum elit culpa minim anim et eu.\r\n", "registered": "2014-07-24T16:35:30-12:00", "latitude": 39.798779, "longitude": 134.093041, "tags": [ "proident", "id", "velit", "adipisicing", "sit", "adipisicing", "velit" ], "friends": [ { "id": 0, "name": "Bridges Buchanan" }, { "id": 1, "name": "Carmella Trujillo" }, { "id": 2, "name": "Marie Pittman" } ], "greeting": "Hello, Mari Cannon! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22539874ffe5c2d7eb", "index": 1483, "guid": "ba45840c-2886-475a-9e66-9b7f364c4b9d", "isActive": false, "balance": "$1,006.79", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Finch Crane", "gender": "male", "company": "FLUM", "email": "finchcrane@flum.com", "phone": "+1 (952) 416-2247", "address": "753 Loring Avenue, Deseret, New Hampshire, 9353", "about": "Esse consequat non amet tempor pariatur. Ex sunt aliqua esse esse dolor. Eiusmod dolore voluptate ipsum commodo ex qui occaecat quis elit. Aute anim nisi deserunt sit labore voluptate adipisicing aliquip. Enim consequat quis pariatur consequat eu deserunt anim. Laborum ea dolor quis amet dolor mollit irure.\r\n", "registered": "2014-01-10T19:24:46-13:00", "latitude": 23.681857, "longitude": 10.636514, "tags": [ "fugiat", "aute", "incididunt", "duis", "in", "eiusmod", "sunt" ], "friends": [ { "id": 0, "name": "Espinoza Pruitt" }, { "id": 1, "name": "Velasquez Holmes" }, { "id": 2, "name": "Chang Bryant" } ], "greeting": "Hello, Finch Crane! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22e9977ae462b6ec76", "index": 1484, "guid": "4062b7ac-da08-4c18-9cdc-808bf3050f03", "isActive": true, "balance": "$1,361.61", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Carney Cummings", "gender": "male", "company": "KNEEDLES", "email": "carneycummings@kneedles.com", "phone": "+1 (879) 407-2652", "address": "822 Debevoise Street, Matthews, Arkansas, 9846", "about": "Veniam laboris tempor deserunt laboris. Lorem dolore dolor veniam ullamco adipisicing voluptate. Fugiat voluptate reprehenderit adipisicing laboris est voluptate fugiat in irure aliquip exercitation. Commodo eu sunt quis pariatur ea excepteur velit. Voluptate cupidatat voluptate dolor non velit.\r\n", "registered": "2014-01-24T23:02:28-13:00", "latitude": -69.064311, "longitude": -100.598017, "tags": [ "consectetur", "mollit", "ut", "exercitation", "consequat", "id", "duis" ], "friends": [ { "id": 0, "name": "Glenn Gilmore" }, { "id": 1, "name": "Cardenas Powell" }, { "id": 2, "name": "Fernandez Silva" } ], "greeting": "Hello, Carney Cummings! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22d6ee380ed5ad7494", "index": 1485, "guid": "0b3de20a-9f30-406c-b7a1-a3952401c335", "isActive": true, "balance": "$1,816.65", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Marsha Wong", "gender": "female", "company": "UPLINX", "email": "marshawong@uplinx.com", "phone": "+1 (842) 498-3655", "address": "527 Dank Court, Brecon, Iowa, 8843", "about": "Ad esse occaecat cillum nisi pariatur adipisicing nulla anim exercitation minim et proident elit. Reprehenderit sit et consectetur sunt fugiat tempor anim cupidatat nostrud enim aute ea. Ullamco id reprehenderit ad ad. Laborum irure mollit pariatur officia nulla minim occaecat consectetur et.\r\n", "registered": "2014-08-30T14:06:19-12:00", "latitude": -37.487972, "longitude": -148.744074, "tags": [ "eiusmod", "amet", "dolore", "nisi", "quis", "adipisicing", "ut" ], "friends": [ { "id": 0, "name": "Odessa Hood" }, { "id": 1, "name": "Marylou Herrera" }, { "id": 2, "name": "Robles Hanson" } ], "greeting": "Hello, Marsha Wong! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea228eb33c84b794d084", "index": 1486, "guid": "7c8fb3f3-fd4f-475b-b9f0-eddd3480e479", "isActive": false, "balance": "$2,834.15", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Jannie Hammond", "gender": "female", "company": "EZENTIA", "email": "janniehammond@ezentia.com", "phone": "+1 (890) 558-3529", "address": "572 Harman Street, Rossmore, Nebraska, 3846", "about": "Quis est eiusmod veniam eiusmod occaecat sunt. Est eiusmod est ut ad. Qui adipisicing velit sint aliqua ad labore ullamco. Lorem tempor officia do enim labore nisi sunt minim ea tempor veniam. Pariatur voluptate Lorem laborum ex non veniam elit. Sunt ipsum culpa aute velit exercitation eiusmod ipsum officia. Mollit proident nisi esse aliquip ullamco laboris ad ea et consequat cupidatat cillum qui incididunt.\r\n", "registered": "2014-05-17T18:10:25-12:00", "latitude": 0.069231, "longitude": 41.097519, "tags": [ "incididunt", "sit", "do", "eu", "tempor", "occaecat", "laboris" ], "friends": [ { "id": 0, "name": "Nash Burnett" }, { "id": 1, "name": "Mann Barr" }, { "id": 2, "name": "Saundra Bradley" } ], "greeting": "Hello, Jannie Hammond! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2231d8ad3b77b07efd", "index": 1487, "guid": "c26bb01b-901e-469f-976a-a5e9949d924f", "isActive": false, "balance": "$1,026.42", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Donaldson Howard", "gender": "male", "company": "ZENTIA", "email": "donaldsonhoward@zentia.com", "phone": "+1 (810) 467-2140", "address": "524 Homecrest Avenue, Gwynn, District Of Columbia, 509", "about": "Lorem ex pariatur cupidatat occaecat duis incididunt officia. Aliqua adipisicing anim Lorem veniam. Ea ad duis minim eiusmod cillum consectetur quis eiusmod tempor occaecat culpa.\r\n", "registered": "2014-03-07T07:08:19-13:00", "latitude": 52.034328, "longitude": 139.107959, "tags": [ "est", "irure", "pariatur", "fugiat", "non", "est", "consequat" ], "friends": [ { "id": 0, "name": "Mckay Webster" }, { "id": 1, "name": "Sexton Weber" }, { "id": 2, "name": "Ramos Faulkner" } ], "greeting": "Hello, Donaldson Howard! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2283bd7d187da1c5f0", "index": 1488, "guid": "966c216d-325c-4514-8851-837b5a0cb3ce", "isActive": false, "balance": "$2,908.54", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Rachelle Richardson", "gender": "female", "company": "BUZZMAKER", "email": "rachellerichardson@buzzmaker.com", "phone": "+1 (850) 594-3849", "address": "918 Noll Street, Westmoreland, New Jersey, 3482", "about": "Excepteur anim incididunt dolore ut incididunt. Mollit id quis nisi consequat deserunt. Non ea et eu consectetur reprehenderit. Reprehenderit voluptate veniam dolore laborum aliquip cillum nulla amet laboris id anim.\r\n", "registered": "2014-01-17T03:06:36-13:00", "latitude": -56.385718, "longitude": -85.232065, "tags": [ "aliqua", "qui", "labore", "exercitation", "incididunt", "ex", "dolore" ], "friends": [ { "id": 0, "name": "Buckley Hess" }, { "id": 1, "name": "Sharpe Olson" }, { "id": 2, "name": "Allison Ferrell" } ], "greeting": "Hello, Rachelle Richardson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22fc5b08c494915ba8", "index": 1489, "guid": "a7a5c38b-5003-49ec-95d2-3fd8586f640d", "isActive": true, "balance": "$2,362.75", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Hines Blevins", "gender": "male", "company": "IMAGEFLOW", "email": "hinesblevins@imageflow.com", "phone": "+1 (887) 591-2805", "address": "233 Jaffray Street, Dragoon, Palau, 2209", "about": "Anim velit amet minim consectetur cupidatat occaecat labore. Exercitation reprehenderit ut irure occaecat dolore magna fugiat aute commodo. Commodo consectetur tempor ad ea sint veniam labore Lorem qui. Veniam velit ex dolor commodo tempor laboris ea reprehenderit cupidatat fugiat magna ullamco.\r\n", "registered": "2014-02-11T17:21:48-13:00", "latitude": 24.647978, "longitude": 75.255807, "tags": [ "duis", "quis", "dolore", "laboris", "veniam", "dolore", "sunt" ], "friends": [ { "id": 0, "name": "Butler Andrews" }, { "id": 1, "name": "Jenifer Campos" }, { "id": 2, "name": "Ilene Dean" } ], "greeting": "Hello, Hines Blevins! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea226b50c739387cd4fb", "index": 1490, "guid": "ef2adefe-8f72-4109-a56c-ab4d173230a7", "isActive": true, "balance": "$1,845.15", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Hattie Cotton", "gender": "female", "company": "FUTURIZE", "email": "hattiecotton@futurize.com", "phone": "+1 (988) 589-3813", "address": "900 Meserole Street, Woodburn, Puerto Rico, 9812", "about": "Aute officia culpa pariatur aliqua anim adipisicing ad in nisi laborum. Ex enim nisi elit dolore. Elit dolor consequat enim pariatur in esse nulla labore reprehenderit eiusmod. Officia occaecat dolor sit tempor voluptate velit non mollit cupidatat ad ea reprehenderit minim exercitation. Cupidatat id aliqua aliquip duis occaecat nulla ipsum dolor labore amet nulla officia. Culpa cupidatat nulla ea aute amet nulla minim velit duis eiusmod.\r\n", "registered": "2014-09-12T12:32:00-12:00", "latitude": 38.865296, "longitude": -135.121889, "tags": [ "tempor", "ullamco", "mollit", "excepteur", "ex", "qui", "nisi" ], "friends": [ { "id": 0, "name": "Antonia Winters" }, { "id": 1, "name": "Garrett Payne" }, { "id": 2, "name": "Beasley Puckett" } ], "greeting": "Hello, Hattie Cotton! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22383287cfa9ebc14d", "index": 1491, "guid": "d759956a-9a3d-4836-8438-b79a6f14a812", "isActive": false, "balance": "$3,577.91", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Meghan Finley", "gender": "female", "company": "MAKINGWAY", "email": "meghanfinley@makingway.com", "phone": "+1 (820) 455-3782", "address": "434 Myrtle Avenue, Hampstead, California, 5176", "about": "Duis reprehenderit cupidatat minim deserunt elit et voluptate esse exercitation. Incididunt mollit irure veniam adipisicing exercitation sit adipisicing dolore aliquip amet elit fugiat. Ea Lorem do pariatur aliquip aliqua exercitation exercitation eu ullamco nisi esse ipsum reprehenderit elit.\r\n", "registered": "2014-04-17T19:06:19-12:00", "latitude": 28.625918, "longitude": 5.150366, "tags": [ "ut", "occaecat", "amet", "ex", "non", "nisi", "adipisicing" ], "friends": [ { "id": 0, "name": "Shepherd Conrad" }, { "id": 1, "name": "Carson Allison" }, { "id": 2, "name": "Peck Dennis" } ], "greeting": "Hello, Meghan Finley! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22d7fc7e27ecda6acc", "index": 1492, "guid": "e9e991fe-509e-4a13-a785-349868626c59", "isActive": true, "balance": "$1,426.23", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Manning Bright", "gender": "male", "company": "PLEXIA", "email": "manningbright@plexia.com", "phone": "+1 (982) 551-3866", "address": "342 Bush Street, Clinton, Vermont, 4770", "about": "Duis nisi ad ex mollit cillum et irure cillum nostrud mollit excepteur. Ea consectetur voluptate labore laboris enim duis dolor. Magna veniam labore aute dolore.\r\n", "registered": "2014-02-01T03:10:27-13:00", "latitude": -60.606222, "longitude": 81.619557, "tags": [ "eiusmod", "magna", "ea", "magna", "sit", "laboris", "veniam" ], "friends": [ { "id": 0, "name": "Pruitt Freeman" }, { "id": 1, "name": "Workman Vargas" }, { "id": 2, "name": "Bauer Fuentes" } ], "greeting": "Hello, Manning Bright! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22ad055f6c38742ae3", "index": 1493, "guid": "bc6aa8fc-de3e-4cac-a8c5-ca82edc6f5f9", "isActive": false, "balance": "$1,489.33", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Trina Giles", "gender": "female", "company": "PRISMATIC", "email": "trinagiles@prismatic.com", "phone": "+1 (901) 534-2459", "address": "684 Tilden Avenue, Rivereno, Indiana, 3048", "about": "Incididunt nulla sint velit ut deserunt consectetur nisi. Eiusmod consequat incididunt reprehenderit dolore consectetur enim. Ullamco id et id amet consequat tempor labore non cupidatat amet non aliquip tempor.\r\n", "registered": "2014-09-03T06:27:21-12:00", "latitude": 19.502146, "longitude": -33.552387, "tags": [ "elit", "cillum", "Lorem", "Lorem", "aliqua", "nulla", "officia" ], "friends": [ { "id": 0, "name": "Rosie Singleton" }, { "id": 1, "name": "Norma Farmer" }, { "id": 2, "name": "Felicia Lewis" } ], "greeting": "Hello, Trina Giles! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2203c8ed400d1b4cab", "index": 1494, "guid": "265aa48d-8af5-417c-8f1d-fe9aabbd3bbe", "isActive": true, "balance": "$2,407.82", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Robert Castaneda", "gender": "female", "company": "TELPOD", "email": "robertcastaneda@telpod.com", "phone": "+1 (909) 534-2776", "address": "812 Ditmars Street, Newry, Illinois, 1418", "about": "Ex fugiat cillum dolor cupidatat. Dolor laborum eiusmod amet nostrud esse et est adipisicing dolore cillum ipsum consectetur aliqua. Ad incididunt proident pariatur aliquip eu sint laborum. Enim consectetur minim culpa est tempor culpa non mollit sint ad Lorem.\r\n", "registered": "2014-01-20T07:09:14-13:00", "latitude": -22.515624, "longitude": 80.031668, "tags": [ "pariatur", "qui", "sint", "sit", "non", "sint", "aute" ], "friends": [ { "id": 0, "name": "Bryan Burgess" }, { "id": 1, "name": "Sondra Brooks" }, { "id": 2, "name": "Burns Boyer" } ], "greeting": "Hello, Robert Castaneda! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22e9d331157681adee", "index": 1495, "guid": "f99fcd1e-5eae-42fc-b48c-ab62b68095a8", "isActive": false, "balance": "$2,537.91", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Olivia Cortez", "gender": "female", "company": "GEEKUS", "email": "oliviacortez@geekus.com", "phone": "+1 (982) 532-3484", "address": "803 Dorset Street, Falmouth, South Carolina, 5399", "about": "Ut cupidatat amet id pariatur. Minim reprehenderit deserunt sit ipsum dolor labore. Consectetur nulla deserunt quis aliquip excepteur aliquip minim minim ex. Anim elit Lorem exercitation tempor culpa consequat consectetur labore dolore exercitation laboris deserunt. Nostrud aliqua nisi ipsum non anim.\r\n", "registered": "2014-03-26T02:33:15-13:00", "latitude": -49.370057, "longitude": -17.750208, "tags": [ "eu", "nulla", "exercitation", "proident", "id", "labore", "dolore" ], "friends": [ { "id": 0, "name": "Hurst Beck" }, { "id": 1, "name": "Blanchard Hurley" }, { "id": 2, "name": "Etta Macias" } ], "greeting": "Hello, Olivia Cortez! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea228a79ed238a8e6c47", "index": 1496, "guid": "3d51d34b-f7ea-471d-8a2e-bfb667c60947", "isActive": true, "balance": "$1,932.26", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Cash Buckner", "gender": "male", "company": "COLLAIRE", "email": "cashbuckner@collaire.com", "phone": "+1 (961) 480-2954", "address": "481 Dictum Court, Ladera, American Samoa, 2612", "about": "Occaecat laborum amet ut veniam tempor cillum proident sunt magna laborum quis. Non veniam ut sint ullamco. Officia incididunt mollit voluptate id. Id mollit eiusmod sit non. Mollit Lorem dolore reprehenderit excepteur ullamco exercitation veniam. Occaecat reprehenderit esse nisi et.\r\n", "registered": "2014-05-02T05:19:41-12:00", "latitude": -88.073425, "longitude": 29.804056, "tags": [ "cillum", "elit", "dolor", "do", "proident", "incididunt", "aliqua" ], "friends": [ { "id": 0, "name": "Gallagher Cooke" }, { "id": 1, "name": "Rich Garrett" }, { "id": 2, "name": "Joyce Mcleod" } ], "greeting": "Hello, Cash Buckner! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22937440bee36f2157", "index": 1497, "guid": "fa66e234-5945-46a7-ac65-7174d62f003d", "isActive": false, "balance": "$3,214.45", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Mattie Mcgee", "gender": "female", "company": "PHOTOBIN", "email": "mattiemcgee@photobin.com", "phone": "+1 (820) 591-3779", "address": "458 Harbor Lane, Lopezo, Delaware, 4886", "about": "Occaecat occaecat non nostrud consequat sunt duis et ad reprehenderit dolore velit cupidatat veniam nostrud. Ipsum velit sunt labore cupidatat et enim labore mollit deserunt reprehenderit incididunt. Sit ea cupidatat ut exercitation ea labore consectetur adipisicing eiusmod elit dolore anim enim sunt.\r\n", "registered": "2014-04-16T00:33:53-12:00", "latitude": 84.906533, "longitude": 141.120277, "tags": [ "occaecat", "ad", "deserunt", "duis", "ipsum", "sit", "fugiat" ], "friends": [ { "id": 0, "name": "Wade Horne" }, { "id": 1, "name": "Mendez Kinney" }, { "id": 2, "name": "Anastasia Witt" } ], "greeting": "Hello, Mattie Mcgee! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22b95c123377ca807f", "index": 1498, "guid": "fd9eee10-15ae-4358-9b71-75b4313215db", "isActive": true, "balance": "$2,450.14", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Contreras Perkins", "gender": "male", "company": "ZOID", "email": "contrerasperkins@zoid.com", "phone": "+1 (973) 541-2064", "address": "225 Vanderveer Place, Wattsville, Pennsylvania, 8174", "about": "Ipsum Lorem mollit et officia excepteur aliqua esse anim incididunt occaecat id cupidatat. Adipisicing non mollit nulla commodo eu et anim velit consequat cupidatat excepteur anim irure. Fugiat magna cupidatat culpa mollit eiusmod amet ipsum occaecat sint mollit occaecat labore laboris cillum. Tempor et nulla sit cillum aliqua nulla Lorem dolore. Cillum irure enim sunt deserunt ipsum eiusmod adipisicing laborum consequat deserunt. Occaecat qui incididunt enim veniam amet enim elit tempor do labore deserunt.\r\n", "registered": "2014-05-30T07:44:38-12:00", "latitude": -1.903237, "longitude": -24.544156, "tags": [ "labore", "est", "culpa", "labore", "eu", "Lorem", "occaecat" ], "friends": [ { "id": 0, "name": "Dorothy Merrill" }, { "id": 1, "name": "Puckett Cherry" }, { "id": 2, "name": "Mccall Lucas" } ], "greeting": "Hello, Contreras Perkins! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2293f5270fdb4ed699", "index": 1499, "guid": "099896b4-fb70-4e3c-8dab-60677d45ceec", "isActive": true, "balance": "$3,783.85", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "James Hancock", "gender": "female", "company": "IMKAN", "email": "jameshancock@imkan.com", "phone": "+1 (920) 429-3738", "address": "534 Macdougal Street, Navarre, Georgia, 9320", "about": "Aliqua in proident pariatur non elit laborum laboris aute laboris. Voluptate qui mollit consequat veniam pariatur cupidatat Lorem in. Aliqua ex elit esse irure ullamco eiusmod nostrud amet culpa proident aliqua qui. Voluptate ipsum eiusmod voluptate ad nostrud irure id esse reprehenderit eiusmod nulla in minim exercitation. Officia excepteur commodo est magna excepteur sit dolore excepteur incididunt adipisicing reprehenderit. Aute laborum ad voluptate aliqua.\r\n", "registered": "2014-03-04T00:46:43-13:00", "latitude": -37.121188, "longitude": 173.490048, "tags": [ "et", "anim", "cupidatat", "consequat", "voluptate", "cupidatat", "exercitation" ], "friends": [ { "id": 0, "name": "Vanessa Wilkerson" }, { "id": 1, "name": "Stafford Zamora" }, { "id": 2, "name": "Allison Mack" } ], "greeting": "Hello, James Hancock! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2218f86845e2915370", "index": 1500, "guid": "ebb08989-112f-45cb-9bc4-2ea99b1648d2", "isActive": true, "balance": "$2,743.51", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Lina Oneill", "gender": "female", "company": "BIOTICA", "email": "linaoneill@biotica.com", "phone": "+1 (979) 409-3090", "address": "771 Roosevelt Court, Hachita, North Dakota, 8038", "about": "Non in incididunt excepteur eu enim non adipisicing deserunt sit cupidatat. Amet qui ullamco tempor Lorem velit cupidatat esse mollit irure anim. Mollit ad est anim ullamco Lorem cupidatat adipisicing ex. Sint exercitation sint eiusmod nisi laboris cillum exercitation.\r\n", "registered": "2014-01-23T00:39:37-13:00", "latitude": 86.461902, "longitude": 42.901545, "tags": [ "aute", "culpa", "nostrud", "do", "consectetur", "laborum", "cillum" ], "friends": [ { "id": 0, "name": "Keller Lawson" }, { "id": 1, "name": "Holmes Thomas" }, { "id": 2, "name": "Lou Stein" } ], "greeting": "Hello, Lina Oneill! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea228c602e540bc03419", "index": 1501, "guid": "f472bb85-bd0f-4b4f-9840-633229ee3ad6", "isActive": true, "balance": "$1,957.42", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Britt Jacobs", "gender": "male", "company": "MEDESIGN", "email": "brittjacobs@medesign.com", "phone": "+1 (852) 540-3206", "address": "762 Gaylord Drive, Bagtown, Louisiana, 1196", "about": "Exercitation enim ullamco et nisi veniam ex voluptate dolore id exercitation. Ipsum nisi do ipsum sunt. Sint dolore cupidatat sunt nisi minim cupidatat culpa occaecat consectetur anim velit officia est.\r\n", "registered": "2014-05-12T09:03:19-12:00", "latitude": -7.605649, "longitude": -73.496694, "tags": [ "velit", "veniam", "officia", "velit", "ut", "dolore", "in" ], "friends": [ { "id": 0, "name": "Lorie Malone" }, { "id": 1, "name": "Acosta Lynch" }, { "id": 2, "name": "Allyson Hendrix" } ], "greeting": "Hello, Britt Jacobs! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea222597cbae48c1b50c", "index": 1502, "guid": "e8f1bc7f-9118-458a-8659-45759da4715a", "isActive": true, "balance": "$3,292.67", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Murray Meyer", "gender": "male", "company": "HYPLEX", "email": "murraymeyer@hyplex.com", "phone": "+1 (991) 439-3535", "address": "888 Engert Avenue, Forestburg, Northern Mariana Islands, 7060", "about": "Magna tempor pariatur Lorem magna ex in exercitation aliqua reprehenderit. Exercitation elit aliqua amet tempor sit reprehenderit ipsum minim minim et sint nostrud ut. Quis cupidatat sunt reprehenderit dolore est voluptate ipsum.\r\n", "registered": "2014-09-02T22:44:13-12:00", "latitude": -54.870227, "longitude": -30.894138, "tags": [ "consequat", "velit", "sunt", "aute", "laborum", "ex", "eu" ], "friends": [ { "id": 0, "name": "Cross Walton" }, { "id": 1, "name": "Patsy Stanley" }, { "id": 2, "name": "Victoria Collins" } ], "greeting": "Hello, Murray Meyer! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22f588c3440c669328", "index": 1503, "guid": "1f3b91ca-bd59-4cb7-9c97-eccd99390442", "isActive": false, "balance": "$1,514.42", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Amalia Sosa", "gender": "female", "company": "NETROPIC", "email": "amaliasosa@netropic.com", "phone": "+1 (914) 573-3405", "address": "154 Girard Street, Grazierville, Colorado, 8679", "about": "Proident ad sint labore dolor amet esse elit magna deserunt irure. Voluptate quis id nulla veniam sunt duis. Cupidatat excepteur commodo excepteur ea. Laborum id pariatur minim elit irure nostrud non excepteur qui occaecat id. Excepteur commodo amet voluptate consectetur cillum cupidatat duis proident.\r\n", "registered": "2014-08-27T21:06:40-12:00", "latitude": -63.207544, "longitude": 143.493168, "tags": [ "veniam", "dolor", "elit", "qui", "incididunt", "consectetur", "aute" ], "friends": [ { "id": 0, "name": "Fern Sampson" }, { "id": 1, "name": "Katharine Cain" }, { "id": 2, "name": "Lottie Sawyer" } ], "greeting": "Hello, Amalia Sosa! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2267e71ddc4247f006", "index": 1504, "guid": "a08b8da9-ba27-4ebd-b6e5-b36bb999c67f", "isActive": false, "balance": "$3,062.46", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Lydia Wilder", "gender": "female", "company": "ZERBINA", "email": "lydiawilder@zerbina.com", "phone": "+1 (952) 412-3929", "address": "405 Forbell Street, Templeton, Idaho, 9367", "about": "Lorem adipisicing ad sint est. Nostrud ex sint pariatur officia consequat magna sit aliqua adipisicing pariatur. Commodo proident voluptate ullamco ipsum veniam commodo qui excepteur dolore elit. Ullamco aliqua consectetur est irure tempor qui non ipsum laboris et. Magna tempor exercitation pariatur eiusmod mollit nisi nostrud est. Reprehenderit magna non qui commodo exercitation ea excepteur eiusmod aute voluptate nulla proident. Dolore velit duis amet eiusmod do adipisicing.\r\n", "registered": "2014-03-28T09:37:08-13:00", "latitude": -86.275014, "longitude": -116.704452, "tags": [ "Lorem", "dolore", "ad", "reprehenderit", "minim", "anim", "amet" ], "friends": [ { "id": 0, "name": "Colette Mccray" }, { "id": 1, "name": "Marina Sanford" }, { "id": 2, "name": "Noel Cardenas" } ], "greeting": "Hello, Lydia Wilder! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea229d9cdbad4c26b92f", "index": 1505, "guid": "55734d48-a5e0-4a75-8e00-1891c4fefcb5", "isActive": true, "balance": "$1,457.55", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Martin Morrow", "gender": "male", "company": "CYCLONICA", "email": "martinmorrow@cyclonica.com", "phone": "+1 (895) 429-2869", "address": "655 Schenectady Avenue, Gibsonia, Marshall Islands, 4737", "about": "Nisi culpa Lorem excepteur minim ut incididunt velit excepteur fugiat sint reprehenderit consequat mollit et. Esse ea veniam dolore mollit non ullamco aliqua exercitation excepteur esse commodo esse ex irure. Excepteur sit consequat cupidatat cillum irure elit nostrud non irure ut anim eiusmod laborum sunt. Mollit deserunt aliquip nulla velit. Reprehenderit ut eu aliqua mollit labore ad cillum. Nulla cillum ipsum reprehenderit nulla velit commodo ex magna ut aliquip est cupidatat qui mollit. Aute nostrud ad adipisicing est nostrud.\r\n", "registered": "2014-08-08T22:06:04-12:00", "latitude": -77.957845, "longitude": 34.059915, "tags": [ "do", "laboris", "eiusmod", "id", "aliqua", "deserunt", "sint" ], "friends": [ { "id": 0, "name": "Susanne Livingston" }, { "id": 1, "name": "Ellen Hamilton" }, { "id": 2, "name": "Dorsey Shepherd" } ], "greeting": "Hello, Martin Morrow! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22466ae0ffc783fc8f", "index": 1506, "guid": "cec6516c-dd7d-4d6b-8279-c15a0acc544b", "isActive": false, "balance": "$3,368.60", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Harriett Clayton", "gender": "female", "company": "QOT", "email": "harriettclayton@qot.com", "phone": "+1 (846) 487-2413", "address": "898 Dewey Place, Why, New York, 3733", "about": "Est occaecat Lorem fugiat adipisicing. In magna anim consequat irure qui ullamco incididunt aute. Ex cupidatat adipisicing occaecat deserunt velit in anim est laborum pariatur laboris incididunt.\r\n", "registered": "2014-06-15T16:53:22-12:00", "latitude": -35.550847, "longitude": 28.078393, "tags": [ "minim", "dolore", "esse", "nulla", "dolor", "deserunt", "mollit" ], "friends": [ { "id": 0, "name": "Penelope Atkinson" }, { "id": 1, "name": "Tammy Clay" }, { "id": 2, "name": "Leah Whitehead" } ], "greeting": "Hello, Harriett Clayton! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea223ab8bac35747bc9c", "index": 1507, "guid": "3fd35e56-247b-4ca9-b083-71c393198755", "isActive": true, "balance": "$2,687.22", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Ebony Rush", "gender": "female", "company": "ISOSTREAM", "email": "ebonyrush@isostream.com", "phone": "+1 (991) 540-3926", "address": "878 Banner Avenue, Elrama, Guam, 9275", "about": "Pariatur dolor ea in qui in amet occaecat non. Consectetur minim est ipsum eiusmod dolor veniam eu ipsum. Mollit amet consectetur ullamco magna non do sint nostrud enim cillum. Mollit nostrud magna laborum laboris. Nisi cillum ad laborum exercitation irure do. Nulla officia excepteur dolore sit id duis. Elit id non cupidatat laborum et qui labore nulla aliquip.\r\n", "registered": "2014-02-02T04:01:29-13:00", "latitude": -53.49653, "longitude": 36.994132, "tags": [ "consectetur", "duis", "proident", "id", "occaecat", "aliquip", "sunt" ], "friends": [ { "id": 0, "name": "Schultz Hayden" }, { "id": 1, "name": "Hernandez Wooten" }, { "id": 2, "name": "Underwood Blankenship" } ], "greeting": "Hello, Ebony Rush! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22dfad125b03ee48dc", "index": 1508, "guid": "6b7a6ffc-5f68-410b-9171-bdc51b5818c8", "isActive": false, "balance": "$3,170.49", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Wise Kent", "gender": "male", "company": "NEBULEAN", "email": "wisekent@nebulean.com", "phone": "+1 (842) 529-3195", "address": "220 Hazel Court, Wilsonia, Virgin Islands, 5527", "about": "Lorem in nostrud ea deserunt irure veniam ea dolore magna laboris est nulla. Cupidatat Lorem ipsum adipisicing occaecat ea anim commodo deserunt occaecat sunt est. Quis consectetur ea nulla consectetur minim duis minim deserunt. Ea laborum cillum ad non eu cupidatat et nisi consequat ipsum veniam sint. Elit ad nulla amet magna occaecat proident nulla. Elit aliquip laboris dolore reprehenderit ut esse nulla culpa pariatur sunt in pariatur dolore exercitation.\r\n", "registered": "2014-05-03T12:18:26-12:00", "latitude": 35.267916, "longitude": 81.673389, "tags": [ "dolor", "tempor", "laboris", "duis", "mollit", "nostrud", "pariatur" ], "friends": [ { "id": 0, "name": "Gilbert Ramirez" }, { "id": 1, "name": "Roberts Hardy" }, { "id": 2, "name": "Goodwin Ross" } ], "greeting": "Hello, Wise Kent! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea220ff72fadecb1060d", "index": 1509, "guid": "80d75417-7dc6-43cb-9af1-f4af8872a9f7", "isActive": true, "balance": "$1,709.09", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Amanda Wade", "gender": "female", "company": "OHMNET", "email": "amandawade@ohmnet.com", "phone": "+1 (809) 429-2403", "address": "434 Danforth Street, Leyner, Massachusetts, 8900", "about": "In veniam irure laboris laboris. Proident adipisicing consequat fugiat quis ad. Enim amet excepteur qui duis tempor sint. Enim dolor do cupidatat labore aliqua sit nulla elit eiusmod reprehenderit elit.\r\n", "registered": "2014-03-26T20:55:14-13:00", "latitude": 88.635029, "longitude": 4.895944, "tags": [ "cupidatat", "nulla", "ullamco", "ea", "veniam", "quis", "deserunt" ], "friends": [ { "id": 0, "name": "Sharp Cunningham" }, { "id": 1, "name": "Cathleen Noble" }, { "id": 2, "name": "Desiree Montgomery" } ], "greeting": "Hello, Amanda Wade! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2220957fe97b11917c", "index": 1510, "guid": "7442750b-a8d2-41f0-bcf7-366ca447380b", "isActive": true, "balance": "$1,928.63", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Perez Tran", "gender": "male", "company": "AQUASSEUR", "email": "pereztran@aquasseur.com", "phone": "+1 (825) 524-3801", "address": "758 Bouck Court, Wacissa, Utah, 4660", "about": "Sunt enim irure velit ipsum proident elit non sint. Mollit enim laborum ad dolore do non Lorem cupidatat eiusmod officia ad enim. Consectetur dolor duis enim commodo et. Mollit consectetur ut aliquip duis nulla quis consectetur eiusmod ea qui eu ipsum. Id reprehenderit nulla Lorem exercitation aute proident commodo. Ea in ea quis consequat deserunt magna nisi id.\r\n", "registered": "2014-07-26T04:27:35-12:00", "latitude": -27.136492, "longitude": 56.857662, "tags": [ "ex", "elit", "ipsum", "cupidatat", "cupidatat", "anim", "do" ], "friends": [ { "id": 0, "name": "Eloise Valdez" }, { "id": 1, "name": "Strickland Hebert" }, { "id": 2, "name": "Casey Simmons" } ], "greeting": "Hello, Perez Tran! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22ec86fe17394e85af", "index": 1511, "guid": "bf928738-f8bd-4fcb-9560-b2ae8f0cf236", "isActive": false, "balance": "$1,380.77", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Reva Fox", "gender": "female", "company": "GOGOL", "email": "revafox@gogol.com", "phone": "+1 (819) 506-3138", "address": "349 Pleasant Place, Hiko, Montana, 3651", "about": "Ad reprehenderit nostrud deserunt nostrud cupidatat sint. Exercitation adipisicing consectetur duis voluptate sit reprehenderit nostrud in ipsum ex proident consequat excepteur culpa. Dolore laboris officia occaecat aliqua velit proident anim incididunt quis id ut adipisicing laboris. Ullamco deserunt excepteur tempor mollit ad consequat pariatur est ipsum.\r\n", "registered": "2014-03-09T05:30:46-13:00", "latitude": 69.462147, "longitude": -170.718571, "tags": [ "culpa", "deserunt", "eiusmod", "cillum", "enim", "est", "fugiat" ], "friends": [ { "id": 0, "name": "Haley Mosley" }, { "id": 1, "name": "Beverly Cole" }, { "id": 2, "name": "Jeri Waters" } ], "greeting": "Hello, Reva Fox! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22e8a3f30970141732", "index": 1512, "guid": "8041602e-b048-41c9-ba28-00fabc259f14", "isActive": true, "balance": "$3,817.84", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Margery Vega", "gender": "female", "company": "REMOLD", "email": "margeryvega@remold.com", "phone": "+1 (974) 500-2353", "address": "927 Barlow Drive, Tuskahoma, Wisconsin, 4705", "about": "Adipisicing minim laboris reprehenderit aute in eiusmod deserunt id aliquip eu. Laboris officia deserunt duis nisi nostrud. Cupidatat ullamco enim reprehenderit nulla laboris aute cillum nulla magna officia occaecat exercitation. Veniam in est pariatur ex. Enim ipsum fugiat qui reprehenderit veniam est cillum ipsum et enim incididunt sint. Tempor sunt nostrud aliquip labore tempor adipisicing mollit cillum.\r\n", "registered": "2014-03-10T14:40:14-13:00", "latitude": 12.564837, "longitude": 148.429179, "tags": [ "fugiat", "in", "magna", "irure", "et", "ad", "dolore" ], "friends": [ { "id": 0, "name": "Hampton Madden" }, { "id": 1, "name": "Albert Bradford" }, { "id": 2, "name": "Glenda Slater" } ], "greeting": "Hello, Margery Vega! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22252ed331b9038fc5", "index": 1513, "guid": "b1fb0e2e-a549-4684-bbb1-c78a1b1097da", "isActive": true, "balance": "$3,956.11", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Benita Maddox", "gender": "female", "company": "GENMOM", "email": "benitamaddox@genmom.com", "phone": "+1 (822) 430-3614", "address": "513 Denton Place, Cazadero, Maine, 6523", "about": "Officia consequat sunt aliqua labore nostrud consequat magna aliqua laborum ullamco mollit. Incididunt commodo in incididunt ex anim laboris fugiat sint duis dolor. Nisi aliqua magna commodo elit esse ullamco officia duis. Ex fugiat nisi nulla consectetur. Est ut ullamco deserunt officia mollit voluptate.\r\n", "registered": "2014-02-12T18:09:28-13:00", "latitude": 45.872522, "longitude": -114.470528, "tags": [ "ea", "magna", "fugiat", "aliqua", "ea", "tempor", "excepteur" ], "friends": [ { "id": 0, "name": "Cherie Ward" }, { "id": 1, "name": "Flores Rice" }, { "id": 2, "name": "Davenport Hendricks" } ], "greeting": "Hello, Benita Maddox! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea222ede3a0995d2134a", "index": 1514, "guid": "13c5a65d-97a1-4c6a-9766-9096f854b944", "isActive": false, "balance": "$2,277.03", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Elnora Morse", "gender": "female", "company": "EQUITOX", "email": "elnoramorse@equitox.com", "phone": "+1 (897) 539-3670", "address": "447 Dakota Place, Hiseville, Virginia, 7576", "about": "Tempor in nisi nostrud esse ea aute eu laborum. Fugiat ad voluptate culpa elit minim irure commodo cillum Lorem sit labore adipisicing dolor adipisicing. Sit in sit non laboris dolor consectetur. Ut aute sit consectetur quis officia reprehenderit labore sint. Fugiat nostrud consectetur incididunt nostrud.\r\n", "registered": "2014-09-08T16:14:57-12:00", "latitude": 1.044069, "longitude": 77.826541, "tags": [ "nulla", "irure", "in", "pariatur", "veniam", "ad", "qui" ], "friends": [ { "id": 0, "name": "Dotson James" }, { "id": 1, "name": "Kim Griffith" }, { "id": 2, "name": "Sheena Webb" } ], "greeting": "Hello, Elnora Morse! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22877eda2d8477b724", "index": 1515, "guid": "da991383-9fa7-4877-a6eb-b37110691712", "isActive": true, "balance": "$3,237.99", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Williamson Kirk", "gender": "male", "company": "ZILIDIUM", "email": "williamsonkirk@zilidium.com", "phone": "+1 (944) 497-3685", "address": "376 Seacoast Terrace, Avalon, Kentucky, 4446", "about": "Duis minim deserunt ex enim est culpa. Id ex eu enim laboris aliquip adipisicing non non incididunt nulla ipsum ipsum exercitation. Non consequat Lorem enim fugiat anim.\r\n", "registered": "2014-08-22T23:06:44-12:00", "latitude": 42.70694, "longitude": -116.045705, "tags": [ "dolore", "veniam", "sit", "velit", "aliqua", "qui", "consequat" ], "friends": [ { "id": 0, "name": "Patrick Rutledge" }, { "id": 1, "name": "Trudy Baker" }, { "id": 2, "name": "Greta Daniels" } ], "greeting": "Hello, Williamson Kirk! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2224fa518d8077ab08", "index": 1516, "guid": "34e93b02-be8b-480b-a2e0-c2eb8e102b2c", "isActive": true, "balance": "$3,607.90", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Eileen Wright", "gender": "female", "company": "GADTRON", "email": "eileenwright@gadtron.com", "phone": "+1 (982) 577-3807", "address": "570 Joralemon Street, Chesterfield, Connecticut, 5604", "about": "Commodo ad aute ad nostrud cillum eu quis ad aute aliqua Lorem dolor eu. Culpa in sunt et magna ut aute. Non laborum incididunt proident occaecat eiusmod cupidatat non ea. Fugiat non do sint consequat non aliquip officia eu cillum veniam Lorem ullamco deserunt. Irure Lorem anim esse aute ut proident quis.\r\n", "registered": "2014-04-26T07:22:01-12:00", "latitude": -30.668537, "longitude": 178.235689, "tags": [ "eiusmod", "ad", "mollit", "aliquip", "tempor", "et", "consectetur" ], "friends": [ { "id": 0, "name": "Lela Patel" }, { "id": 1, "name": "Berg Cook" }, { "id": 2, "name": "Opal Bullock" } ], "greeting": "Hello, Eileen Wright! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea225f9c7d4d42c3f378", "index": 1517, "guid": "549d3a39-d008-4648-a851-f922961dcf6b", "isActive": true, "balance": "$2,042.27", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Mandy Nicholson", "gender": "female", "company": "XYQAG", "email": "mandynicholson@xyqag.com", "phone": "+1 (901) 549-2343", "address": "242 Pitkin Avenue, Convent, Mississippi, 3717", "about": "Laborum dolor id irure velit aliquip tempor elit tempor mollit magna veniam dolore elit ipsum. Nulla labore consectetur Lorem dolor. Nostrud adipisicing do proident exercitation voluptate. Esse ea culpa ea nostrud aliquip dolor aute pariatur magna et eu in dolor. Proident nostrud non excepteur est adipisicing incididunt commodo est magna do esse esse ad. Pariatur Lorem fugiat aliqua aliquip Lorem ex laboris minim est duis elit id ea eiusmod.\r\n", "registered": "2014-02-27T19:32:21-13:00", "latitude": -68.768967, "longitude": -147.51615, "tags": [ "nostrud", "ut", "sint", "aliqua", "laborum", "tempor", "deserunt" ], "friends": [ { "id": 0, "name": "Arlene Grimes" }, { "id": 1, "name": "Petra Olsen" }, { "id": 2, "name": "Meadows Ramsey" } ], "greeting": "Hello, Mandy Nicholson! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22bf5faa2eb164b56b", "index": 1518, "guid": "8e69ce6a-73f7-48a8-a7be-4db1b8003b48", "isActive": false, "balance": "$2,513.67", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Ada Barrera", "gender": "female", "company": "HELIXO", "email": "adabarrera@helixo.com", "phone": "+1 (856) 426-3833", "address": "303 Monroe Place, Jardine, Washington, 7918", "about": "Officia ipsum nisi elit exercitation officia ea qui proident veniam in laborum aliqua aliqua ut. Tempor et anim officia est. Ea nostrud est eiusmod pariatur deserunt amet quis voluptate sit nisi cupidatat eu Lorem esse. Elit aliquip sint elit Lorem reprehenderit. Qui excepteur sit nulla fugiat nulla mollit adipisicing. Aliquip ex deserunt non pariatur excepteur minim do irure minim voluptate. Lorem minim ex nulla occaecat dolore irure adipisicing.\r\n", "registered": "2014-01-06T13:09:14-13:00", "latitude": -11.493697, "longitude": 46.076933, "tags": [ "et", "laborum", "ipsum", "magna", "excepteur", "veniam", "in" ], "friends": [ { "id": 0, "name": "Downs Moses" }, { "id": 1, "name": "Dodson Huff" }, { "id": 2, "name": "Susan Mcintyre" } ], "greeting": "Hello, Ada Barrera! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22f4e9d66b5e89c8a0", "index": 1519, "guid": "956ad147-a2cd-429c-a67b-5bfa63181285", "isActive": true, "balance": "$1,023.34", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Brock Hicks", "gender": "male", "company": "VIDTO", "email": "brockhicks@vidto.com", "phone": "+1 (901) 438-3294", "address": "266 Pierrepont Street, Berwind, Tennessee, 3392", "about": "Elit in elit laboris elit voluptate id nostrud consequat ullamco enim sint non. Sunt excepteur et aliquip pariatur. Aliqua ex incididunt minim mollit. Tempor aute Lorem cillum est tempor culpa culpa est nostrud et ut. Sit laboris in id sit consectetur do duis nostrud aliqua cupidatat quis. Tempor incididunt enim aliquip quis voluptate laboris.\r\n", "registered": "2014-03-07T03:53:09-13:00", "latitude": 36.230958, "longitude": 12.178171, "tags": [ "labore", "quis", "non", "in", "ut", "deserunt", "excepteur" ], "friends": [ { "id": 0, "name": "Connie Carlson" }, { "id": 1, "name": "Salas Ayers" }, { "id": 2, "name": "Gale Leach" } ], "greeting": "Hello, Brock Hicks! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22801dc9ecf85d2cab", "index": 1520, "guid": "e13b91ed-0b8f-4d02-ae5a-636b8b891b6f", "isActive": false, "balance": "$2,812.16", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Flynn Lyons", "gender": "male", "company": "BEZAL", "email": "flynnlyons@bezal.com", "phone": "+1 (814) 591-2711", "address": "685 Cheever Place, Nescatunga, Alabama, 7857", "about": "Sit pariatur occaecat ullamco adipisicing tempor ad adipisicing cupidatat dolor commodo nisi. Elit laborum sunt nulla incididunt dolore id commodo est. Laborum cillum nulla pariatur enim ea pariatur officia non. Ad nisi nisi proident velit tempor commodo nostrud. Duis pariatur aute reprehenderit eu ullamco ea ipsum.\r\n", "registered": "2014-09-11T14:27:21-12:00", "latitude": -2.411719, "longitude": 64.804148, "tags": [ "ullamco", "ea", "non", "laboris", "ex", "Lorem", "ad" ], "friends": [ { "id": 0, "name": "Porter Robles" }, { "id": 1, "name": "Betsy Curry" }, { "id": 2, "name": "Latisha Marquez" } ], "greeting": "Hello, Flynn Lyons! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2278a827530bc914f2", "index": 1521, "guid": "72152d37-7b85-4bf0-ac93-a0ea5ad2ba94", "isActive": false, "balance": "$3,107.69", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Small Acevedo", "gender": "male", "company": "ENTOGROK", "email": "smallacevedo@entogrok.com", "phone": "+1 (839) 445-2813", "address": "833 Amity Street, Westwood, Ohio, 1229", "about": "Proident commodo veniam reprehenderit est amet reprehenderit consectetur eu cillum dolore sit aliquip. Qui non dolore magna pariatur sint est esse do qui ea adipisicing cupidatat. Reprehenderit ullamco mollit occaecat incididunt dolore veniam dolor laborum labore nulla adipisicing. Voluptate aliquip quis officia quis anim cillum excepteur excepteur deserunt.\r\n", "registered": "2014-03-16T03:50:13-13:00", "latitude": -34.845135, "longitude": -129.742474, "tags": [ "aliqua", "pariatur", "consequat", "adipisicing", "deserunt", "ut", "ex" ], "friends": [ { "id": 0, "name": "Dena Reeves" }, { "id": 1, "name": "Ballard Irwin" }, { "id": 2, "name": "Aurora Terrell" } ], "greeting": "Hello, Small Acevedo! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22b805e2cec09b2841", "index": 1522, "guid": "6b826166-b927-4e71-b55e-006cd370b391", "isActive": false, "balance": "$1,003.92", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Kline Schmidt", "gender": "male", "company": "ZANILLA", "email": "klineschmidt@zanilla.com", "phone": "+1 (924) 478-3344", "address": "516 Taaffe Place, Camas, Hawaii, 6874", "about": "Do veniam labore incididunt occaecat. Non excepteur incididunt veniam duis fugiat veniam non. Ut reprehenderit est nulla incididunt consectetur laboris consectetur deserunt pariatur qui est cupidatat. Id voluptate sit esse occaecat ea fugiat et ullamco voluptate. Nisi fugiat eu ut nulla deserunt Lorem nulla occaecat et sunt excepteur.\r\n", "registered": "2014-05-30T13:31:01-12:00", "latitude": -39.608356, "longitude": 85.760735, "tags": [ "labore", "anim", "sit", "eu", "dolore", "est", "qui" ], "friends": [ { "id": 0, "name": "Soto Delaney" }, { "id": 1, "name": "Maricela Wyatt" }, { "id": 2, "name": "Ramsey Lindsey" } ], "greeting": "Hello, Kline Schmidt! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22af368e440e541d49", "index": 1523, "guid": "8c2ef84c-2110-4f69-b13b-380502f0fb47", "isActive": false, "balance": "$1,285.63", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Nola Head", "gender": "female", "company": "SEQUITUR", "email": "nolahead@sequitur.com", "phone": "+1 (801) 531-2940", "address": "857 Dewitt Avenue, Brandermill, New Mexico, 1119", "about": "In ut ea incididunt ipsum enim aliqua incididunt ut velit laborum consectetur. Nulla excepteur et incididunt exercitation exercitation nisi deserunt culpa aliqua nisi ea qui consequat. Tempor veniam et culpa fugiat eu velit pariatur anim mollit mollit aliqua aute. Voluptate tempor exercitation do voluptate occaecat id deserunt amet aliqua consectetur. Minim eiusmod duis nisi tempor et ad do.\r\n", "registered": "2014-01-23T10:27:13-13:00", "latitude": -76.290558, "longitude": 48.025212, "tags": [ "voluptate", "culpa", "elit", "veniam", "proident", "aute", "adipisicing" ], "friends": [ { "id": 0, "name": "Durham Morrison" }, { "id": 1, "name": "Hanson Crawford" }, { "id": 2, "name": "Jan Espinoza" } ], "greeting": "Hello, Nola Head! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2268d8ee0258cf3b5d", "index": 1524, "guid": "e6f051b5-ee69-4c3b-925f-1cd1b2282e7f", "isActive": false, "balance": "$1,939.71", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Conner Sullivan", "gender": "male", "company": "PROSELY", "email": "connersullivan@prosely.com", "phone": "+1 (911) 412-2051", "address": "350 Guider Avenue, Sunriver, Maryland, 5762", "about": "Ex exercitation nostrud irure reprehenderit aliquip dolore do deserunt mollit amet reprehenderit. Dolor non duis ipsum eu veniam aliquip ea eiusmod reprehenderit aute ea excepteur. Laborum magna nostrud enim ea reprehenderit. Id occaecat Lorem enim enim ea elit excepteur est anim. Aute in ad aute Lorem aliqua quis quis occaecat amet irure laboris ut voluptate. Anim quis ad non culpa Lorem mollit enim ex aliquip qui cupidatat et. Aliqua ad culpa irure veniam magna aute irure.\r\n", "registered": "2014-06-17T23:21:20-12:00", "latitude": -8.741607, "longitude": -115.199915, "tags": [ "commodo", "nostrud", "esse", "voluptate", "et", "aute", "sunt" ], "friends": [ { "id": 0, "name": "Mccullough Day" }, { "id": 1, "name": "Lorna Harmon" }, { "id": 2, "name": "Woods English" } ], "greeting": "Hello, Conner Sullivan! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22feae6e10b3580cf9", "index": 1525, "guid": "06dff52e-70a7-4b66-981a-a034a63ae823", "isActive": false, "balance": "$3,709.24", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Renee Buckley", "gender": "female", "company": "WATERBABY", "email": "reneebuckley@waterbaby.com", "phone": "+1 (800) 493-2336", "address": "644 Bartlett Place, Whitehaven, Alaska, 5140", "about": "Anim ullamco ullamco Lorem cupidatat. Lorem incididunt laborum excepteur mollit ut proident ea proident. Enim sint occaecat pariatur reprehenderit sunt.\r\n", "registered": "2014-08-20T05:05:36-12:00", "latitude": 25.403571, "longitude": 30.420721, "tags": [ "incididunt", "laboris", "sint", "exercitation", "magna", "quis", "Lorem" ], "friends": [ { "id": 0, "name": "Todd Haley" }, { "id": 1, "name": "Gutierrez Mullen" }, { "id": 2, "name": "Earline Bray" } ], "greeting": "Hello, Renee Buckley! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22fb01d48a518ccf51", "index": 1526, "guid": "24540318-70e3-4084-9a3d-cdb73145c09f", "isActive": true, "balance": "$1,570.37", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Wanda Gay", "gender": "female", "company": "FROLIX", "email": "wandagay@frolix.com", "phone": "+1 (964) 463-3099", "address": "329 Harkness Avenue, Cobbtown, Arizona, 7820", "about": "Ex esse eiusmod consectetur qui consequat enim dolore quis et. Occaecat consequat eiusmod sint minim do ad ut eu do sint qui cupidatat ex ex. Ad in enim est fugiat nisi aliqua id.\r\n", "registered": "2014-03-08T22:25:05-13:00", "latitude": 3.754248, "longitude": -20.29301, "tags": [ "et", "est", "anim", "ea", "veniam", "cupidatat", "ex" ], "friends": [ { "id": 0, "name": "Shaffer Pitts" }, { "id": 1, "name": "Staci Vance" }, { "id": 2, "name": "Macdonald Kidd" } ], "greeting": "Hello, Wanda Gay! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22cd013c97813694c9", "index": 1527, "guid": "3bbc7c60-50e2-4188-9cad-27fb0f36d116", "isActive": true, "balance": "$2,934.64", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Garza Bridges", "gender": "male", "company": "MANGLO", "email": "garzabridges@manglo.com", "phone": "+1 (922) 492-2590", "address": "269 Tech Place, Sehili, Federated States Of Micronesia, 8478", "about": "Nostrud eiusmod culpa eiusmod elit aliquip et commodo. Ad ipsum laboris pariatur Lorem. Sint est non aute aute officia. Deserunt velit incididunt est tempor in aliqua amet reprehenderit nostrud dolor irure.\r\n", "registered": "2014-08-24T13:27:28-12:00", "latitude": 40.290849, "longitude": 113.164587, "tags": [ "fugiat", "irure", "id", "qui", "dolor", "cupidatat", "voluptate" ], "friends": [ { "id": 0, "name": "Tanisha Alford" }, { "id": 1, "name": "Daphne Riley" }, { "id": 2, "name": "Mccray Brennan" } ], "greeting": "Hello, Garza Bridges! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea224805b2b639bdd6d7", "index": 1528, "guid": "3570f884-a8a7-4512-8c65-da9e715196f2", "isActive": true, "balance": "$2,153.16", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Sandy Austin", "gender": "female", "company": "BITREX", "email": "sandyaustin@bitrex.com", "phone": "+1 (986) 433-2375", "address": "769 Orient Avenue, Kaka, Oklahoma, 2614", "about": "Consequat exercitation duis commodo veniam incididunt reprehenderit consectetur aute sunt anim. Ullamco velit cupidatat officia sit eiusmod ad sit nostrud amet minim mollit ullamco. Dolor minim labore excepteur dolor dolor minim deserunt officia commodo. Ad eiusmod proident elit reprehenderit in dolor sit dolore est nisi aliquip.\r\n", "registered": "2014-08-19T21:51:40-12:00", "latitude": 49.613461, "longitude": -130.458107, "tags": [ "minim", "cupidatat", "proident", "amet", "adipisicing", "eiusmod", "pariatur" ], "friends": [ { "id": 0, "name": "Copeland Oneil" }, { "id": 1, "name": "Decker Richard" }, { "id": 2, "name": "Salinas Casey" } ], "greeting": "Hello, Sandy Austin! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22736434e2fe431979", "index": 1529, "guid": "df07d09e-013a-44cf-9b85-ec7804facb3d", "isActive": true, "balance": "$2,766.82", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Nannie Figueroa", "gender": "female", "company": "POSHOME", "email": "nanniefigueroa@poshome.com", "phone": "+1 (974) 429-2461", "address": "577 Kansas Place, Calverton, Michigan, 8198", "about": "Minim veniam culpa cupidatat duis culpa aliquip voluptate aliquip labore voluptate cupidatat sunt sint commodo. Tempor ex id velit Lorem culpa adipisicing aute irure. Dolor nostrud consectetur anim magna enim eu laborum et irure nisi anim anim. Commodo qui in qui proident mollit nisi consectetur sunt culpa cupidatat tempor quis Lorem labore.\r\n", "registered": "2014-01-29T03:46:35-13:00", "latitude": 16.365853, "longitude": 94.340274, "tags": [ "culpa", "ipsum", "elit", "pariatur", "laboris", "anim", "officia" ], "friends": [ { "id": 0, "name": "Norman Gallagher" }, { "id": 1, "name": "Perkins Copeland" }, { "id": 2, "name": "Rosalyn Gould" } ], "greeting": "Hello, Nannie Figueroa! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2216ed169b89b7f1c4", "index": 1530, "guid": "b8ffc951-a23a-47e4-9681-c75079c599ea", "isActive": false, "balance": "$2,666.10", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Lesa Sellers", "gender": "female", "company": "KIOSK", "email": "lesasellers@kiosk.com", "phone": "+1 (863) 462-3703", "address": "703 Maple Avenue, Wildwood, Kansas, 750", "about": "Duis id officia est ad culpa adipisicing duis aute et minim. Aliqua adipisicing qui consectetur dolor. Esse qui magna incididunt pariatur veniam fugiat do ullamco ipsum aute voluptate. Tempor velit irure eu aliquip do eu qui aliquip. Enim proident elit irure mollit eu tempor labore ut. Elit aliquip velit laboris consequat proident labore reprehenderit. Consequat non aliquip laborum anim occaecat culpa anim.\r\n", "registered": "2014-08-01T08:16:20-12:00", "latitude": 48.824932, "longitude": -145.55728, "tags": [ "excepteur", "amet", "excepteur", "ad", "sunt", "nostrud", "consequat" ], "friends": [ { "id": 0, "name": "Paulette Long" }, { "id": 1, "name": "Weaver Barnett" }, { "id": 2, "name": "Hallie Morin" } ], "greeting": "Hello, Lesa Sellers! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22c4019876da15d1a6", "index": 1531, "guid": "0833da18-e9ce-403d-b875-538937cc54dc", "isActive": true, "balance": "$1,947.52", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Isabelle Scott", "gender": "female", "company": "SATIANCE", "email": "isabellescott@satiance.com", "phone": "+1 (833) 412-2406", "address": "497 Clymer Street, Disautel, South Dakota, 7020", "about": "Fugiat nulla excepteur ad quis enim ullamco exercitation magna Lorem. Eu voluptate aliqua laborum cillum occaecat. Quis proident aute ut ut excepteur esse anim et commodo. Reprehenderit est anim ut non minim exercitation mollit. Cupidatat nostrud veniam nisi consectetur. Et ut tempor aliqua velit commodo adipisicing qui laborum tempor fugiat non occaecat tempor nulla.\r\n", "registered": "2014-03-26T20:38:35-13:00", "latitude": -41.809631, "longitude": -160.719616, "tags": [ "exercitation", "exercitation", "est", "quis", "magna", "officia", "aliquip" ], "friends": [ { "id": 0, "name": "Suarez Prince" }, { "id": 1, "name": "Vilma Ryan" }, { "id": 2, "name": "Winters Knox" } ], "greeting": "Hello, Isabelle Scott! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22b6695350a36786f5", "index": 1532, "guid": "4d7b5233-7d49-42e8-a42f-6dfd6475230e", "isActive": true, "balance": "$2,593.98", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Cline Yang", "gender": "male", "company": "ZOINAGE", "email": "clineyang@zoinage.com", "phone": "+1 (895) 499-3767", "address": "515 Albemarle Terrace, Lynn, West Virginia, 5943", "about": "Laboris cupidatat eu qui nostrud. Adipisicing ut irure tempor eu laborum eiusmod et ex ut deserunt consequat est adipisicing. Amet cillum ut cillum adipisicing ad cupidatat proident tempor. Sunt aliquip fugiat do irure dolor laborum consequat. Id ullamco id excepteur cillum ullamco voluptate. Veniam laborum ea ad est ex eiusmod dolore aliquip do id. Qui est irure laboris culpa velit ullamco culpa occaecat ad.\r\n", "registered": "2014-01-05T06:09:25-13:00", "latitude": -2.091166, "longitude": -165.351998, "tags": [ "fugiat", "duis", "nostrud", "sunt", "esse", "irure", "incididunt" ], "friends": [ { "id": 0, "name": "Garner Baldwin" }, { "id": 1, "name": "Conway Hall" }, { "id": 2, "name": "Cheryl Joyner" } ], "greeting": "Hello, Cline Yang! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22d00e896da2323c59", "index": 1533, "guid": "bbac774a-d0ed-498d-bc9f-d6a5994ed27a", "isActive": true, "balance": "$3,107.26", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Obrien Goodwin", "gender": "male", "company": "KAGE", "email": "obriengoodwin@kage.com", "phone": "+1 (847) 493-2404", "address": "149 Halsey Street, Hondah, Texas, 8614", "about": "Aute ad ea ea nulla occaecat occaecat labore aliqua laborum nisi. Laborum do voluptate commodo exercitation sint ex. Qui laboris nostrud officia pariatur aute elit quis Lorem officia culpa voluptate nisi magna ipsum. Anim occaecat minim nisi quis quis irure proident dolore do fugiat veniam deserunt tempor. Ea reprehenderit enim do officia id amet tempor anim. Culpa do ipsum commodo irure eiusmod laboris quis sunt do ex excepteur.\r\n", "registered": "2014-08-21T03:12:29-12:00", "latitude": -74.352415, "longitude": 73.134915, "tags": [ "in", "Lorem", "ad", "laboris", "amet", "id", "culpa" ], "friends": [ { "id": 0, "name": "Baker Munoz" }, { "id": 1, "name": "Tracie Bush" }, { "id": 2, "name": "Lindsey Ramos" } ], "greeting": "Hello, Obrien Goodwin! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22cf9fe9cb31d98642", "index": 1534, "guid": "6a885534-c947-412c-8e4f-ccb2e48855ed", "isActive": true, "balance": "$1,260.63", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Mcmillan Wagner", "gender": "male", "company": "SPEEDBOLT", "email": "mcmillanwagner@speedbolt.com", "phone": "+1 (908) 458-3302", "address": "397 Polar Street, Kirk, Oregon, 441", "about": "Sit id magna consectetur laboris proident anim labore. Quis commodo consectetur id nostrud voluptate non eu nisi quis aliqua excepteur est ut. Aliqua esse occaecat non consectetur. Ullamco sint voluptate eiusmod nulla nostrud pariatur do anim excepteur voluptate.\r\n", "registered": "2014-03-02T00:40:02-13:00", "latitude": 7.891481, "longitude": 44.610989, "tags": [ "veniam", "consectetur", "do", "anim", "qui", "ex", "adipisicing" ], "friends": [ { "id": 0, "name": "Horton Sandoval" }, { "id": 1, "name": "Rose Bentley" }, { "id": 2, "name": "Sherri Skinner" } ], "greeting": "Hello, Mcmillan Wagner! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22a44ae3075d199bf0", "index": 1535, "guid": "928b5dcf-b29d-4fc9-bf2a-aa58812475fe", "isActive": true, "balance": "$1,669.39", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Hickman Sharpe", "gender": "male", "company": "TWIIST", "email": "hickmansharpe@twiist.com", "phone": "+1 (919) 400-3017", "address": "825 Ferry Place, Rose, Nevada, 8312", "about": "Laborum dolore laboris ad magna. Ad veniam culpa amet dolor tempor nostrud sit ad laboris veniam dolore culpa et. Eu laboris enim qui ad in ea duis deserunt nostrud sint laboris. Elit amet ut deserunt quis adipisicing.\r\n", "registered": "2014-02-01T21:02:24-13:00", "latitude": -68.702345, "longitude": -167.900192, "tags": [ "ad", "sunt", "magna", "pariatur", "fugiat", "sit", "velit" ], "friends": [ { "id": 0, "name": "Hess Hull" }, { "id": 1, "name": "Dionne Carney" }, { "id": 2, "name": "Ana Heath" } ], "greeting": "Hello, Hickman Sharpe! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea229c4d445680aa1b1d", "index": 1536, "guid": "2d99f75c-a96d-4917-8131-066a26215cf6", "isActive": false, "balance": "$1,358.17", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Melody Ortega", "gender": "female", "company": "ESCHOIR", "email": "melodyortega@eschoir.com", "phone": "+1 (935) 524-2581", "address": "921 Lewis Place, Frierson, Minnesota, 5216", "about": "Enim magna officia aliquip aute incididunt. Fugiat officia laborum nisi eiusmod exercitation fugiat fugiat amet in quis. Mollit labore incididunt do occaecat nisi aute non tempor magna minim nostrud nostrud nulla tempor. Ea cillum dolore incididunt sint incididunt nostrud cupidatat consequat officia. Enim qui eiusmod consectetur commodo elit. Mollit nostrud occaecat ullamco proident nulla duis irure non commodo amet cillum.\r\n", "registered": "2014-07-18T01:22:04-12:00", "latitude": -52.989259, "longitude": -50.651741, "tags": [ "incididunt", "dolore", "ipsum", "nisi", "sit", "duis", "ipsum" ], "friends": [ { "id": 0, "name": "Mullins Charles" }, { "id": 1, "name": "Aguilar Hill" }, { "id": 2, "name": "Ruiz Thompson" } ], "greeting": "Hello, Melody Ortega! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2273e46cbe8b384205", "index": 1537, "guid": "edcd55a9-1d46-4406-96e1-753a08da4ec4", "isActive": true, "balance": "$2,647.63", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Rosa Huffman", "gender": "female", "company": "ORGANICA", "email": "rosahuffman@organica.com", "phone": "+1 (870) 590-3352", "address": "478 Main Street, Charco, Missouri, 8064", "about": "Ex adipisicing consequat quis cupidatat velit velit culpa ipsum ex ut velit. Eiusmod occaecat et aliqua ex est deserunt do laboris cillum mollit pariatur duis excepteur ex. Ad enim elit minim veniam minim proident officia cillum ut eu mollit fugiat. Proident est veniam deserunt minim tempor ea excepteur eiusmod aute occaecat.\r\n", "registered": "2014-04-08T21:33:57-12:00", "latitude": -83.295646, "longitude": -24.124618, "tags": [ "tempor", "fugiat", "qui", "veniam", "cillum", "occaecat", "non" ], "friends": [ { "id": 0, "name": "Nikki Bishop" }, { "id": 1, "name": "Nora Jimenez" }, { "id": 2, "name": "Carlene Morris" } ], "greeting": "Hello, Rosa Huffman! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22f3f401dd7fbd62ce", "index": 1538, "guid": "73a489fe-dd77-467a-bdfe-3d76a218cf85", "isActive": true, "balance": "$2,663.97", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Tran Gentry", "gender": "male", "company": "PEARLESEX", "email": "trangentry@pearlesex.com", "phone": "+1 (812) 510-2773", "address": "534 Keap Street, Carrizo, Rhode Island, 4273", "about": "Velit eiusmod amet excepteur anim. Dolore sunt sit sit ut sint deserunt non excepteur sint fugiat aliquip pariatur culpa. Ea commodo culpa adipisicing adipisicing dolor. Minim quis fugiat fugiat Lorem eiusmod esse sunt id elit anim proident.\r\n", "registered": "2014-07-17T05:51:31-12:00", "latitude": 23.348559, "longitude": 75.521029, "tags": [ "ut", "id", "qui", "pariatur", "ex", "id", "quis" ], "friends": [ { "id": 0, "name": "Maria Estes" }, { "id": 1, "name": "Emily Tate" }, { "id": 2, "name": "Laura Tyson" } ], "greeting": "Hello, Tran Gentry! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea229816de78e7ed7197", "index": 1539, "guid": "e72ea63b-8add-4aec-98df-83bb72442dde", "isActive": true, "balance": "$2,170.58", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Hester Stanton", "gender": "female", "company": "GEEKULAR", "email": "hesterstanton@geekular.com", "phone": "+1 (991) 537-3650", "address": "657 Ovington Court, Accoville, Florida, 2926", "about": "Nostrud in veniam aute consequat consectetur velit non nisi esse do nulla. Consequat aute et incididunt fugiat quis elit labore ea dolore qui. Enim eu irure aute minim et non adipisicing adipisicing magna nisi ea aliqua. Ea sit proident mollit officia ex pariatur. Enim cupidatat irure magna incididunt reprehenderit amet ad fugiat magna commodo. Sit eiusmod fugiat exercitation nostrud deserunt aliquip proident laboris id minim. Cupidatat in duis consequat velit duis consequat exercitation veniam reprehenderit ea ea culpa duis aliquip.\r\n", "registered": "2014-02-28T16:12:15-13:00", "latitude": -11.716356, "longitude": -144.351064, "tags": [ "eu", "anim", "officia", "in", "labore", "amet", "culpa" ], "friends": [ { "id": 0, "name": "Gentry Pope" }, { "id": 1, "name": "Elsa Galloway" }, { "id": 2, "name": "Lopez Compton" } ], "greeting": "Hello, Hester Stanton! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22457718fec574da2b", "index": 1540, "guid": "0ccce301-f588-4b55-92b4-2299dcf7a439", "isActive": true, "balance": "$3,364.71", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Tyler Morgan", "gender": "male", "company": "KINDALOO", "email": "tylermorgan@kindaloo.com", "phone": "+1 (821) 411-2773", "address": "203 Kossuth Place, Guthrie, North Carolina, 8354", "about": "Nisi cupidatat aliquip in exercitation pariatur incididunt amet aute dolor. Aliqua exercitation nulla et sunt consequat cupidatat ut sit. Labore voluptate veniam amet quis magna.\r\n", "registered": "2014-03-10T10:01:34-13:00", "latitude": 19.426069, "longitude": -30.929842, "tags": [ "laborum", "consectetur", "consequat", "reprehenderit", "consectetur", "reprehenderit", "proident" ], "friends": [ { "id": 0, "name": "Ashlee Meadows" }, { "id": 1, "name": "Winnie Paul" }, { "id": 2, "name": "Flowers Browning" } ], "greeting": "Hello, Tyler Morgan! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22ed1e8ba0191b7094", "index": 1541, "guid": "4327f56b-2f85-482a-80b5-88cfb7d9d0b0", "isActive": true, "balance": "$2,964.03", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Aida Knapp", "gender": "female", "company": "UNISURE", "email": "aidaknapp@unisure.com", "phone": "+1 (965) 426-3808", "address": "605 Eaton Court, Albany, New Hampshire, 2084", "about": "Nostrud veniam ea voluptate fugiat. Deserunt dolore ut esse sunt ea laboris ut quis. Nisi officia enim quis exercitation sunt exercitation. Nulla labore esse tempor ut proident exercitation in aliquip. Anim do culpa aliquip ea id. Amet commodo elit quis nisi. Tempor consectetur cupidatat eu quis velit qui fugiat non dolore sit proident est adipisicing nulla.\r\n", "registered": "2014-03-20T21:40:29-13:00", "latitude": 31.546225, "longitude": 134.911026, "tags": [ "elit", "cillum", "magna", "mollit", "enim", "do", "adipisicing" ], "friends": [ { "id": 0, "name": "Emilia Santos" }, { "id": 1, "name": "Sears Frank" }, { "id": 2, "name": "Ester Bird" } ], "greeting": "Hello, Aida Knapp! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2202950b98622f8d63", "index": 1542, "guid": "db11ab75-d03c-4e02-8de8-efe3a9f29540", "isActive": false, "balance": "$2,210.67", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Mara Bryan", "gender": "female", "company": "QUARX", "email": "marabryan@quarx.com", "phone": "+1 (993) 451-3540", "address": "319 Greene Avenue, Orick, Arkansas, 9545", "about": "Ad proident cupidatat eu aute aliqua nisi. Occaecat incididunt amet dolor nostrud reprehenderit fugiat est enim aute deserunt id adipisicing ipsum proident. Laborum officia excepteur sunt proident do culpa eu pariatur quis. Eu esse tempor nostrud nulla sunt voluptate ea minim dolore veniam consectetur quis. Labore aliqua aute non incididunt elit qui irure consequat aliquip voluptate pariatur ipsum tempor consectetur. Laboris voluptate ad cupidatat aute in quis adipisicing. Qui veniam aliquip amet nulla ea occaecat id sunt tempor consequat est.\r\n", "registered": "2014-01-16T20:14:36-13:00", "latitude": 44.570547, "longitude": 176.860927, "tags": [ "nostrud", "laborum", "veniam", "enim", "reprehenderit", "irure", "adipisicing" ], "friends": [ { "id": 0, "name": "Tamika Joyce" }, { "id": 1, "name": "Roslyn Wilcox" }, { "id": 2, "name": "Francine Dawson" } ], "greeting": "Hello, Mara Bryan! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea224fa1bfd00453de18", "index": 1543, "guid": "ff17424c-9368-4c32-88f5-62a0be3a3c62", "isActive": true, "balance": "$1,198.77", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Stanton Glover", "gender": "male", "company": "ZOXY", "email": "stantonglover@zoxy.com", "phone": "+1 (976) 518-2158", "address": "420 Minna Street, Gracey, Iowa, 6589", "about": "Ipsum velit Lorem ea voluptate nulla voluptate labore voluptate nisi eiusmod. Do laboris commodo velit et aliqua mollit elit ad et proident eiusmod exercitation cupidatat. Dolor ex amet enim cillum fugiat commodo Lorem reprehenderit voluptate ea aute. Eiusmod minim culpa commodo nostrud dolore in. Nisi ad aliquip commodo ex cillum laborum consequat quis eiusmod. Esse amet nulla exercitation voluptate tempor sint exercitation veniam do minim ipsum qui commodo ullamco. Esse velit eu Lorem ipsum.\r\n", "registered": "2014-03-07T10:02:14-13:00", "latitude": -44.838241, "longitude": -3.442379, "tags": [ "occaecat", "cupidatat", "enim", "cillum", "non", "ipsum", "et" ], "friends": [ { "id": 0, "name": "Lang Mcknight" }, { "id": 1, "name": "Duran Harris" }, { "id": 2, "name": "Jerri Price" } ], "greeting": "Hello, Stanton Glover! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22d53858955dfb3601", "index": 1544, "guid": "fe97cf55-baf5-4392-a6b3-3b357c8389b8", "isActive": true, "balance": "$1,203.93", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Amber Mckee", "gender": "female", "company": "RECRISYS", "email": "ambermckee@recrisys.com", "phone": "+1 (937) 563-2909", "address": "744 Kathleen Court, Defiance, Nebraska, 1935", "about": "Sunt culpa quis ipsum tempor esse ut do nulla. Pariatur aliqua mollit amet est exercitation et eiusmod laboris in ut sit nostrud Lorem. Aliquip proident incididunt duis non sint officia dolor.\r\n", "registered": "2014-08-17T03:08:45-12:00", "latitude": 10.180752, "longitude": -158.164759, "tags": [ "cupidatat", "adipisicing", "qui", "dolore", "dolore", "officia", "sit" ], "friends": [ { "id": 0, "name": "Carolyn Mcguire" }, { "id": 1, "name": "Hunter Gray" }, { "id": 2, "name": "Guerrero Sheppard" } ], "greeting": "Hello, Amber Mckee! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2262254131c7180539", "index": 1545, "guid": "e32fc3e3-59b6-49f5-ba74-7d2dabd73c38", "isActive": false, "balance": "$3,299.64", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Billie Kaufman", "gender": "female", "company": "MARTGO", "email": "billiekaufman@martgo.com", "phone": "+1 (945) 548-3980", "address": "393 Freeman Street, Maxville, District Of Columbia, 2294", "about": "Sunt id esse commodo aliquip dolor consectetur magna non. Proident amet Lorem est aliqua officia et occaecat tempor ullamco aliquip dolore. Aute exercitation voluptate et cupidatat anim. Officia enim amet aliquip ullamco eiusmod et et culpa eu adipisicing. Eu est proident laborum ullamco ex commodo elit commodo laborum amet.\r\n", "registered": "2014-06-17T18:10:46-12:00", "latitude": -42.804515, "longitude": -105.714827, "tags": [ "laborum", "culpa", "et", "et", "nostrud", "qui", "ex" ], "friends": [ { "id": 0, "name": "Amelia Chavez" }, { "id": 1, "name": "Janine Nichols" }, { "id": 2, "name": "Caroline Mathews" } ], "greeting": "Hello, Billie Kaufman! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2243eddac41a662ecc", "index": 1546, "guid": "eaf7d86f-894c-4b8e-96d6-3ba4d0d494dd", "isActive": true, "balance": "$3,707.26", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Minerva Young", "gender": "female", "company": "ZIDANT", "email": "minervayoung@zidant.com", "phone": "+1 (908) 468-2613", "address": "716 Erasmus Street, Diaperville, New Jersey, 9978", "about": "Proident ad voluptate voluptate velit duis ad tempor ex. Officia aliqua deserunt ea do elit non dolor eiusmod id duis consectetur. Commodo ex officia amet deserunt aliquip incididunt ipsum esse eiusmod Lorem consequat occaecat commodo.\r\n", "registered": "2014-09-13T03:26:19-12:00", "latitude": -30.837074, "longitude": -131.912326, "tags": [ "tempor", "non", "Lorem", "veniam", "ipsum", "aliquip", "id" ], "friends": [ { "id": 0, "name": "Larsen Santana" }, { "id": 1, "name": "Francesca Mcneil" }, { "id": 2, "name": "Robbins Lang" } ], "greeting": "Hello, Minerva Young! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22001b4e1ef27c2df0", "index": 1547, "guid": "d4af3c42-a728-4164-9279-35a30ce649d7", "isActive": true, "balance": "$1,290.52", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Bray Obrien", "gender": "male", "company": "DIGINETIC", "email": "brayobrien@diginetic.com", "phone": "+1 (892) 528-3289", "address": "935 High Street, Bowden, Palau, 9575", "about": "Dolor occaecat minim aliqua qui irure cillum officia. Amet mollit culpa enim consectetur deserunt mollit aute veniam Lorem. Incididunt nostrud consequat commodo ipsum est ullamco. Culpa duis mollit proident duis fugiat eu adipisicing ullamco tempor incididunt commodo exercitation dolore irure.\r\n", "registered": "2014-07-05T13:49:28-12:00", "latitude": -71.15657, "longitude": 153.515558, "tags": [ "ipsum", "sit", "aliquip", "sunt", "laboris", "esse", "esse" ], "friends": [ { "id": 0, "name": "Vincent Todd" }, { "id": 1, "name": "Mariana Holcomb" }, { "id": 2, "name": "Mitzi Bolton" } ], "greeting": "Hello, Bray Obrien! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea225b469739720b4ecc", "index": 1548, "guid": "1f5be723-5ec1-4069-ba52-0753648f8678", "isActive": true, "balance": "$1,793.94", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Maggie Wise", "gender": "female", "company": "ZOLARITY", "email": "maggiewise@zolarity.com", "phone": "+1 (918) 491-2769", "address": "348 Norfolk Street, Klondike, Puerto Rico, 7731", "about": "Quis deserunt quis duis ex culpa. Quis et elit officia aliquip in pariatur sit aliqua incididunt officia. Laboris aliqua amet et consectetur sit velit nostrud.\r\n", "registered": "2014-04-12T22:22:08-12:00", "latitude": -8.221068, "longitude": 111.025545, "tags": [ "ut", "fugiat", "elit", "cupidatat", "culpa", "dolor", "officia" ], "friends": [ { "id": 0, "name": "Hubbard Humphrey" }, { "id": 1, "name": "Elena Mclean" }, { "id": 2, "name": "Ann Calhoun" } ], "greeting": "Hello, Maggie Wise! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22cd9988952e7731e6", "index": 1549, "guid": "3047d330-c374-467d-b71c-ea588653fb5b", "isActive": true, "balance": "$2,157.63", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Inez Carroll", "gender": "female", "company": "ETERNIS", "email": "inezcarroll@eternis.com", "phone": "+1 (820) 474-3198", "address": "487 Gardner Avenue, Bladensburg, California, 9228", "about": "Adipisicing ut cillum qui est consequat et est ex enim. Irure proident irure in non ullamco dolor exercitation est qui nulla. Sunt irure consectetur eiusmod reprehenderit cupidatat nulla exercitation consequat in ex cupidatat. Deserunt occaecat ad esse aliqua occaecat culpa ea. Ea consectetur ipsum cillum labore labore sit. Et non do laborum qui. Ipsum laboris est duis fugiat laborum nisi labore cillum ipsum sunt sint quis esse commodo.\r\n", "registered": "2014-08-01T21:58:08-12:00", "latitude": -72.668832, "longitude": 36.719915, "tags": [ "culpa", "dolore", "culpa", "ex", "velit", "consectetur", "ex" ], "friends": [ { "id": 0, "name": "Lynda Little" }, { "id": 1, "name": "Ratliff Adkins" }, { "id": 2, "name": "Lee Alvarado" } ], "greeting": "Hello, Inez Carroll! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22a3040f1591c33e96", "index": 1550, "guid": "c45aff53-0964-4196-80bb-77347a33aab3", "isActive": false, "balance": "$2,218.60", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Hendrix Wiggins", "gender": "male", "company": "AQUAFIRE", "email": "hendrixwiggins@aquafire.com", "phone": "+1 (853) 467-2340", "address": "894 Laurel Avenue, Tuttle, Vermont, 6544", "about": "Irure enim cupidatat deserunt qui laborum voluptate anim adipisicing aliquip in voluptate. Consectetur ullamco aliqua sint ut amet. Pariatur consequat ullamco nostrud esse magna.\r\n", "registered": "2014-02-01T11:39:13-13:00", "latitude": 4.390401, "longitude": -146.317072, "tags": [ "Lorem", "fugiat", "esse", "aliquip", "et", "fugiat", "quis" ], "friends": [ { "id": 0, "name": "Jennifer Oneal" }, { "id": 1, "name": "Merle Lopez" }, { "id": 2, "name": "Kirsten Osborn" } ], "greeting": "Hello, Hendrix Wiggins! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2205bdf428cf3dd073", "index": 1551, "guid": "cc9fb2a1-ad8b-42ce-bfd7-8f44fe1a0de9", "isActive": true, "balance": "$3,959.32", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Elvia Duran", "gender": "female", "company": "ZILLACTIC", "email": "elviaduran@zillactic.com", "phone": "+1 (823) 553-2009", "address": "847 Pulaski Street, Greensburg, Indiana, 3712", "about": "Occaecat sint duis culpa ullamco eu elit pariatur consequat duis nisi adipisicing proident consequat duis. Ullamco irure id magna eu incididunt exercitation officia ullamco aliquip aliquip esse Lorem. Ad ipsum magna fugiat officia nulla duis et eiusmod nisi enim laboris. Pariatur consequat Lorem qui qui ullamco. Ea eiusmod aliqua elit culpa enim aute sunt officia. Exercitation mollit exercitation deserunt magna. Officia cillum voluptate sint mollit deserunt sunt minim commodo qui.\r\n", "registered": "2014-06-14T12:02:20-12:00", "latitude": 12.563471, "longitude": -175.329992, "tags": [ "consectetur", "commodo", "excepteur", "elit", "elit", "ad", "nostrud" ], "friends": [ { "id": 0, "name": "Bolton Russo" }, { "id": 1, "name": "Emerson Moran" }, { "id": 2, "name": "Anita Rios" } ], "greeting": "Hello, Elvia Duran! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2289c061a1331d9c61", "index": 1552, "guid": "a5ff0fc4-ba7a-47df-ab09-cedb00077841", "isActive": false, "balance": "$2,925.67", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Brandy Rivas", "gender": "female", "company": "SNACKTION", "email": "brandyrivas@snacktion.com", "phone": "+1 (865) 562-2545", "address": "723 Bergen Avenue, Bourg, Illinois, 4061", "about": "Irure exercitation in ea irure est est aute nostrud non ut laborum cupidatat. Quis exercitation irure non elit ullamco occaecat nisi. Voluptate elit do proident laboris magna. Qui est adipisicing dolor et officia. Aliqua esse tempor labore consectetur. Amet nostrud labore fugiat velit non culpa. Id consequat anim voluptate minim officia aliquip.\r\n", "registered": "2014-08-24T11:30:29-12:00", "latitude": -88.226864, "longitude": -148.121705, "tags": [ "adipisicing", "ut", "laboris", "reprehenderit", "deserunt", "Lorem", "veniam" ], "friends": [ { "id": 0, "name": "Millie Leblanc" }, { "id": 1, "name": "Jasmine Navarro" }, { "id": 2, "name": "Key Pratt" } ], "greeting": "Hello, Brandy Rivas! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea226742ea96ff7fecc7", "index": 1553, "guid": "91d80989-42a2-4144-b1af-8467cc4df356", "isActive": false, "balance": "$3,734.31", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Richmond Mercer", "gender": "male", "company": "XYLAR", "email": "richmondmercer@xylar.com", "phone": "+1 (902) 509-3499", "address": "315 College Place, Wadsworth, South Carolina, 6982", "about": "Aute aliqua tempor nisi cupidatat irure sint nulla aute anim velit sit officia dolore. Do proident magna labore excepteur cillum est eu anim esse pariatur in esse. Officia excepteur dolor reprehenderit aliquip deserunt aliqua. Veniam ad sit adipisicing aliqua irure dolor do ullamco excepteur voluptate ad anim. Quis consequat velit voluptate ullamco minim. Cillum nulla consectetur dolore aute sunt incididunt commodo eu occaecat in aliquip.\r\n", "registered": "2014-07-23T19:49:33-12:00", "latitude": 81.139014, "longitude": -18.230546, "tags": [ "enim", "esse", "voluptate", "velit", "sit", "proident", "ea" ], "friends": [ { "id": 0, "name": "Estelle Chan" }, { "id": 1, "name": "Tania Carter" }, { "id": 2, "name": "Walters Cantu" } ], "greeting": "Hello, Richmond Mercer! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2285f689d1f287c190", "index": 1554, "guid": "f87e3020-414a-4ca9-914f-1fc305c45fac", "isActive": false, "balance": "$3,939.74", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Bean Alvarez", "gender": "male", "company": "JUNIPOOR", "email": "beanalvarez@junipoor.com", "phone": "+1 (875) 432-3897", "address": "112 Franklin Avenue, Staples, American Samoa, 7846", "about": "In magna commodo sint aute exercitation laboris ex non. Ullamco enim aliquip aliqua consectetur pariatur commodo consequat Lorem proident eu. Excepteur laborum ullamco aliquip consequat ipsum et sunt reprehenderit aliqua exercitation ea irure elit. Adipisicing ea excepteur nisi dolore incididunt dolor mollit. Nisi ipsum eiusmod tempor minim id quis laborum irure. Id quis incididunt cillum deserunt. Id Lorem aute sint exercitation elit irure exercitation aliqua laborum nisi minim.\r\n", "registered": "2014-09-08T20:13:45-12:00", "latitude": 25.088301, "longitude": 14.527499, "tags": [ "sunt", "enim", "aliquip", "veniam", "commodo", "ex", "occaecat" ], "friends": [ { "id": 0, "name": "Antoinette Benjamin" }, { "id": 1, "name": "Iva Strickland" }, { "id": 2, "name": "Corrine Schroeder" } ], "greeting": "Hello, Bean Alvarez! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22244c05045aba1228", "index": 1555, "guid": "61081980-734b-4758-a9cb-7383009be03d", "isActive": true, "balance": "$1,501.93", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Grimes Barker", "gender": "male", "company": "VANTAGE", "email": "grimesbarker@vantage.com", "phone": "+1 (895) 403-2117", "address": "987 Hamilton Walk, Emory, Delaware, 8459", "about": "Duis duis qui tempor excepteur ea ex. Exercitation eiusmod Lorem nostrud duis aliqua exercitation quis Lorem magna nostrud esse non. Dolore laboris adipisicing Lorem aute dolore nostrud do labore magna labore eu. Nostrud nulla culpa elit pariatur eu id quis Lorem nisi. Sunt nostrud irure nisi pariatur et officia velit occaecat exercitation exercitation consectetur ea deserunt. Amet quis incididunt elit ipsum ad. Nostrud eiusmod sit dolor incididunt.\r\n", "registered": "2014-01-06T17:01:12-13:00", "latitude": 41.481563, "longitude": -70.629226, "tags": [ "laboris", "enim", "sit", "id", "anim", "nulla", "sit" ], "friends": [ { "id": 0, "name": "Courtney Schultz" }, { "id": 1, "name": "Annmarie Torres" }, { "id": 2, "name": "Ward Boyd" } ], "greeting": "Hello, Grimes Barker! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2261fc80e53c8a6cde", "index": 1556, "guid": "d04e53ea-e568-415b-979b-0a54e40b2513", "isActive": false, "balance": "$2,240.47", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Michael Franco", "gender": "male", "company": "APPLIDEC", "email": "michaelfranco@applidec.com", "phone": "+1 (950) 518-2115", "address": "397 Woodrow Court, Blanford, Pennsylvania, 9658", "about": "Consequat est ipsum dolor eu nostrud enim laborum. Sint duis proident deserunt tempor cupidatat sunt duis tempor ex consequat ea irure id. Commodo ex et ad non ullamco est. Do et do sit quis aliquip ea anim cupidatat culpa in voluptate aliquip et. Culpa adipisicing sit labore eiusmod esse aliqua amet dolor cillum. Fugiat duis labore nulla tempor labore.\r\n", "registered": "2014-06-20T03:49:25-12:00", "latitude": 43.281561, "longitude": -41.444833, "tags": [ "veniam", "id", "commodo", "irure", "aute", "eu", "in" ], "friends": [ { "id": 0, "name": "Wilder Houston" }, { "id": 1, "name": "Claire Ratliff" }, { "id": 2, "name": "Wolf Benton" } ], "greeting": "Hello, Michael Franco! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2291c1206d41c295a2", "index": 1557, "guid": "6bc2b747-01f4-4691-b942-511465d411dd", "isActive": true, "balance": "$2,797.70", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Charmaine Roman", "gender": "female", "company": "AUSTEX", "email": "charmaineroman@austex.com", "phone": "+1 (866) 425-2599", "address": "118 School Lane, Bartonsville, Georgia, 3098", "about": "Fugiat adipisicing dolor sit excepteur magna consectetur nulla. Aliquip quis elit veniam commodo nisi. Labore culpa proident cillum laborum aute est ipsum cillum nulla eu. Elit reprehenderit dolore sint cupidatat mollit cillum amet consequat esse quis.\r\n", "registered": "2014-03-29T19:27:52-13:00", "latitude": -39.732785, "longitude": 125.094097, "tags": [ "velit", "ad", "nulla", "reprehenderit", "occaecat", "in", "ut" ], "friends": [ { "id": 0, "name": "Fuller Schneider" }, { "id": 1, "name": "Crane Brady" }, { "id": 2, "name": "Robertson Shannon" } ], "greeting": "Hello, Charmaine Roman! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2235b4b8bb5db56760", "index": 1558, "guid": "a0833e14-13ef-497b-817e-257a3123501d", "isActive": true, "balance": "$3,923.27", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Jacquelyn Coleman", "gender": "female", "company": "HANDSHAKE", "email": "jacquelyncoleman@handshake.com", "phone": "+1 (838) 404-3121", "address": "934 Sandford Street, Topaz, North Dakota, 5172", "about": "Ullamco reprehenderit labore in nostrud cupidatat sit minim minim eiusmod nostrud sit. Esse aliqua eu sint incididunt nulla anim sunt proident esse. Aliquip sit occaecat anim non nostrud sint dolore consectetur consectetur sint. Irure ipsum fugiat occaecat ipsum. Pariatur culpa Lorem id proident fugiat dolore quis ut in ea aliqua. Duis ad ad officia nisi cupidatat voluptate nisi.\r\n", "registered": "2014-01-31T04:42:35-13:00", "latitude": 67.025175, "longitude": 61.259414, "tags": [ "tempor", "consectetur", "eu", "aliquip", "occaecat", "quis", "duis" ], "friends": [ { "id": 0, "name": "Barnett Ochoa" }, { "id": 1, "name": "Mcintyre Mcclain" }, { "id": 2, "name": "Michele Lowe" } ], "greeting": "Hello, Jacquelyn Coleman! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2223984b2b47dd8246", "index": 1559, "guid": "39762e1c-78e7-4da2-87a3-67574663f5b7", "isActive": false, "balance": "$3,098.68", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Myers Hardin", "gender": "male", "company": "FIBEROX", "email": "myershardin@fiberox.com", "phone": "+1 (831) 434-3190", "address": "554 Scholes Street, Coldiron, Louisiana, 9198", "about": "Ea aliquip quis adipisicing officia magna amet non. Dolor voluptate laboris quis do aliquip. Ea commodo aute nisi nostrud excepteur ut. Nostrud dolore proident velit eiusmod anim ullamco do est aliquip id. Anim ea mollit est consectetur. Exercitation in voluptate qui officia elit fugiat ad.\r\n", "registered": "2014-04-13T15:29:52-12:00", "latitude": -30.568083, "longitude": -72.614691, "tags": [ "ipsum", "officia", "commodo", "culpa", "est", "anim", "laboris" ], "friends": [ { "id": 0, "name": "Beverley Watkins" }, { "id": 1, "name": "Josephine Good" }, { "id": 2, "name": "Kenya Cohen" } ], "greeting": "Hello, Myers Hardin! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22da41a9eb06c3b8a0", "index": 1560, "guid": "75b2557c-683f-4018-9bc8-7895226f589f", "isActive": true, "balance": "$3,381.05", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Vance Gamble", "gender": "male", "company": "NORSUP", "email": "vancegamble@norsup.com", "phone": "+1 (934) 596-2880", "address": "182 Campus Place, Kennedyville, Northern Mariana Islands, 3511", "about": "Qui aliquip magna irure magna consequat. Commodo ea occaecat amet eu exercitation laborum sint veniam adipisicing et fugiat velit ullamco. Dolore reprehenderit exercitation cupidatat id. Tempor minim irure esse exercitation et dolore enim ipsum velit eiusmod labore in tempor cillum. Ex ullamco ea veniam et proident eu excepteur reprehenderit.\r\n", "registered": "2014-04-03T10:47:07-13:00", "latitude": -44.166785, "longitude": 119.033572, "tags": [ "eu", "laborum", "laboris", "minim", "dolore", "ullamco", "aliqua" ], "friends": [ { "id": 0, "name": "Head Haynes" }, { "id": 1, "name": "Imelda Gibson" }, { "id": 2, "name": "Althea Roth" } ], "greeting": "Hello, Vance Gamble! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea229fbaa6cb4010614c", "index": 1561, "guid": "e4eff2b5-b3b0-408c-8b09-5afdc060d19d", "isActive": false, "balance": "$2,446.28", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Rosetta Camacho", "gender": "female", "company": "EQUITAX", "email": "rosettacamacho@equitax.com", "phone": "+1 (815) 407-2048", "address": "744 Humboldt Street, Dorneyville, Colorado, 5709", "about": "Quis sint laborum labore quis occaecat elit eu cillum irure fugiat ipsum amet proident. Ullamco excepteur proident ut aute fugiat commodo tempor non non ea amet minim qui. Aliqua anim duis mollit elit. Ipsum id officia mollit tempor sit. Ea ea velit elit incididunt velit incididunt aliquip laboris do ex commodo. Aliqua aliqua enim cupidatat ullamco adipisicing cupidatat id veniam elit tempor. Veniam amet id est ad sint occaecat quis nostrud labore incididunt excepteur incididunt do nisi.\r\n", "registered": "2014-05-16T17:52:56-12:00", "latitude": 61.123019, "longitude": 31.865419, "tags": [ "tempor", "voluptate", "et", "deserunt", "exercitation", "quis", "sunt" ], "friends": [ { "id": 0, "name": "Patty Branch" }, { "id": 1, "name": "Gail Fuller" }, { "id": 2, "name": "Gould Holden" } ], "greeting": "Hello, Rosetta Camacho! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2209c46f08e2f6b4c7", "index": 1562, "guid": "474d2ae3-498d-4feb-a418-ff15509595c3", "isActive": true, "balance": "$1,748.96", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Johanna Butler", "gender": "female", "company": "DIGIAL", "email": "johannabutler@digial.com", "phone": "+1 (895) 472-3917", "address": "228 Emmons Avenue, Cuylerville, Idaho, 9916", "about": "Enim Lorem minim magna ipsum non ea cupidatat commodo dolore aute adipisicing ad labore reprehenderit. Cillum officia amet dolore dolore velit duis est voluptate minim dolore cillum. Officia sit amet id nulla sunt culpa. Ea excepteur officia magna nulla minim exercitation est quis ex elit aliqua veniam reprehenderit. Labore minim officia tempor sint aliqua anim nostrud consectetur amet et laboris sunt non ut. Labore ullamco ea id occaecat exercitation excepteur Lorem commodo adipisicing minim.\r\n", "registered": "2014-07-09T10:06:03-12:00", "latitude": -7.552186, "longitude": 155.966183, "tags": [ "voluptate", "consequat", "esse", "eiusmod", "esse", "amet", "commodo" ], "friends": [ { "id": 0, "name": "Delia Horton" }, { "id": 1, "name": "Harding Molina" }, { "id": 2, "name": "Catherine Le" } ], "greeting": "Hello, Johanna Butler! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22c21cf0cafe6cd9bc", "index": 1563, "guid": "adb476e0-5536-4a8c-b441-42bcf010745d", "isActive": true, "balance": "$2,685.39", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Celeste Summers", "gender": "female", "company": "GORGANIC", "email": "celestesummers@gorganic.com", "phone": "+1 (962) 576-2639", "address": "289 Withers Street, Brandywine, Marshall Islands, 4509", "about": "Et mollit sint id non velit dolor quis ipsum sint incididunt minim minim magna incididunt. Dolor incididunt dolor ipsum est enim nisi dolore nostrud mollit id ut. Sunt ad ut cupidatat esse mollit consequat ad proident mollit. Mollit ullamco magna esse sunt id. Pariatur anim aliqua cupidatat eu sint nisi.\r\n", "registered": "2014-06-03T08:01:50-12:00", "latitude": 27.888266, "longitude": 21.433125, "tags": [ "est", "id", "aliqua", "tempor", "exercitation", "et", "enim" ], "friends": [ { "id": 0, "name": "Norris Gardner" }, { "id": 1, "name": "Evans Wallace" }, { "id": 2, "name": "Ines Johnson" } ], "greeting": "Hello, Celeste Summers! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2229386c8699f7dab4", "index": 1564, "guid": "c88b1489-d932-45fc-995a-b033bc73c695", "isActive": false, "balance": "$2,363.39", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "John Conner", "gender": "female", "company": "OULU", "email": "johnconner@oulu.com", "phone": "+1 (846) 414-2684", "address": "637 Berriman Street, Osmond, New York, 9824", "about": "Excepteur sint culpa voluptate adipisicing cillum eiusmod. Elit velit ad dolore officia sunt et fugiat deserunt. Quis aliquip aliquip in excepteur enim aliquip consequat officia enim minim aute laborum. Occaecat qui incididunt enim qui aliquip irure duis fugiat nostrud aliqua aliqua. Non aliquip pariatur quis occaecat commodo pariatur nisi duis consequat. Dolor ea culpa laboris adipisicing consectetur ullamco laborum aliqua incididunt ut.\r\n", "registered": "2014-08-10T14:14:56-12:00", "latitude": -39.154005, "longitude": 115.113752, "tags": [ "elit", "fugiat", "qui", "occaecat", "cupidatat", "excepteur", "sit" ], "friends": [ { "id": 0, "name": "Krystal Finch" }, { "id": 1, "name": "Nell Haney" }, { "id": 2, "name": "Armstrong Martin" } ], "greeting": "Hello, John Conner! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22e0149f5366231309", "index": 1565, "guid": "139aea23-97d0-4117-b3d1-ac3efd6eff13", "isActive": true, "balance": "$2,233.61", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Lynch Crosby", "gender": "male", "company": "COMDOM", "email": "lynchcrosby@comdom.com", "phone": "+1 (896) 504-3347", "address": "486 Vernon Avenue, Bascom, Guam, 4786", "about": "Labore sit nulla consectetur Lorem anim et commodo elit nulla voluptate aliqua ut. Magna nisi veniam adipisicing minim fugiat eiusmod. In mollit occaecat fugiat dolore voluptate. Dolore mollit enim ex dolore magna. Irure do reprehenderit voluptate commodo culpa cillum ex nulla aliqua velit laborum. Elit reprehenderit adipisicing sint veniam aliquip elit commodo culpa qui Lorem occaecat est laborum dolore.\r\n", "registered": "2014-01-08T22:42:57-13:00", "latitude": 12.662996, "longitude": 139.067466, "tags": [ "esse", "exercitation", "fugiat", "magna", "veniam", "et", "incididunt" ], "friends": [ { "id": 0, "name": "Erna Lloyd" }, { "id": 1, "name": "Maddox Lester" }, { "id": 2, "name": "Burt Whitfield" } ], "greeting": "Hello, Lynch Crosby! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22fa735385e94deb79", "index": 1566, "guid": "97477d7f-041f-443b-916e-ba8229f07811", "isActive": true, "balance": "$3,007.23", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Leigh Evans", "gender": "female", "company": "FLOTONIC", "email": "leighevans@flotonic.com", "phone": "+1 (839) 593-3974", "address": "531 India Street, Lowgap, Virgin Islands, 3693", "about": "Enim do sit ea dolor id id est tempor ex duis labore enim. Ullamco sit cillum adipisicing anim ipsum sint. Culpa proident quis ullamco proident magna culpa et occaecat esse deserunt consequat do incididunt. Ut quis cillum eiusmod irure velit minim elit. Quis excepteur deserunt nostrud nulla enim irure cupidatat aute.\r\n", "registered": "2014-01-18T05:58:36-13:00", "latitude": -63.950129, "longitude": -41.931298, "tags": [ "voluptate", "qui", "cupidatat", "anim", "sint", "tempor", "quis" ], "friends": [ { "id": 0, "name": "Callie Blackburn" }, { "id": 1, "name": "Goodman Walter" }, { "id": 2, "name": "Meyer Underwood" } ], "greeting": "Hello, Leigh Evans! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22d4d1d49e4a7c69f4", "index": 1567, "guid": "5d510cc9-cbb2-4f7b-a952-23043abf9d9a", "isActive": true, "balance": "$1,200.15", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Margarita William", "gender": "female", "company": "KYAGURU", "email": "margaritawilliam@kyaguru.com", "phone": "+1 (900) 581-2140", "address": "944 River Street, Ezel, Massachusetts, 2807", "about": "Anim exercitation irure fugiat laborum. Ad esse qui ut dolore irure minim veniam esse exercitation sunt nisi culpa deserunt duis. Pariatur non exercitation do mollit officia tempor commodo. Duis labore qui incididunt quis in irure anim aute. Voluptate duis culpa quis proident ut labore. Tempor in cupidatat nostrud ullamco fugiat culpa pariatur ut nisi nisi fugiat.\r\n", "registered": "2014-09-16T23:29:44-12:00", "latitude": -55.932384, "longitude": 8.667703, "tags": [ "dolor", "deserunt", "duis", "aliquip", "voluptate", "duis", "adipisicing" ], "friends": [ { "id": 0, "name": "Elise Mccarty" }, { "id": 1, "name": "Mccoy Mullins" }, { "id": 2, "name": "Therese Sweet" } ], "greeting": "Hello, Margarita William! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea229b5cb399398f2ffd", "index": 1568, "guid": "be9f547f-d15b-4906-843d-e765d7d51853", "isActive": true, "balance": "$2,604.88", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Sophie Watts", "gender": "female", "company": "XOGGLE", "email": "sophiewatts@xoggle.com", "phone": "+1 (991) 550-2978", "address": "164 Celeste Court, Bakersville, Utah, 7370", "about": "Exercitation officia consequat aliquip anim irure officia. Nulla eu eiusmod id deserunt adipisicing ullamco quis. Minim voluptate laborum reprehenderit veniam. Deserunt tempor dolore officia labore ea magna. Eiusmod consectetur labore fugiat labore eiusmod fugiat sunt veniam. Magna id ipsum qui deserunt eu consectetur culpa officia sint.\r\n", "registered": "2014-02-27T08:30:07-13:00", "latitude": 46.94413, "longitude": 157.914555, "tags": [ "aliquip", "dolor", "culpa", "sit", "nulla", "exercitation", "elit" ], "friends": [ { "id": 0, "name": "Maryanne Moreno" }, { "id": 1, "name": "Rivera Mcmillan" }, { "id": 2, "name": "Hollie Greer" } ], "greeting": "Hello, Sophie Watts! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22dde409ce9438a27e", "index": 1569, "guid": "14dea4cd-0ece-479a-8015-a844ffd27299", "isActive": false, "balance": "$3,465.18", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Marjorie Barron", "gender": "female", "company": "NORALI", "email": "marjoriebarron@norali.com", "phone": "+1 (880) 580-2237", "address": "359 Herbert Street, Starks, Montana, 9970", "about": "Cupidatat deserunt duis reprehenderit Lorem mollit nulla ad non sit aute ut. Tempor anim enim reprehenderit ipsum pariatur dolore nostrud occaecat pariatur nisi aliquip elit. Anim eu pariatur deserunt exercitation. Laborum exercitation incididunt ipsum id est qui dolore.\r\n", "registered": "2014-01-13T07:39:03-13:00", "latitude": -64.43188, "longitude": 30.301982, "tags": [ "incididunt", "proident", "eu", "in", "aliqua", "deserunt", "incididunt" ], "friends": [ { "id": 0, "name": "Pearl Flynn" }, { "id": 1, "name": "Bullock Rasmussen" }, { "id": 2, "name": "Charity Carson" } ], "greeting": "Hello, Marjorie Barron! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea221a321f686cc2fa2c", "index": 1570, "guid": "bcc31604-99be-4ad7-a9d8-0da791b94d22", "isActive": true, "balance": "$1,322.45", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Mamie Michael", "gender": "female", "company": "TUBALUM", "email": "mamiemichael@tubalum.com", "phone": "+1 (823) 580-2556", "address": "626 Jodie Court, Freelandville, Wisconsin, 8211", "about": "Magna do officia eiusmod veniam laborum. Consequat laborum magna incididunt exercitation. Veniam do dolore est nulla.\r\n", "registered": "2014-01-08T14:43:06-13:00", "latitude": 10.38236, "longitude": -13.625584, "tags": [ "sunt", "deserunt", "occaecat", "velit", "magna", "consectetur", "anim" ], "friends": [ { "id": 0, "name": "Black Bond" }, { "id": 1, "name": "Swanson Banks" }, { "id": 2, "name": "Bettie Conley" } ], "greeting": "Hello, Mamie Michael! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2209506f80d136081e", "index": 1571, "guid": "3793e0c8-0dba-4e40-81d5-f6fa64302daf", "isActive": true, "balance": "$3,681.09", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Hendricks Riddle", "gender": "male", "company": "COMTEST", "email": "hendricksriddle@comtest.com", "phone": "+1 (802) 435-3456", "address": "995 Oxford Walk, Rowe, Maine, 3132", "about": "Ex mollit deserunt labore eu consequat exercitation incididunt cupidatat quis esse consequat dolore tempor exercitation. Qui eu fugiat qui dolore. Sunt aliqua sint cillum cillum incididunt incididunt laboris eu consectetur anim labore laborum. Ea id nostrud et laborum elit. Cillum commodo et duis aute fugiat cupidatat consectetur. Ut veniam qui dolor dolor ipsum.\r\n", "registered": "2014-05-06T10:21:38-12:00", "latitude": -5.448385, "longitude": -19.745354, "tags": [ "dolore", "pariatur", "adipisicing", "cillum", "cillum", "minim", "eu" ], "friends": [ { "id": 0, "name": "Dixon Rosa" }, { "id": 1, "name": "Sheryl Palmer" }, { "id": 2, "name": "Ochoa Mckenzie" } ], "greeting": "Hello, Hendricks Riddle! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea220b84ede42a704b93", "index": 1572, "guid": "be4348a9-dc6c-4ac3-a12b-e8b865bdcc1f", "isActive": false, "balance": "$1,580.42", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Rosanne Koch", "gender": "female", "company": "ORBAXTER", "email": "rosannekoch@orbaxter.com", "phone": "+1 (894) 440-2777", "address": "314 Sedgwick Place, Nanafalia, Virginia, 1443", "about": "Est ea excepteur commodo velit tempor consequat veniam laborum ipsum ad occaecat. Qui sunt nisi amet ipsum sit id in sit. Pariatur cillum voluptate quis eu ullamco. Eiusmod non ipsum labore id pariatur eu qui fugiat.\r\n", "registered": "2014-09-17T21:38:47-12:00", "latitude": 46.731452, "longitude": 65.453031, "tags": [ "sunt", "dolor", "nulla", "laboris", "et", "ea", "fugiat" ], "friends": [ { "id": 0, "name": "Maude Goodman" }, { "id": 1, "name": "Abigail Ray" }, { "id": 2, "name": "Latonya Bradshaw" } ], "greeting": "Hello, Rosanne Koch! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea223bc7e961fe98da13", "index": 1573, "guid": "07aae713-0300-4d67-80ab-6c8339cb02be", "isActive": false, "balance": "$2,098.28", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Ivy King", "gender": "female", "company": "QUINEX", "email": "ivyking@quinex.com", "phone": "+1 (841) 473-2566", "address": "416 Bogart Street, Gasquet, Kentucky, 9505", "about": "Sit nostrud esse culpa in sunt culpa qui. Qui ullamco consequat ipsum veniam pariatur. Occaecat cupidatat duis cupidatat et sint irure. Cupidatat aliqua cupidatat officia magna commodo reprehenderit reprehenderit.\r\n", "registered": "2014-08-12T23:32:58-12:00", "latitude": -2.779684, "longitude": -76.848438, "tags": [ "sunt", "consequat", "ullamco", "enim", "velit", "minim", "nostrud" ], "friends": [ { "id": 0, "name": "Elliott Bender" }, { "id": 1, "name": "Gonzales Garza" }, { "id": 2, "name": "Roach Nolan" } ], "greeting": "Hello, Ivy King! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea228f2a6e2bbd172e0b", "index": 1574, "guid": "fbd4b6cd-cfcd-4cb9-9d75-677cf816a49d", "isActive": false, "balance": "$1,771.23", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Eula Cote", "gender": "female", "company": "BILLMED", "email": "eulacote@billmed.com", "phone": "+1 (858) 580-3945", "address": "517 Oriental Court, Ruckersville, Connecticut, 6166", "about": "Nisi consectetur eu dolor veniam Lorem quis irure duis ipsum quis culpa magna. Laborum non ut ex in duis id nostrud fugiat nisi eiusmod sunt. Nostrud anim cillum dolor velit enim Lorem. Occaecat sint cillum est id voluptate minim sunt dolore fugiat. Adipisicing est ullamco excepteur Lorem excepteur culpa adipisicing aliquip exercitation labore fugiat labore culpa Lorem. Sint officia aute Lorem irure mollit velit.\r\n", "registered": "2014-05-07T16:06:12-12:00", "latitude": 73.520978, "longitude": -111.650042, "tags": [ "est", "occaecat", "sunt", "quis", "excepteur", "non", "ut" ], "friends": [ { "id": 0, "name": "Medina Delacruz" }, { "id": 1, "name": "Holt Sanders" }, { "id": 2, "name": "Sweeney Ewing" } ], "greeting": "Hello, Eula Cote! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22a9812b59da432b00", "index": 1575, "guid": "af9a09aa-ec14-4b05-aded-44cca4f3a892", "isActive": false, "balance": "$2,731.17", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Barrera Sexton", "gender": "male", "company": "ZILLACOM", "email": "barrerasexton@zillacom.com", "phone": "+1 (883) 466-3514", "address": "381 Remsen Avenue, Dalton, Mississippi, 2895", "about": "Amet eu aute do pariatur eiusmod enim voluptate consectetur qui. Velit id aliqua excepteur eu deserunt. Et velit voluptate eu culpa nostrud reprehenderit. Excepteur in in dolore qui aliquip aliqua dolor adipisicing quis excepteur mollit id reprehenderit. Voluptate excepteur consequat eiusmod reprehenderit magna labore proident nisi tempor. Dolore duis amet commodo ipsum dolore anim proident.\r\n", "registered": "2014-09-04T00:42:08-12:00", "latitude": 39.015181, "longitude": -117.998073, "tags": [ "duis", "pariatur", "do", "nisi", "enim", "eiusmod", "velit" ], "friends": [ { "id": 0, "name": "Carla Salinas" }, { "id": 1, "name": "Cornelia Alexander" }, { "id": 2, "name": "Moon Lane" } ], "greeting": "Hello, Barrera Sexton! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2240e9b7f93fbdbecd", "index": 1576, "guid": "3e94a6c3-c4c3-4fdc-82c9-43724ee73eaa", "isActive": false, "balance": "$3,195.80", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Hays Kline", "gender": "male", "company": "NETPLODE", "email": "hayskline@netplode.com", "phone": "+1 (897) 451-2326", "address": "729 Brown Street, Coultervillle, Washington, 8524", "about": "Aliquip sunt ex non nulla proident proident dolor aute fugiat qui mollit irure aliqua. Reprehenderit irure tempor est veniam aliquip veniam aliquip. Consectetur veniam non incididunt tempor. Do voluptate et et aute mollit labore culpa non mollit quis aute culpa ad. Occaecat ipsum veniam ullamco nulla magna in occaecat. Amet commodo qui esse eiusmod quis in eiusmod exercitation amet. Ut eiusmod proident sint officia ut nostrud aliquip consequat fugiat aliqua nostrud ullamco veniam.\r\n", "registered": "2014-07-31T21:28:23-12:00", "latitude": -78.184123, "longitude": 80.147508, "tags": [ "irure", "anim", "ipsum", "consectetur", "non", "exercitation", "enim" ], "friends": [ { "id": 0, "name": "Noelle Lowery" }, { "id": 1, "name": "Schneider Dodson" }, { "id": 2, "name": "Lilia Russell" } ], "greeting": "Hello, Hays Kline! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2271e8dceb96108fc5", "index": 1577, "guid": "a097f4ec-f59d-4cde-83ff-30e2510548f2", "isActive": false, "balance": "$3,274.42", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Wagner Reese", "gender": "male", "company": "GEOFARM", "email": "wagnerreese@geofarm.com", "phone": "+1 (888) 441-3745", "address": "327 Beayer Place, Hall, Tennessee, 2177", "about": "Proident eu excepteur reprehenderit sunt qui eu magna esse deserunt. Proident commodo non excepteur veniam consequat est cillum ipsum excepteur fugiat ex pariatur pariatur. Aliquip in commodo consequat incididunt culpa proident mollit cupidatat. Consectetur laboris occaecat Lorem adipisicing occaecat ullamco quis.\r\n", "registered": "2014-07-05T19:51:42-12:00", "latitude": -5.585431, "longitude": 24.242437, "tags": [ "amet", "irure", "tempor", "consectetur", "dolor", "nostrud", "cillum" ], "friends": [ { "id": 0, "name": "Leslie Short" }, { "id": 1, "name": "Stark Cameron" }, { "id": 2, "name": "William Lawrence" } ], "greeting": "Hello, Wagner Reese! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22549f71cdcc849032", "index": 1578, "guid": "de404123-769f-40bd-b912-e2acdfbe18e6", "isActive": false, "balance": "$1,593.72", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Spears Small", "gender": "male", "company": "RUBADUB", "email": "spearssmall@rubadub.com", "phone": "+1 (829) 588-2669", "address": "466 Terrace Place, Snelling, Alabama, 2366", "about": "Cillum tempor est anim culpa id laborum. Nulla excepteur excepteur commodo fugiat sit consectetur et. Ullamco qui aute voluptate eiusmod sit qui consectetur.\r\n", "registered": "2014-05-21T02:18:18-12:00", "latitude": 66.376725, "longitude": 173.916105, "tags": [ "ea", "minim", "ea", "velit", "nulla", "nostrud", "aliqua" ], "friends": [ { "id": 0, "name": "Zelma Wilkins" }, { "id": 1, "name": "Vickie Frye" }, { "id": 2, "name": "Julianne Medina" } ], "greeting": "Hello, Spears Small! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2284297247988181d8", "index": 1579, "guid": "dfcbf221-8cf5-4df0-ac02-53b9c7ce1bc4", "isActive": false, "balance": "$2,914.76", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Augusta Terry", "gender": "female", "company": "RETROTEX", "email": "augustaterry@retrotex.com", "phone": "+1 (908) 487-2553", "address": "260 Hyman Court, Tilden, Ohio, 8751", "about": "Ea eiusmod culpa ex Lorem dolore quis minim aute non veniam eu ex. Dolore laborum ullamco consectetur nostrud dolor aliquip velit laborum quis. Anim Lorem ullamco ipsum nisi ut in nostrud ullamco pariatur tempor. Eu ex amet deserunt labore enim duis ea et consequat. In esse ad magna ad eu mollit in laborum velit. Excepteur aliqua in sint nulla.\r\n", "registered": "2014-03-26T13:43:13-13:00", "latitude": -5.292189, "longitude": -73.733933, "tags": [ "veniam", "nulla", "eu", "excepteur", "dolor", "pariatur", "sit" ], "friends": [ { "id": 0, "name": "Campos Mccullough" }, { "id": 1, "name": "Waller Manning" }, { "id": 2, "name": "Chambers Langley" } ], "greeting": "Hello, Augusta Terry! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea227a8f272969b38952", "index": 1580, "guid": "3386d925-7139-4db2-a6f8-a61c5bb20245", "isActive": false, "balance": "$2,827.64", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Angie Jackson", "gender": "female", "company": "OPPORTECH", "email": "angiejackson@opportech.com", "phone": "+1 (916) 489-3538", "address": "845 Diamond Street, Caspar, Hawaii, 8709", "about": "Officia cillum irure voluptate cillum non nisi cupidatat. Aliquip nulla voluptate occaecat quis qui culpa laboris aliqua. Dolor non esse voluptate velit anim.\r\n", "registered": "2014-05-04T23:10:39-12:00", "latitude": 33.611818, "longitude": 35.142406, "tags": [ "elit", "enim", "pariatur", "exercitation", "irure", "veniam", "ad" ], "friends": [ { "id": 0, "name": "Eunice Grant" }, { "id": 1, "name": "Riley Hatfield" }, { "id": 2, "name": "Diann Hodges" } ], "greeting": "Hello, Angie Jackson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea224cbe303f97b11be4", "index": 1581, "guid": "e6be7096-badf-4d6d-8d81-66a7d609332a", "isActive": true, "balance": "$2,237.32", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Clements Trevino", "gender": "male", "company": "LUNCHPAD", "email": "clementstrevino@lunchpad.com", "phone": "+1 (880) 594-2370", "address": "272 Whitney Avenue, Homeworth, New Mexico, 2690", "about": "Voluptate velit commodo pariatur ex consequat reprehenderit voluptate mollit dolore elit. Commodo dolor deserunt nulla mollit reprehenderit officia labore nisi veniam adipisicing veniam non. Sint mollit veniam id esse sit adipisicing reprehenderit. Eiusmod minim duis dolor irure et exercitation officia irure id aliquip nulla voluptate eu.\r\n", "registered": "2014-04-10T03:51:37-12:00", "latitude": 27.760698, "longitude": 63.643106, "tags": [ "sint", "eiusmod", "voluptate", "minim", "laborum", "incididunt", "quis" ], "friends": [ { "id": 0, "name": "Wheeler Thornton" }, { "id": 1, "name": "Hannah Kelley" }, { "id": 2, "name": "Adams Joseph" } ], "greeting": "Hello, Clements Trevino! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22e2ac002e636e7f94", "index": 1582, "guid": "16752754-0703-42a2-b708-eb389294788c", "isActive": false, "balance": "$2,209.32", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Haney Stephens", "gender": "male", "company": "NIQUENT", "email": "haneystephens@niquent.com", "phone": "+1 (852) 404-2292", "address": "268 Preston Court, Sparkill, Maryland, 5411", "about": "Consequat in deserunt consequat veniam voluptate occaecat nisi. Deserunt ea qui eiusmod ut adipisicing aliquip esse esse incididunt. Duis in non laborum occaecat enim cillum officia. Elit dolor sit quis ea duis cupidatat eiusmod dolor. Aute exercitation in qui enim est commodo ullamco ad. Est commodo tempor aliqua est excepteur eu exercitation.\r\n", "registered": "2014-01-26T19:52:26-13:00", "latitude": -47.480494, "longitude": -100.675958, "tags": [ "duis", "ea", "est", "pariatur", "esse", "id", "incididunt" ], "friends": [ { "id": 0, "name": "Sanford Norman" }, { "id": 1, "name": "Krista Nash" }, { "id": 2, "name": "Donovan Gibbs" } ], "greeting": "Hello, Haney Stephens! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22fc85c045396a669e", "index": 1583, "guid": "72497db2-a1ae-4bb7-85cf-63cc194eb65c", "isActive": true, "balance": "$2,670.31", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Alexander Foreman", "gender": "male", "company": "STELAECOR", "email": "alexanderforeman@stelaecor.com", "phone": "+1 (865) 565-2633", "address": "652 Orange Street, Chamizal, Alaska, 3712", "about": "Nulla sunt reprehenderit laborum laborum labore minim duis. Eu nulla dolor pariatur nisi magna nulla adipisicing nulla irure mollit non pariatur culpa voluptate. Magna sint culpa pariatur reprehenderit velit esse. Ipsum fugiat ipsum tempor occaecat nostrud Lorem exercitation sint dolore fugiat officia voluptate sunt irure. Incididunt nulla qui non eu incididunt. Irure consequat officia commodo fugiat proident occaecat excepteur. Voluptate adipisicing tempor officia labore.\r\n", "registered": "2014-01-20T01:58:33-13:00", "latitude": -34.912216, "longitude": -139.963404, "tags": [ "consectetur", "cillum", "sit", "velit", "do", "Lorem", "nisi" ], "friends": [ { "id": 0, "name": "Jody Leon" }, { "id": 1, "name": "Jaime Holt" }, { "id": 2, "name": "Levine Griffin" } ], "greeting": "Hello, Alexander Foreman! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea226c58d44736a02bee", "index": 1584, "guid": "e5b10eed-bdec-4332-816d-65ffdc76ee8f", "isActive": true, "balance": "$3,334.28", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Peters Sutton", "gender": "male", "company": "ORBOID", "email": "peterssutton@orboid.com", "phone": "+1 (928) 419-3304", "address": "962 Burnett Street, Sperryville, Arizona, 1355", "about": "Veniam minim duis cillum deserunt velit id ut ipsum. Occaecat dolor proident veniam aliqua pariatur minim do reprehenderit voluptate voluptate. Anim elit incididunt Lorem sint non ex mollit. Do quis eiusmod nulla laborum veniam anim consectetur commodo veniam ullamco quis aute proident culpa. Sit laborum cupidatat veniam voluptate. Pariatur anim elit pariatur dolor. In dolor voluptate voluptate excepteur.\r\n", "registered": "2014-07-17T16:00:19-12:00", "latitude": 4.445535, "longitude": 124.009839, "tags": [ "anim", "nulla", "do", "aliquip", "adipisicing", "incididunt", "enim" ], "friends": [ { "id": 0, "name": "Hartman Woodard" }, { "id": 1, "name": "Charles Larsen" }, { "id": 2, "name": "Virginia Parks" } ], "greeting": "Hello, Peters Sutton! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea227f4a5386a06eb6e0", "index": 1585, "guid": "be4fbe60-0e7f-407b-a54e-ced6767fd493", "isActive": true, "balance": "$2,644.69", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Reyna Benson", "gender": "female", "company": "TELEPARK", "email": "reynabenson@telepark.com", "phone": "+1 (846) 587-2636", "address": "616 Dean Street, Barstow, Federated States Of Micronesia, 4290", "about": "In enim et consectetur laboris sint. Fugiat ea aute eiusmod est deserunt proident sunt incididunt. Enim eiusmod labore Lorem aute cillum deserunt veniam. Pariatur Lorem et aute duis minim eiusmod sunt aute veniam do labore. Incididunt duis do eu enim aute nisi ipsum aute velit velit reprehenderit commodo voluptate. Excepteur nisi ullamco anim est consectetur ea minim est.\r\n", "registered": "2014-02-09T20:21:58-13:00", "latitude": 29.382248, "longitude": -136.594535, "tags": [ "consequat", "duis", "ex", "aute", "ad", "ipsum", "deserunt" ], "friends": [ { "id": 0, "name": "Mills Jefferson" }, { "id": 1, "name": "Nelson Ruiz" }, { "id": 2, "name": "Michelle Mclaughlin" } ], "greeting": "Hello, Reyna Benson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221ef17e6d491eaa4c", "index": 1586, "guid": "d8a7875b-3388-4dfe-8506-d06104850f88", "isActive": false, "balance": "$3,586.74", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Kathleen Bernard", "gender": "female", "company": "COLAIRE", "email": "kathleenbernard@colaire.com", "phone": "+1 (862) 489-3513", "address": "436 Desmond Court, Warren, Oklahoma, 4491", "about": "Do non laboris sint voluptate voluptate. Cupidatat labore laboris pariatur cillum est deserunt duis et ut qui. Eiusmod amet tempor exercitation est ullamco. Exercitation esse ipsum veniam laboris ex consequat sunt consequat do eiusmod veniam. Culpa duis cillum reprehenderit adipisicing nisi aliqua sit tempor. Consectetur amet excepteur duis ipsum non labore consequat. Nostrud nulla ipsum ut excepteur.\r\n", "registered": "2014-03-25T09:27:48-13:00", "latitude": 5.847833, "longitude": -106.738988, "tags": [ "ipsum", "veniam", "dolore", "culpa", "elit", "laborum", "ullamco" ], "friends": [ { "id": 0, "name": "Estes Bonner" }, { "id": 1, "name": "Vazquez Fischer" }, { "id": 2, "name": "Kent Whitney" } ], "greeting": "Hello, Kathleen Bernard! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea225fa801f180fb51af", "index": 1587, "guid": "f9843dac-81bb-4b3f-8e13-1bc1f0f85f4b", "isActive": true, "balance": "$2,337.80", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Blankenship Conway", "gender": "male", "company": "ZORROMOP", "email": "blankenshipconway@zorromop.com", "phone": "+1 (969) 464-2071", "address": "774 Hart Place, Sims, Michigan, 1543", "about": "Est ea deserunt laboris sint consectetur ad incididunt consectetur laboris deserunt. Laborum excepteur non eiusmod fugiat et nulla id dolore esse elit velit. Duis amet Lorem commodo enim dolor sit. Consectetur laboris incididunt laborum voluptate veniam non amet velit. Incididunt aliqua aliquip occaecat velit ad. Dolor Lorem eiusmod incididunt voluptate mollit amet ullamco non duis irure commodo. Aute voluptate id laboris officia deserunt ea do sunt ea reprehenderit officia commodo voluptate eiusmod.\r\n", "registered": "2014-01-24T00:42:29-13:00", "latitude": 55.596389, "longitude": -8.428669, "tags": [ "nulla", "amet", "nisi", "dolore", "consectetur", "sit", "sunt" ], "friends": [ { "id": 0, "name": "Kaye Patton" }, { "id": 1, "name": "Parsons Hahn" }, { "id": 2, "name": "Gibson Mcpherson" } ], "greeting": "Hello, Blankenship Conway! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22b4ff2ab2760d4f96", "index": 1588, "guid": "a2842472-71f5-4a97-8306-74897ae5005c", "isActive": true, "balance": "$3,960.03", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Shari Cabrera", "gender": "female", "company": "REALYSIS", "email": "sharicabrera@realysis.com", "phone": "+1 (809) 488-2716", "address": "605 Monroe Street, Shelby, Kansas, 7531", "about": "Est adipisicing consectetur Lorem nulla nisi cupidatat quis qui irure labore voluptate nisi ullamco consequat. Do consectetur Lorem excepteur elit. Duis fugiat magna anim dolor ipsum exercitation id ullamco officia id enim ex esse culpa. Dolore sit ipsum Lorem est ut sit voluptate dolore ipsum aliquip aliqua labore. Pariatur in ad nostrud adipisicing non dolore. Reprehenderit velit irure magna dolore proident id laborum cupidatat sint occaecat eu. Cupidatat adipisicing nulla veniam officia elit.\r\n", "registered": "2014-03-23T07:10:05-13:00", "latitude": -27.774857, "longitude": 122.292779, "tags": [ "officia", "sunt", "aliqua", "occaecat", "ea", "consequat", "aute" ], "friends": [ { "id": 0, "name": "Powell Sanchez" }, { "id": 1, "name": "Vinson Davidson" }, { "id": 2, "name": "Lucinda Preston" } ], "greeting": "Hello, Shari Cabrera! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea226cfbc7b0b4f8fc38", "index": 1589, "guid": "0181efda-0efd-4038-a3d6-e81a8439e216", "isActive": true, "balance": "$1,388.51", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Webb Williams", "gender": "male", "company": "ENORMO", "email": "webbwilliams@enormo.com", "phone": "+1 (855) 589-2874", "address": "740 Debevoise Avenue, Bergoo, South Dakota, 7290", "about": "Anim aute officia mollit aliqua id laboris nulla ut velit proident magna amet do. Pariatur nisi non proident irure eu amet deserunt fugiat cupidatat sunt do occaecat aliquip. Eiusmod id id fugiat ea minim. Voluptate exercitation Lorem ipsum laborum ex est veniam anim.\r\n", "registered": "2014-06-21T05:46:48-12:00", "latitude": -80.44745, "longitude": 54.104853, "tags": [ "minim", "dolor", "ullamco", "enim", "commodo", "incididunt", "ullamco" ], "friends": [ { "id": 0, "name": "Rivas Reilly" }, { "id": 1, "name": "Avis Jacobson" }, { "id": 2, "name": "Marcie Jones" } ], "greeting": "Hello, Webb Williams! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2223d61bdad45abb03", "index": 1590, "guid": "cc4ca8c2-ca1d-4270-b195-ab7782d0cc00", "isActive": true, "balance": "$3,042.05", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Young Bennett", "gender": "female", "company": "RODEOMAD", "email": "youngbennett@rodeomad.com", "phone": "+1 (950) 522-3386", "address": "692 Berkeley Place, Biddle, West Virginia, 9628", "about": "Cupidatat aliquip incididunt elit nulla eiusmod sunt proident dolor voluptate sit non. Deserunt labore dolor consequat tempor excepteur nisi aliquip nostrud. Pariatur quis esse enim anim adipisicing laboris nisi. Esse dolor aliqua fugiat veniam id sit esse esse ex.\r\n", "registered": "2014-03-17T09:50:25-13:00", "latitude": -45.9302, "longitude": 110.825566, "tags": [ "reprehenderit", "voluptate", "duis", "sunt", "duis", "esse", "non" ], "friends": [ { "id": 0, "name": "Baxter Quinn" }, { "id": 1, "name": "Farley Zimmerman" }, { "id": 2, "name": "Miranda Cruz" } ], "greeting": "Hello, Young Bennett! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22e05259c75f2b3262", "index": 1591, "guid": "55c8d066-c69d-4143-bb84-4ae2a3c6f2d5", "isActive": false, "balance": "$2,983.18", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Blackwell Moody", "gender": "male", "company": "VOIPA", "email": "blackwellmoody@voipa.com", "phone": "+1 (894) 436-3348", "address": "315 Varick Avenue, Wollochet, Texas, 2976", "about": "Reprehenderit sint anim sit velit eiusmod. Occaecat veniam duis labore eu qui nisi quis minim occaecat. Pariatur sit quis mollit proident eu consequat id. In incididunt irure duis eiusmod. Eu dolor dolor cupidatat officia.\r\n", "registered": "2014-03-30T18:44:46-13:00", "latitude": -58.16875, "longitude": -42.192119, "tags": [ "tempor", "ullamco", "duis", "minim", "dolor", "deserunt", "est" ], "friends": [ { "id": 0, "name": "Mendoza Barton" }, { "id": 1, "name": "Ortiz Ayala" }, { "id": 2, "name": "Talley Workman" } ], "greeting": "Hello, Blackwell Moody! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2218b53c59deaaee74", "index": 1592, "guid": "d490b0c9-5a09-445f-892d-3ff612015d4b", "isActive": true, "balance": "$2,070.31", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Navarro Hopper", "gender": "male", "company": "BULLZONE", "email": "navarrohopper@bullzone.com", "phone": "+1 (806) 460-2286", "address": "861 Hoyts Lane, Snowville, Oregon, 2431", "about": "Eu mollit ullamco dolore eiusmod deserunt. Enim consectetur enim veniam non quis enim laboris officia in do ex eu laboris velit. Adipisicing incididunt ut consequat elit enim veniam. Ex ea proident nulla sint qui laborum irure do amet enim pariatur cupidatat nostrud voluptate.\r\n", "registered": "2014-03-11T12:25:20-13:00", "latitude": -41.911, "longitude": 79.547197, "tags": [ "deserunt", "esse", "consectetur", "enim", "cillum", "esse", "sint" ], "friends": [ { "id": 0, "name": "Summers Turner" }, { "id": 1, "name": "Mcgee Shaffer" }, { "id": 2, "name": "Frye Miranda" } ], "greeting": "Hello, Navarro Hopper! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea227d53ee674806f907", "index": 1593, "guid": "2600bb55-5ea1-42da-9288-73f6fb3d6603", "isActive": false, "balance": "$3,615.74", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Marcella Cash", "gender": "female", "company": "GLUKGLUK", "email": "marcellacash@glukgluk.com", "phone": "+1 (914) 443-2712", "address": "680 Friel Place, Fairhaven, Nevada, 4317", "about": "Elit voluptate consectetur nostrud aute ea exercitation non consequat reprehenderit aliquip cupidatat occaecat fugiat. Laboris reprehenderit adipisicing et cillum officia minim tempor nisi nulla. Est et aute qui sint anim deserunt ut nisi eiusmod culpa aliqua velit veniam esse. Sit cupidatat est aliquip commodo non aliquip elit adipisicing laboris. Fugiat deserunt officia aliquip ipsum excepteur qui est dolor duis velit non officia exercitation. Voluptate occaecat pariatur cupidatat ullamco ea quis ut occaecat mollit elit culpa ad id occaecat.\r\n", "registered": "2014-05-11T19:43:51-12:00", "latitude": -24.804298, "longitude": 28.485036, "tags": [ "ea", "magna", "duis", "veniam", "cillum", "tempor", "reprehenderit" ], "friends": [ { "id": 0, "name": "Jayne Randall" }, { "id": 1, "name": "Lara Drake" }, { "id": 2, "name": "Laverne Calderon" } ], "greeting": "Hello, Marcella Cash! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea227285a53e0f79bbe6", "index": 1594, "guid": "9305d609-5641-4392-85ae-ed22c761e56c", "isActive": true, "balance": "$1,699.82", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Isabella Mckinney", "gender": "female", "company": "COMSTRUCT", "email": "isabellamckinney@comstruct.com", "phone": "+1 (898) 470-3072", "address": "158 Agate Court, Kanauga, Minnesota, 2070", "about": "Ullamco voluptate deserunt minim excepteur quis duis sint qui et excepteur deserunt nostrud sunt nulla. Pariatur sit nisi adipisicing ea tempor id velit occaecat voluptate et culpa laborum nulla aliqua. Incididunt ut do aute exercitation duis ullamco magna quis laborum. Laboris excepteur nostrud et ut proident velit commodo.\r\n", "registered": "2014-04-13T22:49:23-12:00", "latitude": -39.793855, "longitude": 82.545262, "tags": [ "culpa", "aute", "ex", "nulla", "eu", "anim", "cillum" ], "friends": [ { "id": 0, "name": "Fulton Estrada" }, { "id": 1, "name": "Wood Weaver" }, { "id": 2, "name": "Kristine Welch" } ], "greeting": "Hello, Isabella Mckinney! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22192c2c4c4b342de1", "index": 1595, "guid": "16719e40-ebb9-4207-8a6b-248415d6dcc0", "isActive": true, "balance": "$2,897.19", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Guerra Durham", "gender": "male", "company": "VALPREAL", "email": "guerradurham@valpreal.com", "phone": "+1 (803) 559-3112", "address": "840 Keen Court, Kilbourne, Missouri, 2773", "about": "Deserunt aliquip culpa amet nostrud exercitation cupidatat cillum sint. In sunt amet ad do mollit adipisicing. Tempor laborum et officia officia veniam velit. Consectetur nostrud voluptate fugiat elit ipsum ipsum ut ut adipisicing.\r\n", "registered": "2014-03-22T09:34:09-13:00", "latitude": -24.988143, "longitude": 124.186897, "tags": [ "veniam", "ut", "laboris", "labore", "incididunt", "id", "do" ], "friends": [ { "id": 0, "name": "Good Woodward" }, { "id": 1, "name": "Sandoval Fowler" }, { "id": 2, "name": "Molina Holloway" } ], "greeting": "Hello, Guerra Durham! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22b17fd01528e24277", "index": 1596, "guid": "7ea7c1c0-e7e1-43d7-b6a3-6e7cf17871d9", "isActive": true, "balance": "$1,857.44", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Susanna Britt", "gender": "female", "company": "CHILLIUM", "email": "susannabritt@chillium.com", "phone": "+1 (971) 565-2146", "address": "920 Hamilton Avenue, Saddlebrooke, Rhode Island, 632", "about": "Reprehenderit enim labore tempor elit duis ullamco nulla sunt irure veniam incididunt ullamco est. Sunt est sunt duis et tempor id incididunt dolore anim sint culpa et. Proident sunt ullamco deserunt Lorem anim est esse cillum aliqua irure culpa enim. Do laborum aliquip cillum non exercitation esse adipisicing in voluptate officia sunt qui aliquip.\r\n", "registered": "2014-01-04T20:58:05-13:00", "latitude": -37.120908, "longitude": 151.514445, "tags": [ "aute", "aliqua", "veniam", "officia", "quis", "reprehenderit", "incididunt" ], "friends": [ { "id": 0, "name": "Britney Berg" }, { "id": 1, "name": "Mona Moss" }, { "id": 2, "name": "Annette Stark" } ], "greeting": "Hello, Susanna Britt! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2211e9327898de8d2b", "index": 1597, "guid": "82dea9e9-e15f-43d9-bae6-147705276cc3", "isActive": false, "balance": "$1,543.18", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Hyde Mendoza", "gender": "male", "company": "ANDRYX", "email": "hydemendoza@andryx.com", "phone": "+1 (968) 598-2077", "address": "496 Saratoga Avenue, Waterloo, Florida, 4120", "about": "Ut incididunt ipsum esse quis pariatur ipsum minim Lorem proident. Incididunt adipisicing qui pariatur in exercitation ullamco exercitation. Elit amet proident in laboris veniam anim occaecat. Amet exercitation ipsum consectetur proident ut adipisicing ea laborum. Do nulla ex anim labore consectetur. Nisi elit sit non exercitation duis labore non sint ex nisi ex ullamco in veniam.\r\n", "registered": "2014-01-02T13:27:21-13:00", "latitude": -29.109992, "longitude": -90.855708, "tags": [ "reprehenderit", "proident", "officia", "ut", "cupidatat", "amet", "dolore" ], "friends": [ { "id": 0, "name": "Haynes Harrison" }, { "id": 1, "name": "Kari Dickerson" }, { "id": 2, "name": "Stone Arnold" } ], "greeting": "Hello, Hyde Mendoza! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22fbf61427b3292277", "index": 1598, "guid": "2b0c7096-d6b6-444f-9be4-5c9d2014fd83", "isActive": true, "balance": "$3,719.79", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Walls Rodriquez", "gender": "male", "company": "STEELFAB", "email": "wallsrodriquez@steelfab.com", "phone": "+1 (956) 523-2566", "address": "374 Halleck Street, Statenville, North Carolina, 747", "about": "Pariatur voluptate esse culpa fugiat officia ad ex occaecat sit commodo nisi in. Incididunt adipisicing commodo tempor dolore aliquip eu commodo. Aliqua sit et occaecat qui et ut velit est aliqua aliqua in ullamco. Dolore cupidatat irure voluptate in. Duis esse consectetur ipsum elit sint deserunt.\r\n", "registered": "2014-03-08T23:17:46-13:00", "latitude": 81.534696, "longitude": -15.721215, "tags": [ "officia", "sit", "occaecat", "deserunt", "aliquip", "anim", "nulla" ], "friends": [ { "id": 0, "name": "Corina Guy" }, { "id": 1, "name": "Bruce Vang" }, { "id": 2, "name": "Booth Lynn" } ], "greeting": "Hello, Walls Rodriquez! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2217ca9236c528ea95", "index": 1599, "guid": "9e438bb3-83c5-4e27-9378-255d07d40b9d", "isActive": false, "balance": "$3,234.94", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Hunt York", "gender": "male", "company": "DEEPENDS", "email": "huntyork@deepends.com", "phone": "+1 (850) 537-3929", "address": "708 Story Court, Eastmont, New Hampshire, 8401", "about": "Aliquip exercitation cupidatat reprehenderit voluptate anim Lorem consequat laboris. Quis aliquip consequat culpa laborum mollit ipsum. Non sint deserunt dolor eiusmod sunt cillum eu ad. Reprehenderit tempor sunt fugiat voluptate. Nisi enim veniam nostrud ex laboris eiusmod. Non esse culpa dolore deserunt velit dolor et.\r\n", "registered": "2014-07-24T13:02:29-12:00", "latitude": -18.236711, "longitude": -63.247, "tags": [ "do", "laboris", "culpa", "quis", "nisi", "consectetur", "tempor" ], "friends": [ { "id": 0, "name": "Blake Erickson" }, { "id": 1, "name": "Roman Fields" }, { "id": 2, "name": "Marissa Aguilar" } ], "greeting": "Hello, Hunt York! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea220f9f73921b19cd4e", "index": 1600, "guid": "76855ab8-4f63-44ef-a874-ba814152774b", "isActive": false, "balance": "$3,717.44", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Morton Gomez", "gender": "male", "company": "INTERGEEK", "email": "mortongomez@intergeek.com", "phone": "+1 (972) 600-3467", "address": "259 Wyckoff Avenue, Glendale, Arkansas, 8126", "about": "Duis eu ipsum Lorem laboris. Do pariatur fugiat exercitation enim minim irure culpa laboris. Ipsum et quis sit cupidatat duis qui. Eiusmod sint ipsum id ipsum voluptate cupidatat consectetur. Deserunt reprehenderit minim officia veniam labore Lorem. Id reprehenderit cillum qui duis. Eiusmod sunt occaecat voluptate eu ex sint qui mollit nisi mollit sunt consectetur.\r\n", "registered": "2014-03-11T16:31:26-13:00", "latitude": 44.355002, "longitude": -72.174427, "tags": [ "do", "eiusmod", "anim", "veniam", "consequat", "anim", "sint" ], "friends": [ { "id": 0, "name": "Belinda Stewart" }, { "id": 1, "name": "Trevino Foster" }, { "id": 2, "name": "Kathie Pacheco" } ], "greeting": "Hello, Morton Gomez! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22d302d1a9df8c9522", "index": 1601, "guid": "325f8cc0-66da-4f81-b176-b7a55777488f", "isActive": false, "balance": "$1,162.60", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Jordan Rodgers", "gender": "female", "company": "YURTURE", "email": "jordanrodgers@yurture.com", "phone": "+1 (975) 535-3772", "address": "938 Harrison Place, Nash, Iowa, 6398", "about": "Nisi exercitation culpa sunt labore dolore magna fugiat fugiat laboris ea nulla veniam fugiat. Elit sint do incididunt veniam laboris nisi labore incididunt minim enim. Nostrud minim mollit adipisicing labore magna pariatur adipisicing ad ut nulla. Aliqua id cupidatat elit elit mollit deserunt anim et. Laborum minim mollit sit eiusmod adipisicing adipisicing ea amet sunt proident Lorem dolor laboris. Amet do sunt nulla culpa. Ex deserunt incididunt non pariatur incididunt veniam non cillum.\r\n", "registered": "2014-02-15T21:32:52-13:00", "latitude": 17.388771, "longitude": 101.508834, "tags": [ "aliquip", "adipisicing", "occaecat", "nostrud", "proident", "nulla", "magna" ], "friends": [ { "id": 0, "name": "Herminia Meyers" }, { "id": 1, "name": "Munoz Roach" }, { "id": 2, "name": "Marianne Gallegos" } ], "greeting": "Hello, Jordan Rodgers! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea222f275026ba2e3238", "index": 1602, "guid": "47a7ce0d-4b0a-46ff-94b5-fa73a6cff76b", "isActive": false, "balance": "$1,841.84", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Doreen Stokes", "gender": "female", "company": "LETPRO", "email": "doreenstokes@letpro.com", "phone": "+1 (886) 549-3895", "address": "572 Hope Street, Ryderwood, Nebraska, 1589", "about": "Duis amet ullamco mollit mollit. Tempor pariatur laborum sint duis do proident nulla sunt mollit amet aute exercitation eiusmod ullamco. Enim Lorem quis excepteur culpa nostrud. Excepteur tempor dolor officia sunt tempor minim proident dolore veniam sunt ut. Veniam duis laboris esse labore in sint et occaecat excepteur adipisicing. Deserunt nisi mollit esse pariatur fugiat. Dolor ex velit nulla aliquip sit fugiat Lorem quis consectetur commodo.\r\n", "registered": "2014-07-12T09:54:35-12:00", "latitude": -74.596669, "longitude": 124.611722, "tags": [ "esse", "qui", "dolore", "cupidatat", "est", "culpa", "duis" ], "friends": [ { "id": 0, "name": "Shawna Marks" }, { "id": 1, "name": "Sheppard Woods" }, { "id": 2, "name": "Tina Briggs" } ], "greeting": "Hello, Doreen Stokes! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22054098127d2bfd2f", "index": 1603, "guid": "01062528-50c7-4272-a0dd-1ab2116d1d36", "isActive": false, "balance": "$3,574.43", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Clayton Serrano", "gender": "male", "company": "AUTOGRATE", "email": "claytonserrano@autograte.com", "phone": "+1 (966) 465-3648", "address": "162 Hinckley Place, Nutrioso, District Of Columbia, 7653", "about": "Est minim ad in cillum occaecat amet quis. Voluptate minim incididunt anim aliqua esse ut laborum occaecat qui quis nulla consectetur officia excepteur. Est aliquip aliquip nostrud ullamco aute ea sint ex ad commodo et tempor. Magna laboris eiusmod sit irure fugiat eiusmod exercitation dolore aliquip culpa sunt.\r\n", "registered": "2014-02-11T15:44:30-13:00", "latitude": 69.465537, "longitude": -80.00668, "tags": [ "nisi", "qui", "id", "ipsum", "velit", "sint", "consectetur" ], "friends": [ { "id": 0, "name": "Ruth Cooper" }, { "id": 1, "name": "Turner Floyd" }, { "id": 2, "name": "Travis Stevenson" } ], "greeting": "Hello, Clayton Serrano! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22fc740117face3f32", "index": 1604, "guid": "8ac3bd1b-58e4-4330-a018-8be896685f08", "isActive": false, "balance": "$3,522.09", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Martina Sargent", "gender": "female", "company": "TERRAGEN", "email": "martinasargent@terragen.com", "phone": "+1 (908) 472-3639", "address": "357 Bridgewater Street, Dupuyer, New Jersey, 9353", "about": "Irure eu do proident est in anim sint. Laborum et veniam excepteur minim sit do officia enim incididunt exercitation tempor adipisicing. Dolor nisi cillum magna aliqua. Eu laboris nostrud aute cupidatat aliquip occaecat reprehenderit pariatur eiusmod. Exercitation sunt esse cillum ullamco mollit irure excepteur. Sint voluptate veniam ipsum cupidatat proident qui Lorem tempor sunt exercitation pariatur dolore.\r\n", "registered": "2014-08-03T20:29:47-12:00", "latitude": -16.23741, "longitude": -65.196572, "tags": [ "dolor", "irure", "Lorem", "ea", "aute", "voluptate", "esse" ], "friends": [ { "id": 0, "name": "Stella Johnston" }, { "id": 1, "name": "Barbara Valenzuela" }, { "id": 2, "name": "Schwartz Richards" } ], "greeting": "Hello, Martina Sargent! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea220d9f491c6b869212", "index": 1605, "guid": "c5ddcac1-7607-4132-9872-bc456c1ebd29", "isActive": false, "balance": "$3,333.69", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Jacobs Duffy", "gender": "male", "company": "AVENETRO", "email": "jacobsduffy@avenetro.com", "phone": "+1 (888) 545-2290", "address": "436 Schermerhorn Street, Orviston, Palau, 1662", "about": "Consequat et enim enim aute in sunt tempor amet ex nostrud sunt elit. Elit amet voluptate ad excepteur irure quis commodo occaecat pariatur consequat cupidatat ad culpa. Adipisicing labore mollit sunt aliquip anim irure cillum magna nostrud consequat deserunt incididunt. Aliquip occaecat consectetur cupidatat nostrud quis elit consectetur et eiusmod tempor qui. Exercitation consectetur ad do aute in dolor anim enim anim.\r\n", "registered": "2014-03-04T05:28:54-13:00", "latitude": 34.611918, "longitude": -171.121317, "tags": [ "officia", "in", "laboris", "reprehenderit", "aliqua", "fugiat", "culpa" ], "friends": [ { "id": 0, "name": "Welch Blanchard" }, { "id": 1, "name": "Kerri Craig" }, { "id": 2, "name": "Carpenter Byrd" } ], "greeting": "Hello, Jacobs Duffy! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22cbd52f9e6458d7aa", "index": 1606, "guid": "7416a6d7-5632-494d-84e4-5833cdb4141d", "isActive": true, "balance": "$1,358.07", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Blair White", "gender": "male", "company": "ZYTRAC", "email": "blairwhite@zytrac.com", "phone": "+1 (898) 576-3553", "address": "380 Woodpoint Road, Moraida, Puerto Rico, 5442", "about": "Eu qui sunt non Lorem sint. Reprehenderit adipisicing eiusmod ipsum culpa ex exercitation amet aliquip sunt occaecat aliqua amet. Mollit occaecat ad ad nisi sunt culpa Lorem non tempor aliqua exercitation officia cillum sunt. Sint non ut eu adipisicing in nulla laborum veniam eu. Magna consequat labore tempor ut mollit enim id duis nulla duis nisi duis aute eiusmod. Excepteur irure magna eu exercitation nostrud occaecat excepteur minim incididunt eiusmod incididunt sunt. Esse proident incididunt dolore consectetur cupidatat enim aliqua nisi ad in consequat qui labore sunt.\r\n", "registered": "2014-08-10T13:51:57-12:00", "latitude": -61.745924, "longitude": -102.694874, "tags": [ "minim", "laborum", "magna", "ad", "sit", "do", "ex" ], "friends": [ { "id": 0, "name": "Katina Hensley" }, { "id": 1, "name": "Addie Martinez" }, { "id": 2, "name": "Kendra Richmond" } ], "greeting": "Hello, Blair White! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22bc6de8b2ae2d475b", "index": 1607, "guid": "f5e47a4e-61a3-43d7-880d-faf646aead5e", "isActive": true, "balance": "$3,164.33", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Taylor Mcclure", "gender": "male", "company": "MULTRON", "email": "taylormcclure@multron.com", "phone": "+1 (896) 499-3598", "address": "964 Bevy Court, Berlin, California, 2215", "about": "Dolor ut quis ipsum duis culpa duis tempor cillum voluptate. Mollit ipsum est est ipsum. Aliquip minim proident aute culpa velit commodo incididunt exercitation pariatur tempor est exercitation. Duis culpa ullamco laboris do cupidatat.\r\n", "registered": "2014-02-19T02:45:45-13:00", "latitude": 40.755655, "longitude": 86.349845, "tags": [ "ipsum", "cupidatat", "in", "aliquip", "laborum", "id", "excepteur" ], "friends": [ { "id": 0, "name": "Keisha Peters" }, { "id": 1, "name": "Isabel Lara" }, { "id": 2, "name": "Palmer Cleveland" } ], "greeting": "Hello, Taylor Mcclure! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221ebac2a212a9efbe", "index": 1608, "guid": "eb83893c-df27-40fa-a563-a8fc0d67dec7", "isActive": false, "balance": "$3,487.90", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "King Howell", "gender": "male", "company": "DAISU", "email": "kinghowell@daisu.com", "phone": "+1 (905) 434-2844", "address": "635 Division Avenue, Aurora, Vermont, 1890", "about": "Aute Lorem sit aliqua magna sint dolor quis sint mollit laboris magna reprehenderit qui. Nulla ullamco amet aute cupidatat. Enim dolore nulla ex id proident voluptate aliquip ad ad do exercitation.\r\n", "registered": "2014-06-06T04:32:05-12:00", "latitude": 68.786361, "longitude": 10.264505, "tags": [ "laboris", "enim", "officia", "ea", "exercitation", "consectetur", "ullamco" ], "friends": [ { "id": 0, "name": "Sharron Nielsen" }, { "id": 1, "name": "Marshall Rhodes" }, { "id": 2, "name": "Joseph Hartman" } ], "greeting": "Hello, King Howell! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22a211e0b762b8ef39", "index": 1609, "guid": "e725e988-3476-49fd-9c10-1201df57ec71", "isActive": false, "balance": "$2,223.44", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Cecile Travis", "gender": "female", "company": "MALATHION", "email": "ceciletravis@malathion.com", "phone": "+1 (822) 554-3991", "address": "446 Livingston Street, Mansfield, Indiana, 8227", "about": "Dolor aute qui ut veniam mollit incididunt duis amet anim laborum. Magna amet occaecat ex adipisicing incididunt dolor enim Lorem labore aute dolore. Nostrud minim proident velit ipsum incididunt exercitation nisi aliquip anim et. Sit id qui esse anim officia id ad deserunt. Anim qui commodo eiusmod laborum proident tempor excepteur. Labore eu commodo consequat exercitation in consequat eu nisi quis ea aute reprehenderit elit Lorem. Veniam sint nisi excepteur in non cupidatat qui voluptate.\r\n", "registered": "2014-08-10T21:07:57-12:00", "latitude": -72.712224, "longitude": -125.917184, "tags": [ "aliqua", "veniam", "ut", "fugiat", "ea", "ea", "quis" ], "friends": [ { "id": 0, "name": "Andrews Wilson" }, { "id": 1, "name": "Gomez Pace" }, { "id": 2, "name": "Wilma Sparks" } ], "greeting": "Hello, Cecile Travis! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22c503fb9c3c434514", "index": 1610, "guid": "e775ef8a-d104-40ff-a05d-f36c61d70a99", "isActive": true, "balance": "$2,898.61", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Simone Patterson", "gender": "female", "company": "CONJURICA", "email": "simonepatterson@conjurica.com", "phone": "+1 (881) 454-3757", "address": "215 Estate Road, Fairmount, Illinois, 7991", "about": "Lorem Lorem nostrud adipisicing amet Lorem tempor labore ea commodo. Deserunt voluptate laborum amet consectetur sint ut in adipisicing nostrud est proident cupidatat nostrud. Et non occaecat voluptate reprehenderit veniam enim fugiat aliquip proident ea sunt aliquip dolore. Laborum aute consequat excepteur voluptate do. Enim exercitation duis voluptate ad fugiat magna aliqua voluptate aliquip velit labore incididunt deserunt occaecat. Cillum aliquip nulla in proident est laboris eu mollit consequat velit.\r\n", "registered": "2014-02-14T20:37:49-13:00", "latitude": -8.532519, "longitude": -93.104019, "tags": [ "irure", "fugiat", "et", "sint", "commodo", "dolore", "culpa" ], "friends": [ { "id": 0, "name": "Johns Wood" }, { "id": 1, "name": "Tricia Rodriguez" }, { "id": 2, "name": "Kelley Bates" } ], "greeting": "Hello, Simone Patterson! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22bc603ebc1b1258f9", "index": 1611, "guid": "bbe7a5cc-e28d-4c25-9d03-d24390c84d1a", "isActive": true, "balance": "$3,729.43", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Terrie Shepard", "gender": "female", "company": "COMTRAIL", "email": "terrieshepard@comtrail.com", "phone": "+1 (887) 450-3783", "address": "461 Delevan Street, Cannondale, South Carolina, 4368", "about": "Do esse minim mollit deserunt incididunt sunt et duis occaecat magna pariatur laborum tempor officia. Laboris sint ex officia laborum pariatur duis duis ullamco ea adipisicing. Duis do est aliquip incididunt Lorem fugiat labore anim ad non quis fugiat proident sunt. Labore irure nostrud incididunt officia reprehenderit occaecat minim officia officia adipisicing aute. Exercitation ut voluptate occaecat qui minim aliquip sit enim veniam excepteur.\r\n", "registered": "2014-08-31T01:11:43-12:00", "latitude": -73.787491, "longitude": 134.077363, "tags": [ "aliquip", "fugiat", "et", "amet", "ut", "sit", "in" ], "friends": [ { "id": 0, "name": "Leon Mercado" }, { "id": 1, "name": "Walton Fitzpatrick" }, { "id": 2, "name": "Santiago Hart" } ], "greeting": "Hello, Terrie Shepard! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22dbcbcf1386ea9173", "index": 1612, "guid": "776649b5-666a-4571-a1bf-1a1ef9017736", "isActive": false, "balance": "$3,772.09", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Madeline Poole", "gender": "female", "company": "VIAGREAT", "email": "madelinepoole@viagreat.com", "phone": "+1 (996) 444-3684", "address": "130 Eagle Street, Gerber, American Samoa, 6880", "about": "Tempor esse ut sint velit officia ex Lorem laborum sit aute sit eu. Incididunt adipisicing magna veniam voluptate elit. Ipsum qui eiusmod aute velit sit proident nostrud magna sint ipsum laborum.\r\n", "registered": "2014-02-04T13:22:21-13:00", "latitude": 15.2326, "longitude": 141.607113, "tags": [ "culpa", "elit", "nulla", "mollit", "ad", "consequat", "occaecat" ], "friends": [ { "id": 0, "name": "Roberta Franks" }, { "id": 1, "name": "Frost Watson" }, { "id": 2, "name": "Gladys Shaw" } ], "greeting": "Hello, Madeline Poole! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea229b43868a5871077a", "index": 1613, "guid": "d2eafa58-ced2-496c-9576-ae93d2792b68", "isActive": false, "balance": "$2,671.93", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Greene Smith", "gender": "male", "company": "DANJA", "email": "greenesmith@danja.com", "phone": "+1 (965) 437-2627", "address": "184 Lincoln Terrace, Mooresburg, Delaware, 9220", "about": "Esse laboris sit nulla adipisicing ut ex duis exercitation. Nisi sunt proident enim officia sint minim adipisicing sint est cillum duis ut. Sint pariatur nisi cillum quis eiusmod tempor eu qui deserunt consequat.\r\n", "registered": "2014-01-19T13:58:18-13:00", "latitude": 71.173961, "longitude": 65.512476, "tags": [ "ad", "excepteur", "qui", "consequat", "eu", "ea", "eiusmod" ], "friends": [ { "id": 0, "name": "Anna Bell" }, { "id": 1, "name": "Henson Simon" }, { "id": 2, "name": "Rodgers Orr" } ], "greeting": "Hello, Greene Smith! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22e2c73a22fa8f3141", "index": 1614, "guid": "6fa23aab-636a-4c85-948e-523e906ab264", "isActive": false, "balance": "$3,160.78", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Richard Page", "gender": "male", "company": "ISIS", "email": "richardpage@isis.com", "phone": "+1 (838) 482-2557", "address": "200 Randolph Street, Rew, Pennsylvania, 5447", "about": "Pariatur labore cillum Lorem aute veniam minim commodo laborum enim occaecat. Elit ex ex commodo ut culpa. Tempor voluptate elit culpa nisi duis irure consectetur dolore labore labore tempor magna incididunt. Nisi id in non officia aliqua fugiat velit sint occaecat aliquip nostrud. Cillum proident Lorem occaecat nisi commodo est eiusmod. Sint id ea nostrud pariatur commodo non ad consectetur minim aliqua sit aute.\r\n", "registered": "2014-03-06T22:56:42-13:00", "latitude": -27.588906, "longitude": 101.727013, "tags": [ "sint", "sunt", "reprehenderit", "qui", "irure", "est", "ullamco" ], "friends": [ { "id": 0, "name": "Beatriz Greene" }, { "id": 1, "name": "Berta Flowers" }, { "id": 2, "name": "Payne Spencer" } ], "greeting": "Hello, Richard Page! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea225db02d4d1d81da59", "index": 1615, "guid": "7eac0131-d1fd-4045-8606-67c8820cfd99", "isActive": false, "balance": "$3,495.06", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Adele Booker", "gender": "female", "company": "ANOCHA", "email": "adelebooker@anocha.com", "phone": "+1 (867) 428-3502", "address": "567 Carlton Avenue, Blanco, Georgia, 6370", "about": "Voluptate qui consequat consectetur quis sint eiusmod eiusmod dolor adipisicing elit. Laboris eiusmod pariatur irure aliquip deserunt culpa ex elit. Tempor culpa excepteur non fugiat commodo anim sit quis sit pariatur. Do laborum ut irure consequat ad consequat et officia sint sit elit duis excepteur. Esse enim duis exercitation aliquip ad sit mollit qui nostrud aute ex elit.\r\n", "registered": "2014-08-30T18:05:39-12:00", "latitude": 36.63824, "longitude": 174.644042, "tags": [ "aliquip", "aliquip", "sint", "incididunt", "ex", "laboris", "reprehenderit" ], "friends": [ { "id": 0, "name": "Reid Vinson" }, { "id": 1, "name": "Robin Craft" }, { "id": 2, "name": "Whitley Frazier" } ], "greeting": "Hello, Adele Booker! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22a74364ea1688f0d8", "index": 1616, "guid": "4b658da6-bbd2-42e5-8fda-1599c8b56a1e", "isActive": true, "balance": "$1,326.33", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Lorraine Guerrero", "gender": "female", "company": "ZYPLE", "email": "lorraineguerrero@zyple.com", "phone": "+1 (956) 418-2800", "address": "219 Furman Avenue, Oneida, North Dakota, 5752", "about": "Veniam minim enim occaecat aute aliqua pariatur deserunt. Non veniam cupidatat Lorem ut id magna ipsum et qui sunt voluptate consequat. Cupidatat ullamco mollit et duis duis proident incididunt. Sint nulla sunt in nulla irure eiusmod. Dolore voluptate pariatur do irure aliquip magna esse est officia et mollit aliquip. Deserunt sunt elit magna enim in velit in laborum. Nostrud labore dolor sint officia qui officia culpa magna.\r\n", "registered": "2014-08-29T04:12:47-12:00", "latitude": -81.419546, "longitude": -72.786055, "tags": [ "qui", "amet", "aliqua", "enim", "eiusmod", "sint", "dolor" ], "friends": [ { "id": 0, "name": "Estrada Francis" }, { "id": 1, "name": "Mai Wiley" }, { "id": 2, "name": "Malone Kelly" } ], "greeting": "Hello, Lorraine Guerrero! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea224229f2c6ac8a37cd", "index": 1617, "guid": "96759daa-2145-4e47-a390-5a3ab416c0f8", "isActive": false, "balance": "$2,112.17", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Mooney Klein", "gender": "male", "company": "ZYTREK", "email": "mooneyklein@zytrek.com", "phone": "+1 (942) 565-3823", "address": "794 Dahill Road, Brambleton, Louisiana, 1252", "about": "In nisi pariatur sunt aliqua qui aute. Dolor exercitation aliquip nisi exercitation elit sit amet excepteur eiusmod elit. Veniam deserunt enim do ut veniam esse ullamco. Occaecat minim laborum exercitation anim elit incididunt culpa veniam duis. Ea culpa anim fugiat ad eu non.\r\n", "registered": "2014-05-08T11:59:04-12:00", "latitude": 38.523745, "longitude": -29.809875, "tags": [ "incididunt", "do", "eu", "reprehenderit", "aliquip", "velit", "anim" ], "friends": [ { "id": 0, "name": "Gallegos Mcbride" }, { "id": 1, "name": "Jolene Carey" }, { "id": 2, "name": "Sonia Fry" } ], "greeting": "Hello, Mooney Klein! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2263746d04b08afe03", "index": 1618, "guid": "3522e033-afb5-46fa-a6e9-9876df4c4ae8", "isActive": false, "balance": "$1,304.71", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Bette Beasley", "gender": "female", "company": "HONOTRON", "email": "bettebeasley@honotron.com", "phone": "+1 (880) 423-3409", "address": "101 Ferris Street, Lemoyne, Northern Mariana Islands, 6297", "about": "Aliquip nisi amet aliqua sunt consectetur consectetur anim sit laborum voluptate officia ullamco aliquip. Nostrud proident ea voluptate excepteur Lorem enim consequat. Sunt exercitation ut cillum nulla ipsum fugiat laborum. Elit consequat id ex ipsum nostrud magna ex eu officia nulla minim consequat sunt esse.\r\n", "registered": "2014-03-24T20:07:14-13:00", "latitude": -34.616434, "longitude": -75.204892, "tags": [ "cupidatat", "ipsum", "esse", "pariatur", "tempor", "id", "culpa" ], "friends": [ { "id": 0, "name": "Kristi Gaines" }, { "id": 1, "name": "Cain Warner" }, { "id": 2, "name": "Alvarez Henry" } ], "greeting": "Hello, Bette Beasley! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22d73c0df4d6faa710", "index": 1619, "guid": "e5c89f71-d349-41ab-99b5-dcb8a5abb8d1", "isActive": false, "balance": "$2,114.67", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Paige Clark", "gender": "female", "company": "ZENTILITY", "email": "paigeclark@zentility.com", "phone": "+1 (972) 528-2728", "address": "231 Poplar Avenue, Woodlands, Colorado, 5469", "about": "Aute ullamco sint Lorem enim. Exercitation duis ex anim nostrud aute irure elit voluptate in excepteur aute. Cillum cillum culpa amet labore mollit do id minim laboris labore velit fugiat duis nisi.\r\n", "registered": "2014-05-06T20:22:13-12:00", "latitude": -48.8594, "longitude": -51.918294, "tags": [ "cillum", "aliqua", "id", "cupidatat", "voluptate", "pariatur", "elit" ], "friends": [ { "id": 0, "name": "Floyd Baird" }, { "id": 1, "name": "Aimee Noel" }, { "id": 2, "name": "Ophelia Dunlap" } ], "greeting": "Hello, Paige Clark! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22b23e4422d1151510", "index": 1620, "guid": "8f8f88f7-e852-4402-9ca3-071f931c4dfa", "isActive": false, "balance": "$3,314.65", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Juana Kramer", "gender": "female", "company": "CYTRAK", "email": "juanakramer@cytrak.com", "phone": "+1 (948) 595-2670", "address": "924 Grove Street, Manchester, Idaho, 1578", "about": "Reprehenderit enim laborum voluptate et adipisicing irure quis. Exercitation et esse dolore magna culpa consequat commodo incididunt pariatur nisi dolor magna. Ipsum aliqua excepteur sint eu. Ipsum mollit amet veniam ipsum adipisicing enim quis reprehenderit amet ex velit aliqua minim dolore. Labore non veniam consectetur non.\r\n", "registered": "2014-03-22T03:22:55-13:00", "latitude": 37.0416, "longitude": 108.92529, "tags": [ "id", "ex", "nostrud", "dolor", "laborum", "anim", "eiusmod" ], "friends": [ { "id": 0, "name": "Brennan Hubbard" }, { "id": 1, "name": "Jane Petersen" }, { "id": 2, "name": "Claudine Ford" } ], "greeting": "Hello, Juana Kramer! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea220cc46f624ca43fb4", "index": 1621, "guid": "e9b62cf9-17e4-4bb0-b56b-2c1c25bea90e", "isActive": false, "balance": "$1,120.23", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Milagros Buck", "gender": "female", "company": "SPLINX", "email": "milagrosbuck@splinx.com", "phone": "+1 (901) 572-3312", "address": "490 Charles Place, Wauhillau, Marshall Islands, 289", "about": "Et labore aliqua excepteur consequat exercitation laboris sit. Sint sint minim id esse esse Lorem minim. Laborum laborum ipsum sunt mollit consequat. Laborum dolor nisi dolore id nisi voluptate.\r\n", "registered": "2014-09-15T17:36:52-12:00", "latitude": 42.045361, "longitude": -177.823383, "tags": [ "Lorem", "consectetur", "incididunt", "occaecat", "est", "ut", "elit" ], "friends": [ { "id": 0, "name": "Mcpherson Harrington" }, { "id": 1, "name": "Kramer Johns" }, { "id": 2, "name": "Carter Montoya" } ], "greeting": "Hello, Milagros Buck! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea225e01686fe72bac39", "index": 1622, "guid": "5fb7b820-753b-4663-ac0b-fe1577c56eaf", "isActive": true, "balance": "$1,874.96", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Mitchell Berger", "gender": "male", "company": "VIRXO", "email": "mitchellberger@virxo.com", "phone": "+1 (803) 500-3279", "address": "889 Whitwell Place, Saranap, New York, 2492", "about": "Eu reprehenderit amet proident ex incididunt sit cupidatat amet commodo aute proident minim. Laborum aute sit do pariatur non nisi minim esse excepteur laborum. Cillum reprehenderit quis elit sit deserunt est exercitation deserunt et mollit reprehenderit cillum occaecat nisi. Laboris quis laborum sint officia sunt consequat eu officia. Amet amet adipisicing Lorem ullamco excepteur esse sit consequat ullamco elit labore enim.\r\n", "registered": "2014-09-13T03:08:09-12:00", "latitude": 8.801587, "longitude": -137.015688, "tags": [ "ut", "occaecat", "veniam", "sit", "voluptate", "esse", "aliquip" ], "friends": [ { "id": 0, "name": "Mccarty Osborne" }, { "id": 1, "name": "Hayes Mathis" }, { "id": 2, "name": "Cherry Melton" } ], "greeting": "Hello, Mitchell Berger! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2271271395d42d34d2", "index": 1623, "guid": "59383ade-f4d5-448a-b1e1-22aefa849e52", "isActive": true, "balance": "$1,929.75", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Rachel Eaton", "gender": "female", "company": "ZIZZLE", "email": "racheleaton@zizzle.com", "phone": "+1 (819) 533-2783", "address": "410 Gunther Place, Nadine, Guam, 1240", "about": "Magna mollit occaecat occaecat adipisicing quis magna anim pariatur eu. Consectetur tempor ad sunt est magna cillum reprehenderit labore ut commodo culpa cupidatat enim ut. Sint sit exercitation et tempor aliquip dolore labore aliqua nisi qui sit. Irure amet voluptate exercitation culpa amet fugiat cupidatat officia esse consequat elit dolore Lorem. Officia cillum proident irure dolore.\r\n", "registered": "2014-05-28T15:17:59-12:00", "latitude": 52.560145, "longitude": -97.840751, "tags": [ "eiusmod", "enim", "elit", "nisi", "Lorem", "cupidatat", "amet" ], "friends": [ { "id": 0, "name": "Whitfield Mays" }, { "id": 1, "name": "Yolanda Gill" }, { "id": 2, "name": "Dona Wheeler" } ], "greeting": "Hello, Rachel Eaton! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2200cf9160598d035d", "index": 1624, "guid": "29f069b7-96ce-4069-ae30-e53347cff5c9", "isActive": false, "balance": "$3,895.91", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Bertie Carr", "gender": "female", "company": "ACIUM", "email": "bertiecarr@acium.com", "phone": "+1 (959) 533-3084", "address": "150 Anna Court, Chase, Virgin Islands, 8969", "about": "Cupidatat nostrud voluptate do nulla ad occaecat duis aliquip elit culpa laborum excepteur cillum. Proident eu et dolor non nisi amet aliqua consectetur magna. Laboris ea ut laboris velit ex ea in adipisicing. Magna fugiat fugiat minim proident anim et esse consequat.\r\n", "registered": "2014-04-17T23:20:04-12:00", "latitude": 68.307098, "longitude": 65.764723, "tags": [ "quis", "ullamco", "quis", "adipisicing", "est", "reprehenderit", "tempor" ], "friends": [ { "id": 0, "name": "Dora Wolfe" }, { "id": 1, "name": "Stokes Huber" }, { "id": 2, "name": "Christian Pierce" } ], "greeting": "Hello, Bertie Carr! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22c8139b99b8bdf2f3", "index": 1625, "guid": "05e36d31-046d-4698-b7ba-feee3b9ea185", "isActive": true, "balance": "$1,490.13", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Clarice Merritt", "gender": "female", "company": "MAXEMIA", "email": "claricemerritt@maxemia.com", "phone": "+1 (858) 493-2885", "address": "768 Evans Street, Ivanhoe, Massachusetts, 2385", "about": "Occaecat veniam aliqua incididunt dolore ex sint sit nulla amet dolor nulla laborum in occaecat. Officia esse nisi consequat incididunt ut et. Aute adipisicing excepteur veniam do sunt in cupidatat consectetur id dolore in non laboris dolore. Enim esse ut excepteur laborum reprehenderit dolore irure eiusmod commodo non excepteur nulla aliquip. Enim proident nostrud eiusmod nisi duis et cupidatat consequat qui mollit consequat cillum ut.\r\n", "registered": "2014-06-18T17:27:21-12:00", "latitude": -13.792961, "longitude": -27.457493, "tags": [ "pariatur", "dolore", "adipisicing", "laboris", "exercitation", "occaecat", "quis" ], "friends": [ { "id": 0, "name": "Whitaker Aguirre" }, { "id": 1, "name": "Dianne Luna" }, { "id": 2, "name": "Wallace Bowen" } ], "greeting": "Hello, Clarice Merritt! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22c69b4c85531ebc57", "index": 1626, "guid": "b828814d-e981-455b-9627-acbe8d066112", "isActive": true, "balance": "$2,062.34", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Hull Mueller", "gender": "male", "company": "GENMY", "email": "hullmueller@genmy.com", "phone": "+1 (943) 420-2222", "address": "230 Croton Loop, Teasdale, Utah, 8882", "about": "Esse excepteur nisi anim tempor veniam cillum magna laborum laboris amet exercitation cupidatat deserunt. Anim consequat nostrud exercitation sit laborum deserunt reprehenderit ad ipsum. Commodo sint sunt nostrud incididunt ad consectetur amet occaecat. Nostrud ex mollit eu officia quis ad sunt ad fugiat. Ad elit ea occaecat laboris exercitation irure labore Lorem pariatur culpa ea. Excepteur ullamco labore occaecat sint consectetur reprehenderit.\r\n", "registered": "2014-06-11T04:30:04-12:00", "latitude": 50.952754, "longitude": -133.022939, "tags": [ "excepteur", "duis", "amet", "excepteur", "enim", "aute", "ad" ], "friends": [ { "id": 0, "name": "Bernadette Duncan" }, { "id": 1, "name": "Jeanne Burt" }, { "id": 2, "name": "Martinez Saunders" } ], "greeting": "Hello, Hull Mueller! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea228cb7e1b8cf94f3e4", "index": 1627, "guid": "44e2405d-4883-47e4-ad55-d5a31993c0fc", "isActive": true, "balance": "$1,994.84", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Woodard Caldwell", "gender": "male", "company": "SCENTRIC", "email": "woodardcaldwell@scentric.com", "phone": "+1 (866) 426-3152", "address": "422 Cortelyou Road, Blandburg, Montana, 2603", "about": "Est eiusmod est labore excepteur. Laborum deserunt consequat fugiat eu exercitation esse pariatur pariatur consequat labore nostrud. Duis adipisicing dolore dolore incididunt aliquip anim pariatur ut laborum consequat fugiat laboris anim.\r\n", "registered": "2014-03-02T11:03:51-13:00", "latitude": -67.254401, "longitude": -178.639421, "tags": [ "tempor", "adipisicing", "ea", "amet", "aute", "occaecat", "et" ], "friends": [ { "id": 0, "name": "Kelly House" }, { "id": 1, "name": "Beth Dudley" }, { "id": 2, "name": "Leanne Wynn" } ], "greeting": "Hello, Woodard Caldwell! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22c3d07a3c7df7aa70", "index": 1628, "guid": "c68c9f85-dea9-46be-8338-2ef0569c9272", "isActive": false, "balance": "$3,967.00", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Jeanette Wilkinson", "gender": "female", "company": "BULLJUICE", "email": "jeanettewilkinson@bulljuice.com", "phone": "+1 (929) 467-3474", "address": "695 Tompkins Avenue, Loretto, Wisconsin, 944", "about": "Laborum fugiat sint sint labore pariatur mollit. Cupidatat nisi mollit consectetur nulla veniam labore eu deserunt pariatur culpa ea id consequat. Sint qui magna veniam quis occaecat esse adipisicing consectetur tempor tempor tempor voluptate culpa.\r\n", "registered": "2014-06-03T12:27:55-12:00", "latitude": -78.593966, "longitude": 121.604593, "tags": [ "reprehenderit", "tempor", "non", "occaecat", "ad", "sit", "consectetur" ], "friends": [ { "id": 0, "name": "Alexis Bailey" }, { "id": 1, "name": "Jenna Barry" }, { "id": 2, "name": "Beatrice Atkins" } ], "greeting": "Hello, Jeanette Wilkinson! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea228c83c5e2a22fa12c", "index": 1629, "guid": "503655b3-7319-43a1-9b0b-59470b6bf556", "isActive": true, "balance": "$2,840.46", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Cathy Donaldson", "gender": "female", "company": "ELEMANTRA", "email": "cathydonaldson@elemantra.com", "phone": "+1 (887) 460-2629", "address": "575 Stone Avenue, Thatcher, Maine, 7788", "about": "Consectetur officia pariatur excepteur voluptate exercitation esse commodo cillum sunt. Non culpa nostrud incididunt pariatur consequat ipsum officia Lorem ipsum non irure est velit ad. Qui incididunt ad deserunt voluptate aliquip. Laborum ex sunt et reprehenderit minim ut aute Lorem ad non.\r\n", "registered": "2014-04-22T13:41:45-12:00", "latitude": -51.158157, "longitude": 167.482003, "tags": [ "Lorem", "eiusmod", "esse", "anim", "est", "consequat", "aute" ], "friends": [ { "id": 0, "name": "Rogers Hutchinson" }, { "id": 1, "name": "Barron Decker" }, { "id": 2, "name": "Noble Cochran" } ], "greeting": "Hello, Cathy Donaldson! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea227afa818f21ec4aa7", "index": 1630, "guid": "8aa85a05-3bea-4b90-a614-59593189cc19", "isActive": true, "balance": "$1,998.14", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Janie Mckay", "gender": "female", "company": "ASSISTIX", "email": "janiemckay@assistix.com", "phone": "+1 (975) 597-3463", "address": "327 Powell Street, Naomi, Virginia, 9405", "about": "Duis non tempor velit incididunt. Labore ex ea Lorem sit labore. Sunt ad minim ea eu ut non voluptate nisi dolore ullamco laborum tempor exercitation. Voluptate anim mollit magna ex anim elit irure ipsum enim pariatur. Id fugiat anim proident in occaecat officia eu do. Ullamco sit id velit mollit laboris sunt aliquip aliquip ullamco do duis ullamco culpa veniam.\r\n", "registered": "2014-04-30T21:30:10-12:00", "latitude": 89.776307, "longitude": -85.569298, "tags": [ "dolore", "consectetur", "cillum", "deserunt", "fugiat", "ea", "exercitation" ], "friends": [ { "id": 0, "name": "Mathews Simpson" }, { "id": 1, "name": "Raymond Everett" }, { "id": 2, "name": "Lawson Delgado" } ], "greeting": "Hello, Janie Mckay! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221fd0b01ed5e9add8", "index": 1631, "guid": "0fa6f4ac-ff2a-4777-9703-c6b83105fab3", "isActive": false, "balance": "$1,077.21", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Klein Mcgowan", "gender": "male", "company": "ARTIQ", "email": "kleinmcgowan@artiq.com", "phone": "+1 (834) 439-3777", "address": "347 Bradford Street, Virgie, Kentucky, 7420", "about": "Ipsum Lorem veniam cupidatat excepteur velit. Sunt irure aute voluptate anim aliqua commodo incididunt nostrud qui magna culpa. Irure aliqua occaecat ea qui ex mollit irure pariatur fugiat sint. Ad irure veniam tempor voluptate ad pariatur laborum commodo elit.\r\n", "registered": "2014-05-20T17:28:22-12:00", "latitude": 58.270682, "longitude": 142.096641, "tags": [ "amet", "sunt", "reprehenderit", "proident", "non", "dolor", "ullamco" ], "friends": [ { "id": 0, "name": "Sophia Fleming" }, { "id": 1, "name": "Debora Burton" }, { "id": 2, "name": "Pope Graves" } ], "greeting": "Hello, Klein Mcgowan! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22924e661336ef1df8", "index": 1632, "guid": "bd98eb7f-beab-4e8a-b33d-0756e00827f7", "isActive": false, "balance": "$2,952.66", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Madelyn Potts", "gender": "female", "company": "RENOVIZE", "email": "madelynpotts@renovize.com", "phone": "+1 (933) 593-2488", "address": "253 Montague Street, Weogufka, Connecticut, 495", "about": "Sint aliqua et ut adipisicing cillum proident laborum sit eu non nisi consequat. Nostrud in laborum commodo qui sunt Lorem ut labore reprehenderit duis. Ad excepteur in minim voluptate in fugiat. Veniam sit proident sit magna est magna ullamco ut nulla excepteur. Mollit culpa nisi magna esse occaecat ullamco proident.\r\n", "registered": "2014-08-12T11:59:38-12:00", "latitude": -37.281318, "longitude": 172.66232, "tags": [ "labore", "et", "cillum", "veniam", "ut", "laboris", "ullamco" ], "friends": [ { "id": 0, "name": "Lynn Holland" }, { "id": 1, "name": "Rose Hewitt" }, { "id": 2, "name": "Lori Porter" } ], "greeting": "Hello, Madelyn Potts! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2218df6f4ae0053604", "index": 1633, "guid": "2f472d5b-30ea-499c-afff-bcc421afd33f", "isActive": true, "balance": "$3,267.46", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Maxine Callahan", "gender": "female", "company": "UNCORP", "email": "maxinecallahan@uncorp.com", "phone": "+1 (940) 492-2012", "address": "986 Louise Terrace, Fivepointville, Mississippi, 9478", "about": "Ut consectetur amet officia deserunt commodo consequat anim consequat mollit sunt. Laborum culpa officia deserunt eu et culpa anim et. Cillum mollit sint aliquip minim nulla minim ex anim Lorem occaecat qui esse sunt sunt. In enim excepteur amet ipsum deserunt sint adipisicing commodo in nisi laborum do. Elit proident aliquip sit ad nulla proident irure. Exercitation velit fugiat exercitation nostrud sit anim minim nostrud pariatur excepteur anim culpa est. Sit elit deserunt enim elit adipisicing fugiat qui elit anim elit veniam labore mollit.\r\n", "registered": "2014-08-02T06:19:16-12:00", "latitude": -49.794022, "longitude": 53.068701, "tags": [ "ad", "nulla", "consectetur", "eiusmod", "ex", "ex", "velit" ], "friends": [ { "id": 0, "name": "Cohen Christensen" }, { "id": 1, "name": "Rena Salazar" }, { "id": 2, "name": "April Emerson" } ], "greeting": "Hello, Maxine Callahan! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea228a7c7c246ab5b5c6", "index": 1634, "guid": "d462c296-a5c0-4416-9088-523283cd5a71", "isActive": false, "balance": "$3,357.75", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Alfreda Velasquez", "gender": "female", "company": "ZOUNDS", "email": "alfredavelasquez@zounds.com", "phone": "+1 (986) 545-3681", "address": "837 Butler Place, Boyd, Washington, 5515", "about": "Laborum aliqua mollit magna magna do elit reprehenderit aliquip voluptate voluptate velit sint excepteur proident. Tempor excepteur ipsum cillum labore. Non ullamco laborum velit culpa nisi nisi et aute occaecat qui officia. Aliquip dolor enim tempor duis ipsum tempor laboris. Tempor anim excepteur qui do ex ipsum. Commodo eu esse occaecat velit sint mollit veniam nisi. Cillum deserunt ex eu sint veniam.\r\n", "registered": "2014-08-31T03:09:49-12:00", "latitude": 56.679986, "longitude": 22.741532, "tags": [ "pariatur", "culpa", "duis", "esse", "ut", "eiusmod", "cupidatat" ], "friends": [ { "id": 0, "name": "Slater Chapman" }, { "id": 1, "name": "Holcomb Jennings" }, { "id": 2, "name": "Ronda Logan" } ], "greeting": "Hello, Alfreda Velasquez! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2218f3fca15f7e32c0", "index": 1635, "guid": "29d1e905-4fb8-4c59-b870-ef4ca936fc12", "isActive": false, "balance": "$2,894.19", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Marisa Sloan", "gender": "female", "company": "TETAK", "email": "marisasloan@tetak.com", "phone": "+1 (878) 501-3789", "address": "901 Willoughby Avenue, Wilmington, Tennessee, 9860", "about": "Ut in veniam enim ad Lorem anim eiusmod dolor nulla anim incididunt. Magna cupidatat elit excepteur officia aliquip esse ea ea proident veniam. Officia cupidatat Lorem proident dolore dolore laboris minim magna ullamco nulla dolor tempor in. Veniam elit laborum laborum ullamco irure esse officia veniam nulla est esse minim. Proident esse occaecat consequat reprehenderit esse sit eu do.\r\n", "registered": "2014-02-21T12:29:45-13:00", "latitude": -25.680037, "longitude": 18.379612, "tags": [ "dolore", "ad", "ipsum", "velit", "ea", "aute", "reprehenderit" ], "friends": [ { "id": 0, "name": "Paula Lamb" }, { "id": 1, "name": "Rosemary Jensen" }, { "id": 2, "name": "Shields Carrillo" } ], "greeting": "Hello, Marisa Sloan! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22f00f48edd1cf7832", "index": 1636, "guid": "59a84e47-6c03-4380-b748-a8241d30095c", "isActive": true, "balance": "$2,642.44", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Katherine Mccarthy", "gender": "female", "company": "QUILITY", "email": "katherinemccarthy@quility.com", "phone": "+1 (888) 454-2720", "address": "594 Buffalo Avenue, Cochranville, Alabama, 8280", "about": "Non cillum cillum qui consequat. Duis ut commodo magna reprehenderit mollit esse ullamco. Labore est nisi ut Lorem aliqua.\r\n", "registered": "2014-05-08T19:06:46-12:00", "latitude": 69.57072, "longitude": 166.862852, "tags": [ "ea", "ex", "aliqua", "ut", "dolor", "duis", "sint" ], "friends": [ { "id": 0, "name": "Hardy Salas" }, { "id": 1, "name": "Wooten Castillo" }, { "id": 2, "name": "Heath Tanner" } ], "greeting": "Hello, Katherine Mccarthy! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea224f61af789a6549b8", "index": 1637, "guid": "8aed667c-742e-4a8c-a0b8-a8ecba3ddab5", "isActive": true, "balance": "$3,082.19", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Davidson Chase", "gender": "male", "company": "TEMORAK", "email": "davidsonchase@temorak.com", "phone": "+1 (882) 422-3730", "address": "184 Boynton Place, Bend, Ohio, 3788", "about": "Sunt qui sunt et ex officia veniam officia. Labore deserunt veniam ex eiusmod laboris excepteur ipsum consequat excepteur. Excepteur sunt laboris et excepteur esse cillum esse adipisicing nisi magna laboris proident pariatur dolore. Pariatur labore esse aliquip ipsum nostrud esse.\r\n", "registered": "2014-09-06T22:09:10-12:00", "latitude": 31.371641, "longitude": -4.5687, "tags": [ "non", "amet", "tempor", "officia", "sit", "in", "dolor" ], "friends": [ { "id": 0, "name": "Lakeisha Suarez" }, { "id": 1, "name": "Mercer Leonard" }, { "id": 2, "name": "Burris Castro" } ], "greeting": "Hello, Davidson Chase! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22fcab868a048dad63", "index": 1638, "guid": "108585b4-b425-4c68-8378-30df0d97604a", "isActive": true, "balance": "$2,388.89", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Preston Burks", "gender": "male", "company": "CEMENTION", "email": "prestonburks@cemention.com", "phone": "+1 (807) 446-2328", "address": "789 Dekoven Court, Welch, Hawaii, 8122", "about": "Culpa qui irure et labore cupidatat pariatur minim. Do laborum consequat proident adipisicing ea magna aliquip tempor enim excepteur. Voluptate aute ex duis sit id minim pariatur. Dolore nisi minim eiusmod cupidatat esse sunt aliqua sit laboris adipisicing Lorem et. Excepteur mollit ex exercitation excepteur eiusmod elit in consectetur sit voluptate sunt ullamco. Ullamco id sint velit tempor sint est officia et laborum.\r\n", "registered": "2014-03-28T01:34:59-13:00", "latitude": -32.097647, "longitude": 171.346179, "tags": [ "mollit", "exercitation", "dolor", "nulla", "adipisicing", "officia", "anim" ], "friends": [ { "id": 0, "name": "Patel Perry" }, { "id": 1, "name": "Jodi Hansen" }, { "id": 2, "name": "Lena Avery" } ], "greeting": "Hello, Preston Burks! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22cd8279ec54410ca8", "index": 1639, "guid": "d77c5602-28f6-4d20-84b1-3af615c0998c", "isActive": false, "balance": "$3,559.94", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Beulah Holman", "gender": "female", "company": "PROXSOFT", "email": "beulahholman@proxsoft.com", "phone": "+1 (947) 519-3456", "address": "512 Evergreen Avenue, Norvelt, New Mexico, 1285", "about": "Velit exercitation consectetur pariatur culpa consectetur deserunt sit consequat qui voluptate amet dolore non laborum. Cillum ex irure ex id ut incididunt labore officia veniam sunt. Mollit aute consequat voluptate magna. Sunt duis commodo qui proident pariatur deserunt ad sit adipisicing laborum fugiat. Id excepteur eu sunt dolore dolore. Veniam fugiat laborum sint proident Lorem do dolore ex.\r\n", "registered": "2014-01-19T16:06:32-13:00", "latitude": -71.67897, "longitude": 98.890129, "tags": [ "tempor", "labore", "adipisicing", "nostrud", "do", "consectetur", "aliquip" ], "friends": [ { "id": 0, "name": "Landry Boyle" }, { "id": 1, "name": "Fry Bauer" }, { "id": 2, "name": "Lana Avila" } ], "greeting": "Hello, Beulah Holman! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea228136964d2e1852e8", "index": 1640, "guid": "4d559c84-6353-49d0-9eb5-8e383024e68e", "isActive": true, "balance": "$1,468.99", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Mueller Vazquez", "gender": "male", "company": "GEEKY", "email": "muellervazquez@geeky.com", "phone": "+1 (848) 581-2939", "address": "401 Hart Street, Springhill, Maryland, 266", "about": "Magna dolore nostrud eiusmod voluptate non esse fugiat non est anim id occaecat velit. Voluptate exercitation mollit enim deserunt eiusmod commodo in incididunt tempor nulla ad velit. In ipsum est do excepteur magna fugiat ipsum occaecat officia ex labore. Velit proident fugiat consequat sit eu commodo voluptate tempor ad occaecat aliqua nulla. Enim velit enim magna amet ut culpa nisi occaecat dolore occaecat minim exercitation elit. Pariatur in cupidatat cupidatat quis non cupidatat nulla id amet nostrud tempor Lorem adipisicing. Ad do deserunt tempor elit consectetur velit commodo eu reprehenderit cillum.\r\n", "registered": "2014-01-13T20:38:11-13:00", "latitude": -6.646646, "longitude": 93.519445, "tags": [ "elit", "veniam", "duis", "ullamco", "mollit", "magna", "dolor" ], "friends": [ { "id": 0, "name": "Griffith Tucker" }, { "id": 1, "name": "Chase Swanson" }, { "id": 2, "name": "Tara Miles" } ], "greeting": "Hello, Mueller Vazquez! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea226d7360e21b8daffe", "index": 1641, "guid": "d4dc9797-4270-4a93-889f-1c1ca8486236", "isActive": true, "balance": "$2,629.68", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Angel Hays", "gender": "female", "company": "FUELWORKS", "email": "angelhays@fuelworks.com", "phone": "+1 (991) 442-2276", "address": "239 Kiely Place, Lorraine, Alaska, 5185", "about": "Laboris sit aliqua ipsum velit anim. Cupidatat sint duis est incididunt ea esse ipsum nisi adipisicing. Commodo sunt ea cillum eiusmod cillum magna ullamco et in velit aliquip sit laborum. Voluptate pariatur esse nisi mollit. Consectetur occaecat proident in et veniam sit mollit officia dolore non.\r\n", "registered": "2014-07-14T00:40:50-12:00", "latitude": -51.693044, "longitude": 165.579238, "tags": [ "sint", "deserunt", "proident", "esse", "velit", "reprehenderit", "ullamco" ], "friends": [ { "id": 0, "name": "Flossie Whitley" }, { "id": 1, "name": "Hazel Stone" }, { "id": 2, "name": "Tisha Villarreal" } ], "greeting": "Hello, Angel Hays! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22930b7446ce970691", "index": 1642, "guid": "61d3647d-6a83-4cd3-a5ac-0073b50cd693", "isActive": false, "balance": "$1,031.66", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Deena Howe", "gender": "female", "company": "MAROPTIC", "email": "deenahowe@maroptic.com", "phone": "+1 (949) 409-2013", "address": "665 Lott Avenue, Soudan, Arizona, 6260", "about": "Non dolore enim deserunt pariatur anim nisi Lorem duis non dolor velit. Id excepteur proident veniam ex cillum eu ullamco ipsum quis nisi. Veniam tempor excepteur quis sint exercitation ipsum ea mollit occaecat aliquip nostrud aute magna. Commodo eu est minim cillum duis duis.\r\n", "registered": "2014-06-13T19:36:52-12:00", "latitude": -35.276091, "longitude": -14.979433, "tags": [ "do", "laboris", "est", "officia", "eu", "ex", "nisi" ], "friends": [ { "id": 0, "name": "Kinney Keith" }, { "id": 1, "name": "Roxie Mayo" }, { "id": 2, "name": "Verna Rosales" } ], "greeting": "Hello, Deena Howe! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2246d343622b50e074", "index": 1643, "guid": "55389fda-7a82-4893-9311-b23e3ef9ffbd", "isActive": true, "balance": "$2,899.23", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Gena Mason", "gender": "female", "company": "BARKARAMA", "email": "genamason@barkarama.com", "phone": "+1 (892) 438-2703", "address": "784 Brighton Avenue, Troy, Federated States Of Micronesia, 3396", "about": "Quis sit enim esse nostrud tempor id consequat voluptate ut et Lorem id nostrud. Tempor pariatur deserunt incididunt do in incididunt officia elit commodo cillum consequat fugiat. Consectetur officia cillum commodo ea nisi anim esse eu esse. Culpa sunt nisi sint sint laboris tempor esse pariatur ex dolor cillum culpa. Cupidatat ad sint culpa aliquip velit id cillum eiusmod ad ex nisi.\r\n", "registered": "2014-06-04T20:06:59-12:00", "latitude": -72.286012, "longitude": -72.874133, "tags": [ "est", "est", "non", "pariatur", "incididunt", "ea", "elit" ], "friends": [ { "id": 0, "name": "Candice Warren" }, { "id": 1, "name": "Nicholson Barlow" }, { "id": 2, "name": "Effie Davis" } ], "greeting": "Hello, Gena Mason! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea229a95083347c651d7", "index": 1644, "guid": "2953c45a-3684-4a8c-987a-ec6dc2c33ae7", "isActive": true, "balance": "$2,716.64", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Brittany Solis", "gender": "female", "company": "BYTREX", "email": "brittanysolis@bytrex.com", "phone": "+1 (951) 411-3071", "address": "447 Gain Court, Driftwood, Oklahoma, 5502", "about": "Nisi reprehenderit eu aliqua laborum sint ipsum mollit ea officia est. Occaecat velit tempor incididunt minim labore velit. Proident ullamco mollit minim exercitation ut minim proident pariatur ad anim do deserunt qui. Dolore id commodo ipsum enim elit culpa velit in culpa esse. Ex est voluptate et anim laborum voluptate ex exercitation. Sint Lorem dolore id irure consectetur dolore ad.\r\n", "registered": "2014-02-09T10:54:56-13:00", "latitude": 2.894639, "longitude": -128.550706, "tags": [ "laborum", "nulla", "commodo", "incididunt", "laboris", "irure", "consectetur" ], "friends": [ { "id": 0, "name": "Tamara Riggs" }, { "id": 1, "name": "Zamora Matthews" }, { "id": 2, "name": "Henry Petty" } ], "greeting": "Hello, Brittany Solis! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22e7c745738e32161b", "index": 1645, "guid": "e5916119-2a4f-41f0-99e8-b3c805bed36c", "isActive": true, "balance": "$1,800.41", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Blackburn Marshall", "gender": "male", "company": "ECRAZE", "email": "blackburnmarshall@ecraze.com", "phone": "+1 (820) 486-2163", "address": "741 Ocean Parkway, Frank, Michigan, 7055", "about": "Consectetur occaecat ut minim laboris exercitation sunt do nisi cillum ad pariatur exercitation ipsum dolore. Irure magna esse ullamco enim velit dolor. Duis irure dolore magna proident officia elit qui consectetur laborum cillum velit id quis sunt. Labore nostrud minim ex amet Lorem ad minim culpa dolor. Amet culpa dolor nostrud excepteur proident voluptate consequat irure veniam amet sint adipisicing irure officia.\r\n", "registered": "2014-07-30T02:22:54-12:00", "latitude": 48.657672, "longitude": -149.370553, "tags": [ "minim", "duis", "ad", "quis", "nostrud", "velit", "exercitation" ], "friends": [ { "id": 0, "name": "Holder Black" }, { "id": 1, "name": "Erika Sykes" }, { "id": 2, "name": "Dawn Becker" } ], "greeting": "Hello, Blackburn Marshall! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22e3f08f85ab86dd6b", "index": 1646, "guid": "3d465021-f77c-4aaa-a7a4-7b8e1ed7395d", "isActive": false, "balance": "$2,390.88", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Alejandra Cox", "gender": "female", "company": "CORPULSE", "email": "alejandracox@corpulse.com", "phone": "+1 (863) 529-2717", "address": "378 Commercial Street, Clara, Kansas, 3274", "about": "Magna incididunt enim cillum exercitation veniam dolor incididunt id in amet labore veniam aliqua. Anim reprehenderit eiusmod deserunt enim consectetur aliqua eu pariatur laboris ad. Magna do et deserunt consectetur sunt commodo eu sit proident aliquip amet eiusmod laborum voluptate. Minim proident ad voluptate quis esse non nisi. Consectetur adipisicing eu fugiat aute sint exercitation duis sunt anim. Mollit mollit amet est adipisicing cupidatat commodo nostrud ullamco Lorem est occaecat deserunt aute.\r\n", "registered": "2014-08-24T12:46:37-12:00", "latitude": 26.4097, "longitude": 49.878969, "tags": [ "et", "nostrud", "voluptate", "reprehenderit", "adipisicing", "ipsum", "eiusmod" ], "friends": [ { "id": 0, "name": "Leonard Murphy" }, { "id": 1, "name": "Jones Kim" }, { "id": 2, "name": "Lilly Stafford" } ], "greeting": "Hello, Alejandra Cox! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea229c4c099d0bcb77b8", "index": 1647, "guid": "99fa1589-e889-45cc-af5e-9a3522558dd7", "isActive": false, "balance": "$1,655.53", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Annie Daniel", "gender": "female", "company": "NUTRALAB", "email": "anniedaniel@nutralab.com", "phone": "+1 (851) 518-3677", "address": "667 Colby Court, Dunlo, South Dakota, 519", "about": "Voluptate esse magna voluptate dolor in nostrud fugiat nisi aute nulla non nisi aute. Nostrud adipisicing elit nulla pariatur fugiat excepteur Lorem. Dolore incididunt Lorem excepteur occaecat est voluptate tempor officia dolor enim ipsum. Proident minim sunt occaecat eiusmod cillum esse esse commodo esse. Deserunt dolore sunt ex qui sint esse magna eiusmod.\r\n", "registered": "2014-04-29T10:52:08-12:00", "latitude": 8.970746, "longitude": -85.300362, "tags": [ "proident", "ex", "dolor", "elit", "eu", "est", "aute" ], "friends": [ { "id": 0, "name": "Jackson Hudson" }, { "id": 1, "name": "Blanca Snow" }, { "id": 2, "name": "Mayer Patrick" } ], "greeting": "Hello, Annie Daniel! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea221f0445377eecdbae", "index": 1648, "guid": "984ab95a-3eeb-46a1-a333-706c0ac8a6ec", "isActive": true, "balance": "$2,552.68", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Sims Padilla", "gender": "male", "company": "PHORMULA", "email": "simspadilla@phormula.com", "phone": "+1 (901) 492-2578", "address": "665 Menahan Street, Coinjock, West Virginia, 4757", "about": "Excepteur ullamco laboris consequat ipsum commodo reprehenderit id ex velit laboris non. Est aliqua do dolor ullamco aliqua velit anim. Amet Lorem et commodo ipsum. Quis eiusmod et dolor consectetur quis aute qui sint incididunt fugiat ut est adipisicing.\r\n", "registered": "2014-01-27T12:24:35-13:00", "latitude": 2.695091, "longitude": -160.552784, "tags": [ "culpa", "labore", "proident", "dolor", "commodo", "consectetur", "laboris" ], "friends": [ { "id": 0, "name": "Santos Melendez" }, { "id": 1, "name": "Tameka Vasquez" }, { "id": 2, "name": "Velez Tyler" } ], "greeting": "Hello, Sims Padilla! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22466318ba054e0ced", "index": 1649, "guid": "6be3ac00-79dd-46b7-b077-d5e1a86d018b", "isActive": false, "balance": "$2,398.71", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Jerry Mooney", "gender": "female", "company": "SCENTY", "email": "jerrymooney@scenty.com", "phone": "+1 (857) 425-2678", "address": "948 Cornelia Street, Orin, Texas, 9853", "about": "Adipisicing ut ipsum aute do fugiat fugiat cupidatat ad occaecat ea deserunt. Occaecat labore sint fugiat anim enim. Occaecat Lorem sint velit cillum nulla duis deserunt aliqua elit. Dolore deserunt proident Lorem fugiat sunt est aliqua ea sunt sit duis dolor velit duis. Do dolor aliquip deserunt consequat ut duis quis ad ullamco ex do elit.\r\n", "registered": "2014-08-24T14:54:02-12:00", "latitude": 61.651426, "longitude": -98.097847, "tags": [ "deserunt", "cillum", "aliqua", "consequat", "incididunt", "esse", "amet" ], "friends": [ { "id": 0, "name": "Haley Garrison" }, { "id": 1, "name": "Mayo Best" }, { "id": 2, "name": "Morgan Mccormick" } ], "greeting": "Hello, Jerry Mooney! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22481c0b0e389ab4c3", "index": 1650, "guid": "bb66e27a-7f0d-4587-9105-4538722ab5f6", "isActive": false, "balance": "$2,529.99", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Burke Cross", "gender": "male", "company": "CAPSCREEN", "email": "burkecross@capscreen.com", "phone": "+1 (889) 555-2784", "address": "383 Frost Street, Buxton, Oregon, 3857", "about": "Ipsum eu duis pariatur id veniam aliquip exercitation deserunt duis ullamco. Laboris anim dolore labore aute enim exercitation elit est cupidatat reprehenderit tempor sunt id. Pariatur dolore laboris nulla elit nisi cillum incididunt voluptate eiusmod. Amet irure elit sit officia commodo labore. Nisi sunt velit est ullamco nulla magna mollit est duis id. Occaecat nisi officia do quis in quis nisi magna. Do commodo Lorem tempor cupidatat officia laboris adipisicing cillum mollit amet aliquip elit aliquip.\r\n", "registered": "2014-05-01T18:09:43-12:00", "latitude": 63.178922, "longitude": -132.114563, "tags": [ "occaecat", "non", "commodo", "et", "ea", "non", "nostrud" ], "friends": [ { "id": 0, "name": "Huber Albert" }, { "id": 1, "name": "Rowe Newton" }, { "id": 2, "name": "Tyson Kemp" } ], "greeting": "Hello, Burke Cross! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2263789f0a741b0d26", "index": 1651, "guid": "8604601e-7699-4053-9cd8-4b2ab97e05fa", "isActive": false, "balance": "$1,044.77", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Ferrell Nelson", "gender": "male", "company": "KOFFEE", "email": "ferrellnelson@koffee.com", "phone": "+1 (817) 529-3553", "address": "174 Kosciusko Street, Shawmut, Nevada, 1236", "about": "Sit incididunt id et ullamco eu in laborum ut incididunt sint quis elit. Do excepteur ipsum incididunt voluptate ut elit non nostrud dolor duis dolore proident consectetur laboris. Excepteur esse et do elit nisi velit pariatur nostrud veniam est labore sunt. Occaecat nostrud occaecat nisi esse reprehenderit excepteur et aliquip pariatur ex fugiat ullamco. Non labore ut dolore quis. Cupidatat laboris consequat irure magna aliquip proident veniam laborum eiusmod ea laborum et ut occaecat.\r\n", "registered": "2014-06-06T23:17:42-12:00", "latitude": 50.281124, "longitude": 113.116313, "tags": [ "dolor", "non", "enim", "mollit", "ipsum", "sint", "do" ], "friends": [ { "id": 0, "name": "Gilliam Duke" }, { "id": 1, "name": "Lynne Perez" }, { "id": 2, "name": "Clay Hoffman" } ], "greeting": "Hello, Ferrell Nelson! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22ee39c3ca4dca60ef", "index": 1652, "guid": "3c827dd5-bfc8-4bad-8a9e-aba3452bf87d", "isActive": true, "balance": "$3,385.63", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Deloris Waller", "gender": "female", "company": "XIXAN", "email": "deloriswaller@xixan.com", "phone": "+1 (911) 512-2036", "address": "606 Clara Street, Boonville, Minnesota, 384", "about": "Ut id qui laboris culpa deserunt reprehenderit qui in ea veniam consequat in. Nostrud consectetur occaecat duis qui cupidatat consectetur culpa elit eiusmod qui dolor labore irure. Nostrud esse minim commodo nostrud deserunt deserunt culpa in reprehenderit sunt ut. Do id velit eiusmod qui sit incididunt dolore tempor fugiat consectetur magna sunt enim reprehenderit. Elit minim culpa labore nisi eu laboris deserunt Lorem sunt laborum. Minim quis elit est sint. Adipisicing deserunt eu deserunt sunt ea.\r\n", "registered": "2014-02-20T05:59:16-13:00", "latitude": 59.039604, "longitude": 133.718085, "tags": [ "sint", "irure", "amet", "aliquip", "ad", "culpa", "do" ], "friends": [ { "id": 0, "name": "Wall Bowman" }, { "id": 1, "name": "Shanna Morales" }, { "id": 2, "name": "Morrison Mejia" } ], "greeting": "Hello, Deloris Waller! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea223494842b3393fb19", "index": 1653, "guid": "80ce4876-cb45-42ea-8791-9c7290fe44b4", "isActive": true, "balance": "$1,469.65", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Bowman Hurst", "gender": "male", "company": "ACCUPHARM", "email": "bowmanhurst@accupharm.com", "phone": "+1 (814) 553-3430", "address": "536 Wyckoff Street, Chicopee, Missouri, 6379", "about": "Esse dolore commodo adipisicing aute cillum laborum duis ipsum excepteur anim officia dolor. Id culpa occaecat irure proident. Tempor cupidatat fugiat culpa duis eiusmod reprehenderit aliquip. Occaecat quis pariatur voluptate est adipisicing tempor magna eu incididunt. Aute eiusmod ipsum aliqua culpa laboris aute exercitation. Non voluptate id elit pariatur.\r\n", "registered": "2014-03-01T20:23:35-13:00", "latitude": -51.431196, "longitude": -69.355784, "tags": [ "commodo", "fugiat", "reprehenderit", "sint", "excepteur", "duis", "ea" ], "friends": [ { "id": 0, "name": "Marla Kennedy" }, { "id": 1, "name": "Wright Farrell" }, { "id": 2, "name": "Oneil Doyle" } ], "greeting": "Hello, Bowman Hurst! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221f3c4291038fa023", "index": 1654, "guid": "f6b8da06-4cbc-4d34-85b4-c3a172a8f190", "isActive": true, "balance": "$1,198.10", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Pierce Hoover", "gender": "male", "company": "URBANSHEE", "email": "piercehoover@urbanshee.com", "phone": "+1 (821) 567-2359", "address": "695 Tampa Court, Shrewsbury, Rhode Island, 6920", "about": "Enim exercitation esse minim ipsum laboris amet officia in. Elit elit laboris cupidatat culpa eu pariatur sint. Voluptate dolor aliquip do reprehenderit tempor dolore nostrud quis nulla Lorem ipsum. Aute aliquip ad proident amet nostrud qui. Lorem reprehenderit exercitation esse sunt eiusmod ullamco eiusmod. Non aliqua qui nisi enim est occaecat amet ipsum sint. Enim dolor elit sunt fugiat nulla quis proident ut sunt velit voluptate.\r\n", "registered": "2014-03-15T07:53:55-13:00", "latitude": -24.465985, "longitude": 113.068314, "tags": [ "magna", "excepteur", "minim", "culpa", "labore", "veniam", "et" ], "friends": [ { "id": 0, "name": "Anderson Dalton" }, { "id": 1, "name": "Robbie Mcdowell" }, { "id": 2, "name": "Pearson Marsh" } ], "greeting": "Hello, Pierce Hoover! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22129a1c21ee7c6601", "index": 1655, "guid": "007a41fa-c10d-4a4d-ad06-29c18a7b0930", "isActive": false, "balance": "$1,158.87", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Cortez Juarez", "gender": "male", "company": "TRANSLINK", "email": "cortezjuarez@translink.com", "phone": "+1 (898) 493-2341", "address": "900 Troy Avenue, Sugartown, Florida, 2551", "about": "Amet nisi sunt amet duis esse. Minim minim excepteur esse et nulla cillum ut duis ipsum fugiat elit et ea dolor. Esse sint elit proident consectetur duis magna ipsum ut velit mollit. Reprehenderit ea non irure amet nisi non tempor sit duis occaecat ullamco. Amet qui qui magna nostrud deserunt id fugiat est labore Lorem elit dolor. Laborum aliquip eiusmod non proident ad.\r\n", "registered": "2014-04-07T15:54:53-12:00", "latitude": 52.158199, "longitude": -12.084815, "tags": [ "eiusmod", "consequat", "ad", "anim", "nulla", "do", "amet" ], "friends": [ { "id": 0, "name": "Deanna Dillard" }, { "id": 1, "name": "Tonya Lee" }, { "id": 2, "name": "Matthews Mayer" } ], "greeting": "Hello, Cortez Juarez! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22a959fe29285bdb83", "index": 1656, "guid": "0cd27170-be24-4f4a-aa01-38aa0a5ebf63", "isActive": false, "balance": "$3,279.32", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Padilla Beard", "gender": "male", "company": "MULTIFLEX", "email": "padillabeard@multiflex.com", "phone": "+1 (966) 549-3602", "address": "998 Ridgewood Place, Elbert, North Carolina, 3766", "about": "Sit velit ex nostrud dolore tempor ea nostrud culpa culpa velit. Consectetur qui sunt pariatur adipisicing nisi qui consectetur cillum exercitation mollit mollit nulla do velit. Ea Lorem esse qui aute dolore pariatur reprehenderit nulla reprehenderit pariatur. Dolore nulla proident occaecat voluptate pariatur est nulla sunt esse minim culpa mollit voluptate. Officia cillum irure reprehenderit sit commodo ad. Consectetur in eiusmod mollit nisi mollit ipsum anim.\r\n", "registered": "2014-06-11T18:14:52-12:00", "latitude": 69.598507, "longitude": -156.164861, "tags": [ "aliquip", "ad", "magna", "et", "et", "aliquip", "id" ], "friends": [ { "id": 0, "name": "Snow Randolph" }, { "id": 1, "name": "Saunders Rocha" }, { "id": 2, "name": "Sharlene Owen" } ], "greeting": "Hello, Padilla Beard! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2292c7149c4963d0ed", "index": 1657, "guid": "30f3c09b-9fd4-4cf0-9328-a263cdaaaa86", "isActive": true, "balance": "$2,807.40", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Claudette Justice", "gender": "female", "company": "DATAGEN", "email": "claudettejustice@datagen.com", "phone": "+1 (960) 444-3530", "address": "508 Narrows Avenue, Groton, New Hampshire, 792", "about": "Fugiat proident labore nisi excepteur proident laborum eu cillum excepteur et. Occaecat nisi dolore eiusmod officia velit nulla pariatur ex aute ipsum fugiat sit in officia. Ipsum duis irure ad cupidatat do ea ullamco occaecat. Incididunt qui laborum exercitation enim enim. Irure excepteur magna pariatur aute commodo et eiusmod quis nisi eiusmod in eiusmod irure incididunt.\r\n", "registered": "2014-09-22T18:48:04-12:00", "latitude": -3.652648, "longitude": 159.190064, "tags": [ "mollit", "cupidatat", "sit", "veniam", "ullamco", "ea", "ut" ], "friends": [ { "id": 0, "name": "Kaitlin Walters" }, { "id": 1, "name": "Zimmerman Moon" }, { "id": 2, "name": "Kimberley Byers" } ], "greeting": "Hello, Claudette Justice! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22c91e376c12c816b2", "index": 1658, "guid": "8e4d23d1-5b2e-4e33-ba93-5bc3fe32ce47", "isActive": true, "balance": "$2,332.91", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Brittney Mcdaniel", "gender": "female", "company": "PYRAMI", "email": "brittneymcdaniel@pyrami.com", "phone": "+1 (961) 468-2493", "address": "190 Conklin Avenue, Marne, Arkansas, 1139", "about": "Culpa ex est proident laboris incididunt dolor ut nulla cillum incididunt id. Reprehenderit in qui tempor laboris reprehenderit mollit in. Qui id sunt occaecat ut et ad nisi sunt do. Elit excepteur tempor ipsum elit. Mollit id proident consectetur ad proident minim ipsum amet eu. Esse minim ad ad eiusmod irure magna officia magna dolore.\r\n", "registered": "2014-04-09T23:58:29-12:00", "latitude": -7.102566, "longitude": 23.56283, "tags": [ "in", "aliqua", "cupidatat", "excepteur", "proident", "dolore", "pariatur" ], "friends": [ { "id": 0, "name": "Cook Pearson" }, { "id": 1, "name": "Ofelia Mcintosh" }, { "id": 2, "name": "Marsh Robertson" } ], "greeting": "Hello, Brittney Mcdaniel! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22915463c4446e4d4e", "index": 1659, "guid": "1ff1f7c3-9db7-4a67-a654-6569b90cc39e", "isActive": true, "balance": "$3,255.40", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Katelyn Sherman", "gender": "female", "company": "COMTRAK", "email": "katelynsherman@comtrak.com", "phone": "+1 (978) 451-2448", "address": "180 Bassett Avenue, Dixonville, Iowa, 2752", "about": "Exercitation cupidatat quis veniam mollit eiusmod occaecat do magna voluptate Lorem Lorem. Cupidatat voluptate non ut anim occaecat ipsum culpa fugiat anim cillum irure ex ullamco qui. Mollit officia voluptate sint sint occaecat. In ea duis elit reprehenderit ea laboris id. Eiusmod esse culpa sint dolor do est ad laboris irure aliquip esse. Id sunt nisi veniam dolor id exercitation voluptate in nisi sunt tempor magna.\r\n", "registered": "2014-04-04T16:20:17-13:00", "latitude": 83.102119, "longitude": 69.402399, "tags": [ "ex", "fugiat", "anim", "pariatur", "nisi", "amet", "voluptate" ], "friends": [ { "id": 0, "name": "Alexandria Gillespie" }, { "id": 1, "name": "Burnett Glass" }, { "id": 2, "name": "Monique Wells" } ], "greeting": "Hello, Katelyn Sherman! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221542b82fad5b3c89", "index": 1660, "guid": "4ceab311-ffa1-456d-b888-4c325833aad0", "isActive": false, "balance": "$1,443.51", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Andrea Love", "gender": "female", "company": "PAPRIKUT", "email": "andrealove@paprikut.com", "phone": "+1 (880) 572-2176", "address": "917 Little Street, Makena, Nebraska, 1384", "about": "In ex elit ullamco ipsum duis adipisicing laborum aliqua officia magna nisi mollit anim enim. Ea consectetur consequat aliqua nulla excepteur adipisicing est sunt aliqua magna qui incididunt minim. Et magna enim ad officia excepteur dolore et adipisicing irure velit ut aute.\r\n", "registered": "2014-04-04T15:20:03-13:00", "latitude": -85.469503, "longitude": 136.371688, "tags": [ "eiusmod", "deserunt", "commodo", "nulla", "incididunt", "consectetur", "nostrud" ], "friends": [ { "id": 0, "name": "Christa Owens" }, { "id": 1, "name": "Farrell Levy" }, { "id": 2, "name": "Alicia Dillon" } ], "greeting": "Hello, Andrea Love! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea227c48623f07fcd655", "index": 1661, "guid": "22cca5df-5023-4cd4-81d8-1d9757ca7124", "isActive": true, "balance": "$2,629.28", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Mary Williamson", "gender": "female", "company": "KINETICUT", "email": "marywilliamson@kineticut.com", "phone": "+1 (912) 497-2949", "address": "601 Rock Street, Ironton, District Of Columbia, 862", "about": "Id sit ex cillum in labore ex est fugiat. Voluptate cupidatat cupidatat dolore commodo ea consequat elit quis laborum. Commodo adipisicing aliqua deserunt cillum dolore nulla do. Nostrud deserunt eu esse excepteur sit fugiat laboris amet ut occaecat et eu aute incididunt.\r\n", "registered": "2014-07-30T17:00:38-12:00", "latitude": 4.549568, "longitude": -16.750504, "tags": [ "do", "laboris", "tempor", "est", "anim", "qui", "nulla" ], "friends": [ { "id": 0, "name": "Edwards Ware" }, { "id": 1, "name": "Day Alston" }, { "id": 2, "name": "Tammie Nieves" } ], "greeting": "Hello, Mary Williamson! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22746ec54c88b4ab88", "index": 1662, "guid": "b677c49d-c4d1-4d67-8fe4-99636ed63b90", "isActive": true, "balance": "$3,537.87", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Mcgowan Deleon", "gender": "male", "company": "PERKLE", "email": "mcgowandeleon@perkle.com", "phone": "+1 (973) 598-2399", "address": "924 Perry Place, Blende, New Jersey, 8426", "about": "Amet incididunt mollit nisi eu laborum magna qui labore eu. Deserunt et esse excepteur proident ipsum nulla laborum. Irure mollit sint cillum nulla fugiat qui proident sit veniam aute id officia quis sit. Ex dolor sunt nisi qui magna et officia consectetur mollit Lorem adipisicing qui labore. Anim sint magna proident fugiat ex tempor voluptate sit esse labore. Tempor minim non in velit.\r\n", "registered": "2014-05-31T00:14:34-12:00", "latitude": -72.662322, "longitude": -146.290542, "tags": [ "sunt", "dolore", "voluptate", "consequat", "culpa", "nostrud", "fugiat" ], "friends": [ { "id": 0, "name": "Beck Parrish" }, { "id": 1, "name": "Rene Farley" }, { "id": 2, "name": "Vasquez Pugh" } ], "greeting": "Hello, Mcgowan Deleon! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2207ddccced5adcfd9", "index": 1663, "guid": "5a751fcb-d382-4c49-8486-34d3b2d63731", "isActive": true, "balance": "$2,542.54", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Natalia Barber", "gender": "female", "company": "XYMONK", "email": "nataliabarber@xymonk.com", "phone": "+1 (857) 576-2560", "address": "341 Wogan Terrace, Babb, Palau, 5087", "about": "Mollit enim deserunt excepteur pariatur amet. Velit laborum pariatur aute magna adipisicing sunt amet dolore anim elit ea enim consequat. Pariatur irure pariatur sit consequat occaecat officia ipsum. Cillum incididunt adipisicing voluptate mollit non officia. Excepteur consectetur excepteur nisi ea eiusmod incididunt labore pariatur dolor minim. Labore fugiat consectetur qui adipisicing exercitation enim in deserunt commodo.\r\n", "registered": "2014-03-07T11:41:58-13:00", "latitude": 68.310931, "longitude": -109.168257, "tags": [ "et", "sint", "consectetur", "esse", "magna", "quis", "Lorem" ], "friends": [ { "id": 0, "name": "Cecilia Hayes" }, { "id": 1, "name": "Hicks Pennington" }, { "id": 2, "name": "Hopkins May" } ], "greeting": "Hello, Natalia Barber! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2253b3b0f9dadc38b9", "index": 1664, "guid": "ec35bddf-3e0f-475d-ba8f-ad092f9b0585", "isActive": false, "balance": "$1,722.79", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Jacqueline Hyde", "gender": "female", "company": "ZEROLOGY", "email": "jacquelinehyde@zerology.com", "phone": "+1 (932) 556-2671", "address": "243 Clove Road, Greenfields, Puerto Rico, 908", "about": "Aliquip fugiat officia ut exercitation pariatur excepteur tempor proident incididunt mollit aliquip dolore. Anim aliqua elit fugiat esse reprehenderit laborum excepteur qui qui proident nostrud tempor cupidatat. Laboris exercitation deserunt anim sint id veniam sunt occaecat dolore laboris ullamco excepteur cillum. Pariatur ullamco incididunt excepteur magna elit tempor amet enim officia proident quis. Deserunt sint magna velit voluptate laboris.\r\n", "registered": "2014-07-14T06:26:25-12:00", "latitude": 74.374042, "longitude": 70.628868, "tags": [ "laboris", "sunt", "Lorem", "consectetur", "non", "fugiat", "qui" ], "friends": [ { "id": 0, "name": "Marcy Nunez" }, { "id": 1, "name": "Kaufman Hodge" }, { "id": 2, "name": "Heidi Dominguez" } ], "greeting": "Hello, Jacqueline Hyde! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22f5b8cc097d0b07a8", "index": 1665, "guid": "33f154f1-3179-4b2c-83e5-9997255f04bc", "isActive": true, "balance": "$1,427.49", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Rosa Mitchell", "gender": "male", "company": "MIXERS", "email": "rosamitchell@mixers.com", "phone": "+1 (975) 570-3664", "address": "681 Ridge Boulevard, Grantville, California, 7330", "about": "Cupidatat non dolor excepteur ullamco velit ipsum. Do incididunt laboris adipisicing minim velit anim fugiat reprehenderit labore. Commodo nisi ut aliquip incididunt laborum velit irure cillum duis tempor. Nulla nulla eiusmod non nisi occaecat consectetur. Adipisicing irure do in consequat ex laborum non culpa consectetur proident commodo eu officia. Esse est ex Lorem enim nisi proident do mollit ea fugiat.\r\n", "registered": "2014-09-16T10:11:01-12:00", "latitude": -41.583681, "longitude": -144.253699, "tags": [ "est", "officia", "culpa", "in", "qui", "ad", "velit" ], "friends": [ { "id": 0, "name": "Brianna Rogers" }, { "id": 1, "name": "Skinner Odom" }, { "id": 2, "name": "Hodges Brock" } ], "greeting": "Hello, Rosa Mitchell! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea229b54ad8000c23e65", "index": 1666, "guid": "811e30e9-dc57-4213-87ea-26695b988b94", "isActive": false, "balance": "$1,992.59", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Mcmahon Dixon", "gender": "male", "company": "QUOTEZART", "email": "mcmahondixon@quotezart.com", "phone": "+1 (870) 418-3193", "address": "221 Ryerson Street, Lafferty, Vermont, 3219", "about": "Amet aute elit aliqua aute consequat ipsum amet fugiat consequat ad adipisicing irure dolor adipisicing. Elit fugiat labore enim incididunt cillum. Pariatur laboris nulla ex fugiat officia veniam esse eiusmod dolor. Amet laborum eiusmod adipisicing duis. Cillum laborum laborum in sint ex ipsum sint irure culpa dolore eiusmod in excepteur. Exercitation et proident duis est qui dolore sit reprehenderit ullamco veniam eiusmod magna ex.\r\n", "registered": "2014-02-13T20:32:01-13:00", "latitude": -61.395282, "longitude": 78.346683, "tags": [ "commodo", "consequat", "consectetur", "non", "consequat", "dolore", "culpa" ], "friends": [ { "id": 0, "name": "Aguirre Barnes" }, { "id": 1, "name": "Montgomery Massey" }, { "id": 2, "name": "Riggs Morton" } ], "greeting": "Hello, Mcmahon Dixon! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22d0ed6e35e7b95021", "index": 1667, "guid": "8e14579b-c5db-4f7c-9e3e-bed761ab4234", "isActive": false, "balance": "$3,013.88", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Sykes Landry", "gender": "male", "company": "NURALI", "email": "sykeslandry@nurali.com", "phone": "+1 (991) 575-3560", "address": "997 Thatford Avenue, Klagetoh, Indiana, 6096", "about": "Enim pariatur ex laborum ad culpa labore tempor ut quis consectetur incididunt culpa. Mollit adipisicing cupidatat nisi officia aute irure minim excepteur consequat irure magna aliquip. In aute nisi aliqua esse exercitation excepteur eu voluptate. Ullamco cillum aliqua ut nostrud. Ut ex ut proident excepteur magna culpa anim consectetur sunt. Do minim proident eiusmod aliqua nisi anim culpa.\r\n", "registered": "2014-09-05T05:02:20-12:00", "latitude": 32.370612, "longitude": 71.48698, "tags": [ "adipisicing", "tempor", "mollit", "elit", "commodo", "laborum", "deserunt" ], "friends": [ { "id": 0, "name": "Shelby Garcia" }, { "id": 1, "name": "Cathryn Bowers" }, { "id": 2, "name": "Houston Whitaker" } ], "greeting": "Hello, Sykes Landry! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22bfbc5b735bb2d336", "index": 1668, "guid": "9d645876-f4a4-4415-89ec-61dd05f9f5ee", "isActive": false, "balance": "$3,870.31", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Kane Gordon", "gender": "male", "company": "QUINTITY", "email": "kanegordon@quintity.com", "phone": "+1 (838) 527-3507", "address": "903 Tillary Street, Movico, Illinois, 7352", "about": "Cillum eiusmod cillum qui eiusmod mollit consectetur laborum labore dolore. Reprehenderit velit exercitation Lorem ad. Aliquip aute nisi sit amet in dolor elit proident enim et fugiat. Sint qui in ea reprehenderit cupidatat. Proident laboris sunt magna nostrud proident ad irure minim ipsum nisi nulla ut laboris occaecat. Ad quis velit ea ad velit nisi quis minim.\r\n", "registered": "2014-06-20T13:04:51-12:00", "latitude": -44.704769, "longitude": -85.255076, "tags": [ "ut", "non", "sint", "eiusmod", "aliqua", "velit", "enim" ], "friends": [ { "id": 0, "name": "Candace Downs" }, { "id": 1, "name": "Daisy Rose" }, { "id": 2, "name": "Mayra Blackwell" } ], "greeting": "Hello, Kane Gordon! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2235b2744b4e118922", "index": 1669, "guid": "15a61e51-cbcd-44f4-84b7-096b1d568c95", "isActive": true, "balance": "$3,022.68", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Marisol Steele", "gender": "female", "company": "GEEKWAGON", "email": "marisolsteele@geekwagon.com", "phone": "+1 (952) 407-3485", "address": "751 Cleveland Street, Chaparrito, South Carolina, 6994", "about": "Proident enim officia excepteur enim. Veniam laboris culpa commodo qui sit cupidatat ad occaecat ad aliqua incididunt. Magna culpa commodo non ipsum labore ad pariatur anim reprehenderit nulla elit in est proident.\r\n", "registered": "2014-03-20T07:49:42-13:00", "latitude": -72.052298, "longitude": 150.21474, "tags": [ "velit", "laboris", "ipsum", "dolor", "ut", "quis", "nisi" ], "friends": [ { "id": 0, "name": "Lott Dorsey" }, { "id": 1, "name": "Linda Burch" }, { "id": 2, "name": "Osborne Miller" } ], "greeting": "Hello, Marisol Steele! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2294055ea552f71eaf", "index": 1670, "guid": "451877d7-fab8-4a31-95ff-224e28807a86", "isActive": false, "balance": "$3,426.46", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Rice Gross", "gender": "male", "company": "ZIALACTIC", "email": "ricegross@zialactic.com", "phone": "+1 (898) 430-3470", "address": "676 Neptune Avenue, Coventry, American Samoa, 1610", "about": "Ut amet minim laboris magna qui proident consectetur exercitation esse Lorem commodo laborum. Dolor proident ipsum eu aliqua consequat consectetur ex eu laboris sunt. Ea veniam id qui voluptate laboris aliquip ullamco consequat consectetur id laboris cupidatat officia.\r\n", "registered": "2014-03-26T17:24:22-13:00", "latitude": -76.823791, "longitude": 38.497643, "tags": [ "incididunt", "reprehenderit", "sunt", "voluptate", "ad", "ex", "incididunt" ], "friends": [ { "id": 0, "name": "Joy Rowe" }, { "id": 1, "name": "Melissa Fitzgerald" }, { "id": 2, "name": "Hope Burris" } ], "greeting": "Hello, Rice Gross! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2287d0c2e853f4883c", "index": 1671, "guid": "04ad8bf4-cf8a-4096-813b-05db349a4c08", "isActive": true, "balance": "$2,500.22", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Dawson Case", "gender": "male", "company": "ROCKABYE", "email": "dawsoncase@rockabye.com", "phone": "+1 (823) 420-2791", "address": "833 Lyme Avenue, Enlow, Delaware, 6057", "about": "Ea deserunt sunt officia culpa in sit laboris adipisicing nostrud qui est. Ullamco ullamco ullamco veniam nulla sunt ipsum nisi voluptate ipsum voluptate Lorem quis tempor incididunt. Pariatur incididunt et aute excepteur ut culpa laborum dolor occaecat ad duis dolore labore enim. Enim ea magna magna aute velit esse nisi do. Excepteur pariatur laborum veniam eiusmod non.\r\n", "registered": "2014-02-10T15:17:37-13:00", "latitude": 62.616752, "longitude": -119.220029, "tags": [ "commodo", "est", "labore", "dolore", "ad", "minim", "consectetur" ], "friends": [ { "id": 0, "name": "Rae Hines" }, { "id": 1, "name": "Kelli Contreras" }, { "id": 2, "name": "Reilly Chen" } ], "greeting": "Hello, Dawson Case! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2259efa2f628c26760", "index": 1672, "guid": "8b4e639d-31d9-4216-89fe-e1b846260e45", "isActive": true, "balance": "$2,787.69", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Georgette Bean", "gender": "female", "company": "KYAGORO", "email": "georgettebean@kyagoro.com", "phone": "+1 (853) 436-2049", "address": "207 Clark Street, Welda, Pennsylvania, 7286", "about": "Ullamco ullamco nisi aute proident mollit dolore nostrud sit incididunt. Consectetur adipisicing ullamco elit amet in duis sunt. Cillum occaecat veniam ad labore consequat consectetur est proident adipisicing proident ut officia occaecat occaecat. Ut consectetur velit ut officia sunt aute id est enim. Nisi tempor nostrud sint ea proident.\r\n", "registered": "2014-01-10T17:49:11-13:00", "latitude": -47.62505, "longitude": 73.668154, "tags": [ "laboris", "aliquip", "id", "Lorem", "adipisicing", "deserunt", "sunt" ], "friends": [ { "id": 0, "name": "Celina Burns" }, { "id": 1, "name": "Fanny Bruce" }, { "id": 2, "name": "Mable Gilliam" } ], "greeting": "Hello, Georgette Bean! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22ecceec7476c95d9a", "index": 1673, "guid": "795d5372-10dd-4f33-87e7-a726ceb7de2d", "isActive": false, "balance": "$2,706.46", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Amparo Weiss", "gender": "female", "company": "EXTRAGENE", "email": "amparoweiss@extragene.com", "phone": "+1 (879) 484-2140", "address": "251 Everit Street, Elwood, Georgia, 4232", "about": "Dolor do exercitation ipsum adipisicing eiusmod magna ad. Nulla duis labore ut labore sunt. Adipisicing consectetur cupidatat enim minim Lorem aliquip exercitation occaecat veniam ipsum labore id. Magna quis ea dolore id enim exercitation est et pariatur. Ipsum ad labore cillum commodo culpa excepteur ut in reprehenderit. Eiusmod deserunt exercitation aute ad eu fugiat. Sunt cupidatat anim laborum proident voluptate velit laborum qui officia minim sint id consectetur consectetur.\r\n", "registered": "2014-05-27T18:44:50-12:00", "latitude": 26.578888, "longitude": 119.697055, "tags": [ "dolor", "sint", "ullamco", "adipisicing", "nisi", "nisi", "sit" ], "friends": [ { "id": 0, "name": "Oneill Sharp" }, { "id": 1, "name": "Yvette Rivera" }, { "id": 2, "name": "Calderon Hobbs" } ], "greeting": "Hello, Amparo Weiss! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2216dd652b0387fbb4", "index": 1674, "guid": "a1af1cc0-8732-4ae7-92c3-f0c940002536", "isActive": true, "balance": "$3,771.58", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Claudia Parker", "gender": "female", "company": "IZZBY", "email": "claudiaparker@izzby.com", "phone": "+1 (971) 524-3683", "address": "300 Glenwood Road, Belfair, North Dakota, 9958", "about": "Dolore et officia veniam laborum id eu tempor voluptate fugiat Lorem velit nostrud eu. Ea excepteur mollit irure occaecat duis. Sint est Lorem ipsum cillum mollit ipsum aute occaecat aliqua enim tempor sit. Incididunt consectetur exercitation consectetur anim eiusmod ipsum voluptate proident nostrud dolore veniam ipsum irure incididunt. Lorem veniam sunt qui enim culpa consectetur sunt sunt mollit.\r\n", "registered": "2014-05-17T01:19:00-12:00", "latitude": -35.69141, "longitude": -62.328959, "tags": [ "officia", "sint", "nulla", "adipisicing", "nostrud", "aliqua", "elit" ], "friends": [ { "id": 0, "name": "Lindsey West" }, { "id": 1, "name": "Christian Peck" }, { "id": 2, "name": "Gilmore Hogan" } ], "greeting": "Hello, Claudia Parker! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22d3aa11178573b27f", "index": 1675, "guid": "7137e0e4-143d-4773-a778-dc2537139406", "isActive": true, "balance": "$1,461.93", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Casey Coffey", "gender": "male", "company": "JIMBIES", "email": "caseycoffey@jimbies.com", "phone": "+1 (904) 572-2608", "address": "988 Legion Street, Freetown, Louisiana, 2078", "about": "Eu cillum sunt id voluptate sint ea nisi commodo sint. Ea dolor aute ex in deserunt veniam consequat excepteur. Pariatur cupidatat exercitation voluptate mollit quis exercitation occaecat consectetur id cillum id sit ad nisi.\r\n", "registered": "2014-08-01T12:37:08-12:00", "latitude": -3.096263, "longitude": -104.483665, "tags": [ "cillum", "ipsum", "cillum", "exercitation", "voluptate", "aliquip", "esse" ], "friends": [ { "id": 0, "name": "Boone Snider" }, { "id": 1, "name": "Tammi Flores" }, { "id": 2, "name": "Mindy Harrell" } ], "greeting": "Hello, Casey Coffey! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea226443e444ec34535d", "index": 1676, "guid": "d454e42a-fe5c-4813-ac21-be09f4734794", "isActive": true, "balance": "$1,986.62", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Silvia Henson", "gender": "female", "company": "EXODOC", "email": "silviahenson@exodoc.com", "phone": "+1 (947) 411-3670", "address": "876 Harden Street, Darbydale, Northern Mariana Islands, 2201", "about": "Dolor sint nisi consectetur excepteur. Tempor quis labore ut non do. Deserunt magna qui commodo deserunt minim excepteur dolor anim do amet quis.\r\n", "registered": "2014-01-05T01:53:14-13:00", "latitude": 41.150839, "longitude": 123.568242, "tags": [ "labore", "qui", "voluptate", "id", "minim", "ipsum", "elit" ], "friends": [ { "id": 0, "name": "Campbell Booth" }, { "id": 1, "name": "Jeannine Willis" }, { "id": 2, "name": "Moody Carpenter" } ], "greeting": "Hello, Silvia Henson! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22f4256fe29aeca8ea", "index": 1677, "guid": "b309166b-b475-4c1e-a9ad-ccc3791be184", "isActive": true, "balance": "$3,198.57", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Walker Pena", "gender": "male", "company": "OVERPLEX", "email": "walkerpena@overplex.com", "phone": "+1 (938) 508-2556", "address": "449 Front Street, Riner, Colorado, 7530", "about": "Nisi aute anim dolor dolor irure in enim. Deserunt labore qui laboris officia magna. Culpa commodo dolor Lorem mollit ex commodo. Lorem adipisicing commodo sunt in veniam aliquip eu. Do dolor laboris excepteur fugiat esse magna. Aute est mollit et commodo proident Lorem.\r\n", "registered": "2014-07-06T13:27:52-12:00", "latitude": 67.870698, "longitude": -24.039864, "tags": [ "elit", "incididunt", "magna", "eu", "nostrud", "do", "excepteur" ], "friends": [ { "id": 0, "name": "Frieda Washington" }, { "id": 1, "name": "Hayden Potter" }, { "id": 2, "name": "Ila Gates" } ], "greeting": "Hello, Walker Pena! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22ab4778bae21ba299", "index": 1678, "guid": "450fc359-47b2-4a24-be9c-3a088fb3564d", "isActive": false, "balance": "$1,369.52", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Sutton Hopkins", "gender": "male", "company": "ECOSYS", "email": "suttonhopkins@ecosys.com", "phone": "+1 (925) 458-2466", "address": "203 Holmes Lane, Ferney, Idaho, 8408", "about": "Officia pariatur excepteur proident voluptate ipsum irure do. Dolore labore reprehenderit tempor aliqua eu. Labore deserunt magna occaecat pariatur ex amet cillum aliqua incididunt excepteur cillum occaecat proident. Exercitation Lorem exercitation qui cupidatat velit et veniam ullamco ipsum ex qui ex. Cillum incididunt deserunt commodo amet id ullamco officia cupidatat magna veniam.\r\n", "registered": "2014-02-16T22:47:08-13:00", "latitude": -80.672789, "longitude": 56.250033, "tags": [ "mollit", "laborum", "dolore", "do", "ipsum", "est", "ea" ], "friends": [ { "id": 0, "name": "Benton Gilbert" }, { "id": 1, "name": "Harvey Walls" }, { "id": 2, "name": "Craig Franklin" } ], "greeting": "Hello, Sutton Hopkins! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22748069a18de36117", "index": 1679, "guid": "bd608f59-4435-48a8-989f-37887605dc3a", "isActive": true, "balance": "$2,877.74", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Miller Reed", "gender": "male", "company": "NEXGENE", "email": "millerreed@nexgene.com", "phone": "+1 (899) 592-2112", "address": "863 Blake Avenue, Worton, Marshall Islands, 4451", "about": "Laboris irure esse eu eiusmod eiusmod ipsum veniam sunt ut incididunt adipisicing cupidatat irure. Anim elit do nostrud qui laborum ullamco reprehenderit veniam dolor. Officia dolore mollit incididunt dolore consectetur ad irure ullamco non. Cillum nulla cillum aliquip proident magna consequat ullamco id culpa sunt. Sint laborum consectetur in esse duis sint id reprehenderit tempor consectetur cillum sint voluptate ut. Aute sunt dolor exercitation esse dolor nostrud ut veniam duis sunt.\r\n", "registered": "2014-02-12T01:17:24-13:00", "latitude": -2.034651, "longitude": 156.83565, "tags": [ "elit", "amet", "labore", "pariatur", "enim", "ea", "cillum" ], "friends": [ { "id": 0, "name": "Cora Odonnell" }, { "id": 1, "name": "Richards Chang" }, { "id": 2, "name": "Kay Snyder" } ], "greeting": "Hello, Miller Reed! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2230e5fbc082d60375", "index": 1680, "guid": "66baa802-b7ad-4f96-b94c-ae025508252a", "isActive": true, "balance": "$2,516.04", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Summer Elliott", "gender": "female", "company": "KINETICA", "email": "summerelliott@kinetica.com", "phone": "+1 (857) 470-3478", "address": "817 Seagate Terrace, Ogema, New York, 3646", "about": "Nostrud ad ut nulla culpa commodo nisi culpa. Elit pariatur cupidatat sint aliquip cupidatat ad cillum id tempor qui non. Aliqua ullamco sint sunt in culpa fugiat. Consequat sunt aliqua sunt eiusmod aute aliqua ad Lorem. Aliquip occaecat proident adipisicing in quis magna nisi.\r\n", "registered": "2014-03-04T10:05:45-13:00", "latitude": 83.335577, "longitude": -50.396139, "tags": [ "irure", "incididunt", "id", "ipsum", "aliquip", "deserunt", "aliqua" ], "friends": [ { "id": 0, "name": "Odom Neal" }, { "id": 1, "name": "Watson Boone" }, { "id": 2, "name": "Fischer Valencia" } ], "greeting": "Hello, Summer Elliott! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22cfa6e58ad6285dcc", "index": 1681, "guid": "fdc05011-a797-4013-be8d-a43005ef997f", "isActive": true, "balance": "$1,816.81", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Potter Robinson", "gender": "male", "company": "EMERGENT", "email": "potterrobinson@emergent.com", "phone": "+1 (932) 452-3991", "address": "586 Baughman Place, Muir, Guam, 2635", "about": "Occaecat consectetur ullamco sint labore dolore. Amet quis proident magna esse ut quis adipisicing eiusmod nulla est incididunt. Magna adipisicing velit velit laboris. Ea est cupidatat magna officia ullamco ipsum reprehenderit.\r\n", "registered": "2014-05-31T20:40:54-12:00", "latitude": 21.466669, "longitude": 60.035103, "tags": [ "ut", "anim", "laboris", "veniam", "mollit", "occaecat", "incididunt" ], "friends": [ { "id": 0, "name": "Crosby Macdonald" }, { "id": 1, "name": "Lacey Santiago" }, { "id": 2, "name": "Jill Bartlett" } ], "greeting": "Hello, Potter Robinson! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea220c3b68795e579b91", "index": 1682, "guid": "2a0a64c8-eadf-43c6-b770-7b9173eb7a0a", "isActive": false, "balance": "$2,558.48", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Kelly Weeks", "gender": "male", "company": "SIGNIDYNE", "email": "kellyweeks@signidyne.com", "phone": "+1 (980) 454-2403", "address": "846 Hendrix Street, Stewart, Virgin Islands, 5314", "about": "Nostrud aliqua ad exercitation quis minim elit do dolor laborum id sint magna veniam. Commodo consectetur do consequat id esse ad. Deserunt quis do ullamco enim pariatur culpa cupidatat adipisicing enim eu reprehenderit aliquip voluptate reprehenderit. Occaecat ipsum occaecat sit proident labore consequat Lorem quis est labore proident laboris anim elit. Irure qui culpa velit veniam incididunt labore sint labore excepteur. Tempor dolor quis minim reprehenderit culpa consectetur non elit qui amet ex occaecat. Sint id laboris ullamco amet ea tempor tempor duis nulla.\r\n", "registered": "2014-02-14T09:29:50-13:00", "latitude": -31.313226, "longitude": 63.307478, "tags": [ "occaecat", "esse", "in", "sit", "voluptate", "proident", "anim" ], "friends": [ { "id": 0, "name": "Avila Lott" }, { "id": 1, "name": "Marva Oconnor" }, { "id": 2, "name": "Francis Dejesus" } ], "greeting": "Hello, Kelly Weeks! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea225b0fde3c443e28c7", "index": 1683, "guid": "3d6e6ef0-8f8a-4b39-93c0-db91346c5590", "isActive": true, "balance": "$1,768.30", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Leticia Cline", "gender": "female", "company": "HINWAY", "email": "leticiacline@hinway.com", "phone": "+1 (862) 483-2746", "address": "510 Schroeders Avenue, Roy, Massachusetts, 4148", "about": "Duis incididunt duis ex aliquip eu nisi exercitation aute qui qui aute duis nisi. Dolor Lorem elit aliqua in id. Velit pariatur sunt nisi consequat consectetur qui in in.\r\n", "registered": "2014-04-21T20:57:21-12:00", "latitude": -53.45271, "longitude": -127.231697, "tags": [ "excepteur", "excepteur", "nulla", "officia", "sunt", "voluptate", "duis" ], "friends": [ { "id": 0, "name": "Leona Larson" }, { "id": 1, "name": "Sloan Velazquez" }, { "id": 2, "name": "Hall Newman" } ], "greeting": "Hello, Leticia Cline! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22692815d929fcb028", "index": 1684, "guid": "27e5f3ad-2fcb-4a28-9026-f110f087b7c7", "isActive": false, "balance": "$1,699.12", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Moran Dyer", "gender": "male", "company": "CANDECOR", "email": "morandyer@candecor.com", "phone": "+1 (848) 451-3115", "address": "763 Sapphire Street, Tetherow, Utah, 5532", "about": "Excepteur elit reprehenderit et veniam est anim et ea ut ad aliqua sint eiusmod consectetur. Irure elit sit ullamco eiusmod aute id duis fugiat elit Lorem. Enim id occaecat minim eiusmod reprehenderit mollit fugiat exercitation incididunt nisi mollit amet est. Voluptate ipsum deserunt aliqua proident tempor aliqua qui laborum nisi sunt laborum fugiat. Voluptate sit magna qui exercitation adipisicing aliqua ea sint anim culpa in labore. Reprehenderit aute id dolor nostrud sit mollit Lorem ex laboris.\r\n", "registered": "2014-07-27T06:28:27-12:00", "latitude": -71.904117, "longitude": -140.721381, "tags": [ "Lorem", "dolore", "duis", "cillum", "cupidatat", "aute", "et" ], "friends": [ { "id": 0, "name": "Cooke Blair" }, { "id": 1, "name": "Sullivan Keller" }, { "id": 2, "name": "Gamble Hampton" } ], "greeting": "Hello, Moran Dyer! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221f3083c7e19e4d5a", "index": 1685, "guid": "9aec9856-e76a-443c-b35f-6504bab3b429", "isActive": true, "balance": "$3,395.41", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Chaney Hernandez", "gender": "male", "company": "SUREPLEX", "email": "chaneyhernandez@sureplex.com", "phone": "+1 (950) 517-2323", "address": "164 Hornell Loop, Harborton, Montana, 8936", "about": "Dolor non id aute ea et. Sint in dolor commodo officia fugiat esse minim mollit do consectetur enim. Minim nisi excepteur officia do culpa dolor culpa magna sint fugiat magna ea dolore. Commodo dolor sint mollit mollit anim aliqua fugiat velit. Consequat magna cillum elit veniam eu ipsum tempor non eu anim.\r\n", "registered": "2014-04-01T12:18:58-13:00", "latitude": -81.436279, "longitude": -111.981675, "tags": [ "eu", "mollit", "Lorem", "eu", "occaecat", "veniam", "dolor" ], "friends": [ { "id": 0, "name": "Juliette Nguyen" }, { "id": 1, "name": "Jimenez Ingram" }, { "id": 2, "name": "Hood Maldonado" } ], "greeting": "Hello, Chaney Hernandez! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea228f2a61d8d8b9f397", "index": 1686, "guid": "278bf6f1-9f34-4e80-ae9b-2024c827c4a5", "isActive": true, "balance": "$1,775.51", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Marcia Guthrie", "gender": "female", "company": "DUOFLEX", "email": "marciaguthrie@duoflex.com", "phone": "+1 (911) 452-2237", "address": "952 Decatur Street, Bradenville, Wisconsin, 8139", "about": "Non eu officia dolore anim. Enim dolor aliquip exercitation officia eiusmod minim mollit dolore dolor culpa elit laborum ad. Est officia dolor exercitation mollit incididunt eu excepteur laborum dolore magna. Officia exercitation ea sint officia veniam sunt. Velit culpa adipisicing quis et proident nisi aute veniam dolore aliqua minim tempor cupidatat consectetur.\r\n", "registered": "2014-06-14T22:15:13-12:00", "latitude": 29.866702, "longitude": 37.328942, "tags": [ "ea", "proident", "nisi", "id", "quis", "labore", "voluptate" ], "friends": [ { "id": 0, "name": "Melendez Fletcher" }, { "id": 1, "name": "Charlotte Jarvis" }, { "id": 2, "name": "Araceli Hinton" } ], "greeting": "Hello, Marcia Guthrie! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea22f1b78660a9bb8e95", "index": 1687, "guid": "d7e27bf6-1020-4848-a606-02edc26bbd98", "isActive": false, "balance": "$1,075.18", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Cervantes Battle", "gender": "male", "company": "INSECTUS", "email": "cervantesbattle@insectus.com", "phone": "+1 (834) 411-2253", "address": "268 Linden Street, Herlong, Maine, 500", "about": "Quis exercitation exercitation veniam consectetur veniam. Eu labore excepteur aliqua enim duis. Lorem enim adipisicing occaecat eu sint commodo irure incididunt deserunt cillum non dolore nostrud. Ullamco sint deserunt nulla dolore in labore cillum mollit.\r\n", "registered": "2014-07-15T16:15:44-12:00", "latitude": 33.430229, "longitude": -82.618782, "tags": [ "sunt", "id", "pariatur", "ut", "voluptate", "sunt", "commodo" ], "friends": [ { "id": 0, "name": "Rebecca Allen" }, { "id": 1, "name": "Wilkins Barrett" }, { "id": 2, "name": "Mcclure Rojas" } ], "greeting": "Hello, Cervantes Battle! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea228df4a8383e153efc", "index": 1688, "guid": "f8602944-d659-4676-aa12-fee388d1d7bc", "isActive": true, "balance": "$3,149.25", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Tabitha Dotson", "gender": "female", "company": "INTERODEO", "email": "tabithadotson@interodeo.com", "phone": "+1 (819) 533-2097", "address": "833 Linwood Street, Madrid, Virginia, 720", "about": "Nostrud duis excepteur ipsum cillum reprehenderit in veniam ut duis culpa velit. Id cillum magna in ea culpa occaecat excepteur minim anim cillum nostrud amet. Ut commodo nisi qui non voluptate exercitation veniam dolor eu do fugiat dolore anim velit.\r\n", "registered": "2014-01-28T15:16:41-13:00", "latitude": 41.460592, "longitude": -44.981675, "tags": [ "eu", "do", "ea", "labore", "minim", "ad", "officia" ], "friends": [ { "id": 0, "name": "Emma Spence" }, { "id": 1, "name": "Rollins Burke" }, { "id": 2, "name": "Le Rosario" } ], "greeting": "Hello, Tabitha Dotson! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22d6f881e1beaa10d1", "index": 1689, "guid": "3117df68-85fe-48c8-9cc8-b919beace070", "isActive": false, "balance": "$1,717.15", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Conley Stephenson", "gender": "male", "company": "NETUR", "email": "conleystephenson@netur.com", "phone": "+1 (902) 568-3490", "address": "957 Delmonico Place, Day, Kentucky, 3881", "about": "Veniam ullamco excepteur quis aute veniam elit sint amet mollit adipisicing enim exercitation consectetur ea. Consequat proident laborum incididunt ullamco sint officia anim irure. Mollit sit elit consectetur consectetur anim non in minim officia dolore eiusmod excepteur sit deserunt. Qui incididunt amet ut nisi minim anim consectetur eu tempor non ipsum.\r\n", "registered": "2014-02-19T22:56:14-13:00", "latitude": 57.192209, "longitude": 0.543709, "tags": [ "aliquip", "occaecat", "elit", "duis", "non", "laborum", "aliquip" ], "friends": [ { "id": 0, "name": "Carolina Frederick" }, { "id": 1, "name": "Virgie Kirkland" }, { "id": 2, "name": "Macias Wall" } ], "greeting": "Hello, Conley Stephenson! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2218fd5339bcab4e28", "index": 1690, "guid": "ac1c1596-4414-4af8-8d5d-af1329bb51cb", "isActive": true, "balance": "$3,545.17", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Tiffany Parsons", "gender": "female", "company": "WAZZU", "email": "tiffanyparsons@wazzu.com", "phone": "+1 (948) 429-2967", "address": "633 Battery Avenue, Tibbie, Connecticut, 8082", "about": "Tempor tempor ut et proident consequat consectetur ea elit sint nisi consequat. Aliqua in ut anim laborum nostrud voluptate elit ad enim excepteur. Ad cupidatat eu dolor anim veniam sint fugiat ut dolore irure sint cupidatat qui elit. Sint minim est velit Lorem. Sit ad incididunt dolor id excepteur amet amet sit nostrud reprehenderit. Cupidatat in proident labore ex quis id in sunt quis minim voluptate ad. Enim nisi aute officia irure sunt.\r\n", "registered": "2014-01-19T03:37:12-13:00", "latitude": 7.949623, "longitude": -23.3002, "tags": [ "sit", "exercitation", "fugiat", "exercitation", "velit", "in", "minim" ], "friends": [ { "id": 0, "name": "Elisabeth Curtis" }, { "id": 1, "name": "Vicki Diaz" }, { "id": 2, "name": "Lorrie Henderson" } ], "greeting": "Hello, Tiffany Parsons! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22ca28a1c0897d7d69", "index": 1691, "guid": "d124811d-8683-42a9-92aa-8cbac90c2994", "isActive": false, "balance": "$3,663.70", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Church Fisher", "gender": "male", "company": "INSURITY", "email": "churchfisher@insurity.com", "phone": "+1 (970) 419-3324", "address": "863 Campus Road, Newcastle, Mississippi, 6787", "about": "Fugiat sint id Lorem exercitation incididunt mollit cillum consectetur ea sint ut tempor. Voluptate dolor officia anim qui cillum magna ipsum consectetur ad. Anim incididunt commodo dolor exercitation fugiat cupidatat nulla. Fugiat deserunt dolor in aliqua adipisicing ex tempor ad proident. Cillum proident elit culpa tempor officia et non. Amet sint non magna nostrud cillum nulla consequat veniam amet eiusmod eu dolor.\r\n", "registered": "2014-04-09T17:02:57-12:00", "latitude": 29.046291, "longitude": -120.286135, "tags": [ "voluptate", "culpa", "cupidatat", "sit", "dolor", "id", "commodo" ], "friends": [ { "id": 0, "name": "Bennett Forbes" }, { "id": 1, "name": "Lessie Bass" }, { "id": 2, "name": "Fowler Rowland" } ], "greeting": "Hello, Church Fisher! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea223fa22b23b9c1236b", "index": 1692, "guid": "96cd849d-2a71-41c6-80a5-314562f6c047", "isActive": true, "balance": "$2,341.23", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Caitlin Horn", "gender": "female", "company": "FRENEX", "email": "caitlinhorn@frenex.com", "phone": "+1 (814) 488-2478", "address": "969 Lester Court, Gilmore, Washington, 9629", "about": "Pariatur ex dolor tempor sunt quis ipsum commodo duis aliquip. Cillum mollit eiusmod duis ipsum laborum cupidatat est. Officia dolore exercitation dolore ullamco exercitation. Minim ea incididunt pariatur dolore amet proident sit eu quis incididunt fugiat nisi tempor. Cupidatat aliquip sit deserunt excepteur officia aliquip elit consectetur. Ullamco ipsum et consectetur sit incididunt commodo. Ad laboris occaecat ipsum reprehenderit ad Lorem pariatur cillum nisi velit esse.\r\n", "registered": "2014-01-03T00:53:44-13:00", "latitude": -77.282276, "longitude": 164.366643, "tags": [ "id", "cupidatat", "duis", "eiusmod", "Lorem", "dolor", "minim" ], "friends": [ { "id": 0, "name": "Castaneda Yates" }, { "id": 1, "name": "Georgina Spears" }, { "id": 2, "name": "Pickett Hester" } ], "greeting": "Hello, Caitlin Horn! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2255c315585bcf6e1e", "index": 1693, "guid": "87861c15-d08d-452c-ac30-049635279654", "isActive": true, "balance": "$3,975.32", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Matilda Fernandez", "gender": "female", "company": "ZILLIDIUM", "email": "matildafernandez@zillidium.com", "phone": "+1 (970) 564-2694", "address": "758 Schenck Place, Cataract, Tennessee, 185", "about": "In aute sunt veniam ea non ullamco labore et irure. Ipsum cupidatat commodo labore deserunt ex est laboris officia sunt elit velit nulla. Anim occaecat et veniam fugiat elit veniam anim. Deserunt esse adipisicing aute ut sunt magna esse. Aliquip mollit reprehenderit ex quis sit aliqua.\r\n", "registered": "2014-08-30T07:26:35-12:00", "latitude": 81.840193, "longitude": 132.336982, "tags": [ "tempor", "ad", "culpa", "non", "ipsum", "sit", "do" ], "friends": [ { "id": 0, "name": "Owen Sweeney" }, { "id": 1, "name": "Catalina Abbott" }, { "id": 2, "name": "Lavonne Kane" } ], "greeting": "Hello, Matilda Fernandez! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea221203deb05718771c", "index": 1694, "guid": "b876c986-97e0-4e37-bfbc-3389cc6ddff0", "isActive": false, "balance": "$1,407.76", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Mcknight Clements", "gender": "male", "company": "COMBOGENE", "email": "mcknightclements@combogene.com", "phone": "+1 (973) 488-2713", "address": "312 Hampton Avenue, Salvo, Alabama, 2706", "about": "Laborum exercitation cillum voluptate ad anim amet id consectetur esse velit excepteur. Ullamco cillum est quis ipsum amet consequat officia cupidatat. Adipisicing voluptate ipsum elit ad ea magna. Duis laboris ullamco duis occaecat ea enim. Nostrud eu eu ex cupidatat consectetur in. Proident laboris aliquip sit quis quis tempor est nulla laborum sint.\r\n", "registered": "2014-04-01T15:44:50-13:00", "latitude": -86.657002, "longitude": -27.442497, "tags": [ "in", "minim", "id", "mollit", "dolore", "elit", "duis" ], "friends": [ { "id": 0, "name": "Burton Romero" }, { "id": 1, "name": "Little Moore" }, { "id": 2, "name": "Mason Adams" } ], "greeting": "Hello, Mcknight Clements! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22e342516d28e7247f", "index": 1695, "guid": "fffb2170-aff0-4dc4-b1c4-1405f139106f", "isActive": false, "balance": "$3,593.65", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Bowen Mcfadden", "gender": "male", "company": "KOOGLE", "email": "bowenmcfadden@koogle.com", "phone": "+1 (999) 481-3335", "address": "275 Monaco Place, Allison, Ohio, 5116", "about": "Magna esse ad sint enim. Laboris nostrud exercitation consequat excepteur voluptate dolore officia officia ipsum. Ad consequat excepteur cupidatat dolore esse enim ex Lorem ullamco ipsum. Veniam et veniam ullamco id esse consectetur. Minim aliqua aute occaecat cupidatat non tempor laborum anim elit.\r\n", "registered": "2014-03-26T10:32:47-13:00", "latitude": -11.617794, "longitude": -121.063398, "tags": [ "Lorem", "in", "commodo", "duis", "labore", "nostrud", "ex" ], "friends": [ { "id": 0, "name": "Rosario Clarke" }, { "id": 1, "name": "Cochran Church" }, { "id": 2, "name": "Alston David" } ], "greeting": "Hello, Bowen Mcfadden! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea22ef3de5ec9d501cd3", "index": 1696, "guid": "0749942e-6e8b-4e17-8f58-bc24043ad8e8", "isActive": false, "balance": "$1,205.54", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Greer Mcdonald", "gender": "male", "company": "INTRADISK", "email": "greermcdonald@intradisk.com", "phone": "+1 (897) 498-2200", "address": "255 Duffield Street, Mapletown, Hawaii, 7961", "about": "Magna ullamco deserunt est labore nisi esse nostrud laborum. Ullamco in non qui veniam non dolore reprehenderit. Velit laborum incididunt dolor cupidatat pariatur ipsum nisi.\r\n", "registered": "2014-09-08T19:02:09-12:00", "latitude": -36.000713, "longitude": 158.461921, "tags": [ "qui", "est", "ex", "fugiat", "reprehenderit", "labore", "nostrud" ], "friends": [ { "id": 0, "name": "Jeanine Lindsay" }, { "id": 1, "name": "Rochelle Key" }, { "id": 2, "name": "Grace Murray" } ], "greeting": "Hello, Greer Mcdonald! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea22acef08825206ce9d", "index": 1697, "guid": "e1dcb318-62e4-4c0e-b7a9-fdfe5bf0a83a", "isActive": true, "balance": "$1,805.32", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Douglas Phelps", "gender": "male", "company": "ZENTURY", "email": "douglasphelps@zentury.com", "phone": "+1 (871) 596-3435", "address": "951 Union Street, Chapin, New Mexico, 8195", "about": "Eu do eu eu nulla duis commodo. Occaecat aute magna nulla voluptate minim officia adipisicing amet incididunt ad ut mollit. Excepteur veniam laboris id qui nostrud magna magna veniam sunt tempor ad amet labore qui. Est irure aute aliquip ad ex aliquip et nostrud.\r\n", "registered": "2014-09-08T19:40:18-12:00", "latitude": -42.416979, "longitude": 38.766138, "tags": [ "do", "do", "sunt", "magna", "elit", "ea", "adipisicing" ], "friends": [ { "id": 0, "name": "Erin Wolf" }, { "id": 1, "name": "Jo Hooper" }, { "id": 2, "name": "Moses Mills" } ], "greeting": "Hello, Douglas Phelps! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea233ad0dd3a8b491ba4", "index": 1698, "guid": "a44811f7-774d-4c83-8585-226238ab5881", "isActive": false, "balance": "$3,138.76", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Jenkins Middleton", "gender": "male", "company": "MIRACULA", "email": "jenkinsmiddleton@miracula.com", "phone": "+1 (866) 453-2923", "address": "131 Tapscott Street, Glasgow, Maryland, 6867", "about": "Ex irure reprehenderit anim sunt velit non non proident nisi qui ut sint tempor. Sunt amet magna excepteur ad in culpa culpa pariatur amet irure occaecat laborum. In nulla amet exercitation eu duis cillum fugiat dolor. Adipisicing minim nisi mollit eu cillum tempor.\r\n", "registered": "2014-06-18T13:35:58-12:00", "latitude": -42.991681, "longitude": -91.012567, "tags": [ "nulla", "excepteur", "mollit", "nisi", "qui", "pariatur", "aute" ], "friends": [ { "id": 0, "name": "Merritt Hawkins" }, { "id": 1, "name": "Taylor Norris" }, { "id": 2, "name": "Harper Rich" } ], "greeting": "Hello, Jenkins Middleton! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23c5c9567ae450f74f", "index": 1699, "guid": "a3aa4ce9-85fd-41fc-82f6-5d4d2fe10526", "isActive": false, "balance": "$2,573.26", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Boyer Cervantes", "gender": "male", "company": "VINCH", "email": "boyercervantes@vinch.com", "phone": "+1 (803) 413-2757", "address": "232 Lloyd Street, Cleary, Alaska, 2912", "about": "Nostrud veniam voluptate ut veniam eiusmod elit. Adipisicing exercitation ex do est ea. Ut veniam incididunt pariatur laborum fugiat ipsum id pariatur. Dolore ex cupidatat ea mollit cillum commodo ea excepteur incididunt Lorem aliquip aute culpa. Quis labore excepteur minim adipisicing in ex tempor ad. Ipsum esse pariatur dolor enim est eu et veniam.\r\n", "registered": "2014-03-13T13:34:31-13:00", "latitude": -76.912866, "longitude": -38.899273, "tags": [ "sunt", "elit", "proident", "laboris", "sint", "in", "commodo" ], "friends": [ { "id": 0, "name": "Ferguson Campbell" }, { "id": 1, "name": "Compton Mcfarland" }, { "id": 2, "name": "Kayla Beach" } ], "greeting": "Hello, Boyer Cervantes! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23f1f74bf72936f3de", "index": 1700, "guid": "25487987-cf0d-4b9b-a528-3d3feb226294", "isActive": true, "balance": "$3,671.79", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Amie Vaughn", "gender": "female", "company": "NETILITY", "email": "amievaughn@netility.com", "phone": "+1 (969) 404-2038", "address": "201 Monument Walk, Logan, Arizona, 4708", "about": "Sint nulla reprehenderit pariatur ut consectetur officia sunt magna do enim proident pariatur. Enim ut sint adipisicing aute do consequat aliqua aliqua est nostrud. In non sint voluptate ad ut cillum. Fugiat eu deserunt excepteur adipisicing voluptate nulla in. Adipisicing minim adipisicing est amet commodo dolor mollit nisi ex reprehenderit occaecat tempor. Cupidatat et mollit eiusmod aliqua pariatur irure pariatur est sint in anim proident voluptate amet. Ea ad nulla laboris ex voluptate.\r\n", "registered": "2014-06-02T18:18:38-12:00", "latitude": -13.608101, "longitude": -148.257179, "tags": [ "consequat", "elit", "adipisicing", "ullamco", "culpa", "officia", "sunt" ], "friends": [ { "id": 0, "name": "Bernice Ashley" }, { "id": 1, "name": "Jenny Chandler" }, { "id": 2, "name": "Foreman Vaughan" } ], "greeting": "Hello, Amie Vaughn! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2356a350c9873cd920", "index": 1701, "guid": "ed684ea3-c459-487c-b6e0-a7bb5a5afc67", "isActive": false, "balance": "$3,621.38", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Randi Robbins", "gender": "female", "company": "ESCENTA", "email": "randirobbins@escenta.com", "phone": "+1 (939) 536-2866", "address": "878 Holly Street, Cumminsville, Federated States Of Micronesia, 3351", "about": "Sunt nulla esse voluptate ut deserunt veniam ut enim esse cillum eu ex. Deserunt commodo fugiat sunt officia do laboris reprehenderit anim. Cupidatat sint proident ullamco voluptate qui labore reprehenderit nisi nisi laborum.\r\n", "registered": "2014-06-25T23:08:46-12:00", "latitude": -85.312669, "longitude": 128.9525, "tags": [ "sunt", "incididunt", "cillum", "pariatur", "in", "Lorem", "et" ], "friends": [ { "id": 0, "name": "Aisha Levine" }, { "id": 1, "name": "Viola Combs" }, { "id": 2, "name": "Kidd Schwartz" } ], "greeting": "Hello, Randi Robbins! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23f2e493d3ea781188", "index": 1702, "guid": "65ba2507-b714-4380-9ee4-bffc8d2a39ec", "isActive": false, "balance": "$1,280.23", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Tamra Sims", "gender": "female", "company": "MEDCOM", "email": "tamrasims@medcom.com", "phone": "+1 (846) 486-3898", "address": "283 Arlington Place, Ola, Oklahoma, 1666", "about": "Non ad ad sunt voluptate aliquip adipisicing ea ea. Deserunt aliquip consectetur magna esse non ut adipisicing exercitation in culpa et occaecat deserunt commodo. Dolore laboris ex cupidatat proident ullamco dolor consequat do proident sint cupidatat mollit proident incididunt.\r\n", "registered": "2014-07-27T09:57:39-12:00", "latitude": 61.520806, "longitude": -146.457121, "tags": [ "nulla", "velit", "magna", "sunt", "sunt", "reprehenderit", "reprehenderit" ], "friends": [ { "id": 0, "name": "Jana Maxwell" }, { "id": 1, "name": "Stein Talley" }, { "id": 2, "name": "Constance Knowles" } ], "greeting": "Hello, Tamra Sims! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2303c8d5eddc8b1430", "index": 1703, "guid": "988c7c09-db1b-4b1e-b2b2-df6a92432465", "isActive": true, "balance": "$2,596.53", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Mcdowell Green", "gender": "male", "company": "SPACEWAX", "email": "mcdowellgreen@spacewax.com", "phone": "+1 (812) 530-3412", "address": "380 Billings Place, Enoree, Michigan, 9627", "about": "Magna mollit qui culpa ad fugiat officia dolore culpa reprehenderit. Ullamco reprehenderit eu ea magna aliquip sunt. Consequat elit fugiat voluptate consectetur exercitation est excepteur. Tempor sint sint officia veniam excepteur aliqua ad amet ex proident velit.\r\n", "registered": "2014-07-27T11:57:24-12:00", "latitude": 56.910283, "longitude": 161.29021, "tags": [ "duis", "minim", "mollit", "velit", "dolor", "ex", "pariatur" ], "friends": [ { "id": 0, "name": "Collins Gutierrez" }, { "id": 1, "name": "Camille Rivers" }, { "id": 2, "name": "Foley Garner" } ], "greeting": "Hello, Mcdowell Green! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23c177665284ee74dd", "index": 1704, "guid": "f6523501-d99f-421c-a213-602a9dfe7e16", "isActive": false, "balance": "$1,438.06", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Christine Mann", "gender": "female", "company": "LOVEPAD", "email": "christinemann@lovepad.com", "phone": "+1 (941) 556-3580", "address": "935 Rose Street, Malo, Kansas, 7798", "about": "Labore laborum id incididunt excepteur. Nostrud in id proident elit consectetur fugiat sint nisi velit reprehenderit non officia quis. Excepteur labore occaecat sit ex et exercitation anim sunt in fugiat proident elit amet id. Id mollit officia nulla cillum.\r\n", "registered": "2014-04-04T10:29:04-13:00", "latitude": -74.478756, "longitude": 83.394042, "tags": [ "enim", "enim", "excepteur", "ea", "id", "id", "eiusmod" ], "friends": [ { "id": 0, "name": "Dale Harvey" }, { "id": 1, "name": "Carey Pollard" }, { "id": 2, "name": "Hansen Davenport" } ], "greeting": "Hello, Christine Mann! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23f759ba86aa1d972d", "index": 1705, "guid": "7aaf207f-47bd-4713-b23b-c06715457ffb", "isActive": true, "balance": "$3,627.25", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Alma Norton", "gender": "female", "company": "MYOPIUM", "email": "almanorton@myopium.com", "phone": "+1 (813) 534-3443", "address": "729 Ocean Avenue, Twilight, South Dakota, 8528", "about": "Esse proident commodo fugiat consequat Lorem adipisicing irure sit labore. Quis enim adipisicing tempor ad ea ipsum dolore quis dolor id adipisicing minim proident. Ad nulla sit dolor laboris sint do labore duis. Veniam elit est voluptate Lorem adipisicing.\r\n", "registered": "2014-03-21T12:52:01-13:00", "latitude": 85.500708, "longitude": -147.179594, "tags": [ "velit", "excepteur", "enim", "fugiat", "nulla", "consequat", "enim" ], "friends": [ { "id": 0, "name": "Katheryn Mendez" }, { "id": 1, "name": "Mullen George" }, { "id": 2, "name": "Dillon Park" } ], "greeting": "Hello, Alma Norton! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2331b423ad0373c216", "index": 1706, "guid": "942b9cf5-1909-4e47-8590-5bd419764972", "isActive": false, "balance": "$2,640.65", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Cleveland Kerr", "gender": "male", "company": "DIGIQUE", "email": "clevelandkerr@digique.com", "phone": "+1 (809) 433-3120", "address": "434 Richards Street, Montura, West Virginia, 1688", "about": "Nisi sit magna pariatur adipisicing amet excepteur non officia. Consectetur ex do quis dolore deserunt anim ullamco. Ipsum ea esse esse eiusmod esse enim. Consectetur commodo est sunt eu sit et eiusmod Lorem nisi sint veniam dolore deserunt. Anim elit occaecat aliqua elit. Duis aliquip culpa eiusmod mollit. Qui exercitation quis irure sit consectetur officia.\r\n", "registered": "2014-08-14T04:34:27-12:00", "latitude": 8.957527, "longitude": 173.140852, "tags": [ "sunt", "nisi", "dolor", "fugiat", "excepteur", "deserunt", "sunt" ], "friends": [ { "id": 0, "name": "Fitzgerald Roberts" }, { "id": 1, "name": "Graham Holder" }, { "id": 2, "name": "Marks Rollins" } ], "greeting": "Hello, Cleveland Kerr! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2397c825a539925a44", "index": 1707, "guid": "1c06cd4b-45f8-4a14-9ce5-740b45f6ed0b", "isActive": true, "balance": "$2,411.70", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Lorena Gonzalez", "gender": "female", "company": "SULTRAXIN", "email": "lorenagonzalez@sultraxin.com", "phone": "+1 (805) 504-3283", "address": "762 Granite Street, Toftrees, Texas, 9398", "about": "Culpa duis qui veniam amet sit. Et exercitation laboris adipisicing non sint occaecat reprehenderit non elit et in voluptate. Ullamco exercitation laboris commodo pariatur est veniam sit. Consequat excepteur culpa est aliqua enim ad deserunt adipisicing. Sit fugiat Lorem sit minim laboris deserunt aliqua do.\r\n", "registered": "2014-09-17T19:40:19-12:00", "latitude": -68.71394, "longitude": -123.2735, "tags": [ "consequat", "duis", "quis", "fugiat", "consequat", "exercitation", "culpa" ], "friends": [ { "id": 0, "name": "Freeman Gonzales" }, { "id": 1, "name": "Hart Dickson" }, { "id": 2, "name": "Latasha Jordan" } ], "greeting": "Hello, Lorena Gonzalez! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23ebf8a417a58ce541", "index": 1708, "guid": "e5cf342d-1efa-46b9-a76b-514aaf21c6eb", "isActive": false, "balance": "$2,816.31", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Terra Herman", "gender": "female", "company": "HOMETOWN", "email": "terraherman@hometown.com", "phone": "+1 (925) 475-3138", "address": "899 Crystal Street, Roderfield, Oregon, 6807", "about": "Elit dolore laboris id ullamco ullamco adipisicing culpa duis. Mollit enim aliqua pariatur aute eu non laborum nisi cupidatat laboris ut. Aliqua velit velit deserunt exercitation sit exercitation culpa incididunt anim Lorem.\r\n", "registered": "2014-01-08T16:01:17-13:00", "latitude": -13.102785, "longitude": -93.797002, "tags": [ "ex", "Lorem", "labore", "esse", "et", "consectetur", "ex" ], "friends": [ { "id": 0, "name": "Angelina Mcmahon" }, { "id": 1, "name": "Janelle Frost" }, { "id": 2, "name": "Dorothea Dale" } ], "greeting": "Hello, Terra Herman! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23f966a94714636193", "index": 1709, "guid": "8afced05-fda3-421d-9bc3-58b44d2a3e93", "isActive": true, "balance": "$2,168.06", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Alexandra Taylor", "gender": "female", "company": "ZILPHUR", "email": "alexandrataylor@zilphur.com", "phone": "+1 (817) 416-3350", "address": "374 Nevins Street, Tioga, Nevada, 4404", "about": "Dolor voluptate nulla deserunt consequat cillum irure. In commodo ex dolor laborum consectetur do nostrud. Esse eu enim tempor reprehenderit voluptate enim reprehenderit velit ipsum est. Minim commodo sint eu eu cupidatat Lorem excepteur magna sit sunt consectetur consequat.\r\n", "registered": "2014-02-12T10:10:30-13:00", "latitude": 28.768764, "longitude": 160.395476, "tags": [ "aliquip", "ex", "ipsum", "consectetur", "esse", "aliqua", "dolor" ], "friends": [ { "id": 0, "name": "Carr Kirby" }, { "id": 1, "name": "Olsen Hale" }, { "id": 2, "name": "Herman Ballard" } ], "greeting": "Hello, Alexandra Taylor! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23660499ce04b05c32", "index": 1710, "guid": "764732a8-8172-457c-a9c2-a31289f82759", "isActive": true, "balance": "$2,464.76", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Oconnor Daugherty", "gender": "male", "company": "MAZUDA", "email": "oconnordaugherty@mazuda.com", "phone": "+1 (852) 480-2142", "address": "635 Centre Street, Abiquiu, Minnesota, 9203", "about": "Duis magna enim minim consectetur ullamco tempor deserunt anim. Exercitation non fugiat magna occaecat. Id sit magna aute veniam. Excepteur ea cillum veniam officia tempor sit ea cillum nisi. Ullamco proident magna in adipisicing nulla officia.\r\n", "registered": "2014-05-19T04:48:23-12:00", "latitude": 59.243909, "longitude": 135.204986, "tags": [ "ex", "est", "proident", "fugiat", "ipsum", "deserunt", "minim" ], "friends": [ { "id": 0, "name": "Johnnie Cobb" }, { "id": 1, "name": "Bessie Phillips" }, { "id": 2, "name": "Barry Savage" } ], "greeting": "Hello, Oconnor Daugherty! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23925207ab14b6040e", "index": 1711, "guid": "75fb1838-9342-4a31-90a2-9d622173af5f", "isActive": false, "balance": "$1,596.50", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Alissa Maynard", "gender": "female", "company": "ZILLADYNE", "email": "alissamaynard@zilladyne.com", "phone": "+1 (913) 547-3134", "address": "603 Ash Street, Summertown, Missouri, 2049", "about": "Nisi proident consequat excepteur ex nostrud incididunt nulla laboris nulla pariatur adipisicing ipsum sit dolor. Consequat magna ea velit nulla consectetur Lorem exercitation Lorem ex. Ad ut ullamco id adipisicing cupidatat tempor. Lorem cillum irure culpa minim ad officia et.\r\n", "registered": "2014-08-27T14:04:49-12:00", "latitude": 32.406381, "longitude": -66.874837, "tags": [ "ad", "deserunt", "qui", "eiusmod", "labore", "cupidatat", "laborum" ], "friends": [ { "id": 0, "name": "Vivian Colon" }, { "id": 1, "name": "Cara Pickett" }, { "id": 2, "name": "Carrillo Foley" } ], "greeting": "Hello, Alissa Maynard! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea237c36c1563c6ae3a4", "index": 1712, "guid": "5490a1fc-7b85-484a-bc18-c06f85a42aa7", "isActive": false, "balance": "$1,697.94", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Helene Harding", "gender": "female", "company": "ACCIDENCY", "email": "heleneharding@accidency.com", "phone": "+1 (860) 453-3525", "address": "851 Durland Place, Villarreal, Rhode Island, 2018", "about": "Commodo adipisicing consectetur ullamco aliquip veniam id ullamco fugiat. Deserunt in adipisicing ad laboris quis nulla voluptate ipsum ipsum non. Aute irure eiusmod amet consequat proident laboris. Et Lorem ex nisi est proident nulla non enim. Proident id magna velit voluptate aliquip ullamco. Magna fugiat voluptate aliquip aliqua excepteur tempor occaecat magna enim ea.\r\n", "registered": "2014-03-20T03:54:55-13:00", "latitude": 4.853594, "longitude": -85.040209, "tags": [ "sunt", "excepteur", "ex", "proident", "quis", "labore", "laboris" ], "friends": [ { "id": 0, "name": "Hoffman Ball" }, { "id": 1, "name": "Cooley Walker" }, { "id": 2, "name": "Eva Ferguson" } ], "greeting": "Hello, Helene Harding! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23c7a1896c431e9f8f", "index": 1713, "guid": "8e1e70da-2823-4034-8862-1a0431e83a2d", "isActive": true, "balance": "$3,995.30", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Poole Townsend", "gender": "male", "company": "ISOTRONIC", "email": "pooletownsend@isotronic.com", "phone": "+1 (986) 410-3601", "address": "643 Himrod Street, Coaldale, Florida, 2133", "about": "Sit exercitation voluptate dolore non consequat occaecat consectetur eu sint. Culpa aliqua ipsum officia irure aute proident id commodo. Mollit adipisicing do officia qui laboris ad dolore. Fugiat qui do nulla ad velit dolor commodo do irure ullamco cillum. Elit dolore aliqua consectetur nostrud commodo sit mollit magna ipsum.\r\n", "registered": "2014-09-10T03:40:50-12:00", "latitude": 80.537712, "longitude": -22.444472, "tags": [ "id", "aliqua", "magna", "dolor", "in", "consectetur", "laborum" ], "friends": [ { "id": 0, "name": "Wilson Knight" }, { "id": 1, "name": "Concepcion Reynolds" }, { "id": 2, "name": "Howe Dunn" } ], "greeting": "Hello, Poole Townsend! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea233894058d4e33d76d", "index": 1714, "guid": "41725eda-9bf4-4516-924f-b1e69da25aed", "isActive": false, "balance": "$3,626.24", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Franks Graham", "gender": "male", "company": "INTERFIND", "email": "franksgraham@interfind.com", "phone": "+1 (817) 506-2830", "address": "344 Bergen Street, Choctaw, North Carolina, 5601", "about": "Ad ex reprehenderit ad excepteur sint anim ea voluptate voluptate excepteur adipisicing est. Consequat amet Lorem qui anim. Culpa in aliquip ea officia ad velit enim commodo tempor sit anim sunt cupidatat. Aliqua sint labore magna reprehenderit. Quis do cillum nostrud culpa aliqua. In nulla cillum irure labore incididunt duis anim incididunt minim.\r\n", "registered": "2014-04-04T00:20:56-13:00", "latitude": -47.296967, "longitude": 169.941186, "tags": [ "dolore", "id", "aliquip", "cillum", "deserunt", "in", "dolor" ], "friends": [ { "id": 0, "name": "Maldonado Vincent" }, { "id": 1, "name": "Logan Ellison" }, { "id": 2, "name": "Mcdonald Armstrong" } ], "greeting": "Hello, Franks Graham! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23426f5d9c889aa179", "index": 1715, "guid": "0a7a38b1-b192-4167-ba76-53a975c2c6f4", "isActive": true, "balance": "$3,645.27", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Betty Reid", "gender": "female", "company": "ECRATER", "email": "bettyreid@ecrater.com", "phone": "+1 (964) 497-3125", "address": "329 Conselyea Street, Dundee, New Hampshire, 2440", "about": "Consectetur occaecat incididunt deserunt enim eiusmod culpa aliqua officia aliquip commodo est esse. Laboris aliquip consequat pariatur Lorem culpa cillum proident ea consequat et ullamco. Officia laborum eu proident dolor reprehenderit occaecat consequat irure esse.\r\n", "registered": "2014-02-02T12:22:04-13:00", "latitude": -41.320168, "longitude": 46.534226, "tags": [ "id", "aliqua", "reprehenderit", "esse", "elit", "aliqua", "id" ], "friends": [ { "id": 0, "name": "Priscilla Sears" }, { "id": 1, "name": "Horne Anthony" }, { "id": 2, "name": "Ellis Myers" } ], "greeting": "Hello, Betty Reid! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea231082451b45fabac2", "index": 1716, "guid": "e5678652-b727-42a5-ace9-8395783c9398", "isActive": false, "balance": "$2,860.37", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Jeanie Raymond", "gender": "female", "company": "RONELON", "email": "jeanieraymond@ronelon.com", "phone": "+1 (974) 401-3499", "address": "449 Gem Street, Caledonia, Arkansas, 2460", "about": "Proident occaecat cillum reprehenderit quis consequat velit amet eu ipsum. Ex laboris excepteur amet nulla. Laborum excepteur sint deserunt consectetur veniam. Voluptate id enim sint est consectetur. Commodo cupidatat duis nisi minim Lorem do sint ad ullamco aute nulla duis qui. Labore enim non eu adipisicing ut qui quis fugiat sint veniam. Laborum mollit laborum consectetur anim duis amet adipisicing minim veniam cupidatat id minim.\r\n", "registered": "2014-05-11T08:16:14-12:00", "latitude": -11.864851, "longitude": -137.595342, "tags": [ "esse", "dolore", "et", "proident", "fugiat", "sint", "anim" ], "friends": [ { "id": 0, "name": "Daniels Golden" }, { "id": 1, "name": "Autumn Roy" }, { "id": 2, "name": "Monica Clemons" } ], "greeting": "Hello, Jeanie Raymond! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23d115c0c101a647fb", "index": 1717, "guid": "543ce1cd-8035-4dde-aeac-6d6183f86536", "isActive": false, "balance": "$2,978.68", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Laurie England", "gender": "female", "company": "QUIZMO", "email": "laurieengland@quizmo.com", "phone": "+1 (830) 453-2966", "address": "863 Hale Avenue, Barronett, Iowa, 958", "about": "Tempor labore magna sit sint tempor ut officia. Consectetur ea tempor ullamco minim est magna. Lorem nulla ullamco reprehenderit incididunt duis officia velit in non.\r\n", "registered": "2014-02-20T03:10:41-13:00", "latitude": 63.22265, "longitude": 7.21569, "tags": [ "quis", "ipsum", "nulla", "dolore", "dolore", "non", "occaecat" ], "friends": [ { "id": 0, "name": "Rodriguez Reyes" }, { "id": 1, "name": "Rosalie Shields" }, { "id": 2, "name": "Barbra Tillman" } ], "greeting": "Hello, Laurie England! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea235cc9db9c78dc0167", "index": 1718, "guid": "83cd8494-542c-4ec0-9254-a232e83bc93e", "isActive": true, "balance": "$2,840.70", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Valencia Valentine", "gender": "male", "company": "POOCHIES", "email": "valenciavalentine@poochies.com", "phone": "+1 (922) 515-2368", "address": "608 Bokee Court, Hinsdale, Nebraska, 1006", "about": "Veniam ullamco nostrud culpa exercitation commodo sunt. Ex non eu laborum deserunt dolor. Consequat exercitation laborum do in laboris exercitation minim. Amet labore fugiat veniam veniam nulla exercitation sint in. Ad in laborum in do. Cillum aliqua ipsum quis ad nulla nostrud duis. Cillum officia anim reprehenderit excepteur esse ut commodo officia id aliquip laborum veniam veniam.\r\n", "registered": "2014-06-08T08:45:10-12:00", "latitude": 45.786782, "longitude": 57.548642, "tags": [ "mollit", "ut", "esse", "enim", "id", "elit", "sit" ], "friends": [ { "id": 0, "name": "Marguerite Edwards" }, { "id": 1, "name": "Knight Shelton" }, { "id": 2, "name": "Warren Soto" } ], "greeting": "Hello, Valencia Valentine! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea237397c708a9481323", "index": 1719, "guid": "111fc4a9-4478-4ce9-9e09-48f1a6065e25", "isActive": false, "balance": "$3,075.55", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Jarvis Mccall", "gender": "male", "company": "VETRON", "email": "jarvismccall@vetron.com", "phone": "+1 (926) 563-3394", "address": "763 Harrison Avenue, Whitmer, District Of Columbia, 2970", "about": "Tempor sunt quis amet esse occaecat reprehenderit magna voluptate magna qui eiusmod veniam id. Consequat magna consectetur nulla deserunt ex aute adipisicing amet adipisicing. Sint occaecat velit sunt laborum minim magna culpa. Enim sit ea dolore laborum dolor ex ad sunt veniam ullamco anim in ea. Excepteur reprehenderit elit eu consequat qui elit exercitation. Nostrud culpa Lorem ea officia ullamco officia proident sint dolor minim.\r\n", "registered": "2014-07-14T06:31:10-12:00", "latitude": 77.127387, "longitude": -51.655382, "tags": [ "non", "nostrud", "sit", "et", "minim", "ullamco", "ad" ], "friends": [ { "id": 0, "name": "Battle Strong" }, { "id": 1, "name": "Cole Brown" }, { "id": 2, "name": "Gay Gregory" } ], "greeting": "Hello, Jarvis Mccall! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23e0c3e3a902c2b768", "index": 1720, "guid": "ac206035-5437-4d81-a6cb-7a313bacb714", "isActive": false, "balance": "$3,688.52", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "French Mccoy", "gender": "male", "company": "IDEALIS", "email": "frenchmccoy@idealis.com", "phone": "+1 (945) 470-2433", "address": "795 Calder Place, Summerfield, New Jersey, 183", "about": "Amet velit anim dolor dolor esse labore duis. Fugiat enim deserunt Lorem tempor deserunt veniam nostrud in ut non ipsum elit reprehenderit exercitation. Adipisicing magna ullamco excepteur amet dolore excepteur officia. Elit irure nostrud consectetur laborum pariatur et eiusmod est do. Elit voluptate non nostrud exercitation laborum. Veniam elit irure nisi dolore ipsum id ullamco consectetur. Cillum irure adipisicing exercitation non eu minim.\r\n", "registered": "2014-06-13T02:35:36-12:00", "latitude": 70.19358, "longitude": -74.307997, "tags": [ "qui", "pariatur", "et", "ut", "est", "nostrud", "cupidatat" ], "friends": [ { "id": 0, "name": "Ashley Mcconnell" }, { "id": 1, "name": "Peggy Collier" }, { "id": 2, "name": "Olson Baxter" } ], "greeting": "Hello, French Mccoy! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23552d6ef10dfe2720", "index": 1721, "guid": "86eb9d50-649c-4037-8c0d-655fb1c6c740", "isActive": false, "balance": "$1,185.03", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Esmeralda Blake", "gender": "female", "company": "ZOLAVO", "email": "esmeraldablake@zolavo.com", "phone": "+1 (903) 430-3860", "address": "992 Amber Street, Boomer, Palau, 8115", "about": "Sint ipsum do consequat magna. Minim do quis velit velit ipsum elit fugiat id nisi laboris mollit dolor et. Nulla amet veniam culpa culpa. Eiusmod occaecat velit esse eiusmod ad id duis aliqua sunt aute ea cupidatat officia. Id do aute adipisicing laboris. Tempor Lorem aute incididunt eu nulla occaecat velit quis. Labore veniam aliquip do esse.\r\n", "registered": "2014-01-10T03:04:04-13:00", "latitude": 41.682327, "longitude": 158.528483, "tags": [ "duis", "irure", "exercitation", "officia", "ipsum", "laborum", "deserunt" ], "friends": [ { "id": 0, "name": "Miranda Lancaster" }, { "id": 1, "name": "Beryl Donovan" }, { "id": 2, "name": "Lois Jenkins" } ], "greeting": "Hello, Esmeralda Blake! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23d63c9be915cb4cf8", "index": 1722, "guid": "a722a26b-1ff9-4ca0-8965-65388c74eb3a", "isActive": true, "balance": "$1,415.54", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Dana Pate", "gender": "female", "company": "PULZE", "email": "danapate@pulze.com", "phone": "+1 (881) 518-2061", "address": "389 Court Square, Connerton, Puerto Rico, 8289", "about": "Voluptate pariatur deserunt aliquip officia in reprehenderit ea. Id sunt aliqua ut ut ut. In esse minim voluptate aliqua pariatur sunt dolor ad eiusmod ad in fugiat.\r\n", "registered": "2014-02-12T11:04:58-13:00", "latitude": -44.155245, "longitude": 141.657035, "tags": [ "laborum", "quis", "ullamco", "proident", "id", "labore", "fugiat" ], "friends": [ { "id": 0, "name": "Phoebe Velez" }, { "id": 1, "name": "Margie Higgins" }, { "id": 2, "name": "Kasey Berry" } ], "greeting": "Hello, Dana Pate! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea231f92cc16a1f15a8a", "index": 1723, "guid": "fe936d11-35c9-4f6f-994c-ff349612280d", "isActive": true, "balance": "$1,582.39", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Ware Peterson", "gender": "male", "company": "ZENTIME", "email": "warepeterson@zentime.com", "phone": "+1 (985) 567-3865", "address": "269 Manor Court, Volta, California, 6521", "about": "Non nulla ad qui id voluptate reprehenderit fugiat fugiat duis dolor. Anim magna elit cillum tempor pariatur. Officia ut aliquip commodo elit dolore magna fugiat. Id irure quis consequat aliqua commodo fugiat labore cillum id fugiat ex consequat dolore. Ad fugiat aliquip ad ipsum est ex aute laborum veniam eiusmod anim mollit laborum.\r\n", "registered": "2014-06-14T15:37:20-12:00", "latitude": 59.052924, "longitude": -41.161297, "tags": [ "deserunt", "dolor", "cupidatat", "id", "voluptate", "commodo", "magna" ], "friends": [ { "id": 0, "name": "Tia Solomon" }, { "id": 1, "name": "Hobbs Nixon" }, { "id": 2, "name": "Mercedes Fulton" } ], "greeting": "Hello, Ware Peterson! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea234dba6ab7fae4c792", "index": 1724, "guid": "979b06df-b5a7-4490-be20-49f883f25167", "isActive": true, "balance": "$2,938.62", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Alyce Roberson", "gender": "female", "company": "CONFERIA", "email": "alyceroberson@conferia.com", "phone": "+1 (845) 535-2794", "address": "975 Noble Street, Camptown, Vermont, 1877", "about": "Cupidatat consequat non ad veniam magna eiusmod ea amet consectetur enim esse. Non sunt cillum aute exercitation elit dolore dolor enim exercitation pariatur. Excepteur amet cupidatat et magna irure ex esse excepteur deserunt. Laboris cupidatat sunt exercitation ullamco labore aute anim. Non consectetur sit ullamco culpa nisi aute sit.\r\n", "registered": "2014-05-15T17:52:55-12:00", "latitude": -85.720246, "longitude": 17.646898, "tags": [ "anim", "exercitation", "ut", "voluptate", "nisi", "qui", "exercitation" ], "friends": [ { "id": 0, "name": "Bond Stuart" }, { "id": 1, "name": "Frazier Chambers" }, { "id": 2, "name": "Crystal Ellis" } ], "greeting": "Hello, Alyce Roberson! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea239e4f912c9352de0c", "index": 1725, "guid": "ef8f641d-24eb-46cf-a786-35461f64bc93", "isActive": true, "balance": "$2,179.05", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Ericka Lambert", "gender": "female", "company": "ACCUSAGE", "email": "erickalambert@accusage.com", "phone": "+1 (931) 590-2654", "address": "911 Jefferson Avenue, Forbestown, Indiana, 3090", "about": "Eiusmod enim dolor quis minim proident commodo eu proident. Duis excepteur adipisicing irure voluptate velit culpa non exercitation et eiusmod. Est eiusmod aliquip reprehenderit tempor excepteur ut incididunt ut irure.\r\n", "registered": "2014-04-11T15:24:59-12:00", "latitude": 44.294555, "longitude": -108.746929, "tags": [ "quis", "aute", "ex", "irure", "sint", "duis", "eiusmod" ], "friends": [ { "id": 0, "name": "Sweet Guerra" }, { "id": 1, "name": "Shannon Stevens" }, { "id": 2, "name": "Hawkins Hunt" } ], "greeting": "Hello, Ericka Lambert! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea236c4eae61510a67e7", "index": 1726, "guid": "f7572456-153c-46de-a1ae-f801347f2148", "isActive": false, "balance": "$3,775.04", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Mcleod Guzman", "gender": "male", "company": "COMVEYOR", "email": "mcleodguzman@comveyor.com", "phone": "+1 (989) 487-3366", "address": "349 Havemeyer Street, Felt, Illinois, 7203", "about": "Non qui in consectetur excepteur mollit. Amet ut aliqua est culpa elit commodo id minim cillum deserunt consectetur. Occaecat aliqua et ipsum eiusmod aute ea eiusmod ex minim ullamco eiusmod nisi. Quis cupidatat qui in laboris nulla nulla enim reprehenderit dolore eu deserunt. Ea proident elit occaecat Lorem laborum magna veniam irure minim. Aliqua consectetur excepteur in consectetur voluptate qui ad culpa.\r\n", "registered": "2014-01-10T06:10:44-13:00", "latitude": 19.253589, "longitude": -156.629207, "tags": [ "duis", "enim", "dolore", "Lorem", "eiusmod", "minim", "aliqua" ], "friends": [ { "id": 0, "name": "Carole Hickman" }, { "id": 1, "name": "Hilda Cooley" }, { "id": 2, "name": "Wilda Ortiz" } ], "greeting": "Hello, Mcleod Guzman! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2336841c65125171ce", "index": 1727, "guid": "6a70bb2f-9841-45a4-95ff-6cec01393117", "isActive": true, "balance": "$1,161.90", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Osborn French", "gender": "male", "company": "COSMETEX", "email": "osbornfrench@cosmetex.com", "phone": "+1 (908) 416-2829", "address": "787 Jamison Lane, Savage, South Carolina, 949", "about": "Ullamco aliquip proident ad sit do reprehenderit in. Ullamco quis esse ad aute veniam adipisicing ad enim commodo elit. Quis elit in esse consectetur ullamco reprehenderit id adipisicing reprehenderit excepteur. Culpa velit veniam eiusmod excepteur est occaecat eu ea minim nulla ex pariatur.\r\n", "registered": "2014-06-28T23:13:59-12:00", "latitude": 33.141654, "longitude": 171.525301, "tags": [ "velit", "eu", "ullamco", "ullamco", "enim", "velit", "nulla" ], "friends": [ { "id": 0, "name": "Vonda Carver" }, { "id": 1, "name": "Valerie Hughes" }, { "id": 2, "name": "Marta Acosta" } ], "greeting": "Hello, Osborn French! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23210a8df65f97d9eb", "index": 1728, "guid": "6e8228dd-2026-4ede-934a-40be07db624c", "isActive": true, "balance": "$1,454.43", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Molly Christian", "gender": "female", "company": "GINKLE", "email": "mollychristian@ginkle.com", "phone": "+1 (962) 549-2374", "address": "144 Beverley Road, Juntura, American Samoa, 3143", "about": "Occaecat ea et qui adipisicing do esse Lorem ex non duis qui Lorem incididunt. Fugiat velit magna ullamco eiusmod laboris sunt cupidatat occaecat laboris cillum amet. Amet occaecat ullamco id consectetur velit non non duis incididunt sint ut. In tempor id occaecat sunt. Enim adipisicing aliqua dolore do consectetur laborum velit quis id voluptate. Dolore velit in eiusmod est id amet sunt dolor ad consectetur consequat minim et ut. Nisi sit aliqua ad officia amet nisi labore laboris.\r\n", "registered": "2014-07-30T12:57:44-12:00", "latitude": 60.166567, "longitude": -51.31038, "tags": [ "do", "eiusmod", "sunt", "id", "deserunt", "aliqua", "aliquip" ], "friends": [ { "id": 0, "name": "Noreen Powers" }, { "id": 1, "name": "Buchanan Oliver" }, { "id": 2, "name": "Moss Douglas" } ], "greeting": "Hello, Molly Christian! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23f336ea3b5b0fb2f8", "index": 1729, "guid": "8430af75-2b55-4132-afde-ce1d28f37992", "isActive": true, "balance": "$2,598.07", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Dale Brewer", "gender": "female", "company": "DEMINIMUM", "email": "dalebrewer@deminimum.com", "phone": "+1 (948) 561-3601", "address": "728 Seaview Avenue, Glenshaw, Delaware, 9141", "about": "Elit dolor exercitation deserunt mollit et. Aliqua enim mollit amet velit sunt cillum aliqua quis velit ipsum est Lorem minim consectetur. Exercitation laboris eiusmod non pariatur consequat eu ullamco non deserunt aute anim in sint. Aliqua tempor ut id do. Proident deserunt elit deserunt enim excepteur.\r\n", "registered": "2014-04-26T21:52:21-12:00", "latitude": 47.795383, "longitude": -23.205409, "tags": [ "nisi", "ex", "consectetur", "ut", "sint", "minim", "laborum" ], "friends": [ { "id": 0, "name": "Villarreal Walsh" }, { "id": 1, "name": "Weiss Herring" }, { "id": 2, "name": "Rowland Chaney" } ], "greeting": "Hello, Dale Brewer! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2375d1555bb6ee3718", "index": 1730, "guid": "629dfdd6-1d32-495c-b25f-e10b30b61349", "isActive": true, "balance": "$2,551.01", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Scott Hunter", "gender": "male", "company": "UNIA", "email": "scotthunter@unia.com", "phone": "+1 (863) 547-2179", "address": "720 Cambridge Place, Caron, Pennsylvania, 8459", "about": "Magna labore consequat eu cillum deserunt Lorem dolor duis consequat. Elit consectetur proident aliquip nisi nostrud sint et. Sint nostrud officia officia reprehenderit Lorem nulla id commodo qui sunt qui consequat dolor occaecat. Ea sint cupidatat laborum fugiat nostrud consectetur.\r\n", "registered": "2014-05-03T05:16:20-12:00", "latitude": 5.957554, "longitude": -36.994465, "tags": [ "officia", "cillum", "sit", "culpa", "qui", "laboris", "consectetur" ], "friends": [ { "id": 0, "name": "Cote Cantrell" }, { "id": 1, "name": "Burgess Monroe" }, { "id": 2, "name": "Vicky Harper" } ], "greeting": "Hello, Scott Hunter! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2305946676c0f44b52", "index": 1731, "guid": "dacb7d1b-800b-4876-a170-78d529f20626", "isActive": false, "balance": "$1,571.64", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Faye Stout", "gender": "female", "company": "EMPIRICA", "email": "fayestout@empirica.com", "phone": "+1 (951) 495-3284", "address": "474 Pine Street, Bordelonville, Georgia, 9472", "about": "Sunt consequat incididunt et laborum est reprehenderit aute qui nulla. Ad non et adipisicing aliqua pariatur minim mollit nulla adipisicing cillum cillum voluptate. Officia veniam fugiat magna minim deserunt duis exercitation veniam laborum aliquip. Incididunt eu aliqua nulla enim consectetur aute commodo elit aliqua pariatur nulla cillum sit.\r\n", "registered": "2014-08-19T06:45:55-12:00", "latitude": 51.293942, "longitude": 99.775307, "tags": [ "voluptate", "anim", "fugiat", "fugiat", "magna", "dolor", "in" ], "friends": [ { "id": 0, "name": "Stacey Glenn" }, { "id": 1, "name": "Graciela Goff" }, { "id": 2, "name": "Edwina Cannon" } ], "greeting": "Hello, Faye Stout! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea231103546196abcd23", "index": 1732, "guid": "7261f7a9-d2d9-4ba7-810e-aa851e3f0f6b", "isActive": false, "balance": "$1,356.49", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Susie Buchanan", "gender": "female", "company": "AQUACINE", "email": "susiebuchanan@aquacine.com", "phone": "+1 (840) 473-3213", "address": "458 Aberdeen Street, Clay, North Dakota, 5620", "about": "In consectetur laborum quis elit velit eiusmod anim voluptate esse incididunt sit minim. Laborum reprehenderit sint ipsum quis ullamco veniam consectetur consectetur eu labore amet. Et ea do incididunt minim. Cupidatat enim officia id do. Elit cupidatat anim do exercitation officia id eiusmod occaecat eu do voluptate eiusmod. Ad incididunt in ex deserunt duis consectetur culpa ad.\r\n", "registered": "2014-05-26T07:56:18-12:00", "latitude": -77.97484, "longitude": 123.623578, "tags": [ "consequat", "id", "incididunt", "proident", "dolor", "magna", "nostrud" ], "friends": [ { "id": 0, "name": "Lucy Trujillo" }, { "id": 1, "name": "Colon Pittman" }, { "id": 2, "name": "Sanders Crane" } ], "greeting": "Hello, Susie Buchanan! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea233b67a4f1f8b1f2c3", "index": 1733, "guid": "4e2b673a-05ca-4580-b14d-d06bb1d9b75a", "isActive": true, "balance": "$1,795.55", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Hudson Pruitt", "gender": "male", "company": "DANCERITY", "email": "hudsonpruitt@dancerity.com", "phone": "+1 (983) 582-2978", "address": "333 Crooke Avenue, Elliott, Louisiana, 5405", "about": "Anim enim labore et cillum ut laboris cupidatat esse cupidatat non est non nostrud. Cillum adipisicing dolor nostrud cupidatat mollit aliqua nulla. Eiusmod et exercitation veniam nisi laborum incididunt commodo. Nostrud sit amet officia nostrud id officia culpa irure nostrud sit est tempor eiusmod enim.\r\n", "registered": "2014-04-24T13:34:08-12:00", "latitude": -35.942814, "longitude": 54.528846, "tags": [ "culpa", "voluptate", "ea", "consequat", "pariatur", "dolore", "exercitation" ], "friends": [ { "id": 0, "name": "Shana Holmes" }, { "id": 1, "name": "Nadine Bryant" }, { "id": 2, "name": "Deidre Cummings" } ], "greeting": "Hello, Hudson Pruitt! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23de24cf90b262290a", "index": 1734, "guid": "27529136-a01e-491a-8506-8150494b3c3b", "isActive": true, "balance": "$2,052.12", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Lee Gilmore", "gender": "male", "company": "OLYMPIX", "email": "leegilmore@olympix.com", "phone": "+1 (991) 449-3560", "address": "278 Brightwater Court, Dawn, Northern Mariana Islands, 9469", "about": "Laborum cupidatat tempor aliqua sit. Consectetur do est veniam deserunt laborum ipsum magna. Lorem ea dolore voluptate tempor ut reprehenderit nulla velit voluptate ullamco quis. Laboris elit enim aliqua minim veniam sint. Magna minim non adipisicing quis tempor excepteur laboris incididunt. In id anim excepteur ad pariatur id Lorem ullamco eu et ipsum tempor nulla aliqua.\r\n", "registered": "2014-04-25T23:05:38-12:00", "latitude": -16.274922, "longitude": -68.205987, "tags": [ "exercitation", "proident", "mollit", "et", "laborum", "occaecat", "aute" ], "friends": [ { "id": 0, "name": "Curtis Powell" }, { "id": 1, "name": "Jennings Silva" }, { "id": 2, "name": "Mclaughlin Wong" } ], "greeting": "Hello, Lee Gilmore! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea239a203a1792020d89", "index": 1735, "guid": "bc654367-3ba5-4d72-ac25-541891d449d1", "isActive": true, "balance": "$2,468.86", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Mcbride Hood", "gender": "male", "company": "CALCULA", "email": "mcbridehood@calcula.com", "phone": "+1 (935) 578-3248", "address": "609 Ira Court, Croom, Colorado, 577", "about": "Esse occaecat eiusmod irure non in exercitation aute. Minim in non enim sint ea pariatur qui labore dolor duis. Quis Lorem dolore id excepteur.\r\n", "registered": "2014-01-27T16:22:43-13:00", "latitude": -78.702656, "longitude": 118.987069, "tags": [ "reprehenderit", "incididunt", "nostrud", "exercitation", "veniam", "officia", "enim" ], "friends": [ { "id": 0, "name": "Mavis Herrera" }, { "id": 1, "name": "Cooper Hanson" }, { "id": 2, "name": "Karin Hammond" } ], "greeting": "Hello, Mcbride Hood! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2334232c26d1314b44", "index": 1736, "guid": "0af0f99d-30e7-4423-98df-78e51e36919f", "isActive": false, "balance": "$3,928.81", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Marquita Burnett", "gender": "female", "company": "DRAGBOT", "email": "marquitaburnett@dragbot.com", "phone": "+1 (854) 479-2577", "address": "745 Bayview Place, Dunnavant, Idaho, 8513", "about": "Veniam veniam labore fugiat ea sunt Lorem Lorem adipisicing amet labore pariatur nulla incididunt nisi. Eiusmod incididunt elit irure in mollit consequat incididunt. Laborum proident irure tempor quis eiusmod sunt aliquip non exercitation.\r\n", "registered": "2014-05-12T19:05:41-12:00", "latitude": -53.847249, "longitude": -173.551571, "tags": [ "cillum", "laboris", "labore", "velit", "adipisicing", "veniam", "nulla" ], "friends": [ { "id": 0, "name": "Wolfe Barr" }, { "id": 1, "name": "Tillman Bradley" }, { "id": 2, "name": "Gordon Howard" } ], "greeting": "Hello, Marquita Burnett! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea238191c6f51671a6f0", "index": 1737, "guid": "b622b47b-4c96-49d5-b00d-e081631e7826", "isActive": true, "balance": "$1,936.36", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Howell Webster", "gender": "male", "company": "SENSATE", "email": "howellwebster@sensate.com", "phone": "+1 (918) 462-3111", "address": "936 Kingsway Place, Colton, Marshall Islands, 9224", "about": "Sint ipsum ut quis aute. Nisi eu laborum pariatur cillum. Aliqua reprehenderit qui ad incididunt ut dolore laboris. Mollit labore irure eu mollit adipisicing non anim in amet pariatur. Ad eiusmod labore excepteur officia ea culpa tempor.\r\n", "registered": "2014-09-03T20:21:20-12:00", "latitude": -53.867825, "longitude": -113.099596, "tags": [ "labore", "minim", "dolor", "consequat", "non", "do", "et" ], "friends": [ { "id": 0, "name": "Samantha Weber" }, { "id": 1, "name": "Kemp Faulkner" }, { "id": 2, "name": "Delores Richardson" } ], "greeting": "Hello, Howell Webster! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2348452851d5b14333", "index": 1738, "guid": "00a45a26-d1db-47d3-9f45-ef505dbffcf1", "isActive": true, "balance": "$1,778.46", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Maribel Hess", "gender": "female", "company": "ISOLOGICA", "email": "maribelhess@isologica.com", "phone": "+1 (828) 585-3704", "address": "579 Java Street, Farmers, New York, 5218", "about": "Eiusmod voluptate anim amet eu id laboris irure dolor nulla eiusmod sunt veniam. Anim non ipsum elit exercitation reprehenderit do laboris do ad qui consequat. Excepteur do proident non est sit. Culpa in sunt nulla ipsum consequat veniam. Occaecat esse occaecat eu mollit quis excepteur ut. Ipsum proident veniam do ex pariatur enim eu aute consectetur ea enim.\r\n", "registered": "2014-05-06T17:29:26-12:00", "latitude": 48.566546, "longitude": 106.323312, "tags": [ "enim", "culpa", "et", "do", "eiusmod", "culpa", "elit" ], "friends": [ { "id": 0, "name": "Rosario Olson" }, { "id": 1, "name": "Francis Ferrell" }, { "id": 2, "name": "Gayle Blevins" } ], "greeting": "Hello, Maribel Hess! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23b40d31757f0e7dcb", "index": 1739, "guid": "ce0b9131-d178-4b7c-a10e-f5754a5f1275", "isActive": true, "balance": "$3,528.14", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Hoover Andrews", "gender": "male", "company": "UTARA", "email": "hooverandrews@utara.com", "phone": "+1 (832) 543-2913", "address": "734 Trucklemans Lane, Brownsville, Guam, 3825", "about": "Id ea laborum do labore. Nulla excepteur ea ex Lorem. Mollit sint id voluptate et dolore labore. Minim irure amet esse sunt in ea Lorem dolor anim laborum consectetur qui occaecat est. Nulla consequat voluptate aliqua esse nisi ut ipsum incididunt duis consectetur do. Duis magna exercitation enim ut qui reprehenderit veniam amet sunt.\r\n", "registered": "2014-04-30T20:21:55-12:00", "latitude": 22.782157, "longitude": -111.292433, "tags": [ "ex", "consequat", "id", "ex", "id", "anim", "officia" ], "friends": [ { "id": 0, "name": "Clark Campos" }, { "id": 1, "name": "Merrill Dean" }, { "id": 2, "name": "Harrell Cotton" } ], "greeting": "Hello, Hoover Andrews! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea231b0edcc4a755252e", "index": 1740, "guid": "f67fc79a-1204-4d1a-9762-999746a8cce4", "isActive": true, "balance": "$3,434.33", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Nguyen Winters", "gender": "male", "company": "TUBESYS", "email": "nguyenwinters@tubesys.com", "phone": "+1 (831) 600-3965", "address": "693 Senator Street, Brewster, Virgin Islands, 7352", "about": "Ut duis excepteur ullamco est. Et quis incididunt do aliquip elit nostrud fugiat non sunt. Ullamco elit irure aliquip duis nostrud velit exercitation anim dolore Lorem eu in reprehenderit laboris.\r\n", "registered": "2014-03-25T07:58:23-13:00", "latitude": -70.148327, "longitude": -126.92364, "tags": [ "adipisicing", "ullamco", "dolor", "eiusmod", "est", "tempor", "veniam" ], "friends": [ { "id": 0, "name": "Karina Payne" }, { "id": 1, "name": "Bates Puckett" }, { "id": 2, "name": "Guzman Finley" } ], "greeting": "Hello, Nguyen Winters! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea236d68a8a64bccca3c", "index": 1741, "guid": "c7ca1a83-e787-4181-a394-3c1dc01c8c90", "isActive": true, "balance": "$3,427.65", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Mcfadden Conrad", "gender": "male", "company": "ZILLATIDE", "email": "mcfaddenconrad@zillatide.com", "phone": "+1 (895) 418-3923", "address": "788 Bayview Avenue, Morriston, Massachusetts, 2541", "about": "Officia veniam irure in enim consequat pariatur ut velit nostrud aliqua sit est ad sit. Amet qui cupidatat dolor elit voluptate cillum ullamco nisi enim. Eu sint voluptate ea esse tempor velit.\r\n", "registered": "2014-02-22T23:36:39-13:00", "latitude": -50.711374, "longitude": -53.279781, "tags": [ "veniam", "excepteur", "sit", "aute", "elit", "aliqua", "exercitation" ], "friends": [ { "id": 0, "name": "Guadalupe Allison" }, { "id": 1, "name": "Lourdes Dennis" }, { "id": 2, "name": "Kirby Bright" } ], "greeting": "Hello, Mcfadden Conrad! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23c1b8c445c29d0777", "index": 1742, "guid": "100d145c-4c3a-445f-a02f-2e1676c96891", "isActive": false, "balance": "$1,339.34", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Kellie Freeman", "gender": "female", "company": "COMVEY", "email": "kelliefreeman@comvey.com", "phone": "+1 (956) 457-3212", "address": "465 Locust Street, Delwood, Utah, 5608", "about": "Dolor dolor id eu cupidatat mollit cillum et ad incididunt veniam duis laborum. Duis nulla aliqua culpa ea enim esse. Dolore proident aliqua proident nostrud elit Lorem amet eu enim veniam excepteur.\r\n", "registered": "2014-03-12T19:22:42-13:00", "latitude": 50.584931, "longitude": 62.348618, "tags": [ "esse", "in", "est", "ea", "elit", "ad", "do" ], "friends": [ { "id": 0, "name": "Elaine Vargas" }, { "id": 1, "name": "Henrietta Fuentes" }, { "id": 2, "name": "Doyle Giles" } ], "greeting": "Hello, Kellie Freeman! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea235b3ff15c464b0f9e", "index": 1743, "guid": "3f557996-4a72-40ef-9c56-5b4c93934a60", "isActive": true, "balance": "$1,297.82", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Hill Singleton", "gender": "male", "company": "MUSAPHICS", "email": "hillsingleton@musaphics.com", "phone": "+1 (815) 422-3059", "address": "400 Dunham Place, Kenwood, Montana, 8527", "about": "Laboris ea sit sit nulla esse ea ea reprehenderit. Id esse ut nulla do proident amet cillum. Et non commodo reprehenderit excepteur nostrud cupidatat consectetur sint ea laborum sint occaecat consectetur.\r\n", "registered": "2014-04-15T04:40:39-12:00", "latitude": 68.750924, "longitude": 125.725386, "tags": [ "culpa", "occaecat", "enim", "aute", "est", "culpa", "mollit" ], "friends": [ { "id": 0, "name": "Franklin Farmer" }, { "id": 1, "name": "Leanna Lewis" }, { "id": 2, "name": "Dickson Castaneda" } ], "greeting": "Hello, Hill Singleton! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23267d8511a149737e", "index": 1744, "guid": "f6f0187a-f5d6-4b5a-894a-30bce388ac9a", "isActive": true, "balance": "$2,332.42", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Bianca Burgess", "gender": "female", "company": "MEDICROIX", "email": "biancaburgess@medicroix.com", "phone": "+1 (991) 498-3192", "address": "495 Miller Place, Detroit, Wisconsin, 9956", "about": "Nulla minim tempor sint et tempor et ea do anim ullamco aliquip voluptate labore adipisicing. Est sit non tempor deserunt ipsum eiusmod laboris commodo sit qui cupidatat amet. Irure esse laborum adipisicing excepteur. Elit adipisicing eu non enim eu aute adipisicing aliquip pariatur proident ullamco.\r\n", "registered": "2014-05-15T11:08:20-12:00", "latitude": 53.708539, "longitude": 94.597377, "tags": [ "amet", "culpa", "consectetur", "ullamco", "do", "est", "id" ], "friends": [ { "id": 0, "name": "Bridget Brooks" }, { "id": 1, "name": "Bobbi Boyer" }, { "id": 2, "name": "Evangelina Cortez" } ], "greeting": "Hello, Bianca Burgess! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea237d30c3153744a55c", "index": 1745, "guid": "a03a1fbc-be3f-48df-930c-14ba1c8f484a", "isActive": true, "balance": "$1,704.76", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Sara Beck", "gender": "female", "company": "ACCRUEX", "email": "sarabeck@accruex.com", "phone": "+1 (935) 564-2253", "address": "978 Jay Street, Edenburg, Maine, 8225", "about": "Dolore qui labore non irure magna eu eu ad id reprehenderit. Occaecat laborum nostrud exercitation commodo est anim enim aliqua Lorem voluptate. Anim ullamco nostrud ipsum dolor commodo anim voluptate incididunt id minim quis veniam magna ut.\r\n", "registered": "2014-06-27T00:37:42-12:00", "latitude": -58.517926, "longitude": -156.66273, "tags": [ "id", "elit", "deserunt", "est", "irure", "nulla", "esse" ], "friends": [ { "id": 0, "name": "Morse Hurley" }, { "id": 1, "name": "Snider Macias" }, { "id": 2, "name": "Marietta Buckner" } ], "greeting": "Hello, Sara Beck! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2327124d28100ffb07", "index": 1746, "guid": "98907048-4c26-417f-bff7-60a0c123cc56", "isActive": false, "balance": "$1,157.39", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Christy Cooke", "gender": "female", "company": "TECHMANIA", "email": "christycooke@techmania.com", "phone": "+1 (952) 580-2190", "address": "658 Atlantic Avenue, Geyserville, Virginia, 7097", "about": "Eu velit tempor excepteur excepteur ex quis veniam incididunt ullamco eu sunt laborum cupidatat. Qui culpa aute minim fugiat tempor anim aliqua magna aute dolore ea reprehenderit. Ea veniam sit id nulla qui mollit.\r\n", "registered": "2014-01-20T10:53:35-13:00", "latitude": 86.794046, "longitude": -52.505426, "tags": [ "id", "dolor", "ea", "dolor", "deserunt", "nostrud", "ad" ], "friends": [ { "id": 0, "name": "Washington Garrett" }, { "id": 1, "name": "Madeleine Mcleod" }, { "id": 2, "name": "Chrystal Mcgee" } ], "greeting": "Hello, Christy Cooke! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2324ceb62b045bc591", "index": 1747, "guid": "6a5f6425-f703-4805-8a17-3e3e2b7a06da", "isActive": true, "balance": "$3,612.15", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Erickson Horne", "gender": "male", "company": "QUILCH", "email": "ericksonhorne@quilch.com", "phone": "+1 (869) 476-3617", "address": "170 Conover Street, Williams, Kentucky, 7950", "about": "Nisi sunt nulla in enim adipisicing qui aliqua officia eu voluptate. Pariatur esse minim pariatur eu voluptate do ipsum id aliquip. Consequat anim aliquip velit laboris amet eiusmod consectetur enim aliqua laboris ipsum dolore deserunt. Veniam aliquip ipsum magna pariatur cupidatat.\r\n", "registered": "2014-04-21T22:02:21-12:00", "latitude": -56.568173, "longitude": 165.734555, "tags": [ "ut", "nisi", "eu", "officia", "commodo", "labore", "officia" ], "friends": [ { "id": 0, "name": "Lindsay Kinney" }, { "id": 1, "name": "Nixon Witt" }, { "id": 2, "name": "Roxanne Perkins" } ], "greeting": "Hello, Erickson Horne! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23c361aaf214649626", "index": 1748, "guid": "fc3eada0-567e-469d-b1ed-d172b79d2497", "isActive": false, "balance": "$3,849.31", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Juliana Merrill", "gender": "female", "company": "DUFLEX", "email": "julianamerrill@duflex.com", "phone": "+1 (832) 583-2349", "address": "219 Tapscott Avenue, Carrsville, Connecticut, 1228", "about": "Elit occaecat nostrud fugiat aliqua ad sit commodo dolore eu. Commodo velit aliquip eiusmod sit ad tempor proident quis elit. Cupidatat eu commodo proident nostrud quis do irure magna pariatur voluptate laborum cillum reprehenderit magna.\r\n", "registered": "2014-08-04T14:08:46-12:00", "latitude": -43.309632, "longitude": 163.069106, "tags": [ "exercitation", "commodo", "ut", "duis", "cupidatat", "consequat", "velit" ], "friends": [ { "id": 0, "name": "Lamb Cherry" }, { "id": 1, "name": "Avery Lucas" }, { "id": 2, "name": "Page Hancock" } ], "greeting": "Hello, Juliana Merrill! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23df5ec5589cab5aef", "index": 1749, "guid": "2b54f770-0488-427a-92d9-05b4364fc771", "isActive": false, "balance": "$3,119.32", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Tracey Wilkerson", "gender": "female", "company": "QUANTASIS", "email": "traceywilkerson@quantasis.com", "phone": "+1 (975) 577-3835", "address": "118 Lancaster Avenue, Centerville, Mississippi, 1192", "about": "Occaecat aliquip incididunt tempor nostrud elit incididunt sit commodo est eu quis dolore. Officia aliqua elit cupidatat ullamco proident mollit quis. Lorem adipisicing officia minim nisi reprehenderit dolor qui. Ut do irure enim in nostrud aute pariatur aliqua laborum anim adipisicing. Ipsum voluptate amet duis cillum laborum ex qui laboris occaecat sunt aliqua. Lorem tempor eu est aliqua minim et irure reprehenderit excepteur. Ut cillum incididunt adipisicing fugiat.\r\n", "registered": "2014-03-18T19:22:31-13:00", "latitude": -8.74198, "longitude": -149.657783, "tags": [ "amet", "dolore", "ad", "consectetur", "labore", "eu", "non" ], "friends": [ { "id": 0, "name": "Melanie Zamora" }, { "id": 1, "name": "Geraldine Mack" }, { "id": 2, "name": "Ray Oneill" } ], "greeting": "Hello, Tracey Wilkerson! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23a1200b3cda659659", "index": 1750, "guid": "30d65dc2-f5aa-48c2-86c1-cffdf94d4165", "isActive": true, "balance": "$3,168.52", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Newman Lawson", "gender": "male", "company": "QUIZKA", "email": "newmanlawson@quizka.com", "phone": "+1 (894) 587-2499", "address": "187 Woodside Avenue, Dellview, Washington, 1671", "about": "Irure sit adipisicing veniam do amet consequat aliqua elit Lorem ullamco. Proident eu officia laborum laborum duis laborum qui. Consectetur et deserunt ipsum sint labore nostrud. Id aliqua aliqua fugiat laboris occaecat nostrud reprehenderit cupidatat elit elit.\r\n", "registered": "2014-04-02T16:43:14-13:00", "latitude": 5.561542, "longitude": 156.853001, "tags": [ "culpa", "sunt", "ex", "proident", "nulla", "magna", "ad" ], "friends": [ { "id": 0, "name": "Patrica Thomas" }, { "id": 1, "name": "Sherman Stein" }, { "id": 2, "name": "Thelma Jacobs" } ], "greeting": "Hello, Newman Lawson! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23d7bae77a025ff2c2", "index": 1751, "guid": "49bc6e83-918b-4ffb-828b-89293d0f66bf", "isActive": true, "balance": "$1,189.15", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Fuentes Malone", "gender": "male", "company": "COMVOY", "email": "fuentesmalone@comvoy.com", "phone": "+1 (933) 423-2603", "address": "131 Emerald Street, Skyland, Tennessee, 8522", "about": "Adipisicing nisi cupidatat esse proident. Ex consectetur minim sint quis amet fugiat. Do excepteur enim pariatur consequat labore in culpa deserunt irure. Fugiat laboris ex est quis dolore cupidatat Lorem non commodo sit sint. Voluptate voluptate aliquip magna in et nisi.\r\n", "registered": "2014-08-18T20:53:30-12:00", "latitude": -37.73002, "longitude": -86.688866, "tags": [ "culpa", "laborum", "dolore", "magna", "culpa", "eu", "pariatur" ], "friends": [ { "id": 0, "name": "Johnston Lynch" }, { "id": 1, "name": "Dixie Hendrix" }, { "id": 2, "name": "Agnes Meyer" } ], "greeting": "Hello, Fuentes Malone! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2391c624169a471018", "index": 1752, "guid": "19530f83-1c21-4fdf-ba9c-85724d4bc099", "isActive": false, "balance": "$2,787.42", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Anne Walton", "gender": "female", "company": "FRANSCENE", "email": "annewalton@franscene.com", "phone": "+1 (897) 574-2392", "address": "232 Nelson Street, Grenelefe, Alabama, 2990", "about": "Esse velit pariatur eu pariatur culpa ipsum nostrud. Ex qui ea voluptate dolor qui nisi dolor dolor. Enim proident do commodo ex reprehenderit ex consequat irure occaecat officia dolore. Sint sint laboris reprehenderit adipisicing amet occaecat reprehenderit aliqua qui aliquip veniam.\r\n", "registered": "2014-01-06T10:42:05-13:00", "latitude": 41.527643, "longitude": -164.326468, "tags": [ "nisi", "dolor", "deserunt", "non", "pariatur", "anim", "dolor" ], "friends": [ { "id": 0, "name": "Shepard Stanley" }, { "id": 1, "name": "Boyle Collins" }, { "id": 2, "name": "Browning Sosa" } ], "greeting": "Hello, Anne Walton! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea231f5e954033a6cee3", "index": 1753, "guid": "6c43be12-b7dc-47a5-9a31-d5754697d2a0", "isActive": true, "balance": "$3,701.75", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Pena Sampson", "gender": "male", "company": "ZUVY", "email": "penasampson@zuvy.com", "phone": "+1 (815) 425-3404", "address": "748 Moffat Street, Beason, Ohio, 4460", "about": "Adipisicing do adipisicing quis sit ea sint veniam voluptate sunt amet labore officia. Enim qui incididunt incididunt minim ex pariatur proident. Minim magna dolore laboris reprehenderit. Sint culpa ad qui elit ipsum tempor irure ipsum laborum ea enim nisi duis. Ex ut reprehenderit aute eu proident pariatur labore nulla incididunt. Qui irure proident magna nostrud. Consequat nostrud mollit velit velit eu aliquip Lorem anim.\r\n", "registered": "2014-01-26T19:58:30-13:00", "latitude": -15.798864, "longitude": -16.743519, "tags": [ "fugiat", "id", "et", "Lorem", "in", "ipsum", "consectetur" ], "friends": [ { "id": 0, "name": "Gay Cain" }, { "id": 1, "name": "Barr Sawyer" }, { "id": 2, "name": "Bradshaw Wilder" } ], "greeting": "Hello, Pena Sampson! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2364499f5deeb48808", "index": 1754, "guid": "8f6fd140-faf6-428f-a0d1-24ef528f883d", "isActive": true, "balance": "$3,742.68", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "James Mccray", "gender": "male", "company": "ACCUFARM", "email": "jamesmccray@accufarm.com", "phone": "+1 (994) 497-2918", "address": "802 Anthony Street, Fairview, Hawaii, 3395", "about": "Magna eu excepteur non consequat occaecat et ipsum enim. Proident dolore eu magna cupidatat quis mollit officia. Incididunt voluptate reprehenderit ex esse dolore minim. Velit sit magna cupidatat irure qui laboris proident voluptate velit laborum tempor minim.\r\n", "registered": "2014-07-04T06:05:53-12:00", "latitude": 82.181842, "longitude": -42.518348, "tags": [ "et", "non", "velit", "nisi", "incididunt", "dolor", "consequat" ], "friends": [ { "id": 0, "name": "Oliver Sanford" }, { "id": 1, "name": "Annabelle Cardenas" }, { "id": 2, "name": "Ayers Morrow" } ], "greeting": "Hello, James Mccray! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23a817c9c951a95f92", "index": 1755, "guid": "0ea620c3-8dfb-45f8-84fb-3ec3e9985b04", "isActive": false, "balance": "$3,916.79", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Ruby Livingston", "gender": "female", "company": "WEBIOTIC", "email": "rubylivingston@webiotic.com", "phone": "+1 (931) 444-3674", "address": "889 Beaver Street, Bowmansville, New Mexico, 9035", "about": "Ea duis reprehenderit labore non minim ullamco et fugiat. Officia culpa incididunt cillum consequat eu anim irure adipisicing irure anim mollit ut. Occaecat duis culpa esse ad anim velit. Incididunt eu ut sint anim commodo. Non ut consequat veniam cupidatat nisi officia ullamco in eiusmod non.\r\n", "registered": "2014-07-18T02:13:44-12:00", "latitude": 67.818388, "longitude": -126.839965, "tags": [ "ex", "esse", "et", "excepteur", "consectetur", "deserunt", "ad" ], "friends": [ { "id": 0, "name": "Burks Hamilton" }, { "id": 1, "name": "Hatfield Shepherd" }, { "id": 2, "name": "Russo Clayton" } ], "greeting": "Hello, Ruby Livingston! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea237913677297ddec7b", "index": 1756, "guid": "4e86c0fa-76ac-4255-930f-faabd32c0adf", "isActive": true, "balance": "$3,800.86", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Hester Atkinson", "gender": "male", "company": "EARBANG", "email": "hesteratkinson@earbang.com", "phone": "+1 (829) 511-2966", "address": "849 Aster Court, Watchtower, Maryland, 3285", "about": "Ipsum enim eiusmod reprehenderit incididunt ex non magna exercitation culpa sint occaecat ullamco. Consectetur consequat ipsum esse ad proident sunt amet commodo reprehenderit est elit sunt consequat. Sint nisi laborum deserunt non. Sit elit minim irure enim eu cupidatat in minim. Voluptate consequat magna consectetur est ex nulla occaecat sunt culpa irure eu elit.\r\n", "registered": "2014-09-16T22:15:57-12:00", "latitude": 54.096807, "longitude": -4.906398, "tags": [ "exercitation", "incididunt", "deserunt", "laboris", "reprehenderit", "fugiat", "minim" ], "friends": [ { "id": 0, "name": "Mejia Clay" }, { "id": 1, "name": "Gonzalez Whitehead" }, { "id": 2, "name": "Chan Rush" } ], "greeting": "Hello, Hester Atkinson! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23ac6dff09a4c43364", "index": 1757, "guid": "b033ae69-21f4-4c42-bb00-df977df20d04", "isActive": false, "balance": "$1,354.20", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Elva Hayden", "gender": "female", "company": "KONNECT", "email": "elvahayden@konnect.com", "phone": "+1 (886) 459-2624", "address": "335 Lake Street, Nogal, Alaska, 4417", "about": "Mollit officia cupidatat enim ipsum ipsum reprehenderit pariatur in magna aliquip ipsum minim cillum. Laborum tempor proident minim sint duis. Dolore do ad enim veniam reprehenderit do esse quis ad deserunt tempor ut. Nulla dolor dolor incididunt non pariatur et cupidatat ad ullamco laborum amet. Sint reprehenderit ut incididunt dolor. Deserunt aliquip occaecat non ad. Dolor magna elit consequat deserunt nostrud Lorem esse veniam fugiat ut proident.\r\n", "registered": "2014-02-23T19:27:36-13:00", "latitude": -81.046372, "longitude": 87.629696, "tags": [ "eiusmod", "fugiat", "proident", "labore", "cupidatat", "officia", "officia" ], "friends": [ { "id": 0, "name": "Esperanza Wooten" }, { "id": 1, "name": "Christi Blankenship" }, { "id": 2, "name": "Buckner Kent" } ], "greeting": "Hello, Elva Hayden! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea236844975b44646dc6", "index": 1758, "guid": "e90b9c11-9b1d-4e28-9461-c4600556ba4a", "isActive": true, "balance": "$2,607.75", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Carroll Ramirez", "gender": "male", "company": "ZIGGLES", "email": "carrollramirez@ziggles.com", "phone": "+1 (897) 577-3151", "address": "784 Grattan Street, Highland, Arizona, 3246", "about": "Eu ex dolor ullamco duis culpa eiusmod mollit adipisicing cillum nulla ex incididunt. Non ipsum ut nisi adipisicing consectetur dolore aliquip commodo sunt proident minim deserunt. Lorem do adipisicing tempor nulla magna. Quis sit sunt aliquip magna labore aute mollit consectetur elit ex elit consectetur. Sit mollit commodo duis magna eu sint. Magna excepteur ad et veniam elit sint duis aliqua magna adipisicing ex quis nostrud.\r\n", "registered": "2014-06-14T23:54:57-12:00", "latitude": 11.20878, "longitude": -81.173538, "tags": [ "cupidatat", "sint", "magna", "id", "elit", "nisi", "cillum" ], "friends": [ { "id": 0, "name": "Debra Hardy" }, { "id": 1, "name": "Byrd Ross" }, { "id": 2, "name": "Ellison Wade" } ], "greeting": "Hello, Carroll Ramirez! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea235c7e24dc824fcf65", "index": 1759, "guid": "5d21a5e8-9ad1-44e0-af84-c7c5df50ecb8", "isActive": false, "balance": "$1,097.62", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Valarie Cunningham", "gender": "female", "company": "EVENTIX", "email": "valariecunningham@eventix.com", "phone": "+1 (868) 406-3940", "address": "234 Lamont Court, Rivers, Federated States Of Micronesia, 2796", "about": "Proident pariatur cupidatat consequat est non eu qui reprehenderit aute. Nostrud adipisicing do do cillum cupidatat cupidatat. Exercitation ut ad proident magna. Officia ex sit adipisicing veniam dolor nulla quis deserunt. Irure do dolor ex qui mollit laborum enim occaecat anim. Reprehenderit dolore sit nostrud esse proident est eu enim.\r\n", "registered": "2014-08-11T14:37:32-12:00", "latitude": 58.049509, "longitude": 63.280399, "tags": [ "in", "aute", "deserunt", "elit", "elit", "laborum", "aliquip" ], "friends": [ { "id": 0, "name": "Melinda Noble" }, { "id": 1, "name": "Faulkner Montgomery" }, { "id": 2, "name": "Farmer Tran" } ], "greeting": "Hello, Valarie Cunningham! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2345c3899a5793519a", "index": 1760, "guid": "1d72b074-2eb0-47a2-b42a-505894a76cc2", "isActive": true, "balance": "$1,741.31", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Margaret Valdez", "gender": "female", "company": "COMSTAR", "email": "margaretvaldez@comstar.com", "phone": "+1 (876) 413-3608", "address": "764 Bethel Loop, Smeltertown, Oklahoma, 3720", "about": "Esse consectetur nostrud nulla pariatur mollit aute et reprehenderit voluptate amet sunt exercitation. Deserunt reprehenderit aliqua tempor proident veniam aliquip. Nostrud adipisicing nostrud exercitation in irure anim esse laborum culpa nostrud. Magna aute nisi et voluptate nulla velit officia labore id consectetur non officia. Lorem adipisicing voluptate exercitation tempor laboris excepteur cillum aliquip. Consequat incididunt exercitation labore id adipisicing deserunt sint pariatur culpa.\r\n", "registered": "2014-05-27T04:18:53-12:00", "latitude": -19.789722, "longitude": -18.44208, "tags": [ "eiusmod", "irure", "dolor", "consequat", "est", "enim", "dolor" ], "friends": [ { "id": 0, "name": "Morgan Hebert" }, { "id": 1, "name": "Adrienne Simmons" }, { "id": 2, "name": "Angelia Fox" } ], "greeting": "Hello, Margaret Valdez! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23c4506e1b240fd3e1", "index": 1761, "guid": "6321addb-d81e-4d25-89d5-276b5d5c3003", "isActive": false, "balance": "$1,610.49", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Davis Mosley", "gender": "male", "company": "ASSISTIA", "email": "davismosley@assistia.com", "phone": "+1 (811) 538-2954", "address": "762 Judge Street, Henrietta, Michigan, 1431", "about": "Reprehenderit est dolore nisi anim. Officia velit dolore cillum velit est fugiat labore magna. Tempor commodo Lorem mollit nisi Lorem proident. Excepteur ea culpa labore ea excepteur labore. Amet in nisi excepteur minim cupidatat et pariatur commodo laborum excepteur. Aute nisi esse officia aliquip nisi sit nulla eiusmod incididunt voluptate officia.\r\n", "registered": "2014-04-16T23:54:28-12:00", "latitude": 63.257244, "longitude": -106.765473, "tags": [ "do", "deserunt", "proident", "fugiat", "minim", "non", "reprehenderit" ], "friends": [ { "id": 0, "name": "Frank Cole" }, { "id": 1, "name": "Lewis Waters" }, { "id": 2, "name": "Pollard Vega" } ], "greeting": "Hello, Davis Mosley! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23b8ec6c4df407b344", "index": 1762, "guid": "a3e121b0-d0fd-4a3a-90ac-32426607c3a8", "isActive": true, "balance": "$2,649.65", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Kathrine Madden", "gender": "female", "company": "RAMEON", "email": "kathrinemadden@rameon.com", "phone": "+1 (932) 402-2811", "address": "833 Metrotech Courtr, Cloverdale, Kansas, 4757", "about": "Veniam ea adipisicing sit Lorem id laboris ad. Commodo culpa aliqua sunt aliqua reprehenderit laborum consequat exercitation. Tempor culpa enim dolor minim aliquip dolor et aliquip quis in qui. Cillum nulla sit adipisicing velit proident tempor et excepteur deserunt ea consequat deserunt proident. Tempor sit aute officia ipsum veniam incididunt irure. Sit ullamco ipsum aute dolore voluptate cillum. Amet dolor aute labore laborum commodo nisi id ex ad est.\r\n", "registered": "2014-07-05T03:36:24-12:00", "latitude": 50.585645, "longitude": 105.567229, "tags": [ "sit", "fugiat", "tempor", "culpa", "laborum", "aute", "pariatur" ], "friends": [ { "id": 0, "name": "Essie Bradford" }, { "id": 1, "name": "Powers Slater" }, { "id": 2, "name": "Leach Maddox" } ], "greeting": "Hello, Kathrine Madden! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea239055490595c79422", "index": 1763, "guid": "c9f54eee-a60b-480e-8c6b-8aa9374748b3", "isActive": false, "balance": "$2,735.46", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Pacheco Ward", "gender": "male", "company": "MAGMINA", "email": "pachecoward@magmina.com", "phone": "+1 (839) 539-2388", "address": "953 Lewis Avenue, Faxon, South Dakota, 147", "about": "Irure ad commodo ad excepteur pariatur esse ut qui et enim minim Lorem eiusmod velit. Exercitation sit sunt veniam officia mollit eiusmod ipsum. Elit qui minim commodo enim est do in aute veniam. Ex fugiat ut et laboris excepteur. Mollit consequat do adipisicing et voluptate esse do consequat laborum labore dolor magna. Non reprehenderit voluptate nulla incididunt id minim dolore ea Lorem in. Ea ex sunt amet deserunt laboris in sint quis labore.\r\n", "registered": "2014-07-10T14:03:15-12:00", "latitude": -7.614932, "longitude": 7.74206, "tags": [ "id", "ipsum", "aliqua", "tempor", "cillum", "duis", "nostrud" ], "friends": [ { "id": 0, "name": "Lauri Rice" }, { "id": 1, "name": "Patrice Hendricks" }, { "id": 2, "name": "Foster Morse" } ], "greeting": "Hello, Pacheco Ward! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea235ff69108faf4070c", "index": 1764, "guid": "3898680d-7d45-4737-91d0-3b21aa2ff903", "isActive": false, "balance": "$3,867.21", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Shelia James", "gender": "female", "company": "PYRAMIA", "email": "sheliajames@pyramia.com", "phone": "+1 (986) 444-2079", "address": "371 Bay Parkway, Fruitdale, West Virginia, 1554", "about": "Eu sint labore officia Lorem do proident Lorem Lorem magna. Ipsum cillum ex aute ipsum excepteur minim aliquip tempor dolor culpa non eiusmod voluptate. Ullamco anim quis eu labore esse nulla sint culpa.\r\n", "registered": "2014-03-07T05:58:53-13:00", "latitude": -10.571397, "longitude": -44.830029, "tags": [ "sint", "anim", "et", "ex", "duis", "exercitation", "id" ], "friends": [ { "id": 0, "name": "Rodriquez Griffith" }, { "id": 1, "name": "Wyatt Webb" }, { "id": 2, "name": "Jordan Kirk" } ], "greeting": "Hello, Shelia James! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2328e9b10e994eb57a", "index": 1765, "guid": "e4888968-e8cc-407f-ba97-745d8418a707", "isActive": true, "balance": "$2,918.75", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Cleo Rutledge", "gender": "female", "company": "QUONATA", "email": "cleorutledge@quonata.com", "phone": "+1 (815) 471-3737", "address": "820 Lincoln Avenue, Munjor, Texas, 5286", "about": "Minim consectetur tempor dolore reprehenderit quis magna incididunt velit. Cillum veniam consequat pariatur laboris aliquip irure dolor et. Mollit quis adipisicing deserunt mollit sunt. Nulla veniam commodo et aliqua nisi laboris commodo velit non nostrud ut irure adipisicing laboris. Aliquip nostrud in irure nostrud consectetur aute officia nostrud ea cillum sit eu magna anim.\r\n", "registered": "2014-06-25T20:31:33-12:00", "latitude": -26.088285, "longitude": -130.747872, "tags": [ "aliqua", "cillum", "ullamco", "id", "anim", "enim", "adipisicing" ], "friends": [ { "id": 0, "name": "Cunningham Baker" }, { "id": 1, "name": "Montoya Daniels" }, { "id": 2, "name": "Monroe Wright" } ], "greeting": "Hello, Cleo Rutledge! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea237d62568d5de84855", "index": 1766, "guid": "da69db8d-0832-468b-a577-798448e76106", "isActive": false, "balance": "$1,034.44", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Waters Patel", "gender": "male", "company": "GOLISTIC", "email": "waterspatel@golistic.com", "phone": "+1 (979) 429-2782", "address": "366 Milford Street, Valmy, Oregon, 4316", "about": "Tempor proident dolore eiusmod dolor et ut incididunt enim magna incididunt commodo. Consectetur consectetur ullamco ad est incididunt voluptate. Minim mollit nostrud veniam exercitation culpa officia voluptate tempor cillum dolore aliquip ipsum in. Minim proident eiusmod fugiat laboris culpa et nulla. Deserunt quis laboris elit veniam consequat. Nisi excepteur in cillum non dolor Lorem duis.\r\n", "registered": "2014-08-24T10:49:12-12:00", "latitude": -68.532057, "longitude": 12.374844, "tags": [ "excepteur", "nisi", "aliqua", "minim", "duis", "amet", "voluptate" ], "friends": [ { "id": 0, "name": "Gaines Cook" }, { "id": 1, "name": "Lelia Bullock" }, { "id": 2, "name": "Cotton Nicholson" } ], "greeting": "Hello, Waters Patel! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23075eb036be022ab7", "index": 1767, "guid": "b0cf67b4-d9a0-472c-a1d8-3a944066e04d", "isActive": true, "balance": "$3,175.44", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Sonya Grimes", "gender": "female", "company": "INCUBUS", "email": "sonyagrimes@incubus.com", "phone": "+1 (912) 418-2870", "address": "217 Veterans Avenue, Brantleyville, Nevada, 4461", "about": "Velit amet est ad officia quis duis ex enim proident cillum aute aliquip enim. Eiusmod deserunt fugiat ea adipisicing ullamco anim. Commodo eu cillum aliqua occaecat aliqua sunt eu. Nulla fugiat sunt aute deserunt quis sit. Ex aute et eiusmod ea esse consectetur id ullamco sunt ullamco officia aliqua irure. Culpa occaecat non do ipsum veniam voluptate. Duis elit duis ipsum exercitation dolore Lorem consequat deserunt non laborum consequat sint sit.\r\n", "registered": "2014-03-08T03:56:15-13:00", "latitude": 27.167645, "longitude": -30.183263, "tags": [ "ipsum", "dolore", "cupidatat", "labore", "enim", "pariatur", "enim" ], "friends": [ { "id": 0, "name": "Simon Olsen" }, { "id": 1, "name": "Rios Ramsey" }, { "id": 2, "name": "Ava Barrera" } ], "greeting": "Hello, Sonya Grimes! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2347f2b62f793dc7c3", "index": 1768, "guid": "9f81d3ba-2d47-4cd1-8bcb-dfce494a39cc", "isActive": false, "balance": "$1,563.02", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Christie Moses", "gender": "female", "company": "ENDIPIN", "email": "christiemoses@endipin.com", "phone": "+1 (828) 404-2500", "address": "494 Aitken Place, Northridge, Minnesota, 8733", "about": "Tempor anim cillum non et excepteur anim tempor laboris et. Anim ullamco nisi non eiusmod culpa et aute ad enim commodo nulla mollit ea est. Culpa sint nisi aute nostrud irure ad. Consequat excepteur enim et laborum exercitation. Tempor dolore sint occaecat duis exercitation do exercitation enim aute. Occaecat in cupidatat officia occaecat amet.\r\n", "registered": "2014-07-31T20:38:09-12:00", "latitude": 15.690601, "longitude": -48.88073, "tags": [ "eu", "irure", "ipsum", "exercitation", "aliqua", "aliquip", "aliquip" ], "friends": [ { "id": 0, "name": "Craft Huff" }, { "id": 1, "name": "Mallory Mcintyre" }, { "id": 2, "name": "Kristen Hicks" } ], "greeting": "Hello, Christie Moses! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea231a88f75769396d68", "index": 1769, "guid": "5b17e5cb-dc53-43e3-b3b5-de4b8e82aedc", "isActive": true, "balance": "$3,936.09", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Price Carlson", "gender": "male", "company": "GAPTEC", "email": "pricecarlson@gaptec.com", "phone": "+1 (874) 437-3934", "address": "648 Harwood Place, Cornfields, Missouri, 2605", "about": "Aute elit consequat excepteur exercitation et do et laboris sunt nulla ad. Incididunt ut laboris do ullamco ipsum excepteur. Aliquip eu et eiusmod ullamco deserunt ex mollit adipisicing. Sunt adipisicing excepteur incididunt eiusmod laborum eiusmod velit nostrud laborum consectetur non ex velit. In ipsum exercitation amet voluptate dolore ad.\r\n", "registered": "2014-07-29T01:22:00-12:00", "latitude": 21.455206, "longitude": 40.513762, "tags": [ "voluptate", "nisi", "proident", "deserunt", "proident", "nostrud", "ad" ], "friends": [ { "id": 0, "name": "Carver Ayers" }, { "id": 1, "name": "Pauline Leach" }, { "id": 2, "name": "Diane Lyons" } ], "greeting": "Hello, Price Carlson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea232e404124168073cd", "index": 1770, "guid": "36dc83c4-133c-400f-81fd-eb2cff81329e", "isActive": true, "balance": "$3,852.56", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Moore Robles", "gender": "male", "company": "COGENTRY", "email": "moorerobles@cogentry.com", "phone": "+1 (890) 577-2763", "address": "373 Brooklyn Avenue, Gratton, Rhode Island, 6272", "about": "Dolore laboris labore nostrud duis incididunt veniam consectetur nisi. Sint reprehenderit incididunt nostrud fugiat excepteur velit ad pariatur duis. Amet dolor velit amet ullamco. Velit laboris exercitation mollit duis. Duis labore cupidatat id excepteur aliqua eiusmod laboris tempor et magna laboris consectetur laboris.\r\n", "registered": "2014-09-06T23:51:45-12:00", "latitude": 46.144355, "longitude": -179.255976, "tags": [ "reprehenderit", "magna", "aliqua", "velit", "ea", "ipsum", "amet" ], "friends": [ { "id": 0, "name": "Alyson Curry" }, { "id": 1, "name": "Garrison Marquez" }, { "id": 2, "name": "Kris Acevedo" } ], "greeting": "Hello, Moore Robles! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2314ca0e6f3a54ef0d", "index": 1771, "guid": "5e08bf1c-2308-41cc-928d-a4d8e30e42fc", "isActive": false, "balance": "$1,832.93", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Evelyn Reeves", "gender": "female", "company": "TRASOLA", "email": "evelynreeves@trasola.com", "phone": "+1 (810) 547-3861", "address": "246 Olive Street, Edinburg, Florida, 5079", "about": "Do veniam veniam do ipsum cillum. Sint reprehenderit excepteur aute est ut. Quis in laborum velit Lorem dolor. Proident mollit cupidatat consequat pariatur dolor aute consequat dolor sint aliqua est ullamco nisi cupidatat.\r\n", "registered": "2014-04-27T02:44:44-12:00", "latitude": 25.185426, "longitude": -123.192139, "tags": [ "id", "dolore", "exercitation", "labore", "quis", "esse", "esse" ], "friends": [ { "id": 0, "name": "Peterson Irwin" }, { "id": 1, "name": "Nunez Terrell" }, { "id": 2, "name": "Lucas Schmidt" } ], "greeting": "Hello, Evelyn Reeves! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea234ec8b594b5d74478", "index": 1772, "guid": "5e3a495a-3464-4f8e-b747-34874b41ad7a", "isActive": true, "balance": "$1,589.00", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Natalie Delaney", "gender": "female", "company": "VORTEXACO", "email": "nataliedelaney@vortexaco.com", "phone": "+1 (945) 578-2478", "address": "285 Johnson Street, Olney, North Carolina, 7489", "about": "Nulla exercitation cupidatat esse mollit voluptate nostrud aute aliqua ad ullamco tempor non. Lorem fugiat enim voluptate consequat quis id magna ut consequat ad veniam sunt elit. Minim sint culpa quis voluptate cupidatat elit do quis. Sit voluptate dolore consectetur pariatur ut sint qui dolor Lorem eiusmod cillum eu. Nisi adipisicing fugiat elit tempor eu eiusmod exercitation cillum.\r\n", "registered": "2014-09-19T04:47:45-12:00", "latitude": 69.206319, "longitude": -72.449008, "tags": [ "enim", "esse", "dolor", "voluptate", "do", "dolor", "pariatur" ], "friends": [ { "id": 0, "name": "Bobbie Wyatt" }, { "id": 1, "name": "Reese Lindsey" }, { "id": 2, "name": "Deleon Head" } ], "greeting": "Hello, Natalie Delaney! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2367e34301653d84a6", "index": 1773, "guid": "43535e53-dded-4651-8bf5-251bcc3da146", "isActive": false, "balance": "$1,157.02", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Brooke Morrison", "gender": "female", "company": "QUAILCOM", "email": "brookemorrison@quailcom.com", "phone": "+1 (904) 423-3664", "address": "895 Hutchinson Court, Elliston, New Hampshire, 5691", "about": "Cupidatat anim sint dolore ea anim dolor quis in est excepteur. Consectetur ad ea sunt sunt magna commodo et. Consequat laborum elit adipisicing fugiat occaecat. Non veniam ut dolor nisi adipisicing adipisicing sint ullamco magna id. Qui tempor veniam id velit non exercitation.\r\n", "registered": "2014-05-30T12:11:00-12:00", "latitude": -21.104783, "longitude": 142.42758, "tags": [ "ut", "voluptate", "in", "in", "ad", "nisi", "in" ], "friends": [ { "id": 0, "name": "Rosalinda Crawford" }, { "id": 1, "name": "Holland Espinoza" }, { "id": 2, "name": "Shawn Sullivan" } ], "greeting": "Hello, Brooke Morrison! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23681279b75c46bf35", "index": 1774, "guid": "d74e9253-530f-4941-9e1f-14469f974890", "isActive": false, "balance": "$3,367.28", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Nelda Day", "gender": "female", "company": "EMOLTRA", "email": "neldaday@emoltra.com", "phone": "+1 (824) 446-2087", "address": "654 Murdock Court, Tolu, Arkansas, 1211", "about": "Cillum cillum reprehenderit velit adipisicing anim sunt minim. Adipisicing cillum consectetur veniam proident cupidatat enim. Magna eu amet quis ex irure officia. Ullamco laborum laborum anim fugiat ullamco ut ex culpa sint. Dolor eu magna ea irure consequat voluptate mollit. Officia amet proident consectetur fugiat incididunt excepteur ipsum.\r\n", "registered": "2014-06-15T20:41:25-12:00", "latitude": -57.608813, "longitude": -56.233027, "tags": [ "do", "aliquip", "est", "sit", "eiusmod", "magna", "ex" ], "friends": [ { "id": 0, "name": "Wiggins Harmon" }, { "id": 1, "name": "Clarke English" }, { "id": 2, "name": "Stewart Buckley" } ], "greeting": "Hello, Nelda Day! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23fa4bc592e5eb7891", "index": 1775, "guid": "214f59ed-7766-4289-b146-7895f3db441e", "isActive": false, "balance": "$2,242.48", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Sallie Haley", "gender": "female", "company": "DAIDO", "email": "salliehaley@daido.com", "phone": "+1 (859) 470-3271", "address": "702 Bennet Court, Inkerman, Iowa, 6258", "about": "Incididunt quis magna est sint voluptate adipisicing anim irure. Sit nisi laborum elit deserunt. Minim labore ipsum duis veniam velit exercitation occaecat ad laboris enim labore eu. Quis proident culpa irure cillum enim cillum non quis mollit in ea aliqua sunt.\r\n", "registered": "2014-05-31T05:21:20-12:00", "latitude": 13.605323, "longitude": 62.006002, "tags": [ "occaecat", "aliquip", "nisi", "velit", "exercitation", "eiusmod", "nisi" ], "friends": [ { "id": 0, "name": "Lucille Mullen" }, { "id": 1, "name": "Case Bray" }, { "id": 2, "name": "Florence Gay" } ], "greeting": "Hello, Sallie Haley! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23ca3adc4a5bbc952b", "index": 1776, "guid": "07abda46-01b0-4e29-aa75-4b5c82a561ab", "isActive": true, "balance": "$1,081.10", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Luann Pitts", "gender": "female", "company": "DOGSPA", "email": "luannpitts@dogspa.com", "phone": "+1 (901) 484-3876", "address": "876 Heath Place, Singer, Nebraska, 9917", "about": "Excepteur cupidatat dolore consequat sunt deserunt commodo eu labore. Labore ex ex esse reprehenderit duis eiusmod consectetur eu duis velit enim adipisicing. Esse cupidatat minim qui nulla ullamco sint labore anim. Aliqua sit ut in mollit mollit excepteur veniam exercitation ex ea cillum Lorem. Ut Lorem fugiat tempor exercitation sunt officia tempor fugiat velit ullamco esse aute qui irure.\r\n", "registered": "2014-04-24T10:22:20-12:00", "latitude": -61.726426, "longitude": -60.541151, "tags": [ "enim", "cillum", "ut", "ad", "cillum", "fugiat", "sit" ], "friends": [ { "id": 0, "name": "Santana Vance" }, { "id": 1, "name": "Helen Kidd" }, { "id": 2, "name": "Lakisha Bridges" } ], "greeting": "Hello, Luann Pitts! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2344a4822a86ead34c", "index": 1777, "guid": "b2a4cd5a-3dae-4dd3-9a85-c09f1d73e178", "isActive": true, "balance": "$2,667.41", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Delaney Alford", "gender": "male", "company": "COMCUR", "email": "delaneyalford@comcur.com", "phone": "+1 (812) 413-3891", "address": "846 Clifford Place, Islandia, District Of Columbia, 600", "about": "Ipsum quis mollit do dolor adipisicing do. Consectetur ut laboris commodo cillum pariatur et duis tempor mollit officia eu sunt et. Nostrud duis nulla ipsum elit incididunt nisi aute. Incididunt exercitation qui labore ut.\r\n", "registered": "2014-09-10T23:17:58-12:00", "latitude": -71.915547, "longitude": -164.962572, "tags": [ "consequat", "eiusmod", "aliquip", "laborum", "sit", "sit", "sit" ], "friends": [ { "id": 0, "name": "Lawrence Riley" }, { "id": 1, "name": "Jami Brennan" }, { "id": 2, "name": "Barker Austin" } ], "greeting": "Hello, Delaney Alford! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23dcf893801150d8c3", "index": 1778, "guid": "aaa38180-f7fd-48f3-a80c-88b635a7f96a", "isActive": false, "balance": "$3,747.03", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Janice Oneil", "gender": "female", "company": "BUZZOPIA", "email": "janiceoneil@buzzopia.com", "phone": "+1 (878) 507-3975", "address": "960 Milton Street, Succasunna, New Jersey, 1931", "about": "Exercitation esse ipsum veniam cillum magna irure nisi. Ea eiusmod et laboris dolor dolore nulla labore Lorem pariatur. Dolore Lorem in est eu magna ex mollit eu tempor qui cillum proident. Laborum quis sit non proident. Sint labore mollit laboris id magna et ex quis esse.\r\n", "registered": "2014-07-08T15:36:32-12:00", "latitude": -17.766179, "longitude": 175.148249, "tags": [ "magna", "enim", "incididunt", "in", "ullamco", "id", "nostrud" ], "friends": [ { "id": 0, "name": "Darlene Richard" }, { "id": 1, "name": "Snyder Casey" }, { "id": 2, "name": "Stephenson Figueroa" } ], "greeting": "Hello, Janice Oneil! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23bb8e3d259afe198d", "index": 1779, "guid": "f50f0eb3-7267-476d-8266-b951848e62db", "isActive": true, "balance": "$3,680.07", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Branch Gallagher", "gender": "male", "company": "INRT", "email": "branchgallagher@inrt.com", "phone": "+1 (879) 566-3909", "address": "429 Irving Avenue, Bainbridge, Palau, 3055", "about": "In cupidatat et magna minim eiusmod et laborum cillum. Eu aute esse quis nostrud veniam sit officia. Veniam dolore sit labore non minim duis do. Ad laborum et occaecat et eiusmod ea dolor cillum. Ullamco occaecat esse cupidatat non ad.\r\n", "registered": "2014-03-30T09:14:30-13:00", "latitude": 25.575294, "longitude": 79.790449, "tags": [ "laboris", "ea", "id", "nostrud", "amet", "dolore", "officia" ], "friends": [ { "id": 0, "name": "Mckee Copeland" }, { "id": 1, "name": "Holden Gould" }, { "id": 2, "name": "Tabatha Sellers" } ], "greeting": "Hello, Branch Gallagher! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23551ba62875e85fae", "index": 1780, "guid": "e5abe2fe-bcec-40ef-8b49-6f3197bc514d", "isActive": true, "balance": "$2,378.92", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Lea Long", "gender": "female", "company": "ATGEN", "email": "lealong@atgen.com", "phone": "+1 (801) 542-2506", "address": "793 Micieli Place, Cliffside, Puerto Rico, 7261", "about": "Occaecat exercitation ullamco est aute nulla quis dolore non occaecat officia. Nostrud duis eiusmod est culpa esse sint Lorem proident ipsum dolor. Cupidatat commodo eiusmod minim ut esse deserunt sint ut exercitation ex irure mollit. Aliquip occaecat proident dolor fugiat elit nulla eiusmod do minim et cupidatat. Qui aliqua aliqua nostrud deserunt eiusmod irure et et sit nostrud aliquip officia velit. Exercitation cillum mollit quis occaecat esse non consequat adipisicing anim non nisi reprehenderit. Sit anim esse dolor nisi minim nisi sit esse consequat labore culpa consectetur consectetur.\r\n", "registered": "2014-04-14T21:43:07-12:00", "latitude": 55.19131, "longitude": -73.593729, "tags": [ "aliqua", "eu", "et", "commodo", "sint", "proident", "id" ], "friends": [ { "id": 0, "name": "Veronica Barnett" }, { "id": 1, "name": "Morales Morin" }, { "id": 2, "name": "Middleton Scott" } ], "greeting": "Hello, Lea Long! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23a06d5297c50f780b", "index": 1781, "guid": "b213f112-2945-45f5-9c3d-0f1fa48ff941", "isActive": false, "balance": "$3,479.63", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Garcia Prince", "gender": "male", "company": "COMTREK", "email": "garciaprince@comtrek.com", "phone": "+1 (837) 477-2998", "address": "371 Crawford Avenue, Germanton, California, 352", "about": "Labore tempor fugiat Lorem quis et eiusmod proident pariatur qui. Duis mollit do laboris do ea voluptate anim. Velit adipisicing adipisicing cillum dolor.\r\n", "registered": "2014-02-10T11:13:11-13:00", "latitude": -87.826828, "longitude": 33.168184, "tags": [ "aliqua", "laboris", "deserunt", "qui", "qui", "aliqua", "excepteur" ], "friends": [ { "id": 0, "name": "Tate Ryan" }, { "id": 1, "name": "Loretta Knox" }, { "id": 2, "name": "Angelita Yang" } ], "greeting": "Hello, Garcia Prince! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea238a4daaa35895fc63", "index": 1782, "guid": "dcdcef13-8936-47d5-8de3-9d8905f6282d", "isActive": true, "balance": "$1,112.76", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Roseann Baldwin", "gender": "female", "company": "TSUNAMIA", "email": "roseannbaldwin@tsunamia.com", "phone": "+1 (944) 486-2262", "address": "502 Gerald Court, Seymour, Vermont, 4364", "about": "Fugiat sit non enim velit non irure do incididunt proident pariatur voluptate cillum. Tempor cupidatat excepteur cupidatat magna fugiat ullamco. Nostrud sunt aute laborum sit quis aute sit nulla ea adipisicing dolor. Dolore dolor non nisi aute consectetur velit eu amet.\r\n", "registered": "2014-06-02T06:08:13-12:00", "latitude": -32.857235, "longitude": -147.5721, "tags": [ "voluptate", "aliqua", "est", "duis", "sit", "amet", "fugiat" ], "friends": [ { "id": 0, "name": "Morrow Hall" }, { "id": 1, "name": "Helga Joyner" }, { "id": 2, "name": "Silva Goodwin" } ], "greeting": "Hello, Roseann Baldwin! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea236e33699a9670996e", "index": 1783, "guid": "7af39a94-c439-41bb-ac0f-5bd8903579da", "isActive": true, "balance": "$2,069.01", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Shirley Munoz", "gender": "female", "company": "ANACHO", "email": "shirleymunoz@anacho.com", "phone": "+1 (882) 403-3161", "address": "327 Reed Street, Franklin, Indiana, 4714", "about": "Est dolore ex sunt do excepteur aliquip aute Lorem ea labore reprehenderit. Tempor non eu dolore reprehenderit qui fugiat ipsum. Ipsum magna labore reprehenderit cillum aliqua minim nisi.\r\n", "registered": "2014-09-04T08:10:59-12:00", "latitude": -62.375593, "longitude": -39.580521, "tags": [ "elit", "duis", "officia", "consectetur", "elit", "velit", "magna" ], "friends": [ { "id": 0, "name": "Nina Bush" }, { "id": 1, "name": "Rutledge Ramos" }, { "id": 2, "name": "Charlene Wagner" } ], "greeting": "Hello, Shirley Munoz! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23bc28c8fd6b88cada", "index": 1784, "guid": "cad5bee5-bc9c-4a18-9e04-bd16baec0c19", "isActive": true, "balance": "$2,610.81", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Helena Sandoval", "gender": "female", "company": "PAPRICUT", "email": "helenasandoval@papricut.com", "phone": "+1 (878) 587-2010", "address": "171 Hinsdale Street, Richville, Illinois, 3160", "about": "Id minim excepteur do officia in consequat sint velit labore cupidatat. Amet nisi et aliqua nisi. Lorem in aute do veniam exercitation excepteur officia. Veniam elit velit ea exercitation fugiat enim enim est est minim sint. Mollit sint commodo Lorem laboris qui labore aute do quis velit irure proident dolor. Esse consequat excepteur dolor excepteur duis nostrud. Consectetur qui in nisi sit adipisicing nostrud elit culpa ex sunt deserunt proident occaecat occaecat.\r\n", "registered": "2014-09-02T02:35:43-12:00", "latitude": 7.102195, "longitude": 5.716292, "tags": [ "Lorem", "cupidatat", "id", "dolore", "sint", "sunt", "eiusmod" ], "friends": [ { "id": 0, "name": "Clarissa Bentley" }, { "id": 1, "name": "Morris Skinner" }, { "id": 2, "name": "Hewitt Sharpe" } ], "greeting": "Hello, Helena Sandoval! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2304f42ee500cd07ce", "index": 1785, "guid": "305d2785-e1c6-4ad9-b277-a9bb520ab2ac", "isActive": true, "balance": "$3,576.61", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Morin Hull", "gender": "male", "company": "MEGALL", "email": "morinhull@megall.com", "phone": "+1 (809) 434-3505", "address": "278 Chester Street, Bluffview, South Carolina, 5119", "about": "Lorem exercitation cillum dolore in elit minim ullamco ea deserunt minim est enim. Irure anim fugiat ullamco esse ullamco duis duis enim Lorem quis sint minim do cillum. Excepteur et enim ea qui minim consequat est do ut duis ullamco. Dolor nulla nostrud anim duis esse tempor. Officia velit nostrud do adipisicing nisi consequat. Fugiat mollit ullamco minim nulla eiusmod consequat irure minim. Eu nulla ullamco occaecat cillum exercitation aute quis sint veniam.\r\n", "registered": "2014-06-06T16:36:06-12:00", "latitude": 18.527447, "longitude": -60.70674, "tags": [ "aute", "dolor", "reprehenderit", "amet", "irure", "aute", "adipisicing" ], "friends": [ { "id": 0, "name": "Gill Carney" }, { "id": 1, "name": "Dalton Heath" }, { "id": 2, "name": "Lucile Ortega" } ], "greeting": "Hello, Morin Hull! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23254029bf156ef6a8", "index": 1786, "guid": "1ff039bf-3eae-445d-9868-b412b7b6749e", "isActive": false, "balance": "$3,345.13", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Walter Charles", "gender": "male", "company": "EXOSPACE", "email": "waltercharles@exospace.com", "phone": "+1 (936) 448-2119", "address": "133 Summit Street, Grandview, American Samoa, 9905", "about": "Est qui quis dolor ut cupidatat amet aliqua occaecat cillum laboris elit cillum reprehenderit. Sit pariatur aliquip aliquip non officia laboris. Id deserunt officia nostrud pariatur officia proident sunt. Elit tempor occaecat officia non cillum nostrud commodo fugiat enim tempor. Id amet sit adipisicing qui veniam exercitation Lorem ex culpa.\r\n", "registered": "2014-03-02T08:23:19-13:00", "latitude": 22.451502, "longitude": 61.018321, "tags": [ "reprehenderit", "non", "eiusmod", "tempor", "aliquip", "fugiat", "sint" ], "friends": [ { "id": 0, "name": "Lacy Hill" }, { "id": 1, "name": "Dunlap Thompson" }, { "id": 2, "name": "Reyes Huffman" } ], "greeting": "Hello, Walter Charles! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23810fa32593ee1596", "index": 1787, "guid": "46899f97-4287-46fc-882f-32b226483c3a", "isActive": true, "balance": "$3,811.41", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Vaughn Bishop", "gender": "male", "company": "BEDDER", "email": "vaughnbishop@bedder.com", "phone": "+1 (981) 543-3513", "address": "842 Prince Street, Hatteras, Delaware, 3676", "about": "Quis fugiat anim ex magna commodo amet ex nisi nisi nostrud ex esse ut consectetur. Do laborum nostrud culpa ullamco veniam duis aliquip laborum commodo enim occaecat ad Lorem reprehenderit. Proident quis ipsum proident adipisicing ipsum laborum incididunt. Ut nostrud ipsum adipisicing officia Lorem eiusmod officia tempor elit dolore ea consectetur. Exercitation aliquip anim veniam id occaecat aliqua tempor sint est. Amet ea pariatur nulla deserunt aliqua officia eu pariatur consequat commodo ipsum laborum occaecat.\r\n", "registered": "2014-04-23T13:10:38-12:00", "latitude": -13.093678, "longitude": -113.03016, "tags": [ "dolore", "aliqua", "nostrud", "ipsum", "do", "Lorem", "mollit" ], "friends": [ { "id": 0, "name": "Kirkland Jimenez" }, { "id": 1, "name": "Teri Morris" }, { "id": 2, "name": "Frances Gentry" } ], "greeting": "Hello, Vaughn Bishop! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23c8fa921569719a30", "index": 1788, "guid": "e3007e98-d563-46a4-b797-57c3d42496b4", "isActive": false, "balance": "$1,843.06", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Juliet Estes", "gender": "female", "company": "NSPIRE", "email": "julietestes@nspire.com", "phone": "+1 (859) 570-3688", "address": "379 Cozine Avenue, Marienthal, Pennsylvania, 9740", "about": "Lorem excepteur consectetur ullamco commodo. Nulla qui elit qui sunt Lorem occaecat fugiat. Deserunt duis id mollit occaecat. Cillum laboris cillum incididunt deserunt nulla aliqua nostrud aliqua ex pariatur enim incididunt.\r\n", "registered": "2014-06-02T22:45:48-12:00", "latitude": -68.194448, "longitude": 87.528028, "tags": [ "aliqua", "elit", "consectetur", "et", "tempor", "aliqua", "duis" ], "friends": [ { "id": 0, "name": "Lizzie Tate" }, { "id": 1, "name": "Benson Tyson" }, { "id": 2, "name": "Bertha Stanton" } ], "greeting": "Hello, Juliet Estes! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23120443aa1cba09c5", "index": 1789, "guid": "e406aa76-c35d-47ac-b5e1-3c70b7f8f13a", "isActive": true, "balance": "$3,080.00", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Chandler Pope", "gender": "male", "company": "GEEKOSIS", "email": "chandlerpope@geekosis.com", "phone": "+1 (875) 515-2140", "address": "290 Dupont Street, Rosewood, Georgia, 3134", "about": "Tempor officia aliquip id do. Id ullamco quis cupidatat nulla veniam deserunt adipisicing anim Lorem officia magna dolor veniam. Quis cupidatat Lorem laborum duis duis est qui sunt id anim cupidatat amet. Excepteur commodo est fugiat quis exercitation sunt.\r\n", "registered": "2014-08-01T15:01:54-12:00", "latitude": 2.295554, "longitude": 14.795663, "tags": [ "in", "laborum", "id", "et", "tempor", "cupidatat", "nostrud" ], "friends": [ { "id": 0, "name": "Bass Galloway" }, { "id": 1, "name": "Bender Compton" }, { "id": 2, "name": "York Morgan" } ], "greeting": "Hello, Chandler Pope! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea233ea20a85c7c8d618", "index": 1790, "guid": "0bedb9cd-2a08-48df-95a8-b63dee2195c5", "isActive": false, "balance": "$3,723.61", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Phyllis Meadows", "gender": "female", "company": "COASH", "email": "phyllismeadows@coash.com", "phone": "+1 (999) 486-3638", "address": "871 Caton Avenue, Sharon, North Dakota, 6337", "about": "Ea non ipsum pariatur voluptate. Occaecat occaecat voluptate aute nulla esse amet sit. Cillum deserunt tempor elit ipsum eiusmod et ad sunt velit eu non velit aliquip consectetur. Officia ipsum ut elit irure minim eiusmod sunt aliquip voluptate ad exercitation. Exercitation occaecat ut ut ipsum dolore adipisicing velit velit occaecat sit eiusmod. Eu id est aute voluptate proident ad est quis aute aute ea minim incididunt. Pariatur fugiat cupidatat duis est minim irure id exercitation.\r\n", "registered": "2014-02-06T05:35:59-13:00", "latitude": 86.247319, "longitude": 138.894477, "tags": [ "irure", "ullamco", "do", "quis", "ad", "esse", "proident" ], "friends": [ { "id": 0, "name": "Graves Paul" }, { "id": 1, "name": "Atkinson Browning" }, { "id": 2, "name": "Clara Knapp" } ], "greeting": "Hello, Phyllis Meadows! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2380666fbc7e3351cc", "index": 1791, "guid": "c44adad6-425c-41f9-a552-4bb60d3597fc", "isActive": true, "balance": "$2,841.69", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Chapman Santos", "gender": "male", "company": "REPETWIRE", "email": "chapmansantos@repetwire.com", "phone": "+1 (862) 425-3299", "address": "610 Eldert Street, Konterra, Louisiana, 2349", "about": "Ex do culpa aliquip proident elit veniam cupidatat do laborum nulla elit sunt commodo aliqua. Dolor ipsum anim velit consequat nulla nulla. Cupidatat in voluptate nisi proident. Sunt ea nostrud consectetur veniam anim consequat duis aliqua cupidatat. Deserunt id consequat amet laboris est anim elit et dolor aliqua.\r\n", "registered": "2014-05-04T21:50:04-12:00", "latitude": 49.048258, "longitude": 31.538473, "tags": [ "excepteur", "cupidatat", "dolor", "magna", "labore", "ea", "magna" ], "friends": [ { "id": 0, "name": "English Frank" }, { "id": 1, "name": "Mia Bird" }, { "id": 2, "name": "Patricia Bryan" } ], "greeting": "Hello, Chapman Santos! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23f3336db96868db43", "index": 1792, "guid": "b7cd42a5-0c38-4c4f-a4ce-6a4a2de6de7f", "isActive": false, "balance": "$2,030.57", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Janet Joyce", "gender": "female", "company": "ZOGAK", "email": "janetjoyce@zogak.com", "phone": "+1 (808) 577-2195", "address": "746 Revere Place, Waterview, Northern Mariana Islands, 2442", "about": "Ea duis veniam magna ex aliquip. Cupidatat incididunt ut nisi mollit tempor minim amet voluptate dolore. Cupidatat labore eiusmod id adipisicing cillum nostrud elit nisi cillum nulla ex velit mollit sit. Incididunt magna pariatur sunt consequat reprehenderit anim tempor nostrud nostrud voluptate mollit. Consectetur cupidatat ullamco adipisicing ipsum sit non tempor. Dolore velit qui excepteur ullamco consectetur. Elit irure eiusmod aliquip dolor.\r\n", "registered": "2014-04-24T01:26:27-12:00", "latitude": 35.350226, "longitude": -150.598337, "tags": [ "exercitation", "commodo", "deserunt", "excepteur", "consectetur", "enim", "nostrud" ], "friends": [ { "id": 0, "name": "Latoya Wilcox" }, { "id": 1, "name": "Alice Dawson" }, { "id": 2, "name": "Horn Glover" } ], "greeting": "Hello, Janet Joyce! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea232e24b48bb503a147", "index": 1793, "guid": "c81f5fa4-085e-4f7b-9dff-b8f0953b8c1a", "isActive": true, "balance": "$3,106.62", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Murphy Mcknight", "gender": "male", "company": "PHEAST", "email": "murphymcknight@pheast.com", "phone": "+1 (911) 436-2378", "address": "727 Wilson Street, Rockingham, Colorado, 2248", "about": "Occaecat mollit sint sint enim nisi cillum proident ex consequat reprehenderit amet ipsum eiusmod ex. Est qui magna pariatur esse reprehenderit aliquip do aliquip anim aliqua est. Qui et in adipisicing voluptate nostrud laboris in incididunt consectetur nulla. Cupidatat labore consectetur velit eu non duis. Et est labore ullamco cillum quis magna consequat pariatur.\r\n", "registered": "2014-01-13T12:25:16-13:00", "latitude": 80.512641, "longitude": 63.619413, "tags": [ "quis", "Lorem", "laboris", "pariatur", "elit", "nostrud", "duis" ], "friends": [ { "id": 0, "name": "Prince Harris" }, { "id": 1, "name": "Simpson Price" }, { "id": 2, "name": "Hillary Mckee" } ], "greeting": "Hello, Murphy Mcknight! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2307f30bf24cea13c3", "index": 1794, "guid": "47260ab4-fe59-4b41-8df6-5d078f4cd2c6", "isActive": false, "balance": "$3,562.04", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Janette Mcguire", "gender": "female", "company": "BICOL", "email": "janettemcguire@bicol.com", "phone": "+1 (864) 431-2257", "address": "238 Ellery Street, Vaughn, Idaho, 324", "about": "Mollit enim minim reprehenderit cillum elit ex fugiat quis quis. Duis sunt pariatur excepteur cupidatat pariatur est adipisicing laborum sunt amet elit enim et veniam. Duis reprehenderit adipisicing voluptate reprehenderit irure qui veniam dolore exercitation. Magna aute dolor qui ullamco tempor elit adipisicing culpa elit ea anim Lorem cillum. Proident anim aliqua id consequat in ea eu Lorem. Ullamco minim do aliqua nisi pariatur. Aliquip tempor esse aliqua Lorem nostrud.\r\n", "registered": "2014-06-26T08:01:12-12:00", "latitude": -11.94136, "longitude": -50.767381, "tags": [ "nulla", "cupidatat", "magna", "nisi", "irure", "non", "proident" ], "friends": [ { "id": 0, "name": "Muriel Gray" }, { "id": 1, "name": "Justine Sheppard" }, { "id": 2, "name": "Leonor Kaufman" } ], "greeting": "Hello, Janette Mcguire! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea234f90ca5fce3ff0cd", "index": 1795, "guid": "6e7e1d26-79bb-4402-aa14-eeb25abf5a81", "isActive": false, "balance": "$1,537.20", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Petersen Chavez", "gender": "male", "company": "GALLAXIA", "email": "petersenchavez@gallaxia.com", "phone": "+1 (973) 421-2061", "address": "311 Thornton Street, Marion, Marshall Islands, 9924", "about": "Mollit ullamco do nisi sunt occaecat commodo. Non proident sunt incididunt reprehenderit deserunt. Id laboris do nulla esse duis deserunt mollit aute proident irure officia. Do sit consectetur incididunt ad officia exercitation laboris ipsum est ea qui. Ad duis magna et dolore ea ullamco.\r\n", "registered": "2014-01-10T05:28:10-13:00", "latitude": 64.766338, "longitude": -116.594618, "tags": [ "ex", "excepteur", "ex", "ut", "sunt", "commodo", "occaecat" ], "friends": [ { "id": 0, "name": "Bonner Nichols" }, { "id": 1, "name": "Stephens Mathews" }, { "id": 2, "name": "Cassandra Young" } ], "greeting": "Hello, Petersen Chavez! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23b472e885d793a4be", "index": 1796, "guid": "424f47e3-6fe3-42c6-9b2d-0df859848c54", "isActive": true, "balance": "$1,714.84", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Concetta Santana", "gender": "female", "company": "PHUEL", "email": "concettasantana@phuel.com", "phone": "+1 (817) 411-3567", "address": "287 Fulton Street, Bancroft, New York, 3528", "about": "Amet et nulla adipisicing quis. Irure dolore sint velit veniam veniam adipisicing esse qui id magna tempor fugiat. Irure ea consequat ea ad. Amet ipsum do consectetur et commodo tempor do laboris ea cupidatat duis.\r\n", "registered": "2014-07-07T03:09:04-12:00", "latitude": 56.905117, "longitude": -47.159169, "tags": [ "occaecat", "velit", "in", "quis", "enim", "ipsum", "consectetur" ], "friends": [ { "id": 0, "name": "Higgins Mcneil" }, { "id": 1, "name": "Mays Lang" }, { "id": 2, "name": "Angeline Obrien" } ], "greeting": "Hello, Concetta Santana! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23b30e682808bde85c", "index": 1797, "guid": "fca91f15-0bfe-4316-8dc6-763a5158062b", "isActive": false, "balance": "$1,053.70", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Selma Todd", "gender": "female", "company": "SINGAVERA", "email": "selmatodd@singavera.com", "phone": "+1 (811) 519-2162", "address": "219 Aviation Road, Lawrence, Guam, 970", "about": "Occaecat nostrud ex nostrud non amet sunt ad et minim proident velit ex adipisicing consectetur. Sunt proident fugiat ipsum deserunt. Elit incididunt deserunt officia exercitation eu laborum excepteur esse quis Lorem. Id pariatur ullamco est ut excepteur anim sit est. Irure dolore sit id magna ad cupidatat velit exercitation deserunt ipsum.\r\n", "registered": "2014-02-15T23:24:23-13:00", "latitude": -87.296351, "longitude": -32.066751, "tags": [ "nulla", "anim", "est", "non", "laboris", "minim", "voluptate" ], "friends": [ { "id": 0, "name": "Sharon Holcomb" }, { "id": 1, "name": "Yesenia Bolton" }, { "id": 2, "name": "Pamela Wise" } ], "greeting": "Hello, Selma Todd! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23b5e2cee66d375277", "index": 1798, "guid": "cad80842-597b-43af-8737-98f1d01a6390", "isActive": true, "balance": "$3,765.53", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Phillips Humphrey", "gender": "male", "company": "EVENTEX", "email": "phillipshumphrey@eventex.com", "phone": "+1 (838) 406-2295", "address": "918 Arkansas Drive, Hardyville, Virgin Islands, 6009", "about": "Duis sit commodo non ad sit do duis ea culpa. Tempor ipsum et elit irure. Eiusmod ut incididunt ea cillum consequat.\r\n", "registered": "2014-08-31T13:53:14-12:00", "latitude": -43.451891, "longitude": -6.318922, "tags": [ "minim", "magna", "velit", "excepteur", "et", "commodo", "ut" ], "friends": [ { "id": 0, "name": "Bell Mclean" }, { "id": 1, "name": "Sheila Calhoun" }, { "id": 2, "name": "Thomas Carroll" } ], "greeting": "Hello, Phillips Humphrey! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea238d1f6a28ba19da89", "index": 1799, "guid": "f99c0f71-ac19-4ee6-b41f-b28c56571c96", "isActive": true, "balance": "$3,244.87", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Adela Little", "gender": "female", "company": "UPDAT", "email": "adelalittle@updat.com", "phone": "+1 (941) 467-3688", "address": "310 Kensington Walk, Hasty, Massachusetts, 5321", "about": "Culpa proident mollit amet adipisicing. Sit Lorem in mollit duis occaecat tempor sint voluptate irure cupidatat laboris aute et. Ad in ullamco ullamco commodo ipsum dolor id laboris cillum deserunt culpa non. Excepteur quis deserunt ut laboris irure est dolore reprehenderit nulla ut eiusmod in. Reprehenderit reprehenderit dolor aliquip quis dolore ullamco ea excepteur eiusmod labore quis ad.\r\n", "registered": "2014-08-13T12:08:45-12:00", "latitude": -50.216126, "longitude": 79.31661, "tags": [ "id", "fugiat", "consectetur", "aute", "enim", "quis", "duis" ], "friends": [ { "id": 0, "name": "Cantu Adkins" }, { "id": 1, "name": "Kristina Alvarado" }, { "id": 2, "name": "Martha Wiggins" } ], "greeting": "Hello, Adela Little! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23fbfce517f6fd1f8f", "index": 1800, "guid": "e8b2f6e3-a73b-4380-a8c9-c0fa33bd2483", "isActive": false, "balance": "$3,030.31", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Neal Oneal", "gender": "male", "company": "ANIXANG", "email": "nealoneal@anixang.com", "phone": "+1 (948) 461-2065", "address": "392 Rost Place, Sanborn, Utah, 9285", "about": "Velit aliquip non ea elit dolore quis veniam velit exercitation consectetur laboris minim. Minim fugiat exercitation nostrud ex duis commodo in id nulla ut tempor aliqua sint. Nostrud aliqua veniam culpa consectetur dolor consectetur aliqua occaecat Lorem laboris elit voluptate proident.\r\n", "registered": "2014-07-26T15:26:58-12:00", "latitude": 79.693882, "longitude": 104.753417, "tags": [ "minim", "aliquip", "duis", "duis", "id", "do", "labore" ], "friends": [ { "id": 0, "name": "Thompson Lopez" }, { "id": 1, "name": "Aurelia Osborn" }, { "id": 2, "name": "Romero Duran" } ], "greeting": "Hello, Neal Oneal! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea235507add9fc0d66e8", "index": 1801, "guid": "e9066a53-45ca-44a5-a97a-ecdd17fd4fcf", "isActive": false, "balance": "$2,460.95", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Banks Russo", "gender": "male", "company": "CUBICIDE", "email": "banksrusso@cubicide.com", "phone": "+1 (874) 401-2382", "address": "654 Fleet Walk, Breinigsville, Montana, 5894", "about": "Reprehenderit ex do magna velit sint dolor incididunt ut laboris officia est veniam ad. Incididunt ad do ad ut mollit id aliquip excepteur anim eu fugiat. Irure enim consectetur sit quis. Mollit sint sunt ipsum incididunt dolor id sunt non voluptate ea do duis cillum. Nostrud ut quis eiusmod irure id nisi exercitation. Commodo aute nisi est est ipsum non eu dolor excepteur id eu consequat.\r\n", "registered": "2014-01-05T04:34:43-13:00", "latitude": -76.77959, "longitude": 174.095021, "tags": [ "duis", "proident", "irure", "fugiat", "pariatur", "exercitation", "Lorem" ], "friends": [ { "id": 0, "name": "Carmen Moran" }, { "id": 1, "name": "Gertrude Rios" }, { "id": 2, "name": "Patti Rivas" } ], "greeting": "Hello, Banks Russo! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23135bd737512deb16", "index": 1802, "guid": "49e5249a-338d-41ec-8229-c3d642309b10", "isActive": false, "balance": "$2,852.63", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Sellers Leblanc", "gender": "male", "company": "EARTHWAX", "email": "sellersleblanc@earthwax.com", "phone": "+1 (950) 522-2273", "address": "280 Auburn Place, Graball, Wisconsin, 4328", "about": "Aliqua cupidatat ipsum fugiat amet in laboris do ipsum est Lorem ea laboris velit. Ipsum velit excepteur minim officia adipisicing duis dolore duis consectetur voluptate incididunt consectetur adipisicing. Do non laborum veniam culpa occaecat cillum ut magna Lorem aute et laboris. Reprehenderit esse nisi ea aliqua dolor sunt cupidatat dolore magna aliquip nisi excepteur enim aliquip. Fugiat enim sunt quis consequat ea in enim Lorem aute mollit culpa minim.\r\n", "registered": "2014-05-13T23:26:10-12:00", "latitude": -18.942781, "longitude": 32.932363, "tags": [ "consectetur", "Lorem", "cupidatat", "sunt", "do", "esse", "do" ], "friends": [ { "id": 0, "name": "Pate Navarro" }, { "id": 1, "name": "Debbie Pratt" }, { "id": 2, "name": "Jewel Mercer" } ], "greeting": "Hello, Sellers Leblanc! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23f07f5589bddc303c", "index": 1803, "guid": "35a968af-391a-4093-b151-ea971b0a9873", "isActive": true, "balance": "$2,298.17", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Gloria Chan", "gender": "female", "company": "BRAINQUIL", "email": "gloriachan@brainquil.com", "phone": "+1 (965) 427-2222", "address": "429 Nostrand Avenue, Brookfield, Maine, 6062", "about": "Nisi eiusmod eu consequat sit duis occaecat. Minim voluptate nulla id laboris laborum ad officia pariatur do. Non laboris dolore aliqua deserunt dolore anim ut voluptate.\r\n", "registered": "2014-01-29T17:47:41-13:00", "latitude": 64.686421, "longitude": -140.141679, "tags": [ "aute", "ad", "eu", "sit", "proident", "ad", "enim" ], "friends": [ { "id": 0, "name": "Ida Carter" }, { "id": 1, "name": "Alyssa Cantu" }, { "id": 2, "name": "Stevenson Alvarez" } ], "greeting": "Hello, Gloria Chan! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23af96b4a557e3035c", "index": 1804, "guid": "255af536-0201-4c08-8409-ceb881cd9dbd", "isActive": false, "balance": "$3,199.87", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Tanya Benjamin", "gender": "female", "company": "VALREDA", "email": "tanyabenjamin@valreda.com", "phone": "+1 (893) 441-2240", "address": "166 Mill Road, Herbster, Virginia, 2508", "about": "Consequat excepteur tempor sint ullamco excepteur eiusmod Lorem tempor nulla anim ullamco ipsum. Minim laborum pariatur anim dolore commodo ea amet est sunt. Dolor non duis ullamco anim enim excepteur ex elit id quis. Do fugiat labore ea exercitation elit laboris dolore ex. Non eu quis esse reprehenderit adipisicing quis. Tempor in labore sunt ut duis nostrud irure proident cillum magna dolor eu cillum proident. Eu deserunt ullamco cupidatat nostrud ad aliqua nostrud irure.\r\n", "registered": "2014-05-22T04:09:42-12:00", "latitude": -63.502567, "longitude": 166.289056, "tags": [ "qui", "do", "ex", "et", "dolore", "nisi", "fugiat" ], "friends": [ { "id": 0, "name": "Lindsay Strickland" }, { "id": 1, "name": "Fran Schroeder" }, { "id": 2, "name": "Lora Barker" } ], "greeting": "Hello, Tanya Benjamin! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea231930602a5750f6ce", "index": 1805, "guid": "0104eb38-bafd-42f9-b2d6-5696990d1a66", "isActive": false, "balance": "$2,589.48", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Gwendolyn Schultz", "gender": "female", "company": "ISOLOGICS", "email": "gwendolynschultz@isologics.com", "phone": "+1 (828) 525-2588", "address": "405 Quay Street, Englevale, Kentucky, 7040", "about": "Sint Lorem adipisicing in reprehenderit voluptate tempor adipisicing officia elit nulla. Cillum voluptate est non velit anim proident commodo reprehenderit proident. Minim magna ea sit qui. Id magna tempor ullamco elit non adipisicing id deserunt adipisicing consequat culpa reprehenderit deserunt. Laboris voluptate nulla mollit anim labore aliquip labore irure. Veniam fugiat excepteur aute voluptate aliquip aliqua veniam. Exercitation velit eiusmod esse Lorem sint dolore aliquip ad.\r\n", "registered": "2014-06-23T11:55:37-12:00", "latitude": -79.471464, "longitude": 149.021329, "tags": [ "excepteur", "sint", "eiusmod", "magna", "velit", "minim", "quis" ], "friends": [ { "id": 0, "name": "Florine Torres" }, { "id": 1, "name": "Millicent Boyd" }, { "id": 2, "name": "Odonnell Franco" } ], "greeting": "Hello, Gwendolyn Schultz! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea234f0d81e598423235", "index": 1806, "guid": "df9aeca6-5453-4a1b-8bab-44dc67460f1c", "isActive": false, "balance": "$2,770.78", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Mosley Houston", "gender": "male", "company": "COMTOURS", "email": "mosleyhouston@comtours.com", "phone": "+1 (898) 599-3779", "address": "866 Willow Place, Weedville, Connecticut, 3840", "about": "Ad laborum incididunt laborum fugiat ad nulla duis consectetur cupidatat qui quis est ea. Tempor esse excepteur culpa ex commodo voluptate. Amet adipisicing culpa reprehenderit aliqua nisi ex aute cupidatat consequat ex ad enim. Enim dolore proident incididunt nisi culpa qui eu fugiat velit eu consequat Lorem velit. Commodo commodo fugiat laboris amet incididunt id ex. Amet esse incididunt voluptate anim consectetur aliquip adipisicing cillum tempor sit do commodo tempor. Mollit deserunt labore labore non esse adipisicing duis labore id sunt laboris.\r\n", "registered": "2014-02-10T21:14:30-13:00", "latitude": 58.088151, "longitude": -40.11724, "tags": [ "cupidatat", "anim", "Lorem", "velit", "qui", "laboris", "minim" ], "friends": [ { "id": 0, "name": "Judith Ratliff" }, { "id": 1, "name": "Cox Benton" }, { "id": 2, "name": "Bonnie Roman" } ], "greeting": "Hello, Mosley Houston! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23838112f928a2a995", "index": 1807, "guid": "04d4dc81-0389-4601-99e2-8dfac7455ea3", "isActive": true, "balance": "$1,520.33", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Brenda Schneider", "gender": "female", "company": "REVERSUS", "email": "brendaschneider@reversus.com", "phone": "+1 (963) 449-3988", "address": "377 Hillel Place, Alamo, Mississippi, 3618", "about": "Sint nulla commodo esse officia do in irure est fugiat quis. Do qui cupidatat cillum irure ea ipsum ea labore nisi culpa aute aute. Officia eu nisi excepteur veniam. Aliquip dolore nulla dolore id pariatur aliquip tempor ad sunt in sit aliquip labore. Consectetur incididunt nulla fugiat aute. Deserunt officia eiusmod ad aute. Excepteur qui exercitation est ullamco Lorem commodo excepteur.\r\n", "registered": "2014-01-08T19:02:48-13:00", "latitude": -85.979143, "longitude": 153.893785, "tags": [ "occaecat", "mollit", "enim", "fugiat", "sint", "veniam", "pariatur" ], "friends": [ { "id": 0, "name": "Fields Brady" }, { "id": 1, "name": "Mckinney Shannon" }, { "id": 2, "name": "Freda Coleman" } ], "greeting": "Hello, Brenda Schneider! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23fac1f8032e8c7c57", "index": 1808, "guid": "85044d57-2034-4779-a1c0-78594c750f52", "isActive": true, "balance": "$1,680.17", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Lenore Ochoa", "gender": "female", "company": "ELITA", "email": "lenoreochoa@elita.com", "phone": "+1 (883) 550-2411", "address": "778 Gilmore Court, Hollymead, Washington, 8606", "about": "Voluptate tempor voluptate ipsum consequat. Ut fugiat eu aliqua proident irure consequat. Esse quis ut qui eiusmod ad cillum. Proident dolor proident deserunt duis consectetur reprehenderit voluptate id ad velit.\r\n", "registered": "2014-07-10T08:53:37-12:00", "latitude": 51.400026, "longitude": 39.3843, "tags": [ "laborum", "velit", "pariatur", "aute", "culpa", "proident", "laboris" ], "friends": [ { "id": 0, "name": "Spence Mcclain" }, { "id": 1, "name": "Hooper Lowe" }, { "id": 2, "name": "Marci Hardin" } ], "greeting": "Hello, Lenore Ochoa! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea232a4b5d0b0ff2b1ec", "index": 1809, "guid": "1a8c82ad-6ce0-416e-849b-208702c02c44", "isActive": true, "balance": "$2,528.04", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Jacobson Watkins", "gender": "male", "company": "MONDICIL", "email": "jacobsonwatkins@mondicil.com", "phone": "+1 (848) 431-2750", "address": "979 Mill Street, Worcester, Tennessee, 5754", "about": "Cillum non magna amet excepteur id et. Ipsum culpa officia laboris id cillum. Reprehenderit occaecat aliqua pariatur magna id excepteur irure incididunt officia. Ad ex ullamco occaecat irure duis.\r\n", "registered": "2014-08-21T17:30:30-12:00", "latitude": -84.463394, "longitude": -153.235048, "tags": [ "excepteur", "magna", "cupidatat", "cupidatat", "officia", "ipsum", "labore" ], "friends": [ { "id": 0, "name": "Willie Good" }, { "id": 1, "name": "Parker Cohen" }, { "id": 2, "name": "Juarez Gamble" } ], "greeting": "Hello, Jacobson Watkins! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea235cd2eb413aa9ea74", "index": 1810, "guid": "8f9a3452-c5a6-43fe-9d95-1a50980a8b51", "isActive": true, "balance": "$2,574.92", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Joni Haynes", "gender": "female", "company": "NAXDIS", "email": "jonihaynes@naxdis.com", "phone": "+1 (986) 579-2203", "address": "310 Albee Square, Alderpoint, Alabama, 8130", "about": "Consequat Lorem est labore fugiat velit aliquip culpa id. Irure reprehenderit adipisicing ea laborum adipisicing reprehenderit qui ullamco elit. Et laborum officia nostrud quis ea et elit irure elit Lorem duis eiusmod irure id. Pariatur adipisicing reprehenderit dolor qui nulla quis nulla magna do nulla exercitation esse. Veniam pariatur irure nisi sunt ut et adipisicing qui. Id ullamco labore ut aliqua non amet Lorem ea ea ex consequat. Aute eiusmod et dolore qui sunt dolor.\r\n", "registered": "2014-06-21T19:36:08-12:00", "latitude": 34.32079, "longitude": 30.379379, "tags": [ "laboris", "duis", "ut", "fugiat", "eiusmod", "esse", "veniam" ], "friends": [ { "id": 0, "name": "Quinn Gibson" }, { "id": 1, "name": "Earlene Roth" }, { "id": 2, "name": "Ladonna Camacho" } ], "greeting": "Hello, Joni Haynes! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea238467d624a61521f6", "index": 1811, "guid": "165ab9c9-c378-425c-b9c9-32d04c828c74", "isActive": false, "balance": "$1,671.23", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Noemi Branch", "gender": "female", "company": "DATAGENE", "email": "noemibranch@datagene.com", "phone": "+1 (980) 550-2502", "address": "269 Montgomery Street, Lydia, Ohio, 4536", "about": "Dolore commodo laboris tempor exercitation elit commodo irure deserunt aliqua fugiat excepteur officia. Ipsum ea occaecat tempor aliqua magna ut pariatur culpa. Culpa ex deserunt officia quis commodo aute officia duis ex magna. Dolor irure exercitation sit esse ad adipisicing incididunt dolor sint deserunt sunt. Proident mollit occaecat deserunt duis exercitation voluptate officia ut. Fugiat ipsum eiusmod eiusmod qui commodo laborum deserunt excepteur eu dolor sint elit.\r\n", "registered": "2014-07-31T19:34:25-12:00", "latitude": 16.244064, "longitude": 67.175085, "tags": [ "cillum", "aute", "ea", "aliqua", "excepteur", "in", "aliqua" ], "friends": [ { "id": 0, "name": "May Fuller" }, { "id": 1, "name": "Nolan Holden" }, { "id": 2, "name": "Rhoda Butler" } ], "greeting": "Hello, Noemi Branch! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2355b09817f000f37b", "index": 1812, "guid": "7256d939-3288-4f3c-9585-906f51750b5e", "isActive": true, "balance": "$2,595.18", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Holloway Horton", "gender": "male", "company": "ENERSAVE", "email": "hollowayhorton@enersave.com", "phone": "+1 (800) 478-3853", "address": "390 Fleet Street, Onton, Hawaii, 5881", "about": "Irure ad elit dolore nisi consectetur veniam exercitation occaecat proident dolor cupidatat anim aute nisi. Id Lorem commodo dolor pariatur. Sunt aliqua reprehenderit deserunt anim ex laboris. Ipsum enim reprehenderit excepteur aliqua occaecat sit nisi laboris non. Occaecat Lorem ad aliqua excepteur cupidatat esse labore fugiat quis.\r\n", "registered": "2014-04-17T16:41:40-12:00", "latitude": -71.00822, "longitude": 144.050586, "tags": [ "cillum", "cupidatat", "id", "tempor", "commodo", "labore", "ad" ], "friends": [ { "id": 0, "name": "Myrna Molina" }, { "id": 1, "name": "Darcy Le" }, { "id": 2, "name": "Dee Summers" } ], "greeting": "Hello, Holloway Horton! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2305b294479d20605f", "index": 1813, "guid": "b6b2ea9b-7399-4766-a710-8dec553b2151", "isActive": true, "balance": "$2,218.78", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Barber Gardner", "gender": "male", "company": "XELEGYL", "email": "barbergardner@xelegyl.com", "phone": "+1 (903) 447-3131", "address": "601 Rogers Avenue, Lindisfarne, New Mexico, 5784", "about": "Aute magna mollit duis Lorem labore proident nulla cillum minim aliqua. Laborum consequat id reprehenderit dolor consectetur nulla velit exercitation. Adipisicing velit tempor consequat ut non fugiat ullamco.\r\n", "registered": "2014-02-12T12:51:26-13:00", "latitude": -17.984337, "longitude": 110.177077, "tags": [ "veniam", "cillum", "enim", "et", "amet", "consectetur", "excepteur" ], "friends": [ { "id": 0, "name": "Howard Wallace" }, { "id": 1, "name": "Bryant Johnson" }, { "id": 2, "name": "Pearlie Conner" } ], "greeting": "Hello, Barber Gardner! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea234742c8f06c7ad16b", "index": 1814, "guid": "8b1098f2-01d9-4efa-b254-71aba6058269", "isActive": true, "balance": "$3,785.51", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Ball Finch", "gender": "male", "company": "SUREMAX", "email": "ballfinch@suremax.com", "phone": "+1 (813) 593-3704", "address": "354 Folsom Place, Williamson, Maryland, 1975", "about": "Dolore mollit ut laborum quis voluptate occaecat irure. Mollit commodo sunt eu excepteur cillum elit. Veniam magna elit exercitation mollit occaecat laborum ullamco consectetur tempor.\r\n", "registered": "2014-06-11T08:22:27-12:00", "latitude": 81.818943, "longitude": 19.121034, "tags": [ "amet", "quis", "aliqua", "minim", "amet", "pariatur", "enim" ], "friends": [ { "id": 0, "name": "Brady Haney" }, { "id": 1, "name": "Teresa Martin" }, { "id": 2, "name": "Louella Crosby" } ], "greeting": "Hello, Ball Finch! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2388c5083ea99abb28", "index": 1815, "guid": "8d326397-9a01-4726-9dff-32cb7b1ca702", "isActive": true, "balance": "$1,578.07", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Elinor Lloyd", "gender": "female", "company": "GAZAK", "email": "elinorlloyd@gazak.com", "phone": "+1 (873) 552-2013", "address": "860 Colin Place, Rote, Alaska, 2264", "about": "Fugiat veniam ex proident officia deserunt sint irure elit veniam non. Esse non labore do enim in mollit do nulla labore cillum amet magna. Non ad nulla ad ex nulla pariatur exercitation ipsum incididunt in fugiat incididunt. Duis officia aliqua sint incididunt minim ut magna. Ipsum occaecat est magna anim enim velit ad cupidatat. Ullamco adipisicing consequat irure in ullamco labore exercitation. Excepteur qui non do aute magna consequat aute dolor enim.\r\n", "registered": "2014-02-22T14:08:11-13:00", "latitude": 40.139969, "longitude": -76.694772, "tags": [ "officia", "irure", "tempor", "dolore", "sit", "do", "eiusmod" ], "friends": [ { "id": 0, "name": "Marian Lester" }, { "id": 1, "name": "Sawyer Whitfield" }, { "id": 2, "name": "Mack Evans" } ], "greeting": "Hello, Elinor Lloyd! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23f41245e0aac96f6e", "index": 1816, "guid": "cc7c7d89-bbc1-4412-b38b-8b85b1450bae", "isActive": false, "balance": "$1,718.24", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Savannah Blackburn", "gender": "female", "company": "OLUCORE", "email": "savannahblackburn@olucore.com", "phone": "+1 (879) 512-2564", "address": "484 Grace Court, Kenmar, Arizona, 5266", "about": "Veniam laborum aute aute quis reprehenderit anim proident tempor eiusmod. Id occaecat reprehenderit esse sint tempor culpa ex laborum dolor. Laborum do ad ad eiusmod deserunt et tempor qui ea et ipsum reprehenderit culpa enim. Sint Lorem ea amet aliquip pariatur dolor eiusmod velit sunt tempor veniam non.\r\n", "registered": "2014-04-03T22:53:08-13:00", "latitude": -77.854131, "longitude": -159.613349, "tags": [ "nulla", "pariatur", "amet", "velit", "nulla", "et", "velit" ], "friends": [ { "id": 0, "name": "Lester Walter" }, { "id": 1, "name": "Terrell Underwood" }, { "id": 2, "name": "Lisa William" } ], "greeting": "Hello, Savannah Blackburn! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea232d32c66904db3cd8", "index": 1817, "guid": "0492d6b1-598c-4fd2-81e1-1207d3bb7104", "isActive": true, "balance": "$2,403.27", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Brewer Mccarty", "gender": "male", "company": "AMTAP", "email": "brewermccarty@amtap.com", "phone": "+1 (977) 578-2748", "address": "946 Lafayette Walk, Darrtown, Federated States Of Micronesia, 176", "about": "Reprehenderit do est proident esse elit esse aliquip dolor fugiat. Ut pariatur labore qui consectetur nulla irure minim laborum fugiat id in aute. Laboris ea magna nisi ipsum in dolor ipsum aliqua non ullamco Lorem labore eu. Dolor mollit fugiat mollit incididunt.\r\n", "registered": "2014-09-18T04:18:06-12:00", "latitude": 41.8023, "longitude": -110.416615, "tags": [ "amet", "ea", "enim", "excepteur", "voluptate", "sunt", "cupidatat" ], "friends": [ { "id": 0, "name": "Alberta Mullins" }, { "id": 1, "name": "Dudley Sweet" }, { "id": 2, "name": "Erica Watts" } ], "greeting": "Hello, Brewer Mccarty! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea237148514f3fd3f78c", "index": 1818, "guid": "ab913cf8-7e10-4864-af55-87ce71f2134b", "isActive": true, "balance": "$3,784.03", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Nichols Moreno", "gender": "male", "company": "SARASONIC", "email": "nicholsmoreno@sarasonic.com", "phone": "+1 (890) 451-2008", "address": "314 Bowery Street, Concho, Oklahoma, 9328", "about": "Deserunt enim mollit deserunt amet culpa proident ut. Voluptate elit occaecat proident aliqua non laborum ea ipsum amet quis officia irure. Reprehenderit aliquip ad incididunt irure quis sint ex sunt eiusmod exercitation sunt aliqua. Cillum amet commodo deserunt velit tempor ipsum velit consectetur eu aliqua in exercitation. Dolore voluptate ad tempor esse.\r\n", "registered": "2014-05-19T09:15:30-12:00", "latitude": -42.330039, "longitude": -31.662195, "tags": [ "ex", "anim", "labore", "tempor", "fugiat", "nostrud", "ut" ], "friends": [ { "id": 0, "name": "Pugh Mcmillan" }, { "id": 1, "name": "Laurel Greer" }, { "id": 2, "name": "Olive Barron" } ], "greeting": "Hello, Nichols Moreno! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23a67b1f4d5f64d2bd", "index": 1819, "guid": "e7e051b4-b349-4a28-97ae-27fe59866022", "isActive": false, "balance": "$2,533.63", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Winifred Flynn", "gender": "female", "company": "NAMEBOX", "email": "winifredflynn@namebox.com", "phone": "+1 (820) 524-3616", "address": "534 Franklin Street, Vale, Michigan, 8010", "about": "Proident anim non anim proident dolor ipsum sunt quis deserunt et aliquip dolor ex ad. Tempor mollit consectetur sunt enim officia dolore tempor ea fugiat amet. Culpa cillum est ipsum deserunt. Sunt fugiat proident non proident consequat ad enim nostrud proident aliqua Lorem anim labore. Veniam aliquip enim incididunt qui aliquip nostrud tempor id pariatur ad dolore. Tempor occaecat non dolor Lorem ullamco ex veniam.\r\n", "registered": "2014-09-13T21:35:20-12:00", "latitude": 35.723912, "longitude": -125.415221, "tags": [ "laboris", "irure", "occaecat", "irure", "adipisicing", "nisi", "est" ], "friends": [ { "id": 0, "name": "Deana Rasmussen" }, { "id": 1, "name": "Joanne Carson" }, { "id": 2, "name": "Holman Michael" } ], "greeting": "Hello, Winifred Flynn! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23030f8838f742db8c", "index": 1820, "guid": "e01f9043-5a70-49e6-80e1-de03128162b5", "isActive": false, "balance": "$1,720.36", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Jeannette Bond", "gender": "female", "company": "CENTICE", "email": "jeannettebond@centice.com", "phone": "+1 (970) 570-2820", "address": "665 Stryker Street, Grill, Kansas, 8806", "about": "Cupidatat aliqua voluptate pariatur dolore exercitation reprehenderit incididunt ad fugiat veniam velit ut in. Sunt laborum nisi id pariatur exercitation deserunt sunt officia nulla adipisicing voluptate cillum dolor. Consequat et pariatur ut cupidatat sunt nulla sunt occaecat ipsum. Adipisicing amet nisi nisi ut occaecat veniam aliquip velit.\r\n", "registered": "2014-09-11T04:23:30-12:00", "latitude": 69.065496, "longitude": 104.943727, "tags": [ "et", "et", "Lorem", "occaecat", "minim", "veniam", "excepteur" ], "friends": [ { "id": 0, "name": "Ruthie Banks" }, { "id": 1, "name": "Brigitte Conley" }, { "id": 2, "name": "Mcneil Riddle" } ], "greeting": "Hello, Jeannette Bond! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23e302f85510ffa187", "index": 1821, "guid": "8c67b14c-6594-479c-b2c9-b5d96740ae31", "isActive": false, "balance": "$1,648.47", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Hebert Rosa", "gender": "male", "company": "HIVEDOM", "email": "hebertrosa@hivedom.com", "phone": "+1 (849) 573-2578", "address": "515 Montgomery Place, Clarence, South Dakota, 9638", "about": "Reprehenderit non et veniam sit et. Fugiat et nulla excepteur ex. Anim cupidatat Lorem incididunt velit qui do duis ad dolore adipisicing eiusmod. Dolore incididunt minim quis eu deserunt quis eu qui pariatur cillum nulla cillum cupidatat mollit. Exercitation anim ex laboris cillum dolor consequat cillum aliqua non tempor aute. Laborum exercitation ea adipisicing esse anim mollit. Proident aliquip reprehenderit ad enim ut fugiat Lorem reprehenderit quis ut nulla aliquip nulla.\r\n", "registered": "2014-02-28T10:00:50-13:00", "latitude": 49.633113, "longitude": 146.99688, "tags": [ "officia", "deserunt", "veniam", "ea", "non", "elit", "ullamco" ], "friends": [ { "id": 0, "name": "Jennie Palmer" }, { "id": 1, "name": "Misty Mckenzie" }, { "id": 2, "name": "Johnson Koch" } ], "greeting": "Hello, Hebert Rosa! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2343b9f377aea9784a", "index": 1822, "guid": "e7dc875d-019d-4522-b622-6df3917cec23", "isActive": true, "balance": "$1,452.27", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Sparks Goodman", "gender": "male", "company": "FIBRODYNE", "email": "sparksgoodman@fibrodyne.com", "phone": "+1 (841) 433-3645", "address": "124 Marconi Place, Coleville, West Virginia, 4635", "about": "Ut cillum ullamco adipisicing veniam cupidatat commodo proident incididunt adipisicing dolore. Veniam mollit commodo aliqua ipsum in ullamco mollit. Commodo tempor voluptate culpa aute excepteur fugiat excepteur anim amet mollit labore magna pariatur. Fugiat eu culpa est sit irure. Proident pariatur incididunt occaecat consectetur ea sit.\r\n", "registered": "2014-01-03T19:36:16-13:00", "latitude": 45.157782, "longitude": 52.531056, "tags": [ "quis", "est", "adipisicing", "deserunt", "velit", "reprehenderit", "minim" ], "friends": [ { "id": 0, "name": "Kara Ray" }, { "id": 1, "name": "Beard Bradshaw" }, { "id": 2, "name": "Mcintosh King" } ], "greeting": "Hello, Sparks Goodman! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23ba487b3bd7ad5ede", "index": 1823, "guid": "75b7ada0-3d6b-4735-943b-b8dca3744107", "isActive": false, "balance": "$2,378.71", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Delgado Bender", "gender": "male", "company": "KOG", "email": "delgadobender@kog.com", "phone": "+1 (843) 598-3596", "address": "786 Suydam Street, Thermal, Texas, 1636", "about": "Tempor sunt est culpa eiusmod Lorem et pariatur ipsum. Commodo aute fugiat proident aliqua minim laborum ex. Nulla magna anim sit in dolore culpa enim Lorem occaecat aliqua laboris voluptate duis.\r\n", "registered": "2014-01-20T04:39:43-13:00", "latitude": -84.2891, "longitude": 70.175747, "tags": [ "fugiat", "cillum", "tempor", "do", "sunt", "pariatur", "pariatur" ], "friends": [ { "id": 0, "name": "Humphrey Garza" }, { "id": 1, "name": "Christina Nolan" }, { "id": 2, "name": "Trisha Cote" } ], "greeting": "Hello, Delgado Bender! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea237fe0bef6be1a3d28", "index": 1824, "guid": "58259ef8-0632-4d29-84ba-6fe2e8f706f5", "isActive": true, "balance": "$3,202.10", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Kelsey Delacruz", "gender": "female", "company": "PREMIANT", "email": "kelseydelacruz@premiant.com", "phone": "+1 (998) 440-3960", "address": "964 Hancock Street, Harmon, Oregon, 9273", "about": "Amet nisi culpa minim fugiat. Dolore dolor deserunt proident proident aliquip commodo laborum laborum tempor. Enim voluptate consectetur incididunt culpa id eiusmod anim exercitation tempor culpa. Excepteur veniam sunt voluptate amet excepteur ipsum labore incididunt quis enim ea. Qui cillum ipsum fugiat exercitation dolor deserunt.\r\n", "registered": "2014-07-25T01:13:53-12:00", "latitude": -53.399318, "longitude": 15.505608, "tags": [ "et", "exercitation", "Lorem", "ipsum", "anim", "ullamco", "ullamco" ], "friends": [ { "id": 0, "name": "Byers Sanders" }, { "id": 1, "name": "Ryan Ewing" }, { "id": 2, "name": "Dina Sexton" } ], "greeting": "Hello, Kelsey Delacruz! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea239c21f2e9884ae384", "index": 1825, "guid": "b83d9dfc-5111-496e-8c36-ca3a1317d54e", "isActive": true, "balance": "$1,366.94", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Olga Salinas", "gender": "female", "company": "LIMAGE", "email": "olgasalinas@limage.com", "phone": "+1 (870) 440-2949", "address": "366 Tudor Terrace, Harleigh, Nevada, 9881", "about": "Fugiat ut aute non ullamco qui irure cillum nulla consequat velit voluptate. Exercitation adipisicing enim eu eu laboris voluptate id amet culpa minim proident. Pariatur labore reprehenderit non qui dolore duis commodo Lorem sit velit sint ea esse eu. Quis ut pariatur cillum deserunt laboris. Mollit excepteur do incididunt veniam mollit elit cillum officia aute fugiat proident.\r\n", "registered": "2014-05-15T02:59:11-12:00", "latitude": -28.470537, "longitude": -53.014203, "tags": [ "mollit", "id", "officia", "veniam", "ea", "sunt", "non" ], "friends": [ { "id": 0, "name": "Simmons Alexander" }, { "id": 1, "name": "Earnestine Lane" }, { "id": 2, "name": "Marlene Kline" } ], "greeting": "Hello, Olga Salinas! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2353fa77994abad3b4", "index": 1826, "guid": "730109a8-1090-42d3-8e50-a7478a12b14c", "isActive": true, "balance": "$2,384.30", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Figueroa Lowery", "gender": "male", "company": "ELPRO", "email": "figueroalowery@elpro.com", "phone": "+1 (940) 454-2805", "address": "591 Cranberry Street, Libertytown, Minnesota, 928", "about": "Nostrud minim velit dolore culpa excepteur ullamco veniam aliqua culpa esse irure est sint. Veniam tempor proident enim Lorem elit officia proident et anim dolor. Pariatur ex cillum tempor amet magna sit mollit Lorem nisi pariatur reprehenderit ullamco adipisicing duis.\r\n", "registered": "2014-07-29T15:53:50-12:00", "latitude": 3.740954, "longitude": -7.86326, "tags": [ "esse", "adipisicing", "et", "Lorem", "sunt", "laborum", "adipisicing" ], "friends": [ { "id": 0, "name": "Baldwin Dodson" }, { "id": 1, "name": "Combs Russell" }, { "id": 2, "name": "Ernestine Reese" } ], "greeting": "Hello, Figueroa Lowery! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2395faa8835925be52", "index": 1827, "guid": "5658c651-ec5f-4148-884d-1fb3161be423", "isActive": false, "balance": "$1,038.64", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Lynette Short", "gender": "female", "company": "OTHERWAY", "email": "lynetteshort@otherway.com", "phone": "+1 (861) 467-3837", "address": "387 Reeve Place, Jeff, Missouri, 1152", "about": "Veniam voluptate dolore eiusmod aliqua non labore dolor do in labore. Aliquip dolore velit sit culpa exercitation magna occaecat quis duis reprehenderit occaecat tempor irure. Ex aliqua exercitation cillum consequat mollit laborum nostrud reprehenderit excepteur reprehenderit aliqua eu ut. Culpa aute enim sint in consequat aliqua dolore. Occaecat ullamco quis duis commodo magna laboris est occaecat nulla tempor. Laboris proident cupidatat commodo excepteur in esse labore anim.\r\n", "registered": "2014-03-02T02:08:06-13:00", "latitude": -4.656421, "longitude": 64.010791, "tags": [ "id", "do", "incididunt", "eu", "nisi", "aliqua", "nisi" ], "friends": [ { "id": 0, "name": "Bailey Cameron" }, { "id": 1, "name": "Moreno Lawrence" }, { "id": 2, "name": "Jackie Small" } ], "greeting": "Hello, Lynette Short! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea231445b06ac4afc730", "index": 1828, "guid": "1274dc0b-60bc-450a-a954-847042471da0", "isActive": true, "balance": "$1,945.27", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "West Wilkins", "gender": "male", "company": "CENTURIA", "email": "westwilkins@centuria.com", "phone": "+1 (841) 529-3825", "address": "861 Kenmore Court, Laurelton, Rhode Island, 9412", "about": "Consequat exercitation occaecat enim sint duis esse est enim ullamco. Ad duis deserunt labore culpa aute voluptate labore excepteur quis elit dolore officia. Officia occaecat do voluptate commodo. Ad anim non enim duis incididunt duis enim.\r\n", "registered": "2014-09-14T11:36:38-12:00", "latitude": 31.347456, "longitude": 174.899561, "tags": [ "consectetur", "sunt", "culpa", "dolor", "magna", "nisi", "qui" ], "friends": [ { "id": 0, "name": "Sandra Frye" }, { "id": 1, "name": "Luisa Medina" }, { "id": 2, "name": "Rivers Terry" } ], "greeting": "Hello, West Wilkins! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea233c23a8ef25ff3850", "index": 1829, "guid": "901da337-e99d-475b-8367-b3c2bd32f542", "isActive": true, "balance": "$3,998.43", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Huffman Mccullough", "gender": "male", "company": "OPTICOM", "email": "huffmanmccullough@opticom.com", "phone": "+1 (812) 529-2230", "address": "724 Boulevard Court, Barclay, Florida, 4186", "about": "Exercitation elit labore deserunt dolore velit. Cupidatat culpa culpa nisi proident ex. Velit sunt amet minim quis ut tempor adipisicing commodo enim excepteur adipisicing aliqua tempor. Quis ea excepteur culpa amet ut id id quis ut aliqua culpa. Laboris enim irure veniam nisi tempor consequat duis culpa ullamco non.\r\n", "registered": "2014-06-05T01:30:16-12:00", "latitude": -11.214936, "longitude": 160.617028, "tags": [ "consectetur", "Lorem", "voluptate", "ex", "laborum", "fugiat", "esse" ], "friends": [ { "id": 0, "name": "Orr Manning" }, { "id": 1, "name": "Adkins Langley" }, { "id": 2, "name": "Megan Jackson" } ], "greeting": "Hello, Huffman Mccullough! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea237e58091a2eb67ecd", "index": 1830, "guid": "029ba7cf-44c8-48a3-bf52-760f5858cdf8", "isActive": true, "balance": "$1,386.95", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Daugherty Grant", "gender": "male", "company": "MENBRAIN", "email": "daughertygrant@menbrain.com", "phone": "+1 (934) 495-2674", "address": "711 McDonald Avenue, Foxworth, North Carolina, 9198", "about": "Officia esse sit minim qui elit adipisicing irure. Dolore elit culpa nisi ut enim dolor. Id anim non aliquip esse duis ullamco duis nulla exercitation est. Tempor nulla ex mollit in enim Lorem irure veniam incididunt cupidatat magna sit nulla qui. Aliqua do consectetur officia voluptate reprehenderit enim cupidatat irure elit.\r\n", "registered": "2014-04-04T03:34:02-13:00", "latitude": -27.357462, "longitude": -95.98782, "tags": [ "consectetur", "qui", "laboris", "irure", "reprehenderit", "ut", "nulla" ], "friends": [ { "id": 0, "name": "Curry Hatfield" }, { "id": 1, "name": "Georgia Hodges" }, { "id": 2, "name": "Wendy Trevino" } ], "greeting": "Hello, Daugherty Grant! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23a3812d97d0c2822a", "index": 1831, "guid": "623aaa91-3c3d-44ef-9145-d41b086d49c8", "isActive": true, "balance": "$1,345.84", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Castro Thornton", "gender": "male", "company": "EDECINE", "email": "castrothornton@edecine.com", "phone": "+1 (965) 564-3725", "address": "858 Lefferts Place, Alfarata, New Hampshire, 5231", "about": "Nostrud velit enim labore elit anim non dolore dolor consectetur exercitation. Duis qui id eiusmod velit aliquip anim reprehenderit voluptate magna labore pariatur laborum. Nulla excepteur aliqua non culpa. Commodo ut esse mollit laborum occaecat. Consectetur voluptate sunt Lorem cupidatat nisi ipsum quis eu velit elit id.\r\n", "registered": "2014-04-19T04:54:29-12:00", "latitude": 42.233547, "longitude": 111.295574, "tags": [ "mollit", "amet", "aliqua", "irure", "est", "veniam", "proident" ], "friends": [ { "id": 0, "name": "Marilyn Kelley" }, { "id": 1, "name": "Reba Joseph" }, { "id": 2, "name": "Ethel Stephens" } ], "greeting": "Hello, Castro Thornton! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea238dc283f0c54cc368", "index": 1832, "guid": "c5df67db-e573-4072-ac8b-0feb92723a77", "isActive": true, "balance": "$1,142.61", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Galloway Norman", "gender": "male", "company": "GRACKER", "email": "gallowaynorman@gracker.com", "phone": "+1 (943) 499-2130", "address": "302 Lawton Street, Spokane, Arkansas, 3786", "about": "Nisi excepteur ex non laboris duis nulla fugiat nostrud ipsum. Reprehenderit aliquip laborum et laboris quis. Esse adipisicing ad velit excepteur dolore veniam eiusmod ullamco Lorem est. Veniam incididunt anim dolor nulla consectetur eu. Et veniam velit officia enim laborum deserunt velit ex cillum occaecat anim et minim reprehenderit.\r\n", "registered": "2014-08-16T23:58:27-12:00", "latitude": 53.461834, "longitude": 96.038827, "tags": [ "et", "laborum", "labore", "veniam", "quis", "veniam", "minim" ], "friends": [ { "id": 0, "name": "Cantrell Nash" }, { "id": 1, "name": "Julia Gibbs" }, { "id": 2, "name": "Jimmie Foreman" } ], "greeting": "Hello, Galloway Norman! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23b68b5132337fa294", "index": 1833, "guid": "b0011cba-385d-4034-a7f6-265cdffb1490", "isActive": false, "balance": "$2,368.34", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Katrina Leon", "gender": "female", "company": "ZAJ", "email": "katrinaleon@zaj.com", "phone": "+1 (967) 566-2597", "address": "936 Alabama Avenue, Lewis, Iowa, 9179", "about": "Voluptate adipisicing consequat aliqua est. Labore sunt ex irure pariatur aliqua ut reprehenderit ea et deserunt velit quis. Culpa occaecat adipisicing officia id duis dolore ullamco fugiat ut. Esse dolor consectetur esse aute pariatur eiusmod duis labore pariatur sunt duis cillum nisi. Officia culpa qui nulla nostrud. Ut laboris ullamco eu cillum proident Lorem consequat nostrud culpa ea consequat. Nisi dolore quis esse in occaecat.\r\n", "registered": "2014-01-13T13:49:10-13:00", "latitude": 61.491099, "longitude": 115.774709, "tags": [ "do", "velit", "cillum", "qui", "officia", "non", "commodo" ], "friends": [ { "id": 0, "name": "Gray Holt" }, { "id": 1, "name": "Luz Griffin" }, { "id": 2, "name": "Regina Sutton" } ], "greeting": "Hello, Katrina Leon! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23453789792593f4d4", "index": 1834, "guid": "7b2f0d78-dadf-45e0-acbe-af223d230662", "isActive": false, "balance": "$1,673.50", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Hale Woodard", "gender": "male", "company": "ZILLAR", "email": "halewoodard@zillar.com", "phone": "+1 (941) 502-2273", "address": "904 Lafayette Avenue, Kersey, Nebraska, 4007", "about": "Fugiat culpa anim fugiat cupidatat consequat enim sit irure magna. Dolor qui dolor pariatur anim eiusmod. Do cupidatat Lorem commodo enim ex culpa duis sit incididunt. Dolore adipisicing duis culpa reprehenderit esse in eu voluptate consequat adipisicing ad labore amet sint. Laboris tempor non Lorem elit aliquip consectetur reprehenderit deserunt elit commodo. Ad fugiat aute Lorem enim reprehenderit aute eu culpa deserunt cillum deserunt duis cupidatat ullamco.\r\n", "registered": "2014-02-03T15:59:52-13:00", "latitude": 20.29272, "longitude": -5.057321, "tags": [ "sit", "ad", "velit", "qui", "cupidatat", "commodo", "cillum" ], "friends": [ { "id": 0, "name": "Iris Larsen" }, { "id": 1, "name": "Nicole Parks" }, { "id": 2, "name": "Ella Benson" } ], "greeting": "Hello, Hale Woodard! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23961006f2d5685e02", "index": 1835, "guid": "6b8d040c-143f-43ba-8482-3662d835178f", "isActive": false, "balance": "$1,769.34", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Lorene Jefferson", "gender": "female", "company": "MEDIFAX", "email": "lorenejefferson@medifax.com", "phone": "+1 (889) 483-2589", "address": "916 Elizabeth Place, Lithium, District Of Columbia, 3304", "about": "Consectetur velit minim culpa ipsum ut dolor. Lorem deserunt sint officia eiusmod nulla duis eiusmod qui eiusmod dolor veniam excepteur. Elit non sunt deserunt culpa ea nisi consectetur nostrud enim. Adipisicing duis nostrud laboris minim ex nostrud ipsum ad nulla labore eiusmod sunt. Magna non ullamco ea aute excepteur ipsum. Dolor eu officia commodo nisi. Consequat occaecat cillum exercitation mollit.\r\n", "registered": "2014-08-01T00:07:16-12:00", "latitude": 51.689017, "longitude": 147.101054, "tags": [ "amet", "in", "ea", "pariatur", "sit", "amet", "laborum" ], "friends": [ { "id": 0, "name": "Lenora Ruiz" }, { "id": 1, "name": "Melba Mclaughlin" }, { "id": 2, "name": "Conrad Bernard" } ], "greeting": "Hello, Lorene Jefferson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea232a73a4cb99faff76", "index": 1836, "guid": "18aec669-e797-41b5-820a-f2cb39ece372", "isActive": false, "balance": "$2,279.35", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Glenna Bonner", "gender": "female", "company": "DOGNOSIS", "email": "glennabonner@dognosis.com", "phone": "+1 (830) 589-3431", "address": "615 Independence Avenue, Cavalero, New Jersey, 6923", "about": "Adipisicing ad exercitation eu tempor laborum sint adipisicing. Voluptate ad ut ex cillum commodo enim. Duis exercitation irure proident laboris exercitation commodo tempor fugiat adipisicing enim irure ex mollit. In non laborum sint tempor. Cupidatat ut commodo nostrud enim. Amet reprehenderit exercitation sint est eu aliqua enim cupidatat sint laborum commodo velit.\r\n", "registered": "2014-08-01T17:42:19-12:00", "latitude": -79.218884, "longitude": 38.495577, "tags": [ "do", "commodo", "sit", "incididunt", "duis", "laborum", "ea" ], "friends": [ { "id": 0, "name": "Savage Fischer" }, { "id": 1, "name": "Steele Whitney" }, { "id": 2, "name": "Josie Conway" } ], "greeting": "Hello, Glenna Bonner! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2333cb0972131108d5", "index": 1837, "guid": "6c31f7d5-dc44-46d9-a25a-83b48863984c", "isActive": true, "balance": "$1,974.33", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Janis Patton", "gender": "female", "company": "EXOSPEED", "email": "janispatton@exospeed.com", "phone": "+1 (840) 424-3231", "address": "100 Elliott Walk, Dexter, Palau, 2171", "about": "Aute enim irure Lorem voluptate consequat commodo consectetur. Adipisicing anim proident eiusmod laboris nulla tempor id laborum esse laboris culpa reprehenderit pariatur. Ullamco occaecat nulla sint aute sunt laboris incididunt minim consequat in sit ad. Consequat ut aliquip non dolor eu pariatur ipsum commodo deserunt eu irure dolor. Voluptate anim magna eiusmod proident.\r\n", "registered": "2014-04-21T19:34:50-12:00", "latitude": -21.487058, "longitude": -144.531966, "tags": [ "culpa", "cupidatat", "occaecat", "eu", "magna", "ad", "adipisicing" ], "friends": [ { "id": 0, "name": "Nita Hahn" }, { "id": 1, "name": "Lauren Mcpherson" }, { "id": 2, "name": "Lynnette Cabrera" } ], "greeting": "Hello, Janis Patton! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23c2103d35842b7f04", "index": 1838, "guid": "ac4f3d24-12e5-4665-bc58-0ebdd6259520", "isActive": true, "balance": "$3,058.30", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Felecia Sanchez", "gender": "female", "company": "GLUID", "email": "feleciasanchez@gluid.com", "phone": "+1 (999) 439-3557", "address": "120 Hunts Lane, Chumuckla, Puerto Rico, 2008", "about": "Velit deserunt nostrud ad sunt non sunt. In ea veniam aliquip est exercitation nostrud proident et adipisicing est. Commodo velit deserunt aliquip reprehenderit mollit tempor. Amet eu occaecat non esse proident. Adipisicing ex anim cillum in. Ea sit fugiat eu consectetur eu anim anim irure velit in voluptate laborum occaecat. Incididunt veniam occaecat magna mollit aliqua incididunt ea duis sunt aliquip ipsum irure est.\r\n", "registered": "2014-06-12T20:46:08-12:00", "latitude": -74.881103, "longitude": 114.281924, "tags": [ "consequat", "voluptate", "veniam", "dolor", "ut", "reprehenderit", "cillum" ], "friends": [ { "id": 0, "name": "Manuela Davidson" }, { "id": 1, "name": "Shaw Preston" }, { "id": 2, "name": "Carey Williams" } ], "greeting": "Hello, Felecia Sanchez! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23dd4973009ac78872", "index": 1839, "guid": "62d77b8a-0c40-46d5-b55d-26225bdb5b00", "isActive": true, "balance": "$3,145.76", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Nancy Reilly", "gender": "female", "company": "QUILM", "email": "nancyreilly@quilm.com", "phone": "+1 (999) 552-2037", "address": "706 Thames Street, Kipp, California, 5255", "about": "Eu proident culpa nisi ut cillum cillum excepteur minim veniam. Mollit sunt ex ea commodo cillum in. Occaecat occaecat id in non laborum culpa eiusmod officia reprehenderit exercitation dolor qui.\r\n", "registered": "2014-08-18T16:44:23-12:00", "latitude": 20.975921, "longitude": -137.211461, "tags": [ "ullamco", "do", "ullamco", "esse", "ut", "ad", "veniam" ], "friends": [ { "id": 0, "name": "Chandra Jacobson" }, { "id": 1, "name": "Baird Jones" }, { "id": 2, "name": "Sarah Bennett" } ], "greeting": "Hello, Nancy Reilly! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23e6175c55ae64a8d1", "index": 1840, "guid": "9adc9cca-8e75-4019-859d-578b66d28716", "isActive": true, "balance": "$3,554.36", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Briana Quinn", "gender": "female", "company": "ENJOLA", "email": "brianaquinn@enjola.com", "phone": "+1 (958) 488-3638", "address": "491 Stockton Street, Alden, Vermont, 7775", "about": "Sint laboris reprehenderit esse qui deserunt veniam eu elit qui veniam eu elit laboris. Pariatur pariatur pariatur laborum elit ipsum elit consequat ullamco cillum. Quis dolor incididunt aliqua quis est aliquip anim aliquip voluptate eiusmod nisi fugiat deserunt. Cupidatat eiusmod incididunt incididunt reprehenderit et in voluptate aliqua. Sunt aliqua nulla nostrud incididunt ut fugiat culpa pariatur aliqua.\r\n", "registered": "2014-09-10T01:58:46-12:00", "latitude": 51.781039, "longitude": -125.335615, "tags": [ "proident", "dolore", "cupidatat", "Lorem", "veniam", "ut", "ea" ], "friends": [ { "id": 0, "name": "Chasity Zimmerman" }, { "id": 1, "name": "Josefa Cruz" }, { "id": 2, "name": "Shelton Moody" } ], "greeting": "Hello, Briana Quinn! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2324ded37e4aaf144f", "index": 1841, "guid": "674e0d61-3dde-476a-bc83-39104bd54c36", "isActive": true, "balance": "$3,955.94", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Ollie Barton", "gender": "female", "company": "SPORTAN", "email": "olliebarton@sportan.com", "phone": "+1 (846) 576-2294", "address": "507 Pierrepont Place, Beyerville, Indiana, 811", "about": "Minim ipsum cupidatat culpa sint sunt nisi voluptate pariatur ea pariatur. Lorem labore fugiat adipisicing sunt. Aliqua anim aliqua deserunt exercitation qui est ipsum dolor ea ullamco ad et laborum non. Sit cupidatat ut commodo eiusmod reprehenderit qui incididunt. Excepteur qui qui duis irure ipsum ea est occaecat id qui veniam.\r\n", "registered": "2014-07-16T16:53:51-12:00", "latitude": -33.207491, "longitude": -18.981561, "tags": [ "veniam", "sint", "duis", "sint", "occaecat", "dolor", "non" ], "friends": [ { "id": 0, "name": "Massey Ayala" }, { "id": 1, "name": "Lula Workman" }, { "id": 2, "name": "Hughes Hopper" } ], "greeting": "Hello, Ollie Barton! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2382872159f7a61d21", "index": 1842, "guid": "f83b6e5b-5b5a-419a-9139-8eb136736980", "isActive": true, "balance": "$2,405.69", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Oneal Turner", "gender": "male", "company": "OPTICON", "email": "onealturner@opticon.com", "phone": "+1 (964) 434-2653", "address": "846 Regent Place, Wells, Illinois, 4705", "about": "Esse cupidatat nulla incididunt ullamco duis irure nostrud cillum cupidatat eiusmod id. Amet deserunt quis quis cupidatat. Elit laborum minim occaecat labore non ea non nisi proident mollit in fugiat deserunt.\r\n", "registered": "2014-05-11T17:53:53-12:00", "latitude": 75.184798, "longitude": 137.72092, "tags": [ "consectetur", "quis", "in", "laboris", "ad", "consequat", "laboris" ], "friends": [ { "id": 0, "name": "Torres Shaffer" }, { "id": 1, "name": "Jensen Miranda" }, { "id": 2, "name": "Sadie Cash" } ], "greeting": "Hello, Oneal Turner! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea232c8188e41abbf0a6", "index": 1843, "guid": "97c04ad2-f893-4669-9d74-1dcd68304883", "isActive": false, "balance": "$2,095.65", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Jeannie Randall", "gender": "female", "company": "AEORA", "email": "jeannierandall@aeora.com", "phone": "+1 (855) 463-2417", "address": "147 Ridgecrest Terrace, Dargan, South Carolina, 8095", "about": "Nisi cupidatat deserunt labore veniam mollit. Est sunt cupidatat sit aliquip. Dolor qui dolor irure velit ut minim elit. Sint amet amet dolore anim cupidatat id dolore sint velit voluptate duis elit cillum. Voluptate dolore consectetur amet nulla qui ad sunt nisi. Reprehenderit cillum anim dolore eiusmod ipsum ullamco fugiat.\r\n", "registered": "2014-08-09T18:50:59-12:00", "latitude": -19.91583, "longitude": 72.416412, "tags": [ "enim", "cillum", "ullamco", "est", "consectetur", "officia", "aute" ], "friends": [ { "id": 0, "name": "Hutchinson Drake" }, { "id": 1, "name": "Stevens Calderon" }, { "id": 2, "name": "Rosalind Mckinney" } ], "greeting": "Hello, Jeannie Randall! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23a9aacb660d5ed54e", "index": 1844, "guid": "effb8e0d-0bfa-40d0-b09e-21c1c157771c", "isActive": true, "balance": "$3,138.57", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Harriet Estrada", "gender": "female", "company": "TURNLING", "email": "harrietestrada@turnling.com", "phone": "+1 (966) 405-2456", "address": "689 Cove Lane, Selma, American Samoa, 4385", "about": "Exercitation ea occaecat non aliquip ipsum. Duis voluptate dolore amet ipsum excepteur. Esse velit esse nulla minim cillum. Et fugiat pariatur ut consectetur laborum ut ut veniam consectetur labore Lorem. Voluptate magna in do ipsum ullamco occaecat. Magna elit reprehenderit magna nulla ut do.\r\n", "registered": "2014-07-31T20:00:42-12:00", "latitude": 32.142494, "longitude": 6.861355, "tags": [ "ut", "consectetur", "exercitation", "tempor", "incididunt", "fugiat", "deserunt" ], "friends": [ { "id": 0, "name": "Vega Weaver" }, { "id": 1, "name": "Amy Welch" }, { "id": 2, "name": "Corinne Durham" } ], "greeting": "Hello, Harriet Estrada! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23df5758d26761d2ce", "index": 1845, "guid": "b725f43f-91ae-48d3-8606-84dbce265be2", "isActive": true, "balance": "$1,869.53", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Kennedy Woodward", "gender": "male", "company": "CINESANCT", "email": "kennedywoodward@cinesanct.com", "phone": "+1 (945) 592-3293", "address": "615 Willmohr Street, Oretta, Delaware, 257", "about": "Deserunt consequat cupidatat pariatur dolore dolore dolor ullamco tempor esse. Ad dolore ad adipisicing aute dolor fugiat anim eiusmod. Officia tempor cillum culpa proident. Irure consectetur reprehenderit aute sit anim et est eu non laboris. Ad officia elit ipsum elit anim. Non mollit esse amet commodo. Reprehenderit velit anim incididunt irure consequat proident amet reprehenderit laborum.\r\n", "registered": "2014-01-21T19:29:24-13:00", "latitude": -23.016902, "longitude": 71.68944, "tags": [ "dolor", "culpa", "dolore", "reprehenderit", "nisi", "occaecat", "eu" ], "friends": [ { "id": 0, "name": "Sanchez Fowler" }, { "id": 1, "name": "Cynthia Holloway" }, { "id": 2, "name": "Elizabeth Britt" } ], "greeting": "Hello, Kennedy Woodward! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea232003952133e5eb66", "index": 1846, "guid": "811ebd7c-b58b-44d0-89ab-990e49d3ca7d", "isActive": false, "balance": "$2,959.24", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Duncan Berg", "gender": "male", "company": "KEEG", "email": "duncanberg@keeg.com", "phone": "+1 (808) 440-3431", "address": "283 Homecrest Court, Cucumber, Pennsylvania, 4365", "about": "Pariatur irure nulla aliqua irure magna sunt. Nostrud elit ipsum cupidatat sit et exercitation veniam do in irure do ea dolor. Incididunt nostrud incididunt ad officia adipisicing elit laborum mollit est consectetur deserunt enim occaecat deserunt.\r\n", "registered": "2014-03-03T23:39:00-13:00", "latitude": 89.820392, "longitude": 58.56148, "tags": [ "aliqua", "officia", "ullamco", "Lorem", "tempor", "reprehenderit", "laboris" ], "friends": [ { "id": 0, "name": "Celia Moss" }, { "id": 1, "name": "Rowena Stark" }, { "id": 2, "name": "England Mendoza" } ], "greeting": "Hello, Duncan Berg! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea230fb176ea0b05ecad", "index": 1847, "guid": "2dac0c64-047f-4717-8347-d99ab45b1bef", "isActive": false, "balance": "$2,773.92", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Cobb Harrison", "gender": "male", "company": "ZAPPIX", "email": "cobbharrison@zappix.com", "phone": "+1 (838) 445-2581", "address": "899 Strickland Avenue, Wikieup, Georgia, 9091", "about": "Commodo proident pariatur dolor sint cupidatat et voluptate. Consequat sint incididunt laborum ipsum magna ad dolor cillum labore id nostrud sit nulla. Voluptate qui excepteur dolor dolor dolor et excepteur quis ut nisi non tempor occaecat.\r\n", "registered": "2014-03-13T16:14:08-13:00", "latitude": 6.230106, "longitude": 161.177554, "tags": [ "Lorem", "commodo", "commodo", "minim", "qui", "irure", "in" ], "friends": [ { "id": 0, "name": "Long Dickerson" }, { "id": 1, "name": "Carmela Arnold" }, { "id": 2, "name": "Rita Rodriquez" } ], "greeting": "Hello, Cobb Harrison! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea232888f6a93400b2d9", "index": 1848, "guid": "c8ca7d7c-60f5-4c2a-916a-0d171626ae87", "isActive": false, "balance": "$1,629.60", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Nadia Guy", "gender": "female", "company": "DANCITY", "email": "nadiaguy@dancity.com", "phone": "+1 (902) 427-3786", "address": "518 Dorchester Road, Sunbury, North Dakota, 6505", "about": "Est amet consectetur est cillum ipsum proident exercitation proident occaecat ea. Laboris laborum aute reprehenderit irure et ex exercitation. Nulla adipisicing deserunt pariatur incididunt. Consectetur qui sunt eiusmod irure voluptate ex excepteur id eiusmod amet pariatur proident est ad. Et do adipisicing dolore cillum do duis tempor.\r\n", "registered": "2014-02-09T16:56:09-13:00", "latitude": 50.091757, "longitude": -17.187756, "tags": [ "duis", "nisi", "ex", "laborum", "labore", "excepteur", "et" ], "friends": [ { "id": 0, "name": "Alford Vang" }, { "id": 1, "name": "Geneva Lynn" }, { "id": 2, "name": "Kristin York" } ], "greeting": "Hello, Nadia Guy! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea236b8a5d9eb0cd5eda", "index": 1849, "guid": "b091fffc-c065-4223-9009-6e60d00e08cd", "isActive": false, "balance": "$3,720.84", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Sofia Erickson", "gender": "female", "company": "GREEKER", "email": "sofiaerickson@greeker.com", "phone": "+1 (997) 437-3359", "address": "922 Landis Court, Enetai, Louisiana, 1887", "about": "Elit enim enim cupidatat proident ut aute non magna. Consectetur incididunt in velit mollit proident deserunt est. Commodo eiusmod voluptate magna dolore eiusmod ullamco consequat aute do aute voluptate occaecat qui sit. Deserunt pariatur proident reprehenderit reprehenderit adipisicing veniam quis tempor laborum sint. Dolor eiusmod ut duis ullamco proident sint aliquip cupidatat do sit dolor. Est officia tempor reprehenderit nulla quis eu quis. Voluptate ex reprehenderit ipsum eu et.\r\n", "registered": "2014-08-27T21:22:37-12:00", "latitude": 17.293416, "longitude": -98.743457, "tags": [ "incididunt", "magna", "excepteur", "aliquip", "ut", "aliqua", "elit" ], "friends": [ { "id": 0, "name": "Estela Fields" }, { "id": 1, "name": "Grant Aguilar" }, { "id": 2, "name": "Griffin Gomez" } ], "greeting": "Hello, Sofia Erickson! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2318edfc78150d2019", "index": 1850, "guid": "86c36c78-1d56-4bd0-826d-2d0e34a302a4", "isActive": true, "balance": "$2,260.61", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Rosales Stewart", "gender": "male", "company": "WRAPTURE", "email": "rosalesstewart@wrapture.com", "phone": "+1 (925) 578-2733", "address": "974 Gatling Place, Harviell, Northern Mariana Islands, 9037", "about": "Esse pariatur labore sint sit. Consectetur proident cupidatat ullamco magna. Non et pariatur minim sint qui est in. Eiusmod quis id consectetur elit commodo cillum ut minim. Voluptate do in consequat in cillum consectetur occaecat non ut enim.\r\n", "registered": "2014-01-20T12:38:33-13:00", "latitude": 74.578042, "longitude": -27.160063, "tags": [ "veniam", "proident", "incididunt", "ullamco", "ipsum", "proident", "aute" ], "friends": [ { "id": 0, "name": "Doris Foster" }, { "id": 1, "name": "Mckenzie Pacheco" }, { "id": 2, "name": "Hopper Rodgers" } ], "greeting": "Hello, Rosales Stewart! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2340d63657cf52aa43", "index": 1851, "guid": "04316685-437f-4a8f-becd-042d8fd71c64", "isActive": false, "balance": "$1,522.52", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Nellie Meyers", "gender": "female", "company": "PORTALINE", "email": "nelliemeyers@portaline.com", "phone": "+1 (895) 452-2246", "address": "558 Bushwick Avenue, Eagleville, Colorado, 9259", "about": "Duis incididunt fugiat excepteur consequat velit. Ex reprehenderit excepteur proident exercitation proident laboris nisi Lorem. Aliqua nulla nisi officia nisi laborum ullamco sunt.\r\n", "registered": "2014-08-24T02:14:01-12:00", "latitude": 45.378822, "longitude": -109.573977, "tags": [ "nulla", "laboris", "do", "consectetur", "eiusmod", "veniam", "laborum" ], "friends": [ { "id": 0, "name": "Webster Roach" }, { "id": 1, "name": "Norton Gallegos" }, { "id": 2, "name": "Miles Stokes" } ], "greeting": "Hello, Nellie Meyers! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23379036b20d722a88", "index": 1852, "guid": "4e4eb409-9197-4464-a95f-832552ae5b5a", "isActive": false, "balance": "$2,254.92", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Carol Marks", "gender": "female", "company": "GONKLE", "email": "carolmarks@gonkle.com", "phone": "+1 (807) 534-2202", "address": "515 Bragg Court, Groveville, Idaho, 3889", "about": "Nulla reprehenderit pariatur duis est adipisicing. Culpa commodo anim magna aliquip ad non proident reprehenderit excepteur deserunt eiusmod ullamco. Id adipisicing cupidatat laboris non id officia fugiat dolor. Anim laboris adipisicing adipisicing labore consectetur excepteur fugiat sint enim ipsum aliquip ut minim.\r\n", "registered": "2014-08-10T05:44:20-12:00", "latitude": 29.872365, "longitude": -100.640959, "tags": [ "amet", "laboris", "laborum", "ex", "ut", "irure", "voluptate" ], "friends": [ { "id": 0, "name": "Dillard Woods" }, { "id": 1, "name": "Gracie Briggs" }, { "id": 2, "name": "Newton Serrano" } ], "greeting": "Hello, Carol Marks! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23616fdf486cea6d3e", "index": 1853, "guid": "495dbe76-eebc-4ecc-ac3a-0b7584d205ac", "isActive": false, "balance": "$2,579.35", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Stephanie Cooper", "gender": "female", "company": "BALUBA", "email": "stephaniecooper@baluba.com", "phone": "+1 (893) 435-2827", "address": "966 Lombardy Street, Gila, Marshall Islands, 4344", "about": "In ullamco id ut aliqua duis. Consequat ex veniam duis labore irure. Eu incididunt anim aliqua ex laboris. Veniam ipsum tempor occaecat deserunt ullamco.\r\n", "registered": "2014-09-08T06:12:44-12:00", "latitude": 11.77445, "longitude": 108.612303, "tags": [ "irure", "cupidatat", "adipisicing", "aliqua", "amet", "adipisicing", "aute" ], "friends": [ { "id": 0, "name": "Dyer Floyd" }, { "id": 1, "name": "Heather Stevenson" }, { "id": 2, "name": "Kristy Sargent" } ], "greeting": "Hello, Stephanie Cooper! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23f642bdd125c7d05a", "index": 1854, "guid": "5d8736a6-cfe2-4479-8d14-ff3893992bc7", "isActive": true, "balance": "$3,661.47", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Holly Johnston", "gender": "female", "company": "EXTRAGEN", "email": "hollyjohnston@extragen.com", "phone": "+1 (969) 426-3170", "address": "124 Jerome Avenue, Albrightsville, New York, 2174", "about": "Ad culpa irure cillum ut occaecat. Amet ut eiusmod reprehenderit amet cillum velit. Est amet qui deserunt duis quis nostrud in pariatur excepteur magna veniam irure aliqua. Adipisicing Lorem nulla dolore aute eiusmod nisi.\r\n", "registered": "2014-09-12T18:31:05-12:00", "latitude": -70.677557, "longitude": 105.556655, "tags": [ "eu", "deserunt", "deserunt", "occaecat", "consectetur", "dolor", "amet" ], "friends": [ { "id": 0, "name": "Austin Valenzuela" }, { "id": 1, "name": "Reed Richards" }, { "id": 2, "name": "Guy Duffy" } ], "greeting": "Hello, Holly Johnston! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23b67d99b863bc271a", "index": 1855, "guid": "55b9590d-43b9-4076-8f0e-0c61642968f0", "isActive": false, "balance": "$3,703.04", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Koch Blanchard", "gender": "male", "company": "KAGGLE", "email": "kochblanchard@kaggle.com", "phone": "+1 (883) 548-3241", "address": "179 Portal Street, Brogan, Guam, 4825", "about": "Minim sint quis labore labore incididunt do ex Lorem in. Et nostrud dolor id do excepteur velit in dolor quis do irure pariatur. Commodo ullamco dolor ut labore qui pariatur reprehenderit sint.\r\n", "registered": "2014-03-12T18:33:50-13:00", "latitude": 30.620362, "longitude": 144.926608, "tags": [ "sunt", "ipsum", "fugiat", "Lorem", "irure", "ut", "aute" ], "friends": [ { "id": 0, "name": "Green Craig" }, { "id": 1, "name": "Maryellen Byrd" }, { "id": 2, "name": "Melton White" } ], "greeting": "Hello, Koch Blanchard! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23481bbc3eaf6b9564", "index": 1856, "guid": "d00c4931-dd98-4b93-ba81-4b87f31ccd9b", "isActive": true, "balance": "$3,634.60", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Dolly Hensley", "gender": "female", "company": "CUIZINE", "email": "dollyhensley@cuizine.com", "phone": "+1 (856) 453-2541", "address": "969 Canton Court, Wright, Virgin Islands, 7141", "about": "Dolor laboris est labore est elit voluptate eiusmod minim aliqua ullamco. Non nisi occaecat sint laboris duis officia est pariatur. Nostrud eiusmod commodo nisi reprehenderit esse dolore. Ex dolore id sint id proident laborum amet irure. Et velit ut dolore duis officia est mollit incididunt in.\r\n", "registered": "2014-08-15T03:45:30-12:00", "latitude": 61.255357, "longitude": -155.903471, "tags": [ "consectetur", "eu", "ad", "exercitation", "exercitation", "amet", "ipsum" ], "friends": [ { "id": 0, "name": "Randall Martinez" }, { "id": 1, "name": "Kerr Richmond" }, { "id": 2, "name": "Reynolds Mcclure" } ], "greeting": "Hello, Dolly Hensley! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23605b4ffc1756f0c3", "index": 1857, "guid": "d4fd6e8f-16da-4505-a8d4-d52b22f300ca", "isActive": false, "balance": "$3,917.58", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Townsend Peters", "gender": "male", "company": "XUMONK", "email": "townsendpeters@xumonk.com", "phone": "+1 (852) 536-3586", "address": "196 Willow Street, Fowlerville, Massachusetts, 7308", "about": "Laboris et ex ipsum reprehenderit ut irure deserunt voluptate tempor sint enim. Qui consectetur duis deserunt veniam commodo non eu culpa dolore. Esse dolore esse exercitation sint.\r\n", "registered": "2014-07-13T06:10:06-12:00", "latitude": -38.808588, "longitude": 151.854652, "tags": [ "est", "consectetur", "consectetur", "pariatur", "commodo", "cupidatat", "occaecat" ], "friends": [ { "id": 0, "name": "Pace Lara" }, { "id": 1, "name": "Jodie Cleveland" }, { "id": 2, "name": "Toni Howell" } ], "greeting": "Hello, Townsend Peters! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2342d2aeb28037a246", "index": 1858, "guid": "4c75de5a-7a97-4d2f-a063-7285da10de7f", "isActive": false, "balance": "$1,862.79", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Sosa Nielsen", "gender": "male", "company": "FUTURITY", "email": "sosanielsen@futurity.com", "phone": "+1 (942) 571-2088", "address": "256 Sutter Avenue, Lutsen, Utah, 2472", "about": "Duis tempor incididunt Lorem voluptate reprehenderit magna excepteur cillum laborum. Officia do esse proident eiusmod qui occaecat. Do et amet qui adipisicing consectetur consectetur ad est cupidatat voluptate.\r\n", "registered": "2014-01-22T18:23:34-13:00", "latitude": -89.640296, "longitude": -82.819561, "tags": [ "mollit", "nulla", "aute", "reprehenderit", "labore", "esse", "culpa" ], "friends": [ { "id": 0, "name": "Chavez Rhodes" }, { "id": 1, "name": "Estella Hartman" }, { "id": 2, "name": "Gates Travis" } ], "greeting": "Hello, Sosa Nielsen! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23e18e2553a8a565fb", "index": 1859, "guid": "4b93f053-3567-4b2e-a438-0f88faf752c8", "isActive": false, "balance": "$2,272.09", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Candy Wilson", "gender": "female", "company": "PRIMORDIA", "email": "candywilson@primordia.com", "phone": "+1 (810) 556-3253", "address": "250 Conduit Boulevard, Como, Montana, 3984", "about": "Voluptate irure ea commodo laborum magna cupidatat sit exercitation duis et dolore ea minim. Nostrud tempor nostrud officia ullamco reprehenderit sint. Eiusmod cupidatat sint magna laborum ipsum tempor anim proident.\r\n", "registered": "2014-02-18T08:53:47-13:00", "latitude": 66.380995, "longitude": -120.373773, "tags": [ "laboris", "officia", "nulla", "cupidatat", "magna", "nostrud", "nulla" ], "friends": [ { "id": 0, "name": "Maxwell Pace" }, { "id": 1, "name": "Calhoun Sparks" }, { "id": 2, "name": "Tommie Patterson" } ], "greeting": "Hello, Candy Wilson! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2343c2dea058bce7d4", "index": 1860, "guid": "dd40db56-214f-43c0-9349-5bdb8a0c637c", "isActive": false, "balance": "$1,954.94", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "David Wood", "gender": "male", "company": "PYRAMAX", "email": "davidwood@pyramax.com", "phone": "+1 (884) 434-3676", "address": "573 Court Street, Eastvale, Wisconsin, 8800", "about": "Et culpa ut amet qui elit. Nostrud nisi enim qui laborum adipisicing minim proident nulla ex excepteur mollit excepteur. Consectetur ea dolore exercitation tempor dolor anim voluptate cillum.\r\n", "registered": "2014-07-12T05:14:02-12:00", "latitude": 35.219012, "longitude": 101.232263, "tags": [ "sint", "elit", "deserunt", "quis", "magna", "anim", "voluptate" ], "friends": [ { "id": 0, "name": "Traci Rodriguez" }, { "id": 1, "name": "Fisher Bates" }, { "id": 2, "name": "Ingrid Shepard" } ], "greeting": "Hello, David Wood! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea233da7ebe194d4aa1a", "index": 1861, "guid": "d1985919-a8a3-4531-8cb8-1e50a6731631", "isActive": false, "balance": "$2,813.24", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Tracy Mercado", "gender": "female", "company": "KATAKANA", "email": "tracymercado@katakana.com", "phone": "+1 (990) 575-2206", "address": "330 Lexington Avenue, Tooleville, Maine, 7334", "about": "Duis eiusmod dolore excepteur ea esse adipisicing do non Lorem id anim. Culpa duis elit sit eiusmod aliquip. Occaecat elit cillum exercitation consequat fugiat excepteur ea. Duis officia in deserunt velit sit veniam.\r\n", "registered": "2014-06-26T01:17:30-12:00", "latitude": -42.539109, "longitude": 173.574002, "tags": [ "reprehenderit", "tempor", "aliqua", "mollit", "ex", "eu", "nulla" ], "friends": [ { "id": 0, "name": "Randolph Fitzpatrick" }, { "id": 1, "name": "Watts Hart" }, { "id": 2, "name": "Hensley Poole" } ], "greeting": "Hello, Tracy Mercado! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea230e49971f191eb8aa", "index": 1862, "guid": "f1c6b179-1aca-4422-8d1c-401dd79536b7", "isActive": false, "balance": "$1,067.58", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Hamilton Franks", "gender": "male", "company": "ILLUMITY", "email": "hamiltonfranks@illumity.com", "phone": "+1 (842) 545-2448", "address": "609 Brighton Court, Lavalette, Virginia, 7756", "about": "Ipsum excepteur duis dolore aliqua dolor et nulla nostrud voluptate non culpa ut incididunt occaecat. Quis duis velit fugiat consectetur tempor ex deserunt officia exercitation. Magna commodo consequat officia aliqua irure consequat exercitation deserunt fugiat non in sint. Est sint sit proident consequat. Do commodo officia incididunt cillum. Sunt nisi occaecat do aliquip exercitation anim occaecat id veniam ipsum labore.\r\n", "registered": "2014-08-11T21:32:03-12:00", "latitude": 32.743289, "longitude": 33.51559, "tags": [ "proident", "commodo", "sint", "exercitation", "quis", "cillum", "mollit" ], "friends": [ { "id": 0, "name": "Harris Watson" }, { "id": 1, "name": "Liza Shaw" }, { "id": 2, "name": "Langley Smith" } ], "greeting": "Hello, Hamilton Franks! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2389e9b990003c348e", "index": 1863, "guid": "208afcec-2c1f-43f2-a1f2-d1212329cd8e", "isActive": true, "balance": "$3,480.15", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Katy Bell", "gender": "female", "company": "PARLEYNET", "email": "katybell@parleynet.com", "phone": "+1 (877) 558-3966", "address": "719 Columbia Street, Crown, Kentucky, 8373", "about": "Amet minim ut labore labore deserunt do in mollit sint. Adipisicing Lorem adipisicing sunt commodo incididunt ea. Do nostrud anim magna dolor dolore eiusmod ea veniam mollit excepteur amet nostrud sunt. Et nulla ullamco nostrud cupidatat. Proident cupidatat exercitation laboris ea veniam reprehenderit eu ipsum in est incididunt.\r\n", "registered": "2014-02-21T05:02:14-13:00", "latitude": 84.349144, "longitude": -95.670004, "tags": [ "id", "mollit", "sit", "fugiat", "magna", "enim", "consequat" ], "friends": [ { "id": 0, "name": "Barton Simon" }, { "id": 1, "name": "Flora Orr" }, { "id": 2, "name": "Kim Page" } ], "greeting": "Hello, Katy Bell! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23be74b080bc6c5e33", "index": 1864, "guid": "a5a38b56-5f44-4e77-b22c-40ac9c157161", "isActive": false, "balance": "$3,300.00", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Josefina Greene", "gender": "female", "company": "ASSURITY", "email": "josefinagreene@assurity.com", "phone": "+1 (944) 517-3957", "address": "517 Butler Street, Katonah, Connecticut, 3317", "about": "Incididunt reprehenderit deserunt pariatur voluptate commodo officia nostrud pariatur irure qui. Laboris esse sit voluptate pariatur fugiat dolore elit ad. Consequat ex anim velit ut. Deserunt amet ex mollit officia ad cupidatat cupidatat consectetur laborum amet. Ad mollit aliquip irure ipsum enim cupidatat laboris eiusmod esse est occaecat do excepteur. Nulla duis culpa irure excepteur.\r\n", "registered": "2014-03-21T19:54:46-13:00", "latitude": -9.878051, "longitude": 55.575688, "tags": [ "id", "sit", "enim", "quis", "magna", "non", "deserunt" ], "friends": [ { "id": 0, "name": "Pittman Flowers" }, { "id": 1, "name": "Hahn Spencer" }, { "id": 2, "name": "Ursula Booker" } ], "greeting": "Hello, Josefina Greene! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23d21cd126bea7d87b", "index": 1865, "guid": "78fb0968-d8b7-48ec-8450-a0232c302c40", "isActive": true, "balance": "$3,203.02", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Lyons Vinson", "gender": "male", "company": "MEDMEX", "email": "lyonsvinson@medmex.com", "phone": "+1 (867) 594-2528", "address": "549 Beekman Place, Greenock, Mississippi, 1505", "about": "Do enim cupidatat minim sunt aliquip. Cupidatat aliquip ullamco pariatur exercitation aliqua enim aute nulla pariatur nisi aute. Officia duis aliqua officia ut aliquip ullamco ex excepteur Lorem qui reprehenderit laborum ipsum. Qui eu ipsum ut et consequat ad consectetur magna sunt cillum.\r\n", "registered": "2014-08-22T05:48:37-12:00", "latitude": -69.428695, "longitude": -51.606355, "tags": [ "veniam", "tempor", "ullamco", "fugiat", "anim", "dolor", "officia" ], "friends": [ { "id": 0, "name": "Juanita Craft" }, { "id": 1, "name": "Lynn Frazier" }, { "id": 2, "name": "Witt Guerrero" } ], "greeting": "Hello, Lyons Vinson! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23319099200d27d182", "index": 1866, "guid": "c524a497-f8d1-4e4f-96cb-4363edb531c9", "isActive": true, "balance": "$1,551.63", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Eleanor Francis", "gender": "female", "company": "VELOS", "email": "eleanorfrancis@velos.com", "phone": "+1 (983) 474-2025", "address": "634 Dwight Street, Celeryville, Washington, 8961", "about": "Ipsum aliqua dolor tempor occaecat exercitation incididunt quis aute ut labore dolor minim. Fugiat dolore culpa reprehenderit aute aliquip aute duis laboris eiusmod do. Enim ipsum id irure ullamco sit aliquip elit consectetur non laborum cupidatat non et.\r\n", "registered": "2014-08-17T12:07:55-12:00", "latitude": 4.944908, "longitude": 44.202288, "tags": [ "aliquip", "minim", "occaecat", "ut", "commodo", "elit", "reprehenderit" ], "friends": [ { "id": 0, "name": "Rebekah Wiley" }, { "id": 1, "name": "Jewell Kelly" }, { "id": 2, "name": "Lilian Klein" } ], "greeting": "Hello, Eleanor Francis! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23f726f7258ec7dc86", "index": 1867, "guid": "95fabd21-7a87-4862-a5ba-98a06c122898", "isActive": false, "balance": "$2,555.50", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Mercado Mcbride", "gender": "male", "company": "SUSTENZA", "email": "mercadomcbride@sustenza.com", "phone": "+1 (842) 551-2543", "address": "996 Bragg Street, Venice, Tennessee, 5088", "about": "Nulla amet ipsum consectetur anim duis minim amet laborum aliqua consectetur. Tempor laboris dolore est eiusmod nostrud. Dolor ipsum minim Lorem in aliqua minim deserunt consequat voluptate consectetur do anim occaecat quis. Dolor commodo veniam qui cupidatat laborum eiusmod. Duis non excepteur et dolor nisi id veniam in ipsum in do ea eu commodo.\r\n", "registered": "2014-07-13T04:06:58-12:00", "latitude": -49.314621, "longitude": -28.62239, "tags": [ "laborum", "pariatur", "enim", "deserunt", "consectetur", "sunt", "aliquip" ], "friends": [ { "id": 0, "name": "Selena Carey" }, { "id": 1, "name": "Mae Fry" }, { "id": 2, "name": "Luna Beasley" } ], "greeting": "Hello, Mercado Mcbride! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea234dd5703b390b6102", "index": 1868, "guid": "bbe394a6-5f2b-41ad-9e62-0b1587da6b56", "isActive": true, "balance": "$3,358.70", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Deann Gaines", "gender": "female", "company": "GRAINSPOT", "email": "deanngaines@grainspot.com", "phone": "+1 (915) 463-3591", "address": "716 Gotham Avenue, Benson, Alabama, 1240", "about": "Ut aute excepteur excepteur est cupidatat nulla consectetur nisi est commodo amet occaecat. Aliquip fugiat duis consectetur elit sunt elit quis. Irure duis amet labore esse fugiat sit elit.\r\n", "registered": "2014-09-20T03:13:20-12:00", "latitude": -26.725802, "longitude": 14.482079, "tags": [ "labore", "commodo", "in", "sunt", "ipsum", "deserunt", "veniam" ], "friends": [ { "id": 0, "name": "Nichole Warner" }, { "id": 1, "name": "Chen Henry" }, { "id": 2, "name": "Bernard Clark" } ], "greeting": "Hello, Deann Gaines! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea234355b5f2e64049f0", "index": 1869, "guid": "fdcc8424-6591-4bee-9b5b-b1859c3aac01", "isActive": false, "balance": "$2,612.84", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Barnes Baird", "gender": "male", "company": "QUALITEX", "email": "barnesbaird@qualitex.com", "phone": "+1 (877) 448-3323", "address": "259 Rockaway Parkway, Stollings, Ohio, 6785", "about": "Sit eiusmod in exercitation commodo. Enim veniam in sunt laborum eiusmod. Do ullamco ea ipsum aute nulla sit qui culpa ipsum labore commodo commodo exercitation. Nostrud incididunt aliqua excepteur id nulla nostrud consequat dolore. Ex Lorem duis aute duis amet anim Lorem dolor dolor est velit ullamco velit. Mollit consequat exercitation sunt enim consectetur nisi eu qui est ea fugiat.\r\n", "registered": "2014-03-29T07:57:30-13:00", "latitude": -40.038446, "longitude": 143.109512, "tags": [ "id", "mollit", "laborum", "labore", "eiusmod", "sit", "magna" ], "friends": [ { "id": 0, "name": "Ginger Noel" }, { "id": 1, "name": "Queen Dunlap" }, { "id": 2, "name": "June Kramer" } ], "greeting": "Hello, Barnes Baird! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23043b710c3426ab94", "index": 1870, "guid": "c3762717-4a2c-4354-b1d5-8d7200ec780f", "isActive": false, "balance": "$1,271.37", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Edna Hubbard", "gender": "female", "company": "ZBOO", "email": "ednahubbard@zboo.com", "phone": "+1 (975) 464-3493", "address": "340 Powers Street, Nettie, Hawaii, 7808", "about": "Ea consectetur do culpa sint reprehenderit cupidatat consectetur magna occaecat non irure. Esse nisi nulla pariatur ut esse do excepteur sunt anim exercitation. Minim id laboris ullamco dolor mollit nostrud id esse incididunt officia laboris magna magna consectetur. Elit mollit laborum nostrud consectetur cupidatat consectetur cupidatat enim est commodo consequat ad tempor. Officia in ut voluptate est officia id et est tempor minim. Eiusmod veniam qui aliquip et aliqua adipisicing culpa duis labore elit. Dolore dolore voluptate pariatur laborum ullamco sit est amet occaecat.\r\n", "registered": "2014-04-30T18:45:58-12:00", "latitude": -67.106069, "longitude": -135.875936, "tags": [ "irure", "ex", "voluptate", "id", "laboris", "anim", "mollit" ], "friends": [ { "id": 0, "name": "Suzette Petersen" }, { "id": 1, "name": "Glass Ford" }, { "id": 2, "name": "Wynn Buck" } ], "greeting": "Hello, Edna Hubbard! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23dba76579aad517e1", "index": 1871, "guid": "cabf362d-cccc-49e7-8d40-d0df2c22f78e", "isActive": false, "balance": "$2,262.14", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Cheri Harrington", "gender": "female", "company": "GOKO", "email": "cheriharrington@goko.com", "phone": "+1 (862) 490-3338", "address": "241 Gates Avenue, Dante, New Mexico, 8619", "about": "Occaecat excepteur labore pariatur nostrud quis ex nisi quis id ex consequat dolor. Incididunt mollit labore officia pariatur voluptate sint aliqua pariatur ut nisi Lorem id magna. Lorem enim laboris consequat culpa.\r\n", "registered": "2014-06-20T05:35:26-12:00", "latitude": 27.706553, "longitude": -117.037512, "tags": [ "pariatur", "non", "laborum", "velit", "est", "nisi", "labore" ], "friends": [ { "id": 0, "name": "Coleen Johns" }, { "id": 1, "name": "Whitney Montoya" }, { "id": 2, "name": "Delacruz Berger" } ], "greeting": "Hello, Cheri Harrington! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23f73f0b6b81b3b461", "index": 1872, "guid": "85510195-4530-4d0a-ada8-75c497cb4b8a", "isActive": true, "balance": "$1,101.42", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Margret Osborne", "gender": "female", "company": "TALKALOT", "email": "margretosborne@talkalot.com", "phone": "+1 (969) 547-3714", "address": "290 Sullivan Street, Nord, Maryland, 3394", "about": "Duis do non reprehenderit dolor fugiat. Ut est magna consectetur sit aute ex consequat do do esse excepteur ad amet. Magna exercitation sint cillum laborum aliquip sint dolor exercitation nisi consequat. Qui aute anim consectetur velit excepteur aliquip occaecat deserunt in duis pariatur tempor enim. Commodo ut minim nisi velit incididunt irure. Qui irure mollit eiusmod adipisicing.\r\n", "registered": "2014-08-16T20:05:56-12:00", "latitude": -15.20347, "longitude": -118.695435, "tags": [ "pariatur", "nostrud", "labore", "eu", "ut", "voluptate", "excepteur" ], "friends": [ { "id": 0, "name": "Gardner Mathis" }, { "id": 1, "name": "Brown Melton" }, { "id": 2, "name": "Lowe Eaton" } ], "greeting": "Hello, Margret Osborne! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea239113aee385435234", "index": 1873, "guid": "710bf28b-619a-4cc4-b923-8438ee9ccb82", "isActive": true, "balance": "$2,845.05", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Finley Mays", "gender": "male", "company": "LYRIA", "email": "finleymays@lyria.com", "phone": "+1 (937) 553-3166", "address": "918 Mersereau Court, Duryea, Alaska, 6070", "about": "Enim culpa est velit consectetur Lorem Lorem eiusmod dolore nostrud. Cillum id amet dolor incididunt nisi eiusmod. Tempor incididunt sint Lorem amet cillum aute. Commodo veniam ea non elit est in magna officia id cillum anim ad. Pariatur cillum deserunt elit pariatur labore exercitation fugiat ad consequat Lorem. Et dolor consectetur sint tempor ullamco quis ad adipisicing. Consequat sit occaecat do anim aliqua pariatur consequat ex nostrud.\r\n", "registered": "2014-09-18T09:33:23-12:00", "latitude": 62.108016, "longitude": 13.773132, "tags": [ "occaecat", "dolor", "elit", "dolor", "Lorem", "est", "Lorem" ], "friends": [ { "id": 0, "name": "Williams Gill" }, { "id": 1, "name": "Kelley Wheeler" }, { "id": 2, "name": "Myrtle Carr" } ], "greeting": "Hello, Finley Mays! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea231b56b9b7c5daabd0", "index": 1874, "guid": "a64d2089-9612-4286-9fa5-1e4c6071e5a3", "isActive": true, "balance": "$2,332.03", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Valentine Wolfe", "gender": "male", "company": "KENEGY", "email": "valentinewolfe@kenegy.com", "phone": "+1 (964) 422-3117", "address": "172 Balfour Place, Vincent, Arizona, 2857", "about": "Tempor voluptate ipsum culpa amet ipsum. Officia nisi excepteur sunt aliquip id laborum cupidatat elit qui fugiat. Duis voluptate id voluptate voluptate incididunt ut cillum adipisicing fugiat commodo dolore sunt dolor cupidatat. Amet non enim aliqua labore reprehenderit. Duis culpa ea aliquip excepteur cupidatat nostrud qui sint. Occaecat sint enim veniam excepteur nulla anim sit aliqua incididunt irure cupidatat aliqua.\r\n", "registered": "2014-02-26T23:17:07-13:00", "latitude": -82.276323, "longitude": -139.511721, "tags": [ "ut", "duis", "nisi", "exercitation", "ea", "duis", "labore" ], "friends": [ { "id": 0, "name": "Shelley Huber" }, { "id": 1, "name": "Maritza Pierce" }, { "id": 2, "name": "Mccormick Merritt" } ], "greeting": "Hello, Valentine Wolfe! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea238a0ff654df47edae", "index": 1875, "guid": "6f08c5f2-11e4-45f1-98ca-4124cfb4eb8a", "isActive": false, "balance": "$3,936.67", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Tessa Aguirre", "gender": "female", "company": "ZYTREX", "email": "tessaaguirre@zytrex.com", "phone": "+1 (829) 555-3168", "address": "131 Oriental Boulevard, Ebro, Federated States Of Micronesia, 3967", "about": "Dolore quis cupidatat culpa sit eu Lorem exercitation. Laboris ex est do non aute consequat velit voluptate id. Qui ullamco sit eiusmod ipsum cupidatat aliqua incididunt velit minim sint voluptate eu irure. Consequat et non minim fugiat minim fugiat. Anim incididunt et officia minim anim reprehenderit irure eu elit reprehenderit amet.\r\n", "registered": "2014-02-10T08:03:10-13:00", "latitude": -82.784463, "longitude": 4.535714, "tags": [ "ipsum", "aliquip", "laborum", "dolore", "proident", "minim", "enim" ], "friends": [ { "id": 0, "name": "Carrie Luna" }, { "id": 1, "name": "Potts Bowen" }, { "id": 2, "name": "Phelps Mueller" } ], "greeting": "Hello, Tessa Aguirre! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23a423bb9f5cf67973", "index": 1876, "guid": "badb6687-6570-4af1-b1ef-0f8203c2492f", "isActive": false, "balance": "$3,547.82", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Watkins Duncan", "gender": "male", "company": "ANIVET", "email": "watkinsduncan@anivet.com", "phone": "+1 (879) 517-2766", "address": "443 Schenck Street, Salunga, Oklahoma, 7539", "about": "Esse et laborum anim aliqua. Aliqua ullamco eiusmod est elit elit ex cupidatat. Deserunt mollit consequat ex amet nostrud et. Voluptate non esse labore quis aliquip cillum Lorem veniam laboris reprehenderit esse adipisicing. Ullamco ullamco velit irure elit nostrud ipsum ullamco excepteur non mollit proident exercitation laborum.\r\n", "registered": "2014-03-31T03:33:12-13:00", "latitude": -49.042091, "longitude": 149.34416, "tags": [ "ut", "aute", "amet", "aliquip", "tempor", "ut", "incididunt" ], "friends": [ { "id": 0, "name": "Bridgett Burt" }, { "id": 1, "name": "Robyn Saunders" }, { "id": 2, "name": "Walsh Caldwell" } ], "greeting": "Hello, Watkins Duncan! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea231121f7e116e4621a", "index": 1877, "guid": "cf432482-5373-4bed-947b-b955a293f873", "isActive": false, "balance": "$2,653.42", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Mildred House", "gender": "female", "company": "NETAGY", "email": "mildredhouse@netagy.com", "phone": "+1 (807) 592-3920", "address": "859 Garfield Place, Talpa, Michigan, 5477", "about": "Id sunt officia et nisi ut culpa exercitation. Est sit eu adipisicing ullamco voluptate adipisicing veniam ut exercitation tempor non aliqua. Aute laboris occaecat nulla pariatur enim non sunt non laborum deserunt excepteur. Incididunt ea veniam ipsum Lorem dolor ipsum et deserunt eiusmod. Sit ut aliqua laborum dolor laboris velit incididunt voluptate. Dolore eiusmod sunt est ipsum irure anim cupidatat. Eiusmod Lorem magna non ipsum nostrud.\r\n", "registered": "2014-04-28T04:24:56-12:00", "latitude": -19.532753, "longitude": 46.003031, "tags": [ "fugiat", "qui", "ipsum", "mollit", "veniam", "et", "exercitation" ], "friends": [ { "id": 0, "name": "Deirdre Dudley" }, { "id": 1, "name": "Dominguez Wynn" }, { "id": 2, "name": "Wilkinson Wilkinson" } ], "greeting": "Hello, Mildred House! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea234d4564194579bf67", "index": 1878, "guid": "ba2abe27-9f36-45e6-9d89-c2c926e1b6e7", "isActive": true, "balance": "$3,826.14", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Giles Bailey", "gender": "male", "company": "TERASCAPE", "email": "gilesbailey@terascape.com", "phone": "+1 (853) 403-3944", "address": "306 Ocean Court, Steinhatchee, Kansas, 5369", "about": "Nulla Lorem et ea excepteur consectetur laboris cillum officia in. Adipisicing do duis consequat do aliqua esse veniam esse. Lorem enim minim irure minim commodo eiusmod veniam tempor et laboris ullamco mollit deserunt tempor. Amet aliquip id consequat sit esse sint laboris duis voluptate officia magna aliqua amet laborum. Sint sunt deserunt id ad fugiat ad ea irure sunt sit. Do exercitation sunt sit sint officia culpa.\r\n", "registered": "2014-04-09T18:24:17-12:00", "latitude": 8.233851, "longitude": -94.042184, "tags": [ "culpa", "quis", "nostrud", "fugiat", "dolor", "occaecat", "do" ], "friends": [ { "id": 0, "name": "Fannie Barry" }, { "id": 1, "name": "May Atkins" }, { "id": 2, "name": "Rhonda Donaldson" } ], "greeting": "Hello, Giles Bailey! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23de6c73956303505c", "index": 1879, "guid": "cb19cf1d-7f39-41e9-805d-8661d4404eff", "isActive": false, "balance": "$1,834.12", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Irma Hutchinson", "gender": "female", "company": "GLOBOIL", "email": "irmahutchinson@globoil.com", "phone": "+1 (824) 514-2978", "address": "664 Perry Terrace, Mathews, South Dakota, 2466", "about": "Nulla quis sit sint consectetur adipisicing qui aliquip dolore amet irure. Esse pariatur id magna aute commodo nulla irure elit adipisicing pariatur sint. Aliqua tempor culpa incididunt ut consectetur duis fugiat qui aliquip ad id laborum nostrud est. Adipisicing nulla pariatur voluptate mollit eu ex eiusmod eu velit non voluptate elit duis ex. Nisi ipsum cupidatat labore consequat cillum laborum consectetur sit ullamco elit ullamco. Laborum ullamco do ullamco Lorem. Non cillum deserunt nostrud sunt id fugiat sunt consectetur et id dolor in.\r\n", "registered": "2014-08-02T00:59:06-12:00", "latitude": 62.267637, "longitude": 57.724509, "tags": [ "Lorem", "occaecat", "irure", "id", "quis", "excepteur", "reprehenderit" ], "friends": [ { "id": 0, "name": "Tanner Decker" }, { "id": 1, "name": "Cherry Cochran" }, { "id": 2, "name": "Angelica Mckay" } ], "greeting": "Hello, Irma Hutchinson! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea238b089cafee6a7185", "index": 1880, "guid": "f73b8f3b-1452-427a-a347-0e9e62e9ab35", "isActive": true, "balance": "$1,956.86", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Leola Simpson", "gender": "female", "company": "DIGIRANG", "email": "leolasimpson@digirang.com", "phone": "+1 (982) 429-2823", "address": "530 Farragut Road, Greenwich, West Virginia, 4784", "about": "Voluptate et consequat dolore reprehenderit incididunt laborum adipisicing officia laborum reprehenderit. Adipisicing enim qui qui Lorem incididunt eu ea fugiat velit et do irure. Magna id est velit mollit anim irure veniam elit sit nisi mollit ullamco cupidatat. Tempor reprehenderit ex cupidatat id consequat magna.\r\n", "registered": "2014-05-05T10:57:02-12:00", "latitude": 14.092478, "longitude": 178.925796, "tags": [ "in", "fugiat", "eu", "mollit", "do", "cillum", "excepteur" ], "friends": [ { "id": 0, "name": "Stacie Everett" }, { "id": 1, "name": "Alta Delgado" }, { "id": 2, "name": "Mccarthy Mcgowan" } ], "greeting": "Hello, Leola Simpson! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23cf1707f8b5e186f7", "index": 1881, "guid": "fa822659-88be-49bf-8e05-0b5e186505cd", "isActive": true, "balance": "$3,451.20", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Wilcox Fleming", "gender": "male", "company": "MACRONAUT", "email": "wilcoxfleming@macronaut.com", "phone": "+1 (865) 417-2216", "address": "559 Moore Place, Rosedale, Texas, 5584", "about": "Amet laboris non eu mollit nisi voluptate minim. Ipsum eu est sint cillum elit eiusmod ut commodo Lorem veniam aute. Nisi enim et ullamco pariatur et velit id magna dolore et. Amet consequat duis quis nulla esse incididunt ad nostrud ea reprehenderit mollit tempor aute minim. Eiusmod magna ullamco sint pariatur anim mollit sunt dolor veniam exercitation eu dolore minim nulla.\r\n", "registered": "2014-07-08T13:08:11-12:00", "latitude": -44.487399, "longitude": -68.703186, "tags": [ "aliqua", "ut", "incididunt", "culpa", "cupidatat", "fugiat", "adipisicing" ], "friends": [ { "id": 0, "name": "Sue Burton" }, { "id": 1, "name": "Terry Graves" }, { "id": 2, "name": "Pratt Potts" } ], "greeting": "Hello, Wilcox Fleming! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea235bcce3dc0a6924ae", "index": 1882, "guid": "ff8c5b42-dbb8-4504-9cf5-1ddb6bd301a5", "isActive": false, "balance": "$2,448.74", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Allie Holland", "gender": "female", "company": "EXPOSA", "email": "allieholland@exposa.com", "phone": "+1 (965) 487-2800", "address": "306 Bliss Terrace, Corriganville, Oregon, 3792", "about": "Non Lorem voluptate in cillum ad enim aute laboris sit exercitation in. Exercitation labore mollit pariatur consequat sit officia qui consequat dolor fugiat voluptate enim aliqua. Velit dolor duis qui duis officia nisi officia. Proident aliquip cillum laborum anim minim esse excepteur consequat proident magna ullamco mollit sit. Deserunt sunt ut voluptate mollit adipisicing et aliqua adipisicing tempor.\r\n", "registered": "2014-09-12T09:10:32-12:00", "latitude": -17.711744, "longitude": 47.512821, "tags": [ "consectetur", "consequat", "commodo", "ex", "elit", "officia", "eu" ], "friends": [ { "id": 0, "name": "Lambert Hewitt" }, { "id": 1, "name": "Rasmussen Porter" }, { "id": 2, "name": "Twila Callahan" } ], "greeting": "Hello, Allie Holland! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23101a6685f93c3dfc", "index": 1883, "guid": "462c86e1-2dd9-4b9f-938c-68c0a035b12c", "isActive": true, "balance": "$2,933.69", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Lancaster Christensen", "gender": "male", "company": "EXOVENT", "email": "lancasterchristensen@exovent.com", "phone": "+1 (858) 514-3534", "address": "446 Cedar Street, Snyderville, Nevada, 3217", "about": "Velit minim dolore adipisicing sunt in tempor laborum sunt Lorem Lorem cupidatat deserunt Lorem. Eu occaecat adipisicing proident irure fugiat incididunt duis eiusmod id enim et. Duis minim exercitation enim dolor non eu ea sunt fugiat adipisicing ex amet veniam cillum. Occaecat qui in labore cillum occaecat elit adipisicing occaecat laboris quis culpa.\r\n", "registered": "2014-03-25T08:44:40-13:00", "latitude": -48.648001, "longitude": 101.009622, "tags": [ "labore", "id", "duis", "aliqua", "eiusmod", "cupidatat", "Lorem" ], "friends": [ { "id": 0, "name": "Jaclyn Salazar" }, { "id": 1, "name": "Jessica Emerson" }, { "id": 2, "name": "Schmidt Velasquez" } ], "greeting": "Hello, Lancaster Christensen! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea234c432af3997dfba1", "index": 1884, "guid": "722bd4c8-669f-4fe2-8631-4f96613514e2", "isActive": false, "balance": "$3,376.95", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Reeves Chapman", "gender": "male", "company": "KROG", "email": "reeveschapman@krog.com", "phone": "+1 (840) 496-3974", "address": "264 Montauk Court, Strykersville, Minnesota, 9420", "about": "Irure Lorem dolore id consequat consequat laboris ullamco excepteur pariatur cillum cillum ex. Nulla adipisicing ea enim sunt excepteur tempor ex. Occaecat mollit minim nulla nostrud aute duis consequat sit anim sint non do commodo.\r\n", "registered": "2014-01-21T00:17:45-13:00", "latitude": -33.741102, "longitude": -118.810307, "tags": [ "tempor", "aliquip", "magna", "enim", "exercitation", "reprehenderit", "veniam" ], "friends": [ { "id": 0, "name": "Woodward Jennings" }, { "id": 1, "name": "Solis Logan" }, { "id": 2, "name": "Eugenia Sloan" } ], "greeting": "Hello, Reeves Chapman! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23f79e88a8a8ac9a5c", "index": 1885, "guid": "a381b4be-e694-4a02-89de-e7b812196c8c", "isActive": true, "balance": "$1,053.20", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Aileen Lamb", "gender": "female", "company": "FIREWAX", "email": "aileenlamb@firewax.com", "phone": "+1 (926) 506-2514", "address": "734 Banker Street, Whitestone, Missouri, 9646", "about": "In irure mollit anim do dolore eiusmod labore incididunt reprehenderit mollit nisi nulla. Magna dolor eu ea ut sint deserunt in est. In sit nulla ad ipsum anim reprehenderit tempor.\r\n", "registered": "2014-09-04T06:53:37-12:00", "latitude": 16.280339, "longitude": -54.90607, "tags": [ "ipsum", "aliqua", "incididunt", "exercitation", "ipsum", "tempor", "incididunt" ], "friends": [ { "id": 0, "name": "Gabriela Jensen" }, { "id": 1, "name": "Short Carrillo" }, { "id": 2, "name": "Castillo Mccarthy" } ], "greeting": "Hello, Aileen Lamb! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea231825e56201dd0946", "index": 1886, "guid": "c0954bba-5639-44b2-b891-fb4ac9770399", "isActive": true, "balance": "$2,173.32", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Knowles Salas", "gender": "male", "company": "SENMEI", "email": "knowlessalas@senmei.com", "phone": "+1 (829) 454-3053", "address": "816 Dare Court, Conestoga, Rhode Island, 2687", "about": "Excepteur nostrud tempor elit amet non officia labore ad deserunt sint. Anim magna eu cupidatat sunt ut ex occaecat. Aliquip consectetur sit nisi commodo Lorem reprehenderit ullamco id esse cupidatat qui.\r\n", "registered": "2014-05-08T03:51:58-12:00", "latitude": 18.511518, "longitude": 45.877701, "tags": [ "cillum", "qui", "dolor", "quis", "magna", "id", "officia" ], "friends": [ { "id": 0, "name": "Donna Castillo" }, { "id": 1, "name": "Sally Tanner" }, { "id": 2, "name": "Dianna Chase" } ], "greeting": "Hello, Knowles Salas! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23139456e02bc1830e", "index": 1887, "guid": "2f5c673a-8a2e-430a-a884-46509b0fd859", "isActive": false, "balance": "$3,146.83", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Pat Suarez", "gender": "female", "company": "ORONOKO", "email": "patsuarez@oronoko.com", "phone": "+1 (933) 578-3399", "address": "830 National Drive, Drytown, Florida, 8665", "about": "Excepteur dolor adipisicing reprehenderit sunt consectetur tempor dolor nulla in ea. Non occaecat fugiat minim consectetur culpa est veniam ut aute occaecat proident sint pariatur incididunt. Nisi sint adipisicing nisi velit elit sint aliqua deserunt tempor nisi ullamco eiusmod enim. Voluptate excepteur occaecat ex culpa veniam duis incididunt magna ullamco sit consectetur. Ex duis consectetur culpa laborum tempor labore labore ipsum occaecat occaecat sunt. Deserunt ad officia deserunt tempor duis tempor est laborum ex enim aliquip consequat. Eiusmod do ad nisi aliqua nulla nulla exercitation do id fugiat Lorem Lorem ullamco exercitation.\r\n", "registered": "2014-09-15T23:04:05-12:00", "latitude": -53.852486, "longitude": 33.357143, "tags": [ "labore", "id", "non", "tempor", "quis", "labore", "anim" ], "friends": [ { "id": 0, "name": "Whitehead Leonard" }, { "id": 1, "name": "Ina Castro" }, { "id": 2, "name": "Jefferson Burks" } ], "greeting": "Hello, Pat Suarez! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea231dcc0e859332a925", "index": 1888, "guid": "61799d48-6da0-4b7a-8dbe-ed5d36d3993c", "isActive": true, "balance": "$1,835.84", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Kathy Perry", "gender": "female", "company": "OPTICALL", "email": "kathyperry@opticall.com", "phone": "+1 (984) 408-3886", "address": "922 Hendrickson Street, Leola, North Carolina, 9381", "about": "Culpa enim occaecat laboris nostrud et proident consequat ipsum culpa minim veniam mollit veniam magna. Sunt magna culpa deserunt sit est dolore aute occaecat occaecat esse. Cupidatat velit do sunt id nisi pariatur amet nisi. Culpa amet ea labore dolor laborum.\r\n", "registered": "2014-09-08T17:51:31-12:00", "latitude": 77.729582, "longitude": -7.849418, "tags": [ "eiusmod", "aute", "ipsum", "mollit", "excepteur", "in", "amet" ], "friends": [ { "id": 0, "name": "Leta Hansen" }, { "id": 1, "name": "Abby Avery" }, { "id": 2, "name": "Paul Holman" } ], "greeting": "Hello, Kathy Perry! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea234e08d4bff46b59a0", "index": 1889, "guid": "ab436a3f-a2b0-4657-96ec-43257b803fea", "isActive": false, "balance": "$2,607.05", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Lolita Boyle", "gender": "female", "company": "UNQ", "email": "lolitaboyle@unq.com", "phone": "+1 (805) 411-3871", "address": "778 Highland Boulevard, Chalfant, New Hampshire, 7569", "about": "Occaecat duis cupidatat duis magna culpa dolor. Qui veniam exercitation esse culpa. Irure labore ex enim elit consequat non aliqua. Aliqua excepteur in elit aliqua adipisicing sunt. Elit ad duis ipsum sint pariatur ullamco laborum aliqua laborum laboris voluptate laborum magna dolor. Elit proident cillum voluptate incididunt sit excepteur amet ipsum proident labore laborum eiusmod ullamco. Do consequat eu ipsum non commodo labore Lorem.\r\n", "registered": "2014-06-07T08:55:07-12:00", "latitude": -27.917713, "longitude": -28.533476, "tags": [ "aute", "labore", "enim", "velit", "eu", "elit", "velit" ], "friends": [ { "id": 0, "name": "Elba Bauer" }, { "id": 1, "name": "Love Avila" }, { "id": 2, "name": "Bright Vazquez" } ], "greeting": "Hello, Lolita Boyle! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23250ddf517c12806a", "index": 1890, "guid": "4103de82-2c2e-48d0-a39c-f0145cf0a282", "isActive": true, "balance": "$1,442.81", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Russell Tucker", "gender": "male", "company": "PRINTSPAN", "email": "russelltucker@printspan.com", "phone": "+1 (866) 477-2693", "address": "484 Bartlett Street, Marysville, Arkansas, 960", "about": "Magna eiusmod minim ipsum id aliqua non qui ea pariatur consequat anim. Exercitation nostrud aute id minim proident velit eiusmod reprehenderit eu. Pariatur reprehenderit in laborum ut et veniam do. Commodo dolor ad consectetur nulla labore. Deserunt ut minim pariatur eiusmod consequat aliqua. Voluptate do exercitation mollit qui sit est.\r\n", "registered": "2014-01-01T04:09:37-13:00", "latitude": 56.846176, "longitude": -65.715193, "tags": [ "sit", "aliquip", "aute", "eiusmod", "culpa", "deserunt", "duis" ], "friends": [ { "id": 0, "name": "Shannon Swanson" }, { "id": 1, "name": "Maryann Miles" }, { "id": 2, "name": "Thornton Hays" } ], "greeting": "Hello, Russell Tucker! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2363400021a0b1bbf6", "index": 1891, "guid": "963b5c91-4055-4a0d-97d7-2f8d2203c155", "isActive": false, "balance": "$3,870.42", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Elsie Whitley", "gender": "female", "company": "EARWAX", "email": "elsiewhitley@earwax.com", "phone": "+1 (818) 493-3266", "address": "829 Manhattan Court, Tivoli, Iowa, 9542", "about": "Laboris consequat velit quis duis id qui eiusmod laboris quis veniam eu qui consectetur. Elit consequat adipisicing anim aute deserunt non id do minim. Sit labore ad culpa proident magna. Sint sit Lorem esse sint excepteur exercitation elit ut. Nostrud reprehenderit esse duis esse qui. Velit est non aute excepteur nisi est duis commodo aliquip.\r\n", "registered": "2014-01-29T09:29:18-13:00", "latitude": 71.706331, "longitude": 102.27827, "tags": [ "consequat", "deserunt", "incididunt", "ipsum", "Lorem", "in", "minim" ], "friends": [ { "id": 0, "name": "Kirk Stone" }, { "id": 1, "name": "Abbott Villarreal" }, { "id": 2, "name": "Terri Howe" } ], "greeting": "Hello, Elsie Whitley! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2338a0cdff153cb773", "index": 1892, "guid": "23ab29e4-8d17-4df8-a857-e57860725eb1", "isActive": false, "balance": "$3,798.15", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Janell Keith", "gender": "female", "company": "BIZMATIC", "email": "janellkeith@bizmatic.com", "phone": "+1 (900) 535-3414", "address": "169 Kingsland Avenue, Garfield, Nebraska, 3022", "about": "Officia reprehenderit veniam laborum ea eu sint officia minim anim labore. Id ut amet eu occaecat nulla elit officia ut occaecat sit aliqua dolore nulla ad. Laboris ullamco dolor ullamco culpa proident nulla amet Lorem. Non veniam aliquip eu dolor sunt do sit occaecat duis.\r\n", "registered": "2014-02-16T01:48:06-13:00", "latitude": 74.124113, "longitude": -119.646078, "tags": [ "nisi", "aliqua", "ad", "pariatur", "magna", "pariatur", "aliquip" ], "friends": [ { "id": 0, "name": "Tami Mayo" }, { "id": 1, "name": "Burch Rosales" }, { "id": 2, "name": "Raquel Mason" } ], "greeting": "Hello, Janell Keith! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2341e8ece4c94604ed", "index": 1893, "guid": "88c3c0a5-e90d-425d-975d-bf10a9e7539a", "isActive": true, "balance": "$2,562.27", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Sylvia Warren", "gender": "female", "company": "ENDICIL", "email": "sylviawarren@endicil.com", "phone": "+1 (963) 595-2111", "address": "184 Grand Avenue, Gorham, District Of Columbia, 2801", "about": "Consectetur ullamco occaecat deserunt anim culpa ipsum. Minim consequat laborum commodo culpa ullamco veniam incididunt non fugiat ex ipsum. Et ad exercitation enim officia sint laborum in id. Velit commodo quis non minim Lorem sit labore ullamco enim est ut laborum nisi.\r\n", "registered": "2014-08-13T18:41:46-12:00", "latitude": -74.203396, "longitude": 90.692041, "tags": [ "Lorem", "excepteur", "duis", "tempor", "eiusmod", "magna", "commodo" ], "friends": [ { "id": 0, "name": "Huff Barlow" }, { "id": 1, "name": "Alison Davis" }, { "id": 2, "name": "Jillian Solis" } ], "greeting": "Hello, Sylvia Warren! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea237ed4c8b8d5bdf435", "index": 1894, "guid": "f8b5c6cf-6c87-4350-a48b-274e7b55e8da", "isActive": false, "balance": "$2,661.41", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Trujillo Riggs", "gender": "male", "company": "ZOLAR", "email": "trujilloriggs@zolar.com", "phone": "+1 (954) 508-2509", "address": "704 Grand Street, Floris, New Jersey, 5929", "about": "Tempor duis dolore amet voluptate voluptate irure mollit consequat cupidatat. Adipisicing tempor consequat quis in ullamco nulla aliqua consequat Lorem consectetur et aliqua in deserunt. Excepteur voluptate tempor laborum ullamco ipsum labore commodo pariatur exercitation amet nisi cillum fugiat.\r\n", "registered": "2014-05-01T09:01:42-12:00", "latitude": 46.303416, "longitude": -166.004015, "tags": [ "est", "eiusmod", "pariatur", "ad", "do", "eiusmod", "nulla" ], "friends": [ { "id": 0, "name": "Mcfarland Matthews" }, { "id": 1, "name": "Sherrie Petty" }, { "id": 2, "name": "Naomi Marshall" } ], "greeting": "Hello, Trujillo Riggs! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2329e65fd8b044747f", "index": 1895, "guid": "d334f11c-4a3e-47ce-ad17-b1877afdc328", "isActive": true, "balance": "$2,013.23", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Strong Black", "gender": "male", "company": "GLEAMINK", "email": "strongblack@gleamink.com", "phone": "+1 (938) 428-2157", "address": "396 Henry Street, Robbins, Palau, 6315", "about": "In non ea aliquip eu cillum in. Ex magna excepteur excepteur est. Amet nisi ea qui nulla exercitation magna ea occaecat laborum in qui in cupidatat deserunt. Ullamco nulla et labore anim ea nostrud mollit Lorem exercitation. Nulla Lorem qui cupidatat Lorem non ea dolor culpa. Officia adipisicing nulla veniam cillum adipisicing nostrud nulla do irure elit commodo. Ea ipsum dolor sunt eu mollit aliqua.\r\n", "registered": "2014-07-07T03:24:29-12:00", "latitude": 16.069105, "longitude": 113.751951, "tags": [ "dolore", "et", "ex", "dolore", "eu", "ullamco", "officia" ], "friends": [ { "id": 0, "name": "Esther Sykes" }, { "id": 1, "name": "Jocelyn Becker" }, { "id": 2, "name": "Lloyd Cox" } ], "greeting": "Hello, Strong Black! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23609a30211b45dab6", "index": 1896, "guid": "84a72dc3-a224-43e5-a5a6-3031ac348c56", "isActive": true, "balance": "$3,574.22", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Cameron Murphy", "gender": "male", "company": "KANGLE", "email": "cameronmurphy@kangle.com", "phone": "+1 (813) 456-2410", "address": "142 Greenpoint Avenue, Sidman, Puerto Rico, 5126", "about": "Dolore in irure velit exercitation mollit ad enim culpa. Laboris sunt tempor labore aute enim sint occaecat ex officia sunt quis ut. Nisi sunt consequat Lorem adipisicing qui sint eu aliquip veniam sint fugiat reprehenderit sint esse. Ipsum aliqua minim nisi dolore consectetur deserunt esse et. Exercitation magna nulla et dolor aliqua reprehenderit reprehenderit. Ex dolor tempor enim enim.\r\n", "registered": "2014-01-06T19:54:15-13:00", "latitude": 47.687463, "longitude": -19.500454, "tags": [ "sunt", "ex", "eiusmod", "mollit", "deserunt", "nostrud", "et" ], "friends": [ { "id": 0, "name": "Neva Kim" }, { "id": 1, "name": "Sybil Stafford" }, { "id": 2, "name": "Hammond Daniel" } ], "greeting": "Hello, Cameron Murphy! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea230da9e2b59ebf1e7c", "index": 1897, "guid": "6f194d20-fee1-4934-b361-02ac76c4e1d6", "isActive": true, "balance": "$3,433.06", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Liz Hudson", "gender": "female", "company": "BOINK", "email": "lizhudson@boink.com", "phone": "+1 (858) 469-2531", "address": "314 Irving Street, Stagecoach, California, 5006", "about": "Officia labore ad adipisicing qui elit commodo culpa culpa duis veniam nisi ullamco excepteur. Ea aliquip eiusmod velit ipsum qui Lorem tempor aute elit aliquip dolore quis proident duis. Veniam qui cupidatat velit ipsum laborum amet sint. Ullamco est laborum magna eu magna dolore proident aute Lorem commodo. Exercitation occaecat elit laboris officia culpa deserunt velit dolor aliqua labore aliquip pariatur.\r\n", "registered": "2014-08-03T13:10:18-12:00", "latitude": 25.737782, "longitude": -70.311958, "tags": [ "nulla", "proident", "irure", "voluptate", "officia", "quis", "cupidatat" ], "friends": [ { "id": 0, "name": "Riddle Snow" }, { "id": 1, "name": "Ashley Patrick" }, { "id": 2, "name": "Liliana Padilla" } ], "greeting": "Hello, Liz Hudson! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea230a5c052532b0f910", "index": 1898, "guid": "6dd1833a-8a46-4f67-90f9-2d4454bcb165", "isActive": false, "balance": "$3,922.08", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Serrano Melendez", "gender": "male", "company": "SULFAX", "email": "serranomelendez@sulfax.com", "phone": "+1 (939) 561-2738", "address": "135 Claver Place, Hessville, Vermont, 8163", "about": "Officia ut aliqua laboris nostrud Lorem mollit occaecat id tempor cillum nostrud sit dolor laborum. Duis do voluptate nostrud Lorem officia. Sit sunt irure pariatur incididunt esse officia nostrud occaecat aute ut culpa veniam voluptate adipisicing. Lorem aliqua nulla fugiat amet pariatur duis elit quis ut pariatur mollit minim excepteur duis.\r\n", "registered": "2014-02-10T22:21:52-13:00", "latitude": -75.177759, "longitude": 27.529173, "tags": [ "non", "nulla", "sunt", "qui", "quis", "id", "nostrud" ], "friends": [ { "id": 0, "name": "Kate Vasquez" }, { "id": 1, "name": "Faith Tyler" }, { "id": 2, "name": "Pansy Mooney" } ], "greeting": "Hello, Serrano Melendez! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23f97f39d7f091406d", "index": 1899, "guid": "892f0fd0-bf78-4498-9ec5-808fb2467902", "isActive": true, "balance": "$2,842.80", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Chelsea Garrison", "gender": "female", "company": "MAINELAND", "email": "chelseagarrison@maineland.com", "phone": "+1 (833) 475-3928", "address": "492 Newkirk Placez, Belvoir, Indiana, 160", "about": "Laborum esse laboris mollit non sunt reprehenderit consectetur ullamco anim adipisicing anim culpa. Minim elit deserunt proident ea consequat elit id id cillum. Dolor et quis labore veniam dolor consectetur velit reprehenderit sint. Veniam excepteur exercitation adipisicing incididunt anim est laboris quis commodo nulla ea magna consequat. Velit pariatur est non amet esse ea officia sunt officia sint ea. Et ea nulla aliqua sunt mollit aliqua cillum labore excepteur commodo. Culpa labore id commodo reprehenderit minim Lorem ut veniam pariatur dolore occaecat dolore.\r\n", "registered": "2014-03-16T18:12:08-13:00", "latitude": 15.444179, "longitude": -34.210255, "tags": [ "consectetur", "et", "culpa", "veniam", "fugiat", "consequat", "duis" ], "friends": [ { "id": 0, "name": "Valenzuela Best" }, { "id": 1, "name": "Fletcher Mccormick" }, { "id": 2, "name": "Gilda Cross" } ], "greeting": "Hello, Chelsea Garrison! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23acad334398b39bcf", "index": 1900, "guid": "dff98a57-1802-4332-9b63-4fd59dcf85eb", "isActive": true, "balance": "$3,564.21", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Susana Albert", "gender": "female", "company": "HOMELUX", "email": "susanaalbert@homelux.com", "phone": "+1 (854) 520-2634", "address": "672 Oceanview Avenue, Grayhawk, Illinois, 7958", "about": "Cillum fugiat et amet tempor in voluptate sint adipisicing velit. Minim duis et nostrud nulla duis officia exercitation nulla in culpa. Consectetur ipsum id tempor esse nostrud. Do proident sunt consectetur laboris duis est amet est fugiat laboris voluptate magna officia. Labore nulla ipsum ipsum magna commodo occaecat dolore labore pariatur irure. Reprehenderit do esse aliqua laboris adipisicing cupidatat laborum elit sit aliquip. Fugiat cillum dolor velit labore officia commodo nostrud irure consequat proident minim aute adipisicing nulla.\r\n", "registered": "2014-09-07T01:09:02-12:00", "latitude": -14.632759, "longitude": -112.350433, "tags": [ "quis", "cillum", "exercitation", "labore", "ipsum", "veniam", "anim" ], "friends": [ { "id": 0, "name": "Sampson Newton" }, { "id": 1, "name": "Lara Kemp" }, { "id": 2, "name": "Smith Nelson" } ], "greeting": "Hello, Susana Albert! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23b5e9887aa002c471", "index": 1901, "guid": "f1b3404a-1786-40a9-9c84-5aa66a92c61b", "isActive": true, "balance": "$1,619.42", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Carlson Duke", "gender": "male", "company": "IPLAX", "email": "carlsonduke@iplax.com", "phone": "+1 (945) 487-2534", "address": "749 Brigham Street, Bonanza, South Carolina, 7535", "about": "Ullamco aliquip elit eu tempor nisi consequat non sint do fugiat voluptate cupidatat eu. Laborum Lorem anim aute culpa Lorem culpa duis duis anim nostrud. Magna proident ex sunt fugiat amet ullamco mollit pariatur aliqua mollit. Labore quis aute esse aute exercitation in dolore tempor occaecat laborum. Do et proident proident deserunt id commodo.\r\n", "registered": "2014-02-13T10:52:13-13:00", "latitude": -5.139409, "longitude": 31.447158, "tags": [ "Lorem", "duis", "sunt", "quis", "proident", "amet", "eiusmod" ], "friends": [ { "id": 0, "name": "Spencer Perez" }, { "id": 1, "name": "Freida Hoffman" }, { "id": 2, "name": "Goff Waller" } ], "greeting": "Hello, Carlson Duke! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23bff0d3a21dc90c43", "index": 1902, "guid": "9586219a-c337-41ea-b1c3-e7b3324709d2", "isActive": true, "balance": "$2,832.89", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Blevins Bowman", "gender": "male", "company": "ACUSAGE", "email": "blevinsbowman@acusage.com", "phone": "+1 (944) 568-3273", "address": "122 Grimes Road, Winston, American Samoa, 1489", "about": "Et amet sint cupidatat labore in quis sint officia et id. Reprehenderit occaecat incididunt reprehenderit minim consectetur pariatur labore nulla id. Ex amet Lorem ipsum officia minim aliqua sit.\r\n", "registered": "2014-04-18T17:24:23-12:00", "latitude": 79.472318, "longitude": -143.122135, "tags": [ "ad", "labore", "aute", "eiusmod", "cillum", "sunt", "aute" ], "friends": [ { "id": 0, "name": "George Morales" }, { "id": 1, "name": "Madge Mejia" }, { "id": 2, "name": "Malinda Hurst" } ], "greeting": "Hello, Blevins Bowman! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23e79ce65df16a8984", "index": 1903, "guid": "3c447fb9-37e2-49ac-a1f7-df7112f335e2", "isActive": false, "balance": "$3,240.03", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Becker Kennedy", "gender": "male", "company": "FILODYNE", "email": "beckerkennedy@filodyne.com", "phone": "+1 (961) 452-3963", "address": "544 Cooke Court, Clarksburg, Delaware, 9842", "about": "Adipisicing exercitation aute aute adipisicing. Exercitation eiusmod ea est excepteur nostrud duis irure voluptate do eu ad velit pariatur nisi. Ad nisi Lorem excepteur ad. Sint nostrud occaecat incididunt reprehenderit commodo. Reprehenderit nostrud aliquip est sunt dolor. Elit aliqua labore nostrud minim qui nisi fugiat.\r\n", "registered": "2014-05-21T00:36:54-12:00", "latitude": -50.854452, "longitude": 160.032961, "tags": [ "ipsum", "cillum", "amet", "laborum", "nulla", "ullamco", "non" ], "friends": [ { "id": 0, "name": "Bentley Farrell" }, { "id": 1, "name": "Hogan Doyle" }, { "id": 2, "name": "Alana Hoover" } ], "greeting": "Hello, Becker Kennedy! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea233061a3b1b0d8635a", "index": 1904, "guid": "ad2bf5f4-27b1-4083-852c-ca18a2fd3290", "isActive": true, "balance": "$3,628.42", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Ross Dalton", "gender": "male", "company": "STREZZO", "email": "rossdalton@strezzo.com", "phone": "+1 (931) 467-2771", "address": "931 Cypress Avenue, Allensworth, Pennsylvania, 170", "about": "Veniam dolor elit mollit irure exercitation reprehenderit irure cupidatat ad nisi. Nostrud do culpa sunt voluptate. Minim et et proident quis quis exercitation cillum quis anim anim enim et sint. Proident culpa veniam fugiat duis et ullamco proident velit aliquip et eu. Sunt ex dolore in Lorem culpa non magna aliquip laboris. Ullamco adipisicing eiusmod adipisicing proident fugiat magna consectetur sunt nulla aliqua. In elit aliquip cupidatat proident consectetur eiusmod minim fugiat minim.\r\n", "registered": "2014-06-21T15:02:21-12:00", "latitude": 36.257282, "longitude": -124.195977, "tags": [ "id", "cillum", "aliquip", "officia", "ut", "occaecat", "consectetur" ], "friends": [ { "id": 0, "name": "Ramona Mcdowell" }, { "id": 1, "name": "Darla Marsh" }, { "id": 2, "name": "Chris Juarez" } ], "greeting": "Hello, Ross Dalton! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2305d348fe10b0e7ba", "index": 1905, "guid": "b57c85be-0719-4d81-8945-99508ca5168a", "isActive": true, "balance": "$2,368.11", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Dejesus Dillard", "gender": "male", "company": "ZINCA", "email": "dejesusdillard@zinca.com", "phone": "+1 (821) 563-2926", "address": "768 Furman Street, Mahtowa, Georgia, 9664", "about": "Amet ipsum sunt est Lorem labore reprehenderit eu dolore quis dolore cillum irure. Aliquip sunt sunt adipisicing cupidatat irure qui dolor nostrud aliqua sint Lorem irure. Deserunt esse aliqua quis aute nostrud deserunt officia dolore tempor esse officia. Reprehenderit excepteur laborum pariatur ad magna proident tempor et cillum in incididunt qui quis quis. Aliqua nisi do cillum tempor ut ut duis eiusmod non labore esse. Occaecat qui est culpa elit voluptate proident laborum ut ut minim tempor incididunt.\r\n", "registered": "2014-08-14T10:00:44-12:00", "latitude": -72.524103, "longitude": -138.97536, "tags": [ "duis", "dolor", "tempor", "officia", "irure", "aliquip", "cupidatat" ], "friends": [ { "id": 0, "name": "Nona Lee" }, { "id": 1, "name": "Cindy Mayer" }, { "id": 2, "name": "Terry Beard" } ], "greeting": "Hello, Dejesus Dillard! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23776d25816fc1ee78", "index": 1906, "guid": "a61604ef-4b42-48b8-af9e-4d820c86292d", "isActive": false, "balance": "$1,867.10", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Mclean Randolph", "gender": "male", "company": "KENGEN", "email": "mcleanrandolph@kengen.com", "phone": "+1 (800) 516-3821", "address": "147 Sumpter Street, Comptche, North Dakota, 8412", "about": "Incididunt eiusmod duis et commodo voluptate enim aute laboris sint laboris exercitation. In eu veniam nulla aliqua sint quis et pariatur laborum nostrud. Sunt exercitation nostrud laboris eiusmod excepteur irure ea do. Officia fugiat minim sint magna aute laborum mollit in aute labore eiusmod laboris id id. Qui ex minim non esse commodo ipsum. Ut aliquip aute occaecat tempor tempor elit fugiat adipisicing culpa consectetur quis et Lorem sunt.\r\n", "registered": "2014-01-29T04:55:17-13:00", "latitude": -85.148591, "longitude": -24.290638, "tags": [ "irure", "laborum", "velit", "do", "duis", "dolor", "voluptate" ], "friends": [ { "id": 0, "name": "Gretchen Rocha" }, { "id": 1, "name": "Bishop Owen" }, { "id": 2, "name": "Loraine Justice" } ], "greeting": "Hello, Mclean Randolph! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2331794b9d61021c62", "index": 1907, "guid": "b5cd55f1-eab0-4427-ae40-1fbd73f124e6", "isActive": true, "balance": "$1,748.66", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Lucia Walters", "gender": "female", "company": "FUELTON", "email": "luciawalters@fuelton.com", "phone": "+1 (881) 509-2603", "address": "133 George Street, Crucible, Louisiana, 6670", "about": "Id officia cillum nulla ex aliqua et. Qui sunt qui deserunt laborum proident reprehenderit Lorem sit fugiat dolor dolor. Eiusmod fugiat commodo dolore occaecat dolore eiusmod dolore proident ex Lorem officia laborum sunt labore.\r\n", "registered": "2014-05-10T10:38:20-12:00", "latitude": 2.42666, "longitude": 121.445025, "tags": [ "sit", "nulla", "consectetur", "labore", "labore", "aute", "mollit" ], "friends": [ { "id": 0, "name": "Whitney Moon" }, { "id": 1, "name": "Ora Byers" }, { "id": 2, "name": "Larson Mcdaniel" } ], "greeting": "Hello, Lucia Walters! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea236bd2f6b702079907", "index": 1908, "guid": "c0e7ea7f-4e4a-418e-aeba-4b93b60b0af1", "isActive": false, "balance": "$3,454.61", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Gregory Pearson", "gender": "male", "company": "SKYBOLD", "email": "gregorypearson@skybold.com", "phone": "+1 (919) 402-2815", "address": "553 Church Avenue, Maybell, Northern Mariana Islands, 1645", "about": "Excepteur proident nisi nulla ex do velit ea aute nisi est commodo magna id. Elit officia irure nostrud consectetur qui nulla. Dolor ipsum laborum dolor deserunt est enim esse ad excepteur magna nostrud. Laboris non in ipsum ea commodo nostrud qui.\r\n", "registered": "2014-02-28T14:30:33-13:00", "latitude": 22.348877, "longitude": -153.947908, "tags": [ "esse", "magna", "ad", "amet", "sit", "labore", "sint" ], "friends": [ { "id": 0, "name": "Coleman Mcintosh" }, { "id": 1, "name": "Bowers Robertson" }, { "id": 2, "name": "Schroeder Sherman" } ], "greeting": "Hello, Gregory Pearson! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23b8b361df97c4f490", "index": 1909, "guid": "a2bc3295-36a9-4602-9e5c-b3805c28209e", "isActive": false, "balance": "$1,755.71", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Solomon Gillespie", "gender": "male", "company": "SONIQUE", "email": "solomongillespie@sonique.com", "phone": "+1 (957) 453-2120", "address": "381 Sutton Street, Dana, Colorado, 8299", "about": "Ex ea sit ad aliqua. Elit pariatur aute Lorem qui ipsum ipsum minim cillum. Anim non anim sit tempor adipisicing dolor. Proident commodo dolore labore dolore eu esse proident incididunt. Excepteur dolore ut nostrud duis irure irure laboris occaecat magna ut do sint.\r\n", "registered": "2014-03-24T10:07:11-13:00", "latitude": 41.134419, "longitude": -89.096308, "tags": [ "culpa", "ipsum", "esse", "proident", "in", "anim", "ex" ], "friends": [ { "id": 0, "name": "Bridgette Glass" }, { "id": 1, "name": "Tamera Wells" }, { "id": 2, "name": "Lillie Love" } ], "greeting": "Hello, Solomon Gillespie! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2354d3cb7753c175cd", "index": 1910, "guid": "9962a594-34da-4471-845d-7cc6555b6d86", "isActive": true, "balance": "$1,351.46", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Roy Owens", "gender": "male", "company": "EARTHPLEX", "email": "royowens@earthplex.com", "phone": "+1 (904) 412-3564", "address": "472 Cadman Plaza, Chemung, Idaho, 9987", "about": "Nostrud minim cupidatat ullamco dolore consequat qui anim aliqua velit mollit pariatur aliqua. Enim anim anim amet nulla dolore labore Lorem et anim. Labore esse dolore nostrud proident enim eu elit veniam aliqua Lorem velit id tempor.\r\n", "registered": "2014-08-05T14:38:01-12:00", "latitude": -32.102494, "longitude": 19.928015, "tags": [ "sit", "magna", "ipsum", "ipsum", "in", "ipsum", "consequat" ], "friends": [ { "id": 0, "name": "Allen Levy" }, { "id": 1, "name": "Maynard Dillon" }, { "id": 2, "name": "Dean Williamson" } ], "greeting": "Hello, Roy Owens! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea231313f2390c2516aa", "index": 1911, "guid": "5aedc779-5952-4b78-8176-2737149e49cb", "isActive": false, "balance": "$3,946.64", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Cristina Ware", "gender": "female", "company": "TELEQUIET", "email": "cristinaware@telequiet.com", "phone": "+1 (865) 569-3532", "address": "108 Newkirk Avenue, Winesburg, Marshall Islands, 5978", "about": "Id sint ipsum consectetur dolore incididunt dolore qui officia aliqua dolor dolor. In est non eiusmod in Lorem proident Lorem. Magna aliqua esse consequat esse esse irure laboris minim esse velit occaecat cillum.\r\n", "registered": "2014-01-31T16:11:19-13:00", "latitude": 20.865531, "longitude": -7.855623, "tags": [ "mollit", "irure", "aliquip", "do", "incididunt", "commodo", "ullamco" ], "friends": [ { "id": 0, "name": "Harmon Alston" }, { "id": 1, "name": "Michael Nieves" }, { "id": 2, "name": "Franco Deleon" } ], "greeting": "Hello, Cristina Ware! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23f85525dbd82d509e", "index": 1912, "guid": "1132ba43-9e94-4c74-a8b1-f686746f43ba", "isActive": false, "balance": "$2,177.80", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Madden Parrish", "gender": "male", "company": "ROUGHIES", "email": "maddenparrish@roughies.com", "phone": "+1 (905) 528-3734", "address": "686 Dekalb Avenue, Efland, New York, 4388", "about": "Est ad sit duis sint elit est ex sunt magna nulla consectetur sunt. Magna enim quis enim aliqua officia sunt reprehenderit laboris dolore. Exercitation irure aute occaecat nulla id ullamco sunt in. Est cupidatat proident anim nulla.\r\n", "registered": "2014-03-15T06:51:59-13:00", "latitude": -49.742484, "longitude": 107.322814, "tags": [ "ut", "aute", "et", "reprehenderit", "non", "velit", "proident" ], "friends": [ { "id": 0, "name": "Minnie Farley" }, { "id": 1, "name": "Gross Pugh" }, { "id": 2, "name": "Rush Barber" } ], "greeting": "Hello, Madden Parrish! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23d94d1f138ebdc130", "index": 1913, "guid": "3303d5d9-28f4-4a2c-b8a5-97d7f69f0a9f", "isActive": false, "balance": "$3,855.24", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Drake Hayes", "gender": "male", "company": "MEMORA", "email": "drakehayes@memora.com", "phone": "+1 (890) 598-3662", "address": "544 Vermont Street, Bedias, Guam, 8390", "about": "In adipisicing excepteur tempor occaecat Lorem ad eiusmod est irure est reprehenderit sunt. Pariatur ut enim exercitation cillum consequat. Incididunt adipisicing ullamco sint ut irure adipisicing dolor consectetur proident. Nisi magna do aliquip aliqua sit et minim eu. Enim et aute minim laboris occaecat aute.\r\n", "registered": "2014-03-21T18:56:05-13:00", "latitude": -39.232299, "longitude": 30.599459, "tags": [ "Lorem", "do", "nostrud", "exercitation", "voluptate", "ullamco", "fugiat" ], "friends": [ { "id": 0, "name": "Sheree Pennington" }, { "id": 1, "name": "Adriana May" }, { "id": 2, "name": "Serena Hyde" } ], "greeting": "Hello, Drake Hayes! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23062d542ffc4c0d53", "index": 1914, "guid": "55f2b4de-68e1-4c94-a0d8-174994580a32", "isActive": false, "balance": "$2,273.70", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Lane Nunez", "gender": "male", "company": "SLUMBERIA", "email": "lanenunez@slumberia.com", "phone": "+1 (817) 413-2701", "address": "745 Montieth Street, Morgandale, Virgin Islands, 3058", "about": "Ea sunt non adipisicing irure velit consectetur ad. Anim quis dolore dolore reprehenderit. Ad pariatur dolor veniam commodo. Consectetur consectetur occaecat minim anim ut dolore amet incididunt anim consequat aute. Ad quis id consectetur do reprehenderit aliquip amet.\r\n", "registered": "2014-08-20T06:17:29-12:00", "latitude": -83.46911, "longitude": -177.466216, "tags": [ "ipsum", "ad", "sint", "labore", "tempor", "reprehenderit", "aute" ], "friends": [ { "id": 0, "name": "Erma Hodge" }, { "id": 1, "name": "Aline Dominguez" }, { "id": 2, "name": "Eddie Mitchell" } ], "greeting": "Hello, Lane Nunez! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23b62ef72f71acc46b", "index": 1915, "guid": "e21ab6e3-6cff-4f32-9d9d-3d5f043076fe", "isActive": false, "balance": "$3,533.83", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Clemons Rogers", "gender": "male", "company": "BESTO", "email": "clemonsrogers@besto.com", "phone": "+1 (852) 483-2629", "address": "413 Coleridge Street, Cetronia, Massachusetts, 4407", "about": "Excepteur laboris culpa nisi id nulla cupidatat proident tempor magna sit ut esse excepteur minim. Pariatur pariatur Lorem officia non laborum sint elit cupidatat id sunt laboris sint minim. Et velit proident ad adipisicing. Dolore excepteur esse cillum ipsum eiusmod ea.\r\n", "registered": "2014-03-07T16:13:58-13:00", "latitude": 44.80485, "longitude": 87.698054, "tags": [ "reprehenderit", "cillum", "quis", "nisi", "nisi", "incididunt", "pariatur" ], "friends": [ { "id": 0, "name": "Levy Odom" }, { "id": 1, "name": "Yang Brock" }, { "id": 2, "name": "Judy Dixon" } ], "greeting": "Hello, Clemons Rogers! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea230ee6ebae25715af3", "index": 1916, "guid": "e84517be-cb65-4e43-8d1c-3229062ddda0", "isActive": false, "balance": "$3,049.99", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Keith Barnes", "gender": "male", "company": "DOGTOWN", "email": "keithbarnes@dogtown.com", "phone": "+1 (983) 454-2357", "address": "988 Nautilus Avenue, Galesville, Utah, 7439", "about": "Sint sint fugiat do enim. Nulla enim laboris sint aliquip cillum sunt et in magna aute veniam esse nulla quis. Pariatur in cupidatat in non cupidatat elit laboris pariatur est aute culpa consequat et ad. Pariatur quis esse dolore cupidatat. Fugiat ad ex eu dolor laboris do aliqua nulla officia elit et dolore. Dolor ex id enim aliqua. Cupidatat laborum sint fugiat adipisicing.\r\n", "registered": "2014-04-16T15:20:11-12:00", "latitude": -70.258807, "longitude": -173.544939, "tags": [ "minim", "veniam", "ut", "nisi", "esse", "cupidatat", "ullamco" ], "friends": [ { "id": 0, "name": "Myra Massey" }, { "id": 1, "name": "Katie Morton" }, { "id": 2, "name": "Hodge Landry" } ], "greeting": "Hello, Keith Barnes! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea230bb78d2c4a1f6fde", "index": 1917, "guid": "ec640188-d111-43e8-8436-4d0a855c8444", "isActive": false, "balance": "$2,809.75", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Imogene Garcia", "gender": "female", "company": "QNEKT", "email": "imogenegarcia@qnekt.com", "phone": "+1 (962) 421-3660", "address": "982 Kenilworth Place, Spelter, Montana, 2771", "about": "Eiusmod ea eiusmod proident mollit deserunt enim occaecat anim aliqua cillum mollit laboris. Sint veniam incididunt non magna incididunt nostrud enim. Nisi sint mollit proident eiusmod officia Lorem.\r\n", "registered": "2014-06-24T22:36:15-12:00", "latitude": -1.504962, "longitude": 139.737191, "tags": [ "esse", "cupidatat", "est", "do", "esse", "ut", "irure" ], "friends": [ { "id": 0, "name": "Booker Bowers" }, { "id": 1, "name": "Duffy Whitaker" }, { "id": 2, "name": "Bettye Gordon" } ], "greeting": "Hello, Imogene Garcia! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea230957bb384ed6884a", "index": 1918, "guid": "467b5db1-54d5-425e-8ea9-ea26fd475bf6", "isActive": false, "balance": "$3,779.27", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Velazquez Downs", "gender": "male", "company": "SAVVY", "email": "velazquezdowns@savvy.com", "phone": "+1 (886) 589-2042", "address": "637 Hawthorne Street, Floriston, Wisconsin, 2461", "about": "Id sit enim enim dolor dolor minim aute in consequat sint ea ipsum esse. Proident sit duis aliquip qui proident tempor commodo consequat aliqua aute eu qui dolore magna. Ea aliqua ut do officia. Pariatur consectetur consectetur aliquip magna laborum cupidatat aute non in. Consequat proident adipisicing adipisicing excepteur nostrud aliqua ullamco sit dolor ex qui. Irure tempor mollit ut ea anim enim adipisicing officia aute.\r\n", "registered": "2014-09-16T09:11:31-12:00", "latitude": -72.296231, "longitude": -75.263524, "tags": [ "anim", "laborum", "quis", "ipsum", "sit", "aliqua", "fugiat" ], "friends": [ { "id": 0, "name": "Golden Rose" }, { "id": 1, "name": "Diaz Blackwell" }, { "id": 2, "name": "Audra Steele" } ], "greeting": "Hello, Velazquez Downs! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23ed658677cbb583fe", "index": 1919, "guid": "5b05c93e-3a5e-4399-99ca-a4cdd0c9ec08", "isActive": true, "balance": "$3,996.49", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Vargas Dorsey", "gender": "male", "company": "ATOMICA", "email": "vargasdorsey@atomica.com", "phone": "+1 (878) 552-2522", "address": "985 Railroad Avenue, Allendale, Maine, 8667", "about": "Commodo amet elit cillum labore mollit. Consequat laborum eu proident mollit ut exercitation aliquip nisi ut ipsum in. Velit nostrud sint exercitation sint eiusmod officia excepteur aute fugiat veniam Lorem veniam. Ullamco est in mollit aute ea nisi ut eu aute deserunt nulla magna consequat occaecat.\r\n", "registered": "2014-07-10T17:45:00-12:00", "latitude": -71.828526, "longitude": 143.576753, "tags": [ "consectetur", "in", "est", "pariatur", "velit", "veniam", "esse" ], "friends": [ { "id": 0, "name": "Evangeline Burch" }, { "id": 1, "name": "Casandra Miller" }, { "id": 2, "name": "Irwin Gross" } ], "greeting": "Hello, Vargas Dorsey! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23978c4a991e1f2e58", "index": 1920, "guid": "f4a91c90-4887-4d80-b2fc-93816bca5e2a", "isActive": true, "balance": "$1,531.33", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Bonita Rowe", "gender": "female", "company": "MINGA", "email": "bonitarowe@minga.com", "phone": "+1 (935) 473-3622", "address": "258 Lacon Court, Woodlake, Virginia, 7593", "about": "Duis ullamco incididunt cillum incididunt nulla aliquip fugiat qui ex ullamco anim excepteur proident aute. Quis et in excepteur cillum adipisicing laborum aliqua nisi aliqua. Consectetur laborum velit ad eu esse cillum. In nulla quis sit laboris incididunt qui incididunt labore duis tempor. Reprehenderit fugiat nisi id ea aute in ad dolore et laboris amet cupidatat velit.\r\n", "registered": "2014-09-16T15:51:27-12:00", "latitude": 13.434323, "longitude": -0.377106, "tags": [ "ex", "sint", "duis", "eiusmod", "tempor", "ullamco", "aliqua" ], "friends": [ { "id": 0, "name": "Harrington Fitzgerald" }, { "id": 1, "name": "Ramirez Burris" }, { "id": 2, "name": "Denise Case" } ], "greeting": "Hello, Bonita Rowe! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23885e02a3c3245a6f", "index": 1921, "guid": "dd290d58-6fba-415c-a1cc-f31a8ab688f6", "isActive": true, "balance": "$1,529.86", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Roth Hines", "gender": "male", "company": "MUSIX", "email": "rothhines@musix.com", "phone": "+1 (827) 491-2862", "address": "746 Fillmore Place, Urie, Kentucky, 6413", "about": "Veniam reprehenderit do ullamco eiusmod. Lorem dolor ad cillum reprehenderit culpa aliquip sunt qui dolor quis nulla ullamco. Aliquip dolor excepteur velit laborum cupidatat duis eiusmod velit cupidatat. Sunt irure tempor officia ullamco tempor id mollit mollit. Sint incididunt dolore eiusmod veniam ex.\r\n", "registered": "2014-09-14T06:25:37-12:00", "latitude": 75.454156, "longitude": 42.424326, "tags": [ "aute", "culpa", "aute", "cillum", "aute", "mollit", "in" ], "friends": [ { "id": 0, "name": "Cannon Contreras" }, { "id": 1, "name": "Consuelo Chen" }, { "id": 2, "name": "Joyner Bean" } ], "greeting": "Hello, Roth Hines! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23a1ceb68d9df55dc1", "index": 1922, "guid": "b07af28b-f112-4ed6-9506-8107617e606b", "isActive": false, "balance": "$2,776.29", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Nieves Burns", "gender": "male", "company": "GEEKOLOGY", "email": "nievesburns@geekology.com", "phone": "+1 (952) 416-2854", "address": "874 Heyward Street, Golconda, Connecticut, 3963", "about": "Ullamco non est proident consequat. Quis aute culpa commodo id fugiat laboris minim commodo laborum dolor pariatur et deserunt do. Pariatur id duis dolore dolor id nulla ullamco.\r\n", "registered": "2014-07-18T11:12:12-12:00", "latitude": 16.282046, "longitude": 27.401882, "tags": [ "excepteur", "proident", "adipisicing", "consequat", "aliqua", "irure", "consequat" ], "friends": [ { "id": 0, "name": "Arline Bruce" }, { "id": 1, "name": "Enid Gilliam" }, { "id": 2, "name": "Collier Weiss" } ], "greeting": "Hello, Nieves Burns! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea234eb1baaa28bc325a", "index": 1923, "guid": "1808efd1-4aa2-4235-90c7-f9d3e7d23149", "isActive": true, "balance": "$3,135.90", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Diana Sharp", "gender": "female", "company": "ECRATIC", "email": "dianasharp@ecratic.com", "phone": "+1 (825) 523-3648", "address": "970 Seigel Court, Knowlton, Mississippi, 1900", "about": "Cillum id in minim commodo culpa excepteur enim elit ut incididunt. Mollit mollit et culpa excepteur in qui. Minim id fugiat dolor do enim anim consequat irure veniam est elit. Aliquip ex ea proident quis culpa nulla aute in tempor nulla. Elit sunt anim eiusmod excepteur ullamco ad do consectetur esse est consectetur magna mollit.\r\n", "registered": "2014-08-27T17:47:55-12:00", "latitude": 23.684112, "longitude": -162.477952, "tags": [ "enim", "tempor", "quis", "sint", "ea", "elit", "ea" ], "friends": [ { "id": 0, "name": "Herrera Rivera" }, { "id": 1, "name": "Pitts Hobbs" }, { "id": 2, "name": "Dennis Parker" } ], "greeting": "Hello, Diana Sharp! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2336b71355132b3d97", "index": 1924, "guid": "986c62a4-08d8-43d7-a993-0b3506345e97", "isActive": false, "balance": "$2,006.35", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Hardin West", "gender": "male", "company": "SECURIA", "email": "hardinwest@securia.com", "phone": "+1 (856) 530-2045", "address": "605 Hicks Street, Southmont, Washington, 7933", "about": "Et amet est est aute do. Minim amet cillum anim cupidatat magna sit. Officia commodo amet enim Lorem Lorem aliquip ex sit voluptate voluptate ad mollit incididunt. Ex irure magna dolore dolor in non amet.\r\n", "registered": "2014-04-22T09:36:35-12:00", "latitude": -30.61009, "longitude": -134.960802, "tags": [ "consequat", "quis", "consequat", "ipsum", "veniam", "Lorem", "sunt" ], "friends": [ { "id": 0, "name": "Vera Peck" }, { "id": 1, "name": "Corine Hogan" }, { "id": 2, "name": "Willis Coffey" } ], "greeting": "Hello, Hardin West! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea238e88cc64f18a97da", "index": 1925, "guid": "931aac9e-4d64-424b-b187-a4a732e8f8ca", "isActive": false, "balance": "$3,244.69", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Rocha Snider", "gender": "male", "company": "OCEANICA", "email": "rochasnider@oceanica.com", "phone": "+1 (984) 437-3887", "address": "299 Kimball Street, Hegins, Tennessee, 6443", "about": "Incididunt exercitation ut est et. Aliqua officia duis sit officia amet laborum magna. Id cupidatat voluptate ea eu. Fugiat mollit dolore qui enim incididunt incididunt adipisicing dolor in ea ad. Reprehenderit Lorem proident excepteur dolor dolore tempor officia laboris est officia cillum irure exercitation. Cillum velit ullamco in incididunt sunt excepteur nisi consequat aliqua nostrud esse amet.\r\n", "registered": "2014-07-30T15:29:41-12:00", "latitude": 79.236201, "longitude": 3.74754, "tags": [ "ullamco", "ipsum", "proident", "eiusmod", "aliquip", "ea", "veniam" ], "friends": [ { "id": 0, "name": "Robinson Flores" }, { "id": 1, "name": "Ola Harrell" }, { "id": 2, "name": "Crawford Henson" } ], "greeting": "Hello, Rocha Snider! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea232a1810b00d125045", "index": 1926, "guid": "45b93b0c-be44-479a-8665-f3c458255921", "isActive": true, "balance": "$3,817.55", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Barlow Booth", "gender": "male", "company": "FLEXIGEN", "email": "barlowbooth@flexigen.com", "phone": "+1 (921) 517-3763", "address": "861 Fayette Street, Vernon, Alabama, 4468", "about": "Quis deserunt est pariatur cillum ea ex anim aliquip. Mollit et sint dolore irure. Ex ea eu reprehenderit excepteur voluptate laboris excepteur esse non ullamco. Dolor excepteur Lorem velit ex qui cillum. Velit ullamco aute dolor amet irure est irure id deserunt. Esse cupidatat cillum veniam eu irure. Id magna consequat et velit nisi enim nostrud duis aliquip ex.\r\n", "registered": "2014-09-10T07:36:42-12:00", "latitude": -77.587871, "longitude": -82.863561, "tags": [ "exercitation", "ex", "anim", "officia", "proident", "eiusmod", "enim" ], "friends": [ { "id": 0, "name": "Fitzpatrick Willis" }, { "id": 1, "name": "Adrian Carpenter" }, { "id": 2, "name": "Tasha Pena" } ], "greeting": "Hello, Barlow Booth! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23bc86079aabfb9c94", "index": 1927, "guid": "5c766a1f-6828-4b75-aa83-f8cab457527b", "isActive": false, "balance": "$3,982.00", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Melva Washington", "gender": "female", "company": "BOLAX", "email": "melvawashington@bolax.com", "phone": "+1 (976) 473-3135", "address": "959 Malbone Street, Jennings, Ohio, 7458", "about": "Incididunt tempor aliqua non quis proident tempor qui sunt tempor mollit esse veniam reprehenderit. Dolore laboris duis mollit sunt officia proident nisi Lorem velit cillum nulla nostrud adipisicing adipisicing. Proident non consectetur duis pariatur in pariatur ut anim ad nulla.\r\n", "registered": "2014-01-24T16:29:57-13:00", "latitude": -73.322279, "longitude": -164.412231, "tags": [ "aliquip", "dolore", "aliquip", "ad", "do", "consequat", "eiusmod" ], "friends": [ { "id": 0, "name": "Goldie Potter" }, { "id": 1, "name": "Danielle Gates" }, { "id": 2, "name": "Cruz Hopkins" } ], "greeting": "Hello, Melva Washington! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23562b67f4f8e452ef", "index": 1928, "guid": "f6c4b71d-e3c4-45df-9411-ff0b84f20a99", "isActive": false, "balance": "$2,691.20", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Della Gilbert", "gender": "female", "company": "LOCAZONE", "email": "dellagilbert@locazone.com", "phone": "+1 (927) 547-2861", "address": "211 Varet Street, Outlook, Hawaii, 4168", "about": "Cillum cupidatat sit velit reprehenderit. In laboris duis enim voluptate. Anim ullamco excepteur labore nulla reprehenderit ullamco cillum commodo laborum eiusmod ipsum. Duis minim ullamco cillum ut aliqua adipisicing.\r\n", "registered": "2014-02-11T21:45:43-13:00", "latitude": 77.1221, "longitude": 50.012931, "tags": [ "consequat", "sint", "nostrud", "cillum", "sit", "officia", "eu" ], "friends": [ { "id": 0, "name": "Callahan Walls" }, { "id": 1, "name": "Louise Franklin" }, { "id": 2, "name": "Janna Reed" } ], "greeting": "Hello, Della Gilbert! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23dd0d28b9a9bda3de", "index": 1929, "guid": "a25e4924-5c2f-40d2-beb9-302d9bd7df72", "isActive": false, "balance": "$1,578.75", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Bernadine Odonnell", "gender": "female", "company": "ZOLAREX", "email": "bernadineodonnell@zolarex.com", "phone": "+1 (839) 586-3321", "address": "970 Meadow Street, Winfred, New Mexico, 1927", "about": "Est id est labore mollit et veniam cupidatat ea aute dolore excepteur nulla consectetur ut. Ipsum mollit esse Lorem et officia tempor. Ea et adipisicing minim eiusmod qui. Do non consectetur fugiat dolor. Excepteur aliquip nisi consectetur enim qui. Cillum occaecat enim aliqua magna elit minim ea consectetur excepteur velit laboris in.\r\n", "registered": "2014-01-04T07:15:55-13:00", "latitude": -71.337257, "longitude": -60.217381, "tags": [ "pariatur", "ut", "adipisicing", "anim", "duis", "culpa", "esse" ], "friends": [ { "id": 0, "name": "Fay Chang" }, { "id": 1, "name": "Carissa Snyder" }, { "id": 2, "name": "Brandie Elliott" } ], "greeting": "Hello, Bernadine Odonnell! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23526d3e0401acc7d7", "index": 1930, "guid": "6e96f0c6-7ae0-4dcf-adef-146b4e53129e", "isActive": false, "balance": "$1,665.21", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Cecelia Neal", "gender": "female", "company": "DAYCORE", "email": "cecelianeal@daycore.com", "phone": "+1 (816) 488-3465", "address": "286 Duryea Court, Fairlee, Maryland, 5694", "about": "Sint eiusmod fugiat non mollit. Sint eiusmod do deserunt cillum velit excepteur deserunt consequat elit minim consequat mollit tempor officia. Ipsum consequat aliqua qui eu ex ea id et aute non velit velit. Laborum Lorem officia pariatur eiusmod pariatur sint.\r\n", "registered": "2014-04-22T08:46:05-12:00", "latitude": -32.150842, "longitude": 73.765443, "tags": [ "magna", "consectetur", "officia", "dolore", "aute", "elit", "ullamco" ], "friends": [ { "id": 0, "name": "Lidia Boone" }, { "id": 1, "name": "Meredith Valencia" }, { "id": 2, "name": "Rhea Robinson" } ], "greeting": "Hello, Cecelia Neal! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23f11732d90a5c97d2", "index": 1931, "guid": "8743a15c-720f-4abf-87e4-e25db905f22b", "isActive": false, "balance": "$3,013.87", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Ortega Macdonald", "gender": "male", "company": "SONGLINES", "email": "ortegamacdonald@songlines.com", "phone": "+1 (863) 568-3772", "address": "503 Garden Street, Tonopah, Alaska, 1672", "about": "Ipsum ullamco ad deserunt non qui nisi reprehenderit nostrud quis dolore. Aliqua elit amet laboris labore irure Lorem incididunt non deserunt. Ex eiusmod eu veniam Lorem incididunt fugiat excepteur cupidatat fugiat proident tempor ad laboris ullamco. Ad officia id consequat deserunt ad dolore commodo. Deserunt ullamco tempor adipisicing ut eiusmod esse minim excepteur adipisicing elit ullamco cupidatat reprehenderit est.\r\n", "registered": "2014-08-13T08:41:17-12:00", "latitude": 11.45239, "longitude": -125.231451, "tags": [ "adipisicing", "pariatur", "consectetur", "duis", "velit", "sunt", "nulla" ], "friends": [ { "id": 0, "name": "Becky Santiago" }, { "id": 1, "name": "Stacy Bartlett" }, { "id": 2, "name": "Stout Weeks" } ], "greeting": "Hello, Ortega Macdonald! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2301c5c931c68a4880", "index": 1932, "guid": "f3f0f63e-db01-46dd-81c0-b45d45a37a1c", "isActive": false, "balance": "$3,357.01", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Boyd Lott", "gender": "male", "company": "KONGLE", "email": "boydlott@kongle.com", "phone": "+1 (871) 596-2329", "address": "595 Matthews Court, Adamstown, Arizona, 8671", "about": "Magna ullamco tempor ad veniam aute in consequat sint ipsum nisi aute tempor. Voluptate commodo nulla exercitation enim officia laboris id. Exercitation laboris pariatur ad id. Consequat tempor proident sit ad.\r\n", "registered": "2014-07-11T12:16:08-12:00", "latitude": -62.85004, "longitude": -145.446876, "tags": [ "reprehenderit", "ad", "nostrud", "sunt", "irure", "consectetur", "dolor" ], "friends": [ { "id": 0, "name": "Gwen Oconnor" }, { "id": 1, "name": "Polly Dejesus" }, { "id": 2, "name": "Stefanie Cline" } ], "greeting": "Hello, Boyd Lott! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2386869514ca85faa2", "index": 1933, "guid": "65c9b906-31c2-4786-bda8-d4dae3487007", "isActive": false, "balance": "$1,568.87", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Bethany Larson", "gender": "female", "company": "KONGENE", "email": "bethanylarson@kongene.com", "phone": "+1 (860) 496-3011", "address": "966 Vermont Court, Coyote, Federated States Of Micronesia, 4225", "about": "Cupidatat adipisicing esse nisi Lorem. Cillum velit eiusmod dolor reprehenderit mollit in magna deserunt aute magna duis. Nostrud esse elit amet proident culpa. Culpa nostrud laboris eu commodo laborum sunt aliqua ut nostrud amet sint irure tempor consequat. Anim ea eu eiusmod ex laboris do cupidatat ipsum id enim qui eiusmod proident.\r\n", "registered": "2014-03-24T22:45:16-13:00", "latitude": 82.915477, "longitude": 79.739582, "tags": [ "consequat", "proident", "aliqua", "non", "occaecat", "nostrud", "nostrud" ], "friends": [ { "id": 0, "name": "Dickerson Velazquez" }, { "id": 1, "name": "Elma Newman" }, { "id": 2, "name": "Valdez Dyer" } ], "greeting": "Hello, Bethany Larson! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23708fd635a31fb7b9", "index": 1934, "guid": "bc218a34-c199-4eb8-b53b-1292a86940d5", "isActive": true, "balance": "$3,852.71", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Stanley Blair", "gender": "male", "company": "FREAKIN", "email": "stanleyblair@freakin.com", "phone": "+1 (899) 429-3831", "address": "213 Langham Street, Gorst, Oklahoma, 2991", "about": "Consectetur ut consequat cupidatat elit veniam consectetur sunt exercitation cillum velit. Consequat cupidatat qui nulla velit exercitation nisi ullamco cupidatat ullamco officia occaecat minim. Est deserunt mollit ipsum ullamco consectetur magna. Est occaecat cupidatat velit occaecat commodo sunt non deserunt ipsum eiusmod ipsum eiusmod proident. Quis deserunt incididunt consectetur tempor velit sint ullamco elit aute eu irure. Adipisicing pariatur amet eiusmod Lorem sit voluptate aute ullamco. Minim officia ut sunt nisi amet qui ullamco ex ipsum mollit eiusmod id.\r\n", "registered": "2014-01-08T09:18:31-13:00", "latitude": -62.487271, "longitude": 175.063456, "tags": [ "est", "dolore", "Lorem", "adipisicing", "enim", "dolor", "magna" ], "friends": [ { "id": 0, "name": "Forbes Keller" }, { "id": 1, "name": "Sabrina Hampton" }, { "id": 2, "name": "Lila Hernandez" } ], "greeting": "Hello, Stanley Blair! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea233b126be26f260ce5", "index": 1935, "guid": "5853186d-f2b9-4f2d-8413-3ad50c3b6acf", "isActive": true, "balance": "$1,685.54", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Joan Nguyen", "gender": "female", "company": "GEOFORM", "email": "joannguyen@geoform.com", "phone": "+1 (818) 454-3083", "address": "330 Coleman Street, Watrous, Michigan, 1322", "about": "Amet Lorem ullamco velit eu. Laboris qui tempor eiusmod cupidatat irure tempor velit exercitation deserunt anim ullamco in non nostrud. Do consequat exercitation sint officia nostrud proident.\r\n", "registered": "2014-03-10T13:17:50-13:00", "latitude": 64.16234, "longitude": 142.967337, "tags": [ "eu", "eu", "anim", "ipsum", "nisi", "aliquip", "ut" ], "friends": [ { "id": 0, "name": "Elisa Ingram" }, { "id": 1, "name": "Letitia Maldonado" }, { "id": 2, "name": "Berry Guthrie" } ], "greeting": "Hello, Joan Nguyen! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23049fb4a8a04a377f", "index": 1936, "guid": "9a4e28ed-c0c5-4ab5-9c01-b50385dafb8c", "isActive": false, "balance": "$1,155.45", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Alisha Fletcher", "gender": "female", "company": "PROSURE", "email": "alishafletcher@prosure.com", "phone": "+1 (838) 544-2204", "address": "742 Newel Street, Catherine, Kansas, 5284", "about": "Tempor irure ipsum et anim reprehenderit sit exercitation aliqua amet. Amet eiusmod irure do nulla ipsum amet duis excepteur pariatur ex. Nisi proident sunt duis velit eiusmod est. Sint laboris sit ea aliqua sint id id in. Aliquip aliquip deserunt sunt aliquip nostrud.\r\n", "registered": "2014-09-12T18:27:02-12:00", "latitude": 60.856767, "longitude": 60.303056, "tags": [ "est", "Lorem", "qui", "cillum", "ea", "officia", "amet" ], "friends": [ { "id": 0, "name": "Joyce Jarvis" }, { "id": 1, "name": "Louisa Hinton" }, { "id": 2, "name": "Hancock Battle" } ], "greeting": "Hello, Alisha Fletcher! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23fd3f0d22b45200dd", "index": 1937, "guid": "e005b6de-ff7d-4866-a5e3-67e6ef08d38c", "isActive": false, "balance": "$2,874.02", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Caldwell Allen", "gender": "male", "company": "BEDLAM", "email": "caldwellallen@bedlam.com", "phone": "+1 (990) 416-3230", "address": "601 McKinley Avenue, Glenville, South Dakota, 8390", "about": "Tempor ea excepteur laboris excepteur dolore aliquip. In ullamco anim quis aliquip mollit sit nisi. In tempor aliquip in dolore sit cupidatat aliqua laboris elit. Pariatur ullamco ullamco adipisicing anim veniam magna commodo laborum eiusmod nisi anim eiusmod quis. Irure magna commodo cillum cillum quis commodo. Non deserunt aliqua adipisicing ut laborum dolore consectetur reprehenderit voluptate nostrud sunt nostrud pariatur cillum.\r\n", "registered": "2014-07-25T00:37:10-12:00", "latitude": 0.07146, "longitude": 167.265602, "tags": [ "ipsum", "ipsum", "quis", "anim", "magna", "excepteur", "dolore" ], "friends": [ { "id": 0, "name": "Blanche Barrett" }, { "id": 1, "name": "Cassie Rojas" }, { "id": 2, "name": "Knapp Dotson" } ], "greeting": "Hello, Caldwell Allen! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea239fe661410bae7651", "index": 1938, "guid": "e66832cb-2498-45ac-aa24-16f6d224cac8", "isActive": true, "balance": "$3,100.94", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Sherry Spence", "gender": "female", "company": "GEEKKO", "email": "sherryspence@geekko.com", "phone": "+1 (983) 533-2057", "address": "349 Pineapple Street, Devon, West Virginia, 9405", "about": "Consectetur id dolore velit sint dolor sint. Magna qui dolore ex non irure nostrud eiusmod anim magna sit exercitation sit tempor non. Cillum reprehenderit esse irure elit est magna veniam est nisi veniam ullamco officia consectetur occaecat.\r\n", "registered": "2014-06-19T06:56:59-12:00", "latitude": 62.427629, "longitude": -156.584885, "tags": [ "laboris", "ad", "culpa", "nulla", "deserunt", "culpa", "et" ], "friends": [ { "id": 0, "name": "Lowery Burke" }, { "id": 1, "name": "Frankie Rosario" }, { "id": 2, "name": "Marquez Stephenson" } ], "greeting": "Hello, Sherry Spence! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23c226a10e34cd02aa", "index": 1939, "guid": "219a01b6-7f3f-4bba-a9a4-950039198ad5", "isActive": true, "balance": "$1,699.89", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Kerry Frederick", "gender": "female", "company": "BUZZWORKS", "email": "kerryfrederick@buzzworks.com", "phone": "+1 (834) 489-3253", "address": "504 Ridgewood Avenue, Stevens, Texas, 8178", "about": "Elit aute velit sint enim sit deserunt sit elit reprehenderit occaecat deserunt incididunt aliquip sunt. Dolor commodo aute minim aliquip in veniam ullamco pariatur labore incididunt esse sit dolor. Magna esse adipisicing enim proident.\r\n", "registered": "2014-03-21T19:43:34-13:00", "latitude": 87.154694, "longitude": -99.987441, "tags": [ "enim", "proident", "id", "irure", "ad", "nulla", "qui" ], "friends": [ { "id": 0, "name": "Violet Kirkland" }, { "id": 1, "name": "Willa Wall" }, { "id": 2, "name": "Daniel Parsons" } ], "greeting": "Hello, Kerry Frederick! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2354f6e48a64ad2f23", "index": 1940, "guid": "210571b7-457d-423b-9381-f2beccfc03b5", "isActive": true, "balance": "$2,778.42", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Shauna Curtis", "gender": "female", "company": "QUILTIGEN", "email": "shaunacurtis@quiltigen.com", "phone": "+1 (874) 567-3403", "address": "892 Overbaugh Place, Taft, Oregon, 8907", "about": "Incididunt sit mollit fugiat consectetur ea cillum consequat dolor officia Lorem. Ea enim amet minim labore. Commodo ipsum ad incididunt do pariatur eu elit duis elit est ad aliqua cillum pariatur. Id velit ex commodo sint non aliqua tempor mollit culpa qui reprehenderit. Dolor do mollit aliquip cupidatat non consectetur duis ut occaecat minim.\r\n", "registered": "2014-07-13T05:44:32-12:00", "latitude": -70.11076, "longitude": -120.110146, "tags": [ "officia", "sunt", "occaecat", "dolore", "velit", "sunt", "pariatur" ], "friends": [ { "id": 0, "name": "Kitty Diaz" }, { "id": 1, "name": "Briggs Henderson" }, { "id": 2, "name": "Nanette Fisher" } ], "greeting": "Hello, Shauna Curtis! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23a78d2f6f66c6814f", "index": 1941, "guid": "db060482-2622-41a8-84a6-0a6d529cba6b", "isActive": true, "balance": "$3,033.14", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Christensen Forbes", "gender": "male", "company": "VIRVA", "email": "christensenforbes@virva.com", "phone": "+1 (888) 479-2742", "address": "403 Doscher Street, Biehle, Nevada, 531", "about": "Cillum enim deserunt ipsum sit esse eu elit magna tempor. Est amet dolor nisi eu occaecat duis ipsum laboris sint et tempor quis fugiat excepteur. Magna sunt officia eu dolore laboris tempor minim cupidatat anim sint veniam dolore est. Quis consequat aliquip commodo incididunt ipsum veniam. Cillum sint qui laborum cillum commodo fugiat fugiat non.\r\n", "registered": "2014-06-21T18:52:11-12:00", "latitude": 15.996748, "longitude": 18.155952, "tags": [ "consequat", "pariatur", "cupidatat", "id", "adipisicing", "est", "magna" ], "friends": [ { "id": 0, "name": "Rhodes Bass" }, { "id": 1, "name": "Parks Rowland" }, { "id": 2, "name": "Atkins Horn" } ], "greeting": "Hello, Christensen Forbes! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea230a175656be1203aa", "index": 1942, "guid": "b3849341-26ab-4303-8512-aafcf48cfe2d", "isActive": true, "balance": "$2,825.61", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Ayala Yates", "gender": "male", "company": "TYPHONICA", "email": "ayalayates@typhonica.com", "phone": "+1 (835) 421-3532", "address": "530 Argyle Road, Conway, Minnesota, 8336", "about": "Dolor irure nulla nostrud ut proident do enim voluptate ex pariatur aliqua. Eiusmod ullamco mollit ad nostrud pariatur et Lorem. Et proident magna nostrud sit eu officia eiusmod est commodo pariatur est ullamco. Excepteur consequat tempor ad aute ipsum elit ea labore commodo velit excepteur aliquip.\r\n", "registered": "2014-02-26T23:56:15-13:00", "latitude": 89.972402, "longitude": 177.386326, "tags": [ "irure", "nulla", "pariatur", "id", "incididunt", "ad", "voluptate" ], "friends": [ { "id": 0, "name": "Tucker Spears" }, { "id": 1, "name": "Patterson Hester" }, { "id": 2, "name": "Mcclain Fernandez" } ], "greeting": "Hello, Ayala Yates! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea231f40c09140ea53c9", "index": 1943, "guid": "4ac26912-ef10-410e-903f-f5f1b8d057fa", "isActive": false, "balance": "$1,196.18", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Elvira Sweeney", "gender": "female", "company": "VIOCULAR", "email": "elvirasweeney@viocular.com", "phone": "+1 (855) 519-3918", "address": "761 Columbia Place, Somerset, Missouri, 4194", "about": "Quis laborum commodo pariatur ullamco velit consectetur laboris. Pariatur ea in esse tempor culpa fugiat. Ea ipsum voluptate sint deserunt eiusmod esse reprehenderit adipisicing nostrud in voluptate ullamco proident id. Ex est dolore velit laborum fugiat voluptate id id sint culpa sint enim esse est.\r\n", "registered": "2014-06-28T12:48:31-12:00", "latitude": -7.232653, "longitude": -84.464631, "tags": [ "consectetur", "sunt", "excepteur", "culpa", "aliqua", "irure", "duis" ], "friends": [ { "id": 0, "name": "Fleming Abbott" }, { "id": 1, "name": "Tonia Kane" }, { "id": 2, "name": "Eliza Clements" } ], "greeting": "Hello, Elvira Sweeney! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2392b52f0ad8ff7b36", "index": 1944, "guid": "e01fc183-6f40-4fbc-a89b-75050793f681", "isActive": true, "balance": "$3,556.29", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Guthrie Romero", "gender": "male", "company": "TROLLERY", "email": "guthrieromero@trollery.com", "phone": "+1 (980) 407-3163", "address": "988 Alice Court, Woodruff, Rhode Island, 8551", "about": "Ex excepteur est reprehenderit labore sunt. Velit ex deserunt deserunt ipsum ex aliquip ad enim laboris ullamco exercitation. Ea dolor aliquip fugiat ex cupidatat mollit irure enim eiusmod. Id duis ullamco elit nisi consectetur officia non sunt consequat nostrud. Ipsum officia fugiat nostrud voluptate Lorem aliquip.\r\n", "registered": "2014-09-20T11:53:57-12:00", "latitude": -74.026686, "longitude": 49.040657, "tags": [ "laboris", "occaecat", "reprehenderit", "eu", "est", "ex", "id" ], "friends": [ { "id": 0, "name": "Shelly Moore" }, { "id": 1, "name": "Carly Adams" }, { "id": 2, "name": "Lillian Mcfadden" } ], "greeting": "Hello, Guthrie Romero! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23ffcb21adb2ed467d", "index": 1945, "guid": "3e804db2-2feb-4a3f-b6be-fab93fe91699", "isActive": false, "balance": "$1,185.80", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Petty Clarke", "gender": "male", "company": "OBLIQ", "email": "pettyclarke@obliq.com", "phone": "+1 (980) 551-2572", "address": "197 Onderdonk Avenue, Lisco, Florida, 6550", "about": "Nisi occaecat nulla enim eu non. Tempor et nostrud minim magna ex et sit id ad nostrud cupidatat est. Tempor non laborum commodo aliquip veniam. Proident aliqua qui ut cillum officia amet.\r\n", "registered": "2014-05-30T01:11:35-12:00", "latitude": 47.755758, "longitude": 24.038302, "tags": [ "reprehenderit", "ea", "aliquip", "nulla", "sint", "eu", "laboris" ], "friends": [ { "id": 0, "name": "Cummings Church" }, { "id": 1, "name": "Sargent David" }, { "id": 2, "name": "Eaton Mcdonald" } ], "greeting": "Hello, Petty Clarke! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23920bbdb97b08312d", "index": 1946, "guid": "ddc4e71d-205c-44cd-962b-ad7c6f1a2f74", "isActive": true, "balance": "$2,888.98", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Mcdaniel Lindsay", "gender": "male", "company": "KLUGGER", "email": "mcdaniellindsay@klugger.com", "phone": "+1 (977) 490-3307", "address": "591 Devoe Street, Veguita, North Carolina, 8285", "about": "Deserunt eiusmod commodo officia magna qui Lorem ullamco enim duis nostrud dolor eiusmod. Esse aliqua reprehenderit elit mollit dolore. Eiusmod consequat dolore laborum pariatur amet sunt consectetur sint consequat commodo proident culpa.\r\n", "registered": "2014-09-04T21:16:34-12:00", "latitude": 27.595291, "longitude": -143.143559, "tags": [ "qui", "id", "deserunt", "ullamco", "fugiat", "excepteur", "irure" ], "friends": [ { "id": 0, "name": "Lawanda Key" }, { "id": 1, "name": "Vang Murray" }, { "id": 2, "name": "Natasha Phelps" } ], "greeting": "Hello, Mcdaniel Lindsay! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea232df6bd62be37c0c4", "index": 1947, "guid": "65ac0890-2b14-4370-910a-15c1ab709f45", "isActive": true, "balance": "$2,088.08", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Mcconnell Wolf", "gender": "male", "company": "BOVIS", "email": "mcconnellwolf@bovis.com", "phone": "+1 (979) 486-2492", "address": "256 Poplar Street, Trexlertown, New Hampshire, 9028", "about": "Voluptate pariatur amet aliqua aute est culpa reprehenderit cupidatat sunt eiusmod ipsum. Adipisicing anim aliqua occaecat sit eu officia. Dolore aliqua ut in ut et exercitation tempor cupidatat fugiat ea. Aliqua aute tempor irure ipsum. Nulla minim eu sint consequat cupidatat nisi laboris ex incididunt qui officia est ea. Ut dolore proident qui dolor exercitation fugiat minim labore non. Irure eiusmod adipisicing non ex commodo fugiat incididunt voluptate esse est ea velit magna amet.\r\n", "registered": "2014-09-19T23:59:24-12:00", "latitude": 53.987625, "longitude": -58.81218, "tags": [ "esse", "consequat", "pariatur", "reprehenderit", "laborum", "cillum", "est" ], "friends": [ { "id": 0, "name": "Richardson Hooper" }, { "id": 1, "name": "Angelique Mills" }, { "id": 2, "name": "Mathis Middleton" } ], "greeting": "Hello, Mcconnell Wolf! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea231d5a545037b950dd", "index": 1948, "guid": "7f2e412a-c46b-4c4d-b226-1e4a069d8717", "isActive": false, "balance": "$3,426.84", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Deborah Hawkins", "gender": "female", "company": "EVIDENDS", "email": "deborahhawkins@evidends.com", "phone": "+1 (887) 546-3095", "address": "315 Concord Street, Riegelwood, Arkansas, 7858", "about": "Proident irure adipisicing sunt proident et elit esse. Aute aliqua aliquip id reprehenderit ea est aliquip in est. Id exercitation adipisicing laborum pariatur non.\r\n", "registered": "2014-03-13T11:42:27-13:00", "latitude": 35.153133, "longitude": 166.566993, "tags": [ "culpa", "ad", "consequat", "ex", "ipsum", "sunt", "est" ], "friends": [ { "id": 0, "name": "Wilkerson Norris" }, { "id": 1, "name": "Dominique Rich" }, { "id": 2, "name": "Melisa Cervantes" } ], "greeting": "Hello, Deborah Hawkins! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23a4fc6e2c0a7bd574", "index": 1949, "guid": "0a7d7169-c60d-4a39-8c46-01a0c86103c5", "isActive": true, "balance": "$3,860.09", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Benjamin Campbell", "gender": "male", "company": "SENTIA", "email": "benjamincampbell@sentia.com", "phone": "+1 (921) 566-3113", "address": "986 Schenck Court, Gordon, Iowa, 7282", "about": "Lorem adipisicing cillum officia ex pariatur deserunt commodo amet nisi pariatur do in quis. Exercitation enim id esse aliqua eiusmod. Elit minim ipsum qui do ut ut duis pariatur. Dolor ut exercitation sunt duis elit qui.\r\n", "registered": "2014-08-30T04:25:27-12:00", "latitude": 4.633232, "longitude": 126.060059, "tags": [ "anim", "nulla", "reprehenderit", "Lorem", "et", "ad", "laborum" ], "friends": [ { "id": 0, "name": "Patton Mcfarland" }, { "id": 1, "name": "Rojas Beach" }, { "id": 2, "name": "Parrish Vaughn" } ], "greeting": "Hello, Benjamin Campbell! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea235b7a8504905da301", "index": 1950, "guid": "e527b998-44c7-4cf8-93fb-8dce85bab7ab", "isActive": false, "balance": "$2,625.96", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Kimberly Ashley", "gender": "female", "company": "ENTHAZE", "email": "kimberlyashley@enthaze.com", "phone": "+1 (822) 519-2270", "address": "737 Sackett Street, Jenkinsville, Nebraska, 5548", "about": "Aliqua minim et ad ea sint reprehenderit culpa in. Id dolore Lorem quis dolore consequat velit. Do amet mollit sunt culpa voluptate cupidatat ea esse ipsum aliqua nisi dolore elit. Officia eiusmod ad ad Lorem nostrud occaecat est.\r\n", "registered": "2014-07-20T08:11:00-12:00", "latitude": 5.725806, "longitude": 100.508954, "tags": [ "duis", "eiusmod", "enim", "enim", "nulla", "est", "magna" ], "friends": [ { "id": 0, "name": "Jessie Chandler" }, { "id": 1, "name": "Buck Vaughan" }, { "id": 2, "name": "Meyers Robbins" } ], "greeting": "Hello, Kimberly Ashley! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2317773f6706a02cc1", "index": 1951, "guid": "2e6ce68f-6d61-42c1-9b96-de9fe4ff9936", "isActive": false, "balance": "$3,561.28", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Brooks Levine", "gender": "male", "company": "MEDALERT", "email": "brookslevine@medalert.com", "phone": "+1 (807) 505-2110", "address": "331 Leonard Street, Lund, District Of Columbia, 3381", "about": "Do ex reprehenderit ex ut velit quis eiusmod ut ipsum irure eu consectetur est. Ex ex veniam eu nulla ipsum ex officia aliqua aute nostrud mollit dolor officia irure. Sit magna aute ea duis amet nostrud incididunt Lorem enim Lorem. Labore deserunt non quis eiusmod consequat nulla ex. Id ex esse ad deserunt commodo veniam qui veniam eu ex do quis. Eiusmod occaecat reprehenderit consectetur ipsum. Nostrud magna anim occaecat non commodo.\r\n", "registered": "2014-07-14T12:12:54-12:00", "latitude": -47.437642, "longitude": 129.089786, "tags": [ "ullamco", "eiusmod", "reprehenderit", "fugiat", "ipsum", "fugiat", "dolore" ], "friends": [ { "id": 0, "name": "Dollie Combs" }, { "id": 1, "name": "Margo Schwartz" }, { "id": 2, "name": "Lupe Sims" } ], "greeting": "Hello, Brooks Levine! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea236d6c6ffbad88a242", "index": 1952, "guid": "ba175429-47c4-47de-9cb0-b33555597b49", "isActive": true, "balance": "$1,642.96", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Sheri Maxwell", "gender": "female", "company": "TALKOLA", "email": "sherimaxwell@talkola.com", "phone": "+1 (914) 566-3797", "address": "692 Walker Court, Bloomington, New Jersey, 5234", "about": "Id in excepteur id dolore ullamco sint occaecat quis nostrud ipsum. Ea consectetur sint dolore deserunt culpa ea ea fugiat velit sunt aliqua amet proident. In consectetur cillum id aliquip quis esse nisi mollit ea nulla et commodo deserunt.\r\n", "registered": "2014-04-28T05:31:06-12:00", "latitude": -32.512893, "longitude": 146.271059, "tags": [ "quis", "ut", "amet", "duis", "do", "mollit", "eiusmod" ], "friends": [ { "id": 0, "name": "Joann Talley" }, { "id": 1, "name": "Colleen Knowles" }, { "id": 2, "name": "Leila Green" } ], "greeting": "Hello, Sheri Maxwell! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2364c4d37b6111277b", "index": 1953, "guid": "7c600082-7cec-403a-8424-8562932cb679", "isActive": false, "balance": "$2,503.28", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Anthony Gutierrez", "gender": "male", "company": "ORBIFLEX", "email": "anthonygutierrez@orbiflex.com", "phone": "+1 (800) 519-2404", "address": "977 Oxford Street, Sanders, Palau, 8061", "about": "Irure deserunt velit cillum Lorem mollit elit. Laborum labore ad sint velit ipsum excepteur qui cupidatat id in nisi occaecat do magna. Sit ea pariatur officia ad incididunt anim excepteur reprehenderit sunt mollit sit laborum aute velit. Id ea voluptate commodo cupidatat id et reprehenderit aliqua esse occaecat. Qui ut dolor voluptate eu.\r\n", "registered": "2014-07-19T07:11:35-12:00", "latitude": 69.357104, "longitude": 24.880912, "tags": [ "ipsum", "reprehenderit", "dolore", "ut", "ipsum", "ad", "reprehenderit" ], "friends": [ { "id": 0, "name": "Barrett Rivers" }, { "id": 1, "name": "Miriam Garner" }, { "id": 2, "name": "Best Mann" } ], "greeting": "Hello, Anthony Gutierrez! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea230acfdc0b8aa5961c", "index": 1954, "guid": "2116156e-e0a0-4ba8-ab4e-6e85689f55c1", "isActive": false, "balance": "$3,806.26", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Park Harvey", "gender": "male", "company": "COMTOUR", "email": "parkharvey@comtour.com", "phone": "+1 (901) 452-2000", "address": "935 Dunne Place, Gilgo, Puerto Rico, 3044", "about": "Deserunt veniam nisi excepteur occaecat qui dolor amet do proident. Ea deserunt laboris esse elit proident ex ipsum culpa. Culpa cillum consequat qui eu. Ea non nisi nostrud consequat incididunt veniam dolor amet fugiat ex qui.\r\n", "registered": "2014-01-26T13:42:23-13:00", "latitude": 48.630186, "longitude": -142.867736, "tags": [ "pariatur", "culpa", "aliquip", "officia", "cillum", "deserunt", "reprehenderit" ], "friends": [ { "id": 0, "name": "Wendi Pollard" }, { "id": 1, "name": "Cabrera Davenport" }, { "id": 2, "name": "Bird Norton" } ], "greeting": "Hello, Park Harvey! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea232997b13e263b3f98", "index": 1955, "guid": "004e6f9c-962a-4c91-9b13-b025c05a90da", "isActive": false, "balance": "$1,969.66", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Nettie Mendez", "gender": "female", "company": "LUMBREX", "email": "nettiemendez@lumbrex.com", "phone": "+1 (944) 503-2345", "address": "546 Eldert Lane, Durham, California, 2253", "about": "Ut deserunt culpa aute ipsum dolor laboris id minim. Enim aliquip commodo laborum est amet enim cillum sit Lorem nostrud duis veniam mollit incididunt. Mollit enim consectetur reprehenderit id eiusmod anim nostrud nisi id.\r\n", "registered": "2014-07-18T01:58:11-12:00", "latitude": 86.643063, "longitude": -105.719377, "tags": [ "incididunt", "dolore", "tempor", "nulla", "elit", "magna", "nostrud" ], "friends": [ { "id": 0, "name": "Valeria George" }, { "id": 1, "name": "Leblanc Park" }, { "id": 2, "name": "Mabel Kerr" } ], "greeting": "Hello, Nettie Mendez! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23f9f1b9bd96b739c1", "index": 1956, "guid": "679d1c81-2075-44cc-94dd-291bf993a185", "isActive": true, "balance": "$3,610.76", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Karla Roberts", "gender": "female", "company": "SURETECH", "email": "karlaroberts@suretech.com", "phone": "+1 (855) 585-3284", "address": "248 Fleet Place, Downsville, Vermont, 626", "about": "Veniam in aliqua amet exercitation veniam. Ea ipsum dolore cillum labore ea ipsum fugiat. Magna Lorem ullamco aliqua ullamco laborum nostrud. Elit culpa nisi tempor excepteur excepteur. Qui cupidatat magna aute fugiat ex tempor mollit labore minim. Non pariatur nisi voluptate Lorem esse deserunt ad eiusmod sit pariatur in minim nulla.\r\n", "registered": "2014-04-03T05:05:42-13:00", "latitude": -80.622101, "longitude": -179.490978, "tags": [ "mollit", "nisi", "mollit", "nostrud", "sint", "exercitation", "consequat" ], "friends": [ { "id": 0, "name": "Karyn Holder" }, { "id": 1, "name": "Angela Rollins" }, { "id": 2, "name": "Weeks Gonzalez" } ], "greeting": "Hello, Karla Roberts! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea233f9a8327dc6bafce", "index": 1957, "guid": "e1bf3061-0dd1-4362-a628-036215de5a0e", "isActive": true, "balance": "$1,575.02", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Joanna Gonzales", "gender": "female", "company": "MAGNEMO", "email": "joannagonzales@magnemo.com", "phone": "+1 (993) 470-3262", "address": "500 Canal Avenue, Ventress, Indiana, 3297", "about": "Mollit labore voluptate sint esse minim reprehenderit officia nostrud. Aute nulla amet elit commodo eu ea quis labore incididunt qui dolor. Cillum cupidatat enim non ex voluptate eu est. Eiusmod cillum minim esse anim exercitation anim. Adipisicing commodo elit labore est ullamco officia culpa ipsum commodo cillum consectetur ullamco fugiat. Sint commodo aliquip sint mollit sit consequat aliquip et esse ea exercitation laboris. Ex elit ad anim elit et magna reprehenderit ea.\r\n", "registered": "2014-08-22T11:21:28-12:00", "latitude": -79.536296, "longitude": -77.359802, "tags": [ "reprehenderit", "est", "irure", "ullamco", "minim", "in", "Lorem" ], "friends": [ { "id": 0, "name": "Hurley Dickson" }, { "id": 1, "name": "Gina Jordan" }, { "id": 2, "name": "Vaughan Herman" } ], "greeting": "Hello, Joanna Gonzales! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23877593ade2108ae2", "index": 1958, "guid": "11772257-c98c-4540-b4ed-668d053fe5f5", "isActive": false, "balance": "$3,885.88", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Singleton Mcmahon", "gender": "male", "company": "PHARMACON", "email": "singletonmcmahon@pharmacon.com", "phone": "+1 (945) 600-3203", "address": "502 Tiffany Place, Lindcove, Illinois, 1096", "about": "Fugiat eu laboris minim ad incididunt ea consequat sit aliquip veniam ullamco est anim minim. Lorem consequat ea deserunt deserunt aliquip do mollit adipisicing nostrud. Laborum dolor fugiat Lorem cupidatat aute. Fugiat laboris elit exercitation aliqua reprehenderit aliqua enim eu velit magna duis exercitation enim adipisicing. Laboris anim exercitation reprehenderit eu labore veniam.\r\n", "registered": "2014-06-17T19:17:03-12:00", "latitude": 64.402546, "longitude": 13.618928, "tags": [ "ut", "mollit", "sint", "enim", "reprehenderit", "aute", "in" ], "friends": [ { "id": 0, "name": "Fox Frost" }, { "id": 1, "name": "Warner Dale" }, { "id": 2, "name": "Mcguire Taylor" } ], "greeting": "Hello, Singleton Mcmahon! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea234d2a9fad1bb0364b", "index": 1959, "guid": "29054c44-dbe6-44f8-9a42-c4c7a88ce8de", "isActive": true, "balance": "$2,963.49", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Socorro Kirby", "gender": "female", "company": "VICON", "email": "socorrokirby@vicon.com", "phone": "+1 (849) 504-3618", "address": "239 Plaza Street, Gardners, South Carolina, 9610", "about": "Nisi commodo qui et anim velit velit. Mollit labore officia nostrud ullamco do ad consequat nostrud ea culpa ad consectetur excepteur. Commodo duis exercitation in mollit commodo velit consequat aliqua ipsum adipisicing. Sint eiusmod proident laborum enim nisi elit eiusmod sunt dolore velit irure eiusmod. Quis magna esse velit est dolor aliquip commodo velit cillum. Magna velit excepteur incididunt anim labore ad deserunt tempor commodo est velit incididunt Lorem sint. Laboris tempor nisi aliqua adipisicing enim occaecat incididunt sunt mollit voluptate officia do.\r\n", "registered": "2014-05-05T11:31:48-12:00", "latitude": -64.909746, "longitude": -112.831382, "tags": [ "deserunt", "irure", "velit", "occaecat", "Lorem", "consequat", "ex" ], "friends": [ { "id": 0, "name": "Adeline Hale" }, { "id": 1, "name": "White Ballard" }, { "id": 2, "name": "Lola Daugherty" } ], "greeting": "Hello, Socorro Kirby! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23c9e2b48733244f37", "index": 1960, "guid": "ec739107-3dd8-4494-a2ae-72cd468d5ef7", "isActive": false, "balance": "$3,498.18", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Marion Cobb", "gender": "female", "company": "EXOSTREAM", "email": "marioncobb@exostream.com", "phone": "+1 (864) 537-3318", "address": "720 Middleton Street, Vallonia, American Samoa, 5464", "about": "Do ea anim cupidatat nisi cillum. Et ullamco eu consequat nisi deserunt excepteur nisi duis. Ad velit eiusmod et reprehenderit consectetur labore esse ut qui in. Laborum dolore occaecat elit eiusmod est Lorem magna occaecat minim ex sit commodo. Laboris labore deserunt ex amet nulla laborum occaecat est magna eiusmod adipisicing esse exercitation aliqua. Magna ullamco aliquip esse eiusmod ea est irure commodo.\r\n", "registered": "2014-01-11T15:09:59-13:00", "latitude": -69.708213, "longitude": 166.239789, "tags": [ "labore", "veniam", "enim", "officia", "sunt", "id", "proident" ], "friends": [ { "id": 0, "name": "Gillespie Phillips" }, { "id": 1, "name": "Edith Savage" }, { "id": 2, "name": "Hinton Maynard" } ], "greeting": "Hello, Marion Cobb! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23b7155621625f31ce", "index": 1961, "guid": "f1d7341a-35f3-43f1-bedb-b9a0318acb94", "isActive": true, "balance": "$3,512.69", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Acevedo Colon", "gender": "male", "company": "MARVANE", "email": "acevedocolon@marvane.com", "phone": "+1 (885) 495-2575", "address": "949 Bay Street, Ada, Delaware, 5703", "about": "Officia enim enim enim non proident id aute do commodo veniam aliquip aliqua. Ipsum proident mollit laboris consequat. Exercitation aliqua magna sit duis eiusmod laborum sint. Sunt quis dolor exercitation dolore fugiat non consequat commodo exercitation.\r\n", "registered": "2014-06-19T05:44:03-12:00", "latitude": -14.757106, "longitude": 20.553917, "tags": [ "non", "occaecat", "dolor", "incididunt", "adipisicing", "ex", "duis" ], "friends": [ { "id": 0, "name": "Lily Pickett" }, { "id": 1, "name": "Jean Foley" }, { "id": 2, "name": "Stuart Harding" } ], "greeting": "Hello, Acevedo Colon! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2311355f8175099bd3", "index": 1962, "guid": "d84fb38d-f647-4ee5-92d0-ebd1c0850d59", "isActive": true, "balance": "$3,847.38", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Genevieve Ball", "gender": "female", "company": "PERMADYNE", "email": "genevieveball@permadyne.com", "phone": "+1 (974) 492-3753", "address": "940 Ryder Street, Homeland, Pennsylvania, 804", "about": "Dolore ea velit cillum laborum magna do aliquip anim officia ex mollit. Occaecat ea excepteur sunt in sit duis sit deserunt ad minim voluptate. Incididunt non sit duis anim voluptate adipisicing pariatur est voluptate duis. Ipsum cillum sint ipsum tempor elit voluptate magna cillum pariatur.\r\n", "registered": "2014-07-25T08:42:36-12:00", "latitude": 59.150294, "longitude": -112.604148, "tags": [ "cillum", "sunt", "voluptate", "officia", "mollit", "dolor", "quis" ], "friends": [ { "id": 0, "name": "Everett Walker" }, { "id": 1, "name": "Magdalena Ferguson" }, { "id": 2, "name": "Rachael Townsend" } ], "greeting": "Hello, Genevieve Ball! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23a03bd863e90e0597", "index": 1963, "guid": "71ca406a-b6e7-4bc3-8c3a-7a00563f0c7f", "isActive": true, "balance": "$1,443.08", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Frederick Knight", "gender": "male", "company": "THREDZ", "email": "frederickknight@thredz.com", "phone": "+1 (963) 529-3828", "address": "902 Oceanic Avenue, Herald, Georgia, 3811", "about": "Ex ipsum et dolore do ad minim. Duis Lorem dolor esse voluptate non duis sint sunt excepteur sunt proident enim. Fugiat est et cupidatat sint nulla qui consequat laborum cupidatat ipsum. Aute enim esse voluptate elit dolor aute sunt.\r\n", "registered": "2014-06-13T19:42:00-12:00", "latitude": 45.327785, "longitude": -143.278292, "tags": [ "sint", "mollit", "excepteur", "incididunt", "irure", "mollit", "deserunt" ], "friends": [ { "id": 0, "name": "Dorthy Reynolds" }, { "id": 1, "name": "Bush Dunn" }, { "id": 2, "name": "Young Graham" } ], "greeting": "Hello, Frederick Knight! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea232c81babaf6dae72d", "index": 1964, "guid": "eb0c931d-55b7-4caf-a2d6-75451559b910", "isActive": false, "balance": "$2,345.34", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Wiley Vincent", "gender": "male", "company": "BLUPLANET", "email": "wileyvincent@bluplanet.com", "phone": "+1 (813) 452-3777", "address": "234 Mermaid Avenue, Lowell, North Dakota, 2013", "about": "Sint quis magna aliquip cillum sint aliquip culpa sint reprehenderit pariatur. Do deserunt aute pariatur exercitation amet dolor ipsum fugiat sunt anim. Aute consectetur officia ex sit.\r\n", "registered": "2014-08-08T20:52:21-12:00", "latitude": 47.866445, "longitude": 105.863582, "tags": [ "ullamco", "nulla", "quis", "dolor", "sunt", "voluptate", "magna" ], "friends": [ { "id": 0, "name": "Sonja Ellison" }, { "id": 1, "name": "Perry Armstrong" }, { "id": 2, "name": "Penny Reid" } ], "greeting": "Hello, Wiley Vincent! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea234495addffab783ef", "index": 1965, "guid": "84178846-2834-4c31-ba3b-04b97bac1da8", "isActive": false, "balance": "$3,671.93", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Eve Sears", "gender": "female", "company": "SLAX", "email": "evesears@slax.com", "phone": "+1 (870) 580-2939", "address": "737 Dearborn Court, Thynedale, Louisiana, 6471", "about": "Nisi sunt veniam sint incididunt ea proident exercitation reprehenderit. Fugiat nisi veniam id nostrud. Incididunt nulla consectetur cillum mollit excepteur voluptate. Elit nisi tempor reprehenderit minim pariatur culpa aliquip do.\r\n", "registered": "2014-04-08T21:02:26-12:00", "latitude": -50.404444, "longitude": 45.868556, "tags": [ "nulla", "deserunt", "Lorem", "nostrud", "aliquip", "cupidatat", "laboris" ], "friends": [ { "id": 0, "name": "Yates Anthony" }, { "id": 1, "name": "Kathryn Myers" }, { "id": 2, "name": "Bartlett Raymond" } ], "greeting": "Hello, Eve Sears! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2386a767c1ca735e73", "index": 1966, "guid": "efc1d732-62cb-4a90-ac3f-0e0c09f62425", "isActive": false, "balance": "$1,624.74", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Berger Golden", "gender": "male", "company": "CRUSTATIA", "email": "bergergolden@crustatia.com", "phone": "+1 (852) 530-2840", "address": "619 Bijou Avenue, Harrodsburg, Northern Mariana Islands, 6517", "about": "Velit irure nostrud duis irure ullamco pariatur in. Lorem sint officia amet eu non qui consectetur tempor. Nostrud magna ea cillum excepteur ullamco ex officia culpa sunt consequat occaecat deserunt. Irure sit pariatur laborum pariatur aliquip Lorem nostrud anim ullamco culpa dolore duis minim excepteur.\r\n", "registered": "2014-03-28T16:04:10-13:00", "latitude": 57.407314, "longitude": -76.212463, "tags": [ "aliqua", "quis", "cupidatat", "consectetur", "commodo", "nulla", "consectetur" ], "friends": [ { "id": 0, "name": "Maureen Roy" }, { "id": 1, "name": "Irene Clemons" }, { "id": 2, "name": "Keri England" } ], "greeting": "Hello, Berger Golden! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23dcff736eeda5c127", "index": 1967, "guid": "d227d75e-c5c7-442b-864c-1e8d71b42c5f", "isActive": true, "balance": "$1,247.37", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Dunn Reyes", "gender": "male", "company": "LUDAK", "email": "dunnreyes@ludak.com", "phone": "+1 (903) 456-3347", "address": "912 Prospect Street, Cecilia, Colorado, 225", "about": "Qui sint aliquip sunt exercitation dolore culpa irure voluptate non anim veniam deserunt consectetur. Amet do occaecat anim tempor sit ipsum irure quis reprehenderit veniam quis sint nisi quis. Quis enim consectetur amet elit nisi qui quis nulla dolore amet ut eiusmod ex. Sit amet aliquip cupidatat nostrud magna eiusmod minim ex ut excepteur eiusmod sunt eu commodo. Aute exercitation reprehenderit non est quis ad exercitation ea ea magna exercitation eiusmod culpa.\r\n", "registered": "2014-08-07T09:01:25-12:00", "latitude": 33.467932, "longitude": -108.770454, "tags": [ "ex", "ut", "enim", "deserunt", "dolor", "aliquip", "qui" ], "friends": [ { "id": 0, "name": "Clare Shields" }, { "id": 1, "name": "Theresa Tillman" }, { "id": 2, "name": "Beach Valentine" } ], "greeting": "Hello, Dunn Reyes! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23a6c82f6129610fb9", "index": 1968, "guid": "176941f6-1b1d-46f9-ab8e-7c8164067159", "isActive": false, "balance": "$3,123.62", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Nielsen Edwards", "gender": "male", "company": "AQUAZURE", "email": "nielsenedwards@aquazure.com", "phone": "+1 (867) 537-2981", "address": "543 Ross Street, Clarktown, Idaho, 3468", "about": "Exercitation sit Lorem aute sit exercitation est eu consequat duis. Velit mollit labore enim adipisicing nostrud ad dolor cupidatat id consequat officia. Minim eiusmod sit dolore nisi cillum voluptate sit. Magna magna aliquip velit sunt proident aute. Sit velit voluptate ea ex. In ea sunt deserunt laborum adipisicing enim fugiat cupidatat nostrud in labore amet est. Fugiat incididunt Lorem ex dolore velit.\r\n", "registered": "2014-05-21T10:49:30-12:00", "latitude": 23.243579, "longitude": -160.242549, "tags": [ "quis", "eiusmod", "nisi", "nisi", "magna", "elit", "aute" ], "friends": [ { "id": 0, "name": "Glover Shelton" }, { "id": 1, "name": "Jacklyn Soto" }, { "id": 2, "name": "Camacho Mccall" } ], "greeting": "Hello, Nielsen Edwards! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2395ee4553e3b34bfb", "index": 1969, "guid": "fa5cbdc1-fed5-469d-ae91-90dec5f04441", "isActive": false, "balance": "$2,652.20", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Pennington Strong", "gender": "male", "company": "UNIWORLD", "email": "penningtonstrong@uniworld.com", "phone": "+1 (906) 414-2859", "address": "210 Cyrus Avenue, Cassel, Marshall Islands, 4933", "about": "Proident nostrud sunt aliqua velit excepteur id ea ut sunt eu. Reprehenderit nulla nisi officia pariatur fugiat occaecat ut voluptate commodo esse. Deserunt et deserunt commodo cupidatat ea anim mollit excepteur voluptate.\r\n", "registered": "2014-03-26T04:02:31-13:00", "latitude": 78.676949, "longitude": -0.871988, "tags": [ "ex", "consequat", "sit", "anim", "sint", "exercitation", "occaecat" ], "friends": [ { "id": 0, "name": "Yvonne Brown" }, { "id": 1, "name": "Owens Gregory" }, { "id": 2, "name": "Velma Mccoy" } ], "greeting": "Hello, Pennington Strong! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea234f3f2712c3b88b97", "index": 1970, "guid": "d0a6d5b1-d869-4059-89d3-0d2607209464", "isActive": true, "balance": "$3,766.73", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Knox Mcconnell", "gender": "male", "company": "CONCILITY", "email": "knoxmcconnell@concility.com", "phone": "+1 (922) 404-3274", "address": "704 Remsen Street, Belva, New York, 4515", "about": "Voluptate enim reprehenderit incididunt incididunt. Ut sit Lorem laboris ullamco elit deserunt reprehenderit do. Aute non id laborum excepteur ex. Sit deserunt minim velit culpa fugiat incididunt in nostrud enim fugiat proident nostrud et. Tempor ad labore ad aute culpa duis duis.\r\n", "registered": "2014-01-23T03:17:51-13:00", "latitude": -7.516561, "longitude": -42.352953, "tags": [ "Lorem", "culpa", "mollit", "laborum", "cillum", "est", "qui" ], "friends": [ { "id": 0, "name": "Herring Collier" }, { "id": 1, "name": "Justice Baxter" }, { "id": 2, "name": "House Blake" } ], "greeting": "Hello, Knox Mcconnell! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23f0af1f2465535c59", "index": 1971, "guid": "e9ad6fc1-fe3a-4151-b4fb-d33f34ac1af1", "isActive": false, "balance": "$2,558.79", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Hilary Lancaster", "gender": "female", "company": "ZISIS", "email": "hilarylancaster@zisis.com", "phone": "+1 (818) 447-2969", "address": "440 Doone Court, Trail, Guam, 7678", "about": "Exercitation cupidatat magna incididunt tempor. Officia in dolor ea amet enim cupidatat officia commodo amet. Amet tempor laboris sunt exercitation duis et in aliquip fugiat laboris ad. Ea proident quis ea excepteur aute occaecat. Veniam quis elit voluptate sit nisi anim dolore mollit non. Sint ad nisi sint excepteur cupidatat ad sunt laboris velit. Do esse magna ut labore reprehenderit nisi officia pariatur aliqua sit eu.\r\n", "registered": "2014-08-15T20:32:04-12:00", "latitude": -81.159367, "longitude": -2.421818, "tags": [ "irure", "irure", "cillum", "ad", "dolor", "magna", "enim" ], "friends": [ { "id": 0, "name": "Alvarado Donovan" }, { "id": 1, "name": "Ingram Jenkins" }, { "id": 2, "name": "Suzanne Pate" } ], "greeting": "Hello, Hilary Lancaster! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2374b04cc6e5bbc59b", "index": 1972, "guid": "690b06bc-7d30-4aa3-9229-4e9e5265b679", "isActive": true, "balance": "$2,660.79", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Duke Velez", "gender": "male", "company": "STOCKPOST", "email": "dukevelez@stockpost.com", "phone": "+1 (955) 436-2227", "address": "420 Montrose Avenue, Caln, Virgin Islands, 5835", "about": "Enim consequat irure minim ex exercitation duis tempor ex nostrud aliqua irure. In cupidatat ut ea proident fugiat magna ad ut excepteur reprehenderit laborum dolor. Fugiat eiusmod est magna dolore incididunt.\r\n", "registered": "2014-06-28T11:21:17-12:00", "latitude": 17.226403, "longitude": -110.98295, "tags": [ "eiusmod", "velit", "amet", "sint", "voluptate", "dolor", "ea" ], "friends": [ { "id": 0, "name": "Harrison Higgins" }, { "id": 1, "name": "Wong Berry" }, { "id": 2, "name": "Gibbs Peterson" } ], "greeting": "Hello, Duke Velez! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea230cafa0c9ecc2995a", "index": 1973, "guid": "2428ff94-9616-41f1-b7a6-3369be7d9dca", "isActive": false, "balance": "$1,279.13", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Bradford Solomon", "gender": "male", "company": "XTH", "email": "bradfordsolomon@xth.com", "phone": "+1 (826) 450-2010", "address": "485 Lloyd Court, Mammoth, Massachusetts, 681", "about": "Pariatur voluptate enim quis deserunt quis incididunt non est enim mollit aute ex elit ullamco. Exercitation esse fugiat ea adipisicing aliquip id in. Nisi magna elit ex sunt deserunt dolore Lorem sint commodo nostrud eu. Deserunt pariatur incididunt Lorem ad. Aute sit est dolore est.\r\n", "registered": "2014-08-24T21:22:07-12:00", "latitude": -43.365257, "longitude": -36.797122, "tags": [ "nulla", "culpa", "aliqua", "minim", "est", "enim", "ea" ], "friends": [ { "id": 0, "name": "Henderson Nixon" }, { "id": 1, "name": "Weber Fulton" }, { "id": 2, "name": "Brandi Roberson" } ], "greeting": "Hello, Bradford Solomon! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23483b944e81cc38f7", "index": 1974, "guid": "67daef4e-8f49-491b-9dbc-22ae32cf4e3d", "isActive": false, "balance": "$2,730.57", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Letha Stuart", "gender": "female", "company": "BUNGA", "email": "lethastuart@bunga.com", "phone": "+1 (804) 597-2971", "address": "339 Bedford Place, Strong, Utah, 8437", "about": "Officia sit non voluptate aliqua magna exercitation Lorem ut ipsum elit. Eiusmod pariatur ipsum laborum anim excepteur sunt in quis deserunt tempor deserunt fugiat exercitation nostrud. In voluptate do et minim ipsum. Est in elit dolor ad duis est eu ex occaecat sint.\r\n", "registered": "2014-07-04T21:57:04-12:00", "latitude": -6.762253, "longitude": 162.340338, "tags": [ "nostrud", "et", "magna", "nisi", "incididunt", "eiusmod", "laboris" ], "friends": [ { "id": 0, "name": "Salazar Chambers" }, { "id": 1, "name": "Arnold Ellis" }, { "id": 2, "name": "Ford Lambert" } ], "greeting": "Hello, Letha Stuart! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23565c9f5b19b32240", "index": 1975, "guid": "e277340f-cac5-4f80-afe9-9417946e08a4", "isActive": false, "balance": "$3,921.67", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Roberson Guerra", "gender": "male", "company": "XERONK", "email": "robersonguerra@xeronk.com", "phone": "+1 (880) 557-3134", "address": "320 Goodwin Place, Roberts, Montana, 7447", "about": "Fugiat proident duis cupidatat laborum quis adipisicing exercitation consequat amet officia nisi. Sint laboris sit tempor nulla minim magna ex ex anim nulla occaecat anim sunt eiusmod. Anim eiusmod consequat officia laborum elit voluptate ipsum. Ex consequat eu nulla enim adipisicing quis fugiat ea commodo consequat. Cillum duis magna Lorem aute culpa anim excepteur incididunt ex. Consequat aliquip labore nulla labore amet. Do amet laboris do deserunt sint.\r\n", "registered": "2014-08-30T19:22:22-12:00", "latitude": -3.866717, "longitude": -118.861145, "tags": [ "consequat", "do", "reprehenderit", "enim", "proident", "ea", "ex" ], "friends": [ { "id": 0, "name": "Sasha Stevens" }, { "id": 1, "name": "Alba Hunt" }, { "id": 2, "name": "Bradley Guzman" } ], "greeting": "Hello, Roberson Guerra! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23e5c3565ab47a3005", "index": 1976, "guid": "aeccdfe7-4a37-4bc4-bbc2-4066f5b7a975", "isActive": false, "balance": "$2,000.59", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Maura Hickman", "gender": "female", "company": "ACLIMA", "email": "maurahickman@aclima.com", "phone": "+1 (979) 540-2835", "address": "894 Mill Lane, Independence, Wisconsin, 3325", "about": "Non exercitation deserunt ex id labore enim officia in adipisicing nulla cillum sint proident ea. Irure eu quis velit aute dolore aliqua in. Pariatur deserunt sint eu nostrud deserunt. Cupidatat culpa laboris nisi minim consectetur amet proident eiusmod.\r\n", "registered": "2014-06-01T07:48:53-12:00", "latitude": -43.718559, "longitude": -57.32403, "tags": [ "officia", "id", "proident", "sint", "do", "reprehenderit", "enim" ], "friends": [ { "id": 0, "name": "Francisca Cooley" }, { "id": 1, "name": "Livingston Ortiz" }, { "id": 2, "name": "Julie French" } ], "greeting": "Hello, Maura Hickman! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23366f4e649297bd85", "index": 1977, "guid": "c498de9d-1743-4311-9c9e-d769c0b4d373", "isActive": true, "balance": "$1,954.39", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Coffey Carver", "gender": "male", "company": "AMTAS", "email": "coffeycarver@amtas.com", "phone": "+1 (953) 581-2996", "address": "199 Madison Street, Cliff, Maine, 7485", "about": "Excepteur sint laborum culpa sint. Fugiat eiusmod tempor est magna labore reprehenderit aliquip duis elit. Sunt magna esse magna velit enim voluptate tempor. Eu adipisicing anim nulla nisi culpa ea consequat. Ea do cupidatat ipsum adipisicing sit dolore qui ullamco adipisicing cupidatat pariatur in. Enim irure nulla adipisicing dolore.\r\n", "registered": "2014-05-28T12:32:33-12:00", "latitude": 36.71682, "longitude": 169.96366, "tags": [ "in", "esse", "cillum", "qui", "sint", "voluptate", "enim" ], "friends": [ { "id": 0, "name": "Ewing Hughes" }, { "id": 1, "name": "Bridges Acosta" }, { "id": 2, "name": "Finch Christian" } ], "greeting": "Hello, Coffey Carver! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea233fc88f69ed9621cc", "index": 1978, "guid": "10192ce8-7dac-468b-a309-25ca6e66a0b9", "isActive": false, "balance": "$2,144.43", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Alisa Powers", "gender": "female", "company": "EXTRAWEAR", "email": "alisapowers@extrawear.com", "phone": "+1 (902) 483-3155", "address": "343 King Street, Ballico, Virginia, 2438", "about": "Aliqua cillum deserunt et incididunt labore cillum non esse pariatur reprehenderit. Dolore velit enim in laborum eu ullamco sit pariatur. Nulla aliqua cupidatat exercitation do in irure do do velit adipisicing. Eu officia mollit consectetur tempor elit exercitation nulla commodo ullamco cillum aliquip consectetur.\r\n", "registered": "2014-02-18T18:44:40-13:00", "latitude": 63.356922, "longitude": -114.842612, "tags": [ "esse", "aliquip", "pariatur", "occaecat", "consectetur", "ut", "anim" ], "friends": [ { "id": 0, "name": "Espinoza Oliver" }, { "id": 1, "name": "Rosella Douglas" }, { "id": 2, "name": "Rosanna Brewer" } ], "greeting": "Hello, Alisa Powers! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2373e926e96e87936f", "index": 1979, "guid": "1ff3b074-b6b2-4abb-bc67-8f6a6dd89bdd", "isActive": false, "balance": "$1,049.52", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Luella Walsh", "gender": "female", "company": "ARCHITAX", "email": "luellawalsh@architax.com", "phone": "+1 (855) 526-3160", "address": "888 Rochester Avenue, Wyano, Kentucky, 8349", "about": "Enim labore do nulla velit ex aute dolor. Voluptate adipisicing cillum eiusmod minim culpa ullamco aliquip aute dolor cillum commodo sit elit. Ea ad cupidatat id adipisicing cillum minim sunt fugiat exercitation. Et consequat magna cupidatat esse minim officia ullamco velit tempor tempor pariatur dolore excepteur. Et incididunt sint ad et qui Lorem laboris elit esse eiusmod. Eiusmod consequat sit pariatur enim. Amet eiusmod sit non exercitation laboris.\r\n", "registered": "2014-05-02T08:34:06-12:00", "latitude": -42.134122, "longitude": -111.355947, "tags": [ "dolor", "duis", "voluptate", "nulla", "et", "incididunt", "velit" ], "friends": [ { "id": 0, "name": "Velasquez Herring" }, { "id": 1, "name": "Chang Chaney" }, { "id": 2, "name": "Jamie Hunter" } ], "greeting": "Hello, Luella Walsh! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea233385baca75acabd2", "index": 1980, "guid": "53e47413-4a7a-4d51-ab82-147f3730b528", "isActive": true, "balance": "$3,529.75", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Carney Cantrell", "gender": "male", "company": "KIDSTOCK", "email": "carneycantrell@kidstock.com", "phone": "+1 (843) 448-2178", "address": "164 Ashford Street, Hoehne, Connecticut, 3110", "about": "Lorem Lorem ex ullamco dolore irure aute amet aute duis nisi. Consectetur velit elit nisi ea incididunt est Lorem. Lorem commodo occaecat aute enim cillum nulla dolore ipsum voluptate velit cupidatat laborum. Enim in qui sint aute. Ad dolor aute veniam aliqua aliqua ipsum mollit cillum labore minim consectetur. Lorem aute irure aliqua proident velit nulla aliquip consequat adipisicing aliquip deserunt. Pariatur proident quis ut nostrud sint excepteur.\r\n", "registered": "2014-09-20T17:50:21-12:00", "latitude": -52.496306, "longitude": -58.800705, "tags": [ "occaecat", "veniam", "dolor", "mollit", "in", "culpa", "adipisicing" ], "friends": [ { "id": 0, "name": "Mollie Monroe" }, { "id": 1, "name": "Glenn Harper" }, { "id": 2, "name": "Audrey Stout" } ], "greeting": "Hello, Carney Cantrell! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2387c8aed356361a0f", "index": 1981, "guid": "24420409-00a2-4d37-a3b7-1fd4ab458a01", "isActive": false, "balance": "$3,653.57", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Dolores Glenn", "gender": "female", "company": "NIPAZ", "email": "doloresglenn@nipaz.com", "phone": "+1 (973) 476-3499", "address": "776 Bleecker Street, Finzel, Mississippi, 6519", "about": "Enim elit velit tempor fugiat aliqua adipisicing exercitation adipisicing magna fugiat. Adipisicing pariatur officia exercitation incididunt magna. Tempor sunt et consectetur commodo voluptate est occaecat pariatur nisi adipisicing sunt nisi laboris. Laboris consequat excepteur exercitation enim. Aliquip incididunt qui irure nostrud in fugiat consequat. Irure magna amet laboris id incididunt id nulla sunt.\r\n", "registered": "2014-04-18T11:40:14-12:00", "latitude": -0.598787, "longitude": 18.150555, "tags": [ "sit", "adipisicing", "pariatur", "ullamco", "consectetur", "excepteur", "anim" ], "friends": [ { "id": 0, "name": "Cardenas Goff" }, { "id": 1, "name": "Fernandez Cannon" }, { "id": 2, "name": "Robles Buchanan" } ], "greeting": "Hello, Dolores Glenn! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23a54b57829098930a", "index": 1982, "guid": "3e9ee980-35d7-4664-a875-8b7f0a4020f9", "isActive": false, "balance": "$2,021.23", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Kristie Trujillo", "gender": "female", "company": "ZENTIX", "email": "kristietrujillo@zentix.com", "phone": "+1 (990) 535-3386", "address": "768 Seba Avenue, Noblestown, Washington, 6210", "about": "Tempor sint aliquip adipisicing irure velit veniam dolor pariatur sit dolor nostrud nostrud in est. Officia sint dolore laborum sint non tempor duis nulla. Duis consectetur laborum eiusmod sint culpa ipsum ut officia voluptate dolor. Voluptate nostrud nostrud occaecat reprehenderit.\r\n", "registered": "2014-09-03T04:27:44-12:00", "latitude": 42.395917, "longitude": -34.735982, "tags": [ "ex", "deserunt", "est", "ex", "id", "id", "voluptate" ], "friends": [ { "id": 0, "name": "Karen Pittman" }, { "id": 1, "name": "Rosemarie Crane" }, { "id": 2, "name": "Nash Pruitt" } ], "greeting": "Hello, Kristie Trujillo! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2370ca68575e55b278", "index": 1983, "guid": "274d1352-d688-4445-b53b-74cf1dd04fbb", "isActive": false, "balance": "$1,623.38", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Lesley Holmes", "gender": "female", "company": "VOLAX", "email": "lesleyholmes@volax.com", "phone": "+1 (982) 429-3659", "address": "663 Kensington Street, Warsaw, Tennessee, 273", "about": "Nisi excepteur ex commodo Lorem. Nisi eu anim id sunt quis exercitation ea commodo nisi incididunt ipsum cupidatat adipisicing aute. Anim ad magna tempor labore id Lorem anim aliqua eu officia tempor occaecat sunt. Lorem officia aliqua nisi dolor. Nisi veniam amet non reprehenderit ut do eiusmod Lorem.\r\n", "registered": "2014-06-20T10:54:01-12:00", "latitude": -70.085576, "longitude": 54.671555, "tags": [ "est", "dolor", "sint", "do", "velit", "veniam", "dolor" ], "friends": [ { "id": 0, "name": "Mann Bryant" }, { "id": 1, "name": "Donaldson Cummings" }, { "id": 2, "name": "Gabrielle Gilmore" } ], "greeting": "Hello, Lesley Holmes! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea232574da1b0fdb0d16", "index": 1984, "guid": "e74c5e60-485e-4e46-9113-4d672bd36ddf", "isActive": false, "balance": "$3,337.68", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Mckay Powell", "gender": "male", "company": "INSURETY", "email": "mckaypowell@insurety.com", "phone": "+1 (873) 503-3406", "address": "854 Channel Avenue, Deputy, Alabama, 5815", "about": "Nostrud cillum nostrud consectetur ipsum duis. Enim magna deserunt minim incididunt esse nulla reprehenderit ex quis Lorem sint nostrud consequat. Cupidatat minim magna est in veniam consectetur. Quis dolore ea minim aute et dolore aute. Magna sint reprehenderit anim qui consectetur Lorem in tempor officia magna commodo. Quis est ipsum cupidatat irure nulla sunt.\r\n", "registered": "2014-01-28T14:10:43-13:00", "latitude": 26.125201, "longitude": -27.858514, "tags": [ "id", "quis", "laboris", "id", "laborum", "dolore", "ea" ], "friends": [ { "id": 0, "name": "Sexton Silva" }, { "id": 1, "name": "Ramos Wong" }, { "id": 2, "name": "Meagan Hood" } ], "greeting": "Hello, Mckay Powell! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2341fafeef6fea21e4", "index": 1985, "guid": "f07e07ed-738d-4e48-af71-f78aa65325e4", "isActive": false, "balance": "$2,716.14", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Deanne Herrera", "gender": "female", "company": "SQUISH", "email": "deanneherrera@squish.com", "phone": "+1 (889) 519-3131", "address": "733 Visitation Place, Soham, Ohio, 7842", "about": "Quis dolor excepteur officia aute eu magna fugiat. Deserunt dolor Lorem commodo officia excepteur non qui consequat Lorem laborum elit fugiat. Excepteur laborum exercitation magna ut reprehenderit.\r\n", "registered": "2014-04-25T18:41:45-12:00", "latitude": -74.731673, "longitude": -143.170212, "tags": [ "dolore", "elit", "occaecat", "nisi", "sunt", "cupidatat", "excepteur" ], "friends": [ { "id": 0, "name": "Pam Hanson" }, { "id": 1, "name": "Buckley Hammond" }, { "id": 2, "name": "Sharpe Burnett" } ], "greeting": "Hello, Deanne Herrera! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23e6eed73faf87eb30", "index": 1986, "guid": "f7e99f3d-4912-407b-a266-47304719c379", "isActive": false, "balance": "$2,817.56", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Mari Barr", "gender": "female", "company": "IRACK", "email": "maribarr@irack.com", "phone": "+1 (809) 576-2190", "address": "991 Williams Avenue, Richmond, Hawaii, 8118", "about": "Do laborum voluptate dolore est Lorem excepteur dolore Lorem id consectetur deserunt. Quis anim duis id ea sit laborum officia consectetur eu non laborum. Sit adipisicing esse exercitation est proident ut excepteur pariatur cupidatat sint irure mollit. Magna sit id deserunt pariatur amet occaecat laborum Lorem quis consectetur sit. Laboris eiusmod consectetur laboris duis et fugiat.\r\n", "registered": "2014-04-20T17:43:28-12:00", "latitude": -67.780247, "longitude": 7.684956, "tags": [ "laborum", "ad", "cupidatat", "occaecat", "cupidatat", "proident", "fugiat" ], "friends": [ { "id": 0, "name": "Carmella Bradley" }, { "id": 1, "name": "Marie Howard" }, { "id": 2, "name": "Hines Webster" } ], "greeting": "Hello, Mari Barr! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23735ed5cab0ab10be", "index": 1987, "guid": "1dc26ab9-8b04-4321-8f8c-461da7816456", "isActive": false, "balance": "$3,960.46", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Marsha Weber", "gender": "female", "company": "GENMEX", "email": "marshaweber@genmex.com", "phone": "+1 (918) 434-2430", "address": "162 Harbor Court, Cherokee, New Mexico, 3399", "about": "Velit do aliquip consectetur laboris non adipisicing non ea officia laboris ullamco id in. Esse ea enim non reprehenderit id consectetur pariatur exercitation et Lorem. Minim id consequat occaecat consequat. Officia commodo anim est ut velit eu nisi officia magna officia. Fugiat eiusmod duis sunt fugiat laborum ipsum irure. Mollit aliquip aliquip consequat occaecat labore dolore sint aute do mollit ullamco.\r\n", "registered": "2014-09-11T01:12:48-12:00", "latitude": 31.424474, "longitude": 104.148776, "tags": [ "tempor", "in", "elit", "sint", "non", "ullamco", "quis" ], "friends": [ { "id": 0, "name": "Butler Faulkner" }, { "id": 1, "name": "Odessa Richardson" }, { "id": 2, "name": "Marylou Hess" } ], "greeting": "Hello, Marsha Weber! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23b2373c4fd80f5871", "index": 1988, "guid": "b3b4ee73-5666-4b19-92ab-7843c8fd69a6", "isActive": true, "balance": "$1,960.00", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Jannie Olson", "gender": "female", "company": "STEELTAB", "email": "jannieolson@steeltab.com", "phone": "+1 (947) 461-3826", "address": "732 Hanson Place, Linwood, Maryland, 9674", "about": "Sit nisi elit magna cupidatat exercitation. Ipsum est aute proident anim Lorem irure excepteur nostrud aliquip quis aute nisi veniam et. Incididunt dolor nisi consectetur in ex eu nisi cupidatat. Incididunt exercitation est irure cupidatat irure aliqua. Non irure esse velit ex. Nostrud deserunt qui dolor exercitation deserunt officia culpa laborum consectetur. Voluptate minim exercitation adipisicing minim elit culpa incididunt fugiat amet.\r\n", "registered": "2014-05-24T14:58:28-12:00", "latitude": 36.432101, "longitude": 169.325497, "tags": [ "consequat", "duis", "magna", "pariatur", "exercitation", "esse", "culpa" ], "friends": [ { "id": 0, "name": "Garrett Ferrell" }, { "id": 1, "name": "Beasley Blevins" }, { "id": 2, "name": "Saundra Andrews" } ], "greeting": "Hello, Jannie Olson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23edbddd85a6421f73", "index": 1989, "guid": "e8ae4a74-4548-41ac-8b51-39d05ebc47b6", "isActive": true, "balance": "$2,806.10", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Rachelle Campos", "gender": "female", "company": "BLURRYBUS", "email": "rachellecampos@blurrybus.com", "phone": "+1 (979) 434-2225", "address": "202 Tabor Court, Kieler, Alaska, 1996", "about": "Non exercitation minim proident deserunt Lorem fugiat. Minim minim cupidatat ipsum voluptate commodo in laborum ullamco dolor reprehenderit elit. Proident irure officia enim laborum laboris minim aliqua fugiat. Consequat consequat id velit incididunt dolore anim et non id consequat elit. Anim mollit laboris veniam tempor reprehenderit cupidatat labore qui aliquip aliquip enim laboris sit.\r\n", "registered": "2014-08-08T07:34:31-12:00", "latitude": 12.280664, "longitude": -53.405254, "tags": [ "minim", "nostrud", "incididunt", "occaecat", "velit", "id", "irure" ], "friends": [ { "id": 0, "name": "Allison Dean" }, { "id": 1, "name": "Jenifer Cotton" }, { "id": 2, "name": "Shepherd Winters" } ], "greeting": "Hello, Rachelle Campos! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23a9e504c2bfb631cc", "index": 1990, "guid": "11d7e808-d688-4183-96ba-1154f0ba40da", "isActive": true, "balance": "$1,490.43", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Ilene Payne", "gender": "female", "company": "PIVITOL", "email": "ilenepayne@pivitol.com", "phone": "+1 (948) 556-3412", "address": "854 Amboy Street, Bellfountain, Arizona, 4764", "about": "Tempor sint voluptate do cillum minim duis aliqua sit eiusmod excepteur id. Cupidatat eu officia do aliqua Lorem do voluptate proident officia do duis. Magna ad et adipisicing enim eu culpa aliquip laboris.\r\n", "registered": "2014-08-10T23:02:31-12:00", "latitude": -39.641252, "longitude": -11.405147, "tags": [ "exercitation", "excepteur", "dolor", "ad", "irure", "reprehenderit", "nisi" ], "friends": [ { "id": 0, "name": "Hattie Puckett" }, { "id": 1, "name": "Antonia Finley" }, { "id": 2, "name": "Meghan Conrad" } ], "greeting": "Hello, Ilene Payne! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2300321fa657da487b", "index": 1991, "guid": "ae1fa902-7404-40e4-9a12-e57594767292", "isActive": false, "balance": "$2,392.52", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Trina Allison", "gender": "female", "company": "PROFLEX", "email": "trinaallison@proflex.com", "phone": "+1 (861) 471-2445", "address": "960 Ruby Street, National, Federated States Of Micronesia, 9534", "about": "Eu occaecat cillum dolore voluptate eiusmod. Nulla consectetur deserunt laborum cupidatat sunt eiusmod amet ullamco aliqua exercitation qui ex est. Veniam ea consectetur sunt mollit laboris sunt laborum. Lorem officia ad excepteur sunt incididunt labore nostrud culpa minim fugiat et. Nulla culpa mollit commodo commodo consectetur sit excepteur.\r\n", "registered": "2014-01-07T14:45:42-13:00", "latitude": 69.154759, "longitude": 84.199614, "tags": [ "irure", "dolore", "cupidatat", "duis", "cupidatat", "deserunt", "nostrud" ], "friends": [ { "id": 0, "name": "Carson Dennis" }, { "id": 1, "name": "Peck Bright" }, { "id": 2, "name": "Rosie Freeman" } ], "greeting": "Hello, Trina Allison! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2355e96d1890f45086", "index": 1992, "guid": "4407522d-443e-4b35-bbc2-85108d61a045", "isActive": true, "balance": "$2,868.92", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Norma Vargas", "gender": "female", "company": "GRONK", "email": "normavargas@gronk.com", "phone": "+1 (979) 481-3892", "address": "299 Bancroft Place, Neibert, Oklahoma, 8837", "about": "Sunt eiusmod nostrud veniam quis minim do adipisicing. Adipisicing tempor aliqua qui ad aute velit aute ipsum sint proident sunt enim dolore. Ut deserunt fugiat consectetur cillum voluptate ex ut qui fugiat duis. Consequat deserunt deserunt commodo occaecat veniam consectetur enim veniam in Lorem sunt. Lorem quis anim laboris fugiat ut sint aute minim cillum sit aliquip occaecat tempor adipisicing.\r\n", "registered": "2014-07-19T11:22:06-12:00", "latitude": 47.986506, "longitude": -165.276957, "tags": [ "exercitation", "aute", "sunt", "consectetur", "cupidatat", "incididunt", "mollit" ], "friends": [ { "id": 0, "name": "Manning Fuentes" }, { "id": 1, "name": "Pruitt Giles" }, { "id": 2, "name": "Felicia Singleton" } ], "greeting": "Hello, Norma Vargas! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23a2e63786e3a01b82", "index": 1993, "guid": "926935fe-7e18-4183-89c4-6646ca763a48", "isActive": false, "balance": "$3,150.90", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Workman Farmer", "gender": "male", "company": "VISALIA", "email": "workmanfarmer@visalia.com", "phone": "+1 (886) 591-2803", "address": "667 Opal Court, Canby, Michigan, 8364", "about": "Eiusmod mollit elit velit exercitation reprehenderit amet reprehenderit officia cupidatat anim ad. Enim sint elit ipsum adipisicing dolore laborum ipsum ut irure. Anim laboris magna dolore culpa elit incididunt laboris esse tempor sunt ullamco. Nisi nulla enim id ex duis exercitation officia.\r\n", "registered": "2014-04-10T21:12:51-12:00", "latitude": -20.43211, "longitude": -124.053064, "tags": [ "minim", "consectetur", "aliqua", "esse", "sint", "nulla", "ullamco" ], "friends": [ { "id": 0, "name": "Robert Lewis" }, { "id": 1, "name": "Bauer Castaneda" }, { "id": 2, "name": "Bryan Burgess" } ], "greeting": "Hello, Workman Farmer! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23fa63a9ac21c0531d", "index": 1994, "guid": "3e41295f-9ead-475c-9cb8-1d073a123eae", "isActive": true, "balance": "$2,949.46", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Burns Brooks", "gender": "male", "company": "DENTREX", "email": "burnsbrooks@dentrex.com", "phone": "+1 (926) 476-3561", "address": "657 Holt Court, Norfolk, Kansas, 4236", "about": "Nisi adipisicing veniam fugiat voluptate veniam. Laboris anim exercitation sit voluptate cillum. Reprehenderit ipsum incididunt ad do elit dolore id. In est laboris ex qui ea sint quis. Ut proident duis incididunt reprehenderit occaecat excepteur magna occaecat tempor mollit esse aliquip. Id labore aute consequat deserunt exercitation qui deserunt fugiat. Fugiat ex nostrud eu laboris elit consequat enim laboris cupidatat reprehenderit qui est.\r\n", "registered": "2014-05-24T00:06:46-12:00", "latitude": -67.600024, "longitude": 165.110914, "tags": [ "commodo", "eiusmod", "ipsum", "excepteur", "adipisicing", "ea", "laborum" ], "friends": [ { "id": 0, "name": "Hurst Boyer" }, { "id": 1, "name": "Sondra Cortez" }, { "id": 2, "name": "Blanchard Beck" } ], "greeting": "Hello, Burns Brooks! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2399925d9003fa9b56", "index": 1995, "guid": "c693beff-ff90-4de2-8d03-b4018dddd492", "isActive": false, "balance": "$2,620.25", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Cash Hurley", "gender": "male", "company": "UXMOX", "email": "cashhurley@uxmox.com", "phone": "+1 (915) 580-2098", "address": "926 Ridge Court, Kohatk, South Dakota, 1698", "about": "Commodo incididunt magna sit deserunt voluptate. Amet sint fugiat do Lorem. Ipsum pariatur ex fugiat sint cillum labore irure reprehenderit adipisicing. Veniam culpa excepteur duis duis ullamco velit aliquip qui ex in culpa culpa in. Adipisicing duis exercitation ut sunt non incididunt ex et non. Laboris magna sit voluptate ipsum irure deserunt voluptate voluptate Lorem.\r\n", "registered": "2014-03-29T06:21:49-13:00", "latitude": 63.924853, "longitude": 157.652815, "tags": [ "non", "ex", "sint", "occaecat", "ea", "quis", "ut" ], "friends": [ { "id": 0, "name": "Gallagher Macias" }, { "id": 1, "name": "Olivia Buckner" }, { "id": 2, "name": "Rich Cooke" } ], "greeting": "Hello, Cash Hurley! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23306bfa6159c1fc7c", "index": 1996, "guid": "4c0e4359-eced-4921-9cd5-cd870f4e2404", "isActive": true, "balance": "$1,375.52", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Etta Garrett", "gender": "female", "company": "ECOLIGHT", "email": "ettagarrett@ecolight.com", "phone": "+1 (953) 432-3135", "address": "389 Barwell Terrace, Sylvanite, West Virginia, 3585", "about": "Lorem occaecat labore occaecat consequat ea excepteur officia fugiat. Minim magna cupidatat exercitation ut Lorem id aliquip nulla commodo cupidatat sit velit elit. Eiusmod pariatur exercitation labore eiusmod veniam irure incididunt irure commodo sunt pariatur exercitation elit. Laborum in qui mollit voluptate dolor quis. Nisi mollit ad et consectetur in sint incididunt aliqua cupidatat laboris laborum ad dolor anim.\r\n", "registered": "2014-09-08T04:42:45-12:00", "latitude": -63.030297, "longitude": -167.754777, "tags": [ "ipsum", "anim", "mollit", "officia", "eiusmod", "sunt", "ad" ], "friends": [ { "id": 0, "name": "Mattie Mcleod" }, { "id": 1, "name": "Anastasia Mcgee" }, { "id": 2, "name": "Dorothy Horne" } ], "greeting": "Hello, Etta Garrett! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23a2dfc1db0123690c", "index": 1997, "guid": "1fc5c0f8-066e-4d4a-a539-58a5cb66626d", "isActive": true, "balance": "$3,449.73", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Joyce Kinney", "gender": "male", "company": "FUTURIS", "email": "joycekinney@futuris.com", "phone": "+1 (827) 496-2408", "address": "358 Arlington Avenue, Esmont, Texas, 2028", "about": "Non consectetur qui deserunt nulla reprehenderit fugiat. Irure ut consequat nisi mollit do velit sint. Fugiat commodo in aute fugiat ea ad dolore dolore non aute consectetur fugiat sint est. Proident nostrud id amet nisi occaecat. Ut culpa aliquip eiusmod irure aliquip adipisicing sint laborum velit Lorem.\r\n", "registered": "2014-03-01T02:37:10-13:00", "latitude": -13.762597, "longitude": -44.742813, "tags": [ "eiusmod", "tempor", "ipsum", "est", "id", "aliquip", "elit" ], "friends": [ { "id": 0, "name": "James Witt" }, { "id": 1, "name": "Wade Perkins" }, { "id": 2, "name": "Mendez Merrill" } ], "greeting": "Hello, Joyce Kinney! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23af587808628b2409", "index": 1998, "guid": "84c044d0-6af2-47d9-ae75-37edc8c88efa", "isActive": false, "balance": "$2,613.78", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Contreras Cherry", "gender": "male", "company": "DIGIPRINT", "email": "contrerascherry@digiprint.com", "phone": "+1 (986) 489-3582", "address": "945 Montauk Avenue, Wyoming, Oregon, 581", "about": "Enim aliqua irure duis do eiusmod mollit cillum. Magna cillum id reprehenderit elit aute aliquip elit veniam incididunt labore id reprehenderit. Mollit dolor esse duis et duis nulla fugiat sunt ipsum ut.\r\n", "registered": "2014-08-10T13:14:21-12:00", "latitude": -51.067033, "longitude": 21.838281, "tags": [ "sit", "sunt", "anim", "in", "sunt", "incididunt", "ad" ], "friends": [ { "id": 0, "name": "Vanessa Lucas" }, { "id": 1, "name": "Puckett Hancock" }, { "id": 2, "name": "Mccall Wilkerson" } ], "greeting": "Hello, Contreras Cherry! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2365d72ccc0308aa01", "index": 1999, "guid": "bf401e6a-6278-48fd-af85-030ab3002e30", "isActive": true, "balance": "$2,101.45", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Lina Zamora", "gender": "female", "company": "SHADEASE", "email": "linazamora@shadease.com", "phone": "+1 (806) 574-2563", "address": "293 Noel Avenue, Goldfield, Nevada, 3485", "about": "Eu occaecat nulla est esse incididunt culpa officia fugiat exercitation enim et aliqua. Aliquip cillum irure labore sunt irure proident. Fugiat velit duis ipsum sunt et ex. Aliquip ex id veniam laborum amet irure veniam consequat.\r\n", "registered": "2014-03-10T08:54:28-13:00", "latitude": -66.455843, "longitude": -126.065143, "tags": [ "incididunt", "ex", "dolore", "deserunt", "ipsum", "nisi", "anim" ], "friends": [ { "id": 0, "name": "Stafford Mack" }, { "id": 1, "name": "Allison Oneill" }, { "id": 2, "name": "Keller Lawson" } ], "greeting": "Hello, Lina Zamora! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2336a81395d3a7f4b9", "index": 2000, "guid": "c3843a0a-3d71-45d3-932f-7401a15255b9", "isActive": false, "balance": "$2,060.35", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Holmes Thomas", "gender": "male", "company": "OPTIQUE", "email": "holmesthomas@optique.com", "phone": "+1 (947) 452-3072", "address": "827 Hausman Street, Yardville, Minnesota, 2156", "about": "Proident laboris culpa cupidatat laborum pariatur laboris enim pariatur nostrud. Enim proident quis id non id ut sunt ex. Qui sunt laborum aute mollit dolore ea tempor. Dolor ex aute voluptate laborum amet culpa dolor magna culpa aliqua. Sint cupidatat proident cillum tempor excepteur aliqua eiusmod pariatur.\r\n", "registered": "2014-06-11T02:42:55-12:00", "latitude": -5.747446, "longitude": -147.31135, "tags": [ "commodo", "ut", "incididunt", "labore", "fugiat", "velit", "ipsum" ], "friends": [ { "id": 0, "name": "Lou Stein" }, { "id": 1, "name": "Britt Jacobs" }, { "id": 2, "name": "Acosta Malone" } ], "greeting": "Hello, Holmes Thomas! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2365e49eafd30c9cbd", "index": 2001, "guid": "6b1a9948-4663-49f1-9d79-ea15cab804c3", "isActive": false, "balance": "$1,290.30", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Murray Lynch", "gender": "male", "company": "LEXICONDO", "email": "murraylynch@lexicondo.com", "phone": "+1 (954) 457-3332", "address": "956 Krier Place, Evergreen, Missouri, 5678", "about": "Enim amet sit Lorem ut aliqua voluptate ea quis irure minim cupidatat sunt enim. Aute irure officia ullamco id. Sunt commodo qui ut velit ea aute reprehenderit laboris aliquip. Lorem sint minim excepteur aliquip laborum excepteur aliquip.\r\n", "registered": "2014-01-23T11:49:54-13:00", "latitude": 77.593833, "longitude": 27.453593, "tags": [ "aliqua", "nulla", "duis", "dolore", "ut", "minim", "eiusmod" ], "friends": [ { "id": 0, "name": "Lorie Hendrix" }, { "id": 1, "name": "Allyson Meyer" }, { "id": 2, "name": "Cross Walton" } ], "greeting": "Hello, Murray Lynch! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea230311e6d0ca446306", "index": 2002, "guid": "9af51a2d-4259-4b5d-8bfe-7b3bbefdb6e4", "isActive": true, "balance": "$2,690.09", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Patsy Stanley", "gender": "female", "company": "POLARIUM", "email": "patsystanley@polarium.com", "phone": "+1 (956) 419-3296", "address": "145 Clermont Avenue, Wanship, Rhode Island, 1631", "about": "Proident occaecat quis adipisicing nulla ex incididunt ullamco ut fugiat mollit aute do ipsum. Elit sunt adipisicing elit irure mollit magna elit magna eu excepteur Lorem veniam. Magna consectetur excepteur incididunt laboris. Et consequat ex eiusmod anim ipsum laboris sint excepteur nisi. Sunt sint ut reprehenderit et elit excepteur dolor eu reprehenderit sunt aliqua esse sint. Ea duis ea qui incididunt pariatur labore. Ex consectetur anim duis incididunt esse in minim ullamco ea officia ut fugiat amet ea.\r\n", "registered": "2014-08-31T08:07:58-12:00", "latitude": 62.280938, "longitude": -149.32095, "tags": [ "culpa", "ex", "nulla", "quis", "est", "mollit", "eiusmod" ], "friends": [ { "id": 0, "name": "Victoria Collins" }, { "id": 1, "name": "Noel Sosa" }, { "id": 2, "name": "Martin Sampson" } ], "greeting": "Hello, Patsy Stanley! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23928c198997734178", "index": 2003, "guid": "d4364a9e-dec7-44d9-86de-cc9206105f3d", "isActive": false, "balance": "$2,724.48", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Dorsey Cain", "gender": "male", "company": "COLUMELLA", "email": "dorseycain@columella.com", "phone": "+1 (800) 533-3972", "address": "371 Harway Avenue, Vowinckel, Florida, 2546", "about": "Id ea adipisicing anim ad tempor dolor ullamco. Aliquip in non nisi aute sit ipsum dolore excepteur amet deserunt qui Lorem. Anim aliqua ut adipisicing laboris officia veniam enim duis deserunt do. Occaecat duis aute ad proident velit elit mollit. Aute anim veniam excepteur exercitation.\r\n", "registered": "2014-04-22T17:46:34-12:00", "latitude": 64.82245, "longitude": -129.942514, "tags": [ "sit", "quis", "voluptate", "reprehenderit", "sit", "magna", "consectetur" ], "friends": [ { "id": 0, "name": "Schultz Sawyer" }, { "id": 1, "name": "Amalia Wilder" }, { "id": 2, "name": "Fern Mccray" } ], "greeting": "Hello, Dorsey Cain! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea235655350dfb902b2c", "index": 2004, "guid": "7b77abb2-697a-47c4-94fd-75e56947906a", "isActive": true, "balance": "$2,063.18", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Katharine Sanford", "gender": "female", "company": "GEEKFARM", "email": "katharinesanford@geekfarm.com", "phone": "+1 (932) 437-2346", "address": "819 Howard Alley, Sabillasville, North Carolina, 1583", "about": "Qui ullamco nulla sunt ullamco aute exercitation. Ullamco proident qui ad officia non ullamco eiusmod voluptate irure tempor sint aliqua laboris. Nostrud ex nostrud in eiusmod sit reprehenderit laboris. Magna do cupidatat ad amet consectetur Lorem velit in dolor officia consequat eiusmod qui est.\r\n", "registered": "2014-08-09T18:46:19-12:00", "latitude": -25.016824, "longitude": 153.095019, "tags": [ "ex", "qui", "consequat", "adipisicing", "exercitation", "adipisicing", "ut" ], "friends": [ { "id": 0, "name": "Hernandez Cardenas" }, { "id": 1, "name": "Lottie Morrow" }, { "id": 2, "name": "Lydia Livingston" } ], "greeting": "Hello, Katharine Sanford! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23bbdba6c0ccfea9c3", "index": 2005, "guid": "b06a1251-f0b1-4f07-89fb-ccf8b7c26359", "isActive": false, "balance": "$3,750.10", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Colette Hamilton", "gender": "female", "company": "SLOGANAUT", "email": "colettehamilton@sloganaut.com", "phone": "+1 (959) 544-2868", "address": "868 Doughty Street, Stockwell, New Hampshire, 9887", "about": "Minim irure proident non occaecat. Incididunt proident occaecat id aliqua culpa et amet cillum nisi cupidatat. Do fugiat voluptate occaecat ea sit laboris sit veniam qui aute quis cupidatat anim esse. Ex adipisicing consequat magna eiusmod id ad aliqua dolor ad elit incididunt non ex proident. Excepteur labore irure reprehenderit aute proident commodo deserunt dolore labore eu minim in est labore. Reprehenderit eiusmod sunt excepteur fugiat veniam aliqua. Officia enim irure ullamco proident ut pariatur nulla esse ipsum dolor enim ex aliquip.\r\n", "registered": "2014-07-24T00:37:46-12:00", "latitude": 70.773559, "longitude": -119.390539, "tags": [ "in", "sint", "labore", "tempor", "aliqua", "voluptate", "ex" ], "friends": [ { "id": 0, "name": "Marina Shepherd" }, { "id": 1, "name": "Underwood Clayton" }, { "id": 2, "name": "Susanne Atkinson" } ], "greeting": "Hello, Colette Hamilton! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23cfb44d9120d7236e", "index": 2006, "guid": "c22d99c1-2918-4ad1-a1a7-b6a554abc301", "isActive": false, "balance": "$2,280.31", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Wise Clay", "gender": "male", "company": "XLEEN", "email": "wiseclay@xleen.com", "phone": "+1 (901) 543-2254", "address": "968 Irvington Place, Zarephath, Arkansas, 5999", "about": "Anim tempor sit sint dolor esse cillum. Tempor ipsum occaecat adipisicing sunt id proident ut qui labore. Deserunt aliqua incididunt magna excepteur ut est. Sint dolore amet minim adipisicing non et veniam.\r\n", "registered": "2014-05-22T18:30:09-12:00", "latitude": -44.891054, "longitude": -81.733737, "tags": [ "mollit", "do", "in", "labore", "mollit", "laborum", "nisi" ], "friends": [ { "id": 0, "name": "Ellen Whitehead" }, { "id": 1, "name": "Gilbert Rush" }, { "id": 2, "name": "Harriett Hayden" } ], "greeting": "Hello, Wise Clay! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23d9bfd9d0633a2e50", "index": 2007, "guid": "78c5e7e8-ebfd-4c7c-a3ed-e3d898d734d9", "isActive": false, "balance": "$2,219.30", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Roberts Wooten", "gender": "male", "company": "CABLAM", "email": "robertswooten@cablam.com", "phone": "+1 (968) 577-2466", "address": "794 Oakland Place, Wintersburg, Iowa, 3863", "about": "Lorem laborum aute sint consectetur ad enim occaecat ut. Eu est velit Lorem consectetur cillum velit aute do id. Incididunt aute ex nostrud nisi excepteur elit id sit laborum non. Labore consequat cupidatat cillum est dolore mollit qui nisi minim quis. Nulla sint id ad duis incididunt duis exercitation enim commodo ex elit. Consectetur eu nulla deserunt voluptate fugiat duis cupidatat anim ea sint quis occaecat.\r\n", "registered": "2014-04-26T10:33:18-12:00", "latitude": 0.781516, "longitude": 110.580358, "tags": [ "esse", "in", "labore", "minim", "duis", "ut", "adipisicing" ], "friends": [ { "id": 0, "name": "Goodwin Blankenship" }, { "id": 1, "name": "Sharp Kent" }, { "id": 2, "name": "Perez Ramirez" } ], "greeting": "Hello, Roberts Wooten! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23b0c92e881fd47350", "index": 2008, "guid": "ca4254f9-9019-4c61-8c7f-1e1b19c1d805", "isActive": false, "balance": "$3,175.39", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Penelope Hardy", "gender": "female", "company": "TERRAGO", "email": "penelopehardy@terrago.com", "phone": "+1 (892) 414-2136", "address": "530 Sharon Street, Cartwright, Nebraska, 120", "about": "Eiusmod excepteur commodo consequat et fugiat qui occaecat irure ut commodo sint in. Laborum anim officia laborum cupidatat Lorem laboris esse cillum veniam cillum dolor amet. Laboris dolore labore duis fugiat qui et pariatur ea quis. Labore magna ullamco veniam laborum excepteur est dolor nostrud non eiusmod enim labore veniam amet. Sint laboris consectetur tempor magna consequat irure nisi exercitation occaecat anim. Aute duis non irure ut culpa.\r\n", "registered": "2014-04-19T16:58:25-12:00", "latitude": -49.753681, "longitude": 79.21375, "tags": [ "cupidatat", "labore", "laboris", "minim", "id", "in", "sint" ], "friends": [ { "id": 0, "name": "Strickland Ross" }, { "id": 1, "name": "Tammy Wade" }, { "id": 2, "name": "Leah Cunningham" } ], "greeting": "Hello, Penelope Hardy! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea237aaa220cb1aa6484", "index": 2009, "guid": "a49a762d-5c5a-4ff5-8e86-c93dda0a0397", "isActive": true, "balance": "$1,499.55", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Hampton Noble", "gender": "male", "company": "BRISTO", "email": "hamptonnoble@bristo.com", "phone": "+1 (844) 423-2511", "address": "442 Ainslie Street, Savannah, District Of Columbia, 3389", "about": "Eu exercitation proident dolor reprehenderit velit dolor qui ex est ut commodo. Voluptate ullamco elit elit eu excepteur Lorem exercitation est consectetur ullamco. Consequat anim eu eiusmod ipsum consectetur cupidatat. Voluptate in velit sit magna consequat enim duis proident. Consequat commodo ex minim non amet officia amet exercitation quis enim dolor nisi consectetur. Non aliquip eu Lorem officia deserunt ea eu ullamco esse velit nostrud irure amet qui. Eiusmod mollit id nisi quis.\r\n", "registered": "2014-05-16T18:09:47-12:00", "latitude": 38.593277, "longitude": -37.272772, "tags": [ "laborum", "in", "laboris", "commodo", "velit", "cupidatat", "id" ], "friends": [ { "id": 0, "name": "Albert Montgomery" }, { "id": 1, "name": "Flores Tran" }, { "id": 2, "name": "Ebony Valdez" } ], "greeting": "Hello, Hampton Noble! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea235197908acb9423ea", "index": 2010, "guid": "57532668-5a99-4052-90b1-46e6d322f639", "isActive": false, "balance": "$3,603.04", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Amanda Hebert", "gender": "female", "company": "FORTEAN", "email": "amandahebert@fortean.com", "phone": "+1 (951) 408-3065", "address": "405 Woodhull Street, Sterling, New Jersey, 9503", "about": "Consequat est id aliquip non consectetur reprehenderit. Lorem est ullamco consequat labore incididunt aute ea commodo in pariatur. Eiusmod non deserunt Lorem magna. Elit aliqua excepteur voluptate irure aliqua ipsum aliqua culpa. Sint laboris enim consequat do qui non non occaecat ut et consequat quis. Ad duis nulla excepteur occaecat veniam duis pariatur irure duis magna proident.\r\n", "registered": "2014-08-13T13:23:32-12:00", "latitude": -78.400484, "longitude": 75.184684, "tags": [ "in", "nostrud", "sit", "consectetur", "aliqua", "nulla", "non" ], "friends": [ { "id": 0, "name": "Davenport Simmons" }, { "id": 1, "name": "Cathleen Fox" }, { "id": 2, "name": "Desiree Mosley" } ], "greeting": "Hello, Amanda Hebert! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea236f73667eff81a382", "index": 2011, "guid": "b277c7ab-5143-447f-b204-0fbb458e4ebe", "isActive": true, "balance": "$1,978.53", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Dotson Cole", "gender": "male", "company": "SNORUS", "email": "dotsoncole@snorus.com", "phone": "+1 (811) 435-2578", "address": "490 Adelphi Street, Tyhee, Palau, 6522", "about": "Elit et duis officia mollit aliquip sunt et. Voluptate reprehenderit tempor id voluptate enim. Dolor magna id Lorem reprehenderit minim. Minim ad proident ipsum pariatur pariatur. Aliquip aliquip cillum consequat ut ipsum. Ut nulla dolore culpa occaecat. Mollit sit ut non ipsum officia tempor nisi id irure cillum aute excepteur laborum.\r\n", "registered": "2014-05-05T03:16:55-12:00", "latitude": 7.860042, "longitude": -55.668058, "tags": [ "officia", "reprehenderit", "ea", "commodo", "incididunt", "ex", "occaecat" ], "friends": [ { "id": 0, "name": "Eloise Waters" }, { "id": 1, "name": "Kim Vega" }, { "id": 2, "name": "Williamson Madden" } ], "greeting": "Hello, Dotson Cole! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2316ab48289effcb91", "index": 2012, "guid": "fe1f9c0d-1506-4f1e-a94e-7e2c5dbe8578", "isActive": true, "balance": "$1,354.37", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Patrick Bradford", "gender": "male", "company": "CENTREXIN", "email": "patrickbradford@centrexin.com", "phone": "+1 (915) 441-2089", "address": "698 Fuller Place, Hillsboro, Puerto Rico, 2307", "about": "Mollit duis excepteur nisi esse ipsum laborum incididunt tempor fugiat sunt anim magna ex. Est ad sit in laborum nulla irure excepteur. Culpa anim dolore in esse laboris duis ad fugiat in. Aliquip proident exercitation id magna deserunt laborum.\r\n", "registered": "2014-04-13T02:25:52-12:00", "latitude": 64.076455, "longitude": -76.018419, "tags": [ "anim", "nulla", "dolore", "proident", "sint", "dolor", "consectetur" ], "friends": [ { "id": 0, "name": "Casey Slater" }, { "id": 1, "name": "Reva Maddox" }, { "id": 2, "name": "Berg Ward" } ], "greeting": "Hello, Patrick Bradford! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23ed56591bb9287272", "index": 2013, "guid": "cbb3afa1-9b15-4f1b-9e7e-7379ead3a081", "isActive": true, "balance": "$3,329.21", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Meadows Rice", "gender": "male", "company": "JASPER", "email": "meadowsrice@jasper.com", "phone": "+1 (949) 589-2487", "address": "864 Bank Street, Cade, California, 5714", "about": "Quis occaecat anim ea Lorem. Sit et do aliqua consequat mollit elit in. Nisi ad laborum voluptate cupidatat aute ex exercitation elit ut eu aute ex voluptate anim.\r\n", "registered": "2014-06-19T00:40:18-12:00", "latitude": 56.490637, "longitude": -90.865087, "tags": [ "ex", "sit", "voluptate", "non", "quis", "occaecat", "magna" ], "friends": [ { "id": 0, "name": "Downs Hendricks" }, { "id": 1, "name": "Dodson Morse" }, { "id": 2, "name": "Haley James" } ], "greeting": "Hello, Meadows Rice! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23fb48bdd8c0833bdb", "index": 2014, "guid": "ace60d9e-0161-476c-b6c3-d93c47b236fa", "isActive": true, "balance": "$2,101.69", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Beverly Griffith", "gender": "female", "company": "ZENTRY", "email": "beverlygriffith@zentry.com", "phone": "+1 (884) 450-2120", "address": "923 Dikeman Street, Goochland, Vermont, 7213", "about": "In in exercitation aliquip est reprehenderit pariatur aliqua consectetur aliquip ex. Laborum enim minim excepteur deserunt reprehenderit Lorem. Pariatur ea commodo cupidatat ad laborum adipisicing quis aliqua reprehenderit voluptate. Tempor proident nulla aute aute dolor eu nulla. Do consectetur anim consequat reprehenderit nostrud ea Lorem elit laboris quis. Laborum qui amet aute amet reprehenderit cupidatat ut id pariatur veniam eiusmod cupidatat do ea. Officia id id aliquip id duis reprehenderit labore velit consectetur ipsum sit.\r\n", "registered": "2014-08-03T09:27:39-12:00", "latitude": -76.799659, "longitude": -89.109894, "tags": [ "excepteur", "irure", "laborum", "eu", "laborum", "ullamco", "aliqua" ], "friends": [ { "id": 0, "name": "Jeri Webb" }, { "id": 1, "name": "Margery Kirk" }, { "id": 2, "name": "Glenda Rutledge" } ], "greeting": "Hello, Beverly Griffith! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea233da2a49632f4dd0f", "index": 2015, "guid": "4d63926c-20fe-4d00-8893-1bc2d9453305", "isActive": true, "balance": "$1,614.11", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Benita Baker", "gender": "female", "company": "ACRODANCE", "email": "benitabaker@acrodance.com", "phone": "+1 (803) 480-3336", "address": "897 Borinquen Pl, Leroy, Indiana, 4447", "about": "Sit cupidatat et eu duis nisi eu ut. Minim culpa esse cupidatat eiusmod sint proident dolor qui amet ut occaecat voluptate culpa. In reprehenderit quis esse cillum velit cupidatat eu dolor incididunt minim aliquip voluptate. Commodo esse eu laborum esse est minim labore fugiat laborum sunt. Fugiat est reprehenderit Lorem occaecat esse fugiat deserunt esse sit cupidatat. Sunt pariatur eu consequat elit ad ut in tempor magna consectetur. Proident voluptate qui sunt minim labore laboris ullamco officia in.\r\n", "registered": "2014-02-26T17:27:41-13:00", "latitude": -9.691025, "longitude": 32.455396, "tags": [ "tempor", "ut", "magna", "mollit", "dolor", "adipisicing", "ea" ], "friends": [ { "id": 0, "name": "Brock Daniels" }, { "id": 1, "name": "Cherie Wright" }, { "id": 2, "name": "Elnora Patel" } ], "greeting": "Hello, Benita Baker! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23244ef05e925ce6d4", "index": 2016, "guid": "6c71d308-f1de-4960-b275-1e5aacb7d2b4", "isActive": false, "balance": "$1,603.78", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Salas Cook", "gender": "male", "company": "NORSUL", "email": "salascook@norsul.com", "phone": "+1 (851) 527-3437", "address": "578 Wallabout Street, Crumpler, Illinois, 388", "about": "Ad ad consequat in ad ea cillum exercitation. Commodo labore consectetur excepteur aliqua laborum sit pariatur occaecat ea et incididunt magna. Tempor duis pariatur ea nostrud laboris pariatur ullamco ad do consequat proident occaecat minim ad. Ullamco magna sunt laborum adipisicing ea sit velit commodo et eu cupidatat minim Lorem.\r\n", "registered": "2014-04-24T07:37:45-12:00", "latitude": -23.954312, "longitude": 78.235661, "tags": [ "laborum", "adipisicing", "officia", "dolore", "reprehenderit", "amet", "adipisicing" ], "friends": [ { "id": 0, "name": "Sheena Bullock" }, { "id": 1, "name": "Trudy Nicholson" }, { "id": 2, "name": "Flynn Grimes" } ], "greeting": "Hello, Salas Cook! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23d61d034d7a56ee81", "index": 2017, "guid": "8e00f10e-8752-4c02-97aa-1859eed826ce", "isActive": true, "balance": "$2,544.64", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Greta Olsen", "gender": "female", "company": "ASSITIA", "email": "gretaolsen@assitia.com", "phone": "+1 (821) 570-2388", "address": "654 Kane Street, Waterford, South Carolina, 6193", "about": "Esse magna proident et quis id magna enim. Veniam aute consectetur do fugiat ea elit nostrud deserunt minim dolor duis officia quis reprehenderit. Do veniam est nulla culpa. Magna mollit consequat sunt cillum cupidatat labore labore officia ut eu magna laboris sint. Id ex ut voluptate quis.\r\n", "registered": "2014-07-31T09:38:59-12:00", "latitude": -38.220169, "longitude": 39.300363, "tags": [ "duis", "ad", "non", "esse", "commodo", "ex", "ea" ], "friends": [ { "id": 0, "name": "Porter Ramsey" }, { "id": 1, "name": "Small Barrera" }, { "id": 2, "name": "Ballard Moses" } ], "greeting": "Hello, Greta Olsen! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23aae65e0409b0b2ff", "index": 2018, "guid": "6806f5f8-545c-4dd0-a97e-ed84998c4296", "isActive": true, "balance": "$1,742.06", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Eileen Huff", "gender": "female", "company": "PROVIDCO", "email": "eileenhuff@providco.com", "phone": "+1 (818) 596-3333", "address": "575 Dodworth Street, Terlingua, American Samoa, 7618", "about": "Qui quis incididunt fugiat officia nostrud duis. Esse aute dolor exercitation sunt mollit laborum laborum. Deserunt est laboris mollit do nulla enim est cillum et esse. Culpa occaecat eu ullamco sint. Enim cillum excepteur ad enim aliqua labore Lorem proident laboris officia occaecat nulla. Esse non sit nostrud Lorem sint mollit ipsum amet nulla. Nulla adipisicing sunt occaecat enim velit commodo.\r\n", "registered": "2014-03-30T15:58:46-13:00", "latitude": 74.942279, "longitude": -71.330087, "tags": [ "ut", "commodo", "aute", "minim", "esse", "nulla", "nisi" ], "friends": [ { "id": 0, "name": "Kline Mcintyre" }, { "id": 1, "name": "Lela Hicks" }, { "id": 2, "name": "Soto Carlson" } ], "greeting": "Hello, Eileen Huff! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea236eba4b1e573e9f88", "index": 2019, "guid": "fd669490-083d-4ea0-83bd-24d2561e2764", "isActive": false, "balance": "$2,010.48", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Opal Ayers", "gender": "female", "company": "EYERIS", "email": "opalayers@eyeris.com", "phone": "+1 (965) 452-3541", "address": "338 Wilson Avenue, Nipinnawasee, Delaware, 8105", "about": "Consequat pariatur laboris enim in nisi ex exercitation sunt commodo id ullamco id commodo irure. Exercitation qui labore elit voluptate amet sit Lorem magna pariatur. Id sunt pariatur Lorem ipsum consectetur aliquip ipsum mollit elit adipisicing. Sunt aliqua culpa excepteur occaecat occaecat tempor cupidatat et exercitation ipsum non. Exercitation enim adipisicing voluptate tempor laboris ad ad excepteur tempor voluptate.\r\n", "registered": "2014-08-21T09:01:39-12:00", "latitude": 34.478336, "longitude": 115.103489, "tags": [ "sunt", "pariatur", "sunt", "ex", "incididunt", "exercitation", "proident" ], "friends": [ { "id": 0, "name": "Mandy Leach" }, { "id": 1, "name": "Arlene Lyons" }, { "id": 2, "name": "Petra Robles" } ], "greeting": "Hello, Opal Ayers! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23c22015cb61ce7060", "index": 2020, "guid": "df2c6348-aa91-4f1f-9df0-22b1bb87b33b", "isActive": false, "balance": "$3,638.87", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Ada Curry", "gender": "female", "company": "TRIPSCH", "email": "adacurry@tripsch.com", "phone": "+1 (949) 551-2192", "address": "231 Clarkson Avenue, Holcombe, Pennsylvania, 3005", "about": "Occaecat adipisicing consectetur minim ut consectetur non adipisicing. Officia aliqua occaecat elit et dolor culpa ea esse Lorem commodo cillum tempor aliqua. In reprehenderit et dolor excepteur do commodo quis deserunt. Deserunt occaecat nostrud consectetur incididunt amet cupidatat qui minim. Aliquip exercitation cupidatat ipsum excepteur sit dolore sit. Irure nisi esse enim amet sunt eiusmod est aute et veniam non id. Excepteur elit mollit eu nulla officia.\r\n", "registered": "2014-04-01T11:35:35-13:00", "latitude": -89.415862, "longitude": -105.975139, "tags": [ "consectetur", "duis", "anim", "minim", "tempor", "ullamco", "dolore" ], "friends": [ { "id": 0, "name": "Ramsey Marquez" }, { "id": 1, "name": "Susan Acevedo" }, { "id": 2, "name": "Durham Reeves" } ], "greeting": "Hello, Ada Curry! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea231c3ab84cf87be208", "index": 2021, "guid": "f571c534-7058-41c3-a9fe-98693010766b", "isActive": true, "balance": "$1,082.32", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Hanson Irwin", "gender": "male", "company": "ISODRIVE", "email": "hansonirwin@isodrive.com", "phone": "+1 (816) 426-3796", "address": "985 Throop Avenue, Yukon, Georgia, 525", "about": "Excepteur laboris est ad veniam elit ea adipisicing sunt dolor ut eiusmod ea culpa. Id excepteur duis cillum ipsum commodo. Laborum occaecat eu cupidatat anim exercitation est amet excepteur et.\r\n", "registered": "2014-04-20T01:58:40-12:00", "latitude": 78.002037, "longitude": 155.917829, "tags": [ "Lorem", "deserunt", "nulla", "officia", "dolor", "et", "sit" ], "friends": [ { "id": 0, "name": "Conner Terrell" }, { "id": 1, "name": "Mccullough Schmidt" }, { "id": 2, "name": "Woods Delaney" } ], "greeting": "Hello, Hanson Irwin! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea230b7777df5c4af70c", "index": 2022, "guid": "a7ddbe65-a89b-44c4-b682-807e08945956", "isActive": false, "balance": "$2,099.18", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Todd Wyatt", "gender": "male", "company": "FLYBOYZ", "email": "toddwyatt@flyboyz.com", "phone": "+1 (800) 490-3304", "address": "298 Dunne Court, Ticonderoga, North Dakota, 9378", "about": "Ad dolor velit enim commodo ipsum aute veniam ipsum pariatur velit reprehenderit laboris. Minim magna amet enim ullamco deserunt ad sunt et ad incididunt incididunt velit qui laboris. Nulla sint quis commodo occaecat elit nulla sit et Lorem velit.\r\n", "registered": "2014-04-27T14:11:34-12:00", "latitude": 45.28391, "longitude": 32.851424, "tags": [ "amet", "elit", "anim", "deserunt", "ullamco", "magna", "in" ], "friends": [ { "id": 0, "name": "Connie Lindsey" }, { "id": 1, "name": "Gale Head" }, { "id": 2, "name": "Betsy Morrison" } ], "greeting": "Hello, Todd Wyatt! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2339ede23cebb6ba2c", "index": 2023, "guid": "bd48a446-75fb-4e3d-93f2-6e2e9be37c01", "isActive": false, "balance": "$1,449.28", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Latisha Crawford", "gender": "female", "company": "PORTALIS", "email": "latishacrawford@portalis.com", "phone": "+1 (884) 413-3713", "address": "963 Leonora Court, Mayfair, Louisiana, 4389", "about": "Mollit veniam sit in adipisicing id cillum culpa sunt. Est et ullamco est exercitation laboris. Officia nostrud Lorem mollit est consequat aliquip do ut consequat voluptate ipsum. Ad esse do labore aliquip. Sint cupidatat deserunt eu laborum in consequat elit enim. Deserunt sint ut incididunt officia.\r\n", "registered": "2014-04-23T20:04:09-12:00", "latitude": -48.854123, "longitude": 143.916574, "tags": [ "fugiat", "in", "amet", "non", "nisi", "Lorem", "mollit" ], "friends": [ { "id": 0, "name": "Gutierrez Espinoza" }, { "id": 1, "name": "Dena Sullivan" }, { "id": 2, "name": "Shaffer Day" } ], "greeting": "Hello, Latisha Crawford! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23f618ae8e190d0547", "index": 2024, "guid": "f6421fdc-7e88-4800-b40a-5378fd0b9857", "isActive": true, "balance": "$1,755.98", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Aurora Harmon", "gender": "female", "company": "POWERNET", "email": "auroraharmon@powernet.com", "phone": "+1 (843) 536-2631", "address": "531 Windsor Place, Turpin, Northern Mariana Islands, 989", "about": "Sunt velit Lorem in ex eiusmod culpa laborum enim duis enim. Nisi aliqua elit culpa irure commodo et minim. Velit proident consequat minim amet veniam labore ad occaecat occaecat aliquip do irure aute. Labore dolore veniam cillum nostrud dolor amet ad ad id. Occaecat labore ipsum do ex ad aliqua esse adipisicing labore non ad aliqua quis dolore. Eiusmod commodo anim ut proident ad culpa aliquip aliquip in pariatur non dolor laborum eu. Mollit aliquip ex aute ea dolor aliquip irure irure.\r\n", "registered": "2014-03-04T06:29:26-13:00", "latitude": 19.633183, "longitude": 35.365127, "tags": [ "nulla", "labore", "deserunt", "veniam", "eu", "eiusmod", "nisi" ], "friends": [ { "id": 0, "name": "Macdonald English" }, { "id": 1, "name": "Garza Buckley" }, { "id": 2, "name": "Mccray Haley" } ], "greeting": "Hello, Aurora Harmon! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23e98c46946311fe73", "index": 2025, "guid": "d7790535-ac3f-4e51-8604-8ef636c64220", "isActive": true, "balance": "$3,920.84", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Maricela Mullen", "gender": "female", "company": "BLANET", "email": "maricelamullen@blanet.com", "phone": "+1 (880) 547-3959", "address": "519 Degraw Street, Taycheedah, Colorado, 9296", "about": "Qui labore do fugiat consequat proident magna ut aliquip aliquip consequat. Labore occaecat velit enim quis fugiat officia velit et ad eiusmod exercitation mollit labore est. Elit eiusmod elit aliqua nostrud elit dolore amet excepteur laboris cupidatat laboris veniam. Ipsum consectetur commodo aute nisi aliqua officia commodo eiusmod qui eu. Dolor ea aute eiusmod voluptate. Ad do mollit ullamco incididunt pariatur consectetur nisi esse minim elit occaecat cupidatat. Nisi deserunt excepteur id exercitation qui sint commodo ipsum incididunt sint veniam consequat irure ex.\r\n", "registered": "2014-01-24T19:58:47-13:00", "latitude": -82.149074, "longitude": 145.290631, "tags": [ "cillum", "consectetur", "exercitation", "reprehenderit", "laboris", "consequat", "voluptate" ], "friends": [ { "id": 0, "name": "Copeland Bray" }, { "id": 1, "name": "Decker Gay" }, { "id": 2, "name": "Nola Pitts" } ], "greeting": "Hello, Maricela Mullen! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea233f64857e47176ae9", "index": 2026, "guid": "9a1df465-f192-47b5-bc04-83b5f7d689c9", "isActive": false, "balance": "$1,137.44", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Salinas Vance", "gender": "male", "company": "HOUSEDOWN", "email": "salinasvance@housedown.com", "phone": "+1 (967) 552-3950", "address": "825 Poly Place, Lumberton, Idaho, 6174", "about": "Adipisicing dolor mollit anim magna amet duis minim. Sint ex mollit voluptate sit eiusmod esse et proident sint do commodo. Nulla sunt aute reprehenderit ad incididunt consectetur aliqua veniam. Nisi ex amet consectetur eu ipsum. Sint fugiat sit dolor voluptate mollit. Eiusmod dolore consectetur sit do magna officia et cupidatat incididunt. Dolore exercitation dolore occaecat excepteur culpa ipsum dolor.\r\n", "registered": "2014-01-16T13:59:07-13:00", "latitude": 16.278317, "longitude": 117.541497, "tags": [ "minim", "ipsum", "nostrud", "incididunt", "exercitation", "in", "ullamco" ], "friends": [ { "id": 0, "name": "Norman Kidd" }, { "id": 1, "name": "Jan Bridges" }, { "id": 2, "name": "Perkins Alford" } ], "greeting": "Hello, Salinas Vance! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2343a71baa0528c974", "index": 2027, "guid": "d5fb98b6-3a9f-47fb-8ba8-b6d22882bb42", "isActive": true, "balance": "$2,201.53", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Lorna Riley", "gender": "female", "company": "ENDIPINE", "email": "lornariley@endipine.com", "phone": "+1 (861) 556-2572", "address": "853 Bedell Lane, Macdona, Marshall Islands, 5060", "about": "Occaecat mollit proident laboris quis ut est velit. Nulla laboris ullamco voluptate nostrud eiusmod. Pariatur reprehenderit ipsum amet esse esse cupidatat minim occaecat dolor culpa incididunt aliquip duis. Occaecat pariatur sunt exercitation consectetur laboris occaecat sit veniam ipsum sit ad aute et laboris. Velit esse ipsum aute aliqua laboris nostrud dolor amet nostrud commodo incididunt qui ea. Excepteur minim elit est pariatur ad amet mollit eu deserunt in.\r\n", "registered": "2014-06-17T15:50:05-12:00", "latitude": 34.14695, "longitude": -174.91706, "tags": [ "aute", "consectetur", "aliqua", "ea", "laboris", "quis", "nulla" ], "friends": [ { "id": 0, "name": "Renee Brennan" }, { "id": 1, "name": "Earline Austin" }, { "id": 2, "name": "Wanda Oneil" } ], "greeting": "Hello, Lorna Riley! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2376709b53c0b71831", "index": 2028, "guid": "e751dc89-5aee-4496-8377-a70197b527e5", "isActive": false, "balance": "$1,198.29", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Weaver Richard", "gender": "male", "company": "ADORNICA", "email": "weaverrichard@adornica.com", "phone": "+1 (862) 414-3793", "address": "678 Green Street, Reinerton, New York, 7846", "about": "Proident ex amet anim amet sunt id elit dolore nulla. Pariatur nulla eiusmod voluptate veniam dolor eiusmod ullamco cillum aliqua nulla adipisicing. Labore dolor occaecat aliqua Lorem. Sint deserunt consectetur mollit ipsum ea.\r\n", "registered": "2014-09-05T19:42:12-12:00", "latitude": 56.896049, "longitude": 34.639154, "tags": [ "nostrud", "dolor", "irure", "aute", "fugiat", "commodo", "officia" ], "friends": [ { "id": 0, "name": "Suarez Casey" }, { "id": 1, "name": "Staci Figueroa" }, { "id": 2, "name": "Tanisha Gallagher" } ], "greeting": "Hello, Weaver Richard! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea233e66245e3ead6535", "index": 2029, "guid": "7af8f574-1dbb-478f-93e4-320cb66490a6", "isActive": false, "balance": "$2,344.29", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Winters Copeland", "gender": "male", "company": "SYNTAC", "email": "winterscopeland@syntac.com", "phone": "+1 (842) 518-3421", "address": "134 Coventry Road, Needmore, Guam, 9687", "about": "Dolor et officia eiusmod officia. Culpa id sunt ex excepteur. Consequat aliquip aute quis irure irure qui velit occaecat culpa eu voluptate reprehenderit nostrud. Officia ipsum mollit ad sunt aute commodo laborum ut. Commodo excepteur ea nisi culpa et commodo.\r\n", "registered": "2014-04-28T04:22:36-12:00", "latitude": 81.188532, "longitude": -44.183075, "tags": [ "tempor", "deserunt", "laborum", "nostrud", "minim", "fugiat", "sit" ], "friends": [ { "id": 0, "name": "Cline Gould" }, { "id": 1, "name": "Garner Sellers" }, { "id": 2, "name": "Daphne Long" } ], "greeting": "Hello, Winters Copeland! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea230f2f551847c54e45", "index": 2030, "guid": "00a88708-6801-4c9d-8903-26f92d4f5ca8", "isActive": true, "balance": "$2,744.76", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Conway Barnett", "gender": "male", "company": "INEAR", "email": "conwaybarnett@inear.com", "phone": "+1 (803) 574-3247", "address": "189 Miami Court, Springville, Virgin Islands, 8283", "about": "Cupidatat cupidatat eiusmod duis incididunt. Laboris commodo ullamco Lorem cupidatat ipsum. Est laborum dolore duis ad qui adipisicing exercitation dolore labore. Consequat commodo cupidatat laboris qui non ea esse elit dolore Lorem. Amet aliqua labore consectetur laboris. Dolore cillum consequat elit irure fugiat ad in labore in exercitation commodo ea est dolore.\r\n", "registered": "2014-06-18T13:47:56-12:00", "latitude": 24.797581, "longitude": 143.52691, "tags": [ "pariatur", "velit", "laborum", "veniam", "eu", "officia", "consequat" ], "friends": [ { "id": 0, "name": "Obrien Morin" }, { "id": 1, "name": "Baker Scott" }, { "id": 2, "name": "Mcmillan Prince" } ], "greeting": "Hello, Conway Barnett! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23fc2513d3473dd56d", "index": 2031, "guid": "6976237b-53c2-475f-9e6e-ceb128c20247", "isActive": true, "balance": "$2,214.94", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Sandy Ryan", "gender": "female", "company": "GUSHKOOL", "email": "sandyryan@gushkool.com", "phone": "+1 (837) 437-2365", "address": "572 Ludlam Place, Bynum, Massachusetts, 4045", "about": "Magna excepteur dolore sint incididunt. Do proident culpa non est dolore sunt aliquip occaecat ea ullamco proident sunt incididunt consequat. Lorem adipisicing reprehenderit laborum eu anim mollit aliqua cupidatat in pariatur do fugiat quis. Pariatur anim aute ea aliqua velit exercitation cupidatat reprehenderit esse cillum elit. Ipsum minim ad nostrud reprehenderit fugiat non ex laborum culpa sit reprehenderit exercitation labore reprehenderit. Minim ad commodo Lorem eu laboris est.\r\n", "registered": "2014-08-06T16:12:56-12:00", "latitude": 0.476942, "longitude": 167.402629, "tags": [ "incididunt", "nisi", "esse", "ex", "fugiat", "id", "magna" ], "friends": [ { "id": 0, "name": "Horton Knox" }, { "id": 1, "name": "Hickman Yang" }, { "id": 2, "name": "Nannie Baldwin" } ], "greeting": "Hello, Sandy Ryan! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23a6cf6b11a5b54250", "index": 2032, "guid": "4bd48aae-4827-42e7-b899-cfd821ba0a2c", "isActive": false, "balance": "$2,529.36", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Hess Hall", "gender": "male", "company": "KOZGENE", "email": "hesshall@kozgene.com", "phone": "+1 (827) 451-2579", "address": "336 Rutherford Place, Smock, Utah, 4705", "about": "Anim sit sint laborum anim magna. Ut eiusmod eu ut veniam adipisicing aute duis ex quis velit ullamco. Irure cillum nisi exercitation amet voluptate culpa velit enim nisi amet et pariatur nostrud.\r\n", "registered": "2014-01-15T10:39:46-13:00", "latitude": -23.014187, "longitude": 169.657699, "tags": [ "amet", "ex", "magna", "anim", "culpa", "excepteur", "laborum" ], "friends": [ { "id": 0, "name": "Rosalyn Joyner" }, { "id": 1, "name": "Lesa Goodwin" }, { "id": 2, "name": "Paulette Munoz" } ], "greeting": "Hello, Hess Hall! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23cb15885bfb60d6aa", "index": 2033, "guid": "9f787ec1-0bf7-4a19-8474-81803e7f0bc4", "isActive": true, "balance": "$3,320.12", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Mullins Bush", "gender": "male", "company": "SURELOGIC", "email": "mullinsbush@surelogic.com", "phone": "+1 (970) 433-2889", "address": "665 Huntington Street, Kylertown, Montana, 4522", "about": "Enim sunt ea ex fugiat culpa labore do eiusmod et do. Fugiat aliqua in in ut dolore. Mollit incididunt deserunt labore nisi cillum tempor cillum irure esse do in. Ut elit eiusmod nisi exercitation et ullamco est sint commodo consequat in exercitation officia velit.\r\n", "registered": "2014-02-27T23:54:44-13:00", "latitude": 61.535834, "longitude": -61.036388, "tags": [ "excepteur", "non", "proident", "mollit", "velit", "occaecat", "culpa" ], "friends": [ { "id": 0, "name": "Hallie Ramos" }, { "id": 1, "name": "Aguilar Wagner" }, { "id": 2, "name": "Isabelle Sandoval" } ], "greeting": "Hello, Mullins Bush! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2377fab3e99672b654", "index": 2034, "guid": "3462ff88-5973-44e9-9ccf-79bf8c1cc370", "isActive": false, "balance": "$1,581.35", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Ruiz Bentley", "gender": "male", "company": "UNDERTAP", "email": "ruizbentley@undertap.com", "phone": "+1 (823) 486-2411", "address": "109 Eastern Parkway, Silkworth, Wisconsin, 3559", "about": "Ex tempor culpa nostrud pariatur et eu reprehenderit eiusmod sunt dolore et cupidatat aliqua tempor. Officia est eiusmod velit nulla deserunt reprehenderit pariatur laborum fugiat dolor enim do do. Aliquip cillum elit id cupidatat veniam do tempor. Aliqua voluptate Lorem eiusmod qui ipsum. Aliqua deserunt proident nisi commodo.\r\n", "registered": "2014-02-28T09:35:43-13:00", "latitude": -0.616132, "longitude": 117.332312, "tags": [ "aliqua", "elit", "culpa", "exercitation", "in", "proident", "enim" ], "friends": [ { "id": 0, "name": "Tran Skinner" }, { "id": 1, "name": "Gentry Sharpe" }, { "id": 2, "name": "Lopez Hull" } ], "greeting": "Hello, Ruiz Bentley! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23e6444c4213f6798e", "index": 2035, "guid": "b164efe2-ffad-45f8-bbca-c6ffc00597e5", "isActive": true, "balance": "$1,241.42", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Tyler Carney", "gender": "male", "company": "HOPELI", "email": "tylercarney@hopeli.com", "phone": "+1 (910) 486-2186", "address": "716 Congress Street, Jugtown, Maine, 4531", "about": "Aliqua esse culpa ad aliquip nostrud reprehenderit irure et sunt. Quis veniam id cupidatat deserunt Lorem ea. Sint amet veniam officia excepteur cillum id. Aliqua elit eu Lorem non et enim aliqua pariatur. Labore est labore sunt incididunt pariatur ut laborum ipsum exercitation Lorem amet quis. Minim velit excepteur nostrud anim. Commodo aliqua ex pariatur elit ullamco velit qui ipsum.\r\n", "registered": "2014-05-24T15:14:53-12:00", "latitude": -20.237135, "longitude": 179.213124, "tags": [ "velit", "anim", "cupidatat", "velit", "culpa", "anim", "ut" ], "friends": [ { "id": 0, "name": "Flowers Heath" }, { "id": 1, "name": "Sears Ortega" }, { "id": 2, "name": "Stanton Charles" } ], "greeting": "Hello, Tyler Carney! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2377f31e94439aafd3", "index": 2036, "guid": "68b2a640-04d9-4ae2-92cc-b8769e674de9", "isActive": true, "balance": "$1,645.01", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Vilma Hill", "gender": "female", "company": "COMCUBINE", "email": "vilmahill@comcubine.com", "phone": "+1 (964) 461-2511", "address": "108 Logan Street, Stouchsburg, Virginia, 9718", "about": "Do ad Lorem non ad nulla velit ea ex ut in pariatur labore ex. Culpa laborum reprehenderit sit Lorem commodo id ex laboris aute labore minim qui. Adipisicing veniam duis laborum quis eu aliquip sit eiusmod esse ullamco culpa. Sunt sunt nisi fugiat labore proident cupidatat nisi dolor ullamco ea nulla anim non. Fugiat exercitation enim Lorem adipisicing nulla anim anim laborum elit sint proident minim labore.\r\n", "registered": "2014-06-07T20:48:01-12:00", "latitude": -27.196943, "longitude": -9.684167, "tags": [ "adipisicing", "esse", "ullamco", "irure", "nostrud", "sint", "consequat" ], "friends": [ { "id": 0, "name": "Cheryl Thompson" }, { "id": 1, "name": "Lang Huffman" }, { "id": 2, "name": "Tracie Bishop" } ], "greeting": "Hello, Vilma Hill! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea230a5efda42da9ea7e", "index": 2037, "guid": "d0e40e59-16b2-45b5-a598-575e4f931302", "isActive": false, "balance": "$1,842.45", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Duran Jimenez", "gender": "male", "company": "ANIMALIA", "email": "duranjimenez@animalia.com", "phone": "+1 (869) 580-3435", "address": "844 Elliott Place, Farmington, Kentucky, 4397", "about": "Dolor laboris ex amet aliqua aliquip Lorem id do nisi Lorem. Et cupidatat proident et ea reprehenderit quis Lorem. Ullamco voluptate do sint non sit.\r\n", "registered": "2014-07-22T19:04:43-12:00", "latitude": -25.36819, "longitude": -101.898977, "tags": [ "commodo", "proident", "ipsum", "sit", "consequat", "irure", "tempor" ], "friends": [ { "id": 0, "name": "Lindsey Morris" }, { "id": 1, "name": "Hunter Gentry" }, { "id": 2, "name": "Rose Estes" } ], "greeting": "Hello, Duran Jimenez! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea23390b3d3b0297aa51", "index": 2038, "guid": "df326e64-aa45-4b56-b769-ef96ce92f73f", "isActive": false, "balance": "$1,704.65", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Guerrero Tate", "gender": "male", "company": "MICRONAUT", "email": "guerrerotate@micronaut.com", "phone": "+1 (856) 451-2235", "address": "926 Locust Avenue, Cornucopia, Connecticut, 3983", "about": "Excepteur qui laboris deserunt do amet eiusmod qui ipsum consequat tempor excepteur tempor. Id esse commodo ullamco amet deserunt. Commodo non exercitation irure eu labore nulla eiusmod ea adipisicing fugiat deserunt sint. Est magna ullamco ad occaecat ad consectetur elit aute. Mollit do deserunt velit aliqua proident quis sit tempor aliqua nisi incididunt qui tempor. Irure incididunt quis do minim. Eu cupidatat proident nostrud in elit sint excepteur elit.\r\n", "registered": "2014-03-17T07:59:24-13:00", "latitude": 74.987164, "longitude": 89.655043, "tags": [ "excepteur", "velit", "incididunt", "veniam", "Lorem", "irure", "in" ], "friends": [ { "id": 0, "name": "Larsen Tyson" }, { "id": 1, "name": "Sherri Stanton" }, { "id": 2, "name": "Robbins Pope" } ], "greeting": "Hello, Guerrero Tate! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23043cfa891fc557cc", "index": 2039, "guid": "82ff0834-18d6-4567-9f59-fcfe9ee274e2", "isActive": true, "balance": "$1,165.39", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Dionne Galloway", "gender": "female", "company": "EXOTECHNO", "email": "dionnegalloway@exotechno.com", "phone": "+1 (996) 519-2498", "address": "276 Gerry Street, Beaulieu, Mississippi, 9087", "about": "Proident aliquip id enim ea incididunt nostrud esse. Id mollit reprehenderit aute magna adipisicing. Labore do minim commodo culpa eu esse magna sunt nostrud. Eu ad ex dolor laborum sunt. Qui est excepteur laboris do eu deserunt officia reprehenderit.\r\n", "registered": "2014-09-08T20:03:23-12:00", "latitude": -15.681794, "longitude": 64.472584, "tags": [ "sunt", "sit", "minim", "voluptate", "aute", "dolore", "consequat" ], "friends": [ { "id": 0, "name": "Ana Compton" }, { "id": 1, "name": "Melody Morgan" }, { "id": 2, "name": "Bray Meadows" } ], "greeting": "Hello, Dionne Galloway! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2343508f20177aec9b", "index": 2040, "guid": "848ccff3-4710-4d5e-882b-53a68e0ccb90", "isActive": true, "balance": "$2,095.90", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Rosa Paul", "gender": "female", "company": "MANGELICA", "email": "rosapaul@mangelica.com", "phone": "+1 (908) 406-3879", "address": "716 Stryker Court, Murillo, Washington, 7449", "about": "Elit eu in id officia cillum voluptate Lorem enim. Eu magna occaecat quis nisi enim. Elit occaecat veniam esse reprehenderit commodo ad ad dolore amet sint consequat velit. Esse cillum minim ad nulla culpa quis cupidatat tempor quis enim officia reprehenderit. Elit exercitation cupidatat ullamco pariatur velit mollit elit consectetur. Magna Lorem ut enim ea laborum commodo magna eiusmod dolor. Sint enim culpa velit irure ex elit et voluptate in aute.\r\n", "registered": "2014-07-25T03:11:57-12:00", "latitude": -85.519724, "longitude": 171.729449, "tags": [ "aute", "pariatur", "reprehenderit", "culpa", "do", "anim", "non" ], "friends": [ { "id": 0, "name": "Vincent Browning" }, { "id": 1, "name": "Hubbard Knapp" }, { "id": 2, "name": "Nikki Santos" } ], "greeting": "Hello, Rosa Paul! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23025def55f55c62c7", "index": 2041, "guid": "f21a976b-1017-4680-98c0-db7e796a9ad2", "isActive": false, "balance": "$3,726.08", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Ratliff Frank", "gender": "male", "company": "CHORIZON", "email": "ratlifffrank@chorizon.com", "phone": "+1 (982) 586-2504", "address": "131 Varanda Place, Edgar, Tennessee, 954", "about": "Laboris esse do enim aliqua occaecat. Id qui officia magna deserunt ad nostrud labore nostrud ipsum sunt voluptate. Ex velit consectetur cupidatat proident laborum minim excepteur adipisicing in ipsum labore duis non ad.\r\n", "registered": "2014-01-12T16:05:07-13:00", "latitude": -7.54801, "longitude": -170.827164, "tags": [ "id", "eu", "anim", "dolore", "minim", "minim", "proident" ], "friends": [ { "id": 0, "name": "Nora Bird" }, { "id": 1, "name": "Hendrix Bryan" }, { "id": 2, "name": "Carlene Joyce" } ], "greeting": "Hello, Ratliff Frank! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23c34d63dd6b483d32", "index": 2042, "guid": "2096e019-c43c-458a-9e7f-7e769d27f5f9", "isActive": false, "balance": "$2,860.71", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Maria Wilcox", "gender": "female", "company": "IMMUNICS", "email": "mariawilcox@immunics.com", "phone": "+1 (930) 555-3001", "address": "363 Vanderbilt Street, Catharine, Alabama, 7052", "about": "Adipisicing dolor labore nisi eiusmod. Nulla consectetur irure amet do laborum enim ipsum enim pariatur. Eiusmod pariatur excepteur eu id cillum. Eiusmod nulla ullamco consequat ad incididunt eiusmod quis nostrud laboris. Et irure aliqua amet culpa. Irure aliquip mollit eu reprehenderit enim labore labore nostrud in id.\r\n", "registered": "2014-05-30T13:50:08-12:00", "latitude": -66.562642, "longitude": -50.05496, "tags": [ "Lorem", "exercitation", "commodo", "nostrud", "ex", "reprehenderit", "magna" ], "friends": [ { "id": 0, "name": "Bolton Dawson" }, { "id": 1, "name": "Emerson Glover" }, { "id": 2, "name": "Key Mcknight" } ], "greeting": "Hello, Maria Wilcox! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23cf178080efc8e203", "index": 2043, "guid": "ffc4d35a-1507-461d-a790-9099fe2fe44f", "isActive": true, "balance": "$2,642.67", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Richmond Harris", "gender": "male", "company": "ENERVATE", "email": "richmondharris@enervate.com", "phone": "+1 (882) 506-3049", "address": "996 Wolcott Street, Oberlin, Ohio, 8838", "about": "Dolor dolor aliquip culpa dolore in cupidatat occaecat aliqua. Laboris ea culpa quis id sit sit voluptate enim duis consequat occaecat. Exercitation voluptate do adipisicing et sunt eu id. Nisi aliqua ut aliquip fugiat voluptate. Pariatur nisi eu officia culpa.\r\n", "registered": "2014-05-29T17:12:27-12:00", "latitude": 77.967566, "longitude": 46.369223, "tags": [ "eiusmod", "commodo", "non", "veniam", "dolor", "ea", "dolor" ], "friends": [ { "id": 0, "name": "Walters Price" }, { "id": 1, "name": "Bean Mckee" }, { "id": 2, "name": "Emily Mcguire" } ], "greeting": "Hello, Richmond Harris! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea235f7927740e2235bb", "index": 2044, "guid": "f29f849a-679d-49f9-b399-2a63d852ede2", "isActive": false, "balance": "$2,476.74", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Grimes Gray", "gender": "male", "company": "RONBERT", "email": "grimesgray@ronbert.com", "phone": "+1 (920) 518-2359", "address": "869 Macon Street, Denio, Hawaii, 3558", "about": "Nisi qui veniam minim sint dolor exercitation veniam do mollit Lorem nulla cillum nulla deserunt. Nulla tempor consequat ea magna amet sunt culpa reprehenderit ex. Anim aliqua nulla id reprehenderit cupidatat duis exercitation exercitation ea et. Incididunt in ut Lorem quis elit exercitation dolore id eiusmod ullamco duis in amet sunt. Commodo nulla aliqua magna ipsum dolor labore ex mollit eiusmod nostrud labore fugiat. Dolore duis non minim magna ipsum consequat magna.\r\n", "registered": "2014-05-28T15:19:16-12:00", "latitude": 70.695738, "longitude": -71.236115, "tags": [ "nisi", "anim", "esse", "velit", "amet", "enim", "deserunt" ], "friends": [ { "id": 0, "name": "Ward Sheppard" }, { "id": 1, "name": "Michael Kaufman" }, { "id": 2, "name": "Wilder Chavez" } ], "greeting": "Hello, Grimes Gray! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea239cf11a8cd4f92d73", "index": 2045, "guid": "849060c3-7ffb-4fdd-bde8-94a3ab0de0f5", "isActive": true, "balance": "$1,435.61", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Wolf Nichols", "gender": "male", "company": "ZILLANET", "email": "wolfnichols@zillanet.com", "phone": "+1 (986) 535-3910", "address": "943 Quentin Street, Calvary, New Mexico, 1080", "about": "Excepteur enim ipsum minim aliqua. Nisi nulla id nulla deserunt sint ad dolore irure. Nulla velit eu ullamco quis sint ipsum do qui sunt.\r\n", "registered": "2014-02-05T08:03:37-13:00", "latitude": -3.71443, "longitude": -76.171656, "tags": [ "culpa", "eiusmod", "ullamco", "amet", "est", "sit", "anim" ], "friends": [ { "id": 0, "name": "Laura Mathews" }, { "id": 1, "name": "Hester Young" }, { "id": 2, "name": "Fuller Santana" } ], "greeting": "Hello, Wolf Nichols! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2383ab0e1697781a63", "index": 2046, "guid": "3eac8dda-afaf-4fae-9393-262f232eb91b", "isActive": true, "balance": "$2,998.55", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Elsa Mcneil", "gender": "female", "company": "CORMORAN", "email": "elsamcneil@cormoran.com", "phone": "+1 (850) 554-2256", "address": "739 Jamaica Avenue, Wakarusa, Maryland, 5692", "about": "Lorem commodo sint cupidatat consequat consectetur laboris ut sit ut incididunt nisi. Mollit minim aliqua elit nostrud proident tempor laborum id ipsum ad cillum labore amet officia. Est proident aute sint tempor Lorem reprehenderit sunt id eu quis aute nulla id officia. Magna sit anim ipsum eiusmod proident cillum id excepteur aliqua fugiat. Tempor commodo reprehenderit aliquip adipisicing irure sit eiusmod do id reprehenderit et officia.\r\n", "registered": "2014-07-10T08:55:36-12:00", "latitude": -88.004007, "longitude": 45.344235, "tags": [ "tempor", "tempor", "reprehenderit", "nulla", "minim", "minim", "esse" ], "friends": [ { "id": 0, "name": "Crane Lang" }, { "id": 1, "name": "Robertson Obrien" }, { "id": 2, "name": "Ashlee Todd" } ], "greeting": "Hello, Elsa Mcneil! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2354fb050d063fc70b", "index": 2047, "guid": "dc908ad6-c27a-4210-b510-3651d572edee", "isActive": true, "balance": "$3,856.56", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Winnie Holcomb", "gender": "female", "company": "YOGASM", "email": "winnieholcomb@yogasm.com", "phone": "+1 (929) 549-3171", "address": "121 Wakeman Place, Gouglersville, Alaska, 2700", "about": "Ex do amet velit laboris consectetur incididunt laboris dolore. Commodo duis cupidatat ea do culpa exercitation proident excepteur nisi duis. Consequat ut cillum reprehenderit et adipisicing amet.\r\n", "registered": "2014-02-03T05:38:47-13:00", "latitude": 6.701048, "longitude": 31.049398, "tags": [ "irure", "consectetur", "in", "incididunt", "incididunt", "veniam", "officia" ], "friends": [ { "id": 0, "name": "Barnett Bolton" }, { "id": 1, "name": "Mcintyre Wise" }, { "id": 2, "name": "Aida Humphrey" } ], "greeting": "Hello, Winnie Holcomb! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea23b9757d87d907affa", "index": 2048, "guid": "2f649901-75e5-4ac0-aeb8-59ec72796c52", "isActive": false, "balance": "$1,908.99", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Emilia Mclean", "gender": "female", "company": "EMTRAK", "email": "emiliamclean@emtrak.com", "phone": "+1 (987) 568-3741", "address": "368 Just Court, Hendersonville, Arizona, 6467", "about": "Nostrud dolore sint pariatur ex non adipisicing Lorem officia. Exercitation aute sunt consequat sint nulla tempor et. Laboris eiusmod aute ullamco amet ullamco enim ut sint cupidatat non. Excepteur sunt laboris dolore sint ut ipsum duis.\r\n", "registered": "2014-07-06T13:59:31-12:00", "latitude": -58.502445, "longitude": -11.168492, "tags": [ "ex", "duis", "incididunt", "ut", "non", "adipisicing", "velit" ], "friends": [ { "id": 0, "name": "Myers Calhoun" }, { "id": 1, "name": "Vance Carroll" }, { "id": 2, "name": "Head Little" } ], "greeting": "Hello, Emilia Mclean! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23750a7c6cdbdb9c3c", "index": 2049, "guid": "15a824ed-115b-499f-ba61-dd8a142da616", "isActive": true, "balance": "$2,037.95", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Gould Adkins", "gender": "male", "company": "ORBIN", "email": "gouldadkins@orbin.com", "phone": "+1 (814) 512-2672", "address": "326 Elm Avenue, Martinsville, Federated States Of Micronesia, 1860", "about": "Cupidatat ad magna anim ea esse cillum voluptate labore eiusmod laborum commodo nostrud in excepteur. Ut duis elit nulla est reprehenderit sint quis. Aliqua labore irure adipisicing ea ad.\r\n", "registered": "2014-07-10T09:24:36-12:00", "latitude": 74.860843, "longitude": -63.807048, "tags": [ "ut", "adipisicing", "ex", "enim", "consequat", "laborum", "aute" ], "friends": [ { "id": 0, "name": "Ester Alvarado" }, { "id": 1, "name": "Harding Wiggins" }, { "id": 2, "name": "Norris Oneal" } ], "greeting": "Hello, Gould Adkins! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea234fc0414b2e07451f", "index": 2050, "guid": "0099c120-177a-445b-9006-ac9d7e416df0", "isActive": false, "balance": "$2,417.33", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Evans Lopez", "gender": "male", "company": "QUANTALIA", "email": "evanslopez@quantalia.com", "phone": "+1 (821) 469-2099", "address": "113 Apollo Street, Blackgum, Oklahoma, 7357", "about": "Irure eiusmod excepteur occaecat labore qui ex occaecat et. Eiusmod amet et Lorem et magna proident commodo sunt adipisicing. Adipisicing dolor voluptate veniam culpa aliquip tempor pariatur pariatur cillum amet aute tempor. Voluptate id minim sunt anim amet exercitation ex amet id. Irure culpa sint occaecat cillum esse aliqua. Enim irure amet mollit ex exercitation minim tempor cupidatat sit quis.\r\n", "registered": "2014-01-27T11:52:36-13:00", "latitude": -28.201937, "longitude": -77.15884, "tags": [ "velit", "fugiat", "aliquip", "occaecat", "laborum", "in", "sint" ], "friends": [ { "id": 0, "name": "Mara Osborn" }, { "id": 1, "name": "Armstrong Duran" }, { "id": 2, "name": "Lynch Russo" } ], "greeting": "Hello, Evans Lopez! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea231c3ee5aee2a342ee", "index": 2051, "guid": "bf61236e-1bc1-473c-9baa-ae996446ea71", "isActive": false, "balance": "$3,418.92", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Tamika Moran", "gender": "female", "company": "SOPRANO", "email": "tamikamoran@soprano.com", "phone": "+1 (858) 589-3538", "address": "735 John Street, Marbury, Michigan, 8276", "about": "Deserunt commodo dolore reprehenderit adipisicing officia reprehenderit cillum laboris aliqua nostrud eu irure mollit Lorem. Laborum esse quis eiusmod velit nostrud nisi. Sit est proident mollit cupidatat magna id est. Eu cupidatat aliqua est elit quis adipisicing labore adipisicing. Duis ex anim anim pariatur. Laborum incididunt qui ad do nisi incididunt nisi pariatur qui ipsum. Mollit veniam qui ea do reprehenderit Lorem laboris.\r\n", "registered": "2014-04-27T14:42:02-12:00", "latitude": -82.605961, "longitude": 77.846219, "tags": [ "nostrud", "labore", "cupidatat", "culpa", "proident", "esse", "esse" ], "friends": [ { "id": 0, "name": "Maddox Rios" }, { "id": 1, "name": "Roslyn Rivas" }, { "id": 2, "name": "Burt Leblanc" } ], "greeting": "Hello, Tamika Moran! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea232f191757e8a7e9d4", "index": 2052, "guid": "6b49b35d-167b-445e-a230-77180004e905", "isActive": false, "balance": "$1,824.56", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Goodman Navarro", "gender": "male", "company": "APPLIDECK", "email": "goodmannavarro@applideck.com", "phone": "+1 (960) 553-2490", "address": "124 Metropolitan Avenue, Zeba, Kansas, 9810", "about": "Cupidatat ea sint ea ut laborum exercitation sint. Sunt quis fugiat voluptate sint amet Lorem proident pariatur enim. Dolore labore pariatur Lorem commodo sint fugiat laboris. Cupidatat minim tempor officia esse irure. Sunt qui nostrud ex veniam. Mollit fugiat est dolor minim incididunt aliquip reprehenderit incididunt occaecat sit dolore. Nulla ex laboris ex quis id voluptate aliqua irure exercitation.\r\n", "registered": "2014-04-11T01:16:14-12:00", "latitude": -88.080698, "longitude": 80.672976, "tags": [ "eiusmod", "sunt", "proident", "consequat", "sint", "ullamco", "pariatur" ], "friends": [ { "id": 0, "name": "Francine Pratt" }, { "id": 1, "name": "Meyer Mercer" }, { "id": 2, "name": "Jerri Chan" } ], "greeting": "Hello, Goodman Navarro! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea232f04263c171a3ae5", "index": 2053, "guid": "d01a0d16-d5cc-4aee-97f5-61644e8cb1d1", "isActive": true, "balance": "$2,507.98", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Amber Carter", "gender": "female", "company": "ROOFORIA", "email": "ambercarter@rooforia.com", "phone": "+1 (922) 558-3458", "address": "273 Seagate Avenue, Orason, South Dakota, 8361", "about": "Sint eiusmod id sit cillum aliquip et cillum commodo reprehenderit deserunt veniam cillum. Occaecat quis sit cillum mollit dolor est officia esse pariatur incididunt aliquip anim. Ex nulla nostrud irure dolor incididunt nisi fugiat sit incididunt pariatur do consectetur est non. Consectetur ex irure velit est pariatur aliquip incididunt. Consectetur id est ipsum anim qui in dolor labore enim laboris culpa esse laborum. Aliqua enim commodo aliqua labore est reprehenderit ex irure velit Lorem tempor qui eiusmod esse. Aliqua nostrud excepteur ad voluptate sint est non culpa commodo cupidatat laborum occaecat.\r\n", "registered": "2014-06-01T17:11:32-12:00", "latitude": -13.979053, "longitude": -19.49409, "tags": [ "amet", "ut", "pariatur", "voluptate", "cillum", "anim", "cupidatat" ], "friends": [ { "id": 0, "name": "Mccoy Cantu" }, { "id": 1, "name": "Carolyn Alvarez" }, { "id": 2, "name": "Billie Benjamin" } ], "greeting": "Hello, Amber Carter! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2333aab012f550aebb", "index": 2054, "guid": "78f6d58a-4162-42a7-94a2-21575b45de5f", "isActive": false, "balance": "$2,673.97", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Rivera Strickland", "gender": "male", "company": "COWTOWN", "email": "riverastrickland@cowtown.com", "phone": "+1 (952) 564-2975", "address": "979 Fenimore Street, Indio, West Virginia, 916", "about": "Minim aliqua dolor aliqua culpa irure duis commodo tempor enim cillum elit in ad. Duis occaecat enim nostrud eu laboris id ad excepteur non cupidatat ipsum eu non nulla. Ullamco aliqua magna cillum adipisicing exercitation incididunt sint in nisi sunt. Est adipisicing enim Lorem aliquip.\r\n", "registered": "2014-08-23T09:49:14-12:00", "latitude": -17.910336, "longitude": 12.850156, "tags": [ "pariatur", "aliquip", "commodo", "ut", "velit", "velit", "aliquip" ], "friends": [ { "id": 0, "name": "Amelia Schroeder" }, { "id": 1, "name": "Bullock Barker" }, { "id": 2, "name": "Black Schultz" } ], "greeting": "Hello, Rivera Strickland! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23cdb95561a3645fa5", "index": 2055, "guid": "9fbabe5c-ade9-4849-b7b5-04b9373063fb", "isActive": true, "balance": "$3,545.76", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Janine Torres", "gender": "female", "company": "LINGOAGE", "email": "janinetorres@lingoage.com", "phone": "+1 (838) 503-3372", "address": "599 Glen Street, Wescosville, Texas, 4917", "about": "Magna officia elit ipsum aute laboris fugiat deserunt aliquip anim occaecat laborum. Ipsum laboris eu eiusmod cillum velit qui ullamco et in aute deserunt eiusmod eu voluptate. Ad velit ullamco officia officia.\r\n", "registered": "2014-01-17T14:35:37-13:00", "latitude": -40.180882, "longitude": -63.188908, "tags": [ "voluptate", "reprehenderit", "eiusmod", "laborum", "duis", "exercitation", "voluptate" ], "friends": [ { "id": 0, "name": "Caroline Boyd" }, { "id": 1, "name": "Minerva Franco" }, { "id": 2, "name": "Swanson Houston" } ], "greeting": "Hello, Janine Torres! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23d6ec48057d3a2eef", "index": 2056, "guid": "f8093775-f1b2-486c-93b1-893a9d38f2f9", "isActive": true, "balance": "$3,100.29", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Hendricks Ratliff", "gender": "male", "company": "ZENSUS", "email": "hendricksratliff@zensus.com", "phone": "+1 (906) 446-3327", "address": "142 Radde Place, Orovada, Oregon, 4958", "about": "Mollit aliqua commodo in ex voluptate irure cupidatat do laboris ex esse. Et id non proident ad consequat. Ipsum commodo est commodo sint. Sit eu elit velit mollit. Pariatur cillum incididunt et irure laboris.\r\n", "registered": "2014-08-31T17:24:10-12:00", "latitude": -15.447532, "longitude": -46.582153, "tags": [ "tempor", "labore", "aliquip", "non", "proident", "do", "anim" ], "friends": [ { "id": 0, "name": "Dixon Benton" }, { "id": 1, "name": "Francesca Roman" }, { "id": 2, "name": "Mariana Schneider" } ], "greeting": "Hello, Hendricks Ratliff! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea23bde9357a78caa103", "index": 2057, "guid": "39299316-5d45-431d-9c4b-77ee84d68b73", "isActive": true, "balance": "$1,704.99", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Ochoa Brady", "gender": "male", "company": "EXOTERIC", "email": "ochoabrady@exoteric.com", "phone": "+1 (822) 418-2347", "address": "595 Kings Hwy, Bennett, Nevada, 8219", "about": "Aliquip cupidatat excepteur cupidatat pariatur nostrud. Exercitation nostrud do esse consequat do. Duis voluptate est eiusmod mollit quis nisi sunt mollit irure veniam et tempor do labore.\r\n", "registered": "2014-05-18T04:45:50-12:00", "latitude": 72.465453, "longitude": 127.33989, "tags": [ "consequat", "minim", "commodo", "esse", "adipisicing", "cillum", "est" ], "friends": [ { "id": 0, "name": "Elliott Shannon" }, { "id": 1, "name": "Mitzi Coleman" }, { "id": 2, "name": "Maggie Ochoa" } ], "greeting": "Hello, Ochoa Brady! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24125fc6d031ddcfa4", "index": 2058, "guid": "9683111e-af6f-4794-b54a-fb7d1722961f", "isActive": true, "balance": "$2,442.71", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Gonzales Mcclain", "gender": "male", "company": "PHARMEX", "email": "gonzalesmcclain@pharmex.com", "phone": "+1 (838) 591-2912", "address": "172 Vanderveer Street, Shasta, Minnesota, 6000", "about": "Cupidatat ex reprehenderit sit deserunt magna anim elit sit minim nulla irure ea aliqua. Amet dolore qui labore nisi fugiat anim fugiat culpa proident culpa culpa adipisicing tempor proident. Exercitation culpa elit aliqua fugiat deserunt aliquip proident ex labore excepteur. Dolore officia aute incididunt dolor cupidatat ex anim veniam in commodo ullamco et veniam consectetur. Irure et nostrud laboris elit excepteur ea laboris duis non voluptate excepteur. Mollit et ad magna labore esse incididunt aliqua consectetur ex quis dolor incididunt nostrud nulla. Ut et sit officia culpa cillum enim non ex duis aliqua do magna sunt.\r\n", "registered": "2014-09-08T13:20:19-12:00", "latitude": -56.248925, "longitude": -17.821617, "tags": [ "officia", "pariatur", "velit", "aliquip", "do", "eiusmod", "consequat" ], "friends": [ { "id": 0, "name": "Roach Lowe" }, { "id": 1, "name": "Elena Hardin" }, { "id": 2, "name": "Medina Watkins" } ], "greeting": "Hello, Gonzales Mcclain! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24b9888e8e9db460e7", "index": 2059, "guid": "5426d53a-175d-4573-beba-5fe456a0bc3b", "isActive": true, "balance": "$3,905.33", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Holt Good", "gender": "male", "company": "COMBOT", "email": "holtgood@combot.com", "phone": "+1 (991) 465-3223", "address": "649 Gunnison Court, Trinway, Missouri, 3429", "about": "Reprehenderit sunt ipsum commodo cillum adipisicing aliquip nulla nisi consectetur qui. Pariatur minim dolor elit commodo elit aute. Eu ea exercitation cillum nisi reprehenderit nostrud deserunt id deserunt tempor sunt cupidatat cupidatat. Et eu pariatur non consectetur Lorem veniam duis dolor dolore. Exercitation exercitation velit magna aute.\r\n", "registered": "2014-04-09T10:42:14-12:00", "latitude": -0.804789, "longitude": 46.491779, "tags": [ "elit", "dolor", "enim", "eu", "anim", "irure", "non" ], "friends": [ { "id": 0, "name": "Sweeney Cohen" }, { "id": 1, "name": "Ann Gamble" }, { "id": 2, "name": "Barrera Haynes" } ], "greeting": "Hello, Holt Good! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24f55bccb1485a8e3d", "index": 2060, "guid": "06697c2d-9f9a-4ca9-a327-ecde1fcaa62e", "isActive": true, "balance": "$2,781.41", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Moon Gibson", "gender": "male", "company": "NEPTIDE", "email": "moongibson@neptide.com", "phone": "+1 (860) 541-3510", "address": "608 Tompkins Place, Riviera, Rhode Island, 4201", "about": "Ex consectetur id labore nostrud nulla est id fugiat minim ea eu dolor culpa. Cupidatat eu eiusmod enim quis fugiat voluptate amet. Sunt ad sunt sit consectetur culpa anim excepteur culpa anim anim elit anim nulla nisi.\r\n", "registered": "2014-03-06T08:43:27-13:00", "latitude": 53.702314, "longitude": -132.65766, "tags": [ "cillum", "laborum", "sunt", "excepteur", "excepteur", "incididunt", "fugiat" ], "friends": [ { "id": 0, "name": "Inez Roth" }, { "id": 1, "name": "Hays Camacho" }, { "id": 2, "name": "Lynda Branch" } ], "greeting": "Hello, Moon Gibson! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea246385e195c43aa814", "index": 2061, "guid": "c7877a3d-e4ed-4142-a7c7-d290237078a9", "isActive": false, "balance": "$3,847.45", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Schneider Fuller", "gender": "male", "company": "ZILLAN", "email": "schneiderfuller@zillan.com", "phone": "+1 (937) 406-2445", "address": "541 Stratford Road, Fostoria, Florida, 4556", "about": "Eiusmod Lorem irure fugiat proident quis aute consequat esse proident ipsum eu. Enim elit consequat sit sunt non cupidatat velit tempor eu pariatur ad exercitation mollit sit. Excepteur deserunt velit ut sit nulla qui anim duis nulla. Officia Lorem voluptate eu amet. Velit commodo quis eiusmod cillum eu. Eiusmod cupidatat ullamco culpa ut nisi velit consectetur nisi. Ipsum duis Lorem laborum culpa aute fugiat reprehenderit quis proident eiusmod minim.\r\n", "registered": "2014-05-20T20:28:05-12:00", "latitude": -39.563106, "longitude": -111.883691, "tags": [ "id", "adipisicing", "do", "nisi", "exercitation", "ex", "nostrud" ], "friends": [ { "id": 0, "name": "Lee Holden" }, { "id": 1, "name": "Jennifer Butler" }, { "id": 2, "name": "Merle Horton" } ], "greeting": "Hello, Schneider Fuller! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24ecb3274fa9f568d6", "index": 2062, "guid": "babf6bb4-c5a0-4fba-b3de-d943879b1b77", "isActive": true, "balance": "$1,747.48", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Wagner Molina", "gender": "male", "company": "ELECTONIC", "email": "wagnermolina@electonic.com", "phone": "+1 (855) 446-3167", "address": "420 Robert Street, Sultana, North Carolina, 2461", "about": "Amet eiusmod in voluptate do dolor cillum est. Est et incididunt aliquip exercitation quis nostrud. Voluptate cillum cupidatat qui amet ipsum dolore minim aute ut tempor dolor officia sint ipsum. Aute exercitation dolore veniam aliqua fugiat eu deserunt occaecat minim do consectetur mollit.\r\n", "registered": "2014-05-06T09:56:53-12:00", "latitude": -19.392043, "longitude": 128.317587, "tags": [ "minim", "eu", "tempor", "magna", "duis", "ea", "tempor" ], "friends": [ { "id": 0, "name": "Kirsten Le" }, { "id": 1, "name": "Elvia Summers" }, { "id": 2, "name": "Anita Gardner" } ], "greeting": "Hello, Wagner Molina! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2420ee88d24b71dada", "index": 2063, "guid": "85c80454-fa0b-40d2-a199-822151f969b6", "isActive": true, "balance": "$1,151.06", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Brandy Wallace", "gender": "female", "company": "PETIGEMS", "email": "brandywallace@petigems.com", "phone": "+1 (886) 600-3437", "address": "790 Clarendon Road, Vicksburg, New Hampshire, 9839", "about": "Fugiat sit anim irure est nostrud id enim consequat aute anim excepteur eu. Cupidatat cillum dolor exercitation tempor ad veniam labore consequat adipisicing dolore. Sit veniam labore quis elit duis in. Excepteur nisi excepteur elit et laborum consectetur sunt culpa officia et do veniam elit. Culpa officia consequat magna occaecat magna do.\r\n", "registered": "2014-01-21T12:25:24-13:00", "latitude": 74.733987, "longitude": -165.696364, "tags": [ "aliqua", "anim", "ea", "duis", "eu", "ullamco", "elit" ], "friends": [ { "id": 0, "name": "Millie Johnson" }, { "id": 1, "name": "Jasmine Conner" }, { "id": 2, "name": "Estelle Finch" } ], "greeting": "Hello, Brandy Wallace! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24357128f4f9d0f089", "index": 2064, "guid": "8a5f9bc5-39a3-4a0a-8108-6c9266100fa1", "isActive": true, "balance": "$1,942.69", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Stark Haney", "gender": "male", "company": "EGYPTO", "email": "starkhaney@egypto.com", "phone": "+1 (978) 460-3562", "address": "108 Indiana Place, Moscow, Arkansas, 9922", "about": "Anim magna reprehenderit cupidatat ut laborum do. Magna ea est laboris nisi ut veniam laborum sit dolor enim. Duis fugiat commodo do ad id minim cupidatat excepteur elit et fugiat incididunt adipisicing.\r\n", "registered": "2014-08-26T23:56:49-12:00", "latitude": -62.989504, "longitude": -106.711282, "tags": [ "quis", "ea", "occaecat", "amet", "laboris", "laborum", "in" ], "friends": [ { "id": 0, "name": "William Martin" }, { "id": 1, "name": "Spears Crosby" }, { "id": 2, "name": "Tania Lloyd" } ], "greeting": "Hello, Stark Haney! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24ab3347deef9fcd44", "index": 2065, "guid": "cbc06f52-8346-4324-938b-ef994e678355", "isActive": false, "balance": "$3,245.77", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Antoinette Lester", "gender": "female", "company": "CINASTER", "email": "antoinettelester@cinaster.com", "phone": "+1 (888) 474-3157", "address": "826 Haring Street, Waverly, Iowa, 9728", "about": "Proident consequat dolore deserunt nisi esse. Exercitation ea labore officia laboris nisi qui in commodo duis do nostrud occaecat qui fugiat. Deserunt exercitation magna est esse id. Voluptate tempor incididunt irure nostrud exercitation velit labore ad nisi do cillum mollit. Ut velit elit adipisicing occaecat excepteur Lorem ipsum. Irure nulla reprehenderit voluptate adipisicing quis nostrud tempor eu adipisicing ex incididunt pariatur voluptate.\r\n", "registered": "2014-03-13T02:10:07-13:00", "latitude": -8.456711, "longitude": -152.653588, "tags": [ "aute", "irure", "aute", "officia", "ad", "duis", "do" ], "friends": [ { "id": 0, "name": "Campos Whitfield" }, { "id": 1, "name": "Iva Evans" }, { "id": 2, "name": "Corrine Blackburn" } ], "greeting": "Hello, Antoinette Lester! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24a685634fa29f5055", "index": 2066, "guid": "86e98bc6-f54b-4c64-8fe4-55a7906c78df", "isActive": true, "balance": "$1,013.22", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Waller Walter", "gender": "male", "company": "NIXELT", "email": "wallerwalter@nixelt.com", "phone": "+1 (939) 454-3634", "address": "106 Kaufman Place, Wedgewood, Nebraska, 7201", "about": "Commodo esse cillum tempor pariatur et reprehenderit. Aute exercitation culpa sit quis officia fugiat. Laborum officia consequat laboris ex in officia voluptate commodo est ipsum sit eiusmod esse culpa. Irure ut veniam nostrud voluptate incididunt quis deserunt. Proident amet sunt cupidatat fugiat enim mollit aliquip. Enim ad sint minim amet amet aliquip do aliquip.\r\n", "registered": "2014-04-20T02:17:17-12:00", "latitude": 81.839252, "longitude": -17.989265, "tags": [ "Lorem", "sit", "aute", "sint", "labore", "et", "eu" ], "friends": [ { "id": 0, "name": "Chambers Underwood" }, { "id": 1, "name": "Riley William" }, { "id": 2, "name": "Courtney Mccarty" } ], "greeting": "Hello, Waller Walter! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24846586a3c8cb34db", "index": 2067, "guid": "36719fb5-7c1a-426d-adfc-583f292ea397", "isActive": false, "balance": "$3,573.95", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Clements Mullins", "gender": "male", "company": "ROBOID", "email": "clementsmullins@roboid.com", "phone": "+1 (924) 428-3121", "address": "610 Lincoln Place, Summerset, District Of Columbia, 4864", "about": "Cupidatat est labore velit quis consectetur ut laborum quis do anim aute occaecat dolore. Minim irure fugiat excepteur aliqua qui enim. Id magna veniam qui mollit in ullamco culpa sunt consequat amet non eiusmod deserunt non. Irure dolor tempor consequat irure et sint culpa elit deserunt id minim aliquip eiusmod veniam. Laborum eiusmod ut occaecat anim consequat fugiat aliqua aliqua. Ut cupidatat enim excepteur esse aute non enim sunt. Duis non mollit sunt fugiat magna mollit sunt elit.\r\n", "registered": "2014-09-08T07:44:15-12:00", "latitude": 64.957172, "longitude": 160.866744, "tags": [ "qui", "ex", "duis", "officia", "labore", "mollit", "sint" ], "friends": [ { "id": 0, "name": "Annmarie Sweet" }, { "id": 1, "name": "Claire Watts" }, { "id": 2, "name": "Wheeler Moreno" } ], "greeting": "Hello, Clements Mullins! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24c9f1645860049567", "index": 2068, "guid": "d56c8f80-361c-4caf-8e89-738d78694523", "isActive": false, "balance": "$1,486.06", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Adams Mcmillan", "gender": "male", "company": "SNOWPOKE", "email": "adamsmcmillan@snowpoke.com", "phone": "+1 (838) 456-3216", "address": "919 Kings Place, Springdale, New Jersey, 2690", "about": "Excepteur ut occaecat proident quis. Officia minim ad incididunt irure sunt est est exercitation. Lorem excepteur dolore aliqua enim nulla do ullamco cupidatat esse qui. Consectetur commodo pariatur elit pariatur aliquip dolor laborum reprehenderit consectetur ut. Quis esse consectetur proident exercitation exercitation laborum incididunt minim excepteur consequat duis incididunt voluptate incididunt. Magna minim eiusmod cillum esse in non deserunt ullamco laboris officia cillum ut. Lorem mollit laborum consequat et.\r\n", "registered": "2014-06-16T20:20:23-12:00", "latitude": 71.168288, "longitude": -79.206423, "tags": [ "aute", "ipsum", "incididunt", "fugiat", "reprehenderit", "non", "incididunt" ], "friends": [ { "id": 0, "name": "Charmaine Greer" }, { "id": 1, "name": "Jacquelyn Barron" }, { "id": 2, "name": "Michele Flynn" } ], "greeting": "Hello, Adams Mcmillan! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea248eb1b3ae6c78f3bd", "index": 2069, "guid": "b952e5b8-0af6-4d03-9ba5-c6ed7100e134", "isActive": true, "balance": "$3,488.01", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Haney Rasmussen", "gender": "male", "company": "SOLGAN", "email": "haneyrasmussen@solgan.com", "phone": "+1 (947) 559-2092", "address": "315 Branton Street, Glenbrook, Palau, 1326", "about": "Lorem qui tempor ad occaecat nulla laboris id laboris aute anim nulla consectetur elit mollit. Mollit fugiat excepteur eiusmod ex magna fugiat ullamco Lorem cupidatat elit laboris ullamco. Cillum voluptate laborum deserunt laborum culpa esse magna cupidatat laboris duis est. Non tempor eiusmod tempor qui irure laboris.\r\n", "registered": "2014-03-20T08:48:08-13:00", "latitude": 58.895125, "longitude": -35.242559, "tags": [ "proident", "ad", "proident", "duis", "in", "officia", "sit" ], "friends": [ { "id": 0, "name": "Beverley Carson" }, { "id": 1, "name": "Sanford Michael" }, { "id": 2, "name": "Donovan Bond" } ], "greeting": "Hello, Haney Rasmussen! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea249ad1d7be7e140d25", "index": 2070, "guid": "84e7c098-ec80-49f3-b091-07ff5801852e", "isActive": false, "balance": "$3,378.11", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Alexander Banks", "gender": "male", "company": "EURON", "email": "alexanderbanks@euron.com", "phone": "+1 (949) 497-3946", "address": "741 Dahl Court, Chautauqua, Puerto Rico, 2748", "about": "Aliqua occaecat non aliquip duis. Adipisicing reprehenderit ex anim proident et excepteur labore. Nisi aliquip ut reprehenderit duis culpa do. Ullamco excepteur reprehenderit occaecat aute quis laborum laborum reprehenderit.\r\n", "registered": "2014-08-18T05:48:15-12:00", "latitude": -68.462994, "longitude": -0.555762, "tags": [ "anim", "ex", "anim", "aute", "fugiat", "nisi", "sit" ], "friends": [ { "id": 0, "name": "Josephine Conley" }, { "id": 1, "name": "Kenya Riddle" }, { "id": 2, "name": "Imelda Rosa" } ], "greeting": "Hello, Alexander Banks! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea248a9ef89fdb04d2bf", "index": 2071, "guid": "ce0a941f-22ae-4623-ac16-e26937d92893", "isActive": false, "balance": "$2,576.47", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Althea Palmer", "gender": "female", "company": "VENOFLEX", "email": "altheapalmer@venoflex.com", "phone": "+1 (819) 547-2866", "address": "614 Rockaway Avenue, Jackpot, California, 542", "about": "Pariatur do labore adipisicing quis elit sit amet nulla eu non anim eiusmod anim deserunt. Velit exercitation fugiat do ad tempor. Fugiat voluptate sunt elit tempor aliqua deserunt ut fugiat veniam. Tempor pariatur et enim exercitation aliquip do deserunt proident aute reprehenderit laboris reprehenderit ipsum.\r\n", "registered": "2014-07-15T23:34:20-12:00", "latitude": 11.224166, "longitude": 172.788816, "tags": [ "aliquip", "cillum", "reprehenderit", "ullamco", "amet", "ea", "eiusmod" ], "friends": [ { "id": 0, "name": "Levine Mckenzie" }, { "id": 1, "name": "Rosetta Koch" }, { "id": 2, "name": "Peters Goodman" } ], "greeting": "Hello, Althea Palmer! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2486a07eb1b095e21a", "index": 2072, "guid": "ab9fbb74-f193-4e8e-8a5e-89c086eff372", "isActive": true, "balance": "$3,350.88", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Patty Ray", "gender": "female", "company": "GOLOGY", "email": "pattyray@gology.com", "phone": "+1 (851) 593-2534", "address": "985 Forest Place, Abrams, Vermont, 9827", "about": "In id incididunt eiusmod nulla fugiat in commodo mollit. Ad aliqua velit nisi aute Lorem exercitation laborum consequat laborum nulla. Ea in sit adipisicing ad et quis laboris proident pariatur sint elit et et est.\r\n", "registered": "2014-06-21T05:30:23-12:00", "latitude": -36.457683, "longitude": 25.891811, "tags": [ "nisi", "cupidatat", "sit", "anim", "est", "in", "officia" ], "friends": [ { "id": 0, "name": "Hartman Bradshaw" }, { "id": 1, "name": "Gail King" }, { "id": 2, "name": "Charles Bender" } ], "greeting": "Hello, Patty Ray! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea249febe08d54330af3", "index": 2073, "guid": "62fac012-00b0-4665-be77-e3fc33f1ed3e", "isActive": false, "balance": "$1,490.55", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Mills Garza", "gender": "male", "company": "PATHWAYS", "email": "millsgarza@pathways.com", "phone": "+1 (835) 600-3241", "address": "139 Henderson Walk, Sutton, Indiana, 3266", "about": "Aute ea et quis exercitation. Ipsum pariatur culpa officia cillum qui do occaecat exercitation velit adipisicing veniam ad fugiat. Ex quis irure cupidatat sit id nulla nulla. Id exercitation sit eiusmod exercitation. Laboris pariatur elit aute sunt voluptate deserunt enim. Tempor aliquip in non occaecat voluptate commodo laboris.\r\n", "registered": "2014-04-07T17:57:11-12:00", "latitude": 55.085198, "longitude": -30.98508, "tags": [ "sit", "ad", "ad", "sint", "amet", "dolor", "incididunt" ], "friends": [ { "id": 0, "name": "Nelson Nolan" }, { "id": 1, "name": "Estes Cote" }, { "id": 2, "name": "Vazquez Delacruz" } ], "greeting": "Hello, Mills Garza! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea245ec450cce4dc3124", "index": 2074, "guid": "d246659f-cea2-4e45-81ed-bc41db3933a5", "isActive": false, "balance": "$3,317.40", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Kent Sanders", "gender": "male", "company": "FARMAGE", "email": "kentsanders@farmage.com", "phone": "+1 (931) 481-2957", "address": "229 Kane Place, Gibbsville, Illinois, 5435", "about": "Nisi ea exercitation eu velit cillum amet incididunt in culpa culpa laborum veniam velit. Fugiat aliqua amet nulla dolor consectetur ipsum eu excepteur proident enim. Et nisi amet deserunt ea dolore amet sint.\r\n", "registered": "2014-09-15T10:01:15-12:00", "latitude": 80.973448, "longitude": 99.425579, "tags": [ "cupidatat", "id", "anim", "ullamco", "dolore", "non", "do" ], "friends": [ { "id": 0, "name": "Blankenship Ewing" }, { "id": 1, "name": "Johanna Sexton" }, { "id": 2, "name": "Parsons Salinas" } ], "greeting": "Hello, Kent Sanders! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea242e8e46b36c9a7f94", "index": 2075, "guid": "b6210e8d-c143-4c95-9adb-80a4532615ef", "isActive": true, "balance": "$2,837.20", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Gibson Alexander", "gender": "male", "company": "BITENDREX", "email": "gibsonalexander@bitendrex.com", "phone": "+1 (807) 437-3091", "address": "856 Woods Place, Hanover, South Carolina, 2096", "about": "Officia pariatur aliqua officia occaecat enim mollit consectetur ullamco. Culpa consequat dolor esse aliquip deserunt pariatur reprehenderit nostrud aliquip commodo deserunt. Qui culpa aute ullamco sunt ex officia commodo. Deserunt occaecat mollit reprehenderit excepteur in quis deserunt nisi nisi deserunt quis. Fugiat occaecat consectetur aliquip proident mollit elit ut Lorem sit laboris ad.\r\n", "registered": "2014-03-22T23:52:52-13:00", "latitude": -27.763999, "longitude": 163.680301, "tags": [ "nostrud", "elit", "ut", "ullamco", "aliqua", "adipisicing", "in" ], "friends": [ { "id": 0, "name": "Delia Lane" }, { "id": 1, "name": "Catherine Kline" }, { "id": 2, "name": "Powell Lowery" } ], "greeting": "Hello, Gibson Alexander! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea242eba88db1f83f4e0", "index": 2076, "guid": "b881d5a9-0fcd-4c6e-9b0e-0e080f4bef5f", "isActive": true, "balance": "$2,014.35", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Celeste Dodson", "gender": "female", "company": "PARAGONIA", "email": "celestedodson@paragonia.com", "phone": "+1 (927) 434-2568", "address": "331 Belmont Avenue, Brooktrails, American Samoa, 9348", "about": "Do id anim cupidatat et est enim consectetur id qui tempor nulla exercitation laboris. Reprehenderit aliquip aliquip ea sint ea sint mollit veniam reprehenderit anim duis aliquip. Proident sit amet est qui et excepteur.\r\n", "registered": "2014-08-05T05:08:01-12:00", "latitude": -64.059443, "longitude": -21.812416, "tags": [ "elit", "do", "in", "id", "incididunt", "occaecat", "exercitation" ], "friends": [ { "id": 0, "name": "Ines Russell" }, { "id": 1, "name": "Vinson Reese" }, { "id": 2, "name": "John Short" } ], "greeting": "Hello, Celeste Dodson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea241d0e7f88b70d001b", "index": 2077, "guid": "d9976fbf-e906-46c1-be21-485f28ab5148", "isActive": false, "balance": "$2,765.90", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Krystal Cameron", "gender": "female", "company": "QUONK", "email": "krystalcameron@quonk.com", "phone": "+1 (970) 492-3725", "address": "534 Jackson Court, Fairforest, Delaware, 3677", "about": "Ipsum exercitation amet laborum consectetur pariatur tempor labore. Proident deserunt eu occaecat duis exercitation irure dolore excepteur laboris. Cillum sint cillum adipisicing cillum aliquip. Aute anim excepteur veniam aliqua esse laboris esse in amet esse id consequat. Eiusmod mollit sint amet cillum ut ad voluptate consectetur cupidatat ut elit ex voluptate.\r\n", "registered": "2014-04-23T17:55:48-12:00", "latitude": -62.07677, "longitude": 50.994987, "tags": [ "sint", "ipsum", "nulla", "reprehenderit", "proident", "do", "ipsum" ], "friends": [ { "id": 0, "name": "Nell Lawrence" }, { "id": 1, "name": "Erna Small" }, { "id": 2, "name": "Webb Wilkins" } ], "greeting": "Hello, Krystal Cameron! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24d89f5797d4401ce8", "index": 2078, "guid": "303f899a-f559-49af-98b4-fc956539d235", "isActive": true, "balance": "$1,976.61", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Leigh Frye", "gender": "female", "company": "XEREX", "email": "leighfrye@xerex.com", "phone": "+1 (994) 514-3574", "address": "843 Boerum Street, Frystown, Pennsylvania, 2224", "about": "Officia velit nisi sunt mollit quis pariatur ea consectetur consectetur. Lorem et fugiat est consectetur aliqua tempor sunt Lorem. Veniam eu sint labore enim duis nisi deserunt. Mollit voluptate proident reprehenderit enim.\r\n", "registered": "2014-03-06T03:13:15-13:00", "latitude": 55.906665, "longitude": 89.279842, "tags": [ "consequat", "excepteur", "ea", "culpa", "voluptate", "occaecat", "laborum" ], "friends": [ { "id": 0, "name": "Callie Medina" }, { "id": 1, "name": "Margarita Terry" }, { "id": 2, "name": "Rivas Mccullough" } ], "greeting": "Hello, Leigh Frye! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2444c9d1a99256a3dd", "index": 2079, "guid": "83f6fd7a-c65e-4b55-8088-7d39643fd338", "isActive": false, "balance": "$3,310.74", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Baxter Manning", "gender": "male", "company": "FANFARE", "email": "baxtermanning@fanfare.com", "phone": "+1 (893) 564-3212", "address": "140 Hegeman Avenue, Harold, Georgia, 8456", "about": "Excepteur consequat voluptate aliqua quis non ipsum fugiat est Lorem proident consectetur. Nisi culpa sunt non sit cupidatat adipisicing enim non fugiat. Elit quis mollit et laborum enim reprehenderit Lorem do Lorem deserunt. Officia qui eu in velit labore sit adipisicing culpa deserunt excepteur. Velit dolore fugiat minim adipisicing do occaecat cupidatat.\r\n", "registered": "2014-09-21T16:57:35-12:00", "latitude": -0.182108, "longitude": -145.59006, "tags": [ "nisi", "do", "eiusmod", "aliquip", "dolore", "id", "irure" ], "friends": [ { "id": 0, "name": "Farley Langley" }, { "id": 1, "name": "Elise Jackson" }, { "id": 2, "name": "Miranda Grant" } ], "greeting": "Hello, Baxter Manning! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2406ff708816f1d663", "index": 2080, "guid": "0718d743-901d-4b67-bed3-d9320adfbc7d", "isActive": false, "balance": "$3,010.42", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Blackwell Hatfield", "gender": "male", "company": "TROPOLI", "email": "blackwellhatfield@tropoli.com", "phone": "+1 (854) 560-3034", "address": "709 Kermit Place, Oasis, North Dakota, 6666", "about": "Id id nostrud officia laborum. Consequat magna velit ex quis commodo labore culpa. Exercitation minim deserunt nisi irure ad pariatur amet ut consectetur eiusmod. Aute nostrud ea sit excepteur laboris deserunt. Irure mollit minim et consectetur commodo voluptate anim duis cupidatat dolore veniam. Dolor deserunt pariatur veniam pariatur ipsum. Ad est in sint labore eiusmod.\r\n", "registered": "2014-01-25T21:58:57-13:00", "latitude": -6.875818, "longitude": -53.563421, "tags": [ "qui", "sint", "occaecat", "eu", "nostrud", "adipisicing", "magna" ], "friends": [ { "id": 0, "name": "Mendoza Hodges" }, { "id": 1, "name": "Ortiz Trevino" }, { "id": 2, "name": "Therese Thornton" } ], "greeting": "Hello, Blackwell Hatfield! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea244f8845b5ad1a82f4", "index": 2081, "guid": "2f8dbb8a-1737-4696-b4a5-56673fef2d2f", "isActive": false, "balance": "$2,741.53", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Talley Kelley", "gender": "male", "company": "PROWASTE", "email": "talleykelley@prowaste.com", "phone": "+1 (850) 483-3162", "address": "902 Louisa Street, Tilleda, Louisiana, 3847", "about": "Aute laboris est aliqua ad labore sit irure qui proident anim et excepteur. Sunt est consequat deserunt pariatur nulla qui excepteur eiusmod cillum velit ad aliquip. Duis laborum proident aliqua laborum exercitation culpa esse fugiat aliqua proident. Ad reprehenderit consequat do qui enim eu amet ea ea laborum ut quis sunt. Do magna ipsum aute ad in elit consequat occaecat nostrud ullamco. Cillum eu labore ut deserunt sint mollit dolor id nisi sit ea labore eu do.\r\n", "registered": "2014-09-18T10:25:01-12:00", "latitude": -50.475389, "longitude": 17.49467, "tags": [ "elit", "ipsum", "eu", "exercitation", "cupidatat", "commodo", "nisi" ], "friends": [ { "id": 0, "name": "Sophie Joseph" }, { "id": 1, "name": "Navarro Stephens" }, { "id": 2, "name": "Maryanne Norman" } ], "greeting": "Hello, Talley Kelley! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24555eb97b25c4d87c", "index": 2082, "guid": "adc902be-70ff-4de0-a326-a35ab7c79675", "isActive": true, "balance": "$2,487.00", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Summers Nash", "gender": "male", "company": "ZENCO", "email": "summersnash@zenco.com", "phone": "+1 (868) 572-3822", "address": "856 Hunterfly Place, Layhill, Northern Mariana Islands, 6634", "about": "Ullamco enim amet laboris do. Occaecat tempor non occaecat esse aliquip nulla enim. Cillum incididunt et dolor elit sunt minim. Amet esse incididunt sunt cupidatat. Tempor irure velit incididunt enim do nostrud ut consectetur culpa et aliquip veniam. Occaecat non exercitation velit deserunt.\r\n", "registered": "2014-05-27T03:49:28-12:00", "latitude": -88.692692, "longitude": 34.112557, "tags": [ "voluptate", "consectetur", "labore", "cupidatat", "ullamco", "ut", "amet" ], "friends": [ { "id": 0, "name": "Hollie Gibbs" }, { "id": 1, "name": "Marjorie Foreman" }, { "id": 2, "name": "Pearl Leon" } ], "greeting": "Hello, Summers Nash! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24c3c898b4459a1dfc", "index": 2083, "guid": "5032ac3f-db65-422e-9b61-fd535306719e", "isActive": true, "balance": "$1,053.04", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Charity Holt", "gender": "female", "company": "NETPLAX", "email": "charityholt@netplax.com", "phone": "+1 (954) 574-3834", "address": "124 Juliana Place, Iola, Colorado, 3090", "about": "Aute veniam ut elit ex aliquip eiusmod officia nulla exercitation. Irure tempor proident non id sit non ut Lorem amet veniam. Pariatur deserunt magna eu veniam aute ut elit ea non consectetur est. Ea dolore aliqua dolor sint excepteur eiusmod.\r\n", "registered": "2014-03-01T03:28:58-13:00", "latitude": 12.517862, "longitude": -121.547286, "tags": [ "reprehenderit", "deserunt", "deserunt", "fugiat", "consequat", "laborum", "enim" ], "friends": [ { "id": 0, "name": "Mcgee Griffin" }, { "id": 1, "name": "Mamie Sutton" }, { "id": 2, "name": "Frye Woodard" } ], "greeting": "Hello, Charity Holt! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea243648cca82679f645", "index": 2084, "guid": "3ff2f7ac-bdda-4f38-8ed2-5db7bc07629a", "isActive": true, "balance": "$3,356.83", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Lara Larsen", "gender": "male", "company": "ZIPAK", "email": "laralarsen@zipak.com", "phone": "+1 (857) 430-3179", "address": "401 Wythe Avenue, Boling, Idaho, 2880", "about": "Enim qui tempor ut duis mollit esse duis incididunt. Consectetur dolor voluptate excepteur nostrud nostrud nostrud id adipisicing magna ut quis. Incididunt quis ullamco do officia anim exercitation in ex. Nisi duis consectetur sunt voluptate. Occaecat esse voluptate veniam ex Lorem nisi ex duis excepteur.\r\n", "registered": "2014-01-13T14:52:48-13:00", "latitude": 58.15429, "longitude": -161.761815, "tags": [ "ullamco", "nulla", "labore", "ea", "in", "et", "commodo" ], "friends": [ { "id": 0, "name": "Fulton Parks" }, { "id": 1, "name": "Bettie Benson" }, { "id": 2, "name": "Wood Jefferson" } ], "greeting": "Hello, Lara Larsen! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea245cc16db2457f2f45", "index": 2085, "guid": "c4e21360-1691-45d8-a2b9-66933b332e10", "isActive": false, "balance": "$1,335.01", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Guerra Ruiz", "gender": "male", "company": "PARCOE", "email": "guerraruiz@parcoe.com", "phone": "+1 (854) 541-2863", "address": "816 Bainbridge Street, Rosine, Marshall Islands, 4149", "about": "Do culpa in adipisicing est Lorem Lorem eu veniam. Magna Lorem id proident nisi. Commodo do minim ut pariatur nostrud irure magna non in officia enim officia. Excepteur magna nisi minim deserunt ut esse velit dolor. Occaecat fugiat tempor laborum enim ad. Laboris Lorem adipisicing tempor consectetur in reprehenderit qui minim voluptate eiusmod ex ex. Excepteur esse anim elit officia occaecat.\r\n", "registered": "2014-02-03T03:09:03-13:00", "latitude": 46.454166, "longitude": -78.269629, "tags": [ "occaecat", "cillum", "ipsum", "veniam", "occaecat", "laboris", "aute" ], "friends": [ { "id": 0, "name": "Sheryl Mclaughlin" }, { "id": 1, "name": "Rosanne Bernard" }, { "id": 2, "name": "Maude Bonner" } ], "greeting": "Hello, Guerra Ruiz! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24f7e64337b1196a8b", "index": 2086, "guid": "2f4bc66d-73cb-4231-af91-33280a045102", "isActive": true, "balance": "$3,521.98", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Abigail Fischer", "gender": "female", "company": "ANARCO", "email": "abigailfischer@anarco.com", "phone": "+1 (992) 497-3352", "address": "985 Richmond Street, Hannasville, New York, 8299", "about": "Fugiat minim ut excepteur sit dolor tempor. Magna ex ut voluptate labore. Ut qui minim do consectetur duis nulla exercitation laboris eiusmod. Deserunt nulla adipisicing elit labore eiusmod Lorem ullamco eu aliquip labore est qui occaecat ea. Culpa est Lorem eu incididunt nostrud fugiat laboris commodo ea irure et. Sint elit mollit ad aute consequat aute elit est mollit culpa velit velit pariatur velit. Ex aute reprehenderit dolor enim deserunt officia.\r\n", "registered": "2014-08-09T14:30:59-12:00", "latitude": -53.456956, "longitude": 73.475058, "tags": [ "quis", "proident", "Lorem", "sint", "proident", "proident", "ea" ], "friends": [ { "id": 0, "name": "Latonya Whitney" }, { "id": 1, "name": "Ivy Conway" }, { "id": 2, "name": "Good Patton" } ], "greeting": "Hello, Abigail Fischer! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea249703e1961485a5b9", "index": 2087, "guid": "d442f3df-779b-4b15-8dc6-716d92e525b8", "isActive": false, "balance": "$2,077.00", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Sandoval Hahn", "gender": "male", "company": "EYEWAX", "email": "sandovalhahn@eyewax.com", "phone": "+1 (897) 555-2699", "address": "959 Nixon Court, Dennard, Guam, 3618", "about": "Veniam nulla nostrud excepteur Lorem aliqua proident eu incididunt tempor. Minim deserunt voluptate qui elit ullamco. Eu velit est in reprehenderit. Pariatur nisi ex consequat deserunt excepteur officia anim reprehenderit. Laborum nostrud sit ea ea occaecat excepteur adipisicing fugiat magna ex aliquip do aliqua pariatur. Magna nisi elit ea labore adipisicing dolor. Occaecat ea velit pariatur quis duis nostrud deserunt consequat eu cupidatat voluptate sint commodo.\r\n", "registered": "2014-09-05T02:18:13-12:00", "latitude": 64.866718, "longitude": 87.21729, "tags": [ "Lorem", "labore", "excepteur", "velit", "sunt", "sit", "esse" ], "friends": [ { "id": 0, "name": "Eula Mcpherson" }, { "id": 1, "name": "Carla Cabrera" }, { "id": 2, "name": "Cornelia Sanchez" } ], "greeting": "Hello, Sandoval Hahn! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2401c6ef59cbf788fe", "index": 2088, "guid": "1046f567-87db-44ad-a447-78a78a880b78", "isActive": true, "balance": "$1,423.36", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Noelle Davidson", "gender": "female", "company": "SUPPORTAL", "email": "noelledavidson@supportal.com", "phone": "+1 (874) 482-3472", "address": "143 Georgia Avenue, Hayes, Virgin Islands, 9805", "about": "Duis aliquip ea elit officia nisi in fugiat quis reprehenderit. Reprehenderit esse sunt minim et et. Magna incididunt nostrud sunt non ipsum ex consequat excepteur minim ut est sit veniam laborum. Qui anim sit aute elit. Amet occaecat nostrud do occaecat nulla nulla culpa consequat magna officia proident ex amet.\r\n", "registered": "2014-04-13T04:11:29-12:00", "latitude": -88.537304, "longitude": -21.035653, "tags": [ "laborum", "aliquip", "nostrud", "fugiat", "magna", "labore", "qui" ], "friends": [ { "id": 0, "name": "Molina Preston" }, { "id": 1, "name": "Lilia Williams" }, { "id": 2, "name": "Hyde Reilly" } ], "greeting": "Hello, Noelle Davidson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24ac1350e3503e15eb", "index": 2089, "guid": "7687e14e-32db-40ef-806b-b71b43e95df5", "isActive": true, "balance": "$3,223.61", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Leslie Jacobson", "gender": "female", "company": "CORECOM", "email": "lesliejacobson@corecom.com", "phone": "+1 (882) 523-3819", "address": "252 Fair Street, Winchester, Massachusetts, 7584", "about": "Deserunt ad ut excepteur esse non in culpa dolor exercitation id sint id dolore. Enim eiusmod non duis consectetur id id ipsum et dolor non labore. Est fugiat ipsum aliquip quis ut veniam exercitation elit ut enim aliquip adipisicing voluptate. Duis proident eu enim velit eiusmod consectetur. Cillum officia do excepteur sit. Laborum commodo sint nostrud nisi velit ullamco sunt occaecat deserunt ut irure id consectetur. Esse ea sit pariatur officia qui veniam sint reprehenderit in dolore.\r\n", "registered": "2014-03-11T22:20:42-13:00", "latitude": 1.182087, "longitude": -11.649767, "tags": [ "dolor", "consequat", "aliquip", "enim", "fugiat", "aliqua", "dolore" ], "friends": [ { "id": 0, "name": "Zelma Jones" }, { "id": 1, "name": "Vickie Bennett" }, { "id": 2, "name": "Julianne Quinn" } ], "greeting": "Hello, Leslie Jacobson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea242e6aef1768666a75", "index": 2090, "guid": "1695add0-3467-47f4-8eff-cb13f005a973", "isActive": false, "balance": "$2,269.97", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Augusta Zimmerman", "gender": "female", "company": "ISOLOGIA", "email": "augustazimmerman@isologia.com", "phone": "+1 (802) 563-2518", "address": "482 Seeley Street, Townsend, Utah, 3233", "about": "Duis exercitation sint duis minim amet excepteur commodo sit culpa dolore et exercitation ad velit. Ut laborum commodo sunt ea sunt sit eiusmod voluptate minim excepteur mollit cillum. Qui do id incididunt enim excepteur officia commodo eu elit est nostrud. Deserunt aliqua consequat voluptate dolor aliqua. Et nulla nisi tempor anim ullamco qui sint anim sunt deserunt eiusmod sint id.\r\n", "registered": "2014-05-13T18:31:10-12:00", "latitude": -16.749585, "longitude": -146.626805, "tags": [ "veniam", "adipisicing", "laboris", "exercitation", "pariatur", "deserunt", "tempor" ], "friends": [ { "id": 0, "name": "Haynes Cruz" }, { "id": 1, "name": "Angie Moody" }, { "id": 2, "name": "Eunice Barton" } ], "greeting": "Hello, Augusta Zimmerman! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24fbb9e98be85d4ddd", "index": 2091, "guid": "a5081a56-0527-44fc-84a0-cca7427fdf88", "isActive": true, "balance": "$1,855.19", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Stone Ayala", "gender": "male", "company": "CENTREE", "email": "stoneayala@centree.com", "phone": "+1 (820) 495-2337", "address": "179 Hudson Avenue, Keyport, Montana, 7002", "about": "Laborum ex ex ullamco officia exercitation nisi elit in mollit exercitation consequat ullamco. Velit et dolore veniam pariatur ea ea magna amet sint nostrud commodo. Proident fugiat exercitation fugiat ipsum ipsum fugiat consequat do laborum officia dolore adipisicing. In do nostrud minim incididunt elit magna ex labore Lorem quis tempor culpa est. Anim adipisicing ea enim exercitation. Nulla dolore fugiat reprehenderit quis aliqua exercitation adipisicing exercitation culpa. Incididunt labore ullamco ipsum enim Lorem cupidatat reprehenderit.\r\n", "registered": "2014-04-07T19:39:24-12:00", "latitude": 21.163028, "longitude": 158.193139, "tags": [ "do", "ullamco", "fugiat", "quis", "sint", "culpa", "sint" ], "friends": [ { "id": 0, "name": "Walls Workman" }, { "id": 1, "name": "Bruce Hopper" }, { "id": 2, "name": "Diann Turner" } ], "greeting": "Hello, Stone Ayala! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24366aa4f1b892dc86", "index": 2092, "guid": "21101261-e4fe-4481-a607-53d1f5cdf1c7", "isActive": true, "balance": "$1,301.87", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Booth Shaffer", "gender": "male", "company": "GYNKO", "email": "boothshaffer@gynko.com", "phone": "+1 (831) 416-2961", "address": "180 Highlawn Avenue, Brenton, Wisconsin, 5080", "about": "Anim fugiat cupidatat reprehenderit cupidatat irure qui. Aliquip nisi laborum proident sit est reprehenderit ex proident consectetur ipsum nostrud ut tempor. Fugiat sint nostrud elit do est amet id aliquip.\r\n", "registered": "2014-01-23T03:30:51-13:00", "latitude": 81.672876, "longitude": 46.554479, "tags": [ "incididunt", "dolore", "laboris", "aliquip", "anim", "excepteur", "nostrud" ], "friends": [ { "id": 0, "name": "Hannah Miranda" }, { "id": 1, "name": "Krista Cash" }, { "id": 2, "name": "Jody Randall" } ], "greeting": "Hello, Booth Shaffer! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24ec574fafc745ff06", "index": 2093, "guid": "e8cf2ad5-6930-4156-b627-8bba2264b6d2", "isActive": true, "balance": "$1,382.56", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Hunt Drake", "gender": "male", "company": "BIOHAB", "email": "huntdrake@biohab.com", "phone": "+1 (931) 564-2393", "address": "973 Bills Place, Hoagland, Maine, 3734", "about": "Non ipsum occaecat ullamco enim. Consequat ea eiusmod proident reprehenderit mollit pariatur eu. Labore adipisicing incididunt duis enim dolor anim cillum. Et duis incididunt ad aute aute duis aliquip magna magna aliquip labore voluptate. Adipisicing sint cillum esse ut excepteur tempor officia mollit in ea. Ut aliqua mollit ad dolor mollit veniam aliquip officia minim duis esse cupidatat.\r\n", "registered": "2014-06-05T05:22:29-12:00", "latitude": -8.581104, "longitude": -58.178079, "tags": [ "laborum", "amet", "eu", "dolor", "ipsum", "laboris", "in" ], "friends": [ { "id": 0, "name": "Blake Calderon" }, { "id": 1, "name": "Roman Mckinney" }, { "id": 2, "name": "Jaime Estrada" } ], "greeting": "Hello, Hunt Drake! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea248ae8fd1f0b6162d9", "index": 2094, "guid": "43442747-2ae7-4b42-9d40-c2641a7d7973", "isActive": true, "balance": "$3,043.26", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Morton Weaver", "gender": "male", "company": "VERAQ", "email": "mortonweaver@veraq.com", "phone": "+1 (988) 484-2675", "address": "878 Empire Boulevard, Tedrow, Virginia, 2319", "about": "Amet anim aliquip adipisicing sint voluptate anim mollit amet nisi exercitation anim. Est mollit ad incididunt eu nostrud nostrud irure occaecat mollit ad dolor laborum et. Esse dolore nulla sit occaecat nisi qui. Lorem dolor est velit officia sit laborum reprehenderit veniam enim magna nisi. Occaecat ullamco sint veniam cupidatat ex veniam ea dolore aliqua nisi mollit eu laboris.\r\n", "registered": "2014-01-24T23:03:48-13:00", "latitude": -87.918789, "longitude": -145.867641, "tags": [ "elit", "est", "dolore", "esse", "nostrud", "minim", "aliquip" ], "friends": [ { "id": 0, "name": "Virginia Welch" }, { "id": 1, "name": "Trevino Durham" }, { "id": 2, "name": "Munoz Woodward" } ], "greeting": "Hello, Morton Weaver! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea243b08eedf7a8ff4ad", "index": 2095, "guid": "dbf0736c-def9-4557-b410-70988041676e", "isActive": true, "balance": "$2,116.01", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Sheppard Fowler", "gender": "male", "company": "CORIANDER", "email": "sheppardfowler@coriander.com", "phone": "+1 (957) 524-2324", "address": "119 Herkimer Place, Byrnedale, Kentucky, 8135", "about": "Et esse laborum eiusmod sint amet incididunt aliqua non id. Culpa adipisicing mollit ullamco do pariatur Lorem irure eu commodo minim excepteur. Voluptate veniam id cillum ut nulla. Commodo enim cupidatat elit eu.\r\n", "registered": "2014-01-31T15:19:02-13:00", "latitude": -56.346167, "longitude": -114.479219, "tags": [ "laboris", "est", "culpa", "et", "id", "duis", "occaecat" ], "friends": [ { "id": 0, "name": "Clayton Holloway" }, { "id": 1, "name": "Turner Britt" }, { "id": 2, "name": "Travis Berg" } ], "greeting": "Hello, Sheppard Fowler! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24977b3e6bf6661862", "index": 2096, "guid": "80107629-9df9-49fd-94ee-f883b919c257", "isActive": false, "balance": "$1,237.48", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Schwartz Moss", "gender": "male", "company": "APEX", "email": "schwartzmoss@apex.com", "phone": "+1 (982) 451-2931", "address": "382 Nova Court, Basye, Connecticut, 7403", "about": "Sunt velit eiusmod labore nostrud ex id ullamco ipsum sit. Officia dolore ex nisi velit consequat dolore reprehenderit. Aliquip elit duis commodo magna et commodo ad quis ad incididunt proident ut do. Qui culpa eiusmod nulla est laborum proident do voluptate exercitation nulla adipisicing consequat nostrud et. Quis labore esse esse tempor do est sint ad ad deserunt minim officia nulla.\r\n", "registered": "2014-06-08T09:23:42-12:00", "latitude": -24.999124, "longitude": 112.164436, "tags": [ "Lorem", "ullamco", "occaecat", "ut", "ipsum", "ex", "officia" ], "friends": [ { "id": 0, "name": "Jacobs Stark" }, { "id": 1, "name": "Reyna Mendoza" }, { "id": 2, "name": "Welch Harrison" } ], "greeting": "Hello, Schwartz Moss! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea245c95106f5b0b6b16", "index": 2097, "guid": "0c10eb10-233d-405c-9e71-07929c41a720", "isActive": true, "balance": "$1,352.44", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Carpenter Dickerson", "gender": "male", "company": "EVEREST", "email": "carpenterdickerson@everest.com", "phone": "+1 (932) 431-3105", "address": "667 Adams Street, Irwin, Mississippi, 4401", "about": "Ex duis ea enim dolore non cupidatat proident cupidatat. Elit commodo excepteur magna laboris. Deserunt reprehenderit ipsum et enim aute incididunt commodo esse.\r\n", "registered": "2014-02-04T03:33:05-13:00", "latitude": 24.324406, "longitude": 107.952907, "tags": [ "cillum", "magna", "pariatur", "ex", "ea", "sunt", "veniam" ], "friends": [ { "id": 0, "name": "Blair Arnold" }, { "id": 1, "name": "Taylor Rodriquez" }, { "id": 2, "name": "Palmer Guy" } ], "greeting": "Hello, Carpenter Dickerson! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea241cc331c7eabd4026", "index": 2098, "guid": "393b519c-268f-4238-a0eb-d122bf9d6904", "isActive": true, "balance": "$2,891.98", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "King Vang", "gender": "male", "company": "ROCKYARD", "email": "kingvang@rockyard.com", "phone": "+1 (983) 549-3729", "address": "499 Maujer Street, Emison, Washington, 6725", "about": "Quis pariatur ea ut cillum Lorem sunt nisi magna. Culpa ullamco laboris cupidatat excepteur commodo. Deserunt ullamco non commodo minim sunt commodo voluptate qui. Deserunt velit excepteur duis anim aute pariatur magna et ut velit mollit excepteur voluptate culpa.\r\n", "registered": "2014-03-23T19:41:01-13:00", "latitude": -40.686267, "longitude": -147.848245, "tags": [ "aliqua", "veniam", "cupidatat", "officia", "aliquip", "fugiat", "sunt" ], "friends": [ { "id": 0, "name": "Marshall Lynn" }, { "id": 1, "name": "Joseph York" }, { "id": 2, "name": "Michelle Erickson" } ], "greeting": "Hello, King Vang! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea240e3b1ccf45d83816", "index": 2099, "guid": "09ffb68d-3458-4c70-b418-e06855e681b0", "isActive": false, "balance": "$3,519.73", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Kathleen Fields", "gender": "female", "company": "PASTURIA", "email": "kathleenfields@pasturia.com", "phone": "+1 (898) 442-3958", "address": "544 Willoughby Street, Norris, Tennessee, 4979", "about": "Fugiat ullamco ullamco sint ipsum veniam ad aute ullamco. Esse exercitation labore reprehenderit aute non. Do est magna fugiat enim incididunt ut sunt. Elit sit ea commodo qui sit amet aliquip veniam qui excepteur dolor eu. Deserunt ea commodo reprehenderit quis duis fugiat fugiat cillum officia. Sunt nulla irure minim culpa enim.\r\n", "registered": "2014-03-30T18:37:17-13:00", "latitude": 0.431246, "longitude": -47.336231, "tags": [ "nulla", "cillum", "esse", "ea", "exercitation", "culpa", "ex" ], "friends": [ { "id": 0, "name": "Kaye Aguilar" }, { "id": 1, "name": "Shari Gomez" }, { "id": 2, "name": "Lucinda Stewart" } ], "greeting": "Hello, Kathleen Fields! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24e095d21104960aff", "index": 2100, "guid": "38e2adff-24db-4f7a-a96d-c62ced2ee1be", "isActive": false, "balance": "$1,941.80", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Avis Foster", "gender": "female", "company": "KRAGGLE", "email": "avisfoster@kraggle.com", "phone": "+1 (846) 573-3124", "address": "391 Middagh Street, Mulberry, Alabama, 4398", "about": "Duis proident Lorem deserunt non nostrud ut commodo. Laboris laboris consectetur consequat Lorem Lorem qui commodo anim excepteur. Duis ad labore occaecat minim sit duis nulla sint labore enim aliquip esse. Labore duis laborum reprehenderit mollit cupidatat ex sit nulla ipsum. In qui veniam commodo officia cupidatat non est proident mollit dolore cupidatat. Magna eu est cupidatat duis id aliqua qui consequat adipisicing Lorem consequat adipisicing. Consequat commodo in non excepteur laboris adipisicing officia veniam.\r\n", "registered": "2014-08-02T00:26:14-12:00", "latitude": 14.444244, "longitude": 100.589935, "tags": [ "cupidatat", "enim", "officia", "nulla", "proident", "minim", "non" ], "friends": [ { "id": 0, "name": "Marcie Pacheco" }, { "id": 1, "name": "Andrews Rodgers" }, { "id": 2, "name": "Young Meyers" } ], "greeting": "Hello, Avis Foster! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea241813f62934d5e36a", "index": 2101, "guid": "ffe2efed-8d62-4c49-b2b3-ca1496eab20c", "isActive": false, "balance": "$1,986.76", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Gomez Roach", "gender": "male", "company": "EXOPLODE", "email": "gomezroach@exoplode.com", "phone": "+1 (923) 558-3477", "address": "244 Nichols Avenue, Jacksonburg, Ohio, 2288", "about": "Voluptate dolore et amet voluptate nulla sunt Lorem. Exercitation dolor ex labore consequat dolore. Ut exercitation est eiusmod officia incididunt. Amet fugiat aliquip nostrud esse magna dolor ipsum do laboris quis aliquip deserunt cillum.\r\n", "registered": "2014-06-13T08:24:30-12:00", "latitude": -54.932847, "longitude": 149.615191, "tags": [ "laborum", "quis", "nulla", "commodo", "anim", "exercitation", "duis" ], "friends": [ { "id": 0, "name": "Marcella Gallegos" }, { "id": 1, "name": "Johns Stokes" }, { "id": 2, "name": "Jayne Marks" } ], "greeting": "Hello, Gomez Roach! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24b3a94fc3310ea6e4", "index": 2102, "guid": "cfbc381e-9616-420c-af27-eb9bc8626120", "isActive": false, "balance": "$3,205.08", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Laverne Woods", "gender": "female", "company": "HATOLOGY", "email": "lavernewoods@hatology.com", "phone": "+1 (884) 584-3304", "address": "104 Moultrie Street, Rodanthe, Hawaii, 6397", "about": "Qui ad non dolore eiusmod exercitation duis quis nulla velit irure duis nisi sit. Officia cupidatat non ea cillum esse reprehenderit est ex anim do consequat sint aute. Ex ex consequat mollit eu irure enim ipsum nulla. Laborum sit in culpa nulla do do proident tempor exercitation excepteur anim voluptate incididunt eu. Voluptate culpa exercitation veniam eu excepteur pariatur eiusmod quis minim. Consequat veniam eiusmod qui nisi eiusmod ex eiusmod non dolore.\r\n", "registered": "2014-07-08T23:50:12-12:00", "latitude": 52.870027, "longitude": 100.333961, "tags": [ "excepteur", "ex", "veniam", "irure", "tempor", "nulla", "elit" ], "friends": [ { "id": 0, "name": "Kelley Briggs" }, { "id": 1, "name": "Leon Serrano" }, { "id": 2, "name": "Walton Cooper" } ], "greeting": "Hello, Laverne Woods! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24cefb5ec1650cc7a5", "index": 2103, "guid": "ef044c36-87e9-4dd4-a050-edae7f767282", "isActive": false, "balance": "$2,007.77", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Isabella Floyd", "gender": "female", "company": "GENEKOM", "email": "isabellafloyd@genekom.com", "phone": "+1 (954) 516-2570", "address": "440 Turner Place, Sunwest, New Mexico, 7687", "about": "Culpa eiusmod pariatur aute labore ex mollit non consequat minim aute Lorem nulla est amet. Lorem duis id exercitation culpa ea proident id eu et labore. Ullamco sunt tempor voluptate proident aute Lorem velit velit ad excepteur ut est labore. Officia culpa id amet eiusmod irure do ullamco sunt non officia exercitation velit. Amet elit minim qui incididunt fugiat aliquip eu et id. Do velit nisi Lorem proident ex duis veniam exercitation dolore officia.\r\n", "registered": "2014-01-18T16:12:18-13:00", "latitude": 19.324467, "longitude": -164.033017, "tags": [ "ex", "aliqua", "sunt", "id", "velit", "anim", "labore" ], "friends": [ { "id": 0, "name": "Kristine Stevenson" }, { "id": 1, "name": "Susanna Sargent" }, { "id": 2, "name": "Britney Johnston" } ], "greeting": "Hello, Isabella Floyd! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24552334842837cdf8", "index": 2104, "guid": "1f14e35e-5970-46eb-a17d-55a6fe86ad81", "isActive": true, "balance": "$2,096.25", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Mona Valenzuela", "gender": "female", "company": "HARMONEY", "email": "monavalenzuela@harmoney.com", "phone": "+1 (985) 533-2090", "address": "908 Havens Place, Longbranch, Maryland, 1030", "about": "Ea fugiat dolore excepteur et deserunt veniam sint fugiat exercitation laboris est Lorem dolor laborum. Excepteur qui dolor veniam cupidatat incididunt exercitation. Irure Lorem in quis non aliqua adipisicing mollit quis in sint pariatur. Voluptate labore tempor commodo aute excepteur eu nostrud consequat culpa fugiat dolor sunt in. Voluptate occaecat ipsum exercitation nostrud ad tempor eu est enim proident voluptate elit in irure.\r\n", "registered": "2014-04-07T18:33:51-12:00", "latitude": -5.284165, "longitude": -127.975482, "tags": [ "laboris", "ullamco", "adipisicing", "in", "eu", "dolor", "dolore" ], "friends": [ { "id": 0, "name": "Santiago Richards" }, { "id": 1, "name": "Annette Duffy" }, { "id": 2, "name": "Frost Blanchard" } ], "greeting": "Hello, Mona Valenzuela! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24cfd796abf2a2dfdd", "index": 2105, "guid": "78efacd0-6913-48b1-9d4c-2fbdc41b8464", "isActive": false, "balance": "$3,576.34", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Greene Craig", "gender": "male", "company": "MATRIXITY", "email": "greenecraig@matrixity.com", "phone": "+1 (944) 482-2744", "address": "353 Lake Avenue, Clayville, Alaska, 568", "about": "Enim laboris ipsum exercitation tempor amet exercitation occaecat. Veniam tempor et mollit occaecat ipsum ex consequat sint consectetur tempor. Occaecat aliqua pariatur esse exercitation nulla irure incididunt ex proident non mollit eiusmod nostrud mollit. Quis deserunt ipsum consequat minim in anim consectetur consequat mollit. Laboris sunt Lorem officia aute excepteur fugiat magna minim Lorem elit officia ad ipsum. Aute officia cillum anim do nostrud fugiat occaecat reprehenderit duis adipisicing excepteur quis. Amet non sit est nulla commodo occaecat exercitation tempor proident eiusmod elit nisi.\r\n", "registered": "2014-07-20T15:34:48-12:00", "latitude": 55.375347, "longitude": -151.809451, "tags": [ "sint", "eu", "in", "et", "aliqua", "irure", "anim" ], "friends": [ { "id": 0, "name": "Kari Byrd" }, { "id": 1, "name": "Corina White" }, { "id": 2, "name": "Henson Hensley" } ], "greeting": "Hello, Greene Craig! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24bbb387376c0a7b7c", "index": 2106, "guid": "e008614a-a17c-4039-802d-964c27d73cb0", "isActive": false, "balance": "$2,462.94", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Rodgers Martinez", "gender": "male", "company": "ROCKLOGIC", "email": "rodgersmartinez@rocklogic.com", "phone": "+1 (959) 506-3814", "address": "537 Newton Street, Gulf, Arizona, 6514", "about": "Commodo sit qui amet ad ex nostrud proident ea occaecat magna duis culpa enim incididunt. Eiusmod elit veniam aute cupidatat nulla ad. Do Lorem qui amet consequat consectetur non elit enim. Quis in magna sit laboris sit exercitation aliquip velit. Incididunt consectetur irure dolore consectetur enim eiusmod eu adipisicing veniam esse.\r\n", "registered": "2014-02-12T01:34:36-13:00", "latitude": -57.882819, "longitude": -60.673293, "tags": [ "mollit", "aute", "non", "eiusmod", "qui", "aliquip", "dolore" ], "friends": [ { "id": 0, "name": "Marissa Richmond" }, { "id": 1, "name": "Richard Mcclure" }, { "id": 2, "name": "Belinda Peters" } ], "greeting": "Hello, Rodgers Martinez! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea241f84967ef795b14c", "index": 2107, "guid": "7b0781c5-d54c-4b56-87de-e9a8227c2a14", "isActive": true, "balance": "$3,763.77", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Kathie Lara", "gender": "female", "company": "CAXT", "email": "kathielara@caxt.com", "phone": "+1 (848) 517-2537", "address": "118 Hubbard Place, Bentley, Federated States Of Micronesia, 9011", "about": "Tempor commodo do non et ad sit mollit ut veniam incididunt deserunt. Reprehenderit sint nulla consectetur sunt sint voluptate cupidatat. Amet tempor commodo duis irure excepteur laborum cillum sint. Aliqua exercitation laborum nulla ipsum sit deserunt est laborum sint esse consequat consectetur mollit labore. Consectetur velit sit aliqua et fugiat irure nostrud excepteur fugiat.\r\n", "registered": "2014-04-06T14:30:34-12:00", "latitude": -63.816122, "longitude": -133.861416, "tags": [ "sit", "irure", "pariatur", "enim", "velit", "duis", "sint" ], "friends": [ { "id": 0, "name": "Jordan Cleveland" }, { "id": 1, "name": "Herminia Howell" }, { "id": 2, "name": "Payne Nielsen" } ], "greeting": "Hello, Kathie Lara! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24db1a7eb611f48597", "index": 2108, "guid": "b7a125df-e974-4b39-9335-7cee458b0d8f", "isActive": false, "balance": "$2,476.20", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Reid Rhodes", "gender": "male", "company": "LIQUICOM", "email": "reidrhodes@liquicom.com", "phone": "+1 (831) 445-2791", "address": "216 Nolans Lane, Alleghenyville, Oklahoma, 7986", "about": "Irure fugiat sint consectetur consequat minim nostrud et nostrud amet nulla anim excepteur. Sunt ipsum adipisicing ad esse occaecat non labore. Aute est veniam duis esse ipsum. Velit officia velit ut fugiat elit quis amet consectetur. Dolor labore commodo excepteur elit. Veniam fugiat sunt laborum quis ad nisi minim nulla exercitation est consequat velit aliquip.\r\n", "registered": "2014-04-06T22:11:05-12:00", "latitude": -80.439103, "longitude": 67.158769, "tags": [ "commodo", "laborum", "esse", "nostrud", "reprehenderit", "quis", "magna" ], "friends": [ { "id": 0, "name": "Marianne Hartman" }, { "id": 1, "name": "Whitley Travis" }, { "id": 2, "name": "Doreen Wilson" } ], "greeting": "Hello, Reid Rhodes! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2440cb7629afb27085", "index": 2109, "guid": "b5130eeb-5a9b-4742-9f5d-adad96a7395c", "isActive": false, "balance": "$1,359.94", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Shawna Pace", "gender": "female", "company": "NEOCENT", "email": "shawnapace@neocent.com", "phone": "+1 (889) 477-3734", "address": "536 Williamsburg Street, Bison, Michigan, 2233", "about": "Ut commodo pariatur cupidatat ut sit veniam consequat eiusmod enim. Ipsum eu minim eu quis ad elit ipsum qui mollit. Laborum nisi ullamco exercitation voluptate aliqua est in et. Voluptate exercitation irure adipisicing voluptate laboris sint eiusmod qui sit.\r\n", "registered": "2014-02-23T00:22:52-13:00", "latitude": -13.861731, "longitude": -60.603352, "tags": [ "enim", "id", "aute", "anim", "ipsum", "sunt", "duis" ], "friends": [ { "id": 0, "name": "Estrada Sparks" }, { "id": 1, "name": "Tina Patterson" }, { "id": 2, "name": "Malone Wood" } ], "greeting": "Hello, Shawna Pace! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2439fd6e8c5a425d19", "index": 2110, "guid": "878fbab7-3cfc-40cb-845a-6ac6ce764646", "isActive": true, "balance": "$2,007.18", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Mooney Rodriguez", "gender": "male", "company": "ZOMBOID", "email": "mooneyrodriguez@zomboid.com", "phone": "+1 (827) 477-3727", "address": "904 Hampton Place, Brethren, Kansas, 2693", "about": "Non deserunt id ea ad do veniam sit fugiat. Non laborum ipsum ullamco excepteur est excepteur. Proident eiusmod tempor exercitation reprehenderit. Tempor enim magna in fugiat nisi pariatur cillum. Commodo id in occaecat sunt aliqua ullamco esse.\r\n", "registered": "2014-06-02T21:59:50-12:00", "latitude": 61.968201, "longitude": -106.035438, "tags": [ "eiusmod", "qui", "incididunt", "magna", "sit", "esse", "consequat" ], "friends": [ { "id": 0, "name": "Gallegos Bates" }, { "id": 1, "name": "Ruth Shepard" }, { "id": 2, "name": "Cain Mercado" } ], "greeting": "Hello, Mooney Rodriguez! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2498ce17ccd8a16096", "index": 2111, "guid": "8293bb73-1a17-4fb9-a242-a3183f9b3b4b", "isActive": true, "balance": "$2,672.13", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Alvarez Fitzpatrick", "gender": "male", "company": "UNEEQ", "email": "alvarezfitzpatrick@uneeq.com", "phone": "+1 (950) 568-3215", "address": "896 Pooles Lane, Wheaton, South Dakota, 9825", "about": "Fugiat voluptate aliqua cupidatat officia in irure ut enim. Commodo aliquip esse fugiat dolore anim. Eiusmod culpa dolor anim commodo dolore non eu culpa aliqua id aliquip. Et amet pariatur voluptate deserunt non deserunt dolor amet adipisicing nulla sunt dolore aute. Nostrud in minim sit commodo pariatur laboris anim ex deserunt aliquip aliqua minim. Occaecat officia velit minim pariatur elit fugiat id ad esse proident incididunt ex.\r\n", "registered": "2014-09-07T00:56:06-12:00", "latitude": 49.924078, "longitude": 58.941886, "tags": [ "id", "sunt", "id", "nulla", "minim", "laboris", "fugiat" ], "friends": [ { "id": 0, "name": "Martina Hart" }, { "id": 1, "name": "Floyd Poole" }, { "id": 2, "name": "Stella Franks" } ], "greeting": "Hello, Alvarez Fitzpatrick! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24fb4bde33859294a6", "index": 2112, "guid": "3f8e8c1f-ecc3-4786-89e7-b413e1367974", "isActive": true, "balance": "$1,990.17", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Brennan Watson", "gender": "male", "company": "MARQET", "email": "brennanwatson@marqet.com", "phone": "+1 (868) 585-2199", "address": "494 Ashland Place, Otranto, West Virginia, 6117", "about": "Officia labore laboris ad nulla esse deserunt irure qui exercitation labore dolore. Voluptate enim tempor dolor incididunt quis ad officia. Deserunt nostrud velit dolore enim tempor nostrud duis est aliquip ipsum.\r\n", "registered": "2014-08-25T02:47:29-12:00", "latitude": 75.476737, "longitude": 117.825176, "tags": [ "dolor", "laboris", "dolor", "exercitation", "cillum", "incididunt", "pariatur" ], "friends": [ { "id": 0, "name": "Mcpherson Shaw" }, { "id": 1, "name": "Kramer Smith" }, { "id": 2, "name": "Carter Bell" } ], "greeting": "Hello, Brennan Watson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2409cbdcf26e307eee", "index": 2113, "guid": "f2b2a355-6ab3-49eb-a50f-aaec935fb9bb", "isActive": true, "balance": "$3,768.53", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Mitchell Simon", "gender": "male", "company": "ERSUM", "email": "mitchellsimon@ersum.com", "phone": "+1 (931) 486-3440", "address": "878 Herzl Street, Rosburg, Texas, 4703", "about": "Consequat nulla velit nisi ut. Ipsum Lorem commodo officia duis quis ut adipisicing cupidatat ex. Laborum nostrud dolore veniam enim sunt officia consequat sit.\r\n", "registered": "2014-06-20T19:49:54-12:00", "latitude": 9.810022, "longitude": -50.653753, "tags": [ "enim", "qui", "cillum", "occaecat", "velit", "nulla", "aute" ], "friends": [ { "id": 0, "name": "Barbara Orr" }, { "id": 1, "name": "Mccarty Page" }, { "id": 2, "name": "Kerri Greene" } ], "greeting": "Hello, Mitchell Simon! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24d89210c6f1609fb5", "index": 2114, "guid": "9d0f7f66-36c7-4592-bb6e-30b3f04656ae", "isActive": false, "balance": "$3,453.95", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Hayes Flowers", "gender": "male", "company": "ZILCH", "email": "hayesflowers@zilch.com", "phone": "+1 (888) 593-2933", "address": "333 Coles Street, Echo, Oregon, 3725", "about": "Fugiat id velit eu eu duis excepteur occaecat pariatur irure. Tempor magna cillum eu tempor veniam aliquip do qui enim incididunt id. Sint laboris duis et do. Enim exercitation dolor sunt fugiat sit incididunt nisi. Elit eiusmod laboris ullamco veniam Lorem tempor proident.\r\n", "registered": "2014-03-30T07:52:53-13:00", "latitude": 82.304164, "longitude": 118.169929, "tags": [ "quis", "irure", "eiusmod", "sit", "incididunt", "ut", "et" ], "friends": [ { "id": 0, "name": "Cherry Spencer" }, { "id": 1, "name": "Whitfield Booker" }, { "id": 2, "name": "Katina Vinson" } ], "greeting": "Hello, Hayes Flowers! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea246da4dcf0427c8f9b", "index": 2115, "guid": "232edc75-71d4-4d5a-8294-75011154e52e", "isActive": false, "balance": "$3,668.78", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Addie Craft", "gender": "female", "company": "MIRACLIS", "email": "addiecraft@miraclis.com", "phone": "+1 (894) 419-3151", "address": "942 Clifton Place, Sussex, Nevada, 4995", "about": "Culpa magna proident elit mollit ea ullamco. Officia sunt fugiat aliqua enim commodo nostrud. Quis pariatur reprehenderit adipisicing occaecat ad ipsum officia sint irure consequat occaecat aliqua. Voluptate quis laborum aliqua eiusmod non labore id non consequat. Ex aliqua non nisi anim aute sint ea et duis ullamco dolor minim. Tempor consectetur ea adipisicing ex ad sunt aliquip tempor laboris minim voluptate dolore in. Nulla ut qui exercitation veniam eiusmod minim nulla ea consequat.\r\n", "registered": "2014-04-19T15:18:02-12:00", "latitude": -4.086277, "longitude": 80.695029, "tags": [ "irure", "do", "veniam", "non", "eu", "dolore", "ea" ], "friends": [ { "id": 0, "name": "Stokes Frazier" }, { "id": 1, "name": "Christian Guerrero" }, { "id": 2, "name": "Whitaker Francis" } ], "greeting": "Hello, Addie Craft! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2448d6112b0724626c", "index": 2116, "guid": "fbab01e1-ea91-418b-aaad-29688d550341", "isActive": false, "balance": "$3,145.45", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Kendra Wiley", "gender": "female", "company": "GEEKOL", "email": "kendrawiley@geekol.com", "phone": "+1 (901) 488-2705", "address": "811 Plymouth Street, Ripley, Minnesota, 9625", "about": "Do nulla laboris aliqua laboris irure sit non ullamco fugiat. Qui cupidatat laborum cupidatat id fugiat dolore irure laborum eiusmod laborum fugiat duis. Commodo deserunt culpa ipsum dolore commodo laborum exercitation fugiat voluptate sunt consequat. Aliquip cupidatat voluptate magna aute veniam dolor elit tempor est adipisicing aute culpa minim.\r\n", "registered": "2014-04-03T04:43:44-13:00", "latitude": 74.816832, "longitude": -7.3185, "tags": [ "anim", "laborum", "cillum", "culpa", "irure", "deserunt", "consequat" ], "friends": [ { "id": 0, "name": "Keisha Kelly" }, { "id": 1, "name": "Isabel Klein" }, { "id": 2, "name": "Sharron Mcbride" } ], "greeting": "Hello, Kendra Wiley! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24b73ce77fa91c2f91", "index": 2117, "guid": "9bc5c7e5-8a47-423e-b929-6a1772940d61", "isActive": true, "balance": "$2,809.72", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Cecile Carey", "gender": "female", "company": "BUGSALL", "email": "cecilecarey@bugsall.com", "phone": "+1 (820) 541-2178", "address": "678 Pershing Loop, Craig, Missouri, 5617", "about": "Quis sit ex adipisicing mollit labore pariatur enim est enim enim incididunt. Ex nisi enim ut aute et eiusmod sit ut laboris ullamco. Voluptate cupidatat reprehenderit veniam sit est qui amet consectetur ea ex. Pariatur cillum enim commodo non id voluptate Lorem ullamco duis nostrud aliquip eu.\r\n", "registered": "2014-09-21T03:52:53-12:00", "latitude": 75.029137, "longitude": -33.33933, "tags": [ "ea", "quis", "quis", "dolore", "et", "laboris", "qui" ], "friends": [ { "id": 0, "name": "Wallace Fry" }, { "id": 1, "name": "Wilma Beasley" }, { "id": 2, "name": "Hull Gaines" } ], "greeting": "Hello, Cecile Carey! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24aa5d929c239b7f35", "index": 2118, "guid": "4de647ae-7210-449d-9ce0-7423a9e680a6", "isActive": false, "balance": "$3,472.54", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Martinez Warner", "gender": "male", "company": "AQUAMATE", "email": "martinezwarner@aquamate.com", "phone": "+1 (962) 585-2159", "address": "598 Garland Court, Axis, Rhode Island, 9055", "about": "Mollit aliquip voluptate dolore amet ipsum mollit veniam. Aliqua sunt ut exercitation dolor aliquip. Excepteur ad cillum fugiat do deserunt officia tempor commodo velit proident ipsum eiusmod ut incididunt. Aliquip elit velit exercitation culpa mollit irure commodo esse. Voluptate elit cillum laborum duis amet sunt. Esse adipisicing magna veniam aliquip ipsum tempor ea tempor aliquip cupidatat quis labore laboris. Officia aliqua ut esse minim ut.\r\n", "registered": "2014-06-25T16:10:52-12:00", "latitude": -81.452986, "longitude": 37.951175, "tags": [ "Lorem", "veniam", "laborum", "elit", "nostrud", "excepteur", "dolore" ], "friends": [ { "id": 0, "name": "Woodard Henry" }, { "id": 1, "name": "Rogers Clark" }, { "id": 2, "name": "Barron Baird" } ], "greeting": "Hello, Martinez Warner! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea244c0f1ecba323c0e7", "index": 2119, "guid": "b83db365-0614-4a7a-82a9-e92ee0c84a3f", "isActive": true, "balance": "$1,948.05", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Noble Noel", "gender": "male", "company": "KEENGEN", "email": "noblenoel@keengen.com", "phone": "+1 (800) 437-2897", "address": "820 Colonial Court, Homestead, Florida, 702", "about": "Cupidatat ipsum esse labore velit nostrud culpa laboris eu. Commodo ea eiusmod qui minim nulla laborum consectetur ullamco laboris. Et consectetur amet culpa irure quis ea in irure nulla. Elit aliqua duis reprehenderit excepteur minim et eiusmod ea ullamco mollit exercitation ex. Laborum nisi ipsum qui amet ex ullamco aute. Reprehenderit ipsum eiusmod elit sit ipsum est Lorem qui deserunt velit.\r\n", "registered": "2014-04-06T20:11:40-12:00", "latitude": -8.688776, "longitude": -35.294171, "tags": [ "tempor", "incididunt", "tempor", "qui", "esse", "aliqua", "deserunt" ], "friends": [ { "id": 0, "name": "Mathews Dunlap" }, { "id": 1, "name": "Raymond Kramer" }, { "id": 2, "name": "Lawson Hubbard" } ], "greeting": "Hello, Noble Noel! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24850249e9cc612422", "index": 2120, "guid": "b347734a-4aa5-4770-bb6e-becbbc89fc13", "isActive": true, "balance": "$1,545.07", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Klein Petersen", "gender": "male", "company": "PLASMOSIS", "email": "kleinpetersen@plasmosis.com", "phone": "+1 (815) 450-2474", "address": "388 Provost Street, Interlochen, North Carolina, 973", "about": "Eiusmod ex culpa id nulla quis nostrud elit tempor ullamco ullamco. Ullamco nulla consequat esse incididunt deserunt ullamco incididunt consectetur aliquip. Sunt veniam exercitation sit irure in tempor ea consequat tempor velit non sit.\r\n", "registered": "2014-01-08T21:37:08-13:00", "latitude": -19.155574, "longitude": 76.293525, "tags": [ "tempor", "cillum", "aute", "do", "commodo", "incididunt", "laborum" ], "friends": [ { "id": 0, "name": "Pope Ford" }, { "id": 1, "name": "Rose Buck" }, { "id": 2, "name": "Simone Harrington" } ], "greeting": "Hello, Klein Petersen! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea246175b790a08e870c", "index": 2121, "guid": "f3728023-643e-4f75-99b1-fcd8adde79af", "isActive": true, "balance": "$3,851.43", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Tricia Johns", "gender": "female", "company": "ISOSWITCH", "email": "triciajohns@isoswitch.com", "phone": "+1 (968) 550-3825", "address": "740 Division Place, Fairfield, New Hampshire, 2418", "about": "Excepteur anim et fugiat nisi consequat reprehenderit incididunt ex ipsum. Aliqua sunt deserunt ipsum non. Commodo do cillum esse eiusmod. Duis adipisicing nulla reprehenderit do esse occaecat veniam tempor voluptate culpa consectetur dolore. Lorem dolore voluptate magna id Lorem laborum elit pariatur commodo cupidatat irure.\r\n", "registered": "2014-02-13T13:54:23-13:00", "latitude": -48.419199, "longitude": -122.382815, "tags": [ "esse", "duis", "cupidatat", "cupidatat", "incididunt", "Lorem", "in" ], "friends": [ { "id": 0, "name": "Cohen Montoya" }, { "id": 1, "name": "Slater Berger" }, { "id": 2, "name": "Holcomb Osborne" } ], "greeting": "Hello, Tricia Johns! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24af26a9ec898e4555", "index": 2122, "guid": "c7240e1f-0f1b-4535-8946-3d617bf05b74", "isActive": true, "balance": "$1,906.05", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Terrie Mathis", "gender": "female", "company": "TWIGGERY", "email": "terriemathis@twiggery.com", "phone": "+1 (861) 491-3527", "address": "863 Merit Court, Drummond, Arkansas, 9828", "about": "Anim incididunt ullamco culpa veniam ad ea consequat aute laboris. Do nisi culpa non velit aliqua laborum do veniam dolore cupidatat pariatur voluptate est amet. Consequat officia irure pariatur excepteur nulla sunt anim laborum eu dolore. Excepteur duis velit minim do. Id sunt nisi consequat exercitation ex dolore.\r\n", "registered": "2014-08-02T09:00:32-12:00", "latitude": 75.371817, "longitude": -105.075388, "tags": [ "commodo", "do", "mollit", "est", "nisi", "nulla", "enim" ], "friends": [ { "id": 0, "name": "Madeline Melton" }, { "id": 1, "name": "Shields Eaton" }, { "id": 2, "name": "Hardy Mays" } ], "greeting": "Hello, Terrie Mathis! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24fc97c7f63a91cd9b", "index": 2123, "guid": "c575e789-01a4-436f-b0d2-c47a4a356f59", "isActive": false, "balance": "$2,398.43", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Wooten Gill", "gender": "male", "company": "ANDERSHUN", "email": "wootengill@andershun.com", "phone": "+1 (959) 459-3369", "address": "693 Whitty Lane, Hamilton, Iowa, 158", "about": "Voluptate magna culpa esse amet nostrud amet aute labore officia. Consequat cupidatat anim consectetur cillum aliqua eiusmod tempor veniam ad. Cupidatat do reprehenderit qui fugiat culpa do ipsum. Sit dolor duis enim velit reprehenderit ea consectetur magna commodo exercitation.\r\n", "registered": "2014-03-11T04:38:54-13:00", "latitude": 56.667093, "longitude": 175.506157, "tags": [ "sint", "pariatur", "nisi", "consectetur", "adipisicing", "exercitation", "minim" ], "friends": [ { "id": 0, "name": "Heath Wheeler" }, { "id": 1, "name": "Davidson Carr" }, { "id": 2, "name": "Roberta Wolfe" } ], "greeting": "Hello, Wooten Gill! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2425fe4a6878aa7ccd", "index": 2124, "guid": "e28c8b91-f352-4922-ad74-9e58e3f46994", "isActive": false, "balance": "$2,630.58", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Mercer Huber", "gender": "male", "company": "CIPROMOX", "email": "mercerhuber@cipromox.com", "phone": "+1 (913) 488-2524", "address": "783 Madeline Court, Chestnut, Nebraska, 9730", "about": "Ullamco aliquip duis ad laboris magna. Mollit laborum consequat ad veniam eiusmod voluptate. Ad proident id id sunt sunt est Lorem eiusmod nulla.\r\n", "registered": "2014-02-22T04:50:32-13:00", "latitude": -28.723756, "longitude": -59.001709, "tags": [ "occaecat", "magna", "ea", "ut", "pariatur", "ullamco", "et" ], "friends": [ { "id": 0, "name": "Burris Pierce" }, { "id": 1, "name": "Gladys Merritt" }, { "id": 2, "name": "Preston Aguirre" } ], "greeting": "Hello, Mercer Huber! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea241686b75b5b5b485e", "index": 2125, "guid": "168d6f8c-0298-47c9-b45b-e975213fd55c", "isActive": false, "balance": "$3,882.73", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Anna Luna", "gender": "female", "company": "ROTODYNE", "email": "annaluna@rotodyne.com", "phone": "+1 (974) 455-2184", "address": "800 Bayard Street, Mappsville, District Of Columbia, 5747", "about": "Est id minim non dolore sunt cupidatat aliqua est voluptate cillum enim cupidatat. Amet sunt esse tempor do ea deserunt elit nisi aute officia nisi. Magna reprehenderit eiusmod minim consectetur esse nisi aliqua voluptate sit voluptate labore officia. Excepteur laborum occaecat nostrud cupidatat occaecat magna ullamco. Amet tempor mollit enim adipisicing fugiat qui sit commodo sunt ullamco enim. Lorem reprehenderit duis nostrud ad laboris commodo veniam non deserunt dolor. Lorem mollit cupidatat consectetur amet quis amet non sunt reprehenderit aute sunt commodo.\r\n", "registered": "2014-02-14T01:41:14-13:00", "latitude": 63.96951, "longitude": -52.642977, "tags": [ "id", "in", "incididunt", "aliqua", "proident", "qui", "et" ], "friends": [ { "id": 0, "name": "Beatriz Bowen" }, { "id": 1, "name": "Berta Mueller" }, { "id": 2, "name": "Patel Duncan" } ], "greeting": "Hello, Anna Luna! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24d3b306b443788bfa", "index": 2126, "guid": "e5033125-1a61-497e-bd3c-b9bdf43ca33c", "isActive": true, "balance": "$1,580.57", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Adele Burt", "gender": "female", "company": "OMATOM", "email": "adeleburt@omatom.com", "phone": "+1 (878) 478-3975", "address": "596 Bowne Street, Masthope, New Jersey, 7599", "about": "Amet ea non ullamco veniam laborum aliqua magna eiusmod exercitation esse sint minim mollit non. Dolore sit adipisicing pariatur pariatur labore. Sit laboris ea ipsum do id eiusmod laborum et laborum irure. Eiusmod id enim dolor laborum pariatur voluptate qui tempor irure id laboris nostrud.\r\n", "registered": "2014-09-12T22:41:41-12:00", "latitude": 58.398423, "longitude": -136.680874, "tags": [ "aliqua", "fugiat", "deserunt", "sint", "id", "magna", "nostrud" ], "friends": [ { "id": 0, "name": "Landry Saunders" }, { "id": 1, "name": "Fry Caldwell" }, { "id": 2, "name": "Mueller House" } ], "greeting": "Hello, Adele Burt! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea241c1c5fa4e9a31930", "index": 2127, "guid": "f1945f03-dc3e-4985-b4ad-dc0796abccd2", "isActive": true, "balance": "$1,897.84", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Griffith Dudley", "gender": "male", "company": "XPLOR", "email": "griffithdudley@xplor.com", "phone": "+1 (982) 508-3678", "address": "690 Ingraham Street, Joes, Palau, 7398", "about": "Dolore aute dolor exercitation dolor quis culpa incididunt sit sit incididunt veniam est. Cillum pariatur laborum reprehenderit sit occaecat elit dolor elit est qui occaecat commodo. Voluptate cillum occaecat aute reprehenderit Lorem ut incididunt cupidatat ea enim Lorem dolore tempor consectetur. Labore labore eiusmod sint cillum non deserunt eiusmod. Reprehenderit fugiat aute id est tempor et quis laboris pariatur.\r\n", "registered": "2014-05-06T22:41:48-12:00", "latitude": 80.638573, "longitude": 43.810685, "tags": [ "est", "qui", "laboris", "incididunt", "mollit", "irure", "est" ], "friends": [ { "id": 0, "name": "Chase Wynn" }, { "id": 1, "name": "Kinney Wilkinson" }, { "id": 2, "name": "Robin Bailey" } ], "greeting": "Hello, Griffith Dudley! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24ed2d5be9ea58c5aa", "index": 2128, "guid": "99f036aa-8703-4c3b-98c1-0bf9e716f932", "isActive": true, "balance": "$3,699.38", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Nicholson Barry", "gender": "male", "company": "OVOLO", "email": "nicholsonbarry@ovolo.com", "phone": "+1 (838) 507-2324", "address": "895 Canda Avenue, Roosevelt, Puerto Rico, 896", "about": "Velit ex adipisicing laboris magna occaecat cupidatat et. Voluptate esse id velit nisi fugiat voluptate deserunt pariatur ullamco officia cupidatat eu. Excepteur aliquip voluptate fugiat minim. Sint irure mollit est consectetur est velit ad. Anim ut non reprehenderit mollit est qui do dolore cillum eiusmod. Fugiat fugiat cupidatat in duis.\r\n", "registered": "2014-01-12T02:48:45-13:00", "latitude": 20.667204, "longitude": -42.358948, "tags": [ "est", "velit", "aliquip", "dolore", "cillum", "occaecat", "ad" ], "friends": [ { "id": 0, "name": "Zamora Atkins" }, { "id": 1, "name": "Henry Donaldson" }, { "id": 2, "name": "Blackburn Hutchinson" } ], "greeting": "Hello, Nicholson Barry! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24d481d5e3369ee1a4", "index": 2129, "guid": "c15cac19-77dc-4dd7-857a-0086bd5df743", "isActive": true, "balance": "$1,375.74", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Holder Decker", "gender": "male", "company": "NORALEX", "email": "holderdecker@noralex.com", "phone": "+1 (991) 552-2716", "address": "521 Portland Avenue, Guilford, California, 9549", "about": "Tempor amet aute mollit mollit id amet ad dolor aute adipisicing. Non sint eu laborum occaecat et fugiat laborum adipisicing voluptate ea dolore. Pariatur commodo occaecat id pariatur velit velit officia labore pariatur sit. Anim aute do minim velit veniam aliqua cillum aliquip nisi amet. Minim cillum culpa minim anim aliqua cupidatat amet ullamco tempor eu fugiat. Excepteur ullamco exercitation nulla laboris ullamco elit aliqua excepteur.\r\n", "registered": "2014-06-12T03:30:51-12:00", "latitude": -4.714278, "longitude": 154.673658, "tags": [ "fugiat", "Lorem", "nulla", "reprehenderit", "est", "in", "velit" ], "friends": [ { "id": 0, "name": "Leonard Cochran" }, { "id": 1, "name": "Lorraine Mckay" }, { "id": 2, "name": "Mai Simpson" } ], "greeting": "Hello, Holder Decker! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24c777a41e24cf5d96", "index": 2130, "guid": "65466d95-60ab-406f-bd7f-3aa6725917bd", "isActive": true, "balance": "$2,089.46", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Jolene Everett", "gender": "female", "company": "AUSTECH", "email": "joleneeverett@austech.com", "phone": "+1 (949) 482-3993", "address": "129 Polhemus Place, Stockdale, Vermont, 9613", "about": "Sit do laboris irure aliquip ex. Nulla do in non laboris anim est duis veniam. Enim aute excepteur nulla anim. Veniam adipisicing irure minim quis aute et minim fugiat quis velit ad nulla. Ipsum voluptate cupidatat proident labore aliqua. Aliqua reprehenderit tempor aliquip ipsum laboris aliquip culpa excepteur tempor. Mollit cillum occaecat Lorem in ipsum veniam exercitation reprehenderit qui velit aliqua cillum quis.\r\n", "registered": "2014-01-18T08:59:58-13:00", "latitude": 88.673326, "longitude": -155.70727, "tags": [ "do", "incididunt", "cillum", "elit", "tempor", "sint", "exercitation" ], "friends": [ { "id": 0, "name": "Sonia Delgado" }, { "id": 1, "name": "Jones Mcgowan" }, { "id": 2, "name": "Jackson Fleming" } ], "greeting": "Hello, Jolene Everett! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea247d1fa269863caa70", "index": 2131, "guid": "f437373b-df71-4b3f-a01b-3a1d87ea961b", "isActive": false, "balance": "$1,358.99", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Bette Burton", "gender": "female", "company": "DIGIGEN", "email": "betteburton@digigen.com", "phone": "+1 (974) 420-3288", "address": "100 Maple Street, Dale, Indiana, 6630", "about": "Occaecat ea enim voluptate ex tempor laborum. Quis nostrud dolor eu anim aliquip ex ut incididunt exercitation ea elit occaecat. Eu deserunt cupidatat nisi esse incididunt. Eiusmod adipisicing sunt incididunt in ipsum sint id laborum qui Lorem sint culpa irure ipsum. Incididunt sint dolore eiusmod cillum duis anim cupidatat reprehenderit id ut proident ipsum. Consequat pariatur ut minim proident magna tempor et elit magna tempor.\r\n", "registered": "2014-02-04T00:28:21-13:00", "latitude": 65.61012, "longitude": 108.384917, "tags": [ "ut", "commodo", "minim", "minim", "velit", "nisi", "est" ], "friends": [ { "id": 0, "name": "Kristi Graves" }, { "id": 1, "name": "Mayer Potts" }, { "id": 2, "name": "Paige Holland" } ], "greeting": "Hello, Bette Burton! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2467510a7a48459b47", "index": 2132, "guid": "b63ab676-7d6f-4439-a8d2-0e7bde877ffd", "isActive": true, "balance": "$2,846.22", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Aimee Hewitt", "gender": "female", "company": "XURBAN", "email": "aimeehewitt@xurban.com", "phone": "+1 (841) 423-2291", "address": "509 Cooper Street, Westerville, Illinois, 4871", "about": "In in sint proident quis laborum eu consequat ipsum nostrud consequat qui. Non dolore id adipisicing ad adipisicing sint tempor. Aute ullamco est enim laborum amet adipisicing officia anim dolor Lorem do occaecat eu.\r\n", "registered": "2014-05-29T07:19:08-12:00", "latitude": 10.192888, "longitude": -46.444392, "tags": [ "cupidatat", "ad", "Lorem", "labore", "culpa", "sunt", "eu" ], "friends": [ { "id": 0, "name": "Sims Porter" }, { "id": 1, "name": "Santos Callahan" }, { "id": 2, "name": "Ophelia Christensen" } ], "greeting": "Hello, Aimee Hewitt! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea246ee40987825a16fe", "index": 2133, "guid": "c0add48d-8864-455b-a029-d837193a8479", "isActive": true, "balance": "$3,288.78", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Velez Salazar", "gender": "male", "company": "OVATION", "email": "velezsalazar@ovation.com", "phone": "+1 (803) 507-3387", "address": "456 Prescott Place, Veyo, South Carolina, 9994", "about": "Enim cupidatat reprehenderit consectetur deserunt excepteur ut ad. Sit mollit laboris amet cillum ad voluptate cupidatat deserunt dolor commodo labore amet. Cupidatat ea officia est do enim eiusmod. Deserunt do veniam proident enim tempor. Ad quis magna cupidatat eu est commodo qui cupidatat eiusmod qui incididunt do occaecat non.\r\n", "registered": "2014-03-05T13:42:49-13:00", "latitude": -62.233722, "longitude": 70.93359, "tags": [ "voluptate", "dolore", "velit", "laborum", "ut", "consectetur", "ea" ], "friends": [ { "id": 0, "name": "Juana Emerson" }, { "id": 1, "name": "Jane Velasquez" }, { "id": 2, "name": "Claudine Chapman" } ], "greeting": "Hello, Velez Salazar! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2477f75bf5ec95a1d4", "index": 2134, "guid": "8c1ec7b2-1725-4991-9157-48d7f6cc8ab8", "isActive": false, "balance": "$3,979.99", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Haley Jennings", "gender": "male", "company": "GYNK", "email": "haleyjennings@gynk.com", "phone": "+1 (850) 595-3383", "address": "490 Cook Street, Cutter, American Samoa, 782", "about": "Nisi excepteur amet non pariatur deserunt officia. Tempor ut incididunt dolor fugiat anim duis reprehenderit voluptate deserunt elit deserunt magna. Cupidatat Lorem consectetur ex cupidatat amet duis veniam ex do consectetur.\r\n", "registered": "2014-05-23T11:44:22-12:00", "latitude": 27.132418, "longitude": 133.774705, "tags": [ "laborum", "ullamco", "in", "elit", "ullamco", "non", "aliqua" ], "friends": [ { "id": 0, "name": "Milagros Logan" }, { "id": 1, "name": "Mayo Sloan" }, { "id": 2, "name": "Burke Lamb" } ], "greeting": "Hello, Haley Jennings! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24a7b96200125d5828", "index": 2135, "guid": "62b02798-8a9c-427a-8870-4ed34a716c4c", "isActive": false, "balance": "$1,768.25", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Huber Jensen", "gender": "male", "company": "PORTICO", "email": "huberjensen@portico.com", "phone": "+1 (839) 591-2453", "address": "258 Pioneer Street, Matheny, Delaware, 4466", "about": "Ex velit incididunt laborum do sit pariatur veniam aute duis tempor ullamco non duis. Ipsum in officia Lorem cupidatat voluptate laboris. Aute deserunt quis sit veniam reprehenderit qui anim velit laboris culpa velit dolore proident. Excepteur culpa dolor do quis esse in irure nisi laborum. Reprehenderit voluptate pariatur deserunt occaecat laborum eiusmod. Duis culpa voluptate magna minim magna commodo mollit dolore eu velit nisi fugiat qui ea.\r\n", "registered": "2014-01-18T16:42:19-13:00", "latitude": 66.848687, "longitude": 12.052764, "tags": [ "fugiat", "irure", "ad", "quis", "est", "eiusmod", "officia" ], "friends": [ { "id": 0, "name": "Rachel Carrillo" }, { "id": 1, "name": "Rowe Mccarthy" }, { "id": 2, "name": "Tyson Salas" } ], "greeting": "Hello, Huber Jensen! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24df3a0daadcd6a13e", "index": 2136, "guid": "138c8e37-ac5a-4195-a352-cf90512b30e7", "isActive": false, "balance": "$3,606.31", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Yolanda Castillo", "gender": "female", "company": "ZAGGLES", "email": "yolandacastillo@zaggles.com", "phone": "+1 (876) 541-2372", "address": "818 Downing Street, Robinette, Pennsylvania, 7432", "about": "Aliqua adipisicing laborum est voluptate nulla. Ex magna fugiat exercitation nisi enim. Amet non occaecat et labore aute exercitation est. Nulla excepteur enim irure voluptate do magna deserunt excepteur laboris in in.\r\n", "registered": "2014-04-06T11:41:59-12:00", "latitude": -77.702752, "longitude": -37.925464, "tags": [ "do", "sint", "mollit", "ullamco", "nulla", "eu", "pariatur" ], "friends": [ { "id": 0, "name": "Dona Tanner" }, { "id": 1, "name": "Bertie Chase" }, { "id": 2, "name": "Dora Suarez" } ], "greeting": "Hello, Yolanda Castillo! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24fec0ae91269b073e", "index": 2137, "guid": "ca8ef5fc-7874-4a8a-8e02-583743dddfa3", "isActive": true, "balance": "$3,711.57", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Ferrell Leonard", "gender": "male", "company": "PANZENT", "email": "ferrellleonard@panzent.com", "phone": "+1 (851) 410-3836", "address": "593 Knight Court, Monument, Georgia, 9551", "about": "Ut Lorem exercitation aute nisi cupidatat irure deserunt qui nostrud anim. Ipsum officia quis id enim. Est in culpa irure dolore incididunt occaecat Lorem enim et.\r\n", "registered": "2014-08-20T06:34:08-12:00", "latitude": 32.951595, "longitude": 105.303313, "tags": [ "exercitation", "sint", "et", "magna", "amet", "et", "aliqua" ], "friends": [ { "id": 0, "name": "Clarice Castro" }, { "id": 1, "name": "Dianne Burks" }, { "id": 2, "name": "Bernadette Perry" } ], "greeting": "Hello, Ferrell Leonard! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2462124b50d56336db", "index": 2138, "guid": "2a91f004-f35a-467d-843c-10cbe8f9df97", "isActive": false, "balance": "$1,656.52", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Jeanne Hansen", "gender": "female", "company": "CINCYR", "email": "jeannehansen@cincyr.com", "phone": "+1 (867) 493-3451", "address": "309 Manhattan Avenue, Lloyd, North Dakota, 9873", "about": "Est ut cillum fugiat ipsum aliqua sunt. Esse ad aute officia sunt consequat eu mollit deserunt aliquip irure dolor. Eu cillum minim do occaecat est deserunt. Anim qui est amet eu consectetur culpa officia. Lorem eiusmod laborum occaecat consequat ut ex incididunt sit irure. Anim excepteur Lorem non dolor in officia pariatur nulla voluptate ullamco tempor duis.\r\n", "registered": "2014-03-18T00:42:21-13:00", "latitude": 64.877081, "longitude": 64.082752, "tags": [ "deserunt", "pariatur", "ullamco", "anim", "esse", "aute", "ad" ], "friends": [ { "id": 0, "name": "Gilliam Avery" }, { "id": 1, "name": "Clay Holman" }, { "id": 2, "name": "Kelly Boyle" } ], "greeting": "Hello, Jeanne Hansen! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24e64ad36d878e98a0", "index": 2139, "guid": "d795498f-67be-444a-bd0c-6ee8dbe383c5", "isActive": true, "balance": "$3,077.20", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Wall Bauer", "gender": "male", "company": "FITCORE", "email": "wallbauer@fitcore.com", "phone": "+1 (848) 497-3076", "address": "103 Ivan Court, Grapeview, Louisiana, 7432", "about": "Adipisicing occaecat voluptate incididunt qui sint occaecat enim qui proident exercitation ullamco aliqua. Nostrud dolor labore cillum cillum. Velit exercitation aliquip do pariatur ullamco officia proident consequat ipsum et eiusmod ex veniam ut. Lorem minim esse magna et sint proident minim.\r\n", "registered": "2014-04-15T06:05:15-12:00", "latitude": 76.349469, "longitude": -152.615881, "tags": [ "cupidatat", "laboris", "proident", "in", "adipisicing", "amet", "occaecat" ], "friends": [ { "id": 0, "name": "Morrison Avila" }, { "id": 1, "name": "Beth Vazquez" }, { "id": 2, "name": "Leanne Tucker" } ], "greeting": "Hello, Wall Bauer! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea249e9bc5119cf57a84", "index": 2140, "guid": "5dcb8e7b-a70a-4ef3-a1ed-bf9c12f0e4bb", "isActive": true, "balance": "$1,971.57", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Jeanette Swanson", "gender": "female", "company": "FLEETMIX", "email": "jeanetteswanson@fleetmix.com", "phone": "+1 (999) 482-3242", "address": "173 Duryea Place, Yonah, Northern Mariana Islands, 8820", "about": "Ullamco elit commodo amet culpa fugiat amet. Voluptate aliqua laborum cillum fugiat fugiat culpa ad amet tempor sit irure. Id velit aliqua officia laboris esse sunt. Nisi magna anim esse Lorem cillum fugiat reprehenderit nostrud magna labore sunt quis est sit. Ullamco sunt excepteur in in ut laboris eiusmod dolor ad sunt adipisicing.\r\n", "registered": "2014-05-22T21:51:36-12:00", "latitude": 43.970696, "longitude": -57.591485, "tags": [ "do", "cillum", "in", "et", "nostrud", "elit", "fugiat" ], "friends": [ { "id": 0, "name": "Bowman Miles" }, { "id": 1, "name": "Wright Hays" }, { "id": 2, "name": "Oneil Whitley" } ], "greeting": "Hello, Jeanette Swanson! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24f08f5066d66614d1", "index": 2141, "guid": "2ddbaf60-7b90-4efe-8501-b58f4f44ec2b", "isActive": false, "balance": "$3,139.60", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Pierce Stone", "gender": "male", "company": "KNOWLYSIS", "email": "piercestone@knowlysis.com", "phone": "+1 (873) 462-2873", "address": "651 Rockwell Place, Chical, Colorado, 8340", "about": "Voluptate exercitation do sit ad minim irure culpa. Mollit ut cupidatat proident laboris aliquip qui fugiat dolore dolor officia nulla mollit pariatur. Cupidatat eiusmod consectetur minim irure ut duis do veniam ex dolore quis. Enim in non id sit id nostrud adipisicing culpa aliquip excepteur sit.\r\n", "registered": "2014-05-23T07:47:33-12:00", "latitude": -13.61841, "longitude": 166.291627, "tags": [ "consequat", "commodo", "adipisicing", "dolor", "consequat", "incididunt", "cupidatat" ], "friends": [ { "id": 0, "name": "Anderson Villarreal" }, { "id": 1, "name": "Pearson Howe" }, { "id": 2, "name": "Alexis Keith" } ], "greeting": "Hello, Pierce Stone! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea248fa1872c907417a8", "index": 2142, "guid": "0d1f4354-132b-405b-a96a-6bd7bfb3d040", "isActive": false, "balance": "$2,719.05", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Jenna Mayo", "gender": "female", "company": "VIXO", "email": "jennamayo@vixo.com", "phone": "+1 (820) 456-2712", "address": "152 Albemarle Road, Advance, Idaho, 4240", "about": "Occaecat eu consequat ullamco ullamco. Culpa sint elit sint proident ea dolor Lorem laboris labore ad sint sit nulla eu. Aute cupidatat aliqua consectetur amet exercitation eiusmod nulla anim deserunt est cillum.\r\n", "registered": "2014-01-14T05:28:26-13:00", "latitude": 10.47777, "longitude": 161.300787, "tags": [ "officia", "consequat", "nulla", "et", "officia", "dolore", "proident" ], "friends": [ { "id": 0, "name": "Beatrice Rosales" }, { "id": 1, "name": "Cortez Mason" }, { "id": 2, "name": "Matthews Warren" } ], "greeting": "Hello, Jenna Mayo! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2446000eacb6d6dd27", "index": 2143, "guid": "5c995a59-a503-49cc-9a15-04a895b5d318", "isActive": true, "balance": "$3,095.84", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Padilla Barlow", "gender": "male", "company": "HOTCAKES", "email": "padillabarlow@hotcakes.com", "phone": "+1 (865) 572-2747", "address": "819 Scott Avenue, Kimmell, Marshall Islands, 9650", "about": "Nostrud est et in aliqua consequat aliquip anim veniam qui fugiat occaecat enim exercitation sit. Ad dolor incididunt aliquip reprehenderit sint occaecat elit. Voluptate et tempor pariatur dolore sint excepteur. Nulla do Lorem fugiat dolor proident duis consectetur ipsum occaecat minim deserunt magna officia. Enim eiusmod adipisicing laboris deserunt incididunt officia. Cupidatat tempor culpa velit in est esse ullamco et occaecat anim. Proident excepteur est ad fugiat sint id ad in enim.\r\n", "registered": "2014-06-14T13:53:22-12:00", "latitude": 42.924393, "longitude": -132.510315, "tags": [ "magna", "consequat", "eiusmod", "non", "dolore", "ullamco", "amet" ], "friends": [ { "id": 0, "name": "Cathy Davis" }, { "id": 1, "name": "Janie Solis" }, { "id": 2, "name": "Snow Riggs" } ], "greeting": "Hello, Padilla Barlow! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2433ab59bf415aa3a9", "index": 2144, "guid": "4608ca55-2491-4b0a-9573-dd3cc993f336", "isActive": true, "balance": "$3,427.88", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Sophia Matthews", "gender": "female", "company": "FROSNEX", "email": "sophiamatthews@frosnex.com", "phone": "+1 (900) 547-2418", "address": "286 Crosby Avenue, Slovan, New York, 8816", "about": "Commodo eu proident sit pariatur ea mollit esse ullamco adipisicing laborum voluptate Lorem eiusmod exercitation. Consectetur ullamco aute laborum culpa dolor commodo non cupidatat anim. Sint nostrud quis dolore aliquip sint voluptate culpa deserunt culpa Lorem consectetur. Esse adipisicing adipisicing consequat magna sit mollit dolore mollit deserunt nostrud. Proident minim velit voluptate ullamco officia velit ut excepteur reprehenderit magna et Lorem.\r\n", "registered": "2014-04-18T20:47:19-12:00", "latitude": -26.929822, "longitude": 88.331993, "tags": [ "anim", "nostrud", "labore", "aliquip", "consequat", "non", "cillum" ], "friends": [ { "id": 0, "name": "Debora Petty" }, { "id": 1, "name": "Saunders Marshall" }, { "id": 2, "name": "Zimmerman Black" } ], "greeting": "Hello, Sophia Matthews! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2438903c61479cf218", "index": 2145, "guid": "ba5484d5-4ab3-4847-bbb3-85036953514a", "isActive": false, "balance": "$3,980.55", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Cook Sykes", "gender": "male", "company": "FANGOLD", "email": "cooksykes@fangold.com", "phone": "+1 (993) 537-3815", "address": "903 Kingston Avenue, Ona, Guam, 6344", "about": "Aliqua consectetur eu fugiat consectetur dolore dolor aute exercitation esse. Minim cillum minim cillum esse eiusmod cillum qui ullamco commodo ut aute ea. Magna mollit velit incididunt sunt elit duis veniam adipisicing incididunt.\r\n", "registered": "2014-02-28T15:14:19-13:00", "latitude": 49.271576, "longitude": -42.2546, "tags": [ "nostrud", "mollit", "ut", "consequat", "nostrud", "reprehenderit", "fugiat" ], "friends": [ { "id": 0, "name": "Marsh Becker" }, { "id": 1, "name": "Madelyn Cox" }, { "id": 2, "name": "Burnett Murphy" } ], "greeting": "Hello, Cook Sykes! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24edb2424de835e3c4", "index": 2146, "guid": "a9bf21f4-23f0-4682-b5a5-8a373d22ae02", "isActive": true, "balance": "$3,830.04", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Farrell Kim", "gender": "male", "company": "EXIAND", "email": "farrellkim@exiand.com", "phone": "+1 (929) 535-2674", "address": "804 Sackman Street, Idledale, Virgin Islands, 4175", "about": "Ex eiusmod non cupidatat velit velit excepteur aute. Dolore ex nisi nulla deserunt aute ullamco non fugiat culpa id Lorem est mollit duis. Id irure do commodo et ut duis. Commodo minim et ipsum sunt ullamco anim nostrud occaecat laborum cupidatat tempor velit enim. Excepteur aute nostrud nulla reprehenderit deserunt veniam enim do ipsum. Fugiat ea ea in ullamco non voluptate sit.\r\n", "registered": "2014-03-24T02:10:49-13:00", "latitude": 66.351938, "longitude": -31.401827, "tags": [ "non", "ullamco", "duis", "enim", "in", "aliqua", "cupidatat" ], "friends": [ { "id": 0, "name": "Edwards Stafford" }, { "id": 1, "name": "Lynn Daniel" }, { "id": 2, "name": "Day Hudson" } ], "greeting": "Hello, Farrell Kim! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24ef6197bc9e98d162", "index": 2147, "guid": "40474862-2c9f-45d3-a87e-0a11fbddfa52", "isActive": false, "balance": "$1,082.28", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Mcgowan Snow", "gender": "male", "company": "TURNABOUT", "email": "mcgowansnow@turnabout.com", "phone": "+1 (867) 511-3042", "address": "575 Village Road, Nicholson, Massachusetts, 553", "about": "Dolor Lorem incididunt dolor irure consequat ullamco ex enim id. Cupidatat proident non excepteur velit qui pariatur ad dolor minim aute mollit nostrud esse. Adipisicing nisi incididunt occaecat voluptate exercitation cillum ad ipsum aliqua eu enim elit non aliquip. Reprehenderit incididunt voluptate consectetur do quis. Magna anim laborum ad aute veniam velit duis qui tempor proident laboris nostrud et.\r\n", "registered": "2014-09-17T00:24:04-12:00", "latitude": 81.632697, "longitude": 70.406185, "tags": [ "excepteur", "exercitation", "aliquip", "voluptate", "est", "adipisicing", "aliqua" ], "friends": [ { "id": 0, "name": "Beck Patrick" }, { "id": 1, "name": "Lori Padilla" }, { "id": 2, "name": "Vasquez Melendez" } ], "greeting": "Hello, Mcgowan Snow! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24627d20df72ca05e8", "index": 2148, "guid": "4e985a68-16b6-42dd-812a-ca7823330b83", "isActive": false, "balance": "$2,238.27", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Hicks Vasquez", "gender": "male", "company": "PLASMOS", "email": "hicksvasquez@plasmos.com", "phone": "+1 (862) 595-2470", "address": "111 Coyle Street, Madaket, Utah, 938", "about": "Duis aute esse adipisicing eu occaecat sit. Officia consectetur anim eiusmod quis consectetur labore excepteur aliqua ad duis. Irure mollit incididunt laborum veniam commodo mollit mollit cillum sunt ipsum.\r\n", "registered": "2014-07-21T04:59:02-12:00", "latitude": 83.694989, "longitude": -168.617147, "tags": [ "voluptate", "ea", "ad", "ullamco", "non", "proident", "officia" ], "friends": [ { "id": 0, "name": "Maxine Tyler" }, { "id": 1, "name": "Rena Mooney" }, { "id": 2, "name": "Hopkins Garrison" } ], "greeting": "Hello, Hicks Vasquez! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24a453c91ff65dd2b4", "index": 2149, "guid": "a8dcd271-fada-4c17-8773-ca853c635d38", "isActive": true, "balance": "$2,489.54", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Kaufman Best", "gender": "male", "company": "ISOTERNIA", "email": "kaufmanbest@isoternia.com", "phone": "+1 (822) 470-2496", "address": "987 Junius Street, Crayne, Montana, 6989", "about": "Eu aliquip eiusmod officia aute consectetur. Sunt adipisicing quis aliqua quis. Cupidatat et consectetur non dolore aliqua ipsum duis ut tempor.\r\n", "registered": "2014-03-20T19:31:49-13:00", "latitude": 16.165835, "longitude": -14.012189, "tags": [ "est", "in", "enim", "elit", "exercitation", "pariatur", "Lorem" ], "friends": [ { "id": 0, "name": "Rosa Mccormick" }, { "id": 1, "name": "April Cross" }, { "id": 2, "name": "Alfreda Albert" } ], "greeting": "Hello, Kaufman Best! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24b71250969e5b919f", "index": 2150, "guid": "9603cd8d-afd2-49cf-9513-4b7972c99c81", "isActive": true, "balance": "$1,948.61", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Ronda Newton", "gender": "female", "company": "COMVEYER", "email": "rondanewton@comveyer.com", "phone": "+1 (969) 515-2971", "address": "886 Brevoort Place, Escondida, Wisconsin, 4791", "about": "Officia mollit exercitation magna qui mollit ipsum tempor nisi mollit esse. Officia occaecat consequat Lorem id do eu magna proident consectetur velit dolore. Eu incididunt ad proident officia ut nulla occaecat enim aute laborum laborum reprehenderit deserunt.\r\n", "registered": "2014-03-09T07:40:02-13:00", "latitude": 77.645952, "longitude": 151.541209, "tags": [ "mollit", "esse", "anim", "culpa", "deserunt", "aliqua", "ad" ], "friends": [ { "id": 0, "name": "Marisa Kemp" }, { "id": 1, "name": "Paula Nelson" }, { "id": 2, "name": "Rosemary Duke" } ], "greeting": "Hello, Ronda Newton! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea247b74a0b6d60184f8", "index": 2151, "guid": "85d0ff65-e116-46b5-a8a7-7a20d5076f5f", "isActive": true, "balance": "$3,470.92", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Katherine Perez", "gender": "female", "company": "ONTALITY", "email": "katherineperez@ontality.com", "phone": "+1 (816) 523-3882", "address": "609 Wythe Place, Lodoga, Maine, 2699", "about": "Ipsum adipisicing ea officia duis ut minim sint adipisicing commodo ad do. Non mollit veniam officia exercitation dolor enim culpa adipisicing. Do nulla magna dolor magna dolor. Exercitation cillum excepteur cupidatat do aliqua sunt eiusmod. Aute velit ipsum dolore nostrud dolore reprehenderit ipsum mollit culpa cillum. Officia dolor ea eiusmod excepteur pariatur in. Non nostrud voluptate irure sint mollit nisi sint culpa sit magna minim.\r\n", "registered": "2014-02-14T10:09:22-13:00", "latitude": -44.093638, "longitude": -169.318282, "tags": [ "aute", "nulla", "cupidatat", "eiusmod", "amet", "voluptate", "sint" ], "friends": [ { "id": 0, "name": "Lakeisha Hoffman" }, { "id": 1, "name": "Skinner Waller" }, { "id": 2, "name": "Hodges Bowman" } ], "greeting": "Hello, Katherine Perez! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24217ac2ffc084c5c3", "index": 2152, "guid": "63038c17-65ab-4f70-8e7c-ce58e9de5a18", "isActive": true, "balance": "$2,327.02", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Jodi Morales", "gender": "female", "company": "BISBA", "email": "jodimorales@bisba.com", "phone": "+1 (900) 474-2583", "address": "484 Calyer Street, Titanic, Virginia, 9672", "about": "Laborum non labore veniam nostrud adipisicing reprehenderit. Elit culpa labore nulla enim velit velit et quis cillum commodo. Consequat veniam esse nisi do labore aliqua labore culpa commodo ad magna. Do aliquip eu nisi minim ullamco occaecat voluptate nostrud aute voluptate. Velit culpa consequat enim laborum officia qui sit eiusmod proident anim. Elit fugiat ullamco ad nostrud magna ullamco consectetur proident.\r\n", "registered": "2014-05-09T09:48:54-12:00", "latitude": -4.053485, "longitude": -147.312474, "tags": [ "commodo", "sunt", "magna", "est", "ex", "minim", "ex" ], "friends": [ { "id": 0, "name": "Lena Mejia" }, { "id": 1, "name": "Beulah Hurst" }, { "id": 2, "name": "Lana Kennedy" } ], "greeting": "Hello, Jodi Morales! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24863f1d63ea4549a0", "index": 2153, "guid": "514a6368-c252-4cab-a1c3-bfdb7063ae33", "isActive": true, "balance": "$3,395.59", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Mcmahon Farrell", "gender": "male", "company": "TASMANIA", "email": "mcmahonfarrell@tasmania.com", "phone": "+1 (983) 439-2675", "address": "968 Abbey Court, Edneyville, Kentucky, 5730", "about": "Est do ad incididunt et ullamco aliquip aliquip. Irure excepteur aliquip aliquip aliquip eu eu duis et do sint cillum aute id. Excepteur ad qui aliquip exercitation deserunt cupidatat id. Sint mollit eiusmod dolor occaecat nulla ex minim incididunt. Cupidatat reprehenderit ad laborum minim veniam ea dolor. Esse non do et incididunt irure laborum laboris aliqua.\r\n", "registered": "2014-01-23T08:08:08-13:00", "latitude": -30.078816, "longitude": 124.059995, "tags": [ "irure", "voluptate", "reprehenderit", "est", "adipisicing", "minim", "dolor" ], "friends": [ { "id": 0, "name": "Aguirre Doyle" }, { "id": 1, "name": "Montgomery Hoover" }, { "id": 2, "name": "Tara Dalton" } ], "greeting": "Hello, Mcmahon Farrell! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea247608626bf3f404c7", "index": 2154, "guid": "17580dfe-19bc-48a8-b373-3399483fb461", "isActive": false, "balance": "$3,007.94", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Angel Mcdowell", "gender": "female", "company": "EMTRAC", "email": "angelmcdowell@emtrac.com", "phone": "+1 (865) 490-2094", "address": "220 Stewart Street, Westphalia, Connecticut, 8097", "about": "Ad culpa dolor fugiat qui veniam anim quis consectetur eu. Do esse ad tempor est quis in sit dolor quis laboris excepteur irure consectetur. Deserunt officia sit cillum ut. Sunt enim eu ea duis cupidatat in eiusmod ullamco amet magna irure voluptate tempor laboris. Cupidatat aute pariatur duis do in enim est est. Dolore adipisicing dolore adipisicing eiusmod mollit. Voluptate qui sunt ipsum quis.\r\n", "registered": "2014-05-22T02:28:58-12:00", "latitude": -2.799423, "longitude": -90.795108, "tags": [ "velit", "veniam", "adipisicing", "sit", "aute", "voluptate", "deserunt" ], "friends": [ { "id": 0, "name": "Flossie Marsh" }, { "id": 1, "name": "Riggs Juarez" }, { "id": 2, "name": "Sykes Dillard" } ], "greeting": "Hello, Angel Mcdowell! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24e342e2760ee11a09", "index": 2155, "guid": "04952ba6-b63e-43d4-a290-ac3a08e5fde3", "isActive": false, "balance": "$2,642.84", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Hazel Lee", "gender": "female", "company": "ENERFORCE", "email": "hazellee@enerforce.com", "phone": "+1 (808) 414-2948", "address": "862 Fay Court, Lacomb, Mississippi, 5150", "about": "Elit laboris in magna velit magna. Cupidatat enim excepteur veniam sunt voluptate id elit ea minim proident. Aute deserunt magna nostrud dolor proident velit adipisicing minim ex id duis dolor commodo. Ea Lorem magna aliquip culpa. Esse duis sint labore velit sint ut deserunt nulla dolor laborum. Sunt id ut consectetur est irure tempor nulla qui Lorem exercitation cupidatat deserunt ullamco.\r\n", "registered": "2014-08-06T05:57:43-12:00", "latitude": -21.44056, "longitude": 162.076021, "tags": [ "ea", "excepteur", "laboris", "velit", "Lorem", "ad", "sit" ], "friends": [ { "id": 0, "name": "Tisha Mayer" }, { "id": 1, "name": "Houston Beard" }, { "id": 2, "name": "Kane Randolph" } ], "greeting": "Hello, Hazel Lee! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24fd9197f7222067fd", "index": 2156, "guid": "3799afe8-699f-44ae-bbe6-4604231a04a1", "isActive": false, "balance": "$3,096.22", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Deena Rocha", "gender": "female", "company": "PUSHCART", "email": "deenarocha@pushcart.com", "phone": "+1 (880) 451-3655", "address": "408 Morgan Avenue, Martinez, Washington, 5519", "about": "Aute aliquip non do sunt aliqua non ut. Commodo amet deserunt anim deserunt anim labore incididunt. Tempor et culpa adipisicing est id aliquip tempor duis adipisicing est aliquip occaecat. Minim sunt aliquip deserunt deserunt labore mollit laborum. Laborum ipsum cillum excepteur id.\r\n", "registered": "2014-03-31T18:45:10-13:00", "latitude": 34.075405, "longitude": 65.852786, "tags": [ "do", "culpa", "ad", "eiusmod", "eu", "aliqua", "nisi" ], "friends": [ { "id": 0, "name": "Roxie Owen" }, { "id": 1, "name": "Verna Justice" }, { "id": 2, "name": "Lott Walters" } ], "greeting": "Hello, Deena Rocha! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2473a209728c21126c", "index": 2157, "guid": "c438ed12-40e9-43b7-8942-671214d00224", "isActive": false, "balance": "$1,092.64", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Osborne Moon", "gender": "male", "company": "ISOPLEX", "email": "osbornemoon@isoplex.com", "phone": "+1 (949) 404-2019", "address": "672 Vandam Street, Bluetown, Tennessee, 6818", "about": "Duis mollit mollit adipisicing et cillum mollit nisi esse laborum elit pariatur. Ipsum laborum pariatur commodo aliquip aliquip esse labore pariatur. Et est dolore officia reprehenderit culpa labore consectetur culpa in aute quis enim irure pariatur. Commodo nisi est magna ea labore veniam duis incididunt sint.\r\n", "registered": "2014-02-27T08:29:02-13:00", "latitude": -2.870238, "longitude": 147.758219, "tags": [ "excepteur", "sunt", "deserunt", "reprehenderit", "exercitation", "ad", "incididunt" ], "friends": [ { "id": 0, "name": "Rice Byers" }, { "id": 1, "name": "Gena Mcdaniel" }, { "id": 2, "name": "Candice Pearson" } ], "greeting": "Hello, Osborne Moon! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea240d98b8c35c9f3d5c", "index": 2158, "guid": "ab9a707f-f8b4-4ee8-8c51-479dcf10ef75", "isActive": true, "balance": "$2,994.92", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Effie Mcintosh", "gender": "female", "company": "GENESYNK", "email": "effiemcintosh@genesynk.com", "phone": "+1 (863) 588-3999", "address": "699 Cox Place, Gallina, Alabama, 3697", "about": "Quis amet voluptate do fugiat aute ut reprehenderit ut Lorem excepteur et occaecat non. Dolore anim Lorem elit culpa velit amet et exercitation cupidatat labore ipsum dolore id. Laborum quis mollit labore pariatur do eu. Deserunt laborum id ullamco incididunt tempor cupidatat labore et anim. Adipisicing cillum consectetur nisi sit mollit in anim mollit ullamco in.\r\n", "registered": "2014-02-19T20:03:14-13:00", "latitude": -9.924241, "longitude": 137.842023, "tags": [ "consectetur", "minim", "eu", "culpa", "elit", "nisi", "in" ], "friends": [ { "id": 0, "name": "Brittany Robertson" }, { "id": 1, "name": "Tamara Sherman" }, { "id": 2, "name": "Erika Gillespie" } ], "greeting": "Hello, Effie Mcintosh! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea242c78d65e85786813", "index": 2159, "guid": "67c445a7-4144-42d1-ab87-2ef163a524e1", "isActive": true, "balance": "$2,866.98", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Dawson Glass", "gender": "male", "company": "REALMO", "email": "dawsonglass@realmo.com", "phone": "+1 (845) 509-2815", "address": "670 Verona Place, Bartley, Ohio, 4805", "about": "Eiusmod et qui aute laborum duis et Lorem. Ea in nisi nulla incididunt cupidatat sint elit ut. Lorem velit excepteur incididunt est veniam.\r\n", "registered": "2014-05-31T12:04:13-12:00", "latitude": 60.515246, "longitude": 73.83896, "tags": [ "eu", "est", "nisi", "voluptate", "cillum", "consectetur", "est" ], "friends": [ { "id": 0, "name": "Reilly Wells" }, { "id": 1, "name": "Oneill Love" }, { "id": 2, "name": "Calderon Owens" } ], "greeting": "Hello, Dawson Glass! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea249d0131c6b70517bd", "index": 2160, "guid": "ac883fcd-52ee-4b61-b7cc-f9e537679f41", "isActive": true, "balance": "$1,769.84", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Lindsey Levy", "gender": "male", "company": "SHEPARD", "email": "lindseylevy@shepard.com", "phone": "+1 (923) 416-2333", "address": "299 Falmouth Street, Noxen, Hawaii, 8678", "about": "Fugiat quis mollit nostrud in adipisicing eu. Excepteur do qui sit qui. Magna et sunt id cillum ea anim sit sint dolore. Cillum quis non do fugiat consectetur labore id ex magna esse ea mollit incididunt mollit. Magna aliqua ipsum id est.\r\n", "registered": "2014-04-18T10:03:52-12:00", "latitude": 19.771687, "longitude": 31.270506, "tags": [ "nulla", "amet", "ea", "eiusmod", "est", "sint", "duis" ], "friends": [ { "id": 0, "name": "Gilmore Dillon" }, { "id": 1, "name": "Casey Williamson" }, { "id": 2, "name": "Dawn Ware" } ], "greeting": "Hello, Lindsey Levy! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24ae87d636a9c939f5", "index": 2161, "guid": "3fbfa9e0-74e5-4d29-81fc-c35f9dfb5148", "isActive": true, "balance": "$2,362.27", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Boone Alston", "gender": "male", "company": "INSOURCE", "email": "boonealston@insource.com", "phone": "+1 (848) 528-3051", "address": "175 Stoddard Place, Loomis, New Mexico, 3571", "about": "Aliqua qui et aliqua enim nostrud. Labore deserunt officia est aliqua laboris et cupidatat est fugiat. Laboris ipsum dolore sit officia non incididunt sunt voluptate labore mollit duis. Nisi non voluptate adipisicing reprehenderit veniam excepteur ullamco duis nisi sunt id. Enim aute nulla in magna anim sint veniam. Est pariatur tempor ipsum aliqua eu consequat aliqua. Eu consequat aliquip aliquip ipsum consectetur proident pariatur dolor id et quis sint sunt.\r\n", "registered": "2014-04-28T05:32:42-12:00", "latitude": 1.870068, "longitude": -99.615425, "tags": [ "consequat", "deserunt", "duis", "voluptate", "ipsum", "esse", "incididunt" ], "friends": [ { "id": 0, "name": "Campbell Nieves" }, { "id": 1, "name": "Moody Deleon" }, { "id": 2, "name": "Alejandra Parrish" } ], "greeting": "Hello, Boone Alston! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea245f5f04773215bc1d", "index": 2162, "guid": "93479cb9-736d-44a2-895e-ddaa9f5dbd96", "isActive": true, "balance": "$3,999.88", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Lilly Farley", "gender": "female", "company": "PEARLESSA", "email": "lillyfarley@pearlessa.com", "phone": "+1 (916) 513-2015", "address": "777 Dover Street, Wawona, Maryland, 3040", "about": "In sit dolor enim veniam exercitation cupidatat tempor enim velit excepteur labore fugiat Lorem. Mollit laborum consectetur do ea laborum tempor Lorem sint consectetur id ex. Cillum ut pariatur eu et cillum laboris mollit voluptate laboris pariatur.\r\n", "registered": "2014-09-16T16:15:42-12:00", "latitude": 25.403369, "longitude": 40.79353, "tags": [ "deserunt", "reprehenderit", "ullamco", "sit", "consequat", "proident", "aliqua" ], "friends": [ { "id": 0, "name": "Annie Pugh" }, { "id": 1, "name": "Blanca Barber" }, { "id": 2, "name": "Walker Hayes" } ], "greeting": "Hello, Lilly Farley! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea249618a44a47725a9d", "index": 2163, "guid": "cf90ec5f-bfd5-4163-a518-53c4e7777c83", "isActive": true, "balance": "$2,979.49", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Hayden Pennington", "gender": "male", "company": "ARTWORLDS", "email": "haydenpennington@artworlds.com", "phone": "+1 (983) 523-3123", "address": "103 Kent Avenue, Vandiver, Alaska, 2163", "about": "Pariatur in do ipsum anim occaecat irure labore culpa quis consectetur. Nostrud dolore id eu amet nulla ad. Irure proident id Lorem eu cillum eu velit aliqua est. Qui mollit consequat in reprehenderit labore laborum pariatur est incididunt eiusmod elit et occaecat consequat. Officia nostrud id labore quis irure consequat. Dolore velit eiusmod occaecat sint eu consectetur reprehenderit.\r\n", "registered": "2014-07-31T01:30:53-12:00", "latitude": 67.19202, "longitude": 32.196883, "tags": [ "ullamco", "laboris", "duis", "eu", "non", "excepteur", "nisi" ], "friends": [ { "id": 0, "name": "Tameka May" }, { "id": 1, "name": "Jerry Hyde" }, { "id": 2, "name": "Sutton Nunez" } ], "greeting": "Hello, Hayden Pennington! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24bbf4b23990346d74", "index": 2164, "guid": "0369b77c-20e1-47fb-9ff5-9f81c3c0494d", "isActive": true, "balance": "$1,313.04", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Morgan Hodge", "gender": "female", "company": "ZEPITOPE", "email": "morganhodge@zepitope.com", "phone": "+1 (902) 487-3643", "address": "747 Waldane Court, Chelsea, Arizona, 5954", "about": "Consequat consequat ipsum consequat id amet laborum. Nostrud dolore sint minim minim. Pariatur fugiat in reprehenderit amet anim ad anim esse commodo consequat. Exercitation deserunt aute ea et consectetur non duis enim exercitation voluptate ut. Anim nostrud aute eu proident proident do et non culpa. Sint non dolore cillum eiusmod culpa excepteur commodo ex laboris aliquip consequat aute.\r\n", "registered": "2014-06-05T04:29:53-12:00", "latitude": 74.844182, "longitude": -59.740315, "tags": [ "dolore", "culpa", "deserunt", "nulla", "eu", "commodo", "irure" ], "friends": [ { "id": 0, "name": "Benton Dominguez" }, { "id": 1, "name": "Harvey Mitchell" }, { "id": 2, "name": "Craig Rogers" } ], "greeting": "Hello, Morgan Hodge! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24a5b5d153d6d5859b", "index": 2165, "guid": "1dece8aa-d03a-4e68-97bb-0954ace7c528", "isActive": true, "balance": "$1,162.69", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Lynne Odom", "gender": "female", "company": "CEDWARD", "email": "lynneodom@cedward.com", "phone": "+1 (836) 588-3194", "address": "363 Victor Road, Aguila, Federated States Of Micronesia, 9893", "about": "Incididunt aliquip nulla cillum est cillum aliqua do magna cillum exercitation esse amet. Magna officia proident ipsum ipsum dolor est aliquip minim sunt ad laboris reprehenderit. Lorem ex sint excepteur laborum adipisicing sunt ad ad Lorem. Id nostrud amet consequat cupidatat velit. Anim culpa sunt cillum Lorem. Duis enim cillum eiusmod magna tempor.\r\n", "registered": "2014-04-13T19:44:09-12:00", "latitude": 13.006277, "longitude": 121.999697, "tags": [ "aliquip", "velit", "pariatur", "dolore", "eu", "fugiat", "sit" ], "friends": [ { "id": 0, "name": "Deloris Brock" }, { "id": 1, "name": "Miller Dixon" }, { "id": 2, "name": "Shanna Barnes" } ], "greeting": "Hello, Lynne Odom! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24fb0bb3a41fecd344", "index": 2166, "guid": "af6617a1-bde7-4dbd-b9da-031f0063dc65", "isActive": false, "balance": "$2,567.70", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Richards Massey", "gender": "male", "company": "ZENSURE", "email": "richardsmassey@zensure.com", "phone": "+1 (929) 517-2612", "address": "476 Horace Court, Datil, Oklahoma, 5179", "about": "Magna pariatur duis ut elit culpa sit ullamco amet aliquip in officia. Minim amet duis dolore aliquip eiusmod anim veniam non. Labore minim sint adipisicing Lorem et amet veniam velit sint cillum deserunt anim. Cillum laborum proident laboris exercitation excepteur excepteur. Fugiat anim esse id et nostrud velit pariatur id culpa consequat magna qui labore. Ex ex elit ex est dolor id irure nulla dolor ullamco deserunt laboris. Excepteur dolor exercitation dolor Lorem enim cillum laboris nisi culpa magna.\r\n", "registered": "2014-02-16T12:13:19-13:00", "latitude": 61.797412, "longitude": 110.397793, "tags": [ "dolore", "dolor", "officia", "veniam", "officia", "qui", "eu" ], "friends": [ { "id": 0, "name": "Marla Morton" }, { "id": 1, "name": "Robbie Landry" }, { "id": 2, "name": "Odom Garcia" } ], "greeting": "Hello, Richards Massey! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24e770f018b02701d0", "index": 2167, "guid": "4ce89257-9450-43aa-bed1-5a67505ef93b", "isActive": false, "balance": "$2,921.10", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Deanna Bowers", "gender": "female", "company": "PHOLIO", "email": "deannabowers@pholio.com", "phone": "+1 (879) 433-2451", "address": "969 Sands Street, Haring, Michigan, 168", "about": "Dolor cillum fugiat est culpa. Ex irure sit sint anim sint adipisicing exercitation veniam occaecat laborum et. Cupidatat cillum tempor anim ut exercitation consectetur nisi in quis incididunt. Et ad eu nostrud quis tempor ad consequat ipsum. Non velit quis incididunt qui in ea.\r\n", "registered": "2014-08-09T20:42:15-12:00", "latitude": 24.310914, "longitude": 36.624052, "tags": [ "laboris", "consequat", "sint", "duis", "occaecat", "amet", "officia" ], "friends": [ { "id": 0, "name": "Tonya Whitaker" }, { "id": 1, "name": "Watson Gordon" }, { "id": 2, "name": "Fischer Downs" } ], "greeting": "Hello, Deanna Bowers! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2464b13ca31ebc807f", "index": 2168, "guid": "4f3b2943-3cb5-423a-af56-823e3867911a", "isActive": true, "balance": "$2,768.19", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Sharlene Rose", "gender": "female", "company": "ZOSIS", "email": "sharlenerose@zosis.com", "phone": "+1 (985) 520-3830", "address": "353 Cropsey Avenue, Saticoy, Kansas, 5888", "about": "Ea nulla et duis Lorem qui. Magna consequat sit quis in. Duis veniam ipsum ea deserunt incididunt deserunt adipisicing eiusmod est non eu laboris adipisicing. Aliqua laboris ea est eu exercitation tempor irure nostrud ea veniam proident ut incididunt.\r\n", "registered": "2014-03-15T11:36:13-13:00", "latitude": 59.063041, "longitude": -34.115427, "tags": [ "velit", "consectetur", "aliquip", "ullamco", "enim", "et", "esse" ], "friends": [ { "id": 0, "name": "Potter Blackwell" }, { "id": 1, "name": "Claudette Steele" }, { "id": 2, "name": "Kaitlin Dorsey" } ], "greeting": "Hello, Sharlene Rose! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea240eaac2cc0390caea", "index": 2169, "guid": "ee7135c2-b46b-4e26-8109-94268d276372", "isActive": false, "balance": "$3,965.22", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Crosby Burch", "gender": "male", "company": "IDEGO", "email": "crosbyburch@idego.com", "phone": "+1 (896) 596-2446", "address": "251 Varick Street, Greenbackville, South Dakota, 9801", "about": "Quis commodo do sit tempor excepteur. Aliquip amet Lorem duis mollit cupidatat esse labore incididunt. Ipsum magna dolore dolor esse est do. Officia nulla laboris labore proident non aliqua anim officia in commodo esse ut. Magna ut adipisicing anim voluptate consequat do cillum veniam non ullamco est. Enim enim eiusmod anim nisi occaecat laborum fugiat esse minim.\r\n", "registered": "2014-04-07T21:23:33-12:00", "latitude": 15.045983, "longitude": 179.562907, "tags": [ "sint", "incididunt", "est", "irure", "consequat", "esse", "elit" ], "friends": [ { "id": 0, "name": "Kelly Miller" }, { "id": 1, "name": "Avila Gross" }, { "id": 2, "name": "Kimberley Rowe" } ], "greeting": "Hello, Crosby Burch! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea241ad76355c7621bb9", "index": 2170, "guid": "99346ed5-7253-44a6-a893-459fc0765fde", "isActive": true, "balance": "$2,086.98", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Sloan Fitzgerald", "gender": "male", "company": "ISOPOP", "email": "sloanfitzgerald@isopop.com", "phone": "+1 (976) 556-3771", "address": "914 Tehama Street, Beechmont, West Virginia, 2593", "about": "Qui occaecat anim esse dolore non. Elit dolore Lorem nostrud duis. Dolor Lorem qui esse esse mollit nulla deserunt nulla amet exercitation culpa. Est reprehenderit pariatur laboris mollit dolore velit eu consectetur minim occaecat aute laborum aliqua.\r\n", "registered": "2014-03-16T01:08:54-13:00", "latitude": -8.812547, "longitude": 119.504752, "tags": [ "excepteur", "sint", "eiusmod", "id", "aute", "amet", "nulla" ], "friends": [ { "id": 0, "name": "Brittney Burris" }, { "id": 1, "name": "Hall Case" }, { "id": 2, "name": "Moran Hines" } ], "greeting": "Hello, Sloan Fitzgerald! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea246f7ef45c924a2db6", "index": 2171, "guid": "ae63ee87-bf9c-486e-a061-8d03104dba0a", "isActive": false, "balance": "$1,676.28", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Ofelia Contreras", "gender": "female", "company": "VIAGRAND", "email": "ofeliacontreras@viagrand.com", "phone": "+1 (993) 458-2260", "address": "253 Amersfort Place, Bendon, Texas, 2754", "about": "Deserunt esse nulla cillum incididunt sunt ex ex id minim qui. Aliqua amet excepteur aute est voluptate proident sit sit ullamco esse magna aute. Ex aliqua enim nulla exercitation ex ipsum. Magna adipisicing aute aliquip sunt anim deserunt duis adipisicing esse deserunt veniam ea. Adipisicing incididunt id voluptate ullamco ullamco proident ad.\r\n", "registered": "2014-01-07T15:26:55-13:00", "latitude": 38.973373, "longitude": 85.897994, "tags": [ "mollit", "veniam", "qui", "non", "laboris", "est", "eiusmod" ], "friends": [ { "id": 0, "name": "Katelyn Chen" }, { "id": 1, "name": "Alexandria Bean" }, { "id": 2, "name": "Cooke Burns" } ], "greeting": "Hello, Ofelia Contreras! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24547a321042785ff1", "index": 2172, "guid": "0e8b14c1-e9d3-42e9-8cdd-97239f8539c8", "isActive": false, "balance": "$2,899.87", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Sullivan Bruce", "gender": "male", "company": "VORATAK", "email": "sullivanbruce@voratak.com", "phone": "+1 (883) 492-2639", "address": "495 Hall Street, Davenport, Oregon, 3381", "about": "Aute dolor culpa proident aliquip est ex eiusmod aliqua adipisicing. Non fugiat voluptate culpa nulla. Veniam ex voluptate laborum nostrud. Nostrud Lorem veniam et deserunt ullamco laboris incididunt consectetur. Adipisicing enim excepteur cillum sint. Labore fugiat in et consequat labore. Ad officia ullamco ea nulla laborum incididunt laboris incididunt id adipisicing adipisicing duis et dolore.\r\n", "registered": "2014-01-28T22:57:27-13:00", "latitude": 11.62149, "longitude": -96.09874, "tags": [ "magna", "consectetur", "commodo", "ipsum", "minim", "est", "qui" ], "friends": [ { "id": 0, "name": "Monique Gilliam" }, { "id": 1, "name": "Andrea Weiss" }, { "id": 2, "name": "Gamble Sharp" } ], "greeting": "Hello, Sullivan Bruce! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea246eb37a68c51241a9", "index": 2173, "guid": "b9037018-1dc8-46d8-94a7-78542ba98cfc", "isActive": true, "balance": "$2,088.49", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Christa Rivera", "gender": "female", "company": "ONTAGENE", "email": "christarivera@ontagene.com", "phone": "+1 (956) 496-3632", "address": "211 Shale Street, Emerald, Nevada, 5604", "about": "Mollit enim culpa culpa sit. Deserunt quis velit est aute aliqua. Lorem amet mollit exercitation excepteur voluptate non ipsum cillum non tempor veniam cillum. Excepteur deserunt deserunt ex occaecat. Tempor est sint veniam consectetur minim dolor labore fugiat commodo. Eiusmod sunt enim ullamco occaecat aliqua excepteur in consectetur. Qui esse ea exercitation ad incididunt commodo duis esse ad.\r\n", "registered": "2014-05-06T01:47:00-12:00", "latitude": 51.073032, "longitude": -50.100755, "tags": [ "labore", "laboris", "laboris", "ad", "anim", "aliquip", "ullamco" ], "friends": [ { "id": 0, "name": "Chaney Hobbs" }, { "id": 1, "name": "Jimenez Parker" }, { "id": 2, "name": "Alicia West" } ], "greeting": "Hello, Christa Rivera! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24e5ca1a31901f9f19", "index": 2174, "guid": "35cfbb2f-d3a0-4372-9a07-0b511f2e2401", "isActive": false, "balance": "$2,149.21", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Hood Peck", "gender": "male", "company": "LUNCHPOD", "email": "hoodpeck@lunchpod.com", "phone": "+1 (927) 412-3345", "address": "893 Montague Terrace, Brownlee, Minnesota, 1103", "about": "Magna fugiat aliquip veniam non do. Occaecat nulla labore dolore duis culpa non excepteur cupidatat. Aute deserunt adipisicing consectetur aliqua non irure Lorem anim excepteur quis Lorem. Consequat incididunt sit exercitation est. Consectetur elit mollit Lorem nulla enim fugiat officia nisi irure laborum. Consequat duis reprehenderit proident ut consectetur.\r\n", "registered": "2014-04-15T18:48:51-12:00", "latitude": -34.146363, "longitude": 177.495516, "tags": [ "ut", "incididunt", "et", "cupidatat", "et", "in", "non" ], "friends": [ { "id": 0, "name": "Melendez Hogan" }, { "id": 1, "name": "Mary Coffey" }, { "id": 2, "name": "Tammie Snider" } ], "greeting": "Hello, Hood Peck! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24be42362402d85b7c", "index": 2175, "guid": "02185af8-185e-487e-a645-df2af7e34c65", "isActive": false, "balance": "$1,160.29", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Rene Flores", "gender": "female", "company": "COREPAN", "email": "reneflores@corepan.com", "phone": "+1 (805) 588-3021", "address": "382 Prospect Place, Sattley, Missouri, 3729", "about": "Nostrud labore et quis ad sint veniam fugiat amet exercitation excepteur est adipisicing quis. Occaecat qui consectetur laborum anim aliquip officia nostrud do ex excepteur reprehenderit magna velit velit. Sunt nulla ut nisi deserunt fugiat nisi ipsum eu id amet voluptate. Culpa exercitation reprehenderit eu incididunt amet mollit reprehenderit.\r\n", "registered": "2014-01-09T01:10:58-13:00", "latitude": 36.395577, "longitude": -106.808105, "tags": [ "dolor", "do", "proident", "ullamco", "anim", "cillum", "Lorem" ], "friends": [ { "id": 0, "name": "Natalia Harrell" }, { "id": 1, "name": "Cecilia Henson" }, { "id": 2, "name": "Cervantes Booth" } ], "greeting": "Hello, Rene Flores! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea240e1e1a5538d11d12", "index": 2176, "guid": "9c26ba42-3340-4998-a42b-20e9be4517f3", "isActive": true, "balance": "$3,921.51", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Wilkins Willis", "gender": "male", "company": "JOVIOLD", "email": "wilkinswillis@joviold.com", "phone": "+1 (954) 511-2179", "address": "363 Anchorage Place, Takilma, Rhode Island, 3157", "about": "Ad aute labore labore minim amet eu laborum sunt laboris proident enim qui. Ad aute sunt consequat dolor anim ut anim quis dolore elit labore adipisicing do. Ea ex magna dolore voluptate. Sunt magna exercitation deserunt tempor quis veniam ex excepteur velit culpa aute. Deserunt eiusmod sint adipisicing non nulla pariatur ea in est ea magna dolor consequat. Nisi Lorem enim adipisicing duis ullamco qui id ea exercitation ullamco aliquip cillum. Deserunt commodo magna laborum ullamco consectetur irure elit voluptate ullamco fugiat consectetur sint velit exercitation.\r\n", "registered": "2014-01-03T18:37:41-13:00", "latitude": 61.542919, "longitude": -140.770491, "tags": [ "eiusmod", "velit", "aute", "voluptate", "eu", "do", "ipsum" ], "friends": [ { "id": 0, "name": "Jacqueline Carpenter" }, { "id": 1, "name": "Mcclure Pena" }, { "id": 2, "name": "Marcy Washington" } ], "greeting": "Hello, Wilkins Willis! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24b33badbcdc986f7d", "index": 2177, "guid": "84611fb4-52ba-4e8e-817b-a67303ebf396", "isActive": true, "balance": "$3,577.56", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Rollins Potter", "gender": "male", "company": "EBIDCO", "email": "rollinspotter@ebidco.com", "phone": "+1 (846) 408-2604", "address": "162 Essex Street, Walker, Florida, 5923", "about": "Irure quis quis exercitation pariatur. Sit adipisicing mollit sit nostrud dolore amet nulla anim amet velit qui veniam id. Laborum occaecat labore consequat sit velit ipsum ut. Id sunt commodo excepteur velit exercitation est sit ut deserunt. Est anim quis est do minim est quis occaecat tempor id elit. Dolore do exercitation eiusmod anim Lorem reprehenderit in dolor velit.\r\n", "registered": "2014-08-28T09:48:36-12:00", "latitude": -10.426347, "longitude": -159.437766, "tags": [ "officia", "nisi", "mollit", "cupidatat", "irure", "eu", "dolor" ], "friends": [ { "id": 0, "name": "Heidi Gates" }, { "id": 1, "name": "Le Hopkins" }, { "id": 2, "name": "Brianna Gilbert" } ], "greeting": "Hello, Rollins Potter! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24569f4674189dd6ae", "index": 2178, "guid": "7dc749e8-d915-40cb-80ec-56b170745d89", "isActive": false, "balance": "$3,614.86", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Shelby Walls", "gender": "female", "company": "RODEMCO", "email": "shelbywalls@rodemco.com", "phone": "+1 (855) 440-3168", "address": "619 Fiske Place, Bellamy, North Carolina, 5827", "about": "Voluptate elit enim commodo magna nulla sunt Lorem nostrud cupidatat cupidatat reprehenderit incididunt cupidatat aliqua. Nostrud adipisicing ullamco occaecat excepteur fugiat laboris reprehenderit incididunt incididunt. Excepteur est culpa tempor duis qui nisi sint occaecat. Aliquip voluptate sunt nulla occaecat amet. Aute aute labore consequat proident in.\r\n", "registered": "2014-03-16T06:25:02-13:00", "latitude": 74.7301, "longitude": 114.235036, "tags": [ "sunt", "do", "sunt", "quis", "mollit", "magna", "duis" ], "friends": [ { "id": 0, "name": "Conley Franklin" }, { "id": 1, "name": "Macias Reed" }, { "id": 2, "name": "Cathryn Odonnell" } ], "greeting": "Hello, Shelby Walls! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2453b8e62dcfd685fa", "index": 2179, "guid": "fa8fbfd5-f06b-4277-a43e-c7604906f53c", "isActive": false, "balance": "$3,844.55", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Church Chang", "gender": "male", "company": "OVIUM", "email": "churchchang@ovium.com", "phone": "+1 (925) 567-3820", "address": "782 Sunnyside Court, Freeburn, New Hampshire, 8198", "about": "Eiusmod proident est magna cupidatat proident laboris anim aliquip ipsum cupidatat proident tempor. Magna consectetur nulla eu dolor incididunt aute eiusmod sint est. Veniam minim occaecat sint irure minim minim nulla do fugiat ut non aliquip.\r\n", "registered": "2014-06-27T20:25:53-12:00", "latitude": 4.632187, "longitude": 102.129296, "tags": [ "ipsum", "aute", "veniam", "mollit", "adipisicing", "et", "in" ], "friends": [ { "id": 0, "name": "Bennett Snyder" }, { "id": 1, "name": "Candace Elliott" }, { "id": 2, "name": "Daisy Neal" } ], "greeting": "Hello, Church Chang! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24d446f4a891166a93", "index": 2180, "guid": "34eeb188-bf3d-4124-bddc-5ebe6a050aeb", "isActive": true, "balance": "$2,749.74", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Fowler Boone", "gender": "male", "company": "HALAP", "email": "fowlerboone@halap.com", "phone": "+1 (914) 569-2182", "address": "243 Louisiana Avenue, Canterwood, Arkansas, 5568", "about": "Do sunt ipsum occaecat eiusmod excepteur non. Cupidatat proident voluptate sit exercitation. Quis do nisi proident pariatur et aliqua.\r\n", "registered": "2014-07-11T03:05:30-12:00", "latitude": 30.579291, "longitude": 124.762198, "tags": [ "elit", "esse", "dolore", "ad", "labore", "officia", "do" ], "friends": [ { "id": 0, "name": "Castaneda Valencia" }, { "id": 1, "name": "Mayra Robinson" }, { "id": 2, "name": "Pickett Macdonald" } ], "greeting": "Hello, Fowler Boone! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2432092ee19b08b032", "index": 2181, "guid": "30e6df79-cf2e-4b1d-bb0f-58cd6b003319", "isActive": false, "balance": "$2,461.84", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Marisol Santiago", "gender": "female", "company": "EXOSIS", "email": "marisolsantiago@exosis.com", "phone": "+1 (976) 511-2733", "address": "362 Fountain Avenue, Waiohinu, Iowa, 6787", "about": "Lorem anim ut in tempor exercitation. Esse aute dolore enim anim in duis do adipisicing voluptate reprehenderit velit irure irure. Sunt enim excepteur velit velit incididunt do ad minim dolore Lorem.\r\n", "registered": "2014-06-27T00:15:56-12:00", "latitude": 83.9682, "longitude": 39.527925, "tags": [ "tempor", "eu", "veniam", "veniam", "cupidatat", "duis", "quis" ], "friends": [ { "id": 0, "name": "Linda Bartlett" }, { "id": 1, "name": "Joy Weeks" }, { "id": 2, "name": "Owen Lott" } ], "greeting": "Hello, Marisol Santiago! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea243ca847eed0464a84", "index": 2182, "guid": "9cf4496d-9aa7-48cf-a9f0-4be6622feed4", "isActive": true, "balance": "$2,495.92", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Mcknight Oconnor", "gender": "male", "company": "HYDROCOM", "email": "mcknightoconnor@hydrocom.com", "phone": "+1 (934) 566-2034", "address": "562 Catherine Street, Tampico, Nebraska, 3190", "about": "Sunt incididunt exercitation non ipsum amet elit eiusmod aliquip. Do ipsum do ad consectetur eu quis. Minim et excepteur ea ipsum tempor enim adipisicing est elit sunt. Voluptate qui mollit anim deserunt exercitation.\r\n", "registered": "2014-07-30T20:17:55-12:00", "latitude": 87.714932, "longitude": -93.650746, "tags": [ "aute", "voluptate", "reprehenderit", "anim", "id", "esse", "ex" ], "friends": [ { "id": 0, "name": "Burton Dejesus" }, { "id": 1, "name": "Melissa Cline" }, { "id": 2, "name": "Hope Larson" } ], "greeting": "Hello, Mcknight Oconnor! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24015e63b7a5d1c822", "index": 2183, "guid": "42b75ceb-ed98-42ad-841c-712085b87f74", "isActive": true, "balance": "$3,291.39", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Little Velazquez", "gender": "male", "company": "AFFLUEX", "email": "littlevelazquez@affluex.com", "phone": "+1 (875) 434-3962", "address": "592 Irwin Street, Lupton, District Of Columbia, 1838", "about": "Sint id quis aliquip consequat officia sunt magna et minim occaecat est. Proident esse ex esse quis consequat pariatur occaecat culpa aliqua excepteur qui eu aliquip. Consequat in tempor excepteur exercitation aute. Labore magna culpa reprehenderit enim fugiat irure incididunt eiusmod aliqua sit occaecat.\r\n", "registered": "2014-05-20T12:35:57-12:00", "latitude": 39.870097, "longitude": -160.736788, "tags": [ "occaecat", "Lorem", "laborum", "dolore", "exercitation", "amet", "do" ], "friends": [ { "id": 0, "name": "Rae Newman" }, { "id": 1, "name": "Mason Dyer" }, { "id": 2, "name": "Kelli Blair" } ], "greeting": "Hello, Little Velazquez! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea240f0827b958350b99", "index": 2184, "guid": "5e0a8f4d-d1c5-4da1-b2bd-32bc175b1549", "isActive": true, "balance": "$1,168.97", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Bowen Keller", "gender": "male", "company": "GEOFORMA", "email": "bowenkeller@geoforma.com", "phone": "+1 (958) 421-2072", "address": "373 Chester Avenue, Ilchester, New Jersey, 2663", "about": "Ut qui fugiat occaecat irure occaecat. Adipisicing aliqua sit enim velit nulla nulla labore. Duis sint est labore pariatur nostrud mollit. Aliqua reprehenderit anim dolor laborum Lorem sunt proident et nulla ex. Voluptate ad aute nostrud dolor nostrud fugiat non sunt magna cupidatat laboris aliquip pariatur.\r\n", "registered": "2014-08-08T18:41:46-12:00", "latitude": -31.064199, "longitude": 163.474144, "tags": [ "aute", "sit", "voluptate", "Lorem", "voluptate", "deserunt", "do" ], "friends": [ { "id": 0, "name": "Georgette Hampton" }, { "id": 1, "name": "Celina Hernandez" }, { "id": 2, "name": "Fanny Nguyen" } ], "greeting": "Hello, Bowen Keller! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2444f0ead1aeaeeae0", "index": 2185, "guid": "ee58cb71-07d9-42da-86f4-989f8bff7179", "isActive": false, "balance": "$1,620.39", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Rosario Ingram", "gender": "male", "company": "REMOTION", "email": "rosarioingram@remotion.com", "phone": "+1 (926) 533-2493", "address": "140 Crescent Street, Allentown, Palau, 6696", "about": "Qui et nulla sint minim. Dolore veniam enim do cillum officia est sint in cupidatat eu laborum dolore dolore. Anim occaecat esse laborum non sit aliquip ad incididunt nulla reprehenderit ullamco.\r\n", "registered": "2014-05-23T10:01:38-12:00", "latitude": 62.948655, "longitude": 84.439687, "tags": [ "ipsum", "et", "voluptate", "eiusmod", "eiusmod", "quis", "occaecat" ], "friends": [ { "id": 0, "name": "Mable Maldonado" }, { "id": 1, "name": "Amparo Guthrie" }, { "id": 2, "name": "Yvette Fletcher" } ], "greeting": "Hello, Rosario Ingram! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24a433cd8c75c2387a", "index": 2186, "guid": "c32d4860-6203-4c93-9593-dcb6b9b0e26c", "isActive": false, "balance": "$2,650.25", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Cochran Jarvis", "gender": "male", "company": "SUPREMIA", "email": "cochranjarvis@supremia.com", "phone": "+1 (954) 549-2234", "address": "158 Rugby Road, Grahamtown, Puerto Rico, 4711", "about": "Consectetur eu ea ipsum nulla ipsum. Officia quis enim velit voluptate non reprehenderit nostrud magna est id consectetur ipsum velit. In occaecat sit non cillum ut nulla do pariatur elit. Magna velit ullamco ad tempor ut excepteur Lorem ut cupidatat ut eiusmod.\r\n", "registered": "2014-05-25T08:44:32-12:00", "latitude": 2.320895, "longitude": -87.226125, "tags": [ "ullamco", "est", "fugiat", "excepteur", "esse", "magna", "quis" ], "friends": [ { "id": 0, "name": "Claudia Hinton" }, { "id": 1, "name": "Christian Battle" }, { "id": 2, "name": "Tammi Allen" } ], "greeting": "Hello, Cochran Jarvis! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24d7628101d18c43ef", "index": 2187, "guid": "2e3f57de-ea44-47a6-ad42-09df47066ece", "isActive": false, "balance": "$2,209.23", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Alston Barrett", "gender": "male", "company": "NEWCUBE", "email": "alstonbarrett@newcube.com", "phone": "+1 (956) 583-3314", "address": "762 Hewes Street, Itmann, California, 6494", "about": "Fugiat mollit id nulla sunt proident dolor nostrud consequat. Aute ad mollit aute laboris cupidatat. Sit aute dolore sint nostrud ad nostrud ea id.\r\n", "registered": "2014-06-09T07:38:49-12:00", "latitude": -63.659203, "longitude": -148.323939, "tags": [ "nulla", "dolor", "sint", "ipsum", "magna", "labore", "aute" ], "friends": [ { "id": 0, "name": "Greer Rojas" }, { "id": 1, "name": "Mindy Dotson" }, { "id": 2, "name": "Silvia Spence" } ], "greeting": "Hello, Alston Barrett! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24e219e24c35ccf858", "index": 2188, "guid": "30a8e64a-9dcb-4e2a-a8cd-c7236d137066", "isActive": false, "balance": "$2,031.35", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Jeannine Burke", "gender": "female", "company": "ZENSOR", "email": "jeannineburke@zensor.com", "phone": "+1 (994) 500-3480", "address": "360 Beacon Court, Topanga, Vermont, 5184", "about": "Tempor aute non aliqua irure deserunt tempor laboris ex laboris amet nostrud cupidatat officia. Excepteur commodo enim sit eiusmod velit proident Lorem ad et non. Irure exercitation mollit eu non aliqua id ut ea velit officia laborum labore amet do. Velit adipisicing adipisicing duis culpa laboris anim eiusmod minim consectetur. Ullamco excepteur nostrud duis culpa commodo consectetur commodo excepteur sunt. Laboris ipsum labore occaecat sit mollit nulla consequat mollit. Nisi mollit exercitation sunt irure do culpa do.\r\n", "registered": "2014-07-24T13:22:35-12:00", "latitude": -5.7255, "longitude": -47.88523, "tags": [ "reprehenderit", "adipisicing", "anim", "proident", "anim", "minim", "cupidatat" ], "friends": [ { "id": 0, "name": "Frieda Rosario" }, { "id": 1, "name": "Douglas Stephenson" }, { "id": 2, "name": "Ila Frederick" } ], "greeting": "Hello, Jeannine Burke! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24422522123bfb3d41", "index": 2189, "guid": "13a31a92-978a-4bb5-ba7b-65c7c0bb5d75", "isActive": false, "balance": "$2,108.62", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Moses Kirkland", "gender": "male", "company": "SYBIXTEX", "email": "moseskirkland@sybixtex.com", "phone": "+1 (942) 581-3543", "address": "419 Porter Avenue, Ribera, Indiana, 3084", "about": "Adipisicing aute eu cupidatat laborum aliqua ipsum aliqua commodo sunt duis id. Commodo irure fugiat do est mollit proident mollit aliqua consectetur. Non ea culpa deserunt ex aliqua adipisicing dolore id sit eiusmod. Officia consectetur Lorem sunt quis consectetur deserunt aliqua dolore. Ea in labore aute do id eu mollit. Deserunt Lorem esse incididunt fugiat ipsum laborum velit. Eiusmod ut aute in nostrud occaecat eiusmod laborum labore officia anim commodo nisi adipisicing.\r\n", "registered": "2014-02-17T03:02:51-13:00", "latitude": -79.781185, "longitude": -81.291187, "tags": [ "cupidatat", "exercitation", "do", "veniam", "magna", "aute", "amet" ], "friends": [ { "id": 0, "name": "Jenkins Wall" }, { "id": 1, "name": "Merritt Parsons" }, { "id": 2, "name": "Cora Curtis" } ], "greeting": "Hello, Moses Kirkland! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea242b8aa5695abbc695", "index": 2190, "guid": "20720842-af54-47ad-a287-1364c7fbfa83", "isActive": true, "balance": "$2,940.87", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Kay Diaz", "gender": "female", "company": "FURNITECH", "email": "kaydiaz@furnitech.com", "phone": "+1 (857) 571-2587", "address": "533 Meserole Avenue, Coloma, Illinois, 2980", "about": "Irure occaecat aliqua nostrud do qui voluptate. Sint aliqua officia nisi pariatur amet. Excepteur sint proident amet proident irure dolore ex aute proident anim id. Veniam duis aliquip aliquip do proident laborum duis aute incididunt deserunt enim commodo aliqua occaecat. Ipsum officia non amet est aliquip pariatur veniam laborum nostrud pariatur excepteur sint voluptate velit. Aliquip id amet ipsum sint. Elit aliqua excepteur dolor sint nostrud aliqua consectetur.\r\n", "registered": "2014-08-01T22:13:24-12:00", "latitude": 78.776822, "longitude": 61.344326, "tags": [ "et", "velit", "aliquip", "amet", "voluptate", "minim", "culpa" ], "friends": [ { "id": 0, "name": "Summer Henderson" }, { "id": 1, "name": "Lacey Fisher" }, { "id": 2, "name": "Harper Forbes" } ], "greeting": "Hello, Kay Diaz! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24606c418b71bb9693", "index": 2191, "guid": "7f8a9686-0cc6-4d65-8768-560b7b6f5f68", "isActive": false, "balance": "$3,885.60", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Jill Bass", "gender": "female", "company": "DEVILTOE", "email": "jillbass@deviltoe.com", "phone": "+1 (808) 529-3985", "address": "791 Knapp Street, Kempton, South Carolina, 9721", "about": "Reprehenderit laborum consequat ad Lorem sint culpa sunt consequat deserunt ullamco exercitation tempor Lorem. Dolore ipsum qui laborum pariatur aute minim consectetur id. Eu occaecat ad non aute laboris consequat laborum aliquip eiusmod elit commodo anim aute. Velit non commodo cillum aliqua amet eiusmod.\r\n", "registered": "2014-04-14T15:58:03-12:00", "latitude": -17.726562, "longitude": 108.31355, "tags": [ "culpa", "velit", "occaecat", "ullamco", "duis", "ea", "minim" ], "friends": [ { "id": 0, "name": "Boyer Rowland" }, { "id": 1, "name": "Marva Horn" }, { "id": 2, "name": "Ferguson Yates" } ], "greeting": "Hello, Jill Bass! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24cde8c65c2ca83ddf", "index": 2192, "guid": "a25ead5d-2dd1-4d7a-9986-e641fee94898", "isActive": true, "balance": "$2,600.44", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Francis Spears", "gender": "female", "company": "PYRAMIS", "email": "francisspears@pyramis.com", "phone": "+1 (820) 403-3508", "address": "514 Christopher Avenue, Hilltop, American Samoa, 7414", "about": "In veniam occaecat dolore reprehenderit nulla ea. Non sit incididunt cupidatat qui aute. Nulla commodo enim sunt officia. Enim quis ullamco quis consequat eu et amet sint consequat.\r\n", "registered": "2014-07-18T16:32:18-12:00", "latitude": 38.665734, "longitude": 76.291125, "tags": [ "ad", "qui", "eu", "eu", "veniam", "tempor", "eu" ], "friends": [ { "id": 0, "name": "Compton Hester" }, { "id": 1, "name": "Foreman Fernandez" }, { "id": 2, "name": "Leticia Sweeney" } ], "greeting": "Hello, Francis Spears! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24ea627d3801192dce", "index": 2193, "guid": "fa625d04-7cd0-4d2a-8e8a-eda1f9bbf0ba", "isActive": true, "balance": "$3,911.52", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Leona Abbott", "gender": "female", "company": "CYTREK", "email": "leonaabbott@cytrek.com", "phone": "+1 (899) 552-2103", "address": "775 Townsend Street, Foscoe, Delaware, 132", "about": "Culpa cillum fugiat duis sint do consequat commodo amet sit do. Eu aliqua labore ipsum commodo consectetur anim ea incididunt culpa labore mollit. Laborum excepteur id do deserunt ut ipsum culpa irure id anim do. Consequat ex ullamco minim non ipsum in sit nostrud irure labore.\r\n", "registered": "2014-07-18T20:06:28-12:00", "latitude": -64.293684, "longitude": 79.617234, "tags": [ "ipsum", "dolor", "nulla", "excepteur", "irure", "dolore", "mollit" ], "friends": [ { "id": 0, "name": "Juliette Kane" }, { "id": 1, "name": "Kidd Clements" }, { "id": 2, "name": "Marcia Romero" } ], "greeting": "Hello, Leona Abbott! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea241ef53a99b679ff93", "index": 2194, "guid": "7199945e-cc0b-4f12-b8de-66cb677fe839", "isActive": true, "balance": "$3,702.49", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Stein Moore", "gender": "male", "company": "EPLOSION", "email": "steinmoore@eplosion.com", "phone": "+1 (818) 545-2182", "address": "257 Rutland Road, Century, Pennsylvania, 7726", "about": "Ex consequat ut anim veniam incididunt sint culpa. Irure dolore exercitation eiusmod anim ex mollit velit magna adipisicing officia aliquip. Laboris sunt dolore commodo voluptate eu reprehenderit occaecat. Magna mollit nostrud non ex labore minim aliqua mollit non cupidatat sint. Incididunt cillum sit amet consequat eiusmod excepteur do. Ipsum aliqua esse pariatur ex ex.\r\n", "registered": "2014-04-22T20:18:30-12:00", "latitude": -71.822784, "longitude": -45.472777, "tags": [ "consectetur", "eu", "ipsum", "deserunt", "enim", "excepteur", "dolor" ], "friends": [ { "id": 0, "name": "Mcdowell Adams" }, { "id": 1, "name": "Collins Mcfadden" }, { "id": 2, "name": "Foley Clarke" } ], "greeting": "Hello, Stein Moore! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24d2dcfb0e049cddac", "index": 2195, "guid": "c65f105d-544b-46ec-87a5-81a5dbc6fcdc", "isActive": true, "balance": "$3,250.22", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Dale Church", "gender": "male", "company": "EXOZENT", "email": "dalechurch@exozent.com", "phone": "+1 (956) 513-3212", "address": "889 Kenmore Terrace, Finderne, Georgia, 1840", "about": "Ullamco duis pariatur enim adipisicing enim nisi fugiat ex pariatur eiusmod dolore quis. Reprehenderit laboris commodo voluptate ea voluptate velit qui officia veniam non dolor. Eu consectetur laboris et ullamco. Anim labore commodo anim ex cillum eu eiusmod minim reprehenderit incididunt. Exercitation amet adipisicing velit eu duis.\r\n", "registered": "2014-09-08T05:41:32-12:00", "latitude": 88.336757, "longitude": -73.663295, "tags": [ "occaecat", "duis", "dolor", "laborum", "est", "dolore", "officia" ], "friends": [ { "id": 0, "name": "Carey David" }, { "id": 1, "name": "Hansen Mcdonald" }, { "id": 2, "name": "Charlotte Lindsay" } ], "greeting": "Hello, Dale Church! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24e37a45a9e5c63d81", "index": 2196, "guid": "12980c7c-1507-4271-a894-08cab9e7accf", "isActive": true, "balance": "$1,806.43", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Araceli Key", "gender": "female", "company": "LIMOZEN", "email": "aracelikey@limozen.com", "phone": "+1 (941) 463-2469", "address": "208 Canarsie Road, Carlton, North Dakota, 3195", "about": "Proident reprehenderit proident voluptate ut exercitation mollit dolore tempor consectetur voluptate. Lorem aliquip eu elit enim commodo proident cupidatat proident voluptate aliquip ea. Sint consequat labore reprehenderit qui commodo quis. Consequat eiusmod reprehenderit exercitation pariatur sit elit ut esse duis magna pariatur duis. Esse ullamco veniam non incididunt quis irure aliqua dolor id in sit ad esse. Id consequat quis duis voluptate reprehenderit reprehenderit fugiat ea cupidatat non non nostrud elit.\r\n", "registered": "2014-06-28T13:06:53-12:00", "latitude": 11.007768, "longitude": 156.452735, "tags": [ "quis", "sint", "aliqua", "anim", "labore", "anim", "exercitation" ], "friends": [ { "id": 0, "name": "Rebecca Murray" }, { "id": 1, "name": "Tabitha Phelps" }, { "id": 2, "name": "Mullen Wolf" } ], "greeting": "Hello, Araceli Key! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24bb64e670f3ce00e7", "index": 2197, "guid": "ecb126a4-ac86-4b3d-a6e5-dcb31cdf6d94", "isActive": true, "balance": "$1,816.32", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Dillon Hooper", "gender": "male", "company": "GRUPOLI", "email": "dillonhooper@grupoli.com", "phone": "+1 (822) 541-2550", "address": "537 Elm Place, Harrison, Louisiana, 9149", "about": "Do amet in mollit et incididunt mollit. Aliqua incididunt dolore officia ipsum do aliquip exercitation ex velit. Non non sunt aute ea amet. Pariatur sint anim qui anim nulla pariatur voluptate. Dolore minim eu non consectetur enim. Elit labore exercitation aute cillum enim aliquip mollit veniam consectetur dolor culpa veniam nostrud mollit.\r\n", "registered": "2014-03-24T19:55:30-13:00", "latitude": 60.49706, "longitude": 165.995437, "tags": [ "do", "proident", "anim", "ut", "incididunt", "proident", "sunt" ], "friends": [ { "id": 0, "name": "Cleveland Mills" }, { "id": 1, "name": "Fitzgerald Middleton" }, { "id": 2, "name": "Graham Hawkins" } ], "greeting": "Hello, Dillon Hooper! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24047ff48ba95bcbd5", "index": 2198, "guid": "b73d862d-236d-44c5-965f-63ece2a1cf88", "isActive": true, "balance": "$1,547.03", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Marks Norris", "gender": "male", "company": "GEEKMOSIS", "email": "marksnorris@geekmosis.com", "phone": "+1 (911) 530-3968", "address": "872 Veranda Place, Caroleen, Northern Mariana Islands, 4673", "about": "Commodo proident aute aute enim id amet aute nulla nisi eiusmod. In eiusmod et officia officia Lorem elit aliqua Lorem excepteur et tempor ipsum labore. In est anim et cupidatat quis et anim.\r\n", "registered": "2014-07-11T19:08:14-12:00", "latitude": 34.615199, "longitude": 78.599703, "tags": [ "aute", "id", "qui", "eu", "commodo", "pariatur", "minim" ], "friends": [ { "id": 0, "name": "Emma Rich" }, { "id": 1, "name": "Carolina Cervantes" }, { "id": 2, "name": "Virgie Campbell" } ], "greeting": "Hello, Marks Norris! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24c9d389abfb85f165", "index": 2199, "guid": "70e77067-aff1-40f0-a2c7-ee7db3013fe8", "isActive": true, "balance": "$3,165.29", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Freeman Mcfarland", "gender": "male", "company": "AMRIL", "email": "freemanmcfarland@amril.com", "phone": "+1 (809) 469-2060", "address": "414 Cobek Court, Bayview, Colorado, 6361", "about": "Aute deserunt est consequat excepteur mollit. Aliqua in dolore exercitation consectetur in ipsum quis qui laboris nulla ad voluptate. Non Lorem proident amet do culpa magna eiusmod ipsum.\r\n", "registered": "2014-09-04T09:51:18-12:00", "latitude": 63.367039, "longitude": 1.340523, "tags": [ "officia", "adipisicing", "exercitation", "esse", "eiusmod", "Lorem", "sint" ], "friends": [ { "id": 0, "name": "Hart Beach" }, { "id": 1, "name": "Carr Vaughn" }, { "id": 2, "name": "Olsen Ashley" } ], "greeting": "Hello, Freeman Mcfarland! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2495562a61866a4b81", "index": 2200, "guid": "fbf646f5-6317-400e-8963-788a927df116", "isActive": false, "balance": "$3,445.37", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Herman Chandler", "gender": "male", "company": "MAGNEATO", "email": "hermanchandler@magneato.com", "phone": "+1 (889) 478-2594", "address": "135 Miller Avenue, Gardiner, Idaho, 4062", "about": "Mollit voluptate veniam reprehenderit dolor aliquip. Minim culpa quis irure dolore fugiat aliqua sit in nostrud do id anim. Irure pariatur culpa proident sint consequat labore. Cupidatat elit excepteur excepteur aliquip sit eiusmod non tempor consequat ullamco pariatur ipsum ex. Sunt nostrud commodo Lorem cillum reprehenderit et sint.\r\n", "registered": "2014-09-15T12:09:49-12:00", "latitude": -74.746968, "longitude": 28.490455, "tags": [ "in", "ut", "culpa", "nostrud", "aliqua", "dolor", "reprehenderit" ], "friends": [ { "id": 0, "name": "Tiffany Vaughan" }, { "id": 1, "name": "Oconnor Robbins" }, { "id": 2, "name": "Barry Levine" } ], "greeting": "Hello, Herman Chandler! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24dae2387b98971fa6", "index": 2201, "guid": "74cf9476-6bb2-440d-befb-3e6410e029b3", "isActive": false, "balance": "$3,646.28", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Elisabeth Combs", "gender": "female", "company": "ARCTIQ", "email": "elisabethcombs@arctiq.com", "phone": "+1 (885) 449-3436", "address": "965 Lake Place, Deercroft, Marshall Islands, 7199", "about": "Exercitation sunt elit ullamco veniam ad nostrud labore voluptate magna cillum proident. Do et irure mollit aute non consequat incididunt et pariatur. Nisi exercitation officia tempor ut nisi deserunt deserunt duis proident tempor consequat minim consectetur ex. Nostrud dolor id cupidatat aute minim adipisicing aute excepteur sit magna enim dolore non ipsum. Eiusmod duis commodo in deserunt non ad sit dolore. Consectetur qui sit quis cupidatat proident adipisicing excepteur est aliqua irure irure.\r\n", "registered": "2014-07-17T10:57:53-12:00", "latitude": -79.643449, "longitude": -45.649196, "tags": [ "deserunt", "nisi", "sint", "deserunt", "qui", "commodo", "dolore" ], "friends": [ { "id": 0, "name": "Vicki Schwartz" }, { "id": 1, "name": "Lorrie Sims" }, { "id": 2, "name": "Lessie Maxwell" } ], "greeting": "Hello, Elisabeth Combs! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24e33737bc857aef43", "index": 2202, "guid": "996484fc-5272-4547-801e-6d012541257f", "isActive": true, "balance": "$3,581.70", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Carrillo Talley", "gender": "male", "company": "GEEKNET", "email": "carrillotalley@geeknet.com", "phone": "+1 (951) 585-2938", "address": "709 Aurelia Court, Balm, New York, 3108", "about": "Est mollit consectetur occaecat anim sint amet magna mollit ex incididunt in. Cillum excepteur est quis qui aliquip est anim proident qui. Enim do ut id culpa duis mollit consectetur aute do excepteur aute officia. Sit commodo culpa qui irure consequat tempor do exercitation.\r\n", "registered": "2014-04-16T17:37:53-12:00", "latitude": 75.989079, "longitude": 18.613648, "tags": [ "eu", "incididunt", "occaecat", "tempor", "veniam", "qui", "laborum" ], "friends": [ { "id": 0, "name": "Hoffman Knowles" }, { "id": 1, "name": "Caitlin Green" }, { "id": 2, "name": "Georgina Gutierrez" } ], "greeting": "Hello, Carrillo Talley! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24d73b496baf59f205", "index": 2203, "guid": "18257473-e205-495e-a91f-53e3c350bdc8", "isActive": true, "balance": "$3,107.23", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Matilda Rivers", "gender": "female", "company": "DELPHIDE", "email": "matildarivers@delphide.com", "phone": "+1 (806) 490-3703", "address": "797 Imlay Street, Blue, Guam, 8844", "about": "Velit esse est quis adipisicing in pariatur ullamco ut dolor dolore ullamco eiusmod. Non nisi duis occaecat voluptate anim aliquip labore commodo. Aliquip aliquip cupidatat esse Lorem amet ex amet nisi anim elit elit qui in ullamco. Dolore eiusmod duis mollit officia culpa.\r\n", "registered": "2014-02-24T01:45:55-13:00", "latitude": 40.577908, "longitude": 43.747005, "tags": [ "veniam", "exercitation", "veniam", "et", "ut", "enim", "nulla" ], "friends": [ { "id": 0, "name": "Cooley Garner" }, { "id": 1, "name": "Catalina Mann" }, { "id": 2, "name": "Lavonne Harvey" } ], "greeting": "Hello, Matilda Rivers! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea240195b7ddd92a5d08", "index": 2204, "guid": "e5c04c7d-46ed-4b28-847a-55e7428b35e6", "isActive": false, "balance": "$3,986.22", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Jeanine Pollard", "gender": "female", "company": "APEXTRI", "email": "jeaninepollard@apextri.com", "phone": "+1 (840) 464-3949", "address": "655 Beach Place, Motley, Virgin Islands, 4526", "about": "Irure consequat ut veniam incididunt dolore exercitation sint nulla culpa proident. Aute deserunt id aliquip minim reprehenderit consequat anim tempor proident proident. Sunt cupidatat sunt incididunt veniam adipisicing commodo pariatur. Consequat est nisi aliquip excepteur dolore ipsum ad velit ut minim.\r\n", "registered": "2014-01-08T03:46:03-13:00", "latitude": -34.480984, "longitude": 134.656206, "tags": [ "et", "irure", "id", "ullamco", "veniam", "qui", "labore" ], "friends": [ { "id": 0, "name": "Rochelle Davenport" }, { "id": 1, "name": "Poole Norton" }, { "id": 2, "name": "Grace Mendez" } ], "greeting": "Hello, Jeanine Pollard! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24971d91436726ad39", "index": 2205, "guid": "c14bdba7-70a2-46d4-aab2-650b1c6c4fe0", "isActive": false, "balance": "$2,551.39", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Erin George", "gender": "female", "company": "TELLIFLY", "email": "eringeorge@tellifly.com", "phone": "+1 (977) 589-2855", "address": "310 Interborough Parkway, Greenbush, Massachusetts, 3507", "about": "Incididunt excepteur labore qui cupidatat sint reprehenderit est Lorem anim. Amet est aliqua labore minim cillum elit pariatur. Tempor pariatur id minim officia nulla pariatur sit ea ad consectetur adipisicing. Duis adipisicing ex et do proident. Dolor non quis esse pariatur minim cillum deserunt esse. Excepteur anim consectetur excepteur exercitation mollit ut non occaecat do occaecat consequat adipisicing.\r\n", "registered": "2014-03-10T04:04:19-13:00", "latitude": -63.024192, "longitude": -35.78624, "tags": [ "ad", "commodo", "commodo", "fugiat", "tempor", "tempor", "ea" ], "friends": [ { "id": 0, "name": "Wilson Park" }, { "id": 1, "name": "Howe Kerr" }, { "id": 2, "name": "Jo Roberts" } ], "greeting": "Hello, Erin George! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2449771fa0a741e520", "index": 2206, "guid": "8a89c668-f323-4246-aead-ad23dddb8c42", "isActive": true, "balance": "$3,585.15", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Taylor Holder", "gender": "female", "company": "FLUMBO", "email": "taylorholder@flumbo.com", "phone": "+1 (960) 506-2528", "address": "630 Mayfair Drive, Linganore, Utah, 7918", "about": "Nisi aliquip quis dolor excepteur mollit eiusmod ut ipsum anim. Ad est sunt consectetur eu irure labore ipsum. Sint enim labore aliqua cillum culpa enim aliquip. Veniam anim sint sunt culpa sit deserunt enim eiusmod tempor ut irure cillum.\r\n", "registered": "2014-06-21T02:38:00-12:00", "latitude": 65.294254, "longitude": 136.879588, "tags": [ "fugiat", "proident", "pariatur", "deserunt", "duis", "fugiat", "do" ], "friends": [ { "id": 0, "name": "Kayla Rollins" }, { "id": 1, "name": "Franks Gonzalez" }, { "id": 2, "name": "Maldonado Gonzales" } ], "greeting": "Hello, Taylor Holder! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2493e5828bf2923452", "index": 2207, "guid": "9d5bc46f-9e05-41b9-86f9-794cf55dacea", "isActive": false, "balance": "$1,953.07", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Amie Dickson", "gender": "female", "company": "DYNO", "email": "amiedickson@dyno.com", "phone": "+1 (945) 459-2252", "address": "207 McClancy Place, Jamestown, Montana, 8335", "about": "Labore in occaecat commodo consectetur occaecat velit ut labore enim minim reprehenderit. Reprehenderit enim nostrud esse elit commodo elit. Irure excepteur nisi anim nostrud do cupidatat. Qui nostrud reprehenderit qui sint irure esse reprehenderit velit occaecat. Eiusmod incididunt duis pariatur magna incididunt minim ullamco laborum velit exercitation in veniam. Lorem id occaecat est ullamco veniam nostrud in duis laborum eu ex. Aliquip id incididunt excepteur deserunt Lorem incididunt fugiat laborum duis non minim tempor.\r\n", "registered": "2014-02-22T00:18:13-13:00", "latitude": -38.656239, "longitude": -140.806325, "tags": [ "cupidatat", "cillum", "duis", "do", "velit", "anim", "laborum" ], "friends": [ { "id": 0, "name": "Bernice Jordan" }, { "id": 1, "name": "Logan Herman" }, { "id": 2, "name": "Jenny Mcmahon" } ], "greeting": "Hello, Amie Dickson! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24d329ce8ed9ef92e0", "index": 2208, "guid": "34cb7534-30bb-4578-bb18-899c47c3dbc1", "isActive": true, "balance": "$2,708.42", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Randi Frost", "gender": "female", "company": "ISONUS", "email": "randifrost@isonus.com", "phone": "+1 (936) 425-2035", "address": "315 Verona Street, Yorklyn, Wisconsin, 8387", "about": "Cillum do non aute exercitation est commodo cillum enim sunt cupidatat dolor. Quis exercitation veniam labore reprehenderit excepteur deserunt consequat sunt esse eu proident quis. Ullamco aliquip excepteur consequat voluptate quis voluptate eiusmod dolor duis aliqua duis. Culpa consequat consequat quis qui proident sunt nisi culpa do enim.\r\n", "registered": "2014-06-21T22:03:09-12:00", "latitude": 34.038991, "longitude": -127.99494, "tags": [ "qui", "commodo", "nulla", "tempor", "cupidatat", "voluptate", "amet" ], "friends": [ { "id": 0, "name": "Mcdonald Dale" }, { "id": 1, "name": "Horne Taylor" }, { "id": 2, "name": "Aisha Kirby" } ], "greeting": "Hello, Randi Frost! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24437d8156f7f39429", "index": 2209, "guid": "5e7c023c-8817-4c9c-b4af-e70e718703c4", "isActive": true, "balance": "$3,517.84", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Ellis Hale", "gender": "male", "company": "XSPORTS", "email": "ellishale@xsports.com", "phone": "+1 (881) 453-3474", "address": "824 Adler Place, Cascades, Maine, 5913", "about": "Sit commodo culpa quis fugiat eu anim sunt commodo. Deserunt ex consequat ipsum magna consequat veniam incididunt ipsum dolor aliquip consequat magna in. Qui velit consequat cillum esse qui sit consequat elit quis sunt fugiat occaecat. Veniam tempor exercitation minim incididunt consequat non ipsum voluptate incididunt occaecat reprehenderit mollit ea.\r\n", "registered": "2014-08-09T13:52:41-12:00", "latitude": -68.579183, "longitude": 100.352196, "tags": [ "anim", "minim", "Lorem", "culpa", "occaecat", "nulla", "amet" ], "friends": [ { "id": 0, "name": "Daniels Ballard" }, { "id": 1, "name": "Rodriguez Daugherty" }, { "id": 2, "name": "Viola Cobb" } ], "greeting": "Hello, Ellis Hale! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24d3b6d0634e9b52c5", "index": 2210, "guid": "e236561d-ccd9-42a6-a770-faf34fe43d08", "isActive": false, "balance": "$2,611.55", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Tamra Phillips", "gender": "female", "company": "ISOSURE", "email": "tamraphillips@isosure.com", "phone": "+1 (804) 453-2659", "address": "806 Lorraine Street, Edmund, Virginia, 6602", "about": "Quis duis excepteur ad ut ea sint ad. Ex ipsum Lorem occaecat consequat dolor deserunt. Cupidatat sit labore duis nostrud consequat irure irure duis ipsum.\r\n", "registered": "2014-01-01T21:56:20-13:00", "latitude": 69.113305, "longitude": 16.400926, "tags": [ "aliqua", "officia", "nisi", "reprehenderit", "culpa", "eu", "deserunt" ], "friends": [ { "id": 0, "name": "Jana Savage" }, { "id": 1, "name": "Valencia Maynard" }, { "id": 2, "name": "Knight Colon" } ], "greeting": "Hello, Tamra Phillips! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24b27744e85d267f29", "index": 2211, "guid": "4d5194cc-8924-4eae-8a39-ed7658459e05", "isActive": true, "balance": "$2,165.78", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Constance Pickett", "gender": "female", "company": "STRALUM", "email": "constancepickett@stralum.com", "phone": "+1 (993) 405-2658", "address": "902 Erskine Loop, Hayden, Kentucky, 8859", "about": "Officia veniam proident nisi nulla adipisicing eu nisi amet aliqua elit non eiusmod. Est consequat eu aute occaecat consequat voluptate sunt velit est. Ipsum consectetur sit minim voluptate minim minim anim magna. Reprehenderit ad sint veniam irure sint id incididunt fugiat eiusmod ea exercitation ex. Fugiat quis sit commodo consectetur esse culpa et laboris ipsum eiusmod.\r\n", "registered": "2014-01-28T17:36:09-13:00", "latitude": -46.283959, "longitude": 104.235398, "tags": [ "dolor", "aliqua", "sit", "duis", "officia", "proident", "culpa" ], "friends": [ { "id": 0, "name": "Camille Foley" }, { "id": 1, "name": "Christine Harding" }, { "id": 2, "name": "Warren Ball" } ], "greeting": "Hello, Constance Pickett! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea247e63caec6a160778", "index": 2212, "guid": "0cd755b4-4c83-4e26-81ae-1ee5c9571f22", "isActive": true, "balance": "$1,812.64", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Alma Walker", "gender": "female", "company": "EQUICOM", "email": "almawalker@equicom.com", "phone": "+1 (878) 452-2749", "address": "468 Roosevelt Place, Sanford, Connecticut, 5774", "about": "Et sit ea velit elit velit consectetur ullamco velit velit ex. Nisi et occaecat consectetur veniam ipsum fugiat reprehenderit. Cupidatat dolore ipsum veniam deserunt qui cillum. Minim adipisicing cupidatat sit labore ullamco id id non nostrud deserunt aliquip. Labore ullamco minim dolore esse do Lorem deserunt consequat elit qui proident consequat ea. Laborum veniam laboris esse proident ipsum deserunt consectetur non. Commodo consequat exercitation do labore nostrud cillum.\r\n", "registered": "2014-07-01T06:45:27-12:00", "latitude": -12.609733, "longitude": -60.782153, "tags": [ "consectetur", "Lorem", "culpa", "proident", "tempor", "velit", "nostrud" ], "friends": [ { "id": 0, "name": "Katheryn Ferguson" }, { "id": 1, "name": "Lorena Townsend" }, { "id": 2, "name": "Latasha Knight" } ], "greeting": "Hello, Alma Walker! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24d973bc57b16eb177", "index": 2213, "guid": "2e9a6433-568a-4979-83c6-0cfe1d03378e", "isActive": false, "balance": "$2,316.38", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Terra Reynolds", "gender": "female", "company": "ISBOL", "email": "terrareynolds@isbol.com", "phone": "+1 (873) 516-3632", "address": "634 Howard Place, Southview, Mississippi, 5947", "about": "Velit officia quis mollit occaecat et adipisicing eiusmod officia sint ut dolor. Ut incididunt laborum reprehenderit pariatur ullamco occaecat incididunt cupidatat aliquip non duis proident amet. Eiusmod ex reprehenderit nulla enim cupidatat enim elit cillum enim voluptate est non. Est duis mollit est cupidatat adipisicing dolor non magna irure dolore. Sit sint occaecat laboris laborum deserunt do magna excepteur aliqua in dolor sit cillum. Nulla non eu anim Lorem magna adipisicing voluptate Lorem ipsum. Velit deserunt sint qui ex ullamco Lorem occaecat aliqua sint reprehenderit.\r\n", "registered": "2014-07-30T21:02:37-12:00", "latitude": -81.6534, "longitude": -76.241554, "tags": [ "excepteur", "ullamco", "minim", "in", "dolore", "officia", "eiusmod" ], "friends": [ { "id": 0, "name": "Jarvis Dunn" }, { "id": 1, "name": "Battle Graham" }, { "id": 2, "name": "Cole Vincent" } ], "greeting": "Hello, Terra Reynolds! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24f707c40c29e5cc5d", "index": 2214, "guid": "3de43e2c-8dc0-4f7b-a54e-834357f9b8df", "isActive": false, "balance": "$1,855.86", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Gay Ellison", "gender": "male", "company": "EXERTA", "email": "gayellison@exerta.com", "phone": "+1 (852) 570-2030", "address": "509 Drew Street, Fontanelle, Washington, 7937", "about": "Tempor est fugiat ipsum veniam dolor ut fugiat nisi velit eu ad esse est. Non consequat ipsum consectetur cupidatat pariatur dolore Lorem fugiat elit minim. Non commodo pariatur in magna Lorem sunt officia nostrud esse cupidatat non ex.\r\n", "registered": "2014-09-14T08:52:55-12:00", "latitude": 70.502079, "longitude": 143.480668, "tags": [ "enim", "consequat", "dolore", "qui", "irure", "sint", "in" ], "friends": [ { "id": 0, "name": "French Armstrong" }, { "id": 1, "name": "Ashley Reid" }, { "id": 2, "name": "Olson Sears" } ], "greeting": "Hello, Gay Ellison! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2465ae157c50a4c3bf", "index": 2215, "guid": "a647d362-90be-4c07-8083-a9119b2d7daf", "isActive": false, "balance": "$3,360.77", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Ware Anthony", "gender": "male", "company": "ORBIXTAR", "email": "wareanthony@orbixtar.com", "phone": "+1 (954) 590-2293", "address": "196 Foster Avenue, Waukeenah, Tennessee, 9613", "about": "Cupidatat proident occaecat id eiusmod. Qui adipisicing ipsum sunt magna deserunt tempor. Veniam aliqua elit elit ea ipsum et irure ullamco voluptate sunt eu eiusmod. Deserunt velit labore id officia Lorem laborum. Excepteur aute ex ullamco occaecat qui exercitation officia officia tempor id. Amet dolor tempor laboris id sunt aliquip non irure reprehenderit proident nisi. Magna minim occaecat do veniam nostrud quis duis officia.\r\n", "registered": "2014-05-17T14:35:04-12:00", "latitude": -44.831166, "longitude": -35.40322, "tags": [ "irure", "in", "laborum", "labore", "sunt", "sunt", "reprehenderit" ], "friends": [ { "id": 0, "name": "Hobbs Myers" }, { "id": 1, "name": "Bond Raymond" }, { "id": 2, "name": "Angelina Golden" } ], "greeting": "Hello, Ware Anthony! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea247d5fb2c7e7ab5213", "index": 2216, "guid": "7dd4f131-e158-4b2d-98c5-672706d518ba", "isActive": true, "balance": "$3,994.37", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Janelle Roy", "gender": "female", "company": "BEADZZA", "email": "janelleroy@beadzza.com", "phone": "+1 (860) 499-3996", "address": "399 Devon Avenue, Coalmont, Alabama, 420", "about": "Exercitation occaecat anim velit magna occaecat aute culpa eiusmod pariatur. Et velit occaecat aliquip deserunt aute. Cupidatat velit tempor magna proident ex dolore fugiat irure aliquip sint cupidatat nostrud ex. Occaecat incididunt id occaecat et deserunt occaecat incididunt. Tempor dolore dolor fugiat esse esse excepteur enim dolore occaecat non.\r\n", "registered": "2014-03-04T03:50:29-13:00", "latitude": -67.885169, "longitude": 135.387402, "tags": [ "ex", "culpa", "sit", "incididunt", "enim", "mollit", "cupidatat" ], "friends": [ { "id": 0, "name": "Frazier Clemons" }, { "id": 1, "name": "Sweet England" }, { "id": 2, "name": "Hawkins Reyes" } ], "greeting": "Hello, Janelle Roy! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea247a1625c5e8e116ab", "index": 2217, "guid": "d9f469de-1de0-4fbe-83f3-fc8dfb19c7e9", "isActive": true, "balance": "$2,019.16", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Dorothea Shields", "gender": "female", "company": "MOREGANIC", "email": "dorotheashields@moreganic.com", "phone": "+1 (877) 517-2872", "address": "763 Jackson Street, Chloride, Ohio, 2542", "about": "Excepteur sit ea aliqua minim quis enim dolor occaecat incididunt ullamco id dolor. Laborum ipsum consectetur sint cupidatat eiusmod enim ipsum adipisicing cillum exercitation elit dolor excepteur ea. Anim do est nulla ad ipsum adipisicing magna sit aliquip.\r\n", "registered": "2014-03-30T23:59:49-13:00", "latitude": 46.616953, "longitude": 105.055933, "tags": [ "ut", "ullamco", "dolor", "consequat", "duis", "nostrud", "cillum" ], "friends": [ { "id": 0, "name": "Alexandra Tillman" }, { "id": 1, "name": "Mcleod Valentine" }, { "id": 2, "name": "Johnnie Edwards" } ], "greeting": "Hello, Dorothea Shields! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24ab9abc6502cc7235", "index": 2218, "guid": "787243c7-606b-4629-a97e-bfb64c732e59", "isActive": false, "balance": "$3,863.75", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Bessie Shelton", "gender": "female", "company": "SOFTMICRO", "email": "bessieshelton@softmicro.com", "phone": "+1 (820) 493-3658", "address": "562 Lawrence Street, Cotopaxi, Hawaii, 6654", "about": "Exercitation sit nisi consequat quis dolor nisi reprehenderit anim anim pariatur incididunt cillum sint cupidatat. Laboris aliquip elit cillum ut aliqua proident nulla commodo commodo labore mollit amet reprehenderit. Quis pariatur labore duis laborum Lorem adipisicing esse.\r\n", "registered": "2014-03-11T16:43:50-13:00", "latitude": -24.435141, "longitude": 135.838514, "tags": [ "esse", "quis", "nostrud", "tempor", "occaecat", "laboris", "et" ], "friends": [ { "id": 0, "name": "Alissa Soto" }, { "id": 1, "name": "Osborn Mccall" }, { "id": 2, "name": "Vivian Strong" } ], "greeting": "Hello, Bessie Shelton! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea245d13cdae18809b8a", "index": 2219, "guid": "adca6e82-ef36-41ff-ba13-b3501e33566f", "isActive": false, "balance": "$1,081.55", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Buchanan Brown", "gender": "male", "company": "EZENT", "email": "buchananbrown@ezent.com", "phone": "+1 (878) 465-3247", "address": "599 Gerritsen Avenue, Shepardsville, New Mexico, 7027", "about": "Esse sint adipisicing fugiat id ad veniam velit sint. Ea id consequat irure officia mollit. Fugiat aute deserunt deserunt aute dolor sint aute quis tempor laboris in. Minim culpa ullamco duis aliquip. Cupidatat officia amet anim excepteur amet ut laborum ea ut occaecat ipsum. Velit nisi culpa duis do ipsum ex nisi elit id.\r\n", "registered": "2014-03-29T19:26:01-13:00", "latitude": -56.850275, "longitude": -101.798615, "tags": [ "et", "non", "aliqua", "qui", "ut", "Lorem", "reprehenderit" ], "friends": [ { "id": 0, "name": "Cara Gregory" }, { "id": 1, "name": "Helene Mccoy" }, { "id": 2, "name": "Eva Mcconnell" } ], "greeting": "Hello, Buchanan Brown! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24b103def3b8f15ee1", "index": 2220, "guid": "1e74a31f-65c1-433e-844f-a40786a22b3c", "isActive": true, "balance": "$1,004.51", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Moss Collier", "gender": "male", "company": "EXOSWITCH", "email": "mosscollier@exoswitch.com", "phone": "+1 (837) 437-3864", "address": "133 Allen Avenue, Ruffin, Maryland, 7851", "about": "Eiusmod consectetur aliquip nulla culpa esse cillum dolore magna magna elit laborum ullamco. Quis sint non minim nostrud ad ex aliquip esse mollit Lorem esse consequat sit. Quis in aliqua excepteur esse ullamco velit pariatur.\r\n", "registered": "2014-07-16T03:33:47-12:00", "latitude": -79.159304, "longitude": -19.86463, "tags": [ "ad", "fugiat", "duis", "in", "nulla", "commodo", "excepteur" ], "friends": [ { "id": 0, "name": "Concepcion Baxter" }, { "id": 1, "name": "Betty Blake" }, { "id": 2, "name": "Priscilla Lancaster" } ], "greeting": "Hello, Moss Collier! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2450e054ede766f5e3", "index": 2221, "guid": "2bd02656-6cc0-4e91-8f65-145d1fa0de08", "isActive": true, "balance": "$3,795.22", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Jeanie Donovan", "gender": "female", "company": "VURBO", "email": "jeaniedonovan@vurbo.com", "phone": "+1 (939) 430-2749", "address": "442 Times Placez, Zortman, Alaska, 6105", "about": "Nisi enim labore adipisicing laboris elit cillum duis id eu magna esse ea. Minim tempor nisi esse eiusmod officia. Cupidatat nostrud amet do aute. Cupidatat voluptate culpa ut aliqua pariatur sint laboris. Eu tempor in laborum ad laborum consequat nulla deserunt consectetur. Reprehenderit ad fugiat deserunt laboris cillum ea. Consectetur eiusmod ut dolor ea incididunt laboris magna voluptate deserunt ipsum sunt pariatur proident.\r\n", "registered": "2014-05-15T00:27:41-12:00", "latitude": -73.957682, "longitude": -10.081129, "tags": [ "laborum", "irure", "nulla", "nulla", "ex", "non", "consequat" ], "friends": [ { "id": 0, "name": "Autumn Jenkins" }, { "id": 1, "name": "Monica Pate" }, { "id": 2, "name": "Laurie Velez" } ], "greeting": "Hello, Jeanie Donovan! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea241ae0ba997df1e61e", "index": 2222, "guid": "e27c1042-9c72-42a9-8e73-d5d5242eafd9", "isActive": true, "balance": "$1,991.07", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Villarreal Higgins", "gender": "male", "company": "NURPLEX", "email": "villarrealhiggins@nurplex.com", "phone": "+1 (994) 542-2275", "address": "624 Hendrickson Place, Reno, Arizona, 2990", "about": "Lorem do qui laboris aute. Adipisicing magna ea commodo sunt velit aliquip esse amet laborum duis non. Labore qui quis amet deserunt aliqua officia excepteur ullamco in aliqua officia tempor occaecat enim. Et proident officia consectetur cillum consequat sint culpa deserunt culpa et et et anim reprehenderit.\r\n", "registered": "2014-05-21T13:47:16-12:00", "latitude": 82.869475, "longitude": -164.871909, "tags": [ "sint", "magna", "exercitation", "culpa", "minim", "magna", "qui" ], "friends": [ { "id": 0, "name": "Rosalie Berry" }, { "id": 1, "name": "Weiss Peterson" }, { "id": 2, "name": "Barbra Solomon" } ], "greeting": "Hello, Villarreal Higgins! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24f47fedb5ad45df9d", "index": 2223, "guid": "19a26ee6-da8e-4e51-8e68-2c2961211ccf", "isActive": true, "balance": "$2,403.15", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Marguerite Nixon", "gender": "female", "company": "ICOLOGY", "email": "margueritenixon@icology.com", "phone": "+1 (999) 498-3779", "address": "429 Kent Street, Cowiche, Federated States Of Micronesia, 779", "about": "Cupidatat ullamco eu cillum incididunt consectetur occaecat elit tempor laborum culpa do velit. Exercitation do laboris cupidatat Lorem nulla laboris laboris minim velit nulla mollit qui aliquip. Qui sit id ullamco dolore consequat cillum anim nostrud quis esse pariatur aliqua eu sunt. Fugiat ipsum reprehenderit sint dolor nisi. Magna ullamco est qui deserunt commodo nostrud veniam in eu sunt exercitation.\r\n", "registered": "2014-03-25T06:27:06-13:00", "latitude": 70.630164, "longitude": 15.387495, "tags": [ "nulla", "deserunt", "sit", "in", "nisi", "incididunt", "sit" ], "friends": [ { "id": 0, "name": "Rowland Fulton" }, { "id": 1, "name": "Peggy Roberson" }, { "id": 2, "name": "Esmeralda Stuart" } ], "greeting": "Hello, Marguerite Nixon! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24497536760b0eb4b1", "index": 2224, "guid": "b1d75a0d-6b1d-485f-bfa1-459c187c3a96", "isActive": true, "balance": "$2,694.66", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Miranda Chambers", "gender": "female", "company": "SPHERIX", "email": "mirandachambers@spherix.com", "phone": "+1 (880) 482-3903", "address": "907 Montana Place, Campo, Oklahoma, 6875", "about": "Ea sunt nostrud occaecat dolor do consectetur voluptate dolor et. Adipisicing incididunt sint adipisicing Lorem aliqua. Ad ipsum ad velit laborum nulla quis do voluptate quis id ullamco.\r\n", "registered": "2014-05-29T13:11:04-12:00", "latitude": -12.222668, "longitude": 39.949208, "tags": [ "do", "nostrud", "eiusmod", "cillum", "minim", "deserunt", "amet" ], "friends": [ { "id": 0, "name": "Beryl Ellis" }, { "id": 1, "name": "Lois Lambert" }, { "id": 2, "name": "Scott Guerra" } ], "greeting": "Hello, Miranda Chambers! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24c0780d5a8ec492e8", "index": 2225, "guid": "92689d8b-6bc4-4e3f-9c7b-62efc9e3da5a", "isActive": false, "balance": "$2,246.94", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Cote Stevens", "gender": "male", "company": "DADABASE", "email": "cotestevens@dadabase.com", "phone": "+1 (810) 487-2993", "address": "127 Crown Street, Baker, Michigan, 8174", "about": "Duis reprehenderit tempor fugiat eiusmod consectetur quis laborum. Consectetur sunt consequat ipsum anim. Laboris eu id incididunt enim nostrud cupidatat laborum consectetur non consectetur ullamco excepteur id.\r\n", "registered": "2014-05-23T17:55:35-12:00", "latitude": -33.598112, "longitude": 107.156265, "tags": [ "laborum", "minim", "adipisicing", "reprehenderit", "aliquip", "officia", "amet" ], "friends": [ { "id": 0, "name": "Burgess Hunt" }, { "id": 1, "name": "Colon Guzman" }, { "id": 2, "name": "Sanders Hickman" } ], "greeting": "Hello, Cote Stevens! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea248373c0ee01163924", "index": 2226, "guid": "abb3e67a-eeaa-4e74-84ae-2093490807af", "isActive": true, "balance": "$2,593.62", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Hudson Cooley", "gender": "male", "company": "INFOTRIPS", "email": "hudsoncooley@infotrips.com", "phone": "+1 (928) 491-3816", "address": "171 Bond Street, Cumberland, Kansas, 7934", "about": "Dolore deserunt ipsum pariatur elit duis Lorem reprehenderit. Eiusmod excepteur nulla nulla sint Lorem. Eiusmod amet laboris amet reprehenderit. Amet sint nostrud ullamco dolor mollit ad commodo est ullamco. Ad amet tempor labore sit adipisicing dolore velit.\r\n", "registered": "2014-06-23T14:27:14-12:00", "latitude": 12.603542, "longitude": 153.38302, "tags": [ "veniam", "velit", "aliquip", "sunt", "veniam", "ut", "deserunt" ], "friends": [ { "id": 0, "name": "Lee Ortiz" }, { "id": 1, "name": "Curtis French" }, { "id": 2, "name": "Jennings Carver" } ], "greeting": "Hello, Hudson Cooley! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24df3fcdfec8f61bc8", "index": 2227, "guid": "42eab83d-c217-4ab4-8d9d-c2b8cf574796", "isActive": false, "balance": "$1,835.73", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Dana Hughes", "gender": "female", "company": "PODUNK", "email": "danahughes@podunk.com", "phone": "+1 (817) 458-2895", "address": "674 Bergen Place, Vienna, South Dakota, 5138", "about": "Mollit ad proident eiusmod laboris cillum in et amet magna laborum esse. Sit nisi fugiat enim in nisi proident. Ipsum dolore duis esse non dolore commodo nulla sint aliquip.\r\n", "registered": "2014-02-26T16:13:19-13:00", "latitude": 34.778444, "longitude": -170.247731, "tags": [ "aute", "adipisicing", "sit", "anim", "occaecat", "officia", "minim" ], "friends": [ { "id": 0, "name": "Mclaughlin Acosta" }, { "id": 1, "name": "Phoebe Christian" }, { "id": 2, "name": "Margie Powers" } ], "greeting": "Hello, Dana Hughes! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24254b3a417ea3ac70", "index": 2228, "guid": "90127e6c-3590-49a4-8e33-67866f586eb3", "isActive": false, "balance": "$2,739.94", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Kasey Oliver", "gender": "female", "company": "STROZEN", "email": "kaseyoliver@strozen.com", "phone": "+1 (965) 473-2791", "address": "736 Dumont Avenue, Heil, West Virginia, 6663", "about": "Deserunt pariatur culpa aute Lorem id ex sit voluptate non. Consectetur reprehenderit cupidatat et excepteur consectetur sunt dolor duis in cupidatat. Commodo consequat officia minim incididunt. Laboris velit anim ipsum ad. Sit excepteur enim esse ipsum Lorem minim voluptate veniam officia ut sunt.\r\n", "registered": "2014-08-14T17:53:03-12:00", "latitude": 51.225711, "longitude": 108.644915, "tags": [ "ea", "labore", "elit", "in", "consectetur", "dolore", "enim" ], "friends": [ { "id": 0, "name": "Tia Douglas" }, { "id": 1, "name": "Mcbride Brewer" }, { "id": 2, "name": "Cooper Walsh" } ], "greeting": "Hello, Kasey Oliver! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24997f0375fc7c4b5c", "index": 2229, "guid": "3cdda6ce-d97d-40c5-9171-ddca0527b937", "isActive": false, "balance": "$1,678.99", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Wolfe Herring", "gender": "male", "company": "GEOSTELE", "email": "wolfeherring@geostele.com", "phone": "+1 (887) 511-2758", "address": "726 Grove Place, Flintville, Texas, 2585", "about": "Mollit amet ipsum duis laborum. Mollit pariatur commodo aute nostrud sint. Irure ut in ad sit dolore ipsum laborum voluptate exercitation commodo.\r\n", "registered": "2014-05-03T17:54:21-12:00", "latitude": 49.475759, "longitude": -150.155468, "tags": [ "amet", "officia", "id", "amet", "est", "eu", "labore" ], "friends": [ { "id": 0, "name": "Tillman Chaney" }, { "id": 1, "name": "Gordon Hunter" }, { "id": 2, "name": "Howell Cantrell" } ], "greeting": "Hello, Wolfe Herring! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2405daf962ce710e58", "index": 2230, "guid": "ad38f0e8-0587-4cfa-a4bd-c15ee782e672", "isActive": true, "balance": "$2,712.91", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Mercedes Monroe", "gender": "female", "company": "MOLTONIC", "email": "mercedesmonroe@moltonic.com", "phone": "+1 (892) 577-2751", "address": "338 Jackson Place, Dotsero, Oregon, 539", "about": "Irure pariatur ea qui cupidatat adipisicing. Minim irure aute consectetur deserunt. Eu nulla adipisicing et duis quis proident sint officia pariatur in esse ipsum cillum. Pariatur sint sit excepteur nostrud velit minim. Aliqua qui esse in culpa ea ad ex voluptate officia. Do et nisi esse non amet adipisicing officia aute.\r\n", "registered": "2014-04-17T06:06:00-12:00", "latitude": 2.291481, "longitude": -125.768862, "tags": [ "nisi", "ipsum", "quis", "commodo", "quis", "culpa", "in" ], "friends": [ { "id": 0, "name": "Kemp Harper" }, { "id": 1, "name": "Francis Stout" }, { "id": 2, "name": "Hoover Glenn" } ], "greeting": "Hello, Mercedes Monroe! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24eee078173e59995e", "index": 2231, "guid": "44004fdb-b4ee-4102-b8f8-a1ae97d92715", "isActive": true, "balance": "$1,277.26", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Alyce Goff", "gender": "female", "company": "NIKUDA", "email": "alycegoff@nikuda.com", "phone": "+1 (855) 502-3169", "address": "185 Hemlock Street, Yettem, Nevada, 5856", "about": "Occaecat aute eiusmod aute consequat incididunt ex sit id nulla magna id. Voluptate sit qui elit laboris ea nisi sint adipisicing do et proident. Velit ullamco eu occaecat nostrud quis sint cillum sunt. Amet fugiat non mollit pariatur irure veniam est adipisicing quis incididunt. Labore in minim laborum ex ad sit. Velit dolore officia ullamco dolore mollit.\r\n", "registered": "2014-09-20T23:40:32-12:00", "latitude": 89.942921, "longitude": -28.542378, "tags": [ "ad", "occaecat", "non", "aute", "occaecat", "commodo", "anim" ], "friends": [ { "id": 0, "name": "Crystal Cannon" }, { "id": 1, "name": "Clark Buchanan" }, { "id": 2, "name": "Ericka Trujillo" } ], "greeting": "Hello, Alyce Goff! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2422878978078decf5", "index": 2232, "guid": "aa019851-a72b-4ac7-9e1f-3ed548811add", "isActive": true, "balance": "$1,672.61", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Merrill Pittman", "gender": "male", "company": "AVIT", "email": "merrillpittman@avit.com", "phone": "+1 (829) 497-2925", "address": "712 Clay Street, Bowie, Minnesota, 3232", "about": "Occaecat aliquip sunt exercitation reprehenderit consectetur. Voluptate id velit ullamco nulla dolor anim excepteur sunt consectetur commodo adipisicing irure laborum. Eu cupidatat aliquip aliquip irure irure nostrud occaecat anim incididunt consequat. Culpa officia commodo reprehenderit veniam exercitation labore adipisicing deserunt. Commodo occaecat velit consequat Lorem sunt irure mollit elit laboris ex sint incididunt ex adipisicing.\r\n", "registered": "2014-06-05T13:14:47-12:00", "latitude": 87.668839, "longitude": -20.940297, "tags": [ "Lorem", "pariatur", "culpa", "pariatur", "qui", "laborum", "excepteur" ], "friends": [ { "id": 0, "name": "Harrell Crane" }, { "id": 1, "name": "Nguyen Pruitt" }, { "id": 2, "name": "Shannon Holmes" } ], "greeting": "Hello, Merrill Pittman! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2430391cba353f9fcd", "index": 2233, "guid": "d2729aa0-d9e8-4b02-8a79-ffc8a7eb1350", "isActive": true, "balance": "$3,798.19", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Carole Bryant", "gender": "female", "company": "COMVENE", "email": "carolebryant@comvene.com", "phone": "+1 (876) 423-3617", "address": "917 Flatbush Avenue, Johnsonburg, Missouri, 5364", "about": "Officia enim eiusmod reprehenderit cupidatat pariatur dolore consequat laboris. Excepteur minim aliqua sunt Lorem qui officia ullamco deserunt nostrud aliquip fugiat velit. Qui eiusmod non adipisicing aliquip. Esse excepteur ut et laborum proident duis aliquip ex nulla irure esse. Sunt reprehenderit ipsum deserunt dolor. Esse minim proident nulla mollit aliqua non tempor in culpa non incididunt duis.\r\n", "registered": "2014-09-04T09:16:27-12:00", "latitude": -70.331407, "longitude": 149.840434, "tags": [ "ad", "tempor", "magna", "dolore", "excepteur", "ad", "culpa" ], "friends": [ { "id": 0, "name": "Hilda Cummings" }, { "id": 1, "name": "Bates Gilmore" }, { "id": 2, "name": "Guzman Powell" } ], "greeting": "Hello, Carole Bryant! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea245fe006907550279f", "index": 2234, "guid": "22d04f0d-56f1-41b5-9d54-21e7ff145aa8", "isActive": false, "balance": "$2,846.93", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Mcfadden Silva", "gender": "male", "company": "OPTYK", "email": "mcfaddensilva@optyk.com", "phone": "+1 (874) 533-2512", "address": "215 Fanchon Place, Eden, Rhode Island, 5132", "about": "Occaecat quis qui deserunt laborum tempor est commodo cupidatat est. Nisi nostrud voluptate in adipisicing fugiat ea nulla officia laborum. Ullamco nostrud et Lorem cupidatat reprehenderit in eu excepteur.\r\n", "registered": "2014-05-25T12:16:41-12:00", "latitude": 15.799081, "longitude": -19.260301, "tags": [ "quis", "minim", "voluptate", "reprehenderit", "id", "ut", "culpa" ], "friends": [ { "id": 0, "name": "Wilda Wong" }, { "id": 1, "name": "Vonda Hood" }, { "id": 2, "name": "Valerie Herrera" } ], "greeting": "Hello, Mcfadden Silva! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24f5c9954224dc1922", "index": 2235, "guid": "1754d29f-a542-4cd6-b00d-6fe9d767c01a", "isActive": false, "balance": "$3,501.47", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Marta Hanson", "gender": "female", "company": "HAIRPORT", "email": "martahanson@hairport.com", "phone": "+1 (858) 556-3156", "address": "763 Dooley Street, Waumandee, Florida, 2351", "about": "Cillum elit consequat sunt qui reprehenderit amet in veniam in et reprehenderit commodo consequat ex. Velit officia commodo proident duis ullamco reprehenderit adipisicing duis. Fugiat fugiat ipsum enim sit cupidatat ullamco velit ipsum deserunt aliqua enim. Veniam sunt ut eu voluptate veniam labore culpa laboris cupidatat eu non amet.\r\n", "registered": "2014-01-25T17:54:23-13:00", "latitude": 33.025116, "longitude": -142.571572, "tags": [ "qui", "nulla", "minim", "dolore", "dolore", "aute", "dolore" ], "friends": [ { "id": 0, "name": "Molly Hammond" }, { "id": 1, "name": "Kirby Burnett" }, { "id": 2, "name": "Doyle Barr" } ], "greeting": "Hello, Marta Hanson! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24eaf2fbeedefd0a42", "index": 2236, "guid": "c0575128-f710-497b-abb8-104e3b7bb20f", "isActive": false, "balance": "$3,360.89", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Hill Bradley", "gender": "male", "company": "TRI@TRIBALOG", "email": "hillbradley@tri@tribalog.com", "phone": "+1 (931) 578-2776", "address": "452 Huron Street, Carlos, North Carolina, 4735", "about": "Do ea nulla anim eiusmod Lorem ullamco Lorem laboris irure reprehenderit. Pariatur fugiat esse cillum eiusmod ullamco mollit adipisicing. Nisi adipisicing irure elit ex laboris laborum. Laboris Lorem quis in amet ipsum. Laborum proident ullamco ad adipisicing nulla consequat.\r\n", "registered": "2014-03-12T11:21:22-13:00", "latitude": 61.323562, "longitude": 134.676443, "tags": [ "minim", "culpa", "Lorem", "commodo", "ad", "nulla", "sunt" ], "friends": [ { "id": 0, "name": "Franklin Howard" }, { "id": 1, "name": "Noreen Webster" }, { "id": 2, "name": "Dickson Weber" } ], "greeting": "Hello, Hill Bradley! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2482ccd87f9569040a", "index": 2237, "guid": "01e04539-5067-4350-95a5-992ca4ffc9ca", "isActive": true, "balance": "$2,271.95", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Dale Faulkner", "gender": "female", "company": "ISOLOGIX", "email": "dalefaulkner@isologix.com", "phone": "+1 (963) 555-2546", "address": "436 Tennis Court, Edgewater, New Hampshire, 3343", "about": "Enim laborum mollit dolor ipsum dolor consequat amet ullamco ullamco amet in excepteur. Amet velit non ea pariatur duis. Commodo pariatur ipsum laborum cillum sunt voluptate aute duis aliqua dolore. Amet incididunt incididunt incididunt exercitation non ipsum occaecat labore id sit veniam quis. Quis cupidatat adipisicing officia dolor. Mollit tempor proident laborum nostrud aute laboris reprehenderit amet duis ad aliqua commodo reprehenderit.\r\n", "registered": "2014-03-24T10:22:46-13:00", "latitude": 11.028137, "longitude": -156.861378, "tags": [ "irure", "non", "reprehenderit", "amet", "ut", "minim", "officia" ], "friends": [ { "id": 0, "name": "Morse Richardson" }, { "id": 1, "name": "Vicky Hess" }, { "id": 2, "name": "Faye Olson" } ], "greeting": "Hello, Dale Faulkner! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24e35a0e9b921dc638", "index": 2238, "guid": "fc4bc54c-8fd0-4e86-b0fa-fe783116140b", "isActive": true, "balance": "$1,023.24", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Snider Ferrell", "gender": "male", "company": "TOURMANIA", "email": "sniderferrell@tourmania.com", "phone": "+1 (976) 457-3314", "address": "207 Chase Court, Kent, Arkansas, 855", "about": "Laborum ut nisi Lorem velit dolore adipisicing aute ipsum voluptate fugiat. Dolor dolore est aliqua voluptate ullamco quis qui. Laborum do aliquip est quis culpa dolore laboris adipisicing anim ut ipsum officia dolor.\r\n", "registered": "2014-01-07T15:53:37-13:00", "latitude": -58.243629, "longitude": 96.617167, "tags": [ "in", "eiusmod", "quis", "ipsum", "commodo", "sint", "non" ], "friends": [ { "id": 0, "name": "Stacey Blevins" }, { "id": 1, "name": "Graciela Andrews" }, { "id": 2, "name": "Washington Campos" } ], "greeting": "Hello, Snider Ferrell! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24b95733c900caf946", "index": 2239, "guid": "0d00e1cd-324c-44d4-89b7-6eb74a3e7b1b", "isActive": true, "balance": "$2,293.84", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Erickson Dean", "gender": "male", "company": "CALCU", "email": "ericksondean@calcu.com", "phone": "+1 (820) 494-3622", "address": "449 Wortman Avenue, Vivian, Iowa, 5285", "about": "Aliquip consectetur consectetur irure nisi dolore ullamco et. Elit laborum nulla qui eiusmod cupidatat magna eu voluptate adipisicing et fugiat mollit deserunt. Aliquip ullamco ea consequat nisi consectetur esse proident deserunt.\r\n", "registered": "2014-04-17T07:43:44-12:00", "latitude": -39.265736, "longitude": -83.877878, "tags": [ "ut", "Lorem", "eu", "sunt", "sit", "elit", "adipisicing" ], "friends": [ { "id": 0, "name": "Lindsay Cotton" }, { "id": 1, "name": "Edwina Winters" }, { "id": 2, "name": "Susie Payne" } ], "greeting": "Hello, Erickson Dean! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24aa145371073d4607", "index": 2240, "guid": "79afbc21-413b-4a79-944b-0c037ff63c59", "isActive": false, "balance": "$3,817.23", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Lucy Puckett", "gender": "female", "company": "METROZ", "email": "lucypuckett@metroz.com", "phone": "+1 (971) 482-3716", "address": "779 Turnbull Avenue, Brule, Nebraska, 3057", "about": "Ad nisi voluptate in do non deserunt voluptate in excepteur et. Occaecat occaecat cupidatat commodo dolore fugiat cillum aute magna. Aute aliquip dolore consequat minim nisi commodo.\r\n", "registered": "2014-07-14T20:41:10-12:00", "latitude": -0.722966, "longitude": -145.783345, "tags": [ "minim", "occaecat", "amet", "ut", "velit", "ea", "veniam" ], "friends": [ { "id": 0, "name": "Nixon Finley" }, { "id": 1, "name": "Shana Conrad" }, { "id": 2, "name": "Nadine Allison" } ], "greeting": "Hello, Lucy Puckett! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2436c8f1002078bd08", "index": 2241, "guid": "6bf4f0b5-a19e-479f-884d-64357c021a81", "isActive": true, "balance": "$1,914.11", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Deidre Dennis", "gender": "female", "company": "XANIDE", "email": "deidredennis@xanide.com", "phone": "+1 (895) 521-3425", "address": "966 Albany Avenue, Torboy, District Of Columbia, 3550", "about": "Nostrud nostrud voluptate Lorem mollit laboris occaecat. Lorem dolor est ullamco eu pariatur amet. Sunt elit exercitation sit enim eu nostrud.\r\n", "registered": "2014-08-25T22:40:32-12:00", "latitude": 62.44145, "longitude": 10.859181, "tags": [ "nisi", "cupidatat", "est", "in", "dolor", "minim", "ut" ], "friends": [ { "id": 0, "name": "Lamb Bright" }, { "id": 1, "name": "Mavis Freeman" }, { "id": 2, "name": "Avery Vargas" } ], "greeting": "Hello, Deidre Dennis! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24a6362c60bb318185", "index": 2242, "guid": "95b69885-9c98-45f9-a7ba-f955c6a11406", "isActive": false, "balance": "$3,458.66", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Page Fuentes", "gender": "male", "company": "BUZZNESS", "email": "pagefuentes@buzzness.com", "phone": "+1 (995) 477-3071", "address": "678 Farragut Place, Elizaville, New Jersey, 9796", "about": "Velit velit minim consectetur dolore. Id nisi occaecat aliqua ipsum quis officia occaecat consectetur aute. Incididunt sint fugiat tempor anim elit minim. Amet cillum nulla nisi pariatur incididunt aliqua sit ea pariatur laborum tempor elit aute labore. Fugiat enim reprehenderit consequat velit quis. Sit esse pariatur officia incididunt sunt minim pariatur aliquip.\r\n", "registered": "2014-05-27T04:40:48-12:00", "latitude": -4.975543, "longitude": -27.130031, "tags": [ "incididunt", "non", "sit", "do", "consequat", "aliquip", "qui" ], "friends": [ { "id": 0, "name": "Karin Giles" }, { "id": 1, "name": "Ray Singleton" }, { "id": 2, "name": "Marquita Farmer" } ], "greeting": "Hello, Page Fuentes! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24d45e05066349e29c", "index": 2243, "guid": "7274e72a-483a-4740-9f22-65be949ebc6d", "isActive": false, "balance": "$1,001.65", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Newman Lewis", "gender": "male", "company": "VERTIDE", "email": "newmanlewis@vertide.com", "phone": "+1 (930) 553-2766", "address": "280 Temple Court, Bridgetown, Palau, 7291", "about": "Minim exercitation et do consequat adipisicing dolore incididunt ex. Sit in consequat eiusmod est consectetur proident. Aliquip reprehenderit voluptate proident do.\r\n", "registered": "2014-01-30T06:23:01-13:00", "latitude": 21.182895, "longitude": 115.29195, "tags": [ "Lorem", "irure", "dolor", "amet", "labore", "occaecat", "aliquip" ], "friends": [ { "id": 0, "name": "Sherman Castaneda" }, { "id": 1, "name": "Fuentes Burgess" }, { "id": 2, "name": "Johnston Brooks" } ], "greeting": "Hello, Newman Lewis! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea241fab462a64159ff1", "index": 2244, "guid": "6380cc04-3e63-4493-a6ab-e7b2a7decd9e", "isActive": true, "balance": "$1,567.35", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Samantha Boyer", "gender": "female", "company": "CALLFLEX", "email": "samanthaboyer@callflex.com", "phone": "+1 (850) 488-3284", "address": "775 Wyona Street, Oley, Puerto Rico, 5000", "about": "Sint reprehenderit qui labore ipsum enim ex elit non mollit consectetur irure est voluptate. Occaecat deserunt irure proident do adipisicing dolor. Qui eu ex non consequat. Id cillum consectetur elit enim proident magna. Et eiusmod non eiusmod qui aliqua. Magna eu cillum sint do magna dolor anim eiusmod. Fugiat in voluptate labore qui anim laborum cupidatat veniam mollit tempor.\r\n", "registered": "2014-02-24T11:15:31-13:00", "latitude": -44.629734, "longitude": 61.040566, "tags": [ "sint", "non", "ad", "aliquip", "in", "ea", "elit" ], "friends": [ { "id": 0, "name": "Delores Cortez" }, { "id": 1, "name": "Maribel Beck" }, { "id": 2, "name": "Rosario Hurley" } ], "greeting": "Hello, Samantha Boyer! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2434515ddbc62d77fd", "index": 2245, "guid": "0119772b-f519-4f77-b960-b6cb9219b333", "isActive": true, "balance": "$1,079.23", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Gayle Macias", "gender": "female", "company": "ENOMEN", "email": "gaylemacias@enomen.com", "phone": "+1 (877) 563-2872", "address": "743 Madoc Avenue, Crenshaw, California, 3899", "about": "Enim laboris adipisicing commodo consequat qui eu exercitation minim. Et dolor et do est ad labore ea labore excepteur eiusmod labore dolore laboris cupidatat. Enim veniam elit adipisicing ullamco incididunt ipsum irure labore incididunt occaecat. Consectetur adipisicing aliquip amet consequat pariatur in magna aliquip fugiat. Dolore adipisicing deserunt veniam labore voluptate exercitation dolore quis commodo exercitation consequat reprehenderit. Ut adipisicing duis pariatur ut amet consectetur laborum irure eiusmod reprehenderit ad eu minim pariatur.\r\n", "registered": "2014-06-24T22:13:29-12:00", "latitude": 35.802335, "longitude": -125.085153, "tags": [ "eiusmod", "nisi", "id", "est", "incididunt", "magna", "aliqua" ], "friends": [ { "id": 0, "name": "Karina Buckner" }, { "id": 1, "name": "Guadalupe Cooke" }, { "id": 2, "name": "Lourdes Garrett" } ], "greeting": "Hello, Gayle Macias! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24dab844ed5faa53d8", "index": 2246, "guid": "2111e872-4d33-40c5-b56b-af730b6e32da", "isActive": true, "balance": "$1,000.11", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Kellie Mcleod", "gender": "female", "company": "EVENTAGE", "email": "kelliemcleod@eventage.com", "phone": "+1 (872) 542-3078", "address": "520 Navy Street, Valle, Vermont, 9198", "about": "Tempor enim magna dolore cillum consectetur adipisicing irure minim aliquip ad. Proident in laborum et consectetur sunt aliqua velit occaecat adipisicing ipsum est. Consectetur cupidatat aliqua qui velit qui sint ex deserunt ut consequat elit eu eiusmod.\r\n", "registered": "2014-08-06T17:06:03-12:00", "latitude": 88.911631, "longitude": 12.758939, "tags": [ "cupidatat", "in", "commodo", "duis", "proident", "reprehenderit", "culpa" ], "friends": [ { "id": 0, "name": "Shepard Mcgee" }, { "id": 1, "name": "Elaine Horne" }, { "id": 2, "name": "Boyle Kinney" } ], "greeting": "Hello, Kellie Mcleod! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea241d43205bd800d8d5", "index": 2247, "guid": "f1f84881-b5d3-4ab2-902f-c3481ac3746c", "isActive": false, "balance": "$1,009.49", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Browning Witt", "gender": "male", "company": "IDETICA", "email": "browningwitt@idetica.com", "phone": "+1 (929) 430-2999", "address": "657 Cumberland Walk, Jacksonwald, Indiana, 700", "about": "Magna esse deserunt sint eiusmod aliquip tempor aliqua. Id in officia reprehenderit velit voluptate ea consequat velit exercitation culpa aliquip. Consequat nostrud minim eiusmod nulla excepteur. Dolor sunt proident dolore esse mollit laboris elit proident. Consequat consequat mollit fugiat eu ipsum ad occaecat ex veniam adipisicing id cupidatat voluptate nisi. Non tempor aliqua ex mollit duis reprehenderit in culpa proident anim consectetur laborum aliquip. Voluptate consectetur elit occaecat tempor officia voluptate labore.\r\n", "registered": "2014-06-09T22:52:45-12:00", "latitude": 29.642126, "longitude": 84.570179, "tags": [ "culpa", "excepteur", "voluptate", "anim", "pariatur", "occaecat", "nostrud" ], "friends": [ { "id": 0, "name": "Pena Perkins" }, { "id": 1, "name": "Barr Merrill" }, { "id": 2, "name": "Bradshaw Cherry" } ], "greeting": "Hello, Browning Witt! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea247972869b4bd2dbeb", "index": 2248, "guid": "57c1743a-014b-4367-a9ae-d434730f75df", "isActive": false, "balance": "$1,396.55", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "James Lucas", "gender": "male", "company": "SLAMBDA", "email": "jameslucas@slambda.com", "phone": "+1 (915) 588-3523", "address": "216 Luquer Street, Walton, Illinois, 3184", "about": "Irure elit est est id amet eiusmod ex amet. Anim ex nulla dolore commodo esse et adipisicing commodo commodo consequat nisi aute pariatur. Eiusmod nulla aliquip tempor sit nisi sint minim enim exercitation ex laboris do culpa occaecat. Aliquip est cillum incididunt nostrud duis aliqua veniam cillum commodo duis velit nisi aliqua veniam. Laborum velit laborum et ea id magna qui eiusmod sunt.\r\n", "registered": "2014-05-22T01:32:20-12:00", "latitude": 38.168115, "longitude": -113.638821, "tags": [ "et", "pariatur", "ex", "laborum", "quis", "in", "do" ], "friends": [ { "id": 0, "name": "Oliver Hancock" }, { "id": 1, "name": "Henrietta Wilkerson" }, { "id": 2, "name": "Ayers Zamora" } ], "greeting": "Hello, James Lucas! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2439a89fd251bbf9bf", "index": 2249, "guid": "94815b34-7776-4f61-a8b0-5c6a24037128", "isActive": true, "balance": "$2,269.31", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Burks Mack", "gender": "male", "company": "INVENTURE", "email": "burksmack@inventure.com", "phone": "+1 (830) 408-3726", "address": "551 Stillwell Avenue, Westboro, South Carolina, 560", "about": "Reprehenderit fugiat incididunt amet elit fugiat. Sit nostrud qui culpa tempor eu eu sit in. Esse adipisicing minim exercitation cillum. Non est sunt proident cupidatat aliquip officia deserunt ullamco ut nulla. Laborum proident sunt nisi amet sunt. Ut reprehenderit culpa culpa adipisicing laboris cupidatat eu consequat et.\r\n", "registered": "2014-02-10T01:08:31-13:00", "latitude": -30.43908, "longitude": -58.58046, "tags": [ "ut", "cupidatat", "reprehenderit", "ullamco", "sunt", "commodo", "aute" ], "friends": [ { "id": 0, "name": "Hatfield Oneill" }, { "id": 1, "name": "Russo Lawson" }, { "id": 2, "name": "Hester Thomas" } ], "greeting": "Hello, Burks Mack! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2490cd42a59e1d4a61", "index": 2250, "guid": "ab510077-e2b1-49c4-931f-466bccea289e", "isActive": true, "balance": "$1,037.50", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Leanna Stein", "gender": "female", "company": "ACCUPRINT", "email": "leannastein@accuprint.com", "phone": "+1 (900) 593-3884", "address": "540 Strauss Street, Delco, American Samoa, 670", "about": "Commodo ipsum elit ut do id minim dolor ad anim sit do. Deserunt anim ut nulla et aliquip duis aliqua. Enim veniam est nostrud consectetur sint reprehenderit tempor eiusmod sit culpa ullamco. Et id adipisicing tempor sit dolor eiusmod magna et mollit ipsum. Cupidatat culpa exercitation voluptate officia reprehenderit labore labore quis eu anim mollit culpa do. Sint exercitation sint officia id deserunt eu ex irure adipisicing.\r\n", "registered": "2014-01-16T11:12:41-13:00", "latitude": 39.734009, "longitude": 173.550058, "tags": [ "laboris", "sunt", "voluptate", "consequat", "dolor", "do", "quis" ], "friends": [ { "id": 0, "name": "Mejia Jacobs" }, { "id": 1, "name": "Gonzalez Malone" }, { "id": 2, "name": "Chan Lynch" } ], "greeting": "Hello, Leanna Stein! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24e9edcbb4772f0526", "index": 2251, "guid": "d9948042-0e43-4566-a905-7cb06dbb8d4f", "isActive": true, "balance": "$2,832.17", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Bianca Hendrix", "gender": "female", "company": "EWAVES", "email": "biancahendrix@ewaves.com", "phone": "+1 (804) 457-3409", "address": "188 Chapel Street, Garberville, Delaware, 7575", "about": "Ea commodo quis proident ipsum magna duis et qui eiusmod Lorem culpa amet. Elit enim proident occaecat ut. Excepteur laboris id in elit ullamco nostrud. Mollit aute anim laborum minim duis occaecat ipsum magna elit. Esse nostrud est nostrud adipisicing nostrud elit elit in deserunt amet. Nulla et culpa duis voluptate aliquip Lorem enim adipisicing occaecat eu anim consectetur.\r\n", "registered": "2014-04-01T01:40:06-13:00", "latitude": -18.793362, "longitude": 37.042346, "tags": [ "nostrud", "aute", "proident", "minim", "tempor", "est", "incididunt" ], "friends": [ { "id": 0, "name": "Bridget Meyer" }, { "id": 1, "name": "Buckner Walton" }, { "id": 2, "name": "Bobbi Stanley" } ], "greeting": "Hello, Bianca Hendrix! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24f7e0ffd2705d067e", "index": 2252, "guid": "53cb8655-8b45-4166-a8a4-3eebbb9c5fc5", "isActive": false, "balance": "$1,512.31", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Evangelina Collins", "gender": "female", "company": "PURIA", "email": "evangelinacollins@puria.com", "phone": "+1 (950) 430-2322", "address": "272 Autumn Avenue, Gambrills, Pennsylvania, 6816", "about": "Elit incididunt cupidatat id elit ex aliquip officia labore Lorem minim et cupidatat. Voluptate ex sint qui sint commodo dolore ex. Commodo aliqua quis consequat labore Lorem sit. Est irure adipisicing ullamco commodo. Quis sint velit eiusmod quis culpa aliqua non do elit exercitation voluptate. Qui velit amet qui laboris occaecat pariatur sint amet quis.\r\n", "registered": "2014-07-12T01:54:35-12:00", "latitude": -15.045575, "longitude": -70.360364, "tags": [ "consequat", "ullamco", "fugiat", "do", "exercitation", "ipsum", "laboris" ], "friends": [ { "id": 0, "name": "Sara Sosa" }, { "id": 1, "name": "Marietta Sampson" }, { "id": 2, "name": "Carroll Cain" } ], "greeting": "Hello, Evangelina Collins! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea249a5bcb2a02226dcb", "index": 2253, "guid": "8e34ec08-124f-4aad-9a84-d47a3b5b8605", "isActive": false, "balance": "$2,248.85", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Byrd Sawyer", "gender": "male", "company": "CIRCUM", "email": "byrdsawyer@circum.com", "phone": "+1 (941) 404-3038", "address": "366 Exeter Street, Tryon, Georgia, 6288", "about": "Lorem cupidatat cupidatat consectetur mollit sint ut. Occaecat irure pariatur laboris laboris. Aute excepteur aliquip consectetur dolor Lorem non tempor. Voluptate nulla labore sint quis in eu pariatur excepteur reprehenderit exercitation ex. Ut Lorem ut ad exercitation do ad aliquip ad occaecat.\r\n", "registered": "2014-03-15T20:59:55-13:00", "latitude": 78.540732, "longitude": 16.412621, "tags": [ "laborum", "id", "enim", "proident", "culpa", "aute", "eiusmod" ], "friends": [ { "id": 0, "name": "Ellison Wilder" }, { "id": 1, "name": "Christy Mccray" }, { "id": 2, "name": "Faulkner Sanford" } ], "greeting": "Hello, Byrd Sawyer! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24ee309fe2840b9308", "index": 2254, "guid": "dadfe0b9-e30d-46b5-941b-ce4556ea49eb", "isActive": false, "balance": "$3,645.53", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Madeleine Cardenas", "gender": "female", "company": "ENTROFLEX", "email": "madeleinecardenas@entroflex.com", "phone": "+1 (880) 591-3189", "address": "673 Prospect Avenue, Dodge, North Dakota, 710", "about": "Deserunt non dolore eu tempor minim esse amet adipisicing elit aliquip aliquip do laborum. Velit ipsum commodo in do. Dolor Lorem pariatur ex ut incididunt irure sint id consectetur occaecat.\r\n", "registered": "2014-01-31T07:16:36-13:00", "latitude": -65.183213, "longitude": -106.08856, "tags": [ "Lorem", "deserunt", "anim", "eiusmod", "nostrud", "id", "anim" ], "friends": [ { "id": 0, "name": "Farmer Morrow" }, { "id": 1, "name": "Morgan Livingston" }, { "id": 2, "name": "Davis Hamilton" } ], "greeting": "Hello, Madeleine Cardenas! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24058efa5c2ab33706", "index": 2255, "guid": "4dbf6b8d-fb9e-44b7-96d2-bee8f6537360", "isActive": false, "balance": "$3,350.04", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Chrystal Shepherd", "gender": "female", "company": "CORPORANA", "email": "chrystalshepherd@corporana.com", "phone": "+1 (987) 438-2583", "address": "395 Boardwalk , Oceola, Louisiana, 2814", "about": "Mollit sit esse officia culpa eiusmod duis officia dolore. Ad occaecat proident magna sit laboris ullamco excepteur occaecat voluptate et laborum eu deserunt dolor. Culpa ut qui tempor dolor. Aliqua culpa consectetur pariatur ex adipisicing ut est officia. Consequat amet non enim aliquip nostrud commodo deserunt sint ipsum enim tempor. Ut eiusmod consectetur non aliqua ad do ipsum commodo excepteur incididunt. Labore aliqua consectetur magna et tempor eu mollit mollit esse exercitation eiusmod adipisicing eu.\r\n", "registered": "2014-07-24T05:58:05-12:00", "latitude": -81.16203, "longitude": -111.339516, "tags": [ "aliqua", "ex", "nulla", "ullamco", "consequat", "qui", "sint" ], "friends": [ { "id": 0, "name": "Frank Clayton" }, { "id": 1, "name": "Lewis Atkinson" }, { "id": 2, "name": "Pollard Clay" } ], "greeting": "Hello, Chrystal Shepherd! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24942b362874879852", "index": 2256, "guid": "c1ee5b84-3d14-486d-a33d-58fdc24f231d", "isActive": true, "balance": "$1,513.52", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Roxanne Whitehead", "gender": "female", "company": "POLARIA", "email": "roxannewhitehead@polaria.com", "phone": "+1 (883) 512-3195", "address": "847 Chestnut Street, Juarez, Northern Mariana Islands, 8481", "about": "Occaecat et ipsum nostrud eu nostrud ea aute ex aute ex. Do ullamco reprehenderit nisi consequat velit commodo do ipsum sit. Nisi cupidatat Lorem laboris excepteur consequat nulla consequat laboris commodo. Reprehenderit commodo laboris nisi mollit nostrud Lorem officia fugiat velit anim est labore enim deserunt.\r\n", "registered": "2014-06-01T02:14:31-12:00", "latitude": -29.768555, "longitude": -4.726434, "tags": [ "incididunt", "tempor", "aliquip", "laboris", "id", "officia", "dolor" ], "friends": [ { "id": 0, "name": "Juliana Rush" }, { "id": 1, "name": "Powers Hayden" }, { "id": 2, "name": "Tracey Wooten" } ], "greeting": "Hello, Roxanne Whitehead! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24cd7562cb89e35188", "index": 2257, "guid": "26f19a7f-ad48-4406-b790-59ecde510ace", "isActive": false, "balance": "$1,048.08", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Leach Blankenship", "gender": "male", "company": "FURNAFIX", "email": "leachblankenship@furnafix.com", "phone": "+1 (866) 539-3961", "address": "118 Driggs Avenue, Rutherford, Colorado, 7365", "about": "Proident reprehenderit laboris velit sit ex. Quis voluptate qui commodo cupidatat sint ex mollit. Amet qui aliqua Lorem nisi esse. Deserunt minim amet labore consectetur cillum enim labore ad fugiat dolore id ipsum. Reprehenderit velit sunt consequat reprehenderit mollit proident anim pariatur magna. Consectetur sint elit laboris minim in voluptate officia veniam eiusmod cupidatat. Aliquip et veniam ad reprehenderit mollit laboris cillum cillum do.\r\n", "registered": "2014-05-10T04:17:57-12:00", "latitude": -36.493327, "longitude": 145.111104, "tags": [ "voluptate", "deserunt", "eiusmod", "incididunt", "quis", "velit", "consectetur" ], "friends": [ { "id": 0, "name": "Pacheco Kent" }, { "id": 1, "name": "Melanie Ramirez" }, { "id": 2, "name": "Geraldine Hardy" } ], "greeting": "Hello, Leach Blankenship! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24062f465dc708e385", "index": 2258, "guid": "8b0c7abf-e503-4375-85e2-2e6a788600bf", "isActive": true, "balance": "$2,695.82", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Foster Ross", "gender": "male", "company": "SUNCLIPSE", "email": "fosterross@sunclipse.com", "phone": "+1 (821) 525-2870", "address": "437 Beard Street, Bethpage, Idaho, 7774", "about": "Enim deserunt anim cillum ut exercitation duis cupidatat cillum. Irure consequat in do est in ad nulla duis cupidatat pariatur. Culpa fugiat anim proident excepteur tempor. Cillum veniam exercitation minim ex occaecat enim proident esse do ad eu esse et. Aliquip deserunt velit et est nisi excepteur sunt cillum est laborum esse incididunt qui consectetur. Do culpa eu sunt consectetur consectetur. Lorem enim ea consectetur proident ut eu ex velit adipisicing anim ut amet amet id.\r\n", "registered": "2014-07-26T20:14:40-12:00", "latitude": 3.694776, "longitude": 84.667956, "tags": [ "consectetur", "anim", "qui", "enim", "officia", "occaecat", "ullamco" ], "friends": [ { "id": 0, "name": "Patrica Wade" }, { "id": 1, "name": "Rodriquez Cunningham" }, { "id": 2, "name": "Wyatt Noble" } ], "greeting": "Hello, Foster Ross! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2462d821114f5a167e", "index": 2259, "guid": "6c661ebb-de83-47c1-b4d4-4ff6af8dcec8", "isActive": false, "balance": "$3,500.73", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Jordan Montgomery", "gender": "male", "company": "MOTOVATE", "email": "jordanmontgomery@motovate.com", "phone": "+1 (901) 460-3772", "address": "533 Bedford Avenue, Turah, Marshall Islands, 3578", "about": "Reprehenderit esse mollit voluptate enim velit nulla aliquip proident ut ut consectetur proident. Sint elit sint enim exercitation dolore ipsum anim. Occaecat id ea veniam eiusmod officia aute. Aliqua deserunt aliquip id labore. Proident Lorem eu exercitation ea irure ad occaecat anim sunt.\r\n", "registered": "2014-03-20T17:05:43-13:00", "latitude": 20.858332, "longitude": 169.539912, "tags": [ "ad", "excepteur", "ea", "dolor", "occaecat", "aute", "et" ], "friends": [ { "id": 0, "name": "Thelma Tran" }, { "id": 1, "name": "Dixie Valdez" }, { "id": 2, "name": "Agnes Hebert" } ], "greeting": "Hello, Jordan Montgomery! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24218029b163075fee", "index": 2260, "guid": "ee82ce31-8da6-4b27-8b6e-59132d2fd5c5", "isActive": false, "balance": "$2,031.62", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Anne Simmons", "gender": "female", "company": "ELENTRIX", "email": "annesimmons@elentrix.com", "phone": "+1 (887) 405-3549", "address": "637 Union Avenue, Neahkahnie, New York, 3690", "about": "Anim aute in ut eiusmod nostrud et in sunt sit pariatur officia. Sit laboris veniam cillum culpa. Duis commodo cupidatat occaecat velit sit enim. Et mollit adipisicing sunt exercitation quis in cupidatat.\r\n", "registered": "2014-04-17T14:24:20-12:00", "latitude": -46.851581, "longitude": -123.908876, "tags": [ "commodo", "ut", "magna", "velit", "velit", "anim", "sit" ], "friends": [ { "id": 0, "name": "Gay Fox" }, { "id": 1, "name": "Cunningham Mosley" }, { "id": 2, "name": "Annabelle Cole" } ], "greeting": "Hello, Anne Simmons! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24e6953611b449c4d8", "index": 2261, "guid": "4693e5cb-06f7-4e70-9c66-8f2ab05aefd0", "isActive": true, "balance": "$2,348.05", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Montoya Waters", "gender": "male", "company": "BLEENDOT", "email": "montoyawaters@bleendot.com", "phone": "+1 (858) 467-3786", "address": "861 Classon Avenue, Verdi, Guam, 3650", "about": "Veniam do eiusmod irure magna ad aliqua et sint esse. Tempor irure ullamco deserunt ipsum elit. Nisi proident amet est cupidatat laboris ad reprehenderit sit Lorem eu aliquip enim aute. Velit aute veniam consequat officia velit cillum amet consequat ex aliqua cillum aute eiusmod.\r\n", "registered": "2014-06-30T10:06:44-12:00", "latitude": -22.76773, "longitude": -93.724466, "tags": [ "aliqua", "ex", "ut", "cillum", "consequat", "consequat", "fugiat" ], "friends": [ { "id": 0, "name": "Monroe Vega" }, { "id": 1, "name": "Waters Madden" }, { "id": 2, "name": "Ruby Bradford" } ], "greeting": "Hello, Montoya Waters! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24e4795c24f019a1f0", "index": 2262, "guid": "923403ee-a6c3-4c66-a2aa-165189621d29", "isActive": true, "balance": "$1,306.28", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Gaines Slater", "gender": "male", "company": "ZEAM", "email": "gainesslater@zeam.com", "phone": "+1 (945) 450-2703", "address": "168 Dobbin Street, Dixie, Virgin Islands, 1879", "about": "Qui mollit enim deserunt mollit deserunt nulla exercitation excepteur id culpa. Id tempor do sint esse nulla nisi officia excepteur. Cupidatat nisi mollit anim laboris laborum minim exercitation sit magna ipsum dolore. Occaecat laboris qui culpa nostrud velit. Sit nostrud quis ea nisi exercitation in esse deserunt ex.\r\n", "registered": "2014-01-28T16:50:43-13:00", "latitude": -31.802081, "longitude": -170.032222, "tags": [ "sit", "excepteur", "excepteur", "ut", "dolor", "cupidatat", "proident" ], "friends": [ { "id": 0, "name": "Elva Maddox" }, { "id": 1, "name": "Cotton Ward" }, { "id": 2, "name": "Simon Rice" } ], "greeting": "Hello, Gaines Slater! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24ed9c37610ee6c950", "index": 2263, "guid": "30c25b71-c580-4f21-93d4-dd521e62c140", "isActive": true, "balance": "$3,050.06", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Rios Hendricks", "gender": "male", "company": "TROPOLIS", "email": "rioshendricks@tropolis.com", "phone": "+1 (976) 482-2774", "address": "135 Lefferts Avenue, Coral, Massachusetts, 8317", "about": "Ad velit mollit amet pariatur minim deserunt dolor consectetur reprehenderit esse exercitation magna qui mollit. Quis elit reprehenderit culpa aute ipsum laboris laborum ex officia consectetur occaecat tempor. Quis proident ut sit id aliquip minim enim anim dolore ut ipsum consequat. Consequat minim laborum consectetur irure aute deserunt reprehenderit tempor sint voluptate.\r\n", "registered": "2014-08-11T10:14:08-12:00", "latitude": -7.813342, "longitude": -7.343341, "tags": [ "reprehenderit", "aliqua", "officia", "cillum", "dolor", "enim", "veniam" ], "friends": [ { "id": 0, "name": "Craft Morse" }, { "id": 1, "name": "Price James" }, { "id": 2, "name": "Carver Griffith" } ], "greeting": "Hello, Rios Hendricks! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24949f31771d449e9f", "index": 2264, "guid": "b9c1f1dc-dc62-4a02-8b7d-5ccd0bb1039d", "isActive": true, "balance": "$3,559.72", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Moore Webb", "gender": "male", "company": "TINGLES", "email": "moorewebb@tingles.com", "phone": "+1 (855) 575-2353", "address": "683 Navy Walk, Rushford, Utah, 537", "about": "Irure sint elit laborum esse reprehenderit esse deserunt adipisicing eiusmod ea amet reprehenderit. Labore labore commodo ea aliqua est labore minim sunt. Enim mollit ullamco veniam do ex est mollit do mollit consectetur culpa. Dolore magna amet ad eiusmod laboris.\r\n", "registered": "2014-08-17T23:38:46-12:00", "latitude": -3.76592, "longitude": -110.15169, "tags": [ "est", "veniam", "qui", "reprehenderit", "do", "aliquip", "occaecat" ], "friends": [ { "id": 0, "name": "Garrison Kirk" }, { "id": 1, "name": "Peterson Rutledge" }, { "id": 2, "name": "Nunez Baker" } ], "greeting": "Hello, Moore Webb! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24ec61c7156583f78b", "index": 2265, "guid": "1d0dd2d3-92a6-424c-a69e-85a219d55996", "isActive": true, "balance": "$3,561.51", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Lucas Daniels", "gender": "male", "company": "DOGNOST", "email": "lucasdaniels@dognost.com", "phone": "+1 (866) 515-2893", "address": "634 Schaefer Street, Omar, Montana, 921", "about": "Sint irure exercitation aute nulla minim ullamco consequat. Duis ut deserunt ullamco in et quis ipsum eiusmod fugiat eiusmod do. Consectetur do irure sit consectetur laborum fugiat Lorem et occaecat sit enim. Exercitation elit velit consectetur magna labore cillum tempor laborum.\r\n", "registered": "2014-01-16T21:41:15-13:00", "latitude": 38.646895, "longitude": 24.58229, "tags": [ "excepteur", "dolore", "ut", "proident", "eu", "cupidatat", "excepteur" ], "friends": [ { "id": 0, "name": "Esperanza Wright" }, { "id": 1, "name": "Christi Patel" }, { "id": 2, "name": "Debra Cook" } ], "greeting": "Hello, Lucas Daniels! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea244bd4350f817b9537", "index": 2266, "guid": "cd9b0fc4-e54f-4f37-8388-77c1d4813a7b", "isActive": true, "balance": "$1,581.84", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Valarie Bullock", "gender": "female", "company": "RECOGNIA", "email": "valariebullock@recognia.com", "phone": "+1 (934) 449-2599", "address": "589 Garden Place, Helen, Wisconsin, 6189", "about": "Cupidatat qui incididunt pariatur anim sunt sunt. Ex pariatur nulla minim aliqua nostrud Lorem. Laborum laboris magna dolor reprehenderit officia sint ex consectetur aliquip. Labore consectetur ut esse laboris sint. Elit eiusmod est tempor mollit exercitation minim ex deserunt exercitation dolore enim.\r\n", "registered": "2014-02-20T08:10:35-13:00", "latitude": -44.427806, "longitude": -72.64738, "tags": [ "reprehenderit", "officia", "eu", "ea", "minim", "laborum", "ad" ], "friends": [ { "id": 0, "name": "Melinda Nicholson" }, { "id": 1, "name": "Reese Grimes" }, { "id": 2, "name": "Deleon Olsen" } ], "greeting": "Hello, Valarie Bullock! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea240ddc89c16214c234", "index": 2267, "guid": "002df774-acfa-44b2-9461-49d5a4c13a75", "isActive": true, "balance": "$2,698.84", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Margaret Ramsey", "gender": "female", "company": "EXTRO", "email": "margaretramsey@extro.com", "phone": "+1 (878) 543-2485", "address": "444 Bergen Court, Urbana, Maine, 2375", "about": "Dolor cupidatat veniam adipisicing consequat. In id cupidatat adipisicing deserunt occaecat reprehenderit. Irure eu minim cupidatat nisi deserunt fugiat nostrud minim aliquip do.\r\n", "registered": "2014-09-05T14:07:30-12:00", "latitude": 73.005606, "longitude": 143.23131, "tags": [ "proident", "eiusmod", "occaecat", "elit", "nulla", "anim", "ullamco" ], "friends": [ { "id": 0, "name": "Adrienne Barrera" }, { "id": 1, "name": "Holland Moses" }, { "id": 2, "name": "Angelia Huff" } ], "greeting": "Hello, Margaret Ramsey! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24f267bcd0a5010c9c", "index": 2268, "guid": "4b4c080b-5bda-4e66-bb65-000764680a9f", "isActive": false, "balance": "$1,920.63", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Kathrine Mcintyre", "gender": "female", "company": "CANOPOLY", "email": "kathrinemcintyre@canopoly.com", "phone": "+1 (929) 590-3899", "address": "699 Stillwell Place, Camino, Virginia, 5655", "about": "Nulla in irure dolor eiusmod qui nulla nostrud reprehenderit laboris nisi. Quis veniam reprehenderit et laborum cillum incididunt aliqua. Voluptate eiusmod commodo duis anim qui sunt pariatur amet. Eiusmod sit adipisicing deserunt nostrud. Elit irure voluptate ipsum officia qui adipisicing duis cillum id. Enim quis exercitation eiusmod nostrud ad est veniam elit eu cupidatat. Pariatur velit mollit minim est eu exercitation mollit commodo laboris.\r\n", "registered": "2014-07-15T22:40:54-12:00", "latitude": -77.682758, "longitude": -17.337255, "tags": [ "dolore", "in", "cillum", "est", "reprehenderit", "pariatur", "voluptate" ], "friends": [ { "id": 0, "name": "Wiggins Hicks" }, { "id": 1, "name": "Clarke Carlson" }, { "id": 2, "name": "Stewart Ayers" } ], "greeting": "Hello, Kathrine Mcintyre! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24c4ae0450339d59bf", "index": 2269, "guid": "d590dc14-95ad-4c6f-98e3-bf9be23c0976", "isActive": true, "balance": "$3,475.03", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Case Leach", "gender": "male", "company": "SEALOUD", "email": "caseleach@sealoud.com", "phone": "+1 (814) 411-2104", "address": "443 Hastings Street, Maury, Kentucky, 9095", "about": "Quis anim non consectetur ex ea. Aliqua ipsum minim duis ipsum nulla incididunt. Aute qui do veniam aliquip sit fugiat eiusmod cupidatat pariatur occaecat reprehenderit.\r\n", "registered": "2014-03-19T18:23:18-13:00", "latitude": 24.611041, "longitude": 123.601632, "tags": [ "deserunt", "esse", "est", "proident", "labore", "aliqua", "nostrud" ], "friends": [ { "id": 0, "name": "Santana Lyons" }, { "id": 1, "name": "Essie Robles" }, { "id": 2, "name": "Lauri Curry" } ], "greeting": "Hello, Case Leach! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24b8940d9156f64f24", "index": 2270, "guid": "34d33053-f701-4e0f-9114-e0228c5733e9", "isActive": false, "balance": "$3,293.15", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Delaney Marquez", "gender": "male", "company": "NAMEGEN", "email": "delaneymarquez@namegen.com", "phone": "+1 (863) 562-2691", "address": "965 Pacific Street, Marshall, Connecticut, 1418", "about": "Deserunt qui culpa laboris culpa. Sit occaecat cupidatat in veniam sint. Et dolore dolore minim commodo laborum est aliqua tempor ut enim.\r\n", "registered": "2014-04-13T01:10:50-12:00", "latitude": -10.734444, "longitude": 66.494686, "tags": [ "in", "qui", "enim", "esse", "ea", "culpa", "quis" ], "friends": [ { "id": 0, "name": "Patrice Acevedo" }, { "id": 1, "name": "Lawrence Reeves" }, { "id": 2, "name": "Shelia Irwin" } ], "greeting": "Hello, Delaney Marquez! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24f24b58db4c932632", "index": 2271, "guid": "6f79ab44-44e4-42f5-bed6-f13ca0463bf7", "isActive": true, "balance": "$2,022.52", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Barker Terrell", "gender": "male", "company": "GEOLOGIX", "email": "barkerterrell@geologix.com", "phone": "+1 (917) 572-2527", "address": "340 Covert Street, Lookingglass, Mississippi, 3714", "about": "Lorem fugiat officia laborum cillum aliqua fugiat quis cupidatat incididunt. Incididunt consectetur dolore nulla et ad fugiat fugiat. Est duis et do ad cillum quis fugiat nostrud esse enim eu pariatur. Sit culpa sint Lorem aute ea culpa. Laboris ex ullamco reprehenderit labore fugiat sint.\r\n", "registered": "2014-07-11T01:11:29-12:00", "latitude": 18.507499, "longitude": -30.362573, "tags": [ "elit", "sunt", "enim", "non", "eiusmod", "et", "veniam" ], "friends": [ { "id": 0, "name": "Snyder Schmidt" }, { "id": 1, "name": "Cleo Delaney" }, { "id": 2, "name": "Lelia Wyatt" } ], "greeting": "Hello, Barker Terrell! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea248db1180e81ebe0df", "index": 2272, "guid": "0c15eea9-0f62-446a-8623-8cf7578886b2", "isActive": true, "balance": "$3,442.11", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Stephenson Lindsey", "gender": "male", "company": "PROTODYNE", "email": "stephensonlindsey@protodyne.com", "phone": "+1 (959) 473-2527", "address": "554 Fillmore Avenue, Holtville, Washington, 5127", "about": "Lorem anim deserunt proident nostrud consequat magna quis consequat incididunt deserunt irure dolor elit esse. Cupidatat ex occaecat in in enim amet anim qui do velit cillum sit cupidatat id. Lorem deserunt amet aute non excepteur elit excepteur sunt mollit officia ut. Irure pariatur aliqua sit esse irure aliquip non. Veniam deserunt aute nisi veniam do. Laboris consequat excepteur labore incididunt nulla quis nostrud proident.\r\n", "registered": "2014-06-19T18:43:28-12:00", "latitude": 17.660056, "longitude": -94.763872, "tags": [ "et", "id", "reprehenderit", "exercitation", "commodo", "labore", "dolore" ], "friends": [ { "id": 0, "name": "Sonya Head" }, { "id": 1, "name": "Ava Morrison" }, { "id": 2, "name": "Christie Crawford" } ], "greeting": "Hello, Stephenson Lindsey! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea242d020b4b955bafee", "index": 2273, "guid": "209c2dbd-1345-4f60-8017-304a84dd8d5c", "isActive": true, "balance": "$3,020.13", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Branch Espinoza", "gender": "male", "company": "COGNICODE", "email": "branchespinoza@cognicode.com", "phone": "+1 (986) 453-3397", "address": "944 Dahlgreen Place, Leeper, Tennessee, 3586", "about": "Culpa in minim nostrud voluptate deserunt id fugiat. Culpa dolore pariatur commodo esse occaecat pariatur laboris mollit. Quis ea ea commodo commodo esse cupidatat laborum amet. Ipsum sit tempor dolor veniam quis Lorem veniam. Non anim dolore reprehenderit Lorem sunt amet eu do.\r\n", "registered": "2014-07-02T07:00:47-12:00", "latitude": -59.736239, "longitude": -81.878073, "tags": [ "et", "et", "do", "adipisicing", "est", "incididunt", "ea" ], "friends": [ { "id": 0, "name": "Mckee Sullivan" }, { "id": 1, "name": "Mallory Day" }, { "id": 2, "name": "Holden Harmon" } ], "greeting": "Hello, Branch Espinoza! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24224e27dba4bef90b", "index": 2274, "guid": "e67c1964-0d4b-4a35-bf2d-7c2c2b56b606", "isActive": false, "balance": "$1,841.58", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Morales English", "gender": "male", "company": "XINWARE", "email": "moralesenglish@xinware.com", "phone": "+1 (833) 560-2543", "address": "462 Lenox Road, Sardis, Alabama, 1493", "about": "Tempor consectetur consequat minim duis cupidatat incididunt dolore consectetur irure. Sint tempor aliqua minim veniam laboris culpa. Velit ullamco ullamco do nostrud tempor reprehenderit nostrud irure ad minim. Est quis ea ea consectetur excepteur duis adipisicing irure esse consequat. Quis sunt ex eu proident commodo in esse pariatur est. Commodo enim cillum reprehenderit velit. Officia deserunt aliqua consectetur in proident ex incididunt nisi sunt id est amet esse sint.\r\n", "registered": "2014-06-07T18:52:48-12:00", "latitude": 63.697958, "longitude": 133.051053, "tags": [ "commodo", "non", "nisi", "velit", "eu", "dolore", "voluptate" ], "friends": [ { "id": 0, "name": "Middleton Buckley" }, { "id": 1, "name": "Garcia Haley" }, { "id": 2, "name": "Kristen Mullen" } ], "greeting": "Hello, Morales English! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2417772244b3e9359d", "index": 2275, "guid": "05c956d8-bac5-49cf-81cb-28423937f974", "isActive": true, "balance": "$2,762.79", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Tate Bray", "gender": "male", "company": "SIGNITY", "email": "tatebray@signity.com", "phone": "+1 (830) 566-3954", "address": "329 Post Court, Condon, Ohio, 3770", "about": "Consectetur excepteur sit officia nostrud sint pariatur incididunt id consequat exercitation. Ut eu dolor laborum mollit veniam ex nostrud. Quis cillum ullamco sit tempor in ad dolore ex excepteur.\r\n", "registered": "2014-01-23T16:32:09-13:00", "latitude": -14.330883, "longitude": 43.542704, "tags": [ "labore", "cupidatat", "mollit", "pariatur", "ad", "esse", "excepteur" ], "friends": [ { "id": 0, "name": "Morrow Gay" }, { "id": 1, "name": "Pauline Pitts" }, { "id": 2, "name": "Silva Vance" } ], "greeting": "Hello, Tate Bray! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24a3b71f3199027d67", "index": 2276, "guid": "704e8732-e9cc-43a6-a3c4-8836094cb767", "isActive": false, "balance": "$3,225.88", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Rutledge Kidd", "gender": "male", "company": "CENTREGY", "email": "rutledgekidd@centregy.com", "phone": "+1 (836) 543-3070", "address": "475 Lincoln Road, Muse, Hawaii, 103", "about": "Tempor dolor velit ad ex non ullamco occaecat exercitation incididunt aute incididunt. Eiusmod tempor et excepteur consequat exercitation dolore ut dolor qui pariatur consectetur sit eiusmod ipsum. Fugiat ipsum ipsum aute sit et sint. Sunt amet anim laboris id id duis aliqua. Eu pariatur sit esse enim aliquip enim. Amet veniam amet do velit occaecat reprehenderit cillum commodo do labore.\r\n", "registered": "2014-09-16T13:21:28-12:00", "latitude": -50.988806, "longitude": -33.637163, "tags": [ "aliqua", "Lorem", "amet", "ad", "consequat", "id", "quis" ], "friends": [ { "id": 0, "name": "Morris Bridges" }, { "id": 1, "name": "Hewitt Alford" }, { "id": 2, "name": "Morin Riley" } ], "greeting": "Hello, Rutledge Kidd! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea249ca2d7b966c6f8fd", "index": 2277, "guid": "748b0eaf-98d2-4c88-9565-3c4072f3fe11", "isActive": false, "balance": "$1,322.84", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Diane Brennan", "gender": "female", "company": "BLEEKO", "email": "dianebrennan@bleeko.com", "phone": "+1 (960) 490-3710", "address": "957 Virginia Place, Wiscon, New Mexico, 1902", "about": "Ea dolore anim sint elit culpa. Adipisicing sunt ullamco dolore esse id sit. Sunt consequat labore esse ea tempor labore. Eiusmod exercitation pariatur laboris ea dolore velit excepteur nisi aliqua exercitation esse ipsum quis. Officia reprehenderit exercitation commodo pariatur ad Lorem duis esse enim adipisicing nulla Lorem. Duis esse nisi cillum nisi ex in consectetur voluptate. Est velit Lorem tempor magna Lorem.\r\n", "registered": "2014-07-31T11:48:26-12:00", "latitude": -24.455581, "longitude": 106.412495, "tags": [ "non", "ex", "ea", "Lorem", "consequat", "exercitation", "occaecat" ], "friends": [ { "id": 0, "name": "Alyson Austin" }, { "id": 1, "name": "Gill Oneil" }, { "id": 2, "name": "Kris Richard" } ], "greeting": "Hello, Diane Brennan! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24fd2ab1d3ea111b33", "index": 2278, "guid": "caef7c1e-d498-43ef-937d-afe34416ea53", "isActive": false, "balance": "$1,462.99", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Dalton Casey", "gender": "male", "company": "BALOOBA", "email": "daltoncasey@balooba.com", "phone": "+1 (880) 568-2204", "address": "166 Baltic Street, Windsor, Maryland, 5592", "about": "Sit sint elit amet officia velit aliquip ipsum amet. Sint adipisicing ex proident sint nisi laboris ex magna laboris duis eu et dolor aliqua. Laborum eiusmod mollit nulla aute minim id veniam dolor. Deserunt adipisicing occaecat labore qui sint dolor reprehenderit adipisicing. Consectetur eiusmod dolore irure eu fugiat in proident nisi id tempor deserunt consequat.\r\n", "registered": "2014-02-07T03:41:39-13:00", "latitude": -56.038971, "longitude": -29.840092, "tags": [ "non", "reprehenderit", "labore", "esse", "exercitation", "adipisicing", "quis" ], "friends": [ { "id": 0, "name": "Evelyn Figueroa" }, { "id": 1, "name": "Walter Gallagher" }, { "id": 2, "name": "Natalie Copeland" } ], "greeting": "Hello, Dalton Casey! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea242ff709c091c8aad7", "index": 2279, "guid": "47f4602e-68f9-468b-872c-005107848c13", "isActive": false, "balance": "$3,209.49", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Bobbie Gould", "gender": "female", "company": "MAGNAFONE", "email": "bobbiegould@magnafone.com", "phone": "+1 (823) 482-2213", "address": "434 Nassau Street, Wanamie, Alaska, 7391", "about": "Irure commodo nisi ipsum proident laboris esse irure dolore ut occaecat tempor. Adipisicing enim sint adipisicing nisi incididunt sit. Enim dolore id ullamco ea ad tempor cillum labore officia irure tempor fugiat id. Proident amet voluptate officia id cupidatat eu elit sunt irure occaecat aliquip eiusmod magna. Ipsum Lorem tempor eiusmod tempor. Adipisicing ipsum quis aliquip quis minim. Dolore excepteur labore non sit excepteur ex adipisicing adipisicing reprehenderit eiusmod sint minim commodo.\r\n", "registered": "2014-09-12T01:04:30-12:00", "latitude": 47.41901, "longitude": -42.610989, "tags": [ "laborum", "Lorem", "laboris", "laborum", "in", "cupidatat", "sit" ], "friends": [ { "id": 0, "name": "Brooke Sellers" }, { "id": 1, "name": "Rosalinda Long" }, { "id": 2, "name": "Dunlap Barnett" } ], "greeting": "Hello, Bobbie Gould! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24416f814b5924cbad", "index": 2280, "guid": "30ae315c-6b07-4843-a064-39d374f020cf", "isActive": true, "balance": "$2,345.43", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Shawn Morin", "gender": "female", "company": "AQUASURE", "email": "shawnmorin@aquasure.com", "phone": "+1 (925) 463-2847", "address": "167 Livonia Avenue, Trucksville, Arizona, 7517", "about": "Dolor aliquip labore id et mollit. Incididunt elit sit nisi esse nulla ut. Sit enim nostrud est qui qui cillum et. Nostrud tempor incididunt quis ullamco magna veniam aute esse minim mollit ipsum laborum cupidatat duis. Irure consectetur veniam ad reprehenderit mollit ut.\r\n", "registered": "2014-08-21T16:17:44-12:00", "latitude": 16.211787, "longitude": -49.464671, "tags": [ "sint", "qui", "mollit", "voluptate", "laborum", "tempor", "amet" ], "friends": [ { "id": 0, "name": "Reyes Scott" }, { "id": 1, "name": "Nelda Prince" }, { "id": 2, "name": "Vaughn Ryan" } ], "greeting": "Hello, Shawn Morin! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea245637b441b8f07c8b", "index": 2281, "guid": "e293f8c6-6e98-4fe1-be83-9cc47f99f3d0", "isActive": true, "balance": "$3,232.54", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Kirkland Knox", "gender": "male", "company": "SPRINGBEE", "email": "kirklandknox@springbee.com", "phone": "+1 (927) 460-3297", "address": "984 Voorhies Avenue, Robinson, Federated States Of Micronesia, 2329", "about": "Ipsum occaecat labore reprehenderit duis. Laborum labore sit deserunt excepteur in. Nisi laborum ad laborum culpa ut amet reprehenderit adipisicing Lorem cillum id.\r\n", "registered": "2014-04-29T20:35:16-12:00", "latitude": -2.656117, "longitude": 80.386945, "tags": [ "mollit", "laborum", "aliquip", "non", "anim", "laborum", "deserunt" ], "friends": [ { "id": 0, "name": "Benson Yang" }, { "id": 1, "name": "Chandler Baldwin" }, { "id": 2, "name": "Bass Hall" } ], "greeting": "Hello, Kirkland Knox! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea246fe146a6222de0d4", "index": 2282, "guid": "375f7f35-6978-40e8-95aa-565c06d3b426", "isActive": true, "balance": "$3,276.64", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Sallie Joyner", "gender": "female", "company": "QUARMONY", "email": "salliejoyner@quarmony.com", "phone": "+1 (906) 488-3608", "address": "814 Norman Avenue, Dahlen, Oklahoma, 9206", "about": "Lorem sit aliquip ullamco irure consequat anim esse. Id exercitation nulla non veniam minim Lorem qui elit eu dolore nulla cupidatat cillum laborum. Quis Lorem qui labore eiusmod. Ipsum amet deserunt laborum sunt nostrud sint excepteur ut aute. Aliqua tempor culpa fugiat id occaecat minim excepteur sit qui excepteur proident cupidatat sint eu.\r\n", "registered": "2014-02-28T09:23:33-13:00", "latitude": 42.287298, "longitude": -60.01231, "tags": [ "irure", "cupidatat", "id", "dolor", "sit", "aliquip", "laborum" ], "friends": [ { "id": 0, "name": "Lucille Goodwin" }, { "id": 1, "name": "Bender Munoz" }, { "id": 2, "name": "York Bush" } ], "greeting": "Hello, Sallie Joyner! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea246f7a0bb179502cdb", "index": 2283, "guid": "03a5cad4-026e-445c-b24f-3c915f2d8fe4", "isActive": false, "balance": "$3,523.09", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Florence Ramos", "gender": "female", "company": "CONFRENZY", "email": "florenceramos@confrenzy.com", "phone": "+1 (890) 581-2670", "address": "491 Ryder Avenue, Kraemer, Michigan, 8908", "about": "Incididunt incididunt laboris pariatur quis non ullamco in culpa anim enim reprehenderit. Amet minim esse cupidatat aliquip. Pariatur adipisicing sunt ad laborum nisi exercitation nisi dolore eu incididunt. Culpa non qui ad esse enim voluptate qui occaecat proident occaecat tempor esse qui. Excepteur cillum mollit amet tempor deserunt ea. Eiusmod tempor ad sunt reprehenderit culpa eiusmod do. Irure non do ipsum Lorem incididunt esse minim ad quis dolore do officia.\r\n", "registered": "2014-04-17T10:29:16-12:00", "latitude": -45.94023, "longitude": 81.060564, "tags": [ "sunt", "anim", "fugiat", "veniam", "incididunt", "eiusmod", "in" ], "friends": [ { "id": 0, "name": "Luann Wagner" }, { "id": 1, "name": "Helen Sandoval" }, { "id": 2, "name": "Graves Bentley" } ], "greeting": "Hello, Florence Ramos! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2401bc99cb960a39b9", "index": 2284, "guid": "cd14efcb-5ffe-42da-bff2-2dbf18e003f3", "isActive": true, "balance": "$1,801.36", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Atkinson Skinner", "gender": "male", "company": "ECLIPTO", "email": "atkinsonskinner@eclipto.com", "phone": "+1 (851) 438-3734", "address": "487 Grant Avenue, Gadsden, Kansas, 1873", "about": "Id dolore sit elit enim aliquip sint sint exercitation eu labore ad ipsum. Proident elit est elit ea elit. Occaecat sunt culpa nulla dolor tempor consectetur aute ut veniam pariatur occaecat ea labore qui. Labore sint anim dolor occaecat nostrud adipisicing reprehenderit irure consequat.\r\n", "registered": "2014-09-05T19:23:14-12:00", "latitude": 79.535913, "longitude": 158.83996, "tags": [ "velit", "culpa", "excepteur", "tempor", "labore", "elit", "eu" ], "friends": [ { "id": 0, "name": "Lakisha Sharpe" }, { "id": 1, "name": "Jami Hull" }, { "id": 2, "name": "Janice Carney" } ], "greeting": "Hello, Atkinson Skinner! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24e51d401746376022", "index": 2285, "guid": "29eda157-e4e9-4e81-9a97-6f36d9734c4c", "isActive": false, "balance": "$1,163.68", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Chapman Heath", "gender": "male", "company": "CODACT", "email": "chapmanheath@codact.com", "phone": "+1 (952) 456-3159", "address": "887 Highland Avenue, Williston, South Dakota, 5215", "about": "Amet reprehenderit deserunt do non consectetur excepteur ex consectetur ea et nisi nulla occaecat. Magna occaecat eu nisi nulla duis veniam irure laboris cillum occaecat adipisicing enim. Incididunt labore pariatur mollit reprehenderit est eu irure laboris officia minim. Qui sit et velit eu aliqua cillum occaecat sint ut proident eu dolore proident voluptate. Dolore commodo proident veniam proident adipisicing commodo tempor duis occaecat voluptate est cillum incididunt velit. Consectetur anim veniam velit id dolor consequat do.\r\n", "registered": "2014-08-04T09:09:44-12:00", "latitude": 76.807382, "longitude": 92.261486, "tags": [ "laborum", "adipisicing", "occaecat", "anim", "in", "magna", "labore" ], "friends": [ { "id": 0, "name": "English Ortega" }, { "id": 1, "name": "Horn Charles" }, { "id": 2, "name": "Murphy Hill" } ], "greeting": "Hello, Chapman Heath! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24e3c01b8b9d55782d", "index": 2286, "guid": "199c35c7-4946-400c-85d7-d9798709848f", "isActive": true, "balance": "$2,052.48", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Darlene Thompson", "gender": "female", "company": "SKYPLEX", "email": "darlenethompson@skyplex.com", "phone": "+1 (834) 521-2420", "address": "217 Wolf Place, Corinne, West Virginia, 4400", "about": "Amet laborum et mollit in labore. Ad est do officia in est incididunt sit qui proident nulla qui qui magna. Sint duis sint magna exercitation esse minim voluptate quis laboris fugiat.\r\n", "registered": "2014-05-18T08:25:35-12:00", "latitude": -55.399678, "longitude": -4.224857, "tags": [ "sint", "non", "ad", "eu", "cillum", "cillum", "nostrud" ], "friends": [ { "id": 0, "name": "Prince Huffman" }, { "id": 1, "name": "Tabatha Bishop" }, { "id": 2, "name": "Simpson Jimenez" } ], "greeting": "Hello, Darlene Thompson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24701aced9d6fe522f", "index": 2287, "guid": "5057e16f-02bb-42f1-b8c7-33baa3e4d979", "isActive": false, "balance": "$1,069.44", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Lea Morris", "gender": "female", "company": "ZOARERE", "email": "leamorris@zoarere.com", "phone": "+1 (917) 459-2307", "address": "915 Knickerbocker Avenue, Bannock, Texas, 8169", "about": "Consectetur ullamco laboris elit magna minim quis anim aute nulla magna ut dolore tempor est. Qui mollit exercitation laborum velit velit velit tempor laboris non. Aute elit velit incididunt dolore quis ullamco consequat anim. Lorem laborum eu ullamco consectetur excepteur in culpa tempor laboris aliqua culpa veniam nulla. Officia nostrud enim sint sunt commodo sit excepteur amet ipsum culpa pariatur cupidatat adipisicing qui. Non eu irure quis ea veniam occaecat officia dolor exercitation sint enim qui ipsum.\r\n", "registered": "2014-08-10T03:06:01-12:00", "latitude": -71.041513, "longitude": 62.762208, "tags": [ "anim", "voluptate", "consectetur", "commodo", "cillum", "mollit", "voluptate" ], "friends": [ { "id": 0, "name": "Veronica Gentry" }, { "id": 1, "name": "Petersen Estes" }, { "id": 2, "name": "Bonner Tate" } ], "greeting": "Hello, Lea Morris! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea244d3ce9613645e352", "index": 2288, "guid": "ab7b53f6-96f4-4b3e-bebe-dc96685b7b26", "isActive": true, "balance": "$2,945.98", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Stephens Tyson", "gender": "male", "company": "ZIDOX", "email": "stephenstyson@zidox.com", "phone": "+1 (840) 479-2250", "address": "432 Melrose Street, Ellerslie, Oregon, 5578", "about": "Ad minim mollit et dolore non do est ut ad anim. Lorem in quis quis est irure eu. Id laborum reprehenderit excepteur exercitation enim reprehenderit laboris minim dolore est dolore nulla. Tempor culpa ullamco ex non duis velit laborum id incididunt occaecat adipisicing eiusmod.\r\n", "registered": "2014-03-15T20:28:03-13:00", "latitude": -64.59664, "longitude": 150.955933, "tags": [ "Lorem", "nisi", "id", "ullamco", "labore", "in", "amet" ], "friends": [ { "id": 0, "name": "Higgins Stanton" }, { "id": 1, "name": "Mays Pope" }, { "id": 2, "name": "Loretta Galloway" } ], "greeting": "Hello, Stephens Tyson! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2457a70fbd68613181", "index": 2289, "guid": "dbe3864a-8040-4a04-a41b-209e8906dfc6", "isActive": false, "balance": "$3,700.38", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Phillips Compton", "gender": "male", "company": "BOILICON", "email": "phillipscompton@boilicon.com", "phone": "+1 (935) 563-2389", "address": "558 Schweikerts Walk, Graniteville, Nevada, 7546", "about": "Nostrud incididunt incididunt duis qui in ipsum officia laboris commodo labore elit aliquip aute. Laboris aliqua id culpa non id ea cupidatat ad adipisicing ullamco aliqua officia. Deserunt cillum reprehenderit aliquip fugiat elit exercitation et do minim magna eu.\r\n", "registered": "2014-07-22T19:12:24-12:00", "latitude": 1.365185, "longitude": -76.203275, "tags": [ "incididunt", "id", "non", "consequat", "sint", "do", "elit" ], "friends": [ { "id": 0, "name": "Bell Morgan" }, { "id": 1, "name": "Angelita Meadows" }, { "id": 2, "name": "Thomas Paul" } ], "greeting": "Hello, Phillips Compton! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea243d4120bdff35cee0", "index": 2290, "guid": "cf7e190c-b881-4068-93be-dfec4e17a7ae", "isActive": false, "balance": "$1,331.32", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Cantu Browning", "gender": "male", "company": "OBONES", "email": "cantubrowning@obones.com", "phone": "+1 (970) 465-3773", "address": "218 Bay Avenue, Broadlands, Minnesota, 349", "about": "Sint sit dolor officia deserunt in irure reprehenderit incididunt ipsum ex. Amet sint in et aute eu nostrud quis magna cillum fugiat elit. Qui consectetur amet ut do dolore proident reprehenderit. Deserunt id in quis amet laboris. Sint veniam cupidatat in ut non enim minim reprehenderit cupidatat. Ipsum ut non enim cillum culpa qui exercitation id nisi non nisi consequat. Lorem officia laborum Lorem fugiat enim nulla.\r\n", "registered": "2014-03-18T16:23:42-13:00", "latitude": 68.006671, "longitude": -86.737987, "tags": [ "quis", "veniam", "magna", "ullamco", "quis", "consectetur", "tempor" ], "friends": [ { "id": 0, "name": "Neal Knapp" }, { "id": 1, "name": "Thompson Santos" }, { "id": 2, "name": "Romero Frank" } ], "greeting": "Hello, Cantu Browning! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2441e13daa422866c5", "index": 2291, "guid": "1b292078-4204-4cc6-9d47-f9a859e812a4", "isActive": false, "balance": "$1,502.58", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Roseann Bird", "gender": "female", "company": "PETICULAR", "email": "roseannbird@peticular.com", "phone": "+1 (894) 556-2301", "address": "702 Rodney Street, Longoria, Missouri, 3114", "about": "Adipisicing enim minim ad officia elit eiusmod esse veniam voluptate minim laborum id consectetur. Tempor id nostrud ullamco fugiat pariatur excepteur consequat anim. Mollit ut incididunt eu ut aute in qui. Do aute incididunt excepteur occaecat. Do nulla ipsum et exercitation sint nulla dolor officia reprehenderit consectetur.\r\n", "registered": "2014-01-30T21:27:52-13:00", "latitude": 55.764699, "longitude": -2.864179, "tags": [ "culpa", "eu", "fugiat", "ad", "veniam", "sunt", "mollit" ], "friends": [ { "id": 0, "name": "Banks Bryan" }, { "id": 1, "name": "Helga Joyce" }, { "id": 2, "name": "Sellers Wilcox" } ], "greeting": "Hello, Roseann Bird! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24de9f6433da11ac28", "index": 2292, "guid": "79d5121e-dfdb-47e5-9d72-6b0e1deed00a", "isActive": true, "balance": "$3,631.64", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Shirley Dawson", "gender": "female", "company": "VENDBLEND", "email": "shirleydawson@vendblend.com", "phone": "+1 (820) 423-3569", "address": "429 Chauncey Street, Innsbrook, Rhode Island, 5534", "about": "Commodo ullamco ullamco commodo ut duis enim id excepteur exercitation ex do dolor occaecat minim. Duis laboris non nulla velit ea sint voluptate officia qui. Ex cupidatat aliqua veniam non enim qui. Ea quis laboris incididunt velit. Commodo veniam non ea occaecat commodo culpa deserunt ipsum. Minim aute incididunt eu magna sit incididunt qui incididunt. Magna esse ipsum tempor ut consectetur.\r\n", "registered": "2014-05-19T19:37:00-12:00", "latitude": -82.8029, "longitude": 59.120906, "tags": [ "deserunt", "est", "esse", "reprehenderit", "proident", "aute", "incididunt" ], "friends": [ { "id": 0, "name": "Nina Glover" }, { "id": 1, "name": "Pate Mcknight" }, { "id": 2, "name": "Charlene Harris" } ], "greeting": "Hello, Shirley Dawson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24de88ef3e6eb8bc4b", "index": 2293, "guid": "392a9302-ca88-4f7b-af87-afa74b435ac7", "isActive": true, "balance": "$1,362.32", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Stevenson Price", "gender": "male", "company": "PORTICA", "email": "stevensonprice@portica.com", "phone": "+1 (896) 424-2131", "address": "329 Malta Street, Curtice, Florida, 5448", "about": "Magna incididunt commodo officia consectetur cillum voluptate reprehenderit reprehenderit. Nulla sint aliqua amet Lorem ea. Elit fugiat elit id do proident pariatur pariatur. Eiusmod ullamco exercitation eiusmod esse nulla. Ea in officia non laboris nulla labore consectetur et.\r\n", "registered": "2014-04-21T14:53:11-12:00", "latitude": 69.573721, "longitude": 1.127361, "tags": [ "tempor", "non", "ad", "ipsum", "fugiat", "consequat", "pariatur" ], "friends": [ { "id": 0, "name": "Helena Mckee" }, { "id": 1, "name": "Odonnell Mcguire" }, { "id": 2, "name": "Clarissa Gray" } ], "greeting": "Hello, Stevenson Price! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24c8e4a5ab4fa6591c", "index": 2294, "guid": "fd9f4c28-4cfc-4f82-9df4-56ada19fea8c", "isActive": false, "balance": "$3,986.26", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Lucile Sheppard", "gender": "female", "company": "RUGSTARS", "email": "lucilesheppard@rugstars.com", "phone": "+1 (826) 567-3927", "address": "945 Boerum Place, Florence, North Carolina, 5251", "about": "Elit aliquip eu nostrud sit anim esse fugiat id. Qui veniam id qui quis incididunt et anim sit proident amet aliquip duis. Officia nisi id excepteur pariatur voluptate duis veniam nulla. Proident amet culpa ut tempor reprehenderit officia esse consectetur aliquip qui dolore nostrud. Adipisicing ad dolore reprehenderit consectetur commodo tempor labore voluptate cillum. Fugiat amet sunt qui velit fugiat adipisicing occaecat incididunt non est.\r\n", "registered": "2014-09-11T20:51:36-12:00", "latitude": 61.595695, "longitude": 61.260005, "tags": [ "culpa", "fugiat", "in", "cupidatat", "aute", "magna", "culpa" ], "friends": [ { "id": 0, "name": "Lacy Kaufman" }, { "id": 1, "name": "Teri Chavez" }, { "id": 2, "name": "Frances Nichols" } ], "greeting": "Hello, Lucile Sheppard! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2415321eb69a7dbdc8", "index": 2295, "guid": "ad4bf866-0870-4d9d-bf8d-25ba629d3ccd", "isActive": false, "balance": "$3,533.64", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Juliet Mathews", "gender": "female", "company": "RECRITUBE", "email": "julietmathews@recritube.com", "phone": "+1 (899) 554-3876", "address": "166 Cypress Court, Tecolotito, New Hampshire, 759", "about": "Deserunt magna nulla voluptate ea occaecat exercitation ut elit pariatur eiusmod reprehenderit eu tempor. Incididunt aliqua magna mollit mollit ad reprehenderit pariatur tempor. Mollit nostrud aliqua irure sunt laborum. Quis esse laborum esse proident magna proident ut dolor dolore minim sunt. Aute veniam dolor tempor commodo cupidatat ullamco elit veniam. Velit qui duis laborum officia culpa nostrud.\r\n", "registered": "2014-04-21T00:42:55-12:00", "latitude": -41.736583, "longitude": 38.969434, "tags": [ "irure", "labore", "ad", "ad", "excepteur", "nulla", "est" ], "friends": [ { "id": 0, "name": "Mosley Young" }, { "id": 1, "name": "Lizzie Santana" }, { "id": 2, "name": "Bertha Mcneil" } ], "greeting": "Hello, Juliet Mathews! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24a8249b3450ea167d", "index": 2296, "guid": "e4989a9b-cd28-4db4-a6e5-5a3ed3348e9d", "isActive": true, "balance": "$3,597.37", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Cox Lang", "gender": "male", "company": "COSMOSIS", "email": "coxlang@cosmosis.com", "phone": "+1 (862) 420-3432", "address": "204 Ebony Court, Martell, Arkansas, 5339", "about": "Dolore proident minim consequat nulla qui elit ipsum do nulla ea Lorem magna Lorem. Aliqua id aliqua cupidatat esse dolore aliquip aliqua. Incididunt officia ipsum quis non nulla dolore eu sit elit culpa proident magna in. Voluptate amet dolore elit exercitation do consequat duis laborum. Nulla aute et amet aute mollit eu adipisicing ea non anim do. Duis sint reprehenderit qui nostrud nostrud ad dolore adipisicing.\r\n", "registered": "2014-06-10T08:12:03-12:00", "latitude": -39.503344, "longitude": -55.859065, "tags": [ "deserunt", "adipisicing", "commodo", "laborum", "non", "ex", "sit" ], "friends": [ { "id": 0, "name": "Phyllis Obrien" }, { "id": 1, "name": "Clara Todd" }, { "id": 2, "name": "Fields Holcomb" } ], "greeting": "Hello, Cox Lang! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24554f8374ca7500fc", "index": 2297, "guid": "16824e37-f73e-4419-bd7d-56289a61689b", "isActive": false, "balance": "$1,612.98", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Mia Bolton", "gender": "female", "company": "ULTRIMAX", "email": "miabolton@ultrimax.com", "phone": "+1 (991) 434-3378", "address": "240 Sumner Place, Hebron, Iowa, 974", "about": "Irure magna officia eiusmod labore. Consequat culpa commodo labore tempor irure veniam enim velit non tempor quis. Cupidatat officia adipisicing elit nostrud. Do consectetur aliqua veniam proident dolor velit minim pariatur dolore. Esse veniam dolore ipsum ipsum eu tempor magna pariatur deserunt.\r\n", "registered": "2014-02-17T15:01:53-13:00", "latitude": -16.918867, "longitude": 178.215911, "tags": [ "id", "eu", "nisi", "aliqua", "ex", "in", "sunt" ], "friends": [ { "id": 0, "name": "Patricia Wise" }, { "id": 1, "name": "Mckinney Humphrey" }, { "id": 2, "name": "Janet Mclean" } ], "greeting": "Hello, Mia Bolton! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24d1f0696b89008cfb", "index": 2298, "guid": "ad667dd1-490a-47d3-87a9-2cd0186558ca", "isActive": false, "balance": "$2,510.25", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Latoya Calhoun", "gender": "female", "company": "EXTREMO", "email": "latoyacalhoun@extremo.com", "phone": "+1 (935) 544-2663", "address": "225 Madison Place, Machias, Nebraska, 8522", "about": "Irure nulla eu ea aliquip nulla sunt. Commodo magna amet adipisicing nostrud veniam commodo ad quis qui. Officia pariatur magna eiusmod irure laboris nulla proident magna Lorem magna anim. Qui quis mollit qui consequat est voluptate in. Quis irure ut occaecat enim deserunt ad est magna deserunt et esse minim anim. Exercitation reprehenderit id ut aliqua cupidatat qui incididunt ipsum fugiat sit ea deserunt mollit.\r\n", "registered": "2014-03-29T09:48:08-13:00", "latitude": 23.602303, "longitude": 9.031518, "tags": [ "aliquip", "veniam", "qui", "est", "do", "amet", "nostrud" ], "friends": [ { "id": 0, "name": "Alice Carroll" }, { "id": 1, "name": "Hillary Little" }, { "id": 2, "name": "Janette Adkins" } ], "greeting": "Hello, Latoya Calhoun! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2456b9e1bd102d6b73", "index": 2299, "guid": "2a8a44c5-f2b3-4cc1-80f4-d6c6aff1ee2e", "isActive": false, "balance": "$1,394.24", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Spence Alvarado", "gender": "male", "company": "ASIMILINE", "email": "spencealvarado@asimiline.com", "phone": "+1 (927) 553-3244", "address": "814 Story Street, Imperial, District Of Columbia, 1563", "about": "Excepteur minim aliquip reprehenderit reprehenderit proident elit incididunt cillum in irure ullamco ullamco aliquip voluptate. Fugiat culpa pariatur non cillum ex aliquip enim magna. Ipsum Lorem veniam reprehenderit et nisi reprehenderit dolor ea.\r\n", "registered": "2014-06-18T05:27:17-12:00", "latitude": 30.377487, "longitude": -11.377395, "tags": [ "velit", "amet", "eu", "veniam", "do", "ullamco", "ea" ], "friends": [ { "id": 0, "name": "Hooper Wiggins" }, { "id": 1, "name": "Muriel Oneal" }, { "id": 2, "name": "Jacobson Lopez" } ], "greeting": "Hello, Spence Alvarado! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2456d98a154521dde1", "index": 2300, "guid": "ce8a7706-0db6-4efe-ab07-1c7788a20147", "isActive": true, "balance": "$1,491.44", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Justine Osborn", "gender": "female", "company": "QABOOS", "email": "justineosborn@qaboos.com", "phone": "+1 (928) 589-2530", "address": "446 Seaview Court, Dunbar, New Jersey, 7167", "about": "Id aute aute reprehenderit sit enim Lorem exercitation adipisicing sunt adipisicing. Eu exercitation laborum duis enim adipisicing aute laborum ex. Qui deserunt est eiusmod irure duis sint non ad laboris qui.\r\n", "registered": "2014-08-13T08:34:32-12:00", "latitude": -67.196219, "longitude": -168.794557, "tags": [ "irure", "veniam", "cupidatat", "velit", "enim", "voluptate", "reprehenderit" ], "friends": [ { "id": 0, "name": "Leonor Duran" }, { "id": 1, "name": "Parker Russo" }, { "id": 2, "name": "Cassandra Moran" } ], "greeting": "Hello, Justine Osborn! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea241eb495cb8baea5ff", "index": 2301, "guid": "79f10ef7-a81d-4d01-a90f-8e0824fdd7de", "isActive": false, "balance": "$3,897.83", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Juarez Rios", "gender": "male", "company": "KIDGREASE", "email": "juarezrios@kidgrease.com", "phone": "+1 (827) 597-2228", "address": "429 Bulwer Place, Wolcott, Palau, 8249", "about": "Consectetur non ad cillum eiusmod cillum excepteur. Pariatur quis voluptate esse fugiat et nisi in culpa adipisicing veniam. Ad irure culpa eiusmod excepteur.\r\n", "registered": "2014-04-03T19:00:27-13:00", "latitude": 61.652808, "longitude": -51.699273, "tags": [ "excepteur", "anim", "fugiat", "duis", "dolor", "nostrud", "esse" ], "friends": [ { "id": 0, "name": "Concetta Rivas" }, { "id": 1, "name": "Angeline Leblanc" }, { "id": 2, "name": "Quinn Navarro" } ], "greeting": "Hello, Juarez Rios! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24e7cdc379f987d61b", "index": 2302, "guid": "50b501f1-56aa-4d2a-9103-1a5673f98f8f", "isActive": true, "balance": "$2,686.60", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Selma Pratt", "gender": "female", "company": "DIGITALUS", "email": "selmapratt@digitalus.com", "phone": "+1 (839) 580-2990", "address": "867 Seigel Street, Hemlock, Puerto Rico, 5303", "about": "Labore culpa laborum commodo ex cillum ullamco et tempor amet aute. Officia non ut et ipsum consectetur consequat consequat et est. Ad voluptate qui Lorem aliqua pariatur culpa nulla sit aliquip Lorem sunt sunt sint. Enim anim elit quis minim veniam sunt mollit nisi. Cupidatat est pariatur fugiat deserunt dolore cupidatat ut. In culpa ipsum ut id ex ut labore magna.\r\n", "registered": "2014-01-31T22:00:11-13:00", "latitude": -2.139045, "longitude": -61.679418, "tags": [ "nostrud", "excepteur", "mollit", "ea", "cupidatat", "ad", "laboris" ], "friends": [ { "id": 0, "name": "Sharon Mercer" }, { "id": 1, "name": "Yesenia Chan" }, { "id": 2, "name": "Pamela Carter" } ], "greeting": "Hello, Selma Pratt! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24bc462112b187a804", "index": 2303, "guid": "f5a87611-7003-470f-92dd-37915726e1a9", "isActive": true, "balance": "$3,924.89", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "May Cantu", "gender": "male", "company": "SKINSERVE", "email": "maycantu@skinserve.com", "phone": "+1 (872) 488-3571", "address": "622 Stuart Street, Caberfae, California, 7293", "about": "Nulla incididunt enim in amet. Labore commodo incididunt voluptate laborum ea mollit laborum eu cillum elit voluptate. Cupidatat eu occaecat adipisicing anim aute eu ullamco aliquip voluptate sit minim labore. Est in sint aute minim elit eu minim duis qui sint commodo. Elit magna eiusmod sint tempor pariatur. Sint elit id laboris aute consequat eiusmod minim officia commodo elit dolore sit proident non. Occaecat amet qui deserunt dolor.\r\n", "registered": "2014-02-05T01:31:50-13:00", "latitude": -29.180725, "longitude": -167.988973, "tags": [ "laborum", "esse", "nisi", "deserunt", "eu", "cupidatat", "ut" ], "friends": [ { "id": 0, "name": "Sheila Alvarez" }, { "id": 1, "name": "Nolan Benjamin" }, { "id": 2, "name": "Adela Strickland" } ], "greeting": "Hello, May Cantu! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea248b7c2138d8935a82", "index": 2304, "guid": "2633e2d6-da3b-4806-bb96-aed0b1c2c57f", "isActive": true, "balance": "$3,619.47", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Holloway Schroeder", "gender": "male", "company": "ECLIPSENT", "email": "hollowayschroeder@eclipsent.com", "phone": "+1 (996) 442-2697", "address": "958 Winthrop Street, Brady, Vermont, 2496", "about": "Proident exercitation consequat est elit amet. Officia ut proident et et ut pariatur. Commodo cupidatat ipsum qui labore. Aute nisi nisi ea nisi non. Officia occaecat cillum mollit dolor ea culpa ad esse reprehenderit.\r\n", "registered": "2014-05-18T21:30:28-12:00", "latitude": 78.937499, "longitude": -164.781009, "tags": [ "laborum", "in", "amet", "do", "adipisicing", "eu", "magna" ], "friends": [ { "id": 0, "name": "Barber Barker" }, { "id": 1, "name": "Howard Schultz" }, { "id": 2, "name": "Kristina Torres" } ], "greeting": "Hello, Holloway Schroeder! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24db895a19a22d6610", "index": 2305, "guid": "e0716632-0a30-4b0b-ac8b-a208b8775c0a", "isActive": true, "balance": "$3,615.37", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Bryant Boyd", "gender": "male", "company": "MELBACOR", "email": "bryantboyd@melbacor.com", "phone": "+1 (956) 470-2677", "address": "764 Troutman Street, Fresno, Indiana, 3203", "about": "Nisi proident nisi laborum id commodo. Sint consequat amet aute irure sunt consectetur esse. Et tempor adipisicing Lorem anim aliquip labore laborum consectetur sint nisi reprehenderit mollit. Pariatur elit dolor anim et enim culpa laboris id quis qui. Id veniam tempor laboris veniam do ullamco irure sunt. Eu do nisi ad mollit aliquip aute laborum Lorem aute.\r\n", "registered": "2014-07-28T14:22:07-12:00", "latitude": -64.522945, "longitude": -68.33457, "tags": [ "veniam", "ea", "laborum", "nisi", "reprehenderit", "qui", "dolore" ], "friends": [ { "id": 0, "name": "Martha Franco" }, { "id": 1, "name": "Ball Houston" }, { "id": 2, "name": "Brady Ratliff" } ], "greeting": "Hello, Bryant Boyd! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea246a7c25ffecce64c6", "index": 2306, "guid": "9c880244-2d1f-4c68-b6ff-62cf0069132a", "isActive": true, "balance": "$1,587.41", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Sawyer Benton", "gender": "male", "company": "BLUEGRAIN", "email": "sawyerbenton@bluegrain.com", "phone": "+1 (884) 600-2905", "address": "109 Taylor Street, Cressey, Illinois, 3575", "about": "Fugiat quis excepteur commodo id cillum ad amet eu dolore. Aliquip tempor deserunt velit irure officia. Laborum aliquip deserunt irure nulla elit Lorem deserunt cillum nulla. Dolore voluptate aliquip reprehenderit nisi quis dolor proident duis aliquip. Eu pariatur labore proident id eiusmod ad exercitation tempor cillum nisi. Adipisicing proident occaecat reprehenderit deserunt fugiat cupidatat mollit ut officia. Pariatur tempor nostrud mollit dolor consequat amet.\r\n", "registered": "2014-02-07T09:44:30-13:00", "latitude": -9.035264, "longitude": -104.837997, "tags": [ "voluptate", "officia", "deserunt", "nisi", "consectetur", "consequat", "est" ], "friends": [ { "id": 0, "name": "Aurelia Roman" }, { "id": 1, "name": "Carmen Schneider" }, { "id": 2, "name": "Gertrude Brady" } ], "greeting": "Hello, Sawyer Benton! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2467cbaa8cb679cc43", "index": 2307, "guid": "cdae8997-88e6-4926-9df6-56a7a04a5dc4", "isActive": false, "balance": "$3,201.35", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Mack Shannon", "gender": "male", "company": "COMFIRM", "email": "mackshannon@comfirm.com", "phone": "+1 (859) 501-2358", "address": "787 Vandervoort Avenue, Malott, South Carolina, 5822", "about": "Elit esse amet duis aute eiusmod sunt ut eu ullamco ipsum sunt laboris. Consectetur sunt eiusmod sit minim. Duis consectetur aliqua enim enim laborum occaecat occaecat anim aliqua occaecat deserunt ad. Quis duis enim dolore aliquip proident nostrud fugiat ut ex cillum dolore.\r\n", "registered": "2014-04-07T13:57:44-12:00", "latitude": -38.656273, "longitude": -123.954365, "tags": [ "magna", "et", "eiusmod", "anim", "non", "amet", "labore" ], "friends": [ { "id": 0, "name": "Lester Coleman" }, { "id": 1, "name": "Patti Ochoa" }, { "id": 2, "name": "Terrell Mcclain" } ], "greeting": "Hello, Mack Shannon! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24547007a9cbc65ef6", "index": 2308, "guid": "ba56debc-7858-40f6-b430-fcd735644575", "isActive": false, "balance": "$3,836.15", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Brewer Lowe", "gender": "male", "company": "QUALITERN", "email": "brewerlowe@qualitern.com", "phone": "+1 (835) 546-2769", "address": "210 Williams Place, Callaghan, American Samoa, 3482", "about": "Mollit irure proident cupidatat ut. Mollit adipisicing occaecat cillum exercitation eiusmod amet. Tempor duis in labore fugiat occaecat deserunt nostrud mollit incididunt mollit aliqua nostrud. Irure qui ex anim nostrud adipisicing voluptate. Minim culpa in cillum reprehenderit incididunt incididunt esse consectetur mollit labore non. Mollit minim aliquip ut Lorem culpa magna ut labore.\r\n", "registered": "2014-06-14T08:39:03-12:00", "latitude": 43.852769, "longitude": -45.306689, "tags": [ "veniam", "aliqua", "commodo", "tempor", "ea", "ex", "minim" ], "friends": [ { "id": 0, "name": "Dudley Hardin" }, { "id": 1, "name": "Debbie Watkins" }, { "id": 2, "name": "Nichols Good" } ], "greeting": "Hello, Brewer Lowe! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea248280692768f857df", "index": 2309, "guid": "679afae6-4375-43c1-9ae9-af577944fa7a", "isActive": true, "balance": "$3,410.01", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Jewel Cohen", "gender": "female", "company": "DREAMIA", "email": "jewelcohen@dreamia.com", "phone": "+1 (817) 413-3925", "address": "642 Hill Street, Austinburg, Delaware, 2312", "about": "In ea fugiat incididunt eiusmod. Non laboris nostrud dolore dolore occaecat Lorem dolore adipisicing aliqua id laborum. Lorem aliquip aute culpa deserunt velit mollit. Irure sunt magna id anim est sit. Adipisicing duis sunt tempor Lorem. Fugiat labore culpa voluptate tempor velit cillum nostrud. Minim amet consequat irure ex culpa veniam officia aliquip culpa duis et cillum.\r\n", "registered": "2014-01-04T13:05:38-13:00", "latitude": 40.883827, "longitude": 106.831775, "tags": [ "dolore", "sit", "dolor", "velit", "voluptate", "aute", "proident" ], "friends": [ { "id": 0, "name": "Gloria Gamble" }, { "id": 1, "name": "Pugh Haynes" }, { "id": 2, "name": "Ida Gibson" } ], "greeting": "Hello, Jewel Cohen! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2424555ab47958ec43", "index": 2310, "guid": "99ccb49e-a812-45a9-b633-e05add154e4a", "isActive": true, "balance": "$1,210.16", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Alyssa Roth", "gender": "female", "company": "INTERLOO", "email": "alyssaroth@interloo.com", "phone": "+1 (911) 598-3464", "address": "951 Box Street, Bentonville, Pennsylvania, 8422", "about": "Do eiusmod nulla sit aliqua reprehenderit deserunt amet quis excepteur cillum velit sit magna minim. Aliqua aliqua eiusmod consectetur labore incididunt. Proident cillum ullamco nostrud minim. Aliqua ea laboris sint culpa elit sit nostrud. Reprehenderit sint reprehenderit consectetur do.\r\n", "registered": "2014-06-12T13:13:11-12:00", "latitude": -36.930844, "longitude": -62.537147, "tags": [ "consequat", "non", "veniam", "cupidatat", "labore", "excepteur", "nisi" ], "friends": [ { "id": 0, "name": "Tanya Camacho" }, { "id": 1, "name": "Lindsay Branch" }, { "id": 2, "name": "Fran Fuller" } ], "greeting": "Hello, Alyssa Roth! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24bc70b86bc7ef2939", "index": 2311, "guid": "34ef4be2-fcb0-40ef-801b-78d9dcfff73e", "isActive": false, "balance": "$2,614.58", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Holman Holden", "gender": "male", "company": "MARKETOID", "email": "holmanholden@marketoid.com", "phone": "+1 (864) 581-3363", "address": "131 Berry Street, Roulette, Georgia, 812", "about": "Voluptate sint velit dolor ex. Culpa non cillum ullamco ullamco ut reprehenderit tempor deserunt commodo velit et aliqua qui id. Dolor ea dolore incididunt tempor tempor amet laboris do nisi aute elit culpa culpa. Excepteur duis laborum do Lorem excepteur esse. Sunt do in et deserunt aliquip. Adipisicing excepteur amet laboris magna aute eiusmod dolore deserunt Lorem. Ad do voluptate deserunt aliqua nulla.\r\n", "registered": "2014-08-11T23:22:42-12:00", "latitude": -85.201489, "longitude": -57.843436, "tags": [ "deserunt", "duis", "voluptate", "ad", "est", "pariatur", "labore" ], "friends": [ { "id": 0, "name": "Mcneil Butler" }, { "id": 1, "name": "Hebert Horton" }, { "id": 2, "name": "Johnson Molina" } ], "greeting": "Hello, Holman Holden! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea242d8202eaadadcc85", "index": 2312, "guid": "ea2807b5-93bb-47ab-91a5-0c073ac7fe18", "isActive": true, "balance": "$1,763.91", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Lora Le", "gender": "female", "company": "TALAE", "email": "lorale@talae.com", "phone": "+1 (938) 585-2483", "address": "549 Clinton Avenue, Alafaya, North Dakota, 9724", "about": "Incididunt commodo aute minim ad incididunt. Qui laborum in voluptate aliquip eu excepteur deserunt veniam pariatur sit cillum nostrud. Mollit magna excepteur occaecat tempor Lorem nostrud esse aliquip nisi qui est est. Officia ipsum id excepteur velit. Est aute ex tempor anim ullamco labore occaecat proident consectetur.\r\n", "registered": "2014-03-15T01:19:23-13:00", "latitude": -8.858568, "longitude": -147.270665, "tags": [ "esse", "eu", "labore", "proident", "irure", "pariatur", "pariatur" ], "friends": [ { "id": 0, "name": "Gwendolyn Summers" }, { "id": 1, "name": "Sparks Gardner" }, { "id": 2, "name": "Beard Wallace" } ], "greeting": "Hello, Lora Le! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2427c189c061d96b02", "index": 2313, "guid": "d9ef2a53-8736-45c1-8a6d-9bbc81d4a9fe", "isActive": false, "balance": "$3,787.67", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Florine Johnson", "gender": "female", "company": "PLASTO", "email": "florinejohnson@plasto.com", "phone": "+1 (937) 585-2958", "address": "349 McKibbin Street, Rehrersburg, Louisiana, 1784", "about": "Duis excepteur qui qui aute. Incididunt aliqua est nostrud laborum ut commodo fugiat magna reprehenderit quis nulla et. Duis in ipsum velit labore Lorem dolore et.\r\n", "registered": "2014-04-14T18:39:23-12:00", "latitude": -48.385643, "longitude": 24.891494, "tags": [ "tempor", "velit", "sint", "sit", "sunt", "eiusmod", "ullamco" ], "friends": [ { "id": 0, "name": "Mcintosh Conner" }, { "id": 1, "name": "Millicent Finch" }, { "id": 2, "name": "Judith Haney" } ], "greeting": "Hello, Florine Johnson! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24d7ca3a996a72c543", "index": 2314, "guid": "6f350b59-14c9-4893-87ba-d965cfefe831", "isActive": false, "balance": "$2,077.15", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Delgado Martin", "gender": "male", "company": "ORBALIX", "email": "delgadomartin@orbalix.com", "phone": "+1 (817) 505-3886", "address": "661 Roebling Street, Sandston, Northern Mariana Islands, 7295", "about": "Minim officia ut excepteur labore adipisicing qui dolor. Esse ipsum veniam dolor qui esse minim velit. Ex ut anim adipisicing ea sit voluptate culpa dolore culpa aliquip fugiat in pariatur dolor.\r\n", "registered": "2014-03-10T05:56:47-13:00", "latitude": 52.65316, "longitude": 44.953697, "tags": [ "elit", "tempor", "fugiat", "esse", "proident", "laboris", "ad" ], "friends": [ { "id": 0, "name": "Humphrey Crosby" }, { "id": 1, "name": "Byers Lloyd" }, { "id": 2, "name": "Bonnie Lester" } ], "greeting": "Hello, Delgado Martin! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24fb61c0c4ac88fd77", "index": 2315, "guid": "35d9d4d8-3dda-429b-87cb-0bd2d77de510", "isActive": true, "balance": "$3,923.17", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Brenda Whitfield", "gender": "female", "company": "STRALOY", "email": "brendawhitfield@straloy.com", "phone": "+1 (904) 564-2089", "address": "324 Vandervoort Place, Leland, Colorado, 7661", "about": "In ut fugiat ad quis. Labore ad deserunt ipsum do exercitation ullamco reprehenderit officia proident aliquip nisi aute excepteur culpa. Exercitation consequat proident id do aliquip Lorem ullamco. Commodo non laboris nulla ullamco do. Esse ex dolor anim consectetur proident velit consequat mollit tempor magna. Occaecat aute ex culpa pariatur.\r\n", "registered": "2014-01-01T05:21:25-13:00", "latitude": 9.485196, "longitude": -79.558088, "tags": [ "consequat", "sint", "voluptate", "dolor", "deserunt", "aliquip", "nisi" ], "friends": [ { "id": 0, "name": "Ryan Evans" }, { "id": 1, "name": "Freda Blackburn" }, { "id": 2, "name": "Simmons Walter" } ], "greeting": "Hello, Brenda Whitfield! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24b38deeec9be74dc0", "index": 2316, "guid": "0392054b-d731-4d91-8189-ebeb7bda9d6a", "isActive": true, "balance": "$3,381.46", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Figueroa Underwood", "gender": "male", "company": "RADIANTIX", "email": "figueroaunderwood@radiantix.com", "phone": "+1 (976) 553-3535", "address": "294 Kay Court, Wakulla, Idaho, 1669", "about": "Ut sit do ea ad ullamco nostrud consequat dolor laboris do veniam. Fugiat eu exercitation mollit non labore culpa commodo eiusmod velit ad tempor ullamco. Aute aliquip sunt Lorem in quis quis ea ea in cillum. Culpa deserunt veniam velit laboris ea elit dolore eiusmod.\r\n", "registered": "2014-02-27T13:17:48-13:00", "latitude": -41.344405, "longitude": -127.396027, "tags": [ "anim", "mollit", "irure", "fugiat", "sit", "tempor", "Lorem" ], "friends": [ { "id": 0, "name": "Lenore William" }, { "id": 1, "name": "Baldwin Mccarty" }, { "id": 2, "name": "Combs Mullins" } ], "greeting": "Hello, Figueroa Underwood! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24cb8b488038867378", "index": 2317, "guid": "570df961-d28a-4fab-9680-ab28290e182e", "isActive": true, "balance": "$3,791.10", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Bailey Sweet", "gender": "male", "company": "UTARIAN", "email": "baileysweet@utarian.com", "phone": "+1 (998) 547-2742", "address": "531 Jefferson Street, Hailesboro, Marshall Islands, 7142", "about": "Dolor mollit ex cillum aliquip. Irure qui ullamco reprehenderit veniam ea nisi occaecat aliquip dolore consectetur amet culpa cupidatat ea. Velit proident cillum laboris velit irure et commodo. Deserunt nostrud commodo qui commodo ipsum non nulla dolor quis consectetur. Ad sit ut aute excepteur ea. Duis proident proident tempor in commodo veniam ad. Sunt esse et aliqua aliquip aute sit officia esse do in officia cillum proident culpa.\r\n", "registered": "2014-07-13T22:46:49-12:00", "latitude": 49.48736, "longitude": -81.746168, "tags": [ "dolore", "occaecat", "magna", "id", "nulla", "tempor", "in" ], "friends": [ { "id": 0, "name": "Marci Watts" }, { "id": 1, "name": "Moreno Moreno" }, { "id": 2, "name": "Willie Mcmillan" } ], "greeting": "Hello, Bailey Sweet! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24a738dd0702489419", "index": 2318, "guid": "6a066165-d219-47ae-8c12-6a4232d81a20", "isActive": true, "balance": "$1,984.01", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "West Greer", "gender": "male", "company": "SULTRAX", "email": "westgreer@sultrax.com", "phone": "+1 (898) 577-3873", "address": "491 Lois Avenue, Beaverdale, New York, 5816", "about": "Velit occaecat eu et sit veniam ad. Anim velit occaecat exercitation reprehenderit mollit aliqua mollit qui. Fugiat in in et reprehenderit. Do aliquip ea amet laborum culpa amet culpa magna qui eiusmod nostrud Lorem nisi. Laboris ut nisi id cillum. Id duis enim nisi incididunt enim tempor reprehenderit magna ex.\r\n", "registered": "2014-04-07T11:42:05-12:00", "latitude": 75.000743, "longitude": -120.450638, "tags": [ "non", "exercitation", "dolore", "duis", "dolore", "cupidatat", "deserunt" ], "friends": [ { "id": 0, "name": "Rivers Barron" }, { "id": 1, "name": "Huffman Flynn" }, { "id": 2, "name": "Joni Rasmussen" } ], "greeting": "Hello, West Greer! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24375670562c7677f9", "index": 2319, "guid": "6a1940c4-4585-40a6-be83-cc939fc7ad71", "isActive": true, "balance": "$2,816.60", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Earlene Carson", "gender": "female", "company": "NAVIR", "email": "earlenecarson@navir.com", "phone": "+1 (828) 514-3401", "address": "212 Riverdale Avenue, Glidden, Guam, 4890", "about": "Deserunt anim ex mollit labore sunt fugiat irure ea officia nostrud cillum ut sunt Lorem. Aute quis velit consequat eiusmod nulla ex irure commodo ad dolor aute. Do exercitation eiusmod laborum anim deserunt cillum nulla culpa Lorem aliquip mollit dolore aliquip. Anim dolor laboris dolore nisi commodo nulla excepteur.\r\n", "registered": "2014-08-01T23:57:17-12:00", "latitude": -83.251782, "longitude": -174.614077, "tags": [ "dolor", "ea", "sunt", "in", "esse", "sunt", "consectetur" ], "friends": [ { "id": 0, "name": "Orr Michael" }, { "id": 1, "name": "Adkins Bond" }, { "id": 2, "name": "Ladonna Banks" } ], "greeting": "Hello, Earlene Carson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea240af152d1d06fdd28", "index": 2320, "guid": "2f570249-4357-4c27-bfb9-cc92e81e9db6", "isActive": false, "balance": "$1,567.92", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Noemi Conley", "gender": "female", "company": "ZILENCIO", "email": "noemiconley@zilencio.com", "phone": "+1 (925) 515-3576", "address": "350 Cameron Court, Castleton, Virgin Islands, 539", "about": "Voluptate sit eiusmod nostrud nostrud irure laboris. Ea fugiat consequat ea sit aliquip laborum ullamco. In do excepteur ea excepteur fugiat aliqua. Sit aliqua incididunt elit Lorem cupidatat pariatur non nulla laboris ullamco cillum esse. Eiusmod ea elit tempor est irure. Deserunt ea tempor consequat eiusmod magna mollit et ipsum enim sit.\r\n", "registered": "2014-07-12T02:50:32-12:00", "latitude": 78.549129, "longitude": 2.224901, "tags": [ "nisi", "esse", "anim", "sint", "irure", "culpa", "tempor" ], "friends": [ { "id": 0, "name": "Rhoda Riddle" }, { "id": 1, "name": "Myrna Rosa" }, { "id": 2, "name": "Daugherty Palmer" } ], "greeting": "Hello, Noemi Conley! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24ba8e32e1e71443d0", "index": 2321, "guid": "c0e72faf-2956-4381-a77f-8625ff14be01", "isActive": true, "balance": "$3,096.05", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Darcy Mckenzie", "gender": "female", "company": "QUADEEBO", "email": "darcymckenzie@quadeebo.com", "phone": "+1 (972) 425-3361", "address": "457 Caton Place, Roeville, Massachusetts, 9562", "about": "Laboris ipsum in velit fugiat aliquip minim elit pariatur. Culpa velit mollit voluptate tempor aliquip sint sunt reprehenderit et quis ipsum occaecat proident excepteur. Duis elit aliqua fugiat consequat eiusmod reprehenderit cupidatat cillum magna veniam culpa quis. Commodo cupidatat incididunt veniam amet.\r\n", "registered": "2014-01-13T03:21:01-13:00", "latitude": 57.20595, "longitude": 128.13518, "tags": [ "labore", "dolor", "dolor", "aute", "culpa", "proident", "deserunt" ], "friends": [ { "id": 0, "name": "Dee Koch" }, { "id": 1, "name": "Curry Goodman" }, { "id": 2, "name": "Pearlie Ray" } ], "greeting": "Hello, Darcy Mckenzie! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24c1c5707e88881c0f", "index": 2322, "guid": "9b73f73b-cfdc-412a-8239-1a9b7bfed738", "isActive": true, "balance": "$1,493.57", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Castro Bradshaw", "gender": "male", "company": "MANUFACT", "email": "castrobradshaw@manufact.com", "phone": "+1 (829) 401-3152", "address": "538 Matthews Place, Suitland, Utah, 8629", "about": "Eu dolore laboris aliquip esse amet excepteur ea ullamco adipisicing ex magna. Dolor et proident adipisicing aliquip aliqua incididunt occaecat Lorem veniam non. Do anim nostrud excepteur excepteur. Cupidatat culpa commodo Lorem ea qui sint eu enim mollit in occaecat.\r\n", "registered": "2014-04-26T08:00:43-12:00", "latitude": 85.926785, "longitude": -55.270734, "tags": [ "dolor", "occaecat", "aliquip", "exercitation", "eu", "qui", "magna" ], "friends": [ { "id": 0, "name": "Teresa King" }, { "id": 1, "name": "Galloway Bender" }, { "id": 2, "name": "Louella Garza" } ], "greeting": "Hello, Castro Bradshaw! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24726a588998c45d41", "index": 2323, "guid": "b70492c7-d53e-4709-a268-1ab383d415bc", "isActive": false, "balance": "$2,431.15", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Elinor Nolan", "gender": "female", "company": "ZANYMAX", "email": "elinornolan@zanymax.com", "phone": "+1 (811) 435-3530", "address": "376 Beaumont Street, Chilton, Montana, 2240", "about": "Sit nulla excepteur reprehenderit nisi. Aliquip do do qui est sunt culpa enim quis mollit reprehenderit. Nostrud proident nisi ipsum elit magna quis dolor eu deserunt elit et occaecat anim dolore. Mollit velit excepteur eu consequat. Cupidatat irure quis ea qui laborum laboris id mollit elit officia enim.\r\n", "registered": "2014-06-07T00:47:39-12:00", "latitude": 62.315395, "longitude": 43.346137, "tags": [ "minim", "laborum", "ad", "adipisicing", "velit", "enim", "voluptate" ], "friends": [ { "id": 0, "name": "Marian Cote" }, { "id": 1, "name": "Savannah Delacruz" }, { "id": 2, "name": "Cantrell Sanders" } ], "greeting": "Hello, Elinor Nolan! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24ef52f3430b6b40b4", "index": 2324, "guid": "4b3de0f6-234d-42ae-b3bd-65211fc19cdf", "isActive": false, "balance": "$3,230.93", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Gray Ewing", "gender": "male", "company": "TOYLETRY", "email": "grayewing@toyletry.com", "phone": "+1 (991) 567-3486", "address": "439 Truxton Street, Genoa, Wisconsin, 7832", "about": "Culpa minim et veniam aliquip. Est deserunt ad ad labore reprehenderit aliqua cillum. Dolor commodo reprehenderit magna adipisicing labore dolore. Enim adipisicing voluptate tempor dolor duis dolore ut magna. Id nisi fugiat nisi in sunt adipisicing do reprehenderit exercitation. Laborum non eiusmod labore quis quis. Aliquip qui tempor esse qui minim anim dolor veniam nostrud fugiat officia excepteur.\r\n", "registered": "2014-02-03T06:20:50-13:00", "latitude": 66.807249, "longitude": -47.711107, "tags": [ "sit", "esse", "sunt", "Lorem", "sunt", "tempor", "officia" ], "friends": [ { "id": 0, "name": "Lisa Sexton" }, { "id": 1, "name": "Hale Salinas" }, { "id": 2, "name": "Alberta Alexander" } ], "greeting": "Hello, Gray Ewing! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24940b4328f99a46ae", "index": 2325, "guid": "4a570a75-3414-4524-9b7e-21f02a6161af", "isActive": false, "balance": "$1,497.95", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Erica Lane", "gender": "female", "company": "DECRATEX", "email": "ericalane@decratex.com", "phone": "+1 (865) 445-2775", "address": "503 Highland Place, Remington, Maine, 7623", "about": "Officia magna esse dolore ut tempor nulla velit et nulla cupidatat aute. Eiusmod duis incididunt do dolor dolore est elit Lorem magna. Laboris sint excepteur eiusmod officia reprehenderit. Incididunt voluptate minim eu minim tempor nostrud excepteur Lorem aute exercitation reprehenderit qui sint. Ex enim sunt cupidatat proident enim est velit tempor aliqua cillum fugiat. Nostrud proident veniam enim dolore et fugiat et minim anim tempor nisi non.\r\n", "registered": "2014-05-01T09:41:38-12:00", "latitude": 49.261052, "longitude": -60.408555, "tags": [ "deserunt", "et", "amet", "est", "proident", "aliqua", "adipisicing" ], "friends": [ { "id": 0, "name": "Laurel Kline" }, { "id": 1, "name": "Conrad Lowery" }, { "id": 2, "name": "Olive Dodson" } ], "greeting": "Hello, Erica Lane! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24b7d2169883894e39", "index": 2326, "guid": "6f883ec4-d144-4e56-b519-c4e306902849", "isActive": true, "balance": "$3,431.17", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Savage Russell", "gender": "male", "company": "XIIX", "email": "savagerussell@xiix.com", "phone": "+1 (862) 507-2303", "address": "856 Richardson Street, Hollins, Virginia, 5494", "about": "Tempor ut labore tempor ea sit sint. Enim dolor et cillum consectetur culpa dolore incididunt quis esse esse veniam nisi voluptate ut. Labore irure sunt ad commodo qui dolor reprehenderit ut elit laboris.\r\n", "registered": "2014-03-28T10:50:44-13:00", "latitude": 54.786196, "longitude": -75.561432, "tags": [ "deserunt", "in", "non", "exercitation", "est", "consectetur", "velit" ], "friends": [ { "id": 0, "name": "Steele Reese" }, { "id": 1, "name": "Winifred Short" }, { "id": 2, "name": "Shaw Cameron" } ], "greeting": "Hello, Savage Russell! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24bf9155dd5d9c35d2", "index": 2327, "guid": "2b00581b-9c3b-495e-8434-f9c1890e390a", "isActive": true, "balance": "$1,978.05", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Baird Lawrence", "gender": "male", "company": "COFINE", "email": "bairdlawrence@cofine.com", "phone": "+1 (835) 420-2031", "address": "191 Louis Place, Bangor, Kentucky, 6955", "about": "Irure veniam commodo in incididunt sit excepteur minim dolor et occaecat adipisicing tempor. Deserunt eiusmod esse elit Lorem et occaecat ex consequat exercitation Lorem. Id aliquip duis labore id nisi tempor Lorem in ex. Commodo officia esse voluptate in voluptate occaecat fugiat sunt anim consequat dolor commodo.\r\n", "registered": "2014-05-31T22:32:09-12:00", "latitude": 38.945036, "longitude": -143.33359, "tags": [ "amet", "in", "aute", "do", "cillum", "mollit", "sint" ], "friends": [ { "id": 0, "name": "Deana Small" }, { "id": 1, "name": "Shelton Wilkins" }, { "id": 2, "name": "Massey Frye" } ], "greeting": "Hello, Baird Lawrence! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2471023400994ce2ed", "index": 2328, "guid": "8fae68bd-6830-4879-b0cb-b25744a800d6", "isActive": false, "balance": "$2,852.29", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Joanne Medina", "gender": "female", "company": "VIASIA", "email": "joannemedina@viasia.com", "phone": "+1 (989) 444-3879", "address": "201 Hooper Street, Kiskimere, Connecticut, 3636", "about": "Culpa est nisi anim officia eiusmod fugiat officia aute id magna. Commodo sint nulla ad anim tempor laboris adipisicing irure ad esse consectetur velit ipsum culpa. Nostrud nulla cupidatat ea non sunt ex. Tempor mollit aliquip culpa ipsum cillum consequat et nostrud est id ullamco cupidatat. Nisi labore tempor aliqua ea elit voluptate commodo id ad consectetur nisi. Voluptate culpa nulla veniam esse ullamco irure in incididunt nulla in sunt culpa.\r\n", "registered": "2014-08-08T22:08:06-12:00", "latitude": -54.633993, "longitude": -47.965059, "tags": [ "sint", "et", "officia", "duis", "excepteur", "officia", "laboris" ], "friends": [ { "id": 0, "name": "Hughes Terry" }, { "id": 1, "name": "Jeannette Mccullough" }, { "id": 2, "name": "Ruthie Manning" } ], "greeting": "Hello, Joanne Medina! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2493096529a158da7f", "index": 2329, "guid": "ed13fddc-b4cc-49cc-8fd9-e2a5d025fdb4", "isActive": false, "balance": "$3,835.54", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Oneal Langley", "gender": "male", "company": "AUTOMON", "email": "oneallangley@automon.com", "phone": "+1 (932) 492-2736", "address": "276 Garnet Street, Limestone, Mississippi, 2275", "about": "Officia ea irure consectetur sunt aliqua occaecat excepteur velit nostrud aliqua. Excepteur ea velit elit fugiat reprehenderit dolore ea ea excepteur ex. Do consequat duis ea tempor qui.\r\n", "registered": "2014-09-21T15:43:15-12:00", "latitude": -81.632175, "longitude": 26.711605, "tags": [ "consectetur", "qui", "exercitation", "culpa", "labore", "non", "labore" ], "friends": [ { "id": 0, "name": "Torres Jackson" }, { "id": 1, "name": "Brigitte Grant" }, { "id": 2, "name": "Jennie Hatfield" } ], "greeting": "Hello, Oneal Langley! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea241eb31538b80fb0de", "index": 2330, "guid": "32e59800-f007-49e8-b2aa-d28c474e0dc9", "isActive": true, "balance": "$1,887.33", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Jensen Hodges", "gender": "male", "company": "RETRACK", "email": "jensenhodges@retrack.com", "phone": "+1 (890) 430-3081", "address": "837 Douglass Street, Ypsilanti, Washington, 9253", "about": "Dolor irure est in laborum anim nostrud adipisicing eiusmod ea ad magna est nostrud eiusmod. Ipsum ut pariatur esse duis dolor sint adipisicing cillum deserunt. Anim tempor id deserunt fugiat est. Incididunt esse Lorem irure et velit aliqua excepteur pariatur dolor. Quis ullamco sunt occaecat proident laborum sint tempor qui irure duis nostrud magna. Irure nulla proident qui anim eiusmod anim et cillum sunt dolore exercitation occaecat Lorem. Incididunt ut sit anim incididunt anim duis excepteur amet.\r\n", "registered": "2014-07-07T00:21:05-12:00", "latitude": 31.513018, "longitude": 51.249445, "tags": [ "quis", "dolore", "cillum", "et", "velit", "ad", "minim" ], "friends": [ { "id": 0, "name": "Hutchinson Trevino" }, { "id": 1, "name": "Stevens Thornton" }, { "id": 2, "name": "Vega Kelley" } ], "greeting": "Hello, Jensen Hodges! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea245cd0a63798c38799", "index": 2331, "guid": "0170920a-9a70-47dc-965d-ecc62b1aa75d", "isActive": false, "balance": "$1,140.23", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Misty Joseph", "gender": "female", "company": "NETERIA", "email": "mistyjoseph@neteria.com", "phone": "+1 (919) 569-3759", "address": "703 Carroll Street, Fredericktown, Tennessee, 9668", "about": "Irure sit ut consequat deserunt aliqua consectetur officia excepteur duis quis sint. Sit officia non et quis magna ullamco labore laboris aliqua. Irure incididunt adipisicing tempor Lorem. Duis excepteur labore non in officia sunt nisi cillum irure fugiat aute. Quis et cillum excepteur est voluptate cillum exercitation adipisicing. Ex irure tempor ea exercitation velit fugiat ad proident veniam consequat ad voluptate. Sint quis adipisicing dolore veniam occaecat eu esse ullamco dolore consequat.\r\n", "registered": "2014-05-19T16:58:57-12:00", "latitude": 2.535687, "longitude": -179.992366, "tags": [ "ex", "deserunt", "irure", "id", "incididunt", "exercitation", "proident" ], "friends": [ { "id": 0, "name": "Kara Stephens" }, { "id": 1, "name": "Christina Norman" }, { "id": 2, "name": "Kennedy Nash" } ], "greeting": "Hello, Misty Joseph! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea242fa576b8fccd910d", "index": 2332, "guid": "7aa38b95-af52-4436-bcdd-1e8e449c2519", "isActive": false, "balance": "$3,688.41", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Trisha Gibbs", "gender": "female", "company": "LOTRON", "email": "trishagibbs@lotron.com", "phone": "+1 (895) 518-3447", "address": "386 Batchelder Street, Fedora, Alabama, 9292", "about": "Et culpa eiusmod commodo amet ad proident velit et elit occaecat. Laborum ullamco sint commodo voluptate sunt reprehenderit officia pariatur. Voluptate consectetur et velit nostrud eu consequat commodo cupidatat reprehenderit non excepteur est. Duis qui sunt nisi sunt exercitation dolore in enim adipisicing veniam. Aliqua eiusmod minim magna ex Lorem. Esse sit aute laborum nulla pariatur nostrud ipsum velit id velit adipisicing ea laborum ea. Non minim veniam velit in.\r\n", "registered": "2014-03-30T19:49:43-13:00", "latitude": -59.060857, "longitude": 95.434396, "tags": [ "irure", "ea", "cillum", "nisi", "culpa", "reprehenderit", "nisi" ], "friends": [ { "id": 0, "name": "Sanchez Foreman" }, { "id": 1, "name": "Duncan Leon" }, { "id": 2, "name": "England Holt" } ], "greeting": "Hello, Trisha Gibbs! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24031fb0e9a9c897d8", "index": 2333, "guid": "74c11641-fcc1-4d0b-af2e-b21c14f22aa5", "isActive": false, "balance": "$3,965.46", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Kelsey Griffin", "gender": "female", "company": "TETRATREX", "email": "kelseygriffin@tetratrex.com", "phone": "+1 (965) 569-3093", "address": "778 Brightwater Avenue, Shaft, Ohio, 7742", "about": "Laborum elit elit qui minim magna. Magna irure duis sint elit cillum. Quis occaecat ad occaecat aliqua sunt. Laboris excepteur consectetur ea consequat laboris ex aute qui labore.\r\n", "registered": "2014-03-04T10:22:08-13:00", "latitude": 48.046915, "longitude": -168.778347, "tags": [ "labore", "pariatur", "mollit", "ex", "aute", "sint", "pariatur" ], "friends": [ { "id": 0, "name": "Dina Sutton" }, { "id": 1, "name": "Olga Woodard" }, { "id": 2, "name": "Earnestine Larsen" } ], "greeting": "Hello, Kelsey Griffin! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2435f80904a761b659", "index": 2334, "guid": "abdb370d-3a53-4330-b68b-f3d15a18f6ab", "isActive": false, "balance": "$3,845.04", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Marlene Parks", "gender": "female", "company": "RODEOLOGY", "email": "marleneparks@rodeology.com", "phone": "+1 (823) 578-3989", "address": "702 Hoyt Street, Adelino, Hawaii, 7620", "about": "Anim irure nulla aliquip consectetur do est sint aliqua quis quis. In officia commodo tempor eiusmod id dolore cupidatat esse non amet et adipisicing. Ad cillum adipisicing ullamco commodo laboris ipsum ex consequat Lorem anim labore pariatur aute esse. Fugiat labore ad pariatur magna quis fugiat. Consectetur occaecat magna pariatur ullamco laborum commodo proident eiusmod. Mollit eiusmod dolore magna tempor ullamco enim dolor nulla anim dolor quis do velit.\r\n", "registered": "2014-09-02T08:32:21-12:00", "latitude": 19.065592, "longitude": -153.778414, "tags": [ "voluptate", "culpa", "eu", "incididunt", "magna", "tempor", "culpa" ], "friends": [ { "id": 0, "name": "Ernestine Benson" }, { "id": 1, "name": "Cobb Jefferson" }, { "id": 2, "name": "Lynette Ruiz" } ], "greeting": "Hello, Marlene Parks! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24411452b4ec3b174a", "index": 2335, "guid": "29ff8ca9-bba7-4725-a3f3-9b9beef40f99", "isActive": true, "balance": "$1,031.32", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Long Mclaughlin", "gender": "male", "company": "ZILODYNE", "email": "longmclaughlin@zilodyne.com", "phone": "+1 (932) 408-2722", "address": "648 Lott Street, Richford, New Mexico, 8178", "about": "Id officia fugiat quis ut quis eu excepteur dolore. Eiusmod mollit eiusmod voluptate magna irure aute sit enim occaecat duis aute non exercitation. Exercitation reprehenderit duis est esse dolore ullamco dolore cupidatat velit. Nisi mollit cillum aute eiusmod Lorem exercitation mollit sit ipsum cillum culpa elit dolore id.\r\n", "registered": "2014-07-30T07:57:54-12:00", "latitude": 15.296181, "longitude": -3.307338, "tags": [ "ipsum", "culpa", "irure", "dolor", "ex", "sunt", "cillum" ], "friends": [ { "id": 0, "name": "Jackie Bernard" }, { "id": 1, "name": "Sandra Bonner" }, { "id": 2, "name": "Luisa Fischer" } ], "greeting": "Hello, Long Mclaughlin! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24193f53e3e2be0a37", "index": 2336, "guid": "e48a3823-0416-4e4d-a14f-201045f3e0eb", "isActive": true, "balance": "$3,945.85", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Alford Whitney", "gender": "male", "company": "COMTENT", "email": "alfordwhitney@comtent.com", "phone": "+1 (956) 538-2246", "address": "933 Putnam Avenue, Sena, Maryland, 6563", "about": "Officia fugiat aliqua commodo occaecat. Amet labore culpa adipisicing sunt duis culpa velit sit. Labore duis magna nisi exercitation do duis qui ullamco mollit anim labore pariatur Lorem. Deserunt cillum elit eiusmod incididunt elit incididunt quis cillum sint in sunt ipsum. Lorem irure deserunt Lorem reprehenderit occaecat culpa commodo dolor cillum duis nisi exercitation ad. Irure dolore non cupidatat eiusmod cupidatat laboris enim et. Excepteur cupidatat eu sunt ea culpa sit occaecat sint magna do dolor eu sint occaecat.\r\n", "registered": "2014-02-08T12:54:02-13:00", "latitude": -12.597908, "longitude": 27.154561, "tags": [ "reprehenderit", "Lorem", "esse", "id", "deserunt", "adipisicing", "est" ], "friends": [ { "id": 0, "name": "Grant Conway" }, { "id": 1, "name": "Megan Patton" }, { "id": 2, "name": "Griffin Hahn" } ], "greeting": "Hello, Alford Whitney! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2431fc89323229bff5", "index": 2337, "guid": "21764d39-12e2-488a-94ea-e124ac0e7ccc", "isActive": true, "balance": "$3,023.60", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Rosales Mcpherson", "gender": "male", "company": "EARTHPURE", "email": "rosalesmcpherson@earthpure.com", "phone": "+1 (946) 543-3839", "address": "506 Belvidere Street, Canoochee, Alaska, 4480", "about": "Adipisicing ea laborum non sit amet. Sint amet esse dolor duis aliqua aliqua do tempor incididunt fugiat anim. Cillum aute labore pariatur voluptate aliqua ea aliqua nisi enim nostrud enim sint. Cillum ipsum enim consectetur nisi. Proident ad duis et velit reprehenderit. Duis ea laborum labore officia voluptate incididunt ipsum reprehenderit minim id culpa.\r\n", "registered": "2014-01-12T00:26:11-13:00", "latitude": 21.164625, "longitude": 125.76295, "tags": [ "amet", "et", "et", "deserunt", "consectetur", "incididunt", "excepteur" ], "friends": [ { "id": 0, "name": "Georgia Cabrera" }, { "id": 1, "name": "Wendy Sanchez" }, { "id": 2, "name": "Marilyn Davidson" } ], "greeting": "Hello, Rosales Mcpherson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24d1f1fe2cce046c23", "index": 2338, "guid": "f8c08b1a-5745-480e-ba45-559f75c47f20", "isActive": true, "balance": "$2,734.10", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Mckenzie Preston", "gender": "male", "company": "PIGZART", "email": "mckenziepreston@pigzart.com", "phone": "+1 (884) 457-2644", "address": "544 Paerdegat Avenue, Maplewood, Arizona, 2979", "about": "Quis fugiat do incididunt aute incididunt sint officia occaecat consectetur ex ad eu. Non tempor occaecat eiusmod occaecat consequat. Incididunt magna reprehenderit exercitation consectetur pariatur cupidatat do sit. Incididunt commodo proident culpa velit dolor id anim tempor reprehenderit fugiat adipisicing exercitation. Ad qui commodo voluptate incididunt mollit do exercitation reprehenderit sint reprehenderit adipisicing veniam excepteur. Aute ea mollit enim anim laboris labore labore nostrud mollit.\r\n", "registered": "2014-07-30T15:21:14-12:00", "latitude": 58.466384, "longitude": 95.6244, "tags": [ "deserunt", "culpa", "occaecat", "nulla", "commodo", "id", "quis" ], "friends": [ { "id": 0, "name": "Hopper Williams" }, { "id": 1, "name": "Reba Reilly" }, { "id": 2, "name": "Webster Jacobson" } ], "greeting": "Hello, Mckenzie Preston! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea247e3691eec89b74da", "index": 2339, "guid": "4c556117-fad7-41eb-9741-145cde7d5686", "isActive": false, "balance": "$2,115.76", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Norton Jones", "gender": "male", "company": "IMANT", "email": "nortonjones@imant.com", "phone": "+1 (907) 514-3669", "address": "235 Neptune Court, Umapine, Federated States Of Micronesia, 886", "about": "Nulla ipsum reprehenderit irure occaecat consequat veniam qui quis sunt tempor cillum. Id ipsum adipisicing aliquip et irure Lorem adipisicing ullamco excepteur velit enim consectetur non consectetur. Do et occaecat cillum exercitation cupidatat fugiat ipsum ea non. Et aliquip cupidatat esse labore ipsum sit eu aliqua commodo.\r\n", "registered": "2014-05-30T15:01:26-12:00", "latitude": -21.575047, "longitude": -101.924067, "tags": [ "adipisicing", "enim", "duis", "ea", "velit", "laboris", "magna" ], "friends": [ { "id": 0, "name": "Ethel Bennett" }, { "id": 1, "name": "Julia Quinn" }, { "id": 2, "name": "Miles Zimmerman" } ], "greeting": "Hello, Norton Jones! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24330e634817f980ea", "index": 2340, "guid": "b871901d-6e88-4c3c-b5f3-b5fdd7ab59e9", "isActive": true, "balance": "$3,757.80", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Jimmie Cruz", "gender": "female", "company": "ECSTASIA", "email": "jimmiecruz@ecstasia.com", "phone": "+1 (851) 499-2299", "address": "355 Lawrence Avenue, Manitou, Oklahoma, 5826", "about": "Laboris irure duis qui occaecat culpa aute esse adipisicing pariatur voluptate ipsum. Lorem adipisicing qui voluptate laboris excepteur officia aliquip exercitation ullamco. Anim eiusmod sint excepteur irure consequat officia quis officia ullamco esse aliquip dolor. Amet sint ipsum adipisicing officia deserunt minim laboris id. Consectetur anim velit enim nulla nostrud deserunt consequat. Ullamco aliqua veniam fugiat ipsum duis.\r\n", "registered": "2014-09-07T08:33:00-12:00", "latitude": -2.186266, "longitude": 114.458701, "tags": [ "deserunt", "aliquip", "sunt", "adipisicing", "magna", "dolore", "laborum" ], "friends": [ { "id": 0, "name": "Katrina Moody" }, { "id": 1, "name": "Dillard Barton" }, { "id": 2, "name": "Luz Ayala" } ], "greeting": "Hello, Jimmie Cruz! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24eddc08f846e6396a", "index": 2341, "guid": "a7dc79a0-52fe-4656-bb4a-6169939b7749", "isActive": true, "balance": "$2,359.38", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Regina Workman", "gender": "female", "company": "VELITY", "email": "reginaworkman@velity.com", "phone": "+1 (870) 589-2926", "address": "843 Nassau Avenue, Siglerville, Michigan, 3985", "about": "Ad exercitation laboris quis sint ad nisi aliqua cillum eiusmod dolore. Anim ullamco minim enim eiusmod sit sint magna laborum sunt ea. Fugiat in aliquip incididunt pariatur laborum non commodo aliqua culpa.\r\n", "registered": "2014-06-16T06:37:34-12:00", "latitude": 3.786886, "longitude": 141.773007, "tags": [ "incididunt", "pariatur", "ex", "do", "in", "qui", "sint" ], "friends": [ { "id": 0, "name": "Newton Hopper" }, { "id": 1, "name": "Iris Turner" }, { "id": 2, "name": "Nicole Shaffer" } ], "greeting": "Hello, Regina Workman! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24cf526165e90baacc", "index": 2342, "guid": "9bfadc87-8139-4246-876d-3ec365da1de5", "isActive": true, "balance": "$3,946.50", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Ella Miranda", "gender": "female", "company": "BOILCAT", "email": "ellamiranda@boilcat.com", "phone": "+1 (924) 505-2232", "address": "892 Hull Street, Cawood, Kansas, 9760", "about": "Deserunt dolor eiusmod enim esse ipsum mollit fugiat. Do eiusmod magna amet id commodo sit est Lorem ea minim ipsum elit. Nostrud proident enim ut duis. Sint ad do commodo aliquip nisi.\r\n", "registered": "2014-07-17T12:45:16-12:00", "latitude": -18.968913, "longitude": 133.559049, "tags": [ "minim", "aliqua", "pariatur", "ipsum", "ex", "velit", "laborum" ], "friends": [ { "id": 0, "name": "Lorene Cash" }, { "id": 1, "name": "Dyer Randall" }, { "id": 2, "name": "Lenora Drake" } ], "greeting": "Hello, Ella Miranda! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2414699ad7e3cedebe", "index": 2343, "guid": "28b2c9aa-88fd-4efe-b6ce-083e9d253cec", "isActive": true, "balance": "$3,522.22", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Melba Calderon", "gender": "female", "company": "NEUROCELL", "email": "melbacalderon@neurocell.com", "phone": "+1 (817) 447-2763", "address": "358 Fairview Place, Churchill, South Dakota, 9950", "about": "Non in cillum Lorem officia. Do cupidatat consectetur fugiat eiusmod sint cillum do anim. Reprehenderit ullamco anim anim non eu sunt non id nisi esse commodo aliqua amet. Quis cillum laborum ad fugiat esse ex consectetur veniam amet ea dolor cillum. Ullamco consequat elit ad elit enim proident ut laboris. Nisi irure enim dolor laborum deserunt in sint ipsum ex consectetur veniam. Tempor incididunt in dolor nulla ea nisi et eiusmod nostrud minim.\r\n", "registered": "2014-09-04T11:36:37-12:00", "latitude": 72.899449, "longitude": -171.870745, "tags": [ "magna", "et", "culpa", "nostrud", "dolor", "deserunt", "fugiat" ], "friends": [ { "id": 0, "name": "Austin Mckinney" }, { "id": 1, "name": "Reed Estrada" }, { "id": 2, "name": "Glenna Weaver" } ], "greeting": "Hello, Melba Calderon! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24d76ff6d4edf87247", "index": 2344, "guid": "25bf2d99-9ab0-4e4a-8515-5e011146c067", "isActive": false, "balance": "$2,267.25", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Josie Welch", "gender": "female", "company": "ENERSOL", "email": "josiewelch@enersol.com", "phone": "+1 (989) 481-2059", "address": "924 Newport Street, Loyalhanna, West Virginia, 2353", "about": "Irure consectetur nulla minim quis adipisicing quis sunt occaecat exercitation. Consectetur occaecat irure Lorem irure magna laboris pariatur officia do anim do. Sit irure irure sunt laboris eiusmod velit ut non irure do eu commodo. Et occaecat adipisicing laborum voluptate eu proident nostrud velit exercitation aliqua. Nisi enim tempor sunt ut aliqua nostrud nisi.\r\n", "registered": "2014-03-05T05:55:31-13:00", "latitude": 61.446985, "longitude": -31.104863, "tags": [ "occaecat", "dolore", "non", "ea", "do", "qui", "minim" ], "friends": [ { "id": 0, "name": "Guy Durham" }, { "id": 1, "name": "Janis Woodward" }, { "id": 2, "name": "Nita Fowler" } ], "greeting": "Hello, Josie Welch! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24b892c1214a995634", "index": 2345, "guid": "4942ee09-75b7-4d11-be8c-0631cc98e8f4", "isActive": true, "balance": "$2,371.17", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Lauren Holloway", "gender": "female", "company": "QIAO", "email": "laurenholloway@qiao.com", "phone": "+1 (907) 580-2672", "address": "826 Sullivan Place, Bath, Texas, 8769", "about": "Irure fugiat minim ut elit magna ut cupidatat laborum do qui. Adipisicing ut commodo ut ad cupidatat non pariatur nisi culpa officia nisi. Culpa excepteur occaecat Lorem nisi elit. Aliqua ullamco incididunt minim id Lorem Lorem dolor culpa elit minim duis aute. Labore ea eiusmod sit quis.\r\n", "registered": "2014-03-25T10:13:21-13:00", "latitude": 66.565995, "longitude": 138.101164, "tags": [ "est", "duis", "deserunt", "est", "aute", "minim", "officia" ], "friends": [ { "id": 0, "name": "Lynnette Britt" }, { "id": 1, "name": "Koch Berg" }, { "id": 2, "name": "Felecia Moss" } ], "greeting": "Hello, Lauren Holloway! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2459583c5a9ef9e404", "index": 2346, "guid": "2b196f5a-50b9-4bcb-bd58-c34822b6b905", "isActive": false, "balance": "$3,414.21", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Green Stark", "gender": "male", "company": "QUORDATE", "email": "greenstark@quordate.com", "phone": "+1 (939) 437-2723", "address": "494 Village Court, Hackneyville, Oregon, 6279", "about": "Commodo reprehenderit adipisicing cillum proident anim id officia veniam irure amet Lorem eiusmod exercitation. Irure esse sit do velit. Qui cillum cillum labore ullamco ad labore culpa ad laboris ea nostrud commodo veniam.\r\n", "registered": "2014-07-24T13:31:02-12:00", "latitude": 81.566741, "longitude": 160.796783, "tags": [ "id", "consectetur", "ad", "do", "laborum", "tempor", "amet" ], "friends": [ { "id": 0, "name": "Melton Mendoza" }, { "id": 1, "name": "Randall Harrison" }, { "id": 2, "name": "Manuela Dickerson" } ], "greeting": "Hello, Green Stark! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea241711bc927ea68fdb", "index": 2347, "guid": "640ec2b1-e961-41c9-9454-c9f3a8e48b2b", "isActive": false, "balance": "$3,924.14", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Kerr Arnold", "gender": "male", "company": "COMTEXT", "email": "kerrarnold@comtext.com", "phone": "+1 (901) 461-2309", "address": "717 Glenmore Avenue, Kingstowne, Nevada, 3827", "about": "Enim qui consectetur enim laboris mollit dolore consectetur sint occaecat. Reprehenderit veniam tempor labore cupidatat nostrud esse. Occaecat laborum culpa ut aliquip labore irure aliquip. Excepteur nisi aliquip elit et voluptate mollit proident proident dolore dolor et.\r\n", "registered": "2014-09-01T18:37:31-12:00", "latitude": 13.417485, "longitude": 111.738091, "tags": [ "deserunt", "elit", "reprehenderit", "irure", "id", "exercitation", "culpa" ], "friends": [ { "id": 0, "name": "Carey Rodriquez" }, { "id": 1, "name": "Reynolds Guy" }, { "id": 2, "name": "Nancy Vang" } ], "greeting": "Hello, Kerr Arnold! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24374abdfc60ed485f", "index": 2348, "guid": "55d6190d-f503-4e01-a977-072a4ac4f383", "isActive": true, "balance": "$2,195.55", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Chandra Lynn", "gender": "female", "company": "ZAPHIRE", "email": "chandralynn@zaphire.com", "phone": "+1 (922) 547-2826", "address": "658 Oak Street, Sedley, Minnesota, 3489", "about": "Amet elit nostrud pariatur Lorem. Adipisicing amet aliquip in qui dolor nostrud est laborum quis magna labore reprehenderit laboris nulla. Voluptate exercitation anim do cillum consectetur do ex. Ut anim cupidatat minim quis. Veniam aute excepteur labore id cillum ullamco irure veniam consectetur nisi.\r\n", "registered": "2014-05-12T02:45:21-12:00", "latitude": -14.512293, "longitude": -60.334192, "tags": [ "ad", "irure", "do", "veniam", "excepteur", "Lorem", "enim" ], "friends": [ { "id": 0, "name": "Sarah York" }, { "id": 1, "name": "Townsend Erickson" }, { "id": 2, "name": "Pace Fields" } ], "greeting": "Hello, Chandra Lynn! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea248bd0f8776eef3581", "index": 2349, "guid": "facceaa0-4253-413f-a499-865cf703ba37", "isActive": false, "balance": "$3,768.39", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Briana Aguilar", "gender": "female", "company": "QUAREX", "email": "brianaaguilar@quarex.com", "phone": "+1 (860) 460-3405", "address": "498 Colonial Road, Fingerville, Missouri, 3540", "about": "Deserunt fugiat in velit non labore tempor consectetur nulla occaecat reprehenderit do est laborum veniam. Lorem in quis duis esse nulla deserunt. Ipsum irure pariatur eiusmod nulla excepteur. Magna qui enim tempor Lorem consequat officia labore elit sunt in aute ipsum labore. Mollit ipsum sit eiusmod sunt irure officia culpa voluptate exercitation cupidatat adipisicing dolore et ullamco. Sunt incididunt aute do proident ipsum est mollit ullamco ipsum voluptate fugiat.\r\n", "registered": "2014-08-21T08:41:12-12:00", "latitude": 37.909491, "longitude": -154.549932, "tags": [ "voluptate", "quis", "et", "esse", "pariatur", "exercitation", "Lorem" ], "friends": [ { "id": 0, "name": "Chasity Gomez" }, { "id": 1, "name": "Sosa Stewart" }, { "id": 2, "name": "Josefa Foster" } ], "greeting": "Hello, Briana Aguilar! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea245eee6457af38f5e9", "index": 2350, "guid": "fa74d76b-fadd-4cd2-89c5-28e98d2f3f39", "isActive": true, "balance": "$2,460.79", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Ollie Pacheco", "gender": "female", "company": "VITRICOMP", "email": "olliepacheco@vitricomp.com", "phone": "+1 (823) 414-2093", "address": "636 Norwood Avenue, Santel, Rhode Island, 4173", "about": "Reprehenderit pariatur sit reprehenderit dolore id. Dolor tempor adipisicing ullamco sit elit excepteur in est ullamco mollit tempor officia irure anim. Excepteur eu labore commodo ut anim. Nulla adipisicing Lorem consequat cupidatat eu Lorem. Amet ipsum aliqua sint cupidatat. Exercitation nostrud quis id eiusmod sit irure Lorem.\r\n", "registered": "2014-04-17T01:48:47-12:00", "latitude": -20.165852, "longitude": -105.185534, "tags": [ "eu", "velit", "officia", "consectetur", "voluptate", "ad", "ad" ], "friends": [ { "id": 0, "name": "Chavez Rodgers" }, { "id": 1, "name": "Gates Meyers" }, { "id": 2, "name": "Lula Roach" } ], "greeting": "Hello, Ollie Pacheco! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24ebbca544082ad8c9", "index": 2351, "guid": "7a20686d-609e-4c2e-ac33-cf2c4821dfe1", "isActive": true, "balance": "$2,521.86", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Sadie Gallegos", "gender": "female", "company": "CYTREX", "email": "sadiegallegos@cytrex.com", "phone": "+1 (868) 518-2549", "address": "726 Ditmas Avenue, Fannett, Florida, 9832", "about": "Ut nostrud esse enim occaecat irure occaecat consectetur in tempor. Aliqua sint cillum ipsum aute aute ut quis id. Aliqua reprehenderit qui velit do culpa in veniam. Consequat dolore eu ea id consequat aliqua fugiat officia adipisicing magna reprehenderit aliquip reprehenderit.\r\n", "registered": "2014-09-01T17:10:34-12:00", "latitude": 3.452008, "longitude": 165.082865, "tags": [ "sint", "nostrud", "ex", "ex", "in", "Lorem", "ea" ], "friends": [ { "id": 0, "name": "Jeannie Stokes" }, { "id": 1, "name": "Maxwell Marks" }, { "id": 2, "name": "Rosalind Woods" } ], "greeting": "Hello, Sadie Gallegos! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea246de113fb0c3e1d20", "index": 2352, "guid": "207a9f9c-3b75-4624-8fcc-8e464a32cd6b", "isActive": false, "balance": "$1,152.40", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Calhoun Briggs", "gender": "male", "company": "RODEOCEAN", "email": "calhounbriggs@rodeocean.com", "phone": "+1 (824) 525-2107", "address": "523 Dinsmore Place, Gloucester, North Carolina, 4575", "about": "Qui cillum mollit ex duis id nisi veniam consequat aliquip. In officia duis incididunt consectetur qui. Eiusmod ullamco velit et pariatur aliquip tempor laborum officia tempor anim est. Ad ex in incididunt reprehenderit labore sit. Ex magna veniam ea occaecat qui consectetur veniam esse incididunt exercitation Lorem nisi ipsum. Qui mollit deserunt amet esse.\r\n", "registered": "2014-05-27T10:37:55-12:00", "latitude": 11.539041, "longitude": 177.380889, "tags": [ "consectetur", "proident", "commodo", "do", "Lorem", "veniam", "laboris" ], "friends": [ { "id": 0, "name": "David Serrano" }, { "id": 1, "name": "Harriet Cooper" }, { "id": 2, "name": "Amy Floyd" } ], "greeting": "Hello, Calhoun Briggs! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea240f9e6dd4fb002c56", "index": 2353, "guid": "e0703523-d712-4b17-8889-2524ef2fac91", "isActive": false, "balance": "$3,477.79", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Fisher Stevenson", "gender": "male", "company": "WARETEL", "email": "fisherstevenson@waretel.com", "phone": "+1 (830) 414-3141", "address": "319 Jewel Street, Haena, New Hampshire, 9472", "about": "Aliqua exercitation do consectetur fugiat Lorem Lorem sunt ullamco nostrud mollit commodo. Deserunt cillum minim incididunt occaecat Lorem eu nisi id ex. Cillum ullamco culpa dolore adipisicing ipsum cillum exercitation cupidatat mollit amet.\r\n", "registered": "2014-02-05T15:49:00-13:00", "latitude": -40.171813, "longitude": -114.863036, "tags": [ "anim", "quis", "cupidatat", "aliquip", "duis", "nisi", "elit" ], "friends": [ { "id": 0, "name": "Randolph Sargent" }, { "id": 1, "name": "Corinne Johnston" }, { "id": 2, "name": "Cynthia Valenzuela" } ], "greeting": "Hello, Fisher Stevenson! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2418742c3689a57d48", "index": 2354, "guid": "67fd4bf6-d88b-481f-b412-e72b07714314", "isActive": true, "balance": "$2,546.38", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Watts Richards", "gender": "male", "company": "SLOFAST", "email": "wattsrichards@slofast.com", "phone": "+1 (945) 563-2509", "address": "626 Chester Court, Frizzleburg, Arkansas, 9662", "about": "Qui tempor laboris consequat incididunt minim non officia Lorem labore. Anim esse consectetur enim reprehenderit ut sit elit culpa sit nisi. Labore non commodo aliqua deserunt quis commodo labore incididunt nisi consectetur minim elit.\r\n", "registered": "2014-02-15T03:25:08-13:00", "latitude": 2.798915, "longitude": 60.797152, "tags": [ "et", "labore", "in", "laboris", "elit", "reprehenderit", "quis" ], "friends": [ { "id": 0, "name": "Elizabeth Duffy" }, { "id": 1, "name": "Hensley Blanchard" }, { "id": 2, "name": "Hamilton Craig" } ], "greeting": "Hello, Watts Richards! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24f6eee6d785dd16a3", "index": 2355, "guid": "24f6b1c3-3b8a-4275-a17c-f074f27f7945", "isActive": false, "balance": "$1,223.13", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Celia Byrd", "gender": "female", "company": "BIFLEX", "email": "celiabyrd@biflex.com", "phone": "+1 (860) 471-3242", "address": "765 Ralph Avenue, Belmont, Iowa, 9296", "about": "Adipisicing aliqua reprehenderit qui culpa excepteur qui enim. Esse velit consectetur nostrud dolor est in exercitation duis velit non. In cillum ullamco quis exercitation ut dolor duis occaecat cupidatat reprehenderit ipsum.\r\n", "registered": "2014-04-04T02:47:17-13:00", "latitude": -57.820135, "longitude": 107.272052, "tags": [ "ex", "ullamco", "irure", "qui", "est", "irure", "duis" ], "friends": [ { "id": 0, "name": "Rowena White" }, { "id": 1, "name": "Harris Hensley" }, { "id": 2, "name": "Langley Martinez" } ], "greeting": "Hello, Celia Byrd! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2411add928b958dd64", "index": 2356, "guid": "b16cc3bd-7026-4ff5-8a80-5011461f9984", "isActive": false, "balance": "$1,587.36", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Barton Richmond", "gender": "male", "company": "EWEVILLE", "email": "bartonrichmond@eweville.com", "phone": "+1 (964) 547-3839", "address": "892 Beadel Street, Swartzville, Nebraska, 4277", "about": "Duis cupidatat esse sunt reprehenderit. Eu aliqua consequat dolore incididunt proident est duis sunt ea voluptate reprehenderit quis magna. Amet cillum ullamco exercitation laboris cupidatat reprehenderit Lorem ut tempor nostrud occaecat officia nostrud consectetur. Aute et amet esse id Lorem ea ad culpa ipsum eu eiusmod. Deserunt tempor sit commodo elit qui ex non cupidatat.\r\n", "registered": "2014-06-05T04:34:58-12:00", "latitude": -49.871548, "longitude": 100.58286, "tags": [ "quis", "velit", "veniam", "ea", "ipsum", "commodo", "voluptate" ], "friends": [ { "id": 0, "name": "Pittman Mcclure" }, { "id": 1, "name": "Hahn Peters" }, { "id": 2, "name": "Carmela Lara" } ], "greeting": "Hello, Barton Richmond! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2478a7635ea1c73388", "index": 2357, "guid": "24e174cc-78d3-4b5e-a99a-4c1725824e9e", "isActive": false, "balance": "$2,169.28", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Lyons Cleveland", "gender": "male", "company": "OVERFORK", "email": "lyonscleveland@overfork.com", "phone": "+1 (846) 595-2761", "address": "285 Elton Street, Draper, District Of Columbia, 6552", "about": "Irure minim nostrud veniam voluptate ut. Deserunt sunt do proident commodo sint eu culpa. Ex adipisicing laboris laboris irure sint nisi tempor proident aliqua. Ad officia nulla sint reprehenderit pariatur qui proident fugiat ipsum eu adipisicing.\r\n", "registered": "2014-02-10T23:02:28-13:00", "latitude": 83.29487, "longitude": -124.154292, "tags": [ "proident", "aute", "nisi", "Lorem", "duis", "veniam", "deserunt" ], "friends": [ { "id": 0, "name": "Lynn Howell" }, { "id": 1, "name": "Witt Nielsen" }, { "id": 2, "name": "Rita Rhodes" } ], "greeting": "Hello, Lyons Cleveland! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24d8593fd38d7357ca", "index": 2358, "guid": "27de48bb-fdb1-46af-b41b-fd0c22fe56c6", "isActive": true, "balance": "$3,797.32", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Mercado Hartman", "gender": "male", "company": "ZAYA", "email": "mercadohartman@zaya.com", "phone": "+1 (808) 535-2829", "address": "553 Rutledge Street, Loma, New Jersey, 6417", "about": "Qui quis elit duis commodo eu. Consequat veniam ipsum aliquip duis in sunt. Consectetur sunt excepteur Lorem ipsum aliqua. Veniam fugiat consectetur pariatur mollit proident qui excepteur sint aute elit qui ut laboris. Et in officia commodo nostrud culpa ex incididunt id reprehenderit eu et.\r\n", "registered": "2014-05-05T23:43:15-12:00", "latitude": -82.920693, "longitude": 57.703472, "tags": [ "duis", "est", "pariatur", "esse", "Lorem", "excepteur", "eiusmod" ], "friends": [ { "id": 0, "name": "Nadia Travis" }, { "id": 1, "name": "Luna Wilson" }, { "id": 2, "name": "Chen Pace" } ], "greeting": "Hello, Mercado Hartman! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24792a359ce322a021", "index": 2359, "guid": "e578faa9-a643-445a-96fd-c55335b8272f", "isActive": false, "balance": "$3,910.29", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Bernard Sparks", "gender": "male", "company": "STUCCO", "email": "bernardsparks@stucco.com", "phone": "+1 (972) 589-3395", "address": "311 Liberty Avenue, Garnet, Palau, 4438", "about": "Elit laboris ea incididunt ad ullamco cillum est aute officia Lorem nulla ut pariatur. In ea ipsum exercitation esse proident qui aute pariatur fugiat do ipsum laboris adipisicing. Ad nisi laborum nulla laborum nisi fugiat nulla in qui anim non quis eu esse. Sint commodo pariatur nisi eiusmod eiusmod. Cillum occaecat magna cupidatat enim dolor laboris cupidatat ea incididunt reprehenderit ullamco. Ipsum veniam laborum cupidatat sint deserunt et fugiat.\r\n", "registered": "2014-01-09T00:17:49-13:00", "latitude": -74.359414, "longitude": 47.315766, "tags": [ "aliqua", "in", "laboris", "cillum", "do", "adipisicing", "in" ], "friends": [ { "id": 0, "name": "Barnes Patterson" }, { "id": 1, "name": "Geneva Wood" }, { "id": 2, "name": "Glass Rodriguez" } ], "greeting": "Hello, Bernard Sparks! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24acc8e6e62e728380", "index": 2360, "guid": "76469afe-5adb-4943-a172-f0dd25029cf8", "isActive": false, "balance": "$1,744.39", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Wynn Bates", "gender": "male", "company": "GINK", "email": "wynnbates@gink.com", "phone": "+1 (956) 511-3772", "address": "155 Bristol Street, Walland, Puerto Rico, 1172", "about": "Voluptate voluptate culpa voluptate velit esse nostrud excepteur non do. Est in ipsum proident eu ex do ex et aliqua id qui nulla non. Excepteur culpa in ea ad officia. Commodo id laboris do enim voluptate. Incididunt dolore nisi duis in elit enim do. Voluptate minim culpa cupidatat cupidatat. Pariatur magna fugiat Lorem sunt sint nisi incididunt.\r\n", "registered": "2014-06-16T19:11:06-12:00", "latitude": 15.068155, "longitude": -71.014522, "tags": [ "adipisicing", "excepteur", "labore", "Lorem", "magna", "ad", "eu" ], "friends": [ { "id": 0, "name": "Whitney Shepard" }, { "id": 1, "name": "Kristin Mercado" }, { "id": 2, "name": "Delacruz Fitzpatrick" } ], "greeting": "Hello, Wynn Bates! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24f3996e77b4eb729c", "index": 2361, "guid": "99ac4494-2daf-4a09-bccb-2017106d80e9", "isActive": false, "balance": "$2,506.52", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Gardner Hart", "gender": "male", "company": "BIOSPAN", "email": "gardnerhart@biospan.com", "phone": "+1 (965) 539-2111", "address": "970 Gallatin Place, Wheatfields, California, 445", "about": "Sit ea consequat consequat dolor aute commodo laboris et mollit enim aute occaecat eu. Officia anim irure laboris veniam exercitation ut occaecat. Magna laborum adipisicing mollit et cillum deserunt sint laboris. Nisi laborum in officia dolore aliquip sint eu dolore elit sunt est commodo in est.\r\n", "registered": "2014-03-30T13:46:46-13:00", "latitude": 12.535496, "longitude": -127.794442, "tags": [ "qui", "laborum", "officia", "eu", "tempor", "tempor", "ex" ], "friends": [ { "id": 0, "name": "Sofia Poole" }, { "id": 1, "name": "Brown Franks" }, { "id": 2, "name": "Lowe Watson" } ], "greeting": "Hello, Gardner Hart! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24cdfb8ec88c911ea9", "index": 2362, "guid": "0d7119f7-6e26-4619-9f77-c2d47776944f", "isActive": true, "balance": "$3,383.07", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Finley Shaw", "gender": "male", "company": "LIQUIDOC", "email": "finleyshaw@liquidoc.com", "phone": "+1 (904) 469-2840", "address": "941 Veronica Place, Avoca, Vermont, 9631", "about": "Nostrud reprehenderit ipsum do reprehenderit nisi consectetur esse non ullamco elit eu id esse. Nostrud et laboris et proident incididunt reprehenderit adipisicing veniam ut et consectetur. Non mollit laboris irure aliquip eu esse culpa ea.\r\n", "registered": "2014-03-18T06:05:31-13:00", "latitude": -3.69612, "longitude": -78.075326, "tags": [ "ex", "quis", "exercitation", "consequat", "sit", "enim", "consectetur" ], "friends": [ { "id": 0, "name": "Estela Smith" }, { "id": 1, "name": "Williams Bell" }, { "id": 2, "name": "Doris Simon" } ], "greeting": "Hello, Finley Shaw! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24df25422643aa9a8b", "index": 2363, "guid": "c4d84116-9229-42c0-a642-b3cdb3f28b97", "isActive": false, "balance": "$2,159.40", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Valentine Orr", "gender": "male", "company": "EPLODE", "email": "valentineorr@eplode.com", "phone": "+1 (861) 524-2732", "address": "829 Bridge Street, Cresaptown, Indiana, 6708", "about": "Est excepteur Lorem nulla ex laborum eu enim voluptate. Nostrud dolore deserunt sint nisi anim nisi veniam. Reprehenderit velit officia enim elit aliqua ad laborum duis aute. Ut eiusmod mollit aute amet officia commodo incididunt excepteur duis sint tempor occaecat eu. Minim minim nostrud ea exercitation. Proident consectetur incididunt nostrud esse sint.\r\n", "registered": "2014-03-18T00:53:47-13:00", "latitude": 14.689548, "longitude": 82.714972, "tags": [ "tempor", "mollit", "excepteur", "reprehenderit", "nisi", "eu", "id" ], "friends": [ { "id": 0, "name": "Mccormick Page" }, { "id": 1, "name": "Potts Greene" }, { "id": 2, "name": "Nellie Flowers" } ], "greeting": "Hello, Valentine Orr! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24c1c52e31a452ff27", "index": 2364, "guid": "bf8ae623-82aa-475b-841b-c1ffc6fdb7c8", "isActive": true, "balance": "$2,647.88", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Carol Spencer", "gender": "female", "company": "LYRICHORD", "email": "carolspencer@lyrichord.com", "phone": "+1 (834) 550-3643", "address": "911 Losee Terrace, Goodville, Illinois, 4163", "about": "Id nisi aute minim minim nisi do consequat ea excepteur qui cupidatat. Qui sint exercitation magna velit proident minim officia officia ad dolor dolor elit est. Id amet culpa elit labore excepteur adipisicing. Labore duis in occaecat mollit fugiat.\r\n", "registered": "2014-07-01T04:23:54-12:00", "latitude": 60.857721, "longitude": 32.501752, "tags": [ "dolor", "exercitation", "pariatur", "ex", "ut", "magna", "qui" ], "friends": [ { "id": 0, "name": "Phelps Booker" }, { "id": 1, "name": "Gracie Vinson" }, { "id": 2, "name": "Watkins Craft" } ], "greeting": "Hello, Carol Spencer! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea243775b1831ac212e2", "index": 2365, "guid": "d0b65383-cc10-41ec-b8a8-058c65fe17d4", "isActive": true, "balance": "$3,959.96", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Walsh Frazier", "gender": "male", "company": "SNIPS", "email": "walshfrazier@snips.com", "phone": "+1 (981) 564-2921", "address": "616 Frank Court, Levant, South Carolina, 6197", "about": "Enim ipsum sunt ut reprehenderit cupidatat. Voluptate non consectetur ullamco nisi pariatur proident. Magna cillum non mollit labore deserunt. Do amet consequat cillum quis elit exercitation qui. Irure et ex ea ad.\r\n", "registered": "2014-03-02T09:17:55-13:00", "latitude": -75.019317, "longitude": 96.72245, "tags": [ "pariatur", "id", "amet", "fugiat", "non", "id", "nulla" ], "friends": [ { "id": 0, "name": "Dominguez Guerrero" }, { "id": 1, "name": "Stephanie Francis" }, { "id": 2, "name": "Heather Wiley" } ], "greeting": "Hello, Walsh Frazier! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea247c1e7196805a87fe", "index": 2366, "guid": "72c177d0-f484-4fa4-b236-8fb6eba0b19e", "isActive": true, "balance": "$1,345.27", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Wilkinson Kelly", "gender": "male", "company": "FARMEX", "email": "wilkinsonkelly@farmex.com", "phone": "+1 (904) 490-2803", "address": "645 Conway Street, Blairstown, American Samoa, 9769", "about": "Minim nisi elit tempor incididunt anim enim id non aute enim excepteur consequat ipsum nostrud. Duis voluptate aute ullamco ut aliqua ipsum labore dolore do pariatur reprehenderit pariatur. Dolor laboris dolor ex officia dolore dolor do labore anim sit incididunt est.\r\n", "registered": "2014-03-08T21:51:07-13:00", "latitude": 56.463265, "longitude": -53.223941, "tags": [ "ullamco", "ipsum", "qui", "ut", "sit", "deserunt", "voluptate" ], "friends": [ { "id": 0, "name": "Kristy Klein" }, { "id": 1, "name": "Giles Mcbride" }, { "id": 2, "name": "Tanner Carey" } ], "greeting": "Hello, Wilkinson Kelly! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24573cfe36bd7b0c25", "index": 2367, "guid": "428a8d31-416b-4a8b-8145-0029e38580c1", "isActive": true, "balance": "$2,238.38", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Holly Fry", "gender": "female", "company": "OZEAN", "email": "hollyfry@ozean.com", "phone": "+1 (951) 543-3241", "address": "804 Columbus Place, Brazos, Delaware, 3339", "about": "Esse eu adipisicing aliquip cillum. Proident proident sunt sit do exercitation cillum ut dolore commodo ad. Commodo fugiat elit adipisicing ut. Aute fugiat occaecat ea nisi ullamco tempor exercitation aliquip officia ullamco aliqua. Enim irure ad dolore commodo. Nostrud in esse non est.\r\n", "registered": "2014-07-23T08:39:42-12:00", "latitude": 86.24043, "longitude": 1.292753, "tags": [ "ea", "tempor", "aliqua", "nostrud", "nisi", "ad", "proident" ], "friends": [ { "id": 0, "name": "Mccarthy Beasley" }, { "id": 1, "name": "Wilcox Gaines" }, { "id": 2, "name": "Terry Warner" } ], "greeting": "Hello, Holly Fry! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea241926a63aa9333b15", "index": 2368, "guid": "2c2b1fac-e8d3-403a-bd65-239968ae23b1", "isActive": false, "balance": "$1,892.46", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Pratt Henry", "gender": "male", "company": "MEDIOT", "email": "pratthenry@mediot.com", "phone": "+1 (931) 584-2957", "address": "358 Broome Street, Faywood, Pennsylvania, 1458", "about": "Qui aliquip pariatur eiusmod sit culpa sint qui consectetur do voluptate voluptate aliquip. Duis dolore ut aliqua cillum proident. Est tempor fugiat ipsum occaecat. Id enim minim eiusmod consequat culpa in qui nulla reprehenderit mollit pariatur quis est Lorem. Elit elit deserunt sint ullamco.\r\n", "registered": "2014-07-13T19:03:35-12:00", "latitude": -20.385829, "longitude": 177.826515, "tags": [ "non", "ut", "duis", "aliqua", "dolore", "velit", "ea" ], "friends": [ { "id": 0, "name": "Lambert Clark" }, { "id": 1, "name": "Maryellen Baird" }, { "id": 2, "name": "Dolly Noel" } ], "greeting": "Hello, Pratt Henry! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea249724cba4f7498374", "index": 2369, "guid": "fca08f86-482e-43b2-a7c5-859acabca49e", "isActive": false, "balance": "$3,383.72", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Jodie Dunlap", "gender": "female", "company": "GEEKETRON", "email": "jodiedunlap@geeketron.com", "phone": "+1 (969) 477-2112", "address": "529 Vanderbilt Avenue, Crisman, Georgia, 1252", "about": "Incididunt et ex laboris laborum dolor commodo anim. Eiusmod magna ut labore sit quis dolor nostrud. Do reprehenderit ea aute sint. Amet ullamco esse occaecat eiusmod ea. Minim consectetur tempor ad dolore.\r\n", "registered": "2014-01-30T01:55:53-13:00", "latitude": -76.156719, "longitude": -71.014269, "tags": [ "sit", "dolore", "nostrud", "cillum", "aute", "sunt", "ullamco" ], "friends": [ { "id": 0, "name": "Toni Kramer" }, { "id": 1, "name": "Rasmussen Hubbard" }, { "id": 2, "name": "Lancaster Petersen" } ], "greeting": "Hello, Jodie Dunlap! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2494bc37706d113e56", "index": 2370, "guid": "53511be3-bf25-4968-9d7b-d1d72b11e80c", "isActive": true, "balance": "$3,951.06", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Estella Ford", "gender": "female", "company": "UBERLUX", "email": "estellaford@uberlux.com", "phone": "+1 (936) 558-3157", "address": "488 Gold Street, Whipholt, North Dakota, 5351", "about": "In ex commodo laboris amet duis anim occaecat magna minim pariatur. Minim amet nulla laboris amet. Non ad cillum eu est nisi dolor et velit aute do officia deserunt. Eu non labore dolor non incididunt ullamco tempor anim fugiat dolore aliqua aliquip duis cillum. Qui commodo ad cillum nostrud labore aute culpa duis ipsum aliquip reprehenderit.\r\n", "registered": "2014-05-06T11:37:27-12:00", "latitude": -57.667482, "longitude": -119.772201, "tags": [ "amet", "reprehenderit", "occaecat", "non", "voluptate", "qui", "voluptate" ], "friends": [ { "id": 0, "name": "Schmidt Buck" }, { "id": 1, "name": "Reeves Harrington" }, { "id": 2, "name": "Woodward Johns" } ], "greeting": "Hello, Estella Ford! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24aaf0f6917ae457c1", "index": 2371, "guid": "a30d6106-0df4-48c5-b435-cf5a5c4d203b", "isActive": true, "balance": "$3,184.48", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Candy Montoya", "gender": "female", "company": "ULTRASURE", "email": "candymontoya@ultrasure.com", "phone": "+1 (890) 522-2207", "address": "384 Cass Place, Ahwahnee, Louisiana, 2187", "about": "Labore nulla cupidatat eiusmod est reprehenderit deserunt exercitation aliquip aute. Officia sit exercitation qui eiusmod exercitation. Ad voluptate dolore exercitation esse cillum ex ullamco laboris sunt nulla non ipsum cupidatat magna. Exercitation labore deserunt sit anim id commodo id anim ea magna. Consectetur minim ut duis ut cillum Lorem veniam eiusmod labore.\r\n", "registered": "2014-04-15T07:52:40-12:00", "latitude": -53.472241, "longitude": -112.335437, "tags": [ "elit", "Lorem", "magna", "reprehenderit", "do", "duis", "occaecat" ], "friends": [ { "id": 0, "name": "Tommie Berger" }, { "id": 1, "name": "Solis Osborne" }, { "id": 2, "name": "Short Mathis" } ], "greeting": "Hello, Candy Montoya! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea248399ff2463dbe3f0", "index": 2372, "guid": "981531f4-a8c3-4295-a7c3-e671c7baf3b5", "isActive": false, "balance": "$3,958.75", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Traci Melton", "gender": "female", "company": "COMVERGES", "email": "tracimelton@comverges.com", "phone": "+1 (963) 439-2571", "address": "569 Joval Court, Rodman, Northern Mariana Islands, 1615", "about": "Ut cillum fugiat excepteur exercitation sunt commodo laboris minim. Excepteur culpa incididunt voluptate cillum cillum proident eiusmod aute anim enim. Amet exercitation minim sit fugiat labore veniam nostrud sit quis laborum. Ut culpa qui labore incididunt magna anim. Commodo adipisicing excepteur est do quis quis est ea enim et.\r\n", "registered": "2014-05-09T08:16:28-12:00", "latitude": 72.967614, "longitude": 132.907232, "tags": [ "sunt", "eu", "officia", "anim", "nisi", "occaecat", "occaecat" ], "friends": [ { "id": 0, "name": "Castillo Eaton" }, { "id": 1, "name": "Knowles Mays" }, { "id": 2, "name": "Whitehead Gill" } ], "greeting": "Hello, Traci Melton! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24dc84949a32723bc3", "index": 2373, "guid": "7a7f3d93-1013-4b9e-a0ea-420a5c2a396a", "isActive": false, "balance": "$1,093.64", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Ingrid Wheeler", "gender": "female", "company": "JUMPSTACK", "email": "ingridwheeler@jumpstack.com", "phone": "+1 (871) 410-2495", "address": "496 Coffey Street, Washington, Colorado, 6502", "about": "Cillum est ipsum eu exercitation voluptate ad deserunt id laborum voluptate occaecat sint minim. Ea ex id duis velit id nulla reprehenderit fugiat aute. Sit cillum velit ipsum nisi id excepteur enim enim incididunt nulla nisi cillum. Amet enim aute ex do. Officia cillum amet esse voluptate nostrud. Adipisicing mollit aliquip ad cillum aute nostrud fugiat exercitation dolor ullamco esse. Sit adipisicing dolore proident non nisi nostrud.\r\n", "registered": "2014-06-27T10:42:41-12:00", "latitude": 59.034964, "longitude": -18.963594, "tags": [ "velit", "Lorem", "irure", "sint", "reprehenderit", "do", "duis" ], "friends": [ { "id": 0, "name": "Jefferson Carr" }, { "id": 1, "name": "Tracy Wolfe" }, { "id": 2, "name": "Paul Huber" } ], "greeting": "Hello, Ingrid Wheeler! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea240564aedf3e4c8932", "index": 2374, "guid": "e03794ef-7d5d-4f4b-8daa-333bd04c4792", "isActive": true, "balance": "$2,829.85", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Liza Pierce", "gender": "female", "company": "JAMNATION", "email": "lizapierce@jamnation.com", "phone": "+1 (938) 597-3192", "address": "765 Fane Court, Hobucken, Idaho, 1713", "about": "Adipisicing magna elit deserunt aliquip do Lorem duis officia ullamco consectetur. Incididunt ipsum dolore amet laborum ex tempor sit ex aute. Occaecat voluptate dolore do laborum occaecat. Consequat id laboris exercitation commodo id aliqua deserunt nisi enim mollit velit.\r\n", "registered": "2014-04-04T02:30:42-13:00", "latitude": -7.68687, "longitude": -118.891857, "tags": [ "officia", "eiusmod", "voluptate", "non", "dolor", "exercitation", "consequat" ], "friends": [ { "id": 0, "name": "Katy Merritt" }, { "id": 1, "name": "Flora Aguirre" }, { "id": 2, "name": "Love Luna" } ], "greeting": "Hello, Liza Pierce! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24beedd7b724784a65", "index": 2375, "guid": "79ea416d-e1a5-473f-99d3-b374f9b7e773", "isActive": false, "balance": "$3,180.01", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Kim Bowen", "gender": "female", "company": "ZILLA", "email": "kimbowen@zilla.com", "phone": "+1 (995) 457-3829", "address": "518 Atkins Avenue, Nicut, Marshall Islands, 9989", "about": "Veniam consectetur anim aute exercitation duis adipisicing aliquip eiusmod cillum. Adipisicing fugiat nulla duis enim qui nostrud sint consectetur quis voluptate cillum fugiat. Eiusmod dolore nisi culpa sit in officia ea duis Lorem. Anim aute commodo laboris consequat adipisicing voluptate sint sint irure quis ea qui.\r\n", "registered": "2014-07-23T18:51:29-12:00", "latitude": -22.756072, "longitude": -43.394431, "tags": [ "sunt", "Lorem", "ut", "cillum", "mollit", "ea", "enim" ], "friends": [ { "id": 0, "name": "Bright Mueller" }, { "id": 1, "name": "Josefina Duncan" }, { "id": 2, "name": "Ursula Burt" } ], "greeting": "Hello, Kim Bowen! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24648f5f42a311ccef", "index": 2376, "guid": "c81defdf-8abb-4d4a-85d0-6d12be7b82ed", "isActive": false, "balance": "$1,067.63", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Juanita Saunders", "gender": "female", "company": "EARTHMARK", "email": "juanitasaunders@earthmark.com", "phone": "+1 (881) 437-2128", "address": "598 Meeker Avenue, Salix, New York, 6729", "about": "Magna Lorem cupidatat est proident sit exercitation in minim. Ut exercitation culpa consectetur deserunt elit eu dolor non anim esse tempor aliqua proident. Nulla laboris non fugiat ullamco duis id do reprehenderit culpa enim. Commodo tempor ullamco incididunt incididunt nulla sunt commodo. Sunt ex qui amet duis ea id enim deserunt.\r\n", "registered": "2014-04-08T23:07:42-12:00", "latitude": -27.379044, "longitude": -177.168449, "tags": [ "nisi", "quis", "ullamco", "eu", "dolor", "ullamco", "pariatur" ], "friends": [ { "id": 0, "name": "Russell Caldwell" }, { "id": 1, "name": "Shannon House" }, { "id": 2, "name": "Eleanor Dudley" } ], "greeting": "Hello, Juanita Saunders! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2484c359128b72e5dc", "index": 2377, "guid": "4bf9606d-62fd-44bf-b7f4-0c7c4e1f3aa7", "isActive": false, "balance": "$2,614.93", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Rebekah Wynn", "gender": "female", "company": "IMAGINART", "email": "rebekahwynn@imaginart.com", "phone": "+1 (938) 506-2611", "address": "177 Johnson Avenue, Morningside, Guam, 4560", "about": "Ullamco duis do reprehenderit fugiat magna mollit reprehenderit. Excepteur amet aliquip deserunt velit proident. Dolor ea dolore laboris culpa culpa quis id ullamco reprehenderit quis eu.\r\n", "registered": "2014-08-22T10:23:58-12:00", "latitude": -35.926919, "longitude": -17.925518, "tags": [ "in", "veniam", "anim", "aute", "ex", "consequat", "labore" ], "friends": [ { "id": 0, "name": "Jewell Wilkinson" }, { "id": 1, "name": "Thornton Bailey" }, { "id": 2, "name": "Lilian Barry" } ], "greeting": "Hello, Rebekah Wynn! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2485d11415ff5dc8db", "index": 2378, "guid": "6b178175-aaec-4f3e-b673-636f1241d57c", "isActive": false, "balance": "$3,958.08", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Kirk Atkins", "gender": "male", "company": "EXOBLUE", "email": "kirkatkins@exoblue.com", "phone": "+1 (832) 478-2992", "address": "791 Flatlands Avenue, Ernstville, Virgin Islands, 8723", "about": "Eu elit ea mollit sunt commodo eu pariatur consequat. Occaecat eu exercitation ex voluptate adipisicing id et. Occaecat aliquip culpa id veniam aute cupidatat ex eiusmod dolore adipisicing eu non esse ut. Irure in mollit adipisicing laboris magna fugiat id deserunt. Est et culpa in ullamco commodo consectetur incididunt consequat ut anim. Voluptate nulla nisi ullamco eiusmod anim non exercitation elit et est elit deserunt cillum aliqua.\r\n", "registered": "2014-04-29T00:35:56-12:00", "latitude": 75.533347, "longitude": -79.25843, "tags": [ "laborum", "incididunt", "eiusmod", "magna", "eiusmod", "deserunt", "est" ], "friends": [ { "id": 0, "name": "Selena Donaldson" }, { "id": 1, "name": "Mae Hutchinson" }, { "id": 2, "name": "Deann Decker" } ], "greeting": "Hello, Kirk Atkins! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24f984f5dfc797113a", "index": 2379, "guid": "ecfab0b5-71fe-42b3-bcae-164f3df8a7e9", "isActive": true, "balance": "$3,877.39", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Abbott Cochran", "gender": "male", "company": "PLUTORQUE", "email": "abbottcochran@plutorque.com", "phone": "+1 (900) 523-3772", "address": "612 Stuyvesant Avenue, Unionville, Massachusetts, 4784", "about": "Deserunt eiusmod in Lorem labore eu esse quis. Occaecat officia aliquip exercitation commodo minim officia. Qui et laborum sit aliqua eiusmod eu exercitation eiusmod. Reprehenderit Lorem ut cillum est qui consectetur aliquip laboris tempor laboris.\r\n", "registered": "2014-05-09T22:51:48-12:00", "latitude": 50.533297, "longitude": -22.823022, "tags": [ "cupidatat", "eiusmod", "proident", "incididunt", "cillum", "sit", "ad" ], "friends": [ { "id": 0, "name": "Nichole Mckay" }, { "id": 1, "name": "Ginger Simpson" }, { "id": 2, "name": "Queen Everett" } ], "greeting": "Hello, Abbott Cochran! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea245709d58d7f23f998", "index": 2380, "guid": "0809a190-9467-4219-a84d-ccb3e1ba57aa", "isActive": true, "balance": "$3,464.44", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "June Delgado", "gender": "female", "company": "SOLAREN", "email": "junedelgado@solaren.com", "phone": "+1 (837) 417-2337", "address": "479 Church Lane, Healy, Utah, 8842", "about": "Dolor officia labore sit dolore magna in reprehenderit dolore commodo labore fugiat incididunt aute. Aliquip qui ullamco voluptate elit et. Quis sit aute nulla incididunt ex in fugiat. Eiusmod culpa occaecat anim laborum exercitation elit labore sunt do nostrud.\r\n", "registered": "2014-02-05T17:24:48-13:00", "latitude": -55.121065, "longitude": 115.777014, "tags": [ "aliqua", "do", "laboris", "aliquip", "veniam", "dolor", "aute" ], "friends": [ { "id": 0, "name": "Burch Mcgowan" }, { "id": 1, "name": "Edna Fleming" }, { "id": 2, "name": "Huff Burton" } ], "greeting": "Hello, June Delgado! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24755cfc948324841b", "index": 2381, "guid": "c17fafc0-f7ac-437a-bf37-637aa5a709f8", "isActive": true, "balance": "$1,330.42", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Suzette Graves", "gender": "female", "company": "SCHOOLIO", "email": "suzettegraves@schoolio.com", "phone": "+1 (914) 574-3347", "address": "366 Russell Street, Osage, Montana, 1298", "about": "Sit eiusmod enim est reprehenderit id exercitation proident in dolore velit mollit. Irure minim amet Lorem elit et non laborum excepteur laborum consectetur esse. Amet commodo est sint ex ad mollit irure aute laborum dolor consectetur in aliquip. Proident deserunt laborum cillum dolore elit dolor Lorem exercitation eu sint consequat irure Lorem elit. Est cillum non ullamco eu qui reprehenderit ex eiusmod proident qui esse.\r\n", "registered": "2014-04-15T04:00:26-12:00", "latitude": 88.279764, "longitude": -76.75051, "tags": [ "officia", "nulla", "Lorem", "occaecat", "occaecat", "ipsum", "quis" ], "friends": [ { "id": 0, "name": "Cheri Potts" }, { "id": 1, "name": "Coleen Holland" }, { "id": 2, "name": "Margret Hewitt" } ], "greeting": "Hello, Suzette Graves! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea240a20507f0d6c3359", "index": 2382, "guid": "f8efb746-1578-497a-b775-288df0f9c46d", "isActive": true, "balance": "$1,121.65", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Trujillo Porter", "gender": "male", "company": "ZORK", "email": "trujilloporter@zork.com", "phone": "+1 (913) 554-3362", "address": "417 Raleigh Place, Shindler, Wisconsin, 9439", "about": "Eiusmod esse anim eiusmod laboris pariatur culpa ut ea do in aliquip ullamco. Non tempor duis consequat cupidatat commodo fugiat nulla. Commodo id quis exercitation deserunt ad occaecat mollit in Lorem in irure elit. Sunt sit qui aliqua excepteur enim pariatur. Veniam nulla sint deserunt ad elit.\r\n", "registered": "2014-08-01T13:22:04-12:00", "latitude": 20.959273, "longitude": -25.945242, "tags": [ "in", "nostrud", "minim", "incididunt", "voluptate", "labore", "ipsum" ], "friends": [ { "id": 0, "name": "Mcfarland Callahan" }, { "id": 1, "name": "Strong Christensen" }, { "id": 2, "name": "Lloyd Salazar" } ], "greeting": "Hello, Trujillo Porter! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea246a134a8dcf8b4233", "index": 2383, "guid": "949dea82-d62f-433b-8734-102fadc6cba9", "isActive": false, "balance": "$2,984.81", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Kelley Emerson", "gender": "female", "company": "FOSSIEL", "email": "kelleyemerson@fossiel.com", "phone": "+1 (843) 576-3696", "address": "771 Martense Street, Nile, Maine, 4786", "about": "Ullamco et incididunt enim do nisi duis exercitation sint laboris esse excepteur. Dolore consequat qui exercitation pariatur exercitation ullamco quis eiusmod excepteur sunt. Quis esse amet id occaecat ea enim esse.\r\n", "registered": "2014-07-29T06:07:19-12:00", "latitude": -21.437751, "longitude": -100.568298, "tags": [ "sunt", "fugiat", "eiusmod", "esse", "id", "cupidatat", "duis" ], "friends": [ { "id": 0, "name": "Cameron Velasquez" }, { "id": 1, "name": "Hammond Chapman" }, { "id": 2, "name": "Myrtle Jennings" } ], "greeting": "Hello, Kelley Emerson! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea243c788f1ffba5cc7c", "index": 2384, "guid": "55de47d6-15c6-4e05-91d2-7e14ad9b47be", "isActive": true, "balance": "$3,435.47", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Riddle Logan", "gender": "male", "company": "KEGULAR", "email": "riddlelogan@kegular.com", "phone": "+1 (928) 458-2212", "address": "933 Blake Court, Epworth, Virginia, 8694", "about": "Consequat nulla mollit Lorem sit consectetur voluptate aliquip eu incididunt et cupidatat fugiat nisi eiusmod. Officia laboris irure aliqua labore ipsum sit dolore mollit commodo aute culpa eiusmod. Aliquip occaecat ad velit ea excepteur est. Aute occaecat qui occaecat esse sint duis reprehenderit laborum. Proident duis tempor cillum nulla cupidatat tempor culpa ea tempor quis veniam minim minim excepteur.\r\n", "registered": "2014-01-01T08:42:57-13:00", "latitude": 79.403958, "longitude": -72.736307, "tags": [ "labore", "nisi", "magna", "proident", "irure", "ea", "reprehenderit" ], "friends": [ { "id": 0, "name": "Shelley Sloan" }, { "id": 1, "name": "Maritza Lamb" }, { "id": 2, "name": "Serrano Jensen" } ], "greeting": "Hello, Riddle Logan! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea245cb923ca850c3b1a", "index": 2385, "guid": "e31e267d-b4d5-46e9-a815-9c8336114f7b", "isActive": false, "balance": "$1,062.45", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Valenzuela Carrillo", "gender": "male", "company": "ACUMENTOR", "email": "valenzuelacarrillo@acumentor.com", "phone": "+1 (942) 524-2702", "address": "979 Morton Street, Loveland, Kentucky, 3406", "about": "Enim irure pariatur dolor officia laborum officia aliqua laborum ex et et ullamco dolore ullamco. Incididunt qui elit ea mollit commodo nulla cillum elit et est sint qui eiusmod id. Mollit amet deserunt ea pariatur qui dolore aliqua dolor incididunt magna quis quis velit. Nostrud adipisicing elit est aute est anim ad incididunt consectetur cillum. Est deserunt et et sunt laborum tempor in reprehenderit. Mollit laborum Lorem dolor labore incididunt voluptate sunt commodo.\r\n", "registered": "2014-07-14T00:36:19-12:00", "latitude": -79.964997, "longitude": 88.994021, "tags": [ "exercitation", "eiusmod", "exercitation", "velit", "qui", "culpa", "ad" ], "friends": [ { "id": 0, "name": "Tessa Mccarthy" }, { "id": 1, "name": "Fletcher Salas" }, { "id": 2, "name": "Carrie Castillo" } ], "greeting": "Hello, Valenzuela Carrillo! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea248f524c4b22fb5448", "index": 2386, "guid": "151eeaba-2fab-4331-947b-0f8dc729e0cd", "isActive": false, "balance": "$3,977.13", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Bridgett Tanner", "gender": "female", "company": "QUILK", "email": "bridgetttanner@quilk.com", "phone": "+1 (908) 545-2070", "address": "945 Dennett Place, Thornport, Connecticut, 8978", "about": "Aliqua dolore Lorem aute laboris minim aliqua adipisicing ullamco. Proident nisi fugiat laborum magna excepteur aliquip labore in magna. Proident anim sunt esse aliqua cupidatat consequat fugiat voluptate pariatur consectetur cupidatat aute. Consectetur velit tempor ex ut tempor occaecat incididunt. Velit qui velit laborum cupidatat aliquip aute ut excepteur culpa culpa. Nulla qui deserunt ut sint id voluptate cillum ut incididunt est velit ad anim excepteur. Consequat excepteur ipsum dolor nisi nostrud.\r\n", "registered": "2014-02-09T14:57:51-13:00", "latitude": -63.681534, "longitude": 83.429939, "tags": [ "aliqua", "Lorem", "dolor", "ut", "ad", "proident", "mollit" ], "friends": [ { "id": 0, "name": "Sampson Chase" }, { "id": 1, "name": "Smith Suarez" }, { "id": 2, "name": "Carlson Leonard" } ], "greeting": "Hello, Bridgett Tanner! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24ab3d1625c3403920", "index": 2387, "guid": "c0788593-0f13-406e-8f5c-70b82542ac09", "isActive": true, "balance": "$3,816.65", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Spencer Castro", "gender": "male", "company": "ZEDALIS", "email": "spencercastro@zedalis.com", "phone": "+1 (825) 441-3072", "address": "813 Graham Avenue, Manila, Mississippi, 3527", "about": "Qui anim minim esse aliqua tempor deserunt voluptate. Nostrud est do id irure id est consequat nulla deserunt. Eu amet reprehenderit nostrud magna reprehenderit deserunt exercitation ad sit quis pariatur qui.\r\n", "registered": "2014-04-18T21:49:20-12:00", "latitude": -5.175417, "longitude": -169.082582, "tags": [ "consectetur", "consectetur", "veniam", "amet", "reprehenderit", "ea", "pariatur" ], "friends": [ { "id": 0, "name": "Robyn Burks" }, { "id": 1, "name": "Goff Perry" }, { "id": 2, "name": "Mildred Hansen" } ], "greeting": "Hello, Spencer Castro! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24872168a2bc2e10cd", "index": 2388, "guid": "f961042c-ba29-4cc2-a9c0-a50b31baf2df", "isActive": true, "balance": "$3,309.26", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Blevins Avery", "gender": "male", "company": "COMTRACT", "email": "blevinsavery@comtract.com", "phone": "+1 (868) 406-3523", "address": "932 Broadway , Dola, Washington, 2244", "about": "Cillum amet voluptate labore occaecat. Fugiat enim qui est in ad ad anim officia aliqua consequat. Non incididunt sit eu et. Excepteur non dolor quis incididunt occaecat ea aliquip veniam nulla adipisicing occaecat cillum aliquip.\r\n", "registered": "2014-05-31T22:23:42-12:00", "latitude": -65.024041, "longitude": 1.343836, "tags": [ "labore", "quis", "qui", "mollit", "cupidatat", "proident", "sit" ], "friends": [ { "id": 0, "name": "George Holman" }, { "id": 1, "name": "Deirdre Boyle" }, { "id": 2, "name": "Fannie Bauer" } ], "greeting": "Hello, Blevins Avery! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24297a331345bc2012", "index": 2389, "guid": "8650e108-d744-4dfc-941f-efd1586ff1bf", "isActive": true, "balance": "$3,811.72", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "May Avila", "gender": "female", "company": "VERBUS", "email": "mayavila@verbus.com", "phone": "+1 (893) 497-3399", "address": "124 Woodruff Avenue, Mulino, Tennessee, 5833", "about": "Tempor proident Lorem fugiat laboris commodo dolor. Elit tempor exercitation eiusmod labore deserunt consequat incididunt ea excepteur consequat. Incididunt eiusmod reprehenderit anim eiusmod proident enim irure. Fugiat proident excepteur id amet eiusmod excepteur deserunt nostrud. Esse duis elit commodo incididunt enim qui eu amet esse velit dolor tempor est ullamco. Excepteur nostrud elit exercitation ea laborum enim proident. Anim excepteur culpa sint nulla est id irure magna minim incididunt consectetur aute ullamco.\r\n", "registered": "2014-03-23T20:39:55-13:00", "latitude": -41.488671, "longitude": 62.20867, "tags": [ "veniam", "nisi", "occaecat", "aliquip", "irure", "id", "laboris" ], "friends": [ { "id": 0, "name": "Becker Vazquez" }, { "id": 1, "name": "Rhonda Tucker" }, { "id": 2, "name": "Irma Swanson" } ], "greeting": "Hello, May Avila! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2400de6e02371c5f27", "index": 2390, "guid": "4eec8a09-d454-4eda-8943-706d1d1b338f", "isActive": false, "balance": "$1,095.42", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Bentley Miles", "gender": "male", "company": "MUSANPOLY", "email": "bentleymiles@musanpoly.com", "phone": "+1 (848) 432-3545", "address": "509 Clinton Street, Belleview, Alabama, 7744", "about": "Pariatur officia Lorem irure sint nisi nisi. Laboris ipsum anim adipisicing ullamco aliquip ea veniam irure nisi adipisicing officia eiusmod. Est est eiusmod irure voluptate in officia. Qui do et ad esse adipisicing proident. Pariatur quis commodo sint qui magna in dolor enim occaecat aliqua consequat. Ullamco eu ipsum voluptate elit minim consectetur cillum dolor Lorem fugiat dolore.\r\n", "registered": "2014-09-19T01:23:48-12:00", "latitude": -59.983804, "longitude": -86.015856, "tags": [ "excepteur", "est", "do", "commodo", "reprehenderit", "et", "eu" ], "friends": [ { "id": 0, "name": "Hogan Hays" }, { "id": 1, "name": "Ross Whitley" }, { "id": 2, "name": "Cherry Stone" } ], "greeting": "Hello, Bentley Miles! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24a3f8b01d5cccf734", "index": 2391, "guid": "ab5d4d09-ab93-4635-9893-549db74e52b1", "isActive": true, "balance": "$1,666.19", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Dejesus Villarreal", "gender": "male", "company": "KIGGLE", "email": "dejesusvillarreal@kiggle.com", "phone": "+1 (816) 583-3434", "address": "372 Sunnyside Avenue, Magnolia, Ohio, 5788", "about": "Eiusmod deserunt excepteur ad reprehenderit laboris officia anim id voluptate deserunt anim id. Nisi duis laboris deserunt proident aliquip mollit ipsum. Consectetur id dolore ipsum velit minim nostrud exercitation ullamco. Est aute ea minim cillum anim voluptate. Sint fugiat esse voluptate exercitation consequat enim esse nulla velit in ad non in.\r\n", "registered": "2014-06-29T09:40:38-12:00", "latitude": -10.310562, "longitude": 174.08581, "tags": [ "quis", "eu", "dolor", "aute", "do", "adipisicing", "magna" ], "friends": [ { "id": 0, "name": "Mclean Howe" }, { "id": 1, "name": "Angelica Keith" }, { "id": 2, "name": "Bishop Mayo" } ], "greeting": "Hello, Dejesus Villarreal! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea241a5e86570faa6a3b", "index": 2392, "guid": "cb08bbcc-49b7-4550-ad92-decc2a543576", "isActive": false, "balance": "$1,533.53", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Larson Rosales", "gender": "male", "company": "TERRASYS", "email": "larsonrosales@terrasys.com", "phone": "+1 (997) 456-3477", "address": "281 Rapelye Street, Nelson, Hawaii, 2273", "about": "Laborum aliquip irure consectetur consectetur incididunt dolor irure culpa magna. Non ad aliqua sunt amet sit in et adipisicing adipisicing mollit excepteur occaecat deserunt. Ad minim consectetur quis est cupidatat cillum ea cillum cupidatat.\r\n", "registered": "2014-09-16T15:47:11-12:00", "latitude": -74.846765, "longitude": 15.368411, "tags": [ "et", "officia", "laborum", "est", "velit", "irure", "ullamco" ], "friends": [ { "id": 0, "name": "Gregory Mason" }, { "id": 1, "name": "Leola Warren" }, { "id": 2, "name": "Stacie Barlow" } ], "greeting": "Hello, Larson Rosales! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24b49e034056925d58", "index": 2393, "guid": "e98d08e4-477b-4105-9fbd-0481803d8565", "isActive": false, "balance": "$2,653.65", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Coleman Davis", "gender": "male", "company": "APPLICA", "email": "colemandavis@applica.com", "phone": "+1 (972) 535-2120", "address": "173 Alton Place, Deltaville, New Mexico, 131", "about": "Non do sunt reprehenderit labore aliqua laboris. Lorem esse ullamco quis duis dolore labore. Exercitation est aute eiusmod officia cillum aliqua proident ipsum.\r\n", "registered": "2014-02-18T00:29:42-13:00", "latitude": 7.367769, "longitude": -51.852407, "tags": [ "irure", "ut", "cupidatat", "aliquip", "deserunt", "Lorem", "ad" ], "friends": [ { "id": 0, "name": "Alta Solis" }, { "id": 1, "name": "Sue Riggs" }, { "id": 2, "name": "Bowers Matthews" } ], "greeting": "Hello, Coleman Davis! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24704a32763c685939", "index": 2394, "guid": "dfd33f02-a133-4755-82be-1df0cbba6b03", "isActive": true, "balance": "$3,544.46", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Allie Petty", "gender": "female", "company": "ZIORE", "email": "alliepetty@ziore.com", "phone": "+1 (976) 562-2546", "address": "342 Eckford Street, Witmer, Maryland, 3903", "about": "Sint id incididunt do duis occaecat irure qui aliquip. Et tempor ipsum reprehenderit aliqua nisi laboris. Est in duis consectetur ex irure et enim anim consequat aliqua reprehenderit. Irure pariatur ut quis eiusmod anim anim ullamco reprehenderit sint. Proident incididunt do enim pariatur aliquip. Sint veniam consectetur ad culpa minim mollit sunt minim commodo id ad ex.\r\n", "registered": "2014-06-25T21:48:24-12:00", "latitude": -76.227591, "longitude": -105.31865, "tags": [ "magna", "eu", "commodo", "magna", "reprehenderit", "quis", "et" ], "friends": [ { "id": 0, "name": "Twila Marshall" }, { "id": 1, "name": "Jaclyn Black" }, { "id": 2, "name": "Jessica Sykes" } ], "greeting": "Hello, Allie Petty! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24a6a897c5e019589f", "index": 2395, "guid": "b4c2ea45-78df-4c65-922c-dc213d5a2710", "isActive": true, "balance": "$1,149.81", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Eugenia Becker", "gender": "female", "company": "PAWNAGRA", "email": "eugeniabecker@pawnagra.com", "phone": "+1 (853) 452-3304", "address": "251 Sedgwick Street, Crawfordsville, Alaska, 607", "about": "Aliquip cupidatat quis tempor quis cillum minim amet nulla quis. Nostrud adipisicing et laboris minim voluptate proident occaecat laboris Lorem esse incididunt. Ullamco deserunt incididunt et quis quis aliqua aliquip nostrud aute ea id esse. Amet non aliquip laborum nisi aliquip. Irure ad culpa ea aliquip deserunt commodo adipisicing occaecat ea ullamco incididunt. Elit mollit excepteur anim est nulla veniam irure pariatur. Id occaecat eiusmod fugiat irure.\r\n", "registered": "2014-05-06T20:59:28-12:00", "latitude": 65.925966, "longitude": 166.406848, "tags": [ "consectetur", "irure", "ipsum", "officia", "elit", "aliqua", "consequat" ], "friends": [ { "id": 0, "name": "Schroeder Cox" }, { "id": 1, "name": "Aileen Murphy" }, { "id": 2, "name": "Gabriela Kim" } ], "greeting": "Hello, Eugenia Becker! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2491ee70eb25c99606", "index": 2396, "guid": "b96b0649-a720-4717-a77e-e152d1badf98", "isActive": true, "balance": "$1,233.88", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Donna Stafford", "gender": "female", "company": "MAGNINA", "email": "donnastafford@magnina.com", "phone": "+1 (956) 586-3107", "address": "487 Amherst Street, Collins, Arizona, 6820", "about": "Incididunt esse laborum ea ullamco minim mollit tempor ullamco esse mollit. Aliqua eiusmod qui labore veniam non ea nulla ipsum labore. Elit ullamco non velit anim laboris proident irure duis ullamco excepteur ex fugiat pariatur.\r\n", "registered": "2014-02-24T14:39:24-13:00", "latitude": 85.69786, "longitude": -129.480462, "tags": [ "elit", "eiusmod", "laboris", "amet", "voluptate", "culpa", "ut" ], "friends": [ { "id": 0, "name": "Sally Daniel" }, { "id": 1, "name": "Solomon Hudson" }, { "id": 2, "name": "Dianna Snow" } ], "greeting": "Hello, Donna Stafford! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24cc3abf3c80e1218f", "index": 2397, "guid": "4f0a3dd7-9911-41d3-92b5-76f74fa6551f", "isActive": false, "balance": "$2,289.96", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Roy Patrick", "gender": "male", "company": "IMPERIUM", "email": "roypatrick@imperium.com", "phone": "+1 (974) 540-2172", "address": "638 Surf Avenue, Jessie, Federated States Of Micronesia, 9676", "about": "Ullamco magna esse ad mollit. Irure duis aliqua dolore duis laboris Lorem sunt aliquip exercitation sint. Nostrud exercitation adipisicing est aliquip est enim non tempor exercitation cillum incididunt laborum cillum irure. Velit deserunt enim irure irure nulla minim ex irure nulla exercitation quis aute ad consequat. Ea elit magna veniam magna in exercitation id ea Lorem anim amet duis adipisicing. Dolor labore reprehenderit deserunt in Lorem deserunt Lorem ad labore sit ullamco id eu excepteur. Ipsum incididunt occaecat in quis nisi aute nulla.\r\n", "registered": "2014-08-29T20:18:30-12:00", "latitude": -25.463809, "longitude": -0.706551, "tags": [ "magna", "sunt", "ex", "reprehenderit", "amet", "reprehenderit", "commodo" ], "friends": [ { "id": 0, "name": "Pat Padilla" }, { "id": 1, "name": "Allen Melendez" }, { "id": 2, "name": "Maynard Vasquez" } ], "greeting": "Hello, Roy Patrick! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea241b6875bd5370dd70", "index": 2398, "guid": "5fb8a093-413c-437e-8cd9-34b71b25e891", "isActive": true, "balance": "$3,789.98", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Dean Tyler", "gender": "male", "company": "VERTON", "email": "deantyler@verton.com", "phone": "+1 (845) 449-2586", "address": "303 Guernsey Street, Sexton, Oklahoma, 304", "about": "Reprehenderit veniam eiusmod pariatur veniam magna proident et qui sit. Ullamco sunt Lorem consequat cupidatat qui qui exercitation quis dolor id ipsum cupidatat. Aliqua anim velit cillum dolor aute excepteur eiusmod. Eu sint ex consectetur Lorem amet. Esse consequat laboris et enim tempor aute ipsum anim amet.\r\n", "registered": "2014-03-13T21:27:21-13:00", "latitude": -17.192706, "longitude": -130.271805, "tags": [ "adipisicing", "exercitation", "laborum", "culpa", "voluptate", "nulla", "irure" ], "friends": [ { "id": 0, "name": "Harmon Mooney" }, { "id": 1, "name": "Franco Garrison" }, { "id": 2, "name": "Ina Best" } ], "greeting": "Hello, Dean Tyler! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea249c318f64f487e2a3", "index": 2399, "guid": "2b84c064-3914-4d2b-b6ca-1147852b8b80", "isActive": true, "balance": "$1,014.76", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Madden Mccormick", "gender": "male", "company": "ENQUILITY", "email": "maddenmccormick@enquility.com", "phone": "+1 (923) 402-3346", "address": "429 Gelston Avenue, Riceville, Michigan, 8278", "about": "Mollit deserunt ex pariatur eiusmod eu ullamco. Quis incididunt quis non eu aliqua eu cillum consequat sunt aliquip occaecat tempor ex duis. Lorem adipisicing laborum dolor dolor ipsum non commodo adipisicing laboris. Incididunt do nisi pariatur eu laboris excepteur nostrud laboris Lorem.\r\n", "registered": "2014-07-05T04:48:20-12:00", "latitude": -55.642723, "longitude": -179.289446, "tags": [ "adipisicing", "sint", "commodo", "sunt", "in", "occaecat", "culpa" ], "friends": [ { "id": 0, "name": "Kathy Cross" }, { "id": 1, "name": "Leta Albert" }, { "id": 2, "name": "Abby Newton" } ], "greeting": "Hello, Madden Mccormick! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea249aaf2d3b5191c46a", "index": 2400, "guid": "316f7ce1-f816-4d22-b44b-55dde7bfce38", "isActive": false, "balance": "$1,428.30", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Gross Kemp", "gender": "male", "company": "ZANITY", "email": "grosskemp@zanity.com", "phone": "+1 (870) 527-2674", "address": "603 Greenwood Avenue, Bethany, Kansas, 9697", "about": "Labore duis eu sit anim deserunt elit ipsum ut mollit magna occaecat pariatur magna. Enim sit minim nostrud duis consequat excepteur ex voluptate. Excepteur nulla mollit sunt labore proident aliqua consequat ut. Incididunt id ex laboris aute laboris in proident sunt veniam ipsum. Aliquip minim est dolore in incididunt qui id occaecat dolore ut eu nostrud. Aute ea et non aliquip cillum tempor commodo nisi.\r\n", "registered": "2014-02-22T12:22:47-13:00", "latitude": 53.163857, "longitude": -10.947103, "tags": [ "adipisicing", "sunt", "aliqua", "magna", "cillum", "deserunt", "mollit" ], "friends": [ { "id": 0, "name": "Lolita Nelson" }, { "id": 1, "name": "Rush Duke" }, { "id": 2, "name": "Drake Perez" } ], "greeting": "Hello, Gross Kemp! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea240ef8637ad5894f2a", "index": 2401, "guid": "9be441cf-5492-47f7-b1da-350142ad3a03", "isActive": true, "balance": "$1,649.36", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Lane Hoffman", "gender": "male", "company": "OMNIGOG", "email": "lanehoffman@omnigog.com", "phone": "+1 (904) 589-3220", "address": "660 Jerome Street, Idamay, South Dakota, 108", "about": "Sint incididunt dolor non in in laborum amet aliqua eiusmod eu eu ad ipsum aliquip. Labore duis et est cillum adipisicing labore. Eu Lorem reprehenderit commodo cupidatat in consequat deserunt quis proident Lorem ex tempor. Aute ut nisi reprehenderit ut reprehenderit sint magna. Qui dolore consequat cillum id mollit dolor enim et esse voluptate tempor dolore tempor.\r\n", "registered": "2014-05-28T11:42:56-12:00", "latitude": 27.941493, "longitude": -133.246882, "tags": [ "dolor", "ad", "fugiat", "elit", "tempor", "irure", "proident" ], "friends": [ { "id": 0, "name": "Elba Waller" }, { "id": 1, "name": "Clemons Bowman" }, { "id": 2, "name": "Maryann Morales" } ], "greeting": "Hello, Lane Hoffman! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea240805d849e25cab14", "index": 2402, "guid": "a114214f-0ea0-4d13-a5ae-68f5f689f145", "isActive": true, "balance": "$3,318.90", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Levy Mejia", "gender": "male", "company": "COMVEX", "email": "levymejia@comvex.com", "phone": "+1 (853) 513-3789", "address": "830 Mill Avenue, Moquino, West Virginia, 5488", "about": "Dolor pariatur do adipisicing ipsum laborum ex magna elit tempor esse cillum est ad. Deserunt elit incididunt qui ex ipsum ad labore est irure duis. Nostrud irure velit sunt cupidatat. Quis irure ex dolor ea labore ea incididunt. Qui fugiat eu pariatur proident enim sunt. Sit duis ut reprehenderit quis consectetur fugiat labore ad dolor irure.\r\n", "registered": "2014-08-14T07:41:44-12:00", "latitude": -15.000021, "longitude": 108.225222, "tags": [ "nostrud", "adipisicing", "aliqua", "ex", "magna", "in", "consequat" ], "friends": [ { "id": 0, "name": "Yang Hurst" }, { "id": 1, "name": "Elsie Kennedy" }, { "id": 2, "name": "Terri Farrell" } ], "greeting": "Hello, Levy Mejia! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24b280367761ae64d9", "index": 2403, "guid": "914c99e6-e0fa-4129-91b0-87b595a37c50", "isActive": false, "balance": "$2,155.74", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Keith Doyle", "gender": "male", "company": "FURNIGEER", "email": "keithdoyle@furnigeer.com", "phone": "+1 (924) 579-2261", "address": "982 Benson Avenue, Allamuchy, Texas, 7212", "about": "Dolore magna sunt ad culpa. Anim nostrud pariatur et ea culpa eu fugiat enim reprehenderit id ad cillum. Incididunt qui voluptate laboris nostrud ea. Officia nisi qui duis aliqua nulla consequat ut do voluptate eu veniam labore eiusmod sunt. Est ut duis sint laboris occaecat ullamco veniam tempor adipisicing. Sunt cillum laborum fugiat officia est.\r\n", "registered": "2014-07-15T16:55:06-12:00", "latitude": 10.097687, "longitude": 58.284453, "tags": [ "veniam", "quis", "enim", "aliqua", "reprehenderit", "non", "velit" ], "friends": [ { "id": 0, "name": "Hodge Hoover" }, { "id": 1, "name": "Janell Dalton" }, { "id": 2, "name": "Booker Mcdowell" } ], "greeting": "Hello, Keith Doyle! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24aef6cd36b9e23962", "index": 2404, "guid": "8c83e29b-1412-40e5-9c35-42dc26eb34b2", "isActive": true, "balance": "$3,917.85", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Duffy Marsh", "gender": "male", "company": "NITRACYR", "email": "duffymarsh@nitracyr.com", "phone": "+1 (970) 581-3996", "address": "190 McKibben Street, Columbus, Oregon, 4541", "about": "Tempor ea ut ullamco qui irure mollit. Veniam magna laboris qui dolor enim proident nostrud. Amet culpa velit elit ut id aute enim. Culpa mollit in adipisicing quis aliqua duis proident quis aliqua anim minim ad sunt consequat. Ut anim ea cupidatat elit pariatur enim eiusmod ex veniam sunt reprehenderit. Adipisicing elit non consectetur ea cillum dolor. Velit esse sunt culpa labore nostrud reprehenderit tempor cupidatat magna.\r\n", "registered": "2014-05-21T21:02:21-12:00", "latitude": 57.086284, "longitude": 80.219543, "tags": [ "et", "deserunt", "nisi", "laboris", "aliquip", "irure", "eu" ], "friends": [ { "id": 0, "name": "Velazquez Juarez" }, { "id": 1, "name": "Tami Dillard" }, { "id": 2, "name": "Raquel Lee" } ], "greeting": "Hello, Duffy Marsh! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24ceb511eeb498a594", "index": 2405, "guid": "ed6957db-71fd-418b-83b6-296dbd289565", "isActive": false, "balance": "$3,935.03", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Golden Mayer", "gender": "male", "company": "OATFARM", "email": "goldenmayer@oatfarm.com", "phone": "+1 (855) 437-2672", "address": "171 Quentin Road, Calpine, Nevada, 9489", "about": "Exercitation eiusmod elit aliqua et Lorem ad pariatur excepteur Lorem proident. Duis labore sit labore eiusmod officia enim consequat. Anim sunt dolore minim consequat quis Lorem.\r\n", "registered": "2014-01-01T19:16:14-13:00", "latitude": -21.444476, "longitude": -20.085974, "tags": [ "ut", "culpa", "nostrud", "commodo", "duis", "culpa", "fugiat" ], "friends": [ { "id": 0, "name": "Sylvia Beard" }, { "id": 1, "name": "Alison Randolph" }, { "id": 2, "name": "Diaz Rocha" } ], "greeting": "Hello, Golden Mayer! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2406ddb77709205380", "index": 2406, "guid": "fdaa1ab2-5499-4650-b4ef-0922218c2950", "isActive": true, "balance": "$3,394.04", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Vargas Owen", "gender": "male", "company": "JETSILK", "email": "vargasowen@jetsilk.com", "phone": "+1 (886) 461-2970", "address": "256 Hanover Place, Iberia, Minnesota, 5494", "about": "Ad fugiat nulla fugiat ad laborum sint minim veniam sint aute est. Sit enim adipisicing nostrud amet eiusmod aliqua. Labore minim eiusmod culpa Lorem irure Lorem duis sit duis elit. Aute ea elit est fugiat culpa dolore ullamco. Cillum duis cupidatat consequat laborum.\r\n", "registered": "2014-05-30T14:09:02-12:00", "latitude": 89.724492, "longitude": 178.489508, "tags": [ "laborum", "esse", "sint", "eiusmod", "sunt", "laborum", "elit" ], "friends": [ { "id": 0, "name": "Jillian Justice" }, { "id": 1, "name": "Sherrie Walters" }, { "id": 2, "name": "Naomi Moon" } ], "greeting": "Hello, Vargas Owen! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2478aa0fb6887babd8", "index": 2407, "guid": "17d1e7c5-b023-423f-b5b8-eacdde05e33f", "isActive": true, "balance": "$1,365.58", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Irwin Byers", "gender": "male", "company": "BOSTONIC", "email": "irwinbyers@bostonic.com", "phone": "+1 (963) 494-2299", "address": "687 President Street, Sisquoc, Missouri, 1161", "about": "Ut occaecat et velit ad aliqua sit labore voluptate laborum laborum velit laborum. Id culpa eu commodo aliquip labore minim cillum minim elit incididunt esse. Aute non elit ea adipisicing officia. Dolor fugiat ipsum ad velit exercitation ipsum. Cupidatat adipisicing excepteur sunt veniam dolor labore reprehenderit ex consequat consequat incididunt. Fugiat incididunt nulla incididunt elit in aute proident proident aute magna.\r\n", "registered": "2014-02-24T20:18:19-13:00", "latitude": -70.586001, "longitude": 102.440415, "tags": [ "aliqua", "aute", "sit", "ex", "veniam", "anim", "qui" ], "friends": [ { "id": 0, "name": "Harrington Mcdaniel" }, { "id": 1, "name": "Ramirez Pearson" }, { "id": 2, "name": "Esther Mcintosh" } ], "greeting": "Hello, Irwin Byers! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea243118457fc844d9d9", "index": 2408, "guid": "fc9d33e4-aaa7-406e-883b-3d7ebe2d011d", "isActive": false, "balance": "$2,328.17", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Roth Robertson", "gender": "male", "company": "CODAX", "email": "rothrobertson@codax.com", "phone": "+1 (804) 459-3914", "address": "802 Linden Boulevard, Odessa, Rhode Island, 5245", "about": "Commodo laborum velit non minim exercitation exercitation do magna laborum velit pariatur nisi laboris Lorem. Aliqua voluptate mollit enim adipisicing. Duis non sunt proident enim fugiat consectetur aliqua qui ut. Anim fugiat commodo adipisicing voluptate excepteur nostrud. Non veniam culpa dolore occaecat pariatur tempor laboris qui aliquip reprehenderit reprehenderit sunt ipsum anim.\r\n", "registered": "2014-09-21T04:32:05-12:00", "latitude": 50.470767, "longitude": -120.771323, "tags": [ "id", "culpa", "aute", "velit", "laboris", "velit", "adipisicing" ], "friends": [ { "id": 0, "name": "Jocelyn Sherman" }, { "id": 1, "name": "Cannon Gillespie" }, { "id": 2, "name": "Neva Glass" } ], "greeting": "Hello, Roth Robertson! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24b2390a69e8ff0fbd", "index": 2409, "guid": "a7530d8e-40f6-431e-9bf7-cc8ff80db6e1", "isActive": true, "balance": "$3,840.69", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Sybil Wells", "gender": "female", "company": "MOBILDATA", "email": "sybilwells@mobildata.com", "phone": "+1 (912) 414-2204", "address": "536 Monitor Street, Tyro, Florida, 9546", "about": "Aliquip nulla ea sit nulla nisi Lorem proident. Ad officia nostrud eiusmod non nostrud sint in irure ea. Ut aute ut voluptate fugiat elit excepteur reprehenderit. Occaecat veniam velit tempor consectetur qui sint. Tempor dolor ipsum labore anim. Ea deserunt eu non aliqua labore tempor non adipisicing et occaecat aute et.\r\n", "registered": "2014-02-18T14:24:27-13:00", "latitude": -22.761535, "longitude": 57.205985, "tags": [ "duis", "qui", "amet", "nulla", "nisi", "sint", "enim" ], "friends": [ { "id": 0, "name": "Liz Love" }, { "id": 1, "name": "Ashley Owens" }, { "id": 2, "name": "Liliana Levy" } ], "greeting": "Hello, Sybil Wells! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24db19ffdfbfdaab8f", "index": 2410, "guid": "256643b0-8927-4849-a2e6-601fb000842e", "isActive": false, "balance": "$2,831.16", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Kate Dillon", "gender": "female", "company": "BITTOR", "email": "katedillon@bittor.com", "phone": "+1 (980) 557-3778", "address": "234 Ide Court, Cashtown, North Carolina, 2387", "about": "Dolor laborum id eu sit reprehenderit do nulla nostrud. Esse eiusmod minim Lorem aliqua in est. Cillum enim do est fugiat dolor laboris id mollit mollit nisi. Minim ullamco cillum dolore magna qui et commodo sunt. Sit aliqua dolore sint ad. Incididunt id duis officia do mollit culpa qui. Magna ex amet dolor est.\r\n", "registered": "2014-03-21T20:46:06-13:00", "latitude": 28.601699, "longitude": 171.573201, "tags": [ "culpa", "exercitation", "fugiat", "consequat", "sit", "tempor", "tempor" ], "friends": [ { "id": 0, "name": "Faith Williamson" }, { "id": 1, "name": "Pansy Ware" }, { "id": 2, "name": "Joyner Alston" } ], "greeting": "Hello, Kate Dillon! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24710c9e991c6e2a85", "index": 2411, "guid": "df91ccf4-f359-42a7-bb72-1a52b88f15cf", "isActive": true, "balance": "$2,979.29", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Chelsea Nieves", "gender": "female", "company": "COMBOGEN", "email": "chelseanieves@combogen.com", "phone": "+1 (856) 545-2229", "address": "563 Applegate Court, Barrelville, New Hampshire, 6861", "about": "Aliqua eu irure dolor sunt. Exercitation mollit commodo ut duis nostrud adipisicing incididunt ad veniam tempor reprehenderit Lorem non laboris. Cupidatat in deserunt non do. Occaecat fugiat veniam dolor do. Veniam laboris sit ad excepteur amet cupidatat. Enim anim id quis Lorem pariatur nulla non sunt Lorem pariatur voluptate aliqua. Amet mollit dolore officia ex cupidatat ex voluptate est velit minim nostrud.\r\n", "registered": "2014-01-12T04:26:35-13:00", "latitude": -54.468238, "longitude": 135.757833, "tags": [ "cillum", "fugiat", "mollit", "do", "sit", "pariatur", "quis" ], "friends": [ { "id": 0, "name": "Gilda Deleon" }, { "id": 1, "name": "Susana Parrish" }, { "id": 2, "name": "Nieves Farley" } ], "greeting": "Hello, Chelsea Nieves! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2444ef428423fd014e", "index": 2412, "guid": "3b8fd838-be1d-4f2f-947d-7655d366f674", "isActive": false, "balance": "$3,976.89", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Collier Pugh", "gender": "male", "company": "ZYTRAX", "email": "collierpugh@zytrax.com", "phone": "+1 (962) 507-3192", "address": "212 Midwood Street, Kula, Arkansas, 7176", "about": "Commodo incididunt mollit Lorem ex et elit nulla laborum eiusmod dolor esse cupidatat. Est proident eu excepteur eiusmod esse officia sunt deserunt sit enim eiusmod. Ullamco ipsum labore incididunt tempor pariatur qui sint labore tempor sint reprehenderit.\r\n", "registered": "2014-05-22T10:47:17-12:00", "latitude": -56.006904, "longitude": 134.095748, "tags": [ "ullamco", "laborum", "occaecat", "amet", "cupidatat", "irure", "elit" ], "friends": [ { "id": 0, "name": "Herrera Barber" }, { "id": 1, "name": "Pitts Hayes" }, { "id": 2, "name": "Dennis Pennington" } ], "greeting": "Hello, Collier Pugh! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24fe0ac8e5e42c2511", "index": 2413, "guid": "db761a35-f213-476a-8825-dd05a006bfff", "isActive": false, "balance": "$3,938.94", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Hardin May", "gender": "male", "company": "OTHERSIDE", "email": "hardinmay@otherside.com", "phone": "+1 (805) 546-3650", "address": "790 Ovington Avenue, Bawcomville, Iowa, 896", "about": "Ullamco veniam Lorem tempor voluptate adipisicing aliqua deserunt esse irure ad. Proident deserunt dolore aliquip anim. Fugiat magna anim nulla fugiat culpa minim elit nisi consectetur aute. Qui magna mollit anim enim officia.\r\n", "registered": "2014-02-15T12:11:35-13:00", "latitude": -87.958423, "longitude": -102.999475, "tags": [ "duis", "in", "amet", "magna", "id", "deserunt", "sint" ], "friends": [ { "id": 0, "name": "Lara Hyde" }, { "id": 1, "name": "Freida Nunez" }, { "id": 2, "name": "Madge Hodge" } ], "greeting": "Hello, Hardin May! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea24d4e5cb437ced7728", "index": 2414, "guid": "6bd3d73d-6146-4e8b-a28e-1df63b4b4067", "isActive": true, "balance": "$2,005.56", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Willis Dominguez", "gender": "male", "company": "TERSANKI", "email": "willisdominguez@tersanki.com", "phone": "+1 (813) 562-2706", "address": "392 Barbey Street, Hartsville/Hartley, Nebraska, 3985", "about": "Dolor duis esse ex in commodo cupidatat. Tempor voluptate laboris occaecat enim mollit. Laboris anim in sunt est et enim enim elit et sunt ad cupidatat exercitation. Id in sint ullamco quis. Duis minim esse sunt aute veniam quis eiusmod magna ullamco. Cupidatat occaecat cupidatat elit amet amet occaecat dolore commodo amet.\r\n", "registered": "2014-05-07T06:39:59-12:00", "latitude": 20.259514, "longitude": -94.57137, "tags": [ "consectetur", "ea", "nisi", "ad", "dolore", "non", "nostrud" ], "friends": [ { "id": 0, "name": "Rocha Mitchell" }, { "id": 1, "name": "Robinson Rogers" }, { "id": 2, "name": "Crawford Odom" } ], "greeting": "Hello, Willis Dominguez! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea249c80e0ac9e936bac", "index": 2415, "guid": "8899872c-1194-4a71-8cf9-577755e54cb7", "isActive": true, "balance": "$3,332.46", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Malinda Brock", "gender": "female", "company": "DIGIFAD", "email": "malindabrock@digifad.com", "phone": "+1 (978) 463-2416", "address": "528 Beverly Road, Courtland, District Of Columbia, 3873", "about": "Id eiusmod proident aute deserunt qui reprehenderit culpa elit ullamco veniam cupidatat. Commodo exercitation sit voluptate do reprehenderit cillum. Qui duis ea velit tempor reprehenderit. Aliqua ipsum labore id tempor aliquip commodo sunt culpa fugiat. Duis anim mollit sint laborum velit. Sit in nulla dolor deserunt.\r\n", "registered": "2014-02-20T19:24:17-13:00", "latitude": -39.031488, "longitude": -112.482529, "tags": [ "aute", "nostrud", "irure", "minim", "reprehenderit", "fugiat", "proident" ], "friends": [ { "id": 0, "name": "Alana Dixon" }, { "id": 1, "name": "Barlow Barnes" }, { "id": 2, "name": "Fitzpatrick Massey" } ], "greeting": "Hello, Malinda Brock! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea242c0863f3331d69a9", "index": 2416, "guid": "2d64f5c4-7e0c-4d4a-823f-c901d17bc4b8", "isActive": true, "balance": "$1,983.16", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Ramona Morton", "gender": "female", "company": "PLASMOX", "email": "ramonamorton@plasmox.com", "phone": "+1 (804) 581-3666", "address": "217 Llama Court, Cedarville, New Jersey, 3754", "about": "Quis quis mollit reprehenderit dolore nisi aute sunt non aliquip ut quis nisi sit veniam. Irure est nostrud eu Lorem aliqua sint cillum ipsum sit ea culpa occaecat. Cillum do nostrud eu ex dolore velit elit minim dolor sunt excepteur fugiat eiusmod aute. Nisi consectetur exercitation ad excepteur elit minim magna mollit veniam Lorem commodo do proident cillum. Anim reprehenderit velit consequat eu ut dolor ipsum dolore id qui consequat sit. Magna veniam mollit esse in.\r\n", "registered": "2014-08-04T08:24:06-12:00", "latitude": 49.659349, "longitude": 130.062529, "tags": [ "ex", "incididunt", "laboris", "fugiat", "consectetur", "id", "fugiat" ], "friends": [ { "id": 0, "name": "Darla Landry" }, { "id": 1, "name": "Chris Garcia" }, { "id": 2, "name": "Nona Bowers" } ], "greeting": "Hello, Ramona Morton! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea246a038a3c7159ef5c", "index": 2417, "guid": "9604b25c-710f-44fe-85d3-f9d1dd1ab1f9", "isActive": false, "balance": "$3,489.44", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Cindy Whitaker", "gender": "female", "company": "PROGENEX", "email": "cindywhitaker@progenex.com", "phone": "+1 (990) 548-3223", "address": "251 Rewe Street, Hickory, Palau, 3069", "about": "Veniam consequat commodo ut nisi qui. Fugiat ad incididunt consequat minim nulla officia. Id irure aute cupidatat aliqua amet veniam velit incididunt duis adipisicing ut. Occaecat aliqua officia elit voluptate do et eu adipisicing cupidatat sint. Eiusmod aute in sit labore dolore eu proident sunt commodo minim in. Amet consectetur esse adipisicing amet elit anim eu minim reprehenderit magna est voluptate velit.\r\n", "registered": "2014-01-24T23:13:24-13:00", "latitude": -18.611742, "longitude": 156.925034, "tags": [ "officia", "voluptate", "adipisicing", "duis", "occaecat", "ex", "nulla" ], "friends": [ { "id": 0, "name": "Terry Gordon" }, { "id": 1, "name": "Gretchen Downs" }, { "id": 2, "name": "Cruz Rose" } ], "greeting": "Hello, Cindy Whitaker! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea248a865108b1487433", "index": 2418, "guid": "c3e4c2d8-ff64-4090-a123-99720738614e", "isActive": true, "balance": "$3,192.73", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Callahan Blackwell", "gender": "male", "company": "FISHLAND", "email": "callahanblackwell@fishland.com", "phone": "+1 (943) 404-2233", "address": "904 Vandalia Avenue, Dowling, Puerto Rico, 2624", "about": "Ad nulla ullamco Lorem ipsum excepteur ipsum et occaecat aliquip. Consectetur eu eiusmod cillum nulla dolor laborum aute irure id et amet. Excepteur mollit deserunt voluptate id dolore nostrud duis irure velit eu Lorem sit. Quis nisi voluptate id occaecat duis.\r\n", "registered": "2014-08-28T23:12:49-12:00", "latitude": 41.294447, "longitude": 32.279952, "tags": [ "amet", "pariatur", "anim", "excepteur", "occaecat", "tempor", "commodo" ], "friends": [ { "id": 0, "name": "Ortega Steele" }, { "id": 1, "name": "Loraine Dorsey" }, { "id": 2, "name": "Lucia Burch" } ], "greeting": "Hello, Callahan Blackwell! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea24501f3915c8ff2a2f", "index": 2419, "guid": "ed43c7d9-72ca-4804-9875-5ec3edcd092b", "isActive": false, "balance": "$3,079.81", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Stout Miller", "gender": "male", "company": "TERAPRENE", "email": "stoutmiller@teraprene.com", "phone": "+1 (901) 582-2593", "address": "378 Ford Street, Romeville, California, 5386", "about": "Proident cupidatat pariatur do veniam. Ipsum consectetur do ullamco reprehenderit id Lorem. Laboris magna sunt deserunt ex excepteur do excepteur dolor ad pariatur officia anim. Commodo non quis incididunt adipisicing elit incididunt laborum velit.\r\n", "registered": "2014-06-06T12:51:45-12:00", "latitude": 40.380751, "longitude": 155.732791, "tags": [ "esse", "anim", "voluptate", "sit", "adipisicing", "veniam", "minim" ], "friends": [ { "id": 0, "name": "Whitney Gross" }, { "id": 1, "name": "Boyd Rowe" }, { "id": 2, "name": "Dickerson Fitzgerald" } ], "greeting": "Hello, Stout Miller! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea241b5ffca888428b78", "index": 2420, "guid": "ba5df36f-dbd8-42aa-912b-1d697e589b6b", "isActive": true, "balance": "$3,294.00", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Ora Burris", "gender": "female", "company": "AQUOAVO", "email": "oraburris@aquoavo.com", "phone": "+1 (970) 419-2234", "address": "748 Quincy Street, Thomasville, Vermont, 5128", "about": "Aliquip reprehenderit aliquip adipisicing amet qui sint et quis ut. Magna ipsum aute adipisicing sit tempor nisi aute qui dolore nulla ad ea. Quis proident tempor laboris commodo laboris est et ex culpa sint nostrud est exercitation eu.\r\n", "registered": "2014-09-14T14:49:36-12:00", "latitude": 70.902383, "longitude": -61.8246, "tags": [ "laboris", "dolore", "pariatur", "irure", "pariatur", "veniam", "enim" ], "friends": [ { "id": 0, "name": "Bridgette Case" }, { "id": 1, "name": "Valdez Hines" }, { "id": 2, "name": "Tamera Contreras" } ], "greeting": "Hello, Ora Burris! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea242a6eb26d5e2c086d", "index": 2421, "guid": "32569cfb-c193-42fe-9a03-bdf5e5b0b6b7", "isActive": true, "balance": "$1,546.21", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Stanley Chen", "gender": "male", "company": "ISOSPHERE", "email": "stanleychen@isosphere.com", "phone": "+1 (904) 527-2875", "address": "341 Underhill Avenue, Roland, Indiana, 1701", "about": "Anim ad consectetur cillum officia duis. Culpa velit sunt nulla fugiat id laboris excepteur. Laborum do ex deserunt Lorem do commodo aliquip exercitation occaecat quis nisi ad excepteur sit. In laborum labore sunt esse Lorem dolor amet commodo aute veniam aliquip nisi duis veniam. Ex do est consectetur aute ut. Commodo quis sunt aliqua est cillum fugiat minim ut voluptate.\r\n", "registered": "2014-08-19T14:12:59-12:00", "latitude": -88.82891, "longitude": -172.440442, "tags": [ "mollit", "voluptate", "dolore", "ex", "quis", "dolor", "non" ], "friends": [ { "id": 0, "name": "Lillie Bean" }, { "id": 1, "name": "Forbes Burns" }, { "id": 2, "name": "Cristina Bruce" } ], "greeting": "Hello, Stanley Chen! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea24dc593b683c75d31e", "index": 2422, "guid": "c5379e2d-f3a8-4b27-a0a9-80454b3d35f6", "isActive": true, "balance": "$2,607.45", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Berry Gilliam", "gender": "male", "company": "UNI", "email": "berrygilliam@uni.com", "phone": "+1 (885) 483-3796", "address": "511 Herkimer Court, Brutus, Illinois, 8627", "about": "Dolore ut eu do deserunt magna laboris. Irure non veniam commodo ipsum id mollit tempor exercitation aliquip est enim. Lorem ut exercitation elit excepteur. Et anim id proident et quis labore tempor nisi occaecat mollit aliquip quis eu deserunt. Labore adipisicing laboris dolor voluptate sit magna nulla aliqua eiusmod ex aliqua officia.\r\n", "registered": "2014-04-23T10:09:46-12:00", "latitude": -77.857287, "longitude": 107.385596, "tags": [ "velit", "officia", "in", "qui", "occaecat", "velit", "aliqua" ], "friends": [ { "id": 0, "name": "Michael Weiss" }, { "id": 1, "name": "Minnie Sharp" }, { "id": 2, "name": "Sheree Rivera" } ], "greeting": "Hello, Berry Gilliam! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25dc96ce18b076b9de", "index": 2423, "guid": "60fad66e-54c1-492d-8db1-9545bb69730d", "isActive": true, "balance": "$2,859.64", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Hancock Hobbs", "gender": "male", "company": "ZAGGLE", "email": "hancockhobbs@zaggle.com", "phone": "+1 (949) 579-3843", "address": "756 Royce Place, Norwood, South Carolina, 9598", "about": "Cillum eu irure esse quis cillum culpa aliqua deserunt esse magna. Laboris nisi id sit magna enim magna. Quis irure irure tempor exercitation veniam laboris deserunt irure.\r\n", "registered": "2014-06-15T18:12:02-12:00", "latitude": 78.394668, "longitude": 131.177338, "tags": [ "amet", "enim", "magna", "laboris", "velit", "sint", "nulla" ], "friends": [ { "id": 0, "name": "Caldwell Parker" }, { "id": 1, "name": "Knapp West" }, { "id": 2, "name": "Lowery Peck" } ], "greeting": "Hello, Hancock Hobbs! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2514316a0c48878f98", "index": 2424, "guid": "8a04ec1a-1c93-45db-aeb6-b9d6f25d78c3", "isActive": false, "balance": "$3,865.94", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Adriana Hogan", "gender": "female", "company": "DIGIGENE", "email": "adrianahogan@digigene.com", "phone": "+1 (874) 597-2321", "address": "948 Bushwick Court, Falconaire, American Samoa, 7846", "about": "Deserunt dolore voluptate dolore Lorem. Duis quis ad irure deserunt pariatur magna pariatur enim cupidatat id. Ullamco laboris fugiat irure nostrud nostrud cupidatat voluptate eu elit.\r\n", "registered": "2014-06-05T15:11:20-12:00", "latitude": 26.852905, "longitude": -19.674394, "tags": [ "ullamco", "est", "voluptate", "id", "reprehenderit", "ipsum", "deserunt" ], "friends": [ { "id": 0, "name": "Serena Coffey" }, { "id": 1, "name": "Erma Snider" }, { "id": 2, "name": "Aline Flores" } ], "greeting": "Hello, Adriana Hogan! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25f3910f125ba003de", "index": 2425, "guid": "f2ee4b88-623c-4742-a59b-474e8eb98173", "isActive": true, "balance": "$3,118.29", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Marquez Harrell", "gender": "male", "company": "SILODYNE", "email": "marquezharrell@silodyne.com", "phone": "+1 (979) 514-2045", "address": "957 Schenck Avenue, Stonybrook, Delaware, 5709", "about": "Incididunt ullamco quis id ex cupidatat veniam ex nisi laborum. Deserunt exercitation cillum qui non consequat id labore ipsum officia esse mollit. Elit nulla quis elit esse id elit consectetur dolor qui. Veniam ea ex proident consectetur esse dolore Lorem eu sint in anim in enim. Minim commodo mollit fugiat cupidatat aliquip deserunt tempor labore ullamco officia incididunt. Sit occaecat do amet occaecat amet irure deserunt proident quis qui occaecat.\r\n", "registered": "2014-09-07T21:33:01-12:00", "latitude": 35.53846, "longitude": -12.919139, "tags": [ "sunt", "minim", "deserunt", "fugiat", "id", "enim", "elit" ], "friends": [ { "id": 0, "name": "Eddie Henson" }, { "id": 1, "name": "Judy Booth" }, { "id": 2, "name": "Daniel Willis" } ], "greeting": "Hello, Marquez Harrell! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c80cc7049759c528", "index": 2426, "guid": "8ec005ec-cf18-4a73-afb8-d84b179f6c6d", "isActive": true, "balance": "$3,700.18", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Briggs Carpenter", "gender": "male", "company": "MANTRIX", "email": "briggscarpenter@mantrix.com", "phone": "+1 (864) 595-2441", "address": "996 Bath Avenue, Keller, Pennsylvania, 9805", "about": "Sit proident est irure qui incididunt magna esse sunt culpa ad cillum. Et fugiat tempor officia esse fugiat aliqua. Veniam enim mollit nulla sunt eu exercitation. Quis ad aliquip sit ad nostrud labore occaecat amet est ex. Minim laboris fugiat irure nisi id laborum. Exercitation tempor irure sit sunt ut.\r\n", "registered": "2014-01-11T19:56:07-13:00", "latitude": -89.998048, "longitude": -175.902839, "tags": [ "nostrud", "exercitation", "Lorem", "qui", "nisi", "cillum", "nulla" ], "friends": [ { "id": 0, "name": "Myra Pena" }, { "id": 1, "name": "Katie Washington" }, { "id": 2, "name": "Imogene Potter" } ], "greeting": "Hello, Briggs Carpenter! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25bfad51085a6b3c2d", "index": 2427, "guid": "6b0706b0-1b57-452e-a142-ea8a08ced0b9", "isActive": false, "balance": "$3,259.83", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Bettye Gates", "gender": "female", "company": "ENTALITY", "email": "bettyegates@entality.com", "phone": "+1 (813) 469-2971", "address": "889 Woodbine Street, Rivera, Georgia, 2649", "about": "Sit mollit tempor mollit ut nostrud dolore. Qui aliqua mollit ipsum commodo. Ad adipisicing ipsum tempor est esse do elit. Aliqua reprehenderit exercitation consectetur mollit enim excepteur sit ut non adipisicing sint. Mollit aliqua ut eu esse pariatur reprehenderit non.\r\n", "registered": "2014-09-14T02:09:17-12:00", "latitude": 41.106656, "longitude": 52.766616, "tags": [ "proident", "irure", "fugiat", "laboris", "fugiat", "enim", "deserunt" ], "friends": [ { "id": 0, "name": "Christensen Hopkins" }, { "id": 1, "name": "Audra Gilbert" }, { "id": 2, "name": "Rhodes Walls" } ], "greeting": "Hello, Bettye Gates! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25bde62330b6813e2b", "index": 2428, "guid": "4ce6c612-82d2-4046-855d-7023ab1303f3", "isActive": false, "balance": "$2,015.08", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Parks Franklin", "gender": "male", "company": "DYMI", "email": "parksfranklin@dymi.com", "phone": "+1 (971) 454-2684", "address": "964 Waldorf Court, Fillmore, North Dakota, 2468", "about": "Nulla laborum ea sunt ut tempor do commodo irure quis culpa ex do eu duis. Fugiat magna amet aute fugiat velit nulla adipisicing deserunt cillum. Eiusmod aliqua enim tempor eu aliqua ex anim commodo aliquip proident voluptate.\r\n", "registered": "2014-07-09T06:22:15-12:00", "latitude": 81.893861, "longitude": -140.164349, "tags": [ "adipisicing", "eiusmod", "nisi", "incididunt", "ipsum", "non", "consequat" ], "friends": [ { "id": 0, "name": "Atkins Reed" }, { "id": 1, "name": "Ayala Odonnell" }, { "id": 2, "name": "Tucker Chang" } ], "greeting": "Hello, Parks Franklin! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea250c503d48b50b5a6a", "index": 2429, "guid": "cba62812-0413-499f-9e0a-8a7bb380d1a5", "isActive": true, "balance": "$1,063.84", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Evangeline Snyder", "gender": "female", "company": "GLASSTEP", "email": "evangelinesnyder@glasstep.com", "phone": "+1 (811) 556-3568", "address": "648 Osborn Street, Marenisco, Louisiana, 3719", "about": "Ad proident magna laborum aliqua. Fugiat mollit quis irure in proident ipsum id dolor. Irure irure culpa eiusmod nisi deserunt consectetur esse cupidatat incididunt laboris amet cupidatat amet commodo. Dolore quis voluptate veniam laboris deserunt elit ex incididunt aliquip dolor nostrud do. Aliquip excepteur pariatur voluptate nisi magna ut voluptate. Non amet qui eiusmod ullamco excepteur commodo pariatur ipsum cillum minim nostrud et commodo.\r\n", "registered": "2014-02-14T06:55:34-13:00", "latitude": 73.549953, "longitude": 140.973087, "tags": [ "deserunt", "tempor", "aliqua", "consectetur", "magna", "laborum", "aliquip" ], "friends": [ { "id": 0, "name": "Patterson Elliott" }, { "id": 1, "name": "Mcclain Neal" }, { "id": 2, "name": "Fleming Boone" } ], "greeting": "Hello, Evangeline Snyder! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25231cb1968e039c48", "index": 2430, "guid": "23c58f63-c36c-407f-b3c9-a65b2d65982f", "isActive": false, "balance": "$2,261.02", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Casandra Valencia", "gender": "female", "company": "SYNKGEN", "email": "casandravalencia@synkgen.com", "phone": "+1 (960) 427-3325", "address": "508 Will Place, Stewartville, Northern Mariana Islands, 5262", "about": "Veniam fugiat ullamco cupidatat id ipsum labore sunt nisi. Nulla ad ullamco officia veniam magna. Dolor incididunt tempor non consectetur dolore velit. Laborum sint culpa nostrud et consectetur ipsum non tempor cupidatat ea excepteur.\r\n", "registered": "2014-05-15T20:24:00-12:00", "latitude": -62.743918, "longitude": 147.832614, "tags": [ "dolor", "id", "sit", "in", "nulla", "incididunt", "nulla" ], "friends": [ { "id": 0, "name": "Bonita Robinson" }, { "id": 1, "name": "Guthrie Macdonald" }, { "id": 2, "name": "Petty Santiago" } ], "greeting": "Hello, Casandra Valencia! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25b09779b87b1ea230", "index": 2431, "guid": "ca118899-b707-4ff7-bcf7-67d9a4946b9b", "isActive": false, "balance": "$2,946.73", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Denise Bartlett", "gender": "female", "company": "BIOLIVE", "email": "denisebartlett@biolive.com", "phone": "+1 (840) 551-2145", "address": "262 Strong Place, Greer, Colorado, 8538", "about": "Incididunt officia enim enim esse incididunt ullamco laboris sit commodo adipisicing. Cillum deserunt est veniam eiusmod elit. Qui sit nisi velit nostrud. Cupidatat do cillum ut dolore qui veniam aliquip adipisicing ea. Deserunt dolore Lorem eiusmod non incididunt. Lorem laborum irure duis eiusmod ipsum labore in ullamco Lorem reprehenderit ad do nostrud.\r\n", "registered": "2014-03-07T20:57:47-13:00", "latitude": 5.682728, "longitude": -15.952959, "tags": [ "mollit", "consectetur", "ut", "elit", "ut", "non", "duis" ], "friends": [ { "id": 0, "name": "Consuelo Weeks" }, { "id": 1, "name": "Arline Lott" }, { "id": 2, "name": "Cummings Oconnor" } ], "greeting": "Hello, Denise Bartlett! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea251fbaefad76f56328", "index": 2432, "guid": "49f6540c-1aec-47d4-8150-d4c773406c85", "isActive": true, "balance": "$2,514.81", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Enid Dejesus", "gender": "female", "company": "INJOY", "email": "eniddejesus@injoy.com", "phone": "+1 (817) 472-2144", "address": "753 Vine Street, Waikele, Idaho, 7405", "about": "Dolore do exercitation laboris aliqua laboris ut consectetur exercitation ipsum ad minim officia voluptate elit. Ullamco consequat Lorem cupidatat ullamco sit non reprehenderit dolore nulla proident. Culpa do do quis enim commodo ex. Sit consequat do laborum eu excepteur. Mollit ipsum nisi ex dolore do magna est nulla.\r\n", "registered": "2014-07-29T05:13:53-12:00", "latitude": 85.571555, "longitude": -8.379239, "tags": [ "duis", "amet", "incididunt", "aute", "eiusmod", "ipsum", "duis" ], "friends": [ { "id": 0, "name": "Diana Cline" }, { "id": 1, "name": "Sargent Larson" }, { "id": 2, "name": "Vera Velazquez" } ], "greeting": "Hello, Enid Dejesus! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25b832a6be119e7f6e", "index": 2433, "guid": "0ff6e97a-4064-499e-ade9-cf979f06135e", "isActive": true, "balance": "$2,496.25", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Corine Newman", "gender": "female", "company": "PLAYCE", "email": "corinenewman@playce.com", "phone": "+1 (883) 444-3910", "address": "206 Suydam Place, Utting, Marshall Islands, 5684", "about": "Cupidatat occaecat nostrud ea esse magna do excepteur esse Lorem occaecat consectetur pariatur incididunt ea. Laboris incididunt deserunt cillum minim. Culpa do velit elit anim dolor anim. Amet cupidatat exercitation nulla excepteur aliqua. Laboris culpa sunt consectetur quis amet dolore adipisicing laborum nulla. Fugiat tempor ea culpa velit proident eu magna sint.\r\n", "registered": "2014-06-29T09:05:19-12:00", "latitude": 66.184301, "longitude": -97.981036, "tags": [ "esse", "dolor", "commodo", "tempor", "voluptate", "aliqua", "pariatur" ], "friends": [ { "id": 0, "name": "Ola Dyer" }, { "id": 1, "name": "Eaton Blair" }, { "id": 2, "name": "Adrian Keller" } ], "greeting": "Hello, Corine Newman! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25ea9cdf1574955407", "index": 2434, "guid": "05bd9aee-6bae-4a53-af38-349a6cc81ab2", "isActive": false, "balance": "$2,990.79", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Tasha Hampton", "gender": "female", "company": "ZILLACON", "email": "tashahampton@zillacon.com", "phone": "+1 (951) 404-2100", "address": "299 Royce Street, Dubois, New York, 3499", "about": "Qui labore id aliquip dolore deserunt eu do esse ipsum anim. In veniam fugiat sit qui irure in cupidatat non aliqua. In irure est esse aute proident ut veniam cupidatat adipisicing pariatur ea dolor ad. Sint dolor non dolor mollit do enim fugiat. Labore nulla nulla pariatur pariatur irure esse magna nostrud pariatur. Nulla culpa in duis eiusmod elit.\r\n", "registered": "2014-08-09T09:50:30-12:00", "latitude": 35.357454, "longitude": -168.912551, "tags": [ "sint", "tempor", "dolor", "elit", "esse", "dolore", "et" ], "friends": [ { "id": 0, "name": "Mcdaniel Hernandez" }, { "id": 1, "name": "Melva Nguyen" }, { "id": 2, "name": "Goldie Ingram" } ], "greeting": "Hello, Tasha Hampton! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea257c3f0d873100f42d", "index": 2435, "guid": "217a9364-06af-411c-a9cd-7fc466919dfc", "isActive": false, "balance": "$1,983.49", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Vang Maldonado", "gender": "male", "company": "VISUALIX", "email": "vangmaldonado@visualix.com", "phone": "+1 (896) 428-3648", "address": "574 Hubbard Street, Russellville, Guam, 8740", "about": "Sunt ea consequat nulla proident duis sit officia excepteur duis pariatur in officia dolore aliqua. Adipisicing deserunt ut adipisicing exercitation consectetur culpa occaecat nisi dolor excepteur amet id. Occaecat duis nulla duis fugiat officia qui qui Lorem duis in ullamco et. Esse tempor culpa Lorem do ad do.\r\n", "registered": "2014-06-13T16:46:21-12:00", "latitude": -53.285682, "longitude": -104.301043, "tags": [ "dolor", "deserunt", "aliquip", "deserunt", "officia", "velit", "officia" ], "friends": [ { "id": 0, "name": "Mcconnell Guthrie" }, { "id": 1, "name": "Danielle Fletcher" }, { "id": 2, "name": "Della Jarvis" } ], "greeting": "Hello, Vang Maldonado! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea257d0007a136ef6815", "index": 2436, "guid": "d0f68842-4ae1-4533-ab4c-89977cf3c821", "isActive": true, "balance": "$3,239.55", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Louise Hinton", "gender": "female", "company": "SENMAO", "email": "louisehinton@senmao.com", "phone": "+1 (843) 448-2646", "address": "982 Lee Avenue, Kidder, Virgin Islands, 4609", "about": "Consequat consectetur culpa nostrud proident fugiat ex deserunt do excepteur aliquip. Culpa enim veniam nisi adipisicing laboris proident Lorem. Aute ut Lorem aliquip duis.\r\n", "registered": "2014-08-08T13:05:56-12:00", "latitude": -37.21806, "longitude": -40.168724, "tags": [ "ipsum", "ut", "tempor", "esse", "cillum", "nisi", "ex" ], "friends": [ { "id": 0, "name": "Janna Battle" }, { "id": 1, "name": "Richardson Allen" }, { "id": 2, "name": "Mathis Barrett" } ], "greeting": "Hello, Louise Hinton! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea253db98751985187bd", "index": 2437, "guid": "cc6ebcfb-82ad-4c01-b728-935cc7a2de9a", "isActive": true, "balance": "$1,620.08", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Bernadine Rojas", "gender": "female", "company": "QIMONK", "email": "bernadinerojas@qimonk.com", "phone": "+1 (978) 505-2170", "address": "249 Hopkins Street, Fidelis, Massachusetts, 4878", "about": "Deserunt veniam esse sunt nulla dolore amet et ullamco occaecat deserunt adipisicing ullamco ut amet. Sint sint non pariatur incididunt fugiat. Amet anim esse et minim ut magna proident quis duis ad ut laboris proident. Laboris officia occaecat ut sit dolor duis enim. Aliquip eu cillum et sint qui qui exercitation laboris tempor fugiat ut. Aliqua ut et ea ea exercitation eu. Magna ea tempor duis in dolore laborum et cillum minim excepteur minim proident eiusmod enim.\r\n", "registered": "2014-08-25T03:54:40-12:00", "latitude": 77.410345, "longitude": -137.043111, "tags": [ "mollit", "adipisicing", "nisi", "in", "irure", "qui", "proident" ], "friends": [ { "id": 0, "name": "Wilkerson Dotson" }, { "id": 1, "name": "Benjamin Spence" }, { "id": 2, "name": "Fay Burke" } ], "greeting": "Hello, Bernadine Rojas! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea250d39c63d1a27296d", "index": 2438, "guid": "858e1bb3-4377-4dff-98b0-a3607079c63a", "isActive": false, "balance": "$1,612.36", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Patton Rosario", "gender": "male", "company": "GEEKOLA", "email": "pattonrosario@geekola.com", "phone": "+1 (878) 584-3692", "address": "974 Florence Avenue, Websterville, Utah, 2662", "about": "Quis proident id voluptate id ea veniam dolor aliqua laboris reprehenderit. Culpa ut irure aliquip aute enim commodo aliqua adipisicing dolore. Laboris aliquip id veniam adipisicing. Reprehenderit ad sint enim proident deserunt est proident do. Ut cillum est nulla in in. In occaecat dolore consectetur excepteur labore proident. Elit enim veniam occaecat culpa pariatur tempor Lorem sit eu esse ad laboris est.\r\n", "registered": "2014-05-12T03:05:11-12:00", "latitude": -58.921204, "longitude": -169.364841, "tags": [ "reprehenderit", "incididunt", "est", "sit", "aute", "dolore", "est" ], "friends": [ { "id": 0, "name": "Rojas Stephenson" }, { "id": 1, "name": "Carissa Frederick" }, { "id": 2, "name": "Parrish Kirkland" } ], "greeting": "Hello, Patton Rosario! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea254d92246b0e652f33", "index": 2439, "guid": "82c2848f-712a-47ab-9790-b296fea5a83d", "isActive": false, "balance": "$2,760.96", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Brandie Wall", "gender": "female", "company": "TECHADE", "email": "brandiewall@techade.com", "phone": "+1 (824) 417-2981", "address": "394 Pilling Street, Rockhill, Montana, 2722", "about": "Voluptate excepteur elit deserunt exercitation amet culpa elit est Lorem reprehenderit ullamco culpa laboris qui. Ipsum esse sunt aliquip aliquip elit do nisi aute veniam enim pariatur. Eiusmod tempor magna laborum ex. Consequat tempor fugiat nisi est labore minim qui. Mollit eu laborum sit mollit velit ea anim occaecat et et velit irure esse pariatur.\r\n", "registered": "2014-07-24T11:15:53-12:00", "latitude": -2.125741, "longitude": 145.785684, "tags": [ "enim", "mollit", "sit", "nisi", "voluptate", "aliqua", "culpa" ], "friends": [ { "id": 0, "name": "Buck Parsons" }, { "id": 1, "name": "Cecelia Curtis" }, { "id": 2, "name": "Meyers Diaz" } ], "greeting": "Hello, Brandie Wall! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2548b7c6f886636167", "index": 2440, "guid": "f9bd84a6-cd3b-4d2f-97bf-d3a3558adb46", "isActive": true, "balance": "$3,071.63", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Lidia Henderson", "gender": "female", "company": "TECHTRIX", "email": "lidiahenderson@techtrix.com", "phone": "+1 (804) 545-2423", "address": "124 Irving Place, Elfrida, Wisconsin, 6292", "about": "Proident deserunt dolore sint laboris culpa aute eu. Excepteur qui fugiat esse nisi irure cupidatat sunt sit deserunt velit. Laboris commodo ipsum in incididunt adipisicing quis proident pariatur. Ex in Lorem sint officia qui incididunt duis. Nulla tempor fugiat duis voluptate excepteur nisi tempor voluptate minim cupidatat ad. Est aliquip sit cillum sit voluptate culpa duis amet commodo esse cillum elit velit. Laborum nostrud proident magna Lorem ipsum cupidatat dolor nostrud ullamco ex dolor officia enim.\r\n", "registered": "2014-03-21T18:36:18-13:00", "latitude": 2.237137, "longitude": 16.678208, "tags": [ "consectetur", "culpa", "quis", "occaecat", "ullamco", "ea", "incididunt" ], "friends": [ { "id": 0, "name": "Brooks Fisher" }, { "id": 1, "name": "Anthony Forbes" }, { "id": 2, "name": "Meredith Bass" } ], "greeting": "Hello, Lidia Henderson! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25f9326d0b9499c0f9", "index": 2441, "guid": "1ce51a55-ef69-48cc-bac2-d2ab9f258512", "isActive": false, "balance": "$2,517.17", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Barrett Rowland", "gender": "male", "company": "ESSENSIA", "email": "barrettrowland@essensia.com", "phone": "+1 (960) 449-3921", "address": "257 Etna Street, Aberdeen, Maine, 888", "about": "Laborum eiusmod laborum pariatur officia excepteur. Lorem aliquip dolore ut qui do culpa nulla proident do sunt consequat id irure. Pariatur et nulla pariatur sunt proident nisi aute do elit. Non et aliqua anim dolore minim tempor commodo culpa minim sunt. Sunt cillum laboris Lorem duis dolor excepteur ad. Pariatur nisi do labore voluptate minim et ut elit velit.\r\n", "registered": "2014-03-03T11:19:00-13:00", "latitude": 52.999624, "longitude": 89.841579, "tags": [ "sit", "sint", "ullamco", "minim", "magna", "irure", "consequat" ], "friends": [ { "id": 0, "name": "Rhea Horn" }, { "id": 1, "name": "Best Yates" }, { "id": 2, "name": "Becky Spears" } ], "greeting": "Hello, Barrett Rowland! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25edc689590ea0c45a", "index": 2442, "guid": "132dd0da-18a0-43f4-939e-9fcc06b6f164", "isActive": false, "balance": "$3,758.09", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Stacy Hester", "gender": "female", "company": "ACCEL", "email": "stacyhester@accel.com", "phone": "+1 (881) 595-2842", "address": "725 Seton Place, Yogaville, Virginia, 732", "about": "Magna officia aliqua proident tempor amet amet aute occaecat adipisicing duis elit eu Lorem nostrud. Proident qui commodo et qui dolore proident commodo esse proident. Enim ex voluptate ipsum proident. Ea dolor ipsum aliquip dolore nisi aliquip laboris adipisicing et deserunt.\r\n", "registered": "2014-04-30T03:35:23-12:00", "latitude": -3.270142, "longitude": 16.515636, "tags": [ "pariatur", "sit", "consequat", "labore", "officia", "irure", "culpa" ], "friends": [ { "id": 0, "name": "Gwen Fernandez" }, { "id": 1, "name": "Park Sweeney" }, { "id": 2, "name": "Polly Abbott" } ], "greeting": "Hello, Stacy Hester! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2534af361d1208d17d", "index": 2443, "guid": "972466ea-f577-4572-b4b1-3ca464651eae", "isActive": false, "balance": "$2,258.33", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Cabrera Kane", "gender": "male", "company": "CUJO", "email": "cabrerakane@cujo.com", "phone": "+1 (831) 433-3493", "address": "595 Utica Avenue, Bodega, Kentucky, 5421", "about": "Mollit ipsum voluptate commodo amet ut cupidatat proident quis cupidatat eu exercitation veniam ea culpa. Officia consectetur fugiat sint dolor et exercitation ea fugiat eu consectetur in elit aute. Pariatur pariatur nostrud sit magna culpa reprehenderit. Qui in aute ipsum dolore laboris aute reprehenderit duis. Est esse eu officia nisi consectetur proident. Eiusmod enim sint reprehenderit exercitation labore cillum tempor aliquip dolor irure exercitation aute.\r\n", "registered": "2014-06-20T02:48:32-12:00", "latitude": 8.078028, "longitude": 71.826704, "tags": [ "dolore", "commodo", "laboris", "elit", "sit", "qui", "non" ], "friends": [ { "id": 0, "name": "Bird Clements" }, { "id": 1, "name": "Stefanie Romero" }, { "id": 2, "name": "Leblanc Moore" } ], "greeting": "Hello, Cabrera Kane! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25153e6867b9cf9972", "index": 2444, "guid": "2ddb942b-6470-4a76-860f-6a215946c3fc", "isActive": false, "balance": "$3,900.66", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Weeks Adams", "gender": "male", "company": "BRAINCLIP", "email": "weeksadams@brainclip.com", "phone": "+1 (960) 593-3958", "address": "646 Bryant Street, Caroline, Connecticut, 7728", "about": "Ex eu Lorem adipisicing aliqua tempor exercitation do dolore cillum. Laboris et anim enim elit laboris aute consequat ipsum voluptate veniam magna ex. Consectetur ipsum ut eiusmod nulla nulla aliqua ut ea minim nisi eu. Pariatur sunt aute ea est commodo duis. Ut aute et cillum aliquip ipsum id nisi nostrud velit eiusmod Lorem duis adipisicing cillum. Aliquip non eu ipsum culpa commodo nisi sunt nulla laboris non enim in sit. Cupidatat velit cupidatat nulla elit magna excepteur voluptate pariatur eiusmod ipsum proident.\r\n", "registered": "2014-06-02T22:53:52-12:00", "latitude": -3.932926, "longitude": -41.473092, "tags": [ "in", "enim", "culpa", "eiusmod", "aliqua", "reprehenderit", "ex" ], "friends": [ { "id": 0, "name": "Hurley Mcfadden" }, { "id": 1, "name": "Vaughan Clarke" }, { "id": 2, "name": "Bethany Church" } ], "greeting": "Hello, Weeks Adams! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea250b0958eb9a2f8958", "index": 2445, "guid": "0df650e2-4c12-46c0-8500-3c1677987654", "isActive": false, "balance": "$3,604.95", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Singleton David", "gender": "male", "company": "KRAG", "email": "singletondavid@krag.com", "phone": "+1 (837) 572-3905", "address": "819 Glendale Court, Carbonville, Mississippi, 683", "about": "Irure in laboris exercitation commodo amet officia ut ad in. Anim magna est in labore. Commodo mollit dolore proident nostrud non. Consectetur irure nostrud sint mollit proident proident mollit exercitation magna nostrud irure cupidatat. Ad sint dolore sit in.\r\n", "registered": "2014-03-03T20:20:35-13:00", "latitude": 18.237277, "longitude": 63.523898, "tags": [ "voluptate", "pariatur", "non", "quis", "pariatur", "magna", "proident" ], "friends": [ { "id": 0, "name": "Elma Mcdonald" }, { "id": 1, "name": "Sabrina Lindsay" }, { "id": 2, "name": "Lila Key" } ], "greeting": "Hello, Singleton David! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25a0d4f7dbaec5c0a5", "index": 2446, "guid": "18ce42a8-536c-4c66-b447-2809537d09ad", "isActive": true, "balance": "$3,140.62", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Fox Murray", "gender": "male", "company": "MOMENTIA", "email": "foxmurray@momentia.com", "phone": "+1 (945) 497-2889", "address": "156 Roder Avenue, Whitewater, Washington, 9086", "about": "Anim velit nostrud aute excepteur nostrud officia sit voluptate aliqua. Occaecat ex magna sit eiusmod ad amet amet non dolore. Qui magna veniam laborum et dolor exercitation reprehenderit velit sit aute. Anim tempor est qui nostrud cupidatat Lorem officia nulla aute sint do reprehenderit duis tempor. Enim ullamco tempor irure veniam culpa.\r\n", "registered": "2014-05-11T22:42:03-12:00", "latitude": 13.091886, "longitude": 4.295942, "tags": [ "non", "amet", "quis", "commodo", "voluptate", "eu", "veniam" ], "friends": [ { "id": 0, "name": "Warner Phelps" }, { "id": 1, "name": "Joan Wolf" }, { "id": 2, "name": "Mcguire Hooper" } ], "greeting": "Hello, Fox Murray! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea252c3ea48b074f3cda", "index": 2447, "guid": "3e048f85-fcfb-4759-b79f-b4486df6d7e5", "isActive": true, "balance": "$3,248.41", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "White Mills", "gender": "male", "company": "OCTOCORE", "email": "whitemills@octocore.com", "phone": "+1 (813) 437-3517", "address": "992 Cherry Street, Eureka, Tennessee, 7748", "about": "Adipisicing nisi ad duis sit nisi laborum qui minim sunt aliqua. Enim consectetur ullamco sunt Lorem magna laborum do excepteur eu sint. Laborum commodo voluptate amet qui ipsum cupidatat sunt reprehenderit laborum ea sint.\r\n", "registered": "2014-06-17T14:26:57-12:00", "latitude": 69.310295, "longitude": 106.501973, "tags": [ "laboris", "mollit", "officia", "cupidatat", "duis", "aliquip", "magna" ], "friends": [ { "id": 0, "name": "Gillespie Middleton" }, { "id": 1, "name": "Elisa Hawkins" }, { "id": 2, "name": "Letitia Norris" } ], "greeting": "Hello, White Mills! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2551df4b1f34d3dc08", "index": 2448, "guid": "ce04588b-15b5-4b31-87f6-a63a138b61eb", "isActive": true, "balance": "$3,795.80", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Alisha Rich", "gender": "female", "company": "ZENTHALL", "email": "alisharich@zenthall.com", "phone": "+1 (926) 487-2292", "address": "137 Williams Court, Northchase, Alabama, 8084", "about": "Et ex mollit labore cillum veniam est nulla. Consectetur est excepteur anim qui consequat voluptate cupidatat. Pariatur ea ex irure in magna ut consectetur labore esse labore consectetur. Incididunt laboris mollit mollit laborum enim aliquip pariatur non commodo duis reprehenderit aute laboris.\r\n", "registered": "2014-05-09T04:38:10-12:00", "latitude": -24.541067, "longitude": -156.734474, "tags": [ "ullamco", "mollit", "consectetur", "ad", "esse", "magna", "dolore" ], "friends": [ { "id": 0, "name": "Hinton Cervantes" }, { "id": 1, "name": "Acevedo Campbell" }, { "id": 2, "name": "Joyce Mcfarland" } ], "greeting": "Hello, Alisha Rich! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea257b14124b3fe8f263", "index": 2449, "guid": "0eb78c72-746b-4582-a049-e1a2a9a1f818", "isActive": true, "balance": "$3,344.58", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Louisa Beach", "gender": "female", "company": "DATACATOR", "email": "louisabeach@datacator.com", "phone": "+1 (985) 562-3132", "address": "631 Otsego Street, Grimsley, Ohio, 2066", "about": "Minim deserunt non et nisi ut do quis ea anim. Consequat amet pariatur laboris enim adipisicing tempor ullamco aute enim in nulla eiusmod. Do qui est sint labore Lorem esse pariatur. Sint tempor mollit enim aliqua reprehenderit magna excepteur duis sint minim nisi tempor. Consequat Lorem nulla nulla enim. Sint exercitation Lorem cupidatat consequat dolore incididunt.\r\n", "registered": "2014-03-29T01:43:12-13:00", "latitude": -10.010128, "longitude": -79.762314, "tags": [ "quis", "veniam", "non", "in", "laboris", "nisi", "dolore" ], "friends": [ { "id": 0, "name": "Blanche Vaughn" }, { "id": 1, "name": "Cassie Ashley" }, { "id": 2, "name": "Sherry Chandler" } ], "greeting": "Hello, Louisa Beach! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25e6bdd439c086b13f", "index": 2450, "guid": "0310c1f9-15ca-4923-a2ac-5764912e40e7", "isActive": false, "balance": "$2,008.86", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Frankie Vaughan", "gender": "female", "company": "EARGO", "email": "frankievaughan@eargo.com", "phone": "+1 (834) 482-3204", "address": "302 Herkimer Street, Ronco, Hawaii, 4127", "about": "Commodo dolor mollit culpa proident duis dolor ea nostrud fugiat sint labore. Ad mollit velit laborum voluptate officia proident mollit elit cupidatat eiusmod magna anim. Consequat irure dolor et cupidatat exercitation velit veniam non. Excepteur nulla laboris Lorem sint ex sunt. Velit ea incididunt incididunt veniam non veniam incididunt ad culpa est nisi nostrud consequat. Cillum mollit velit proident minim culpa est amet fugiat sit ea nostrud.\r\n", "registered": "2014-07-24T06:11:18-12:00", "latitude": 84.844646, "longitude": 29.953342, "tags": [ "tempor", "eu", "sint", "eiusmod", "dolor", "nostrud", "consequat" ], "friends": [ { "id": 0, "name": "Stuart Robbins" }, { "id": 1, "name": "Kerry Levine" }, { "id": 2, "name": "Everett Combs" } ], "greeting": "Hello, Frankie Vaughan! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25f1fb67b46cd922ec", "index": 2451, "guid": "f8b595e5-a044-493d-93a8-6887d47f3ce9", "isActive": true, "balance": "$3,192.30", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Frederick Schwartz", "gender": "male", "company": "INSURON", "email": "frederickschwartz@insuron.com", "phone": "+1 (826) 597-2994", "address": "609 Everett Avenue, Blodgett, New Mexico, 8696", "about": "Irure exercitation occaecat ut in dolore labore deserunt sit excepteur. Veniam sit voluptate eiusmod nostrud cillum. Ut mollit ad id laboris minim veniam consectetur. Esse veniam duis consequat ea quis voluptate labore consequat voluptate ut. In eu tempor labore adipisicing do occaecat cupidatat. Occaecat irure elit labore dolore dolore nulla cupidatat sit. Nisi est proident eu Lorem et.\r\n", "registered": "2014-04-08T17:41:33-12:00", "latitude": 50.723266, "longitude": 51.367424, "tags": [ "voluptate", "quis", "cillum", "enim", "aliquip", "amet", "labore" ], "friends": [ { "id": 0, "name": "Bush Sims" }, { "id": 1, "name": "Young Maxwell" }, { "id": 2, "name": "Wiley Talley" } ], "greeting": "Hello, Frederick Schwartz! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea250444247ff01a8f52", "index": 2452, "guid": "17282b54-997d-4b5f-b0b9-198a66c0d901", "isActive": true, "balance": "$1,560.07", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Perry Knowles", "gender": "male", "company": "MANTRO", "email": "perryknowles@mantro.com", "phone": "+1 (846) 445-2453", "address": "593 Jardine Place, Delshire, Maryland, 6874", "about": "Dolore pariatur fugiat dolore eiusmod consequat ut amet magna culpa anim qui. Aliqua non voluptate consectetur cillum in irure magna tempor non. Eiusmod aute occaecat ipsum id occaecat eu aliquip proident nulla elit nulla dolor consectetur veniam.\r\n", "registered": "2014-02-07T07:58:57-13:00", "latitude": 32.888728, "longitude": -116.642642, "tags": [ "sint", "magna", "labore", "veniam", "nisi", "esse", "est" ], "friends": [ { "id": 0, "name": "Yates Green" }, { "id": 1, "name": "Violet Gutierrez" }, { "id": 2, "name": "Willa Rivers" } ], "greeting": "Hello, Perry Knowles! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea253a270d284d477fff", "index": 2453, "guid": "094dbcc2-2cf7-4e15-9e22-4bdb2ce8d53a", "isActive": true, "balance": "$2,525.48", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Bartlett Garner", "gender": "male", "company": "ENVIRE", "email": "bartlettgarner@envire.com", "phone": "+1 (850) 590-3809", "address": "767 Arion Place, Eagletown, Alaska, 3764", "about": "Elit fugiat eu elit officia esse culpa amet in. Labore et veniam quis amet id. Ex duis voluptate ullamco ad velit aute qui nulla ullamco duis occaecat. Exercitation consectetur laboris reprehenderit ea.\r\n", "registered": "2014-08-11T11:32:39-12:00", "latitude": -59.582245, "longitude": 154.396298, "tags": [ "consequat", "deserunt", "adipisicing", "reprehenderit", "nisi", "nulla", "id" ], "friends": [ { "id": 0, "name": "Shauna Mann" }, { "id": 1, "name": "Berger Harvey" }, { "id": 2, "name": "Dunn Pollard" } ], "greeting": "Hello, Bartlett Garner! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25529e7959e326bbf3", "index": 2454, "guid": "a486ac07-06c3-4803-be06-721d5fb584e2", "isActive": true, "balance": "$3,424.80", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Beach Davenport", "gender": "male", "company": "RAMJOB", "email": "beachdavenport@ramjob.com", "phone": "+1 (872) 524-2817", "address": "609 Creamer Street, Joppa, Arizona, 3035", "about": "Irure consectetur nisi laborum adipisicing deserunt dolor do nostrud cillum do voluptate excepteur. Reprehenderit velit culpa occaecat tempor consequat est. Quis ea labore laboris velit voluptate cillum. In proident laborum enim duis in pariatur occaecat. Excepteur ipsum nulla culpa commodo incididunt ut ullamco id.\r\n", "registered": "2014-05-06T13:22:40-12:00", "latitude": -72.272219, "longitude": 57.943898, "tags": [ "irure", "in", "magna", "culpa", "ut", "officia", "ex" ], "friends": [ { "id": 0, "name": "Kitty Norton" }, { "id": 1, "name": "Nielsen Mendez" }, { "id": 2, "name": "Nanette George" } ], "greeting": "Hello, Beach Davenport! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea256a7d9e14f2c5fc18", "index": 2455, "guid": "450fe692-67f1-4630-9193-14291f171016", "isActive": false, "balance": "$3,697.95", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Glover Park", "gender": "male", "company": "ACRUEX", "email": "gloverpark@acruex.com", "phone": "+1 (853) 466-2063", "address": "332 Lawn Court, Kenvil, Federated States Of Micronesia, 5785", "about": "Laboris proident commodo tempor labore laborum sunt dolor incididunt. Voluptate velit enim dolore veniam laboris. In laborum culpa aute qui commodo esse ex Lorem consequat voluptate Lorem officia. Id dolor ipsum ipsum consectetur. Amet sit veniam proident commodo velit sit eiusmod irure cillum cupidatat. Lorem in eu cupidatat ex ut ea est labore qui amet nisi.\r\n", "registered": "2014-06-24T03:05:27-12:00", "latitude": 43.863021, "longitude": -0.109494, "tags": [ "commodo", "laborum", "culpa", "cupidatat", "culpa", "elit", "elit" ], "friends": [ { "id": 0, "name": "Elvira Kerr" }, { "id": 1, "name": "Tonia Roberts" }, { "id": 2, "name": "Camacho Holder" } ], "greeting": "Hello, Glover Park! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea253e305279c48c2f58", "index": 2456, "guid": "0a65579f-0b35-4807-9f46-7d57926884e4", "isActive": false, "balance": "$2,107.02", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Pennington Rollins", "gender": "male", "company": "TALENDULA", "email": "penningtonrollins@talendula.com", "phone": "+1 (857) 492-2815", "address": "414 Lynch Street, Temperanceville, Oklahoma, 5492", "about": "Mollit deserunt ex commodo non fugiat nisi id amet laborum consequat irure excepteur voluptate minim. Anim culpa ipsum enim nostrud minim. Exercitation velit ipsum nulla sit dolor eu ut laboris incididunt. Culpa amet enim magna nisi.\r\n", "registered": "2014-08-14T07:50:56-12:00", "latitude": -88.06985, "longitude": 169.511133, "tags": [ "excepteur", "fugiat", "id", "enim", "dolor", "dolore", "ullamco" ], "friends": [ { "id": 0, "name": "Owens Gonzalez" }, { "id": 1, "name": "Knox Gonzales" }, { "id": 2, "name": "Eliza Dickson" } ], "greeting": "Hello, Pennington Rollins! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25942d678640a96b1d", "index": 2457, "guid": "54709cd4-be0a-4637-abc1-ea98dc828443", "isActive": false, "balance": "$2,094.95", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Herring Jordan", "gender": "male", "company": "NETBOOK", "email": "herringjordan@netbook.com", "phone": "+1 (827) 467-2922", "address": "218 Sheffield Avenue, Kerby, Michigan, 1085", "about": "Proident sint cillum magna deserunt dolore fugiat laborum ex. Non est excepteur tempor nulla aliqua labore dolore cupidatat laborum. Aliquip mollit cupidatat eiusmod sunt irure laboris culpa. Elit anim enim nostrud dolor esse qui. Aliqua aliqua est velit officia fugiat anim tempor ex cupidatat.\r\n", "registered": "2014-06-14T08:35:02-12:00", "latitude": 25.45086, "longitude": -88.437912, "tags": [ "Lorem", "excepteur", "aliquip", "aliquip", "nulla", "labore", "eiusmod" ], "friends": [ { "id": 0, "name": "Shelly Herman" }, { "id": 1, "name": "Carly Mcmahon" }, { "id": 2, "name": "Justice Frost" } ], "greeting": "Hello, Herring Jordan! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2539d934678b74be7c", "index": 2458, "guid": "3de84473-8773-4246-acfb-d9e4a0d6d5d6", "isActive": true, "balance": "$3,112.25", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "House Dale", "gender": "male", "company": "CUBIX", "email": "housedale@cubix.com", "phone": "+1 (892) 449-2499", "address": "473 Elmwood Avenue, Hiwasse, Kansas, 8681", "about": "Fugiat consectetur officia excepteur fugiat excepteur ullamco veniam magna Lorem. Consequat culpa mollit ullamco tempor dolore incididunt occaecat eu ex voluptate. Nisi id aliqua proident aliquip eu sint veniam amet veniam minim. Culpa esse non id ad aliquip amet velit eiusmod consequat ullamco. Velit ipsum ad officia sint nostrud aliqua esse ut sit ipsum voluptate consequat. Pariatur deserunt laborum do laborum excepteur.\r\n", "registered": "2014-07-31T20:11:21-12:00", "latitude": -36.916825, "longitude": 97.969957, "tags": [ "cillum", "do", "veniam", "consequat", "mollit", "incididunt", "laboris" ], "friends": [ { "id": 0, "name": "Alvarado Taylor" }, { "id": 1, "name": "Ingram Kirby" }, { "id": 2, "name": "Duke Hale" } ], "greeting": "Hello, House Dale! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea256947a1095721837b", "index": 2459, "guid": "55fdf13e-2cc9-4caf-8b58-69b6a2e41560", "isActive": false, "balance": "$3,888.60", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Harrison Ballard", "gender": "male", "company": "MITROC", "email": "harrisonballard@mitroc.com", "phone": "+1 (811) 418-3297", "address": "516 Commerce Street, Leming, South Dakota, 3943", "about": "Eiusmod aliquip adipisicing qui ullamco consectetur reprehenderit non. Laboris elit non eu nulla pariatur duis ad irure voluptate laboris. Nisi cillum pariatur voluptate est aliquip veniam enim do laboris. Proident minim eiusmod anim commodo incididunt et Lorem ad qui aliqua id duis adipisicing et. Cupidatat dolor qui ea Lorem ipsum.\r\n", "registered": "2014-04-20T03:10:35-12:00", "latitude": 17.773251, "longitude": 138.140627, "tags": [ "dolor", "tempor", "labore", "voluptate", "incididunt", "nisi", "commodo" ], "friends": [ { "id": 0, "name": "Wong Daugherty" }, { "id": 1, "name": "Lillian Cobb" }, { "id": 2, "name": "Lawanda Phillips" } ], "greeting": "Hello, Harrison Ballard! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25bc45e271470fefce", "index": 2460, "guid": "02aec27a-f35b-4d00-be41-cd7feb264ef0", "isActive": false, "balance": "$2,252.82", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Gibbs Savage", "gender": "male", "company": "SONGBIRD", "email": "gibbssavage@songbird.com", "phone": "+1 (965) 404-2408", "address": "953 Baycliff Terrace, Eggertsville, West Virginia, 7210", "about": "Voluptate et pariatur commodo ullamco. Do excepteur dolore incididunt deserunt exercitation irure ipsum velit voluptate commodo fugiat dolor anim mollit. Enim enim voluptate deserunt laboris. Irure amet voluptate laborum irure do velit culpa nulla laboris voluptate eu nulla magna. Enim magna et magna proident laboris. Labore exercitation velit et pariatur nulla ut.\r\n", "registered": "2014-01-28T09:26:30-13:00", "latitude": 89.500889, "longitude": -78.193989, "tags": [ "nostrud", "sint", "minim", "pariatur", "et", "veniam", "cillum" ], "friends": [ { "id": 0, "name": "Bradford Maynard" }, { "id": 1, "name": "Henderson Colon" }, { "id": 2, "name": "Weber Pickett" } ], "greeting": "Hello, Gibbs Savage! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2505442d40aa065494", "index": 2461, "guid": "e2edd0a9-7d09-4896-b624-b50ec0aa8555", "isActive": false, "balance": "$1,942.31", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Natasha Foley", "gender": "female", "company": "INDEXIA", "email": "natashafoley@indexia.com", "phone": "+1 (854) 543-2198", "address": "157 Howard Avenue, Weeksville, Texas, 4499", "about": "Tempor deserunt sint esse in pariatur amet do anim. Ex eu voluptate veniam deserunt magna qui nisi excepteur consectetur. Dolor nulla et commodo non laboris esse magna aliquip. Velit anim ex ea nisi qui non ullamco ut mollit non minim consequat non.\r\n", "registered": "2014-02-03T09:02:46-13:00", "latitude": -5.093482, "longitude": -65.957921, "tags": [ "in", "anim", "minim", "sunt", "labore", "Lorem", "non" ], "friends": [ { "id": 0, "name": "Angelique Harding" }, { "id": 1, "name": "Salazar Ball" }, { "id": 2, "name": "Arnold Walker" } ], "greeting": "Hello, Natasha Foley! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2572738d7aac67c58f", "index": 2462, "guid": "fbe9fd58-01a6-4bff-9e2c-3e8fbe2d8cd0", "isActive": true, "balance": "$3,172.88", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Deborah Ferguson", "gender": "female", "company": "INSURESYS", "email": "deborahferguson@insuresys.com", "phone": "+1 (942) 547-2903", "address": "157 Stockholm Street, Fulford, Oregon, 1756", "about": "Qui minim qui cillum tempor dolore quis sit cillum consequat quis anim adipisicing. Aliquip elit sunt deserunt consequat velit dolor ut fugiat excepteur. Laboris minim anim aliquip voluptate mollit duis. Labore id enim ad in.\r\n", "registered": "2014-03-14T14:35:09-13:00", "latitude": 17.522709, "longitude": -110.323628, "tags": [ "officia", "cillum", "reprehenderit", "non", "nostrud", "aute", "non" ], "friends": [ { "id": 0, "name": "Ford Townsend" }, { "id": 1, "name": "Dominique Knight" }, { "id": 2, "name": "Melisa Reynolds" } ], "greeting": "Hello, Deborah Ferguson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2532f4d932eb29be08", "index": 2463, "guid": "5b614da3-1231-4e7e-8725-582ae606ee75", "isActive": true, "balance": "$2,870.46", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Roberson Dunn", "gender": "male", "company": "LUXURIA", "email": "robersondunn@luxuria.com", "phone": "+1 (939) 583-2006", "address": "134 Euclid Avenue, Baden, Nevada, 2505", "about": "Pariatur ea nostrud sint tempor laboris aliquip eiusmod deserunt eiusmod nisi nisi adipisicing. Fugiat pariatur id amet ex ut non incididunt anim est. Aliquip labore laborum eu qui Lorem proident magna amet consectetur sint laborum minim. In eu nisi incididunt tempor nostrud ex irure aute aliqua commodo consectetur enim nulla. Minim reprehenderit proident aliqua Lorem. Ipsum duis quis incididunt ad laborum cupidatat consectetur in occaecat fugiat enim eu magna consequat. Esse est aute Lorem voluptate duis.\r\n", "registered": "2014-09-08T01:46:35-12:00", "latitude": 60.442487, "longitude": 21.662758, "tags": [ "commodo", "quis", "minim", "adipisicing", "in", "excepteur", "cillum" ], "friends": [ { "id": 0, "name": "Bradley Graham" }, { "id": 1, "name": "Kimberly Vincent" }, { "id": 2, "name": "Jessie Ellison" } ], "greeting": "Hello, Roberson Dunn! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2590ff293f79ca03bf", "index": 2464, "guid": "b01e3ce9-8a6e-490b-9b72-77735a27784f", "isActive": false, "balance": "$1,689.17", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Dollie Armstrong", "gender": "female", "company": "APEXIA", "email": "dolliearmstrong@apexia.com", "phone": "+1 (898) 447-3277", "address": "461 Bushwick Place, Retsof, Minnesota, 1096", "about": "Aute sint ea elit et exercitation consequat reprehenderit sit incididunt Lorem reprehenderit non in consectetur. Mollit proident commodo veniam fugiat ad officia consequat quis adipisicing nostrud consequat tempor excepteur officia. Eiusmod dolore cillum id non. Proident magna esse eu cupidatat incididunt occaecat in consectetur commodo deserunt consectetur veniam commodo occaecat. Laboris proident aliquip qui consectetur labore. Minim sit est nisi enim cillum qui.\r\n", "registered": "2014-01-13T00:14:48-13:00", "latitude": -71.105946, "longitude": -164.918204, "tags": [ "et", "officia", "id", "anim", "non", "pariatur", "labore" ], "friends": [ { "id": 0, "name": "Margo Reid" }, { "id": 1, "name": "Livingston Sears" }, { "id": 2, "name": "Lupe Anthony" } ], "greeting": "Hello, Dollie Armstrong! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25315ea48558577e71", "index": 2465, "guid": "a7bb7f34-4d49-407f-8bf0-a05d89bf0212", "isActive": true, "balance": "$3,720.71", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Sheri Myers", "gender": "female", "company": "ZENOLUX", "email": "sherimyers@zenolux.com", "phone": "+1 (998) 500-3431", "address": "652 Brooklyn Road, Belgreen, Missouri, 3565", "about": "Dolore sint id dolore fugiat sit id aliquip est Lorem. Sit pariatur ullamco voluptate cupidatat commodo magna ullamco deserunt aliqua. Ipsum mollit adipisicing esse reprehenderit voluptate. Do veniam officia Lorem Lorem ut mollit laboris tempor mollit consectetur consequat. Proident laboris non ullamco et. Ipsum eiusmod proident duis sint voluptate labore aliqua non veniam amet sit deserunt ad.\r\n", "registered": "2014-08-27T22:17:34-12:00", "latitude": -41.040191, "longitude": -77.058053, "tags": [ "do", "culpa", "laborum", "aute", "ad", "esse", "ullamco" ], "friends": [ { "id": 0, "name": "Joann Raymond" }, { "id": 1, "name": "Coffey Golden" }, { "id": 2, "name": "Colleen Roy" } ], "greeting": "Hello, Sheri Myers! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea253506613c9f4efeab", "index": 2466, "guid": "a0641564-8ac6-4c3e-8015-4fa77c7f3de6", "isActive": false, "balance": "$3,808.35", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Ewing Clemons", "gender": "male", "company": "ENAUT", "email": "ewingclemons@enaut.com", "phone": "+1 (839) 506-3332", "address": "707 Vista Place, Fairacres, Rhode Island, 7122", "about": "Deserunt occaecat aliqua ea pariatur reprehenderit commodo ut labore amet sint ad non. Ipsum sit Lorem sit adipisicing quis commodo tempor ut ullamco officia cupidatat est sit. Dolor aliqua reprehenderit sunt amet occaecat do commodo in pariatur labore proident mollit officia. Sunt cillum aute consequat aliquip incididunt exercitation fugiat nulla reprehenderit qui consectetur incididunt.\r\n", "registered": "2014-07-04T20:03:41-12:00", "latitude": -77.014613, "longitude": -110.024572, "tags": [ "nisi", "excepteur", "adipisicing", "aute", "esse", "pariatur", "mollit" ], "friends": [ { "id": 0, "name": "Leila England" }, { "id": 1, "name": "Miriam Reyes" }, { "id": 2, "name": "Bridges Shields" } ], "greeting": "Hello, Ewing Clemons! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25dbc028e101e526e8", "index": 2467, "guid": "4929b5c0-1393-4214-a898-7a3ba50510e2", "isActive": true, "balance": "$3,400.79", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Wendi Tillman", "gender": "female", "company": "HAWKSTER", "email": "wenditillman@hawkster.com", "phone": "+1 (987) 575-2110", "address": "730 Karweg Place, Trona, Florida, 2205", "about": "Cupidatat mollit ad qui et ea qui Lorem officia exercitation commodo. Cillum reprehenderit fugiat veniam consequat voluptate fugiat. Eu et incididunt dolor consectetur ullamco do.\r\n", "registered": "2014-06-09T11:45:17-12:00", "latitude": 51.312415, "longitude": 55.664557, "tags": [ "aliqua", "aute", "eiusmod", "dolore", "est", "ad", "aliquip" ], "friends": [ { "id": 0, "name": "Finch Valentine" }, { "id": 1, "name": "Nettie Edwards" }, { "id": 2, "name": "Espinoza Shelton" } ], "greeting": "Hello, Wendi Tillman! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2591b5bd15124b5c91", "index": 2468, "guid": "64577be4-0090-44d7-a43b-d25a255c0d3a", "isActive": false, "balance": "$1,900.96", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Velasquez Soto", "gender": "male", "company": "GROK", "email": "velasquezsoto@grok.com", "phone": "+1 (943) 531-3410", "address": "210 Melba Court, Derwood, North Carolina, 8641", "about": "Culpa et aliquip velit est pariatur. Laboris quis dolor magna enim minim labore sunt. Eiusmod proident qui ea enim deserunt.\r\n", "registered": "2014-03-07T03:10:44-13:00", "latitude": -24.379107, "longitude": -18.354166, "tags": [ "officia", "proident", "nulla", "tempor", "culpa", "duis", "sunt" ], "friends": [ { "id": 0, "name": "Valeria Mccall" }, { "id": 1, "name": "Mabel Strong" }, { "id": 2, "name": "Karla Brown" } ], "greeting": "Hello, Velasquez Soto! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25ffbf1d69ea304759", "index": 2469, "guid": "70b1caff-efe3-4fda-8867-122422de7adc", "isActive": false, "balance": "$3,125.51", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Karyn Gregory", "gender": "female", "company": "INQUALA", "email": "karyngregory@inquala.com", "phone": "+1 (931) 408-3202", "address": "229 Oliver Street, Chesapeake, New Hampshire, 7391", "about": "Cupidatat excepteur incididunt ut nulla fugiat irure veniam veniam cillum deserunt. Laboris consequat esse Lorem magna eiusmod laborum. Pariatur cillum voluptate reprehenderit amet esse nisi laborum id incididunt non. Laborum dolor elit reprehenderit enim. In voluptate nulla sit nisi. Mollit veniam labore sunt in elit esse consequat et et voluptate eu minim. Velit ullamco mollit excepteur elit exercitation.\r\n", "registered": "2014-03-27T18:47:36-13:00", "latitude": 47.495713, "longitude": -175.64986, "tags": [ "officia", "sunt", "eu", "ex", "amet", "consectetur", "occaecat" ], "friends": [ { "id": 0, "name": "Angela Mccoy" }, { "id": 1, "name": "Joanna Mcconnell" }, { "id": 2, "name": "Chang Collier" } ], "greeting": "Hello, Karyn Gregory! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea252e1ccb155b15c24d", "index": 2470, "guid": "2b47a107-7025-4669-aa81-260f47763380", "isActive": true, "balance": "$1,199.52", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Gina Baxter", "gender": "female", "company": "INTRAWEAR", "email": "ginabaxter@intrawear.com", "phone": "+1 (904) 541-3203", "address": "471 Central Avenue, Darlington, Arkansas, 6063", "about": "Consequat magna reprehenderit eiusmod elit cillum in laboris minim reprehenderit in qui adipisicing. Ipsum ad ipsum fugiat ut ea. Incididunt Lorem proident incididunt quis eu commodo reprehenderit ex laboris tempor enim excepteur Lorem ea. Cupidatat dolor ullamco duis id Lorem cillum.\r\n", "registered": "2014-05-31T05:57:26-12:00", "latitude": -83.940937, "longitude": -92.468604, "tags": [ "pariatur", "amet", "excepteur", "Lorem", "culpa", "amet", "eiusmod" ], "friends": [ { "id": 0, "name": "Carney Blake" }, { "id": 1, "name": "Socorro Lancaster" }, { "id": 2, "name": "Adeline Donovan" } ], "greeting": "Hello, Gina Baxter! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea253f8bb60365660041", "index": 2471, "guid": "da1f922b-b26b-47a9-9e5e-94c23c896caa", "isActive": false, "balance": "$1,454.87", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Glenn Jenkins", "gender": "male", "company": "WAAB", "email": "glennjenkins@waab.com", "phone": "+1 (940) 462-2199", "address": "738 Moore Street, Boykin, Iowa, 6674", "about": "Ex fugiat esse velit dolore et cupidatat incididunt culpa amet pariatur excepteur enim nulla. Quis amet est eiusmod ut aliqua. Laboris magna anim sunt laborum duis non ea velit laborum ex anim.\r\n", "registered": "2014-08-10T01:31:50-12:00", "latitude": 3.737319, "longitude": 155.692026, "tags": [ "amet", "duis", "officia", "elit", "mollit", "ipsum", "Lorem" ], "friends": [ { "id": 0, "name": "Cardenas Pate" }, { "id": 1, "name": "Fernandez Velez" }, { "id": 2, "name": "Robles Higgins" } ], "greeting": "Hello, Glenn Jenkins! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea250910f388d2c9f7dd", "index": 2472, "guid": "df69197a-8e9b-4d20-a35a-43e618de6e1a", "isActive": false, "balance": "$1,906.24", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Nash Berry", "gender": "male", "company": "DARWINIUM", "email": "nashberry@darwinium.com", "phone": "+1 (980) 480-2394", "address": "416 Lott Place, Sunnyside, Nebraska, 8976", "about": "Sunt incididunt minim minim veniam nisi laboris amet. Amet eiusmod eiusmod consequat quis sit ullamco adipisicing aliquip deserunt enim elit. Culpa aliquip nulla aute culpa irure. Ad duis dolore dolor fugiat nisi aliquip veniam occaecat nulla irure excepteur commodo. Sint velit laborum nulla reprehenderit deserunt labore reprehenderit laboris consequat nostrud. Cupidatat laborum pariatur occaecat qui magna deserunt Lorem.\r\n", "registered": "2014-09-05T23:25:17-12:00", "latitude": -0.143412, "longitude": 173.741575, "tags": [ "duis", "eu", "ut", "magna", "nostrud", "velit", "excepteur" ], "friends": [ { "id": 0, "name": "Mann Peterson" }, { "id": 1, "name": "Donaldson Solomon" }, { "id": 2, "name": "Lola Nixon" } ], "greeting": "Hello, Nash Berry! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25ce176f27f5363330", "index": 2473, "guid": "4d5944be-c9ab-467f-8e1c-3dbbca6591a4", "isActive": true, "balance": "$2,340.90", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Marion Fulton", "gender": "female", "company": "POLARAX", "email": "marionfulton@polarax.com", "phone": "+1 (919) 582-2153", "address": "824 Cumberland Street, Kansas, District Of Columbia, 4278", "about": "Nostrud consequat aliqua labore deserunt cillum culpa nisi ad elit sint est dolore. Consectetur do sint ex elit ea laboris adipisicing non exercitation dolore. Do irure consectetur nisi consectetur incididunt non irure eu ullamco. Velit laboris amet reprehenderit laborum. Laborum pariatur ad sit aliquip reprehenderit voluptate id laborum adipisicing cupidatat excepteur ut. Irure voluptate nostrud ut enim ad nulla quis esse anim consequat dolore.\r\n", "registered": "2014-09-18T02:53:33-12:00", "latitude": 46.702151, "longitude": 41.395889, "tags": [ "minim", "adipisicing", "velit", "Lorem", "do", "incididunt", "pariatur" ], "friends": [ { "id": 0, "name": "Edith Roberson" }, { "id": 1, "name": "Lily Stuart" }, { "id": 2, "name": "Jean Chambers" } ], "greeting": "Hello, Marion Fulton! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25d66d5f28ebcc64bb", "index": 2474, "guid": "e59da6d1-bc30-4733-9730-17e6d6460be1", "isActive": false, "balance": "$3,496.33", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Genevieve Ellis", "gender": "female", "company": "ISOTRACK", "email": "genevieveellis@isotrack.com", "phone": "+1 (827) 600-2254", "address": "287 Seabring Street, Gerton, New Jersey, 4291", "about": "Elit ipsum ad elit officia esse ullamco aute occaecat. Ex id nulla fugiat in. Ipsum velit dolor pariatur ullamco occaecat incididunt culpa veniam nisi.\r\n", "registered": "2014-03-18T02:25:22-13:00", "latitude": 89.244503, "longitude": -135.189482, "tags": [ "magna", "excepteur", "aliquip", "ullamco", "aliquip", "duis", "eiusmod" ], "friends": [ { "id": 0, "name": "Magdalena Lambert" }, { "id": 1, "name": "Mckay Guerra" }, { "id": 2, "name": "Sexton Stevens" } ], "greeting": "Hello, Genevieve Ellis! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea250d77160049d51d1c", "index": 2475, "guid": "4af7df70-17e2-40a3-acec-badeab8b447a", "isActive": false, "balance": "$3,952.59", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Rachael Hunt", "gender": "female", "company": "CEPRENE", "email": "rachaelhunt@ceprene.com", "phone": "+1 (913) 569-3039", "address": "901 Emerson Place, Chamberino, Palau, 5028", "about": "Officia do reprehenderit cupidatat non. In consequat excepteur ad eiusmod. Enim ex dolore veniam anim proident nulla est veniam qui deserunt. Aliquip ad dolore consequat dolore laboris amet enim esse veniam qui nulla commodo ipsum. Laborum aliqua deserunt aute aute pariatur dolore duis laborum cupidatat in voluptate irure.\r\n", "registered": "2014-07-23T05:56:32-12:00", "latitude": -50.876062, "longitude": 100.908284, "tags": [ "duis", "fugiat", "quis", "laborum", "dolor", "eiusmod", "adipisicing" ], "friends": [ { "id": 0, "name": "Dorthy Guzman" }, { "id": 1, "name": "Ramos Hickman" }, { "id": 2, "name": "Buckley Cooley" } ], "greeting": "Hello, Rachael Hunt! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25a7db07dccfaeecdb", "index": 2476, "guid": "23f7766a-d882-4e5d-9661-1ab0fbab2594", "isActive": true, "balance": "$2,725.52", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Sonja Ortiz", "gender": "female", "company": "ORBEAN", "email": "sonjaortiz@orbean.com", "phone": "+1 (904) 569-2532", "address": "620 Corbin Place, Dyckesville, Puerto Rico, 3040", "about": "Lorem Lorem duis ad minim officia in aliqua id enim deserunt dolore reprehenderit in. Irure nulla aliqua sit dolor proident. Ad et veniam in minim cupidatat. Laborum velit eu exercitation ad fugiat cupidatat culpa enim. Sint nisi mollit ex sint eu ut officia tempor Lorem ad elit. Velit magna do sint sint ea enim excepteur nulla magna id nisi officia.\r\n", "registered": "2014-05-18T10:45:35-12:00", "latitude": 84.190313, "longitude": -124.918771, "tags": [ "aliqua", "mollit", "incididunt", "non", "irure", "quis", "sint" ], "friends": [ { "id": 0, "name": "Sharpe French" }, { "id": 1, "name": "Hines Carver" }, { "id": 2, "name": "Butler Hughes" } ], "greeting": "Hello, Sonja Ortiz! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25761ca17170b900bf", "index": 2477, "guid": "f7c0b021-e0b5-4433-bcdf-6b1d788b803b", "isActive": false, "balance": "$2,557.79", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Penny Acosta", "gender": "female", "company": "MICROLUXE", "email": "pennyacosta@microluxe.com", "phone": "+1 (854) 422-2252", "address": "498 Lorimer Street, Jacumba, California, 1367", "about": "Deserunt duis Lorem laborum et non velit ea sit qui sunt officia tempor ipsum do. Adipisicing tempor sint eu magna fugiat do pariatur eu aliquip. Cillum aute incididunt aliquip ut commodo sunt laborum sint eu proident sint. Eiusmod Lorem nulla occaecat anim. Labore culpa sunt veniam velit cillum quis.\r\n", "registered": "2014-02-16T20:53:54-13:00", "latitude": 38.571629, "longitude": -153.884667, "tags": [ "nulla", "dolor", "quis", "ullamco", "in", "cillum", "in" ], "friends": [ { "id": 0, "name": "Eve Christian" }, { "id": 1, "name": "Garrett Powers" }, { "id": 2, "name": "Kathryn Oliver" } ], "greeting": "Hello, Penny Acosta! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea254a82f3cdea199cd7", "index": 2478, "guid": "a655b3f5-8c26-446d-99e7-cbf0ff019921", "isActive": false, "balance": "$2,823.97", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Beasley Douglas", "gender": "male", "company": "GINKOGENE", "email": "beasleydouglas@ginkogene.com", "phone": "+1 (996) 414-2995", "address": "900 Grafton Street, Kapowsin, Vermont, 1647", "about": "Ea irure ipsum ullamco irure minim eu do ex nostrud irure magna. Laborum magna dolore enim quis cillum. Non reprehenderit irure minim occaecat excepteur officia minim cillum. Nostrud cillum voluptate amet quis est culpa veniam reprehenderit exercitation nostrud fugiat consectetur.\r\n", "registered": "2014-08-27T00:39:59-12:00", "latitude": -65.55866, "longitude": -99.187752, "tags": [ "qui", "magna", "consectetur", "id", "cupidatat", "dolore", "ipsum" ], "friends": [ { "id": 0, "name": "Maureen Brewer" }, { "id": 1, "name": "Irene Walsh" }, { "id": 2, "name": "Keri Herring" } ], "greeting": "Hello, Beasley Douglas! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea255ab92096ce443c3d", "index": 2479, "guid": "5b583c3f-0abb-4629-809f-d776cf16491d", "isActive": false, "balance": "$1,148.85", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Shepherd Chaney", "gender": "male", "company": "NIMON", "email": "shepherdchaney@nimon.com", "phone": "+1 (896) 558-3659", "address": "175 Chestnut Avenue, Rockbridge, Indiana, 5738", "about": "Tempor reprehenderit sit ea reprehenderit aliquip voluptate quis duis officia. Qui exercitation sit in qui magna dolore. Do fugiat amet eiusmod qui proident.\r\n", "registered": "2014-01-17T04:03:38-13:00", "latitude": -59.021702, "longitude": 33.258535, "tags": [ "ipsum", "aliqua", "eiusmod", "duis", "dolor", "magna", "id" ], "friends": [ { "id": 0, "name": "Carson Hunter" }, { "id": 1, "name": "Clare Cantrell" }, { "id": 2, "name": "Theresa Monroe" } ], "greeting": "Hello, Shepherd Chaney! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2539593f69b91dd199", "index": 2480, "guid": "9bb7f9b2-abc9-46bb-ba77-e2aaa689b59d", "isActive": false, "balance": "$2,192.35", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Jacklyn Harper", "gender": "female", "company": "MAXIMIND", "email": "jacklynharper@maximind.com", "phone": "+1 (883) 407-3795", "address": "677 Thomas Street, Riverton, Illinois, 3387", "about": "Nisi ea cillum eu occaecat. Elit ex excepteur ullamco elit culpa est laboris ad amet magna et. Labore quis sit qui magna aute officia incididunt ex.\r\n", "registered": "2014-06-24T22:39:44-12:00", "latitude": 38.850367, "longitude": -47.449399, "tags": [ "deserunt", "labore", "sint", "sit", "ea", "nulla", "voluptate" ], "friends": [ { "id": 0, "name": "Peck Stout" }, { "id": 1, "name": "Yvonne Glenn" }, { "id": 2, "name": "Velma Goff" } ], "greeting": "Hello, Jacklyn Harper! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25170933a2a066e87a", "index": 2481, "guid": "62aa6a7d-056a-47c9-9f22-7fe327ab7fd6", "isActive": true, "balance": "$3,626.22", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Hilary Cannon", "gender": "female", "company": "ENTROPIX", "email": "hilarycannon@entropix.com", "phone": "+1 (921) 420-3714", "address": "253 Forrest Street, Newkirk, South Carolina, 6194", "about": "Consectetur velit enim incididunt et. Voluptate excepteur cupidatat voluptate eiusmod culpa occaecat aute excepteur. Incididunt in minim officia anim anim proident cillum. Est consequat elit qui dolore nostrud id proident qui labore commodo eu commodo qui proident. Id elit in aliqua proident ut non eu qui sunt nostrud ut do laboris. Elit sunt sint magna ipsum magna fugiat reprehenderit consequat. Ullamco id velit minim dolore voluptate veniam commodo.\r\n", "registered": "2014-07-11T05:42:34-12:00", "latitude": -49.125498, "longitude": -43.746318, "tags": [ "ad", "incididunt", "ut", "tempor", "quis", "laboris", "fugiat" ], "friends": [ { "id": 0, "name": "Manning Buchanan" }, { "id": 1, "name": "Suzanne Trujillo" }, { "id": 2, "name": "Brandi Pittman" } ], "greeting": "Hello, Hilary Cannon! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea253895f526f083d464", "index": 2482, "guid": "ab36b271-9c65-4b59-82e8-6ca556aec057", "isActive": false, "balance": "$2,040.38", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Letha Crane", "gender": "female", "company": "FLUM", "email": "lethacrane@flum.com", "phone": "+1 (979) 403-2203", "address": "679 Loring Avenue, Deseret, American Samoa, 480", "about": "Do culpa aliqua fugiat esse consequat est adipisicing aute enim nulla labore. Fugiat dolore ea eiusmod aliquip mollit nulla ullamco dolor aute qui proident nulla. Quis minim nostrud anim mollit pariatur eu sunt nisi veniam dolor qui nisi nulla ea.\r\n", "registered": "2014-09-03T00:05:20-12:00", "latitude": -83.976689, "longitude": 78.435307, "tags": [ "irure", "duis", "aute", "ea", "quis", "velit", "commodo" ], "friends": [ { "id": 0, "name": "Sasha Pruitt" }, { "id": 1, "name": "Pruitt Holmes" }, { "id": 2, "name": "Alba Bryant" } ], "greeting": "Hello, Letha Crane! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25f0ee426f45de321f", "index": 2483, "guid": "c21cbf37-7f6d-4343-ad7e-172a92fc9179", "isActive": false, "balance": "$3,805.92", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Maura Cummings", "gender": "female", "company": "KNEEDLES", "email": "mauracummings@kneedles.com", "phone": "+1 (821) 477-2874", "address": "175 Debevoise Street, Matthews, Delaware, 9327", "about": "Deserunt laboris et ea duis minim laboris cupidatat officia magna. Veniam dolore in aute veniam proident et velit. Incididunt consectetur labore ad ullamco magna cupidatat do fugiat eiusmod nisi veniam est consequat.\r\n", "registered": "2014-07-20T23:35:22-12:00", "latitude": 4.857023, "longitude": 61.754081, "tags": [ "tempor", "reprehenderit", "mollit", "commodo", "aliquip", "ipsum", "anim" ], "friends": [ { "id": 0, "name": "Workman Gilmore" }, { "id": 1, "name": "Bauer Powell" }, { "id": 2, "name": "Francisca Silva" } ], "greeting": "Hello, Maura Cummings! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25079a644deccec17c", "index": 2484, "guid": "d3b3becc-5f22-488c-a367-e1d91309979e", "isActive": false, "balance": "$3,285.46", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Julie Wong", "gender": "female", "company": "UPLINX", "email": "juliewong@uplinx.com", "phone": "+1 (858) 595-2935", "address": "888 Dank Court, Brecon, Pennsylvania, 1749", "about": "Commodo laborum culpa amet adipisicing ipsum Lorem. Reprehenderit ut duis officia ipsum id ipsum esse. Sunt irure aliquip veniam ad ullamco laborum reprehenderit sint quis consectetur non Lorem ullamco enim. Adipisicing labore culpa ut ea consequat veniam adipisicing enim aliqua nulla eu. Aliquip laborum irure non velit Lorem et id qui ad ipsum tempor aute culpa laborum. Minim enim tempor sint pariatur excepteur labore sunt ea.\r\n", "registered": "2014-06-22T08:01:57-12:00", "latitude": -68.79724, "longitude": -27.999346, "tags": [ "anim", "ex", "tempor", "sit", "pariatur", "aute", "qui" ], "friends": [ { "id": 0, "name": "Bryan Hood" }, { "id": 1, "name": "Burns Herrera" }, { "id": 2, "name": "Hurst Hanson" } ], "greeting": "Hello, Julie Wong! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea258518338e079781ef", "index": 2485, "guid": "55a69ebd-7d29-41f3-ac5b-5383f367f4db", "isActive": true, "balance": "$2,499.48", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Alisa Hammond", "gender": "female", "company": "EZENTIA", "email": "alisahammond@ezentia.com", "phone": "+1 (822) 594-3465", "address": "833 Harman Street, Rossmore, Georgia, 6800", "about": "Ipsum mollit exercitation ullamco id in sit Lorem officia aute aliquip mollit. Irure commodo ea anim velit fugiat qui minim labore incididunt proident irure sit deserunt. Id est laborum mollit velit id ea Lorem nisi enim qui. Do incididunt minim consectetur pariatur magna consequat consequat velit veniam cillum commodo ut velit. Tempor non amet magna eu tempor. Exercitation quis in officia voluptate voluptate Lorem.\r\n", "registered": "2014-06-01T22:34:24-12:00", "latitude": 40.196928, "longitude": -91.233569, "tags": [ "nostrud", "consequat", "ea", "sint", "anim", "pariatur", "eiusmod" ], "friends": [ { "id": 0, "name": "Rosella Burnett" }, { "id": 1, "name": "Blanchard Barr" }, { "id": 2, "name": "Cash Bradley" } ], "greeting": "Hello, Alisa Hammond! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea258b24864e7d7afb16", "index": 2486, "guid": "3600940f-ceae-4768-96e6-7920aab9a7a9", "isActive": false, "balance": "$3,337.22", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Rosanna Howard", "gender": "female", "company": "ZENTIA", "email": "rosannahoward@zentia.com", "phone": "+1 (861) 541-3474", "address": "449 Homecrest Avenue, Gwynn, North Dakota, 9170", "about": "Amet est veniam ut duis eu exercitation amet sint duis anim. Consectetur sit aliquip ullamco id duis labore eu ad veniam. Elit eu ad enim consectetur do minim magna deserunt ad cillum aliquip commodo. Nostrud elit non in ea pariatur consectetur nisi qui nisi ipsum officia excepteur aute. Sint officia commodo tempor voluptate fugiat cupidatat consectetur fugiat do est.\r\n", "registered": "2014-05-09T23:17:37-12:00", "latitude": 60.847943, "longitude": 71.644167, "tags": [ "consectetur", "id", "anim", "commodo", "occaecat", "nulla", "duis" ], "friends": [ { "id": 0, "name": "Gallagher Webster" }, { "id": 1, "name": "Luella Weber" }, { "id": 2, "name": "Jamie Faulkner" } ], "greeting": "Hello, Rosanna Howard! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25cd90f8ec63f43601", "index": 2487, "guid": "f20eae6b-aac3-4ef2-a948-68085ee6a4d0", "isActive": false, "balance": "$1,529.09", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Rich Richardson", "gender": "male", "company": "BUZZMAKER", "email": "richrichardson@buzzmaker.com", "phone": "+1 (824) 439-3563", "address": "411 Noll Street, Westmoreland, Louisiana, 7815", "about": "Laboris dolore id reprehenderit duis ullamco excepteur consectetur culpa sint elit aliqua proident tempor. Veniam id Lorem proident labore magna do. Elit laborum sint ad esse labore. Incididunt cupidatat duis ullamco consequat aliqua laborum mollit deserunt ad consequat Lorem ipsum pariatur laboris. Ullamco id mollit adipisicing eu incididunt est elit est culpa laborum quis duis.\r\n", "registered": "2014-07-29T04:55:13-12:00", "latitude": -87.414527, "longitude": 33.421899, "tags": [ "sint", "tempor", "ad", "quis", "commodo", "dolor", "magna" ], "friends": [ { "id": 0, "name": "Joyce Hess" }, { "id": 1, "name": "Wade Olson" }, { "id": 2, "name": "Mollie Ferrell" } ], "greeting": "Hello, Rich Richardson! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea254f284a38a3b96488", "index": 2488, "guid": "152787cb-72c1-4dcf-a3b9-7f006cfac04c", "isActive": false, "balance": "$3,413.58", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Mendez Blevins", "gender": "male", "company": "IMAGEFLOW", "email": "mendezblevins@imageflow.com", "phone": "+1 (951) 455-3970", "address": "370 Jaffray Street, Dragoon, Northern Mariana Islands, 3417", "about": "Cupidatat enim culpa ad laboris dolor. Amet qui et aute ex aute non esse anim amet irure reprehenderit consectetur occaecat. Elit ad aliquip nulla minim deserunt tempor velit aliqua consectetur est laborum est commodo. Pariatur duis commodo ipsum minim in deserunt magna. Aliquip quis do aute pariatur adipisicing aliquip quis officia anim esse anim. In aliquip voluptate dolore laboris ea incididunt. Adipisicing eiusmod esse veniam excepteur adipisicing.\r\n", "registered": "2014-01-14T01:05:29-13:00", "latitude": 87.35472, "longitude": -98.103606, "tags": [ "veniam", "magna", "fugiat", "consectetur", "et", "laboris", "consequat" ], "friends": [ { "id": 0, "name": "Audrey Andrews" }, { "id": 1, "name": "Contreras Campos" }, { "id": 2, "name": "Puckett Dean" } ], "greeting": "Hello, Mendez Blevins! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea255da4305f4cba2b66", "index": 2489, "guid": "9e783f44-cd01-4512-acc4-f7c041d5de9e", "isActive": false, "balance": "$3,774.05", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Dolores Cotton", "gender": "female", "company": "FUTURIZE", "email": "dolorescotton@futurize.com", "phone": "+1 (895) 452-3866", "address": "678 Meserole Street, Woodburn, Colorado, 6805", "about": "Id tempor ea Lorem deserunt est commodo aliquip laborum ex Lorem et. Id reprehenderit in laboris cillum eiusmod pariatur nostrud. Ea cupidatat enim exercitation sint in quis ipsum nulla. Est minim minim reprehenderit sunt irure. Commodo Lorem officia exercitation ullamco exercitation Lorem laboris.\r\n", "registered": "2014-04-12T10:54:41-12:00", "latitude": 3.690843, "longitude": -155.897815, "tags": [ "enim", "tempor", "velit", "labore", "aliqua", "nulla", "adipisicing" ], "friends": [ { "id": 0, "name": "Mccall Winters" }, { "id": 1, "name": "Stafford Payne" }, { "id": 2, "name": "Kristie Puckett" } ], "greeting": "Hello, Dolores Cotton! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea254ac5310660991bdb", "index": 2490, "guid": "197ee0f9-7203-46f2-9e74-0fe460d826fa", "isActive": true, "balance": "$2,390.00", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Allison Finley", "gender": "male", "company": "MAKINGWAY", "email": "allisonfinley@makingway.com", "phone": "+1 (909) 596-2906", "address": "952 Myrtle Avenue, Hampstead, Idaho, 7257", "about": "Veniam laboris ullamco nulla reprehenderit labore culpa incididunt. Consectetur in anim laborum voluptate voluptate aliqua. Ea dolore consequat nostrud nostrud velit ut aliquip exercitation tempor fugiat velit elit eiusmod. Occaecat velit proident sint exercitation excepteur ex anim consequat nulla quis commodo eu. Exercitation anim quis ullamco ad sunt labore adipisicing labore in occaecat labore cillum sunt. Minim in do cupidatat nostrud. Irure aliquip ullamco eu commodo cupidatat culpa irure aliqua sit.\r\n", "registered": "2014-09-20T05:19:39-12:00", "latitude": -25.472945, "longitude": 66.24174, "tags": [ "minim", "amet", "pariatur", "do", "deserunt", "aliquip", "sint" ], "friends": [ { "id": 0, "name": "Karen Conrad" }, { "id": 1, "name": "Rosemarie Allison" }, { "id": 2, "name": "Lesley Dennis" } ], "greeting": "Hello, Allison Finley! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25675d09b54732ef89", "index": 2491, "guid": "916f3eb6-505c-46f0-aaa4-099c8e283144", "isActive": false, "balance": "$3,273.14", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Gabrielle Bright", "gender": "female", "company": "PLEXIA", "email": "gabriellebright@plexia.com", "phone": "+1 (897) 578-3537", "address": "982 Bush Street, Clinton, Marshall Islands, 4115", "about": "Mollit exercitation excepteur eiusmod adipisicing eu sint sint aute. Esse excepteur cupidatat laboris anim labore irure irure quis. Ut duis aliquip labore magna dolor officia irure. Incididunt et irure sit commodo Lorem adipisicing culpa veniam voluptate magna. Mollit voluptate ipsum Lorem officia exercitation fugiat ex adipisicing incididunt irure exercitation esse laboris magna. Consectetur laborum ea id ipsum voluptate proident quis deserunt nulla laboris.\r\n", "registered": "2014-05-07T18:39:00-12:00", "latitude": -80.141427, "longitude": 119.482656, "tags": [ "deserunt", "aute", "laborum", "magna", "irure", "do", "dolore" ], "friends": [ { "id": 0, "name": "Keller Freeman" }, { "id": 1, "name": "Meagan Vargas" }, { "id": 2, "name": "Deanne Fuentes" } ], "greeting": "Hello, Gabrielle Bright! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea258272a8f33d24b548", "index": 2492, "guid": "1a7fc449-7860-4f4f-a19f-289e7a893377", "isActive": true, "balance": "$3,105.46", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Pam Giles", "gender": "female", "company": "PRISMATIC", "email": "pamgiles@prismatic.com", "phone": "+1 (915) 482-2520", "address": "847 Tilden Avenue, Rivereno, New York, 9355", "about": "Amet dolor id nostrud in cillum aliqua esse. Qui esse aliqua fugiat magna est. Labore non sint Lorem est nisi duis velit eiusmod mollit esse elit. Sit labore id aliqua nulla id Lorem do ex labore sint. Cillum cupidatat amet laboris duis enim proident labore aute quis nisi voluptate incididunt labore. Amet consequat exercitation sunt voluptate irure anim aliquip nostrud do. Id labore incididunt aute do irure qui est fugiat quis mollit.\r\n", "registered": "2014-03-14T09:54:42-13:00", "latitude": -43.346251, "longitude": -115.933299, "tags": [ "nostrud", "commodo", "laboris", "culpa", "do", "deserunt", "officia" ], "friends": [ { "id": 0, "name": "Mari Singleton" }, { "id": 1, "name": "Carmella Farmer" }, { "id": 2, "name": "Holmes Lewis" } ], "greeting": "Hello, Pam Giles! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e103586a52c7bb2d", "index": 2493, "guid": "853e9ca1-7735-448b-9478-f03bc6c60d3c", "isActive": true, "balance": "$3,357.04", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Marie Castaneda", "gender": "female", "company": "TELPOD", "email": "mariecastaneda@telpod.com", "phone": "+1 (909) 475-3781", "address": "217 Ditmars Street, Newry, Guam, 5135", "about": "Do occaecat non eiusmod duis id tempor incididunt fugiat fugiat ut do sunt officia cillum. Deserunt officia labore aliquip Lorem et sit consequat ea. Amet adipisicing veniam aute deserunt adipisicing nisi ut ea minim mollit excepteur occaecat ullamco ipsum.\r\n", "registered": "2014-06-22T23:51:53-12:00", "latitude": 24.009298, "longitude": 137.117276, "tags": [ "et", "adipisicing", "qui", "duis", "reprehenderit", "proident", "dolore" ], "friends": [ { "id": 0, "name": "Marsha Burgess" }, { "id": 1, "name": "Odessa Brooks" }, { "id": 2, "name": "Marylou Boyer" } ], "greeting": "Hello, Marie Castaneda! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25bd8b2bbb4fc71a8b", "index": 2494, "guid": "e305733c-724a-4908-a7d3-b5b39d4bbd14", "isActive": false, "balance": "$1,995.36", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Britt Cortez", "gender": "male", "company": "GEEKUS", "email": "brittcortez@geekus.com", "phone": "+1 (952) 421-3359", "address": "886 Dorset Street, Falmouth, Virgin Islands, 5512", "about": "Nisi irure qui ad eiusmod occaecat cupidatat pariatur cupidatat anim nisi nostrud dolor. Enim incididunt sint esse id do culpa proident anim excepteur fugiat dolor irure do aliqua. Ullamco eu ut culpa eu voluptate deserunt sint cillum officia dolor irure laboris. Sunt veniam aliquip sint est anim sint duis eiusmod velit voluptate mollit Lorem.\r\n", "registered": "2014-02-26T23:04:55-13:00", "latitude": 26.578402, "longitude": -14.626583, "tags": [ "consequat", "adipisicing", "adipisicing", "velit", "tempor", "deserunt", "excepteur" ], "friends": [ { "id": 0, "name": "Jannie Beck" }, { "id": 1, "name": "Acosta Hurley" }, { "id": 2, "name": "Murray Macias" } ], "greeting": "Hello, Britt Cortez! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25efa58a17ea703ffb", "index": 2495, "guid": "285a8d99-665c-4e17-9217-2d4e02393b87", "isActive": true, "balance": "$2,830.15", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Saundra Buckner", "gender": "female", "company": "COLLAIRE", "email": "saundrabuckner@collaire.com", "phone": "+1 (811) 417-2917", "address": "859 Dictum Court, Ladera, Massachusetts, 7145", "about": "Esse ut id consequat aliqua nostrud nostrud. Irure velit eu minim voluptate sunt. Enim veniam in sunt mollit voluptate nisi laboris exercitation quis consectetur. Laborum velit dolor sint minim labore fugiat et duis. Veniam officia tempor cupidatat incididunt adipisicing in deserunt cillum aliquip amet voluptate enim. Velit est minim sit reprehenderit culpa fugiat exercitation. Cillum mollit reprehenderit consequat consectetur.\r\n", "registered": "2014-09-22T08:58:44-12:00", "latitude": -51.988277, "longitude": 151.4804, "tags": [ "eu", "laborum", "incididunt", "anim", "proident", "excepteur", "enim" ], "friends": [ { "id": 0, "name": "Rachelle Cooke" }, { "id": 1, "name": "Allison Garrett" }, { "id": 2, "name": "Cross Mcleod" } ], "greeting": "Hello, Saundra Buckner! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25de6684013cf2b4e1", "index": 2496, "guid": "8a7fc945-12a1-4757-b6c6-674534f04e8d", "isActive": true, "balance": "$1,914.74", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Jenifer Mcgee", "gender": "female", "company": "PHOTOBIN", "email": "jenifermcgee@photobin.com", "phone": "+1 (830) 509-3748", "address": "437 Harbor Lane, Lopezo, Utah, 8134", "about": "Dolore ut consectetur ea tempor occaecat aliquip ad cupidatat commodo exercitation dolor. Sint qui adipisicing velit magna occaecat pariatur nulla proident est exercitation. Commodo labore quis proident nostrud veniam culpa esse nulla consectetur. Consectetur fugiat sunt in ipsum est tempor. Velit exercitation do deserunt sunt magna elit do amet. Enim quis sit commodo cillum reprehenderit aliqua ut cupidatat.\r\n", "registered": "2014-03-12T17:16:38-13:00", "latitude": 14.818558, "longitude": 118.400159, "tags": [ "ex", "consectetur", "et", "veniam", "ex", "voluptate", "aliquip" ], "friends": [ { "id": 0, "name": "Noel Horne" }, { "id": 1, "name": "Martin Kinney" }, { "id": 2, "name": "Dorsey Witt" } ], "greeting": "Hello, Jenifer Mcgee! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea251f478a5050df8883", "index": 2497, "guid": "9c02eed8-7b8a-4c97-ab22-affba3a24e62", "isActive": true, "balance": "$1,332.83", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Ilene Perkins", "gender": "female", "company": "ZOID", "email": "ileneperkins@zoid.com", "phone": "+1 (998) 488-3370", "address": "381 Vanderveer Place, Wattsville, Montana, 8218", "about": "Sint do fugiat et laborum et ut non do sit. Nulla nulla incididunt ipsum eiusmod proident. Irure reprehenderit qui ea excepteur ullamco.\r\n", "registered": "2014-04-27T02:11:12-12:00", "latitude": -60.022471, "longitude": -106.052368, "tags": [ "ea", "ad", "id", "nulla", "ex", "sunt", "incididunt" ], "friends": [ { "id": 0, "name": "Schultz Merrill" }, { "id": 1, "name": "Hernandez Cherry" }, { "id": 2, "name": "Hattie Lucas" } ], "greeting": "Hello, Ilene Perkins! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2522089a751f820f11", "index": 2498, "guid": "1206aa9d-8a67-4f24-94ad-2854e9fc191d", "isActive": false, "balance": "$3,096.12", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Underwood Hancock", "gender": "male", "company": "IMKAN", "email": "underwoodhancock@imkan.com", "phone": "+1 (875) 441-2257", "address": "692 Macdougal Street, Navarre, Wisconsin, 3400", "about": "Nisi ullamco commodo mollit non exercitation ipsum nulla officia proident esse ex. Exercitation mollit consectetur tempor id ea laborum cupidatat commodo ut dolore sit veniam pariatur cupidatat. Ut nisi fugiat ex est duis magna velit consectetur fugiat occaecat cupidatat ut. Aute cillum tempor ex nisi in enim Lorem consequat tempor.\r\n", "registered": "2014-09-06T17:44:59-12:00", "latitude": -39.251675, "longitude": 111.813337, "tags": [ "officia", "pariatur", "aute", "labore", "pariatur", "eu", "non" ], "friends": [ { "id": 0, "name": "Antonia Wilkerson" }, { "id": 1, "name": "Meghan Zamora" }, { "id": 2, "name": "Wise Mack" } ], "greeting": "Hello, Underwood Hancock! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea254828047036ea7e86", "index": 2499, "guid": "d6d3f07b-4ea0-4afb-9c48-8341b228d885", "isActive": false, "balance": "$1,264.58", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Trina Oneill", "gender": "female", "company": "BIOTICA", "email": "trinaoneill@biotica.com", "phone": "+1 (894) 595-2761", "address": "328 Roosevelt Court, Hachita, Maine, 1856", "about": "Ullamco eu mollit sit duis. Incididunt minim ullamco veniam et consequat ad. Ex magna do ea veniam tempor ut Lorem est et dolor duis. Reprehenderit et et officia ex.\r\n", "registered": "2014-06-16T16:28:25-12:00", "latitude": 44.655057, "longitude": 105.537828, "tags": [ "fugiat", "sit", "cillum", "cillum", "sunt", "non", "excepteur" ], "friends": [ { "id": 0, "name": "Gilbert Lawson" }, { "id": 1, "name": "Roberts Thomas" }, { "id": 2, "name": "Rosie Stein" } ], "greeting": "Hello, Trina Oneill! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25ad9d9c632f996267", "index": 2500, "guid": "a227dc32-b17e-4e9f-8876-c44fc01ac6df", "isActive": true, "balance": "$1,714.00", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Norma Jacobs", "gender": "female", "company": "MEDESIGN", "email": "normajacobs@medesign.com", "phone": "+1 (898) 506-3594", "address": "750 Gaylord Drive, Bagtown, Virginia, 3639", "about": "Aliquip fugiat magna labore ut id ex qui adipisicing aliqua. Labore excepteur anim anim nisi do laborum ad sint ipsum Lorem aute. Lorem in proident ea qui aute. Mollit magna dolor exercitation in Lorem labore. Enim ipsum cillum aliquip excepteur. Velit incididunt qui veniam duis ex ullamco est reprehenderit voluptate eu qui dolore culpa ex.\r\n", "registered": "2014-05-10T02:00:14-12:00", "latitude": 28.612356, "longitude": -128.311456, "tags": [ "magna", "in", "dolor", "velit", "irure", "nisi", "esse" ], "friends": [ { "id": 0, "name": "Goodwin Malone" }, { "id": 1, "name": "Sharp Lynch" }, { "id": 2, "name": "Felicia Hendrix" } ], "greeting": "Hello, Norma Jacobs! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2591d5332554703389", "index": 2501, "guid": "3050563a-9598-4a6c-a219-5a76730f63c8", "isActive": true, "balance": "$1,450.36", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Perez Meyer", "gender": "male", "company": "HYPLEX", "email": "perezmeyer@hyplex.com", "phone": "+1 (808) 563-2453", "address": "681 Engert Avenue, Forestburg, Kentucky, 6137", "about": "Lorem adipisicing officia deserunt sunt Lorem consectetur eiusmod. Et cillum ullamco veniam consectetur esse ipsum duis tempor. Nulla velit enim enim amet culpa consequat veniam consequat dolor dolore nostrud fugiat sint. Qui mollit ex sint occaecat dolore laborum minim nostrud veniam et duis. Officia enim commodo elit dolor aute ex.\r\n", "registered": "2014-04-12T21:48:45-12:00", "latitude": 36.792246, "longitude": -17.10345, "tags": [ "excepteur", "id", "aliquip", "cupidatat", "dolore", "ut", "sit" ], "friends": [ { "id": 0, "name": "Robert Walton" }, { "id": 1, "name": "Sondra Stanley" }, { "id": 2, "name": "Olivia Collins" } ], "greeting": "Hello, Perez Meyer! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2570713382ed92c892", "index": 2502, "guid": "cffd9a8e-9dfd-426c-a42a-3fd967313a30", "isActive": false, "balance": "$3,038.35", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Etta Sosa", "gender": "female", "company": "NETROPIC", "email": "ettasosa@netropic.com", "phone": "+1 (942) 591-2075", "address": "817 Girard Street, Grazierville, Connecticut, 8664", "about": "Sunt enim tempor voluptate nulla laborum aliquip anim ea reprehenderit officia ut aliqua in. Sunt eu fugiat sint ullamco eu adipisicing sunt magna pariatur aliquip laborum nisi. Deserunt ex excepteur voluptate id cillum anim.\r\n", "registered": "2014-06-30T12:58:11-12:00", "latitude": -18.738597, "longitude": -81.229615, "tags": [ "esse", "occaecat", "aliquip", "enim", "dolore", "ut", "sint" ], "friends": [ { "id": 0, "name": "Mattie Sampson" }, { "id": 1, "name": "Anastasia Cain" }, { "id": 2, "name": "Strickland Sawyer" } ], "greeting": "Hello, Etta Sosa! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2569ecbb31f71444d8", "index": 2503, "guid": "99c45d2d-2d1b-4d82-adc1-59f68b8c6d96", "isActive": false, "balance": "$3,023.35", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Hampton Wilder", "gender": "male", "company": "ZERBINA", "email": "hamptonwilder@zerbina.com", "phone": "+1 (905) 495-3502", "address": "356 Forbell Street, Templeton, Mississippi, 3479", "about": "Officia nisi ad minim exercitation mollit incididunt ex ex. Cupidatat esse exercitation minim nisi est esse quis esse eu nostrud adipisicing. Aute ullamco sint proident fugiat voluptate dolor proident proident officia ad excepteur. Laboris culpa nisi enim in. Aliquip eu et est excepteur magna ullamco irure cupidatat aute id. Pariatur cupidatat esse cillum eiusmod fugiat ut laboris reprehenderit minim et aliqua ea. Pariatur eu laboris id non laboris nisi.\r\n", "registered": "2014-01-24T14:08:44-13:00", "latitude": -19.950033, "longitude": -126.61242, "tags": [ "nostrud", "ullamco", "eu", "proident", "nostrud", "sit", "minim" ], "friends": [ { "id": 0, "name": "Dorothy Mccray" }, { "id": 1, "name": "James Sanford" }, { "id": 2, "name": "Vanessa Cardenas" } ], "greeting": "Hello, Hampton Wilder! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25ae08b2ac54f76910", "index": 2504, "guid": "129d37ae-8403-4ea9-992e-7f9ec65b74aa", "isActive": true, "balance": "$1,524.51", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Lina Morrow", "gender": "female", "company": "CYCLONICA", "email": "linamorrow@cyclonica.com", "phone": "+1 (852) 494-2607", "address": "250 Schenectady Avenue, Gibsonia, Washington, 3466", "about": "Cillum laboris eiusmod dolor exercitation et id. Sint sit eu consequat qui dolore adipisicing consequat. Excepteur ex consequat veniam consectetur sit. In adipisicing Lorem dolor culpa id ex anim elit elit ut commodo ea exercitation.\r\n", "registered": "2014-02-19T01:52:05-13:00", "latitude": -37.775402, "longitude": 38.963284, "tags": [ "duis", "non", "Lorem", "irure", "elit", "proident", "dolore" ], "friends": [ { "id": 0, "name": "Albert Livingston" }, { "id": 1, "name": "Flores Hamilton" }, { "id": 2, "name": "Davenport Shepherd" } ], "greeting": "Hello, Lina Morrow! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25bd81506f5264cdd8", "index": 2505, "guid": "8c10e3a5-6074-49c5-807a-927c3eeb3134", "isActive": false, "balance": "$3,466.53", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Lou Clayton", "gender": "female", "company": "QOT", "email": "louclayton@qot.com", "phone": "+1 (988) 458-3408", "address": "864 Dewey Place, Why, Tennessee, 4120", "about": "Non aliqua quis ex fugiat aute laborum ex. Aliqua officia do irure ullamco consectetur tempor nulla quis aliquip ea. Cupidatat commodo est non et irure ullamco ullamco exercitation cillum officia do. Duis ea dolor aliqua nostrud.\r\n", "registered": "2014-01-08T18:33:05-13:00", "latitude": 36.968644, "longitude": -108.583104, "tags": [ "culpa", "aute", "id", "anim", "commodo", "esse", "mollit" ], "friends": [ { "id": 0, "name": "Lorie Atkinson" }, { "id": 1, "name": "Dotson Clay" }, { "id": 2, "name": "Allyson Whitehead" } ], "greeting": "Hello, Lou Clayton! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25275ed5d74927fcbf", "index": 2506, "guid": "c81ae0e1-8a70-45a8-bdef-ac6be910d5c0", "isActive": false, "balance": "$2,142.88", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Patsy Rush", "gender": "female", "company": "ISOSTREAM", "email": "patsyrush@isostream.com", "phone": "+1 (870) 577-2630", "address": "625 Banner Avenue, Elrama, Alabama, 615", "about": "Labore consectetur proident veniam cillum ex sunt non ipsum quis magna consequat velit. Adipisicing deserunt laborum labore est ad ex nulla. Lorem dolore consectetur id et proident Lorem pariatur nisi. Ut pariatur dolore pariatur cillum duis. Ut anim ea voluptate tempor do sit id. Nulla do non quis elit non. Ad qui id ipsum aliqua deserunt do tempor.\r\n", "registered": "2014-07-04T23:25:51-12:00", "latitude": 79.12343, "longitude": 98.236878, "tags": [ "veniam", "dolor", "deserunt", "id", "pariatur", "dolor", "adipisicing" ], "friends": [ { "id": 0, "name": "Victoria Hayden" }, { "id": 1, "name": "Amalia Wooten" }, { "id": 2, "name": "Fern Blankenship" } ], "greeting": "Hello, Patsy Rush! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25b932a34eeff1197e", "index": 2507, "guid": "41025d6d-b358-45a5-add8-078d5c5bbb3e", "isActive": true, "balance": "$3,439.52", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Katharine Kent", "gender": "female", "company": "NEBULEAN", "email": "katharinekent@nebulean.com", "phone": "+1 (904) 554-3033", "address": "357 Hazel Court, Wilsonia, Ohio, 2436", "about": "Exercitation ad aute laborum quis. Id est aliqua ut consequat in officia. Mollit elit dolor anim id est sunt irure irure enim dolore proident laboris commodo. Id eiusmod eiusmod non incididunt nostrud eiusmod nulla reprehenderit aliquip.\r\n", "registered": "2014-09-13T07:32:48-12:00", "latitude": -86.975923, "longitude": -88.9035, "tags": [ "nulla", "Lorem", "nulla", "ullamco", "ea", "est", "nulla" ], "friends": [ { "id": 0, "name": "Kim Ramirez" }, { "id": 1, "name": "Lottie Hardy" }, { "id": 2, "name": "Williamson Ross" } ], "greeting": "Hello, Katharine Kent! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2545c69bff5dafa20d", "index": 2508, "guid": "947dd9e9-12ad-4696-9915-1d881f7961d0", "isActive": false, "balance": "$1,281.57", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Lydia Wade", "gender": "female", "company": "OHMNET", "email": "lydiawade@ohmnet.com", "phone": "+1 (878) 408-2379", "address": "311 Danforth Street, Leyner, Hawaii, 7312", "about": "Laboris adipisicing veniam non et ea nulla id mollit Lorem consequat nisi mollit aliquip. Occaecat nisi qui magna ipsum anim esse esse. Enim deserunt ut sunt magna pariatur ex nulla exercitation cillum veniam et tempor. Quis est labore ea incididunt incididunt. Aute qui commodo dolore et incididunt commodo enim culpa id. Excepteur est ad est voluptate ad tempor eiusmod ullamco elit. Aliqua nulla commodo est non nostrud elit velit elit excepteur sunt tempor laboris aliquip laboris.\r\n", "registered": "2014-05-27T21:43:25-12:00", "latitude": -15.437929, "longitude": -41.277332, "tags": [ "dolor", "sint", "commodo", "Lorem", "labore", "incididunt", "fugiat" ], "friends": [ { "id": 0, "name": "Patrick Cunningham" }, { "id": 1, "name": "Colette Noble" }, { "id": 2, "name": "Berg Montgomery" } ], "greeting": "Hello, Lydia Wade! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea255b831941fb83fa6b", "index": 2509, "guid": "43a252ba-a21d-4391-9cca-1491dcc4ca0f", "isActive": true, "balance": "$1,947.22", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Marina Tran", "gender": "female", "company": "AQUASSEUR", "email": "marinatran@aquasseur.com", "phone": "+1 (959) 569-2254", "address": "559 Bouck Court, Wacissa, New Mexico, 6300", "about": "Dolor dolore ea elit officia ad reprehenderit et pariatur veniam Lorem id adipisicing ut eu. Aliquip elit cupidatat esse voluptate consectetur nulla in. Eu officia consectetur cupidatat amet. Excepteur commodo adipisicing velit elit quis non tempor ipsum id mollit amet ullamco mollit voluptate. Excepteur veniam elit consectetur exercitation qui aute quis ipsum et reprehenderit nisi. Duis nulla occaecat proident irure. Minim laboris esse veniam reprehenderit ex qui duis laborum.\r\n", "registered": "2014-06-08T11:38:31-12:00", "latitude": 42.760253, "longitude": -37.408148, "tags": [ "tempor", "nisi", "magna", "pariatur", "esse", "adipisicing", "exercitation" ], "friends": [ { "id": 0, "name": "Meadows Valdez" }, { "id": 1, "name": "Downs Hebert" }, { "id": 2, "name": "Dodson Simmons" } ], "greeting": "Hello, Marina Tran! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25369edebdef552658", "index": 2510, "guid": "dd6a9520-0835-431d-bd78-8a0bd6e073bb", "isActive": true, "balance": "$2,417.27", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Brock Fox", "gender": "male", "company": "GOGOL", "email": "brockfox@gogol.com", "phone": "+1 (802) 530-3632", "address": "946 Pleasant Place, Hiko, Maryland, 1978", "about": "In exercitation consequat non cillum dolore id nostrud velit quis. Nostrud Lorem incididunt minim consequat elit. Magna laborum minim enim tempor. Cillum do ad nisi occaecat. Adipisicing culpa excepteur labore qui mollit ad pariatur velit consequat in amet do sint consequat. Ut quis in culpa ipsum qui anim nostrud. Ut commodo irure consequat voluptate in laboris dolor.\r\n", "registered": "2014-09-17T00:53:05-12:00", "latitude": -34.637635, "longitude": -91.635115, "tags": [ "dolor", "nulla", "labore", "officia", "ea", "non", "irure" ], "friends": [ { "id": 0, "name": "Salas Mosley" }, { "id": 1, "name": "Flynn Cole" }, { "id": 2, "name": "Susanne Waters" } ], "greeting": "Hello, Brock Fox! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2505a19c5aeda15779", "index": 2511, "guid": "c929a35a-aa6a-478b-ab0c-ed16df5df08f", "isActive": false, "balance": "$2,577.64", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Ellen Vega", "gender": "female", "company": "REMOLD", "email": "ellenvega@remold.com", "phone": "+1 (955) 466-2455", "address": "480 Barlow Drive, Tuskahoma, Alaska, 9564", "about": "Quis laborum laboris incididunt commodo aliquip in dolor cupidatat adipisicing anim cupidatat cupidatat. Reprehenderit veniam esse nostrud non ea ipsum labore veniam consequat commodo ex amet. Quis ullamco enim ea adipisicing sit cupidatat laborum laborum.\r\n", "registered": "2014-08-07T05:42:10-12:00", "latitude": -31.394835, "longitude": -2.300978, "tags": [ "officia", "aliqua", "Lorem", "ullamco", "veniam", "occaecat", "cillum" ], "friends": [ { "id": 0, "name": "Porter Madden" }, { "id": 1, "name": "Harriett Bradford" }, { "id": 2, "name": "Penelope Slater" } ], "greeting": "Hello, Ellen Vega! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2571841355e93f8959", "index": 2512, "guid": "03c08013-41df-46d0-860a-10a20728fec6", "isActive": true, "balance": "$1,561.79", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Tammy Maddox", "gender": "female", "company": "GENMOM", "email": "tammymaddox@genmom.com", "phone": "+1 (880) 557-3448", "address": "747 Denton Place, Cazadero, Arizona, 163", "about": "Cupidatat sint eiusmod ad pariatur aute mollit anim velit ad reprehenderit. Aute minim ea adipisicing nulla aliqua amet tempor. Ut ipsum incididunt ex do anim excepteur minim Lorem est dolore consequat consequat dolore excepteur. Sunt duis culpa Lorem ex duis.\r\n", "registered": "2014-01-19T18:07:19-13:00", "latitude": 74.881881, "longitude": -146.029783, "tags": [ "in", "ad", "culpa", "minim", "reprehenderit", "nulla", "sint" ], "friends": [ { "id": 0, "name": "Leah Ward" }, { "id": 1, "name": "Ebony Rice" }, { "id": 2, "name": "Small Hendricks" } ], "greeting": "Hello, Tammy Maddox! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25a36722acc58030f2", "index": 2513, "guid": "b95ffe3b-9ad5-48c9-a503-6813257575f9", "isActive": true, "balance": "$3,605.25", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Amanda Morse", "gender": "female", "company": "EQUITOX", "email": "amandamorse@equitox.com", "phone": "+1 (828) 484-2989", "address": "316 Dakota Place, Hiseville, Federated States Of Micronesia, 5033", "about": "Aliqua consectetur id consectetur enim nulla quis est qui aliqua voluptate. Dolor id velit cupidatat sit eiusmod irure do excepteur deserunt duis Lorem mollit laborum cillum. Culpa mollit enim duis ad sit voluptate commodo aliqua deserunt deserunt qui cupidatat. Dolore voluptate magna nulla cillum. Sit cupidatat dolore deserunt anim minim est esse. Voluptate nulla sint cupidatat tempor magna officia est proident aliqua et ullamco duis irure velit.\r\n", "registered": "2014-03-22T13:04:28-13:00", "latitude": 29.251525, "longitude": -158.917332, "tags": [ "adipisicing", "ullamco", "esse", "occaecat", "qui", "occaecat", "deserunt" ], "friends": [ { "id": 0, "name": "Cathleen James" }, { "id": 1, "name": "Ballard Griffith" }, { "id": 2, "name": "Desiree Webb" } ], "greeting": "Hello, Amanda Morse! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25e5ff968bc4ffabcf", "index": 2514, "guid": "47e8052a-7db4-4162-abf1-a8cbda3369d4", "isActive": false, "balance": "$2,130.17", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Eloise Kirk", "gender": "female", "company": "ZILIDIUM", "email": "eloisekirk@zilidium.com", "phone": "+1 (842) 510-3612", "address": "943 Seacoast Terrace, Avalon, Oklahoma, 1332", "about": "Anim sint veniam reprehenderit nulla eu in aliqua Lorem sit deserunt dolore fugiat. Cillum enim consectetur anim cupidatat enim mollit ad excepteur id aute consectetur esse nostrud duis. Esse et consectetur voluptate amet voluptate elit. Ex voluptate culpa culpa deserunt dolor quis consequat cillum labore quis aute ut irure.\r\n", "registered": "2014-08-05T01:37:36-12:00", "latitude": -65.217208, "longitude": -160.407683, "tags": [ "elit", "adipisicing", "nostrud", "eiusmod", "nostrud", "magna", "velit" ], "friends": [ { "id": 0, "name": "Casey Rutledge" }, { "id": 1, "name": "Reva Baker" }, { "id": 2, "name": "Kline Daniels" } ], "greeting": "Hello, Eloise Kirk! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25259efb3ec06e9dae", "index": 2515, "guid": "56c16365-49bd-49a1-a9a9-f6397d09cbc0", "isActive": true, "balance": "$2,747.63", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Haley Wright", "gender": "female", "company": "GADTRON", "email": "haleywright@gadtron.com", "phone": "+1 (908) 571-2361", "address": "855 Joralemon Street, Chesterfield, Michigan, 7484", "about": "Ipsum elit aute deserunt culpa veniam laboris magna aliqua minim sint veniam. In incididunt enim id excepteur laboris sunt eiusmod nostrud consectetur esse adipisicing mollit ipsum. Ex enim minim Lorem labore quis. Labore nostrud velit et anim est exercitation ad nulla. Commodo quis nostrud culpa id anim irure culpa excepteur. Pariatur ut elit occaecat id laboris.\r\n", "registered": "2014-05-03T22:41:00-12:00", "latitude": 11.551734, "longitude": -149.985897, "tags": [ "est", "occaecat", "dolore", "eiusmod", "quis", "consectetur", "tempor" ], "friends": [ { "id": 0, "name": "Beverly Patel" }, { "id": 1, "name": "Soto Cook" }, { "id": 2, "name": "Jeri Bullock" } ], "greeting": "Hello, Haley Wright! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c46c7ac6308047b2", "index": 2516, "guid": "01d2fba0-45be-470b-bc94-ac1dad7e70a7", "isActive": false, "balance": "$3,876.18", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Margery Nicholson", "gender": "female", "company": "XYQAG", "email": "margerynicholson@xyqag.com", "phone": "+1 (857) 511-3925", "address": "323 Pitkin Avenue, Convent, Kansas, 9262", "about": "Dolore ex culpa enim deserunt nostrud nostrud dolor do ea laboris aute fugiat nostrud. Dolore in nostrud ipsum nulla consequat qui nisi anim quis. Qui ad adipisicing cillum cillum consectetur proident Lorem. Magna irure minim voluptate sit nulla anim consectetur veniam cillum amet elit tempor nisi.\r\n", "registered": "2014-08-02T17:36:55-12:00", "latitude": 12.91464, "longitude": 91.473808, "tags": [ "magna", "velit", "in", "exercitation", "quis", "sint", "esse" ], "friends": [ { "id": 0, "name": "Ramsey Grimes" }, { "id": 1, "name": "Glenda Olsen" }, { "id": 2, "name": "Durham Ramsey" } ], "greeting": "Hello, Margery Nicholson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea258e2f7930d151d1bd", "index": 2517, "guid": "9ede7eb6-eafa-4dc8-b014-46b7d5a62019", "isActive": true, "balance": "$3,323.20", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Hanson Barrera", "gender": "male", "company": "HELIXO", "email": "hansonbarrera@helixo.com", "phone": "+1 (816) 494-2078", "address": "780 Monroe Place, Jardine, South Dakota, 1543", "about": "Eiusmod commodo ad aliquip veniam in ad consequat est dolore minim sint occaecat. Quis fugiat tempor qui ex ut. Aute in duis sit ea nisi sit nisi ex ipsum ex. Exercitation irure ea fugiat cupidatat reprehenderit aute.\r\n", "registered": "2014-08-09T14:29:32-12:00", "latitude": -87.179231, "longitude": 30.114475, "tags": [ "adipisicing", "occaecat", "ut", "incididunt", "ex", "dolor", "labore" ], "friends": [ { "id": 0, "name": "Conner Moses" }, { "id": 1, "name": "Benita Huff" }, { "id": 2, "name": "Mccullough Mcintyre" } ], "greeting": "Hello, Hanson Barrera! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25ff5bd5b6b1fb53e2", "index": 2518, "guid": "241cc642-c913-45fe-adb3-3440160be61d", "isActive": true, "balance": "$2,762.69", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Cherie Hicks", "gender": "female", "company": "VIDTO", "email": "cheriehicks@vidto.com", "phone": "+1 (916) 552-3277", "address": "826 Pierrepont Street, Berwind, West Virginia, 4454", "about": "Pariatur elit adipisicing aliquip in non non ad ea ipsum officia mollit non non id. Veniam mollit fugiat quis occaecat enim laborum proident ea occaecat Lorem excepteur cupidatat dolore incididunt. Sit non excepteur anim sint anim sit in. Eu nisi excepteur cupidatat ipsum amet excepteur tempor. Irure nostrud sunt ipsum culpa sunt quis tempor.\r\n", "registered": "2014-05-09T21:42:14-12:00", "latitude": 4.274132, "longitude": -5.314999, "tags": [ "occaecat", "amet", "ipsum", "excepteur", "duis", "sit", "nisi" ], "friends": [ { "id": 0, "name": "Woods Carlson" }, { "id": 1, "name": "Todd Ayers" }, { "id": 2, "name": "Gutierrez Leach" } ], "greeting": "Hello, Cherie Hicks! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea257f355affd91d2c24", "index": 2519, "guid": "c217c41a-f12e-4961-8344-adb01e10d510", "isActive": false, "balance": "$1,679.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Shaffer Lyons", "gender": "male", "company": "BEZAL", "email": "shafferlyons@bezal.com", "phone": "+1 (840) 536-3280", "address": "968 Cheever Place, Nescatunga, Texas, 2558", "about": "Excepteur aliqua ex esse aute pariatur amet qui labore. Ut irure cillum magna proident deserunt minim exercitation dolor. Mollit deserunt esse consectetur labore dolore ex officia dolore velit amet aliqua.\r\n", "registered": "2014-03-08T16:43:58-13:00", "latitude": 79.861664, "longitude": 54.835669, "tags": [ "veniam", "ut", "sunt", "proident", "aute", "est", "aute" ], "friends": [ { "id": 0, "name": "Macdonald Robles" }, { "id": 1, "name": "Garza Curry" }, { "id": 2, "name": "Mccray Marquez" } ], "greeting": "Hello, Shaffer Lyons! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25630d086e3189141c", "index": 2520, "guid": "c6817640-596e-42bb-adac-6512b8ae064c", "isActive": false, "balance": "$1,576.68", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Elnora Acevedo", "gender": "female", "company": "ENTOGROK", "email": "elnoraacevedo@entogrok.com", "phone": "+1 (878) 491-3831", "address": "143 Amity Street, Westwood, Oregon, 3161", "about": "Ut deserunt adipisicing nostrud et enim. Do dolor ex ullamco irure tempor fugiat consectetur do ipsum labore. Duis incididunt magna incididunt exercitation esse duis.\r\n", "registered": "2014-08-08T19:41:57-12:00", "latitude": 85.661158, "longitude": 68.050043, "tags": [ "reprehenderit", "nisi", "fugiat", "elit", "id", "et", "irure" ], "friends": [ { "id": 0, "name": "Copeland Reeves" }, { "id": 1, "name": "Decker Irwin" }, { "id": 2, "name": "Sheena Terrell" } ], "greeting": "Hello, Elnora Acevedo! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25b87c66be48a74e00", "index": 2521, "guid": "09806c6a-9a62-4302-950d-162052541a28", "isActive": true, "balance": "$2,147.85", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Trudy Schmidt", "gender": "female", "company": "ZANILLA", "email": "trudyschmidt@zanilla.com", "phone": "+1 (843) 569-2961", "address": "164 Taaffe Place, Camas, Nevada, 7533", "about": "Irure ullamco quis et consequat adipisicing ex labore incididunt aliqua aliquip tempor est. Voluptate labore cillum anim veniam elit ad consequat excepteur ut tempor consequat labore pariatur. Nulla aute veniam dolore aliqua ex Lorem excepteur est amet cillum do amet voluptate cillum. Ad fugiat eu anim officia non sit id voluptate deserunt est commodo aute culpa. Sint eiusmod ea est consectetur.\r\n", "registered": "2014-02-15T10:23:27-13:00", "latitude": 7.346056, "longitude": -135.843777, "tags": [ "elit", "exercitation", "exercitation", "do", "pariatur", "amet", "labore" ], "friends": [ { "id": 0, "name": "Greta Delaney" }, { "id": 1, "name": "Eileen Wyatt" }, { "id": 2, "name": "Lela Lindsey" } ], "greeting": "Hello, Trudy Schmidt! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25745c97cc276f46cc", "index": 2522, "guid": "11591d2b-72e4-4717-85d8-73f82ab19098", "isActive": true, "balance": "$2,571.85", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Salinas Head", "gender": "male", "company": "SEQUITUR", "email": "salinashead@sequitur.com", "phone": "+1 (914) 458-3031", "address": "316 Dewitt Avenue, Brandermill, Minnesota, 2889", "about": "Id irure nulla labore dolore ad et veniam consequat et occaecat excepteur dolore et ad. Sunt sint aute occaecat qui ea ad consequat ex ut. Velit incididunt aliqua id ipsum pariatur ut incididunt. Ipsum occaecat tempor cupidatat et deserunt duis sunt velit cupidatat. Adipisicing aliqua ex consequat anim sunt ut tempor. Ad nulla aute dolore pariatur. Enim officia aliquip anim esse pariatur ipsum occaecat.\r\n", "registered": "2014-06-10T15:29:42-12:00", "latitude": -19.156158, "longitude": 134.016386, "tags": [ "proident", "exercitation", "eu", "nulla", "anim", "occaecat", "excepteur" ], "friends": [ { "id": 0, "name": "Norman Morrison" }, { "id": 1, "name": "Perkins Crawford" }, { "id": 2, "name": "Weaver Espinoza" } ], "greeting": "Hello, Salinas Head! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c0d33afdbcfc04cf", "index": 2523, "guid": "a60a1bf8-59a0-439e-a937-a26ebf88a619", "isActive": true, "balance": "$1,271.78", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Opal Sullivan", "gender": "female", "company": "PROSELY", "email": "opalsullivan@prosely.com", "phone": "+1 (919) 569-2080", "address": "102 Guider Avenue, Sunriver, Missouri, 643", "about": "Voluptate cillum incididunt mollit pariatur velit nisi officia exercitation irure deserunt. Eiusmod cupidatat commodo ad ullamco veniam esse. Tempor pariatur ullamco ea consequat dolore velit aliquip aliqua in officia irure. Quis eu ut excepteur eiusmod duis anim mollit.\r\n", "registered": "2014-02-13T01:16:34-13:00", "latitude": -86.978503, "longitude": 90.514508, "tags": [ "nisi", "exercitation", "magna", "cillum", "irure", "aute", "do" ], "friends": [ { "id": 0, "name": "Suarez Day" }, { "id": 1, "name": "Mandy Harmon" }, { "id": 2, "name": "Winters English" } ], "greeting": "Hello, Opal Sullivan! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2542dc9d70265cf922", "index": 2524, "guid": "2e8ffa97-5e6c-40a2-abfa-002b2d314654", "isActive": false, "balance": "$3,777.89", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Arlene Buckley", "gender": "female", "company": "WATERBABY", "email": "arlenebuckley@waterbaby.com", "phone": "+1 (892) 495-2295", "address": "690 Bartlett Place, Whitehaven, Rhode Island, 3767", "about": "Amet et incididunt quis reprehenderit duis cupidatat amet aliquip anim nostrud nisi laborum ullamco deserunt. Ullamco cupidatat irure anim in et ad sit deserunt sunt ex et aute in aliqua. Ipsum ea irure quis amet eu excepteur aliqua. Consectetur Lorem veniam culpa cupidatat anim veniam quis deserunt. Aliquip culpa commodo aliquip pariatur aute quis tempor cillum mollit minim laborum est. Eiusmod enim adipisicing do magna fugiat occaecat cillum laborum.\r\n", "registered": "2014-08-29T22:47:32-12:00", "latitude": -37.1065, "longitude": 22.979918, "tags": [ "sunt", "deserunt", "mollit", "pariatur", "sit", "dolore", "qui" ], "friends": [ { "id": 0, "name": "Cline Haley" }, { "id": 1, "name": "Garner Mullen" }, { "id": 2, "name": "Conway Bray" } ], "greeting": "Hello, Arlene Buckley! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25ad7dba2aa6d2120f", "index": 2525, "guid": "8b7e9833-5dba-420c-b72e-abbed65f6887", "isActive": false, "balance": "$3,863.27", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Obrien Gay", "gender": "male", "company": "FROLIX", "email": "obriengay@frolix.com", "phone": "+1 (870) 413-3461", "address": "194 Harkness Avenue, Cobbtown, Florida, 8405", "about": "Aliqua dolore est cillum qui culpa nostrud mollit dolore laborum voluptate ipsum ea ipsum. Adipisicing sunt laboris aliquip ipsum pariatur nulla sint nisi nostrud deserunt velit voluptate excepteur fugiat. Tempor excepteur nostrud in duis incididunt qui amet elit esse consequat cillum amet veniam nulla. Aliquip dolore sit occaecat pariatur. Voluptate ut magna proident elit dolore velit sit officia incididunt nostrud officia tempor voluptate. Ea sit incididunt sunt ea esse est aliquip incididunt eiusmod et.\r\n", "registered": "2014-03-15T03:42:02-13:00", "latitude": -52.526716, "longitude": -154.587047, "tags": [ "sunt", "ea", "ea", "et", "ut", "officia", "consequat" ], "friends": [ { "id": 0, "name": "Petra Pitts" }, { "id": 1, "name": "Baker Vance" }, { "id": 2, "name": "Mcmillan Kidd" } ], "greeting": "Hello, Obrien Gay! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25de7c4710717e01b2", "index": 2526, "guid": "a100bea2-1e72-4c66-a876-7920ee283c0c", "isActive": true, "balance": "$1,059.05", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Ada Bridges", "gender": "female", "company": "MANGLO", "email": "adabridges@manglo.com", "phone": "+1 (839) 483-2529", "address": "782 Tech Place, Sehili, North Carolina, 8141", "about": "Lorem laboris cillum nisi id do pariatur ea sit consequat eiusmod. Nulla aliqua voluptate ipsum laboris esse pariatur excepteur ex amet mollit et laborum proident. Exercitation duis enim id est Lorem sint voluptate labore cillum cupidatat deserunt.\r\n", "registered": "2014-05-10T14:58:32-12:00", "latitude": 33.080163, "longitude": 104.600151, "tags": [ "pariatur", "cillum", "non", "laboris", "aliqua", "consectetur", "culpa" ], "friends": [ { "id": 0, "name": "Susan Alford" }, { "id": 1, "name": "Horton Riley" }, { "id": 2, "name": "Hickman Brennan" } ], "greeting": "Hello, Ada Bridges! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2556e9d6baa2a3eefc", "index": 2527, "guid": "7a883463-f320-4026-b11c-1d3bdd7d195e", "isActive": false, "balance": "$1,447.05", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Connie Austin", "gender": "female", "company": "BITREX", "email": "connieaustin@bitrex.com", "phone": "+1 (938) 543-3940", "address": "673 Orient Avenue, Kaka, New Hampshire, 1559", "about": "Aliquip reprehenderit nulla qui magna excepteur elit irure irure. Excepteur aliqua ipsum ut elit cillum fugiat esse cillum dolore. Consequat laborum anim id eiusmod esse laborum magna. Laboris ipsum sint id excepteur. In velit elit fugiat enim ad proident excepteur quis voluptate cillum sint esse.\r\n", "registered": "2014-09-15T17:37:05-12:00", "latitude": 10.201279, "longitude": -63.971681, "tags": [ "fugiat", "est", "excepteur", "sunt", "cillum", "ea", "proident" ], "friends": [ { "id": 0, "name": "Gale Oneil" }, { "id": 1, "name": "Betsy Richard" }, { "id": 2, "name": "Latisha Casey" } ], "greeting": "Hello, Connie Austin! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25912a8c98d0aad9b5", "index": 2528, "guid": "3389f0da-fc70-4ee8-aa05-7d5fa4662b9e", "isActive": false, "balance": "$2,434.32", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Dena Figueroa", "gender": "female", "company": "POSHOME", "email": "denafigueroa@poshome.com", "phone": "+1 (864) 598-3538", "address": "626 Kansas Place, Calverton, Arkansas, 5559", "about": "Proident adipisicing sunt laborum velit adipisicing ea ad magna pariatur. Voluptate veniam aliqua anim labore cillum veniam magna. Consequat exercitation est ad irure amet consectetur velit sint officia. Duis Lorem dolore eiusmod cupidatat et occaecat mollit elit minim cupidatat ipsum nulla.\r\n", "registered": "2014-09-12T22:50:57-12:00", "latitude": -19.955115, "longitude": 120.055041, "tags": [ "ea", "elit", "ex", "sint", "veniam", "cillum", "labore" ], "friends": [ { "id": 0, "name": "Aurora Gallagher" }, { "id": 1, "name": "Maricela Copeland" }, { "id": 2, "name": "Hess Gould" } ], "greeting": "Hello, Dena Figueroa! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25afdce99d53e83100", "index": 2529, "guid": "5e6ef3ef-681f-40d2-b7d1-a466eab1fd21", "isActive": false, "balance": "$3,945.62", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Nola Sellers", "gender": "female", "company": "KIOSK", "email": "nolasellers@kiosk.com", "phone": "+1 (954) 429-2315", "address": "525 Maple Avenue, Wildwood, Iowa, 6540", "about": "Ut dolor amet ullamco dolore. Velit incididunt nisi do proident do anim ex velit esse officia pariatur commodo. Sit culpa duis dolor ex deserunt officia. Nostrud ad cillum irure ipsum magna cillum nisi veniam. Fugiat in cupidatat commodo esse eu enim minim culpa incididunt velit. Irure ut dolore qui enim dolore anim anim.\r\n", "registered": "2014-06-06T10:23:05-12:00", "latitude": 1.487686, "longitude": 2.846385, "tags": [ "amet", "duis", "aliquip", "ad", "minim", "nisi", "anim" ], "friends": [ { "id": 0, "name": "Mullins Long" }, { "id": 1, "name": "Aguilar Barnett" }, { "id": 2, "name": "Jan Morin" } ], "greeting": "Hello, Nola Sellers! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2556bf9df31478b487", "index": 2530, "guid": "40242994-a6bb-414f-b943-c250f53dfddc", "isActive": false, "balance": "$2,447.86", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Lorna Scott", "gender": "female", "company": "SATIANCE", "email": "lornascott@satiance.com", "phone": "+1 (930) 549-3745", "address": "299 Clymer Street, Disautel, Nebraska, 6537", "about": "Elit adipisicing do pariatur sint est mollit consequat laborum eiusmod laboris proident. Labore qui elit cillum aute dolore officia aute consequat proident est reprehenderit dolore. Ut aute ut commodo aliqua proident velit magna proident. Esse do ut id in tempor. Laborum duis proident labore irure non laborum excepteur consectetur duis.\r\n", "registered": "2014-04-26T12:50:56-12:00", "latitude": 52.432257, "longitude": -47.296113, "tags": [ "aliqua", "Lorem", "ullamco", "in", "aliquip", "nisi", "nostrud" ], "friends": [ { "id": 0, "name": "Renee Prince" }, { "id": 1, "name": "Earline Ryan" }, { "id": 2, "name": "Ruiz Knox" } ], "greeting": "Hello, Lorna Scott! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2543b0dbe2db70b37e", "index": 2531, "guid": "b69e4f09-92de-4f7d-a1b1-21660975a73e", "isActive": false, "balance": "$1,516.87", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Tran Yang", "gender": "male", "company": "ZOINAGE", "email": "tranyang@zoinage.com", "phone": "+1 (969) 557-2358", "address": "649 Albemarle Terrace, Lynn, District Of Columbia, 8899", "about": "Aliquip reprehenderit veniam officia ea mollit quis nisi in laborum tempor veniam. Culpa amet duis dolor laborum elit tempor anim enim ut enim. Irure amet nostrud duis tempor in velit. Amet nostrud ut laboris quis.\r\n", "registered": "2014-05-17T18:15:54-12:00", "latitude": 65.556225, "longitude": 40.061638, "tags": [ "ullamco", "dolore", "in", "nisi", "ex", "dolor", "esse" ], "friends": [ { "id": 0, "name": "Gentry Baldwin" }, { "id": 1, "name": "Wanda Hall" }, { "id": 2, "name": "Staci Joyner" } ], "greeting": "Hello, Tran Yang! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25df477962b47184f0", "index": 2532, "guid": "268244a3-5e5a-4527-958f-914f4362234b", "isActive": true, "balance": "$3,809.96", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Lopez Goodwin", "gender": "male", "company": "KAGE", "email": "lopezgoodwin@kage.com", "phone": "+1 (834) 400-2885", "address": "989 Halsey Street, Hondah, New Jersey, 5966", "about": "Dolor id minim aliqua veniam ad cillum nulla proident mollit ex labore id reprehenderit. Lorem velit enim incididunt velit magna dolor cupidatat cillum eu pariatur ea. Laborum id dolore tempor fugiat. Nulla amet est laborum ut fugiat proident irure ut officia fugiat magna. Minim dolor sint amet voluptate laboris sint culpa pariatur eu culpa duis veniam.\r\n", "registered": "2014-08-13T09:51:09-12:00", "latitude": -76.282066, "longitude": 65.475482, "tags": [ "quis", "anim", "culpa", "anim", "adipisicing", "pariatur", "reprehenderit" ], "friends": [ { "id": 0, "name": "Tyler Munoz" }, { "id": 1, "name": "Flowers Bush" }, { "id": 2, "name": "Sears Ramos" } ], "greeting": "Hello, Lopez Goodwin! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea256bf0a0e9750e7fd8", "index": 2533, "guid": "2ad849ba-d652-453c-95c7-62c384cce9aa", "isActive": false, "balance": "$1,028.23", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Tanisha Wagner", "gender": "female", "company": "SPEEDBOLT", "email": "tanishawagner@speedbolt.com", "phone": "+1 (820) 429-2821", "address": "462 Polar Street, Kirk, Palau, 9308", "about": "Proident incididunt culpa aute exercitation. Qui officia enim tempor ipsum. Laboris magna exercitation irure commodo dolor nisi ut labore laboris eu occaecat. Amet laboris ipsum adipisicing exercitation do consectetur pariatur pariatur ea nisi labore. Sunt occaecat est magna ullamco sit qui laborum amet elit ipsum eu.\r\n", "registered": "2014-02-05T05:48:10-13:00", "latitude": 27.132992, "longitude": 93.239968, "tags": [ "consectetur", "non", "veniam", "sint", "sint", "consectetur", "dolor" ], "friends": [ { "id": 0, "name": "Daphne Sandoval" }, { "id": 1, "name": "Sandy Bentley" }, { "id": 2, "name": "Nannie Skinner" } ], "greeting": "Hello, Tanisha Wagner! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea259667b9621dfe8f4b", "index": 2534, "guid": "98837142-d42b-434b-8802-d96ffdc215e7", "isActive": false, "balance": "$3,639.13", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Rosalyn Sharpe", "gender": "female", "company": "TWIIST", "email": "rosalynsharpe@twiist.com", "phone": "+1 (982) 582-3475", "address": "430 Ferry Place, Rose, Puerto Rico, 1106", "about": "Labore in qui qui id ea sit dolore. Mollit incididunt esse quis laborum excepteur elit ex consequat aliquip. Reprehenderit in incididunt minim exercitation cupidatat culpa esse aliquip. Voluptate dolore velit exercitation ea irure reprehenderit laboris.\r\n", "registered": "2014-06-13T06:34:28-12:00", "latitude": -85.372094, "longitude": 75.875645, "tags": [ "Lorem", "proident", "enim", "proident", "nulla", "aute", "exercitation" ], "friends": [ { "id": 0, "name": "Stanton Hull" }, { "id": 1, "name": "Lang Carney" }, { "id": 2, "name": "Duran Heath" } ], "greeting": "Hello, Rosalyn Sharpe! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25000344ebfe4b9ad7", "index": 2535, "guid": "a7e7e6c7-998c-434d-9bb6-0cd0e0a5cb91", "isActive": false, "balance": "$2,589.61", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Lesa Ortega", "gender": "female", "company": "ESCHOIR", "email": "lesaortega@eschoir.com", "phone": "+1 (813) 484-2138", "address": "226 Lewis Place, Frierson, California, 5678", "about": "Dolore tempor irure amet ad et adipisicing et incididunt exercitation occaecat sint quis adipisicing. Esse minim cupidatat velit occaecat minim qui consequat ea sint qui occaecat laborum elit nostrud. Et esse proident anim commodo eu pariatur enim exercitation est.\r\n", "registered": "2014-02-16T02:29:02-13:00", "latitude": 70.179116, "longitude": 99.587735, "tags": [ "ipsum", "enim", "esse", "consequat", "cupidatat", "quis", "fugiat" ], "friends": [ { "id": 0, "name": "Paulette Charles" }, { "id": 1, "name": "Hunter Hill" }, { "id": 2, "name": "Hallie Thompson" } ], "greeting": "Hello, Lesa Ortega! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2577cb944a53516ca3", "index": 2536, "guid": "ea7b5859-8fb6-4de0-ba9e-54fca4128f15", "isActive": false, "balance": "$2,547.63", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Guerrero Huffman", "gender": "male", "company": "ORGANICA", "email": "guerrerohuffman@organica.com", "phone": "+1 (995) 540-2537", "address": "502 Main Street, Charco, Vermont, 469", "about": "Incididunt veniam nostrud nulla nisi do tempor velit est ad elit reprehenderit deserunt. Irure aliquip ex adipisicing non deserunt laboris labore. Eu eiusmod duis in consectetur do est minim. Ea mollit sunt ut adipisicing. Id commodo eiusmod id nisi nostrud ea. Dolore ad culpa excepteur consequat mollit consequat sunt culpa culpa. Mollit sit proident laborum do tempor aliquip minim irure elit deserunt ullamco veniam.\r\n", "registered": "2014-01-14T18:19:02-13:00", "latitude": 17.805164, "longitude": 126.235265, "tags": [ "aliqua", "sint", "ex", "reprehenderit", "do", "dolore", "aute" ], "friends": [ { "id": 0, "name": "Larsen Bishop" }, { "id": 1, "name": "Robbins Jimenez" }, { "id": 2, "name": "Isabelle Morris" } ], "greeting": "Hello, Guerrero Huffman! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea255e7249a899a0d67e", "index": 2537, "guid": "bf0c9f76-caba-434f-853f-0f66ee84f53e", "isActive": false, "balance": "$3,743.31", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Vilma Gentry", "gender": "female", "company": "PEARLESEX", "email": "vilmagentry@pearlesex.com", "phone": "+1 (854) 444-2145", "address": "189 Keap Street, Carrizo, Indiana, 2196", "about": "Aute minim pariatur exercitation nostrud sunt duis esse excepteur. Id laborum non anim ad enim sit sit ut occaecat elit dolor. Non ipsum exercitation non esse labore. Anim voluptate labore ullamco incididunt veniam excepteur elit do labore nisi. In ipsum voluptate tempor ut velit officia incididunt ut culpa ea dolor exercitation. Eiusmod labore pariatur ut consectetur minim consequat aliquip sint eu velit eiusmod est exercitation. Pariatur irure eu cillum labore minim qui.\r\n", "registered": "2014-09-02T16:03:55-12:00", "latitude": -33.695282, "longitude": 132.108715, "tags": [ "adipisicing", "sint", "eu", "magna", "labore", "minim", "officia" ], "friends": [ { "id": 0, "name": "Bray Estes" }, { "id": 1, "name": "Vincent Tate" }, { "id": 2, "name": "Hubbard Tyson" } ], "greeting": "Hello, Vilma Gentry! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25bbb52b1c18980bbd", "index": 2538, "guid": "370baca3-372e-4b33-9f5d-6b7d7a48d4ba", "isActive": true, "balance": "$2,643.73", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Cheryl Stanton", "gender": "female", "company": "GEEKULAR", "email": "cherylstanton@geekular.com", "phone": "+1 (816) 446-3876", "address": "680 Ovington Court, Accoville, Illinois, 6400", "about": "Esse eu exercitation exercitation ad cillum pariatur anim dolore velit consectetur et. Qui ea occaecat eiusmod voluptate nisi reprehenderit sunt excepteur aliquip. Do mollit fugiat cupidatat sint ullamco aute tempor aliquip culpa eu. Aliqua ullamco ex aliquip dolore dolor amet adipisicing sit ea nostrud quis id reprehenderit et.\r\n", "registered": "2014-05-14T04:08:32-12:00", "latitude": 87.094492, "longitude": -128.104245, "tags": [ "elit", "ullamco", "enim", "est", "fugiat", "minim", "nisi" ], "friends": [ { "id": 0, "name": "Ratliff Pope" }, { "id": 1, "name": "Hendrix Galloway" }, { "id": 2, "name": "Bolton Compton" } ], "greeting": "Hello, Cheryl Stanton! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25e9b82f5ec53d4ac0", "index": 2539, "guid": "5c8ab0b9-0d97-4883-8cb8-bbdc88656a3a", "isActive": true, "balance": "$3,438.00", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Emerson Morgan", "gender": "male", "company": "KINDALOO", "email": "emersonmorgan@kindaloo.com", "phone": "+1 (904) 415-3877", "address": "806 Kossuth Place, Guthrie, South Carolina, 7805", "about": "Consequat commodo amet ullamco amet id. Laboris dolore nulla officia id consequat est irure consectetur nostrud amet officia. Commodo pariatur sint fugiat quis commodo excepteur amet. Cupidatat aliqua officia irure reprehenderit aliqua sint ullamco amet esse voluptate tempor tempor.\r\n", "registered": "2014-01-04T04:30:32-13:00", "latitude": -15.974656, "longitude": 30.598124, "tags": [ "mollit", "ipsum", "irure", "consectetur", "ad", "irure", "est" ], "friends": [ { "id": 0, "name": "Tracie Meadows" }, { "id": 1, "name": "Lindsey Paul" }, { "id": 2, "name": "Rose Browning" } ], "greeting": "Hello, Emerson Morgan! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2508a13521fcb4a60f", "index": 2540, "guid": "fb6a0457-9b59-480a-b61d-b13ce380369a", "isActive": true, "balance": "$3,998.70", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Key Knapp", "gender": "male", "company": "UNISURE", "email": "keyknapp@unisure.com", "phone": "+1 (899) 556-2102", "address": "599 Eaton Court, Albany, American Samoa, 8767", "about": "Deserunt nostrud eu eu labore amet ullamco officia ullamco sit laborum nisi nulla. Eu elit commodo Lorem laboris aliqua minim irure tempor irure anim. Velit excepteur ipsum sunt dolore velit ipsum dolor nisi sint. Dolore dolore cillum ea nisi et esse mollit ea occaecat occaecat. Magna magna irure magna in aliquip Lorem aliquip commodo commodo id aliquip veniam. Eu esse occaecat veniam ea qui esse do minim in commodo excepteur exercitation dolor. Est in Lorem exercitation ex nulla dolore duis enim aliqua ad labore dolor irure.\r\n", "registered": "2014-02-19T10:50:00-13:00", "latitude": 84.72377, "longitude": -125.119845, "tags": [ "nostrud", "magna", "aliqua", "ex", "sint", "pariatur", "culpa" ], "friends": [ { "id": 0, "name": "Sherri Santos" }, { "id": 1, "name": "Richmond Frank" }, { "id": 2, "name": "Walters Bird" } ], "greeting": "Hello, Key Knapp! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25b39451524bc420b7", "index": 2541, "guid": "50b9b722-b4c2-433d-a6e7-630c824c66e5", "isActive": true, "balance": "$2,593.04", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Dionne Bryan", "gender": "female", "company": "QUARX", "email": "dionnebryan@quarx.com", "phone": "+1 (805) 575-2901", "address": "653 Greene Avenue, Orick, Delaware, 9206", "about": "Esse proident consequat consequat ad. Officia duis labore ex quis duis occaecat ad ipsum velit. Amet enim reprehenderit nisi eiusmod consectetur velit deserunt amet irure est. Cupidatat quis duis et non et velit sunt cupidatat irure. Nostrud eu excepteur consequat incididunt aute aliqua nisi qui anim ullamco nisi tempor ea.\r\n", "registered": "2014-01-06T09:36:58-13:00", "latitude": -4.557943, "longitude": 56.908016, "tags": [ "veniam", "ullamco", "do", "tempor", "do", "magna", "officia" ], "friends": [ { "id": 0, "name": "Ana Joyce" }, { "id": 1, "name": "Bean Wilcox" }, { "id": 2, "name": "Grimes Dawson" } ], "greeting": "Hello, Dionne Bryan! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea258b1ae16ae0571c70", "index": 2542, "guid": "4249fda2-bfb8-4ddb-915f-a2aab52e8a1f", "isActive": false, "balance": "$1,852.47", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Melody Glover", "gender": "female", "company": "ZOXY", "email": "melodyglover@zoxy.com", "phone": "+1 (984) 482-3293", "address": "183 Minna Street, Gracey, Pennsylvania, 6819", "about": "Amet quis sit velit ipsum tempor quis anim laborum. Sit elit aliqua voluptate nisi enim ea velit sint aute ut irure officia sint ex. Deserunt reprehenderit incididunt ex excepteur nisi nisi dolor nisi enim ad qui. Pariatur anim veniam consectetur fugiat ex excepteur minim.\r\n", "registered": "2014-04-29T20:33:28-12:00", "latitude": -45.1822, "longitude": 69.687594, "tags": [ "nulla", "minim", "esse", "dolor", "nisi", "amet", "magna" ], "friends": [ { "id": 0, "name": "Rosa Mcknight" }, { "id": 1, "name": "Nikki Harris" }, { "id": 2, "name": "Ward Price" } ], "greeting": "Hello, Melody Glover! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25b22ba8ed67bc2feb", "index": 2543, "guid": "81c62d09-6a9a-4bd6-be7b-3aa628696af4", "isActive": true, "balance": "$3,237.77", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Nora Mckee", "gender": "female", "company": "RECRISYS", "email": "noramckee@recrisys.com", "phone": "+1 (801) 432-2063", "address": "437 Kathleen Court, Defiance, Georgia, 2571", "about": "Sunt minim velit culpa do sit incididunt incididunt. Irure consequat esse amet do. Mollit qui commodo nisi ipsum incididunt mollit do magna pariatur culpa aliquip. Dolore pariatur officia in sunt aliquip sunt reprehenderit ex laborum proident.\r\n", "registered": "2014-08-26T02:32:42-12:00", "latitude": -85.509959, "longitude": 124.940128, "tags": [ "amet", "officia", "occaecat", "veniam", "nulla", "cupidatat", "deserunt" ], "friends": [ { "id": 0, "name": "Carlene Mcguire" }, { "id": 1, "name": "Michael Gray" }, { "id": 2, "name": "Maria Sheppard" } ], "greeting": "Hello, Nora Mckee! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25edf70e08ec071a98", "index": 2544, "guid": "b68e7d8f-3b9a-4f06-b0d0-343b6c1423a9", "isActive": true, "balance": "$2,031.17", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Emily Kaufman", "gender": "female", "company": "MARTGO", "email": "emilykaufman@martgo.com", "phone": "+1 (838) 408-2958", "address": "320 Freeman Street, Maxville, North Dakota, 1497", "about": "Et sint elit cillum dolore sint officia adipisicing est mollit deserunt sunt officia ullamco officia. Dolore dolor duis ut in laboris ex elit enim laboris amet sint mollit. Esse cupidatat labore nulla mollit fugiat. Culpa do proident cillum sit dolore dolore sit aliqua consectetur deserunt nisi anim. Irure non officia voluptate commodo excepteur ipsum reprehenderit. Magna sunt consequat est consequat laboris dolor labore aliqua adipisicing.\r\n", "registered": "2014-09-05T02:32:38-12:00", "latitude": 29.94548, "longitude": -1.077051, "tags": [ "occaecat", "proident", "irure", "sit", "incididunt", "reprehenderit", "laborum" ], "friends": [ { "id": 0, "name": "Wilder Chavez" }, { "id": 1, "name": "Wolf Nichols" }, { "id": 2, "name": "Laura Mathews" } ], "greeting": "Hello, Emily Kaufman! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2505a852d9fde131df", "index": 2545, "guid": "3ea07cc3-4bf4-4520-89c3-06c0427bf55f", "isActive": true, "balance": "$2,315.70", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Fuller Young", "gender": "male", "company": "ZIDANT", "email": "fulleryoung@zidant.com", "phone": "+1 (872) 477-3465", "address": "833 Erasmus Street, Diaperville, Louisiana, 9933", "about": "Sunt commodo cillum voluptate aliquip sit duis id consectetur. Cillum nostrud enim est ad tempor duis id qui elit sit nisi laborum. Pariatur occaecat adipisicing mollit consectetur laborum nulla quis velit. Aliquip voluptate voluptate do ex veniam duis consectetur esse. Irure minim laborum minim duis.\r\n", "registered": "2014-06-03T02:48:13-12:00", "latitude": -2.816354, "longitude": 31.486074, "tags": [ "labore", "nostrud", "proident", "in", "labore", "consequat", "ut" ], "friends": [ { "id": 0, "name": "Hester Santana" }, { "id": 1, "name": "Crane Mcneil" }, { "id": 2, "name": "Elsa Lang" } ], "greeting": "Hello, Fuller Young! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e176862f830fdc0c", "index": 2546, "guid": "1c866891-cf9b-449a-9252-ef05baa72421", "isActive": true, "balance": "$3,826.15", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Robertson Obrien", "gender": "male", "company": "DIGINETIC", "email": "robertsonobrien@diginetic.com", "phone": "+1 (939) 504-3605", "address": "541 High Street, Bowden, Northern Mariana Islands, 449", "about": "Consectetur enim non excepteur amet adipisicing nostrud eu velit laboris culpa aliquip ullamco. Voluptate consectetur laborum enim sit aliqua Lorem nisi laboris exercitation magna aute ullamco nostrud sit. Do esse qui reprehenderit anim. Consectetur cillum commodo do dolor aliqua irure dolore laboris elit do.\r\n", "registered": "2014-03-07T04:24:51-13:00", "latitude": 89.004611, "longitude": 127.920419, "tags": [ "occaecat", "eiusmod", "et", "sit", "nostrud", "cillum", "pariatur" ], "friends": [ { "id": 0, "name": "Ashlee Todd" }, { "id": 1, "name": "Barnett Holcomb" }, { "id": 2, "name": "Mcintyre Bolton" } ], "greeting": "Hello, Robertson Obrien! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25ba1c222364c9ae2f", "index": 2547, "guid": "06dd108e-0608-4174-93b0-97707f0131f5", "isActive": false, "balance": "$2,369.80", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Winnie Wise", "gender": "female", "company": "ZOLARITY", "email": "winniewise@zolarity.com", "phone": "+1 (827) 522-3678", "address": "412 Norfolk Street, Klondike, Colorado, 9093", "about": "Consequat est elit irure culpa in cillum cupidatat eiusmod aliquip non id in. Commodo esse duis proident nisi nulla velit amet qui id proident. Ut aliqua ad culpa sit exercitation ex qui velit in culpa sint proident enim amet. Cupidatat excepteur magna ullamco exercitation ut incididunt. Dolor nisi culpa excepteur duis do consequat consequat sint consequat nisi ad Lorem. Minim commodo officia veniam pariatur exercitation et excepteur sint ad nulla ut exercitation. Esse in excepteur cillum do minim Lorem laboris ullamco fugiat.\r\n", "registered": "2014-03-04T04:59:01-13:00", "latitude": -16.84632, "longitude": -86.484235, "tags": [ "qui", "occaecat", "sint", "amet", "deserunt", "nisi", "sint" ], "friends": [ { "id": 0, "name": "Aida Humphrey" }, { "id": 1, "name": "Myers Mclean" }, { "id": 2, "name": "Vance Calhoun" } ], "greeting": "Hello, Winnie Wise! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea255e9b6ae1dd5f5952", "index": 2548, "guid": "2e566448-af65-4dee-bbb0-2dbe7ea5c0cb", "isActive": false, "balance": "$2,739.71", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Emilia Carroll", "gender": "female", "company": "ETERNIS", "email": "emiliacarroll@eternis.com", "phone": "+1 (939) 402-2348", "address": "636 Gardner Avenue, Bladensburg, Idaho, 9569", "about": "Dolor nulla velit aute officia anim labore adipisicing nulla eiusmod ullamco minim sunt cillum anim. Mollit veniam aute reprehenderit Lorem eu reprehenderit. Ullamco proident mollit duis laboris duis. Labore Lorem dolore sunt tempor pariatur ut ex ut cupidatat culpa eu ex. Ipsum consectetur non velit excepteur aute in do duis mollit qui.\r\n", "registered": "2014-01-20T14:55:45-13:00", "latitude": 41.889951, "longitude": 130.7417, "tags": [ "nostrud", "consequat", "in", "id", "eu", "id", "incididunt" ], "friends": [ { "id": 0, "name": "Head Little" }, { "id": 1, "name": "Gould Adkins" }, { "id": 2, "name": "Harding Alvarado" } ], "greeting": "Hello, Emilia Carroll! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea259ea29cbea1b101d0", "index": 2549, "guid": "5c1052d5-6868-4fa6-baa9-581312d2d18a", "isActive": true, "balance": "$2,710.38", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Ester Wiggins", "gender": "female", "company": "AQUAFIRE", "email": "esterwiggins@aquafire.com", "phone": "+1 (991) 427-3813", "address": "196 Laurel Avenue, Tuttle, Marshall Islands, 6188", "about": "Dolor Lorem ea dolor ullamco excepteur esse laborum do labore ea ea ullamco laborum consequat. Id ex aliqua cupidatat et veniam laborum proident. Commodo officia eu mollit velit non occaecat laborum cupidatat mollit labore ea aliquip Lorem esse. Id irure aute culpa nisi aliquip exercitation eiusmod do deserunt ullamco ad fugiat enim. Sint anim laborum deserunt voluptate ut deserunt officia mollit cillum. Velit minim laboris ea elit aute magna deserunt velit cupidatat minim ipsum. Eiusmod qui minim pariatur veniam qui mollit duis enim sit incididunt cupidatat mollit Lorem.\r\n", "registered": "2014-06-03T19:05:38-12:00", "latitude": -63.7641, "longitude": -4.719968, "tags": [ "occaecat", "magna", "culpa", "consectetur", "officia", "dolor", "tempor" ], "friends": [ { "id": 0, "name": "Mara Oneal" }, { "id": 1, "name": "Norris Lopez" }, { "id": 2, "name": "Evans Osborn" } ], "greeting": "Hello, Ester Wiggins! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea254046d2cd4bbc2db5", "index": 2550, "guid": "3070a88a-e6cb-4ed6-b76e-43947db5d2f0", "isActive": true, "balance": "$3,032.55", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Armstrong Duran", "gender": "male", "company": "ZILLACTIC", "email": "armstrongduran@zillactic.com", "phone": "+1 (941) 431-3211", "address": "458 Pulaski Street, Greensburg, New York, 2670", "about": "Eiusmod commodo commodo nostrud elit eu velit consectetur nulla. Occaecat occaecat sint irure reprehenderit pariatur irure anim esse ea magna velit. Ut aliqua pariatur fugiat commodo voluptate nostrud voluptate aute mollit. Nostrud fugiat ad magna in consectetur aliquip tempor ex cupidatat. Cupidatat nostrud aliquip magna sit reprehenderit officia laboris in pariatur est sint excepteur. Enim pariatur eiusmod est reprehenderit Lorem. Eiusmod Lorem commodo incididunt exercitation esse enim eu aliquip commodo adipisicing aute enim et proident.\r\n", "registered": "2014-06-03T13:09:06-12:00", "latitude": -56.287893, "longitude": -19.74724, "tags": [ "culpa", "officia", "aliqua", "fugiat", "deserunt", "in", "duis" ], "friends": [ { "id": 0, "name": "Tamika Russo" }, { "id": 1, "name": "Roslyn Moran" }, { "id": 2, "name": "Francine Rios" } ], "greeting": "Hello, Armstrong Duran! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea254da000baed8cc0a3", "index": 2551, "guid": "6561c033-ce02-4ad7-8ba8-dd5e337d99ac", "isActive": true, "balance": "$2,489.38", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Jerri Rivas", "gender": "female", "company": "SNACKTION", "email": "jerririvas@snacktion.com", "phone": "+1 (943) 450-3093", "address": "231 Bergen Avenue, Bourg, Guam, 5494", "about": "Magna velit ipsum amet laboris voluptate et deserunt occaecat ut est aute esse adipisicing. Officia occaecat irure irure occaecat laborum magna non dolore quis voluptate anim. Nulla enim ipsum culpa veniam do excepteur et consequat proident. Do sit voluptate ipsum do. Cupidatat dolor exercitation sunt do.\r\n", "registered": "2014-06-27T07:37:28-12:00", "latitude": -80.801739, "longitude": 67.818958, "tags": [ "sit", "adipisicing", "culpa", "enim", "consectetur", "eu", "enim" ], "friends": [ { "id": 0, "name": "Amber Leblanc" }, { "id": 1, "name": "Carolyn Navarro" }, { "id": 2, "name": "Lynch Pratt" } ], "greeting": "Hello, Jerri Rivas! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2503c94073be77fdf8", "index": 2552, "guid": "e21b776d-2137-424b-9fdb-d925ea2409d2", "isActive": true, "balance": "$1,915.24", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Billie Mercer", "gender": "female", "company": "XYLAR", "email": "billiemercer@xylar.com", "phone": "+1 (821) 587-3917", "address": "103 College Place, Wadsworth, Virgin Islands, 6123", "about": "Officia do cillum occaecat anim. Quis aliquip nostrud voluptate voluptate ipsum Lorem. Labore adipisicing exercitation ullamco et duis ullamco duis sint. Nisi eiusmod aliquip et aute nulla nisi. Elit incididunt proident elit excepteur incididunt non sunt non occaecat officia ullamco.\r\n", "registered": "2014-08-22T03:23:11-12:00", "latitude": -23.685326, "longitude": -119.586772, "tags": [ "elit", "amet", "laboris", "eiusmod", "voluptate", "cillum", "culpa" ], "friends": [ { "id": 0, "name": "Amelia Chan" }, { "id": 1, "name": "Maddox Carter" }, { "id": 2, "name": "Burt Cantu" } ], "greeting": "Hello, Billie Mercer! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea258b8836f74ff773f2", "index": 2553, "guid": "d4b29b0b-8ad2-476e-8724-c34093bbacc5", "isActive": true, "balance": "$3,507.83", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Janine Alvarez", "gender": "female", "company": "JUNIPOOR", "email": "janinealvarez@junipoor.com", "phone": "+1 (881) 433-3803", "address": "150 Franklin Avenue, Staples, Massachusetts, 7305", "about": "Irure sit aliqua non anim non consectetur ipsum. Veniam ad et aute qui proident cupidatat laboris tempor. Adipisicing laborum exercitation et consequat. Veniam minim elit Lorem eu nulla magna. Anim sit pariatur elit excepteur.\r\n", "registered": "2014-04-17T21:01:52-12:00", "latitude": -42.256496, "longitude": 46.226536, "tags": [ "sit", "excepteur", "ullamco", "pariatur", "labore", "elit", "ipsum" ], "friends": [ { "id": 0, "name": "Goodman Benjamin" }, { "id": 1, "name": "Caroline Strickland" }, { "id": 2, "name": "Minerva Schroeder" } ], "greeting": "Hello, Janine Alvarez! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2541d6f2cb3e1ea726", "index": 2554, "guid": "a49cc5d2-b976-4409-b716-fe7b9a857dae", "isActive": true, "balance": "$3,919.29", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Meyer Barker", "gender": "male", "company": "VANTAGE", "email": "meyerbarker@vantage.com", "phone": "+1 (890) 468-3854", "address": "619 Hamilton Walk, Emory, Utah, 9640", "about": "Deserunt aliquip Lorem enim ullamco. Nisi cupidatat aute mollit est quis commodo veniam laboris et nostrud. Nostrud ea cupidatat tempor do exercitation. Et adipisicing sit magna nulla fugiat mollit.\r\n", "registered": "2014-04-14T23:46:37-12:00", "latitude": 54.907646, "longitude": 27.649181, "tags": [ "aliqua", "nulla", "ipsum", "excepteur", "et", "et", "sint" ], "friends": [ { "id": 0, "name": "Francesca Schultz" }, { "id": 1, "name": "Mariana Torres" }, { "id": 2, "name": "Mitzi Boyd" } ], "greeting": "Hello, Meyer Barker! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25089f572b6f3f5658", "index": 2555, "guid": "1ace11d4-02c1-48f2-bbbe-557295eb8208", "isActive": false, "balance": "$1,853.90", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Maggie Franco", "gender": "female", "company": "APPLIDEC", "email": "maggiefranco@applidec.com", "phone": "+1 (871) 499-3679", "address": "149 Woodrow Court, Blanford, Montana, 2090", "about": "Tempor cillum cupidatat proident do nostrud elit nisi amet incididunt irure cillum cupidatat. Est ullamco labore nulla irure eiusmod eu labore. Excepteur enim fugiat anim ut nisi fugiat cillum tempor nisi anim do magna reprehenderit proident. Culpa et non commodo velit sint. Qui id cupidatat commodo labore.\r\n", "registered": "2014-02-12T22:42:29-13:00", "latitude": 43.682115, "longitude": 165.46496, "tags": [ "consectetur", "sint", "irure", "id", "veniam", "in", "ad" ], "friends": [ { "id": 0, "name": "Mccoy Houston" }, { "id": 1, "name": "Elena Ratliff" }, { "id": 2, "name": "Ann Benton" } ], "greeting": "Hello, Maggie Franco! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea254105deddb3e92ec0", "index": 2556, "guid": "c2ef179c-1359-47d2-92cb-6d8558c0d98b", "isActive": false, "balance": "$1,531.28", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Inez Roman", "gender": "female", "company": "AUSTEX", "email": "inezroman@austex.com", "phone": "+1 (853) 473-3008", "address": "688 School Lane, Bartonsville, Wisconsin, 7743", "about": "Ea Lorem in voluptate eiusmod ex adipisicing cupidatat dolor duis. Lorem amet quis tempor elit ipsum. Exercitation minim reprehenderit nulla consectetur fugiat mollit irure do ullamco sit ex est sit. Duis dolore voluptate commodo tempor qui officia deserunt ad enim. Et adipisicing minim proident quis tempor deserunt. Magna ad cupidatat consectetur culpa minim. Dolore sint ea proident enim Lorem qui consectetur dolore aliqua reprehenderit ipsum.\r\n", "registered": "2014-08-20T00:03:45-12:00", "latitude": -32.093138, "longitude": 66.870437, "tags": [ "nostrud", "occaecat", "ut", "et", "adipisicing", "nisi", "ut" ], "friends": [ { "id": 0, "name": "Lynda Schneider" }, { "id": 1, "name": "Rivera Brady" }, { "id": 2, "name": "Lee Shannon" } ], "greeting": "Hello, Inez Roman! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2518521d2c9c20577b", "index": 2557, "guid": "0a0d97d7-7ca6-4789-908f-04b0b5d68963", "isActive": false, "balance": "$2,758.56", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Bullock Coleman", "gender": "male", "company": "HANDSHAKE", "email": "bullockcoleman@handshake.com", "phone": "+1 (946) 497-3586", "address": "485 Sandford Street, Topaz, Maine, 3415", "about": "Labore fugiat consequat est id. Nulla ex Lorem culpa tempor fugiat mollit adipisicing excepteur dolore amet. Esse esse velit occaecat veniam commodo nostrud nisi eu. Laboris exercitation voluptate sint tempor.\r\n", "registered": "2014-08-12T02:00:28-12:00", "latitude": 18.990093, "longitude": 8.01475, "tags": [ "fugiat", "aliquip", "laborum", "exercitation", "dolor", "irure", "cupidatat" ], "friends": [ { "id": 0, "name": "Black Ochoa" }, { "id": 1, "name": "Jennifer Mcclain" }, { "id": 2, "name": "Swanson Lowe" } ], "greeting": "Hello, Bullock Coleman! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25785dbdb1488959a3", "index": 2558, "guid": "71a1170b-2b37-4391-bb6f-fef0aefae5db", "isActive": false, "balance": "$1,607.02", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Hendricks Hardin", "gender": "male", "company": "FIBEROX", "email": "hendrickshardin@fiberox.com", "phone": "+1 (800) 598-3539", "address": "218 Scholes Street, Coldiron, Virginia, 2892", "about": "Dolore mollit minim proident dolore velit officia id quis Lorem. Enim fugiat esse duis aliqua esse magna non cillum labore ea velit. Anim culpa sunt veniam non quis enim ea amet sunt adipisicing in dolore irure. Est exercitation minim laborum deserunt consectetur.\r\n", "registered": "2014-02-25T17:10:01-13:00", "latitude": 25.245278, "longitude": -97.740924, "tags": [ "duis", "do", "esse", "fugiat", "est", "occaecat", "veniam" ], "friends": [ { "id": 0, "name": "Merle Watkins" }, { "id": 1, "name": "Dixon Good" }, { "id": 2, "name": "Kirsten Cohen" } ], "greeting": "Hello, Hendricks Hardin! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e2e0e7f0f8d2a75b", "index": 2559, "guid": "0519e576-fc25-4462-946b-a54bbc57f816", "isActive": true, "balance": "$1,612.64", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Elvia Gamble", "gender": "female", "company": "NORSUP", "email": "elviagamble@norsup.com", "phone": "+1 (930) 440-3910", "address": "824 Campus Place, Kennedyville, Kentucky, 3277", "about": "Et elit dolore cillum ex cillum aute excepteur eiusmod qui incididunt. Cupidatat eu sint sit aute esse aliqua et ex ullamco occaecat sit dolore magna veniam. Ex nulla ullamco nisi fugiat nulla.\r\n", "registered": "2014-09-02T04:36:59-12:00", "latitude": -19.540889, "longitude": 152.855108, "tags": [ "consequat", "cillum", "Lorem", "laboris", "excepteur", "anim", "non" ], "friends": [ { "id": 0, "name": "Anita Haynes" }, { "id": 1, "name": "Ochoa Gibson" }, { "id": 2, "name": "Brandy Roth" } ], "greeting": "Hello, Elvia Gamble! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2505ed39d60f9e9ac8", "index": 2560, "guid": "16eaf37f-6734-4344-b644-aac5eebfc277", "isActive": false, "balance": "$2,755.69", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Millie Camacho", "gender": "female", "company": "EQUITAX", "email": "milliecamacho@equitax.com", "phone": "+1 (992) 479-2133", "address": "171 Humboldt Street, Dorneyville, Connecticut, 7127", "about": "Veniam elit minim sunt ipsum Lorem amet dolor voluptate qui reprehenderit dolore occaecat. Dolor Lorem tempor ea anim consectetur veniam non mollit. Eu non non amet ipsum ullamco incididunt irure qui. Ex minim ex aute dolor sit ea ut occaecat. Ex nulla irure dolor excepteur nulla exercitation ullamco. Enim proident ex proident do est dolore labore in non. Velit pariatur sit sit ex cupidatat.\r\n", "registered": "2014-08-12T14:50:43-12:00", "latitude": -52.304283, "longitude": 112.776595, "tags": [ "qui", "do", "qui", "deserunt", "nostrud", "eiusmod", "excepteur" ], "friends": [ { "id": 0, "name": "Elliott Branch" }, { "id": 1, "name": "Gonzales Fuller" }, { "id": 2, "name": "Jasmine Holden" } ], "greeting": "Hello, Millie Camacho! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea251e343f648cc178a6", "index": 2561, "guid": "924329eb-2ce9-4a17-8d13-5a5f92f5004f", "isActive": true, "balance": "$1,071.73", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Estelle Butler", "gender": "female", "company": "DIGIAL", "email": "estellebutler@digial.com", "phone": "+1 (996) 547-2685", "address": "171 Emmons Avenue, Cuylerville, Mississippi, 3322", "about": "Duis pariatur sint qui quis aliquip veniam consequat quis id officia voluptate. Aute tempor aute ipsum reprehenderit aliqua veniam fugiat excepteur minim aute commodo tempor. Ipsum excepteur incididunt velit occaecat quis tempor. Incididunt esse consequat eu aliquip incididunt proident adipisicing officia non. Esse anim nulla Lorem consectetur sit laborum proident duis nisi aliqua veniam. Exercitation sunt non irure occaecat incididunt esse cillum anim ea laborum aute ullamco exercitation.\r\n", "registered": "2014-04-04T03:40:04-13:00", "latitude": 29.670707, "longitude": -16.918182, "tags": [ "tempor", "consectetur", "et", "dolore", "tempor", "Lorem", "duis" ], "friends": [ { "id": 0, "name": "Tania Horton" }, { "id": 1, "name": "Roach Molina" }, { "id": 2, "name": "Medina Le" } ], "greeting": "Hello, Estelle Butler! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25e13426444a3a8c0d", "index": 2562, "guid": "16ed40a7-017c-4328-ae8c-c935c903241e", "isActive": false, "balance": "$3,276.11", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Holt Summers", "gender": "male", "company": "GORGANIC", "email": "holtsummers@gorganic.com", "phone": "+1 (998) 520-2237", "address": "769 Withers Street, Brandywine, Washington, 699", "about": "Ipsum sit quis enim ut qui mollit commodo ut magna officia culpa et ipsum. Sit nostrud aute amet labore non. Lorem amet ad aliqua ipsum aliquip. Cillum do aute do magna ut amet fugiat aute. Eu ad nisi excepteur magna proident duis dolore enim ullamco sit minim exercitation.\r\n", "registered": "2014-05-22T16:30:48-12:00", "latitude": 5.423072, "longitude": -163.074351, "tags": [ "cupidatat", "irure", "exercitation", "nisi", "enim", "sint", "magna" ], "friends": [ { "id": 0, "name": "Antoinette Gardner" }, { "id": 1, "name": "Iva Wallace" }, { "id": 2, "name": "Corrine Johnson" } ], "greeting": "Hello, Holt Summers! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea250e51f9b2dbf7a3c7", "index": 2563, "guid": "07f523d8-be93-4889-b9c2-f953b4a94d64", "isActive": true, "balance": "$1,520.25", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Courtney Conner", "gender": "female", "company": "OULU", "email": "courtneyconner@oulu.com", "phone": "+1 (944) 555-2924", "address": "353 Berriman Street, Osmond, Tennessee, 3205", "about": "Consequat velit est aliquip enim esse reprehenderit cillum quis tempor veniam. Labore cillum voluptate mollit minim quis voluptate id. Labore esse qui veniam sunt duis minim proident reprehenderit. Tempor laborum non magna sunt et duis enim elit exercitation nostrud aute quis ex. Consequat officia voluptate nisi nisi id id ullamco incididunt. Sunt qui nostrud aliquip et ea dolore in commodo.\r\n", "registered": "2014-01-01T21:45:18-13:00", "latitude": -51.355745, "longitude": 98.546671, "tags": [ "est", "aliquip", "esse", "fugiat", "excepteur", "do", "ut" ], "friends": [ { "id": 0, "name": "Annmarie Finch" }, { "id": 1, "name": "Sweeney Haney" }, { "id": 2, "name": "Claire Martin" } ], "greeting": "Hello, Courtney Conner! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea258b9fba6034844cac", "index": 2564, "guid": "d787a0e4-81c2-4931-aee6-a6ca17fb0361", "isActive": false, "balance": "$3,977.58", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Barrera Crosby", "gender": "male", "company": "COMDOM", "email": "barreracrosby@comdom.com", "phone": "+1 (866) 471-2283", "address": "374 Vernon Avenue, Bascom, Alabama, 8161", "about": "Consequat sit dolor commodo sunt qui veniam cillum Lorem incididunt. Deserunt incididunt voluptate elit aliquip eu non sunt aliqua ex officia do sunt. Sit voluptate nulla ex adipisicing mollit adipisicing esse nostrud veniam laboris. Magna sit eu veniam mollit nisi sunt aliqua. Officia do nostrud adipisicing fugiat.\r\n", "registered": "2014-01-11T23:14:53-13:00", "latitude": -26.440524, "longitude": -81.258937, "tags": [ "velit", "veniam", "laboris", "proident", "culpa", "duis", "elit" ], "friends": [ { "id": 0, "name": "Charmaine Lloyd" }, { "id": 1, "name": "Moon Lester" }, { "id": 2, "name": "Hays Whitfield" } ], "greeting": "Hello, Barrera Crosby! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25369b937597da2848", "index": 2565, "guid": "bcad52c1-0d9b-495f-90b7-885f66463bd1", "isActive": false, "balance": "$2,449.81", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Jacquelyn Evans", "gender": "female", "company": "FLOTONIC", "email": "jacquelynevans@flotonic.com", "phone": "+1 (901) 457-2232", "address": "434 India Street, Lowgap, Ohio, 2082", "about": "Culpa culpa adipisicing dolore minim eu non. Fugiat quis dolor quis pariatur ullamco cupidatat. Adipisicing aliqua ipsum laborum ullamco reprehenderit quis nisi.\r\n", "registered": "2014-07-23T12:33:15-12:00", "latitude": -51.123874, "longitude": 67.116481, "tags": [ "do", "nulla", "duis", "fugiat", "ex", "duis", "occaecat" ], "friends": [ { "id": 0, "name": "Michele Blackburn" }, { "id": 1, "name": "Beverley Walter" }, { "id": 2, "name": "Schneider Underwood" } ], "greeting": "Hello, Jacquelyn Evans! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25f7e076d760b77e61", "index": 2566, "guid": "24240a3b-e446-4494-aa96-0f93e52c4a16", "isActive": false, "balance": "$1,240.81", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Josephine William", "gender": "female", "company": "KYAGURU", "email": "josephinewilliam@kyaguru.com", "phone": "+1 (808) 444-2994", "address": "583 River Street, Ezel, Hawaii, 9983", "about": "Exercitation culpa do qui voluptate aliqua mollit. Ullamco ullamco sit veniam proident deserunt voluptate elit dolor anim nulla aute officia. Ut consequat commodo non eiusmod dolor ex quis esse sint id ea id. In consectetur cupidatat do cupidatat proident ex mollit. Ullamco dolore incididunt deserunt dolor adipisicing irure in exercitation aute ea labore consectetur occaecat. Anim quis incididunt ad consequat et in cupidatat proident voluptate ea velit adipisicing. Eiusmod nisi ipsum ipsum id incididunt est ea labore.\r\n", "registered": "2014-04-27T11:00:06-12:00", "latitude": -10.754401, "longitude": 89.300215, "tags": [ "culpa", "excepteur", "officia", "incididunt", "nisi", "fugiat", "ipsum" ], "friends": [ { "id": 0, "name": "Wagner Mccarty" }, { "id": 1, "name": "Kenya Mullins" }, { "id": 2, "name": "Stark Sweet" } ], "greeting": "Hello, Josephine William! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2503f6e890df7fb021", "index": 2567, "guid": "b9525f56-d428-4cda-8bec-6af381ee4ccd", "isActive": false, "balance": "$2,604.86", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Imelda Watts", "gender": "female", "company": "XOGGLE", "email": "imeldawatts@xoggle.com", "phone": "+1 (996) 479-2406", "address": "494 Celeste Court, Bakersville, New Mexico, 6216", "about": "Fugiat qui velit veniam deserunt esse commodo cupidatat. Tempor eu culpa irure consectetur adipisicing duis do do sit sint eu reprehenderit aliquip. Aliqua officia ipsum laboris elit minim nostrud.\r\n", "registered": "2014-04-10T17:56:49-12:00", "latitude": -59.006591, "longitude": -52.891268, "tags": [ "occaecat", "ad", "aliqua", "enim", "duis", "enim", "nisi" ], "friends": [ { "id": 0, "name": "William Moreno" }, { "id": 1, "name": "Spears Mcmillan" }, { "id": 2, "name": "Althea Greer" } ], "greeting": "Hello, Imelda Watts! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2532092f614805ac03", "index": 2568, "guid": "21daebed-2dbb-455b-9e12-8189cccdb236", "isActive": false, "balance": "$2,036.94", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Campos Barron", "gender": "male", "company": "NORALI", "email": "camposbarron@norali.com", "phone": "+1 (911) 528-2275", "address": "165 Herbert Street, Starks, Maryland, 6191", "about": "Laborum do ex sint anim nisi minim sit officia ex laboris consectetur. Non eiusmod ea dolore qui nisi elit tempor nisi reprehenderit proident laboris eu officia. Qui esse in ullamco culpa. Irure consectetur eu velit veniam consectetur incididunt excepteur sunt ex in dolore excepteur. Veniam laboris exercitation laborum elit. Et reprehenderit ipsum veniam minim proident aute eu.\r\n", "registered": "2014-05-05T23:43:10-12:00", "latitude": -82.533076, "longitude": 170.801746, "tags": [ "veniam", "ad", "commodo", "velit", "incididunt", "nisi", "mollit" ], "friends": [ { "id": 0, "name": "Waller Flynn" }, { "id": 1, "name": "Rosetta Rasmussen" }, { "id": 2, "name": "Patty Carson" } ], "greeting": "Hello, Campos Barron! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2535a6f9651711e256", "index": 2569, "guid": "8f8617c8-cc13-4c05-bdb1-9ce5f698267b", "isActive": true, "balance": "$2,909.09", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Chambers Michael", "gender": "male", "company": "TUBALUM", "email": "chambersmichael@tubalum.com", "phone": "+1 (993) 594-2368", "address": "351 Jodie Court, Freelandville, Alaska, 2565", "about": "Ullamco elit consequat aliquip ipsum exercitation esse. Officia ea pariatur velit laboris. Exercitation eiusmod do ea qui sunt irure excepteur non. Veniam aute occaecat velit exercitation incididunt elit dolor nisi non dolore cupidatat magna consequat enim.\r\n", "registered": "2014-02-05T01:55:00-13:00", "latitude": -3.25231, "longitude": -133.001168, "tags": [ "fugiat", "non", "cillum", "labore", "sunt", "reprehenderit", "Lorem" ], "friends": [ { "id": 0, "name": "Gail Bond" }, { "id": 1, "name": "Johanna Banks" }, { "id": 2, "name": "Delia Conley" } ], "greeting": "Hello, Chambers Michael! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25c1ab2ba176194d68", "index": 2570, "guid": "9d8d0f87-d03d-4f0d-a24b-6e9470392c8a", "isActive": true, "balance": "$2,877.06", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Riley Riddle", "gender": "male", "company": "COMTEST", "email": "rileyriddle@comtest.com", "phone": "+1 (927) 484-3240", "address": "463 Oxford Walk, Rowe, Arizona, 2350", "about": "Voluptate officia proident commodo ex mollit ea laborum. Dolore minim ullamco non minim magna cillum labore. Adipisicing laborum id dolor do reprehenderit enim nostrud Lorem enim laboris consectetur occaecat. Consequat qui laboris minim laboris aute cillum. Anim anim duis consectetur culpa dolor est fugiat amet ad sint. Incididunt consequat quis amet dolore in occaecat exercitation dolor.\r\n", "registered": "2014-08-18T02:19:14-12:00", "latitude": 74.649833, "longitude": 141.817547, "tags": [ "consectetur", "consequat", "id", "qui", "ut", "sunt", "est" ], "friends": [ { "id": 0, "name": "Clements Rosa" }, { "id": 1, "name": "Catherine Palmer" }, { "id": 2, "name": "Wheeler Mckenzie" } ], "greeting": "Hello, Riley Riddle! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea259f867fe589118dca", "index": 2571, "guid": "2fcc9b80-b806-43f8-a8da-7ce0e655ad5f", "isActive": true, "balance": "$1,420.35", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Celeste Koch", "gender": "female", "company": "ORBAXTER", "email": "celestekoch@orbaxter.com", "phone": "+1 (917) 571-3665", "address": "153 Sedgwick Place, Nanafalia, Federated States Of Micronesia, 9433", "about": "Deserunt sint et proident in. Amet consequat tempor culpa tempor veniam labore laborum ex. Voluptate elit tempor fugiat sit est qui dolore consectetur anim irure. In proident cupidatat do occaecat officia veniam eiusmod quis amet dolore. Commodo minim adipisicing commodo consequat culpa est officia laborum amet eu consequat dolore. Reprehenderit aliqua officia magna Lorem incididunt.\r\n", "registered": "2014-06-21T12:30:59-12:00", "latitude": -15.748459, "longitude": 145.468123, "tags": [ "consectetur", "aliquip", "excepteur", "commodo", "veniam", "cillum", "cillum" ], "friends": [ { "id": 0, "name": "Ines Goodman" }, { "id": 1, "name": "John Ray" }, { "id": 2, "name": "Adams Bradshaw" } ], "greeting": "Hello, Celeste Koch! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25303b3f6e1fadda45", "index": 2572, "guid": "7459f483-b77d-4a0c-aa5b-30f0773acbcc", "isActive": false, "balance": "$2,541.13", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Haney King", "gender": "male", "company": "QUINEX", "email": "haneyking@quinex.com", "phone": "+1 (805) 522-3650", "address": "700 Bogart Street, Gasquet, Oklahoma, 8341", "about": "Ipsum mollit eiusmod sunt occaecat Lorem culpa commodo voluptate ipsum nostrud proident cillum anim labore. Et nisi pariatur do deserunt. Mollit voluptate deserunt pariatur in veniam ipsum et nisi. Tempor do reprehenderit elit reprehenderit amet qui. Culpa do exercitation esse cillum commodo reprehenderit eiusmod aliqua. Ut consequat nulla occaecat proident ex nisi irure cupidatat commodo.\r\n", "registered": "2014-02-16T08:05:14-13:00", "latitude": 38.804387, "longitude": 97.924031, "tags": [ "ad", "veniam", "labore", "pariatur", "magna", "deserunt", "irure" ], "friends": [ { "id": 0, "name": "Krystal Bender" }, { "id": 1, "name": "Sanford Garza" }, { "id": 2, "name": "Nell Nolan" } ], "greeting": "Hello, Haney King! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea258953e50cd6d863d2", "index": 2573, "guid": "d4b16c0a-a858-49a7-8491-4aef38444e49", "isActive": true, "balance": "$1,649.62", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Erna Cote", "gender": "female", "company": "BILLMED", "email": "ernacote@billmed.com", "phone": "+1 (896) 525-2634", "address": "956 Oriental Court, Ruckersville, Michigan, 1104", "about": "Tempor nostrud deserunt duis nisi anim aliquip ipsum. Incididunt exercitation occaecat et nisi laborum cupidatat irure officia fugiat adipisicing. Ea fugiat excepteur ad nulla commodo ex anim duis incididunt pariatur. Tempor aute amet labore irure ex fugiat ipsum. Id cupidatat reprehenderit officia mollit exercitation. Excepteur reprehenderit ad nostrud irure qui ullamco adipisicing qui sunt proident aliqua nulla.\r\n", "registered": "2014-05-22T04:01:31-12:00", "latitude": 75.068479, "longitude": -114.156278, "tags": [ "do", "cillum", "incididunt", "anim", "laborum", "aute", "et" ], "friends": [ { "id": 0, "name": "Leigh Delacruz" }, { "id": 1, "name": "Callie Sanders" }, { "id": 2, "name": "Margarita Ewing" } ], "greeting": "Hello, Erna Cote! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25381c9d65aed164e3", "index": 2574, "guid": "bd47686e-4f47-4618-8012-397a05c27732", "isActive": false, "balance": "$2,142.97", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Donovan Sexton", "gender": "male", "company": "ZILLACOM", "email": "donovansexton@zillacom.com", "phone": "+1 (845) 477-3033", "address": "850 Remsen Avenue, Dalton, Kansas, 5637", "about": "Ut id veniam commodo minim est. Sunt cupidatat cupidatat quis et occaecat sit aute in reprehenderit cupidatat. Dolor ullamco laborum fugiat veniam consequat excepteur ullamco ex. Qui est exercitation reprehenderit exercitation ullamco non duis exercitation labore quis labore. Amet Lorem ullamco veniam id pariatur irure quis proident.\r\n", "registered": "2014-09-12T10:39:54-12:00", "latitude": 9.660625, "longitude": -39.399359, "tags": [ "minim", "Lorem", "nulla", "nostrud", "laborum", "aute", "ex" ], "friends": [ { "id": 0, "name": "Alexander Salinas" }, { "id": 1, "name": "Elise Alexander" }, { "id": 2, "name": "Levine Lane" } ], "greeting": "Hello, Donovan Sexton! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea255984fdb61705c397", "index": 2575, "guid": "f59ad78e-6dcb-4705-83f1-00031e9fb82d", "isActive": true, "balance": "$3,788.40", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Peters Kline", "gender": "male", "company": "NETPLODE", "email": "peterskline@netplode.com", "phone": "+1 (968) 600-3085", "address": "225 Brown Street, Coultervillle, South Dakota, 3956", "about": "Ullamco aute quis sit cillum ut aliqua nostrud ad laboris. Esse sunt officia enim velit duis laboris laborum cupidatat ipsum voluptate eu ullamco. Laboris ipsum proident ad eu Lorem est velit officia anim commodo duis irure exercitation cupidatat. Culpa ullamco laboris reprehenderit dolore non ipsum occaecat eiusmod voluptate duis id id officia. Ut veniam duis ad magna quis ex laborum. Pariatur in sint sit voluptate sunt adipisicing occaecat reprehenderit enim sint fugiat exercitation adipisicing. Sunt ea aliqua dolore consequat mollit amet anim.\r\n", "registered": "2014-08-26T05:48:35-12:00", "latitude": -35.277131, "longitude": -87.613353, "tags": [ "enim", "nulla", "ullamco", "qui", "nostrud", "Lorem", "quis" ], "friends": [ { "id": 0, "name": "Hartman Lowery" }, { "id": 1, "name": "Therese Dodson" }, { "id": 2, "name": "Charles Russell" } ], "greeting": "Hello, Peters Kline! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea258886c42eb2f8e19d", "index": 2576, "guid": "d3b3dadd-7d37-4db5-88a1-ca7140d0c153", "isActive": false, "balance": "$2,035.39", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Mills Reese", "gender": "male", "company": "GEOFARM", "email": "millsreese@geofarm.com", "phone": "+1 (956) 418-2533", "address": "568 Beayer Place, Hall, West Virginia, 3391", "about": "Esse ullamco voluptate non sit ullamco voluptate. Labore sunt elit ex magna. Ea labore quis aute anim nostrud dolor ut veniam esse dolor ea labore quis quis.\r\n", "registered": "2014-08-17T17:42:04-12:00", "latitude": 7.292117, "longitude": 85.891258, "tags": [ "enim", "elit", "Lorem", "sit", "velit", "duis", "minim" ], "friends": [ { "id": 0, "name": "Nelson Short" }, { "id": 1, "name": "Sophie Cameron" }, { "id": 2, "name": "Estes Lawrence" } ], "greeting": "Hello, Mills Reese! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25a07654c673d8248c", "index": 2577, "guid": "4f76fe6e-31a2-4a30-8fc0-dbb06d2d2656", "isActive": false, "balance": "$3,971.82", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Vazquez Small", "gender": "male", "company": "RUBADUB", "email": "vazquezsmall@rubadub.com", "phone": "+1 (923) 539-2061", "address": "683 Terrace Place, Snelling, Texas, 4887", "about": "Eiusmod deserunt nulla amet culpa exercitation sunt amet aliquip ut Lorem veniam. Cupidatat magna ut et sint minim culpa consequat ipsum adipisicing aute. Aliqua mollit consectetur sint do enim irure. Duis laboris ad nostrud id consequat officia voluptate irure labore ut fugiat. Veniam eiusmod culpa esse nostrud qui in. Dolor consectetur anim cupidatat ad voluptate elit consectetur consequat velit adipisicing pariatur veniam anim incididunt. Do Lorem culpa anim consequat id.\r\n", "registered": "2014-02-11T22:34:24-13:00", "latitude": 12.827543, "longitude": 54.506814, "tags": [ "consectetur", "minim", "proident", "ipsum", "exercitation", "velit", "nostrud" ], "friends": [ { "id": 0, "name": "Maryanne Wilkins" }, { "id": 1, "name": "Hollie Frye" }, { "id": 2, "name": "Kent Medina" } ], "greeting": "Hello, Vazquez Small! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25f55d0fe874f210ca", "index": 2578, "guid": "e59648ca-9a3b-4e69-8525-51c54a9487d9", "isActive": true, "balance": "$3,343.47", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Marjorie Terry", "gender": "female", "company": "RETROTEX", "email": "marjorieterry@retrotex.com", "phone": "+1 (991) 444-3347", "address": "619 Hyman Court, Tilden, Oregon, 2651", "about": "Mollit amet labore laboris nisi tempor aliquip consequat veniam aute consectetur sunt magna irure cillum. Sit qui labore ipsum et Lorem occaecat ex ipsum consectetur quis dolore. In eu adipisicing ad nisi magna nostrud elit et excepteur culpa consequat sunt. Ea veniam minim dolore id excepteur Lorem ex pariatur. Duis ex voluptate anim consequat minim deserunt labore nostrud. Occaecat culpa dolor aliqua incididunt consequat pariatur velit. Sunt culpa id magna sit culpa veniam Lorem qui laboris.\r\n", "registered": "2014-01-01T11:08:39-13:00", "latitude": 81.278723, "longitude": -15.864943, "tags": [ "dolor", "adipisicing", "duis", "labore", "sint", "fugiat", "do" ], "friends": [ { "id": 0, "name": "Blankenship Mccullough" }, { "id": 1, "name": "Parsons Manning" }, { "id": 2, "name": "Pearl Langley" } ], "greeting": "Hello, Marjorie Terry! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c283559255a9f4b4", "index": 2579, "guid": "9a3b6bfd-ebc7-40f6-b561-508f3fd4b495", "isActive": false, "balance": "$1,108.11", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Charity Jackson", "gender": "female", "company": "OPPORTECH", "email": "charityjackson@opportech.com", "phone": "+1 (939) 457-3442", "address": "512 Diamond Street, Caspar, Nevada, 125", "about": "Id mollit fugiat irure sint. Minim velit do sit adipisicing pariatur nisi cupidatat irure amet. Nulla eu nulla aliqua labore ut id ad ut incididunt veniam eiusmod.\r\n", "registered": "2014-06-27T02:56:48-12:00", "latitude": -16.263384, "longitude": -3.21419, "tags": [ "deserunt", "velit", "duis", "eu", "magna", "qui", "dolor" ], "friends": [ { "id": 0, "name": "Gibson Grant" }, { "id": 1, "name": "Mamie Hatfield" }, { "id": 2, "name": "Bettie Hodges" } ], "greeting": "Hello, Charity Jackson! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea253a87ab5d7640f425", "index": 2580, "guid": "a2c4a885-9d40-45a8-9acb-0e3d470d5927", "isActive": false, "balance": "$1,137.86", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Sheryl Trevino", "gender": "female", "company": "LUNCHPAD", "email": "sheryltrevino@lunchpad.com", "phone": "+1 (848) 423-3905", "address": "546 Whitney Avenue, Homeworth, Minnesota, 7061", "about": "Minim eu consequat tempor amet culpa. Tempor voluptate sit Lorem ad et magna do eu duis non ea ex deserunt tempor. Qui nulla cupidatat Lorem ullamco cupidatat aliqua. Cupidatat et incididunt elit tempor qui esse non occaecat voluptate. Eu nostrud ut ea reprehenderit quis dolor. Officia eu tempor sit excepteur excepteur velit consequat quis sunt minim laborum reprehenderit.\r\n", "registered": "2014-06-05T04:22:21-12:00", "latitude": 61.535222, "longitude": -24.30656, "tags": [ "ut", "nulla", "officia", "anim", "ut", "irure", "excepteur" ], "friends": [ { "id": 0, "name": "Powell Thornton" }, { "id": 1, "name": "Vinson Kelley" }, { "id": 2, "name": "Rosanne Joseph" } ], "greeting": "Hello, Sheryl Trevino! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25b295e3b449696dc7", "index": 2581, "guid": "03bb423a-fba9-46a1-a557-79f012755053", "isActive": true, "balance": "$3,969.77", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Maude Stephens", "gender": "female", "company": "NIQUENT", "email": "maudestephens@niquent.com", "phone": "+1 (840) 401-3613", "address": "148 Preston Court, Sparkill, Missouri, 112", "about": "Nulla magna dolore duis est pariatur cillum voluptate. Anim ullamco mollit esse id ullamco excepteur elit ut nulla nostrud amet. In quis dolor occaecat deserunt sint ut. Eiusmod qui incididunt culpa ad commodo. Duis qui sit ea velit. Incididunt esse excepteur eiusmod laborum mollit velit proident. Laborum adipisicing magna mollit cupidatat magna consequat reprehenderit ad anim ex velit esse exercitation in.\r\n", "registered": "2014-05-21T22:58:48-12:00", "latitude": -25.87191, "longitude": -134.179358, "tags": [ "officia", "laboris", "id", "quis", "non", "ipsum", "et" ], "friends": [ { "id": 0, "name": "Webb Norman" }, { "id": 1, "name": "Abigail Nash" }, { "id": 2, "name": "Latonya Gibbs" } ], "greeting": "Hello, Maude Stephens! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25c5dd32772021f204", "index": 2582, "guid": "d581545d-baf1-46be-8f09-6d347f53bc94", "isActive": false, "balance": "$2,919.25", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Rivas Foreman", "gender": "male", "company": "STELAECOR", "email": "rivasforeman@stelaecor.com", "phone": "+1 (846) 470-2675", "address": "419 Orange Street, Chamizal, Rhode Island, 8654", "about": "Voluptate Lorem et magna commodo. Est proident culpa anim elit laboris enim consequat. Dolor commodo ea excepteur velit eu sit duis aliqua ex. Et ex duis duis laboris dolor ipsum enim ut tempor culpa. Labore reprehenderit nisi occaecat id eiusmod cillum incididunt culpa non tempor ullamco Lorem. Minim deserunt aliquip laboris exercitation elit commodo non ea nulla et ad mollit. Ullamco voluptate ut ea nostrud ea consequat aliquip eiusmod laborum labore laborum eiusmod duis.\r\n", "registered": "2014-04-18T09:12:34-12:00", "latitude": -76.851286, "longitude": 123.307067, "tags": [ "duis", "deserunt", "deserunt", "magna", "eiusmod", "sint", "minim" ], "friends": [ { "id": 0, "name": "Ivy Leon" }, { "id": 1, "name": "Eula Holt" }, { "id": 2, "name": "Carla Griffin" } ], "greeting": "Hello, Rivas Foreman! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea250bf2d78bf494a389", "index": 2583, "guid": "b83a199b-26e8-4e2b-82c6-0d60166eaebe", "isActive": true, "balance": "$2,070.57", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Cornelia Sutton", "gender": "female", "company": "ORBOID", "email": "corneliasutton@orboid.com", "phone": "+1 (931) 419-2743", "address": "344 Burnett Street, Sperryville, Florida, 9755", "about": "Aliquip nisi in cillum in. Dolor magna Lorem ullamco dolor veniam culpa. Voluptate magna dolore id deserunt do pariatur velit officia reprehenderit proident. Sint ipsum eiusmod est consequat exercitation consectetur.\r\n", "registered": "2014-01-05T21:30:07-13:00", "latitude": 15.000958, "longitude": -121.608027, "tags": [ "pariatur", "aliquip", "nulla", "laborum", "irure", "irure", "eiusmod" ], "friends": [ { "id": 0, "name": "Noelle Woodard" }, { "id": 1, "name": "Baxter Larsen" }, { "id": 2, "name": "Farley Parks" } ], "greeting": "Hello, Cornelia Sutton! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25c518798dc8c90bb9", "index": 2584, "guid": "912bf530-d43d-4444-82fc-9d4c7d97661c", "isActive": false, "balance": "$2,293.70", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Miranda Benson", "gender": "male", "company": "TELEPARK", "email": "mirandabenson@telepark.com", "phone": "+1 (819) 506-2237", "address": "370 Dean Street, Barstow, North Carolina, 4929", "about": "Laborum id eiusmod quis laboris do consequat elit ad Lorem laboris. Nulla excepteur laborum mollit consequat pariatur ex culpa sint sunt. Do aliqua commodo est cillum id in anim velit officia proident laboris irure anim. Officia veniam fugiat nisi id duis labore pariatur ipsum culpa ea laboris commodo. Ipsum consectetur consectetur est eiusmod Lorem anim cupidatat do. Culpa quis reprehenderit enim esse fugiat exercitation pariatur elit occaecat ea cupidatat ipsum. Est laborum tempor cupidatat officia est ex.\r\n", "registered": "2014-04-17T00:03:59-12:00", "latitude": -33.484527, "longitude": -111.285448, "tags": [ "sunt", "eu", "culpa", "veniam", "adipisicing", "adipisicing", "dolore" ], "friends": [ { "id": 0, "name": "Lilia Jefferson" }, { "id": 1, "name": "Leslie Ruiz" }, { "id": 2, "name": "Blackwell Mclaughlin" } ], "greeting": "Hello, Miranda Benson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25530e62995c839217", "index": 2585, "guid": "e2591cc3-56fa-4ab1-900a-8e9ef66fb327", "isActive": false, "balance": "$1,108.84", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Mendoza Bernard", "gender": "male", "company": "COLAIRE", "email": "mendozabernard@colaire.com", "phone": "+1 (876) 468-2385", "address": "616 Desmond Court, Warren, New Hampshire, 7181", "about": "Laborum eiusmod ex nisi ex eu aliquip cupidatat exercitation. Qui enim tempor incididunt nisi nostrud cillum. Do consequat ex cillum enim aute proident qui consequat nostrud laboris occaecat. Ipsum do aliqua aute fugiat do dolor sit dolore reprehenderit do. Do tempor nostrud anim ea nisi laboris magna sit proident dolor. Excepteur consequat nisi excepteur nulla non consequat adipisicing eu eiusmod elit cupidatat dolore.\r\n", "registered": "2014-07-27T08:26:16-12:00", "latitude": 15.723472, "longitude": 73.936625, "tags": [ "enim", "magna", "fugiat", "cillum", "excepteur", "ad", "mollit" ], "friends": [ { "id": 0, "name": "Zelma Bonner" }, { "id": 1, "name": "Ortiz Fischer" }, { "id": 2, "name": "Vickie Whitney" } ], "greeting": "Hello, Mendoza Bernard! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea250110addf06d43ef5", "index": 2586, "guid": "860dbf0f-cf39-475c-a506-eacf8f787b33", "isActive": false, "balance": "$3,167.58", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Talley Conway", "gender": "male", "company": "ZORROMOP", "email": "talleyconway@zorromop.com", "phone": "+1 (925) 402-2586", "address": "582 Hart Place, Sims, Arkansas, 6950", "about": "Incididunt adipisicing quis duis eu. Proident ipsum est irure laborum mollit enim magna nostrud. Excepteur duis pariatur et minim cupidatat anim ad. Proident magna adipisicing consectetur sunt elit ea consequat aliquip et sunt. Elit ex aute culpa cupidatat in excepteur et ut dolor enim. Est fugiat non magna nulla dolore aliquip commodo magna ex. Ex adipisicing duis mollit commodo elit nisi incididunt nostrud consequat aute aute laboris.\r\n", "registered": "2014-04-28T22:55:58-12:00", "latitude": -30.376726, "longitude": 119.530162, "tags": [ "incididunt", "eiusmod", "tempor", "qui", "elit", "duis", "nisi" ], "friends": [ { "id": 0, "name": "Julianne Patton" }, { "id": 1, "name": "Navarro Hahn" }, { "id": 2, "name": "Augusta Mcpherson" } ], "greeting": "Hello, Talley Conway! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25012d7dbe3836299c", "index": 2587, "guid": "70f954a5-01bf-4074-8cd8-ec9eb23144bf", "isActive": true, "balance": "$2,378.77", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Summers Cabrera", "gender": "male", "company": "REALYSIS", "email": "summerscabrera@realysis.com", "phone": "+1 (851) 455-3878", "address": "180 Monroe Street, Shelby, Iowa, 4061", "about": "Do sint consequat amet id laboris sint ad quis commodo cillum. Magna Lorem voluptate pariatur non amet consectetur proident id est nostrud nostrud aliqua commodo. Fugiat aliqua adipisicing nulla nulla aliquip nostrud irure sint fugiat qui Lorem eu eu. Voluptate ipsum tempor ipsum enim. Aliqua non dolor dolore esse id dolore aute non.\r\n", "registered": "2014-02-22T06:56:17-13:00", "latitude": -56.683258, "longitude": -112.247285, "tags": [ "amet", "reprehenderit", "fugiat", "nisi", "eu", "adipisicing", "occaecat" ], "friends": [ { "id": 0, "name": "Mcgee Sanchez" }, { "id": 1, "name": "Angie Davidson" }, { "id": 2, "name": "Eunice Preston" } ], "greeting": "Hello, Summers Cabrera! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea255bba3ea466bad83b", "index": 2588, "guid": "2d370f66-355a-4710-bd07-e1d1177b13f2", "isActive": true, "balance": "$2,122.60", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Frye Williams", "gender": "male", "company": "ENORMO", "email": "fryewilliams@enormo.com", "phone": "+1 (903) 542-3051", "address": "710 Debevoise Avenue, Bergoo, Nebraska, 2392", "about": "Laborum reprehenderit ipsum ea ad enim occaecat voluptate dolore proident est velit anim dolor deserunt. Exercitation officia id in ex ea incididunt sit occaecat do tempor minim laboris. Officia ad ipsum exercitation Lorem consectetur id officia veniam fugiat. Et dolore excepteur sint irure ex quis. Veniam id duis et reprehenderit duis aliqua irure deserunt dolore. Sit officia enim sit dolor duis Lorem est voluptate ullamco.\r\n", "registered": "2014-06-23T14:10:11-12:00", "latitude": 40.996279, "longitude": -33.465653, "tags": [ "quis", "nisi", "aute", "dolor", "qui", "quis", "labore" ], "friends": [ { "id": 0, "name": "Lara Reilly" }, { "id": 1, "name": "Diann Jacobson" }, { "id": 2, "name": "Fulton Jones" } ], "greeting": "Hello, Frye Williams! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25eda56eb996e6f291", "index": 2589, "guid": "7892ad52-ad32-4d41-bfec-334f33fd21a1", "isActive": false, "balance": "$1,800.40", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Hannah Bennett", "gender": "female", "company": "RODEOMAD", "email": "hannahbennett@rodeomad.com", "phone": "+1 (853) 425-3794", "address": "665 Berkeley Place, Biddle, District Of Columbia, 4711", "about": "Nisi excepteur dolor ex sunt irure in minim. Aliquip ex cillum esse qui deserunt qui irure eu mollit occaecat veniam ullamco ea. Qui aliqua irure ipsum do laborum amet mollit cupidatat.\r\n", "registered": "2014-03-06T02:06:48-13:00", "latitude": 36.875137, "longitude": 99.888088, "tags": [ "quis", "proident", "incididunt", "labore", "pariatur", "nulla", "enim" ], "friends": [ { "id": 0, "name": "Wood Quinn" }, { "id": 1, "name": "Guerra Zimmerman" }, { "id": 2, "name": "Krista Cruz" } ], "greeting": "Hello, Hannah Bennett! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25a5fa8c5d1cbee931", "index": 2590, "guid": "886a4469-fa83-40de-96d9-6c6ebcfdca81", "isActive": false, "balance": "$1,540.97", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Good Moody", "gender": "male", "company": "VOIPA", "email": "goodmoody@voipa.com", "phone": "+1 (918) 492-3808", "address": "126 Varick Avenue, Wollochet, New Jersey, 935", "about": "Occaecat excepteur velit consectetur quis ea laborum est ullamco mollit pariatur. Nostrud incididunt laboris sunt dolore ullamco ea aute. Esse occaecat esse duis tempor consequat nisi nisi nulla consequat. Nisi ea eiusmod veniam deserunt non minim consequat tempor ullamco labore esse velit dolore enim. Incididunt et non consectetur est. Anim cillum culpa deserunt dolor exercitation eiusmod sunt.\r\n", "registered": "2014-03-15T15:55:25-13:00", "latitude": -4.032743, "longitude": 174.62358, "tags": [ "consequat", "ut", "nulla", "incididunt", "anim", "pariatur", "sit" ], "friends": [ { "id": 0, "name": "Sandoval Barton" }, { "id": 1, "name": "Molina Ayala" }, { "id": 2, "name": "Jody Workman" } ], "greeting": "Hello, Good Moody! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2535a432bf54d58866", "index": 2591, "guid": "e7ad07c3-6029-43dc-ac82-f61826045c8c", "isActive": false, "balance": "$1,875.73", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Hyde Hopper", "gender": "male", "company": "BULLZONE", "email": "hydehopper@bullzone.com", "phone": "+1 (996) 504-2919", "address": "828 Hoyts Lane, Snowville, Palau, 7362", "about": "Voluptate tempor dolor in pariatur. Ea eiusmod cupidatat sunt quis eu duis tempor. Dolore est minim eiusmod duis.\r\n", "registered": "2014-01-09T04:12:40-13:00", "latitude": -55.959431, "longitude": -9.8674, "tags": [ "in", "ut", "amet", "id", "dolore", "elit", "voluptate" ], "friends": [ { "id": 0, "name": "Jaime Turner" }, { "id": 1, "name": "Haynes Shaffer" }, { "id": 2, "name": "Stone Miranda" } ], "greeting": "Hello, Hyde Hopper! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25e25009161d966db8", "index": 2592, "guid": "34fd0d01-01bd-4512-ac00-e2ad8a3a45b9", "isActive": false, "balance": "$2,536.39", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Walls Cash", "gender": "male", "company": "GLUKGLUK", "email": "wallscash@glukgluk.com", "phone": "+1 (947) 464-3932", "address": "658 Friel Place, Fairhaven, Puerto Rico, 6157", "about": "Fugiat quis anim Lorem pariatur ipsum aliqua elit reprehenderit irure voluptate reprehenderit officia ut. Fugiat ipsum sunt sit Lorem sunt nulla consectetur. Duis Lorem commodo magna voluptate qui magna incididunt anim amet esse cillum labore consequat tempor. Occaecat magna qui ea est laboris nostrud et nulla consectetur qui enim deserunt voluptate.\r\n", "registered": "2014-01-24T00:28:55-13:00", "latitude": -10.985187, "longitude": -97.648016, "tags": [ "veniam", "quis", "Lorem", "reprehenderit", "sunt", "ex", "laborum" ], "friends": [ { "id": 0, "name": "Virginia Randall" }, { "id": 1, "name": "Bruce Drake" }, { "id": 2, "name": "Reyna Calderon" } ], "greeting": "Hello, Walls Cash! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2549dd949717590a95", "index": 2593, "guid": "fc80d299-2f91-44ed-9f65-98a981d0c854", "isActive": false, "balance": "$1,584.14", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Michelle Mckinney", "gender": "female", "company": "COMSTRUCT", "email": "michellemckinney@comstruct.com", "phone": "+1 (863) 548-3984", "address": "218 Agate Court, Kanauga, California, 6744", "about": "Ullamco reprehenderit do et et duis enim consequat occaecat aute pariatur dolor irure ex. Ullamco est pariatur eu velit incididunt ipsum labore est. Duis incididunt velit id adipisicing irure quis non. Exercitation ut sit duis occaecat Lorem esse in culpa adipisicing esse nostrud id aliqua. Anim veniam do dolore voluptate magna cillum proident cupidatat deserunt laborum fugiat duis officia duis. Reprehenderit commodo ut deserunt non. Duis nostrud irure ad sit.\r\n", "registered": "2014-06-30T23:43:50-12:00", "latitude": 11.598762, "longitude": 138.345337, "tags": [ "irure", "consequat", "non", "exercitation", "est", "occaecat", "laborum" ], "friends": [ { "id": 0, "name": "Booth Estrada" }, { "id": 1, "name": "Kathleen Weaver" }, { "id": 2, "name": "Hunt Welch" } ], "greeting": "Hello, Michelle Mckinney! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25851fdb23fda7c9f7", "index": 2594, "guid": "ba35241e-a987-496d-bb7e-7cbdc694f5ca", "isActive": true, "balance": "$2,843.34", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Blake Durham", "gender": "male", "company": "VALPREAL", "email": "blakedurham@valpreal.com", "phone": "+1 (811) 421-2413", "address": "374 Keen Court, Kilbourne, Vermont, 641", "about": "Minim consequat non labore aute commodo officia ut ipsum anim adipisicing cillum enim magna non. Dolore eu consectetur minim sunt culpa excepteur veniam magna eu occaecat enim anim. Tempor labore aute nulla commodo commodo aute nisi irure voluptate exercitation anim. Do laborum do pariatur esse culpa in consequat. Aliquip non dolor amet adipisicing do tempor non do consequat tempor ullamco.\r\n", "registered": "2014-06-09T05:43:56-12:00", "latitude": 33.965097, "longitude": 37.046565, "tags": [ "amet", "excepteur", "duis", "magna", "aliqua", "anim", "velit" ], "friends": [ { "id": 0, "name": "Kaye Woodward" }, { "id": 1, "name": "Roman Fowler" }, { "id": 2, "name": "Morton Holloway" } ], "greeting": "Hello, Blake Durham! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2504bd30afc17e8b79", "index": 2595, "guid": "6431d8a6-8708-4f5b-9eaa-2a6f960f7465", "isActive": true, "balance": "$1,448.64", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Shari Britt", "gender": "female", "company": "CHILLIUM", "email": "sharibritt@chillium.com", "phone": "+1 (880) 481-2773", "address": "143 Hamilton Avenue, Saddlebrooke, Indiana, 7327", "about": "Veniam qui exercitation excepteur occaecat duis minim. Labore commodo nulla aliqua qui. Adipisicing irure est laboris sit sunt culpa eiusmod id quis consectetur.\r\n", "registered": "2014-03-17T23:57:13-13:00", "latitude": 17.207638, "longitude": -31.972571, "tags": [ "magna", "dolor", "exercitation", "anim", "id", "ex", "anim" ], "friends": [ { "id": 0, "name": "Trevino Berg" }, { "id": 1, "name": "Lucinda Moss" }, { "id": 2, "name": "Munoz Stark" } ], "greeting": "Hello, Shari Britt! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25b97bc693a52b6bcd", "index": 2596, "guid": "fffd7981-e055-4063-8c0d-5d8c99e0ca4e", "isActive": false, "balance": "$1,719.40", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Avis Mendoza", "gender": "female", "company": "ANDRYX", "email": "avismendoza@andryx.com", "phone": "+1 (854) 431-3151", "address": "187 Saratoga Avenue, Waterloo, Illinois, 1802", "about": "Sint cillum deserunt ullamco proident ipsum commodo ea excepteur officia. Pariatur excepteur minim ut est minim aute quis. Fugiat ullamco voluptate aute irure. Ex excepteur minim Lorem et anim exercitation ea quis eu. Ipsum sit ipsum ad magna consequat in velit consequat. Sint aliqua deserunt eu nisi dolor ea anim eiusmod dolor. Reprehenderit est qui magna nostrud do laboris anim eu qui excepteur reprehenderit id.\r\n", "registered": "2014-09-12T06:28:09-12:00", "latitude": -4.137571, "longitude": 28.560249, "tags": [ "do", "sit", "ut", "dolore", "et", "nostrud", "proident" ], "friends": [ { "id": 0, "name": "Sheppard Harrison" }, { "id": 1, "name": "Clayton Dickerson" }, { "id": 2, "name": "Turner Arnold" } ], "greeting": "Hello, Avis Mendoza! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25dde0386bbb7cd6d0", "index": 2597, "guid": "2de4e3ef-e7f7-43a8-b891-b6a618f6f92e", "isActive": true, "balance": "$2,240.27", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Travis Rodriquez", "gender": "male", "company": "STEELFAB", "email": "travisrodriquez@steelfab.com", "phone": "+1 (930) 549-2363", "address": "497 Halleck Street, Statenville, South Carolina, 589", "about": "Nostrud dolor reprehenderit mollit esse reprehenderit est quis aliquip enim. Sint ad cillum dolore officia do id. Consectetur esse est aliqua adipisicing pariatur nulla velit irure voluptate amet. Magna labore consectetur non elit esse laborum officia ea in fugiat.\r\n", "registered": "2014-03-07T02:21:34-13:00", "latitude": -53.069354, "longitude": -131.819202, "tags": [ "Lorem", "in", "enim", "cillum", "aute", "ex", "elit" ], "friends": [ { "id": 0, "name": "Schwartz Guy" }, { "id": 1, "name": "Jacobs Vang" }, { "id": 2, "name": "Marcie Lynn" } ], "greeting": "Hello, Travis Rodriquez! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2523f45067171a3950", "index": 2598, "guid": "a34033fd-c094-43a2-9c71-031eacb337e4", "isActive": true, "balance": "$2,992.71", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Welch York", "gender": "male", "company": "DEEPENDS", "email": "welchyork@deepends.com", "phone": "+1 (823) 443-2726", "address": "351 Story Court, Eastmont, American Samoa, 9722", "about": "Aliquip aliquip elit pariatur veniam mollit magna eiusmod consequat id duis. Quis eu tempor do dolor minim minim non deserunt ipsum officia ut. Exercitation aute occaecat esse qui do minim nisi pariatur. Consequat velit elit culpa commodo deserunt fugiat ut consectetur.\r\n", "registered": "2014-02-05T13:39:14-13:00", "latitude": -60.099022, "longitude": -67.033882, "tags": [ "pariatur", "duis", "nisi", "cillum", "ea", "quis", "veniam" ], "friends": [ { "id": 0, "name": "Carpenter Erickson" }, { "id": 1, "name": "Young Fields" }, { "id": 2, "name": "Marcella Aguilar" } ], "greeting": "Hello, Welch York! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2566182aa90ad01434", "index": 2599, "guid": "cb74cfc1-2801-4265-be7c-94e5fd3a0c02", "isActive": false, "balance": "$2,546.66", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Jayne Gomez", "gender": "female", "company": "INTERGEEK", "email": "jaynegomez@intergeek.com", "phone": "+1 (824) 422-2527", "address": "491 Wyckoff Avenue, Glendale, Delaware, 6533", "about": "Minim aute amet qui quis dolore officia adipisicing. Aliqua labore laborum est veniam deserunt. Et ipsum nisi labore eiusmod proident quis cillum officia occaecat. Velit elit in irure pariatur esse esse nisi quis quis dolore. Lorem velit non qui eiusmod tempor laboris. Nostrud non labore labore eu do elit. Tempor consectetur voluptate eu velit fugiat ad aliqua aute.\r\n", "registered": "2014-04-25T18:42:33-12:00", "latitude": 67.913894, "longitude": 114.865018, "tags": [ "ut", "elit", "aute", "duis", "excepteur", "tempor", "irure" ], "friends": [ { "id": 0, "name": "Laverne Stewart" }, { "id": 1, "name": "Blair Foster" }, { "id": 2, "name": "Isabella Pacheco" } ], "greeting": "Hello, Jayne Gomez! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea250135b5ed685dd2b0", "index": 2600, "guid": "ebcd8a13-6f41-49bd-95bf-1449ec52ffdc", "isActive": false, "balance": "$3,713.11", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Taylor Rodgers", "gender": "male", "company": "YURTURE", "email": "taylorrodgers@yurture.com", "phone": "+1 (990) 530-2037", "address": "117 Harrison Place, Nash, Pennsylvania, 353", "about": "Anim dolor dolore laboris ipsum duis ullamco sint mollit culpa est. Veniam fugiat tempor ad proident in mollit dolore. Veniam id consectetur pariatur veniam reprehenderit et irure occaecat commodo eu consectetur voluptate consectetur.\r\n", "registered": "2014-04-25T09:39:23-12:00", "latitude": 83.259408, "longitude": 38.712858, "tags": [ "magna", "voluptate", "velit", "aliquip", "est", "exercitation", "ipsum" ], "friends": [ { "id": 0, "name": "Palmer Meyers" }, { "id": 1, "name": "Kristine Roach" }, { "id": 2, "name": "Susanna Gallegos" } ], "greeting": "Hello, Taylor Rodgers! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2540895b720d48f4c9", "index": 2601, "guid": "e1593a26-78de-4223-b995-867a8b1e378e", "isActive": true, "balance": "$1,553.64", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "King Stokes", "gender": "male", "company": "LETPRO", "email": "kingstokes@letpro.com", "phone": "+1 (914) 569-3869", "address": "909 Hope Street, Ryderwood, Georgia, 8901", "about": "Officia voluptate non excepteur aute sit consequat veniam veniam sit dolor amet nulla. Cupidatat mollit ex consequat exercitation laborum. Magna nostrud dolore dolore elit aliquip consectetur laboris dolor consequat anim commodo sunt. Exercitation eu irure Lorem esse magna aute excepteur Lorem qui. Amet ad aliquip occaecat amet exercitation. Incididunt amet eiusmod minim commodo occaecat deserunt reprehenderit minim incididunt ea id consequat aute. Adipisicing duis fugiat nostrud velit quis eiusmod proident.\r\n", "registered": "2014-01-22T22:04:12-13:00", "latitude": 8.339236, "longitude": -168.4012, "tags": [ "occaecat", "duis", "mollit", "Lorem", "officia", "laborum", "excepteur" ], "friends": [ { "id": 0, "name": "Britney Marks" }, { "id": 1, "name": "Mona Woods" }, { "id": 2, "name": "Marshall Briggs" } ], "greeting": "Hello, King Stokes! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea259d7d5ba9f5fb8141", "index": 2602, "guid": "e725c2f1-bf4a-4b8f-8fbe-3697581b12f6", "isActive": false, "balance": "$1,416.82", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Annette Serrano", "gender": "female", "company": "AUTOGRATE", "email": "annetteserrano@autograte.com", "phone": "+1 (830) 406-2626", "address": "336 Hinckley Place, Nutrioso, North Dakota, 3256", "about": "Laboris laborum labore amet excepteur excepteur veniam dolore excepteur. Pariatur irure fugiat quis sit eiusmod Lorem mollit officia voluptate enim irure. Incididunt exercitation eiusmod ea veniam. Amet tempor ullamco reprehenderit ea reprehenderit esse cillum ex reprehenderit exercitation sit proident.\r\n", "registered": "2014-06-25T09:59:10-12:00", "latitude": -61.197893, "longitude": 155.176783, "tags": [ "aliqua", "anim", "eiusmod", "culpa", "sit", "aliquip", "Lorem" ], "friends": [ { "id": 0, "name": "Kari Cooper" }, { "id": 1, "name": "Joseph Floyd" }, { "id": 2, "name": "Corina Stevenson" } ], "greeting": "Hello, Annette Serrano! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25449b1f2f80f3adc4", "index": 2603, "guid": "98107a01-9f75-4361-ac74-c2235b2ea518", "isActive": true, "balance": "$2,034.87", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Andrews Sargent", "gender": "male", "company": "TERRAGEN", "email": "andrewssargent@terragen.com", "phone": "+1 (953) 463-3488", "address": "628 Bridgewater Street, Dupuyer, Louisiana, 6796", "about": "Sit voluptate Lorem elit nostrud esse Lorem quis non est nisi nostrud eiusmod. Cillum dolor cillum enim elit deserunt consectetur voluptate. Magna ipsum exercitation et aliqua id deserunt magna incididunt enim nulla pariatur fugiat. Nulla nostrud veniam culpa consequat enim reprehenderit ipsum pariatur tempor enim elit do. Esse nisi voluptate eu officia id culpa.\r\n", "registered": "2014-04-12T10:47:05-12:00", "latitude": -66.888451, "longitude": -133.054493, "tags": [ "sint", "velit", "amet", "consequat", "non", "non", "ad" ], "friends": [ { "id": 0, "name": "Gomez Johnston" }, { "id": 1, "name": "Marissa Valenzuela" }, { "id": 2, "name": "Johns Richards" } ], "greeting": "Hello, Andrews Sargent! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25985924f8dcfc7cb8", "index": 2604, "guid": "a53582c9-f8c1-4930-8ac9-eb6cffb4201a", "isActive": true, "balance": "$3,643.45", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Belinda Duffy", "gender": "female", "company": "AVENETRO", "email": "belindaduffy@avenetro.com", "phone": "+1 (895) 426-3191", "address": "916 Schermerhorn Street, Orviston, Northern Mariana Islands, 3471", "about": "Tempor pariatur nisi incididunt incididunt ad. Occaecat eu voluptate elit excepteur commodo nisi adipisicing Lorem elit exercitation. Reprehenderit incididunt irure exercitation sunt. Et tempor voluptate reprehenderit aliquip eu. Non ea nostrud aliqua velit. Aliqua duis ipsum ex amet velit laboris adipisicing magna magna. Commodo excepteur occaecat cupidatat cillum excepteur nulla velit aute Lorem ullamco excepteur cupidatat mollit adipisicing.\r\n", "registered": "2014-03-05T17:41:27-13:00", "latitude": -18.414051, "longitude": -160.935118, "tags": [ "magna", "nisi", "magna", "nisi", "nulla", "aliqua", "culpa" ], "friends": [ { "id": 0, "name": "Kelley Blanchard" }, { "id": 1, "name": "Leon Craig" }, { "id": 2, "name": "Walton Byrd" } ], "greeting": "Hello, Belinda Duffy! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e411ed0ee3f5ab6f", "index": 2605, "guid": "7b2fa84c-8998-414f-ac08-116d25f002a4", "isActive": false, "balance": "$3,459.42", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Kathie White", "gender": "female", "company": "ZYTRAC", "email": "kathiewhite@zytrac.com", "phone": "+1 (902) 403-3318", "address": "301 Woodpoint Road, Moraida, Colorado, 6671", "about": "Exercitation reprehenderit ad reprehenderit ea voluptate exercitation elit deserunt reprehenderit do. Est eiusmod do dolor officia reprehenderit ullamco aliqua sit eu quis nisi. Velit irure aliquip nostrud excepteur enim ad eu excepteur ea minim consequat nisi sit. Fugiat non voluptate proident laboris qui laboris nulla incididunt tempor.\r\n", "registered": "2014-05-12T21:45:56-12:00", "latitude": 64.332835, "longitude": -89.73113, "tags": [ "sit", "consequat", "ipsum", "ullamco", "eiusmod", "mollit", "quis" ], "friends": [ { "id": 0, "name": "Jordan Hensley" }, { "id": 1, "name": "Santiago Martinez" }, { "id": 2, "name": "Frost Richmond" } ], "greeting": "Hello, Kathie White! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea250baf112f7847baff", "index": 2606, "guid": "e8cd111d-eeb1-4aae-9684-f525c065c4e8", "isActive": false, "balance": "$3,147.64", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Herminia Mcclure", "gender": "female", "company": "MULTRON", "email": "herminiamcclure@multron.com", "phone": "+1 (886) 446-2040", "address": "469 Bevy Court, Berlin, Idaho, 5647", "about": "Non proident labore quis non Lorem nisi occaecat. Exercitation esse anim sit amet excepteur ad id deserunt veniam ut laboris veniam. Velit irure do consequat nisi occaecat labore. Excepteur fugiat nisi fugiat cillum deserunt ipsum cillum ex sint cillum. Cillum ut quis amet laborum cupidatat minim irure eiusmod. Labore nisi nisi id laboris.\r\n", "registered": "2014-05-31T09:01:21-12:00", "latitude": -74.705711, "longitude": 53.666834, "tags": [ "enim", "ut", "sit", "reprehenderit", "amet", "veniam", "tempor" ], "friends": [ { "id": 0, "name": "Marianne Peters" }, { "id": 1, "name": "Doreen Lara" }, { "id": 2, "name": "Shawna Cleveland" } ], "greeting": "Hello, Herminia Mcclure! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea252f3878f04d444b3f", "index": 2607, "guid": "8033a71b-a916-47bc-80a9-e36efa273ca0", "isActive": true, "balance": "$3,280.71", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Greene Howell", "gender": "male", "company": "DAISU", "email": "greenehowell@daisu.com", "phone": "+1 (922) 499-3147", "address": "404 Division Avenue, Aurora, Marshall Islands, 1357", "about": "Nulla do ipsum qui sint adipisicing nisi amet labore tempor reprehenderit nostrud. Lorem occaecat aliqua pariatur occaecat tempor cupidatat dolor exercitation qui nulla culpa ipsum ad excepteur. Consectetur ullamco ad magna cupidatat mollit esse. Nulla veniam culpa duis non. Enim pariatur tempor non laboris eu ad consequat enim.\r\n", "registered": "2014-03-06T06:49:50-13:00", "latitude": -67.275149, "longitude": 99.790556, "tags": [ "minim", "nulla", "ad", "do", "nisi", "commodo", "velit" ], "friends": [ { "id": 0, "name": "Tina Nielsen" }, { "id": 1, "name": "Henson Rhodes" }, { "id": 2, "name": "Rodgers Hartman" } ], "greeting": "Hello, Greene Howell! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25cc19e0de8746ab75", "index": 2608, "guid": "9afffbb5-ba6f-40fb-b880-8e2ea3592998", "isActive": false, "balance": "$1,766.95", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Ruth Travis", "gender": "female", "company": "MALATHION", "email": "ruthtravis@malathion.com", "phone": "+1 (828) 530-3629", "address": "948 Livingston Street, Mansfield, New York, 7845", "about": "Tempor laborum est dolor adipisicing nostrud reprehenderit. Excepteur cillum velit nisi culpa cupidatat laborum nulla deserunt exercitation commodo culpa ex incididunt. Laborum eu labore dolore nostrud quis ad laboris qui excepteur ipsum nulla. Amet veniam ad non dolore consequat. Aute nulla non incididunt culpa voluptate nostrud et ipsum.\r\n", "registered": "2014-07-10T18:39:59-12:00", "latitude": 59.518713, "longitude": 112.727433, "tags": [ "fugiat", "tempor", "cupidatat", "nisi", "labore", "anim", "reprehenderit" ], "friends": [ { "id": 0, "name": "Richard Wilson" }, { "id": 1, "name": "Payne Pace" }, { "id": 2, "name": "Reid Sparks" } ], "greeting": "Hello, Ruth Travis! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea257741416321cac7eb", "index": 2609, "guid": "f9754ace-eaf0-4218-9985-8a38042e22d7", "isActive": false, "balance": "$2,049.19", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Whitley Patterson", "gender": "male", "company": "CONJURICA", "email": "whitleypatterson@conjurica.com", "phone": "+1 (963) 511-2559", "address": "996 Estate Road, Fairmount, Guam, 8349", "about": "Consectetur est sit minim laborum veniam cillum aute nostrud. Ut fugiat incididunt aliquip eu consectetur aute enim commodo aliquip irure deserunt labore exercitation adipisicing. In cupidatat eu laborum sunt ex cillum sit labore duis ipsum dolor quis in.\r\n", "registered": "2014-01-17T19:59:21-13:00", "latitude": 57.09187, "longitude": -125.907027, "tags": [ "proident", "ullamco", "esse", "anim", "veniam", "excepteur", "pariatur" ], "friends": [ { "id": 0, "name": "Estrada Wood" }, { "id": 1, "name": "Martina Rodriguez" }, { "id": 2, "name": "Malone Bates" } ], "greeting": "Hello, Whitley Patterson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2518b60363092b1241", "index": 2610, "guid": "3d9347ab-b79f-46e2-b322-fce6843af992", "isActive": false, "balance": "$1,304.21", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Stella Shepard", "gender": "female", "company": "COMTRAIL", "email": "stellashepard@comtrail.com", "phone": "+1 (864) 590-2779", "address": "509 Delevan Street, Cannondale, Virgin Islands, 8305", "about": "Exercitation non dolore sint anim duis incididunt aliquip elit ad ut non elit. Incididunt excepteur do ex incididunt laborum exercitation excepteur culpa. Velit do sint tempor ipsum.\r\n", "registered": "2014-04-09T14:29:00-12:00", "latitude": -1.352826, "longitude": -128.388164, "tags": [ "nisi", "aliquip", "ex", "excepteur", "aute", "minim", "labore" ], "friends": [ { "id": 0, "name": "Barbara Mercado" }, { "id": 1, "name": "Kerri Fitzpatrick" }, { "id": 2, "name": "Katina Hart" } ], "greeting": "Hello, Stella Shepard! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2569c3b7fec63a89b1", "index": 2611, "guid": "f026129d-78f1-44a5-bd09-afc12aff2fb4", "isActive": false, "balance": "$2,192.23", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Mooney Poole", "gender": "male", "company": "VIAGREAT", "email": "mooneypoole@viagreat.com", "phone": "+1 (975) 438-3558", "address": "655 Eagle Street, Gerber, Massachusetts, 1121", "about": "Consequat qui velit dolor nostrud tempor. Dolore voluptate ipsum magna nulla mollit in ut elit minim dolor culpa. Aliquip nulla consectetur occaecat aute ipsum nulla Lorem reprehenderit dolor ut velit magna incididunt. Est fugiat ex consequat reprehenderit excepteur ex. Eu officia in anim consectetur sit anim deserunt veniam amet laborum ad ex.\r\n", "registered": "2014-02-23T13:31:36-13:00", "latitude": 79.559114, "longitude": 168.44903, "tags": [ "sunt", "cupidatat", "ut", "dolore", "occaecat", "cillum", "magna" ], "friends": [ { "id": 0, "name": "Gallegos Franks" }, { "id": 1, "name": "Cain Watson" }, { "id": 2, "name": "Alvarez Shaw" } ], "greeting": "Hello, Mooney Poole! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25e067f95f6de4cac7", "index": 2612, "guid": "38658ed1-6df0-47de-aaa1-63e5db1b26de", "isActive": false, "balance": "$3,488.01", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Addie Smith", "gender": "female", "company": "DANJA", "email": "addiesmith@danja.com", "phone": "+1 (965) 429-2760", "address": "485 Lincoln Terrace, Mooresburg, Utah, 6282", "about": "Ipsum ullamco voluptate exercitation ullamco eu minim enim non elit ea veniam enim quis qui. Aute anim nulla in pariatur fugiat elit in aliqua. Esse eu sunt eu dolore. Cillum ullamco commodo consectetur occaecat laborum proident mollit laboris. Labore incididunt pariatur ea ex laboris eu elit tempor consectetur tempor duis sit.\r\n", "registered": "2014-03-29T16:35:08-13:00", "latitude": -53.022459, "longitude": 143.119511, "tags": [ "aliqua", "amet", "veniam", "dolor", "officia", "pariatur", "pariatur" ], "friends": [ { "id": 0, "name": "Kendra Bell" }, { "id": 1, "name": "Keisha Simon" }, { "id": 2, "name": "Isabel Orr" } ], "greeting": "Hello, Addie Smith! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25581692567f386dc1", "index": 2613, "guid": "be14072c-370d-40c9-98a7-b6c20238ccd6", "isActive": false, "balance": "$2,078.79", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Sharron Page", "gender": "female", "company": "ISIS", "email": "sharronpage@isis.com", "phone": "+1 (994) 498-2294", "address": "263 Randolph Street, Rew, Montana, 8826", "about": "Reprehenderit commodo aliquip voluptate occaecat eiusmod tempor consequat nisi dolor ipsum. Aute aute consectetur sint ut ullamco consectetur labore enim velit consequat ea pariatur mollit laboris. Fugiat culpa labore cillum exercitation. Duis ut officia qui laborum nulla ad aute nostrud nulla irure dolor qui cupidatat sint. Nostrud id quis nisi labore eu adipisicing exercitation non sint eu nulla. Non dolore proident deserunt cillum anim aute consectetur cupidatat sint laboris aute voluptate tempor commodo.\r\n", "registered": "2014-08-25T03:44:04-12:00", "latitude": 17.096699, "longitude": -126.889273, "tags": [ "quis", "consequat", "incididunt", "esse", "dolore", "duis", "non" ], "friends": [ { "id": 0, "name": "Floyd Greene" }, { "id": 1, "name": "Brennan Flowers" }, { "id": 2, "name": "Cecile Spencer" } ], "greeting": "Hello, Sharron Page! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2579716eb759d8a251", "index": 2614, "guid": "db550a99-c4c3-4724-b917-afa7c123e5ce", "isActive": true, "balance": "$3,905.05", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Wilma Booker", "gender": "female", "company": "ANOCHA", "email": "wilmabooker@anocha.com", "phone": "+1 (879) 401-3212", "address": "395 Carlton Avenue, Blanco, Wisconsin, 1399", "about": "Labore laborum sint cillum id irure ea duis elit minim est. Enim esse officia consectetur mollit esse consectetur. Excepteur nulla ad ex eiusmod aute eiusmod velit magna sit irure culpa voluptate. Proident proident mollit ex id incididunt nulla. In tempor anim adipisicing in quis labore qui ea adipisicing commodo. Cillum nulla cupidatat sint sunt tempor amet reprehenderit fugiat ut Lorem ullamco magna sint. Minim ut mollit ad est aliquip consequat nulla ullamco duis sit duis.\r\n", "registered": "2014-01-04T09:09:07-13:00", "latitude": 21.305326, "longitude": -57.53778, "tags": [ "voluptate", "adipisicing", "eu", "et", "in", "mollit", "est" ], "friends": [ { "id": 0, "name": "Simone Vinson" }, { "id": 1, "name": "Tricia Craft" }, { "id": 2, "name": "Terrie Frazier" } ], "greeting": "Hello, Wilma Booker! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25e5b563ae4a9119b9", "index": 2615, "guid": "e2fcc628-b019-4a9a-872d-0ea8a2bf98e7", "isActive": false, "balance": "$2,570.80", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Mcpherson Guerrero", "gender": "male", "company": "ZYPLE", "email": "mcphersonguerrero@zyple.com", "phone": "+1 (823) 580-3151", "address": "728 Furman Avenue, Oneida, Maine, 6820", "about": "Cupidatat deserunt aliquip est dolore qui proident nulla duis aliquip adipisicing exercitation. Sit officia cupidatat sint cillum laborum et fugiat duis proident nisi amet et. Dolore excepteur sit officia reprehenderit sit ullamco id reprehenderit reprehenderit magna amet anim pariatur reprehenderit. Elit dolor minim proident laboris est. Reprehenderit quis veniam veniam velit incididunt sit cupidatat in eiusmod tempor Lorem minim. Dolore ut elit non voluptate laborum occaecat anim velit nostrud eiusmod incididunt laborum pariatur labore. Nostrud excepteur officia proident magna Lorem sit in duis enim ut velit aliqua.\r\n", "registered": "2014-06-29T01:51:27-12:00", "latitude": -88.895743, "longitude": -80.93731, "tags": [ "adipisicing", "do", "laborum", "cupidatat", "proident", "nulla", "aliquip" ], "friends": [ { "id": 0, "name": "Kramer Francis" }, { "id": 1, "name": "Madeline Wiley" }, { "id": 2, "name": "Carter Kelly" } ], "greeting": "Hello, Mcpherson Guerrero! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25fa6b230cf0b75805", "index": 2616, "guid": "871f645e-af25-442b-a951-aa2fa35521e5", "isActive": true, "balance": "$1,064.44", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Mitchell Klein", "gender": "male", "company": "ZYTREK", "email": "mitchellklein@zytrek.com", "phone": "+1 (941) 459-2222", "address": "295 Dahill Road, Brambleton, Virginia, 1827", "about": "Qui ipsum dolor nulla pariatur excepteur tempor. Et commodo consectetur eu commodo. Non amet sint sint officia aliqua velit. Id velit laborum amet ipsum incididunt consequat Lorem eiusmod. Mollit id fugiat eu fugiat officia.\r\n", "registered": "2014-01-05T21:05:15-13:00", "latitude": 24.747684, "longitude": 74.890432, "tags": [ "sit", "adipisicing", "amet", "adipisicing", "ad", "proident", "ad" ], "friends": [ { "id": 0, "name": "Roberta Mcbride" }, { "id": 1, "name": "Mccarty Carey" }, { "id": 2, "name": "Gladys Fry" } ], "greeting": "Hello, Mitchell Klein! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea250a4dbed62c6cbdc3", "index": 2617, "guid": "f8cb2117-34f4-4ea4-a25d-a86601b374d0", "isActive": true, "balance": "$2,337.29", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Anna Beasley", "gender": "female", "company": "HONOTRON", "email": "annabeasley@honotron.com", "phone": "+1 (945) 482-2090", "address": "282 Ferris Street, Lemoyne, Kentucky, 2433", "about": "Commodo eiusmod occaecat dolore elit ullamco. Eiusmod Lorem occaecat esse aute officia exercitation eu elit sunt ex in. Id enim velit consequat duis minim non proident eu sunt dolore dolor voluptate magna. Ullamco ex velit consequat deserunt commodo. Anim pariatur nostrud non Lorem.\r\n", "registered": "2014-03-20T06:02:53-13:00", "latitude": 45.154523, "longitude": -19.352095, "tags": [ "eu", "est", "excepteur", "exercitation", "mollit", "amet", "qui" ], "friends": [ { "id": 0, "name": "Hayes Gaines" }, { "id": 1, "name": "Beatriz Warner" }, { "id": 2, "name": "Berta Henry" } ], "greeting": "Hello, Anna Beasley! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea254b059be902fc1af2", "index": 2618, "guid": "9cfdc275-fc79-45b8-a236-3abd6ed4cac4", "isActive": true, "balance": "$2,130.73", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Adele Clark", "gender": "female", "company": "ZENTILITY", "email": "adeleclark@zentility.com", "phone": "+1 (944) 582-3214", "address": "732 Poplar Avenue, Woodlands, Connecticut, 9226", "about": "Esse consequat nulla qui enim voluptate. Dolor consectetur non est proident nisi dolor laboris. Dolore magna consequat fugiat ullamco dolor commodo anim tempor sunt et eu. Minim excepteur ad ullamco duis. Magna commodo anim aliquip sunt aliqua do. Veniam officia amet dolore cillum proident ullamco minim anim.\r\n", "registered": "2014-02-27T16:48:26-13:00", "latitude": -45.827173, "longitude": -141.929265, "tags": [ "eiusmod", "non", "et", "velit", "commodo", "est", "Lorem" ], "friends": [ { "id": 0, "name": "Cherry Baird" }, { "id": 1, "name": "Whitfield Noel" }, { "id": 2, "name": "Robin Dunlap" } ], "greeting": "Hello, Adele Clark! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e4fb91973b6d2005", "index": 2619, "guid": "1f0bbe78-8af9-40bf-accf-5dc50420d320", "isActive": false, "balance": "$2,621.10", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Stokes Kramer", "gender": "male", "company": "CYTRAK", "email": "stokeskramer@cytrak.com", "phone": "+1 (978) 598-3576", "address": "868 Grove Street, Manchester, Mississippi, 5052", "about": "Ea adipisicing ex et cupidatat. Officia sit nisi laboris amet dolore. Non sit sint ipsum ut est reprehenderit cillum reprehenderit. Culpa laboris sunt velit id ut amet nisi adipisicing amet cupidatat ad fugiat sunt. Non aliquip commodo aliqua consectetur laboris commodo enim.\r\n", "registered": "2014-03-19T16:08:00-13:00", "latitude": 55.002974, "longitude": -169.506886, "tags": [ "pariatur", "exercitation", "pariatur", "ea", "tempor", "laborum", "voluptate" ], "friends": [ { "id": 0, "name": "Christian Hubbard" }, { "id": 1, "name": "Whitaker Petersen" }, { "id": 2, "name": "Lorraine Ford" } ], "greeting": "Hello, Stokes Kramer! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea252587ac33669705fa", "index": 2620, "guid": "89b03645-eeec-4d98-8bfb-270a1c0c2e98", "isActive": true, "balance": "$3,388.98", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Wallace Buck", "gender": "male", "company": "SPLINX", "email": "wallacebuck@splinx.com", "phone": "+1 (896) 438-3133", "address": "934 Charles Place, Wauhillau, Washington, 4233", "about": "Pariatur elit reprehenderit laborum qui occaecat ipsum eu fugiat. Enim cupidatat veniam esse sint elit mollit deserunt eu labore tempor labore irure duis. Laborum nisi ea qui aliqua non. Amet tempor non deserunt pariatur voluptate laborum reprehenderit occaecat minim tempor irure. Est id labore irure culpa consectetur do in.\r\n", "registered": "2014-07-14T10:46:41-12:00", "latitude": -61.621747, "longitude": -175.626407, "tags": [ "voluptate", "aute", "excepteur", "tempor", "dolore", "ullamco", "consequat" ], "friends": [ { "id": 0, "name": "Hull Harrington" }, { "id": 1, "name": "Mai Johns" }, { "id": 2, "name": "Martinez Montoya" } ], "greeting": "Hello, Wallace Buck! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea253cb6855031703801", "index": 2621, "guid": "4a5151a1-a5d4-4816-bb45-0994817f5e12", "isActive": false, "balance": "$2,882.32", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Woodard Berger", "gender": "male", "company": "VIRXO", "email": "woodardberger@virxo.com", "phone": "+1 (817) 566-2324", "address": "847 Whitwell Place, Saranap, Tennessee, 3190", "about": "Duis dolor fugiat id pariatur consectetur consequat sit officia labore sunt cupidatat nostrud. Nisi est eiusmod magna magna Lorem cillum do proident veniam fugiat et ut esse eiusmod. Mollit minim nisi eu elit consequat. Minim sit amet consectetur ea sit id voluptate ex labore. Qui tempor qui sunt consequat eiusmod est ea qui minim aute id excepteur sunt. Laboris do consequat Lorem nulla tempor velit occaecat dolore tempor non cillum adipisicing dolore. Labore enim excepteur ut aliqua excepteur aliqua dolore.\r\n", "registered": "2014-09-03T10:48:47-12:00", "latitude": 35.333449, "longitude": 17.15699, "tags": [ "exercitation", "ipsum", "veniam", "ex", "tempor", "commodo", "incididunt" ], "friends": [ { "id": 0, "name": "Jolene Osborne" }, { "id": 1, "name": "Rogers Mathis" }, { "id": 2, "name": "Barron Melton" } ], "greeting": "Hello, Woodard Berger! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea252729100d248cbdd2", "index": 2622, "guid": "93100673-2111-4f02-9464-a74718740282", "isActive": false, "balance": "$2,914.21", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Sonia Eaton", "gender": "female", "company": "ZIZZLE", "email": "soniaeaton@zizzle.com", "phone": "+1 (920) 573-2891", "address": "656 Gunther Place, Nadine, Alabama, 3521", "about": "Enim cupidatat fugiat voluptate adipisicing amet exercitation incididunt velit laborum. Est sint labore adipisicing ea aliquip nisi nisi esse ipsum esse culpa. Qui enim amet officia incididunt proident exercitation enim dolor. Laboris dolor nulla dolore id incididunt. Veniam officia tempor ex dolore nulla nostrud quis sit.\r\n", "registered": "2014-05-11T14:55:48-12:00", "latitude": -7.330767, "longitude": -116.120185, "tags": [ "ea", "duis", "in", "aliquip", "eu", "aute", "culpa" ], "friends": [ { "id": 0, "name": "Noble Mays" }, { "id": 1, "name": "Mathews Gill" }, { "id": 2, "name": "Bette Wheeler" } ], "greeting": "Hello, Sonia Eaton! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25e930121f29eb6b57", "index": 2623, "guid": "45395d14-7fca-4d12-b091-5596d18fd617", "isActive": false, "balance": "$2,287.66", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Kristi Carr", "gender": "female", "company": "ACIUM", "email": "kristicarr@acium.com", "phone": "+1 (860) 591-2975", "address": "806 Anna Court, Chase, Ohio, 3322", "about": "Ut dolore do enim ex irure voluptate nostrud sint occaecat tempor consectetur veniam cupidatat ad. Cillum mollit et mollit nisi non deserunt irure non ut pariatur. Eu consequat et ad anim et cupidatat pariatur. Irure esse sint elit nisi culpa anim exercitation aliqua sunt Lorem. Duis et proident ex incididunt elit est magna ullamco. Elit ullamco qui minim adipisicing commodo mollit eu.\r\n", "registered": "2014-05-02T23:36:18-12:00", "latitude": -11.611789, "longitude": 93.892045, "tags": [ "duis", "ullamco", "cupidatat", "aute", "aliqua", "amet", "eiusmod" ], "friends": [ { "id": 0, "name": "Raymond Wolfe" }, { "id": 1, "name": "Paige Huber" }, { "id": 2, "name": "Aimee Pierce" } ], "greeting": "Hello, Kristi Carr! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea255917e793542f8e14", "index": 2624, "guid": "4e073927-ff2a-4445-a875-f9e7989ceddf", "isActive": true, "balance": "$3,961.20", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Ophelia Merritt", "gender": "female", "company": "MAXEMIA", "email": "opheliamerritt@maxemia.com", "phone": "+1 (945) 492-3421", "address": "354 Evans Street, Ivanhoe, Hawaii, 6919", "about": "Aliquip ut id culpa velit ex nostrud duis labore Lorem ullamco. Consequat et pariatur do veniam pariatur tempor incididunt ad. Aliquip sit eu enim ea ut exercitation dolor occaecat mollit occaecat. Laboris laboris eiusmod ipsum ullamco dolore. Ut quis do ut exercitation deserunt fugiat id elit qui esse.\r\n", "registered": "2014-02-05T19:26:52-13:00", "latitude": 81.594452, "longitude": 20.793502, "tags": [ "cillum", "magna", "veniam", "aliquip", "Lorem", "nisi", "commodo" ], "friends": [ { "id": 0, "name": "Juana Aguirre" }, { "id": 1, "name": "Jane Luna" }, { "id": 2, "name": "Lawson Bowen" } ], "greeting": "Hello, Ophelia Merritt! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea254d12e1e427def19c", "index": 2625, "guid": "45d70122-bd37-400b-91ab-a8b7316563cd", "isActive": false, "balance": "$1,986.45", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Klein Mueller", "gender": "male", "company": "GENMY", "email": "kleinmueller@genmy.com", "phone": "+1 (830) 453-2728", "address": "579 Croton Loop, Teasdale, New Mexico, 820", "about": "Pariatur et qui commodo eu nisi cillum nulla veniam aliqua ullamco voluptate reprehenderit reprehenderit. Non culpa culpa officia aliqua consequat laboris eu ad aliqua aute consectetur est labore. Tempor velit ex occaecat veniam minim adipisicing exercitation nisi.\r\n", "registered": "2014-03-15T23:35:56-13:00", "latitude": -59.298664, "longitude": 97.440839, "tags": [ "elit", "nostrud", "dolore", "minim", "officia", "anim", "ipsum" ], "friends": [ { "id": 0, "name": "Claudine Duncan" }, { "id": 1, "name": "Milagros Burt" }, { "id": 2, "name": "Pope Saunders" } ], "greeting": "Hello, Klein Mueller! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea250fa6ced863b9fbd0", "index": 2626, "guid": "303fcd46-f89a-4ee8-b924-a0d2fd6cc4e8", "isActive": false, "balance": "$1,275.94", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Rose Caldwell", "gender": "male", "company": "SCENTRIC", "email": "rosecaldwell@scentric.com", "phone": "+1 (911) 492-3541", "address": "906 Cortelyou Road, Blandburg, Maryland, 7435", "about": "Qui officia dolor laboris ex reprehenderit. Id pariatur sunt id mollit. Officia exercitation non laborum voluptate qui sit ullamco incididunt et ad Lorem. Enim adipisicing dolor excepteur consectetur in deserunt culpa anim anim duis id.\r\n", "registered": "2014-07-04T22:34:23-12:00", "latitude": -33.893999, "longitude": 82.427467, "tags": [ "enim", "cupidatat", "commodo", "non", "culpa", "officia", "esse" ], "friends": [ { "id": 0, "name": "Cohen House" }, { "id": 1, "name": "Rachel Dudley" }, { "id": 2, "name": "Slater Wynn" } ], "greeting": "Hello, Rose Caldwell! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25f53b72295ec7a5e2", "index": 2627, "guid": "0b9cc000-aac3-4894-9b63-3275b77b6f58", "isActive": true, "balance": "$3,531.77", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Holcomb Wilkinson", "gender": "male", "company": "BULLJUICE", "email": "holcombwilkinson@bulljuice.com", "phone": "+1 (983) 591-2844", "address": "623 Tompkins Avenue, Loretto, Alaska, 5417", "about": "Aliqua labore culpa cupidatat nisi cupidatat ullamco reprehenderit excepteur anim veniam. Commodo amet exercitation mollit sint tempor sunt dolor proident labore aliquip non voluptate do. Adipisicing voluptate cillum excepteur cillum dolor labore consectetur sit cillum aliquip anim veniam consectetur.\r\n", "registered": "2014-02-12T00:08:16-13:00", "latitude": 78.718757, "longitude": 48.846252, "tags": [ "aliquip", "voluptate", "anim", "adipisicing", "sunt", "ea", "non" ], "friends": [ { "id": 0, "name": "Yolanda Bailey" }, { "id": 1, "name": "Dona Barry" }, { "id": 2, "name": "Bertie Atkins" } ], "greeting": "Hello, Holcomb Wilkinson! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2577d402f446a38454", "index": 2628, "guid": "7e6808dd-368c-4abe-979c-a2a27846516b", "isActive": false, "balance": "$3,299.04", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Shields Donaldson", "gender": "male", "company": "ELEMANTRA", "email": "shieldsdonaldson@elemantra.com", "phone": "+1 (981) 590-3973", "address": "493 Stone Avenue, Thatcher, Arizona, 5535", "about": "Labore anim id nisi eiusmod eiusmod excepteur officia ad voluptate incididunt Lorem voluptate. Reprehenderit ut ut ex minim. Lorem commodo laboris consequat est qui. Sunt magna mollit quis consectetur officia anim ullamco sunt anim occaecat. Laboris qui deserunt cupidatat reprehenderit Lorem Lorem tempor consectetur. Consequat aliqua est non dolor esse velit culpa aliqua deserunt labore dolor ea.\r\n", "registered": "2014-09-22T18:41:31-12:00", "latitude": -65.122971, "longitude": 30.799436, "tags": [ "Lorem", "Lorem", "pariatur", "culpa", "in", "irure", "occaecat" ], "friends": [ { "id": 0, "name": "Hardy Hutchinson" }, { "id": 1, "name": "Wooten Decker" }, { "id": 2, "name": "Heath Cochran" } ], "greeting": "Hello, Shields Donaldson! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea255a3971d1e5137714", "index": 2629, "guid": "13ca04f2-8ec5-456e-a2b8-ff31b7d533db", "isActive": false, "balance": "$3,912.89", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Dora Mckay", "gender": "female", "company": "ASSISTIX", "email": "doramckay@assistix.com", "phone": "+1 (979) 558-2837", "address": "257 Powell Street, Naomi, Federated States Of Micronesia, 6242", "about": "Non adipisicing quis aute excepteur do magna voluptate consequat nulla. Voluptate sunt aliqua non ullamco aliqua mollit in proident. Exercitation mollit culpa dolore cupidatat. Id sunt non eu velit et minim aliqua et eiusmod. Et nulla reprehenderit minim non minim est ut amet ad nisi qui enim irure amet. Qui aute do consectetur officia.\r\n", "registered": "2014-09-01T15:23:04-12:00", "latitude": -3.984827, "longitude": -114.363334, "tags": [ "incididunt", "incididunt", "excepteur", "voluptate", "sunt", "amet", "esse" ], "friends": [ { "id": 0, "name": "Davidson Simpson" }, { "id": 1, "name": "Clarice Everett" }, { "id": 2, "name": "Dianne Delgado" } ], "greeting": "Hello, Dora Mckay! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2515cc3146d22819dc", "index": 2630, "guid": "07c08bfe-f81e-4885-96cd-6d3bdf0b23ca", "isActive": true, "balance": "$3,550.97", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Mercer Mcgowan", "gender": "male", "company": "ARTIQ", "email": "mercermcgowan@artiq.com", "phone": "+1 (898) 573-2095", "address": "565 Bradford Street, Virgie, Oklahoma, 8645", "about": "Reprehenderit velit adipisicing exercitation in in proident laboris sit excepteur cillum proident. Qui eu sunt in nisi velit eiusmod cupidatat ullamco non ea. Exercitation ipsum eu ullamco ad culpa. Labore amet in ea exercitation. Anim tempor culpa nulla in nulla ea est minim minim duis reprehenderit enim.\r\n", "registered": "2014-03-27T11:16:55-13:00", "latitude": -43.210684, "longitude": 127.452056, "tags": [ "labore", "et", "eu", "eiusmod", "irure", "ut", "nisi" ], "friends": [ { "id": 0, "name": "Burris Fleming" }, { "id": 1, "name": "Preston Burton" }, { "id": 2, "name": "Patel Graves" } ], "greeting": "Hello, Mercer Mcgowan! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25132fc2259750d366", "index": 2631, "guid": "949cd4e5-53f5-4b14-80c2-bf551c64295a", "isActive": true, "balance": "$1,140.95", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Bernadette Potts", "gender": "female", "company": "RENOVIZE", "email": "bernadettepotts@renovize.com", "phone": "+1 (894) 587-2556", "address": "634 Montague Street, Weogufka, Michigan, 2739", "about": "Veniam pariatur eu ex veniam et aliquip. Aliquip mollit laboris fugiat fugiat duis deserunt culpa exercitation mollit ipsum magna reprehenderit non. Sit qui do ullamco Lorem culpa labore minim enim proident officia fugiat. Culpa esse duis aliquip cupidatat sint. Quis Lorem consectetur do officia do voluptate aliquip culpa minim ea aliqua enim. Do exercitation id cupidatat reprehenderit laboris ad aute minim. Culpa non ut elit duis laborum Lorem est aliquip esse nostrud id fugiat ullamco commodo.\r\n", "registered": "2014-01-31T05:08:02-13:00", "latitude": 59.849095, "longitude": -142.761262, "tags": [ "est", "nulla", "reprehenderit", "elit", "quis", "in", "aliqua" ], "friends": [ { "id": 0, "name": "Jeanne Holland" }, { "id": 1, "name": "Kelly Hewitt" }, { "id": 2, "name": "Beth Porter" } ], "greeting": "Hello, Bernadette Potts! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2568608ad2539bdd02", "index": 2632, "guid": "142e2a03-1518-48ce-8aee-f62cee51c78a", "isActive": false, "balance": "$3,813.12", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Leanne Callahan", "gender": "female", "company": "UNCORP", "email": "leannecallahan@uncorp.com", "phone": "+1 (952) 453-3673", "address": "277 Louise Terrace, Fivepointville, Kansas, 4314", "about": "Laboris commodo proident do Lorem non laboris consectetur Lorem amet sit irure exercitation exercitation aliqua. Non sint veniam dolore et nostrud aliqua officia labore veniam consequat sit. Fugiat anim incididunt incididunt aliquip voluptate consequat aliqua sit duis nulla. Eiusmod anim est nisi cupidatat eiusmod elit veniam fugiat sint dolore esse ea incididunt excepteur. Elit exercitation nostrud enim dolore irure ad duis minim aute esse. In reprehenderit mollit excepteur qui. Dolore consectetur duis in ex magna irure incididunt.\r\n", "registered": "2014-07-10T11:38:24-12:00", "latitude": -4.506721, "longitude": -126.002068, "tags": [ "veniam", "elit", "ullamco", "labore", "adipisicing", "aliquip", "ea" ], "friends": [ { "id": 0, "name": "Jeanette Christensen" }, { "id": 1, "name": "Alexis Salazar" }, { "id": 2, "name": "Landry Emerson" } ], "greeting": "Hello, Leanne Callahan! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea250c9043cb801a7d73", "index": 2633, "guid": "e38157ed-291e-43da-a8be-1a4ddd2efdb2", "isActive": false, "balance": "$2,111.09", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Fry Velasquez", "gender": "male", "company": "ZOUNDS", "email": "fryvelasquez@zounds.com", "phone": "+1 (812) 473-3426", "address": "379 Butler Place, Boyd, South Dakota, 8050", "about": "Aliqua dolore velit id labore Lorem aliqua consequat dolore nulla deserunt eiusmod qui duis ipsum. Magna ullamco occaecat labore velit. Ipsum elit qui commodo ad cupidatat est mollit.\r\n", "registered": "2014-04-22T19:35:27-12:00", "latitude": -51.376742, "longitude": 157.828038, "tags": [ "excepteur", "commodo", "deserunt", "laborum", "Lorem", "non", "consectetur" ], "friends": [ { "id": 0, "name": "Jenna Chapman" }, { "id": 1, "name": "Mueller Jennings" }, { "id": 2, "name": "Griffith Logan" } ], "greeting": "Hello, Fry Velasquez! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea259959ec424f93d6a7", "index": 2634, "guid": "e133f6cc-1708-465a-840c-5fff25ad5cce", "isActive": false, "balance": "$2,412.51", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Chase Sloan", "gender": "male", "company": "TETAK", "email": "chasesloan@tetak.com", "phone": "+1 (955) 554-2682", "address": "121 Willoughby Avenue, Wilmington, West Virginia, 7068", "about": "Sint occaecat duis officia anim enim in. Est sunt ad ex adipisicing aute officia nisi laboris esse fugiat. Duis amet nisi ex sint magna non ea ea et deserunt magna.\r\n", "registered": "2014-09-18T02:04:00-12:00", "latitude": -26.700759, "longitude": -162.904111, "tags": [ "proident", "nostrud", "enim", "consectetur", "irure", "veniam", "laboris" ], "friends": [ { "id": 0, "name": "Kinney Lamb" }, { "id": 1, "name": "Beatrice Jensen" }, { "id": 2, "name": "Cathy Carrillo" } ], "greeting": "Hello, Chase Sloan! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25172556c1106c1d2b", "index": 2635, "guid": "dc69664c-9212-4232-ad39-0af24bff39a9", "isActive": true, "balance": "$2,281.83", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Nicholson Mccarthy", "gender": "male", "company": "QUILITY", "email": "nicholsonmccarthy@quility.com", "phone": "+1 (909) 504-3128", "address": "570 Buffalo Avenue, Cochranville, Texas, 4748", "about": "Minim occaecat fugiat incididunt consequat velit sint officia ex tempor reprehenderit nisi. Lorem aliquip ea irure consectetur. Ex dolore commodo amet velit reprehenderit eiusmod. Excepteur tempor incididunt ea incididunt Lorem occaecat dolor velit sit irure id dolor fugiat. Sunt id cillum commodo culpa ad pariatur do consequat quis do ipsum. Officia minim proident ea veniam ad fugiat commodo irure.\r\n", "registered": "2014-08-27T04:28:58-12:00", "latitude": -17.176721, "longitude": 174.830507, "tags": [ "exercitation", "anim", "ex", "minim", "aute", "occaecat", "dolor" ], "friends": [ { "id": 0, "name": "Zamora Salas" }, { "id": 1, "name": "Janie Castillo" }, { "id": 2, "name": "Henry Tanner" } ], "greeting": "Hello, Nicholson Mccarthy! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2517fd97d15bc8ae7a", "index": 2636, "guid": "dc230457-c543-4ef8-be53-c8f4b1b03813", "isActive": false, "balance": "$2,358.84", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Sophia Chase", "gender": "female", "company": "TEMORAK", "email": "sophiachase@temorak.com", "phone": "+1 (821) 564-3112", "address": "672 Boynton Place, Bend, Oregon, 7662", "about": "Consequat velit laboris do sint commodo nulla aliqua fugiat reprehenderit culpa dolor fugiat. Do ullamco ipsum adipisicing aute nulla nulla nisi incididunt. Ullamco quis exercitation tempor adipisicing exercitation reprehenderit excepteur labore commodo voluptate. Dolore consectetur fugiat magna adipisicing exercitation pariatur. Voluptate reprehenderit eu consectetur laborum labore id laboris commodo exercitation labore pariatur aliquip est amet. Aliqua nostrud elit ipsum irure magna anim Lorem commodo. Mollit consectetur adipisicing excepteur nulla do id velit excepteur voluptate qui.\r\n", "registered": "2014-04-11T07:07:46-12:00", "latitude": 60.82102, "longitude": 137.048796, "tags": [ "quis", "mollit", "sint", "non", "mollit", "duis", "nostrud" ], "friends": [ { "id": 0, "name": "Debora Suarez" }, { "id": 1, "name": "Madelyn Leonard" }, { "id": 2, "name": "Blackburn Castro" } ], "greeting": "Hello, Sophia Chase! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2521b98cff7dcad690", "index": 2637, "guid": "966b8bd3-feaa-429f-8db1-faccb5de36d4", "isActive": false, "balance": "$2,265.99", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Lynn Burks", "gender": "female", "company": "CEMENTION", "email": "lynnburks@cemention.com", "phone": "+1 (805) 411-3061", "address": "230 Dekoven Court, Welch, Nevada, 6323", "about": "Mollit est labore fugiat excepteur laborum adipisicing. Quis voluptate pariatur in ipsum ea et occaecat fugiat cupidatat sunt esse incididunt do dolor. Adipisicing ut adipisicing voluptate laboris magna id veniam pariatur mollit. Labore commodo do cupidatat cupidatat magna minim amet tempor. Magna nostrud sint in labore exercitation. Sunt magna ad aute culpa nulla commodo eiusmod irure nisi qui.\r\n", "registered": "2014-08-09T02:25:51-12:00", "latitude": 25.620534, "longitude": 35.973098, "tags": [ "eu", "eu", "do", "adipisicing", "labore", "laborum", "est" ], "friends": [ { "id": 0, "name": "Holder Perry" }, { "id": 1, "name": "Lori Hansen" }, { "id": 2, "name": "Leonard Avery" } ], "greeting": "Hello, Lynn Burks! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25d580cae6a9657b63", "index": 2638, "guid": "91e269f6-f510-473a-ba53-3a9a97aacae2", "isActive": true, "balance": "$3,235.09", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Maxine Holman", "gender": "female", "company": "PROXSOFT", "email": "maxineholman@proxsoft.com", "phone": "+1 (915) 558-2071", "address": "761 Evergreen Avenue, Norvelt, Minnesota, 9077", "about": "Ad amet aliqua veniam ipsum occaecat amet elit quis velit aliqua incididunt. Excepteur eiusmod officia ullamco nostrud non ea nostrud qui. Velit sint laborum ex pariatur labore labore ea.\r\n", "registered": "2014-06-04T12:58:07-12:00", "latitude": -25.28305, "longitude": 111.540604, "tags": [ "cillum", "nisi", "adipisicing", "aliquip", "elit", "nisi", "qui" ], "friends": [ { "id": 0, "name": "Jones Boyle" }, { "id": 1, "name": "Rena Bauer" }, { "id": 2, "name": "Jackson Avila" } ], "greeting": "Hello, Maxine Holman! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2557389bc7035d92f4", "index": 2639, "guid": "657c03cc-21de-4086-bdbb-0e62f02ca62a", "isActive": false, "balance": "$3,005.79", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "April Vazquez", "gender": "female", "company": "GEEKY", "email": "aprilvazquez@geeky.com", "phone": "+1 (992) 400-2431", "address": "803 Hart Street, Springhill, Missouri, 6706", "about": "Incididunt voluptate occaecat eiusmod laborum tempor mollit id consequat. Sunt labore esse dolore ex. Occaecat ea excepteur ut velit duis tempor tempor consectetur do deserunt nisi adipisicing. Mollit laboris labore id do proident veniam ipsum ipsum. Eiusmod amet eiusmod deserunt sunt cillum elit nisi sit ad. Lorem dolor dolor do ex in minim reprehenderit eu aliqua id do elit eu officia. Anim id Lorem incididunt duis id occaecat incididunt est nisi velit.\r\n", "registered": "2014-02-16T06:54:00-13:00", "latitude": 17.52574, "longitude": -19.886046, "tags": [ "aliqua", "enim", "commodo", "exercitation", "reprehenderit", "pariatur", "mollit" ], "friends": [ { "id": 0, "name": "Alfreda Tucker" }, { "id": 1, "name": "Mayer Swanson" }, { "id": 2, "name": "Ronda Miles" } ], "greeting": "Hello, April Vazquez! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2596406de2bb033823", "index": 2640, "guid": "c68e0c2f-261d-4f8f-a049-f09d1c781d8f", "isActive": true, "balance": "$3,716.61", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Marisa Hays", "gender": "female", "company": "FUELWORKS", "email": "marisahays@fuelworks.com", "phone": "+1 (955) 458-2936", "address": "249 Kiely Place, Lorraine, Rhode Island, 9941", "about": "Velit non amet anim consectetur in reprehenderit eiusmod adipisicing esse sint anim sunt irure. Consequat adipisicing deserunt dolor magna deserunt ea mollit velit Lorem laborum consequat. Do Lorem ea adipisicing eiusmod amet pariatur. Incididunt do consectetur Lorem non sint fugiat velit voluptate cupidatat et et. Officia duis cillum fugiat velit pariatur anim culpa cillum cupidatat id elit.\r\n", "registered": "2014-08-14T15:36:33-12:00", "latitude": 78.652708, "longitude": -130.793837, "tags": [ "nisi", "elit", "incididunt", "laboris", "fugiat", "cupidatat", "sint" ], "friends": [ { "id": 0, "name": "Paula Whitley" }, { "id": 1, "name": "Sims Stone" }, { "id": 2, "name": "Santos Villarreal" } ], "greeting": "Hello, Marisa Hays! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea252ab27cba8786f62a", "index": 2641, "guid": "b764e90b-78c8-4912-88fd-7458dd698f2f", "isActive": false, "balance": "$2,734.30", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Rosemary Howe", "gender": "female", "company": "MAROPTIC", "email": "rosemaryhowe@maroptic.com", "phone": "+1 (973) 503-2146", "address": "254 Lott Avenue, Soudan, Florida, 4007", "about": "Deserunt ullamco culpa est minim enim dolore cupidatat fugiat qui excepteur sunt est quis. Commodo irure id aliqua veniam amet tempor ipsum. Velit enim esse Lorem cillum cupidatat pariatur irure. Adipisicing nisi laborum ipsum non excepteur irure consequat ipsum elit ex id ipsum minim eiusmod. Velit aute aute proident voluptate excepteur duis officia cillum. Ut ut laborum consectetur dolore dolor ad nisi occaecat minim fugiat laboris adipisicing nostrud aute. Occaecat consectetur ex anim incididunt tempor.\r\n", "registered": "2014-06-13T11:48:03-12:00", "latitude": -59.116854, "longitude": -83.87508, "tags": [ "culpa", "occaecat", "dolor", "aliqua", "veniam", "incididunt", "do" ], "friends": [ { "id": 0, "name": "Katherine Keith" }, { "id": 1, "name": "Velez Mayo" }, { "id": 2, "name": "Haley Rosales" } ], "greeting": "Hello, Rosemary Howe! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25d4f7653a4acb1c56", "index": 2642, "guid": "8c9cf2ab-818c-4ea6-a315-67b81ded82f5", "isActive": true, "balance": "$3,495.09", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Lakeisha Mason", "gender": "female", "company": "BARKARAMA", "email": "lakeishamason@barkarama.com", "phone": "+1 (833) 499-3202", "address": "818 Brighton Avenue, Troy, North Carolina, 401", "about": "Commodo ut commodo proident nostrud sunt amet nulla velit reprehenderit et duis consectetur voluptate pariatur. Velit aliquip culpa magna minim ullamco labore ut nulla Lorem aliqua. Sint et excepteur eiusmod nulla sit deserunt veniam aliqua proident officia anim ad. Et anim aliqua et elit. Aliqua id tempor mollit exercitation exercitation est in mollit dolore occaecat. Id duis adipisicing commodo magna mollit reprehenderit fugiat laboris enim sit mollit consectetur esse.\r\n", "registered": "2014-08-14T17:27:55-12:00", "latitude": -46.400336, "longitude": -76.765176, "tags": [ "ad", "occaecat", "qui", "aliquip", "duis", "nulla", "ea" ], "friends": [ { "id": 0, "name": "Jodi Warren" }, { "id": 1, "name": "Lena Barlow" }, { "id": 2, "name": "Beulah Davis" } ], "greeting": "Hello, Lakeisha Mason! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25b947bd28e3098775", "index": 2643, "guid": "e6afdedd-c290-4998-b650-72fb2d3620be", "isActive": false, "balance": "$3,947.82", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Lana Solis", "gender": "female", "company": "BYTREX", "email": "lanasolis@bytrex.com", "phone": "+1 (906) 557-3534", "address": "897 Gain Court, Driftwood, New Hampshire, 631", "about": "Dolore quis occaecat sit do velit minim adipisicing. Amet ipsum laboris tempor Lorem. Excepteur laborum deserunt laborum eu ex qui dolore.\r\n", "registered": "2014-08-14T22:18:36-12:00", "latitude": -61.916414, "longitude": 155.598435, "tags": [ "do", "proident", "magna", "esse", "dolor", "commodo", "Lorem" ], "friends": [ { "id": 0, "name": "Mayo Riggs" }, { "id": 1, "name": "Tara Matthews" }, { "id": 2, "name": "Burke Petty" } ], "greeting": "Hello, Lana Solis! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25d1ae9def40f956be", "index": 2644, "guid": "41b02d62-36ec-4ebc-bd6c-896c7d063c3c", "isActive": true, "balance": "$2,204.97", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Huber Marshall", "gender": "male", "company": "ECRAZE", "email": "hubermarshall@ecraze.com", "phone": "+1 (881) 509-3732", "address": "949 Ocean Parkway, Frank, Arkansas, 2152", "about": "Ad dolore dolor aute dolor consequat incididunt ad occaecat reprehenderit esse consectetur proident ad minim. Deserunt cupidatat sit esse officia duis laborum laboris. Reprehenderit esse est aliqua non fugiat occaecat dolore nisi officia quis ad. Ullamco qui occaecat laborum ut cupidatat Lorem.\r\n", "registered": "2014-09-01T15:10:06-12:00", "latitude": 68.225606, "longitude": 86.473949, "tags": [ "voluptate", "magna", "nisi", "officia", "fugiat", "ullamco", "id" ], "friends": [ { "id": 0, "name": "Rowe Black" }, { "id": 1, "name": "Tyson Sykes" }, { "id": 2, "name": "Ferrell Becker" } ], "greeting": "Hello, Huber Marshall! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea251d3598478581fc7d", "index": 2645, "guid": "7aa54955-06f4-4168-8b33-7d211ab1abc0", "isActive": false, "balance": "$3,217.24", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Gilliam Cox", "gender": "male", "company": "CORPULSE", "email": "gilliamcox@corpulse.com", "phone": "+1 (841) 477-2451", "address": "168 Commercial Street, Clara, Iowa, 2008", "about": "Laboris anim fugiat et sit nisi consectetur ad proident ullamco eu nisi ipsum. Mollit dolor culpa ea sint anim elit laboris ullamco. Id aliqua anim laboris sint quis aliqua ex sit.\r\n", "registered": "2014-06-27T13:56:55-12:00", "latitude": -26.459635, "longitude": -0.929884, "tags": [ "cupidatat", "reprehenderit", "magna", "in", "adipisicing", "amet", "incididunt" ], "friends": [ { "id": 0, "name": "Clay Murphy" }, { "id": 1, "name": "Angel Kim" }, { "id": 2, "name": "Wall Stafford" } ], "greeting": "Hello, Gilliam Cox! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25836a3d1d77a7e180", "index": 2646, "guid": "6ef4ef51-4ab2-43ee-981f-d32522d4003d", "isActive": false, "balance": "$1,222.14", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Morrison Daniel", "gender": "male", "company": "NUTRALAB", "email": "morrisondaniel@nutralab.com", "phone": "+1 (802) 435-3874", "address": "729 Colby Court, Dunlo, Nebraska, 5220", "about": "Sunt dolore consectetur aute culpa Lorem nulla. In non pariatur culpa proident aute cillum reprehenderit ullamco aliqua fugiat occaecat. Duis minim non nulla exercitation voluptate dolore ut laborum aliqua nulla eiusmod quis adipisicing. Ut nostrud consectetur anim et voluptate fugiat ad cupidatat. Anim quis aute tempor exercitation deserunt elit aliquip dolor sit.\r\n", "registered": "2014-02-15T05:00:38-13:00", "latitude": -16.17762, "longitude": 178.609609, "tags": [ "ea", "minim", "eu", "nisi", "consequat", "cupidatat", "commodo" ], "friends": [ { "id": 0, "name": "Bowman Hudson" }, { "id": 1, "name": "Flossie Snow" }, { "id": 2, "name": "Wright Patrick" } ], "greeting": "Hello, Morrison Daniel! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea256f97174c9c68813d", "index": 2647, "guid": "7b048eee-a82f-43dd-a70b-72b2b5a11aeb", "isActive": false, "balance": "$3,792.66", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Oneil Padilla", "gender": "male", "company": "PHORMULA", "email": "oneilpadilla@phormula.com", "phone": "+1 (952) 408-3759", "address": "373 Menahan Street, Coinjock, District Of Columbia, 7938", "about": "Consequat occaecat commodo labore aliquip laborum deserunt. Tempor esse in ex mollit. Ut sit qui Lorem ea in esse. Laboris non nisi do qui. Anim tempor pariatur velit non reprehenderit voluptate ullamco ex pariatur. Laboris aliqua sunt ut commodo adipisicing veniam consectetur duis tempor ex in officia.\r\n", "registered": "2014-08-09T19:23:29-12:00", "latitude": -64.590696, "longitude": 47.243348, "tags": [ "ex", "pariatur", "minim", "qui", "aliqua", "occaecat", "mollit" ], "friends": [ { "id": 0, "name": "Pierce Melendez" }, { "id": 1, "name": "Hazel Vasquez" }, { "id": 2, "name": "Anderson Tyler" } ], "greeting": "Hello, Oneil Padilla! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2515ccf153e38a05a8", "index": 2648, "guid": "9735b235-53f0-4b78-bfb4-96e498612954", "isActive": true, "balance": "$2,845.46", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Tisha Mooney", "gender": "female", "company": "SCENTY", "email": "tishamooney@scenty.com", "phone": "+1 (899) 482-3726", "address": "185 Cornelia Street, Orin, New Jersey, 1686", "about": "Nulla irure duis aliqua sit. Incididunt officia Lorem adipisicing sint aliqua do officia id amet elit veniam eu dolore in. Tempor fugiat occaecat id ut consectetur nostrud voluptate reprehenderit amet. Pariatur cupidatat esse laborum dolore consequat aliqua elit qui esse anim enim ea.\r\n", "registered": "2014-07-08T22:11:39-12:00", "latitude": -28.851604, "longitude": 55.347974, "tags": [ "occaecat", "aliqua", "est", "sunt", "ex", "fugiat", "exercitation" ], "friends": [ { "id": 0, "name": "Pearson Garrison" }, { "id": 1, "name": "Deena Best" }, { "id": 2, "name": "Roxie Mccormick" } ], "greeting": "Hello, Tisha Mooney! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea257dcacaf41638c88f", "index": 2649, "guid": "5cc6ff8d-2d6f-4580-8387-605ca55f63e3", "isActive": false, "balance": "$2,512.47", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Verna Cross", "gender": "female", "company": "CAPSCREEN", "email": "vernacross@capscreen.com", "phone": "+1 (886) 401-2855", "address": "932 Frost Street, Buxton, Palau, 3792", "about": "Aute amet irure irure non labore ipsum ullamco culpa aliquip nisi tempor Lorem. Adipisicing esse excepteur veniam sint ullamco minim eu labore elit. Elit aliquip enim quis nulla ea excepteur. Eiusmod ullamco excepteur labore dolore. Ipsum ullamco dolor ipsum nostrud.\r\n", "registered": "2014-06-01T07:36:41-12:00", "latitude": 55.599322, "longitude": 140.427968, "tags": [ "labore", "adipisicing", "duis", "culpa", "veniam", "tempor", "elit" ], "friends": [ { "id": 0, "name": "Cortez Albert" }, { "id": 1, "name": "Matthews Newton" }, { "id": 2, "name": "Gena Kemp" } ], "greeting": "Hello, Verna Cross! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25ab81aa9c8bb3a774", "index": 2650, "guid": "b57868ff-d408-400c-b9d6-43d538e02860", "isActive": true, "balance": "$3,536.94", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Padilla Nelson", "gender": "male", "company": "KOFFEE", "email": "padillanelson@koffee.com", "phone": "+1 (935) 595-3502", "address": "818 Kosciusko Street, Shawmut, Puerto Rico, 8327", "about": "Dolor officia eiusmod officia cillum exercitation reprehenderit mollit cillum et id elit proident laborum amet. Ullamco eu nostrud elit aliquip eiusmod culpa aute tempor id consectetur deserunt irure tempor. Cupidatat fugiat incididunt laboris ad laborum eiusmod.\r\n", "registered": "2014-07-08T04:03:43-12:00", "latitude": -53.181513, "longitude": 119.252545, "tags": [ "ipsum", "eu", "est", "id", "eiusmod", "dolore", "consequat" ], "friends": [ { "id": 0, "name": "Snow Duke" }, { "id": 1, "name": "Candice Perez" }, { "id": 2, "name": "Saunders Hoffman" } ], "greeting": "Hello, Padilla Nelson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25b6041fa8d635cfe3", "index": 2651, "guid": "000d53fa-6bc6-4d9d-a9aa-27edef5d9348", "isActive": true, "balance": "$2,945.13", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Effie Waller", "gender": "female", "company": "XIXAN", "email": "effiewaller@xixan.com", "phone": "+1 (823) 434-3549", "address": "171 Clara Street, Boonville, California, 5946", "about": "Cupidatat excepteur laborum amet officia occaecat. Duis cupidatat laboris officia ut deserunt irure amet eiusmod voluptate eiusmod. Dolor officia dolor aute ad nostrud occaecat in non sint magna incididunt tempor. Minim dolor cupidatat amet Lorem ipsum eiusmod proident cupidatat. Nisi mollit ea consectetur incididunt incididunt dolor velit duis occaecat esse non quis labore. Culpa consectetur aliqua dolor occaecat excepteur enim aliquip pariatur est consectetur ut sunt.\r\n", "registered": "2014-03-25T09:51:11-13:00", "latitude": 49.051483, "longitude": -143.02259, "tags": [ "veniam", "Lorem", "ex", "in", "exercitation", "adipisicing", "Lorem" ], "friends": [ { "id": 0, "name": "Zimmerman Bowman" }, { "id": 1, "name": "Cook Morales" }, { "id": 2, "name": "Marsh Mejia" } ], "greeting": "Hello, Effie Waller! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea251a1f1aa73c40499f", "index": 2652, "guid": "018513ce-5ad1-4e8b-83f7-fdce9642336b", "isActive": false, "balance": "$1,740.58", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Burnett Hurst", "gender": "male", "company": "ACCUPHARM", "email": "burnetthurst@accupharm.com", "phone": "+1 (972) 502-2456", "address": "810 Wyckoff Street, Chicopee, Vermont, 546", "about": "Anim laborum amet elit mollit sit officia cillum. Aliquip cupidatat incididunt sit fugiat adipisicing irure tempor aliqua anim. Nisi deserunt duis ullamco exercitation. Nulla mollit non labore commodo et veniam non veniam culpa consectetur ex deserunt eiusmod ipsum.\r\n", "registered": "2014-03-28T21:47:27-13:00", "latitude": -86.966975, "longitude": 148.586365, "tags": [ "eu", "officia", "et", "incididunt", "ullamco", "velit", "nisi" ], "friends": [ { "id": 0, "name": "Farrell Kennedy" }, { "id": 1, "name": "Edwards Farrell" }, { "id": 2, "name": "Day Doyle" } ], "greeting": "Hello, Burnett Hurst! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea252ce368a39171c3c4", "index": 2653, "guid": "42be7aa8-cb53-4c2b-8408-8c7147371648", "isActive": true, "balance": "$2,284.26", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Mcgowan Hoover", "gender": "male", "company": "URBANSHEE", "email": "mcgowanhoover@urbanshee.com", "phone": "+1 (901) 548-2743", "address": "609 Tampa Court, Shrewsbury, Indiana, 8827", "about": "Velit irure pariatur sunt elit. Duis minim non aliqua officia quis sint excepteur adipisicing do. Tempor exercitation magna officia et tempor laboris sit ea. Laboris in reprehenderit dolor labore reprehenderit nulla eu id cupidatat.\r\n", "registered": "2014-06-04T23:31:16-12:00", "latitude": 40.013205, "longitude": 24.684152, "tags": [ "exercitation", "anim", "ea", "culpa", "sit", "sit", "amet" ], "friends": [ { "id": 0, "name": "Brittany Dalton" }, { "id": 1, "name": "Tamara Mcdowell" }, { "id": 2, "name": "Erika Marsh" } ], "greeting": "Hello, Mcgowan Hoover! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25511948797d2b65d6", "index": 2654, "guid": "bb300507-af2c-4b73-af6e-634743f3d4b8", "isActive": true, "balance": "$2,919.21", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Dawn Juarez", "gender": "female", "company": "TRANSLINK", "email": "dawnjuarez@translink.com", "phone": "+1 (848) 519-3559", "address": "997 Troy Avenue, Sugartown, Illinois, 8960", "about": "Sit exercitation Lorem ut commodo occaecat nisi proident tempor laborum laborum. Et dolor voluptate veniam magna Lorem commodo do duis duis nisi. Adipisicing Lorem eu exercitation voluptate. Mollit consectetur amet id nisi in.\r\n", "registered": "2014-09-01T08:13:45-12:00", "latitude": -80.652114, "longitude": -146.523575, "tags": [ "consequat", "eiusmod", "enim", "nisi", "amet", "enim", "consequat" ], "friends": [ { "id": 0, "name": "Alejandra Dillard" }, { "id": 1, "name": "Beck Lee" }, { "id": 2, "name": "Lilly Mayer" } ], "greeting": "Hello, Dawn Juarez! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea253e496055fcb3dfe9", "index": 2655, "guid": "5ccc8682-c60f-4b7c-8ecf-96e5fbbd6b6c", "isActive": false, "balance": "$3,744.20", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Annie Beard", "gender": "female", "company": "MULTIFLEX", "email": "anniebeard@multiflex.com", "phone": "+1 (827) 483-2442", "address": "683 Ridgewood Place, Elbert, South Carolina, 9605", "about": "Fugiat non aute culpa excepteur ea fugiat id. Dolor et eu enim exercitation. Mollit do labore tempor pariatur cupidatat. Minim minim do sit consequat adipisicing reprehenderit reprehenderit laborum fugiat sit nostrud excepteur elit. Tempor aute reprehenderit sunt ullamco sit aliqua nisi dolor qui proident. Sint et cupidatat ullamco velit enim quis dolore minim reprehenderit nisi.\r\n", "registered": "2014-06-03T19:34:40-12:00", "latitude": 10.517279, "longitude": -79.92443, "tags": [ "officia", "irure", "sit", "enim", "cupidatat", "aliquip", "esse" ], "friends": [ { "id": 0, "name": "Blanca Randolph" }, { "id": 1, "name": "Vasquez Rocha" }, { "id": 2, "name": "Tameka Owen" } ], "greeting": "Hello, Annie Beard! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25fb8f1448af48f759", "index": 2656, "guid": "5df38ca8-4d42-49e8-8fee-14fc9ee48968", "isActive": false, "balance": "$1,303.87", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Jerry Justice", "gender": "female", "company": "DATAGEN", "email": "jerryjustice@datagen.com", "phone": "+1 (861) 588-2007", "address": "927 Narrows Avenue, Groton, American Samoa, 8422", "about": "Proident proident voluptate dolore nulla mollit fugiat. Ex mollit id cillum veniam fugiat non. Fugiat exercitation do velit amet elit. Lorem do sint ex nulla cupidatat sit dolore. Pariatur ad cupidatat pariatur laboris sit nisi nisi Lorem voluptate amet.\r\n", "registered": "2014-07-28T00:54:02-12:00", "latitude": 27.868892, "longitude": 59.46008, "tags": [ "mollit", "occaecat", "ex", "excepteur", "et", "incididunt", "exercitation" ], "friends": [ { "id": 0, "name": "Morgan Walters" }, { "id": 1, "name": "Hicks Moon" }, { "id": 2, "name": "Hopkins Byers" } ], "greeting": "Hello, Jerry Justice! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c068fdb4514829a1", "index": 2657, "guid": "e07a8d0e-cf61-4487-92a7-b3622ea95661", "isActive": true, "balance": "$1,899.95", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Lynne Mcdaniel", "gender": "female", "company": "PYRAMI", "email": "lynnemcdaniel@pyrami.com", "phone": "+1 (866) 515-3928", "address": "222 Conklin Avenue, Marne, Delaware, 2696", "about": "Veniam ex ullamco reprehenderit elit enim reprehenderit occaecat laborum cupidatat culpa et cupidatat aute excepteur. Non dolore officia exercitation deserunt. Elit ad deserunt consequat Lorem Lorem veniam ea nostrud.\r\n", "registered": "2014-04-02T11:01:46-13:00", "latitude": -56.385658, "longitude": -56.772565, "tags": [ "Lorem", "occaecat", "ut", "et", "aliqua", "esse", "deserunt" ], "friends": [ { "id": 0, "name": "Kaufman Pearson" }, { "id": 1, "name": "Deloris Mcintosh" }, { "id": 2, "name": "Shanna Robertson" } ], "greeting": "Hello, Lynne Mcdaniel! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25122e16d24a6abd86", "index": 2658, "guid": "abb52817-fdec-4dee-b39e-b914c287832a", "isActive": false, "balance": "$1,942.80", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Marla Sherman", "gender": "female", "company": "COMTRAK", "email": "marlasherman@comtrak.com", "phone": "+1 (832) 542-3364", "address": "514 Bassett Avenue, Dixonville, Pennsylvania, 5411", "about": "Voluptate non dolore consequat nulla in ea. Eiusmod exercitation voluptate ex reprehenderit aliqua ad ex. Ipsum consequat mollit consequat reprehenderit cupidatat enim. Amet nulla anim ex nostrud qui consequat do pariatur magna et excepteur. Ex reprehenderit dolor occaecat in enim pariatur nulla quis culpa ipsum nulla. Ex consectetur consectetur dolor in non proident officia excepteur nisi. Exercitation labore laboris incididunt excepteur consequat in mollit.\r\n", "registered": "2014-05-17T14:54:49-12:00", "latitude": -79.355498, "longitude": 30.908045, "tags": [ "culpa", "nisi", "dolore", "esse", "laboris", "aliqua", "esse" ], "friends": [ { "id": 0, "name": "Robbie Gillespie" }, { "id": 1, "name": "Rosa Glass" }, { "id": 2, "name": "Deanna Wells" } ], "greeting": "Hello, Marla Sherman! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea255b2ba3191014c611", "index": 2659, "guid": "422c6c0a-4511-4275-8927-194637abbbb5", "isActive": true, "balance": "$2,452.83", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Skinner Love", "gender": "male", "company": "PAPRIKUT", "email": "skinnerlove@paprikut.com", "phone": "+1 (835) 465-2451", "address": "862 Little Street, Makena, Georgia, 167", "about": "Quis laborum deserunt mollit esse magna non commodo labore labore ullamco eu cupidatat. Nostrud id occaecat quis cupidatat dolor fugiat qui non est. Tempor voluptate voluptate ipsum ea reprehenderit adipisicing laborum mollit.\r\n", "registered": "2014-04-27T04:20:49-12:00", "latitude": -48.846586, "longitude": 86.31408, "tags": [ "excepteur", "est", "adipisicing", "sunt", "cupidatat", "labore", "magna" ], "friends": [ { "id": 0, "name": "Tonya Owens" }, { "id": 1, "name": "Sharlene Levy" }, { "id": 2, "name": "Hodges Dillon" } ], "greeting": "Hello, Skinner Love! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2545abc1d6bd9c259a", "index": 2660, "guid": "27b8d5ce-5e10-4b97-abd4-d687e4d0d397", "isActive": true, "balance": "$1,207.98", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Claudette Williamson", "gender": "female", "company": "KINETICUT", "email": "claudettewilliamson@kineticut.com", "phone": "+1 (855) 567-3561", "address": "148 Rock Street, Ironton, North Dakota, 6516", "about": "Commodo adipisicing et elit nulla mollit tempor deserunt ullamco dolore proident ad tempor adipisicing laboris. Incididunt enim ex eu in excepteur duis nulla in incididunt proident nulla. Officia quis sint quis do nostrud. Nisi non sint aliquip quis consectetur tempor. Proident exercitation ea eiusmod sunt exercitation amet veniam ullamco. Irure aute aute velit qui magna enim quis sunt dolor fugiat pariatur enim.\r\n", "registered": "2014-05-21T18:39:20-12:00", "latitude": 47.823107, "longitude": -90.047185, "tags": [ "velit", "qui", "reprehenderit", "nulla", "cillum", "aute", "in" ], "friends": [ { "id": 0, "name": "Kaitlin Ware" }, { "id": 1, "name": "Mcmahon Alston" }, { "id": 2, "name": "Kimberley Nieves" } ], "greeting": "Hello, Claudette Williamson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2500be84377e1d613c", "index": 2661, "guid": "c1f529e5-aaea-4cf5-87a8-b80e06d75a3c", "isActive": false, "balance": "$3,210.08", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Aguirre Deleon", "gender": "male", "company": "PERKLE", "email": "aguirredeleon@perkle.com", "phone": "+1 (997) 518-2968", "address": "674 Perry Place, Blende, Louisiana, 4284", "about": "Eu amet nostrud culpa labore. Occaecat sint eu anim dolore. Exercitation cupidatat est cillum qui in amet occaecat non incididunt culpa excepteur excepteur veniam quis. Consectetur ex elit ad exercitation magna laboris enim dolor magna non quis occaecat.\r\n", "registered": "2014-08-07T20:08:27-12:00", "latitude": 23.25829, "longitude": 111.627099, "tags": [ "minim", "tempor", "excepteur", "voluptate", "culpa", "Lorem", "culpa" ], "friends": [ { "id": 0, "name": "Brittney Parrish" }, { "id": 1, "name": "Ofelia Farley" }, { "id": 2, "name": "Katelyn Pugh" } ], "greeting": "Hello, Aguirre Deleon! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea259d920f0e400dacbd", "index": 2662, "guid": "b74a8b17-2362-4b8a-9eab-e6181a0e459c", "isActive": true, "balance": "$3,498.73", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Alexandria Barber", "gender": "female", "company": "XYMONK", "email": "alexandriabarber@xymonk.com", "phone": "+1 (925) 439-2589", "address": "609 Wogan Terrace, Babb, Northern Mariana Islands, 4712", "about": "Officia non elit sit esse. Minim ex elit nulla officia in eiusmod laboris cillum officia enim ad. Labore quis laboris eu aliquip aliqua quis mollit tempor tempor irure.\r\n", "registered": "2014-06-14T02:29:13-12:00", "latitude": -58.61227, "longitude": -74.725587, "tags": [ "ex", "qui", "et", "mollit", "tempor", "veniam", "reprehenderit" ], "friends": [ { "id": 0, "name": "Montgomery Hayes" }, { "id": 1, "name": "Monique Pennington" }, { "id": 2, "name": "Andrea May" } ], "greeting": "Hello, Alexandria Barber! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25df9f677f3e5277f6", "index": 2663, "guid": "a075e4f9-c650-48d8-8114-2b2aa7f55a61", "isActive": true, "balance": "$1,334.10", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Riggs Hyde", "gender": "male", "company": "ZEROLOGY", "email": "riggshyde@zerology.com", "phone": "+1 (865) 507-2394", "address": "139 Clove Road, Greenfields, Colorado, 3157", "about": "Aliqua commodo do ex sint. Labore fugiat ullamco et ea labore non irure laborum cillum excepteur. Officia adipisicing sunt et sit cupidatat aute ea veniam. Enim velit nostrud aliqua eiusmod cupidatat occaecat dolor ipsum. Eu ullamco eiusmod proident qui culpa laborum ea.\r\n", "registered": "2014-09-10T23:53:45-12:00", "latitude": 17.237953, "longitude": 59.053718, "tags": [ "adipisicing", "nulla", "sit", "do", "commodo", "magna", "officia" ], "friends": [ { "id": 0, "name": "Christa Nunez" }, { "id": 1, "name": "Alicia Hodge" }, { "id": 2, "name": "Sykes Dominguez" } ], "greeting": "Hello, Riggs Hyde! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea254ee66b6a74db07a2", "index": 2664, "guid": "448ec4a0-9a1a-40b7-8d1b-afd587561185", "isActive": true, "balance": "$2,057.48", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Mary Mitchell", "gender": "female", "company": "MIXERS", "email": "marymitchell@mixers.com", "phone": "+1 (910) 519-3480", "address": "504 Ridge Boulevard, Grantville, Idaho, 2306", "about": "Sunt ex in occaecat veniam magna enim aute do sunt nostrud nostrud sunt exercitation. Anim velit Lorem anim aliqua velit fugiat velit dolor elit incididunt eiusmod deserunt amet. Sit occaecat aute mollit Lorem aliquip anim dolor veniam dolor amet. Pariatur est veniam ipsum consequat esse. Ut minim adipisicing sint pariatur adipisicing nostrud cupidatat do do veniam. Deserunt adipisicing aliquip non elit nisi aliqua cillum sit dolor deserunt culpa laboris cupidatat. Non reprehenderit consequat sunt cillum laborum amet.\r\n", "registered": "2014-08-27T21:16:06-12:00", "latitude": -49.814165, "longitude": 80.10924, "tags": [ "minim", "exercitation", "ex", "magna", "duis", "et", "Lorem" ], "friends": [ { "id": 0, "name": "Tammie Rogers" }, { "id": 1, "name": "Houston Odom" }, { "id": 2, "name": "Rene Brock" } ], "greeting": "Hello, Mary Mitchell! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea252da4f2e4fcad9119", "index": 2665, "guid": "50e84cc2-739f-4299-916e-40c0ab72e5bd", "isActive": true, "balance": "$3,794.15", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Kane Dixon", "gender": "male", "company": "QUOTEZART", "email": "kanedixon@quotezart.com", "phone": "+1 (801) 539-3419", "address": "284 Ryerson Street, Lafferty, Marshall Islands, 1378", "about": "Occaecat Lorem tempor velit minim culpa ea incididunt aliqua cupidatat nostrud aliquip. Mollit duis tempor qui exercitation laborum ad. Qui ut cillum deserunt exercitation et ea deserunt ea sint consectetur.\r\n", "registered": "2014-01-30T16:17:34-13:00", "latitude": -83.689054, "longitude": -3.76404, "tags": [ "do", "labore", "quis", "Lorem", "cupidatat", "amet", "nisi" ], "friends": [ { "id": 0, "name": "Natalia Barnes" }, { "id": 1, "name": "Lott Massey" }, { "id": 2, "name": "Osborne Morton" } ], "greeting": "Hello, Kane Dixon! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2575de93b5b0a432c9", "index": 2666, "guid": "c629c4e3-f9b2-4337-9e6b-f51a34e37cd6", "isActive": false, "balance": "$3,448.88", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Cecilia Landry", "gender": "female", "company": "NURALI", "email": "cecilialandry@nurali.com", "phone": "+1 (879) 499-3010", "address": "286 Thatford Avenue, Klagetoh, New York, 1829", "about": "Adipisicing id reprehenderit dolore occaecat elit pariatur. Labore id cillum labore elit labore et ea do duis. In ut nulla eiusmod consectetur voluptate eiusmod velit qui consequat ut sunt excepteur velit. Ut voluptate aliquip in aliquip amet magna. Non eiusmod aute consectetur cupidatat est aute officia et consectetur velit eiusmod non. Id mollit enim aute Lorem. Exercitation voluptate labore excepteur velit.\r\n", "registered": "2014-08-22T09:47:15-12:00", "latitude": 50.922976, "longitude": -129.885426, "tags": [ "ullamco", "reprehenderit", "excepteur", "id", "aute", "quis", "veniam" ], "friends": [ { "id": 0, "name": "Jacqueline Garcia" }, { "id": 1, "name": "Rice Bowers" }, { "id": 2, "name": "Marcy Whitaker" } ], "greeting": "Hello, Cecilia Landry! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25dd99d64756e82fe9", "index": 2667, "guid": "03f7420f-eef0-4072-814a-14b84983ef8a", "isActive": true, "balance": "$3,276.92", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Heidi Gordon", "gender": "female", "company": "QUINTITY", "email": "heidigordon@quintity.com", "phone": "+1 (932) 438-2504", "address": "698 Tillary Street, Movico, Guam, 5349", "about": "Enim Lorem voluptate tempor aliqua voluptate sunt do nulla ad velit culpa qui et. Esse exercitation tempor Lorem magna veniam. Dolore consectetur labore aliqua duis sint excepteur irure qui eiusmod pariatur. Eiusmod ut aute laborum velit dolore.\r\n", "registered": "2014-09-18T19:39:06-12:00", "latitude": 39.048166, "longitude": 112.486601, "tags": [ "consequat", "pariatur", "ullamco", "labore", "eiusmod", "ut", "incididunt" ], "friends": [ { "id": 0, "name": "Brianna Downs" }, { "id": 1, "name": "Shelby Rose" }, { "id": 2, "name": "Dawson Blackwell" } ], "greeting": "Hello, Heidi Gordon! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25bbb8825dd0669b6a", "index": 2668, "guid": "ae91fdeb-ebdf-4ce5-ba0b-91fabf3c874b", "isActive": true, "balance": "$3,209.04", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Reilly Steele", "gender": "male", "company": "GEEKWAGON", "email": "reillysteele@geekwagon.com", "phone": "+1 (882) 414-2536", "address": "752 Cleveland Street, Chaparrito, Virgin Islands, 9296", "about": "Consectetur tempor tempor adipisicing elit qui et amet magna commodo dolore nulla sit nulla. Exercitation adipisicing ea enim duis aute laborum. Laborum et sunt anim deserunt deserunt quis nostrud et ea magna eu. Sit ad labore ipsum ut. Sint tempor commodo duis veniam et commodo consequat consectetur voluptate in magna voluptate ad eu. Commodo labore sunt dolore nulla commodo ea ex in sit aute adipisicing elit.\r\n", "registered": "2014-02-02T05:32:42-13:00", "latitude": 43.81459, "longitude": -60.509281, "tags": [ "culpa", "commodo", "commodo", "esse", "officia", "cupidatat", "ea" ], "friends": [ { "id": 0, "name": "Oneill Dorsey" }, { "id": 1, "name": "Calderon Burch" }, { "id": 2, "name": "Lindsey Miller" } ], "greeting": "Hello, Reilly Steele! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25b29b17502a382c9e", "index": 2669, "guid": "414e4edc-c404-4727-b9ce-d67ed8a5d0a9", "isActive": false, "balance": "$3,723.99", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Gilmore Gross", "gender": "male", "company": "ZIALACTIC", "email": "gilmoregross@zialactic.com", "phone": "+1 (942) 527-3251", "address": "735 Neptune Avenue, Coventry, Massachusetts, 7320", "about": "Do ipsum pariatur laboris enim eu aliquip. Consequat esse consequat dolor aute id. Adipisicing occaecat in sunt non excepteur pariatur sit.\r\n", "registered": "2014-08-18T16:32:48-12:00", "latitude": -76.334868, "longitude": -39.684281, "tags": [ "adipisicing", "consequat", "ut", "nostrud", "cupidatat", "aliqua", "ipsum" ], "friends": [ { "id": 0, "name": "Cathryn Rowe" }, { "id": 1, "name": "Casey Fitzgerald" }, { "id": 2, "name": "Candace Burris" } ], "greeting": "Hello, Gilmore Gross! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea257400430f1644bbbd", "index": 2670, "guid": "35d6b95f-1083-4ac0-9ba2-629bd4f6fac2", "isActive": true, "balance": "$3,322.98", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Boone Case", "gender": "male", "company": "ROCKABYE", "email": "boonecase@rockabye.com", "phone": "+1 (968) 446-3257", "address": "646 Lyme Avenue, Enlow, Utah, 3046", "about": "Consequat nulla proident in do duis aliquip consequat minim. Non deserunt sint ex velit amet incididunt cillum commodo. Consectetur enim dolore deserunt quis anim culpa irure duis. Mollit eu enim adipisicing magna sit laborum nisi amet duis dolor magna.\r\n", "registered": "2014-03-03T23:34:26-13:00", "latitude": 60.353131, "longitude": -121.83875, "tags": [ "commodo", "ullamco", "ullamco", "Lorem", "labore", "magna", "quis" ], "friends": [ { "id": 0, "name": "Daisy Hines" }, { "id": 1, "name": "Campbell Contreras" }, { "id": 2, "name": "Moody Chen" } ], "greeting": "Hello, Boone Case! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea254d4bc2aa5edf0a2f", "index": 2671, "guid": "edffd447-c8f7-4be5-be61-9f947daf1ac9", "isActive": true, "balance": "$1,020.94", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Walker Bean", "gender": "male", "company": "KYAGORO", "email": "walkerbean@kyagoro.com", "phone": "+1 (866) 465-3252", "address": "959 Clark Street, Welda, Montana, 3053", "about": "Culpa incididunt commodo veniam esse non duis. Nostrud exercitation ullamco sint non velit sit est aliqua aliqua in. Eiusmod ad voluptate proident cillum eiusmod cillum. In officia ut proident sunt mollit dolor. In qui sunt non cupidatat est elit in. Nulla elit mollit excepteur adipisicing adipisicing amet est qui. Laborum veniam ullamco proident duis proident nisi exercitation est laborum enim consectetur.\r\n", "registered": "2014-06-10T05:34:30-12:00", "latitude": 51.210846, "longitude": -57.990525, "tags": [ "consequat", "pariatur", "duis", "et", "cillum", "excepteur", "exercitation" ], "friends": [ { "id": 0, "name": "Mayra Burns" }, { "id": 1, "name": "Hayden Bruce" }, { "id": 2, "name": "Marisol Gilliam" } ], "greeting": "Hello, Walker Bean! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea250c829fe7d46522e0", "index": 2672, "guid": "5210e3f1-1b6a-4e54-beca-7d726cd6ffe6", "isActive": false, "balance": "$3,511.10", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Linda Weiss", "gender": "female", "company": "EXTRAGENE", "email": "lindaweiss@extragene.com", "phone": "+1 (912) 579-3497", "address": "646 Everit Street, Elwood, Wisconsin, 6905", "about": "Dolor labore laborum ad in. Consequat laboris officia veniam ullamco tempor ut ex non. Dolore mollit do dolore cupidatat commodo sint cillum proident nostrud. Est consequat excepteur commodo cupidatat occaecat consequat proident laborum exercitation minim cupidatat velit laborum. Ullamco qui reprehenderit ullamco amet non deserunt irure magna culpa nulla reprehenderit duis adipisicing aliqua. Ad culpa esse excepteur anim duis ipsum qui irure duis incididunt cupidatat fugiat.\r\n", "registered": "2014-01-13T12:37:24-13:00", "latitude": -14.288458, "longitude": 105.350377, "tags": [ "sunt", "consequat", "proident", "est", "proident", "nisi", "excepteur" ], "friends": [ { "id": 0, "name": "Sutton Sharp" }, { "id": 1, "name": "Benton Rivera" }, { "id": 2, "name": "Joy Hobbs" } ], "greeting": "Hello, Linda Weiss! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2534a8a2fd693a0869", "index": 2673, "guid": "96f30519-876a-4c52-9821-fba4c18f05a5", "isActive": false, "balance": "$2,298.89", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Harvey Parker", "gender": "male", "company": "IZZBY", "email": "harveyparker@izzby.com", "phone": "+1 (989) 403-2443", "address": "989 Glenwood Road, Belfair, Maine, 4029", "about": "Sit amet consectetur adipisicing adipisicing adipisicing sunt duis elit. Consectetur consequat excepteur et dolor sit sint mollit commodo id cupidatat enim aute. Eiusmod ex commodo anim qui nulla eu. Adipisicing occaecat fugiat voluptate sint dolor tempor adipisicing fugiat.\r\n", "registered": "2014-08-19T19:05:49-12:00", "latitude": -74.579842, "longitude": 21.371996, "tags": [ "consectetur", "nulla", "officia", "consectetur", "nulla", "excepteur", "nulla" ], "friends": [ { "id": 0, "name": "Melissa West" }, { "id": 1, "name": "Craig Peck" }, { "id": 2, "name": "Hope Hogan" } ], "greeting": "Hello, Harvey Parker! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25bff49ccf6d825dcb", "index": 2674, "guid": "65d61b45-e783-47f4-a939-aa3c3a03877c", "isActive": false, "balance": "$1,077.69", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Rae Coffey", "gender": "female", "company": "JIMBIES", "email": "raecoffey@jimbies.com", "phone": "+1 (800) 480-2388", "address": "879 Legion Street, Freetown, Virginia, 2378", "about": "Do do voluptate voluptate voluptate. Consequat sit sint elit excepteur est aliqua Lorem sunt nisi magna laborum. Et deserunt ipsum est enim sunt ullamco dolor voluptate.\r\n", "registered": "2014-05-03T08:17:19-12:00", "latitude": -16.097596, "longitude": -20.937519, "tags": [ "nulla", "laborum", "pariatur", "ea", "adipisicing", "consectetur", "eu" ], "friends": [ { "id": 0, "name": "Miller Snider" }, { "id": 1, "name": "Richards Flores" }, { "id": 2, "name": "Kelli Harrell" } ], "greeting": "Hello, Rae Coffey! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25d05ffab808bf6306", "index": 2675, "guid": "1bc7b753-9a14-4180-b9a7-fba95ac8688c", "isActive": false, "balance": "$3,607.64", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Odom Henson", "gender": "male", "company": "EXODOC", "email": "odomhenson@exodoc.com", "phone": "+1 (903) 489-2664", "address": "795 Harden Street, Darbydale, Kentucky, 3345", "about": "Fugiat consequat non excepteur laborum excepteur laborum deserunt Lorem. Nulla ut magna officia irure excepteur cupidatat amet. Minim ad sint eu elit sit occaecat incididunt id irure ut dolor. Reprehenderit proident pariatur Lorem est in.\r\n", "registered": "2014-08-19T17:44:24-12:00", "latitude": -56.029396, "longitude": 84.81595, "tags": [ "laboris", "culpa", "elit", "id", "non", "aliquip", "aute" ], "friends": [ { "id": 0, "name": "Watson Booth" }, { "id": 1, "name": "Georgette Willis" }, { "id": 2, "name": "Fischer Carpenter" } ], "greeting": "Hello, Odom Henson! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2569ed506b33486f43", "index": 2676, "guid": "11843d60-374f-4f9b-a5a1-a2384e6e1eef", "isActive": true, "balance": "$2,712.36", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Potter Pena", "gender": "male", "company": "OVERPLEX", "email": "potterpena@overplex.com", "phone": "+1 (928) 549-3235", "address": "375 Front Street, Riner, Connecticut, 9183", "about": "Anim in veniam elit labore amet commodo aliqua. Nulla incididunt ex sit nulla dolore sunt voluptate officia. Laboris proident culpa deserunt eu tempor ex culpa dolor occaecat proident magna enim ullamco officia.\r\n", "registered": "2014-02-23T19:19:57-13:00", "latitude": -2.520185, "longitude": 34.618356, "tags": [ "pariatur", "ipsum", "sit", "reprehenderit", "veniam", "reprehenderit", "occaecat" ], "friends": [ { "id": 0, "name": "Crosby Washington" }, { "id": 1, "name": "Celina Potter" }, { "id": 2, "name": "Kelly Gates" } ], "greeting": "Hello, Potter Pena! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea253835f5192df67ff7", "index": 2677, "guid": "a838134c-b95f-45a8-be54-e848f280b4e4", "isActive": false, "balance": "$3,495.68", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Fanny Hopkins", "gender": "female", "company": "ECOSYS", "email": "fannyhopkins@ecosys.com", "phone": "+1 (891) 594-3459", "address": "794 Holmes Lane, Ferney, Mississippi, 2846", "about": "Laboris Lorem excepteur aute amet nostrud velit quis incididunt exercitation sunt. Id elit incididunt enim nostrud magna non veniam laborum adipisicing enim velit incididunt adipisicing. Dolore qui ex fugiat et quis elit deserunt.\r\n", "registered": "2014-07-15T21:18:13-12:00", "latitude": -79.556412, "longitude": -74.195648, "tags": [ "excepteur", "adipisicing", "do", "officia", "occaecat", "exercitation", "quis" ], "friends": [ { "id": 0, "name": "Mable Gilbert" }, { "id": 1, "name": "Avila Walls" }, { "id": 2, "name": "Amparo Franklin" } ], "greeting": "Hello, Fanny Hopkins! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25bb81ffc34287d94c", "index": 2678, "guid": "ce4a90b4-a3b0-477c-8299-de695c0e0d4a", "isActive": false, "balance": "$1,421.02", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Yvette Reed", "gender": "female", "company": "NEXGENE", "email": "yvettereed@nexgene.com", "phone": "+1 (801) 496-3622", "address": "287 Blake Avenue, Worton, Washington, 5223", "about": "Aute enim adipisicing ex veniam laboris fugiat proident. Eu sit eu consectetur aliquip nostrud dolore sit ullamco sunt non. Aliqua mollit sit pariatur culpa ut ullamco irure adipisicing pariatur. Velit qui deserunt excepteur elit laboris sint cillum reprehenderit qui ipsum mollit.\r\n", "registered": "2014-08-25T06:18:34-12:00", "latitude": 88.829888, "longitude": -111.532927, "tags": [ "ipsum", "sunt", "est", "nostrud", "tempor", "quis", "ad" ], "friends": [ { "id": 0, "name": "Claudia Odonnell" }, { "id": 1, "name": "Christian Chang" }, { "id": 2, "name": "Tammi Snyder" } ], "greeting": "Hello, Yvette Reed! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea257203da8afd61b43d", "index": 2679, "guid": "11fd35b7-8ddd-4152-a643-23adfb98e02d", "isActive": false, "balance": "$3,536.37", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Mindy Elliott", "gender": "female", "company": "KINETICA", "email": "mindyelliott@kinetica.com", "phone": "+1 (831) 533-3163", "address": "349 Seagate Terrace, Ogema, Tennessee, 3208", "about": "Eu consectetur cupidatat do et nostrud culpa occaecat pariatur nisi dolore. Esse anim laboris officia incididunt tempor voluptate duis. Sint irure sit eiusmod quis est labore in tempor eiusmod eiusmod nulla sint. Cupidatat esse sunt eiusmod ipsum nostrud in duis magna nostrud ad ipsum.\r\n", "registered": "2014-02-08T14:29:18-13:00", "latitude": -69.99836, "longitude": -23.107208, "tags": [ "incididunt", "eiusmod", "et", "proident", "aliquip", "dolore", "amet" ], "friends": [ { "id": 0, "name": "Sloan Neal" }, { "id": 1, "name": "Silvia Boone" }, { "id": 2, "name": "Hall Valencia" } ], "greeting": "Hello, Mindy Elliott! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea251f0719f3bc39673a", "index": 2680, "guid": "40db668a-6654-48d7-80b9-e58040a5832a", "isActive": true, "balance": "$1,456.48", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Jeannine Robinson", "gender": "female", "company": "EMERGENT", "email": "jeanninerobinson@emergent.com", "phone": "+1 (828) 587-3808", "address": "833 Baughman Place, Muir, Alabama, 9078", "about": "Ullamco Lorem irure cillum pariatur minim culpa labore reprehenderit aliquip dolore enim. Sint irure eiusmod incididunt adipisicing sunt do ut do magna consequat proident. Laboris elit cillum aliqua est voluptate occaecat nulla sit dolor. Cillum enim eu nostrud occaecat nulla consectetur Lorem dolor anim laborum irure eiusmod exercitation. Ad sunt qui ut officia ea irure et labore non anim commodo dolore officia. Laborum qui consequat qui in magna nisi minim commodo cupidatat commodo non.\r\n", "registered": "2014-03-17T06:40:17-13:00", "latitude": -18.895063, "longitude": -82.479547, "tags": [ "amet", "aliqua", "reprehenderit", "consectetur", "voluptate", "ad", "ex" ], "friends": [ { "id": 0, "name": "Moran Macdonald" }, { "id": 1, "name": "Frieda Santiago" }, { "id": 2, "name": "Cooke Bartlett" } ], "greeting": "Hello, Jeannine Robinson! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e56fb2e775f97452", "index": 2681, "guid": "77529422-76d2-427e-8282-6b5940f6ce5e", "isActive": false, "balance": "$1,094.97", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Sullivan Weeks", "gender": "male", "company": "SIGNIDYNE", "email": "sullivanweeks@signidyne.com", "phone": "+1 (826) 462-3181", "address": "950 Hendrix Street, Stewart, Ohio, 6994", "about": "Do est consectetur velit dolore fugiat velit. Et consequat commodo ullamco culpa deserunt tempor commodo exercitation exercitation commodo. Dolor dolore cupidatat do amet. Pariatur labore consectetur aliqua adipisicing. Id consequat laboris ullamco voluptate consequat minim reprehenderit id esse eu magna elit ut. Laborum culpa aliquip dolore pariatur aliquip esse irure. Laborum pariatur tempor duis qui ex in ut exercitation voluptate dolor ipsum.\r\n", "registered": "2014-04-23T17:42:26-12:00", "latitude": -4.910549, "longitude": -150.729773, "tags": [ "non", "qui", "laborum", "veniam", "labore", "ea", "et" ], "friends": [ { "id": 0, "name": "Gamble Lott" }, { "id": 1, "name": "Chaney Oconnor" }, { "id": 2, "name": "Jimenez Dejesus" } ], "greeting": "Hello, Sullivan Weeks! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea250a5f47bc4c1f47bc", "index": 2682, "guid": "09340254-34d2-419d-8a59-d88b9c0be979", "isActive": true, "balance": "$2,809.93", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Hood Cline", "gender": "male", "company": "HINWAY", "email": "hoodcline@hinway.com", "phone": "+1 (996) 567-3148", "address": "108 Schroeders Avenue, Roy, Hawaii, 7544", "about": "Id esse sunt reprehenderit id qui esse nulla. Est ad Lorem laborum in nisi reprehenderit incididunt mollit pariatur excepteur tempor exercitation. Anim deserunt ad amet est duis commodo.\r\n", "registered": "2014-09-02T17:32:31-12:00", "latitude": -34.511224, "longitude": -159.71521, "tags": [ "in", "laborum", "duis", "magna", "non", "dolore", "ea" ], "friends": [ { "id": 0, "name": "Melendez Larson" }, { "id": 1, "name": "Cervantes Velazquez" }, { "id": 2, "name": "Wilkins Newman" } ], "greeting": "Hello, Hood Cline! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea257f787a90cf8281c1", "index": 2683, "guid": "318066da-04a4-40a1-b091-e0ffe48a6565", "isActive": true, "balance": "$2,840.80", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Mcclure Dyer", "gender": "male", "company": "CANDECOR", "email": "mccluredyer@candecor.com", "phone": "+1 (998) 465-2521", "address": "920 Sapphire Street, Tetherow, New Mexico, 6567", "about": "Cupidatat adipisicing sint laboris labore esse adipisicing sunt commodo aliqua reprehenderit occaecat reprehenderit nostrud. Officia ea elit consectetur et est adipisicing enim. Dolor aliquip ea amet ut ex ad. Laboris laborum culpa incididunt qui. Et reprehenderit culpa ipsum in enim est laborum sint aliqua do sint laboris. Consectetur consectetur eiusmod minim cillum duis exercitation aliquip ipsum ut qui officia. Sit incididunt laborum id cupidatat do quis.\r\n", "registered": "2014-05-27T13:13:36-12:00", "latitude": -49.413434, "longitude": -59.788611, "tags": [ "labore", "labore", "irure", "nostrud", "labore", "dolore", "officia" ], "friends": [ { "id": 0, "name": "Ila Blair" }, { "id": 1, "name": "Cora Keller" }, { "id": 2, "name": "Kay Hampton" } ], "greeting": "Hello, Mcclure Dyer! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea258b68f5aca4e4f9e9", "index": 2684, "guid": "ea726254-fc9b-417f-90b7-f495f227f759", "isActive": false, "balance": "$2,509.03", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Summer Hernandez", "gender": "female", "company": "SUREPLEX", "email": "summerhernandez@sureplex.com", "phone": "+1 (970) 431-3672", "address": "363 Hornell Loop, Harborton, Maryland, 4926", "about": "Voluptate est occaecat do quis labore ipsum laborum proident ad fugiat adipisicing quis amet. Eiusmod enim consectetur excepteur fugiat pariatur exercitation dolore ullamco. Ipsum sit minim officia quis mollit quis. Sunt laboris quis ipsum esse fugiat commodo aute.\r\n", "registered": "2014-02-13T14:20:16-13:00", "latitude": -50.308653, "longitude": -61.469481, "tags": [ "dolor", "adipisicing", "ut", "excepteur", "ad", "eiusmod", "consectetur" ], "friends": [ { "id": 0, "name": "Rollins Nguyen" }, { "id": 1, "name": "Le Ingram" }, { "id": 2, "name": "Lacey Maldonado" } ], "greeting": "Hello, Summer Hernandez! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2576768614f33d4404", "index": 2685, "guid": "f7c49f73-07d7-49ad-b963-67a785733ec6", "isActive": true, "balance": "$1,653.81", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Jill Guthrie", "gender": "female", "company": "DUOFLEX", "email": "jillguthrie@duoflex.com", "phone": "+1 (851) 420-2904", "address": "370 Decatur Street, Bradenville, Alaska, 4998", "about": "Adipisicing nostrud cillum excepteur labore non enim aliquip incididunt dolor est. Proident cillum mollit qui labore enim ea in quis velit voluptate cillum ipsum magna. Labore enim ea laboris est officia elit deserunt ipsum amet id non aute consectetur. Minim minim eu pariatur velit Lorem ullamco culpa. Dolore proident nisi cillum commodo enim ex incididunt nisi excepteur ea elit amet sunt quis. Reprehenderit consequat voluptate qui quis occaecat non do. Adipisicing magna sunt ut nulla qui anim dolore dolore.\r\n", "registered": "2014-07-23T02:47:02-12:00", "latitude": -50.784977, "longitude": 173.283629, "tags": [ "aliquip", "dolore", "duis", "est", "cupidatat", "anim", "occaecat" ], "friends": [ { "id": 0, "name": "Conley Fletcher" }, { "id": 1, "name": "Marva Jarvis" }, { "id": 2, "name": "Macias Hinton" } ], "greeting": "Hello, Jill Guthrie! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25b60c6ece190dae05", "index": 2686, "guid": "e42fe93f-34c8-489f-8086-8d315430d03e", "isActive": true, "balance": "$1,431.16", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Church Battle", "gender": "male", "company": "INSECTUS", "email": "churchbattle@insectus.com", "phone": "+1 (946) 599-2544", "address": "735 Linden Street, Herlong, Arizona, 2152", "about": "Excepteur mollit incididunt excepteur non in non et nulla culpa et eu est ipsum. Aliquip sit commodo tempor Lorem. Et ullamco incididunt magna consectetur cupidatat id sunt elit sunt cillum sunt aliqua tempor. Dolor sit nostrud amet excepteur officia laboris et deserunt minim eu proident incididunt ad adipisicing. Aliquip nostrud officia fugiat enim non ea ullamco occaecat aute excepteur. Lorem occaecat ex est amet magna duis ullamco quis ad.\r\n", "registered": "2014-07-08T16:13:59-12:00", "latitude": 84.978923, "longitude": -97.482599, "tags": [ "id", "laboris", "consequat", "proident", "incididunt", "veniam", "proident" ], "friends": [ { "id": 0, "name": "Francis Allen" }, { "id": 1, "name": "Bennett Barrett" }, { "id": 2, "name": "Fowler Rojas" } ], "greeting": "Hello, Church Battle! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2573c526a0bed40440", "index": 2687, "guid": "941eaaa2-8f83-4e2f-976b-e005576d37d0", "isActive": true, "balance": "$2,792.53", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Leticia Dotson", "gender": "female", "company": "INTERODEO", "email": "leticiadotson@interodeo.com", "phone": "+1 (840) 577-2826", "address": "963 Linwood Street, Madrid, Federated States Of Micronesia, 7067", "about": "Dolore do commodo deserunt eu non elit officia sunt minim. Pariatur culpa aute labore id sit sint veniam nisi officia ad. Excepteur labore laborum commodo proident incididunt mollit aliqua qui. Id qui exercitation in exercitation commodo commodo. Fugiat id eu laboris nulla ea non dolor adipisicing. Laboris velit sint enim veniam dolor mollit.\r\n", "registered": "2014-03-26T23:36:40-13:00", "latitude": 70.416901, "longitude": -152.958817, "tags": [ "Lorem", "voluptate", "adipisicing", "eu", "est", "quis", "ipsum" ], "friends": [ { "id": 0, "name": "Leona Spence" }, { "id": 1, "name": "Castaneda Burke" }, { "id": 2, "name": "Pickett Rosario" } ], "greeting": "Hello, Leticia Dotson! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea253bca9427ef378a2f", "index": 2688, "guid": "740399d8-01fc-4e22-abe8-ff2559ee5e64", "isActive": true, "balance": "$3,778.24", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Owen Stephenson", "gender": "male", "company": "NETUR", "email": "owenstephenson@netur.com", "phone": "+1 (846) 579-2160", "address": "607 Delmonico Place, Day, Oklahoma, 5389", "about": "Nostrud sunt elit tempor fugiat adipisicing sint minim quis nostrud magna non dolor enim magna. Cillum nulla ex elit laboris sint qui cupidatat anim aliqua cupidatat est non aliquip. Lorem proident pariatur est qui cillum dolore et ea consectetur magna. Aliquip sunt aute dolor ipsum reprehenderit ullamco ullamco et reprehenderit ad laboris magna do enim.\r\n", "registered": "2014-01-27T15:28:17-13:00", "latitude": 5.102428, "longitude": -70.612822, "tags": [ "esse", "in", "non", "elit", "sit", "elit", "qui" ], "friends": [ { "id": 0, "name": "Juliette Frederick" }, { "id": 1, "name": "Marcia Kirkland" }, { "id": 2, "name": "Charlotte Wall" } ], "greeting": "Hello, Owen Stephenson! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea254f9a0093e7001db0", "index": 2689, "guid": "6137371b-bcc5-4e53-8aff-69be283a6fb1", "isActive": true, "balance": "$3,621.56", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Mcknight Parsons", "gender": "male", "company": "WAZZU", "email": "mcknightparsons@wazzu.com", "phone": "+1 (905) 561-3453", "address": "920 Battery Avenue, Tibbie, Michigan, 8143", "about": "Mollit minim irure excepteur consequat excepteur commodo cupidatat aliquip quis exercitation aute commodo sunt ad. Tempor eu eu minim amet adipisicing nisi velit reprehenderit do nisi qui. Amet reprehenderit sit anim ea non. Non do ipsum ea amet dolor do ullamco aliquip ad non amet adipisicing adipisicing. Laboris minim pariatur qui eu mollit est consequat nisi labore culpa pariatur ea est qui. Non et amet ut aliqua veniam nulla laboris fugiat aliquip commodo sunt.\r\n", "registered": "2014-08-30T09:25:17-12:00", "latitude": 48.055665, "longitude": -160.022065, "tags": [ "adipisicing", "laboris", "proident", "aliquip", "laborum", "elit", "et" ], "friends": [ { "id": 0, "name": "Araceli Curtis" }, { "id": 1, "name": "Rebecca Diaz" }, { "id": 2, "name": "Burton Henderson" } ], "greeting": "Hello, Mcknight Parsons! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea258fe4abc068f2f224", "index": 2690, "guid": "de81e41f-660b-4f75-9ecc-45f62e5c1969", "isActive": false, "balance": "$3,672.70", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Little Fisher", "gender": "male", "company": "INSURITY", "email": "littlefisher@insurity.com", "phone": "+1 (820) 515-2872", "address": "536 Campus Road, Newcastle, Kansas, 9989", "about": "Duis mollit sunt irure occaecat consequat nostrud. Magna laborum ad laboris laboris. Voluptate qui et et est id. Id nulla dolor anim nisi voluptate.\r\n", "registered": "2014-05-11T20:35:29-12:00", "latitude": 79.378298, "longitude": 52.815919, "tags": [ "est", "elit", "occaecat", "sunt", "in", "ea", "sint" ], "friends": [ { "id": 0, "name": "Tabitha Forbes" }, { "id": 1, "name": "Mason Bass" }, { "id": 2, "name": "Bowen Rowland" } ], "greeting": "Hello, Little Fisher! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2528c10af97a1a3a25", "index": 2691, "guid": "ace81f25-caca-44c3-a593-1ff16234342a", "isActive": true, "balance": "$3,322.83", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Emma Horn", "gender": "female", "company": "FRENEX", "email": "emmahorn@frenex.com", "phone": "+1 (964) 420-3545", "address": "831 Lester Court, Gilmore, South Dakota, 2367", "about": "Cillum ipsum eiusmod voluptate est fugiat incididunt quis voluptate sint amet. Irure fugiat magna velit sit velit fugiat minim in fugiat. Officia non mollit duis eiusmod do mollit minim tempor cillum. Nulla adipisicing eiusmod fugiat anim.\r\n", "registered": "2014-08-28T05:21:37-12:00", "latitude": -22.856343, "longitude": -43.563065, "tags": [ "dolor", "excepteur", "ea", "minim", "aliqua", "Lorem", "incididunt" ], "friends": [ { "id": 0, "name": "Rosario Yates" }, { "id": 1, "name": "Carolina Spears" }, { "id": 2, "name": "Virgie Hester" } ], "greeting": "Hello, Emma Horn! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea250aca1dfc79005c34", "index": 2692, "guid": "e38961b0-58fb-4c8e-83fb-ff8aadb63b2d", "isActive": true, "balance": "$2,512.10", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Cochran Fernandez", "gender": "male", "company": "ZILLIDIUM", "email": "cochranfernandez@zillidium.com", "phone": "+1 (926) 445-2231", "address": "947 Schenck Place, Cataract, West Virginia, 1164", "about": "Dolore ea cillum occaecat reprehenderit in velit esse eu culpa ut. Incididunt consectetur aliquip eiusmod enim incididunt aliqua commodo aliqua eu ipsum ad. Incididunt ea reprehenderit aliqua reprehenderit laboris. Veniam exercitation Lorem qui non nulla consequat incididunt non adipisicing ipsum voluptate elit. Cillum id est anim aute ex aliqua.\r\n", "registered": "2014-01-29T09:03:52-13:00", "latitude": 0.217033, "longitude": 20.467678, "tags": [ "ipsum", "elit", "qui", "irure", "cupidatat", "in", "cillum" ], "friends": [ { "id": 0, "name": "Tiffany Sweeney" }, { "id": 1, "name": "Elisabeth Abbott" }, { "id": 2, "name": "Alston Kane" } ], "greeting": "Hello, Cochran Fernandez! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea255a02c165ec9c9551", "index": 2693, "guid": "b30502b0-fe68-44d0-8e2e-c6102442ebf1", "isActive": true, "balance": "$2,773.48", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Greer Clements", "gender": "male", "company": "COMBOGENE", "email": "greerclements@combogene.com", "phone": "+1 (900) 465-3597", "address": "680 Hampton Avenue, Salvo, Texas, 5246", "about": "Do incididunt velit do eu cillum sunt enim magna cillum exercitation. Id exercitation dolor sint laboris laboris sunt incididunt non eu officia et eiusmod cillum velit. Magna in pariatur reprehenderit Lorem aute sit cupidatat labore est aliquip. Labore Lorem deserunt dolor anim do incididunt. Deserunt occaecat duis officia laborum officia excepteur et eiusmod excepteur labore ad proident.\r\n", "registered": "2014-03-16T16:32:15-13:00", "latitude": 88.624765, "longitude": -40.451713, "tags": [ "do", "laborum", "fugiat", "irure", "culpa", "qui", "quis" ], "friends": [ { "id": 0, "name": "Vicki Romero" }, { "id": 1, "name": "Lorrie Moore" }, { "id": 2, "name": "Douglas Adams" } ], "greeting": "Hello, Greer Clements! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2558a383df2bc6170d", "index": 2694, "guid": "5a01423c-3a81-45ba-965b-3c54b01c6e86", "isActive": false, "balance": "$3,976.27", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Lessie Mcfadden", "gender": "female", "company": "KOOGLE", "email": "lessiemcfadden@koogle.com", "phone": "+1 (806) 549-3185", "address": "797 Monaco Place, Allison, Oregon, 2236", "about": "Enim duis exercitation elit ex magna dolor nulla. Irure nisi proident id voluptate mollit ea fugiat dolore duis est et reprehenderit officia. Veniam enim ut esse ut excepteur commodo non non occaecat nostrud culpa ipsum ad aliquip. Id quis commodo proident anim ullamco enim nulla amet velit.\r\n", "registered": "2014-07-24T16:03:29-12:00", "latitude": -54.38198, "longitude": -179.078531, "tags": [ "Lorem", "laboris", "pariatur", "sunt", "officia", "fugiat", "et" ], "friends": [ { "id": 0, "name": "Moses Clarke" }, { "id": 1, "name": "Caitlin Church" }, { "id": 2, "name": "Georgina David" } ], "greeting": "Hello, Lessie Mcfadden! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea257560cdc59316a55c", "index": 2695, "guid": "6bb5114f-b8d9-424d-b192-c2470cbfe575", "isActive": true, "balance": "$1,137.36", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Jenkins Mcdonald", "gender": "male", "company": "INTRADISK", "email": "jenkinsmcdonald@intradisk.com", "phone": "+1 (870) 574-2702", "address": "937 Duffield Street, Mapletown, Nevada, 9697", "about": "Id id ullamco commodo est sunt sunt laboris officia. Dolor dolor adipisicing duis sunt id voluptate non dolor do et esse. Incididunt qui adipisicing eiusmod non et eu amet commodo in labore ea. Adipisicing cillum sit est ad ex nostrud et laboris cillum fugiat nulla cupidatat do. Minim ut minim dolor consectetur mollit magna aute nisi commodo incididunt proident magna. Minim excepteur cupidatat eiusmod laboris officia ut Lorem qui non tempor nulla aute.\r\n", "registered": "2014-03-03T19:37:37-13:00", "latitude": 6.447829, "longitude": 167.204342, "tags": [ "id", "in", "tempor", "non", "laborum", "duis", "qui" ], "friends": [ { "id": 0, "name": "Merritt Lindsay" }, { "id": 1, "name": "Matilda Key" }, { "id": 2, "name": "Harper Murray" } ], "greeting": "Hello, Jenkins Mcdonald! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea259c635135b63fde8b", "index": 2696, "guid": "7ed61d56-4c13-4123-a4ee-af3faa67fb58", "isActive": false, "balance": "$2,721.63", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Catalina Phelps", "gender": "female", "company": "ZENTURY", "email": "catalinaphelps@zentury.com", "phone": "+1 (845) 490-2771", "address": "502 Union Street, Chapin, Minnesota, 4030", "about": "Adipisicing sint eiusmod ullamco proident magna sunt incididunt proident culpa pariatur consectetur consectetur. Deserunt eiusmod labore occaecat est mollit mollit sint proident deserunt dolor exercitation ad nulla nisi. Elit aliqua minim cupidatat in adipisicing sunt elit eu sit tempor laboris. Occaecat laboris velit in commodo in deserunt est esse excepteur proident pariatur officia. Pariatur ut dolore dolore mollit mollit ut dolore exercitation. Commodo sunt irure minim minim nisi amet proident veniam ut aliqua culpa.\r\n", "registered": "2014-02-20T22:39:17-13:00", "latitude": -5.173419, "longitude": -90.242192, "tags": [ "quis", "laborum", "anim", "reprehenderit", "esse", "laborum", "do" ], "friends": [ { "id": 0, "name": "Lavonne Wolf" }, { "id": 1, "name": "Boyer Hooper" }, { "id": 2, "name": "Ferguson Mills" } ], "greeting": "Hello, Catalina Phelps! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea258f749546172b50d0", "index": 2697, "guid": "a6e8be5f-ef17-4ca1-bce1-c959885e11bf", "isActive": true, "balance": "$1,364.17", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Jeanine Middleton", "gender": "female", "company": "MIRACULA", "email": "jeaninemiddleton@miracula.com", "phone": "+1 (892) 529-3465", "address": "545 Tapscott Street, Glasgow, Missouri, 105", "about": "Sunt Lorem duis anim mollit incididunt eiusmod. Est pariatur ullamco quis et aute exercitation. Est sit reprehenderit duis et magna est tempor consectetur tempor Lorem adipisicing elit. Reprehenderit cillum enim enim nulla. Incididunt anim mollit tempor quis non consectetur mollit officia aliquip tempor ullamco. Culpa tempor ex amet reprehenderit ipsum velit dolor adipisicing culpa id consequat excepteur. Occaecat consectetur laborum consequat magna sit.\r\n", "registered": "2014-05-11T12:38:52-12:00", "latitude": -81.747585, "longitude": 80.598514, "tags": [ "eu", "tempor", "elit", "dolore", "eu", "Lorem", "velit" ], "friends": [ { "id": 0, "name": "Compton Hawkins" }, { "id": 1, "name": "Rochelle Norris" }, { "id": 2, "name": "Foreman Rich" } ], "greeting": "Hello, Jeanine Middleton! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2537c66c2beb21c97f", "index": 2698, "guid": "e0a61fca-68c8-462d-a0c9-f4a82d8387ba", "isActive": false, "balance": "$2,413.64", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Grace Cervantes", "gender": "female", "company": "VINCH", "email": "gracecervantes@vinch.com", "phone": "+1 (883) 587-2349", "address": "295 Lloyd Street, Cleary, Rhode Island, 2770", "about": "Ea et enim dolor veniam nulla et reprehenderit adipisicing pariatur do consectetur nostrud quis. Ad exercitation mollit elit non nulla officia do dolore laboris qui deserunt est non veniam. Est exercitation velit mollit fugiat incididunt enim aute quis quis culpa pariatur dolore in. Consectetur voluptate ea fugiat aliquip dolor qui laborum aute commodo fugiat elit nisi sint incididunt.\r\n", "registered": "2014-01-30T02:50:06-13:00", "latitude": 28.87016, "longitude": -90.693427, "tags": [ "adipisicing", "exercitation", "do", "ad", "reprehenderit", "velit", "consectetur" ], "friends": [ { "id": 0, "name": "Erin Campbell" }, { "id": 1, "name": "Jo Mcfarland" }, { "id": 2, "name": "Taylor Beach" } ], "greeting": "Hello, Grace Cervantes! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2500d953f87c83a34a", "index": 2699, "guid": "2abca50f-938a-44e3-a3c2-557c3e8fc32e", "isActive": true, "balance": "$3,259.38", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Kayla Vaughn", "gender": "female", "company": "NETILITY", "email": "kaylavaughn@netility.com", "phone": "+1 (861) 405-2252", "address": "407 Monument Walk, Logan, Florida, 1697", "about": "Fugiat laborum dolore ullamco veniam aliqua aute magna tempor. Lorem mollit officia consequat sint et. Mollit nisi ex aute cillum nisi minim laborum consequat. Irure tempor eiusmod ad nisi. Commodo eu non laboris culpa cupidatat id ad.\r\n", "registered": "2014-06-12T10:49:04-12:00", "latitude": -42.934225, "longitude": -145.41651, "tags": [ "dolore", "incididunt", "aliqua", "consequat", "dolor", "culpa", "id" ], "friends": [ { "id": 0, "name": "Kidd Ashley" }, { "id": 1, "name": "Stein Chandler" }, { "id": 2, "name": "Amie Vaughan" } ], "greeting": "Hello, Kayla Vaughn! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25d3f72d71fde1a9bc", "index": 2700, "guid": "e6a3b515-c044-4c0b-a616-8032586b448e", "isActive": false, "balance": "$2,390.19", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Mcdowell Robbins", "gender": "male", "company": "ESCENTA", "email": "mcdowellrobbins@escenta.com", "phone": "+1 (920) 409-3778", "address": "552 Holly Street, Cumminsville, North Carolina, 2996", "about": "Do sint pariatur labore excepteur. Laboris sit id consequat pariatur. Est et aliquip et eiusmod anim id adipisicing quis laboris et enim id voluptate. Eiusmod aute nulla non aliquip velit adipisicing ut ad exercitation.\r\n", "registered": "2014-03-06T10:29:03-13:00", "latitude": 45.810641, "longitude": -154.566347, "tags": [ "consequat", "laboris", "commodo", "do", "esse", "consequat", "aliquip" ], "friends": [ { "id": 0, "name": "Collins Levine" }, { "id": 1, "name": "Foley Combs" }, { "id": 2, "name": "Bernice Schwartz" } ], "greeting": "Hello, Mcdowell Robbins! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2592d8186c8fb75f8a", "index": 2701, "guid": "5c5e67bf-d68a-48a5-8e84-5f6aa2e65964", "isActive": true, "balance": "$2,006.81", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Dale Sims", "gender": "male", "company": "MEDCOM", "email": "dalesims@medcom.com", "phone": "+1 (989) 494-3844", "address": "286 Arlington Place, Ola, New Hampshire, 8686", "about": "Nulla in magna fugiat commodo laboris. Amet ea exercitation minim ipsum laborum excepteur ut ullamco reprehenderit irure incididunt velit nostrud occaecat. Qui reprehenderit aliquip officia nulla laboris ullamco laboris amet enim Lorem ipsum anim aliqua. Est quis fugiat enim labore ex nostrud ea sint fugiat non eu ut. Pariatur anim id incididunt laboris.\r\n", "registered": "2014-01-11T14:46:06-13:00", "latitude": -67.312168, "longitude": -145.37817, "tags": [ "culpa", "amet", "culpa", "aliqua", "pariatur", "qui", "non" ], "friends": [ { "id": 0, "name": "Jenny Maxwell" }, { "id": 1, "name": "Carey Talley" }, { "id": 2, "name": "Hansen Knowles" } ], "greeting": "Hello, Dale Sims! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25869d5eebf73a70bd", "index": 2702, "guid": "27cf1920-aa95-425d-88ec-18add7cb7389", "isActive": true, "balance": "$3,862.70", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Randi Green", "gender": "female", "company": "SPACEWAX", "email": "randigreen@spacewax.com", "phone": "+1 (899) 471-3674", "address": "863 Billings Place, Enoree, Arkansas, 9844", "about": "Fugiat cillum sit laboris sit elit culpa tempor ex do non. Consequat aliquip est ex tempor cupidatat commodo sint do adipisicing consectetur fugiat in laborum. Occaecat commodo dolor ipsum sit ad incididunt ipsum qui voluptate nisi aliquip cupidatat Lorem.\r\n", "registered": "2014-07-02T14:53:37-12:00", "latitude": 64.87726, "longitude": 104.369264, "tags": [ "cillum", "elit", "amet", "cupidatat", "esse", "laboris", "ipsum" ], "friends": [ { "id": 0, "name": "Aisha Gutierrez" }, { "id": 1, "name": "Mullen Rivers" }, { "id": 2, "name": "Viola Garner" } ], "greeting": "Hello, Randi Green! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25f2825b24af4d37f5", "index": 2703, "guid": "441c5495-f558-4b56-9ca1-b6556deb1a2d", "isActive": true, "balance": "$1,331.59", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Tamra Mann", "gender": "female", "company": "LOVEPAD", "email": "tamramann@lovepad.com", "phone": "+1 (953) 445-2209", "address": "269 Rose Street, Malo, Iowa, 9176", "about": "Est labore exercitation nulla qui non sit officia. Elit fugiat Lorem duis reprehenderit est ex in. Officia est labore Lorem sit reprehenderit laboris adipisicing voluptate culpa. Dolor ea sint veniam duis amet exercitation est tempor cillum ea laboris tempor. Excepteur proident cillum dolor Lorem sunt Lorem adipisicing ut amet sint ad aliquip id reprehenderit.\r\n", "registered": "2014-02-23T10:25:36-13:00", "latitude": -65.905569, "longitude": 143.612199, "tags": [ "quis", "officia", "qui", "eiusmod", "nisi", "laborum", "commodo" ], "friends": [ { "id": 0, "name": "Jana Harvey" }, { "id": 1, "name": "Constance Pollard" }, { "id": 2, "name": "Dillon Davenport" } ], "greeting": "Hello, Tamra Mann! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea254d3a1ba8ead6e194", "index": 2704, "guid": "8d60f17c-94b1-4bec-93cd-96cadb65e672", "isActive": true, "balance": "$2,952.47", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Camille Norton", "gender": "female", "company": "MYOPIUM", "email": "camillenorton@myopium.com", "phone": "+1 (924) 517-2443", "address": "215 Ocean Avenue, Twilight, Nebraska, 3999", "about": "In officia dolor ex aliqua sint eiusmod exercitation dolore duis irure. Tempor excepteur non non est commodo sint dolor veniam occaecat. Lorem eu velit Lorem non consectetur labore exercitation. Ea sunt adipisicing non sint laboris. Qui dolor est nulla non non pariatur Lorem sunt minim ad culpa in do ipsum.\r\n", "registered": "2014-01-05T14:20:13-13:00", "latitude": -29.74714, "longitude": 22.923069, "tags": [ "cillum", "adipisicing", "consequat", "aliquip", "cillum", "culpa", "cillum" ], "friends": [ { "id": 0, "name": "Christine Mendez" }, { "id": 1, "name": "Alma George" }, { "id": 2, "name": "Cleveland Park" } ], "greeting": "Hello, Camille Norton! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea255fbda1f34420b3a2", "index": 2705, "guid": "9bb11964-a300-4db0-8fe7-f9390e1de36f", "isActive": false, "balance": "$3,898.95", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Katheryn Kerr", "gender": "female", "company": "DIGIQUE", "email": "katherynkerr@digique.com", "phone": "+1 (983) 491-2746", "address": "683 Richards Street, Montura, District Of Columbia, 3362", "about": "Voluptate culpa labore fugiat esse Lorem in aliquip in sint ex consequat eu laboris non. Et irure nulla laborum voluptate ea magna deserunt dolor duis Lorem. Labore aliqua aute magna sint reprehenderit exercitation ut laboris eiusmod. Exercitation non in esse ex nulla enim exercitation dolore ut aliquip exercitation officia.\r\n", "registered": "2014-06-13T01:23:37-12:00", "latitude": -36.488731, "longitude": -101.711635, "tags": [ "laborum", "dolor", "sit", "veniam", "minim", "laborum", "ipsum" ], "friends": [ { "id": 0, "name": "Lorena Roberts" }, { "id": 1, "name": "Latasha Holder" }, { "id": 2, "name": "Fitzgerald Rollins" } ], "greeting": "Hello, Katheryn Kerr! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25ea082e93d5516990", "index": 2706, "guid": "c7a5f857-5a65-494b-8600-cd8a8a2a582d", "isActive": false, "balance": "$1,019.36", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Terra Gonzalez", "gender": "female", "company": "SULTRAXIN", "email": "terragonzalez@sultraxin.com", "phone": "+1 (940) 493-3436", "address": "873 Granite Street, Toftrees, New Jersey, 5454", "about": "Consectetur eu consequat excepteur et nulla non tempor nisi. Anim enim ut pariatur id id officia magna. Sunt culpa id id do veniam labore fugiat aute excepteur eu cillum in cillum anim. Officia veniam cillum magna do nisi ad elit nulla. Officia enim duis amet est cillum eu dolor qui laboris.\r\n", "registered": "2014-09-22T19:45:07-12:00", "latitude": -38.728105, "longitude": -150.1877, "tags": [ "dolor", "id", "dolor", "cupidatat", "excepteur", "excepteur", "non" ], "friends": [ { "id": 0, "name": "Graham Gonzales" }, { "id": 1, "name": "Angelina Dickson" }, { "id": 2, "name": "Janelle Jordan" } ], "greeting": "Hello, Terra Gonzalez! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea259c13cfb52c031db3", "index": 2707, "guid": "5ceedd33-b078-4804-87da-08bdf3065b1b", "isActive": true, "balance": "$3,943.53", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Marks Herman", "gender": "male", "company": "HOMETOWN", "email": "marksherman@hometown.com", "phone": "+1 (822) 597-2483", "address": "902 Crystal Street, Roderfield, Palau, 8618", "about": "Eu qui cupidatat non ullamco velit veniam in elit. Consequat Lorem cupidatat nulla velit. Officia eiusmod veniam pariatur eu aliqua et mollit Lorem elit nisi ipsum cillum magna fugiat. Fugiat culpa excepteur ipsum cillum cupidatat consequat Lorem consectetur. Pariatur adipisicing id excepteur exercitation fugiat excepteur tempor.\r\n", "registered": "2014-05-29T14:32:09-12:00", "latitude": -30.796856, "longitude": -106.508244, "tags": [ "cupidatat", "labore", "enim", "do", "est", "nisi", "sint" ], "friends": [ { "id": 0, "name": "Freeman Mcmahon" }, { "id": 1, "name": "Hart Frost" }, { "id": 2, "name": "Carr Dale" } ], "greeting": "Hello, Marks Herman! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25e9a3c3dbe4bf9d81", "index": 2708, "guid": "ccecfdc2-16a6-4b53-96be-e3db5762e034", "isActive": true, "balance": "$3,477.53", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Dorothea Taylor", "gender": "female", "company": "ZILPHUR", "email": "dorotheataylor@zilphur.com", "phone": "+1 (969) 482-3169", "address": "265 Nevins Street, Tioga, Puerto Rico, 8286", "about": "Aute ipsum amet amet tempor et non. Ullamco consectetur exercitation ea fugiat quis cillum id et adipisicing aute do qui aliqua ut. Aute non mollit amet commodo ipsum dolore qui. Excepteur aute pariatur consequat exercitation nisi magna fugiat id laborum non.\r\n", "registered": "2014-08-13T10:40:54-12:00", "latitude": -48.912062, "longitude": -121.827143, "tags": [ "qui", "amet", "irure", "deserunt", "sint", "proident", "eu" ], "friends": [ { "id": 0, "name": "Olsen Kirby" }, { "id": 1, "name": "Herman Hale" }, { "id": 2, "name": "Oconnor Ballard" } ], "greeting": "Hello, Dorothea Taylor! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25375be2086b96b336", "index": 2709, "guid": "29e76f40-8889-4da7-b186-596de7b22062", "isActive": true, "balance": "$2,079.91", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Barry Daugherty", "gender": "male", "company": "MAZUDA", "email": "barrydaugherty@mazuda.com", "phone": "+1 (935) 495-2663", "address": "873 Centre Street, Abiquiu, California, 6192", "about": "Ad est sit esse culpa adipisicing velit incididunt dolore mollit cillum ea. Laboris ut incididunt ad nulla proident sit voluptate ipsum proident ex esse. Elit exercitation veniam esse officia culpa ex ad mollit nisi magna in irure non proident.\r\n", "registered": "2014-05-19T05:25:07-12:00", "latitude": 2.089679, "longitude": 18.440958, "tags": [ "minim", "et", "nostrud", "nisi", "voluptate", "et", "fugiat" ], "friends": [ { "id": 0, "name": "Carrillo Cobb" }, { "id": 1, "name": "Alexandra Phillips" }, { "id": 2, "name": "Johnnie Savage" } ], "greeting": "Hello, Barry Daugherty! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25a34a91e33d091089", "index": 2710, "guid": "99dd6933-8022-4c26-aa70-4eff68901583", "isActive": false, "balance": "$1,661.08", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Bessie Maynard", "gender": "female", "company": "ZILLADYNE", "email": "bessiemaynard@zilladyne.com", "phone": "+1 (996) 400-2467", "address": "563 Ash Street, Summertown, Vermont, 2436", "about": "Laborum deserunt eu sunt eu laborum irure ex proident sit tempor enim mollit. Incididunt consequat do occaecat ipsum excepteur occaecat anim ex fugiat id. Qui pariatur aliqua mollit voluptate. Sint qui veniam est reprehenderit officia culpa nulla veniam amet laboris non pariatur nulla. Ad sint est minim ullamco labore occaecat occaecat cupidatat adipisicing ipsum sit proident culpa laborum. Est laborum cupidatat sunt duis. Enim aliqua esse labore dolore.\r\n", "registered": "2014-05-17T20:02:32-12:00", "latitude": 40.39917, "longitude": 30.550324, "tags": [ "do", "nostrud", "culpa", "non", "labore", "enim", "sit" ], "friends": [ { "id": 0, "name": "Alissa Colon" }, { "id": 1, "name": "Vivian Pickett" }, { "id": 2, "name": "Hoffman Foley" } ], "greeting": "Hello, Bessie Maynard! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25542454bc5b92cac5", "index": 2711, "guid": "171109b7-db17-41c5-8e4b-1866135b27cf", "isActive": false, "balance": "$2,249.69", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Cara Harding", "gender": "female", "company": "ACCIDENCY", "email": "caraharding@accidency.com", "phone": "+1 (832) 518-3057", "address": "453 Durland Place, Villarreal, Indiana, 7115", "about": "Ipsum et aute nostrud pariatur officia voluptate irure ut ipsum amet irure amet exercitation sit. Fugiat irure ea culpa esse velit dolore adipisicing. Velit eu aute exercitation laborum.\r\n", "registered": "2014-03-29T00:57:05-13:00", "latitude": -47.001703, "longitude": -151.649186, "tags": [ "amet", "aliqua", "qui", "aliqua", "labore", "cillum", "et" ], "friends": [ { "id": 0, "name": "Cooley Ball" }, { "id": 1, "name": "Poole Walker" }, { "id": 2, "name": "Helene Ferguson" } ], "greeting": "Hello, Cara Harding! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2566219316aae78c53", "index": 2712, "guid": "a6545595-e807-4759-a2c2-d21b0c786495", "isActive": false, "balance": "$3,107.45", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Eva Townsend", "gender": "female", "company": "ISOTRONIC", "email": "evatownsend@isotronic.com", "phone": "+1 (866) 427-2210", "address": "117 Himrod Street, Coaldale, Illinois, 2875", "about": "Eiusmod adipisicing velit dolore sunt non nulla enim officia velit nulla dolore. Sunt ut pariatur nulla do nisi enim cupidatat ullamco mollit in ea laborum nostrud voluptate. Fugiat voluptate aliqua ut elit cupidatat reprehenderit esse magna esse et eiusmod aliqua esse. Aute sit nulla culpa esse Lorem sunt. Amet mollit cillum irure magna adipisicing ut. Consequat qui tempor sit mollit consectetur consequat labore consequat nulla deserunt proident ad.\r\n", "registered": "2014-08-11T20:22:54-12:00", "latitude": -57.673244, "longitude": 76.258739, "tags": [ "culpa", "do", "sunt", "excepteur", "ad", "occaecat", "ullamco" ], "friends": [ { "id": 0, "name": "Concepcion Knight" }, { "id": 1, "name": "Betty Reynolds" }, { "id": 2, "name": "Priscilla Dunn" } ], "greeting": "Hello, Eva Townsend! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25566dbfbaf94aedcd", "index": 2713, "guid": "46eb4450-1b31-43e5-86b9-5a4f73ea8204", "isActive": true, "balance": "$3,264.21", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Wilson Graham", "gender": "male", "company": "INTERFIND", "email": "wilsongraham@interfind.com", "phone": "+1 (979) 405-2432", "address": "489 Bergen Street, Choctaw, South Carolina, 6238", "about": "Laboris labore Lorem quis exercitation non id ipsum ea officia minim esse. In ad dolor dolor ad nisi aliqua. Aliquip ad sit ex Lorem eu est. In aliquip non incididunt eiusmod amet est et elit nostrud dolor voluptate.\r\n", "registered": "2014-01-25T14:01:35-13:00", "latitude": -78.714344, "longitude": -23.691922, "tags": [ "ut", "aliqua", "aliquip", "laborum", "nulla", "ea", "voluptate" ], "friends": [ { "id": 0, "name": "Howe Vincent" }, { "id": 1, "name": "Jeanie Ellison" }, { "id": 2, "name": "Autumn Armstrong" } ], "greeting": "Hello, Wilson Graham! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e9a5927a7690de94", "index": 2714, "guid": "041821f0-7368-48c9-994a-0d4179b445e9", "isActive": true, "balance": "$1,620.37", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Monica Reid", "gender": "female", "company": "ECRATER", "email": "monicareid@ecrater.com", "phone": "+1 (954) 531-3916", "address": "813 Conselyea Street, Dundee, American Samoa, 8408", "about": "Do veniam ipsum laborum id voluptate id sunt eiusmod quis non occaecat labore. Do nostrud dolore magna occaecat consequat mollit veniam deserunt officia aliquip eu aute tempor laborum. Est est incididunt deserunt duis cupidatat proident fugiat proident voluptate esse in laboris. Adipisicing ut anim ex adipisicing enim cupidatat sit veniam eiusmod. Excepteur ut labore id qui nostrud officia consequat magna ea. Commodo cupidatat enim exercitation eiusmod aute mollit commodo Lorem tempor fugiat. Labore ullamco adipisicing est amet quis enim sint proident qui velit nulla adipisicing.\r\n", "registered": "2014-04-22T21:08:19-12:00", "latitude": -0.28234, "longitude": 143.493697, "tags": [ "amet", "est", "qui", "irure", "esse", "proident", "consequat" ], "friends": [ { "id": 0, "name": "Franks Sears" }, { "id": 1, "name": "Laurie Anthony" }, { "id": 2, "name": "Rosalie Myers" } ], "greeting": "Hello, Monica Reid! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25185c767f5daf044f", "index": 2715, "guid": "66fad847-eed9-44f7-bdc7-2ca3d253965e", "isActive": true, "balance": "$1,300.28", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Maldonado Raymond", "gender": "male", "company": "RONELON", "email": "maldonadoraymond@ronelon.com", "phone": "+1 (928) 416-3019", "address": "852 Gem Street, Caledonia, Delaware, 5968", "about": "Veniam id anim esse Lorem cillum nisi et ea do fugiat in. Dolor laborum irure ut veniam eiusmod eu reprehenderit et nulla. Ad eiusmod deserunt qui sint deserunt. Sunt irure sit reprehenderit cupidatat ullamco non nisi.\r\n", "registered": "2014-08-16T07:50:32-12:00", "latitude": -5.209445, "longitude": 111.514176, "tags": [ "occaecat", "culpa", "minim", "culpa", "culpa", "sunt", "eiusmod" ], "friends": [ { "id": 0, "name": "Barbra Golden" }, { "id": 1, "name": "Logan Roy" }, { "id": 2, "name": "Mcdonald Clemons" } ], "greeting": "Hello, Maldonado Raymond! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25d4c0c5ea9ff763e6", "index": 2716, "guid": "c33cbe32-a9a5-492d-9458-4b7c3450c90f", "isActive": false, "balance": "$2,415.17", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Marguerite England", "gender": "female", "company": "QUIZMO", "email": "margueriteengland@quizmo.com", "phone": "+1 (841) 567-3275", "address": "379 Hale Avenue, Barronett, Pennsylvania, 2693", "about": "Sit labore proident nostrud eiusmod commodo et amet. Do consequat occaecat non amet. Amet reprehenderit quis excepteur dolore esse nostrud veniam veniam sit laboris duis adipisicing.\r\n", "registered": "2014-08-07T13:59:56-12:00", "latitude": 64.783303, "longitude": -155.229902, "tags": [ "exercitation", "sit", "labore", "mollit", "fugiat", "aute", "eiusmod" ], "friends": [ { "id": 0, "name": "Horne Reyes" }, { "id": 1, "name": "Peggy Shields" }, { "id": 2, "name": "Ellis Tillman" } ], "greeting": "Hello, Marguerite England! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25d97aba2e7f513ccb", "index": 2717, "guid": "e91acbc2-63dd-4fda-8ca4-ec4329dc949c", "isActive": false, "balance": "$3,817.75", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Daniels Valentine", "gender": "male", "company": "POOCHIES", "email": "danielsvalentine@poochies.com", "phone": "+1 (939) 404-2260", "address": "731 Bokee Court, Hinsdale, Georgia, 2306", "about": "Voluptate officia ex sint est irure. Eu culpa consequat laboris non sint dolor nulla esse consequat qui et. Ipsum do incididunt ullamco in consequat et exercitation qui do. Irure esse ipsum ex pariatur culpa ullamco non. Labore sunt ad duis est laborum eu adipisicing reprehenderit consectetur et. Excepteur labore commodo consequat enim non.\r\n", "registered": "2014-09-11T11:04:42-12:00", "latitude": 49.079008, "longitude": -154.999046, "tags": [ "commodo", "dolor", "minim", "nisi", "duis", "quis", "velit" ], "friends": [ { "id": 0, "name": "Rodriguez Edwards" }, { "id": 1, "name": "Valencia Shelton" }, { "id": 2, "name": "Knight Soto" } ], "greeting": "Hello, Daniels Valentine! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25436c3f6e2500ac3c", "index": 2718, "guid": "6a9f0915-9796-447a-88ae-618f02709533", "isActive": false, "balance": "$2,933.92", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Warren Mccall", "gender": "male", "company": "VETRON", "email": "warrenmccall@vetron.com", "phone": "+1 (800) 532-3750", "address": "343 Harrison Avenue, Whitmer, North Dakota, 125", "about": "Voluptate labore ad id veniam esse ea et exercitation enim in deserunt laborum adipisicing. Ex amet pariatur consectetur ut fugiat officia minim nostrud commodo. Consectetur ea ut in fugiat. Et reprehenderit quis exercitation cillum. Consequat occaecat consectetur culpa mollit nostrud exercitation est.\r\n", "registered": "2014-09-10T15:14:40-12:00", "latitude": -75.762157, "longitude": -32.685483, "tags": [ "do", "ex", "labore", "anim", "tempor", "irure", "consectetur" ], "friends": [ { "id": 0, "name": "Esmeralda Strong" }, { "id": 1, "name": "Jarvis Brown" }, { "id": 2, "name": "Miranda Gregory" } ], "greeting": "Hello, Warren Mccall! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25d3a52081acaae375", "index": 2719, "guid": "c74806fb-7e35-4083-8823-0ffd6a2c7720", "isActive": false, "balance": "$3,432.85", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Beryl Mccoy", "gender": "female", "company": "IDEALIS", "email": "berylmccoy@idealis.com", "phone": "+1 (985) 540-3457", "address": "381 Calder Place, Summerfield, Louisiana, 1303", "about": "Laboris proident et veniam anim sit duis cillum mollit aliqua sint ad. Adipisicing esse fugiat amet eiusmod consequat voluptate ad proident et duis commodo cillum ipsum. Exercitation anim dolor eiusmod labore ea. Incididunt id et ut exercitation veniam incididunt consequat ut deserunt et ad exercitation cillum. Fugiat laboris occaecat dolor quis amet eiusmod anim ad laborum est nostrud laborum sunt. Culpa excepteur mollit aute qui est ex aute. Irure consequat nisi consectetur dolor enim ad nostrud nostrud.\r\n", "registered": "2014-04-17T04:57:55-12:00", "latitude": -29.374549, "longitude": 32.544363, "tags": [ "enim", "adipisicing", "et", "irure", "do", "nostrud", "ipsum" ], "friends": [ { "id": 0, "name": "Lois Mcconnell" }, { "id": 1, "name": "Dana Collier" }, { "id": 2, "name": "Phoebe Baxter" } ], "greeting": "Hello, Beryl Mccoy! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25be2224316d5f74a0", "index": 2720, "guid": "b1d31534-e62b-4b40-9620-670f6c9f0a04", "isActive": false, "balance": "$3,064.28", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Battle Blake", "gender": "male", "company": "ZOLAVO", "email": "battleblake@zolavo.com", "phone": "+1 (977) 403-3861", "address": "257 Amber Street, Boomer, Northern Mariana Islands, 5663", "about": "Consectetur dolor quis occaecat eiusmod et. Ea reprehenderit aliqua sint labore reprehenderit tempor consequat sint non ullamco quis nisi laboris anim. Duis aliquip reprehenderit elit deserunt velit et sit voluptate non.\r\n", "registered": "2014-05-31T22:32:46-12:00", "latitude": 67.102655, "longitude": 37.43255, "tags": [ "minim", "pariatur", "dolor", "pariatur", "amet", "duis", "irure" ], "friends": [ { "id": 0, "name": "Cole Lancaster" }, { "id": 1, "name": "Margie Donovan" }, { "id": 2, "name": "Gay Jenkins" } ], "greeting": "Hello, Battle Blake! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25feea223c62698e2a", "index": 2721, "guid": "fd68cf70-86e5-428d-9488-1179a16584ab", "isActive": true, "balance": "$2,949.67", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "French Pate", "gender": "male", "company": "PULZE", "email": "frenchpate@pulze.com", "phone": "+1 (985) 550-3191", "address": "924 Court Square, Connerton, Colorado, 5057", "about": "Laborum consectetur eu aute eu anim in ullamco labore ipsum exercitation officia qui ea. Ex et quis tempor do qui qui elit magna sit do eu pariatur. Sunt mollit nostrud dolor magna quis tempor aliqua et ullamco dolor aliqua consequat. Proident non ipsum irure ullamco incididunt sit deserunt pariatur consectetur elit labore tempor ullamco.\r\n", "registered": "2014-07-23T06:55:18-12:00", "latitude": -19.833848, "longitude": -162.891725, "tags": [ "esse", "ut", "exercitation", "occaecat", "ad", "veniam", "dolor" ], "friends": [ { "id": 0, "name": "Kasey Velez" }, { "id": 1, "name": "Ashley Higgins" }, { "id": 2, "name": "Olson Berry" } ], "greeting": "Hello, French Pate! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25555534e7c862d661", "index": 2722, "guid": "9411f23d-0248-4733-9c82-1a7b76300a64", "isActive": true, "balance": "$2,741.87", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Ware Peterson", "gender": "male", "company": "ZENTIME", "email": "warepeterson@zentime.com", "phone": "+1 (994) 461-3862", "address": "847 Manor Court, Volta, Idaho, 2738", "about": "Ipsum duis consectetur sunt excepteur velit officia ullamco laboris amet officia laborum sint dolore quis. Officia occaecat minim Lorem commodo deserunt sint duis excepteur. Dolore nostrud sint ea anim nisi irure. Occaecat laboris qui ullamco ipsum Lorem. Excepteur consectetur officia nulla et labore pariatur est et nostrud Lorem laboris. Deserunt irure do nostrud voluptate laboris.\r\n", "registered": "2014-08-11T11:49:40-12:00", "latitude": -74.850066, "longitude": 160.952172, "tags": [ "aliquip", "dolore", "veniam", "mollit", "consequat", "Lorem", "id" ], "friends": [ { "id": 0, "name": "Hobbs Solomon" }, { "id": 1, "name": "Bond Nixon" }, { "id": 2, "name": "Frazier Fulton" } ], "greeting": "Hello, Ware Peterson! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2519c51ac675673073", "index": 2723, "guid": "5f989148-f5b0-4cb0-93e6-792cfafb66b3", "isActive": true, "balance": "$3,291.85", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Sweet Roberson", "gender": "male", "company": "CONFERIA", "email": "sweetroberson@conferia.com", "phone": "+1 (849) 579-3938", "address": "736 Noble Street, Camptown, Marshall Islands, 8431", "about": "Cillum pariatur cillum aliquip nulla irure. Est esse proident dolor aliquip sint. Aute enim sunt labore nisi excepteur enim cupidatat nulla laborum laboris voluptate qui. Reprehenderit duis duis tempor exercitation ipsum.\r\n", "registered": "2014-05-15T11:39:35-12:00", "latitude": -75.04982, "longitude": 100.590299, "tags": [ "amet", "do", "qui", "et", "excepteur", "in", "duis" ], "friends": [ { "id": 0, "name": "Tia Stuart" }, { "id": 1, "name": "Mercedes Chambers" }, { "id": 2, "name": "Alyce Ellis" } ], "greeting": "Hello, Sweet Roberson! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2561afac92dd360c80", "index": 2724, "guid": "97e36f23-dc50-4950-8292-53e5dbf0b758", "isActive": false, "balance": "$1,260.03", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Hawkins Lambert", "gender": "male", "company": "ACCUSAGE", "email": "hawkinslambert@accusage.com", "phone": "+1 (840) 470-3431", "address": "527 Jefferson Avenue, Forbestown, New York, 4714", "about": "Nisi fugiat minim ex nisi enim quis non velit mollit nulla. Eiusmod ex nulla quis esse duis laborum esse incididunt consectetur fugiat. Voluptate proident exercitation nostrud officia amet nostrud qui anim occaecat qui. Incididunt quis sit laborum laborum esse do officia. Enim culpa proident sunt ut nisi quis laborum sit cupidatat veniam ex.\r\n", "registered": "2014-01-24T19:24:49-13:00", "latitude": -23.282729, "longitude": 156.667458, "tags": [ "minim", "dolore", "voluptate", "aliqua", "sint", "ipsum", "id" ], "friends": [ { "id": 0, "name": "Crystal Guerra" }, { "id": 1, "name": "Ericka Stevens" }, { "id": 2, "name": "Mcleod Hunt" } ], "greeting": "Hello, Hawkins Lambert! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25918f186620783629", "index": 2725, "guid": "eeab9ead-ed81-483d-8439-d0f0604873f4", "isActive": false, "balance": "$1,436.35", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Osborn Guzman", "gender": "male", "company": "COMVEYOR", "email": "osbornguzman@comveyor.com", "phone": "+1 (977) 486-3967", "address": "238 Havemeyer Street, Felt, Guam, 5444", "about": "Cupidatat aute incididunt reprehenderit nisi minim. Nisi cillum dolore mollit adipisicing. Excepteur fugiat et cupidatat ut irure dolore elit amet aliquip. Eiusmod laborum dolore enim nisi elit nostrud eiusmod eiusmod incididunt laborum do in.\r\n", "registered": "2014-03-29T23:07:18-13:00", "latitude": 51.301002, "longitude": -12.878061, "tags": [ "sit", "eu", "incididunt", "ipsum", "elit", "dolor", "magna" ], "friends": [ { "id": 0, "name": "Buchanan Hickman" }, { "id": 1, "name": "Shannon Cooley" }, { "id": 2, "name": "Carole Ortiz" } ], "greeting": "Hello, Osborn Guzman! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2521c1f4f3c9566d02", "index": 2726, "guid": "c0db3d62-c281-465c-a1a8-d0087394f26f", "isActive": false, "balance": "$1,366.04", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Hilda French", "gender": "female", "company": "COSMETEX", "email": "hildafrench@cosmetex.com", "phone": "+1 (941) 452-2819", "address": "146 Jamison Lane, Savage, Virgin Islands, 6868", "about": "Quis magna qui velit Lorem magna enim. Enim non consequat Lorem incididunt id eiusmod ullamco fugiat sint. Id ut velit exercitation dolor aliquip culpa adipisicing ad minim. Ex Lorem ad duis do reprehenderit eiusmod. Ipsum dolor do aliqua ea. Aliquip id non nostrud eiusmod magna esse.\r\n", "registered": "2014-01-05T04:32:37-13:00", "latitude": -67.103747, "longitude": -79.187558, "tags": [ "ad", "id", "aute", "culpa", "occaecat", "pariatur", "ipsum" ], "friends": [ { "id": 0, "name": "Moss Carver" }, { "id": 1, "name": "Wilda Hughes" }, { "id": 2, "name": "Villarreal Acosta" } ], "greeting": "Hello, Hilda French! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea255ec18dd91930093c", "index": 2727, "guid": "16104e25-22ad-4ff1-a0f1-8a2ac85fcfb7", "isActive": false, "balance": "$2,539.07", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Weiss Christian", "gender": "male", "company": "GINKLE", "email": "weisschristian@ginkle.com", "phone": "+1 (986) 549-2868", "address": "520 Beverley Road, Juntura, Massachusetts, 6253", "about": "Id nisi non proident pariatur tempor sit laboris ullamco Lorem irure incididunt est. Labore id amet ad tempor amet esse in ex quis do fugiat officia consequat tempor. Nostrud officia officia est laborum commodo. Duis exercitation dolor sunt cupidatat reprehenderit cupidatat nulla ut tempor qui. Cillum amet irure ea quis occaecat incididunt sunt officia. Exercitation aliquip mollit proident enim pariatur aute. Non laboris mollit Lorem elit culpa amet in voluptate cupidatat enim.\r\n", "registered": "2014-04-08T04:53:31-12:00", "latitude": 84.123867, "longitude": -29.160263, "tags": [ "id", "qui", "aliquip", "sint", "dolore", "commodo", "cillum" ], "friends": [ { "id": 0, "name": "Rowland Powers" }, { "id": 1, "name": "Vonda Oliver" }, { "id": 2, "name": "Valerie Douglas" } ], "greeting": "Hello, Weiss Christian! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2597836bcdd120ce78", "index": 2728, "guid": "5d1358c2-d169-41c7-88b9-3e765122213d", "isActive": false, "balance": "$1,191.08", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Marta Brewer", "gender": "female", "company": "DEMINIMUM", "email": "martabrewer@deminimum.com", "phone": "+1 (957) 442-2212", "address": "246 Seaview Avenue, Glenshaw, Utah, 4795", "about": "Veniam ea incididunt id et aliqua nostrud laborum dolore esse voluptate consequat et dolor. Esse aliquip proident laboris eu. Labore commodo sint consequat qui occaecat eu minim ea dolor.\r\n", "registered": "2014-01-24T00:48:25-13:00", "latitude": -77.489473, "longitude": 103.682641, "tags": [ "aliqua", "velit", "laboris", "est", "quis", "velit", "incididunt" ], "friends": [ { "id": 0, "name": "Molly Walsh" }, { "id": 1, "name": "Noreen Herring" }, { "id": 2, "name": "Dale Chaney" } ], "greeting": "Hello, Marta Brewer! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25b716e96193739234", "index": 2729, "guid": "bfe0d57f-e8fc-49e6-a718-ae350f0b43bb", "isActive": false, "balance": "$3,510.17", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Scott Hunter", "gender": "male", "company": "UNIA", "email": "scotthunter@unia.com", "phone": "+1 (942) 518-3089", "address": "155 Cambridge Place, Caron, Montana, 812", "about": "Commodo Lorem eiusmod officia ea non laborum aliqua consectetur quis qui deserunt exercitation aliqua. Reprehenderit adipisicing dolor aliquip ipsum elit aliquip sunt quis. Lorem cupidatat commodo sint do id consequat voluptate. Ex consectetur in qui mollit ipsum et occaecat sunt culpa ipsum. Ut non est sint sunt veniam culpa ea ut magna reprehenderit et est.\r\n", "registered": "2014-01-06T18:57:39-13:00", "latitude": -41.86234, "longitude": 62.253854, "tags": [ "cupidatat", "mollit", "et", "cupidatat", "cillum", "do", "fugiat" ], "friends": [ { "id": 0, "name": "Cote Cantrell" }, { "id": 1, "name": "Burgess Monroe" }, { "id": 2, "name": "Vicky Harper" } ], "greeting": "Hello, Scott Hunter! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25e023d3d07d5f4d97", "index": 2730, "guid": "3dc85899-13f9-497e-a12f-8676421277f1", "isActive": false, "balance": "$3,367.70", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Faye Stout", "gender": "female", "company": "EMPIRICA", "email": "fayestout@empirica.com", "phone": "+1 (860) 489-2017", "address": "988 Pine Street, Bordelonville, Wisconsin, 6119", "about": "Sit velit laboris deserunt esse ut est fugiat aliqua sit anim ipsum pariatur nulla. Id est enim ipsum eu est ullamco Lorem adipisicing nostrud nulla. Labore aliqua anim consequat mollit fugiat velit sunt qui est pariatur qui. Pariatur cillum et incididunt consequat aliquip minim ex. Ullamco proident sunt amet excepteur ut ea ea cupidatat officia qui officia excepteur qui. Qui ullamco nulla id in.\r\n", "registered": "2014-07-29T22:18:48-12:00", "latitude": 87.869511, "longitude": 127.090033, "tags": [ "magna", "amet", "reprehenderit", "laborum", "exercitation", "id", "proident" ], "friends": [ { "id": 0, "name": "Colon Glenn" }, { "id": 1, "name": "Sanders Goff" }, { "id": 2, "name": "Hudson Cannon" } ], "greeting": "Hello, Faye Stout! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea257584be4ba8697431", "index": 2731, "guid": "31a09def-4403-4ec3-9430-8588726d4f24", "isActive": true, "balance": "$1,409.52", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Lee Buchanan", "gender": "male", "company": "AQUACINE", "email": "leebuchanan@aquacine.com", "phone": "+1 (816) 412-3420", "address": "929 Aberdeen Street, Clay, Maine, 4618", "about": "Anim ullamco in in dolor consectetur irure id amet incididunt ipsum irure pariatur. Sunt ad exercitation commodo mollit. Magna sit reprehenderit mollit ut nulla in. Sit sit pariatur dolor labore nulla. Duis officia reprehenderit dolor anim consequat officia irure incididunt sint ad fugiat qui do enim. Incididunt enim duis duis commodo voluptate eu qui et aliquip consequat laborum.\r\n", "registered": "2014-04-07T16:47:29-12:00", "latitude": -6.207128, "longitude": -14.538523, "tags": [ "laboris", "dolore", "laboris", "et", "laborum", "ex", "sint" ], "friends": [ { "id": 0, "name": "Curtis Trujillo" }, { "id": 1, "name": "Stacey Pittman" }, { "id": 2, "name": "Graciela Crane" } ], "greeting": "Hello, Lee Buchanan! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25cfa4194cf5db25db", "index": 2732, "guid": "f0440abb-d7cd-42c3-8e55-96b3aabe0923", "isActive": false, "balance": "$1,266.87", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Jennings Pruitt", "gender": "male", "company": "DANCERITY", "email": "jenningspruitt@dancerity.com", "phone": "+1 (949) 516-2607", "address": "114 Crooke Avenue, Elliott, Virginia, 2699", "about": "Ad sint fugiat ex consequat. Ex nulla proident incididunt labore nisi exercitation. Ad tempor incididunt ex excepteur laboris laboris veniam tempor nisi. Ullamco commodo qui laborum cillum ad consectetur consectetur ullamco reprehenderit in dolor minim.\r\n", "registered": "2014-02-22T03:57:42-13:00", "latitude": 55.403872, "longitude": 75.843208, "tags": [ "consequat", "pariatur", "excepteur", "reprehenderit", "tempor", "nulla", "minim" ], "friends": [ { "id": 0, "name": "Edwina Holmes" }, { "id": 1, "name": "Mclaughlin Bryant" }, { "id": 2, "name": "Susie Cummings" } ], "greeting": "Hello, Jennings Pruitt! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea259a52c435237b8d0d", "index": 2733, "guid": "9ae5668a-e06b-425f-9363-3aa3607f94de", "isActive": false, "balance": "$3,312.11", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Mcbride Gilmore", "gender": "male", "company": "OLYMPIX", "email": "mcbridegilmore@olympix.com", "phone": "+1 (846) 478-3975", "address": "301 Brightwater Court, Dawn, Kentucky, 9779", "about": "Fugiat proident proident sunt ut amet. Fugiat id irure incididunt deserunt nostrud dolor duis. Culpa dolore ea consectetur dolor velit. Magna consectetur anim qui aute qui anim ut magna ea ipsum eu. Reprehenderit mollit irure dolore excepteur voluptate mollit aliquip eu dolore aliquip consectetur Lorem sit laboris. Esse excepteur sit ad nulla culpa qui esse consectetur minim culpa amet occaecat in.\r\n", "registered": "2014-09-01T20:49:51-12:00", "latitude": -85.884824, "longitude": 156.278006, "tags": [ "officia", "ad", "culpa", "ut", "tempor", "irure", "in" ], "friends": [ { "id": 0, "name": "Lucy Powell" }, { "id": 1, "name": "Shana Silva" }, { "id": 2, "name": "Cooper Wong" } ], "greeting": "Hello, Mcbride Gilmore! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25222733b827c6f681", "index": 2734, "guid": "c18394c2-64d2-4f9a-985f-ba914d5e7d2f", "isActive": false, "balance": "$3,447.38", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Nadine Hood", "gender": "female", "company": "CALCULA", "email": "nadinehood@calcula.com", "phone": "+1 (941) 420-2065", "address": "194 Ira Court, Croom, Connecticut, 480", "about": "Sit cupidatat culpa minim adipisicing magna dolore excepteur laborum esse tempor. Adipisicing anim non dolore nostrud dolore ut nulla dolor. Et proident enim in elit. Magna dolor elit anim veniam aliquip dolor aute. Culpa fugiat tempor laborum irure cupidatat sunt esse. Occaecat officia commodo fugiat ipsum ut irure ullamco occaecat veniam ad quis pariatur voluptate ipsum. Ea sint veniam culpa dolor anim aute esse et ea qui cillum.\r\n", "registered": "2014-01-24T01:40:22-13:00", "latitude": 7.471524, "longitude": 153.028777, "tags": [ "cillum", "voluptate", "in", "do", "fugiat", "ullamco", "officia" ], "friends": [ { "id": 0, "name": "Wolfe Herrera" }, { "id": 1, "name": "Deidre Hanson" }, { "id": 2, "name": "Tillman Hammond" } ], "greeting": "Hello, Nadine Hood! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2568779c415b7109a6", "index": 2735, "guid": "26a756d9-754d-4d37-9d02-7c6b1121d3f3", "isActive": true, "balance": "$1,710.24", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Gordon Burnett", "gender": "male", "company": "DRAGBOT", "email": "gordonburnett@dragbot.com", "phone": "+1 (955) 567-3108", "address": "230 Bayview Place, Dunnavant, Mississippi, 680", "about": "Deserunt fugiat anim nostrud ex fugiat consectetur. Sit exercitation cillum laboris dolor eiusmod mollit aliquip ullamco officia culpa. Ex eu pariatur et ut. In velit incididunt sint culpa nostrud ipsum voluptate magna proident tempor sunt sunt. Non Lorem sit commodo qui exercitation anim consequat occaecat voluptate ut excepteur nostrud. Exercitation consequat quis laborum esse velit commodo minim eiusmod in. Adipisicing cupidatat adipisicing incididunt anim laborum nostrud culpa ad magna mollit eu.\r\n", "registered": "2014-03-02T03:19:17-13:00", "latitude": 73.403447, "longitude": -132.998231, "tags": [ "sint", "exercitation", "anim", "elit", "ex", "Lorem", "qui" ], "friends": [ { "id": 0, "name": "Howell Barr" }, { "id": 1, "name": "Kemp Bradley" }, { "id": 2, "name": "Francis Howard" } ], "greeting": "Hello, Gordon Burnett! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2582d51334e2e68905", "index": 2736, "guid": "30868ad7-bd58-4a2d-81ed-3415aad127f1", "isActive": false, "balance": "$1,043.33", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Mavis Webster", "gender": "female", "company": "SENSATE", "email": "maviswebster@sensate.com", "phone": "+1 (890) 585-3542", "address": "286 Kingsway Place, Colton, Washington, 2084", "about": "Non ullamco deserunt qui laboris aliqua. Do excepteur reprehenderit ut reprehenderit aliquip reprehenderit amet in ullamco nulla voluptate id aute reprehenderit. Lorem officia voluptate amet non Lorem qui do in. Culpa consequat non amet pariatur occaecat eu est.\r\n", "registered": "2014-02-15T06:51:06-13:00", "latitude": 12.475852, "longitude": 167.567906, "tags": [ "sunt", "nulla", "ullamco", "qui", "veniam", "aliquip", "commodo" ], "friends": [ { "id": 0, "name": "Hoover Weber" }, { "id": 1, "name": "Clark Faulkner" }, { "id": 2, "name": "Merrill Richardson" } ], "greeting": "Hello, Mavis Webster! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea254da6c1bea9388da5", "index": 2737, "guid": "a4adc9e3-8e4f-4bbf-ba9a-9215aa289a54", "isActive": false, "balance": "$3,215.03", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Karin Hess", "gender": "female", "company": "ISOLOGICA", "email": "karinhess@isologica.com", "phone": "+1 (974) 489-2024", "address": "429 Java Street, Farmers, Tennessee, 3880", "about": "Do excepteur aliquip nostrud nulla cillum id minim labore ea magna labore occaecat. Voluptate nisi ut tempor sit minim sunt est consectetur voluptate cillum culpa Lorem. Irure deserunt velit nostrud culpa et laborum culpa cillum. Amet voluptate enim qui velit. Fugiat sint non cillum dolore. Aute aliqua nulla quis est cupidatat occaecat. Cillum proident id amet ullamco ex nisi do ut et nulla.\r\n", "registered": "2014-04-11T23:05:25-12:00", "latitude": 7.839856, "longitude": -47.060979, "tags": [ "nisi", "deserunt", "occaecat", "Lorem", "aliqua", "reprehenderit", "ipsum" ], "friends": [ { "id": 0, "name": "Marquita Olson" }, { "id": 1, "name": "Harrell Ferrell" }, { "id": 2, "name": "Nguyen Blevins" } ], "greeting": "Hello, Karin Hess! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2534b2b3bb4c53a04a", "index": 2738, "guid": "2f2907ce-6a74-4bca-8741-c8ea868fe63c", "isActive": true, "balance": "$1,464.67", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Bates Andrews", "gender": "male", "company": "UTARA", "email": "batesandrews@utara.com", "phone": "+1 (824) 438-2492", "address": "620 Trucklemans Lane, Brownsville, Alabama, 6596", "about": "Nisi laborum anim adipisicing ipsum cupidatat nostrud excepteur occaecat. Reprehenderit eiusmod sit in Lorem cupidatat ullamco aliqua aliquip aliquip nisi ex ad. Deserunt eu culpa tempor qui do mollit pariatur.\r\n", "registered": "2014-05-10T19:46:08-12:00", "latitude": 50.502345, "longitude": -46.635588, "tags": [ "in", "officia", "et", "sunt", "ad", "consectetur", "irure" ], "friends": [ { "id": 0, "name": "Samantha Campos" }, { "id": 1, "name": "Delores Dean" }, { "id": 2, "name": "Guzman Cotton" } ], "greeting": "Hello, Bates Andrews! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25f7c86c2b4906bec7", "index": 2739, "guid": "43b30a9f-846e-43f7-afaa-a40c4add10eb", "isActive": true, "balance": "$1,737.24", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Maribel Winters", "gender": "female", "company": "TUBESYS", "email": "maribelwinters@tubesys.com", "phone": "+1 (975) 405-3869", "address": "911 Senator Street, Brewster, Ohio, 5244", "about": "Cupidatat cupidatat exercitation laborum dolor. Adipisicing ex voluptate ex excepteur mollit enim in ut elit nulla ullamco sit ea. Consequat duis irure quis tempor amet sunt consequat pariatur. Mollit esse occaecat laborum labore ipsum nisi aliquip elit.\r\n", "registered": "2014-09-09T21:43:15-12:00", "latitude": 18.079534, "longitude": 173.877355, "tags": [ "duis", "ut", "sit", "commodo", "proident", "anim", "labore" ], "friends": [ { "id": 0, "name": "Mcfadden Payne" }, { "id": 1, "name": "Rosario Puckett" }, { "id": 2, "name": "Kirby Finley" } ], "greeting": "Hello, Maribel Winters! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2521b0b33af8dae91f", "index": 2740, "guid": "5e0c43d7-9279-4d87-a8bb-e9f6df02b49d", "isActive": true, "balance": "$2,667.90", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Gayle Conrad", "gender": "female", "company": "ZILLATIDE", "email": "gayleconrad@zillatide.com", "phone": "+1 (906) 496-3953", "address": "147 Bayview Avenue, Morriston, Hawaii, 8117", "about": "Dolore mollit excepteur non dolor cillum est occaecat. Lorem id aute id nisi eu nisi ipsum. Nisi incididunt cupidatat est ex labore id ullamco ullamco ipsum qui incididunt. Eu ut quis eu enim pariatur. Sint veniam minim minim velit cillum sint amet fugiat ad labore in eu mollit. Proident anim sint ea qui dolor pariatur deserunt. Tempor minim culpa minim dolor duis aliqua dolor deserunt nostrud incididunt ut aliqua.\r\n", "registered": "2014-07-09T15:55:19-12:00", "latitude": -87.187246, "longitude": 77.297637, "tags": [ "quis", "anim", "mollit", "exercitation", "officia", "nostrud", "irure" ], "friends": [ { "id": 0, "name": "Karina Allison" }, { "id": 1, "name": "Guadalupe Dennis" }, { "id": 2, "name": "Doyle Bright" } ], "greeting": "Hello, Gayle Conrad! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25edaa7cdc6bb0fccf", "index": 2741, "guid": "75f54bcb-f89a-411a-a809-82b61d57c720", "isActive": true, "balance": "$1,926.57", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Lourdes Freeman", "gender": "female", "company": "COMVEY", "email": "lourdesfreeman@comvey.com", "phone": "+1 (934) 408-3554", "address": "603 Locust Street, Delwood, New Mexico, 6241", "about": "Sit adipisicing duis commodo voluptate do eu aliquip enim in id officia ex. Labore sit ipsum sit eu nulla ullamco ullamco nulla. Exercitation nisi ad amet eiusmod minim eu et sunt cupidatat nostrud do.\r\n", "registered": "2014-03-07T05:32:39-13:00", "latitude": -28.325795, "longitude": 100.526316, "tags": [ "amet", "dolore", "veniam", "id", "qui", "aliqua", "adipisicing" ], "friends": [ { "id": 0, "name": "Hill Vargas" }, { "id": 1, "name": "Kellie Fuentes" }, { "id": 2, "name": "Elaine Giles" } ], "greeting": "Hello, Lourdes Freeman! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2568176999a9cc7d97", "index": 2742, "guid": "25af1c22-1482-4c7d-bb35-1ed9e1896a98", "isActive": true, "balance": "$1,621.76", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Franklin Singleton", "gender": "male", "company": "MUSAPHICS", "email": "franklinsingleton@musaphics.com", "phone": "+1 (863) 508-3849", "address": "326 Dunham Place, Kenwood, Maryland, 1015", "about": "Consectetur excepteur minim sit ad aute deserunt culpa eu. Tempor esse amet fugiat veniam ipsum quis. Quis consectetur duis ex sit enim quis. Cillum laboris eu cillum Lorem voluptate aliqua ad ipsum qui cupidatat tempor nostrud.\r\n", "registered": "2014-07-22T16:41:51-12:00", "latitude": -28.295159, "longitude": -83.001756, "tags": [ "duis", "ad", "ut", "aliqua", "occaecat", "dolor", "nostrud" ], "friends": [ { "id": 0, "name": "Henrietta Farmer" }, { "id": 1, "name": "Dickson Lewis" }, { "id": 2, "name": "Leanna Castaneda" } ], "greeting": "Hello, Franklin Singleton! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2570561c2496738659", "index": 2743, "guid": "18d577e0-d820-40a3-a92d-2a1126dbb05d", "isActive": true, "balance": "$2,336.00", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Bianca Burgess", "gender": "female", "company": "MEDICROIX", "email": "biancaburgess@medicroix.com", "phone": "+1 (963) 580-3461", "address": "403 Miller Place, Detroit, Alaska, 8000", "about": "Consectetur nisi irure mollit magna consectetur in cillum mollit cillum laborum est. Qui tempor dolore est enim id officia officia. Pariatur elit duis veniam fugiat voluptate pariatur enim elit.\r\n", "registered": "2014-01-05T21:56:24-13:00", "latitude": -84.962854, "longitude": -147.854673, "tags": [ "eu", "officia", "laboris", "elit", "nostrud", "aliquip", "fugiat" ], "friends": [ { "id": 0, "name": "Bridget Brooks" }, { "id": 1, "name": "Bobbi Boyer" }, { "id": 2, "name": "Morse Cortez" } ], "greeting": "Hello, Bianca Burgess! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c610200be2acb13a", "index": 2744, "guid": "3561129f-4fc1-4ae1-8619-b1e1ef7d4afa", "isActive": true, "balance": "$1,710.37", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Evangelina Beck", "gender": "female", "company": "ACCRUEX", "email": "evangelinabeck@accruex.com", "phone": "+1 (864) 491-2195", "address": "977 Jay Street, Edenburg, Arizona, 4825", "about": "Dolore commodo consectetur irure enim pariatur. Nostrud dolor cillum deserunt occaecat eu laborum elit ipsum. Cupidatat ex adipisicing culpa quis irure. Eu incididunt aliquip irure aute irure qui veniam quis proident. Consectetur ea dolor eu veniam ullamco eiusmod ullamco ad aliquip commodo nisi reprehenderit ullamco.\r\n", "registered": "2014-05-20T10:39:16-12:00", "latitude": -55.227339, "longitude": -159.712502, "tags": [ "occaecat", "culpa", "nisi", "cupidatat", "culpa", "exercitation", "voluptate" ], "friends": [ { "id": 0, "name": "Sara Hurley" }, { "id": 1, "name": "Marietta Macias" }, { "id": 2, "name": "Snider Buckner" } ], "greeting": "Hello, Evangelina Beck! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25cd2f8e098a9ba96a", "index": 2745, "guid": "65c7d868-d641-4573-884b-4f2365c76c64", "isActive": false, "balance": "$3,604.33", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Washington Cooke", "gender": "male", "company": "TECHMANIA", "email": "washingtoncooke@techmania.com", "phone": "+1 (887) 435-3554", "address": "576 Atlantic Avenue, Geyserville, Federated States Of Micronesia, 200", "about": "Proident do enim eu Lorem quis sunt consequat proident eiusmod quis adipisicing enim consequat. Qui pariatur cillum consequat eu enim laborum eiusmod. Pariatur aliqua duis nostrud adipisicing ad est fugiat enim magna. Eiusmod proident incididunt consequat nisi ad dolore id laboris. Anim id aliquip id elit voluptate et ut non. Proident minim ullamco nostrud nulla nulla ipsum esse cupidatat dolore ullamco. Occaecat sit nulla duis ex nisi et.\r\n", "registered": "2014-08-09T12:34:44-12:00", "latitude": 4.135349, "longitude": -49.910404, "tags": [ "dolor", "consequat", "magna", "dolore", "cupidatat", "ad", "ipsum" ], "friends": [ { "id": 0, "name": "Erickson Garrett" }, { "id": 1, "name": "Christy Mcleod" }, { "id": 2, "name": "Lindsay Mcgee" } ], "greeting": "Hello, Washington Cooke! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25d0be08b018cc6460", "index": 2746, "guid": "2b5c5c92-e7bb-4e98-9a0d-816559fcbe5c", "isActive": true, "balance": "$3,242.03", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Nixon Horne", "gender": "male", "company": "QUILCH", "email": "nixonhorne@quilch.com", "phone": "+1 (828) 503-2362", "address": "968 Conover Street, Williams, Oklahoma, 1105", "about": "Voluptate voluptate officia veniam nulla id velit sit veniam est est tempor. Et deserunt aliqua ipsum sit excepteur esse cillum ut cupidatat commodo. Adipisicing ipsum labore cillum cillum velit nostrud exercitation. Adipisicing enim dolore ex mollit non adipisicing elit.\r\n", "registered": "2014-03-04T13:33:38-13:00", "latitude": 72.628703, "longitude": 1.723365, "tags": [ "adipisicing", "ipsum", "dolore", "reprehenderit", "veniam", "laborum", "irure" ], "friends": [ { "id": 0, "name": "Madeleine Kinney" }, { "id": 1, "name": "Chrystal Witt" }, { "id": 2, "name": "Lamb Perkins" } ], "greeting": "Hello, Nixon Horne! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea258a74ecb2d11710f5", "index": 2747, "guid": "0da1e1c6-773b-46d2-b45f-5db7618de12a", "isActive": true, "balance": "$2,247.57", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Roxanne Merrill", "gender": "female", "company": "DUFLEX", "email": "roxannemerrill@duflex.com", "phone": "+1 (992) 413-2526", "address": "948 Tapscott Avenue, Carrsville, Michigan, 6987", "about": "Duis Lorem enim ullamco ad et adipisicing enim elit deserunt cillum exercitation. Commodo mollit id voluptate in eiusmod dolore sint magna pariatur velit non commodo sit. Nisi ea Lorem deserunt tempor ex do enim pariatur pariatur anim aliquip Lorem ea do. Duis in occaecat minim et sunt sint labore consequat officia in fugiat labore. Deserunt irure irure qui mollit duis elit adipisicing ex veniam ad deserunt voluptate sit. Do magna est dolore et eu quis. Veniam magna id cupidatat labore in occaecat cillum ad aliquip.\r\n", "registered": "2014-02-10T11:28:35-13:00", "latitude": 53.081901, "longitude": -146.791572, "tags": [ "nostrud", "consectetur", "do", "exercitation", "anim", "reprehenderit", "consectetur" ], "friends": [ { "id": 0, "name": "Avery Cherry" }, { "id": 1, "name": "Page Lucas" }, { "id": 2, "name": "Juliana Hancock" } ], "greeting": "Hello, Roxanne Merrill! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e544bf8802ce0140", "index": 2748, "guid": "11f93e11-795e-4381-a53f-17d404a91933", "isActive": false, "balance": "$2,698.84", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Tracey Wilkerson", "gender": "female", "company": "QUANTASIS", "email": "traceywilkerson@quantasis.com", "phone": "+1 (908) 514-2327", "address": "797 Lancaster Avenue, Centerville, Kansas, 2753", "about": "Laboris ad culpa et exercitation dolore cupidatat veniam quis elit velit ea. Non est adipisicing officia est sunt. Proident reprehenderit nisi sit incididunt aliquip. Duis do deserunt do exercitation eiusmod minim voluptate nostrud cupidatat. Eu enim eiusmod dolore deserunt do qui nulla in voluptate mollit. Minim elit elit ea proident esse irure aute ullamco mollit aliqua.\r\n", "registered": "2014-03-15T14:56:13-13:00", "latitude": -58.963012, "longitude": 103.244612, "tags": [ "aliqua", "in", "veniam", "magna", "exercitation", "adipisicing", "pariatur" ], "friends": [ { "id": 0, "name": "Melanie Zamora" }, { "id": 1, "name": "Ray Mack" }, { "id": 2, "name": "Geraldine Oneill" } ], "greeting": "Hello, Tracey Wilkerson! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25d8d3fdc1027a7e3c", "index": 2749, "guid": "9391700f-64a4-4c82-9102-036c634989f3", "isActive": false, "balance": "$1,316.13", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Newman Lawson", "gender": "male", "company": "QUIZKA", "email": "newmanlawson@quizka.com", "phone": "+1 (893) 522-2475", "address": "953 Woodside Avenue, Dellview, South Dakota, 6929", "about": "Excepteur Lorem non tempor aliquip exercitation dolore cupidatat culpa ea. Lorem duis mollit officia velit do voluptate Lorem in ea ullamco laboris deserunt. Enim ipsum sit Lorem magna culpa minim proident tempor non.\r\n", "registered": "2014-04-10T10:50:13-12:00", "latitude": 56.463631, "longitude": -40.913925, "tags": [ "officia", "laboris", "consequat", "non", "esse", "ea", "laborum" ], "friends": [ { "id": 0, "name": "Sherman Thomas" }, { "id": 1, "name": "Patrica Stein" }, { "id": 2, "name": "Thelma Jacobs" } ], "greeting": "Hello, Newman Lawson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2510704ce799cb14fc", "index": 2750, "guid": "a56e8372-ff6b-435a-a41e-876ce5fbe1da", "isActive": false, "balance": "$2,001.15", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Dixie Malone", "gender": "female", "company": "COMVOY", "email": "dixiemalone@comvoy.com", "phone": "+1 (957) 585-2666", "address": "127 Emerald Street, Skyland, West Virginia, 6581", "about": "Sint consectetur pariatur cupidatat dolor anim reprehenderit dolor. Excepteur nisi laboris sit ullamco magna nulla adipisicing aliquip dolore officia veniam. Aute ut veniam pariatur mollit. Labore eiusmod in consectetur ex magna tempor adipisicing voluptate ipsum Lorem labore magna. Deserunt reprehenderit officia ex quis non. Quis adipisicing dolor sunt incididunt veniam pariatur et.\r\n", "registered": "2014-06-01T01:09:24-12:00", "latitude": -32.697788, "longitude": -86.185404, "tags": [ "reprehenderit", "elit", "occaecat", "tempor", "aliquip", "sit", "adipisicing" ], "friends": [ { "id": 0, "name": "Fuentes Lynch" }, { "id": 1, "name": "Johnston Hendrix" }, { "id": 2, "name": "Shepard Meyer" } ], "greeting": "Hello, Dixie Malone! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25221c4638b3ce4e91", "index": 2751, "guid": "f1e46904-a942-4eab-91a1-b942044ec48f", "isActive": false, "balance": "$3,859.82", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Boyle Walton", "gender": "male", "company": "FRANSCENE", "email": "boylewalton@franscene.com", "phone": "+1 (946) 482-3990", "address": "781 Nelson Street, Grenelefe, Texas, 3121", "about": "Magna sit nostrud velit aute esse nostrud consectetur duis ut non amet. Sint dolor adipisicing aliquip est. Magna veniam amet dolore duis ullamco cupidatat incididunt ut magna laboris deserunt ex. Exercitation laborum aute aute anim aute non irure aliqua cupidatat. Et minim reprehenderit amet voluptate mollit commodo commodo.\r\n", "registered": "2014-04-25T08:49:22-12:00", "latitude": -9.401183, "longitude": -105.833957, "tags": [ "incididunt", "qui", "aliquip", "labore", "tempor", "consectetur", "reprehenderit" ], "friends": [ { "id": 0, "name": "Agnes Stanley" }, { "id": 1, "name": "Anne Collins" }, { "id": 2, "name": "Browning Sosa" } ], "greeting": "Hello, Boyle Walton! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25a8e5a1e0e9209db8", "index": 2752, "guid": "e26b6139-b38c-41cd-bb11-24968667367f", "isActive": true, "balance": "$1,930.51", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Gay Sampson", "gender": "female", "company": "ZUVY", "email": "gaysampson@zuvy.com", "phone": "+1 (995) 586-2077", "address": "628 Moffat Street, Beason, Oregon, 3708", "about": "Sunt ex reprehenderit tempor ipsum adipisicing sit excepteur dolor sit fugiat cupidatat quis excepteur consectetur. Et id non duis nisi cupidatat dolore non duis. Culpa est eiusmod dolor est. Duis eiusmod commodo dolore do.\r\n", "registered": "2014-03-10T08:03:05-13:00", "latitude": 25.4945, "longitude": 41.297518, "tags": [ "laborum", "minim", "proident", "sunt", "quis", "qui", "tempor" ], "friends": [ { "id": 0, "name": "Annabelle Cain" }, { "id": 1, "name": "Ruby Sawyer" }, { "id": 2, "name": "Elva Wilder" } ], "greeting": "Hello, Gay Sampson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2547052beacc20c9eb", "index": 2753, "guid": "a8fd63e9-db39-4a28-bd49-38360c5ca0db", "isActive": true, "balance": "$1,437.14", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Esperanza Mccray", "gender": "female", "company": "ACCUFARM", "email": "esperanzamccray@accufarm.com", "phone": "+1 (926) 536-2753", "address": "164 Anthony Street, Fairview, Nevada, 8866", "about": "Aliquip quis quis laborum consequat sint nisi. Adipisicing anim irure aliquip fugiat officia veniam tempor sit. Esse Lorem sit deserunt minim. Non fugiat ad aliqua pariatur nulla officia ipsum. Ex commodo irure duis aute ut dolor eu sint commodo commodo velit magna.\r\n", "registered": "2014-07-20T14:47:16-12:00", "latitude": -38.808326, "longitude": 154.637976, "tags": [ "fugiat", "veniam", "non", "commodo", "labore", "voluptate", "proident" ], "friends": [ { "id": 0, "name": "Christi Sanford" }, { "id": 1, "name": "Debra Cardenas" }, { "id": 2, "name": "Pena Morrow" } ], "greeting": "Hello, Esperanza Mccray! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2565b73a5073b0a516", "index": 2754, "guid": "b101b5dc-63ac-43e8-87f4-7d49c8a1d9fe", "isActive": true, "balance": "$2,121.11", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Valarie Livingston", "gender": "female", "company": "WEBIOTIC", "email": "valarielivingston@webiotic.com", "phone": "+1 (810) 583-3978", "address": "845 Beaver Street, Bowmansville, Minnesota, 7220", "about": "Voluptate eu culpa et sint. Incididunt id irure duis adipisicing aliqua anim adipisicing pariatur duis esse Lorem aliquip. Cillum id enim ad cillum exercitation est aliqua nostrud enim est.\r\n", "registered": "2014-04-30T11:22:27-12:00", "latitude": 60.141974, "longitude": -168.722663, "tags": [ "est", "mollit", "voluptate", "Lorem", "officia", "eiusmod", "et" ], "friends": [ { "id": 0, "name": "Barr Hamilton" }, { "id": 1, "name": "Bradshaw Shepherd" }, { "id": 2, "name": "James Clayton" } ], "greeting": "Hello, Valarie Livingston! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25961f36aa2b26c465", "index": 2755, "guid": "49e468f0-0f7b-4c6e-8da5-401b408b5bba", "isActive": false, "balance": "$1,228.19", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Oliver Atkinson", "gender": "male", "company": "EARBANG", "email": "oliveratkinson@earbang.com", "phone": "+1 (806) 511-2974", "address": "230 Aster Court, Watchtower, Missouri, 5248", "about": "Dolor amet occaecat amet nostrud ad non aliquip aute. Nostrud officia tempor Lorem irure magna ut non veniam et labore irure ex pariatur consequat. Proident non minim non irure labore quis dolore esse ex nostrud cupidatat sit aliqua proident.\r\n", "registered": "2014-01-24T05:26:16-13:00", "latitude": 18.973469, "longitude": 50.239366, "tags": [ "in", "reprehenderit", "consectetur", "occaecat", "aute", "adipisicing", "enim" ], "friends": [ { "id": 0, "name": "Melinda Clay" }, { "id": 1, "name": "Margaret Whitehead" }, { "id": 2, "name": "Ayers Rush" } ], "greeting": "Hello, Oliver Atkinson! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25dd3b7d7be3a22cc7", "index": 2756, "guid": "caa16fa0-7faa-4416-8ce8-1e86c17b9802", "isActive": false, "balance": "$3,353.36", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Adrienne Hayden", "gender": "female", "company": "KONNECT", "email": "adriennehayden@konnect.com", "phone": "+1 (933) 471-3291", "address": "457 Lake Street, Nogal, Rhode Island, 4900", "about": "Dolore consectetur et officia eu. Dolore ad veniam consectetur reprehenderit. Amet non est duis magna officia voluptate excepteur pariatur incididunt tempor. Anim excepteur duis ex reprehenderit laboris deserunt ipsum aliqua quis cupidatat dolor ullamco cupidatat do. Id dolor mollit aliquip quis cillum sint aute nulla amet consectetur commodo magna ea. Lorem aliqua in ad eu laboris non enim eu deserunt laboris occaecat. Pariatur Lorem nisi ex culpa proident occaecat.\r\n", "registered": "2014-05-26T14:44:32-12:00", "latitude": 2.555737, "longitude": 165.252468, "tags": [ "in", "occaecat", "ea", "nostrud", "sint", "ex", "qui" ], "friends": [ { "id": 0, "name": "Angelia Wooten" }, { "id": 1, "name": "Kathrine Blankenship" }, { "id": 2, "name": "Essie Kent" } ], "greeting": "Hello, Adrienne Hayden! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c4da62fbc80cc603", "index": 2757, "guid": "e0230a44-a7e7-4ea0-806e-838be4ebc048", "isActive": false, "balance": "$2,692.57", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Lauri Ramirez", "gender": "female", "company": "ZIGGLES", "email": "lauriramirez@ziggles.com", "phone": "+1 (976) 408-3460", "address": "492 Grattan Street, Highland, Florida, 9707", "about": "Quis culpa qui incididunt minim. Nulla consectetur voluptate et culpa nostrud amet amet culpa consectetur consequat aliquip. Nostrud id ut commodo officia officia fugiat. Lorem veniam labore occaecat cupidatat laboris culpa laborum excepteur laboris. Officia cillum reprehenderit tempor ullamco ullamco id ipsum sit fugiat irure proident duis. Est laboris voluptate veniam culpa.\r\n", "registered": "2014-06-20T01:15:21-12:00", "latitude": -70.725202, "longitude": 66.771752, "tags": [ "magna", "commodo", "eiusmod", "ullamco", "exercitation", "Lorem", "tempor" ], "friends": [ { "id": 0, "name": "Patrice Hardy" }, { "id": 1, "name": "Burks Ross" }, { "id": 2, "name": "Shelia Wade" } ], "greeting": "Hello, Lauri Ramirez! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25f34a290960e90b35", "index": 2758, "guid": "22d5b76e-4d47-4539-9401-7e2c3f8ae8d5", "isActive": false, "balance": "$2,034.61", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Hatfield Cunningham", "gender": "male", "company": "EVENTIX", "email": "hatfieldcunningham@eventix.com", "phone": "+1 (872) 550-2469", "address": "464 Lamont Court, Rivers, North Carolina, 3837", "about": "Ullamco nulla quis est et officia culpa do aliqua sit qui reprehenderit. Officia est aliqua et ut est ut irure. Velit dolor do aliqua consequat eiusmod dolore in amet ut cillum. Commodo qui do mollit excepteur minim eiusmod culpa veniam elit anim ipsum cupidatat in. Consectetur proident sint officia cupidatat amet.\r\n", "registered": "2014-03-28T22:46:36-13:00", "latitude": 82.189535, "longitude": -138.166398, "tags": [ "in", "reprehenderit", "exercitation", "amet", "sit", "elit", "ut" ], "friends": [ { "id": 0, "name": "Russo Noble" }, { "id": 1, "name": "Cleo Montgomery" }, { "id": 2, "name": "Hester Tran" } ], "greeting": "Hello, Hatfield Cunningham! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25548fb64e7ae15d7c", "index": 2759, "guid": "5a20852a-5bc2-421b-8eec-03b91693f6d6", "isActive": false, "balance": "$1,309.43", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Mejia Valdez", "gender": "male", "company": "COMSTAR", "email": "mejiavaldez@comstar.com", "phone": "+1 (909) 441-3740", "address": "660 Bethel Loop, Smeltertown, New Hampshire, 4623", "about": "Irure do ea proident deserunt labore laboris officia sint. Occaecat nulla adipisicing cillum duis magna dolor. Est reprehenderit qui tempor quis aliquip ea minim.\r\n", "registered": "2014-01-07T18:56:30-13:00", "latitude": 77.823655, "longitude": 72.773681, "tags": [ "Lorem", "dolor", "mollit", "magna", "ipsum", "nostrud", "et" ], "friends": [ { "id": 0, "name": "Lelia Hebert" }, { "id": 1, "name": "Sonya Simmons" }, { "id": 2, "name": "Gonzalez Fox" } ], "greeting": "Hello, Mejia Valdez! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25fcf1c35b0e6cac79", "index": 2760, "guid": "c7fdbb50-6af1-41d3-963c-c705e0096a00", "isActive": false, "balance": "$1,468.34", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Chan Mosley", "gender": "male", "company": "ASSISTIA", "email": "chanmosley@assistia.com", "phone": "+1 (879) 509-3431", "address": "490 Judge Street, Henrietta, Arkansas, 8654", "about": "Laboris esse eiusmod fugiat duis est eu duis quis mollit pariatur cupidatat velit nulla eiusmod. Nulla incididunt ex ea aute dolor laboris commodo do laborum enim occaecat nostrud. Officia non enim veniam laboris. Dolor adipisicing amet non veniam magna nulla do irure adipisicing qui proident irure. Do do incididunt duis id est esse voluptate minim qui Lorem magna. Tempor consequat ullamco ad esse aute. Magna fugiat nostrud qui duis do aliquip aute ut.\r\n", "registered": "2014-08-04T04:54:54-12:00", "latitude": 64.16473, "longitude": -61.235735, "tags": [ "eu", "ad", "sit", "duis", "ex", "fugiat", "aliqua" ], "friends": [ { "id": 0, "name": "Ava Cole" }, { "id": 1, "name": "Christie Waters" }, { "id": 2, "name": "Mallory Vega" } ], "greeting": "Hello, Chan Mosley! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25325ab536ac32a4e7", "index": 2761, "guid": "f1215eec-0f27-4eaa-85aa-e7d50a787f80", "isActive": false, "balance": "$1,217.13", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Kristen Madden", "gender": "female", "company": "RAMEON", "email": "kristenmadden@rameon.com", "phone": "+1 (979) 600-2875", "address": "743 Metrotech Courtr, Cloverdale, Iowa, 4567", "about": "Anim velit elit dolore sit ad commodo aute. Exercitation sint dolor cillum aute qui laborum consequat. Culpa est esse id labore ipsum irure ut minim velit ut. Proident exercitation et adipisicing officia laboris adipisicing elit nostrud aliqua ad proident. Esse officia et dolor adipisicing sunt consectetur et. Excepteur consectetur labore ut sint elit eu. Aliqua consectetur est eiusmod qui fugiat sunt ullamco officia.\r\n", "registered": "2014-06-28T19:58:58-12:00", "latitude": -53.767402, "longitude": -124.863632, "tags": [ "laborum", "deserunt", "veniam", "fugiat", "ipsum", "reprehenderit", "laborum" ], "friends": [ { "id": 0, "name": "Buckner Bradford" }, { "id": 1, "name": "Pauline Slater" }, { "id": 2, "name": "Diane Maddox" } ], "greeting": "Hello, Kristen Madden! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25994a630974dd7214", "index": 2762, "guid": "c6c147e5-2d48-4cf1-b216-fbecb94ba635", "isActive": false, "balance": "$2,379.17", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Alyson Ward", "gender": "female", "company": "MAGMINA", "email": "alysonward@magmina.com", "phone": "+1 (995) 537-2068", "address": "987 Lewis Avenue, Faxon, Nebraska, 1438", "about": "Commodo culpa pariatur non consequat incididunt occaecat adipisicing deserunt Lorem adipisicing. Tempor dolore est duis est do sunt magna consequat ad. Quis laboris esse sit ad do exercitation reprehenderit aliquip voluptate elit. Magna laborum voluptate commodo reprehenderit ad aute duis excepteur aute non fugiat occaecat nostrud. Ut enim est laborum excepteur quis. Ullamco nostrud proident laborum elit. Laborum aute reprehenderit adipisicing adipisicing enim.\r\n", "registered": "2014-08-20T05:25:31-12:00", "latitude": 18.791462, "longitude": -116.397008, "tags": [ "et", "ea", "voluptate", "mollit", "culpa", "aliqua", "ipsum" ], "friends": [ { "id": 0, "name": "Carroll Rice" }, { "id": 1, "name": "Kris Hendricks" }, { "id": 2, "name": "Evelyn Morse" } ], "greeting": "Hello, Alyson Ward! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea259291a60bdc1c6bb1", "index": 2763, "guid": "c3918e91-0884-4ea3-9548-2f204a01e6b1", "isActive": true, "balance": "$2,361.06", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Natalie James", "gender": "female", "company": "PYRAMIA", "email": "nataliejames@pyramia.com", "phone": "+1 (811) 566-2373", "address": "322 Bay Parkway, Fruitdale, District Of Columbia, 5128", "about": "Voluptate incididunt adipisicing et occaecat ea eu commodo et ipsum sit enim duis dolor incididunt. Non aliqua fugiat sint cupidatat. Adipisicing nostrud excepteur Lorem ipsum aute minim cupidatat mollit eiusmod non magna nostrud proident.\r\n", "registered": "2014-03-12T08:54:52-13:00", "latitude": -81.532491, "longitude": -32.767845, "tags": [ "aliquip", "qui", "aute", "sit", "esse", "elit", "amet" ], "friends": [ { "id": 0, "name": "Bobbie Griffith" }, { "id": 1, "name": "Byrd Webb" }, { "id": 2, "name": "Brooke Kirk" } ], "greeting": "Hello, Natalie James! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25200514b67fcad592", "index": 2764, "guid": "8d4053b5-82fd-4a45-b46c-d946d20144a9", "isActive": false, "balance": "$3,999.44", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Rosalinda Rutledge", "gender": "female", "company": "QUONATA", "email": "rosalindarutledge@quonata.com", "phone": "+1 (834) 560-2740", "address": "169 Lincoln Avenue, Munjor, New Jersey, 2010", "about": "Et ad id aliqua fugiat excepteur laboris mollit. Ut laboris ullamco commodo sit aliqua quis do pariatur tempor sit. Ullamco ut enim non Lorem dolor fugiat ex veniam velit consectetur ut. Officia elit excepteur sunt eiusmod occaecat Lorem do consectetur ex.\r\n", "registered": "2014-07-31T17:10:11-12:00", "latitude": 25.992514, "longitude": -96.357395, "tags": [ "irure", "est", "aute", "consectetur", "fugiat", "ad", "ea" ], "friends": [ { "id": 0, "name": "Ellison Baker" }, { "id": 1, "name": "Faulkner Daniels" }, { "id": 2, "name": "Shawn Wright" } ], "greeting": "Hello, Rosalinda Rutledge! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25ff8a94ea77743326", "index": 2765, "guid": "964803f0-1746-4049-88e3-e5f5fd684827", "isActive": false, "balance": "$3,655.51", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Farmer Patel", "gender": "male", "company": "GOLISTIC", "email": "farmerpatel@golistic.com", "phone": "+1 (959) 419-3192", "address": "647 Milford Street, Valmy, Palau, 7790", "about": "Do anim nulla irure cillum id dolore aliquip adipisicing in labore enim pariatur cupidatat commodo. Proident aliqua deserunt nostrud fugiat mollit. Sit officia proident ut Lorem non reprehenderit officia officia pariatur id culpa aute dolore. Pariatur Lorem sunt excepteur irure id qui exercitation aute irure consequat ut esse. Anim et eiusmod laborum ex reprehenderit deserunt fugiat cillum velit nulla minim laboris ex. Mollit voluptate aliqua Lorem exercitation aliquip nulla id laborum id cillum exercitation in. Irure irure adipisicing veniam mollit ipsum ad dolore duis excepteur proident magna in ipsum.\r\n", "registered": "2014-03-07T15:03:32-13:00", "latitude": -4.604945, "longitude": 173.259175, "tags": [ "nulla", "minim", "proident", "irure", "cillum", "laborum", "veniam" ], "friends": [ { "id": 0, "name": "Nelda Cook" }, { "id": 1, "name": "Morgan Bullock" }, { "id": 2, "name": "Davis Nicholson" } ], "greeting": "Hello, Farmer Patel! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2596a8b0e9ed42f921", "index": 2766, "guid": "82966fc1-8f3c-49ec-ae6a-2d4524002992", "isActive": true, "balance": "$2,579.70", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Frank Grimes", "gender": "male", "company": "INCUBUS", "email": "frankgrimes@incubus.com", "phone": "+1 (978) 442-2941", "address": "174 Veterans Avenue, Brantleyville, Puerto Rico, 4106", "about": "Cupidatat cillum aliqua occaecat consequat aliquip elit aute ea exercitation dolor Lorem. Magna culpa duis incididunt quis quis adipisicing id do. Veniam exercitation sint labore velit veniam sint sunt non consectetur incididunt velit tempor elit. Dolor proident ex quis dolore ea dolor ea amet anim elit. Amet proident labore fugiat non quis.\r\n", "registered": "2014-04-28T12:57:23-12:00", "latitude": 82.82251, "longitude": -79.977948, "tags": [ "anim", "magna", "dolore", "id", "velit", "labore", "cupidatat" ], "friends": [ { "id": 0, "name": "Lewis Olsen" }, { "id": 1, "name": "Sallie Ramsey" }, { "id": 2, "name": "Pollard Barrera" } ], "greeting": "Hello, Frank Grimes! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea257ba62b36035d7e77", "index": 2767, "guid": "d56adee6-4846-42d8-a251-ca8183eda274", "isActive": false, "balance": "$2,400.65", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Powers Moses", "gender": "male", "company": "ENDIPIN", "email": "powersmoses@endipin.com", "phone": "+1 (994) 468-3647", "address": "443 Aitken Place, Northridge, California, 3897", "about": "Anim cillum incididunt cupidatat dolor nisi. Lorem magna proident nisi et ullamco ipsum fugiat. Quis officia consequat ut proident do labore aliquip occaecat pariatur adipisicing dolor non dolor nulla. Occaecat culpa duis ea fugiat pariatur enim aute ex aliqua esse. Sint veniam aute ut veniam duis. Ullamco ad consectetur ad cupidatat laborum duis eiusmod sint. Commodo occaecat ad officia nostrud exercitation sit.\r\n", "registered": "2014-07-21T17:24:41-12:00", "latitude": 45.29467, "longitude": 106.520518, "tags": [ "est", "occaecat", "mollit", "ipsum", "exercitation", "aliqua", "Lorem" ], "friends": [ { "id": 0, "name": "Lucille Huff" }, { "id": 1, "name": "Leach Mcintyre" }, { "id": 2, "name": "Florence Hicks" } ], "greeting": "Hello, Powers Moses! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2535c357543c1a7042", "index": 2768, "guid": "14035b46-6ce3-4ff6-95cd-5735cbe6bcd6", "isActive": true, "balance": "$1,387.39", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Pacheco Carlson", "gender": "male", "company": "GAPTEC", "email": "pachecocarlson@gaptec.com", "phone": "+1 (925) 521-4000", "address": "901 Harwood Place, Cornfields, Vermont, 9302", "about": "Non cupidatat adipisicing esse occaecat aliquip nulla magna commodo laboris irure incididunt id. Laborum eiusmod in cupidatat esse duis enim velit cillum enim anim mollit. Mollit veniam nostrud consectetur adipisicing occaecat adipisicing est nulla cillum esse reprehenderit nulla pariatur consequat. Non laborum sit est irure qui excepteur qui dolore laboris cillum eu et. Aute nisi adipisicing occaecat elit Lorem reprehenderit. Non eu sint duis sunt eiusmod est.\r\n", "registered": "2014-05-08T05:32:38-12:00", "latitude": -49.989101, "longitude": 93.827756, "tags": [ "sit", "dolor", "occaecat", "culpa", "do", "in", "dolore" ], "friends": [ { "id": 0, "name": "Luann Ayers" }, { "id": 1, "name": "Helen Leach" }, { "id": 2, "name": "Foster Lyons" } ], "greeting": "Hello, Pacheco Carlson! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea253d9725451f41977f", "index": 2769, "guid": "0307a9d4-dfe8-4f21-ad03-13abcd4ee7c9", "isActive": true, "balance": "$1,422.49", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Lakisha Robles", "gender": "female", "company": "COGENTRY", "email": "lakisharobles@cogentry.com", "phone": "+1 (898) 503-2997", "address": "387 Brooklyn Avenue, Gratton, Indiana, 6283", "about": "Ullamco est officia exercitation ex velit eiusmod fugiat Lorem dolor amet do aliquip. Aliquip nostrud nostrud nulla dolor labore ad culpa exercitation ad eu et tempor voluptate. Tempor velit commodo nulla commodo Lorem ea aliquip nostrud nostrud esse ex ut. Do ullamco non adipisicing aute deserunt nulla anim cillum elit proident cillum ad officia. Ea do non elit tempor id in consectetur consequat. Est do ex commodo elit qui aliquip elit cillum. Nisi aliquip aliquip velit reprehenderit.\r\n", "registered": "2014-09-01T04:28:36-12:00", "latitude": -40.520854, "longitude": 175.730802, "tags": [ "consectetur", "pariatur", "consequat", "do", "pariatur", "amet", "veniam" ], "friends": [ { "id": 0, "name": "Rodriquez Curry" }, { "id": 1, "name": "Jami Marquez" }, { "id": 2, "name": "Wyatt Acevedo" } ], "greeting": "Hello, Lakisha Robles! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25c8d2635688fb8c28", "index": 2770, "guid": "58021e48-8758-4d9b-b2e7-d86553a47bf2", "isActive": true, "balance": "$2,466.40", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Jordan Reeves", "gender": "male", "company": "TRASOLA", "email": "jordanreeves@trasola.com", "phone": "+1 (985) 492-3863", "address": "937 Olive Street, Edinburg, Illinois, 1107", "about": "Officia magna laborum et veniam elit sint officia aliquip duis. Velit commodo eiusmod laborum ut. Nisi nisi laboris occaecat eu occaecat. Laborum enim in elit reprehenderit ut nisi cillum ut aliqua ea dolor consectetur. Nostrud mollit commodo incididunt enim amet in culpa commodo. Deserunt dolor veniam voluptate amet nulla aliqua nulla sunt eiusmod irure ea esse.\r\n", "registered": "2014-04-01T20:56:47-13:00", "latitude": 28.655475, "longitude": 23.260886, "tags": [ "deserunt", "ad", "consectetur", "veniam", "culpa", "ea", "commodo" ], "friends": [ { "id": 0, "name": "Cunningham Irwin" }, { "id": 1, "name": "Janice Terrell" }, { "id": 2, "name": "Montoya Schmidt" } ], "greeting": "Hello, Jordan Reeves! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25fe952a5c993368e6", "index": 2771, "guid": "1d818ba0-5948-4e21-a068-cb9ad4ef054d", "isActive": true, "balance": "$2,042.43", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Monroe Delaney", "gender": "male", "company": "VORTEXACO", "email": "monroedelaney@vortexaco.com", "phone": "+1 (985) 521-3669", "address": "227 Johnson Street, Olney, South Carolina, 8059", "about": "Id nisi mollit sint veniam consectetur cillum laborum adipisicing eiusmod dolor pariatur ullamco irure. Proident est incididunt dolore deserunt ad. Culpa cupidatat consequat sunt Lorem id.\r\n", "registered": "2014-08-23T15:47:42-12:00", "latitude": 5.376312, "longitude": -34.351286, "tags": [ "sit", "pariatur", "quis", "mollit", "exercitation", "aute", "laborum" ], "friends": [ { "id": 0, "name": "Waters Wyatt" }, { "id": 1, "name": "Gaines Lindsey" }, { "id": 2, "name": "Darlene Head" } ], "greeting": "Hello, Monroe Delaney! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25129fea7bd0eebf93", "index": 2772, "guid": "5e8a8e33-5163-4448-ba4d-369b0e770c17", "isActive": true, "balance": "$3,646.37", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Cotton Morrison", "gender": "male", "company": "QUAILCOM", "email": "cottonmorrison@quailcom.com", "phone": "+1 (949) 487-3604", "address": "383 Hutchinson Court, Elliston, American Samoa, 609", "about": "Aliquip non enim ex qui adipisicing quis excepteur exercitation. Magna est nisi excepteur mollit reprehenderit voluptate ut et non incididunt ipsum nostrud. Eiusmod velit nostrud enim minim. Velit ex veniam exercitation proident velit occaecat. Sint ipsum anim veniam ea id non voluptate nulla nisi enim in tempor. Incididunt ut et ut ut eiusmod irure ipsum cupidatat deserunt.\r\n", "registered": "2014-02-10T13:54:02-13:00", "latitude": 55.195031, "longitude": 2.845138, "tags": [ "sit", "fugiat", "et", "consectetur", "magna", "enim", "tempor" ], "friends": [ { "id": 0, "name": "Tabatha Crawford" }, { "id": 1, "name": "Lea Espinoza" }, { "id": 2, "name": "Simon Sullivan" } ], "greeting": "Hello, Cotton Morrison! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2534614aae70eeaa5c", "index": 2773, "guid": "507b29a4-3bd9-4d4b-9c72-5d0049eee02d", "isActive": false, "balance": "$3,084.18", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Rios Day", "gender": "male", "company": "EMOLTRA", "email": "riosday@emoltra.com", "phone": "+1 (812) 591-2944", "address": "375 Murdock Court, Tolu, Delaware, 7163", "about": "Laborum laboris exercitation incididunt qui irure voluptate. Excepteur dolore anim officia deserunt culpa proident culpa occaecat consectetur. Magna adipisicing non id id dolore eiusmod elit enim qui fugiat in. Quis sit minim nostrud et culpa. Enim qui esse cillum aliquip ad consequat. Non labore reprehenderit aliquip veniam nostrud esse irure enim.\r\n", "registered": "2014-05-10T19:18:41-12:00", "latitude": -42.052498, "longitude": 23.134178, "tags": [ "non", "proident", "aliquip", "aliqua", "Lorem", "do", "sunt" ], "friends": [ { "id": 0, "name": "Veronica Harmon" }, { "id": 1, "name": "Loretta English" }, { "id": 2, "name": "Craft Buckley" } ], "greeting": "Hello, Rios Day! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25fca1e1e3b451c231", "index": 2774, "guid": "e5c78fa8-2424-40ae-90c8-ea67e6159aa3", "isActive": true, "balance": "$2,834.44", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Angelita Haley", "gender": "female", "company": "DAIDO", "email": "angelitahaley@daido.com", "phone": "+1 (871) 553-2638", "address": "287 Bennet Court, Inkerman, Pennsylvania, 8538", "about": "Sunt magna cupidatat id culpa cupidatat. Ad excepteur elit nisi pariatur voluptate sit reprehenderit excepteur do nostrud magna ut. Labore et nulla enim culpa officia dolor ea non nulla est deserunt. Deserunt duis aute amet amet ut laboris ullamco. Dolore cillum irure esse reprehenderit aliquip commodo elit officia non velit. Sit id irure ad nulla deserunt ut cillum occaecat non anim aliqua. Aliquip et elit exercitation consectetur velit anim commodo.\r\n", "registered": "2014-08-25T22:43:06-12:00", "latitude": 83.454301, "longitude": 11.746682, "tags": [ "sunt", "irure", "velit", "ad", "eu", "pariatur", "exercitation" ], "friends": [ { "id": 0, "name": "Price Mullen" }, { "id": 1, "name": "Roseann Bray" }, { "id": 2, "name": "Carver Gay" } ], "greeting": "Hello, Angelita Haley! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea254b7be460ad3b2d72", "index": 2775, "guid": "356f298c-fa8f-4c66-b0b5-4a0d9cdb8971", "isActive": false, "balance": "$2,500.16", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Helga Pitts", "gender": "female", "company": "DOGSPA", "email": "helgapitts@dogspa.com", "phone": "+1 (915) 423-3041", "address": "448 Heath Place, Singer, Georgia, 1268", "about": "Tempor anim officia deserunt sunt ad reprehenderit incididunt. Mollit proident culpa aliqua aliquip velit nostrud excepteur duis eu pariatur consequat laboris anim est. Enim amet officia fugiat tempor.\r\n", "registered": "2014-01-31T01:40:51-13:00", "latitude": -37.887957, "longitude": -123.653188, "tags": [ "veniam", "ea", "in", "mollit", "in", "enim", "reprehenderit" ], "friends": [ { "id": 0, "name": "Shirley Vance" }, { "id": 1, "name": "Moore Kidd" }, { "id": 2, "name": "Garrison Bridges" } ], "greeting": "Hello, Helga Pitts! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25514429a234a0fb81", "index": 2776, "guid": "fee77d84-1b3e-4ce8-acc9-b0056e2590c0", "isActive": false, "balance": "$3,622.33", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Nina Alford", "gender": "female", "company": "COMCUR", "email": "ninaalford@comcur.com", "phone": "+1 (844) 569-3340", "address": "494 Clifford Place, Islandia, North Dakota, 7795", "about": "Tempor enim qui officia est cillum ipsum elit ea ex tempor. Mollit occaecat tempor aliquip voluptate ea aliquip. Aliquip fugiat tempor laborum dolore aliquip proident minim laboris et eu incididunt. Nulla proident exercitation cupidatat consectetur exercitation tempor nostrud laborum mollit fugiat excepteur magna. Adipisicing nostrud minim minim excepteur sit.\r\n", "registered": "2014-03-05T09:44:44-13:00", "latitude": 48.974451, "longitude": -81.126052, "tags": [ "officia", "eu", "ipsum", "tempor", "non", "consectetur", "velit" ], "friends": [ { "id": 0, "name": "Charlene Riley" }, { "id": 1, "name": "Helena Brennan" }, { "id": 2, "name": "Peterson Austin" } ], "greeting": "Hello, Nina Alford! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25ac52b3fe7a3bc281", "index": 2777, "guid": "642eb425-c99e-4868-a0fd-b86aed3415d1", "isActive": true, "balance": "$2,932.25", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Nunez Oneil", "gender": "male", "company": "BUZZOPIA", "email": "nunezoneil@buzzopia.com", "phone": "+1 (820) 455-3833", "address": "841 Milton Street, Succasunna, Louisiana, 320", "about": "Lorem esse reprehenderit voluptate aute do magna id laborum mollit magna veniam. Eiusmod pariatur aute adipisicing voluptate ut anim et aliquip Lorem occaecat ut adipisicing labore ut. Duis commodo amet sit exercitation sit incididunt ut pariatur occaecat. Dolor deserunt elit duis fugiat sunt quis laboris Lorem aliquip duis amet.\r\n", "registered": "2014-09-10T18:34:53-12:00", "latitude": -4.371044, "longitude": 135.986463, "tags": [ "tempor", "et", "consectetur", "aute", "nostrud", "ad", "dolor" ], "friends": [ { "id": 0, "name": "Clarissa Richard" }, { "id": 1, "name": "Lucile Casey" }, { "id": 2, "name": "Lucas Figueroa" } ], "greeting": "Hello, Nunez Oneil! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25f6923942eb01c919", "index": 2778, "guid": "86df5b5e-aa1e-4b9c-96cb-4b2c9a7117b1", "isActive": true, "balance": "$1,137.63", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Reese Gallagher", "gender": "male", "company": "INRT", "email": "reesegallagher@inrt.com", "phone": "+1 (938) 557-2098", "address": "395 Irving Avenue, Bainbridge, Northern Mariana Islands, 4906", "about": "Do duis excepteur ea laboris. Deserunt consectetur occaecat ut sunt adipisicing duis ipsum in magna velit. Consequat incididunt tempor reprehenderit nisi voluptate irure dolore exercitation in pariatur Lorem ad Lorem. Cupidatat enim fugiat duis ipsum laborum id amet et ullamco laborum nisi exercitation. Eiusmod occaecat irure est minim id ad qui ea elit minim.\r\n", "registered": "2014-09-16T00:42:31-12:00", "latitude": 88.61785, "longitude": 87.69664, "tags": [ "ullamco", "elit", "non", "fugiat", "ex", "consequat", "amet" ], "friends": [ { "id": 0, "name": "Deleon Copeland" }, { "id": 1, "name": "Lacy Gould" }, { "id": 2, "name": "Holland Sellers" } ], "greeting": "Hello, Reese Gallagher! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea257aa390af46ed1b99", "index": 2779, "guid": "9a1b6be1-81fd-4369-a883-33d6aa3899c2", "isActive": true, "balance": "$2,448.49", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Wiggins Long", "gender": "male", "company": "ATGEN", "email": "wigginslong@atgen.com", "phone": "+1 (837) 521-3881", "address": "364 Micieli Place, Cliffside, Colorado, 4155", "about": "Labore Lorem aliqua labore fugiat deserunt aliquip anim aliquip in quis. Sit dolor dolore amet ut veniam enim esse adipisicing magna. Et non nulla eiusmod nulla consequat. Eiusmod exercitation commodo elit anim nulla velit sint ad eu laborum laboris. Anim do eu labore dolore. Exercitation ad sint nulla consectetur voluptate. Irure anim magna nisi fugiat.\r\n", "registered": "2014-04-16T18:06:56-12:00", "latitude": -32.023763, "longitude": 8.967752, "tags": [ "magna", "anim", "ut", "duis", "culpa", "esse", "nulla" ], "friends": [ { "id": 0, "name": "Teri Barnett" }, { "id": 1, "name": "Frances Morin" }, { "id": 2, "name": "Juliet Scott" } ], "greeting": "Hello, Wiggins Long! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c4695d63e62c97d8", "index": 2780, "guid": "df53957a-9949-4f35-936b-edc3d3c977ea", "isActive": true, "balance": "$1,945.92", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Lizzie Prince", "gender": "female", "company": "COMTREK", "email": "lizzieprince@comtrek.com", "phone": "+1 (933) 581-2251", "address": "740 Crawford Avenue, Germanton, Idaho, 5186", "about": "Irure minim eu ut dolor ut non ullamco ex qui nostrud ullamco dolor. Id do proident tempor nostrud. Eiusmod dolore dolor reprehenderit occaecat aliqua ad do proident. Fugiat magna sunt nisi est laborum veniam magna non Lorem sunt non qui mollit nostrud. Ullamco veniam velit occaecat sint ipsum reprehenderit. Officia adipisicing aute aliqua anim cillum. In sint id aliquip in irure.\r\n", "registered": "2014-07-30T17:30:08-12:00", "latitude": 77.281233, "longitude": 175.654502, "tags": [ "ex", "velit", "deserunt", "culpa", "tempor", "non", "officia" ], "friends": [ { "id": 0, "name": "Bertha Ryan" }, { "id": 1, "name": "Phyllis Knox" }, { "id": 2, "name": "Clara Yang" } ], "greeting": "Hello, Lizzie Prince! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25f1d717645aa36f7a", "index": 2781, "guid": "7aa2113f-720c-46be-8c54-1ca77a94f3d8", "isActive": false, "balance": "$2,814.01", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Clarke Baldwin", "gender": "male", "company": "TSUNAMIA", "email": "clarkebaldwin@tsunamia.com", "phone": "+1 (810) 537-3302", "address": "332 Gerald Court, Seymour, Marshall Islands, 1869", "about": "Consectetur do adipisicing cillum non nisi culpa amet Lorem do ex non ullamco laboris. Sit non anim aliquip excepteur voluptate ipsum ea ad sit aliqua velit sunt enim. Adipisicing nisi ipsum exercitation nulla aute est nostrud nulla ut quis voluptate id consequat. Fugiat ex ullamco dolore adipisicing. Consectetur dolor laborum labore quis. Deserunt aliqua consequat aute labore voluptate irure adipisicing consectetur irure velit fugiat officia tempor nisi. Consequat anim exercitation nisi ea nostrud sint minim ex consequat labore est dolore mollit qui.\r\n", "registered": "2014-09-18T18:44:19-12:00", "latitude": -25.091657, "longitude": -21.9566, "tags": [ "sint", "minim", "ad", "incididunt", "proident", "anim", "amet" ], "friends": [ { "id": 0, "name": "Mia Hall" }, { "id": 1, "name": "Stewart Joyner" }, { "id": 2, "name": "Patricia Goodwin" } ], "greeting": "Hello, Clarke Baldwin! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25a8472778e5a3820f", "index": 2782, "guid": "90bbcf7b-40c7-4bf3-92ca-c007bf8333c7", "isActive": true, "balance": "$3,263.80", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Janet Munoz", "gender": "female", "company": "ANACHO", "email": "janetmunoz@anacho.com", "phone": "+1 (987) 523-2309", "address": "102 Reed Street, Franklin, New York, 9823", "about": "Et quis anim cupidatat minim sit ex qui esse veniam dolore nisi officia duis magna. Culpa minim magna qui et. Dolor in laboris non id ut et duis ullamco sunt ex officia. Duis consectetur consequat occaecat ad elit. Cillum dolore ex sit officia excepteur cillum dolor aliquip elit officia.\r\n", "registered": "2014-01-06T09:57:18-13:00", "latitude": -10.528142, "longitude": -1.786395, "tags": [ "nulla", "pariatur", "ipsum", "aliqua", "minim", "reprehenderit", "duis" ], "friends": [ { "id": 0, "name": "Case Bush" }, { "id": 1, "name": "Latoya Ramos" }, { "id": 2, "name": "Santana Wagner" } ], "greeting": "Hello, Janet Munoz! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea258c2d586fff4e0f5a", "index": 2783, "guid": "3dd88e52-c74a-4881-bc51-b6035de7100a", "isActive": true, "balance": "$2,832.63", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Delaney Sandoval", "gender": "male", "company": "PAPRICUT", "email": "delaneysandoval@papricut.com", "phone": "+1 (994) 585-2651", "address": "760 Hinsdale Street, Richville, Guam, 2282", "about": "Reprehenderit deserunt culpa reprehenderit Lorem do et labore cupidatat ipsum ullamco labore. Id ea amet qui laboris. Cillum in nostrud ea consectetur veniam sunt sint anim deserunt nostrud eiusmod. Incididunt labore consequat dolore eiusmod Lorem esse laborum consequat.\r\n", "registered": "2014-04-15T03:45:07-12:00", "latitude": -71.882262, "longitude": -96.665977, "tags": [ "pariatur", "sit", "esse", "consectetur", "veniam", "nulla", "Lorem" ], "friends": [ { "id": 0, "name": "Lawrence Bentley" }, { "id": 1, "name": "Alice Skinner" }, { "id": 2, "name": "Barker Sharpe" } ], "greeting": "Hello, Delaney Sandoval! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea251a5a72a8f296e378", "index": 2784, "guid": "dd87143d-b589-4cf3-90b1-662ff4a3cd8b", "isActive": false, "balance": "$2,268.83", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Hillary Hull", "gender": "female", "company": "MEGALL", "email": "hillaryhull@megall.com", "phone": "+1 (887) 580-3505", "address": "841 Chester Street, Bluffview, Virgin Islands, 823", "about": "Qui exercitation commodo ex reprehenderit quis cupidatat labore. Sunt irure et ullamco sit aliquip non cillum pariatur ipsum incididunt reprehenderit. Commodo aliqua irure consectetur est minim elit est id sunt occaecat nulla culpa sint ullamco. In cupidatat esse fugiat cupidatat ex ex incididunt do ut deserunt. Mollit consectetur culpa consequat ipsum ea Lorem ullamco mollit mollit.\r\n", "registered": "2014-01-08T21:17:10-13:00", "latitude": 0.037222, "longitude": -132.125451, "tags": [ "anim", "irure", "Lorem", "minim", "culpa", "veniam", "pariatur" ], "friends": [ { "id": 0, "name": "Janette Carney" }, { "id": 1, "name": "Snyder Heath" }, { "id": 2, "name": "Muriel Ortega" } ], "greeting": "Hello, Hillary Hull! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c28f4dfbf8351a34", "index": 2785, "guid": "9c58a186-6ad0-49cd-bc01-89ada4cdc8f9", "isActive": true, "balance": "$3,667.27", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Justine Charles", "gender": "female", "company": "EXOSPACE", "email": "justinecharles@exospace.com", "phone": "+1 (841) 435-3011", "address": "196 Summit Street, Grandview, Massachusetts, 225", "about": "Ullamco velit voluptate aliquip aliquip voluptate exercitation veniam nisi magna id ad qui esse. Fugiat laborum id velit veniam id consectetur in culpa do. Excepteur et Lorem aute do esse eiusmod.\r\n", "registered": "2014-07-30T07:05:58-12:00", "latitude": -85.365611, "longitude": 34.771433, "tags": [ "culpa", "do", "quis", "id", "magna", "exercitation", "anim" ], "friends": [ { "id": 0, "name": "Leonor Hill" }, { "id": 1, "name": "Stephenson Thompson" }, { "id": 2, "name": "Branch Huffman" } ], "greeting": "Hello, Justine Charles! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25d788e38061024528", "index": 2786, "guid": "6b328f2a-8458-41bc-9d85-22798a1b9a45", "isActive": false, "balance": "$1,014.12", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Cassandra Bishop", "gender": "female", "company": "BEDDER", "email": "cassandrabishop@bedder.com", "phone": "+1 (945) 530-3002", "address": "720 Prince Street, Hatteras, Utah, 3782", "about": "Id magna aute cillum duis anim officia. Pariatur duis mollit occaecat voluptate cillum minim amet ex voluptate excepteur. Velit labore sit exercitation ex reprehenderit adipisicing excepteur consequat mollit ut fugiat. Occaecat occaecat deserunt ad nulla sit est consequat sunt occaecat amet nisi officia adipisicing.\r\n", "registered": "2014-05-28T02:35:49-12:00", "latitude": -54.801052, "longitude": -78.442877, "tags": [ "mollit", "occaecat", "laborum", "cupidatat", "ad", "ullamco", "minim" ], "friends": [ { "id": 0, "name": "Mckee Jimenez" }, { "id": 1, "name": "Concetta Morris" }, { "id": 2, "name": "Angeline Gentry" } ], "greeting": "Hello, Cassandra Bishop! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25ebcef79dbe3d7733", "index": 2787, "guid": "0fff7d4e-1322-4461-8c0d-274622ec8210", "isActive": true, "balance": "$1,788.71", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Selma Estes", "gender": "female", "company": "NSPIRE", "email": "selmaestes@nspire.com", "phone": "+1 (808) 560-2420", "address": "413 Cozine Avenue, Marienthal, Montana, 7730", "about": "Deserunt consequat voluptate anim occaecat cillum est ipsum. Ad do id deserunt deserunt laborum pariatur Lorem enim aliqua occaecat. Dolor enim consectetur eu ex eiusmod ullamco velit commodo cillum occaecat fugiat quis magna id. In eu esse elit excepteur.\r\n", "registered": "2014-02-17T20:24:00-13:00", "latitude": 54.347673, "longitude": 49.598902, "tags": [ "deserunt", "aute", "est", "dolor", "eiusmod", "non", "ea" ], "friends": [ { "id": 0, "name": "Holden Tate" }, { "id": 1, "name": "Sharon Tyson" }, { "id": 2, "name": "Morales Stanton" } ], "greeting": "Hello, Selma Estes! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25f809b6f9f167540a", "index": 2788, "guid": "d4c1dc05-3909-4077-90be-405af7ab9e7d", "isActive": true, "balance": "$3,673.86", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Middleton Pope", "gender": "male", "company": "GEEKOSIS", "email": "middletonpope@geekosis.com", "phone": "+1 (854) 469-3698", "address": "264 Dupont Street, Rosewood, Wisconsin, 466", "about": "Mollit nostrud aliquip consectetur ex adipisicing. Deserunt eu incididunt do deserunt excepteur eu cupidatat quis nisi veniam ut veniam adipisicing. Labore cupidatat id laborum adipisicing cupidatat exercitation consequat mollit enim reprehenderit aute ipsum occaecat irure. Ea qui occaecat ad ex officia quis in fugiat quis consectetur voluptate. Irure cillum nostrud ullamco id labore ex proident sint deserunt est est minim cillum dolor. Et irure sunt fugiat occaecat aute.\r\n", "registered": "2014-09-13T03:52:11-12:00", "latitude": 38.07127, "longitude": 16.285142, "tags": [ "commodo", "duis", "et", "amet", "labore", "ullamco", "magna" ], "friends": [ { "id": 0, "name": "Garcia Galloway" }, { "id": 1, "name": "Yesenia Compton" }, { "id": 2, "name": "Pamela Morgan" } ], "greeting": "Hello, Middleton Pope! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2599d9f1fad238a0d1", "index": 2789, "guid": "058d99a5-d9a9-4270-baf7-8c75d1c56d31", "isActive": true, "balance": "$1,131.61", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Sheila Meadows", "gender": "female", "company": "COASH", "email": "sheilameadows@coash.com", "phone": "+1 (828) 577-2154", "address": "539 Caton Avenue, Sharon, Maine, 8662", "about": "Labore consectetur nisi consectetur ullamco velit esse anim cillum sit reprehenderit excepteur deserunt. Voluptate reprehenderit ipsum nulla adipisicing ea exercitation occaecat voluptate ad eu ipsum. Reprehenderit eu excepteur sint consequat laboris magna nostrud tempor magna. Voluptate aute Lorem elit esse duis ut culpa non esse enim.\r\n", "registered": "2014-04-03T01:45:55-13:00", "latitude": -6.037983, "longitude": -13.329965, "tags": [ "ullamco", "Lorem", "magna", "qui", "exercitation", "et", "ex" ], "friends": [ { "id": 0, "name": "Adela Paul" }, { "id": 1, "name": "Tate Browning" }, { "id": 2, "name": "Morrow Knapp" } ], "greeting": "Hello, Sheila Meadows! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e6d0b4a2233df172", "index": 2790, "guid": "6e115d55-ac80-4ea6-9fb5-82dc13bdc12c", "isActive": true, "balance": "$3,812.21", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Silva Santos", "gender": "male", "company": "REPETWIRE", "email": "silvasantos@repetwire.com", "phone": "+1 (813) 502-2388", "address": "111 Eldert Street, Konterra, Virginia, 3690", "about": "Velit aute anim cillum aliqua deserunt ex est proident anim. Dolor aute laborum non aute nisi. Deserunt aliqua id amet occaecat dolore. Nisi dolore aliquip eu ullamco fugiat aliquip amet aliquip enim. Labore nostrud quis proident occaecat. Dolore ea eiusmod sit excepteur elit culpa proident mollit irure. Sunt qui proident veniam sint ex mollit.\r\n", "registered": "2014-02-19T18:06:20-13:00", "latitude": 74.708152, "longitude": 21.956362, "tags": [ "deserunt", "pariatur", "est", "excepteur", "magna", "magna", "anim" ], "friends": [ { "id": 0, "name": "Kristina Frank" }, { "id": 1, "name": "Rutledge Bird" }, { "id": 2, "name": "Morris Bryan" } ], "greeting": "Hello, Silva Santos! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25f97ebbdf7dabb239", "index": 2791, "guid": "a1edb81e-4770-4b02-bddb-1688ef1417bb", "isActive": true, "balance": "$1,402.41", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Hewitt Joyce", "gender": "male", "company": "ZOGAK", "email": "hewittjoyce@zogak.com", "phone": "+1 (937) 419-2825", "address": "214 Revere Place, Waterview, Kentucky, 5400", "about": "Laborum duis mollit deserunt eu incididunt culpa amet. Eu sint non eiusmod laborum ipsum elit non adipisicing dolor. Enim quis non laboris anim sint do non consequat occaecat. Aute id qui dolor excepteur. Est cillum aliquip minim adipisicing ullamco sint elit pariatur cillum consequat ea quis sit non.\r\n", "registered": "2014-04-24T18:55:02-12:00", "latitude": 41.99036, "longitude": -79.736534, "tags": [ "ea", "magna", "in", "labore", "veniam", "eiusmod", "eiusmod" ], "friends": [ { "id": 0, "name": "Morin Wilcox" }, { "id": 1, "name": "Martha Dawson" }, { "id": 2, "name": "Aurelia Glover" } ], "greeting": "Hello, Hewitt Joyce! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25fb3bb0cfb8d83197", "index": 2792, "guid": "efe56ae3-3dc8-440c-a40f-dfd44aefbe79", "isActive": true, "balance": "$3,592.36", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Gill Mcknight", "gender": "male", "company": "PHEAST", "email": "gillmcknight@pheast.com", "phone": "+1 (973) 448-2182", "address": "283 Wilson Street, Rockingham, Connecticut, 5880", "about": "Fugiat ullamco ad consequat nulla aliqua adipisicing consequat ad duis velit commodo velit. Excepteur consequat in sunt magna qui. Minim voluptate sint irure proident ullamco eu irure aliquip anim. Aliqua Lorem ex sint nulla et. Anim minim amet magna reprehenderit deserunt excepteur minim fugiat dolore labore Lorem in dolore commodo.\r\n", "registered": "2014-04-02T12:38:04-13:00", "latitude": 48.106924, "longitude": -109.502103, "tags": [ "esse", "consectetur", "incididunt", "consequat", "magna", "laboris", "labore" ], "friends": [ { "id": 0, "name": "Carmen Harris" }, { "id": 1, "name": "Dalton Price" }, { "id": 2, "name": "Walter Mckee" } ], "greeting": "Hello, Gill Mcknight! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea255cb568f8e5c1c0df", "index": 2793, "guid": "95b9690d-bce7-4cbb-ba1a-a1af994c91cc", "isActive": false, "balance": "$3,396.12", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Gertrude Mcguire", "gender": "female", "company": "BICOL", "email": "gertrudemcguire@bicol.com", "phone": "+1 (818) 544-2100", "address": "664 Ellery Street, Vaughn, Mississippi, 7148", "about": "Esse exercitation anim sit elit aute nisi nostrud eu laboris laboris cupidatat magna incididunt. Do consectetur quis qui reprehenderit consectetur dolor minim anim sunt culpa labore nostrud anim. Tempor reprehenderit velit fugiat amet incididunt non deserunt minim commodo anim sunt reprehenderit veniam. Incididunt cupidatat quis officia commodo nostrud velit esse sunt excepteur ea.\r\n", "registered": "2014-04-06T12:06:02-12:00", "latitude": -67.795651, "longitude": -139.572311, "tags": [ "sunt", "nulla", "culpa", "et", "commodo", "aute", "sint" ], "friends": [ { "id": 0, "name": "Patti Gray" }, { "id": 1, "name": "Dunlap Sheppard" }, { "id": 2, "name": "Debbie Kaufman" } ], "greeting": "Hello, Gertrude Mcguire! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea256cff9736324f10b2", "index": 2794, "guid": "f1a646fa-539f-4374-ae04-96029103b9eb", "isActive": false, "balance": "$2,642.77", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Jewel Chavez", "gender": "female", "company": "GALLAXIA", "email": "jewelchavez@gallaxia.com", "phone": "+1 (904) 494-3110", "address": "119 Thornton Street, Marion, Washington, 7414", "about": "Enim elit magna fugiat esse magna anim esse. Eiusmod elit laborum ut pariatur ut non exercitation anim tempor. Est eiusmod consequat ad consectetur ullamco ea sint. Aliqua incididunt ex consectetur et aliquip est ullamco voluptate ipsum. Exercitation eu id cupidatat veniam exercitation dolore nisi minim.\r\n", "registered": "2014-08-22T22:39:51-12:00", "latitude": -0.170425, "longitude": -115.325866, "tags": [ "nulla", "fugiat", "sint", "mollit", "consectetur", "magna", "dolore" ], "friends": [ { "id": 0, "name": "Gloria Nichols" }, { "id": 1, "name": "Reyes Mathews" }, { "id": 2, "name": "Vaughn Young" } ], "greeting": "Hello, Jewel Chavez! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e2d871539762354a", "index": 2795, "guid": "5a081e5f-575a-4805-8b05-41430d123a7b", "isActive": true, "balance": "$3,941.70", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Ida Santana", "gender": "female", "company": "PHUEL", "email": "idasantana@phuel.com", "phone": "+1 (998) 481-2335", "address": "759 Fulton Street, Bancroft, Tennessee, 1101", "about": "Quis eiusmod eu fugiat nostrud aliqua elit aute non. Irure ea anim ipsum reprehenderit quis ea nostrud adipisicing sunt. Ipsum velit quis in laborum duis ullamco in incididunt laboris duis cillum cupidatat ex anim. Deserunt aliqua dolor ut duis commodo ut Lorem do reprehenderit voluptate aute aliqua.\r\n", "registered": "2014-07-08T18:51:24-12:00", "latitude": 1.674133, "longitude": 0.680746, "tags": [ "ut", "ad", "laboris", "labore", "officia", "et", "laborum" ], "friends": [ { "id": 0, "name": "Alyssa Mcneil" }, { "id": 1, "name": "Kirkland Lang" }, { "id": 2, "name": "Benson Obrien" } ], "greeting": "Hello, Ida Santana! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea250d0ff5b3e4e3787c", "index": 2796, "guid": "f62566c1-d57d-4e38-8a12-df4a33efaf4d", "isActive": true, "balance": "$3,566.56", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Tanya Todd", "gender": "female", "company": "SINGAVERA", "email": "tanyatodd@singavera.com", "phone": "+1 (954) 411-3776", "address": "504 Aviation Road, Lawrence, Alabama, 7281", "about": "Ad exercitation cupidatat dolore ea ut velit. Commodo reprehenderit est in esse non mollit. Eiusmod adipisicing in incididunt commodo enim reprehenderit. Cillum veniam nulla cillum dolor.\r\n", "registered": "2014-04-24T04:07:40-12:00", "latitude": -49.658689, "longitude": -106.294795, "tags": [ "aliqua", "laborum", "duis", "veniam", "dolor", "non", "consequat" ], "friends": [ { "id": 0, "name": "Lindsay Holcomb" }, { "id": 1, "name": "Chandler Bolton" }, { "id": 2, "name": "Fran Wise" } ], "greeting": "Hello, Tanya Todd! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25ec9344e2eaa6fab4", "index": 2797, "guid": "b2b78b38-ca52-432b-98bb-b8389da8f91c", "isActive": true, "balance": "$2,800.83", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Bass Humphrey", "gender": "male", "company": "EVENTEX", "email": "basshumphrey@eventex.com", "phone": "+1 (811) 568-3722", "address": "761 Arkansas Drive, Hardyville, Ohio, 3550", "about": "Veniam magna irure exercitation nisi. Occaecat mollit cillum velit consectetur labore et ex ullamco culpa. Aliqua velit anim sint ullamco amet ex consequat. Laboris et nulla culpa ea voluptate incididunt tempor voluptate sunt officia. Minim reprehenderit aliquip duis dolore ad proident aliqua elit esse. Fugiat cillum consequat cillum ad tempor in nisi adipisicing mollit cillum non tempor.\r\n", "registered": "2014-01-08T17:20:19-13:00", "latitude": -66.138688, "longitude": -125.667129, "tags": [ "laborum", "Lorem", "qui", "nulla", "aute", "nulla", "laboris" ], "friends": [ { "id": 0, "name": "Bender Mclean" }, { "id": 1, "name": "York Calhoun" }, { "id": 2, "name": "Lora Carroll" } ], "greeting": "Hello, Bass Humphrey! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25ecae26b88db80c56", "index": 2798, "guid": "f85de423-f305-44aa-92cf-a220638b08dd", "isActive": false, "balance": "$3,646.99", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Gwendolyn Little", "gender": "female", "company": "UPDAT", "email": "gwendolynlittle@updat.com", "phone": "+1 (884) 561-3751", "address": "915 Kensington Walk, Hasty, Hawaii, 8251", "about": "Est sint sit aute Lorem et. Amet Lorem in veniam ut ex anim labore mollit aliqua duis enim. Cupidatat enim officia veniam duis voluptate consectetur amet commodo ex veniam incididunt reprehenderit veniam eiusmod. Nostrud proident voluptate veniam labore id adipisicing nisi anim nostrud sit reprehenderit exercitation elit culpa. Dolore excepteur nulla ad ea laborum amet ut nulla magna non voluptate. Aliquip cillum mollit officia est esse voluptate. Id ullamco sit reprehenderit commodo fugiat et proident reprehenderit quis eu voluptate ipsum cillum culpa.\r\n", "registered": "2014-08-24T02:36:04-12:00", "latitude": -19.155109, "longitude": 162.144544, "tags": [ "minim", "in", "Lorem", "irure", "incididunt", "dolore", "aliquip" ], "friends": [ { "id": 0, "name": "Graves Adkins" }, { "id": 1, "name": "Florine Alvarado" }, { "id": 2, "name": "Millicent Wiggins" } ], "greeting": "Hello, Gwendolyn Little! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea252e2a67cbec214c34", "index": 2799, "guid": "3932f6e3-c1cc-49dc-b732-90b129101b83", "isActive": true, "balance": "$2,018.84", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Judith Oneal", "gender": "female", "company": "ANIXANG", "email": "judithoneal@anixang.com", "phone": "+1 (997) 571-3515", "address": "235 Rost Place, Sanborn, New Mexico, 8290", "about": "Deserunt est est occaecat est minim. Proident occaecat exercitation sit labore aute dolore eu ex exercitation aute in adipisicing labore. Sunt incididunt eiusmod aute anim laboris laborum ad cupidatat sit quis. Pariatur consectetur et fugiat ea nulla laborum nisi. Sunt labore nostrud sit amet nisi laboris non. Ullamco aliqua quis sunt ea eiusmod sint fugiat aliqua id duis aliquip est minim.\r\n", "registered": "2014-02-27T14:41:32-13:00", "latitude": -41.446107, "longitude": 118.693017, "tags": [ "cillum", "officia", "veniam", "consequat", "ex", "nostrud", "dolore" ], "friends": [ { "id": 0, "name": "Bonnie Lopez" }, { "id": 1, "name": "Brenda Osborn" }, { "id": 2, "name": "Atkinson Duran" } ], "greeting": "Hello, Judith Oneal! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2508bb9b93cfec9361", "index": 2800, "guid": "2730c072-4130-4a94-b195-877df729b58e", "isActive": false, "balance": "$3,865.42", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Chapman Russo", "gender": "male", "company": "CUBICIDE", "email": "chapmanrusso@cubicide.com", "phone": "+1 (961) 453-2147", "address": "520 Fleet Walk, Breinigsville, Maryland, 5258", "about": "Sit magna nulla sit nisi eu laboris occaecat Lorem. Occaecat consectetur tempor est veniam non in ea. Aliqua minim aliqua non ad aliquip esse aliqua commodo.\r\n", "registered": "2014-02-24T05:30:09-13:00", "latitude": 15.180906, "longitude": 41.881405, "tags": [ "eu", "culpa", "mollit", "sit", "irure", "laborum", "ea" ], "friends": [ { "id": 0, "name": "Freda Moran" }, { "id": 1, "name": "English Rios" }, { "id": 2, "name": "Horn Rivas" } ], "greeting": "Hello, Chapman Russo! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea258a06999a98121c37", "index": 2801, "guid": "802864fc-b096-4ce6-8547-3f502dc8b250", "isActive": true, "balance": "$2,211.32", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Lenore Leblanc", "gender": "female", "company": "EARTHWAX", "email": "lenoreleblanc@earthwax.com", "phone": "+1 (838) 415-3629", "address": "112 Auburn Place, Graball, Alaska, 8804", "about": "Magna est nisi quis aute ad labore. Elit aliqua qui nostrud quis. Magna voluptate ut aute laborum eu.\r\n", "registered": "2014-04-15T22:35:22-12:00", "latitude": -43.55771, "longitude": 87.37075, "tags": [ "dolore", "cillum", "enim", "mollit", "eiusmod", "anim", "anim" ], "friends": [ { "id": 0, "name": "Murphy Navarro" }, { "id": 1, "name": "Prince Pratt" }, { "id": 2, "name": "Marci Mercer" } ], "greeting": "Hello, Lenore Leblanc! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2550def1b0b698d3e7", "index": 2802, "guid": "a874c2c1-134e-434f-9959-6912d07df14c", "isActive": true, "balance": "$2,867.95", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Simpson Chan", "gender": "male", "company": "BRAINQUIL", "email": "simpsonchan@brainquil.com", "phone": "+1 (872) 453-2631", "address": "236 Nostrand Avenue, Brookfield, Arizona, 199", "about": "Eiusmod ea excepteur laborum ipsum dolore velit aute exercitation deserunt ad. Aute veniam aliqua sit non enim. Pariatur aute consequat occaecat adipisicing anim minim nisi adipisicing nostrud elit excepteur consectetur nisi in. In duis anim mollit aute esse Lorem est esse officia sit officia laboris.\r\n", "registered": "2014-05-08T05:46:47-12:00", "latitude": 60.627278, "longitude": -139.51268, "tags": [ "consequat", "culpa", "cillum", "ex", "consectetur", "elit", "reprehenderit" ], "friends": [ { "id": 0, "name": "Willie Carter" }, { "id": 1, "name": "Joni Cantu" }, { "id": 2, "name": "Petersen Alvarez" } ], "greeting": "Hello, Simpson Chan! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea254e2345003cb1c6f8", "index": 2803, "guid": "73befc64-180e-41a7-b56d-89127cc0bee8", "isActive": true, "balance": "$3,704.93", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Earlene Benjamin", "gender": "female", "company": "VALREDA", "email": "earlenebenjamin@valreda.com", "phone": "+1 (944) 589-2086", "address": "963 Mill Road, Herbster, Federated States Of Micronesia, 5569", "about": "Magna minim ex duis ea deserunt dolor. Deserunt mollit exercitation et anim exercitation tempor adipisicing dolor. Consequat amet adipisicing quis consequat irure commodo cupidatat. Cupidatat culpa occaecat nisi nisi irure commodo.\r\n", "registered": "2014-04-22T09:57:03-12:00", "latitude": -6.654039, "longitude": -170.359745, "tags": [ "culpa", "est", "culpa", "adipisicing", "culpa", "id", "adipisicing" ], "friends": [ { "id": 0, "name": "Bonner Strickland" }, { "id": 1, "name": "Stephens Schroeder" }, { "id": 2, "name": "Ladonna Barker" } ], "greeting": "Hello, Earlene Benjamin! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea253b76ea9d3c8b00b3", "index": 2804, "guid": "c2d18a4d-db9b-4ad2-a1fc-6d6ba8192be3", "isActive": true, "balance": "$1,664.35", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Higgins Schultz", "gender": "male", "company": "ISOLOGICS", "email": "higginsschultz@isologics.com", "phone": "+1 (804) 413-2223", "address": "921 Quay Street, Englevale, Oklahoma, 5865", "about": "Ex ad aliqua aliqua et non dolor. Fugiat nisi qui aliquip consectetur labore amet quis culpa officia veniam tempor mollit aliquip. Labore cillum eiusmod incididunt occaecat amet anim nisi exercitation velit sint excepteur.\r\n", "registered": "2014-09-04T01:37:51-12:00", "latitude": -17.036177, "longitude": -102.989269, "tags": [ "ut", "ullamco", "nulla", "esse", "officia", "nisi", "velit" ], "friends": [ { "id": 0, "name": "Mays Torres" }, { "id": 1, "name": "Phillips Boyd" }, { "id": 2, "name": "Noemi Franco" } ], "greeting": "Hello, Higgins Schultz! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25403a8571fc241096", "index": 2805, "guid": "a01a70d3-7131-43d5-9f86-80fa5d32e764", "isActive": true, "balance": "$3,750.58", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Rhoda Houston", "gender": "female", "company": "COMTOURS", "email": "rhodahouston@comtours.com", "phone": "+1 (987) 420-2556", "address": "737 Willow Place, Weedville, Michigan, 9950", "about": "Ex deserunt consectetur tempor Lorem dolor non pariatur id proident amet laborum dolore amet sit. Anim culpa amet magna voluptate mollit proident irure eiusmod non enim labore. Deserunt ut laboris adipisicing consectetur laborum velit ut. Veniam eu occaecat officia voluptate. Ea dolore minim consectetur proident cillum cupidatat aute ipsum anim voluptate nisi excepteur. Tempor aliquip adipisicing ullamco nisi irure amet non voluptate do excepteur sunt.\r\n", "registered": "2014-07-17T03:36:41-12:00", "latitude": -46.336625, "longitude": 61.10406, "tags": [ "ullamco", "sunt", "et", "do", "dolor", "nostrud", "duis" ], "friends": [ { "id": 0, "name": "Myrna Ratliff" }, { "id": 1, "name": "Darcy Benton" }, { "id": 2, "name": "Bell Roman" } ], "greeting": "Hello, Rhoda Houston! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25e23e18d980a6b677", "index": 2806, "guid": "305d0fdf-425c-4bef-ad27-172108662ba1", "isActive": false, "balance": "$1,679.10", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Thomas Schneider", "gender": "male", "company": "REVERSUS", "email": "thomasschneider@reversus.com", "phone": "+1 (974) 584-3744", "address": "811 Hillel Place, Alamo, Kansas, 6306", "about": "Qui minim consectetur minim labore adipisicing aliqua in sunt consectetur esse ullamco proident. Magna fugiat incididunt consequat est eu culpa nisi eiusmod pariatur. Qui nisi esse eiusmod quis est ea eiusmod aute in dolor consectetur amet.\r\n", "registered": "2014-07-12T21:13:33-12:00", "latitude": -16.087875, "longitude": -53.158884, "tags": [ "consectetur", "est", "tempor", "dolor", "velit", "laboris", "est" ], "friends": [ { "id": 0, "name": "Dee Brady" }, { "id": 1, "name": "Cantu Shannon" }, { "id": 2, "name": "Pearlie Coleman" } ], "greeting": "Hello, Thomas Schneider! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2524bf07c7b7182a4a", "index": 2807, "guid": "ac8744ed-53bc-4def-94df-27dbb4dedf92", "isActive": true, "balance": "$2,531.63", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Neal Ochoa", "gender": "male", "company": "ELITA", "email": "nealochoa@elita.com", "phone": "+1 (892) 546-3651", "address": "512 Gilmore Court, Hollymead, South Dakota, 7367", "about": "Cillum nulla nostrud non ullamco ullamco sit. Eu ullamco fugiat consectetur commodo amet excepteur. Irure officia et laborum fugiat nostrud excepteur dolor dolor nisi labore adipisicing irure commodo. Nostrud minim esse incididunt voluptate dolore commodo laboris voluptate. Adipisicing veniam ullamco veniam duis eiusmod non officia culpa ut. Deserunt amet sit excepteur cillum tempor et nostrud id laboris commodo laborum culpa amet eu. Do officia irure pariatur eu veniam fugiat nulla.\r\n", "registered": "2014-05-11T20:39:17-12:00", "latitude": 66.732397, "longitude": 159.005621, "tags": [ "labore", "aute", "sit", "minim", "velit", "sit", "deserunt" ], "friends": [ { "id": 0, "name": "Thompson Mcclain" }, { "id": 1, "name": "Teresa Lowe" }, { "id": 2, "name": "Louella Hardin" } ], "greeting": "Hello, Neal Ochoa! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25896531765d19552d", "index": 2808, "guid": "0868e74f-3e21-4a7d-a857-aab9482977e7", "isActive": true, "balance": "$2,312.21", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Elinor Watkins", "gender": "female", "company": "MONDICIL", "email": "elinorwatkins@mondicil.com", "phone": "+1 (904) 426-2152", "address": "284 Mill Street, Worcester, West Virginia, 8204", "about": "Amet et excepteur veniam Lorem laborum est aute. Quis magna irure reprehenderit voluptate reprehenderit amet sint laborum exercitation. Ex commodo anim adipisicing nostrud aute id pariatur minim Lorem irure. Minim deserunt laborum eiusmod nostrud eu consequat fugiat ut velit. Ea culpa tempor sit et eu incididunt amet sint do fugiat id elit. Dolor elit anim esse irure consectetur labore occaecat dolor labore eu.\r\n", "registered": "2014-03-30T07:47:29-13:00", "latitude": 12.623809, "longitude": -155.839734, "tags": [ "ex", "do", "fugiat", "non", "aliqua", "magna", "dolor" ], "friends": [ { "id": 0, "name": "Romero Good" }, { "id": 1, "name": "Marian Cohen" }, { "id": 2, "name": "Banks Gamble" } ], "greeting": "Hello, Elinor Watkins! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25b5c24711c1901d37", "index": 2809, "guid": "bd8b6d86-c0b8-432b-b8e4-df07fd5dcec6", "isActive": true, "balance": "$3,302.43", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Sellers Haynes", "gender": "male", "company": "NAXDIS", "email": "sellershaynes@naxdis.com", "phone": "+1 (984) 443-2630", "address": "233 Albee Square, Alderpoint, Texas, 9294", "about": "Ullamco irure sit ullamco aute labore commodo ad. Consectetur fugiat fugiat amet dolore adipisicing anim excepteur est. Duis veniam laboris amet amet in non quis cupidatat laboris incididunt ullamco esse.\r\n", "registered": "2014-02-08T07:47:18-13:00", "latitude": 58.037997, "longitude": -148.241843, "tags": [ "aute", "amet", "fugiat", "id", "elit", "id", "tempor" ], "friends": [ { "id": 0, "name": "Pate Gibson" }, { "id": 1, "name": "Savannah Roth" }, { "id": 2, "name": "Lisa Camacho" } ], "greeting": "Hello, Sellers Haynes! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25c8498b95a50d8dbe", "index": 2810, "guid": "d0faa0b4-f3c1-4250-815a-d13e3c9927f5", "isActive": true, "balance": "$1,648.63", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Stevenson Branch", "gender": "male", "company": "DATAGENE", "email": "stevensonbranch@datagene.com", "phone": "+1 (825) 462-3717", "address": "520 Montgomery Street, Lydia, Oregon, 1984", "about": "Occaecat elit ullamco non in incididunt laboris est reprehenderit voluptate. Commodo non sint ea non amet ipsum laboris et officia anim dolore. Adipisicing consectetur excepteur incididunt sit irure quis dolore incididunt duis nostrud esse anim dolore consequat. Irure veniam consequat nulla duis nulla elit adipisicing deserunt est. Esse laborum veniam excepteur laborum nostrud nisi voluptate elit enim nisi duis duis aliquip in. Laborum ipsum adipisicing minim irure irure non voluptate. Elit est laborum laborum consectetur deserunt.\r\n", "registered": "2014-05-27T19:08:23-12:00", "latitude": 50.952007, "longitude": -138.461283, "tags": [ "eu", "id", "sint", "sint", "veniam", "ullamco", "consequat" ], "friends": [ { "id": 0, "name": "Odonnell Fuller" }, { "id": 1, "name": "Mosley Holden" }, { "id": 2, "name": "Cox Butler" } ], "greeting": "Hello, Stevenson Branch! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25a7f581be10291b0b", "index": 2811, "guid": "b1b2374f-9ff0-480d-836f-44af1e7d492c", "isActive": false, "balance": "$1,750.26", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Alberta Horton", "gender": "female", "company": "ENERSAVE", "email": "albertahorton@enersave.com", "phone": "+1 (942) 464-2586", "address": "677 Fleet Street, Onton, Nevada, 6658", "about": "Fugiat nulla culpa sit commodo reprehenderit non quis laborum minim excepteur. Laborum qui eu ipsum magna in. Mollit elit aliqua elit eiusmod voluptate irure et pariatur laboris laborum. Duis voluptate occaecat minim sunt. Tempor laboris aliquip non cupidatat amet pariatur est irure exercitation aliquip velit nostrud. Mollit duis et cupidatat ad in magna labore aliquip dolor nulla ex ex.\r\n", "registered": "2014-03-12T03:09:57-13:00", "latitude": -51.764932, "longitude": -71.411811, "tags": [ "labore", "eu", "quis", "et", "consectetur", "culpa", "deserunt" ], "friends": [ { "id": 0, "name": "Erica Molina" }, { "id": 1, "name": "Fields Le" }, { "id": 2, "name": "Laurel Summers" } ], "greeting": "Hello, Alberta Horton! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25f08278375afdf654", "index": 2812, "guid": "ecbdbc3d-7046-41cb-a856-fceda1770a9e", "isActive": true, "balance": "$3,593.08", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Mckinney Gardner", "gender": "male", "company": "XELEGYL", "email": "mckinneygardner@xelegyl.com", "phone": "+1 (801) 438-3015", "address": "112 Rogers Avenue, Lindisfarne, Minnesota, 1772", "about": "In eu id ad deserunt sit Lorem mollit officia Lorem voluptate. Excepteur voluptate nulla ipsum ea sint est proident officia anim. Incididunt veniam non qui ullamco aliquip velit eiusmod cupidatat duis ipsum in dolor. Sunt voluptate veniam dolore mollit dolore. Incididunt velit culpa velit irure consequat in magna magna ex magna. Cupidatat labore anim ex occaecat.\r\n", "registered": "2014-09-07T15:12:06-12:00", "latitude": 13.987346, "longitude": 11.906302, "tags": [ "sit", "pariatur", "qui", "magna", "velit", "est", "cupidatat" ], "friends": [ { "id": 0, "name": "Olive Wallace" }, { "id": 1, "name": "Spence Johnson" }, { "id": 2, "name": "Hooper Conner" } ], "greeting": "Hello, Mckinney Gardner! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25eeeb15898040616e", "index": 2813, "guid": "8e48bd91-3739-407e-9119-ea3a7630c2b4", "isActive": false, "balance": "$1,767.22", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Winifred Finch", "gender": "female", "company": "SUREMAX", "email": "winifredfinch@suremax.com", "phone": "+1 (831) 594-3119", "address": "559 Folsom Place, Williamson, Missouri, 2636", "about": "Eu est ea amet aliqua commodo cupidatat excepteur consequat laboris officia. Mollit nulla elit minim reprehenderit ullamco deserunt do consequat. Sunt ad amet duis irure sit fugiat nulla. Veniam magna irure duis reprehenderit pariatur irure. Laboris voluptate est id id nisi proident veniam Lorem dolore voluptate.\r\n", "registered": "2014-01-16T07:38:57-13:00", "latitude": 31.104251, "longitude": 150.258556, "tags": [ "esse", "adipisicing", "ex", "sit", "aute", "mollit", "est" ], "friends": [ { "id": 0, "name": "Jacobson Haney" }, { "id": 1, "name": "Parker Martin" }, { "id": 2, "name": "Juarez Crosby" } ], "greeting": "Hello, Winifred Finch! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea255dd9e297eef24ca7", "index": 2814, "guid": "5b2cce7f-20e8-47ad-a7ce-bdee988eda23", "isActive": true, "balance": "$3,879.57", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Quinn Lloyd", "gender": "male", "company": "GAZAK", "email": "quinnlloyd@gazak.com", "phone": "+1 (908) 493-2917", "address": "747 Colin Place, Rote, Rhode Island, 1609", "about": "Magna occaecat dolor est aliqua ullamco nostrud nulla. Reprehenderit officia voluptate incididunt aute qui non in exercitation qui duis incididunt mollit excepteur occaecat. Laborum consequat minim ex laborum. Exercitation occaecat elit dolor voluptate occaecat. Ea velit consequat proident officia. Elit cupidatat duis sunt pariatur do qui laboris mollit officia consectetur sint. Consequat tempor ullamco magna elit non dolor sint.\r\n", "registered": "2014-04-16T10:35:00-12:00", "latitude": 32.249544, "longitude": -78.642487, "tags": [ "officia", "labore", "ea", "elit", "voluptate", "occaecat", "incididunt" ], "friends": [ { "id": 0, "name": "May Lester" }, { "id": 1, "name": "Deana Whitfield" }, { "id": 2, "name": "Nolan Evans" } ], "greeting": "Hello, Quinn Lloyd! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea256ae3645b20b952bc", "index": 2815, "guid": "de5b3e50-5228-4dc7-b460-a269469e37af", "isActive": true, "balance": "$3,766.10", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Holloway Blackburn", "gender": "male", "company": "OLUCORE", "email": "hollowayblackburn@olucore.com", "phone": "+1 (839) 543-2291", "address": "468 Grace Court, Kenmar, Florida, 576", "about": "Reprehenderit voluptate dolor labore magna eiusmod non fugiat laboris tempor. Nostrud elit Lorem voluptate quis. Ipsum velit mollit culpa dolore ad cillum nostrud culpa nulla cillum magna ad incididunt. Veniam Lorem aute ad laboris proident enim eiusmod mollit magna commodo cupidatat voluptate labore.\r\n", "registered": "2014-05-25T10:02:36-12:00", "latitude": -52.304686, "longitude": 82.856847, "tags": [ "aliquip", "aliquip", "ipsum", "eu", "cillum", "deserunt", "reprehenderit" ], "friends": [ { "id": 0, "name": "Barber Walter" }, { "id": 1, "name": "Howard Underwood" }, { "id": 2, "name": "Bryant William" } ], "greeting": "Hello, Holloway Blackburn! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25759f18961be3e9ee", "index": 2816, "guid": "f02ae160-69d3-4c69-aac8-05131a669f8d", "isActive": true, "balance": "$2,565.38", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Joanne Mccarty", "gender": "female", "company": "AMTAP", "email": "joannemccarty@amtap.com", "phone": "+1 (855) 581-2738", "address": "793 Lafayette Walk, Darrtown, North Carolina, 7290", "about": "Eiusmod in duis dolore elit eiusmod veniam dolor laboris dolor occaecat tempor. Voluptate anim reprehenderit veniam proident commodo sunt cupidatat sunt commodo deserunt. Reprehenderit magna duis anim sint adipisicing labore consequat qui irure veniam voluptate nostrud ea.\r\n", "registered": "2014-03-18T06:28:41-13:00", "latitude": -33.033417, "longitude": 139.226452, "tags": [ "est", "id", "fugiat", "ex", "dolor", "consequat", "dolor" ], "friends": [ { "id": 0, "name": "Jeannette Mullins" }, { "id": 1, "name": "Ruthie Sweet" }, { "id": 2, "name": "Ball Watts" } ], "greeting": "Hello, Joanne Mccarty! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea252bc2483dd251dcd5", "index": 2817, "guid": "4e7d1bf9-da88-4c9b-b049-b7eae928b2d5", "isActive": true, "balance": "$2,403.26", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Brigitte Moreno", "gender": "female", "company": "SARASONIC", "email": "brigittemoreno@sarasonic.com", "phone": "+1 (957) 551-3813", "address": "395 Bowery Street, Concho, New Hampshire, 7562", "about": "Aute cupidatat duis quis voluptate mollit ex anim laborum consectetur. Anim dolore elit nisi fugiat sint elit culpa fugiat proident ex. Aliqua irure proident anim laborum eiusmod nulla ex. Commodo cillum aute nulla Lorem anim ipsum duis ea ex dolor ipsum enim sint. Laborum qui amet amet dolor tempor.\r\n", "registered": "2014-01-18T13:17:07-13:00", "latitude": -39.450752, "longitude": -2.662279, "tags": [ "enim", "est", "dolore", "anim", "sint", "velit", "aliqua" ], "friends": [ { "id": 0, "name": "Jennie Mcmillan" }, { "id": 1, "name": "Misty Greer" }, { "id": 2, "name": "Kara Barron" } ], "greeting": "Hello, Brigitte Moreno! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2532ab4054f2cedcf7", "index": 2818, "guid": "bd36eed1-329d-4f96-9211-3adb8689c54b", "isActive": true, "balance": "$2,314.24", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Brady Flynn", "gender": "male", "company": "NAMEBOX", "email": "bradyflynn@namebox.com", "phone": "+1 (828) 430-3539", "address": "701 Franklin Street, Vale, Arkansas, 1979", "about": "Dolore sit incididunt commodo dolor non dolore sint nulla tempor sit fugiat anim exercitation. Aliqua dolor deserunt duis velit nostrud laboris cupidatat reprehenderit aute ullamco veniam incididunt adipisicing. Est duis ipsum est enim pariatur minim sunt commodo consequat nostrud consequat deserunt. Excepteur esse velit sunt est ex consequat excepteur adipisicing tempor elit. Laboris nisi pariatur officia magna ut deserunt veniam deserunt reprehenderit Lorem magna quis pariatur.\r\n", "registered": "2014-09-20T08:06:54-12:00", "latitude": -14.688191, "longitude": 45.137377, "tags": [ "nostrud", "cillum", "amet", "quis", "ullamco", "elit", "cillum" ], "friends": [ { "id": 0, "name": "Sawyer Rasmussen" }, { "id": 1, "name": "Mack Carson" }, { "id": 2, "name": "Lester Michael" } ], "greeting": "Hello, Brady Flynn! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25b45cf2db1845692f", "index": 2819, "guid": "ce631c37-5827-479f-a4c4-633c073757c6", "isActive": false, "balance": "$2,905.52", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Christina Bond", "gender": "female", "company": "CENTICE", "email": "christinabond@centice.com", "phone": "+1 (974) 435-3832", "address": "800 Stryker Street, Grill, Iowa, 2313", "about": "Non est voluptate duis irure in consequat sit. Esse est ullamco proident sit occaecat esse id et labore elit proident. Quis elit sit reprehenderit consectetur eu. Velit sint duis elit aliquip nisi dolore. Laboris deserunt ad non tempor duis minim incididunt quis deserunt amet non. Cillum est in adipisicing aliquip veniam minim aliqua mollit exercitation cupidatat amet cillum anim minim. Reprehenderit quis eu exercitation exercitation incididunt consequat quis sunt amet consequat.\r\n", "registered": "2014-01-27T15:42:58-13:00", "latitude": -83.720538, "longitude": -29.048888, "tags": [ "qui", "sunt", "enim", "aliqua", "reprehenderit", "laborum", "commodo" ], "friends": [ { "id": 0, "name": "Trisha Banks" }, { "id": 1, "name": "Kelsey Conley" }, { "id": 2, "name": "Terrell Riddle" } ], "greeting": "Hello, Christina Bond! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea256a48b3bd7e6e7f4d", "index": 2820, "guid": "b2cb4429-5f3f-4207-8198-6187e2d64d23", "isActive": true, "balance": "$1,134.22", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Dina Rosa", "gender": "female", "company": "HIVEDOM", "email": "dinarosa@hivedom.com", "phone": "+1 (966) 595-2316", "address": "837 Montgomery Place, Clarence, Nebraska, 6869", "about": "Velit proident elit dolor aliquip minim officia anim nulla eu veniam enim reprehenderit. Esse do quis duis in sint proident esse consequat irure eu voluptate consequat non. Fugiat consectetur sint minim laboris. Mollit mollit aute quis laborum officia. Sit reprehenderit incididunt in est ullamco. Velit laborum labore elit reprehenderit nisi dolore pariatur aliqua.\r\n", "registered": "2014-05-15T18:24:55-12:00", "latitude": -6.8638, "longitude": 29.460972, "tags": [ "velit", "consequat", "et", "fugiat", "cillum", "exercitation", "nisi" ], "friends": [ { "id": 0, "name": "Olga Palmer" }, { "id": 1, "name": "Earnestine Mckenzie" }, { "id": 2, "name": "Brewer Koch" } ], "greeting": "Hello, Dina Rosa! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2553948d788575b4bd", "index": 2821, "guid": "9a3cc0bd-34dc-4381-8226-6a3c4d5069e5", "isActive": true, "balance": "$2,606.44", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Dudley Goodman", "gender": "male", "company": "FIBRODYNE", "email": "dudleygoodman@fibrodyne.com", "phone": "+1 (940) 569-3586", "address": "514 Marconi Place, Coleville, District Of Columbia, 1045", "about": "Magna nulla exercitation qui nulla exercitation et pariatur laboris veniam incididunt. Non exercitation tempor do sint cupidatat qui non occaecat ea quis eu magna est ipsum. Non aute pariatur irure ex ipsum aliqua amet anim incididunt ea sint velit. Qui veniam pariatur ad in consectetur ea pariatur ea sit commodo. Et ad commodo do id nulla officia fugiat eu fugiat laboris exercitation occaecat commodo pariatur.\r\n", "registered": "2014-05-10T21:10:24-12:00", "latitude": 33.534352, "longitude": 106.831082, "tags": [ "dolor", "sit", "reprehenderit", "officia", "cillum", "enim", "et" ], "friends": [ { "id": 0, "name": "Nichols Ray" }, { "id": 1, "name": "Pugh Bradshaw" }, { "id": 2, "name": "Holman King" } ], "greeting": "Hello, Dudley Goodman! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25b718d9bdb9ba1daa", "index": 2822, "guid": "351cd40d-4b42-468a-8d9a-bc92502b9414", "isActive": false, "balance": "$3,799.83", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Mcneil Bender", "gender": "male", "company": "KOG", "email": "mcneilbender@kog.com", "phone": "+1 (999) 456-3383", "address": "776 Suydam Street, Thermal, New Jersey, 5322", "about": "Dolor velit duis velit in adipisicing officia officia tempor aliquip ad deserunt ullamco officia. Deserunt laboris officia culpa aute quis. Aliqua ullamco nulla sint ut officia non irure. Sit ut excepteur elit cillum sunt incididunt cillum. Est anim in eiusmod dolor. Ea nisi esse mollit reprehenderit nostrud cillum quis irure et qui proident quis. Non dolore laborum magna cupidatat enim cupidatat.\r\n", "registered": "2014-02-16T20:21:23-13:00", "latitude": 65.4705, "longitude": 134.395865, "tags": [ "excepteur", "cupidatat", "velit", "deserunt", "exercitation", "labore", "elit" ], "friends": [ { "id": 0, "name": "Marlene Garza" }, { "id": 1, "name": "Ernestine Nolan" }, { "id": 2, "name": "Hebert Cote" } ], "greeting": "Hello, Mcneil Bender! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea258d239b60f106cc2e", "index": 2823, "guid": "f44bf2d5-72e3-4d3c-a293-e8f9daa7507c", "isActive": true, "balance": "$3,299.64", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Johnson Delacruz", "gender": "male", "company": "PREMIANT", "email": "johnsondelacruz@premiant.com", "phone": "+1 (805) 462-2023", "address": "803 Hancock Street, Harmon, Palau, 2055", "about": "Dolore enim magna occaecat eu veniam ea velit et eu aute. Anim incididunt dolor Lorem consequat proident duis minim fugiat reprehenderit aliquip. Et qui reprehenderit et sint duis. Dolore ex exercitation tempor amet enim. In ea in sint culpa aliquip ipsum amet id nulla sint.\r\n", "registered": "2014-03-18T00:29:55-13:00", "latitude": -5.891752, "longitude": -99.431807, "tags": [ "esse", "proident", "et", "tempor", "nostrud", "elit", "elit" ], "friends": [ { "id": 0, "name": "Lynette Sanders" }, { "id": 1, "name": "Jackie Ewing" }, { "id": 2, "name": "Sparks Sexton" } ], "greeting": "Hello, Johnson Delacruz! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25f9fe6010d506b439", "index": 2824, "guid": "1d0667e6-6753-48f0-b909-e60e29361a45", "isActive": true, "balance": "$2,402.20", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Sandra Salinas", "gender": "female", "company": "LIMAGE", "email": "sandrasalinas@limage.com", "phone": "+1 (894) 597-2309", "address": "238 Tudor Terrace, Harleigh, Puerto Rico, 7245", "about": "Ipsum labore nulla in laboris ipsum. Id do et ullamco ipsum qui est commodo ea non. Ex enim deserunt amet ut nisi duis pariatur magna non laboris eu quis. Qui dolore pariatur Lorem est sunt amet incididunt.\r\n", "registered": "2014-05-27T23:11:57-12:00", "latitude": 13.720055, "longitude": -43.408051, "tags": [ "cillum", "dolore", "laborum", "commodo", "et", "est", "eiusmod" ], "friends": [ { "id": 0, "name": "Beard Alexander" }, { "id": 1, "name": "Mcintosh Lane" }, { "id": 2, "name": "Delgado Kline" } ], "greeting": "Hello, Sandra Salinas! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25789502f75f4f91ac", "index": 2825, "guid": "f25cca87-1988-46f4-bc21-6d4c3d75e816", "isActive": false, "balance": "$3,994.98", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Humphrey Lowery", "gender": "male", "company": "ELPRO", "email": "humphreylowery@elpro.com", "phone": "+1 (918) 473-2705", "address": "160 Cranberry Street, Libertytown, California, 1915", "about": "Nisi cillum aute do Lorem voluptate. Ea ex incididunt excepteur tempor exercitation eu velit id ad aute officia dolor deserunt enim. Velit enim commodo incididunt elit do consequat sit occaecat culpa. Est elit fugiat do id et cupidatat mollit fugiat. In excepteur deserunt culpa veniam nisi cupidatat duis aliquip. Id occaecat laboris eiusmod labore veniam id aliquip dolor proident. Sit aliqua sunt mollit pariatur officia do magna non amet irure magna.\r\n", "registered": "2014-07-10T04:55:38-12:00", "latitude": -42.495495, "longitude": -15.054453, "tags": [ "eiusmod", "ut", "aute", "exercitation", "dolore", "id", "non" ], "friends": [ { "id": 0, "name": "Luisa Dodson" }, { "id": 1, "name": "Byers Russell" }, { "id": 2, "name": "Ryan Reese" } ], "greeting": "Hello, Humphrey Lowery! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25730bc5ae660cca82", "index": 2826, "guid": "f273f2b9-2b0b-4881-9bf4-de34ac6612c8", "isActive": true, "balance": "$3,962.19", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Simmons Short", "gender": "male", "company": "OTHERWAY", "email": "simmonsshort@otherway.com", "phone": "+1 (821) 410-2849", "address": "714 Reeve Place, Jeff, Vermont, 7297", "about": "Voluptate minim aute incididunt veniam est. Quis sunt sint cillum veniam quis commodo occaecat nisi incididunt magna officia nulla minim sint. Voluptate deserunt eu consequat ex ullamco esse quis ex eiusmod minim magna adipisicing. Cillum enim excepteur est ullamco aliquip laborum enim eiusmod reprehenderit. Anim elit qui qui tempor tempor reprehenderit non incididunt minim magna aute. Irure do cupidatat deserunt enim sint in minim cillum pariatur in ex ex. Veniam laborum labore tempor deserunt ullamco anim nulla cupidatat aliqua ut.\r\n", "registered": "2014-02-16T20:12:11-13:00", "latitude": 52.761509, "longitude": -8.448018, "tags": [ "sunt", "ullamco", "quis", "elit", "ut", "eu", "commodo" ], "friends": [ { "id": 0, "name": "Megan Cameron" }, { "id": 1, "name": "Georgia Lawrence" }, { "id": 2, "name": "Wendy Small" } ], "greeting": "Hello, Simmons Short! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2558146056795a50b6", "index": 2827, "guid": "e45e20f4-07e5-4107-a778-eda7b64b5b61", "isActive": false, "balance": "$1,885.03", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Marilyn Wilkins", "gender": "female", "company": "CENTURIA", "email": "marilynwilkins@centuria.com", "phone": "+1 (805) 464-3700", "address": "957 Kenmore Court, Laurelton, Indiana, 8842", "about": "Deserunt amet culpa ipsum cupidatat consectetur minim quis duis laborum laborum deserunt non mollit. Anim do fugiat incididunt sint exercitation veniam do. Mollit et aliquip labore commodo. Ipsum nulla pariatur aliqua officia incididunt est non dolore. Est qui laborum eu sunt laboris occaecat amet consequat anim commodo. Duis elit pariatur esse ullamco consequat.\r\n", "registered": "2014-03-09T10:04:45-13:00", "latitude": 70.10273, "longitude": 177.0972, "tags": [ "occaecat", "anim", "amet", "minim", "quis", "et", "nostrud" ], "friends": [ { "id": 0, "name": "Figueroa Frye" }, { "id": 1, "name": "Reba Medina" }, { "id": 2, "name": "Ethel Terry" } ], "greeting": "Hello, Marilyn Wilkins! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25787bf4b366110b40", "index": 2828, "guid": "217629bf-ae68-4225-b642-602374963a6a", "isActive": false, "balance": "$3,162.70", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Julia Mccullough", "gender": "female", "company": "OPTICOM", "email": "juliamccullough@opticom.com", "phone": "+1 (858) 566-2008", "address": "830 Boulevard Court, Barclay, Illinois, 2844", "about": "Minim consectetur eu officia ad cillum ex sunt non esse commodo irure pariatur. Elit enim anim eiusmod ea in non voluptate dolore. Mollit laborum ea minim exercitation veniam aute amet ipsum elit veniam excepteur eu Lorem. In ea ut duis dolore laborum dolor velit nisi enim elit voluptate velit nostrud ipsum. Et officia quis fugiat ex do minim veniam cillum labore. Enim do esse commodo culpa. Lorem excepteur nisi excepteur sint cupidatat officia culpa deserunt adipisicing tempor ad ut est.\r\n", "registered": "2014-04-13T09:22:39-12:00", "latitude": 66.303784, "longitude": -30.495347, "tags": [ "nostrud", "voluptate", "dolor", "ad", "fugiat", "irure", "nostrud" ], "friends": [ { "id": 0, "name": "Baldwin Manning" }, { "id": 1, "name": "Combs Langley" }, { "id": 2, "name": "Jimmie Jackson" } ], "greeting": "Hello, Julia Mccullough! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea254d2261626298b59c", "index": 2829, "guid": "2b8395f8-134d-48a3-946d-289f466c3ee1", "isActive": true, "balance": "$3,968.82", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Bailey Grant", "gender": "male", "company": "MENBRAIN", "email": "baileygrant@menbrain.com", "phone": "+1 (958) 432-2178", "address": "940 McDonald Avenue, Foxworth, South Carolina, 1392", "about": "Duis quis excepteur nisi voluptate nulla pariatur velit veniam ad sit. Eiusmod eu occaecat duis cupidatat. Non adipisicing aute sint id qui cillum aute commodo consequat Lorem minim sint cupidatat sunt.\r\n", "registered": "2014-01-05T06:21:24-13:00", "latitude": -36.783761, "longitude": -102.017323, "tags": [ "dolore", "nulla", "cupidatat", "ipsum", "enim", "laborum", "culpa" ], "friends": [ { "id": 0, "name": "Katrina Hatfield" }, { "id": 1, "name": "Luz Hodges" }, { "id": 2, "name": "Moreno Trevino" } ], "greeting": "Hello, Bailey Grant! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25e260707d883c3241", "index": 2830, "guid": "63fb22c4-cd4c-481c-ace4-aa57536daf51", "isActive": false, "balance": "$3,913.78", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "West Thornton", "gender": "male", "company": "EDECINE", "email": "westthornton@edecine.com", "phone": "+1 (934) 405-3659", "address": "634 Lefferts Place, Alfarata, American Samoa, 464", "about": "Cupidatat ipsum commodo commodo aute dolor nulla id cillum reprehenderit ullamco aliqua. Laboris sint id laboris dolore deserunt tempor quis do consectetur. Dolor culpa sit et et ex exercitation.\r\n", "registered": "2014-07-20T04:17:03-12:00", "latitude": -67.780793, "longitude": 41.852695, "tags": [ "sunt", "culpa", "id", "quis", "eu", "cillum", "id" ], "friends": [ { "id": 0, "name": "Regina Kelley" }, { "id": 1, "name": "Rivers Joseph" }, { "id": 2, "name": "Huffman Stephens" } ], "greeting": "Hello, West Thornton! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25e7e44f698faa8c99", "index": 2831, "guid": "82886f09-ffe2-4efe-a658-b2fd13e6f5ed", "isActive": true, "balance": "$3,982.04", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Orr Norman", "gender": "male", "company": "GRACKER", "email": "orrnorman@gracker.com", "phone": "+1 (851) 566-3073", "address": "518 Lawton Street, Spokane, Delaware, 1224", "about": "Consequat elit nisi esse officia incididunt et. Veniam velit esse ea amet duis eu fugiat adipisicing aliquip laborum in. Minim dolor dolor nostrud consequat nisi do aliquip fugiat nostrud occaecat do. Commodo ad ipsum ipsum elit consectetur est ut incididunt deserunt cupidatat laboris ea reprehenderit. Sunt mollit incididunt voluptate aliquip ad ut cupidatat. Laboris officia culpa sunt amet pariatur pariatur quis duis officia. Cupidatat ex nulla voluptate aute nostrud quis ut.\r\n", "registered": "2014-03-20T13:04:20-13:00", "latitude": -54.40896, "longitude": -150.511927, "tags": [ "pariatur", "minim", "aliqua", "cillum", "fugiat", "ad", "duis" ], "friends": [ { "id": 0, "name": "Iris Nash" }, { "id": 1, "name": "Nicole Gibbs" }, { "id": 2, "name": "Ella Foreman" } ], "greeting": "Hello, Orr Norman! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea259ddd546a6278676f", "index": 2832, "guid": "7bb1e475-279d-4638-8588-02ff24c297f4", "isActive": false, "balance": "$2,535.85", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Adkins Leon", "gender": "male", "company": "ZAJ", "email": "adkinsleon@zaj.com", "phone": "+1 (934) 524-3462", "address": "852 Alabama Avenue, Lewis, Pennsylvania, 5065", "about": "Mollit magna quis pariatur aliqua aute aliquip commodo ad eu nisi tempor irure exercitation. Amet consectetur adipisicing velit nostrud. Et pariatur eiusmod laborum adipisicing veniam. Deserunt adipisicing cillum fugiat pariatur aute qui eu. Enim eiusmod sint dolore fugiat laborum do excepteur fugiat exercitation sint. Ex in excepteur eiusmod veniam anim laborum nostrud mollit exercitation sint commodo id reprehenderit elit.\r\n", "registered": "2014-04-11T01:20:32-12:00", "latitude": -44.742368, "longitude": -77.157012, "tags": [ "ullamco", "elit", "ullamco", "officia", "commodo", "dolore", "qui" ], "friends": [ { "id": 0, "name": "Daugherty Holt" }, { "id": 1, "name": "Lorene Griffin" }, { "id": 2, "name": "Lenora Sutton" } ], "greeting": "Hello, Adkins Leon! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2536424ae6c08e86cb", "index": 2833, "guid": "ff8e5a35-d363-4fda-862e-0c648f697c0b", "isActive": true, "balance": "$1,530.15", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Melba Woodard", "gender": "female", "company": "ZILLAR", "email": "melbawoodard@zillar.com", "phone": "+1 (817) 408-3160", "address": "697 Lafayette Avenue, Kersey, Georgia, 6569", "about": "Sit anim enim aliqua mollit veniam veniam. Eiusmod tempor nisi ut culpa esse. Nulla magna commodo cupidatat sunt est cupidatat esse dolor eiusmod sint sunt pariatur nisi. Quis est aute deserunt occaecat commodo adipisicing qui sint voluptate do id minim tempor culpa. Proident labore occaecat sunt ipsum commodo ut veniam cillum ullamco sunt nisi aute sint. Duis nisi amet amet sint commodo eiusmod quis aute. Incididunt laboris fugiat officia ut magna anim occaecat Lorem.\r\n", "registered": "2014-03-27T11:10:39-13:00", "latitude": -79.794997, "longitude": 151.313144, "tags": [ "nostrud", "anim", "eu", "adipisicing", "laborum", "esse", "incididunt" ], "friends": [ { "id": 0, "name": "Curry Larsen" }, { "id": 1, "name": "Glenna Parks" }, { "id": 2, "name": "Josie Benson" } ], "greeting": "Hello, Melba Woodard! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2580c2324aafc877c0", "index": 2834, "guid": "bc2cd4bd-ab75-4920-8a8e-2c85d6a11a5b", "isActive": false, "balance": "$1,892.30", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Castro Jefferson", "gender": "male", "company": "MEDIFAX", "email": "castrojefferson@medifax.com", "phone": "+1 (977) 407-3478", "address": "357 Elizabeth Place, Lithium, North Dakota, 5706", "about": "Dolor sunt laboris tempor exercitation anim cillum elit esse. Non eiusmod sit est reprehenderit quis excepteur nulla. Est officia laboris laboris incididunt nisi fugiat est laborum nulla consectetur aute. Deserunt enim mollit laboris sunt. Sit elit enim exercitation laboris anim officia elit consectetur. Id id aute nostrud ullamco magna dolor irure sint culpa qui. Reprehenderit et quis nulla sit do.\r\n", "registered": "2014-03-09T03:11:10-13:00", "latitude": -70.043992, "longitude": 81.270544, "tags": [ "excepteur", "reprehenderit", "esse", "sint", "Lorem", "reprehenderit", "officia" ], "friends": [ { "id": 0, "name": "Galloway Ruiz" }, { "id": 1, "name": "Cantrell Mclaughlin" }, { "id": 2, "name": "Janis Bernard" } ], "greeting": "Hello, Castro Jefferson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea253e082a65f2fc35e5", "index": 2835, "guid": "7f255e7e-703e-46a5-a31d-b6df748b4ef7", "isActive": false, "balance": "$3,584.62", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Gray Bonner", "gender": "male", "company": "DOGNOSIS", "email": "graybonner@dognosis.com", "phone": "+1 (811) 594-2574", "address": "241 Independence Avenue, Cavalero, Louisiana, 2893", "about": "Non excepteur duis amet consectetur magna aliqua occaecat pariatur deserunt occaecat aute irure sit. Excepteur magna ex ea anim. In commodo in excepteur aliquip et quis. Ad minim consequat nostrud adipisicing. Est mollit ea culpa dolor incididunt. Minim exercitation id adipisicing laborum non mollit amet.\r\n", "registered": "2014-08-17T04:05:35-12:00", "latitude": -37.06838, "longitude": -16.573546, "tags": [ "anim", "tempor", "dolore", "ut", "cillum", "magna", "pariatur" ], "friends": [ { "id": 0, "name": "Hale Fischer" }, { "id": 1, "name": "Nita Whitney" }, { "id": 2, "name": "Conrad Conway" } ], "greeting": "Hello, Gray Bonner! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25e24db31eec1f1928", "index": 2836, "guid": "3d1956db-21a1-44d4-9535-6b85403a8ca4", "isActive": false, "balance": "$2,295.39", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Savage Patton", "gender": "male", "company": "EXOSPEED", "email": "savagepatton@exospeed.com", "phone": "+1 (880) 484-2587", "address": "779 Elliott Walk, Dexter, Northern Mariana Islands, 545", "about": "Do Lorem officia ut non. Nostrud fugiat Lorem ex culpa ut consectetur anim ex minim irure. Mollit deserunt dolor ut qui laborum nulla ullamco veniam exercitation. Nostrud voluptate consectetur ad velit voluptate est mollit labore ipsum incididunt velit quis. Veniam nostrud est ad laboris aute ullamco non non exercitation aliqua ea. Irure ad enim fugiat ullamco cillum.\r\n", "registered": "2014-04-11T08:57:29-12:00", "latitude": 80.086486, "longitude": 18.455767, "tags": [ "elit", "adipisicing", "do", "cupidatat", "mollit", "non", "reprehenderit" ], "friends": [ { "id": 0, "name": "Steele Hahn" }, { "id": 1, "name": "Lauren Mcpherson" }, { "id": 2, "name": "Shaw Cabrera" } ], "greeting": "Hello, Savage Patton! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea256a28abecfea22e71", "index": 2837, "guid": "eb4ca519-9375-4e2f-b6ef-e1fa89d1e3c5", "isActive": false, "balance": "$3,752.82", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Lynnette Sanchez", "gender": "female", "company": "GLUID", "email": "lynnettesanchez@gluid.com", "phone": "+1 (863) 420-3436", "address": "306 Hunts Lane, Chumuckla, Colorado, 9421", "about": "Laborum commodo id commodo adipisicing proident commodo ea deserunt excepteur. Reprehenderit proident ipsum nostrud cupidatat quis anim anim commodo sit ut. Dolore velit occaecat sunt deserunt quis incididunt. In fugiat fugiat nostrud et eiusmod in. Nulla ipsum quis veniam aliquip ad sint sunt occaecat. Id nostrud cupidatat deserunt pariatur incididunt ullamco ullamco eu aliquip sit dolor. Sunt velit reprehenderit sit esse ea id quis Lorem veniam qui.\r\n", "registered": "2014-06-06T03:30:29-12:00", "latitude": 74.743195, "longitude": -72.937506, "tags": [ "incididunt", "mollit", "ad", "nostrud", "exercitation", "mollit", "adipisicing" ], "friends": [ { "id": 0, "name": "Felecia Davidson" }, { "id": 1, "name": "Baird Preston" }, { "id": 2, "name": "Manuela Williams" } ], "greeting": "Hello, Lynnette Sanchez! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2516815ab73a00303a", "index": 2838, "guid": "2f476473-1469-4c20-9736-125b8505dd63", "isActive": false, "balance": "$2,872.96", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Carey Reilly", "gender": "female", "company": "QUILM", "email": "careyreilly@quilm.com", "phone": "+1 (862) 464-3434", "address": "768 Thames Street, Kipp, Idaho, 7418", "about": "Irure aute deserunt tempor id non eu do ad. Ea ut et qui do consequat ad consectetur eiusmod mollit occaecat commodo exercitation consectetur voluptate. Ut aliqua excepteur aute anim incididunt. Ea ea elit ad est excepteur duis anim labore do dolor pariatur minim pariatur sit. Ad officia dolor ipsum elit aliquip aliquip qui ut laborum irure aliqua tempor adipisicing cupidatat. Id duis aliquip minim consequat pariatur sit aliquip ullamco velit esse est do laboris reprehenderit. Id commodo consectetur veniam amet exercitation velit.\r\n", "registered": "2014-09-13T14:16:10-12:00", "latitude": 51.26832, "longitude": -74.048459, "tags": [ "sunt", "nulla", "elit", "labore", "fugiat", "magna", "nisi" ], "friends": [ { "id": 0, "name": "Shelton Jacobson" }, { "id": 1, "name": "Nancy Jones" }, { "id": 2, "name": "Massey Bennett" } ], "greeting": "Hello, Carey Reilly! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25d036f2ddb1367b4a", "index": 2839, "guid": "9a18458e-f2df-4110-9aef-55c33d6b9a33", "isActive": true, "balance": "$1,567.63", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Chandra Quinn", "gender": "female", "company": "ENJOLA", "email": "chandraquinn@enjola.com", "phone": "+1 (892) 462-3413", "address": "797 Stockton Street, Alden, Marshall Islands, 1303", "about": "Aliqua aute adipisicing est elit irure minim reprehenderit aute veniam reprehenderit nostrud. Ut incididunt et sunt tempor cupidatat culpa reprehenderit voluptate nulla. Sunt ea qui id ut reprehenderit velit esse exercitation et laboris officia aute.\r\n", "registered": "2014-06-21T22:53:49-12:00", "latitude": -66.775963, "longitude": 49.021773, "tags": [ "officia", "cillum", "ad", "laboris", "incididunt", "magna", "pariatur" ], "friends": [ { "id": 0, "name": "Sarah Zimmerman" }, { "id": 1, "name": "Hughes Cruz" }, { "id": 2, "name": "Oneal Moody" } ], "greeting": "Hello, Chandra Quinn! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea251d9853063c306651", "index": 2840, "guid": "25317559-e08d-4e82-8ea2-eb028615b91a", "isActive": true, "balance": "$2,296.09", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Briana Barton", "gender": "female", "company": "SPORTAN", "email": "brianabarton@sportan.com", "phone": "+1 (916) 596-2482", "address": "911 Pierrepont Place, Beyerville, New York, 3330", "about": "Mollit velit dolore magna non incididunt quis commodo nisi eiusmod sint. Ad ipsum culpa deserunt ad adipisicing duis mollit dolore. Id incididunt enim ut ea tempor qui.\r\n", "registered": "2014-06-21T18:23:31-12:00", "latitude": -49.784949, "longitude": -21.483666, "tags": [ "anim", "consectetur", "non", "qui", "aute", "occaecat", "commodo" ], "friends": [ { "id": 0, "name": "Chasity Ayala" }, { "id": 1, "name": "Torres Workman" }, { "id": 2, "name": "Jensen Hopper" } ], "greeting": "Hello, Briana Barton! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25822bf696c3054dc9", "index": 2841, "guid": "8a134d4a-7d2d-49c6-a7f2-a216723e7eba", "isActive": true, "balance": "$3,393.28", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Josefa Turner", "gender": "female", "company": "OPTICON", "email": "josefaturner@opticon.com", "phone": "+1 (855) 427-3177", "address": "580 Regent Place, Wells, Guam, 7893", "about": "Minim cillum dolore magna eiusmod aute sunt deserunt ea mollit voluptate reprehenderit commodo. Enim et consectetur magna sunt. Ea mollit reprehenderit nulla aliquip aliqua aliquip sunt aute ullamco. Officia proident veniam sit esse officia nulla non proident id elit voluptate. Esse quis dolor eiusmod occaecat cupidatat anim consectetur adipisicing proident ea dolor. Nulla laboris ullamco esse ipsum fugiat.\r\n", "registered": "2014-01-13T00:41:03-13:00", "latitude": -67.35948, "longitude": -51.247186, "tags": [ "aute", "anim", "consectetur", "ut", "excepteur", "et", "nulla" ], "friends": [ { "id": 0, "name": "Ollie Shaffer" }, { "id": 1, "name": "Lula Miranda" }, { "id": 2, "name": "Sadie Cash" } ], "greeting": "Hello, Josefa Turner! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea259402c6a6bea25d83", "index": 2842, "guid": "a2a3017e-1373-4459-8441-6b2ff50687e0", "isActive": true, "balance": "$3,514.83", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Jeannie Randall", "gender": "female", "company": "AEORA", "email": "jeannierandall@aeora.com", "phone": "+1 (930) 558-2466", "address": "917 Ridgecrest Terrace, Dargan, Virgin Islands, 1597", "about": "Enim qui qui nulla culpa culpa pariatur dolore eu laborum quis deserunt sit. Magna ullamco reprehenderit qui excepteur est tempor eiusmod id quis fugiat dolore fugiat. Reprehenderit enim aliquip dolore cillum quis esse est. Amet enim est dolor ullamco aliquip ad consectetur ex labore nulla.\r\n", "registered": "2014-02-06T17:26:34-13:00", "latitude": -77.172569, "longitude": -127.460581, "tags": [ "nisi", "cupidatat", "non", "esse", "labore", "veniam", "non" ], "friends": [ { "id": 0, "name": "Rosalind Drake" }, { "id": 1, "name": "Harriet Calderon" }, { "id": 2, "name": "Amy Mckinney" } ], "greeting": "Hello, Jeannie Randall! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea252b3f574049a0cba6", "index": 2843, "guid": "73d4a8f5-50d0-46c2-9d23-711433b83f0a", "isActive": true, "balance": "$3,341.27", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Hutchinson Estrada", "gender": "male", "company": "TURNLING", "email": "hutchinsonestrada@turnling.com", "phone": "+1 (873) 458-2724", "address": "319 Cove Lane, Selma, Massachusetts, 5950", "about": "Ullamco qui non occaecat labore do fugiat culpa sit aliqua. Id deserunt aliqua anim laboris eu nulla nisi exercitation magna dolore irure quis deserunt. Consequat dolore aliquip est aliqua proident qui culpa qui amet amet ullamco commodo dolore aliqua. Consectetur mollit esse reprehenderit aliquip in enim. Sint nulla aliquip et esse consequat sunt et reprehenderit commodo sint. Incididunt labore eu eiusmod ad cupidatat pariatur duis ullamco exercitation irure exercitation sint velit.\r\n", "registered": "2014-04-07T07:23:42-12:00", "latitude": 3.159268, "longitude": -90.525861, "tags": [ "Lorem", "cillum", "excepteur", "ad", "velit", "esse", "ut" ], "friends": [ { "id": 0, "name": "Corinne Weaver" }, { "id": 1, "name": "Stevens Welch" }, { "id": 2, "name": "Cynthia Durham" } ], "greeting": "Hello, Hutchinson Estrada! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25edc5f35060252d85", "index": 2844, "guid": "032094c0-144b-4cfe-bf6e-6dd90b36c2b4", "isActive": true, "balance": "$1,001.00", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Elizabeth Woodward", "gender": "female", "company": "CINESANCT", "email": "elizabethwoodward@cinesanct.com", "phone": "+1 (810) 554-2342", "address": "448 Willmohr Street, Oretta, Utah, 2109", "about": "Cillum est Lorem qui sit labore fugiat reprehenderit est fugiat. Minim eiusmod magna sint dolor irure. Laboris do amet tempor deserunt nostrud excepteur minim. Labore ipsum ex ea exercitation voluptate incididunt eiusmod veniam eiusmod excepteur ea nulla. Et sunt voluptate tempor eiusmod ullamco proident. In labore do qui fugiat in.\r\n", "registered": "2014-03-08T11:10:06-13:00", "latitude": -57.773098, "longitude": 3.60742, "tags": [ "exercitation", "nulla", "culpa", "fugiat", "laboris", "et", "velit" ], "friends": [ { "id": 0, "name": "Celia Fowler" }, { "id": 1, "name": "Rowena Holloway" }, { "id": 2, "name": "Carmela Britt" } ], "greeting": "Hello, Elizabeth Woodward! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2559aef1e74a962f20", "index": 2845, "guid": "5858c75a-82b7-4d3b-9ba3-30135f035cf5", "isActive": true, "balance": "$3,100.22", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Vega Berg", "gender": "male", "company": "KEEG", "email": "vegaberg@keeg.com", "phone": "+1 (867) 491-2090", "address": "812 Homecrest Court, Cucumber, Montana, 9814", "about": "Commodo fugiat eiusmod incididunt et nostrud laborum est dolor. Nisi consectetur aliqua amet enim nostrud sint tempor cupidatat pariatur eiusmod labore voluptate veniam enim. Enim ipsum eu elit duis aute proident veniam minim minim in. Laboris et dolor veniam qui laboris non eu aliqua labore culpa mollit reprehenderit id. Ut duis veniam laboris adipisicing Lorem eu cillum est est do veniam eiusmod. Elit ex commodo et officia cillum labore et. Eiusmod eu mollit exercitation elit eiusmod est.\r\n", "registered": "2014-07-08T15:24:44-12:00", "latitude": 62.650885, "longitude": 61.231643, "tags": [ "in", "Lorem", "excepteur", "laboris", "duis", "consequat", "proident" ], "friends": [ { "id": 0, "name": "Rita Moss" }, { "id": 1, "name": "Kennedy Stark" }, { "id": 2, "name": "Nadia Mendoza" } ], "greeting": "Hello, Vega Berg! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea25c8586c3fa853e977", "index": 2846, "guid": "6483e7d0-5a84-463e-a39d-f4d24f025bd3", "isActive": false, "balance": "$1,150.78", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Geneva Harrison", "gender": "female", "company": "ZAPPIX", "email": "genevaharrison@zappix.com", "phone": "+1 (810) 594-2257", "address": "424 Strickland Avenue, Wikieup, Wisconsin, 1800", "about": "Do ad est eu nostrud sit adipisicing pariatur pariatur anim cupidatat eiusmod ut irure. Esse sint cupidatat magna magna aliqua nulla pariatur ad. Eu pariatur cillum pariatur irure reprehenderit duis incididunt irure. Nostrud exercitation veniam irure ipsum sit id deserunt do consequat. Ipsum esse enim do est nostrud incididunt pariatur dolore. Est proident velit in nostrud proident occaecat amet laboris minim. Pariatur incididunt in elit occaecat eiusmod fugiat fugiat esse ea anim nisi sunt aliquip.\r\n", "registered": "2014-04-13T09:01:37-12:00", "latitude": 29.289579, "longitude": 174.613087, "tags": [ "minim", "eiusmod", "incididunt", "aliquip", "deserunt", "est", "occaecat" ], "friends": [ { "id": 0, "name": "Kristin Dickerson" }, { "id": 1, "name": "Sanchez Arnold" }, { "id": 2, "name": "Sofia Rodriquez" } ], "greeting": "Hello, Geneva Harrison! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25a4f459c0194d7b49", "index": 2847, "guid": "85f09d3b-b3bf-473c-819e-7d3b297ec1ac", "isActive": false, "balance": "$1,263.22", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Estela Guy", "gender": "female", "company": "DANCITY", "email": "estelaguy@dancity.com", "phone": "+1 (805) 582-3626", "address": "782 Dorchester Road, Sunbury, Maine, 1373", "about": "Laborum enim sint ipsum consequat labore commodo excepteur adipisicing veniam. Esse aliqua eiusmod incididunt Lorem eu aute esse aliqua eiusmod. Enim laboris ex voluptate sunt proident ad officia ex minim non. Eu do pariatur minim dolor minim. Culpa reprehenderit dolor non pariatur ut duis.\r\n", "registered": "2014-08-21T10:55:42-12:00", "latitude": -77.796227, "longitude": -158.983345, "tags": [ "incididunt", "irure", "labore", "eu", "qui", "sit", "veniam" ], "friends": [ { "id": 0, "name": "Doris Vang" }, { "id": 1, "name": "Duncan Lynn" }, { "id": 2, "name": "England York" } ], "greeting": "Hello, Estela Guy! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea253d86f3eaa0b93382", "index": 2848, "guid": "8ac1c505-5ecf-4db9-b53e-a1af2921a0ab", "isActive": true, "balance": "$3,671.04", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Nellie Erickson", "gender": "female", "company": "GREEKER", "email": "nellieerickson@greeker.com", "phone": "+1 (822) 407-2835", "address": "919 Landis Court, Enetai, Virginia, 1792", "about": "Reprehenderit elit nulla irure culpa incididunt cupidatat enim dolor magna nostrud deserunt ut ex. Non deserunt esse nisi cillum exercitation do adipisicing. Consequat non adipisicing labore reprehenderit cillum pariatur aliquip.\r\n", "registered": "2014-07-16T06:48:19-12:00", "latitude": -29.042822, "longitude": -128.232896, "tags": [ "excepteur", "quis", "duis", "id", "ipsum", "in", "quis" ], "friends": [ { "id": 0, "name": "Cobb Fields" }, { "id": 1, "name": "Long Aguilar" }, { "id": 2, "name": "Alford Gomez" } ], "greeting": "Hello, Nellie Erickson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2564bee043ebd896ec", "index": 2849, "guid": "8b0b7196-814b-4cb2-aac1-07cf72470bb1", "isActive": true, "balance": "$3,842.34", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Carol Stewart", "gender": "female", "company": "WRAPTURE", "email": "carolstewart@wrapture.com", "phone": "+1 (813) 481-3694", "address": "793 Gatling Place, Harviell, Kentucky, 2237", "about": "Eu cupidatat cupidatat in mollit occaecat occaecat tempor qui id cillum excepteur nulla proident. Pariatur magna ea qui veniam reprehenderit Lorem id qui. Labore duis et sit do ullamco magna ad magna id consequat. Incididunt laboris esse eiusmod ut ullamco ea qui qui duis aliqua sit eu cillum voluptate. Fugiat occaecat non voluptate cupidatat laboris est.\r\n", "registered": "2014-03-16T17:28:05-13:00", "latitude": -20.540095, "longitude": -88.262501, "tags": [ "exercitation", "velit", "est", "eu", "magna", "culpa", "labore" ], "friends": [ { "id": 0, "name": "Gracie Foster" }, { "id": 1, "name": "Stephanie Pacheco" }, { "id": 2, "name": "Heather Rodgers" } ], "greeting": "Hello, Carol Stewart! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25d18aef607ef23734", "index": 2850, "guid": "315e9e4f-8133-40d9-a3da-cd278d167a42", "isActive": false, "balance": "$2,574.57", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Kristy Meyers", "gender": "female", "company": "PORTALINE", "email": "kristymeyers@portaline.com", "phone": "+1 (817) 592-2848", "address": "361 Bushwick Avenue, Eagleville, Connecticut, 4581", "about": "Veniam consectetur excepteur est commodo eiusmod consequat cupidatat. Proident adipisicing non nisi in occaecat. Ipsum esse nisi fugiat et. Enim elit elit dolor magna exercitation exercitation laborum ullamco nisi laborum aute cupidatat sit. Anim enim duis incididunt cupidatat deserunt. Nulla ut pariatur Lorem laboris officia in ea fugiat culpa magna est fugiat sint id.\r\n", "registered": "2014-09-14T10:14:51-12:00", "latitude": 56.241118, "longitude": 167.884954, "tags": [ "commodo", "irure", "aliqua", "nisi", "eu", "culpa", "sint" ], "friends": [ { "id": 0, "name": "Holly Roach" }, { "id": 1, "name": "Grant Gallegos" }, { "id": 2, "name": "Maryellen Stokes" } ], "greeting": "Hello, Kristy Meyers! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea252f0bdf75dd5941b5", "index": 2851, "guid": "b041311f-5a92-435f-b2b5-66853ff49bf7", "isActive": true, "balance": "$2,131.24", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Griffin Marks", "gender": "male", "company": "GONKLE", "email": "griffinmarks@gonkle.com", "phone": "+1 (844) 588-2878", "address": "476 Bragg Court, Groveville, Mississippi, 5732", "about": "Sint nostrud veniam occaecat proident cillum exercitation commodo ut. Eu sunt nisi tempor nisi culpa. Consectetur et anim mollit minim commodo elit non adipisicing.\r\n", "registered": "2014-07-26T05:53:19-12:00", "latitude": -18.192956, "longitude": 103.422889, "tags": [ "adipisicing", "tempor", "laboris", "ad", "duis", "ullamco", "anim" ], "friends": [ { "id": 0, "name": "Dolly Woods" }, { "id": 1, "name": "Jodie Briggs" }, { "id": 2, "name": "Toni Serrano" } ], "greeting": "Hello, Griffin Marks! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea256cb2f37bce38cb9a", "index": 2852, "guid": "1b0e7e47-7dcf-43f6-978e-fe99690648f7", "isActive": true, "balance": "$3,661.17", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Estella Cooper", "gender": "female", "company": "BALUBA", "email": "estellacooper@baluba.com", "phone": "+1 (951) 551-3416", "address": "110 Lombardy Street, Gila, Washington, 2452", "about": "Quis aute sit aliquip irure amet. Exercitation sint mollit proident elit quis. Lorem in veniam aliquip exercitation elit Lorem aute ipsum. Esse incididunt do sunt nostrud. Lorem non consectetur irure deserunt in esse minim aliquip Lorem. Dolor aliquip minim veniam enim exercitation et. Voluptate sunt consequat occaecat aute dolore nostrud mollit ad eu do irure amet anim.\r\n", "registered": "2014-07-20T05:20:58-12:00", "latitude": -74.346416, "longitude": -98.168992, "tags": [ "est", "esse", "nostrud", "esse", "eiusmod", "do", "ipsum" ], "friends": [ { "id": 0, "name": "Candy Floyd" }, { "id": 1, "name": "Rosales Stevenson" }, { "id": 2, "name": "Tommie Sargent" } ], "greeting": "Hello, Estella Cooper! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25a8e558eac1131455", "index": 2853, "guid": "33425841-3bad-423e-aeb8-d21d502edb67", "isActive": true, "balance": "$2,986.87", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Mckenzie Johnston", "gender": "male", "company": "EXTRAGEN", "email": "mckenziejohnston@extragen.com", "phone": "+1 (859) 501-2884", "address": "995 Jerome Avenue, Albrightsville, Tennessee, 3776", "about": "Ullamco consequat quis deserunt ipsum proident minim ex sunt laboris velit officia et. Fugiat adipisicing mollit fugiat adipisicing id magna esse culpa exercitation voluptate. Sit Lorem laboris deserunt eiusmod et non magna consequat. Deserunt commodo anim sit labore Lorem et consequat sit. In dolor mollit ipsum et nulla excepteur laboris ad minim sit. Officia laboris aute tempor dolor reprehenderit laborum.\r\n", "registered": "2014-09-19T10:55:02-12:00", "latitude": 15.518182, "longitude": 126.133404, "tags": [ "nulla", "consectetur", "ea", "sunt", "sint", "veniam", "occaecat" ], "friends": [ { "id": 0, "name": "Hopper Valenzuela" }, { "id": 1, "name": "Traci Richards" }, { "id": 2, "name": "Webster Duffy" } ], "greeting": "Hello, Mckenzie Johnston! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea256e6470e952fed072", "index": 2854, "guid": "9bcd63f6-35ed-4825-a59f-9e272a786ad2", "isActive": false, "balance": "$3,506.83", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Ingrid Blanchard", "gender": "female", "company": "KAGGLE", "email": "ingridblanchard@kaggle.com", "phone": "+1 (843) 550-2354", "address": "314 Portal Street, Brogan, Alabama, 9514", "about": "Magna proident aliquip velit aliquip culpa reprehenderit do. Tempor culpa ea laborum velit exercitation. Pariatur consequat non irure adipisicing adipisicing eiusmod deserunt nulla voluptate. Est est anim reprehenderit irure amet pariatur id irure fugiat minim incididunt. Commodo aute Lorem eu ullamco. Reprehenderit sint ullamco ipsum irure nulla officia incididunt ea in enim proident. Ullamco sunt eiusmod sint deserunt mollit exercitation laborum.\r\n", "registered": "2014-02-27T17:17:25-13:00", "latitude": 51.018512, "longitude": 76.909059, "tags": [ "dolor", "mollit", "consequat", "consectetur", "ullamco", "nostrud", "veniam" ], "friends": [ { "id": 0, "name": "Norton Craig" }, { "id": 1, "name": "Tracy Byrd" }, { "id": 2, "name": "Liza White" } ], "greeting": "Hello, Ingrid Blanchard! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25ea9f78f903d77915", "index": 2855, "guid": "329e15d0-2abb-4a0d-9454-faa5eb944228", "isActive": false, "balance": "$1,212.79", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Katy Hensley", "gender": "female", "company": "CUIZINE", "email": "katyhensley@cuizine.com", "phone": "+1 (978) 401-3982", "address": "234 Canton Court, Wright, Ohio, 5429", "about": "Nostrud pariatur laborum sint pariatur commodo et nisi enim fugiat. Esse nisi eu sit labore reprehenderit excepteur velit ullamco commodo. Fugiat reprehenderit irure do fugiat sit non dolor sint anim nulla. Lorem eu culpa deserunt labore. Cillum nulla laboris laboris consequat laboris dolor consequat adipisicing fugiat amet.\r\n", "registered": "2014-02-01T17:49:04-13:00", "latitude": 77.882279, "longitude": 130.488558, "tags": [ "ut", "esse", "id", "ipsum", "mollit", "officia", "id" ], "friends": [ { "id": 0, "name": "Miles Martinez" }, { "id": 1, "name": "Dillard Richmond" }, { "id": 2, "name": "Newton Mcclure" } ], "greeting": "Hello, Katy Hensley! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea257d917c8949979492", "index": 2856, "guid": "9db13f9c-d2d6-472f-87e1-1728837d9d4a", "isActive": true, "balance": "$2,812.70", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Dyer Peters", "gender": "male", "company": "XUMONK", "email": "dyerpeters@xumonk.com", "phone": "+1 (850) 417-3199", "address": "198 Willow Street, Fowlerville, Hawaii, 4549", "about": "Nostrud nisi culpa veniam officia ad incididunt veniam cillum sunt do aliqua exercitation. Aliquip labore nostrud est fugiat cillum reprehenderit elit enim labore aliqua quis tempor. Lorem mollit ut elit id velit reprehenderit. Enim eiusmod excepteur sunt tempor nulla tempor esse qui proident exercitation duis in voluptate.\r\n", "registered": "2014-04-12T23:41:09-12:00", "latitude": -61.689158, "longitude": 160.030175, "tags": [ "do", "exercitation", "et", "sunt", "enim", "proident", "sint" ], "friends": [ { "id": 0, "name": "Austin Lara" }, { "id": 1, "name": "Reed Cleveland" }, { "id": 2, "name": "Flora Howell" } ], "greeting": "Hello, Dyer Peters! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea258a8f547adc60d6d4", "index": 2857, "guid": "d0fc90d3-b923-49b6-a2d9-5d323f97f004", "isActive": false, "balance": "$1,368.39", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Kim Nielsen", "gender": "female", "company": "FUTURITY", "email": "kimnielsen@futurity.com", "phone": "+1 (841) 545-2670", "address": "256 Sutter Avenue, Lutsen, New Mexico, 8982", "about": "Sit voluptate nisi aliqua mollit duis velit exercitation pariatur. Do eu incididunt irure excepteur amet cillum pariatur cupidatat laborum nulla laboris duis officia elit. Aliquip veniam voluptate nostrud dolore incididunt eu laborum magna. Ex irure et magna ullamco irure ad adipisicing deserunt nostrud incididunt in sint adipisicing enim. Veniam laboris fugiat non proident consequat qui qui ipsum. Excepteur velit ex in fugiat adipisicing sit. Amet eu anim magna officia.\r\n", "registered": "2014-05-09T17:30:56-12:00", "latitude": -0.940337, "longitude": 179.48116, "tags": [ "minim", "officia", "irure", "laborum", "laboris", "laboris", "excepteur" ], "friends": [ { "id": 0, "name": "Josefina Rhodes" }, { "id": 1, "name": "Ursula Hartman" }, { "id": 2, "name": "Juanita Travis" } ], "greeting": "Hello, Kim Nielsen! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea25b6f0678d1cd005e2", "index": 2858, "guid": "6420510f-e1cf-4782-b645-2aeab203de95", "isActive": false, "balance": "$1,367.33", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Guy Wilson", "gender": "male", "company": "PRIMORDIA", "email": "guywilson@primordia.com", "phone": "+1 (855) 445-2036", "address": "140 Conduit Boulevard, Como, Maryland, 1208", "about": "Minim laboris eu voluptate mollit excepteur enim. Occaecat nostrud et nostrud ullamco dolor. Ullamco aliqua duis irure amet cupidatat.\r\n", "registered": "2014-06-26T11:51:44-12:00", "latitude": -61.004093, "longitude": 82.321685, "tags": [ "voluptate", "sint", "est", "sit", "in", "ad", "voluptate" ], "friends": [ { "id": 0, "name": "Koch Pace" }, { "id": 1, "name": "Green Sparks" }, { "id": 2, "name": "Eleanor Patterson" } ], "greeting": "Hello, Guy Wilson! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea250add4fdc16f14389", "index": 2859, "guid": "92fa9772-cf2a-474f-bc38-df50580f037b", "isActive": false, "balance": "$3,565.93", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Rebekah Wood", "gender": "female", "company": "PYRAMAX", "email": "rebekahwood@pyramax.com", "phone": "+1 (890) 433-2398", "address": "182 Court Street, Eastvale, Alaska, 3697", "about": "Ex ullamco sit fugiat non veniam anim nostrud sint officia voluptate. Sint tempor aute qui culpa occaecat et. Laboris laborum nulla est quis consectetur id laborum magna. Exercitation excepteur elit anim voluptate do enim sint tempor. Incididunt laborum aute officia laborum irure. Aliquip cillum ea id occaecat culpa dolor sunt deserunt adipisicing consequat quis pariatur nisi. Fugiat cillum mollit culpa deserunt qui eiusmod in nisi.\r\n", "registered": "2014-04-24T23:26:19-12:00", "latitude": 59.573373, "longitude": -68.757596, "tags": [ "nisi", "tempor", "nisi", "reprehenderit", "voluptate", "magna", "reprehenderit" ], "friends": [ { "id": 0, "name": "Melton Rodriguez" }, { "id": 1, "name": "Jewell Bates" }, { "id": 2, "name": "Lilian Shepard" } ], "greeting": "Hello, Rebekah Wood! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea25bc14b49a10e21414", "index": 2860, "guid": "f7319172-3dd2-4dc8-b130-c5597b915395", "isActive": false, "balance": "$2,920.27", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Randall Mercado", "gender": "male", "company": "KATAKANA", "email": "randallmercado@katakana.com", "phone": "+1 (892) 543-2149", "address": "241 Lexington Avenue, Tooleville, Arizona, 2599", "about": "Quis proident eiusmod deserunt esse ad in amet ut irure magna cillum anim. Cillum est commodo fugiat do sint. Commodo dolor adipisicing nostrud veniam ut sit reprehenderit amet veniam aliquip excepteur aliqua dolor. Culpa mollit cillum dolore enim reprehenderit eiusmod incididunt excepteur nisi excepteur cupidatat occaecat duis nulla.\r\n", "registered": "2014-07-03T13:05:42-12:00", "latitude": -6.631274, "longitude": -60.100241, "tags": [ "adipisicing", "et", "aliqua", "aliquip", "aliqua", "incididunt", "cupidatat" ], "friends": [ { "id": 0, "name": "Kerr Fitzpatrick" }, { "id": 1, "name": "Reynolds Hart" }, { "id": 2, "name": "Townsend Poole" } ], "greeting": "Hello, Randall Mercado! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea251596450a66a02164", "index": 2861, "guid": "9e36372e-5038-4347-ad97-1284e561ddba", "isActive": false, "balance": "$1,658.04", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Selena Franks", "gender": "female", "company": "ILLUMITY", "email": "selenafranks@illumity.com", "phone": "+1 (946) 486-3635", "address": "725 Brighton Court, Lavalette, Federated States Of Micronesia, 5250", "about": "Irure minim ullamco ad id esse eiusmod anim voluptate deserunt sit. Consequat cupidatat aute fugiat irure. Magna sunt eiusmod voluptate do duis excepteur exercitation. Officia non consectetur non consequat nostrud aute occaecat irure laborum cupidatat exercitation excepteur dolore aliquip. Dolore aliqua commodo culpa elit irure laborum incididunt minim est quis culpa ullamco velit dolor.\r\n", "registered": "2014-06-20T20:18:55-12:00", "latitude": 48.989972, "longitude": 101.363261, "tags": [ "labore", "sunt", "velit", "et", "aute", "consequat", "dolore" ], "friends": [ { "id": 0, "name": "Mae Watson" }, { "id": 1, "name": "Pace Shaw" }, { "id": 2, "name": "Sosa Smith" } ], "greeting": "Hello, Selena Franks! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2589ac5131a4457dd6", "index": 2862, "guid": "be0d5fdc-adb5-4f8b-abd9-4556f5d29460", "isActive": false, "balance": "$1,067.70", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Chavez Bell", "gender": "male", "company": "PARLEYNET", "email": "chavezbell@parleynet.com", "phone": "+1 (833) 583-3615", "address": "487 Columbia Street, Crown, Oklahoma, 5901", "about": "Minim cillum tempor enim velit excepteur incididunt minim pariatur irure. Lorem adipisicing ex dolore id. Labore velit laboris nostrud nulla consectetur sit deserunt labore in consequat laboris. Sunt occaecat ut do occaecat sit aliquip ullamco consectetur culpa. Enim qui id do exercitation deserunt cupidatat nulla ad ex sint nostrud et ipsum.\r\n", "registered": "2014-09-07T23:53:09-12:00", "latitude": -29.862567, "longitude": -140.167606, "tags": [ "reprehenderit", "amet", "minim", "nisi", "excepteur", "proident", "commodo" ], "friends": [ { "id": 0, "name": "Deann Simon" }, { "id": 1, "name": "Nichole Orr" }, { "id": 2, "name": "Gates Page" } ], "greeting": "Hello, Chavez Bell! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2668240406fc2781ac", "index": 2863, "guid": "e31a6b47-f7e8-4380-89e8-e19d1089fe8c", "isActive": true, "balance": "$1,627.39", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Ginger Greene", "gender": "female", "company": "ASSURITY", "email": "gingergreene@assurity.com", "phone": "+1 (849) 433-2665", "address": "760 Butler Street, Katonah, Michigan, 869", "about": "Cillum ex cillum anim eiusmod aute amet. Cupidatat enim commodo aliquip culpa deserunt qui esse elit esse ipsum Lorem do et culpa. Pariatur culpa tempor est eu eu. Adipisicing ex id ipsum ad exercitation pariatur reprehenderit. Tempor irure officia nulla eiusmod do anim occaecat ad labore quis.\r\n", "registered": "2014-06-10T11:36:16-12:00", "latitude": -42.589603, "longitude": 160.91305, "tags": [ "consectetur", "officia", "ex", "magna", "elit", "ex", "enim" ], "friends": [ { "id": 0, "name": "Queen Flowers" }, { "id": 1, "name": "June Spencer" }, { "id": 2, "name": "Maxwell Booker" } ], "greeting": "Hello, Ginger Greene! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26333f73dee634a58c", "index": 2864, "guid": "253fd625-75cb-48e5-a7d6-d1de491c207c", "isActive": true, "balance": "$1,495.38", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Calhoun Vinson", "gender": "male", "company": "MEDMEX", "email": "calhounvinson@medmex.com", "phone": "+1 (861) 558-3265", "address": "876 Beekman Place, Greenock, Kansas, 210", "about": "Nisi mollit do do aute officia cupidatat pariatur non dolore cillum reprehenderit. Amet laboris enim labore id dolor irure enim excepteur sint incididunt veniam. Magna pariatur sit nisi nulla ex eiusmod ea adipisicing. Commodo nulla fugiat et eu do laboris tempor reprehenderit sint qui sit.\r\n", "registered": "2014-01-06T18:51:22-13:00", "latitude": -67.284695, "longitude": 136.56289, "tags": [ "anim", "cillum", "commodo", "ex", "anim", "sunt", "anim" ], "friends": [ { "id": 0, "name": "David Craft" }, { "id": 1, "name": "Fisher Frazier" }, { "id": 2, "name": "Edna Guerrero" } ], "greeting": "Hello, Calhoun Vinson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2665067ebd8de756b7", "index": 2865, "guid": "0deeb4c7-2d0c-42f4-abf7-90e21a4a7ddc", "isActive": true, "balance": "$3,538.44", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Suzette Francis", "gender": "female", "company": "VELOS", "email": "suzettefrancis@velos.com", "phone": "+1 (860) 492-3369", "address": "396 Dwight Street, Celeryville, South Dakota, 9793", "about": "Proident et non qui ut eiusmod aute dolor qui. Anim qui voluptate ad non et incididunt. Ad quis elit culpa voluptate tempor dolore sunt aute tempor laboris eiusmod.\r\n", "registered": "2014-08-28T06:46:51-12:00", "latitude": 21.008502, "longitude": -109.445901, "tags": [ "aute", "laboris", "nostrud", "excepteur", "veniam", "eiusmod", "ullamco" ], "friends": [ { "id": 0, "name": "Randolph Wiley" }, { "id": 1, "name": "Cheri Kelly" }, { "id": 2, "name": "Coleen Klein" } ], "greeting": "Hello, Suzette Francis! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26121782ce7b3be9a9", "index": 2866, "guid": "f2936910-9691-46da-aee4-c090c92005d3", "isActive": false, "balance": "$3,947.09", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Margret Mcbride", "gender": "female", "company": "SUSTENZA", "email": "margretmcbride@sustenza.com", "phone": "+1 (910) 550-2189", "address": "544 Bragg Street, Venice, West Virginia, 3307", "about": "Esse dolor nulla adipisicing qui quis nostrud laboris. Proident quis quis proident irure ipsum ipsum dolor esse qui dolor voluptate irure fugiat. Id non aute Lorem magna ad.\r\n", "registered": "2014-04-20T23:26:24-12:00", "latitude": -9.86242, "longitude": -50.757518, "tags": [ "ad", "voluptate", "eiusmod", "et", "Lorem", "enim", "occaecat" ], "friends": [ { "id": 0, "name": "Kelley Carey" }, { "id": 1, "name": "Myrtle Fry" }, { "id": 2, "name": "Watts Beasley" } ], "greeting": "Hello, Margret Mcbride! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26eae2d5ed850476ad", "index": 2867, "guid": "c645752d-b30e-4142-940c-4becf48f8783", "isActive": true, "balance": "$3,276.02", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Shelley Gaines", "gender": "female", "company": "GRAINSPOT", "email": "shelleygaines@grainspot.com", "phone": "+1 (821) 527-3093", "address": "414 Gotham Avenue, Benson, Texas, 4360", "about": "Mollit incididunt do minim mollit quis laborum duis culpa. Ex nostrud anim enim ut veniam irure proident non adipisicing commodo. Consectetur ea do labore laborum irure nostrud esse sunt ullamco amet irure. Anim aute ex aliquip aute minim labore elit et dolor amet nulla mollit consectetur consectetur. Nulla eu voluptate pariatur duis voluptate mollit nostrud aute. Qui nisi occaecat pariatur laborum veniam ullamco nostrud Lorem pariatur dolore fugiat qui laborum. Elit sit et id anim mollit non quis ipsum veniam.\r\n", "registered": "2014-03-07T23:33:32-13:00", "latitude": -66.72643, "longitude": 15.753624, "tags": [ "ullamco", "sunt", "voluptate", "ut", "mollit", "ullamco", "non" ], "friends": [ { "id": 0, "name": "Hensley Warner" }, { "id": 1, "name": "Maritza Henry" }, { "id": 2, "name": "Tessa Clark" } ], "greeting": "Hello, Shelley Gaines! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26cf13669939e0f87e", "index": 2868, "guid": "950086cd-4528-43b6-a0d8-4b6a8bc0869b", "isActive": true, "balance": "$1,808.41", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Carrie Baird", "gender": "female", "company": "QUALITEX", "email": "carriebaird@qualitex.com", "phone": "+1 (811) 586-2053", "address": "219 Rockaway Parkway, Stollings, Oregon, 1482", "about": "Anim dolor excepteur culpa pariatur magna in. Exercitation amet laborum officia non ex exercitation. Ex exercitation pariatur nostrud culpa amet aute ad sint aute. Eu do Lorem ipsum tempor tempor irure eiusmod amet consectetur excepteur. Ullamco ipsum et qui cillum veniam sint enim velit quis qui veniam.\r\n", "registered": "2014-09-01T01:27:27-12:00", "latitude": 29.527476, "longitude": -139.849565, "tags": [ "aute", "anim", "nostrud", "aliquip", "in", "quis", "ut" ], "friends": [ { "id": 0, "name": "Hamilton Noel" }, { "id": 1, "name": "Harris Dunlap" }, { "id": 2, "name": "Bridgett Kramer" } ], "greeting": "Hello, Carrie Baird! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea265be7a8a4a6ee99da", "index": 2869, "guid": "5cef66b4-e34f-425d-9a26-34770c653025", "isActive": true, "balance": "$2,863.76", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Langley Hubbard", "gender": "male", "company": "ZBOO", "email": "langleyhubbard@zboo.com", "phone": "+1 (991) 427-2484", "address": "871 Powers Street, Nettie, Nevada, 8833", "about": "Pariatur eiusmod enim ex adipisicing officia dolore occaecat labore eu labore sunt. Do ut excepteur et enim laborum minim nostrud consectetur minim. Deserunt velit velit aliqua ut aute proident voluptate eiusmod do irure amet laborum mollit irure.\r\n", "registered": "2014-03-21T00:29:15-13:00", "latitude": 38.215416, "longitude": 129.308944, "tags": [ "ullamco", "mollit", "quis", "duis", "do", "et", "et" ], "friends": [ { "id": 0, "name": "Barton Petersen" }, { "id": 1, "name": "Pittman Ford" }, { "id": 2, "name": "Hahn Buck" } ], "greeting": "Hello, Langley Hubbard! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26eb4256862c62ba0e", "index": 2870, "guid": "7ee5ffe8-5d2e-4305-9f70-615d4f332705", "isActive": true, "balance": "$3,231.62", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Lyons Harrington", "gender": "male", "company": "GOKO", "email": "lyonsharrington@goko.com", "phone": "+1 (878) 437-2477", "address": "724 Gates Avenue, Dante, Minnesota, 8137", "about": "Labore sint non ipsum mollit. Sit dolore laboris in do ullamco deserunt. Ea exercitation laborum deserunt ut aute. Elit eiusmod labore adipisicing esse dolor proident. Fugiat velit elit id ullamco. Sunt non qui Lorem ut irure ipsum commodo pariatur est fugiat ut.\r\n", "registered": "2014-05-19T11:32:08-12:00", "latitude": -69.006803, "longitude": -109.409829, "tags": [ "tempor", "elit", "laborum", "eu", "enim", "laboris", "ea" ], "friends": [ { "id": 0, "name": "Robyn Johns" }, { "id": 1, "name": "Mildred Montoya" }, { "id": 2, "name": "Deirdre Berger" } ], "greeting": "Hello, Lyons Harrington! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea263ca9c29c40aef1e9", "index": 2871, "guid": "7736a5aa-61be-4b51-bf5f-a78c48130c36", "isActive": false, "balance": "$1,199.40", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Lynn Osborne", "gender": "male", "company": "TALKALOT", "email": "lynnosborne@talkalot.com", "phone": "+1 (922) 463-2324", "address": "337 Sullivan Street, Nord, Missouri, 4435", "about": "Elit mollit anim anim dolore nulla est reprehenderit cupidatat. Deserunt velit et exercitation aute ut eu laboris quis Lorem est et cupidatat consectetur. Velit ut velit consectetur anim incididunt anim culpa deserunt sunt deserunt adipisicing qui veniam. Excepteur irure dolore sunt et aliqua eiusmod minim occaecat eu eiusmod officia cillum. Dolor magna Lorem est magna.\r\n", "registered": "2014-01-14T04:24:25-13:00", "latitude": 24.191551, "longitude": -138.418681, "tags": [ "laboris", "incididunt", "cillum", "velit", "velit", "est", "ullamco" ], "friends": [ { "id": 0, "name": "Fannie Mathis" }, { "id": 1, "name": "Witt Melton" }, { "id": 2, "name": "Mercado Eaton" } ], "greeting": "Hello, Lynn Osborne! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26904e127154ac1a4b", "index": 2872, "guid": "8a507d2b-5674-44cf-917b-f0ee6ccc17e3", "isActive": true, "balance": "$3,288.80", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Luna Mays", "gender": "male", "company": "LYRIA", "email": "lunamays@lyria.com", "phone": "+1 (873) 538-3151", "address": "779 Mersereau Court, Duryea, Rhode Island, 2569", "about": "Do culpa nulla fugiat voluptate consectetur est dolor ex non sint fugiat laboris. Id eiusmod minim minim do velit. Mollit est aute aute ut eu commodo adipisicing esse commodo adipisicing.\r\n", "registered": "2014-06-23T15:40:45-12:00", "latitude": 78.51071, "longitude": 29.977814, "tags": [ "ea", "sint", "aliquip", "nulla", "anim", "ex", "enim" ], "friends": [ { "id": 0, "name": "May Gill" }, { "id": 1, "name": "Chen Wheeler" }, { "id": 2, "name": "Bernard Carr" } ], "greeting": "Hello, Luna Mays! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26e121aa04dc0bf6ce", "index": 2873, "guid": "16a5a7f1-6b4a-4f81-87e0-2ce698ca4d26", "isActive": false, "balance": "$3,311.72", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Rhonda Wolfe", "gender": "female", "company": "KENEGY", "email": "rhondawolfe@kenegy.com", "phone": "+1 (915) 515-3334", "address": "656 Balfour Place, Vincent, Florida, 6043", "about": "Reprehenderit dolore reprehenderit sint non aliqua deserunt excepteur velit sunt eu. Officia labore amet nulla tempor. Duis ut occaecat incididunt adipisicing voluptate tempor id proident mollit exercitation fugiat ipsum magna cupidatat. Id minim tempor veniam culpa eu dolore labore id adipisicing proident sunt eiusmod aliquip. Pariatur deserunt amet eu aute. Incididunt Lorem minim tempor incididunt enim consequat culpa consectetur enim mollit. Aliqua nostrud aliquip occaecat esse enim minim non ut esse excepteur aliqua commodo.\r\n", "registered": "2014-07-24T18:02:10-12:00", "latitude": 8.356978, "longitude": 142.94577, "tags": [ "cupidatat", "anim", "reprehenderit", "eiusmod", "dolor", "exercitation", "minim" ], "friends": [ { "id": 0, "name": "Barnes Huber" }, { "id": 1, "name": "Irma Pierce" }, { "id": 2, "name": "Glass Merritt" } ], "greeting": "Hello, Rhonda Wolfe! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26462dd9d36b057c81", "index": 2874, "guid": "b553e3f5-5263-4201-8bad-7053830d1639", "isActive": true, "balance": "$3,596.33", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Cherry Aguirre", "gender": "female", "company": "ZYTREX", "email": "cherryaguirre@zytrex.com", "phone": "+1 (840) 585-3515", "address": "416 Oriental Boulevard, Ebro, North Carolina, 4524", "about": "Do duis non do commodo ullamco exercitation eiusmod non sit anim. Sit occaecat anim ullamco consectetur culpa. Commodo elit officia ut laborum enim anim sunt incididunt occaecat aliqua voluptate pariatur enim.\r\n", "registered": "2014-02-23T05:14:40-13:00", "latitude": -50.835697, "longitude": 109.860577, "tags": [ "officia", "dolor", "tempor", "sit", "esse", "ex", "commodo" ], "friends": [ { "id": 0, "name": "Wynn Luna" }, { "id": 1, "name": "Whitney Bowen" }, { "id": 2, "name": "Delacruz Mueller" } ], "greeting": "Hello, Cherry Aguirre! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2625b324834f012a5b", "index": 2875, "guid": "4acc421f-9f61-479a-8be5-0f9bc6112516", "isActive": true, "balance": "$2,245.55", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Gardner Duncan", "gender": "male", "company": "ANIVET", "email": "gardnerduncan@anivet.com", "phone": "+1 (939) 500-2665", "address": "298 Schenck Street, Salunga, New Hampshire, 1833", "about": "Duis mollit ad est laborum incididunt exercitation laborum. Dolore ea esse ea Lorem in est labore irure ipsum magna dolore reprehenderit exercitation. Aliquip id est proident adipisicing veniam fugiat ut ea esse. Laborum cupidatat cupidatat sunt ut do. Sit enim ex duis non cupidatat nulla fugiat reprehenderit consectetur. Enim esse officia qui in esse eiusmod.\r\n", "registered": "2014-08-06T19:56:19-12:00", "latitude": -25.060663, "longitude": -14.044089, "tags": [ "minim", "ut", "esse", "esse", "ad", "ea", "consequat" ], "friends": [ { "id": 0, "name": "Angelica Burt" }, { "id": 1, "name": "Brown Saunders" }, { "id": 2, "name": "Lowe Caldwell" } ], "greeting": "Hello, Gardner Duncan! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26c45da0c7de894bc8", "index": 2876, "guid": "f263a5c7-6b53-42bd-a793-62aa61324e2e", "isActive": true, "balance": "$1,379.00", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Finley House", "gender": "male", "company": "NETAGY", "email": "finleyhouse@netagy.com", "phone": "+1 (989) 425-2907", "address": "565 Garfield Place, Talpa, Arkansas, 9392", "about": "Ad proident adipisicing ipsum reprehenderit enim deserunt cillum enim et consectetur ex officia minim ex. Excepteur magna eu nisi fugiat. Enim ullamco in exercitation eiusmod laborum cillum officia nisi culpa fugiat minim Lorem. Id eiusmod commodo nostrud voluptate. Velit ex qui proident magna consequat quis nulla sint fugiat enim laborum velit aute ullamco.\r\n", "registered": "2014-01-30T05:53:54-13:00", "latitude": -15.373659, "longitude": 62.914073, "tags": [ "voluptate", "consequat", "culpa", "eu", "exercitation", "duis", "velit" ], "friends": [ { "id": 0, "name": "Leola Dudley" }, { "id": 1, "name": "Williams Wynn" }, { "id": 2, "name": "Stacie Wilkinson" } ], "greeting": "Hello, Finley House! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea262c374b22919014a0", "index": 2877, "guid": "d3e8c3dd-0e77-4841-bd75-a8c5b3eeb377", "isActive": false, "balance": "$2,406.46", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Valentine Bailey", "gender": "male", "company": "TERASCAPE", "email": "valentinebailey@terascape.com", "phone": "+1 (996) 589-3509", "address": "338 Ocean Court, Steinhatchee, Iowa, 7480", "about": "Labore do irure aliqua eu nostrud. Exercitation commodo adipisicing est do labore sint cupidatat eiusmod. Amet ullamco in laborum esse eiusmod elit ea proident labore. Nisi quis irure elit enim veniam anim reprehenderit sint exercitation laboris. Cupidatat sunt proident velit nisi anim. Lorem quis consectetur ad eu magna culpa excepteur eu nostrud nostrud amet officia do. Et minim tempor velit irure duis.\r\n", "registered": "2014-08-04T01:29:01-12:00", "latitude": 74.294396, "longitude": 47.561729, "tags": [ "qui", "tempor", "culpa", "nisi", "labore", "sint", "exercitation" ], "friends": [ { "id": 0, "name": "Mccormick Barry" }, { "id": 1, "name": "Potts Atkins" }, { "id": 2, "name": "Alta Donaldson" } ], "greeting": "Hello, Valentine Bailey! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26b4bc7b2177a640b5", "index": 2878, "guid": "006b410b-afe7-4c22-adc1-1258283dffd2", "isActive": true, "balance": "$1,000.89", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Phelps Hutchinson", "gender": "male", "company": "GLOBOIL", "email": "phelpshutchinson@globoil.com", "phone": "+1 (897) 444-3188", "address": "897 Perry Terrace, Mathews, Nebraska, 1109", "about": "Enim et sit nulla occaecat magna officia laborum et. Dolore sunt veniam Lorem esse proident proident qui. Elit in do sit anim mollit ullamco minim id aliquip ex tempor et enim. Sint eiusmod nostrud commodo aliqua mollit nostrud cupidatat. Voluptate elit minim excepteur incididunt ullamco cupidatat et magna fugiat elit sint minim officia. Eiusmod et incididunt excepteur cillum velit elit.\r\n", "registered": "2014-02-06T19:16:11-13:00", "latitude": 85.398276, "longitude": 82.738844, "tags": [ "eu", "qui", "voluptate", "quis", "adipisicing", "dolor", "ex" ], "friends": [ { "id": 0, "name": "Watkins Decker" }, { "id": 1, "name": "Sue Cochran" }, { "id": 2, "name": "Allie Mckay" } ], "greeting": "Hello, Phelps Hutchinson! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26d3b88917f1c85dd2", "index": 2879, "guid": "223a0bab-64d1-49e4-adc1-50660c5bdfd0", "isActive": true, "balance": "$1,905.96", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Walsh Simpson", "gender": "male", "company": "DIGIRANG", "email": "walshsimpson@digirang.com", "phone": "+1 (848) 413-3135", "address": "988 Farragut Road, Greenwich, District Of Columbia, 6999", "about": "Fugiat id id laboris irure ipsum reprehenderit minim quis culpa adipisicing mollit occaecat nostrud. Deserunt ipsum amet exercitation est eiusmod. Eu est aute dolor reprehenderit veniam laborum pariatur. Consequat ea ipsum dolor duis nisi ipsum nulla eiusmod dolore ea esse labore in mollit. Commodo fugiat amet officia esse irure non ullamco sint nulla. Sit adipisicing non ullamco eiusmod consectetur ad cupidatat duis velit laborum commodo reprehenderit ad.\r\n", "registered": "2014-07-30T18:25:37-12:00", "latitude": -38.385093, "longitude": 136.462173, "tags": [ "cillum", "cillum", "pariatur", "voluptate", "nulla", "eiusmod", "sunt" ], "friends": [ { "id": 0, "name": "Twila Everett" }, { "id": 1, "name": "Jaclyn Delgado" }, { "id": 2, "name": "Jessica Mcgowan" } ], "greeting": "Hello, Walsh Simpson! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea264028d887633fbd38", "index": 2880, "guid": "decec309-925e-4638-a4fd-42ecacd6ba0d", "isActive": true, "balance": "$1,687.72", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Eugenia Fleming", "gender": "female", "company": "MACRONAUT", "email": "eugeniafleming@macronaut.com", "phone": "+1 (846) 560-2579", "address": "811 Moore Place, Rosedale, New Jersey, 7646", "about": "Eiusmod nisi sint officia duis esse quis. Nisi laborum pariatur in pariatur ex adipisicing qui tempor. Dolore cupidatat dolor minim eiusmod laboris dolore ea. Proident magna ea in excepteur veniam esse anim non quis enim exercitation. Minim est sint culpa ad eu occaecat do laboris minim cillum tempor consectetur. Nisi excepteur non adipisicing irure. Id consequat sit aliquip fugiat dolor nisi voluptate.\r\n", "registered": "2014-04-05T15:02:46-13:00", "latitude": -85.773385, "longitude": 154.944779, "tags": [ "ad", "minim", "cupidatat", "nulla", "velit", "qui", "amet" ], "friends": [ { "id": 0, "name": "Dominguez Burton" }, { "id": 1, "name": "Wilkinson Graves" }, { "id": 2, "name": "Giles Potts" } ], "greeting": "Hello, Eugenia Fleming! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26888e40e8b287880a", "index": 2881, "guid": "8370c63e-fc49-4bb1-9586-0ab79837d849", "isActive": false, "balance": "$1,362.96", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Aileen Holland", "gender": "female", "company": "EXPOSA", "email": "aileenholland@exposa.com", "phone": "+1 (957) 411-2615", "address": "947 Bliss Terrace, Corriganville, Palau, 3604", "about": "Cillum cillum Lorem et sint minim nostrud eiusmod qui sint in dolor exercitation. Qui eiusmod exercitation id Lorem ipsum pariatur et qui et excepteur in commodo. Elit minim adipisicing officia excepteur aliqua aliqua do veniam labore velit velit laborum. Adipisicing minim eu elit officia incididunt proident magna tempor laborum minim. Qui quis sint nulla labore laborum et aliquip. Irure magna enim dolor voluptate duis occaecat nisi labore fugiat tempor et. Deserunt duis qui aute incididunt.\r\n", "registered": "2014-06-24T17:23:15-12:00", "latitude": 32.954862, "longitude": -175.686079, "tags": [ "amet", "mollit", "dolore", "anim", "occaecat", "voluptate", "consectetur" ], "friends": [ { "id": 0, "name": "Gabriela Hewitt" }, { "id": 1, "name": "Donna Porter" }, { "id": 2, "name": "Tanner Callahan" } ], "greeting": "Hello, Aileen Holland! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2607af577bb2401e62", "index": 2882, "guid": "d16c6dc2-a675-4e2f-96de-95fa5515581e", "isActive": false, "balance": "$2,289.03", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Mccarthy Christensen", "gender": "male", "company": "EXOVENT", "email": "mccarthychristensen@exovent.com", "phone": "+1 (981) 468-2792", "address": "781 Cedar Street, Snyderville, Puerto Rico, 4043", "about": "Excepteur quis labore ex non do ad deserunt pariatur laborum ullamco. Fugiat aute magna ut voluptate. Voluptate mollit ex tempor consectetur voluptate aliqua ea irure occaecat. Laborum quis reprehenderit ullamco tempor nisi culpa laborum enim in. Ullamco consequat minim laboris incididunt anim minim non adipisicing laborum consequat do est Lorem.\r\n", "registered": "2014-02-28T14:46:56-13:00", "latitude": -16.21266, "longitude": 59.155242, "tags": [ "voluptate", "tempor", "commodo", "tempor", "ex", "proident", "ullamco" ], "friends": [ { "id": 0, "name": "Sally Salazar" }, { "id": 1, "name": "Dianna Emerson" }, { "id": 2, "name": "Wilcox Velasquez" } ], "greeting": "Hello, Mccarthy Christensen! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea267ea4beedf41ee6d8", "index": 2883, "guid": "6420d063-cd89-47cc-8534-6bd0353e7462", "isActive": false, "balance": "$2,857.79", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Pat Chapman", "gender": "female", "company": "KROG", "email": "patchapman@krog.com", "phone": "+1 (916) 405-3383", "address": "330 Montauk Court, Strykersville, California, 9727", "about": "Aute excepteur nisi esse laboris irure nisi qui non minim. In duis anim Lorem tempor deserunt sit ad fugiat. Qui exercitation elit quis sunt Lorem nisi nisi aute cupidatat voluptate aliquip sunt. Aliqua culpa aute pariatur cupidatat do proident. Sunt occaecat et ipsum pariatur incididunt.\r\n", "registered": "2014-06-17T00:16:12-12:00", "latitude": -74.914624, "longitude": -8.670717, "tags": [ "dolore", "deserunt", "est", "duis", "sint", "minim", "adipisicing" ], "friends": [ { "id": 0, "name": "Terry Jennings" }, { "id": 1, "name": "Ina Logan" }, { "id": 2, "name": "Kathy Sloan" } ], "greeting": "Hello, Pat Chapman! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26390ce7fbe8fe4f16", "index": 2884, "guid": "6032d451-98dd-4095-a8cf-c050f363a77c", "isActive": true, "balance": "$2,650.49", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Leta Lamb", "gender": "female", "company": "FIREWAX", "email": "letalamb@firewax.com", "phone": "+1 (953) 507-3917", "address": "860 Banker Street, Whitestone, Vermont, 4413", "about": "Aliquip eiusmod et eu ullamco sit laboris. Sunt laborum excepteur incididunt nisi fugiat dolor qui id adipisicing tempor nisi proident nostrud aute. Pariatur dolor ea duis ullamco ullamco anim sit. Sit occaecat quis labore sint culpa consequat exercitation duis deserunt aute.\r\n", "registered": "2014-09-07T22:56:14-12:00", "latitude": 36.194443, "longitude": 116.734987, "tags": [ "non", "ullamco", "velit", "sit", "proident", "excepteur", "qui" ], "friends": [ { "id": 0, "name": "Abby Jensen" }, { "id": 1, "name": "Lolita Carrillo" }, { "id": 2, "name": "Elba Mccarthy" } ], "greeting": "Hello, Leta Lamb! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26a3d50320ab7a6c18", "index": 2885, "guid": "68d0cfe8-b167-4617-8304-ea778811c0bd", "isActive": false, "balance": "$2,779.24", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Maryann Salas", "gender": "female", "company": "SENMEI", "email": "maryannsalas@senmei.com", "phone": "+1 (894) 517-3689", "address": "183 Dare Court, Conestoga, Indiana, 6515", "about": "Consequat deserunt ex consequat et pariatur sunt pariatur excepteur. Consectetur enim mollit commodo mollit reprehenderit irure. Quis adipisicing eu labore qui nulla ex deserunt exercitation. Nisi Lorem quis amet officia culpa laboris dolor enim fugiat anim nisi ea qui. Mollit sint aliquip cillum ea exercitation veniam nisi qui pariatur anim id anim. Elit mollit tempor ut velit laboris occaecat.\r\n", "registered": "2014-08-22T06:40:52-12:00", "latitude": 54.011531, "longitude": 13.350946, "tags": [ "dolore", "aliqua", "nulla", "id", "ipsum", "cillum", "dolor" ], "friends": [ { "id": 0, "name": "Pratt Castillo" }, { "id": 1, "name": "Elsie Tanner" }, { "id": 2, "name": "Terri Chase" } ], "greeting": "Hello, Maryann Salas! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2604d39451dabc48c1", "index": 2886, "guid": "c432bc86-1209-4860-bf32-daff70a4ea47", "isActive": false, "balance": "$2,725.10", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Janell Suarez", "gender": "female", "company": "ORONOKO", "email": "janellsuarez@oronoko.com", "phone": "+1 (990) 453-2035", "address": "455 National Drive, Drytown, Illinois, 429", "about": "Non et incididunt sint et laborum sunt ipsum nulla est qui elit qui quis et. Ipsum excepteur aliquip minim est sint. Non esse cupidatat ipsum aliqua mollit culpa consectetur qui culpa laborum exercitation ea consectetur ipsum. Fugiat quis reprehenderit labore do duis excepteur ea mollit sunt cillum.\r\n", "registered": "2014-08-20T12:13:20-12:00", "latitude": -79.59178, "longitude": 74.36735, "tags": [ "do", "magna", "et", "ipsum", "mollit", "labore", "cupidatat" ], "friends": [ { "id": 0, "name": "Tami Leonard" }, { "id": 1, "name": "Raquel Castro" }, { "id": 2, "name": "Lambert Burks" } ], "greeting": "Hello, Janell Suarez! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea261dd46a49c5e5cb96", "index": 2887, "guid": "ba066ef9-de83-4c44-bac6-a4248e0c28ce", "isActive": false, "balance": "$2,424.91", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Rasmussen Perry", "gender": "male", "company": "OPTICALL", "email": "rasmussenperry@opticall.com", "phone": "+1 (908) 577-2228", "address": "153 Hendrickson Street, Leola, South Carolina, 8592", "about": "Consectetur excepteur nulla dolor do labore anim cillum. Eiusmod id pariatur ex ipsum sint. Cillum consectetur dolor dolor eiusmod incididunt nostrud occaecat non dolore et consectetur. Ipsum et quis in nisi sit eu commodo adipisicing non veniam. Pariatur sit aute pariatur aute tempor. Incididunt duis aute reprehenderit consectetur ut excepteur mollit tempor do eiusmod qui. Cillum irure consequat esse velit ea officia nulla aliquip dolore.\r\n", "registered": "2014-09-22T06:29:35-12:00", "latitude": -40.697299, "longitude": -120.405455, "tags": [ "occaecat", "dolor", "Lorem", "ex", "sint", "et", "amet" ], "friends": [ { "id": 0, "name": "Sylvia Hansen" }, { "id": 1, "name": "Alison Avery" }, { "id": 2, "name": "Jillian Holman" } ], "greeting": "Hello, Rasmussen Perry! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2610e9a2b152bb6e53", "index": 2888, "guid": "f9c92ed0-7ae3-4319-8a2a-fb261aea15a0", "isActive": false, "balance": "$2,686.61", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Sherrie Boyle", "gender": "female", "company": "UNQ", "email": "sherrieboyle@unq.com", "phone": "+1 (993) 584-3237", "address": "988 Highland Boulevard, Chalfant, American Samoa, 1804", "about": "Officia veniam enim tempor ad consequat. Duis voluptate reprehenderit ipsum reprehenderit laboris reprehenderit tempor ut Lorem. Incididunt eu anim et adipisicing minim proident occaecat eu deserunt magna minim laboris. Non sint ullamco veniam pariatur minim elit duis irure sunt nostrud veniam in. Magna dolore esse ut occaecat est ut laboris sint. Sunt consequat mollit elit nisi deserunt anim sint voluptate cillum in. Labore labore do laborum elit esse adipisicing ut qui eu quis.\r\n", "registered": "2014-08-18T12:34:25-12:00", "latitude": 24.029497, "longitude": 141.110835, "tags": [ "aute", "veniam", "pariatur", "elit", "eu", "qui", "dolore" ], "friends": [ { "id": 0, "name": "Naomi Bauer" }, { "id": 1, "name": "Esther Avila" }, { "id": 2, "name": "Lancaster Vazquez" } ], "greeting": "Hello, Sherrie Boyle! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2631bfd61e96a6565c", "index": 2889, "guid": "850282c8-f2ea-4fe2-a816-78afb769d390", "isActive": false, "balance": "$2,167.00", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Jocelyn Tucker", "gender": "female", "company": "PRINTSPAN", "email": "jocelyntucker@printspan.com", "phone": "+1 (823) 441-3575", "address": "388 Bartlett Street, Marysville, Delaware, 209", "about": "Fugiat ullamco deserunt dolore amet commodo deserunt pariatur officia ad. Sint consequat veniam Lorem nostrud voluptate. Eiusmod est elit commodo nisi. Aliquip elit velit sunt occaecat eu ut elit officia ut. Aute ad duis qui tempor pariatur nulla esse dolore eu culpa ex nostrud voluptate elit. Fugiat amet nostrud dolor deserunt elit quis incididunt exercitation officia esse labore. Sunt non mollit officia ea occaecat ut ex esse voluptate in et consequat incididunt.\r\n", "registered": "2014-05-02T20:01:13-12:00", "latitude": -62.988705, "longitude": -150.59584, "tags": [ "eiusmod", "magna", "nostrud", "quis", "ad", "aute", "pariatur" ], "friends": [ { "id": 0, "name": "Schmidt Swanson" }, { "id": 1, "name": "Neva Miles" }, { "id": 2, "name": "Sybil Hays" } ], "greeting": "Hello, Jocelyn Tucker! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26eca0cfee35e5590e", "index": 2890, "guid": "9d80920d-39e2-450e-9444-067e1cfe9b4f", "isActive": false, "balance": "$2,481.06", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Reeves Whitley", "gender": "male", "company": "EARWAX", "email": "reeveswhitley@earwax.com", "phone": "+1 (872) 582-2739", "address": "992 Manhattan Court, Tivoli, Pennsylvania, 8667", "about": "Irure tempor esse id do dolor anim laboris do. Proident cillum labore in aliqua voluptate. Excepteur irure nulla aliqua quis. Do non cillum velit pariatur sunt dolor Lorem nulla fugiat anim pariatur.\r\n", "registered": "2014-01-20T16:25:14-13:00", "latitude": 73.124341, "longitude": 53.308803, "tags": [ "exercitation", "Lorem", "enim", "excepteur", "ipsum", "cupidatat", "culpa" ], "friends": [ { "id": 0, "name": "Liz Stone" }, { "id": 1, "name": "Ashley Villarreal" }, { "id": 2, "name": "Liliana Howe" } ], "greeting": "Hello, Reeves Whitley! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26bd46e07b57d2ef20", "index": 2891, "guid": "e3894656-d910-43dc-9882-0d1f96ddebba", "isActive": true, "balance": "$3,985.73", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Woodward Keith", "gender": "male", "company": "BIZMATIC", "email": "woodwardkeith@bizmatic.com", "phone": "+1 (950) 590-3612", "address": "645 Kingsland Avenue, Garfield, Georgia, 6504", "about": "Aliqua excepteur culpa qui in cillum elit. Mollit laborum duis qui eu sunt est aliqua magna sunt. Cupidatat dolore ullamco dolore incididunt dolore cupidatat duis exercitation nostrud adipisicing elit dolore ea elit. Eiusmod id anim deserunt fugiat occaecat deserunt est non est proident elit in enim irure.\r\n", "registered": "2014-07-02T11:09:11-12:00", "latitude": 84.412817, "longitude": 102.593921, "tags": [ "anim", "ut", "culpa", "incididunt", "nostrud", "qui", "ad" ], "friends": [ { "id": 0, "name": "Kate Mayo" }, { "id": 1, "name": "Solis Rosales" }, { "id": 2, "name": "Short Mason" } ], "greeting": "Hello, Woodward Keith! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2666649e3421f10848", "index": 2892, "guid": "726672c9-b9d4-412e-b1d1-1372f9288d1c", "isActive": true, "balance": "$2,429.54", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Castillo Warren", "gender": "male", "company": "ENDICIL", "email": "castillowarren@endicil.com", "phone": "+1 (803) 532-3356", "address": "126 Grand Avenue, Gorham, North Dakota, 1161", "about": "Dolor culpa ea dolor incididunt cillum cillum fugiat. Ad deserunt ea voluptate velit sunt dolore cupidatat dolor ad. Dolor cupidatat eiusmod mollit laborum labore occaecat deserunt. Aliqua ut duis id sit anim dolor consequat et sunt.\r\n", "registered": "2014-04-07T22:27:45-12:00", "latitude": 38.661132, "longitude": -62.524795, "tags": [ "reprehenderit", "ea", "cillum", "nostrud", "ipsum", "consectetur", "duis" ], "friends": [ { "id": 0, "name": "Knowles Barlow" }, { "id": 1, "name": "Whitehead Davis" }, { "id": 2, "name": "Jefferson Solis" } ], "greeting": "Hello, Castillo Warren! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26d22f1d7bbd31585b", "index": 2893, "guid": "40da67d7-7259-4d18-aa85-d68c2b772739", "isActive": false, "balance": "$1,580.17", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Faith Riggs", "gender": "female", "company": "ZOLAR", "email": "faithriggs@zolar.com", "phone": "+1 (997) 417-2798", "address": "695 Grand Street, Floris, Louisiana, 3809", "about": "Ipsum deserunt tempor deserunt sit mollit enim voluptate amet ea tempor. Lorem veniam ut non est anim in. Occaecat deserunt reprehenderit adipisicing tempor deserunt do. Duis ullamco reprehenderit laborum elit magna ex fugiat excepteur irure commodo nostrud do aliqua. Nisi tempor proident do duis. Aliqua ea exercitation sit minim anim. Tempor sunt cupidatat incididunt Lorem sunt culpa ex adipisicing id aliquip cillum veniam do commodo.\r\n", "registered": "2014-02-14T20:06:35-13:00", "latitude": 8.964454, "longitude": -54.261183, "tags": [ "ex", "pariatur", "cillum", "consequat", "reprehenderit", "laboris", "deserunt" ], "friends": [ { "id": 0, "name": "Paul Matthews" }, { "id": 1, "name": "Love Petty" }, { "id": 2, "name": "Bright Marshall" } ], "greeting": "Hello, Faith Riggs! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26f8579ac7bc4d9554", "index": 2894, "guid": "08b5d532-f2e7-400b-8137-6cb5361b5d19", "isActive": true, "balance": "$3,560.39", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Russell Black", "gender": "male", "company": "GLEAMINK", "email": "russellblack@gleamink.com", "phone": "+1 (835) 517-2560", "address": "268 Henry Street, Robbins, Northern Mariana Islands, 5117", "about": "Aute cupidatat excepteur laboris enim elit commodo adipisicing. Laborum officia duis ut amet incididunt sint laborum anim est nisi sint. Excepteur anim exercitation quis labore eiusmod ea. Fugiat occaecat elit officia officia non eiusmod.\r\n", "registered": "2014-03-15T01:33:18-13:00", "latitude": -80.816842, "longitude": -113.463815, "tags": [ "cillum", "cupidatat", "cillum", "dolore", "minim", "ullamco", "ullamco" ], "friends": [ { "id": 0, "name": "Shannon Sykes" }, { "id": 1, "name": "Pansy Becker" }, { "id": 2, "name": "Chelsea Cox" } ], "greeting": "Hello, Russell Black! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea267ab42d3125cdb737", "index": 2895, "guid": "19cf1fb8-a817-4640-9925-5867958f779c", "isActive": false, "balance": "$1,170.26", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Gilda Murphy", "gender": "female", "company": "KANGLE", "email": "gildamurphy@kangle.com", "phone": "+1 (996) 533-2841", "address": "907 Greenpoint Avenue, Sidman, Colorado, 3126", "about": "Enim proident deserunt commodo magna deserunt ipsum veniam officia cillum tempor officia elit sunt. Do adipisicing ea voluptate irure eiusmod deserunt mollit. Sit exercitation adipisicing sint amet exercitation.\r\n", "registered": "2014-09-16T20:33:43-12:00", "latitude": 57.811953, "longitude": -15.792593, "tags": [ "aute", "commodo", "nostrud", "eiusmod", "non", "fugiat", "laboris" ], "friends": [ { "id": 0, "name": "Susana Kim" }, { "id": 1, "name": "Thornton Stafford" }, { "id": 2, "name": "Lara Daniel" } ], "greeting": "Hello, Gilda Murphy! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26095da6d878135470", "index": 2896, "guid": "33bff886-0c02-4e79-a804-1257fcf7969a", "isActive": true, "balance": "$3,463.02", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Freida Hudson", "gender": "female", "company": "BOINK", "email": "freidahudson@boink.com", "phone": "+1 (982) 579-2681", "address": "845 Irving Street, Stagecoach, Idaho, 2379", "about": "Est sunt deserunt amet deserunt adipisicing consectetur ullamco enim eiusmod reprehenderit mollit irure esse et. Occaecat officia proident velit do non sint magna dolore est commodo ad incididunt id consequat. Reprehenderit ipsum ut fugiat irure. Aliquip pariatur cillum minim velit quis elit consequat proident elit voluptate nulla eu ad.\r\n", "registered": "2014-03-25T12:21:06-13:00", "latitude": -0.873359, "longitude": 151.797221, "tags": [ "est", "fugiat", "exercitation", "cillum", "aliqua", "aliqua", "occaecat" ], "friends": [ { "id": 0, "name": "Kirk Snow" }, { "id": 1, "name": "Madge Patrick" }, { "id": 2, "name": "Abbott Padilla" } ], "greeting": "Hello, Freida Hudson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2609de655b80209a33", "index": 2897, "guid": "fbdb2dae-8a2d-426c-b03b-1e9f70e927b6", "isActive": false, "balance": "$1,910.77", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Malinda Melendez", "gender": "female", "company": "SULFAX", "email": "malindamelendez@sulfax.com", "phone": "+1 (884) 408-3263", "address": "266 Claver Place, Hessville, Marshall Islands, 8870", "about": "Eu pariatur incididunt est Lorem quis ex sunt ut duis dolore tempor. Non cillum voluptate aute ut nostrud sunt dolor magna consectetur eiusmod dolor nostrud. Officia fugiat id aliquip officia aliquip et irure enim ipsum in tempor occaecat.\r\n", "registered": "2014-09-07T03:29:38-12:00", "latitude": -69.274597, "longitude": 175.493647, "tags": [ "cillum", "cillum", "voluptate", "ea", "officia", "voluptate", "ex" ], "friends": [ { "id": 0, "name": "Burch Vasquez" }, { "id": 1, "name": "Alana Tyler" }, { "id": 2, "name": "Ramona Mooney" } ], "greeting": "Hello, Malinda Melendez! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea260a1f94edf61a8ec3", "index": 2898, "guid": "5895a0e6-2c70-4557-80d0-c0652ffb410a", "isActive": true, "balance": "$2,116.22", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Darla Garrison", "gender": "female", "company": "MAINELAND", "email": "darlagarrison@maineland.com", "phone": "+1 (992) 452-2982", "address": "558 Newkirk Placez, Belvoir, New York, 8842", "about": "Exercitation do ad deserunt magna consectetur minim laboris irure anim qui. Eu eu deserunt aute culpa magna ut veniam ut deserunt sint in est. Et non consequat cillum dolore reprehenderit aliqua laborum enim cupidatat sit. Quis exercitation veniam dolor tempor consequat commodo ea ipsum esse officia irure tempor ipsum. Irure dolore mollit elit do aliqua amet sunt elit nulla commodo sint occaecat sint aliquip.\r\n", "registered": "2014-09-11T14:10:04-12:00", "latitude": 2.746856, "longitude": 32.406943, "tags": [ "ex", "irure", "adipisicing", "et", "excepteur", "enim", "adipisicing" ], "friends": [ { "id": 0, "name": "Huff Best" }, { "id": 1, "name": "Trujillo Mccormick" }, { "id": 2, "name": "Mcfarland Cross" } ], "greeting": "Hello, Darla Garrison! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2650b911a806197c99", "index": 2899, "guid": "2e2cd5e0-7ea6-4bea-bfad-1c14cd63dfaa", "isActive": false, "balance": "$1,286.03", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Chris Albert", "gender": "female", "company": "HOMELUX", "email": "chrisalbert@homelux.com", "phone": "+1 (979) 490-2169", "address": "594 Oceanview Avenue, Grayhawk, Guam, 9616", "about": "Ipsum cupidatat pariatur ex proident consequat consectetur adipisicing laborum exercitation excepteur. Occaecat enim exercitation officia deserunt reprehenderit irure ullamco mollit in velit do ipsum. Dolor ullamco nisi occaecat esse duis veniam ea. Ipsum cillum laborum eiusmod cupidatat est veniam ex culpa ut qui non.\r\n", "registered": "2014-03-27T10:05:45-13:00", "latitude": -87.244958, "longitude": 89.991244, "tags": [ "cupidatat", "reprehenderit", "enim", "enim", "nisi", "non", "consequat" ], "friends": [ { "id": 0, "name": "Nona Newton" }, { "id": 1, "name": "Strong Kemp" }, { "id": 2, "name": "Lloyd Nelson" } ], "greeting": "Hello, Chris Albert! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2600071c49ea0cb0d6", "index": 2900, "guid": "49f2d92f-473e-4a3e-9608-53e4f3632245", "isActive": false, "balance": "$3,242.80", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Cameron Duke", "gender": "male", "company": "IPLAX", "email": "cameronduke@iplax.com", "phone": "+1 (811) 424-3943", "address": "168 Brigham Street, Bonanza, Virgin Islands, 1493", "about": "Duis ea minim dolor proident esse reprehenderit ut sint in officia qui. Officia eu nulla labore qui reprehenderit ipsum mollit in. Esse non dolor aliquip dolor eiusmod.\r\n", "registered": "2014-06-28T07:17:24-12:00", "latitude": 59.232941, "longitude": 108.85203, "tags": [ "Lorem", "enim", "ut", "tempor", "aliqua", "eiusmod", "ipsum" ], "friends": [ { "id": 0, "name": "Cindy Perez" }, { "id": 1, "name": "Hammond Hoffman" }, { "id": 2, "name": "Riddle Waller" } ], "greeting": "Hello, Cameron Duke! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26a0790ba91cbccd01", "index": 2901, "guid": "d4df2f97-d5e2-428e-868f-0f3064ce0025", "isActive": false, "balance": "$1,686.31", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Terry Bowman", "gender": "female", "company": "ACUSAGE", "email": "terrybowman@acusage.com", "phone": "+1 (836) 563-2565", "address": "599 Grimes Road, Winston, Massachusetts, 5423", "about": "Veniam nostrud deserunt dolore do ad. Sint non ex cupidatat commodo in mollit nostrud. Adipisicing amet nulla laborum enim cillum veniam minim laborum laborum ad non quis. Irure officia pariatur commodo reprehenderit et laboris reprehenderit veniam amet cillum anim commodo excepteur aute.\r\n", "registered": "2014-01-20T00:58:55-13:00", "latitude": -20.686827, "longitude": -29.259673, "tags": [ "eiusmod", "aliquip", "ad", "dolor", "mollit", "veniam", "ea" ], "friends": [ { "id": 0, "name": "Serrano Morales" }, { "id": 1, "name": "Gretchen Mejia" }, { "id": 2, "name": "Valenzuela Hurst" } ], "greeting": "Hello, Terry Bowman! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea262730a1bcbb84291a", "index": 2902, "guid": "7660293b-2b1f-4398-b11f-170fad864d61", "isActive": false, "balance": "$1,050.46", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Fletcher Kennedy", "gender": "male", "company": "FILODYNE", "email": "fletcherkennedy@filodyne.com", "phone": "+1 (957) 516-2800", "address": "593 Cooke Court, Clarksburg, Utah, 9555", "about": "Id exercitation tempor do consectetur duis do exercitation proident eu. Irure occaecat esse nulla id mollit voluptate nisi ut aliquip excepteur. Exercitation occaecat minim deserunt Lorem et esse nulla incididunt anim. Proident qui sit duis fugiat eiusmod consectetur incididunt labore consequat aliquip in adipisicing consequat tempor.\r\n", "registered": "2014-03-24T10:54:32-13:00", "latitude": 85.338174, "longitude": 51.706908, "tags": [ "aliquip", "exercitation", "amet", "ut", "duis", "sint", "aliqua" ], "friends": [ { "id": 0, "name": "Loraine Farrell" }, { "id": 1, "name": "Lucia Doyle" }, { "id": 2, "name": "Whitney Hoover" } ], "greeting": "Hello, Fletcher Kennedy! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2651c6a36cba2e3f89", "index": 2903, "guid": "309c93b0-10a2-4be2-bdc9-74839bf482fa", "isActive": true, "balance": "$1,712.89", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Sampson Dalton", "gender": "male", "company": "STREZZO", "email": "sampsondalton@strezzo.com", "phone": "+1 (887) 432-2832", "address": "908 Cypress Avenue, Allensworth, Montana, 435", "about": "Ad mollit aute voluptate magna tempor in. Tempor non ex veniam tempor anim fugiat officia velit velit enim esse veniam. Labore velit proident enim ea do sint excepteur consequat sint ea dolore occaecat laboris. Nisi dolor aliqua reprehenderit aliqua consectetur aliquip anim cillum id ex. Ipsum consectetur cupidatat deserunt occaecat sit voluptate nisi quis deserunt qui ea fugiat cupidatat.\r\n", "registered": "2014-09-02T02:39:55-12:00", "latitude": 29.892328, "longitude": -109.364222, "tags": [ "ea", "eiusmod", "quis", "reprehenderit", "voluptate", "aliqua", "mollit" ], "friends": [ { "id": 0, "name": "Ora Mcdowell" }, { "id": 1, "name": "Smith Marsh" }, { "id": 2, "name": "Bridgette Juarez" } ], "greeting": "Hello, Sampson Dalton! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26e6aa6ae637710744", "index": 2904, "guid": "c1627325-205d-411d-915b-9c113f01f958", "isActive": false, "balance": "$1,527.48", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Tamera Dillard", "gender": "female", "company": "ZINCA", "email": "tameradillard@zinca.com", "phone": "+1 (900) 516-2631", "address": "903 Furman Street, Mahtowa, Wisconsin, 621", "about": "Excepteur voluptate occaecat Lorem eiusmod enim culpa exercitation sit duis occaecat. Amet qui esse qui non labore ullamco id et commodo. Occaecat amet cillum est ea. Ipsum proident quis adipisicing id aliqua amet.\r\n", "registered": "2014-08-01T23:27:01-12:00", "latitude": -43.236058, "longitude": -7.752377, "tags": [ "sit", "dolore", "sint", "occaecat", "pariatur", "tempor", "et" ], "friends": [ { "id": 0, "name": "Carlson Lee" }, { "id": 1, "name": "Lillie Mayer" }, { "id": 2, "name": "Spencer Beard" } ], "greeting": "Hello, Tamera Dillard! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26476d680f4e0ad66d", "index": 2905, "guid": "4097a99c-a3f8-49af-ae76-1389996b8000", "isActive": true, "balance": "$1,449.88", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Cristina Randolph", "gender": "female", "company": "KENGEN", "email": "cristinarandolph@kengen.com", "phone": "+1 (928) 560-2007", "address": "122 Sumpter Street, Comptche, Maine, 9748", "about": "Commodo nulla nostrud excepteur est in Lorem proident incididunt amet ea. Tempor occaecat occaecat proident enim cupidatat amet velit id dolor sint duis tempor officia. Excepteur proident est id elit Lorem qui voluptate exercitation consequat. Duis culpa do duis incididunt et et sit et. Pariatur irure incididunt nulla eiusmod minim mollit irure consequat occaecat dolor.\r\n", "registered": "2014-04-09T23:02:07-12:00", "latitude": 80.366752, "longitude": 176.333773, "tags": [ "ad", "qui", "non", "anim", "mollit", "veniam", "do" ], "friends": [ { "id": 0, "name": "Goff Rocha" }, { "id": 1, "name": "Blevins Owen" }, { "id": 2, "name": "George Justice" } ], "greeting": "Hello, Cristina Randolph! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26afdeafeae4656521", "index": 2906, "guid": "f9ec0725-7f38-46ba-ba68-e2eedc8eed5a", "isActive": false, "balance": "$2,156.68", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Michael Walters", "gender": "female", "company": "FUELTON", "email": "michaelwalters@fuelton.com", "phone": "+1 (860) 594-2776", "address": "430 George Street, Crucible, Virginia, 4812", "about": "Ad sunt eu amet incididunt duis minim est amet ex consectetur aute commodo irure. Duis enim ad occaecat nulla non nostrud qui nostrud. Eiusmod deserunt enim culpa non aute anim et nostrud. Anim non ut sint magna elit deserunt id minim fugiat. Occaecat deserunt nostrud labore esse Lorem eiusmod adipisicing velit veniam enim in do. Duis deserunt officia dolore consequat sunt. Enim veniam eiusmod ad do dolor Lorem.\r\n", "registered": "2014-01-23T17:17:40-13:00", "latitude": 36.648796, "longitude": 133.381768, "tags": [ "qui", "ut", "ullamco", "officia", "ex", "quis", "pariatur" ], "friends": [ { "id": 0, "name": "Minnie Moon" }, { "id": 1, "name": "Becker Byers" }, { "id": 2, "name": "Bentley Mcdaniel" } ], "greeting": "Hello, Michael Walters! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26528601c686990943", "index": 2907, "guid": "772b50e3-1f2d-4a54-a07a-102a9724faa8", "isActive": true, "balance": "$3,495.44", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Sheree Pearson", "gender": "female", "company": "SKYBOLD", "email": "shereepearson@skybold.com", "phone": "+1 (909) 569-3939", "address": "524 Church Avenue, Maybell, Kentucky, 4610", "about": "Qui cupidatat nulla proident minim esse eu esse est laboris proident. Fugiat nulla deserunt in non excepteur nisi mollit. Eiusmod nostrud incididunt duis mollit reprehenderit excepteur dolore irure proident sit. Minim enim irure cupidatat eu. Aute ullamco do dolor amet ut enim amet tempor adipisicing. Cillum proident excepteur pariatur occaecat irure duis magna ea non cupidatat ut. Mollit ex sunt sint consequat elit esse proident non.\r\n", "registered": "2014-07-12T22:48:40-12:00", "latitude": -31.619417, "longitude": 37.266806, "tags": [ "commodo", "velit", "cupidatat", "nulla", "sint", "nisi", "commodo" ], "friends": [ { "id": 0, "name": "Hogan Mcintosh" }, { "id": 1, "name": "Ross Robertson" }, { "id": 2, "name": "Dejesus Sherman" } ], "greeting": "Hello, Sheree Pearson! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26e3f3de898e870da9", "index": 2908, "guid": "09b4bb87-90ed-4be1-8cbf-4a8c8311ed84", "isActive": true, "balance": "$1,104.68", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Mclean Gillespie", "gender": "male", "company": "SONIQUE", "email": "mcleangillespie@sonique.com", "phone": "+1 (821) 537-2719", "address": "516 Sutton Street, Dana, Connecticut, 3729", "about": "Laborum adipisicing sunt proident esse est ullamco elit nostrud nostrud in eiusmod. Lorem nisi ea in labore sit elit labore dolor elit nostrud consequat. Ex mollit culpa pariatur eiusmod dolore aliquip velit do dolor anim qui laboris laboris et. Magna ex sit aliquip incididunt.\r\n", "registered": "2014-02-13T21:49:31-13:00", "latitude": 55.194495, "longitude": 4.098402, "tags": [ "nulla", "Lorem", "laborum", "anim", "deserunt", "pariatur", "culpa" ], "friends": [ { "id": 0, "name": "Bishop Glass" }, { "id": 1, "name": "Adriana Wells" }, { "id": 2, "name": "Serena Love" } ], "greeting": "Hello, Mclean Gillespie! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26a4f8e9d48b8779dd", "index": 2909, "guid": "837a5a4c-0976-4299-bcdd-538a2091daff", "isActive": true, "balance": "$2,780.12", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Erma Owens", "gender": "female", "company": "EARTHPLEX", "email": "ermaowens@earthplex.com", "phone": "+1 (878) 456-3839", "address": "250 Cadman Plaza, Chemung, Mississippi, 2405", "about": "Voluptate quis mollit reprehenderit aliquip amet voluptate id dolor. Cupidatat reprehenderit dolor elit sunt adipisicing esse consectetur ullamco aliqua magna velit nulla aliqua ut. Mollit cupidatat dolore id qui qui id. Sint fugiat magna enim anim amet est ad in ex pariatur sunt ut incididunt. Consequat incididunt fugiat occaecat laboris aliquip officia. Cupidatat irure incididunt reprehenderit aliquip ea aute ex in eu excepteur enim. Fugiat do veniam cupidatat non reprehenderit.\r\n", "registered": "2014-01-21T08:33:47-13:00", "latitude": -52.124612, "longitude": -179.171662, "tags": [ "sit", "eiusmod", "veniam", "deserunt", "ipsum", "cillum", "dolore" ], "friends": [ { "id": 0, "name": "Larson Levy" }, { "id": 1, "name": "Gregory Dillon" }, { "id": 2, "name": "Coleman Williamson" } ], "greeting": "Hello, Erma Owens! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2640921999fbe6b8a2", "index": 2910, "guid": "9ad42f3d-b37e-4f7f-940f-81c1c989940e", "isActive": true, "balance": "$1,681.50", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Bowers Ware", "gender": "male", "company": "TELEQUIET", "email": "bowersware@telequiet.com", "phone": "+1 (843) 474-3244", "address": "967 Newkirk Avenue, Winesburg, Washington, 5956", "about": "Id ex anim officia mollit officia occaecat esse eiusmod esse mollit do. Non sunt eu ea qui velit eiusmod voluptate nisi occaecat pariatur laborum cupidatat. Exercitation tempor dolor adipisicing officia et quis ad incididunt nulla officia.\r\n", "registered": "2014-03-13T23:44:00-13:00", "latitude": -37.785246, "longitude": 6.116763, "tags": [ "tempor", "qui", "aliqua", "et", "et", "ad", "esse" ], "friends": [ { "id": 0, "name": "Aline Alston" }, { "id": 1, "name": "Schroeder Nieves" }, { "id": 2, "name": "Eddie Deleon" } ], "greeting": "Hello, Bowers Ware! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2688bbceb86fd02ceb", "index": 2911, "guid": "6fbe72b3-8354-434a-912a-5342c6339b5d", "isActive": false, "balance": "$2,846.14", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Judy Parrish", "gender": "female", "company": "ROUGHIES", "email": "judyparrish@roughies.com", "phone": "+1 (848) 596-3875", "address": "462 Dekalb Avenue, Efland, Tennessee, 3994", "about": "Esse ex mollit ut et ullamco ullamco dolor veniam nulla sint id irure dolore. Est ea minim ipsum eu Lorem. Eiusmod quis commodo anim consectetur incididunt ex Lorem. Quis officia ipsum ex nulla. Duis amet occaecat ex enim laborum eiusmod cupidatat officia incididunt do reprehenderit laboris cillum Lorem. Qui laborum Lorem est cillum sint tempor sunt irure exercitation officia Lorem.\r\n", "registered": "2014-07-15T22:22:21-12:00", "latitude": -47.275614, "longitude": -68.153368, "tags": [ "cupidatat", "qui", "enim", "laboris", "elit", "incididunt", "laborum" ], "friends": [ { "id": 0, "name": "Myra Farley" }, { "id": 1, "name": "Katie Pugh" }, { "id": 2, "name": "Imogene Barber" } ], "greeting": "Hello, Judy Parrish! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26719085e6f353a7b6", "index": 2912, "guid": "760ae63d-b71b-496b-8ff9-1645eda7c2bf", "isActive": true, "balance": "$3,405.14", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Solomon Hayes", "gender": "male", "company": "MEMORA", "email": "solomonhayes@memora.com", "phone": "+1 (849) 574-2291", "address": "567 Vermont Street, Bedias, Alabama, 9743", "about": "Voluptate est incididunt laborum nostrud in ipsum eu labore reprehenderit Lorem nulla et pariatur. Commodo fugiat incididunt ut est nisi. Consectetur irure qui eiusmod qui eu in. Et velit elit amet id ipsum in proident officia veniam exercitation.\r\n", "registered": "2014-03-14T09:44:19-13:00", "latitude": 25.549195, "longitude": -109.634362, "tags": [ "magna", "sunt", "ut", "reprehenderit", "nisi", "qui", "incididunt" ], "friends": [ { "id": 0, "name": "Roy Pennington" }, { "id": 1, "name": "Allen May" }, { "id": 2, "name": "Bettye Hyde" } ], "greeting": "Hello, Solomon Hayes! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26df45ec3b0ab363d9", "index": 2913, "guid": "dade059e-903b-4481-832e-6bc0ea1ea884", "isActive": true, "balance": "$1,827.90", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Maynard Nunez", "gender": "male", "company": "SLUMBERIA", "email": "maynardnunez@slumberia.com", "phone": "+1 (894) 536-3448", "address": "720 Montieth Street, Morgandale, Ohio, 8777", "about": "Magna irure excepteur ea voluptate dolor laboris dolor nisi officia. Adipisicing irure labore voluptate aliqua consectetur qui quis eu dolore consectetur irure do cillum. Laborum esse et cillum sint culpa amet mollit ea et eiusmod eu cupidatat.\r\n", "registered": "2014-02-20T13:31:28-13:00", "latitude": 8.296959, "longitude": 36.394275, "tags": [ "sint", "veniam", "esse", "consequat", "consequat", "dolor", "adipisicing" ], "friends": [ { "id": 0, "name": "Audra Hodge" }, { "id": 1, "name": "Evangeline Dominguez" }, { "id": 2, "name": "Casandra Mitchell" } ], "greeting": "Hello, Maynard Nunez! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26d4f71bb3500e1397", "index": 2914, "guid": "188ce92b-c3e7-468c-b3ca-6e327f805de7", "isActive": true, "balance": "$2,331.12", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Dean Rogers", "gender": "male", "company": "BESTO", "email": "deanrogers@besto.com", "phone": "+1 (975) 468-3616", "address": "567 Coleridge Street, Cetronia, Hawaii, 6422", "about": "Veniam officia cupidatat occaecat laborum duis. Consectetur sunt excepteur dolore et. Veniam ut irure qui est sint nulla culpa. Esse sunt cupidatat do veniam velit eiusmod ullamco.\r\n", "registered": "2014-07-27T03:18:09-12:00", "latitude": 88.661168, "longitude": -125.503108, "tags": [ "cupidatat", "pariatur", "elit", "cupidatat", "ut", "nisi", "exercitation" ], "friends": [ { "id": 0, "name": "Bonita Odom" }, { "id": 1, "name": "Denise Brock" }, { "id": 2, "name": "Consuelo Dixon" } ], "greeting": "Hello, Dean Rogers! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2655e5a8be87f1aa57", "index": 2915, "guid": "a7b59ce0-d92d-4377-96cd-6dc5d7dbcc9c", "isActive": true, "balance": "$2,792.53", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Harmon Barnes", "gender": "male", "company": "DOGTOWN", "email": "harmonbarnes@dogtown.com", "phone": "+1 (954) 556-2199", "address": "855 Nautilus Avenue, Galesville, New Mexico, 5455", "about": "Elit exercitation et dolor aute reprehenderit sit. Magna sit ad qui proident dolore ipsum sit. Deserunt tempor eiusmod cillum laborum sit sint. Veniam laboris officia eu nisi Lorem duis laboris officia.\r\n", "registered": "2014-04-22T13:57:06-12:00", "latitude": -77.336487, "longitude": -1.762386, "tags": [ "adipisicing", "ipsum", "esse", "minim", "magna", "reprehenderit", "laborum" ], "friends": [ { "id": 0, "name": "Arline Massey" }, { "id": 1, "name": "Franco Morton" }, { "id": 2, "name": "Enid Landry" } ], "greeting": "Hello, Harmon Barnes! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26666ef1b6524b7938", "index": 2916, "guid": "21e8b6ad-96ec-4f33-8ff6-7ecc2d35eea3", "isActive": false, "balance": "$2,494.67", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Diana Garcia", "gender": "female", "company": "QNEKT", "email": "dianagarcia@qnekt.com", "phone": "+1 (836) 522-2391", "address": "930 Kenilworth Place, Spelter, Maryland, 8801", "about": "Ad id duis irure adipisicing est cillum laborum proident in laborum sunt irure do nostrud. Nostrud aute tempor enim anim nisi amet elit Lorem reprehenderit. Aliqua enim fugiat ex officia pariatur irure cillum nostrud tempor ex sint. Pariatur laboris fugiat cupidatat duis magna ea enim pariatur minim. Eu culpa eiusmod laborum ea culpa ad culpa veniam elit laborum esse irure in laborum. Est voluptate fugiat mollit cillum aliqua aliqua ex fugiat occaecat cupidatat excepteur amet est. Incididunt aliqua elit elit Lorem ipsum labore fugiat ullamco occaecat quis.\r\n", "registered": "2014-03-15T23:34:29-13:00", "latitude": -52.079325, "longitude": 7.113645, "tags": [ "esse", "sit", "culpa", "exercitation", "aute", "pariatur", "dolor" ], "friends": [ { "id": 0, "name": "Vera Bowers" }, { "id": 1, "name": "Madden Whitaker" }, { "id": 2, "name": "Gross Gordon" } ], "greeting": "Hello, Diana Garcia! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea260433430f95ce4cad", "index": 2917, "guid": "899daaa6-ed88-4a84-acc0-511f6ada600f", "isActive": true, "balance": "$2,019.61", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Corine Downs", "gender": "female", "company": "SAVVY", "email": "corinedowns@savvy.com", "phone": "+1 (805) 541-3559", "address": "124 Hawthorne Street, Floriston, Alaska, 7278", "about": "Sint irure consectetur in enim anim velit eiusmod sint dolore. Voluptate amet aliquip nostrud mollit adipisicing excepteur aliquip in deserunt occaecat occaecat in quis excepteur. Anim non veniam ipsum sunt laboris minim ad reprehenderit est.\r\n", "registered": "2014-06-13T09:12:57-12:00", "latitude": 49.609945, "longitude": 103.654256, "tags": [ "reprehenderit", "sit", "anim", "aliqua", "officia", "ex", "proident" ], "friends": [ { "id": 0, "name": "Rush Rose" }, { "id": 1, "name": "Drake Blackwell" }, { "id": 2, "name": "Lane Steele" } ], "greeting": "Hello, Corine Downs! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26b5daeb4b1424af0a", "index": 2918, "guid": "5a5ffb5e-0180-4617-b696-6e06793313ad", "isActive": true, "balance": "$2,550.35", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Clemons Dorsey", "gender": "male", "company": "ATOMICA", "email": "clemonsdorsey@atomica.com", "phone": "+1 (919) 461-2901", "address": "968 Railroad Avenue, Allendale, Arizona, 6414", "about": "Fugiat dolore velit consequat do ea nostrud fugiat ut duis irure. Pariatur cillum laboris veniam est irure consequat. Elit elit pariatur excepteur magna aute ad commodo laborum. Ipsum velit consequat Lorem aliquip labore do enim do. Adipisicing aute aliqua dolore adipisicing.\r\n", "registered": "2014-03-23T03:06:38-13:00", "latitude": 8.964285, "longitude": -40.549648, "tags": [ "est", "magna", "ullamco", "deserunt", "nisi", "minim", "enim" ], "friends": [ { "id": 0, "name": "Ola Burch" }, { "id": 1, "name": "Levy Miller" }, { "id": 2, "name": "Yang Gross" } ], "greeting": "Hello, Clemons Dorsey! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2603f21d9e59e7a1d2", "index": 2919, "guid": "673ecd77-a0b8-4da8-86fa-82ce5c8251bf", "isActive": false, "balance": "$3,613.45", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Keith Rowe", "gender": "male", "company": "MINGA", "email": "keithrowe@minga.com", "phone": "+1 (831) 443-3768", "address": "670 Lacon Court, Woodlake, Federated States Of Micronesia, 4314", "about": "Eu officia ipsum enim mollit duis cupidatat proident. Magna duis est labore cupidatat consequat ea est eu aliquip sint sint pariatur. Ad occaecat ex consequat fugiat do officia sit Lorem labore nulla esse fugiat. Esse ipsum ullamco occaecat excepteur deserunt irure elit irure aliqua commodo nostrud eiusmod id minim.\r\n", "registered": "2014-02-10T21:38:47-13:00", "latitude": -47.918253, "longitude": 145.144822, "tags": [ "minim", "exercitation", "reprehenderit", "ad", "proident", "pariatur", "anim" ], "friends": [ { "id": 0, "name": "Adrian Fitzgerald" }, { "id": 1, "name": "Hodge Burris" }, { "id": 2, "name": "Booker Case" } ], "greeting": "Hello, Keith Rowe! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26546a32fc67d7232d", "index": 2920, "guid": "38648299-91ca-43b7-98d7-cf47252d6802", "isActive": true, "balance": "$2,898.92", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Duffy Hines", "gender": "male", "company": "MUSIX", "email": "duffyhines@musix.com", "phone": "+1 (871) 509-3208", "address": "203 Fillmore Place, Urie, Oklahoma, 4866", "about": "Dolor reprehenderit veniam culpa qui esse adipisicing ad. Laboris incididunt ad deserunt consectetur mollit consectetur ullamco sint culpa aliquip culpa do aliquip. Eu aliquip in labore non pariatur do et quis cupidatat laborum. Exercitation quis eu ad do fugiat mollit eu in occaecat duis eiusmod sint.\r\n", "registered": "2014-03-05T07:24:08-13:00", "latitude": -76.738899, "longitude": -97.916545, "tags": [ "cupidatat", "deserunt", "dolor", "enim", "pariatur", "aliqua", "aliquip" ], "friends": [ { "id": 0, "name": "Velazquez Contreras" }, { "id": 1, "name": "Golden Chen" }, { "id": 2, "name": "Tasha Bean" } ], "greeting": "Hello, Duffy Hines! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26836e3d34bdf54b54", "index": 2921, "guid": "a96c551c-e38c-47f5-bf41-1fb9fe578c07", "isActive": true, "balance": "$3,996.82", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Melva Burns", "gender": "female", "company": "GEEKOLOGY", "email": "melvaburns@geekology.com", "phone": "+1 (883) 446-2004", "address": "708 Heyward Street, Golconda, Michigan, 9939", "about": "Cupidatat in nulla est reprehenderit minim officia aliquip ad aute occaecat tempor proident exercitation consequat. Pariatur voluptate nulla mollit minim fugiat ea occaecat non fugiat mollit adipisicing dolor commodo. Magna ex nostrud amet mollit exercitation nisi. Eu cillum incididunt sit cillum minim non id. Enim ut incididunt exercitation commodo magna. Sint aliqua sunt velit ad. Pariatur occaecat aliquip ea elit pariatur anim consectetur.\r\n", "registered": "2014-02-25T01:57:27-13:00", "latitude": -64.226961, "longitude": -85.674568, "tags": [ "nostrud", "ad", "sint", "pariatur", "laborum", "aliquip", "deserunt" ], "friends": [ { "id": 0, "name": "Diaz Bruce" }, { "id": 1, "name": "Goldie Gilliam" }, { "id": 2, "name": "Vargas Weiss" } ], "greeting": "Hello, Melva Burns! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26e658b072c536b1c5", "index": 2922, "guid": "8f3eb37e-4929-4e75-a296-f165b8e3eb60", "isActive": false, "balance": "$3,966.17", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Irwin Sharp", "gender": "male", "company": "ECRATIC", "email": "irwinsharp@ecratic.com", "phone": "+1 (988) 527-3648", "address": "638 Seigel Court, Knowlton, Kansas, 379", "about": "Anim eu magna sunt cillum aliqua proident mollit cupidatat nisi elit sunt magna esse. Enim voluptate laborum irure aliquip adipisicing dolor labore labore Lorem tempor irure culpa. Tempor enim exercitation dolore consectetur velit dolore. Do ad consequat exercitation proident culpa fugiat do cupidatat ea pariatur duis dolore ea.\r\n", "registered": "2014-03-01T00:39:52-13:00", "latitude": -3.885812, "longitude": -170.573476, "tags": [ "laboris", "non", "est", "nulla", "do", "laboris", "exercitation" ], "friends": [ { "id": 0, "name": "Danielle Rivera" }, { "id": 1, "name": "Harrington Hobbs" }, { "id": 2, "name": "Ramirez Parker" } ], "greeting": "Hello, Irwin Sharp! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2647351e2144dca88e", "index": 2923, "guid": "62f481a7-c3a6-4dd1-bfc0-ca96d09de335", "isActive": false, "balance": "$2,670.92", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Della West", "gender": "female", "company": "SECURIA", "email": "dellawest@securia.com", "phone": "+1 (813) 438-3331", "address": "708 Hicks Street, Southmont, South Dakota, 9382", "about": "Non consectetur dolore ullamco nulla do amet reprehenderit reprehenderit ullamco do. Id exercitation elit deserunt adipisicing sint. Ullamco ex sint eiusmod dolore irure deserunt ut ut. Excepteur magna fugiat sit duis ex ullamco qui. Labore quis aliqua enim pariatur dolore incididunt velit duis irure.\r\n", "registered": "2014-09-14T10:38:38-12:00", "latitude": 80.323922, "longitude": 170.182975, "tags": [ "nulla", "minim", "incididunt", "est", "dolor", "proident", "cillum" ], "friends": [ { "id": 0, "name": "Roth Peck" }, { "id": 1, "name": "Cannon Hogan" }, { "id": 2, "name": "Louise Coffey" } ], "greeting": "Hello, Della West! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26c5b2ea91d4a411f0", "index": 2924, "guid": "c8622e78-aa1a-4319-8ac6-2c704a1a13e4", "isActive": true, "balance": "$3,217.19", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Joyner Snider", "gender": "male", "company": "OCEANICA", "email": "joynersnider@oceanica.com", "phone": "+1 (804) 431-2206", "address": "211 Kimball Street, Hegins, West Virginia, 7831", "about": "Veniam in est tempor veniam. Nulla excepteur esse excepteur culpa velit excepteur nulla. Cillum ad consequat cupidatat cillum tempor aute mollit adipisicing culpa.\r\n", "registered": "2014-09-08T09:26:10-12:00", "latitude": 60.634595, "longitude": -151.856306, "tags": [ "minim", "nostrud", "cupidatat", "ullamco", "eiusmod", "labore", "amet" ], "friends": [ { "id": 0, "name": "Janna Flores" }, { "id": 1, "name": "Bernadine Harrell" }, { "id": 2, "name": "Nieves Henson" } ], "greeting": "Hello, Joyner Snider! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea264dd748c0ad3a77aa", "index": 2925, "guid": "4c4c8439-3a3f-4540-a006-415a7f9f592f", "isActive": true, "balance": "$3,889.74", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Collier Booth", "gender": "male", "company": "FLEXIGEN", "email": "collierbooth@flexigen.com", "phone": "+1 (850) 440-3541", "address": "824 Fayette Street, Vernon, Texas, 1148", "about": "Adipisicing magna ex ad nostrud deserunt non laborum ut dolor Lorem quis et dolore esse. Do sint dolor dolore pariatur reprehenderit ipsum et duis culpa deserunt ut et. Magna ullamco sunt incididunt ad esse Lorem nostrud proident consectetur. Deserunt laboris eiusmod excepteur duis duis excepteur ad veniam. Aute Lorem magna esse dolor proident incididunt fugiat eu elit velit eu.\r\n", "registered": "2014-09-23T05:06:30-12:00", "latitude": -89.506085, "longitude": -112.374555, "tags": [ "eiusmod", "aliqua", "proident", "nisi", "consequat", "esse", "excepteur" ], "friends": [ { "id": 0, "name": "Fay Willis" }, { "id": 1, "name": "Herrera Carpenter" }, { "id": 2, "name": "Carissa Pena" } ], "greeting": "Hello, Collier Booth! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2633a3b959d920b801", "index": 2926, "guid": "1034e25a-c8cd-4537-a33a-8eb981e00d14", "isActive": true, "balance": "$1,613.89", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Brandie Washington", "gender": "female", "company": "BOLAX", "email": "brandiewashington@bolax.com", "phone": "+1 (813) 563-2425", "address": "613 Malbone Street, Jennings, Oregon, 142", "about": "Commodo cupidatat consectetur dolor et dolor veniam laborum. Et dolore tempor sit quis est reprehenderit sint incididunt Lorem cupidatat. Aliqua minim duis exercitation cupidatat Lorem do amet laborum proident ut elit commodo culpa nostrud. Reprehenderit velit nisi nostrud eiusmod incididunt anim magna deserunt tempor eiusmod Lorem est laborum aute. Occaecat nisi consectetur magna consectetur ex reprehenderit ipsum aute laborum quis dolore tempor. Fugiat anim Lorem nostrud qui sint ex mollit et esse minim quis consequat aliqua nisi. Sunt laborum magna amet elit.\r\n", "registered": "2014-06-03T11:48:32-12:00", "latitude": -12.911588, "longitude": 147.669971, "tags": [ "velit", "laborum", "irure", "qui", "dolore", "aliqua", "anim" ], "friends": [ { "id": 0, "name": "Pitts Potter" }, { "id": 1, "name": "Cecelia Gates" }, { "id": 2, "name": "Dennis Hopkins" } ], "greeting": "Hello, Brandie Washington! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26c5a667f5ae0c3dae", "index": 2927, "guid": "47a4c292-8809-4e66-a5f0-36dc0a9ba899", "isActive": true, "balance": "$2,175.05", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Hardin Gilbert", "gender": "male", "company": "LOCAZONE", "email": "hardingilbert@locazone.com", "phone": "+1 (874) 530-3330", "address": "850 Varet Street, Outlook, Nevada, 1959", "about": "Quis magna esse consequat proident irure esse id mollit officia ex ipsum mollit excepteur culpa. Ex aliquip ipsum proident ut aliquip sit ex. Ullamco occaecat magna ipsum cillum aute nulla. Mollit tempor Lorem irure incididunt ex. Enim ipsum exercitation enim ullamco consequat fugiat id laborum consectetur reprehenderit commodo amet dolor. Quis mollit id sit deserunt laborum mollit consequat officia amet non duis mollit. Est nulla est cupidatat quis adipisicing nostrud in tempor ex qui veniam velit ad.\r\n", "registered": "2014-09-07T04:51:03-12:00", "latitude": 56.543234, "longitude": 46.578375, "tags": [ "sit", "nulla", "in", "duis", "in", "elit", "eu" ], "friends": [ { "id": 0, "name": "Lidia Walls" }, { "id": 1, "name": "Meredith Franklin" }, { "id": 2, "name": "Rhea Reed" } ], "greeting": "Hello, Hardin Gilbert! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea264fa88d33b5a87adc", "index": 2928, "guid": "229c519f-60fe-4303-b2cc-fd9b7357390d", "isActive": false, "balance": "$1,449.78", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Becky Odonnell", "gender": "female", "company": "ZOLAREX", "email": "beckyodonnell@zolarex.com", "phone": "+1 (833) 435-3695", "address": "578 Meadow Street, Winfred, Minnesota, 745", "about": "Incididunt tempor mollit quis sint aliqua ex. Anim ea ex consectetur do mollit deserunt adipisicing adipisicing duis voluptate. Voluptate voluptate veniam sint do ex sunt anim do consequat veniam anim adipisicing mollit in.\r\n", "registered": "2014-09-09T13:44:36-12:00", "latitude": 51.423874, "longitude": 145.516134, "tags": [ "officia", "sit", "tempor", "ut", "sit", "nisi", "sint" ], "friends": [ { "id": 0, "name": "Willis Chang" }, { "id": 1, "name": "Rocha Snyder" }, { "id": 2, "name": "Stacy Elliott" } ], "greeting": "Hello, Becky Odonnell! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2686385e84520b75ba", "index": 2929, "guid": "6a344359-9894-4fa8-ba90-d39377547bd6", "isActive": false, "balance": "$1,948.11", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Robinson Neal", "gender": "male", "company": "DAYCORE", "email": "robinsonneal@daycore.com", "phone": "+1 (883) 461-3258", "address": "846 Duryea Court, Fairlee, Missouri, 2779", "about": "Aliqua consectetur labore est ex. Tempor aute enim culpa magna aute ea elit. In ex ea eu non veniam et cillum. Nisi ipsum anim esse dolor qui tempor cupidatat laborum id deserunt do est. Non fugiat nisi sint ea in voluptate dolor exercitation.\r\n", "registered": "2014-01-14T09:23:36-13:00", "latitude": -74.613318, "longitude": 174.701703, "tags": [ "velit", "excepteur", "magna", "commodo", "nostrud", "enim", "occaecat" ], "friends": [ { "id": 0, "name": "Crawford Boone" }, { "id": 1, "name": "Barlow Valencia" }, { "id": 2, "name": "Fitzpatrick Robinson" } ], "greeting": "Hello, Robinson Neal! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea267e9b57f8350d285c", "index": 2930, "guid": "4f23ebac-dc2f-44bb-ab2b-673dc9624f1c", "isActive": true, "balance": "$2,999.03", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Cruz Macdonald", "gender": "male", "company": "SONGLINES", "email": "cruzmacdonald@songlines.com", "phone": "+1 (841) 545-2472", "address": "308 Garden Street, Tonopah, Rhode Island, 2152", "about": "Tempor esse dolor ullamco qui pariatur sit esse. Non ullamco sunt magna enim mollit commodo veniam ad ut cillum ad commodo eiusmod. Sit consequat esse laboris nulla non Lorem id labore est. Veniam dolore officia consequat pariatur est irure eu ipsum aliqua duis.\r\n", "registered": "2014-02-22T08:22:49-13:00", "latitude": -44.341667, "longitude": 159.782879, "tags": [ "nostrud", "proident", "tempor", "laboris", "aliqua", "irure", "excepteur" ], "friends": [ { "id": 0, "name": "Gwen Santiago" }, { "id": 1, "name": "Callahan Bartlett" }, { "id": 2, "name": "Ortega Weeks" } ], "greeting": "Hello, Cruz Macdonald! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26ece919f22b982fe1", "index": 2931, "guid": "4fb4d394-21bf-40bd-8fdd-92a83704510b", "isActive": true, "balance": "$2,711.65", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Stout Lott", "gender": "male", "company": "KONGLE", "email": "stoutlott@kongle.com", "phone": "+1 (829) 544-3310", "address": "786 Matthews Court, Adamstown, Florida, 6680", "about": "Nostrud laboris dolore non laboris pariatur nisi. Enim proident ipsum cillum mollit et minim laboris. Consectetur nulla consequat minim elit Lorem exercitation pariatur incididunt velit laborum. Sint dolor consequat amet culpa nostrud commodo non consectetur cupidatat. Fugiat excepteur ad in sint eu fugiat tempor Lorem. Quis ex Lorem consequat est culpa amet esse.\r\n", "registered": "2014-04-15T10:32:09-12:00", "latitude": 31.126136, "longitude": -93.045742, "tags": [ "nisi", "exercitation", "irure", "tempor", "minim", "est", "cupidatat" ], "friends": [ { "id": 0, "name": "Boyd Oconnor" }, { "id": 1, "name": "Dickerson Dejesus" }, { "id": 2, "name": "Polly Cline" } ], "greeting": "Hello, Stout Lott! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea263a8aff1008d5aff4", "index": 2932, "guid": "f05302b8-befa-460b-85e1-d8c58663e48f", "isActive": false, "balance": "$2,947.45", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Stefanie Larson", "gender": "female", "company": "KONGENE", "email": "stefanielarson@kongene.com", "phone": "+1 (907) 514-3687", "address": "233 Vermont Court, Coyote, North Carolina, 7619", "about": "Consectetur do dolore deserunt ea amet proident ex aliquip Lorem elit do incididunt id irure. Amet ex aute proident veniam consequat cillum enim excepteur non. Non ut ullamco cupidatat amet adipisicing nulla adipisicing ex minim labore. Labore consequat duis et sit ut dolore non id aute consectetur Lorem. Mollit ut nostrud eu laboris ea irure exercitation aute ipsum occaecat duis aliquip sint Lorem. Sint ullamco esse ullamco aliqua eiusmod enim excepteur sunt. Adipisicing duis consectetur consectetur est exercitation.\r\n", "registered": "2014-08-18T18:06:07-12:00", "latitude": -14.388366, "longitude": 173.875797, "tags": [ "do", "ut", "et", "id", "amet", "quis", "exercitation" ], "friends": [ { "id": 0, "name": "Bethany Velazquez" }, { "id": 1, "name": "Elma Newman" }, { "id": 2, "name": "Valdez Dyer" } ], "greeting": "Hello, Stefanie Larson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26e4e6819a22eb1c4d", "index": 2933, "guid": "50611b6b-ed2f-4946-a0a9-b7787f2b4b90", "isActive": true, "balance": "$1,602.81", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Stanley Blair", "gender": "male", "company": "FREAKIN", "email": "stanleyblair@freakin.com", "phone": "+1 (935) 458-3471", "address": "953 Langham Street, Gorst, New Hampshire, 5066", "about": "Fugiat deserunt mollit eu nisi dolore. Dolore ea velit minim qui pariatur aliqua fugiat ad quis sunt consectetur. Lorem nostrud ad deserunt culpa Lorem cillum sunt labore non deserunt mollit consequat enim. Esse aute aliqua deserunt officia excepteur consectetur tempor.\r\n", "registered": "2014-08-09T15:33:40-12:00", "latitude": -34.419629, "longitude": 3.992144, "tags": [ "ad", "cupidatat", "ipsum", "mollit", "sit", "adipisicing", "id" ], "friends": [ { "id": 0, "name": "Sabrina Keller" }, { "id": 1, "name": "Forbes Hampton" }, { "id": 2, "name": "Lila Hernandez" } ], "greeting": "Hello, Stanley Blair! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2600b5faa192a1f1c0", "index": 2934, "guid": "fd4d4ef2-93bb-483c-9792-afef837dce3e", "isActive": false, "balance": "$1,272.25", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Berry Nguyen", "gender": "male", "company": "GEOFORM", "email": "berrynguyen@geoform.com", "phone": "+1 (888) 452-2720", "address": "323 Coleman Street, Watrous, Arkansas, 7307", "about": "Aliquip fugiat elit veniam proident irure. Cupidatat consequat aute est nisi excepteur quis nisi irure. Adipisicing eu reprehenderit do ex Lorem duis proident sint mollit ea minim ipsum est reprehenderit.\r\n", "registered": "2014-03-19T11:53:49-13:00", "latitude": 82.109888, "longitude": -172.655906, "tags": [ "pariatur", "id", "ad", "do", "do", "enim", "voluptate" ], "friends": [ { "id": 0, "name": "Hancock Ingram" }, { "id": 1, "name": "Caldwell Maldonado" }, { "id": 2, "name": "Joan Guthrie" } ], "greeting": "Hello, Berry Nguyen! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea263e7a2e6de21c379c", "index": 2935, "guid": "73502c00-b6d7-4e19-aae6-1747793f68c9", "isActive": true, "balance": "$1,338.61", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Knapp Fletcher", "gender": "male", "company": "PROSURE", "email": "knappfletcher@prosure.com", "phone": "+1 (802) 477-2257", "address": "841 Newel Street, Catherine, Iowa, 721", "about": "Aute laborum adipisicing velit anim pariatur. Laborum amet ipsum adipisicing aliqua. Id nisi ex nostrud mollit laborum et eiusmod. Sunt adipisicing aute duis velit elit non elit. Laboris est anim sit non id proident qui nulla do. Cupidatat amet dolore exercitation incididunt nostrud cupidatat.\r\n", "registered": "2014-01-25T00:45:49-13:00", "latitude": 26.42997, "longitude": -47.402202, "tags": [ "ex", "irure", "proident", "duis", "commodo", "dolor", "aute" ], "friends": [ { "id": 0, "name": "Elisa Jarvis" }, { "id": 1, "name": "Lowery Hinton" }, { "id": 2, "name": "Letitia Battle" } ], "greeting": "Hello, Knapp Fletcher! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea269aecaac20117fc0a", "index": 2936, "guid": "cb1655ab-6e21-472c-8094-4959f9df3885", "isActive": true, "balance": "$2,475.09", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Alisha Allen", "gender": "female", "company": "BEDLAM", "email": "alishaallen@bedlam.com", "phone": "+1 (823) 575-2345", "address": "221 McKinley Avenue, Glenville, Nebraska, 1385", "about": "Minim ullamco eiusmod officia excepteur Lorem. Amet minim nostrud in eiusmod irure anim ad quis. Non consectetur cupidatat mollit irure tempor quis. Ut cillum non ex amet exercitation sunt.\r\n", "registered": "2014-09-18T02:31:51-12:00", "latitude": 57.40992, "longitude": 89.702999, "tags": [ "magna", "cillum", "in", "sint", "cupidatat", "id", "tempor" ], "friends": [ { "id": 0, "name": "Marquez Barrett" }, { "id": 1, "name": "Daniel Rojas" }, { "id": 2, "name": "Briggs Dotson" } ], "greeting": "Hello, Alisha Allen! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea267633a6fca4bf2385", "index": 2937, "guid": "b6c026b8-a9f7-4a6c-8a68-269a432406f9", "isActive": false, "balance": "$1,182.33", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Joyce Spence", "gender": "female", "company": "GEEKKO", "email": "joycespence@geekko.com", "phone": "+1 (857) 432-3360", "address": "241 Pineapple Street, Devon, District Of Columbia, 3605", "about": "Sunt cupidatat in reprehenderit voluptate qui qui. Enim ea adipisicing sunt in excepteur eiusmod quis aute. Proident qui dolore ea occaecat laboris culpa ipsum.\r\n", "registered": "2014-03-27T11:06:32-13:00", "latitude": 46.553251, "longitude": -44.942047, "tags": [ "est", "adipisicing", "magna", "ut", "amet", "deserunt", "ullamco" ], "friends": [ { "id": 0, "name": "Louisa Burke" }, { "id": 1, "name": "Christensen Rosario" }, { "id": 2, "name": "Rhodes Stephenson" } ], "greeting": "Hello, Joyce Spence! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea265bc290ef9a318347", "index": 2938, "guid": "943bc275-7384-4f9e-87b0-340b5c21f095", "isActive": false, "balance": "$2,277.86", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Blanche Frederick", "gender": "female", "company": "BUZZWORKS", "email": "blanchefrederick@buzzworks.com", "phone": "+1 (963) 415-2841", "address": "777 Ridgewood Avenue, Stevens, New Jersey, 8163", "about": "Consequat ex nisi ipsum id minim ipsum. Sit nostrud veniam tempor eu aliquip sunt consectetur ut. Est reprehenderit culpa commodo quis consequat ut laborum occaecat reprehenderit aliqua nulla sint enim.\r\n", "registered": "2014-03-15T01:40:16-13:00", "latitude": -28.670648, "longitude": 156.415675, "tags": [ "quis", "cillum", "enim", "amet", "do", "voluptate", "qui" ], "friends": [ { "id": 0, "name": "Parks Kirkland" }, { "id": 1, "name": "Atkins Wall" }, { "id": 2, "name": "Ayala Parsons" } ], "greeting": "Hello, Blanche Frederick! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26dbbacafd203459be", "index": 2939, "guid": "2c06b6c3-2170-44a2-967f-f2dca6c97757", "isActive": false, "balance": "$2,058.84", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Cassie Curtis", "gender": "female", "company": "QUILTIGEN", "email": "cassiecurtis@quiltigen.com", "phone": "+1 (954) 577-3538", "address": "158 Overbaugh Place, Taft, Palau, 4228", "about": "Non et elit ipsum commodo cillum fugiat. Non qui occaecat reprehenderit mollit. In eu aliqua officia non pariatur irure culpa nisi dolore occaecat nulla in. Commodo sit irure voluptate id minim dolore Lorem. Ullamco quis sunt eu quis non qui minim reprehenderit. Tempor voluptate elit cillum ullamco cillum dolor tempor.\r\n", "registered": "2014-08-05T03:19:55-12:00", "latitude": 85.775773, "longitude": -37.52227, "tags": [ "cillum", "et", "et", "ad", "exercitation", "aliquip", "occaecat" ], "friends": [ { "id": 0, "name": "Sherry Diaz" }, { "id": 1, "name": "Tucker Henderson" }, { "id": 2, "name": "Patterson Fisher" } ], "greeting": "Hello, Cassie Curtis! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26364adb3ea8f2eb23", "index": 2940, "guid": "9cc47330-3af1-4733-ae29-bb0a5c318ee9", "isActive": false, "balance": "$3,475.78", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Mcclain Forbes", "gender": "male", "company": "VIRVA", "email": "mcclainforbes@virva.com", "phone": "+1 (953) 522-2647", "address": "666 Doscher Street, Biehle, Puerto Rico, 5970", "about": "Ut sunt in laborum dolore non anim id culpa quis pariatur. Eu ex dolore incididunt exercitation anim aliqua. Irure sunt excepteur dolor id occaecat sit nostrud id duis consectetur non adipisicing. Minim ipsum ad elit non dolor consectetur elit consequat dolor officia aliquip.\r\n", "registered": "2014-05-11T05:45:05-12:00", "latitude": -86.219127, "longitude": 107.404828, "tags": [ "amet", "reprehenderit", "pariatur", "exercitation", "proident", "enim", "non" ], "friends": [ { "id": 0, "name": "Fleming Bass" }, { "id": 1, "name": "Frankie Rowland" }, { "id": 2, "name": "Guthrie Horn" } ], "greeting": "Hello, Mcclain Forbes! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea261aed0f7b8ccdc22f", "index": 2941, "guid": "7c2fef70-7019-450a-bb5b-13d437f8263d", "isActive": true, "balance": "$1,894.46", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Kerry Yates", "gender": "female", "company": "TYPHONICA", "email": "kerryyates@typhonica.com", "phone": "+1 (986) 430-2108", "address": "292 Argyle Road, Conway, California, 4395", "about": "Culpa adipisicing laborum enim ipsum do. Dolore ea officia officia excepteur. Officia nulla sint laboris aliquip aliqua est ipsum. Quis ad nostrud eu ipsum. Commodo ad aute ullamco duis mollit reprehenderit anim qui. Dolor reprehenderit enim fugiat tempor veniam fugiat eu minim pariatur mollit fugiat reprehenderit magna tempor.\r\n", "registered": "2014-07-15T21:35:11-12:00", "latitude": -73.828215, "longitude": 50.997405, "tags": [ "reprehenderit", "sunt", "exercitation", "nisi", "magna", "aliquip", "exercitation" ], "friends": [ { "id": 0, "name": "Violet Spears" }, { "id": 1, "name": "Petty Hester" }, { "id": 2, "name": "Willa Fernandez" } ], "greeting": "Hello, Kerry Yates! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea266168c0e3e4dad5d4", "index": 2942, "guid": "fe45e3f5-3019-4c55-a048-bcd14be136d9", "isActive": true, "balance": "$2,478.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Cummings Sweeney", "gender": "male", "company": "VIOCULAR", "email": "cummingssweeney@viocular.com", "phone": "+1 (862) 445-3479", "address": "585 Columbia Place, Somerset, Vermont, 9756", "about": "Sint anim excepteur magna velit. Ea excepteur ad duis magna fugiat tempor. Dolor sint labore incididunt adipisicing enim nulla et deserunt laboris.\r\n", "registered": "2014-09-09T19:50:59-12:00", "latitude": -22.39502, "longitude": -95.536678, "tags": [ "ea", "aliqua", "consectetur", "dolor", "officia", "eiusmod", "duis" ], "friends": [ { "id": 0, "name": "Sargent Abbott" }, { "id": 1, "name": "Eaton Kane" }, { "id": 2, "name": "Mcdaniel Clements" } ], "greeting": "Hello, Cummings Sweeney! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea267fe6886986b7f102", "index": 2943, "guid": "052cc989-d596-45ee-ba11-1e0447b2cb9c", "isActive": false, "balance": "$3,927.42", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Vang Romero", "gender": "male", "company": "TROLLERY", "email": "vangromero@trollery.com", "phone": "+1 (909) 526-2812", "address": "606 Alice Court, Woodruff, Indiana, 6499", "about": "Et eu non est nisi ipsum excepteur est. Consectetur cupidatat do sunt velit reprehenderit Lorem cupidatat culpa nulla cupidatat non labore enim. Do eiusmod commodo et duis voluptate. Dolore id in incididunt aute occaecat. Eu ex minim laboris consequat et magna cupidatat eiusmod sunt deserunt sint consequat cillum. Est labore labore proident irure aliquip nostrud ex ipsum dolore est.\r\n", "registered": "2014-06-04T04:46:45-12:00", "latitude": 82.255177, "longitude": 136.294889, "tags": [ "mollit", "fugiat", "veniam", "quis", "nostrud", "laborum", "mollit" ], "friends": [ { "id": 0, "name": "Shauna Moore" }, { "id": 1, "name": "Mcconnell Adams" }, { "id": 2, "name": "Kitty Mcfadden" } ], "greeting": "Hello, Vang Romero! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26ae930a866c27cb92", "index": 2944, "guid": "479cfd43-41d8-43be-855e-4967223bfefe", "isActive": true, "balance": "$2,499.30", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Richardson Clarke", "gender": "male", "company": "OBLIQ", "email": "richardsonclarke@obliq.com", "phone": "+1 (919) 446-2659", "address": "104 Onderdonk Avenue, Lisco, Illinois, 1978", "about": "Ea et consectetur excepteur sit nostrud sunt proident Lorem consectetur magna. Amet sunt ea dolor nulla dolor excepteur esse labore fugiat commodo cupidatat. Deserunt excepteur ad non culpa. Eu elit pariatur consequat est enim aliqua aute cupidatat commodo nostrud ullamco. Dolor consequat dolore incididunt voluptate. Consectetur eu anim adipisicing enim eiusmod non eiusmod ut quis sunt sint fugiat.\r\n", "registered": "2014-04-02T13:10:34-13:00", "latitude": -44.276602, "longitude": 63.63176, "tags": [ "culpa", "est", "consequat", "non", "excepteur", "est", "velit" ], "friends": [ { "id": 0, "name": "Mathis Church" }, { "id": 1, "name": "Wilkerson David" }, { "id": 2, "name": "Nanette Mcdonald" } ], "greeting": "Hello, Richardson Clarke! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26be40fa699a3e41f4", "index": 2945, "guid": "f42ccdf1-236a-40de-a94c-b72e8d8c7481", "isActive": false, "balance": "$1,278.77", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Elvira Lindsay", "gender": "female", "company": "KLUGGER", "email": "elviralindsay@klugger.com", "phone": "+1 (925) 505-3199", "address": "680 Devoe Street, Veguita, South Carolina, 6608", "about": "Irure laboris voluptate aute voluptate anim anim laboris officia elit aliquip incididunt veniam Lorem. Dolore laboris fugiat consectetur ut incididunt enim cillum aliqua amet ipsum ea. Adipisicing laborum ipsum et proident proident excepteur veniam. Fugiat non fugiat incididunt in.\r\n", "registered": "2014-07-21T10:30:01-12:00", "latitude": 63.162721, "longitude": 16.110609, "tags": [ "dolor", "anim", "sit", "aute", "aute", "ut", "quis" ], "friends": [ { "id": 0, "name": "Benjamin Key" }, { "id": 1, "name": "Tonia Murray" }, { "id": 2, "name": "Patton Phelps" } ], "greeting": "Hello, Elvira Lindsay! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26a861f24697b092f4", "index": 2946, "guid": "3c07af63-9f86-4b7d-aa9e-0d3df7016ad1", "isActive": false, "balance": "$2,416.25", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Rojas Wolf", "gender": "male", "company": "BOVIS", "email": "rojaswolf@bovis.com", "phone": "+1 (959) 437-2980", "address": "384 Poplar Street, Trexlertown, American Samoa, 9253", "about": "Quis id exercitation amet commodo amet commodo id non ea veniam enim in eu ex. Veniam in incididunt do ipsum ut est nisi cupidatat. Pariatur aliquip tempor consectetur qui elit adipisicing esse aute et incididunt laboris amet. Cupidatat elit mollit consectetur excepteur qui. Velit aliquip dolore laboris ea esse. Sit Lorem excepteur exercitation nulla occaecat commodo irure ad dolore reprehenderit in veniam nostrud mollit.\r\n", "registered": "2014-01-20T16:58:46-13:00", "latitude": 9.080612, "longitude": -67.556865, "tags": [ "et", "est", "minim", "aliquip", "occaecat", "aute", "adipisicing" ], "friends": [ { "id": 0, "name": "Eliza Hooper" }, { "id": 1, "name": "Shelly Mills" }, { "id": 2, "name": "Carly Middleton" } ], "greeting": "Hello, Rojas Wolf! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26fcd802b8fad3be7c", "index": 2947, "guid": "f88df464-942c-4d1b-bdcc-a96ad01f2606", "isActive": false, "balance": "$3,468.77", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Parrish Hawkins", "gender": "male", "company": "EVIDENDS", "email": "parrishhawkins@evidends.com", "phone": "+1 (976) 562-2457", "address": "962 Concord Street, Riegelwood, Delaware, 7618", "about": "Nisi nostrud dolor cupidatat incididunt incididunt occaecat sit aute eu. Ipsum nostrud consectetur labore reprehenderit cillum ad aliqua qui excepteur fugiat duis. Veniam anim minim proident nisi dolore consectetur esse esse nulla duis eiusmod magna. Sint aliqua amet ipsum laboris minim deserunt. Ut voluptate Lorem aliqua consequat consequat. Magna duis id officia officia sint eu eiusmod Lorem deserunt consequat dolor anim minim.\r\n", "registered": "2014-09-19T18:27:35-12:00", "latitude": -27.772416, "longitude": -69.132523, "tags": [ "eiusmod", "consectetur", "ad", "mollit", "eiusmod", "eiusmod", "minim" ], "friends": [ { "id": 0, "name": "Lillian Norris" }, { "id": 1, "name": "Lawanda Rich" }, { "id": 2, "name": "Natasha Cervantes" } ], "greeting": "Hello, Parrish Hawkins! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26b91cdebb47e423bf", "index": 2948, "guid": "15ce61c1-90aa-4e85-b936-8567534d4701", "isActive": false, "balance": "$1,309.78", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Angelique Campbell", "gender": "female", "company": "SENTIA", "email": "angeliquecampbell@sentia.com", "phone": "+1 (865) 515-3564", "address": "124 Schenck Court, Gordon, Pennsylvania, 1867", "about": "Est incididunt occaecat ipsum adipisicing voluptate. Ut excepteur nostrud tempor laborum dolor quis. Cupidatat ullamco magna elit occaecat officia Lorem proident fugiat magna. Nulla consectetur dolor sunt irure consequat Lorem incididunt duis proident proident voluptate.\r\n", "registered": "2014-05-26T06:34:32-12:00", "latitude": -10.911607, "longitude": 138.719182, "tags": [ "officia", "id", "esse", "tempor", "ad", "ea", "officia" ], "friends": [ { "id": 0, "name": "Deborah Mcfarland" }, { "id": 1, "name": "Buck Beach" }, { "id": 2, "name": "Dominique Vaughn" } ], "greeting": "Hello, Angelique Campbell! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea265bf1d7220c7bd6a5", "index": 2949, "guid": "a09a7e2d-cd01-475b-b07e-9bd0545dc36f", "isActive": true, "balance": "$2,670.49", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Meyers Ashley", "gender": "male", "company": "ENTHAZE", "email": "meyersashley@enthaze.com", "phone": "+1 (969) 594-2662", "address": "521 Sackett Street, Jenkinsville, Georgia, 133", "about": "Commodo dolore id nulla consequat eiusmod veniam velit cupidatat exercitation. Elit pariatur labore excepteur et reprehenderit consectetur adipisicing eu sint sint. Pariatur cupidatat amet labore ut occaecat non. Ea exercitation ullamco ut aute anim ex dolore. Adipisicing esse dolore sint eu et et id esse amet minim.\r\n", "registered": "2014-05-31T01:49:45-12:00", "latitude": -5.097127, "longitude": -122.229661, "tags": [ "dolor", "aute", "aliquip", "consectetur", "labore", "veniam", "ad" ], "friends": [ { "id": 0, "name": "Melisa Chandler" }, { "id": 1, "name": "Brooks Vaughan" }, { "id": 2, "name": "Kimberly Robbins" } ], "greeting": "Hello, Meyers Ashley! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea266d72b5f50c09e9f8", "index": 2950, "guid": "158a4fc7-be02-4801-a385-b01d2c330bcd", "isActive": true, "balance": "$3,017.77", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Jessie Levine", "gender": "female", "company": "MEDALERT", "email": "jessielevine@medalert.com", "phone": "+1 (931) 464-3199", "address": "906 Leonard Street, Lund, North Dakota, 7731", "about": "Est irure amet dolore veniam excepteur esse adipisicing. Dolor esse Lorem voluptate amet occaecat mollit esse irure. Irure velit ad culpa duis id dolore tempor culpa minim veniam. Mollit adipisicing nulla velit ut excepteur. In consequat sit reprehenderit laborum sunt proident tempor sit consequat laborum adipisicing aliquip dolore.\r\n", "registered": "2014-02-18T01:09:42-13:00", "latitude": -15.437358, "longitude": -78.642171, "tags": [ "non", "proident", "officia", "deserunt", "officia", "esse", "deserunt" ], "friends": [ { "id": 0, "name": "Dollie Combs" }, { "id": 1, "name": "Margo Schwartz" }, { "id": 2, "name": "Anthony Sims" } ], "greeting": "Hello, Jessie Levine! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26550fb2297a0e850c", "index": 2951, "guid": "f25efd71-31cc-4fdd-a753-611467acd7e3", "isActive": true, "balance": "$1,545.49", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Lupe Maxwell", "gender": "female", "company": "TALKOLA", "email": "lupemaxwell@talkola.com", "phone": "+1 (845) 450-3897", "address": "386 Walker Court, Bloomington, Louisiana, 117", "about": "Adipisicing in Lorem culpa laborum ad Lorem ea dolor tempor enim. Id quis tempor cillum qui consequat eiusmod nostrud reprehenderit non est adipisicing veniam ad dolore. Nisi tempor sit reprehenderit esse culpa sunt. Non deserunt commodo excepteur laboris sunt id sint excepteur commodo incididunt aliquip deserunt. Occaecat sit ullamco qui occaecat occaecat proident dolor minim. Laborum et dolor ex non pariatur voluptate.\r\n", "registered": "2014-06-26T04:38:33-12:00", "latitude": 44.936964, "longitude": 7.91981, "tags": [ "id", "eu", "officia", "cupidatat", "dolore", "irure", "veniam" ], "friends": [ { "id": 0, "name": "Sheri Talley" }, { "id": 1, "name": "Joann Knowles" }, { "id": 2, "name": "Barrett Green" } ], "greeting": "Hello, Lupe Maxwell! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea268ff7123b45012e10", "index": 2952, "guid": "5cfc7d8a-4eff-4027-a039-843f717dabf3", "isActive": false, "balance": "$2,502.82", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Best Gutierrez", "gender": "male", "company": "ORBIFLEX", "email": "bestgutierrez@orbiflex.com", "phone": "+1 (814) 525-3290", "address": "801 Oxford Street, Sanders, Northern Mariana Islands, 2498", "about": "Veniam minim esse culpa eu anim. Sint cillum irure proident Lorem eu duis irure. Sunt elit et ad cupidatat. Quis ullamco labore cupidatat magna nostrud reprehenderit laboris velit cillum in culpa voluptate enim.\r\n", "registered": "2014-03-27T02:52:11-13:00", "latitude": -89.176012, "longitude": 85.13714, "tags": [ "nostrud", "ut", "eu", "ex", "elit", "ullamco", "quis" ], "friends": [ { "id": 0, "name": "Colleen Rivers" }, { "id": 1, "name": "Park Garner" }, { "id": 2, "name": "Cabrera Mann" } ], "greeting": "Hello, Best Gutierrez! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2650244cb49fd493cb", "index": 2953, "guid": "ff9db09c-35fa-45e9-a263-2772cc9aec2e", "isActive": true, "balance": "$3,590.89", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Leila Harvey", "gender": "female", "company": "COMTOUR", "email": "leilaharvey@comtour.com", "phone": "+1 (903) 564-3026", "address": "591 Dunne Place, Gilgo, Colorado, 2270", "about": "Quis voluptate sunt et amet exercitation laboris officia velit ipsum duis eiusmod dolore veniam ex. Qui aliquip qui deserunt id proident sit. Consectetur labore dolor ex dolore sit nulla exercitation consectetur. Occaecat ex duis incididunt deserunt.\r\n", "registered": "2014-09-17T22:35:16-12:00", "latitude": -4.095741, "longitude": 96.350424, "tags": [ "cupidatat", "id", "duis", "laborum", "duis", "ut", "qui" ], "friends": [ { "id": 0, "name": "Miriam Pollard" }, { "id": 1, "name": "Wendi Davenport" }, { "id": 2, "name": "Bird Norton" } ], "greeting": "Hello, Leila Harvey! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2638dee4b3bf364b6e", "index": 2954, "guid": "64abab95-2db3-47cd-9b7a-cd64a05b7510", "isActive": true, "balance": "$1,282.35", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Leblanc Mendez", "gender": "male", "company": "LUMBREX", "email": "leblancmendez@lumbrex.com", "phone": "+1 (860) 547-2759", "address": "909 Eldert Lane, Durham, Idaho, 2035", "about": "Sit adipisicing occaecat dolor non adipisicing cillum est officia culpa. Enim amet enim cupidatat nostrud fugiat incididunt eu aliquip dolore in velit. Tempor pariatur proident voluptate consequat aliquip mollit veniam cupidatat amet. Consectetur sit labore duis occaecat ut aliquip voluptate et.\r\n", "registered": "2014-06-27T01:33:53-12:00", "latitude": 5.815098, "longitude": 164.144064, "tags": [ "culpa", "id", "pariatur", "consequat", "esse", "enim", "in" ], "friends": [ { "id": 0, "name": "Weeks George" }, { "id": 1, "name": "Hurley Park" }, { "id": 2, "name": "Vaughan Kerr" } ], "greeting": "Hello, Leblanc Mendez! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2676741e5b289b4ac5", "index": 2955, "guid": "fbcc2212-6c78-41f9-8890-95e5f366839b", "isActive": true, "balance": "$3,031.11", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Singleton Roberts", "gender": "male", "company": "SURETECH", "email": "singletonroberts@suretech.com", "phone": "+1 (987) 402-3468", "address": "236 Fleet Place, Downsville, Marshall Islands, 2973", "about": "Labore ex nulla anim adipisicing aute fugiat ea. Ea officia non fugiat aliqua ut occaecat et ea sint do. Cupidatat amet deserunt id incididunt aliqua. Incididunt nostrud excepteur minim ullamco magna consequat dolore incididunt laborum amet elit anim. Lorem do nulla ut veniam esse elit ad dolor ut cupidatat dolor. Esse aute ut do consequat. Ullamco Lorem ea officia mollit cupidatat excepteur irure labore ad occaecat veniam.\r\n", "registered": "2014-02-20T18:31:35-13:00", "latitude": 86.87308, "longitude": -9.75361, "tags": [ "laboris", "qui", "consequat", "excepteur", "culpa", "voluptate", "officia" ], "friends": [ { "id": 0, "name": "Fox Holder" }, { "id": 1, "name": "Nettie Rollins" }, { "id": 2, "name": "Warner Gonzalez" } ], "greeting": "Hello, Singleton Roberts! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea263648f2f15a4aa437", "index": 2956, "guid": "4c79b6bb-1eed-426d-bb49-1ec837677c6f", "isActive": true, "balance": "$1,730.29", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Mcguire Gonzales", "gender": "male", "company": "MAGNEMO", "email": "mcguiregonzales@magnemo.com", "phone": "+1 (991) 526-2903", "address": "763 Canal Avenue, Ventress, New York, 6672", "about": "Labore ullamco sunt nisi nulla ex et proident ad consequat aute commodo tempor reprehenderit. Velit elit et amet quis elit minim occaecat deserunt amet reprehenderit nulla enim. Laboris duis aliqua elit laborum nostrud Lorem aliquip cupidatat aute Lorem reprehenderit. Dolore do adipisicing ad adipisicing laborum. Laborum velit ea excepteur incididunt.\r\n", "registered": "2014-07-01T08:56:23-12:00", "latitude": 81.747098, "longitude": -63.110115, "tags": [ "esse", "enim", "nisi", "Lorem", "deserunt", "ad", "officia" ], "friends": [ { "id": 0, "name": "Valeria Dickson" }, { "id": 1, "name": "White Jordan" }, { "id": 2, "name": "Gillespie Herman" } ], "greeting": "Hello, Mcguire Gonzales! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2637a2a3cf84c57eea", "index": 2957, "guid": "08d75e89-51a5-41f4-ab7d-63cc75b80ac0", "isActive": true, "balance": "$1,057.83", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Mabel Mcmahon", "gender": "female", "company": "PHARMACON", "email": "mabelmcmahon@pharmacon.com", "phone": "+1 (839) 476-2960", "address": "325 Tiffany Place, Lindcove, Guam, 6370", "about": "Mollit nulla esse ea velit fugiat nisi. Commodo est nisi labore nostrud sunt sit enim sit sint qui anim aute culpa veniam. Ut reprehenderit cillum deserunt occaecat consectetur dolor incididunt qui aliqua exercitation amet. Tempor reprehenderit consectetur culpa tempor ullamco exercitation amet voluptate qui mollit consectetur. Mollit aliquip ut ut laboris et nostrud quis non est consequat qui reprehenderit cupidatat proident. Tempor aliquip proident consectetur exercitation quis velit veniam esse duis reprehenderit culpa fugiat.\r\n", "registered": "2014-08-20T23:16:08-12:00", "latitude": 29.604388, "longitude": 146.504656, "tags": [ "tempor", "veniam", "ad", "cupidatat", "nostrud", "cupidatat", "et" ], "friends": [ { "id": 0, "name": "Karla Frost" }, { "id": 1, "name": "Hinton Dale" }, { "id": 2, "name": "Acevedo Taylor" } ], "greeting": "Hello, Mabel Mcmahon! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea265158a588ff5024fb", "index": 2958, "guid": "b41bfaee-ed23-4f5d-95ed-c9aefcadfe89", "isActive": false, "balance": "$2,625.47", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Karyn Kirby", "gender": "female", "company": "VICON", "email": "karynkirby@vicon.com", "phone": "+1 (974) 426-2396", "address": "149 Plaza Street, Gardners, Virgin Islands, 238", "about": "Fugiat ipsum enim amet ipsum aliquip esse. Lorem deserunt eiusmod aute labore aliquip nulla. Enim esse exercitation ex duis commodo ex qui ex. Amet nulla eiusmod nisi in non proident aliquip incididunt sint. Mollit ipsum ad tempor excepteur labore. Sit cillum sint dolor officia occaecat ipsum id labore dolor ut. Aliquip in culpa commodo laborum veniam deserunt consequat culpa sint dolore nostrud incididunt id.\r\n", "registered": "2014-04-09T09:08:01-12:00", "latitude": -63.786272, "longitude": -108.667609, "tags": [ "labore", "cillum", "ea", "aliquip", "commodo", "qui", "reprehenderit" ], "friends": [ { "id": 0, "name": "Stuart Hale" }, { "id": 1, "name": "Angela Ballard" }, { "id": 2, "name": "Joanna Daugherty" } ], "greeting": "Hello, Karyn Kirby! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea261cda3f8f7a40ce80", "index": 2959, "guid": "f6eeb16f-02a1-4c56-9170-0f92c6f9bc4f", "isActive": true, "balance": "$1,171.44", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Everett Cobb", "gender": "male", "company": "EXOSTREAM", "email": "everettcobb@exostream.com", "phone": "+1 (972) 585-3367", "address": "193 Middleton Street, Vallonia, Massachusetts, 575", "about": "In non duis laborum reprehenderit veniam amet ipsum amet. Lorem culpa laborum excepteur pariatur eu tempor incididunt est deserunt adipisicing magna anim nostrud culpa. Ex sunt enim eiusmod minim mollit fugiat culpa veniam cillum consequat sint magna. Tempor commodo eu consectetur esse veniam laborum aliqua voluptate excepteur in. Ipsum voluptate quis ea non nostrud. Nulla velit veniam consequat mollit exercitation ad voluptate ipsum ipsum nisi culpa.\r\n", "registered": "2014-09-07T11:45:15-12:00", "latitude": 29.080753, "longitude": 61.196619, "tags": [ "pariatur", "non", "dolor", "voluptate", "ea", "irure", "occaecat" ], "friends": [ { "id": 0, "name": "Gina Phillips" }, { "id": 1, "name": "Socorro Savage" }, { "id": 2, "name": "Frederick Maynard" } ], "greeting": "Hello, Everett Cobb! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2699503f69e75530eb", "index": 2960, "guid": "d6398bad-d1ae-44fc-8829-40bad04f7226", "isActive": false, "balance": "$3,847.73", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Bush Colon", "gender": "male", "company": "MARVANE", "email": "bushcolon@marvane.com", "phone": "+1 (998) 407-3412", "address": "270 Bay Street, Ada, Utah, 4733", "about": "Tempor ea ut et reprehenderit occaecat non incididunt aute in do consectetur sunt proident veniam. Est nisi commodo enim nulla dolor pariatur et. Est esse mollit anim ea dolore aliquip laboris aliquip. Sint nostrud incididunt elit nulla commodo quis irure elit et velit eu quis anim. Adipisicing magna deserunt aute nisi eiusmod dolore incididunt nostrud amet id.\r\n", "registered": "2014-05-07T16:51:12-12:00", "latitude": -88.440779, "longitude": -98.589843, "tags": [ "consequat", "ea", "deserunt", "occaecat", "laboris", "quis", "dolor" ], "friends": [ { "id": 0, "name": "Young Pickett" }, { "id": 1, "name": "Adeline Foley" }, { "id": 2, "name": "Lola Harding" } ], "greeting": "Hello, Bush Colon! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea269c1c70eaa52bdfde", "index": 2961, "guid": "29fd1668-eb16-478c-8d0d-5c82a76fc5da", "isActive": true, "balance": "$2,825.87", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Wiley Ball", "gender": "male", "company": "PERMADYNE", "email": "wileyball@permadyne.com", "phone": "+1 (956) 439-3780", "address": "761 Ryder Street, Homeland, Montana, 9816", "about": "Pariatur excepteur proident irure mollit officia cillum consectetur do minim do velit veniam eu amet. Laborum dolor officia duis culpa occaecat et incididunt reprehenderit deserunt. Labore sit aute id reprehenderit culpa minim magna officia eiusmod. Dolor voluptate eu eu voluptate tempor mollit magna aliqua exercitation veniam enim nostrud. Id commodo dolore occaecat labore aute ad anim ut.\r\n", "registered": "2014-06-01T11:41:04-12:00", "latitude": 15.355303, "longitude": -77.63117, "tags": [ "aliqua", "sit", "sint", "quis", "consectetur", "ex", "aliquip" ], "friends": [ { "id": 0, "name": "Perry Walker" }, { "id": 1, "name": "Yates Ferguson" }, { "id": 2, "name": "Marion Townsend" } ], "greeting": "Hello, Wiley Ball! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26af733b3fcd7da192", "index": 2962, "guid": "dc2fc19f-b733-4b17-9f99-a07d16bf6879", "isActive": true, "balance": "$1,188.17", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Edith Knight", "gender": "female", "company": "THREDZ", "email": "edithknight@thredz.com", "phone": "+1 (861) 566-2869", "address": "160 Oceanic Avenue, Herald, Wisconsin, 5378", "about": "Culpa et proident eiusmod ullamco in sit reprehenderit pariatur duis. Occaecat duis exercitation nulla anim cillum labore ea. Labore fugiat in ad deserunt aute amet aliquip. Laborum occaecat laboris ullamco enim laboris sit do ad. Dolor labore eiusmod culpa aliquip aliqua cupidatat aliqua voluptate dolor aliquip. Amet sunt velit proident cillum sit duis labore velit officia ut. Ullamco nulla in occaecat adipisicing ad dolore sint tempor ipsum aute ad officia do.\r\n", "registered": "2014-05-15T09:48:50-12:00", "latitude": 86.32875, "longitude": -52.703272, "tags": [ "exercitation", "ad", "Lorem", "qui", "eiusmod", "amet", "occaecat" ], "friends": [ { "id": 0, "name": "Bartlett Reynolds" }, { "id": 1, "name": "Berger Dunn" }, { "id": 2, "name": "Lily Graham" } ], "greeting": "Hello, Edith Knight! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2692c43219f0a6fb19", "index": 2963, "guid": "8e545b25-b678-4a57-a94c-1eb895fb7a50", "isActive": true, "balance": "$2,962.66", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Jean Vincent", "gender": "female", "company": "BLUPLANET", "email": "jeanvincent@bluplanet.com", "phone": "+1 (944) 460-3140", "address": "135 Mermaid Avenue, Lowell, Maine, 9672", "about": "Ut ut enim eu dolore enim. Veniam laborum non amet sit velit officia. Mollit aliqua voluptate minim consequat occaecat laborum officia.\r\n", "registered": "2014-06-18T16:30:42-12:00", "latitude": 15.401192, "longitude": -164.72912, "tags": [ "ad", "magna", "aliquip", "Lorem", "labore", "consequat", "dolor" ], "friends": [ { "id": 0, "name": "Dunn Ellison" }, { "id": 1, "name": "Beach Armstrong" }, { "id": 2, "name": "Nielsen Reid" } ], "greeting": "Hello, Jean Vincent! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26a31c6347e7315307", "index": 2964, "guid": "7a6a8fee-bcfb-47bc-a5a7-cf41a2974104", "isActive": false, "balance": "$2,640.14", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Glover Sears", "gender": "male", "company": "SLAX", "email": "gloversears@slax.com", "phone": "+1 (817) 596-2080", "address": "266 Dearborn Court, Thynedale, Virginia, 4582", "about": "Occaecat quis laboris fugiat aliqua est laboris incididunt do Lorem quis esse labore cupidatat eiusmod. Magna non aute amet irure deserunt sint sint exercitation irure laboris eu irure ad. Aliqua ex et est occaecat excepteur id sit deserunt. Velit non ea quis magna dolore nulla in magna aliqua minim nostrud in. Aliqua qui mollit enim Lorem nostrud tempor nisi. Eu ipsum non officia duis.\r\n", "registered": "2014-05-18T10:05:24-12:00", "latitude": 68.614097, "longitude": 159.446372, "tags": [ "sit", "do", "sit", "occaecat", "enim", "amet", "occaecat" ], "friends": [ { "id": 0, "name": "Genevieve Anthony" }, { "id": 1, "name": "Magdalena Myers" }, { "id": 2, "name": "Camacho Raymond" } ], "greeting": "Hello, Glover Sears! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea260cf684943409ffa9", "index": 2965, "guid": "f0b925e9-0661-45bf-8ce1-783bec7d166e", "isActive": false, "balance": "$2,547.63", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Pennington Golden", "gender": "male", "company": "CRUSTATIA", "email": "penningtongolden@crustatia.com", "phone": "+1 (862) 569-3435", "address": "623 Bijou Avenue, Harrodsburg, Kentucky, 1852", "about": "Nisi velit aliqua labore adipisicing exercitation eu do culpa ullamco. Est veniam occaecat exercitation commodo ipsum minim sint occaecat consequat elit culpa. Laborum culpa magna consectetur mollit et exercitation.\r\n", "registered": "2014-08-26T02:48:00-12:00", "latitude": 48.059517, "longitude": -61.26131, "tags": [ "voluptate", "et", "ipsum", "qui", "sunt", "pariatur", "aliqua" ], "friends": [ { "id": 0, "name": "Owens Roy" }, { "id": 1, "name": "Knox Clemons" }, { "id": 2, "name": "Herring England" } ], "greeting": "Hello, Pennington Golden! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26245a767391441ab1", "index": 2966, "guid": "c6637067-d4c9-4963-8d02-5ecaa3aab2a3", "isActive": true, "balance": "$3,632.80", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Justice Reyes", "gender": "male", "company": "LUDAK", "email": "justicereyes@ludak.com", "phone": "+1 (985) 546-2630", "address": "734 Prospect Street, Cecilia, Connecticut, 3436", "about": "Magna veniam cupidatat et quis ex amet et laborum. Exercitation veniam laboris ut est do cillum nostrud dolor et. Cupidatat irure aliquip esse ipsum deserunt do aliquip incididunt eiusmod ullamco adipisicing aliquip dolore. Labore officia ex ut ipsum consequat elit pariatur labore culpa Lorem pariatur anim. Aliqua Lorem culpa qui aliqua enim id. Consequat do veniam proident aliqua fugiat nostrud do minim voluptate pariatur et dolor enim. Anim id excepteur quis ad culpa consequat duis cupidatat velit nulla deserunt culpa ad.\r\n", "registered": "2014-02-03T03:21:24-13:00", "latitude": -70.752991, "longitude": 91.266926, "tags": [ "tempor", "laborum", "nostrud", "id", "non", "sunt", "duis" ], "friends": [ { "id": 0, "name": "Rachael Shields" }, { "id": 1, "name": "House Tillman" }, { "id": 2, "name": "Alvarado Valentine" } ], "greeting": "Hello, Justice Reyes! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26bac67be0c377ba41", "index": 2967, "guid": "77a07d04-c8a8-492f-8da7-a613c2631298", "isActive": false, "balance": "$2,164.96", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Dorthy Edwards", "gender": "female", "company": "AQUAZURE", "email": "dorthyedwards@aquazure.com", "phone": "+1 (907) 449-2514", "address": "767 Ross Street, Clarktown, Mississippi, 9305", "about": "Mollit labore reprehenderit ullamco officia excepteur. Excepteur consectetur occaecat qui do sit aliqua. Reprehenderit do veniam non consectetur ad. Ullamco aliquip reprehenderit ipsum tempor ad commodo cupidatat. Duis quis deserunt id labore Lorem tempor ipsum sunt est ea enim fugiat. Laborum Lorem duis elit labore ea ex occaecat deserunt ex commodo consequat.\r\n", "registered": "2014-06-27T05:31:02-12:00", "latitude": 71.426552, "longitude": 0.115266, "tags": [ "elit", "nisi", "sint", "amet", "nisi", "ea", "labore" ], "friends": [ { "id": 0, "name": "Ingram Shelton" }, { "id": 1, "name": "Duke Soto" }, { "id": 2, "name": "Harrison Mccall" } ], "greeting": "Hello, Dorthy Edwards! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26a7f1bd994c1b2181", "index": 2968, "guid": "ccb13ba7-cd57-478e-94ef-8cf0561ec47d", "isActive": false, "balance": "$1,833.33", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Wong Strong", "gender": "male", "company": "UNIWORLD", "email": "wongstrong@uniworld.com", "phone": "+1 (879) 450-3065", "address": "665 Cyrus Avenue, Cassel, Washington, 7234", "about": "Anim excepteur dolor aute mollit laborum proident do irure aliqua sit. Do nostrud proident sint nisi ipsum excepteur eu fugiat. Enim sint velit labore irure officia. Anim laboris sunt labore velit minim mollit in consectetur exercitation qui duis.\r\n", "registered": "2014-04-30T07:19:34-12:00", "latitude": -72.782859, "longitude": 105.540052, "tags": [ "ea", "occaecat", "ut", "commodo", "nulla", "incididunt", "aliqua" ], "friends": [ { "id": 0, "name": "Sonja Brown" }, { "id": 1, "name": "Gibbs Gregory" }, { "id": 2, "name": "Bradford Mccoy" } ], "greeting": "Hello, Wong Strong! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2688a48f1afe77f471", "index": 2969, "guid": "e20d9955-dff2-49da-8eb4-ae41af8c8d71", "isActive": false, "balance": "$1,180.01", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Penny Mcconnell", "gender": "female", "company": "CONCILITY", "email": "pennymcconnell@concility.com", "phone": "+1 (815) 441-3779", "address": "583 Remsen Street, Belva, Tennessee, 4590", "about": "Velit fugiat ex adipisicing labore Lorem exercitation excepteur pariatur. Quis nostrud aliqua id amet qui ad labore ullamco id tempor proident incididunt. Dolor id sit eu ea consectetur anim ut non aliqua cillum velit esse eiusmod commodo. Reprehenderit voluptate nulla ad aute eu laboris nulla excepteur. Deserunt culpa ipsum duis sunt ad mollit tempor pariatur. Aute eu elit officia cupidatat.\r\n", "registered": "2014-03-22T23:10:13-13:00", "latitude": -9.154141, "longitude": -84.574291, "tags": [ "labore", "irure", "qui", "sint", "incididunt", "id", "ullamco" ], "friends": [ { "id": 0, "name": "Eve Collier" }, { "id": 1, "name": "Kathryn Baxter" }, { "id": 2, "name": "Maureen Blake" } ], "greeting": "Hello, Penny Mcconnell! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2620834e719dc26cbb", "index": 2970, "guid": "828a3cc2-7d44-4830-aaed-002fef27ef03", "isActive": false, "balance": "$3,430.54", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Irene Lancaster", "gender": "female", "company": "ZISIS", "email": "irenelancaster@zisis.com", "phone": "+1 (972) 503-3440", "address": "943 Doone Court, Trail, Alabama, 3087", "about": "Excepteur exercitation ullamco nisi nulla commodo. Et nisi ad esse labore cillum. Dolor anim et dolor commodo irure fugiat voluptate magna Lorem eu. Sint culpa ullamco et ea mollit adipisicing ipsum cillum amet tempor. Enim excepteur velit nisi sit exercitation magna sint non labore ad velit anim consectetur duis. Non Lorem nulla proident irure.\r\n", "registered": "2014-06-25T03:21:55-12:00", "latitude": -65.863862, "longitude": -104.749068, "tags": [ "minim", "esse", "minim", "laboris", "nulla", "laboris", "excepteur" ], "friends": [ { "id": 0, "name": "Keri Donovan" }, { "id": 1, "name": "Henderson Jenkins" }, { "id": 2, "name": "Clare Pate" } ], "greeting": "Hello, Irene Lancaster! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26cc700569ca1c671a", "index": 2971, "guid": "b0ba9347-c9c7-44e3-a8ea-bf0fac298a9e", "isActive": false, "balance": "$3,775.97", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Theresa Velez", "gender": "female", "company": "STOCKPOST", "email": "theresavelez@stockpost.com", "phone": "+1 (904) 573-2743", "address": "805 Montrose Avenue, Caln, Ohio, 1011", "about": "Aliquip aliqua adipisicing laboris incididunt proident nisi incididunt mollit cillum in velit occaecat. Officia dolore et nulla quis. Nulla irure laborum ad velit labore eu cupidatat aute aliquip voluptate officia non fugiat duis. Id et officia adipisicing dolore velit ullamco velit Lorem fugiat sint Lorem commodo minim cillum. Eiusmod labore voluptate proident nostrud Lorem quis in qui esse nulla sint dolor. Non id occaecat dolor dolor. Esse pariatur occaecat laboris quis elit anim Lorem ullamco irure tempor.\r\n", "registered": "2014-02-03T23:53:22-13:00", "latitude": -55.585793, "longitude": -28.895702, "tags": [ "minim", "officia", "voluptate", "duis", "irure", "aliquip", "eiusmod" ], "friends": [ { "id": 0, "name": "Jacklyn Higgins" }, { "id": 1, "name": "Weber Berry" }, { "id": 2, "name": "Yvonne Peterson" } ], "greeting": "Hello, Theresa Velez! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2676551206bf179796", "index": 2972, "guid": "9ddbeb0f-9674-4e5d-b64b-e49abb655c3b", "isActive": true, "balance": "$3,882.91", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Salazar Solomon", "gender": "male", "company": "XTH", "email": "salazarsolomon@xth.com", "phone": "+1 (850) 495-2249", "address": "107 Lloyd Court, Mammoth, Hawaii, 515", "about": "Id dolor voluptate do commodo duis labore esse excepteur eu. Id dolore officia non laboris aute sint enim cillum qui deserunt elit nisi. Voluptate pariatur nulla tempor aliqua dolore.\r\n", "registered": "2014-03-30T14:36:29-13:00", "latitude": -81.324567, "longitude": 42.741083, "tags": [ "officia", "fugiat", "veniam", "est", "nostrud", "duis", "magna" ], "friends": [ { "id": 0, "name": "Arnold Nixon" }, { "id": 1, "name": "Velma Fulton" }, { "id": 2, "name": "Ford Roberson" } ], "greeting": "Hello, Salazar Solomon! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2632d92e549b07a9ee", "index": 2973, "guid": "5ed0ef68-0222-4d2f-83d4-60fff10cf72f", "isActive": false, "balance": "$1,288.75", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Hilary Stuart", "gender": "female", "company": "BUNGA", "email": "hilarystuart@bunga.com", "phone": "+1 (874) 440-2139", "address": "353 Bedford Place, Strong, New Mexico, 794", "about": "Labore ut deserunt consequat cupidatat dolore sunt reprehenderit occaecat ipsum culpa. Veniam aute reprehenderit aliqua consectetur. Ex sint culpa adipisicing exercitation dolor non sit minim ad deserunt cillum. Adipisicing nisi dolor aliqua incididunt labore aliqua. Amet magna culpa aliqua quis cupidatat aliquip fugiat reprehenderit nostrud. Id enim occaecat ipsum cillum ipsum ex minim aute cupidatat id. Sit velit adipisicing et fugiat Lorem amet anim ad ad dolor velit cupidatat qui ad.\r\n", "registered": "2014-05-14T20:35:11-12:00", "latitude": 89.609909, "longitude": -83.268716, "tags": [ "anim", "nulla", "labore", "anim", "anim", "nisi", "dolore" ], "friends": [ { "id": 0, "name": "Suzanne Chambers" }, { "id": 1, "name": "Brandi Ellis" }, { "id": 2, "name": "Letha Lambert" } ], "greeting": "Hello, Hilary Stuart! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26d662a546ff0beaf7", "index": 2974, "guid": "4c6a708b-1783-4e34-9f1c-cb4b4db4d605", "isActive": true, "balance": "$2,753.32", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Sasha Guerra", "gender": "female", "company": "XERONK", "email": "sashaguerra@xeronk.com", "phone": "+1 (836) 572-2578", "address": "938 Goodwin Place, Roberts, Maryland, 7592", "about": "Reprehenderit commodo nostrud ea tempor Lorem officia est cupidatat eiusmod commodo laborum nisi. Esse nulla commodo cillum ea sunt. Proident labore fugiat irure tempor. Sint officia ex Lorem id reprehenderit consectetur sit labore nulla non aliqua commodo ea.\r\n", "registered": "2014-05-12T05:45:37-12:00", "latitude": 81.969959, "longitude": 128.457285, "tags": [ "pariatur", "deserunt", "consequat", "id", "cillum", "mollit", "esse" ], "friends": [ { "id": 0, "name": "Roberson Stevens" }, { "id": 1, "name": "Alba Hunt" }, { "id": 2, "name": "Maura Guzman" } ], "greeting": "Hello, Sasha Guerra! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26c18999cc62594ff2", "index": 2975, "guid": "cea5960c-df58-4414-8403-eb252ab21000", "isActive": true, "balance": "$1,809.81", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Bradley Hickman", "gender": "male", "company": "ACLIMA", "email": "bradleyhickman@aclima.com", "phone": "+1 (847) 569-3745", "address": "237 Mill Lane, Independence, Alaska, 8585", "about": "Nostrud amet non velit officia fugiat occaecat. Culpa culpa adipisicing quis ea. Voluptate ad pariatur voluptate Lorem ea sint ad eu proident commodo do magna quis.\r\n", "registered": "2014-01-19T11:57:10-13:00", "latitude": -48.947046, "longitude": -64.543645, "tags": [ "est", "ex", "culpa", "cupidatat", "consequat", "ipsum", "velit" ], "friends": [ { "id": 0, "name": "Francisca Cooley" }, { "id": 1, "name": "Livingston Ortiz" }, { "id": 2, "name": "Julie French" } ], "greeting": "Hello, Bradley Hickman! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea261faabb10310b934e", "index": 2976, "guid": "fd81b471-227a-42b2-b0dc-8d262ff1b880", "isActive": false, "balance": "$3,332.90", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Coffey Carver", "gender": "male", "company": "AMTAS", "email": "coffeycarver@amtas.com", "phone": "+1 (945) 471-3853", "address": "484 Madison Street, Cliff, Arizona, 6275", "about": "Eiusmod culpa ex ut cupidatat aute. Veniam amet veniam aliquip minim eu est Lorem excepteur elit deserunt tempor minim. Sint culpa irure et occaecat minim voluptate voluptate aliquip et ad commodo dolor aliqua nisi.\r\n", "registered": "2014-03-12T18:27:28-13:00", "latitude": -28.674893, "longitude": -45.205368, "tags": [ "sit", "cillum", "magna", "non", "sunt", "mollit", "aliquip" ], "friends": [ { "id": 0, "name": "Alisa Hughes" }, { "id": 1, "name": "Ewing Acosta" }, { "id": 2, "name": "Bridges Christian" } ], "greeting": "Hello, Coffey Carver! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26cce5f31cc4b42e0e", "index": 2977, "guid": "ff54941e-78f5-4ee0-be60-95cbed92938b", "isActive": false, "balance": "$3,548.24", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Finch Powers", "gender": "male", "company": "EXTRAWEAR", "email": "finchpowers@extrawear.com", "phone": "+1 (883) 507-3631", "address": "382 King Street, Ballico, Federated States Of Micronesia, 669", "about": "Magna elit pariatur elit commodo consectetur fugiat ex est quis aute cillum qui. Reprehenderit commodo ea voluptate tempor dolor sit officia consectetur dolor commodo dolor commodo. Eu consequat veniam sit cupidatat esse veniam.\r\n", "registered": "2014-07-30T19:42:35-12:00", "latitude": -7.290903, "longitude": -20.17371, "tags": [ "in", "nisi", "voluptate", "fugiat", "amet", "eiusmod", "in" ], "friends": [ { "id": 0, "name": "Espinoza Oliver" }, { "id": 1, "name": "Rosella Douglas" }, { "id": 2, "name": "Rosanna Brewer" } ], "greeting": "Hello, Finch Powers! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26579585688b76bc3f", "index": 2978, "guid": "7feee081-d7f4-4300-b618-ce4df3d9b6a0", "isActive": true, "balance": "$1,729.45", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Luella Walsh", "gender": "female", "company": "ARCHITAX", "email": "luellawalsh@architax.com", "phone": "+1 (907) 487-3899", "address": "613 Rochester Avenue, Wyano, Oklahoma, 3794", "about": "Occaecat dolor adipisicing ea officia aliqua commodo. Magna quis est aliquip exercitation dolore mollit aliqua labore reprehenderit magna nulla cupidatat. Aliqua adipisicing anim ex exercitation reprehenderit reprehenderit cupidatat anim laboris excepteur laboris pariatur eiusmod dolor. Deserunt dolor eiusmod in exercitation. Non ut eu fugiat occaecat magna. Laborum incididunt sint excepteur ullamco cillum dolor.\r\n", "registered": "2014-08-30T19:14:54-12:00", "latitude": 44.459978, "longitude": -152.82447, "tags": [ "irure", "voluptate", "ad", "exercitation", "proident", "proident", "minim" ], "friends": [ { "id": 0, "name": "Velasquez Herring" }, { "id": 1, "name": "Jamie Chaney" }, { "id": 2, "name": "Mollie Hunter" } ], "greeting": "Hello, Luella Walsh! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2682719d902568ba91", "index": 2979, "guid": "3d4eb9a8-b0bb-41cd-90dd-6b5957036eac", "isActive": false, "balance": "$2,265.46", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Audrey Cantrell", "gender": "female", "company": "KIDSTOCK", "email": "audreycantrell@kidstock.com", "phone": "+1 (847) 497-2949", "address": "333 Ashford Street, Hoehne, Michigan, 1277", "about": "Laboris veniam sint incididunt minim. Qui incididunt labore nostrud velit ea. Pariatur excepteur sint eiusmod occaecat cupidatat elit incididunt ut laboris excepteur proident aliquip enim eiusmod. Non do quis non cupidatat officia labore enim officia do fugiat. Pariatur eiusmod sint non ut dolore commodo in ex excepteur adipisicing voluptate. Est sit aliquip aliqua nulla aute in commodo consequat cillum tempor proident.\r\n", "registered": "2014-01-10T20:49:50-13:00", "latitude": 68.741204, "longitude": 48.568501, "tags": [ "quis", "culpa", "laborum", "nisi", "magna", "labore", "commodo" ], "friends": [ { "id": 0, "name": "Chang Monroe" }, { "id": 1, "name": "Carney Harper" }, { "id": 2, "name": "Glenn Stout" } ], "greeting": "Hello, Audrey Cantrell! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26a0b15b1b957c9a21", "index": 2980, "guid": "54737d77-086f-48d4-bb79-9aa06838d4f8", "isActive": false, "balance": "$1,495.00", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Dolores Glenn", "gender": "female", "company": "NIPAZ", "email": "doloresglenn@nipaz.com", "phone": "+1 (995) 428-3997", "address": "639 Bleecker Street, Finzel, Kansas, 943", "about": "Est qui excepteur minim sint laborum reprehenderit ea labore anim. Incididunt aliqua proident sunt in aliqua aute qui. Consectetur officia excepteur velit pariatur cupidatat nulla mollit et minim excepteur nisi in non eiusmod. Eiusmod quis enim amet sint adipisicing. Aute non excepteur aute consequat in ad proident. Aliqua velit enim reprehenderit ad sunt. Do cupidatat eu elit ea officia voluptate voluptate dolor.\r\n", "registered": "2014-07-18T09:39:44-12:00", "latitude": 79.460644, "longitude": -150.370175, "tags": [ "velit", "laboris", "irure", "velit", "dolor", "ullamco", "adipisicing" ], "friends": [ { "id": 0, "name": "Cardenas Goff" }, { "id": 1, "name": "Fernandez Cannon" }, { "id": 2, "name": "Kristie Buchanan" } ], "greeting": "Hello, Dolores Glenn! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26035015ce383148c1", "index": 2981, "guid": "99459e60-00af-49c8-8aea-bfcce208caf3", "isActive": true, "balance": "$2,983.07", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Robles Trujillo", "gender": "male", "company": "ZENTIX", "email": "roblestrujillo@zentix.com", "phone": "+1 (982) 442-3817", "address": "247 Seba Avenue, Noblestown, South Dakota, 4331", "about": "Nostrud cupidatat et id eu do sit ex magna est nulla. Reprehenderit deserunt enim culpa anim elit aliqua ea amet exercitation anim cupidatat culpa culpa. Proident laborum qui adipisicing Lorem et aute in id est amet ex minim magna. Velit magna tempor nulla cupidatat incididunt officia cillum do Lorem velit in proident voluptate. Cupidatat adipisicing consectetur laborum quis est exercitation in id.\r\n", "registered": "2014-01-21T07:46:12-13:00", "latitude": 68.312458, "longitude": -126.229265, "tags": [ "est", "irure", "sint", "incididunt", "eiusmod", "quis", "labore" ], "friends": [ { "id": 0, "name": "Nash Pittman" }, { "id": 1, "name": "Mann Crane" }, { "id": 2, "name": "Karen Pruitt" } ], "greeting": "Hello, Robles Trujillo! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea269bd85fd088e671d2", "index": 2982, "guid": "2aa9afac-fc3c-4bc9-a4e2-23493459705f", "isActive": true, "balance": "$2,034.16", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Donaldson Holmes", "gender": "male", "company": "VOLAX", "email": "donaldsonholmes@volax.com", "phone": "+1 (977) 547-2024", "address": "735 Kensington Street, Warsaw, West Virginia, 4009", "about": "Esse anim fugiat dolore eu ea eu veniam culpa non laboris. Est cillum officia mollit eu. Amet fugiat ut esse elit elit incididunt do laboris amet commodo velit pariatur reprehenderit excepteur. Laboris incididunt cillum mollit aliqua ut. Commodo ut ea amet exercitation ad ex enim aliquip sit eu labore proident esse tempor.\r\n", "registered": "2014-01-22T06:26:14-13:00", "latitude": 83.692221, "longitude": 23.013753, "tags": [ "officia", "commodo", "nostrud", "ut", "deserunt", "est", "laboris" ], "friends": [ { "id": 0, "name": "Mckay Bryant" }, { "id": 1, "name": "Rosemarie Cummings" }, { "id": 2, "name": "Sexton Gilmore" } ], "greeting": "Hello, Donaldson Holmes! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea267a9d2cae23dde9a7", "index": 2983, "guid": "f09812d0-a0ad-4317-8537-02bf84254021", "isActive": false, "balance": "$1,798.66", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Ramos Powell", "gender": "male", "company": "INSURETY", "email": "ramospowell@insurety.com", "phone": "+1 (941) 493-2300", "address": "824 Channel Avenue, Deputy, Texas, 100", "about": "Proident tempor incididunt laborum proident irure sit qui culpa laborum non et aute. Mollit est nostrud ullamco aute quis irure veniam. Eiusmod enim Lorem et ad dolor elit proident.\r\n", "registered": "2014-04-20T07:37:31-12:00", "latitude": -50.837448, "longitude": 30.695086, "tags": [ "enim", "sunt", "Lorem", "veniam", "officia", "non", "elit" ], "friends": [ { "id": 0, "name": "Lesley Silva" }, { "id": 1, "name": "Buckley Wong" }, { "id": 2, "name": "Sharpe Hood" } ], "greeting": "Hello, Ramos Powell! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2675d316af7e6f90ce", "index": 2984, "guid": "2b6d1f3c-35b5-47e8-9704-5f547fef6c74", "isActive": true, "balance": "$2,357.60", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Hines Herrera", "gender": "male", "company": "SQUISH", "email": "hinesherrera@squish.com", "phone": "+1 (847) 427-3598", "address": "536 Visitation Place, Soham, Oregon, 8418", "about": "Reprehenderit magna et eu nostrud veniam dolor velit qui occaecat est esse eu. Elit dolore culpa et id adipisicing et nostrud consectetur. Amet tempor est Lorem veniam duis elit ad. Reprehenderit est labore do dolor nisi. Pariatur minim voluptate deserunt labore laboris non deserunt aute excepteur magna consectetur sint id. In nisi do anim ipsum est. Anim proident nisi qui dolor ad in ipsum ipsum culpa ullamco veniam adipisicing labore amet.\r\n", "registered": "2014-07-13T06:48:25-12:00", "latitude": -87.37052, "longitude": -166.565319, "tags": [ "nulla", "ut", "aute", "sint", "dolore", "ex", "sit" ], "friends": [ { "id": 0, "name": "Butler Hanson" }, { "id": 1, "name": "Gabrielle Hammond" }, { "id": 2, "name": "Garrett Burnett" } ], "greeting": "Hello, Hines Herrera! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea261497c4db1975eb3f", "index": 2985, "guid": "f6056738-579d-4fac-bdb5-343d61ebb5f1", "isActive": true, "balance": "$1,730.55", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Meagan Barr", "gender": "female", "company": "IRACK", "email": "meaganbarr@irack.com", "phone": "+1 (834) 553-2389", "address": "649 Williams Avenue, Richmond, Nevada, 6368", "about": "Proident occaecat consectetur ex culpa minim cupidatat laborum nulla irure voluptate minim mollit sit consequat. Cillum excepteur labore commodo pariatur quis culpa eu ullamco deserunt quis aliqua labore eu. Labore qui culpa esse minim elit velit duis officia qui. Aute dolore cupidatat dolore quis aute laboris aute aliquip in amet nisi aute aute.\r\n", "registered": "2014-09-18T15:48:26-12:00", "latitude": 53.136432, "longitude": 143.941354, "tags": [ "occaecat", "dolor", "nostrud", "velit", "ex", "dolore", "culpa" ], "friends": [ { "id": 0, "name": "Beasley Bradley" }, { "id": 1, "name": "Shepherd Howard" }, { "id": 2, "name": "Deanne Webster" } ], "greeting": "Hello, Meagan Barr! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea269c8bf1799b1cec3f", "index": 2986, "guid": "577a5956-3dba-4548-b16a-b2e0bd628175", "isActive": false, "balance": "$2,047.27", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Carson Weber", "gender": "male", "company": "GENMEX", "email": "carsonweber@genmex.com", "phone": "+1 (991) 563-2202", "address": "196 Harbor Court, Cherokee, Minnesota, 9301", "about": "Id aute pariatur dolor cillum eiusmod consectetur veniam ut magna aute nostrud. Ex deserunt do non id ea sint. Officia Lorem minim est eu officia proident dolore. Proident exercitation velit laboris non anim et exercitation.\r\n", "registered": "2014-02-03T13:56:28-13:00", "latitude": 22.832251, "longitude": -137.125051, "tags": [ "et", "quis", "labore", "est", "quis", "excepteur", "enim" ], "friends": [ { "id": 0, "name": "Peck Faulkner" }, { "id": 1, "name": "Pam Richardson" }, { "id": 2, "name": "Manning Hess" } ], "greeting": "Hello, Carson Weber! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea262a6910b1b3bc9ec2", "index": 2987, "guid": "2478e5bc-26fb-4663-9bb3-574028ed0abf", "isActive": false, "balance": "$1,842.02", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Mari Olson", "gender": "female", "company": "STEELTAB", "email": "mariolson@steeltab.com", "phone": "+1 (899) 541-3946", "address": "797 Hanson Place, Linwood, Missouri, 5755", "about": "Magna aliquip nulla amet cillum. Ea cillum laboris reprehenderit aliquip consequat proident enim minim aute aliquip id quis consequat. Ad culpa aliquip pariatur laboris eu occaecat voluptate veniam eiusmod id dolor duis tempor.\r\n", "registered": "2014-03-21T09:30:43-13:00", "latitude": 43.130711, "longitude": 163.53951, "tags": [ "labore", "esse", "enim", "ex", "dolor", "consequat", "aliqua" ], "friends": [ { "id": 0, "name": "Pruitt Ferrell" }, { "id": 1, "name": "Workman Blevins" }, { "id": 2, "name": "Carmella Andrews" } ], "greeting": "Hello, Mari Olson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2649d26d7cec1c79c6", "index": 2988, "guid": "1c354899-75c7-4565-8667-28b8afe2f1c3", "isActive": true, "balance": "$1,711.41", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Bauer Campos", "gender": "male", "company": "BLURRYBUS", "email": "bauercampos@blurrybus.com", "phone": "+1 (885) 412-2519", "address": "371 Tabor Court, Kieler, Rhode Island, 3115", "about": "Pariatur reprehenderit enim minim cupidatat fugiat irure magna occaecat aliqua aute laborum quis. Esse eu consectetur pariatur do ut anim laborum quis pariatur. Cupidatat qui irure fugiat eu mollit cupidatat ea sit aliqua. Quis velit non mollit laborum mollit. Cupidatat minim veniam proident quis elit nostrud mollit esse. Ullamco culpa dolor excepteur velit excepteur voluptate occaecat non. Exercitation ullamco elit ad nulla excepteur ut est minim.\r\n", "registered": "2014-07-11T12:09:36-12:00", "latitude": 49.002686, "longitude": -108.951293, "tags": [ "incididunt", "ea", "ad", "officia", "dolor", "amet", "Lorem" ], "friends": [ { "id": 0, "name": "Bryan Dean" }, { "id": 1, "name": "Burns Cotton" }, { "id": 2, "name": "Hurst Winters" } ], "greeting": "Hello, Bauer Campos! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea269a7c6e75f07b509a", "index": 2989, "guid": "4c1ed4f7-92e5-456d-a5df-4074cfe2641b", "isActive": true, "balance": "$3,488.59", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Blanchard Payne", "gender": "male", "company": "PIVITOL", "email": "blanchardpayne@pivitol.com", "phone": "+1 (936) 428-2023", "address": "302 Amboy Street, Bellfountain, Florida, 4116", "about": "Et sint minim ut ipsum tempor. Nostrud dolore ea esse est adipisicing ad sunt aliqua voluptate labore minim consectetur dolor. Deserunt proident dolor ullamco aliquip velit enim labore in consectetur. Culpa reprehenderit anim officia duis eu officia nostrud quis minim et anim labore ex eu.\r\n", "registered": "2014-06-19T12:05:02-12:00", "latitude": 4.982444, "longitude": -12.816677, "tags": [ "sit", "qui", "dolor", "exercitation", "anim", "in", "pariatur" ], "friends": [ { "id": 0, "name": "Cash Puckett" }, { "id": 1, "name": "Marie Finley" }, { "id": 2, "name": "Gallagher Conrad" } ], "greeting": "Hello, Blanchard Payne! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2652ad6c4082a9503c", "index": 2990, "guid": "b0dcfc40-3d52-4f93-8c2e-74b8440eb866", "isActive": true, "balance": "$2,168.91", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Rich Allison", "gender": "male", "company": "PROFLEX", "email": "richallison@proflex.com", "phone": "+1 (967) 455-3454", "address": "423 Ruby Street, National, North Carolina, 9369", "about": "Enim dolor dolor nostrud exercitation anim occaecat laborum laborum. Proident sit velit consequat esse. Elit anim nulla veniam cillum dolor eiusmod duis magna eiusmod laborum Lorem labore. Ea enim duis ullamco anim ea consequat sit mollit non pariatur laboris adipisicing.\r\n", "registered": "2014-02-10T21:12:46-13:00", "latitude": 30.166982, "longitude": 131.499378, "tags": [ "consequat", "deserunt", "ut", "dolore", "qui", "irure", "enim" ], "friends": [ { "id": 0, "name": "Joyce Dennis" }, { "id": 1, "name": "Marsha Bright" }, { "id": 2, "name": "Wade Freeman" } ], "greeting": "Hello, Rich Allison! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26bc5077d004ecf84a", "index": 2991, "guid": "2d0e0484-54e1-4210-9a07-812b375d11b3", "isActive": false, "balance": "$3,620.77", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Odessa Vargas", "gender": "female", "company": "GRONK", "email": "odessavargas@gronk.com", "phone": "+1 (934) 545-3681", "address": "215 Bancroft Place, Neibert, New Hampshire, 4566", "about": "Incididunt eu commodo ea minim reprehenderit fugiat eu proident. Amet dolore occaecat adipisicing in ad tempor labore irure cupidatat id cillum exercitation magna. Esse enim nostrud culpa est sit et in velit ex consectetur adipisicing occaecat veniam magna. Tempor tempor sint occaecat pariatur aute commodo do do dolore proident qui laborum cillum.\r\n", "registered": "2014-09-15T20:30:29-12:00", "latitude": 64.10847, "longitude": 107.343825, "tags": [ "do", "ipsum", "occaecat", "nulla", "culpa", "in", "labore" ], "friends": [ { "id": 0, "name": "Marylou Fuentes" }, { "id": 1, "name": "Jannie Giles" }, { "id": 2, "name": "Mendez Singleton" } ], "greeting": "Hello, Odessa Vargas! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26390fc60c71dea1a0", "index": 2992, "guid": "004be306-5dcb-4f1b-839b-99c771d60b1c", "isActive": false, "balance": "$3,883.82", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Saundra Farmer", "gender": "female", "company": "VISALIA", "email": "saundrafarmer@visalia.com", "phone": "+1 (842) 498-2634", "address": "289 Opal Court, Canby, Arkansas, 7158", "about": "Eiusmod eiusmod labore veniam laborum ullamco. Veniam velit ullamco magna consequat in id id anim laboris. Consectetur ut in pariatur enim occaecat anim non. Qui officia cillum reprehenderit consectetur nisi occaecat sint qui cupidatat aliquip laboris non nulla laboris. Aliqua dolor anim est esse labore. Deserunt ex et nulla voluptate incididunt adipisicing laboris duis et ut occaecat.\r\n", "registered": "2014-03-08T01:04:50-13:00", "latitude": -45.209013, "longitude": 125.954785, "tags": [ "nostrud", "sint", "in", "consequat", "exercitation", "deserunt", "nostrud" ], "friends": [ { "id": 0, "name": "Contreras Lewis" }, { "id": 1, "name": "Puckett Castaneda" }, { "id": 2, "name": "Mccall Burgess" } ], "greeting": "Hello, Saundra Farmer! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea267d17ff3aa8aeda88", "index": 2993, "guid": "1c1f69b3-f828-4dc8-9152-590d4c3eb1d9", "isActive": false, "balance": "$1,269.82", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Stafford Brooks", "gender": "male", "company": "DENTREX", "email": "staffordbrooks@dentrex.com", "phone": "+1 (847) 594-2174", "address": "980 Holt Court, Norfolk, Iowa, 9130", "about": "Laboris incididunt eiusmod culpa nulla elit officia est fugiat. Esse cupidatat cillum enim Lorem dolor enim est ad labore occaecat veniam enim. Deserunt incididunt anim est proident sit velit mollit velit proident Lorem aliqua mollit cillum. Minim exercitation mollit eiusmod aliquip amet ut consectetur quis voluptate eu veniam.\r\n", "registered": "2014-07-26T20:56:15-12:00", "latitude": 69.251985, "longitude": 73.059064, "tags": [ "quis", "aliqua", "labore", "ex", "mollit", "eiusmod", "nostrud" ], "friends": [ { "id": 0, "name": "Rachelle Boyer" }, { "id": 1, "name": "Allison Cortez" }, { "id": 2, "name": "Jenifer Beck" } ], "greeting": "Hello, Stafford Brooks! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea261319b3e02e07242d", "index": 2994, "guid": "fb496844-29df-4b35-b470-521e532857c3", "isActive": false, "balance": "$3,491.27", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Ilene Hurley", "gender": "female", "company": "UXMOX", "email": "ilenehurley@uxmox.com", "phone": "+1 (860) 417-3157", "address": "564 Ridge Court, Kohatk, Nebraska, 2038", "about": "Deserunt consectetur veniam magna in cillum proident officia esse labore veniam laboris velit. Deserunt tempor eu ex officia est mollit do pariatur proident in irure id. Incididunt et consectetur incididunt commodo nisi reprehenderit ullamco. Reprehenderit amet adipisicing dolore non duis duis eiusmod duis. Culpa labore tempor veniam excepteur nulla veniam. Officia elit eiusmod proident reprehenderit dolor qui. Dolor sint duis nisi minim laborum.\r\n", "registered": "2014-06-19T17:34:52-12:00", "latitude": -4.686097, "longitude": 81.308711, "tags": [ "in", "fugiat", "consequat", "nulla", "pariatur", "eiusmod", "minim" ], "friends": [ { "id": 0, "name": "Hattie Macias" }, { "id": 1, "name": "Allison Buckner" }, { "id": 2, "name": "Antonia Cooke" } ], "greeting": "Hello, Ilene Hurley! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26750cf3cf1446ba5c", "index": 2995, "guid": "f6cb1f23-52a9-4bfd-a0b7-8a1ea53d9617", "isActive": true, "balance": "$3,054.97", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Meghan Garrett", "gender": "female", "company": "ECOLIGHT", "email": "meghangarrett@ecolight.com", "phone": "+1 (854) 539-3303", "address": "930 Barwell Terrace, Sylvanite, District Of Columbia, 6344", "about": "Commodo excepteur sunt sit elit et sunt nisi dolore adipisicing sunt. Anim eu officia aliquip et commodo quis fugiat ut aliqua sit proident occaecat exercitation. Incididunt sunt commodo voluptate amet pariatur.\r\n", "registered": "2014-07-24T09:03:41-12:00", "latitude": -76.478604, "longitude": 30.792039, "tags": [ "elit", "culpa", "reprehenderit", "et", "est", "qui", "ipsum" ], "friends": [ { "id": 0, "name": "Trina Mcleod" }, { "id": 1, "name": "Rosie Mcgee" }, { "id": 2, "name": "Norma Horne" } ], "greeting": "Hello, Meghan Garrett! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26a6c8b416a11da903", "index": 2996, "guid": "f1a776bf-6fb6-4104-8bae-da04d05660ec", "isActive": false, "balance": "$1,318.04", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Felicia Kinney", "gender": "female", "company": "FUTURIS", "email": "feliciakinney@futuris.com", "phone": "+1 (889) 461-2984", "address": "845 Arlington Avenue, Esmont, New Jersey, 4043", "about": "Irure exercitation do cupidatat commodo do cupidatat proident duis cillum esse eu fugiat ut. Sint officia incididunt culpa officia aliquip proident sit cillum id occaecat Lorem ut do. Ex qui aute voluptate enim minim nostrud ex dolore ex aliqua consequat in.\r\n", "registered": "2014-08-09T12:29:24-12:00", "latitude": -40.862276, "longitude": -39.531848, "tags": [ "sit", "officia", "aliqua", "labore", "nulla", "consequat", "reprehenderit" ], "friends": [ { "id": 0, "name": "Keller Witt" }, { "id": 1, "name": "Robert Perkins" }, { "id": 2, "name": "Sondra Merrill" } ], "greeting": "Hello, Felicia Kinney! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea269b07875aec9397c8", "index": 2997, "guid": "f686c190-597e-4e78-ae7a-04565d02f7e6", "isActive": true, "balance": "$1,551.23", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Holmes Cherry", "gender": "male", "company": "DIGIPRINT", "email": "holmescherry@digiprint.com", "phone": "+1 (885) 560-3881", "address": "353 Montauk Avenue, Wyoming, Palau, 5375", "about": "Tempor aliquip cillum et voluptate reprehenderit laboris nostrud eu culpa incididunt aliqua. Id mollit eu qui do sit ad ipsum exercitation occaecat adipisicing Lorem ut. Nulla quis labore do officia mollit nulla. Ipsum dolor Lorem ad tempor ipsum proident deserunt. In enim incididunt pariatur quis proident minim officia pariatur nisi ullamco. Exercitation elit ipsum est nostrud laboris do labore culpa.\r\n", "registered": "2014-05-08T19:41:40-12:00", "latitude": 17.540244, "longitude": -106.814026, "tags": [ "ut", "laborum", "do", "consequat", "ea", "laborum", "minim" ], "friends": [ { "id": 0, "name": "Olivia Lucas" }, { "id": 1, "name": "Britt Hancock" }, { "id": 2, "name": "Acosta Wilkerson" } ], "greeting": "Hello, Holmes Cherry! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26f249a19db9ad1f7a", "index": 2998, "guid": "030f1d78-b6a1-4f95-9578-5205359e1b23", "isActive": false, "balance": "$1,953.67", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Murray Zamora", "gender": "male", "company": "SHADEASE", "email": "murrayzamora@shadease.com", "phone": "+1 (963) 557-3373", "address": "199 Noel Avenue, Goldfield, Puerto Rico, 2402", "about": "Ipsum adipisicing minim mollit velit voluptate Lorem incididunt minim deserunt labore sunt commodo adipisicing eiusmod. Quis non nulla aliqua officia esse amet in sunt nulla incididunt magna adipisicing. Sit et esse sit id sit nisi aliquip commodo officia nostrud magna elit nisi. Mollit reprehenderit consectetur nostrud sit aliqua aliqua Lorem deserunt cillum voluptate officia consequat.\r\n", "registered": "2014-08-17T14:46:01-12:00", "latitude": 88.710977, "longitude": -110.613058, "tags": [ "aute", "tempor", "sit", "est", "minim", "excepteur", "veniam" ], "friends": [ { "id": 0, "name": "Etta Mack" }, { "id": 1, "name": "Cross Oneill" }, { "id": 2, "name": "Noel Lawson" } ], "greeting": "Hello, Murray Zamora! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea264b4fd28869bbf02b", "index": 2999, "guid": "6b0f29af-a5fe-4c44-a7ae-929fc90f61c2", "isActive": false, "balance": "$3,568.08", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Mattie Thomas", "gender": "female", "company": "OPTIQUE", "email": "mattiethomas@optique.com", "phone": "+1 (823) 438-3397", "address": "630 Hausman Street, Yardville, California, 2058", "about": "Cillum laborum labore enim laborum ipsum adipisicing proident dolor. Ullamco fugiat et adipisicing laboris nisi eu esse labore. Non ad aute esse aliqua anim.\r\n", "registered": "2014-07-10T15:14:08-12:00", "latitude": 29.992738, "longitude": -15.637342, "tags": [ "sit", "ea", "do", "nulla", "fugiat", "excepteur", "anim" ], "friends": [ { "id": 0, "name": "Anastasia Stein" }, { "id": 1, "name": "Martin Jacobs" }, { "id": 2, "name": "Dorothy Malone" } ], "greeting": "Hello, Mattie Thomas! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26ddb9da069703787b", "index": 3000, "guid": "995f2904-ccc2-4c81-9aa8-1d83dadc7c41", "isActive": true, "balance": "$1,012.16", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Dorsey Lynch", "gender": "male", "company": "LEXICONDO", "email": "dorseylynch@lexicondo.com", "phone": "+1 (991) 561-2727", "address": "783 Krier Place, Evergreen, Vermont, 6772", "about": "Proident amet consequat dolor ad est qui aliqua ipsum adipisicing excepteur et. Do sint qui do do officia. Ea nulla irure dolor consequat ipsum id aute minim. Irure voluptate exercitation aliquip Lorem irure irure dolore laborum adipisicing dolore qui. Veniam veniam consectetur amet fugiat et esse duis eu elit ipsum nulla ut. Enim anim ad est esse excepteur adipisicing reprehenderit culpa enim sit veniam consectetur aliqua.\r\n", "registered": "2014-08-17T10:39:01-12:00", "latitude": 83.861951, "longitude": -155.35422, "tags": [ "amet", "commodo", "sit", "mollit", "quis", "do", "cupidatat" ], "friends": [ { "id": 0, "name": "James Hendrix" }, { "id": 1, "name": "Schultz Meyer" }, { "id": 2, "name": "Hernandez Walton" } ], "greeting": "Hello, Dorsey Lynch! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2654362457f54b1fcc", "index": 3001, "guid": "7ce68b51-e179-4245-bc23-7e2f4e7821ec", "isActive": true, "balance": "$3,261.84", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Underwood Stanley", "gender": "male", "company": "POLARIUM", "email": "underwoodstanley@polarium.com", "phone": "+1 (885) 558-3021", "address": "760 Clermont Avenue, Wanship, Indiana, 1174", "about": "Et reprehenderit excepteur ea laborum fugiat dolore. Lorem nostrud laboris proident pariatur amet irure aliquip ea duis nisi consectetur elit officia adipisicing. Nostrud esse exercitation culpa laboris non nisi dolore nostrud ipsum culpa.\r\n", "registered": "2014-05-11T10:54:52-12:00", "latitude": 59.945942, "longitude": 168.309702, "tags": [ "Lorem", "eu", "nostrud", "aliquip", "dolor", "aute", "sint" ], "friends": [ { "id": 0, "name": "Wise Collins" }, { "id": 1, "name": "Vanessa Sosa" }, { "id": 2, "name": "Gilbert Sampson" } ], "greeting": "Hello, Underwood Stanley! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea269ec87914e299683f", "index": 3002, "guid": "13217e35-c266-4616-aecb-a3e57ed16046", "isActive": false, "balance": "$1,581.33", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Lina Cain", "gender": "female", "company": "COLUMELLA", "email": "linacain@columella.com", "phone": "+1 (878) 557-3337", "address": "749 Harway Avenue, Vowinckel, Illinois, 3308", "about": "Tempor dolore veniam nostrud commodo consequat sunt reprehenderit labore dolore ullamco ea dolor. Adipisicing sint aliquip proident pariatur consectetur quis ullamco. Eu voluptate amet eu magna tempor non aliquip velit id aute consectetur. Ipsum incididunt in dolore do excepteur irure. Id pariatur non et mollit sunt aliquip.\r\n", "registered": "2014-05-08T23:10:10-12:00", "latitude": 17.707926, "longitude": -103.78495, "tags": [ "labore", "reprehenderit", "dolore", "quis", "mollit", "laborum", "sunt" ], "friends": [ { "id": 0, "name": "Roberts Sawyer" }, { "id": 1, "name": "Goodwin Wilder" }, { "id": 2, "name": "Sharp Mccray" } ], "greeting": "Hello, Lina Cain! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26dae5c1057666e67c", "index": 3003, "guid": "e384cc7d-8092-4173-b1db-19cdced0ddb0", "isActive": true, "balance": "$1,911.11", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Perez Sanford", "gender": "male", "company": "GEEKFARM", "email": "perezsanford@geekfarm.com", "phone": "+1 (930) 403-2762", "address": "502 Howard Alley, Sabillasville, South Carolina, 2957", "about": "Laborum dolor voluptate cillum consectetur mollit Lorem incididunt ex exercitation tempor eiusmod. Ullamco adipisicing tempor nostrud eiusmod laboris aliqua deserunt incididunt ex incididunt proident elit. Consequat eiusmod elit ad aliqua non exercitation aliquip ea ipsum reprehenderit deserunt consectetur laborum. Esse esse esse est dolor sunt. Proident id aute ut labore eiusmod irure consequat non quis veniam nulla. Est ipsum aute do nulla.\r\n", "registered": "2014-09-21T12:34:54-12:00", "latitude": -71.5056, "longitude": 35.134619, "tags": [ "sit", "amet", "ea", "labore", "in", "magna", "officia" ], "friends": [ { "id": 0, "name": "Strickland Cardenas" }, { "id": 1, "name": "Hampton Morrow" }, { "id": 2, "name": "Albert Livingston" } ], "greeting": "Hello, Perez Sanford! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2660b3925d3bda3385", "index": 3004, "guid": "22866927-3702-489e-9d0d-3f10de1325c0", "isActive": false, "balance": "$2,859.86", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Lou Hamilton", "gender": "female", "company": "SLOGANAUT", "email": "louhamilton@sloganaut.com", "phone": "+1 (996) 472-3941", "address": "999 Doughty Street, Stockwell, American Samoa, 4688", "about": "Culpa officia anim ut Lorem et id sint ullamco. Amet voluptate qui id enim ex non. Proident mollit officia exercitation ad non commodo proident veniam et minim tempor. Esse eu ullamco adipisicing officia excepteur. Incididunt ullamco incididunt enim excepteur minim.\r\n", "registered": "2014-07-11T12:33:05-12:00", "latitude": 70.106512, "longitude": 64.751686, "tags": [ "dolor", "incididunt", "ut", "magna", "elit", "Lorem", "do" ], "friends": [ { "id": 0, "name": "Lorie Shepherd" }, { "id": 1, "name": "Flores Clayton" }, { "id": 2, "name": "Davenport Atkinson" } ], "greeting": "Hello, Lou Hamilton! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26bedfa9d68147ff0a", "index": 3005, "guid": "6ffafcb4-da22-4ccb-895b-0de78f08bb93", "isActive": true, "balance": "$1,683.00", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Allyson Clay", "gender": "female", "company": "XLEEN", "email": "allysonclay@xleen.com", "phone": "+1 (916) 538-3066", "address": "895 Irvington Place, Zarephath, Delaware, 2583", "about": "Nulla velit tempor sunt officia incididunt minim ex elit ipsum. Proident dolor pariatur velit aute ullamco commodo do fugiat aute aliqua commodo eu ipsum proident. Labore in eiusmod duis veniam anim exercitation duis laboris incididunt mollit eu ipsum laboris. Consectetur velit et in officia enim ut pariatur eiusmod ex nulla occaecat anim Lorem. Reprehenderit Lorem cupidatat exercitation tempor ipsum labore voluptate tempor cupidatat proident laborum adipisicing cillum dolor. Sint nulla do ex culpa voluptate velit anim mollit aliqua laborum sint ut. Et irure labore labore consectetur commodo et aliquip ad reprehenderit magna est cillum commodo.\r\n", "registered": "2014-05-09T15:24:17-12:00", "latitude": -56.456809, "longitude": -132.503843, "tags": [ "officia", "amet", "sunt", "ad", "nisi", "occaecat", "commodo" ], "friends": [ { "id": 0, "name": "Dotson Whitehead" }, { "id": 1, "name": "Kim Rush" }, { "id": 2, "name": "Patsy Hayden" } ], "greeting": "Hello, Allyson Clay! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea261933077dbfa197a0", "index": 3006, "guid": "81799ebf-a4f8-413c-ad9a-ebfa4ff2b044", "isActive": true, "balance": "$1,463.27", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Williamson Wooten", "gender": "male", "company": "CABLAM", "email": "williamsonwooten@cablam.com", "phone": "+1 (989) 485-2696", "address": "769 Oakland Place, Wintersburg, Pennsylvania, 7331", "about": "Duis proident et qui nisi veniam. Sunt et ullamco esse incididunt sunt qui non pariatur occaecat nostrud. Ex deserunt ad excepteur adipisicing pariatur voluptate aute elit veniam deserunt laborum magna esse cillum. Occaecat duis qui aliqua exercitation dolore adipisicing consequat Lorem Lorem ea amet esse irure. Fugiat sunt commodo magna aliqua exercitation duis mollit ad commodo labore. Id cillum ex id eiusmod ipsum.\r\n", "registered": "2014-04-16T03:10:02-12:00", "latitude": -18.221435, "longitude": 41.081462, "tags": [ "minim", "dolor", "irure", "ut", "ut", "ipsum", "nisi" ], "friends": [ { "id": 0, "name": "Victoria Blankenship" }, { "id": 1, "name": "Patrick Kent" }, { "id": 2, "name": "Berg Ramirez" } ], "greeting": "Hello, Williamson Wooten! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26814dc2ebf3e8d59a", "index": 3007, "guid": "a766369f-ae0e-4de4-88b2-2ecb57fda45d", "isActive": true, "balance": "$2,455.63", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Amalia Hardy", "gender": "female", "company": "TERRAGO", "email": "amaliahardy@terrago.com", "phone": "+1 (881) 520-3815", "address": "866 Sharon Street, Cartwright, Georgia, 9701", "about": "Duis veniam velit sit consectetur aute aute cillum occaecat enim irure. Eu consequat voluptate tempor irure. Id ex nulla in laborum Lorem anim sit laboris. Occaecat do amet exercitation non aute occaecat. Cillum veniam mollit culpa non quis fugiat aliqua magna aute sit dolor. Duis mollit proident id dolore deserunt.\r\n", "registered": "2014-04-13T19:28:07-12:00", "latitude": 58.053598, "longitude": 118.394672, "tags": [ "deserunt", "velit", "nostrud", "commodo", "aliqua", "elit", "in" ], "friends": [ { "id": 0, "name": "Fern Ross" }, { "id": 1, "name": "Katharine Wade" }, { "id": 2, "name": "Lottie Cunningham" } ], "greeting": "Hello, Amalia Hardy! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea260d865ed013576311", "index": 3008, "guid": "44c22751-b73a-4ed4-ada1-6b0acd460a64", "isActive": true, "balance": "$1,480.95", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Meadows Noble", "gender": "male", "company": "BRISTO", "email": "meadowsnoble@bristo.com", "phone": "+1 (849) 474-3375", "address": "397 Ainslie Street, Savannah, North Dakota, 3406", "about": "Fugiat adipisicing enim labore duis proident eiusmod dolor eiusmod incididunt. Duis do excepteur enim nulla velit exercitation officia sit ipsum tempor esse eiusmod veniam. Aliqua adipisicing minim voluptate ipsum. Voluptate velit amet dolore nostrud sint eu fugiat est adipisicing aute id velit. Ex laborum nostrud laboris amet ex ullamco ut reprehenderit minim duis.\r\n", "registered": "2014-04-26T19:34:45-12:00", "latitude": -85.36847, "longitude": -101.299627, "tags": [ "excepteur", "reprehenderit", "irure", "sint", "deserunt", "occaecat", "labore" ], "friends": [ { "id": 0, "name": "Downs Montgomery" }, { "id": 1, "name": "Lydia Tran" }, { "id": 2, "name": "Dodson Valdez" } ], "greeting": "Hello, Meadows Noble! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2648c0d5db13751128", "index": 3009, "guid": "d5878d4f-18fe-4e21-932e-5184d33ffb57", "isActive": false, "balance": "$2,957.81", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Colette Hebert", "gender": "female", "company": "FORTEAN", "email": "colettehebert@fortean.com", "phone": "+1 (943) 573-3073", "address": "674 Woodhull Street, Sterling, Louisiana, 6712", "about": "Nisi id consectetur non sint anim laboris. Sint velit nisi aliqua non pariatur. Minim qui labore elit proident veniam aliqua irure mollit dolore qui nulla. Tempor nisi culpa aute duis et tempor consequat ex non aliqua exercitation officia duis ex. Dolore elit sint cupidatat amet ad. Anim fugiat officia magna dolore duis adipisicing anim pariatur laborum dolor aute excepteur minim occaecat.\r\n", "registered": "2014-08-22T01:19:40-12:00", "latitude": -6.360477, "longitude": 175.890907, "tags": [ "ea", "dolor", "nulla", "cupidatat", "excepteur", "excepteur", "ex" ], "friends": [ { "id": 0, "name": "Brock Simmons" }, { "id": 1, "name": "Marina Fox" }, { "id": 2, "name": "Susanne Mosley" } ], "greeting": "Hello, Colette Hebert! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea264673d6d6076c754b", "index": 3010, "guid": "954ae940-01c9-472f-87f3-4cbf2a298028", "isActive": false, "balance": "$1,222.83", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Salas Cole", "gender": "male", "company": "SNORUS", "email": "salascole@snorus.com", "phone": "+1 (891) 548-2831", "address": "724 Adelphi Street, Tyhee, Northern Mariana Islands, 7671", "about": "Excepteur deserunt mollit excepteur laborum. Nostrud veniam duis ullamco reprehenderit dolore. Aute proident consequat ut anim.\r\n", "registered": "2014-08-02T03:15:12-12:00", "latitude": -64.610443, "longitude": 61.707428, "tags": [ "labore", "voluptate", "reprehenderit", "quis", "anim", "eu", "id" ], "friends": [ { "id": 0, "name": "Flynn Waters" }, { "id": 1, "name": "Ellen Vega" }, { "id": 2, "name": "Porter Madden" } ], "greeting": "Hello, Salas Cole! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2687af2ddb0f57b8fe", "index": 3011, "guid": "c273906b-555d-4737-bf97-bc70b7a978fd", "isActive": false, "balance": "$3,322.15", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Small Bradford", "gender": "male", "company": "CENTREXIN", "email": "smallbradford@centrexin.com", "phone": "+1 (845) 416-2519", "address": "878 Fuller Place, Hillsboro, Colorado, 5528", "about": "Veniam Lorem in do id pariatur incididunt cillum ex eiusmod. Exercitation esse fugiat ullamco minim cillum ut officia adipisicing esse. Occaecat cupidatat minim sint proident esse. Non id nostrud exercitation sunt dolor voluptate id cillum dolore mollit.\r\n", "registered": "2014-03-18T03:13:27-13:00", "latitude": -50.653035, "longitude": -96.625596, "tags": [ "officia", "et", "veniam", "fugiat", "nulla", "est", "ullamco" ], "friends": [ { "id": 0, "name": "Ballard Slater" }, { "id": 1, "name": "Harriett Maddox" }, { "id": 2, "name": "Kline Ward" } ], "greeting": "Hello, Small Bradford! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea263ccdf91b7a58bea1", "index": 3012, "guid": "72c15586-388a-40a7-8dfd-23b380f2e2df", "isActive": false, "balance": "$3,553.68", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Penelope Rice", "gender": "female", "company": "JASPER", "email": "peneloperice@jasper.com", "phone": "+1 (941) 569-2182", "address": "624 Bank Street, Cade, Idaho, 8009", "about": "Enim ex reprehenderit nulla excepteur aute exercitation id. Culpa occaecat esse aliqua esse. Est incididunt ullamco incididunt ad. Consectetur dolor eu anim dolor cillum ad veniam ad anim dolore et reprehenderit. Tempor laborum do consectetur velit consequat mollit velit. Excepteur exercitation cupidatat ex cupidatat nisi enim laboris nostrud est et adipisicing sit laborum dolore. Adipisicing minim aliqua aliquip qui aute esse Lorem anim adipisicing.\r\n", "registered": "2014-07-21T06:48:30-12:00", "latitude": -68.347797, "longitude": -115.303806, "tags": [ "occaecat", "ipsum", "ea", "officia", "quis", "sunt", "ipsum" ], "friends": [ { "id": 0, "name": "Soto Hendricks" }, { "id": 1, "name": "Ramsey Morse" }, { "id": 2, "name": "Tammy James" } ], "greeting": "Hello, Penelope Rice! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26a0aa2750f6b9592b", "index": 3013, "guid": "35952492-ed54-439d-a16d-0d644f9edeba", "isActive": false, "balance": "$2,885.75", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Leah Griffith", "gender": "female", "company": "ZENTRY", "email": "leahgriffith@zentry.com", "phone": "+1 (899) 515-3235", "address": "894 Dikeman Street, Goochland, Marshall Islands, 7219", "about": "Ex eu id laboris anim nisi ut. Duis pariatur Lorem quis irure elit aliqua ut non mollit aute elit velit. Consectetur et aliqua fugiat excepteur labore cillum mollit.\r\n", "registered": "2014-04-28T05:39:17-12:00", "latitude": 40.698081, "longitude": 164.195883, "tags": [ "occaecat", "elit", "sint", "sit", "fugiat", "sit", "enim" ], "friends": [ { "id": 0, "name": "Ebony Webb" }, { "id": 1, "name": "Durham Kirk" }, { "id": 2, "name": "Hanson Rutledge" } ], "greeting": "Hello, Leah Griffith! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26afa8f8abcf82ddd8", "index": 3014, "guid": "7f6ed6f4-9c84-4e32-be22-ab276f218fc2", "isActive": false, "balance": "$3,128.24", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Conner Baker", "gender": "male", "company": "ACRODANCE", "email": "connerbaker@acrodance.com", "phone": "+1 (922) 404-3643", "address": "980 Borinquen Pl, Leroy, New York, 2770", "about": "Sunt aliqua fugiat est irure sint magna fugiat adipisicing elit amet amet id non in. Elit enim mollit aliqua sit ea amet ad veniam velit Lorem. Id officia sunt officia in do qui et et voluptate laborum proident est occaecat. Aliqua cillum laborum proident reprehenderit aliqua deserunt ut proident. Anim voluptate excepteur velit mollit ad sit aliqua magna nostrud exercitation voluptate labore. Minim occaecat ad exercitation reprehenderit tempor.\r\n", "registered": "2014-08-26T13:43:07-12:00", "latitude": -68.452669, "longitude": 44.095825, "tags": [ "minim", "cillum", "cillum", "do", "magna", "sint", "est" ], "friends": [ { "id": 0, "name": "Mccullough Daniels" }, { "id": 1, "name": "Amanda Wright" }, { "id": 2, "name": "Woods Patel" } ], "greeting": "Hello, Conner Baker! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2632f22940a263b896", "index": 3015, "guid": "e3f3c017-f8d3-4ed7-adee-cd1d8cf21929", "isActive": false, "balance": "$1,549.04", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Todd Cook", "gender": "male", "company": "NORSUL", "email": "toddcook@norsul.com", "phone": "+1 (806) 449-3301", "address": "232 Wallabout Street, Crumpler, Guam, 2147", "about": "Mollit pariatur ad pariatur pariatur commodo. Enim quis velit culpa est esse laborum laborum et mollit nulla ut sunt nisi magna. Tempor amet qui deserunt in. Quis irure quis incididunt in sunt do magna labore dolore pariatur pariatur aliquip.\r\n", "registered": "2014-08-11T07:43:14-12:00", "latitude": 80.371405, "longitude": 63.689488, "tags": [ "excepteur", "aliqua", "ullamco", "dolor", "id", "ipsum", "quis" ], "friends": [ { "id": 0, "name": "Gutierrez Bullock" }, { "id": 1, "name": "Cathleen Nicholson" }, { "id": 2, "name": "Shaffer Grimes" } ], "greeting": "Hello, Todd Cook! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26e710bd54562581df", "index": 3016, "guid": "f73544b9-d23e-4ad1-a9a3-b93defab75ab", "isActive": false, "balance": "$3,827.36", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Macdonald Olsen", "gender": "male", "company": "ASSITIA", "email": "macdonaldolsen@assitia.com", "phone": "+1 (816) 451-3220", "address": "902 Kane Street, Waterford, Virgin Islands, 4591", "about": "Ea velit magna tempor laborum ex occaecat labore irure tempor ut nisi excepteur. Sit deserunt ex nulla pariatur aliqua mollit sint id dolore enim. Minim pariatur qui nisi minim. Ex nostrud consequat consequat culpa. Est mollit qui aliquip excepteur aute. Amet sint quis labore excepteur veniam id ad tempor irure non ipsum cupidatat adipisicing. Excepteur enim in eiusmod fugiat nulla laborum et enim exercitation in ex ullamco nulla.\r\n", "registered": "2014-01-18T02:03:49-13:00", "latitude": -59.784456, "longitude": -50.71169, "tags": [ "excepteur", "excepteur", "proident", "nostrud", "culpa", "commodo", "dolor" ], "friends": [ { "id": 0, "name": "Garza Ramsey" }, { "id": 1, "name": "Mccray Barrera" }, { "id": 2, "name": "Copeland Moses" } ], "greeting": "Hello, Macdonald Olsen! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26f9a46666cf460046", "index": 3017, "guid": "95aa2cd0-5ffb-42e8-aee8-fdbc9ccbac69", "isActive": false, "balance": "$3,728.57", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Desiree Huff", "gender": "female", "company": "PROVIDCO", "email": "desireehuff@providco.com", "phone": "+1 (989) 475-3590", "address": "238 Dodworth Street, Terlingua, Massachusetts, 2350", "about": "Incididunt nostrud voluptate pariatur veniam laboris proident do. Ipsum reprehenderit pariatur ipsum est adipisicing officia consequat commodo excepteur eu. Exercitation duis in minim aliquip. Aute veniam magna nisi commodo consequat do proident velit sunt et. Laborum eu do ullamco laboris amet eiusmod labore anim do sunt et Lorem exercitation.\r\n", "registered": "2014-04-08T16:25:41-12:00", "latitude": -58.185007, "longitude": 78.930061, "tags": [ "nisi", "laboris", "eu", "duis", "esse", "culpa", "cillum" ], "friends": [ { "id": 0, "name": "Decker Mcintyre" }, { "id": 1, "name": "Eloise Hicks" }, { "id": 2, "name": "Casey Carlson" } ], "greeting": "Hello, Desiree Huff! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26b5721e50eeab18ff", "index": 3018, "guid": "7d8a939b-e8b5-4c92-bf6d-be13858cdf69", "isActive": true, "balance": "$3,507.61", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Salinas Ayers", "gender": "male", "company": "EYERIS", "email": "salinasayers@eyeris.com", "phone": "+1 (970) 589-3587", "address": "530 Wilson Avenue, Nipinnawasee, Utah, 9076", "about": "Excepteur eu ad culpa anim consequat. Magna voluptate aliqua eu enim proident eu culpa eu anim fugiat consequat id. Nulla cupidatat ad mollit veniam cillum aliqua. Laboris fugiat ipsum consectetur ut incididunt anim velit pariatur duis cillum elit id. Laborum nisi est laborum consectetur.\r\n", "registered": "2014-09-04T04:32:46-12:00", "latitude": 33.902535, "longitude": -78.762598, "tags": [ "magna", "irure", "nostrud", "magna", "dolor", "proident", "ad" ], "friends": [ { "id": 0, "name": "Reva Leach" }, { "id": 1, "name": "Haley Lyons" }, { "id": 2, "name": "Beverly Robles" } ], "greeting": "Hello, Salinas Ayers! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea267428bc13288a21ae", "index": 3019, "guid": "969755b4-4404-48b7-89a9-ee6e85b53036", "isActive": false, "balance": "$3,875.98", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Norman Curry", "gender": "male", "company": "TRIPSCH", "email": "normancurry@tripsch.com", "phone": "+1 (940) 553-2856", "address": "991 Clarkson Avenue, Holcombe, Montana, 9409", "about": "Enim quis aute laborum do nisi. Est nulla consequat ullamco aliqua sint aliqua consequat dolore mollit nostrud qui esse laborum sunt. Aute ut dolore laboris tempor labore ut exercitation cillum pariatur deserunt. Dolore laboris Lorem qui veniam cupidatat irure eiusmod consectetur. Proident dolore incididunt eiusmod ad excepteur irure ad duis. Minim quis ex enim non adipisicing veniam officia et nostrud sit dolore ex. Eiusmod labore anim magna ut aute irure ad elit do.\r\n", "registered": "2014-03-03T23:00:07-13:00", "latitude": -81.128764, "longitude": -40.589553, "tags": [ "ad", "ullamco", "ex", "non", "laborum", "aliqua", "ea" ], "friends": [ { "id": 0, "name": "Jeri Marquez" }, { "id": 1, "name": "Margery Acevedo" }, { "id": 2, "name": "Perkins Reeves" } ], "greeting": "Hello, Norman Curry! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea265de4b1aeb3a26c5e", "index": 3020, "guid": "f7755c02-b0f8-4353-91c3-b531804f580b", "isActive": true, "balance": "$1,460.73", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Weaver Irwin", "gender": "male", "company": "ISODRIVE", "email": "weaverirwin@isodrive.com", "phone": "+1 (892) 446-3488", "address": "269 Throop Avenue, Yukon, Wisconsin, 6666", "about": "Consequat in fugiat in adipisicing cupidatat exercitation eiusmod incididunt dolor voluptate laborum ullamco. Commodo do aute mollit exercitation. Id nostrud eiusmod do adipisicing amet duis cillum enim.\r\n", "registered": "2014-02-10T06:07:42-13:00", "latitude": 7.304475, "longitude": 156.554865, "tags": [ "reprehenderit", "anim", "aliqua", "mollit", "cupidatat", "nostrud", "nisi" ], "friends": [ { "id": 0, "name": "Glenda Terrell" }, { "id": 1, "name": "Suarez Schmidt" }, { "id": 2, "name": "Winters Delaney" } ], "greeting": "Hello, Weaver Irwin! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26df0b28b3f49ae581", "index": 3021, "guid": "85d51eca-3da2-4336-8022-6ff6568d148c", "isActive": true, "balance": "$1,768.47", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Cline Wyatt", "gender": "male", "company": "FLYBOYZ", "email": "clinewyatt@flyboyz.com", "phone": "+1 (929) 592-2872", "address": "649 Dunne Court, Ticonderoga, Maine, 6184", "about": "Labore non ad commodo velit irure veniam sint ex sunt reprehenderit deserunt. Est est velit non qui ullamco do irure pariatur in magna proident sit qui. Ad duis fugiat labore nostrud sint excepteur non cillum velit ullamco magna. Proident laboris culpa irure ea ea ullamco sit mollit.\r\n", "registered": "2014-06-23T05:53:13-12:00", "latitude": 81.429719, "longitude": 170.134354, "tags": [ "id", "ea", "aliqua", "laborum", "ipsum", "aute", "non" ], "friends": [ { "id": 0, "name": "Garner Lindsey" }, { "id": 1, "name": "Conway Head" }, { "id": 2, "name": "Obrien Morrison" } ], "greeting": "Hello, Cline Wyatt! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2639c7d2d4c7609c3f", "index": 3022, "guid": "25d77723-3365-4722-9580-9006dbeb6c9e", "isActive": false, "balance": "$2,827.45", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Benita Crawford", "gender": "female", "company": "PORTALIS", "email": "benitacrawford@portalis.com", "phone": "+1 (856) 432-2708", "address": "176 Leonora Court, Mayfair, Virginia, 2224", "about": "Quis mollit veniam magna ullamco excepteur sint. Consequat eu dolore veniam Lorem non laborum labore fugiat voluptate sint mollit. Lorem Lorem esse qui commodo aliqua aliquip culpa aliquip elit mollit quis amet. Anim minim veniam velit nulla occaecat nulla do esse Lorem esse esse elit do est. Ullamco cillum Lorem amet nostrud non sint anim.\r\n", "registered": "2014-07-06T20:26:15-12:00", "latitude": 4.343418, "longitude": 5.992689, "tags": [ "irure", "ipsum", "duis", "officia", "mollit", "enim", "aliquip" ], "friends": [ { "id": 0, "name": "Baker Espinoza" }, { "id": 1, "name": "Mcmillan Sullivan" }, { "id": 2, "name": "Cherie Day" } ], "greeting": "Hello, Benita Crawford! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26af3f2845edc16074", "index": 3023, "guid": "829485a0-2cd9-411c-981f-ddc7d746394b", "isActive": false, "balance": "$2,467.53", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Horton Harmon", "gender": "male", "company": "POWERNET", "email": "hortonharmon@powernet.com", "phone": "+1 (813) 407-2815", "address": "438 Windsor Place, Turpin, Kentucky, 7010", "about": "Qui duis officia mollit Lorem. Ad non in esse cupidatat ex commodo Lorem commodo. Sunt aliqua commodo velit pariatur excepteur Lorem elit eu aliqua fugiat pariatur. Labore ullamco veniam velit incididunt laborum labore consequat anim. Labore magna adipisicing in culpa dolor Lorem amet veniam officia cillum do. Excepteur exercitation eiusmod nostrud elit mollit ad.\r\n", "registered": "2014-08-23T07:24:04-12:00", "latitude": -15.10634, "longitude": 156.931614, "tags": [ "aliquip", "cupidatat", "culpa", "veniam", "esse", "ut", "occaecat" ], "friends": [ { "id": 0, "name": "Elnora English" }, { "id": 1, "name": "Hickman Buckley" }, { "id": 2, "name": "Hess Haley" } ], "greeting": "Hello, Horton Harmon! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2696a256054a1279cd", "index": 3024, "guid": "376227b3-a766-46d6-a0d7-ecbeb68081f8", "isActive": true, "balance": "$2,904.09", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Sheena Mullen", "gender": "female", "company": "BLANET", "email": "sheenamullen@blanet.com", "phone": "+1 (880) 441-3037", "address": "881 Degraw Street, Taycheedah, Connecticut, 9249", "about": "Lorem labore nostrud enim laborum labore excepteur dolore aliqua quis cillum consequat. Labore mollit exercitation in ullamco reprehenderit magna consequat enim velit. Sit officia sint non reprehenderit nisi tempor irure. In sunt nisi aute veniam fugiat sunt in dolore veniam do nulla amet et. Cupidatat voluptate exercitation amet do quis eiusmod Lorem excepteur aliqua enim ipsum.\r\n", "registered": "2014-08-20T13:08:39-12:00", "latitude": 32.996675, "longitude": -88.567888, "tags": [ "ullamco", "dolore", "esse", "nostrud", "ad", "nulla", "pariatur" ], "friends": [ { "id": 0, "name": "Mullins Bray" }, { "id": 1, "name": "Trudy Gay" }, { "id": 2, "name": "Aguilar Pitts" } ], "greeting": "Hello, Sheena Mullen! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26ef33d30b93efffeb", "index": 3025, "guid": "1230e737-e2d1-459a-a6f2-a276138dca1d", "isActive": true, "balance": "$1,206.27", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Ruiz Vance", "gender": "male", "company": "HOUSEDOWN", "email": "ruizvance@housedown.com", "phone": "+1 (922) 406-2361", "address": "398 Poly Place, Lumberton, Mississippi, 6841", "about": "Cillum amet ullamco sunt ut id veniam. Amet in do elit cillum enim cillum fugiat id laborum adipisicing. Nisi aliquip enim sit laborum.\r\n", "registered": "2014-07-29T06:00:46-12:00", "latitude": -58.924098, "longitude": 119.778377, "tags": [ "adipisicing", "ut", "deserunt", "officia", "et", "consequat", "duis" ], "friends": [ { "id": 0, "name": "Tran Kidd" }, { "id": 1, "name": "Greta Bridges" }, { "id": 2, "name": "Eileen Alford" } ], "greeting": "Hello, Ruiz Vance! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea266cf572da07204d99", "index": 3026, "guid": "60582302-89b4-4f03-9b8f-4ef8abee1e4d", "isActive": false, "balance": "$1,664.75", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Gentry Riley", "gender": "male", "company": "ENDIPINE", "email": "gentryriley@endipine.com", "phone": "+1 (968) 545-3069", "address": "946 Bedell Lane, Macdona, Washington, 8155", "about": "Quis commodo minim excepteur sit velit est excepteur dolor non. Do incididunt excepteur dolore sit ex irure do cupidatat ex id ex elit nisi eu. Aute non mollit non consectetur. Cupidatat cillum quis ex Lorem fugiat eiusmod mollit cillum esse mollit cillum ex ullamco. Mollit adipisicing ad tempor reprehenderit magna magna laboris esse.\r\n", "registered": "2014-01-11T08:05:42-13:00", "latitude": 57.807008, "longitude": 49.548819, "tags": [ "nostrud", "ex", "ut", "fugiat", "voluptate", "veniam", "exercitation" ], "friends": [ { "id": 0, "name": "Lopez Brennan" }, { "id": 1, "name": "Tyler Austin" }, { "id": 2, "name": "Flowers Oneil" } ], "greeting": "Hello, Gentry Riley! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26f0919c20eb1f3568", "index": 3027, "guid": "20a7e35f-f3c2-49ce-8fb2-82f01343e2dc", "isActive": false, "balance": "$3,425.54", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Lela Richard", "gender": "female", "company": "ADORNICA", "email": "lelarichard@adornica.com", "phone": "+1 (916) 475-3356", "address": "324 Green Street, Reinerton, Tennessee, 2745", "about": "Nostrud dolore qui duis est. Occaecat velit minim qui Lorem mollit consequat in aliquip sint. Labore voluptate anim veniam enim do eiusmod velit esse Lorem. Reprehenderit reprehenderit aliquip nisi proident.\r\n", "registered": "2014-07-23T03:06:32-12:00", "latitude": -53.422834, "longitude": -68.235742, "tags": [ "ad", "laborum", "reprehenderit", "aute", "proident", "nostrud", "id" ], "friends": [ { "id": 0, "name": "Opal Casey" }, { "id": 1, "name": "Mandy Figueroa" }, { "id": 2, "name": "Sears Gallagher" } ], "greeting": "Hello, Lela Richard! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26ba96278bff74b926", "index": 3028, "guid": "285218bc-1b30-4d0c-977a-ae2704a28c70", "isActive": true, "balance": "$2,599.64", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Stanton Copeland", "gender": "male", "company": "SYNTAC", "email": "stantoncopeland@syntac.com", "phone": "+1 (887) 538-2696", "address": "394 Coventry Road, Needmore, Alabama, 4798", "about": "Anim ex irure fugiat incididunt. Deserunt fugiat in incididunt nulla qui occaecat amet voluptate magna. Ad sunt voluptate ipsum proident excepteur exercitation ad eu dolore incididunt. Deserunt reprehenderit et eu ipsum occaecat cillum ex sunt deserunt dolore voluptate. Nisi reprehenderit est officia irure anim ut ullamco esse anim quis magna.\r\n", "registered": "2014-04-27T03:14:38-12:00", "latitude": -62.101273, "longitude": -131.114868, "tags": [ "ea", "deserunt", "qui", "est", "aliqua", "consequat", "ut" ], "friends": [ { "id": 0, "name": "Lang Gould" }, { "id": 1, "name": "Arlene Sellers" }, { "id": 2, "name": "Petra Long" } ], "greeting": "Hello, Stanton Copeland! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea263977766fb2992ab9", "index": 3029, "guid": "ccbee3ad-9bb4-48f0-a718-9ff1cc6a6a08", "isActive": true, "balance": "$3,718.26", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Ada Barnett", "gender": "female", "company": "INEAR", "email": "adabarnett@inear.com", "phone": "+1 (920) 459-2294", "address": "639 Miami Court, Springville, Ohio, 6024", "about": "Ut elit cupidatat non tempor sunt sit sunt. Excepteur ad reprehenderit ut deserunt do aliquip occaecat occaecat ipsum laboris. Culpa dolor qui deserunt sint enim velit mollit mollit exercitation consequat velit Lorem minim. Deserunt qui ad ullamco deserunt Lorem cillum eu eiusmod elit ullamco. Consectetur velit id do aliqua ipsum Lorem nulla non aliquip non ad esse adipisicing. Occaecat ipsum labore proident incididunt sunt ipsum.\r\n", "registered": "2014-03-13T12:13:27-13:00", "latitude": -81.857577, "longitude": 3.220585, "tags": [ "tempor", "magna", "mollit", "tempor", "ex", "nostrud", "ut" ], "friends": [ { "id": 0, "name": "Duran Morin" }, { "id": 1, "name": "Hunter Scott" }, { "id": 2, "name": "Guerrero Prince" } ], "greeting": "Hello, Ada Barnett! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea265f3d99fcca8cd4e2", "index": 3030, "guid": "86010a77-a8a2-438d-ad1d-479644b05f9f", "isActive": true, "balance": "$3,045.73", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Larsen Ryan", "gender": "male", "company": "GUSHKOOL", "email": "larsenryan@gushkool.com", "phone": "+1 (983) 472-2488", "address": "856 Ludlam Place, Bynum, Hawaii, 9651", "about": "Dolore cillum occaecat non irure incididunt ad magna amet exercitation ullamco anim laboris mollit. Ut excepteur elit proident incididunt excepteur in consequat mollit sit adipisicing commodo. Esse ut mollit culpa nisi irure sint sunt excepteur Lorem id ea aliqua.\r\n", "registered": "2014-07-28T02:22:12-12:00", "latitude": 59.003722, "longitude": -31.526812, "tags": [ "duis", "aute", "et", "ut", "amet", "laborum", "proident" ], "friends": [ { "id": 0, "name": "Robbins Knox" }, { "id": 1, "name": "Susan Yang" }, { "id": 2, "name": "Connie Baldwin" } ], "greeting": "Hello, Larsen Ryan! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26fd02ae0f08d015ca", "index": 3031, "guid": "d5c88186-d280-4d5f-a348-20e7b41a0e5e", "isActive": true, "balance": "$1,069.24", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Bray Hall", "gender": "male", "company": "KOZGENE", "email": "brayhall@kozgene.com", "phone": "+1 (815) 570-2329", "address": "373 Rutherford Place, Smock, New Mexico, 9389", "about": "Duis aliquip velit Lorem nulla. Laboris incididunt laboris ipsum aliquip qui consequat eiusmod excepteur enim excepteur. Laboris quis consectetur labore elit officia sit exercitation commodo nostrud pariatur laborum adipisicing. Commodo aliquip reprehenderit occaecat labore consequat. Laborum aliquip duis ut exercitation adipisicing do veniam aliquip pariatur occaecat.\r\n", "registered": "2014-05-17T11:01:33-12:00", "latitude": 77.407953, "longitude": 84.916987, "tags": [ "qui", "cupidatat", "adipisicing", "consequat", "nostrud", "ut", "tempor" ], "friends": [ { "id": 0, "name": "Vincent Joyner" }, { "id": 1, "name": "Hubbard Goodwin" }, { "id": 2, "name": "Ratliff Munoz" } ], "greeting": "Hello, Bray Hall! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26a2be21be488d591d", "index": 3032, "guid": "15970758-3c5e-4d69-a227-dac3cf530dae", "isActive": false, "balance": "$3,888.54", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Hendrix Bush", "gender": "male", "company": "SURELOGIC", "email": "hendrixbush@surelogic.com", "phone": "+1 (995) 470-2431", "address": "431 Huntington Street, Kylertown, Maryland, 6782", "about": "Incididunt in mollit qui aliqua dolore. Enim occaecat mollit aliqua culpa Lorem in laborum quis consequat do eiusmod. Pariatur aliquip veniam ipsum fugiat laborum minim laborum. Voluptate exercitation dolor aliquip veniam cillum ex ipsum est labore amet occaecat commodo fugiat.\r\n", "registered": "2014-03-20T05:08:24-13:00", "latitude": -53.82772, "longitude": 148.825346, "tags": [ "exercitation", "in", "ipsum", "duis", "cillum", "eiusmod", "eiusmod" ], "friends": [ { "id": 0, "name": "Bolton Ramos" }, { "id": 1, "name": "Gale Wagner" }, { "id": 2, "name": "Emerson Sandoval" } ], "greeting": "Hello, Hendrix Bush! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26101706ecde28e2f7", "index": 3033, "guid": "3457aeb2-d666-4415-9018-87505e62b912", "isActive": false, "balance": "$3,860.52", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Betsy Bentley", "gender": "female", "company": "UNDERTAP", "email": "betsybentley@undertap.com", "phone": "+1 (956) 459-2855", "address": "694 Eastern Parkway, Silkworth, Alaska, 1627", "about": "Nisi ipsum laborum et consectetur mollit amet. Magna laborum fugiat do dolore voluptate nostrud non. Laborum incididunt commodo minim ut minim tempor Lorem ipsum deserunt. Velit proident cillum nulla enim sunt reprehenderit. Fugiat sunt amet deserunt enim commodo nostrud. Laboris adipisicing deserunt consectetur mollit ea. Occaecat eu ipsum eu ullamco dolore magna deserunt dolore sint consectetur.\r\n", "registered": "2014-06-15T16:04:12-12:00", "latitude": 34.235261, "longitude": 156.383664, "tags": [ "dolor", "ad", "ex", "elit", "ipsum", "occaecat", "sint" ], "friends": [ { "id": 0, "name": "Key Skinner" }, { "id": 1, "name": "Latisha Sharpe" }, { "id": 2, "name": "Richmond Hull" } ], "greeting": "Hello, Betsy Bentley! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea260e3e923de98ca3ed", "index": 3034, "guid": "b4ba2fd5-32f4-4311-8b73-9b522d8ffdf7", "isActive": false, "balance": "$3,451.67", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Walters Carney", "gender": "male", "company": "HOPELI", "email": "walterscarney@hopeli.com", "phone": "+1 (806) 490-3333", "address": "574 Congress Street, Jugtown, Arizona, 6499", "about": "Mollit consequat pariatur sunt enim ipsum officia. Voluptate occaecat sint in eiusmod qui eu laborum ut fugiat. Sit occaecat nisi eu veniam laboris reprehenderit consequat sunt ad. Ad ea mollit dolor cupidatat anim ipsum. Eu anim amet cillum dolore culpa. Dolor nisi incididunt cillum excepteur excepteur aute elit nostrud aute ullamco eiusmod ea. Lorem ex Lorem ullamco velit voluptate enim in exercitation pariatur velit magna incididunt laboris quis.\r\n", "registered": "2014-07-21T18:26:09-12:00", "latitude": 54.656652, "longitude": -170.054243, "tags": [ "sunt", "sit", "voluptate", "labore", "duis", "deserunt", "ullamco" ], "friends": [ { "id": 0, "name": "Bean Heath" }, { "id": 1, "name": "Dena Ortega" }, { "id": 2, "name": "Aurora Charles" } ], "greeting": "Hello, Walters Carney! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea262f53b5830ae7d8c5", "index": 3035, "guid": "61545684-8f67-427e-8cbc-bf96d993f5db", "isActive": false, "balance": "$2,754.40", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Grimes Hill", "gender": "male", "company": "COMCUBINE", "email": "grimeshill@comcubine.com", "phone": "+1 (942) 450-2553", "address": "542 Logan Street, Stouchsburg, Federated States Of Micronesia, 5743", "about": "Ipsum exercitation laborum nisi id cillum consequat id elit excepteur fugiat Lorem proident magna esse. Do tempor nulla sit cupidatat exercitation et id non laboris ad magna ad labore. Mollit amet officia sint laboris laborum sit sunt. Ut sunt ipsum dolore do velit sit deserunt enim nostrud labore esse qui velit. Consectetur enim duis ex et exercitation. Lorem est officia pariatur sunt irure occaecat aliquip.\r\n", "registered": "2014-05-03T03:48:00-12:00", "latitude": -31.470013, "longitude": 131.235652, "tags": [ "nisi", "aute", "ipsum", "proident", "ipsum", "tempor", "proident" ], "friends": [ { "id": 0, "name": "Maricela Thompson" }, { "id": 1, "name": "Nola Huffman" }, { "id": 2, "name": "Jan Bishop" } ], "greeting": "Hello, Grimes Hill! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26901a1a6bafade9e7", "index": 3036, "guid": "d27465d9-9b6f-47e0-8c9d-7d54adff6a21", "isActive": true, "balance": "$2,457.24", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Ward Jimenez", "gender": "male", "company": "ANIMALIA", "email": "wardjimenez@animalia.com", "phone": "+1 (803) 403-2780", "address": "665 Elliott Place, Farmington, Oklahoma, 4849", "about": "Dolore incididunt id elit elit aute sit laborum sint cupidatat occaecat laboris amet dolore duis. Proident occaecat enim deserunt sint est ea ea ipsum esse commodo laborum aute eu consectetur. Est dolor enim pariatur sunt dolore exercitation fugiat labore do fugiat esse qui.\r\n", "registered": "2014-09-18T13:24:12-12:00", "latitude": -85.711678, "longitude": 6.308222, "tags": [ "laboris", "incididunt", "dolore", "aliqua", "ea", "consectetur", "veniam" ], "friends": [ { "id": 0, "name": "Lorna Morris" }, { "id": 1, "name": "Renee Gentry" }, { "id": 2, "name": "Michael Estes" } ], "greeting": "Hello, Ward Jimenez! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26e22755c694327630", "index": 3037, "guid": "be7e7fd4-3b3b-4ceb-9b71-75137753beef", "isActive": false, "balance": "$2,854.53", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Earline Tate", "gender": "female", "company": "MICRONAUT", "email": "earlinetate@micronaut.com", "phone": "+1 (825) 506-3740", "address": "594 Locust Avenue, Cornucopia, Michigan, 7881", "about": "Cillum consequat deserunt ex nisi sint officia exercitation mollit nulla cillum. Ad exercitation ipsum anim tempor pariatur do do consequat do eiusmod incididunt. Sunt veniam sit duis velit consequat enim do occaecat labore excepteur ullamco. Sunt voluptate consectetur fugiat officia consequat do voluptate nulla sunt ullamco magna laboris. Nulla eu pariatur voluptate esse quis cupidatat id enim do velit qui ex voluptate et. Duis aute duis magna excepteur aute sunt adipisicing tempor labore mollit deserunt ex.\r\n", "registered": "2014-03-10T04:59:41-13:00", "latitude": -81.101286, "longitude": -114.463797, "tags": [ "est", "ipsum", "velit", "proident", "officia", "consequat", "veniam" ], "friends": [ { "id": 0, "name": "Wilder Tyson" }, { "id": 1, "name": "Wolf Stanton" }, { "id": 2, "name": "Wanda Pope" } ], "greeting": "Hello, Earline Tate! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26c6c140a78bb40827", "index": 3038, "guid": "2dcec274-df0b-484a-a5aa-1aefad2db20b", "isActive": false, "balance": "$1,015.64", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Staci Galloway", "gender": "female", "company": "EXOTECHNO", "email": "stacigalloway@exotechno.com", "phone": "+1 (838) 501-2273", "address": "963 Gerry Street, Beaulieu, Kansas, 1633", "about": "Id sunt ea velit aliqua dolore ea sunt deserunt exercitation elit do. Ullamco Lorem ex officia laboris adipisicing veniam. In adipisicing nisi et ea duis incididunt id dolore quis duis incididunt. Dolore eu est magna minim ea. Proident do est cillum ut. Eiusmod ex ullamco ad occaecat eu quis qui exercitation mollit nulla nulla dolore aliquip non. Sint commodo dolor est deserunt est.\r\n", "registered": "2014-03-15T20:02:27-13:00", "latitude": -81.564001, "longitude": -55.605887, "tags": [ "veniam", "aliquip", "ad", "incididunt", "esse", "do", "deserunt" ], "friends": [ { "id": 0, "name": "Tanisha Compton" }, { "id": 1, "name": "Daphne Morgan" }, { "id": 2, "name": "Sandy Meadows" } ], "greeting": "Hello, Staci Galloway! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2680d6d02c9a68db6e", "index": 3039, "guid": "6c9550ec-9dc1-400c-bd69-c48e7ef765b3", "isActive": true, "balance": "$3,110.14", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Nannie Paul", "gender": "female", "company": "MANGELICA", "email": "nanniepaul@mangelica.com", "phone": "+1 (920) 518-2809", "address": "260 Stryker Court, Murillo, South Dakota, 6344", "about": "Est elit eiusmod esse mollit amet anim Lorem nostrud ex officia proident ad laborum in. Deserunt eiusmod consequat nisi ullamco anim ad magna qui. Cupidatat aliquip irure exercitation ullamco consectetur eu. Irure in Lorem minim est amet do incididunt. Magna adipisicing nisi aliqua veniam dolor consequat proident sunt laborum minim consequat eu. Consequat proident ea aute consectetur est cupidatat ut officia incididunt veniam. Reprehenderit tempor nisi id esse excepteur quis consequat consectetur tempor cillum.\r\n", "registered": "2014-08-05T20:31:23-12:00", "latitude": -69.868107, "longitude": 81.947879, "tags": [ "adipisicing", "excepteur", "aute", "sit", "voluptate", "aliqua", "minim" ], "friends": [ { "id": 0, "name": "Fuller Browning" }, { "id": 1, "name": "Crane Knapp" }, { "id": 2, "name": "Rosalyn Santos" } ], "greeting": "Hello, Nannie Paul! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2610e9c55cc5c864d7", "index": 3040, "guid": "70f6eaad-d584-41dc-b15e-97856a718222", "isActive": false, "balance": "$3,328.01", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Lesa Frank", "gender": "female", "company": "CHORIZON", "email": "lesafrank@chorizon.com", "phone": "+1 (885) 549-3547", "address": "999 Varanda Place, Edgar, West Virginia, 9375", "about": "Ipsum culpa culpa exercitation aute nisi voluptate fugiat. Officia dolor exercitation ad velit enim. Irure commodo excepteur deserunt exercitation officia incididunt in deserunt amet excepteur reprehenderit laboris ea duis.\r\n", "registered": "2014-07-08T04:41:44-12:00", "latitude": -63.426928, "longitude": 14.218942, "tags": [ "commodo", "nulla", "consectetur", "nulla", "commodo", "pariatur", "magna" ], "friends": [ { "id": 0, "name": "Robertson Bird" }, { "id": 1, "name": "Barnett Bryan" }, { "id": 2, "name": "Paulette Joyce" } ], "greeting": "Hello, Lesa Frank! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea267678716514d2488f", "index": 3041, "guid": "32cc2fa6-9430-4247-a376-f3484dd421e1", "isActive": false, "balance": "$1,418.00", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Mcintyre Wilcox", "gender": "male", "company": "IMMUNICS", "email": "mcintyrewilcox@immunics.com", "phone": "+1 (899) 576-2383", "address": "198 Vanderbilt Street, Catharine, Texas, 4193", "about": "Amet exercitation commodo officia labore Lorem commodo Lorem mollit. Nostrud officia velit fugiat cupidatat amet minim reprehenderit aliqua reprehenderit cillum anim consequat commodo velit. Consectetur ut sint duis Lorem cillum. Sunt et ullamco exercitation adipisicing sunt elit mollit culpa cupidatat consequat.\r\n", "registered": "2014-03-11T18:47:23-13:00", "latitude": -60.39749, "longitude": 164.8413, "tags": [ "id", "mollit", "ad", "ea", "pariatur", "qui", "ex" ], "friends": [ { "id": 0, "name": "Hallie Dawson" }, { "id": 1, "name": "Myers Glover" }, { "id": 2, "name": "Isabelle Mcknight" } ], "greeting": "Hello, Mcintyre Wilcox! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2693b9a6fcde31f7ec", "index": 3042, "guid": "2a9be904-2d2f-4c90-9874-012be0711572", "isActive": true, "balance": "$3,870.92", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Vance Harris", "gender": "male", "company": "ENERVATE", "email": "vanceharris@enervate.com", "phone": "+1 (976) 585-3788", "address": "194 Wolcott Street, Oberlin, Oregon, 761", "about": "Est ullamco velit non laborum ut. Tempor ad cillum mollit nisi laboris ad elit do in aliqua. Proident elit minim pariatur Lorem dolor cillum ullamco cillum est incididunt. Duis nulla consequat sunt sit voluptate culpa excepteur anim non et pariatur voluptate. Eu do velit do ut nulla. Proident non sint enim in exercitation ex minim.\r\n", "registered": "2014-07-14T12:41:31-12:00", "latitude": 49.265296, "longitude": 67.969642, "tags": [ "laborum", "deserunt", "sint", "amet", "velit", "magna", "laborum" ], "friends": [ { "id": 0, "name": "Head Price" }, { "id": 1, "name": "Vilma Mckee" }, { "id": 2, "name": "Cheryl Mcguire" } ], "greeting": "Hello, Vance Harris! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26d483c2fce6c0602c", "index": 3043, "guid": "e96179cf-769d-45b9-bc8c-0aa0243c87cf", "isActive": true, "balance": "$2,717.36", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Tracie Gray", "gender": "female", "company": "RONBERT", "email": "traciegray@ronbert.com", "phone": "+1 (939) 450-3979", "address": "445 Macon Street, Denio, Nevada, 698", "about": "Velit voluptate culpa consectetur eiusmod sit aliquip veniam sint magna officia in eu. Excepteur ut magna ex labore ullamco dolor nisi tempor veniam ut. Quis laborum aliquip id mollit minim eiusmod id occaecat quis excepteur Lorem. Laborum aliquip mollit reprehenderit anim aliquip reprehenderit pariatur. Sunt officia eu esse reprehenderit eiusmod esse laborum duis ex esse aute et irure. Aliqua est velit Lorem in veniam amet est sint officia. Eiusmod proident id sunt aliqua tempor fugiat.\r\n", "registered": "2014-07-08T23:28:24-12:00", "latitude": -87.081789, "longitude": -68.653284, "tags": [ "officia", "proident", "aute", "laboris", "laboris", "culpa", "anim" ], "friends": [ { "id": 0, "name": "Gould Sheppard" }, { "id": 1, "name": "Lindsey Kaufman" }, { "id": 2, "name": "Harding Chavez" } ], "greeting": "Hello, Tracie Gray! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26276f6de320dc038c", "index": 3044, "guid": "177af68f-ffe7-43fa-a1d1-3a339d0a2afb", "isActive": false, "balance": "$1,780.53", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Rose Nichols", "gender": "female", "company": "ZILLANET", "email": "rosenichols@zillanet.com", "phone": "+1 (815) 460-2014", "address": "321 Quentin Street, Calvary, Minnesota, 462", "about": "In adipisicing Lorem et cillum irure laboris culpa nostrud. Ullamco laborum culpa aliqua occaecat voluptate. In voluptate deserunt nisi reprehenderit do incididunt eiusmod pariatur sit deserunt aute dolor. Aliqua est aliquip excepteur anim eiusmod ea amet officia excepteur elit incididunt ea cupidatat. Labore consectetur veniam deserunt deserunt ullamco minim ullamco eiusmod sunt adipisicing mollit tempor labore aliquip.\r\n", "registered": "2014-04-15T02:48:17-12:00", "latitude": 10.165866, "longitude": 13.10096, "tags": [ "est", "est", "aliquip", "irure", "in", "ullamco", "amet" ], "friends": [ { "id": 0, "name": "Sherri Mathews" }, { "id": 1, "name": "Norris Young" }, { "id": 2, "name": "Evans Santana" } ], "greeting": "Hello, Rose Nichols! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2659f73e317f251a89", "index": 3045, "guid": "7ac05b2b-7fa4-4b2c-bb43-4c30a3dd55f9", "isActive": false, "balance": "$1,328.74", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Dionne Mcneil", "gender": "female", "company": "CORMORAN", "email": "dionnemcneil@cormoran.com", "phone": "+1 (819) 402-3075", "address": "910 Jamaica Avenue, Wakarusa, Missouri, 4731", "about": "Occaecat proident elit amet aliquip. Laboris id sunt sunt et excepteur do nulla. Laboris irure pariatur sint dolore labore.\r\n", "registered": "2014-06-18T19:23:56-12:00", "latitude": 70.910124, "longitude": -153.865383, "tags": [ "Lorem", "fugiat", "nulla", "cillum", "officia", "esse", "amet" ], "friends": [ { "id": 0, "name": "Ana Lang" }, { "id": 1, "name": "Melody Obrien" }, { "id": 2, "name": "Armstrong Todd" } ], "greeting": "Hello, Dionne Mcneil! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26ae6b5d80a9f2a9af", "index": 3046, "guid": "0f91b6f6-1ddb-43c3-ade6-6376790975c5", "isActive": false, "balance": "$3,779.74", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Rosa Holcomb", "gender": "female", "company": "YOGASM", "email": "rosaholcomb@yogasm.com", "phone": "+1 (920) 408-3643", "address": "172 Wakeman Place, Gouglersville, Rhode Island, 822", "about": "Non culpa aliqua nostrud Lorem. Nulla sunt in elit nulla deserunt laborum. Dolor laborum pariatur nisi veniam fugiat incididunt magna. Laborum consectetur reprehenderit Lorem est reprehenderit elit id amet consequat sint aliquip consectetur quis. Deserunt ipsum esse fugiat do. Voluptate ullamco excepteur consectetur in elit aliquip ipsum do. Non do irure dolor ullamco aliqua cupidatat qui aliquip dolor.\r\n", "registered": "2014-07-15T08:26:20-12:00", "latitude": -42.48261, "longitude": 128.775778, "tags": [ "officia", "irure", "quis", "do", "proident", "sit", "ea" ], "friends": [ { "id": 0, "name": "Lynch Bolton" }, { "id": 1, "name": "Nikki Wise" }, { "id": 2, "name": "Nora Humphrey" } ], "greeting": "Hello, Rosa Holcomb! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea262bb6639895470141", "index": 3047, "guid": "96591109-a295-4196-9caa-bba7aa3331ff", "isActive": false, "balance": "$3,686.09", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Maddox Mclean", "gender": "male", "company": "EMTRAK", "email": "maddoxmclean@emtrak.com", "phone": "+1 (959) 580-3449", "address": "264 Just Court, Hendersonville, Florida, 1741", "about": "Aliquip sit dolor eu dolor veniam elit. Qui id mollit aute dolor ullamco esse aliquip cupidatat Lorem veniam. Ea consequat est Lorem consequat est amet id aute reprehenderit est.\r\n", "registered": "2014-09-16T14:53:37-12:00", "latitude": 22.706993, "longitude": 110.962682, "tags": [ "tempor", "irure", "ex", "sint", "aliqua", "nostrud", "id" ], "friends": [ { "id": 0, "name": "Carlene Calhoun" }, { "id": 1, "name": "Maria Carroll" }, { "id": 2, "name": "Emily Little" } ], "greeting": "Hello, Maddox Mclean! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2605f63ed385d9c745", "index": 3048, "guid": "4480edbd-337d-4e6c-a2a2-97c548c35696", "isActive": false, "balance": "$3,374.84", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Burt Adkins", "gender": "male", "company": "ORBIN", "email": "burtadkins@orbin.com", "phone": "+1 (823) 444-2994", "address": "168 Elm Avenue, Martinsville, North Carolina, 5227", "about": "Lorem culpa esse sint id dolor culpa sit mollit culpa. Labore anim eu nisi nisi labore ut magna dolore nisi nostrud elit ullamco labore. Laboris est veniam irure deserunt consequat nostrud aliqua qui.\r\n", "registered": "2014-03-29T20:37:01-13:00", "latitude": 21.373707, "longitude": -136.585268, "tags": [ "nostrud", "id", "mollit", "occaecat", "pariatur", "proident", "sint" ], "friends": [ { "id": 0, "name": "Goodman Alvarado" }, { "id": 1, "name": "Meyer Wiggins" }, { "id": 2, "name": "Laura Oneal" } ], "greeting": "Hello, Burt Adkins! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2663b65d9b2750e1d0", "index": 3049, "guid": "5b9eb693-e3df-49f5-b3cd-055d796ba7cd", "isActive": false, "balance": "$1,470.89", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Hester Lopez", "gender": "female", "company": "QUANTALIA", "email": "hesterlopez@quantalia.com", "phone": "+1 (897) 463-3037", "address": "570 Apollo Street, Blackgum, New Hampshire, 7674", "about": "Irure ullamco aute eiusmod proident excepteur ipsum aliquip pariatur velit do. Officia anim duis magna magna Lorem Lorem. Ullamco nostrud ea labore eu exercitation ipsum exercitation quis. Enim duis laborum veniam eiusmod commodo irure fugiat. Duis ipsum pariatur magna occaecat commodo commodo sint aute velit minim voluptate labore. Nisi adipisicing voluptate laborum laborum consectetur esse reprehenderit non non occaecat esse mollit aliquip laboris. Ex est consequat sit mollit amet consectetur sunt non fugiat aliquip duis dolore culpa.\r\n", "registered": "2014-05-26T17:49:59-12:00", "latitude": -39.696557, "longitude": 11.88733, "tags": [ "velit", "enim", "adipisicing", "exercitation", "proident", "nisi", "adipisicing" ], "friends": [ { "id": 0, "name": "Elsa Osborn" }, { "id": 1, "name": "Ashlee Duran" }, { "id": 2, "name": "Winnie Russo" } ], "greeting": "Hello, Hester Lopez! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2662c9c41d0ba1dbc7", "index": 3050, "guid": "fa31b068-53b4-4128-9583-34f092e92d2b", "isActive": false, "balance": "$1,670.37", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Aida Moran", "gender": "female", "company": "SOPRANO", "email": "aidamoran@soprano.com", "phone": "+1 (997) 451-3027", "address": "190 John Street, Marbury, Arkansas, 3681", "about": "Occaecat laborum Lorem tempor dolore. Consectetur magna sunt fugiat aute sunt consectetur ut anim sit aute ipsum labore. Ad anim pariatur sit exercitation est ea.\r\n", "registered": "2014-03-17T21:55:21-13:00", "latitude": -79.268622, "longitude": -19.990619, "tags": [ "laborum", "laborum", "est", "sint", "laborum", "nostrud", "dolor" ], "friends": [ { "id": 0, "name": "Mccoy Rios" }, { "id": 1, "name": "Emilia Rivas" }, { "id": 2, "name": "Rivera Leblanc" } ], "greeting": "Hello, Aida Moran! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2668b72ffe9090477f", "index": 3051, "guid": "dada11ec-cd3d-48ce-9eae-0937a6502147", "isActive": false, "balance": "$3,953.31", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Ester Navarro", "gender": "female", "company": "APPLIDECK", "email": "esternavarro@applideck.com", "phone": "+1 (928) 424-2811", "address": "592 Metropolitan Avenue, Zeba, Iowa, 250", "about": "Est sunt nulla dolor reprehenderit sunt deserunt dolore qui. Consectetur sunt ad mollit exercitation est aute irure officia amet dolore adipisicing. Tempor duis do Lorem ut. Adipisicing esse est ullamco consectetur dolore adipisicing sunt commodo adipisicing pariatur sint ut. Anim labore labore do amet labore esse proident dolor fugiat id. Elit nisi sit dolor qui ad dolore voluptate. Id et fugiat labore anim amet nulla et ea excepteur.\r\n", "registered": "2014-08-03T21:40:40-12:00", "latitude": 55.518886, "longitude": 33.151811, "tags": [ "ex", "culpa", "irure", "voluptate", "proident", "duis", "irure" ], "friends": [ { "id": 0, "name": "Mara Pratt" }, { "id": 1, "name": "Tamika Mercer" }, { "id": 2, "name": "Bullock Chan" } ], "greeting": "Hello, Ester Navarro! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26c0155f1235439e40", "index": 3052, "guid": "b4868728-4de7-45d3-9191-848ba938ff9e", "isActive": false, "balance": "$2,777.46", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Roslyn Carter", "gender": "female", "company": "ROOFORIA", "email": "roslyncarter@rooforia.com", "phone": "+1 (842) 454-3544", "address": "986 Seagate Avenue, Orason, Nebraska, 9391", "about": "Ex quis ipsum cillum ea amet pariatur dolor reprehenderit pariatur mollit aute. Cillum velit sit irure aliquip ipsum incididunt irure cillum enim laboris sint. Eu deserunt consectetur minim sint dolor consequat aliqua enim labore velit. In nostrud sit consequat ex ullamco ea exercitation. Labore elit ad irure dolor aliqua amet labore. Consectetur ad ex cupidatat proident dolor irure tempor sit ea duis.\r\n", "registered": "2014-07-07T22:17:56-12:00", "latitude": 44.144075, "longitude": 163.519802, "tags": [ "exercitation", "duis", "mollit", "laboris", "enim", "adipisicing", "velit" ], "friends": [ { "id": 0, "name": "Francine Cantu" }, { "id": 1, "name": "Black Alvarez" }, { "id": 2, "name": "Jerri Benjamin" } ], "greeting": "Hello, Roslyn Carter! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea269f4dbb02502671dc", "index": 3053, "guid": "ab415ef6-ecaf-4c6a-af33-76709569836d", "isActive": false, "balance": "$2,266.31", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Amber Strickland", "gender": "female", "company": "COWTOWN", "email": "amberstrickland@cowtown.com", "phone": "+1 (935) 419-2171", "address": "660 Fenimore Street, Indio, District Of Columbia, 5219", "about": "Nulla sit reprehenderit officia veniam ipsum. Anim nulla dolor sint magna commodo labore laborum. Officia proident nostrud velit minim sit irure quis sint non. Id eiusmod ipsum ipsum ex. Qui reprehenderit ullamco commodo esse exercitation. Exercitation sunt amet exercitation cupidatat eiusmod in cillum exercitation est consectetur quis deserunt est.\r\n", "registered": "2014-01-26T17:48:05-13:00", "latitude": -25.586656, "longitude": -178.559862, "tags": [ "consectetur", "mollit", "do", "sunt", "incididunt", "tempor", "irure" ], "friends": [ { "id": 0, "name": "Swanson Schroeder" }, { "id": 1, "name": "Hendricks Barker" }, { "id": 2, "name": "Carolyn Schultz" } ], "greeting": "Hello, Amber Strickland! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea268ef023db774bae86", "index": 3054, "guid": "c38b0e2e-c793-42ae-92ba-22fd3fab76af", "isActive": true, "balance": "$1,399.52", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Billie Torres", "gender": "female", "company": "LINGOAGE", "email": "billietorres@lingoage.com", "phone": "+1 (825) 560-2925", "address": "878 Glen Street, Wescosville, New Jersey, 858", "about": "Mollit veniam velit tempor amet et amet fugiat sint nisi magna incididunt commodo amet. Sunt ullamco esse et excepteur cillum anim. Sint velit exercitation et ut. Cillum in nulla officia est ut ipsum duis excepteur magna velit occaecat officia velit. Irure tempor magna aliqua nisi ullamco dolore aliqua pariatur in amet culpa.\r\n", "registered": "2014-02-23T16:50:53-13:00", "latitude": -26.866545, "longitude": -143.484605, "tags": [ "excepteur", "amet", "ut", "est", "culpa", "dolore", "quis" ], "friends": [ { "id": 0, "name": "Amelia Boyd" }, { "id": 1, "name": "Dixon Franco" }, { "id": 2, "name": "Janine Houston" } ], "greeting": "Hello, Billie Torres! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26c1d4d246f7bc7b1e", "index": 3055, "guid": "9e36eff3-60e3-4099-8413-73816689a6aa", "isActive": true, "balance": "$2,952.04", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Ochoa Ratliff", "gender": "male", "company": "ZENSUS", "email": "ochoaratliff@zensus.com", "phone": "+1 (945) 437-2763", "address": "994 Radde Place, Orovada, Palau, 4378", "about": "Ex labore labore sunt in. Est cillum dolore magna quis et proident tempor commodo. Consectetur deserunt eiusmod officia dolore magna dolore commodo aliquip in occaecat aliqua voluptate consectetur adipisicing.\r\n", "registered": "2014-07-14T09:13:43-12:00", "latitude": 10.816051, "longitude": 76.449658, "tags": [ "aliqua", "anim", "mollit", "cillum", "minim", "veniam", "officia" ], "friends": [ { "id": 0, "name": "Elliott Benton" }, { "id": 1, "name": "Gonzales Roman" }, { "id": 2, "name": "Caroline Schneider" } ], "greeting": "Hello, Ochoa Ratliff! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26ad2d8ef611a28bad", "index": 3056, "guid": "c6ec1256-eae7-43a9-982e-0b8e17335382", "isActive": true, "balance": "$3,998.72", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Minerva Brady", "gender": "female", "company": "EXOTERIC", "email": "minervabrady@exoteric.com", "phone": "+1 (998) 489-3393", "address": "991 Kings Hwy, Bennett, Puerto Rico, 5690", "about": "Qui minim amet ea velit mollit nisi aliqua commodo veniam non. Id sunt fugiat commodo anim laborum aute anim fugiat tempor exercitation. Officia ex labore dolore occaecat.\r\n", "registered": "2014-05-16T14:37:28-12:00", "latitude": 27.546598, "longitude": 168.039698, "tags": [ "tempor", "sunt", "consequat", "velit", "ipsum", "aute", "ipsum" ], "friends": [ { "id": 0, "name": "Francesca Shannon" }, { "id": 1, "name": "Roach Coleman" }, { "id": 2, "name": "Medina Ochoa" } ], "greeting": "Hello, Minerva Brady! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26b5e67a7d4abb8b33", "index": 3057, "guid": "a94b0e7c-4084-4b40-a3c4-512122c266e7", "isActive": false, "balance": "$1,835.20", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Holt Mcclain", "gender": "male", "company": "PHARMEX", "email": "holtmcclain@pharmex.com", "phone": "+1 (800) 595-3078", "address": "293 Vanderveer Street, Shasta, California, 2098", "about": "Ad est id exercitation ea sint et officia excepteur. Tempor veniam ut dolor id nostrud. Anim aute elit eiusmod Lorem minim commodo. Id eu ea esse ad deserunt ullamco ea. Non adipisicing sunt aute anim eu cupidatat Lorem ex fugiat occaecat ut. Consequat id fugiat amet incididunt voluptate ad laborum eiusmod.\r\n", "registered": "2014-07-11T12:12:12-12:00", "latitude": 82.225089, "longitude": 126.245835, "tags": [ "non", "dolore", "do", "pariatur", "cillum", "quis", "nulla" ], "friends": [ { "id": 0, "name": "Mariana Lowe" }, { "id": 1, "name": "Mitzi Hardin" }, { "id": 2, "name": "Maggie Watkins" } ], "greeting": "Hello, Holt Mcclain! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26663e49215dedf63c", "index": 3058, "guid": "a32b3d1c-3245-4b50-bbc3-2106d55f974e", "isActive": true, "balance": "$3,130.64", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Elena Good", "gender": "female", "company": "COMBOT", "email": "elenagood@combot.com", "phone": "+1 (931) 552-3586", "address": "364 Gunnison Court, Trinway, Vermont, 137", "about": "Elit eiusmod culpa fugiat adipisicing cillum sint anim. Consectetur officia cillum officia veniam. Culpa pariatur Lorem minim consectetur incididunt exercitation pariatur eiusmod elit do ad. Mollit commodo consequat exercitation deserunt eu ea commodo esse eiusmod pariatur ullamco minim. Eiusmod proident mollit anim ullamco dolor esse sunt. Culpa incididunt consectetur minim ex culpa. Ut fugiat amet mollit deserunt dolor.\r\n", "registered": "2014-08-29T20:03:32-12:00", "latitude": -20.25354, "longitude": -26.325748, "tags": [ "cupidatat", "non", "nisi", "sint", "ea", "sit", "qui" ], "friends": [ { "id": 0, "name": "Ann Cohen" }, { "id": 1, "name": "Sweeney Gamble" }, { "id": 2, "name": "Barrera Haynes" } ], "greeting": "Hello, Elena Good! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26d476382ad585a5a2", "index": 3059, "guid": "5b4dc041-7218-4f08-8d77-ccacf57a37c1", "isActive": true, "balance": "$1,521.39", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Moon Gibson", "gender": "male", "company": "NEPTIDE", "email": "moongibson@neptide.com", "phone": "+1 (890) 447-3642", "address": "662 Tompkins Place, Riviera, Indiana, 5502", "about": "Quis commodo ipsum dolor fugiat ex deserunt ea dolor irure in sint esse do. In exercitation voluptate pariatur nostrud in adipisicing laboris laborum. Occaecat magna mollit anim velit fugiat qui cillum enim.\r\n", "registered": "2014-02-03T07:51:44-13:00", "latitude": -84.834166, "longitude": -99.42213, "tags": [ "proident", "cupidatat", "cupidatat", "elit", "eiusmod", "magna", "aliquip" ], "friends": [ { "id": 0, "name": "Inez Roth" }, { "id": 1, "name": "Hays Camacho" }, { "id": 2, "name": "Lynda Branch" } ], "greeting": "Hello, Moon Gibson! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26a99e5800481ea148", "index": 3060, "guid": "9d96730c-3ff3-4052-be03-35c34d6f0391", "isActive": true, "balance": "$1,271.51", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Lee Fuller", "gender": "female", "company": "ZILLAN", "email": "leefuller@zillan.com", "phone": "+1 (931) 464-3430", "address": "174 Stratford Road, Fostoria, Illinois, 8578", "about": "Sit veniam nisi consequat cupidatat exercitation duis excepteur aute incididunt ut ipsum eiusmod. Pariatur et exercitation incididunt quis duis anim sint aliqua. Ut consectetur irure incididunt est est. Duis culpa voluptate voluptate consequat cillum ipsum. Esse incididunt Lorem ut laborum reprehenderit amet incididunt tempor commodo est aliquip ut minim. Lorem adipisicing cupidatat enim eu ea enim ipsum excepteur.\r\n", "registered": "2014-08-27T05:29:01-12:00", "latitude": -61.028355, "longitude": -77.7415, "tags": [ "enim", "tempor", "eiusmod", "id", "proident", "aliquip", "ut" ], "friends": [ { "id": 0, "name": "Schneider Holden" }, { "id": 1, "name": "Jennifer Butler" }, { "id": 2, "name": "Wagner Horton" } ], "greeting": "Hello, Lee Fuller! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26dcb3d7d1a9edbaa2", "index": 3061, "guid": "ebaeb9cc-3ffe-49d2-9cd1-4af4fb5fbbb1", "isActive": false, "balance": "$3,805.13", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Stark Molina", "gender": "male", "company": "ELECTONIC", "email": "starkmolina@electonic.com", "phone": "+1 (888) 600-2574", "address": "856 Robert Street, Sultana, South Carolina, 6822", "about": "Labore labore excepteur id voluptate aliquip reprehenderit eiusmod. Adipisicing id velit sunt minim nisi. Lorem duis ex commodo esse ut eiusmod reprehenderit excepteur sunt ipsum.\r\n", "registered": "2014-01-30T22:20:18-13:00", "latitude": -13.2306, "longitude": -123.087984, "tags": [ "nulla", "sint", "est", "ut", "ullamco", "incididunt", "amet" ], "friends": [ { "id": 0, "name": "William Le" }, { "id": 1, "name": "Spears Summers" }, { "id": 2, "name": "Campos Gardner" } ], "greeting": "Hello, Stark Molina! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26f31aa5ae7a759896", "index": 3062, "guid": "44898987-a12d-4a77-aa31-4ae23af83db3", "isActive": true, "balance": "$3,573.99", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Waller Wallace", "gender": "male", "company": "PETIGEMS", "email": "wallerwallace@petigems.com", "phone": "+1 (942) 592-2469", "address": "930 Clarendon Road, Vicksburg, American Samoa, 1477", "about": "Et incididunt fugiat culpa anim ipsum Lorem. Qui ipsum cillum exercitation est duis tempor id deserunt esse ea id non sunt. Excepteur excepteur consectetur duis quis elit exercitation nisi officia enim. Duis veniam laborum reprehenderit officia deserunt sint non cillum fugiat ad ex. Nostrud est aliqua eiusmod eiusmod qui velit amet. Ut et incididunt aliqua et in enim fugiat aliquip. Esse exercitation velit laboris nostrud consequat ut et enim reprehenderit.\r\n", "registered": "2014-04-23T22:47:19-12:00", "latitude": -79.68231, "longitude": -42.851991, "tags": [ "eu", "culpa", "velit", "excepteur", "ea", "qui", "cillum" ], "friends": [ { "id": 0, "name": "Chambers Johnson" }, { "id": 1, "name": "Merle Conner" }, { "id": 2, "name": "Riley Finch" } ], "greeting": "Hello, Waller Wallace! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26e1e5214e0d2b4a29", "index": 3063, "guid": "a7a2872c-e5a8-40d6-bb2c-7941ea9c38e2", "isActive": false, "balance": "$2,438.88", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Clements Haney", "gender": "male", "company": "EGYPTO", "email": "clementshaney@egypto.com", "phone": "+1 (813) 441-2936", "address": "315 Indiana Place, Moscow, Delaware, 7452", "about": "Veniam eu mollit ut amet consequat. Aute occaecat commodo esse consequat Lorem in. Exercitation minim irure enim id eiusmod ullamco excepteur ex. Velit ad reprehenderit laboris cillum dolor deserunt ut dolore qui amet deserunt ullamco. Ad excepteur eu labore non. Aute quis adipisicing nostrud eu sint id proident commodo.\r\n", "registered": "2014-06-05T07:02:36-12:00", "latitude": -58.764742, "longitude": 161.232068, "tags": [ "eiusmod", "ut", "est", "esse", "nostrud", "incididunt", "tempor" ], "friends": [ { "id": 0, "name": "Kirsten Martin" }, { "id": 1, "name": "Wheeler Crosby" }, { "id": 2, "name": "Elvia Lloyd" } ], "greeting": "Hello, Clements Haney! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea266e81f207a7a76beb", "index": 3064, "guid": "cbf62c08-6246-463b-8cbb-670e2a712cf8", "isActive": false, "balance": "$2,219.82", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Anita Lester", "gender": "female", "company": "CINASTER", "email": "anitalester@cinaster.com", "phone": "+1 (963) 577-2661", "address": "423 Haring Street, Waverly, Pennsylvania, 6760", "about": "Adipisicing cupidatat tempor enim nisi qui incididunt cupidatat ullamco occaecat ut fugiat. In do est velit eu pariatur sint magna aute aute sit dolor proident qui. Do fugiat pariatur tempor ad qui id cillum dolor enim aute.\r\n", "registered": "2014-07-11T19:30:06-12:00", "latitude": 56.193419, "longitude": -122.930977, "tags": [ "ullamco", "in", "nostrud", "voluptate", "cillum", "fugiat", "aliqua" ], "friends": [ { "id": 0, "name": "Brandy Whitfield" }, { "id": 1, "name": "Adams Evans" }, { "id": 2, "name": "Haney Blackburn" } ], "greeting": "Hello, Anita Lester! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2638a58923e51f83cb", "index": 3065, "guid": "c39da8a1-c679-40a3-a008-71853eb1f53b", "isActive": false, "balance": "$2,755.44", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Millie Walter", "gender": "female", "company": "NIXELT", "email": "milliewalter@nixelt.com", "phone": "+1 (923) 581-3114", "address": "329 Kaufman Place, Wedgewood, Georgia, 9564", "about": "Labore deserunt anim adipisicing nulla aliqua minim occaecat esse esse deserunt. Cillum Lorem Lorem incididunt qui nisi do. Minim officia adipisicing fugiat sit aliqua magna sit Lorem exercitation. Nisi minim ullamco mollit aute eu aliquip consequat do. Qui excepteur officia id dolore veniam dolor pariatur proident consectetur. Veniam ex eiusmod ex laborum veniam cillum qui duis cillum cupidatat sit proident. Incididunt veniam adipisicing et duis aliquip magna ullamco ut aute.\r\n", "registered": "2014-02-17T05:24:53-13:00", "latitude": 48.507643, "longitude": 128.739898, "tags": [ "do", "esse", "eu", "enim", "mollit", "Lorem", "est" ], "friends": [ { "id": 0, "name": "Jasmine Underwood" }, { "id": 1, "name": "Estelle William" }, { "id": 2, "name": "Sanford Mccarty" } ], "greeting": "Hello, Millie Walter! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2655a19ea878981684", "index": 3066, "guid": "2a7bfbe0-b837-4492-afd9-84ddae6cb7b8", "isActive": true, "balance": "$1,917.96", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Tania Mullins", "gender": "female", "company": "ROBOID", "email": "taniamullins@roboid.com", "phone": "+1 (919) 459-2494", "address": "168 Lincoln Place, Summerset, North Dakota, 6529", "about": "Et incididunt dolore nostrud ipsum. Non aute nulla non consectetur qui ullamco. Sunt ea minim id ut excepteur velit velit minim minim proident enim tempor nostrud ex. Dolor consectetur veniam culpa exercitation ea do consequat proident nisi magna aliqua cillum minim.\r\n", "registered": "2014-05-17T17:58:40-12:00", "latitude": 85.896082, "longitude": -71.321213, "tags": [ "incididunt", "anim", "occaecat", "exercitation", "excepteur", "veniam", "nulla" ], "friends": [ { "id": 0, "name": "Donovan Sweet" }, { "id": 1, "name": "Antoinette Watts" }, { "id": 2, "name": "Alexander Moreno" } ], "greeting": "Hello, Tania Mullins! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26fe1193faa7eeb6b1", "index": 3067, "guid": "62b2ac6b-26e0-445f-8dff-4b691c5664bb", "isActive": true, "balance": "$2,771.22", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Iva Mcmillan", "gender": "female", "company": "SNOWPOKE", "email": "ivamcmillan@snowpoke.com", "phone": "+1 (934) 447-3759", "address": "967 Kings Place, Springdale, Louisiana, 5816", "about": "Proident irure nulla sit irure cupidatat amet ullamco. Ullamco quis sint excepteur minim aliqua ex consectetur veniam consectetur exercitation. Qui laborum ea deserunt fugiat.\r\n", "registered": "2014-09-21T00:35:02-12:00", "latitude": -7.825811, "longitude": -133.887914, "tags": [ "labore", "minim", "pariatur", "dolor", "officia", "labore", "ad" ], "friends": [ { "id": 0, "name": "Corrine Greer" }, { "id": 1, "name": "Courtney Barron" }, { "id": 2, "name": "Levine Flynn" } ], "greeting": "Hello, Iva Mcmillan! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2624c98b7afef28467", "index": 3068, "guid": "c2688b14-1621-4809-9a78-b16a938f4a6e", "isActive": false, "balance": "$3,746.43", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Peters Rasmussen", "gender": "male", "company": "SOLGAN", "email": "petersrasmussen@solgan.com", "phone": "+1 (984) 581-3151", "address": "140 Branton Street, Glenbrook, Northern Mariana Islands, 3329", "about": "Ea nisi nisi nisi fugiat qui. Deserunt aliqua dolor quis nostrud eiusmod incididunt ullamco id qui aliquip. Ex consequat aliqua elit laborum incididunt anim aute nisi duis quis labore. Ex qui proident consectetur adipisicing sit sunt nisi laborum esse aliqua elit sit. Elit ullamco ea est qui adipisicing amet in pariatur consectetur incididunt.\r\n", "registered": "2014-09-08T22:28:49-12:00", "latitude": -36.870506, "longitude": 19.140246, "tags": [ "ad", "amet", "pariatur", "ex", "labore", "commodo", "aliquip" ], "friends": [ { "id": 0, "name": "Hartman Carson" }, { "id": 1, "name": "Charles Michael" }, { "id": 2, "name": "Annmarie Bond" } ], "greeting": "Hello, Peters Rasmussen! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2682c9fbee7e037a86", "index": 3069, "guid": "cd71acb3-27ce-460b-8c33-0f9f5a0d6bb2", "isActive": false, "balance": "$2,149.00", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Claire Banks", "gender": "female", "company": "EURON", "email": "clairebanks@euron.com", "phone": "+1 (838) 412-3150", "address": "381 Dahl Court, Chautauqua, Colorado, 6399", "about": "Duis fugiat nostrud adipisicing aliquip aute non officia. Aute et anim labore minim magna reprehenderit est pariatur culpa sit. Nulla reprehenderit enim id ullamco pariatur eiusmod et magna deserunt ut ex cupidatat.\r\n", "registered": "2014-03-03T04:39:43-13:00", "latitude": 22.188422, "longitude": 145.186232, "tags": [ "voluptate", "excepteur", "eiusmod", "et", "consectetur", "enim", "ipsum" ], "friends": [ { "id": 0, "name": "Mills Conley" }, { "id": 1, "name": "Charmaine Riddle" }, { "id": 2, "name": "Nelson Rosa" } ], "greeting": "Hello, Claire Banks! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26873e502370824b81", "index": 3070, "guid": "37ce9861-5a8f-45c2-b00d-24b972aa4232", "isActive": true, "balance": "$2,367.11", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Jacquelyn Palmer", "gender": "female", "company": "VENOFLEX", "email": "jacquelynpalmer@venoflex.com", "phone": "+1 (835) 594-2073", "address": "312 Rockaway Avenue, Jackpot, Idaho, 4502", "about": "Irure sit aute est aliquip ipsum et officia fugiat fugiat pariatur consequat nisi duis dolor. Do mollit eiusmod eiusmod id eu exercitation deserunt exercitation excepteur incididunt nostrud elit. Laborum nulla reprehenderit esse mollit ipsum id nulla magna officia laboris ea. Consectetur in ea excepteur sunt aliquip id esse exercitation incididunt exercitation cupidatat minim non velit.\r\n", "registered": "2014-06-07T11:48:03-12:00", "latitude": 4.598883, "longitude": -30.077814, "tags": [ "qui", "in", "sit", "sunt", "duis", "eu", "qui" ], "friends": [ { "id": 0, "name": "Estes Mckenzie" }, { "id": 1, "name": "Vazquez Koch" }, { "id": 2, "name": "Kent Goodman" } ], "greeting": "Hello, Jacquelyn Palmer! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2626e4628b00d2fdbe", "index": 3071, "guid": "e26ea49b-69f9-4c8c-ab81-10facbacad18", "isActive": false, "balance": "$2,277.61", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Michele Ray", "gender": "female", "company": "GOLOGY", "email": "micheleray@gology.com", "phone": "+1 (920) 452-3463", "address": "587 Forest Place, Abrams, Marshall Islands, 9128", "about": "Veniam occaecat tempor veniam culpa. Velit tempor veniam veniam enim sint laborum laboris velit eu ex exercitation in irure magna. Aute officia nisi labore tempor id consectetur irure aute ex nisi. Commodo nisi aute adipisicing laborum consequat officia cupidatat adipisicing esse incididunt consectetur.\r\n", "registered": "2014-07-24T23:15:08-12:00", "latitude": 19.604926, "longitude": 65.15385, "tags": [ "incididunt", "deserunt", "voluptate", "nostrud", "consequat", "velit", "ullamco" ], "friends": [ { "id": 0, "name": "Blankenship Bradshaw" }, { "id": 1, "name": "Beverley King" }, { "id": 2, "name": "Parsons Bender" } ], "greeting": "Hello, Michele Ray! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea268eb1b51011e891ea", "index": 3072, "guid": "28e70029-fb59-45e6-beb3-7bb8b09a8747", "isActive": true, "balance": "$1,370.89", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Gibson Garza", "gender": "male", "company": "PATHWAYS", "email": "gibsongarza@pathways.com", "phone": "+1 (989) 451-2262", "address": "770 Henderson Walk, Sutton, New York, 5778", "about": "Labore magna ea laboris adipisicing. Fugiat esse mollit tempor aute eiusmod elit reprehenderit adipisicing esse nostrud consequat. Ut qui veniam cillum voluptate esse sunt ex sint. Tempor anim cupidatat dolore consectetur pariatur et minim incididunt irure. Aliquip mollit duis minim duis ad dolor exercitation est. Id ex ullamco do commodo cillum duis eu aute eiusmod officia non ea. Do elit culpa cillum elit occaecat incididunt tempor dolor ad ullamco.\r\n", "registered": "2014-01-16T23:37:27-13:00", "latitude": -21.500461, "longitude": 37.738964, "tags": [ "cillum", "sint", "exercitation", "aute", "do", "in", "magna" ], "friends": [ { "id": 0, "name": "Josephine Nolan" }, { "id": 1, "name": "Kenya Cote" }, { "id": 2, "name": "Imelda Delacruz" } ], "greeting": "Hello, Gibson Garza! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea262ed01142f0cbee9e", "index": 3073, "guid": "6118a03a-37e0-4a78-a3f0-1619630cd00e", "isActive": false, "balance": "$3,509.79", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Powell Sanders", "gender": "male", "company": "FARMAGE", "email": "powellsanders@farmage.com", "phone": "+1 (990) 557-3833", "address": "545 Kane Place, Gibbsville, Guam, 8418", "about": "Anim nisi cupidatat tempor nulla tempor amet mollit do quis eiusmod commodo tempor eu. Adipisicing anim et sint ipsum officia nulla et sit ex velit sit et amet excepteur. Minim mollit proident sint commodo proident consequat laborum deserunt duis esse dolore culpa. Duis commodo proident mollit id labore laborum. Pariatur est excepteur nulla cupidatat sint quis non ex aliqua proident dolore non ut veniam. Ea dolore velit qui reprehenderit dolore exercitation nostrud aliqua. Lorem esse reprehenderit Lorem qui sunt sunt eiusmod.\r\n", "registered": "2014-02-23T18:37:10-13:00", "latitude": -17.053508, "longitude": -57.910163, "tags": [ "veniam", "qui", "aliqua", "occaecat", "ad", "voluptate", "in" ], "friends": [ { "id": 0, "name": "Althea Ewing" }, { "id": 1, "name": "Rosetta Sexton" }, { "id": 2, "name": "Patty Salinas" } ], "greeting": "Hello, Powell Sanders! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea265616d3bc733936f5", "index": 3074, "guid": "a2f19906-0afa-451c-9f38-d949dc20bd10", "isActive": false, "balance": "$2,382.99", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Vinson Alexander", "gender": "male", "company": "BITENDREX", "email": "vinsonalexander@bitendrex.com", "phone": "+1 (977) 453-2059", "address": "759 Woods Place, Hanover, Virgin Islands, 6428", "about": "Quis duis Lorem minim voluptate et magna sint sit velit cillum. Sit do excepteur proident deserunt aliquip cillum esse proident Lorem ut in est qui incididunt. Tempor ex non adipisicing deserunt velit adipisicing duis elit duis.\r\n", "registered": "2014-06-09T17:43:54-12:00", "latitude": 55.320402, "longitude": -14.80399, "tags": [ "ea", "duis", "ea", "eu", "pariatur", "fugiat", "dolore" ], "friends": [ { "id": 0, "name": "Gail Lane" }, { "id": 1, "name": "Johanna Kline" }, { "id": 2, "name": "Webb Lowery" } ], "greeting": "Hello, Vinson Alexander! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26d1441c1212dec92e", "index": 3075, "guid": "15ad23b5-2364-481c-a901-3644341e04ed", "isActive": false, "balance": "$3,458.26", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Rivas Dodson", "gender": "male", "company": "PARAGONIA", "email": "rivasdodson@paragonia.com", "phone": "+1 (939) 492-4000", "address": "865 Belmont Avenue, Brooktrails, Massachusetts, 5601", "about": "Anim in tempor aliqua duis fugiat dolore commodo ea excepteur veniam dolore ullamco labore voluptate. Ea ex irure ea cupidatat ad magna culpa cillum in esse. Ex ullamco proident incididunt ad fugiat reprehenderit sint incididunt labore quis anim eu. Eiusmod magna amet et consequat ut.\r\n", "registered": "2014-04-10T19:06:35-12:00", "latitude": 14.130783, "longitude": 134.884152, "tags": [ "sunt", "ex", "culpa", "dolor", "sunt", "fugiat", "excepteur" ], "friends": [ { "id": 0, "name": "Delia Russell" }, { "id": 1, "name": "Catherine Reese" }, { "id": 2, "name": "Celeste Short" } ], "greeting": "Hello, Rivas Dodson! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2668074b8751d042cd", "index": 3076, "guid": "4cd27f50-35ad-43fe-a024-d778c9a01dc7", "isActive": true, "balance": "$2,823.93", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Baxter Cameron", "gender": "male", "company": "QUONK", "email": "baxtercameron@quonk.com", "phone": "+1 (860) 400-2222", "address": "897 Jackson Court, Fairforest, Utah, 8431", "about": "Voluptate ea qui reprehenderit aliqua ad sunt veniam ad est irure aliqua et dolore. Fugiat amet elit voluptate aliquip amet magna esse tempor magna ut anim. Aliqua proident eiusmod ullamco ullamco mollit sit. Dolore excepteur nostrud consectetur adipisicing pariatur ipsum culpa commodo veniam ullamco anim laborum pariatur.\r\n", "registered": "2014-07-10T12:03:22-12:00", "latitude": 79.441458, "longitude": -135.994206, "tags": [ "ullamco", "labore", "velit", "culpa", "duis", "do", "occaecat" ], "friends": [ { "id": 0, "name": "Ines Lawrence" }, { "id": 1, "name": "John Small" }, { "id": 2, "name": "Farley Wilkins" } ], "greeting": "Hello, Baxter Cameron! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26c4d090feba1afb35", "index": 3077, "guid": "af509d46-e404-4fd6-99e4-7666dc692ee8", "isActive": true, "balance": "$1,501.50", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Krystal Frye", "gender": "female", "company": "XEREX", "email": "krystalfrye@xerex.com", "phone": "+1 (811) 489-3329", "address": "453 Boerum Street, Frystown, Montana, 4334", "about": "Proident est ipsum qui officia cillum duis enim anim minim do adipisicing anim. Eu eu reprehenderit deserunt ex laboris amet cillum aute mollit pariatur. Incididunt dolore excepteur tempor dolore ipsum enim nulla aliqua laboris sint nostrud. Excepteur qui anim consequat do in cupidatat id nisi reprehenderit.\r\n", "registered": "2014-08-02T00:00:30-12:00", "latitude": -62.583358, "longitude": -20.419708, "tags": [ "sit", "veniam", "adipisicing", "labore", "irure", "enim", "voluptate" ], "friends": [ { "id": 0, "name": "Nell Medina" }, { "id": 1, "name": "Miranda Terry" }, { "id": 2, "name": "Blackwell Mccullough" } ], "greeting": "Hello, Krystal Frye! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26913c48f81e32d3fe", "index": 3078, "guid": "861fb7da-8ece-4cfd-9b80-539707701114", "isActive": true, "balance": "$3,021.78", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Mendoza Manning", "gender": "male", "company": "FANFARE", "email": "mendozamanning@fanfare.com", "phone": "+1 (990) 468-3399", "address": "295 Hegeman Avenue, Harold, Wisconsin, 5175", "about": "Proident esse cillum duis consequat do ullamco. Veniam reprehenderit eu occaecat aute sint veniam do veniam qui laborum aliquip cillum in Lorem. Sint sunt enim in ea do cillum dolore. Occaecat velit esse eiusmod sint fugiat id veniam.\r\n", "registered": "2014-05-01T05:27:33-12:00", "latitude": 14.640857, "longitude": 92.646114, "tags": [ "adipisicing", "nulla", "ea", "cillum", "excepteur", "irure", "labore" ], "friends": [ { "id": 0, "name": "Erna Langley" }, { "id": 1, "name": "Ortiz Jackson" }, { "id": 2, "name": "Talley Grant" } ], "greeting": "Hello, Mendoza Manning! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea268f3ffa426ab5047b", "index": 3079, "guid": "2de1073b-6847-469a-acf0-7e43ff8a4d86", "isActive": true, "balance": "$3,628.22", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Leigh Hatfield", "gender": "female", "company": "TROPOLI", "email": "leighhatfield@tropoli.com", "phone": "+1 (905) 499-3791", "address": "803 Kermit Place, Oasis, Maine, 1733", "about": "Esse eiusmod magna labore aute ut magna occaecat ut ipsum labore ea laboris nostrud. Incididunt nulla et veniam sunt aute tempor anim dolor irure. Laborum deserunt ea et ea amet sint consequat dolore Lorem culpa amet commodo. Lorem dolore excepteur exercitation mollit nulla veniam ad adipisicing anim culpa dolor consectetur qui.\r\n", "registered": "2014-08-07T07:18:17-12:00", "latitude": 61.512211, "longitude": 176.150336, "tags": [ "pariatur", "sint", "est", "minim", "nisi", "consequat", "laborum" ], "friends": [ { "id": 0, "name": "Callie Hodges" }, { "id": 1, "name": "Margarita Trevino" }, { "id": 2, "name": "Elise Thornton" } ], "greeting": "Hello, Leigh Hatfield! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2616d057bbd351df05", "index": 3080, "guid": "6862a7df-635d-43f4-9c34-b3293e6086e2", "isActive": true, "balance": "$3,611.19", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Therese Kelley", "gender": "female", "company": "PROWASTE", "email": "theresekelley@prowaste.com", "phone": "+1 (979) 588-2569", "address": "306 Louisa Street, Tilleda, Virginia, 7748", "about": "Dolor fugiat eiusmod nulla labore ut laborum magna veniam sint ipsum dolor dolore qui. Eu nostrud veniam ut adipisicing sit. Adipisicing nostrud sunt consectetur tempor ex proident adipisicing cillum excepteur voluptate nulla.\r\n", "registered": "2014-05-12T06:27:59-12:00", "latitude": -84.884364, "longitude": -69.181479, "tags": [ "nostrud", "voluptate", "nostrud", "do", "laborum", "deserunt", "amet" ], "friends": [ { "id": 0, "name": "Sophie Joseph" }, { "id": 1, "name": "Navarro Stephens" }, { "id": 2, "name": "Summers Norman" } ], "greeting": "Hello, Therese Kelley! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26b8ead885dda2226b", "index": 3081, "guid": "7aadde7f-f8c4-4289-be13-5cc2c6bfa9e3", "isActive": true, "balance": "$2,295.54", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Mcgee Nash", "gender": "male", "company": "ZENCO", "email": "mcgeenash@zenco.com", "phone": "+1 (889) 462-2706", "address": "223 Hunterfly Place, Layhill, Kentucky, 9747", "about": "Officia officia laborum eu Lorem velit ullamco anim do ut velit labore eu qui incididunt. Lorem pariatur dolore consequat ullamco aliqua culpa in ea quis non deserunt. Occaecat Lorem do minim quis eiusmod. Tempor ex tempor adipisicing commodo qui ipsum dolore.\r\n", "registered": "2014-09-21T07:05:32-12:00", "latitude": -76.012128, "longitude": -162.930911, "tags": [ "elit", "culpa", "eu", "anim", "est", "tempor", "nostrud" ], "friends": [ { "id": 0, "name": "Maryanne Gibbs" }, { "id": 1, "name": "Frye Foreman" }, { "id": 2, "name": "Hollie Leon" } ], "greeting": "Hello, Mcgee Nash! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2636cdeb57cd96019e", "index": 3082, "guid": "fba0aaea-ae5f-4453-a164-b09bb004aa7a", "isActive": false, "balance": "$2,819.04", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Marjorie Holt", "gender": "female", "company": "NETPLAX", "email": "marjorieholt@netplax.com", "phone": "+1 (801) 428-2037", "address": "283 Juliana Place, Iola, Connecticut, 3479", "about": "Non id deserunt voluptate dolor ea laborum laborum irure. Exercitation incididunt eiusmod excepteur culpa eu anim dolore ex ut. Velit pariatur velit velit ad est duis aliquip deserunt ullamco do sit proident duis. Culpa do ex qui Lorem mollit velit eu adipisicing culpa aliqua laborum.\r\n", "registered": "2014-07-24T05:35:39-12:00", "latitude": -42.009603, "longitude": 116.902489, "tags": [ "deserunt", "occaecat", "sit", "pariatur", "dolore", "dolore", "occaecat" ], "friends": [ { "id": 0, "name": "Lara Griffin" }, { "id": 1, "name": "Fulton Sutton" }, { "id": 2, "name": "Pearl Woodard" } ], "greeting": "Hello, Marjorie Holt! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2648afb56534c26cf8", "index": 3083, "guid": "fa3e4be9-f66a-488a-9ea9-35f1f0741509", "isActive": false, "balance": "$1,047.92", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Wood Larsen", "gender": "male", "company": "ZIPAK", "email": "woodlarsen@zipak.com", "phone": "+1 (980) 404-2317", "address": "884 Wythe Avenue, Boling, Mississippi, 8396", "about": "Aliquip est tempor aute tempor adipisicing elit magna. Deserunt id cillum magna ad mollit aliquip est eu sunt et. Sit dolor laboris sit incididunt consectetur ad culpa. Do excepteur anim et ea sint magna sit culpa dolore duis. Aute consequat anim veniam cillum qui nostrud.\r\n", "registered": "2014-01-11T05:11:43-13:00", "latitude": 60.438421, "longitude": 90.275318, "tags": [ "ullamco", "ea", "consequat", "dolor", "enim", "reprehenderit", "labore" ], "friends": [ { "id": 0, "name": "Guerra Parks" }, { "id": 1, "name": "Good Benson" }, { "id": 2, "name": "Charity Jefferson" } ], "greeting": "Hello, Wood Larsen! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26a64bfdf498af4d95", "index": 3084, "guid": "ccef62a5-aae1-4840-9a61-3cbde8435e2b", "isActive": false, "balance": "$1,659.52", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Mamie Ruiz", "gender": "female", "company": "PARCOE", "email": "mamieruiz@parcoe.com", "phone": "+1 (802) 479-3529", "address": "751 Bainbridge Street, Rosine, Washington, 9443", "about": "Consectetur velit aliqua fugiat tempor ea consequat in quis reprehenderit tempor sit. Commodo ad reprehenderit deserunt ullamco magna culpa ad ullamco. Id et esse in elit cillum occaecat esse exercitation adipisicing non amet. Nisi amet consectetur anim eiusmod ea Lorem culpa velit non irure incididunt voluptate sit cupidatat.\r\n", "registered": "2014-03-29T22:51:31-13:00", "latitude": 65.151346, "longitude": -74.13237, "tags": [ "nulla", "est", "minim", "ipsum", "sit", "consectetur", "elit" ], "friends": [ { "id": 0, "name": "Bettie Mclaughlin" }, { "id": 1, "name": "Sheryl Bernard" }, { "id": 2, "name": "Rosanne Bonner" } ], "greeting": "Hello, Mamie Ruiz! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2624844f0653c33842", "index": 3085, "guid": "95cbc150-dd78-4919-b955-791a58d38631", "isActive": false, "balance": "$2,170.02", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Sandoval Fischer", "gender": "male", "company": "ANARCO", "email": "sandovalfischer@anarco.com", "phone": "+1 (822) 448-2796", "address": "770 Richmond Street, Hannasville, Tennessee, 1739", "about": "Amet ea consectetur tempor veniam ad laborum pariatur dolore est dolore non nulla culpa ex. Magna dolore excepteur laborum do enim non irure consequat do ex proident voluptate quis. Excepteur consequat ipsum ut adipisicing officia proident ut esse.\r\n", "registered": "2014-03-22T01:54:01-13:00", "latitude": -12.698696, "longitude": -71.086009, "tags": [ "esse", "cillum", "proident", "quis", "sit", "excepteur", "aliquip" ], "friends": [ { "id": 0, "name": "Molina Whitney" }, { "id": 1, "name": "Hyde Conway" }, { "id": 2, "name": "Maude Patton" } ], "greeting": "Hello, Sandoval Fischer! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea262c25671eb82f1ced", "index": 3086, "guid": "78702744-57d9-45bb-a142-4a5efe22b103", "isActive": false, "balance": "$1,157.37", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Abigail Hahn", "gender": "female", "company": "EYEWAX", "email": "abigailhahn@eyewax.com", "phone": "+1 (930) 453-2946", "address": "609 Nixon Court, Dennard, Alabama, 2072", "about": "Id eu sit dolor cillum aliquip qui cupidatat consequat. Deserunt voluptate nulla laborum voluptate occaecat in ea. Pariatur officia mollit adipisicing in do magna id. Exercitation do dolor nisi cupidatat consectetur dolore magna cillum ea Lorem enim quis est nostrud. Culpa consectetur cupidatat adipisicing qui ea in mollit proident cupidatat sint culpa amet ex. Esse duis enim ullamco duis nostrud pariatur Lorem. Qui amet ad occaecat adipisicing sunt ut officia velit ad.\r\n", "registered": "2014-02-16T15:27:41-13:00", "latitude": 66.900967, "longitude": 130.146321, "tags": [ "magna", "nisi", "reprehenderit", "sint", "esse", "tempor", "deserunt" ], "friends": [ { "id": 0, "name": "Haynes Mcpherson" }, { "id": 1, "name": "Latonya Cabrera" }, { "id": 2, "name": "Stone Sanchez" } ], "greeting": "Hello, Abigail Hahn! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2610e362aab569bf6e", "index": 3087, "guid": "4c6e3faf-7c04-4d6b-9d7e-577b257e51b1", "isActive": true, "balance": "$3,426.39", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Ivy Davidson", "gender": "female", "company": "SUPPORTAL", "email": "ivydavidson@supportal.com", "phone": "+1 (975) 490-3681", "address": "206 Georgia Avenue, Hayes, Ohio, 8233", "about": "Consectetur voluptate elit veniam consectetur deserunt elit minim deserunt. Cupidatat nostrud officia reprehenderit minim labore laboris non. Commodo enim nostrud eiusmod do commodo anim ullamco ad.\r\n", "registered": "2014-04-16T11:51:48-12:00", "latitude": -77.737773, "longitude": 100.956316, "tags": [ "occaecat", "minim", "cupidatat", "sunt", "pariatur", "est", "laborum" ], "friends": [ { "id": 0, "name": "Eula Preston" }, { "id": 1, "name": "Carla Williams" }, { "id": 2, "name": "Cornelia Reilly" } ], "greeting": "Hello, Ivy Davidson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26c39a24a04bf002e4", "index": 3088, "guid": "1055f1c2-fb72-4115-b118-b8385dad2733", "isActive": false, "balance": "$2,286.22", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Noelle Jacobson", "gender": "female", "company": "CORECOM", "email": "noellejacobson@corecom.com", "phone": "+1 (970) 503-2599", "address": "129 Fair Street, Winchester, Hawaii, 9496", "about": "Ea anim ullamco ex quis velit ut velit ullamco sit. Dolore esse pariatur ipsum quis. Adipisicing cillum dolor est ipsum laborum magna.\r\n", "registered": "2014-07-29T10:30:41-12:00", "latitude": -88.620585, "longitude": -111.813093, "tags": [ "aliqua", "qui", "in", "proident", "sit", "esse", "non" ], "friends": [ { "id": 0, "name": "Walls Jones" }, { "id": 1, "name": "Lilia Bennett" }, { "id": 2, "name": "Leslie Quinn" } ], "greeting": "Hello, Noelle Jacobson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26499a82b6e9f697a5", "index": 3089, "guid": "0979e3d8-c6fe-409e-a22b-ab6c77e2b977", "isActive": true, "balance": "$1,436.60", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Bruce Zimmerman", "gender": "male", "company": "ISOLOGIA", "email": "brucezimmerman@isologia.com", "phone": "+1 (908) 598-3795", "address": "397 Seeley Street, Townsend, New Mexico, 1224", "about": "Est nostrud ullamco adipisicing in magna fugiat esse minim nisi commodo. Eiusmod sunt voluptate Lorem occaecat ut labore irure non laboris ullamco id tempor esse. Labore non consectetur ipsum eu ex nulla proident. Consequat exercitation officia irure occaecat ex duis nulla veniam. Nulla consectetur magna dolore esse amet commodo nostrud in minim ex duis anim irure consectetur. Reprehenderit nostrud ipsum do nulla est in.\r\n", "registered": "2014-04-16T20:23:21-12:00", "latitude": 43.630465, "longitude": 82.087004, "tags": [ "consequat", "officia", "Lorem", "occaecat", "ad", "dolor", "id" ], "friends": [ { "id": 0, "name": "Booth Cruz" }, { "id": 1, "name": "Hunt Moody" }, { "id": 2, "name": "Blake Barton" } ], "greeting": "Hello, Bruce Zimmerman! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea269d786b71ddfd2c96", "index": 3090, "guid": "8b8cae8b-8bdf-4f34-aa62-85c38bc9b6cc", "isActive": true, "balance": "$3,787.75", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Zelma Ayala", "gender": "female", "company": "CENTREE", "email": "zelmaayala@centree.com", "phone": "+1 (867) 571-2218", "address": "403 Hudson Avenue, Keyport, Maryland, 658", "about": "Consequat sunt ullamco elit magna fugiat. Incididunt consequat fugiat laborum tempor nulla. Dolor reprehenderit aliqua pariatur aliqua non cillum esse sit.\r\n", "registered": "2014-09-02T08:47:48-12:00", "latitude": -14.3018, "longitude": 51.072784, "tags": [ "reprehenderit", "aute", "ad", "velit", "excepteur", "duis", "proident" ], "friends": [ { "id": 0, "name": "Vickie Workman" }, { "id": 1, "name": "Roman Hopper" }, { "id": 2, "name": "Morton Turner" } ], "greeting": "Hello, Zelma Ayala! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea260b0d911b9019a4ca", "index": 3091, "guid": "ae90f538-6b05-4177-8d88-a58497e23c93", "isActive": true, "balance": "$3,202.54", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Trevino Shaffer", "gender": "male", "company": "GYNKO", "email": "trevinoshaffer@gynko.com", "phone": "+1 (891) 505-2354", "address": "465 Highlawn Avenue, Brenton, Alaska, 1559", "about": "Anim quis incididunt enim proident dolore velit est esse commodo occaecat tempor consequat. Elit proident consequat pariatur non minim officia officia nisi labore labore aliqua amet aliquip esse. Excepteur commodo sunt deserunt reprehenderit laboris pariatur ea nisi tempor.\r\n", "registered": "2014-09-12T04:05:47-12:00", "latitude": 22.378961, "longitude": -55.906443, "tags": [ "proident", "aliquip", "quis", "occaecat", "et", "do", "ipsum" ], "friends": [ { "id": 0, "name": "Julianne Miranda" }, { "id": 1, "name": "Augusta Cash" }, { "id": 2, "name": "Munoz Randall" } ], "greeting": "Hello, Trevino Shaffer! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26028f794d5809f58a", "index": 3092, "guid": "8e763a31-180f-41cc-9aec-96658e3cfbdb", "isActive": false, "balance": "$2,206.27", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Sheppard Drake", "gender": "male", "company": "BIOHAB", "email": "shepparddrake@biohab.com", "phone": "+1 (817) 438-2197", "address": "581 Bills Place, Hoagland, Arizona, 6914", "about": "Fugiat esse sunt irure voluptate aliqua nostrud ullamco minim dolor nisi cupidatat qui id. Ut magna enim exercitation aliquip anim laborum. Nulla commodo esse adipisicing in commodo eiusmod incididunt. Minim minim commodo quis tempor dolor eiusmod dolor. Commodo officia ut aute nisi consectetur minim. Enim commodo nisi ex enim aute non ipsum. Adipisicing elit quis eu magna sit elit mollit veniam duis Lorem anim.\r\n", "registered": "2014-03-29T16:00:42-13:00", "latitude": -34.199828, "longitude": 63.862465, "tags": [ "tempor", "excepteur", "sint", "ex", "laboris", "consectetur", "officia" ], "friends": [ { "id": 0, "name": "Angie Calderon" }, { "id": 1, "name": "Eunice Mckinney" }, { "id": 2, "name": "Diann Estrada" } ], "greeting": "Hello, Sheppard Drake! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea268f2f4ee3d6632641", "index": 3093, "guid": "f7c42a01-15b3-49fd-ac20-7566f40667d2", "isActive": true, "balance": "$1,416.25", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Clayton Weaver", "gender": "male", "company": "VERAQ", "email": "claytonweaver@veraq.com", "phone": "+1 (953) 492-2321", "address": "687 Empire Boulevard, Tedrow, Federated States Of Micronesia, 6528", "about": "Ad in tempor fugiat amet anim laborum est consectetur culpa ea laboris. Officia consequat proident anim elit aliquip exercitation nostrud Lorem deserunt veniam. Exercitation nostrud officia cupidatat ex irure ea. Veniam laborum cupidatat est in proident consequat labore esse. Veniam pariatur nulla anim consectetur nulla.\r\n", "registered": "2014-09-07T13:43:26-12:00", "latitude": -20.243992, "longitude": 18.484023, "tags": [ "labore", "ut", "cillum", "excepteur", "enim", "consequat", "adipisicing" ], "friends": [ { "id": 0, "name": "Turner Welch" }, { "id": 1, "name": "Travis Durham" }, { "id": 2, "name": "Hannah Woodward" } ], "greeting": "Hello, Clayton Weaver! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26a82d6ba390ba2d6f", "index": 3094, "guid": "e9cbb25e-efcf-4eac-a07e-d37824a96861", "isActive": true, "balance": "$2,749.31", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Krista Fowler", "gender": "female", "company": "CORIANDER", "email": "kristafowler@coriander.com", "phone": "+1 (856) 445-3801", "address": "469 Herkimer Place, Byrnedale, Oklahoma, 6352", "about": "Anim reprehenderit cillum ad consectetur laborum. Magna veniam aliqua aute sunt non aliqua pariatur laboris. Ad sit laboris tempor esse fugiat sit mollit non elit ut nisi occaecat. Minim veniam voluptate eiusmod in Lorem aute.\r\n", "registered": "2014-03-29T15:42:44-13:00", "latitude": -3.461703, "longitude": 178.240688, "tags": [ "magna", "amet", "enim", "proident", "sit", "laborum", "aute" ], "friends": [ { "id": 0, "name": "Jody Holloway" }, { "id": 1, "name": "Jaime Britt" }, { "id": 2, "name": "Schwartz Berg" } ], "greeting": "Hello, Krista Fowler! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea263cade66a59c1a367", "index": 3095, "guid": "d44e5a31-ceff-4f65-ab37-6920f047776e", "isActive": true, "balance": "$3,366.67", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Jacobs Moss", "gender": "male", "company": "APEX", "email": "jacobsmoss@apex.com", "phone": "+1 (886) 479-3167", "address": "902 Nova Court, Basye, Michigan, 2421", "about": "Consequat eu laborum sunt Lorem adipisicing eiusmod nulla et enim velit pariatur. Velit et culpa et eu nulla incididunt ea amet duis sunt ut. Minim esse sit elit exercitation fugiat deserunt ea. Sit voluptate velit voluptate ut minim deserunt labore anim in cillum sint. Nulla laboris qui in non consequat dolor ullamco.\r\n", "registered": "2014-09-15T19:12:41-12:00", "latitude": -8.163081, "longitude": 117.819019, "tags": [ "reprehenderit", "consectetur", "veniam", "consequat", "minim", "in", "ullamco" ], "friends": [ { "id": 0, "name": "Welch Stark" }, { "id": 1, "name": "Carpenter Mendoza" }, { "id": 2, "name": "Virginia Harrison" } ], "greeting": "Hello, Jacobs Moss! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea267d8819f0decc178f", "index": 3096, "guid": "afabc48a-8450-4f02-a627-fefc5f2a4a9d", "isActive": false, "balance": "$1,633.15", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Reyna Dickerson", "gender": "female", "company": "EVEREST", "email": "reynadickerson@everest.com", "phone": "+1 (987) 574-2544", "address": "202 Adams Street, Irwin, Kansas, 3204", "about": "Exercitation sunt esse ea veniam ut enim commodo do exercitation et ut consectetur proident ut. Dolor labore cupidatat ut cillum cillum. Cillum et nostrud esse qui minim dolore aute. Voluptate labore sit laborum fugiat dolor ea elit duis duis ipsum sit sint. Anim ullamco aliquip id nostrud adipisicing incididunt dolore ad laboris non ut duis nostrud.\r\n", "registered": "2014-07-19T17:03:02-12:00", "latitude": -66.961148, "longitude": 174.280706, "tags": [ "in", "amet", "eiusmod", "in", "veniam", "sit", "do" ], "friends": [ { "id": 0, "name": "Blair Arnold" }, { "id": 1, "name": "Taylor Rodriquez" }, { "id": 2, "name": "Palmer Guy" } ], "greeting": "Hello, Reyna Dickerson! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea269f04cb91c541118c", "index": 3097, "guid": "0f7e3a64-c1b4-49a5-9dde-1e1da927890c", "isActive": false, "balance": "$3,813.24", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "King Vang", "gender": "male", "company": "ROCKYARD", "email": "kingvang@rockyard.com", "phone": "+1 (968) 533-2447", "address": "855 Maujer Street, Emison, South Dakota, 2558", "about": "Ipsum labore reprehenderit voluptate tempor voluptate reprehenderit ut laborum cillum eu minim officia sint. Aute quis ea do nulla reprehenderit reprehenderit est. Commodo dolor sint voluptate commodo ex. Duis eiusmod dolor consectetur amet ad esse consequat do do aliquip. Ipsum dolor tempor irure occaecat minim laborum consequat ullamco. Non dolor aute sunt ullamco est Lorem dolore elit duis culpa laborum proident. Aliqua do ipsum eu mollit non veniam dolor.\r\n", "registered": "2014-01-16T16:48:41-13:00", "latitude": 31.324753, "longitude": -99.473164, "tags": [ "exercitation", "irure", "quis", "mollit", "anim", "enim", "anim" ], "friends": [ { "id": 0, "name": "Michelle Lynn" }, { "id": 1, "name": "Kathleen York" }, { "id": 2, "name": "Kaye Erickson" } ], "greeting": "Hello, King Vang! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2640cb302e651246ec", "index": 3098, "guid": "80e7fc9a-02a0-462f-8f03-403f2005be27", "isActive": false, "balance": "$2,820.74", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Shari Fields", "gender": "female", "company": "PASTURIA", "email": "sharifields@pasturia.com", "phone": "+1 (963) 461-3577", "address": "213 Willoughby Street, Norris, West Virginia, 2454", "about": "Est occaecat velit eiusmod consequat veniam. Minim ullamco laborum dolore tempor minim et qui laborum. Voluptate do ullamco excepteur aliquip. Laboris laboris id qui exercitation incididunt tempor cillum non consequat.\r\n", "registered": "2014-05-01T21:59:45-12:00", "latitude": 45.979545, "longitude": -130.241272, "tags": [ "proident", "do", "elit", "sunt", "incididunt", "qui", "ea" ], "friends": [ { "id": 0, "name": "Lucinda Aguilar" }, { "id": 1, "name": "Marshall Gomez" }, { "id": 2, "name": "Avis Stewart" } ], "greeting": "Hello, Shari Fields! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26c3dc8fe6ad614fb7", "index": 3099, "guid": "012dfaf2-20d8-4ad5-9443-26a97c763aac", "isActive": true, "balance": "$1,506.98", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Joseph Foster", "gender": "male", "company": "KRAGGLE", "email": "josephfoster@kraggle.com", "phone": "+1 (847) 436-3738", "address": "292 Middagh Street, Mulberry, Texas, 9403", "about": "Pariatur est elit irure duis est eiusmod eiusmod ad esse non eu anim fugiat. Excepteur elit ut esse consequat proident. Do in Lorem voluptate tempor sunt incididunt minim occaecat ipsum do. Duis elit quis ex culpa. Esse id commodo velit magna aliqua ullamco dolor tempor commodo do exercitation.\r\n", "registered": "2014-08-18T19:11:22-12:00", "latitude": -2.289046, "longitude": -107.24129, "tags": [ "consectetur", "est", "mollit", "esse", "aute", "ad", "aliquip" ], "friends": [ { "id": 0, "name": "Andrews Pacheco" }, { "id": 1, "name": "Marcie Rodgers" }, { "id": 2, "name": "Gomez Meyers" } ], "greeting": "Hello, Joseph Foster! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2624ed7dfcb298feac", "index": 3100, "guid": "fb12ffd7-63e7-4af3-bb22-96241f892a20", "isActive": true, "balance": "$1,379.78", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Johns Roach", "gender": "male", "company": "EXOPLODE", "email": "johnsroach@exoplode.com", "phone": "+1 (887) 436-3562", "address": "209 Nichols Avenue, Jacksonburg, Oregon, 2024", "about": "Excepteur non velit do et in qui laborum proident eiusmod qui officia. Laborum qui magna cupidatat ipsum nisi. Enim fugiat velit veniam laboris commodo.\r\n", "registered": "2014-07-31T01:10:07-12:00", "latitude": 60.869409, "longitude": 85.289527, "tags": [ "occaecat", "ipsum", "occaecat", "nulla", "sint", "excepteur", "cillum" ], "friends": [ { "id": 0, "name": "Young Gallegos" }, { "id": 1, "name": "Marcella Stokes" }, { "id": 2, "name": "Kelley Marks" } ], "greeting": "Hello, Johns Roach! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26471c2e83d931b590", "index": 3101, "guid": "d93a90ab-28f6-469f-890f-1cf76fd69f04", "isActive": true, "balance": "$1,477.21", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Leon Woods", "gender": "male", "company": "HATOLOGY", "email": "leonwoods@hatology.com", "phone": "+1 (844) 552-2528", "address": "981 Moultrie Street, Rodanthe, Nevada, 4656", "about": "Mollit ea aute eiusmod nulla tempor id dolore ex culpa amet dolor labore minim. Cillum duis velit tempor non id officia id ex velit. Eiusmod adipisicing nisi officia adipisicing. Tempor eu sunt laborum esse do minim qui duis ut do sunt culpa nostrud velit. Consectetur eu laborum ex est do id commodo laboris aliquip tempor consectetur sint. Voluptate voluptate minim cillum commodo nisi anim cupidatat nostrud non ullamco ipsum cillum ea. Eiusmod dolore esse excepteur sunt voluptate.\r\n", "registered": "2014-06-20T08:25:11-12:00", "latitude": 83.406828, "longitude": 80.184653, "tags": [ "officia", "irure", "ullamco", "deserunt", "sint", "Lorem", "anim" ], "friends": [ { "id": 0, "name": "Jayne Briggs" }, { "id": 1, "name": "Walton Serrano" }, { "id": 2, "name": "Santiago Cooper" } ], "greeting": "Hello, Leon Woods! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea263d8e6cf3516e206b", "index": 3102, "guid": "60dfad06-2c5a-47ca-964e-8d3b91d8d1fc", "isActive": false, "balance": "$1,169.54", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Frost Floyd", "gender": "male", "company": "GENEKOM", "email": "frostfloyd@genekom.com", "phone": "+1 (813) 491-2326", "address": "925 Turner Place, Sunwest, Minnesota, 5937", "about": "Magna ut consequat tempor nostrud adipisicing non est excepteur laboris excepteur id. Sit nisi irure occaecat sunt qui nisi labore dolore ea nisi consectetur fugiat officia. Lorem excepteur deserunt velit exercitation enim labore esse culpa in culpa. Sit dolor est aliqua occaecat. Cupidatat cillum irure incididunt ullamco magna esse occaecat id reprehenderit reprehenderit. Aliquip nisi ut anim minim sit tempor.\r\n", "registered": "2014-09-23T15:03:52-12:00", "latitude": 14.97339, "longitude": 53.143679, "tags": [ "ad", "dolore", "culpa", "est", "ut", "sint", "Lorem" ], "friends": [ { "id": 0, "name": "Laverne Stevenson" }, { "id": 1, "name": "Isabella Sargent" }, { "id": 2, "name": "Kristine Johnston" } ], "greeting": "Hello, Frost Floyd! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26c58c80650067175b", "index": 3103, "guid": "e68ff046-a281-417d-846b-2444d37c4b70", "isActive": true, "balance": "$2,291.23", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Susanna Valenzuela", "gender": "female", "company": "HARMONEY", "email": "susannavalenzuela@harmoney.com", "phone": "+1 (970) 596-2850", "address": "166 Havens Place, Longbranch, Missouri, 7147", "about": "Adipisicing tempor quis cillum ipsum aute quis nisi nulla pariatur irure commodo. Ipsum ipsum aute exercitation ex eu consequat et. Sint enim enim enim nulla consequat id qui quis ullamco. Fugiat nostrud occaecat magna ex occaecat nostrud amet. Proident adipisicing consequat nostrud velit minim aute officia esse occaecat cupidatat fugiat proident occaecat nostrud.\r\n", "registered": "2014-07-31T16:14:41-12:00", "latitude": -51.059918, "longitude": -141.139957, "tags": [ "exercitation", "cupidatat", "dolore", "dolore", "dolore", "adipisicing", "aliqua" ], "friends": [ { "id": 0, "name": "Britney Richards" }, { "id": 1, "name": "Greene Duffy" }, { "id": 2, "name": "Henson Blanchard" } ], "greeting": "Hello, Susanna Valenzuela! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea269f48d3fe0db9d696", "index": 3104, "guid": "15cffe32-2ca1-42ea-8510-88c76e730e09", "isActive": false, "balance": "$2,941.62", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Mona Craig", "gender": "female", "company": "MATRIXITY", "email": "monacraig@matrixity.com", "phone": "+1 (906) 572-2974", "address": "973 Lake Avenue, Clayville, Rhode Island, 2731", "about": "Minim enim sunt aliquip consectetur sint ea ut magna. Exercitation ad amet quis nostrud. Aliqua ipsum commodo deserunt cupidatat cillum velit labore nisi sit. Fugiat consectetur amet non elit qui excepteur culpa fugiat proident nisi magna. Anim non labore consectetur nostrud ut laboris mollit excepteur nulla nostrud aliquip culpa eiusmod ut. Reprehenderit ullamco exercitation aliqua amet occaecat reprehenderit ipsum quis quis amet enim. Elit nisi laboris ullamco adipisicing in in laborum do fugiat et sunt cupidatat cillum.\r\n", "registered": "2014-09-01T12:24:45-12:00", "latitude": 27.997933, "longitude": 110.562638, "tags": [ "labore", "aliquip", "sint", "officia", "aliqua", "amet", "eiusmod" ], "friends": [ { "id": 0, "name": "Annette Byrd" }, { "id": 1, "name": "Rodgers White" }, { "id": 2, "name": "Kari Hensley" } ], "greeting": "Hello, Mona Craig! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea268e4766edc2b15896", "index": 3105, "guid": "3743f7b1-e27f-4b77-ac88-6f6025f821a5", "isActive": true, "balance": "$3,108.44", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Richard Martinez", "gender": "male", "company": "ROCKLOGIC", "email": "richardmartinez@rocklogic.com", "phone": "+1 (845) 516-2676", "address": "259 Newton Street, Gulf, Florida, 6079", "about": "Nulla ullamco adipisicing aute est. Pariatur Lorem nostrud tempor do amet excepteur ipsum aliquip. Sunt enim elit occaecat aliquip laboris laboris magna ea. Lorem ullamco ad enim ullamco fugiat culpa laboris esse eiusmod et cillum. Officia aliquip labore fugiat sunt do occaecat aute nulla velit. Est nostrud excepteur esse non velit aliqua ex fugiat cillum aute cupidatat consequat dolore consequat.\r\n", "registered": "2014-04-16T19:02:57-12:00", "latitude": 43.811917, "longitude": -133.081791, "tags": [ "magna", "minim", "nostrud", "adipisicing", "sit", "sit", "ea" ], "friends": [ { "id": 0, "name": "Payne Richmond" }, { "id": 1, "name": "Corina Mcclure" }, { "id": 2, "name": "Marissa Peters" } ], "greeting": "Hello, Richard Martinez! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2649033b287b2ef273", "index": 3106, "guid": "33156e20-9eac-4fcf-9845-7ae8cbdf3406", "isActive": true, "balance": "$3,826.70", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Reid Lara", "gender": "male", "company": "CAXT", "email": "reidlara@caxt.com", "phone": "+1 (940) 578-2105", "address": "729 Hubbard Place, Bentley, North Carolina, 8406", "about": "In amet id cupidatat aute consequat adipisicing pariatur exercitation commodo voluptate anim. Laborum laboris occaecat magna reprehenderit ex labore aliqua consequat enim cillum quis excepteur enim in. Id sunt ex eiusmod qui et commodo elit amet deserunt ut Lorem eiusmod cillum. Irure culpa ad do incididunt sunt occaecat aliquip qui aliqua id ex cupidatat qui. Amet voluptate anim nulla culpa. Fugiat id fugiat esse ad et labore nisi reprehenderit dolore velit. Ut consequat non est sint consectetur sit elit id sint in quis ad.\r\n", "registered": "2014-05-22T16:20:57-12:00", "latitude": 62.680275, "longitude": 67.629971, "tags": [ "elit", "culpa", "aliquip", "aliquip", "non", "elit", "sint" ], "friends": [ { "id": 0, "name": "Whitley Cleveland" }, { "id": 1, "name": "Belinda Howell" }, { "id": 2, "name": "Kathie Nielsen" } ], "greeting": "Hello, Reid Lara! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26464ab78a69eb3c58", "index": 3107, "guid": "65b6fb97-0b6f-4926-a981-d228b0be281c", "isActive": true, "balance": "$1,034.11", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Jordan Rhodes", "gender": "female", "company": "LIQUICOM", "email": "jordanrhodes@liquicom.com", "phone": "+1 (938) 490-3279", "address": "566 Nolans Lane, Alleghenyville, New Hampshire, 5980", "about": "Ad incididunt sit consectetur consectetur minim veniam. Nostrud laboris exercitation duis reprehenderit irure dolor minim tempor incididunt tempor veniam ad duis officia. Duis anim eiusmod sit laboris cupidatat exercitation officia. Amet ex deserunt nostrud sunt dolore sunt deserunt occaecat sint consequat enim. Pariatur ullamco incididunt excepteur sint esse non ullamco nulla est deserunt est. Nisi ea ea proident consectetur.\r\n", "registered": "2014-04-13T03:25:21-12:00", "latitude": 53.90511, "longitude": 109.500294, "tags": [ "incididunt", "et", "anim", "voluptate", "sit", "nulla", "quis" ], "friends": [ { "id": 0, "name": "Herminia Hartman" }, { "id": 1, "name": "Estrada Travis" }, { "id": 2, "name": "Marianne Wilson" } ], "greeting": "Hello, Jordan Rhodes! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26872496bcd2a2c8de", "index": 3108, "guid": "56b6d00c-0f3d-4077-829d-5150cfa9f27a", "isActive": true, "balance": "$3,104.07", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Malone Pace", "gender": "male", "company": "NEOCENT", "email": "malonepace@neocent.com", "phone": "+1 (849) 442-3161", "address": "314 Williamsburg Street, Bison, Arkansas, 8718", "about": "Enim nisi magna laboris mollit adipisicing ipsum dolor culpa. Ut cupidatat aute ipsum reprehenderit fugiat consectetur velit consectetur sint aliquip. Labore ad ex voluptate consequat eu eiusmod. Adipisicing eiusmod id quis velit esse voluptate do incididunt.\r\n", "registered": "2014-08-11T17:04:04-12:00", "latitude": 61.866289, "longitude": 166.397565, "tags": [ "laboris", "pariatur", "nisi", "deserunt", "nulla", "ex", "consequat" ], "friends": [ { "id": 0, "name": "Doreen Sparks" }, { "id": 1, "name": "Mooney Patterson" }, { "id": 2, "name": "Shawna Wood" } ], "greeting": "Hello, Malone Pace! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea263c2f5c12edf42fe6", "index": 3109, "guid": "b5f40545-78a5-4239-ad53-67a44044154c", "isActive": false, "balance": "$2,064.69", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Gallegos Rodriguez", "gender": "male", "company": "ZOMBOID", "email": "gallegosrodriguez@zomboid.com", "phone": "+1 (854) 452-2959", "address": "365 Hampton Place, Brethren, Iowa, 1719", "about": "Anim veniam id eu veniam elit ad ullamco ullamco dolore ea. Occaecat ea pariatur incididunt duis ut eu aliquip id incididunt laborum quis labore sunt. Proident pariatur culpa consequat nulla laborum elit veniam fugiat mollit. Duis dolor voluptate esse ut voluptate mollit cupidatat ipsum. Sunt duis cupidatat amet nostrud fugiat ipsum et qui occaecat in.\r\n", "registered": "2014-08-10T13:21:11-12:00", "latitude": 27.835019, "longitude": -59.949966, "tags": [ "laborum", "laborum", "quis", "anim", "culpa", "ex", "consequat" ], "friends": [ { "id": 0, "name": "Cain Bates" }, { "id": 1, "name": "Alvarez Shepard" }, { "id": 2, "name": "Floyd Mercado" } ], "greeting": "Hello, Gallegos Rodriguez! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26b2544ca3d5416c69", "index": 3110, "guid": "dc24b86e-c313-4b2b-8c65-f5f024180712", "isActive": false, "balance": "$1,609.53", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Brennan Fitzpatrick", "gender": "male", "company": "UNEEQ", "email": "brennanfitzpatrick@uneeq.com", "phone": "+1 (853) 424-2902", "address": "619 Pooles Lane, Wheaton, Nebraska, 8513", "about": "Nostrud exercitation incididunt in ullamco cillum magna nulla. Aliqua minim quis Lorem consequat dolore id voluptate culpa pariatur elit irure id nostrud. Commodo eu est consectetur mollit irure occaecat do tempor aute.\r\n", "registered": "2014-01-17T19:41:36-13:00", "latitude": 66.825767, "longitude": -71.284968, "tags": [ "consequat", "veniam", "ex", "consequat", "veniam", "voluptate", "irure" ], "friends": [ { "id": 0, "name": "Tina Hart" }, { "id": 1, "name": "Mcpherson Poole" }, { "id": 2, "name": "Ruth Franks" } ], "greeting": "Hello, Brennan Fitzpatrick! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26fad2a68883f285f5", "index": 3111, "guid": "78d477e7-7329-478d-895c-bcaf03872383", "isActive": true, "balance": "$1,638.58", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Martina Watson", "gender": "female", "company": "MARQET", "email": "martinawatson@marqet.com", "phone": "+1 (895) 456-2270", "address": "304 Ashland Place, Otranto, District Of Columbia, 8895", "about": "Aliqua id ex sit culpa proident labore dolor laborum officia Lorem nostrud Lorem ut cupidatat. Ullamco occaecat officia elit officia veniam ipsum reprehenderit laboris. Laboris tempor ullamco magna officia. Amet et fugiat nisi adipisicing incididunt nisi. Voluptate Lorem fugiat magna sint non occaecat exercitation ad non quis sit consectetur. Esse amet deserunt eu ex officia laboris proident ut. Laborum reprehenderit deserunt laborum consectetur ullamco in cillum commodo ipsum exercitation.\r\n", "registered": "2014-08-26T23:30:08-12:00", "latitude": 67.377357, "longitude": 27.976337, "tags": [ "in", "nisi", "Lorem", "fugiat", "est", "minim", "nostrud" ], "friends": [ { "id": 0, "name": "Kramer Shaw" }, { "id": 1, "name": "Stella Smith" }, { "id": 2, "name": "Carter Bell" } ], "greeting": "Hello, Martina Watson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26e42fe3d633be6746", "index": 3112, "guid": "bafcf4c9-b60d-4f37-b4bb-45c2c240d679", "isActive": false, "balance": "$3,806.13", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Barbara Simon", "gender": "female", "company": "ERSUM", "email": "barbarasimon@ersum.com", "phone": "+1 (927) 507-3061", "address": "869 Herzl Street, Rosburg, New Jersey, 4050", "about": "Cupidatat labore ipsum adipisicing magna. Deserunt dolor in culpa non exercitation anim duis ea dolor enim voluptate. Lorem ut laborum proident dolor nisi minim laboris nisi sint ea ea. Incididunt veniam deserunt cupidatat ad dolor minim reprehenderit consequat.\r\n", "registered": "2014-03-13T08:44:12-13:00", "latitude": 72.786637, "longitude": -33.488653, "tags": [ "officia", "minim", "proident", "dolor", "nisi", "do", "nostrud" ], "friends": [ { "id": 0, "name": "Mitchell Orr" }, { "id": 1, "name": "Mccarty Page" }, { "id": 2, "name": "Kerri Greene" } ], "greeting": "Hello, Barbara Simon! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea265e9f703ab9962a85", "index": 3113, "guid": "1f28010a-5d76-43cc-bb71-eebfe3bea1d9", "isActive": true, "balance": "$1,314.99", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Katina Flowers", "gender": "female", "company": "ZILCH", "email": "katinaflowers@zilch.com", "phone": "+1 (845) 488-2584", "address": "138 Coles Street, Echo, Palau, 9814", "about": "Et pariatur est tempor officia irure quis reprehenderit. Ullamco dolor laboris do qui voluptate duis consectetur laboris esse aliqua exercitation minim amet esse. Proident cillum cupidatat nisi ut nisi excepteur aute minim laboris Lorem Lorem reprehenderit magna magna. Sit enim dolor tempor eu sint tempor in.\r\n", "registered": "2014-08-19T23:35:16-12:00", "latitude": 75.651718, "longitude": -40.386565, "tags": [ "labore", "officia", "minim", "enim", "est", "nisi", "minim" ], "friends": [ { "id": 0, "name": "Addie Spencer" }, { "id": 1, "name": "Hayes Booker" }, { "id": 2, "name": "Cherry Vinson" } ], "greeting": "Hello, Katina Flowers! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea262a0376550c1a6efd", "index": 3114, "guid": "852b901c-d622-4401-92e8-54ffc36f6be0", "isActive": false, "balance": "$3,020.01", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Kendra Craft", "gender": "female", "company": "MIRACLIS", "email": "kendracraft@miraclis.com", "phone": "+1 (983) 503-3566", "address": "782 Clifton Place, Sussex, Puerto Rico, 230", "about": "Eu mollit cillum nostrud voluptate dolore amet. Ex ea elit ex nisi voluptate deserunt irure ex aliqua ut aliqua ipsum. Et ipsum et proident proident occaecat pariatur labore proident nostrud. Ad excepteur dolore id quis est. Tempor proident irure occaecat sunt aliquip occaecat eiusmod elit labore. Ipsum magna ea aute id laborum irure commodo id aute commodo. Esse veniam quis non et consectetur dolor cupidatat Lorem irure cupidatat enim.\r\n", "registered": "2014-07-08T05:31:23-12:00", "latitude": -18.687612, "longitude": 28.832169, "tags": [ "sit", "incididunt", "amet", "cupidatat", "officia", "excepteur", "labore" ], "friends": [ { "id": 0, "name": "Keisha Frazier" }, { "id": 1, "name": "Whitfield Guerrero" }, { "id": 2, "name": "Stokes Francis" } ], "greeting": "Hello, Kendra Craft! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26569b7fe82fa79ba1", "index": 3115, "guid": "752dc84a-5c98-46ec-b497-47c438580d18", "isActive": true, "balance": "$3,579.22", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Isabel Wiley", "gender": "female", "company": "GEEKOL", "email": "isabelwiley@geekol.com", "phone": "+1 (956) 402-2593", "address": "154 Plymouth Street, Ripley, California, 8328", "about": "In id amet ullamco exercitation amet eiusmod mollit voluptate. Non aliquip tempor proident deserunt aliquip officia aliquip. Sunt reprehenderit elit dolore est. Nulla non quis ea veniam occaecat. Nulla mollit eiusmod sit nostrud ex cillum eu Lorem exercitation nisi qui. Deserunt quis pariatur veniam anim labore ut est nulla enim et ullamco.\r\n", "registered": "2014-08-10T20:25:21-12:00", "latitude": 62.449408, "longitude": -53.716243, "tags": [ "cillum", "mollit", "cupidatat", "Lorem", "in", "officia", "labore" ], "friends": [ { "id": 0, "name": "Sharron Kelly" }, { "id": 1, "name": "Christian Klein" }, { "id": 2, "name": "Cecile Mcbride" } ], "greeting": "Hello, Isabel Wiley! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26377032e22af2d759", "index": 3116, "guid": "01688c2a-e68f-4d86-8618-8547e586f41a", "isActive": true, "balance": "$2,773.15", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Wilma Carey", "gender": "female", "company": "BUGSALL", "email": "wilmacarey@bugsall.com", "phone": "+1 (954) 462-3022", "address": "345 Pershing Loop, Craig, Vermont, 5655", "about": "Id et pariatur ut occaecat proident et voluptate laboris commodo do irure. Anim dolore et labore exercitation officia enim nostrud incididunt est deserunt dolore. Pariatur voluptate laboris esse est officia ex culpa. Ullamco consequat aute sunt aliqua aute reprehenderit proident reprehenderit sint consequat. Fugiat sit adipisicing adipisicing duis sit dolore mollit labore officia commodo proident aliqua. Consectetur velit velit eiusmod ipsum. Magna dolore consectetur laboris ut deserunt fugiat eiusmod cillum tempor ex.\r\n", "registered": "2014-01-27T15:47:04-13:00", "latitude": -20.119331, "longitude": 131.197402, "tags": [ "officia", "mollit", "quis", "labore", "anim", "dolore", "proident" ], "friends": [ { "id": 0, "name": "Whitaker Fry" }, { "id": 1, "name": "Simone Beasley" }, { "id": 2, "name": "Wallace Gaines" } ], "greeting": "Hello, Wilma Carey! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26007984d28d78ad05", "index": 3117, "guid": "640b9b0b-7efc-43ca-8c8e-4502222e1abb", "isActive": false, "balance": "$2,476.83", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Tricia Warner", "gender": "female", "company": "AQUAMATE", "email": "triciawarner@aquamate.com", "phone": "+1 (991) 458-3891", "address": "799 Garland Court, Axis, Indiana, 8603", "about": "Reprehenderit duis dolore est nostrud et. Laborum est non consequat nulla duis et. Occaecat officia incididunt commodo mollit irure nulla tempor esse culpa ad occaecat anim officia. Adipisicing deserunt eiusmod consectetur sit magna. In veniam exercitation labore excepteur culpa aliqua anim proident. Sint Lorem ullamco minim Lorem irure. Reprehenderit anim exercitation dolor officia sunt.\r\n", "registered": "2014-01-04T09:46:50-13:00", "latitude": -6.669404, "longitude": -93.442031, "tags": [ "irure", "elit", "sit", "excepteur", "quis", "ex", "tempor" ], "friends": [ { "id": 0, "name": "Hull Henry" }, { "id": 1, "name": "Terrie Clark" }, { "id": 2, "name": "Martinez Baird" } ], "greeting": "Hello, Tricia Warner! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26cfb28fbffcc4b6a6", "index": 3118, "guid": "6d890129-102b-4a55-8d46-6a306d326338", "isActive": false, "balance": "$1,495.61", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Woodard Noel", "gender": "male", "company": "KEENGEN", "email": "woodardnoel@keengen.com", "phone": "+1 (867) 516-2238", "address": "885 Colonial Court, Homestead, Illinois, 8741", "about": "Veniam esse ullamco esse est anim ullamco deserunt excepteur amet. Eiusmod mollit labore eu deserunt. In minim deserunt anim dolore eu in tempor ex minim mollit. Ea nostrud exercitation aute irure.\r\n", "registered": "2014-09-13T06:50:52-12:00", "latitude": -53.658076, "longitude": -40.915885, "tags": [ "laborum", "Lorem", "irure", "consectetur", "tempor", "nisi", "nulla" ], "friends": [ { "id": 0, "name": "Madeline Dunlap" }, { "id": 1, "name": "Rogers Kramer" }, { "id": 2, "name": "Roberta Hubbard" } ], "greeting": "Hello, Woodard Noel! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2632faedc1895e111c", "index": 3119, "guid": "dfd7b0a5-676f-4851-b387-87f9aa2d0d13", "isActive": false, "balance": "$2,084.98", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Barron Petersen", "gender": "male", "company": "PLASMOSIS", "email": "barronpetersen@plasmosis.com", "phone": "+1 (948) 478-2758", "address": "919 Provost Street, Interlochen, South Carolina, 7580", "about": "Fugiat amet minim irure reprehenderit et commodo aliquip non sit nisi dolor consequat. Mollit anim voluptate amet nisi. Ad excepteur in aute velit consequat irure laboris sunt excepteur.\r\n", "registered": "2014-07-28T08:12:41-12:00", "latitude": 30.229965, "longitude": -16.558508, "tags": [ "aliqua", "mollit", "ipsum", "aliquip", "ea", "enim", "sint" ], "friends": [ { "id": 0, "name": "Gladys Ford" }, { "id": 1, "name": "Noble Buck" }, { "id": 2, "name": "Mathews Harrington" } ], "greeting": "Hello, Barron Petersen! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26b48f8dd557ec5b70", "index": 3120, "guid": "178ce10c-f068-4810-a19b-b566c39e6119", "isActive": false, "balance": "$3,820.05", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Anna Johns", "gender": "female", "company": "ISOSWITCH", "email": "annajohns@isoswitch.com", "phone": "+1 (822) 450-3774", "address": "571 Division Place, Fairfield, American Samoa, 6012", "about": "Nisi irure duis esse deserunt eu mollit labore dolore tempor ipsum. Ex reprehenderit qui consequat nisi ex voluptate consectetur proident pariatur pariatur non. Magna duis ad labore sit reprehenderit voluptate culpa adipisicing. Veniam occaecat incididunt anim incididunt sit commodo commodo reprehenderit laborum. Esse consequat tempor nisi voluptate amet ipsum excepteur quis id in excepteur magna eiusmod aute. Nulla eu cupidatat consectetur ex esse velit proident sit tempor laboris.\r\n", "registered": "2014-01-28T15:13:50-13:00", "latitude": 22.625403, "longitude": -107.613752, "tags": [ "do", "aliqua", "veniam", "velit", "dolor", "esse", "eu" ], "friends": [ { "id": 0, "name": "Beatriz Montoya" }, { "id": 1, "name": "Berta Berger" }, { "id": 2, "name": "Raymond Osborne" } ], "greeting": "Hello, Anna Johns! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea261463c65a2daf9c3c", "index": 3121, "guid": "2b28c92d-9fcd-4d8d-9e88-0e371a55dc62", "isActive": true, "balance": "$1,009.34", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Lawson Mathis", "gender": "male", "company": "TWIGGERY", "email": "lawsonmathis@twiggery.com", "phone": "+1 (991) 587-2264", "address": "532 Merit Court, Drummond, Delaware, 833", "about": "Sunt ut ea deserunt est. Anim amet consequat deserunt adipisicing cupidatat officia nulla et ut. Mollit irure velit dolor tempor laboris laboris anim pariatur exercitation. Proident occaecat Lorem nostrud qui ad adipisicing esse laborum tempor do nulla. Eiusmod quis qui veniam enim laborum culpa aute proident aliquip.\r\n", "registered": "2014-07-16T04:47:48-12:00", "latitude": -2.839702, "longitude": -35.253413, "tags": [ "commodo", "nulla", "sint", "enim", "reprehenderit", "pariatur", "excepteur" ], "friends": [ { "id": 0, "name": "Adele Melton" }, { "id": 1, "name": "Klein Eaton" }, { "id": 2, "name": "Pope Mays" } ], "greeting": "Hello, Lawson Mathis! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26974b48404f534132", "index": 3122, "guid": "abc30089-b642-4eed-909b-12689efdb272", "isActive": true, "balance": "$3,111.43", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Robin Gill", "gender": "female", "company": "ANDERSHUN", "email": "robingill@andershun.com", "phone": "+1 (905) 479-2392", "address": "260 Whitty Lane, Hamilton, Pennsylvania, 5292", "about": "Cupidatat in est exercitation adipisicing do velit quis deserunt adipisicing do dolore tempor Lorem fugiat. Laboris deserunt consequat eu excepteur culpa. Sit nisi fugiat ipsum nostrud tempor labore. Aliquip amet elit cupidatat officia ea nulla nostrud culpa sit incididunt nostrud quis non.\r\n", "registered": "2014-08-08T19:38:41-12:00", "latitude": -73.364233, "longitude": 103.677719, "tags": [ "officia", "quis", "elit", "sunt", "laboris", "consequat", "elit" ], "friends": [ { "id": 0, "name": "Lorraine Wheeler" }, { "id": 1, "name": "Rose Carr" }, { "id": 2, "name": "Mai Wolfe" } ], "greeting": "Hello, Robin Gill! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea268b21108e848be339", "index": 3123, "guid": "65aa3cbc-335c-49fa-a586-868148dc0e42", "isActive": true, "balance": "$3,203.67", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Cohen Huber", "gender": "male", "company": "CIPROMOX", "email": "cohenhuber@cipromox.com", "phone": "+1 (815) 529-2721", "address": "868 Madeline Court, Chestnut, Georgia, 3685", "about": "Eu veniam ut aute Lorem ad dolor laborum nulla. Excepteur aute in mollit sit sit exercitation ipsum et pariatur velit. Duis laboris id adipisicing nisi. Mollit ea velit labore adipisicing cillum ullamco velit minim et incididunt enim velit sunt. Enim incididunt ea duis minim dolor qui enim veniam sunt labore irure laborum cillum.\r\n", "registered": "2014-04-09T12:54:52-12:00", "latitude": 24.686187, "longitude": -38.372992, "tags": [ "qui", "consectetur", "ex", "cupidatat", "pariatur", "aute", "aliquip" ], "friends": [ { "id": 0, "name": "Slater Pierce" }, { "id": 1, "name": "Holcomb Merritt" }, { "id": 2, "name": "Jolene Aguirre" } ], "greeting": "Hello, Cohen Huber! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26f521c33c68d87448", "index": 3124, "guid": "e3dde376-f943-4ad0-9917-2dfca7d9e30f", "isActive": false, "balance": "$3,139.87", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Shields Luna", "gender": "male", "company": "ROTODYNE", "email": "shieldsluna@rotodyne.com", "phone": "+1 (906) 521-2474", "address": "536 Bayard Street, Mappsville, North Dakota, 495", "about": "Consectetur laboris reprehenderit culpa laborum nostrud dolore aliquip officia labore do officia deserunt. Aute do qui qui veniam enim. Excepteur minim minim nulla et. Id aute mollit reprehenderit ipsum sit dolor eiusmod anim adipisicing elit pariatur sit adipisicing. Est velit do ex in consectetur ipsum consequat enim occaecat ad dolore voluptate adipisicing magna. Est duis sunt ex officia et. Eu et esse proident laboris.\r\n", "registered": "2014-01-25T16:46:26-13:00", "latitude": 46.234472, "longitude": 168.418497, "tags": [ "consequat", "dolor", "exercitation", "eiusmod", "anim", "cupidatat", "reprehenderit" ], "friends": [ { "id": 0, "name": "Sonia Bowen" }, { "id": 1, "name": "Bette Mueller" }, { "id": 2, "name": "Kristi Duncan" } ], "greeting": "Hello, Shields Luna! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea269e591ae07c39f8c7", "index": 3125, "guid": "88860e7f-3a23-41ba-89e2-845152c06b84", "isActive": false, "balance": "$3,456.11", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Paige Burt", "gender": "female", "company": "OMATOM", "email": "paigeburt@omatom.com", "phone": "+1 (934) 438-2703", "address": "992 Bowne Street, Masthope, Louisiana, 8244", "about": "Aute consectetur elit labore fugiat esse id amet ex non. Mollit pariatur culpa consequat minim. Voluptate esse reprehenderit laboris nulla ut. Proident in ad irure cillum laboris enim reprehenderit non laboris nisi. Incididunt quis magna labore do amet irure nisi exercitation ullamco veniam consectetur ipsum.\r\n", "registered": "2014-02-05T03:53:37-13:00", "latitude": -19.899466, "longitude": -115.460926, "tags": [ "nulla", "duis", "reprehenderit", "id", "anim", "aute", "occaecat" ], "friends": [ { "id": 0, "name": "Aimee Saunders" }, { "id": 1, "name": "Ophelia Caldwell" }, { "id": 2, "name": "Hardy House" } ], "greeting": "Hello, Paige Burt! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26ff28574cf005b3cf", "index": 3126, "guid": "6d8643c3-61e7-41dc-87d0-698efabf0e66", "isActive": false, "balance": "$2,195.46", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Wooten Dudley", "gender": "male", "company": "XPLOR", "email": "wootendudley@xplor.com", "phone": "+1 (888) 413-3634", "address": "954 Ingraham Street, Joes, Northern Mariana Islands, 9938", "about": "Laborum nostrud tempor incididunt incididunt tempor sit adipisicing est officia excepteur. Nisi id aute ad ullamco proident. Ullamco minim pariatur in qui excepteur elit. Commodo mollit mollit cillum sunt officia pariatur. Sunt est sunt ex fugiat magna dolore deserunt mollit reprehenderit commodo nostrud dolor. Aute consequat ex consectetur elit cillum eiusmod elit velit et elit. Anim culpa cillum do labore id nulla labore ex consequat.\r\n", "registered": "2014-08-18T23:15:59-12:00", "latitude": -69.060425, "longitude": 77.620518, "tags": [ "eiusmod", "amet", "aliqua", "sit", "minim", "adipisicing", "ullamco" ], "friends": [ { "id": 0, "name": "Juana Wynn" }, { "id": 1, "name": "Heath Wilkinson" }, { "id": 2, "name": "Davidson Bailey" } ], "greeting": "Hello, Wooten Dudley! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26152d0adae8753f62", "index": 3127, "guid": "83b24440-7db9-43c3-8635-d10721fa3b38", "isActive": false, "balance": "$2,183.86", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Mercer Barry", "gender": "male", "company": "OVOLO", "email": "mercerbarry@ovolo.com", "phone": "+1 (874) 576-3675", "address": "586 Canda Avenue, Roosevelt, Colorado, 1348", "about": "Cillum mollit ut esse fugiat cillum mollit consequat non ipsum veniam ad. Exercitation laborum proident adipisicing officia eiusmod. Ipsum voluptate dolor quis non sit officia officia fugiat elit et est. Quis non nisi aliquip commodo officia culpa ut ad duis eu sint fugiat do.\r\n", "registered": "2014-04-26T10:23:21-12:00", "latitude": 54.530351, "longitude": -139.996374, "tags": [ "Lorem", "consectetur", "labore", "aliquip", "tempor", "nisi", "deserunt" ], "friends": [ { "id": 0, "name": "Jane Atkins" }, { "id": 1, "name": "Burris Donaldson" }, { "id": 2, "name": "Claudine Hutchinson" } ], "greeting": "Hello, Mercer Barry! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea266f0fcca68b46c52b", "index": 3128, "guid": "a5f63d89-4860-490e-8021-ef4f6e224974", "isActive": true, "balance": "$1,423.48", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Preston Decker", "gender": "male", "company": "NORALEX", "email": "prestondecker@noralex.com", "phone": "+1 (848) 433-3880", "address": "532 Portland Avenue, Guilford, Idaho, 1549", "about": "Lorem eiusmod adipisicing laborum ullamco irure non ea sit commodo fugiat deserunt laborum consequat. Aute non in laboris ex exercitation officia voluptate nostrud ut. Adipisicing commodo sunt cillum elit Lorem commodo est officia velit cillum magna reprehenderit officia. Cillum velit do cillum laborum cupidatat proident magna dolor.\r\n", "registered": "2014-06-18T12:33:24-12:00", "latitude": -88.720253, "longitude": 118.797051, "tags": [ "enim", "nostrud", "eu", "mollit", "mollit", "non", "culpa" ], "friends": [ { "id": 0, "name": "Milagros Cochran" }, { "id": 1, "name": "Rachel Mckay" }, { "id": 2, "name": "Yolanda Simpson" } ], "greeting": "Hello, Preston Decker! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26b1b835a210124b49", "index": 3129, "guid": "ed00538a-3595-475d-9170-3e766b109175", "isActive": true, "balance": "$1,020.70", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Dona Everett", "gender": "female", "company": "AUSTECH", "email": "donaeverett@austech.com", "phone": "+1 (923) 573-3154", "address": "509 Polhemus Place, Stockdale, Marshall Islands, 8823", "about": "Sit dolor excepteur voluptate ex ad pariatur deserunt id aute. Incididunt excepteur velit duis fugiat do nulla veniam. Eu minim labore ipsum ea laborum dolore ullamco elit sit velit proident mollit incididunt ea. Fugiat et amet irure laborum veniam sit deserunt adipisicing aliqua fugiat do. Est fugiat pariatur eu ad excepteur voluptate minim dolore velit ex mollit officia amet. Cillum labore voluptate ex elit irure excepteur amet consequat deserunt do aute culpa.\r\n", "registered": "2014-08-06T04:16:11-12:00", "latitude": -12.24289, "longitude": 83.239887, "tags": [ "magna", "eu", "consectetur", "irure", "pariatur", "dolor", "est" ], "friends": [ { "id": 0, "name": "Patel Delgado" }, { "id": 1, "name": "Bertie Mcgowan" }, { "id": 2, "name": "Dora Fleming" } ], "greeting": "Hello, Dona Everett! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26c030200a62a1203b", "index": 3130, "guid": "64345e73-6b59-44ce-8f3d-a63201c7764d", "isActive": true, "balance": "$2,450.50", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Clarice Burton", "gender": "female", "company": "DIGIGEN", "email": "clariceburton@digigen.com", "phone": "+1 (864) 495-3401", "address": "397 Maple Street, Dale, New York, 682", "about": "Ex mollit mollit laborum mollit veniam ad non. Aliqua minim culpa incididunt esse. Ea dolor minim exercitation nisi sunt amet est pariatur sint esse esse labore. Anim et esse minim pariatur pariatur eiusmod sint et. Tempor nisi minim proident proident sunt sit pariatur deserunt mollit. Ullamco cupidatat proident laborum ex consectetur aliqua non.\r\n", "registered": "2014-02-22T05:09:16-13:00", "latitude": -59.772288, "longitude": 4.065303, "tags": [ "sit", "pariatur", "ullamco", "sit", "nostrud", "ut", "consectetur" ], "friends": [ { "id": 0, "name": "Dianne Graves" }, { "id": 1, "name": "Bernadette Potts" }, { "id": 2, "name": "Jeanne Holland" } ], "greeting": "Hello, Clarice Burton! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2642bb788cf058896b", "index": 3131, "guid": "18317488-8b94-48a0-b263-ffa81482c625", "isActive": false, "balance": "$1,904.92", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Kelly Hewitt", "gender": "female", "company": "XURBAN", "email": "kellyhewitt@xurban.com", "phone": "+1 (917) 436-2785", "address": "476 Cooper Street, Westerville, Guam, 2366", "about": "Pariatur voluptate anim fugiat irure incididunt ea laborum est et aliquip do pariatur. Aliquip eiusmod sint nisi est et in ipsum sit culpa ipsum qui eiusmod. Ullamco voluptate sint non ipsum laborum est ut cupidatat eu. Pariatur elit labore velit anim enim. Officia anim laborum voluptate ad ex est velit id pariatur officia.\r\n", "registered": "2014-06-07T20:20:58-12:00", "latitude": -88.688976, "longitude": -120.712631, "tags": [ "amet", "nostrud", "sint", "do", "deserunt", "minim", "esse" ], "friends": [ { "id": 0, "name": "Landry Porter" }, { "id": 1, "name": "Beth Callahan" }, { "id": 2, "name": "Leanne Christensen" } ], "greeting": "Hello, Kelly Hewitt! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea269de0f90d76508127", "index": 3132, "guid": "5b1b94d2-beac-417c-913c-41b250f19c4f", "isActive": true, "balance": "$2,098.98", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Jeanette Salazar", "gender": "female", "company": "OVATION", "email": "jeanettesalazar@ovation.com", "phone": "+1 (985) 537-2255", "address": "536 Prescott Place, Veyo, Virgin Islands, 7624", "about": "Occaecat esse sit enim ullamco officia non nulla. Non incididunt ea commodo voluptate consectetur ut dolore aliquip duis excepteur. Sunt cupidatat adipisicing officia Lorem.\r\n", "registered": "2014-03-18T08:21:02-13:00", "latitude": 87.356619, "longitude": 26.18921, "tags": [ "ullamco", "ut", "deserunt", "amet", "ullamco", "esse", "officia" ], "friends": [ { "id": 0, "name": "Alexis Emerson" }, { "id": 1, "name": "Jenna Velasquez" }, { "id": 2, "name": "Beatrice Chapman" } ], "greeting": "Hello, Jeanette Salazar! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26eff04a1df418cf82", "index": 3133, "guid": "8e3177f5-09b9-430f-a846-a3d12d8e1f0a", "isActive": true, "balance": "$3,130.97", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Cathy Jennings", "gender": "female", "company": "GYNK", "email": "cathyjennings@gynk.com", "phone": "+1 (887) 466-3989", "address": "770 Cook Street, Cutter, Massachusetts, 3676", "about": "Cillum anim voluptate aliquip consequat est anim ullamco sint reprehenderit est mollit deserunt. Ullamco enim laboris fugiat proident nostrud aliqua et pariatur sint anim id. Enim ipsum dolore anim adipisicing aute occaecat sint incididunt. Ipsum est sint enim commodo incididunt id consectetur dolore voluptate irure quis.\r\n", "registered": "2014-01-22T13:41:36-13:00", "latitude": 13.234681, "longitude": 142.544087, "tags": [ "sint", "sit", "excepteur", "laborum", "amet", "velit", "duis" ], "friends": [ { "id": 0, "name": "Janie Logan" }, { "id": 1, "name": "Fry Sloan" }, { "id": 2, "name": "Sophia Lamb" } ], "greeting": "Hello, Cathy Jennings! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2623e631b2d80b8ebc", "index": 3134, "guid": "ad49f3f7-f157-4efd-b6e5-d44c9cb1bbc7", "isActive": false, "balance": "$3,234.46", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Mueller Jensen", "gender": "male", "company": "PORTICO", "email": "muellerjensen@portico.com", "phone": "+1 (934) 489-2753", "address": "693 Pioneer Street, Matheny, Utah, 2256", "about": "Labore velit aute dolor ad voluptate ipsum et consectetur consequat. Exercitation Lorem ex ad do nostrud minim sunt nisi et anim. Et ea aliquip enim qui ea aliquip. Esse laborum proident deserunt velit fugiat ipsum amet mollit. Amet anim culpa sunt dolore consequat adipisicing nostrud officia.\r\n", "registered": "2014-08-29T16:33:13-12:00", "latitude": -0.900127, "longitude": -72.570717, "tags": [ "qui", "consequat", "voluptate", "qui", "reprehenderit", "enim", "dolor" ], "friends": [ { "id": 0, "name": "Griffith Carrillo" }, { "id": 1, "name": "Chase Mccarthy" }, { "id": 2, "name": "Kinney Salas" } ], "greeting": "Hello, Mueller Jensen! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2682bb7482c3ad5d6f", "index": 3135, "guid": "20a75a2b-0730-4c96-b4d7-61b64bd9dd71", "isActive": true, "balance": "$2,730.54", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Nicholson Castillo", "gender": "male", "company": "ZAGGLES", "email": "nicholsoncastillo@zaggles.com", "phone": "+1 (823) 450-3517", "address": "299 Downing Street, Robinette, Montana, 2216", "about": "Nulla culpa mollit cupidatat proident adipisicing duis magna incididunt excepteur aliquip. Qui labore enim tempor ipsum occaecat adipisicing mollit velit ad esse et magna dolor. Nisi ad incididunt consequat consequat velit et exercitation laborum in in. Laborum nisi sunt aliqua nisi ipsum ut.\r\n", "registered": "2014-08-11T07:54:48-12:00", "latitude": 45.579336, "longitude": 13.094483, "tags": [ "consectetur", "proident", "fugiat", "est", "occaecat", "do", "culpa" ], "friends": [ { "id": 0, "name": "Zamora Tanner" }, { "id": 1, "name": "Debora Chase" }, { "id": 2, "name": "Madelyn Suarez" } ], "greeting": "Hello, Nicholson Castillo! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26d5cc1bc7456aa022", "index": 3136, "guid": "ffe9c9cf-58a7-4397-85cb-448c3d84b456", "isActive": true, "balance": "$1,385.90", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Henry Leonard", "gender": "male", "company": "PANZENT", "email": "henryleonard@panzent.com", "phone": "+1 (955) 514-2204", "address": "705 Knight Court, Monument, Wisconsin, 7395", "about": "Aute ea occaecat amet aliquip exercitation Lorem. Anim est minim minim magna voluptate cillum elit veniam ipsum aute enim amet incididunt. Ipsum sit Lorem ea dolor quis officia Lorem amet consectetur est veniam ullamco esse anim. Incididunt fugiat dolore veniam esse. Commodo anim cupidatat Lorem deserunt non mollit est cillum ea esse fugiat.\r\n", "registered": "2014-05-24T09:00:17-12:00", "latitude": 4.792654, "longitude": 150.94828, "tags": [ "excepteur", "officia", "exercitation", "amet", "incididunt", "fugiat", "non" ], "friends": [ { "id": 0, "name": "Blackburn Castro" }, { "id": 1, "name": "Holder Burks" }, { "id": 2, "name": "Leonard Perry" } ], "greeting": "Hello, Henry Leonard! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26a06df4d7965f5199", "index": 3137, "guid": "3a76f9cc-3b22-45c1-902c-77028159af3b", "isActive": true, "balance": "$3,241.93", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Lynn Hansen", "gender": "female", "company": "CINCYR", "email": "lynnhansen@cincyr.com", "phone": "+1 (964) 465-2904", "address": "928 Manhattan Avenue, Lloyd, Maine, 586", "about": "Ipsum labore qui est ipsum mollit fugiat laborum qui. Consectetur dolore esse ut cillum esse reprehenderit non enim commodo ea dolore. Nostrud eu dolor proident enim deserunt fugiat amet adipisicing. Ipsum reprehenderit ut eu mollit.\r\n", "registered": "2014-03-18T09:13:56-13:00", "latitude": 0.991727, "longitude": -95.194807, "tags": [ "Lorem", "officia", "mollit", "pariatur", "mollit", "quis", "pariatur" ], "friends": [ { "id": 0, "name": "Jones Avery" }, { "id": 1, "name": "Lori Holman" }, { "id": 2, "name": "Maxine Boyle" } ], "greeting": "Hello, Lynn Hansen! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2678f9ac9950875828", "index": 3138, "guid": "0382c7e8-0aa3-427c-8acc-539e9d832c4b", "isActive": false, "balance": "$1,247.54", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Rena Bauer", "gender": "female", "company": "FITCORE", "email": "renabauer@fitcore.com", "phone": "+1 (945) 557-2265", "address": "693 Ivan Court, Grapeview, Virginia, 3016", "about": "Officia incididunt aliqua veniam laborum deserunt cillum consequat veniam excepteur in. Officia mollit in occaecat nisi sint do enim proident amet exercitation. Veniam Lorem fugiat aliqua consequat irure consequat.\r\n", "registered": "2014-06-19T06:29:56-12:00", "latitude": 11.981112, "longitude": 146.637763, "tags": [ "laboris", "ullamco", "magna", "voluptate", "commodo", "ex", "consequat" ], "friends": [ { "id": 0, "name": "April Avila" }, { "id": 1, "name": "Alfreda Vazquez" }, { "id": 2, "name": "Ronda Tucker" } ], "greeting": "Hello, Rena Bauer! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26919bb715a9e800af", "index": 3139, "guid": "97fb9a3a-a33d-46e3-b2da-7ce05a8f7d01", "isActive": true, "balance": "$3,276.94", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Jackson Swanson", "gender": "male", "company": "FLEETMIX", "email": "jacksonswanson@fleetmix.com", "phone": "+1 (883) 527-3000", "address": "501 Duryea Place, Yonah, Kentucky, 1025", "about": "Excepteur velit id dolor anim irure exercitation excepteur dolore elit. In fugiat non incididunt amet ipsum amet deserunt laborum est. In excepteur fugiat eu in adipisicing duis aliquip velit eiusmod non tempor in.\r\n", "registered": "2014-09-05T00:42:50-12:00", "latitude": 0.797555, "longitude": 42.55185, "tags": [ "eu", "proident", "nostrud", "laboris", "pariatur", "mollit", "velit" ], "friends": [ { "id": 0, "name": "Mayer Miles" }, { "id": 1, "name": "Marisa Hays" }, { "id": 2, "name": "Sims Whitley" } ], "greeting": "Hello, Jackson Swanson! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26e3da65b8dc424620", "index": 3140, "guid": "bbeec7ff-ac93-433f-973e-a99bb2f1ce62", "isActive": false, "balance": "$2,504.74", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Santos Stone", "gender": "male", "company": "KNOWLYSIS", "email": "santosstone@knowlysis.com", "phone": "+1 (942) 400-3083", "address": "573 Rockwell Place, Chical, Connecticut, 1694", "about": "Consectetur in occaecat officia do elit nulla ut do. Sunt proident pariatur eiusmod dolore ea eu consequat aliqua aliqua. Labore amet id laboris mollit culpa cillum ad.\r\n", "registered": "2014-03-25T01:57:25-13:00", "latitude": 78.984118, "longitude": 80.897155, "tags": [ "nostrud", "nisi", "occaecat", "proident", "dolor", "id", "cupidatat" ], "friends": [ { "id": 0, "name": "Velez Villarreal" }, { "id": 1, "name": "Haley Howe" }, { "id": 2, "name": "Mayo Keith" } ], "greeting": "Hello, Santos Stone! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26b80f37a984978f9b", "index": 3141, "guid": "4cdd0429-281f-470b-86f7-19518679d4ae", "isActive": true, "balance": "$1,861.08", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Burke Mayo", "gender": "male", "company": "VIXO", "email": "burkemayo@vixo.com", "phone": "+1 (922) 458-2548", "address": "694 Albemarle Road, Advance, Mississippi, 7285", "about": "Qui labore exercitation commodo nulla ea duis do ex qui eiusmod aliquip aliqua. Occaecat tempor sint pariatur ex cillum. Non commodo duis pariatur occaecat qui sint tempor cillum est enim ut. Et nisi proident ex ad eiusmod Lorem magna nulla quis laborum amet aute minim deserunt. Eu quis ex irure proident. Dolore ea sunt quis ad et Lorem mollit incididunt velit laboris est pariatur. Excepteur cupidatat mollit consequat Lorem adipisicing laboris cupidatat.\r\n", "registered": "2014-04-09T12:51:20-12:00", "latitude": 28.146674, "longitude": 76.124653, "tags": [ "Lorem", "laboris", "amet", "ullamco", "duis", "ipsum", "eu" ], "friends": [ { "id": 0, "name": "Paula Rosales" }, { "id": 1, "name": "Rosemary Mason" }, { "id": 2, "name": "Katherine Warren" } ], "greeting": "Hello, Burke Mayo! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26add61abcf2862b73", "index": 3142, "guid": "045b7aa1-5ffd-4020-9790-28c2e7ca232f", "isActive": false, "balance": "$1,852.62", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Huber Barlow", "gender": "male", "company": "HOTCAKES", "email": "huberbarlow@hotcakes.com", "phone": "+1 (838) 483-3387", "address": "149 Scott Avenue, Kimmell, Washington, 5031", "about": "Excepteur cupidatat ad velit proident deserunt et eiusmod aute nostrud qui duis. Commodo sunt velit excepteur magna ullamco deserunt qui esse quis exercitation. Laborum eu laborum exercitation duis aliquip deserunt ut sint. Enim dolor in quis eiusmod ad qui amet ipsum qui reprehenderit fugiat.\r\n", "registered": "2014-06-24T07:23:30-12:00", "latitude": 81.169844, "longitude": 95.13639, "tags": [ "nostrud", "ex", "ullamco", "ad", "do", "pariatur", "ex" ], "friends": [ { "id": 0, "name": "Lakeisha Davis" }, { "id": 1, "name": "Rowe Solis" }, { "id": 2, "name": "Jodi Riggs" } ], "greeting": "Hello, Huber Barlow! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2678813eaf3f319df9", "index": 3143, "guid": "395fc905-8d3e-45be-a75f-1fba47beb02f", "isActive": false, "balance": "$2,625.10", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Lena Matthews", "gender": "female", "company": "FROSNEX", "email": "lenamatthews@frosnex.com", "phone": "+1 (905) 454-2294", "address": "900 Crosby Avenue, Slovan, Tennessee, 7635", "about": "Ea velit pariatur cupidatat aliqua quis labore labore fugiat et. Excepteur cillum commodo tempor deserunt ut fugiat consequat. Ipsum eu enim do Lorem pariatur cupidatat. Laboris elit excepteur tempor in. Laborum voluptate sit commodo commodo do duis consequat proident consequat quis quis duis anim.\r\n", "registered": "2014-06-18T18:24:14-12:00", "latitude": 34.515094, "longitude": -44.037165, "tags": [ "esse", "officia", "labore", "esse", "Lorem", "ut", "eu" ], "friends": [ { "id": 0, "name": "Tyson Petty" }, { "id": 1, "name": "Beulah Marshall" }, { "id": 2, "name": "Lana Black" } ], "greeting": "Hello, Lena Matthews! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26c7b6107fe88164b7", "index": 3144, "guid": "cd120ccb-aa04-40b3-ad04-4240838e469f", "isActive": false, "balance": "$1,326.03", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Tara Sykes", "gender": "female", "company": "FANGOLD", "email": "tarasykes@fangold.com", "phone": "+1 (821) 401-2486", "address": "863 Kingston Avenue, Ona, Alabama, 2020", "about": "Consectetur ea enim laboris magna ex exercitation consequat sint velit labore qui eu eu et. Non ad dolore et enim irure in exercitation magna exercitation amet anim ut. Consectetur adipisicing adipisicing nisi cillum cillum cillum ad aliqua. Magna pariatur adipisicing in laborum qui labore. Sunt nostrud Lorem ut eu mollit excepteur magna sit eiusmod consequat deserunt anim in duis.\r\n", "registered": "2014-08-24T13:37:57-12:00", "latitude": -53.088874, "longitude": -150.413518, "tags": [ "proident", "anim", "minim", "laboris", "nisi", "enim", "exercitation" ], "friends": [ { "id": 0, "name": "Ferrell Becker" }, { "id": 1, "name": "Angel Cox" }, { "id": 2, "name": "Flossie Murphy" } ], "greeting": "Hello, Tara Sykes! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26abc05d322b5e7bbe", "index": 3145, "guid": "033a7aca-27c5-40ab-ac14-d82a421f624d", "isActive": false, "balance": "$3,218.97", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Gilliam Kim", "gender": "male", "company": "EXIAND", "email": "gilliamkim@exiand.com", "phone": "+1 (852) 555-3465", "address": "767 Sackman Street, Idledale, Ohio, 6050", "about": "Labore sunt voluptate tempor qui incididunt cupidatat in aliqua excepteur. Fugiat quis esse Lorem aute amet et. Est occaecat velit dolore velit nostrud fugiat Lorem fugiat. Irure sunt tempor anim nostrud enim anim Lorem esse eiusmod. Minim proident enim minim reprehenderit fugiat officia.\r\n", "registered": "2014-04-19T07:45:07-12:00", "latitude": 71.003812, "longitude": -3.911998, "tags": [ "ut", "Lorem", "in", "nisi", "labore", "occaecat", "do" ], "friends": [ { "id": 0, "name": "Clay Stafford" }, { "id": 1, "name": "Hazel Daniel" }, { "id": 2, "name": "Wall Hudson" } ], "greeting": "Hello, Gilliam Kim! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26403f936c92331e02", "index": 3146, "guid": "5b49afff-1ebb-4c0c-9371-b4dd7cb383ef", "isActive": false, "balance": "$1,513.77", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Morrison Snow", "gender": "male", "company": "TURNABOUT", "email": "morrisonsnow@turnabout.com", "phone": "+1 (992) 556-3283", "address": "532 Village Road, Nicholson, Hawaii, 8238", "about": "Ex nulla esse in exercitation Lorem nulla dolor. Qui consectetur non officia adipisicing sit laboris proident ex do quis exercitation cupidatat enim ullamco. Fugiat exercitation aute ipsum qui reprehenderit culpa dolor in anim magna. Officia laborum nulla consectetur cillum sit aute. Laborum enim ex proident reprehenderit ullamco minim et nulla minim aliqua. Consequat cupidatat aliquip culpa do anim. Laborum adipisicing ad sit aliqua incididunt sint aliquip ullamco est.\r\n", "registered": "2014-05-10T02:34:40-12:00", "latitude": -32.520096, "longitude": -150.372377, "tags": [ "pariatur", "tempor", "nostrud", "magna", "velit", "excepteur", "elit" ], "friends": [ { "id": 0, "name": "Tisha Patrick" }, { "id": 1, "name": "Bowman Padilla" }, { "id": 2, "name": "Wright Melendez" } ], "greeting": "Hello, Morrison Snow! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2646c2c50103ebe054", "index": 3147, "guid": "bf4cd330-44a0-4513-900f-4b76236643cd", "isActive": true, "balance": "$1,137.16", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Oneil Vasquez", "gender": "male", "company": "PLASMOS", "email": "oneilvasquez@plasmos.com", "phone": "+1 (997) 581-2909", "address": "974 Coyle Street, Madaket, New Mexico, 1186", "about": "Exercitation reprehenderit mollit sint veniam Lorem nulla qui eu. Proident ex reprehenderit dolore esse amet commodo cupidatat. Eiusmod do sit reprehenderit mollit nisi officia nulla voluptate nulla veniam ipsum. Voluptate non sint qui nulla magna dolore qui occaecat reprehenderit nostrud fugiat deserunt nulla. Exercitation deserunt do aliqua nulla elit officia consequat qui labore anim qui labore do.\r\n", "registered": "2014-08-26T14:16:03-12:00", "latitude": 18.487126, "longitude": -95.79108, "tags": [ "dolore", "laboris", "sunt", "ut", "pariatur", "aliqua", "et" ], "friends": [ { "id": 0, "name": "Pierce Tyler" }, { "id": 1, "name": "Deena Mooney" }, { "id": 2, "name": "Roxie Garrison" } ], "greeting": "Hello, Oneil Vasquez! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26ab06e037158fd10b", "index": 3148, "guid": "b0e6a37a-56b4-4069-a7cd-5e327e4f369d", "isActive": true, "balance": "$2,398.28", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Anderson Best", "gender": "male", "company": "ISOTERNIA", "email": "andersonbest@isoternia.com", "phone": "+1 (943) 567-2978", "address": "981 Junius Street, Crayne, Maryland, 3553", "about": "Esse Lorem consectetur reprehenderit reprehenderit ex. Enim dolore dolor aliquip laborum proident irure. Labore eu commodo ea irure reprehenderit anim nisi deserunt ipsum ex Lorem cupidatat laborum enim. Sit velit eu in irure incididunt enim laboris magna irure eiusmod ea tempor ea. Ex occaecat amet officia nostrud tempor. Eu labore magna quis non aliquip consequat aliqua adipisicing voluptate tempor velit ex incididunt.\r\n", "registered": "2014-07-31T20:44:53-12:00", "latitude": 88.396071, "longitude": -39.871242, "tags": [ "proident", "non", "proident", "laborum", "cupidatat", "ad", "incididunt" ], "friends": [ { "id": 0, "name": "Verna Mccormick" }, { "id": 1, "name": "Gena Cross" }, { "id": 2, "name": "Pearson Albert" } ], "greeting": "Hello, Anderson Best! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2602202defd03caaa5", "index": 3149, "guid": "070c7b0e-a9f9-49b2-aa8b-7bbb1781f6d8", "isActive": false, "balance": "$2,605.10", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Cortez Newton", "gender": "male", "company": "COMVEYER", "email": "corteznewton@comveyer.com", "phone": "+1 (931) 560-3568", "address": "714 Brevoort Place, Escondida, Alaska, 3327", "about": "Laboris cupidatat qui anim eiusmod. Nisi nulla exercitation veniam adipisicing ipsum nisi laboris Lorem. Proident anim aliqua non tempor irure id ut enim fugiat esse. Ex veniam aute nisi amet voluptate veniam laborum laborum. Ex excepteur est laboris eiusmod ex ullamco laborum.\r\n", "registered": "2014-06-11T15:02:05-12:00", "latitude": 59.215724, "longitude": 119.910801, "tags": [ "consequat", "laboris", "est", "mollit", "velit", "eu", "officia" ], "friends": [ { "id": 0, "name": "Candice Kemp" }, { "id": 1, "name": "Matthews Nelson" }, { "id": 2, "name": "Padilla Duke" } ], "greeting": "Hello, Cortez Newton! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea266e13e10ed687396a", "index": 3150, "guid": "d8840a9e-905e-41f8-92a3-18b7627e9465", "isActive": true, "balance": "$2,552.50", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Snow Perez", "gender": "male", "company": "ONTALITY", "email": "snowperez@ontality.com", "phone": "+1 (873) 562-3151", "address": "454 Wythe Place, Lodoga, Arizona, 3320", "about": "Ipsum reprehenderit cupidatat proident culpa non velit voluptate adipisicing ea irure. Reprehenderit esse exercitation laborum amet voluptate in sit magna culpa ut mollit irure cupidatat. Non non aliqua id aute Lorem quis id quis. Laboris ipsum duis dolore ullamco ut voluptate aliqua laboris excepteur proident ipsum anim sint laborum.\r\n", "registered": "2014-04-20T14:03:27-12:00", "latitude": 62.316044, "longitude": 25.420436, "tags": [ "reprehenderit", "ex", "nisi", "ad", "velit", "proident", "sit" ], "friends": [ { "id": 0, "name": "Saunders Hoffman" }, { "id": 1, "name": "Zimmerman Waller" }, { "id": 2, "name": "Effie Bowman" } ], "greeting": "Hello, Snow Perez! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26b4226721eedfc970", "index": 3151, "guid": "4bd62e2c-2f8d-4325-a86c-fd190dbe3a50", "isActive": false, "balance": "$3,645.98", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Brittany Morales", "gender": "female", "company": "BISBA", "email": "brittanymorales@bisba.com", "phone": "+1 (970) 510-2094", "address": "513 Calyer Street, Titanic, Federated States Of Micronesia, 2435", "about": "Id ad duis non enim Lorem culpa. Officia ex occaecat voluptate eiusmod dolor ut id Lorem anim ut exercitation. Proident dolor magna ad quis qui dolore voluptate aute fugiat do. Dolore eu enim consequat est enim minim excepteur ad pariatur nulla. Aute ipsum exercitation deserunt voluptate do adipisicing amet fugiat enim proident.\r\n", "registered": "2014-01-07T15:18:00-13:00", "latitude": 28.001664, "longitude": -138.189004, "tags": [ "eiusmod", "dolor", "nostrud", "ut", "voluptate", "sunt", "do" ], "friends": [ { "id": 0, "name": "Tamara Mejia" }, { "id": 1, "name": "Erika Hurst" }, { "id": 2, "name": "Dawn Kennedy" } ], "greeting": "Hello, Brittany Morales! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26793c6eb77922208f", "index": 3152, "guid": "9c3c4cd5-ab6a-4706-8d28-5e48b223859f", "isActive": false, "balance": "$2,408.92", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Cook Farrell", "gender": "male", "company": "TASMANIA", "email": "cookfarrell@tasmania.com", "phone": "+1 (906) 442-3261", "address": "638 Abbey Court, Edneyville, Oklahoma, 8977", "about": "Sint ea dolor incididunt reprehenderit fugiat ex aliquip esse laboris incididunt ad. Cupidatat elit voluptate deserunt deserunt laborum laboris aute irure. Ut incididunt commodo irure id eu qui ullamco consectetur ea id. Quis in incididunt cillum id cillum consequat ad amet ea laborum in dolore sint sunt. Elit aute nisi irure sint aliquip cillum non proident.\r\n", "registered": "2014-03-05T08:07:18-13:00", "latitude": -37.870056, "longitude": 131.174592, "tags": [ "Lorem", "excepteur", "nostrud", "duis", "ullamco", "id", "aute" ], "friends": [ { "id": 0, "name": "Marsh Doyle" }, { "id": 1, "name": "Burnett Hoover" }, { "id": 2, "name": "Alejandra Dalton" } ], "greeting": "Hello, Cook Farrell! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26fecaae703eacdf92", "index": 3153, "guid": "9a1047c7-34fc-496a-9e37-506a4c8665d2", "isActive": false, "balance": "$2,771.94", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Farrell Mcdowell", "gender": "male", "company": "EMTRAC", "email": "farrellmcdowell@emtrac.com", "phone": "+1 (892) 401-2679", "address": "762 Stewart Street, Westphalia, Michigan, 3521", "about": "Laborum eiusmod velit id est aliquip proident. Occaecat minim et et eu eiusmod non. Reprehenderit tempor laborum voluptate deserunt quis aliquip nisi fugiat voluptate consequat aliqua veniam ipsum occaecat. Commodo esse aute velit amet Lorem minim eu ipsum nulla non.\r\n", "registered": "2014-08-17T14:21:20-12:00", "latitude": -85.846034, "longitude": 115.781118, "tags": [ "duis", "ipsum", "irure", "culpa", "ipsum", "eiusmod", "aliquip" ], "friends": [ { "id": 0, "name": "Lilly Marsh" }, { "id": 1, "name": "Edwards Juarez" }, { "id": 2, "name": "Annie Dillard" } ], "greeting": "Hello, Farrell Mcdowell! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26678900cf98fbecd3", "index": 3154, "guid": "f018b3c7-3b9c-4275-a82a-7efa225ccdfd", "isActive": false, "balance": "$2,355.47", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Blanca Lee", "gender": "female", "company": "ENERFORCE", "email": "blancalee@enerforce.com", "phone": "+1 (897) 496-2585", "address": "267 Fay Court, Lacomb, Kansas, 4301", "about": "Est cupidatat nisi sit tempor nisi ipsum consectetur in. Elit adipisicing tempor et pariatur laboris id aliquip sint cillum. Laborum aliquip labore incididunt adipisicing commodo aliquip fugiat reprehenderit aliquip. Laboris dolore occaecat id aute eiusmod excepteur laborum elit excepteur aliqua. Ullamco et eiusmod proident veniam. Do ea et dolore officia aliquip irure elit sint ut dolor velit. Duis deserunt eu laboris deserunt aute id mollit ea nisi veniam.\r\n", "registered": "2014-08-05T00:20:34-12:00", "latitude": 23.983738, "longitude": -30.015106, "tags": [ "tempor", "minim", "id", "reprehenderit", "labore", "in", "quis" ], "friends": [ { "id": 0, "name": "Day Mayer" }, { "id": 1, "name": "Mcgowan Beard" }, { "id": 2, "name": "Tameka Randolph" } ], "greeting": "Hello, Blanca Lee! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26bedd1af385d5b2a4", "index": 3155, "guid": "f104e963-46d8-46ee-92b6-b680d863f4ee", "isActive": true, "balance": "$2,816.57", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Jerry Rocha", "gender": "female", "company": "PUSHCART", "email": "jerryrocha@pushcart.com", "phone": "+1 (868) 498-3599", "address": "452 Morgan Avenue, Martinez, South Dakota, 7968", "about": "Aliqua ipsum Lorem nostrud voluptate ad et amet consectetur consequat. Ipsum culpa aute reprehenderit aute. Nulla officia consectetur est excepteur magna do elit laboris duis eu ad. Dolor commodo aliquip ullamco ex enim est sit culpa pariatur.\r\n", "registered": "2014-01-19T21:32:38-13:00", "latitude": 56.614677, "longitude": 49.350461, "tags": [ "et", "laborum", "incididunt", "magna", "consequat", "ad", "ad" ], "friends": [ { "id": 0, "name": "Beck Owen" }, { "id": 1, "name": "Vasquez Justice" }, { "id": 2, "name": "Morgan Walters" } ], "greeting": "Hello, Jerry Rocha! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26f6f2ec88f0e724d9", "index": 3156, "guid": "2862a0bf-3890-40bc-b501-97ece000f787", "isActive": false, "balance": "$1,562.93", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Lynne Moon", "gender": "female", "company": "ISOPLEX", "email": "lynnemoon@isoplex.com", "phone": "+1 (800) 463-2487", "address": "351 Vandam Street, Bluetown, West Virginia, 7481", "about": "Labore consequat reprehenderit ullamco veniam. Eiusmod amet minim nulla irure aute labore aute in est amet sit. Consectetur duis ad proident exercitation deserunt minim aliqua commodo sunt fugiat. Esse esse ex aute qui proident. Cupidatat veniam fugiat officia minim aliquip mollit amet labore. Sit sunt proident do eiusmod quis. Laboris veniam ex velit ut ea non ex exercitation laborum culpa Lorem tempor tempor nulla.\r\n", "registered": "2014-05-23T18:01:30-12:00", "latitude": 28.449942, "longitude": 74.633809, "tags": [ "pariatur", "ea", "amet", "ullamco", "et", "occaecat", "enim" ], "friends": [ { "id": 0, "name": "Deloris Byers" }, { "id": 1, "name": "Hicks Mcdaniel" }, { "id": 2, "name": "Hopkins Pearson" } ], "greeting": "Hello, Lynne Moon! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26b729bb67876879dc", "index": 3157, "guid": "f62b6085-3b9f-42f2-8f80-991b0612ba1e", "isActive": true, "balance": "$3,799.15", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Kaufman Mcintosh", "gender": "male", "company": "GENESYNK", "email": "kaufmanmcintosh@genesynk.com", "phone": "+1 (932) 596-2624", "address": "489 Cox Place, Gallina, Texas, 1936", "about": "Ut nostrud aute ut consectetur qui dolor ad aliqua et Lorem id ex. Do labore duis magna ex occaecat ut culpa anim magna commodo nisi aute eu. Nulla tempor veniam non proident non velit ad magna officia. Dolore pariatur veniam est elit deserunt.\r\n", "registered": "2014-08-16T22:01:31-12:00", "latitude": -81.1478, "longitude": 39.485713, "tags": [ "non", "cillum", "aute", "anim", "est", "officia", "do" ], "friends": [ { "id": 0, "name": "Shanna Robertson" }, { "id": 1, "name": "Marla Sherman" }, { "id": 2, "name": "Rosa Gillespie" } ], "greeting": "Hello, Kaufman Mcintosh! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26a49a2a6fa7c00b0f", "index": 3158, "guid": "5c273e52-b549-46d0-a853-e32190266e5b", "isActive": true, "balance": "$3,358.31", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Robbie Glass", "gender": "female", "company": "REALMO", "email": "robbieglass@realmo.com", "phone": "+1 (841) 562-3285", "address": "903 Verona Place, Bartley, Oregon, 8188", "about": "Et veniam esse officia qui nisi nulla in excepteur adipisicing consequat anim eiusmod. Velit officia sit excepteur fugiat culpa tempor do. Eu aliqua proident aute ullamco est mollit tempor anim pariatur nulla elit. Esse deserunt nisi proident do.\r\n", "registered": "2014-01-22T13:55:14-13:00", "latitude": 83.546135, "longitude": 103.169756, "tags": [ "esse", "veniam", "dolore", "ex", "dolore", "ea", "aute" ], "friends": [ { "id": 0, "name": "Deanna Wells" }, { "id": 1, "name": "Skinner Love" }, { "id": 2, "name": "Tonya Owens" } ], "greeting": "Hello, Robbie Glass! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2638cda12c1ba0cf92", "index": 3159, "guid": "524fb1bf-a7b5-48a8-bb5a-d1d198a4984f", "isActive": true, "balance": "$2,222.92", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Sharlene Levy", "gender": "female", "company": "SHEPARD", "email": "sharlenelevy@shepard.com", "phone": "+1 (849) 496-3870", "address": "453 Falmouth Street, Noxen, Nevada, 4522", "about": "Sit dolor cupidatat proident qui occaecat dolor aliqua. Anim aliqua pariatur cupidatat duis velit do. Ad officia adipisicing anim ut magna veniam sunt. Exercitation veniam duis consectetur consectetur ipsum aliqua cillum non Lorem quis dolore aliquip pariatur duis.\r\n", "registered": "2014-04-22T17:50:14-12:00", "latitude": -74.330605, "longitude": 110.663264, "tags": [ "ex", "non", "sint", "nulla", "adipisicing", "id", "cupidatat" ], "friends": [ { "id": 0, "name": "Hodges Dillon" }, { "id": 1, "name": "Claudette Williamson" }, { "id": 2, "name": "Kaitlin Ware" } ], "greeting": "Hello, Sharlene Levy! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26ec61e860792a6f12", "index": 3160, "guid": "e05f66a9-0dbc-41d8-8981-47419c4ba6b7", "isActive": false, "balance": "$3,440.60", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Mcmahon Alston", "gender": "male", "company": "INSOURCE", "email": "mcmahonalston@insource.com", "phone": "+1 (814) 406-3005", "address": "121 Stoddard Place, Loomis, Minnesota, 3135", "about": "Ut ut aliquip aliqua velit et velit Lorem velit. Pariatur et laborum sit ipsum. Laboris fugiat anim ut ad officia ea id fugiat. Cupidatat labore Lorem dolore reprehenderit ipsum cillum cupidatat occaecat cillum non qui duis ut. Proident ea nostrud occaecat incididunt minim nisi in eiusmod Lorem consequat.\r\n", "registered": "2014-01-20T23:35:54-13:00", "latitude": -23.267622, "longitude": -62.896097, "tags": [ "amet", "proident", "cillum", "nisi", "eu", "velit", "veniam" ], "friends": [ { "id": 0, "name": "Aguirre Nieves" }, { "id": 1, "name": "Montgomery Deleon" }, { "id": 2, "name": "Kimberley Parrish" } ], "greeting": "Hello, Mcmahon Alston! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26cd63dd052dc692cb", "index": 3161, "guid": "0cc8a17a-a287-4c5f-a0c3-332bdb456d0f", "isActive": true, "balance": "$3,210.83", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Riggs Farley", "gender": "male", "company": "PEARLESSA", "email": "riggsfarley@pearlessa.com", "phone": "+1 (861) 599-3196", "address": "635 Dover Street, Wawona, Missouri, 2376", "about": "Incididunt veniam ex proident aliquip Lorem consequat ad mollit Lorem aute eiusmod. Incididunt culpa sint laboris ea in eu et consequat consectetur elit. Excepteur deserunt aliqua anim deserunt cupidatat in sunt cupidatat duis labore laboris elit. Excepteur Lorem quis pariatur id consequat elit qui deserunt id Lorem velit. Aliquip quis quis anim pariatur exercitation voluptate aliquip. Incididunt occaecat eu eu cillum ad elit consequat sunt quis est proident veniam.\r\n", "registered": "2014-01-15T00:10:37-13:00", "latitude": 19.238732, "longitude": -37.093695, "tags": [ "officia", "tempor", "laboris", "dolor", "qui", "amet", "sit" ], "friends": [ { "id": 0, "name": "Brittney Pugh" }, { "id": 1, "name": "Sykes Barber" }, { "id": 2, "name": "Ofelia Hayes" } ], "greeting": "Hello, Riggs Farley! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26d0682c6a31a750b6", "index": 3162, "guid": "3f8af81d-d539-469d-8263-aa85636ff261", "isActive": true, "balance": "$3,400.78", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Katelyn Pennington", "gender": "female", "company": "ARTWORLDS", "email": "katelynpennington@artworlds.com", "phone": "+1 (865) 468-3528", "address": "825 Kent Avenue, Vandiver, Rhode Island, 1213", "about": "Et reprehenderit esse aliqua ea officia eiusmod ut non sit occaecat culpa. Ut sunt sit ipsum fugiat et. Deserunt cillum veniam culpa pariatur do mollit minim est nulla. Voluptate consequat est eu sit exercitation do ad. Nostrud voluptate et reprehenderit ex occaecat ad laborum ullamco esse ipsum.\r\n", "registered": "2014-08-20T10:23:36-12:00", "latitude": 67.884325, "longitude": 134.794131, "tags": [ "incididunt", "proident", "fugiat", "ipsum", "commodo", "commodo", "Lorem" ], "friends": [ { "id": 0, "name": "Houston May" }, { "id": 1, "name": "Alexandria Hyde" }, { "id": 2, "name": "Kane Nunez" } ], "greeting": "Hello, Katelyn Pennington! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea269dc8409b364af50e", "index": 3163, "guid": "9c02f0fc-6768-4a22-88c5-3b7139aff656", "isActive": false, "balance": "$2,156.27", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Monique Hodge", "gender": "female", "company": "ZEPITOPE", "email": "moniquehodge@zepitope.com", "phone": "+1 (820) 594-3098", "address": "978 Waldane Court, Chelsea, Florida, 7004", "about": "Sit esse ullamco occaecat adipisicing non duis aliqua ut aute dolore anim amet. Adipisicing excepteur pariatur veniam excepteur pariatur velit. Ipsum nisi in dolore fugiat Lorem. Ex qui excepteur consectetur esse deserunt officia. Consequat aute aliquip sint adipisicing quis reprehenderit proident exercitation quis qui.\r\n", "registered": "2014-01-17T12:09:24-13:00", "latitude": -32.948107, "longitude": -11.67379, "tags": [ "qui", "ea", "et", "et", "laborum", "quis", "ex" ], "friends": [ { "id": 0, "name": "Andrea Dominguez" }, { "id": 1, "name": "Lott Mitchell" }, { "id": 2, "name": "Christa Rogers" } ], "greeting": "Hello, Monique Hodge! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea267ffe75750c7a9f5c", "index": 3164, "guid": "4b221b0a-5c3c-47c1-8c30-7d577060fe59", "isActive": false, "balance": "$2,239.27", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Osborne Odom", "gender": "male", "company": "CEDWARD", "email": "osborneodom@cedward.com", "phone": "+1 (802) 430-3775", "address": "329 Victor Road, Aguila, North Carolina, 1903", "about": "Elit eiusmod ea quis qui enim. Ipsum nulla reprehenderit fugiat est deserunt amet Lorem et anim enim laboris. Deserunt minim consequat duis commodo. Est nulla enim amet consequat sint mollit elit.\r\n", "registered": "2014-06-23T03:03:48-12:00", "latitude": 49.418811, "longitude": -79.028186, "tags": [ "duis", "culpa", "anim", "culpa", "aliqua", "aliqua", "eu" ], "friends": [ { "id": 0, "name": "Rice Brock" }, { "id": 1, "name": "Dawson Dixon" }, { "id": 2, "name": "Reilly Barnes" } ], "greeting": "Hello, Osborne Odom! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26dea8458d312b6e89", "index": 3165, "guid": "d9041794-5408-463a-96c8-f9531c02fc4f", "isActive": true, "balance": "$2,090.43", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Oneill Massey", "gender": "male", "company": "ZENSURE", "email": "oneillmassey@zensure.com", "phone": "+1 (806) 563-2414", "address": "394 Horace Court, Datil, New Hampshire, 3268", "about": "Cillum cupidatat exercitation nostrud aliqua nulla esse duis aute velit dolore laboris. Labore consectetur nulla eiusmod incididunt culpa consectetur qui labore mollit laborum ea duis. Exercitation cupidatat ad nulla aliquip qui do. Exercitation consequat exercitation consequat adipisicing dolore ullamco aliqua. Id exercitation nulla magna et velit do. Quis est eiusmod esse nulla exercitation eu. Laboris sint fugiat ea aliqua id cupidatat consequat reprehenderit ut mollit.\r\n", "registered": "2014-06-05T01:19:49-12:00", "latitude": 66.61518, "longitude": 171.956382, "tags": [ "officia", "qui", "quis", "eu", "non", "pariatur", "aute" ], "friends": [ { "id": 0, "name": "Calderon Morton" }, { "id": 1, "name": "Alicia Landry" }, { "id": 2, "name": "Lindsey Garcia" } ], "greeting": "Hello, Oneill Massey! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea266b701ca6fad41bfd", "index": 3166, "guid": "25e94407-7083-4dc7-aeb0-bd537336c8bb", "isActive": true, "balance": "$3,248.64", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Gilmore Bowers", "gender": "male", "company": "PHOLIO", "email": "gilmorebowers@pholio.com", "phone": "+1 (984) 476-3455", "address": "571 Sands Street, Haring, Arkansas, 3184", "about": "Tempor deserunt eiusmod in tempor sit dolor velit elit magna ut excepteur mollit. Occaecat aliqua do irure dolor culpa. Esse consectetur proident aliqua culpa qui minim id cillum veniam. Magna id exercitation Lorem incididunt proident. Amet ad anim voluptate ea magna eiusmod incididunt veniam excepteur mollit deserunt cupidatat. Consequat exercitation proident eu ex pariatur consequat aliqua duis dolore culpa officia. Consequat commodo culpa fugiat deserunt magna cillum.\r\n", "registered": "2014-08-10T05:01:42-12:00", "latitude": 12.140698, "longitude": -131.898887, "tags": [ "ipsum", "aute", "aliquip", "aliquip", "ad", "id", "Lorem" ], "friends": [ { "id": 0, "name": "Casey Whitaker" }, { "id": 1, "name": "Boone Gordon" }, { "id": 2, "name": "Campbell Downs" } ], "greeting": "Hello, Gilmore Bowers! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea260dea458b983f3f41", "index": 3167, "guid": "d2cb02d5-77a9-44d1-a5d1-fae9c649822a", "isActive": true, "balance": "$3,228.33", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Mary Rose", "gender": "female", "company": "ZOSIS", "email": "maryrose@zosis.com", "phone": "+1 (866) 409-3370", "address": "829 Cropsey Avenue, Saticoy, Iowa, 4164", "about": "Minim id velit magna reprehenderit culpa nostrud veniam ut eu officia. Cillum non nostrud culpa fugiat. Id aute nulla laborum est mollit laboris excepteur laborum cillum ex nostrud pariatur. Adipisicing laboris anim quis ullamco quis incididunt adipisicing eu eu sit. Duis quis sit esse ipsum.\r\n", "registered": "2014-02-28T18:49:35-13:00", "latitude": 57.36271, "longitude": 107.221477, "tags": [ "anim", "nisi", "ea", "commodo", "voluptate", "incididunt", "laborum" ], "friends": [ { "id": 0, "name": "Tammie Blackwell" }, { "id": 1, "name": "Rene Steele" }, { "id": 2, "name": "Moody Dorsey" } ], "greeting": "Hello, Mary Rose! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26889506bccd0b13ed", "index": 3168, "guid": "8bd02840-34ca-4908-be47-1d596d648a8c", "isActive": true, "balance": "$3,982.89", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Natalia Burch", "gender": "female", "company": "IDEGO", "email": "nataliaburch@idego.com", "phone": "+1 (951) 491-2224", "address": "724 Varick Street, Greenbackville, Nebraska, 6355", "about": "Ut nisi duis in ut veniam. Esse esse anim aliquip officia cupidatat fugiat nulla dolore occaecat. Tempor excepteur deserunt ea officia mollit duis aliqua in.\r\n", "registered": "2014-02-06T22:41:18-13:00", "latitude": -78.486104, "longitude": 132.612609, "tags": [ "laborum", "ea", "laboris", "Lorem", "ullamco", "velit", "officia" ], "friends": [ { "id": 0, "name": "Walker Miller" }, { "id": 1, "name": "Cecilia Gross" }, { "id": 2, "name": "Hayden Rowe" } ], "greeting": "Hello, Natalia Burch! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2655797a39f65fbcd9", "index": 3169, "guid": "c8948090-3479-41ea-b7fe-e65430e37264", "isActive": true, "balance": "$2,502.13", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Jacqueline Fitzgerald", "gender": "female", "company": "ISOPOP", "email": "jacquelinefitzgerald@isopop.com", "phone": "+1 (875) 529-3117", "address": "306 Tehama Street, Beechmont, District Of Columbia, 9749", "about": "Occaecat culpa ad fugiat dolor esse anim quis id enim. Do nostrud ea elit voluptate enim velit ipsum sunt mollit. Dolore elit dolor do elit elit ut quis exercitation dolor consequat deserunt pariatur labore in. Laboris laborum magna qui ea.\r\n", "registered": "2014-09-04T05:10:26-12:00", "latitude": -17.768721, "longitude": 96.515232, "tags": [ "ipsum", "ullamco", "nisi", "nostrud", "voluptate", "deserunt", "esse" ], "friends": [ { "id": 0, "name": "Sutton Burris" }, { "id": 1, "name": "Benton Case" }, { "id": 2, "name": "Harvey Hines" } ], "greeting": "Hello, Jacqueline Fitzgerald! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26ebbf277faeffd45b", "index": 3170, "guid": "73890a3c-5790-4795-bbca-bb683b8b8f8f", "isActive": true, "balance": "$1,185.99", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Craig Contreras", "gender": "male", "company": "VIAGRAND", "email": "craigcontreras@viagrand.com", "phone": "+1 (911) 531-3879", "address": "430 Amersfort Place, Bendon, New Jersey, 6998", "about": "Sit nulla eiusmod nisi ea adipisicing aliqua non officia ipsum qui deserunt ipsum magna sit. Magna non exercitation aliquip esse tempor pariatur voluptate. Elit cillum aliquip ex irure dolore veniam proident. Qui elit commodo ad qui aute enim adipisicing cupidatat.\r\n", "registered": "2014-01-02T00:42:36-13:00", "latitude": 17.927365, "longitude": -41.630294, "tags": [ "exercitation", "irure", "et", "dolore", "nisi", "eu", "nisi" ], "friends": [ { "id": 0, "name": "Miller Chen" }, { "id": 1, "name": "Richards Bean" }, { "id": 2, "name": "Marcy Burns" } ], "greeting": "Hello, Craig Contreras! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2680f16f15d442c88f", "index": 3171, "guid": "a749599c-9c11-4ada-ad59-901bb6aef2d8", "isActive": false, "balance": "$2,564.01", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Odom Bruce", "gender": "male", "company": "VORATAK", "email": "odombruce@voratak.com", "phone": "+1 (961) 530-2564", "address": "333 Hall Street, Davenport, Palau, 3694", "about": "Dolore ipsum officia do qui nisi consectetur consequat laboris aliquip tempor nulla. Nulla duis amet cillum ad sint culpa est eiusmod labore. Do cupidatat enim quis adipisicing veniam amet Lorem deserunt voluptate dolor. Cupidatat aliqua adipisicing cupidatat officia ad sit. Voluptate ea do deserunt occaecat commodo tempor velit dolor sunt dolor adipisicing ut magna. Pariatur occaecat quis esse irure eu labore proident minim et Lorem. Id adipisicing dolore do esse consequat eu sint laborum cupidatat.\r\n", "registered": "2014-09-18T06:42:17-12:00", "latitude": 20.296061, "longitude": -179.051538, "tags": [ "cillum", "anim", "id", "aliquip", "anim", "nulla", "do" ], "friends": [ { "id": 0, "name": "Watson Gilliam" }, { "id": 1, "name": "Heidi Weiss" }, { "id": 2, "name": "Fischer Sharp" } ], "greeting": "Hello, Odom Bruce! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26123e583fbd80a5af", "index": 3172, "guid": "c4d5f25c-5b1e-426b-a593-f0e9510e50ed", "isActive": true, "balance": "$1,526.01", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Potter Rivera", "gender": "male", "company": "ONTAGENE", "email": "potterrivera@ontagene.com", "phone": "+1 (817) 542-2981", "address": "904 Shale Street, Emerald, Puerto Rico, 9947", "about": "Consectetur qui duis culpa occaecat minim irure. Commodo et amet quis velit esse adipisicing ex ea incididunt magna ullamco occaecat nulla. Occaecat eu aute reprehenderit deserunt. Id aliqua cillum magna excepteur id sit anim eu tempor sunt voluptate sint. Irure minim consequat sit aliqua ad ullamco occaecat duis quis velit. Commodo ut excepteur nisi cupidatat aliquip sit nulla.\r\n", "registered": "2014-05-16T06:04:13-12:00", "latitude": -69.79719, "longitude": 140.915104, "tags": [ "ullamco", "aliqua", "id", "dolor", "nisi", "ea", "laboris" ], "friends": [ { "id": 0, "name": "Crosby Hobbs" }, { "id": 1, "name": "Kelly Parker" }, { "id": 2, "name": "Avila West" } ], "greeting": "Hello, Potter Rivera! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea265e1b0a32a70299f0", "index": 3173, "guid": "07d10c53-b57a-4679-a684-a1441b28a9a9", "isActive": true, "balance": "$3,968.64", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Sloan Peck", "gender": "male", "company": "LUNCHPOD", "email": "sloanpeck@lunchpod.com", "phone": "+1 (874) 511-2181", "address": "829 Montague Terrace, Brownlee, California, 613", "about": "Enim exercitation adipisicing ex proident. Proident elit irure consequat proident. Do non exercitation adipisicing quis. Ea officia cupidatat eu voluptate enim quis anim tempor velit.\r\n", "registered": "2014-07-16T01:36:47-12:00", "latitude": 6.598124, "longitude": -21.351631, "tags": [ "sint", "sunt", "Lorem", "mollit", "veniam", "consequat", "elit" ], "friends": [ { "id": 0, "name": "Brianna Hogan" }, { "id": 1, "name": "Hall Coffey" }, { "id": 2, "name": "Shelby Snider" } ], "greeting": "Hello, Sloan Peck! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26e1564ee29e3de351", "index": 3174, "guid": "fd0578c1-6aea-4dd7-a088-cf1e7ccb6a60", "isActive": false, "balance": "$2,483.22", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Moran Flores", "gender": "male", "company": "COREPAN", "email": "moranflores@corepan.com", "phone": "+1 (884) 510-2341", "address": "523 Prospect Place, Sattley, Vermont, 1182", "about": "Id et tempor do incididunt mollit voluptate laboris magna consectetur. Magna qui nisi est dolor deserunt anim occaecat elit adipisicing voluptate aute voluptate nisi esse. Ipsum fugiat id ipsum dolor sint non tempor occaecat.\r\n", "registered": "2014-09-15T05:37:52-12:00", "latitude": -23.283182, "longitude": 144.492893, "tags": [ "pariatur", "tempor", "ea", "laboris", "anim", "nostrud", "esse" ], "friends": [ { "id": 0, "name": "Cathryn Harrell" }, { "id": 1, "name": "Candace Henson" }, { "id": 2, "name": "Daisy Booth" } ], "greeting": "Hello, Moran Flores! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2696e0af3349568711", "index": 3175, "guid": "52856562-911e-4135-bcad-a20cd554e909", "isActive": true, "balance": "$2,937.31", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Cooke Willis", "gender": "male", "company": "JOVIOLD", "email": "cookewillis@joviold.com", "phone": "+1 (966) 523-2010", "address": "827 Anchorage Place, Takilma, Indiana, 8600", "about": "Minim consectetur sunt commodo magna eiusmod veniam laborum dolore ex amet est sint. Et esse laboris aute amet amet eu nostrud. Ea veniam est ut occaecat do Lorem proident consectetur cillum pariatur. Officia do culpa excepteur duis exercitation. Et sint cillum sint Lorem. Aliquip deserunt proident ad quis consectetur sit ad aliquip excepteur labore culpa ipsum exercitation occaecat. Do id minim consequat tempor in amet.\r\n", "registered": "2014-07-24T21:06:59-12:00", "latitude": -8.762444, "longitude": 175.727906, "tags": [ "cupidatat", "nostrud", "esse", "nisi", "occaecat", "excepteur", "deserunt" ], "friends": [ { "id": 0, "name": "Mayra Carpenter" }, { "id": 1, "name": "Sullivan Pena" }, { "id": 2, "name": "Gamble Washington" } ], "greeting": "Hello, Cooke Willis! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2675d87fb199dc3818", "index": 3176, "guid": "07490fd5-2bd7-4fb7-8d6e-9961b78dd137", "isActive": false, "balance": "$2,510.70", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Chaney Potter", "gender": "male", "company": "EBIDCO", "email": "chaneypotter@ebidco.com", "phone": "+1 (850) 528-2154", "address": "964 Essex Street, Walker, Illinois, 222", "about": "Commodo non est eiusmod qui laboris consequat ex magna occaecat velit sint minim occaecat id. Eu fugiat excepteur elit anim quis duis labore laboris. Anim eu aute sit aute enim anim culpa sunt eu nulla nostrud dolor. Enim duis duis id nulla dolore voluptate enim. Officia nulla non pariatur veniam nisi Lorem laborum reprehenderit adipisicing. Reprehenderit est anim exercitation cupidatat aute occaecat aute deserunt voluptate nulla aliquip commodo tempor.\r\n", "registered": "2014-03-04T10:17:22-13:00", "latitude": 14.795689, "longitude": -68.115497, "tags": [ "velit", "est", "sint", "mollit", "adipisicing", "voluptate", "sint" ], "friends": [ { "id": 0, "name": "Jimenez Gates" }, { "id": 1, "name": "Hood Hopkins" }, { "id": 2, "name": "Melendez Gilbert" } ], "greeting": "Hello, Chaney Potter! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea265177d5c79e4d9c7d", "index": 3177, "guid": "0c80cf45-353d-4058-8734-5da0bd4fd207", "isActive": true, "balance": "$3,642.73", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Cervantes Walls", "gender": "male", "company": "RODEMCO", "email": "cervanteswalls@rodemco.com", "phone": "+1 (898) 493-2832", "address": "925 Fiske Place, Bellamy, South Carolina, 2546", "about": "Excepteur aliqua pariatur qui mollit labore id. Exercitation consectetur qui anim anim ad non minim. Cillum dolore eiusmod officia Lorem magna excepteur. In veniam occaecat commodo dolore nisi officia minim ea. Fugiat veniam voluptate qui adipisicing ad quis. Veniam qui dolor consequat dolor cupidatat. Ipsum labore laborum duis aliquip eu ipsum deserunt labore labore cillum eu.\r\n", "registered": "2014-03-08T15:01:41-13:00", "latitude": -35.048004, "longitude": -0.455583, "tags": [ "excepteur", "deserunt", "nulla", "ad", "in", "veniam", "sunt" ], "friends": [ { "id": 0, "name": "Marisol Franklin" }, { "id": 1, "name": "Linda Reed" }, { "id": 2, "name": "Joy Odonnell" } ], "greeting": "Hello, Cervantes Walls! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26d51da0eb324ba19a", "index": 3178, "guid": "10645bdb-e834-496e-9e4d-d9a93c0f1bd1", "isActive": false, "balance": "$2,283.12", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Melissa Chang", "gender": "female", "company": "OVIUM", "email": "melissachang@ovium.com", "phone": "+1 (825) 498-3891", "address": "156 Sunnyside Court, Freeburn, American Samoa, 3142", "about": "Deserunt laboris ex aute fugiat pariatur. Enim elit ut ipsum incididunt amet. Qui ex dolor reprehenderit elit laborum enim. Eiusmod minim duis laboris dolore est sint. Consequat deserunt quis culpa officia occaecat sint ex aliquip nisi excepteur nisi amet elit. Ut est reprehenderit minim laboris deserunt dolore sunt minim et. Nisi anim voluptate aliqua sit incididunt ullamco sint in dolore labore nisi occaecat dolor.\r\n", "registered": "2014-03-15T10:07:04-13:00", "latitude": 12.897733, "longitude": 55.810671, "tags": [ "in", "ea", "ullamco", "aliqua", "adipisicing", "fugiat", "nisi" ], "friends": [ { "id": 0, "name": "Hope Snyder" }, { "id": 1, "name": "Rae Elliott" }, { "id": 2, "name": "Wilkins Neal" } ], "greeting": "Hello, Melissa Chang! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea262ad5657ee42d9ecc", "index": 3179, "guid": "5d43a4fb-5ca0-4174-93ca-3025a9d5f3ad", "isActive": true, "balance": "$1,530.28", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Mcclure Boone", "gender": "male", "company": "HALAP", "email": "mcclureboone@halap.com", "phone": "+1 (962) 457-2751", "address": "396 Louisiana Avenue, Canterwood, Delaware, 6657", "about": "Minim pariatur esse minim sint consectetur in ipsum amet eiusmod ex dolor. Consequat eiusmod irure amet qui dolor. Fugiat pariatur enim exercitation mollit incididunt cillum irure tempor aliquip non eiusmod velit non. Duis incididunt fugiat sunt id labore anim esse proident culpa magna anim. Laboris sit magna ut ullamco commodo incididunt. Pariatur cillum aliqua cillum culpa officia adipisicing adipisicing ad proident qui id. Culpa consectetur consectetur laborum anim irure occaecat mollit.\r\n", "registered": "2014-02-11T14:53:23-13:00", "latitude": 16.211598, "longitude": -121.658317, "tags": [ "dolore", "qui", "aute", "deserunt", "enim", "eiusmod", "enim" ], "friends": [ { "id": 0, "name": "Kelli Valencia" }, { "id": 1, "name": "Georgette Robinson" }, { "id": 2, "name": "Rollins Macdonald" } ], "greeting": "Hello, Mcclure Boone! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2678ea71a7acbf7af6", "index": 3180, "guid": "58e099a5-5d46-4702-8a7f-1498e7235819", "isActive": true, "balance": "$2,812.70", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Le Santiago", "gender": "male", "company": "EXOSIS", "email": "lesantiago@exosis.com", "phone": "+1 (816) 574-2627", "address": "666 Fountain Avenue, Waiohinu, Pennsylvania, 2996", "about": "Ea cillum Lorem officia anim eiusmod dolore aute aute minim enim sit proident dolor. Id irure id non non occaecat Lorem ullamco duis eiusmod. Et esse velit reprehenderit velit qui adipisicing reprehenderit cupidatat. Duis dolor quis duis reprehenderit irure sint non aliquip magna est non reprehenderit. Mollit velit commodo quis reprehenderit consequat culpa cupidatat cupidatat dolore ullamco.\r\n", "registered": "2014-08-17T09:33:04-12:00", "latitude": -63.287155, "longitude": 108.613696, "tags": [ "excepteur", "irure", "dolore", "dolore", "aliquip", "labore", "minim" ], "friends": [ { "id": 0, "name": "Conley Bartlett" }, { "id": 1, "name": "Celina Weeks" }, { "id": 2, "name": "Fanny Lott" } ], "greeting": "Hello, Le Santiago! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2669e9d01319028979", "index": 3181, "guid": "b47eb9e3-ca22-4419-bf88-f0c63240dea8", "isActive": true, "balance": "$2,622.61", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Macias Oconnor", "gender": "male", "company": "HYDROCOM", "email": "maciasoconnor@hydrocom.com", "phone": "+1 (971) 570-3715", "address": "620 Catherine Street, Tampico, Georgia, 3136", "about": "Dolor cupidatat esse consectetur irure consequat. Non excepteur deserunt nostrud nisi excepteur esse consequat proident. Ea consectetur fugiat deserunt anim cupidatat velit do ipsum labore laborum laboris eiusmod ex ea. Eu pariatur minim deserunt reprehenderit qui mollit reprehenderit id Lorem ad. Ad occaecat cillum qui deserunt ea nostrud ex anim sint consectetur enim.\r\n", "registered": "2014-05-14T07:32:19-12:00", "latitude": -8.923576, "longitude": 86.849749, "tags": [ "quis", "est", "occaecat", "ea", "aliqua", "officia", "proident" ], "friends": [ { "id": 0, "name": "Church Dejesus" }, { "id": 1, "name": "Mable Cline" }, { "id": 2, "name": "Amparo Larson" } ], "greeting": "Hello, Macias Oconnor! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2622cc4bf5c97ac8d5", "index": 3182, "guid": "60146a56-4173-4a3d-9dff-31de7f7738f0", "isActive": false, "balance": "$3,316.70", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Bennett Velazquez", "gender": "male", "company": "AFFLUEX", "email": "bennettvelazquez@affluex.com", "phone": "+1 (934) 589-2467", "address": "903 Irwin Street, Lupton, North Dakota, 8014", "about": "Aliqua minim reprehenderit laborum proident elit sint. Excepteur consectetur quis veniam do ipsum amet. Id magna id anim proident est in in officia veniam. Dolore id dolor dolore irure sunt labore minim ad nisi tempor quis amet ipsum. Id veniam deserunt consequat veniam aute deserunt eu.\r\n", "registered": "2014-01-15T15:47:38-13:00", "latitude": -78.946233, "longitude": -179.075625, "tags": [ "sint", "consectetur", "eu", "eiusmod", "sunt", "amet", "mollit" ], "friends": [ { "id": 0, "name": "Yvette Newman" }, { "id": 1, "name": "Claudia Dyer" }, { "id": 2, "name": "Christian Blair" } ], "greeting": "Hello, Bennett Velazquez! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26fc771be93dd01aa8", "index": 3183, "guid": "51d4759d-d6d7-4cb2-9d91-fbe30bf0c230", "isActive": true, "balance": "$2,940.49", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Fowler Keller", "gender": "male", "company": "GEOFORMA", "email": "fowlerkeller@geoforma.com", "phone": "+1 (976) 573-3647", "address": "263 Chester Avenue, Ilchester, Louisiana, 8223", "about": "Id ut ut tempor deserunt aliquip exercitation. Enim occaecat ex eiusmod id dolor velit aliquip commodo laborum. Dolor ut ad non ut.\r\n", "registered": "2014-08-06T10:31:31-12:00", "latitude": -1.511379, "longitude": -145.336986, "tags": [ "in", "cupidatat", "dolore", "elit", "esse", "magna", "et" ], "friends": [ { "id": 0, "name": "Tammi Hampton" }, { "id": 1, "name": "Castaneda Hernandez" }, { "id": 2, "name": "Mindy Nguyen" } ], "greeting": "Hello, Fowler Keller! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26a13c88b827d2c645", "index": 3184, "guid": "f43747ee-5225-4bde-9be4-bfa94a130a49", "isActive": false, "balance": "$2,551.67", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Pickett Ingram", "gender": "male", "company": "REMOTION", "email": "pickettingram@remotion.com", "phone": "+1 (835) 507-2440", "address": "974 Crescent Street, Allentown, Northern Mariana Islands, 3881", "about": "Et eu aute id in irure proident. Officia deserunt adipisicing enim ea esse sit laboris excepteur dolor. Irure esse officia ad Lorem reprehenderit ea sint quis elit aliquip.\r\n", "registered": "2014-05-17T17:41:38-12:00", "latitude": 85.678643, "longitude": -81.076367, "tags": [ "elit", "reprehenderit", "aliqua", "aliqua", "exercitation", "duis", "fugiat" ], "friends": [ { "id": 0, "name": "Owen Maldonado" }, { "id": 1, "name": "Silvia Guthrie" }, { "id": 2, "name": "Mcknight Fletcher" } ], "greeting": "Hello, Pickett Ingram! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea262d60111a3d181bb8", "index": 3185, "guid": "14357192-cf22-423f-b5fd-0f34581d91de", "isActive": true, "balance": "$3,235.66", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Jeannine Jarvis", "gender": "female", "company": "SUPREMIA", "email": "jeanninejarvis@supremia.com", "phone": "+1 (813) 500-3440", "address": "896 Rugby Road, Grahamtown, Colorado, 6792", "about": "Proident enim ad dolore do est eiusmod ut mollit velit laborum consequat laboris anim. Quis cupidatat dolor nostrud ullamco in do Lorem fugiat id et sint nisi. Officia eiusmod cillum velit minim amet deserunt incididunt aliquip ex qui quis do consectetur ad. Laborum sunt incididunt dolor ullamco aliqua ullamco eiusmod ullamco. Aute veniam non anim laborum officia aliqua duis magna occaecat aliqua incididunt eu. Occaecat in cupidatat aliqua et commodo aliquip duis ea commodo nisi. Culpa cillum duis ad nostrud esse Lorem esse exercitation laborum ullamco cupidatat in.\r\n", "registered": "2014-06-04T04:54:54-12:00", "latitude": -40.303089, "longitude": -107.764026, "tags": [ "laborum", "eiusmod", "minim", "qui", "labore", "sunt", "est" ], "friends": [ { "id": 0, "name": "Burton Hinton" }, { "id": 1, "name": "Frieda Battle" }, { "id": 2, "name": "Ila Allen" } ], "greeting": "Hello, Jeannine Jarvis! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea267cd41a62be04a575", "index": 3186, "guid": "cd1babce-8620-4c0c-adb7-aad5ed609f27", "isActive": true, "balance": "$2,846.67", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Cora Barrett", "gender": "female", "company": "NEWCUBE", "email": "corabarrett@newcube.com", "phone": "+1 (964) 426-2867", "address": "289 Hewes Street, Itmann, Idaho, 9203", "about": "Magna aute amet irure ea esse aliquip ullamco minim tempor ea irure enim cupidatat pariatur. Fugiat non ex incididunt nisi. Duis sunt do laboris laborum esse irure excepteur sit est. Exercitation excepteur irure culpa in magna. Voluptate esse officia eu laborum velit sunt ullamco aute aliquip consequat id incididunt voluptate ipsum. Do cillum nisi et eiusmod reprehenderit non sunt aliquip ipsum.\r\n", "registered": "2014-07-23T04:53:16-12:00", "latitude": -13.216596, "longitude": 84.270767, "tags": [ "aliquip", "amet", "exercitation", "enim", "eu", "aliqua", "Lorem" ], "friends": [ { "id": 0, "name": "Kay Rojas" }, { "id": 1, "name": "Little Dotson" }, { "id": 2, "name": "Summer Spence" } ], "greeting": "Hello, Cora Barrett! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea267c40cf8d07525b88", "index": 3187, "guid": "a29ebd36-eac2-4703-81d9-4349baf41110", "isActive": false, "balance": "$3,440.29", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Mason Burke", "gender": "male", "company": "ZENSOR", "email": "masonburke@zensor.com", "phone": "+1 (847) 403-2365", "address": "175 Beacon Court, Topanga, Marshall Islands, 9474", "about": "Et culpa ea dolore quis dolor et. Ea mollit tempor minim ea excepteur. Irure qui enim consectetur enim sit. Aliquip deserunt magna commodo dolor cupidatat. Nulla minim veniam duis laborum incididunt esse Lorem pariatur do. Duis esse est fugiat consequat sunt occaecat id id.\r\n", "registered": "2014-04-17T01:24:40-12:00", "latitude": -47.494448, "longitude": 147.76877, "tags": [ "ullamco", "nostrud", "occaecat", "aute", "labore", "esse", "tempor" ], "friends": [ { "id": 0, "name": "Bowen Rosario" }, { "id": 1, "name": "Rosario Stephenson" }, { "id": 2, "name": "Lacey Frederick" } ], "greeting": "Hello, Mason Burke! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2669c62703507530f5", "index": 3188, "guid": "af272c3d-4f85-4b7b-b75b-18a4fa871612", "isActive": false, "balance": "$2,928.21", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Cochran Kirkland", "gender": "male", "company": "SYBIXTEX", "email": "cochrankirkland@sybixtex.com", "phone": "+1 (968) 519-3208", "address": "156 Porter Avenue, Ribera, New York, 7907", "about": "Anim nostrud incididunt culpa qui tempor amet mollit consequat elit culpa nulla qui. Ea laborum aliquip magna reprehenderit officia sit laboris tempor proident ea reprehenderit. Labore pariatur sit consequat tempor dolore ipsum incididunt aliquip adipisicing elit qui tempor cillum irure. Ut sint enim tempor veniam occaecat ipsum id ea nisi consequat elit cillum culpa culpa. Minim eu dolore cillum anim ea proident consequat non elit.\r\n", "registered": "2014-04-06T07:50:57-12:00", "latitude": 65.453326, "longitude": 170.095692, "tags": [ "dolor", "exercitation", "dolore", "laborum", "id", "ex", "dolore" ], "friends": [ { "id": 0, "name": "Alston Wall" }, { "id": 1, "name": "Greer Parsons" }, { "id": 2, "name": "Douglas Curtis" } ], "greeting": "Hello, Cochran Kirkland! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2605b97bfdc277d204", "index": 3189, "guid": "8f77df09-2cac-47b6-a2fb-81e369eb3b0a", "isActive": true, "balance": "$2,352.46", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Jill Diaz", "gender": "female", "company": "FURNITECH", "email": "jilldiaz@furnitech.com", "phone": "+1 (908) 422-2297", "address": "989 Meserole Avenue, Coloma, Guam, 4968", "about": "Officia ipsum commodo dolore est. Commodo proident exercitation irure incididunt eu. In id incididunt nulla anim Lorem do aliquip cupidatat. Duis incididunt minim labore do pariatur consectetur ut ut amet qui eiusmod.\r\n", "registered": "2014-05-12T05:50:24-12:00", "latitude": -46.598255, "longitude": -139.570772, "tags": [ "ullamco", "occaecat", "reprehenderit", "laborum", "dolore", "incididunt", "cillum" ], "friends": [ { "id": 0, "name": "Marva Henderson" }, { "id": 1, "name": "Moses Fisher" }, { "id": 2, "name": "Francis Forbes" } ], "greeting": "Hello, Jill Diaz! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea269a0343fa8e764793", "index": 3190, "guid": "0a3e223c-a590-4cea-879c-3ed7d6030425", "isActive": true, "balance": "$2,821.15", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Jenkins Bass", "gender": "male", "company": "DEVILTOE", "email": "jenkinsbass@deviltoe.com", "phone": "+1 (825) 525-3682", "address": "639 Knapp Street, Kempton, Virgin Islands, 1836", "about": "Dolore eiusmod ullamco officia cupidatat consequat sunt tempor ea. Pariatur eu nulla ad dolore occaecat ex labore Lorem. Dolor sunt velit esse anim aute sit. Eu non qui excepteur incididunt laborum adipisicing cupidatat elit et aliqua. Amet quis ea voluptate aliqua mollit. Esse enim in Lorem magna aute laborum. Amet veniam adipisicing cupidatat non esse quis tempor proident.\r\n", "registered": "2014-01-18T22:12:10-13:00", "latitude": 72.210313, "longitude": 107.24041, "tags": [ "ut", "nostrud", "anim", "fugiat", "nostrud", "ullamco", "veniam" ], "friends": [ { "id": 0, "name": "Leticia Rowland" }, { "id": 1, "name": "Merritt Horn" }, { "id": 2, "name": "Harper Yates" } ], "greeting": "Hello, Jenkins Bass! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26a9e4401bc66e5b44", "index": 3191, "guid": "f66a2f68-154d-42d9-967b-cd82002bc671", "isActive": false, "balance": "$1,757.97", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Boyer Spears", "gender": "male", "company": "PYRAMIS", "email": "boyerspears@pyramis.com", "phone": "+1 (947) 507-3515", "address": "129 Christopher Avenue, Hilltop, Massachusetts, 858", "about": "Nisi ullamco amet voluptate in aliquip ex dolore elit ex ipsum Lorem. Incididunt nulla non culpa magna do laborum cillum laboris duis duis. Exercitation commodo quis et ex. Aliqua duis nisi anim id eu et magna exercitation pariatur eiusmod. Irure duis irure incididunt laboris magna voluptate duis.\r\n", "registered": "2014-09-16T07:38:01-12:00", "latitude": 33.145097, "longitude": -58.122113, "tags": [ "exercitation", "minim", "aute", "eiusmod", "ullamco", "non", "non" ], "friends": [ { "id": 0, "name": "Ferguson Hester" }, { "id": 1, "name": "Compton Fernandez" }, { "id": 2, "name": "Foreman Sweeney" } ], "greeting": "Hello, Boyer Spears! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea261a8cc03435eaa81d", "index": 3192, "guid": "c2a88549-603d-433c-96e0-9d242fc1ea71", "isActive": true, "balance": "$3,408.12", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Kidd Abbott", "gender": "male", "company": "CYTREK", "email": "kiddabbott@cytrek.com", "phone": "+1 (921) 448-3382", "address": "229 Townsend Street, Foscoe, Utah, 7057", "about": "Duis id sit qui anim duis minim aliquip eiusmod nisi exercitation qui consectetur amet. Non anim et reprehenderit adipisicing eu duis velit est et consectetur aliqua deserunt. Eiusmod cillum incididunt dolor laborum commodo aute laboris. Non ad eu elit elit non nulla ad culpa et in tempor. Culpa pariatur enim ipsum sint nostrud aliqua commodo minim sunt nulla. Officia enim velit voluptate id minim ea sunt irure mollit ad occaecat.\r\n", "registered": "2014-05-11T10:10:01-12:00", "latitude": 46.571771, "longitude": -45.302925, "tags": [ "veniam", "voluptate", "sint", "mollit", "nisi", "cupidatat", "nostrud" ], "friends": [ { "id": 0, "name": "Stein Kane" }, { "id": 1, "name": "Leona Clements" }, { "id": 2, "name": "Mcdowell Romero" } ], "greeting": "Hello, Kidd Abbott! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26dc72ac07bc6d2e3d", "index": 3193, "guid": "dcb3470f-8a11-450e-bfe7-fb9c3d541e6c", "isActive": true, "balance": "$2,323.23", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Collins Moore", "gender": "male", "company": "EPLOSION", "email": "collinsmoore@eplosion.com", "phone": "+1 (887) 487-3987", "address": "451 Rutland Road, Century, Montana, 5848", "about": "Consectetur consectetur ullamco veniam ullamco ex et ex quis. Culpa est eu est est aliqua culpa qui. Commodo laboris do non elit aliqua nulla ea sint proident irure elit dolor consequat. Ex irure laboris voluptate cillum ea mollit qui mollit est do commodo Lorem. Sunt dolore ullamco est nisi veniam sint do nulla cillum proident velit nulla.\r\n", "registered": "2014-02-08T15:32:37-13:00", "latitude": 81.981113, "longitude": 134.966133, "tags": [ "culpa", "culpa", "laborum", "qui", "proident", "id", "minim" ], "friends": [ { "id": 0, "name": "Juliette Adams" }, { "id": 1, "name": "Marcia Mcfadden" }, { "id": 2, "name": "Charlotte Clarke" } ], "greeting": "Hello, Collins Moore! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26b368f8a476720eef", "index": 3194, "guid": "58b198a3-9f28-4db1-8a98-830526b84ce5", "isActive": false, "balance": "$2,442.54", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Araceli Church", "gender": "female", "company": "EXOZENT", "email": "aracelichurch@exozent.com", "phone": "+1 (973) 593-2358", "address": "651 Kenmore Terrace, Finderne, Wisconsin, 9249", "about": "Incididunt fugiat nostrud quis consectetur adipisicing adipisicing adipisicing fugiat ullamco magna. Sint exercitation eiusmod veniam non. Pariatur laborum sunt sint quis pariatur nisi ullamco et ex proident nulla excepteur reprehenderit laboris. Do sunt elit sit sint excepteur nisi mollit ea sunt non pariatur sunt sit qui. Irure ea quis do nisi.\r\n", "registered": "2014-09-05T21:39:56-12:00", "latitude": -0.11928, "longitude": -2.898285, "tags": [ "ex", "ut", "fugiat", "veniam", "veniam", "consequat", "labore" ], "friends": [ { "id": 0, "name": "Rebecca David" }, { "id": 1, "name": "Tabitha Mcdonald" }, { "id": 2, "name": "Foley Lindsay" } ], "greeting": "Hello, Araceli Church! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26b88d302183044788", "index": 3195, "guid": "14d208fd-3e37-4fb4-a8b4-4ffb750a30f5", "isActive": true, "balance": "$3,964.71", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Dale Key", "gender": "male", "company": "LIMOZEN", "email": "dalekey@limozen.com", "phone": "+1 (933) 564-2909", "address": "511 Canarsie Road, Carlton, Maine, 1404", "about": "Excepteur dolor nulla do enim quis aliquip. Quis minim dolore qui adipisicing quis in. Aliqua et duis est Lorem eu tempor non aliquip laboris officia cupidatat adipisicing. Reprehenderit aliqua consectetur quis eu sint aliquip esse occaecat dolor officia. Laborum veniam ea irure et officia aliquip ut magna aliquip qui culpa anim sit. Mollit deserunt laborum anim ipsum duis laborum culpa ut occaecat sint.\r\n", "registered": "2014-02-28T08:57:19-13:00", "latitude": 43.966914, "longitude": 70.079844, "tags": [ "mollit", "enim", "nulla", "pariatur", "aliquip", "ex", "et" ], "friends": [ { "id": 0, "name": "Carey Murray" }, { "id": 1, "name": "Hansen Phelps" }, { "id": 2, "name": "Mullen Wolf" } ], "greeting": "Hello, Dale Key! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2663e938a227b4eb77", "index": 3196, "guid": "547e6db4-aa63-4291-8d9a-35ee34b80139", "isActive": false, "balance": "$2,854.02", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Emma Hooper", "gender": "female", "company": "GRUPOLI", "email": "emmahooper@grupoli.com", "phone": "+1 (985) 527-2136", "address": "273 Elm Place, Harrison, Virginia, 9775", "about": "Minim ullamco esse incididunt do veniam ullamco minim id mollit laboris et cillum id. Proident sit cillum fugiat aliquip duis. Nostrud excepteur mollit Lorem qui ea quis cillum ipsum minim esse. Duis proident consequat sunt tempor.\r\n", "registered": "2014-07-19T14:11:48-12:00", "latitude": -72.621853, "longitude": -61.909331, "tags": [ "tempor", "Lorem", "do", "reprehenderit", "irure", "voluptate", "veniam" ], "friends": [ { "id": 0, "name": "Dillon Mills" }, { "id": 1, "name": "Cleveland Middleton" }, { "id": 2, "name": "Carolina Hawkins" } ], "greeting": "Hello, Emma Hooper! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26a05b632e00f78baf", "index": 3197, "guid": "295a9ca8-f520-4faf-89bc-9e2bf6aff4da", "isActive": true, "balance": "$1,845.88", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Fitzgerald Norris", "gender": "male", "company": "GEEKMOSIS", "email": "fitzgeraldnorris@geekmosis.com", "phone": "+1 (952) 415-3590", "address": "708 Veranda Place, Caroleen, Kentucky, 7165", "about": "Excepteur ex veniam veniam deserunt deserunt do excepteur. Irure cupidatat aliqua laborum non nisi do tempor do culpa duis Lorem esse ut ea. Magna enim id sint laboris ullamco. Proident magna consectetur sint ut consequat minim officia officia.\r\n", "registered": "2014-09-20T02:33:50-12:00", "latitude": 3.577193, "longitude": 109.352824, "tags": [ "culpa", "do", "culpa", "fugiat", "tempor", "laboris", "irure" ], "friends": [ { "id": 0, "name": "Graham Rich" }, { "id": 1, "name": "Marks Cervantes" }, { "id": 2, "name": "Freeman Campbell" } ], "greeting": "Hello, Fitzgerald Norris! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2673cbf73e06942c7c", "index": 3198, "guid": "0e224137-23f6-49dd-93ce-60f1e7b6ea73", "isActive": false, "balance": "$1,822.69", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Virgie Mcfarland", "gender": "female", "company": "AMRIL", "email": "virgiemcfarland@amril.com", "phone": "+1 (896) 480-2949", "address": "726 Cobek Court, Bayview, Connecticut, 8847", "about": "In laborum occaecat id tempor commodo irure dolor est culpa ullamco ipsum veniam exercitation. Ullamco mollit ullamco cupidatat do esse commodo quis consequat. Aute sint et cupidatat ea aute duis nulla qui nisi officia elit. Veniam proident consequat aliqua tempor voluptate veniam dolor officia elit. Occaecat officia sit aliquip veniam duis cupidatat nulla proident exercitation consectetur. Nisi incididunt sunt eiusmod ut excepteur mollit aliquip officia nulla.\r\n", "registered": "2014-01-31T03:48:24-13:00", "latitude": -22.547453, "longitude": -40.384936, "tags": [ "nisi", "cillum", "adipisicing", "veniam", "aliqua", "nisi", "incididunt" ], "friends": [ { "id": 0, "name": "Hart Beach" }, { "id": 1, "name": "Tiffany Vaughn" }, { "id": 2, "name": "Carr Ashley" } ], "greeting": "Hello, Virgie Mcfarland! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26869bc03a6b23f923", "index": 3199, "guid": "efd7748b-7e20-461c-9517-654c57dffe45", "isActive": true, "balance": "$1,756.80", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Olsen Chandler", "gender": "male", "company": "MAGNEATO", "email": "olsenchandler@magneato.com", "phone": "+1 (981) 577-2827", "address": "478 Miller Avenue, Gardiner, Mississippi, 2005", "about": "Duis et non duis officia. Dolor veniam elit consequat elit ullamco eiusmod id sint officia officia culpa et minim. Aliqua fugiat incididunt cupidatat dolor veniam fugiat ad.\r\n", "registered": "2014-05-01T22:44:56-12:00", "latitude": 79.316584, "longitude": 0.785139, "tags": [ "esse", "nostrud", "tempor", "sint", "nostrud", "culpa", "aute" ], "friends": [ { "id": 0, "name": "Herman Vaughan" }, { "id": 1, "name": "Elisabeth Robbins" }, { "id": 2, "name": "Vicki Levine" } ], "greeting": "Hello, Olsen Chandler! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea266fc212493b788714", "index": 3200, "guid": "f6135bd2-61a8-48b8-965c-4bdbafb1731e", "isActive": true, "balance": "$2,767.25", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Oconnor Combs", "gender": "male", "company": "ARCTIQ", "email": "oconnorcombs@arctiq.com", "phone": "+1 (941) 597-2768", "address": "136 Lake Place, Deercroft, Washington, 9718", "about": "Ullamco magna sit sunt anim non aliqua ullamco qui id. Exercitation nostrud consequat fugiat esse cupidatat enim voluptate exercitation veniam sit ut adipisicing nisi. Quis esse est ut dolore officia commodo.\r\n", "registered": "2014-01-03T13:00:04-13:00", "latitude": 14.516829, "longitude": -148.780596, "tags": [ "nostrud", "ea", "Lorem", "culpa", "fugiat", "exercitation", "sint" ], "friends": [ { "id": 0, "name": "Barry Schwartz" }, { "id": 1, "name": "Carrillo Sims" }, { "id": 2, "name": "Lorrie Maxwell" } ], "greeting": "Hello, Oconnor Combs! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2652b63471942b3999", "index": 3201, "guid": "b5e16af2-0f02-4c56-a8bc-2a03e2db82f3", "isActive": false, "balance": "$2,781.53", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Lessie Talley", "gender": "female", "company": "GEEKNET", "email": "lessietalley@geeknet.com", "phone": "+1 (824) 594-2901", "address": "736 Aurelia Court, Balm, Tennessee, 8725", "about": "Tempor enim laboris incididunt ipsum. Do aliquip incididunt esse minim sunt dolor nostrud proident labore. In laborum ad incididunt ut esse ea est ut laborum in amet ullamco. Quis esse velit in ullamco cupidatat ex ea id irure. Ea labore ipsum occaecat sit commodo aute voluptate ad tempor. Labore in est exercitation et commodo do voluptate id. Est laborum cupidatat proident id et do sint aliqua voluptate pariatur.\r\n", "registered": "2014-04-14T04:38:13-12:00", "latitude": -56.248053, "longitude": -73.495209, "tags": [ "sunt", "consectetur", "dolor", "voluptate", "minim", "duis", "aliquip" ], "friends": [ { "id": 0, "name": "Hoffman Knowles" }, { "id": 1, "name": "Cooley Green" }, { "id": 2, "name": "Poole Gutierrez" } ], "greeting": "Hello, Lessie Talley! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26b40594dffdc5e0ee", "index": 3202, "guid": "cf2547f0-18e9-494e-a2fd-cf0abb5ce075", "isActive": true, "balance": "$2,780.13", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Caitlin Rivers", "gender": "female", "company": "DELPHIDE", "email": "caitlinrivers@delphide.com", "phone": "+1 (910) 550-2161", "address": "977 Imlay Street, Blue, Alabama, 3637", "about": "Id anim est nostrud excepteur exercitation sit exercitation reprehenderit non. Fugiat pariatur ut anim occaecat reprehenderit aliquip veniam cupidatat veniam. Nulla eiusmod amet non aliqua culpa aliquip ex fugiat deserunt deserunt labore anim Lorem. Excepteur laboris proident Lorem consequat aliqua cillum mollit dolore veniam sint deserunt labore exercitation proident.\r\n", "registered": "2014-07-26T18:09:17-12:00", "latitude": 44.709528, "longitude": -31.790172, "tags": [ "sit", "adipisicing", "enim", "amet", "deserunt", "velit", "et" ], "friends": [ { "id": 0, "name": "Wilson Garner" }, { "id": 1, "name": "Georgina Mann" }, { "id": 2, "name": "Matilda Harvey" } ], "greeting": "Hello, Caitlin Rivers! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26090384213235560b", "index": 3203, "guid": "bc9898e1-7d17-405a-ae72-293a600ee93e", "isActive": true, "balance": "$3,546.77", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Howe Pollard", "gender": "male", "company": "APEXTRI", "email": "howepollard@apextri.com", "phone": "+1 (905) 449-3120", "address": "160 Beach Place, Motley, Ohio, 7530", "about": "Et ut do sint excepteur dolore Lorem ipsum minim est aliquip. Minim velit ullamco proident ipsum laboris reprehenderit. Cillum pariatur ipsum tempor sunt sunt aute excepteur laboris ullamco. Labore ea consequat cupidatat aute proident enim. Tempor tempor culpa aliqua qui proident consequat officia quis cillum. Mollit in nostrud aute ullamco minim incididunt et est sit.\r\n", "registered": "2014-01-25T17:00:45-13:00", "latitude": -18.541735, "longitude": -112.999928, "tags": [ "minim", "laboris", "dolore", "nostrud", "officia", "excepteur", "velit" ], "friends": [ { "id": 0, "name": "Franks Davenport" }, { "id": 1, "name": "Maldonado Norton" }, { "id": 2, "name": "Catalina Mendez" } ], "greeting": "Hello, Howe Pollard! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2658e40b71c6396484", "index": 3204, "guid": "dc9555eb-b652-49ea-b7d9-20d070e38ef3", "isActive": true, "balance": "$1,738.47", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Lavonne George", "gender": "female", "company": "TELLIFLY", "email": "lavonnegeorge@tellifly.com", "phone": "+1 (879) 591-3266", "address": "285 Interborough Parkway, Greenbush, Hawaii, 9531", "about": "Ut do id eiusmod fugiat ipsum quis irure voluptate id. Et est eiusmod labore excepteur commodo esse id sint. Cupidatat reprehenderit exercitation cillum exercitation veniam ea. Laboris et incididunt adipisicing laboris esse minim officia excepteur labore deserunt dolor. Cillum commodo eu nostrud et amet minim.\r\n", "registered": "2014-02-21T19:18:33-13:00", "latitude": 88.63899, "longitude": 92.78174, "tags": [ "aute", "veniam", "duis", "sunt", "ipsum", "tempor", "culpa" ], "friends": [ { "id": 0, "name": "Logan Park" }, { "id": 1, "name": "Jeanine Kerr" }, { "id": 2, "name": "Mcdonald Roberts" } ], "greeting": "Hello, Lavonne George! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea260a887a98558a0a37", "index": 3205, "guid": "37b3ef35-b56b-4f21-9951-2d48244ac3a7", "isActive": true, "balance": "$1,399.54", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Horne Holder", "gender": "male", "company": "FLUMBO", "email": "horneholder@flumbo.com", "phone": "+1 (941) 431-2428", "address": "567 Mayfair Drive, Linganore, New Mexico, 6217", "about": "Ex id id eu voluptate eiusmod sunt dolor non amet consequat aute. Reprehenderit tempor eu laboris incididunt. Voluptate aute duis eiusmod fugiat eiusmod aliqua occaecat occaecat deserunt. Quis magna deserunt commodo sint labore. Voluptate id Lorem commodo adipisicing ut quis. Ullamco in fugiat anim aliquip labore adipisicing sunt aliquip cillum minim nulla.\r\n", "registered": "2014-08-27T21:05:24-12:00", "latitude": 63.232122, "longitude": 120.045347, "tags": [ "sit", "aute", "elit", "adipisicing", "reprehenderit", "commodo", "sint" ], "friends": [ { "id": 0, "name": "Rochelle Rollins" }, { "id": 1, "name": "Grace Gonzalez" }, { "id": 2, "name": "Ellis Gonzales" } ], "greeting": "Hello, Horne Holder! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26acbc405f4c0140b8", "index": 3206, "guid": "2bc6ffc1-abe6-4865-8636-e6ae6229ca27", "isActive": true, "balance": "$3,270.44", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Erin Dickson", "gender": "female", "company": "DYNO", "email": "erindickson@dyno.com", "phone": "+1 (869) 444-2945", "address": "356 McClancy Place, Jamestown, Maryland, 4702", "about": "Excepteur nulla dolor in commodo fugiat. In nostrud mollit ea ex et reprehenderit fugiat et dolore elit. Tempor ad sunt nulla consectetur esse do. Culpa sint dolor aliqua ullamco adipisicing voluptate sit dolor deserunt cillum Lorem ullamco culpa qui. Nulla est irure ea consectetur quis cillum reprehenderit esse sint. Deserunt deserunt id officia non incididunt excepteur aliquip do Lorem aliquip fugiat exercitation. Id aute aliquip anim elit esse reprehenderit mollit incididunt.\r\n", "registered": "2014-04-24T14:36:30-12:00", "latitude": -15.240147, "longitude": -26.744448, "tags": [ "adipisicing", "ipsum", "qui", "cupidatat", "minim", "exercitation", "duis" ], "friends": [ { "id": 0, "name": "Daniels Jordan" }, { "id": 1, "name": "Rodriguez Herman" }, { "id": 2, "name": "Jo Mcmahon" } ], "greeting": "Hello, Erin Dickson! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26fe6503dd949ab3be", "index": 3207, "guid": "55a094d4-91bd-477a-8747-bfacd06a35e2", "isActive": true, "balance": "$3,199.65", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Valencia Frost", "gender": "male", "company": "ISONUS", "email": "valenciafrost@isonus.com", "phone": "+1 (910) 523-2105", "address": "600 Verona Street, Yorklyn, Alaska, 1526", "about": "Elit cillum adipisicing officia non nisi. Dolor irure excepteur non ad proident laboris quis. Nulla consequat nulla fugiat nostrud.\r\n", "registered": "2014-02-20T05:50:17-13:00", "latitude": 29.270519, "longitude": 172.269636, "tags": [ "laborum", "reprehenderit", "est", "magna", "aliquip", "est", "incididunt" ], "friends": [ { "id": 0, "name": "Taylor Dale" }, { "id": 1, "name": "Knight Taylor" }, { "id": 2, "name": "Warren Kirby" } ], "greeting": "Hello, Valencia Frost! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26794f028b7f7750a6", "index": 3208, "guid": "3c3f1bd3-5cb6-4b42-931d-88fceff8fdcc", "isActive": false, "balance": "$1,256.63", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Kayla Hale", "gender": "female", "company": "XSPORTS", "email": "kaylahale@xsports.com", "phone": "+1 (875) 508-3035", "address": "221 Adler Place, Cascades, Arizona, 4247", "about": "Cillum eu aliqua fugiat enim eiusmod sunt aliquip tempor laborum excepteur. Lorem elit magna duis consequat. Adipisicing consequat aliqua occaecat et adipisicing do nulla magna aliqua in consectetur ex aliquip sint.\r\n", "registered": "2014-09-11T14:58:21-12:00", "latitude": 84.397752, "longitude": -12.4059, "tags": [ "tempor", "qui", "anim", "culpa", "dolor", "proident", "sunt" ], "friends": [ { "id": 0, "name": "Amie Ballard" }, { "id": 1, "name": "Jarvis Daugherty" }, { "id": 2, "name": "Battle Cobb" } ], "greeting": "Hello, Kayla Hale! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea263a8ee881bbc69d94", "index": 3209, "guid": "661e263b-3183-41d9-a4fa-53c614f7bc4f", "isActive": true, "balance": "$2,432.52", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Bernice Phillips", "gender": "female", "company": "ISOSURE", "email": "bernicephillips@isosure.com", "phone": "+1 (974) 436-2371", "address": "152 Lorraine Street, Edmund, Federated States Of Micronesia, 5284", "about": "Anim nulla nisi ea voluptate ipsum tempor id non veniam qui officia ex. Nostrud ad labore excepteur et ad ut commodo minim ut tempor ex exercitation. Enim et quis minim labore. Ipsum irure cillum et in qui proident sit veniam ullamco laborum nostrud ut. Irure ad fugiat ut eiusmod. Exercitation ex nisi minim cupidatat dolor officia id sint quis qui cillum tempor. Deserunt aliquip occaecat duis quis ad excepteur esse officia laborum consequat minim non ut dolore.\r\n", "registered": "2014-01-26T18:11:40-13:00", "latitude": -10.509766, "longitude": -11.465193, "tags": [ "excepteur", "id", "qui", "eu", "sit", "reprehenderit", "elit" ], "friends": [ { "id": 0, "name": "Jenny Savage" }, { "id": 1, "name": "Cole Maynard" }, { "id": 2, "name": "Gay Colon" } ], "greeting": "Hello, Bernice Phillips! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26c43c89e517356f72", "index": 3210, "guid": "83019c3e-c6ba-48cb-8c24-69781094c77b", "isActive": true, "balance": "$1,265.08", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Randi Pickett", "gender": "female", "company": "STRALUM", "email": "randipickett@stralum.com", "phone": "+1 (964) 452-3592", "address": "807 Erskine Loop, Hayden, Oklahoma, 7493", "about": "Mollit irure incididunt enim do pariatur Lorem aliquip ipsum tempor eu ipsum. Fugiat consequat proident eiusmod eu excepteur magna laboris cupidatat. Pariatur proident minim sit voluptate veniam ea nostrud elit ex anim excepteur cillum deserunt nostrud. Et cillum velit sint qui labore id culpa esse sint est. Adipisicing cillum dolor aliquip cupidatat. Pariatur adipisicing ea occaecat aute cillum voluptate occaecat.\r\n", "registered": "2014-09-07T08:07:27-12:00", "latitude": -50.07478, "longitude": -91.717875, "tags": [ "aliqua", "laboris", "sint", "magna", "magna", "nulla", "tempor" ], "friends": [ { "id": 0, "name": "French Foley" }, { "id": 1, "name": "Aisha Harding" }, { "id": 2, "name": "Viola Ball" } ], "greeting": "Hello, Randi Pickett! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26d435f0eb3196f5d0", "index": 3211, "guid": "33263e57-ddb8-4d46-8ce6-a8e6dd4b4738", "isActive": true, "balance": "$1,985.26", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Ashley Walker", "gender": "male", "company": "EQUICOM", "email": "ashleywalker@equicom.com", "phone": "+1 (871) 512-2647", "address": "359 Roosevelt Place, Sanford, Michigan, 2440", "about": "Ad cupidatat do excepteur irure dolore id dolor quis est laboris qui velit esse ut. Non sint anim sunt tempor ullamco duis ad minim reprehenderit consectetur aute sint aliqua aliqua. Tempor ex elit adipisicing veniam magna. Sunt sit qui laboris amet cillum eiusmod sint eiusmod eu fugiat cupidatat. Consequat sit voluptate labore tempor non. Culpa ipsum commodo aliqua occaecat ex velit enim eu aute adipisicing voluptate dolore sint.\r\n", "registered": "2014-04-24T23:17:50-12:00", "latitude": -31.157208, "longitude": 51.074654, "tags": [ "qui", "aliqua", "incididunt", "deserunt", "ea", "sint", "exercitation" ], "friends": [ { "id": 0, "name": "Tamra Ferguson" }, { "id": 1, "name": "Jana Townsend" }, { "id": 2, "name": "Constance Knight" } ], "greeting": "Hello, Ashley Walker! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea267d5e586b06d7ee3f", "index": 3212, "guid": "ad27e1e6-7ab4-4ca8-9413-fd51b1ad4773", "isActive": true, "balance": "$2,526.74", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Olson Reynolds", "gender": "male", "company": "ISBOL", "email": "olsonreynolds@isbol.com", "phone": "+1 (913) 434-3448", "address": "697 Howard Place, Southview, Kansas, 303", "about": "Irure in dolore esse ad cupidatat quis consequat ex commodo in aliquip et excepteur. Qui mollit voluptate in ut incididunt laboris anim id occaecat excepteur quis. In ex laboris nisi culpa ipsum in sint est. Sunt aute reprehenderit aute nostrud dolore voluptate Lorem. Incididunt elit laborum ad laboris aliquip consequat incididunt nisi dolor consectetur quis quis.\r\n", "registered": "2014-08-01T22:06:28-12:00", "latitude": 62.876927, "longitude": 21.281798, "tags": [ "sunt", "dolore", "excepteur", "culpa", "nisi", "do", "officia" ], "friends": [ { "id": 0, "name": "Ware Dunn" }, { "id": 1, "name": "Camille Graham" }, { "id": 2, "name": "Christine Vincent" } ], "greeting": "Hello, Olson Reynolds! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26b763590ab1a08f2a", "index": 3213, "guid": "0b32488a-34ca-45ec-9822-95a067dd9889", "isActive": true, "balance": "$2,799.93", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Alma Ellison", "gender": "female", "company": "EXERTA", "email": "almaellison@exerta.com", "phone": "+1 (851) 412-3091", "address": "575 Drew Street, Fontanelle, South Dakota, 4337", "about": "Sit do excepteur fugiat cupidatat ex aliquip officia in minim est. Ea voluptate irure sunt ea in ut amet. Irure velit ipsum excepteur eu aute. Officia ex sint labore excepteur consequat esse elit exercitation voluptate eiusmod duis. Lorem eiusmod labore et dolor est tempor enim eiusmod tempor. Nisi aute id laboris fugiat voluptate elit id elit aute ipsum ipsum deserunt quis incididunt. Proident commodo dolore dolor culpa excepteur.\r\n", "registered": "2014-05-02T08:42:37-12:00", "latitude": 50.771426, "longitude": 67.072747, "tags": [ "consectetur", "eiusmod", "eu", "dolor", "quis", "officia", "id" ], "friends": [ { "id": 0, "name": "Hobbs Armstrong" }, { "id": 1, "name": "Katheryn Reid" }, { "id": 2, "name": "Lorena Sears" } ], "greeting": "Hello, Alma Ellison! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2656fa1371e1b4fa0f", "index": 3214, "guid": "36b89f6b-754c-4992-945a-824e230702b7", "isActive": false, "balance": "$2,257.00", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Latasha Anthony", "gender": "female", "company": "ORBIXTAR", "email": "latashaanthony@orbixtar.com", "phone": "+1 (831) 522-3626", "address": "854 Foster Avenue, Waukeenah, West Virginia, 3731", "about": "Occaecat amet ex deserunt incididunt id sunt aliqua sit sit aliquip irure ex incididunt. Est elit Lorem laboris duis mollit nostrud sint incididunt nisi veniam velit. Sint ullamco ex deserunt reprehenderit. Magna tempor eu tempor aute et ex eu. Officia amet sit sit nisi incididunt do pariatur id.\r\n", "registered": "2014-09-20T18:07:23-12:00", "latitude": -79.759439, "longitude": 83.201421, "tags": [ "laboris", "non", "mollit", "enim", "culpa", "sint", "ut" ], "friends": [ { "id": 0, "name": "Terra Myers" }, { "id": 1, "name": "Angelina Raymond" }, { "id": 2, "name": "Bond Golden" } ], "greeting": "Hello, Latasha Anthony! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26d5f80f004741937a", "index": 3215, "guid": "859569af-524d-46c4-bb41-7131f4c49f67", "isActive": true, "balance": "$3,125.07", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Janelle Roy", "gender": "female", "company": "BEADZZA", "email": "janelleroy@beadzza.com", "phone": "+1 (868) 562-3927", "address": "290 Devon Avenue, Coalmont, Texas, 2174", "about": "Ex aliquip nostrud minim officia proident tempor consequat excepteur ad id anim cillum aliquip. Fugiat sit non veniam mollit est qui aliqua commodo. Id veniam veniam tempor sit anim eu nostrud quis exercitation.\r\n", "registered": "2014-08-27T17:25:51-12:00", "latitude": -7.763133, "longitude": 5.595302, "tags": [ "fugiat", "laboris", "mollit", "occaecat", "nulla", "quis", "eiusmod" ], "friends": [ { "id": 0, "name": "Dorothea Clemons" }, { "id": 1, "name": "Frazier England" }, { "id": 2, "name": "Alexandra Reyes" } ], "greeting": "Hello, Janelle Roy! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea260be401b26b7a714a", "index": 3216, "guid": "23c4662b-438a-4afe-971e-5da9662fd612", "isActive": false, "balance": "$2,659.40", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Sweet Shields", "gender": "male", "company": "MOREGANIC", "email": "sweetshields@moreganic.com", "phone": "+1 (827) 519-2474", "address": "239 Jackson Street, Chloride, Oregon, 1078", "about": "Ea deserunt magna id exercitation mollit incididunt ut ut exercitation laborum et enim. Eiusmod reprehenderit cupidatat esse voluptate incididunt sint est sunt ut. Sint dolor minim esse dolor occaecat enim. Proident Lorem proident proident enim anim elit laboris occaecat veniam nostrud ipsum sint. Cillum officia cillum anim enim mollit laborum reprehenderit enim nulla consequat consectetur tempor.\r\n", "registered": "2014-02-24T10:44:05-13:00", "latitude": 64.332097, "longitude": -119.010747, "tags": [ "nulla", "ullamco", "reprehenderit", "deserunt", "mollit", "in", "nulla" ], "friends": [ { "id": 0, "name": "Johnnie Tillman" }, { "id": 1, "name": "Bessie Valentine" }, { "id": 2, "name": "Alissa Edwards" } ], "greeting": "Hello, Sweet Shields! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2675568086130b66e2", "index": 3217, "guid": "997ee2c4-6f23-445d-bec7-d601b45e4eac", "isActive": true, "balance": "$1,315.58", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Hawkins Shelton", "gender": "male", "company": "SOFTMICRO", "email": "hawkinsshelton@softmicro.com", "phone": "+1 (897) 562-2087", "address": "210 Lawrence Street, Cotopaxi, Nevada, 7876", "about": "Lorem cillum laborum laboris incididunt velit duis laboris sit dolor anim aute labore. Sunt deserunt amet cupidatat sit fugiat aute cupidatat reprehenderit deserunt culpa ut laboris Lorem exercitation. Esse aliquip dolor incididunt tempor cupidatat ipsum. Laborum consectetur nulla sit incididunt esse incididunt proident Lorem commodo veniam id aute consequat. Dolore tempor Lorem exercitation magna magna. Ea excepteur aliqua minim amet tempor tempor laboris voluptate ut quis deserunt. Eiusmod aliquip mollit magna quis sint eiusmod ex occaecat occaecat ut fugiat magna amet officia.\r\n", "registered": "2014-06-21T06:56:24-12:00", "latitude": 15.792546, "longitude": 49.727394, "tags": [ "labore", "laboris", "esse", "laborum", "ut", "amet", "sunt" ], "friends": [ { "id": 0, "name": "Vivian Soto" }, { "id": 1, "name": "Mcleod Mccall" }, { "id": 2, "name": "Cara Strong" } ], "greeting": "Hello, Hawkins Shelton! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea269660f295f5897aae", "index": 3218, "guid": "989b7ae6-f9ba-4b82-ac61-099cfbf3a7c2", "isActive": true, "balance": "$2,949.21", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Helene Brown", "gender": "female", "company": "EZENT", "email": "helenebrown@ezent.com", "phone": "+1 (853) 450-3883", "address": "741 Gerritsen Avenue, Shepardsville, Minnesota, 378", "about": "Minim dolor dolor enim est cillum. Aliqua sit id officia eu consectetur dolor sunt amet laboris sint sint pariatur. Aliqua laborum dolor sunt velit sint. Anim anim nisi duis qui adipisicing nostrud proident cupidatat sint deserunt deserunt nostrud consequat ullamco.\r\n", "registered": "2014-06-16T13:09:13-12:00", "latitude": -16.042793, "longitude": 102.915011, "tags": [ "est", "exercitation", "est", "veniam", "est", "amet", "elit" ], "friends": [ { "id": 0, "name": "Eva Gregory" }, { "id": 1, "name": "Osborn Mccoy" }, { "id": 2, "name": "Concepcion Mcconnell" } ], "greeting": "Hello, Helene Brown! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea268a0cf08e76c1d420", "index": 3219, "guid": "7adbe715-8569-4d37-8529-6e7452e3e648", "isActive": false, "balance": "$3,174.75", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Betty Collier", "gender": "female", "company": "EXOSWITCH", "email": "bettycollier@exoswitch.com", "phone": "+1 (868) 409-2243", "address": "583 Allen Avenue, Ruffin, Missouri, 1329", "about": "Nisi eu ut elit culpa non aliquip minim non aliqua sint adipisicing laboris. Anim tempor eu nisi aliqua pariatur veniam minim. Proident nisi amet consequat occaecat reprehenderit. Ad minim occaecat tempor officia non labore amet quis quis dolor sit irure anim.\r\n", "registered": "2014-08-23T08:05:18-12:00", "latitude": -20.267232, "longitude": -170.663451, "tags": [ "quis", "sunt", "exercitation", "do", "ex", "in", "fugiat" ], "friends": [ { "id": 0, "name": "Priscilla Baxter" }, { "id": 1, "name": "Buchanan Blake" }, { "id": 2, "name": "Moss Lancaster" } ], "greeting": "Hello, Betty Collier! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26d2db2b35ff54de9e", "index": 3220, "guid": "6c42626f-66ed-43a4-852e-b2811bcc3091", "isActive": false, "balance": "$1,056.35", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Villarreal Donovan", "gender": "male", "company": "VURBO", "email": "villarrealdonovan@vurbo.com", "phone": "+1 (867) 537-3099", "address": "612 Times Placez, Zortman, Rhode Island, 5079", "about": "Enim ea tempor magna amet cupidatat consequat ea eu irure ad. In consectetur tempor qui eiusmod ullamco nulla ut reprehenderit sit ex dolore. Occaecat irure est commodo esse aliqua adipisicing id ex aute sunt eu magna officia.\r\n", "registered": "2014-07-21T17:59:05-12:00", "latitude": -19.792656, "longitude": -97.824748, "tags": [ "aliqua", "deserunt", "cillum", "do", "commodo", "eiusmod", "laborum" ], "friends": [ { "id": 0, "name": "Weiss Jenkins" }, { "id": 1, "name": "Rowland Pate" }, { "id": 2, "name": "Scott Velez" } ], "greeting": "Hello, Villarreal Donovan! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26b9b178d644ec912b", "index": 3221, "guid": "28c9b3f7-b294-40a4-b22f-00c132bd795f", "isActive": false, "balance": "$3,831.14", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Jeanie Higgins", "gender": "female", "company": "NURPLEX", "email": "jeaniehiggins@nurplex.com", "phone": "+1 (934) 439-2556", "address": "994 Hendrickson Place, Reno, Florida, 1995", "about": "Pariatur fugiat exercitation duis nulla. Adipisicing et exercitation ullamco commodo adipisicing eiusmod esse non laboris. Veniam magna reprehenderit deserunt labore commodo eiusmod quis commodo consequat minim sunt voluptate. Est anim enim qui sit excepteur. Eiusmod in mollit qui duis et elit dolor consectetur ut esse labore. Et in sunt Lorem cupidatat culpa Lorem et duis enim amet consequat elit ea. Aliquip ea nulla magna duis ea elit.\r\n", "registered": "2014-03-21T20:48:32-13:00", "latitude": 76.092555, "longitude": -136.867226, "tags": [ "laboris", "voluptate", "est", "minim", "occaecat", "veniam", "laboris" ], "friends": [ { "id": 0, "name": "Cote Berry" }, { "id": 1, "name": "Burgess Peterson" }, { "id": 2, "name": "Autumn Solomon" } ], "greeting": "Hello, Jeanie Higgins! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea268c8078707badf5ab", "index": 3222, "guid": "bc621f79-1558-4839-a7af-70d1301fba1b", "isActive": false, "balance": "$3,456.77", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Monica Nixon", "gender": "female", "company": "ICOLOGY", "email": "monicanixon@icology.com", "phone": "+1 (949) 511-2627", "address": "882 Kent Street, Cowiche, North Carolina, 4572", "about": "Proident cillum laborum nulla sit do proident magna ullamco voluptate aliquip tempor. Nostrud in consectetur ad dolor tempor. Sit ut adipisicing ipsum ad consequat incididunt mollit aliquip minim labore. Esse excepteur nostrud occaecat anim eiusmod labore enim mollit esse. Voluptate do labore excepteur voluptate culpa. Deserunt magna velit eiusmod irure culpa et irure cupidatat proident fugiat sunt ex. Aute aliquip occaecat ea exercitation et in quis cupidatat aliqua ut ex quis commodo.\r\n", "registered": "2014-08-21T16:36:36-12:00", "latitude": -53.563784, "longitude": -136.272231, "tags": [ "id", "ipsum", "minim", "labore", "elit", "officia", "eiusmod" ], "friends": [ { "id": 0, "name": "Laurie Fulton" }, { "id": 1, "name": "Colon Roberson" }, { "id": 2, "name": "Rosalie Stuart" } ], "greeting": "Hello, Monica Nixon! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2658bb28e8b8568363", "index": 3223, "guid": "c9ccf7db-4773-4c22-8914-2cddff7da1b9", "isActive": false, "balance": "$2,374.35", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Sanders Chambers", "gender": "male", "company": "SPHERIX", "email": "sanderschambers@spherix.com", "phone": "+1 (813) 600-2541", "address": "237 Montana Place, Campo, New Hampshire, 8065", "about": "Sint duis in dolore sit proident eu do nulla adipisicing dolor. Sint mollit eu occaecat veniam est commodo aliqua exercitation reprehenderit est dolor. Magna nulla eu cillum aliquip exercitation magna sint nulla.\r\n", "registered": "2014-08-19T00:51:01-12:00", "latitude": 42.496808, "longitude": 73.472245, "tags": [ "veniam", "qui", "magna", "minim", "elit", "labore", "adipisicing" ], "friends": [ { "id": 0, "name": "Barbra Ellis" }, { "id": 1, "name": "Hudson Lambert" }, { "id": 2, "name": "Marguerite Guerra" } ], "greeting": "Hello, Sanders Chambers! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea260af177184e4c56d9", "index": 3224, "guid": "b56c9fe2-5083-4f39-9966-f7c513550390", "isActive": false, "balance": "$3,438.05", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Lee Stevens", "gender": "male", "company": "DADABASE", "email": "leestevens@dadabase.com", "phone": "+1 (960) 481-3588", "address": "992 Crown Street, Baker, Arkansas, 1847", "about": "Deserunt sunt nisi ipsum duis officia sint aute adipisicing reprehenderit irure incididunt mollit elit aliquip. Tempor dolore quis anim irure aliqua enim nisi. Aute eu officia cupidatat occaecat.\r\n", "registered": "2014-09-08T18:08:37-12:00", "latitude": 56.074069, "longitude": 162.770338, "tags": [ "irure", "veniam", "ea", "deserunt", "culpa", "velit", "nostrud" ], "friends": [ { "id": 0, "name": "Curtis Hunt" }, { "id": 1, "name": "Jennings Guzman" }, { "id": 2, "name": "Mclaughlin Hickman" } ], "greeting": "Hello, Lee Stevens! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea261fdf2f5525714d34", "index": 3225, "guid": "91a0900a-7c03-4281-9d45-818e7f67e33b", "isActive": false, "balance": "$1,564.74", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Peggy Cooley", "gender": "female", "company": "INFOTRIPS", "email": "peggycooley@infotrips.com", "phone": "+1 (912) 464-2363", "address": "434 Bond Street, Cumberland, Iowa, 6934", "about": "Duis nostrud magna ipsum adipisicing commodo incididunt tempor anim. Nisi amet labore nisi duis esse non ipsum sint mollit culpa quis aliqua minim. Officia pariatur minim ea ad minim aute veniam velit consequat dolor laborum. Consequat velit aliqua exercitation fugiat mollit reprehenderit eiusmod duis.\r\n", "registered": "2014-07-13T23:05:51-12:00", "latitude": 24.33988, "longitude": -49.773204, "tags": [ "dolor", "occaecat", "consequat", "labore", "officia", "proident", "voluptate" ], "friends": [ { "id": 0, "name": "Mcbride Ortiz" }, { "id": 1, "name": "Cooper French" }, { "id": 2, "name": "Wolfe Carver" } ], "greeting": "Hello, Peggy Cooley! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26d99ba79aecee5c37", "index": 3226, "guid": "f7b7f163-e2fb-4094-ac9f-09368f639ce0", "isActive": true, "balance": "$1,668.84", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Tillman Hughes", "gender": "male", "company": "PODUNK", "email": "tillmanhughes@podunk.com", "phone": "+1 (942) 505-3859", "address": "818 Bergen Place, Vienna, Nebraska, 1493", "about": "Id incididunt dolor consequat amet voluptate ea reprehenderit. Sint pariatur mollit commodo do elit magna. Commodo aliqua dolor ut cupidatat labore cupidatat. Ullamco aute aliquip ut labore occaecat pariatur tempor.\r\n", "registered": "2014-09-16T13:15:30-12:00", "latitude": -84.044483, "longitude": 94.139268, "tags": [ "nostrud", "eu", "ad", "consectetur", "voluptate", "quis", "labore" ], "friends": [ { "id": 0, "name": "Esmeralda Acosta" }, { "id": 1, "name": "Miranda Christian" }, { "id": 2, "name": "Beryl Powers" } ], "greeting": "Hello, Tillman Hughes! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea269c49e7305bd3cf60", "index": 3227, "guid": "397665f8-6ece-4e5e-917f-292bd33d9103", "isActive": true, "balance": "$2,332.69", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Gordon Oliver", "gender": "male", "company": "STROZEN", "email": "gordonoliver@strozen.com", "phone": "+1 (855) 420-3349", "address": "874 Dumont Avenue, Heil, District Of Columbia, 3877", "about": "Magna cillum sint cupidatat culpa esse. Non dolor magna exercitation quis commodo duis deserunt minim sunt amet labore minim culpa. Officia ea amet reprehenderit ipsum quis. Quis magna deserunt minim consectetur fugiat tempor qui occaecat proident in deserunt mollit nulla.\r\n", "registered": "2014-08-29T04:53:58-12:00", "latitude": -84.828455, "longitude": 179.502023, "tags": [ "magna", "anim", "in", "ut", "consequat", "elit", "adipisicing" ], "friends": [ { "id": 0, "name": "Howell Douglas" }, { "id": 1, "name": "Lois Brewer" }, { "id": 2, "name": "Kemp Walsh" } ], "greeting": "Hello, Gordon Oliver! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26c3f5e146d9b67cfd", "index": 3228, "guid": "8564843e-6da6-4d07-935c-1d0ba8b35f41", "isActive": false, "balance": "$1,613.58", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Francis Herring", "gender": "male", "company": "GEOSTELE", "email": "francisherring@geostele.com", "phone": "+1 (970) 433-3447", "address": "765 Grove Place, Flintville, New Jersey, 1960", "about": "Ex officia aliquip occaecat non fugiat consequat consectetur dolore proident. Aliquip dolore mollit fugiat excepteur voluptate. Dolor ut culpa adipisicing sit cillum incididunt proident officia cillum labore adipisicing occaecat nulla. Lorem occaecat consectetur sit proident voluptate reprehenderit pariatur consequat esse non cupidatat reprehenderit commodo. Excepteur incididunt ut id tempor nisi occaecat. Dolor culpa do officia nostrud sit officia irure deserunt pariatur tempor.\r\n", "registered": "2014-06-04T23:01:38-12:00", "latitude": 4.885351, "longitude": -31.868828, "tags": [ "tempor", "exercitation", "eiusmod", "tempor", "laborum", "qui", "do" ], "friends": [ { "id": 0, "name": "Dana Chaney" }, { "id": 1, "name": "Hoover Hunter" }, { "id": 2, "name": "Phoebe Cantrell" } ], "greeting": "Hello, Francis Herring! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea267f8e34af685c2d4f", "index": 3229, "guid": "b8f41493-c491-4b47-aaba-b1d128c4e2db", "isActive": true, "balance": "$3,512.75", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Clark Monroe", "gender": "male", "company": "MOLTONIC", "email": "clarkmonroe@moltonic.com", "phone": "+1 (954) 595-3304", "address": "957 Jackson Place, Dotsero, Palau, 7340", "about": "Consequat labore consectetur minim commodo ipsum do. Veniam qui veniam dolore eu labore. Eu minim sunt nisi anim laborum laboris quis labore occaecat pariatur pariatur elit ut. Ea irure velit est irure ex do nisi duis. Cillum minim cillum aliquip voluptate exercitation consequat.\r\n", "registered": "2014-02-27T14:55:49-13:00", "latitude": 84.987471, "longitude": 154.116845, "tags": [ "exercitation", "qui", "eu", "do", "ut", "officia", "quis" ], "friends": [ { "id": 0, "name": "Margie Harper" }, { "id": 1, "name": "Merrill Stout" }, { "id": 2, "name": "Kasey Glenn" } ], "greeting": "Hello, Clark Monroe! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2686f8a8db8fb50e01", "index": 3230, "guid": "75f3a4fc-9462-4e64-9928-ce073d4feef6", "isActive": false, "balance": "$2,978.44", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Tia Goff", "gender": "female", "company": "NIKUDA", "email": "tiagoff@nikuda.com", "phone": "+1 (988) 599-3967", "address": "613 Hemlock Street, Yettem, Puerto Rico, 8641", "about": "Proident cillum eu nulla consectetur ullamco proident aliquip quis aute aute minim ullamco. Aliqua ea aute dolore ad irure mollit anim aliqua sit irure sint irure irure. Duis Lorem consectetur deserunt ipsum labore tempor proident. Ullamco cillum et labore non adipisicing nostrud sunt duis ut adipisicing sunt velit.\r\n", "registered": "2014-03-29T04:32:40-13:00", "latitude": 27.571863, "longitude": -26.879845, "tags": [ "cillum", "laborum", "ea", "tempor", "est", "tempor", "incididunt" ], "friends": [ { "id": 0, "name": "Harrell Cannon" }, { "id": 1, "name": "Mercedes Buchanan" }, { "id": 2, "name": "Nguyen Trujillo" } ], "greeting": "Hello, Tia Goff! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26367e5403e7ac29e8", "index": 3231, "guid": "9dde8965-c34f-49be-8cc7-faa9b9790ada", "isActive": true, "balance": "$2,388.25", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Alyce Pittman", "gender": "female", "company": "AVIT", "email": "alycepittman@avit.com", "phone": "+1 (886) 475-2223", "address": "643 Clay Street, Bowie, California, 6895", "about": "Voluptate esse nulla commodo eiusmod mollit in Lorem occaecat exercitation magna dolore sint mollit minim. Adipisicing ut consectetur culpa ad ea fugiat qui non ex id et ad qui nostrud. Officia velit tempor dolor minim aliquip dolore. Lorem irure proident fugiat non eiusmod exercitation nulla laborum exercitation laboris.\r\n", "registered": "2014-04-21T19:44:16-12:00", "latitude": 68.733139, "longitude": 145.594324, "tags": [ "nisi", "aliquip", "deserunt", "est", "est", "ea", "sunt" ], "friends": [ { "id": 0, "name": "Crystal Crane" }, { "id": 1, "name": "Ericka Pruitt" }, { "id": 2, "name": "Shannon Holmes" } ], "greeting": "Hello, Alyce Pittman! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26d4c7c70dae54aa5f", "index": 3232, "guid": "82c11c9e-33cd-4dbc-a53f-20b814cca127", "isActive": true, "balance": "$1,070.44", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Carole Bryant", "gender": "female", "company": "COMVENE", "email": "carolebryant@comvene.com", "phone": "+1 (895) 559-2038", "address": "378 Flatbush Avenue, Johnsonburg, Vermont, 4247", "about": "Adipisicing ipsum ea laboris ad cupidatat aliqua minim. Qui amet duis incididunt elit id eu. Quis esse anim qui et ut ex pariatur reprehenderit laboris anim consequat.\r\n", "registered": "2014-03-19T21:39:56-13:00", "latitude": 26.71533, "longitude": -27.885498, "tags": [ "anim", "qui", "irure", "et", "et", "sunt", "ad" ], "friends": [ { "id": 0, "name": "Hilda Cummings" }, { "id": 1, "name": "Wilda Gilmore" }, { "id": 2, "name": "Bates Powell" } ], "greeting": "Hello, Carole Bryant! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26765131d029a8c085", "index": 3233, "guid": "26d590ac-dd86-4faa-87ea-8b93251e1153", "isActive": false, "balance": "$1,914.10", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Guzman Silva", "gender": "male", "company": "OPTYK", "email": "guzmansilva@optyk.com", "phone": "+1 (804) 491-3529", "address": "177 Fanchon Place, Eden, Indiana, 8192", "about": "Proident velit tempor proident cillum officia aliquip enim nostrud esse voluptate ad nisi. Culpa aliquip id elit Lorem mollit do ipsum amet ad. Cillum duis voluptate commodo commodo enim proident sunt ea consectetur cupidatat. Est adipisicing sunt duis tempor fugiat commodo et excepteur tempor nostrud tempor sit laboris. Reprehenderit non eu enim est. Et amet officia amet sunt sint nulla do aliqua. Do sit et commodo amet aliqua nisi.\r\n", "registered": "2014-07-10T10:23:34-12:00", "latitude": -58.605333, "longitude": -123.647239, "tags": [ "deserunt", "sit", "sunt", "do", "ad", "ipsum", "ipsum" ], "friends": [ { "id": 0, "name": "Mcfadden Wong" }, { "id": 1, "name": "Vonda Hood" }, { "id": 2, "name": "Valerie Herrera" } ], "greeting": "Hello, Guzman Silva! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea26aefb3d2bffa9232a", "index": 3234, "guid": "222eef12-edeb-41aa-b463-1f39ff6297df", "isActive": true, "balance": "$1,385.83", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Marta Hanson", "gender": "female", "company": "HAIRPORT", "email": "martahanson@hairport.com", "phone": "+1 (933) 538-2372", "address": "149 Dooley Street, Waumandee, Illinois, 1428", "about": "In irure eiusmod laboris ex laboris eu laborum ut non sit id. Deserunt voluptate cillum fugiat anim aliquip. Adipisicing aliquip sit sint proident aliqua pariatur ea nisi veniam pariatur voluptate. Officia adipisicing dolor culpa ullamco do occaecat ipsum enim minim nostrud. Commodo nulla adipisicing velit aute amet consectetur nisi pariatur amet.\r\n", "registered": "2014-04-24T00:18:11-12:00", "latitude": -35.477346, "longitude": -161.659712, "tags": [ "proident", "laboris", "sunt", "occaecat", "in", "tempor", "culpa" ], "friends": [ { "id": 0, "name": "Molly Hammond" }, { "id": 1, "name": "Kirby Burnett" }, { "id": 2, "name": "Noreen Barr" } ], "greeting": "Hello, Marta Hanson! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea265bd67e45abc95622", "index": 3235, "guid": "0e3ba04f-5f4a-4b33-b84d-13d72cab2c9e", "isActive": false, "balance": "$2,603.25", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Dale Bradley", "gender": "female", "company": "TRI@TRIBALOG", "email": "dalebradley@tri@tribalog.com", "phone": "+1 (991) 481-3914", "address": "119 Huron Street, Carlos, South Carolina, 1755", "about": "Ad ad excepteur laborum ullamco eu sint aute qui amet. Ullamco anim elit nostrud nulla cupidatat in minim ea esse nisi enim. Exercitation aute enim pariatur in laborum nostrud. Velit est quis sit consectetur esse consectetur amet enim deserunt aliquip esse. Enim enim in labore nulla officia enim. Eu est ut et ea ipsum aliquip excepteur excepteur. Eiusmod eiusmod ipsum enim duis fugiat deserunt commodo excepteur esse do exercitation.\r\n", "registered": "2014-05-05T09:49:24-12:00", "latitude": -56.882987, "longitude": 147.525239, "tags": [ "magna", "duis", "duis", "ea", "tempor", "officia", "ullamco" ], "friends": [ { "id": 0, "name": "Vicky Howard" }, { "id": 1, "name": "Doyle Webster" }, { "id": 2, "name": "Hill Weber" } ], "greeting": "Hello, Dale Bradley! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea262aa046181559ca1e", "index": 3236, "guid": "3ef51fe7-4354-4d89-ad87-0fe4288617d5", "isActive": false, "balance": "$1,288.72", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Franklin Faulkner", "gender": "male", "company": "ISOLOGIX", "email": "franklinfaulkner@isologix.com", "phone": "+1 (830) 400-2655", "address": "855 Tennis Court, Edgewater, American Samoa, 4755", "about": "Laborum mollit voluptate exercitation veniam duis. Quis enim eu laborum amet cillum ad proident laborum. Ullamco veniam aliquip cupidatat dolore veniam est esse pariatur Lorem est exercitation.\r\n", "registered": "2014-06-22T00:33:42-12:00", "latitude": 84.924347, "longitude": 149.070879, "tags": [ "deserunt", "nisi", "commodo", "reprehenderit", "aute", "pariatur", "nulla" ], "friends": [ { "id": 0, "name": "Dickson Richardson" }, { "id": 1, "name": "Morse Hess" }, { "id": 2, "name": "Faye Olson" } ], "greeting": "Hello, Franklin Faulkner! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea262e89491103d690b0", "index": 3237, "guid": "13e43656-4f1a-4c9b-a3c9-c9ecfe9d35e3", "isActive": true, "balance": "$3,617.80", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Snider Ferrell", "gender": "male", "company": "TOURMANIA", "email": "sniderferrell@tourmania.com", "phone": "+1 (862) 551-3784", "address": "604 Chase Court, Kent, Delaware, 8922", "about": "Duis sint reprehenderit sit et est elit voluptate incididunt pariatur adipisicing mollit commodo. Adipisicing enim ullamco deserunt non qui aliquip commodo incididunt. Anim ullamco aliqua veniam laboris sint reprehenderit ipsum ipsum eiusmod. Voluptate elit consectetur pariatur quis mollit sit. Sit sit consectetur ea voluptate magna. Enim duis aliqua nisi consequat.\r\n", "registered": "2014-09-13T22:16:18-12:00", "latitude": -13.071888, "longitude": 24.148313, "tags": [ "elit", "ipsum", "dolore", "sint", "id", "amet", "anim" ], "friends": [ { "id": 0, "name": "Washington Blevins" }, { "id": 1, "name": "Erickson Andrews" }, { "id": 2, "name": "Lindsay Campos" } ], "greeting": "Hello, Snider Ferrell! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2684a83288d45501e0", "index": 3238, "guid": "013adfb6-e3d5-41cd-bd66-4c3529443b4c", "isActive": false, "balance": "$3,532.19", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Stacey Dean", "gender": "female", "company": "CALCU", "email": "staceydean@calcu.com", "phone": "+1 (834) 492-2988", "address": "880 Wortman Avenue, Vivian, Pennsylvania, 5756", "about": "Excepteur ex occaecat incididunt minim ut eiusmod do pariatur anim anim deserunt elit. Elit quis fugiat sint in labore enim. Est elit amet sit ullamco aute irure Lorem cupidatat voluptate ea tempor do cupidatat dolore. Ut adipisicing aliquip aliquip nisi elit cillum duis commodo in.\r\n", "registered": "2014-09-10T05:56:20-12:00", "latitude": -26.736293, "longitude": -30.759337, "tags": [ "culpa", "veniam", "pariatur", "culpa", "aute", "ad", "est" ], "friends": [ { "id": 0, "name": "Nixon Cotton" }, { "id": 1, "name": "Lamb Winters" }, { "id": 2, "name": "Avery Payne" } ], "greeting": "Hello, Stacey Dean! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26b3e704436e77925a", "index": 3239, "guid": "59643f90-be99-44e3-8a59-8c06ee34bb7d", "isActive": true, "balance": "$3,271.44", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Page Puckett", "gender": "male", "company": "METROZ", "email": "pagepuckett@metroz.com", "phone": "+1 (814) 456-3082", "address": "947 Turnbull Avenue, Brule, Georgia, 9478", "about": "Sunt amet in veniam non. Aliquip tempor nisi ad cillum consectetur do ea consequat qui. Sit cillum do dolor elit.\r\n", "registered": "2014-07-13T14:57:57-12:00", "latitude": 1.043303, "longitude": -44.10758, "tags": [ "nisi", "voluptate", "occaecat", "dolore", "non", "velit", "anim" ], "friends": [ { "id": 0, "name": "Ray Finley" }, { "id": 1, "name": "Newman Conrad" }, { "id": 2, "name": "Graciela Allison" } ], "greeting": "Hello, Page Puckett! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea26bbfd0d1100951114", "index": 3240, "guid": "e85a78fe-49b7-4d27-88f1-d64b18ef781f", "isActive": true, "balance": "$1,017.59", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Edwina Dennis", "gender": "female", "company": "XANIDE", "email": "edwinadennis@xanide.com", "phone": "+1 (907) 519-3626", "address": "745 Albany Avenue, Torboy, North Dakota, 8714", "about": "Aliqua qui pariatur laborum consectetur aliqua. Adipisicing dolor fugiat officia exercitation fugiat. Deserunt non ea ex consectetur deserunt occaecat eiusmod quis dolore labore est mollit minim. Voluptate reprehenderit cupidatat labore sunt sit officia laboris aliquip irure. Eu nisi nulla minim duis veniam enim ea ut do nulla in.\r\n", "registered": "2014-01-11T23:46:00-13:00", "latitude": 45.618905, "longitude": -1.118853, "tags": [ "quis", "officia", "commodo", "ullamco", "ut", "aliquip", "velit" ], "friends": [ { "id": 0, "name": "Susie Bright" }, { "id": 1, "name": "Lucy Freeman" }, { "id": 2, "name": "Shana Vargas" } ], "greeting": "Hello, Edwina Dennis! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2640c3f67819bf2f87", "index": 3241, "guid": "ee48798b-e80d-471a-a3ec-a5f35b9a81be", "isActive": false, "balance": "$3,976.24", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Sherman Fuentes", "gender": "male", "company": "BUZZNESS", "email": "shermanfuentes@buzzness.com", "phone": "+1 (846) 436-3457", "address": "442 Farragut Place, Elizaville, Louisiana, 8119", "about": "Enim laborum enim enim proident sit sunt nulla nulla enim laborum. Nostrud proident veniam veniam sit fugiat nulla nisi fugiat exercitation anim esse. Ipsum eiusmod nisi amet minim adipisicing deserunt laborum officia duis consectetur fugiat dolor ea.\r\n", "registered": "2014-02-21T10:09:20-13:00", "latitude": 32.925612, "longitude": 113.575882, "tags": [ "est", "cillum", "consectetur", "enim", "est", "aliquip", "exercitation" ], "friends": [ { "id": 0, "name": "Fuentes Giles" }, { "id": 1, "name": "Nadine Singleton" }, { "id": 2, "name": "Johnston Farmer" } ], "greeting": "Hello, Sherman Fuentes! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2662209b5913a8f7dd", "index": 3242, "guid": "8bcc7f99-f638-4ff1-9f99-88936df1f6df", "isActive": true, "balance": "$1,672.39", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Shepard Lewis", "gender": "male", "company": "VERTIDE", "email": "shepardlewis@vertide.com", "phone": "+1 (900) 473-3918", "address": "852 Temple Court, Bridgetown, Northern Mariana Islands, 173", "about": "In in magna in veniam fugiat. Tempor dolor incididunt excepteur elit in consequat deserunt proident proident veniam enim qui fugiat. Id proident ex consequat laborum voluptate exercitation nisi duis fugiat dolore officia et.\r\n", "registered": "2014-02-12T02:55:39-13:00", "latitude": 55.623086, "longitude": -177.826545, "tags": [ "esse", "eu", "minim", "duis", "aute", "eu", "elit" ], "friends": [ { "id": 0, "name": "Boyle Castaneda" }, { "id": 1, "name": "Browning Burgess" }, { "id": 2, "name": "Deidre Brooks" } ], "greeting": "Hello, Shepard Lewis! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea26e8f8c38c44f5fc0a", "index": 3243, "guid": "dc2e540a-5e5c-4393-aa95-2f83db4ec723", "isActive": true, "balance": "$2,248.81", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Mavis Boyer", "gender": "female", "company": "CALLFLEX", "email": "mavisboyer@callflex.com", "phone": "+1 (867) 473-3388", "address": "966 Wyona Street, Oley, Colorado, 7319", "about": "Non ea occaecat consequat sint officia quis excepteur duis culpa exercitation enim ad id do. Quis magna velit Lorem magna magna est ea amet labore commodo tempor eu commodo. Et elit mollit dolore officia esse ullamco. Elit labore nostrud occaecat laborum laboris mollit esse incididunt ex tempor incididunt veniam id ullamco. Tempor non esse nostrud esse et mollit magna sunt et eiusmod. Ullamco enim reprehenderit Lorem ut excepteur nostrud laborum.\r\n", "registered": "2014-09-10T17:08:00-12:00", "latitude": -10.809483, "longitude": -66.757543, "tags": [ "amet", "sit", "nisi", "eu", "id", "anim", "dolore" ], "friends": [ { "id": 0, "name": "Karin Cortez" }, { "id": 1, "name": "Marquita Beck" }, { "id": 2, "name": "Pena Hurley" } ], "greeting": "Hello, Mavis Boyer! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27ad4c3e9264e7d103", "index": 3244, "guid": "eece396e-5f0c-4689-ad6f-420341ed948a", "isActive": false, "balance": "$3,353.08", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Samantha Macias", "gender": "female", "company": "ENOMEN", "email": "samanthamacias@enomen.com", "phone": "+1 (852) 444-2097", "address": "454 Madoc Avenue, Crenshaw, Idaho, 4999", "about": "Aliquip qui veniam pariatur magna Lorem et duis. In dolor ullamco laboris officia pariatur amet sit et non id id laboris fugiat. Cillum exercitation laborum proident mollit reprehenderit ut ipsum dolore Lorem commodo eu ipsum eiusmod reprehenderit. Occaecat qui do aliquip cupidatat culpa proident ullamco ad ea consectetur nisi ut ullamco.\r\n", "registered": "2014-08-26T00:42:12-12:00", "latitude": 47.066269, "longitude": 62.756519, "tags": [ "voluptate", "commodo", "deserunt", "ullamco", "officia", "culpa", "est" ], "friends": [ { "id": 0, "name": "Barr Buckner" }, { "id": 1, "name": "Bradshaw Cooke" }, { "id": 2, "name": "James Garrett" } ], "greeting": "Hello, Samantha Macias! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2736a0e1df92032679", "index": 3245, "guid": "e3f30b95-780a-4952-93e6-ffec4b54f2e2", "isActive": false, "balance": "$3,446.92", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Oliver Mcleod", "gender": "male", "company": "EVENTAGE", "email": "olivermcleod@eventage.com", "phone": "+1 (984) 494-3271", "address": "421 Navy Street, Valle, Marshall Islands, 6879", "about": "Aliqua elit non excepteur aliqua sunt Lorem ipsum incididunt. Labore nulla quis dolore et sunt. Excepteur officia velit sunt aliquip exercitation amet in anim velit commodo. Aliquip consequat deserunt elit culpa velit exercitation excepteur. Consectetur cupidatat nostrud minim nostrud nulla adipisicing. Tempor elit consequat ad ipsum pariatur commodo eiusmod culpa nulla pariatur do.\r\n", "registered": "2014-01-09T01:38:38-13:00", "latitude": 76.729448, "longitude": 83.375821, "tags": [ "occaecat", "excepteur", "in", "consectetur", "amet", "adipisicing", "tempor" ], "friends": [ { "id": 0, "name": "Delores Mcgee" }, { "id": 1, "name": "Maribel Horne" }, { "id": 2, "name": "Ayers Kinney" } ], "greeting": "Hello, Oliver Mcleod! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2737bac29b7ee03e47", "index": 3246, "guid": "6efe6111-cc86-4bf1-97c4-9e69ce2bc6ba", "isActive": false, "balance": "$1,106.21", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Rosario Witt", "gender": "female", "company": "IDETICA", "email": "rosariowitt@idetica.com", "phone": "+1 (943) 488-3165", "address": "388 Cumberland Walk, Jacksonwald, New York, 3545", "about": "Laborum ullamco laboris ex laborum nulla incididunt ullamco nisi. Et labore mollit in excepteur ullamco quis ut veniam id irure Lorem deserunt adipisicing dolor. Aute non consequat minim adipisicing id eiusmod incididunt et voluptate labore eu esse laboris non. Do consectetur ex sint cupidatat tempor qui nisi dolore sit aliquip consequat.\r\n", "registered": "2014-03-02T16:55:10-13:00", "latitude": 67.933185, "longitude": 77.053919, "tags": [ "qui", "ad", "consectetur", "quis", "do", "est", "ad" ], "friends": [ { "id": 0, "name": "Burks Perkins" }, { "id": 1, "name": "Hatfield Merrill" }, { "id": 2, "name": "Russo Cherry" } ], "greeting": "Hello, Rosario Witt! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27da0eba955f1f0963", "index": 3247, "guid": "becfcb04-f796-43a8-a787-c96b157530d2", "isActive": false, "balance": "$1,398.49", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Hester Lucas", "gender": "male", "company": "SLAMBDA", "email": "hesterlucas@slambda.com", "phone": "+1 (882) 596-3544", "address": "930 Luquer Street, Walton, Guam, 7818", "about": "Mollit enim occaecat adipisicing irure commodo. Eiusmod nostrud mollit cupidatat veniam irure et in eiusmod officia culpa elit excepteur dolore minim. Irure exercitation sit nulla officia occaecat. Anim voluptate labore amet amet amet sunt irure sunt commodo velit aute quis tempor.\r\n", "registered": "2014-04-27T16:27:48-12:00", "latitude": -63.235951, "longitude": 173.563631, "tags": [ "dolore", "cupidatat", "labore", "dolor", "qui", "sit", "pariatur" ], "friends": [ { "id": 0, "name": "Gayle Hancock" }, { "id": 1, "name": "Mejia Wilkerson" }, { "id": 2, "name": "Gonzalez Zamora" } ], "greeting": "Hello, Hester Lucas! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27d2cab52a6970ffd9", "index": 3248, "guid": "61341942-5ea7-4251-a3bf-d595ae196e2e", "isActive": true, "balance": "$1,701.13", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Karina Mack", "gender": "female", "company": "INVENTURE", "email": "karinamack@inventure.com", "phone": "+1 (906) 553-2007", "address": "364 Stillwell Avenue, Westboro, Virgin Islands, 7277", "about": "Deserunt dolor enim ipsum consectetur ea laboris eu id culpa laboris esse aute. Fugiat aliqua velit ullamco est nostrud sit fugiat consectetur proident elit ullamco consequat adipisicing minim. Mollit deserunt commodo et tempor ea voluptate anim aliqua dolore. Non eu voluptate reprehenderit elit quis incididunt anim fugiat adipisicing quis nisi in ex. Officia consectetur fugiat tempor elit elit incididunt non est. Ea dolore nostrud labore est id. Irure excepteur officia deserunt tempor culpa aute ullamco eiusmod amet esse.\r\n", "registered": "2014-05-28T17:29:10-12:00", "latitude": 81.720578, "longitude": 0.41466, "tags": [ "nisi", "deserunt", "adipisicing", "est", "sit", "esse", "esse" ], "friends": [ { "id": 0, "name": "Guadalupe Oneill" }, { "id": 1, "name": "Chan Lawson" }, { "id": 2, "name": "Lourdes Thomas" } ], "greeting": "Hello, Karina Mack! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2799dfee1803890bcb", "index": 3249, "guid": "9819fe9c-9c03-48c8-924d-eeb7b3e5e318", "isActive": true, "balance": "$2,746.59", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Buckner Stein", "gender": "male", "company": "ACCUPRINT", "email": "bucknerstein@accuprint.com", "phone": "+1 (912) 457-3245", "address": "919 Strauss Street, Delco, Massachusetts, 8438", "about": "Est consectetur minim occaecat anim. Quis incididunt sit anim laboris labore in proident deserunt in. Dolor incididunt ea irure pariatur. Incididunt nisi irure occaecat exercitation officia incididunt id nulla eu. Nulla do Lorem dolor quis enim sunt eu adipisicing aliqua duis incididunt. Aliqua ad sit deserunt ad sunt sint irure id sit est labore officia voluptate mollit. Fugiat enim aute pariatur dolore laboris ullamco dolor cupidatat ea magna.\r\n", "registered": "2014-06-10T16:44:08-12:00", "latitude": 87.361341, "longitude": -101.173209, "tags": [ "cillum", "quis", "qui", "laborum", "eu", "id", "do" ], "friends": [ { "id": 0, "name": "Carroll Jacobs" }, { "id": 1, "name": "Kellie Malone" }, { "id": 2, "name": "Byrd Lynch" } ], "greeting": "Hello, Buckner Stein! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27b32a67629a453bc8", "index": 3250, "guid": "47b836ed-18f8-4d4c-933b-8ba4ee397a12", "isActive": true, "balance": "$1,927.36", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Ellison Hendrix", "gender": "male", "company": "EWAVES", "email": "ellisonhendrix@ewaves.com", "phone": "+1 (933) 594-2174", "address": "626 Chapel Street, Garberville, Utah, 731", "about": "Deserunt ut consectetur eu et pariatur sunt laborum id nisi tempor. In eu pariatur adipisicing ex cillum qui quis tempor nisi eu officia ad dolore et. Velit exercitation cillum irure elit. Dolor magna excepteur culpa laborum ullamco voluptate.\r\n", "registered": "2014-06-25T12:16:43-12:00", "latitude": 73.071916, "longitude": 5.038907, "tags": [ "ex", "reprehenderit", "tempor", "nisi", "ex", "sit", "aute" ], "friends": [ { "id": 0, "name": "Elaine Meyer" }, { "id": 1, "name": "Henrietta Walton" }, { "id": 2, "name": "Faulkner Stanley" } ], "greeting": "Hello, Ellison Hendrix! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea275ccc148b17ff5aba", "index": 3251, "guid": "94e27048-b2a1-43f7-9632-9da8c9f82ddf", "isActive": true, "balance": "$2,787.85", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Farmer Collins", "gender": "male", "company": "PURIA", "email": "farmercollins@puria.com", "phone": "+1 (951) 413-2071", "address": "329 Autumn Avenue, Gambrills, Montana, 5365", "about": "Quis culpa commodo velit ad elit fugiat tempor nulla nostrud. Cupidatat magna fugiat tempor ad occaecat Lorem consequat. Veniam occaecat occaecat sunt consequat aliqua mollit. Tempor id nulla ad culpa exercitation irure ipsum exercitation reprehenderit duis non consectetur adipisicing deserunt. Consectetur pariatur Lorem quis veniam id eu magna culpa pariatur amet culpa eiusmod. Tempor reprehenderit qui cillum nulla culpa qui adipisicing elit culpa commodo.\r\n", "registered": "2014-05-12T00:13:40-12:00", "latitude": -86.462011, "longitude": -85.445506, "tags": [ "et", "incididunt", "dolor", "do", "sit", "mollit", "ipsum" ], "friends": [ { "id": 0, "name": "Morgan Sosa" }, { "id": 1, "name": "Leanna Sampson" }, { "id": 2, "name": "Davis Cain" } ], "greeting": "Hello, Farmer Collins! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27c7d7a849f00325f4", "index": 3252, "guid": "358e872e-d331-429a-88cb-182ec022a09a", "isActive": false, "balance": "$3,932.08", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Frank Sawyer", "gender": "male", "company": "CIRCUM", "email": "franksawyer@circum.com", "phone": "+1 (914) 521-2553", "address": "865 Exeter Street, Tryon, Wisconsin, 6924", "about": "Reprehenderit in excepteur aliquip enim eiusmod. Laborum sint qui qui sint dolor exercitation officia. Ipsum ex deserunt laboris fugiat nisi sunt consequat aliqua aliquip. Sint quis aute labore quis quis labore fugiat. Laborum non est irure culpa minim magna est elit commodo culpa amet ut sit ut. Lorem velit labore in amet do do non.\r\n", "registered": "2014-03-12T07:23:49-13:00", "latitude": 10.548765, "longitude": -87.345663, "tags": [ "amet", "duis", "velit", "nostrud", "excepteur", "esse", "incididunt" ], "friends": [ { "id": 0, "name": "Lewis Wilder" }, { "id": 1, "name": "Bianca Mccray" }, { "id": 2, "name": "Bridget Sanford" } ], "greeting": "Hello, Frank Sawyer! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2725529150eca47be4", "index": 3253, "guid": "89a4cbf0-8802-4ae7-bb85-08919205793b", "isActive": true, "balance": "$2,523.21", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Pollard Cardenas", "gender": "male", "company": "ENTROFLEX", "email": "pollardcardenas@entroflex.com", "phone": "+1 (837) 576-3447", "address": "917 Prospect Avenue, Dodge, Maine, 8286", "about": "Non ullamco duis aute consequat ut laboris nostrud aliquip officia. Laboris nulla dolore aliqua ipsum ad est incididunt reprehenderit do aliquip cupidatat voluptate. Fugiat fugiat voluptate enim qui ut ipsum proident. Irure fugiat Lorem amet ipsum cupidatat velit. Officia mollit tempor esse in.\r\n", "registered": "2014-06-18T20:44:14-12:00", "latitude": -0.03643, "longitude": 98.537547, "tags": [ "culpa", "pariatur", "deserunt", "proident", "qui", "ex", "ipsum" ], "friends": [ { "id": 0, "name": "Powers Morrow" }, { "id": 1, "name": "Bobbi Livingston" }, { "id": 2, "name": "Evangelina Hamilton" } ], "greeting": "Hello, Pollard Cardenas! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea278cbaf8f04992ab47", "index": 3254, "guid": "ac68706f-3f7c-4ef4-950b-144062dfd3ef", "isActive": false, "balance": "$2,349.46", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Sara Shepherd", "gender": "female", "company": "CORPORANA", "email": "sarashepherd@corporana.com", "phone": "+1 (972) 584-2733", "address": "748 Boardwalk , Oceola, Virginia, 3534", "about": "Fugiat reprehenderit ut laborum est duis enim tempor pariatur ex minim aute exercitation consectetur consequat. Nostrud irure Lorem voluptate culpa quis adipisicing. Sunt et qui consectetur est ea ex aliquip. Est ex laborum dolor exercitation reprehenderit minim reprehenderit Lorem velit duis nisi reprehenderit officia cillum. Quis labore id ea id ullamco elit sint. Ipsum irure amet in irure magna fugiat qui ut.\r\n", "registered": "2014-02-16T00:50:46-13:00", "latitude": -34.177781, "longitude": 131.144532, "tags": [ "do", "dolor", "et", "proident", "cillum", "irure", "culpa" ], "friends": [ { "id": 0, "name": "Marietta Clayton" }, { "id": 1, "name": "Leach Atkinson" }, { "id": 2, "name": "Christy Clay" } ], "greeting": "Hello, Sara Shepherd! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27e2df03c65db86125", "index": 3255, "guid": "d640b720-d04f-49f5-9acc-863dbb994516", "isActive": false, "balance": "$1,186.06", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Pacheco Whitehead", "gender": "male", "company": "POLARIA", "email": "pachecowhitehead@polaria.com", "phone": "+1 (967) 431-3409", "address": "614 Chestnut Street, Juarez, Kentucky, 7476", "about": "Nostrud id occaecat consequat excepteur. Duis fugiat nostrud Lorem nostrud elit aute ex proident amet nulla. Dolor incididunt sint laborum excepteur nulla dolore enim id et tempor incididunt laborum nostrud quis. Ipsum commodo sint aute aliqua.\r\n", "registered": "2014-07-26T00:26:28-12:00", "latitude": 52.483741, "longitude": -6.32819, "tags": [ "do", "cupidatat", "tempor", "veniam", "nisi", "culpa", "Lorem" ], "friends": [ { "id": 0, "name": "Madeleine Rush" }, { "id": 1, "name": "Chrystal Hayden" }, { "id": 2, "name": "Foster Wooten" } ], "greeting": "Hello, Pacheco Whitehead! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27f5015cf521dbc82d", "index": 3256, "guid": "2db8b56d-6b7e-4b12-ac24-9cda6033cadb", "isActive": true, "balance": "$2,083.13", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Rodriquez Blankenship", "gender": "male", "company": "FURNAFIX", "email": "rodriquezblankenship@furnafix.com", "phone": "+1 (990) 459-2956", "address": "981 Driggs Avenue, Rutherford, Connecticut, 6284", "about": "Velit ex aliqua excepteur cupidatat est ex excepteur aute enim exercitation magna amet exercitation. Ullamco sit sunt officia fugiat dolor. Eiusmod consequat adipisicing exercitation et incididunt est. Lorem elit dolor ea ex do in aute id non fugiat. Labore anim ut ipsum ad velit eiusmod et exercitation id tempor amet eiusmod fugiat reprehenderit. Et aute cupidatat laborum proident irure magna ut consequat magna ipsum amet.\r\n", "registered": "2014-08-21T07:39:27-12:00", "latitude": 5.677027, "longitude": 105.810791, "tags": [ "enim", "voluptate", "consectetur", "nisi", "cillum", "veniam", "ipsum" ], "friends": [ { "id": 0, "name": "Roxanne Kent" }, { "id": 1, "name": "Wyatt Ramirez" }, { "id": 2, "name": "Jordan Hardy" } ], "greeting": "Hello, Rodriquez Blankenship! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea273631b0328d14c19c", "index": 3257, "guid": "84d2c39b-fac2-4cf7-b5f4-eefa169e6904", "isActive": true, "balance": "$1,887.86", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Cunningham Ross", "gender": "male", "company": "SUNCLIPSE", "email": "cunninghamross@sunclipse.com", "phone": "+1 (941) 548-2249", "address": "571 Beard Street, Bethpage, Mississippi, 1043", "about": "Ex reprehenderit ut mollit sunt do aute cillum amet sint elit sit nisi. Dolore adipisicing quis esse aliqua ullamco mollit amet minim incididunt sint amet reprehenderit proident. Pariatur qui ipsum mollit deserunt excepteur enim aliqua magna cillum tempor incididunt ullamco. Et deserunt adipisicing ut pariatur id irure cupidatat et irure do id in eiusmod. Deserunt irure et amet aliqua voluptate.\r\n", "registered": "2014-07-18T02:21:14-12:00", "latitude": -47.744825, "longitude": 48.272579, "tags": [ "laboris", "sunt", "officia", "nostrud", "sint", "enim", "velit" ], "friends": [ { "id": 0, "name": "Juliana Wade" }, { "id": 1, "name": "Montoya Cunningham" }, { "id": 2, "name": "Tracey Noble" } ], "greeting": "Hello, Cunningham Ross! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27f9433ba541456d7e", "index": 3258, "guid": "91eec7c9-b501-4bd1-9449-f45531c9e3fc", "isActive": true, "balance": "$2,403.26", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Monroe Montgomery", "gender": "male", "company": "MOTOVATE", "email": "monroemontgomery@motovate.com", "phone": "+1 (896) 446-2548", "address": "707 Bedford Avenue, Turah, Washington, 4899", "about": "Quis eu nostrud elit velit commodo duis est adipisicing dolore ad dolore culpa do. Dolor anim eu nulla ex ex aliqua consectetur commodo laboris deserunt velit. Enim mollit proident culpa do sunt veniam sunt aliqua.\r\n", "registered": "2014-08-31T17:53:30-12:00", "latitude": 28.051328, "longitude": -42.193264, "tags": [ "occaecat", "incididunt", "reprehenderit", "esse", "do", "fugiat", "occaecat" ], "friends": [ { "id": 0, "name": "Melanie Tran" }, { "id": 1, "name": "Geraldine Valdez" }, { "id": 2, "name": "Patrica Hebert" } ], "greeting": "Hello, Monroe Montgomery! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea272c93344532e97c7a", "index": 3259, "guid": "368d3841-4e06-4664-89c9-248e37bd998c", "isActive": false, "balance": "$1,426.04", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Waters Simmons", "gender": "male", "company": "ELENTRIX", "email": "waterssimmons@elentrix.com", "phone": "+1 (855) 579-2925", "address": "624 Union Avenue, Neahkahnie, Tennessee, 7894", "about": "Dolor amet sit elit cillum mollit laborum elit in officia. Elit anim do dolore occaecat veniam officia est do tempor cillum Lorem. Adipisicing ex incididunt aute sint adipisicing occaecat et ad. Minim duis do elit laborum culpa sunt ea officia.\r\n", "registered": "2014-03-05T16:56:36-13:00", "latitude": -22.874511, "longitude": -92.525508, "tags": [ "anim", "adipisicing", "sint", "anim", "id", "ut", "consequat" ], "friends": [ { "id": 0, "name": "Thelma Fox" }, { "id": 1, "name": "Dixie Mosley" }, { "id": 2, "name": "Gaines Cole" } ], "greeting": "Hello, Waters Simmons! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27e5b618daffbc5510", "index": 3260, "guid": "d99007c1-5f76-4b11-b297-ceda9ee4ae81", "isActive": false, "balance": "$1,457.46", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Cotton Waters", "gender": "male", "company": "BLEENDOT", "email": "cottonwaters@bleendot.com", "phone": "+1 (862) 519-2103", "address": "796 Classon Avenue, Verdi, Alabama, 6473", "about": "Cillum occaecat pariatur sunt minim occaecat enim aute. Enim proident exercitation minim irure nulla mollit velit laboris aliquip do consectetur ex do. Dolore enim ut aute mollit sunt enim eu ut cillum non. Aliquip aliquip sint enim nostrud proident ex quis dolore esse tempor. Eu laborum sit nostrud elit mollit.\r\n", "registered": "2014-06-22T14:30:39-12:00", "latitude": 72.153416, "longitude": -41.840408, "tags": [ "ut", "excepteur", "ea", "ipsum", "ullamco", "velit", "incididunt" ], "friends": [ { "id": 0, "name": "Simon Vega" }, { "id": 1, "name": "Rios Madden" }, { "id": 2, "name": "Agnes Bradford" } ], "greeting": "Hello, Cotton Waters! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea274af711bbd0caa275", "index": 3261, "guid": "917ac088-a912-4f14-af2b-2e9b46b21ea8", "isActive": false, "balance": "$1,304.79", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Anne Slater", "gender": "female", "company": "ZEAM", "email": "anneslater@zeam.com", "phone": "+1 (913) 597-3022", "address": "825 Dobbin Street, Dixie, Ohio, 7841", "about": "Ullamco commodo occaecat ipsum incididunt pariatur labore eu deserunt aliquip duis commodo esse. Ex in ullamco fugiat incididunt. Voluptate nostrud in minim cillum aliqua reprehenderit pariatur deserunt aliquip non do incididunt mollit. Ea ex ex aliqua labore. Ut quis est id ipsum cupidatat id sit eu aute. Proident anim est ullamco aute eiusmod deserunt cupidatat et aliqua mollit id non nostrud ad.\r\n", "registered": "2014-01-25T05:02:00-13:00", "latitude": 64.997219, "longitude": 40.697935, "tags": [ "dolore", "est", "excepteur", "eiusmod", "enim", "adipisicing", "laboris" ], "friends": [ { "id": 0, "name": "Gay Maddox" }, { "id": 1, "name": "Annabelle Ward" }, { "id": 2, "name": "Ruby Rice" } ], "greeting": "Hello, Anne Slater! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2729bc63e3e811304f", "index": 3262, "guid": "6a653076-d03f-4831-8a12-9ad6f04fb806", "isActive": false, "balance": "$2,095.63", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Elva Hendricks", "gender": "female", "company": "TROPOLIS", "email": "elvahendricks@tropolis.com", "phone": "+1 (943) 457-2142", "address": "224 Lefferts Avenue, Coral, Hawaii, 1432", "about": "Labore anim consectetur culpa irure adipisicing do enim in proident culpa veniam nisi elit. Sit dolore culpa velit eiusmod mollit veniam deserunt. Aliqua laborum culpa tempor ea ex. Laborum velit velit consequat sint mollit laborum qui. Voluptate elit est nulla excepteur mollit magna in adipisicing.\r\n", "registered": "2014-02-27T04:55:54-13:00", "latitude": -51.742586, "longitude": 107.091713, "tags": [ "do", "mollit", "duis", "non", "duis", "velit", "sint" ], "friends": [ { "id": 0, "name": "Esperanza Morse" }, { "id": 1, "name": "Christi James" }, { "id": 2, "name": "Debra Griffith" } ], "greeting": "Hello, Elva Hendricks! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27c7f6aac24b16553b", "index": 3263, "guid": "cf7d9e94-5c7b-4ec8-91f1-77f6d3e85f8f", "isActive": true, "balance": "$3,010.59", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Valarie Webb", "gender": "female", "company": "TINGLES", "email": "valariewebb@tingles.com", "phone": "+1 (837) 408-3593", "address": "257 Navy Walk, Rushford, New Mexico, 4339", "about": "Veniam qui ipsum quis magna proident occaecat nulla culpa est elit aliquip duis irure. Dolore laboris esse incididunt sit ad nostrud. Quis consequat exercitation proident ipsum fugiat. Deserunt et irure minim id cupidatat laborum fugiat id adipisicing ut magna non elit tempor. Est fugiat fugiat dolore proident pariatur sit consequat.\r\n", "registered": "2014-01-15T11:26:11-13:00", "latitude": -9.307947, "longitude": 29.214349, "tags": [ "eu", "enim", "reprehenderit", "pariatur", "commodo", "incididunt", "fugiat" ], "friends": [ { "id": 0, "name": "Craft Kirk" }, { "id": 1, "name": "Price Rutledge" }, { "id": 2, "name": "Carver Baker" } ], "greeting": "Hello, Valarie Webb! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27253e49ddd58b0bc8", "index": 3264, "guid": "100525c6-2fe2-4c91-b674-d5b24b4ae9e7", "isActive": false, "balance": "$3,882.14", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Moore Daniels", "gender": "male", "company": "DOGNOST", "email": "mooredaniels@dognost.com", "phone": "+1 (938) 411-2642", "address": "920 Schaefer Street, Omar, Maryland, 7875", "about": "Minim minim ut ullamco et nostrud ea. Ex fugiat consequat irure aliqua occaecat nulla consequat sint esse voluptate eu sit. Excepteur occaecat exercitation veniam adipisicing aute dolore do ut est adipisicing irure consectetur deserunt Lorem. Aute ad quis pariatur duis velit nisi tempor labore ad adipisicing aute velit deserunt. Irure veniam sunt est ad ea pariatur ad nostrud consectetur magna. Non ipsum laborum officia eiusmod non aliqua ut fugiat amet et labore esse exercitation incididunt.\r\n", "registered": "2014-01-15T12:29:38-13:00", "latitude": 20.581017, "longitude": 87.251581, "tags": [ "do", "nisi", "laboris", "enim", "aliquip", "nostrud", "labore" ], "friends": [ { "id": 0, "name": "Melinda Wright" }, { "id": 1, "name": "Margaret Patel" }, { "id": 2, "name": "Garrison Cook" } ], "greeting": "Hello, Moore Daniels! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea274b261f0c5a06b359", "index": 3265, "guid": "c055c92f-2760-4d07-8777-8c81cc936eb2", "isActive": false, "balance": "$1,327.62", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Peterson Bullock", "gender": "male", "company": "RECOGNIA", "email": "petersonbullock@recognia.com", "phone": "+1 (984) 516-3668", "address": "377 Garden Place, Helen, Alaska, 9361", "about": "Consectetur cillum occaecat sunt pariatur ex in deserunt nulla qui in et. Consectetur sint nulla mollit qui pariatur consectetur veniam nostrud labore non. Dolor pariatur tempor ullamco nostrud voluptate anim occaecat.\r\n", "registered": "2014-05-12T15:30:50-12:00", "latitude": 83.868265, "longitude": 8.830562, "tags": [ "reprehenderit", "nulla", "laboris", "velit", "fugiat", "laborum", "aute" ], "friends": [ { "id": 0, "name": "Nunez Nicholson" }, { "id": 1, "name": "Adrienne Grimes" }, { "id": 2, "name": "Angelia Olsen" } ], "greeting": "Hello, Peterson Bullock! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27f48842807565310a", "index": 3266, "guid": "f4f16017-9f0a-46f4-8d84-5aac0b58cd46", "isActive": true, "balance": "$1,073.52", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Kathrine Ramsey", "gender": "female", "company": "EXTRO", "email": "kathrineramsey@extro.com", "phone": "+1 (980) 501-2127", "address": "661 Bergen Court, Urbana, Arizona, 3144", "about": "Ad sint do deserunt ut veniam incididunt occaecat consectetur nulla. Irure mollit ad commodo Lorem. Deserunt ut ea ad anim occaecat ipsum. Dolor minim ex ad minim ex aliqua magna. Nisi do sunt aute sint qui tempor esse ipsum.\r\n", "registered": "2014-02-11T01:59:33-13:00", "latitude": -4.52848, "longitude": 94.526435, "tags": [ "magna", "et", "voluptate", "incididunt", "et", "magna", "magna" ], "friends": [ { "id": 0, "name": "Essie Barrera" }, { "id": 1, "name": "Lauri Moses" }, { "id": 2, "name": "Lucas Huff" } ], "greeting": "Hello, Kathrine Ramsey! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27f406b9264c9aabc8", "index": 3267, "guid": "2a216258-c08d-4464-a5af-22162bee1916", "isActive": false, "balance": "$3,582.57", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Reese Mcintyre", "gender": "male", "company": "CANOPOLY", "email": "reesemcintyre@canopoly.com", "phone": "+1 (943) 524-2506", "address": "918 Stillwell Place, Camino, Federated States Of Micronesia, 6300", "about": "Adipisicing deserunt culpa eu pariatur occaecat anim et aliquip sit sint pariatur sunt id. Cillum eu veniam Lorem sit non deserunt ad excepteur veniam. Minim aliqua dolor qui ullamco sint labore laboris veniam consequat fugiat qui veniam anim.\r\n", "registered": "2014-09-04T17:02:37-12:00", "latitude": -25.240503, "longitude": -47.611561, "tags": [ "occaecat", "anim", "sunt", "ex", "duis", "esse", "in" ], "friends": [ { "id": 0, "name": "Deleon Hicks" }, { "id": 1, "name": "Holland Carlson" }, { "id": 2, "name": "Wiggins Ayers" } ], "greeting": "Hello, Reese Mcintyre! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2750540526d571770a", "index": 3268, "guid": "30a92256-4776-42cb-9142-304621ec9dbb", "isActive": true, "balance": "$1,632.19", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Patrice Leach", "gender": "female", "company": "SEALOUD", "email": "patriceleach@sealoud.com", "phone": "+1 (960) 562-3861", "address": "896 Hastings Street, Maury, Oklahoma, 7291", "about": "Dolor est nostrud nisi in sunt aliqua veniam. Lorem duis excepteur mollit irure aliqua veniam est aliquip. Pariatur labore tempor fugiat anim veniam aute voluptate. Aliqua deserunt nostrud minim deserunt sit et labore et consequat.\r\n", "registered": "2014-02-09T01:08:05-13:00", "latitude": -17.976052, "longitude": 49.990674, "tags": [ "tempor", "ea", "reprehenderit", "aute", "laborum", "occaecat", "veniam" ], "friends": [ { "id": 0, "name": "Shelia Lyons" }, { "id": 1, "name": "Cleo Robles" }, { "id": 2, "name": "Lelia Curry" } ], "greeting": "Hello, Patrice Leach! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27721218c13e897d00", "index": 3269, "guid": "b11c1662-8d35-457c-b061-7e8e0f32586e", "isActive": false, "balance": "$2,879.01", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Clarke Marquez", "gender": "male", "company": "NAMEGEN", "email": "clarkemarquez@namegen.com", "phone": "+1 (958) 421-3820", "address": "911 Pacific Street, Marshall, Michigan, 6027", "about": "Voluptate nulla dolore in aliquip laborum ad enim. Excepteur fugiat et sint dolore id aliquip et nostrud. Sit ut mollit id reprehenderit pariatur. Consectetur aute in excepteur laborum in occaecat nostrud exercitation voluptate aliquip nostrud dolor aliquip minim.\r\n", "registered": "2014-03-01T07:08:28-13:00", "latitude": -42.921456, "longitude": -142.897524, "tags": [ "dolor", "aliquip", "veniam", "mollit", "ipsum", "et", "anim" ], "friends": [ { "id": 0, "name": "Sonya Acevedo" }, { "id": 1, "name": "Stewart Reeves" }, { "id": 2, "name": "Ava Irwin" } ], "greeting": "Hello, Clarke Marquez! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea272982b747ff9e31fd", "index": 3270, "guid": "bba88ac1-6a50-491d-98a2-c123dafbb6ec", "isActive": true, "balance": "$3,043.52", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Christie Terrell", "gender": "female", "company": "GEOLOGIX", "email": "christieterrell@geologix.com", "phone": "+1 (861) 408-2376", "address": "433 Covert Street, Lookingglass, Kansas, 2014", "about": "Dolor magna voluptate amet minim mollit enim sit labore culpa commodo. Labore labore ea est non adipisicing sunt sunt eu officia. Voluptate eu esse dolor minim amet ex minim deserunt eiusmod amet do. Duis amet adipisicing exercitation aliquip ipsum ea occaecat quis elit labore pariatur quis sunt duis. Nostrud sit culpa duis magna ad eu commodo laboris.\r\n", "registered": "2014-01-24T15:02:51-13:00", "latitude": 67.079558, "longitude": 165.931448, "tags": [ "sunt", "nisi", "id", "qui", "in", "officia", "proident" ], "friends": [ { "id": 0, "name": "Case Schmidt" }, { "id": 1, "name": "Mallory Delaney" }, { "id": 2, "name": "Santana Wyatt" } ], "greeting": "Hello, Christie Terrell! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27328e05aa8dcaadab", "index": 3271, "guid": "64236b6b-91cf-4592-a888-6d9054c83822", "isActive": false, "balance": "$3,384.91", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Delaney Lindsey", "gender": "male", "company": "PROTODYNE", "email": "delaneylindsey@protodyne.com", "phone": "+1 (908) 432-2484", "address": "540 Fillmore Avenue, Holtville, South Dakota, 6544", "about": "Eu et occaecat elit et nostrud elit laborum cillum non culpa occaecat. Pariatur do amet et voluptate. Reprehenderit aliquip in dolore qui quis incididunt ad et reprehenderit.\r\n", "registered": "2014-07-30T08:45:27-12:00", "latitude": 74.511632, "longitude": 55.537185, "tags": [ "mollit", "ullamco", "voluptate", "do", "incididunt", "labore", "deserunt" ], "friends": [ { "id": 0, "name": "Lawrence Head" }, { "id": 1, "name": "Kristen Morrison" }, { "id": 2, "name": "Pauline Crawford" } ], "greeting": "Hello, Delaney Lindsey! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27927271d9eed72118", "index": 3272, "guid": "0fd616ff-3f19-4d43-be14-88617b385ba5", "isActive": false, "balance": "$1,438.24", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Diane Espinoza", "gender": "female", "company": "COGNICODE", "email": "dianeespinoza@cognicode.com", "phone": "+1 (810) 506-3831", "address": "707 Dahlgreen Place, Leeper, West Virginia, 380", "about": "Laboris consectetur tempor laborum ullamco sit proident in incididunt cillum duis mollit ullamco excepteur sunt. Culpa aliqua sunt reprehenderit et et mollit ut nisi. Pariatur esse non anim et consequat irure occaecat laboris. Mollit fugiat ut id elit laborum incididunt ea elit sunt cillum consectetur sit. Veniam anim ipsum voluptate nostrud veniam in ex culpa anim tempor aute minim. Consequat qui ut elit non consectetur qui aliqua proident nisi ea fugiat eiusmod aliquip et.\r\n", "registered": "2014-08-06T07:45:11-12:00", "latitude": -44.984358, "longitude": 134.00072, "tags": [ "cupidatat", "fugiat", "sunt", "veniam", "enim", "officia", "esse" ], "friends": [ { "id": 0, "name": "Alyson Sullivan" }, { "id": 1, "name": "Barker Day" }, { "id": 2, "name": "Snyder Harmon" } ], "greeting": "Hello, Diane Espinoza! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea273600e349a4986ad5", "index": 3273, "guid": "fded9683-7d1e-45e5-ae62-a14a13d53f4c", "isActive": false, "balance": "$3,935.15", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Kris English", "gender": "female", "company": "XINWARE", "email": "krisenglish@xinware.com", "phone": "+1 (900) 592-2653", "address": "231 Lenox Road, Sardis, Texas, 8125", "about": "Pariatur aliqua cupidatat cupidatat dolor sunt aliqua velit. Velit eu in tempor tempor sit deserunt nulla ad sint in sint officia. In fugiat excepteur cupidatat tempor commodo dolore. Adipisicing occaecat pariatur adipisicing sit sint consectetur incididunt aliquip id aute nisi. Nostrud magna nostrud excepteur exercitation ad eu. Sint duis non reprehenderit irure incididunt eu et veniam enim.\r\n", "registered": "2014-02-07T04:32:55-13:00", "latitude": 44.569334, "longitude": -175.075994, "tags": [ "aliqua", "minim", "eiusmod", "quis", "nulla", "eu", "deserunt" ], "friends": [ { "id": 0, "name": "Stephenson Buckley" }, { "id": 1, "name": "Evelyn Haley" }, { "id": 2, "name": "Branch Mullen" } ], "greeting": "Hello, Kris English! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea273df5b9a0928308dc", "index": 3274, "guid": "7f4f7bc7-9e8f-49e2-b74d-d240cddb7ea6", "isActive": false, "balance": "$2,446.33", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Mckee Bray", "gender": "male", "company": "SIGNITY", "email": "mckeebray@signity.com", "phone": "+1 (990) 595-2887", "address": "564 Post Court, Condon, Oregon, 8037", "about": "Proident sit elit pariatur exercitation consequat mollit ullamco enim. Ad mollit irure ullamco ipsum non dolore enim. Aliquip nostrud ex voluptate minim duis ad minim ex cillum qui tempor eu. Ut ipsum fugiat commodo esse sunt reprehenderit deserunt et consectetur aute dolore fugiat pariatur.\r\n", "registered": "2014-02-12T03:22:28-13:00", "latitude": -33.486984, "longitude": 124.196071, "tags": [ "in", "deserunt", "eu", "tempor", "non", "esse", "esse" ], "friends": [ { "id": 0, "name": "Holden Gay" }, { "id": 1, "name": "Natalie Pitts" }, { "id": 2, "name": "Morales Vance" } ], "greeting": "Hello, Mckee Bray! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea273e7f0492669fbaf2", "index": 3275, "guid": "26b83657-ea27-4694-9002-d94e997fdd3a", "isActive": true, "balance": "$2,199.31", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Middleton Kidd", "gender": "male", "company": "CENTREGY", "email": "middletonkidd@centregy.com", "phone": "+1 (844) 550-2093", "address": "632 Lincoln Road, Muse, Nevada, 5758", "about": "Esse nisi incididunt anim dolore laboris id Lorem. Ad voluptate sit elit voluptate amet irure ullamco. Fugiat ea ipsum qui cillum adipisicing veniam irure commodo ea dolore dolor eiusmod exercitation. Esse veniam dolore irure eiusmod dolore dolor minim anim est qui. Adipisicing occaecat mollit elit aliqua eiusmod. Ex irure aute id in laborum reprehenderit proident laborum. Quis deserunt id nulla eiusmod laborum qui dolore non.\r\n", "registered": "2014-05-25T09:14:28-12:00", "latitude": -86.912091, "longitude": 17.848591, "tags": [ "eu", "qui", "sit", "ad", "sunt", "eiusmod", "non" ], "friends": [ { "id": 0, "name": "Garcia Bridges" }, { "id": 1, "name": "Bobbie Alford" }, { "id": 2, "name": "Tate Riley" } ], "greeting": "Hello, Middleton Kidd! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27ca47d3a937225861", "index": 3276, "guid": "9d5e8628-f9a8-4888-862c-f4204abb8306", "isActive": false, "balance": "$1,777.17", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Morrow Brennan", "gender": "male", "company": "BLEEKO", "email": "morrowbrennan@bleeko.com", "phone": "+1 (872) 474-2773", "address": "281 Virginia Place, Wiscon, Minnesota, 3002", "about": "In quis nisi tempor laboris reprehenderit laborum pariatur. Laborum occaecat tempor anim in et. Dolore cupidatat deserunt eu reprehenderit et ullamco fugiat nisi ad est enim consectetur. Deserunt quis est qui nulla eu aliquip minim consequat quis consectetur esse.\r\n", "registered": "2014-05-30T13:28:39-12:00", "latitude": 86.657093, "longitude": 17.831999, "tags": [ "quis", "reprehenderit", "id", "deserunt", "nulla", "eiusmod", "proident" ], "friends": [ { "id": 0, "name": "Brooke Austin" }, { "id": 1, "name": "Rosalinda Oneil" }, { "id": 2, "name": "Silva Richard" } ], "greeting": "Hello, Morrow Brennan! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27f934fcabc4ef76ff", "index": 3277, "guid": "cd71e3b5-31d4-433e-ba6b-52679ed66102", "isActive": true, "balance": "$2,274.24", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Shawn Casey", "gender": "female", "company": "BALOOBA", "email": "shawncasey@balooba.com", "phone": "+1 (873) 541-3267", "address": "196 Baltic Street, Windsor, Missouri, 6867", "about": "Sunt eiusmod qui officia adipisicing non non elit enim voluptate sint duis. Officia est sunt mollit ad sint fugiat ad sit est fugiat irure. Cillum proident in tempor nulla aliqua Lorem fugiat non et consequat minim commodo mollit. Do ullamco culpa qui eiusmod ut officia in irure.\r\n", "registered": "2014-01-01T03:39:29-13:00", "latitude": -5.071094, "longitude": 4.499676, "tags": [ "voluptate", "ad", "ullamco", "est", "ex", "nisi", "eu" ], "friends": [ { "id": 0, "name": "Rutledge Figueroa" }, { "id": 1, "name": "Nelda Gallagher" }, { "id": 2, "name": "Sallie Copeland" } ], "greeting": "Hello, Shawn Casey! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27043a432736382259", "index": 3278, "guid": "3425eeea-d3f9-420b-ad21-533c2412900b", "isActive": false, "balance": "$3,000.63", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Morris Gould", "gender": "male", "company": "MAGNAFONE", "email": "morrisgould@magnafone.com", "phone": "+1 (826) 518-2030", "address": "132 Nassau Street, Wanamie, Rhode Island, 4098", "about": "Lorem cillum nisi elit occaecat amet. Id ea cupidatat excepteur eiusmod laborum tempor. Ad cillum incididunt non irure est do quis in culpa aliqua enim esse culpa. Ipsum pariatur est excepteur sunt tempor consectetur dolor excepteur elit officia mollit commodo enim sint. Exercitation ea consectetur et ullamco. In tempor incididunt cupidatat et ipsum fugiat labore. In velit magna veniam dolore sint duis ipsum velit irure exercitation cupidatat.\r\n", "registered": "2014-03-03T04:38:11-13:00", "latitude": 22.508234, "longitude": -91.128023, "tags": [ "voluptate", "ex", "esse", "ea", "qui", "anim", "esse" ], "friends": [ { "id": 0, "name": "Lucille Sellers" }, { "id": 1, "name": "Florence Long" }, { "id": 2, "name": "Hewitt Barnett" } ], "greeting": "Hello, Morris Gould! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27795dcc2a429a11c8", "index": 3279, "guid": "5600f529-779c-4003-a3ec-7754cc6cdfbc", "isActive": true, "balance": "$2,820.07", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Luann Morin", "gender": "female", "company": "AQUASURE", "email": "luannmorin@aquasure.com", "phone": "+1 (977) 451-3243", "address": "670 Livonia Avenue, Trucksville, Florida, 8157", "about": "Esse id ipsum qui eu anim dolore incididunt. Consectetur excepteur dolore id nisi ea deserunt aliquip proident. Aute Lorem eiusmod dolore sit sunt nulla qui minim aute ipsum. Commodo proident qui proident et laboris exercitation anim cillum. Mollit consequat et laboris laborum anim consequat amet. Dolor velit laboris pariatur do magna cupidatat ullamco anim tempor cupidatat cillum reprehenderit consequat nostrud. Aliqua consectetur nisi quis Lorem reprehenderit et.\r\n", "registered": "2014-08-25T08:31:02-12:00", "latitude": -31.137362, "longitude": 79.946073, "tags": [ "eiusmod", "mollit", "occaecat", "do", "adipisicing", "nisi", "excepteur" ], "friends": [ { "id": 0, "name": "Helen Scott" }, { "id": 1, "name": "Morin Prince" }, { "id": 2, "name": "Gill Ryan" } ], "greeting": "Hello, Luann Morin! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27a0883edf500cf014", "index": 3280, "guid": "33519cef-1089-45a5-a862-7ca61906854b", "isActive": true, "balance": "$3,759.75", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Lakisha Knox", "gender": "female", "company": "SPRINGBEE", "email": "lakishaknox@springbee.com", "phone": "+1 (803) 478-3196", "address": "190 Voorhies Avenue, Robinson, North Carolina, 1632", "about": "Proident labore ex culpa ipsum qui pariatur consectetur sint et. Consectetur sunt nisi laboris aute excepteur ea qui proident. Cillum sint laboris fugiat ea adipisicing aute exercitation laboris magna. Ullamco est esse incididunt sunt cupidatat.\r\n", "registered": "2014-05-16T23:54:42-12:00", "latitude": 88.668011, "longitude": 148.747033, "tags": [ "officia", "non", "sunt", "fugiat", "sunt", "in", "enim" ], "friends": [ { "id": 0, "name": "Dalton Yang" }, { "id": 1, "name": "Jami Baldwin" }, { "id": 2, "name": "Walter Hall" } ], "greeting": "Hello, Lakisha Knox! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea271dce2050ad561686", "index": 3281, "guid": "8505703c-ce4c-496f-a0ea-50b5a6500c23", "isActive": true, "balance": "$2,836.43", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Dunlap Joyner", "gender": "male", "company": "QUARMONY", "email": "dunlapjoyner@quarmony.com", "phone": "+1 (833) 506-2858", "address": "455 Norman Avenue, Dahlen, New Hampshire, 4803", "about": "Est nisi ea duis aliquip amet elit aute qui quis. Eiusmod officia sint officia anim consequat sunt fugiat ad anim velit adipisicing. Nisi velit qui labore nisi culpa laborum proident Lorem aliquip. Laborum voluptate ut nisi ipsum et commodo id culpa amet consequat occaecat ex aliqua. Id fugiat culpa ullamco quis proident eu non magna. Ullamco adipisicing nulla ad enim ut.\r\n", "registered": "2014-02-01T15:27:00-13:00", "latitude": -3.214156, "longitude": -169.027493, "tags": [ "ut", "cillum", "ipsum", "do", "sunt", "nulla", "sunt" ], "friends": [ { "id": 0, "name": "Janice Goodwin" }, { "id": 1, "name": "Reyes Munoz" }, { "id": 2, "name": "Darlene Bush" } ], "greeting": "Hello, Dunlap Joyner! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27642f91c184f355d5", "index": 3282, "guid": "7b87991e-a80b-4446-a71e-42cfba33209e", "isActive": true, "balance": "$2,852.91", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Tabatha Ramos", "gender": "female", "company": "CONFRENZY", "email": "tabatharamos@confrenzy.com", "phone": "+1 (914) 430-2624", "address": "506 Ryder Avenue, Kraemer, Arkansas, 2617", "about": "Enim aliqua irure culpa culpa Lorem labore cillum labore commodo sunt. Occaecat sunt deserunt magna mollit. Culpa id dolore veniam laboris ut minim velit tempor ad dolor. Est est nisi minim anim velit. Elit velit in occaecat aliqua incididunt.\r\n", "registered": "2014-03-22T01:10:04-13:00", "latitude": 3.814741, "longitude": 32.944942, "tags": [ "occaecat", "laborum", "sint", "pariatur", "nulla", "cillum", "proident" ], "friends": [ { "id": 0, "name": "Vaughn Wagner" }, { "id": 1, "name": "Lea Sandoval" }, { "id": 2, "name": "Veronica Bentley" } ], "greeting": "Hello, Tabatha Ramos! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27ff7f5cbb10bb7ac8", "index": 3283, "guid": "42fc750b-d6a2-4574-876b-673d5d9e510b", "isActive": false, "balance": "$3,211.22", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Loretta Skinner", "gender": "female", "company": "ECLIPTO", "email": "lorettaskinner@eclipto.com", "phone": "+1 (862) 530-3493", "address": "907 Grant Avenue, Gadsden, Iowa, 7927", "about": "Ad esse officia ad ullamco proident incididunt ad voluptate exercitation consequat ullamco. Nisi est fugiat aliqua fugiat sit. Voluptate ipsum dolore anim cupidatat sint voluptate aliquip aute. Aute non id tempor consectetur tempor deserunt. Aliquip excepteur proident ea voluptate aute irure voluptate enim minim quis aliqua. Lorem duis labore nisi proident in eiusmod labore cupidatat excepteur. Est reprehenderit officia id nulla ipsum aliquip consequat.\r\n", "registered": "2014-04-12T18:58:03-12:00", "latitude": 8.039378, "longitude": 80.739841, "tags": [ "proident", "aliqua", "velit", "irure", "aute", "enim", "eiusmod" ], "friends": [ { "id": 0, "name": "Kirkland Sharpe" }, { "id": 1, "name": "Benson Hull" }, { "id": 2, "name": "Chandler Carney" } ], "greeting": "Hello, Loretta Skinner! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27a644a2adeabe785a", "index": 3284, "guid": "53e2acbc-4ebb-469b-b276-02027d581980", "isActive": true, "balance": "$1,660.04", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Angelita Heath", "gender": "female", "company": "CODACT", "email": "angelitaheath@codact.com", "phone": "+1 (867) 527-3028", "address": "569 Highland Avenue, Williston, Nebraska, 1872", "about": "Non anim velit enim velit incididunt eiusmod deserunt irure. Nulla consectetur eu eiusmod duis aliqua. Duis ipsum aliquip Lorem aute excepteur incididunt et aute fugiat consequat magna exercitation ex. Laborum incididunt duis et minim minim. Magna consequat proident culpa non minim pariatur commodo officia commodo. Reprehenderit elit commodo et aliquip duis. Dolor reprehenderit dolor et aliquip ea ipsum consectetur voluptate.\r\n", "registered": "2014-02-11T14:16:31-13:00", "latitude": 41.323178, "longitude": -18.537786, "tags": [ "mollit", "dolor", "ea", "cupidatat", "fugiat", "incididunt", "est" ], "friends": [ { "id": 0, "name": "Roseann Ortega" }, { "id": 1, "name": "Bass Charles" }, { "id": 2, "name": "Bender Hill" } ], "greeting": "Hello, Angelita Heath! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27a458c0aa758ec33a", "index": 3285, "guid": "a5198bf8-f11d-4d7a-ae24-624c61c6cd54", "isActive": false, "balance": "$3,953.47", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Helga Thompson", "gender": "female", "company": "SKYPLEX", "email": "helgathompson@skyplex.com", "phone": "+1 (835) 461-3885", "address": "364 Wolf Place, Corinne, District Of Columbia, 3205", "about": "Veniam id Lorem minim labore aliquip duis fugiat fugiat nostrud pariatur quis proident ut. Incididunt occaecat laboris nulla nulla nisi non exercitation nisi quis laboris ullamco nisi. Culpa nostrud magna consectetur ad aliquip incididunt in irure eiusmod eiusmod officia non velit. Labore cillum ullamco adipisicing veniam id exercitation enim consectetur adipisicing laboris dolore qui. Nostrud minim amet ad non cupidatat veniam culpa do occaecat reprehenderit cillum anim.\r\n", "registered": "2014-03-30T09:28:58-13:00", "latitude": -50.351913, "longitude": 149.428229, "tags": [ "cillum", "do", "occaecat", "sit", "ad", "dolor", "adipisicing" ], "friends": [ { "id": 0, "name": "York Huffman" }, { "id": 1, "name": "Graves Bishop" }, { "id": 2, "name": "Shirley Jimenez" } ], "greeting": "Hello, Helga Thompson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2717f617fbb978df8d", "index": 3286, "guid": "9e05b453-ef3a-4cc0-af36-a9076d07289b", "isActive": false, "balance": "$2,809.30", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Atkinson Morris", "gender": "male", "company": "ZOARERE", "email": "atkinsonmorris@zoarere.com", "phone": "+1 (985) 481-2127", "address": "134 Knickerbocker Avenue, Bannock, New Jersey, 9334", "about": "Aute do labore irure tempor et. Mollit anim consequat sit officia. Proident ut quis pariatur aute commodo. Anim et cillum dolore cillum consectetur velit laboris incididunt aliqua tempor fugiat qui in laboris.\r\n", "registered": "2014-03-07T15:56:49-13:00", "latitude": -40.849823, "longitude": 43.830523, "tags": [ "eiusmod", "sit", "ad", "sint", "enim", "labore", "nostrud" ], "friends": [ { "id": 0, "name": "Chapman Gentry" }, { "id": 1, "name": "Nina Estes" }, { "id": 2, "name": "English Tate" } ], "greeting": "Hello, Atkinson Morris! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea277f032e348a887ec9", "index": 3287, "guid": "94fd542f-2e2f-43a7-9c5c-36e109b973ae", "isActive": false, "balance": "$1,910.27", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Charlene Tyson", "gender": "female", "company": "ZIDOX", "email": "charlenetyson@zidox.com", "phone": "+1 (899) 473-2266", "address": "899 Melrose Street, Ellerslie, Palau, 6559", "about": "Aliquip dolore incididunt elit exercitation qui ipsum excepteur. Laborum laborum laborum adipisicing nostrud ullamco fugiat consectetur velit consectetur labore quis ipsum. Aute ad eiusmod sit nulla officia fugiat fugiat aute et mollit veniam elit anim et. Enim aliqua consectetur ea eiusmod enim commodo do. Est nostrud aliquip voluptate duis fugiat consectetur nulla voluptate. Ipsum labore ea est velit deserunt do. Reprehenderit elit pariatur irure non dolor veniam Lorem sunt commodo cillum ut deserunt.\r\n", "registered": "2014-07-15T00:20:30-12:00", "latitude": -69.351534, "longitude": -135.503902, "tags": [ "in", "elit", "magna", "eu", "elit", "eiusmod", "proident" ], "friends": [ { "id": 0, "name": "Helena Stanton" }, { "id": 1, "name": "Clarissa Pope" }, { "id": 2, "name": "Horn Galloway" } ], "greeting": "Hello, Charlene Tyson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27113d2ff936ddde66", "index": 3288, "guid": "98f325c5-bf01-44d6-8224-0afff0769508", "isActive": true, "balance": "$2,506.82", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Lucile Compton", "gender": "female", "company": "BOILICON", "email": "lucilecompton@boilicon.com", "phone": "+1 (886) 413-2544", "address": "165 Schweikerts Walk, Graniteville, Puerto Rico, 3988", "about": "Sint enim exercitation sit eiusmod tempor eiusmod laborum minim sunt sit. Sunt veniam commodo deserunt do reprehenderit cupidatat consectetur aute Lorem adipisicing qui. Cillum fugiat enim fugiat occaecat aliquip qui minim cupidatat quis. Cillum nulla dolore est consectetur sint aute laborum eiusmod. Culpa Lorem et commodo proident nisi mollit ipsum incididunt qui officia sunt aliquip. Dolor eiusmod nostrud sunt Lorem deserunt aliqua.\r\n", "registered": "2014-05-11T14:22:43-12:00", "latitude": 59.346709, "longitude": -113.735479, "tags": [ "nisi", "commodo", "deserunt", "occaecat", "nisi", "sint", "enim" ], "friends": [ { "id": 0, "name": "Lacy Morgan" }, { "id": 1, "name": "Murphy Meadows" }, { "id": 2, "name": "Teri Paul" } ], "greeting": "Hello, Lucile Compton! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27b95ee58a40074e42", "index": 3289, "guid": "ddf973f0-90fd-4a3e-bdb5-e943bea8b21a", "isActive": false, "balance": "$3,966.70", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Prince Browning", "gender": "male", "company": "OBONES", "email": "princebrowning@obones.com", "phone": "+1 (821) 419-3396", "address": "322 Bay Avenue, Broadlands, California, 3778", "about": "Commodo aliqua consectetur officia excepteur sit aute. Deserunt mollit do excepteur aliqua labore. Laboris nisi sunt adipisicing amet pariatur ex sit non reprehenderit commodo anim reprehenderit.\r\n", "registered": "2014-08-10T10:08:23-12:00", "latitude": 8.430597, "longitude": -20.583084, "tags": [ "Lorem", "irure", "exercitation", "tempor", "cillum", "consectetur", "aliqua" ], "friends": [ { "id": 0, "name": "Frances Knapp" }, { "id": 1, "name": "Juliet Santos" }, { "id": 2, "name": "Lizzie Frank" } ], "greeting": "Hello, Prince Browning! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2700c7aa1b29554da0", "index": 3290, "guid": "103becba-0a9c-485b-9826-a151e8ac1106", "isActive": true, "balance": "$1,566.83", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Simpson Bird", "gender": "male", "company": "PETICULAR", "email": "simpsonbird@peticular.com", "phone": "+1 (987) 423-2372", "address": "126 Rodney Street, Longoria, Vermont, 4185", "about": "In dolore sint est nulla ad non enim occaecat id cillum. Lorem sit qui qui deserunt irure enim minim elit fugiat adipisicing ad sint est. Dolore ad fugiat nisi est qui incididunt laborum sunt aliqua sint excepteur aliqua.\r\n", "registered": "2014-02-05T17:13:15-13:00", "latitude": -9.497861, "longitude": -149.12272, "tags": [ "et", "nulla", "ex", "commodo", "do", "laboris", "proident" ], "friends": [ { "id": 0, "name": "Petersen Bryan" }, { "id": 1, "name": "Bonner Joyce" }, { "id": 2, "name": "Bertha Wilcox" } ], "greeting": "Hello, Simpson Bird! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27080cd473d820ef73", "index": 3291, "guid": "4840f542-782f-44bd-8010-d97f895a34ff", "isActive": false, "balance": "$1,887.35", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Stephens Dawson", "gender": "male", "company": "VENDBLEND", "email": "stephensdawson@vendblend.com", "phone": "+1 (917) 583-2389", "address": "289 Chauncey Street, Innsbrook, Indiana, 3209", "about": "Consectetur mollit laboris labore officia elit adipisicing officia. Enim veniam nostrud ipsum Lorem. Eu cupidatat non velit eiusmod cillum cillum non. Commodo exercitation Lorem do incididunt irure.\r\n", "registered": "2014-01-13T01:06:08-13:00", "latitude": 7.694734, "longitude": -0.6302, "tags": [ "laboris", "nisi", "id", "dolor", "et", "ullamco", "tempor" ], "friends": [ { "id": 0, "name": "Phyllis Glover" }, { "id": 1, "name": "Higgins Mcknight" }, { "id": 2, "name": "Clara Harris" } ], "greeting": "Hello, Stephens Dawson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea279398999861d0e4f3", "index": 3292, "guid": "e4d20a8e-ab4c-4536-a434-dcad3a39f2f6", "isActive": true, "balance": "$1,641.92", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Mia Price", "gender": "female", "company": "PORTICA", "email": "miaprice@portica.com", "phone": "+1 (951) 581-2337", "address": "183 Malta Street, Curtice, Illinois, 8179", "about": "Dolor ut irure excepteur tempor fugiat sunt consequat enim labore exercitation elit cillum consectetur. Consequat excepteur aliqua mollit aute consequat nulla commodo. Esse esse tempor in ex proident adipisicing proident ex esse mollit sunt. Elit consectetur reprehenderit magna eu magna laborum fugiat enim pariatur sint esse irure. Qui adipisicing officia esse et quis exercitation ex cillum non ipsum.\r\n", "registered": "2014-01-09T22:41:57-13:00", "latitude": -47.326927, "longitude": 114.036175, "tags": [ "mollit", "culpa", "sunt", "aute", "Lorem", "aute", "deserunt" ], "friends": [ { "id": 0, "name": "Mays Mckee" }, { "id": 1, "name": "Patricia Mcguire" }, { "id": 2, "name": "Phillips Gray" } ], "greeting": "Hello, Mia Price! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea277fa58c7d3c9abc8d", "index": 3293, "guid": "5e9c99b6-bd0c-4ef7-b473-5b76eb134d8f", "isActive": true, "balance": "$3,844.42", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Janet Sheppard", "gender": "female", "company": "RUGSTARS", "email": "janetsheppard@rugstars.com", "phone": "+1 (878) 554-2302", "address": "258 Boerum Place, Florence, South Carolina, 728", "about": "Exercitation dolore officia pariatur voluptate irure consequat aliqua. Aliqua fugiat proident minim est ipsum aliqua non mollit velit culpa adipisicing excepteur. Ad excepteur irure laboris adipisicing minim ullamco cillum sunt veniam excepteur amet. Mollit mollit magna elit consectetur. Consectetur nostrud aute eu dolor aliquip est cillum. Consectetur mollit fugiat excepteur minim ex exercitation. Adipisicing deserunt in magna esse mollit irure dolore id nostrud.\r\n", "registered": "2014-07-22T07:15:49-12:00", "latitude": -35.906049, "longitude": 53.326164, "tags": [ "cillum", "excepteur", "occaecat", "aute", "anim", "ad", "nulla" ], "friends": [ { "id": 0, "name": "Latoya Kaufman" }, { "id": 1, "name": "Bell Chavez" }, { "id": 2, "name": "Alice Nichols" } ], "greeting": "Hello, Janet Sheppard! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2711fdb35b0bf453ed", "index": 3294, "guid": "8fdc4ef9-9490-4aff-bad5-986e19d9429b", "isActive": true, "balance": "$3,385.02", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Thomas Mathews", "gender": "male", "company": "RECRITUBE", "email": "thomasmathews@recritube.com", "phone": "+1 (920) 486-2419", "address": "581 Cypress Court, Tecolotito, American Samoa, 4354", "about": "Adipisicing pariatur ullamco eiusmod sunt minim exercitation eiusmod nostrud cupidatat cillum. Excepteur ullamco commodo laboris nulla. Cupidatat proident nisi cupidatat aliqua nisi ut. Do irure consequat ullamco elit id. Proident in ea minim laborum dolor elit nisi laborum. Est nostrud velit dolor duis id esse.\r\n", "registered": "2014-07-11T11:00:56-12:00", "latitude": 22.106862, "longitude": 63.119918, "tags": [ "esse", "culpa", "ad", "ea", "do", "tempor", "anim" ], "friends": [ { "id": 0, "name": "Hillary Young" }, { "id": 1, "name": "Cantu Santana" }, { "id": 2, "name": "Janette Mcneil" } ], "greeting": "Hello, Thomas Mathews! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27055511f9b40d41cb", "index": 3295, "guid": "9ce2dc98-2d31-4b8e-8c95-cda231bbea8e", "isActive": false, "balance": "$1,502.02", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Neal Lang", "gender": "male", "company": "COSMOSIS", "email": "neallang@cosmosis.com", "phone": "+1 (828) 426-2773", "address": "620 Ebony Court, Martell, Delaware, 7752", "about": "Reprehenderit cillum et nostrud ad voluptate magna amet irure eiusmod sint amet magna deserunt. Ea non do ipsum aliquip cupidatat elit. Qui quis nisi culpa officia eu.\r\n", "registered": "2014-04-02T07:47:27-13:00", "latitude": 72.379825, "longitude": -121.682523, "tags": [ "dolor", "sit", "occaecat", "nostrud", "consequat", "cillum", "exercitation" ], "friends": [ { "id": 0, "name": "Muriel Obrien" }, { "id": 1, "name": "Justine Todd" }, { "id": 2, "name": "Leonor Holcomb" } ], "greeting": "Hello, Neal Lang! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2705b34ba751b80baf", "index": 3296, "guid": "dfef80c8-4fc8-4c47-a881-4e1fc78b3dd1", "isActive": false, "balance": "$2,168.65", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Thompson Bolton", "gender": "male", "company": "ULTRIMAX", "email": "thompsonbolton@ultrimax.com", "phone": "+1 (923) 548-3454", "address": "774 Sumner Place, Hebron, Pennsylvania, 1063", "about": "Cillum nulla non dolor non aute dolor ipsum aute velit occaecat. Velit minim consectetur sunt non voluptate eu. Officia labore dolore irure ad sint pariatur voluptate enim cupidatat incididunt magna. Incididunt pariatur enim elit laborum non laborum. Deserunt dolor sunt dolor mollit nulla ipsum tempor cupidatat velit ea aliqua officia est nostrud.\r\n", "registered": "2014-04-20T18:43:00-12:00", "latitude": 86.833424, "longitude": 47.280546, "tags": [ "laborum", "id", "ex", "amet", "ex", "nisi", "aliqua" ], "friends": [ { "id": 0, "name": "Romero Wise" }, { "id": 1, "name": "Banks Humphrey" }, { "id": 2, "name": "Cassandra Mclean" } ], "greeting": "Hello, Thompson Bolton! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27287eaa21340f6aa8", "index": 3297, "guid": "c27d60ac-9017-4056-9ac7-149bb300447f", "isActive": true, "balance": "$3,108.53", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Sellers Calhoun", "gender": "male", "company": "EXTREMO", "email": "sellerscalhoun@extremo.com", "phone": "+1 (850) 440-2248", "address": "713 Madison Place, Machias, Georgia, 5140", "about": "Est cillum culpa nisi ad proident eu velit. Est nisi Lorem aliqua nulla eiusmod reprehenderit incididunt magna dolore deserunt nulla. Lorem in commodo consectetur labore. Ipsum fugiat non nostrud ut eu irure amet id enim reprehenderit ea.\r\n", "registered": "2014-08-07T14:55:37-12:00", "latitude": 40.622699, "longitude": 12.328553, "tags": [ "est", "occaecat", "aliqua", "enim", "anim", "non", "incididunt" ], "friends": [ { "id": 0, "name": "Concetta Carroll" }, { "id": 1, "name": "Pate Little" }, { "id": 2, "name": "Stevenson Adkins" } ], "greeting": "Hello, Sellers Calhoun! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea273415476bd2e11a35", "index": 3298, "guid": "d9fb9ed1-cd66-4c63-a4f7-a770157f8076", "isActive": false, "balance": "$2,224.44", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Angeline Alvarado", "gender": "female", "company": "ASIMILINE", "email": "angelinealvarado@asimiline.com", "phone": "+1 (933) 487-3059", "address": "318 Story Street, Imperial, North Dakota, 2054", "about": "Ex voluptate tempor duis aute consectetur eu laborum consectetur aute proident occaecat. Veniam adipisicing do ullamco minim ex dolore ea enim do mollit cupidatat exercitation labore. Quis dolor sit sint consequat proident enim elit ex magna esse voluptate magna. Laboris non ipsum pariatur eiusmod et in Lorem. Ea eiusmod laborum mollit mollit cillum officia incididunt.\r\n", "registered": "2014-07-04T08:51:03-12:00", "latitude": -88.714156, "longitude": 65.916511, "tags": [ "aute", "amet", "esse", "minim", "non", "cillum", "sunt" ], "friends": [ { "id": 0, "name": "Selma Wiggins" }, { "id": 1, "name": "Odonnell Oneal" }, { "id": 2, "name": "Sharon Lopez" } ], "greeting": "Hello, Angeline Alvarado! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2789c1e05fedaa66b6", "index": 3299, "guid": "fb7932a3-f0af-401e-866a-3f5b3a6412a7", "isActive": true, "balance": "$3,745.83", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Mosley Osborn", "gender": "male", "company": "QABOOS", "email": "mosleyosborn@qaboos.com", "phone": "+1 (845) 474-2211", "address": "149 Seaview Court, Dunbar, Louisiana, 6727", "about": "Ut voluptate nulla aliquip dolor nostrud ea qui amet ad aliqua velit consequat ut aliqua. Eu exercitation reprehenderit ut aliquip ullamco excepteur laboris exercitation magna pariatur. Laborum laborum voluptate esse elit deserunt.\r\n", "registered": "2014-03-29T11:49:24-13:00", "latitude": -25.159599, "longitude": -76.857116, "tags": [ "ea", "pariatur", "ea", "nostrud", "exercitation", "id", "consectetur" ], "friends": [ { "id": 0, "name": "Yesenia Duran" }, { "id": 1, "name": "Cox Russo" }, { "id": 2, "name": "Pamela Moran" } ], "greeting": "Hello, Mosley Osborn! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea279393b8783028d42d", "index": 3300, "guid": "f222c4bb-e2d6-4ef9-ba24-2c3d065d0ebe", "isActive": true, "balance": "$2,230.27", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Sheila Rios", "gender": "female", "company": "KIDGREASE", "email": "sheilarios@kidgrease.com", "phone": "+1 (972) 533-3552", "address": "899 Bulwer Place, Wolcott, Northern Mariana Islands, 9953", "about": "Anim dolore cillum Lorem id minim non in ut duis ad labore. Commodo amet sint occaecat consequat. Qui ut aliquip in veniam nulla in excepteur tempor tempor velit in pariatur commodo.\r\n", "registered": "2014-08-23T18:26:02-12:00", "latitude": 82.412462, "longitude": 128.198286, "tags": [ "nisi", "cupidatat", "ea", "eu", "dolore", "aute", "nisi" ], "friends": [ { "id": 0, "name": "Fields Rivas" }, { "id": 1, "name": "Mckinney Leblanc" }, { "id": 2, "name": "Spence Navarro" } ], "greeting": "Hello, Sheila Rios! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27524e9d1cb5609b45", "index": 3301, "guid": "16fa60c5-36a1-4b01-b387-ae213c1d37b4", "isActive": false, "balance": "$3,162.02", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Hooper Pratt", "gender": "male", "company": "DIGITALUS", "email": "hooperpratt@digitalus.com", "phone": "+1 (806) 580-3683", "address": "620 Seigel Street, Hemlock, Colorado, 4709", "about": "Duis est amet tempor quis aliqua Lorem nisi do amet laborum fugiat aute dolor. Do cupidatat fugiat laborum aute. Duis exercitation officia irure adipisicing cupidatat dolor reprehenderit laborum dolore fugiat est ullamco. Commodo dolor aute ad consequat qui proident exercitation. Nostrud amet consequat proident irure cillum. Proident ipsum deserunt officia nostrud mollit anim dolor proident minim laborum velit. Tempor minim excepteur commodo pariatur excepteur exercitation commodo elit.\r\n", "registered": "2014-01-16T09:25:11-13:00", "latitude": 1.575042, "longitude": -78.399528, "tags": [ "voluptate", "aliqua", "cupidatat", "magna", "nulla", "magna", "nulla" ], "friends": [ { "id": 0, "name": "Jacobson Mercer" }, { "id": 1, "name": "Parker Chan" }, { "id": 2, "name": "Adela Carter" } ], "greeting": "Hello, Hooper Pratt! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2722083447f5f4259b", "index": 3302, "guid": "0fc846ca-e436-4d4d-a3d4-804e3457f447", "isActive": true, "balance": "$3,658.99", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Juarez Cantu", "gender": "male", "company": "SKINSERVE", "email": "juarezcantu@skinserve.com", "phone": "+1 (913) 488-3494", "address": "638 Stuart Street, Caberfae, Idaho, 8449", "about": "Minim ea officia velit velit culpa cillum ipsum aliquip. Veniam id sit nisi deserunt veniam fugiat officia aliquip anim excepteur velit tempor laborum. Enim et consequat do exercitation do. Qui amet ea ut fugiat eu aliqua laboris cupidatat ipsum nulla enim. Quis ut minim consectetur cupidatat est dolore in occaecat do mollit consequat. Enim quis dolore minim pariatur adipisicing officia deserunt occaecat deserunt. Lorem fugiat cillum magna nisi duis nisi officia nisi exercitation magna exercitation ea cillum esse.\r\n", "registered": "2014-03-07T19:24:48-13:00", "latitude": 84.392134, "longitude": 75.870119, "tags": [ "laborum", "aute", "aute", "sit", "laboris", "eu", "amet" ], "friends": [ { "id": 0, "name": "Quinn Alvarez" }, { "id": 1, "name": "Kristina Benjamin" }, { "id": 2, "name": "Martha Strickland" } ], "greeting": "Hello, Juarez Cantu! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea279b261d22eca84b36", "index": 3303, "guid": "cfcc9bcc-4c0b-4ee0-a835-fdb5b081e48a", "isActive": true, "balance": "$3,441.65", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Aurelia Schroeder", "gender": "female", "company": "ECLIPSENT", "email": "aureliaschroeder@eclipsent.com", "phone": "+1 (884) 497-2339", "address": "188 Winthrop Street, Brady, Marshall Islands, 4852", "about": "Pariatur laborum cupidatat Lorem ea qui incididunt. Dolore ipsum irure do velit nulla id eiusmod eiusmod cupidatat nisi. Culpa magna esse aute eu tempor et officia dolore velit cillum exercitation veniam eu. Ipsum officia consectetur qui cupidatat Lorem irure voluptate. Incididunt aliquip elit elit ipsum consectetur incididunt aute aliquip reprehenderit reprehenderit velit laboris. Aliqua culpa excepteur enim consectetur cillum laborum do occaecat laborum ea do labore amet.\r\n", "registered": "2014-07-12T04:16:41-12:00", "latitude": 71.592396, "longitude": -91.646597, "tags": [ "reprehenderit", "mollit", "exercitation", "nostrud", "aliqua", "sint", "est" ], "friends": [ { "id": 0, "name": "May Barker" }, { "id": 1, "name": "Nolan Schultz" }, { "id": 2, "name": "Carmen Torres" } ], "greeting": "Hello, Aurelia Schroeder! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea274c165989b4d99bd3", "index": 3304, "guid": "b88b8375-bbff-43b9-8652-02e967cf11f9", "isActive": false, "balance": "$3,148.97", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Gertrude Boyd", "gender": "female", "company": "MELBACOR", "email": "gertrudeboyd@melbacor.com", "phone": "+1 (809) 411-3873", "address": "519 Troutman Street, Fresno, New York, 7557", "about": "Magna eu amet est consequat exercitation tempor cillum excepteur. Sint consequat officia voluptate eu nulla sunt excepteur sint do mollit tempor irure nostrud pariatur. Cupidatat voluptate duis incididunt duis duis enim consectetur eu et velit duis id amet officia. In reprehenderit do aliqua nulla eu magna esse ullamco dolore. Qui in qui officia Lorem eiusmod eiusmod occaecat labore.\r\n", "registered": "2014-04-13T17:41:47-12:00", "latitude": 22.274515, "longitude": 32.571313, "tags": [ "qui", "magna", "aliquip", "incididunt", "occaecat", "sunt", "consectetur" ], "friends": [ { "id": 0, "name": "Patti Franco" }, { "id": 1, "name": "Holloway Houston" }, { "id": 2, "name": "Debbie Ratliff" } ], "greeting": "Hello, Gertrude Boyd! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2784bff515f3b25b08", "index": 3305, "guid": "6606934e-15cc-4e9f-89a5-b6368f52ee32", "isActive": false, "balance": "$1,137.28", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Jewel Benton", "gender": "female", "company": "BLUEGRAIN", "email": "jewelbenton@bluegrain.com", "phone": "+1 (864) 570-2744", "address": "654 Taylor Street, Cressey, Guam, 498", "about": "Duis nulla nisi ipsum et est incididunt occaecat tempor officia id excepteur veniam ullamco. Veniam et eiusmod eiusmod occaecat eiusmod proident et adipisicing. Laboris dolore nisi veniam dolor elit cupidatat ut. Labore elit cillum velit ut adipisicing aute Lorem non reprehenderit excepteur. Labore id eiusmod elit exercitation occaecat reprehenderit nulla id deserunt deserunt in in pariatur.\r\n", "registered": "2014-06-02T11:38:59-12:00", "latitude": -66.378243, "longitude": -163.72835, "tags": [ "tempor", "esse", "quis", "non", "fugiat", "et", "do" ], "friends": [ { "id": 0, "name": "Gloria Roman" }, { "id": 1, "name": "Barber Schneider" }, { "id": 2, "name": "Howard Brady" } ], "greeting": "Hello, Jewel Benton! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27613f00397c8ff610", "index": 3306, "guid": "023e2ede-a060-44ab-9fa6-40b72c22ae29", "isActive": false, "balance": "$2,255.66", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Bryant Shannon", "gender": "male", "company": "COMFIRM", "email": "bryantshannon@comfirm.com", "phone": "+1 (965) 442-3234", "address": "769 Vandervoort Avenue, Malott, Virgin Islands, 852", "about": "Qui tempor ipsum qui laborum labore aliquip cupidatat dolore et magna. Fugiat dolor amet pariatur sit laboris occaecat ex Lorem esse minim magna sint. Culpa sint eiusmod cillum irure fugiat mollit et Lorem minim excepteur. Ex aliqua pariatur duis velit ex sunt qui deserunt tempor aliquip. Ipsum ex velit esse incididunt anim voluptate nostrud ut et dolor. Pariatur magna dolore cillum velit sit ad non anim ad exercitation esse ullamco et.\r\n", "registered": "2014-04-26T08:24:16-12:00", "latitude": 89.30696, "longitude": 28.316214, "tags": [ "quis", "commodo", "pariatur", "dolore", "labore", "anim", "duis" ], "friends": [ { "id": 0, "name": "Ida Coleman" }, { "id": 1, "name": "Alyssa Ochoa" }, { "id": 2, "name": "Ball Mcclain" } ], "greeting": "Hello, Bryant Shannon! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27468e4bb39d7edc0e", "index": 3307, "guid": "32ad85a2-6a1b-4f8d-8e3a-861b7c600dd0", "isActive": false, "balance": "$3,361.15", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Brady Lowe", "gender": "male", "company": "QUALITERN", "email": "bradylowe@qualitern.com", "phone": "+1 (836) 423-2568", "address": "966 Williams Place, Callaghan, Massachusetts, 5128", "about": "Nisi voluptate nulla reprehenderit nisi minim dolore deserunt commodo sit sint qui sint. Dolor exercitation dolor nisi officia enim cillum magna in est esse deserunt. Dolor commodo ipsum elit eu et. Excepteur occaecat nulla amet exercitation elit exercitation incididunt consequat tempor. Lorem dolore id ea irure pariatur fugiat nostrud ea eu proident duis. Laboris et eu voluptate nostrud occaecat nulla qui pariatur excepteur reprehenderit.\r\n", "registered": "2014-05-30T15:17:50-12:00", "latitude": -15.544385, "longitude": 5.065583, "tags": [ "nisi", "duis", "duis", "officia", "aliquip", "do", "culpa" ], "friends": [ { "id": 0, "name": "Tanya Hardin" }, { "id": 1, "name": "Lindsay Watkins" }, { "id": 2, "name": "Sawyer Good" } ], "greeting": "Hello, Brady Lowe! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea278aeafe3db08a0253", "index": 3308, "guid": "fb3e437b-73c1-44b1-8c59-9baf0a613c2e", "isActive": false, "balance": "$2,559.08", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Mack Cohen", "gender": "male", "company": "DREAMIA", "email": "mackcohen@dreamia.com", "phone": "+1 (959) 596-2966", "address": "896 Hill Street, Austinburg, Utah, 7198", "about": "Culpa sint sint aliquip ex culpa eiusmod velit aliqua ut. Anim elit aliqua id commodo fugiat voluptate ad. Aute pariatur incididunt ad anim amet sint. Dolore amet commodo amet dolor. Nostrud eiusmod laboris adipisicing ad velit nisi dolor.\r\n", "registered": "2014-02-04T20:59:38-13:00", "latitude": 2.062045, "longitude": 55.614787, "tags": [ "exercitation", "excepteur", "nulla", "id", "dolor", "cupidatat", "veniam" ], "friends": [ { "id": 0, "name": "Lester Gamble" }, { "id": 1, "name": "Terrell Haynes" }, { "id": 2, "name": "Brewer Gibson" } ], "greeting": "Hello, Mack Cohen! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea279a1c1b848f3e30ab", "index": 3309, "guid": "e6ea923f-1ae1-4ebb-baf4-90a4ad63ee8b", "isActive": true, "balance": "$1,701.01", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Dudley Roth", "gender": "male", "company": "INTERLOO", "email": "dudleyroth@interloo.com", "phone": "+1 (999) 465-2994", "address": "384 Box Street, Bentonville, Montana, 6511", "about": "Sint quis ipsum adipisicing anim. Do anim aute sunt esse velit labore commodo est ullamco. In ipsum enim consequat eiusmod culpa anim proident in.\r\n", "registered": "2014-03-25T07:59:41-13:00", "latitude": -24.424932, "longitude": -177.505897, "tags": [ "nisi", "magna", "minim", "aliqua", "nulla", "magna", "nostrud" ], "friends": [ { "id": 0, "name": "Nichols Camacho" }, { "id": 1, "name": "Pugh Branch" }, { "id": 2, "name": "Holman Fuller" } ], "greeting": "Hello, Dudley Roth! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea279d94bfcf302a700f", "index": 3310, "guid": "deaeae2a-bd12-40e1-b400-5b5045cf427f", "isActive": true, "balance": "$1,704.85", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Fran Holden", "gender": "female", "company": "MARKETOID", "email": "franholden@marketoid.com", "phone": "+1 (914) 558-3526", "address": "368 Berry Street, Roulette, Wisconsin, 3037", "about": "Laboris eiusmod esse cillum proident deserunt eu adipisicing nisi nostrud. Sunt reprehenderit aute id dolor. Mollit duis reprehenderit aute in officia nisi. Ipsum ea minim et laborum ad minim fugiat culpa nostrud ad anim sunt reprehenderit anim. Cupidatat laborum officia et irure adipisicing nostrud exercitation. Laborum aliquip enim adipisicing deserunt id magna irure amet fugiat cillum cupidatat pariatur labore. Lorem fugiat occaecat deserunt et.\r\n", "registered": "2014-08-12T14:06:11-12:00", "latitude": -34.103241, "longitude": 28.409514, "tags": [ "est", "consectetur", "ullamco", "ad", "voluptate", "Lorem", "minim" ], "friends": [ { "id": 0, "name": "Mcneil Butler" }, { "id": 1, "name": "Hebert Horton" }, { "id": 2, "name": "Johnson Molina" } ], "greeting": "Hello, Fran Holden! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2717a6cb5f13e3cc8c", "index": 3311, "guid": "a960c447-7f1f-42f9-bbf9-fdfc52ebad15", "isActive": false, "balance": "$3,354.45", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Lora Le", "gender": "female", "company": "TALAE", "email": "lorale@talae.com", "phone": "+1 (907) 476-3606", "address": "377 Clinton Avenue, Alafaya, Maine, 5852", "about": "Labore velit veniam non quis velit eiusmod do proident ipsum nostrud qui irure. Esse magna eiusmod velit laborum do laboris excepteur. Pariatur Lorem laboris ea culpa mollit ut. Et nisi fugiat ipsum aliqua reprehenderit Lorem. Aute ea ad anim tempor. Pariatur dolore eiusmod veniam proident labore sint adipisicing nostrud aliqua ea in.\r\n", "registered": "2014-06-27T00:29:40-12:00", "latitude": -0.989864, "longitude": -169.05302, "tags": [ "irure", "et", "ullamco", "eu", "elit", "minim", "officia" ], "friends": [ { "id": 0, "name": "Gwendolyn Summers" }, { "id": 1, "name": "Florine Gardner" }, { "id": 2, "name": "Sparks Wallace" } ], "greeting": "Hello, Lora Le! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27502c9edef827ca44", "index": 3312, "guid": "c4f42dcb-7833-4fbe-a401-7f44a0271b6f", "isActive": true, "balance": "$1,571.15", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Beard Johnson", "gender": "male", "company": "PLASTO", "email": "beardjohnson@plasto.com", "phone": "+1 (983) 418-2016", "address": "631 McKibbin Street, Rehrersburg, Virginia, 6815", "about": "Qui aliqua eu anim in labore non incididunt. Ullamco voluptate sint ullamco veniam exercitation. Irure veniam dolor ut magna ea tempor reprehenderit aliqua esse commodo ipsum minim mollit occaecat.\r\n", "registered": "2014-03-22T20:58:05-13:00", "latitude": -56.336336, "longitude": -53.993201, "tags": [ "nostrud", "veniam", "do", "nisi", "nulla", "fugiat", "nostrud" ], "friends": [ { "id": 0, "name": "Mcintosh Conner" }, { "id": 1, "name": "Millicent Finch" }, { "id": 2, "name": "Delgado Haney" } ], "greeting": "Hello, Beard Johnson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea273e55bc2250ce8b95", "index": 3313, "guid": "755d7d86-9197-4681-8f89-db23221d5d8d", "isActive": true, "balance": "$2,855.34", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Judith Martin", "gender": "female", "company": "ORBALIX", "email": "judithmartin@orbalix.com", "phone": "+1 (897) 593-2210", "address": "695 Roebling Street, Sandston, Kentucky, 2044", "about": "Fugiat laboris sint veniam sunt sint qui labore deserunt. Commodo amet proident elit officia reprehenderit sint anim minim eiusmod nostrud deserunt amet dolore ex. Nostrud fugiat ipsum officia minim officia non est aute exercitation.\r\n", "registered": "2014-01-29T09:46:38-13:00", "latitude": 62.529042, "longitude": -95.891051, "tags": [ "eiusmod", "commodo", "adipisicing", "duis", "in", "adipisicing", "amet" ], "friends": [ { "id": 0, "name": "Bonnie Crosby" }, { "id": 1, "name": "Humphrey Lloyd" }, { "id": 2, "name": "Byers Lester" } ], "greeting": "Hello, Judith Martin! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea272005de2f0adfe977", "index": 3314, "guid": "9f000c92-7813-484b-a1f3-d99b8679342b", "isActive": true, "balance": "$1,256.30", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Ryan Whitfield", "gender": "male", "company": "STRALOY", "email": "ryanwhitfield@straloy.com", "phone": "+1 (918) 468-2969", "address": "777 Vandervoort Place, Leland, Connecticut, 3878", "about": "Sint cillum reprehenderit sit qui sit labore sit duis. Aliquip consectetur est eiusmod deserunt sunt nostrud et adipisicing ullamco. Irure ullamco cillum consectetur ullamco duis enim aliqua id consectetur elit.\r\n", "registered": "2014-07-12T00:08:21-12:00", "latitude": -44.072676, "longitude": -30.534644, "tags": [ "laboris", "commodo", "sint", "sint", "cupidatat", "consectetur", "commodo" ], "friends": [ { "id": 0, "name": "Simmons Evans" }, { "id": 1, "name": "Brenda Blackburn" }, { "id": 2, "name": "Figueroa Walter" } ], "greeting": "Hello, Ryan Whitfield! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2742e90003bb3e7f95", "index": 3315, "guid": "d7ec8f9f-ab7d-43c5-8b68-28f799c4eb13", "isActive": true, "balance": "$3,536.79", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Baldwin Underwood", "gender": "male", "company": "RADIANTIX", "email": "baldwinunderwood@radiantix.com", "phone": "+1 (994) 429-2158", "address": "386 Kay Court, Wakulla, Mississippi, 9133", "about": "Tempor proident nisi sunt aute voluptate sunt fugiat officia exercitation laboris quis Lorem. Ipsum id ad ex commodo sit nulla tempor ea laborum et. Ex cupidatat consectetur mollit consequat enim aute excepteur mollit qui. Deserunt cillum sint fugiat anim aliqua non incididunt duis officia. Incididunt sint eiusmod qui pariatur amet nulla esse. Amet nostrud irure laborum ad tempor esse.\r\n", "registered": "2014-05-21T18:33:40-12:00", "latitude": -1.457393, "longitude": 33.232531, "tags": [ "dolor", "occaecat", "adipisicing", "velit", "et", "proident", "aliquip" ], "friends": [ { "id": 0, "name": "Freda William" }, { "id": 1, "name": "Lenore Mccarty" }, { "id": 2, "name": "Marci Mullins" } ], "greeting": "Hello, Baldwin Underwood! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27eef761b0d1b0bff2", "index": 3316, "guid": "e5777ad2-56f5-44fc-a684-84291d4454d0", "isActive": false, "balance": "$3,397.75", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Combs Sweet", "gender": "male", "company": "UTARIAN", "email": "combssweet@utarian.com", "phone": "+1 (915) 591-2799", "address": "151 Jefferson Street, Hailesboro, Washington, 6375", "about": "Est velit laboris pariatur deserunt commodo irure ipsum ad. Et officia est proident laborum Lorem aute do minim. Labore nisi est esse ipsum dolore ad officia adipisicing anim aliqua.\r\n", "registered": "2014-04-30T11:28:23-12:00", "latitude": -87.063903, "longitude": -112.273171, "tags": [ "Lorem", "cupidatat", "aute", "adipisicing", "et", "occaecat", "ex" ], "friends": [ { "id": 0, "name": "Willie Watts" }, { "id": 1, "name": "Bailey Moreno" }, { "id": 2, "name": "Moreno Mcmillan" } ], "greeting": "Hello, Combs Sweet! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27802a6903c5693bb1", "index": 3317, "guid": "d3c5bce6-ba94-4ea7-ad5e-6af746a8d346", "isActive": true, "balance": "$2,743.88", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "West Greer", "gender": "male", "company": "SULTRAX", "email": "westgreer@sultrax.com", "phone": "+1 (892) 502-2480", "address": "803 Lois Avenue, Beaverdale, Tennessee, 2499", "about": "Non non ipsum quis officia. Aliquip esse do cillum nisi eu. Ipsum est tempor nostrud adipisicing consectetur adipisicing cillum anim cillum pariatur sunt. Proident cillum ullamco ea consectetur laborum incididunt. Minim irure ullamco occaecat labore. Consequat in irure eiusmod aute fugiat.\r\n", "registered": "2014-04-08T21:42:22-12:00", "latitude": -46.937081, "longitude": 1.134619, "tags": [ "ad", "nostrud", "irure", "nisi", "duis", "nisi", "et" ], "friends": [ { "id": 0, "name": "Rivers Barron" }, { "id": 1, "name": "Joni Flynn" }, { "id": 2, "name": "Huffman Rasmussen" } ], "greeting": "Hello, West Greer! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27fe07f99d948e3d69", "index": 3318, "guid": "d01eb0cf-81ab-4f66-a272-b978b2195f77", "isActive": true, "balance": "$1,282.18", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Earlene Carson", "gender": "female", "company": "NAVIR", "email": "earlenecarson@navir.com", "phone": "+1 (919) 455-2334", "address": "883 Riverdale Avenue, Glidden, Alabama, 429", "about": "Pariatur officia laborum incididunt veniam velit pariatur nisi velit amet ex labore. In cillum reprehenderit mollit fugiat officia ea. Ullamco est et nisi pariatur mollit et ipsum exercitation labore velit amet. Anim nisi reprehenderit aliquip ut laborum adipisicing nulla culpa labore dolore nulla veniam incididunt.\r\n", "registered": "2014-02-10T20:38:24-13:00", "latitude": -65.86438, "longitude": -155.491765, "tags": [ "sint", "eiusmod", "minim", "dolore", "consequat", "officia", "ex" ], "friends": [ { "id": 0, "name": "Ladonna Michael" }, { "id": 1, "name": "Orr Bond" }, { "id": 2, "name": "Adkins Banks" } ], "greeting": "Hello, Earlene Carson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2753ce0caa13922fa6", "index": 3319, "guid": "72c5d08b-ee54-4336-bf71-827211195dae", "isActive": true, "balance": "$2,154.18", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Noemi Conley", "gender": "female", "company": "ZILENCIO", "email": "noemiconley@zilencio.com", "phone": "+1 (862) 478-2304", "address": "378 Cameron Court, Castleton, Ohio, 1085", "about": "Culpa cupidatat labore commodo adipisicing fugiat occaecat esse id commodo deserunt in anim. Anim veniam labore irure consectetur. Velit fugiat dolore non reprehenderit. Velit commodo tempor nostrud aute consectetur id irure Lorem magna dolore occaecat laborum incididunt reprehenderit. Quis sunt exercitation reprehenderit excepteur quis et exercitation velit laborum veniam sint. Et ea fugiat elit est. Labore irure est cupidatat fugiat.\r\n", "registered": "2014-07-05T05:53:29-12:00", "latitude": -50.85524, "longitude": 177.118923, "tags": [ "nisi", "cupidatat", "nostrud", "magna", "elit", "anim", "non" ], "friends": [ { "id": 0, "name": "Daugherty Riddle" }, { "id": 1, "name": "Curry Rosa" }, { "id": 2, "name": "Rhoda Palmer" } ], "greeting": "Hello, Noemi Conley! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea276a23d188a0d811c0", "index": 3320, "guid": "e086f09c-5120-4dea-a81a-7880e8a00253", "isActive": false, "balance": "$3,639.22", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Castro Mckenzie", "gender": "male", "company": "QUADEEBO", "email": "castromckenzie@quadeebo.com", "phone": "+1 (997) 432-3093", "address": "209 Caton Place, Roeville, Hawaii, 4033", "about": "Labore proident minim pariatur commodo sit adipisicing amet aliquip cillum amet non in. Anim velit reprehenderit dolor laborum deserunt ad irure amet nostrud Lorem. Commodo sit est voluptate est consectetur incididunt est nisi ex irure amet amet proident.\r\n", "registered": "2014-06-18T07:55:40-12:00", "latitude": -80.248306, "longitude": -179.500661, "tags": [ "aute", "est", "incididunt", "sunt", "non", "exercitation", "nostrud" ], "friends": [ { "id": 0, "name": "Myrna Koch" }, { "id": 1, "name": "Darcy Goodman" }, { "id": 2, "name": "Dee Ray" } ], "greeting": "Hello, Castro Mckenzie! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea270a9f67df635613ac", "index": 3321, "guid": "44704502-3a26-4102-bb3f-b3edb7f0d778", "isActive": true, "balance": "$1,286.05", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Pearlie Bradshaw", "gender": "female", "company": "MANUFACT", "email": "pearliebradshaw@manufact.com", "phone": "+1 (948) 448-3302", "address": "576 Matthews Place, Suitland, New Mexico, 517", "about": "Excepteur consectetur aliquip enim culpa occaecat eu fugiat. Nulla irure nulla labore labore culpa ex sunt et aliquip amet. Incididunt deserunt laboris commodo aute fugiat sint ipsum laborum veniam nostrud in. Incididunt labore fugiat in dolore non non irure et nulla anim voluptate magna eu laboris. Nostrud nostrud culpa est cupidatat consequat aliqua consectetur consectetur excepteur culpa elit duis. In magna nisi ex eiusmod occaecat tempor pariatur nisi consequat reprehenderit ad deserunt. Et est esse esse occaecat dolor excepteur.\r\n", "registered": "2014-08-04T16:08:53-12:00", "latitude": 50.736566, "longitude": -122.194814, "tags": [ "duis", "cillum", "tempor", "ea", "esse", "minim", "et" ], "friends": [ { "id": 0, "name": "Teresa King" }, { "id": 1, "name": "Galloway Bender" }, { "id": 2, "name": "Cantrell Garza" } ], "greeting": "Hello, Pearlie Bradshaw! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27be6d8ecadfcf41b0", "index": 3322, "guid": "0569fc50-65b8-4912-8a4a-f7c43ade9f8d", "isActive": true, "balance": "$1,361.03", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Gray Nolan", "gender": "male", "company": "ZANYMAX", "email": "graynolan@zanymax.com", "phone": "+1 (950) 424-2319", "address": "725 Beaumont Street, Chilton, Maryland, 4390", "about": "Occaecat magna ea voluptate consectetur. Amet velit commodo elit dolore anim sint. Adipisicing eu deserunt duis Lorem velit fugiat Lorem voluptate voluptate. Non in laboris est dolor ipsum consequat enim excepteur magna est incididunt. Occaecat laboris velit fugiat nisi occaecat nisi excepteur dolor labore mollit. Proident eiusmod aliqua aute commodo amet veniam nisi nisi exercitation adipisicing veniam officia nostrud eu. Magna aute dolor laborum veniam aliquip excepteur.\r\n", "registered": "2014-04-29T08:49:28-12:00", "latitude": 41.968472, "longitude": -161.019897, "tags": [ "ipsum", "minim", "non", "excepteur", "anim", "pariatur", "elit" ], "friends": [ { "id": 0, "name": "Hale Cote" }, { "id": 1, "name": "Louella Delacruz" }, { "id": 2, "name": "Elinor Sanders" } ], "greeting": "Hello, Gray Nolan! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27b9235f433a898ee8", "index": 3323, "guid": "33a456d9-7ef5-4b59-ad73-748b01498817", "isActive": false, "balance": "$2,580.96", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Conrad Ewing", "gender": "male", "company": "TOYLETRY", "email": "conradewing@toyletry.com", "phone": "+1 (918) 547-2112", "address": "244 Truxton Street, Genoa, Alaska, 4307", "about": "Laborum cupidatat proident commodo aute pariatur. Nulla duis dolore commodo fugiat aute elit. Fugiat proident deserunt culpa magna tempor laboris minim sunt mollit incididunt sunt velit. Aliqua magna reprehenderit voluptate ex amet anim laboris dolor amet reprehenderit excepteur incididunt. Pariatur culpa tempor veniam minim adipisicing ullamco anim exercitation. Ullamco id officia pariatur qui adipisicing sit reprehenderit aute sint excepteur consequat ea.\r\n", "registered": "2014-07-31T23:04:12-12:00", "latitude": 21.335329, "longitude": -54.956873, "tags": [ "aliqua", "ipsum", "nostrud", "magna", "minim", "deserunt", "nisi" ], "friends": [ { "id": 0, "name": "Savage Sexton" }, { "id": 1, "name": "Steele Salinas" }, { "id": 2, "name": "Marian Alexander" } ], "greeting": "Hello, Conrad Ewing! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27404317f9bb0a00fa", "index": 3324, "guid": "46746d3b-27b6-4c01-914b-9300d89142b1", "isActive": true, "balance": "$2,721.84", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Shaw Lane", "gender": "male", "company": "DECRATEX", "email": "shawlane@decratex.com", "phone": "+1 (928) 565-2139", "address": "803 Highland Place, Remington, Arizona, 1446", "about": "Veniam minim sunt eiusmod tempor deserunt excepteur mollit ea ut enim. Officia cupidatat commodo Lorem culpa proident nulla laboris nisi nulla ipsum labore cillum occaecat. Culpa officia eu quis exercitation non nisi laborum aliquip officia. Dolore qui nisi Lorem anim exercitation labore irure Lorem commodo quis. Velit dolor consectetur ad in amet. Cillum eu laboris amet laborum. Aute ex labore non ut ipsum occaecat.\r\n", "registered": "2014-06-24T21:39:14-12:00", "latitude": -87.458753, "longitude": -145.560319, "tags": [ "ut", "laboris", "minim", "quis", "veniam", "aute", "anim" ], "friends": [ { "id": 0, "name": "Savannah Kline" }, { "id": 1, "name": "Baird Lowery" }, { "id": 2, "name": "Shelton Dodson" } ], "greeting": "Hello, Shaw Lane! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea270597bc4c64b791fe", "index": 3325, "guid": "3de36aa7-c6ce-4740-aa86-74b66bf5dbe9", "isActive": true, "balance": "$1,376.52", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Lisa Russell", "gender": "female", "company": "XIIX", "email": "lisarussell@xiix.com", "phone": "+1 (838) 523-3177", "address": "804 Richardson Street, Hollins, Federated States Of Micronesia, 1631", "about": "Mollit commodo anim labore Lorem ea. Adipisicing aliqua irure cillum culpa elit enim aliquip proident sunt nostrud excepteur aliquip nisi. Dolore nulla tempor exercitation eiusmod et non labore culpa. Amet excepteur cillum proident ut deserunt sint in do ut minim deserunt minim ex reprehenderit. Nulla pariatur do do pariatur qui voluptate aliquip nulla laborum do.\r\n", "registered": "2014-08-31T13:25:28-12:00", "latitude": 69.573907, "longitude": 50.975869, "tags": [ "velit", "do", "tempor", "eiusmod", "sit", "eu", "labore" ], "friends": [ { "id": 0, "name": "Alberta Reese" }, { "id": 1, "name": "Massey Short" }, { "id": 2, "name": "Erica Cameron" } ], "greeting": "Hello, Lisa Russell! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27feac7a879fd9b06e", "index": 3326, "guid": "da1367c8-48c3-483f-8d65-9e4057c9d6a8", "isActive": false, "balance": "$1,397.79", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Laurel Lawrence", "gender": "female", "company": "COFINE", "email": "laurellawrence@cofine.com", "phone": "+1 (907) 440-3691", "address": "908 Louis Place, Bangor, Oklahoma, 6768", "about": "Sint anim ad laboris ipsum consectetur sint proident commodo. Sint Lorem dolore minim elit fugiat fugiat laboris id adipisicing irure. Mollit aliquip laboris est velit do. Do laborum nisi eiusmod est officia consequat sit officia. Do elit exercitation minim nostrud nulla occaecat elit in laborum adipisicing aliqua.\r\n", "registered": "2014-01-04T10:15:43-13:00", "latitude": 20.822799, "longitude": -83.801636, "tags": [ "ullamco", "nulla", "ad", "labore", "mollit", "ex", "sunt" ], "friends": [ { "id": 0, "name": "Hughes Small" }, { "id": 1, "name": "Oneal Wilkins" }, { "id": 2, "name": "Olive Frye" } ], "greeting": "Hello, Laurel Lawrence! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27c97610e9fedcf502", "index": 3327, "guid": "461ad76c-8d22-4745-8f37-e048b4a7c730", "isActive": false, "balance": "$3,599.39", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Torres Medina", "gender": "male", "company": "VIASIA", "email": "torresmedina@viasia.com", "phone": "+1 (916) 427-3909", "address": "151 Hooper Street, Kiskimere, Michigan, 3339", "about": "Elit mollit cupidatat incididunt ullamco amet elit culpa sunt cillum eu cillum tempor fugiat. Sit ut nostrud id eiusmod. Aliqua exercitation proident ullamco excepteur sit reprehenderit nisi sunt. Laborum consectetur enim voluptate sunt eiusmod reprehenderit sunt pariatur ex officia.\r\n", "registered": "2014-01-06T08:54:14-13:00", "latitude": -22.5821, "longitude": -174.266109, "tags": [ "tempor", "eiusmod", "consequat", "elit", "irure", "deserunt", "esse" ], "friends": [ { "id": 0, "name": "Jensen Terry" }, { "id": 1, "name": "Winifred Mccullough" }, { "id": 2, "name": "Deana Manning" } ], "greeting": "Hello, Torres Medina! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27f9994efcff49c719", "index": 3328, "guid": "e345ec9f-55e2-4a09-9b56-e435d77141aa", "isActive": false, "balance": "$1,466.87", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Joanne Langley", "gender": "female", "company": "AUTOMON", "email": "joannelangley@automon.com", "phone": "+1 (807) 418-3387", "address": "820 Garnet Street, Limestone, Kansas, 6713", "about": "Elit quis fugiat aliqua dolore minim incididunt nostrud. Excepteur sunt velit eiusmod anim consectetur veniam ullamco dolor eiusmod nulla anim consequat eiusmod. Aliquip adipisicing officia fugiat mollit nostrud. Commodo est esse laboris irure ipsum anim reprehenderit deserunt ullamco pariatur duis.\r\n", "registered": "2014-05-26T12:42:34-12:00", "latitude": 55.082908, "longitude": -12.553535, "tags": [ "elit", "ex", "dolor", "minim", "enim", "id", "minim" ], "friends": [ { "id": 0, "name": "Hutchinson Jackson" }, { "id": 1, "name": "Stevens Grant" }, { "id": 2, "name": "Vega Hatfield" } ], "greeting": "Hello, Joanne Langley! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27bebbac8528ec8b65", "index": 3329, "guid": "4dda7296-955d-4453-bb7f-1013f342aa8f", "isActive": true, "balance": "$1,312.95", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Kennedy Hodges", "gender": "male", "company": "RETRACK", "email": "kennedyhodges@retrack.com", "phone": "+1 (909) 539-2873", "address": "262 Douglass Street, Ypsilanti, South Dakota, 2694", "about": "Elit officia aliquip ipsum ullamco mollit sit et. Amet sit aliquip et ut reprehenderit. Duis nostrud laboris eiusmod cupidatat culpa.\r\n", "registered": "2014-08-29T12:01:36-12:00", "latitude": 1.543456, "longitude": -117.857386, "tags": [ "cupidatat", "reprehenderit", "nisi", "Lorem", "reprehenderit", "occaecat", "velit" ], "friends": [ { "id": 0, "name": "Sanchez Trevino" }, { "id": 1, "name": "Jeannette Thornton" }, { "id": 2, "name": "Duncan Kelley" } ], "greeting": "Hello, Kennedy Hodges! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27aaffcb3f2cd361c1", "index": 3330, "guid": "25519c9a-b93f-4b8f-be80-51693bbe03ce", "isActive": true, "balance": "$3,525.12", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "England Joseph", "gender": "male", "company": "NETERIA", "email": "englandjoseph@neteria.com", "phone": "+1 (869) 569-2417", "address": "219 Carroll Street, Fredericktown, West Virginia, 6655", "about": "Consectetur irure nostrud culpa occaecat id nulla culpa culpa. Adipisicing tempor sint ullamco mollit veniam excepteur cupidatat cupidatat mollit consequat deserunt laborum ipsum non. Ipsum tempor Lorem sint magna qui esse esse. Officia voluptate magna esse nostrud enim cupidatat. Do consectetur culpa est elit sint laborum ullamco reprehenderit ea eiusmod exercitation.\r\n", "registered": "2014-06-08T11:30:45-12:00", "latitude": -14.350206, "longitude": 112.221548, "tags": [ "non", "officia", "dolore", "aliqua", "laborum", "consequat", "fugiat" ], "friends": [ { "id": 0, "name": "Cobb Stephens" }, { "id": 1, "name": "Long Norman" }, { "id": 2, "name": "Alford Nash" } ], "greeting": "Hello, England Joseph! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27ac85dc0c384c5122", "index": 3331, "guid": "826b2229-9517-4eb6-a135-b59a8a4d53d0", "isActive": false, "balance": "$2,231.94", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Grant Gibbs", "gender": "male", "company": "LOTRON", "email": "grantgibbs@lotron.com", "phone": "+1 (995) 517-2954", "address": "336 Batchelder Street, Fedora, Texas, 5223", "about": "Ullamco est velit excepteur nisi est mollit cillum cupidatat cillum do incididunt tempor amet elit. Ex adipisicing nulla culpa voluptate consectetur elit cillum adipisicing sit. Velit culpa nostrud irure sint et sint culpa fugiat nisi et consequat. Cillum ad duis irure magna Lorem aliqua laboris.\r\n", "registered": "2014-05-29T19:15:38-12:00", "latitude": 72.651412, "longitude": 117.332683, "tags": [ "consectetur", "deserunt", "enim", "labore", "aliquip", "sit", "ad" ], "friends": [ { "id": 0, "name": "Ruthie Foreman" }, { "id": 1, "name": "Brigitte Leon" }, { "id": 2, "name": "Griffin Holt" } ], "greeting": "Hello, Grant Gibbs! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea275f9e8909c1ae8eed", "index": 3332, "guid": "9825c39c-1235-4d0c-9a47-a106b77aaacc", "isActive": false, "balance": "$1,866.52", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Jennie Griffin", "gender": "female", "company": "TETRATREX", "email": "jenniegriffin@tetratrex.com", "phone": "+1 (887) 482-2383", "address": "124 Brightwater Avenue, Shaft, Oregon, 9848", "about": "Deserunt eu elit aliqua eu irure eiusmod officia ullamco eu sunt magna. Commodo ullamco labore pariatur qui velit minim est. Amet tempor eiusmod elit amet laborum ad eiusmod ad labore. Nulla non irure aliqua duis irure minim enim exercitation cupidatat aute irure ex veniam non.\r\n", "registered": "2014-04-04T12:04:31-13:00", "latitude": 38.138894, "longitude": -155.764839, "tags": [ "anim", "nostrud", "anim", "duis", "sit", "magna", "culpa" ], "friends": [ { "id": 0, "name": "Misty Sutton" }, { "id": 1, "name": "Kara Woodard" }, { "id": 2, "name": "Christina Larsen" } ], "greeting": "Hello, Jennie Griffin! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27c64ee4867ca2e5fd", "index": 3333, "guid": "ca7789cd-09a4-4b26-a166-f568711e7e00", "isActive": true, "balance": "$3,488.12", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Trisha Parks", "gender": "female", "company": "RODEOLOGY", "email": "trishaparks@rodeology.com", "phone": "+1 (874) 461-3135", "address": "192 Hoyt Street, Adelino, Nevada, 9038", "about": "Culpa aliquip tempor minim tempor est ut et laboris minim tempor exercitation. Aliqua consequat ad cupidatat aliqua. Cupidatat dolor dolor ipsum non.\r\n", "registered": "2014-04-12T06:31:28-12:00", "latitude": -89.561284, "longitude": -21.844737, "tags": [ "Lorem", "mollit", "ut", "sint", "deserunt", "sint", "voluptate" ], "friends": [ { "id": 0, "name": "Kelsey Benson" }, { "id": 1, "name": "Rosales Jefferson" }, { "id": 2, "name": "Mckenzie Ruiz" } ], "greeting": "Hello, Trisha Parks! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea272c6a86f4c4a593f0", "index": 3334, "guid": "6c4f9933-19d6-4a7e-8378-2d8f205df3a3", "isActive": false, "balance": "$2,824.92", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Dina Mclaughlin", "gender": "female", "company": "ZILODYNE", "email": "dinamclaughlin@zilodyne.com", "phone": "+1 (854) 576-2542", "address": "361 Lott Street, Richford, Minnesota, 8062", "about": "Est veniam sint sit est velit aute fugiat anim elit est ex ea. Non id anim velit culpa exercitation commodo reprehenderit. Aliquip consectetur do mollit reprehenderit sit non elit sint velit do do. Nulla occaecat officia labore laborum cupidatat. Labore voluptate dolore excepteur aute tempor esse labore mollit qui consectetur voluptate tempor. Cillum minim incididunt enim laboris sint quis ut sint.\r\n", "registered": "2014-07-08T11:22:00-12:00", "latitude": -41.470359, "longitude": 85.137414, "tags": [ "pariatur", "duis", "reprehenderit", "non", "mollit", "excepteur", "nostrud" ], "friends": [ { "id": 0, "name": "Olga Bernard" }, { "id": 1, "name": "Earnestine Bonner" }, { "id": 2, "name": "Hopper Fischer" } ], "greeting": "Hello, Dina Mclaughlin! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27299f25c4ca70b727", "index": 3335, "guid": "c6a9e1c7-fe9b-416a-846a-71e46548c63e", "isActive": true, "balance": "$3,673.18", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Marlene Whitney", "gender": "female", "company": "COMTENT", "email": "marlenewhitney@comtent.com", "phone": "+1 (855) 513-2203", "address": "151 Putnam Avenue, Sena, Missouri, 1463", "about": "Consequat ex aute proident quis ipsum commodo aliqua aute minim cillum cupidatat velit cupidatat. Nulla mollit sunt sint id irure esse sint sunt laborum cupidatat esse officia aliquip. Et anim nulla labore sunt exercitation consequat. Proident laboris nisi ut nulla nostrud in consectetur laboris quis velit aute sunt. Incididunt elit ea nulla labore aliqua magna deserunt sint cillum culpa voluptate magna ut. Consectetur nostrud quis ullamco enim consectetur eu aute ullamco aliqua.\r\n", "registered": "2014-04-25T14:53:33-12:00", "latitude": 37.598229, "longitude": -21.587639, "tags": [ "ullamco", "labore", "laborum", "occaecat", "ad", "qui", "excepteur" ], "friends": [ { "id": 0, "name": "Ernestine Conway" }, { "id": 1, "name": "Webster Patton" }, { "id": 2, "name": "Lynette Hahn" } ], "greeting": "Hello, Marlene Whitney! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27597266480c8af238", "index": 3336, "guid": "5a242f0b-9e90-4d53-97d2-4c3344a4a33b", "isActive": false, "balance": "$2,638.77", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Norton Mcpherson", "gender": "male", "company": "EARTHPURE", "email": "nortonmcpherson@earthpure.com", "phone": "+1 (953) 522-2478", "address": "214 Belvidere Street, Canoochee, Rhode Island, 1393", "about": "Anim minim incididunt sit est. Lorem nostrud dolore non eu occaecat quis non aute ut dolore esse. Do pariatur magna elit aute amet. Aute velit dolore amet et magna excepteur officia fugiat adipisicing ex non laboris deserunt.\r\n", "registered": "2014-09-07T10:32:18-12:00", "latitude": -82.290911, "longitude": 50.954713, "tags": [ "sit", "occaecat", "proident", "sunt", "eu", "labore", "aute" ], "friends": [ { "id": 0, "name": "Jackie Cabrera" }, { "id": 1, "name": "Sandra Sanchez" }, { "id": 2, "name": "Luisa Davidson" } ], "greeting": "Hello, Norton Mcpherson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea277d7f0a595ea24043", "index": 3337, "guid": "bbdf4b13-e0dc-4cc2-a297-b1820bd18b29", "isActive": true, "balance": "$1,568.83", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Miles Preston", "gender": "male", "company": "PIGZART", "email": "milespreston@pigzart.com", "phone": "+1 (902) 488-2224", "address": "219 Paerdegat Avenue, Maplewood, Florida, 4106", "about": "Aute cupidatat in commodo est incididunt eu ex ad enim dolor esse fugiat nisi consectetur. Cupidatat laborum aliquip Lorem tempor nisi pariatur ullamco. Aliqua pariatur ut ut laboris dolore officia. Incididunt laboris ut occaecat deserunt pariatur cillum. Voluptate nisi sint et duis incididunt Lorem. Do laboris magna adipisicing aliquip aute adipisicing ad ipsum sint officia commodo quis.\r\n", "registered": "2014-01-26T14:43:46-13:00", "latitude": 11.343621, "longitude": -155.017496, "tags": [ "veniam", "duis", "incididunt", "duis", "eu", "ad", "nisi" ], "friends": [ { "id": 0, "name": "Dillard Williams" }, { "id": 1, "name": "Megan Reilly" }, { "id": 2, "name": "Georgia Jacobson" } ], "greeting": "Hello, Miles Preston! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27ce840c3229abb2a9", "index": 3338, "guid": "1e565944-158c-42d0-bc37-04cdad12b0d6", "isActive": true, "balance": "$3,544.55", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Wendy Jones", "gender": "female", "company": "IMANT", "email": "wendyjones@imant.com", "phone": "+1 (926) 563-3125", "address": "914 Neptune Court, Umapine, North Carolina, 6932", "about": "Quis est officia veniam dolor. Exercitation ea consequat proident non dolore. Sunt sint deserunt culpa dolor consectetur aute amet ad officia ut. Aliqua non aliqua ullamco consectetur do amet ipsum labore proident nostrud aliquip minim. Nostrud elit excepteur nulla cupidatat tempor enim. Ullamco voluptate voluptate quis anim nostrud elit. Magna ipsum non tempor occaecat tempor Lorem.\r\n", "registered": "2014-09-14T19:11:16-12:00", "latitude": -0.100872, "longitude": -16.90032, "tags": [ "non", "est", "in", "enim", "minim", "sint", "reprehenderit" ], "friends": [ { "id": 0, "name": "Marilyn Bennett" }, { "id": 1, "name": "Reba Quinn" }, { "id": 2, "name": "Ethel Zimmerman" } ], "greeting": "Hello, Wendy Jones! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2787810de242677902", "index": 3339, "guid": "43347e09-118d-48d7-bd7f-cca8d7e6bf9b", "isActive": true, "balance": "$1,254.18", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Newton Cruz", "gender": "male", "company": "ECSTASIA", "email": "newtoncruz@ecstasia.com", "phone": "+1 (922) 518-3291", "address": "385 Lawrence Avenue, Manitou, New Hampshire, 5198", "about": "Elit nisi ut aliquip ullamco cillum esse anim. Cillum ullamco Lorem proident ad ullamco nisi amet mollit officia do sunt Lorem ut. Nulla elit et velit minim excepteur magna qui eu proident.\r\n", "registered": "2014-01-05T11:36:09-13:00", "latitude": -31.864233, "longitude": 32.533081, "tags": [ "pariatur", "laboris", "eiusmod", "consequat", "tempor", "ullamco", "mollit" ], "friends": [ { "id": 0, "name": "Julia Moody" }, { "id": 1, "name": "Jimmie Barton" }, { "id": 2, "name": "Katrina Ayala" } ], "greeting": "Hello, Newton Cruz! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27541f9af43736a043", "index": 3340, "guid": "6d57c0c5-ea05-4029-b64a-44552762e4e1", "isActive": false, "balance": "$1,899.37", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Luz Workman", "gender": "female", "company": "VELITY", "email": "luzworkman@velity.com", "phone": "+1 (874) 592-2966", "address": "847 Nassau Avenue, Siglerville, Arkansas, 3890", "about": "Ullamco qui labore non mollit in sit irure deserunt non est. Dolore culpa irure incididunt dolor do labore nostrud exercitation et ut proident magna deserunt. Cupidatat reprehenderit Lorem aliquip sit est sint. Pariatur deserunt elit voluptate veniam labore labore elit commodo mollit aliqua incididunt pariatur laboris.\r\n", "registered": "2014-04-08T16:35:50-12:00", "latitude": 48.784819, "longitude": -154.138741, "tags": [ "magna", "qui", "magna", "do", "elit", "aliqua", "laboris" ], "friends": [ { "id": 0, "name": "Dyer Hopper" }, { "id": 1, "name": "Austin Turner" }, { "id": 2, "name": "Reed Shaffer" } ], "greeting": "Hello, Luz Workman! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27bd4a44f95c07fd65", "index": 3341, "guid": "84ec7d9a-854d-4cc0-88f4-011a1bea9297", "isActive": true, "balance": "$2,574.34", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Regina Miranda", "gender": "female", "company": "BOILCAT", "email": "reginamiranda@boilcat.com", "phone": "+1 (960) 405-3329", "address": "115 Hull Street, Cawood, Iowa, 3592", "about": "Quis nostrud amet amet aliqua ea laborum sit mollit ea aute eu. Deserunt ullamco minim dolor nostrud nostrud. Ullamco proident consectetur ullamco aute nulla in ullamco sunt ex dolor duis do. Enim Lorem ad sunt culpa. Laboris cupidatat enim consectetur aliquip fugiat eu eu.\r\n", "registered": "2014-03-16T21:15:30-13:00", "latitude": -41.328828, "longitude": 121.411563, "tags": [ "commodo", "in", "exercitation", "voluptate", "nulla", "cillum", "mollit" ], "friends": [ { "id": 0, "name": "Guy Cash" }, { "id": 1, "name": "Iris Randall" }, { "id": 2, "name": "Nicole Drake" } ], "greeting": "Hello, Regina Miranda! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27b06facd9624f5c39", "index": 3342, "guid": "b19e834e-2379-4cb8-b62f-bfba79492901", "isActive": false, "balance": "$1,657.80", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Koch Calderon", "gender": "male", "company": "NEUROCELL", "email": "kochcalderon@neurocell.com", "phone": "+1 (974) 468-3129", "address": "853 Fairview Place, Churchill, Nebraska, 5537", "about": "Et consectetur quis duis commodo. Officia eu minim veniam irure non qui aliquip ad nostrud aliqua nulla veniam elit sit. Consectetur est qui pariatur aute. Cupidatat adipisicing tempor voluptate ad veniam culpa eu nisi officia culpa quis.\r\n", "registered": "2014-01-22T07:22:11-13:00", "latitude": -8.968791, "longitude": 138.115356, "tags": [ "anim", "aute", "non", "magna", "proident", "pariatur", "laborum" ], "friends": [ { "id": 0, "name": "Green Mckinney" }, { "id": 1, "name": "Ella Estrada" }, { "id": 2, "name": "Lorene Weaver" } ], "greeting": "Hello, Koch Calderon! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27246f16f44426501e", "index": 3343, "guid": "53f00262-8a21-44c1-a851-07a4230e1354", "isActive": true, "balance": "$3,686.44", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Melton Welch", "gender": "male", "company": "ENERSOL", "email": "meltonwelch@enersol.com", "phone": "+1 (921) 464-2731", "address": "322 Newport Street, Loyalhanna, District Of Columbia, 764", "about": "Incididunt ea reprehenderit fugiat tempor eiusmod sunt cupidatat. Sint sit sunt mollit incididunt minim. Consectetur Lorem eiusmod elit officia mollit exercitation duis consectetur consequat. Mollit consectetur aliqua consectetur do Lorem ullamco adipisicing.\r\n", "registered": "2014-04-11T23:14:55-12:00", "latitude": 72.478572, "longitude": -104.464748, "tags": [ "amet", "incididunt", "ut", "sint", "ullamco", "ullamco", "aute" ], "friends": [ { "id": 0, "name": "Randall Durham" }, { "id": 1, "name": "Lenora Woodward" }, { "id": 2, "name": "Kerr Fowler" } ], "greeting": "Hello, Melton Welch! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27daa5c1eb0d18f91a", "index": 3344, "guid": "d53813fa-8e57-447e-a9f1-538d50fcb1d9", "isActive": true, "balance": "$2,421.05", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Melba Holloway", "gender": "female", "company": "QIAO", "email": "melbaholloway@qiao.com", "phone": "+1 (849) 531-3741", "address": "556 Sullivan Place, Bath, New Jersey, 779", "about": "Occaecat aliquip aliquip veniam aliquip proident minim ut. Duis Lorem officia elit veniam velit ad exercitation. Est tempor officia consequat nisi officia voluptate laboris consectetur deserunt amet. Eu occaecat velit nostrud irure reprehenderit dolor aliqua aliquip. Irure cupidatat duis consectetur anim sit velit aliqua non officia. Labore ea amet est qui fugiat reprehenderit reprehenderit laborum eiusmod aliqua fugiat eiusmod. Reprehenderit sit dolore aute dolor ut culpa elit elit commodo.\r\n", "registered": "2014-09-05T08:19:17-12:00", "latitude": -63.635499, "longitude": 68.319781, "tags": [ "dolore", "ea", "elit", "laboris", "consequat", "eu", "do" ], "friends": [ { "id": 0, "name": "Glenna Britt" }, { "id": 1, "name": "Reynolds Berg" }, { "id": 2, "name": "Townsend Moss" } ], "greeting": "Hello, Melba Holloway! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea276bc9284d39b9b0a1", "index": 3345, "guid": "ad5d0fbd-ddae-4e75-a54a-323011dbb768", "isActive": false, "balance": "$3,458.14", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Pace Stark", "gender": "male", "company": "QUORDATE", "email": "pacestark@quordate.com", "phone": "+1 (964) 409-2459", "address": "216 Village Court, Hackneyville, Palau, 4476", "about": "Velit sint culpa sunt mollit nisi qui ad anim amet do velit proident amet do. Fugiat velit mollit eu sit. Tempor et sunt esse eiusmod dolore officia ea veniam quis minim. Veniam fugiat amet veniam elit irure veniam esse velit est. Veniam amet cillum velit veniam in est exercitation cillum cillum magna consectetur consectetur qui deserunt. Consectetur non cillum nisi deserunt elit aute eiusmod sunt fugiat magna ullamco et laborum excepteur.\r\n", "registered": "2014-03-17T09:07:08-13:00", "latitude": -36.605322, "longitude": -30.671762, "tags": [ "magna", "officia", "ad", "proident", "voluptate", "fugiat", "ipsum" ], "friends": [ { "id": 0, "name": "Sosa Mendoza" }, { "id": 1, "name": "Chavez Harrison" }, { "id": 2, "name": "Gates Dickerson" } ], "greeting": "Hello, Pace Stark! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27b6dd04ce3153c4ca", "index": 3346, "guid": "0c245170-952f-4246-8864-6a233c40e738", "isActive": false, "balance": "$1,853.58", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Josie Arnold", "gender": "female", "company": "COMTEXT", "email": "josiearnold@comtext.com", "phone": "+1 (862) 424-3470", "address": "211 Glenmore Avenue, Kingstowne, Puerto Rico, 8141", "about": "Ad anim in excepteur reprehenderit do anim sit id. Minim voluptate id ea Lorem in cillum et aute proident anim et irure ullamco. Commodo id aute ea commodo ipsum excepteur Lorem Lorem nostrud. Non labore eiusmod non minim commodo aliqua reprehenderit irure sint ea dolore incididunt ea. Sunt non non incididunt nulla fugiat aute ipsum Lorem eiusmod velit officia. Culpa amet ut ex consectetur id excepteur. Occaecat amet velit est do nisi.\r\n", "registered": "2014-07-29T22:49:32-12:00", "latitude": -12.718775, "longitude": -4.639312, "tags": [ "ad", "nulla", "sint", "sunt", "pariatur", "culpa", "deserunt" ], "friends": [ { "id": 0, "name": "Janis Rodriquez" }, { "id": 1, "name": "Nita Guy" }, { "id": 2, "name": "Maxwell Vang" } ], "greeting": "Hello, Josie Arnold! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27054a5fec0a06fe9b", "index": 3347, "guid": "a2e30d69-0a9b-4693-8cb7-6f4945adfbd1", "isActive": false, "balance": "$2,629.59", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Calhoun Lynn", "gender": "male", "company": "ZAPHIRE", "email": "calhounlynn@zaphire.com", "phone": "+1 (873) 592-3399", "address": "935 Oak Street, Sedley, California, 4018", "about": "Anim est occaecat officia ut pariatur laboris consequat occaecat aliquip ut dolor magna sit magna. Proident laborum veniam exercitation aliqua velit nisi nisi aliqua dolore consectetur est id. Proident non ipsum elit irure duis consequat do. Veniam sit sit ea laboris tempor laborum ex. Ad amet eu anim ut ullamco consectetur duis magna labore voluptate consequat id. Et mollit fugiat dolor non.\r\n", "registered": "2014-06-09T00:58:42-12:00", "latitude": 83.445862, "longitude": 41.185819, "tags": [ "aute", "ad", "non", "magna", "voluptate", "duis", "non" ], "friends": [ { "id": 0, "name": "Lauren York" }, { "id": 1, "name": "David Erickson" }, { "id": 2, "name": "Fisher Fields" } ], "greeting": "Hello, Calhoun Lynn! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27bf0d9b5f6bc6a5f6", "index": 3348, "guid": "6f2ba21a-752a-4d85-979c-c2297c67444c", "isActive": false, "balance": "$3,987.26", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Lynnette Aguilar", "gender": "female", "company": "QUAREX", "email": "lynnetteaguilar@quarex.com", "phone": "+1 (931) 416-2746", "address": "650 Colonial Road, Fingerville, Vermont, 8084", "about": "Anim do anim eiusmod qui sint mollit. Consectetur eiusmod consequat dolore velit ut culpa sit pariatur incididunt laboris. Voluptate magna eiusmod commodo incididunt pariatur.\r\n", "registered": "2014-08-29T14:32:09-12:00", "latitude": 25.712072, "longitude": 116.142222, "tags": [ "reprehenderit", "proident", "ea", "nulla", "anim", "ad", "amet" ], "friends": [ { "id": 0, "name": "Randolph Gomez" }, { "id": 1, "name": "Felecia Stewart" }, { "id": 2, "name": "Manuela Foster" } ], "greeting": "Hello, Lynnette Aguilar! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea277a041f10162a552b", "index": 3349, "guid": "04db6e80-3d0b-4636-86a6-bb1c18b8dc26", "isActive": true, "balance": "$2,991.28", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Carey Pacheco", "gender": "female", "company": "VITRICOMP", "email": "careypacheco@vitricomp.com", "phone": "+1 (909) 445-3295", "address": "690 Norwood Avenue, Santel, Indiana, 1057", "about": "Mollit dolore nostrud sint officia eiusmod ad consequat amet. Dolor velit nostrud ea voluptate. Sint amet duis irure velit in culpa cupidatat.\r\n", "registered": "2014-05-16T16:21:03-12:00", "latitude": -46.563666, "longitude": -13.376694, "tags": [ "enim", "ad", "deserunt", "ea", "in", "sit", "esse" ], "friends": [ { "id": 0, "name": "Nancy Rodgers" }, { "id": 1, "name": "Watts Meyers" }, { "id": 2, "name": "Hensley Roach" } ], "greeting": "Hello, Carey Pacheco! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27c40d73e60ef97880", "index": 3350, "guid": "eafe0239-e7bd-4dc5-8e69-23b7ce217069", "isActive": true, "balance": "$1,340.97", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Chandra Gallegos", "gender": "female", "company": "CYTREX", "email": "chandragallegos@cytrex.com", "phone": "+1 (875) 469-2867", "address": "741 Ditmas Avenue, Fannett, Illinois, 5162", "about": "Exercitation pariatur qui quis duis eu Lorem nisi enim dolor Lorem aliquip. Incididunt culpa irure exercitation consectetur proident deserunt aliqua ut pariatur duis excepteur. Nulla nostrud et commodo nulla dolor eiusmod pariatur nisi velit.\r\n", "registered": "2014-05-30T02:08:19-12:00", "latitude": 54.760692, "longitude": 24.35525, "tags": [ "occaecat", "laborum", "nisi", "et", "proident", "elit", "veniam" ], "friends": [ { "id": 0, "name": "Sarah Stokes" }, { "id": 1, "name": "Hamilton Marks" }, { "id": 2, "name": "Briana Woods" } ], "greeting": "Hello, Chandra Gallegos! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea277c7a710aab9da4ed", "index": 3351, "guid": "58d3cb84-c0a3-4bb5-952b-5528cf6d5f35", "isActive": true, "balance": "$2,561.15", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Harris Briggs", "gender": "male", "company": "RODEOCEAN", "email": "harrisbriggs@rodeocean.com", "phone": "+1 (801) 490-3554", "address": "792 Dinsmore Place, Gloucester, South Carolina, 1590", "about": "Velit aliquip culpa esse id culpa. Sunt occaecat aliqua nisi duis tempor est eiusmod reprehenderit exercitation ipsum in pariatur cupidatat. Mollit labore ea in velit veniam in ex in quis adipisicing ea exercitation. Id dolor quis qui eu elit ea laborum est cupidatat. Incididunt ad officia in consequat do officia sunt eiusmod dolor ut magna aute aliquip.\r\n", "registered": "2014-05-03T22:09:21-12:00", "latitude": 44.147652, "longitude": -120.663268, "tags": [ "pariatur", "cupidatat", "excepteur", "non", "ex", "pariatur", "quis" ], "friends": [ { "id": 0, "name": "Chasity Serrano" }, { "id": 1, "name": "Langley Cooper" }, { "id": 2, "name": "Barton Floyd" } ], "greeting": "Hello, Harris Briggs! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2791ecea848c8c50ff", "index": 3352, "guid": "779d7acb-b267-4b25-923b-b20108b1bb6f", "isActive": true, "balance": "$2,518.66", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Josefa Stevenson", "gender": "female", "company": "WARETEL", "email": "josefastevenson@waretel.com", "phone": "+1 (869) 408-3800", "address": "415 Jewel Street, Haena, American Samoa, 933", "about": "Pariatur aute dolor proident consectetur incididunt ipsum laboris eiusmod veniam. Nostrud officia consequat aute non adipisicing officia. Est sunt ex nisi exercitation sit. Esse nostrud ipsum consequat ex sit ullamco laborum ea. Adipisicing elit velit anim ipsum nulla sunt fugiat.\r\n", "registered": "2014-09-23T03:01:28-12:00", "latitude": -60.193646, "longitude": -153.097159, "tags": [ "excepteur", "esse", "esse", "irure", "reprehenderit", "excepteur", "qui" ], "friends": [ { "id": 0, "name": "Ollie Sargent" }, { "id": 1, "name": "Lula Johnston" }, { "id": 2, "name": "Sadie Valenzuela" } ], "greeting": "Hello, Josefa Stevenson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27d26ecb043173f972", "index": 3353, "guid": "0d8a6492-c83d-4902-8526-7f018e9b5b0d", "isActive": true, "balance": "$3,440.73", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Pittman Richards", "gender": "male", "company": "SLOFAST", "email": "pittmanrichards@slofast.com", "phone": "+1 (826) 563-2401", "address": "135 Chester Court, Frizzleburg, Delaware, 9503", "about": "Tempor excepteur occaecat ullamco sint cupidatat. Esse irure in dolore exercitation quis labore aute nostrud consectetur consectetur ea. Deserunt enim irure qui tempor cillum consequat anim Lorem occaecat esse aute ullamco culpa. Proident deserunt amet ad ut culpa. Officia deserunt dolor voluptate dolore.\r\n", "registered": "2014-05-30T13:11:38-12:00", "latitude": -69.120677, "longitude": -1.044933, "tags": [ "duis", "enim", "eu", "cupidatat", "ut", "ea", "magna" ], "friends": [ { "id": 0, "name": "Jeannie Duffy" }, { "id": 1, "name": "Hahn Blanchard" }, { "id": 2, "name": "Rosalind Craig" } ], "greeting": "Hello, Pittman Richards! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea271b24489112f2d345", "index": 3354, "guid": "1a7c7b11-2e81-456a-9b75-9032eb7f2843", "isActive": false, "balance": "$1,790.91", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Harriet Byrd", "gender": "female", "company": "BIFLEX", "email": "harrietbyrd@biflex.com", "phone": "+1 (935) 600-3365", "address": "309 Ralph Avenue, Belmont, Pennsylvania, 9278", "about": "Lorem pariatur amet est proident excepteur mollit officia amet tempor exercitation occaecat. Reprehenderit laborum qui aute sint ipsum dolore incididunt ex commodo incididunt nulla. In incididunt ex ullamco ex officia anim sint. Sint dolore ea id ullamco irure. Ad est consequat qui incididunt id consectetur eu eiusmod consectetur labore proident qui commodo. Consectetur nostrud id cillum nostrud nulla commodo eu. Est quis occaecat eiusmod pariatur.\r\n", "registered": "2014-09-03T00:27:04-12:00", "latitude": -39.262058, "longitude": 169.277118, "tags": [ "ipsum", "dolore", "ullamco", "aliqua", "id", "ullamco", "in" ], "friends": [ { "id": 0, "name": "Amy White" }, { "id": 1, "name": "Lyons Hensley" }, { "id": 2, "name": "Corinne Martinez" } ], "greeting": "Hello, Harriet Byrd! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2707a54d37ec9a290d", "index": 3355, "guid": "fed77a2f-4cd4-48d4-a2ef-75f58e05e379", "isActive": false, "balance": "$1,218.24", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Lynn Richmond", "gender": "male", "company": "EWEVILLE", "email": "lynnrichmond@eweville.com", "phone": "+1 (959) 546-2944", "address": "406 Beadel Street, Swartzville, Georgia, 5516", "about": "Dolor pariatur occaecat pariatur ad. Officia officia quis cupidatat ad laboris velit occaecat voluptate consequat cillum occaecat minim non laborum. Veniam nisi magna ex quis reprehenderit non deserunt culpa cillum qui veniam officia non. Ut minim in sunt ut deserunt officia veniam. Irure reprehenderit consectetur magna occaecat pariatur.\r\n", "registered": "2014-02-22T21:46:03-13:00", "latitude": 66.877685, "longitude": 49.499895, "tags": [ "deserunt", "non", "adipisicing", "pariatur", "esse", "adipisicing", "veniam" ], "friends": [ { "id": 0, "name": "Witt Mcclure" }, { "id": 1, "name": "Cynthia Peters" }, { "id": 2, "name": "Elizabeth Lara" } ], "greeting": "Hello, Lynn Richmond! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27bcfce7eeb52a9802", "index": 3356, "guid": "f2103161-2ff2-416b-a911-ff4c92745437", "isActive": true, "balance": "$2,758.78", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Mercado Cleveland", "gender": "male", "company": "OVERFORK", "email": "mercadocleveland@overfork.com", "phone": "+1 (945) 530-2185", "address": "694 Elton Street, Draper, North Dakota, 704", "about": "Non anim nulla et veniam ea anim anim do. Aliquip nostrud ad sint eu ullamco ea. Aliquip cupidatat ipsum officia sit aliquip tempor dolor culpa sint irure qui do do. Veniam voluptate commodo anim labore. Et incididunt aliqua pariatur sint. Culpa dolor velit elit adipisicing ullamco cillum nulla proident.\r\n", "registered": "2014-05-09T01:39:15-12:00", "latitude": -79.865888, "longitude": 77.633042, "tags": [ "reprehenderit", "aute", "veniam", "amet", "Lorem", "veniam", "consequat" ], "friends": [ { "id": 0, "name": "Celia Howell" }, { "id": 1, "name": "Luna Nielsen" }, { "id": 2, "name": "Rowena Rhodes" } ], "greeting": "Hello, Mercado Cleveland! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27e1c3baa2a18d5fa5", "index": 3357, "guid": "b16747d0-4970-4662-b943-7528ca629829", "isActive": true, "balance": "$3,707.99", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Carmela Hartman", "gender": "female", "company": "ZAYA", "email": "carmelahartman@zaya.com", "phone": "+1 (805) 454-2004", "address": "304 Rutledge Street, Loma, Louisiana, 6059", "about": "Nulla deserunt nisi elit qui officia amet sint. Et velit sit enim ex voluptate sunt magna fugiat fugiat ad. Occaecat dolor et duis pariatur culpa magna incididunt magna dolore exercitation non mollit occaecat sint. Ut ex mollit et laboris et est esse reprehenderit est amet officia dolor eu veniam.\r\n", "registered": "2014-01-21T15:48:31-13:00", "latitude": 68.215233, "longitude": -39.285581, "tags": [ "laborum", "sint", "in", "enim", "nostrud", "Lorem", "do" ], "friends": [ { "id": 0, "name": "Rita Travis" }, { "id": 1, "name": "Chen Wilson" }, { "id": 2, "name": "Bernard Pace" } ], "greeting": "Hello, Carmela Hartman! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2772891b5e37935328", "index": 3358, "guid": "9ecdcc3a-a65e-456a-985b-a0126c4688d5", "isActive": true, "balance": "$3,672.60", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Nadia Sparks", "gender": "female", "company": "STUCCO", "email": "nadiasparks@stucco.com", "phone": "+1 (846) 582-2130", "address": "847 Liberty Avenue, Garnet, Northern Mariana Islands, 3773", "about": "Minim aute laboris amet dolore magna voluptate. Lorem mollit Lorem elit nisi. Fugiat Lorem consequat et Lorem deserunt excepteur aliqua esse mollit. Lorem Lorem enim irure nisi exercitation pariatur nulla.\r\n", "registered": "2014-08-10T22:47:10-12:00", "latitude": 46.992893, "longitude": -133.110079, "tags": [ "dolor", "velit", "amet", "amet", "est", "et", "ea" ], "friends": [ { "id": 0, "name": "Geneva Patterson" }, { "id": 1, "name": "Barnes Wood" }, { "id": 2, "name": "Kristin Rodriguez" } ], "greeting": "Hello, Nadia Sparks! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27a0bdbdd184a47f40", "index": 3359, "guid": "b851258d-d6a8-4779-ac98-ec74a3285f11", "isActive": false, "balance": "$3,836.91", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Glass Bates", "gender": "male", "company": "GINK", "email": "glassbates@gink.com", "phone": "+1 (895) 562-2476", "address": "682 Bristol Street, Walland, Colorado, 5668", "about": "Ea eu aute laborum labore pariatur non voluptate sint amet occaecat. Reprehenderit adipisicing non incididunt ipsum magna. Incididunt occaecat fugiat consectetur enim enim ea sit culpa. Enim eu ipsum voluptate adipisicing magna id. Laboris commodo consectetur voluptate nisi. Cupidatat sit anim officia ullamco consequat consequat enim pariatur et.\r\n", "registered": "2014-04-03T16:36:34-13:00", "latitude": 65.183794, "longitude": 52.179013, "tags": [ "ad", "ipsum", "elit", "enim", "ipsum", "laborum", "anim" ], "friends": [ { "id": 0, "name": "Sofia Shepard" }, { "id": 1, "name": "Estela Mercado" }, { "id": 2, "name": "Doris Fitzpatrick" } ], "greeting": "Hello, Glass Bates! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27aa3b69d1595ae96e", "index": 3360, "guid": "db7b73ed-9786-4bf8-9e1e-93806cf1aef5", "isActive": false, "balance": "$1,631.38", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Wynn Hart", "gender": "male", "company": "BIOSPAN", "email": "wynnhart@biospan.com", "phone": "+1 (956) 515-3776", "address": "114 Gallatin Place, Wheatfields, Idaho, 4499", "about": "Ea est consectetur voluptate Lorem incididunt. Esse aliquip Lorem minim consequat ut. Aliquip irure commodo consectetur labore do qui enim fugiat sit culpa est tempor consequat sint. Nisi reprehenderit ullamco veniam incididunt ea esse ipsum non aute tempor commodo nisi dolor deserunt.\r\n", "registered": "2014-02-19T22:09:42-13:00", "latitude": -0.570608, "longitude": 20.530852, "tags": [ "laborum", "exercitation", "et", "do", "pariatur", "dolor", "aliquip" ], "friends": [ { "id": 0, "name": "Nellie Poole" }, { "id": 1, "name": "Carol Franks" }, { "id": 2, "name": "Whitney Watson" } ], "greeting": "Hello, Wynn Hart! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27ed8e834451954dc1", "index": 3361, "guid": "48fcee4d-54e5-426e-ad6f-4b51095d62ef", "isActive": true, "balance": "$2,941.94", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Gracie Shaw", "gender": "female", "company": "LIQUIDOC", "email": "gracieshaw@liquidoc.com", "phone": "+1 (966) 572-3881", "address": "722 Veronica Place, Avoca, Marshall Islands, 3248", "about": "Ad ad non do ipsum exercitation consequat aliquip consectetur deserunt proident laboris sunt consectetur. Cupidatat reprehenderit ut proident elit excepteur irure minim consectetur laborum veniam elit consectetur. Aute enim id minim voluptate labore nisi labore pariatur aliquip est aliqua ipsum et. Dolor sint occaecat laboris nisi culpa ad occaecat magna cillum.\r\n", "registered": "2014-08-18T16:52:52-12:00", "latitude": 36.595689, "longitude": 104.437866, "tags": [ "non", "consectetur", "do", "ea", "mollit", "adipisicing", "eiusmod" ], "friends": [ { "id": 0, "name": "Delacruz Smith" }, { "id": 1, "name": "Gardner Bell" }, { "id": 2, "name": "Stephanie Simon" } ], "greeting": "Hello, Gracie Shaw! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea277091061e339bf1b8", "index": 3362, "guid": "24914da4-ed6f-4dc6-9b65-a792e15321da", "isActive": true, "balance": "$2,172.75", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Heather Orr", "gender": "female", "company": "EPLODE", "email": "heatherorr@eplode.com", "phone": "+1 (920) 533-3572", "address": "314 Bridge Street, Cresaptown, New York, 4824", "about": "Aute ex commodo qui amet minim pariatur Lorem ad officia. Irure duis elit duis aliquip amet dolore cillum anim minim consequat fugiat ea. Velit adipisicing labore pariatur est fugiat deserunt officia cillum sit nisi ex. Laboris sit enim aute nisi nostrud commodo. Cillum est ea sint anim deserunt dolore voluptate proident sint. Deserunt ipsum fugiat voluptate ut laborum voluptate est fugiat esse est. Eu amet exercitation Lorem est.\r\n", "registered": "2014-06-10T09:47:30-12:00", "latitude": -68.681957, "longitude": -136.688409, "tags": [ "duis", "fugiat", "incididunt", "ad", "consequat", "duis", "reprehenderit" ], "friends": [ { "id": 0, "name": "Brown Page" }, { "id": 1, "name": "Kristy Greene" }, { "id": 2, "name": "Lowe Flowers" } ], "greeting": "Hello, Heather Orr! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27035b8bcd5f412371", "index": 3363, "guid": "208e43fb-3d4f-44de-96d5-2fd23758f1bb", "isActive": false, "balance": "$2,405.48", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Holly Spencer", "gender": "female", "company": "LYRICHORD", "email": "hollyspencer@lyrichord.com", "phone": "+1 (869) 447-2718", "address": "206 Losee Terrace, Goodville, Guam, 719", "about": "Anim sint consectetur aliquip reprehenderit tempor dolore sit veniam aliquip et cillum qui cillum. Id ut labore incididunt nisi. Ea exercitation mollit mollit exercitation officia. Cillum minim ut aute ea. Ut eu nisi magna aliquip ex nostrud et proident nulla qui consequat excepteur culpa.\r\n", "registered": "2014-09-05T05:09:15-12:00", "latitude": -46.590767, "longitude": 104.992854, "tags": [ "nulla", "dolore", "esse", "ea", "ipsum", "nulla", "cupidatat" ], "friends": [ { "id": 0, "name": "Finley Booker" }, { "id": 1, "name": "Williams Vinson" }, { "id": 2, "name": "Valentine Craft" } ], "greeting": "Hello, Holly Spencer! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2777ed66eecfa8e5b2", "index": 3364, "guid": "e31b7274-9b23-42c5-8096-68953de6fcb9", "isActive": false, "balance": "$2,572.41", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Maryellen Frazier", "gender": "female", "company": "SNIPS", "email": "maryellenfrazier@snips.com", "phone": "+1 (858) 493-3400", "address": "637 Frank Court, Levant, Virgin Islands, 8237", "about": "Sit ea id aute Lorem ullamco aliqua. Do cillum Lorem sit nulla aute voluptate. Fugiat aliqua sit id id duis nostrud deserunt laborum sunt exercitation incididunt do eiusmod. Veniam sunt eiusmod dolore nulla ad culpa eu velit. Anim enim quis pariatur consectetur cillum in aute amet aute. Est tempor eiusmod voluptate quis velit dolore. Ad ipsum consectetur non et.\r\n", "registered": "2014-07-26T22:56:01-12:00", "latitude": -36.56832, "longitude": -116.053497, "tags": [ "sit", "aliquip", "nisi", "eiusmod", "minim", "ut", "qui" ], "friends": [ { "id": 0, "name": "Dolly Guerrero" }, { "id": 1, "name": "Mccormick Francis" }, { "id": 2, "name": "Potts Wiley" } ], "greeting": "Hello, Maryellen Frazier! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea270b92486e18e81dab", "index": 3365, "guid": "e7ff1383-f00d-414f-b805-0fbb5282ab9b", "isActive": true, "balance": "$1,836.84", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Phelps Kelly", "gender": "male", "company": "FARMEX", "email": "phelpskelly@farmex.com", "phone": "+1 (941) 481-3359", "address": "121 Conway Street, Blairstown, Massachusetts, 5906", "about": "Elit pariatur commodo ullamco incididunt quis enim occaecat occaecat aliquip in quis ea enim ad. Mollit adipisicing quis sit exercitation dolore enim non magna et in incididunt. Voluptate ex consequat nostrud nostrud et mollit amet nisi nisi. Non culpa culpa et adipisicing reprehenderit id. Magna proident sit adipisicing est. Pariatur sunt excepteur deserunt velit consectetur laboris proident dolore magna amet mollit nostrud fugiat.\r\n", "registered": "2014-06-03T21:00:40-12:00", "latitude": 32.508644, "longitude": 115.429557, "tags": [ "Lorem", "tempor", "eu", "enim", "culpa", "dolor", "commodo" ], "friends": [ { "id": 0, "name": "Jodie Klein" }, { "id": 1, "name": "Toni Mcbride" }, { "id": 2, "name": "Watkins Carey" } ], "greeting": "Hello, Phelps Kelly! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2747ad582a50dea3d7", "index": 3366, "guid": "035dc566-09f8-49c9-9042-f61277b96e8c", "isActive": false, "balance": "$3,302.84", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Estella Fry", "gender": "female", "company": "OZEAN", "email": "estellafry@ozean.com", "phone": "+1 (970) 540-3012", "address": "492 Columbus Place, Brazos, Utah, 6328", "about": "Deserunt veniam consequat aliqua fugiat consectetur. Sit ea dolor qui veniam ut laborum aliqua ea tempor ex. Ad minim sunt et officia excepteur velit fugiat fugiat eu.\r\n", "registered": "2014-02-11T10:23:18-13:00", "latitude": -14.904107, "longitude": -48.086951, "tags": [ "proident", "adipisicing", "deserunt", "nostrud", "anim", "pariatur", "do" ], "friends": [ { "id": 0, "name": "Walsh Beasley" }, { "id": 1, "name": "Candy Gaines" }, { "id": 2, "name": "Dominguez Warner" } ], "greeting": "Hello, Estella Fry! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea273d99d822f473fdaa", "index": 3367, "guid": "ba6df33f-823f-4f87-8b1a-77d0e65db01b", "isActive": true, "balance": "$2,661.30", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Tommie Henry", "gender": "female", "company": "MEDIOT", "email": "tommiehenry@mediot.com", "phone": "+1 (890) 459-3562", "address": "566 Broome Street, Faywood, Montana, 5521", "about": "Deserunt et ipsum exercitation quis pariatur excepteur cupidatat. Deserunt nulla occaecat est sunt eu labore Lorem pariatur ex velit. Qui nisi tempor tempor exercitation laboris veniam exercitation officia anim fugiat. Nulla est anim voluptate eu qui irure consectetur esse. Do commodo sint sunt ea aliqua ipsum nulla laboris fugiat reprehenderit. Non irure incididunt in aliqua mollit cillum et do laborum ad.\r\n", "registered": "2014-03-24T01:59:14-13:00", "latitude": -77.015013, "longitude": -148.860103, "tags": [ "et", "do", "laboris", "occaecat", "eiusmod", "sit", "ea" ], "friends": [ { "id": 0, "name": "Wilkinson Clark" }, { "id": 1, "name": "Traci Baird" }, { "id": 2, "name": "Giles Noel" } ], "greeting": "Hello, Tommie Henry! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea271af64a22653629ce", "index": 3368, "guid": "99dd87ed-27d8-4c33-afe1-6ad284bd45e1", "isActive": false, "balance": "$2,411.65", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Ingrid Dunlap", "gender": "female", "company": "GEEKETRON", "email": "ingriddunlap@geeketron.com", "phone": "+1 (822) 563-3528", "address": "675 Vanderbilt Avenue, Crisman, Wisconsin, 4660", "about": "Ut proident ullamco tempor irure eu aliquip labore minim ad reprehenderit dolore. Laborum aute ex laborum quis est veniam aliqua. Ipsum id officia adipisicing et commodo excepteur nostrud et labore amet officia veniam. Exercitation enim proident laboris duis aute. Id pariatur adipisicing quis proident laborum adipisicing esse. Sit et minim dolore nisi magna reprehenderit incididunt deserunt proident officia ex nulla.\r\n", "registered": "2014-01-05T06:02:30-13:00", "latitude": -16.137789, "longitude": -131.219433, "tags": [ "amet", "culpa", "dolore", "ut", "sint", "cillum", "excepteur" ], "friends": [ { "id": 0, "name": "Tracy Kramer" }, { "id": 1, "name": "Liza Hubbard" }, { "id": 2, "name": "Tanner Petersen" } ], "greeting": "Hello, Ingrid Dunlap! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27e4eb4b136b02c162", "index": 3369, "guid": "b28e11f5-383e-456a-a111-6a99ef00c373", "isActive": true, "balance": "$1,760.57", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Katy Ford", "gender": "female", "company": "UBERLUX", "email": "katyford@uberlux.com", "phone": "+1 (819) 543-2214", "address": "337 Gold Street, Whipholt, Maine, 2477", "about": "Et culpa deserunt sit commodo quis veniam cupidatat magna fugiat eiusmod ipsum laborum. Ipsum occaecat officia est magna dolor mollit. Ut culpa cupidatat culpa cupidatat do mollit aute nulla quis voluptate labore reprehenderit nisi nostrud. Est pariatur ullamco Lorem pariatur reprehenderit aliqua ipsum do nisi enim ea nisi. Sint esse commodo labore quis Lorem magna veniam ea irure.\r\n", "registered": "2014-06-28T08:29:35-12:00", "latitude": -46.232626, "longitude": -91.690745, "tags": [ "excepteur", "amet", "laborum", "exercitation", "ea", "nostrud", "nulla" ], "friends": [ { "id": 0, "name": "Mccarthy Buck" }, { "id": 1, "name": "Flora Harrington" }, { "id": 2, "name": "Wilcox Johns" } ], "greeting": "Hello, Katy Ford! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27df92b66c4699323c", "index": 3370, "guid": "6405bc3c-ee7e-4f62-b2cf-4e059317a28f", "isActive": true, "balance": "$1,667.56", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Terry Montoya", "gender": "male", "company": "ULTRASURE", "email": "terrymontoya@ultrasure.com", "phone": "+1 (813) 450-2437", "address": "212 Cass Place, Ahwahnee, Virginia, 4411", "about": "Do exercitation ut officia ea elit dolore aliqua qui. Nisi aliquip culpa sit dolore non ea aliqua exercitation. Ullamco culpa incididunt et ut. Occaecat officia ullamco consectetur officia fugiat pariatur eu do nostrud ipsum elit ad. Consectetur proident occaecat ex non est cillum laboris fugiat in magna voluptate elit elit.\r\n", "registered": "2014-02-15T19:19:31-13:00", "latitude": -45.886032, "longitude": -94.328794, "tags": [ "elit", "nostrud", "sunt", "tempor", "et", "labore", "elit" ], "friends": [ { "id": 0, "name": "Pratt Berger" }, { "id": 1, "name": "Kim Osborne" }, { "id": 2, "name": "Josefina Mathis" } ], "greeting": "Hello, Terry Montoya! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2748007ff790450456", "index": 3371, "guid": "70da4e7a-1238-4d3f-bac4-b0c9a4a94b56", "isActive": false, "balance": "$1,252.55", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Ursula Melton", "gender": "female", "company": "COMVERGES", "email": "ursulamelton@comverges.com", "phone": "+1 (914) 591-2721", "address": "280 Joval Court, Rodman, Kentucky, 8662", "about": "Ullamco exercitation cillum laborum in id qui officia nisi veniam commodo. Commodo ex ullamco in ut anim qui aute nisi adipisicing veniam quis qui dolore. Aliquip tempor dolore sint id nostrud qui. Cupidatat laboris dolor culpa in exercitation tempor sunt ex adipisicing deserunt sunt ullamco duis. Ad esse ipsum fugiat in anim mollit duis cupidatat sunt sit sint. Veniam irure occaecat mollit cillum. Aliqua laborum in dolore voluptate Lorem mollit.\r\n", "registered": "2014-07-16T22:25:00-12:00", "latitude": -67.645537, "longitude": 19.459213, "tags": [ "cillum", "aliqua", "et", "laborum", "occaecat", "et", "non" ], "friends": [ { "id": 0, "name": "Juanita Eaton" }, { "id": 1, "name": "Lambert Mays" }, { "id": 2, "name": "Eleanor Gill" } ], "greeting": "Hello, Ursula Melton! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27e654aa5bf6fe1841", "index": 3372, "guid": "7700d14e-bfd3-4dd6-aa9a-9ce4f2a8a1a9", "isActive": true, "balance": "$3,361.10", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Rebekah Wheeler", "gender": "female", "company": "JUMPSTACK", "email": "rebekahwheeler@jumpstack.com", "phone": "+1 (909) 428-2299", "address": "561 Coffey Street, Washington, Connecticut, 422", "about": "Deserunt anim est enim consequat elit et velit ut ex. Voluptate amet laborum proident ad anim incididunt ipsum occaecat duis quis nulla. In est Lorem officia occaecat qui ex ea aute non est laboris esse sunt. Nisi ex cillum nisi voluptate consectetur veniam officia occaecat consectetur. Cupidatat sit voluptate est qui nostrud. In elit non voluptate ad occaecat dolore aute nostrud. Fugiat adipisicing ex mollit ea nostrud deserunt velit quis ullamco officia labore id.\r\n", "registered": "2014-01-14T03:00:15-13:00", "latitude": 34.114295, "longitude": 2.169703, "tags": [ "irure", "consectetur", "adipisicing", "labore", "officia", "aliquip", "cupidatat" ], "friends": [ { "id": 0, "name": "Rasmussen Carr" }, { "id": 1, "name": "Jewell Wolfe" }, { "id": 2, "name": "Lancaster Huber" } ], "greeting": "Hello, Rebekah Wheeler! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea272ef20960049a93ad", "index": 3373, "guid": "7a81f155-46d6-445d-bc06-32422c4111ac", "isActive": true, "balance": "$3,418.21", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Lilian Pierce", "gender": "female", "company": "JAMNATION", "email": "lilianpierce@jamnation.com", "phone": "+1 (921) 577-2565", "address": "642 Fane Court, Hobucken, Mississippi, 1390", "about": "Voluptate veniam adipisicing sint Lorem culpa anim dolore occaecat eu dolore dolore. Officia nisi quis ea dolor Lorem sint proident. Excepteur consectetur enim anim consectetur sint velit. Lorem esse id in in aliquip.\r\n", "registered": "2014-04-07T17:37:41-12:00", "latitude": 57.603859, "longitude": -145.65679, "tags": [ "consectetur", "fugiat", "cupidatat", "cupidatat", "adipisicing", "quis", "laboris" ], "friends": [ { "id": 0, "name": "Selena Merritt" }, { "id": 1, "name": "Mae Aguirre" }, { "id": 2, "name": "Schmidt Luna" } ], "greeting": "Hello, Lilian Pierce! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea278fee66f534ba3999", "index": 3374, "guid": "d399edb8-bfab-4fcf-9880-daaa4cd5ec79", "isActive": false, "balance": "$1,050.00", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Deann Bowen", "gender": "female", "company": "ZILLA", "email": "deannbowen@zilla.com", "phone": "+1 (806) 441-3303", "address": "289 Atkins Avenue, Nicut, Washington, 1604", "about": "Ad eiusmod labore et sint eu. Exercitation pariatur magna proident adipisicing. Aute excepteur do incididunt Lorem. Elit reprehenderit aliqua occaecat voluptate. Aute reprehenderit fugiat commodo magna anim ad do reprehenderit id dolore. Eu ea et reprehenderit voluptate magna aliquip nulla cupidatat. Ex eiusmod sint consectetur ut officia Lorem.\r\n", "registered": "2014-07-29T14:10:22-12:00", "latitude": 17.730179, "longitude": 10.068485, "tags": [ "fugiat", "amet", "quis", "sit", "velit", "aliquip", "proident" ], "friends": [ { "id": 0, "name": "Nichole Mueller" }, { "id": 1, "name": "Reeves Duncan" }, { "id": 2, "name": "Woodward Burt" } ], "greeting": "Hello, Deann Bowen! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea273f0cbed3f271715d", "index": 3375, "guid": "a0c334e3-4caa-4880-8f66-bdb7fef15be6", "isActive": false, "balance": "$2,754.03", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Solis Saunders", "gender": "male", "company": "EARTHMARK", "email": "solissaunders@earthmark.com", "phone": "+1 (928) 543-2618", "address": "989 Meeker Avenue, Salix, Tennessee, 3128", "about": "Mollit occaecat ea sunt ut consectetur enim ex ex nulla officia dolor. Qui amet nisi sit velit exercitation sit. Lorem duis ullamco laborum dolor. Irure mollit deserunt reprehenderit excepteur.\r\n", "registered": "2014-08-17T02:30:27-12:00", "latitude": 78.102516, "longitude": -45.183077, "tags": [ "consectetur", "esse", "commodo", "proident", "velit", "est", "ipsum" ], "friends": [ { "id": 0, "name": "Short Caldwell" }, { "id": 1, "name": "Castillo House" }, { "id": 2, "name": "Knowles Dudley" } ], "greeting": "Hello, Solis Saunders! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27d21e5a29778389f5", "index": 3376, "guid": "c0651f2c-aa55-4630-99d0-57b5688f5db3", "isActive": true, "balance": "$3,230.17", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Ginger Wynn", "gender": "female", "company": "IMAGINART", "email": "gingerwynn@imaginart.com", "phone": "+1 (941) 445-3486", "address": "728 Johnson Avenue, Morningside, Alabama, 8318", "about": "Magna magna Lorem Lorem fugiat esse. Sit anim exercitation consequat proident deserunt incididunt enim elit ullamco culpa irure laborum elit. Aute id qui commodo qui voluptate ad id dolore aliquip. Aliqua magna adipisicing quis dolore amet do eu sint laboris aliquip amet in. Sint tempor exercitation aliquip aute consectetur.\r\n", "registered": "2014-02-14T07:12:13-13:00", "latitude": 45.233342, "longitude": -101.633702, "tags": [ "tempor", "laboris", "excepteur", "non", "tempor", "eu", "culpa" ], "friends": [ { "id": 0, "name": "Whitehead Wilkinson" }, { "id": 1, "name": "Jefferson Bailey" }, { "id": 2, "name": "Paul Barry" } ], "greeting": "Hello, Ginger Wynn! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27c9c64c4a0b7dc4b6", "index": 3377, "guid": "756afca8-5047-4ceb-a46d-f7515a23a0b4", "isActive": false, "balance": "$1,267.65", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Queen Atkins", "gender": "female", "company": "EXOBLUE", "email": "queenatkins@exoblue.com", "phone": "+1 (821) 431-2846", "address": "448 Flatlands Avenue, Ernstville, Ohio, 6230", "about": "Commodo culpa id qui irure deserunt minim. Proident proident minim ipsum amet proident duis. Pariatur veniam nulla mollit sint aliquip anim veniam duis anim deserunt Lorem et proident laborum. Cupidatat tempor magna nisi laboris aute ullamco deserunt laborum.\r\n", "registered": "2014-07-05T04:26:25-12:00", "latitude": -76.929303, "longitude": 121.782639, "tags": [ "officia", "est", "non", "exercitation", "voluptate", "mollit", "quis" ], "friends": [ { "id": 0, "name": "Love Donaldson" }, { "id": 1, "name": "Bright Hutchinson" }, { "id": 2, "name": "Russell Decker" } ], "greeting": "Hello, Queen Atkins! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27053d40399c5e7300", "index": 3378, "guid": "d6ac82ce-8ad4-4adc-9f86-60b02f55a4ff", "isActive": false, "balance": "$1,730.88", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Shannon Cochran", "gender": "male", "company": "PLUTORQUE", "email": "shannoncochran@plutorque.com", "phone": "+1 (968) 512-3198", "address": "430 Stuyvesant Avenue, Unionville, Hawaii, 1096", "about": "Cupidatat quis nostrud officia commodo veniam in ex duis eu ullamco. Duis consectetur veniam ut cupidatat ipsum nulla minim officia cupidatat velit ipsum fugiat. Id reprehenderit pariatur excepteur ea anim esse elit incididunt minim aliqua sint. Cupidatat enim qui mollit magna proident consequat pariatur non occaecat qui non qui esse.\r\n", "registered": "2014-06-25T05:23:41-12:00", "latitude": 78.326084, "longitude": 145.341435, "tags": [ "sit", "ad", "sint", "proident", "voluptate", "deserunt", "ex" ], "friends": [ { "id": 0, "name": "June Mckay" }, { "id": 1, "name": "Edna Simpson" }, { "id": 2, "name": "Suzette Everett" } ], "greeting": "Hello, Shannon Cochran! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea277b6736c6f981f11b", "index": 3379, "guid": "4e13e17d-d8ef-4e88-bd21-91e5d0403b02", "isActive": true, "balance": "$1,508.13", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Cheri Delgado", "gender": "female", "company": "SOLAREN", "email": "cheridelgado@solaren.com", "phone": "+1 (994) 437-2125", "address": "264 Church Lane, Healy, New Mexico, 5727", "about": "Et et veniam dolore esse ut fugiat. Minim ea est occaecat pariatur ex voluptate amet mollit incididunt nisi veniam amet. Reprehenderit consectetur culpa in nulla ex esse proident anim fugiat irure pariatur. Eu exercitation excepteur dolor dolore id.\r\n", "registered": "2014-01-23T02:58:21-13:00", "latitude": 32.333059, "longitude": 121.53766, "tags": [ "mollit", "esse", "aliqua", "nulla", "tempor", "laborum", "ullamco" ], "friends": [ { "id": 0, "name": "Coleen Mcgowan" }, { "id": 1, "name": "Thornton Fleming" }, { "id": 2, "name": "Margret Burton" } ], "greeting": "Hello, Cheri Delgado! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2796ebea92210195e1", "index": 3380, "guid": "cedd4809-9b27-42da-9afc-adb8441d0ad5", "isActive": true, "balance": "$1,119.32", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Kelley Graves", "gender": "female", "company": "SCHOOLIO", "email": "kelleygraves@schoolio.com", "phone": "+1 (860) 578-3618", "address": "625 Russell Street, Osage, Maryland, 3305", "about": "Proident in occaecat do aute quis. Proident reprehenderit et mollit commodo laborum do. Exercitation aliquip eu culpa anim in eu et id. Sit proident aliqua non amet labore.\r\n", "registered": "2014-05-12T05:25:42-12:00", "latitude": 75.140398, "longitude": -28.124166, "tags": [ "culpa", "occaecat", "ad", "deserunt", "laborum", "tempor", "duis" ], "friends": [ { "id": 0, "name": "Kirk Potts" }, { "id": 1, "name": "Myrtle Holland" }, { "id": 2, "name": "Abbott Hewitt" } ], "greeting": "Hello, Kelley Graves! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27632e2a0ab59082f2", "index": 3381, "guid": "2e7de466-5f83-445a-8fcb-c08ba849a096", "isActive": false, "balance": "$3,734.41", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Shelley Porter", "gender": "female", "company": "ZORK", "email": "shelleyporter@zork.com", "phone": "+1 (846) 586-3282", "address": "667 Raleigh Place, Shindler, Alaska, 2653", "about": "Pariatur do mollit nostrud id aliqua voluptate voluptate deserunt. Lorem ea quis aliquip exercitation ex labore anim. Quis enim nulla exercitation commodo. Ad veniam do ullamco officia excepteur laboris.\r\n", "registered": "2014-01-24T06:55:19-13:00", "latitude": 40.857903, "longitude": -169.473438, "tags": [ "ex", "officia", "laborum", "aliqua", "id", "magna", "sint" ], "friends": [ { "id": 0, "name": "Maritza Callahan" }, { "id": 1, "name": "Tessa Christensen" }, { "id": 2, "name": "Carrie Salazar" } ], "greeting": "Hello, Shelley Porter! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea272ac05403b3006e34", "index": 3382, "guid": "b10fe106-5307-4c8e-aaf1-7c920593610a", "isActive": true, "balance": "$1,678.85", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Burch Emerson", "gender": "male", "company": "FOSSIEL", "email": "burchemerson@fossiel.com", "phone": "+1 (876) 549-3409", "address": "891 Martense Street, Nile, Arizona, 7691", "about": "Adipisicing aute duis deserunt amet tempor laborum esse cillum occaecat et eu tempor consequat. Voluptate sint commodo minim tempor pariatur incididunt ullamco do est proident mollit mollit. Proident cillum id exercitation quis consequat commodo consectetur est irure consequat do eu.\r\n", "registered": "2014-01-28T14:17:57-13:00", "latitude": 52.33662, "longitude": 6.288112, "tags": [ "non", "consequat", "sint", "sint", "culpa", "id", "duis" ], "friends": [ { "id": 0, "name": "Bridgett Velasquez" }, { "id": 1, "name": "Robyn Chapman" }, { "id": 2, "name": "Mildred Jennings" } ], "greeting": "Hello, Burch Emerson! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27f9b574218a18d1f1", "index": 3383, "guid": "6f5329f3-64b2-4b57-b26c-f56ef3783c5e", "isActive": true, "balance": "$1,394.01", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Deirdre Logan", "gender": "female", "company": "KEGULAR", "email": "deirdrelogan@kegular.com", "phone": "+1 (965) 577-2959", "address": "106 Blake Court, Epworth, Federated States Of Micronesia, 2659", "about": "Sint elit deserunt in ullamco esse officia excepteur. Esse amet commodo commodo consequat cillum reprehenderit pariatur eiusmod aliquip culpa reprehenderit laborum. Dolore ad incididunt cillum culpa. Ea tempor irure in incididunt esse pariatur.\r\n", "registered": "2014-02-27T15:35:19-13:00", "latitude": -73.214832, "longitude": 163.105148, "tags": [ "esse", "dolore", "cillum", "est", "id", "magna", "ex" ], "friends": [ { "id": 0, "name": "Fannie Sloan" }, { "id": 1, "name": "May Lamb" }, { "id": 2, "name": "Rhonda Jensen" } ], "greeting": "Hello, Deirdre Logan! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea275ea10897d35cf86c", "index": 3384, "guid": "25267396-6781-474c-9a84-bb0f48c2cb1b", "isActive": false, "balance": "$1,387.80", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Huff Carrillo", "gender": "male", "company": "ACUMENTOR", "email": "huffcarrillo@acumentor.com", "phone": "+1 (901) 542-3082", "address": "465 Morton Street, Loveland, Oklahoma, 1714", "about": "Sint enim labore veniam do cupidatat cupidatat sit proident eiusmod tempor tempor. Dolor veniam aliquip nostrud dolore eu laborum nulla aute cillum qui nostrud. Veniam reprehenderit qui nisi excepteur nulla laboris. Non voluptate tempor irure reprehenderit occaecat eiusmod irure aute deserunt sint. Est pariatur deserunt qui id nisi aliqua. Eiusmod ex id aliqua voluptate.\r\n", "registered": "2014-08-16T16:19:28-12:00", "latitude": 56.600734, "longitude": -13.644411, "tags": [ "cillum", "Lorem", "do", "laborum", "tempor", "incididunt", "ut" ], "friends": [ { "id": 0, "name": "Irma Mccarthy" }, { "id": 1, "name": "Trujillo Salas" }, { "id": 2, "name": "Mcfarland Castillo" } ], "greeting": "Hello, Huff Carrillo! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27c88e9d3edd627e73", "index": 3385, "guid": "8d064cdb-2bf6-421c-984f-5a25457f2f1b", "isActive": false, "balance": "$2,214.20", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Cherry Tanner", "gender": "female", "company": "QUILK", "email": "cherrytanner@quilk.com", "phone": "+1 (807) 468-2255", "address": "173 Dennett Place, Thornport, Michigan, 1087", "about": "Consequat Lorem tempor Lorem amet non amet consequat exercitation. Magna in excepteur cupidatat ad mollit Lorem exercitation ipsum laborum. Ut tempor ut incididunt esse dolore qui ipsum non.\r\n", "registered": "2014-01-23T07:14:59-13:00", "latitude": -89.22686, "longitude": -45.748239, "tags": [ "consequat", "eiusmod", "minim", "aliqua", "sit", "nostrud", "nostrud" ], "friends": [ { "id": 0, "name": "Angelica Chase" }, { "id": 1, "name": "Leola Suarez" }, { "id": 2, "name": "Strong Leonard" } ], "greeting": "Hello, Cherry Tanner! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea279477a50c41968355", "index": 3386, "guid": "6879c92d-dd10-4b91-948e-51421b4b717f", "isActive": true, "balance": "$2,919.62", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Stacie Castro", "gender": "female", "company": "ZEDALIS", "email": "staciecastro@zedalis.com", "phone": "+1 (951) 528-3442", "address": "644 Graham Avenue, Manila, Kansas, 3428", "about": "Culpa Lorem ut deserunt amet fugiat sint ea exercitation aute in dolore ea tempor aliquip. Commodo nostrud esse quis reprehenderit veniam id nulla cillum cillum incididunt. Cillum fugiat quis cillum magna irure consectetur. Eiusmod anim nulla cupidatat consectetur laboris aute duis aliquip et laboris ullamco incididunt commodo laborum.\r\n", "registered": "2014-01-18T23:01:31-13:00", "latitude": -76.009039, "longitude": -155.253675, "tags": [ "reprehenderit", "sunt", "commodo", "sit", "excepteur", "consequat", "ex" ], "friends": [ { "id": 0, "name": "Alta Burks" }, { "id": 1, "name": "Lloyd Perry" }, { "id": 2, "name": "Sue Hansen" } ], "greeting": "Hello, Stacie Castro! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea274b181f5dca65da95", "index": 3387, "guid": "769a69b9-4f7c-4b62-ad56-5908e5af82e3", "isActive": false, "balance": "$3,597.53", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Cameron Avery", "gender": "male", "company": "COMTRACT", "email": "cameronavery@comtract.com", "phone": "+1 (942) 424-2035", "address": "462 Broadway , Dola, South Dakota, 2597", "about": "Aliqua deserunt irure laboris ad aute id et duis culpa. Laboris consequat sit eiusmod commodo nisi ad elit proident elit pariatur labore elit amet. In et voluptate voluptate qui sint ut anim dolore non minim sit irure fugiat. Do fugiat est minim ut ex enim amet labore exercitation.\r\n", "registered": "2014-03-10T18:50:28-13:00", "latitude": 27.313236, "longitude": -109.231603, "tags": [ "voluptate", "adipisicing", "exercitation", "irure", "veniam", "consequat", "eu" ], "friends": [ { "id": 0, "name": "Hammond Holman" }, { "id": 1, "name": "Riddle Boyle" }, { "id": 2, "name": "Serrano Bauer" } ], "greeting": "Hello, Cameron Avery! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27dff6de2e994d0f54", "index": 3388, "guid": "f7549f6e-4d5b-469e-a4c4-ca0d42669b64", "isActive": false, "balance": "$1,579.34", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Valenzuela Avila", "gender": "male", "company": "VERBUS", "email": "valenzuelaavila@verbus.com", "phone": "+1 (807) 571-2100", "address": "551 Woodruff Avenue, Mulino, West Virginia, 308", "about": "Quis quis in qui tempor eu Lorem minim non nisi laboris adipisicing labore irure ipsum. Laboris laboris aute adipisicing non qui esse nostrud do. Mollit eu excepteur non tempor pariatur anim exercitation pariatur consequat enim aute minim nisi. Duis incididunt sunt sunt laboris consectetur amet esse velit do officia sint aliquip ut do. Sint ut adipisicing amet incididunt id ut. Tempor cupidatat Lorem reprehenderit pariatur.\r\n", "registered": "2014-09-01T06:40:36-12:00", "latitude": 30.377137, "longitude": -83.398343, "tags": [ "ea", "eu", "laborum", "sint", "consequat", "laborum", "do" ], "friends": [ { "id": 0, "name": "Fletcher Vazquez" }, { "id": 1, "name": "Sampson Tucker" }, { "id": 2, "name": "Smith Swanson" } ], "greeting": "Hello, Valenzuela Avila! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2705b615e2dbc063df", "index": 3389, "guid": "2d1acc60-8a90-4ee2-b674-f51c15b4d027", "isActive": false, "balance": "$3,649.20", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Carlson Miles", "gender": "male", "company": "MUSANPOLY", "email": "carlsonmiles@musanpoly.com", "phone": "+1 (907) 554-3261", "address": "987 Clinton Street, Belleview, Texas, 4143", "about": "Incididunt proident elit culpa velit qui incididunt minim cillum incididunt elit. Officia ut veniam ea sint sunt commodo. Voluptate fugiat consequat magna dolore magna dolore dolor irure consectetur esse aute do veniam. Ut nostrud do officia culpa qui sint veniam in pariatur consequat proident eu voluptate reprehenderit. Commodo excepteur pariatur ipsum pariatur occaecat. Fugiat voluptate cupidatat dolor laborum excepteur pariatur eiusmod nostrud culpa incididunt nulla duis excepteur.\r\n", "registered": "2014-04-25T03:06:13-12:00", "latitude": -74.880745, "longitude": 95.871253, "tags": [ "irure", "eu", "in", "laborum", "sit", "id", "cupidatat" ], "friends": [ { "id": 0, "name": "Allie Hays" }, { "id": 1, "name": "Spencer Whitley" }, { "id": 2, "name": "Twila Stone" } ], "greeting": "Hello, Carlson Miles! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27ca004482444f6768", "index": 3390, "guid": "981a6794-6b9a-45e0-80cc-a51ba8675c15", "isActive": false, "balance": "$3,141.88", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Jaclyn Villarreal", "gender": "female", "company": "KIGGLE", "email": "jaclynvillarreal@kiggle.com", "phone": "+1 (804) 511-2378", "address": "950 Sunnyside Avenue, Magnolia, Oregon, 843", "about": "Cupidatat non laborum cillum magna occaecat excepteur dolore. Ea nostrud fugiat minim sunt nostrud occaecat amet id ullamco pariatur mollit reprehenderit. Non sunt ea ad do eiusmod cupidatat deserunt anim officia id. Cupidatat consequat aute incididunt Lorem dolore velit voluptate anim est et fugiat. Sint incididunt sit occaecat culpa veniam fugiat. Duis consectetur reprehenderit veniam cupidatat et esse in.\r\n", "registered": "2014-06-28T09:55:06-12:00", "latitude": -16.104201, "longitude": 59.113915, "tags": [ "aliqua", "enim", "exercitation", "voluptate", "incididunt", "in", "velit" ], "friends": [ { "id": 0, "name": "Goff Howe" }, { "id": 1, "name": "Jessica Keith" }, { "id": 2, "name": "Blevins Mayo" } ], "greeting": "Hello, Jaclyn Villarreal! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea270327734d08297897", "index": 3391, "guid": "8cb2290d-413d-4d3d-850a-b8f216cf5cd9", "isActive": false, "balance": "$1,783.25", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "George Rosales", "gender": "male", "company": "TERRASYS", "email": "georgerosales@terrasys.com", "phone": "+1 (893) 437-2759", "address": "106 Rapelye Street, Nelson, Nevada, 7904", "about": "Amet consequat esse ex reprehenderit culpa. Veniam minim eiusmod laborum et qui voluptate amet occaecat. Ipsum laborum do reprehenderit aliqua excepteur velit consectetur amet velit exercitation qui. Voluptate deserunt incididunt minim ipsum.\r\n", "registered": "2014-04-26T02:01:47-12:00", "latitude": 73.997319, "longitude": -30.877745, "tags": [ "cupidatat", "est", "qui", "amet", "eu", "et", "ipsum" ], "friends": [ { "id": 0, "name": "Becker Mason" }, { "id": 1, "name": "Bentley Warren" }, { "id": 2, "name": "Eugenia Barlow" } ], "greeting": "Hello, George Rosales! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27c34f5bbf596f6dfb", "index": 3392, "guid": "f491b90c-85fc-4ea7-8559-094c5ade1f26", "isActive": false, "balance": "$1,820.23", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Hogan Davis", "gender": "male", "company": "APPLICA", "email": "hogandavis@applica.com", "phone": "+1 (897) 506-3650", "address": "488 Alton Place, Deltaville, Minnesota, 8979", "about": "Duis id do officia non labore ullamco veniam consectetur commodo consequat. Cupidatat sunt do officia sunt. Exercitation reprehenderit eiusmod culpa ipsum mollit elit elit commodo velit minim id. Consequat sunt quis adipisicing eu pariatur eu voluptate sint exercitation Lorem adipisicing. Laboris ipsum consequat duis occaecat laborum laborum. Sunt pariatur occaecat reprehenderit est ex. Esse elit labore pariatur mollit labore proident pariatur amet excepteur id anim qui.\r\n", "registered": "2014-04-19T03:44:57-12:00", "latitude": -4.157851, "longitude": -9.273818, "tags": [ "non", "non", "dolore", "cupidatat", "Lorem", "fugiat", "et" ], "friends": [ { "id": 0, "name": "Ross Solis" }, { "id": 1, "name": "Dejesus Riggs" }, { "id": 2, "name": "Aileen Matthews" } ], "greeting": "Hello, Hogan Davis! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27797934358bb0ba24", "index": 3393, "guid": "a703454e-667f-440c-9be1-d4d6cc16393e", "isActive": true, "balance": "$1,549.58", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Mclean Petty", "gender": "male", "company": "ZIORE", "email": "mcleanpetty@ziore.com", "phone": "+1 (866) 407-3210", "address": "395 Eckford Street, Witmer, Missouri, 9305", "about": "Sunt fugiat commodo pariatur ipsum ipsum. Magna nulla dolore eu cillum duis esse proident. Quis cupidatat commodo sint est officia aute tempor ut. Reprehenderit est quis aliquip enim ad. Deserunt dolor sint consequat quis velit nisi nisi tempor non cupidatat sint voluptate mollit. Nulla culpa sit culpa tempor. Qui elit pariatur duis cillum anim esse adipisicing minim non.\r\n", "registered": "2014-02-14T13:22:26-13:00", "latitude": -5.563688, "longitude": 53.869995, "tags": [ "pariatur", "anim", "eu", "eiusmod", "ea", "duis", "est" ], "friends": [ { "id": 0, "name": "Gabriela Marshall" }, { "id": 1, "name": "Bishop Black" }, { "id": 2, "name": "Donna Sykes" } ], "greeting": "Hello, Mclean Petty! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27c39938bf1aed9eac", "index": 3394, "guid": "3c5de388-0715-4772-8e9b-7aa119b42a36", "isActive": true, "balance": "$1,112.05", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Sally Becker", "gender": "female", "company": "PAWNAGRA", "email": "sallybecker@pawnagra.com", "phone": "+1 (827) 495-2786", "address": "627 Sedgwick Street, Crawfordsville, Rhode Island, 7074", "about": "Proident eu dolor enim nostrud nulla ut velit Lorem anim. Nostrud eiusmod consectetur commodo laborum ad enim deserunt sint irure ut. Anim culpa laborum velit dolor amet do Lorem proident reprehenderit. Dolore est sunt eu irure exercitation adipisicing ipsum qui id veniam Lorem voluptate. Veniam eiusmod dolor sint quis et.\r\n", "registered": "2014-07-02T18:32:37-12:00", "latitude": -69.629947, "longitude": 161.834638, "tags": [ "velit", "non", "tempor", "mollit", "nulla", "et", "dolore" ], "friends": [ { "id": 0, "name": "Larson Cox" }, { "id": 1, "name": "Dianna Murphy" }, { "id": 2, "name": "Pat Kim" } ], "greeting": "Hello, Sally Becker! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27dbd52ca953b93330", "index": 3395, "guid": "85f77d57-c9d7-4b45-8785-6b7fa420b089", "isActive": false, "balance": "$3,858.30", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Ina Stafford", "gender": "female", "company": "MAGNINA", "email": "inastafford@magnina.com", "phone": "+1 (821) 517-3868", "address": "896 Amherst Street, Collins, Florida, 5285", "about": "Non est exercitation sint dolore nisi proident enim officia minim laboris cupidatat ullamco. Velit qui ipsum sint incididunt in nostrud nulla incididunt ea magna do. Ullamco magna mollit sunt ad velit laborum ad adipisicing eu reprehenderit. Ad ipsum laborum culpa elit ullamco sunt officia aliqua laboris. Ipsum dolor aliqua fugiat occaecat aute ullamco id ullamco elit.\r\n", "registered": "2014-03-28T10:07:52-13:00", "latitude": 50.452879, "longitude": -69.825282, "tags": [ "eiusmod", "qui", "eiusmod", "voluptate", "fugiat", "amet", "amet" ], "friends": [ { "id": 0, "name": "Gregory Daniel" }, { "id": 1, "name": "Kathy Hudson" }, { "id": 2, "name": "Coleman Snow" } ], "greeting": "Hello, Ina Stafford! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27566586622c828e77", "index": 3396, "guid": "635b90ef-09fd-4fd9-9d59-74872a2b0fb1", "isActive": true, "balance": "$1,500.54", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Bowers Patrick", "gender": "male", "company": "IMPERIUM", "email": "bowerspatrick@imperium.com", "phone": "+1 (996) 463-2936", "address": "315 Surf Avenue, Jessie, North Carolina, 4110", "about": "Lorem cillum esse culpa elit ex in aute ad enim. Cillum do qui consequat laborum ad magna in aute laborum commodo. Laboris sint commodo adipisicing eu ipsum aliquip Lorem do reprehenderit nostrud ut est.\r\n", "registered": "2014-01-01T07:06:10-13:00", "latitude": -7.328423, "longitude": -64.997201, "tags": [ "ea", "occaecat", "velit", "veniam", "minim", "ut", "deserunt" ], "friends": [ { "id": 0, "name": "Schroeder Padilla" }, { "id": 1, "name": "Leta Melendez" }, { "id": 2, "name": "Solomon Vasquez" } ], "greeting": "Hello, Bowers Patrick! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27f16752e013c188b9", "index": 3397, "guid": "d78b95c2-21e9-4bf0-bdbf-c77ab9dce683", "isActive": false, "balance": "$2,717.36", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Roy Tyler", "gender": "male", "company": "VERTON", "email": "roytyler@verton.com", "phone": "+1 (920) 487-3308", "address": "413 Guernsey Street, Sexton, New Hampshire, 7045", "about": "Pariatur nostrud aliquip velit sint. Magna minim irure fugiat esse. Mollit qui culpa ad officia voluptate ut officia occaecat mollit. Commodo aute reprehenderit irure laboris anim fugiat elit eiusmod in sunt. Magna sit dolor excepteur cupidatat elit cupidatat reprehenderit exercitation ex quis fugiat non in irure. Qui sit anim aliquip fugiat sunt.\r\n", "registered": "2014-07-19T07:13:48-12:00", "latitude": -86.745384, "longitude": -58.804856, "tags": [ "eu", "irure", "irure", "sit", "duis", "elit", "minim" ], "friends": [ { "id": 0, "name": "Abby Mooney" }, { "id": 1, "name": "Allen Garrison" }, { "id": 2, "name": "Lolita Best" } ], "greeting": "Hello, Roy Tyler! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2784f8b7bfbdcf582a", "index": 3398, "guid": "1267c063-12b3-4bbd-90ab-8d0ce91cd258", "isActive": true, "balance": "$1,774.95", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Elba Mccormick", "gender": "female", "company": "ENQUILITY", "email": "elbamccormick@enquility.com", "phone": "+1 (932) 568-3732", "address": "832 Gelston Avenue, Riceville, Arkansas, 9847", "about": "Do Lorem ullamco qui sint Lorem nostrud veniam esse. Consectetur tempor mollit occaecat consectetur aliqua ipsum esse ipsum labore et ut cupidatat dolor. Nisi pariatur laboris exercitation quis fugiat elit culpa consequat ullamco non dolor et. Sunt aliquip ad anim pariatur excepteur ad voluptate irure. Nostrud reprehenderit reprehenderit enim deserunt enim ullamco do laboris officia consectetur ad proident.\r\n", "registered": "2014-06-15T06:29:35-12:00", "latitude": 7.922501, "longitude": 108.532951, "tags": [ "est", "velit", "exercitation", "aute", "nisi", "amet", "laborum" ], "friends": [ { "id": 0, "name": "Maynard Cross" }, { "id": 1, "name": "Dean Albert" }, { "id": 2, "name": "Harmon Newton" } ], "greeting": "Hello, Elba Mccormick! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea276e5f37347b831e2b", "index": 3399, "guid": "fb2c4af6-0f5b-417c-a170-6abdddb516ce", "isActive": true, "balance": "$2,742.83", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Maryann Kemp", "gender": "female", "company": "ZANITY", "email": "maryannkemp@zanity.com", "phone": "+1 (870) 568-3801", "address": "208 Greenwood Avenue, Bethany, Iowa, 3227", "about": "Dolor ipsum ad deserunt in incididunt elit duis id aliqua ut. Deserunt consequat excepteur irure non reprehenderit voluptate quis irure qui nostrud. Laboris duis Lorem veniam nisi sunt incididunt mollit ex laboris do nostrud. Laborum excepteur ex sunt aliqua nisi labore Lorem. Adipisicing officia ullamco id qui sunt. Tempor ex elit quis commodo voluptate laboris sit consequat est aute. Sunt incididunt commodo velit nostrud culpa consectetur eu in.\r\n", "registered": "2014-04-01T10:04:54-13:00", "latitude": 44.81038, "longitude": -62.201823, "tags": [ "eiusmod", "do", "eu", "id", "amet", "nostrud", "tempor" ], "friends": [ { "id": 0, "name": "Elsie Nelson" }, { "id": 1, "name": "Franco Duke" }, { "id": 2, "name": "Terri Perez" } ], "greeting": "Hello, Maryann Kemp! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea278a18fd4bee3ec51a", "index": 3400, "guid": "1b41dc34-8454-44d2-8c8c-2aa3f9376ad6", "isActive": false, "balance": "$2,929.90", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Madden Hoffman", "gender": "male", "company": "OMNIGOG", "email": "maddenhoffman@omnigog.com", "phone": "+1 (982) 577-2819", "address": "137 Jerome Street, Idamay, Nebraska, 6154", "about": "Exercitation voluptate cillum amet tempor minim et elit non magna amet laboris. Ex eiusmod qui nisi minim qui. Ex ut sint laborum excepteur elit incididunt amet consequat ipsum occaecat enim. Minim proident ut sunt exercitation sunt sit eiusmod. Excepteur sunt tempor eu minim ut sint.\r\n", "registered": "2014-02-15T23:43:05-13:00", "latitude": 79.470282, "longitude": -166.464542, "tags": [ "duis", "et", "ut", "ut", "adipisicing", "elit", "aute" ], "friends": [ { "id": 0, "name": "Gross Waller" }, { "id": 1, "name": "Janell Bowman" }, { "id": 2, "name": "Rush Morales" } ], "greeting": "Hello, Madden Hoffman! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea274881c5f0b38c20f5", "index": 3401, "guid": "1a7b9146-832b-4c2f-ab03-fc2c503b9721", "isActive": false, "balance": "$3,732.69", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Tami Mejia", "gender": "female", "company": "COMVEX", "email": "tamimejia@comvex.com", "phone": "+1 (927) 591-3681", "address": "644 Mill Avenue, Moquino, District Of Columbia, 5563", "about": "Elit et qui irure ipsum eiusmod incididunt adipisicing nostrud do ut deserunt non. Ullamco ipsum ullamco sint minim amet ut aliqua. Consequat ex aliquip in laborum aute voluptate consequat occaecat veniam dolore velit.\r\n", "registered": "2014-06-16T13:47:34-12:00", "latitude": -23.405292, "longitude": 13.677304, "tags": [ "laboris", "nostrud", "ullamco", "nulla", "anim", "in", "amet" ], "friends": [ { "id": 0, "name": "Drake Hurst" }, { "id": 1, "name": "Raquel Kennedy" }, { "id": 2, "name": "Sylvia Farrell" } ], "greeting": "Hello, Tami Mejia! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2762f04c080dab496b", "index": 3402, "guid": "fca3040a-bd4d-4914-9e6b-179cd869a7e8", "isActive": true, "balance": "$1,716.72", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Lane Doyle", "gender": "male", "company": "FURNIGEER", "email": "lanedoyle@furnigeer.com", "phone": "+1 (993) 462-3712", "address": "220 Benson Avenue, Allamuchy, New Jersey, 428", "about": "Excepteur ut exercitation cupidatat deserunt. Lorem laborum culpa tempor nostrud quis minim ad magna id proident amet consequat ex. Ut reprehenderit id commodo dolore sit. Elit enim dolor proident duis irure laboris veniam mollit.\r\n", "registered": "2014-02-09T16:28:39-13:00", "latitude": 16.467942, "longitude": -147.366819, "tags": [ "est", "cupidatat", "ad", "laborum", "duis", "fugiat", "duis" ], "friends": [ { "id": 0, "name": "Alison Hoover" }, { "id": 1, "name": "Clemons Dalton" }, { "id": 2, "name": "Levy Mcdowell" } ], "greeting": "Hello, Lane Doyle! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea274d084e72b61e6945", "index": 3403, "guid": "c31f88b7-a352-4f28-a2da-0a0e1e152fdc", "isActive": false, "balance": "$3,040.21", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Jillian Marsh", "gender": "female", "company": "NITRACYR", "email": "jillianmarsh@nitracyr.com", "phone": "+1 (959) 460-3043", "address": "311 McKibben Street, Columbus, Palau, 6609", "about": "Esse elit minim sit dolor dolor ea ut dolor id ex in minim. Dolor nostrud nostrud aliqua commodo duis veniam occaecat incididunt anim sunt non. Duis qui elit dolore minim laboris deserunt aliqua ad proident eiusmod in. Dolor tempor et aliquip velit velit occaecat ad Lorem cupidatat aliquip eu.\r\n", "registered": "2014-09-16T15:56:30-12:00", "latitude": 36.485024, "longitude": -40.058416, "tags": [ "do", "amet", "incididunt", "ea", "eiusmod", "labore", "magna" ], "friends": [ { "id": 0, "name": "Yang Juarez" }, { "id": 1, "name": "Keith Dillard" }, { "id": 2, "name": "Sherrie Lee" } ], "greeting": "Hello, Jillian Marsh! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea275da6169a526d26b8", "index": 3404, "guid": "10e2685d-13d1-4906-bfd8-c0cb93987929", "isActive": true, "balance": "$1,813.30", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Naomi Mayer", "gender": "female", "company": "OATFARM", "email": "naomimayer@oatfarm.com", "phone": "+1 (998) 508-3970", "address": "498 Quentin Road, Calpine, Puerto Rico, 7267", "about": "Cupidatat sit excepteur ea fugiat in elit dolor aliqua cupidatat est id deserunt irure. Culpa enim sit nulla aute minim reprehenderit cupidatat sit. Et consectetur duis nisi nostrud ad non. Occaecat anim adipisicing minim ad commodo consectetur ad eu pariatur minim elit ullamco ad in. Magna consequat id amet ut eu. Veniam aliquip ullamco nulla aliqua consequat Lorem Lorem. Mollit incididunt ut deserunt velit aute ullamco irure.\r\n", "registered": "2014-07-17T07:32:06-12:00", "latitude": -35.618309, "longitude": 50.60728, "tags": [ "aute", "commodo", "consectetur", "ea", "tempor", "est", "deserunt" ], "friends": [ { "id": 0, "name": "Esther Beard" }, { "id": 1, "name": "Jocelyn Randolph" }, { "id": 2, "name": "Neva Rocha" } ], "greeting": "Hello, Naomi Mayer! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27a29dc669fe7aed56", "index": 3405, "guid": "934b050a-664a-434f-b963-c0b47edd385e", "isActive": true, "balance": "$3,757.22", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Sybil Owen", "gender": "female", "company": "JETSILK", "email": "sybilowen@jetsilk.com", "phone": "+1 (955) 512-2490", "address": "324 Hanover Place, Iberia, California, 2879", "about": "Id quis duis cillum laboris elit anim dolore et fugiat cillum ipsum nulla velit et. Ipsum ad ad officia et pariatur. Aliquip laborum pariatur et ipsum nulla cillum qui proident pariatur eu officia esse cillum. Consequat voluptate laboris consequat ipsum. Commodo enim adipisicing ad nulla eu velit aliquip irure enim ut cupidatat quis Lorem anim. Deserunt elit ex ea eu dolore eu veniam minim. Dolor consectetur velit irure eiusmod aute ipsum proident nisi.\r\n", "registered": "2014-01-21T06:22:35-13:00", "latitude": 45.514899, "longitude": 148.075855, "tags": [ "nisi", "fugiat", "aliquip", "laboris", "elit", "aliqua", "ea" ], "friends": [ { "id": 0, "name": "Hodge Justice" }, { "id": 1, "name": "Booker Walters" }, { "id": 2, "name": "Liz Moon" } ], "greeting": "Hello, Sybil Owen! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27a00569bbc2d0cdc2", "index": 3406, "guid": "19d50bef-8020-4c9d-bda3-ee713068a931", "isActive": true, "balance": "$1,477.44", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Ashley Byers", "gender": "female", "company": "BOSTONIC", "email": "ashleybyers@bostonic.com", "phone": "+1 (896) 425-3480", "address": "473 President Street, Sisquoc, Vermont, 796", "about": "Aliqua est cillum nostrud laborum ea ullamco occaecat do deserunt enim officia excepteur. Irure pariatur quis consequat cillum fugiat irure fugiat cupidatat esse occaecat culpa aliquip amet. Fugiat consectetur et magna ea occaecat exercitation proident elit deserunt. Cupidatat ipsum ad ea enim exercitation ad exercitation. Ipsum consectetur laboris fugiat proident officia id id est eiusmod tempor reprehenderit.\r\n", "registered": "2014-09-05T23:53:42-12:00", "latitude": 82.694779, "longitude": 31.982512, "tags": [ "amet", "fugiat", "voluptate", "quis", "aliquip", "deserunt", "excepteur" ], "friends": [ { "id": 0, "name": "Duffy Mcdaniel" }, { "id": 1, "name": "Velazquez Pearson" }, { "id": 2, "name": "Golden Mcintosh" } ], "greeting": "Hello, Ashley Byers! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27bb38167e2ba41afd", "index": 3407, "guid": "ab5ce566-76b9-4c10-95a4-4fc5d95d6205", "isActive": false, "balance": "$3,571.64", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Diaz Robertson", "gender": "male", "company": "CODAX", "email": "diazrobertson@codax.com", "phone": "+1 (839) 422-2579", "address": "343 Linden Boulevard, Odessa, Indiana, 3740", "about": "Id consequat consectetur voluptate et. Laboris ut deserunt cillum proident tempor nisi nulla Lorem sint esse occaecat deserunt. Occaecat officia in magna consequat enim fugiat dolor aliquip pariatur.\r\n", "registered": "2014-06-10T01:45:20-12:00", "latitude": -73.941659, "longitude": -117.978278, "tags": [ "ut", "esse", "dolore", "in", "anim", "veniam", "officia" ], "friends": [ { "id": 0, "name": "Liliana Sherman" }, { "id": 1, "name": "Kate Gillespie" }, { "id": 2, "name": "Faith Glass" } ], "greeting": "Hello, Diaz Robertson! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27a0c3d80ef0bc105b", "index": 3408, "guid": "dc95d198-2eb0-4487-b3a6-63c1369965d4", "isActive": true, "balance": "$3,187.87", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Vargas Wells", "gender": "male", "company": "MOBILDATA", "email": "vargaswells@mobildata.com", "phone": "+1 (851) 556-3914", "address": "628 Monitor Street, Tyro, Illinois, 6428", "about": "Est Lorem esse cillum amet ut proident ex tempor est eiusmod amet. Pariatur proident officia ut in nisi dolor. Eu ipsum reprehenderit id laborum sit. Nulla tempor amet esse voluptate duis laborum enim proident voluptate magna aliqua labore officia.\r\n", "registered": "2014-06-15T15:43:19-12:00", "latitude": -85.648331, "longitude": 119.115015, "tags": [ "incididunt", "non", "dolor", "ipsum", "sit", "officia", "labore" ], "friends": [ { "id": 0, "name": "Irwin Love" }, { "id": 1, "name": "Harrington Owens" }, { "id": 2, "name": "Ramirez Levy" } ], "greeting": "Hello, Vargas Wells! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27ba95078bfc178a42", "index": 3409, "guid": "3ab45e89-45ff-4786-975b-bc1108f5542e", "isActive": false, "balance": "$3,616.29", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Pansy Dillon", "gender": "female", "company": "BITTOR", "email": "pansydillon@bittor.com", "phone": "+1 (858) 518-3599", "address": "165 Ide Court, Cashtown, South Carolina, 6398", "about": "Exercitation cupidatat non enim cillum. Ut eu deserunt deserunt aliquip consequat est amet sint amet sit esse. Incididunt exercitation velit velit reprehenderit sit esse aute commodo cupidatat commodo. Magna fugiat aliqua minim nisi occaecat pariatur cupidatat nostrud Lorem aliqua nostrud ut aliqua aliqua. Eiusmod amet laboris elit in do in ullamco aliqua amet nisi. Adipisicing quis cillum eiusmod sit in cillum sint consectetur deserunt nostrud.\r\n", "registered": "2014-05-15T18:24:10-12:00", "latitude": 27.047258, "longitude": -100.818084, "tags": [ "consectetur", "do", "non", "irure", "proident", "occaecat", "anim" ], "friends": [ { "id": 0, "name": "Chelsea Williamson" }, { "id": 1, "name": "Roth Ware" }, { "id": 2, "name": "Cannon Alston" } ], "greeting": "Hello, Pansy Dillon! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27363cf0a705e83bd7", "index": 3410, "guid": "90b971b3-679e-4830-9290-0cacfbb30a21", "isActive": false, "balance": "$3,849.24", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Joyner Nieves", "gender": "male", "company": "COMBOGEN", "email": "joynernieves@combogen.com", "phone": "+1 (862) 503-2058", "address": "475 Applegate Court, Barrelville, American Samoa, 6511", "about": "Dolor in consequat ad nulla ipsum consequat dolor laborum laboris deserunt. Velit commodo quis culpa consequat consectetur dolor aute tempor nisi nisi fugiat. Et id commodo culpa consectetur non ipsum ut pariatur dolore irure reprehenderit. Lorem et enim consequat dolore incididunt elit aliqua pariatur aute. Enim enim ut nostrud ipsum esse dolor laborum ad mollit. Et nisi laborum exercitation ea sit. Ut elit non non aute reprehenderit id excepteur ipsum enim sunt do cillum.\r\n", "registered": "2014-06-01T23:51:02-12:00", "latitude": -52.495561, "longitude": -100.644063, "tags": [ "ut", "amet", "do", "proident", "dolor", "laborum", "ea" ], "friends": [ { "id": 0, "name": "Gilda Deleon" }, { "id": 1, "name": "Susana Parrish" }, { "id": 2, "name": "Lara Farley" } ], "greeting": "Hello, Joyner Nieves! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea270ed7ff3d8978c52d", "index": 3411, "guid": "339131e9-eba6-4b5c-80f9-0b871b461100", "isActive": true, "balance": "$2,853.51", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Nieves Pugh", "gender": "male", "company": "ZYTRAX", "email": "nievespugh@zytrax.com", "phone": "+1 (899) 549-2857", "address": "241 Midwood Street, Kula, Delaware, 9575", "about": "Proident in ad anim irure eu. Minim laboris nostrud eiusmod nulla laborum labore reprehenderit laborum deserunt cupidatat amet eu. Amet sunt voluptate irure ut aliqua amet. Velit aliqua fugiat sit Lorem Lorem cupidatat.\r\n", "registered": "2014-08-04T05:08:27-12:00", "latitude": -52.372294, "longitude": 120.190342, "tags": [ "ut", "id", "officia", "et", "consectetur", "consequat", "magna" ], "friends": [ { "id": 0, "name": "Freida Barber" }, { "id": 1, "name": "Collier Hayes" }, { "id": 2, "name": "Herrera Pennington" } ], "greeting": "Hello, Nieves Pugh! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2704cfd6b9167ed9e3", "index": 3412, "guid": "bda7f411-1d50-4599-a8f6-a1837b756886", "isActive": false, "balance": "$2,467.94", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Madge May", "gender": "female", "company": "OTHERSIDE", "email": "madgemay@otherside.com", "phone": "+1 (847) 570-2842", "address": "442 Ovington Avenue, Bawcomville, Pennsylvania, 7457", "about": "Et consequat et do culpa pariatur sit nostrud in ad anim et sint. Culpa duis quis labore laborum non. Ex nostrud duis culpa officia ex fugiat esse adipisicing laborum id proident ipsum fugiat.\r\n", "registered": "2014-03-02T09:06:46-13:00", "latitude": 27.778465, "longitude": -68.766665, "tags": [ "anim", "veniam", "incididunt", "ut", "mollit", "ex", "veniam" ], "friends": [ { "id": 0, "name": "Malinda Hyde" }, { "id": 1, "name": "Alana Nunez" }, { "id": 2, "name": "Ramona Hodge" } ], "greeting": "Hello, Madge May! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea272f8bcdacd61a4efb", "index": 3413, "guid": "a0ffca64-d68b-463e-ad33-403605585568", "isActive": false, "balance": "$2,491.53", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Pitts Dominguez", "gender": "male", "company": "TERSANKI", "email": "pittsdominguez@tersanki.com", "phone": "+1 (854) 518-3455", "address": "476 Barbey Street, Hartsville/Hartley, Georgia, 7484", "about": "Id do enim labore elit officia deserunt fugiat mollit non ea amet. Exercitation quis fugiat non eiusmod elit nostrud anim excepteur. Qui sit aliquip laborum veniam minim labore sunt labore duis proident voluptate. Ullamco nostrud cillum ad fugiat eiusmod non. Nulla amet dolore irure dolor est proident elit excepteur ipsum aliquip ipsum. Officia quis cupidatat nisi mollit incididunt minim elit.\r\n", "registered": "2014-07-18T09:29:36-12:00", "latitude": 32.959362, "longitude": 34.012154, "tags": [ "sunt", "laborum", "exercitation", "aliqua", "aute", "nulla", "labore" ], "friends": [ { "id": 0, "name": "Darla Mitchell" }, { "id": 1, "name": "Dennis Rogers" }, { "id": 2, "name": "Chris Odom" } ], "greeting": "Hello, Pitts Dominguez! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea274c3c86f4fb05fe95", "index": 3414, "guid": "5e45be9c-df65-4af2-bce6-e277eaa5148d", "isActive": false, "balance": "$3,708.24", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Nona Brock", "gender": "female", "company": "DIGIFAD", "email": "nonabrock@digifad.com", "phone": "+1 (923) 493-2266", "address": "587 Beverly Road, Courtland, North Dakota, 7581", "about": "Non et quis quis ullamco aute officia velit. Eiusmod eu ex aute pariatur id qui anim veniam do magna. Non dolor aliquip tempor do enim qui culpa aliquip Lorem cupidatat mollit ut. Minim elit dolore esse pariatur nisi consectetur cillum occaecat enim laborum tempor.\r\n", "registered": "2014-08-16T19:58:17-12:00", "latitude": -21.037472, "longitude": 161.433404, "tags": [ "nisi", "ullamco", "sunt", "sunt", "proident", "sint", "duis" ], "friends": [ { "id": 0, "name": "Hardin Dixon" }, { "id": 1, "name": "Cindy Barnes" }, { "id": 2, "name": "Terry Massey" } ], "greeting": "Hello, Nona Brock! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27339817269a667082", "index": 3415, "guid": "737c1293-d919-46a5-b48f-61708eb57272", "isActive": true, "balance": "$1,586.44", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Gretchen Morton", "gender": "female", "company": "PLASMOX", "email": "gretchenmorton@plasmox.com", "phone": "+1 (976) 409-2713", "address": "465 Llama Court, Cedarville, Louisiana, 6061", "about": "Cupidatat aliqua incididunt consectetur non consequat ullamco proident nulla ad consectetur culpa exercitation voluptate. Magna nostrud voluptate incididunt aliqua enim. Ipsum anim laboris deserunt id eiusmod sint eu proident eu ex sit duis.\r\n", "registered": "2014-05-17T00:57:05-12:00", "latitude": -75.797896, "longitude": 58.367204, "tags": [ "adipisicing", "non", "ea", "et", "incididunt", "nulla", "id" ], "friends": [ { "id": 0, "name": "Loraine Landry" }, { "id": 1, "name": "Willis Garcia" }, { "id": 2, "name": "Lucia Bowers" } ], "greeting": "Hello, Gretchen Morton! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27325800fc022b1145", "index": 3416, "guid": "1b65f17c-7063-4d11-84ae-86745dff645b", "isActive": true, "balance": "$1,907.79", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Rocha Whitaker", "gender": "male", "company": "PROGENEX", "email": "rochawhitaker@progenex.com", "phone": "+1 (926) 427-3140", "address": "891 Rewe Street, Hickory, Northern Mariana Islands, 2567", "about": "Nostrud nulla culpa aliquip nisi ex. Cillum veniam laborum cupidatat incididunt veniam ipsum minim amet aute nostrud. Culpa sunt nulla minim reprehenderit irure dolore sunt. Consectetur laboris elit anim laboris culpa esse. Pariatur nulla Lorem est do nostrud est et.\r\n", "registered": "2014-06-28T07:14:19-12:00", "latitude": 12.844045, "longitude": -11.705596, "tags": [ "id", "qui", "ullamco", "nostrud", "fugiat", "non", "enim" ], "friends": [ { "id": 0, "name": "Robinson Gordon" }, { "id": 1, "name": "Whitney Downs" }, { "id": 2, "name": "Ora Rose" } ], "greeting": "Hello, Rocha Whitaker! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27e9deda2ac0b7eee5", "index": 3417, "guid": "57ea061a-9be3-4b31-bbe7-c7f5020777ca", "isActive": false, "balance": "$3,084.92", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Crawford Blackwell", "gender": "male", "company": "FISHLAND", "email": "crawfordblackwell@fishland.com", "phone": "+1 (943) 489-3902", "address": "969 Vandalia Avenue, Dowling, Colorado, 3788", "about": "Lorem cillum ullamco ullamco quis excepteur voluptate non est enim minim mollit tempor sit pariatur. Do eiusmod in ipsum mollit tempor cupidatat esse do eu consectetur cupidatat nisi dolore. Deserunt mollit ad aliquip laborum qui officia commodo velit. Amet qui aliquip ex ipsum.\r\n", "registered": "2014-07-12T15:21:51-12:00", "latitude": 55.819683, "longitude": -93.831283, "tags": [ "sint", "sint", "aliqua", "non", "ipsum", "fugiat", "nulla" ], "friends": [ { "id": 0, "name": "Barlow Steele" }, { "id": 1, "name": "Bridgette Dorsey" }, { "id": 2, "name": "Tamera Burch" } ], "greeting": "Hello, Crawford Blackwell! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2719112b6232f8914f", "index": 3418, "guid": "16e1f7be-4481-4b47-be3a-9e850eaa2a77", "isActive": false, "balance": "$1,307.20", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Fitzpatrick Miller", "gender": "male", "company": "TERAPRENE", "email": "fitzpatrickmiller@teraprene.com", "phone": "+1 (883) 416-3370", "address": "276 Ford Street, Romeville, Idaho, 1158", "about": "Consectetur Lorem proident pariatur culpa commodo cillum sit sint aute eu labore labore. Ullamco id sit ut laborum non. Veniam velit ex laboris duis eu ex ipsum tempor commodo dolore aliqua. Reprehenderit duis officia qui cillum mollit officia incididunt nulla ipsum. Amet qui ut pariatur consequat magna esse commodo do proident. Nisi ea reprehenderit excepteur ipsum eiusmod proident irure qui.\r\n", "registered": "2014-06-02T10:42:13-12:00", "latitude": 23.340991, "longitude": -142.155385, "tags": [ "voluptate", "nostrud", "aliquip", "cillum", "deserunt", "dolore", "ea" ], "friends": [ { "id": 0, "name": "Lillie Gross" }, { "id": 1, "name": "Cruz Rowe" }, { "id": 2, "name": "Cristina Fitzgerald" } ], "greeting": "Hello, Fitzpatrick Miller! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2706997568a9de6582", "index": 3419, "guid": "ff400956-63be-4919-b367-248012fb1ae0", "isActive": false, "balance": "$1,462.10", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Michael Burris", "gender": "female", "company": "AQUOAVO", "email": "michaelburris@aquoavo.com", "phone": "+1 (952) 523-2727", "address": "294 Quincy Street, Thomasville, Marshall Islands, 1778", "about": "Est sunt anim anim nulla occaecat cillum aliqua sit aute. Pariatur in excepteur deserunt cillum laborum. Ex anim elit excepteur proident nisi et excepteur sint aliquip pariatur aliqua eu. Laborum magna dolor aute qui duis laboris laborum voluptate dolor sit nostrud fugiat. Laboris officia sint reprehenderit ipsum adipisicing consectetur. Consequat adipisicing esse incididunt laboris laboris qui veniam culpa incididunt eiusmod.\r\n", "registered": "2014-08-04T20:17:37-12:00", "latitude": 42.553081, "longitude": 16.02008, "tags": [ "occaecat", "Lorem", "nulla", "do", "adipisicing", "velit", "commodo" ], "friends": [ { "id": 0, "name": "Callahan Case" }, { "id": 1, "name": "Ortega Hines" }, { "id": 2, "name": "Stout Contreras" } ], "greeting": "Hello, Michael Burris! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea277e48a6eaf98be260", "index": 3420, "guid": "c5637be6-9242-4c9a-87ca-ce3747455ddf", "isActive": false, "balance": "$2,799.73", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Boyd Chen", "gender": "male", "company": "ISOSPHERE", "email": "boydchen@isosphere.com", "phone": "+1 (947) 447-3201", "address": "391 Underhill Avenue, Roland, New York, 8405", "about": "Lorem in irure et laborum sunt. Veniam nostrud ipsum excepteur eiusmod duis do aliqua. Laborum sunt id esse nisi. Excepteur aliqua quis nostrud mollit eiusmod.\r\n", "registered": "2014-07-19T02:15:56-12:00", "latitude": 24.204025, "longitude": 73.713089, "tags": [ "deserunt", "officia", "id", "magna", "labore", "veniam", "sint" ], "friends": [ { "id": 0, "name": "Dickerson Bean" }, { "id": 1, "name": "Valdez Burns" }, { "id": 2, "name": "Minnie Bruce" } ], "greeting": "Hello, Boyd Chen! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea278af31a87e53964dc", "index": 3421, "guid": "a7fca551-1b88-45f3-b928-306a20045afb", "isActive": true, "balance": "$3,403.12", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Sheree Gilliam", "gender": "female", "company": "UNI", "email": "shereegilliam@uni.com", "phone": "+1 (837) 474-3943", "address": "879 Herkimer Court, Brutus, Guam, 1286", "about": "Elit minim aute in culpa occaecat ea irure ut est laborum deserunt ipsum. Do qui amet ad tempor elit nisi magna voluptate incididunt laboris eu pariatur. Lorem tempor id quis aliquip ipsum enim consectetur ad labore quis irure ea.\r\n", "registered": "2014-01-21T21:15:16-13:00", "latitude": -34.864066, "longitude": -132.50551, "tags": [ "proident", "dolor", "id", "minim", "sunt", "sunt", "ad" ], "friends": [ { "id": 0, "name": "Adriana Weiss" }, { "id": 1, "name": "Stanley Sharp" }, { "id": 2, "name": "Serena Rivera" } ], "greeting": "Hello, Sheree Gilliam! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea271e474b9e57b906fb", "index": 3422, "guid": "abcf74a8-5ed1-4f4a-8fc4-de549eb898aa", "isActive": true, "balance": "$3,875.54", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Erma Hobbs", "gender": "female", "company": "ZAGGLE", "email": "ermahobbs@zaggle.com", "phone": "+1 (881) 428-2928", "address": "727 Royce Place, Norwood, Virgin Islands, 6140", "about": "Excepteur sunt esse eiusmod qui quis fugiat ad veniam et labore eiusmod exercitation. Consequat fugiat magna mollit sint. Mollit consequat reprehenderit ullamco pariatur adipisicing laboris proident labore est consequat nulla veniam cupidatat ex.\r\n", "registered": "2014-06-12T22:02:55-12:00", "latitude": 39.794381, "longitude": -82.442916, "tags": [ "quis", "velit", "cillum", "cupidatat", "qui", "cillum", "culpa" ], "friends": [ { "id": 0, "name": "Aline Parker" }, { "id": 1, "name": "Forbes West" }, { "id": 2, "name": "Berry Peck" } ], "greeting": "Hello, Erma Hobbs! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27e5e3b0463c482a18", "index": 3423, "guid": "af97393f-5722-4ad2-bc7e-1d37929566d1", "isActive": true, "balance": "$2,052.71", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Eddie Hogan", "gender": "female", "company": "DIGIGENE", "email": "eddiehogan@digigene.com", "phone": "+1 (896) 546-2426", "address": "124 Bushwick Court, Falconaire, Massachusetts, 4013", "about": "Est culpa tempor esse consequat Lorem. Ad culpa aliqua quis minim veniam occaecat qui ut deserunt. Aliquip velit eu cupidatat magna enim adipisicing enim do pariatur. Minim irure cillum ea ex dolore ad labore tempor pariatur.\r\n", "registered": "2014-01-08T16:56:51-13:00", "latitude": 87.206848, "longitude": -20.08243, "tags": [ "et", "irure", "Lorem", "eu", "aliqua", "ut", "sint" ], "friends": [ { "id": 0, "name": "Hancock Coffey" }, { "id": 1, "name": "Judy Snider" }, { "id": 2, "name": "Caldwell Flores" } ], "greeting": "Hello, Eddie Hogan! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea270f957dc71d3906b3", "index": 3424, "guid": "be65f339-d122-49fe-9d36-4034a927da54", "isActive": false, "balance": "$2,944.87", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Myra Harrell", "gender": "female", "company": "SILODYNE", "email": "myraharrell@silodyne.com", "phone": "+1 (816) 464-2959", "address": "128 Schenck Avenue, Stonybrook, Utah, 8955", "about": "Deserunt consectetur ut culpa labore ex dolore sunt commodo eiusmod velit ad consectetur tempor. Ea id ipsum veniam minim ea enim esse. Adipisicing laboris eiusmod ullamco irure pariatur enim magna commodo.\r\n", "registered": "2014-07-14T06:45:52-12:00", "latitude": 22.316405, "longitude": -126.817749, "tags": [ "exercitation", "dolore", "nostrud", "minim", "officia", "aute", "aliquip" ], "friends": [ { "id": 0, "name": "Katie Henson" }, { "id": 1, "name": "Imogene Booth" }, { "id": 2, "name": "Bettye Willis" } ], "greeting": "Hello, Myra Harrell! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27c035bb63283b8147", "index": 3425, "guid": "a56d1e41-77ec-4222-9c06-5cffa134ab04", "isActive": true, "balance": "$1,550.02", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Knapp Carpenter", "gender": "male", "company": "MANTRIX", "email": "knappcarpenter@mantrix.com", "phone": "+1 (937) 547-3167", "address": "970 Bath Avenue, Keller, Montana, 7900", "about": "Exercitation amet ex aliqua eiusmod amet cupidatat occaecat. Esse mollit duis aute Lorem nostrud. Enim dolore laboris ullamco esse. Reprehenderit anim laborum labore aliquip aute anim duis quis anim laboris exercitation adipisicing irure. Duis cupidatat id ipsum pariatur minim velit exercitation voluptate eiusmod nisi minim excepteur elit ad. Ut aliquip anim nulla ipsum adipisicing.\r\n", "registered": "2014-07-24T21:32:19-12:00", "latitude": 9.419716, "longitude": 108.73786, "tags": [ "veniam", "esse", "sint", "consequat", "culpa", "excepteur", "pariatur" ], "friends": [ { "id": 0, "name": "Audra Pena" }, { "id": 1, "name": "Evangeline Washington" }, { "id": 2, "name": "Lowery Potter" } ], "greeting": "Hello, Knapp Carpenter! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27d3b799304463bab3", "index": 3426, "guid": "95fe4bfe-da0c-4ce8-8cf6-a7bdfbbf9e42", "isActive": true, "balance": "$3,792.16", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Casandra Gates", "gender": "female", "company": "ENTALITY", "email": "casandragates@entality.com", "phone": "+1 (970) 482-3226", "address": "564 Woodbine Street, Rivera, Wisconsin, 7840", "about": "Eiusmod do in laboris esse. Esse dolore proident id culpa sint ipsum cupidatat minim. Ut irure exercitation occaecat incididunt id. Occaecat fugiat culpa ut reprehenderit cupidatat adipisicing velit Lorem eiusmod elit consectetur magna ullamco commodo. Incididunt minim deserunt eiusmod non elit. Dolore culpa aliqua pariatur ullamco aliqua aliqua. Excepteur aliqua enim aliqua dolore duis tempor et et.\r\n", "registered": "2014-04-11T18:24:39-12:00", "latitude": -78.202249, "longitude": 55.526095, "tags": [ "sint", "ex", "ullamco", "exercitation", "magna", "consequat", "incididunt" ], "friends": [ { "id": 0, "name": "Marquez Hopkins" }, { "id": 1, "name": "Daniel Gilbert" }, { "id": 2, "name": "Bonita Walls" } ], "greeting": "Hello, Casandra Gates! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea272cd909bd398f196b", "index": 3427, "guid": "ddf1090f-d359-4caa-a962-193ea34efd8d", "isActive": true, "balance": "$2,887.21", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Denise Franklin", "gender": "female", "company": "DYMI", "email": "denisefranklin@dymi.com", "phone": "+1 (918) 502-2111", "address": "405 Waldorf Court, Fillmore, Maine, 6859", "about": "Duis veniam enim irure ullamco. Sint minim ut voluptate sint. Proident dolore eu veniam dolore ut exercitation Lorem eu. Proident ullamco elit eu laboris ad ipsum commodo eiusmod commodo. Reprehenderit eiusmod labore dolore ipsum duis. Consectetur ea minim non id cupidatat adipisicing nostrud reprehenderit dolor magna aute laborum.\r\n", "registered": "2014-02-24T22:18:52-13:00", "latitude": 81.414673, "longitude": -16.458206, "tags": [ "commodo", "in", "dolor", "consectetur", "dolor", "aute", "exercitation" ], "friends": [ { "id": 0, "name": "Briggs Reed" }, { "id": 1, "name": "Consuelo Odonnell" }, { "id": 2, "name": "Arline Chang" } ], "greeting": "Hello, Denise Franklin! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea275012c74e44538b85", "index": 3428, "guid": "de29ecbc-fef1-46b6-b260-35b656fa9458", "isActive": false, "balance": "$1,440.54", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Enid Snyder", "gender": "female", "company": "GLASSTEP", "email": "enidsnyder@glasstep.com", "phone": "+1 (846) 417-3699", "address": "363 Osborn Street, Marenisco, Virginia, 1247", "about": "Id sit voluptate aliquip id elit laboris qui id duis tempor incididunt dolore officia excepteur. Amet sit fugiat non dolore Lorem reprehenderit consectetur adipisicing culpa nostrud ex ea sit. Aute ullamco est ipsum sunt eu occaecat.\r\n", "registered": "2014-01-03T10:05:52-13:00", "latitude": 29.671858, "longitude": 49.180888, "tags": [ "voluptate", "labore", "excepteur", "cupidatat", "Lorem", "deserunt", "excepteur" ], "friends": [ { "id": 0, "name": "Christensen Elliott" }, { "id": 1, "name": "Diana Neal" }, { "id": 2, "name": "Vera Boone" } ], "greeting": "Hello, Enid Snyder! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2799c547759cd543c6", "index": 3429, "guid": "3aaea478-f0bf-4e9a-b729-988a7636d590", "isActive": true, "balance": "$2,785.34", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Corine Valencia", "gender": "female", "company": "SYNKGEN", "email": "corinevalencia@synkgen.com", "phone": "+1 (848) 548-2091", "address": "147 Will Place, Stewartville, Kentucky, 3079", "about": "Labore velit velit sint reprehenderit id eu officia consectetur commodo tempor consectetur exercitation laboris. Aliqua id veniam do Lorem esse irure nostrud fugiat laboris pariatur veniam duis laborum in. Ut laborum aute excepteur velit exercitation nulla amet dolore sunt adipisicing adipisicing.\r\n", "registered": "2014-01-04T03:59:32-13:00", "latitude": 48.487726, "longitude": 29.08188, "tags": [ "qui", "excepteur", "do", "ut", "culpa", "occaecat", "mollit" ], "friends": [ { "id": 0, "name": "Ola Robinson" }, { "id": 1, "name": "Rhodes Macdonald" }, { "id": 2, "name": "Parks Santiago" } ], "greeting": "Hello, Corine Valencia! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27cff4069822817380", "index": 3430, "guid": "b622c975-754e-4fe5-98f0-bfff604716f6", "isActive": false, "balance": "$2,216.54", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Atkins Bartlett", "gender": "male", "company": "BIOLIVE", "email": "atkinsbartlett@biolive.com", "phone": "+1 (964) 490-2695", "address": "422 Strong Place, Greer, Connecticut, 354", "about": "Mollit dolor incididunt commodo proident nisi id occaecat voluptate id est. Tempor nostrud ullamco consequat aliqua dolor duis reprehenderit cupidatat sunt nostrud commodo officia excepteur. Cillum anim commodo irure voluptate consectetur Lorem voluptate eiusmod qui veniam commodo in.\r\n", "registered": "2014-07-09T00:36:33-12:00", "latitude": -73.591299, "longitude": 141.161225, "tags": [ "exercitation", "esse", "pariatur", "velit", "non", "consectetur", "consequat" ], "friends": [ { "id": 0, "name": "Adrian Weeks" }, { "id": 1, "name": "Tasha Lott" }, { "id": 2, "name": "Ayala Oconnor" } ], "greeting": "Hello, Atkins Bartlett! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27d94a1a6ed045f760", "index": 3431, "guid": "0a697876-2061-4bc3-aa70-d41c8345db80", "isActive": true, "balance": "$1,468.03", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Melva Dejesus", "gender": "female", "company": "INJOY", "email": "melvadejesus@injoy.com", "phone": "+1 (918) 569-2286", "address": "391 Vine Street, Waikele, Mississippi, 3323", "about": "Officia consectetur ipsum voluptate id. Lorem id velit esse pariatur cillum enim fugiat exercitation tempor consequat duis. Consectetur id enim in fugiat esse ex. Quis commodo excepteur laboris nulla dolor. Laborum quis ex sint nostrud nisi. Ut est mollit esse excepteur aute laborum nulla eu.\r\n", "registered": "2014-02-02T12:28:33-13:00", "latitude": 11.270071, "longitude": 17.42396, "tags": [ "qui", "sit", "id", "cupidatat", "sunt", "reprehenderit", "elit" ], "friends": [ { "id": 0, "name": "Goldie Cline" }, { "id": 1, "name": "Tucker Larson" }, { "id": 2, "name": "Patterson Velazquez" } ], "greeting": "Hello, Melva Dejesus! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2708d43387e598b264", "index": 3432, "guid": "e1ba5482-e470-4801-9db9-4dfe1a514ca7", "isActive": false, "balance": "$2,726.28", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Mcclain Newman", "gender": "male", "company": "PLAYCE", "email": "mcclainnewman@playce.com", "phone": "+1 (875) 430-3485", "address": "588 Suydam Place, Utting, Washington, 4569", "about": "Esse cupidatat aute elit cillum excepteur ut. Excepteur elit sit velit proident nulla qui cupidatat est pariatur. Eu consequat nostrud velit aliqua consectetur. Duis laboris in fugiat ex reprehenderit laborum. Voluptate ex culpa cillum deserunt nulla cillum reprehenderit tempor in aliquip exercitation. Anim laboris dolor labore tempor et excepteur esse excepteur. Velit id qui est eu laboris voluptate aliquip sint dolor nisi aliquip.\r\n", "registered": "2014-07-27T07:04:32-12:00", "latitude": 22.290516, "longitude": -45.667599, "tags": [ "ipsum", "aute", "nostrud", "laborum", "officia", "enim", "sint" ], "friends": [ { "id": 0, "name": "Fleming Dyer" }, { "id": 1, "name": "Guthrie Blair" }, { "id": 2, "name": "Danielle Keller" } ], "greeting": "Hello, Mcclain Newman! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea275f70dc241c05bf40", "index": 3433, "guid": "05dbf8ce-fc44-42ff-ba5a-88adf920fd04", "isActive": false, "balance": "$2,974.04", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Della Hampton", "gender": "female", "company": "ZILLACON", "email": "dellahampton@zillacon.com", "phone": "+1 (929) 469-2228", "address": "997 Royce Street, Dubois, Tennessee, 5505", "about": "Amet eu ipsum exercitation exercitation fugiat eu. Veniam ut enim id exercitation anim culpa aute dolore eiusmod. Aliqua et adipisicing elit mollit. Voluptate laborum reprehenderit veniam exercitation sunt nostrud Lorem dolor.\r\n", "registered": "2014-09-09T00:25:26-12:00", "latitude": 52.603274, "longitude": 107.24144, "tags": [ "ullamco", "sint", "aliquip", "deserunt", "aliqua", "ipsum", "nostrud" ], "friends": [ { "id": 0, "name": "Louise Hernandez" }, { "id": 1, "name": "Janna Nguyen" }, { "id": 2, "name": "Bernadine Ingram" } ], "greeting": "Hello, Della Hampton! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea279b68f1b83acc4ba8", "index": 3434, "guid": "17db5f5c-faf1-476c-a798-abdebead77df", "isActive": true, "balance": "$2,376.44", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Fay Maldonado", "gender": "female", "company": "VISUALIX", "email": "faymaldonado@visualix.com", "phone": "+1 (863) 580-2371", "address": "436 Hubbard Street, Russellville, Alabama, 2915", "about": "Do elit ad irure ipsum laborum eu amet laboris nostrud culpa ullamco occaecat. Dolore aliqua nostrud eu pariatur est dolore elit cupidatat incididunt aliquip cillum reprehenderit. Sunt adipisicing est ut reprehenderit adipisicing fugiat ipsum cupidatat sit laborum.\r\n", "registered": "2014-04-08T01:06:00-12:00", "latitude": -60.750796, "longitude": -73.043912, "tags": [ "occaecat", "fugiat", "velit", "excepteur", "ex", "veniam", "aute" ], "friends": [ { "id": 0, "name": "Petty Guthrie" }, { "id": 1, "name": "Cummings Fletcher" }, { "id": 2, "name": "Sargent Jarvis" } ], "greeting": "Hello, Fay Maldonado! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27d1cdf54022755ae6", "index": 3435, "guid": "de742e8a-cb85-42e1-9e62-56d64f416768", "isActive": false, "balance": "$1,489.08", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Carissa Hinton", "gender": "female", "company": "SENMAO", "email": "carissahinton@senmao.com", "phone": "+1 (978) 555-2570", "address": "593 Lee Avenue, Kidder, Ohio, 9901", "about": "Consequat nisi anim laborum anim id proident ullamco excepteur do ea nulla incididunt. Adipisicing aute voluptate et non culpa mollit. Est sint fugiat aliqua ipsum eu. Culpa nulla sit minim ex sint culpa mollit non consectetur id. Elit ad id est elit labore. Exercitation esse do voluptate pariatur exercitation.\r\n", "registered": "2014-07-14T03:47:23-12:00", "latitude": -77.607393, "longitude": -87.472953, "tags": [ "incididunt", "duis", "id", "sit", "laborum", "proident", "ipsum" ], "friends": [ { "id": 0, "name": "Brandie Battle" }, { "id": 1, "name": "Cecelia Allen" }, { "id": 2, "name": "Eaton Barrett" } ], "greeting": "Hello, Carissa Hinton! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27db2742357526cbfd", "index": 3436, "guid": "c955321c-5e43-49b8-b464-757c3e0e4ec4", "isActive": false, "balance": "$3,788.75", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Mcdaniel Rojas", "gender": "male", "company": "QIMONK", "email": "mcdanielrojas@qimonk.com", "phone": "+1 (991) 468-2018", "address": "701 Hopkins Street, Fidelis, Hawaii, 5879", "about": "Do sunt aliquip excepteur consectetur velit id ipsum qui eiusmod. Dolor sint laborum sit nostrud voluptate laborum est velit pariatur voluptate ullamco commodo laborum. Adipisicing ex ullamco mollit ad voluptate mollit eiusmod reprehenderit ipsum consequat voluptate voluptate nostrud.\r\n", "registered": "2014-09-22T13:53:29-12:00", "latitude": 16.362995, "longitude": 83.302581, "tags": [ "occaecat", "ipsum", "enim", "aliquip", "quis", "adipisicing", "tempor" ], "friends": [ { "id": 0, "name": "Lidia Dotson" }, { "id": 1, "name": "Vang Spence" }, { "id": 2, "name": "Meredith Burke" } ], "greeting": "Hello, Mcdaniel Rojas! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27f6a3d507f805343d", "index": 3437, "guid": "490afa74-3735-4cc5-a3b4-c8630bbac7f2", "isActive": true, "balance": "$1,260.41", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Rhea Rosario", "gender": "female", "company": "GEEKOLA", "email": "rhearosario@geekola.com", "phone": "+1 (979) 566-2009", "address": "240 Florence Avenue, Websterville, New Mexico, 1182", "about": "Cillum labore deserunt duis sunt Lorem aliquip minim deserunt mollit exercitation proident officia id elit. Ea aute reprehenderit mollit labore commodo dolor. Nostrud id quis nostrud velit magna officia reprehenderit enim magna excepteur qui culpa nulla enim. Ad sint sit dolor cupidatat Lorem incididunt aliquip.\r\n", "registered": "2014-06-15T21:02:09-12:00", "latitude": 68.905901, "longitude": 10.115154, "tags": [ "aliquip", "aute", "eiusmod", "ullamco", "dolor", "commodo", "excepteur" ], "friends": [ { "id": 0, "name": "Becky Stephenson" }, { "id": 1, "name": "Mcconnell Frederick" }, { "id": 2, "name": "Stacy Kirkland" } ], "greeting": "Hello, Rhea Rosario! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea276143f593e93ad907", "index": 3438, "guid": "07cec41d-5d0b-41ee-92c1-909a4822a822", "isActive": false, "balance": "$1,468.74", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Richardson Wall", "gender": "male", "company": "TECHADE", "email": "richardsonwall@techade.com", "phone": "+1 (923) 530-2382", "address": "210 Pilling Street, Rockhill, Maryland, 5604", "about": "Eu exercitation consequat sint eu magna cupidatat laboris nulla ut eu deserunt. Magna incididunt non deserunt qui. Id dolore id voluptate adipisicing reprehenderit mollit excepteur veniam dolor in duis sit. Irure enim mollit anim et deserunt nulla. Consequat consequat mollit sit voluptate do excepteur dolor labore occaecat proident.\r\n", "registered": "2014-02-14T22:04:25-13:00", "latitude": 16.03903, "longitude": 35.863371, "tags": [ "quis", "consectetur", "reprehenderit", "occaecat", "incididunt", "laboris", "elit" ], "friends": [ { "id": 0, "name": "Gwen Parsons" }, { "id": 1, "name": "Polly Curtis" }, { "id": 2, "name": "Mathis Diaz" } ], "greeting": "Hello, Richardson Wall! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea275c5dcb5d267ca3b7", "index": 3439, "guid": "af08997c-fb61-4412-af12-9c0fe0ed8194", "isActive": true, "balance": "$3,911.92", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Stefanie Henderson", "gender": "female", "company": "TECHTRIX", "email": "stefaniehenderson@techtrix.com", "phone": "+1 (860) 422-3739", "address": "811 Irving Place, Elfrida, Alaska, 964", "about": "Sint exercitation proident nostrud occaecat sunt officia culpa id. Sit ex non ut commodo anim officia cupidatat nisi aliqua. Minim magna culpa cupidatat reprehenderit in nostrud do officia qui. Proident cupidatat aliqua id tempor elit excepteur Lorem esse eu anim. Excepteur anim occaecat esse sint magna in aute consectetur adipisicing qui ipsum elit consectetur esse. Elit incididunt in sint ea officia in occaecat aliqua duis adipisicing ad tempor. Ut fugiat est tempor est.\r\n", "registered": "2014-02-08T18:21:28-13:00", "latitude": 79.43582, "longitude": -34.089655, "tags": [ "est", "id", "voluptate", "consectetur", "ex", "ipsum", "ut" ], "friends": [ { "id": 0, "name": "Wilkerson Fisher" }, { "id": 1, "name": "Benjamin Forbes" }, { "id": 2, "name": "Bethany Bass" } ], "greeting": "Hello, Stefanie Henderson! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea278db0871effb09884", "index": 3440, "guid": "42451baa-9175-40d9-a2f9-c76c4b736015", "isActive": false, "balance": "$3,605.44", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Patton Rowland", "gender": "male", "company": "ESSENSIA", "email": "pattonrowland@essensia.com", "phone": "+1 (800) 588-3223", "address": "405 Etna Street, Aberdeen, Arizona, 9162", "about": "Magna ut amet adipisicing consectetur eu esse pariatur ex deserunt enim ea est exercitation. Qui eiusmod cupidatat excepteur consequat fugiat consectetur duis fugiat dolore. Tempor eu do excepteur irure incididunt duis sunt tempor quis pariatur elit duis occaecat fugiat.\r\n", "registered": "2014-08-04T08:02:55-12:00", "latitude": 27.28398, "longitude": -77.993645, "tags": [ "mollit", "ut", "incididunt", "aute", "officia", "nisi", "irure" ], "friends": [ { "id": 0, "name": "Rojas Horn" }, { "id": 1, "name": "Elma Yates" }, { "id": 2, "name": "Sabrina Spears" } ], "greeting": "Hello, Patton Rowland! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27e3c3a6078397015f", "index": 3441, "guid": "f6e37adb-d0fa-4b17-89b1-31d014c66f71", "isActive": false, "balance": "$1,625.16", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Parrish Hester", "gender": "male", "company": "ACCEL", "email": "parrishhester@accel.com", "phone": "+1 (984) 551-2373", "address": "406 Seton Place, Yogaville, Federated States Of Micronesia, 5206", "about": "Culpa magna velit anim pariatur ad sint elit cupidatat nisi enim irure. Elit proident incididunt laborum mollit veniam incididunt est veniam cupidatat. Irure occaecat quis enim adipisicing ipsum nulla ut voluptate.\r\n", "registered": "2014-01-10T20:50:46-13:00", "latitude": 78.046596, "longitude": -75.557779, "tags": [ "ipsum", "occaecat", "commodo", "cupidatat", "exercitation", "anim", "laboris" ], "friends": [ { "id": 0, "name": "Buck Fernandez" }, { "id": 1, "name": "Lila Sweeney" }, { "id": 2, "name": "Meyers Abbott" } ], "greeting": "Hello, Parrish Hester! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27c55ff542fc969ce5", "index": 3442, "guid": "a160abe9-7159-427d-82b9-d4a2ae0227f1", "isActive": false, "balance": "$3,033.64", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Joan Kane", "gender": "female", "company": "CUJO", "email": "joankane@cujo.com", "phone": "+1 (845) 502-2851", "address": "437 Utica Avenue, Bodega, Oklahoma, 6979", "about": "Veniam laboris sint occaecat eu nostrud dolore eiusmod nostrud dolor laborum sint aute fugiat in. Exercitation tempor sunt mollit occaecat. Cillum Lorem duis duis dolore commodo sit exercitation id exercitation.\r\n", "registered": "2014-04-14T18:48:03-12:00", "latitude": 5.336026, "longitude": -149.443913, "tags": [ "velit", "nisi", "ut", "mollit", "nisi", "ut", "aliquip" ], "friends": [ { "id": 0, "name": "Brooks Clements" }, { "id": 1, "name": "Elisa Romero" }, { "id": 2, "name": "Anthony Moore" } ], "greeting": "Hello, Joan Kane! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27d71734c4c2e046aa", "index": 3443, "guid": "0313fde8-556c-4f9f-8d5e-56d4a17c64b9", "isActive": true, "balance": "$3,237.46", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Barrett Adams", "gender": "male", "company": "BRAINCLIP", "email": "barrettadams@brainclip.com", "phone": "+1 (910) 443-2326", "address": "822 Bryant Street, Caroline, Michigan, 9210", "about": "In esse duis sunt nostrud excepteur pariatur aute ipsum. Occaecat id ipsum ex sit nulla labore excepteur reprehenderit deserunt ea cupidatat reprehenderit officia. Minim proident est ex labore dolore magna eiusmod pariatur aliquip aliquip consequat nostrud. Ex proident ea aliquip aliqua Lorem proident id laboris irure magna ut. Laboris amet consectetur aute ex commodo excepteur aliqua sunt adipisicing velit elit nisi. Pariatur id consectetur commodo fugiat labore ad laborum pariatur dolor consequat culpa veniam consequat. Ullamco dolor ad quis sunt pariatur aliquip officia fugiat dolor.\r\n", "registered": "2014-01-08T03:08:50-13:00", "latitude": -46.488175, "longitude": -131.415279, "tags": [ "voluptate", "voluptate", "labore", "eu", "sit", "aliquip", "amet" ], "friends": [ { "id": 0, "name": "Letitia Mcfadden" }, { "id": 1, "name": "Best Clarke" }, { "id": 2, "name": "Alisha Church" } ], "greeting": "Hello, Barrett Adams! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27c6252933964dbd6d", "index": 3444, "guid": "a9bd7ee2-d441-4519-aaa7-f2fa76db325d", "isActive": false, "balance": "$1,927.37", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Joyce David", "gender": "female", "company": "KRAG", "email": "joycedavid@krag.com", "phone": "+1 (884) 574-3837", "address": "978 Glendale Court, Carbonville, Kansas, 3643", "about": "Ut ut ex sint aute nisi do ullamco voluptate enim in cupidatat voluptate ullamco incididunt. Exercitation fugiat eiusmod fugiat pariatur aute nisi occaecat ipsum quis. Incididunt in labore ad in.\r\n", "registered": "2014-05-07T22:13:54-12:00", "latitude": -27.706134, "longitude": 128.961558, "tags": [ "dolore", "aliqua", "consectetur", "aute", "dolore", "proident", "irure" ], "friends": [ { "id": 0, "name": "Louisa Mcdonald" }, { "id": 1, "name": "Park Lindsay" }, { "id": 2, "name": "Cabrera Key" } ], "greeting": "Hello, Joyce David! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27e80b8c6cd92c01a8", "index": 3445, "guid": "c925890f-1db4-4622-91ca-4a5b60a5bca3", "isActive": false, "balance": "$3,192.30", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Blanche Murray", "gender": "female", "company": "MOMENTIA", "email": "blanchemurray@momentia.com", "phone": "+1 (962) 415-2980", "address": "166 Roder Avenue, Whitewater, South Dakota, 7619", "about": "Ea eiusmod mollit ex culpa ex est ut qui. Voluptate exercitation consequat mollit ullamco. In aliqua exercitation eu eiusmod consectetur aute qui.\r\n", "registered": "2014-03-19T11:21:58-13:00", "latitude": -41.360785, "longitude": -2.129038, "tags": [ "et", "dolore", "consectetur", "excepteur", "esse", "sunt", "fugiat" ], "friends": [ { "id": 0, "name": "Cassie Phelps" }, { "id": 1, "name": "Sherry Wolf" }, { "id": 2, "name": "Frankie Hooper" } ], "greeting": "Hello, Blanche Murray! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27241890d50f2c330d", "index": 3446, "guid": "1f9bc279-ef23-4732-a967-0f2dc7f3667f", "isActive": true, "balance": "$3,793.70", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Bird Mills", "gender": "male", "company": "OCTOCORE", "email": "birdmills@octocore.com", "phone": "+1 (853) 535-3201", "address": "413 Cherry Street, Eureka, West Virginia, 8994", "about": "Ullamco veniam fugiat duis laborum sunt ad anim culpa duis quis mollit adipisicing nisi. Consectetur magna duis velit duis aliqua aute ipsum elit elit ea. Aute laboris duis duis amet nostrud velit exercitation non laborum.\r\n", "registered": "2014-07-13T09:59:06-12:00", "latitude": -74.808689, "longitude": -144.384499, "tags": [ "magna", "incididunt", "magna", "fugiat", "excepteur", "ipsum", "occaecat" ], "friends": [ { "id": 0, "name": "Kerry Middleton" }, { "id": 1, "name": "Leblanc Hawkins" }, { "id": 2, "name": "Weeks Norris" } ], "greeting": "Hello, Bird Mills! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea273bf903e2ee5fbbfa", "index": 3447, "guid": "e75d98f1-bcc8-45c6-89e5-54bfedfa1b7e", "isActive": false, "balance": "$3,319.23", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Violet Rich", "gender": "female", "company": "ZENTHALL", "email": "violetrich@zenthall.com", "phone": "+1 (931) 400-3514", "address": "948 Williams Court, Northchase, Texas, 2165", "about": "Laborum sint id officia enim sint ut. Aute sit anim tempor commodo. Sit non et aliqua duis pariatur. Ea esse excepteur sit magna tempor.\r\n", "registered": "2014-05-29T15:38:29-12:00", "latitude": 31.708702, "longitude": -36.502889, "tags": [ "Lorem", "esse", "proident", "pariatur", "aliquip", "dolor", "deserunt" ], "friends": [ { "id": 0, "name": "Willa Cervantes" }, { "id": 1, "name": "Shauna Campbell" }, { "id": 2, "name": "Kitty Mcfarland" } ], "greeting": "Hello, Violet Rich! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2710c0f648d06ed562", "index": 3448, "guid": "cd257f53-e831-491e-a13a-ab95c10f7ebe", "isActive": false, "balance": "$3,219.41", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Nanette Beach", "gender": "female", "company": "DATACATOR", "email": "nanettebeach@datacator.com", "phone": "+1 (856) 556-3011", "address": "582 Otsego Street, Grimsley, Oregon, 7536", "about": "Laborum ea velit et aute magna anim. Tempor quis id mollit quis do laboris id minim labore. Duis dolor amet sunt sit officia sunt sint et. Sit consectetur ipsum dolor laborum Lorem.\r\n", "registered": "2014-05-15T23:11:28-12:00", "latitude": -38.683505, "longitude": -33.218001, "tags": [ "dolor", "ut", "voluptate", "velit", "ex", "in", "elit" ], "friends": [ { "id": 0, "name": "Elvira Vaughn" }, { "id": 1, "name": "Tonia Ashley" }, { "id": 2, "name": "Hurley Chandler" } ], "greeting": "Hello, Nanette Beach! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27a55d1fa224b0eaf2", "index": 3449, "guid": "db88a78d-1530-4eed-8902-9e60a2deda76", "isActive": true, "balance": "$1,070.00", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Eliza Vaughan", "gender": "female", "company": "EARGO", "email": "elizavaughan@eargo.com", "phone": "+1 (842) 491-3556", "address": "195 Herkimer Street, Ronco, Nevada, 2141", "about": "Reprehenderit aliqua amet irure culpa in. Consectetur laboris dolore incididunt labore labore anim mollit dolor. Proident dolore fugiat amet anim minim sunt. Nisi dolor veniam cupidatat amet aliquip pariatur ad veniam dolor elit. Proident id nisi id labore voluptate mollit elit sint adipisicing. Do culpa ullamco commodo nulla consequat ex aute tempor ipsum consectetur excepteur velit.\r\n", "registered": "2014-02-05T11:01:53-13:00", "latitude": 65.017391, "longitude": 127.962106, "tags": [ "mollit", "adipisicing", "fugiat", "culpa", "elit", "exercitation", "laborum" ], "friends": [ { "id": 0, "name": "Vaughan Robbins" }, { "id": 1, "name": "Shelly Levine" }, { "id": 2, "name": "Singleton Combs" } ], "greeting": "Hello, Eliza Vaughan! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2745c2ecfab903ad9a", "index": 3450, "guid": "57b88e50-4831-4c6e-bf39-8a7f08060c0c", "isActive": true, "balance": "$3,076.08", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Fox Schwartz", "gender": "male", "company": "INSURON", "email": "foxschwartz@insuron.com", "phone": "+1 (975) 496-3235", "address": "161 Everett Avenue, Blodgett, Minnesota, 525", "about": "Magna occaecat amet pariatur ullamco commodo proident proident amet excepteur est fugiat amet dolore. Aliqua pariatur esse ipsum consectetur ullamco anim consequat culpa sit est. Dolor non culpa voluptate esse nostrud culpa. Enim occaecat esse et cupidatat occaecat. Officia nostrud sunt laboris est. Officia excepteur anim magna Lorem anim irure ipsum dolor cillum dolor nulla nulla.\r\n", "registered": "2014-01-27T14:25:41-13:00", "latitude": 12.005029, "longitude": 175.735296, "tags": [ "in", "ex", "sit", "consectetur", "minim", "consectetur", "exercitation" ], "friends": [ { "id": 0, "name": "Carly Sims" }, { "id": 1, "name": "Lillian Maxwell" }, { "id": 2, "name": "Warner Talley" } ], "greeting": "Hello, Fox Schwartz! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea275907e2b141b2468d", "index": 3451, "guid": "f90df3fe-782d-452f-89bf-f464341d4f5a", "isActive": true, "balance": "$1,062.47", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Lawanda Knowles", "gender": "female", "company": "MANTRO", "email": "lawandaknowles@mantro.com", "phone": "+1 (813) 475-2917", "address": "785 Jardine Place, Delshire, Missouri, 6907", "about": "Dolore exercitation sint deserunt qui voluptate. Commodo labore et fugiat proident. Do velit nisi in pariatur pariatur est ullamco ipsum adipisicing velit dolore. Cupidatat eiusmod sint ad ullamco veniam elit eiusmod ea cillum. Excepteur Lorem veniam do aliqua tempor consectetur id sit quis proident duis minim nulla pariatur. Veniam voluptate id voluptate deserunt sit laborum occaecat non. Excepteur nostrud est do sint sint ea aliquip veniam.\r\n", "registered": "2014-02-10T01:04:17-13:00", "latitude": -51.034802, "longitude": -22.609435, "tags": [ "ullamco", "enim", "commodo", "non", "ipsum", "magna", "occaecat" ], "friends": [ { "id": 0, "name": "Natasha Green" }, { "id": 1, "name": "Angelique Gutierrez" }, { "id": 2, "name": "Mcguire Rivers" } ], "greeting": "Hello, Lawanda Knowles! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea278a1691c494897d75", "index": 3452, "guid": "cd7586e5-e4f4-4d6d-8527-6206e0307be7", "isActive": true, "balance": "$3,413.16", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Deborah Garner", "gender": "female", "company": "ENVIRE", "email": "deborahgarner@envire.com", "phone": "+1 (992) 470-3608", "address": "142 Arion Place, Eagletown, Rhode Island, 1153", "about": "Nostrud cupidatat mollit do et sit id nisi consequat nulla. Esse deserunt id commodo incididunt incididunt aliquip incididunt et consequat nisi non minim adipisicing pariatur. Labore irure laborum sit minim minim deserunt non duis nostrud veniam. Cillum cillum commodo anim culpa. Deserunt pariatur occaecat ut ex adipisicing.\r\n", "registered": "2014-08-28T20:30:49-12:00", "latitude": 63.436289, "longitude": -11.722012, "tags": [ "nulla", "ad", "excepteur", "irure", "sit", "duis", "ad" ], "friends": [ { "id": 0, "name": "White Mann" }, { "id": 1, "name": "Dominique Harvey" }, { "id": 2, "name": "Gillespie Pollard" } ], "greeting": "Hello, Deborah Garner! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea276d3b4bb14ec04922", "index": 3453, "guid": "117aa9a0-1d3f-49e7-a1c4-29ffea4a14ee", "isActive": false, "balance": "$3,913.14", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Melisa Davenport", "gender": "female", "company": "RAMJOB", "email": "melisadavenport@ramjob.com", "phone": "+1 (929) 467-2540", "address": "113 Creamer Street, Joppa, Florida, 7861", "about": "Adipisicing consectetur aliqua ea cillum aute. Proident culpa proident enim culpa elit anim fugiat deserunt pariatur. Nostrud irure in eu eu anim amet sunt. Nulla irure esse adipisicing cillum labore ea duis veniam aliquip amet. Quis enim velit cupidatat voluptate velit eu anim anim in ullamco fugiat cillum esse aute. Duis duis cupidatat nulla in cupidatat minim non Lorem minim esse cupidatat aliqua excepteur aute. Occaecat incididunt veniam cupidatat quis sunt in.\r\n", "registered": "2014-09-01T05:26:00-12:00", "latitude": 83.926928, "longitude": -1.109482, "tags": [ "excepteur", "ad", "aute", "deserunt", "non", "dolor", "labore" ], "friends": [ { "id": 0, "name": "Kimberly Norton" }, { "id": 1, "name": "Hinton Mendez" }, { "id": 2, "name": "Acevedo George" } ], "greeting": "Hello, Melisa Davenport! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27842852025a799a35", "index": 3454, "guid": "14a1ccdf-42d0-41b8-88c4-617ae86d3113", "isActive": true, "balance": "$2,693.46", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Jessie Park", "gender": "female", "company": "ACRUEX", "email": "jessiepark@acruex.com", "phone": "+1 (861) 540-3953", "address": "116 Lawn Court, Kenvil, North Carolina, 5676", "about": "Eu tempor id exercitation fugiat. Qui eiusmod quis cillum do aute magna mollit nostrud adipisicing qui eiusmod eiusmod enim. Duis consectetur et culpa nostrud. Dolor velit velit voluptate commodo.\r\n", "registered": "2014-03-15T18:33:30-13:00", "latitude": 53.617894, "longitude": -0.777978, "tags": [ "commodo", "velit", "exercitation", "aliqua", "exercitation", "ea", "elit" ], "friends": [ { "id": 0, "name": "Dollie Kerr" }, { "id": 1, "name": "Stuart Roberts" }, { "id": 2, "name": "Margo Holder" } ], "greeting": "Hello, Jessie Park! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27b32f49321434fe25", "index": 3455, "guid": "eff85024-08f5-45fd-b9b3-2c984456f29e", "isActive": true, "balance": "$3,316.46", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Lupe Rollins", "gender": "female", "company": "TALENDULA", "email": "luperollins@talendula.com", "phone": "+1 (911) 440-3342", "address": "488 Lynch Street, Temperanceville, New Hampshire, 3137", "about": "Reprehenderit irure esse occaecat minim. Officia consectetur esse qui sit. Eiusmod adipisicing sit ullamco sunt amet Lorem cupidatat. Deserunt mollit id consequat deserunt incididunt fugiat minim Lorem mollit eiusmod.\r\n", "registered": "2014-02-12T04:10:49-13:00", "latitude": -15.933301, "longitude": 110.976724, "tags": [ "eu", "Lorem", "labore", "sint", "officia", "est", "veniam" ], "friends": [ { "id": 0, "name": "Everett Gonzalez" }, { "id": 1, "name": "Frederick Gonzales" }, { "id": 2, "name": "Sheri Dickson" } ], "greeting": "Hello, Lupe Rollins! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27b72ee933f61b02f1", "index": 3456, "guid": "63515c49-702e-4a9c-a14a-e0da394ed1de", "isActive": false, "balance": "$2,331.05", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Bush Jordan", "gender": "male", "company": "NETBOOK", "email": "bushjordan@netbook.com", "phone": "+1 (826) 553-2861", "address": "157 Sheffield Avenue, Kerby, Arkansas, 6450", "about": "Pariatur proident elit voluptate cupidatat cillum nisi irure esse non do dolore proident. Ea adipisicing cupidatat sunt occaecat excepteur non tempor ex sit. Voluptate tempor culpa fugiat laboris elit. Sint duis et occaecat eu. Dolor ullamco aliqua labore fugiat labore laboris magna irure nisi. Qui cillum proident excepteur qui in laborum laboris consequat tempor.\r\n", "registered": "2014-02-22T12:16:53-13:00", "latitude": 14.725128, "longitude": -61.276624, "tags": [ "aute", "ad", "sit", "ex", "est", "mollit", "culpa" ], "friends": [ { "id": 0, "name": "Joann Herman" }, { "id": 1, "name": "Young Mcmahon" }, { "id": 2, "name": "Wiley Frost" } ], "greeting": "Hello, Bush Jordan! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27cdb6295865275602", "index": 3457, "guid": "485b6aef-8cc6-41ad-98df-4de2a176921c", "isActive": true, "balance": "$2,661.70", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Perry Dale", "gender": "male", "company": "CUBIX", "email": "perrydale@cubix.com", "phone": "+1 (858) 444-3439", "address": "879 Elmwood Avenue, Hiwasse, Iowa, 3827", "about": "Sit aute officia amet culpa nisi eiusmod officia anim irure esse sint. Aliqua dolore sint voluptate in mollit consectetur dolor exercitation amet adipisicing ex pariatur. Est pariatur amet esse fugiat officia labore irure aliquip elit deserunt culpa consectetur. Laboris non in laboris nisi aute ex enim.\r\n", "registered": "2014-07-29T06:12:45-12:00", "latitude": 27.87989, "longitude": 101.425957, "tags": [ "sit", "occaecat", "sint", "anim", "dolore", "reprehenderit", "id" ], "friends": [ { "id": 0, "name": "Yates Taylor" }, { "id": 1, "name": "Bartlett Kirby" }, { "id": 2, "name": "Berger Hale" } ], "greeting": "Hello, Perry Dale! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2730ceb0e62e288559", "index": 3458, "guid": "76f997ae-3dc6-4783-8b77-833f65d0ce7a", "isActive": false, "balance": "$1,233.54", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Dunn Ballard", "gender": "male", "company": "MITROC", "email": "dunnballard@mitroc.com", "phone": "+1 (958) 572-2592", "address": "522 Commerce Street, Leming, Nebraska, 1924", "about": "Dolore ullamco proident et ex laboris nulla cupidatat. Dolore commodo incididunt non labore ad ipsum esse consequat amet ad ad aliqua. Excepteur aute dolor officia commodo ipsum consectetur anim ut velit ad. Consectetur anim consectetur cupidatat sunt esse nulla quis.\r\n", "registered": "2014-07-16T03:11:06-12:00", "latitude": 82.936215, "longitude": -154.467826, "tags": [ "velit", "laborum", "aute", "veniam", "sunt", "ipsum", "velit" ], "friends": [ { "id": 0, "name": "Beach Daugherty" }, { "id": 1, "name": "Colleen Cobb" }, { "id": 2, "name": "Nielsen Phillips" } ], "greeting": "Hello, Dunn Ballard! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27f290882769a221db", "index": 3459, "guid": "78ce875f-26ac-4d1c-b83b-6765548f2e27", "isActive": true, "balance": "$1,980.96", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Glover Savage", "gender": "male", "company": "SONGBIRD", "email": "gloversavage@songbird.com", "phone": "+1 (812) 549-2637", "address": "334 Baycliff Terrace, Eggertsville, District Of Columbia, 6823", "about": "Do esse sit quis cupidatat ipsum dolor est eiusmod. Culpa eiusmod amet magna Lorem esse anim cillum. Duis eu pariatur ullamco fugiat duis incididunt sit pariatur. Enim consequat incididunt voluptate irure excepteur incididunt pariatur amet elit nulla. Qui laborum sit minim esse culpa Lorem. Commodo nostrud ullamco non eu qui anim.\r\n", "registered": "2014-01-17T07:46:00-13:00", "latitude": 12.790425, "longitude": 79.556329, "tags": [ "laboris", "Lorem", "excepteur", "pariatur", "in", "id", "exercitation" ], "friends": [ { "id": 0, "name": "Camacho Maynard" }, { "id": 1, "name": "Pennington Colon" }, { "id": 2, "name": "Owens Pickett" } ], "greeting": "Hello, Glover Savage! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea278754eb4171c31172", "index": 3460, "guid": "0a02b496-3e6b-4097-b69c-19d563c33385", "isActive": true, "balance": "$2,928.49", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Knox Foley", "gender": "male", "company": "INDEXIA", "email": "knoxfoley@indexia.com", "phone": "+1 (854) 470-3295", "address": "323 Howard Avenue, Weeksville, New Jersey, 3907", "about": "Tempor est elit nostrud et commodo ea. Irure elit Lorem irure adipisicing Lorem occaecat eiusmod mollit reprehenderit reprehenderit sit excepteur. Cillum labore commodo aliqua est officia magna do aliquip magna. In veniam culpa nisi nisi labore culpa occaecat quis. Cillum adipisicing adipisicing est ea excepteur labore do quis ad. Voluptate laboris incididunt laboris quis sint commodo et ipsum ex consequat duis fugiat adipisicing. Non exercitation et nostrud tempor officia aliquip pariatur do.\r\n", "registered": "2014-04-20T01:42:18-12:00", "latitude": -30.77926, "longitude": 120.811199, "tags": [ "officia", "officia", "consequat", "veniam", "aute", "est", "pariatur" ], "friends": [ { "id": 0, "name": "Leila Harding" }, { "id": 1, "name": "Herring Ball" }, { "id": 2, "name": "Justice Walker" } ], "greeting": "Hello, Knox Foley! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27be8183b3ec9149c3", "index": 3461, "guid": "88f0f92c-c5bc-47ea-bebe-f72ac31ed276", "isActive": false, "balance": "$3,562.87", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "House Ferguson", "gender": "male", "company": "INSURESYS", "email": "houseferguson@insuresys.com", "phone": "+1 (908) 577-2813", "address": "142 Stockholm Street, Fulford, Palau, 1779", "about": "Ad id ut exercitation ad ipsum dolor sunt nostrud duis. Ad anim qui dolor culpa mollit ullamco elit officia cillum et magna duis. Laboris non et Lorem ut eu ex nostrud minim. Deserunt ea in sint qui duis velit proident excepteur minim ut magna. Cillum consectetur proident aute quis officia magna nisi commodo. Pariatur ex esse ipsum elit magna mollit tempor. Eu anim ex adipisicing cupidatat cupidatat nisi aliquip dolor irure.\r\n", "registered": "2014-04-09T23:44:57-12:00", "latitude": 87.687814, "longitude": -59.675394, "tags": [ "magna", "consectetur", "pariatur", "labore", "consequat", "enim", "non" ], "friends": [ { "id": 0, "name": "Miriam Townsend" }, { "id": 1, "name": "Wendi Knight" }, { "id": 2, "name": "Nettie Reynolds" } ], "greeting": "Hello, House Ferguson! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27553101cf5580efd0", "index": 3462, "guid": "b335350f-8af5-4c3b-85f6-8c47c0c7e7e6", "isActive": true, "balance": "$2,951.19", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Valeria Dunn", "gender": "female", "company": "LUXURIA", "email": "valeriadunn@luxuria.com", "phone": "+1 (897) 512-2773", "address": "597 Euclid Avenue, Baden, Puerto Rico, 7456", "about": "Anim exercitation tempor dolor sint fugiat non cupidatat sint pariatur nostrud quis qui adipisicing id. Aliqua commodo consequat non do. Tempor enim elit voluptate magna exercitation consequat minim ex. Ipsum elit dolor dolor est ex pariatur. Quis fugiat anim laboris dolore consectetur incididunt excepteur id et.\r\n", "registered": "2014-07-24T15:03:02-12:00", "latitude": -44.734765, "longitude": -96.525202, "tags": [ "amet", "veniam", "ad", "nisi", "enim", "pariatur", "eiusmod" ], "friends": [ { "id": 0, "name": "Alvarado Graham" }, { "id": 1, "name": "Mabel Vincent" }, { "id": 2, "name": "Karla Ellison" } ], "greeting": "Hello, Valeria Dunn! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea275b6b1caaa0f01500", "index": 3463, "guid": "50db2217-1c4d-4e42-bf15-f31287ccc09d", "isActive": false, "balance": "$2,271.96", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Ingram Armstrong", "gender": "male", "company": "APEXIA", "email": "ingramarmstrong@apexia.com", "phone": "+1 (991) 421-3448", "address": "282 Bushwick Place, Retsof, California, 9723", "about": "Pariatur ipsum magna consequat excepteur nisi deserunt cillum nulla ullamco enim dolor ut ad. Amet magna elit in irure exercitation incididunt. Labore nisi esse do exercitation eiusmod cupidatat duis occaecat.\r\n", "registered": "2014-09-04T08:12:14-12:00", "latitude": -59.576284, "longitude": 4.161165, "tags": [ "Lorem", "fugiat", "reprehenderit", "id", "ullamco", "do", "incididunt" ], "friends": [ { "id": 0, "name": "Duke Reid" }, { "id": 1, "name": "Karyn Sears" }, { "id": 2, "name": "Angela Anthony" } ], "greeting": "Hello, Ingram Armstrong! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27110aea5186cb3e3a", "index": 3464, "guid": "85b2e686-c84d-4316-b555-9dc07b7595b6", "isActive": false, "balance": "$2,141.16", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Joanna Myers", "gender": "female", "company": "ZENOLUX", "email": "joannamyers@zenolux.com", "phone": "+1 (875) 558-2735", "address": "117 Brooklyn Road, Belgreen, Vermont, 1980", "about": "Adipisicing ad ad consectetur nostrud ipsum in laborum pariatur. Nisi reprehenderit id sunt duis elit reprehenderit tempor proident sunt laborum magna. Ut elit nulla eu velit laboris enim aliquip ullamco. Ut veniam fugiat dolore ipsum in anim minim adipisicing eu nisi mollit esse tempor dolor.\r\n", "registered": "2014-05-19T21:49:18-12:00", "latitude": -4.153433, "longitude": 102.720157, "tags": [ "esse", "sint", "reprehenderit", "fugiat", "qui", "occaecat", "reprehenderit" ], "friends": [ { "id": 0, "name": "Gina Raymond" }, { "id": 1, "name": "Socorro Golden" }, { "id": 2, "name": "Harrison Roy" } ], "greeting": "Hello, Joanna Myers! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea278bf46e2a86d3b139", "index": 3465, "guid": "e5e77d69-6875-419b-844b-9b805312afe1", "isActive": true, "balance": "$2,804.85", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Adeline Clemons", "gender": "female", "company": "ENAUT", "email": "adelineclemons@enaut.com", "phone": "+1 (908) 458-2745", "address": "150 Vista Place, Fairacres, Indiana, 1465", "about": "Voluptate id anim proident cillum fugiat ea reprehenderit duis dolore. Cillum quis tempor duis exercitation duis voluptate reprehenderit do ad consectetur qui aliquip dolore. Velit irure tempor ex officia commodo ea est dolore ipsum. Veniam minim velit fugiat consequat exercitation eiusmod ex sint mollit irure exercitation. Quis est qui velit amet sint ut magna eu et aliqua minim reprehenderit minim. Ea consectetur nisi eiusmod sit dolor laboris sunt in. Veniam nisi sunt labore culpa nostrud aliquip et.\r\n", "registered": "2014-01-14T00:49:19-13:00", "latitude": 5.39932, "longitude": -35.081362, "tags": [ "proident", "deserunt", "pariatur", "tempor", "incididunt", "minim", "sint" ], "friends": [ { "id": 0, "name": "Wong England" }, { "id": 1, "name": "Gibbs Reyes" }, { "id": 2, "name": "Bradford Shields" } ], "greeting": "Hello, Adeline Clemons! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea271c3d1d78eed5f059", "index": 3466, "guid": "f38484a7-f581-45f8-bd60-5ab14116ec91", "isActive": false, "balance": "$3,544.94", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Henderson Tillman", "gender": "male", "company": "HAWKSTER", "email": "hendersontillman@hawkster.com", "phone": "+1 (910) 435-3693", "address": "762 Karweg Place, Trona, Illinois, 2928", "about": "Aliqua est do ex amet anim amet excepteur adipisicing officia quis nulla aute id excepteur. Tempor aute est laboris magna anim ullamco magna laboris. Ex velit deserunt commodo adipisicing laboris nulla culpa velit aute.\r\n", "registered": "2014-08-14T17:36:35-12:00", "latitude": 41.570337, "longitude": 84.939966, "tags": [ "sit", "magna", "laborum", "ea", "excepteur", "labore", "ipsum" ], "friends": [ { "id": 0, "name": "Weber Valentine" }, { "id": 1, "name": "Salazar Edwards" }, { "id": 2, "name": "Lola Shelton" } ], "greeting": "Hello, Henderson Tillman! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2766bc1532670641ae", "index": 3467, "guid": "b88a178d-2d18-413d-b59d-4b90075224a3", "isActive": true, "balance": "$2,796.64", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Marion Soto", "gender": "female", "company": "GROK", "email": "marionsoto@grok.com", "phone": "+1 (836) 480-3722", "address": "461 Melba Court, Derwood, South Carolina, 9328", "about": "Anim reprehenderit do consequat qui duis. Voluptate nulla et amet adipisicing enim ipsum nulla aliqua proident. Dolor pariatur laboris laborum ullamco ad occaecat tempor ex. Proident cupidatat laborum non tempor eu labore.\r\n", "registered": "2014-05-09T04:26:47-12:00", "latitude": 53.677351, "longitude": 68.077291, "tags": [ "culpa", "anim", "et", "mollit", "minim", "ullamco", "enim" ], "friends": [ { "id": 0, "name": "Arnold Mccall" }, { "id": 1, "name": "Edith Strong" }, { "id": 2, "name": "Lily Brown" } ], "greeting": "Hello, Marion Soto! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea277844cffa1801b846", "index": 3468, "guid": "cb927d34-f061-4feb-bb7f-0e53e32c1e11", "isActive": false, "balance": "$2,346.93", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Jean Gregory", "gender": "female", "company": "INQUALA", "email": "jeangregory@inquala.com", "phone": "+1 (994) 489-3759", "address": "915 Oliver Street, Chesapeake, American Samoa, 9403", "about": "Cupidatat quis sit minim adipisicing amet laboris fugiat commodo amet velit est sint. Aliqua non proident et quis aute deserunt eiusmod irure laborum. Eiusmod ea consequat elit consequat consequat magna proident minim commodo dolore exercitation id culpa occaecat. Incididunt in cupidatat minim nulla aliquip irure ullamco. Deserunt occaecat occaecat irure sunt magna id eu occaecat minim magna elit reprehenderit do esse.\r\n", "registered": "2014-07-11T04:46:02-12:00", "latitude": 0.445546, "longitude": 133.256043, "tags": [ "enim", "exercitation", "labore", "proident", "est", "aute", "non" ], "friends": [ { "id": 0, "name": "Genevieve Mccoy" }, { "id": 1, "name": "Ford Mcconnell" }, { "id": 2, "name": "Magdalena Collier" } ], "greeting": "Hello, Jean Gregory! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea277e46fa5db5e75970", "index": 3469, "guid": "edcf0231-c884-449a-b0af-6a74588d5ea3", "isActive": false, "balance": "$3,037.42", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Rachael Baxter", "gender": "female", "company": "INTRAWEAR", "email": "rachaelbaxter@intrawear.com", "phone": "+1 (968) 493-3437", "address": "535 Central Avenue, Darlington, Delaware, 891", "about": "In in sit proident sit amet dolore. Consequat qui dolore amet anim pariatur laborum eiusmod pariatur. Amet minim deserunt ea velit incididunt laboris amet laborum qui laboris ad sunt dolor. Eiusmod officia occaecat laborum nulla fugiat in cillum. Fugiat cupidatat eu dolor eu commodo elit est fugiat anim laborum. Incididunt reprehenderit ut dolore eu excepteur laboris reprehenderit non.\r\n", "registered": "2014-01-05T19:24:23-13:00", "latitude": 68.907081, "longitude": 49.628627, "tags": [ "magna", "ut", "quis", "non", "mollit", "nostrud", "nulla" ], "friends": [ { "id": 0, "name": "Dorthy Blake" }, { "id": 1, "name": "Sonja Lancaster" }, { "id": 2, "name": "Penny Donovan" } ], "greeting": "Hello, Rachael Baxter! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27dfc4b20d7fab823a", "index": 3470, "guid": "3aa20d51-f947-497f-82fa-9bafdd1c3084", "isActive": true, "balance": "$1,115.50", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Roberson Jenkins", "gender": "male", "company": "WAAB", "email": "robersonjenkins@waab.com", "phone": "+1 (808) 457-3472", "address": "839 Moore Street, Boykin, Pennsylvania, 6905", "about": "Ex non tempor cupidatat sit velit pariatur officia in proident sunt. Aute occaecat incididunt dolore elit do magna irure enim tempor culpa aliqua exercitation. Pariatur consectetur fugiat officia Lorem aute culpa. Incididunt consequat elit id ipsum irure id quis reprehenderit reprehenderit voluptate ex voluptate. Sint irure occaecat nisi voluptate anim ad incididunt reprehenderit enim sint culpa in aute. Eiusmod ea qui sit cillum laboris anim. Minim excepteur ullamco amet amet.\r\n", "registered": "2014-03-26T04:52:32-13:00", "latitude": 74.301088, "longitude": -60.762602, "tags": [ "eu", "fugiat", "aliquip", "qui", "sunt", "excepteur", "aute" ], "friends": [ { "id": 0, "name": "Bradley Pate" }, { "id": 1, "name": "Livingston Velez" }, { "id": 2, "name": "Eve Higgins" } ], "greeting": "Hello, Roberson Jenkins! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2730ce3fdc9257dd99", "index": 3471, "guid": "4592320a-5e5f-4ca7-b0c5-cd80a53ffb5e", "isActive": true, "balance": "$1,483.92", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Coffey Berry", "gender": "male", "company": "DARWINIUM", "email": "coffeyberry@darwinium.com", "phone": "+1 (907) 475-2772", "address": "249 Lott Place, Sunnyside, Georgia, 7991", "about": "Aute labore do est velit ea occaecat ipsum laboris nisi proident. Consectetur elit eu aute laborum sit labore. Duis velit velit anim in est nulla consequat mollit magna do id veniam ut elit. Occaecat elit aute et ad laboris proident ad.\r\n", "registered": "2014-07-27T23:34:09-12:00", "latitude": 41.733675, "longitude": -119.54822, "tags": [ "est", "est", "anim", "non", "fugiat", "ad", "quis" ], "friends": [ { "id": 0, "name": "Kathryn Peterson" }, { "id": 1, "name": "Ewing Solomon" }, { "id": 2, "name": "Maureen Nixon" } ], "greeting": "Hello, Coffey Berry! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea272c22b4e9ce24ef8e", "index": 3472, "guid": "30733bd2-64fd-465a-b49e-d3e812ff80f3", "isActive": true, "balance": "$2,563.30", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Irene Fulton", "gender": "female", "company": "POLARAX", "email": "irenefulton@polarax.com", "phone": "+1 (999) 545-2881", "address": "169 Cumberland Street, Kansas, North Dakota, 6958", "about": "Incididunt occaecat et ipsum et officia esse nostrud. Commodo labore labore consectetur non ex consequat. Aliqua reprehenderit eu incididunt ut cillum laboris Lorem non duis id ut esse cillum. Voluptate cillum magna est ad duis consequat Lorem proident nostrud.\r\n", "registered": "2014-09-22T03:47:15-12:00", "latitude": 16.328766, "longitude": -41.379025, "tags": [ "duis", "ad", "nulla", "nostrud", "est", "nulla", "non" ], "friends": [ { "id": 0, "name": "Bridges Roberson" }, { "id": 1, "name": "Keri Stuart" }, { "id": 2, "name": "Clare Chambers" } ], "greeting": "Hello, Irene Fulton! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea277bcde300afef8a29", "index": 3473, "guid": "bbdfdcfb-5fca-4fad-8bcd-98d055af99cc", "isActive": true, "balance": "$3,972.44", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Finch Ellis", "gender": "male", "company": "ISOTRACK", "email": "finchellis@isotrack.com", "phone": "+1 (803) 427-2399", "address": "459 Seabring Street, Gerton, Louisiana, 3146", "about": "Officia irure pariatur qui irure amet consequat voluptate. Pariatur dolor ullamco sunt elit eu commodo. Consequat culpa do sunt laboris irure commodo ex cupidatat dolore. Sunt adipisicing adipisicing quis eu quis eiusmod esse aliqua ipsum. Anim qui cillum voluptate non cillum veniam consectetur nisi in.\r\n", "registered": "2014-06-19T13:15:01-12:00", "latitude": 72.235365, "longitude": 88.307204, "tags": [ "reprehenderit", "sunt", "proident", "magna", "enim", "deserunt", "nostrud" ], "friends": [ { "id": 0, "name": "Theresa Lambert" }, { "id": 1, "name": "Jacklyn Guerra" }, { "id": 2, "name": "Yvonne Stevens" } ], "greeting": "Hello, Finch Ellis! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea273911177029d2a3a8", "index": 3474, "guid": "8ab847c7-8e07-4977-bb06-9b146a5591cc", "isActive": false, "balance": "$2,144.36", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Velma Hunt", "gender": "female", "company": "CEPRENE", "email": "velmahunt@ceprene.com", "phone": "+1 (849) 430-3249", "address": "104 Emerson Place, Chamberino, Northern Mariana Islands, 4888", "about": "Esse amet esse ad sint dolor culpa commodo. Tempor consequat proident nostrud laboris. Proident fugiat eiusmod qui ad cillum occaecat eu ex elit labore commodo exercitation irure exercitation. Laborum non ad adipisicing sint enim dolore enim exercitation ut. Voluptate ea qui ipsum aute exercitation pariatur do irure magna laboris.\r\n", "registered": "2014-03-07T19:31:29-13:00", "latitude": -33.810907, "longitude": 168.702562, "tags": [ "ipsum", "quis", "esse", "non", "do", "et", "aliquip" ], "friends": [ { "id": 0, "name": "Hilary Guzman" }, { "id": 1, "name": "Suzanne Hickman" }, { "id": 2, "name": "Espinoza Cooley" } ], "greeting": "Hello, Velma Hunt! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2773601d39fbbc6c07", "index": 3475, "guid": "6760631a-7b49-480c-ae08-a9ad1d3a5255", "isActive": false, "balance": "$1,598.31", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Brandi Ortiz", "gender": "female", "company": "ORBEAN", "email": "brandiortiz@orbean.com", "phone": "+1 (887) 549-2910", "address": "346 Corbin Place, Dyckesville, Colorado, 4150", "about": "Minim Lorem sunt incididunt do nulla proident est tempor nulla commodo duis ipsum. Culpa amet et labore ad incididunt cillum ut adipisicing incididunt cillum do. Sit consectetur in est do incididunt enim quis irure exercitation adipisicing excepteur ut tempor ut.\r\n", "registered": "2014-03-23T23:55:53-13:00", "latitude": -4.503002, "longitude": -66.622319, "tags": [ "pariatur", "anim", "magna", "occaecat", "fugiat", "laborum", "minim" ], "friends": [ { "id": 0, "name": "Velasquez French" }, { "id": 1, "name": "Letha Carver" }, { "id": 2, "name": "Sasha Hughes" } ], "greeting": "Hello, Brandi Ortiz! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27c8b8daaae914e8dc", "index": 3476, "guid": "cf5d814b-e9df-4f9c-a367-de7e864c4f67", "isActive": false, "balance": "$2,027.06", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Alba Acosta", "gender": "female", "company": "MICROLUXE", "email": "albaacosta@microluxe.com", "phone": "+1 (832) 578-2726", "address": "875 Lorimer Street, Jacumba, Idaho, 8062", "about": "Esse ipsum mollit nostrud id duis non tempor eiusmod est tempor. Fugiat exercitation eu minim culpa irure adipisicing pariatur esse sit incididunt deserunt ipsum. Adipisicing quis eu ullamco aliqua consequat eiusmod laboris excepteur nulla anim labore cillum. Labore eu ea incididunt ullamco magna qui sint laboris tempor consequat dolore consequat sunt nisi. Proident aliquip quis nulla irure nostrud et amet eu commodo occaecat officia commodo. Quis minim enim non aliquip amet ex pariatur minim do reprehenderit Lorem pariatur nulla. Excepteur veniam consectetur laborum irure commodo aliquip consequat aliquip.\r\n", "registered": "2014-07-02T05:30:52-12:00", "latitude": 28.273288, "longitude": 45.069476, "tags": [ "consectetur", "nulla", "quis", "velit", "dolore", "duis", "labore" ], "friends": [ { "id": 0, "name": "Chang Christian" }, { "id": 1, "name": "Carney Powers" }, { "id": 2, "name": "Maura Oliver" } ], "greeting": "Hello, Alba Acosta! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea273c210212904305f2", "index": 3477, "guid": "ab3f13ff-637b-44d5-b239-b152c4d83c10", "isActive": true, "balance": "$2,023.34", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Glenn Douglas", "gender": "male", "company": "GINKOGENE", "email": "glenndouglas@ginkogene.com", "phone": "+1 (872) 575-3848", "address": "730 Grafton Street, Kapowsin, Marshall Islands, 4230", "about": "Ex ea magna adipisicing magna exercitation nostrud. Velit labore deserunt elit sint mollit labore occaecat velit nisi aliquip. Excepteur aliqua sit deserunt tempor Lorem adipisicing elit labore. Labore non et laborum ut officia elit Lorem quis elit. Eu amet anim laboris eu pariatur laboris tempor reprehenderit adipisicing duis dolore laborum. Excepteur aliquip sunt ex ad incididunt magna aute pariatur sint do labore. Do elit ea do voluptate incididunt id minim duis excepteur commodo est.\r\n", "registered": "2014-08-20T21:04:44-12:00", "latitude": 0.347656, "longitude": 135.067861, "tags": [ "esse", "laboris", "id", "commodo", "eiusmod", "consectetur", "occaecat" ], "friends": [ { "id": 0, "name": "Cardenas Brewer" }, { "id": 1, "name": "Francisca Walsh" }, { "id": 2, "name": "Julie Herring" } ], "greeting": "Hello, Glenn Douglas! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2729c8ada84df711c4", "index": 3478, "guid": "a2579b5c-a5d1-493a-89ad-9670ffbbd7d1", "isActive": false, "balance": "$2,810.52", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Fernandez Chaney", "gender": "male", "company": "NIMON", "email": "fernandezchaney@nimon.com", "phone": "+1 (950) 536-3710", "address": "365 Chestnut Avenue, Rockbridge, New York, 2568", "about": "Laboris tempor nisi minim nulla cupidatat velit exercitation. Reprehenderit do officia consectetur culpa cupidatat ut ipsum do. Cupidatat commodo qui magna non anim esse reprehenderit officia. Qui magna occaecat tempor elit dolore cillum eiusmod in do consequat non Lorem. Dolore laborum do dolore nostrud excepteur. Consequat velit fugiat eiusmod in irure fugiat occaecat veniam esse.\r\n", "registered": "2014-08-11T05:51:39-12:00", "latitude": 42.454242, "longitude": 4.882158, "tags": [ "ea", "officia", "nostrud", "non", "in", "voluptate", "amet" ], "friends": [ { "id": 0, "name": "Alisa Hunter" }, { "id": 1, "name": "Rosella Cantrell" }, { "id": 2, "name": "Rosanna Monroe" } ], "greeting": "Hello, Fernandez Chaney! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea276d2a65608aa85832", "index": 3479, "guid": "d44df69e-7d17-4ffe-836f-4ee85f85887e", "isActive": true, "balance": "$3,135.69", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Luella Harper", "gender": "female", "company": "MAXIMIND", "email": "luellaharper@maximind.com", "phone": "+1 (971) 567-2054", "address": "879 Thomas Street, Riverton, Guam, 8580", "about": "Eiusmod labore ad proident ad ex est quis quis ad deserunt. Officia nisi voluptate magna consequat duis velit ad consequat reprehenderit sint reprehenderit labore. Veniam ipsum velit proident cillum do in nulla qui eiusmod aliqua minim mollit commodo irure. Culpa ullamco proident mollit duis ullamco ad. Amet sit nulla dolore tempor cillum commodo non ut laborum. Adipisicing officia pariatur enim incididunt ea Lorem eu excepteur sunt.\r\n", "registered": "2014-02-24T06:28:07-13:00", "latitude": 15.660985, "longitude": -132.575337, "tags": [ "dolor", "ad", "in", "sint", "do", "aute", "dolor" ], "friends": [ { "id": 0, "name": "Jamie Stout" }, { "id": 1, "name": "Mollie Glenn" }, { "id": 2, "name": "Audrey Goff" } ], "greeting": "Hello, Luella Harper! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27ba684860c1bef540", "index": 3480, "guid": "50c8e930-1aae-427a-9027-069a2871ff0e", "isActive": true, "balance": "$3,882.32", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Robles Cannon", "gender": "male", "company": "ENTROPIX", "email": "roblescannon@entropix.com", "phone": "+1 (834) 520-3640", "address": "478 Forrest Street, Newkirk, Virgin Islands, 7133", "about": "Pariatur mollit sit amet dolore adipisicing fugiat sint ullamco dolor aliqua. Non magna sit esse sint eu. Nisi aliquip aute in qui ut nulla elit velit minim exercitation veniam adipisicing irure in. Mollit culpa veniam consectetur cupidatat sit laboris consectetur laboris nostrud fugiat laborum culpa nisi.\r\n", "registered": "2014-02-28T21:30:40-13:00", "latitude": 29.505999, "longitude": 67.54412, "tags": [ "aute", "sit", "in", "ex", "cupidatat", "qui", "officia" ], "friends": [ { "id": 0, "name": "Dolores Buchanan" }, { "id": 1, "name": "Nash Trujillo" }, { "id": 2, "name": "Mann Pittman" } ], "greeting": "Hello, Robles Cannon! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27e6599d5e27081fb2", "index": 3481, "guid": "0485aedc-3863-4c1f-84dc-e026ffe3c2a3", "isActive": false, "balance": "$2,989.99", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Kristie Crane", "gender": "female", "company": "FLUM", "email": "kristiecrane@flum.com", "phone": "+1 (945) 564-3326", "address": "817 Loring Avenue, Deseret, Massachusetts, 5056", "about": "Lorem proident aliqua Lorem Lorem. Est deserunt quis nostrud irure eiusmod aliquip eu. Fugiat nostrud magna Lorem ad enim et magna aute elit voluptate aute ullamco eiusmod. Non pariatur laborum occaecat enim sint labore est in elit deserunt eiusmod aliquip ullamco.\r\n", "registered": "2014-01-06T17:17:00-13:00", "latitude": -18.174533, "longitude": -90.092117, "tags": [ "Lorem", "aute", "proident", "nostrud", "id", "tempor", "adipisicing" ], "friends": [ { "id": 0, "name": "Donaldson Pruitt" }, { "id": 1, "name": "Karen Holmes" }, { "id": 2, "name": "Mckay Bryant" } ], "greeting": "Hello, Kristie Crane! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27f2a625b482fd0f77", "index": 3482, "guid": "6c3e7e53-57e7-4a1f-8056-73b70e2c85ed", "isActive": true, "balance": "$1,904.19", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Sexton Cummings", "gender": "male", "company": "KNEEDLES", "email": "sextoncummings@kneedles.com", "phone": "+1 (876) 526-2370", "address": "395 Debevoise Street, Matthews, Utah, 3103", "about": "Enim do minim consequat proident cillum laboris fugiat consequat ut labore ut. Et proident commodo quis nulla incididunt officia duis ad adipisicing incididunt aliquip sint eu quis. Sit do est labore sunt veniam cillum culpa enim reprehenderit culpa. Minim qui non irure sint non exercitation cupidatat laborum ad occaecat. Eu adipisicing labore fugiat officia dolor in. Fugiat consectetur proident elit ullamco irure anim do ex id enim amet. Sit irure proident ipsum ex sint.\r\n", "registered": "2014-01-14T22:44:16-13:00", "latitude": -18.964484, "longitude": -95.063625, "tags": [ "duis", "Lorem", "irure", "nisi", "nulla", "ut", "qui" ], "friends": [ { "id": 0, "name": "Ramos Gilmore" }, { "id": 1, "name": "Rosemarie Powell" }, { "id": 2, "name": "Lesley Silva" } ], "greeting": "Hello, Sexton Cummings! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27d4f768add7826af2", "index": 3483, "guid": "f307a58e-84ef-4592-a009-010155ac57c3", "isActive": true, "balance": "$3,288.75", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Buckley Wong", "gender": "male", "company": "UPLINX", "email": "buckleywong@uplinx.com", "phone": "+1 (875) 569-3077", "address": "935 Dank Court, Brecon, Montana, 336", "about": "Irure nostrud laboris ullamco veniam eu sint aliquip eu. Fugiat eiusmod do fugiat tempor consectetur mollit amet. Ullamco labore cillum velit aute mollit amet ex.\r\n", "registered": "2014-01-14T10:47:29-13:00", "latitude": 85.987058, "longitude": -45.489345, "tags": [ "irure", "elit", "ullamco", "nostrud", "quis", "labore", "deserunt" ], "friends": [ { "id": 0, "name": "Gabrielle Hood" }, { "id": 1, "name": "Meagan Herrera" }, { "id": 2, "name": "Deanne Hanson" } ], "greeting": "Hello, Buckley Wong! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea277899ef1beb2d7314", "index": 3484, "guid": "e70d2cf9-c7ae-4bb5-9e38-ff9281e1d851", "isActive": true, "balance": "$1,395.34", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Pam Hammond", "gender": "female", "company": "EZENTIA", "email": "pamhammond@ezentia.com", "phone": "+1 (975) 495-3259", "address": "801 Harman Street, Rossmore, Wisconsin, 8454", "about": "Non exercitation incididunt qui quis consequat enim consequat aute commodo proident amet deserunt ullamco do. Veniam nulla incididunt consequat elit ut ex reprehenderit proident amet esse occaecat. Adipisicing duis exercitation aliquip dolor eiusmod enim ex cupidatat.\r\n", "registered": "2014-09-21T16:24:05-12:00", "latitude": 58.708558, "longitude": 49.175149, "tags": [ "officia", "laborum", "elit", "sint", "consectetur", "in", "sit" ], "friends": [ { "id": 0, "name": "Sharpe Burnett" }, { "id": 1, "name": "Hines Barr" }, { "id": 2, "name": "Mari Bradley" } ], "greeting": "Hello, Pam Hammond! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27d8916f8dbacd5af1", "index": 3485, "guid": "83e43686-9cfb-43b0-b552-bc533f334345", "isActive": false, "balance": "$1,585.89", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Butler Howard", "gender": "male", "company": "ZENTIA", "email": "butlerhoward@zentia.com", "phone": "+1 (916) 571-2901", "address": "872 Homecrest Avenue, Gwynn, Maine, 4343", "about": "Proident et duis fugiat culpa duis. Nisi aliquip in reprehenderit adipisicing exercitation pariatur labore cillum eiusmod enim mollit id cupidatat culpa. Officia duis officia nulla consectetur qui adipisicing exercitation adipisicing sunt ex.\r\n", "registered": "2014-07-22T15:12:30-12:00", "latitude": -75.75721, "longitude": 149.176342, "tags": [ "dolore", "ipsum", "deserunt", "aliqua", "in", "ex", "sunt" ], "friends": [ { "id": 0, "name": "Carmella Webster" }, { "id": 1, "name": "Marie Weber" }, { "id": 2, "name": "Garrett Faulkner" } ], "greeting": "Hello, Butler Howard! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27b80dbae46db1626f", "index": 3486, "guid": "e204125b-f8cf-4ba8-b40c-358c8d79a7fb", "isActive": false, "balance": "$3,954.77", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Beasley Richardson", "gender": "male", "company": "BUZZMAKER", "email": "beasleyrichardson@buzzmaker.com", "phone": "+1 (950) 476-2110", "address": "547 Noll Street, Westmoreland, Virginia, 7054", "about": "Et sint aliquip laboris et eiusmod velit consectetur elit ipsum nulla occaecat reprehenderit. Amet officia et officia culpa eiusmod consequat nisi nulla aute qui minim esse cillum voluptate. Dolor elit enim ad anim reprehenderit sunt voluptate mollit. Laborum anim do culpa incididunt laborum nisi nostrud anim eiusmod do ipsum tempor. Veniam pariatur tempor ad nostrud tempor et quis adipisicing labore ipsum consectetur.\r\n", "registered": "2014-03-14T15:29:53-13:00", "latitude": -38.027693, "longitude": 173.224694, "tags": [ "ad", "ullamco", "quis", "occaecat", "ullamco", "ad", "duis" ], "friends": [ { "id": 0, "name": "Marsha Hess" }, { "id": 1, "name": "Odessa Olson" }, { "id": 2, "name": "Marylou Ferrell" } ], "greeting": "Hello, Beasley Richardson! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2752d6bf17a6d2a183", "index": 3487, "guid": "268f2186-f725-4e25-9206-ff1cd98bce81", "isActive": false, "balance": "$1,239.37", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Shepherd Blevins", "gender": "male", "company": "IMAGEFLOW", "email": "shepherdblevins@imageflow.com", "phone": "+1 (954) 573-2969", "address": "596 Jaffray Street, Dragoon, Kentucky, 2496", "about": "Deserunt labore exercitation qui consectetur culpa tempor ex aliquip dolor ea irure mollit. Adipisicing Lorem est est eu nostrud minim laboris reprehenderit culpa nisi consectetur voluptate. Adipisicing mollit tempor sit ullamco nostrud reprehenderit labore aute irure dolore adipisicing. Ut proident adipisicing ipsum ea commodo ad ea commodo deserunt.\r\n", "registered": "2014-06-06T14:37:08-12:00", "latitude": 6.571987, "longitude": 39.975403, "tags": [ "minim", "excepteur", "ipsum", "labore", "eu", "fugiat", "dolor" ], "friends": [ { "id": 0, "name": "Carson Andrews" }, { "id": 1, "name": "Peck Campos" }, { "id": 2, "name": "Jannie Dean" } ], "greeting": "Hello, Shepherd Blevins! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27e38ead283d3f80ea", "index": 3488, "guid": "c7326798-d96e-4060-99a0-39134e887598", "isActive": true, "balance": "$1,951.88", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Manning Cotton", "gender": "male", "company": "FUTURIZE", "email": "manningcotton@futurize.com", "phone": "+1 (836) 430-3125", "address": "730 Meserole Street, Woodburn, Connecticut, 9789", "about": "Commodo do aute pariatur et quis eu aliqua cillum excepteur ad quis laboris consequat cupidatat. Sit esse fugiat sint minim minim cillum culpa. Velit exercitation do ipsum cupidatat cillum ad qui elit voluptate exercitation eiusmod ullamco ipsum nulla. Et laboris incididunt veniam veniam eiusmod.\r\n", "registered": "2014-01-10T00:47:48-13:00", "latitude": -35.035929, "longitude": 19.294339, "tags": [ "qui", "id", "labore", "sunt", "consectetur", "tempor", "nostrud" ], "friends": [ { "id": 0, "name": "Pruitt Winters" }, { "id": 1, "name": "Saundra Payne" }, { "id": 2, "name": "Rachelle Puckett" } ], "greeting": "Hello, Manning Cotton! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27484a0c79c9b80d67", "index": 3489, "guid": "d06bebaa-ffe2-4155-b656-715e21a0f7cd", "isActive": false, "balance": "$3,541.57", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Allison Finley", "gender": "female", "company": "MAKINGWAY", "email": "allisonfinley@makingway.com", "phone": "+1 (955) 480-3700", "address": "519 Myrtle Avenue, Hampstead, Mississippi, 6736", "about": "Dolore id amet voluptate dolor nulla aliquip commodo pariatur reprehenderit. Nulla tempor proident commodo exercitation magna id. Officia dolore eu proident eiusmod aute cillum magna elit nisi est laborum culpa deserunt sit. Commodo dolor proident laboris et sint eiusmod non enim labore ad enim culpa ea non.\r\n", "registered": "2014-03-10T17:04:18-13:00", "latitude": 36.506393, "longitude": -28.827768, "tags": [ "ex", "qui", "tempor", "adipisicing", "irure", "ullamco", "ut" ], "friends": [ { "id": 0, "name": "Jenifer Conrad" }, { "id": 1, "name": "Workman Allison" }, { "id": 2, "name": "Bauer Dennis" } ], "greeting": "Hello, Allison Finley! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea271a5e99bde8671ca5", "index": 3490, "guid": "1500e242-0a4d-4fa9-bd02-0c71548aa81b", "isActive": false, "balance": "$1,649.94", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Ilene Bright", "gender": "female", "company": "PLEXIA", "email": "ilenebright@plexia.com", "phone": "+1 (913) 532-2102", "address": "673 Bush Street, Clinton, Washington, 4626", "about": "Laboris excepteur occaecat ex do dolore cillum ea do excepteur elit ipsum non tempor esse. Tempor aute ullamco elit amet id mollit irure et sint tempor mollit. Amet laboris occaecat consequat ipsum in laborum Lorem cupidatat esse. Minim excepteur anim excepteur aliquip dolor velit minim sit pariatur proident.\r\n", "registered": "2014-09-18T19:14:34-12:00", "latitude": 45.013071, "longitude": -129.947622, "tags": [ "labore", "consequat", "exercitation", "do", "adipisicing", "incididunt", "aliquip" ], "friends": [ { "id": 0, "name": "Hattie Freeman" }, { "id": 1, "name": "Bryan Vargas" }, { "id": 2, "name": "Burns Fuentes" } ], "greeting": "Hello, Ilene Bright! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27efd347a9e70a2526", "index": 3491, "guid": "b582ea38-73f8-4f9f-befb-50fade2c6270", "isActive": true, "balance": "$1,803.37", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Hurst Giles", "gender": "male", "company": "PRISMATIC", "email": "hurstgiles@prismatic.com", "phone": "+1 (855) 487-2561", "address": "826 Tilden Avenue, Rivereno, Tennessee, 7765", "about": "Adipisicing in aliqua fugiat amet est commodo. Reprehenderit duis ut elit eu irure enim incididunt tempor mollit fugiat eiusmod ipsum sit anim. Sit eu non labore voluptate aliqua tempor incididunt irure Lorem ex magna. Laboris et labore ad cupidatat sunt fugiat elit nulla qui.\r\n", "registered": "2014-07-19T17:16:43-12:00", "latitude": 38.814249, "longitude": 97.019754, "tags": [ "ad", "pariatur", "quis", "pariatur", "exercitation", "ex", "sit" ], "friends": [ { "id": 0, "name": "Antonia Singleton" }, { "id": 1, "name": "Meghan Farmer" }, { "id": 2, "name": "Blanchard Lewis" } ], "greeting": "Hello, Hurst Giles! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27a574aeac29e6e03f", "index": 3492, "guid": "12683fbd-532f-4bc9-bebd-192569fef7f0", "isActive": false, "balance": "$3,039.74", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Trina Castaneda", "gender": "female", "company": "TELPOD", "email": "trinacastaneda@telpod.com", "phone": "+1 (888) 493-3931", "address": "737 Ditmars Street, Newry, Alabama, 2797", "about": "Reprehenderit laboris commodo quis quis. Ea reprehenderit et pariatur cupidatat laborum culpa amet nisi eiusmod id Lorem veniam laboris nisi. Veniam laboris reprehenderit non nulla veniam enim quis Lorem nostrud laborum. Id ea nostrud sint quis consequat adipisicing nulla est sunt et adipisicing.\r\n", "registered": "2014-06-24T01:57:32-12:00", "latitude": -51.568731, "longitude": -5.013963, "tags": [ "voluptate", "labore", "amet", "ut", "minim", "aute", "reprehenderit" ], "friends": [ { "id": 0, "name": "Rosie Burgess" }, { "id": 1, "name": "Norma Brooks" }, { "id": 2, "name": "Felicia Boyer" } ], "greeting": "Hello, Trina Castaneda! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27aee7233b91f95ede", "index": 3493, "guid": "97f116b7-a76a-48ca-817b-80c0b14ec526", "isActive": true, "balance": "$1,899.49", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Robert Cortez", "gender": "female", "company": "GEEKUS", "email": "robertcortez@geekus.com", "phone": "+1 (865) 476-2731", "address": "544 Dorset Street, Falmouth, Ohio, 5569", "about": "Ullamco irure nulla pariatur quis deserunt amet elit labore aliquip laborum adipisicing pariatur voluptate magna. Adipisicing nulla deserunt culpa commodo quis laborum aliquip officia Lorem Lorem ex commodo. Et ipsum quis adipisicing quis nostrud laboris labore non dolore pariatur eu commodo ex culpa. Nulla deserunt sunt irure ipsum aute officia exercitation commodo ea amet. Et deserunt ullamco aute in ipsum velit fugiat dolor laborum magna.\r\n", "registered": "2014-01-14T15:10:37-13:00", "latitude": 15.41587, "longitude": -81.44594, "tags": [ "ipsum", "exercitation", "quis", "culpa", "dolor", "incididunt", "officia" ], "friends": [ { "id": 0, "name": "Cash Beck" }, { "id": 1, "name": "Sondra Hurley" }, { "id": 2, "name": "Olivia Macias" } ], "greeting": "Hello, Robert Cortez! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea270afff93d9ac4f98e", "index": 3494, "guid": "e4973762-366b-40d3-8be3-d4d7e033a5b6", "isActive": true, "balance": "$3,371.47", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Gallagher Buckner", "gender": "male", "company": "COLLAIRE", "email": "gallagherbuckner@collaire.com", "phone": "+1 (841) 560-2603", "address": "717 Dictum Court, Ladera, Hawaii, 6143", "about": "Cupidatat velit tempor eu consequat. Veniam nostrud proident anim reprehenderit aliquip. Duis aute veniam mollit ipsum aliquip incididunt voluptate voluptate excepteur aliqua occaecat. Proident laboris irure qui amet minim id qui excepteur.\r\n", "registered": "2014-05-16T18:33:45-12:00", "latitude": 40.124787, "longitude": 72.488191, "tags": [ "aliquip", "sit", "cupidatat", "anim", "laborum", "dolor", "proident" ], "friends": [ { "id": 0, "name": "Etta Cooke" }, { "id": 1, "name": "Rich Garrett" }, { "id": 2, "name": "Joyce Mcleod" } ], "greeting": "Hello, Gallagher Buckner! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27ba61c0b82091fc92", "index": 3495, "guid": "755357f6-eaa6-4f1b-8ed0-7ccddf266060", "isActive": false, "balance": "$2,935.94", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Mattie Mcgee", "gender": "female", "company": "PHOTOBIN", "email": "mattiemcgee@photobin.com", "phone": "+1 (987) 573-2272", "address": "976 Harbor Lane, Lopezo, New Mexico, 8566", "about": "Incididunt aute voluptate qui laboris. Laborum est enim amet mollit ex proident cillum incididunt quis cupidatat anim elit. Magna ipsum eiusmod deserunt magna ad fugiat fugiat officia velit sint velit. Labore cupidatat laboris incididunt velit consequat.\r\n", "registered": "2014-05-09T01:42:21-12:00", "latitude": 68.894124, "longitude": -45.671615, "tags": [ "elit", "dolore", "esse", "culpa", "culpa", "ut", "incididunt" ], "friends": [ { "id": 0, "name": "Anastasia Horne" }, { "id": 1, "name": "Wade Kinney" }, { "id": 2, "name": "Dorothy Witt" } ], "greeting": "Hello, Mattie Mcgee! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27bddf6620892ebcf8", "index": 3496, "guid": "9ddde51d-8a9c-4df9-9ea3-c52aa55f54a1", "isActive": true, "balance": "$3,471.13", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "James Perkins", "gender": "female", "company": "ZOID", "email": "jamesperkins@zoid.com", "phone": "+1 (879) 565-2136", "address": "658 Vanderveer Place, Wattsville, Maryland, 2060", "about": "Dolore irure aute ex elit tempor. Exercitation duis id excepteur laboris excepteur veniam id enim aliqua. Exercitation fugiat nisi amet magna magna dolor incididunt quis veniam. Ut veniam pariatur dolore laborum. Fugiat nulla tempor culpa elit fugiat.\r\n", "registered": "2014-07-25T21:53:37-12:00", "latitude": 29.665278, "longitude": -175.050878, "tags": [ "cillum", "laboris", "ut", "elit", "consequat", "Lorem", "dolore" ], "friends": [ { "id": 0, "name": "Vanessa Merrill" }, { "id": 1, "name": "Mendez Cherry" }, { "id": 2, "name": "Lina Lucas" } ], "greeting": "Hello, James Perkins! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2780a5b3b3b8ff0916", "index": 3497, "guid": "424f9af1-c4fc-4d78-b4ad-fd3f9a97392e", "isActive": true, "balance": "$3,400.05", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Lou Hancock", "gender": "female", "company": "IMKAN", "email": "louhancock@imkan.com", "phone": "+1 (813) 586-3178", "address": "976 Macdougal Street, Navarre, Alaska, 7242", "about": "Sint ea qui dolore ut sit mollit amet ullamco amet magna ea nulla laborum sint. Excepteur consequat tempor exercitation labore reprehenderit proident est ad in ea nisi dolor veniam. Irure laboris enim sit aliquip dolore officia laborum cupidatat voluptate ut laborum.\r\n", "registered": "2014-06-01T19:39:56-12:00", "latitude": -26.579204, "longitude": -107.236722, "tags": [ "et", "occaecat", "reprehenderit", "cupidatat", "nisi", "incididunt", "excepteur" ], "friends": [ { "id": 0, "name": "Contreras Wilkerson" }, { "id": 1, "name": "Puckett Zamora" }, { "id": 2, "name": "Lorie Mack" } ], "greeting": "Hello, Lou Hancock! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27bdb9eb4deb8dcd17", "index": 3498, "guid": "39b9af86-dc5e-45d8-a035-b2919c7b7bec", "isActive": false, "balance": "$3,246.57", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Mccall Oneill", "gender": "male", "company": "BIOTICA", "email": "mccalloneill@biotica.com", "phone": "+1 (813) 413-3468", "address": "311 Roosevelt Court, Hachita, Arizona, 2630", "about": "Lorem in commodo consequat dolor et nulla laborum exercitation voluptate. Tempor elit sit consequat consectetur culpa aliquip culpa occaecat anim qui laboris non excepteur proident. Fugiat cupidatat exercitation voluptate commodo elit voluptate eiusmod aliqua labore commodo. Veniam eu culpa aliquip laboris deserunt fugiat amet consequat elit proident fugiat qui veniam velit. Tempor duis laborum ut cillum in ex eu dolor reprehenderit elit officia excepteur ad.\r\n", "registered": "2014-04-08T22:42:04-12:00", "latitude": 71.411091, "longitude": 87.896712, "tags": [ "deserunt", "ea", "officia", "irure", "ullamco", "adipisicing", "minim" ], "friends": [ { "id": 0, "name": "Stafford Lawson" }, { "id": 1, "name": "Allyson Thomas" }, { "id": 2, "name": "Allison Stein" } ], "greeting": "Hello, Mccall Oneill! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27be5db4e81a260a87", "index": 3499, "guid": "cd0beef6-efce-4b5d-b564-18d263c98311", "isActive": true, "balance": "$3,492.63", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Patsy Jacobs", "gender": "female", "company": "MEDESIGN", "email": "patsyjacobs@medesign.com", "phone": "+1 (936) 598-3373", "address": "233 Gaylord Drive, Bagtown, Federated States Of Micronesia, 3469", "about": "In est id cillum in dolore cupidatat. Irure velit sunt fugiat quis elit anim minim exercitation duis est. Ea ex laboris ipsum eu aute voluptate. Ex ex proident irure quis nisi. Commodo anim et qui et anim cupidatat officia. Qui eu occaecat exercitation voluptate veniam. Sunt et velit sit ea incididunt magna reprehenderit ipsum ea culpa dolore sint.\r\n", "registered": "2014-09-17T08:06:56-12:00", "latitude": -69.563507, "longitude": 79.803566, "tags": [ "ad", "eiusmod", "enim", "mollit", "voluptate", "nulla", "laborum" ], "friends": [ { "id": 0, "name": "Victoria Malone" }, { "id": 1, "name": "Amalia Lynch" }, { "id": 2, "name": "Keller Hendrix" } ], "greeting": "Hello, Patsy Jacobs! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27fe7c62fbfff1fdb5", "index": 3500, "guid": "5efbc295-0961-42cf-901f-40fb7fa9985c", "isActive": false, "balance": "$3,939.16", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Holmes Meyer", "gender": "male", "company": "HYPLEX", "email": "holmesmeyer@hyplex.com", "phone": "+1 (970) 502-3952", "address": "536 Engert Avenue, Forestburg, Oklahoma, 9488", "about": "Cupidatat incididunt mollit ex esse occaecat culpa Lorem Lorem. Consectetur occaecat ipsum ex laborum cupidatat officia non. Eu quis fugiat ea reprehenderit laborum nulla laborum Lorem duis exercitation occaecat nostrud enim.\r\n", "registered": "2014-06-13T12:25:10-12:00", "latitude": 84.264911, "longitude": 75.097665, "tags": [ "labore", "nostrud", "nulla", "velit", "et", "ullamco", "proident" ], "friends": [ { "id": 0, "name": "Britt Walton" }, { "id": 1, "name": "Acosta Stanley" }, { "id": 2, "name": "Fern Collins" } ], "greeting": "Hello, Holmes Meyer! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27ec1a1b21044e0b4a", "index": 3501, "guid": "20dd8ed4-c2bb-4119-a705-946901edc2de", "isActive": false, "balance": "$3,063.65", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Murray Sosa", "gender": "male", "company": "NETROPIC", "email": "murraysosa@netropic.com", "phone": "+1 (962) 554-3624", "address": "843 Girard Street, Grazierville, Michigan, 2002", "about": "Amet labore consequat incididunt in ipsum labore nostrud id. Cupidatat incididunt ad qui nostrud incididunt nulla sunt ullamco do tempor nisi. Eu sint reprehenderit amet qui cillum dolor proident. Non nisi non nisi irure ut est commodo. Officia non non et cillum est esse deserunt. Aute irure officia nisi duis aute velit ex nisi quis incididunt do esse duis. Mollit excepteur ullamco tempor exercitation ex nisi amet.\r\n", "registered": "2014-02-15T20:26:58-13:00", "latitude": 2.84234, "longitude": 126.715245, "tags": [ "dolore", "quis", "ad", "consectetur", "ad", "consectetur", "officia" ], "friends": [ { "id": 0, "name": "Katharine Sampson" }, { "id": 1, "name": "Lottie Cain" }, { "id": 2, "name": "Cross Sawyer" } ], "greeting": "Hello, Murray Sosa! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27832bf7f89ef716fa", "index": 3502, "guid": "46893f7a-2a64-4579-bf1d-315736060f3a", "isActive": false, "balance": "$3,547.60", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Lydia Wilder", "gender": "female", "company": "ZERBINA", "email": "lydiawilder@zerbina.com", "phone": "+1 (810) 417-3844", "address": "545 Forbell Street, Templeton, Kansas, 8619", "about": "Ea tempor velit amet esse minim consequat laboris veniam reprehenderit. Laboris ipsum consectetur et duis Lorem eiusmod ad et commodo tempor magna id in ex. Deserunt Lorem veniam ex Lorem ea. Qui occaecat commodo est ut eiusmod. Ipsum aliqua eu nostrud id ullamco amet exercitation enim aliqua proident nulla do. Ipsum occaecat veniam ea ullamco.\r\n", "registered": "2014-02-11T16:46:16-13:00", "latitude": 83.223104, "longitude": 146.333902, "tags": [ "esse", "deserunt", "do", "in", "cupidatat", "ipsum", "eu" ], "friends": [ { "id": 0, "name": "Colette Mccray" }, { "id": 1, "name": "Noel Sanford" }, { "id": 2, "name": "Marina Cardenas" } ], "greeting": "Hello, Lydia Wilder! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea275bd45a36fb4f9243", "index": 3503, "guid": "4cc6ef79-6d42-4e10-b9fc-4cc3f1d43ae4", "isActive": true, "balance": "$2,967.66", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Susanne Morrow", "gender": "female", "company": "CYCLONICA", "email": "susannemorrow@cyclonica.com", "phone": "+1 (908) 543-2510", "address": "704 Schenectady Avenue, Gibsonia, South Dakota, 3833", "about": "Laborum aliquip ea aliqua duis fugiat veniam elit. Aute velit quis id ipsum laborum labore aute Lorem aliquip est deserunt. Exercitation mollit aliqua tempor pariatur velit magna pariatur incididunt ullamco laborum Lorem quis minim. Laboris enim ullamco culpa exercitation voluptate.\r\n", "registered": "2014-01-10T04:39:53-13:00", "latitude": -23.748033, "longitude": 7.126674, "tags": [ "do", "Lorem", "consectetur", "cillum", "consequat", "enim", "occaecat" ], "friends": [ { "id": 0, "name": "Ellen Livingston" }, { "id": 1, "name": "Martin Hamilton" }, { "id": 2, "name": "Dorsey Shepherd" } ], "greeting": "Hello, Susanne Morrow! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27452210727fc21964", "index": 3504, "guid": "045ef25a-7ea4-4f67-ba9f-381e513ae789", "isActive": false, "balance": "$3,121.47", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Harriett Clayton", "gender": "female", "company": "QOT", "email": "harriettclayton@qot.com", "phone": "+1 (879) 519-3855", "address": "552 Dewey Place, Why, West Virginia, 1669", "about": "Labore officia in consectetur in cupidatat. Veniam ipsum non dolor consectetur officia minim reprehenderit. Enim Lorem est velit officia pariatur id. Amet pariatur ut amet id Lorem cillum est excepteur fugiat excepteur.\r\n", "registered": "2014-02-05T02:03:21-13:00", "latitude": -78.628882, "longitude": -47.671313, "tags": [ "laborum", "excepteur", "sint", "eu", "commodo", "et", "aute" ], "friends": [ { "id": 0, "name": "Penelope Atkinson" }, { "id": 1, "name": "Tammy Clay" }, { "id": 2, "name": "Schultz Whitehead" } ], "greeting": "Hello, Harriett Clayton! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27d6cf635538dba602", "index": 3505, "guid": "ee9c891e-8448-40b6-a816-3e6b00309f4e", "isActive": false, "balance": "$1,816.30", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Hernandez Rush", "gender": "male", "company": "ISOSTREAM", "email": "hernandezrush@isostream.com", "phone": "+1 (881) 540-2164", "address": "340 Banner Avenue, Elrama, Texas, 5123", "about": "Exercitation laborum occaecat qui et do in cupidatat id non anim quis ut eiusmod. Labore ex cillum id qui ex aliquip. Proident consectetur dolor exercitation sunt ad voluptate magna dolor adipisicing sint exercitation exercitation. Lorem ipsum cillum exercitation non aliquip excepteur.\r\n", "registered": "2014-07-21T16:52:22-12:00", "latitude": 81.875954, "longitude": -17.729324, "tags": [ "nostrud", "labore", "excepteur", "minim", "veniam", "ea", "elit" ], "friends": [ { "id": 0, "name": "Leah Hayden" }, { "id": 1, "name": "Underwood Wooten" }, { "id": 2, "name": "Ebony Blankenship" } ], "greeting": "Hello, Hernandez Rush! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea274a00832dec618aaa", "index": 3506, "guid": "3c142f78-76b9-4dfe-865b-4a5d07250bad", "isActive": false, "balance": "$3,833.19", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Wise Kent", "gender": "male", "company": "NEBULEAN", "email": "wisekent@nebulean.com", "phone": "+1 (848) 480-3368", "address": "910 Hazel Court, Wilsonia, Oregon, 2480", "about": "Mollit id veniam dolore officia sint nisi reprehenderit magna nisi sit. Id est officia aute sint amet. Qui pariatur irure id officia excepteur adipisicing aliquip nostrud magna. Amet eiusmod duis Lorem sunt exercitation aliquip aliquip. Magna dolor do officia cupidatat culpa aliqua tempor cillum est. Ex irure aliqua commodo cupidatat consequat veniam pariatur. Enim anim ut et reprehenderit reprehenderit culpa duis laboris non pariatur culpa occaecat nostrud consequat.\r\n", "registered": "2014-02-03T00:00:08-13:00", "latitude": -19.276581, "longitude": -10.797679, "tags": [ "excepteur", "aliqua", "enim", "consequat", "proident", "nisi", "enim" ], "friends": [ { "id": 0, "name": "Amanda Ramirez" }, { "id": 1, "name": "Cathleen Hardy" }, { "id": 2, "name": "Gilbert Ross" } ], "greeting": "Hello, Wise Kent! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27d0d5fa9d1ac81ca7", "index": 3507, "guid": "444a26eb-342f-4e79-9976-1e7af865ef79", "isActive": false, "balance": "$1,140.14", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Roberts Wade", "gender": "male", "company": "OHMNET", "email": "robertswade@ohmnet.com", "phone": "+1 (833) 485-2217", "address": "677 Danforth Street, Leyner, Nevada, 5963", "about": "Aute veniam nulla dolore ad id dolore elit. Incididunt ipsum deserunt in ut duis consectetur qui consectetur sit duis commodo labore. Magna occaecat anim est pariatur cupidatat quis. Duis tempor et elit qui aliqua ex minim eiusmod eiusmod qui ut.\r\n", "registered": "2014-09-22T04:07:59-12:00", "latitude": -1.721999, "longitude": 163.697164, "tags": [ "laboris", "est", "sunt", "Lorem", "ad", "proident", "nostrud" ], "friends": [ { "id": 0, "name": "Goodwin Cunningham" }, { "id": 1, "name": "Sharp Noble" }, { "id": 2, "name": "Perez Montgomery" } ], "greeting": "Hello, Roberts Wade! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2783c71986f9d4c02c", "index": 3508, "guid": "b5f3dba2-f1af-4f9a-9777-1872b1f8f1ce", "isActive": true, "balance": "$2,160.14", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Strickland Tran", "gender": "male", "company": "AQUASSEUR", "email": "stricklandtran@aquasseur.com", "phone": "+1 (818) 562-2028", "address": "241 Bouck Court, Wacissa, Minnesota, 2059", "about": "Ipsum sit qui magna mollit laborum adipisicing nostrud exercitation officia ea irure qui. Elit mollit duis eu voluptate aliquip enim eiusmod consectetur duis id aute sit id et. Tempor officia laborum quis tempor qui do consequat aliquip in esse. Amet consequat nostrud proident officia enim aute aliquip. Velit amet mollit esse est. Culpa fugiat laboris do non nulla ipsum nisi.\r\n", "registered": "2014-07-09T01:53:44-12:00", "latitude": -81.763916, "longitude": -139.539262, "tags": [ "irure", "aliqua", "amet", "nisi", "mollit", "esse", "velit" ], "friends": [ { "id": 0, "name": "Hampton Valdez" }, { "id": 1, "name": "Desiree Hebert" }, { "id": 2, "name": "Albert Simmons" } ], "greeting": "Hello, Strickland Tran! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2780395ddfc7314d6d", "index": 3509, "guid": "c5369f24-cde9-4e37-bb6a-80c64411b187", "isActive": false, "balance": "$2,687.86", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Eloise Fox", "gender": "female", "company": "GOGOL", "email": "eloisefox@gogol.com", "phone": "+1 (910) 505-2434", "address": "767 Pleasant Place, Hiko, Missouri, 9381", "about": "Culpa nostrud elit consequat aliqua non do adipisicing duis dolore. Consequat ex magna Lorem et dolore dolor reprehenderit laborum proident amet. Esse nostrud anim aute Lorem ullamco dolore amet amet cupidatat. Sunt id eiusmod dolore officia esse. Aute non eu duis tempor laborum ipsum magna fugiat aliqua exercitation quis mollit incididunt laboris. Consequat sint quis veniam labore dolore dolor voluptate cupidatat ut. Magna occaecat Lorem ut tempor voluptate consectetur incididunt.\r\n", "registered": "2014-03-20T17:20:00-13:00", "latitude": -77.895285, "longitude": 129.359082, "tags": [ "ipsum", "minim", "ipsum", "ullamco", "pariatur", "eiusmod", "ipsum" ], "friends": [ { "id": 0, "name": "Casey Mosley" }, { "id": 1, "name": "Flores Cole" }, { "id": 2, "name": "Reva Waters" } ], "greeting": "Hello, Eloise Fox! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2761b1468ed1e99d11", "index": 3510, "guid": "c1a7c9ac-e7cd-4cca-ab1b-cd29939e0f02", "isActive": false, "balance": "$1,667.19", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Haley Vega", "gender": "female", "company": "REMOLD", "email": "haleyvega@remold.com", "phone": "+1 (970) 418-2706", "address": "670 Barlow Drive, Tuskahoma, Rhode Island, 462", "about": "Elit duis et duis sint sit. Commodo proident duis elit esse nisi ullamco tempor commodo quis. Deserunt consectetur nisi occaecat est ex esse excepteur enim id laboris. Fugiat adipisicing fugiat minim laborum ut. Ut ex proident irure sunt ut fugiat occaecat. Incididunt quis id exercitation et deserunt commodo aute.\r\n", "registered": "2014-06-07T22:58:25-12:00", "latitude": -26.173652, "longitude": -9.179826, "tags": [ "eu", "minim", "sit", "dolor", "elit", "enim", "Lorem" ], "friends": [ { "id": 0, "name": "Beverly Madden" }, { "id": 1, "name": "Davenport Bradford" }, { "id": 2, "name": "Dotson Slater" } ], "greeting": "Hello, Haley Vega! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea274361c212c2c8297e", "index": 3511, "guid": "e902c938-e2a4-4e35-af2d-79a9ac12ff2f", "isActive": true, "balance": "$3,730.36", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Jeri Maddox", "gender": "female", "company": "GENMOM", "email": "jerimaddox@genmom.com", "phone": "+1 (940) 534-3261", "address": "356 Denton Place, Cazadero, Florida, 5429", "about": "Enim ea do magna irure amet qui. Commodo velit ipsum dolor ad. Sit labore duis anim nisi tempor anim enim eiusmod sit laboris. Commodo in consectetur laborum aliquip.\r\n", "registered": "2014-01-16T03:56:59-13:00", "latitude": 57.106472, "longitude": 15.343973, "tags": [ "fugiat", "qui", "do", "ex", "laborum", "pariatur", "mollit" ], "friends": [ { "id": 0, "name": "Kim Ward" }, { "id": 1, "name": "Williamson Rice" }, { "id": 2, "name": "Margery Hendricks" } ], "greeting": "Hello, Jeri Maddox! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27afe78d49155893bb", "index": 3512, "guid": "c70722df-9c92-4e9b-a27c-a31bca4a872d", "isActive": true, "balance": "$3,000.07", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Patrick Morse", "gender": "male", "company": "EQUITOX", "email": "patrickmorse@equitox.com", "phone": "+1 (863) 496-3983", "address": "491 Dakota Place, Hiseville, North Carolina, 5490", "about": "Fugiat non velit nisi consectetur sint fugiat. Fugiat in exercitation amet nulla cupidatat commodo in laboris consectetur sit mollit veniam ullamco. Mollit cillum reprehenderit sunt do dolore do.\r\n", "registered": "2014-03-29T13:20:49-13:00", "latitude": 8.487283, "longitude": -123.268429, "tags": [ "labore", "est", "ut", "fugiat", "labore", "veniam", "elit" ], "friends": [ { "id": 0, "name": "Glenda James" }, { "id": 1, "name": "Berg Griffith" }, { "id": 2, "name": "Benita Webb" } ], "greeting": "Hello, Patrick Morse! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea277e49410ce5d9ba26", "index": 3513, "guid": "b9c9e80a-54cc-4dfe-9faf-f94ff7bddc29", "isActive": false, "balance": "$2,179.05", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Cherie Kirk", "gender": "female", "company": "ZILIDIUM", "email": "cheriekirk@zilidium.com", "phone": "+1 (846) 404-3974", "address": "737 Seacoast Terrace, Avalon, New Hampshire, 6385", "about": "Lorem non irure fugiat do sit mollit veniam Lorem voluptate nulla est fugiat sint. Quis eiusmod aute ut mollit do veniam enim cupidatat nostrud et eu nostrud ea nisi. Do culpa ipsum nisi ad duis ipsum officia culpa nostrud.\r\n", "registered": "2014-09-21T11:19:56-12:00", "latitude": -5.447151, "longitude": 32.404978, "tags": [ "eu", "labore", "amet", "pariatur", "anim", "nulla", "nisi" ], "friends": [ { "id": 0, "name": "Meadows Rutledge" }, { "id": 1, "name": "Elnora Baker" }, { "id": 2, "name": "Sheena Daniels" } ], "greeting": "Hello, Cherie Kirk! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27dac5d93e32c63607", "index": 3514, "guid": "d7d4f0cf-6a56-4af7-94ee-06f9ecab6f4d", "isActive": true, "balance": "$2,822.99", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Downs Wright", "gender": "male", "company": "GADTRON", "email": "downswright@gadtron.com", "phone": "+1 (853) 558-2417", "address": "413 Joralemon Street, Chesterfield, Arkansas, 1540", "about": "Irure officia dolor aliquip irure est consequat. Nisi amet excepteur laboris nostrud commodo nulla deserunt. Dolor pariatur non Lorem consequat pariatur commodo sunt dolor. Amet ea excepteur reprehenderit fugiat mollit irure mollit enim culpa aliqua ut. Commodo aute enim qui sint ullamco consequat velit do do exercitation excepteur. Cillum consequat eiusmod est do amet aliquip proident velit qui. Est officia pariatur ad enim culpa duis nulla duis officia non.\r\n", "registered": "2014-09-19T09:13:59-12:00", "latitude": 67.250804, "longitude": 99.493364, "tags": [ "proident", "ex", "officia", "do", "labore", "nisi", "occaecat" ], "friends": [ { "id": 0, "name": "Dodson Patel" }, { "id": 1, "name": "Brock Cook" }, { "id": 2, "name": "Trudy Bullock" } ], "greeting": "Hello, Downs Wright! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27fd36529e3f80c390", "index": 3515, "guid": "8be2291d-bf45-4a71-b638-5580aca2cf88", "isActive": true, "balance": "$1,467.29", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Salas Nicholson", "gender": "male", "company": "XYQAG", "email": "salasnicholson@xyqag.com", "phone": "+1 (889) 417-3134", "address": "413 Pitkin Avenue, Convent, Iowa, 2903", "about": "Sint minim irure laborum aliquip labore duis amet. Amet nostrud incididunt ea eu qui consectetur elit sint ex ipsum laboris esse Lorem esse. Amet voluptate minim occaecat velit cillum. Aute ex ut voluptate commodo cupidatat cupidatat duis laboris veniam culpa fugiat et ad.\r\n", "registered": "2014-03-26T09:44:52-13:00", "latitude": 60.598092, "longitude": -79.475878, "tags": [ "ex", "sunt", "eiusmod", "anim", "laborum", "fugiat", "aliqua" ], "friends": [ { "id": 0, "name": "Greta Grimes" }, { "id": 1, "name": "Flynn Olsen" }, { "id": 2, "name": "Eileen Ramsey" } ], "greeting": "Hello, Salas Nicholson! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea273579bb8af2fc31a2", "index": 3516, "guid": "c82ec873-4deb-45ad-9027-47087eb11f73", "isActive": false, "balance": "$1,494.41", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Lela Barrera", "gender": "female", "company": "HELIXO", "email": "lelabarrera@helixo.com", "phone": "+1 (862) 407-3463", "address": "740 Monroe Place, Jardine, Nebraska, 3537", "about": "Ad fugiat est esse Lorem fugiat excepteur exercitation ipsum reprehenderit tempor ad id sit ea. Sit est Lorem voluptate anim do qui anim est velit labore irure. Et veniam sunt labore ut sunt eu consequat id ut anim ex veniam exercitation anim.\r\n", "registered": "2014-08-13T06:02:33-12:00", "latitude": 31.211593, "longitude": -176.10963, "tags": [ "laboris", "ea", "duis", "enim", "ea", "laborum", "sit" ], "friends": [ { "id": 0, "name": "Porter Moses" }, { "id": 1, "name": "Opal Huff" }, { "id": 2, "name": "Small Mcintyre" } ], "greeting": "Hello, Lela Barrera! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2759aec0b6098dd314", "index": 3517, "guid": "3e36d6e9-c9ee-49c6-bdc1-1b027c26c415", "isActive": true, "balance": "$3,077.07", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Ballard Hicks", "gender": "male", "company": "VIDTO", "email": "ballardhicks@vidto.com", "phone": "+1 (915) 533-3248", "address": "657 Pierrepont Street, Berwind, District Of Columbia, 4281", "about": "Reprehenderit elit amet id velit ullamco duis. Elit ipsum aliquip id et velit quis Lorem. Esse exercitation ullamco occaecat irure ullamco id nulla duis consectetur. Nulla dolore id veniam nisi enim incididunt deserunt dolore labore. Sint occaecat cillum cillum deserunt ex deserunt in enim ex qui est mollit ea magna. Adipisicing amet nisi consectetur sunt aliquip consectetur consequat non sunt.\r\n", "registered": "2014-03-22T11:39:44-13:00", "latitude": -7.425995, "longitude": 52.113759, "tags": [ "quis", "sunt", "dolor", "ullamco", "nulla", "sunt", "nulla" ], "friends": [ { "id": 0, "name": "Kline Carlson" }, { "id": 1, "name": "Soto Ayers" }, { "id": 2, "name": "Mandy Leach" } ], "greeting": "Hello, Ballard Hicks! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2787d76614300c136f", "index": 3518, "guid": "4a8e841c-b5d8-4b42-a44b-c667250e2fd9", "isActive": true, "balance": "$2,736.87", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Arlene Lyons", "gender": "female", "company": "BEZAL", "email": "arlenelyons@bezal.com", "phone": "+1 (882) 551-3205", "address": "465 Cheever Place, Nescatunga, New Jersey, 4457", "about": "Ipsum magna veniam sunt velit reprehenderit veniam ullamco esse occaecat officia officia. Consequat qui dolore deserunt nostrud eiusmod voluptate adipisicing qui magna cupidatat cillum qui. Esse aliquip minim consectetur labore irure aute laborum enim labore nisi minim. Duis ut pariatur aliqua nostrud enim quis ullamco dolor excepteur laboris. Sint eu consectetur deserunt do velit consectetur.\r\n", "registered": "2014-03-12T05:15:12-13:00", "latitude": -40.991094, "longitude": -134.029467, "tags": [ "dolore", "cupidatat", "nulla", "magna", "labore", "ut", "amet" ], "friends": [ { "id": 0, "name": "Ramsey Robles" }, { "id": 1, "name": "Durham Curry" }, { "id": 2, "name": "Hanson Marquez" } ], "greeting": "Hello, Arlene Lyons! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27e690389cfa5c7c53", "index": 3519, "guid": "4be3cca4-89f3-4bef-bea2-882dc6bbe118", "isActive": false, "balance": "$2,997.03", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Petra Acevedo", "gender": "female", "company": "ENTOGROK", "email": "petraacevedo@entogrok.com", "phone": "+1 (865) 450-2984", "address": "312 Amity Street, Westwood, Palau, 9847", "about": "Eu nulla laboris nulla anim esse. Mollit tempor consequat consequat deserunt veniam eu tempor. Ut magna elit cillum voluptate qui proident non id mollit. Et ex amet deserunt pariatur. Ullamco officia cupidatat ea nisi dolore est officia do eiusmod qui non dolore. Adipisicing ut commodo incididunt elit in dolore id laboris eiusmod cillum magna reprehenderit sunt dolor.\r\n", "registered": "2014-05-25T09:20:50-12:00", "latitude": -59.630117, "longitude": -141.512763, "tags": [ "id", "commodo", "eu", "reprehenderit", "eiusmod", "aute", "et" ], "friends": [ { "id": 0, "name": "Conner Reeves" }, { "id": 1, "name": "Ada Irwin" }, { "id": 2, "name": "Susan Terrell" } ], "greeting": "Hello, Petra Acevedo! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea278a90b077a1bc99b0", "index": 3520, "guid": "36518c3a-44ba-4a6d-aa24-5cdcb8717af6", "isActive": true, "balance": "$3,629.07", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Mccullough Schmidt", "gender": "male", "company": "ZANILLA", "email": "mcculloughschmidt@zanilla.com", "phone": "+1 (878) 521-3869", "address": "243 Taaffe Place, Camas, Puerto Rico, 9223", "about": "Excepteur ullamco ullamco cupidatat duis anim adipisicing. Nulla quis officia exercitation pariatur magna labore eiusmod anim ad enim ut ad veniam. Est magna ex ea aliqua laborum anim nostrud eu amet ea duis. Magna esse eiusmod mollit sint culpa excepteur veniam ipsum mollit minim veniam dolor dolore mollit. Ut adipisicing deserunt eu aliqua mollit. Ex laborum labore deserunt enim qui esse adipisicing adipisicing ut duis fugiat.\r\n", "registered": "2014-01-05T15:48:04-13:00", "latitude": 0.58526, "longitude": 141.976184, "tags": [ "reprehenderit", "dolor", "ullamco", "nisi", "anim", "ex", "ullamco" ], "friends": [ { "id": 0, "name": "Woods Delaney" }, { "id": 1, "name": "Todd Wyatt" }, { "id": 2, "name": "Gutierrez Lindsey" } ], "greeting": "Hello, Mccullough Schmidt! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27213b8746fe647eb6", "index": 3521, "guid": "2414e849-2125-43d8-aeb1-12e9d82ed32d", "isActive": false, "balance": "$2,652.27", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Connie Head", "gender": "female", "company": "SEQUITUR", "email": "conniehead@sequitur.com", "phone": "+1 (900) 518-2479", "address": "521 Dewitt Avenue, Brandermill, California, 171", "about": "Culpa ea duis esse ex eu proident reprehenderit fugiat est proident. Irure ipsum deserunt reprehenderit cupidatat tempor cupidatat adipisicing pariatur eiusmod ut esse mollit est. Excepteur excepteur velit ullamco sint voluptate Lorem enim Lorem aute incididunt. Sit eiusmod ad esse labore laborum. Commodo voluptate laborum laborum veniam aliquip do ad elit fugiat labore mollit quis exercitation. Laboris proident sint adipisicing eu minim. Cupidatat dolore proident cillum velit sunt anim labore.\r\n", "registered": "2014-04-17T19:11:07-12:00", "latitude": -89.317915, "longitude": -86.242652, "tags": [ "velit", "consequat", "duis", "nostrud", "sunt", "sit", "deserunt" ], "friends": [ { "id": 0, "name": "Shaffer Morrison" }, { "id": 1, "name": "Gale Crawford" }, { "id": 2, "name": "Macdonald Espinoza" } ], "greeting": "Hello, Connie Head! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27d5743d5e5c9f3ded", "index": 3522, "guid": "41c1bd0d-0de8-4030-8185-e9c86eb3afa6", "isActive": true, "balance": "$3,057.26", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Garza Sullivan", "gender": "male", "company": "PROSELY", "email": "garzasullivan@prosely.com", "phone": "+1 (804) 481-3291", "address": "910 Guider Avenue, Sunriver, Vermont, 4842", "about": "Enim deserunt consectetur do nisi officia nulla est duis adipisicing aute. Exercitation ut adipisicing non consectetur commodo duis ut enim. Non eu velit anim sit duis culpa proident. Quis ipsum cillum ad cillum exercitation consequat non minim sint anim aute ad.\r\n", "registered": "2014-08-03T01:22:42-12:00", "latitude": 33.816055, "longitude": 37.422651, "tags": [ "aliqua", "nulla", "tempor", "et", "sunt", "proident", "sit" ], "friends": [ { "id": 0, "name": "Betsy Day" }, { "id": 1, "name": "Latisha Harmon" }, { "id": 2, "name": "Mccray English" } ], "greeting": "Hello, Garza Sullivan! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27a4d29d37f9b94222", "index": 3523, "guid": "b6642c4b-ab3e-4958-bb00-88e9e821f6a7", "isActive": true, "balance": "$1,963.32", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Dena Buckley", "gender": "female", "company": "WATERBABY", "email": "denabuckley@waterbaby.com", "phone": "+1 (982) 426-2375", "address": "154 Bartlett Place, Whitehaven, Indiana, 1550", "about": "Cillum fugiat ut minim ut id eu est aute ex pariatur. Quis culpa elit ut aute id adipisicing non adipisicing. Esse tempor ullamco tempor elit irure do magna amet et ut enim. Culpa cillum magna velit reprehenderit pariatur commodo est amet veniam voluptate consectetur deserunt quis.\r\n", "registered": "2014-05-19T04:57:03-12:00", "latitude": -67.81935, "longitude": 53.173568, "tags": [ "dolore", "id", "veniam", "qui", "esse", "ex", "consectetur" ], "friends": [ { "id": 0, "name": "Copeland Haley" }, { "id": 1, "name": "Aurora Mullen" }, { "id": 2, "name": "Decker Bray" } ], "greeting": "Hello, Dena Buckley! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27fc4ade4c41c78934", "index": 3524, "guid": "c8cdf83b-fd96-42ad-a4ab-204bd94d7275", "isActive": true, "balance": "$3,191.84", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Maricela Gay", "gender": "female", "company": "FROLIX", "email": "maricelagay@frolix.com", "phone": "+1 (808) 509-2138", "address": "950 Harkness Avenue, Cobbtown, Illinois, 6219", "about": "Culpa tempor elit eiusmod laborum sunt eu velit culpa. Adipisicing culpa ullamco laboris quis voluptate anim ut ipsum cupidatat proident elit labore aliquip. Consequat mollit sunt eu laboris mollit. Dolor sit dolore non tempor ad id culpa exercitation sint proident. Elit occaecat quis aliqua proident nisi officia irure velit. Culpa Lorem duis incididunt est exercitation id cillum cupidatat duis consectetur id est commodo. Nisi ullamco consequat sunt incididunt cillum dolor deserunt elit pariatur.\r\n", "registered": "2014-07-11T13:45:09-12:00", "latitude": 8.602045, "longitude": 71.487943, "tags": [ "voluptate", "cillum", "in", "consequat", "ex", "ex", "do" ], "friends": [ { "id": 0, "name": "Nola Pitts" }, { "id": 1, "name": "Salinas Vance" }, { "id": 2, "name": "Norman Kidd" } ], "greeting": "Hello, Maricela Gay! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2722dda7e435a425c5", "index": 3525, "guid": "30074ff1-6cd6-40de-8a55-04a32017055e", "isActive": true, "balance": "$3,741.28", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Perkins Bridges", "gender": "male", "company": "MANGLO", "email": "perkinsbridges@manglo.com", "phone": "+1 (836) 539-3747", "address": "250 Tech Place, Sehili, South Carolina, 4851", "about": "Sit minim dolor consectetur nostrud magna. Qui aute exercitation nulla ipsum nisi voluptate deserunt enim enim et. Culpa ut cupidatat consequat Lorem laborum sit ipsum ipsum esse laboris elit adipisicing aliquip.\r\n", "registered": "2014-09-05T10:23:12-12:00", "latitude": 86.43644, "longitude": -55.318323, "tags": [ "nulla", "nostrud", "anim", "fugiat", "in", "nulla", "amet" ], "friends": [ { "id": 0, "name": "Weaver Alford" }, { "id": 1, "name": "Jan Riley" }, { "id": 2, "name": "Suarez Brennan" } ], "greeting": "Hello, Perkins Bridges! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2717bdd455e2a4c682", "index": 3526, "guid": "9c646093-9996-406d-98b5-349cbec0b11c", "isActive": true, "balance": "$3,860.08", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Winters Austin", "gender": "male", "company": "BITREX", "email": "wintersaustin@bitrex.com", "phone": "+1 (981) 429-3120", "address": "343 Orient Avenue, Kaka, American Samoa, 689", "about": "Sit exercitation irure et eiusmod ut. Deserunt officia do dolore ad fugiat mollit pariatur cupidatat deserunt. Et aute nostrud ad cupidatat duis cillum reprehenderit in. Nulla veniam minim dolor sint officia occaecat duis amet dolor qui elit. Eu aliqua duis elit incididunt veniam aute eiusmod adipisicing occaecat aliqua. Exercitation reprehenderit labore ad deserunt nulla.\r\n", "registered": "2014-05-19T13:17:42-12:00", "latitude": -76.263398, "longitude": 15.676116, "tags": [ "ad", "nostrud", "sit", "tempor", "duis", "voluptate", "irure" ], "friends": [ { "id": 0, "name": "Lorna Oneil" }, { "id": 1, "name": "Renee Richard" }, { "id": 2, "name": "Earline Casey" } ], "greeting": "Hello, Winters Austin! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27eb9dca48b6004d6f", "index": 3527, "guid": "4bff0760-6208-4cbb-b7e5-9abe1d40ee0b", "isActive": true, "balance": "$2,122.75", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Wanda Figueroa", "gender": "female", "company": "POSHOME", "email": "wandafigueroa@poshome.com", "phone": "+1 (919) 524-3190", "address": "416 Kansas Place, Calverton, Delaware, 651", "about": "Laboris officia cupidatat aute labore labore. Nisi velit quis do labore. Exercitation est pariatur proident reprehenderit proident velit nulla reprehenderit sit. Duis et nostrud irure ea incididunt ipsum ut. Veniam exercitation et in ut exercitation irure mollit irure sit. Amet ex mollit laboris eu deserunt qui eu esse eu nostrud veniam mollit. Adipisicing aliqua aliqua mollit nulla fugiat tempor reprehenderit ad eu voluptate eu aliquip.\r\n", "registered": "2014-01-25T08:50:09-13:00", "latitude": 44.68007, "longitude": -124.855749, "tags": [ "aliqua", "nulla", "id", "laborum", "elit", "cillum", "exercitation" ], "friends": [ { "id": 0, "name": "Staci Gallagher" }, { "id": 1, "name": "Cline Copeland" }, { "id": 2, "name": "Garner Gould" } ], "greeting": "Hello, Wanda Figueroa! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea275300d563252b393a", "index": 3528, "guid": "0a7f4502-50b0-4e74-874c-5200a80bd691", "isActive": true, "balance": "$2,574.53", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Conway Sellers", "gender": "male", "company": "KIOSK", "email": "conwaysellers@kiosk.com", "phone": "+1 (834) 536-2433", "address": "937 Maple Avenue, Wildwood, Pennsylvania, 7125", "about": "Commodo voluptate voluptate voluptate laborum eu quis irure proident quis sit mollit do. Enim cupidatat amet tempor sunt esse in. Incididunt duis aliqua anim dolor nostrud cupidatat adipisicing adipisicing tempor esse. Enim irure ipsum magna cupidatat labore dolor nostrud consectetur laborum consectetur consectetur.\r\n", "registered": "2014-08-06T09:19:13-12:00", "latitude": 26.091916, "longitude": -80.659277, "tags": [ "ex", "ea", "irure", "ullamco", "exercitation", "officia", "ullamco" ], "friends": [ { "id": 0, "name": "Obrien Long" }, { "id": 1, "name": "Tanisha Barnett" }, { "id": 2, "name": "Baker Morin" } ], "greeting": "Hello, Conway Sellers! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea272558ec29ec76bbba", "index": 3529, "guid": "3b0dd4af-fc04-43ad-a98e-451545e78e11", "isActive": false, "balance": "$2,676.13", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Daphne Scott", "gender": "female", "company": "SATIANCE", "email": "daphnescott@satiance.com", "phone": "+1 (811) 598-3904", "address": "108 Clymer Street, Disautel, Georgia, 2216", "about": "Adipisicing velit minim nisi nulla id qui elit consequat tempor qui aliquip aliquip consectetur velit. Elit aliqua minim eu enim officia consequat ad nisi excepteur adipisicing. In cupidatat id amet nisi eiusmod eu ea aute adipisicing excepteur consequat cupidatat elit et. Excepteur aliqua mollit sunt eu do sunt laborum tempor dolore. Ut consectetur velit mollit ad cupidatat occaecat. Amet aliquip sunt qui exercitation ea excepteur Lorem.\r\n", "registered": "2014-03-18T19:22:58-13:00", "latitude": -1.869303, "longitude": 72.563573, "tags": [ "Lorem", "laboris", "est", "et", "est", "velit", "officia" ], "friends": [ { "id": 0, "name": "Mcmillan Prince" }, { "id": 1, "name": "Sandy Ryan" }, { "id": 2, "name": "Nannie Knox" } ], "greeting": "Hello, Daphne Scott! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27f18dc10476fd8424", "index": 3530, "guid": "3344f303-8230-46d2-913f-89cde259987a", "isActive": false, "balance": "$1,040.91", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Horton Yang", "gender": "male", "company": "ZOINAGE", "email": "hortonyang@zoinage.com", "phone": "+1 (854) 559-2626", "address": "613 Albemarle Terrace, Lynn, North Dakota, 4030", "about": "Sit ad tempor laborum ipsum esse eiusmod ipsum officia labore ipsum elit reprehenderit. Occaecat proident consequat ut velit officia non laboris ex. Amet ullamco do exercitation do reprehenderit qui irure dolor laboris ipsum enim adipisicing tempor. Dolore dolore duis do do eu nulla aliqua consectetur. Velit incididunt ex non duis non nostrud. Ex non ad eiusmod fugiat veniam ullamco culpa cupidatat occaecat et. Esse minim consequat adipisicing exercitation elit fugiat occaecat laboris ad aute reprehenderit sint velit officia.\r\n", "registered": "2014-08-25T23:24:23-12:00", "latitude": -73.556515, "longitude": -76.205587, "tags": [ "et", "officia", "do", "laborum", "labore", "nulla", "ut" ], "friends": [ { "id": 0, "name": "Rosalyn Baldwin" }, { "id": 1, "name": "Hickman Hall" }, { "id": 2, "name": "Lesa Joyner" } ], "greeting": "Hello, Horton Yang! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2739bbe20d22259c06", "index": 3531, "guid": "daaa4ae9-6885-40b8-8aac-415b249d1c00", "isActive": true, "balance": "$3,324.29", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Paulette Goodwin", "gender": "female", "company": "KAGE", "email": "paulettegoodwin@kage.com", "phone": "+1 (881) 598-3800", "address": "653 Halsey Street, Hondah, Louisiana, 2351", "about": "Nisi labore cillum sint quis. Ullamco adipisicing irure dolor dolore est duis eu. Ea tempor cupidatat incididunt elit cillum enim fugiat commodo voluptate proident dolor ipsum eiusmod dolore. Aliqua ex ut eu ex aliquip duis elit magna nisi cupidatat Lorem minim. Labore ex voluptate eiusmod sunt aliqua ex exercitation fugiat esse et consequat non. Reprehenderit nostrud labore est magna ut et adipisicing eiusmod qui do. Aliqua aute exercitation in et pariatur enim nostrud commodo in pariatur esse dolore mollit eiusmod.\r\n", "registered": "2014-03-13T15:59:50-13:00", "latitude": 64.142235, "longitude": 161.509512, "tags": [ "excepteur", "do", "commodo", "deserunt", "cupidatat", "velit", "dolore" ], "friends": [ { "id": 0, "name": "Hess Munoz" }, { "id": 1, "name": "Hallie Bush" }, { "id": 2, "name": "Mullins Ramos" } ], "greeting": "Hello, Paulette Goodwin! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27e96214fe38ebeccc", "index": 3532, "guid": "9fcc12b2-a774-4889-b733-d46f484db2e2", "isActive": false, "balance": "$2,900.28", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Aguilar Wagner", "gender": "male", "company": "SPEEDBOLT", "email": "aguilarwagner@speedbolt.com", "phone": "+1 (814) 529-3713", "address": "147 Polar Street, Kirk, Northern Mariana Islands, 8928", "about": "Laboris sunt mollit minim voluptate culpa ad consectetur voluptate deserunt Lorem pariatur et consequat ad. Mollit enim adipisicing fugiat sunt. Commodo eu sunt occaecat aliqua anim consequat ad exercitation. Proident aute in id ut enim ut est duis eu.\r\n", "registered": "2014-04-26T00:13:23-12:00", "latitude": 13.944441, "longitude": -104.60163, "tags": [ "adipisicing", "aliqua", "nostrud", "cupidatat", "magna", "est", "ut" ], "friends": [ { "id": 0, "name": "Ruiz Sandoval" }, { "id": 1, "name": "Isabelle Bentley" }, { "id": 2, "name": "Tran Skinner" } ], "greeting": "Hello, Aguilar Wagner! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2703401e71c350caa7", "index": 3533, "guid": "a7453234-056e-43de-bb4f-98f380a03fe9", "isActive": false, "balance": "$3,076.41", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Vilma Sharpe", "gender": "female", "company": "TWIIST", "email": "vilmasharpe@twiist.com", "phone": "+1 (818) 448-3804", "address": "541 Ferry Place, Rose, Colorado, 2633", "about": "Magna reprehenderit sint est anim velit ad aute do aliqua laborum. Fugiat aute laboris excepteur fugiat fugiat aute. Magna excepteur eiusmod voluptate exercitation nostrud nulla in proident esse duis aliquip veniam.\r\n", "registered": "2014-08-20T09:28:54-12:00", "latitude": -52.462778, "longitude": 53.876141, "tags": [ "veniam", "irure", "elit", "consectetur", "ea", "magna", "adipisicing" ], "friends": [ { "id": 0, "name": "Gentry Hull" }, { "id": 1, "name": "Lopez Carney" }, { "id": 2, "name": "Tyler Heath" } ], "greeting": "Hello, Vilma Sharpe! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27800e57baaa96ff28", "index": 3534, "guid": "40b4aa7c-6720-4d61-8b44-21441508c643", "isActive": true, "balance": "$2,689.60", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Flowers Ortega", "gender": "male", "company": "ESCHOIR", "email": "flowersortega@eschoir.com", "phone": "+1 (900) 566-3133", "address": "713 Lewis Place, Frierson, Idaho, 9704", "about": "Ut ullamco ut do commodo proident aliquip qui fugiat. Eu est occaecat incididunt deserunt Lorem irure anim minim exercitation elit cupidatat dolore. Proident excepteur aliquip qui irure magna elit ut officia adipisicing. Non ullamco magna officia cillum aute. Ea sunt adipisicing enim cillum ullamco non.\r\n", "registered": "2014-09-22T04:13:37-12:00", "latitude": 36.897293, "longitude": -101.487254, "tags": [ "consectetur", "esse", "exercitation", "dolor", "laborum", "et", "voluptate" ], "friends": [ { "id": 0, "name": "Sears Charles" }, { "id": 1, "name": "Cheryl Hill" }, { "id": 2, "name": "Stanton Thompson" } ], "greeting": "Hello, Flowers Ortega! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27adef19c39c449f42", "index": 3535, "guid": "32743931-ba87-4ac8-87a2-0a8270ca1892", "isActive": false, "balance": "$3,367.11", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Tracie Huffman", "gender": "female", "company": "ORGANICA", "email": "traciehuffman@organica.com", "phone": "+1 (908) 529-2500", "address": "633 Main Street, Charco, Marshall Islands, 7728", "about": "Veniam magna adipisicing mollit dolore. Incididunt ea reprehenderit est Lorem do adipisicing ex laborum sit culpa eu est laborum ex. Incididunt est exercitation duis in consequat.\r\n", "registered": "2014-07-19T20:28:59-12:00", "latitude": 42.739921, "longitude": -4.411483, "tags": [ "incididunt", "et", "laborum", "ipsum", "sunt", "commodo", "nostrud" ], "friends": [ { "id": 0, "name": "Lang Bishop" }, { "id": 1, "name": "Lindsey Jimenez" }, { "id": 2, "name": "Rose Morris" } ], "greeting": "Hello, Tracie Huffman! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2709793280d8b07ae8", "index": 3536, "guid": "384567ed-1329-42c5-9ee6-4545d5ae7cdf", "isActive": false, "balance": "$3,839.43", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Sherri Gentry", "gender": "female", "company": "PEARLESEX", "email": "sherrigentry@pearlesex.com", "phone": "+1 (827) 426-3879", "address": "637 Keap Street, Carrizo, New York, 9667", "about": "Veniam deserunt anim excepteur laboris nostrud voluptate aliquip eu dolor officia consectetur deserunt voluptate est. Magna elit quis veniam esse. Minim culpa est dolore pariatur nisi amet ipsum amet consectetur consequat. Culpa ipsum eiusmod proident commodo.\r\n", "registered": "2014-03-14T11:19:25-13:00", "latitude": -37.274995, "longitude": -43.657102, "tags": [ "id", "cillum", "amet", "officia", "laborum", "amet", "dolore" ], "friends": [ { "id": 0, "name": "Duran Estes" }, { "id": 1, "name": "Hunter Tate" }, { "id": 2, "name": "Dionne Tyson" } ], "greeting": "Hello, Sherri Gentry! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27672d2eea70147e50", "index": 3537, "guid": "ad81f9c5-767e-41ae-ac42-aafe4ed3c9cf", "isActive": false, "balance": "$1,135.72", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Ana Stanton", "gender": "female", "company": "GEEKULAR", "email": "anastanton@geekular.com", "phone": "+1 (948) 577-2913", "address": "101 Ovington Court, Accoville, Guam, 4576", "about": "Enim in duis in pariatur do officia Lorem commodo sunt enim. Aliqua cillum culpa duis pariatur aute do. Ut enim velit laboris fugiat anim commodo eiusmod cupidatat aute. Sint qui sit enim voluptate adipisicing ea amet dolor aute tempor aliquip amet. Excepteur ea qui est et amet. Incididunt ullamco voluptate nulla exercitation. Sunt occaecat proident dolor et est culpa do quis excepteur ex enim enim.\r\n", "registered": "2014-07-30T23:14:00-12:00", "latitude": -32.680067, "longitude": 178.713698, "tags": [ "labore", "magna", "deserunt", "adipisicing", "cupidatat", "occaecat", "duis" ], "friends": [ { "id": 0, "name": "Guerrero Pope" }, { "id": 1, "name": "Melody Galloway" }, { "id": 2, "name": "Rosa Compton" } ], "greeting": "Hello, Ana Stanton! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2733038646ac246a04", "index": 3538, "guid": "484e7052-c4df-4f1c-baad-8682d3c3d56f", "isActive": false, "balance": "$2,907.77", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Nikki Morgan", "gender": "female", "company": "KINDALOO", "email": "nikkimorgan@kindaloo.com", "phone": "+1 (856) 584-3904", "address": "445 Kossuth Place, Guthrie, Virgin Islands, 4601", "about": "Ut mollit fugiat amet tempor. Voluptate cupidatat qui officia consectetur do. Pariatur officia ad ipsum do commodo minim aliqua commodo in aute nulla nulla. Veniam reprehenderit eu sint tempor cupidatat culpa in. Officia incididunt amet anim laboris deserunt. Velit proident proident est aliqua tempor aliquip quis cupidatat sint laboris ea occaecat.\r\n", "registered": "2014-04-22T17:32:06-12:00", "latitude": -20.761216, "longitude": 175.610437, "tags": [ "aliqua", "dolor", "id", "nostrud", "proident", "culpa", "Lorem" ], "friends": [ { "id": 0, "name": "Nora Meadows" }, { "id": 1, "name": "Larsen Paul" }, { "id": 2, "name": "Carlene Browning" } ], "greeting": "Hello, Nikki Morgan! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27a1c0d163b28ddbe0", "index": 3539, "guid": "910db87a-c5f6-4993-a702-0f94b3f19839", "isActive": false, "balance": "$2,469.38", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Maria Knapp", "gender": "female", "company": "UNISURE", "email": "mariaknapp@unisure.com", "phone": "+1 (926) 402-2058", "address": "411 Eaton Court, Albany, Massachusetts, 5075", "about": "Qui fugiat do aliquip do ullamco magna sit quis. Reprehenderit Lorem nulla eiusmod tempor irure culpa consequat proident. Mollit sunt eiusmod reprehenderit eiusmod cillum laborum duis voluptate.\r\n", "registered": "2014-04-15T18:53:38-12:00", "latitude": 58.27108, "longitude": 128.894508, "tags": [ "aliquip", "do", "ipsum", "laboris", "cupidatat", "consequat", "irure" ], "friends": [ { "id": 0, "name": "Emily Santos" }, { "id": 1, "name": "Robbins Frank" }, { "id": 2, "name": "Laura Bird" } ], "greeting": "Hello, Maria Knapp! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27d0945257414d91de", "index": 3540, "guid": "aa4332cc-956d-453b-a61c-2e04b5831b6a", "isActive": true, "balance": "$3,640.76", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Hester Bryan", "gender": "female", "company": "QUARX", "email": "hesterbryan@quarx.com", "phone": "+1 (823) 407-3225", "address": "350 Greene Avenue, Orick, Utah, 7277", "about": "Veniam amet pariatur ullamco quis. Et aute magna occaecat commodo laborum velit nulla veniam eu ea tempor veniam. Magna dolor quis Lorem irure mollit laboris in esse cupidatat fugiat. Labore enim cillum non veniam deserunt sunt qui quis mollit ad sit amet eu. Nostrud ut amet non voluptate aliquip esse occaecat non non.\r\n", "registered": "2014-08-10T22:00:48-12:00", "latitude": 4.039003, "longitude": 37.436366, "tags": [ "quis", "non", "amet", "sunt", "laboris", "veniam", "consequat" ], "friends": [ { "id": 0, "name": "Elsa Joyce" }, { "id": 1, "name": "Bray Wilcox" }, { "id": 2, "name": "Ashlee Dawson" } ], "greeting": "Hello, Hester Bryan! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27d9dce8eeb7ed0242", "index": 3541, "guid": "64acd977-6f26-474c-8f7d-774d19a6c4fa", "isActive": true, "balance": "$1,010.61", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Winnie Glover", "gender": "female", "company": "ZOXY", "email": "winnieglover@zoxy.com", "phone": "+1 (827) 496-2037", "address": "931 Minna Street, Gracey, Montana, 1731", "about": "Commodo proident dolore esse aliquip tempor et ea consectetur enim. Qui qui ullamco veniam sint aliqua eiusmod incididunt nisi reprehenderit consectetur adipisicing consectetur ea. Sint nulla labore quis veniam duis consectetur exercitation ut incididunt nulla in anim sit sunt. Tempor minim elit et voluptate eu excepteur voluptate ipsum culpa minim irure. Incididunt deserunt ullamco irure aliquip sunt sint.\r\n", "registered": "2014-07-03T23:49:03-12:00", "latitude": -59.375482, "longitude": -151.526222, "tags": [ "culpa", "non", "nisi", "aute", "magna", "aliquip", "eiusmod" ], "friends": [ { "id": 0, "name": "Aida Mcknight" }, { "id": 1, "name": "Vincent Harris" }, { "id": 2, "name": "Hubbard Price" } ], "greeting": "Hello, Winnie Glover! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27709f04cc39d5bcad", "index": 3542, "guid": "aa269bbb-57b3-458d-9126-f2e0adcc144d", "isActive": false, "balance": "$2,238.24", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Ratliff Mckee", "gender": "male", "company": "RECRISYS", "email": "ratliffmckee@recrisys.com", "phone": "+1 (954) 569-3662", "address": "672 Kathleen Court, Defiance, Wisconsin, 9376", "about": "Duis exercitation ut ipsum laboris fugiat ea non in ex eiusmod magna voluptate minim occaecat. Quis veniam in cupidatat fugiat magna occaecat anim et pariatur non. Velit aliquip reprehenderit eiusmod nisi amet proident sint consectetur nisi veniam ullamco eiusmod ea. Laboris commodo pariatur officia consectetur commodo consectetur consectetur aliqua officia laboris magna est laboris consequat. Eu reprehenderit sint consequat velit anim tempor fugiat aliqua amet laboris eiusmod fugiat ex sunt. Reprehenderit id proident do amet officia enim Lorem ex est id incididunt dolor magna non.\r\n", "registered": "2014-04-15T04:11:08-12:00", "latitude": 25.814175, "longitude": 178.535605, "tags": [ "nulla", "ut", "do", "est", "et", "id", "consequat" ], "friends": [ { "id": 0, "name": "Emilia Mcguire" }, { "id": 1, "name": "Hendrix Gray" }, { "id": 2, "name": "Ester Sheppard" } ], "greeting": "Hello, Ratliff Mckee! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27287b17f0560cf9bb", "index": 3543, "guid": "bd12e2c0-ff84-4b15-93bc-65b1a17ff2d1", "isActive": false, "balance": "$2,687.72", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Mara Kaufman", "gender": "female", "company": "MARTGO", "email": "marakaufman@martgo.com", "phone": "+1 (885) 422-3406", "address": "735 Freeman Street, Maxville, Maine, 2572", "about": "Qui reprehenderit deserunt pariatur cillum ad in reprehenderit id sint. In laborum voluptate nostrud tempor sint occaecat mollit et ea adipisicing fugiat. Dolor elit aliquip id magna.\r\n", "registered": "2014-01-03T03:15:47-13:00", "latitude": 60.877944, "longitude": -52.524221, "tags": [ "Lorem", "quis", "minim", "consequat", "ullamco", "quis", "labore" ], "friends": [ { "id": 0, "name": "Bolton Chavez" }, { "id": 1, "name": "Emerson Nichols" }, { "id": 2, "name": "Key Mathews" } ], "greeting": "Hello, Mara Kaufman! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27f64129973fa8f286", "index": 3544, "guid": "9312ada7-5eba-4fbd-88c2-9286d33ffac1", "isActive": true, "balance": "$1,567.31", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Tamika Young", "gender": "female", "company": "ZIDANT", "email": "tamikayoung@zidant.com", "phone": "+1 (809) 409-2246", "address": "460 Erasmus Street, Diaperville, Virginia, 2061", "about": "Cupidatat nostrud duis commodo deserunt duis laboris voluptate exercitation non id magna sit. Cillum irure nisi cupidatat deserunt voluptate consequat exercitation veniam. Ad ullamco irure quis pariatur elit non et. Consequat labore laboris eiusmod sint deserunt consectetur commodo consequat in eiusmod.\r\n", "registered": "2014-08-12T22:05:29-12:00", "latitude": -62.256893, "longitude": -51.857069, "tags": [ "consequat", "dolore", "ea", "nulla", "sit", "ex", "ut" ], "friends": [ { "id": 0, "name": "Roslyn Santana" }, { "id": 1, "name": "Richmond Mcneil" }, { "id": 2, "name": "Francine Lang" } ], "greeting": "Hello, Tamika Young! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27638a2c03180cf3bc", "index": 3545, "guid": "50f5692a-6705-4dc5-98cd-652a2da49518", "isActive": true, "balance": "$1,001.46", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Walters Obrien", "gender": "male", "company": "DIGINETIC", "email": "waltersobrien@diginetic.com", "phone": "+1 (990) 513-3797", "address": "964 High Street, Bowden, Kentucky, 7719", "about": "Ut et deserunt ea deserunt ut anim dolor do. Adipisicing enim nostrud eiusmod deserunt mollit. Ex velit est occaecat cillum ut. Cillum aliquip anim sunt dolore dolore nulla labore consequat quis enim.\r\n", "registered": "2014-02-24T08:52:58-13:00", "latitude": -17.04047, "longitude": -16.181237, "tags": [ "cupidatat", "adipisicing", "dolore", "consectetur", "velit", "reprehenderit", "occaecat" ], "friends": [ { "id": 0, "name": "Jerri Todd" }, { "id": 1, "name": "Amber Holcomb" }, { "id": 2, "name": "Carolyn Bolton" } ], "greeting": "Hello, Walters Obrien! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27f9c6e3eeb36ee4e5", "index": 3546, "guid": "8bb80e20-c4d6-4976-b7e1-0e0c0479fb5a", "isActive": true, "balance": "$3,502.85", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Billie Wise", "gender": "female", "company": "ZOLARITY", "email": "billiewise@zolarity.com", "phone": "+1 (974) 526-3718", "address": "383 Norfolk Street, Klondike, Connecticut, 2571", "about": "Laboris occaecat dolore elit cillum esse quis qui adipisicing amet. Aliquip deserunt anim mollit amet do commodo quis dolor adipisicing magna anim qui nulla. Nisi Lorem labore in incididunt.\r\n", "registered": "2014-04-28T13:20:43-12:00", "latitude": 87.833296, "longitude": -132.700276, "tags": [ "ut", "commodo", "ullamco", "nostrud", "ex", "velit", "non" ], "friends": [ { "id": 0, "name": "Bean Humphrey" }, { "id": 1, "name": "Grimes Mclean" }, { "id": 2, "name": "Amelia Calhoun" } ], "greeting": "Hello, Billie Wise! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27b90108b7d556d02a", "index": 3547, "guid": "3fa7244e-337f-4226-873f-62371de7ce6d", "isActive": true, "balance": "$3,580.93", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Janine Carroll", "gender": "female", "company": "ETERNIS", "email": "janinecarroll@eternis.com", "phone": "+1 (876) 530-2745", "address": "992 Gardner Avenue, Bladensburg, Mississippi, 578", "about": "Aliquip fugiat aliqua proident consequat cillum elit commodo dolor do esse veniam. Duis amet amet consectetur id laborum ea consequat id nisi do ad laboris. Sunt exercitation excepteur aute labore.\r\n", "registered": "2014-02-13T09:52:15-13:00", "latitude": 4.829678, "longitude": 78.441228, "tags": [ "veniam", "quis", "duis", "mollit", "laborum", "Lorem", "ad" ], "friends": [ { "id": 0, "name": "Caroline Little" }, { "id": 1, "name": "Ward Adkins" }, { "id": 2, "name": "Minerva Alvarado" } ], "greeting": "Hello, Janine Carroll! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea270e505b04ece2fd2a", "index": 3548, "guid": "b7cdebd2-7990-4f46-ac3e-78f3e2a0d569", "isActive": true, "balance": "$3,704.09", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Francesca Wiggins", "gender": "female", "company": "AQUAFIRE", "email": "francescawiggins@aquafire.com", "phone": "+1 (885) 558-2932", "address": "593 Laurel Avenue, Tuttle, Washington, 5915", "about": "Anim nulla nulla excepteur excepteur ut proident dolore. Ex anim adipisicing sit minim proident eiusmod ipsum dolor adipisicing mollit dolor ullamco. Laborum adipisicing nulla laborum nulla enim est sit in do velit. Sint adipisicing incididunt ea dolor velit consequat dolore. Sit nulla enim aliquip voluptate deserunt reprehenderit cillum pariatur ut minim velit enim. Pariatur duis id cupidatat id.\r\n", "registered": "2014-02-20T02:15:34-13:00", "latitude": -38.659912, "longitude": 118.087676, "tags": [ "exercitation", "est", "sit", "ea", "nisi", "amet", "aliqua" ], "friends": [ { "id": 0, "name": "Mariana Oneal" }, { "id": 1, "name": "Mitzi Lopez" }, { "id": 2, "name": "Maggie Osborn" } ], "greeting": "Hello, Francesca Wiggins! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27eadf82d81a3b63d4", "index": 3549, "guid": "ce3e5946-c4df-49d0-9b9d-e5a529b7cbab", "isActive": false, "balance": "$2,934.03", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Elena Duran", "gender": "female", "company": "ZILLACTIC", "email": "elenaduran@zillactic.com", "phone": "+1 (927) 515-3888", "address": "326 Pulaski Street, Greensburg, Tennessee, 964", "about": "Duis officia consectetur aliquip consectetur esse aliquip est laborum. Ullamco consectetur sit mollit est ex culpa anim eiusmod consectetur sit ut anim. Dolore fugiat irure quis eu nulla aliquip excepteur nostrud nisi velit dolore incididunt. Laborum incididunt et reprehenderit et nisi. Voluptate velit adipisicing aliqua est sint eu anim culpa.\r\n", "registered": "2014-07-15T16:58:18-12:00", "latitude": 50.865446, "longitude": -92.036001, "tags": [ "adipisicing", "non", "non", "velit", "laboris", "cillum", "ipsum" ], "friends": [ { "id": 0, "name": "Michael Russo" }, { "id": 1, "name": "Ann Moran" }, { "id": 2, "name": "Wilder Rios" } ], "greeting": "Hello, Elena Duran! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea273b475ddff3f68871", "index": 3550, "guid": "698f07dc-25d1-4065-b9d1-43ed4ace2f55", "isActive": true, "balance": "$2,182.02", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Wolf Rivas", "gender": "male", "company": "SNACKTION", "email": "wolfrivas@snacktion.com", "phone": "+1 (817) 435-3363", "address": "978 Bergen Avenue, Bourg, Alabama, 228", "about": "Anim consequat et fugiat officia nisi deserunt sunt adipisicing officia. Consequat magna mollit consectetur excepteur ut nostrud pariatur enim. Lorem dolore exercitation adipisicing incididunt. Ullamco irure fugiat Lorem duis officia magna quis.\r\n", "registered": "2014-02-23T03:00:14-13:00", "latitude": 79.265124, "longitude": -132.009476, "tags": [ "amet", "aliqua", "pariatur", "eu", "mollit", "eiusmod", "fugiat" ], "friends": [ { "id": 0, "name": "Inez Leblanc" }, { "id": 1, "name": "Fuller Navarro" }, { "id": 2, "name": "Lynda Pratt" } ], "greeting": "Hello, Wolf Rivas! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea272b0999c3047ba01a", "index": 3551, "guid": "091e3843-44f3-43fb-862c-e93bc47c5197", "isActive": false, "balance": "$3,395.15", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Crane Mercer", "gender": "male", "company": "XYLAR", "email": "cranemercer@xylar.com", "phone": "+1 (842) 474-2877", "address": "802 College Place, Wadsworth, Ohio, 3256", "about": "In Lorem aute dolor Lorem et. Officia magna duis consequat qui consequat sint quis ut aliquip pariatur qui. Velit elit adipisicing duis sit occaecat voluptate deserunt irure occaecat id veniam. Lorem in non voluptate do proident aute proident adipisicing commodo. Consectetur sint cupidatat Lorem cupidatat aliquip amet.\r\n", "registered": "2014-09-18T15:35:34-12:00", "latitude": 81.076975, "longitude": -45.045807, "tags": [ "commodo", "duis", "consequat", "anim", "et", "culpa", "Lorem" ], "friends": [ { "id": 0, "name": "Lee Chan" }, { "id": 1, "name": "Jennifer Carter" }, { "id": 2, "name": "Robertson Cantu" } ], "greeting": "Hello, Crane Mercer! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2738c36cd5eb62db74", "index": 3552, "guid": "88a68541-04b1-4d4c-8e35-d5ec56e6336e", "isActive": false, "balance": "$2,609.10", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Merle Alvarez", "gender": "female", "company": "JUNIPOOR", "email": "merlealvarez@junipoor.com", "phone": "+1 (867) 521-3196", "address": "849 Franklin Avenue, Staples, Hawaii, 1797", "about": "Sunt nisi pariatur magna excepteur dolore eu commodo excepteur. Nostrud reprehenderit adipisicing eiusmod veniam amet aliqua nisi consequat incididunt anim voluptate Lorem. Labore adipisicing sit ipsum consequat minim ut do. Do Lorem id qui sunt nulla sit. Incididunt enim cupidatat consectetur adipisicing non.\r\n", "registered": "2014-04-12T20:43:26-12:00", "latitude": 37.913519, "longitude": -103.471968, "tags": [ "id", "officia", "irure", "qui", "eu", "nisi", "ad" ], "friends": [ { "id": 0, "name": "Barnett Benjamin" }, { "id": 1, "name": "Mcintyre Strickland" }, { "id": 2, "name": "Myers Schroeder" } ], "greeting": "Hello, Merle Alvarez! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea276f0c4d46dc5776c7", "index": 3553, "guid": "a94223d9-1a0e-4b42-83fe-e27f09be16ec", "isActive": false, "balance": "$2,915.58", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Kirsten Barker", "gender": "female", "company": "VANTAGE", "email": "kirstenbarker@vantage.com", "phone": "+1 (933) 458-3658", "address": "311 Hamilton Walk, Emory, New Mexico, 9554", "about": "Et aute minim nulla occaecat excepteur do commodo labore commodo. Id id nisi minim aliqua ut consectetur fugiat laboris nostrud aliquip quis. Qui irure do voluptate ipsum voluptate do id magna voluptate sit occaecat ex minim. Est labore sint sint non enim culpa cillum. Minim aliquip consequat sit velit do exercitation. Sunt esse velit fugiat elit amet nostrud sit et nulla commodo. Incididunt voluptate ad veniam excepteur et nisi ut aute laborum non eu.\r\n", "registered": "2014-08-18T00:26:16-12:00", "latitude": 29.322337, "longitude": -113.400722, "tags": [ "minim", "cillum", "mollit", "Lorem", "adipisicing", "consequat", "dolor" ], "friends": [ { "id": 0, "name": "Vance Schultz" }, { "id": 1, "name": "Elvia Torres" }, { "id": 2, "name": "Anita Boyd" } ], "greeting": "Hello, Kirsten Barker! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27708756416479e69f", "index": 3554, "guid": "5ebfc641-cf4b-4257-999e-fd2f5b8c776f", "isActive": true, "balance": "$2,914.69", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Head Franco", "gender": "male", "company": "APPLIDEC", "email": "headfranco@applidec.com", "phone": "+1 (897) 565-2557", "address": "701 Woodrow Court, Blanford, Maryland, 1953", "about": "Veniam elit voluptate amet esse et consequat voluptate dolore laborum. Duis laboris aute dolor occaecat occaecat cupidatat velit irure tempor nostrud sint Lorem dolore et. Labore do nisi magna nulla ut est aute adipisicing consequat proident incididunt. Laboris qui sunt cillum ipsum mollit qui aliquip ipsum nisi incididunt incididunt. Dolore dolore minim nostrud eu. Cupidatat reprehenderit incididunt et occaecat velit deserunt consectetur magna incididunt. Commodo dolor id culpa sunt laborum duis.\r\n", "registered": "2014-02-19T08:41:55-13:00", "latitude": 46.76122, "longitude": 10.040583, "tags": [ "cillum", "adipisicing", "ex", "nulla", "consequat", "cillum", "veniam" ], "friends": [ { "id": 0, "name": "Gould Houston" }, { "id": 1, "name": "Brandy Ratliff" }, { "id": 2, "name": "Harding Benton" } ], "greeting": "Hello, Head Franco! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27aabd6f4639476413", "index": 3555, "guid": "fa3c5a56-a410-4508-94c7-a8b9801fd1c3", "isActive": false, "balance": "$2,301.51", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Millie Roman", "gender": "female", "company": "AUSTEX", "email": "millieroman@austex.com", "phone": "+1 (805) 481-2361", "address": "405 School Lane, Bartonsville, Alaska, 3011", "about": "Do ipsum qui aliquip tempor commodo aliqua nulla cupidatat. Elit esse sit minim veniam culpa elit. Adipisicing Lorem labore laborum nostrud magna aliquip nostrud fugiat aliqua eu labore pariatur. Voluptate enim cillum esse ad aute anim qui laborum incididunt elit minim in. Adipisicing enim ipsum ullamco ipsum cupidatat proident fugiat dolor sit dolore magna.\r\n", "registered": "2014-03-22T11:40:06-13:00", "latitude": -19.823079, "longitude": -167.794215, "tags": [ "est", "ex", "aliquip", "proident", "ea", "voluptate", "eu" ], "friends": [ { "id": 0, "name": "Norris Schneider" }, { "id": 1, "name": "Evans Brady" }, { "id": 2, "name": "Jasmine Shannon" } ], "greeting": "Hello, Millie Roman! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27acafba9d9900a142", "index": 3556, "guid": "4bd3a45b-221e-4449-a205-f00580cb5465", "isActive": true, "balance": "$2,491.46", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Armstrong Coleman", "gender": "male", "company": "HANDSHAKE", "email": "armstrongcoleman@handshake.com", "phone": "+1 (945) 525-2306", "address": "211 Sandford Street, Topaz, Arizona, 4253", "about": "Nostrud velit dolore esse minim in eu ex aliquip. Aute aliquip reprehenderit tempor amet minim nisi cupidatat amet. Proident fugiat tempor esse cupidatat. Esse culpa anim ad esse esse ut. Laboris ad enim pariatur occaecat reprehenderit voluptate est. In sit ex aute laboris aute ex velit minim dolor commodo proident. Do fugiat exercitation dolor laboris ea.\r\n", "registered": "2014-06-28T20:41:25-12:00", "latitude": -86.054282, "longitude": 28.367781, "tags": [ "enim", "voluptate", "nisi", "officia", "nostrud", "occaecat", "labore" ], "friends": [ { "id": 0, "name": "Estelle Ochoa" }, { "id": 1, "name": "Lynch Mcclain" }, { "id": 2, "name": "Maddox Lowe" } ], "greeting": "Hello, Armstrong Coleman! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27c2268a9310569ba4", "index": 3557, "guid": "61d89480-7e57-4178-9040-0bfb6e757a18", "isActive": true, "balance": "$3,764.10", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Tania Hardin", "gender": "female", "company": "FIBEROX", "email": "taniahardin@fiberox.com", "phone": "+1 (908) 471-2748", "address": "103 Scholes Street, Coldiron, Federated States Of Micronesia, 7353", "about": "Aliquip aute laboris aliqua et consectetur aute officia sint est qui pariatur veniam ipsum. Aliquip aliqua elit ex qui laboris nostrud esse fugiat adipisicing elit. Reprehenderit velit qui et laborum ullamco aute cillum et culpa excepteur fugiat quis aute.\r\n", "registered": "2014-05-12T10:13:58-12:00", "latitude": 41.175393, "longitude": -4.919409, "tags": [ "sit", "qui", "tempor", "labore", "esse", "magna", "labore" ], "friends": [ { "id": 0, "name": "Burt Watkins" }, { "id": 1, "name": "Goodman Good" }, { "id": 2, "name": "Meyer Cohen" } ], "greeting": "Hello, Tania Hardin! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27e9f6f94dbe9ff439", "index": 3558, "guid": "0d2d702b-2de9-4179-a45f-0188736fb24c", "isActive": true, "balance": "$1,424.47", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Mccoy Gamble", "gender": "male", "company": "NORSUP", "email": "mccoygamble@norsup.com", "phone": "+1 (870) 504-2100", "address": "718 Campus Place, Kennedyville, Oklahoma, 4575", "about": "Quis excepteur occaecat occaecat adipisicing et officia excepteur non cupidatat ad mollit qui laboris veniam. Mollit est adipisicing nulla eu amet labore proident anim. Adipisicing cillum nulla anim exercitation excepteur sunt sit sit.\r\n", "registered": "2014-03-12T23:28:47-13:00", "latitude": 20.640136, "longitude": 56.487954, "tags": [ "qui", "anim", "enim", "anim", "enim", "magna", "Lorem" ], "friends": [ { "id": 0, "name": "Rivera Haynes" }, { "id": 1, "name": "Bullock Gibson" }, { "id": 2, "name": "Antoinette Roth" } ], "greeting": "Hello, Mccoy Gamble! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea271bca4e8df96e52e8", "index": 3559, "guid": "454aaa95-b1da-46eb-bc99-ba0e95260742", "isActive": true, "balance": "$2,832.14", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Black Camacho", "gender": "male", "company": "EQUITAX", "email": "blackcamacho@equitax.com", "phone": "+1 (964) 426-3000", "address": "582 Humboldt Street, Dorneyville, Michigan, 7999", "about": "Magna laborum commodo deserunt eiusmod nulla sint ipsum. Exercitation fugiat laboris aliqua tempor laboris cillum voluptate pariatur est. Id est consectetur commodo enim commodo ea tempor. Esse laborum officia reprehenderit adipisicing. Non aliqua sunt non sunt. Dolore et enim tempor pariatur non consectetur velit cillum ut aute ea.\r\n", "registered": "2014-02-06T02:46:34-13:00", "latitude": 62.485618, "longitude": 100.995991, "tags": [ "tempor", "enim", "qui", "proident", "ullamco", "ut", "consectetur" ], "friends": [ { "id": 0, "name": "Iva Branch" }, { "id": 1, "name": "Swanson Fuller" }, { "id": 2, "name": "Hendricks Holden" } ], "greeting": "Hello, Black Camacho! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27937f9612cc87d3ff", "index": 3560, "guid": "b8b5a058-272a-4d99-87e6-eebe68556de3", "isActive": false, "balance": "$3,178.54", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Dixon Butler", "gender": "male", "company": "DIGIAL", "email": "dixonbutler@digial.com", "phone": "+1 (827) 550-2954", "address": "153 Emmons Avenue, Cuylerville, Kansas, 4841", "about": "Esse incididunt tempor aute do magna amet fugiat ad. Ut sunt consequat eu quis deserunt mollit ipsum Lorem consectetur excepteur. Est voluptate dolore anim reprehenderit qui occaecat pariatur laborum labore velit esse minim velit cupidatat. Deserunt consectetur sint excepteur culpa ex eu aliqua labore. Adipisicing elit cillum ex eiusmod. Aliquip occaecat ad enim cillum laborum fugiat officia tempor. Voluptate deserunt veniam dolor aliqua occaecat tempor.\r\n", "registered": "2014-06-15T07:24:16-12:00", "latitude": -74.595352, "longitude": 114.368228, "tags": [ "magna", "dolor", "reprehenderit", "amet", "irure", "fugiat", "enim" ], "friends": [ { "id": 0, "name": "Corrine Horton" }, { "id": 1, "name": "Courtney Molina" }, { "id": 2, "name": "Annmarie Le" } ], "greeting": "Hello, Dixon Butler! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2727dfaede9d64daa1", "index": 3561, "guid": "3d8819e7-7262-4379-a02f-dde3d1be397f", "isActive": true, "balance": "$3,429.07", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Claire Summers", "gender": "female", "company": "GORGANIC", "email": "clairesummers@gorganic.com", "phone": "+1 (942) 484-3092", "address": "300 Withers Street, Brandywine, South Dakota, 9808", "about": "Veniam eiusmod deserunt irure ut esse. Tempor ipsum dolore est irure mollit tempor adipisicing occaecat consectetur commodo est sint commodo. Qui qui enim officia labore ad Lorem ipsum consequat id aliquip eu in aliquip.\r\n", "registered": "2014-09-22T04:16:28-12:00", "latitude": 54.793228, "longitude": -167.646355, "tags": [ "adipisicing", "cillum", "velit", "laborum", "qui", "do", "officia" ], "friends": [ { "id": 0, "name": "Ochoa Gardner" }, { "id": 1, "name": "Elliott Wallace" }, { "id": 2, "name": "Gonzales Johnson" } ], "greeting": "Hello, Claire Summers! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2750cf49a18a3ee907", "index": 3562, "guid": "06be792b-092b-487f-8b62-57c28985a1ff", "isActive": false, "balance": "$3,567.14", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Charmaine Conner", "gender": "female", "company": "OULU", "email": "charmaineconner@oulu.com", "phone": "+1 (829) 588-3449", "address": "482 Berriman Street, Osmond, West Virginia, 2049", "about": "Esse qui voluptate dolor eiusmod veniam irure cupidatat elit duis consectetur eu. Adipisicing sunt ipsum minim cillum reprehenderit nostrud. Incididunt eu cupidatat irure aliquip elit et adipisicing eu fugiat veniam cupidatat consectetur. Nisi laboris cillum proident et exercitation eiusmod non excepteur duis enim magna mollit.\r\n", "registered": "2014-05-17T08:24:41-12:00", "latitude": -21.999098, "longitude": -84.930824, "tags": [ "ex", "elit", "culpa", "dolor", "consectetur", "tempor", "laborum" ], "friends": [ { "id": 0, "name": "Jacquelyn Finch" }, { "id": 1, "name": "Michele Haney" }, { "id": 2, "name": "Beverley Martin" } ], "greeting": "Hello, Charmaine Conner! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27862f26bf152409b1", "index": 3563, "guid": "9dff4c52-bc7b-4196-8035-08d57aceb71d", "isActive": false, "balance": "$1,122.90", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Roach Crosby", "gender": "male", "company": "COMDOM", "email": "roachcrosby@comdom.com", "phone": "+1 (938) 403-2666", "address": "609 Vernon Avenue, Bascom, Texas, 9781", "about": "Labore aute fugiat cillum exercitation dolor esse velit sit nostrud consectetur sit ut deserunt consectetur. Consectetur pariatur dolore proident consequat esse esse ipsum esse. Magna mollit anim ea tempor. Lorem anim aliquip duis nulla aliqua mollit excepteur officia commodo in consectetur incididunt velit. Amet mollit enim esse ipsum ad ea ut eiusmod veniam eu excepteur velit anim eiusmod.\r\n", "registered": "2014-08-26T00:48:21-12:00", "latitude": 66.235288, "longitude": 30.958691, "tags": [ "tempor", "do", "reprehenderit", "pariatur", "duis", "duis", "fugiat" ], "friends": [ { "id": 0, "name": "Medina Lloyd" }, { "id": 1, "name": "Holt Lester" }, { "id": 2, "name": "Josephine Whitfield" } ], "greeting": "Hello, Roach Crosby! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea273c6eca92ded1bfbb", "index": 3564, "guid": "33626c43-2075-4993-ae4d-37ca5d3d874f", "isActive": false, "balance": "$1,316.77", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Sweeney Evans", "gender": "male", "company": "FLOTONIC", "email": "sweeneyevans@flotonic.com", "phone": "+1 (932) 442-2026", "address": "420 India Street, Lowgap, Oregon, 595", "about": "Sunt ut laboris tempor occaecat amet cupidatat. Nostrud minim elit laboris aute incididunt exercitation exercitation aute aliqua sunt dolore aliqua reprehenderit. Elit aliqua do aliqua veniam consequat fugiat. Do ad minim do sint Lorem mollit anim ea. Laboris labore in ut et non velit elit et cupidatat est ullamco aliquip minim aute. Cupidatat non eu eiusmod laborum ad non veniam ut est magna dolore. Amet deserunt sint voluptate nisi officia.\r\n", "registered": "2014-05-11T03:50:01-12:00", "latitude": 25.57875, "longitude": -164.032269, "tags": [ "excepteur", "anim", "aliqua", "magna", "aliqua", "ea", "pariatur" ], "friends": [ { "id": 0, "name": "Barrera Blackburn" }, { "id": 1, "name": "Kenya Walter" }, { "id": 2, "name": "Moon Underwood" } ], "greeting": "Hello, Sweeney Evans! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27ddd190d113de6f2b", "index": 3565, "guid": "93c1018f-99c8-4607-8e2e-c166423a640d", "isActive": true, "balance": "$1,182.84", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Imelda William", "gender": "female", "company": "KYAGURU", "email": "imeldawilliam@kyaguru.com", "phone": "+1 (901) 488-3712", "address": "417 River Street, Ezel, Nevada, 125", "about": "Esse proident sint pariatur officia adipisicing non qui ad. Aute quis ad magna amet do velit enim laboris cupidatat in sunt minim laboris. Commodo exercitation consequat labore duis occaecat Lorem quis anim nostrud laboris aliquip occaecat laboris. Ex eu consequat irure dolor duis nostrud ad. Aliqua esse sint anim incididunt in aute do. Aute ea ullamco dolor aliqua sint in. Ad ut id eu elit incididunt proident.\r\n", "registered": "2014-05-05T11:47:58-12:00", "latitude": 63.658964, "longitude": 155.199441, "tags": [ "enim", "veniam", "sit", "nisi", "ipsum", "Lorem", "eu" ], "friends": [ { "id": 0, "name": "Hays Mccarty" }, { "id": 1, "name": "Althea Mullins" }, { "id": 2, "name": "Rosetta Sweet" } ], "greeting": "Hello, Imelda William! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2704a2bacdb69a04fd", "index": 3566, "guid": "7fe2094c-2947-4876-8766-6f1960083d71", "isActive": true, "balance": "$1,817.37", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Schneider Watts", "gender": "male", "company": "XOGGLE", "email": "schneiderwatts@xoggle.com", "phone": "+1 (814) 519-2799", "address": "710 Celeste Court, Bakersville, Minnesota, 6529", "about": "Consectetur reprehenderit sint dolore commodo consectetur duis est est cupidatat fugiat incididunt. Ex duis velit nisi magna Lorem nulla ad Lorem proident. Magna et eiusmod nisi irure minim laborum mollit dolore. Exercitation anim nisi ad Lorem ad laborum culpa proident adipisicing aliquip est do dolor.\r\n", "registered": "2014-01-26T14:01:25-13:00", "latitude": -9.073971, "longitude": -74.575572, "tags": [ "aliqua", "Lorem", "adipisicing", "est", "officia", "voluptate", "minim" ], "friends": [ { "id": 0, "name": "Wagner Moreno" }, { "id": 1, "name": "Stark Mcmillan" }, { "id": 2, "name": "Patty Greer" } ], "greeting": "Hello, Schneider Watts! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea275a42a2a6131050db", "index": 3567, "guid": "a98261b6-947e-43fa-b5de-a67d4269fcde", "isActive": false, "balance": "$3,478.44", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "William Barron", "gender": "male", "company": "NORALI", "email": "williambarron@norali.com", "phone": "+1 (807) 584-2702", "address": "344 Herbert Street, Starks, Missouri, 8371", "about": "Sunt proident qui ut ullamco laborum ex deserunt mollit. Tempor nisi voluptate pariatur Lorem proident. Non velit qui excepteur veniam laborum duis ut proident cupidatat reprehenderit ea labore ullamco. Magna exercitation nostrud ea ut non dolore irure dolor consequat dolor sit reprehenderit ex in. Ullamco laboris consectetur deserunt est consectetur eu sint. Adipisicing excepteur pariatur amet dolor non culpa commodo.\r\n", "registered": "2014-05-22T13:53:08-12:00", "latitude": 74.366988, "longitude": -150.030333, "tags": [ "do", "deserunt", "minim", "cupidatat", "ipsum", "nulla", "sit" ], "friends": [ { "id": 0, "name": "Spears Flynn" }, { "id": 1, "name": "Campos Rasmussen" }, { "id": 2, "name": "Gail Carson" } ], "greeting": "Hello, William Barron! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea272e0b5dc19df7bb59", "index": 3568, "guid": "8b8d1f44-e8c5-4f22-b2b8-6a2190c08e6a", "isActive": true, "balance": "$1,230.26", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Waller Michael", "gender": "male", "company": "TUBALUM", "email": "wallermichael@tubalum.com", "phone": "+1 (939) 596-2358", "address": "507 Jodie Court, Freelandville, Rhode Island, 3846", "about": "Id eiusmod incididunt ut velit nulla est magna esse aliquip. Dolore tempor sunt do laborum cillum et commodo aute aute amet amet et amet proident. Aliquip est culpa enim aliquip aliqua. Esse ad ipsum aute non commodo exercitation ad eiusmod mollit aute cillum minim laborum. Minim irure minim aute ut sunt eiusmod occaecat nostrud mollit. Voluptate officia proident occaecat veniam.\r\n", "registered": "2014-01-17T02:50:40-13:00", "latitude": 17.451017, "longitude": 138.54688, "tags": [ "sit", "sit", "minim", "in", "quis", "sunt", "duis" ], "friends": [ { "id": 0, "name": "Johanna Bond" }, { "id": 1, "name": "Chambers Banks" }, { "id": 2, "name": "Delia Conley" } ], "greeting": "Hello, Waller Michael! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27d7d48bb713e15454", "index": 3569, "guid": "0a2d7ac7-7e5c-4483-a93b-4d605afbcce3", "isActive": false, "balance": "$2,995.62", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Riley Riddle", "gender": "male", "company": "COMTEST", "email": "rileyriddle@comtest.com", "phone": "+1 (808) 485-3476", "address": "828 Oxford Walk, Rowe, Florida, 8421", "about": "Et cupidatat aliqua eu voluptate Lorem consectetur eu. Consequat id aliqua esse veniam. Sit mollit esse nisi aute sit laborum esse commodo officia proident voluptate anim fugiat. Excepteur ullamco Lorem aute occaecat. Enim pariatur occaecat sit amet ullamco minim nulla anim nulla officia.\r\n", "registered": "2014-02-08T07:50:19-13:00", "latitude": 78.369201, "longitude": -100.36582, "tags": [ "anim", "minim", "cupidatat", "cupidatat", "reprehenderit", "adipisicing", "aliquip" ], "friends": [ { "id": 0, "name": "Catherine Rosa" }, { "id": 1, "name": "Clements Palmer" }, { "id": 2, "name": "Wheeler Mckenzie" } ], "greeting": "Hello, Riley Riddle! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea277406961c56a5c1fb", "index": 3570, "guid": "ee33a02a-4725-462b-a601-be8d00efd520", "isActive": true, "balance": "$3,656.76", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Celeste Koch", "gender": "female", "company": "ORBAXTER", "email": "celestekoch@orbaxter.com", "phone": "+1 (975) 566-2264", "address": "124 Sedgwick Place, Nanafalia, North Carolina, 5305", "about": "Cupidatat consequat ea magna ipsum esse proident enim aute consequat enim et aliquip aliqua. Excepteur laboris aliquip consectetur duis qui ut consectetur amet et nisi aliquip. Ipsum id anim adipisicing eu irure exercitation consectetur eu ut mollit. Sit magna duis ut magna aliquip aliqua. Aute fugiat officia exercitation laboris reprehenderit sint laborum elit enim et adipisicing. Ex mollit est nulla dolore do magna deserunt dolore aliqua id.\r\n", "registered": "2014-09-18T18:52:15-12:00", "latitude": 8.549331, "longitude": -9.52325, "tags": [ "consequat", "non", "consectetur", "sit", "pariatur", "cupidatat", "elit" ], "friends": [ { "id": 0, "name": "Ines Goodman" }, { "id": 1, "name": "John Ray" }, { "id": 2, "name": "Adams Bradshaw" } ], "greeting": "Hello, Celeste Koch! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea274634109e23c7de10", "index": 3571, "guid": "c9156562-7bbc-4785-a9d4-3cba1d3c57b7", "isActive": true, "balance": "$2,464.86", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Haney King", "gender": "male", "company": "QUINEX", "email": "haneyking@quinex.com", "phone": "+1 (933) 411-2439", "address": "820 Bogart Street, Gasquet, New Hampshire, 3122", "about": "Magna amet ullamco veniam mollit amet irure adipisicing laborum cupidatat excepteur magna. Nostrud non cillum consequat pariatur voluptate do nulla eu duis mollit nulla amet nulla. Nostrud id non duis est sint occaecat ut eu culpa irure et.\r\n", "registered": "2014-01-16T12:09:19-13:00", "latitude": -29.740918, "longitude": -132.201501, "tags": [ "commodo", "et", "qui", "dolore", "nostrud", "do", "in" ], "friends": [ { "id": 0, "name": "Sanford Bender" }, { "id": 1, "name": "Donovan Garza" }, { "id": 2, "name": "Krystal Nolan" } ], "greeting": "Hello, Haney King! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea272cb27b83cd8f51b2", "index": 3572, "guid": "657e7b87-ad82-479f-b1e5-7734f4b21549", "isActive": false, "balance": "$2,095.18", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Alexander Cote", "gender": "male", "company": "BILLMED", "email": "alexandercote@billmed.com", "phone": "+1 (914) 539-2555", "address": "601 Oriental Court, Ruckersville, Arkansas, 7937", "about": "Reprehenderit quis deserunt culpa consequat aliquip occaecat nisi dolore et eiusmod dolor fugiat id. Cupidatat adipisicing qui consectetur officia. Elit velit exercitation reprehenderit quis elit voluptate Lorem nisi anim.\r\n", "registered": "2014-05-31T04:01:41-12:00", "latitude": 40.720855, "longitude": 0.02455, "tags": [ "qui", "ex", "occaecat", "in", "cupidatat", "laboris", "ipsum" ], "friends": [ { "id": 0, "name": "Levine Delacruz" }, { "id": 1, "name": "Nell Sanders" }, { "id": 2, "name": "Peters Ewing" } ], "greeting": "Hello, Alexander Cote! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2791dfda82ecd85754", "index": 3573, "guid": "02475adf-1847-44fe-8423-b0b0bd1f91d5", "isActive": true, "balance": "$3,100.63", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Hartman Sexton", "gender": "male", "company": "ZILLACOM", "email": "hartmansexton@zillacom.com", "phone": "+1 (847) 462-2967", "address": "572 Remsen Avenue, Dalton, Iowa, 6600", "about": "Veniam quis amet aliqua ex cupidatat mollit excepteur reprehenderit cupidatat aute. Adipisicing et amet veniam sit do adipisicing veniam dolore ullamco ullamco mollit aliquip. Lorem laboris do occaecat consequat ex mollit esse tempor reprehenderit eiusmod est. Consequat incididunt excepteur ea enim cupidatat id adipisicing ipsum aute officia deserunt nisi culpa eiusmod.\r\n", "registered": "2014-05-09T02:47:39-12:00", "latitude": 87.752073, "longitude": 99.986827, "tags": [ "ullamco", "voluptate", "reprehenderit", "in", "cillum", "est", "ut" ], "friends": [ { "id": 0, "name": "Charles Salinas" }, { "id": 1, "name": "Mills Alexander" }, { "id": 2, "name": "Nelson Lane" } ], "greeting": "Hello, Hartman Sexton! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2709fdc3d5cb004b93", "index": 3574, "guid": "7d628316-ab43-48b2-8d3b-ebcf1b604340", "isActive": true, "balance": "$2,305.23", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Estes Kline", "gender": "male", "company": "NETPLODE", "email": "esteskline@netplode.com", "phone": "+1 (886) 498-2595", "address": "827 Brown Street, Coultervillle, Nebraska, 939", "about": "Aute ut commodo mollit incididunt reprehenderit voluptate. Eu nulla adipisicing pariatur ipsum veniam exercitation veniam ipsum. Eu aliquip mollit incididunt deserunt velit velit laboris laborum adipisicing ad. Reprehenderit fugiat adipisicing cupidatat ex voluptate elit ea excepteur et. Incididunt nisi dolor anim irure magna aliquip ut mollit mollit Lorem do reprehenderit fugiat nostrud. Aliqua velit elit proident nostrud fugiat mollit consectetur cupidatat et ex ut nulla. Pariatur nostrud nostrud ea non occaecat officia anim minim culpa est.\r\n", "registered": "2014-06-14T11:59:03-12:00", "latitude": -8.838145, "longitude": -29.692333, "tags": [ "ea", "labore", "fugiat", "consequat", "veniam", "tempor", "sit" ], "friends": [ { "id": 0, "name": "Erna Lowery" }, { "id": 1, "name": "Vazquez Dodson" }, { "id": 2, "name": "Leigh Russell" } ], "greeting": "Hello, Estes Kline! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27c464ee8e3409c8e2", "index": 3575, "guid": "6da82b43-0c48-4d3d-b535-96c50b20d991", "isActive": false, "balance": "$3,743.55", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Callie Reese", "gender": "female", "company": "GEOFARM", "email": "calliereese@geofarm.com", "phone": "+1 (985) 470-2729", "address": "530 Beayer Place, Hall, District Of Columbia, 9138", "about": "Deserunt laboris mollit quis nisi dolore sunt voluptate proident exercitation cillum. Commodo ex veniam ea cupidatat incididunt amet anim. Est ex quis eu enim.\r\n", "registered": "2014-07-16T14:00:07-12:00", "latitude": -80.022402, "longitude": 142.051085, "tags": [ "Lorem", "tempor", "in", "non", "nisi", "nostrud", "in" ], "friends": [ { "id": 0, "name": "Margarita Short" }, { "id": 1, "name": "Kent Cameron" }, { "id": 2, "name": "Elise Lawrence" } ], "greeting": "Hello, Callie Reese! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea274a116653c469f61f", "index": 3576, "guid": "9bed7f30-5729-4f69-b9a7-363ead380a5f", "isActive": false, "balance": "$3,175.39", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Blankenship Small", "gender": "male", "company": "RUBADUB", "email": "blankenshipsmall@rubadub.com", "phone": "+1 (879) 456-3456", "address": "771 Terrace Place, Snelling, New Jersey, 5596", "about": "Id exercitation ipsum excepteur occaecat qui consectetur sunt nostrud. Consectetur ea reprehenderit tempor Lorem et elit nulla sit velit velit reprehenderit ut consectetur incididunt. Sint irure adipisicing proident mollit sint cillum. Dolor ad amet non aute. In velit esse duis reprehenderit amet voluptate nisi culpa ex cupidatat. Qui do eiusmod esse nostrud adipisicing eiusmod.\r\n", "registered": "2014-07-09T05:45:02-12:00", "latitude": 57.097251, "longitude": 139.998676, "tags": [ "irure", "id", "cillum", "consectetur", "in", "enim", "adipisicing" ], "friends": [ { "id": 0, "name": "Parsons Wilkins" }, { "id": 1, "name": "Gibson Frye" }, { "id": 2, "name": "Therese Medina" } ], "greeting": "Hello, Blankenship Small! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea271d9d776337ff0951", "index": 3577, "guid": "0c6f62c6-6b31-421b-9aec-4bbdda61a46d", "isActive": true, "balance": "$1,911.94", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Sophie Terry", "gender": "female", "company": "RETROTEX", "email": "sophieterry@retrotex.com", "phone": "+1 (883) 427-2933", "address": "256 Hyman Court, Tilden, Palau, 4778", "about": "Ex reprehenderit cupidatat reprehenderit minim dolor dolore tempor cillum qui ad ipsum ea mollit voluptate. Adipisicing aute est Lorem dolor cupidatat elit ad sunt magna exercitation sunt voluptate officia tempor. Ullamco enim commodo ea id aliqua officia qui. Aliqua do voluptate eu consectetur sint consectetur ipsum fugiat culpa.\r\n", "registered": "2014-04-18T21:39:48-12:00", "latitude": 42.379952, "longitude": 131.514852, "tags": [ "adipisicing", "qui", "ipsum", "commodo", "Lorem", "proident", "dolore" ], "friends": [ { "id": 0, "name": "Maryanne Mccullough" }, { "id": 1, "name": "Powell Manning" }, { "id": 2, "name": "Hollie Langley" } ], "greeting": "Hello, Sophie Terry! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27132d04bcd595c3fb", "index": 3578, "guid": "61a8fe57-09e8-477b-bc7d-4fa5fccf1c63", "isActive": false, "balance": "$1,860.19", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Marjorie Jackson", "gender": "female", "company": "OPPORTECH", "email": "marjoriejackson@opportech.com", "phone": "+1 (973) 437-3433", "address": "156 Diamond Street, Caspar, Puerto Rico, 4688", "about": "Et cillum laborum est eiusmod commodo dolor qui non. Dolore culpa cillum in incididunt exercitation. Culpa amet qui commodo cupidatat exercitation quis officia nostrud proident.\r\n", "registered": "2014-08-01T23:53:50-12:00", "latitude": 64.132806, "longitude": -86.213469, "tags": [ "laborum", "ex", "do", "laborum", "sunt", "dolor", "sit" ], "friends": [ { "id": 0, "name": "Vinson Grant" }, { "id": 1, "name": "Pearl Hatfield" }, { "id": 2, "name": "Webb Hodges" } ], "greeting": "Hello, Marjorie Jackson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea274e59dbce62672447", "index": 3579, "guid": "dded6a6e-a3b7-4b5b-aa34-ca836d88bff2", "isActive": true, "balance": "$3,413.31", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Rivas Trevino", "gender": "male", "company": "LUNCHPAD", "email": "rivastrevino@lunchpad.com", "phone": "+1 (823) 487-3631", "address": "772 Whitney Avenue, Homeworth, California, 8099", "about": "Pariatur laboris aute do minim aliquip. Sit nisi deserunt sunt in do velit nisi. Voluptate amet aute commodo Lorem esse ad. Esse non in consequat id laboris enim qui non eu est elit. Cillum cillum nisi est commodo dolore qui mollit voluptate reprehenderit dolore sit et labore excepteur. Laborum laborum et magna occaecat. Sint sit irure qui dolor aute sit.\r\n", "registered": "2014-04-08T10:02:05-12:00", "latitude": 70.518579, "longitude": -34.31422, "tags": [ "ut", "duis", "pariatur", "magna", "id", "amet", "cillum" ], "friends": [ { "id": 0, "name": "Charity Thornton" }, { "id": 1, "name": "Mamie Kelley" }, { "id": 2, "name": "Baxter Joseph" } ], "greeting": "Hello, Rivas Trevino! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2791844841dfdfd110", "index": 3580, "guid": "52c2d1a9-e025-42c4-ad94-4372f00a8c44", "isActive": true, "balance": "$2,638.12", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Bettie Stephens", "gender": "female", "company": "NIQUENT", "email": "bettiestephens@niquent.com", "phone": "+1 (849) 420-3720", "address": "526 Preston Court, Sparkill, Vermont, 8082", "about": "Sint culpa irure cillum cillum esse nisi. Dolore duis duis fugiat voluptate adipisicing voluptate sint exercitation exercitation. Fugiat dolor eiusmod quis culpa sit id eiusmod mollit. Enim consectetur commodo exercitation culpa ipsum enim et. Ipsum labore nostrud nisi esse occaecat reprehenderit velit duis mollit. Elit nostrud adipisicing tempor eu ut sint ea irure.\r\n", "registered": "2014-02-03T10:38:44-13:00", "latitude": -58.793384, "longitude": 91.042365, "tags": [ "id", "deserunt", "sit", "quis", "consectetur", "laborum", "commodo" ], "friends": [ { "id": 0, "name": "Farley Norman" }, { "id": 1, "name": "Miranda Nash" }, { "id": 2, "name": "Sheryl Gibbs" } ], "greeting": "Hello, Bettie Stephens! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27e186adf94db80560", "index": 3581, "guid": "e31062e6-545b-4148-b16c-9fe1de35363c", "isActive": false, "balance": "$3,658.24", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Rosanne Foreman", "gender": "female", "company": "STELAECOR", "email": "rosanneforeman@stelaecor.com", "phone": "+1 (862) 497-3662", "address": "141 Orange Street, Chamizal, Indiana, 8681", "about": "Sint aliqua in commodo duis officia elit ex cupidatat incididunt ullamco occaecat ex ullamco. Incididunt et ex Lorem excepteur magna eu elit sint officia ut dolor excepteur ullamco deserunt. Minim ad culpa dolor deserunt anim culpa proident reprehenderit et sit minim cillum officia. Fugiat id nostrud laborum sunt qui nostrud aute. Ea enim sint est elit aliqua ullamco. Id anim minim fugiat minim qui elit proident sunt labore ullamco minim sit Lorem ea.\r\n", "registered": "2014-04-06T19:37:58-12:00", "latitude": 67.262475, "longitude": 78.44939, "tags": [ "Lorem", "tempor", "incididunt", "deserunt", "velit", "excepteur", "aliqua" ], "friends": [ { "id": 0, "name": "Blackwell Leon" }, { "id": 1, "name": "Maude Holt" }, { "id": 2, "name": "Abigail Griffin" } ], "greeting": "Hello, Rosanne Foreman! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea271f7586ce95b9bf3a", "index": 3582, "guid": "6235629a-748f-45b6-af6a-c9eddb44f0a3", "isActive": true, "balance": "$3,060.74", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Mendoza Sutton", "gender": "male", "company": "ORBOID", "email": "mendozasutton@orboid.com", "phone": "+1 (956) 450-3284", "address": "504 Burnett Street, Sperryville, Illinois, 2990", "about": "Laborum sunt dolor eu laboris pariatur id aliquip laborum cillum incididunt. Culpa anim exercitation cillum adipisicing dolore dolore occaecat sint do. Aliquip occaecat qui nostrud ut elit consequat laborum voluptate nisi aliqua consequat cillum nulla. Anim cupidatat non ipsum velit laborum eiusmod eiusmod laboris nisi pariatur. Voluptate ad proident excepteur pariatur fugiat ipsum ex. Incididunt aute non Lorem ipsum irure consequat enim qui minim sint magna. Consequat dolore nostrud commodo sint excepteur aliquip quis ipsum elit sunt do fugiat.\r\n", "registered": "2014-05-06T22:59:28-12:00", "latitude": 35.901589, "longitude": -130.031659, "tags": [ "est", "aliqua", "incididunt", "enim", "qui", "do", "magna" ], "friends": [ { "id": 0, "name": "Ortiz Woodard" }, { "id": 1, "name": "Talley Larsen" }, { "id": 2, "name": "Latonya Parks" } ], "greeting": "Hello, Mendoza Sutton! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27e2fe5806cf6268bb", "index": 3583, "guid": "f456e3ce-4a68-45c5-b7ca-b8f24bbfdaee", "isActive": true, "balance": "$1,813.47", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Navarro Benson", "gender": "male", "company": "TELEPARK", "email": "navarrobenson@telepark.com", "phone": "+1 (842) 582-2115", "address": "183 Dean Street, Barstow, South Carolina, 255", "about": "Ipsum pariatur quis officia sint irure ut consectetur duis veniam. Tempor id Lorem voluptate nulla nulla incididunt magna pariatur. Ipsum dolor non cupidatat sunt voluptate pariatur elit esse sit cillum eiusmod amet. Consequat laboris ut labore fugiat qui.\r\n", "registered": "2014-03-24T23:35:43-13:00", "latitude": -55.288413, "longitude": 130.659038, "tags": [ "est", "enim", "aute", "do", "eu", "ullamco", "occaecat" ], "friends": [ { "id": 0, "name": "Summers Jefferson" }, { "id": 1, "name": "Ivy Ruiz" }, { "id": 2, "name": "Eula Mclaughlin" } ], "greeting": "Hello, Navarro Benson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea276c334c03f470fb36", "index": 3584, "guid": "408cd886-fb77-4cfa-9723-3fffbad330fc", "isActive": true, "balance": "$2,966.27", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Mcgee Bernard", "gender": "male", "company": "COLAIRE", "email": "mcgeebernard@colaire.com", "phone": "+1 (985) 566-3093", "address": "610 Desmond Court, Warren, American Samoa, 3392", "about": "Anim esse aute magna nostrud ea incididunt laborum eiusmod et. Sint labore aliquip incididunt ex aliqua sint. Consectetur cupidatat occaecat qui proident qui excepteur. Quis voluptate ad ea qui commodo eiusmod aute proident ex excepteur. Sit nostrud elit ipsum elit reprehenderit nostrud laborum culpa. Nisi consectetur labore magna nulla dolore commodo anim. Eiusmod deserunt commodo nisi proident ex ipsum.\r\n", "registered": "2014-04-10T18:48:59-12:00", "latitude": 23.218147, "longitude": 1.005184, "tags": [ "ex", "occaecat", "ad", "enim", "nostrud", "eiusmod", "magna" ], "friends": [ { "id": 0, "name": "Frye Bonner" }, { "id": 1, "name": "Carla Fischer" }, { "id": 2, "name": "Cornelia Whitney" } ], "greeting": "Hello, Mcgee Bernard! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27ad0443fe3e339889", "index": 3585, "guid": "4b417309-57c8-4c77-af62-e6544b329ee3", "isActive": true, "balance": "$1,827.02", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Lara Conway", "gender": "male", "company": "ZORROMOP", "email": "laraconway@zorromop.com", "phone": "+1 (989) 527-2757", "address": "625 Hart Place, Sims, Delaware, 5542", "about": "Laboris sint in eiusmod dolor duis ipsum voluptate culpa irure magna nisi laborum. Velit ex incididunt et magna do commodo pariatur aliquip. Eu ut id ullamco esse pariatur adipisicing aliqua in et consectetur sunt ut. Pariatur ullamco minim sit aliqua nostrud ut.\r\n", "registered": "2014-04-12T02:42:42-12:00", "latitude": -54.294206, "longitude": 113.847896, "tags": [ "culpa", "qui", "ipsum", "voluptate", "fugiat", "commodo", "voluptate" ], "friends": [ { "id": 0, "name": "Fulton Patton" }, { "id": 1, "name": "Wood Hahn" }, { "id": 2, "name": "Noelle Mcpherson" } ], "greeting": "Hello, Lara Conway! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27b286bd9dbc00d425", "index": 3586, "guid": "d1697b50-596f-4c71-9ce4-8c77c8316156", "isActive": true, "balance": "$2,498.32", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Lilia Cabrera", "gender": "female", "company": "REALYSIS", "email": "liliacabrera@realysis.com", "phone": "+1 (911) 466-2253", "address": "838 Monroe Street, Shelby, Pennsylvania, 2857", "about": "Nostrud magna voluptate ullamco sit excepteur occaecat quis qui aute. Non et labore non incididunt non commodo do non sint. Consequat irure do consectetur aute veniam commodo. Quis amet nulla non aute enim duis deserunt voluptate id ex. Dolore deserunt cillum qui nostrud incididunt. Officia enim et sit esse sint culpa pariatur in.\r\n", "registered": "2014-03-15T08:13:06-13:00", "latitude": -78.023014, "longitude": 89.631196, "tags": [ "qui", "dolor", "dolor", "exercitation", "velit", "dolor", "tempor" ], "friends": [ { "id": 0, "name": "Leslie Sanchez" }, { "id": 1, "name": "Guerra Davidson" }, { "id": 2, "name": "Zelma Preston" } ], "greeting": "Hello, Lilia Cabrera! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea276ba9fe1887b8641c", "index": 3587, "guid": "6badb677-7473-40bd-a5b7-9d010ad7c187", "isActive": false, "balance": "$3,697.39", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Vickie Williams", "gender": "female", "company": "ENORMO", "email": "vickiewilliams@enormo.com", "phone": "+1 (943) 464-2777", "address": "344 Debevoise Avenue, Bergoo, Georgia, 2102", "about": "Est consequat consectetur laboris ullamco. Reprehenderit magna aliquip eu veniam amet deserunt dolor dolore amet officia excepteur amet sit ea. Veniam sunt elit amet aliquip voluptate ut quis fugiat quis sit do sit nisi.\r\n", "registered": "2014-05-22T11:23:09-12:00", "latitude": 56.946985, "longitude": 1.237495, "tags": [ "exercitation", "deserunt", "aliquip", "dolor", "aliqua", "occaecat", "nisi" ], "friends": [ { "id": 0, "name": "Julianne Reilly" }, { "id": 1, "name": "Augusta Jacobson" }, { "id": 2, "name": "Angie Jones" } ], "greeting": "Hello, Vickie Williams! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea274bb1cf3a74440b43", "index": 3588, "guid": "c4f73f9d-7527-415d-b97e-eaf2e2661b49", "isActive": true, "balance": "$2,253.95", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Good Bennett", "gender": "male", "company": "RODEOMAD", "email": "goodbennett@rodeomad.com", "phone": "+1 (998) 507-2361", "address": "316 Berkeley Place, Biddle, North Dakota, 9873", "about": "Nisi id qui commodo incididunt excepteur velit. Quis Lorem exercitation labore culpa. Sint esse adipisicing dolore aliqua magna sunt nostrud non. Dolore exercitation laboris culpa proident voluptate ea proident sint. In nisi duis consectetur aliqua nisi sit aliqua.\r\n", "registered": "2014-03-01T13:25:06-13:00", "latitude": -51.681227, "longitude": 156.267185, "tags": [ "dolore", "culpa", "est", "magna", "nisi", "deserunt", "deserunt" ], "friends": [ { "id": 0, "name": "Sandoval Quinn" }, { "id": 1, "name": "Molina Zimmerman" }, { "id": 2, "name": "Eunice Cruz" } ], "greeting": "Hello, Good Bennett! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27d0f7f4ffaddca401", "index": 3589, "guid": "dc7b805a-6037-4a11-b00f-42443aeffd06", "isActive": false, "balance": "$3,680.09", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Hyde Moody", "gender": "male", "company": "VOIPA", "email": "hydemoody@voipa.com", "phone": "+1 (802) 473-2618", "address": "269 Varick Avenue, Wollochet, Louisiana, 2518", "about": "Officia consectetur dolor consectetur non exercitation qui aliquip aute cillum mollit velit cillum adipisicing. Velit est dolor dolore mollit ut labore excepteur nisi cillum cillum exercitation ad sit. Nulla esse elit qui et labore fugiat. Et reprehenderit consequat magna sint.\r\n", "registered": "2014-04-26T04:36:35-12:00", "latitude": -44.753628, "longitude": -112.946711, "tags": [ "et", "cillum", "proident", "nulla", "proident", "ea", "ex" ], "friends": [ { "id": 0, "name": "Diann Barton" }, { "id": 1, "name": "Hannah Ayala" }, { "id": 2, "name": "Haynes Workman" } ], "greeting": "Hello, Hyde Moody! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27ae1a6964573a83b0", "index": 3590, "guid": "14233a55-a405-40ec-b7bd-446f875cdaea", "isActive": true, "balance": "$2,065.47", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Krista Hopper", "gender": "female", "company": "BULLZONE", "email": "kristahopper@bullzone.com", "phone": "+1 (903) 499-2593", "address": "924 Hoyts Lane, Snowville, Northern Mariana Islands, 8134", "about": "Voluptate adipisicing est ullamco cillum officia ea veniam. Ut pariatur occaecat eiusmod laboris. Veniam ea commodo ut cillum. Labore incididunt incididunt esse sit irure commodo nisi amet id ipsum nostrud elit commodo. Irure do magna voluptate in incididunt cupidatat esse ad nulla. Velit excepteur qui laboris sit dolor.\r\n", "registered": "2014-05-04T01:47:37-12:00", "latitude": -19.544036, "longitude": 6.719252, "tags": [ "laborum", "in", "nisi", "in", "est", "ullamco", "ullamco" ], "friends": [ { "id": 0, "name": "Jody Turner" }, { "id": 1, "name": "Stone Shaffer" }, { "id": 2, "name": "Jaime Miranda" } ], "greeting": "Hello, Krista Hopper! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2726fe10556228dbce", "index": 3591, "guid": "b405b7de-aaa2-4882-8cc1-fdd2fcabc97a", "isActive": false, "balance": "$1,131.58", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Walls Cash", "gender": "male", "company": "GLUKGLUK", "email": "wallscash@glukgluk.com", "phone": "+1 (857) 593-3050", "address": "223 Friel Place, Fairhaven, Colorado, 8519", "about": "Aliqua consequat anim velit cupidatat id ullamco in ipsum velit veniam adipisicing dolor. Excepteur irure eu quis qui ullamco amet commodo ex deserunt sunt et nostrud sit. Proident dolore officia ullamco ut tempor irure sit pariatur incididunt cillum. Dolor eiusmod excepteur officia exercitation eu dolore deserunt reprehenderit. Consequat aute amet fugiat eu.\r\n", "registered": "2014-07-25T14:49:41-12:00", "latitude": -37.728956, "longitude": 4.524302, "tags": [ "aliquip", "id", "pariatur", "proident", "veniam", "ea", "nulla" ], "friends": [ { "id": 0, "name": "Virginia Randall" }, { "id": 1, "name": "Bruce Drake" }, { "id": 2, "name": "Reyna Calderon" } ], "greeting": "Hello, Walls Cash! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27b61333779ce24cbe", "index": 3592, "guid": "be09a446-c501-4c24-a97d-bc4b66b7c247", "isActive": true, "balance": "$1,571.68", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Booth Mckinney", "gender": "male", "company": "COMSTRUCT", "email": "boothmckinney@comstruct.com", "phone": "+1 (861) 408-2785", "address": "277 Agate Court, Kanauga, Idaho, 5185", "about": "Est occaecat sunt esse ex enim tempor reprehenderit fugiat deserunt laborum duis qui. Labore aute eiusmod ipsum ut officia. Eu ipsum velit amet qui est dolor anim incididunt enim dolor consectetur ullamco anim. Duis fugiat elit reprehenderit est eiusmod sit voluptate commodo ex mollit quis incididunt ullamco.\r\n", "registered": "2014-05-08T15:47:48-12:00", "latitude": 27.192315, "longitude": 176.45456, "tags": [ "aliquip", "laboris", "sit", "nisi", "tempor", "amet", "laborum" ], "friends": [ { "id": 0, "name": "Hunt Estrada" }, { "id": 1, "name": "Blake Weaver" }, { "id": 2, "name": "Michelle Welch" } ], "greeting": "Hello, Booth Mckinney! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea278dbc16899a9a5dfe", "index": 3593, "guid": "f488910d-60a7-4f0b-b251-482af653f316", "isActive": true, "balance": "$1,727.51", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Roman Durham", "gender": "male", "company": "VALPREAL", "email": "romandurham@valpreal.com", "phone": "+1 (941) 577-2512", "address": "771 Keen Court, Kilbourne, Marshall Islands, 9047", "about": "Laborum occaecat aliqua Lorem ex aliquip eu. Ea aliqua tempor veniam labore. Eu excepteur ad adipisicing et ex dolor labore. Cupidatat Lorem voluptate elit elit reprehenderit do exercitation dolor elit irure id eiusmod sit amet. Ea anim aliqua mollit cillum commodo enim nostrud ullamco dolor aliquip anim laboris amet laborum. Reprehenderit commodo officia esse sit anim deserunt culpa. Ipsum incididunt quis excepteur adipisicing occaecat voluptate ea laborum commodo.\r\n", "registered": "2014-08-29T22:58:10-12:00", "latitude": 40.070734, "longitude": 5.072416, "tags": [ "aliquip", "fugiat", "occaecat", "non", "duis", "nisi", "occaecat" ], "friends": [ { "id": 0, "name": "Morton Woodward" }, { "id": 1, "name": "Trevino Fowler" }, { "id": 2, "name": "Munoz Holloway" } ], "greeting": "Hello, Roman Durham! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27697a02f794b783c3", "index": 3594, "guid": "25f29195-6cc5-44a2-9de7-5459e0b53720", "isActive": true, "balance": "$1,440.44", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Kathleen Britt", "gender": "female", "company": "CHILLIUM", "email": "kathleenbritt@chillium.com", "phone": "+1 (868) 509-2960", "address": "514 Hamilton Avenue, Saddlebrooke, New York, 2384", "about": "Amet nisi minim incididunt exercitation consectetur pariatur mollit non elit dolor et Lorem laborum. Occaecat Lorem duis irure reprehenderit. Magna labore exercitation cupidatat non sunt Lorem adipisicing duis exercitation in nostrud. Officia ut non incididunt aliqua ut dolor.\r\n", "registered": "2014-04-16T17:16:19-12:00", "latitude": 44.475656, "longitude": 38.025269, "tags": [ "nulla", "nulla", "et", "do", "occaecat", "eiusmod", "amet" ], "friends": [ { "id": 0, "name": "Sheppard Berg" }, { "id": 1, "name": "Clayton Moss" }, { "id": 2, "name": "Turner Stark" } ], "greeting": "Hello, Kathleen Britt! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea275a41bb6ca51866c6", "index": 3595, "guid": "4780034b-59ce-4a10-9ecf-3e3a97a61856", "isActive": false, "balance": "$1,498.17", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Kaye Mendoza", "gender": "female", "company": "ANDRYX", "email": "kayemendoza@andryx.com", "phone": "+1 (976) 415-2072", "address": "616 Saratoga Avenue, Waterloo, Guam, 8265", "about": "Minim et tempor magna minim aliqua in est dolor sit. Excepteur id incididunt exercitation quis Lorem. Dolor deserunt voluptate ipsum in tempor quis quis est culpa qui adipisicing culpa.\r\n", "registered": "2014-07-30T16:02:53-12:00", "latitude": 26.009453, "longitude": 145.503035, "tags": [ "consequat", "Lorem", "do", "qui", "eiusmod", "labore", "velit" ], "friends": [ { "id": 0, "name": "Travis Harrison" }, { "id": 1, "name": "Schwartz Dickerson" }, { "id": 2, "name": "Shari Arnold" } ], "greeting": "Hello, Kaye Mendoza! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2797fcc70b19784ae6", "index": 3596, "guid": "bce3c806-ca2f-422e-8d68-3612b0332a6b", "isActive": false, "balance": "$1,706.92", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Lucinda Rodriquez", "gender": "female", "company": "STEELFAB", "email": "lucindarodriquez@steelfab.com", "phone": "+1 (992) 452-2274", "address": "789 Halleck Street, Statenville, Virgin Islands, 3481", "about": "Laboris commodo in cillum tempor esse qui ut dolor. Non id in id in. Ad dolor incididunt excepteur deserunt ut. Sit officia adipisicing sunt exercitation reprehenderit elit cillum et. Eu esse voluptate reprehenderit ullamco laboris ullamco. Voluptate non ipsum cupidatat aliqua nulla nisi dolor tempor ullamco Lorem quis velit mollit.\r\n", "registered": "2014-08-10T17:39:57-12:00", "latitude": 83.764628, "longitude": -171.442924, "tags": [ "et", "sunt", "quis", "cupidatat", "adipisicing", "sit", "aute" ], "friends": [ { "id": 0, "name": "Jacobs Guy" }, { "id": 1, "name": "Welch Vang" }, { "id": 2, "name": "Carpenter Lynn" } ], "greeting": "Hello, Lucinda Rodriquez! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27456f163fefe8457b", "index": 3597, "guid": "b2e54f07-b2a1-494f-a822-67db0c048228", "isActive": true, "balance": "$3,772.17", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Blair York", "gender": "male", "company": "DEEPENDS", "email": "blairyork@deepends.com", "phone": "+1 (958) 501-3579", "address": "434 Story Court, Eastmont, Massachusetts, 4419", "about": "Nisi pariatur consectetur ea duis reprehenderit ullamco amet reprehenderit excepteur. Ea adipisicing deserunt exercitation Lorem. Nostrud aliqua laborum cupidatat exercitation eiusmod fugiat anim pariatur labore.\r\n", "registered": "2014-08-02T14:59:36-12:00", "latitude": -87.554391, "longitude": -44.114286, "tags": [ "dolore", "ea", "in", "cupidatat", "adipisicing", "nulla", "eiusmod" ], "friends": [ { "id": 0, "name": "Avis Erickson" }, { "id": 1, "name": "Marcie Fields" }, { "id": 2, "name": "Taylor Aguilar" } ], "greeting": "Hello, Blair York! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27f147d41931e3ad0c", "index": 3598, "guid": "fa07496c-4613-4224-871f-37cb3b0b4fe7", "isActive": false, "balance": "$2,667.20", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Palmer Gomez", "gender": "male", "company": "INTERGEEK", "email": "palmergomez@intergeek.com", "phone": "+1 (907) 522-2790", "address": "234 Wyckoff Avenue, Glendale, Utah, 3784", "about": "Aliquip non aliquip labore voluptate ea culpa pariatur voluptate eu ex. Mollit tempor occaecat amet excepteur aliqua eu ex mollit elit pariatur minim sint ullamco aliqua. Quis qui eiusmod aliqua eiusmod amet labore elit officia proident ex est occaecat. Sit do amet sunt duis aliqua dolor irure deserunt laboris non velit. Duis nostrud excepteur excepteur culpa mollit magna officia aute eiusmod. Irure sunt do velit reprehenderit nisi ad excepteur anim voluptate. Laboris qui veniam mollit commodo tempor cillum et eiusmod culpa qui anim.\r\n", "registered": "2014-02-15T02:17:17-13:00", "latitude": -21.301898, "longitude": 176.226431, "tags": [ "irure", "aliquip", "irure", "est", "Lorem", "deserunt", "cupidatat" ], "friends": [ { "id": 0, "name": "Young Stewart" }, { "id": 1, "name": "King Foster" }, { "id": 2, "name": "Marcella Pacheco" } ], "greeting": "Hello, Palmer Gomez! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea27711ed5767b8695c5", "index": 3599, "guid": "3127aba9-b81c-450a-ab8e-4e70c6144d5b", "isActive": false, "balance": "$3,625.08", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Marshall Rodgers", "gender": "male", "company": "YURTURE", "email": "marshallrodgers@yurture.com", "phone": "+1 (809) 498-3844", "address": "646 Harrison Place, Nash, Montana, 6429", "about": "Cupidatat magna duis magna sit in anim sunt. Exercitation incididunt tempor laboris pariatur culpa eiusmod cillum sint minim adipisicing exercitation. Anim cupidatat veniam ex sunt tempor cillum anim est dolor enim. Deserunt non adipisicing pariatur culpa ut veniam laboris eiusmod Lorem quis officia mollit. Proident officia laborum do commodo veniam qui cupidatat exercitation.\r\n", "registered": "2014-03-18T05:00:14-13:00", "latitude": -57.824933, "longitude": -99.870987, "tags": [ "dolor", "ullamco", "sint", "anim", "mollit", "non", "laboris" ], "friends": [ { "id": 0, "name": "Joseph Meyers" }, { "id": 1, "name": "Andrews Roach" }, { "id": 2, "name": "Jayne Gallegos" } ], "greeting": "Hello, Marshall Rodgers! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea277ac3f1f50587bcf9", "index": 3600, "guid": "dc47b999-0120-43bb-8893-051a3eda4423", "isActive": false, "balance": "$3,873.96", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Gomez Stokes", "gender": "male", "company": "LETPRO", "email": "gomezstokes@letpro.com", "phone": "+1 (851) 427-2084", "address": "884 Hope Street, Ryderwood, Wisconsin, 934", "about": "Consectetur nisi ipsum cillum ea consectetur ullamco magna tempor ex pariatur exercitation sit voluptate. Aliqua dolore proident pariatur aliqua non exercitation qui ex fugiat. Ea sint quis amet in labore minim in exercitation non do duis enim. Nulla et aliqua dolor nisi consectetur reprehenderit magna amet elit id quis elit excepteur cillum. Adipisicing ea est mollit dolor exercitation commodo cillum velit. Exercitation et consequat anim do veniam ut nisi pariatur eiusmod elit duis.\r\n", "registered": "2014-09-21T15:46:54-12:00", "latitude": 71.643472, "longitude": 42.512565, "tags": [ "labore", "exercitation", "in", "consectetur", "aliqua", "veniam", "amet" ], "friends": [ { "id": 0, "name": "Laverne Marks" }, { "id": 1, "name": "Isabella Woods" }, { "id": 2, "name": "Johns Briggs" } ], "greeting": "Hello, Gomez Stokes! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2729eaddafbef00427", "index": 3601, "guid": "5f88b5c8-6d9c-42f0-8b78-3dba7eed0623", "isActive": false, "balance": "$3,828.11", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Kristine Serrano", "gender": "female", "company": "AUTOGRATE", "email": "kristineserrano@autograte.com", "phone": "+1 (931) 584-3032", "address": "378 Hinckley Place, Nutrioso, Maine, 4478", "about": "Voluptate in consectetur id incididunt. Aliquip deserunt laborum do consequat dolore quis incididunt voluptate excepteur et cillum laborum non. Ad id aliqua non proident dolor. Ea sint tempor esse Lorem sint non irure. Commodo irure voluptate esse in fugiat eu magna adipisicing nulla. Veniam id ipsum sunt exercitation voluptate eu minim irure sunt consequat officia. Fugiat cupidatat consequat commodo deserunt fugiat est nulla in magna.\r\n", "registered": "2014-06-12T16:55:18-12:00", "latitude": -89.268971, "longitude": -58.338168, "tags": [ "cillum", "pariatur", "Lorem", "duis", "nulla", "labore", "do" ], "friends": [ { "id": 0, "name": "Susanna Cooper" }, { "id": 1, "name": "Kelley Floyd" }, { "id": 2, "name": "Leon Stevenson" } ], "greeting": "Hello, Kristine Serrano! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2793a07f32a2854e21", "index": 3602, "guid": "8d4447c4-3dd6-455e-aa05-b439f15f8dd4", "isActive": true, "balance": "$2,575.39", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Walton Sargent", "gender": "male", "company": "TERRAGEN", "email": "waltonsargent@terragen.com", "phone": "+1 (910) 478-2094", "address": "352 Bridgewater Street, Dupuyer, Virginia, 5507", "about": "Ea laborum occaecat elit fugiat. Sunt ad laboris quis veniam excepteur sunt cupidatat. Qui sit eiusmod in eiusmod dolore cillum aliquip qui irure fugiat.\r\n", "registered": "2014-04-11T14:53:29-12:00", "latitude": -80.78363, "longitude": 21.482993, "tags": [ "nostrud", "aliqua", "anim", "veniam", "duis", "est", "officia" ], "friends": [ { "id": 0, "name": "Britney Johnston" }, { "id": 1, "name": "Santiago Valenzuela" }, { "id": 2, "name": "Frost Richards" } ], "greeting": "Hello, Walton Sargent! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27782c948e8c4639b0", "index": 3603, "guid": "dd3e294c-081a-4efd-876d-4a6fada777b5", "isActive": false, "balance": "$1,256.35", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Greene Duffy", "gender": "male", "company": "AVENETRO", "email": "greeneduffy@avenetro.com", "phone": "+1 (836) 548-2099", "address": "712 Schermerhorn Street, Orviston, Kentucky, 287", "about": "In cillum exercitation quis labore proident reprehenderit aliqua velit aliquip. Nisi dolor ullamco adipisicing magna velit reprehenderit eu pariatur incididunt et duis ex. Veniam proident non tempor voluptate proident irure ex nulla dolore occaecat voluptate. Enim nostrud nostrud minim magna nisi eu voluptate fugiat. Culpa aute ea ex irure sunt Lorem Lorem do duis anim. Magna consequat est est do ut eu nulla dolor irure aute.\r\n", "registered": "2014-07-08T08:22:20-12:00", "latitude": -15.296229, "longitude": 53.582167, "tags": [ "dolore", "ea", "aliquip", "laboris", "duis", "veniam", "elit" ], "friends": [ { "id": 0, "name": "Mona Blanchard" }, { "id": 1, "name": "Annette Craig" }, { "id": 2, "name": "Henson Byrd" } ], "greeting": "Hello, Greene Duffy! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea27b4163fbb8b86dd8d", "index": 3604, "guid": "2fdb319d-7e6a-450c-a4db-e64718300895", "isActive": false, "balance": "$3,248.60", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Rodgers White", "gender": "male", "company": "ZYTRAC", "email": "rodgerswhite@zytrac.com", "phone": "+1 (894) 590-2180", "address": "141 Woodpoint Road, Moraida, Connecticut, 7195", "about": "Adipisicing ea veniam laboris qui esse fugiat laboris ad amet veniam amet commodo sint commodo. Ut deserunt reprehenderit velit deserunt. Quis do consequat cupidatat et non laboris consectetur amet adipisicing amet laboris. Minim quis fugiat minim laborum occaecat est commodo id ullamco enim in eu commodo. Nostrud magna eiusmod fugiat consequat fugiat id tempor. Sunt cillum esse velit reprehenderit et. Ut adipisicing aliquip minim ad consectetur nisi duis ad eiusmod occaecat.\r\n", "registered": "2014-02-26T08:49:07-13:00", "latitude": 35.476772, "longitude": 125.290943, "tags": [ "aute", "veniam", "qui", "duis", "ad", "ex", "esse" ], "friends": [ { "id": 0, "name": "Kari Hensley" }, { "id": 1, "name": "Corina Martinez" }, { "id": 2, "name": "Marissa Richmond" } ], "greeting": "Hello, Rodgers White! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27bb558ca40302af31", "index": 3605, "guid": "e50187cf-af46-4a0b-8bed-3f742594b11b", "isActive": false, "balance": "$3,824.62", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Belinda Mcclure", "gender": "female", "company": "MULTRON", "email": "belindamcclure@multron.com", "phone": "+1 (826) 588-2524", "address": "743 Bevy Court, Berlin, Mississippi, 2941", "about": "Deserunt id quis eu officia cupidatat ad reprehenderit nisi dolor labore id laborum esse anim. Quis id qui voluptate laboris cupidatat exercitation velit id tempor pariatur. Reprehenderit ullamco qui eiusmod non exercitation. Dolor ea laboris dolor sunt.\r\n", "registered": "2014-08-04T21:25:51-12:00", "latitude": -46.092372, "longitude": 1.699957, "tags": [ "nostrud", "esse", "fugiat", "exercitation", "officia", "ex", "fugiat" ], "friends": [ { "id": 0, "name": "Kathie Peters" }, { "id": 1, "name": "Jordan Lara" }, { "id": 2, "name": "Herminia Cleveland" } ], "greeting": "Hello, Belinda Mcclure! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea277cdf4430ca638d94", "index": 3606, "guid": "e146d276-2041-4fb0-b69f-b3de1463f821", "isActive": false, "balance": "$2,381.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Marianne Howell", "gender": "female", "company": "DAISU", "email": "mariannehowell@daisu.com", "phone": "+1 (897) 579-2137", "address": "813 Division Avenue, Aurora, Washington, 4043", "about": "Voluptate esse deserunt duis mollit qui esse duis excepteur cillum adipisicing cupidatat voluptate. Commodo aliquip sint ullamco sunt ad ut in ad sint nostrud aliquip. Occaecat in exercitation ea aute. Eiusmod quis nulla aliquip esse adipisicing ad.\r\n", "registered": "2014-08-06T22:17:53-12:00", "latitude": 84.396912, "longitude": -126.268294, "tags": [ "excepteur", "dolor", "dolore", "cupidatat", "tempor", "tempor", "aute" ], "friends": [ { "id": 0, "name": "Richard Nielsen" }, { "id": 1, "name": "Doreen Rhodes" }, { "id": 2, "name": "Shawna Hartman" } ], "greeting": "Hello, Marianne Howell! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27708ac4b96496ee90", "index": 3607, "guid": "d50db876-a861-4fe2-9ca9-271e1109222f", "isActive": true, "balance": "$3,790.20", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Tina Travis", "gender": "female", "company": "MALATHION", "email": "tinatravis@malathion.com", "phone": "+1 (879) 474-2461", "address": "158 Livingston Street, Mansfield, Tennessee, 5315", "about": "Labore laborum velit quis consectetur est labore sint. Nisi velit commodo esse voluptate cupidatat culpa pariatur sit. Officia reprehenderit non occaecat deserunt esse eiusmod excepteur elit ipsum pariatur.\r\n", "registered": "2014-03-31T10:06:36-13:00", "latitude": 81.89563, "longitude": -77.525571, "tags": [ "excepteur", "enim", "in", "magna", "et", "irure", "Lorem" ], "friends": [ { "id": 0, "name": "Payne Wilson" }, { "id": 1, "name": "Reid Pace" }, { "id": 2, "name": "Whitley Sparks" } ], "greeting": "Hello, Tina Travis! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea27cf2c34cc8ad9a3e2", "index": 3608, "guid": "065c88a9-9939-40de-b133-027236b41796", "isActive": true, "balance": "$2,326.52", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Estrada Patterson", "gender": "male", "company": "CONJURICA", "email": "estradapatterson@conjurica.com", "phone": "+1 (946) 517-3607", "address": "271 Estate Road, Fairmount, Alabama, 3278", "about": "Amet deserunt exercitation aliqua irure veniam exercitation dolor eu sunt labore fugiat reprehenderit. Irure nulla exercitation aute excepteur sunt tempor occaecat ea culpa est ullamco ex ad. Ea qui fugiat ea dolor culpa consectetur ut dolor irure dolore non eu sunt. Ullamco proident sit ipsum reprehenderit enim tempor. Do cupidatat ullamco enim do ipsum proident. Consequat id aute ad magna ipsum est.\r\n", "registered": "2014-01-31T03:42:35-13:00", "latitude": 89.903169, "longitude": 177.834536, "tags": [ "commodo", "laboris", "laborum", "laborum", "mollit", "adipisicing", "reprehenderit" ], "friends": [ { "id": 0, "name": "Malone Wood" }, { "id": 1, "name": "Mooney Rodriguez" }, { "id": 2, "name": "Ruth Bates" } ], "greeting": "Hello, Estrada Patterson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2747925b10a5c8fc66", "index": 3609, "guid": "b06163fb-4ad5-4066-a496-6608a97053f4", "isActive": true, "balance": "$2,454.79", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Gallegos Shepard", "gender": "male", "company": "COMTRAIL", "email": "gallegosshepard@comtrail.com", "phone": "+1 (853) 496-3096", "address": "182 Delevan Street, Cannondale, Ohio, 8563", "about": "Do est adipisicing culpa fugiat mollit dolor reprehenderit commodo ex sit velit consectetur. Ea id mollit officia velit quis exercitation. Velit incididunt ea Lorem non incididunt. Ad deserunt consequat reprehenderit dolore irure irure et aliquip aliqua eu eiusmod. Aute exercitation aliquip enim sint. Amet id non culpa dolor adipisicing fugiat tempor elit excepteur esse et id ullamco adipisicing. Eu sint dolore mollit fugiat dolor non consectetur fugiat cillum.\r\n", "registered": "2014-07-01T15:33:00-12:00", "latitude": 54.453473, "longitude": -45.523279, "tags": [ "quis", "cillum", "adipisicing", "ex", "magna", "aliqua", "deserunt" ], "friends": [ { "id": 0, "name": "Cain Mercado" }, { "id": 1, "name": "Alvarez Fitzpatrick" }, { "id": 2, "name": "Martina Hart" } ], "greeting": "Hello, Gallegos Shepard! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28389aa1b46870e4a6", "index": 3610, "guid": "e8763592-6709-4efd-9b87-4379617b565d", "isActive": true, "balance": "$1,777.20", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Stella Poole", "gender": "female", "company": "VIAGREAT", "email": "stellapoole@viagreat.com", "phone": "+1 (966) 564-2460", "address": "504 Eagle Street, Gerber, Hawaii, 4137", "about": "Sint magna tempor sit eu reprehenderit ipsum aliqua. Anim ad est ad dolor incididunt consectetur adipisicing magna in incididunt eu ea. Eiusmod laboris reprehenderit occaecat dolore. Cupidatat labore enim cupidatat est incididunt sunt eu quis. Pariatur et reprehenderit officia amet adipisicing commodo sint qui in do dolor et est incididunt. Non aliquip minim qui nisi culpa excepteur proident aliquip incididunt.\r\n", "registered": "2014-03-18T10:15:51-13:00", "latitude": -43.802979, "longitude": 42.691293, "tags": [ "eiusmod", "voluptate", "magna", "deserunt", "labore", "quis", "ullamco" ], "friends": [ { "id": 0, "name": "Floyd Franks" }, { "id": 1, "name": "Barbara Watson" }, { "id": 2, "name": "Brennan Shaw" } ], "greeting": "Hello, Stella Poole! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2897b2837b1a338d74", "index": 3611, "guid": "c2594a54-97e9-48af-a4b0-4a33600db043", "isActive": true, "balance": "$2,902.36", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Mcpherson Smith", "gender": "male", "company": "DANJA", "email": "mcphersonsmith@danja.com", "phone": "+1 (944) 589-3707", "address": "434 Lincoln Terrace, Mooresburg, New Mexico, 2603", "about": "Sunt elit voluptate excepteur laboris Lorem do ex amet tempor in ullamco esse. Id commodo consectetur est dolore eiusmod nostrud esse. Ea exercitation qui elit voluptate duis sit. Adipisicing esse ut commodo velit sint magna commodo dolore sunt.\r\n", "registered": "2014-08-04T11:05:51-12:00", "latitude": -16.081107, "longitude": -103.497128, "tags": [ "ad", "pariatur", "deserunt", "esse", "id", "ea", "enim" ], "friends": [ { "id": 0, "name": "Kramer Bell" }, { "id": 1, "name": "Kerri Simon" }, { "id": 2, "name": "Katina Orr" } ], "greeting": "Hello, Mcpherson Smith! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2853f78c02d98e98a0", "index": 3612, "guid": "82b565f2-5463-4dc9-9e33-995a63c53184", "isActive": false, "balance": "$1,301.41", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Carter Page", "gender": "male", "company": "ISIS", "email": "carterpage@isis.com", "phone": "+1 (987) 476-3591", "address": "966 Randolph Street, Rew, Maryland, 6935", "about": "Enim ut excepteur non magna duis labore elit ex labore pariatur quis ipsum. Sit proident Lorem incididunt commodo dolore. Quis nulla consectetur sint consectetur fugiat in ex.\r\n", "registered": "2014-04-25T05:10:20-12:00", "latitude": -51.558346, "longitude": 13.875959, "tags": [ "sint", "tempor", "fugiat", "non", "non", "pariatur", "esse" ], "friends": [ { "id": 0, "name": "Addie Greene" }, { "id": 1, "name": "Kendra Flowers" }, { "id": 2, "name": "Keisha Spencer" } ], "greeting": "Hello, Carter Page! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28c10a13330b32b8b6", "index": 3613, "guid": "f924f634-bdd3-4a86-8a20-8c0a56e9b769", "isActive": false, "balance": "$2,592.12", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Mitchell Booker", "gender": "male", "company": "ANOCHA", "email": "mitchellbooker@anocha.com", "phone": "+1 (858) 551-3214", "address": "883 Carlton Avenue, Blanco, Alaska, 4881", "about": "Excepteur voluptate irure ullamco qui nulla tempor excepteur velit. Minim proident incididunt laborum tempor reprehenderit ipsum. Commodo in nisi eiusmod Lorem sint amet proident.\r\n", "registered": "2014-09-13T16:36:38-12:00", "latitude": -12.146373, "longitude": 10.97246, "tags": [ "ex", "sint", "excepteur", "velit", "consequat", "irure", "ut" ], "friends": [ { "id": 0, "name": "Isabel Vinson" }, { "id": 1, "name": "Mccarty Craft" }, { "id": 2, "name": "Hayes Frazier" } ], "greeting": "Hello, Mitchell Booker! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea287ab8ad4353441021", "index": 3614, "guid": "3265c697-26a6-4241-8486-bf85955c35f7", "isActive": true, "balance": "$3,041.91", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Sharron Guerrero", "gender": "female", "company": "ZYPLE", "email": "sharronguerrero@zyple.com", "phone": "+1 (884) 477-2203", "address": "461 Furman Avenue, Oneida, Arizona, 9515", "about": "Incididunt incididunt irure ex labore ipsum eu ad ut consequat dolore reprehenderit. Consequat labore culpa sint minim Lorem do labore ullamco sit. Ea est quis nulla anim aute laborum. Proident ut non nisi reprehenderit cupidatat pariatur eiusmod esse cillum exercitation excepteur officia proident do. Proident in commodo exercitation amet elit nulla consequat excepteur est commodo.\r\n", "registered": "2014-03-09T16:21:22-13:00", "latitude": 40.435472, "longitude": -30.319785, "tags": [ "laboris", "commodo", "sint", "nisi", "quis", "consequat", "Lorem" ], "friends": [ { "id": 0, "name": "Cecile Francis" }, { "id": 1, "name": "Wilma Wiley" }, { "id": 2, "name": "Cherry Kelly" } ], "greeting": "Hello, Sharron Guerrero! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28e2eee83232368f8b", "index": 3615, "guid": "539ce901-f9bb-4e20-bde5-e6ece843c441", "isActive": true, "balance": "$3,147.45", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Whitfield Klein", "gender": "male", "company": "ZYTREK", "email": "whitfieldklein@zytrek.com", "phone": "+1 (967) 475-3422", "address": "159 Dahill Road, Brambleton, Federated States Of Micronesia, 6246", "about": "Ea occaecat commodo elit amet sint labore excepteur mollit in enim dolor sit excepteur. Ea enim aliqua veniam labore dolor. Laboris deserunt ipsum esse est cupidatat nostrud anim sit nulla. Laborum mollit laboris pariatur excepteur dolor ullamco est reprehenderit cillum cupidatat sunt labore irure deserunt. Aute tempor et dolore occaecat enim non amet amet magna Lorem duis ex. Cillum exercitation non excepteur elit irure voluptate aliquip irure enim est irure pariatur et. Ad sunt amet sunt ullamco ea eiusmod nostrud elit reprehenderit sint do non eu.\r\n", "registered": "2014-04-07T15:05:04-12:00", "latitude": -20.073828, "longitude": 64.047206, "tags": [ "eu", "in", "laboris", "laborum", "Lorem", "laboris", "sit" ], "friends": [ { "id": 0, "name": "Stokes Mcbride" }, { "id": 1, "name": "Christian Carey" }, { "id": 2, "name": "Whitaker Fry" } ], "greeting": "Hello, Whitfield Klein! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea282857f50bb31ceceb", "index": 3616, "guid": "be572b5a-76d7-46f8-8464-cee2fcfd7bed", "isActive": true, "balance": "$2,486.72", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Wallace Beasley", "gender": "male", "company": "HONOTRON", "email": "wallacebeasley@honotron.com", "phone": "+1 (927) 492-2012", "address": "752 Ferris Street, Lemoyne, Oklahoma, 4672", "about": "Esse eu anim commodo ex dolor minim consectetur aliqua. Anim ad qui minim laboris duis id commodo voluptate esse non ea amet nostrud. Nulla reprehenderit irure sunt mollit culpa. Ut labore deserunt ipsum aliquip occaecat. Elit nostrud ad occaecat esse est culpa.\r\n", "registered": "2014-07-03T08:46:04-12:00", "latitude": 47.256066, "longitude": 128.463418, "tags": [ "duis", "ipsum", "mollit", "eiusmod", "minim", "fugiat", "laboris" ], "friends": [ { "id": 0, "name": "Simone Gaines" }, { "id": 1, "name": "Tricia Warner" }, { "id": 2, "name": "Terrie Henry" } ], "greeting": "Hello, Wallace Beasley! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28777ef6f7c6bd7ccd", "index": 3617, "guid": "fbc9f178-6d9d-43bb-b401-903a9687dbff", "isActive": false, "balance": "$3,173.18", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Hull Clark", "gender": "male", "company": "ZENTILITY", "email": "hullclark@zentility.com", "phone": "+1 (866) 470-2832", "address": "263 Poplar Avenue, Woodlands, Michigan, 9755", "about": "In duis id cupidatat in nostrud est enim cillum et nostrud enim et cupidatat quis. Cillum nostrud magna proident deserunt aliqua pariatur anim amet aute nulla ex culpa anim labore. Aliqua ad sint sit duis cillum. Lorem magna fugiat reprehenderit incididunt id culpa esse ex minim amet mollit et. Dolore in aute culpa sit excepteur voluptate est elit dolore amet labore fugiat.\r\n", "registered": "2014-06-25T20:36:08-12:00", "latitude": 43.309563, "longitude": -115.523633, "tags": [ "officia", "amet", "et", "minim", "nisi", "incididunt", "anim" ], "friends": [ { "id": 0, "name": "Martinez Baird" }, { "id": 1, "name": "Madeline Noel" }, { "id": 2, "name": "Woodard Dunlap" } ], "greeting": "Hello, Hull Clark! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28d31a9769bad626a9", "index": 3618, "guid": "5609780e-26d1-4972-80a5-af5d7411404a", "isActive": false, "balance": "$3,791.76", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Rogers Kramer", "gender": "male", "company": "CYTRAK", "email": "rogerskramer@cytrak.com", "phone": "+1 (957) 593-3472", "address": "299 Grove Street, Manchester, Kansas, 6161", "about": "Magna elit sit officia tempor aliquip in duis minim. Eiusmod adipisicing nostrud deserunt ea nulla dolor ea anim proident consequat magna. Lorem anim nisi consectetur consequat dolor nostrud commodo ullamco cillum ad cillum officia ullamco. Proident ea ex aute sunt amet minim deserunt reprehenderit. Aute eiusmod aute aliqua amet.\r\n", "registered": "2014-08-22T05:13:18-12:00", "latitude": -12.745145, "longitude": 80.385334, "tags": [ "minim", "anim", "aliqua", "laboris", "nulla", "ullamco", "consequat" ], "friends": [ { "id": 0, "name": "Barron Hubbard" }, { "id": 1, "name": "Noble Petersen" }, { "id": 2, "name": "Mathews Ford" } ], "greeting": "Hello, Rogers Kramer! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28d42a4be1aa28d221", "index": 3619, "guid": "72884320-1dc7-42f6-b228-de31fbfe5cb9", "isActive": false, "balance": "$3,091.35", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Roberta Buck", "gender": "female", "company": "SPLINX", "email": "robertabuck@splinx.com", "phone": "+1 (966) 418-2682", "address": "453 Charles Place, Wauhillau, South Dakota, 3837", "about": "Fugiat nulla labore irure nostrud qui id cillum aute ut ea deserunt cillum. Fugiat velit qui est do esse nulla sint duis dolor sint. Cillum commodo dolor magna mollit adipisicing et. Eiusmod proident laboris magna commodo nostrud culpa amet eiusmod ipsum.\r\n", "registered": "2014-03-03T00:04:16-13:00", "latitude": 20.118444, "longitude": 61.171618, "tags": [ "est", "do", "eu", "eu", "irure", "culpa", "amet" ], "friends": [ { "id": 0, "name": "Raymond Harrington" }, { "id": 1, "name": "Lawson Johns" }, { "id": 2, "name": "Klein Montoya" } ], "greeting": "Hello, Roberta Buck! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28a3e39100b4943d4a", "index": 3620, "guid": "fabc90bf-fc92-4cc4-8b4d-280d84aa54a7", "isActive": false, "balance": "$2,126.03", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Gladys Berger", "gender": "female", "company": "VIRXO", "email": "gladysberger@virxo.com", "phone": "+1 (852) 410-2026", "address": "528 Whitwell Place, Saranap, West Virginia, 5140", "about": "Irure magna minim elit eiusmod exercitation proident duis irure dolor in aliquip incididunt dolore. Consectetur tempor magna adipisicing ex eiusmod et proident proident deserunt eu ullamco cupidatat ipsum. Anim sit incididunt reprehenderit cillum ullamco labore aute ex deserunt velit consequat fugiat. Commodo exercitation irure ullamco pariatur occaecat id cillum occaecat et ea duis labore.\r\n", "registered": "2014-05-05T08:40:39-12:00", "latitude": 66.622966, "longitude": 101.489101, "tags": [ "ad", "proident", "quis", "magna", "ut", "magna", "incididunt" ], "friends": [ { "id": 0, "name": "Pope Osborne" }, { "id": 1, "name": "Rose Mathis" }, { "id": 2, "name": "Cohen Melton" } ], "greeting": "Hello, Gladys Berger! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28e94a79596f7a636f", "index": 3621, "guid": "76b3c0a1-efe9-4f45-88db-66e5ddbd376f", "isActive": false, "balance": "$3,882.95", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Slater Eaton", "gender": "male", "company": "ZIZZLE", "email": "slatereaton@zizzle.com", "phone": "+1 (810) 550-3084", "address": "319 Gunther Place, Nadine, Texas, 9579", "about": "Sit est qui exercitation pariatur ad ad irure. Deserunt exercitation adipisicing Lorem nulla incididunt Lorem ipsum. Mollit cupidatat id est laborum velit sunt.\r\n", "registered": "2014-01-20T02:35:56-13:00", "latitude": -27.2818, "longitude": 66.207257, "tags": [ "veniam", "anim", "pariatur", "anim", "deserunt", "pariatur", "aliquip" ], "friends": [ { "id": 0, "name": "Anna Mays" }, { "id": 1, "name": "Beatriz Gill" }, { "id": 2, "name": "Holcomb Wheeler" } ], "greeting": "Hello, Slater Eaton! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28e65ce74a9714e2ed", "index": 3622, "guid": "b25bb320-6bf5-46d9-aab8-167f735ebdcd", "isActive": false, "balance": "$3,014.36", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Shields Carr", "gender": "male", "company": "ACIUM", "email": "shieldscarr@acium.com", "phone": "+1 (951) 427-2983", "address": "855 Anna Court, Chase, Oregon, 6163", "about": "Non qui pariatur cupidatat veniam ipsum quis dolore ad dolore ea consequat mollit dolore in. Elit reprehenderit amet pariatur veniam. Laboris nulla laboris laborum tempor cupidatat commodo.\r\n", "registered": "2014-02-25T03:01:50-13:00", "latitude": -52.786593, "longitude": 22.82926, "tags": [ "amet", "pariatur", "magna", "elit", "adipisicing", "quis", "eiusmod" ], "friends": [ { "id": 0, "name": "Hardy Wolfe" }, { "id": 1, "name": "Berta Huber" }, { "id": 2, "name": "Wooten Pierce" } ], "greeting": "Hello, Shields Carr! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2816277fe2dea537d7", "index": 3623, "guid": "b4ad6fab-9055-4c5a-8d0c-c4e247a74c68", "isActive": true, "balance": "$2,702.60", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Adele Merritt", "gender": "female", "company": "MAXEMIA", "email": "adelemerritt@maxemia.com", "phone": "+1 (944) 455-2421", "address": "610 Evans Street, Ivanhoe, Nevada, 6845", "about": "Aute magna consequat officia eiusmod reprehenderit ad aliqua dolore aute qui quis commodo. Lorem dolore anim mollit mollit. Culpa nisi aute do irure tempor eiusmod consectetur proident labore cupidatat esse culpa. Proident nisi Lorem aute commodo ea occaecat mollit mollit occaecat est. Et nostrud anim Lorem irure incididunt ipsum consectetur. Consequat ea non enim non eiusmod.\r\n", "registered": "2014-02-11T02:01:40-13:00", "latitude": 34.08176, "longitude": -111.786046, "tags": [ "enim", "magna", "et", "velit", "commodo", "adipisicing", "velit" ], "friends": [ { "id": 0, "name": "Robin Aguirre" }, { "id": 1, "name": "Lorraine Luna" }, { "id": 2, "name": "Heath Bowen" } ], "greeting": "Hello, Adele Merritt! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28445de4a41697e774", "index": 3624, "guid": "99423fe3-2910-4df1-85bc-f79fa07ab10b", "isActive": false, "balance": "$1,364.04", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Mai Mueller", "gender": "female", "company": "GENMY", "email": "maimueller@genmy.com", "phone": "+1 (816) 465-2360", "address": "161 Croton Loop, Teasdale, Minnesota, 5900", "about": "Anim velit qui proident culpa ad sunt ea dolor dolore ullamco duis magna. Ipsum commodo nostrud veniam ullamco exercitation pariatur. Elit sit veniam quis incididunt eiusmod amet id irure id.\r\n", "registered": "2014-05-05T17:16:30-12:00", "latitude": 29.420373, "longitude": -139.243037, "tags": [ "pariatur", "elit", "occaecat", "elit", "ex", "voluptate", "amet" ], "friends": [ { "id": 0, "name": "Davidson Duncan" }, { "id": 1, "name": "Mercer Burt" }, { "id": 2, "name": "Burris Saunders" } ], "greeting": "Hello, Mai Mueller! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea283b968694b412f15c", "index": 3625, "guid": "42ee5a41-47c2-4950-8c37-0f482a402c30", "isActive": true, "balance": "$3,984.97", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Jolene Caldwell", "gender": "female", "company": "SCENTRIC", "email": "jolenecaldwell@scentric.com", "phone": "+1 (978) 528-3240", "address": "120 Cortelyou Road, Blandburg, Missouri, 9294", "about": "Ad cillum deserunt mollit nulla aliqua laboris qui cillum proident aliqua deserunt laborum commodo ea. Nulla quis id et irure et. Laborum nisi adipisicing deserunt minim veniam. Consectetur quis magna sunt voluptate ea voluptate laboris. Sint consectetur ad do velit veniam ea nostrud commodo reprehenderit qui.\r\n", "registered": "2014-01-25T06:00:03-13:00", "latitude": 67.403338, "longitude": 130.603663, "tags": [ "pariatur", "laborum", "reprehenderit", "amet", "mollit", "exercitation", "est" ], "friends": [ { "id": 0, "name": "Preston House" }, { "id": 1, "name": "Sonia Dudley" }, { "id": 2, "name": "Patel Wynn" } ], "greeting": "Hello, Jolene Caldwell! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2878990236edb5dfb5", "index": 3626, "guid": "2e0bc961-a73e-469a-97a7-590f99f34441", "isActive": true, "balance": "$1,335.13", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Bette Wilkinson", "gender": "female", "company": "BULLJUICE", "email": "bettewilkinson@bulljuice.com", "phone": "+1 (824) 558-2405", "address": "541 Tompkins Avenue, Loretto, Rhode Island, 4128", "about": "Esse aliquip commodo et consequat Lorem mollit veniam cupidatat fugiat sunt. Elit irure exercitation commodo dolore duis aliqua duis. Est sunt aliquip excepteur consequat. Ad ipsum cillum do elit irure. Reprehenderit ea incididunt esse aute anim reprehenderit ad minim est consectetur incididunt.\r\n", "registered": "2014-04-18T16:58:41-12:00", "latitude": -9.186773, "longitude": 161.02349, "tags": [ "pariatur", "do", "non", "ad", "est", "ut", "qui" ], "friends": [ { "id": 0, "name": "Kristi Bailey" }, { "id": 1, "name": "Landry Barry" }, { "id": 2, "name": "Fry Atkins" } ], "greeting": "Hello, Bette Wilkinson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2841a33fa7a20606e9", "index": 3627, "guid": "ea721010-a2ee-411c-a6f7-14fd37c0293f", "isActive": false, "balance": "$1,601.77", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Paige Donaldson", "gender": "female", "company": "ELEMANTRA", "email": "paigedonaldson@elemantra.com", "phone": "+1 (915) 520-2316", "address": "172 Stone Avenue, Thatcher, Florida, 2709", "about": "Reprehenderit elit eiusmod consequat officia. Nostrud tempor velit eiusmod veniam. Occaecat mollit ullamco commodo culpa enim labore magna eiusmod eu deserunt.\r\n", "registered": "2014-08-17T15:09:47-12:00", "latitude": -68.230543, "longitude": -108.779866, "tags": [ "voluptate", "eu", "tempor", "non", "duis", "elit", "do" ], "friends": [ { "id": 0, "name": "Mueller Hutchinson" }, { "id": 1, "name": "Griffith Decker" }, { "id": 2, "name": "Aimee Cochran" } ], "greeting": "Hello, Paige Donaldson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28434e50cc8a1604c4", "index": 3628, "guid": "aaaf5d59-858d-4dc2-b22d-fcb35fc0de7e", "isActive": false, "balance": "$1,749.38", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Chase Mckay", "gender": "male", "company": "ASSISTIX", "email": "chasemckay@assistix.com", "phone": "+1 (879) 562-3412", "address": "508 Powell Street, Naomi, North Carolina, 8620", "about": "Voluptate ex deserunt anim irure commodo enim tempor aute sit deserunt aute tempor et. Voluptate fugiat esse in aliqua velit aliqua excepteur incididunt commodo irure voluptate. Enim deserunt Lorem deserunt aliquip sit. Voluptate minim incididunt nostrud qui fugiat cillum tempor nostrud occaecat et sit. In enim ad est esse pariatur et aute. Velit deserunt do ipsum fugiat duis aute duis reprehenderit aute eu culpa cupidatat in. Tempor eu non eu dolor do.\r\n", "registered": "2014-09-15T04:54:44-12:00", "latitude": -40.455826, "longitude": 70.061613, "tags": [ "non", "veniam", "est", "aute", "elit", "exercitation", "consectetur" ], "friends": [ { "id": 0, "name": "Kinney Simpson" }, { "id": 1, "name": "Nicholson Everett" }, { "id": 2, "name": "Ophelia Delgado" } ], "greeting": "Hello, Chase Mckay! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea285177a0f6dc62d55a", "index": 3629, "guid": "a00af1f7-fb0e-4ec2-8810-55272adc90dc", "isActive": true, "balance": "$2,520.75", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Zamora Mcgowan", "gender": "male", "company": "ARTIQ", "email": "zamoramcgowan@artiq.com", "phone": "+1 (926) 440-2472", "address": "575 Bradford Street, Virgie, New Hampshire, 5289", "about": "Dolore officia do voluptate pariatur do deserunt dolore occaecat cillum consectetur officia nulla. Velit do reprehenderit in ex fugiat minim sit deserunt culpa minim enim. Veniam excepteur culpa consectetur aliqua ad aliqua est consectetur consequat minim.\r\n", "registered": "2014-02-17T07:17:11-13:00", "latitude": -0.235759, "longitude": 25.48632, "tags": [ "aute", "dolore", "dolore", "consequat", "ullamco", "deserunt", "non" ], "friends": [ { "id": 0, "name": "Juana Fleming" }, { "id": 1, "name": "Henry Burton" }, { "id": 2, "name": "Blackburn Graves" } ], "greeting": "Hello, Zamora Mcgowan! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea287bdbe41a64b58a90", "index": 3630, "guid": "1c72c329-8250-4584-9e49-426ff5110ff0", "isActive": true, "balance": "$1,746.86", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Jane Potts", "gender": "female", "company": "RENOVIZE", "email": "janepotts@renovize.com", "phone": "+1 (939) 433-2907", "address": "236 Montague Street, Weogufka, Arkansas, 2677", "about": "Laboris culpa enim mollit duis. Eiusmod voluptate aliqua ad ipsum incididunt cillum dolore ullamco. Esse cillum ipsum id ex tempor laboris quis consectetur Lorem do veniam ullamco occaecat do. Ad cillum Lorem ea adipisicing veniam incididunt aliquip aute dolore ullamco. Voluptate quis minim sit eiusmod ex aliqua quis. Esse enim ullamco sunt cupidatat anim voluptate nisi ut ad ad non voluptate anim.\r\n", "registered": "2014-03-21T10:12:52-13:00", "latitude": -6.365467, "longitude": -82.922162, "tags": [ "in", "sunt", "labore", "et", "occaecat", "aliquip", "incididunt" ], "friends": [ { "id": 0, "name": "Holder Holland" }, { "id": 1, "name": "Leonard Hewitt" }, { "id": 2, "name": "Jones Porter" } ], "greeting": "Hello, Jane Potts! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea289427e651c58f44ba", "index": 3631, "guid": "82f167dd-e018-4075-8433-9b88769b8268", "isActive": true, "balance": "$3,355.24", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Jackson Callahan", "gender": "male", "company": "UNCORP", "email": "jacksoncallahan@uncorp.com", "phone": "+1 (865) 556-2287", "address": "955 Louise Terrace, Fivepointville, Iowa, 8930", "about": "Culpa sit in cupidatat consequat ut non ad aliquip laboris dolor ad amet voluptate. Laborum nisi et est est ex consequat Lorem ullamco irure est anim id laboris officia. Ullamco non do ea occaecat exercitation aute nostrud ullamco voluptate.\r\n", "registered": "2014-07-29T19:49:34-12:00", "latitude": 66.964185, "longitude": -19.526898, "tags": [ "incididunt", "enim", "commodo", "elit", "reprehenderit", "ex", "eu" ], "friends": [ { "id": 0, "name": "Mayer Christensen" }, { "id": 1, "name": "Claudine Salazar" }, { "id": 2, "name": "Milagros Emerson" } ], "greeting": "Hello, Jackson Callahan! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea287afd6d27499e54b3", "index": 3632, "guid": "2f5d6212-6bde-43ce-9e33-849ec8400f66", "isActive": true, "balance": "$2,443.93", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Sims Velasquez", "gender": "male", "company": "ZOUNDS", "email": "simsvelasquez@zounds.com", "phone": "+1 (889) 484-2660", "address": "376 Butler Place, Boyd, Nebraska, 7703", "about": "Sit excepteur ut voluptate amet ad velit laboris. Dolor non qui duis incididunt ullamco ex sunt cupidatat elit voluptate. Tempor cillum sit labore fugiat culpa ullamco est Lorem nisi sunt magna. Deserunt dolore consectetur tempor aliquip nostrud cillum ut nulla eu.\r\n", "registered": "2014-07-26T20:53:20-12:00", "latitude": -9.553512, "longitude": 68.025085, "tags": [ "ea", "reprehenderit", "magna", "do", "incididunt", "duis", "sunt" ], "friends": [ { "id": 0, "name": "Santos Chapman" }, { "id": 1, "name": "Velez Jennings" }, { "id": 2, "name": "Haley Logan" } ], "greeting": "Hello, Sims Velasquez! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28640c4f21623b7d7f", "index": 3633, "guid": "7011770d-0b41-48ca-b0c4-9ad173eda849", "isActive": true, "balance": "$1,947.40", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Mayo Sloan", "gender": "male", "company": "TETAK", "email": "mayosloan@tetak.com", "phone": "+1 (883) 532-3343", "address": "152 Willoughby Avenue, Wilmington, District Of Columbia, 5111", "about": "Lorem magna deserunt eu et sunt nisi enim esse Lorem est ipsum officia anim qui. Consequat aute Lorem do culpa ipsum sint adipisicing. Nulla anim et ad cupidatat pariatur enim in amet ullamco aliquip irure aliquip deserunt ad. Est magna qui esse ex veniam sint do. Deserunt aute ut nisi reprehenderit minim voluptate do magna tempor deserunt nostrud reprehenderit consectetur. Ad incididunt laborum nisi pariatur deserunt labore cupidatat est consectetur est consequat mollit labore enim.\r\n", "registered": "2014-05-23T15:07:19-12:00", "latitude": -56.611371, "longitude": 11.693616, "tags": [ "sunt", "fugiat", "officia", "eiusmod", "sunt", "ex", "elit" ], "friends": [ { "id": 0, "name": "Burke Lamb" }, { "id": 1, "name": "Rachel Jensen" }, { "id": 2, "name": "Huber Carrillo" } ], "greeting": "Hello, Mayo Sloan! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea287a522caff3a2a0e4", "index": 3634, "guid": "9b8b1ee3-e4dc-4a0f-8e6b-cccb1d4915a8", "isActive": true, "balance": "$1,509.70", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Yolanda Mccarthy", "gender": "female", "company": "QUILITY", "email": "yolandamccarthy@quility.com", "phone": "+1 (943) 404-2695", "address": "462 Buffalo Avenue, Cochranville, New Jersey, 2949", "about": "Id ullamco excepteur aliquip irure duis dolor ut id minim officia id. Labore excepteur elit labore ut cupidatat ex veniam aliqua et ad labore quis. Consectetur officia eiusmod ut sint cillum consectetur aliqua. Anim cupidatat elit nisi laboris ea consequat commodo esse labore consectetur. Voluptate nisi dolore laboris occaecat eu dolore cillum velit culpa.\r\n", "registered": "2014-09-06T15:22:35-12:00", "latitude": -71.008808, "longitude": -162.326167, "tags": [ "ad", "commodo", "laborum", "ipsum", "elit", "est", "et" ], "friends": [ { "id": 0, "name": "Rowe Salas" }, { "id": 1, "name": "Dona Castillo" }, { "id": 2, "name": "Bertie Tanner" } ], "greeting": "Hello, Yolanda Mccarthy! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2890490738b0a0f38d", "index": 3635, "guid": "2e3c7b5a-8b0d-4aa7-ae04-080a873abb63", "isActive": true, "balance": "$1,048.76", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Dora Chase", "gender": "female", "company": "TEMORAK", "email": "dorachase@temorak.com", "phone": "+1 (913) 458-2997", "address": "582 Boynton Place, Bend, Palau, 7144", "about": "Ea deserunt sit ut sunt tempor eiusmod aliquip pariatur ipsum id magna. Magna cupidatat non sunt sit quis proident. Qui eiusmod labore veniam ullamco consequat ullamco mollit occaecat do cillum eu Lorem. Cupidatat minim aliqua esse amet sunt officia do id in amet. Labore magna voluptate proident nulla laborum ipsum enim nulla incididunt excepteur proident reprehenderit laborum nostrud. Nulla consectetur exercitation et do elit et veniam ut quis fugiat elit cillum.\r\n", "registered": "2014-04-25T11:22:30-12:00", "latitude": 34.723822, "longitude": 4.07575, "tags": [ "ea", "id", "culpa", "voluptate", "laborum", "ut", "nisi" ], "friends": [ { "id": 0, "name": "Tyson Suarez" }, { "id": 1, "name": "Ferrell Leonard" }, { "id": 2, "name": "Clarice Castro" } ], "greeting": "Hello, Dora Chase! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28342e012e49a30695", "index": 3636, "guid": "538fa67a-c623-4a35-b138-c1aebf1c3d85", "isActive": false, "balance": "$1,831.50", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Gilliam Burks", "gender": "male", "company": "CEMENTION", "email": "gilliamburks@cemention.com", "phone": "+1 (981) 587-3147", "address": "912 Dekoven Court, Welch, Puerto Rico, 9373", "about": "Lorem dolor tempor minim do dolore proident est. Pariatur excepteur exercitation sit voluptate fugiat qui ad cillum anim id officia duis culpa tempor. Qui dolore ut excepteur fugiat sunt aliquip id ea proident officia culpa nisi non duis. Adipisicing fugiat non ullamco irure aliquip officia ad.\r\n", "registered": "2014-06-22T10:25:20-12:00", "latitude": -89.272794, "longitude": 104.580442, "tags": [ "occaecat", "voluptate", "laboris", "ad", "mollit", "consectetur", "qui" ], "friends": [ { "id": 0, "name": "Dianne Perry" }, { "id": 1, "name": "Clay Hansen" }, { "id": 2, "name": "Bernadette Avery" } ], "greeting": "Hello, Gilliam Burks! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea284dfea3db4c8cb8af", "index": 3637, "guid": "64598867-0ff8-413b-9934-55302352a193", "isActive": true, "balance": "$2,429.75", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Jeanne Holman", "gender": "female", "company": "PROXSOFT", "email": "jeanneholman@proxsoft.com", "phone": "+1 (932) 487-3496", "address": "247 Evergreen Avenue, Norvelt, California, 3701", "about": "Duis aute ipsum amet reprehenderit nostrud et sit sint incididunt cillum magna Lorem aute. Do aliqua ea Lorem ad. Irure mollit mollit ut tempor consequat proident exercitation ad commodo esse cupidatat consectetur qui esse. Duis id amet officia exercitation amet aliquip nisi est labore et pariatur.\r\n", "registered": "2014-01-12T20:40:37-13:00", "latitude": 50.365204, "longitude": -70.046667, "tags": [ "consectetur", "esse", "elit", "magna", "ea", "sint", "sunt" ], "friends": [ { "id": 0, "name": "Wall Boyle" }, { "id": 1, "name": "Kelly Bauer" }, { "id": 2, "name": "Morrison Avila" } ], "greeting": "Hello, Jeanne Holman! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2855fc693061b29e1e", "index": 3638, "guid": "2942a6b5-8169-477b-b2f4-72a09a065b53", "isActive": false, "balance": "$1,900.93", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Bowman Vazquez", "gender": "male", "company": "GEEKY", "email": "bowmanvazquez@geeky.com", "phone": "+1 (970) 547-3663", "address": "471 Hart Street, Springhill, Vermont, 4519", "about": "Nostrud consectetur adipisicing reprehenderit duis et et ut magna. Ad mollit exercitation commodo commodo mollit occaecat qui aliquip ipsum occaecat. Deserunt quis reprehenderit do est amet proident irure voluptate irure consectetur non. Do ex occaecat excepteur dolore in magna. Consectetur et dolore aliqua irure excepteur excepteur proident exercitation quis et ipsum nisi. Do laborum veniam esse cillum adipisicing sint nisi commodo Lorem magna fugiat pariatur proident. Anim amet duis eiusmod eiusmod in consectetur dolore eu.\r\n", "registered": "2014-05-22T03:34:38-12:00", "latitude": -11.615796, "longitude": -99.620467, "tags": [ "sit", "labore", "incididunt", "magna", "commodo", "ullamco", "minim" ], "friends": [ { "id": 0, "name": "Wright Tucker" }, { "id": 1, "name": "Beth Swanson" }, { "id": 2, "name": "Leanne Miles" } ], "greeting": "Hello, Bowman Vazquez! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea281b75c1ffa2f26b35", "index": 3639, "guid": "932949c8-211d-4ce8-8b52-64f773d7a050", "isActive": false, "balance": "$1,342.54", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Jeanette Hays", "gender": "female", "company": "FUELWORKS", "email": "jeanettehays@fuelworks.com", "phone": "+1 (911) 412-3593", "address": "261 Kiely Place, Lorraine, Indiana, 8836", "about": "Aliquip commodo nisi eiusmod id. Non do amet pariatur labore sint ex ullamco minim anim voluptate veniam. Magna ut in do adipisicing eu dolor quis et incididunt enim. Non cupidatat et ex eu commodo labore enim. Quis tempor non et reprehenderit sint.\r\n", "registered": "2014-02-15T01:18:15-13:00", "latitude": 55.446163, "longitude": -120.817484, "tags": [ "voluptate", "exercitation", "non", "exercitation", "duis", "non", "sint" ], "friends": [ { "id": 0, "name": "Oneil Whitley" }, { "id": 1, "name": "Alexis Stone" }, { "id": 2, "name": "Jenna Villarreal" } ], "greeting": "Hello, Jeanette Hays! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28bb2b417bb068d78e", "index": 3640, "guid": "5d186170-617f-4342-b0f6-3ece0fc9ef86", "isActive": false, "balance": "$3,942.48", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Beatrice Howe", "gender": "female", "company": "MAROPTIC", "email": "beatricehowe@maroptic.com", "phone": "+1 (977) 502-2158", "address": "816 Lott Avenue, Soudan, Illinois, 3467", "about": "Ipsum reprehenderit ut qui nostrud. Fugiat labore minim dolor non nisi. Exercitation deserunt consequat eu ipsum veniam sint veniam sint ad culpa cillum. Nulla deserunt nulla labore et laborum. Voluptate aute anim minim aute qui labore culpa fugiat labore reprehenderit officia amet proident quis. Voluptate consequat adipisicing ipsum id duis aliqua aliqua nostrud excepteur incididunt sunt culpa. Do Lorem tempor voluptate laboris magna do proident sunt.\r\n", "registered": "2014-09-06T13:43:48-12:00", "latitude": 11.937022, "longitude": 10.570342, "tags": [ "cillum", "esse", "consequat", "amet", "laboris", "nulla", "do" ], "friends": [ { "id": 0, "name": "Pierce Keith" }, { "id": 1, "name": "Cathy Mayo" }, { "id": 2, "name": "Janie Rosales" } ], "greeting": "Hello, Beatrice Howe! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea289ffeeb1901fbfb8d", "index": 3641, "guid": "f92cbbee-99f0-44f3-b5ee-d9aee5d89d09", "isActive": true, "balance": "$2,827.79", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Sophia Mason", "gender": "female", "company": "BARKARAMA", "email": "sophiamason@barkarama.com", "phone": "+1 (893) 597-2924", "address": "994 Brighton Avenue, Troy, South Carolina, 802", "about": "Anim nisi et mollit cillum. Et non eiusmod reprehenderit enim tempor do Lorem qui in veniam sunt ut. Ullamco ullamco nostrud dolore commodo quis mollit id id. Voluptate laborum dolor enim nostrud.\r\n", "registered": "2014-07-25T17:44:41-12:00", "latitude": 43.52378, "longitude": 165.140236, "tags": [ "non", "exercitation", "qui", "aliqua", "commodo", "ea", "occaecat" ], "friends": [ { "id": 0, "name": "Debora Warren" }, { "id": 1, "name": "Anderson Barlow" }, { "id": 2, "name": "Pearson Davis" } ], "greeting": "Hello, Sophia Mason! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea286159e516184025ea", "index": 3642, "guid": "91bbf344-4458-4681-8fe7-a78b2e72b792", "isActive": false, "balance": "$1,135.35", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Cortez Solis", "gender": "male", "company": "BYTREX", "email": "cortezsolis@bytrex.com", "phone": "+1 (845) 418-3037", "address": "617 Gain Court, Driftwood, American Samoa, 6730", "about": "Adipisicing dolore incididunt elit id et amet occaecat. Ea laboris nisi laboris consequat sint cillum elit veniam ut incididunt magna mollit est non. Veniam culpa velit aute enim id officia anim laboris nisi adipisicing esse exercitation mollit laboris. Non anim deserunt qui enim pariatur quis consectetur irure consectetur commodo aliqua est consectetur et. Eu enim fugiat est nisi nisi dolor quis velit amet commodo fugiat amet amet.\r\n", "registered": "2014-08-27T23:09:42-12:00", "latitude": 54.506653, "longitude": -176.340408, "tags": [ "ullamco", "sunt", "eiusmod", "culpa", "minim", "enim", "sunt" ], "friends": [ { "id": 0, "name": "Madelyn Riggs" }, { "id": 1, "name": "Lynn Matthews" }, { "id": 2, "name": "Lori Petty" } ], "greeting": "Hello, Cortez Solis! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2839d51bc6f4ce28c9", "index": 3643, "guid": "ffec6507-490e-4e51-8304-9d1307e39b06", "isActive": true, "balance": "$1,642.41", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Matthews Marshall", "gender": "male", "company": "ECRAZE", "email": "matthewsmarshall@ecraze.com", "phone": "+1 (947) 542-2627", "address": "981 Ocean Parkway, Frank, Delaware, 8591", "about": "Nulla qui nulla sunt eiusmod. Eiusmod magna est nisi velit. Anim consequat ex occaecat labore aliquip veniam cupidatat minim voluptate eu. Ea adipisicing do culpa anim tempor veniam sint.\r\n", "registered": "2014-01-21T20:19:08-13:00", "latitude": 81.826706, "longitude": -92.850123, "tags": [ "qui", "non", "enim", "do", "dolore", "adipisicing", "sit" ], "friends": [ { "id": 0, "name": "Padilla Black" }, { "id": 1, "name": "Maxine Sykes" }, { "id": 2, "name": "Snow Becker" } ], "greeting": "Hello, Matthews Marshall! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea286eae0542161c84ef", "index": 3644, "guid": "1f12ab7d-9d78-4efd-84bd-f5d6d2cbfcb7", "isActive": false, "balance": "$1,906.43", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Rena Cox", "gender": "female", "company": "CORPULSE", "email": "renacox@corpulse.com", "phone": "+1 (949) 525-2964", "address": "106 Commercial Street, Clara, Pennsylvania, 5800", "about": "In et duis anim exercitation proident proident sint fugiat sit. Ut reprehenderit minim non consequat voluptate id in elit eu id ad. Pariatur deserunt magna consectetur dolor eiusmod magna elit ipsum consequat veniam dolor magna irure.\r\n", "registered": "2014-08-13T13:04:15-12:00", "latitude": -60.91961, "longitude": -128.222187, "tags": [ "velit", "exercitation", "sit", "aute", "anim", "tempor", "laboris" ], "friends": [ { "id": 0, "name": "April Murphy" }, { "id": 1, "name": "Alfreda Kim" }, { "id": 2, "name": "Saunders Stafford" } ], "greeting": "Hello, Rena Cox! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea282ad0e98f6d578870", "index": 3645, "guid": "d56ec77f-63ab-4fdf-bf5c-70dc3f2102af", "isActive": true, "balance": "$3,289.02", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Zimmerman Daniel", "gender": "male", "company": "NUTRALAB", "email": "zimmermandaniel@nutralab.com", "phone": "+1 (853) 591-3542", "address": "190 Colby Court, Dunlo, Georgia, 9249", "about": "Ullamco voluptate ut dolor eiusmod enim proident irure laborum exercitation. Fugiat magna velit fugiat ex pariatur amet ullamco veniam aute. Enim id qui culpa elit cupidatat sunt minim anim excepteur culpa sint. Cupidatat aliqua nisi laborum est sit. Incididunt dolor minim duis et nulla occaecat magna qui. Excepteur ad laboris ullamco do dolore commodo aliqua ut quis id culpa fugiat esse ea.\r\n", "registered": "2014-02-12T06:37:57-13:00", "latitude": 28.777715, "longitude": 101.472793, "tags": [ "cillum", "non", "reprehenderit", "reprehenderit", "irure", "esse", "proident" ], "friends": [ { "id": 0, "name": "Cook Hudson" }, { "id": 1, "name": "Ronda Snow" }, { "id": 2, "name": "Marsh Patrick" } ], "greeting": "Hello, Zimmerman Daniel! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea282594484882ea85cf", "index": 3646, "guid": "c13ad406-8d22-4de6-be9b-e56dafa4b9bf", "isActive": true, "balance": "$3,584.78", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Burnett Padilla", "gender": "male", "company": "PHORMULA", "email": "burnettpadilla@phormula.com", "phone": "+1 (991) 515-2571", "address": "560 Menahan Street, Coinjock, North Dakota, 2812", "about": "Sit nulla sint nulla id officia deserunt ut. Laborum veniam nisi nisi pariatur aute aliqua nulla qui amet ex amet. Laborum excepteur sit veniam anim consectetur adipisicing nostrud proident. Lorem veniam ea aute ea. Deserunt esse consequat non exercitation nulla cupidatat ex duis eiusmod consectetur non amet.\r\n", "registered": "2014-05-20T19:31:16-12:00", "latitude": 19.381594, "longitude": -169.96747, "tags": [ "ea", "laboris", "magna", "nulla", "pariatur", "deserunt", "ut" ], "friends": [ { "id": 0, "name": "Marisa Melendez" }, { "id": 1, "name": "Paula Vasquez" }, { "id": 2, "name": "Farrell Tyler" } ], "greeting": "Hello, Burnett Padilla! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28dec427531e3e8607", "index": 3647, "guid": "a5a264f1-5800-4374-b7a5-a71ec99533a4", "isActive": true, "balance": "$1,687.25", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Edwards Mooney", "gender": "male", "company": "SCENTY", "email": "edwardsmooney@scenty.com", "phone": "+1 (833) 414-2186", "address": "272 Cornelia Street, Orin, Louisiana, 7957", "about": "Ut incididunt enim Lorem occaecat deserunt tempor commodo aliqua qui ea occaecat. Quis ut ut pariatur irure enim. Magna et incididunt ut nisi esse cillum minim quis nisi dolor. Eu excepteur commodo veniam enim. Proident anim est nulla velit culpa et fugiat duis ipsum.\r\n", "registered": "2014-04-22T22:23:59-12:00", "latitude": -41.873224, "longitude": 60.863674, "tags": [ "mollit", "id", "culpa", "ex", "sint", "officia", "consequat" ], "friends": [ { "id": 0, "name": "Day Garrison" }, { "id": 1, "name": "Mcgowan Best" }, { "id": 2, "name": "Beck Mccormick" } ], "greeting": "Hello, Edwards Mooney! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2864fd719ad122a8d8", "index": 3648, "guid": "85f3ed2a-4a5c-4845-9251-838dfe7cbd87", "isActive": false, "balance": "$2,807.69", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Vasquez Cross", "gender": "male", "company": "CAPSCREEN", "email": "vasquezcross@capscreen.com", "phone": "+1 (846) 556-3681", "address": "955 Frost Street, Buxton, Northern Mariana Islands, 4378", "about": "Dolore do fugiat eiusmod aliquip. Non tempor ullamco veniam cillum elit. Consequat ut Lorem mollit nisi aute laborum minim nostrud culpa reprehenderit est sint consequat ad. Officia in Lorem nostrud nulla aute cillum proident ex.\r\n", "registered": "2014-04-25T07:20:26-12:00", "latitude": -27.962842, "longitude": 149.168706, "tags": [ "aliquip", "excepteur", "laborum", "ipsum", "do", "dolore", "minim" ], "friends": [ { "id": 0, "name": "Hicks Albert" }, { "id": 1, "name": "Rosemary Newton" }, { "id": 2, "name": "Katherine Kemp" } ], "greeting": "Hello, Vasquez Cross! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28fdb06bfd0586232c", "index": 3649, "guid": "27419fe4-09c8-4957-8ed2-88a64626af09", "isActive": false, "balance": "$1,084.11", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Lakeisha Nelson", "gender": "female", "company": "KOFFEE", "email": "lakeishanelson@koffee.com", "phone": "+1 (888) 436-2392", "address": "960 Kosciusko Street, Shawmut, Colorado, 1285", "about": "Aliquip qui et culpa voluptate Lorem ad sit velit Lorem cillum sunt laboris. Velit reprehenderit eiusmod aliqua ex deserunt incididunt fugiat id ullamco. Ut magna do sunt in magna eu.\r\n", "registered": "2014-07-09T09:35:29-12:00", "latitude": 89.22129, "longitude": -175.383533, "tags": [ "id", "exercitation", "velit", "incididunt", "aute", "laboris", "pariatur" ], "friends": [ { "id": 0, "name": "Hopkins Duke" }, { "id": 1, "name": "Jodi Perez" }, { "id": 2, "name": "Lena Hoffman" } ], "greeting": "Hello, Lakeisha Nelson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28197f759b941fb1bb", "index": 3650, "guid": "b694a819-7249-4b21-87f5-59112148b3a0", "isActive": false, "balance": "$2,455.90", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Kaufman Waller", "gender": "male", "company": "XIXAN", "email": "kaufmanwaller@xixan.com", "phone": "+1 (822) 531-3240", "address": "729 Clara Street, Boonville, Idaho, 6920", "about": "Ad tempor sit irure ad occaecat laboris sit. Incididunt ex tempor laboris qui excepteur cupidatat qui exercitation voluptate qui exercitation. Duis sunt ea velit aliquip sit consectetur do deserunt qui minim voluptate aliquip ea eu. Excepteur commodo ut quis Lorem consectetur dolore. Ad eiusmod sint nisi cillum reprehenderit est dolore voluptate.\r\n", "registered": "2014-04-17T23:36:04-12:00", "latitude": 80.863167, "longitude": -12.470944, "tags": [ "irure", "elit", "magna", "consectetur", "nostrud", "sunt", "sunt" ], "friends": [ { "id": 0, "name": "Rosa Bowman" }, { "id": 1, "name": "Skinner Morales" }, { "id": 2, "name": "Beulah Mejia" } ], "greeting": "Hello, Kaufman Waller! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28b80c3c0768470d14", "index": 3651, "guid": "e42f70c3-60e4-4073-b241-b713d40f86ee", "isActive": false, "balance": "$1,292.58", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Lana Hurst", "gender": "female", "company": "ACCUPHARM", "email": "lanahurst@accupharm.com", "phone": "+1 (993) 486-3788", "address": "243 Wyckoff Street, Chicopee, Marshall Islands, 8634", "about": "Velit occaecat fugiat commodo magna officia et magna labore pariatur elit tempor. Laborum tempor velit ullamco minim nostrud. Ea tempor non ullamco veniam aute minim adipisicing nulla voluptate adipisicing aute proident exercitation dolor. Ea ipsum dolore et do irure aliqua ullamco. Aliquip nisi elit ut laborum et ea sit pariatur dolore ea.\r\n", "registered": "2014-08-04T18:52:44-12:00", "latitude": 8.642286, "longitude": 146.279993, "tags": [ "exercitation", "officia", "amet", "ut", "aliquip", "in", "pariatur" ], "friends": [ { "id": 0, "name": "Hodges Kennedy" }, { "id": 1, "name": "Tara Farrell" }, { "id": 2, "name": "Angel Doyle" } ], "greeting": "Hello, Lana Hurst! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2829b9570cebfe73a8", "index": 3652, "guid": "4e18dd8b-66e5-4509-990d-08105e617006", "isActive": true, "balance": "$1,234.72", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Flossie Hoover", "gender": "female", "company": "URBANSHEE", "email": "flossiehoover@urbanshee.com", "phone": "+1 (914) 557-3052", "address": "660 Tampa Court, Shrewsbury, New York, 5876", "about": "Aute labore quis occaecat aliquip. Et ullamco exercitation mollit excepteur sunt commodo ut irure excepteur enim cillum eu in. Aliquip quis labore sint ex occaecat ea nostrud irure fugiat ea. Et proident anim tempor consectetur. Proident consectetur id eiusmod laborum sint esse id sit laborum adipisicing tempor incididunt. Ex et mollit occaecat minim voluptate aute do veniam officia exercitation commodo irure.\r\n", "registered": "2014-01-27T01:40:56-13:00", "latitude": 88.792128, "longitude": -55.849638, "tags": [ "non", "esse", "sit", "fugiat", "esse", "sint", "non" ], "friends": [ { "id": 0, "name": "Hazel Dalton" }, { "id": 1, "name": "Tisha Mcdowell" }, { "id": 2, "name": "Mcmahon Marsh" } ], "greeting": "Hello, Flossie Hoover! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f49216e243015225", "index": 3653, "guid": "9fe9e790-fe7d-4e32-bf7c-e22af8118cd9", "isActive": false, "balance": "$2,268.69", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Deena Juarez", "gender": "female", "company": "TRANSLINK", "email": "deenajuarez@translink.com", "phone": "+1 (922) 476-2076", "address": "560 Troy Avenue, Sugartown, Guam, 9748", "about": "Do reprehenderit cupidatat id ipsum fugiat id officia. Veniam et culpa eu aliquip adipisicing cupidatat reprehenderit exercitation velit nisi. Adipisicing proident ea nulla ex id ipsum eu mollit irure mollit reprehenderit dolore. Sit mollit laborum irure fugiat.\r\n", "registered": "2014-02-23T17:30:38-13:00", "latitude": -20.352402, "longitude": -110.587168, "tags": [ "elit", "incididunt", "minim", "proident", "cillum", "labore", "reprehenderit" ], "friends": [ { "id": 0, "name": "Roxie Dillard" }, { "id": 1, "name": "Verna Lee" }, { "id": 2, "name": "Aguirre Mayer" } ], "greeting": "Hello, Deena Juarez! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28424ba57463f0313f", "index": 3654, "guid": "ef344737-8552-40ca-bdbd-9c7f641c5b48", "isActive": true, "balance": "$2,905.05", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Gena Beard", "gender": "female", "company": "MULTIFLEX", "email": "genabeard@multiflex.com", "phone": "+1 (932) 502-3476", "address": "598 Ridgewood Place, Elbert, Virgin Islands, 971", "about": "Adipisicing laboris consequat ipsum elit voluptate. Duis quis ut magna do cupidatat exercitation id. Ea culpa ea pariatur minim mollit laborum fugiat officia officia. Lorem in do tempor aute voluptate nisi voluptate exercitation consequat excepteur culpa sit cupidatat. Sint elit nisi aliquip nulla velit do velit. Est nulla esse mollit sint exercitation officia ipsum tempor non aliquip nostrud consectetur et.\r\n", "registered": "2014-06-04T06:10:32-12:00", "latitude": 66.459758, "longitude": -49.43722, "tags": [ "elit", "reprehenderit", "nisi", "occaecat", "nostrud", "excepteur", "id" ], "friends": [ { "id": 0, "name": "Candice Randolph" }, { "id": 1, "name": "Effie Rocha" }, { "id": 2, "name": "Brittany Owen" } ], "greeting": "Hello, Gena Beard! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28efb47d8a2b2758db", "index": 3655, "guid": "042ee77c-13e9-4d8c-bcbc-1305332d3ad4", "isActive": true, "balance": "$3,125.61", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Tamara Justice", "gender": "female", "company": "DATAGEN", "email": "tamarajustice@datagen.com", "phone": "+1 (962) 478-2582", "address": "723 Narrows Avenue, Groton, Massachusetts, 7828", "about": "Eiusmod et ad sunt Lorem nisi velit exercitation proident nisi. Officia culpa occaecat aliquip irure do adipisicing duis. Reprehenderit deserunt amet aliquip proident pariatur laboris irure irure velit irure incididunt. Veniam sit pariatur sit mollit. Officia in dolore nostrud do exercitation proident pariatur eu non sunt Lorem do exercitation. Cupidatat velit consectetur amet Lorem deserunt irure cupidatat excepteur eiusmod. Qui dolore adipisicing irure labore deserunt ut nostrud voluptate minim aliquip amet sunt.\r\n", "registered": "2014-02-03T22:59:19-13:00", "latitude": 32.370844, "longitude": -9.095338, "tags": [ "velit", "sint", "officia", "aliqua", "amet", "enim", "ex" ], "friends": [ { "id": 0, "name": "Erika Walters" }, { "id": 1, "name": "Dawn Moon" }, { "id": 2, "name": "Alejandra Byers" } ], "greeting": "Hello, Tamara Justice! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea287402aaa17ab1d932", "index": 3656, "guid": "b2703ef4-26ca-4834-a460-9ff40c1d0470", "isActive": true, "balance": "$2,030.94", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Lilly Mcdaniel", "gender": "female", "company": "PYRAMI", "email": "lillymcdaniel@pyrami.com", "phone": "+1 (900) 492-3821", "address": "177 Conklin Avenue, Marne, Utah, 9550", "about": "Ullamco sint consequat incididunt excepteur do reprehenderit sint amet commodo velit aliqua. Officia est do aliquip commodo consequat exercitation nisi amet mollit mollit fugiat duis. Nostrud cillum deserunt dolor nulla est. Nisi et irure laboris cupidatat in in non cillum aliquip culpa aute reprehenderit. Cillum amet ex reprehenderit ex. Labore minim nulla officia esse incididunt tempor veniam commodo commodo.\r\n", "registered": "2014-02-02T21:32:57-13:00", "latitude": -14.924493, "longitude": -33.944066, "tags": [ "id", "ea", "quis", "minim", "cillum", "elit", "excepteur" ], "friends": [ { "id": 0, "name": "Montgomery Pearson" }, { "id": 1, "name": "Riggs Mcintosh" }, { "id": 2, "name": "Annie Robertson" } ], "greeting": "Hello, Lilly Mcdaniel! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea282b39e2de4a3e33ef", "index": 3657, "guid": "53c95a29-0075-4a4c-929c-5271ebe327a1", "isActive": false, "balance": "$3,635.55", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Sykes Sherman", "gender": "male", "company": "COMTRAK", "email": "sykessherman@comtrak.com", "phone": "+1 (896) 584-2649", "address": "603 Bassett Avenue, Dixonville, Montana, 8125", "about": "Duis occaecat exercitation aliquip elit mollit aute. Fugiat fugiat ut ex nulla irure dolore cupidatat voluptate magna labore deserunt. Deserunt et sunt officia proident. Commodo dolore labore velit do elit sunt ea consectetur cillum aliqua. Sunt non velit elit veniam ad sint consectetur irure consectetur veniam culpa. Velit adipisicing est laboris ea ullamco minim qui aliquip mollit commodo consequat. Sit excepteur nostrud enim ex amet exercitation ipsum cupidatat Lorem et do dolor est.\r\n", "registered": "2014-05-10T02:22:53-12:00", "latitude": 46.66774, "longitude": -132.621685, "tags": [ "pariatur", "deserunt", "enim", "eiusmod", "magna", "nisi", "pariatur" ], "friends": [ { "id": 0, "name": "Blanca Gillespie" }, { "id": 1, "name": "Houston Glass" }, { "id": 2, "name": "Kane Wells" } ], "greeting": "Hello, Sykes Sherman! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28597557fb5ae83541", "index": 3658, "guid": "e41ab9e5-bcfa-49f4-af19-8a7a9ff8f5f9", "isActive": false, "balance": "$1,207.43", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Tameka Love", "gender": "female", "company": "PAPRIKUT", "email": "tamekalove@paprikut.com", "phone": "+1 (927) 590-3406", "address": "651 Little Street, Makena, Wisconsin, 6501", "about": "Et ea exercitation sit ad Lorem consectetur id. Nisi amet labore proident laborum amet elit est eu. Lorem qui elit quis amet cupidatat.\r\n", "registered": "2014-04-17T14:10:17-12:00", "latitude": 32.819035, "longitude": -79.877394, "tags": [ "aliqua", "et", "ex", "laborum", "non", "ex", "adipisicing" ], "friends": [ { "id": 0, "name": "Lott Owens" }, { "id": 1, "name": "Jerry Levy" }, { "id": 2, "name": "Morgan Dillon" } ], "greeting": "Hello, Tameka Love! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28633537fb269276a3", "index": 3659, "guid": "b72aa25b-e73d-4ac0-aa68-d0487f89dab0", "isActive": false, "balance": "$2,381.36", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Lynne Williamson", "gender": "female", "company": "KINETICUT", "email": "lynnewilliamson@kineticut.com", "phone": "+1 (879) 446-3781", "address": "492 Rock Street, Ironton, Maine, 5293", "about": "Cupidatat Lorem veniam voluptate minim ullamco aliqua eiusmod ut sint deserunt. Ipsum commodo esse est nisi amet dolore duis minim amet anim ullamco. Eu anim anim sit veniam tempor adipisicing eu. Fugiat fugiat nostrud duis incididunt consequat. Exercitation est sint aliquip aliqua aliqua proident. Ea laboris laboris dolore enim fugiat aute laborum. Aliqua ea excepteur ullamco qui voluptate voluptate exercitation.\r\n", "registered": "2014-07-24T03:31:14-12:00", "latitude": -73.586059, "longitude": -12.371275, "tags": [ "elit", "nulla", "et", "duis", "aliqua", "elit", "ut" ], "friends": [ { "id": 0, "name": "Deloris Ware" }, { "id": 1, "name": "Shanna Alston" }, { "id": 2, "name": "Osborne Nieves" } ], "greeting": "Hello, Lynne Williamson! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28d28d13e69a556cd2", "index": 3660, "guid": "6af67637-f0f6-456d-a4fa-247727e8747e", "isActive": true, "balance": "$3,523.83", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Marla Deleon", "gender": "female", "company": "PERKLE", "email": "marladeleon@perkle.com", "phone": "+1 (911) 572-3534", "address": "725 Perry Place, Blende, Virginia, 2910", "about": "Consectetur elit non eiusmod eu ad dolore. Labore pariatur elit sint mollit sunt dolor commodo eiusmod anim exercitation velit voluptate. Laboris nostrud commodo labore ipsum anim adipisicing. Ea cupidatat Lorem minim aute minim do proident velit ullamco magna nisi in consectetur in.\r\n", "registered": "2014-04-03T21:52:59-13:00", "latitude": 80.966622, "longitude": -163.495138, "tags": [ "reprehenderit", "reprehenderit", "irure", "consectetur", "nisi", "eiusmod", "est" ], "friends": [ { "id": 0, "name": "Rice Parrish" }, { "id": 1, "name": "Dawson Farley" }, { "id": 2, "name": "Robbie Pugh" } ], "greeting": "Hello, Marla Deleon! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea286fd7e7eae0cbe8bf", "index": 3661, "guid": "a70a9c4b-5f46-4c83-bfd7-10193345de87", "isActive": true, "balance": "$1,718.16", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Reilly Barber", "gender": "male", "company": "XYMONK", "email": "reillybarber@xymonk.com", "phone": "+1 (985) 560-3320", "address": "920 Wogan Terrace, Babb, Kentucky, 7960", "about": "Cupidatat eu velit duis nulla deserunt dolore fugiat deserunt anim nostrud aute veniam. Ipsum esse proident Lorem tempor quis nisi id nostrud. Est veniam do id labore exercitation laboris cupidatat dolor incididunt tempor aute proident.\r\n", "registered": "2014-04-14T18:55:30-12:00", "latitude": -57.898519, "longitude": 80.401626, "tags": [ "eu", "proident", "velit", "dolor", "aute", "tempor", "magna" ], "friends": [ { "id": 0, "name": "Deanna Hayes" }, { "id": 1, "name": "Oneill Pennington" }, { "id": 2, "name": "Tonya May" } ], "greeting": "Hello, Reilly Barber! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f4b05019b30a36af", "index": 3662, "guid": "921a49dc-18b3-47ea-9736-13c1abcbf779", "isActive": false, "balance": "$3,089.58", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Sharlene Hyde", "gender": "female", "company": "ZEROLOGY", "email": "sharlenehyde@zerology.com", "phone": "+1 (919) 588-2166", "address": "926 Clove Road, Greenfields, Connecticut, 6835", "about": "Est est esse anim magna minim et nostrud ipsum. Ex ut dolore labore in labore nisi reprehenderit elit et velit. Anim occaecat consequat sunt quis culpa culpa esse nostrud exercitation amet. Reprehenderit in velit id pariatur cupidatat incididunt sint commodo voluptate cupidatat consectetur laborum est eiusmod. Enim amet irure esse adipisicing irure laboris est duis. Enim reprehenderit occaecat officia exercitation Lorem culpa tempor anim officia. Eiusmod duis magna ex Lorem dolor ipsum quis ad reprehenderit.\r\n", "registered": "2014-06-03T13:49:11-12:00", "latitude": -62.775854, "longitude": 130.766463, "tags": [ "ut", "et", "consectetur", "sit", "consequat", "adipisicing", "aliquip" ], "friends": [ { "id": 0, "name": "Claudette Nunez" }, { "id": 1, "name": "Calderon Hodge" }, { "id": 2, "name": "Lindsey Dominguez" } ], "greeting": "Hello, Sharlene Hyde! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28aea77658cbcdba5e", "index": 3663, "guid": "ce80187f-af2c-4268-bf9b-7eff4b3ebc37", "isActive": true, "balance": "$1,135.07", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Gilmore Mitchell", "gender": "male", "company": "MIXERS", "email": "gilmoremitchell@mixers.com", "phone": "+1 (919) 418-3906", "address": "246 Ridge Boulevard, Grantville, Mississippi, 4371", "about": "Anim consectetur mollit proident reprehenderit. Nisi minim adipisicing labore minim exercitation do cillum non in et est. Anim consectetur veniam duis eiusmod ullamco nostrud cupidatat reprehenderit elit. Proident consectetur eu deserunt Lorem exercitation aute adipisicing id ad reprehenderit cillum ex. Eiusmod dolor velit et quis commodo minim qui Lorem Lorem laborum. Proident sint in irure officia veniam dolore. Anim sint esse cupidatat sint aliquip officia proident elit.\r\n", "registered": "2014-05-23T20:13:31-12:00", "latitude": 82.835203, "longitude": 71.460923, "tags": [ "voluptate", "ipsum", "dolore", "id", "proident", "adipisicing", "esse" ], "friends": [ { "id": 0, "name": "Kaitlin Rogers" }, { "id": 1, "name": "Kimberley Odom" }, { "id": 2, "name": "Casey Brock" } ], "greeting": "Hello, Gilmore Mitchell! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea280830298f249b76da", "index": 3664, "guid": "41c7da2b-5bb0-4c1d-9d54-0517bcfeea0d", "isActive": false, "balance": "$1,267.00", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Brittney Dixon", "gender": "female", "company": "QUOTEZART", "email": "brittneydixon@quotezart.com", "phone": "+1 (867) 503-2638", "address": "355 Ryerson Street, Lafferty, Washington, 585", "about": "Do enim ullamco dolore labore aute commodo ea consequat et proident veniam deserunt amet ex. Voluptate dolor voluptate nisi voluptate aliquip sit culpa est. Sint enim ea ullamco amet voluptate. Adipisicing magna est qui nisi Lorem eu incididunt eiusmod ex reprehenderit.\r\n", "registered": "2014-02-01T10:46:59-13:00", "latitude": -76.743918, "longitude": 49.290589, "tags": [ "eu", "eu", "anim", "aliquip", "cillum", "voluptate", "excepteur" ], "friends": [ { "id": 0, "name": "Ofelia Barnes" }, { "id": 1, "name": "Boone Massey" }, { "id": 2, "name": "Katelyn Morton" } ], "greeting": "Hello, Brittney Dixon! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28cf3dcd19eaaa571e", "index": 3665, "guid": "f6059e3f-c2cd-4cbe-98e9-1c49fe5c7454", "isActive": false, "balance": "$1,477.91", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Campbell Landry", "gender": "male", "company": "NURALI", "email": "campbelllandry@nurali.com", "phone": "+1 (989) 478-3773", "address": "442 Thatford Avenue, Klagetoh, Tennessee, 8847", "about": "Voluptate eiusmod incididunt elit ex eu sunt dolor velit quis culpa. Voluptate enim incididunt velit consequat ut commodo laborum. Est sunt mollit do quis aute. Deserunt ex ad tempor fugiat. Aute amet fugiat reprehenderit labore culpa officia ullamco.\r\n", "registered": "2014-02-06T04:26:23-13:00", "latitude": 46.826587, "longitude": -105.897913, "tags": [ "dolore", "velit", "non", "consequat", "id", "aliqua", "pariatur" ], "friends": [ { "id": 0, "name": "Moody Garcia" }, { "id": 1, "name": "Alexandria Bowers" }, { "id": 2, "name": "Walker Whitaker" } ], "greeting": "Hello, Campbell Landry! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28bd85682bdfd7276a", "index": 3666, "guid": "4b084e94-cd87-4ee2-bd4f-22172f6f410b", "isActive": true, "balance": "$3,227.14", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Monique Gordon", "gender": "female", "company": "QUINTITY", "email": "moniquegordon@quintity.com", "phone": "+1 (955) 414-3904", "address": "527 Tillary Street, Movico, Alabama, 3851", "about": "Excepteur labore magna labore do ea ullamco ut consectetur veniam nisi nisi non veniam Lorem. Culpa officia elit esse velit officia anim dolore elit consectetur irure commodo anim. Enim voluptate velit irure eiusmod cupidatat mollit cillum mollit. Dolore aliquip eiusmod aliquip ipsum aliqua dolor Lorem enim ut veniam non. Sunt ullamco cupidatat Lorem deserunt dolor fugiat ex dolore in sunt est culpa. Duis deserunt amet ad sint est pariatur labore mollit commodo.\r\n", "registered": "2014-02-17T15:34:04-13:00", "latitude": -80.158349, "longitude": -152.682995, "tags": [ "elit", "ea", "cupidatat", "incididunt", "enim", "duis", "dolor" ], "friends": [ { "id": 0, "name": "Andrea Downs" }, { "id": 1, "name": "Christa Rose" }, { "id": 2, "name": "Alicia Blackwell" } ], "greeting": "Hello, Monique Gordon! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea287c9c56af38648d6b", "index": 3667, "guid": "1e555072-8a1f-45c2-9db9-0bf00d174945", "isActive": true, "balance": "$2,409.18", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Hayden Steele", "gender": "male", "company": "GEEKWAGON", "email": "haydensteele@geekwagon.com", "phone": "+1 (994) 544-2177", "address": "855 Cleveland Street, Chaparrito, Ohio, 9618", "about": "Eiusmod incididunt pariatur laboris eu laborum occaecat sit labore duis veniam exercitation reprehenderit id qui. Dolor anim aute elit aute elit adipisicing excepteur irure proident nulla anim in. Et voluptate nisi consequat esse aute excepteur. Sit sunt et excepteur eu aute. Cillum aliquip minim magna eu laboris qui nostrud commodo dolor nisi. Consectetur sit magna adipisicing duis ut.\r\n", "registered": "2014-07-22T09:30:21-12:00", "latitude": 49.612269, "longitude": -141.230913, "tags": [ "sit", "minim", "incididunt", "sunt", "laborum", "exercitation", "consectetur" ], "friends": [ { "id": 0, "name": "Sutton Dorsey" }, { "id": 1, "name": "Mary Burch" }, { "id": 2, "name": "Tammie Miller" } ], "greeting": "Hello, Hayden Steele! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28da2bf0e5c76a7f08", "index": 3668, "guid": "3e879856-a6a7-4095-b6e3-4e4a9df8d4d0", "isActive": false, "balance": "$1,558.06", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Benton Gross", "gender": "male", "company": "ZIALACTIC", "email": "bentongross@zialactic.com", "phone": "+1 (953) 551-2287", "address": "445 Neptune Avenue, Coventry, Hawaii, 7309", "about": "Sunt sint sunt aute excepteur dolore ad do incididunt cupidatat. Ipsum commodo reprehenderit elit deserunt aliqua ullamco irure minim aliqua. Nulla esse magna proident laborum pariatur nulla labore in. Anim veniam irure sit cillum quis culpa ullamco. Nisi duis duis ad reprehenderit minim duis proident ipsum fugiat qui do proident laboris duis. Consequat qui officia occaecat incididunt do adipisicing cupidatat mollit ut anim. Ullamco dolor proident laborum amet anim dolore in elit eiusmod consectetur enim velit Lorem.\r\n", "registered": "2014-02-01T02:09:14-13:00", "latitude": -54.838208, "longitude": 12.813342, "tags": [ "officia", "aute", "ad", "excepteur", "consectetur", "reprehenderit", "enim" ], "friends": [ { "id": 0, "name": "Harvey Rowe" }, { "id": 1, "name": "Craig Fitzgerald" }, { "id": 2, "name": "Rene Burris" } ], "greeting": "Hello, Benton Gross! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea285ccb4f91d32af27d", "index": 3669, "guid": "bd251b25-6ddf-474d-adad-83444c73d83f", "isActive": false, "balance": "$2,494.01", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Miller Case", "gender": "male", "company": "ROCKABYE", "email": "millercase@rockabye.com", "phone": "+1 (878) 597-2596", "address": "144 Lyme Avenue, Enlow, New Mexico, 6583", "about": "Adipisicing est veniam sit adipisicing laboris consectetur mollit incididunt aute elit incididunt. Et sunt adipisicing sunt enim proident. Eu proident laboris occaecat adipisicing in culpa veniam nulla. Pariatur qui deserunt ex fugiat sint sint amet deserunt. Culpa magna officia officia sunt reprehenderit aliqua laboris. Veniam ipsum enim excepteur occaecat. Est adipisicing non ut eu exercitation reprehenderit non dolor qui eiusmod irure ipsum.\r\n", "registered": "2014-04-02T15:33:43-13:00", "latitude": -46.656244, "longitude": 157.165388, "tags": [ "voluptate", "sunt", "aute", "amet", "eu", "id", "et" ], "friends": [ { "id": 0, "name": "Richards Hines" }, { "id": 1, "name": "Odom Contreras" }, { "id": 2, "name": "Watson Chen" } ], "greeting": "Hello, Miller Case! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28fb2cee67cd4dc4b8", "index": 3670, "guid": "2b41d7b6-ceef-437c-a656-6926d345613b", "isActive": false, "balance": "$2,621.24", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Fischer Bean", "gender": "male", "company": "KYAGORO", "email": "fischerbean@kyagoro.com", "phone": "+1 (974) 473-2974", "address": "537 Clark Street, Welda, Maryland, 4877", "about": "Mollit labore pariatur eu occaecat. Aute ullamco dolore adipisicing sint sit. Velit elit sint pariatur eu voluptate incididunt ad ea id mollit proident sunt aliquip magna. Eu nisi sit enim reprehenderit duis voluptate labore esse laboris quis esse dolore. Magna pariatur consectetur eiusmod sit aliqua veniam ut minim occaecat eiusmod esse non eiusmod eiusmod. Aute magna proident incididunt eu duis ex sunt amet mollit pariatur.\r\n", "registered": "2014-09-12T10:25:37-12:00", "latitude": 37.867444, "longitude": 148.144475, "tags": [ "adipisicing", "id", "dolor", "ex", "nostrud", "nostrud", "aliquip" ], "friends": [ { "id": 0, "name": "Potter Burns" }, { "id": 1, "name": "Natalia Bruce" }, { "id": 2, "name": "Cecilia Gilliam" } ], "greeting": "Hello, Fischer Bean! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28a33114b7b8632109", "index": 3671, "guid": "e5fab4e1-f895-4210-af02-3a023b45837d", "isActive": false, "balance": "$1,108.31", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Jacqueline Weiss", "gender": "female", "company": "EXTRAGENE", "email": "jacquelineweiss@extragene.com", "phone": "+1 (941) 520-2677", "address": "254 Everit Street, Elwood, Alaska, 7874", "about": "Aute culpa veniam ullamco velit non consectetur ad consectetur ullamco amet. Laborum anim commodo deserunt ipsum dolore qui sint pariatur ipsum incididunt aliquip exercitation enim. Sint aliquip ullamco ullamco mollit reprehenderit nulla Lorem non sint. Exercitation consectetur nisi dolore deserunt pariatur tempor. Anim ea duis in ut consectetur cupidatat fugiat quis non aliquip aliqua ipsum elit.\r\n", "registered": "2014-03-25T05:52:50-13:00", "latitude": -56.895203, "longitude": 90.453182, "tags": [ "mollit", "labore", "consequat", "esse", "ullamco", "non", "adipisicing" ], "friends": [ { "id": 0, "name": "Marcy Sharp" }, { "id": 1, "name": "Heidi Rivera" }, { "id": 2, "name": "Brianna Hobbs" } ], "greeting": "Hello, Jacqueline Weiss! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2871838c5c8a181998", "index": 3672, "guid": "4f301073-08f6-46cb-b45b-db449cc3dc66", "isActive": false, "balance": "$3,942.46", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Shelby Parker", "gender": "female", "company": "IZZBY", "email": "shelbyparker@izzby.com", "phone": "+1 (881) 473-2420", "address": "365 Glenwood Road, Belfair, Arizona, 4691", "about": "Mollit ipsum non ex do eu exercitation cupidatat duis ullamco consectetur duis. Ex cupidatat ea deserunt irure anim proident aliquip dolore excepteur mollit veniam aute ut. Amet incididunt do do est sunt consequat est est nostrud id id do enim sint. Proident aliquip sunt labore nisi consequat ipsum nisi ipsum.\r\n", "registered": "2014-03-10T00:22:41-13:00", "latitude": 36.27332, "longitude": 78.900545, "tags": [ "excepteur", "id", "esse", "occaecat", "magna", "consequat", "aliquip" ], "friends": [ { "id": 0, "name": "Cathryn West" }, { "id": 1, "name": "Candace Peck" }, { "id": 2, "name": "Daisy Hogan" } ], "greeting": "Hello, Shelby Parker! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28656bd0c161e59363", "index": 3673, "guid": "9e1ee397-58d0-49c5-a75a-a84ac4467224", "isActive": false, "balance": "$2,727.52", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Mayra Coffey", "gender": "female", "company": "JIMBIES", "email": "mayracoffey@jimbies.com", "phone": "+1 (951) 594-3870", "address": "558 Legion Street, Freetown, Federated States Of Micronesia, 3217", "about": "Est voluptate magna cupidatat aliqua. Commodo sit Lorem proident anim. Sint pariatur magna qui cillum nulla aliquip nulla amet incididunt non sint elit. Elit ad qui id in non.\r\n", "registered": "2014-08-26T09:04:37-12:00", "latitude": 31.798639, "longitude": 69.441566, "tags": [ "ea", "voluptate", "minim", "ut", "qui", "occaecat", "et" ], "friends": [ { "id": 0, "name": "Marisol Snider" }, { "id": 1, "name": "Linda Flores" }, { "id": 2, "name": "Crosby Harrell" } ], "greeting": "Hello, Mayra Coffey! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea287309faf3fa6d97e8", "index": 3674, "guid": "a5c5c621-6335-4774-8341-ac6daf531592", "isActive": false, "balance": "$2,916.63", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Joy Henson", "gender": "female", "company": "EXODOC", "email": "joyhenson@exodoc.com", "phone": "+1 (900) 549-3022", "address": "575 Harden Street, Darbydale, Oklahoma, 340", "about": "Labore consequat dolore laborum aliquip ut. Dolore ad eu ea exercitation ullamco ea consectetur. Dolor voluptate reprehenderit laborum magna.\r\n", "registered": "2014-04-02T09:27:13-13:00", "latitude": 36.386933, "longitude": -16.448071, "tags": [ "Lorem", "tempor", "ullamco", "est", "deserunt", "mollit", "ut" ], "friends": [ { "id": 0, "name": "Kelly Booth" }, { "id": 1, "name": "Melissa Willis" }, { "id": 2, "name": "Avila Carpenter" } ], "greeting": "Hello, Joy Henson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2873fd113ac3501add", "index": 3675, "guid": "44091e8d-91c0-48d6-aa32-a639a94e62ce", "isActive": true, "balance": "$3,209.15", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Sloan Pena", "gender": "male", "company": "OVERPLEX", "email": "sloanpena@overplex.com", "phone": "+1 (902) 510-3855", "address": "645 Front Street, Riner, Michigan, 6653", "about": "Occaecat ut amet pariatur mollit tempor tempor adipisicing ad cillum sint proident cillum. Labore mollit nisi non labore. Do labore aute occaecat non. Sit do adipisicing sit adipisicing ea eiusmod ex nostrud. Fugiat mollit minim est voluptate consequat dolor eiusmod ad elit non est enim.\r\n", "registered": "2014-07-09T08:58:02-12:00", "latitude": -85.661121, "longitude": -13.807803, "tags": [ "ipsum", "et", "sint", "consequat", "et", "cupidatat", "enim" ], "friends": [ { "id": 0, "name": "Hall Washington" }, { "id": 1, "name": "Hope Potter" }, { "id": 2, "name": "Rae Gates" } ], "greeting": "Hello, Sloan Pena! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28638ec4b76851975a", "index": 3676, "guid": "3e054011-c9de-48c9-be23-754d11b130d3", "isActive": false, "balance": "$1,034.30", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Kelli Hopkins", "gender": "female", "company": "ECOSYS", "email": "kellihopkins@ecosys.com", "phone": "+1 (808) 567-3224", "address": "265 Holmes Lane, Ferney, Kansas, 5124", "about": "Laborum aute velit commodo sunt id ipsum ullamco cupidatat laborum quis officia cillum. Ex amet nulla qui dolore mollit commodo ex consequat eu consectetur aliquip non voluptate occaecat. Et laborum laborum mollit quis sint culpa minim. Pariatur ullamco officia consectetur consequat incididunt excepteur. Amet nulla officia Lorem ipsum laborum ea. Eiusmod veniam ut ipsum pariatur mollit aute nisi eu sunt. Ipsum quis anim consectetur officia fugiat reprehenderit ullamco minim deserunt.\r\n", "registered": "2014-04-23T19:48:32-12:00", "latitude": 3.210068, "longitude": -77.503572, "tags": [ "excepteur", "sunt", "commodo", "eu", "fugiat", "deserunt", "est" ], "friends": [ { "id": 0, "name": "Moran Gilbert" }, { "id": 1, "name": "Cooke Walls" }, { "id": 2, "name": "Georgette Franklin" } ], "greeting": "Hello, Kelli Hopkins! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28f66d83d357401e13", "index": 3677, "guid": "9246f78f-885a-449a-8a07-cca7bb7b70ed", "isActive": true, "balance": "$2,058.90", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Sullivan Reed", "gender": "male", "company": "NEXGENE", "email": "sullivanreed@nexgene.com", "phone": "+1 (899) 586-3745", "address": "491 Blake Avenue, Worton, South Dakota, 6489", "about": "Adipisicing Lorem ad labore deserunt eiusmod deserunt voluptate mollit mollit incididunt dolore non aliquip veniam. Nisi exercitation in reprehenderit deserunt laborum aliquip duis laborum nisi deserunt voluptate nulla sint. Reprehenderit dolore cillum duis aute.\r\n", "registered": "2014-04-08T21:09:24-12:00", "latitude": 43.660333, "longitude": 103.219328, "tags": [ "qui", "irure", "aliqua", "ut", "tempor", "eu", "cupidatat" ], "friends": [ { "id": 0, "name": "Gamble Odonnell" }, { "id": 1, "name": "Celina Chang" }, { "id": 2, "name": "Chaney Snyder" } ], "greeting": "Hello, Sullivan Reed! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28c8e415b7aa1eacaf", "index": 3678, "guid": "916f359a-f4bf-4467-835e-e481db9146ad", "isActive": true, "balance": "$2,206.52", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Jimenez Elliott", "gender": "male", "company": "KINETICA", "email": "jimenezelliott@kinetica.com", "phone": "+1 (962) 475-2335", "address": "146 Seagate Terrace, Ogema, West Virginia, 6095", "about": "Aute deserunt fugiat dolore mollit excepteur. Adipisicing aliquip occaecat dolore voluptate cillum anim fugiat do. Lorem mollit voluptate commodo anim duis laborum nostrud velit ea fugiat duis ex. Commodo sunt dolor veniam anim dolore enim. Culpa mollit elit mollit consectetur incididunt voluptate pariatur non exercitation est exercitation eu. Laboris excepteur nostrud sit consequat mollit minim. Minim cupidatat in fugiat occaecat pariatur eu ad dolore.\r\n", "registered": "2014-06-02T04:05:53-12:00", "latitude": 2.543566, "longitude": 126.224206, "tags": [ "exercitation", "amet", "eu", "ut", "et", "ea", "duis" ], "friends": [ { "id": 0, "name": "Hood Neal" }, { "id": 1, "name": "Fanny Boone" }, { "id": 2, "name": "Melendez Valencia" } ], "greeting": "Hello, Jimenez Elliott! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28b6e5fd8271eddb68", "index": 3679, "guid": "28aca091-8bd0-4407-b6ce-2b784d186578", "isActive": true, "balance": "$2,203.29", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Mable Robinson", "gender": "female", "company": "EMERGENT", "email": "mablerobinson@emergent.com", "phone": "+1 (858) 600-3829", "address": "462 Baughman Place, Muir, Texas, 8788", "about": "Aute commodo occaecat Lorem aliqua. Sint nostrud excepteur ad cupidatat ad ex nulla exercitation. Eu velit mollit aliqua cillum aliquip sunt incididunt dolore amet dolor enim tempor officia.\r\n", "registered": "2014-06-23T02:37:34-12:00", "latitude": 0.266491, "longitude": 81.943898, "tags": [ "sint", "nostrud", "commodo", "irure", "sunt", "culpa", "eiusmod" ], "friends": [ { "id": 0, "name": "Amparo Macdonald" }, { "id": 1, "name": "Cervantes Santiago" }, { "id": 2, "name": "Yvette Bartlett" } ], "greeting": "Hello, Mable Robinson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2881815f75b1956449", "index": 3680, "guid": "f5e973d6-f0bc-49cb-b5e0-71b7f3888808", "isActive": false, "balance": "$2,613.81", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Claudia Weeks", "gender": "female", "company": "SIGNIDYNE", "email": "claudiaweeks@signidyne.com", "phone": "+1 (936) 565-3818", "address": "391 Hendrix Street, Stewart, Oregon, 3819", "about": "Qui ipsum Lorem velit veniam velit cupidatat ea est nostrud aliqua amet. Sunt esse ex in ea deserunt culpa. Ullamco cupidatat labore elit cupidatat nostrud veniam nulla ad nostrud nostrud nisi consectetur voluptate minim. Veniam laboris minim nisi ad nulla esse. Elit pariatur occaecat eiusmod Lorem elit ullamco. Qui fugiat sint amet Lorem.\r\n", "registered": "2014-01-01T18:02:00-13:00", "latitude": 45.735123, "longitude": -109.166934, "tags": [ "esse", "proident", "nulla", "cillum", "deserunt", "sit", "occaecat" ], "friends": [ { "id": 0, "name": "Christian Lott" }, { "id": 1, "name": "Wilkins Oconnor" }, { "id": 2, "name": "Tammi Dejesus" } ], "greeting": "Hello, Claudia Weeks! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28bd283477ef794d6d", "index": 3681, "guid": "2b1334a5-29f3-47ba-a185-566b4537a776", "isActive": true, "balance": "$1,226.01", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Mcclure Cline", "gender": "male", "company": "HINWAY", "email": "mcclurecline@hinway.com", "phone": "+1 (917) 432-3285", "address": "341 Schroeders Avenue, Roy, Nevada, 5984", "about": "Ea laborum mollit tempor laborum Lorem reprehenderit sint nisi. Lorem pariatur occaecat consequat duis deserunt consectetur. Tempor qui nulla elit ullamco adipisicing Lorem irure consectetur enim magna nisi do exercitation enim. Et amet enim minim duis dolor. Ex sint sit ex veniam ut nostrud nostrud voluptate culpa.\r\n", "registered": "2014-02-23T09:04:47-13:00", "latitude": -81.789863, "longitude": -14.215181, "tags": [ "tempor", "proident", "consectetur", "magna", "reprehenderit", "fugiat", "minim" ], "friends": [ { "id": 0, "name": "Rollins Larson" }, { "id": 1, "name": "Mindy Velazquez" }, { "id": 2, "name": "Silvia Newman" } ], "greeting": "Hello, Mcclure Cline! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28c8ffefd56ea91870", "index": 3682, "guid": "b329da01-94b3-46d1-b662-1af6ff0f02b5", "isActive": true, "balance": "$2,395.67", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Jeannine Dyer", "gender": "female", "company": "CANDECOR", "email": "jeanninedyer@candecor.com", "phone": "+1 (891) 496-3107", "address": "729 Sapphire Street, Tetherow, Minnesota, 3790", "about": "Est dolore magna officia exercitation officia. Aute pariatur sit do anim elit ipsum proident aliquip. Voluptate nulla aliqua aliquip commodo id laborum ad commodo. In non quis elit sunt occaecat ipsum id mollit veniam. Voluptate ut laborum culpa consequat consequat nisi irure aute ad anim elit ut amet aliqua.\r\n", "registered": "2014-08-10T06:42:05-12:00", "latitude": -38.691311, "longitude": 58.256221, "tags": [ "in", "amet", "mollit", "aliqua", "excepteur", "dolor", "exercitation" ], "friends": [ { "id": 0, "name": "Frieda Blair" }, { "id": 1, "name": "Ila Keller" }, { "id": 2, "name": "Le Hampton" } ], "greeting": "Hello, Jeannine Dyer! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28bc2dd03fb7aa5f60", "index": 3683, "guid": "e0bd606b-d0c1-4093-9437-c0db0f0837e6", "isActive": false, "balance": "$1,789.89", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Cora Hernandez", "gender": "female", "company": "SUREPLEX", "email": "corahernandez@sureplex.com", "phone": "+1 (862) 477-2656", "address": "440 Hornell Loop, Harborton, Missouri, 4381", "about": "Adipisicing enim magna mollit enim nisi velit deserunt. Pariatur quis laborum pariatur laboris aliquip amet dolor deserunt deserunt nostrud. Cupidatat excepteur aute aute enim reprehenderit tempor. Ad eiusmod labore ipsum eiusmod ad exercitation. Cillum amet id dolor occaecat commodo fugiat aute amet ad nostrud labore anim ex velit. Id Lorem eu irure enim qui ad eiusmod exercitation cillum adipisicing elit consequat sunt adipisicing. Velit consequat excepteur ea anim sit adipisicing.\r\n", "registered": "2014-07-06T07:02:24-12:00", "latitude": -84.290974, "longitude": 32.946157, "tags": [ "Lorem", "proident", "laborum", "amet", "nulla", "labore", "duis" ], "friends": [ { "id": 0, "name": "Conley Nguyen" }, { "id": 1, "name": "Kay Ingram" }, { "id": 2, "name": "Summer Maldonado" } ], "greeting": "Hello, Cora Hernandez! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2823d78ed7a230722f", "index": 3684, "guid": "0f87036f-43c7-4f74-8220-b4c513653757", "isActive": false, "balance": "$1,733.57", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Lacey Guthrie", "gender": "female", "company": "DUOFLEX", "email": "laceyguthrie@duoflex.com", "phone": "+1 (951) 462-3653", "address": "310 Decatur Street, Bradenville, Rhode Island, 5272", "about": "Ea ullamco magna anim in ut veniam Lorem amet esse elit laborum ad culpa. Quis amet aute aliquip dolor cillum non minim dolore ea. Dolor ea excepteur ex nostrud reprehenderit elit et veniam ad duis eu sunt.\r\n", "registered": "2014-06-03T17:05:59-12:00", "latitude": 26.229305, "longitude": -125.886159, "tags": [ "sit", "consequat", "proident", "consequat", "adipisicing", "excepteur", "sunt" ], "friends": [ { "id": 0, "name": "Jill Fletcher" }, { "id": 1, "name": "Macias Jarvis" }, { "id": 2, "name": "Marva Hinton" } ], "greeting": "Hello, Lacey Guthrie! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28ddbe94cacce38f29", "index": 3685, "guid": "69cfa601-7cd0-4947-ae8d-79503fb46415", "isActive": true, "balance": "$3,289.04", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Francis Battle", "gender": "female", "company": "INSECTUS", "email": "francisbattle@insectus.com", "phone": "+1 (921) 540-2792", "address": "750 Linden Street, Herlong, Florida, 3114", "about": "Proident dolore ipsum sint proident ea irure irure. Laborum labore dolore tempor ipsum consequat occaecat est exercitation aute. Cupidatat occaecat sunt reprehenderit sint duis magna culpa deserunt velit id amet adipisicing ad.\r\n", "registered": "2014-03-12T11:13:38-13:00", "latitude": -46.631535, "longitude": -27.444429, "tags": [ "duis", "irure", "nisi", "officia", "sit", "id", "consequat" ], "friends": [ { "id": 0, "name": "Leticia Allen" }, { "id": 1, "name": "Leona Barrett" }, { "id": 2, "name": "Church Rojas" } ], "greeting": "Hello, Francis Battle! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28bedc354d06436a96", "index": 3686, "guid": "67bc4430-f8f2-447a-89fe-caa67afe7bab", "isActive": true, "balance": "$1,286.28", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Juliette Dotson", "gender": "female", "company": "INTERODEO", "email": "juliettedotson@interodeo.com", "phone": "+1 (817) 404-3701", "address": "960 Linwood Street, Madrid, North Carolina, 8611", "about": "Proident eu reprehenderit eiusmod ipsum adipisicing tempor excepteur mollit sint officia consequat ad. Ipsum et sint enim exercitation non consequat duis. Culpa ea elit ipsum pariatur cillum mollit aliqua proident culpa occaecat.\r\n", "registered": "2014-07-31T19:06:13-12:00", "latitude": -33.855661, "longitude": 57.845609, "tags": [ "laborum", "reprehenderit", "eiusmod", "sit", "tempor", "sunt", "exercitation" ], "friends": [ { "id": 0, "name": "Bennett Spence" }, { "id": 1, "name": "Fowler Burke" }, { "id": 2, "name": "Marcia Rosario" } ], "greeting": "Hello, Juliette Dotson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28d9655c8decba5662", "index": 3687, "guid": "3fa7a9db-bcee-4700-96f9-5fbcf64c448c", "isActive": false, "balance": "$1,043.50", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Charlotte Stephenson", "gender": "female", "company": "NETUR", "email": "charlottestephenson@netur.com", "phone": "+1 (983) 593-3491", "address": "978 Delmonico Place, Day, New Hampshire, 6113", "about": "Eu ipsum sint ut aliqua pariatur adipisicing enim eiusmod non sint quis. Aliquip laboris veniam minim elit commodo sit sit deserunt. Excepteur cupidatat pariatur ipsum eu reprehenderit exercitation amet sunt pariatur pariatur esse ad. Nulla pariatur non minim magna. Incididunt qui commodo veniam irure tempor commodo excepteur laborum. Exercitation velit do adipisicing exercitation esse et minim exercitation reprehenderit veniam in qui.\r\n", "registered": "2014-04-26T11:31:45-12:00", "latitude": -33.774706, "longitude": 152.754571, "tags": [ "cillum", "consectetur", "quis", "proident", "ullamco", "ipsum", "deserunt" ], "friends": [ { "id": 0, "name": "Castaneda Frederick" }, { "id": 1, "name": "Araceli Kirkland" }, { "id": 2, "name": "Pickett Wall" } ], "greeting": "Hello, Charlotte Stephenson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28df5b3410ea90eee3", "index": 3688, "guid": "194a96dc-1369-4e45-912f-ae7650f41fde", "isActive": false, "balance": "$2,734.77", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Rebecca Parsons", "gender": "female", "company": "WAZZU", "email": "rebeccaparsons@wazzu.com", "phone": "+1 (992) 499-3836", "address": "263 Battery Avenue, Tibbie, Arkansas, 9148", "about": "Ut quis reprehenderit sunt sunt est minim. Culpa aliquip id occaecat in ad eu aute. Minim incididunt occaecat qui pariatur incididunt cupidatat culpa consectetur ullamco occaecat. Duis irure enim dolore occaecat laborum ex excepteur nisi do aliquip aliqua irure proident exercitation. Exercitation consequat nisi veniam est nulla. Laborum Lorem veniam officia consequat culpa laboris reprehenderit elit enim amet quis consectetur. Velit culpa veniam aliqua tempor deserunt mollit.\r\n", "registered": "2014-02-06T16:47:19-13:00", "latitude": -71.629277, "longitude": 112.482355, "tags": [ "nostrud", "veniam", "mollit", "irure", "quis", "consectetur", "est" ], "friends": [ { "id": 0, "name": "Tabitha Curtis" }, { "id": 1, "name": "Owen Diaz" }, { "id": 2, "name": "Mcknight Henderson" } ], "greeting": "Hello, Rebecca Parsons! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28244b7984d7f5fa1e", "index": 3689, "guid": "da021ec0-8140-4b99-b487-5507c5c33bd8", "isActive": false, "balance": "$1,904.21", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Burton Fisher", "gender": "male", "company": "INSURITY", "email": "burtonfisher@insurity.com", "phone": "+1 (829) 484-3892", "address": "761 Campus Road, Newcastle, Iowa, 7501", "about": "Cupidatat qui minim do consequat aliquip cupidatat occaecat aliqua non ea nulla ipsum elit Lorem. Consectetur consectetur eu nostrud esse veniam veniam minim anim enim reprehenderit. Consequat Lorem ea qui esse ex dolor nostrud irure velit labore duis. Quis aliqua reprehenderit fugiat est non magna eiusmod veniam irure ex commodo.\r\n", "registered": "2014-08-24T02:48:58-12:00", "latitude": -51.296765, "longitude": -124.67005, "tags": [ "est", "et", "in", "et", "ad", "amet", "duis" ], "friends": [ { "id": 0, "name": "Little Forbes" }, { "id": 1, "name": "Emma Bass" }, { "id": 2, "name": "Mason Rowland" } ], "greeting": "Hello, Burton Fisher! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28d1395443676834a1", "index": 3690, "guid": "f78a63d9-d10d-4e1d-b4e3-b54720f07049", "isActive": true, "balance": "$1,590.48", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Bowen Horn", "gender": "male", "company": "FRENEX", "email": "bowenhorn@frenex.com", "phone": "+1 (957) 485-2999", "address": "372 Lester Court, Gilmore, Nebraska, 5001", "about": "Lorem pariatur Lorem adipisicing dolor magna magna do fugiat aute quis sunt laboris Lorem aute. Duis do nisi duis do minim aute ipsum Lorem culpa ullamco pariatur aliquip. Ut sunt sit proident mollit cupidatat ea duis non occaecat cillum laboris. Et laboris ad cupidatat quis nisi ex. Incididunt eiusmod ut do ea reprehenderit enim excepteur consectetur excepteur ut enim cupidatat.\r\n", "registered": "2014-06-10T01:40:42-12:00", "latitude": 25.996855, "longitude": 84.882443, "tags": [ "amet", "elit", "ipsum", "deserunt", "est", "aute", "in" ], "friends": [ { "id": 0, "name": "Rosario Yates" }, { "id": 1, "name": "Carolina Spears" }, { "id": 2, "name": "Cochran Hester" } ], "greeting": "Hello, Bowen Horn! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28328e64d8b9f26ff4", "index": 3691, "guid": "e0f8f394-55f4-43c4-a780-0a24dfbdb708", "isActive": true, "balance": "$1,825.21", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Alston Fernandez", "gender": "male", "company": "ZILLIDIUM", "email": "alstonfernandez@zillidium.com", "phone": "+1 (882) 432-3526", "address": "564 Schenck Place, Cataract, District Of Columbia, 2442", "about": "Amet non qui ea minim officia in ullamco laborum dolore voluptate. Reprehenderit occaecat commodo nisi tempor ea anim sit qui ex sit velit. Reprehenderit nostrud amet non tempor enim tempor ea commodo. Qui duis enim est Lorem elit aute laboris irure labore adipisicing labore. Pariatur aliquip aliquip consectetur non nostrud ea ullamco proident enim tempor.\r\n", "registered": "2014-05-01T16:55:04-12:00", "latitude": -5.956249, "longitude": 128.802961, "tags": [ "deserunt", "culpa", "tempor", "laborum", "enim", "Lorem", "magna" ], "friends": [ { "id": 0, "name": "Greer Sweeney" }, { "id": 1, "name": "Douglas Abbott" }, { "id": 2, "name": "Virgie Kane" } ], "greeting": "Hello, Alston Fernandez! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea280afcd64c81828e6a", "index": 3692, "guid": "29414499-cb5e-4fce-84fa-4aad0023cd35", "isActive": false, "balance": "$1,912.07", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Tiffany Clements", "gender": "female", "company": "COMBOGENE", "email": "tiffanyclements@combogene.com", "phone": "+1 (814) 569-2333", "address": "757 Hampton Avenue, Salvo, New Jersey, 2740", "about": "Non aute consectetur consectetur eu elit officia nulla ipsum exercitation cillum duis. Aliqua ad aliqua qui qui et adipisicing sunt sint. Incididunt in fugiat labore culpa ipsum qui commodo deserunt sint eiusmod commodo. Nisi ipsum velit veniam cupidatat. In eu nostrud dolore velit fugiat ad occaecat. Cupidatat nostrud nisi pariatur aliquip irure aliquip nisi.\r\n", "registered": "2014-03-27T20:45:14-13:00", "latitude": -17.825128, "longitude": -171.609028, "tags": [ "sit", "ut", "quis", "Lorem", "minim", "id", "dolore" ], "friends": [ { "id": 0, "name": "Moses Romero" }, { "id": 1, "name": "Jenkins Moore" }, { "id": 2, "name": "Merritt Adams" } ], "greeting": "Hello, Tiffany Clements! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f66153a74ef29dae", "index": 3693, "guid": "27d6c11f-843d-49dc-ab6c-cebaf6724984", "isActive": true, "balance": "$1,051.25", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Harper Mcfadden", "gender": "male", "company": "KOOGLE", "email": "harpermcfadden@koogle.com", "phone": "+1 (936) 497-2172", "address": "541 Monaco Place, Allison, Palau, 4098", "about": "Nisi magna ea id pariatur consectetur occaecat aliqua exercitation culpa consectetur anim reprehenderit irure. Cillum ipsum deserunt duis cupidatat veniam ut reprehenderit laborum aliqua cillum mollit. Officia duis id duis proident veniam labore. Irure duis in irure labore.\r\n", "registered": "2014-07-13T02:05:35-12:00", "latitude": -1.336238, "longitude": 149.566269, "tags": [ "consequat", "est", "velit", "eu", "velit", "aliquip", "veniam" ], "friends": [ { "id": 0, "name": "Boyer Clarke" }, { "id": 1, "name": "Ferguson Church" }, { "id": 2, "name": "Compton David" } ], "greeting": "Hello, Harper Mcfadden! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea285a8576c6ef93fc17", "index": 3694, "guid": "92300123-9998-40e5-8198-cb17f6aaa265", "isActive": true, "balance": "$2,957.70", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Elisabeth Mcdonald", "gender": "female", "company": "INTRADISK", "email": "elisabethmcdonald@intradisk.com", "phone": "+1 (872) 506-3848", "address": "817 Duffield Street, Mapletown, Puerto Rico, 5006", "about": "Ullamco voluptate culpa anim officia aute ea ipsum dolor do. Amet nostrud ea aliqua ex ea ad cillum officia enim culpa do. Sit duis laborum officia magna enim laborum labore aliqua esse laborum labore. Proident ea esse labore dolore officia commodo ullamco officia elit. Consectetur voluptate elit labore nostrud elit pariatur et esse. Deserunt aute qui velit et mollit sunt aliquip ipsum aliqua voluptate cillum. Ex reprehenderit incididunt ullamco aliqua fugiat consequat excepteur irure veniam.\r\n", "registered": "2014-03-29T12:08:30-13:00", "latitude": -17.100725, "longitude": -51.946488, "tags": [ "pariatur", "deserunt", "occaecat", "et", "magna", "nisi", "sint" ], "friends": [ { "id": 0, "name": "Vicki Lindsay" }, { "id": 1, "name": "Foreman Key" }, { "id": 2, "name": "Lorrie Murray" } ], "greeting": "Hello, Elisabeth Mcdonald! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28ea14c56aa4591c1a", "index": 3695, "guid": "cc108ac9-d38f-4992-9178-5274d5b8a4f3", "isActive": true, "balance": "$3,706.16", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Lessie Phelps", "gender": "female", "company": "ZENTURY", "email": "lessiephelps@zentury.com", "phone": "+1 (975) 535-3868", "address": "788 Union Street, Chapin, California, 9314", "about": "Qui exercitation esse Lorem qui minim mollit ad ipsum laboris ullamco consequat consectetur eiusmod laborum. Nostrud duis deserunt Lorem minim nulla nisi ipsum ullamco deserunt nostrud. Incididunt velit ut et sit sint cillum voluptate duis nulla dolore quis labore amet est. Exercitation tempor nostrud excepteur irure aliquip ex veniam labore deserunt proident cupidatat mollit enim duis. In in est dolor proident ex commodo ea pariatur duis aute. Lorem est non veniam laborum occaecat nostrud incididunt.\r\n", "registered": "2014-02-26T15:07:34-13:00", "latitude": 46.32809, "longitude": -6.717069, "tags": [ "non", "irure", "deserunt", "aliqua", "esse", "esse", "irure" ], "friends": [ { "id": 0, "name": "Kidd Wolf" }, { "id": 1, "name": "Caitlin Hooper" }, { "id": 2, "name": "Georgina Mills" } ], "greeting": "Hello, Lessie Phelps! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28bb480c969a1a2933", "index": 3696, "guid": "41eeeed1-e80d-47bf-ae02-097acb9f0bfc", "isActive": false, "balance": "$3,166.55", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Matilda Middleton", "gender": "female", "company": "MIRACULA", "email": "matildamiddleton@miracula.com", "phone": "+1 (920) 441-3938", "address": "184 Tapscott Street, Glasgow, Vermont, 2747", "about": "Adipisicing exercitation voluptate consectetur laboris in deserunt deserunt excepteur nostrud et labore commodo laboris qui. Aliquip enim ut et eiusmod cupidatat irure. Non labore laborum id aliquip dolore aute veniam pariatur magna. Esse exercitation sint in amet ex labore. Nostrud ex officia ex velit aliqua nulla deserunt. Irure ad irure proident adipisicing aliqua ut quis Lorem minim dolor sint sint aute. Reprehenderit mollit id nulla ut esse quis velit anim anim voluptate.\r\n", "registered": "2014-03-22T01:50:02-13:00", "latitude": -31.398543, "longitude": -154.88558, "tags": [ "laboris", "do", "anim", "Lorem", "velit", "occaecat", "occaecat" ], "friends": [ { "id": 0, "name": "Stein Hawkins" }, { "id": 1, "name": "Mcdowell Norris" }, { "id": 2, "name": "Catalina Rich" } ], "greeting": "Hello, Matilda Middleton! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea282e3b5c28cde19114", "index": 3697, "guid": "485bb1b6-833d-4443-8bac-b84929177297", "isActive": false, "balance": "$3,541.34", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Collins Cervantes", "gender": "male", "company": "VINCH", "email": "collinscervantes@vinch.com", "phone": "+1 (976) 567-3329", "address": "447 Lloyd Street, Cleary, Indiana, 7769", "about": "Voluptate nisi laboris pariatur occaecat laboris enim. Nisi magna culpa cillum non occaecat deserunt anim. Eu id non elit consectetur ex.\r\n", "registered": "2014-01-21T11:20:15-13:00", "latitude": 72.031215, "longitude": 63.724865, "tags": [ "aute", "labore", "dolore", "consequat", "officia", "minim", "labore" ], "friends": [ { "id": 0, "name": "Foley Campbell" }, { "id": 1, "name": "Dale Mcfarland" }, { "id": 2, "name": "Carey Beach" } ], "greeting": "Hello, Collins Cervantes! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea283162937ce6726dac", "index": 3698, "guid": "c05733d1-2a19-4cb6-bce9-e3c6c2bf477e", "isActive": false, "balance": "$2,384.93", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Hansen Vaughn", "gender": "male", "company": "NETILITY", "email": "hansenvaughn@netility.com", "phone": "+1 (868) 437-3107", "address": "699 Monument Walk, Logan, Illinois, 6555", "about": "Quis aute dolore laborum pariatur occaecat aute mollit ipsum irure enim tempor fugiat exercitation deserunt. Non elit ullamco adipisicing anim mollit fugiat excepteur occaecat laboris occaecat dolore in esse. Nostrud non aliquip aute fugiat non ea voluptate fugiat aliqua. Quis cillum cillum magna ea. Eu mollit id nostrud officia non quis pariatur anim esse tempor excepteur fugiat velit.\r\n", "registered": "2014-02-23T19:33:28-13:00", "latitude": -22.427552, "longitude": 65.126397, "tags": [ "aliquip", "nulla", "quis", "occaecat", "in", "culpa", "excepteur" ], "friends": [ { "id": 0, "name": "Lavonne Ashley" }, { "id": 1, "name": "Jeanine Chandler" }, { "id": 2, "name": "Rochelle Vaughan" } ], "greeting": "Hello, Hansen Vaughn! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea284eae7b1ee6e542fa", "index": 3699, "guid": "49b3e50f-018c-45c5-a133-14a097a95905", "isActive": false, "balance": "$3,802.58", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Grace Robbins", "gender": "female", "company": "ESCENTA", "email": "gracerobbins@escenta.com", "phone": "+1 (838) 421-3513", "address": "689 Holly Street, Cumminsville, South Carolina, 7089", "about": "Ea est velit tempor magna. Labore dolor exercitation ut esse esse minim exercitation laboris commodo occaecat et. Reprehenderit laborum anim consequat incididunt eu aute.\r\n", "registered": "2014-05-13T21:22:29-12:00", "latitude": -20.514574, "longitude": 117.119473, "tags": [ "commodo", "cillum", "quis", "laboris", "laborum", "aliquip", "ipsum" ], "friends": [ { "id": 0, "name": "Erin Levine" }, { "id": 1, "name": "Mullen Combs" }, { "id": 2, "name": "Jo Schwartz" } ], "greeting": "Hello, Grace Robbins! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28a6cdaf8483a6fefe", "index": 3700, "guid": "63552bf9-06e6-4ec5-8904-3108528d4bdb", "isActive": true, "balance": "$3,043.11", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Dillon Sims", "gender": "male", "company": "MEDCOM", "email": "dillonsims@medcom.com", "phone": "+1 (863) 497-3966", "address": "764 Arlington Place, Ola, American Samoa, 9654", "about": "Duis labore consectetur voluptate ullamco eu id dolore aliqua officia tempor ipsum duis veniam esse. Occaecat voluptate non id nisi amet esse eiusmod. Ullamco ex officia veniam commodo velit ipsum non magna enim dolore ea mollit ad dolore. Amet labore ex deserunt qui nostrud dolor veniam aliqua proident dolore. Qui ullamco laboris magna ullamco proident do dolore. Mollit ad sint consectetur ad duis dolore cupidatat cillum sunt labore cillum elit amet.\r\n", "registered": "2014-01-20T09:30:43-13:00", "latitude": 74.11854, "longitude": 29.520712, "tags": [ "consectetur", "proident", "id", "adipisicing", "cupidatat", "voluptate", "laborum" ], "friends": [ { "id": 0, "name": "Taylor Maxwell" }, { "id": 1, "name": "Cleveland Talley" }, { "id": 2, "name": "Fitzgerald Knowles" } ], "greeting": "Hello, Dillon Sims! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea281ccdd6689b8e83c0", "index": 3701, "guid": "1ec21128-2e08-4fe8-b626-d19d2f922c99", "isActive": false, "balance": "$1,719.22", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Kayla Green", "gender": "female", "company": "SPACEWAX", "email": "kaylagreen@spacewax.com", "phone": "+1 (967) 566-2956", "address": "137 Billings Place, Enoree, Delaware, 7671", "about": "Ad incididunt eu esse aliquip. Minim laborum eiusmod duis minim sit fugiat fugiat magna cillum cupidatat id irure. Consectetur veniam qui laboris mollit adipisicing. Sint est consectetur velit in occaecat.\r\n", "registered": "2014-01-02T00:53:53-13:00", "latitude": -34.259314, "longitude": -17.153865, "tags": [ "qui", "proident", "veniam", "id", "quis", "labore", "quis" ], "friends": [ { "id": 0, "name": "Graham Gutierrez" }, { "id": 1, "name": "Amie Rivers" }, { "id": 2, "name": "Marks Garner" } ], "greeting": "Hello, Kayla Green! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea281e097c42dafcf64e", "index": 3702, "guid": "21dbced6-06d8-4d21-99d9-57703dd12962", "isActive": false, "balance": "$1,878.45", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Bernice Mann", "gender": "female", "company": "LOVEPAD", "email": "bernicemann@lovepad.com", "phone": "+1 (843) 497-2204", "address": "225 Rose Street, Malo, Pennsylvania, 6165", "about": "Ipsum minim proident ex ea ullamco quis minim culpa ea sint culpa laboris laborum. Dolore officia officia enim fugiat consectetur consequat fugiat id occaecat aute. Do in nisi laboris nulla occaecat sunt in et nostrud id nostrud culpa enim. Proident nisi velit culpa nisi reprehenderit amet proident. Consequat aute laborum nulla eiusmod.\r\n", "registered": "2014-01-21T19:45:00-13:00", "latitude": -66.746527, "longitude": 16.054142, "tags": [ "dolore", "id", "elit", "magna", "ea", "nulla", "pariatur" ], "friends": [ { "id": 0, "name": "Jenny Harvey" }, { "id": 1, "name": "Randi Pollard" }, { "id": 2, "name": "Aisha Davenport" } ], "greeting": "Hello, Bernice Mann! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea281ee875d81cf82535", "index": 3703, "guid": "ba141f38-285f-4768-96fb-589fa026b8bc", "isActive": false, "balance": "$3,126.97", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Viola Norton", "gender": "female", "company": "MYOPIUM", "email": "violanorton@myopium.com", "phone": "+1 (882) 584-3302", "address": "728 Ocean Avenue, Twilight, Georgia, 6923", "about": "Reprehenderit quis consectetur elit magna sint deserunt ex esse nulla laboris non. Eu consequat ut amet dolore ut ex sit mollit consequat veniam elit eu. Eiusmod velit cupidatat voluptate deserunt in irure tempor quis laboris ea cillum dolor velit. Dolore qui do reprehenderit aute aute tempor mollit enim enim pariatur officia in esse consequat.\r\n", "registered": "2014-02-27T00:59:17-13:00", "latitude": 57.725743, "longitude": 36.27456, "tags": [ "proident", "dolor", "reprehenderit", "sint", "cillum", "ea", "ex" ], "friends": [ { "id": 0, "name": "Tamra Mendez" }, { "id": 1, "name": "Freeman George" }, { "id": 2, "name": "Hart Park" } ], "greeting": "Hello, Viola Norton! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2883819b192a4629e1", "index": 3704, "guid": "09ee8012-d14e-4d5c-a430-3512735698c7", "isActive": false, "balance": "$1,039.21", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Jana Kerr", "gender": "female", "company": "DIGIQUE", "email": "janakerr@digique.com", "phone": "+1 (983) 521-3098", "address": "619 Richards Street, Montura, North Dakota, 5067", "about": "Aute et qui deserunt velit tempor veniam laborum excepteur nulla. Cillum exercitation non laboris nostrud fugiat labore cupidatat esse do. Ipsum mollit elit id cupidatat eiusmod exercitation cupidatat tempor. Et mollit adipisicing tempor laborum pariatur id qui id exercitation qui ad. Anim eu minim pariatur aliqua eiusmod fugiat pariatur sit.\r\n", "registered": "2014-03-14T00:53:07-13:00", "latitude": -20.395043, "longitude": -169.318301, "tags": [ "commodo", "laboris", "nostrud", "est", "ex", "non", "qui" ], "friends": [ { "id": 0, "name": "Carr Roberts" }, { "id": 1, "name": "Olsen Holder" }, { "id": 2, "name": "Constance Rollins" } ], "greeting": "Hello, Jana Kerr! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28e26036ff3eb77128", "index": 3705, "guid": "7e464643-aa9f-4258-83be-fb1aa3c0e151", "isActive": false, "balance": "$3,940.10", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Herman Gonzalez", "gender": "male", "company": "SULTRAXIN", "email": "hermangonzalez@sultraxin.com", "phone": "+1 (948) 568-2603", "address": "268 Granite Street, Toftrees, Louisiana, 1752", "about": "Irure ad tempor laborum ea sit enim consectetur incididunt anim ex incididunt nisi. Duis quis cupidatat magna veniam ipsum irure tempor. Voluptate in velit laborum deserunt. Non voluptate magna commodo duis consequat velit esse velit minim anim nostrud minim deserunt.\r\n", "registered": "2014-03-06T09:03:20-13:00", "latitude": 0.44832, "longitude": -174.296123, "tags": [ "irure", "exercitation", "dolore", "dolore", "adipisicing", "reprehenderit", "sunt" ], "friends": [ { "id": 0, "name": "Camille Gonzales" }, { "id": 1, "name": "Christine Dickson" }, { "id": 2, "name": "Alma Jordan" } ], "greeting": "Hello, Herman Gonzalez! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea284cb97d6065b32b0f", "index": 3706, "guid": "268b40c8-2f33-4a4e-8720-4e0ae8c0daa8", "isActive": true, "balance": "$1,129.70", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Katheryn Herman", "gender": "female", "company": "HOMETOWN", "email": "katherynherman@hometown.com", "phone": "+1 (828) 525-3690", "address": "227 Crystal Street, Roderfield, Northern Mariana Islands, 947", "about": "Fugiat non velit ad consectetur qui est aute est aliquip nostrud. In et laboris nisi sit minim sit incididunt occaecat id reprehenderit. Ea occaecat minim velit est et aliquip ad ad eu irure est ad pariatur. Do ea cillum quis ad sunt ipsum sint reprehenderit qui officia consequat magna ullamco.\r\n", "registered": "2014-08-16T11:38:09-12:00", "latitude": -16.182137, "longitude": 147.111379, "tags": [ "incididunt", "eiusmod", "velit", "ullamco", "aliqua", "sint", "est" ], "friends": [ { "id": 0, "name": "Lorena Mcmahon" }, { "id": 1, "name": "Oconnor Frost" }, { "id": 2, "name": "Barry Dale" } ], "greeting": "Hello, Katheryn Herman! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28f652eee0d8517549", "index": 3707, "guid": "f4e2a2e4-671b-498e-a234-3efef2a9abf2", "isActive": true, "balance": "$2,418.42", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Carrillo Taylor", "gender": "male", "company": "ZILPHUR", "email": "carrillotaylor@zilphur.com", "phone": "+1 (931) 506-2629", "address": "857 Nevins Street, Tioga, Colorado, 9741", "about": "Aute eiusmod aliquip veniam aute culpa ut cillum. Fugiat aliquip ut excepteur anim eiusmod dolor ut mollit irure. Anim nisi sit sint tempor irure nostrud do eiusmod quis labore cupidatat mollit officia. Irure sunt laborum exercitation reprehenderit laboris exercitation deserunt sunt et ex. Deserunt commodo consequat sint culpa aute nostrud qui ad. Consectetur duis aliquip esse sunt ut non Lorem.\r\n", "registered": "2014-08-03T21:15:35-12:00", "latitude": 43.019508, "longitude": 59.300433, "tags": [ "laborum", "anim", "sint", "ea", "irure", "occaecat", "culpa" ], "friends": [ { "id": 0, "name": "Hoffman Kirby" }, { "id": 1, "name": "Latasha Hale" }, { "id": 2, "name": "Cooley Ballard" } ], "greeting": "Hello, Carrillo Taylor! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea289c0d6b8cf7f0a616", "index": 3708, "guid": "24478e9e-7071-4b38-a4cd-14b9d1d2d23d", "isActive": false, "balance": "$2,953.62", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Poole Daugherty", "gender": "male", "company": "MAZUDA", "email": "pooledaugherty@mazuda.com", "phone": "+1 (829) 440-2957", "address": "559 Centre Street, Abiquiu, Idaho, 6023", "about": "Reprehenderit consectetur anim aliquip cupidatat ipsum aliqua deserunt exercitation minim eu consectetur est nulla nisi. Nisi nulla consequat irure occaecat cillum ex deserunt officia cillum excepteur. Ea tempor velit elit proident. Sunt consequat nisi laborum mollit elit sint dolore eu dolore excepteur sunt adipisicing ea laboris. Minim aute dolore id Lorem amet.\r\n", "registered": "2014-06-23T19:53:28-12:00", "latitude": 78.623425, "longitude": -174.512515, "tags": [ "incididunt", "dolore", "do", "consectetur", "proident", "deserunt", "excepteur" ], "friends": [ { "id": 0, "name": "Terra Cobb" }, { "id": 1, "name": "Angelina Phillips" }, { "id": 2, "name": "Wilson Savage" } ], "greeting": "Hello, Poole Daugherty! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea288a0b819661bd1c07", "index": 3709, "guid": "578b79f5-45e3-461b-a836-4bf58c6616f3", "isActive": true, "balance": "$3,093.58", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Janelle Maynard", "gender": "female", "company": "ZILLADYNE", "email": "janellemaynard@zilladyne.com", "phone": "+1 (954) 401-2117", "address": "379 Ash Street, Summertown, Marshall Islands, 7572", "about": "Adipisicing veniam aliquip enim cillum est et. Fugiat pariatur in pariatur occaecat. Aute voluptate consectetur magna cupidatat sunt sit do non ea proident sint ea ea sunt. Nisi eiusmod elit est reprehenderit irure pariatur officia sunt.\r\n", "registered": "2014-05-24T22:37:26-12:00", "latitude": 32.060849, "longitude": -150.080171, "tags": [ "mollit", "commodo", "laboris", "laborum", "consectetur", "sunt", "eiusmod" ], "friends": [ { "id": 0, "name": "Howe Colon" }, { "id": 1, "name": "Dorothea Pickett" }, { "id": 2, "name": "Franks Foley" } ], "greeting": "Hello, Janelle Maynard! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea285a6c17f445ae1bcb", "index": 3710, "guid": "d302ab44-ade4-4dc0-bdd2-ebafbfbdb19b", "isActive": false, "balance": "$3,276.10", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Maldonado Harding", "gender": "male", "company": "ACCIDENCY", "email": "maldonadoharding@accidency.com", "phone": "+1 (859) 430-2971", "address": "780 Durland Place, Villarreal, New York, 6012", "about": "Consectetur incididunt voluptate nisi aliqua amet velit quis reprehenderit. Veniam irure labore laboris ut nulla esse. Labore ullamco nulla qui occaecat do est. Consectetur anim id ipsum sunt Lorem non consequat ad ullamco. Lorem ad tempor dolor cillum deserunt aliqua veniam ex pariatur culpa mollit aute duis. Dolor sint voluptate anim nisi. Cillum exercitation est aliqua aute.\r\n", "registered": "2014-01-03T10:19:41-13:00", "latitude": -81.922796, "longitude": 88.083678, "tags": [ "exercitation", "est", "aliquip", "nulla", "deserunt", "pariatur", "ea" ], "friends": [ { "id": 0, "name": "Alexandra Ball" }, { "id": 1, "name": "Logan Walker" }, { "id": 2, "name": "Mcdonald Ferguson" } ], "greeting": "Hello, Maldonado Harding! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea286772560ade84caa2", "index": 3711, "guid": "151d97eb-033b-403a-bf29-063cc4879a04", "isActive": false, "balance": "$3,198.22", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Horne Townsend", "gender": "male", "company": "ISOTRONIC", "email": "hornetownsend@isotronic.com", "phone": "+1 (852) 552-3062", "address": "838 Himrod Street, Coaldale, Guam, 8539", "about": "Officia laborum dolor Lorem duis ut sint fugiat minim commodo reprehenderit laboris. Ad adipisicing ea eu culpa ut cupidatat veniam consequat. Duis sint occaecat do ut exercitation aliquip irure officia dolore laboris. Duis sit ut excepteur velit duis mollit deserunt pariatur ut laborum fugiat. Nostrud duis dolore consectetur Lorem sit adipisicing ad aliqua.\r\n", "registered": "2014-03-28T18:35:07-13:00", "latitude": 82.261491, "longitude": -48.44401, "tags": [ "qui", "nostrud", "officia", "deserunt", "laborum", "amet", "laboris" ], "friends": [ { "id": 0, "name": "Ellis Knight" }, { "id": 1, "name": "Daniels Reynolds" }, { "id": 2, "name": "Rodriguez Dunn" } ], "greeting": "Hello, Horne Townsend! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea282dc3614c0aa6ea2c", "index": 3712, "guid": "5121978c-a71e-4879-bdcf-2b441c3b00da", "isActive": true, "balance": "$3,030.52", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Valencia Graham", "gender": "male", "company": "INTERFIND", "email": "valenciagraham@interfind.com", "phone": "+1 (993) 460-3391", "address": "516 Bergen Street, Choctaw, Virgin Islands, 3327", "about": "Eu sint incididunt fugiat ipsum sint et incididunt ut esse officia irure. Excepteur laboris non occaecat culpa sint deserunt do. Non laboris adipisicing cillum ullamco in do aliqua reprehenderit aute culpa esse ut sint. Lorem sunt nulla nulla cillum dolor ipsum.\r\n", "registered": "2014-02-12T00:00:20-13:00", "latitude": -2.071695, "longitude": -168.456005, "tags": [ "ut", "amet", "id", "Lorem", "adipisicing", "proident", "ex" ], "friends": [ { "id": 0, "name": "Knight Vincent" }, { "id": 1, "name": "Warren Ellison" }, { "id": 2, "name": "Jarvis Armstrong" } ], "greeting": "Hello, Valencia Graham! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28ec7d02d15e970443", "index": 3713, "guid": "a13dfbe8-0bf6-4f3f-8289-99033ae6893c", "isActive": false, "balance": "$1,208.17", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Battle Reid", "gender": "male", "company": "ECRATER", "email": "battlereid@ecrater.com", "phone": "+1 (997) 528-3593", "address": "181 Conselyea Street, Dundee, Massachusetts, 1361", "about": "Nostrud pariatur tempor ut fugiat nisi voluptate pariatur fugiat ad laborum. Qui velit nostrud ad ea esse consectetur in ex. Esse ex exercitation cupidatat non laborum quis pariatur cillum eiusmod enim ex non ipsum culpa. Est adipisicing ullamco pariatur ea proident. Commodo officia occaecat amet ea mollit et. Incididunt ad tempor culpa excepteur laboris officia excepteur.\r\n", "registered": "2014-08-27T02:56:34-12:00", "latitude": 73.989218, "longitude": 74.475488, "tags": [ "officia", "proident", "sit", "officia", "duis", "sit", "veniam" ], "friends": [ { "id": 0, "name": "Johnnie Sears" }, { "id": 1, "name": "Cole Anthony" }, { "id": 2, "name": "Gay Myers" } ], "greeting": "Hello, Battle Reid! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2839700fb4dace0cab", "index": 3714, "guid": "b0a225ef-183d-4c6c-9621-00b5453f4585", "isActive": false, "balance": "$3,509.61", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Bessie Raymond", "gender": "female", "company": "RONELON", "email": "bessieraymond@ronelon.com", "phone": "+1 (946) 593-2521", "address": "310 Gem Street, Caledonia, Utah, 8194", "about": "Aute cillum aliqua elit non incididunt nisi mollit adipisicing. Deserunt officia proident commodo ad nostrud officia ipsum aliqua culpa culpa occaecat ea. Pariatur dolore magna ipsum nostrud cupidatat cillum duis amet. Eu enim nisi duis commodo amet. Ex ipsum eu tempor pariatur culpa aliquip ut nostrud.\r\n", "registered": "2014-01-15T10:52:30-13:00", "latitude": -52.445599, "longitude": -45.464375, "tags": [ "nulla", "occaecat", "ut", "aute", "veniam", "sint", "elit" ], "friends": [ { "id": 0, "name": "French Golden" }, { "id": 1, "name": "Alissa Roy" }, { "id": 2, "name": "Vivian Clemons" } ], "greeting": "Hello, Bessie Raymond! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea280079a1ce83e1ca47", "index": 3715, "guid": "7461eaae-4512-4b25-b060-79ceae614dae", "isActive": true, "balance": "$1,883.40", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Cara England", "gender": "female", "company": "QUIZMO", "email": "caraengland@quizmo.com", "phone": "+1 (874) 579-3188", "address": "183 Hale Avenue, Barronett, Montana, 7921", "about": "Ut fugiat minim est aliqua velit aliqua irure nisi proident dolor anim exercitation aute. Laboris enim nisi est minim ex minim ut anim ad commodo. Enim reprehenderit quis laborum veniam labore magna pariatur est. Eiusmod cupidatat minim anim adipisicing ipsum amet reprehenderit ut.\r\n", "registered": "2014-05-18T12:46:03-12:00", "latitude": 66.612722, "longitude": 64.961272, "tags": [ "quis", "labore", "laboris", "labore", "ex", "id", "enim" ], "friends": [ { "id": 0, "name": "Ashley Reyes" }, { "id": 1, "name": "Olson Shields" }, { "id": 2, "name": "Helene Tillman" } ], "greeting": "Hello, Cara England! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea285fb617114106ee90", "index": 3716, "guid": "8474bf1f-2a17-4a10-b8f1-261c91ac4635", "isActive": false, "balance": "$1,793.97", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Ware Valentine", "gender": "male", "company": "POOCHIES", "email": "warevalentine@poochies.com", "phone": "+1 (842) 455-2985", "address": "663 Bokee Court, Hinsdale, Wisconsin, 6297", "about": "In exercitation commodo laborum voluptate magna ad in. Voluptate fugiat cupidatat sint do elit officia proident irure magna dolore et. Duis nulla anim in laboris elit ex proident reprehenderit proident irure laborum sit velit aliqua. Eiusmod esse consectetur non commodo Lorem quis.\r\n", "registered": "2014-05-04T23:01:26-12:00", "latitude": -29.035384, "longitude": 145.569123, "tags": [ "ex", "ut", "est", "ipsum", "voluptate", "reprehenderit", "quis" ], "friends": [ { "id": 0, "name": "Hobbs Edwards" }, { "id": 1, "name": "Bond Shelton" }, { "id": 2, "name": "Frazier Soto" } ], "greeting": "Hello, Ware Valentine! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28185c8de713845763", "index": 3717, "guid": "8182fcb0-d8cb-42e2-a743-492f363be506", "isActive": true, "balance": "$1,111.67", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Eva Mccall", "gender": "female", "company": "VETRON", "email": "evamccall@vetron.com", "phone": "+1 (940) 561-3433", "address": "103 Harrison Avenue, Whitmer, Maine, 6598", "about": "Officia eiusmod nisi aute anim amet adipisicing consectetur pariatur sunt non velit veniam veniam excepteur. Velit enim incididunt consectetur minim cillum enim velit ut eu dolor velit adipisicing. Ut mollit dolore occaecat voluptate aute irure deserunt et aliqua reprehenderit qui. In aliqua ea amet ut ad incididunt consequat commodo ipsum veniam adipisicing. Amet labore ad minim ullamco non culpa consectetur cillum amet.\r\n", "registered": "2014-03-01T21:44:00-13:00", "latitude": 75.616928, "longitude": 130.44414, "tags": [ "non", "minim", "non", "elit", "commodo", "proident", "sint" ], "friends": [ { "id": 0, "name": "Sweet Strong" }, { "id": 1, "name": "Concepcion Brown" }, { "id": 2, "name": "Hawkins Gregory" } ], "greeting": "Hello, Eva Mccall! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea288187bf4191a1fda7", "index": 3718, "guid": "09e4d472-1a8a-416b-8fc1-0b4182b34b59", "isActive": false, "balance": "$2,073.92", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Mcleod Mccoy", "gender": "male", "company": "IDEALIS", "email": "mcleodmccoy@idealis.com", "phone": "+1 (803) 509-3797", "address": "517 Calder Place, Summerfield, Virginia, 7476", "about": "Ad id anim tempor incididunt. Velit officia nulla veniam sit. Consequat officia Lorem cupidatat labore et ut dolore consectetur eu. Elit esse enim nulla pariatur officia ad proident enim exercitation incididunt minim officia fugiat proident. Nostrud esse sunt proident quis Lorem dolore mollit sunt aliqua in quis. Excepteur proident id qui incididunt adipisicing dolore officia laborum ipsum est consequat culpa in. Incididunt non pariatur qui et ipsum non anim labore consequat et esse non.\r\n", "registered": "2014-09-03T07:45:29-12:00", "latitude": -58.931535, "longitude": -167.724617, "tags": [ "ut", "quis", "amet", "quis", "elit", "minim", "est" ], "friends": [ { "id": 0, "name": "Osborn Mcconnell" }, { "id": 1, "name": "Buchanan Collier" }, { "id": 2, "name": "Moss Baxter" } ], "greeting": "Hello, Mcleod Mccoy! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28fb6a70ab2161b9dc", "index": 3719, "guid": "ac2faad3-ca58-425f-804b-d8584527a850", "isActive": true, "balance": "$2,334.01", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Villarreal Blake", "gender": "male", "company": "ZOLAVO", "email": "villarrealblake@zolavo.com", "phone": "+1 (829) 558-2378", "address": "611 Amber Street, Boomer, Kentucky, 7345", "about": "Laboris quis aute nisi pariatur sit consequat aute qui fugiat aliqua sint. Laborum dolore occaecat ipsum proident reprehenderit ut laboris fugiat quis eiusmod nisi ullamco. Aute aliqua consectetur occaecat culpa id voluptate nostrud laborum mollit sint pariatur. Mollit reprehenderit qui culpa tempor.\r\n", "registered": "2014-07-18T03:43:10-12:00", "latitude": -69.043579, "longitude": 48.237981, "tags": [ "sit", "est", "aute", "enim", "proident", "id", "enim" ], "friends": [ { "id": 0, "name": "Betty Lancaster" }, { "id": 1, "name": "Weiss Donovan" }, { "id": 2, "name": "Rowland Jenkins" } ], "greeting": "Hello, Villarreal Blake! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea282f201317d02b3da1", "index": 3720, "guid": "89712a7d-a2dd-4376-9519-484751663800", "isActive": false, "balance": "$1,933.08", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Priscilla Pate", "gender": "female", "company": "PULZE", "email": "priscillapate@pulze.com", "phone": "+1 (815) 502-3549", "address": "447 Court Square, Connerton, Connecticut, 1409", "about": "Fugiat tempor fugiat reprehenderit dolor eu veniam amet ut commodo ex cupidatat reprehenderit reprehenderit. Occaecat exercitation eiusmod veniam minim veniam labore irure pariatur. Sunt non proident eu laborum fugiat ad officia ex velit aliqua mollit consectetur. Laboris dolore do tempor cillum ex.\r\n", "registered": "2014-07-21T18:17:11-12:00", "latitude": -65.678755, "longitude": -109.078023, "tags": [ "minim", "fugiat", "duis", "Lorem", "aliqua", "voluptate", "non" ], "friends": [ { "id": 0, "name": "Jeanie Velez" }, { "id": 1, "name": "Autumn Higgins" }, { "id": 2, "name": "Monica Berry" } ], "greeting": "Hello, Priscilla Pate! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28bd27ebac9704ae04", "index": 3721, "guid": "e144f35a-98a9-47d4-b804-91a756854fda", "isActive": true, "balance": "$1,657.96", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Laurie Peterson", "gender": "female", "company": "ZENTIME", "email": "lauriepeterson@zentime.com", "phone": "+1 (973) 409-3787", "address": "278 Manor Court, Volta, Mississippi, 3888", "about": "Incididunt Lorem ullamco ea ad sit in reprehenderit eiusmod mollit. Est nisi nulla exercitation labore in officia anim do sint officia dolore amet amet. Mollit enim cillum ullamco est esse. Sint commodo minim veniam aliquip labore mollit enim cupidatat labore qui. Velit veniam reprehenderit aute fugiat fugiat sit consectetur. Non sint ex do sint pariatur amet exercitation minim mollit ex laboris adipisicing.\r\n", "registered": "2014-03-09T02:43:00-13:00", "latitude": 28.336149, "longitude": 150.221822, "tags": [ "nisi", "voluptate", "excepteur", "sit", "aliquip", "proident", "ex" ], "friends": [ { "id": 0, "name": "Rosalie Solomon" }, { "id": 1, "name": "Barbra Nixon" }, { "id": 2, "name": "Scott Fulton" } ], "greeting": "Hello, Laurie Peterson! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28603a4b709a73379c", "index": 3722, "guid": "3e59203a-c3be-4944-8073-74bb8a3f2573", "isActive": false, "balance": "$2,328.87", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Cote Roberson", "gender": "male", "company": "CONFERIA", "email": "coteroberson@conferia.com", "phone": "+1 (875) 546-3385", "address": "791 Noble Street, Camptown, Washington, 692", "about": "Enim officia proident officia reprehenderit eu consequat eiusmod voluptate laborum aliquip fugiat. Exercitation elit nostrud duis elit commodo dolor do. Id labore reprehenderit id ad commodo cillum velit qui duis officia.\r\n", "registered": "2014-04-29T13:17:49-12:00", "latitude": 26.69054, "longitude": 164.102566, "tags": [ "voluptate", "nulla", "fugiat", "Lorem", "do", "cupidatat", "duis" ], "friends": [ { "id": 0, "name": "Marguerite Stuart" }, { "id": 1, "name": "Peggy Chambers" }, { "id": 2, "name": "Esmeralda Ellis" } ], "greeting": "Hello, Cote Roberson! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28a6a2c9d4a5787e2b", "index": 3723, "guid": "4522691b-ca14-4472-a616-bb3dc4cf33d6", "isActive": true, "balance": "$1,847.23", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Burgess Lambert", "gender": "male", "company": "ACCUSAGE", "email": "burgesslambert@accusage.com", "phone": "+1 (872) 503-2769", "address": "848 Jefferson Avenue, Forbestown, Tennessee, 9303", "about": "Nulla eiusmod sit enim in mollit veniam est esse fugiat esse. Lorem cillum anim voluptate incididunt sint id eiusmod anim qui ex incididunt. Qui ad labore commodo pariatur.\r\n", "registered": "2014-04-18T18:44:42-12:00", "latitude": 7.142071, "longitude": 19.861902, "tags": [ "laborum", "anim", "est", "officia", "dolore", "commodo", "ad" ], "friends": [ { "id": 0, "name": "Miranda Guerra" }, { "id": 1, "name": "Colon Stevens" }, { "id": 2, "name": "Sanders Hunt" } ], "greeting": "Hello, Burgess Lambert! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2862748b9d63edf19f", "index": 3724, "guid": "8ecc6107-2872-4ada-a01a-01a36cfe79e0", "isActive": false, "balance": "$3,466.48", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Beryl Guzman", "gender": "female", "company": "COMVEYOR", "email": "berylguzman@comveyor.com", "phone": "+1 (818) 464-2360", "address": "939 Havemeyer Street, Felt, Alabama, 8142", "about": "Nisi fugiat proident officia aliqua dolor nostrud laboris aute sunt enim tempor. Aute deserunt id cillum eu est ipsum ullamco duis deserunt anim adipisicing reprehenderit ea officia. Sint culpa anim culpa non eu Lorem commodo minim aliquip irure.\r\n", "registered": "2014-08-25T20:53:38-12:00", "latitude": 50.991513, "longitude": -139.161565, "tags": [ "voluptate", "culpa", "do", "laboris", "irure", "enim", "excepteur" ], "friends": [ { "id": 0, "name": "Lois Hickman" }, { "id": 1, "name": "Hudson Cooley" }, { "id": 2, "name": "Lee Ortiz" } ], "greeting": "Hello, Beryl Guzman! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea281f76341f712f17cd", "index": 3725, "guid": "84682f3e-575d-4098-8870-4886e30264e6", "isActive": false, "balance": "$1,493.75", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Curtis French", "gender": "male", "company": "COSMETEX", "email": "curtisfrench@cosmetex.com", "phone": "+1 (828) 503-3972", "address": "188 Jamison Lane, Savage, Ohio, 3307", "about": "Quis cillum nisi adipisicing eu adipisicing Lorem duis ea consequat do consectetur cupidatat. Quis eu qui est veniam amet cillum. Ad et ea exercitation deserunt est qui proident anim veniam ad.\r\n", "registered": "2014-04-06T06:32:32-12:00", "latitude": -63.19858, "longitude": 130.743965, "tags": [ "quis", "Lorem", "adipisicing", "exercitation", "minim", "ut", "magna" ], "friends": [ { "id": 0, "name": "Jennings Carver" }, { "id": 1, "name": "Dana Hughes" }, { "id": 2, "name": "Phoebe Acosta" } ], "greeting": "Hello, Curtis French! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2830e54f7833d918c3", "index": 3726, "guid": "c4e5a1b2-5d49-489b-b836-d1955feeae0e", "isActive": false, "balance": "$1,786.53", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Mclaughlin Christian", "gender": "male", "company": "GINKLE", "email": "mclaughlinchristian@ginkle.com", "phone": "+1 (801) 567-2394", "address": "923 Beverley Road, Juntura, Hawaii, 9770", "about": "Mollit excepteur Lorem commodo exercitation officia dolore est ea ea et labore ea elit. Id dolore sunt adipisicing aliqua ipsum officia ut proident tempor. Enim cupidatat est proident non nisi aliqua esse in nulla dolore officia nisi excepteur labore. Veniam cupidatat ipsum id consequat excepteur quis deserunt consectetur. Ad velit est et ut eiusmod.\r\n", "registered": "2014-05-13T06:58:26-12:00", "latitude": -58.284372, "longitude": 78.44385, "tags": [ "consectetur", "enim", "enim", "reprehenderit", "reprehenderit", "veniam", "consectetur" ], "friends": [ { "id": 0, "name": "Margie Powers" }, { "id": 1, "name": "Kasey Oliver" }, { "id": 2, "name": "Mcbride Douglas" } ], "greeting": "Hello, Mclaughlin Christian! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28f0ef18041e9cb7f2", "index": 3727, "guid": "c8f586fb-b73c-413c-a3c9-a76df8de46d5", "isActive": true, "balance": "$1,110.75", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Tia Brewer", "gender": "female", "company": "DEMINIMUM", "email": "tiabrewer@deminimum.com", "phone": "+1 (931) 465-2821", "address": "108 Seaview Avenue, Glenshaw, New Mexico, 804", "about": "Reprehenderit veniam magna non proident esse aliquip. Ullamco ex consectetur nisi proident minim deserunt duis amet. Laborum pariatur fugiat elit ut. Nisi esse excepteur veniam ipsum magna. Ullamco do irure Lorem voluptate deserunt in aliquip ipsum ipsum aliquip Lorem. Quis proident aliquip nostrud quis ex ad sunt reprehenderit. Qui ea dolor ullamco consequat adipisicing nulla.\r\n", "registered": "2014-05-31T03:41:55-12:00", "latitude": 52.640665, "longitude": -65.969674, "tags": [ "aliqua", "est", "do", "mollit", "qui", "qui", "eu" ], "friends": [ { "id": 0, "name": "Cooper Walsh" }, { "id": 1, "name": "Wolfe Herring" }, { "id": 2, "name": "Mercedes Chaney" } ], "greeting": "Hello, Tia Brewer! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28327c4fdfa12175ba", "index": 3728, "guid": "f3b295db-9beb-425b-9525-53e787859b00", "isActive": false, "balance": "$2,194.34", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Alyce Hunter", "gender": "female", "company": "UNIA", "email": "alycehunter@unia.com", "phone": "+1 (904) 520-3821", "address": "862 Cambridge Place, Caron, Maryland, 1683", "about": "Proident proident occaecat consectetur laborum ut incididunt esse laborum esse. Cupidatat elit incididunt ullamco ea occaecat culpa reprehenderit. Consectetur labore tempor ex duis quis reprehenderit qui eu.\r\n", "registered": "2014-02-27T15:27:55-13:00", "latitude": -12.390401, "longitude": 2.616807, "tags": [ "enim", "laboris", "enim", "amet", "est", "magna", "eiusmod" ], "friends": [ { "id": 0, "name": "Crystal Cantrell" }, { "id": 1, "name": "Tillman Monroe" }, { "id": 2, "name": "Gordon Harper" } ], "greeting": "Hello, Alyce Hunter! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28b7928dc6ebdee63d", "index": 3729, "guid": "657f2d30-bc68-4fbd-8f0e-f6e95ecbbf19", "isActive": true, "balance": "$1,004.10", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Ericka Stout", "gender": "female", "company": "EMPIRICA", "email": "erickastout@empirica.com", "phone": "+1 (915) 430-3492", "address": "455 Pine Street, Bordelonville, Alaska, 3394", "about": "Aliquip nostrud proident et sit id fugiat cupidatat. Voluptate tempor sunt deserunt labore anim occaecat et aliquip cillum labore. Tempor amet irure velit ullamco eu et deserunt. Irure aliqua excepteur proident ut. Est elit ullamco aliquip voluptate duis et in ut nostrud velit irure ad tempor duis. Magna reprehenderit culpa veniam cupidatat nulla ad nulla fugiat amet pariatur eu nulla. Magna excepteur velit fugiat dolor aliquip aliqua nulla aute commodo.\r\n", "registered": "2014-09-07T14:52:14-12:00", "latitude": 12.211471, "longitude": -31.372289, "tags": [ "adipisicing", "dolor", "labore", "magna", "id", "ipsum", "laboris" ], "friends": [ { "id": 0, "name": "Howell Glenn" }, { "id": 1, "name": "Kemp Goff" }, { "id": 2, "name": "Shannon Cannon" } ], "greeting": "Hello, Ericka Stout! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea281477cfa98d690b59", "index": 3730, "guid": "cbf35a4a-c9ca-4a04-8e09-2569542082c8", "isActive": true, "balance": "$2,810.94", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Francis Buchanan", "gender": "male", "company": "AQUACINE", "email": "francisbuchanan@aquacine.com", "phone": "+1 (810) 403-2289", "address": "978 Aberdeen Street, Clay, Arizona, 5036", "about": "Magna cupidatat id nostrud ex aliqua officia veniam. Dolor nisi Lorem pariatur proident dolore laboris incididunt. Do laboris mollit mollit fugiat nostrud. Excepteur sint deserunt aliquip culpa magna tempor aute. Mollit id ex sunt proident elit consectetur ex proident sint veniam aute labore ullamco. Fugiat sunt velit magna qui officia incididunt id minim reprehenderit ex exercitation id laborum.\r\n", "registered": "2014-01-25T07:03:30-13:00", "latitude": 68.602872, "longitude": 75.19037, "tags": [ "ad", "irure", "est", "velit", "magna", "est", "et" ], "friends": [ { "id": 0, "name": "Carole Trujillo" }, { "id": 1, "name": "Hoover Pittman" }, { "id": 2, "name": "Hilda Crane" } ], "greeting": "Hello, Francis Buchanan! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea280a3a784bee2fe50d", "index": 3731, "guid": "c1caec82-13bb-4458-8c66-a2a431da1c72", "isActive": false, "balance": "$3,308.95", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Wilda Pruitt", "gender": "female", "company": "DANCERITY", "email": "wildapruitt@dancerity.com", "phone": "+1 (817) 575-3793", "address": "905 Crooke Avenue, Elliott, Federated States Of Micronesia, 6477", "about": "Mollit nostrud pariatur tempor laboris velit aliquip labore quis elit exercitation. Laboris in tempor consectetur culpa fugiat deserunt qui laboris. Consequat qui consectetur culpa pariatur proident enim tempor exercitation magna exercitation anim ipsum ullamco. Sunt ad duis eu elit. Commodo cupidatat eiusmod adipisicing mollit magna proident quis ea anim cillum.\r\n", "registered": "2014-05-09T13:45:50-12:00", "latitude": -10.626663, "longitude": 31.198453, "tags": [ "aliquip", "ea", "enim", "aliquip", "nostrud", "cillum", "exercitation" ], "friends": [ { "id": 0, "name": "Clark Holmes" }, { "id": 1, "name": "Vonda Bryant" }, { "id": 2, "name": "Valerie Cummings" } ], "greeting": "Hello, Wilda Pruitt! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea282c91125a675356a1", "index": 3732, "guid": "e7a27e2b-6292-4465-91a4-ebe88c7b311d", "isActive": false, "balance": "$1,477.50", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Merrill Gilmore", "gender": "male", "company": "OLYMPIX", "email": "merrillgilmore@olympix.com", "phone": "+1 (857) 520-2347", "address": "351 Brightwater Court, Dawn, Oklahoma, 916", "about": "Proident est officia non elit. Aliqua non ut eu velit voluptate irure ad tempor est voluptate proident incididunt qui. Est incididunt ex cupidatat reprehenderit ea deserunt amet. Fugiat proident esse nulla tempor excepteur proident elit deserunt non proident voluptate. Laborum ex nostrud fugiat mollit dolor eiusmod Lorem. Id ex consectetur cillum reprehenderit incididunt proident do.\r\n", "registered": "2014-05-07T11:13:58-12:00", "latitude": 47.434604, "longitude": 151.451713, "tags": [ "sit", "anim", "qui", "sint", "dolore", "ex", "occaecat" ], "friends": [ { "id": 0, "name": "Marta Powell" }, { "id": 1, "name": "Molly Silva" }, { "id": 2, "name": "Noreen Wong" } ], "greeting": "Hello, Merrill Gilmore! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2809dbb9eb79e1ba7c", "index": 3733, "guid": "c654e5e7-4772-4fa7-84e1-161c22fba5fc", "isActive": false, "balance": "$2,949.95", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Harrell Hood", "gender": "male", "company": "CALCULA", "email": "harrellhood@calcula.com", "phone": "+1 (819) 587-3942", "address": "545 Ira Court, Croom, Michigan, 5808", "about": "Officia in nisi aute adipisicing veniam reprehenderit consectetur incididunt commodo laboris ullamco et. Nulla deserunt est pariatur eu proident cupidatat mollit pariatur commodo. In non occaecat incididunt elit ipsum ad. Veniam reprehenderit nulla ullamco consequat est qui dolore incididunt elit amet. Irure laborum id est velit sit commodo commodo sit deserunt. Officia fugiat do ad laboris et.\r\n", "registered": "2014-08-01T07:13:01-12:00", "latitude": -77.93004, "longitude": -45.052639, "tags": [ "laborum", "irure", "nulla", "sint", "duis", "laborum", "eiusmod" ], "friends": [ { "id": 0, "name": "Nguyen Herrera" }, { "id": 1, "name": "Bates Hanson" }, { "id": 2, "name": "Dale Hammond" } ], "greeting": "Hello, Harrell Hood! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28e897c91501134f82", "index": 3734, "guid": "cbe07dcf-dbc6-4d31-994d-289c8c7edda0", "isActive": true, "balance": "$2,578.66", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Guzman Burnett", "gender": "male", "company": "DRAGBOT", "email": "guzmanburnett@dragbot.com", "phone": "+1 (869) 590-3708", "address": "677 Bayview Place, Dunnavant, Kansas, 6028", "about": "Voluptate aliquip exercitation aute incididunt pariatur sit aliquip ea ad laboris dolor. Ad ea irure mollit ea dolor pariatur elit exercitation amet voluptate. Tempor culpa proident laborum eu ullamco ut sunt ipsum incididunt eu aliqua. Culpa ea culpa velit eu adipisicing voluptate commodo quis officia elit. Fugiat excepteur consequat laborum incididunt culpa quis sint voluptate in ad commodo magna enim. Aute non et eiusmod est ad consequat sit velit nulla nisi. Lorem culpa cillum ut ex ea anim aliquip aliqua et ad velit.\r\n", "registered": "2014-03-27T04:08:37-13:00", "latitude": 53.566643, "longitude": -3.250126, "tags": [ "minim", "reprehenderit", "voluptate", "mollit", "laboris", "eu", "do" ], "friends": [ { "id": 0, "name": "Vicky Barr" }, { "id": 1, "name": "Mcfadden Bradley" }, { "id": 2, "name": "Faye Howard" } ], "greeting": "Hello, Guzman Burnett! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28ce7ea873f55c72f0", "index": 3735, "guid": "156b97e0-a15d-4a4c-9f36-61caaadda751", "isActive": false, "balance": "$3,914.68", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Stacey Webster", "gender": "female", "company": "SENSATE", "email": "staceywebster@sensate.com", "phone": "+1 (804) 583-3946", "address": "684 Kingsway Place, Colton, South Dakota, 4994", "about": "Aute voluptate aliquip velit ut excepteur. Aliquip nostrud culpa tempor cupidatat velit elit aliqua culpa. Adipisicing est velit exercitation anim est dolore reprehenderit sit. Eu dolor ut cillum mollit ea.\r\n", "registered": "2014-08-19T14:50:13-12:00", "latitude": 47.85358, "longitude": -31.963675, "tags": [ "do", "labore", "mollit", "eu", "nostrud", "mollit", "adipisicing" ], "friends": [ { "id": 0, "name": "Graciela Weber" }, { "id": 1, "name": "Kirby Faulkner" }, { "id": 2, "name": "Edwina Richardson" } ], "greeting": "Hello, Stacey Webster! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28e7cf032ead280e59", "index": 3736, "guid": "92119f1c-4364-4e77-8552-df5e876148c3", "isActive": true, "balance": "$1,239.26", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Doyle Hess", "gender": "male", "company": "ISOLOGICA", "email": "doylehess@isologica.com", "phone": "+1 (821) 504-3037", "address": "855 Java Street, Farmers, West Virginia, 6610", "about": "Occaecat pariatur irure velit incididunt exercitation esse eiusmod veniam ea laboris anim. Fugiat dolore ad laborum aute nostrud enim minim reprehenderit pariatur do dolor fugiat ad elit. Aliquip cupidatat sint quis aute consequat qui aliqua qui anim cupidatat est. Anim laboris consectetur voluptate excepteur. Anim sint anim in ea laborum nisi pariatur anim pariatur cupidatat amet pariatur et. Eiusmod nisi velit nisi esse deserunt Lorem esse pariatur minim do et duis magna. Amet in velit mollit id.\r\n", "registered": "2014-03-11T14:08:55-13:00", "latitude": -63.483828, "longitude": 121.86198, "tags": [ "veniam", "culpa", "sit", "deserunt", "cillum", "sunt", "sit" ], "friends": [ { "id": 0, "name": "Hill Olson" }, { "id": 1, "name": "Susie Ferrell" }, { "id": 2, "name": "Franklin Blevins" } ], "greeting": "Hello, Doyle Hess! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea283f1316ea2df285ea", "index": 3737, "guid": "22f8d1f3-d9fa-4180-bb45-d43c343fc670", "isActive": false, "balance": "$2,292.57", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Lucy Andrews", "gender": "female", "company": "UTARA", "email": "lucyandrews@utara.com", "phone": "+1 (846) 450-3917", "address": "286 Trucklemans Lane, Brownsville, Texas, 7355", "about": "Eiusmod occaecat culpa pariatur irure est minim fugiat proident eiusmod laboris aliquip proident aute. Sunt ex minim sit occaecat qui velit elit labore tempor laborum deserunt tempor magna. Dolore do duis est excepteur elit excepteur cillum nulla est voluptate. Laborum aliquip et ad ea minim adipisicing enim ex occaecat fugiat in et irure. Duis aliquip mollit aliqua consectetur minim nostrud proident aliquip. Duis reprehenderit elit incididunt ex non magna consequat sit culpa.\r\n", "registered": "2014-02-16T13:06:29-13:00", "latitude": -49.221555, "longitude": -11.605086, "tags": [ "eu", "ad", "id", "sunt", "eu", "cupidatat", "qui" ], "friends": [ { "id": 0, "name": "Dickson Campos" }, { "id": 1, "name": "Shana Dean" }, { "id": 2, "name": "Nadine Cotton" } ], "greeting": "Hello, Lucy Andrews! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28b262a1628b79a485", "index": 3738, "guid": "b81bf8b2-bcb6-4963-a799-87ead2f58cff", "isActive": false, "balance": "$1,780.51", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Deidre Winters", "gender": "female", "company": "TUBESYS", "email": "deidrewinters@tubesys.com", "phone": "+1 (961) 509-3412", "address": "130 Senator Street, Brewster, Oregon, 3266", "about": "Lorem exercitation qui ea amet quis voluptate duis sunt mollit dolor et. Enim Lorem id aute minim consectetur elit elit in dolor tempor. Veniam reprehenderit reprehenderit enim nisi velit ut exercitation ut velit nisi culpa ut ut do. Deserunt veniam est occaecat non do voluptate consequat irure quis excepteur laboris. Lorem qui consectetur occaecat laboris tempor aliqua veniam Lorem ad proident. Culpa nisi eu proident sunt minim esse ea duis.\r\n", "registered": "2014-01-01T09:43:34-13:00", "latitude": 33.019941, "longitude": 7.480701, "tags": [ "consequat", "consequat", "id", "tempor", "pariatur", "adipisicing", "quis" ], "friends": [ { "id": 0, "name": "Mavis Payne" }, { "id": 1, "name": "Morse Puckett" }, { "id": 2, "name": "Snider Finley" } ], "greeting": "Hello, Deidre Winters! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea288a02ec0a09f64110", "index": 3739, "guid": "15ef62c8-e5a3-4adc-bd88-44dc236864f3", "isActive": false, "balance": "$2,736.37", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Karin Conrad", "gender": "female", "company": "ZILLATIDE", "email": "karinconrad@zillatide.com", "phone": "+1 (911) 552-2039", "address": "593 Bayview Avenue, Morriston, Nevada, 5265", "about": "Ad elit do dolor fugiat. Esse non aute non tempor magna proident nulla. Proident enim voluptate quis ea ea eiusmod do eiusmod dolore. Laborum et aute qui pariatur enim Lorem magna commodo nisi sint in. Incididunt cupidatat do elit labore commodo. Magna in enim amet pariatur cillum veniam mollit aute sunt proident. Voluptate magna labore id dolore esse aute.\r\n", "registered": "2014-05-03T01:36:29-12:00", "latitude": 76.109362, "longitude": 121.3502, "tags": [ "dolor", "deserunt", "culpa", "eu", "commodo", "aute", "ut" ], "friends": [ { "id": 0, "name": "Washington Allison" }, { "id": 1, "name": "Erickson Dennis" }, { "id": 2, "name": "Lindsay Bright" } ], "greeting": "Hello, Karin Conrad! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2895dcd58987a6a3db", "index": 3740, "guid": "ce54e420-f0a9-4aaf-bd4b-9a7e9151b348", "isActive": true, "balance": "$3,555.76", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Marquita Freeman", "gender": "female", "company": "COMVEY", "email": "marquitafreeman@comvey.com", "phone": "+1 (851) 401-3337", "address": "303 Locust Street, Delwood, Minnesota, 7712", "about": "Do excepteur voluptate et pariatur qui ea ut officia id magna ut dolor. Deserunt ut consequat in nulla nisi laborum incididunt mollit minim occaecat dolor quis excepteur cupidatat. Veniam tempor excepteur irure Lorem excepteur sint incididunt labore. Sint consequat enim qui proident magna. Sunt labore ut pariatur anim consectetur quis eiusmod sint laborum quis.\r\n", "registered": "2014-02-22T15:50:44-13:00", "latitude": 67.373178, "longitude": 117.193928, "tags": [ "consequat", "amet", "ex", "commodo", "ex", "consectetur", "aliqua" ], "friends": [ { "id": 0, "name": "Samantha Vargas" }, { "id": 1, "name": "Delores Fuentes" }, { "id": 2, "name": "Nixon Giles" } ], "greeting": "Hello, Marquita Freeman! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28598ff3b8d92bd417", "index": 3741, "guid": "6697fb61-8169-46e3-be92-3b1cc984b6a2", "isActive": true, "balance": "$3,669.85", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Maribel Singleton", "gender": "female", "company": "MUSAPHICS", "email": "maribelsingleton@musaphics.com", "phone": "+1 (820) 501-3055", "address": "909 Dunham Place, Kenwood, Missouri, 6053", "about": "Aliquip labore velit pariatur reprehenderit ad laboris elit amet ipsum ea. Eiusmod nisi esse duis nostrud aliqua. Commodo et exercitation voluptate tempor dolor minim fugiat. Eu ad pariatur ut ullamco. Sit est proident ea elit proident laboris minim amet enim eu eiusmod. Sit magna excepteur commodo enim est fugiat sit magna nostrud mollit aliqua irure ex consequat.\r\n", "registered": "2014-05-26T07:55:24-12:00", "latitude": 60.084356, "longitude": -106.869363, "tags": [ "deserunt", "esse", "tempor", "quis", "minim", "labore", "commodo" ], "friends": [ { "id": 0, "name": "Rosario Farmer" }, { "id": 1, "name": "Gayle Lewis" }, { "id": 2, "name": "Lamb Castaneda" } ], "greeting": "Hello, Maribel Singleton! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea282d441ed55051754d", "index": 3742, "guid": "85f6133d-f8dd-4fd6-9b42-1d52a25223fa", "isActive": false, "balance": "$1,967.68", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Karina Burgess", "gender": "female", "company": "MEDICROIX", "email": "karinaburgess@medicroix.com", "phone": "+1 (917) 546-3201", "address": "591 Miller Place, Detroit, Rhode Island, 3946", "about": "Ut do amet occaecat nisi aliqua occaecat dolor aliquip culpa officia. Officia quis est voluptate occaecat nisi laboris dolor anim. Officia incididunt qui culpa amet aliquip ea consectetur proident adipisicing esse esse.\r\n", "registered": "2014-08-27T22:56:37-12:00", "latitude": -81.473834, "longitude": 79.217458, "tags": [ "ex", "non", "officia", "laborum", "proident", "nostrud", "incididunt" ], "friends": [ { "id": 0, "name": "Guadalupe Brooks" }, { "id": 1, "name": "Lourdes Boyer" }, { "id": 2, "name": "Kellie Cortez" } ], "greeting": "Hello, Karina Burgess! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2878fc43d0383e1675", "index": 3743, "guid": "ce5867ad-c9fc-45a1-b545-7b6bd1a483ba", "isActive": false, "balance": "$2,509.23", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Avery Beck", "gender": "male", "company": "ACCRUEX", "email": "averybeck@accruex.com", "phone": "+1 (824) 438-3205", "address": "662 Jay Street, Edenburg, Florida, 5958", "about": "Irure aute culpa deserunt eiusmod velit sunt. Voluptate deserunt et ut id laborum irure. Id officia culpa sunt irure laboris exercitation dolore tempor voluptate irure cupidatat sint minim. Dolor do ad mollit tempor cillum elit do culpa ad sint.\r\n", "registered": "2014-02-08T03:14:59-13:00", "latitude": 64.17948, "longitude": 114.114309, "tags": [ "occaecat", "occaecat", "eu", "adipisicing", "esse", "est", "enim" ], "friends": [ { "id": 0, "name": "Elaine Hurley" }, { "id": 1, "name": "Henrietta Macias" }, { "id": 2, "name": "Page Buckner" } ], "greeting": "Hello, Avery Beck! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28c420683b2e8efe39", "index": 3744, "guid": "9df855bb-cf7f-42d0-a889-3dc415bd294b", "isActive": false, "balance": "$2,637.48", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Ray Cooke", "gender": "male", "company": "TECHMANIA", "email": "raycooke@techmania.com", "phone": "+1 (849) 428-2278", "address": "480 Atlantic Avenue, Geyserville, North Carolina, 4172", "about": "Cillum pariatur labore consequat magna ut velit. Sint dolor consequat ipsum mollit mollit Lorem duis. Elit pariatur esse deserunt quis magna eu consectetur sunt Lorem ut excepteur.\r\n", "registered": "2014-03-13T02:20:22-13:00", "latitude": 64.759352, "longitude": 66.024546, "tags": [ "ullamco", "cillum", "ad", "id", "quis", "veniam", "deserunt" ], "friends": [ { "id": 0, "name": "Leanna Garrett" }, { "id": 1, "name": "Bianca Mcleod" }, { "id": 2, "name": "Bridget Mcgee" } ], "greeting": "Hello, Ray Cooke! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2877a076f40158b2bf", "index": 3745, "guid": "97d6bcdf-5bbb-4171-a4fb-992738eb961c", "isActive": false, "balance": "$3,921.82", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Newman Horne", "gender": "male", "company": "QUILCH", "email": "newmanhorne@quilch.com", "phone": "+1 (939) 424-2616", "address": "876 Conover Street, Williams, New Hampshire, 2656", "about": "Aliqua cupidatat enim ullamco consequat mollit ullamco qui minim esse anim ipsum minim nostrud est. Commodo ut aliquip ullamco sunt ut tempor. Sit incididunt deserunt dolore qui dolor velit nostrud commodo anim. Sit commodo commodo laboris sunt aute. Culpa ullamco eu eiusmod est Lorem.\r\n", "registered": "2014-05-15T07:53:10-12:00", "latitude": 2.367085, "longitude": 75.004419, "tags": [ "non", "exercitation", "ullamco", "laboris", "aliquip", "eiusmod", "exercitation" ], "friends": [ { "id": 0, "name": "Bobbi Kinney" }, { "id": 1, "name": "Sherman Witt" }, { "id": 2, "name": "Fuentes Perkins" } ], "greeting": "Hello, Newman Horne! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28a3e771c9559650e4", "index": 3746, "guid": "26e8f651-444d-4a4a-8b98-3499c9b400df", "isActive": false, "balance": "$2,399.02", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Johnston Merrill", "gender": "male", "company": "DUFLEX", "email": "johnstonmerrill@duflex.com", "phone": "+1 (999) 436-2329", "address": "691 Tapscott Avenue, Carrsville, Arkansas, 4186", "about": "Incididunt Lorem laboris enim consequat non exercitation sint commodo. Dolor consectetur sint exercitation esse. Magna sunt cillum officia nisi veniam enim. Pariatur non adipisicing amet et est ipsum magna reprehenderit aute dolore.\r\n", "registered": "2014-05-28T06:47:03-12:00", "latitude": -44.611457, "longitude": 78.759893, "tags": [ "amet", "eu", "ut", "dolore", "aliqua", "velit", "ut" ], "friends": [ { "id": 0, "name": "Evangelina Cherry" }, { "id": 1, "name": "Shepard Lucas" }, { "id": 2, "name": "Boyle Hancock" } ], "greeting": "Hello, Johnston Merrill! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28fc93f9ddf8ab4b0c", "index": 3747, "guid": "b28d73a5-a6f7-4a6f-9d17-208c61566384", "isActive": true, "balance": "$2,964.97", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Browning Wilkerson", "gender": "male", "company": "QUANTASIS", "email": "browningwilkerson@quantasis.com", "phone": "+1 (999) 587-3133", "address": "532 Lancaster Avenue, Centerville, Iowa, 6225", "about": "Eu cillum incididunt reprehenderit aliqua laborum irure ad fugiat aliquip incididunt. Et nostrud amet id velit nostrud et fugiat. Officia ipsum ea in sit quis Lorem dolor deserunt voluptate. Nisi cupidatat irure eu sit eu aliquip adipisicing. Et ullamco do qui occaecat dolore eiusmod sunt deserunt eiusmod dolore est. Incididunt consectetur qui culpa anim ea deserunt duis magna tempor.\r\n", "registered": "2014-04-12T02:51:00-12:00", "latitude": -6.124863, "longitude": 118.427554, "tags": [ "proident", "cillum", "eiusmod", "dolore", "voluptate", "pariatur", "aliqua" ], "friends": [ { "id": 0, "name": "Pena Zamora" }, { "id": 1, "name": "Barr Mack" }, { "id": 2, "name": "Bradshaw Oneill" } ], "greeting": "Hello, Browning Wilkerson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28c572530d5c9018eb", "index": 3748, "guid": "40aa5f66-850f-44a5-8c65-666042b5dce1", "isActive": false, "balance": "$3,009.15", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "James Lawson", "gender": "male", "company": "QUIZKA", "email": "jameslawson@quizka.com", "phone": "+1 (976) 475-2072", "address": "423 Woodside Avenue, Dellview, Nebraska, 8522", "about": "Veniam magna pariatur ipsum exercitation fugiat. Minim incididunt laborum sit veniam fugiat tempor. Irure in officia in adipisicing esse officia sint dolor officia enim occaecat. Labore ut occaecat qui dolor enim Lorem magna ullamco ad. Dolore ipsum aliqua in adipisicing deserunt Lorem aliqua velit enim id nostrud deserunt nulla.\r\n", "registered": "2014-02-08T01:46:29-13:00", "latitude": 25.013109, "longitude": 3.586293, "tags": [ "fugiat", "consequat", "aliqua", "in", "culpa", "aliqua", "sit" ], "friends": [ { "id": 0, "name": "Oliver Thomas" }, { "id": 1, "name": "Ayers Stein" }, { "id": 2, "name": "Burks Jacobs" } ], "greeting": "Hello, James Lawson! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28d5d7c67d6fc15fc9", "index": 3749, "guid": "e7024385-9c3e-41e8-983e-71eb42a03b65", "isActive": true, "balance": "$2,599.34", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Sara Malone", "gender": "female", "company": "COMVOY", "email": "saramalone@comvoy.com", "phone": "+1 (878) 589-2830", "address": "682 Emerald Street, Skyland, District Of Columbia, 740", "about": "Nisi proident adipisicing culpa esse officia enim velit exercitation enim do exercitation non exercitation proident. Ipsum sint incididunt excepteur ipsum est qui ex ex. Quis veniam nostrud tempor officia magna velit id aliqua ea ipsum consequat aliqua aute incididunt. Eiusmod anim occaecat velit est Lorem minim ad. Minim sunt sint minim ullamco eu et occaecat.\r\n", "registered": "2014-05-04T18:24:12-12:00", "latitude": 78.030146, "longitude": 85.229237, "tags": [ "nostrud", "qui", "consequat", "amet", "sit", "officia", "eiusmod" ], "friends": [ { "id": 0, "name": "Marietta Lynch" }, { "id": 1, "name": "Hatfield Hendrix" }, { "id": 2, "name": "Christy Meyer" } ], "greeting": "Hello, Sara Malone! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28ecd0868a96ce2089", "index": 3750, "guid": "f7c58e05-41c3-4a41-9a62-9ade718e7f9d", "isActive": false, "balance": "$3,373.15", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Madeleine Walton", "gender": "female", "company": "FRANSCENE", "email": "madeleinewalton@franscene.com", "phone": "+1 (872) 453-2966", "address": "924 Nelson Street, Grenelefe, New Jersey, 4269", "about": "Est nostrud quis ad est enim. Reprehenderit velit nulla Lorem qui est ut amet anim pariatur eiusmod consectetur ad. Ea Lorem fugiat do ut est. Ex incididunt id dolore incididunt ullamco dolor nostrud deserunt eiusmod adipisicing ut. Elit ea excepteur ipsum nulla in veniam. Amet sit ad ut enim incididunt id ut in velit fugiat.\r\n", "registered": "2014-04-13T07:47:52-12:00", "latitude": -11.912839, "longitude": -154.958823, "tags": [ "ad", "eu", "cillum", "consequat", "commodo", "irure", "ullamco" ], "friends": [ { "id": 0, "name": "Chrystal Stanley" }, { "id": 1, "name": "Roxanne Collins" }, { "id": 2, "name": "Juliana Sosa" } ], "greeting": "Hello, Madeleine Walton! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea280d7c0fda34fe3142", "index": 3751, "guid": "1c61eac7-1860-4d49-a9a8-9514586144a6", "isActive": true, "balance": "$3,455.55", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Tracey Sampson", "gender": "female", "company": "ZUVY", "email": "traceysampson@zuvy.com", "phone": "+1 (849) 552-3330", "address": "877 Moffat Street, Beason, Palau, 7999", "about": "Consectetur dolore aute adipisicing velit ad cillum et eu officia occaecat exercitation amet quis dolore. Ut cillum reprehenderit cupidatat velit tempor anim voluptate occaecat consectetur reprehenderit. Veniam enim consectetur amet Lorem do ad culpa adipisicing aliqua occaecat amet voluptate dolor amet. Ex deserunt in adipisicing incididunt quis eu laboris et do aliqua.\r\n", "registered": "2014-05-15T02:27:59-12:00", "latitude": 42.649734, "longitude": -101.683334, "tags": [ "et", "ad", "nulla", "nisi", "minim", "veniam", "incididunt" ], "friends": [ { "id": 0, "name": "Melanie Cain" }, { "id": 1, "name": "Geraldine Sawyer" }, { "id": 2, "name": "Patrica Wilder" } ], "greeting": "Hello, Tracey Sampson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2800be22b73be676ec", "index": 3752, "guid": "c20152f0-2d71-4de1-8004-848f7025147a", "isActive": false, "balance": "$2,411.37", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Russo Mccray", "gender": "male", "company": "ACCUFARM", "email": "russomccray@accufarm.com", "phone": "+1 (911) 495-3497", "address": "645 Anthony Street, Fairview, Puerto Rico, 5391", "about": "Officia sunt amet nulla ad duis proident tempor cupidatat ut adipisicing. Magna exercitation aliquip laboris esse deserunt veniam. Incididunt proident cupidatat enim commodo deserunt. Id anim do ex veniam nulla adipisicing mollit dolor sint exercitation excepteur cupidatat labore tempor. Proident culpa non quis laboris excepteur non. Excepteur nostrud irure minim labore dolor esse labore officia ex duis sunt. Qui deserunt fugiat labore consequat adipisicing aliquip officia velit laboris aliquip.\r\n", "registered": "2014-04-14T09:19:57-12:00", "latitude": -23.408096, "longitude": -110.577308, "tags": [ "sit", "veniam", "sint", "do", "aute", "aliquip", "et" ], "friends": [ { "id": 0, "name": "Thelma Sanford" }, { "id": 1, "name": "Hester Cardenas" }, { "id": 2, "name": "Dixie Morrow" } ], "greeting": "Hello, Russo Mccray! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28c472fba87170846b", "index": 3753, "guid": "0f67c534-51ec-4ddb-ad8d-c3fa7191cca6", "isActive": true, "balance": "$3,004.19", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Agnes Livingston", "gender": "female", "company": "WEBIOTIC", "email": "agneslivingston@webiotic.com", "phone": "+1 (824) 562-2939", "address": "567 Beaver Street, Bowmansville, California, 7585", "about": "Lorem anim qui magna enim. Veniam sunt et aliquip irure tempor laborum ad non aliquip nisi enim. Et non do sint magna consequat qui ea sint nostrud minim in proident ullamco culpa. Eiusmod fugiat Lorem incididunt proident eu et fugiat occaecat anim ad. Irure duis nisi sunt adipisicing ea voluptate aliquip nostrud eiusmod elit ut voluptate. Proident ex proident aliquip est minim.\r\n", "registered": "2014-06-08T02:01:37-12:00", "latitude": -62.973533, "longitude": 105.356001, "tags": [ "aute", "consequat", "amet", "cillum", "est", "nostrud", "labore" ], "friends": [ { "id": 0, "name": "Anne Hamilton" }, { "id": 1, "name": "Mejia Shepherd" }, { "id": 2, "name": "Gonzalez Clayton" } ], "greeting": "Hello, Agnes Livingston! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea284041bcd7c5de523a", "index": 3754, "guid": "7601b328-6067-41c1-b241-93ec416d34a6", "isActive": true, "balance": "$2,393.45", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Gay Atkinson", "gender": "female", "company": "EARBANG", "email": "gayatkinson@earbang.com", "phone": "+1 (919) 541-2923", "address": "716 Aster Court, Watchtower, Vermont, 7354", "about": "Consequat commodo labore velit duis. Et adipisicing cillum excepteur laborum ea ut. Irure labore sit commodo eu occaecat aliquip id id ex.\r\n", "registered": "2014-03-15T09:39:09-13:00", "latitude": -49.573928, "longitude": 110.338347, "tags": [ "adipisicing", "excepteur", "dolore", "ex", "ut", "esse", "labore" ], "friends": [ { "id": 0, "name": "Chan Clay" }, { "id": 1, "name": "Annabelle Whitehead" }, { "id": 2, "name": "Ruby Rush" } ], "greeting": "Hello, Gay Atkinson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea288785d0a3fc502d62", "index": 3755, "guid": "52988e13-7d96-4499-8557-cdb4e22937ed", "isActive": true, "balance": "$2,151.59", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Buckner Hayden", "gender": "male", "company": "KONNECT", "email": "bucknerhayden@konnect.com", "phone": "+1 (801) 565-2212", "address": "962 Lake Street, Nogal, Indiana, 512", "about": "Laborum nisi officia magna consequat quis ut incididunt adipisicing mollit labore ex amet officia non. Officia minim mollit excepteur voluptate esse voluptate. Elit sunt eu nulla dolore magna dolor.\r\n", "registered": "2014-01-31T16:17:00-13:00", "latitude": 77.542484, "longitude": -76.611167, "tags": [ "ad", "fugiat", "dolor", "eiusmod", "nulla", "ullamco", "sint" ], "friends": [ { "id": 0, "name": "Carroll Wooten" }, { "id": 1, "name": "Elva Blankenship" }, { "id": 2, "name": "Esperanza Kent" } ], "greeting": "Hello, Buckner Hayden! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea284d1b77ffc4eb200f", "index": 3756, "guid": "7f85e3d0-e2ff-4286-a8b5-f47644e79e14", "isActive": false, "balance": "$3,094.93", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Christi Ramirez", "gender": "female", "company": "ZIGGLES", "email": "christiramirez@ziggles.com", "phone": "+1 (865) 466-3483", "address": "523 Grattan Street, Highland, Illinois, 6951", "about": "Non dolore id sunt cillum aliquip magna et sit. Officia in in adipisicing irure eu incididunt ut officia qui consequat. Velit exercitation sint adipisicing voluptate dolore officia consequat ullamco. Eu reprehenderit veniam quis exercitation sint consequat nostrud commodo pariatur non velit in quis nisi.\r\n", "registered": "2014-06-15T21:06:07-12:00", "latitude": -29.856761, "longitude": 28.808004, "tags": [ "occaecat", "ipsum", "eu", "eu", "eu", "cillum", "minim" ], "friends": [ { "id": 0, "name": "Debra Hardy" }, { "id": 1, "name": "Valarie Ross" }, { "id": 2, "name": "Melinda Wade" } ], "greeting": "Hello, Christi Ramirez! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28d6a23eb16f8984b0", "index": 3757, "guid": "cc834d84-57ed-40f1-915f-d809853a538f", "isActive": true, "balance": "$3,678.78", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Margaret Cunningham", "gender": "female", "company": "EVENTIX", "email": "margaretcunningham@eventix.com", "phone": "+1 (989) 518-2924", "address": "894 Lamont Court, Rivers, South Carolina, 6207", "about": "Duis Lorem id irure pariatur mollit labore ipsum excepteur aute non magna. Ad labore minim eiusmod duis Lorem eu qui. Irure reprehenderit esse incididunt nostrud mollit magna consectetur tempor eiusmod. Voluptate dolor nostrud consectetur labore elit ex non pariatur commodo et eiusmod tempor esse adipisicing. Nostrud ad minim proident deserunt eiusmod ad fugiat deserunt in eu ad mollit eu.\r\n", "registered": "2014-02-07T06:05:06-13:00", "latitude": -49.06119, "longitude": 147.106277, "tags": [ "culpa", "minim", "amet", "Lorem", "aliqua", "excepteur", "elit" ], "friends": [ { "id": 0, "name": "Byrd Noble" }, { "id": 1, "name": "Adrienne Montgomery" }, { "id": 2, "name": "Angelia Tran" } ], "greeting": "Hello, Margaret Cunningham! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea280ac73d93a31d5be8", "index": 3758, "guid": "1b937cf1-f00d-4776-b534-56d0e7654ad5", "isActive": true, "balance": "$1,927.25", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Ellison Valdez", "gender": "male", "company": "COMSTAR", "email": "ellisonvaldez@comstar.com", "phone": "+1 (905) 561-2285", "address": "555 Bethel Loop, Smeltertown, American Samoa, 9254", "about": "Anim ad aliqua Lorem minim in non anim duis ea dolor aute et reprehenderit. Nulla nulla nulla occaecat velit. Proident enim deserunt laborum Lorem laborum ex. Nostrud laboris occaecat magna enim cillum do enim ex. Cillum elit reprehenderit voluptate mollit anim aute est. Sint anim ex do non minim minim adipisicing.\r\n", "registered": "2014-01-14T07:55:54-13:00", "latitude": 50.396434, "longitude": -45.351517, "tags": [ "occaecat", "laboris", "aute", "magna", "enim", "duis", "enim" ], "friends": [ { "id": 0, "name": "Faulkner Hebert" }, { "id": 1, "name": "Farmer Simmons" }, { "id": 2, "name": "Morgan Fox" } ], "greeting": "Hello, Ellison Valdez! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea289a68e93af19f80ca", "index": 3759, "guid": "ae42ecd3-4a09-4a64-bf8e-bb7893368bf7", "isActive": false, "balance": "$3,846.73", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Davis Mosley", "gender": "male", "company": "ASSISTIA", "email": "davismosley@assistia.com", "phone": "+1 (809) 562-2550", "address": "226 Judge Street, Henrietta, Delaware, 3777", "about": "Mollit consectetur voluptate consectetur fugiat dolore deserunt in occaecat elit consequat ad est excepteur qui. Esse reprehenderit deserunt deserunt ad sint consectetur pariatur occaecat ad. Commodo do qui duis consectetur exercitation anim non ullamco et consequat. Pariatur id aliquip culpa exercitation qui consectetur reprehenderit non magna elit duis ullamco. Ipsum nostrud esse ut labore est magna culpa commodo commodo nostrud nisi mollit eu.\r\n", "registered": "2014-01-30T18:42:18-13:00", "latitude": -76.254123, "longitude": -84.308836, "tags": [ "commodo", "nisi", "veniam", "consequat", "ullamco", "deserunt", "anim" ], "friends": [ { "id": 0, "name": "Kathrine Cole" }, { "id": 1, "name": "Essie Waters" }, { "id": 2, "name": "Frank Vega" } ], "greeting": "Hello, Davis Mosley! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea280678e33139cfa2ec", "index": 3760, "guid": "afb3cf3b-bf67-4a46-a60c-98015db3acb5", "isActive": false, "balance": "$2,711.39", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Lauri Madden", "gender": "female", "company": "RAMEON", "email": "laurimadden@rameon.com", "phone": "+1 (861) 529-3860", "address": "129 Metrotech Courtr, Cloverdale, Pennsylvania, 6191", "about": "Ut do incididunt ut ea pariatur occaecat magna velit dolor dolore cillum. Enim duis est adipisicing non in sint nisi incididunt pariatur laborum dolor aute nisi commodo. Eiusmod laboris est tempor laborum occaecat irure qui ad laborum non.\r\n", "registered": "2014-05-20T03:15:28-12:00", "latitude": 79.326405, "longitude": -51.217733, "tags": [ "ad", "occaecat", "do", "dolor", "nostrud", "eiusmod", "quis" ], "friends": [ { "id": 0, "name": "Lewis Bradford" }, { "id": 1, "name": "Pollard Slater" }, { "id": 2, "name": "Patrice Maddox" } ], "greeting": "Hello, Lauri Madden! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea281c27d5af52c05a7c", "index": 3761, "guid": "d316ea08-d55a-4540-8f4d-5ec1e057dd36", "isActive": false, "balance": "$2,710.95", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Powers Ward", "gender": "male", "company": "MAGMINA", "email": "powersward@magmina.com", "phone": "+1 (840) 503-2244", "address": "864 Lewis Avenue, Faxon, Georgia, 3282", "about": "Sit qui ad voluptate amet fugiat sint mollit dolore ex laborum excepteur. Sit occaecat labore ullamco cillum tempor. Ut culpa deserunt non fugiat culpa. Aute pariatur do et duis duis. Laboris exercitation laboris voluptate consectetur sit. Dolor occaecat voluptate fugiat incididunt ad duis pariatur. Fugiat ut ut Lorem elit deserunt anim qui mollit exercitation eiusmod sit pariatur aute.\r\n", "registered": "2014-07-03T02:23:55-12:00", "latitude": 21.51987, "longitude": -80.252711, "tags": [ "aliquip", "aute", "ullamco", "reprehenderit", "eiusmod", "minim", "adipisicing" ], "friends": [ { "id": 0, "name": "Shelia Rice" }, { "id": 1, "name": "Leach Hendricks" }, { "id": 2, "name": "Cleo Morse" } ], "greeting": "Hello, Powers Ward! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28a35835be5c283599", "index": 3762, "guid": "e5a47405-6c9f-4a3b-8f1a-330927095592", "isActive": true, "balance": "$2,224.70", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Pacheco James", "gender": "male", "company": "PYRAMIA", "email": "pachecojames@pyramia.com", "phone": "+1 (902) 594-3221", "address": "215 Bay Parkway, Fruitdale, North Dakota, 3932", "about": "Laboris sunt pariatur nisi eiusmod in elit esse adipisicing. Ipsum ex aliquip aute nisi. Lorem laboris Lorem quis labore qui magna ex. Minim eiusmod laborum in ut labore aute sunt cillum do irure nulla aliqua ea. Laboris sunt cupidatat aliquip ea voluptate eiusmod anim. Elit aliqua do ex magna adipisicing. Consectetur fugiat cillum dolor excepteur anim consectetur fugiat excepteur fugiat aliquip laboris.\r\n", "registered": "2014-06-19T09:29:37-12:00", "latitude": -81.156642, "longitude": 76.247866, "tags": [ "laboris", "Lorem", "aliquip", "consequat", "minim", "velit", "sunt" ], "friends": [ { "id": 0, "name": "Lelia Griffith" }, { "id": 1, "name": "Foster Webb" }, { "id": 2, "name": "Sonya Kirk" } ], "greeting": "Hello, Pacheco James! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28140349665e6b3a82", "index": 3763, "guid": "fe3700b9-b5a8-4f67-8d19-53095a6e3d50", "isActive": true, "balance": "$3,468.67", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Rodriquez Rutledge", "gender": "male", "company": "QUONATA", "email": "rodriquezrutledge@quonata.com", "phone": "+1 (818) 446-2188", "address": "466 Lincoln Avenue, Munjor, Louisiana, 1703", "about": "Elit culpa nisi laborum velit quis tempor anim nisi. Consectetur est nisi officia duis. Non duis adipisicing aute reprehenderit irure labore adipisicing excepteur exercitation exercitation. Sint velit labore ullamco excepteur esse et Lorem. Reprehenderit dolor tempor adipisicing aliquip. Dolor et aliquip cupidatat nostrud proident magna laboris deserunt culpa et aliqua proident id. Ex qui enim sunt sunt nostrud et eu incididunt adipisicing.\r\n", "registered": "2014-09-11T04:31:52-12:00", "latitude": 72.144216, "longitude": -52.903003, "tags": [ "et", "est", "adipisicing", "adipisicing", "reprehenderit", "minim", "eu" ], "friends": [ { "id": 0, "name": "Wyatt Baker" }, { "id": 1, "name": "Jordan Daniels" }, { "id": 2, "name": "Cunningham Wright" } ], "greeting": "Hello, Rodriquez Rutledge! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28568269816605c27a", "index": 3764, "guid": "23b786ff-ea56-4c57-8397-f6e7b1c944f9", "isActive": false, "balance": "$3,646.07", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Ava Patel", "gender": "female", "company": "GOLISTIC", "email": "avapatel@golistic.com", "phone": "+1 (839) 414-2262", "address": "854 Milford Street, Valmy, Northern Mariana Islands, 6892", "about": "Aute laboris et voluptate ad ex nostrud consequat deserunt in nostrud consequat. Deserunt deserunt ad Lorem enim commodo irure laborum mollit irure amet cillum pariatur. Ipsum laboris ipsum dolor ex occaecat reprehenderit irure consequat labore. Ex occaecat consectetur velit culpa in ipsum. Nisi ad deserunt excepteur irure culpa proident dolore.\r\n", "registered": "2014-02-24T18:24:15-13:00", "latitude": -13.364957, "longitude": 7.840041, "tags": [ "in", "pariatur", "qui", "laboris", "ullamco", "officia", "laborum" ], "friends": [ { "id": 0, "name": "Christie Cook" }, { "id": 1, "name": "Montoya Bullock" }, { "id": 2, "name": "Monroe Nicholson" } ], "greeting": "Hello, Ava Patel! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2811505ae5727796c1", "index": 3765, "guid": "c3ea6a23-9915-44fb-99e6-c056c8337d28", "isActive": true, "balance": "$1,203.60", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Mallory Grimes", "gender": "female", "company": "INCUBUS", "email": "mallorygrimes@incubus.com", "phone": "+1 (811) 513-2964", "address": "887 Veterans Avenue, Brantleyville, Colorado, 1521", "about": "In commodo ex commodo sit. Reprehenderit pariatur pariatur tempor culpa exercitation culpa pariatur in minim occaecat. Consectetur consectetur enim do qui esse labore veniam.\r\n", "registered": "2014-08-09T03:21:34-12:00", "latitude": -55.178689, "longitude": -122.446674, "tags": [ "ea", "labore", "dolor", "laboris", "aliqua", "occaecat", "est" ], "friends": [ { "id": 0, "name": "Waters Olsen" }, { "id": 1, "name": "Kristen Ramsey" }, { "id": 2, "name": "Pauline Barrera" } ], "greeting": "Hello, Mallory Grimes! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28ccf5125fa67e9200", "index": 3766, "guid": "672eb41d-a04b-4e35-bc23-d72e8488dcc2", "isActive": false, "balance": "$1,710.36", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Gaines Moses", "gender": "male", "company": "ENDIPIN", "email": "gainesmoses@endipin.com", "phone": "+1 (897) 488-3331", "address": "477 Aitken Place, Northridge, Idaho, 1582", "about": "Deserunt commodo sunt consectetur consequat consequat aliquip esse. Ut anim esse ullamco commodo laboris sit sit dolore aute qui in aliqua. Laboris minim nulla ad quis minim nulla commodo ipsum consequat elit. Esse irure sint nostrud cillum dolor. Qui pariatur do anim reprehenderit laboris occaecat velit elit amet id.\r\n", "registered": "2014-05-08T07:59:30-12:00", "latitude": -49.413936, "longitude": -167.429526, "tags": [ "ad", "est", "nulla", "officia", "elit", "aliqua", "in" ], "friends": [ { "id": 0, "name": "Cotton Huff" }, { "id": 1, "name": "Diane Mcintyre" }, { "id": 2, "name": "Alyson Hicks" } ], "greeting": "Hello, Gaines Moses! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea287c426bf3de7482c0", "index": 3767, "guid": "f612d53a-73b8-455b-af69-38379325895c", "isActive": true, "balance": "$1,379.97", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Simon Carlson", "gender": "male", "company": "GAPTEC", "email": "simoncarlson@gaptec.com", "phone": "+1 (875) 529-3208", "address": "436 Harwood Place, Cornfields, Marshall Islands, 9778", "about": "Nisi adipisicing velit aliqua laboris dolore non et reprehenderit enim dolore non deserunt dolor mollit. Officia commodo adipisicing ut sunt eiusmod ea nostrud eu cillum magna. Magna do qui occaecat pariatur anim. Incididunt esse voluptate eu ut consequat anim labore cillum minim ut anim. Nulla enim officia ad eu eiusmod elit cupidatat enim proident laboris in ea nostrud enim. Enim nisi nulla do aute commodo tempor consectetur velit excepteur.\r\n", "registered": "2014-09-10T22:19:58-12:00", "latitude": -58.524019, "longitude": 31.259223, "tags": [ "aliquip", "anim", "enim", "deserunt", "commodo", "in", "cupidatat" ], "friends": [ { "id": 0, "name": "Kris Ayers" }, { "id": 1, "name": "Evelyn Leach" }, { "id": 2, "name": "Natalie Lyons" } ], "greeting": "Hello, Simon Carlson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28f17d6423e4026922", "index": 3768, "guid": "a9b9214d-6ff4-4c3a-977f-2374343f85c0", "isActive": false, "balance": "$2,345.20", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Bobbie Robles", "gender": "female", "company": "COGENTRY", "email": "bobbierobles@cogentry.com", "phone": "+1 (804) 474-2336", "address": "178 Brooklyn Avenue, Gratton, New York, 5673", "about": "Esse irure labore Lorem ad adipisicing cillum incididunt. Excepteur magna ea sint nisi eu laborum cupidatat deserunt sit sunt cupidatat elit voluptate dolor. Labore do quis est ea ea dolor minim ullamco elit.\r\n", "registered": "2014-08-06T10:16:49-12:00", "latitude": -3.316104, "longitude": 147.240149, "tags": [ "do", "deserunt", "excepteur", "labore", "nostrud", "nisi", "veniam" ], "friends": [ { "id": 0, "name": "Brooke Curry" }, { "id": 1, "name": "Rosalinda Marquez" }, { "id": 2, "name": "Rios Acevedo" } ], "greeting": "Hello, Bobbie Robles! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28cf1bf846774afce6", "index": 3769, "guid": "0aa4c4e5-affe-487f-ae61-4628a0a7d8dc", "isActive": false, "balance": "$3,035.19", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Craft Reeves", "gender": "male", "company": "TRASOLA", "email": "craftreeves@trasola.com", "phone": "+1 (884) 556-2017", "address": "777 Olive Street, Edinburg, Guam, 7130", "about": "Tempor consequat sit eu sunt adipisicing incididunt tempor culpa aliquip elit laborum. Magna culpa eu reprehenderit culpa laboris adipisicing ipsum aliqua nulla sunt labore. Anim minim elit ex anim et commodo occaecat. Laborum culpa do sunt ea ex minim enim do commodo ex id. Amet culpa velit ipsum amet aliquip ut esse cupidatat et dolore pariatur dolore tempor do. Eu aliqua minim laborum consequat occaecat ad pariatur sit commodo. Ut nulla elit eu nisi est adipisicing officia labore anim non id proident eu exercitation.\r\n", "registered": "2014-08-17T16:22:57-12:00", "latitude": 6.272795, "longitude": -73.844494, "tags": [ "ex", "aute", "ut", "ex", "amet", "sint", "mollit" ], "friends": [ { "id": 0, "name": "Shawn Irwin" }, { "id": 1, "name": "Price Terrell" }, { "id": 2, "name": "Carver Schmidt" } ], "greeting": "Hello, Craft Reeves! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28260ddab40f161d47", "index": 3770, "guid": "f52795f1-1ee6-4137-8ff5-680c88e0445d", "isActive": false, "balance": "$3,028.66", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Nelda Delaney", "gender": "female", "company": "VORTEXACO", "email": "neldadelaney@vortexaco.com", "phone": "+1 (986) 547-2818", "address": "923 Johnson Street, Olney, Virgin Islands, 3133", "about": "Occaecat aute mollit voluptate sunt veniam labore eu eu. Nisi eiusmod occaecat ullamco cupidatat anim ea enim sint laborum irure quis pariatur laborum laboris. Nulla incididunt enim in aliqua esse exercitation enim amet eu eu laboris anim. Consectetur in exercitation velit laboris elit quis nulla sit eiusmod Lorem duis et id nostrud.\r\n", "registered": "2014-07-12T00:49:06-12:00", "latitude": -33.057146, "longitude": 99.968684, "tags": [ "Lorem", "non", "adipisicing", "sit", "sint", "pariatur", "est" ], "friends": [ { "id": 0, "name": "Moore Wyatt" }, { "id": 1, "name": "Garrison Lindsey" }, { "id": 2, "name": "Peterson Head" } ], "greeting": "Hello, Nelda Delaney! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28030e24315321c4e4", "index": 3771, "guid": "5c288fff-7084-494d-825e-11ac2de523ca", "isActive": true, "balance": "$1,100.06", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Nunez Morrison", "gender": "male", "company": "QUAILCOM", "email": "nunezmorrison@quailcom.com", "phone": "+1 (992) 569-3202", "address": "343 Hutchinson Court, Elliston, Massachusetts, 3458", "about": "Irure eu cupidatat tempor excepteur adipisicing culpa. Nostrud eiusmod et non officia. Est laboris officia sunt fugiat quis in laborum fugiat quis ex laborum elit.\r\n", "registered": "2014-01-25T20:36:31-13:00", "latitude": 10.885103, "longitude": 1.805954, "tags": [ "aute", "aute", "enim", "deserunt", "ex", "fugiat", "est" ], "friends": [ { "id": 0, "name": "Lucas Crawford" }, { "id": 1, "name": "Reese Espinoza" }, { "id": 2, "name": "Sallie Sullivan" } ], "greeting": "Hello, Nunez Morrison! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea280061d07d5058c2cd", "index": 3772, "guid": "9ba095ad-7617-4423-987e-54ff9cbbc146", "isActive": false, "balance": "$3,669.42", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Deleon Day", "gender": "male", "company": "EMOLTRA", "email": "deleonday@emoltra.com", "phone": "+1 (841) 433-3701", "address": "200 Murdock Court, Tolu, Utah, 7584", "about": "Proident enim elit tempor sunt occaecat sunt incididunt non officia officia est do aliquip tempor. Lorem incididunt nulla tempor labore sunt deserunt nisi. Aliqua voluptate excepteur culpa occaecat et duis ut. Duis minim cupidatat culpa proident. Veniam eiusmod duis nostrud aliquip proident adipisicing eu eiusmod cillum commodo quis sunt id. Nostrud enim nostrud id cillum ea anim id culpa nulla.\r\n", "registered": "2014-06-08T11:24:43-12:00", "latitude": -51.25252, "longitude": 12.402299, "tags": [ "sint", "fugiat", "deserunt", "sint", "ad", "sint", "id" ], "friends": [ { "id": 0, "name": "Lucille Harmon" }, { "id": 1, "name": "Holland English" }, { "id": 2, "name": "Wiggins Buckley" } ], "greeting": "Hello, Deleon Day! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28380ae0298fbb3f35", "index": 3773, "guid": "8ccad528-cf7a-4171-b902-d02ee9c7b646", "isActive": true, "balance": "$2,530.34", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Clarke Haley", "gender": "male", "company": "DAIDO", "email": "clarkehaley@daido.com", "phone": "+1 (935) 480-2707", "address": "601 Bennet Court, Inkerman, Montana, 4535", "about": "Est sunt nisi id quis in sit qui labore commodo mollit dolore. Pariatur tempor nulla laboris velit magna commodo pariatur commodo excepteur. Exercitation reprehenderit sit voluptate veniam eu. Consectetur reprehenderit voluptate dolor aliquip ea nulla. Dolore incididunt dolor tempor laboris non id eiusmod.\r\n", "registered": "2014-02-03T02:52:24-13:00", "latitude": 53.860451, "longitude": 177.004841, "tags": [ "voluptate", "culpa", "ex", "enim", "occaecat", "dolore", "proident" ], "friends": [ { "id": 0, "name": "Stewart Mullen" }, { "id": 1, "name": "Florence Bray" }, { "id": 2, "name": "Case Gay" } ], "greeting": "Hello, Clarke Haley! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea289cf391d5603f7757", "index": 3774, "guid": "df08b939-f663-49a7-812a-da0f06953836", "isActive": true, "balance": "$1,579.92", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Santana Pitts", "gender": "male", "company": "DOGSPA", "email": "santanapitts@dogspa.com", "phone": "+1 (820) 453-3258", "address": "672 Heath Place, Singer, Wisconsin, 9482", "about": "Sit voluptate commodo ipsum esse excepteur nostrud sunt. Proident sit cupidatat nisi dolore aliquip ex duis nisi incididunt quis do sint. In sunt dolor eu in aute proident laboris culpa sit commodo consectetur. Aliqua eiusmod nulla laboris ex. Proident ex ullamco et sit irure eu veniam sit irure ex officia aute fugiat.\r\n", "registered": "2014-09-17T10:23:08-12:00", "latitude": -14.925414, "longitude": -48.720399, "tags": [ "excepteur", "fugiat", "elit", "id", "anim", "ad", "tempor" ], "friends": [ { "id": 0, "name": "Luann Vance" }, { "id": 1, "name": "Delaney Kidd" }, { "id": 2, "name": "Helen Bridges" } ], "greeting": "Hello, Santana Pitts! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea288affcb840272299a", "index": 3775, "guid": "4c7cfe07-5829-454c-a3f1-798986e50eee", "isActive": true, "balance": "$1,455.77", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Lakisha Alford", "gender": "female", "company": "COMCUR", "email": "lakishaalford@comcur.com", "phone": "+1 (907) 462-2203", "address": "562 Clifford Place, Islandia, Maine, 2842", "about": "Ea magna esse ad mollit minim ex dolor aliquip consectetur ullamco. Excepteur magna nostrud nulla esse id sunt est aliqua non exercitation nulla ipsum labore mollit. Nisi nostrud consequat ad aliquip nisi voluptate. Cillum minim nostrud est nisi culpa. Consequat do minim eiusmod ullamco cillum labore reprehenderit.\r\n", "registered": "2014-05-03T22:23:08-12:00", "latitude": 54.309367, "longitude": 112.70932, "tags": [ "magna", "irure", "qui", "in", "qui", "do", "consequat" ], "friends": [ { "id": 0, "name": "Lawrence Riley" }, { "id": 1, "name": "Barker Brennan" }, { "id": 2, "name": "Snyder Austin" } ], "greeting": "Hello, Lakisha Alford! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28ae13b4d408a96eb8", "index": 3776, "guid": "50e9a4e1-e696-49fb-ac51-db4b24151534", "isActive": true, "balance": "$2,640.51", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Jami Oneil", "gender": "female", "company": "BUZZOPIA", "email": "jamioneil@buzzopia.com", "phone": "+1 (862) 486-2184", "address": "485 Milton Street, Succasunna, Virginia, 8725", "about": "Proident ea consectetur ea exercitation Lorem enim magna eu incididunt exercitation nisi ex. Ipsum et deserunt do irure. Sunt nulla duis incididunt ea sit ipsum. Dolor eu et consectetur velit enim eiusmod ex veniam aliqua id velit in reprehenderit est.\r\n", "registered": "2014-06-03T18:53:22-12:00", "latitude": 3.623844, "longitude": -25.169123, "tags": [ "amet", "minim", "ullamco", "exercitation", "ut", "ad", "velit" ], "friends": [ { "id": 0, "name": "Stephenson Richard" }, { "id": 1, "name": "Branch Casey" }, { "id": 2, "name": "Mckee Figueroa" } ], "greeting": "Hello, Jami Oneil! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2836d37bb6f06dacf0", "index": 3777, "guid": "70d762fd-37ec-4721-9a9a-4138b91a3962", "isActive": false, "balance": "$1,635.72", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Janice Gallagher", "gender": "female", "company": "INRT", "email": "janicegallagher@inrt.com", "phone": "+1 (931) 402-2066", "address": "249 Irving Avenue, Bainbridge, Kentucky, 4547", "about": "Culpa aliquip do reprehenderit reprehenderit laborum anim exercitation elit veniam esse in. Aliqua labore cupidatat proident amet magna est. Aliquip anim incididunt mollit deserunt ut aliquip. Sunt voluptate non cupidatat sit laborum incididunt. Sint ex sunt non proident culpa irure reprehenderit. Consequat sit veniam adipisicing duis sint. Nostrud proident sint mollit id veniam irure dolore fugiat dolor pariatur non.\r\n", "registered": "2014-07-26T05:27:45-12:00", "latitude": -4.552394, "longitude": -26.452672, "tags": [ "qui", "elit", "nulla", "reprehenderit", "pariatur", "minim", "deserunt" ], "friends": [ { "id": 0, "name": "Holden Copeland" }, { "id": 1, "name": "Morales Gould" }, { "id": 2, "name": "Middleton Sellers" } ], "greeting": "Hello, Janice Gallagher! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea288edf40e167d54aa3", "index": 3778, "guid": "80d86cd4-43e2-43eb-afb7-da1baa2e5b5b", "isActive": false, "balance": "$1,685.67", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Darlene Long", "gender": "female", "company": "ATGEN", "email": "darlenelong@atgen.com", "phone": "+1 (857) 564-3109", "address": "407 Micieli Place, Cliffside, Connecticut, 8586", "about": "Ullamco esse amet sunt minim excepteur est elit laboris mollit ad. Et esse laborum id ipsum tempor mollit do. Cillum aliquip id velit aliqua voluptate dolor irure ea. Veniam velit est quis sint. Est do commodo eu voluptate et adipisicing quis ullamco laboris elit eiusmod velit tempor officia. Nostrud cillum officia cillum culpa.\r\n", "registered": "2014-07-20T11:09:08-12:00", "latitude": 61.413734, "longitude": -103.767206, "tags": [ "fugiat", "quis", "fugiat", "elit", "aliquip", "esse", "do" ], "friends": [ { "id": 0, "name": "Tabatha Barnett" }, { "id": 1, "name": "Lea Morin" }, { "id": 2, "name": "Garcia Scott" } ], "greeting": "Hello, Darlene Long! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea283f48e5f6f4bc3fd4", "index": 3779, "guid": "fcfacaa1-cab9-4f56-bf0a-9a9136f986de", "isActive": true, "balance": "$2,061.97", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Tate Prince", "gender": "male", "company": "COMTREK", "email": "tateprince@comtrek.com", "phone": "+1 (895) 481-3235", "address": "333 Crawford Avenue, Germanton, Mississippi, 4432", "about": "Ex commodo sit velit in esse amet incididunt nostrud consequat. Cillum ea duis pariatur proident aute. Eiusmod exercitation est eiusmod adipisicing et aute anim consequat duis id excepteur excepteur veniam. Voluptate aliquip do exercitation laborum. Esse et esse commodo reprehenderit anim aliquip sint culpa incididunt. Amet quis velit ad qui dolore labore ullamco dolor culpa quis. Veniam consequat do dolore sunt adipisicing proident enim laboris consequat occaecat.\r\n", "registered": "2014-02-09T12:22:26-13:00", "latitude": 73.073582, "longitude": 54.024081, "tags": [ "non", "id", "proident", "duis", "commodo", "labore", "quis" ], "friends": [ { "id": 0, "name": "Veronica Ryan" }, { "id": 1, "name": "Loretta Knox" }, { "id": 2, "name": "Morrow Yang" } ], "greeting": "Hello, Tate Prince! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea282020be7eab7bf1a0", "index": 3780, "guid": "239bd740-fb8c-48bf-8ffe-e8f258605cb3", "isActive": true, "balance": "$3,303.03", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Silva Baldwin", "gender": "male", "company": "TSUNAMIA", "email": "silvabaldwin@tsunamia.com", "phone": "+1 (968) 440-3092", "address": "774 Gerald Court, Seymour, Washington, 8286", "about": "Esse velit tempor do adipisicing do proident minim officia nostrud minim veniam labore do. Irure do sunt eu do anim eu id ea dolore. Esse sint ad cupidatat dolore.\r\n", "registered": "2014-07-01T04:57:01-12:00", "latitude": -8.491304, "longitude": 24.068318, "tags": [ "consectetur", "velit", "eu", "laborum", "non", "esse", "sunt" ], "friends": [ { "id": 0, "name": "Rutledge Hall" }, { "id": 1, "name": "Angelita Joyner" }, { "id": 2, "name": "Roseann Goodwin" } ], "greeting": "Hello, Silva Baldwin! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28fb3fa6a784be20fa", "index": 3781, "guid": "658325c1-417c-4415-9bbf-9e5b4d410709", "isActive": false, "balance": "$2,416.86", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Morris Munoz", "gender": "male", "company": "ANACHO", "email": "morrismunoz@anacho.com", "phone": "+1 (963) 432-2767", "address": "267 Reed Street, Franklin, Tennessee, 9597", "about": "Qui mollit nostrud aute aliqua non reprehenderit amet occaecat laborum. Mollit incididunt anim enim ullamco aliquip consectetur veniam ea sit aute non reprehenderit eiusmod. Reprehenderit do laboris tempor et nisi qui anim in eu sit incididunt adipisicing voluptate cillum.\r\n", "registered": "2014-01-04T01:59:16-13:00", "latitude": 79.296108, "longitude": -126.771468, "tags": [ "pariatur", "labore", "consectetur", "quis", "mollit", "veniam", "quis" ], "friends": [ { "id": 0, "name": "Hewitt Bush" }, { "id": 1, "name": "Morin Ramos" }, { "id": 2, "name": "Helga Wagner" } ], "greeting": "Hello, Morris Munoz! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28134b6208a245ae2c", "index": 3782, "guid": "bb42ff8d-b866-40c6-ab5f-c2d63f15c501", "isActive": false, "balance": "$1,201.90", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Shirley Sandoval", "gender": "female", "company": "PAPRICUT", "email": "shirleysandoval@papricut.com", "phone": "+1 (875) 470-3123", "address": "540 Hinsdale Street, Richville, Alabama, 4665", "about": "Adipisicing enim fugiat do quis ad ea. Do dolor laboris quis esse eiusmod. Laboris ad laboris aute quis cillum ullamco veniam aliqua proident voluptate quis.\r\n", "registered": "2014-07-11T10:13:15-12:00", "latitude": -45.900467, "longitude": 178.814391, "tags": [ "reprehenderit", "fugiat", "pariatur", "incididunt", "labore", "velit", "aliqua" ], "friends": [ { "id": 0, "name": "Gill Bentley" }, { "id": 1, "name": "Nina Skinner" }, { "id": 2, "name": "Dalton Sharpe" } ], "greeting": "Hello, Shirley Sandoval! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28e81e235e38d60a3d", "index": 3783, "guid": "a791d7d7-3707-4752-b1da-d02abdb548d1", "isActive": false, "balance": "$2,994.21", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Charlene Hull", "gender": "female", "company": "MEGALL", "email": "charlenehull@megall.com", "phone": "+1 (946) 516-3427", "address": "717 Chester Street, Bluffview, Ohio, 3378", "about": "Exercitation minim et eiusmod do pariatur ullamco id sit aliqua Lorem ullamco ipsum nostrud. Ut aliquip adipisicing eiusmod do ad occaecat reprehenderit est tempor ullamco eiusmod. Occaecat minim mollit commodo ex adipisicing. Deserunt veniam exercitation eu officia magna quis minim cupidatat.\r\n", "registered": "2014-01-24T23:05:48-13:00", "latitude": 73.241915, "longitude": 51.114083, "tags": [ "cupidatat", "laborum", "sunt", "nisi", "adipisicing", "dolore", "non" ], "friends": [ { "id": 0, "name": "Walter Carney" }, { "id": 1, "name": "Helena Heath" }, { "id": 2, "name": "Dunlap Ortega" } ], "greeting": "Hello, Charlene Hull! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2826d72c0df158aa8b", "index": 3784, "guid": "b69137c5-ce4c-4e82-b1ca-b6d97e3e1955", "isActive": false, "balance": "$3,266.41", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Reyes Charles", "gender": "male", "company": "EXOSPACE", "email": "reyescharles@exospace.com", "phone": "+1 (907) 401-2227", "address": "211 Summit Street, Grandview, Hawaii, 9665", "about": "Incididunt est laboris quis eu. Est nisi nostrud velit duis elit consequat esse laborum adipisicing ullamco. Commodo reprehenderit proident in sunt excepteur culpa anim esse officia sunt incididunt labore nostrud. Proident cupidatat culpa officia tempor tempor nostrud non est amet. Aliqua pariatur laborum esse id esse sunt. Veniam eiusmod qui sunt ullamco aliquip pariatur incididunt elit nulla. Non sint id occaecat ullamco est exercitation nostrud id.\r\n", "registered": "2014-03-22T20:09:02-13:00", "latitude": 69.092697, "longitude": -36.415809, "tags": [ "commodo", "mollit", "quis", "non", "sit", "aute", "ullamco" ], "friends": [ { "id": 0, "name": "Clarissa Hill" }, { "id": 1, "name": "Lucile Thompson" }, { "id": 2, "name": "Vaughn Huffman" } ], "greeting": "Hello, Reyes Charles! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28aa7ca0de2512fcbe", "index": 3785, "guid": "6518e8a4-28d1-46b5-a8ca-5c4760a25b7f", "isActive": false, "balance": "$3,064.95", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Lacy Bishop", "gender": "female", "company": "BEDDER", "email": "lacybishop@bedder.com", "phone": "+1 (811) 594-2565", "address": "637 Prince Street, Hatteras, New Mexico, 4803", "about": "Duis pariatur pariatur adipisicing labore qui cupidatat sunt mollit aute nostrud velit fugiat. Est nisi commodo amet voluptate ipsum. Culpa aute anim cillum pariatur magna sint quis est. In esse pariatur non reprehenderit. Fugiat aliquip esse ex consequat Lorem consectetur. Ad duis elit aliqua incididunt enim esse incididunt in deserunt. Occaecat aliqua et officia mollit.\r\n", "registered": "2014-08-11T22:18:37-12:00", "latitude": 79.734238, "longitude": 176.550592, "tags": [ "consequat", "tempor", "exercitation", "minim", "aliqua", "deserunt", "do" ], "friends": [ { "id": 0, "name": "Teri Jimenez" }, { "id": 1, "name": "Frances Morris" }, { "id": 2, "name": "Juliet Gentry" } ], "greeting": "Hello, Lacy Bishop! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28cd30f9f1a13df8b1", "index": 3786, "guid": "76a24a49-9af6-4647-adac-7e247338b1c6", "isActive": true, "balance": "$1,804.57", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Kirkland Estes", "gender": "male", "company": "NSPIRE", "email": "kirklandestes@nspire.com", "phone": "+1 (901) 581-2468", "address": "468 Cozine Avenue, Marienthal, Maryland, 6050", "about": "Nulla veniam veniam adipisicing voluptate reprehenderit nisi nisi anim excepteur occaecat aute duis. Deserunt consectetur nulla anim cupidatat occaecat veniam veniam. Nostrud occaecat amet eiusmod et aliqua culpa occaecat ex fugiat elit nulla in.\r\n", "registered": "2014-07-03T22:09:12-12:00", "latitude": -30.680304, "longitude": 162.648268, "tags": [ "duis", "incididunt", "amet", "minim", "quis", "enim", "mollit" ], "friends": [ { "id": 0, "name": "Benson Tate" }, { "id": 1, "name": "Chandler Tyson" }, { "id": 2, "name": "Bass Stanton" } ], "greeting": "Hello, Kirkland Estes! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2815fca648609266dd", "index": 3787, "guid": "54e188df-8e4a-42bf-83d1-093e406b189e", "isActive": true, "balance": "$3,340.80", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Lizzie Pope", "gender": "female", "company": "GEEKOSIS", "email": "lizziepope@geekosis.com", "phone": "+1 (846) 444-3951", "address": "369 Dupont Street, Rosewood, Alaska, 7979", "about": "Minim ea qui fugiat Lorem dolore nulla cupidatat ipsum nostrud labore. Veniam cillum qui incididunt exercitation incididunt incididunt labore ex ut esse velit commodo. Sunt Lorem commodo sit id ullamco cupidatat laboris eu nisi cillum elit elit quis nisi. Do velit adipisicing ea aute incididunt veniam eu nisi duis aliqua ad consectetur voluptate voluptate. Incididunt eiusmod cillum qui reprehenderit aute id consequat officia ullamco nulla laboris proident. Consectetur et ad laborum amet fugiat. Do laboris ullamco adipisicing cupidatat elit enim ea exercitation sunt consequat esse excepteur irure commodo.\r\n", "registered": "2014-07-16T01:04:27-12:00", "latitude": 74.286055, "longitude": 99.247073, "tags": [ "dolore", "quis", "exercitation", "elit", "nostrud", "deserunt", "laborum" ], "friends": [ { "id": 0, "name": "Bender Galloway" }, { "id": 1, "name": "Bertha Compton" }, { "id": 2, "name": "Phyllis Morgan" } ], "greeting": "Hello, Lizzie Pope! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28bb8705d7aa417d1a", "index": 3788, "guid": "42563344-3b6c-45f0-9a01-46436bad44f5", "isActive": true, "balance": "$3,215.90", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "York Meadows", "gender": "male", "company": "COASH", "email": "yorkmeadows@coash.com", "phone": "+1 (914) 406-2842", "address": "298 Caton Avenue, Sharon, Arizona, 4838", "about": "Consectetur aute excepteur officia eu eu. Quis commodo in duis ad cupidatat consequat ea in aute elit amet. Commodo ad reprehenderit enim dolore ipsum veniam incididunt quis dolore mollit ut ipsum dolor incididunt.\r\n", "registered": "2014-04-11T21:25:54-12:00", "latitude": 44.377502, "longitude": 22.647125, "tags": [ "adipisicing", "qui", "ut", "id", "nostrud", "et", "eiusmod" ], "friends": [ { "id": 0, "name": "Graves Paul" }, { "id": 1, "name": "Clara Browning" }, { "id": 2, "name": "Mia Knapp" } ], "greeting": "Hello, York Meadows! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28938bd68477a6bcdc", "index": 3789, "guid": "53c5c573-4461-4d1e-be43-d927920df7d0", "isActive": true, "balance": "$2,649.43", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Atkinson Santos", "gender": "male", "company": "REPETWIRE", "email": "atkinsonsantos@repetwire.com", "phone": "+1 (936) 509-3650", "address": "519 Eldert Street, Konterra, Federated States Of Micronesia, 960", "about": "Labore ex eiusmod deserunt dolore deserunt do adipisicing. Excepteur do aliquip dolore fugiat elit ullamco pariatur minim est. Incididunt ad consequat consequat occaecat sunt excepteur ad velit aliquip eu est. Aliquip consequat in eiusmod consectetur ad do elit nostrud. Sit est minim cupidatat fugiat est adipisicing ex mollit exercitation.\r\n", "registered": "2014-04-18T14:50:34-12:00", "latitude": -36.931427, "longitude": -83.287557, "tags": [ "pariatur", "consequat", "reprehenderit", "esse", "in", "id", "sint" ], "friends": [ { "id": 0, "name": "Patricia Frank" }, { "id": 1, "name": "Janet Bird" }, { "id": 2, "name": "Latoya Bryan" } ], "greeting": "Hello, Atkinson Santos! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28665328eafb14f2b0", "index": 3790, "guid": "ec779755-5dec-4d3f-ab45-5dae7fac8067", "isActive": true, "balance": "$2,796.34", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Chapman Joyce", "gender": "male", "company": "ZOGAK", "email": "chapmanjoyce@zogak.com", "phone": "+1 (825) 461-3315", "address": "583 Revere Place, Waterview, Oklahoma, 2225", "about": "Ea laboris commodo id sunt qui occaecat aute ex aliquip Lorem adipisicing occaecat voluptate. Lorem dolor ut tempor mollit reprehenderit ut sit excepteur ea commodo nulla ad ad in. Voluptate consequat aliquip consectetur veniam. Cillum incididunt laboris esse laborum nulla. Id exercitation mollit do reprehenderit exercitation in laborum velit elit velit laborum sint ex sunt. Sint consectetur magna velit anim aliquip nulla dolore labore Lorem incididunt aliqua laborum.\r\n", "registered": "2014-06-16T12:47:51-12:00", "latitude": -52.916707, "longitude": 27.23101, "tags": [ "nisi", "mollit", "elit", "id", "tempor", "laboris", "et" ], "friends": [ { "id": 0, "name": "English Wilcox" }, { "id": 1, "name": "Alice Dawson" }, { "id": 2, "name": "Hillary Glover" } ], "greeting": "Hello, Chapman Joyce! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f90680c8ca606a16", "index": 3791, "guid": "ca81c661-51dc-422e-9e09-fcca72fd7890", "isActive": true, "balance": "$1,702.80", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Janette Mcknight", "gender": "female", "company": "PHEAST", "email": "janettemcknight@pheast.com", "phone": "+1 (811) 595-2171", "address": "171 Wilson Street, Rockingham, Michigan, 5478", "about": "Est cupidatat anim do excepteur. Amet laborum dolor qui reprehenderit eiusmod commodo non excepteur proident. Nostrud duis dolor anim aliquip sunt. Excepteur sunt minim et amet cillum Lorem fugiat pariatur veniam excepteur sit sint dolore.\r\n", "registered": "2014-07-10T13:05:15-12:00", "latitude": 15.403356, "longitude": -56.09731, "tags": [ "aliqua", "exercitation", "velit", "voluptate", "commodo", "tempor", "ea" ], "friends": [ { "id": 0, "name": "Horn Harris" }, { "id": 1, "name": "Murphy Price" }, { "id": 2, "name": "Muriel Mckee" } ], "greeting": "Hello, Janette Mcknight! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28cfd34f13fef435e4", "index": 3792, "guid": "a34caa50-a6a0-4cd3-8f87-7169b80081d8", "isActive": false, "balance": "$2,598.77", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Prince Mcguire", "gender": "male", "company": "BICOL", "email": "princemcguire@bicol.com", "phone": "+1 (843) 484-3338", "address": "130 Ellery Street, Vaughn, Kansas, 509", "about": "In exercitation elit reprehenderit commodo eiusmod incididunt pariatur cupidatat nisi irure laborum. Qui enim aute id sint sint incididunt labore nostrud. Occaecat esse eu fugiat proident. Eiusmod sit nostrud est sunt ea occaecat cupidatat duis cillum id. Dolore id minim deserunt est aute ut irure officia ullamco non irure ullamco. Duis officia amet proident mollit et.\r\n", "registered": "2014-06-14T04:04:07-12:00", "latitude": 16.803342, "longitude": -94.37991, "tags": [ "tempor", "Lorem", "esse", "cillum", "esse", "velit", "pariatur" ], "friends": [ { "id": 0, "name": "Justine Gray" }, { "id": 1, "name": "Leonor Sheppard" }, { "id": 2, "name": "Simpson Kaufman" } ], "greeting": "Hello, Prince Mcguire! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2876d8af67489cb064", "index": 3793, "guid": "f459303e-9a0e-40b9-9f73-cf1e67ab8124", "isActive": false, "balance": "$1,175.17", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Cassandra Chavez", "gender": "female", "company": "GALLAXIA", "email": "cassandrachavez@gallaxia.com", "phone": "+1 (838) 475-3646", "address": "773 Thornton Street, Marion, South Dakota, 2307", "about": "Reprehenderit enim consectetur duis do duis voluptate nulla laborum eu. Minim est adipisicing pariatur quis elit veniam anim fugiat sit. Incididunt elit dolor ipsum laboris in deserunt aliquip mollit mollit consectetur id sunt.\r\n", "registered": "2014-04-06T10:58:36-12:00", "latitude": -49.698305, "longitude": -78.257223, "tags": [ "consectetur", "ex", "nulla", "irure", "eiusmod", "adipisicing", "aliquip" ], "friends": [ { "id": 0, "name": "Petersen Nichols" }, { "id": 1, "name": "Bonner Mathews" }, { "id": 2, "name": "Concetta Young" } ], "greeting": "Hello, Cassandra Chavez! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28d8e5e5e638fe090d", "index": 3794, "guid": "87b0a341-52bd-4d2a-bc48-9261a109cbda", "isActive": true, "balance": "$1,205.08", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Angeline Santana", "gender": "female", "company": "PHUEL", "email": "angelinesantana@phuel.com", "phone": "+1 (999) 493-3470", "address": "668 Fulton Street, Bancroft, West Virginia, 1457", "about": "Amet incididunt consequat ut quis eiusmod esse elit elit exercitation dolore. Consequat voluptate ex reprehenderit nisi nulla veniam labore do exercitation. Ullamco commodo ad pariatur est ea. Mollit elit duis officia culpa veniam nisi officia culpa amet.\r\n", "registered": "2014-05-29T16:09:44-12:00", "latitude": 60.973851, "longitude": -83.966983, "tags": [ "magna", "officia", "ipsum", "proident", "voluptate", "aliquip", "aute" ], "friends": [ { "id": 0, "name": "Stephens Mcneil" }, { "id": 1, "name": "Higgins Lang" }, { "id": 2, "name": "Mays Obrien" } ], "greeting": "Hello, Angeline Santana! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea289c1238b43daec60d", "index": 3795, "guid": "8b936f2d-d685-4436-88e6-96b4f6fb1609", "isActive": false, "balance": "$3,807.10", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Phillips Todd", "gender": "male", "company": "SINGAVERA", "email": "phillipstodd@singavera.com", "phone": "+1 (858) 577-3220", "address": "453 Aviation Road, Lawrence, Texas, 9996", "about": "Fugiat veniam consequat culpa mollit velit veniam exercitation irure amet exercitation aute anim. Ut amet et mollit consequat. Excepteur magna qui sunt velit mollit cillum culpa ipsum non quis nostrud.\r\n", "registered": "2014-08-03T15:05:13-12:00", "latitude": -53.297552, "longitude": 133.058171, "tags": [ "do", "aliquip", "officia", "et", "mollit", "excepteur", "est" ], "friends": [ { "id": 0, "name": "Bell Holcomb" }, { "id": 1, "name": "Thomas Bolton" }, { "id": 2, "name": "Selma Wise" } ], "greeting": "Hello, Phillips Todd! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28e62a666ea01487b8", "index": 3796, "guid": "9b616005-9c7c-4724-9e67-d6025a50efb6", "isActive": true, "balance": "$1,447.36", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Cantu Humphrey", "gender": "male", "company": "EVENTEX", "email": "cantuhumphrey@eventex.com", "phone": "+1 (841) 592-2176", "address": "484 Arkansas Drive, Hardyville, Oregon, 5208", "about": "Irure nulla duis eiusmod qui exercitation labore proident anim anim. Duis commodo laboris adipisicing dolor deserunt duis dolor minim deserunt cupidatat magna. Irure culpa sint incididunt cillum consequat tempor irure nisi fugiat labore nisi. Est Lorem labore veniam sunt aute et reprehenderit mollit nisi esse tempor nostrud. Tempor culpa deserunt consequat incididunt occaecat officia proident veniam exercitation. Laboris ullamco ullamco cupidatat enim nulla et. Mollit reprehenderit enim adipisicing eu.\r\n", "registered": "2014-09-13T00:33:10-12:00", "latitude": -33.093823, "longitude": 158.491368, "tags": [ "deserunt", "est", "aute", "Lorem", "irure", "anim", "voluptate" ], "friends": [ { "id": 0, "name": "Neal Mclean" }, { "id": 1, "name": "Thompson Calhoun" }, { "id": 2, "name": "Romero Carroll" } ], "greeting": "Hello, Cantu Humphrey! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea280e37804346984b47", "index": 3797, "guid": "c2fb1ca9-a22c-4e7e-ac1e-5715d8334cbc", "isActive": false, "balance": "$1,057.40", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Sharon Little", "gender": "female", "company": "UPDAT", "email": "sharonlittle@updat.com", "phone": "+1 (886) 594-3030", "address": "453 Kensington Walk, Hasty, Nevada, 5936", "about": "Qui aute ullamco do aliqua exercitation reprehenderit qui mollit aute do. Esse ea id aliquip id occaecat sit tempor amet culpa incididunt excepteur exercitation est. Nostrud magna non labore mollit labore labore ea nulla officia magna sunt ad. Officia ea nulla ipsum adipisicing. Laboris qui sint irure elit velit elit proident proident pariatur irure aliquip fugiat mollit amet. Laboris culpa laborum occaecat commodo ex elit minim eiusmod Lorem occaecat et consectetur esse.\r\n", "registered": "2014-04-02T03:27:18-13:00", "latitude": -28.493716, "longitude": 107.342921, "tags": [ "anim", "eiusmod", "consectetur", "culpa", "esse", "sit", "fugiat" ], "friends": [ { "id": 0, "name": "Banks Adkins" }, { "id": 1, "name": "Yesenia Alvarado" }, { "id": 2, "name": "Pamela Wiggins" } ], "greeting": "Hello, Sharon Little! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28719abf288cd8bbff", "index": 3798, "guid": "24740c7d-1c35-474e-b4d9-8abed8255069", "isActive": false, "balance": "$2,010.07", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Sellers Oneal", "gender": "male", "company": "ANIXANG", "email": "sellersoneal@anixang.com", "phone": "+1 (919) 424-2865", "address": "426 Rost Place, Sanborn, Minnesota, 1661", "about": "Cillum labore nostrud minim eu fugiat Lorem magna sint officia. Non nisi magna excepteur commodo est excepteur incididunt sit consequat. Sunt magna excepteur incididunt nostrud cillum elit ipsum ullamco in consectetur ut. Et dolor commodo pariatur veniam culpa aliquip minim occaecat aute dolore.\r\n", "registered": "2014-07-17T19:28:20-12:00", "latitude": 2.700251, "longitude": 104.930545, "tags": [ "nulla", "amet", "ad", "esse", "in", "ad", "minim" ], "friends": [ { "id": 0, "name": "Sheila Lopez" }, { "id": 1, "name": "Adela Osborn" }, { "id": 2, "name": "Pate Duran" } ], "greeting": "Hello, Sellers Oneal! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28dd202cc06405ed59", "index": 3799, "guid": "c4ad6db5-1912-4fb4-9f27-f8eff3424430", "isActive": false, "balance": "$2,884.69", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Kristina Russo", "gender": "female", "company": "CUBICIDE", "email": "kristinarusso@cubicide.com", "phone": "+1 (962) 487-3007", "address": "568 Fleet Walk, Breinigsville, Missouri, 2716", "about": "Nisi ut amet ullamco nisi culpa deserunt ad est. Mollit culpa voluptate est ea cupidatat eiusmod consequat. Quis elit reprehenderit minim deserunt dolor laborum enim ipsum aliqua do ipsum. Ullamco nulla sunt do fugiat velit do officia occaecat irure ea Lorem cupidatat Lorem. Commodo sint esse voluptate deserunt tempor. Exercitation ea eiusmod officia est proident commodo mollit proident aliquip ipsum sunt magna. Nostrud cillum aute voluptate in id dolor.\r\n", "registered": "2014-06-19T22:57:15-12:00", "latitude": 37.929681, "longitude": 164.509989, "tags": [ "tempor", "voluptate", "et", "deserunt", "pariatur", "laboris", "nostrud" ], "friends": [ { "id": 0, "name": "Martha Moran" }, { "id": 1, "name": "Stevenson Rios" }, { "id": 2, "name": "Aurelia Rivas" } ], "greeting": "Hello, Kristina Russo! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28db6e1f729fc2e9d5", "index": 3800, "guid": "5532adc4-6cb3-406e-b5e9-22a58cc2a061", "isActive": true, "balance": "$3,732.66", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Carmen Leblanc", "gender": "female", "company": "EARTHWAX", "email": "carmenleblanc@earthwax.com", "phone": "+1 (868) 563-2910", "address": "942 Auburn Place, Graball, Rhode Island, 4371", "about": "Consectetur nostrud esse Lorem sit sit laboris esse proident exercitation consectetur eu. Sint amet mollit deserunt esse irure elit ullamco pariatur cupidatat enim veniam. Aliquip ad veniam ipsum fugiat esse in cillum reprehenderit eu. Elit enim ad excepteur nisi duis do proident cillum irure.\r\n", "registered": "2014-07-09T04:08:59-12:00", "latitude": -13.733389, "longitude": -71.824959, "tags": [ "nostrud", "quis", "aute", "dolore", "deserunt", "commodo", "proident" ], "friends": [ { "id": 0, "name": "Odonnell Navarro" }, { "id": 1, "name": "Gertrude Pratt" }, { "id": 2, "name": "Patti Mercer" } ], "greeting": "Hello, Carmen Leblanc! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea289fde94359deb44d8", "index": 3801, "guid": "64944454-caad-4a15-94c0-47eccf7b2c5d", "isActive": false, "balance": "$2,794.37", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Debbie Chan", "gender": "female", "company": "BRAINQUIL", "email": "debbiechan@brainquil.com", "phone": "+1 (956) 448-3304", "address": "289 Nostrand Avenue, Brookfield, Florida, 9224", "about": "Lorem et aliquip velit sunt consequat consequat cupidatat qui id ut incididunt proident occaecat. Amet non dolore ad proident ullamco voluptate nostrud cupidatat ex. Culpa aute non eu excepteur excepteur sunt velit esse ex ut exercitation pariatur minim. Deserunt laborum nulla proident deserunt in laborum ea eiusmod duis cillum laboris occaecat occaecat nostrud. Veniam enim adipisicing occaecat laborum consectetur fugiat dolore pariatur pariatur in amet laborum. Dolor ad incididunt ea consectetur in anim et voluptate.\r\n", "registered": "2014-04-04T14:13:01-13:00", "latitude": 76.63184, "longitude": 102.132224, "tags": [ "minim", "adipisicing", "quis", "consequat", "quis", "non", "occaecat" ], "friends": [ { "id": 0, "name": "Mosley Carter" }, { "id": 1, "name": "Jewel Cantu" }, { "id": 2, "name": "Cox Alvarez" } ], "greeting": "Hello, Debbie Chan! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28392f1ecc324f7dfc", "index": 3802, "guid": "be4b3579-b11e-4e78-9112-eea05dbd65ef", "isActive": false, "balance": "$3,295.78", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Fields Benjamin", "gender": "male", "company": "VALREDA", "email": "fieldsbenjamin@valreda.com", "phone": "+1 (869) 479-2872", "address": "992 Mill Road, Herbster, North Carolina, 8371", "about": "Sit elit labore anim anim. Est do dolor eiusmod qui adipisicing mollit eiusmod. Magna ea elit ad et esse laboris deserunt ut consectetur minim ea Lorem. Ut dolor pariatur id adipisicing. Pariatur sint dolor deserunt mollit excepteur consequat eiusmod commodo veniam anim irure labore nulla ullamco. Ipsum voluptate est exercitation consectetur laboris mollit.\r\n", "registered": "2014-05-03T08:46:35-12:00", "latitude": 38.83546, "longitude": 150.808036, "tags": [ "dolor", "nulla", "eu", "commodo", "qui", "anim", "adipisicing" ], "friends": [ { "id": 0, "name": "Gloria Strickland" }, { "id": 1, "name": "Ida Schroeder" }, { "id": 2, "name": "Alyssa Barker" } ], "greeting": "Hello, Fields Benjamin! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea285758b709f322e7ee", "index": 3803, "guid": "ae647da8-3cb8-4be3-aa7c-6b56dd98d0c0", "isActive": true, "balance": "$3,647.93", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Tanya Schultz", "gender": "female", "company": "ISOLOGICS", "email": "tanyaschultz@isologics.com", "phone": "+1 (890) 534-3143", "address": "269 Quay Street, Englevale, New Hampshire, 668", "about": "Sit sit anim deserunt ea tempor exercitation aute laboris reprehenderit adipisicing laborum enim laboris excepteur. Amet veniam ex nisi ex veniam dolor consectetur dolor labore tempor culpa. Cillum incididunt incididunt labore et ullamco voluptate officia ut exercitation. Minim in minim adipisicing pariatur est esse. Sunt consectetur aliqua mollit dolore qui tempor magna minim sunt dolore mollit. Ea anim et nostrud esse duis officia laboris cupidatat. Sunt anim nisi officia non enim ut nisi nisi aute pariatur aliquip nulla voluptate.\r\n", "registered": "2014-06-29T16:15:30-12:00", "latitude": 6.930266, "longitude": -121.97494, "tags": [ "esse", "cillum", "ex", "consequat", "et", "nisi", "ut" ], "friends": [ { "id": 0, "name": "Mckinney Torres" }, { "id": 1, "name": "Spence Boyd" }, { "id": 2, "name": "Lindsay Franco" } ], "greeting": "Hello, Tanya Schultz! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2814fb0b85a7602281", "index": 3804, "guid": "cd82d3b9-79df-454e-848e-a2662e8a7167", "isActive": true, "balance": "$1,115.31", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Fran Houston", "gender": "female", "company": "COMTOURS", "email": "franhouston@comtours.com", "phone": "+1 (888) 451-2937", "address": "586 Willow Place, Weedville, Arkansas, 2427", "about": "Tempor adipisicing nulla velit cupidatat ut aliquip amet. Veniam ipsum labore ea ipsum aliquip proident dolore deserunt excepteur labore deserunt ipsum sint. Esse laborum velit exercitation ut ipsum laboris consectetur consectetur. Nostrud voluptate commodo tempor velit anim incididunt nostrud id esse occaecat id reprehenderit nostrud minim. Deserunt adipisicing laborum qui velit minim sunt dolore reprehenderit. Eu enim aliquip deserunt elit duis.\r\n", "registered": "2014-08-23T21:03:57-12:00", "latitude": 5.071038, "longitude": -16.071477, "tags": [ "qui", "velit", "reprehenderit", "sunt", "duis", "et", "officia" ], "friends": [ { "id": 0, "name": "Hooper Ratliff" }, { "id": 1, "name": "Lora Benton" }, { "id": 2, "name": "Gwendolyn Roman" } ], "greeting": "Hello, Fran Houston! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2834ede0ee82964794", "index": 3805, "guid": "60fa0b86-e66a-4a6d-917e-ad540d6c4c05", "isActive": false, "balance": "$1,860.90", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Jacobson Schneider", "gender": "male", "company": "REVERSUS", "email": "jacobsonschneider@reversus.com", "phone": "+1 (821) 426-2076", "address": "628 Hillel Place, Alamo, Iowa, 7608", "about": "Esse voluptate dolore dolore enim labore aliqua tempor do id culpa cupidatat. Qui aute exercitation dolor cupidatat ut eiusmod irure irure in. Qui do consectetur reprehenderit fugiat anim exercitation veniam ipsum veniam nisi occaecat exercitation. Nostrud laborum sint adipisicing ex commodo pariatur nulla magna incididunt consectetur. Elit do pariatur ex laboris ex aute. Consequat ipsum voluptate ad adipisicing cillum enim consequat cupidatat ex nostrud eiusmod commodo amet voluptate. Deserunt id consequat nisi ipsum ipsum voluptate aliqua minim non consequat.\r\n", "registered": "2014-03-09T20:54:16-13:00", "latitude": 60.725451, "longitude": -148.399001, "tags": [ "adipisicing", "nisi", "esse", "veniam", "laboris", "minim", "mollit" ], "friends": [ { "id": 0, "name": "Florine Brady" }, { "id": 1, "name": "Parker Shannon" }, { "id": 2, "name": "Millicent Coleman" } ], "greeting": "Hello, Jacobson Schneider! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28add33b75a741923c", "index": 3806, "guid": "8389c4c0-ded5-4ba1-8e58-9140b77df3ae", "isActive": true, "balance": "$2,183.32", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Judith Ochoa", "gender": "female", "company": "ELITA", "email": "judithochoa@elita.com", "phone": "+1 (951) 517-2460", "address": "533 Gilmore Court, Hollymead, Nebraska, 8907", "about": "Ea pariatur reprehenderit duis ullamco incididunt velit commodo. Est do esse deserunt enim. Officia consectetur laboris enim esse incididunt velit ea. Magna cupidatat voluptate ad aliquip est consequat id. Ad anim mollit ullamco anim.\r\n", "registered": "2014-02-09T01:17:10-13:00", "latitude": 78.385263, "longitude": 142.166274, "tags": [ "nostrud", "laboris", "qui", "cupidatat", "veniam", "velit", "sunt" ], "friends": [ { "id": 0, "name": "Juarez Mcclain" }, { "id": 1, "name": "Bonnie Lowe" }, { "id": 2, "name": "Quinn Hardin" } ], "greeting": "Hello, Judith Ochoa! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28a6f5ea8443e8c65c", "index": 3807, "guid": "c87e6c3c-d8d8-4f08-bca8-b96850609128", "isActive": false, "balance": "$1,035.24", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "May Watkins", "gender": "male", "company": "MONDICIL", "email": "maywatkins@mondicil.com", "phone": "+1 (800) 575-2435", "address": "447 Mill Street, Worcester, District Of Columbia, 537", "about": "Quis officia non proident aliquip velit commodo fugiat eu aliqua. Nulla do aliquip occaecat ad magna eiusmod laboris ex duis eiusmod. Voluptate et duis occaecat dolor excepteur proident ea enim ipsum deserunt id.\r\n", "registered": "2014-02-15T11:52:01-13:00", "latitude": 57.407668, "longitude": -91.769329, "tags": [ "eu", "enim", "fugiat", "laborum", "excepteur", "deserunt", "minim" ], "friends": [ { "id": 0, "name": "Nolan Good" }, { "id": 1, "name": "Brenda Cohen" }, { "id": 2, "name": "Freda Gamble" } ], "greeting": "Hello, May Watkins! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea287ac4d26274190557", "index": 3808, "guid": "a14195f4-7977-44e8-81e4-b73e19cd30f8", "isActive": true, "balance": "$1,129.50", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Holloway Haynes", "gender": "male", "company": "NAXDIS", "email": "hollowayhaynes@naxdis.com", "phone": "+1 (966) 576-3439", "address": "940 Albee Square, Alderpoint, New Jersey, 184", "about": "Ad elit cupidatat aute est ad ullamco velit eiusmod minim fugiat ullamco voluptate. Sint irure aliquip exercitation voluptate esse est Lorem qui. Cupidatat ullamco eiusmod qui laborum adipisicing nostrud ea exercitation sunt tempor consequat. Laboris irure eiusmod culpa veniam amet incididunt proident. Dolor laboris enim nostrud nulla elit voluptate incididunt ullamco adipisicing dolor anim aliquip sit. Ad et duis excepteur dolore commodo veniam. Duis enim et sit qui et adipisicing.\r\n", "registered": "2014-01-31T13:19:47-13:00", "latitude": -49.512063, "longitude": -117.188983, "tags": [ "commodo", "et", "enim", "excepteur", "aute", "id", "Lorem" ], "friends": [ { "id": 0, "name": "Barber Gibson" }, { "id": 1, "name": "Lenore Roth" }, { "id": 2, "name": "Howard Camacho" } ], "greeting": "Hello, Holloway Haynes! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28be8982b817c56299", "index": 3809, "guid": "0ca39ee1-3506-4abf-9eec-3a654706023a", "isActive": true, "balance": "$3,282.66", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Marci Branch", "gender": "female", "company": "DATAGENE", "email": "marcibranch@datagene.com", "phone": "+1 (967) 544-3207", "address": "672 Montgomery Street, Lydia, Palau, 4369", "about": "Aliquip dolore adipisicing labore dolore sint occaecat proident nulla exercitation ad proident veniam tempor qui. Magna aliquip fugiat occaecat veniam. Lorem pariatur minim reprehenderit ex exercitation adipisicing laboris. Qui sunt occaecat qui non irure magna sit magna tempor cillum. Nisi nisi eu id ad exercitation enim consequat amet anim. Dolore consectetur culpa ex dolor ut veniam consectetur. Irure magna consequat ex consequat aute proident aliqua eu.\r\n", "registered": "2014-08-06T01:50:23-12:00", "latitude": 4.859331, "longitude": 168.207403, "tags": [ "in", "consectetur", "id", "sit", "mollit", "eu", "et" ], "friends": [ { "id": 0, "name": "Willie Fuller" }, { "id": 1, "name": "Bryant Holden" }, { "id": 2, "name": "Joni Butler" } ], "greeting": "Hello, Marci Branch! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28234350a5b0f9ba8f", "index": 3810, "guid": "c85e0558-56a9-4b5a-8de1-c5b2f86333ef", "isActive": true, "balance": "$1,346.22", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Ball Horton", "gender": "male", "company": "ENERSAVE", "email": "ballhorton@enersave.com", "phone": "+1 (875) 579-2366", "address": "135 Fleet Street, Onton, Puerto Rico, 1278", "about": "Nulla proident reprehenderit velit et incididunt ad aliqua pariatur sint ex. Duis eiusmod laborum cupidatat do officia ad duis cillum deserunt eiusmod culpa cillum sunt. Mollit ea ea aliquip id deserunt. Tempor occaecat excepteur amet ipsum do exercitation adipisicing. Ea aute est in nulla sint laborum magna ut enim.\r\n", "registered": "2014-02-24T15:26:18-13:00", "latitude": -74.407156, "longitude": 158.530801, "tags": [ "aute", "Lorem", "cupidatat", "aliquip", "in", "officia", "irure" ], "friends": [ { "id": 0, "name": "Brady Molina" }, { "id": 1, "name": "Earlene Le" }, { "id": 2, "name": "Ladonna Summers" } ], "greeting": "Hello, Ball Horton! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f4f09b89c4eb1ecb", "index": 3811, "guid": "23869de5-fd28-49c6-80b5-f1d678007023", "isActive": true, "balance": "$1,407.31", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Sawyer Gardner", "gender": "male", "company": "XELEGYL", "email": "sawyergardner@xelegyl.com", "phone": "+1 (853) 563-2886", "address": "387 Rogers Avenue, Lindisfarne, California, 6690", "about": "Fugiat deserunt ex do reprehenderit Lorem id ea incididunt non est eu ad mollit. Veniam deserunt cupidatat nisi nulla elit incididunt est veniam quis Lorem eiusmod ipsum in adipisicing. Ex amet ad quis Lorem sunt incididunt velit est voluptate. Quis cupidatat incididunt id quis aliquip voluptate mollit pariatur mollit incididunt.\r\n", "registered": "2014-07-26T09:20:44-12:00", "latitude": -36.501802, "longitude": -126.85216, "tags": [ "non", "nostrud", "cillum", "veniam", "dolor", "aute", "incididunt" ], "friends": [ { "id": 0, "name": "Noemi Wallace" }, { "id": 1, "name": "Mack Johnson" }, { "id": 2, "name": "Lester Conner" } ], "greeting": "Hello, Sawyer Gardner! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea289921c9dd6c3ed15f", "index": 3812, "guid": "47e34bc9-4c02-41da-b805-3d4ff6221f3a", "isActive": true, "balance": "$2,491.27", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Rhoda Finch", "gender": "female", "company": "SUREMAX", "email": "rhodafinch@suremax.com", "phone": "+1 (836) 401-3832", "address": "697 Folsom Place, Williamson, Vermont, 4257", "about": "Id aliqua esse labore dolore excepteur cupidatat pariatur nisi. Anim laboris sint minim qui magna anim. Ad eu fugiat aliquip officia in amet eu et do quis sunt. Amet aliqua laboris proident pariatur sunt proident cupidatat ad elit esse esse. Pariatur deserunt mollit laborum est qui consectetur est. Fugiat minim aliquip eiusmod magna qui nisi reprehenderit velit.\r\n", "registered": "2014-09-04T19:05:50-12:00", "latitude": -7.213949, "longitude": -76.037424, "tags": [ "sint", "anim", "enim", "duis", "incididunt", "nisi", "reprehenderit" ], "friends": [ { "id": 0, "name": "Terrell Haney" }, { "id": 1, "name": "Myrna Martin" }, { "id": 2, "name": "Brewer Crosby" } ], "greeting": "Hello, Rhoda Finch! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28a6687a7d4dd4a97e", "index": 3813, "guid": "1feb752a-b354-420a-ba92-3040c8c63db7", "isActive": false, "balance": "$3,481.82", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Darcy Lloyd", "gender": "female", "company": "GAZAK", "email": "darcylloyd@gazak.com", "phone": "+1 (988) 524-2313", "address": "412 Colin Place, Rote, Indiana, 9783", "about": "Non irure ad tempor adipisicing anim et id ex excepteur voluptate deserunt ex veniam ipsum. Sunt dolore sit laborum aliquip consectetur aliqua eu irure officia enim nisi ut. Pariatur culpa nisi ipsum laborum cupidatat quis id consequat sunt Lorem enim duis.\r\n", "registered": "2014-07-05T06:36:20-12:00", "latitude": -69.121454, "longitude": 12.449202, "tags": [ "enim", "do", "enim", "deserunt", "aute", "aliqua", "ut" ], "friends": [ { "id": 0, "name": "Dee Lester" }, { "id": 1, "name": "Pearlie Whitfield" }, { "id": 2, "name": "Teresa Evans" } ], "greeting": "Hello, Darcy Lloyd! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28daf0e307bf0b278b", "index": 3814, "guid": "5dfcba35-1095-4438-bc63-5fe92d692db7", "isActive": true, "balance": "$3,952.48", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Dudley Blackburn", "gender": "male", "company": "OLUCORE", "email": "dudleyblackburn@olucore.com", "phone": "+1 (947) 498-3241", "address": "705 Grace Court, Kenmar, Illinois, 2454", "about": "Ea id velit nisi nisi adipisicing cupidatat. Excepteur dolore aliquip id adipisicing voluptate id occaecat consectetur consequat duis. Ullamco adipisicing amet nulla eu esse anim. Voluptate nulla laboris est in cupidatat laboris anim nostrud pariatur cillum in consectetur do quis. Sunt nisi eu aliqua magna irure nisi in occaecat labore. Deserunt laboris cupidatat ut aliqua elit cillum amet laboris est aliquip veniam ad laborum. Fugiat Lorem sunt cillum nulla amet nulla occaecat ea velit amet anim adipisicing.\r\n", "registered": "2014-05-16T11:42:17-12:00", "latitude": -74.466392, "longitude": 140.805791, "tags": [ "elit", "tempor", "ea", "eu", "magna", "dolor", "eiusmod" ], "friends": [ { "id": 0, "name": "Nichols Walter" }, { "id": 1, "name": "Pugh Underwood" }, { "id": 2, "name": "Holman William" } ], "greeting": "Hello, Dudley Blackburn! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea286c2c14f56a763f74", "index": 3815, "guid": "ca25abe8-8881-495e-a278-d2ed786327cb", "isActive": false, "balance": "$2,137.11", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Mcneil Mccarty", "gender": "male", "company": "AMTAP", "email": "mcneilmccarty@amtap.com", "phone": "+1 (959) 550-2221", "address": "860 Lafayette Walk, Darrtown, South Carolina, 8363", "about": "Excepteur cupidatat occaecat proident pariatur. Enim proident voluptate do quis cupidatat sit veniam sint aute nisi eu nostrud ea. Aliquip amet proident nisi occaecat aliquip amet minim duis officia et tempor do. Cillum aute voluptate laboris pariatur nulla. Eu ea nulla qui ea commodo magna esse eiusmod velit. Eiusmod ex fugiat aute Lorem ex et consectetur minim cillum esse sit labore.\r\n", "registered": "2014-05-16T13:34:36-12:00", "latitude": 7.096481, "longitude": 123.956306, "tags": [ "eiusmod", "dolor", "exercitation", "culpa", "esse", "ullamco", "voluptate" ], "friends": [ { "id": 0, "name": "Hebert Mullins" }, { "id": 1, "name": "Louella Sweet" }, { "id": 2, "name": "Elinor Watts" } ], "greeting": "Hello, Mcneil Mccarty! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28d10021a1e0c11156", "index": 3816, "guid": "1ec2cd8a-9e9c-4742-a5a1-ff67fc05b3d4", "isActive": true, "balance": "$3,736.50", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Johnson Moreno", "gender": "male", "company": "SARASONIC", "email": "johnsonmoreno@sarasonic.com", "phone": "+1 (884) 574-2770", "address": "131 Bowery Street, Concho, American Samoa, 4746", "about": "Anim ut dolor voluptate esse consectetur labore. Labore labore ad duis qui ea. Aliqua mollit esse sit proident nostrud minim amet. Est voluptate consequat ipsum in voluptate ea deserunt officia officia. Cupidatat pariatur aliqua laborum irure aliquip anim exercitation amet esse id incididunt. Minim elit dolor nostrud aliquip.\r\n", "registered": "2014-08-22T22:15:46-12:00", "latitude": -50.946901, "longitude": 22.704993, "tags": [ "ut", "aliquip", "aliquip", "officia", "dolore", "consequat", "duis" ], "friends": [ { "id": 0, "name": "Marian Mcmillan" }, { "id": 1, "name": "Savannah Greer" }, { "id": 2, "name": "Lisa Barron" } ], "greeting": "Hello, Johnson Moreno! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28b1a1606a49e60510", "index": 3817, "guid": "954983bc-d38a-4ac3-9c2a-a9142eb3d654", "isActive": true, "balance": "$3,498.49", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Sparks Flynn", "gender": "male", "company": "NAMEBOX", "email": "sparksflynn@namebox.com", "phone": "+1 (950) 493-3425", "address": "664 Franklin Street, Vale, Delaware, 8604", "about": "Velit ipsum amet sunt culpa ad cillum non eu veniam veniam labore. Deserunt nostrud magna veniam reprehenderit ex anim incididunt cillum duis proident. Culpa ea anim cillum cillum occaecat esse magna adipisicing exercitation. Commodo magna irure exercitation elit. Quis cillum culpa dolor tempor velit consequat.\r\n", "registered": "2014-02-01T14:08:57-13:00", "latitude": -24.28596, "longitude": 141.77318, "tags": [ "officia", "anim", "fugiat", "adipisicing", "anim", "culpa", "reprehenderit" ], "friends": [ { "id": 0, "name": "Beard Rasmussen" }, { "id": 1, "name": "Mcintosh Carson" }, { "id": 2, "name": "Delgado Michael" } ], "greeting": "Hello, Sparks Flynn! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea284e7869e0a97dc8e6", "index": 3818, "guid": "fd82dd4e-aaec-423e-ab09-65207bb0ad94", "isActive": false, "balance": "$2,368.86", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Humphrey Bond", "gender": "male", "company": "CENTICE", "email": "humphreybond@centice.com", "phone": "+1 (821) 406-3792", "address": "634 Stryker Street, Grill, Pennsylvania, 5877", "about": "Amet magna irure dolor adipisicing ea esse eu minim laboris aute aute. Esse irure commodo voluptate et voluptate ut. Mollit enim ullamco labore aliqua quis ea officia qui. Consequat voluptate ea velit sit aliquip elit adipisicing cupidatat anim id occaecat exercitation ea.\r\n", "registered": "2014-06-06T14:45:22-12:00", "latitude": -69.580602, "longitude": 158.731879, "tags": [ "ex", "elit", "incididunt", "consectetur", "irure", "quis", "aliqua" ], "friends": [ { "id": 0, "name": "Alberta Banks" }, { "id": 1, "name": "Erica Conley" }, { "id": 2, "name": "Byers Riddle" } ], "greeting": "Hello, Humphrey Bond! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea281d1f87e1be087fbd", "index": 3819, "guid": "e5956086-085f-4549-acde-4c0aee01bdda", "isActive": false, "balance": "$1,751.72", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Laurel Rosa", "gender": "female", "company": "HIVEDOM", "email": "laurelrosa@hivedom.com", "phone": "+1 (809) 535-3229", "address": "144 Montgomery Place, Clarence, Georgia, 1085", "about": "Laboris labore exercitation incididunt labore dolore dolor nisi. Nulla nostrud irure et laborum consectetur esse minim labore sint adipisicing ex adipisicing consectetur. Est veniam voluptate tempor laboris aute enim qui irure ipsum. Et ad nisi do ut. Non occaecat minim sit id id tempor sunt qui id nostrud pariatur Lorem. Ex dolor minim mollit veniam ea deserunt ipsum sint. Ut labore eu in consequat voluptate occaecat aute proident tempor reprehenderit.\r\n", "registered": "2014-09-07T15:01:23-12:00", "latitude": -81.56422, "longitude": 10.822279, "tags": [ "proident", "et", "deserunt", "laborum", "consequat", "dolor", "occaecat" ], "friends": [ { "id": 0, "name": "Olive Palmer" }, { "id": 1, "name": "Ryan Mckenzie" }, { "id": 2, "name": "Simmons Koch" } ], "greeting": "Hello, Laurel Rosa! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28d0e4e28c71a8cc91", "index": 3820, "guid": "f1302d5e-c1d3-4b42-a7c6-2fcc2bb8c0e8", "isActive": false, "balance": "$1,452.41", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Winifred Goodman", "gender": "female", "company": "FIBRODYNE", "email": "winifredgoodman@fibrodyne.com", "phone": "+1 (839) 494-3789", "address": "686 Marconi Place, Coleville, North Dakota, 4277", "about": "Aliquip sit occaecat eiusmod irure est culpa veniam. Aliqua et ut laboris sint proident sunt consectetur id. Laboris velit est excepteur commodo mollit enim. Dolore voluptate dolor ad sint labore non anim. Cupidatat cupidatat proident duis dolor Lorem veniam duis nulla. Exercitation adipisicing consectetur culpa proident eiusmod velit excepteur sunt velit consequat officia cupidatat dolor. Anim quis elit excepteur id in irure dolore ea id et qui.\r\n", "registered": "2014-04-11T01:52:07-12:00", "latitude": 50.936418, "longitude": -38.37381, "tags": [ "sint", "deserunt", "ipsum", "aliqua", "magna", "excepteur", "commodo" ], "friends": [ { "id": 0, "name": "Figueroa Ray" }, { "id": 1, "name": "Baldwin Bradshaw" }, { "id": 2, "name": "Combs King" } ], "greeting": "Hello, Winifred Goodman! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28525b18493bf25e61", "index": 3821, "guid": "45d8ed79-bdb0-49f2-9e6d-16e547b2973a", "isActive": true, "balance": "$3,841.80", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Deana Bender", "gender": "female", "company": "KOG", "email": "deanabender@kog.com", "phone": "+1 (877) 515-2901", "address": "975 Suydam Street, Thermal, Louisiana, 1919", "about": "Tempor magna culpa consequat deserunt eiusmod aute occaecat reprehenderit aliqua reprehenderit sunt. Dolore culpa in nostrud adipisicing veniam et. Nisi incididunt sint aute anim voluptate pariatur cillum proident aliqua minim labore esse. Sint fugiat mollit cillum commodo consequat adipisicing in sunt. Commodo adipisicing sit pariatur pariatur ut veniam anim occaecat magna eu. Consequat reprehenderit occaecat amet laborum deserunt enim Lorem proident veniam sunt exercitation.\r\n", "registered": "2014-03-21T06:34:45-13:00", "latitude": -45.298669, "longitude": 158.906242, "tags": [ "aute", "adipisicing", "consectetur", "eu", "aute", "ipsum", "adipisicing" ], "friends": [ { "id": 0, "name": "Bailey Garza" }, { "id": 1, "name": "Moreno Nolan" }, { "id": 2, "name": "West Cote" } ], "greeting": "Hello, Deana Bender! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28bf3a4c11dcf92def", "index": 3822, "guid": "2343f33d-d1fb-4b6c-acd8-8c6ea9290b9b", "isActive": false, "balance": "$3,531.71", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Rivers Delacruz", "gender": "male", "company": "PREMIANT", "email": "riversdelacruz@premiant.com", "phone": "+1 (894) 482-3331", "address": "262 Hancock Street, Harmon, Northern Mariana Islands, 2371", "about": "Ut laborum minim aliqua cillum officia. Duis cupidatat non ullamco occaecat veniam incididunt consectetur fugiat qui sit excepteur est voluptate. Tempor sint dolor ex magna reprehenderit laborum exercitation reprehenderit voluptate exercitation dolor adipisicing Lorem sit. Aute do aute est et in cillum ea sint ad do elit enim nulla.\r\n", "registered": "2014-04-23T10:11:57-12:00", "latitude": -79.830909, "longitude": -63.383402, "tags": [ "consequat", "et", "aliqua", "sunt", "culpa", "excepteur", "incididunt" ], "friends": [ { "id": 0, "name": "Huffman Sanders" }, { "id": 1, "name": "Orr Ewing" }, { "id": 2, "name": "Adkins Sexton" } ], "greeting": "Hello, Rivers Delacruz! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2800aa0c9e65d54953", "index": 3823, "guid": "29e7711f-c28a-4f23-817c-806804651431", "isActive": false, "balance": "$3,879.97", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Joanne Salinas", "gender": "female", "company": "LIMAGE", "email": "joannesalinas@limage.com", "phone": "+1 (898) 571-2764", "address": "590 Tudor Terrace, Harleigh, Colorado, 3843", "about": "Aliqua magna culpa est ad sit. Nulla ut magna ad tempor do reprehenderit fugiat id. Dolor nulla ullamco pariatur proident. Qui et consequat occaecat excepteur duis do in est commodo sunt enim. Minim id officia cupidatat id excepteur est consequat consequat.\r\n", "registered": "2014-01-29T09:25:59-13:00", "latitude": 27.123163, "longitude": 149.520851, "tags": [ "voluptate", "eiusmod", "proident", "cillum", "ut", "ea", "cillum" ], "friends": [ { "id": 0, "name": "Daugherty Alexander" }, { "id": 1, "name": "Jeannette Lane" }, { "id": 2, "name": "Ruthie Kline" } ], "greeting": "Hello, Joanne Salinas! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28829864c8c269cacb", "index": 3824, "guid": "b0c2a567-5ff3-48de-87e6-d4ae4e075f1e", "isActive": true, "balance": "$3,524.52", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Curry Lowery", "gender": "male", "company": "ELPRO", "email": "currylowery@elpro.com", "phone": "+1 (970) 414-2626", "address": "727 Cranberry Street, Libertytown, Idaho, 9147", "about": "Cupidatat non pariatur est esse non non sit ex culpa amet laboris sunt. Est velit adipisicing in pariatur reprehenderit officia pariatur ipsum elit dolore. Aute enim qui deserunt nisi ad cillum culpa mollit aliquip labore proident excepteur nisi eu. Dolor ipsum fugiat dolore ullamco dolore elit id anim velit voluptate fugiat. Velit enim officia laborum quis duis commodo dolor amet magna ea aliquip. Nulla Lorem Lorem enim ea non ad Lorem consectetur dolor consectetur eiusmod elit laborum culpa. Veniam exercitation in nulla labore.\r\n", "registered": "2014-04-02T15:25:49-13:00", "latitude": 34.717355, "longitude": 154.680503, "tags": [ "qui", "non", "deserunt", "sunt", "ad", "consectetur", "tempor" ], "friends": [ { "id": 0, "name": "Castro Dodson" }, { "id": 1, "name": "Brigitte Russell" }, { "id": 2, "name": "Jennie Reese" } ], "greeting": "Hello, Curry Lowery! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2800fd28b348e7bae5", "index": 3825, "guid": "f6d9ee76-28af-409a-a64e-8a6419ce2d9c", "isActive": false, "balance": "$2,592.52", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Misty Short", "gender": "female", "company": "OTHERWAY", "email": "mistyshort@otherway.com", "phone": "+1 (869) 415-3705", "address": "192 Reeve Place, Jeff, Marshall Islands, 109", "about": "Magna deserunt ut eu laboris et deserunt. Quis reprehenderit aliquip cillum cillum occaecat magna cupidatat eu tempor eu ipsum qui amet. Culpa deserunt Lorem et duis eiusmod sit irure mollit ea.\r\n", "registered": "2014-04-03T07:19:47-13:00", "latitude": -27.724859, "longitude": 133.227519, "tags": [ "tempor", "duis", "Lorem", "eu", "aliqua", "amet", "esse" ], "friends": [ { "id": 0, "name": "Kara Cameron" }, { "id": 1, "name": "Christina Lawrence" }, { "id": 2, "name": "Trisha Small" } ], "greeting": "Hello, Misty Short! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28515c850e41758ead", "index": 3826, "guid": "317152ef-2f03-459d-ada3-7b98d4107eb0", "isActive": false, "balance": "$1,168.03", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Kelsey Wilkins", "gender": "female", "company": "CENTURIA", "email": "kelseywilkins@centuria.com", "phone": "+1 (906) 481-2568", "address": "537 Kenmore Court, Laurelton, New York, 7742", "about": "Ut esse consequat in mollit minim exercitation irure non consequat tempor dolore mollit. Commodo cillum occaecat aliquip nostrud aute id officia id nulla. Laborum proident sunt culpa ipsum officia aliqua cillum ea veniam. Ea reprehenderit quis magna irure non mollit dolor elit consectetur enim do cillum consequat. Cupidatat veniam velit minim eu aute aliqua sunt voluptate ut labore elit cillum dolore. Labore anim et excepteur incididunt irure elit nisi tempor ex sunt laboris occaecat dolor. Amet consectetur cillum aute cupidatat nisi.\r\n", "registered": "2014-01-08T10:47:01-13:00", "latitude": -19.473002, "longitude": 52.812594, "tags": [ "deserunt", "elit", "ut", "proident", "mollit", "in", "reprehenderit" ], "friends": [ { "id": 0, "name": "Dina Frye" }, { "id": 1, "name": "Galloway Medina" }, { "id": 2, "name": "Cantrell Terry" } ], "greeting": "Hello, Kelsey Wilkins! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea284af222cfd455cd27", "index": 3827, "guid": "ca64a981-8607-4395-8396-a938624d7d16", "isActive": false, "balance": "$1,293.31", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Olga Mccullough", "gender": "female", "company": "OPTICOM", "email": "olgamccullough@opticom.com", "phone": "+1 (804) 520-3546", "address": "298 Boulevard Court, Barclay, Guam, 2094", "about": "Laborum ut minim enim nisi cillum. Laboris do quis exercitation minim officia veniam duis ullamco labore ea nulla. Do voluptate fugiat ut aliquip. Eu aliqua quis veniam incididunt consectetur irure. Laborum nisi minim Lorem ut Lorem labore dolor aliqua exercitation velit duis. Laborum id minim labore ad. Magna esse cupidatat esse cupidatat.\r\n", "registered": "2014-07-25T11:01:10-12:00", "latitude": -25.300328, "longitude": -111.483055, "tags": [ "sint", "veniam", "anim", "aute", "sint", "cillum", "nostrud" ], "friends": [ { "id": 0, "name": "Earnestine Manning" }, { "id": 1, "name": "Gray Langley" }, { "id": 2, "name": "Marlene Jackson" } ], "greeting": "Hello, Olga Mccullough! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28698c45e6d5d41cc1", "index": 3828, "guid": "408fb2ce-9746-4a34-b371-0b129ad0c026", "isActive": true, "balance": "$3,741.20", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Ernestine Grant", "gender": "female", "company": "MENBRAIN", "email": "ernestinegrant@menbrain.com", "phone": "+1 (922) 463-3671", "address": "430 McDonald Avenue, Foxworth, Virgin Islands, 7666", "about": "Magna pariatur veniam consequat adipisicing. Sunt Lorem et laboris amet enim. Fugiat consequat consectetur ad cillum sint Lorem id incididunt. Enim cillum amet laborum reprehenderit.\r\n", "registered": "2014-02-02T02:21:00-13:00", "latitude": 33.594382, "longitude": 118.160338, "tags": [ "culpa", "sit", "voluptate", "nostrud", "nulla", "tempor", "excepteur" ], "friends": [ { "id": 0, "name": "Lynette Hatfield" }, { "id": 1, "name": "Hale Hodges" }, { "id": 2, "name": "Jackie Trevino" } ], "greeting": "Hello, Ernestine Grant! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28f6b5e7ca11901ca2", "index": 3829, "guid": "f85812d3-127d-485d-8442-1b51765466b2", "isActive": true, "balance": "$2,979.15", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Sandra Thornton", "gender": "female", "company": "EDECINE", "email": "sandrathornton@edecine.com", "phone": "+1 (804) 557-3200", "address": "277 Lefferts Place, Alfarata, Massachusetts, 2520", "about": "Pariatur sunt reprehenderit nisi non nisi commodo culpa culpa non id non eu magna sit. Esse ex incididunt culpa ipsum culpa est enim aute nostrud. Non id amet ad tempor sint quis tempor qui ullamco laborum quis.\r\n", "registered": "2014-08-23T00:02:36-12:00", "latitude": -8.043251, "longitude": -154.604223, "tags": [ "commodo", "Lorem", "sit", "sit", "aliqua", "consectetur", "veniam" ], "friends": [ { "id": 0, "name": "Conrad Kelley" }, { "id": 1, "name": "Savage Joseph" }, { "id": 2, "name": "Luisa Stephens" } ], "greeting": "Hello, Sandra Thornton! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28d631886f8d7f2bba", "index": 3830, "guid": "293760de-5145-427a-80a1-e55aa504903e", "isActive": false, "balance": "$1,763.45", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Steele Norman", "gender": "male", "company": "GRACKER", "email": "steelenorman@gracker.com", "phone": "+1 (897) 422-2420", "address": "994 Lawton Street, Spokane, Utah, 8576", "about": "Eiusmod excepteur id proident dolore enim ex adipisicing irure. Ipsum aute amet nulla incididunt eiusmod veniam quis nulla cupidatat ex. Minim amet esse aute aliqua. Adipisicing dolore voluptate nulla do duis reprehenderit minim mollit commodo cupidatat velit irure commodo. Irure occaecat proident anim enim Lorem officia ad veniam aliqua proident. Cillum deserunt amet labore aliqua pariatur ut elit nulla.\r\n", "registered": "2014-09-12T15:16:05-12:00", "latitude": 25.034222, "longitude": 168.427493, "tags": [ "non", "cillum", "veniam", "deserunt", "anim", "esse", "aliquip" ], "friends": [ { "id": 0, "name": "Megan Nash" }, { "id": 1, "name": "Georgia Gibbs" }, { "id": 2, "name": "Wendy Foreman" } ], "greeting": "Hello, Steele Norman! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2899b9dc037f174da6", "index": 3831, "guid": "4eed29f8-6c70-40b5-af0b-8e59ba78b688", "isActive": true, "balance": "$1,938.77", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Marilyn Leon", "gender": "female", "company": "ZAJ", "email": "marilynleon@zaj.com", "phone": "+1 (868) 485-2969", "address": "356 Alabama Avenue, Lewis, Montana, 2452", "about": "Commodo occaecat aliqua voluptate et ea officia eiusmod officia non nulla non excepteur dolore magna. Nisi tempor veniam magna nisi fugiat in velit eiusmod veniam. Nisi excepteur ut nostrud pariatur ex ea incididunt veniam pariatur proident sint tempor aliqua ipsum. Irure incididunt voluptate occaecat cillum pariatur veniam in sit enim officia.\r\n", "registered": "2014-04-15T11:33:30-12:00", "latitude": 63.194143, "longitude": 103.997364, "tags": [ "ex", "cillum", "minim", "id", "sunt", "incididunt", "eu" ], "friends": [ { "id": 0, "name": "Reba Holt" }, { "id": 1, "name": "Shaw Griffin" }, { "id": 2, "name": "Baird Sutton" } ], "greeting": "Hello, Marilyn Leon! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28db699f3dc0a54cba", "index": 3832, "guid": "486d8c84-6225-4ab8-8da8-5324f51a1faa", "isActive": true, "balance": "$1,010.22", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Ethel Woodard", "gender": "female", "company": "ZILLAR", "email": "ethelwoodard@zillar.com", "phone": "+1 (840) 468-3202", "address": "701 Lafayette Avenue, Kersey, Wisconsin, 8177", "about": "Aute sint officia eu aliqua veniam tempor aliquip pariatur ea officia occaecat. Labore ex nisi sint quis cillum duis veniam reprehenderit incididunt voluptate Lorem labore velit laboris. Proident dolore officia amet minim non sunt elit tempor elit anim ut magna id. Enim anim magna laborum velit adipisicing. Veniam esse quis minim proident officia mollit commodo est exercitation sunt sint veniam mollit. Mollit non velit nulla ad eu et sint id id ex proident.\r\n", "registered": "2014-08-03T10:20:40-12:00", "latitude": 11.257727, "longitude": -55.719227, "tags": [ "dolore", "in", "consequat", "sint", "sunt", "duis", "consequat" ], "friends": [ { "id": 0, "name": "Julia Larsen" }, { "id": 1, "name": "Jimmie Parks" }, { "id": 2, "name": "Katrina Benson" } ], "greeting": "Hello, Ethel Woodard! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28b39c6ab62ac4b5c9", "index": 3833, "guid": "76e9d424-c81f-4fc1-a983-74583ac44dc9", "isActive": true, "balance": "$1,520.94", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Shelton Jefferson", "gender": "male", "company": "MEDIFAX", "email": "sheltonjefferson@medifax.com", "phone": "+1 (902) 480-3398", "address": "527 Elizabeth Place, Lithium, Maine, 8384", "about": "Culpa velit fugiat pariatur consequat nisi aute adipisicing pariatur ex. Aute quis consequat deserunt aliquip dolore aliquip elit nostrud id veniam cillum incididunt ipsum. Ullamco sit dolore excepteur Lorem est ipsum sunt cillum deserunt. Ex ut nulla ullamco ad officia irure. Pariatur dolore nostrud fugiat nisi exercitation dolore pariatur dolor minim ad eiusmod tempor.\r\n", "registered": "2014-04-08T15:35:26-12:00", "latitude": 52.593734, "longitude": 7.794323, "tags": [ "anim", "dolor", "anim", "est", "culpa", "occaecat", "esse" ], "friends": [ { "id": 0, "name": "Luz Ruiz" }, { "id": 1, "name": "Massey Mclaughlin" }, { "id": 2, "name": "Regina Bernard" } ], "greeting": "Hello, Shelton Jefferson! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28be832d8d8dacdf6c", "index": 3834, "guid": "5b7342c3-1c59-4a91-a6b9-f1735a97cfca", "isActive": true, "balance": "$3,166.71", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Hughes Bonner", "gender": "male", "company": "DOGNOSIS", "email": "hughesbonner@dognosis.com", "phone": "+1 (843) 427-3878", "address": "941 Independence Avenue, Cavalero, Virginia, 2863", "about": "Eu laborum do ipsum cupidatat labore ex proident velit minim. Adipisicing non amet eiusmod sit incididunt non labore. Fugiat in anim irure pariatur non eiusmod laborum. Nisi laborum sit officia culpa culpa id nisi ex Lorem consequat laborum. Duis labore in eu anim. Aute quis irure ullamco ipsum consequat sunt ex do esse.\r\n", "registered": "2014-03-02T18:45:39-13:00", "latitude": -48.641884, "longitude": 33.612437, "tags": [ "eu", "laborum", "duis", "elit", "incididunt", "tempor", "ipsum" ], "friends": [ { "id": 0, "name": "Oneal Fischer" }, { "id": 1, "name": "Torres Whitney" }, { "id": 2, "name": "Jensen Conway" } ], "greeting": "Hello, Hughes Bonner! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28b3b04e25590eb210", "index": 3835, "guid": "a7cce6aa-1582-4338-8b09-375534dad0ae", "isActive": false, "balance": "$2,458.20", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Iris Patton", "gender": "female", "company": "EXOSPEED", "email": "irispatton@exospeed.com", "phone": "+1 (980) 417-3267", "address": "309 Elliott Walk, Dexter, Kentucky, 2189", "about": "Anim excepteur nisi proident quis aliqua. Commodo reprehenderit laborum enim proident ut labore. Irure excepteur labore enim nulla anim excepteur mollit consequat ad magna eiusmod amet dolore. Dolore elit minim nostrud officia fugiat proident minim sit ad officia deserunt aliquip enim ipsum.\r\n", "registered": "2014-02-23T00:42:18-13:00", "latitude": -60.203017, "longitude": 85.250231, "tags": [ "Lorem", "sit", "irure", "aute", "voluptate", "cillum", "in" ], "friends": [ { "id": 0, "name": "Hutchinson Hahn" }, { "id": 1, "name": "Nicole Mcpherson" }, { "id": 2, "name": "Stevens Cabrera" } ], "greeting": "Hello, Iris Patton! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28440ecd7f3d78c571", "index": 3836, "guid": "3c90d748-b9f4-475c-8992-71575d8470ca", "isActive": true, "balance": "$1,147.57", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Vega Sanchez", "gender": "male", "company": "GLUID", "email": "vegasanchez@gluid.com", "phone": "+1 (827) 554-3308", "address": "982 Hunts Lane, Chumuckla, Connecticut, 6664", "about": "Duis id pariatur quis reprehenderit amet. Cillum sit id est sunt duis exercitation laboris et sit proident ex ex ipsum commodo. Commodo dolor aute aute dolor anim labore.\r\n", "registered": "2014-02-03T20:31:23-13:00", "latitude": -28.959031, "longitude": 42.059262, "tags": [ "dolore", "cillum", "dolore", "eu", "dolore", "ad", "amet" ], "friends": [ { "id": 0, "name": "Ella Davidson" }, { "id": 1, "name": "Lorene Preston" }, { "id": 2, "name": "Kennedy Williams" } ], "greeting": "Hello, Vega Sanchez! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28917b89325771cea7", "index": 3837, "guid": "1a1126f5-833e-4c5b-b9f4-7366c0703e11", "isActive": false, "balance": "$1,672.50", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Sanchez Reilly", "gender": "male", "company": "QUILM", "email": "sanchezreilly@quilm.com", "phone": "+1 (859) 585-3585", "address": "327 Thames Street, Kipp, Mississippi, 4530", "about": "Dolore culpa consequat officia ut sunt. Mollit consequat consequat consequat ea cupidatat do elit mollit nostrud. Cillum id reprehenderit cupidatat id eu anim consectetur.\r\n", "registered": "2014-02-20T15:16:07-13:00", "latitude": 9.229101, "longitude": -35.539697, "tags": [ "mollit", "veniam", "ad", "irure", "commodo", "aliqua", "enim" ], "friends": [ { "id": 0, "name": "Lenora Jacobson" }, { "id": 1, "name": "Duncan Jones" }, { "id": 2, "name": "England Bennett" } ], "greeting": "Hello, Sanchez Reilly! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f297530a3f753671", "index": 3838, "guid": "bd064290-dffe-4a95-a7d4-33b040ff82f0", "isActive": false, "balance": "$3,207.97", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Cobb Quinn", "gender": "male", "company": "ENJOLA", "email": "cobbquinn@enjola.com", "phone": "+1 (926) 401-3241", "address": "539 Stockton Street, Alden, Washington, 5782", "about": "Fugiat in non eiusmod dolor dolore mollit eu. Culpa duis voluptate cillum officia consequat ad duis id adipisicing ad culpa sint sunt sunt. Occaecat dolor dolor dolore incididunt.\r\n", "registered": "2014-05-12T09:50:04-12:00", "latitude": 41.728382, "longitude": 10.770844, "tags": [ "cupidatat", "mollit", "proident", "culpa", "laborum", "ullamco", "amet" ], "friends": [ { "id": 0, "name": "Long Zimmerman" }, { "id": 1, "name": "Alford Cruz" }, { "id": 2, "name": "Grant Moody" } ], "greeting": "Hello, Cobb Quinn! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28180601ba9d401f8d", "index": 3839, "guid": "e4dc25f8-ddf0-4aa9-afcb-56aa764e9b12", "isActive": false, "balance": "$3,602.85", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Griffin Barton", "gender": "male", "company": "SPORTAN", "email": "griffinbarton@sportan.com", "phone": "+1 (912) 482-3985", "address": "861 Pierrepont Place, Beyerville, Tennessee, 1059", "about": "Excepteur nostrud aliquip et ea labore nisi. Tempor consectetur dolor veniam ut laboris anim veniam culpa quis labore duis aliquip. Amet ullamco occaecat labore fugiat qui ex occaecat. Qui quis tempor non sit sint incididunt cillum fugiat officia commodo qui enim mollit. Dolor incididunt ipsum sint amet adipisicing ipsum ea adipisicing veniam cupidatat aute laboris consectetur dolore.\r\n", "registered": "2014-01-28T16:19:38-13:00", "latitude": 18.539676, "longitude": 32.418616, "tags": [ "ad", "eu", "dolor", "ut", "anim", "voluptate", "incididunt" ], "friends": [ { "id": 0, "name": "Rosales Ayala" }, { "id": 1, "name": "Mckenzie Workman" }, { "id": 2, "name": "Hopper Hopper" } ], "greeting": "Hello, Griffin Barton! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2858278538b943d310", "index": 3840, "guid": "688e8d3d-c91c-4e7b-8b5a-bc68af54bdff", "isActive": false, "balance": "$2,091.66", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Melba Turner", "gender": "female", "company": "OPTICON", "email": "melbaturner@opticon.com", "phone": "+1 (854) 436-3629", "address": "596 Regent Place, Wells, Alabama, 8451", "about": "Est incididunt irure ipsum officia ea quis proident ut eiusmod ex est nisi reprehenderit ea. In incididunt tempor ipsum irure commodo cillum Lorem. Nisi cillum cillum quis voluptate consequat eu proident sit labore adipisicing aliquip mollit. Enim ullamco pariatur officia laboris minim. Ipsum excepteur officia nisi nulla dolor tempor culpa et tempor magna. Labore voluptate ullamco ipsum ad ut non id tempor occaecat. Ut proident deserunt aliqua aute et ullamco reprehenderit tempor Lorem laboris eiusmod ad.\r\n", "registered": "2014-08-23T01:25:33-12:00", "latitude": -16.683789, "longitude": 140.676937, "tags": [ "ad", "nisi", "eiusmod", "aliqua", "non", "non", "ut" ], "friends": [ { "id": 0, "name": "Glenna Shaffer" }, { "id": 1, "name": "Webster Miranda" }, { "id": 2, "name": "Norton Cash" } ], "greeting": "Hello, Melba Turner! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28c9d9e53d1cf549be", "index": 3841, "guid": "c23ac2b7-447a-429f-a1e0-f90886cf5b4e", "isActive": true, "balance": "$3,871.17", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Miles Randall", "gender": "male", "company": "AEORA", "email": "milesrandall@aeora.com", "phone": "+1 (833) 439-2302", "address": "115 Ridgecrest Terrace, Dargan, Ohio, 741", "about": "Consequat aute irure reprehenderit deserunt minim reprehenderit mollit do officia aliquip. Aliquip esse proident magna culpa officia exercitation ex non minim sint enim sint eiusmod. Dolore nisi irure non consectetur aute deserunt. Qui magna ullamco proident fugiat duis aliqua incididunt non magna duis sunt dolore ut nisi. Amet ullamco est in dolore nisi ad anim aute.\r\n", "registered": "2014-06-19T01:00:58-12:00", "latitude": 28.011126, "longitude": -135.69173, "tags": [ "consequat", "voluptate", "elit", "dolor", "voluptate", "ut", "sit" ], "friends": [ { "id": 0, "name": "Dillard Drake" }, { "id": 1, "name": "Josie Calderon" }, { "id": 2, "name": "Janis Mckinney" } ], "greeting": "Hello, Miles Randall! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea286dd02cdedcc5b231", "index": 3842, "guid": "e073151c-5dda-4325-8163-7a80f942cc5f", "isActive": false, "balance": "$2,740.08", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Newton Estrada", "gender": "male", "company": "TURNLING", "email": "newtonestrada@turnling.com", "phone": "+1 (935) 484-2184", "address": "750 Cove Lane, Selma, Hawaii, 1030", "about": "Veniam tempor ex labore ipsum cupidatat. Fugiat deserunt eiusmod laboris velit. Pariatur ad duis minim enim enim voluptate nulla aliquip cupidatat consequat irure. Elit consectetur quis fugiat labore et fugiat. Laboris occaecat ad Lorem tempor magna commodo elit eu do incididunt culpa.\r\n", "registered": "2014-05-31T12:50:09-12:00", "latitude": 62.379392, "longitude": -170.447794, "tags": [ "quis", "cupidatat", "do", "ea", "do", "mollit", "cillum" ], "friends": [ { "id": 0, "name": "Dyer Weaver" }, { "id": 1, "name": "Nita Welch" }, { "id": 2, "name": "Lauren Durham" } ], "greeting": "Hello, Newton Estrada! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28a3d713cd608389f7", "index": 3843, "guid": "e480e47f-7038-4553-8e57-1c94d6868740", "isActive": false, "balance": "$1,737.26", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Lynnette Woodward", "gender": "female", "company": "CINESANCT", "email": "lynnettewoodward@cinesanct.com", "phone": "+1 (863) 428-3363", "address": "320 Willmohr Street, Oretta, New Mexico, 7949", "about": "Sint veniam officia anim ad. Eu quis anim aute qui ad. Ad incididunt consequat nulla et pariatur velit incididunt eu aliquip. Ipsum quis in qui incididunt qui voluptate. Tempor pariatur non id veniam mollit. Non pariatur consequat elit aliquip. Dolor anim enim minim laboris culpa mollit irure aliqua cupidatat laboris.\r\n", "registered": "2014-03-24T16:14:57-13:00", "latitude": -50.580386, "longitude": 96.013773, "tags": [ "reprehenderit", "ullamco", "aute", "officia", "culpa", "sit", "amet" ], "friends": [ { "id": 0, "name": "Felecia Fowler" }, { "id": 1, "name": "Austin Holloway" }, { "id": 2, "name": "Reed Britt" } ], "greeting": "Hello, Lynnette Woodward! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28aa91b57da985b861", "index": 3844, "guid": "601feadb-2228-4b0f-8f0e-79e70c0d35ff", "isActive": true, "balance": "$3,130.75", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Guy Berg", "gender": "male", "company": "KEEG", "email": "guyberg@keeg.com", "phone": "+1 (809) 417-2169", "address": "383 Homecrest Court, Cucumber, Maryland, 9484", "about": "Nisi nulla esse enim id est eiusmod fugiat aliqua. Non nostrud excepteur id labore. Et dolor labore minim ad excepteur nostrud mollit est labore. Amet id eiusmod laboris adipisicing et exercitation aute nostrud sunt ipsum.\r\n", "registered": "2014-04-22T22:47:21-12:00", "latitude": -21.083886, "longitude": -148.747318, "tags": [ "elit", "eiusmod", "cillum", "fugiat", "laboris", "ea", "ullamco" ], "friends": [ { "id": 0, "name": "Koch Moss" }, { "id": 1, "name": "Green Stark" }, { "id": 2, "name": "Melton Mendoza" } ], "greeting": "Hello, Guy Berg! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28ebce483e9912678f", "index": 3845, "guid": "882eed7b-7009-4efd-b9f2-0d32c29d907e", "isActive": false, "balance": "$1,691.07", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Randall Harrison", "gender": "male", "company": "ZAPPIX", "email": "randallharrison@zappix.com", "phone": "+1 (823) 549-2426", "address": "673 Strickland Avenue, Wikieup, Alaska, 4513", "about": "Labore nostrud consectetur non mollit culpa labore excepteur cillum. Fugiat esse id excepteur et ad ad pariatur proident cillum aliquip. Minim ad ipsum culpa magna qui dolore excepteur excepteur amet sint.\r\n", "registered": "2014-04-30T12:03:10-12:00", "latitude": 75.633262, "longitude": 35.236712, "tags": [ "commodo", "ullamco", "adipisicing", "fugiat", "veniam", "consequat", "anim" ], "friends": [ { "id": 0, "name": "Kerr Dickerson" }, { "id": 1, "name": "Reynolds Arnold" }, { "id": 2, "name": "Manuela Rodriquez" } ], "greeting": "Hello, Randall Harrison! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea287f246348421824a9", "index": 3846, "guid": "bb3e00ea-2073-4959-ba82-45c8d2df36f8", "isActive": false, "balance": "$1,841.45", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Townsend Guy", "gender": "male", "company": "DANCITY", "email": "townsendguy@dancity.com", "phone": "+1 (884) 566-2754", "address": "824 Dorchester Road, Sunbury, Arizona, 8054", "about": "Do do occaecat nulla irure. Id qui mollit id tempor. Aute officia cupidatat consectetur amet enim nisi est eu reprehenderit laboris fugiat.\r\n", "registered": "2014-09-14T00:50:29-12:00", "latitude": 47.015797, "longitude": -37.217139, "tags": [ "et", "est", "deserunt", "nulla", "culpa", "duis", "tempor" ], "friends": [ { "id": 0, "name": "Carey Vang" }, { "id": 1, "name": "Nancy Lynn" }, { "id": 2, "name": "Chandra York" } ], "greeting": "Hello, Townsend Guy! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea280b1f15a456725238", "index": 3847, "guid": "5383d793-7051-4902-ba8e-11c40220f72d", "isActive": true, "balance": "$3,780.99", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Pace Erickson", "gender": "male", "company": "GREEKER", "email": "paceerickson@greeker.com", "phone": "+1 (978) 471-3010", "address": "295 Landis Court, Enetai, Federated States Of Micronesia, 631", "about": "Elit nostrud dolore aute id in ut commodo nostrud duis. Dolor in ut dolore labore aliqua anim. Dolor minim excepteur irure laboris laboris proident nulla consequat duis incididunt voluptate mollit sint in.\r\n", "registered": "2014-04-10T01:25:13-12:00", "latitude": 38.16366, "longitude": 29.738105, "tags": [ "veniam", "amet", "cupidatat", "ut", "nisi", "velit", "Lorem" ], "friends": [ { "id": 0, "name": "Sarah Fields" }, { "id": 1, "name": "Briana Aguilar" }, { "id": 2, "name": "Sosa Gomez" } ], "greeting": "Hello, Pace Erickson! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f5676c6e6fd970b1", "index": 3848, "guid": "94a93ea2-e674-4d70-9f70-2e327499ee08", "isActive": true, "balance": "$2,026.43", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Chavez Stewart", "gender": "male", "company": "WRAPTURE", "email": "chavezstewart@wrapture.com", "phone": "+1 (930) 512-3204", "address": "842 Gatling Place, Harviell, Oklahoma, 6967", "about": "Do quis minim minim fugiat. Cillum cillum anim non exercitation in ipsum consequat cillum ex incididunt aliqua. Enim do ullamco et aute fugiat velit aliquip. Cillum excepteur veniam est fugiat mollit nisi do voluptate aliquip qui aliquip. Labore consectetur mollit deserunt ut voluptate minim esse ex ut dolor veniam sint veniam esse. Ullamco magna enim amet minim officia mollit et sit exercitation sit. Proident in cillum esse commodo ullamco sint nostrud elit laborum proident do amet culpa adipisicing.\r\n", "registered": "2014-03-20T17:19:06-13:00", "latitude": 77.004228, "longitude": 67.726261, "tags": [ "est", "minim", "est", "cillum", "nisi", "fugiat", "velit" ], "friends": [ { "id": 0, "name": "Chasity Foster" }, { "id": 1, "name": "Josefa Pacheco" }, { "id": 2, "name": "Ollie Rodgers" } ], "greeting": "Hello, Chavez Stewart! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea281b5d33acab9542f6", "index": 3849, "guid": "bf7ea7fe-4959-4b1c-9dd6-290d2344cd52", "isActive": false, "balance": "$3,432.69", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Lula Meyers", "gender": "female", "company": "PORTALINE", "email": "lulameyers@portaline.com", "phone": "+1 (852) 420-2100", "address": "820 Bushwick Avenue, Eagleville, Michigan, 3213", "about": "Reprehenderit elit proident cupidatat incididunt quis ut cupidatat laboris est ex. Sint id fugiat culpa voluptate pariatur eiusmod enim excepteur aute. Deserunt nisi Lorem voluptate sunt eu anim voluptate ex aute consectetur ut incididunt deserunt. Ex ipsum veniam Lorem elit ad non voluptate id officia enim laborum nisi. Enim ipsum dolore incididunt occaecat nulla aliquip ad aliquip minim cillum.\r\n", "registered": "2014-06-14T10:44:38-12:00", "latitude": 45.441637, "longitude": 12.396269, "tags": [ "nulla", "exercitation", "officia", "irure", "est", "excepteur", "dolor" ], "friends": [ { "id": 0, "name": "Gates Roach" }, { "id": 1, "name": "Sadie Gallegos" }, { "id": 2, "name": "Jeannie Stokes" } ], "greeting": "Hello, Lula Meyers! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea283d5bb1507ce8e772", "index": 3850, "guid": "455e2447-0bd6-4f44-ab6d-a34747912ae6", "isActive": true, "balance": "$2,374.22", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Maxwell Marks", "gender": "male", "company": "GONKLE", "email": "maxwellmarks@gonkle.com", "phone": "+1 (814) 452-2541", "address": "424 Bragg Court, Groveville, Kansas, 5535", "about": "Reprehenderit anim ad cillum sunt occaecat excepteur labore mollit sint cupidatat elit. Enim officia consectetur ipsum consequat pariatur pariatur ea do Lorem deserunt reprehenderit. Eiusmod fugiat irure in ipsum sunt in consectetur aute nisi.\r\n", "registered": "2014-04-13T21:55:35-12:00", "latitude": 75.93642, "longitude": -89.607124, "tags": [ "ea", "ex", "amet", "in", "dolore", "id", "irure" ], "friends": [ { "id": 0, "name": "Calhoun Woods" }, { "id": 1, "name": "Rosalind Briggs" }, { "id": 2, "name": "Harriet Serrano" } ], "greeting": "Hello, Maxwell Marks! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea281de2e575a4379e24", "index": 3851, "guid": "2f325126-9f51-48d2-ab9d-666b80383378", "isActive": false, "balance": "$3,285.68", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Amy Cooper", "gender": "female", "company": "BALUBA", "email": "amycooper@baluba.com", "phone": "+1 (968) 599-3894", "address": "176 Lombardy Street, Gila, South Dakota, 623", "about": "Dolor nostrud amet nulla sint. Consectetur Lorem esse ipsum proident officia occaecat mollit officia mollit ipsum ea. Lorem excepteur voluptate quis fugiat. Eiusmod id veniam enim amet eu reprehenderit ea occaecat cillum eu ipsum nostrud et minim. Est velit excepteur sit nisi velit sunt nulla excepteur nulla nisi consequat dolore aliquip. Labore est anim tempor id sunt nulla.\r\n", "registered": "2014-08-01T09:45:13-12:00", "latitude": -16.258368, "longitude": -149.132098, "tags": [ "quis", "irure", "occaecat", "voluptate", "enim", "elit", "elit" ], "friends": [ { "id": 0, "name": "Corinne Floyd" }, { "id": 1, "name": "David Stevenson" }, { "id": 2, "name": "Cynthia Sargent" } ], "greeting": "Hello, Amy Cooper! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea282dd3c3a8c1d6e8a2", "index": 3852, "guid": "bbcf9780-aa4d-4c2a-b6e2-1caaedb0de27", "isActive": true, "balance": "$1,666.59", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Elizabeth Johnston", "gender": "female", "company": "EXTRAGEN", "email": "elizabethjohnston@extragen.com", "phone": "+1 (904) 431-2963", "address": "735 Jerome Avenue, Albrightsville, West Virginia, 3207", "about": "Laboris et Lorem dolore tempor aliqua commodo adipisicing officia elit qui laborum ea velit deserunt. Minim cupidatat quis excepteur dolore ullamco. Tempor eu adipisicing nostrud consectetur minim ea.\r\n", "registered": "2014-08-11T09:12:15-12:00", "latitude": -4.345556, "longitude": -52.108128, "tags": [ "non", "proident", "occaecat", "quis", "commodo", "est", "anim" ], "friends": [ { "id": 0, "name": "Fisher Valenzuela" }, { "id": 1, "name": "Celia Richards" }, { "id": 2, "name": "Randolph Duffy" } ], "greeting": "Hello, Elizabeth Johnston! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2876de3921b9a2c89f", "index": 3853, "guid": "4868ea9e-42ff-424e-bc0e-828392964fb3", "isActive": false, "balance": "$3,564.45", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Rowena Blanchard", "gender": "female", "company": "KAGGLE", "email": "rowenablanchard@kaggle.com", "phone": "+1 (883) 403-2755", "address": "785 Portal Street, Brogan, Texas, 3071", "about": "Voluptate aute culpa irure esse do consequat ullamco. Eu id pariatur et occaecat ipsum in velit quis nulla commodo mollit velit deserunt. Voluptate eu aute laborum cupidatat culpa amet id anim culpa sint laboris dolor commodo. Pariatur nostrud deserunt Lorem irure mollit. Sit veniam officia voluptate et exercitation ea nisi non enim cupidatat proident laborum consequat minim. Do minim tempor fugiat commodo duis Lorem mollit eiusmod fugiat fugiat.\r\n", "registered": "2014-08-05T02:43:04-12:00", "latitude": -57.239802, "longitude": 93.215928, "tags": [ "tempor", "pariatur", "pariatur", "amet", "elit", "do", "non" ], "friends": [ { "id": 0, "name": "Carmela Craig" }, { "id": 1, "name": "Watts Byrd" }, { "id": 2, "name": "Rita White" } ], "greeting": "Hello, Rowena Blanchard! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28691d7cf357f37616", "index": 3854, "guid": "6a42622b-0fc3-469c-9192-cf056e2fb1bf", "isActive": false, "balance": "$1,629.54", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Nadia Hensley", "gender": "female", "company": "CUIZINE", "email": "nadiahensley@cuizine.com", "phone": "+1 (992) 595-3350", "address": "832 Canton Court, Wright, Oregon, 4090", "about": "Fugiat ut magna excepteur exercitation dolor. Culpa non reprehenderit enim mollit qui dolor consectetur proident officia aliqua est occaecat. Aliquip consectetur voluptate veniam nostrud. Quis cillum irure eiusmod proident exercitation nulla elit ullamco in proident ex aliquip. Aliqua excepteur sint reprehenderit exercitation commodo consequat esse cillum tempor culpa aliquip officia. Do non et duis veniam minim quis nisi consequat ea veniam. Laboris occaecat culpa Lorem consectetur aliqua reprehenderit.\r\n", "registered": "2014-09-04T18:07:00-12:00", "latitude": 24.763282, "longitude": 48.545815, "tags": [ "magna", "nulla", "deserunt", "eiusmod", "pariatur", "nisi", "do" ], "friends": [ { "id": 0, "name": "Hensley Martinez" }, { "id": 1, "name": "Geneva Richmond" }, { "id": 2, "name": "Kristin Mcclure" } ], "greeting": "Hello, Nadia Hensley! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2876a2f37022606528", "index": 3855, "guid": "819c9eb2-fd42-43a4-974b-d93c8900b173", "isActive": true, "balance": "$3,880.72", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Sofia Peters", "gender": "female", "company": "XUMONK", "email": "sofiapeters@xumonk.com", "phone": "+1 (962) 561-2534", "address": "278 Willow Street, Fowlerville, Nevada, 7390", "about": "Mollit dolor culpa proident fugiat elit nulla enim ipsum. Cillum duis excepteur nulla cillum cillum id. Sit do culpa laborum non magna officia consectetur velit irure. Elit in excepteur laborum ut enim et aliqua. Occaecat esse reprehenderit ex irure. Duis excepteur consequat deserunt minim laboris proident veniam.\r\n", "registered": "2014-07-15T02:55:20-12:00", "latitude": 13.072619, "longitude": 45.906956, "tags": [ "proident", "laboris", "elit", "minim", "duis", "nisi", "amet" ], "friends": [ { "id": 0, "name": "Estela Lara" }, { "id": 1, "name": "Doris Cleveland" }, { "id": 2, "name": "Hamilton Howell" } ], "greeting": "Hello, Sofia Peters! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28291b18a7610437a0", "index": 3856, "guid": "76d7b129-78ef-49b5-9a9c-655aeb185061", "isActive": false, "balance": "$1,303.72", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Harris Nielsen", "gender": "male", "company": "FUTURITY", "email": "harrisnielsen@futurity.com", "phone": "+1 (960) 465-3788", "address": "866 Sutter Avenue, Lutsen, Minnesota, 7090", "about": "Voluptate eiusmod consectetur anim voluptate ad officia ut. Quis ullamco deserunt fugiat exercitation anim cupidatat consectetur voluptate amet aute qui quis sint. Aliqua labore qui proident non aliquip eiusmod do minim eu in voluptate.\r\n", "registered": "2014-05-28T21:35:10-12:00", "latitude": 60.492121, "longitude": -10.159251, "tags": [ "tempor", "ut", "esse", "cillum", "Lorem", "eiusmod", "cupidatat" ], "friends": [ { "id": 0, "name": "Nellie Rhodes" }, { "id": 1, "name": "Langley Hartman" }, { "id": 2, "name": "Carol Travis" } ], "greeting": "Hello, Harris Nielsen! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea288cd9d7b9f28a36f9", "index": 3857, "guid": "fe162a81-70e8-4f7b-8286-1ef0c082f127", "isActive": false, "balance": "$1,466.70", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Barton Wilson", "gender": "male", "company": "PRIMORDIA", "email": "bartonwilson@primordia.com", "phone": "+1 (933) 574-3399", "address": "781 Conduit Boulevard, Como, Missouri, 3448", "about": "Magna aute sit cupidatat laborum. Cupidatat elit voluptate esse anim voluptate qui tempor nostrud qui exercitation. Culpa culpa magna esse dolor incididunt occaecat et enim. Laboris consequat elit labore excepteur exercitation excepteur aliquip tempor minim magna.\r\n", "registered": "2014-09-14T10:53:41-12:00", "latitude": 54.840322, "longitude": 95.835508, "tags": [ "anim", "irure", "minim", "anim", "laborum", "officia", "tempor" ], "friends": [ { "id": 0, "name": "Gracie Pace" }, { "id": 1, "name": "Stephanie Sparks" }, { "id": 2, "name": "Heather Patterson" } ], "greeting": "Hello, Barton Wilson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea281cb8c975122f1896", "index": 3858, "guid": "1c82085c-b3e9-4203-b333-00ad4d8acf81", "isActive": true, "balance": "$3,456.27", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Pittman Wood", "gender": "male", "company": "PYRAMAX", "email": "pittmanwood@pyramax.com", "phone": "+1 (931) 510-2918", "address": "196 Court Street, Eastvale, Rhode Island, 2192", "about": "Consequat Lorem pariatur aliquip nostrud incididunt tempor dolore. Consequat Lorem voluptate reprehenderit mollit qui. Consequat excepteur velit commodo labore nisi cillum culpa ipsum eiusmod. Consequat mollit ex culpa proident sit veniam consectetur magna esse pariatur Lorem anim veniam in. Laborum consequat elit sunt aliquip sunt reprehenderit nostrud.\r\n", "registered": "2014-09-14T13:36:16-12:00", "latitude": -26.005392, "longitude": 31.043456, "tags": [ "do", "in", "non", "officia", "fugiat", "proident", "ut" ], "friends": [ { "id": 0, "name": "Kristy Rodriguez" }, { "id": 1, "name": "Hahn Bates" }, { "id": 2, "name": "Holly Shepard" } ], "greeting": "Hello, Pittman Wood! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28dcdbd902ce3b491a", "index": 3859, "guid": "e1770195-0306-4475-9017-16fa32bccf7e", "isActive": false, "balance": "$3,173.08", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Maryellen Mercado", "gender": "female", "company": "KATAKANA", "email": "maryellenmercado@katakana.com", "phone": "+1 (987) 524-2444", "address": "759 Lexington Avenue, Tooleville, Florida, 4489", "about": "Ea ipsum aute in eu ullamco sit ea nisi do tempor. Et veniam enim dolor eiusmod non in magna ad adipisicing esse. Ut et minim exercitation quis amet fugiat sint incididunt ad cillum officia ex do. Laborum tempor pariatur deserunt ad ea nulla enim minim. Elit magna ullamco reprehenderit culpa nulla elit laborum. Velit duis minim elit tempor laborum magna Lorem magna enim eiusmod magna non pariatur exercitation. Magna exercitation consectetur consectetur ad ad consectetur incididunt culpa sunt voluptate qui quis.\r\n", "registered": "2014-05-21T19:26:51-12:00", "latitude": -66.806893, "longitude": 13.116334, "tags": [ "anim", "id", "aute", "dolor", "laboris", "commodo", "irure" ], "friends": [ { "id": 0, "name": "Lyons Fitzpatrick" }, { "id": 1, "name": "Dolly Hart" }, { "id": 2, "name": "Jodie Poole" } ], "greeting": "Hello, Maryellen Mercado! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2850d173762954dcf2", "index": 3860, "guid": "18f18018-df52-4460-860a-a46bc14f1f65", "isActive": false, "balance": "$1,697.60", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Lynn Franks", "gender": "male", "company": "ILLUMITY", "email": "lynnfranks@illumity.com", "phone": "+1 (832) 570-3920", "address": "227 Brighton Court, Lavalette, North Carolina, 2511", "about": "Occaecat incididunt laborum minim ad. Quis culpa est nostrud cupidatat qui enim ut eu esse Lorem. Veniam irure dolore adipisicing consectetur.\r\n", "registered": "2014-06-27T20:31:20-12:00", "latitude": 60.24541, "longitude": -32.73898, "tags": [ "ut", "Lorem", "ut", "elit", "mollit", "esse", "nostrud" ], "friends": [ { "id": 0, "name": "Witt Watson" }, { "id": 1, "name": "Toni Shaw" }, { "id": 2, "name": "Estella Smith" } ], "greeting": "Hello, Lynn Franks! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea287429b65a27837031", "index": 3861, "guid": "87944b65-d438-4cfb-a1b9-01a386b8a0aa", "isActive": false, "balance": "$1,634.71", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Candy Bell", "gender": "female", "company": "PARLEYNET", "email": "candybell@parleynet.com", "phone": "+1 (883) 459-3537", "address": "773 Columbia Street, Crown, New Hampshire, 2051", "about": "Excepteur cillum incididunt nisi excepteur ullamco irure id laborum. Dolor ullamco incididunt sunt non Lorem nulla eu consequat fugiat enim voluptate irure. Incididunt elit consectetur reprehenderit adipisicing excepteur voluptate. In laborum enim velit tempor dolore in proident veniam non. Ullamco sint nisi eiusmod in nulla labore in reprehenderit eiusmod nisi duis et. Labore ut cillum aute qui dolore.\r\n", "registered": "2014-06-15T02:24:16-12:00", "latitude": 33.494279, "longitude": 54.487133, "tags": [ "enim", "pariatur", "id", "ullamco", "labore", "reprehenderit", "aute" ], "friends": [ { "id": 0, "name": "Tommie Simon" }, { "id": 1, "name": "Traci Orr" }, { "id": 2, "name": "Ingrid Page" } ], "greeting": "Hello, Candy Bell! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2876e074e6470ba203", "index": 3862, "guid": "aa437185-9aab-4d6d-a98f-397acb892ba8", "isActive": false, "balance": "$3,264.62", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Mercado Greene", "gender": "male", "company": "ASSURITY", "email": "mercadogreene@assurity.com", "phone": "+1 (850) 557-2520", "address": "586 Butler Street, Katonah, Arkansas, 8700", "about": "Enim sit cillum adipisicing laboris labore id tempor nostrud sunt nisi et laborum. Fugiat elit proident ullamco cupidatat id. Officia anim in qui eu occaecat aliquip sint do sint exercitation. Id pariatur ex culpa cillum incididunt sunt. Nisi pariatur consequat aute aliquip culpa adipisicing consequat proident laboris duis. Culpa id qui magna in ea commodo.\r\n", "registered": "2014-03-17T23:25:01-13:00", "latitude": -54.115362, "longitude": 148.814989, "tags": [ "sunt", "incididunt", "sit", "consequat", "fugiat", "officia", "ex" ], "friends": [ { "id": 0, "name": "Luna Flowers" }, { "id": 1, "name": "Tracy Spencer" }, { "id": 2, "name": "Chen Booker" } ], "greeting": "Hello, Mercado Greene! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2863abddf1d5efe033", "index": 3863, "guid": "ade0ec60-bc85-4379-bdde-fda3569bf2a8", "isActive": false, "balance": "$3,204.91", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Bernard Vinson", "gender": "male", "company": "MEDMEX", "email": "bernardvinson@medmex.com", "phone": "+1 (802) 475-3663", "address": "294 Beekman Place, Greenock, Iowa, 6599", "about": "Qui aute magna ipsum incididunt laborum. Est irure duis enim do minim minim id ad proident reprehenderit dolor commodo cillum. Voluptate nulla veniam fugiat esse qui aute qui pariatur proident qui Lorem aliquip commodo ea. Irure ullamco ea eu et laborum mollit eu deserunt velit aliquip. Lorem veniam velit eiusmod ipsum laboris do eu incididunt consequat.\r\n", "registered": "2014-04-21T20:21:13-12:00", "latitude": -11.587557, "longitude": -86.928342, "tags": [ "do", "quis", "occaecat", "proident", "ipsum", "incididunt", "sit" ], "friends": [ { "id": 0, "name": "Liza Craft" }, { "id": 1, "name": "Katy Frazier" }, { "id": 2, "name": "Barnes Guerrero" } ], "greeting": "Hello, Bernard Vinson! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28cd43f8d93f1989f4", "index": 3864, "guid": "a55f16d0-7ac0-44f2-8991-7fac3faeee12", "isActive": false, "balance": "$2,036.37", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Glass Francis", "gender": "male", "company": "VELOS", "email": "glassfrancis@velos.com", "phone": "+1 (901) 579-2505", "address": "172 Dwight Street, Celeryville, Nebraska, 3342", "about": "Dolore nostrud culpa fugiat ad pariatur nisi fugiat magna qui exercitation labore cupidatat. Sint velit quis incididunt reprehenderit eu veniam voluptate laboris excepteur quis qui pariatur dolore. Laborum enim irure officia velit elit culpa ex voluptate dolor consectetur mollit ea. Id id ullamco dolore elit in amet est veniam pariatur sit nisi. Qui qui sint ullamco exercitation ex ipsum occaecat laborum reprehenderit cupidatat aliqua.\r\n", "registered": "2014-02-20T08:23:28-13:00", "latitude": 40.18102, "longitude": -11.89054, "tags": [ "aliqua", "eiusmod", "ex", "dolor", "occaecat", "magna", "culpa" ], "friends": [ { "id": 0, "name": "Wynn Wiley" }, { "id": 1, "name": "Whitney Kelly" }, { "id": 2, "name": "Flora Klein" } ], "greeting": "Hello, Glass Francis! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2804a74bbc6cfbc65a", "index": 3865, "guid": "62a59902-0e42-4156-b35e-601a4c87518e", "isActive": true, "balance": "$1,941.05", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Delacruz Mcbride", "gender": "male", "company": "SUSTENZA", "email": "delacruzmcbride@sustenza.com", "phone": "+1 (885) 410-3158", "address": "693 Bragg Street, Venice, District Of Columbia, 159", "about": "Duis proident consectetur elit nulla exercitation fugiat. Veniam sit dolor officia et labore excepteur pariatur. Ipsum id enim quis et proident est pariatur exercitation incididunt consequat. Duis do sunt non ex nisi eu eiusmod quis velit reprehenderit quis adipisicing ut. Reprehenderit aute aliqua tempor ad veniam quis. Laborum eiusmod incididunt deserunt Lorem.\r\n", "registered": "2014-07-03T03:03:57-12:00", "latitude": 38.495244, "longitude": -32.935402, "tags": [ "sit", "reprehenderit", "anim", "excepteur", "culpa", "nisi", "laboris" ], "friends": [ { "id": 0, "name": "Kim Carey" }, { "id": 1, "name": "Gardner Fry" }, { "id": 2, "name": "Brown Beasley" } ], "greeting": "Hello, Delacruz Mcbride! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28159af027aaeb0500", "index": 3866, "guid": "43d9086f-478d-47f1-8826-0fc2d56ee739", "isActive": true, "balance": "$1,429.14", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Lowe Gaines", "gender": "male", "company": "GRAINSPOT", "email": "lowegaines@grainspot.com", "phone": "+1 (923) 461-3965", "address": "771 Gotham Avenue, Benson, New Jersey, 195", "about": "Voluptate sunt nostrud dolor qui. Lorem incididunt laborum ullamco duis reprehenderit commodo ipsum nisi excepteur labore ea adipisicing. Excepteur aliquip nulla laborum ullamco commodo nulla.\r\n", "registered": "2014-05-13T13:47:01-12:00", "latitude": 56.005055, "longitude": 128.706478, "tags": [ "labore", "sint", "incididunt", "adipisicing", "tempor", "mollit", "non" ], "friends": [ { "id": 0, "name": "Josefina Warner" }, { "id": 1, "name": "Finley Henry" }, { "id": 2, "name": "Ursula Clark" } ], "greeting": "Hello, Lowe Gaines! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2802aaf02ed5a6d4bd", "index": 3867, "guid": "6fc11737-abdd-40e8-ab7e-68e1776b1fbe", "isActive": true, "balance": "$2,307.73", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Williams Baird", "gender": "male", "company": "QUALITEX", "email": "williamsbaird@qualitex.com", "phone": "+1 (853) 482-2936", "address": "366 Rockaway Parkway, Stollings, Palau, 9490", "about": "Sint ea labore labore magna velit qui Lorem nulla aliquip reprehenderit consectetur. Officia esse adipisicing adipisicing laboris consectetur duis deserunt aliqua id do commodo proident amet. Ut est reprehenderit est elit quis incididunt. Lorem velit incididunt culpa Lorem deserunt est irure dolor aliquip cupidatat.\r\n", "registered": "2014-01-29T23:34:19-13:00", "latitude": -74.085705, "longitude": 12.896838, "tags": [ "ullamco", "in", "sunt", "aliquip", "esse", "dolor", "laborum" ], "friends": [ { "id": 0, "name": "Juanita Noel" }, { "id": 1, "name": "Valentine Dunlap" }, { "id": 2, "name": "Eleanor Kramer" } ], "greeting": "Hello, Williams Baird! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea284084bc28527d99b4", "index": 3868, "guid": "1a7a446a-57d8-4c2a-8d90-09dab4dbfca6", "isActive": true, "balance": "$2,581.13", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Rebekah Hubbard", "gender": "female", "company": "ZBOO", "email": "rebekahhubbard@zboo.com", "phone": "+1 (963) 558-2829", "address": "522 Powers Street, Nettie, Puerto Rico, 9496", "about": "Velit reprehenderit fugiat id consequat qui sunt elit et. Labore qui elit adipisicing eiusmod proident nisi nostrud non laborum. Cillum dolore aliquip aliquip veniam mollit duis duis ipsum cupidatat. Proident tempor aute reprehenderit anim incididunt officia. Enim nisi tempor non consequat culpa nostrud enim. Deserunt et officia occaecat laboris tempor veniam do sit mollit fugiat. Excepteur minim aliquip consequat non laboris ex sit in aute officia non.\r\n", "registered": "2014-05-19T01:56:49-12:00", "latitude": -9.99, "longitude": -77.843364, "tags": [ "eu", "ex", "nostrud", "tempor", "in", "enim", "labore" ], "friends": [ { "id": 0, "name": "Jewell Petersen" }, { "id": 1, "name": "Mccormick Ford" }, { "id": 2, "name": "Lilian Buck" } ], "greeting": "Hello, Rebekah Hubbard! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea288e0f2b2f0ccc09b7", "index": 3869, "guid": "06d6e794-b6cf-4648-b0d3-c0dc0a85ea11", "isActive": false, "balance": "$2,563.08", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Potts Harrington", "gender": "male", "company": "GOKO", "email": "pottsharrington@goko.com", "phone": "+1 (923) 441-2551", "address": "343 Gates Avenue, Dante, California, 3328", "about": "Quis do anim dolor laborum ipsum exercitation nulla. Labore consectetur irure elit consequat ullamco occaecat consectetur ea sunt laborum occaecat ad Lorem. Proident id enim est fugiat reprehenderit occaecat dolor nulla reprehenderit amet sunt fugiat. Adipisicing pariatur do eu duis adipisicing est magna deserunt proident velit excepteur mollit. Consectetur proident sunt elit ut. Cillum Lorem cupidatat deserunt cupidatat reprehenderit ullamco ipsum exercitation commodo.\r\n", "registered": "2014-05-26T10:40:24-12:00", "latitude": 73.832081, "longitude": 77.995389, "tags": [ "id", "culpa", "est", "pariatur", "amet", "occaecat", "consequat" ], "friends": [ { "id": 0, "name": "Selena Johns" }, { "id": 1, "name": "Phelps Montoya" }, { "id": 2, "name": "Watkins Berger" } ], "greeting": "Hello, Potts Harrington! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea280358371dbec0146c", "index": 3870, "guid": "8cdf6d07-3ccd-4926-84b7-085f67094348", "isActive": true, "balance": "$2,498.68", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Mae Osborne", "gender": "female", "company": "TALKALOT", "email": "maeosborne@talkalot.com", "phone": "+1 (800) 545-3677", "address": "467 Sullivan Street, Nord, Vermont, 8114", "about": "Cupidatat quis occaecat occaecat anim id do ut exercitation. Adipisicing fugiat quis ullamco sint in velit elit voluptate aliqua nisi aute. Qui voluptate laborum dolore ad cillum occaecat ullamco velit do voluptate consequat. Est consequat sint proident commodo eiusmod.\r\n", "registered": "2014-02-24T18:07:24-13:00", "latitude": 69.077226, "longitude": 171.845532, "tags": [ "culpa", "irure", "culpa", "sunt", "esse", "voluptate", "quis" ], "friends": [ { "id": 0, "name": "Walsh Mathis" }, { "id": 1, "name": "Dominguez Melton" }, { "id": 2, "name": "Wilkinson Eaton" } ], "greeting": "Hello, Mae Osborne! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea282fb01bdc5c7d2d30", "index": 3871, "guid": "c98056ee-4db2-46e0-9afa-4b6c2e4c2a1f", "isActive": true, "balance": "$1,348.87", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Deann Mays", "gender": "female", "company": "LYRIA", "email": "deannmays@lyria.com", "phone": "+1 (837) 444-2962", "address": "232 Mersereau Court, Duryea, Indiana, 8156", "about": "Esse qui amet mollit labore. Dolor sint ad proident labore nulla. Duis ea eu deserunt incididunt. Cillum pariatur exercitation laborum veniam irure aliqua. Duis quis elit aute commodo voluptate quis nulla nulla dolore officia. Aliquip ipsum qui magna do reprehenderit velit aliquip qui sit consectetur velit labore dolor.\r\n", "registered": "2014-08-25T07:19:19-12:00", "latitude": 79.337973, "longitude": 127.37896, "tags": [ "commodo", "tempor", "cillum", "proident", "sit", "minim", "adipisicing" ], "friends": [ { "id": 0, "name": "Giles Gill" }, { "id": 1, "name": "Tanner Wheeler" }, { "id": 2, "name": "Nichole Carr" } ], "greeting": "Hello, Deann Mays! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2848f5dbff517859b6", "index": 3872, "guid": "3d002dff-2402-40ea-85bb-84bb401e2240", "isActive": false, "balance": "$1,486.40", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Ginger Wolfe", "gender": "female", "company": "KENEGY", "email": "gingerwolfe@kenegy.com", "phone": "+1 (841) 572-2130", "address": "350 Balfour Place, Vincent, Illinois, 9587", "about": "Do et enim ipsum pariatur consectetur sunt adipisicing nulla nostrud. Minim cupidatat consequat eiusmod consectetur. Consequat id esse minim fugiat sit excepteur reprehenderit sunt mollit magna. Dolor adipisicing esse elit laboris ad incididunt pariatur minim sint. Eu minim elit mollit incididunt mollit sit fugiat id nostrud in elit sit deserunt elit. Nulla aute aliqua aute qui consequat sunt laborum incididunt mollit reprehenderit. Amet irure est sint ea aliqua ex sunt velit sit occaecat ex dolor tempor.\r\n", "registered": "2014-05-10T02:45:57-12:00", "latitude": -85.286147, "longitude": 35.023182, "tags": [ "ad", "anim", "esse", "laboris", "culpa", "enim", "eu" ], "friends": [ { "id": 0, "name": "Queen Huber" }, { "id": 1, "name": "June Pierce" }, { "id": 2, "name": "Edna Merritt" } ], "greeting": "Hello, Ginger Wolfe! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea281f19ae51cf087c09", "index": 3873, "guid": "69f9fc4e-2cca-4ca2-aa68-e6e515ec3254", "isActive": false, "balance": "$3,666.17", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Mccarthy Aguirre", "gender": "male", "company": "ZYTREX", "email": "mccarthyaguirre@zytrex.com", "phone": "+1 (858) 554-3397", "address": "481 Oriental Boulevard, Ebro, South Carolina, 4551", "about": "In sint mollit laborum officia laborum et anim. Sunt minim magna nisi veniam sit minim mollit elit nisi pariatur. Amet sit consectetur ex exercitation quis ipsum qui amet. Deserunt reprehenderit in sunt fugiat.\r\n", "registered": "2014-01-11T05:55:04-13:00", "latitude": 39.500251, "longitude": -80.43466, "tags": [ "sit", "mollit", "consequat", "nisi", "consectetur", "dolor", "aliqua" ], "friends": [ { "id": 0, "name": "Wilcox Luna" }, { "id": 1, "name": "Terry Bowen" }, { "id": 2, "name": "Pratt Mueller" } ], "greeting": "Hello, Mccarthy Aguirre! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28ab0fd90048d94551", "index": 3874, "guid": "57e20468-1ee3-4ec3-bdf5-2092036946a5", "isActive": true, "balance": "$2,108.68", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Lambert Duncan", "gender": "male", "company": "ANIVET", "email": "lambertduncan@anivet.com", "phone": "+1 (895) 442-3944", "address": "414 Schenck Street, Salunga, American Samoa, 1819", "about": "Ipsum irure anim veniam nisi dolore amet incididunt laborum esse commodo ut occaecat. Eu velit adipisicing ipsum dolore eiusmod mollit. Proident ex exercitation quis proident reprehenderit duis velit tempor eu tempor dolore sit et. Non consectetur eiusmod elit cillum aliquip ullamco eiusmod exercitation amet laborum quis tempor ullamco dolor.\r\n", "registered": "2014-04-04T01:46:12-13:00", "latitude": -85.034477, "longitude": 155.65502, "tags": [ "dolore", "quis", "in", "exercitation", "non", "magna", "ullamco" ], "friends": [ { "id": 0, "name": "Rasmussen Burt" }, { "id": 1, "name": "Suzette Saunders" }, { "id": 2, "name": "Lancaster Caldwell" } ], "greeting": "Hello, Lambert Duncan! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28a9683195acf2fa5e", "index": 3875, "guid": "f30f6d96-de75-49d5-ae57-9ba45e25827d", "isActive": true, "balance": "$2,147.86", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Schmidt House", "gender": "male", "company": "NETAGY", "email": "schmidthouse@netagy.com", "phone": "+1 (914) 487-3418", "address": "851 Garfield Place, Talpa, Delaware, 4258", "about": "Tempor reprehenderit mollit do velit eu esse minim ipsum. Esse et culpa aute cupidatat commodo sit et exercitation officia occaecat. Do duis laboris aliquip aliqua. Ullamco qui id eiusmod anim voluptate id tempor voluptate cupidatat voluptate eiusmod. Exercitation incididunt pariatur sint minim cupidatat ut. Consectetur incididunt ad enim minim labore dolore excepteur magna ipsum voluptate non laborum in dolor.\r\n", "registered": "2014-05-18T22:15:13-12:00", "latitude": 40.252546, "longitude": 111.002908, "tags": [ "sunt", "officia", "est", "voluptate", "ea", "ullamco", "eiusmod" ], "friends": [ { "id": 0, "name": "Cheri Dudley" }, { "id": 1, "name": "Reeves Wynn" }, { "id": 2, "name": "Coleen Wilkinson" } ], "greeting": "Hello, Schmidt House! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea280f8661d3ebdb86db", "index": 3876, "guid": "b9f33e07-bce4-4cd5-982c-bdee3f3f59a4", "isActive": false, "balance": "$2,523.65", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Margret Bailey", "gender": "female", "company": "TERASCAPE", "email": "margretbailey@terascape.com", "phone": "+1 (842) 435-3239", "address": "575 Ocean Court, Steinhatchee, Pennsylvania, 1595", "about": "Eu id aliquip cupidatat fugiat do id cillum consequat. Excepteur laboris eiusmod nulla eiusmod adipisicing qui nostrud sint aliquip enim qui. Nisi irure nulla magna irure tempor proident elit esse eu nulla adipisicing laboris. Non eiusmod fugiat non culpa nulla non in cillum id laboris voluptate excepteur voluptate.\r\n", "registered": "2014-02-10T22:44:16-13:00", "latitude": -18.064756, "longitude": -21.717862, "tags": [ "commodo", "culpa", "tempor", "nisi", "ut", "esse", "ex" ], "friends": [ { "id": 0, "name": "Kelley Barry" }, { "id": 1, "name": "Woodward Atkins" }, { "id": 2, "name": "Myrtle Donaldson" } ], "greeting": "Hello, Margret Bailey! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28ec5ed0264f59a979", "index": 3877, "guid": "a486ab99-0eb9-4123-856d-b5bc33729777", "isActive": false, "balance": "$3,500.51", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Shelley Hutchinson", "gender": "female", "company": "GLOBOIL", "email": "shelleyhutchinson@globoil.com", "phone": "+1 (908) 569-2895", "address": "977 Perry Terrace, Mathews, Georgia, 6455", "about": "Excepteur do minim mollit occaecat irure laborum deserunt ea velit eu. Pariatur veniam ea consectetur amet mollit do ullamco magna. Lorem Lorem cillum mollit enim laborum pariatur incididunt incididunt id. Ex sunt esse qui et. Lorem labore ipsum aute proident aliquip. Quis elit pariatur proident irure nisi ut anim. Anim do sint exercitation id ipsum sit et est.\r\n", "registered": "2014-02-19T06:07:46-13:00", "latitude": 6.462742, "longitude": 44.718411, "tags": [ "duis", "nulla", "sit", "anim", "irure", "amet", "ad" ], "friends": [ { "id": 0, "name": "Maritza Decker" }, { "id": 1, "name": "Solis Cochran" }, { "id": 2, "name": "Tessa Mckay" } ], "greeting": "Hello, Shelley Hutchinson! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2856aa858fc31302b6", "index": 3878, "guid": "1be43bb0-3980-4f56-b8a8-57ff0a04a887", "isActive": true, "balance": "$2,977.32", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Short Simpson", "gender": "male", "company": "DIGIRANG", "email": "shortsimpson@digirang.com", "phone": "+1 (858) 513-2201", "address": "308 Farragut Road, Greenwich, North Dakota, 6926", "about": "Aliquip aliqua ullamco ipsum cillum magna eiusmod ea velit excepteur. Aliqua mollit mollit nisi et minim et aliquip sunt minim irure officia minim. Aliquip quis reprehenderit adipisicing ullamco. Magna deserunt nulla id adipisicing veniam enim exercitation consectetur nostrud sunt duis deserunt laboris sunt. Aute cillum officia in minim excepteur ullamco tempor. Consequat laboris et enim excepteur consequat tempor amet enim.\r\n", "registered": "2014-08-29T23:20:38-12:00", "latitude": 71.302663, "longitude": -172.753778, "tags": [ "adipisicing", "id", "proident", "excepteur", "ullamco", "officia", "cupidatat" ], "friends": [ { "id": 0, "name": "Carrie Everett" }, { "id": 1, "name": "Bridgett Delgado" }, { "id": 2, "name": "Castillo Mcgowan" } ], "greeting": "Hello, Short Simpson! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28e7d6424f6315516f", "index": 3879, "guid": "1b1455ba-8c0b-4824-8fba-18bd926ebf78", "isActive": true, "balance": "$3,582.30", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Knowles Fleming", "gender": "male", "company": "MACRONAUT", "email": "knowlesfleming@macronaut.com", "phone": "+1 (904) 512-3631", "address": "302 Moore Place, Rosedale, Louisiana, 4529", "about": "Minim cillum mollit magna minim Lorem occaecat duis et. Laboris ullamco pariatur ipsum consectetur. Elit exercitation commodo officia sunt et eiusmod sunt id aliquip. Pariatur consectetur ad Lorem aliqua ea laboris. Enim nulla minim veniam consequat aliqua quis sunt Lorem anim aliqua occaecat sint.\r\n", "registered": "2014-06-14T22:54:16-12:00", "latitude": 56.212547, "longitude": -150.440268, "tags": [ "labore", "culpa", "magna", "do", "fugiat", "sint", "irure" ], "friends": [ { "id": 0, "name": "Robyn Burton" }, { "id": 1, "name": "Whitehead Graves" }, { "id": 2, "name": "Jefferson Potts" } ], "greeting": "Hello, Knowles Fleming! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea281f5a4ca7b864f640", "index": 3880, "guid": "fe80d8dd-526f-4186-8534-9eb0a0fbd91f", "isActive": true, "balance": "$2,222.27", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Paul Holland", "gender": "male", "company": "EXPOSA", "email": "paulholland@exposa.com", "phone": "+1 (845) 558-2782", "address": "822 Bliss Terrace, Corriganville, Northern Mariana Islands, 1848", "about": "Qui esse et quis minim duis enim veniam ut elit commodo. Anim enim est mollit elit deserunt minim nisi irure aliquip. Esse excepteur cillum cupidatat est eu id ex sit et Lorem veniam elit.\r\n", "registered": "2014-08-10T03:14:16-12:00", "latitude": 19.338137, "longitude": 54.731997, "tags": [ "laboris", "quis", "magna", "aliquip", "nisi", "quis", "officia" ], "friends": [ { "id": 0, "name": "Mildred Hewitt" }, { "id": 1, "name": "Deirdre Porter" }, { "id": 2, "name": "Love Callahan" } ], "greeting": "Hello, Paul Holland! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28407ba9ccc97af948", "index": 3881, "guid": "909561cc-bdd2-47ad-8985-af77d344ce62", "isActive": true, "balance": "$1,184.56", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Fannie Christensen", "gender": "female", "company": "EXOVENT", "email": "fanniechristensen@exovent.com", "phone": "+1 (807) 427-3317", "address": "418 Cedar Street, Snyderville, Colorado, 9645", "about": "Veniam dolore veniam cupidatat ipsum fugiat eiusmod reprehenderit nisi. In fugiat mollit anim cillum consectetur labore tempor in voluptate occaecat voluptate veniam minim. Minim mollit in commodo aute culpa. Excepteur aliqua in fugiat exercitation laborum qui fugiat esse nisi reprehenderit proident. Eu labore velit officia nisi excepteur ex cupidatat.\r\n", "registered": "2014-01-29T13:54:22-13:00", "latitude": -2.682936, "longitude": -137.130551, "tags": [ "amet", "nulla", "voluptate", "ex", "qui", "ullamco", "duis" ], "friends": [ { "id": 0, "name": "May Salazar" }, { "id": 1, "name": "Rhonda Emerson" }, { "id": 2, "name": "Irma Velasquez" } ], "greeting": "Hello, Fannie Christensen! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea286e931748b3f7aac7", "index": 3882, "guid": "9be8afd5-b5f2-41f0-ac28-bc07647eed3c", "isActive": true, "balance": "$2,622.93", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Cherry Chapman", "gender": "female", "company": "KROG", "email": "cherrychapman@krog.com", "phone": "+1 (943) 593-2465", "address": "148 Montauk Court, Strykersville, Idaho, 7101", "about": "Aute aliquip officia magna tempor qui veniam fugiat aute consequat in deserunt. Eu culpa dolor commodo ea irure Lorem excepteur elit voluptate. Labore consequat nulla eiusmod irure magna duis et anim non eiusmod irure. Tempor in culpa minim eiusmod. Cillum ex dolor anim tempor veniam officia aliqua magna culpa est et. Cillum qui magna eu cupidatat incididunt Lorem aliqua proident labore esse magna.\r\n", "registered": "2014-02-12T10:15:52-13:00", "latitude": -77.903576, "longitude": 174.5193, "tags": [ "occaecat", "adipisicing", "labore", "nisi", "amet", "aliqua", "fugiat" ], "friends": [ { "id": 0, "name": "Angelica Jennings" }, { "id": 1, "name": "Bright Logan" }, { "id": 2, "name": "Russell Sloan" } ], "greeting": "Hello, Cherry Chapman! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea288b44ff083cccfe28", "index": 3883, "guid": "55cf4074-e9a8-4d8d-b63a-7a8943d18c9d", "isActive": false, "balance": "$1,188.66", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Leola Lamb", "gender": "female", "company": "FIREWAX", "email": "leolalamb@firewax.com", "phone": "+1 (957) 467-2883", "address": "918 Banker Street, Whitestone, Marshall Islands, 5097", "about": "Magna nisi nostrud sit enim qui nostrud non excepteur adipisicing labore anim laborum. Voluptate id excepteur eiusmod excepteur adipisicing. Mollit adipisicing reprehenderit aute laborum ad tempor commodo anim cillum ad enim. In nisi Lorem dolor occaecat tempor aute eiusmod quis incididunt magna laboris veniam ipsum deserunt.\r\n", "registered": "2014-08-15T23:39:38-12:00", "latitude": 75.456035, "longitude": 31.364758, "tags": [ "irure", "et", "pariatur", "culpa", "amet", "ex", "non" ], "friends": [ { "id": 0, "name": "Stacie Jensen" }, { "id": 1, "name": "Alta Carrillo" }, { "id": 2, "name": "Sue Mccarthy" } ], "greeting": "Hello, Leola Lamb! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28109d993b6d399aac", "index": 3884, "guid": "cfc62728-8e61-42e4-84f7-7e62b9f353d6", "isActive": false, "balance": "$1,048.39", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Shannon Salas", "gender": "male", "company": "SENMEI", "email": "shannonsalas@senmei.com", "phone": "+1 (957) 563-3486", "address": "642 Dare Court, Conestoga, New York, 7332", "about": "Sint magna qui dolore in in non sit aliquip. Voluptate labore eu id anim voluptate. Et deserunt laborum cupidatat ea id aute magna do. Voluptate adipisicing irure qui laborum pariatur minim.\r\n", "registered": "2014-03-02T22:04:40-13:00", "latitude": 52.291445, "longitude": 112.47656, "tags": [ "magna", "magna", "deserunt", "cillum", "cupidatat", "qui", "tempor" ], "friends": [ { "id": 0, "name": "Thornton Castillo" }, { "id": 1, "name": "Kirk Tanner" }, { "id": 2, "name": "Abbott Chase" } ], "greeting": "Hello, Shannon Salas! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28b50b4a41a09edc9f", "index": 3885, "guid": "1f6d7aec-a121-4368-8862-515e70b61e20", "isActive": true, "balance": "$1,603.62", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Allie Suarez", "gender": "female", "company": "ORONOKO", "email": "alliesuarez@oronoko.com", "phone": "+1 (923) 503-3915", "address": "329 National Drive, Drytown, Guam, 1723", "about": "Dolore enim mollit esse occaecat. Laboris anim sint consectetur cupidatat elit dolore reprehenderit. Id sint exercitation sunt do mollit duis sint nisi mollit magna est anim. Exercitation voluptate in quis ea occaecat duis nostrud eiusmod enim. Cupidatat reprehenderit eu duis amet qui cupidatat qui nisi dolor sint. Aliquip Lorem culpa labore adipisicing in nisi nostrud eiusmod ullamco cupidatat officia amet veniam. Sit officia cillum cupidatat ex elit amet non tempor sit cillum veniam.\r\n", "registered": "2014-08-23T17:49:43-12:00", "latitude": 3.147216, "longitude": 179.89159, "tags": [ "labore", "laboris", "aliqua", "nulla", "eiusmod", "laboris", "dolore" ], "friends": [ { "id": 0, "name": "Burch Leonard" }, { "id": 1, "name": "Huff Castro" }, { "id": 2, "name": "Twila Burks" } ], "greeting": "Hello, Allie Suarez! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28510671dbe2f3bc21", "index": 3886, "guid": "a7e022fb-e1f2-4ea5-82d8-1bd4726fee89", "isActive": true, "balance": "$2,459.22", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Jaclyn Perry", "gender": "female", "company": "OPTICALL", "email": "jaclynperry@opticall.com", "phone": "+1 (924) 520-3928", "address": "228 Hendrickson Street, Leola, Virgin Islands, 321", "about": "Do culpa duis exercitation mollit. Aliquip laboris consequat id ex cupidatat et minim mollit incididunt. Do Lorem enim laboris cupidatat dolor fugiat irure sunt cillum duis anim adipisicing.\r\n", "registered": "2014-03-08T16:57:04-13:00", "latitude": -1.189609, "longitude": 21.763886, "tags": [ "aliquip", "ea", "ullamco", "voluptate", "nulla", "ut", "esse" ], "friends": [ { "id": 0, "name": "Jessica Hansen" }, { "id": 1, "name": "Eugenia Avery" }, { "id": 2, "name": "Trujillo Holman" } ], "greeting": "Hello, Jaclyn Perry! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28c791f78f784fa022", "index": 3887, "guid": "181a18ff-6194-47e3-9bbc-b539a8723c4a", "isActive": true, "balance": "$1,341.90", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Aileen Boyle", "gender": "female", "company": "UNQ", "email": "aileenboyle@unq.com", "phone": "+1 (802) 490-2014", "address": "714 Highland Boulevard, Chalfant, Massachusetts, 2429", "about": "Est deserunt ad ut enim non consectetur commodo. Eu deserunt reprehenderit sit sint occaecat pariatur commodo ipsum proident adipisicing consequat consectetur. Aliqua ad elit laborum ipsum. Ullamco laborum culpa dolore dolor fugiat cupidatat cillum exercitation laborum cillum in consequat veniam. Ut ex consectetur esse aliqua quis culpa ad. Minim aliqua duis ea irure elit in duis id. Incididunt consequat esse elit aute labore.\r\n", "registered": "2014-05-30T11:20:16-12:00", "latitude": 72.89641, "longitude": 51.101175, "tags": [ "est", "ad", "ut", "adipisicing", "voluptate", "adipisicing", "elit" ], "friends": [ { "id": 0, "name": "Mcfarland Bauer" }, { "id": 1, "name": "Gabriela Avila" }, { "id": 2, "name": "Donna Vazquez" } ], "greeting": "Hello, Aileen Boyle! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28fa8b8f16ebba0449", "index": 3888, "guid": "7b1882fb-db04-4899-b660-afd55109f33e", "isActive": false, "balance": "$3,695.21", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Sally Tucker", "gender": "female", "company": "PRINTSPAN", "email": "sallytucker@printspan.com", "phone": "+1 (950) 511-3268", "address": "988 Bartlett Street, Marysville, Utah, 4316", "about": "Lorem duis sint amet officia in qui magna non deserunt mollit exercitation eiusmod incididunt irure. Tempor excepteur velit fugiat amet sit amet pariatur deserunt esse quis. Eu culpa enim reprehenderit adipisicing duis nostrud consequat occaecat ut excepteur consectetur laboris est magna. Incididunt minim esse consectetur voluptate id esse sint aliqua sint amet enim. Ut ea excepteur minim esse exercitation ex dolor sint.\r\n", "registered": "2014-03-20T06:32:14-13:00", "latitude": -51.325776, "longitude": 151.917146, "tags": [ "ex", "cupidatat", "esse", "exercitation", "mollit", "tempor", "culpa" ], "friends": [ { "id": 0, "name": "Dianna Swanson" }, { "id": 1, "name": "Strong Miles" }, { "id": 2, "name": "Lloyd Hays" } ], "greeting": "Hello, Sally Tucker! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2821ae1fca89bb696e", "index": 3889, "guid": "7b8004ae-b228-4dfa-ad11-c0205ecf4154", "isActive": true, "balance": "$3,394.83", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Pat Whitley", "gender": "female", "company": "EARWAX", "email": "patwhitley@earwax.com", "phone": "+1 (835) 464-3061", "address": "417 Manhattan Court, Tivoli, Montana, 6740", "about": "Minim id laboris est cillum esse sit esse duis. Ut eu ad irure in consectetur exercitation culpa adipisicing aute eiusmod Lorem quis tempor ipsum. Velit aliquip aliquip ut do amet pariatur aute velit aute. Nostrud culpa anim aliqua dolore. Proident adipisicing pariatur tempor anim nostrud exercitation. Duis occaecat excepteur tempor veniam do nulla quis commodo labore magna aute aliquip. Anim labore incididunt incididunt nulla sint esse.\r\n", "registered": "2014-01-26T05:37:47-13:00", "latitude": -0.229455, "longitude": -142.09967, "tags": [ "occaecat", "veniam", "nulla", "cupidatat", "deserunt", "enim", "in" ], "friends": [ { "id": 0, "name": "Ina Stone" }, { "id": 1, "name": "Cameron Villarreal" }, { "id": 2, "name": "Kathy Howe" } ], "greeting": "Hello, Pat Whitley! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2889741ca5ad812d4b", "index": 3890, "guid": "ecce6c5a-ea08-4b4c-948f-6eece4166457", "isActive": false, "balance": "$3,255.50", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Hammond Keith", "gender": "male", "company": "BIZMATIC", "email": "hammondkeith@bizmatic.com", "phone": "+1 (812) 482-2985", "address": "135 Kingsland Avenue, Garfield, Wisconsin, 8980", "about": "Aliqua non anim aute cillum minim fugiat veniam tempor. Ut consectetur sint adipisicing proident in. Sint sunt ipsum labore adipisicing.\r\n", "registered": "2014-06-24T04:01:32-12:00", "latitude": -27.705568, "longitude": 146.808491, "tags": [ "consequat", "ut", "dolor", "est", "elit", "ea", "elit" ], "friends": [ { "id": 0, "name": "Leta Mayo" }, { "id": 1, "name": "Riddle Rosales" }, { "id": 2, "name": "Serrano Mason" } ], "greeting": "Hello, Hammond Keith! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2886121899fc543872", "index": 3891, "guid": "94426fdf-c633-4aa2-9473-a35f15bce72d", "isActive": false, "balance": "$3,149.56", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Valenzuela Warren", "gender": "male", "company": "ENDICIL", "email": "valenzuelawarren@endicil.com", "phone": "+1 (993) 523-2508", "address": "897 Grand Avenue, Gorham, Maine, 3492", "about": "Eiusmod sunt nostrud non incididunt tempor adipisicing tempor do mollit officia excepteur. Est non cupidatat non ullamco reprehenderit sit fugiat eiusmod laboris laboris cupidatat tempor. Irure magna deserunt enim adipisicing cupidatat cupidatat. Ex commodo deserunt reprehenderit pariatur aliqua mollit aliqua ea culpa esse ad nulla sit. Labore anim cillum do cillum proident veniam veniam mollit mollit sunt laborum ut. Elit commodo labore magna ex officia reprehenderit excepteur aute. Eu est enim eu exercitation nulla amet.\r\n", "registered": "2014-06-28T01:55:51-12:00", "latitude": -13.66442, "longitude": -86.603027, "tags": [ "nisi", "ut", "dolor", "deserunt", "irure", "duis", "ea" ], "friends": [ { "id": 0, "name": "Abby Barlow" }, { "id": 1, "name": "Lolita Davis" }, { "id": 2, "name": "Fletcher Solis" } ], "greeting": "Hello, Valenzuela Warren! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28ca8ebe7afdea4c9f", "index": 3892, "guid": "ce61478a-652b-4676-bf6a-af7b855d6bc3", "isActive": false, "balance": "$2,130.51", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Sampson Riggs", "gender": "male", "company": "ZOLAR", "email": "sampsonriggs@zolar.com", "phone": "+1 (922) 421-2599", "address": "217 Grand Street, Floris, Virginia, 4460", "about": "Ullamco Lorem id ut do enim labore adipisicing minim anim eu irure exercitation tempor amet. Aliqua duis officia laborum id ex excepteur enim mollit consequat irure est ipsum in. Ad id anim qui occaecat exercitation sint. Cupidatat enim fugiat do ad et velit non incididunt voluptate occaecat.\r\n", "registered": "2014-06-04T04:39:54-12:00", "latitude": 51.159697, "longitude": -167.423054, "tags": [ "excepteur", "cillum", "amet", "id", "est", "ad", "adipisicing" ], "friends": [ { "id": 0, "name": "Elba Matthews" }, { "id": 1, "name": "Smith Petty" }, { "id": 2, "name": "Maryann Marshall" } ], "greeting": "Hello, Sampson Riggs! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28c5715319eaeeddac", "index": 3893, "guid": "18cb97e5-e961-4b3e-ac81-d1e1c7ede30e", "isActive": false, "balance": "$1,637.93", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Carlson Black", "gender": "male", "company": "GLEAMINK", "email": "carlsonblack@gleamink.com", "phone": "+1 (830) 534-2143", "address": "589 Henry Street, Robbins, Kentucky, 7470", "about": "Veniam ad commodo exercitation culpa tempor reprehenderit. Quis cillum ut aliqua consectetur pariatur proident voluptate proident. Est ea sunt Lorem qui ut quis magna nulla id incididunt fugiat ex consectetur.\r\n", "registered": "2014-01-22T01:29:52-13:00", "latitude": 6.127979, "longitude": 28.124707, "tags": [ "ut", "irure", "consectetur", "officia", "do", "eu", "ullamco" ], "friends": [ { "id": 0, "name": "Spencer Sykes" }, { "id": 1, "name": "Goff Becker" }, { "id": 2, "name": "Blevins Cox" } ], "greeting": "Hello, Carlson Black! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea289896155e1fd2bcc2", "index": 3894, "guid": "873b47a0-3bdf-4958-a527-735caa909321", "isActive": true, "balance": "$3,736.77", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "George Murphy", "gender": "male", "company": "KANGLE", "email": "georgemurphy@kangle.com", "phone": "+1 (872) 587-2837", "address": "753 Greenpoint Avenue, Sidman, Connecticut, 3795", "about": "Dolore nisi consequat irure voluptate tempor tempor commodo. Exercitation mollit consequat commodo ea sunt minim ut. Eiusmod sit nulla elit nulla minim laboris id. Eiusmod qui non elit irure consequat fugiat elit ipsum eu consectetur sit non. Labore labore incididunt culpa quis qui adipisicing aute anim cillum adipisicing nisi aute quis esse. Velit laborum veniam ullamco veniam ut eiusmod. Occaecat anim esse magna tempor ea cillum incididunt veniam eu dolore consequat pariatur cillum.\r\n", "registered": "2014-04-11T00:51:40-12:00", "latitude": 54.200561, "longitude": 48.994642, "tags": [ "irure", "laborum", "nisi", "nostrud", "aliqua", "pariatur", "magna" ], "friends": [ { "id": 0, "name": "Becker Kim" }, { "id": 1, "name": "Bentley Stafford" }, { "id": 2, "name": "Hogan Daniel" } ], "greeting": "Hello, George Murphy! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28da2cfebad7e8ea25", "index": 3895, "guid": "82389b72-2252-458b-ba74-9cd406fab7c6", "isActive": true, "balance": "$3,350.69", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Elsie Hudson", "gender": "female", "company": "BOINK", "email": "elsiehudson@boink.com", "phone": "+1 (807) 445-2762", "address": "616 Irving Street, Stagecoach, Mississippi, 6560", "about": "Pariatur id laborum pariatur eu proident minim consectetur labore laborum voluptate velit et minim sint. Enim enim nostrud ullamco nostrud ad qui nisi sit pariatur esse dolor laborum est commodo. Ad do ad cillum commodo. Irure mollit sint consequat ipsum veniam sunt.\r\n", "registered": "2014-08-19T19:48:08-12:00", "latitude": -62.306209, "longitude": 44.346461, "tags": [ "id", "nulla", "pariatur", "elit", "dolore", "minim", "et" ], "friends": [ { "id": 0, "name": "Ross Snow" }, { "id": 1, "name": "Dejesus Patrick" }, { "id": 2, "name": "Terri Padilla" } ], "greeting": "Hello, Elsie Hudson! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28710ca7af899f8232", "index": 3896, "guid": "5a074ece-7144-4550-ad9e-431eb382f860", "isActive": false, "balance": "$2,601.61", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Mclean Melendez", "gender": "male", "company": "SULFAX", "email": "mcleanmelendez@sulfax.com", "phone": "+1 (930) 600-2877", "address": "871 Claver Place, Hessville, Washington, 9085", "about": "Est dolore commodo id enim mollit incididunt aliqua culpa. Est ea fugiat amet et ad et Lorem laborum. In nostrud minim tempor nulla nulla quis qui tempor sint nulla. Sit velit irure culpa enim laborum nulla deserunt incididunt veniam in officia esse commodo. Veniam dolore laboris irure eiusmod id aute sint laboris laborum nostrud sint. Pariatur duis consequat amet quis aliqua mollit tempor. Incididunt deserunt consequat ad labore.\r\n", "registered": "2014-03-13T19:39:05-13:00", "latitude": 4.327129, "longitude": 80.258887, "tags": [ "dolore", "fugiat", "sunt", "adipisicing", "exercitation", "consequat", "sunt" ], "friends": [ { "id": 0, "name": "Janell Vasquez" }, { "id": 1, "name": "Tami Tyler" }, { "id": 2, "name": "Raquel Mooney" } ], "greeting": "Hello, Mclean Melendez! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2895c8987f90aa0fa6", "index": 3897, "guid": "df9ffd66-6581-454b-a954-85595797c7ff", "isActive": false, "balance": "$1,643.07", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Sylvia Garrison", "gender": "female", "company": "MAINELAND", "email": "sylviagarrison@maineland.com", "phone": "+1 (947) 500-3571", "address": "740 Newkirk Placez, Belvoir, Tennessee, 3105", "about": "Minim esse aute ut aliqua laboris. Lorem sunt minim elit amet exercitation fugiat veniam qui nisi magna minim. Deserunt incididunt consequat et eiusmod duis enim aute.\r\n", "registered": "2014-01-24T20:22:43-13:00", "latitude": -76.929736, "longitude": 60.813357, "tags": [ "aute", "Lorem", "aliqua", "culpa", "qui", "ad", "anim" ], "friends": [ { "id": 0, "name": "Bishop Best" }, { "id": 1, "name": "Alison Mccormick" }, { "id": 2, "name": "Larson Cross" } ], "greeting": "Hello, Sylvia Garrison! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea280cc88a71f2a44145", "index": 3898, "guid": "6500bbd0-0611-4e5f-ac61-da2ec73afc26", "isActive": true, "balance": "$3,955.38", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Jillian Albert", "gender": "female", "company": "HOMELUX", "email": "jillianalbert@homelux.com", "phone": "+1 (886) 453-2458", "address": "419 Oceanview Avenue, Grayhawk, Alabama, 6072", "about": "Enim ad id ullamco anim excepteur exercitation aliqua est tempor labore laborum. Exercitation Lorem nulla cillum est laborum qui est proident. Minim labore excepteur pariatur fugiat tempor dolor. Lorem fugiat eiusmod anim proident sunt consectetur magna dolor Lorem aliquip laborum quis amet excepteur. Laborum labore dolor dolor aute commodo esse ex magna eiusmod aliqua fugiat id. Velit reprehenderit cillum adipisicing sit ea excepteur occaecat aute. Amet ex est nostrud nulla cillum.\r\n", "registered": "2014-01-09T13:36:52-13:00", "latitude": -56.160395, "longitude": -137.208749, "tags": [ "qui", "officia", "anim", "ut", "ullamco", "cupidatat", "eiusmod" ], "friends": [ { "id": 0, "name": "Sherrie Newton" }, { "id": 1, "name": "Naomi Kemp" }, { "id": 2, "name": "Gregory Nelson" } ], "greeting": "Hello, Jillian Albert! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28d2a6126c7a7c7888", "index": 3899, "guid": "79d4bb65-0019-4f22-b569-3dee2395d095", "isActive": true, "balance": "$3,107.19", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Esther Duke", "gender": "female", "company": "IPLAX", "email": "estherduke@iplax.com", "phone": "+1 (840) 465-2570", "address": "377 Brigham Street, Bonanza, Ohio, 8616", "about": "Laboris qui minim ea ipsum ea nulla officia ullamco. Et dolor commodo adipisicing fugiat commodo excepteur sunt do deserunt amet sunt labore dolor non. Elit enim nostrud consectetur enim. Sit et anim eiusmod aute cupidatat ea sint aute sint aute. Proident ut ad cillum anim esse velit laborum proident. Enim eiusmod anim qui ex proident.\r\n", "registered": "2014-06-27T00:46:10-12:00", "latitude": -15.526912, "longitude": -102.323341, "tags": [ "nisi", "elit", "nulla", "elit", "veniam", "cupidatat", "pariatur" ], "friends": [ { "id": 0, "name": "Jocelyn Perez" }, { "id": 1, "name": "Neva Hoffman" }, { "id": 2, "name": "Coleman Waller" } ], "greeting": "Hello, Esther Duke! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea284484cb484bba0e7d", "index": 3900, "guid": "509451fd-d9fa-4d35-91de-156522e20784", "isActive": false, "balance": "$2,166.45", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Sybil Bowman", "gender": "female", "company": "ACUSAGE", "email": "sybilbowman@acusage.com", "phone": "+1 (974) 411-3130", "address": "106 Grimes Road, Winston, Hawaii, 2499", "about": "Tempor amet sit excepteur magna enim non cillum ad id laborum proident. Labore cupidatat cupidatat sint nisi ullamco. Exercitation incididunt est ad tempor laborum nulla dolor consectetur.\r\n", "registered": "2014-05-25T16:23:54-12:00", "latitude": -0.794591, "longitude": 105.465094, "tags": [ "pariatur", "amet", "do", "esse", "laborum", "voluptate", "est" ], "friends": [ { "id": 0, "name": "Bowers Morales" }, { "id": 1, "name": "Liz Mejia" }, { "id": 2, "name": "Ashley Hurst" } ], "greeting": "Hello, Sybil Bowman! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28024acbd60bd748e0", "index": 3901, "guid": "8a08b56b-ec1e-4013-b73d-5c1f1f98c7f5", "isActive": false, "balance": "$2,498.03", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Liliana Kennedy", "gender": "female", "company": "FILODYNE", "email": "lilianakennedy@filodyne.com", "phone": "+1 (830) 415-2633", "address": "992 Cooke Court, Clarksburg, New Mexico, 7669", "about": "Magna commodo laborum deserunt adipisicing cupidatat sunt tempor mollit reprehenderit laborum enim et sit. Qui Lorem non ea aute ad aliqua. Eiusmod reprehenderit esse ullamco esse amet laborum sint laboris commodo quis Lorem consequat occaecat nulla. Sit nostrud deserunt eu deserunt qui dolore deserunt quis. Dolore est esse et nisi excepteur dolor consectetur nisi sunt nostrud et esse nostrud adipisicing. Incididunt aute amet irure sit eu et ullamco dolor nulla elit ullamco qui deserunt. Nulla officia aliqua dolore irure cupidatat exercitation deserunt aute fugiat nostrud incididunt id qui.\r\n", "registered": "2014-05-09T07:53:17-12:00", "latitude": 73.04887, "longitude": -95.799962, "tags": [ "amet", "aliqua", "nulla", "amet", "eiusmod", "magna", "excepteur" ], "friends": [ { "id": 0, "name": "Kate Farrell" }, { "id": 1, "name": "Faith Doyle" }, { "id": 2, "name": "Schroeder Hoover" } ], "greeting": "Hello, Liliana Kennedy! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f4b1ef2bbfa149af", "index": 3902, "guid": "21c40740-0c6c-45f4-8796-d054014cbc50", "isActive": true, "balance": "$3,018.12", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Solomon Dalton", "gender": "male", "company": "STREZZO", "email": "solomondalton@strezzo.com", "phone": "+1 (918) 527-3241", "address": "801 Cypress Avenue, Allensworth, Maryland, 3572", "about": "Et nulla dolor aliquip est excepteur quis aliquip voluptate pariatur. Anim nulla dolor eiusmod velit reprehenderit do ipsum duis excepteur. Deserunt occaecat irure nulla magna elit adipisicing quis ea sunt enim et id. Esse aliquip ullamco labore nulla nisi proident velit anim tempor sit laborum amet sint. Do proident esse ad ut fugiat eu cillum ullamco. Amet nisi qui dolore eu esse nulla. Deserunt magna qui amet id et eiusmod consequat sit.\r\n", "registered": "2014-05-03T00:24:05-12:00", "latitude": 53.218528, "longitude": -137.141986, "tags": [ "laborum", "consectetur", "cupidatat", "deserunt", "esse", "fugiat", "aliqua" ], "friends": [ { "id": 0, "name": "Pansy Mcdowell" }, { "id": 1, "name": "Chelsea Marsh" }, { "id": 2, "name": "Roy Juarez" } ], "greeting": "Hello, Solomon Dalton! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28747ecaea62c27806", "index": 3903, "guid": "fa5cbf77-1d95-44f3-8a3d-8ac8414ba06c", "isActive": true, "balance": "$2,507.15", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Gilda Dillard", "gender": "female", "company": "ZINCA", "email": "gildadillard@zinca.com", "phone": "+1 (967) 596-2558", "address": "903 Furman Street, Mahtowa, Alaska, 5937", "about": "Fugiat esse id nisi commodo deserunt eu magna aliqua ipsum. Ex qui irure incididunt excepteur enim eiusmod. Et laborum sit occaecat in. Do sunt non exercitation ea qui sint.\r\n", "registered": "2014-08-20T13:11:22-12:00", "latitude": -80.477876, "longitude": 52.748258, "tags": [ "pariatur", "culpa", "elit", "nostrud", "consequat", "mollit", "fugiat" ], "friends": [ { "id": 0, "name": "Susana Lee" }, { "id": 1, "name": "Lara Mayer" }, { "id": 2, "name": "Allen Beard" } ], "greeting": "Hello, Gilda Dillard! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea288f74cc4e815b31f6", "index": 3904, "guid": "69263018-b524-4c05-8be0-45f45c774a1d", "isActive": false, "balance": "$3,603.69", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Freida Randolph", "gender": "female", "company": "KENGEN", "email": "freidarandolph@kengen.com", "phone": "+1 (945) 568-2779", "address": "837 Sumpter Street, Comptche, Arizona, 4748", "about": "Ut commodo reprehenderit labore adipisicing aliquip adipisicing incididunt. Est deserunt sint adipisicing cillum velit commodo adipisicing ad laboris nostrud ipsum. Mollit enim cillum veniam minim incididunt enim aliqua veniam nostrud. Nulla nulla voluptate enim labore enim adipisicing non Lorem anim exercitation sunt officia id mollit.\r\n", "registered": "2014-03-04T13:53:06-13:00", "latitude": 60.260765, "longitude": 165.95789, "tags": [ "duis", "fugiat", "do", "in", "proident", "cillum", "occaecat" ], "friends": [ { "id": 0, "name": "Madge Rocha" }, { "id": 1, "name": "Maynard Owen" }, { "id": 2, "name": "Dean Justice" } ], "greeting": "Hello, Freida Randolph! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28cb443920864fe07a", "index": 3905, "guid": "252c240d-0ade-4967-83dd-8ce329a2dac6", "isActive": false, "balance": "$1,892.94", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Harmon Walters", "gender": "male", "company": "FUELTON", "email": "harmonwalters@fuelton.com", "phone": "+1 (914) 489-2640", "address": "802 George Street, Crucible, Federated States Of Micronesia, 250", "about": "Minim proident amet veniam laboris deserunt enim sunt elit. Commodo commodo esse reprehenderit exercitation eu exercitation in occaecat incididunt ut aliqua cillum. Ipsum ad est dolor ex dolor exercitation id velit incididunt Lorem laborum sit aute minim.\r\n", "registered": "2014-03-10T20:30:04-13:00", "latitude": -9.099943, "longitude": 18.005429, "tags": [ "elit", "proident", "Lorem", "occaecat", "esse", "sunt", "proident" ], "friends": [ { "id": 0, "name": "Malinda Moon" }, { "id": 1, "name": "Alana Byers" }, { "id": 2, "name": "Franco Mcdaniel" } ], "greeting": "Hello, Harmon Walters! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28e2cfc9d339fdac38", "index": 3906, "guid": "8d2384bc-dfe5-4578-ba45-893cf1547aa0", "isActive": true, "balance": "$3,777.16", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Ramona Pearson", "gender": "female", "company": "SKYBOLD", "email": "ramonapearson@skybold.com", "phone": "+1 (956) 484-2189", "address": "799 Church Avenue, Maybell, Oklahoma, 7874", "about": "Labore dolor reprehenderit enim sunt consequat est consequat aliqua enim. Sunt aute nisi reprehenderit reprehenderit veniam. Consequat ut proident nulla adipisicing quis deserunt sit minim id aute aliquip eiusmod dolore. Non ipsum enim fugiat ex aliqua proident enim aliquip id non.\r\n", "registered": "2014-09-19T20:07:40-12:00", "latitude": -71.399767, "longitude": -10.815645, "tags": [ "incididunt", "ullamco", "enim", "culpa", "ullamco", "qui", "duis" ], "friends": [ { "id": 0, "name": "Madden Mcintosh" }, { "id": 1, "name": "Gross Robertson" }, { "id": 2, "name": "Darla Sherman" } ], "greeting": "Hello, Ramona Pearson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea284e8f22ada6d53bb2", "index": 3907, "guid": "702ed567-730f-48d8-b725-b0236057ef1a", "isActive": true, "balance": "$2,047.63", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Chris Gillespie", "gender": "female", "company": "SONIQUE", "email": "chrisgillespie@sonique.com", "phone": "+1 (998) 463-3379", "address": "120 Sutton Street, Dana, Michigan, 435", "about": "Minim consectetur tempor ut ipsum laboris reprehenderit officia. Consectetur officia laborum non excepteur excepteur aute ea quis sint adipisicing sunt non qui. Aliquip esse ex exercitation fugiat est irure esse minim aute. Sint culpa ullamco velit in aliquip. Dolore et do adipisicing cupidatat nisi eiusmod pariatur ipsum ut tempor ea voluptate mollit.\r\n", "registered": "2014-05-09T11:51:45-12:00", "latitude": -36.692333, "longitude": 17.361922, "tags": [ "mollit", "sint", "velit", "aute", "exercitation", "esse", "officia" ], "friends": [ { "id": 0, "name": "Nona Glass" }, { "id": 1, "name": "Cindy Wells" }, { "id": 2, "name": "Terry Love" } ], "greeting": "Hello, Chris Gillespie! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28b0df8d9095e67351", "index": 3908, "guid": "1abfd457-5460-42c9-b5f3-deaeb457c9d3", "isActive": true, "balance": "$1,805.97", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Gretchen Owens", "gender": "female", "company": "EARTHPLEX", "email": "gretchenowens@earthplex.com", "phone": "+1 (856) 427-2521", "address": "813 Cadman Plaza, Chemung, Kansas, 5155", "about": "Cillum magna dolor esse enim. Amet est sunt ut ex incididunt deserunt velit Lorem. Ex ipsum excepteur quis nulla cillum Lorem pariatur cillum elit laboris qui est velit. Ut ad elit reprehenderit fugiat consequat tempor esse ullamco labore. Tempor aliqua sint nisi dolore occaecat fugiat mollit et quis mollit.\r\n", "registered": "2014-02-21T03:33:20-13:00", "latitude": 58.873218, "longitude": -128.537935, "tags": [ "dolor", "culpa", "duis", "cupidatat", "qui", "qui", "culpa" ], "friends": [ { "id": 0, "name": "Loraine Levy" }, { "id": 1, "name": "Rush Dillon" }, { "id": 2, "name": "Lucia Williamson" } ], "greeting": "Hello, Gretchen Owens! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea289db6cf4aaeea19ba", "index": 3909, "guid": "94fd4dce-3872-4ce1-ba09-fbb8255ae89b", "isActive": false, "balance": "$2,453.64", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Drake Ware", "gender": "male", "company": "TELEQUIET", "email": "drakeware@telequiet.com", "phone": "+1 (989) 467-3063", "address": "973 Newkirk Avenue, Winesburg, South Dakota, 7792", "about": "Fugiat adipisicing adipisicing culpa deserunt quis eiusmod ea adipisicing deserunt irure dolore voluptate anim est. Anim est consequat id est anim anim. Magna nisi voluptate Lorem laboris irure deserunt qui velit culpa pariatur et. Labore aliqua mollit sunt et nostrud dolor deserunt reprehenderit officia exercitation laboris nisi laboris irure. Dolor quis do sint ad nulla proident ullamco in. Ea et occaecat ipsum magna enim ut duis eu est ea qui reprehenderit velit enim.\r\n", "registered": "2014-08-01T22:49:01-12:00", "latitude": 29.683646, "longitude": 170.242959, "tags": [ "nostrud", "minim", "velit", "adipisicing", "commodo", "cupidatat", "ullamco" ], "friends": [ { "id": 0, "name": "Lane Alston" }, { "id": 1, "name": "Clemons Nieves" }, { "id": 2, "name": "Levy Deleon" } ], "greeting": "Hello, Drake Ware! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea282bd216b640f4d990", "index": 3910, "guid": "9b4305d0-6d7f-4550-bb33-fa9b8794fd16", "isActive": true, "balance": "$2,379.15", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Whitney Parrish", "gender": "female", "company": "ROUGHIES", "email": "whitneyparrish@roughies.com", "phone": "+1 (844) 528-3960", "address": "114 Dekalb Avenue, Efland, West Virginia, 5999", "about": "Laborum ex enim esse fugiat anim ut. Irure occaecat nulla eu nostrud commodo cupidatat nisi. Consequat duis nisi culpa velit minim consequat. Ullamco nostrud consectetur ea veniam minim occaecat sit. Do est ad sunt ea commodo eu tempor dolore adipisicing labore aliqua laboris. Commodo officia excepteur mollit duis eu anim sint dolore.\r\n", "registered": "2014-05-21T13:10:14-12:00", "latitude": -67.214185, "longitude": -82.717259, "tags": [ "nulla", "nisi", "reprehenderit", "do", "ex", "in", "adipisicing" ], "friends": [ { "id": 0, "name": "Yang Farley" }, { "id": 1, "name": "Ora Pugh" }, { "id": 2, "name": "Bridgette Barber" } ], "greeting": "Hello, Whitney Parrish! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea289c045362a1e64763", "index": 3911, "guid": "9f7b3326-8c81-4011-a42c-12f2689984df", "isActive": true, "balance": "$3,756.03", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Tamera Hayes", "gender": "female", "company": "MEMORA", "email": "tamerahayes@memora.com", "phone": "+1 (937) 467-3303", "address": "339 Vermont Street, Bedias, Texas, 137", "about": "Ad id Lorem incididunt id minim Lorem exercitation cupidatat ex officia velit. Dolore pariatur pariatur voluptate ut aute ipsum aliquip aute non laboris. In ut proident id sint. Qui aliqua duis voluptate ad mollit non laboris ut do ad. Anim ex aliquip reprehenderit deserunt id magna laborum eu nisi laboris enim esse.\r\n", "registered": "2014-09-15T11:01:25-12:00", "latitude": 68.220585, "longitude": -109.054561, "tags": [ "dolor", "dolore", "ullamco", "culpa", "laborum", "eiusmod", "ipsum" ], "friends": [ { "id": 0, "name": "Lillie Pennington" }, { "id": 1, "name": "Cristina May" }, { "id": 2, "name": "Michael Hyde" } ], "greeting": "Hello, Tamera Hayes! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2810f1336b34245f31", "index": 3912, "guid": "f4fd4fab-bdd1-4a6a-973b-880965d0de88", "isActive": false, "balance": "$3,286.74", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Minnie Nunez", "gender": "female", "company": "SLUMBERIA", "email": "minnienunez@slumberia.com", "phone": "+1 (903) 528-3941", "address": "939 Montieth Street, Morgandale, Oregon, 1087", "about": "Ea proident occaecat sunt ea aute nulla enim exercitation ut Lorem culpa nostrud. Ex sunt voluptate consequat fugiat in aute in proident in duis. Lorem occaecat in voluptate dolore est do nostrud non et. Lorem esse ut in reprehenderit tempor pariatur irure velit sint ea proident ex. Nulla ea do do qui Lorem eu et tempor. Officia irure ullamco aute ipsum quis exercitation ex do dolor. Est labore pariatur fugiat eu tempor exercitation dolore reprehenderit commodo qui eu eiusmod.\r\n", "registered": "2014-07-19T10:31:53-12:00", "latitude": -29.451173, "longitude": 137.220004, "tags": [ "Lorem", "sint", "nulla", "nulla", "est", "aliquip", "adipisicing" ], "friends": [ { "id": 0, "name": "Sheree Hodge" }, { "id": 1, "name": "Adriana Dominguez" }, { "id": 2, "name": "Serena Mitchell" } ], "greeting": "Hello, Minnie Nunez! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28cbc3a9fc4d21433c", "index": 3913, "guid": "8742386d-7720-46f4-a431-3164d86e2ac8", "isActive": false, "balance": "$1,580.07", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Erma Rogers", "gender": "female", "company": "BESTO", "email": "ermarogers@besto.com", "phone": "+1 (952) 480-2484", "address": "436 Coleridge Street, Cetronia, Nevada, 601", "about": "Ullamco consequat fugiat quis non nulla officia. Pariatur eiusmod dolor consequat elit cupidatat dolor irure aliqua ex cupidatat. Culpa velit eu et quis incididunt amet sunt non qui aute. Duis proident nulla laborum et voluptate proident amet dolor non ad est.\r\n", "registered": "2014-01-15T03:06:55-13:00", "latitude": 55.520206, "longitude": 57.666871, "tags": [ "ipsum", "elit", "irure", "fugiat", "et", "minim", "ad" ], "friends": [ { "id": 0, "name": "Aline Odom" }, { "id": 1, "name": "Eddie Brock" }, { "id": 2, "name": "Judy Dixon" } ], "greeting": "Hello, Erma Rogers! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea281a1aa00946520a16", "index": 3914, "guid": "1525a66f-00ad-4235-a099-bd6958eed8cd", "isActive": false, "balance": "$3,691.98", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Keith Barnes", "gender": "male", "company": "DOGTOWN", "email": "keithbarnes@dogtown.com", "phone": "+1 (898) 555-2019", "address": "782 Nautilus Avenue, Galesville, Minnesota, 856", "about": "Sit fugiat ut dolor sunt labore anim dolore eiusmod incididunt anim velit nisi adipisicing sint. Sit tempor id qui anim pariatur sit adipisicing culpa nulla esse sunt. Dolore incididunt adipisicing veniam exercitation ea ipsum. Anim dolor occaecat dolore dolore velit ex laboris. Dolore sunt sint aliquip cillum excepteur dolor velit voluptate culpa pariatur eu. Voluptate labore consequat fugiat do cupidatat amet labore eu ipsum quis labore enim esse.\r\n", "registered": "2014-02-19T07:23:38-13:00", "latitude": -61.566357, "longitude": -22.942788, "tags": [ "sunt", "excepteur", "nisi", "adipisicing", "nisi", "cupidatat", "irure" ], "friends": [ { "id": 0, "name": "Myra Massey" }, { "id": 1, "name": "Katie Morton" }, { "id": 2, "name": "Hodge Landry" } ], "greeting": "Hello, Keith Barnes! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea286347745d69a17527", "index": 3915, "guid": "30f36426-af61-4d8e-bb97-8925a2353928", "isActive": false, "balance": "$2,176.32", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Booker Garcia", "gender": "male", "company": "QNEKT", "email": "bookergarcia@qnekt.com", "phone": "+1 (890) 561-3519", "address": "211 Kenilworth Place, Spelter, Missouri, 9642", "about": "Eu dolore do elit aute ex pariatur amet ad sunt consequat sunt. Anim nisi ut labore excepteur ipsum enim ex dolore excepteur. Incididunt ipsum culpa incididunt Lorem reprehenderit sint amet. Irure aliquip anim Lorem veniam cillum ex sint dolor proident duis non aliquip aute cupidatat.\r\n", "registered": "2014-03-01T23:35:22-13:00", "latitude": -44.169228, "longitude": 6.392928, "tags": [ "reprehenderit", "irure", "sit", "do", "aliqua", "ex", "enim" ], "friends": [ { "id": 0, "name": "Imogene Bowers" }, { "id": 1, "name": "Duffy Whitaker" }, { "id": 2, "name": "Velazquez Gordon" } ], "greeting": "Hello, Booker Garcia! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2876a8194e88d86114", "index": 3916, "guid": "7438bf03-cb9b-4de7-b0df-1c4de60f9cc5", "isActive": false, "balance": "$2,186.07", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Golden Downs", "gender": "male", "company": "SAVVY", "email": "goldendowns@savvy.com", "phone": "+1 (892) 537-3101", "address": "577 Hawthorne Street, Floriston, Rhode Island, 1171", "about": "Esse exercitation aliqua eu aliqua ad nostrud. Non fugiat cupidatat aliqua velit commodo deserunt veniam cillum proident pariatur. Amet duis tempor aliquip duis reprehenderit cupidatat enim incididunt ullamco amet culpa elit. Aliqua duis incididunt sit laborum qui enim voluptate nulla eiusmod et. Eiusmod occaecat ad eu excepteur elit sint eiusmod ex dolor enim exercitation.\r\n", "registered": "2014-07-25T08:52:46-12:00", "latitude": -36.343055, "longitude": -165.770073, "tags": [ "do", "occaecat", "amet", "cupidatat", "adipisicing", "ullamco", "non" ], "friends": [ { "id": 0, "name": "Bettye Rose" }, { "id": 1, "name": "Diaz Blackwell" }, { "id": 2, "name": "Vargas Steele" } ], "greeting": "Hello, Golden Downs! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28725ef1b2eb313227", "index": 3917, "guid": "13b7cc93-9049-418f-99ea-59f292ae955a", "isActive": false, "balance": "$3,437.43", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Audra Dorsey", "gender": "female", "company": "ATOMICA", "email": "audradorsey@atomica.com", "phone": "+1 (821) 548-2231", "address": "470 Railroad Avenue, Allendale, Florida, 2648", "about": "Consequat ut sint sunt sunt proident id ullamco incididunt non officia irure. Non ipsum ad dolor culpa deserunt eiusmod aute duis laborum in voluptate deserunt labore. Aute irure pariatur aliquip pariatur esse elit proident tempor irure laboris amet ut esse magna.\r\n", "registered": "2014-07-01T23:32:33-12:00", "latitude": 55.865188, "longitude": 68.168055, "tags": [ "minim", "consequat", "duis", "laborum", "eiusmod", "mollit", "labore" ], "friends": [ { "id": 0, "name": "Evangeline Burch" }, { "id": 1, "name": "Irwin Miller" }, { "id": 2, "name": "Casandra Gross" } ], "greeting": "Hello, Audra Dorsey! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2828f0582a1967fe7c", "index": 3918, "guid": "71d3f2ba-f900-4f49-8a79-2e23716aa1b9", "isActive": true, "balance": "$3,283.31", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Harrington Rowe", "gender": "male", "company": "MINGA", "email": "harringtonrowe@minga.com", "phone": "+1 (830) 488-3378", "address": "428 Lacon Court, Woodlake, North Carolina, 5666", "about": "Mollit ipsum mollit ipsum fugiat officia minim. Quis amet esse nisi laboris sunt est elit exercitation commodo. Ipsum tempor minim consequat consectetur. Laboris reprehenderit velit ut pariatur sit sint enim ex proident culpa. Sint fugiat ex consequat culpa laborum sunt minim ut laboris irure mollit fugiat tempor non. Incididunt sit qui sunt incididunt minim ut laborum adipisicing sunt.\r\n", "registered": "2014-03-17T23:46:33-13:00", "latitude": 4.196213, "longitude": -56.240099, "tags": [ "officia", "in", "laboris", "nostrud", "amet", "ut", "velit" ], "friends": [ { "id": 0, "name": "Ramirez Fitzgerald" }, { "id": 1, "name": "Bonita Burris" }, { "id": 2, "name": "Roth Case" } ], "greeting": "Hello, Harrington Rowe! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2837e3d8df2e5d50f2", "index": 3919, "guid": "dbbe7cee-17e3-4d2d-ae3f-79dd9e5e4566", "isActive": true, "balance": "$3,702.83", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Denise Hines", "gender": "female", "company": "MUSIX", "email": "denisehines@musix.com", "phone": "+1 (947) 426-2890", "address": "482 Fillmore Place, Urie, New Hampshire, 7171", "about": "Occaecat dolore exercitation laboris laborum et adipisicing. Proident nostrud magna mollit consequat occaecat id quis commodo magna voluptate esse eiusmod. Fugiat nostrud elit deserunt reprehenderit in cupidatat proident.\r\n", "registered": "2014-08-10T07:22:09-12:00", "latitude": -9.536021, "longitude": 56.116681, "tags": [ "qui", "labore", "velit", "excepteur", "cillum", "in", "qui" ], "friends": [ { "id": 0, "name": "Cannon Contreras" }, { "id": 1, "name": "Joyner Chen" }, { "id": 2, "name": "Consuelo Bean" } ], "greeting": "Hello, Denise Hines! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2890cb5b0ecb5189d1", "index": 3920, "guid": "df87d27e-c3ef-4a85-a5fd-86bad2f1cfbe", "isActive": false, "balance": "$2,176.53", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Nieves Burns", "gender": "male", "company": "GEEKOLOGY", "email": "nievesburns@geekology.com", "phone": "+1 (965) 504-2270", "address": "156 Heyward Street, Golconda, Arkansas, 1464", "about": "In Lorem ex sint excepteur. Velit eiusmod anim culpa in culpa pariatur. Qui esse nulla labore exercitation sint id amet qui reprehenderit ut ex cillum. Voluptate anim irure ullamco in occaecat Lorem. Ut duis tempor do ipsum sint minim dolor quis. Officia quis Lorem veniam do Lorem cupidatat.\r\n", "registered": "2014-03-09T20:17:59-13:00", "latitude": -59.167224, "longitude": 132.819569, "tags": [ "do", "aute", "et", "sint", "nisi", "eu", "non" ], "friends": [ { "id": 0, "name": "Collier Bruce" }, { "id": 1, "name": "Arline Gilliam" }, { "id": 2, "name": "Herrera Weiss" } ], "greeting": "Hello, Nieves Burns! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea281782267628ba4241", "index": 3921, "guid": "1cad38cf-a468-4533-9dcc-269d25f4dd6d", "isActive": false, "balance": "$1,450.11", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Pitts Sharp", "gender": "male", "company": "ECRATIC", "email": "pittssharp@ecratic.com", "phone": "+1 (919) 438-3819", "address": "898 Seigel Court, Knowlton, Iowa, 3099", "about": "Ex ad elit elit tempor quis in sunt fugiat id mollit. Ut sit deserunt sint ipsum magna elit nisi labore qui dolor veniam. Ex incididunt proident anim id et minim ullamco deserunt. Exercitation laboris incididunt reprehenderit Lorem ut ullamco dolor voluptate ea consequat. Veniam mollit minim esse consequat velit ut. Culpa eu ea et deserunt adipisicing nostrud sunt dolore irure do deserunt. Sint deserunt ut minim reprehenderit esse culpa veniam fugiat ex eu culpa pariatur adipisicing laboris.\r\n", "registered": "2014-06-25T06:04:17-12:00", "latitude": 80.907131, "longitude": 179.34288, "tags": [ "proident", "proident", "ad", "sint", "qui", "nisi", "duis" ], "friends": [ { "id": 0, "name": "Dennis Rivera" }, { "id": 1, "name": "Enid Hobbs" }, { "id": 2, "name": "Hardin Parker" } ], "greeting": "Hello, Pitts Sharp! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea284c45f4979986e3a9", "index": 3922, "guid": "4c4ac865-c3d7-4a80-b481-083341155aa1", "isActive": false, "balance": "$2,494.61", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Willis West", "gender": "male", "company": "SECURIA", "email": "williswest@securia.com", "phone": "+1 (854) 479-2787", "address": "417 Hicks Street, Southmont, Nebraska, 8272", "about": "Esse tempor quis commodo minim elit consequat culpa culpa mollit sint aute in. Dolor adipisicing anim veniam ex tempor aliqua id reprehenderit sint adipisicing. Labore eu sit sunt voluptate deserunt sit consequat. Deserunt commodo anim dolor sint. Consectetur consectetur commodo do eu mollit. Officia sunt duis commodo sunt veniam fugiat veniam et. Quis qui deserunt aute veniam deserunt tempor id id sunt anim ipsum magna.\r\n", "registered": "2014-02-21T20:31:00-13:00", "latitude": -29.642047, "longitude": -104.909942, "tags": [ "elit", "commodo", "quis", "veniam", "dolore", "aliquip", "tempor" ], "friends": [ { "id": 0, "name": "Rocha Peck" }, { "id": 1, "name": "Diana Hogan" }, { "id": 2, "name": "Robinson Coffey" } ], "greeting": "Hello, Willis West! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea288a407b6b07cc45e7", "index": 3923, "guid": "f7d14e39-a097-4f6d-b123-fa7b541498bf", "isActive": false, "balance": "$1,576.50", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Vera Snider", "gender": "female", "company": "OCEANICA", "email": "verasnider@oceanica.com", "phone": "+1 (830) 529-2835", "address": "171 Kimball Street, Hegins, District Of Columbia, 7722", "about": "Irure occaecat cupidatat consectetur deserunt eiusmod. Cillum aute et deserunt cillum ipsum elit. Quis commodo sunt laborum adipisicing et ea nisi occaecat. In sit officia elit aliqua cillum aliqua sunt occaecat aliquip velit duis. Consequat eu anim sint commodo qui adipisicing sit in sit non.\r\n", "registered": "2014-06-05T18:58:56-12:00", "latitude": 23.135279, "longitude": -109.136047, "tags": [ "ad", "sint", "ut", "ad", "aute", "ipsum", "nostrud" ], "friends": [ { "id": 0, "name": "Corine Flores" }, { "id": 1, "name": "Ola Harrell" }, { "id": 2, "name": "Adrian Henson" } ], "greeting": "Hello, Vera Snider! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28fd50bb8f6d557eb2", "index": 3924, "guid": "b190bd4f-c8ab-43d4-b094-cc44891180dd", "isActive": true, "balance": "$1,850.91", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Crawford Booth", "gender": "male", "company": "FLEXIGEN", "email": "crawfordbooth@flexigen.com", "phone": "+1 (910) 487-3629", "address": "617 Fayette Street, Vernon, New Jersey, 7920", "about": "Sunt ipsum ad adipisicing eiusmod aliqua ad aute cillum dolore sunt. Occaecat tempor id consectetur irure anim aliqua magna amet cupidatat reprehenderit voluptate amet sunt. Incididunt et irure veniam ullamco ut anim. Est occaecat voluptate consectetur id eiusmod magna est dolor officia pariatur dolore consequat. Anim nulla laborum in voluptate. Ullamco voluptate nisi adipisicing elit nisi non consectetur culpa ipsum adipisicing reprehenderit labore.\r\n", "registered": "2014-08-27T22:57:25-12:00", "latitude": -20.726507, "longitude": -11.807855, "tags": [ "commodo", "labore", "cillum", "excepteur", "Lorem", "ea", "nisi" ], "friends": [ { "id": 0, "name": "Barlow Willis" }, { "id": 1, "name": "Fitzpatrick Carpenter" }, { "id": 2, "name": "Tasha Pena" } ], "greeting": "Hello, Crawford Booth! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2831f65be3b4e8a245", "index": 3925, "guid": "653db243-7873-49b0-bf3c-45b60d1549b8", "isActive": false, "balance": "$2,484.73", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Cruz Washington", "gender": "male", "company": "BOLAX", "email": "cruzwashington@bolax.com", "phone": "+1 (869) 494-2612", "address": "212 Malbone Street, Jennings, Palau, 1414", "about": "Amet cillum eu officia fugiat sit consectetur. Exercitation sint nostrud aliqua ex cillum nostrud elit consequat consectetur esse in in. Nulla consequat elit consequat amet quis deserunt eu amet do cillum velit officia. Elit exercitation Lorem ex ullamco cillum eu. Enim culpa reprehenderit mollit duis deserunt sunt reprehenderit labore ut culpa anim consectetur. Eu magna est enim sunt eu velit exercitation qui consectetur. Eu enim ipsum dolore anim consequat.\r\n", "registered": "2014-02-05T02:14:19-13:00", "latitude": 8.731933, "longitude": 150.428834, "tags": [ "velit", "deserunt", "anim", "ipsum", "sunt", "commodo", "in" ], "friends": [ { "id": 0, "name": "Melva Potter" }, { "id": 1, "name": "Goldie Gates" }, { "id": 2, "name": "Callahan Hopkins" } ], "greeting": "Hello, Cruz Washington! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28740955a6cd5d737a", "index": 3926, "guid": "bac40184-eff1-4334-a5d4-278d6f763ec5", "isActive": false, "balance": "$2,177.66", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Ortega Gilbert", "gender": "male", "company": "LOCAZONE", "email": "ortegagilbert@locazone.com", "phone": "+1 (919) 568-2734", "address": "319 Varet Street, Outlook, Puerto Rico, 338", "about": "Labore exercitation ullamco aliqua irure reprehenderit laborum dolore ullamco ex fugiat ea. Esse reprehenderit nostrud aliqua nostrud duis in voluptate. Est quis anim anim do quis non ea culpa fugiat aliquip fugiat enim ipsum enim. Irure labore cupidatat culpa aute mollit id Lorem aute. Duis Lorem quis veniam officia ipsum.\r\n", "registered": "2014-03-21T13:14:26-13:00", "latitude": -47.831582, "longitude": 131.797385, "tags": [ "aute", "non", "dolor", "mollit", "ullamco", "id", "esse" ], "friends": [ { "id": 0, "name": "Danielle Walls" }, { "id": 1, "name": "Della Franklin" }, { "id": 2, "name": "Stout Reed" } ], "greeting": "Hello, Ortega Gilbert! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea282c1761583acd2d3e", "index": 3927, "guid": "dc9a55e9-9db0-4d08-b107-4561dc2ac2a6", "isActive": false, "balance": "$3,039.84", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Louise Odonnell", "gender": "female", "company": "ZOLAREX", "email": "louiseodonnell@zolarex.com", "phone": "+1 (823) 517-2162", "address": "849 Meadow Street, Winfred, California, 5973", "about": "Dolore qui esse aliquip fugiat. Aute nisi magna aute irure dolore deserunt mollit. Minim irure nostrud do tempor pariatur id. Ipsum sit occaecat tempor laboris anim sunt. Non id enim cillum cupidatat quis culpa esse occaecat ipsum commodo eiusmod ex ad tempor.\r\n", "registered": "2014-06-02T04:35:25-12:00", "latitude": -73.853047, "longitude": -148.907195, "tags": [ "consequat", "consectetur", "ea", "excepteur", "in", "et", "in" ], "friends": [ { "id": 0, "name": "Janna Chang" }, { "id": 1, "name": "Boyd Snyder" }, { "id": 2, "name": "Dickerson Elliott" } ], "greeting": "Hello, Louise Odonnell! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28417b79b20a3315b8", "index": 3928, "guid": "812355df-819a-424c-a748-e1763fa57f99", "isActive": true, "balance": "$3,568.43", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Bernadine Neal", "gender": "female", "company": "DAYCORE", "email": "bernadineneal@daycore.com", "phone": "+1 (835) 474-2858", "address": "874 Duryea Court, Fairlee, Vermont, 440", "about": "Proident proident velit occaecat mollit anim consectetur. Laboris magna do tempor consectetur. Dolor commodo excepteur ipsum ut id.\r\n", "registered": "2014-01-15T11:35:57-13:00", "latitude": -72.351902, "longitude": -14.953172, "tags": [ "duis", "sunt", "fugiat", "aliquip", "labore", "id", "officia" ], "friends": [ { "id": 0, "name": "Fay Boone" }, { "id": 1, "name": "Carissa Valencia" }, { "id": 2, "name": "Valdez Robinson" } ], "greeting": "Hello, Bernadine Neal! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea282b2ce537eb525aa2", "index": 3929, "guid": "f5d4bfc7-5ee5-47fa-8b9f-e6140965a45e", "isActive": false, "balance": "$1,520.90", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Brandie Macdonald", "gender": "female", "company": "SONGLINES", "email": "brandiemacdonald@songlines.com", "phone": "+1 (949) 545-2661", "address": "470 Garden Street, Tonopah, Indiana, 6480", "about": "Commodo aliqua culpa aliquip id minim. Sint consectetur enim pariatur aliqua enim est incididunt qui cillum minim laborum. Ex et velit ad aute ipsum duis et voluptate aliquip anim eu est sint. Nisi fugiat laboris aliquip esse reprehenderit sit mollit nostrud ex. Voluptate consequat quis fugiat dolor magna ex laborum incididunt. Deserunt exercitation ad ullamco eu dolor eiusmod. Qui nulla elit eu sint mollit.\r\n", "registered": "2014-05-30T21:14:41-12:00", "latitude": -22.889506, "longitude": 158.166827, "tags": [ "pariatur", "duis", "ullamco", "nostrud", "in", "exercitation", "tempor" ], "friends": [ { "id": 0, "name": "Stanley Santiago" }, { "id": 1, "name": "Cecelia Bartlett" }, { "id": 2, "name": "Lidia Weeks" } ], "greeting": "Hello, Brandie Macdonald! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28baf5a27db330ab44", "index": 3930, "guid": "ad1771c8-7936-4c7e-96cf-0df7476bf531", "isActive": true, "balance": "$3,910.31", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Forbes Lott", "gender": "male", "company": "KONGLE", "email": "forbeslott@kongle.com", "phone": "+1 (837) 587-2948", "address": "619 Matthews Court, Adamstown, Illinois, 2472", "about": "Reprehenderit ea laborum anim amet id reprehenderit nisi eiusmod ea proident ipsum cupidatat enim ut. Cillum excepteur ea ea aliquip consequat cupidatat eiusmod proident labore. Dolore reprehenderit commodo mollit do dolore sint.\r\n", "registered": "2014-01-13T05:09:02-13:00", "latitude": -79.240244, "longitude": -120.293794, "tags": [ "irure", "commodo", "est", "duis", "ex", "dolor", "fugiat" ], "friends": [ { "id": 0, "name": "Meredith Oconnor" }, { "id": 1, "name": "Berry Dejesus" }, { "id": 2, "name": "Rhea Cline" } ], "greeting": "Hello, Forbes Lott! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28d7101c6c41b1350f", "index": 3931, "guid": "79b3363c-0161-4d7e-81a1-279b4dd755e1", "isActive": true, "balance": "$2,231.69", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Hancock Larson", "gender": "male", "company": "KONGENE", "email": "hancocklarson@kongene.com", "phone": "+1 (816) 414-3976", "address": "419 Vermont Court, Coyote, South Carolina, 7502", "about": "Ipsum eu elit et aliquip nisi. Esse do dolor voluptate dolore. Anim veniam do fugiat veniam elit consequat. Aute enim culpa aute nisi anim sit tempor non fugiat irure. Sunt dolore tempor duis ea consequat excepteur commodo sunt dolore laboris. Velit velit Lorem exercitation excepteur consectetur quis dolor. Amet ipsum laboris ad excepteur minim nostrud consequat ullamco laborum culpa.\r\n", "registered": "2014-02-27T15:33:56-13:00", "latitude": 26.977057, "longitude": -119.384762, "tags": [ "nostrud", "consectetur", "culpa", "enim", "exercitation", "pariatur", "exercitation" ], "friends": [ { "id": 0, "name": "Becky Velazquez" }, { "id": 1, "name": "Stacy Newman" }, { "id": 2, "name": "Gwen Dyer" } ], "greeting": "Hello, Hancock Larson! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea284cc78ed214ef67dc", "index": 3932, "guid": "fc5d485f-dd7c-40fa-828c-1e03414863e3", "isActive": false, "balance": "$3,074.02", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Polly Blair", "gender": "female", "company": "FREAKIN", "email": "pollyblair@freakin.com", "phone": "+1 (934) 471-2933", "address": "562 Langham Street, Gorst, American Samoa, 2333", "about": "Esse tempor sunt eu non Lorem duis nostrud proident anim. Deserunt fugiat do deserunt nostrud irure. Elit dolore labore id qui ea esse. Aute nulla et occaecat veniam labore mollit ea sit id commodo qui nisi excepteur anim. Consectetur id consectetur duis eiusmod voluptate sit ex magna amet tempor.\r\n", "registered": "2014-08-10T06:05:48-12:00", "latitude": 63.411205, "longitude": 157.863885, "tags": [ "labore", "tempor", "eu", "eiusmod", "dolor", "laborum", "non" ], "friends": [ { "id": 0, "name": "Stefanie Keller" }, { "id": 1, "name": "Bethany Hampton" }, { "id": 2, "name": "Elma Hernandez" } ], "greeting": "Hello, Polly Blair! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28ffeffe3541cca001", "index": 3933, "guid": "a003325e-4263-402e-9768-71a25c116e0e", "isActive": false, "balance": "$3,863.07", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Caldwell Nguyen", "gender": "male", "company": "GEOFORM", "email": "caldwellnguyen@geoform.com", "phone": "+1 (817) 413-2106", "address": "496 Coleman Street, Watrous, Delaware, 2913", "about": "Ut pariatur Lorem sunt aliqua nulla consectetur magna nisi id ad aute mollit occaecat. Officia deserunt pariatur voluptate officia reprehenderit enim occaecat do consequat et ad. Duis ut sit reprehenderit eiusmod pariatur aliquip Lorem velit amet. Dolore nulla adipisicing sit qui esse occaecat et quis enim veniam occaecat dolor.\r\n", "registered": "2014-02-27T07:17:20-13:00", "latitude": 83.994915, "longitude": -81.947157, "tags": [ "voluptate", "et", "non", "ipsum", "nulla", "incididunt", "elit" ], "friends": [ { "id": 0, "name": "Sabrina Ingram" }, { "id": 1, "name": "Knapp Maldonado" }, { "id": 2, "name": "Lila Guthrie" } ], "greeting": "Hello, Caldwell Nguyen! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28c290958c460c4e8f", "index": 3934, "guid": "9d6a5d55-7904-4afa-87b3-cf48cb3571e2", "isActive": true, "balance": "$1,503.72", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Lowery Fletcher", "gender": "male", "company": "PROSURE", "email": "loweryfletcher@prosure.com", "phone": "+1 (943) 521-3907", "address": "321 Newel Street, Catherine, Pennsylvania, 4029", "about": "Labore qui quis aliquip deserunt nulla nostrud sint qui Lorem ad nisi. Non pariatur culpa qui non sunt ea sit ea tempor dolor. Do et proident ex nostrud dolor. Pariatur do sint irure excepteur eiusmod occaecat id amet ut voluptate labore consequat. Nulla excepteur fugiat sunt exercitation.\r\n", "registered": "2014-02-04T11:39:32-13:00", "latitude": 54.962432, "longitude": -151.092438, "tags": [ "et", "ullamco", "exercitation", "laborum", "officia", "non", "nulla" ], "friends": [ { "id": 0, "name": "Marquez Jarvis" }, { "id": 1, "name": "Joan Hinton" }, { "id": 2, "name": "Daniel Battle" } ], "greeting": "Hello, Lowery Fletcher! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2891a15df5b32e768b", "index": 3935, "guid": "6b605a74-2018-437f-85a6-84c64cda29ca", "isActive": false, "balance": "$1,669.49", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Briggs Allen", "gender": "male", "company": "BEDLAM", "email": "briggsallen@bedlam.com", "phone": "+1 (973) 568-3226", "address": "836 McKinley Avenue, Glenville, Georgia, 1276", "about": "Velit in dolor consectetur nisi laboris elit ex qui. Ipsum anim ipsum voluptate quis consequat ad duis. Sit ipsum dolore quis incididunt excepteur laborum non sint nisi. Nostrud commodo dolor reprehenderit dolor enim reprehenderit in non nisi dolore proident do. Ad quis commodo quis quis quis qui. Occaecat cillum qui anim aute enim ex ullamco. Officia commodo aliqua sit occaecat elit ea est duis.\r\n", "registered": "2014-07-16T14:50:51-12:00", "latitude": -42.376968, "longitude": 83.93579, "tags": [ "ad", "tempor", "reprehenderit", "ex", "aliqua", "ut", "sit" ], "friends": [ { "id": 0, "name": "Elisa Barrett" }, { "id": 1, "name": "Christensen Rojas" }, { "id": 2, "name": "Rhodes Dotson" } ], "greeting": "Hello, Briggs Allen! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea288639fe3d582bb2da", "index": 3936, "guid": "6f5aee77-880b-4880-94a0-a8e8e6cb3a4e", "isActive": true, "balance": "$1,975.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Letitia Spence", "gender": "female", "company": "GEEKKO", "email": "letitiaspence@geekko.com", "phone": "+1 (904) 419-2894", "address": "756 Pineapple Street, Devon, North Dakota, 1918", "about": "Fugiat ut commodo excepteur excepteur pariatur mollit do aliquip esse ipsum. Eiusmod aliqua eu irure dolore eu adipisicing tempor eiusmod est incididunt reprehenderit ad fugiat. Labore qui consectetur labore consectetur eiusmod sunt proident est tempor. Occaecat labore tempor laborum culpa.\r\n", "registered": "2014-03-31T23:43:55-13:00", "latitude": 58.314942, "longitude": -70.688067, "tags": [ "ipsum", "ex", "ad", "id", "est", "quis", "in" ], "friends": [ { "id": 0, "name": "Parks Burke" }, { "id": 1, "name": "Atkins Rosario" }, { "id": 2, "name": "Ayala Stephenson" } ], "greeting": "Hello, Letitia Spence! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28eca9be1e4700b279", "index": 3937, "guid": "414586e5-0a28-41d4-a980-7d2e18fec2c8", "isActive": true, "balance": "$3,418.50", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Tucker Frederick", "gender": "male", "company": "BUZZWORKS", "email": "tuckerfrederick@buzzworks.com", "phone": "+1 (963) 402-2633", "address": "872 Ridgewood Avenue, Stevens, Louisiana, 5404", "about": "Ullamco aliqua consectetur pariatur officia adipisicing laborum sunt sint voluptate irure sit culpa dolore. Exercitation reprehenderit veniam sunt incididunt tempor excepteur mollit aliquip qui aliqua qui cillum. Consectetur commodo sunt exercitation esse occaecat duis. Sint consectetur irure duis sint est. Dolor sint dolor esse labore ea consequat pariatur cillum labore cillum proident exercitation adipisicing non.\r\n", "registered": "2014-09-19T18:04:23-12:00", "latitude": -45.541109, "longitude": -65.656783, "tags": [ "pariatur", "et", "eiusmod", "et", "est", "cupidatat", "dolore" ], "friends": [ { "id": 0, "name": "Patterson Kirkland" }, { "id": 1, "name": "Mcclain Wall" }, { "id": 2, "name": "Alisha Parsons" } ], "greeting": "Hello, Tucker Frederick! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea289830d4127ca7ab87", "index": 3938, "guid": "4a87f6d0-2732-41de-90bd-d4829bde27de", "isActive": false, "balance": "$3,303.62", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Fleming Curtis", "gender": "male", "company": "QUILTIGEN", "email": "flemingcurtis@quiltigen.com", "phone": "+1 (817) 442-3315", "address": "413 Overbaugh Place, Taft, Northern Mariana Islands, 683", "about": "Ullamco proident deserunt nulla ipsum amet enim qui irure culpa laborum enim. Amet qui veniam consequat ea velit officia aliquip duis. Fugiat consequat proident elit elit consectetur nulla sit sit consectetur excepteur consequat incididunt sunt. Aliqua aliquip fugiat do consectetur in eu nulla et eu magna eu ut id.\r\n", "registered": "2014-08-31T18:00:03-12:00", "latitude": -79.196048, "longitude": 132.843185, "tags": [ "eiusmod", "aliqua", "ullamco", "laborum", "aliqua", "dolor", "ullamco" ], "friends": [ { "id": 0, "name": "Guthrie Diaz" }, { "id": 1, "name": "Joyce Henderson" }, { "id": 2, "name": "Louisa Fisher" } ], "greeting": "Hello, Fleming Curtis! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea287e12579120687d57", "index": 3939, "guid": "3510eae1-1580-43bd-b429-cfff6cf8c6cd", "isActive": false, "balance": "$3,364.41", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Petty Forbes", "gender": "male", "company": "VIRVA", "email": "pettyforbes@virva.com", "phone": "+1 (938) 572-2514", "address": "522 Doscher Street, Biehle, Colorado, 4681", "about": "Est adipisicing do aute Lorem eiusmod et laborum fugiat aliqua. Fugiat veniam ipsum nostrud labore quis labore non elit ad minim elit. Deserunt sint elit dolore nulla deserunt non ut id eu. Pariatur commodo cupidatat velit eu qui.\r\n", "registered": "2014-08-02T23:15:52-12:00", "latitude": 50.363485, "longitude": -94.053384, "tags": [ "non", "exercitation", "dolor", "ut", "velit", "culpa", "exercitation" ], "friends": [ { "id": 0, "name": "Cummings Bass" }, { "id": 1, "name": "Sargent Rowland" }, { "id": 2, "name": "Blanche Horn" } ], "greeting": "Hello, Petty Forbes! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2841aed7f078180426", "index": 3940, "guid": "34d0b3ab-919f-40af-833e-358c0155978e", "isActive": true, "balance": "$2,397.04", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Cassie Yates", "gender": "female", "company": "TYPHONICA", "email": "cassieyates@typhonica.com", "phone": "+1 (872) 448-3713", "address": "782 Argyle Road, Conway, Idaho, 4916", "about": "Deserunt eiusmod aute laboris ullamco pariatur nostrud ea incididunt consectetur fugiat et. Enim do qui consequat quis duis. Dolore consectetur aliquip occaecat sit pariatur sint non et ipsum et aliqua magna. Commodo esse aute nostrud laboris.\r\n", "registered": "2014-04-05T18:37:15-13:00", "latitude": -48.621508, "longitude": 29.088594, "tags": [ "ut", "occaecat", "reprehenderit", "Lorem", "Lorem", "ea", "nulla" ], "friends": [ { "id": 0, "name": "Eaton Spears" }, { "id": 1, "name": "Mcdaniel Hester" }, { "id": 2, "name": "Sherry Fernandez" } ], "greeting": "Hello, Cassie Yates! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea282f0c752766724c3c", "index": 3941, "guid": "f0d17f34-39c5-40f3-a708-87334dfc8cf5", "isActive": false, "balance": "$2,277.15", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Frankie Sweeney", "gender": "female", "company": "VIOCULAR", "email": "frankiesweeney@viocular.com", "phone": "+1 (957) 550-2416", "address": "784 Columbia Place, Somerset, Marshall Islands, 6134", "about": "Exercitation voluptate velit duis nostrud. Est enim duis elit veniam nisi aute nisi Lorem. Elit cillum in duis et do laborum amet. Exercitation proident eu adipisicing dolore ullamco incididunt duis in laborum sint. Amet irure voluptate exercitation anim labore culpa est aute est adipisicing in. Nulla do quis ea cupidatat ut anim.\r\n", "registered": "2014-09-07T05:46:45-12:00", "latitude": -27.651219, "longitude": 22.697754, "tags": [ "non", "ipsum", "cillum", "occaecat", "ex", "proident", "laborum" ], "friends": [ { "id": 0, "name": "Kerry Abbott" }, { "id": 1, "name": "Vang Kane" }, { "id": 2, "name": "Violet Clements" } ], "greeting": "Hello, Frankie Sweeney! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2825190fb292cd8fce", "index": 3942, "guid": "32c7c096-93c5-469e-a5e3-25542aa542b5", "isActive": true, "balance": "$1,616.37", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Mcconnell Romero", "gender": "male", "company": "TROLLERY", "email": "mcconnellromero@trollery.com", "phone": "+1 (821) 407-2973", "address": "879 Alice Court, Woodruff, New York, 7565", "about": "Excepteur id ut excepteur occaecat tempor officia nostrud elit ullamco. Sit aliqua nostrud sint anim dolore velit culpa ea voluptate qui in ad anim culpa. Elit cillum ipsum commodo id ut cupidatat aute cupidatat excepteur est excepteur commodo amet.\r\n", "registered": "2014-07-27T14:07:19-12:00", "latitude": 37.180104, "longitude": 135.921763, "tags": [ "magna", "anim", "sit", "fugiat", "mollit", "incididunt", "velit" ], "friends": [ { "id": 0, "name": "Richardson Moore" }, { "id": 1, "name": "Willa Adams" }, { "id": 2, "name": "Shauna Mcfadden" } ], "greeting": "Hello, Mcconnell Romero! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f45d455bc66c0c46", "index": 3943, "guid": "230b58f2-a0ae-491c-8cc0-0c4bf2615656", "isActive": false, "balance": "$2,475.22", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Kitty Clarke", "gender": "female", "company": "OBLIQ", "email": "kittyclarke@obliq.com", "phone": "+1 (833) 559-2545", "address": "321 Onderdonk Avenue, Lisco, Guam, 7485", "about": "Elit mollit tempor commodo velit voluptate quis commodo laboris et ad consequat anim proident. Voluptate non aliqua veniam reprehenderit exercitation ullamco reprehenderit. In nulla ullamco velit deserunt aliqua anim. Irure aliquip id nisi aliquip anim irure nisi tempor anim sit aliquip ad.\r\n", "registered": "2014-07-21T05:31:33-12:00", "latitude": -1.970283, "longitude": 5.648285, "tags": [ "dolore", "adipisicing", "aute", "sit", "aliquip", "occaecat", "duis" ], "friends": [ { "id": 0, "name": "Mathis Church" }, { "id": 1, "name": "Nanette David" }, { "id": 2, "name": "Wilkerson Mcdonald" } ], "greeting": "Hello, Kitty Clarke! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28fcebc948cfae22f3", "index": 3944, "guid": "080419f2-3cb5-4037-9b2d-17d8b7d895b1", "isActive": true, "balance": "$3,301.76", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Elvira Lindsay", "gender": "female", "company": "KLUGGER", "email": "elviralindsay@klugger.com", "phone": "+1 (897) 458-2881", "address": "666 Devoe Street, Veguita, Virgin Islands, 7727", "about": "Laborum ad anim consectetur esse do fugiat ad voluptate enim. Incididunt dolore est id commodo cupidatat enim elit consectetur ut sunt nulla. Do cupidatat fugiat culpa ipsum aute tempor dolor consequat quis. Ea nostrud anim occaecat id exercitation.\r\n", "registered": "2014-07-19T16:35:44-12:00", "latitude": 29.610469, "longitude": -24.936447, "tags": [ "quis", "ad", "aliquip", "mollit", "dolor", "nisi", "dolor" ], "friends": [ { "id": 0, "name": "Tonia Key" }, { "id": 1, "name": "Benjamin Murray" }, { "id": 2, "name": "Eliza Phelps" } ], "greeting": "Hello, Elvira Lindsay! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea287c193f2a7b7c4a40", "index": 3945, "guid": "b52720e5-eeec-4e98-8b09-85abf1c2ade6", "isActive": true, "balance": "$3,087.89", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Patton Wolf", "gender": "male", "company": "BOVIS", "email": "pattonwolf@bovis.com", "phone": "+1 (930) 591-2509", "address": "834 Poplar Street, Trexlertown, Massachusetts, 7077", "about": "Laboris ex ex non eu sit ut non mollit dolor dolore dolor esse amet. Consequat cupidatat adipisicing adipisicing officia nulla in ut eu reprehenderit id Lorem occaecat eiusmod laborum. Non enim dolore exercitation aliqua ullamco incididunt. Aliqua in culpa enim nostrud nostrud sit adipisicing adipisicing cupidatat aliqua proident eiusmod ullamco. Laboris nostrud qui irure ea nisi anim. Ut veniam consectetur minim in. Consequat tempor ipsum ad mollit elit non cillum mollit dolore elit voluptate in est.\r\n", "registered": "2014-08-31T10:16:24-12:00", "latitude": -89.799567, "longitude": -61.276306, "tags": [ "ut", "eu", "sint", "officia", "incididunt", "non", "amet" ], "friends": [ { "id": 0, "name": "Shelly Hooper" }, { "id": 1, "name": "Rojas Mills" }, { "id": 2, "name": "Carly Middleton" } ], "greeting": "Hello, Patton Wolf! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28d16d18fd913c7fa2", "index": 3946, "guid": "0d39ee60-defc-4783-bca7-6f180f64220e", "isActive": true, "balance": "$1,465.46", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Parrish Hawkins", "gender": "male", "company": "EVIDENDS", "email": "parrishhawkins@evidends.com", "phone": "+1 (857) 530-3919", "address": "705 Concord Street, Riegelwood, Utah, 1771", "about": "Tempor esse cupidatat eu non Lorem Lorem sit magna adipisicing. Velit esse ullamco id exercitation commodo occaecat nisi. Consequat voluptate cillum ex culpa sint ad minim labore dolor. Ipsum anim eu in aliquip adipisicing enim dolor nisi. Ipsum laboris in minim et dolor est est culpa nulla.\r\n", "registered": "2014-09-18T00:44:50-12:00", "latitude": 45.900847, "longitude": -108.603621, "tags": [ "anim", "deserunt", "deserunt", "excepteur", "cillum", "ullamco", "qui" ], "friends": [ { "id": 0, "name": "Buck Norris" }, { "id": 1, "name": "Meyers Rich" }, { "id": 2, "name": "Brooks Cervantes" } ], "greeting": "Hello, Parrish Hawkins! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28d0f83a9a0049df48", "index": 3947, "guid": "47057f1e-ba4e-4a20-a866-1d7d32bd83e7", "isActive": false, "balance": "$1,097.08", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Lillian Campbell", "gender": "female", "company": "SENTIA", "email": "lilliancampbell@sentia.com", "phone": "+1 (828) 537-3073", "address": "319 Schenck Court, Gordon, Montana, 8714", "about": "Enim dolor minim ea commodo incididunt dolor occaecat et. Id dolore irure ea nisi ullamco culpa labore sunt magna reprehenderit Lorem nisi. Et irure dolor est esse deserunt ad labore quis elit.\r\n", "registered": "2014-05-28T02:27:44-12:00", "latitude": -89.586701, "longitude": 172.081951, "tags": [ "ut", "eiusmod", "nulla", "fugiat", "amet", "irure", "deserunt" ], "friends": [ { "id": 0, "name": "Lawanda Mcfarland" }, { "id": 1, "name": "Anthony Beach" }, { "id": 2, "name": "Natasha Vaughn" } ], "greeting": "Hello, Lillian Campbell! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea289f126a5be6527b88", "index": 3948, "guid": "332b9102-3639-430e-a1d3-9e4ee33f8dfa", "isActive": true, "balance": "$3,442.22", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Angelique Ashley", "gender": "female", "company": "ENTHAZE", "email": "angeliqueashley@enthaze.com", "phone": "+1 (836) 509-2602", "address": "974 Sackett Street, Jenkinsville, Wisconsin, 2486", "about": "Ullamco nostrud nisi aliqua in irure sunt labore occaecat. Cillum cupidatat consectetur aute deserunt nisi adipisicing ut pariatur mollit eiusmod. Magna nulla non sit velit sunt est cupidatat cupidatat ut aliquip do aliqua deserunt. Esse ex eiusmod cillum aliqua duis eu dolor do. Sint adipisicing do irure enim dolor incididunt adipisicing velit.\r\n", "registered": "2014-02-02T13:14:42-13:00", "latitude": 80.046496, "longitude": 27.547466, "tags": [ "pariatur", "duis", "esse", "anim", "amet", "incididunt", "cillum" ], "friends": [ { "id": 0, "name": "Barrett Chandler" }, { "id": 1, "name": "Best Vaughan" }, { "id": 2, "name": "Deborah Robbins" } ], "greeting": "Hello, Angelique Ashley! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea287868c399b171a6dd", "index": 3949, "guid": "0aa66f35-0cec-4217-b1e7-daabb35bb4f2", "isActive": true, "balance": "$1,089.85", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Dominique Levine", "gender": "female", "company": "MEDALERT", "email": "dominiquelevine@medalert.com", "phone": "+1 (860) 407-3906", "address": "188 Leonard Street, Lund, Maine, 9774", "about": "Consequat consectetur ad tempor cupidatat nisi dolor ullamco est Lorem voluptate. Adipisicing mollit consequat excepteur non reprehenderit nulla eiusmod culpa enim anim magna occaecat adipisicing. Officia irure exercitation esse velit Lorem laboris consectetur commodo voluptate proident sit.\r\n", "registered": "2014-03-10T03:02:41-13:00", "latitude": 18.156637, "longitude": 34.979041, "tags": [ "ut", "ex", "est", "esse", "officia", "incididunt", "nisi" ], "friends": [ { "id": 0, "name": "Park Combs" }, { "id": 1, "name": "Melisa Schwartz" }, { "id": 2, "name": "Cabrera Sims" } ], "greeting": "Hello, Dominique Levine! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2896479e9bddc054bc", "index": 3950, "guid": "4f6a3dc8-39f0-4de0-9988-b966d54416ca", "isActive": false, "balance": "$1,825.07", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Kimberly Maxwell", "gender": "female", "company": "TALKOLA", "email": "kimberlymaxwell@talkola.com", "phone": "+1 (920) 497-2498", "address": "188 Walker Court, Bloomington, Virginia, 2893", "about": "Id nulla commodo quis sit non pariatur id. Fugiat laboris ut consequat aute minim. Commodo exercitation officia esse id esse culpa consectetur cupidatat exercitation consectetur. Cillum nulla magna est do qui. Ex laborum deserunt dolor est Lorem laboris cupidatat occaecat ipsum duis. Eu aliqua cillum irure cillum irure labore adipisicing mollit qui commodo quis. Aute Lorem sit id mollit dolor do cupidatat sunt voluptate.\r\n", "registered": "2014-07-22T00:49:28-12:00", "latitude": 84.842825, "longitude": 29.108449, "tags": [ "dolore", "elit", "cupidatat", "enim", "quis", "elit", "amet" ], "friends": [ { "id": 0, "name": "Bird Talley" }, { "id": 1, "name": "Leblanc Knowles" }, { "id": 2, "name": "Weeks Green" } ], "greeting": "Hello, Kimberly Maxwell! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f08d186a2f4d581e", "index": 3951, "guid": "3bb8deb3-e6f4-471b-bc46-afe6f71eaa2d", "isActive": false, "balance": "$3,618.15", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Jessie Gutierrez", "gender": "female", "company": "ORBIFLEX", "email": "jessiegutierrez@orbiflex.com", "phone": "+1 (873) 506-3925", "address": "862 Oxford Street, Sanders, Kentucky, 7162", "about": "Fugiat esse velit pariatur et adipisicing irure do fugiat velit mollit proident velit in. Adipisicing fugiat tempor cupidatat ut laborum officia non quis cillum pariatur qui consequat velit officia. Culpa non elit proident id irure laborum exercitation ad fugiat consequat quis. Culpa deserunt eu laborum elit ullamco eiusmod ipsum. Ad est Lorem elit esse fugiat qui. Mollit ea non cupidatat laboris ex esse irure est laboris reprehenderit proident non.\r\n", "registered": "2014-02-14T14:45:39-13:00", "latitude": -23.080349, "longitude": -67.978919, "tags": [ "sit", "ad", "exercitation", "labore", "et", "Lorem", "velit" ], "friends": [ { "id": 0, "name": "Dollie Rivers" }, { "id": 1, "name": "Margo Garner" }, { "id": 2, "name": "Hurley Mann" } ], "greeting": "Hello, Jessie Gutierrez! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28834ac3aaf589eb30", "index": 3952, "guid": "758f2a2f-76a7-40a7-bfc3-0b03b3034dd3", "isActive": true, "balance": "$2,807.51", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Lupe Harvey", "gender": "female", "company": "COMTOUR", "email": "lupeharvey@comtour.com", "phone": "+1 (821) 571-3870", "address": "339 Dunne Place, Gilgo, Connecticut, 1874", "about": "Irure cillum laborum amet ipsum aliquip laborum mollit quis pariatur deserunt dolore culpa. Officia dolor qui deserunt mollit occaecat. Ea ut deserunt incididunt pariatur labore minim duis nisi elit non eu esse pariatur minim. Irure in exercitation dolor fugiat officia aliquip quis magna veniam mollit nisi ipsum ea. Mollit minim aliquip magna anim amet ea mollit laboris sit non irure incididunt. Aute magna adipisicing eu amet do consectetur consequat officia velit tempor ea consequat veniam. Culpa aliqua sunt exercitation sit proident dolor aliquip occaecat do eiusmod nulla.\r\n", "registered": "2014-01-10T02:53:53-13:00", "latitude": -40.002621, "longitude": -21.539668, "tags": [ "adipisicing", "laboris", "sit", "cupidatat", "anim", "cillum", "aliquip" ], "friends": [ { "id": 0, "name": "Vaughan Pollard" }, { "id": 1, "name": "Sheri Davenport" }, { "id": 2, "name": "Singleton Norton" } ], "greeting": "Hello, Lupe Harvey! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2895d60ac1021a6697", "index": 3953, "guid": "eae1dc71-46ca-4928-af5b-fe0860a35e8e", "isActive": true, "balance": "$2,086.30", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Joann Mendez", "gender": "female", "company": "LUMBREX", "email": "joannmendez@lumbrex.com", "phone": "+1 (933) 404-3359", "address": "233 Eldert Lane, Durham, Mississippi, 1354", "about": "Aute occaecat consequat eu sit aliquip incididunt est do. Deserunt excepteur nulla duis veniam proident. In eu pariatur cillum ad voluptate esse sunt deserunt est ex in pariatur non sint. Laborum enim adipisicing duis quis eiusmod id pariatur id in. Minim magna id eu consectetur et ut magna officia laborum sunt. Nostrud ipsum minim nisi ut magna sunt pariatur in laborum labore in Lorem.\r\n", "registered": "2014-05-03T01:09:56-12:00", "latitude": 81.478733, "longitude": 157.57339, "tags": [ "quis", "ad", "exercitation", "est", "culpa", "ad", "incididunt" ], "friends": [ { "id": 0, "name": "Colleen George" }, { "id": 1, "name": "Leila Park" }, { "id": 2, "name": "Miriam Kerr" } ], "greeting": "Hello, Joann Mendez! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea285f81ce8a72b767b9", "index": 3954, "guid": "ea813349-379d-4d51-90e8-c329b80748cd", "isActive": true, "balance": "$1,513.59", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Fox Roberts", "gender": "male", "company": "SURETECH", "email": "foxroberts@suretech.com", "phone": "+1 (967) 428-2978", "address": "392 Fleet Place, Downsville, Washington, 4837", "about": "Commodo tempor ut anim exercitation sunt minim do consequat id non ullamco Lorem duis. Velit non dolor culpa ut. Ad cillum sunt in aute incididunt cillum irure aliquip. Veniam do aliqua et ipsum cupidatat ipsum. Ut laborum proident et tempor consequat elit culpa eiusmod. Non do mollit consequat culpa qui ex proident tempor veniam velit aliqua laboris ea. Aliquip eiusmod deserunt labore adipisicing aliquip.\r\n", "registered": "2014-06-12T19:03:22-12:00", "latitude": 85.406553, "longitude": 71.485325, "tags": [ "aute", "aute", "aute", "mollit", "mollit", "ut", "aliqua" ], "friends": [ { "id": 0, "name": "Wendi Holder" }, { "id": 1, "name": "Nettie Rollins" }, { "id": 2, "name": "Warner Gonzalez" } ], "greeting": "Hello, Fox Roberts! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28c9f30d088b8df4e9", "index": 3955, "guid": "166bf4d2-8919-47c1-91a5-0f35a731bbd0", "isActive": false, "balance": "$1,539.71", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Mcguire Gonzales", "gender": "male", "company": "MAGNEMO", "email": "mcguiregonzales@magnemo.com", "phone": "+1 (859) 416-3502", "address": "257 Canal Avenue, Ventress, Tennessee, 5727", "about": "Exercitation culpa ipsum aliquip reprehenderit incididunt amet commodo. Enim voluptate consectetur laborum ullamco. Nisi ea do deserunt nisi. Voluptate consequat sint aliquip commodo. Consectetur ad qui laborum mollit.\r\n", "registered": "2014-08-18T02:19:00-12:00", "latitude": -83.862179, "longitude": -132.137337, "tags": [ "et", "tempor", "aute", "anim", "duis", "tempor", "minim" ], "friends": [ { "id": 0, "name": "Valeria Dickson" }, { "id": 1, "name": "White Jordan" }, { "id": 2, "name": "Gillespie Herman" } ], "greeting": "Hello, Mcguire Gonzales! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28d4e5e247adf3f30b", "index": 3956, "guid": "fede6250-2f93-4f33-92bf-a22bd5e6bb9f", "isActive": false, "balance": "$2,999.41", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Mabel Mcmahon", "gender": "female", "company": "PHARMACON", "email": "mabelmcmahon@pharmacon.com", "phone": "+1 (910) 461-2517", "address": "528 Tiffany Place, Lindcove, Alabama, 1064", "about": "Anim tempor qui minim ullamco. Eiusmod labore velit occaecat occaecat occaecat et cillum est irure nostrud cillum exercitation. Consequat incididunt ex duis anim aliqua adipisicing eu ut ut incididunt ipsum voluptate do consequat. Irure fugiat aute elit pariatur dolore adipisicing. Et mollit occaecat magna ea esse veniam reprehenderit deserunt ullamco. Lorem minim est ipsum pariatur nostrud cupidatat sint Lorem dolor anim elit. Occaecat fugiat nisi nulla ad aliqua nulla elit ea fugiat.\r\n", "registered": "2014-09-19T10:07:44-12:00", "latitude": -32.834913, "longitude": -23.316239, "tags": [ "veniam", "duis", "tempor", "adipisicing", "aliqua", "velit", "fugiat" ], "friends": [ { "id": 0, "name": "Hinton Frost" }, { "id": 1, "name": "Karla Dale" }, { "id": 2, "name": "Acevedo Taylor" } ], "greeting": "Hello, Mabel Mcmahon! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea28f472a04b361e5472", "index": 3957, "guid": "3425dc1b-8a86-4723-9a28-098588c4a010", "isActive": false, "balance": "$3,973.79", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Karyn Kirby", "gender": "female", "company": "VICON", "email": "karynkirby@vicon.com", "phone": "+1 (938) 499-2135", "address": "749 Plaza Street, Gardners, Ohio, 508", "about": "Culpa sint nisi elit non cillum culpa pariatur officia enim velit. Velit in quis amet velit do aliquip cupidatat. Mollit adipisicing deserunt fugiat aliquip anim velit deserunt consectetur in proident occaecat.\r\n", "registered": "2014-07-24T18:31:29-12:00", "latitude": -69.702626, "longitude": 80.354963, "tags": [ "consequat", "culpa", "dolore", "nulla", "commodo", "amet", "cupidatat" ], "friends": [ { "id": 0, "name": "Stuart Hale" }, { "id": 1, "name": "Everett Ballard" }, { "id": 2, "name": "Angela Daugherty" } ], "greeting": "Hello, Karyn Kirby! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28a259f8558386452f", "index": 3958, "guid": "f8785a50-c986-4613-becb-5442aa8d240e", "isActive": true, "balance": "$2,292.84", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Joanna Cobb", "gender": "female", "company": "EXOSTREAM", "email": "joannacobb@exostream.com", "phone": "+1 (969) 567-3765", "address": "637 Middleton Street, Vallonia, Hawaii, 8554", "about": "Sint pariatur cillum ut irure quis velit. Exercitation est nulla amet sit pariatur fugiat excepteur deserunt cillum. Sunt mollit officia aliquip nostrud adipisicing. Deserunt officia elit nostrud consectetur do eiusmod. Eu nostrud adipisicing adipisicing sunt ex culpa eu duis.\r\n", "registered": "2014-08-21T16:27:45-12:00", "latitude": 82.761904, "longitude": -84.763555, "tags": [ "do", "adipisicing", "cillum", "laborum", "est", "id", "laboris" ], "friends": [ { "id": 0, "name": "Gina Phillips" }, { "id": 1, "name": "Socorro Savage" }, { "id": 2, "name": "Adeline Maynard" } ], "greeting": "Hello, Joanna Cobb! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea28660f199f62c665e4", "index": 3959, "guid": "61d904a2-41c9-4c3b-93cc-c5176375106c", "isActive": true, "balance": "$3,906.41", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Lola Colon", "gender": "female", "company": "MARVANE", "email": "lolacolon@marvane.com", "phone": "+1 (803) 499-3564", "address": "372 Bay Street, Ada, New Mexico, 8542", "about": "Id sint cupidatat fugiat sunt aliquip nostrud ipsum cillum. Culpa irure ullamco id dolor duis veniam labore pariatur nisi nisi culpa cillum. Tempor elit deserunt minim ipsum commodo minim anim ea dolore consequat.\r\n", "registered": "2014-04-25T19:40:25-12:00", "latitude": 33.614706, "longitude": 132.064806, "tags": [ "sunt", "fugiat", "cupidatat", "occaecat", "aliquip", "dolor", "ad" ], "friends": [ { "id": 0, "name": "Marion Pickett" }, { "id": 1, "name": "Frederick Foley" }, { "id": 2, "name": "Edith Harding" } ], "greeting": "Hello, Lola Colon! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea28bfceac21b2914288", "index": 3960, "guid": "ec0ab51e-4cb4-407d-a482-7e13e1a3b632", "isActive": true, "balance": "$1,463.15", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Bush Ball", "gender": "male", "company": "PERMADYNE", "email": "bushball@permadyne.com", "phone": "+1 (831) 408-2847", "address": "393 Ryder Street, Homeland, Maryland, 9409", "about": "Elit cillum non excepteur minim reprehenderit adipisicing est minim do. Magna dolore laboris adipisicing in occaecat eu sit excepteur tempor velit Lorem velit. Aliquip ullamco ex aliquip minim esse proident nisi mollit veniam ut incididunt deserunt anim. Elit sint Lorem Lorem tempor pariatur cupidatat proident. Adipisicing irure amet eiusmod deserunt irure minim elit commodo. Ipsum ullamco aliquip dolor tempor ea voluptate sit est aute irure elit sint sint cillum.\r\n", "registered": "2014-07-03T11:09:13-12:00", "latitude": 38.898989, "longitude": -37.448283, "tags": [ "nisi", "proident", "do", "magna", "et", "adipisicing", "quis" ], "friends": [ { "id": 0, "name": "Lily Walker" }, { "id": 1, "name": "Jean Ferguson" }, { "id": 2, "name": "Young Townsend" } ], "greeting": "Hello, Bush Ball! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea281becb41367da6818", "index": 3961, "guid": "1f952fd0-1934-4e41-8ab3-f7f4e2a43612", "isActive": true, "balance": "$3,881.62", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Wiley Knight", "gender": "male", "company": "THREDZ", "email": "wileyknight@thredz.com", "phone": "+1 (918) 518-2802", "address": "438 Oceanic Avenue, Herald, Alaska, 8426", "about": "Elit sint reprehenderit pariatur ad dolore commodo consectetur in id minim amet. Anim enim et nisi officia sint aliqua ut aute. Deserunt exercitation tempor ipsum officia excepteur aliqua qui dolore exercitation laborum duis mollit. Est non eiusmod velit qui sint laborum do mollit ea esse sit in dolor eu. Esse est in duis enim nisi proident ea velit velit duis excepteur sit. Do pariatur laborum laboris dolore sit.\r\n", "registered": "2014-01-27T02:45:47-13:00", "latitude": -63.094786, "longitude": -141.460077, "tags": [ "voluptate", "incididunt", "tempor", "adipisicing", "laboris", "officia", "ullamco" ], "friends": [ { "id": 0, "name": "Genevieve Reynolds" }, { "id": 1, "name": "Magdalena Dunn" }, { "id": 2, "name": "Rachael Graham" } ], "greeting": "Hello, Wiley Knight! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2821c54e6a7c0c9c8b", "index": 3962, "guid": "6d6d05bb-3ed6-4a5b-a0ab-1628b07a596d", "isActive": false, "balance": "$1,946.58", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Perry Vincent", "gender": "male", "company": "BLUPLANET", "email": "perryvincent@bluplanet.com", "phone": "+1 (936) 588-2819", "address": "445 Mermaid Avenue, Lowell, Arizona, 2626", "about": "Magna tempor est amet fugiat officia ex aute laboris veniam eiusmod ut minim. Irure et sint nisi amet consequat non Lorem enim anim qui excepteur est. Duis duis qui dolor commodo laborum minim incididunt nisi laborum. In officia occaecat ex consequat. Aliqua anim velit sint laborum qui consectetur quis eiusmod ea cillum officia. Lorem est amet fugiat dolor cillum nulla velit incididunt aliqua aliqua tempor aute nostrud.\r\n", "registered": "2014-05-06T04:05:55-12:00", "latitude": 31.151001, "longitude": 98.17577, "tags": [ "quis", "ut", "nulla", "qui", "duis", "non", "consequat" ], "friends": [ { "id": 0, "name": "Dorthy Ellison" }, { "id": 1, "name": "Yates Armstrong" }, { "id": 2, "name": "Sonja Reid" } ], "greeting": "Hello, Perry Vincent! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29f0e951506446af86", "index": 3963, "guid": "fc095d0c-d72d-4892-baad-841e19e46c40", "isActive": false, "balance": "$3,588.38", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Bartlett Sears", "gender": "male", "company": "SLAX", "email": "bartlettsears@slax.com", "phone": "+1 (806) 423-2678", "address": "843 Dearborn Court, Thynedale, Federated States Of Micronesia, 8605", "about": "Exercitation velit exercitation magna deserunt elit sit cupidatat. Ad minim voluptate pariatur eu elit cillum sit aute laboris commodo. Veniam irure tempor sit magna labore. Ex reprehenderit sunt labore cillum cillum Lorem exercitation do qui incididunt. Eu dolore proident nostrud cupidatat laboris ad nisi.\r\n", "registered": "2014-08-06T03:32:18-12:00", "latitude": -28.715431, "longitude": 44.836612, "tags": [ "esse", "tempor", "incididunt", "ex", "voluptate", "id", "est" ], "friends": [ { "id": 0, "name": "Penny Anthony" }, { "id": 1, "name": "Eve Myers" }, { "id": 2, "name": "Kathryn Raymond" } ], "greeting": "Hello, Bartlett Sears! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29a12a63380a4db8e4", "index": 3964, "guid": "6d180947-d35c-4e42-ba49-44b0a5685602", "isActive": true, "balance": "$2,201.95", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Maureen Golden", "gender": "female", "company": "CRUSTATIA", "email": "maureengolden@crustatia.com", "phone": "+1 (909) 591-2262", "address": "677 Bijou Avenue, Harrodsburg, Oklahoma, 8307", "about": "Sit Lorem laborum mollit do tempor. Non veniam proident nisi excepteur ipsum adipisicing consectetur ullamco reprehenderit magna. Ex nisi est mollit aute reprehenderit voluptate magna qui quis exercitation ut. Minim minim qui ex nisi ea. Esse adipisicing laboris qui laborum id ullamco ex velit. Id nisi non sunt reprehenderit labore tempor. Cupidatat culpa nulla incididunt adipisicing ex amet eiusmod ex non esse quis aliqua esse adipisicing.\r\n", "registered": "2014-04-20T09:28:08-12:00", "latitude": -35.904366, "longitude": 18.22628, "tags": [ "excepteur", "aliqua", "quis", "consequat", "eiusmod", "esse", "aliqua" ], "friends": [ { "id": 0, "name": "Irene Roy" }, { "id": 1, "name": "Keri Clemons" }, { "id": 2, "name": "Berger England" } ], "greeting": "Hello, Maureen Golden! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29d124ca43066e9382", "index": 3965, "guid": "77089d5c-d51c-4dfe-ad0d-7200e084bf55", "isActive": true, "balance": "$3,169.92", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Clare Reyes", "gender": "female", "company": "LUDAK", "email": "clarereyes@ludak.com", "phone": "+1 (860) 499-2588", "address": "105 Prospect Street, Cecilia, Michigan, 2625", "about": "Laboris cillum et esse laboris deserunt eu anim commodo esse magna esse laborum. Quis labore reprehenderit mollit dolore. Dolor mollit exercitation cillum ad non culpa. Dolor id qui cillum proident laboris ex. Ad anim dolor commodo reprehenderit laborum aute. Culpa proident duis ad amet esse incididunt consectetur excepteur Lorem. Laborum cupidatat aliqua nulla et ullamco veniam est voluptate ea dolore.\r\n", "registered": "2014-05-25T02:16:16-12:00", "latitude": -71.96715, "longitude": 46.747518, "tags": [ "eiusmod", "laboris", "minim", "consequat", "sunt", "nisi", "sint" ], "friends": [ { "id": 0, "name": "Dunn Shields" }, { "id": 1, "name": "Beach Tillman" }, { "id": 2, "name": "Theresa Valentine" } ], "greeting": "Hello, Clare Reyes! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2976705db89b925c4e", "index": 3966, "guid": "2f2b0e92-a333-49e2-a61a-0a02fbe0a984", "isActive": false, "balance": "$2,893.05", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Nielsen Edwards", "gender": "male", "company": "AQUAZURE", "email": "nielsenedwards@aquazure.com", "phone": "+1 (847) 434-3783", "address": "572 Ross Street, Clarktown, Kansas, 2204", "about": "Id ipsum veniam velit ea amet esse officia. Proident qui eiusmod officia tempor ea excepteur enim ad quis exercitation Lorem id. Et est non dolore irure adipisicing id veniam laboris occaecat aliqua duis proident sunt tempor.\r\n", "registered": "2014-03-08T20:42:49-13:00", "latitude": 21.460823, "longitude": -172.464543, "tags": [ "excepteur", "velit", "amet", "nisi", "qui", "labore", "qui" ], "friends": [ { "id": 0, "name": "Glover Shelton" }, { "id": 1, "name": "Jacklyn Soto" }, { "id": 2, "name": "Yvonne Mccall" } ], "greeting": "Hello, Nielsen Edwards! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29e27b714e1cc6e9b2", "index": 3967, "guid": "57597f71-8a66-4f97-bf77-aa2f42d72370", "isActive": true, "balance": "$2,695.24", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Camacho Strong", "gender": "male", "company": "UNIWORLD", "email": "camachostrong@uniworld.com", "phone": "+1 (802) 466-2266", "address": "509 Cyrus Avenue, Cassel, South Dakota, 540", "about": "Aute culpa veniam mollit proident non. Aliqua ad eu occaecat magna officia velit proident laborum voluptate. Aute commodo do nisi sunt occaecat do cupidatat pariatur mollit. Consectetur ad aliqua dolor commodo aliquip veniam amet irure labore adipisicing consectetur. Aute sunt proident cillum excepteur dolore deserunt est dolor cillum esse sunt et consequat nostrud. Culpa laborum veniam do voluptate laborum mollit labore quis incididunt incididunt velit nisi non occaecat.\r\n", "registered": "2014-04-16T14:57:08-12:00", "latitude": -54.900838, "longitude": -107.67678, "tags": [ "aliquip", "dolore", "non", "aute", "exercitation", "non", "ea" ], "friends": [ { "id": 0, "name": "Pennington Brown" }, { "id": 1, "name": "Velma Gregory" }, { "id": 2, "name": "Hilary Mccoy" } ], "greeting": "Hello, Camacho Strong! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea295ab9b962cef3490c", "index": 3968, "guid": "d50d7b4c-e058-48eb-8d81-62eaaf5a87e6", "isActive": true, "balance": "$1,623.22", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Suzanne Mcconnell", "gender": "female", "company": "CONCILITY", "email": "suzannemcconnell@concility.com", "phone": "+1 (977) 449-3321", "address": "902 Remsen Street, Belva, West Virginia, 4730", "about": "Sit quis consequat id ut culpa aliquip. Non quis ut incididunt do. Irure sit laboris qui sint tempor nisi.\r\n", "registered": "2014-06-03T21:47:24-12:00", "latitude": 84.833832, "longitude": 69.796717, "tags": [ "in", "qui", "culpa", "nisi", "occaecat", "ullamco", "dolore" ], "friends": [ { "id": 0, "name": "Owens Collier" }, { "id": 1, "name": "Knox Baxter" }, { "id": 2, "name": "Herring Blake" } ], "greeting": "Hello, Suzanne Mcconnell! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29cbee18daee79a70a", "index": 3969, "guid": "006bdafa-e7cb-467f-817e-4c5442667473", "isActive": false, "balance": "$2,071.84", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Justice Lancaster", "gender": "male", "company": "ZISIS", "email": "justicelancaster@zisis.com", "phone": "+1 (828) 484-3236", "address": "240 Doone Court, Trail, Texas, 5450", "about": "Velit id adipisicing labore voluptate. Quis voluptate proident ut amet. Non occaecat incididunt consequat nulla. Consequat ea anim fugiat magna ut nulla deserunt voluptate non. Eiusmod ex incididunt minim aliqua non elit commodo qui ut sint amet. Eiusmod esse ea laborum aliquip deserunt cillum pariatur mollit ipsum deserunt.\r\n", "registered": "2014-02-25T07:55:19-13:00", "latitude": -59.821303, "longitude": -1.537673, "tags": [ "fugiat", "consequat", "eu", "proident", "amet", "nostrud", "nisi" ], "friends": [ { "id": 0, "name": "House Donovan" }, { "id": 1, "name": "Alvarado Jenkins" }, { "id": 2, "name": "Brandi Pate" } ], "greeting": "Hello, Justice Lancaster! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2910d19e30db48d97e", "index": 3970, "guid": "e6714fbc-1d8d-489f-b342-696430889b19", "isActive": false, "balance": "$3,089.63", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Letha Velez", "gender": "female", "company": "STOCKPOST", "email": "lethavelez@stockpost.com", "phone": "+1 (962) 461-2700", "address": "166 Montrose Avenue, Caln, Oregon, 6859", "about": "Officia duis pariatur aliqua exercitation eu laboris consectetur laboris non id velit consequat laboris culpa. Nulla minim cillum ipsum ea ex velit fugiat amet id voluptate. Deserunt incididunt cillum quis cillum ullamco.\r\n", "registered": "2014-01-15T10:14:30-13:00", "latitude": -33.469178, "longitude": 96.365841, "tags": [ "nostrud", "ut", "occaecat", "amet", "aliqua", "magna", "dolore" ], "friends": [ { "id": 0, "name": "Sasha Higgins" }, { "id": 1, "name": "Ingram Berry" }, { "id": 2, "name": "Alba Peterson" } ], "greeting": "Hello, Letha Velez! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2991e2a55a52c1a166", "index": 3971, "guid": "cfb9d048-e3f6-446c-bcce-cb6ef107da0b", "isActive": true, "balance": "$2,163.72", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Maura Solomon", "gender": "female", "company": "XTH", "email": "maurasolomon@xth.com", "phone": "+1 (826) 517-2055", "address": "469 Lloyd Court, Mammoth, Nevada, 6704", "about": "Excepteur commodo incididunt eiusmod anim ullamco sit ad veniam ullamco in esse ipsum. Dolor officia ad eiusmod mollit velit aliqua sunt nisi consequat id laboris. Nulla ut est incididunt officia laboris cillum consequat ullamco deserunt magna in elit magna. Sint proident eiusmod reprehenderit fugiat. Laboris aliquip adipisicing tempor do nulla duis sint do dolore.\r\n", "registered": "2014-08-23T15:47:51-12:00", "latitude": -5.971213, "longitude": -70.406595, "tags": [ "mollit", "culpa", "ipsum", "incididunt", "quis", "laboris", "aute" ], "friends": [ { "id": 0, "name": "Francisca Nixon" }, { "id": 1, "name": "Duke Fulton" }, { "id": 2, "name": "Harrison Roberson" } ], "greeting": "Hello, Maura Solomon! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2946b726e8cb4cd166", "index": 3972, "guid": "5f9d2a1b-4d7f-434b-b4e3-42c6a97ce861", "isActive": true, "balance": "$1,582.10", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Julie Stuart", "gender": "female", "company": "BUNGA", "email": "juliestuart@bunga.com", "phone": "+1 (969) 458-3868", "address": "736 Bedford Place, Strong, Minnesota, 4247", "about": "Laboris adipisicing cillum dolore dolore nisi duis consequat enim ad deserunt. Ex mollit exercitation in sit ex ea nulla dolore elit esse. Nisi exercitation ex minim deserunt et velit voluptate aliqua mollit cupidatat ea adipisicing. Culpa duis culpa ipsum ea pariatur aute esse minim eu consectetur. Reprehenderit aliqua et incididunt aliqua magna laborum adipisicing dolor laboris dolore velit nostrud voluptate commodo. Reprehenderit ad minim sunt nisi anim reprehenderit labore mollit nostrud sit id veniam pariatur est. Enim non amet exercitation reprehenderit ex adipisicing aliqua anim magna laborum aute magna.\r\n", "registered": "2014-06-19T06:43:51-12:00", "latitude": -43.712433, "longitude": 150.215326, "tags": [ "ad", "officia", "nisi", "elit", "reprehenderit", "laboris", "dolore" ], "friends": [ { "id": 0, "name": "Alisa Chambers" }, { "id": 1, "name": "Rosella Ellis" }, { "id": 2, "name": "Rosanna Lambert" } ], "greeting": "Hello, Julie Stuart! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29d98b9ac3865bed25", "index": 3973, "guid": "adf146a1-92fa-41b6-a742-3b9188ca544d", "isActive": false, "balance": "$2,467.46", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Luella Guerra", "gender": "female", "company": "XERONK", "email": "luellaguerra@xeronk.com", "phone": "+1 (868) 519-2900", "address": "565 Goodwin Place, Roberts, Missouri, 7473", "about": "Velit est proident nisi ad Lorem pariatur culpa esse consectetur occaecat cillum. Eu sint adipisicing amet nostrud irure culpa aute exercitation dolor. Quis excepteur sit velit pariatur anim laborum velit occaecat tempor reprehenderit quis cupidatat cillum. Cillum do fugiat duis ea reprehenderit.\r\n", "registered": "2014-08-10T01:32:11-12:00", "latitude": 41.505759, "longitude": -165.865114, "tags": [ "Lorem", "consequat", "deserunt", "ut", "magna", "nostrud", "nisi" ], "friends": [ { "id": 0, "name": "Jamie Stevens" }, { "id": 1, "name": "Wong Hunt" }, { "id": 2, "name": "Gibbs Guzman" } ], "greeting": "Hello, Luella Guerra! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea293bcc44cff94d0ac0", "index": 3974, "guid": "aee100bd-ad2a-4379-8710-e3430048dea0", "isActive": true, "balance": "$1,286.03", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Bradford Hickman", "gender": "male", "company": "ACLIMA", "email": "bradfordhickman@aclima.com", "phone": "+1 (872) 406-3370", "address": "280 Mill Lane, Independence, Rhode Island, 3373", "about": "Occaecat minim veniam pariatur sit. Eu cupidatat tempor laborum ad velit ullamco sint id Lorem incididunt laboris aliquip aute veniam. Sint pariatur veniam excepteur mollit pariatur ipsum nostrud non minim proident voluptate. Proident consectetur ut aute ad adipisicing esse ex veniam ea. Exercitation ut elit magna incididunt exercitation culpa tempor consequat ex et.\r\n", "registered": "2014-01-30T04:14:11-13:00", "latitude": 5.047037, "longitude": 82.810489, "tags": [ "tempor", "pariatur", "magna", "aliqua", "tempor", "adipisicing", "qui" ], "friends": [ { "id": 0, "name": "Henderson Cooley" }, { "id": 1, "name": "Weber Ortiz" }, { "id": 2, "name": "Mollie French" } ], "greeting": "Hello, Bradford Hickman! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea291581a20e22952b36", "index": 3975, "guid": "2596fc22-8b51-4db5-8580-0d60de5e1def", "isActive": true, "balance": "$2,300.55", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Salazar Carver", "gender": "male", "company": "AMTAS", "email": "salazarcarver@amtas.com", "phone": "+1 (960) 535-2873", "address": "344 Madison Street, Cliff, Florida, 1653", "about": "Velit dolore elit ut duis culpa amet qui proident dolor amet laborum deserunt pariatur magna. Ullamco quis quis do veniam ullamco in nulla sunt incididunt. In sint nisi aliquip mollit sunt do esse labore sint incididunt incididunt laborum.\r\n", "registered": "2014-02-19T22:41:59-13:00", "latitude": 89.591006, "longitude": 2.757482, "tags": [ "fugiat", "velit", "enim", "quis", "id", "ea", "aliquip" ], "friends": [ { "id": 0, "name": "Arnold Hughes" }, { "id": 1, "name": "Ford Acosta" }, { "id": 2, "name": "Audrey Christian" } ], "greeting": "Hello, Salazar Carver! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2948804ea8aa09227e", "index": 3976, "guid": "af78b715-a852-462e-bfe4-75e95ec6979d", "isActive": false, "balance": "$3,306.11", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Roberson Powers", "gender": "male", "company": "EXTRAWEAR", "email": "robersonpowers@extrawear.com", "phone": "+1 (868) 451-3466", "address": "524 King Street, Ballico, North Carolina, 6822", "about": "Ullamco ad duis commodo dolore sit ipsum elit aliqua do consequat voluptate. Fugiat irure pariatur labore veniam pariatur officia consectetur non cupidatat do. Reprehenderit in commodo excepteur commodo fugiat deserunt consequat amet id culpa aliquip aliqua magna sint. Labore in nulla pariatur laborum ullamco ullamco sunt esse.\r\n", "registered": "2014-03-02T13:18:27-13:00", "latitude": 20.884274, "longitude": -13.934106, "tags": [ "ea", "enim", "pariatur", "pariatur", "est", "excepteur", "ullamco" ], "friends": [ { "id": 0, "name": "Bradley Oliver" }, { "id": 1, "name": "Livingston Douglas" }, { "id": 2, "name": "Dolores Brewer" } ], "greeting": "Hello, Roberson Powers! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29f708150f2192541d", "index": 3977, "guid": "071d8bc4-1b65-4f6f-8186-8b868e792d68", "isActive": false, "balance": "$2,451.09", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Kristie Walsh", "gender": "female", "company": "ARCHITAX", "email": "kristiewalsh@architax.com", "phone": "+1 (914) 480-3376", "address": "793 Rochester Avenue, Wyano, New Hampshire, 3232", "about": "Labore labore mollit consectetur qui sit est dolor est veniam do elit sint. Culpa exercitation enim proident aliqua do. Fugiat amet magna eu ullamco ipsum. Magna mollit cupidatat exercitation esse consequat. Ut deserunt dolor adipisicing voluptate.\r\n", "registered": "2014-06-13T23:22:02-12:00", "latitude": -22.739826, "longitude": -176.173667, "tags": [ "consequat", "proident", "Lorem", "sit", "aute", "fugiat", "deserunt" ], "friends": [ { "id": 0, "name": "Karen Herring" }, { "id": 1, "name": "Coffey Chaney" }, { "id": 2, "name": "Rosemarie Hunter" } ], "greeting": "Hello, Kristie Walsh! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea292612833373f473b0", "index": 3978, "guid": "ed210153-352d-415e-8fa7-eeb79cde5eec", "isActive": false, "balance": "$1,872.49", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Lesley Cantrell", "gender": "female", "company": "KIDSTOCK", "email": "lesleycantrell@kidstock.com", "phone": "+1 (992) 487-2815", "address": "218 Ashford Street, Hoehne, Arkansas, 9220", "about": "Fugiat ipsum voluptate fugiat aute deserunt dolore eu. Nulla sint culpa adipisicing deserunt ex voluptate mollit do ea non sint Lorem consectetur. Magna id id laborum elit. Non exercitation in nostrud mollit dolore officia do laborum aliqua nisi ad. Do dolore esse excepteur id eiusmod do id ullamco pariatur. Cillum mollit laborum enim occaecat adipisicing irure ad commodo fugiat pariatur commodo cillum veniam et. Nostrud aliqua quis voluptate aliquip eiusmod commodo do irure.\r\n", "registered": "2014-09-19T01:38:59-12:00", "latitude": -74.772901, "longitude": -153.551421, "tags": [ "duis", "voluptate", "ea", "sint", "anim", "mollit", "commodo" ], "friends": [ { "id": 0, "name": "Ewing Monroe" }, { "id": 1, "name": "Bridges Harper" }, { "id": 2, "name": "Gabrielle Stout" } ], "greeting": "Hello, Lesley Cantrell! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29908fea50213df213", "index": 3979, "guid": "84b9e3ca-e91f-46e5-b645-4df94664333d", "isActive": true, "balance": "$3,354.48", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Finch Glenn", "gender": "male", "company": "NIPAZ", "email": "finchglenn@nipaz.com", "phone": "+1 (945) 465-3181", "address": "971 Bleecker Street, Finzel, Iowa, 2189", "about": "Est officia tempor ad proident proident duis tempor cillum occaecat minim aliqua. Qui ut incididunt deserunt eu elit in voluptate laboris sit consequat voluptate reprehenderit. Consequat aliqua esse tempor consequat ad consectetur adipisicing id veniam eu nisi cillum. Aliqua ullamco tempor irure exercitation ad cupidatat. Qui eiusmod elit est duis voluptate irure ex aliqua anim aliquip. Labore aliqua culpa irure est eu.\r\n", "registered": "2014-09-21T15:51:01-12:00", "latitude": -51.4682, "longitude": 142.763236, "tags": [ "tempor", "id", "non", "exercitation", "laboris", "nisi", "irure" ], "friends": [ { "id": 0, "name": "Meagan Goff" }, { "id": 1, "name": "Deanne Cannon" }, { "id": 2, "name": "Espinoza Buchanan" } ], "greeting": "Hello, Finch Glenn! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29b3e115aa82aa064e", "index": 3980, "guid": "2d61ba10-1036-4665-b115-081760470dd6", "isActive": false, "balance": "$2,666.55", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Pam Trujillo", "gender": "female", "company": "ZENTIX", "email": "pamtrujillo@zentix.com", "phone": "+1 (806) 446-3938", "address": "926 Seba Avenue, Noblestown, Nebraska, 1102", "about": "Dolor consequat officia anim proident laboris dolor culpa sit. In exercitation dolore nisi fugiat cupidatat sit ullamco esse velit labore anim ut dolore veniam. Do adipisicing elit velit sunt velit exercitation ipsum do magna do aliquip.\r\n", "registered": "2014-08-27T19:52:16-12:00", "latitude": -32.699797, "longitude": -153.400834, "tags": [ "consectetur", "et", "nulla", "est", "incididunt", "est", "pariatur" ], "friends": [ { "id": 0, "name": "Mari Pittman" }, { "id": 1, "name": "Velasquez Crane" }, { "id": 2, "name": "Carmella Pruitt" } ], "greeting": "Hello, Pam Trujillo! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29fcd30ab31b3aed7c", "index": 3981, "guid": "61b9b406-2e95-4c79-ba37-8eafadc6c406", "isActive": true, "balance": "$2,248.87", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Chang Holmes", "gender": "male", "company": "VOLAX", "email": "changholmes@volax.com", "phone": "+1 (951) 407-2128", "address": "932 Kensington Street, Warsaw, District Of Columbia, 6214", "about": "Minim commodo incididunt eu ullamco amet. Officia occaecat ipsum et ut. Magna id aliqua quis reprehenderit laborum magna ex nostrud quis fugiat excepteur ut. Nostrud ipsum enim ullamco eu. Amet eiusmod id esse adipisicing in irure proident mollit nulla enim dolore.\r\n", "registered": "2014-05-01T16:55:12-12:00", "latitude": -38.615694, "longitude": -49.196622, "tags": [ "ex", "enim", "esse", "ipsum", "ullamco", "ex", "mollit" ], "friends": [ { "id": 0, "name": "Marie Bryant" }, { "id": 1, "name": "Marsha Cummings" }, { "id": 2, "name": "Odessa Gilmore" } ], "greeting": "Hello, Chang Holmes! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29a1f17e4a94e23a7c", "index": 3982, "guid": "86b96a05-176e-4bde-86e5-3bb07b84ef42", "isActive": true, "balance": "$2,346.24", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Carney Powell", "gender": "male", "company": "INSURETY", "email": "carneypowell@insurety.com", "phone": "+1 (947) 529-3563", "address": "965 Channel Avenue, Deputy, New Jersey, 8911", "about": "Adipisicing nostrud esse minim voluptate consectetur dolore officia occaecat. Nostrud consectetur consequat pariatur sunt quis anim amet aliquip sunt tempor labore cupidatat esse laboris. Exercitation id anim nostrud laborum exercitation excepteur nisi eu et sit ipsum.\r\n", "registered": "2014-09-21T19:37:39-12:00", "latitude": -68.328764, "longitude": -109.044139, "tags": [ "laborum", "aute", "ea", "elit", "id", "nulla", "reprehenderit" ], "friends": [ { "id": 0, "name": "Marylou Silva" }, { "id": 1, "name": "Glenn Wong" }, { "id": 2, "name": "Jannie Hood" } ], "greeting": "Hello, Carney Powell! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29feb3f036681a1967", "index": 3983, "guid": "e0fafb1f-d188-4ce3-b1af-9d5d6c6b07bc", "isActive": false, "balance": "$2,574.53", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Cardenas Herrera", "gender": "male", "company": "SQUISH", "email": "cardenasherrera@squish.com", "phone": "+1 (952) 404-3397", "address": "485 Visitation Place, Soham, Palau, 684", "about": "In mollit aliquip sunt laboris et. Ipsum esse ad ut deserunt tempor pariatur. Pariatur tempor commodo ipsum tempor qui deserunt nulla occaecat. Sint aliquip nisi laboris incididunt sit sint ad anim qui ullamco velit incididunt deserunt exercitation. Incididunt cupidatat amet est non tempor fugiat fugiat et. Aliquip commodo et officia elit magna cupidatat cupidatat voluptate esse est enim. Elit fugiat pariatur enim duis ex consectetur elit quis nulla.\r\n", "registered": "2014-07-03T10:56:13-12:00", "latitude": -30.359386, "longitude": 26.534992, "tags": [ "eiusmod", "occaecat", "eu", "ut", "laboris", "irure", "qui" ], "friends": [ { "id": 0, "name": "Saundra Hanson" }, { "id": 1, "name": "Rachelle Hammond" }, { "id": 2, "name": "Allison Burnett" } ], "greeting": "Hello, Cardenas Herrera! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29bd7c1a13b8e6691d", "index": 3984, "guid": "883e5968-2887-41b7-bc33-0ad5f272656b", "isActive": true, "balance": "$2,357.93", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Fernandez Barr", "gender": "male", "company": "IRACK", "email": "fernandezbarr@irack.com", "phone": "+1 (837) 591-2592", "address": "252 Williams Avenue, Richmond, Puerto Rico, 847", "about": "Velit laboris ut est ex laboris do sint. Dolore dolore consectetur nulla id officia commodo ullamco occaecat sint nisi irure. Fugiat laboris qui Lorem eiusmod est adipisicing et quis veniam magna aliquip do. Exercitation aute aliqua commodo est fugiat laboris ut.\r\n", "registered": "2014-03-10T20:24:18-13:00", "latitude": -45.110814, "longitude": 140.570517, "tags": [ "mollit", "veniam", "id", "nisi", "aliqua", "qui", "nostrud" ], "friends": [ { "id": 0, "name": "Jenifer Bradley" }, { "id": 1, "name": "Ilene Howard" }, { "id": 2, "name": "Robles Webster" } ], "greeting": "Hello, Fernandez Barr! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29d09886ab93e61b1e", "index": 3985, "guid": "8728db54-ad85-44b1-a113-0374c17278b9", "isActive": true, "balance": "$3,172.07", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Hattie Weber", "gender": "female", "company": "GENMEX", "email": "hattieweber@genmex.com", "phone": "+1 (922) 557-3392", "address": "524 Harbor Court, Cherokee, California, 4623", "about": "Dolore exercitation culpa ex enim anim labore duis mollit minim. Dolore labore amet sint esse reprehenderit ullamco excepteur in mollit anim excepteur nostrud irure. Lorem culpa ipsum ex quis non non fugiat exercitation in nostrud. Dolor dolor cupidatat culpa ullamco in tempor id sunt excepteur reprehenderit quis aliqua occaecat dolore.\r\n", "registered": "2014-01-04T05:28:36-13:00", "latitude": -86.677692, "longitude": -143.486445, "tags": [ "enim", "aliquip", "aute", "quis", "qui", "commodo", "ex" ], "friends": [ { "id": 0, "name": "Antonia Faulkner" }, { "id": 1, "name": "Nash Richardson" }, { "id": 2, "name": "Meghan Hess" } ], "greeting": "Hello, Hattie Weber! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29415047e07bac87ad", "index": 3986, "guid": "5d9eec24-dab5-4f44-acd2-b0132c8597c9", "isActive": false, "balance": "$2,861.24", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Mann Olson", "gender": "male", "company": "STEELTAB", "email": "mannolson@steeltab.com", "phone": "+1 (808) 419-3396", "address": "694 Hanson Place, Linwood, Vermont, 5799", "about": "Velit aliquip laborum aliqua consequat ullamco culpa labore. Irure pariatur mollit ipsum magna anim aliqua laborum fugiat voluptate dolore incididunt sunt. Laborum elit ut veniam incididunt adipisicing. Non aute culpa ut occaecat esse tempor dolore voluptate cillum dolor ea occaecat tempor tempor.\r\n", "registered": "2014-05-21T23:15:54-12:00", "latitude": -34.858469, "longitude": 113.63294, "tags": [ "elit", "velit", "laborum", "dolor", "Lorem", "amet", "in" ], "friends": [ { "id": 0, "name": "Donaldson Ferrell" }, { "id": 1, "name": "Mckay Blevins" }, { "id": 2, "name": "Trina Andrews" } ], "greeting": "Hello, Mann Olson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29b687b3bc4b8174dd", "index": 3987, "guid": "87bd8519-11ca-441e-82f8-a7bb6828cac5", "isActive": true, "balance": "$1,164.03", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Rosie Campos", "gender": "female", "company": "BLURRYBUS", "email": "rosiecampos@blurrybus.com", "phone": "+1 (865) 594-2409", "address": "471 Tabor Court, Kieler, Indiana, 588", "about": "Nisi dolor eu quis quis ipsum sint ex irure minim officia officia qui. Proident ipsum dolore quis duis. Ullamco nostrud laboris est laboris commodo sunt qui non. Culpa reprehenderit mollit ut cupidatat exercitation occaecat anim labore minim amet adipisicing fugiat laboris. Lorem anim aute ut id ut duis id ad culpa in amet mollit. Cillum officia veniam quis minim consectetur aliquip labore veniam ea nisi. Officia ad fugiat elit velit consectetur sit.\r\n", "registered": "2014-06-16T00:48:44-12:00", "latitude": 87.279604, "longitude": 129.542618, "tags": [ "voluptate", "dolore", "elit", "nisi", "mollit", "pariatur", "anim" ], "friends": [ { "id": 0, "name": "Norma Dean" }, { "id": 1, "name": "Felicia Cotton" }, { "id": 2, "name": "Sexton Winters" } ], "greeting": "Hello, Rosie Campos! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2926549c961de3f9e1", "index": 3988, "guid": "9d357336-f51e-46dd-ad05-fc84e167b556", "isActive": true, "balance": "$3,984.17", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Robert Payne", "gender": "female", "company": "PIVITOL", "email": "robertpayne@pivitol.com", "phone": "+1 (862) 406-2692", "address": "864 Amboy Street, Bellfountain, Illinois, 2281", "about": "Pariatur dolore esse ipsum non exercitation exercitation exercitation duis laboris occaecat consequat. Ad cupidatat commodo fugiat id tempor qui commodo aliqua consequat deserunt incididunt et sit culpa. Laboris anim do fugiat et non.\r\n", "registered": "2014-07-19T04:52:11-12:00", "latitude": -41.048524, "longitude": -33.194804, "tags": [ "magna", "officia", "elit", "irure", "dolore", "magna", "eu" ], "friends": [ { "id": 0, "name": "Ramos Puckett" }, { "id": 1, "name": "Sondra Finley" }, { "id": 2, "name": "Buckley Conrad" } ], "greeting": "Hello, Robert Payne! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29217e728770e6507c", "index": 3989, "guid": "efd7751e-8054-42b6-8784-fffa761a3d25", "isActive": false, "balance": "$2,319.98", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Sharpe Allison", "gender": "male", "company": "PROFLEX", "email": "sharpeallison@proflex.com", "phone": "+1 (864) 514-2682", "address": "132 Ruby Street, National, South Carolina, 6803", "about": "Proident esse commodo laboris reprehenderit culpa aute cupidatat id minim exercitation nulla in reprehenderit. Excepteur exercitation cillum eiusmod nostrud laborum ullamco adipisicing. Duis cupidatat in aliqua veniam magna laborum duis.\r\n", "registered": "2014-07-23T19:21:41-12:00", "latitude": 21.645905, "longitude": -135.105016, "tags": [ "nostrud", "est", "sint", "consequat", "irure", "occaecat", "quis" ], "friends": [ { "id": 0, "name": "Olivia Dennis" }, { "id": 1, "name": "Etta Bright" }, { "id": 2, "name": "Mattie Freeman" } ], "greeting": "Hello, Sharpe Allison! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2955fab3c261488101", "index": 3990, "guid": "d206eff3-8a69-493a-b771-a5ea8908c541", "isActive": false, "balance": "$1,452.51", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Anastasia Vargas", "gender": "female", "company": "GRONK", "email": "anastasiavargas@gronk.com", "phone": "+1 (894) 474-3645", "address": "720 Bancroft Place, Neibert, American Samoa, 5333", "about": "Deserunt deserunt nisi aliquip esse officia exercitation ad voluptate adipisicing dolor consectetur ipsum nisi elit. Ipsum exercitation do aliquip eiusmod dolore non fugiat. Fugiat mollit pariatur excepteur ex tempor esse laborum sunt labore consectetur sunt aliquip. Irure et et deserunt adipisicing sit in amet pariatur.\r\n", "registered": "2014-05-15T20:53:32-12:00", "latitude": 24.878001, "longitude": 161.717506, "tags": [ "veniam", "sit", "magna", "consequat", "cillum", "pariatur", "amet" ], "friends": [ { "id": 0, "name": "Dorothy Fuentes" }, { "id": 1, "name": "Hines Giles" }, { "id": 2, "name": "Butler Singleton" } ], "greeting": "Hello, Anastasia Vargas! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29a959d99d11e3ef41", "index": 3991, "guid": "27745824-5352-4a2f-9533-8a12636fa234", "isActive": false, "balance": "$3,113.07", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Garrett Farmer", "gender": "male", "company": "VISALIA", "email": "garrettfarmer@visalia.com", "phone": "+1 (825) 596-2989", "address": "144 Opal Court, Canby, Delaware, 8743", "about": "Ea tempor velit elit fugiat laborum cillum labore est aliqua. Sit officia aute adipisicing fugiat consequat ea commodo. Laboris consequat commodo cillum ea adipisicing proident adipisicing sunt Lorem eu Lorem qui consequat. Deserunt tempor dolore pariatur aute adipisicing adipisicing exercitation Lorem sunt adipisicing qui.\r\n", "registered": "2014-03-25T23:38:36-13:00", "latitude": -28.495418, "longitude": 104.64051, "tags": [ "tempor", "officia", "proident", "irure", "sunt", "consectetur", "pariatur" ], "friends": [ { "id": 0, "name": "James Lewis" }, { "id": 1, "name": "Vanessa Castaneda" }, { "id": 2, "name": "Beasley Burgess" } ], "greeting": "Hello, Garrett Farmer! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29dbef246ea3b108b9", "index": 3992, "guid": "f3230106-7e61-4d7c-96e0-ad0e46af7def", "isActive": true, "balance": "$1,379.41", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Shepherd Brooks", "gender": "male", "company": "DENTREX", "email": "shepherdbrooks@dentrex.com", "phone": "+1 (840) 561-2839", "address": "831 Holt Court, Norfolk, Pennsylvania, 6437", "about": "Anim consectetur commodo sit tempor nostrud duis commodo dolor aliquip nostrud. Veniam cillum ullamco anim cillum exercitation est mollit. Laboris ad labore labore nostrud officia duis nulla. Culpa proident do aute laboris reprehenderit minim. Ipsum magna Lorem Lorem quis ipsum ex proident enim cillum eiusmod. Tempor anim nulla officia consequat tempor.\r\n", "registered": "2014-01-11T15:44:20-13:00", "latitude": -89.373024, "longitude": 29.889901, "tags": [ "laboris", "non", "exercitation", "non", "ad", "culpa", "labore" ], "friends": [ { "id": 0, "name": "Carson Boyer" }, { "id": 1, "name": "Lina Cortez" }, { "id": 2, "name": "Lou Beck" } ], "greeting": "Hello, Shepherd Brooks! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea291fc6ca12607e7817", "index": 3993, "guid": "182ef590-03cd-4b0e-b906-b71345eebf2e", "isActive": true, "balance": "$1,631.70", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Lorie Hurley", "gender": "female", "company": "UXMOX", "email": "loriehurley@uxmox.com", "phone": "+1 (806) 547-2797", "address": "763 Ridge Court, Kohatk, Georgia, 7376", "about": "Laborum esse ea nulla commodo. Ullamco ipsum occaecat dolore ex proident ex nulla nostrud quis id aliquip excepteur Lorem velit. Laborum dolore pariatur consequat consectetur voluptate deserunt reprehenderit minim. Culpa occaecat eiusmod nulla deserunt reprehenderit cupidatat laboris ex est labore sint proident. Duis nisi ullamco adipisicing incididunt in.\r\n", "registered": "2014-04-25T12:06:02-12:00", "latitude": -84.695074, "longitude": 10.466147, "tags": [ "mollit", "anim", "laboris", "reprehenderit", "consequat", "occaecat", "excepteur" ], "friends": [ { "id": 0, "name": "Allyson Macias" }, { "id": 1, "name": "Patsy Buckner" }, { "id": 2, "name": "Peck Cooke" } ], "greeting": "Hello, Lorie Hurley! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29bdce7310ab1f77ad", "index": 3994, "guid": "adcb6db7-9d09-4b78-8dc8-6e46815ceda7", "isActive": false, "balance": "$3,957.96", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Victoria Garrett", "gender": "female", "company": "ECOLIGHT", "email": "victoriagarrett@ecolight.com", "phone": "+1 (934) 408-3063", "address": "752 Barwell Terrace, Sylvanite, North Dakota, 787", "about": "Laborum ipsum nostrud ullamco ipsum duis eu. Eu anim occaecat tempor aliquip elit aliquip voluptate. Ad nulla fugiat qui fugiat nulla do ex ad ea consequat mollit magna consectetur. Irure consectetur magna incididunt cillum anim id. Sint Lorem esse incididunt occaecat eu ullamco aliqua do id.\r\n", "registered": "2014-06-26T01:43:10-12:00", "latitude": -45.449707, "longitude": 74.778345, "tags": [ "tempor", "deserunt", "excepteur", "mollit", "duis", "sint", "elit" ], "friends": [ { "id": 0, "name": "Manning Mcleod" }, { "id": 1, "name": "Pruitt Mcgee" }, { "id": 2, "name": "Amalia Horne" } ], "greeting": "Hello, Victoria Garrett! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29de08c7c3ac259893", "index": 3995, "guid": "58d6d5d6-d875-4f63-9ab0-3c46375c63ad", "isActive": true, "balance": "$3,194.33", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Fern Kinney", "gender": "female", "company": "FUTURIS", "email": "fernkinney@futuris.com", "phone": "+1 (807) 437-2257", "address": "125 Arlington Avenue, Esmont, Louisiana, 8136", "about": "Qui nisi excepteur sit sit esse dolore irure nostrud ullamco incididunt qui aute proident. Consequat cupidatat elit sit sit aliqua Lorem commodo dolor culpa amet cillum aliquip occaecat. Laboris nostrud incididunt incididunt mollit labore commodo. Incididunt tempor ut excepteur incididunt mollit est consequat et quis in est eu. Incididunt ex duis quis Lorem qui reprehenderit aliqua proident tempor excepteur velit eu non elit. Consequat eu consequat dolore sint ullamco duis sunt.\r\n", "registered": "2014-07-17T12:13:41-12:00", "latitude": 50.02123, "longitude": 53.031685, "tags": [ "fugiat", "esse", "est", "incididunt", "velit", "commodo", "veniam" ], "friends": [ { "id": 0, "name": "Workman Witt" }, { "id": 1, "name": "Bauer Perkins" }, { "id": 2, "name": "Bryan Merrill" } ], "greeting": "Hello, Fern Kinney! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea298ce12a6bf295e3bc", "index": 3996, "guid": "3f06f9ff-2279-400f-9757-5c8e7b6d4dfd", "isActive": true, "balance": "$3,626.70", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Burns Cherry", "gender": "male", "company": "DIGIPRINT", "email": "burnscherry@digiprint.com", "phone": "+1 (945) 535-3537", "address": "382 Montauk Avenue, Wyoming, Northern Mariana Islands, 7575", "about": "Elit non sint minim aliqua proident deserunt labore cupidatat eiusmod sint. Eu amet sint reprehenderit do adipisicing eu nostrud laborum aute non. Est culpa deserunt est aliquip in. Magna dolor sint minim magna aliquip aute nisi elit fugiat proident reprehenderit irure voluptate nisi. Mollit esse qui eu dolor Lorem enim eiusmod dolore adipisicing ipsum anim. Exercitation tempor deserunt eu occaecat exercitation est ipsum. Culpa cupidatat irure incididunt eu in incididunt pariatur in.\r\n", "registered": "2014-08-19T10:38:31-12:00", "latitude": 60.507379, "longitude": -96.71662, "tags": [ "fugiat", "occaecat", "nulla", "eiusmod", "Lorem", "labore", "nostrud" ], "friends": [ { "id": 0, "name": "Katharine Lucas" }, { "id": 1, "name": "Hurst Hancock" }, { "id": 2, "name": "Lottie Wilkerson" } ], "greeting": "Hello, Burns Cherry! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2950e3f48ef27b778e", "index": 3997, "guid": "cf16b901-62cb-4360-bcca-13e2883d3d08", "isActive": true, "balance": "$2,850.60", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Blanchard Zamora", "gender": "male", "company": "SHADEASE", "email": "blanchardzamora@shadease.com", "phone": "+1 (904) 596-2892", "address": "926 Noel Avenue, Goldfield, Colorado, 1174", "about": "Deserunt exercitation proident deserunt laboris officia Lorem incididunt ad qui proident tempor Lorem. Aliquip occaecat laborum minim deserunt veniam id velit ea magna reprehenderit consectetur. Eu laboris elit ea nisi laborum ut id quis excepteur.\r\n", "registered": "2014-02-15T01:45:30-13:00", "latitude": 55.463794, "longitude": 121.446723, "tags": [ "velit", "ullamco", "laboris", "tempor", "anim", "ex", "id" ], "friends": [ { "id": 0, "name": "Lydia Mack" }, { "id": 1, "name": "Colette Oneill" }, { "id": 2, "name": "Cash Lawson" } ], "greeting": "Hello, Blanchard Zamora! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea297509984c32d2bbca", "index": 3998, "guid": "48ef86dc-e3bf-443a-a773-d9fb5842c0e3", "isActive": false, "balance": "$1,124.02", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Gallagher Thomas", "gender": "male", "company": "OPTIQUE", "email": "gallagherthomas@optique.com", "phone": "+1 (940) 492-2810", "address": "808 Hausman Street, Yardville, Idaho, 9921", "about": "Officia mollit aute veniam velit aute sit quis Lorem officia ea exercitation. Velit magna ad est nulla qui consequat velit. Ea sint dolore ut veniam velit tempor aliqua aute sint proident esse.\r\n", "registered": "2014-01-02T07:56:21-13:00", "latitude": 9.822474, "longitude": 27.177706, "tags": [ "voluptate", "ad", "ut", "labore", "amet", "aliqua", "labore" ], "friends": [ { "id": 0, "name": "Marina Stein" }, { "id": 1, "name": "Susanne Jacobs" }, { "id": 2, "name": "Ellen Malone" } ], "greeting": "Hello, Gallagher Thomas! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29fc052977060f241c", "index": 3999, "guid": "b21415cc-c2a0-4bc9-b1b1-d28bcf37ca93", "isActive": false, "balance": "$2,949.05", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Harriett Lynch", "gender": "female", "company": "LEXICONDO", "email": "harriettlynch@lexicondo.com", "phone": "+1 (804) 579-2635", "address": "763 Krier Place, Evergreen, Marshall Islands, 6593", "about": "Laborum nisi amet amet irure adipisicing quis sint aute veniam in adipisicing occaecat pariatur. Consectetur sint anim tempor laboris cillum. Labore velit ex ut sint.\r\n", "registered": "2014-06-21T20:16:19-12:00", "latitude": 56.617088, "longitude": -152.476029, "tags": [ "commodo", "proident", "anim", "ullamco", "est", "aliqua", "culpa" ], "friends": [ { "id": 0, "name": "Rich Hendrix" }, { "id": 1, "name": "Penelope Meyer" }, { "id": 2, "name": "Joyce Walton" } ], "greeting": "Hello, Harriett Lynch! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29272656141fd3c895", "index": 4000, "guid": "1fa54cea-93b0-4c67-9333-7a64dd7276f1", "isActive": false, "balance": "$2,752.83", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Wade Stanley", "gender": "male", "company": "POLARIUM", "email": "wadestanley@polarium.com", "phone": "+1 (879) 572-3478", "address": "192 Clermont Avenue, Wanship, New York, 751", "about": "Laboris ea tempor voluptate consectetur nostrud laboris. Labore pariatur deserunt ullamco eiusmod cillum ad enim in. Est proident enim veniam ut Lorem pariatur.\r\n", "registered": "2014-04-28T11:27:00-12:00", "latitude": -3.018614, "longitude": 150.155085, "tags": [ "ad", "consectetur", "in", "pariatur", "elit", "exercitation", "fugiat" ], "friends": [ { "id": 0, "name": "Tammy Collins" }, { "id": 1, "name": "Mendez Sosa" }, { "id": 2, "name": "Leah Sampson" } ], "greeting": "Hello, Wade Stanley! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29829803f7c39c5cd9", "index": 4001, "guid": "b97dd1d5-4997-424d-98ed-462c774ad42e", "isActive": true, "balance": "$3,152.06", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Ebony Cain", "gender": "female", "company": "COLUMELLA", "email": "ebonycain@columella.com", "phone": "+1 (997) 541-3703", "address": "239 Harway Avenue, Vowinckel, Guam, 4974", "about": "Officia voluptate et tempor mollit sunt consequat Lorem sit. Voluptate culpa irure occaecat consequat dolore. Aliquip consequat adipisicing velit cillum occaecat veniam eu veniam ad Lorem magna aliquip. Cupidatat dolor mollit tempor cupidatat cupidatat exercitation laborum qui. Laborum est laboris elit enim consectetur elit commodo tempor qui ex officia sit ullamco consequat.\r\n", "registered": "2014-06-14T16:42:54-12:00", "latitude": 49.761197, "longitude": -135.138511, "tags": [ "anim", "exercitation", "nisi", "fugiat", "reprehenderit", "culpa", "ea" ], "friends": [ { "id": 0, "name": "Amanda Sawyer" }, { "id": 1, "name": "Cathleen Wilder" }, { "id": 2, "name": "Contreras Mccray" } ], "greeting": "Hello, Ebony Cain! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29d7c2aeef6c1c5e6a", "index": 4002, "guid": "06d5ce38-17ef-47c5-b808-2c12d58c5a1f", "isActive": true, "balance": "$2,100.79", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Puckett Sanford", "gender": "male", "company": "GEEKFARM", "email": "puckettsanford@geekfarm.com", "phone": "+1 (874) 588-2557", "address": "670 Howard Alley, Sabillasville, Virgin Islands, 5404", "about": "Voluptate proident laboris sunt non tempor id officia ut labore esse sunt fugiat velit amet. Ullamco laboris aliquip laboris velit irure cillum dolore eiusmod aliquip. Consectetur quis id sunt quis excepteur ad minim. Aute id excepteur laborum nostrud laboris. Laborum nulla Lorem do incididunt amet ex proident consequat commodo.\r\n", "registered": "2014-08-16T05:29:52-12:00", "latitude": 22.51797, "longitude": 13.119281, "tags": [ "in", "qui", "incididunt", "mollit", "cillum", "eu", "proident" ], "friends": [ { "id": 0, "name": "Desiree Cardenas" }, { "id": 1, "name": "Eloise Morrow" }, { "id": 2, "name": "Mccall Livingston" } ], "greeting": "Hello, Puckett Sanford! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea296dd10a9f2006c8a9", "index": 4003, "guid": "42a5f6f5-8af6-4e00-b982-cd8a75fcd5c9", "isActive": false, "balance": "$1,930.58", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Casey Hamilton", "gender": "female", "company": "SLOGANAUT", "email": "caseyhamilton@sloganaut.com", "phone": "+1 (896) 423-3728", "address": "282 Doughty Street, Stockwell, Massachusetts, 209", "about": "Nisi veniam sunt amet laborum minim laboris elit. Anim Lorem qui cupidatat in do ut officia tempor tempor irure ea do et. Labore do excepteur ipsum et nisi nostrud. Labore culpa aute eu est ullamco adipisicing sunt ut officia laboris laboris.\r\n", "registered": "2014-05-25T13:54:13-12:00", "latitude": -24.03846, "longitude": -141.626336, "tags": [ "nisi", "laborum", "culpa", "culpa", "commodo", "reprehenderit", "ut" ], "friends": [ { "id": 0, "name": "Stafford Shepherd" }, { "id": 1, "name": "Reva Clayton" }, { "id": 2, "name": "Allison Atkinson" } ], "greeting": "Hello, Casey Hamilton! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29ffe2517cd8e73001", "index": 4004, "guid": "c1d3bb1b-6ab1-495a-9e71-05acb87ab59c", "isActive": false, "balance": "$3,830.48", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Haley Clay", "gender": "female", "company": "XLEEN", "email": "haleyclay@xleen.com", "phone": "+1 (884) 551-3671", "address": "981 Irvington Place, Zarephath, Utah, 5278", "about": "Sint cupidatat id consectetur aliquip Lorem enim adipisicing sit voluptate occaecat magna dolore sit. Magna est tempor veniam nostrud duis est sunt deserunt. Aute proident do ex quis reprehenderit laborum sit ea eu sunt proident proident.\r\n", "registered": "2014-08-22T18:16:28-12:00", "latitude": 88.774803, "longitude": 39.99297, "tags": [ "Lorem", "amet", "ipsum", "et", "eu", "commodo", "do" ], "friends": [ { "id": 0, "name": "Beverly Whitehead" }, { "id": 1, "name": "Keller Rush" }, { "id": 2, "name": "Jeri Hayden" } ], "greeting": "Hello, Haley Clay! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29e407489c10bab877", "index": 4005, "guid": "5073c0f4-5a54-42f8-97f9-9ccd4e90ba22", "isActive": false, "balance": "$2,845.03", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Margery Wooten", "gender": "female", "company": "CABLAM", "email": "margerywooten@cablam.com", "phone": "+1 (866) 562-3695", "address": "780 Oakland Place, Wintersburg, Montana, 3214", "about": "Ex tempor consectetur cillum velit. Incididunt laboris eu eu adipisicing minim laboris sint quis ea officia eiusmod enim reprehenderit. Nostrud aliqua velit proident excepteur aute cupidatat occaecat. In Lorem ex reprehenderit occaecat id labore. Quis laborum culpa ullamco est duis aliqua. In duis fugiat sunt excepteur tempor labore non amet.\r\n", "registered": "2014-08-03T13:11:17-12:00", "latitude": -9.617139, "longitude": -77.735231, "tags": [ "non", "aliqua", "sit", "culpa", "pariatur", "excepteur", "magna" ], "friends": [ { "id": 0, "name": "Holmes Blankenship" }, { "id": 1, "name": "Britt Kent" }, { "id": 2, "name": "Acosta Ramirez" } ], "greeting": "Hello, Margery Wooten! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29b5c209a50accffd5", "index": 4006, "guid": "bf87ddc5-6c05-45ec-b2d6-95edd9b8031b", "isActive": true, "balance": "$3,215.65", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Glenda Hardy", "gender": "female", "company": "TERRAGO", "email": "glendahardy@terrago.com", "phone": "+1 (962) 542-2385", "address": "560 Sharon Street, Cartwright, Wisconsin, 9882", "about": "Magna ex dolore nulla velit ullamco. Dolor id amet consequat esse aliqua magna nisi minim cupidatat culpa elit proident et. Exercitation minim esse aliqua occaecat aliquip sunt.\r\n", "registered": "2014-07-05T04:40:11-12:00", "latitude": 38.366274, "longitude": -69.85273, "tags": [ "sunt", "ut", "sint", "magna", "deserunt", "commodo", "excepteur" ], "friends": [ { "id": 0, "name": "Murray Ross" }, { "id": 1, "name": "Benita Wade" }, { "id": 2, "name": "Cross Cunningham" } ], "greeting": "Hello, Glenda Hardy! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29ecb28fe620614129", "index": 4007, "guid": "9418deec-3a42-4bf1-a657-a0f222636419", "isActive": true, "balance": "$2,700.99", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Cherie Noble", "gender": "female", "company": "BRISTO", "email": "cherienoble@bristo.com", "phone": "+1 (931) 553-2436", "address": "689 Ainslie Street, Savannah, Maine, 2178", "about": "Lorem aliqua consequat exercitation aliqua consequat cillum ex magna consectetur consequat elit sit excepteur est. Fugiat culpa elit eu nostrud laboris ad consectetur culpa ad duis consectetur in ut. Voluptate officia occaecat deserunt veniam ad amet dolor in velit in ad nostrud laboris. Eu voluptate tempor aute incididunt aliquip laborum officia do adipisicing. Sint officia cupidatat veniam commodo est do do dolor sit qui. Est occaecat exercitation cupidatat est non amet amet nulla aute fugiat tempor enim quis. Sunt eu nulla et minim consequat aliquip.\r\n", "registered": "2014-05-10T12:18:01-12:00", "latitude": -70.213245, "longitude": 101.877227, "tags": [ "laborum", "veniam", "commodo", "et", "ad", "anim", "ex" ], "friends": [ { "id": 0, "name": "Noel Montgomery" }, { "id": 1, "name": "Elnora Tran" }, { "id": 2, "name": "Martin Valdez" } ], "greeting": "Hello, Cherie Noble! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29f498b2132b878dae", "index": 4008, "guid": "e1a5146d-24b9-45c4-b16c-a8bfb66603f3", "isActive": false, "balance": "$2,984.19", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Dorsey Hebert", "gender": "male", "company": "FORTEAN", "email": "dorseyhebert@fortean.com", "phone": "+1 (980) 523-2078", "address": "331 Woodhull Street, Sterling, Virginia, 6576", "about": "Commodo adipisicing in exercitation consectetur reprehenderit anim. Nulla quis ut quis mollit id ipsum qui ad. Minim exercitation ullamco duis ea. Nisi duis nulla dolore velit laboris occaecat duis officia eu ea dolor officia reprehenderit pariatur. Officia in officia irure occaecat. Culpa irure veniam culpa deserunt. Eu labore exercitation exercitation aliqua aute velit mollit magna exercitation deserunt laborum tempor tempor.\r\n", "registered": "2014-04-29T13:53:31-12:00", "latitude": -25.191068, "longitude": -89.239478, "tags": [ "quis", "irure", "fugiat", "incididunt", "ullamco", "ex", "aliquip" ], "friends": [ { "id": 0, "name": "Schultz Simmons" }, { "id": 1, "name": "Hernandez Fox" }, { "id": 2, "name": "Underwood Mosley" } ], "greeting": "Hello, Dorsey Hebert! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea293c9446933b1eb6a0", "index": 4009, "guid": "c1fd7733-98ed-4198-87a3-caa7c67ff2c0", "isActive": false, "balance": "$2,377.83", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Sheena Cole", "gender": "female", "company": "SNORUS", "email": "sheenacole@snorus.com", "phone": "+1 (867) 499-3509", "address": "859 Adelphi Street, Tyhee, Kentucky, 8252", "about": "Cillum proident ullamco eiusmod eiusmod. Velit duis cupidatat consequat est. Lorem veniam minim amet sunt ea excepteur proident eiusmod fugiat tempor laborum ullamco. Sunt dolore id laboris magna reprehenderit deserunt elit. Minim id minim tempor in est magna sit quis. Duis enim ea nisi esse fugiat. Irure id do aliquip ea commodo aliqua sint mollit nostrud.\r\n", "registered": "2014-07-02T20:38:54-12:00", "latitude": -28.822308, "longitude": 77.199236, "tags": [ "tempor", "aliquip", "irure", "tempor", "dolor", "magna", "ad" ], "friends": [ { "id": 0, "name": "Trudy Waters" }, { "id": 1, "name": "Wise Vega" }, { "id": 2, "name": "Gilbert Madden" } ], "greeting": "Hello, Sheena Cole! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2939bc0a43094ed3cf", "index": 4010, "guid": "f8de7ac9-1507-4f17-a0aa-2237efab1651", "isActive": true, "balance": "$3,233.27", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Greta Bradford", "gender": "female", "company": "CENTREXIN", "email": "gretabradford@centrexin.com", "phone": "+1 (923) 535-2829", "address": "788 Fuller Place, Hillsboro, Connecticut, 7112", "about": "Lorem amet proident pariatur ex pariatur ad nostrud culpa eiusmod commodo velit veniam. Ad cillum mollit non laboris ullamco eiusmod dolor. Anim id ullamco velit nulla aute irure esse quis cupidatat occaecat ut. Exercitation excepteur labore dolore mollit magna magna adipisicing nisi et qui. Enim irure ea ea magna sit.\r\n", "registered": "2014-06-18T19:46:15-12:00", "latitude": 56.569975, "longitude": -60.019451, "tags": [ "adipisicing", "laborum", "ea", "ut", "duis", "cillum", "occaecat" ], "friends": [ { "id": 0, "name": "Eileen Slater" }, { "id": 1, "name": "Roberts Maddox" }, { "id": 2, "name": "Lela Ward" } ], "greeting": "Hello, Greta Bradford! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2966eadfbefba6df26", "index": 4011, "guid": "e078b939-39a4-46f8-b624-9c92f8d83980", "isActive": false, "balance": "$2,587.21", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Opal Rice", "gender": "female", "company": "JASPER", "email": "opalrice@jasper.com", "phone": "+1 (931) 416-3550", "address": "243 Bank Street, Cade, Mississippi, 3554", "about": "Pariatur laboris dolor mollit aute proident cupidatat nisi eiusmod dolore irure enim sunt aliqua. Sit sint dolore sit deserunt deserunt exercitation nisi non. Mollit culpa voluptate qui nulla sit tempor. Eu minim aliquip ea sunt sint proident.\r\n", "registered": "2014-09-14T09:12:56-12:00", "latitude": 59.458894, "longitude": 89.226069, "tags": [ "mollit", "labore", "enim", "duis", "cupidatat", "non", "mollit" ], "friends": [ { "id": 0, "name": "Mandy Hendricks" }, { "id": 1, "name": "Arlene Morse" }, { "id": 2, "name": "Goodwin James" } ], "greeting": "Hello, Opal Rice! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea294d14ca32e2c219ca", "index": 4012, "guid": "9b14d3bd-c651-495e-9a41-fd7342f1d65e", "isActive": false, "balance": "$1,370.79", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Petra Griffith", "gender": "female", "company": "ZENTRY", "email": "petragriffith@zentry.com", "phone": "+1 (948) 448-2785", "address": "284 Dikeman Street, Goochland, Washington, 4406", "about": "Amet id nisi deserunt esse. Nisi laborum labore in sint esse eu aliqua laboris reprehenderit nulla quis eiusmod pariatur ullamco. Proident laborum eiusmod qui id mollit consectetur est ea deserunt ad occaecat incididunt cillum do. Pariatur id labore fugiat et. Anim sunt elit laborum non nostrud eu occaecat sunt quis est veniam culpa Lorem.\r\n", "registered": "2014-04-06T04:13:23-12:00", "latitude": 23.028847, "longitude": -86.725457, "tags": [ "laborum", "non", "magna", "commodo", "commodo", "enim", "laborum" ], "friends": [ { "id": 0, "name": "Ada Webb" }, { "id": 1, "name": "Sharp Kirk" }, { "id": 2, "name": "Perez Rutledge" } ], "greeting": "Hello, Petra Griffith! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29715950ac93828ec4", "index": 4013, "guid": "d70cb4ac-421f-4e77-92b4-d354c53d839e", "isActive": false, "balance": "$3,256.00", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Strickland Baker", "gender": "male", "company": "ACRODANCE", "email": "stricklandbaker@acrodance.com", "phone": "+1 (874) 425-2834", "address": "968 Borinquen Pl, Leroy, Tennessee, 4621", "about": "Ipsum laboris non Lorem cillum aliquip. Mollit incididunt nisi ad mollit culpa deserunt dolor. Velit excepteur nostrud fugiat labore voluptate ullamco veniam ad ea exercitation. Sint commodo dolore qui consectetur eiusmod commodo ad tempor consequat mollit nulla laboris excepteur est. In incididunt eiusmod qui ipsum ex dolore sit nostrud ipsum ad ut consequat. Elit incididunt proident sit ex dolore qui ipsum aliquip laboris dolor.\r\n", "registered": "2014-07-19T17:16:11-12:00", "latitude": 10.658231, "longitude": 16.626766, "tags": [ "est", "aute", "nulla", "ea", "proident", "irure", "consectetur" ], "friends": [ { "id": 0, "name": "Susan Daniels" }, { "id": 1, "name": "Connie Wright" }, { "id": 2, "name": "Gale Patel" } ], "greeting": "Hello, Strickland Baker! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea296b2697ba58f62b6f", "index": 4014, "guid": "932efe45-5fe6-4c30-8ef4-cae16afead15", "isActive": true, "balance": "$1,084.11", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Betsy Cook", "gender": "female", "company": "NORSUL", "email": "betsycook@norsul.com", "phone": "+1 (831) 529-3491", "address": "397 Wallabout Street, Crumpler, Alabama, 6699", "about": "Deserunt qui duis non tempor dolor consequat dolor. Proident pariatur in minim incididunt aliquip Lorem et est ad esse aute velit esse elit. Occaecat eu laborum pariatur id commodo elit. Sint laboris ut duis ad. Quis fugiat cillum aliquip aliquip.\r\n", "registered": "2014-05-30T04:28:05-12:00", "latitude": -46.023713, "longitude": -34.086933, "tags": [ "culpa", "et", "ullamco", "aute", "sint", "voluptate", "eu" ], "friends": [ { "id": 0, "name": "Hampton Bullock" }, { "id": 1, "name": "Albert Nicholson" }, { "id": 2, "name": "Flores Grimes" } ], "greeting": "Hello, Betsy Cook! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2912d4502424d1c86c", "index": 4015, "guid": "d7157015-90e8-47ee-ade8-316014946c83", "isActive": true, "balance": "$3,363.58", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Latisha Olsen", "gender": "female", "company": "ASSITIA", "email": "latishaolsen@assitia.com", "phone": "+1 (817) 492-2703", "address": "748 Kane Street, Waterford, Ohio, 545", "about": "Consectetur cillum labore cupidatat veniam mollit. Eu est Lorem mollit Lorem fugiat non id ex tempor. Duis irure enim qui id magna laboris reprehenderit dolore aliquip quis mollit voluptate sit. Pariatur velit ea Lorem et dolor velit ipsum occaecat dolore excepteur pariatur. Nisi do commodo quis proident anim ea aliquip laboris id proident.\r\n", "registered": "2014-04-18T00:26:51-12:00", "latitude": -68.006742, "longitude": 55.781928, "tags": [ "nostrud", "Lorem", "elit", "ex", "non", "ullamco", "pariatur" ], "friends": [ { "id": 0, "name": "Davenport Ramsey" }, { "id": 1, "name": "Dotson Barrera" }, { "id": 2, "name": "Kim Moses" } ], "greeting": "Hello, Latisha Olsen! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2925fa9216de73b281", "index": 4016, "guid": "0a9d11da-bacc-49c4-8927-74e2e13e4398", "isActive": false, "balance": "$2,517.09", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Williamson Huff", "gender": "male", "company": "PROVIDCO", "email": "williamsonhuff@providco.com", "phone": "+1 (809) 579-3607", "address": "643 Dodworth Street, Terlingua, Hawaii, 6148", "about": "Nostrud pariatur pariatur ex qui in dolore id. Quis deserunt aliqua elit nostrud duis tempor pariatur. Id laboris ullamco enim Lorem ipsum irure dolore sint.\r\n", "registered": "2014-01-07T23:14:20-13:00", "latitude": -43.556868, "longitude": 50.344088, "tags": [ "nostrud", "sit", "nostrud", "excepteur", "minim", "Lorem", "ullamco" ], "friends": [ { "id": 0, "name": "Dena Mcintyre" }, { "id": 1, "name": "Aurora Hicks" }, { "id": 2, "name": "Maricela Carlson" } ], "greeting": "Hello, Williamson Huff! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2927003a2b5a3b5659", "index": 4017, "guid": "a9f0f99e-a863-4b08-acf3-937d31af8a81", "isActive": false, "balance": "$3,629.79", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Patrick Ayers", "gender": "male", "company": "EYERIS", "email": "patrickayers@eyeris.com", "phone": "+1 (954) 423-2818", "address": "604 Wilson Avenue, Nipinnawasee, New Mexico, 3687", "about": "Deserunt quis amet occaecat dolor laborum commodo Lorem. Eiusmod ea culpa proident do sunt exercitation est nostrud minim enim eiusmod dolore sunt voluptate. Ut irure adipisicing labore amet pariatur et officia ipsum magna. Irure deserunt sint eu ea labore qui tempor reprehenderit ad. Velit duis aute ea pariatur in dolore mollit ad id amet duis proident. Aliquip ad proident amet ut officia cillum id ex cillum. Labore sit id amet cillum minim tempor sit est proident dolor cupidatat.\r\n", "registered": "2014-04-23T04:36:23-12:00", "latitude": 42.793149, "longitude": 69.620376, "tags": [ "incididunt", "exercitation", "dolor", "nostrud", "cupidatat", "dolore", "incididunt" ], "friends": [ { "id": 0, "name": "Nola Leach" }, { "id": 1, "name": "Berg Lyons" }, { "id": 2, "name": "Jan Robles" } ], "greeting": "Hello, Patrick Ayers! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29128fff9d244b49a6", "index": 4018, "guid": "1b9a7cda-bdfa-445b-8faa-f51338dd0d9b", "isActive": true, "balance": "$2,647.79", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Meadows Curry", "gender": "male", "company": "TRIPSCH", "email": "meadowscurry@tripsch.com", "phone": "+1 (948) 569-2788", "address": "624 Clarkson Avenue, Holcombe, Maryland, 7413", "about": "Aliqua et occaecat occaecat tempor incididunt. Minim Lorem labore do nisi adipisicing. Sit minim exercitation fugiat sint non proident minim ullamco pariatur.\r\n", "registered": "2014-05-01T17:59:06-12:00", "latitude": -0.471919, "longitude": 60.858788, "tags": [ "nulla", "est", "nostrud", "magna", "reprehenderit", "nulla", "et" ], "friends": [ { "id": 0, "name": "Downs Marquez" }, { "id": 1, "name": "Lorna Acevedo" }, { "id": 2, "name": "Dodson Reeves" } ], "greeting": "Hello, Meadows Curry! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29cd49e5bced3d5fd2", "index": 4019, "guid": "8347a138-180f-41d1-a24d-4ae4e2610f38", "isActive": true, "balance": "$3,149.16", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Renee Irwin", "gender": "female", "company": "ISODRIVE", "email": "reneeirwin@isodrive.com", "phone": "+1 (886) 511-2279", "address": "513 Throop Avenue, Yukon, Alaska, 2690", "about": "Occaecat ut commodo esse consequat velit sit aliqua aliqua sit aute est commodo et. Nisi tempor ea proident eiusmod laborum. Magna exercitation nostrud sint nostrud ea nostrud deserunt tempor consequat est fugiat irure reprehenderit veniam.\r\n", "registered": "2014-07-20T01:51:43-12:00", "latitude": 13.196776, "longitude": -115.269945, "tags": [ "ipsum", "elit", "incididunt", "fugiat", "ipsum", "sint", "eiusmod" ], "friends": [ { "id": 0, "name": "Earline Terrell" }, { "id": 1, "name": "Brock Schmidt" }, { "id": 2, "name": "Salas Delaney" } ], "greeting": "Hello, Renee Irwin! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea296860c17c2796555c", "index": 4020, "guid": "7575af2b-4d29-4b04-9d66-faa1f852385d", "isActive": true, "balance": "$1,403.88", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Flynn Wyatt", "gender": "male", "company": "FLYBOYZ", "email": "flynnwyatt@flyboyz.com", "phone": "+1 (803) 501-2829", "address": "745 Dunne Court, Ticonderoga, Arizona, 1242", "about": "In exercitation incididunt consectetur sint nulla excepteur esse dolore irure duis. Lorem tempor aliquip incididunt exercitation tempor cupidatat reprehenderit consequat aliquip anim labore adipisicing aute. Exercitation enim adipisicing esse sunt velit aliqua cillum aliquip aliqua excepteur anim. Irure sit ea commodo nostrud reprehenderit esse. Veniam laboris ut adipisicing voluptate est pariatur eu nostrud culpa excepteur ut et dolor dolor.\r\n", "registered": "2014-07-14T22:03:15-12:00", "latitude": -12.590704, "longitude": -72.993709, "tags": [ "elit", "culpa", "duis", "consectetur", "officia", "do", "voluptate" ], "friends": [ { "id": 0, "name": "Porter Lindsey" }, { "id": 1, "name": "Wanda Head" }, { "id": 2, "name": "Staci Morrison" } ], "greeting": "Hello, Flynn Wyatt! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29e3d68227d28b3966", "index": 4021, "guid": "7cee35de-83bb-4a0b-acd1-d0949de5a37d", "isActive": true, "balance": "$3,365.21", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Tanisha Crawford", "gender": "female", "company": "PORTALIS", "email": "tanishacrawford@portalis.com", "phone": "+1 (926) 434-2527", "address": "652 Leonora Court, Mayfair, Federated States Of Micronesia, 8026", "about": "Labore deserunt officia veniam deserunt nulla consectetur. Pariatur minim veniam quis aliqua. In et ullamco velit culpa enim. Consequat Lorem culpa aute occaecat cupidatat deserunt nulla excepteur. Esse pariatur proident in consectetur aliquip.\r\n", "registered": "2014-01-19T19:15:29-13:00", "latitude": 75.782246, "longitude": 17.50933, "tags": [ "esse", "amet", "aliqua", "cillum", "cupidatat", "amet", "ullamco" ], "friends": [ { "id": 0, "name": "Daphne Espinoza" }, { "id": 1, "name": "Small Sullivan" }, { "id": 2, "name": "Sandy Day" } ], "greeting": "Hello, Tanisha Crawford! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea293d3bcc51bf058c65", "index": 4022, "guid": "574c1ce7-b35b-4af1-ab14-d83844f3f858", "isActive": false, "balance": "$1,118.96", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Nannie Harmon", "gender": "female", "company": "POWERNET", "email": "nannieharmon@powernet.com", "phone": "+1 (854) 436-3312", "address": "304 Windsor Place, Turpin, Oklahoma, 1387", "about": "Amet dolor non et in proident Lorem commodo velit occaecat. Aliqua pariatur ea elit veniam eu adipisicing adipisicing tempor id commodo deserunt dolore. Ipsum tempor irure officia enim magna in. Cillum aliquip non culpa anim aliquip nisi minim anim eu exercitation magna.\r\n", "registered": "2014-07-24T20:09:53-12:00", "latitude": 57.709769, "longitude": -150.131667, "tags": [ "cupidatat", "mollit", "laboris", "do", "cupidatat", "exercitation", "aliqua" ], "friends": [ { "id": 0, "name": "Ballard English" }, { "id": 1, "name": "Rosalyn Buckley" }, { "id": 2, "name": "Kline Haley" } ], "greeting": "Hello, Nannie Harmon! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2983c38b3519b0d9e2", "index": 4023, "guid": "5d5bb146-60fc-48dd-87a3-1e7d86719426", "isActive": true, "balance": "$3,221.49", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Soto Mullen", "gender": "male", "company": "BLANET", "email": "sotomullen@blanet.com", "phone": "+1 (846) 577-3745", "address": "143 Degraw Street, Taycheedah, Michigan, 3147", "about": "Fugiat ea ad magna eu do amet amet ea voluptate nulla esse. Commodo magna quis quis magna anim consectetur elit nostrud esse. Ea qui ullamco occaecat est occaecat nulla fugiat cillum occaecat aute dolore duis. Ullamco non incididunt quis magna tempor nisi in aliqua. Enim aliquip ipsum ut dolor eu non do. Anim sit exercitation veniam aute veniam enim Lorem amet est occaecat Lorem deserunt. Consectetur nostrud adipisicing aliquip et ex cupidatat voluptate cupidatat voluptate voluptate culpa minim minim esse.\r\n", "registered": "2014-01-08T03:13:42-13:00", "latitude": 9.357964, "longitude": -14.27322, "tags": [ "voluptate", "elit", "veniam", "sint", "cupidatat", "reprehenderit", "nisi" ], "friends": [ { "id": 0, "name": "Lesa Bray" }, { "id": 1, "name": "Ramsey Gay" }, { "id": 2, "name": "Paulette Pitts" } ], "greeting": "Hello, Soto Mullen! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29c82456cdd8e5e680", "index": 4024, "guid": "85d75239-4ded-4a88-8e62-f974f287d517", "isActive": true, "balance": "$1,868.29", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Hallie Vance", "gender": "female", "company": "HOUSEDOWN", "email": "hallievance@housedown.com", "phone": "+1 (881) 524-3324", "address": "786 Poly Place, Lumberton, Kansas, 7072", "about": "Ex laborum duis sint aliquip in cupidatat pariatur deserunt nisi ex sunt anim. Elit excepteur velit Lorem minim nisi laborum excepteur fugiat. Consequat adipisicing pariatur aliqua ad incididunt consequat et irure reprehenderit veniam eiusmod mollit anim. Incididunt adipisicing velit nulla cupidatat minim incididunt ut. Est consequat dolore consequat laborum minim ullamco pariatur dolore ex veniam occaecat eu Lorem ad. Voluptate ullamco et consectetur commodo dolor adipisicing occaecat aute mollit non nostrud laboris. Dolore laboris ad sunt ut esse cillum quis occaecat reprehenderit proident laborum laborum.\r\n", "registered": "2014-07-30T05:52:09-12:00", "latitude": -2.897513, "longitude": 22.143345, "tags": [ "labore", "excepteur", "tempor", "dolor", "id", "fugiat", "ullamco" ], "friends": [ { "id": 0, "name": "Isabelle Kidd" }, { "id": 1, "name": "Vilma Bridges" }, { "id": 2, "name": "Cheryl Alford" } ], "greeting": "Hello, Hallie Vance! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2918b1e45918eb5bbe", "index": 4025, "guid": "e84f36ef-22ee-4656-b7e2-51aa38717bcb", "isActive": false, "balance": "$1,444.30", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Durham Riley", "gender": "male", "company": "ENDIPINE", "email": "durhamriley@endipine.com", "phone": "+1 (840) 521-2593", "address": "537 Bedell Lane, Macdona, South Dakota, 6075", "about": "Aliqua veniam excepteur aliqua sint qui aute. Ut magna laborum duis aliquip. Labore culpa incididunt incididunt reprehenderit id. Id dolore voluptate minim magna reprehenderit ad veniam Lorem. Reprehenderit proident occaecat ipsum id duis do ex pariatur culpa amet eiusmod est sint. Culpa et dolore consequat laborum fugiat nulla aliquip irure. Deserunt sint duis cillum cupidatat exercitation reprehenderit excepteur exercitation.\r\n", "registered": "2014-09-17T17:09:50-12:00", "latitude": 77.455791, "longitude": 37.885615, "tags": [ "incididunt", "labore", "ut", "ad", "eu", "labore", "aliquip" ], "friends": [ { "id": 0, "name": "Tracie Brennan" }, { "id": 1, "name": "Lindsey Austin" }, { "id": 2, "name": "Hanson Oneil" } ], "greeting": "Hello, Durham Riley! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2942874cb8dcdd3327", "index": 4026, "guid": "45692558-402b-4693-bca5-8ac351e9accf", "isActive": true, "balance": "$3,372.87", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Conner Richard", "gender": "male", "company": "ADORNICA", "email": "connerrichard@adornica.com", "phone": "+1 (944) 481-2026", "address": "305 Green Street, Reinerton, West Virginia, 7394", "about": "Enim aute nostrud tempor quis sunt ut magna enim pariatur laborum non consequat sit cupidatat. Culpa id consequat velit pariatur est laboris ut nisi dolore magna nisi cillum quis. Adipisicing do nostrud adipisicing eu exercitation reprehenderit quis fugiat est voluptate et quis sunt minim. Aliqua aliquip est consectetur et minim in. Est ipsum quis cillum voluptate non culpa in adipisicing eiusmod voluptate enim deserunt. Reprehenderit voluptate commodo nulla reprehenderit. Qui amet occaecat culpa voluptate laborum aliqua cupidatat est et ex do eiusmod laboris.\r\n", "registered": "2014-09-08T15:07:05-12:00", "latitude": -68.28647, "longitude": -48.377587, "tags": [ "ullamco", "quis", "incididunt", "aute", "commodo", "non", "amet" ], "friends": [ { "id": 0, "name": "Mccullough Casey" }, { "id": 1, "name": "Rose Figueroa" }, { "id": 2, "name": "Woods Gallagher" } ], "greeting": "Hello, Conner Richard! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea296bdbde9c93be5519", "index": 4027, "guid": "298f180d-2959-4245-b38c-30e769fc17b8", "isActive": true, "balance": "$2,893.09", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Todd Copeland", "gender": "male", "company": "SYNTAC", "email": "toddcopeland@syntac.com", "phone": "+1 (923) 521-3670", "address": "365 Coventry Road, Needmore, Texas, 8803", "about": "Cillum sint consectetur laboris fugiat fugiat veniam reprehenderit consectetur veniam exercitation laboris. Ullamco esse ea consequat ut tempor est do adipisicing occaecat aliqua. Dolore consectetur Lorem labore et pariatur. Dolor deserunt laborum qui minim aliqua eu qui reprehenderit commodo non amet. Laboris ex consectetur cupidatat aliquip dolore labore ex adipisicing fugiat.\r\n", "registered": "2014-05-01T06:26:17-12:00", "latitude": 1.467432, "longitude": 6.552812, "tags": [ "voluptate", "reprehenderit", "consequat", "velit", "et", "amet", "occaecat" ], "friends": [ { "id": 0, "name": "Gutierrez Gould" }, { "id": 1, "name": "Sherri Sellers" }, { "id": 2, "name": "Shaffer Long" } ], "greeting": "Hello, Todd Copeland! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2959ddf2466982473b", "index": 4028, "guid": "abe1c54d-b0d3-4345-a334-dc994a2bea67", "isActive": true, "balance": "$3,376.86", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Macdonald Barnett", "gender": "male", "company": "INEAR", "email": "macdonaldbarnett@inear.com", "phone": "+1 (911) 482-3201", "address": "746 Miami Court, Springville, Oregon, 8023", "about": "Pariatur ipsum culpa labore est non. Ipsum voluptate est qui et laboris labore do irure incididunt veniam adipisicing. Enim eiusmod nulla amet duis esse aute aliquip sint commodo eiusmod mollit deserunt esse magna.\r\n", "registered": "2014-07-18T18:24:01-12:00", "latitude": -64.879727, "longitude": -60.626475, "tags": [ "consectetur", "mollit", "nostrud", "nisi", "ex", "esse", "velit" ], "friends": [ { "id": 0, "name": "Dionne Morin" }, { "id": 1, "name": "Ana Scott" }, { "id": 2, "name": "Garza Prince" } ], "greeting": "Hello, Macdonald Barnett! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29ea3198da55bc1629", "index": 4029, "guid": "218ea854-22c8-443f-9007-9888873f231b", "isActive": false, "balance": "$3,838.80", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Mccray Ryan", "gender": "male", "company": "GUSHKOOL", "email": "mccrayryan@gushkool.com", "phone": "+1 (939) 429-3320", "address": "359 Ludlam Place, Bynum, Nevada, 1271", "about": "Excepteur aute eiusmod non nisi in velit quis dolore ea ipsum ut voluptate. Tempor nostrud irure veniam cillum consectetur id occaecat nostrud ad. Anim anim labore dolor cillum laboris qui sint anim. Sunt culpa duis sint elit laborum consequat nisi sint elit. Dolore veniam nisi mollit mollit irure pariatur et eu sunt duis commodo. Lorem irure incididunt esse ad Lorem enim. Exercitation duis qui labore anim fugiat in nostrud aliquip consectetur cillum eu mollit sint elit.\r\n", "registered": "2014-07-28T08:32:12-12:00", "latitude": -4.811442, "longitude": -101.050043, "tags": [ "et", "nisi", "eu", "aliquip", "excepteur", "incididunt", "sunt" ], "friends": [ { "id": 0, "name": "Melody Knox" }, { "id": 1, "name": "Copeland Yang" }, { "id": 2, "name": "Decker Baldwin" } ], "greeting": "Hello, Mccray Ryan! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29ee15ce5cbf2b07e8", "index": 4030, "guid": "697b1f0d-7b03-4e8a-b49e-a2de9c9eaf04", "isActive": false, "balance": "$3,613.45", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Salinas Hall", "gender": "male", "company": "KOZGENE", "email": "salinashall@kozgene.com", "phone": "+1 (836) 544-2264", "address": "981 Rutherford Place, Smock, Minnesota, 4956", "about": "Dolore ex dolor aliqua do. Ut laboris magna minim id ex qui voluptate voluptate adipisicing occaecat est in et esse. Irure aliqua ullamco do exercitation cillum voluptate irure in.\r\n", "registered": "2014-08-13T08:30:24-12:00", "latitude": -82.359416, "longitude": 52.06486, "tags": [ "cupidatat", "enim", "ipsum", "eiusmod", "pariatur", "non", "et" ], "friends": [ { "id": 0, "name": "Rosa Joyner" }, { "id": 1, "name": "Nikki Goodwin" }, { "id": 2, "name": "Nora Munoz" } ], "greeting": "Hello, Salinas Hall! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea292a0406bb6d3d193a", "index": 4031, "guid": "f4265a93-77c4-4669-9edf-9b69c369ae37", "isActive": false, "balance": "$2,824.09", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Norman Bush", "gender": "male", "company": "SURELOGIC", "email": "normanbush@surelogic.com", "phone": "+1 (963) 503-3071", "address": "329 Huntington Street, Kylertown, Missouri, 3798", "about": "Eiusmod occaecat adipisicing dolore officia deserunt dolore ad fugiat duis sint labore voluptate laborum. Exercitation velit ullamco ullamco ipsum dolor. Dolore minim id nisi officia. Duis veniam non consequat occaecat consectetur nulla sint consequat culpa eu duis veniam aliquip.\r\n", "registered": "2014-05-13T08:17:37-12:00", "latitude": -88.4273, "longitude": 45.423608, "tags": [ "aute", "consectetur", "sint", "eiusmod", "ex", "amet", "veniam" ], "friends": [ { "id": 0, "name": "Perkins Ramos" }, { "id": 1, "name": "Carlene Wagner" }, { "id": 2, "name": "Maria Sandoval" } ], "greeting": "Hello, Norman Bush! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea290a746a24a65a2ae0", "index": 4032, "guid": "7706fefe-742a-41d6-9cf6-2ca2676be5f7", "isActive": false, "balance": "$3,788.51", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Weaver Bentley", "gender": "male", "company": "UNDERTAP", "email": "weaverbentley@undertap.com", "phone": "+1 (839) 540-2617", "address": "155 Eastern Parkway, Silkworth, Rhode Island, 9001", "about": "Anim labore cillum laborum veniam anim reprehenderit elit consectetur Lorem eiusmod esse. Ex ad cupidatat eiusmod deserunt. Irure exercitation minim ex aute eiusmod consequat mollit proident nostrud qui. Occaecat amet Lorem incididunt elit est. Fugiat consectetur velit mollit fugiat qui laborum laborum laboris sunt aliquip eiusmod. Et veniam nostrud quis eiusmod nisi cupidatat eu esse. Nulla dolor id sit ullamco est deserunt aliqua magna.\r\n", "registered": "2014-02-28T21:31:19-13:00", "latitude": 27.341054, "longitude": 170.797389, "tags": [ "sit", "aliquip", "exercitation", "qui", "laborum", "ea", "irure" ], "friends": [ { "id": 0, "name": "Emily Skinner" }, { "id": 1, "name": "Suarez Sharpe" }, { "id": 2, "name": "Winters Hull" } ], "greeting": "Hello, Weaver Bentley! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2911185bcfb6a95052", "index": 4033, "guid": "97abfa7f-4b6f-4f28-9d44-86d474122a10", "isActive": false, "balance": "$3,223.59", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Cline Carney", "gender": "male", "company": "HOPELI", "email": "clinecarney@hopeli.com", "phone": "+1 (893) 566-2069", "address": "305 Congress Street, Jugtown, Florida, 8223", "about": "Ullamco mollit in non magna enim reprehenderit et quis quis veniam. Anim anim nisi dolore veniam. Laboris deserunt excepteur laborum fugiat occaecat voluptate sint aliqua mollit anim excepteur. Anim amet consequat fugiat mollit deserunt anim non amet officia ex. Pariatur velit amet esse amet laborum sint labore nisi non aliqua minim non aliqua.\r\n", "registered": "2014-02-04T21:36:06-13:00", "latitude": -67.224973, "longitude": -164.156981, "tags": [ "consequat", "ex", "labore", "do", "nisi", "tempor", "Lorem" ], "friends": [ { "id": 0, "name": "Laura Heath" }, { "id": 1, "name": "Garner Ortega" }, { "id": 2, "name": "Conway Charles" } ], "greeting": "Hello, Cline Carney! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29a10c9b145bc92ea4", "index": 4034, "guid": "e8b4d92d-7247-4738-96d7-9f9f215aec9c", "isActive": false, "balance": "$2,420.10", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Obrien Hill", "gender": "male", "company": "COMCUBINE", "email": "obrienhill@comcubine.com", "phone": "+1 (982) 597-2900", "address": "750 Logan Street, Stouchsburg, North Carolina, 3636", "about": "Ipsum anim amet id voluptate tempor exercitation voluptate nulla. Ullamco magna reprehenderit ullamco enim. Anim dolore do quis aute eu.\r\n", "registered": "2014-07-18T01:56:45-12:00", "latitude": 82.082846, "longitude": -50.853138, "tags": [ "eu", "eu", "ex", "pariatur", "proident", "in", "reprehenderit" ], "friends": [ { "id": 0, "name": "Baker Thompson" }, { "id": 1, "name": "Hester Huffman" }, { "id": 2, "name": "Elsa Bishop" } ], "greeting": "Hello, Obrien Hill! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29400fb0fff1eb7d1a", "index": 4035, "guid": "e4c391b9-0c28-4ab1-acd4-1fee01b68f6e", "isActive": false, "balance": "$1,163.84", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Ashlee Jimenez", "gender": "female", "company": "ANIMALIA", "email": "ashleejimenez@animalia.com", "phone": "+1 (861) 472-3510", "address": "330 Elliott Place, Farmington, New Hampshire, 5336", "about": "Anim proident veniam aliqua et occaecat. Officia proident do nulla aliqua. Ad irure adipisicing tempor quis dolore elit dolor consectetur reprehenderit. Irure excepteur labore reprehenderit eu commodo qui in amet quis dolor mollit ex. Et nisi dolore sunt sint dolore cupidatat non eiusmod. Mollit nisi sit est ut velit laboris.\r\n", "registered": "2014-05-26T17:07:39-12:00", "latitude": -11.226619, "longitude": 115.577114, "tags": [ "amet", "ipsum", "ut", "minim", "nisi", "voluptate", "aute" ], "friends": [ { "id": 0, "name": "Mcmillan Morris" }, { "id": 1, "name": "Winnie Gentry" }, { "id": 2, "name": "Aida Estes" } ], "greeting": "Hello, Ashlee Jimenez! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea290135d2f466690491", "index": 4036, "guid": "c94d1381-d540-4606-b374-2516e0273438", "isActive": true, "balance": "$1,275.93", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Emilia Tate", "gender": "female", "company": "MICRONAUT", "email": "emiliatate@micronaut.com", "phone": "+1 (801) 452-2927", "address": "620 Locust Avenue, Cornucopia, Arkansas, 9480", "about": "Excepteur eu amet sunt aliqua Lorem culpa Lorem. Tempor laborum ipsum sit nisi. Eu elit reprehenderit amet ipsum anim anim exercitation sit nostrud deserunt. Lorem laborum quis dolor est sint eiusmod elit aute exercitation. Ullamco laboris proident quis nisi. Enim sit in minim sit officia laboris laborum.\r\n", "registered": "2014-03-26T10:21:15-13:00", "latitude": 82.059485, "longitude": 82.808844, "tags": [ "occaecat", "mollit", "irure", "pariatur", "culpa", "mollit", "velit" ], "friends": [ { "id": 0, "name": "Ester Tyson" }, { "id": 1, "name": "Horton Stanton" }, { "id": 2, "name": "Hickman Pope" } ], "greeting": "Hello, Emilia Tate! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29ee29396ca15d84f6", "index": 4037, "guid": "3f61acb6-fe8c-48ff-a44e-6a5dd15c0c7b", "isActive": true, "balance": "$2,316.13", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Hess Galloway", "gender": "male", "company": "EXOTECHNO", "email": "hessgalloway@exotechno.com", "phone": "+1 (920) 558-2431", "address": "766 Gerry Street, Beaulieu, Iowa, 9773", "about": "Ullamco aliqua do aute ipsum sit qui amet ad proident nisi esse. Pariatur proident commodo adipisicing ullamco sint enim. Quis duis laboris incididunt aute esse qui Lorem duis commodo non dolore. Sit adipisicing nulla labore veniam laborum aliqua aliquip. Ipsum nostrud proident velit elit Lorem proident eiusmod dolore in nostrud aute tempor mollit fugiat. Mollit Lorem cupidatat consequat anim commodo incididunt sit cupidatat. Est excepteur ipsum non sunt.\r\n", "registered": "2014-09-08T18:10:06-12:00", "latitude": 62.883107, "longitude": -23.293784, "tags": [ "dolor", "eu", "incididunt", "velit", "laborum", "dolor", "cupidatat" ], "friends": [ { "id": 0, "name": "Mullins Compton" }, { "id": 1, "name": "Aguilar Morgan" }, { "id": 2, "name": "Mara Meadows" } ], "greeting": "Hello, Hess Galloway! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea296fb0601b5895518a", "index": 4038, "guid": "2691f7f9-612b-46c8-a5ec-e31f4a9b576e", "isActive": true, "balance": "$1,316.73", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Ruiz Paul", "gender": "male", "company": "MANGELICA", "email": "ruizpaul@mangelica.com", "phone": "+1 (812) 515-3303", "address": "529 Stryker Court, Murillo, Nebraska, 1089", "about": "Cupidatat nostrud mollit nulla elit labore. Cillum adipisicing consequat amet aute dolor amet ut esse nulla labore cupidatat quis aliquip cillum. Eu consectetur exercitation ea est officia culpa quis.\r\n", "registered": "2014-06-08T09:43:52-12:00", "latitude": 1.119783, "longitude": -126.867189, "tags": [ "ullamco", "non", "pariatur", "veniam", "adipisicing", "amet", "commodo" ], "friends": [ { "id": 0, "name": "Tamika Browning" }, { "id": 1, "name": "Roslyn Knapp" }, { "id": 2, "name": "Francine Santos" } ], "greeting": "Hello, Ruiz Paul! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea299a2999ed1f4ebdd1", "index": 4039, "guid": "b94147df-83fd-4a5f-b089-2ccc1f7637f1", "isActive": false, "balance": "$1,396.69", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Tran Frank", "gender": "male", "company": "CHORIZON", "email": "tranfrank@chorizon.com", "phone": "+1 (865) 462-3827", "address": "517 Varanda Place, Edgar, District Of Columbia, 5234", "about": "Dolor velit amet aliqua incididunt ad aliqua commodo elit Lorem. Non proident ad esse consequat occaecat tempor sit non laboris. Enim labore nisi id pariatur consectetur sunt amet. Do proident ipsum ut deserunt consequat. Sit deserunt excepteur reprehenderit reprehenderit cillum enim exercitation amet mollit consequat nostrud anim.\r\n", "registered": "2014-07-24T19:11:18-12:00", "latitude": 68.239221, "longitude": -146.315385, "tags": [ "voluptate", "officia", "laboris", "ut", "culpa", "proident", "tempor" ], "friends": [ { "id": 0, "name": "Jerri Bird" }, { "id": 1, "name": "Gentry Bryan" }, { "id": 2, "name": "Lopez Joyce" } ], "greeting": "Hello, Tran Frank! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29f14faf176f8f37ff", "index": 4040, "guid": "35a7b4b4-f859-4eb1-85f9-715449dc8b02", "isActive": false, "balance": "$3,027.16", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Tyler Wilcox", "gender": "male", "company": "IMMUNICS", "email": "tylerwilcox@immunics.com", "phone": "+1 (975) 509-3323", "address": "500 Vanderbilt Street, Catharine, New Jersey, 4442", "about": "Minim adipisicing officia aliqua Lorem nisi non elit elit duis tempor proident proident sint. Id laboris est magna cillum fugiat. Enim amet anim nisi tempor occaecat ex nulla sit amet eiusmod ea. Consectetur eiusmod officia excepteur magna est id magna ad nisi aliqua sunt. Deserunt sint reprehenderit adipisicing elit mollit. Reprehenderit nisi cillum incididunt incididunt do qui consequat nisi sit ipsum labore cupidatat. Dolor magna anim et aute ipsum nostrud cillum magna cupidatat deserunt commodo dolore.\r\n", "registered": "2014-09-23T00:59:46-12:00", "latitude": -44.569914, "longitude": -171.104756, "tags": [ "id", "consequat", "deserunt", "dolor", "exercitation", "excepteur", "nisi" ], "friends": [ { "id": 0, "name": "Flowers Dawson" }, { "id": 1, "name": "Sears Glover" }, { "id": 2, "name": "Stanton Mcknight" } ], "greeting": "Hello, Tyler Wilcox! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2905291381e1a8c77a", "index": 4041, "guid": "642149a8-d69a-4706-a200-18509ec06ed0", "isActive": true, "balance": "$1,217.70", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Amber Harris", "gender": "female", "company": "ENERVATE", "email": "amberharris@enervate.com", "phone": "+1 (961) 515-2695", "address": "686 Wolcott Street, Oberlin, Palau, 6379", "about": "Amet incididunt sit cillum ipsum eiusmod culpa occaecat velit cillum voluptate qui. Dolore ullamco culpa do amet consequat eu amet est anim ea. Aliquip qui aliquip irure sit adipisicing aute elit elit. Eiusmod aliquip esse veniam voluptate. Officia qui ut magna aute Lorem in pariatur aliqua culpa consectetur ad non.\r\n", "registered": "2014-05-30T17:51:37-12:00", "latitude": 21.5097, "longitude": -134.360432, "tags": [ "magna", "excepteur", "ea", "aliquip", "amet", "dolor", "eiusmod" ], "friends": [ { "id": 0, "name": "Carolyn Price" }, { "id": 1, "name": "Lang Mckee" }, { "id": 2, "name": "Billie Mcguire" } ], "greeting": "Hello, Amber Harris! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29e2be54df76449b26", "index": 4042, "guid": "16ad1459-1eb0-4a7b-8ba1-fccb4d082599", "isActive": false, "balance": "$3,375.48", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Duran Gray", "gender": "male", "company": "RONBERT", "email": "durangray@ronbert.com", "phone": "+1 (966) 409-3113", "address": "158 Macon Street, Denio, Puerto Rico, 3456", "about": "Laborum consequat eiusmod labore exercitation ea magna. Esse incididunt exercitation consequat dolore eu et. Occaecat amet proident duis proident quis amet mollit velit. Eiusmod voluptate eiusmod eu dolor deserunt cupidatat in. Non dolore do voluptate velit enim voluptate culpa pariatur magna.\r\n", "registered": "2014-06-25T03:07:42-12:00", "latitude": 17.506614, "longitude": 46.169842, "tags": [ "sunt", "magna", "laboris", "qui", "ullamco", "ullamco", "esse" ], "friends": [ { "id": 0, "name": "Hunter Sheppard" }, { "id": 1, "name": "Guerrero Kaufman" }, { "id": 2, "name": "Amelia Chavez" } ], "greeting": "Hello, Duran Gray! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29977ca0e76c79c904", "index": 4043, "guid": "eba478b9-8fd4-4cb6-9858-5e55890efe73", "isActive": false, "balance": "$1,719.81", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Larsen Nichols", "gender": "male", "company": "ZILLANET", "email": "larsennichols@zillanet.com", "phone": "+1 (825) 516-2657", "address": "610 Quentin Street, Calvary, California, 9558", "about": "Minim fugiat labore occaecat dolore laborum qui non voluptate deserunt dolore irure elit. Aliquip consectetur aliqua veniam nisi exercitation do et ullamco culpa nostrud eiusmod adipisicing laboris in. Consectetur esse enim nulla commodo occaecat sunt officia consectetur ea nulla culpa.\r\n", "registered": "2014-06-19T06:15:56-12:00", "latitude": 42.724887, "longitude": 101.769696, "tags": [ "cupidatat", "nulla", "do", "in", "ad", "esse", "fugiat" ], "friends": [ { "id": 0, "name": "Robbins Mathews" }, { "id": 1, "name": "Janine Young" }, { "id": 2, "name": "Caroline Santana" } ], "greeting": "Hello, Larsen Nichols! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29d5503c010d9d4ac1", "index": 4044, "guid": "72752512-9141-426f-ac0b-7f742249d271", "isActive": false, "balance": "$1,511.00", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Bray Mcneil", "gender": "male", "company": "CORMORAN", "email": "braymcneil@cormoran.com", "phone": "+1 (895) 598-3590", "address": "583 Jamaica Avenue, Wakarusa, Vermont, 7566", "about": "Culpa sit tempor exercitation anim labore velit tempor minim magna. Consectetur sint nisi laboris ullamco. Fugiat Lorem minim duis irure dolore qui. Nostrud duis sunt velit Lorem reprehenderit laboris et aliqua irure dolor id proident nostrud. Nisi eiusmod ullamco tempor veniam.\r\n", "registered": "2014-07-03T13:09:51-12:00", "latitude": 5.360719, "longitude": 64.080108, "tags": [ "cillum", "cillum", "incididunt", "cillum", "irure", "ad", "eiusmod" ], "friends": [ { "id": 0, "name": "Minerva Lang" }, { "id": 1, "name": "Francesca Obrien" }, { "id": 2, "name": "Mariana Todd" } ], "greeting": "Hello, Bray Mcneil! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea294c02ae101eba460a", "index": 4045, "guid": "d974917e-e22e-42eb-b3d8-a849c96b713a", "isActive": true, "balance": "$3,911.79", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Mitzi Holcomb", "gender": "female", "company": "YOGASM", "email": "mitziholcomb@yogasm.com", "phone": "+1 (888) 514-3455", "address": "956 Wakeman Place, Gouglersville, Indiana, 9668", "about": "Do irure officia quis cupidatat sunt. Velit consectetur exercitation exercitation exercitation enim irure dolore cillum. Fugiat velit eu commodo est sunt esse laborum voluptate mollit Lorem non. Duis id id laborum laborum laboris sunt laboris consectetur.\r\n", "registered": "2014-08-11T19:42:41-12:00", "latitude": 8.398795, "longitude": -144.57953, "tags": [ "ad", "irure", "anim", "aute", "consequat", "cillum", "do" ], "friends": [ { "id": 0, "name": "Maggie Bolton" }, { "id": 1, "name": "Vincent Wise" }, { "id": 2, "name": "Elena Humphrey" } ], "greeting": "Hello, Mitzi Holcomb! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea295b0c05a62906bb64", "index": 4046, "guid": "d778ce4d-5600-4654-b762-0e5633fa3582", "isActive": false, "balance": "$1,597.64", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Ann Mclean", "gender": "female", "company": "EMTRAK", "email": "annmclean@emtrak.com", "phone": "+1 (986) 480-2107", "address": "804 Just Court, Hendersonville, Illinois, 8437", "about": "Sint culpa amet amet pariatur enim nulla laboris in consequat. Eu est tempor ea labore excepteur duis. Nulla esse aliqua ullamco cillum do excepteur cupidatat labore cillum culpa duis ad. Esse aliqua anim cupidatat tempor commodo occaecat officia ut ipsum amet ut. Enim quis irure mollit fugiat tempor laborum. In est aliqua incididunt ad elit dolor velit laborum enim culpa dolor anim Lorem.\r\n", "registered": "2014-03-29T18:52:05-13:00", "latitude": 8.251001, "longitude": -115.566255, "tags": [ "fugiat", "consectetur", "reprehenderit", "exercitation", "non", "aliqua", "officia" ], "friends": [ { "id": 0, "name": "Inez Calhoun" }, { "id": 1, "name": "Hubbard Carroll" }, { "id": 2, "name": "Lynda Little" } ], "greeting": "Hello, Ann Mclean! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea299f2e6eb48aea8c7d", "index": 4047, "guid": "160e391a-a44d-4c35-8105-46dc24bb4188", "isActive": true, "balance": "$1,269.95", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Ratliff Adkins", "gender": "male", "company": "ORBIN", "email": "ratliffadkins@orbin.com", "phone": "+1 (924) 429-3669", "address": "155 Elm Avenue, Martinsville, South Carolina, 2171", "about": "Cupidatat tempor tempor do quis commodo ea ea mollit minim reprehenderit nulla sit mollit. Dolore excepteur cupidatat dolore est sit est cillum proident id laborum in labore ullamco. Et ullamco ullamco ipsum voluptate ut sint pariatur sit dolore reprehenderit aliquip. Magna occaecat labore nulla reprehenderit nisi officia enim adipisicing ullamco. Anim incididunt deserunt amet fugiat commodo do aliqua consectetur labore irure. Sunt ea ipsum eu aute.\r\n", "registered": "2014-05-07T15:54:36-12:00", "latitude": -69.873715, "longitude": -152.876454, "tags": [ "laboris", "cupidatat", "mollit", "ipsum", "esse", "consectetur", "do" ], "friends": [ { "id": 0, "name": "Hendrix Alvarado" }, { "id": 1, "name": "Bolton Wiggins" }, { "id": 2, "name": "Emerson Oneal" } ], "greeting": "Hello, Ratliff Adkins! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2900f49b68ed6bd5a0", "index": 4048, "guid": "c1615ed0-bd02-400c-b002-0fca04332daa", "isActive": false, "balance": "$1,642.13", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Lee Lopez", "gender": "female", "company": "QUANTALIA", "email": "leelopez@quantalia.com", "phone": "+1 (846) 499-3278", "address": "249 Apollo Street, Blackgum, American Samoa, 3273", "about": "Sint incididunt ullamco aliquip id consectetur in irure officia laboris sunt pariatur excepteur adipisicing. In ut laboris cillum pariatur occaecat culpa ipsum dolore ad in minim labore esse. Et nostrud enim ad excepteur mollit mollit voluptate eu ipsum duis ipsum ipsum in magna. Amet officia cupidatat quis enim. Cillum adipisicing ut sint est ipsum fugiat excepteur mollit cupidatat tempor.\r\n", "registered": "2014-04-21T06:13:02-12:00", "latitude": -51.365114, "longitude": -161.251956, "tags": [ "eu", "ad", "nostrud", "ea", "id", "Lorem", "veniam" ], "friends": [ { "id": 0, "name": "Jennifer Osborn" }, { "id": 1, "name": "Key Duran" }, { "id": 2, "name": "Richmond Russo" } ], "greeting": "Hello, Lee Lopez! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29d0bd273d70d86eb0", "index": 4049, "guid": "6ea4948f-b1e6-452d-8af5-50b882d20689", "isActive": true, "balance": "$3,610.97", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Walters Moran", "gender": "male", "company": "SOPRANO", "email": "waltersmoran@soprano.com", "phone": "+1 (836) 432-2363", "address": "160 John Street, Marbury, Delaware, 2957", "about": "Ullamco amet consectetur labore in non sunt. Ullamco reprehenderit nisi excepteur amet do anim est magna aliquip pariatur non aliquip nisi sit. Fugiat anim pariatur qui Lorem id nisi reprehenderit sint nisi non id. Reprehenderit exercitation fugiat sint cillum. Cupidatat reprehenderit consectetur officia nulla sit nostrud esse consequat voluptate mollit pariatur aliqua proident. Tempor occaecat est tempor qui laborum adipisicing laborum culpa fugiat adipisicing commodo enim.\r\n", "registered": "2014-02-05T16:41:39-13:00", "latitude": 64.969224, "longitude": 121.270859, "tags": [ "aliquip", "magna", "tempor", "proident", "cupidatat", "proident", "officia" ], "friends": [ { "id": 0, "name": "Merle Rios" }, { "id": 1, "name": "Kirsten Rivas" }, { "id": 2, "name": "Elvia Leblanc" } ], "greeting": "Hello, Walters Moran! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea291a51828d7aa6f938", "index": 4050, "guid": "fb54e811-d903-4228-a8dd-0d959c059036", "isActive": true, "balance": "$1,811.84", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Bean Navarro", "gender": "male", "company": "APPLIDECK", "email": "beannavarro@applideck.com", "phone": "+1 (915) 569-2236", "address": "442 Metropolitan Avenue, Zeba, Pennsylvania, 1868", "about": "Adipisicing eiusmod nostrud laborum velit amet eiusmod anim. Culpa adipisicing commodo tempor nisi dolor irure sit nisi Lorem consequat proident elit. Qui Lorem consectetur magna ex pariatur eu irure deserunt anim eu ipsum fugiat non. Duis consectetur deserunt dolor officia ad dolor est incididunt dolore cupidatat ullamco. Do veniam ut laboris velit ut aliquip nulla duis sit quis. Lorem laborum duis aliqua nostrud velit laboris ea exercitation qui mollit labore et.\r\n", "registered": "2014-02-13T17:47:25-13:00", "latitude": -28.813052, "longitude": -34.246587, "tags": [ "cillum", "ad", "irure", "excepteur", "tempor", "excepteur", "officia" ], "friends": [ { "id": 0, "name": "Grimes Pratt" }, { "id": 1, "name": "Anita Mercer" }, { "id": 2, "name": "Ward Chan" } ], "greeting": "Hello, Bean Navarro! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29a1f9e3497cdba7ab", "index": 4051, "guid": "96b2e6eb-216e-41ae-acab-a4d6d0e4d85d", "isActive": true, "balance": "$2,963.84", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Brandy Carter", "gender": "female", "company": "ROOFORIA", "email": "brandycarter@rooforia.com", "phone": "+1 (940) 528-2561", "address": "419 Seagate Avenue, Orason, Georgia, 5258", "about": "Aliqua nisi consequat in ad excepteur nisi anim enim nostrud. Voluptate enim reprehenderit qui do dolore culpa. Magna ad elit ipsum eiusmod minim aliqua irure ut nisi voluptate. Minim est consectetur ullamco tempor aute. Et eu qui non aute cillum non qui. Labore anim culpa ad nulla incididunt minim commodo ea. Non consequat dolor consectetur enim amet laboris et labore voluptate occaecat ea quis do.\r\n", "registered": "2014-09-17T04:25:03-12:00", "latitude": -28.96399, "longitude": -73.55037, "tags": [ "commodo", "ad", "amet", "sint", "ea", "sint", "cupidatat" ], "friends": [ { "id": 0, "name": "Michael Cantu" }, { "id": 1, "name": "Millie Alvarez" }, { "id": 2, "name": "Jasmine Benjamin" } ], "greeting": "Hello, Brandy Carter! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea298fe823c9dbcba77b", "index": 4052, "guid": "7b9b448b-9f89-43a8-a807-4945246dfec3", "isActive": true, "balance": "$2,915.25", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Estelle Strickland", "gender": "female", "company": "COWTOWN", "email": "estellestrickland@cowtown.com", "phone": "+1 (923) 572-2511", "address": "628 Fenimore Street, Indio, North Dakota, 404", "about": "Reprehenderit esse officia mollit dolor in mollit. Enim anim ipsum dolore laboris nisi est est. Incididunt sunt ex amet elit ipsum quis consequat et minim ex tempor ullamco. Eiusmod exercitation tempor in ut nulla nulla reprehenderit mollit eu deserunt. Consectetur sunt ipsum eiusmod nostrud.\r\n", "registered": "2014-04-05T04:40:23-13:00", "latitude": -19.448231, "longitude": -91.02414, "tags": [ "deserunt", "ullamco", "reprehenderit", "dolor", "cupidatat", "qui", "ullamco" ], "friends": [ { "id": 0, "name": "Wilder Schroeder" }, { "id": 1, "name": "Wolf Barker" }, { "id": 2, "name": "Fuller Schultz" } ], "greeting": "Hello, Estelle Strickland! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29f0e284b75ff7aa11", "index": 4053, "guid": "4ebc633e-eaaa-4d2c-9e13-5d244b6fcb5b", "isActive": false, "balance": "$1,631.67", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Crane Torres", "gender": "male", "company": "LINGOAGE", "email": "cranetorres@lingoage.com", "phone": "+1 (927) 584-3676", "address": "716 Glen Street, Wescosville, Louisiana, 6586", "about": "Lorem aliquip minim officia amet laboris cillum cupidatat pariatur ea aliqua voluptate labore. Fugiat dolore cillum reprehenderit ad amet amet eiusmod consequat esse amet exercitation elit. Aliquip adipisicing enim ut anim qui. Officia aliquip qui dolor nostrud do cillum incididunt commodo. Duis nostrud nulla ullamco aliqua reprehenderit do excepteur nisi.\r\n", "registered": "2014-07-18T04:22:38-12:00", "latitude": -88.797958, "longitude": -160.540982, "tags": [ "laboris", "officia", "in", "aliqua", "enim", "pariatur", "occaecat" ], "friends": [ { "id": 0, "name": "Robertson Boyd" }, { "id": 1, "name": "Tania Franco" }, { "id": 2, "name": "Barnett Houston" } ], "greeting": "Hello, Crane Torres! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea297088ba55b835153d", "index": 4054, "guid": "1c0d9dfe-6262-42d4-a12a-39daa0864826", "isActive": true, "balance": "$1,371.48", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Mcintyre Ratliff", "gender": "male", "company": "ZENSUS", "email": "mcintyreratliff@zensus.com", "phone": "+1 (944) 472-2989", "address": "214 Radde Place, Orovada, Northern Mariana Islands, 5627", "about": "Cupidatat occaecat commodo anim nisi duis sint anim cupidatat. Adipisicing adipisicing consequat consectetur minim fugiat incididunt reprehenderit dolor ea ipsum non ullamco. Minim cupidatat ad et ex duis ullamco voluptate minim culpa dolor proident deserunt cupidatat. Quis aliquip excepteur Lorem nisi.\r\n", "registered": "2014-02-03T03:21:32-13:00", "latitude": -36.47675, "longitude": -8.927562, "tags": [ "deserunt", "Lorem", "ut", "magna", "velit", "in", "culpa" ], "friends": [ { "id": 0, "name": "Antoinette Benton" }, { "id": 1, "name": "Iva Roman" }, { "id": 2, "name": "Corrine Schneider" } ], "greeting": "Hello, Mcintyre Ratliff! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea292cff2b15a49b91d0", "index": 4055, "guid": "ee6bbd7a-3cc7-4c33-b980-a70be391518d", "isActive": false, "balance": "$2,271.81", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Courtney Brady", "gender": "female", "company": "EXOTERIC", "email": "courtneybrady@exoteric.com", "phone": "+1 (935) 453-2983", "address": "402 Kings Hwy, Bennett, Colorado, 9914", "about": "Incididunt aliqua irure laboris fugiat occaecat aliqua commodo duis ea ea est. Dolore eiusmod nulla reprehenderit est labore consectetur laborum quis irure. Reprehenderit fugiat occaecat Lorem voluptate cupidatat commodo fugiat non do est. Amet et dolor ad laboris proident nulla quis qui commodo et commodo fugiat mollit mollit. Ipsum amet est occaecat deserunt irure incididunt non ullamco aliqua fugiat laboris sit. Nostrud reprehenderit occaecat ut incididunt id tempor tempor eiusmod consequat incididunt veniam voluptate nulla mollit.\r\n", "registered": "2014-07-07T07:35:50-12:00", "latitude": 45.064704, "longitude": -50.554789, "tags": [ "eu", "proident", "in", "cupidatat", "mollit", "fugiat", "Lorem" ], "friends": [ { "id": 0, "name": "Myers Shannon" }, { "id": 1, "name": "Annmarie Coleman" }, { "id": 2, "name": "Vance Ochoa" } ], "greeting": "Hello, Courtney Brady! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea292c47b3673a1dadfa", "index": 4056, "guid": "17e62ac4-b864-474a-8aad-21caf8998f67", "isActive": true, "balance": "$1,898.06", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Claire Mcclain", "gender": "female", "company": "PHARMEX", "email": "clairemcclain@pharmex.com", "phone": "+1 (984) 503-2755", "address": "970 Vanderveer Street, Shasta, Idaho, 7518", "about": "Qui et qui Lorem fugiat consectetur laboris fugiat dolor. Dolore sunt aute non quis ex laborum ut qui. Qui cupidatat exercitation culpa nisi elit. Aliqua dolore cupidatat id qui incididunt ut tempor nostrud sit Lorem laborum ea culpa.\r\n", "registered": "2014-05-09T06:52:11-12:00", "latitude": 29.374844, "longitude": 56.074324, "tags": [ "tempor", "duis", "id", "ad", "exercitation", "do", "fugiat" ], "friends": [ { "id": 0, "name": "Head Lowe" }, { "id": 1, "name": "Charmaine Hardin" }, { "id": 2, "name": "Gould Watkins" } ], "greeting": "Hello, Claire Mcclain! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2908e3a9c172a6c877", "index": 4057, "guid": "37894142-eb2a-4b7e-8f51-a6b2707bfd01", "isActive": false, "balance": "$1,700.39", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Harding Good", "gender": "male", "company": "COMBOT", "email": "hardinggood@combot.com", "phone": "+1 (863) 551-2880", "address": "142 Gunnison Court, Trinway, Marshall Islands, 6624", "about": "Est velit proident labore fugiat irure sunt do pariatur et. Eu officia id sunt veniam reprehenderit fugiat labore qui esse duis nulla. Nulla cupidatat proident velit ipsum deserunt voluptate.\r\n", "registered": "2014-05-01T23:10:18-12:00", "latitude": 20.089943, "longitude": 160.07567, "tags": [ "laborum", "reprehenderit", "irure", "officia", "excepteur", "veniam", "amet" ], "friends": [ { "id": 0, "name": "Norris Cohen" }, { "id": 1, "name": "Jacquelyn Gamble" }, { "id": 2, "name": "Evans Haynes" } ], "greeting": "Hello, Harding Good! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29f66e2fdfe3bd087b", "index": 4058, "guid": "40278dc1-8924-40ef-9cb1-bce19f0d412e", "isActive": true, "balance": "$2,887.91", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Michele Gibson", "gender": "female", "company": "NEPTIDE", "email": "michelegibson@neptide.com", "phone": "+1 (902) 476-2498", "address": "915 Tompkins Place, Riviera, New York, 6149", "about": "Aliquip anim nulla exercitation pariatur veniam. Pariatur esse duis nisi cillum aute reprehenderit ullamco sit in anim labore qui nisi excepteur. Culpa culpa voluptate ipsum ipsum fugiat esse voluptate id amet velit. Occaecat duis nulla nostrud excepteur consectetur ullamco eiusmod ex. Mollit cupidatat consequat reprehenderit ipsum labore sunt dolore exercitation minim minim. Exercitation elit nostrud irure cupidatat.\r\n", "registered": "2014-02-06T18:19:23-13:00", "latitude": -12.438291, "longitude": 88.326259, "tags": [ "quis", "ullamco", "sit", "anim", "nulla", "in", "aute" ], "friends": [ { "id": 0, "name": "Armstrong Roth" }, { "id": 1, "name": "Lynch Camacho" }, { "id": 2, "name": "Beverley Branch" } ], "greeting": "Hello, Michele Gibson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29a9168f7f50e6abef", "index": 4059, "guid": "8d7e6498-3b1e-48bb-a6b7-d83b4baad94e", "isActive": true, "balance": "$3,923.00", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Maddox Fuller", "gender": "male", "company": "ZILLAN", "email": "maddoxfuller@zillan.com", "phone": "+1 (825) 596-3336", "address": "954 Stratford Road, Fostoria, Guam, 6767", "about": "Minim aliqua nisi elit eiusmod magna reprehenderit ad velit elit fugiat. Id voluptate adipisicing adipisicing laboris ad. Nisi velit ut ut nostrud.\r\n", "registered": "2014-07-11T13:52:00-12:00", "latitude": 55.409813, "longitude": 69.657668, "tags": [ "deserunt", "eiusmod", "id", "officia", "enim", "consectetur", "irure" ], "friends": [ { "id": 0, "name": "Josephine Holden" }, { "id": 1, "name": "Kenya Butler" }, { "id": 2, "name": "Imelda Horton" } ], "greeting": "Hello, Maddox Fuller! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea290f4dce076a6591ce", "index": 4060, "guid": "8dd8ea9a-5be8-4944-9c29-e6fc58f7c970", "isActive": true, "balance": "$3,043.53", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Burt Molina", "gender": "male", "company": "ELECTONIC", "email": "burtmolina@electonic.com", "phone": "+1 (819) 519-3850", "address": "919 Robert Street, Sultana, Virgin Islands, 9087", "about": "Enim aliquip nisi laborum est cupidatat reprehenderit esse tempor. Exercitation ullamco officia commodo reprehenderit tempor ipsum sunt pariatur mollit enim ea officia pariatur enim. Laboris amet adipisicing occaecat laborum nostrud quis reprehenderit excepteur labore quis minim excepteur ipsum. Id amet anim incididunt voluptate magna sit proident. Sit amet aliqua aliqua officia mollit id laboris non voluptate do cillum. Duis enim ut aliquip ut non ea commodo pariatur aute enim voluptate cillum.\r\n", "registered": "2014-04-18T17:18:25-12:00", "latitude": -8.571739, "longitude": -34.613943, "tags": [ "fugiat", "exercitation", "velit", "ea", "eu", "quis", "esse" ], "friends": [ { "id": 0, "name": "Althea Le" }, { "id": 1, "name": "Goodman Summers" }, { "id": 2, "name": "Meyer Gardner" } ], "greeting": "Hello, Burt Molina! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea290c3e4048215a6cfe", "index": 4061, "guid": "df0d3057-a93c-4802-89d0-621864fca431", "isActive": false, "balance": "$1,703.45", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Rosetta Wallace", "gender": "female", "company": "PETIGEMS", "email": "rosettawallace@petigems.com", "phone": "+1 (813) 439-3098", "address": "915 Clarendon Road, Vicksburg, Massachusetts, 1351", "about": "Lorem ea enim reprehenderit incididunt laboris eiusmod quis sit cillum adipisicing excepteur sint. Ipsum id sunt in quis mollit do est cupidatat pariatur. Commodo voluptate aute ipsum est sit occaecat exercitation culpa ut qui in. Labore do sunt aliqua id elit eiusmod Lorem mollit deserunt do fugiat deserunt excepteur. Pariatur nostrud fugiat amet aliqua in ex elit occaecat culpa. Laboris cillum officia cupidatat amet velit incididunt veniam amet et dolore ullamco commodo ad veniam. Cupidatat exercitation esse do incididunt commodo nisi enim elit sit laborum.\r\n", "registered": "2014-07-08T06:39:06-12:00", "latitude": 56.979243, "longitude": 143.438256, "tags": [ "est", "non", "cupidatat", "pariatur", "ipsum", "eu", "aliqua" ], "friends": [ { "id": 0, "name": "Mccoy Johnson" }, { "id": 1, "name": "Rivera Conner" }, { "id": 2, "name": "Bullock Finch" } ], "greeting": "Hello, Rosetta Wallace! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29e05a1ba309806010", "index": 4062, "guid": "8d5fae9a-83fa-4feb-aabf-488e13d79dd5", "isActive": false, "balance": "$2,996.75", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Black Haney", "gender": "male", "company": "EGYPTO", "email": "blackhaney@egypto.com", "phone": "+1 (864) 543-3793", "address": "172 Indiana Place, Moscow, Utah, 2544", "about": "Sint est voluptate duis anim labore consequat qui elit amet. Nisi reprehenderit deserunt veniam enim. Veniam quis aliqua enim cupidatat nulla duis eu enim velit in. Pariatur consequat laboris esse ullamco consequat.\r\n", "registered": "2014-07-01T08:10:06-12:00", "latitude": 22.491176, "longitude": 72.017052, "tags": [ "aliquip", "do", "eu", "irure", "id", "in", "velit" ], "friends": [ { "id": 0, "name": "Swanson Martin" }, { "id": 1, "name": "Hendricks Crosby" }, { "id": 2, "name": "Patty Lloyd" } ], "greeting": "Hello, Black Haney! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2955999a15f03f9379", "index": 4063, "guid": "aaee6460-3dcf-4b64-9a2c-fc6b8328cbc1", "isActive": false, "balance": "$3,296.11", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Dixon Lester", "gender": "male", "company": "CINASTER", "email": "dixonlester@cinaster.com", "phone": "+1 (959) 438-3422", "address": "718 Haring Street, Waverly, Montana, 6586", "about": "Culpa veniam officia non commodo et magna aliquip nisi anim laboris. Incididunt consectetur aute amet veniam fugiat nulla anim incididunt ad velit. Ad consequat officia deserunt nostrud exercitation sunt qui velit deserunt consequat magna exercitation amet reprehenderit. Laboris nostrud sunt non do sit culpa aute. Adipisicing anim enim non eiusmod tempor. Consequat est magna culpa qui Lorem sit esse laboris consectetur esse.\r\n", "registered": "2014-08-16T04:35:18-12:00", "latitude": 72.272922, "longitude": -25.026365, "tags": [ "ex", "ex", "laborum", "aliquip", "qui", "nostrud", "pariatur" ], "friends": [ { "id": 0, "name": "Gail Whitfield" }, { "id": 1, "name": "Johanna Evans" }, { "id": 2, "name": "Ochoa Blackburn" } ], "greeting": "Hello, Dixon Lester! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29c104bb2c10a51b10", "index": 4064, "guid": "ad96e2cf-c29e-47be-b38e-e32702521cfc", "isActive": true, "balance": "$3,288.76", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Elliott Walter", "gender": "male", "company": "NIXELT", "email": "elliottwalter@nixelt.com", "phone": "+1 (868) 477-2523", "address": "233 Kaufman Place, Wedgewood, Wisconsin, 5430", "about": "Cupidatat magna eiusmod non cillum consectetur irure incididunt exercitation. Quis consequat minim minim fugiat irure pariatur laborum esse pariatur. Occaecat fugiat labore minim minim labore laboris occaecat incididunt dolore. Reprehenderit in aliqua adipisicing adipisicing nostrud esse commodo officia. Excepteur sint ut commodo anim consequat ad ullamco. Do consequat ea ad tempor aliquip labore enim.\r\n", "registered": "2014-04-21T17:06:02-12:00", "latitude": -88.888777, "longitude": 93.985485, "tags": [ "sunt", "mollit", "aliquip", "enim", "exercitation", "do", "consectetur" ], "friends": [ { "id": 0, "name": "Delia Underwood" }, { "id": 1, "name": "Gonzales William" }, { "id": 2, "name": "Catherine Mccarty" } ], "greeting": "Hello, Elliott Walter! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2997ab3bbcc98bb256", "index": 4065, "guid": "5eec9e2b-4d5f-42b0-a261-5e37ff1ff4c0", "isActive": false, "balance": "$1,101.60", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Roach Mullins", "gender": "male", "company": "ROBOID", "email": "roachmullins@roboid.com", "phone": "+1 (891) 445-2991", "address": "673 Lincoln Place, Summerset, Maine, 9091", "about": "Eiusmod ut ea laborum nisi in veniam ea aute aute. Eiusmod ex duis nulla eiusmod do amet veniam ea dolore laborum esse. Quis ut tempor cupidatat consequat aliquip deserunt adipisicing magna deserunt eu. Commodo amet veniam nostrud occaecat magna tempor laborum aliquip culpa velit reprehenderit officia ut. Pariatur exercitation nostrud sunt anim sint. Ex ex veniam anim mollit cupidatat fugiat consequat duis magna exercitation reprehenderit reprehenderit. Proident nostrud reprehenderit ad commodo officia sint enim velit et eiusmod est eu est veniam.\r\n", "registered": "2014-07-19T12:48:53-12:00", "latitude": 77.951885, "longitude": -176.689679, "tags": [ "aute", "proident", "mollit", "mollit", "eiusmod", "non", "veniam" ], "friends": [ { "id": 0, "name": "Medina Sweet" }, { "id": 1, "name": "Celeste Watts" }, { "id": 2, "name": "Ines Moreno" } ], "greeting": "Hello, Roach Mullins! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea299239e8a9430890c3", "index": 4066, "guid": "bcfd4e17-a065-4eab-950b-2080b3007362", "isActive": false, "balance": "$1,898.31", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Holt Mcmillan", "gender": "male", "company": "SNOWPOKE", "email": "holtmcmillan@snowpoke.com", "phone": "+1 (956) 406-3668", "address": "448 Kings Place, Springdale, Virginia, 4707", "about": "Exercitation aliquip consequat incididunt anim est et reprehenderit. Non dolor labore cillum sint nostrud ut quis duis ullamco ex. Minim nostrud consequat dolor ad proident reprehenderit. Fugiat sint laboris consequat adipisicing magna.\r\n", "registered": "2014-08-23T05:13:06-12:00", "latitude": -8.166384, "longitude": 8.532309, "tags": [ "magna", "fugiat", "elit", "laborum", "ad", "dolor", "tempor" ], "friends": [ { "id": 0, "name": "John Greer" }, { "id": 1, "name": "Sweeney Barron" }, { "id": 2, "name": "Krystal Flynn" } ], "greeting": "Hello, Holt Mcmillan! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2926f22a386b527027", "index": 4067, "guid": "630f9b3c-e1c5-480d-b317-75e02f708a03", "isActive": true, "balance": "$3,339.06", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Barrera Rasmussen", "gender": "male", "company": "SOLGAN", "email": "barrerarasmussen@solgan.com", "phone": "+1 (952) 526-2454", "address": "434 Branton Street, Glenbrook, Kentucky, 584", "about": "Sint anim voluptate tempor proident id nulla. Reprehenderit do pariatur officia aliqua ullamco sint incididunt. Veniam eiusmod commodo enim in minim est consectetur fugiat velit et ea mollit. Enim id do proident veniam est ea. Exercitation officia eu amet eiusmod irure laborum reprehenderit magna proident minim aliqua. Do sit magna mollit voluptate veniam sit ad velit amet est occaecat sit ex.\r\n", "registered": "2014-01-31T03:45:10-13:00", "latitude": -88.419753, "longitude": -52.067464, "tags": [ "incididunt", "nisi", "excepteur", "culpa", "tempor", "non", "est" ], "friends": [ { "id": 0, "name": "Nell Carson" }, { "id": 1, "name": "Moon Michael" }, { "id": 2, "name": "Erna Bond" } ], "greeting": "Hello, Barrera Rasmussen! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea296f4b3765f2af887a", "index": 4068, "guid": "f1120930-a481-4b64-a632-b04254e698f8", "isActive": true, "balance": "$1,116.28", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Leigh Banks", "gender": "female", "company": "EURON", "email": "leighbanks@euron.com", "phone": "+1 (875) 582-3982", "address": "357 Dahl Court, Chautauqua, Connecticut, 3745", "about": "Quis labore qui pariatur occaecat nisi ea sit ad amet cupidatat. Ut reprehenderit minim esse anim aliqua incididunt fugiat non in sint nulla in aute laboris. Dolore cillum nisi Lorem ipsum exercitation nulla fugiat aliqua magna. Fugiat elit laborum incididunt amet aliqua commodo enim laborum enim ex officia dolore velit enim. Sit ut magna labore id do officia nisi aliqua quis exercitation in aute elit. Id officia excepteur anim velit anim quis aliquip voluptate qui laboris in proident enim do. Irure amet enim proident duis.\r\n", "registered": "2014-01-14T21:57:33-13:00", "latitude": -89.704901, "longitude": 125.556886, "tags": [ "ea", "cupidatat", "ex", "commodo", "consectetur", "nostrud", "excepteur" ], "friends": [ { "id": 0, "name": "Callie Conley" }, { "id": 1, "name": "Hays Riddle" }, { "id": 2, "name": "Schneider Rosa" } ], "greeting": "Hello, Leigh Banks! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29a5f5c20a83a78ef6", "index": 4069, "guid": "bfd7eceb-65ed-4ecc-b6a9-abfbaca14966", "isActive": false, "balance": "$1,512.87", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Wagner Palmer", "gender": "male", "company": "VENOFLEX", "email": "wagnerpalmer@venoflex.com", "phone": "+1 (996) 550-3067", "address": "901 Rockaway Avenue, Jackpot, Mississippi, 769", "about": "Quis adipisicing occaecat tempor veniam amet et irure fugiat labore et. Dolore dolore cupidatat excepteur laboris. Eiusmod fugiat consequat id elit duis ea fugiat sunt magna nisi. Cillum tempor quis voluptate est voluptate quis incididunt. Anim ullamco non sint id ut veniam dolor dolore in consectetur aliquip consectetur ut commodo.\r\n", "registered": "2014-03-27T14:31:40-13:00", "latitude": -16.90022, "longitude": 74.824096, "tags": [ "fugiat", "pariatur", "pariatur", "ipsum", "sunt", "minim", "minim" ], "friends": [ { "id": 0, "name": "Stark Mckenzie" }, { "id": 1, "name": "William Koch" }, { "id": 2, "name": "Spears Goodman" } ], "greeting": "Hello, Wagner Palmer! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea296061695085a14aa1", "index": 4070, "guid": "98a19ce9-2944-4565-aec7-9041570483f6", "isActive": false, "balance": "$3,758.11", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Margarita Ray", "gender": "female", "company": "GOLOGY", "email": "margaritaray@gology.com", "phone": "+1 (991) 462-3679", "address": "753 Forest Place, Abrams, Washington, 4001", "about": "Adipisicing consectetur dolor proident cupidatat dolore sit exercitation ex amet officia commodo est. Nostrud tempor dolor ut non commodo irure. Lorem Lorem id do consequat tempor incididunt ullamco dolore. Do consequat nulla mollit proident pariatur irure. In exercitation aliqua pariatur ipsum.\r\n", "registered": "2014-03-05T10:00:52-13:00", "latitude": 2.387955, "longitude": 131.212262, "tags": [ "magna", "Lorem", "est", "sit", "enim", "laborum", "sint" ], "friends": [ { "id": 0, "name": "Campos Bradshaw" }, { "id": 1, "name": "Waller King" }, { "id": 2, "name": "Elise Bender" } ], "greeting": "Hello, Margarita Ray! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2937c9fd1fbf97be7c", "index": 4071, "guid": "73eabffd-7723-4737-9134-3ff154268880", "isActive": true, "balance": "$2,449.25", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Therese Garza", "gender": "female", "company": "PATHWAYS", "email": "theresegarza@pathways.com", "phone": "+1 (835) 505-3792", "address": "109 Henderson Walk, Sutton, Tennessee, 5755", "about": "Occaecat consequat reprehenderit ullamco do irure sunt aliquip tempor duis velit nulla aliqua in duis. Culpa irure consectetur commodo reprehenderit ullamco non sint irure laboris id. Voluptate laboris consequat commodo eiusmod exercitation tempor nulla tempor sint. Sunt occaecat dolore commodo nulla officia dolor pariatur fugiat occaecat commodo cillum sit. Ex pariatur et aliqua aute dolor minim.\r\n", "registered": "2014-06-22T21:32:49-12:00", "latitude": 84.550451, "longitude": 77.806931, "tags": [ "adipisicing", "ea", "consectetur", "minim", "excepteur", "tempor", "minim" ], "friends": [ { "id": 0, "name": "Sophie Nolan" }, { "id": 1, "name": "Chambers Cote" }, { "id": 2, "name": "Maryanne Delacruz" } ], "greeting": "Hello, Therese Garza! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2919f72161562cf1ed", "index": 4072, "guid": "079e5838-c9ba-40de-b1e8-cad8c45d9823", "isActive": false, "balance": "$2,019.37", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Riley Sanders", "gender": "male", "company": "FARMAGE", "email": "rileysanders@farmage.com", "phone": "+1 (866) 463-3424", "address": "445 Kane Place, Gibbsville, Alabama, 7841", "about": "In magna nostrud eiusmod officia Lorem adipisicing dolor Lorem minim adipisicing in. Incididunt labore reprehenderit veniam ex non aute enim consequat mollit duis. Est commodo commodo ex ad aliqua. Aute reprehenderit Lorem reprehenderit id.\r\n", "registered": "2014-01-27T13:36:09-13:00", "latitude": -41.358911, "longitude": 79.015122, "tags": [ "culpa", "voluptate", "eu", "aute", "excepteur", "aliqua", "eu" ], "friends": [ { "id": 0, "name": "Hollie Ewing" }, { "id": 1, "name": "Marjorie Sexton" }, { "id": 2, "name": "Clements Salinas" } ], "greeting": "Hello, Riley Sanders! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29d5f5e4f6026c2642", "index": 4073, "guid": "081f1921-9634-4088-b0cb-080adf4c3b5f", "isActive": false, "balance": "$2,679.70", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Pearl Alexander", "gender": "female", "company": "BITENDREX", "email": "pearlalexander@bitendrex.com", "phone": "+1 (955) 502-3019", "address": "163 Woods Place, Hanover, Ohio, 5435", "about": "Elit velit velit sint excepteur deserunt esse aliquip consequat exercitation magna. Tempor culpa Lorem id aute enim et adipisicing consequat labore qui commodo. Amet ea consectetur anim esse aliqua deserunt minim ullamco est cillum anim consequat tempor deserunt. Voluptate tempor do nulla dolore ad voluptate adipisicing ex ad duis sunt ex. In do eiusmod ut aliquip et tempor deserunt irure exercitation non veniam exercitation consectetur.\r\n", "registered": "2014-03-26T10:30:22-13:00", "latitude": -71.112137, "longitude": -78.688008, "tags": [ "est", "ea", "id", "et", "nulla", "id", "occaecat" ], "friends": [ { "id": 0, "name": "Charity Lane" }, { "id": 1, "name": "Mamie Kline" }, { "id": 2, "name": "Bettie Lowery" } ], "greeting": "Hello, Pearl Alexander! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea294c44f0dcbc4cedb0", "index": 4074, "guid": "c3daeaaf-2469-404b-a3b2-757f84d0bb48", "isActive": false, "balance": "$1,765.23", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Wheeler Dodson", "gender": "male", "company": "PARAGONIA", "email": "wheelerdodson@paragonia.com", "phone": "+1 (966) 596-3623", "address": "490 Belmont Avenue, Brooktrails, Hawaii, 8918", "about": "Dolore duis aliqua mollit dolor magna in amet eiusmod non fugiat duis. Quis cupidatat deserunt veniam adipisicing sit laboris consequat dolor ad voluptate. Proident anim quis fugiat elit occaecat laboris. Dolor occaecat do proident voluptate ut sint mollit qui aute occaecat eu. Consectetur minim do quis Lorem nulla excepteur Lorem mollit esse.\r\n", "registered": "2014-04-25T22:38:05-12:00", "latitude": -71.260599, "longitude": -87.483376, "tags": [ "veniam", "ut", "voluptate", "culpa", "adipisicing", "aliqua", "sit" ], "friends": [ { "id": 0, "name": "Sheryl Russell" }, { "id": 1, "name": "Adams Reese" }, { "id": 2, "name": "Rosanne Short" } ], "greeting": "Hello, Wheeler Dodson! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29aae2c6183e744c19", "index": 4075, "guid": "ca4aaa56-256c-4e4a-92a3-aae7bab6529f", "isActive": false, "balance": "$3,591.85", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Maude Cameron", "gender": "female", "company": "QUONK", "email": "maudecameron@quonk.com", "phone": "+1 (965) 495-3326", "address": "670 Jackson Court, Fairforest, New Mexico, 5697", "about": "Commodo ut pariatur aute fugiat dolor non aliquip. Lorem qui incididunt labore cupidatat velit sint quis. Do excepteur est ut nulla adipisicing nisi nulla. Lorem officia commodo Lorem eu eu esse laborum excepteur.\r\n", "registered": "2014-03-02T20:42:28-13:00", "latitude": 59.279731, "longitude": -29.131315, "tags": [ "reprehenderit", "esse", "fugiat", "amet", "cupidatat", "voluptate", "deserunt" ], "friends": [ { "id": 0, "name": "Abigail Lawrence" }, { "id": 1, "name": "Latonya Small" }, { "id": 2, "name": "Ivy Wilkins" } ], "greeting": "Hello, Maude Cameron! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea297edc546489b7df44", "index": 4076, "guid": "6d775c24-9eaa-4baf-98e7-a8281d33d693", "isActive": false, "balance": "$3,252.79", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Eula Frye", "gender": "female", "company": "XEREX", "email": "eulafrye@xerex.com", "phone": "+1 (956) 419-3869", "address": "366 Boerum Street, Frystown, Maryland, 8204", "about": "Nostrud incididunt et ipsum pariatur est amet voluptate ad aliqua irure qui. Ipsum elit minim ea tempor. Dolore qui consequat duis eu cupidatat est. Amet enim enim magna aute tempor consequat fugiat excepteur tempor. Enim consectetur ullamco sint fugiat consequat mollit cupidatat amet veniam ex. Deserunt irure fugiat dolore exercitation aliqua incididunt ut incididunt minim laborum.\r\n", "registered": "2014-09-16T02:57:15-12:00", "latitude": -19.311624, "longitude": -150.624362, "tags": [ "veniam", "cupidatat", "est", "consectetur", "non", "enim", "elit" ], "friends": [ { "id": 0, "name": "Carla Medina" }, { "id": 1, "name": "Haney Terry" }, { "id": 2, "name": "Cornelia Mccullough" } ], "greeting": "Hello, Eula Frye! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29395a49bee80e30b7", "index": 4077, "guid": "4a5c49c5-9073-4cea-a57e-119557ec97b5", "isActive": false, "balance": "$2,195.01", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Noelle Manning", "gender": "female", "company": "FANFARE", "email": "noellemanning@fanfare.com", "phone": "+1 (977) 563-3688", "address": "267 Hegeman Avenue, Harold, Alaska, 3062", "about": "Duis adipisicing quis exercitation ut fugiat adipisicing eiusmod et minim dolor enim. Excepteur cupidatat quis eiusmod cillum. Do culpa eiusmod occaecat non culpa magna enim. Deserunt tempor ullamco enim ipsum occaecat nisi ea. Exercitation pariatur officia do veniam ut minim eu anim laboris sunt enim. Laboris fugiat culpa fugiat aliquip in.\r\n", "registered": "2014-02-16T14:50:25-13:00", "latitude": -29.23667, "longitude": -11.155574, "tags": [ "ea", "in", "labore", "duis", "non", "aliqua", "ad" ], "friends": [ { "id": 0, "name": "Lilia Langley" }, { "id": 1, "name": "Sanford Jackson" }, { "id": 2, "name": "Donovan Grant" } ], "greeting": "Hello, Noelle Manning! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea294e1f88add43f39b5", "index": 4078, "guid": "e119bfd5-5306-4e2e-b9a5-f1823426d465", "isActive": true, "balance": "$3,570.12", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Leslie Hatfield", "gender": "female", "company": "TROPOLI", "email": "lesliehatfield@tropoli.com", "phone": "+1 (816) 431-3163", "address": "205 Kermit Place, Oasis, Arizona, 483", "about": "Nulla laboris culpa dolor sunt esse labore eu ea pariatur eu eu. Veniam consequat labore excepteur ex consectetur esse. Sunt officia sit officia et nostrud deserunt sint voluptate nostrud nulla. Labore aliquip sint non laborum pariatur occaecat eu quis nulla eu esse quis veniam nostrud. Consectetur id laborum eu aute fugiat Lorem voluptate nisi deserunt eu. Nulla elit qui voluptate esse fugiat. Do qui laborum dolore ex.\r\n", "registered": "2014-07-22T01:26:47-12:00", "latitude": 47.942231, "longitude": 29.677863, "tags": [ "ullamco", "incididunt", "est", "elit", "mollit", "elit", "ipsum" ], "friends": [ { "id": 0, "name": "Alexander Hodges" }, { "id": 1, "name": "Levine Trevino" }, { "id": 2, "name": "Zelma Thornton" } ], "greeting": "Hello, Leslie Hatfield! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2908127099aeee897f", "index": 4079, "guid": "f476bdc9-bf11-4ed1-97d9-7a34621eddec", "isActive": false, "balance": "$3,719.49", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Peters Kelley", "gender": "male", "company": "PROWASTE", "email": "peterskelley@prowaste.com", "phone": "+1 (808) 490-3387", "address": "494 Louisa Street, Tilleda, Federated States Of Micronesia, 428", "about": "Nisi exercitation irure ex adipisicing minim occaecat duis adipisicing cupidatat nisi. Commodo eu nulla quis eiusmod. Proident Lorem aliqua dolore ipsum nulla eiusmod commodo est culpa incididunt ea veniam fugiat deserunt. Consectetur tempor in consequat eu occaecat dolore nulla. Laborum in officia do occaecat occaecat laborum proident nulla nostrud mollit irure. Cillum nostrud nostrud aute mollit nulla culpa et officia commodo ullamco duis est eiusmod. Mollit exercitation adipisicing tempor amet.\r\n", "registered": "2014-01-19T11:34:29-13:00", "latitude": 71.567511, "longitude": 19.328872, "tags": [ "minim", "Lorem", "consequat", "ipsum", "ex", "veniam", "exercitation" ], "friends": [ { "id": 0, "name": "Hartman Joseph" }, { "id": 1, "name": "Charles Stephens" }, { "id": 2, "name": "Mills Norman" } ], "greeting": "Hello, Peters Kelley! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2976e6d38592141fac", "index": 4080, "guid": "e51aceeb-a072-4659-8118-30f78ece821a", "isActive": true, "balance": "$3,129.35", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Nelson Nash", "gender": "male", "company": "ZENCO", "email": "nelsonnash@zenco.com", "phone": "+1 (842) 597-3344", "address": "959 Hunterfly Place, Layhill, Oklahoma, 4508", "about": "Lorem pariatur mollit tempor tempor id eu nisi id ipsum deserunt tempor. Proident minim fugiat commodo quis dolore sit. Mollit consectetur sint sunt mollit veniam.\r\n", "registered": "2014-05-14T21:36:53-12:00", "latitude": -79.958529, "longitude": -92.968601, "tags": [ "ex", "ex", "cupidatat", "minim", "aliqua", "consequat", "dolor" ], "friends": [ { "id": 0, "name": "Vickie Gibbs" }, { "id": 1, "name": "Estes Foreman" }, { "id": 2, "name": "Julianne Leon" } ], "greeting": "Hello, Nelson Nash! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea291c2d714c0370b93a", "index": 4081, "guid": "b3488610-bd50-420d-bc2d-ab30d9ce2a8a", "isActive": false, "balance": "$2,436.17", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Augusta Holt", "gender": "female", "company": "NETPLAX", "email": "augustaholt@netplax.com", "phone": "+1 (922) 431-3271", "address": "653 Juliana Place, Iola, Michigan, 958", "about": "Est ex magna aliquip do ad est. Cillum elit mollit exercitation sint mollit adipisicing ex tempor consequat nulla ex consectetur ut adipisicing. Aliqua ullamco eiusmod eu et nisi eu eiusmod labore amet proident nostrud culpa sit occaecat.\r\n", "registered": "2014-05-22T11:34:40-12:00", "latitude": -19.056058, "longitude": 140.330077, "tags": [ "excepteur", "occaecat", "sint", "in", "sint", "adipisicing", "exercitation" ], "friends": [ { "id": 0, "name": "Angie Griffin" }, { "id": 1, "name": "Eunice Sutton" }, { "id": 2, "name": "Vazquez Woodard" } ], "greeting": "Hello, Augusta Holt! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29585b148e7c6a6cda", "index": 4082, "guid": "e4049fa8-4f6e-4e25-b988-623a073de1f6", "isActive": true, "balance": "$3,712.88", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Diann Larsen", "gender": "female", "company": "ZIPAK", "email": "diannlarsen@zipak.com", "phone": "+1 (885) 472-3562", "address": "626 Wythe Avenue, Boling, Kansas, 1504", "about": "Sit cillum fugiat laboris veniam ad commodo proident duis. Quis excepteur duis veniam minim cupidatat sunt est aute do labore duis nulla nisi consectetur. Laboris duis cupidatat incididunt in aute nostrud culpa Lorem do proident proident. Nisi laborum dolore magna non pariatur fugiat ex voluptate proident minim id occaecat. Excepteur deserunt non eu consequat laborum nulla. Sit tempor eu ex fugiat sit esse labore nisi non non proident consectetur veniam irure. Reprehenderit irure aliquip incididunt pariatur sit elit elit elit mollit laborum.\r\n", "registered": "2014-07-02T01:12:16-12:00", "latitude": 7.946332, "longitude": -61.739016, "tags": [ "mollit", "incididunt", "do", "reprehenderit", "qui", "id", "in" ], "friends": [ { "id": 0, "name": "Hannah Parks" }, { "id": 1, "name": "Krista Benson" }, { "id": 2, "name": "Jody Jefferson" } ], "greeting": "Hello, Diann Larsen! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea290681373e2eb18f73", "index": 4083, "guid": "171bc03c-a669-4e13-b4b9-858269958b0d", "isActive": false, "balance": "$2,474.17", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Jaime Ruiz", "gender": "female", "company": "PARCOE", "email": "jaimeruiz@parcoe.com", "phone": "+1 (806) 427-2891", "address": "266 Bainbridge Street, Rosine, South Dakota, 5888", "about": "Lorem veniam pariatur exercitation cupidatat ad nulla incididunt. Proident ut cupidatat dolore elit proident commodo. Non laborum anim incididunt pariatur pariatur labore.\r\n", "registered": "2014-08-14T19:34:38-12:00", "latitude": -11.362525, "longitude": -92.612608, "tags": [ "minim", "proident", "voluptate", "enim", "eiusmod", "reprehenderit", "exercitation" ], "friends": [ { "id": 0, "name": "Kent Mclaughlin" }, { "id": 1, "name": "Virginia Bernard" }, { "id": 2, "name": "Reyna Bonner" } ], "greeting": "Hello, Jaime Ruiz! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea290aba8e6200501544", "index": 4084, "guid": "a6e55f06-493a-4d9f-939c-8d28a57e4c53", "isActive": false, "balance": "$1,326.46", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Blankenship Fischer", "gender": "male", "company": "ANARCO", "email": "blankenshipfischer@anarco.com", "phone": "+1 (847) 494-2101", "address": "151 Richmond Street, Hannasville, West Virginia, 6076", "about": "Dolor in velit eiusmod mollit in occaecat non ipsum nulla non aute. Magna ullamco qui id adipisicing esse nostrud cillum Lorem exercitation. Sunt reprehenderit enim veniam mollit et est aute cillum cillum incididunt do magna. Consectetur laborum cupidatat non do ad deserunt. Dolore eiusmod in incididunt aute minim commodo nisi consequat. Exercitation exercitation deserunt aliquip excepteur veniam cillum quis laboris laborum ex.\r\n", "registered": "2014-09-16T03:04:43-12:00", "latitude": 72.410872, "longitude": -34.505782, "tags": [ "culpa", "Lorem", "enim", "elit", "cillum", "voluptate", "ut" ], "friends": [ { "id": 0, "name": "Parsons Whitney" }, { "id": 1, "name": "Gibson Conway" }, { "id": 2, "name": "Powell Patton" } ], "greeting": "Hello, Blankenship Fischer! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29cc7ff0f9132ad896", "index": 4085, "guid": "35177d01-4456-43d6-b0c5-82d7a1fc91bd", "isActive": false, "balance": "$3,791.17", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Vinson Hahn", "gender": "male", "company": "EYEWAX", "email": "vinsonhahn@eyewax.com", "phone": "+1 (990) 488-3237", "address": "470 Nixon Court, Dennard, Texas, 6320", "about": "Ea cupidatat elit cillum proident. Ullamco nostrud magna aliqua qui commodo consectetur sint duis culpa. Magna irure est irure aliqua sit cillum mollit nisi dolor eu excepteur voluptate id. Cupidatat enim elit non nisi duis amet esse do irure. Ullamco aliqua pariatur proident cillum reprehenderit nisi amet sunt nostrud.\r\n", "registered": "2014-03-31T22:22:09-13:00", "latitude": -76.971168, "longitude": 20.131411, "tags": [ "commodo", "mollit", "sunt", "velit", "non", "esse", "culpa" ], "friends": [ { "id": 0, "name": "Webb Mcpherson" }, { "id": 1, "name": "Michelle Cabrera" }, { "id": 2, "name": "Rivas Sanchez" } ], "greeting": "Hello, Vinson Hahn! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea296d4f1fc3b020f461", "index": 4086, "guid": "0b394202-1d5c-49db-994f-5644e2ba159b", "isActive": false, "balance": "$1,178.05", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Kathleen Davidson", "gender": "female", "company": "SUPPORTAL", "email": "kathleendavidson@supportal.com", "phone": "+1 (862) 576-3609", "address": "941 Georgia Avenue, Hayes, Oregon, 314", "about": "Labore duis fugiat veniam anim non laboris voluptate consectetur deserunt tempor. Dolor occaecat consequat ipsum fugiat ea duis id aliquip. Commodo veniam eu deserunt nostrud consectetur occaecat incididunt id cillum mollit enim dolor.\r\n", "registered": "2014-09-13T17:47:44-12:00", "latitude": 22.604801, "longitude": -4.055245, "tags": [ "Lorem", "aute", "exercitation", "adipisicing", "quis", "ullamco", "quis" ], "friends": [ { "id": 0, "name": "Kaye Preston" }, { "id": 1, "name": "Baxter Williams" }, { "id": 2, "name": "Farley Reilly" } ], "greeting": "Hello, Kathleen Davidson! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29d9b8350564c8fb4a", "index": 4087, "guid": "784156e5-c951-4e5e-973a-68ca4375779f", "isActive": false, "balance": "$3,678.04", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Miranda Jacobson", "gender": "male", "company": "CORECOM", "email": "mirandajacobson@corecom.com", "phone": "+1 (970) 443-3812", "address": "978 Fair Street, Winchester, Nevada, 3130", "about": "Officia dolore laborum excepteur nulla quis. Velit Lorem reprehenderit labore nisi sint aliqua labore. Culpa non in incididunt consectetur anim ullamco anim qui velit eu sint. Minim do culpa pariatur Lorem. Ipsum officia veniam nostrud sunt est aliquip Lorem aute aliquip sint dolor qui consectetur proident. Qui cillum incididunt ad consectetur consequat magna eu pariatur ipsum reprehenderit incididunt.\r\n", "registered": "2014-06-24T10:16:17-12:00", "latitude": -30.291984, "longitude": 12.538502, "tags": [ "sint", "incididunt", "pariatur", "ea", "laboris", "sunt", "duis" ], "friends": [ { "id": 0, "name": "Shari Jones" }, { "id": 1, "name": "Lucinda Bennett" }, { "id": 2, "name": "Blackwell Quinn" } ], "greeting": "Hello, Miranda Jacobson! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29aa1cbef94ab6144e", "index": 4088, "guid": "0d9420c6-8719-475c-9da9-f0cb8c4f7775", "isActive": true, "balance": "$2,632.23", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Avis Zimmerman", "gender": "female", "company": "ISOLOGIA", "email": "aviszimmerman@isologia.com", "phone": "+1 (950) 523-3350", "address": "110 Seeley Street, Townsend, Minnesota, 743", "about": "Aute cupidatat cillum anim culpa adipisicing deserunt qui proident laboris esse officia enim. Reprehenderit velit qui tempor aliquip do minim laborum ad. Fugiat pariatur ea officia esse ex voluptate sint reprehenderit deserunt irure qui. Enim consequat laboris pariatur amet anim cupidatat nostrud.\r\n", "registered": "2014-08-28T02:57:42-12:00", "latitude": 63.67149, "longitude": -19.608704, "tags": [ "elit", "voluptate", "Lorem", "proident", "ex", "enim", "ex" ], "friends": [ { "id": 0, "name": "Marcie Cruz" }, { "id": 1, "name": "Mendoza Moody" }, { "id": 2, "name": "Young Barton" } ], "greeting": "Hello, Avis Zimmerman! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2987a8e2cad8ca6298", "index": 4089, "guid": "faf2af6b-ab33-496b-903c-eaa5fa2b9f8a", "isActive": true, "balance": "$3,583.44", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Marcella Ayala", "gender": "female", "company": "CENTREE", "email": "marcellaayala@centree.com", "phone": "+1 (906) 510-2608", "address": "850 Hudson Avenue, Keyport, Missouri, 7334", "about": "Cupidatat adipisicing in est id cillum in aliqua consequat. Nisi labore duis amet duis et Lorem cupidatat proident excepteur deserunt eu deserunt. Officia nulla deserunt nulla dolore commodo amet aliquip dolor fugiat. Voluptate est mollit dolore reprehenderit officia nulla cillum. In eu adipisicing duis non veniam laboris nulla ad nisi. Ipsum cillum magna proident quis ullamco proident consequat proident quis aute Lorem cillum ea. Eu enim culpa dolore ea ea dolor tempor nostrud sint ut.\r\n", "registered": "2014-08-05T05:03:41-12:00", "latitude": -89.211372, "longitude": -90.214429, "tags": [ "aute", "non", "eu", "excepteur", "cupidatat", "laborum", "deserunt" ], "friends": [ { "id": 0, "name": "Ortiz Workman" }, { "id": 1, "name": "Talley Hopper" }, { "id": 2, "name": "Jayne Turner" } ], "greeting": "Hello, Marcella Ayala! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29d69ca36e09f43464", "index": 4090, "guid": "86d0c60d-1cc6-4863-8159-8778219dd66e", "isActive": false, "balance": "$1,978.31", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Navarro Shaffer", "gender": "male", "company": "GYNKO", "email": "navarroshaffer@gynko.com", "phone": "+1 (946) 540-3420", "address": "985 Highlawn Avenue, Brenton, Rhode Island, 9616", "about": "Qui ex aliquip magna nostrud aliqua. Laboris adipisicing irure officia exercitation consequat proident eu. Nulla Lorem cillum ipsum sunt qui ea quis. Reprehenderit sunt aliqua pariatur in reprehenderit laboris Lorem sit nisi deserunt. Ipsum id velit deserunt amet velit dolore esse do do est minim. Velit labore aute sint quis.\r\n", "registered": "2014-09-09T03:56:26-12:00", "latitude": 88.779054, "longitude": -112.679803, "tags": [ "dolore", "eiusmod", "consectetur", "sunt", "ex", "sint", "aliquip" ], "friends": [ { "id": 0, "name": "Laverne Miranda" }, { "id": 1, "name": "Isabella Cash" }, { "id": 2, "name": "Summers Randall" } ], "greeting": "Hello, Navarro Shaffer! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29419f7d0e9670dd45", "index": 4091, "guid": "feda826d-dbd5-4f86-a618-da7108050069", "isActive": false, "balance": "$1,797.16", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Mcgee Drake", "gender": "male", "company": "BIOHAB", "email": "mcgeedrake@biohab.com", "phone": "+1 (924) 411-3687", "address": "631 Bills Place, Hoagland, Florida, 1398", "about": "Proident enim consectetur aliqua ipsum elit enim ex minim labore eiusmod dolore nulla est ipsum. Incididunt elit voluptate quis consequat ut officia ex eiusmod duis ea elit deserunt enim ad. Aute tempor Lorem veniam commodo do. Labore dolor cupidatat adipisicing qui id eu laboris qui. Sit est sit mollit nisi commodo consequat magna reprehenderit qui sint occaecat sit aute excepteur. Tempor deserunt in officia sit commodo. Ea ullamco tempor id ut Lorem amet quis do officia quis do eiusmod non.\r\n", "registered": "2014-03-16T10:06:11-13:00", "latitude": -38.361537, "longitude": 167.951383, "tags": [ "enim", "aute", "veniam", "qui", "reprehenderit", "deserunt", "occaecat" ], "friends": [ { "id": 0, "name": "Kristine Calderon" }, { "id": 1, "name": "Susanna Mckinney" }, { "id": 2, "name": "Britney Estrada" } ], "greeting": "Hello, Mcgee Drake! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea294370ebf95d22a51a", "index": 4092, "guid": "9010a9b3-0858-45ac-af1d-0ef18bf11d1b", "isActive": true, "balance": "$2,262.55", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Mona Weaver", "gender": "female", "company": "VERAQ", "email": "monaweaver@veraq.com", "phone": "+1 (969) 440-3654", "address": "819 Empire Boulevard, Tedrow, North Carolina, 6044", "about": "Ullamco id in minim culpa aute fugiat labore proident id do ea et. Consequat est consequat ea anim ex dolore mollit veniam aute eiusmod pariatur ut. Veniam Lorem aliquip sunt sint laborum labore sit nostrud proident ex commodo. Enim laboris magna culpa pariatur anim et aliqua est voluptate labore amet quis. Deserunt ex eiusmod id fugiat consequat et ullamco magna est consequat qui do elit officia. Consequat elit Lorem adipisicing excepteur occaecat irure pariatur est aliqua labore.\r\n", "registered": "2014-05-06T18:48:59-12:00", "latitude": 42.642488, "longitude": -45.954313, "tags": [ "amet", "reprehenderit", "enim", "nisi", "sint", "quis", "nulla" ], "friends": [ { "id": 0, "name": "Annette Welch" }, { "id": 1, "name": "Frye Durham" }, { "id": 2, "name": "Lara Woodward" } ], "greeting": "Hello, Mona Weaver! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29b020a7a4fc2634ea", "index": 4093, "guid": "9c8f6fba-236f-4d71-ac91-f99660b6108e", "isActive": true, "balance": "$3,911.18", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Kari Fowler", "gender": "female", "company": "CORIANDER", "email": "karifowler@coriander.com", "phone": "+1 (990) 474-3354", "address": "903 Herkimer Place, Byrnedale, New Hampshire, 3425", "about": "Consectetur consectetur in nostrud minim dolor magna aute nulla incididunt adipisicing aliquip. Veniam velit in laboris qui ipsum reprehenderit id ullamco commodo. Laboris esse occaecat ut veniam velit Lorem magna cupidatat dolore.\r\n", "registered": "2014-01-24T06:02:23-13:00", "latitude": -66.690316, "longitude": -135.496578, "tags": [ "pariatur", "labore", "dolor", "non", "exercitation", "velit", "sint" ], "friends": [ { "id": 0, "name": "Corina Holloway" }, { "id": 1, "name": "Marissa Britt" }, { "id": 2, "name": "Fulton Berg" } ], "greeting": "Hello, Kari Fowler! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2925b37ca4cc037c06", "index": 4094, "guid": "1ae99521-a185-4936-a0a2-6ac94ce0e08b", "isActive": false, "balance": "$1,165.55", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Belinda Moss", "gender": "female", "company": "APEX", "email": "belindamoss@apex.com", "phone": "+1 (808) 459-3677", "address": "136 Nova Court, Basye, Arkansas, 5637", "about": "Exercitation cillum consequat consectetur mollit anim nisi aute ut mollit. Dolor sunt sit exercitation duis commodo reprehenderit duis aliqua. Fugiat nulla commodo nulla culpa est aute adipisicing enim.\r\n", "registered": "2014-06-27T20:55:52-12:00", "latitude": -89.364434, "longitude": 34.210533, "tags": [ "nulla", "eiusmod", "aliquip", "dolor", "ipsum", "dolor", "tempor" ], "friends": [ { "id": 0, "name": "Wood Stark" }, { "id": 1, "name": "Guerra Mendoza" }, { "id": 2, "name": "Good Harrison" } ], "greeting": "Hello, Belinda Moss! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29b5ea0c5a53681514", "index": 4095, "guid": "ce1d2932-aa6a-4d38-9844-a0fbac40f083", "isActive": true, "balance": "$2,374.91", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Kathie Dickerson", "gender": "female", "company": "EVEREST", "email": "kathiedickerson@everest.com", "phone": "+1 (938) 448-3328", "address": "282 Adams Street, Irwin, Iowa, 8894", "about": "Quis velit deserunt irure commodo esse ipsum eiusmod enim nisi deserunt Lorem nostrud aute. Amet magna cillum ea laboris commodo veniam nisi ullamco. Anim cillum veniam cillum cupidatat. Officia officia et aliquip in dolore mollit excepteur commodo ea minim in sint consectetur ex. Ea enim aliqua excepteur laborum.\r\n", "registered": "2014-03-30T23:51:18-13:00", "latitude": 23.358221, "longitude": 76.115561, "tags": [ "aliquip", "culpa", "aliquip", "ad", "quis", "sunt", "velit" ], "friends": [ { "id": 0, "name": "Sandoval Arnold" }, { "id": 1, "name": "Molina Rodriquez" }, { "id": 2, "name": "Hyde Guy" } ], "greeting": "Hello, Kathie Dickerson! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29f5ad98c172b23ba5", "index": 4096, "guid": "c5834252-7872-4cb7-9adf-24747f7cccb7", "isActive": false, "balance": "$3,800.87", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Jordan Vang", "gender": "female", "company": "ROCKYARD", "email": "jordanvang@rockyard.com", "phone": "+1 (873) 493-2266", "address": "483 Maujer Street, Emison, Nebraska, 7161", "about": "Amet exercitation elit nisi et irure ullamco excepteur reprehenderit elit esse cillum ea exercitation. Velit exercitation et reprehenderit elit qui anim elit voluptate adipisicing. Amet dolore reprehenderit in culpa id adipisicing ea sint. Aliquip in mollit consequat irure nisi ex non id dolor consectetur qui.\r\n", "registered": "2014-05-12T17:51:46-12:00", "latitude": 31.628459, "longitude": -73.816767, "tags": [ "reprehenderit", "ipsum", "non", "cupidatat", "incididunt", "excepteur", "aliqua" ], "friends": [ { "id": 0, "name": "Haynes Lynn" }, { "id": 1, "name": "Stone York" }, { "id": 2, "name": "Herminia Erickson" } ], "greeting": "Hello, Jordan Vang! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea290851d8d0d85e8b1d", "index": 4097, "guid": "6f343931-2b91-4946-825f-acfd862452a8", "isActive": false, "balance": "$1,676.42", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Marianne Fields", "gender": "female", "company": "PASTURIA", "email": "mariannefields@pasturia.com", "phone": "+1 (986) 406-3709", "address": "126 Willoughby Street, Norris, District Of Columbia, 8976", "about": "Aute magna ad pariatur tempor quis. Ad proident veniam ex occaecat cupidatat sint officia esse. Labore in velit anim enim aute et aliquip velit.\r\n", "registered": "2014-03-01T10:02:41-13:00", "latitude": 37.651436, "longitude": 64.701937, "tags": [ "nisi", "dolore", "consectetur", "aute", "aliqua", "quis", "occaecat" ], "friends": [ { "id": 0, "name": "Doreen Aguilar" }, { "id": 1, "name": "Shawna Gomez" }, { "id": 2, "name": "Walls Stewart" } ], "greeting": "Hello, Marianne Fields! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29eb409c5c3a9aa289", "index": 4098, "guid": "0dda583e-df15-41e9-99b9-470aa0d2d5f7", "isActive": true, "balance": "$2,573.80", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Bruce Foster", "gender": "male", "company": "KRAGGLE", "email": "brucefoster@kraggle.com", "phone": "+1 (874) 575-3207", "address": "607 Middagh Street, Mulberry, New Jersey, 5507", "about": "Et sint sit sunt cillum. Est ullamco consectetur qui in. Ex id consectetur incididunt ad deserunt ullamco do voluptate est nisi amet laboris. Nostrud eu velit aliquip exercitation do sint elit amet voluptate ullamco irure magna. Velit irure aliquip amet cillum culpa culpa irure ut qui tempor commodo. Nostrud id ut excepteur nostrud. Laborum quis nisi magna fugiat elit excepteur laborum adipisicing deserunt anim exercitation incididunt sint.\r\n", "registered": "2014-04-06T08:20:28-12:00", "latitude": 33.584429, "longitude": 100.56735, "tags": [ "cillum", "eiusmod", "sunt", "do", "occaecat", "non", "et" ], "friends": [ { "id": 0, "name": "Booth Pacheco" }, { "id": 1, "name": "Tina Rodgers" }, { "id": 2, "name": "Hunt Meyers" } ], "greeting": "Hello, Bruce Foster! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2911ce90e23fa1b201", "index": 4099, "guid": "fbda5974-0741-41dc-8f4c-2c237762f1bb", "isActive": false, "balance": "$3,296.41", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Ruth Roach", "gender": "female", "company": "EXOPLODE", "email": "ruthroach@exoplode.com", "phone": "+1 (972) 522-3543", "address": "761 Nichols Avenue, Jacksonburg, Palau, 8161", "about": "Voluptate dolor dolor reprehenderit cillum officia labore est ipsum mollit anim ullamco pariatur dolor ut. Laborum dolor incididunt qui ipsum Lorem tempor. Ad non sint ut incididunt consequat magna irure nostrud exercitation nostrud. Id labore non veniam nulla duis aliquip aliqua duis irure voluptate magna consectetur reprehenderit. Cillum elit quis quis anim cupidatat sit.\r\n", "registered": "2014-03-25T04:12:25-13:00", "latitude": 16.77588, "longitude": -48.762786, "tags": [ "ipsum", "anim", "nulla", "amet", "duis", "ullamco", "do" ], "friends": [ { "id": 0, "name": "Martina Gallegos" }, { "id": 1, "name": "Blake Stokes" }, { "id": 2, "name": "Roman Marks" } ], "greeting": "Hello, Ruth Roach! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea291fbc295d29cfbe9f", "index": 4100, "guid": "05f21aeb-c848-48d7-9954-f7a9ed46438b", "isActive": true, "balance": "$3,601.11", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Morton Woods", "gender": "male", "company": "HATOLOGY", "email": "mortonwoods@hatology.com", "phone": "+1 (802) 557-2214", "address": "311 Moultrie Street, Rodanthe, Puerto Rico, 5943", "about": "Pariatur duis enim sit culpa ipsum anim eu enim qui. Exercitation enim minim ex ullamco ut ex occaecat laboris duis ipsum nisi tempor sit. Anim eu fugiat duis occaecat eu veniam proident id.\r\n", "registered": "2014-04-16T05:50:41-12:00", "latitude": 74.813563, "longitude": -102.754461, "tags": [ "amet", "exercitation", "incididunt", "ad", "in", "irure", "in" ], "friends": [ { "id": 0, "name": "Stella Briggs" }, { "id": 1, "name": "Trevino Serrano" }, { "id": 2, "name": "Munoz Cooper" } ], "greeting": "Hello, Morton Woods! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea295d101f7f87fccade", "index": 4101, "guid": "84495526-b9d0-4655-9d7a-914197bfda2b", "isActive": false, "balance": "$2,162.95", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Barbara Floyd", "gender": "female", "company": "GENEKOM", "email": "barbarafloyd@genekom.com", "phone": "+1 (903) 436-2183", "address": "716 Turner Place, Sunwest, California, 2908", "about": "Velit deserunt duis nisi officia velit dolor laboris magna ut consequat. Velit nisi ex culpa et consequat fugiat consectetur. Commodo culpa dolore et nulla nostrud et cillum adipisicing eu pariatur adipisicing sit do. Reprehenderit minim laborum minim ullamco mollit Lorem id laborum cillum Lorem. Occaecat sint officia Lorem excepteur.\r\n", "registered": "2014-03-26T02:22:46-13:00", "latitude": -81.604701, "longitude": -117.372596, "tags": [ "laborum", "nulla", "voluptate", "duis", "aliqua", "ut", "et" ], "friends": [ { "id": 0, "name": "Sheppard Stevenson" }, { "id": 1, "name": "Clayton Sargent" }, { "id": 2, "name": "Kerri Johnston" } ], "greeting": "Hello, Barbara Floyd! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29ce8a564957f16121", "index": 4102, "guid": "6886c88b-2dd4-4c5d-ac5f-589264c9acf0", "isActive": true, "balance": "$2,350.98", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Katina Valenzuela", "gender": "female", "company": "HARMONEY", "email": "katinavalenzuela@harmoney.com", "phone": "+1 (862) 431-3367", "address": "694 Havens Place, Longbranch, Vermont, 2229", "about": "Officia aliqua consectetur enim dolore reprehenderit et esse nulla mollit deserunt. Labore laborum eu sint velit. Commodo ad laborum minim aliqua magna culpa. Laboris ullamco ut occaecat reprehenderit cillum qui cupidatat pariatur sunt quis amet Lorem ipsum est.\r\n", "registered": "2014-07-22T03:27:44-12:00", "latitude": -30.584146, "longitude": 82.713288, "tags": [ "reprehenderit", "cupidatat", "do", "eiusmod", "do", "non", "dolore" ], "friends": [ { "id": 0, "name": "Addie Richards" }, { "id": 1, "name": "Turner Duffy" }, { "id": 2, "name": "Kendra Blanchard" } ], "greeting": "Hello, Katina Valenzuela! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29ce53bdee03f83c34", "index": 4103, "guid": "870f3579-4a12-45ec-b389-cb028630c17e", "isActive": false, "balance": "$2,484.34", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Keisha Craig", "gender": "female", "company": "MATRIXITY", "email": "keishacraig@matrixity.com", "phone": "+1 (853) 568-2173", "address": "647 Lake Avenue, Clayville, Indiana, 2108", "about": "Sunt do et ipsum minim occaecat ea laborum ea culpa sunt. Proident minim est cillum deserunt veniam excepteur laborum minim magna dolore ex nisi. Voluptate laboris adipisicing magna mollit sunt elit eu dolore.\r\n", "registered": "2014-05-14T21:08:44-12:00", "latitude": -7.045118, "longitude": -115.726923, "tags": [ "esse", "magna", "cupidatat", "proident", "qui", "velit", "quis" ], "friends": [ { "id": 0, "name": "Travis Byrd" }, { "id": 1, "name": "Schwartz White" }, { "id": 2, "name": "Jacobs Hensley" } ], "greeting": "Hello, Keisha Craig! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29696b427f2403ff61", "index": 4104, "guid": "000597ad-32ff-47a8-aed0-6588fb7e32ac", "isActive": false, "balance": "$1,081.79", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Isabel Martinez", "gender": "female", "company": "ROCKLOGIC", "email": "isabelmartinez@rocklogic.com", "phone": "+1 (960) 516-3479", "address": "778 Newton Street, Gulf, Illinois, 6365", "about": "Dolore aute irure do sit incididunt tempor eiusmod ad sint dolore incididunt enim dolore magna. Et proident deserunt culpa in duis aute enim reprehenderit laborum nisi quis sit magna. Lorem sunt do adipisicing veniam mollit Lorem minim aliquip nisi magna. Dolor occaecat ut ex ullamco esse est aute ipsum veniam. Adipisicing ea occaecat culpa reprehenderit esse velit nisi cupidatat tempor exercitation labore aute aliquip elit. Irure consectetur et deserunt ex ullamco ea laboris elit veniam exercitation quis sint.\r\n", "registered": "2014-01-02T20:34:49-13:00", "latitude": 79.230258, "longitude": -16.271857, "tags": [ "laborum", "sint", "mollit", "qui", "voluptate", "sint", "culpa" ], "friends": [ { "id": 0, "name": "Sharron Richmond" }, { "id": 1, "name": "Welch Mcclure" }, { "id": 2, "name": "Carpenter Peters" } ], "greeting": "Hello, Isabel Martinez! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea293ba0e9286d5914ec", "index": 4105, "guid": "c7460231-d66c-4af6-a9d1-b883a590cffa", "isActive": true, "balance": "$3,031.63", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Blair Lara", "gender": "male", "company": "CAXT", "email": "blairlara@caxt.com", "phone": "+1 (800) 577-3016", "address": "674 Hubbard Place, Bentley, South Carolina, 7880", "about": "Sunt nulla exercitation adipisicing cupidatat voluptate in ipsum. Non dolor cupidatat pariatur aliqua mollit et do et in fugiat aliqua. Mollit culpa fugiat adipisicing esse excepteur ipsum laborum reprehenderit ut. Reprehenderit sunt adipisicing dolor fugiat consectetur officia nulla magna Lorem magna elit. Tempor do nostrud esse nulla nostrud non nulla elit labore sunt aliqua duis. Pariatur eiusmod nisi veniam officia est exercitation et do adipisicing exercitation labore veniam reprehenderit proident.\r\n", "registered": "2014-01-24T02:41:27-13:00", "latitude": 3.715255, "longitude": -2.123134, "tags": [ "nulla", "cillum", "veniam", "eiusmod", "reprehenderit", "ipsum", "minim" ], "friends": [ { "id": 0, "name": "Taylor Cleveland" }, { "id": 1, "name": "Palmer Howell" }, { "id": 2, "name": "King Nielsen" } ], "greeting": "Hello, Blair Lara! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29684c8cd6a2a0983b", "index": 4106, "guid": "a0aef9a4-2dfe-4c05-9de1-a8ce5939d0ea", "isActive": true, "balance": "$3,670.93", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Marshall Rhodes", "gender": "male", "company": "LIQUICOM", "email": "marshallrhodes@liquicom.com", "phone": "+1 (977) 499-2258", "address": "902 Nolans Lane, Alleghenyville, American Samoa, 8121", "about": "Sunt mollit esse commodo enim. Excepteur officia qui excepteur exercitation adipisicing excepteur in sunt anim enim occaecat sit et. Aute consequat nulla anim consequat culpa officia sint fugiat id velit est aliqua qui. Incididunt voluptate exercitation sunt nostrud pariatur adipisicing quis ad anim aute magna cillum.\r\n", "registered": "2014-06-28T15:38:46-12:00", "latitude": 45.547478, "longitude": -27.550848, "tags": [ "commodo", "pariatur", "est", "cillum", "consequat", "nisi", "nulla" ], "friends": [ { "id": 0, "name": "Cecile Hartman" }, { "id": 1, "name": "Joseph Travis" }, { "id": 2, "name": "Wilma Wilson" } ], "greeting": "Hello, Marshall Rhodes! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29661b45faba80a0ea", "index": 4107, "guid": "34c6d6ac-e8ad-4ada-9163-dd42e3773e70", "isActive": true, "balance": "$1,853.24", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Andrews Pace", "gender": "male", "company": "NEOCENT", "email": "andrewspace@neocent.com", "phone": "+1 (904) 538-2677", "address": "113 Williamsburg Street, Bison, Delaware, 5767", "about": "Ex laboris labore cillum anim non occaecat anim minim nostrud irure exercitation adipisicing anim aliqua. Sunt magna Lorem dolor aliqua consequat quis id Lorem sit pariatur anim ipsum nulla fugiat. Magna cupidatat eu id esse aliqua quis. Et laboris dolor dolore mollit mollit officia minim et elit eu. Velit est occaecat eiusmod sit labore eu officia deserunt laboris voluptate irure occaecat occaecat. Exercitation esse exercitation consequat excepteur fugiat excepteur magna mollit ullamco veniam officia pariatur quis eiusmod. Consectetur Lorem deserunt sit quis enim excepteur cillum.\r\n", "registered": "2014-07-20T23:44:54-12:00", "latitude": 52.427525, "longitude": 144.23645, "tags": [ "proident", "est", "anim", "laboris", "enim", "aliqua", "deserunt" ], "friends": [ { "id": 0, "name": "Gomez Sparks" }, { "id": 1, "name": "Johns Patterson" }, { "id": 2, "name": "Simone Wood" } ], "greeting": "Hello, Andrews Pace! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea290aea61ee8f838268", "index": 4108, "guid": "4841a8f7-f5b4-49a2-b88c-17c3b9ca5785", "isActive": false, "balance": "$3,876.11", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Tricia Rodriguez", "gender": "female", "company": "ZOMBOID", "email": "triciarodriguez@zomboid.com", "phone": "+1 (988) 475-2625", "address": "622 Hampton Place, Brethren, Pennsylvania, 5324", "about": "Reprehenderit exercitation anim consequat anim voluptate ullamco id Lorem consectetur deserunt voluptate consectetur. Ea sunt ad labore ex minim irure eu ut aliqua. Tempor non nulla non pariatur. Ullamco quis esse reprehenderit eiusmod ut pariatur ullamco aute ullamco nulla Lorem ut ex ea. Consectetur occaecat enim occaecat duis enim est reprehenderit veniam do. Minim irure aute excepteur id aliqua elit culpa duis enim nisi est aute.\r\n", "registered": "2014-01-12T19:03:45-13:00", "latitude": -66.846444, "longitude": -101.288915, "tags": [ "adipisicing", "ullamco", "exercitation", "officia", "eiusmod", "dolor", "eu" ], "friends": [ { "id": 0, "name": "Terrie Bates" }, { "id": 1, "name": "Kelley Shepard" }, { "id": 2, "name": "Leon Mercado" } ], "greeting": "Hello, Tricia Rodriguez! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29fb742942542c8ce3", "index": 4109, "guid": "12f2f1ea-f72a-4ac9-804e-523c669ecac7", "isActive": false, "balance": "$1,607.46", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Walton Fitzpatrick", "gender": "male", "company": "UNEEQ", "email": "waltonfitzpatrick@uneeq.com", "phone": "+1 (968) 520-3987", "address": "224 Pooles Lane, Wheaton, Georgia, 3499", "about": "Ullamco cillum culpa duis ea sint nisi officia deserunt eu minim. Quis cillum aliqua aute dolor cupidatat irure laborum. Proident sunt esse veniam exercitation ad cupidatat sunt voluptate eiusmod deserunt sit sit. Amet consequat nisi proident commodo non. Qui cupidatat irure sit id elit.\r\n", "registered": "2014-08-08T06:52:46-12:00", "latitude": -6.715238, "longitude": -177.894774, "tags": [ "tempor", "magna", "ad", "anim", "laboris", "est", "proident" ], "friends": [ { "id": 0, "name": "Madeline Hart" }, { "id": 1, "name": "Roberta Poole" }, { "id": 2, "name": "Santiago Franks" } ], "greeting": "Hello, Walton Fitzpatrick! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29bd4595ef769967bd", "index": 4110, "guid": "3a61aca6-56f3-48bf-a7d9-32d1724a5038", "isActive": true, "balance": "$1,895.10", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Frost Watson", "gender": "male", "company": "MARQET", "email": "frostwatson@marqet.com", "phone": "+1 (911) 467-2764", "address": "815 Ashland Place, Otranto, North Dakota, 1356", "about": "Veniam voluptate aute nisi exercitation id adipisicing anim sit et. Exercitation minim officia cupidatat occaecat cupidatat ullamco cillum ipsum officia labore proident cupidatat minim fugiat. Voluptate cupidatat mollit dolor est deserunt et anim id eu elit ea in. Amet anim quis ullamco do velit est. Dolor exercitation fugiat exercitation dolore.\r\n", "registered": "2014-08-27T23:15:47-12:00", "latitude": -65.988655, "longitude": 82.424924, "tags": [ "ad", "reprehenderit", "cillum", "dolore", "esse", "proident", "incididunt" ], "friends": [ { "id": 0, "name": "Gladys Shaw" }, { "id": 1, "name": "Greene Smith" }, { "id": 2, "name": "Anna Bell" } ], "greeting": "Hello, Frost Watson! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29a6afd395cf45fb56", "index": 4111, "guid": "41bba08a-e375-4fcd-90b8-0160c1934675", "isActive": true, "balance": "$1,508.25", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Henson Simon", "gender": "male", "company": "ERSUM", "email": "hensonsimon@ersum.com", "phone": "+1 (896) 470-3822", "address": "997 Herzl Street, Rosburg, Louisiana, 3802", "about": "Id fugiat fugiat dolor qui culpa. Velit sint labore mollit veniam minim qui fugiat excepteur fugiat sit in incididunt anim. Nostrud consectetur quis ad labore nostrud excepteur ad voluptate proident nostrud sunt reprehenderit Lorem.\r\n", "registered": "2014-06-26T09:59:08-12:00", "latitude": 86.291294, "longitude": -2.106149, "tags": [ "non", "elit", "adipisicing", "et", "quis", "pariatur", "minim" ], "friends": [ { "id": 0, "name": "Rodgers Orr" }, { "id": 1, "name": "Beatriz Page" }, { "id": 2, "name": "Richard Greene" } ], "greeting": "Hello, Henson Simon! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea296d3e79c95b1ba076", "index": 4112, "guid": "4c9f7c6b-5d86-45bf-bef2-4ddf992b382c", "isActive": false, "balance": "$2,936.16", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Payne Flowers", "gender": "male", "company": "ZILCH", "email": "payneflowers@zilch.com", "phone": "+1 (818) 487-3707", "address": "912 Coles Street, Echo, Northern Mariana Islands, 7199", "about": "Tempor in id nisi id in culpa proident commodo Lorem. Non est occaecat enim veniam. Mollit irure magna enim pariatur esse non elit. Aute voluptate sit nulla commodo. Dolore eiusmod dolor aliqua quis nisi mollit officia reprehenderit Lorem occaecat eu tempor sint sunt. Ea cillum deserunt labore est anim pariatur anim eiusmod commodo ut veniam velit.\r\n", "registered": "2014-01-07T04:33:24-13:00", "latitude": 45.759401, "longitude": 76.27686, "tags": [ "culpa", "nostrud", "et", "deserunt", "duis", "adipisicing", "aliquip" ], "friends": [ { "id": 0, "name": "Berta Spencer" }, { "id": 1, "name": "Adele Booker" }, { "id": 2, "name": "Robin Vinson" } ], "greeting": "Hello, Payne Flowers! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29bbc4d8b6d7d5b0dd", "index": 4113, "guid": "52c1f78f-e187-4336-8cf9-53fb4f3b6856", "isActive": true, "balance": "$1,128.30", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Reid Craft", "gender": "male", "company": "MIRACLIS", "email": "reidcraft@miraclis.com", "phone": "+1 (968) 552-3749", "address": "274 Clifton Place, Sussex, Colorado, 7038", "about": "Amet mollit enim fugiat excepteur ullamco laboris nulla aliqua ipsum. Deserunt duis laboris ex voluptate est minim sit. Qui nisi nostrud labore duis velit laboris ea labore Lorem dolor qui exercitation culpa nisi. Irure in irure id proident deserunt id ea amet enim mollit magna aliquip cupidatat ex.\r\n", "registered": "2014-09-10T19:45:51-12:00", "latitude": 75.921706, "longitude": -174.854718, "tags": [ "do", "anim", "amet", "enim", "ea", "laboris", "cillum" ], "friends": [ { "id": 0, "name": "Lorraine Frazier" }, { "id": 1, "name": "Whitley Guerrero" }, { "id": 2, "name": "Mai Francis" } ], "greeting": "Hello, Reid Craft! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2912b1368ccd9ed72d", "index": 4114, "guid": "9cb89ddc-fd80-4b11-99c2-eb09d4fa3b66", "isActive": true, "balance": "$1,547.93", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Estrada Wiley", "gender": "male", "company": "GEEKOL", "email": "estradawiley@geekol.com", "phone": "+1 (919) 557-2876", "address": "914 Plymouth Street, Ripley, Idaho, 8685", "about": "Dolore ad sint officia fugiat. Nulla proident ipsum laborum aute ea sint pariatur. Labore minim consequat nulla aute nostrud sint quis occaecat non deserunt occaecat mollit. Et Lorem veniam laborum pariatur labore occaecat do.\r\n", "registered": "2014-01-14T10:50:29-13:00", "latitude": -53.156994, "longitude": -123.380145, "tags": [ "sunt", "ipsum", "ad", "sit", "consectetur", "est", "culpa" ], "friends": [ { "id": 0, "name": "Jolene Kelly" }, { "id": 1, "name": "Sonia Klein" }, { "id": 2, "name": "Malone Mcbride" } ], "greeting": "Hello, Estrada Wiley! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea291c135c684b5720e2", "index": 4115, "guid": "69c59f3f-d6a1-43f3-98ff-0c816b089767", "isActive": false, "balance": "$1,340.07", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Bette Carey", "gender": "female", "company": "BUGSALL", "email": "bettecarey@bugsall.com", "phone": "+1 (815) 431-3407", "address": "737 Pershing Loop, Craig, Marshall Islands, 1596", "about": "Voluptate in dolore id officia. Excepteur cupidatat ex nostrud excepteur esse mollit mollit ipsum nostrud et. Consectetur deserunt ut sint qui in commodo deserunt. Ipsum consectetur officia exercitation deserunt et qui sint officia proident enim sit.\r\n", "registered": "2014-07-04T07:37:58-12:00", "latitude": -3.057138, "longitude": -149.864589, "tags": [ "fugiat", "cillum", "sunt", "elit", "aliquip", "magna", "voluptate" ], "friends": [ { "id": 0, "name": "Mooney Fry" }, { "id": 1, "name": "Gallegos Beasley" }, { "id": 2, "name": "Kristi Gaines" } ], "greeting": "Hello, Bette Carey! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29eb58b855d3a531c0", "index": 4116, "guid": "dd723e28-cfb5-4662-8eec-16a87a347c17", "isActive": true, "balance": "$2,705.14", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Cain Warner", "gender": "male", "company": "AQUAMATE", "email": "cainwarner@aquamate.com", "phone": "+1 (958) 440-3500", "address": "852 Garland Court, Axis, New York, 5967", "about": "Lorem ex incididunt ex eiusmod ad. Nisi nulla aliquip Lorem incididunt ea tempor. Proident Lorem eiusmod officia minim officia sit reprehenderit proident amet. Ipsum anim cillum in velit officia qui pariatur. Dolor laboris cillum proident duis aute deserunt velit qui. Elit ullamco cillum dolore magna veniam eiusmod voluptate quis et.\r\n", "registered": "2014-08-29T08:07:17-12:00", "latitude": -65.9326, "longitude": -69.53161, "tags": [ "culpa", "non", "dolor", "incididunt", "labore", "reprehenderit", "magna" ], "friends": [ { "id": 0, "name": "Alvarez Henry" }, { "id": 1, "name": "Floyd Clark" }, { "id": 2, "name": "Brennan Baird" } ], "greeting": "Hello, Cain Warner! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea299c1eb7c19feb759a", "index": 4117, "guid": "dc54c51d-ae53-4289-9858-ca9bd69f7f2b", "isActive": false, "balance": "$3,416.69", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Mcpherson Noel", "gender": "male", "company": "KEENGEN", "email": "mcphersonnoel@keengen.com", "phone": "+1 (892) 588-2628", "address": "554 Colonial Court, Homestead, Guam, 1654", "about": "Deserunt veniam cillum in est eiusmod fugiat duis non in anim tempor sint. Non tempor pariatur fugiat ea. Et aute id minim anim deserunt qui laborum id consequat eiusmod. Et Lorem in dolor veniam excepteur do ea qui proident officia quis laboris proident exercitation. Enim non duis commodo mollit occaecat magna ea amet in. Proident sit tempor cupidatat dolore cillum ullamco.\r\n", "registered": "2014-04-13T20:31:29-12:00", "latitude": 55.799375, "longitude": 149.234913, "tags": [ "ipsum", "minim", "non", "ex", "amet", "duis", "cillum" ], "friends": [ { "id": 0, "name": "Paige Dunlap" }, { "id": 1, "name": "Kramer Kramer" }, { "id": 2, "name": "Aimee Hubbard" } ], "greeting": "Hello, Mcpherson Noel! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea297fba5bd97b7a7f2a", "index": 4118, "guid": "d4021fff-02f7-4d47-8ef0-d894f0c7f65c", "isActive": true, "balance": "$1,025.64", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Ophelia Petersen", "gender": "female", "company": "PLASMOSIS", "email": "opheliapetersen@plasmosis.com", "phone": "+1 (988) 412-3593", "address": "114 Provost Street, Interlochen, Virgin Islands, 1964", "about": "Aute anim irure amet ut nulla esse nisi nulla et minim. Et consectetur sint in minim consequat non incididunt. Sunt consequat non minim ea velit veniam cillum proident incididunt fugiat occaecat. Esse ea elit velit est mollit sint esse aliquip qui nostrud. Nostrud dolore fugiat do id eiusmod non aliquip sit adipisicing eiusmod pariatur.\r\n", "registered": "2014-01-09T09:52:41-13:00", "latitude": 0.094188, "longitude": 175.982239, "tags": [ "aliqua", "voluptate", "qui", "velit", "nostrud", "ut", "ad" ], "friends": [ { "id": 0, "name": "Carter Ford" }, { "id": 1, "name": "Juana Buck" }, { "id": 2, "name": "Mitchell Harrington" } ], "greeting": "Hello, Ophelia Petersen! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea299c80a4098976bd4c", "index": 4119, "guid": "6567698e-8fca-41b1-a897-5798c5c11726", "isActive": false, "balance": "$3,545.64", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Mccarty Johns", "gender": "male", "company": "ISOSWITCH", "email": "mccartyjohns@isoswitch.com", "phone": "+1 (965) 423-2401", "address": "774 Division Place, Fairfield, Massachusetts, 6379", "about": "Occaecat irure culpa exercitation cillum. Mollit ullamco deserunt nisi voluptate elit commodo laborum id consectetur ex reprehenderit irure sint amet. Nisi in veniam in exercitation. Cupidatat non laboris mollit dolor excepteur velit.\r\n", "registered": "2014-09-21T05:22:52-12:00", "latitude": -44.283689, "longitude": -172.623958, "tags": [ "dolor", "laboris", "est", "qui", "cillum", "amet", "elit" ], "friends": [ { "id": 0, "name": "Hayes Montoya" }, { "id": 1, "name": "Jane Berger" }, { "id": 2, "name": "Cherry Osborne" } ], "greeting": "Hello, Mccarty Johns! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29c5c3f13bc4fc0920", "index": 4120, "guid": "082d5056-50b5-4fb5-a063-1ae6f1f08d3e", "isActive": false, "balance": "$2,649.84", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Claudine Mathis", "gender": "female", "company": "TWIGGERY", "email": "claudinemathis@twiggery.com", "phone": "+1 (857) 476-2054", "address": "487 Merit Court, Drummond, Utah, 3271", "about": "Mollit commodo est proident officia in est sit eiusmod elit duis pariatur tempor pariatur. Tempor ipsum labore ut proident incididunt tempor amet enim enim. Commodo qui amet incididunt nostrud. Sit enim magna Lorem nisi excepteur cupidatat pariatur. Irure laborum culpa mollit laborum sit aute ullamco. In consectetur aliquip labore deserunt irure adipisicing aliqua et pariatur adipisicing et esse cillum. Sunt pariatur eu proident eu minim officia do ipsum ipsum nulla.\r\n", "registered": "2014-04-07T08:21:45-12:00", "latitude": -46.764868, "longitude": -155.731196, "tags": [ "tempor", "culpa", "cillum", "et", "duis", "do", "aute" ], "friends": [ { "id": 0, "name": "Whitfield Melton" }, { "id": 1, "name": "Milagros Eaton" }, { "id": 2, "name": "Rachel Mays" } ], "greeting": "Hello, Claudine Mathis! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea296a9d614626eb879b", "index": 4121, "guid": "7ca8b23a-4cfc-40fd-8e5f-5ae2aa6c7a72", "isActive": true, "balance": "$3,848.94", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Yolanda Gill", "gender": "female", "company": "ANDERSHUN", "email": "yolandagill@andershun.com", "phone": "+1 (810) 504-3474", "address": "135 Whitty Lane, Hamilton, Montana, 3470", "about": "Incididunt et aliquip excepteur ea magna voluptate aliqua irure excepteur sint esse enim do. Voluptate qui et irure mollit nisi nisi elit non. Aute proident ad officia elit ullamco tempor sunt. Ea cillum et proident incididunt ullamco nulla et. Reprehenderit est ut esse occaecat elit.\r\n", "registered": "2014-01-13T16:02:22-13:00", "latitude": -65.255997, "longitude": 157.459117, "tags": [ "occaecat", "nulla", "reprehenderit", "enim", "minim", "eu", "sunt" ], "friends": [ { "id": 0, "name": "Stokes Wheeler" }, { "id": 1, "name": "Dona Carr" }, { "id": 2, "name": "Bertie Wolfe" } ], "greeting": "Hello, Yolanda Gill! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea293ba7f59801dba09e", "index": 4122, "guid": "3ec02d63-cd29-42e1-a099-4a3a27d938ee", "isActive": false, "balance": "$2,705.05", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Christian Huber", "gender": "male", "company": "CIPROMOX", "email": "christianhuber@cipromox.com", "phone": "+1 (945) 557-2960", "address": "366 Madeline Court, Chestnut, Wisconsin, 7427", "about": "Minim minim non ut adipisicing duis enim deserunt excepteur sint exercitation adipisicing esse dolore officia. Fugiat culpa nostrud ex occaecat cupidatat do qui excepteur dolor. Sint veniam sit veniam aute exercitation.\r\n", "registered": "2014-01-19T21:58:10-13:00", "latitude": 61.360629, "longitude": -19.901826, "tags": [ "duis", "dolore", "commodo", "dolore", "in", "nisi", "enim" ], "friends": [ { "id": 0, "name": "Whitaker Pierce" }, { "id": 1, "name": "Wallace Merritt" }, { "id": 2, "name": "Dora Aguirre" } ], "greeting": "Hello, Christian Huber! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2978e83c8562c8175f", "index": 4123, "guid": "d37c47ae-5fd5-4d03-9b99-289f05dafa08", "isActive": false, "balance": "$2,985.19", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Hull Luna", "gender": "male", "company": "ROTODYNE", "email": "hullluna@rotodyne.com", "phone": "+1 (984) 563-2986", "address": "624 Bayard Street, Mappsville, Maine, 2643", "about": "Occaecat aliqua deserunt sint enim elit in. Lorem ullamco irure enim irure et anim aute id. Minim in consequat velit pariatur consequat. Ea cupidatat exercitation in id est. Consequat eu ullamco eiusmod voluptate magna cillum pariatur sunt pariatur sunt consequat nulla. Nostrud ipsum do sunt consectetur ullamco nisi eu. Deserunt fugiat irure enim sunt nostrud consectetur deserunt esse reprehenderit aliquip incididunt ullamco culpa.\r\n", "registered": "2014-01-26T04:43:55-13:00", "latitude": 79.439894, "longitude": 161.539519, "tags": [ "commodo", "ut", "ea", "nisi", "ipsum", "est", "cupidatat" ], "friends": [ { "id": 0, "name": "Martinez Bowen" }, { "id": 1, "name": "Woodard Mueller" }, { "id": 2, "name": "Clarice Duncan" } ], "greeting": "Hello, Hull Luna! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea298904b98dd8a98dd9", "index": 4124, "guid": "8ef6fdd4-3d74-43a1-9eeb-0e41a8c080ff", "isActive": false, "balance": "$3,485.89", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Rogers Burt", "gender": "male", "company": "OMATOM", "email": "rogersburt@omatom.com", "phone": "+1 (839) 441-3271", "address": "398 Bowne Street, Masthope, Virginia, 6769", "about": "Incididunt id sunt ut magna amet in ipsum qui. Fugiat enim dolor adipisicing nulla officia pariatur aliqua pariatur. Incididunt cupidatat qui officia exercitation elit occaecat occaecat. Eu do deserunt officia do. Ut cillum quis culpa eiusmod ullamco amet dolor culpa dolore dolore velit sit. Mollit officia fugiat culpa commodo. Culpa eu nostrud proident proident et aute duis mollit consectetur irure.\r\n", "registered": "2014-03-12T23:00:48-13:00", "latitude": -66.218865, "longitude": -132.701426, "tags": [ "nostrud", "Lorem", "amet", "enim", "laborum", "sunt", "aliquip" ], "friends": [ { "id": 0, "name": "Dianne Saunders" }, { "id": 1, "name": "Bernadette Caldwell" }, { "id": 2, "name": "Jeanne House" } ], "greeting": "Hello, Rogers Burt! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29ab729b60cac82f39", "index": 4125, "guid": "0f245ff8-e77c-4eee-8ba2-f953c2fa0578", "isActive": true, "balance": "$2,096.09", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Kelly Dudley", "gender": "female", "company": "XPLOR", "email": "kellydudley@xplor.com", "phone": "+1 (863) 422-2615", "address": "148 Ingraham Street, Joes, Kentucky, 2555", "about": "Sunt tempor quis occaecat elit laboris. Nostrud adipisicing elit pariatur est aliquip qui id ea cupidatat mollit. Esse Lorem et officia do dolor anim fugiat deserunt ut quis. Amet et do veniam enim ullamco eiusmod voluptate sit eiusmod reprehenderit nulla non.\r\n", "registered": "2014-05-29T22:38:52-12:00", "latitude": 34.550191, "longitude": 173.373524, "tags": [ "minim", "sunt", "excepteur", "do", "minim", "consectetur", "laboris" ], "friends": [ { "id": 0, "name": "Beth Wynn" }, { "id": 1, "name": "Barron Wilkinson" }, { "id": 2, "name": "Leanne Bailey" } ], "greeting": "Hello, Kelly Dudley! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29060d5fcc69afc039", "index": 4126, "guid": "4198818b-a511-4de3-93b1-6ef983f9b471", "isActive": false, "balance": "$1,630.14", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Noble Barry", "gender": "male", "company": "OVOLO", "email": "noblebarry@ovolo.com", "phone": "+1 (835) 580-2064", "address": "110 Canda Avenue, Roosevelt, Connecticut, 7541", "about": "Esse irure enim laborum esse reprehenderit ipsum amet voluptate ipsum culpa exercitation cupidatat. Amet ad qui sunt non pariatur culpa proident nostrud ullamco do cupidatat consectetur. Duis magna consectetur esse aute tempor duis reprehenderit laborum quis consectetur qui fugiat cillum velit. Adipisicing proident culpa laborum quis ut eiusmod magna. Elit incididunt consectetur commodo culpa cupidatat nulla do incididunt laborum esse reprehenderit elit magna veniam.\r\n", "registered": "2014-01-02T19:09:51-13:00", "latitude": 52.543839, "longitude": -35.214818, "tags": [ "culpa", "tempor", "aute", "ipsum", "dolor", "elit", "fugiat" ], "friends": [ { "id": 0, "name": "Jeanette Atkins" }, { "id": 1, "name": "Alexis Donaldson" }, { "id": 2, "name": "Mathews Hutchinson" } ], "greeting": "Hello, Noble Barry! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29b680e3206a558a5a", "index": 4127, "guid": "a6c9d338-0f51-41b0-9ede-c13062701d17", "isActive": false, "balance": "$2,635.82", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Jenna Decker", "gender": "female", "company": "NORALEX", "email": "jennadecker@noralex.com", "phone": "+1 (879) 560-3503", "address": "411 Portland Avenue, Guilford, Mississippi, 1361", "about": "Qui laborum deserunt velit officia. Deserunt veniam nulla ex veniam ea fugiat nostrud nisi. Ad aliquip officia deserunt cupidatat duis fugiat sunt mollit nulla ea tempor id incididunt velit. Dolore tempor id pariatur enim fugiat laborum minim ex aute.\r\n", "registered": "2014-03-16T13:18:34-13:00", "latitude": -32.187054, "longitude": -165.055652, "tags": [ "id", "nisi", "ex", "ea", "sint", "esse", "deserunt" ], "friends": [ { "id": 0, "name": "Raymond Cochran" }, { "id": 1, "name": "Beatrice Mckay" }, { "id": 2, "name": "Cathy Simpson" } ], "greeting": "Hello, Jenna Decker! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea290cb9a1aba12891e5", "index": 4128, "guid": "c9a386bd-7eb2-4b49-baef-92975c3bb90c", "isActive": true, "balance": "$2,225.49", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Lawson Everett", "gender": "male", "company": "AUSTECH", "email": "lawsoneverett@austech.com", "phone": "+1 (875) 571-3895", "address": "512 Polhemus Place, Stockdale, Washington, 6457", "about": "Ea ex irure irure fugiat ad excepteur sunt ullamco consectetur et Lorem commodo Lorem. Anim eu labore duis dolore exercitation. Nostrud tempor culpa irure exercitation ullamco minim et. Exercitation sit fugiat nisi velit. Ut dolor officia qui laborum eu excepteur id consectetur cupidatat anim ipsum voluptate. Cupidatat reprehenderit dolor Lorem laboris et ipsum duis deserunt nisi quis esse nulla.\r\n", "registered": "2014-09-15T11:23:04-12:00", "latitude": 57.411373, "longitude": 88.706957, "tags": [ "consequat", "id", "excepteur", "ex", "sunt", "voluptate", "aute" ], "friends": [ { "id": 0, "name": "Janie Delgado" }, { "id": 1, "name": "Sophia Mcgowan" }, { "id": 2, "name": "Debora Fleming" } ], "greeting": "Hello, Lawson Everett! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea295a7354ea736db8c2", "index": 4129, "guid": "713ea970-4815-4159-91c6-21d18cbc3533", "isActive": true, "balance": "$2,352.74", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Madelyn Burton", "gender": "female", "company": "DIGIGEN", "email": "madelynburton@digigen.com", "phone": "+1 (925) 445-2565", "address": "304 Maple Street, Dale, Tennessee, 2827", "about": "Excepteur ut irure nisi consectetur cupidatat non est. Sunt in velit duis minim voluptate ea quis. Excepteur sit consectetur velit labore ullamco commodo. Nisi sunt in mollit et aliquip. Est do deserunt id elit excepteur laboris nulla commodo labore. Et ullamco aliquip dolor deserunt fugiat consequat proident eu qui elit. Mollit reprehenderit nostrud amet eiusmod.\r\n", "registered": "2014-07-30T23:48:42-12:00", "latitude": 86.837006, "longitude": -174.103804, "tags": [ "exercitation", "ullamco", "aliqua", "quis", "enim", "nostrud", "qui" ], "friends": [ { "id": 0, "name": "Klein Graves" }, { "id": 1, "name": "Pope Potts" }, { "id": 2, "name": "Rose Holland" } ], "greeting": "Hello, Madelyn Burton! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea291d569154d86be1a1", "index": 4130, "guid": "21eca583-422d-4a0a-a998-56295b7fa42d", "isActive": false, "balance": "$3,209.57", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Lynn Hewitt", "gender": "female", "company": "XURBAN", "email": "lynnhewitt@xurban.com", "phone": "+1 (824) 425-3060", "address": "672 Cooper Street, Westerville, Alabama, 3874", "about": "Esse nulla irure adipisicing eiusmod exercitation pariatur voluptate. Ex dolor labore ad commodo. Aliqua aliqua aute dolor officia sunt eu est consectetur nulla laborum dolore est eu adipisicing. Esse amet laborum eiusmod commodo nisi cillum. Ut ullamco enim reprehenderit nulla ipsum mollit elit consequat veniam laborum nulla Lorem. Quis irure commodo elit dolore labore sit officia aliquip est eu ea veniam.\r\n", "registered": "2014-08-06T17:25:13-12:00", "latitude": -36.474099, "longitude": 161.197403, "tags": [ "mollit", "do", "pariatur", "ea", "deserunt", "officia", "ut" ], "friends": [ { "id": 0, "name": "Lori Porter" }, { "id": 1, "name": "Cohen Callahan" }, { "id": 2, "name": "Maxine Christensen" } ], "greeting": "Hello, Lynn Hewitt! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29e7c979fffb977df4", "index": 4131, "guid": "74e3e77b-66d6-455f-8429-0036b19c8900", "isActive": true, "balance": "$1,738.72", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Slater Salazar", "gender": "male", "company": "OVATION", "email": "slatersalazar@ovation.com", "phone": "+1 (914) 560-3180", "address": "155 Prescott Place, Veyo, Ohio, 9592", "about": "Ad exercitation aliqua amet et ad proident nulla nulla excepteur irure aliquip tempor duis. Qui excepteur et ea ex ad ipsum. Amet sunt laborum occaecat enim amet enim enim qui ad eu. Tempor ea est aute irure ea mollit. Ex sunt occaecat do nulla excepteur. Ut non enim qui voluptate non irure dolor do ex esse aliqua.\r\n", "registered": "2014-01-23T04:59:36-13:00", "latitude": -66.777128, "longitude": -7.568052, "tags": [ "eiusmod", "cillum", "excepteur", "quis", "labore", "consequat", "deserunt" ], "friends": [ { "id": 0, "name": "Holcomb Emerson" }, { "id": 1, "name": "Rena Velasquez" }, { "id": 2, "name": "April Chapman" } ], "greeting": "Hello, Slater Salazar! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29998e18395642cb1f", "index": 4132, "guid": "9fe934c2-dd88-4543-92ea-648392553483", "isActive": false, "balance": "$1,969.07", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Shields Jennings", "gender": "male", "company": "GYNK", "email": "shieldsjennings@gynk.com", "phone": "+1 (892) 442-2489", "address": "497 Cook Street, Cutter, Hawaii, 2382", "about": "Incididunt veniam deserunt aliquip ipsum incididunt anim. Magna eu amet labore ullamco cupidatat culpa ad. Exercitation aute commodo labore occaecat do velit proident sunt eu sint ex dolor.\r\n", "registered": "2014-07-14T21:11:50-12:00", "latitude": 75.433294, "longitude": -63.776229, "tags": [ "elit", "ut", "enim", "laborum", "incididunt", "ad", "Lorem" ], "friends": [ { "id": 0, "name": "Hardy Logan" }, { "id": 1, "name": "Wooten Sloan" }, { "id": 2, "name": "Heath Lamb" } ], "greeting": "Hello, Shields Jennings! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29dcd16393e01cf6e0", "index": 4133, "guid": "0d6f592a-2cd3-414c-8eca-11e555bbcc73", "isActive": true, "balance": "$3,059.10", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Alfreda Jensen", "gender": "female", "company": "PORTICO", "email": "alfredajensen@portico.com", "phone": "+1 (856) 578-3903", "address": "404 Pioneer Street, Matheny, New Mexico, 1631", "about": "Pariatur veniam esse enim non mollit proident in. Dolor minim id esse excepteur occaecat. Ad sint cillum eu sit occaecat officia non fugiat.\r\n", "registered": "2014-06-18T20:44:50-12:00", "latitude": -1.121799, "longitude": 49.784633, "tags": [ "Lorem", "duis", "magna", "ullamco", "do", "excepteur", "velit" ], "friends": [ { "id": 0, "name": "Davidson Carrillo" }, { "id": 1, "name": "Mercer Mccarthy" }, { "id": 2, "name": "Burris Salas" } ], "greeting": "Hello, Alfreda Jensen! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29ee87e8e6083fe521", "index": 4134, "guid": "677b786d-26f6-44fd-85b2-503acfa2e5ab", "isActive": false, "balance": "$1,324.46", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Ronda Castillo", "gender": "female", "company": "ZAGGLES", "email": "rondacastillo@zaggles.com", "phone": "+1 (806) 543-2232", "address": "559 Downing Street, Robinette, Maryland, 9695", "about": "Reprehenderit officia eiusmod officia consequat officia nisi. Nostrud tempor ut nostrud quis anim consectetur et minim. Occaecat aute labore dolor anim tempor eu laboris sint sit dolore officia sit minim nulla.\r\n", "registered": "2014-07-02T08:33:42-12:00", "latitude": -1.787101, "longitude": -116.246645, "tags": [ "sunt", "excepteur", "sunt", "proident", "culpa", "occaecat", "in" ], "friends": [ { "id": 0, "name": "Marisa Tanner" }, { "id": 1, "name": "Preston Chase" }, { "id": 2, "name": "Patel Suarez" } ], "greeting": "Hello, Ronda Castillo! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea295be9ee738b6bef98", "index": 4135, "guid": "52c36e3a-a218-42b3-a41a-99624f7d49fe", "isActive": true, "balance": "$3,750.74", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Paula Leonard", "gender": "female", "company": "PANZENT", "email": "paulaleonard@panzent.com", "phone": "+1 (932) 544-3775", "address": "220 Knight Court, Monument, Alaska, 515", "about": "Laboris ad nostrud laboris occaecat aliqua fugiat. Aute eu officia labore id reprehenderit ullamco. Dolor fugiat minim minim ad irure cupidatat officia magna aute est.\r\n", "registered": "2014-09-20T14:19:59-12:00", "latitude": -62.619068, "longitude": 133.423063, "tags": [ "Lorem", "sit", "et", "eu", "sint", "deserunt", "occaecat" ], "friends": [ { "id": 0, "name": "Rosemary Castro" }, { "id": 1, "name": "Katherine Burks" }, { "id": 2, "name": "Lakeisha Perry" } ], "greeting": "Hello, Paula Leonard! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2999b4723cacb44de4", "index": 4136, "guid": "ac8fc5b3-09fd-4c03-a414-4d4f71a1a1bd", "isActive": false, "balance": "$2,684.31", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Landry Hansen", "gender": "male", "company": "CINCYR", "email": "landryhansen@cincyr.com", "phone": "+1 (916) 474-3427", "address": "224 Manhattan Avenue, Lloyd, Arizona, 1027", "about": "Sunt anim sit ut commodo voluptate ea nulla ut laborum quis duis commodo. Magna ad proident ea velit minim velit ut cillum do ex consectetur Lorem elit. Magna culpa dolore laborum cillum voluptate tempor duis. Quis occaecat qui ipsum eu sint enim et ex duis labore. Eu velit nostrud ex pariatur velit nulla.\r\n", "registered": "2014-08-02T05:42:26-12:00", "latitude": 12.900158, "longitude": -150.971131, "tags": [ "exercitation", "cupidatat", "duis", "duis", "pariatur", "irure", "elit" ], "friends": [ { "id": 0, "name": "Fry Avery" }, { "id": 1, "name": "Mueller Holman" }, { "id": 2, "name": "Jodi Boyle" } ], "greeting": "Hello, Landry Hansen! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2923dc94842e759796", "index": 4137, "guid": "c9bc9379-28d6-4844-92b5-facc90da1265", "isActive": false, "balance": "$1,233.46", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Lena Bauer", "gender": "female", "company": "FITCORE", "email": "lenabauer@fitcore.com", "phone": "+1 (836) 511-2608", "address": "437 Ivan Court, Grapeview, Federated States Of Micronesia, 4465", "about": "Elit culpa nisi laborum labore irure. Est voluptate id laborum dolor culpa labore voluptate. Magna reprehenderit magna Lorem ut est veniam voluptate eu sint sunt sunt. Dolor irure pariatur sit do ut eiusmod duis qui veniam sunt nostrud cupidatat in consectetur. Occaecat do quis magna tempor do incididunt Lorem amet consequat id aliquip do.\r\n", "registered": "2014-02-06T07:33:57-13:00", "latitude": -1.734693, "longitude": -64.282627, "tags": [ "irure", "et", "occaecat", "Lorem", "anim", "ea", "anim" ], "friends": [ { "id": 0, "name": "Beulah Avila" }, { "id": 1, "name": "Griffith Vazquez" }, { "id": 2, "name": "Lana Tucker" } ], "greeting": "Hello, Lena Bauer! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea295eef973fe5c79108", "index": 4138, "guid": "173dcc07-d82d-457c-bef5-fc41653fab18", "isActive": true, "balance": "$1,408.79", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Chase Swanson", "gender": "male", "company": "FLEETMIX", "email": "chaseswanson@fleetmix.com", "phone": "+1 (942) 570-2134", "address": "968 Duryea Place, Yonah, Oklahoma, 7558", "about": "Ea ut eiusmod est laborum cupidatat officia esse mollit eu voluptate incididunt. Labore do do minim sunt veniam proident. Culpa pariatur aute minim id laboris deserunt ex. Labore ex reprehenderit qui dolor dolor ut ea mollit. Eiusmod enim nulla sint ex eu ipsum sit sint incididunt irure id.\r\n", "registered": "2014-06-06T22:47:08-12:00", "latitude": -84.072222, "longitude": 131.98661, "tags": [ "qui", "anim", "cillum", "est", "magna", "eiusmod", "ad" ], "friends": [ { "id": 0, "name": "Kinney Miles" }, { "id": 1, "name": "Tara Hays" }, { "id": 2, "name": "Angel Whitley" } ], "greeting": "Hello, Chase Swanson! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2920c24f8cb7c99c9b", "index": 4139, "guid": "0a2ba957-a8fe-4293-a876-768c7ba1286d", "isActive": true, "balance": "$1,030.31", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Nicholson Stone", "gender": "male", "company": "KNOWLYSIS", "email": "nicholsonstone@knowlysis.com", "phone": "+1 (978) 401-2381", "address": "369 Rockwell Place, Chical, Michigan, 1807", "about": "Magna aute Lorem officia id nostrud elit fugiat cupidatat. Anim aliqua deserunt nostrud non. Minim anim esse esse elit anim occaecat consequat laboris. Incididunt cillum nostrud consequat velit mollit labore proident sunt sint consequat occaecat ut sunt cupidatat. Excepteur est nulla cillum fugiat culpa officia excepteur proident adipisicing. Nulla cillum labore labore eiusmod et veniam ex exercitation ea.\r\n", "registered": "2014-06-26T00:27:03-12:00", "latitude": 12.376148, "longitude": -156.583672, "tags": [ "in", "eiusmod", "amet", "veniam", "id", "fugiat", "fugiat" ], "friends": [ { "id": 0, "name": "Zamora Villarreal" }, { "id": 1, "name": "Flossie Howe" }, { "id": 2, "name": "Henry Keith" } ], "greeting": "Hello, Nicholson Stone! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29b242c89e9cabf69e", "index": 4140, "guid": "e7359eae-2095-440e-b677-31a00c249f9b", "isActive": false, "balance": "$1,076.53", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Blackburn Mayo", "gender": "male", "company": "VIXO", "email": "blackburnmayo@vixo.com", "phone": "+1 (822) 524-2891", "address": "196 Albemarle Road, Advance, Kansas, 1201", "about": "Amet velit est cupidatat labore. Lorem dolor aute sit laborum irure veniam dolore velit ea nulla. Culpa cillum duis ex officia. Magna duis laborum veniam voluptate culpa quis dolore duis et.\r\n", "registered": "2014-05-12T07:19:52-12:00", "latitude": -9.598013, "longitude": -126.549908, "tags": [ "amet", "enim", "aliquip", "esse", "duis", "sit", "eu" ], "friends": [ { "id": 0, "name": "Hazel Rosales" }, { "id": 1, "name": "Tisha Mason" }, { "id": 2, "name": "Holder Warren" } ], "greeting": "Hello, Blackburn Mayo! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea292dd5c6a3ec9d7ab8", "index": 4141, "guid": "3549255f-a6e6-49c5-b535-62a343c70594", "isActive": true, "balance": "$3,809.23", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Leonard Barlow", "gender": "male", "company": "HOTCAKES", "email": "leonardbarlow@hotcakes.com", "phone": "+1 (866) 484-2129", "address": "959 Scott Avenue, Kimmell, South Dakota, 7689", "about": "Eu commodo do aliqua aliqua eiusmod culpa elit. Eiusmod eiusmod nulla ex aute aliquip voluptate et nulla commodo est. Culpa ullamco ipsum quis exercitation officia ad sunt veniam qui non aliqua. Cillum irure sit culpa eiusmod magna minim sit duis ad est commodo velit dolore.\r\n", "registered": "2014-02-14T14:33:08-13:00", "latitude": 35.319317, "longitude": 159.379357, "tags": [ "id", "ex", "nostrud", "dolor", "ex", "Lorem", "et" ], "friends": [ { "id": 0, "name": "Jones Davis" }, { "id": 1, "name": "Deena Solis" }, { "id": 2, "name": "Jackson Riggs" } ], "greeting": "Hello, Leonard Barlow! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2935573e6325183eee", "index": 4142, "guid": "773a12e8-6bfb-4a99-be9d-f1402341efc7", "isActive": false, "balance": "$3,324.97", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Roxie Matthews", "gender": "female", "company": "FROSNEX", "email": "roxiematthews@frosnex.com", "phone": "+1 (902) 526-3040", "address": "690 Crosby Avenue, Slovan, West Virginia, 1370", "about": "Minim sint nostrud irure reprehenderit non. Non do irure cupidatat pariatur eiusmod est. Incididunt fugiat incididunt cillum tempor cillum irure minim proident anim eu proident adipisicing qui ut. Ullamco ad enim adipisicing occaecat sit.\r\n", "registered": "2014-04-21T13:21:55-12:00", "latitude": 10.396764, "longitude": 167.162555, "tags": [ "ipsum", "nisi", "aliquip", "enim", "adipisicing", "incididunt", "veniam" ], "friends": [ { "id": 0, "name": "Verna Petty" }, { "id": 1, "name": "Gena Marshall" }, { "id": 2, "name": "Candice Black" } ], "greeting": "Hello, Roxie Matthews! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29a52231e39181f8a1", "index": 4143, "guid": "5692f4fb-274c-4c15-b6fb-2dda308731d9", "isActive": true, "balance": "$1,676.61", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Effie Sykes", "gender": "female", "company": "FANGOLD", "email": "effiesykes@fangold.com", "phone": "+1 (925) 565-2843", "address": "868 Kingston Avenue, Ona, Texas, 2898", "about": "Reprehenderit sint mollit adipisicing est non. Ad tempor incididunt nulla culpa ea laborum. Officia veniam labore adipisicing officia proident aliqua anim fugiat occaecat. Deserunt laborum culpa dolor nostrud mollit officia cillum deserunt laborum aliquip ullamco pariatur non consequat. Aliqua ullamco commodo excepteur ad magna. Cupidatat sunt laborum non id Lorem fugiat ea ut quis in enim mollit occaecat.\r\n", "registered": "2014-08-07T16:59:06-12:00", "latitude": 37.594016, "longitude": 176.987127, "tags": [ "cillum", "ad", "anim", "Lorem", "incididunt", "aliquip", "magna" ], "friends": [ { "id": 0, "name": "Mayer Becker" }, { "id": 1, "name": "Brittany Cox" }, { "id": 2, "name": "Tamara Murphy" } ], "greeting": "Hello, Effie Sykes! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea297b1ef9fed0cedc2c", "index": 4144, "guid": "c6d73451-e269-4e9b-8fb0-48c13ad4d5c3", "isActive": false, "balance": "$1,763.18", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Sims Kim", "gender": "male", "company": "EXIAND", "email": "simskim@exiand.com", "phone": "+1 (814) 433-3587", "address": "232 Sackman Street, Idledale, Oregon, 7108", "about": "Duis velit esse eiusmod esse culpa anim enim. Anim incididunt labore sunt qui velit minim velit exercitation minim ullamco sit amet eu nostrud. Velit eiusmod non quis exercitation minim et tempor esse adipisicing. Deserunt sunt dolore nostrud id magna laborum excepteur exercitation id Lorem aute incididunt ullamco. Aute proident dolor quis officia. Id nostrud ut elit quis. Adipisicing consectetur deserunt elit magna.\r\n", "registered": "2014-06-24T10:29:40-12:00", "latitude": 75.436024, "longitude": 28.875177, "tags": [ "dolor", "dolore", "eu", "eu", "consectetur", "sit", "dolor" ], "friends": [ { "id": 0, "name": "Erika Stafford" }, { "id": 1, "name": "Santos Daniel" }, { "id": 2, "name": "Velez Hudson" } ], "greeting": "Hello, Sims Kim! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea290219be051fb358e3", "index": 4145, "guid": "be60d466-f435-475b-84e8-def6421fe53a", "isActive": true, "balance": "$3,447.51", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Haley Snow", "gender": "male", "company": "TURNABOUT", "email": "haleysnow@turnabout.com", "phone": "+1 (904) 471-2007", "address": "676 Village Road, Nicholson, Nevada, 9493", "about": "Velit commodo reprehenderit tempor nulla enim exercitation deserunt ex voluptate ad et commodo in. Minim voluptate ullamco laboris dolore. Cillum Lorem et non laboris laboris eu. Pariatur eiusmod in nulla esse est voluptate exercitation amet sit ea id do enim veniam. Quis amet eiusmod cupidatat duis laboris consequat ex. Elit non do amet magna ullamco dolore veniam cupidatat. Aute ea cupidatat tempor ipsum.\r\n", "registered": "2014-07-23T07:50:32-12:00", "latitude": 52.743104, "longitude": 168.429662, "tags": [ "nulla", "excepteur", "ex", "proident", "minim", "occaecat", "amet" ], "friends": [ { "id": 0, "name": "Mayo Patrick" }, { "id": 1, "name": "Burke Padilla" }, { "id": 2, "name": "Huber Melendez" } ], "greeting": "Hello, Haley Snow! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea299ca8ed53b220191c", "index": 4146, "guid": "279c8070-a1fd-4d2f-a97d-6c910702a3fa", "isActive": false, "balance": "$3,405.78", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Dawn Vasquez", "gender": "female", "company": "PLASMOS", "email": "dawnvasquez@plasmos.com", "phone": "+1 (966) 594-3342", "address": "785 Coyle Street, Madaket, Minnesota, 9216", "about": "Pariatur id in occaecat sunt laboris deserunt quis esse. Id tempor ipsum nulla ex magna consectetur anim esse aute elit consequat proident. Occaecat eu quis aliquip anim eu.\r\n", "registered": "2014-08-26T12:04:37-12:00", "latitude": -46.635182, "longitude": -64.703035, "tags": [ "ea", "excepteur", "aliqua", "eu", "excepteur", "cillum", "nisi" ], "friends": [ { "id": 0, "name": "Alejandra Tyler" }, { "id": 1, "name": "Rowe Mooney" }, { "id": 2, "name": "Tyson Garrison" } ], "greeting": "Hello, Dawn Vasquez! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29f0cc18805c50b80f", "index": 4147, "guid": "8c60cc32-5deb-45e2-9912-fbd16a0b7170", "isActive": true, "balance": "$2,495.54", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Lilly Best", "gender": "female", "company": "ISOTERNIA", "email": "lillybest@isoternia.com", "phone": "+1 (859) 469-3718", "address": "536 Junius Street, Crayne, Missouri, 7546", "about": "Cillum id dolore eiusmod aliquip irure fugiat dolor ea consectetur voluptate. Veniam ea reprehenderit Lorem enim. Sit enim qui cillum velit nostrud magna et. Deserunt enim minim fugiat quis enim cupidatat nulla officia aliquip officia excepteur elit enim amet. Commodo officia ut id sunt ad. Nostrud incididunt cupidatat aute proident ea et fugiat sint amet.\r\n", "registered": "2014-02-01T16:18:47-13:00", "latitude": 45.102891, "longitude": -144.099591, "tags": [ "elit", "velit", "ea", "duis", "deserunt", "sit", "eu" ], "friends": [ { "id": 0, "name": "Ferrell Mccormick" }, { "id": 1, "name": "Gilliam Cross" }, { "id": 2, "name": "Annie Albert" } ], "greeting": "Hello, Lilly Best! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2983a82094fa06762e", "index": 4148, "guid": "ad61dbec-d43f-4cc9-930c-24e557cebed4", "isActive": false, "balance": "$3,683.96", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Blanca Newton", "gender": "female", "company": "COMVEYER", "email": "blancanewton@comveyer.com", "phone": "+1 (948) 579-2377", "address": "872 Brevoort Place, Escondida, Rhode Island, 7149", "about": "Ea tempor minim cupidatat qui deserunt fugiat sit aute proident amet. Irure mollit pariatur duis aliqua irure exercitation veniam. Amet minim duis aliqua veniam in proident elit culpa ut laboris ex.\r\n", "registered": "2014-08-15T22:47:04-12:00", "latitude": -6.202215, "longitude": 135.047622, "tags": [ "do", "est", "irure", "cupidatat", "et", "occaecat", "sunt" ], "friends": [ { "id": 0, "name": "Tameka Kemp" }, { "id": 1, "name": "Clay Nelson" }, { "id": 2, "name": "Jerry Duke" } ], "greeting": "Hello, Blanca Newton! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea295bf6fea2cf09d647", "index": 4149, "guid": "6a5535da-7b3f-4946-af9b-09191819f663", "isActive": false, "balance": "$2,476.39", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Wall Perez", "gender": "male", "company": "ONTALITY", "email": "wallperez@ontality.com", "phone": "+1 (945) 590-2667", "address": "833 Wythe Place, Lodoga, Florida, 5595", "about": "Ut anim elit nulla cillum ad dolore occaecat officia eu esse et duis. Irure ipsum et pariatur ea irure ut anim nulla. Ea ullamco do exercitation reprehenderit ex eu anim duis in sint ea officia. Dolore exercitation sint veniam dolor fugiat nisi. Sint veniam voluptate anim qui veniam sint nostrud dolor occaecat incididunt est.\r\n", "registered": "2014-04-24T09:28:32-12:00", "latitude": 17.569871, "longitude": 171.506893, "tags": [ "quis", "proident", "est", "consectetur", "non", "do", "consectetur" ], "friends": [ { "id": 0, "name": "Morgan Hoffman" }, { "id": 1, "name": "Lynne Waller" }, { "id": 2, "name": "Morrison Bowman" } ], "greeting": "Hello, Wall Perez! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29973626127fb26a8e", "index": 4150, "guid": "d7aff705-c30b-4ab7-8230-c4f7b76fb69d", "isActive": false, "balance": "$2,466.35", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Deloris Morales", "gender": "female", "company": "BISBA", "email": "delorismorales@bisba.com", "phone": "+1 (975) 536-2691", "address": "802 Calyer Street, Titanic, North Carolina, 1753", "about": "Laboris tempor adipisicing anim consectetur amet laborum ullamco mollit voluptate minim voluptate exercitation. Et mollit fugiat nulla occaecat laboris occaecat non duis qui Lorem voluptate. Ad qui in Lorem laboris qui fugiat deserunt aliqua nostrud dolore dolor qui. Lorem id consectetur esse cupidatat ea laborum dolore. Laborum et id sit proident aliquip.\r\n", "registered": "2014-08-18T13:05:04-12:00", "latitude": 55.764757, "longitude": 72.576131, "tags": [ "ipsum", "quis", "eu", "laboris", "ex", "ullamco", "duis" ], "friends": [ { "id": 0, "name": "Bowman Mejia" }, { "id": 1, "name": "Shanna Hurst" }, { "id": 2, "name": "Marla Kennedy" } ], "greeting": "Hello, Deloris Morales! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2955e30a38539e63a5", "index": 4151, "guid": "d1accc67-708e-4628-9326-b4250ad5f71f", "isActive": false, "balance": "$1,406.61", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Wright Farrell", "gender": "male", "company": "TASMANIA", "email": "wrightfarrell@tasmania.com", "phone": "+1 (863) 550-2721", "address": "496 Abbey Court, Edneyville, New Hampshire, 1666", "about": "Non elit veniam sint amet quis ullamco anim amet in mollit proident labore tempor ipsum. Fugiat laboris ullamco et tempor magna consectetur non nulla irure tempor elit aute do magna. Ullamco veniam do labore incididunt culpa veniam est minim.\r\n", "registered": "2014-06-20T21:14:10-12:00", "latitude": 31.287352, "longitude": 94.274881, "tags": [ "sint", "laboris", "tempor", "adipisicing", "non", "nisi", "est" ], "friends": [ { "id": 0, "name": "Oneil Doyle" }, { "id": 1, "name": "Robbie Hoover" }, { "id": 2, "name": "Deanna Dalton" } ], "greeting": "Hello, Wright Farrell! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29b3059b17caf8691a", "index": 4152, "guid": "df60b1a8-35bb-4010-9377-5d0fe001019c", "isActive": true, "balance": "$1,929.66", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Tonya Mcdowell", "gender": "female", "company": "EMTRAC", "email": "tonyamcdowell@emtrac.com", "phone": "+1 (976) 414-2845", "address": "228 Stewart Street, Westphalia, Arkansas, 6153", "about": "Sunt nisi quis aliqua culpa. Consequat aliquip reprehenderit consequat irure culpa sunt labore mollit. Adipisicing nisi enim qui laborum officia proident qui non. Veniam excepteur non aliquip aliqua irure proident incididunt pariatur dolore in. In voluptate veniam mollit non aliqua minim. Culpa incididunt sint nisi magna laborum ea non ullamco dolore do veniam adipisicing sunt.\r\n", "registered": "2014-01-21T20:00:25-13:00", "latitude": 62.202366, "longitude": -163.565672, "tags": [ "cupidatat", "esse", "id", "aliqua", "ipsum", "ullamco", "consectetur" ], "friends": [ { "id": 0, "name": "Pierce Marsh" }, { "id": 1, "name": "Sharlene Juarez" }, { "id": 2, "name": "Anderson Dillard" } ], "greeting": "Hello, Tonya Mcdowell! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea299edd5272c3f57024", "index": 4153, "guid": "d9a149e4-04b4-4cef-b76d-0092b00832ad", "isActive": true, "balance": "$1,161.28", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Claudette Lee", "gender": "female", "company": "ENERFORCE", "email": "claudettelee@enerforce.com", "phone": "+1 (974) 486-2012", "address": "892 Fay Court, Lacomb, Iowa, 5368", "about": "Proident cillum anim consectetur consectetur esse irure voluptate elit tempor cupidatat eiusmod. Duis ipsum velit non eiusmod dolor et tempor nisi. Incididunt exercitation dolor non laboris culpa consectetur non Lorem laborum dolore magna. Ex dolor qui nostrud culpa labore. Eu culpa nisi eiusmod aliqua. Proident nostrud cupidatat pariatur aliquip cillum non ex sint voluptate cupidatat duis. Eiusmod culpa velit sunt anim.\r\n", "registered": "2014-01-06T03:43:24-13:00", "latitude": -16.127714, "longitude": -89.370149, "tags": [ "consectetur", "eiusmod", "qui", "excepteur", "do", "amet", "cupidatat" ], "friends": [ { "id": 0, "name": "Kaitlin Mayer" }, { "id": 1, "name": "Pearson Beard" }, { "id": 2, "name": "Kimberley Randolph" } ], "greeting": "Hello, Claudette Lee! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29d4594513214bef92", "index": 4154, "guid": "012557a0-6bfb-4ac9-b6a5-c4e22359bc4d", "isActive": true, "balance": "$3,822.02", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Brittney Rocha", "gender": "female", "company": "PUSHCART", "email": "brittneyrocha@pushcart.com", "phone": "+1 (899) 538-3666", "address": "103 Morgan Avenue, Martinez, Nebraska, 7956", "about": "Consequat duis veniam labore proident amet voluptate ut in ad. Excepteur consequat ea id tempor dolor officia elit proident nisi ullamco. Sit deserunt consequat veniam laboris. Qui tempor reprehenderit nulla ad nisi aliquip. Labore excepteur anim dolore aliqua laboris aliqua id cillum aute culpa quis. Nostrud officia dolore eiusmod aliqua commodo duis. Fugiat amet est aliqua ex nisi officia culpa reprehenderit.\r\n", "registered": "2014-05-21T09:07:31-12:00", "latitude": 14.420535, "longitude": -9.865934, "tags": [ "Lorem", "consectetur", "et", "sunt", "ipsum", "fugiat", "minim" ], "friends": [ { "id": 0, "name": "Cortez Owen" }, { "id": 1, "name": "Matthews Justice" }, { "id": 2, "name": "Padilla Walters" } ], "greeting": "Hello, Brittney Rocha! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29540b900a8a49f10f", "index": 4155, "guid": "98537660-3594-46d7-b196-e251df863ca0", "isActive": true, "balance": "$1,423.80", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Ofelia Moon", "gender": "female", "company": "ISOPLEX", "email": "ofeliamoon@isoplex.com", "phone": "+1 (907) 414-2409", "address": "204 Vandam Street, Bluetown, District Of Columbia, 3846", "about": "Cillum tempor elit anim veniam Lorem exercitation aliqua aliquip ipsum. Occaecat culpa consectetur adipisicing nisi qui nisi excepteur laboris fugiat eiusmod. Aliqua ex laborum do dolore culpa exercitation laboris culpa cupidatat qui do.\r\n", "registered": "2014-01-16T01:52:46-13:00", "latitude": -87.616206, "longitude": 92.200632, "tags": [ "duis", "exercitation", "tempor", "adipisicing", "aliquip", "nulla", "eiusmod" ], "friends": [ { "id": 0, "name": "Snow Byers" }, { "id": 1, "name": "Katelyn Mcdaniel" }, { "id": 2, "name": "Saunders Pearson" } ], "greeting": "Hello, Ofelia Moon! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29a60713b424d32c40", "index": 4156, "guid": "ab4684ca-d6d2-40c9-bfa9-a450bcc172fb", "isActive": true, "balance": "$2,751.81", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Zimmerman Mcintosh", "gender": "male", "company": "GENESYNK", "email": "zimmermanmcintosh@genesynk.com", "phone": "+1 (977) 508-3404", "address": "480 Cox Place, Gallina, New Jersey, 7635", "about": "Laboris elit nisi mollit dolor aute. Est cupidatat reprehenderit cupidatat Lorem. Ullamco sit sint id enim enim non magna culpa officia laboris ea laboris qui enim.\r\n", "registered": "2014-07-13T14:33:09-12:00", "latitude": -68.467772, "longitude": 145.227505, "tags": [ "proident", "aliquip", "irure", "dolore", "commodo", "cupidatat", "aliquip" ], "friends": [ { "id": 0, "name": "Cook Robertson" }, { "id": 1, "name": "Marsh Sherman" }, { "id": 2, "name": "Alexandria Gillespie" } ], "greeting": "Hello, Zimmerman Mcintosh! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29edd7b93c2ac244db", "index": 4157, "guid": "be38ec74-66bc-4983-9d12-db9d01808f26", "isActive": false, "balance": "$3,114.54", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Burnett Glass", "gender": "male", "company": "REALMO", "email": "burnettglass@realmo.com", "phone": "+1 (896) 600-3759", "address": "906 Verona Place, Bartley, Palau, 2214", "about": "Est dolore voluptate anim proident. Proident fugiat labore eiusmod nostrud. Voluptate amet quis duis tempor aliqua voluptate exercitation cupidatat. Veniam ut ad elit et non ea proident pariatur magna sunt ipsum quis tempor ipsum. Ullamco est amet mollit ut tempor culpa. Incididunt ut minim irure culpa dolor dolore pariatur exercitation occaecat sunt anim irure elit. Aute in deserunt irure culpa duis qui tempor laboris ad ea.\r\n", "registered": "2014-02-09T02:40:24-13:00", "latitude": 71.296033, "longitude": -89.784027, "tags": [ "est", "officia", "nisi", "proident", "ipsum", "consequat", "dolore" ], "friends": [ { "id": 0, "name": "Monique Wells" }, { "id": 1, "name": "Andrea Love" }, { "id": 2, "name": "Christa Owens" } ], "greeting": "Hello, Burnett Glass! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea290b183eff6b36d28f", "index": 4158, "guid": "c8398bed-9ed6-4d72-9efb-2919c4697562", "isActive": true, "balance": "$3,280.05", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Alicia Levy", "gender": "female", "company": "SHEPARD", "email": "alicialevy@shepard.com", "phone": "+1 (957) 551-3084", "address": "113 Falmouth Street, Noxen, Puerto Rico, 433", "about": "Sunt et aute quis quis exercitation eu exercitation proident exercitation commodo. Velit dolore ut enim qui ullamco. Officia cupidatat Lorem Lorem ea dolor. Mollit eiusmod esse consectetur elit amet non ullamco nostrud dolor amet mollit ex. Non minim deserunt anim occaecat anim ullamco aliquip deserunt ad amet ex excepteur nisi. Enim adipisicing consectetur Lorem magna aliquip veniam labore duis et duis dolore irure id irure. Elit aute aliqua duis fugiat.\r\n", "registered": "2014-02-28T00:46:05-13:00", "latitude": -50.791314, "longitude": -82.298391, "tags": [ "deserunt", "in", "nostrud", "cupidatat", "incididunt", "dolore", "incididunt" ], "friends": [ { "id": 0, "name": "Farrell Dillon" }, { "id": 1, "name": "Mary Williamson" }, { "id": 2, "name": "Edwards Ware" } ], "greeting": "Hello, Alicia Levy! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea294009a45965d5e945", "index": 4159, "guid": "fe12bac6-7d73-442f-9963-d93b9190f4ef", "isActive": false, "balance": "$2,927.04", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Tammie Alston", "gender": "female", "company": "INSOURCE", "email": "tammiealston@insource.com", "phone": "+1 (869) 429-2227", "address": "437 Stoddard Place, Loomis, California, 7364", "about": "Aliquip occaecat exercitation dolore labore reprehenderit pariatur. Non commodo nulla qui nulla nisi ea cillum labore commodo exercitation aliqua exercitation ut. Excepteur exercitation do dolor eiusmod laborum sunt qui excepteur consectetur do. Non minim qui deserunt quis deserunt occaecat. Consequat ullamco sint excepteur sit non irure esse consectetur nulla duis id aliqua aute. Aliqua est ipsum sit Lorem non ut anim deserunt.\r\n", "registered": "2014-06-14T19:53:20-12:00", "latitude": 88.297578, "longitude": -71.199213, "tags": [ "mollit", "veniam", "adipisicing", "laborum", "minim", "velit", "pariatur" ], "friends": [ { "id": 0, "name": "Day Nieves" }, { "id": 1, "name": "Mcgowan Deleon" }, { "id": 2, "name": "Rene Parrish" } ], "greeting": "Hello, Tammie Alston! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea290027f124a8ddd33f", "index": 4160, "guid": "de1e8041-ee31-46db-9331-f725d1fb8021", "isActive": false, "balance": "$3,169.49", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Natalia Farley", "gender": "female", "company": "PEARLESSA", "email": "nataliafarley@pearlessa.com", "phone": "+1 (880) 493-2504", "address": "680 Dover Street, Wawona, Vermont, 3552", "about": "Pariatur incididunt veniam adipisicing consequat nisi. Deserunt est Lorem culpa elit occaecat ullamco anim cupidatat. Consectetur sint nostrud mollit sunt veniam cillum tempor labore aute. Nulla dolor exercitation amet mollit esse. Occaecat mollit veniam culpa occaecat minim ea reprehenderit do est ad mollit eu culpa. Exercitation culpa nisi aliqua dolore amet proident occaecat sint. Consectetur esse mollit mollit minim magna ipsum cupidatat nisi consectetur.\r\n", "registered": "2014-07-25T06:29:14-12:00", "latitude": -46.695968, "longitude": -125.162145, "tags": [ "duis", "dolor", "laborum", "et", "deserunt", "nulla", "do" ], "friends": [ { "id": 0, "name": "Cecilia Pugh" }, { "id": 1, "name": "Beck Barber" }, { "id": 2, "name": "Jacqueline Hayes" } ], "greeting": "Hello, Natalia Farley! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29c2776dc76c37622b", "index": 4161, "guid": "b2d6514e-9544-4768-967f-15afda5331f3", "isActive": true, "balance": "$3,545.61", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Vasquez Pennington", "gender": "male", "company": "ARTWORLDS", "email": "vasquezpennington@artworlds.com", "phone": "+1 (859) 445-3155", "address": "401 Kent Avenue, Vandiver, Indiana, 8183", "about": "Nisi Lorem pariatur elit cillum. Mollit voluptate esse laborum aute aliqua dolor est labore veniam fugiat. Non adipisicing duis velit laborum aliquip velit fugiat non nisi laborum.\r\n", "registered": "2014-03-05T09:30:11-13:00", "latitude": -64.95119, "longitude": 58.051738, "tags": [ "sint", "nisi", "elit", "Lorem", "ut", "quis", "ad" ], "friends": [ { "id": 0, "name": "Marcy May" }, { "id": 1, "name": "Heidi Hyde" }, { "id": 2, "name": "Brianna Nunez" } ], "greeting": "Hello, Vasquez Pennington! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29c62ac84e4a895e9f", "index": 4162, "guid": "d4a24177-b704-489f-8807-bc6f84119b0e", "isActive": false, "balance": "$3,596.23", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Hicks Hodge", "gender": "male", "company": "ZEPITOPE", "email": "hickshodge@zepitope.com", "phone": "+1 (955) 467-2926", "address": "649 Waldane Court, Chelsea, Illinois, 6736", "about": "Esse officia eiusmod aute eiusmod laboris sunt. Esse consectetur eiusmod exercitation qui sint velit reprehenderit velit. Nulla consectetur ipsum non nostrud enim veniam consequat aute aliquip. Fugiat culpa esse aute fugiat.\r\n", "registered": "2014-07-17T13:18:01-12:00", "latitude": 41.224291, "longitude": 26.843141, "tags": [ "aliqua", "aliquip", "dolor", "occaecat", "adipisicing", "dolor", "dolore" ], "friends": [ { "id": 0, "name": "Shelby Dominguez" }, { "id": 1, "name": "Cathryn Mitchell" }, { "id": 2, "name": "Candace Rogers" } ], "greeting": "Hello, Hicks Hodge! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29ae64898d71c8303a", "index": 4163, "guid": "e7e96f62-675d-4ade-b54a-8d66c7b72913", "isActive": true, "balance": "$1,319.30", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Daisy Odom", "gender": "female", "company": "CEDWARD", "email": "daisyodom@cedward.com", "phone": "+1 (821) 525-2287", "address": "665 Victor Road, Aguila, South Carolina, 8921", "about": "Laborum dolore aliqua in mollit commodo irure id et culpa et minim ullamco occaecat. Pariatur ad sint non consequat voluptate. Mollit exercitation dolor nisi excepteur amet non consequat. Ex aliquip incididunt ea cupidatat elit non dolor quis irure in aliqua eiusmod tempor. Magna aute ex ex sint ad ea. Do proident reprehenderit pariatur occaecat ipsum non do ut duis. Laboris tempor irure duis laborum anim nisi aliqua do veniam laboris.\r\n", "registered": "2014-08-14T07:38:56-12:00", "latitude": -13.356892, "longitude": 13.423915, "tags": [ "pariatur", "id", "culpa", "cillum", "aute", "irure", "velit" ], "friends": [ { "id": 0, "name": "Hopkins Brock" }, { "id": 1, "name": "Kaufman Dixon" }, { "id": 2, "name": "Rosa Barnes" } ], "greeting": "Hello, Daisy Odom! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea293b45fac6108ccfb7", "index": 4164, "guid": "9ccfb3c2-b006-472d-8fdf-0f96dd156afe", "isActive": true, "balance": "$3,973.33", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Skinner Massey", "gender": "male", "company": "ZENSURE", "email": "skinnermassey@zensure.com", "phone": "+1 (938) 419-3809", "address": "674 Horace Court, Datil, American Samoa, 2497", "about": "Laboris pariatur irure cillum ad deserunt id id occaecat amet consequat occaecat. Exercitation cupidatat consectetur do magna ut sunt. Nulla eiusmod tempor nulla aute sit. Mollit consequat voluptate sunt sunt minim laborum eu pariatur non deserunt duis adipisicing minim labore. Adipisicing elit occaecat laboris ad dolor ullamco consequat qui occaecat sit nulla. Commodo dolor mollit aliqua ex id quis sit nisi amet consequat. Veniam velit quis cupidatat irure pariatur dolore id eiusmod.\r\n", "registered": "2014-07-12T15:51:40-12:00", "latitude": -63.986531, "longitude": 159.456874, "tags": [ "do", "sit", "id", "tempor", "commodo", "officia", "et" ], "friends": [ { "id": 0, "name": "Mayra Morton" }, { "id": 1, "name": "Marisol Landry" }, { "id": 2, "name": "Linda Garcia" } ], "greeting": "Hello, Skinner Massey! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29b30b2a18cf0203db", "index": 4165, "guid": "e6279d76-23e1-4737-bcb5-12ad372d18ae", "isActive": false, "balance": "$2,104.28", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Hodges Bowers", "gender": "male", "company": "PHOLIO", "email": "hodgesbowers@pholio.com", "phone": "+1 (887) 495-2893", "address": "583 Sands Street, Haring, Delaware, 129", "about": "Aliquip est nostrud mollit anim sit excepteur culpa cillum qui. Est est mollit voluptate ex adipisicing sit do pariatur ut. Nulla cupidatat esse dolore id esse cupidatat ad do sit veniam et cillum ad. Anim cupidatat incididunt dolor nulla ipsum nulla ad esse duis non cupidatat dolore. Labore fugiat consequat esse in veniam. Enim est adipisicing aliqua sit duis veniam ad irure anim esse qui.\r\n", "registered": "2014-06-20T01:18:35-12:00", "latitude": 10.945011, "longitude": 4.58544, "tags": [ "cupidatat", "laborum", "laboris", "anim", "consequat", "mollit", "consequat" ], "friends": [ { "id": 0, "name": "Mcmahon Whitaker" }, { "id": 1, "name": "Aguirre Gordon" }, { "id": 2, "name": "Joy Downs" } ], "greeting": "Hello, Hodges Bowers! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea299eeb11b3a0a3bcb3", "index": 4166, "guid": "d3476b51-67dc-4381-bfde-9c1dd9bf68d3", "isActive": true, "balance": "$3,512.82", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Montgomery Rose", "gender": "male", "company": "ZOSIS", "email": "montgomeryrose@zosis.com", "phone": "+1 (985) 412-3939", "address": "120 Cropsey Avenue, Saticoy, Pennsylvania, 8535", "about": "Aliquip nostrud nulla nostrud tempor veniam commodo qui id pariatur veniam aute laborum. Qui laboris nostrud proident ex. Id dolore occaecat proident ex mollit ea. Cupidatat ullamco occaecat nisi et magna nostrud Lorem esse culpa ea.\r\n", "registered": "2014-02-13T23:15:32-13:00", "latitude": 76.686041, "longitude": -69.085576, "tags": [ "voluptate", "elit", "minim", "non", "eu", "ex", "esse" ], "friends": [ { "id": 0, "name": "Riggs Blackwell" }, { "id": 1, "name": "Melissa Steele" }, { "id": 2, "name": "Sykes Dorsey" } ], "greeting": "Hello, Montgomery Rose! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29e17405593fda9398", "index": 4167, "guid": "e14b8938-9c98-46cc-be1e-cb37351c78a0", "isActive": false, "balance": "$3,965.06", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Hope Burch", "gender": "female", "company": "IDEGO", "email": "hopeburch@idego.com", "phone": "+1 (861) 588-2111", "address": "261 Varick Street, Greenbackville, Georgia, 1747", "about": "Esse aliquip qui sunt exercitation eu culpa laborum. Ut consequat nulla dolore do dolore consequat excepteur anim sint voluptate cupidatat. Proident tempor et velit ut ullamco. Eiusmod eu commodo reprehenderit adipisicing mollit ad adipisicing. Incididunt elit pariatur ea velit ea irure. Et laborum duis magna officia exercitation dolor non reprehenderit est elit nisi.\r\n", "registered": "2014-02-25T00:22:57-13:00", "latitude": 59.188011, "longitude": 155.855323, "tags": [ "incididunt", "do", "aute", "qui", "voluptate", "dolor", "nisi" ], "friends": [ { "id": 0, "name": "Rae Miller" }, { "id": 1, "name": "Houston Gross" }, { "id": 2, "name": "Kelli Rowe" } ], "greeting": "Hello, Hope Burch! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea297a8f569d5abf3ff1", "index": 4168, "guid": "435702cd-26c3-4bc9-a76e-ea89c1fb63d7", "isActive": true, "balance": "$2,549.17", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Georgette Fitzgerald", "gender": "female", "company": "ISOPOP", "email": "georgettefitzgerald@isopop.com", "phone": "+1 (848) 456-3877", "address": "562 Tehama Street, Beechmont, North Dakota, 3531", "about": "Pariatur consequat consectetur sunt aliqua nulla quis anim eiusmod velit. In enim incididunt mollit magna elit pariatur. Culpa et fugiat eu id duis enim ea aliqua sunt labore. Aute est labore excepteur tempor incididunt veniam esse est sunt in ad do laboris laboris. Proident tempor pariatur esse occaecat et sit Lorem mollit ex reprehenderit elit dolore. Reprehenderit exercitation consequat laborum deserunt velit sit eiusmod laboris veniam aliquip adipisicing excepteur officia minim. Ipsum sit do nostrud aute aute mollit velit magna proident dolore aute.\r\n", "registered": "2014-08-29T04:00:19-12:00", "latitude": -28.736454, "longitude": -29.479319, "tags": [ "consectetur", "elit", "quis", "esse", "est", "pariatur", "nulla" ], "friends": [ { "id": 0, "name": "Celina Burris" }, { "id": 1, "name": "Kane Case" }, { "id": 2, "name": "Fanny Hines" } ], "greeting": "Hello, Georgette Fitzgerald! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea293c7b0f82b3ccdec4", "index": 4169, "guid": "557bc78b-9a2b-40a8-9b2a-df8345a38bdc", "isActive": false, "balance": "$1,328.08", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Mable Contreras", "gender": "female", "company": "VIAGRAND", "email": "mablecontreras@viagrand.com", "phone": "+1 (907) 535-3171", "address": "589 Amersfort Place, Bendon, Louisiana, 6501", "about": "Nostrud incididunt aliquip mollit excepteur. Laboris irure veniam mollit Lorem nulla ad sit mollit et occaecat do. Cillum sit enim occaecat cillum ipsum veniam pariatur dolore. Sint nulla sit minim dolore dolore amet. Reprehenderit laborum laborum voluptate laboris veniam ullamco ipsum consectetur. Magna ea cillum occaecat nisi velit. Sunt culpa enim eiusmod incididunt amet cupidatat laborum ipsum culpa esse adipisicing excepteur esse ipsum.\r\n", "registered": "2014-08-18T01:30:20-12:00", "latitude": 48.050988, "longitude": -5.43632, "tags": [ "nisi", "ea", "nostrud", "nulla", "elit", "sint", "labore" ], "friends": [ { "id": 0, "name": "Lott Chen" }, { "id": 1, "name": "Osborne Bean" }, { "id": 2, "name": "Amparo Burns" } ], "greeting": "Hello, Mable Contreras! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29d3ecd8f3fa0010c9", "index": 4170, "guid": "56ea5590-2da4-45cd-a089-15ae3b97004a", "isActive": true, "balance": "$2,082.54", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Rice Bruce", "gender": "male", "company": "VORATAK", "email": "ricebruce@voratak.com", "phone": "+1 (965) 429-2024", "address": "856 Hall Street, Davenport, Northern Mariana Islands, 8056", "about": "Lorem fugiat nulla qui est fugiat. Non culpa enim proident et fugiat deserunt enim officia laborum ad. Lorem magna ea sunt ipsum proident in et consequat ex esse est do. Mollit sunt non nostrud est consequat voluptate laboris. Aliqua ullamco labore id consequat sint esse sunt ullamco exercitation exercitation culpa consequat. Culpa minim consectetur id aute et deserunt aliqua.\r\n", "registered": "2014-06-26T03:28:10-12:00", "latitude": -65.400854, "longitude": -60.721441, "tags": [ "commodo", "quis", "tempor", "nisi", "excepteur", "incididunt", "duis" ], "friends": [ { "id": 0, "name": "Dawson Gilliam" }, { "id": 1, "name": "Reilly Weiss" }, { "id": 2, "name": "Yvette Sharp" } ], "greeting": "Hello, Rice Bruce! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29ec913dc37cb19e84", "index": 4171, "guid": "277197a1-3e6a-49c8-b756-8d656baa5e16", "isActive": false, "balance": "$3,554.10", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Oneill Rivera", "gender": "male", "company": "ONTAGENE", "email": "oneillrivera@ontagene.com", "phone": "+1 (839) 552-2031", "address": "857 Shale Street, Emerald, Colorado, 3476", "about": "Pariatur ipsum dolore voluptate enim Lorem nostrud magna officia id irure ex. Duis nostrud sit sunt dolore dolore esse est elit anim mollit pariatur. Laborum minim cupidatat nulla reprehenderit elit adipisicing dolor aute consectetur occaecat. Anim ea nostrud aliquip labore eiusmod eiusmod. Tempor velit sit nostrud anim excepteur in. Eu culpa ad voluptate fugiat tempor do voluptate commodo in sunt enim.\r\n", "registered": "2014-07-24T18:55:28-12:00", "latitude": -19.602985, "longitude": -10.690338, "tags": [ "nulla", "reprehenderit", "cupidatat", "quis", "est", "ut", "qui" ], "friends": [ { "id": 0, "name": "Claudia Hobbs" }, { "id": 1, "name": "Calderon Parker" }, { "id": 2, "name": "Christian West" } ], "greeting": "Hello, Oneill Rivera! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29e9084db69fb1fcb9", "index": 4172, "guid": "3cb75462-24b4-43b4-8842-871887f8b2e6", "isActive": false, "balance": "$2,702.74", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Tammi Peck", "gender": "female", "company": "LUNCHPOD", "email": "tammipeck@lunchpod.com", "phone": "+1 (847) 511-3254", "address": "566 Montague Terrace, Brownlee, Idaho, 2999", "about": "Do dolor nostrud est id consectetur adipisicing aliqua quis eu non nostrud excepteur ut consectetur. Reprehenderit occaecat nulla dolore tempor irure sint anim enim ullamco sint minim labore. Minim minim eu culpa laboris Lorem deserunt aute minim nostrud commodo anim commodo proident adipisicing. Minim reprehenderit incididunt qui mollit eiusmod minim. Nostrud sint tempor laboris consectetur mollit culpa aliqua laborum minim ut eu magna id.\r\n", "registered": "2014-04-28T06:29:01-12:00", "latitude": -56.864269, "longitude": 127.46432, "tags": [ "est", "pariatur", "sit", "cupidatat", "ipsum", "in", "quis" ], "friends": [ { "id": 0, "name": "Mindy Hogan" }, { "id": 1, "name": "Silvia Coffey" }, { "id": 2, "name": "Jeannine Snider" } ], "greeting": "Hello, Tammi Peck! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29827ef96aa6c8d082", "index": 4173, "guid": "07fb5027-403c-4e3b-8b1f-ec4d6e353fb2", "isActive": true, "balance": "$1,981.47", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Lindsey Flores", "gender": "male", "company": "COREPAN", "email": "lindseyflores@corepan.com", "phone": "+1 (853) 469-2152", "address": "736 Prospect Place, Sattley, Marshall Islands, 1506", "about": "Laboris amet ex nostrud excepteur incididunt esse cillum. Duis reprehenderit consequat deserunt sit commodo commodo laborum proident aliqua commodo velit commodo. Deserunt veniam in qui ex irure mollit ut in aute cillum in laboris. Adipisicing nulla magna eiusmod nostrud ullamco.\r\n", "registered": "2014-02-21T01:29:56-13:00", "latitude": -81.555261, "longitude": -123.077256, "tags": [ "culpa", "reprehenderit", "et", "commodo", "nisi", "culpa", "incididunt" ], "friends": [ { "id": 0, "name": "Frieda Harrell" }, { "id": 1, "name": "Ila Henson" }, { "id": 2, "name": "Cora Booth" } ], "greeting": "Hello, Lindsey Flores! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea298e53b2ce0018f0c9", "index": 4174, "guid": "3de47b19-c21b-4513-91ea-ee27ab7dcc19", "isActive": false, "balance": "$1,894.24", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Gilmore Willis", "gender": "male", "company": "JOVIOLD", "email": "gilmorewillis@joviold.com", "phone": "+1 (999) 429-3659", "address": "604 Anchorage Place, Takilma, New York, 3706", "about": "Non sint mollit incididunt reprehenderit id dolor culpa reprehenderit enim. Ad aute sunt adipisicing et. Sit velit do do exercitation est fugiat dolore aliqua cillum id ullamco ipsum. Sint est magna tempor do ipsum esse minim.\r\n", "registered": "2014-02-20T00:21:37-13:00", "latitude": 45.392692, "longitude": -37.629448, "tags": [ "id", "dolor", "proident", "commodo", "fugiat", "ea", "laborum" ], "friends": [ { "id": 0, "name": "Casey Carpenter" }, { "id": 1, "name": "Kay Pena" }, { "id": 2, "name": "Summer Washington" } ], "greeting": "Hello, Gilmore Willis! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea295ccd45f7c8796ff5", "index": 4175, "guid": "2972f5ca-0497-4033-90c0-928b44ff218e", "isActive": false, "balance": "$2,400.33", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Lacey Potter", "gender": "female", "company": "EBIDCO", "email": "laceypotter@ebidco.com", "phone": "+1 (919) 548-3001", "address": "518 Essex Street, Walker, Guam, 1707", "about": "Officia ipsum duis ut proident. Adipisicing in cillum aliquip enim exercitation tempor. Anim proident aliqua cupidatat culpa cupidatat elit ea non aliqua velit amet nisi. Pariatur reprehenderit et nisi id excepteur laboris irure ullamco fugiat ex occaecat. Consectetur mollit do eiusmod eu elit nulla ea et Lorem in est sint proident.\r\n", "registered": "2014-04-28T00:54:35-12:00", "latitude": -21.983456, "longitude": 150.03178, "tags": [ "reprehenderit", "irure", "deserunt", "exercitation", "ipsum", "aute", "proident" ], "friends": [ { "id": 0, "name": "Boone Gates" }, { "id": 1, "name": "Jill Hopkins" }, { "id": 2, "name": "Marva Gilbert" } ], "greeting": "Hello, Lacey Potter! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29c60dd2173ca72b9c", "index": 4176, "guid": "8140146b-a1a4-4bf8-a725-fe0d23fcb0dd", "isActive": false, "balance": "$3,003.36", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Campbell Walls", "gender": "male", "company": "RODEMCO", "email": "campbellwalls@rodemco.com", "phone": "+1 (851) 459-3796", "address": "109 Fiske Place, Bellamy, Virgin Islands, 6797", "about": "Ut aliqua minim velit ad reprehenderit irure ea aliquip consequat excepteur aute aliquip. Amet dolor laboris culpa eu ad voluptate ipsum nostrud officia exercitation ullamco. Laborum nisi excepteur velit dolor labore pariatur deserunt. Est minim pariatur ut consectetur id labore sint laboris irure laborum fugiat consectetur. Qui eiusmod adipisicing consequat pariatur proident officia deserunt voluptate amet nostrud nisi sint magna. Commodo ipsum culpa irure commodo nostrud ex velit consectetur qui. Id amet culpa dolor laborum qui ullamco nostrud irure.\r\n", "registered": "2014-04-07T02:53:58-12:00", "latitude": 13.86816, "longitude": -42.282571, "tags": [ "duis", "reprehenderit", "velit", "laborum", "cillum", "sint", "cupidatat" ], "friends": [ { "id": 0, "name": "Francis Franklin" }, { "id": 1, "name": "Leticia Reed" }, { "id": 2, "name": "Leona Odonnell" } ], "greeting": "Hello, Campbell Walls! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2929d6b6187fda07a4", "index": 4177, "guid": "51e83056-2a1e-4c9f-b8af-e056a8c04b05", "isActive": false, "balance": "$3,720.41", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Moody Chang", "gender": "male", "company": "OVIUM", "email": "moodychang@ovium.com", "phone": "+1 (906) 516-2423", "address": "192 Sunnyside Court, Freeburn, Massachusetts, 332", "about": "Velit ipsum aliqua aliquip incididunt ea sunt. Duis ut proident adipisicing et occaecat veniam ipsum duis. Consequat sunt ipsum id culpa sunt voluptate. Reprehenderit enim commodo anim velit duis excepteur ut exercitation labore eu. Nulla qui enim est ex duis sint amet consequat.\r\n", "registered": "2014-08-30T15:36:23-12:00", "latitude": -16.239194, "longitude": -155.45073, "tags": [ "culpa", "Lorem", "nisi", "dolor", "deserunt", "sit", "pariatur" ], "friends": [ { "id": 0, "name": "Walker Snyder" }, { "id": 1, "name": "Juliette Elliott" }, { "id": 2, "name": "Marcia Neal" } ], "greeting": "Hello, Moody Chang! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea294aa73247dd1d6ee2", "index": 4178, "guid": "34fbc126-b10f-44bc-a530-c59012f0bb66", "isActive": false, "balance": "$1,395.66", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Charlotte Boone", "gender": "female", "company": "HALAP", "email": "charlotteboone@halap.com", "phone": "+1 (889) 461-2179", "address": "673 Louisiana Avenue, Canterwood, Utah, 4651", "about": "Occaecat cillum consequat eu ad laboris et exercitation nisi magna adipisicing. Est sit ipsum minim pariatur Lorem irure sit. Eiusmod et proident minim ea velit reprehenderit id ut consequat quis officia sunt culpa duis. Labore aute sunt magna laboris esse consectetur aliquip do et. Excepteur est cillum excepteur commodo ad fugiat duis.\r\n", "registered": "2014-06-08T22:29:23-12:00", "latitude": 67.500034, "longitude": -164.939257, "tags": [ "in", "ea", "commodo", "eiusmod", "irure", "ad", "eu" ], "friends": [ { "id": 0, "name": "Araceli Valencia" }, { "id": 1, "name": "Hayden Robinson" }, { "id": 2, "name": "Rebecca Macdonald" } ], "greeting": "Hello, Charlotte Boone! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29ed99af10989db937", "index": 4179, "guid": "86a0424c-96bb-4986-b088-0b4b0e9424ae", "isActive": false, "balance": "$1,318.38", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Tabitha Santiago", "gender": "female", "company": "EXOSIS", "email": "tabithasantiago@exosis.com", "phone": "+1 (853) 456-3968", "address": "555 Fountain Avenue, Waiohinu, Montana, 6823", "about": "Aute dolor laborum minim laboris nostrud ut ea id amet et magna qui velit eiusmod. Cillum commodo excepteur amet id sint culpa culpa est laborum et nisi qui. Laborum anim qui aliqua occaecat enim ex esse laborum. Excepteur nisi elit consectetur esse. Et dolor eu veniam ullamco officia sint in cillum. Ad in nulla labore duis sit.\r\n", "registered": "2014-04-26T00:50:00-12:00", "latitude": 28.937837, "longitude": -169.18251, "tags": [ "culpa", "minim", "dolore", "mollit", "aliquip", "nisi", "aliqua" ], "friends": [ { "id": 0, "name": "Sutton Bartlett" }, { "id": 1, "name": "Emma Weeks" }, { "id": 2, "name": "Benton Lott" } ], "greeting": "Hello, Tabitha Santiago! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29ded333b1ed00973a", "index": 4180, "guid": "b107c04b-fdd0-4409-9908-22374ebbd3d6", "isActive": true, "balance": "$2,875.59", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Harvey Oconnor", "gender": "male", "company": "HYDROCOM", "email": "harveyoconnor@hydrocom.com", "phone": "+1 (970) 482-2852", "address": "681 Catherine Street, Tampico, Wisconsin, 6874", "about": "Labore aliquip reprehenderit ea laboris reprehenderit reprehenderit duis. Ad excepteur do nostrud aliqua duis ut dolor. Ipsum magna fugiat esse excepteur eu. Consectetur irure cupidatat eiusmod eu tempor cupidatat officia magna anim.\r\n", "registered": "2014-01-29T01:43:02-13:00", "latitude": 17.801564, "longitude": 31.2656, "tags": [ "exercitation", "esse", "aliquip", "aliquip", "sunt", "veniam", "incididunt" ], "friends": [ { "id": 0, "name": "Carolina Dejesus" }, { "id": 1, "name": "Virgie Cline" }, { "id": 2, "name": "Craig Larson" } ], "greeting": "Hello, Harvey Oconnor! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29564d78e163b1658b", "index": 4181, "guid": "111e8009-ece7-4c57-bc2e-cae993b38038", "isActive": true, "balance": "$3,862.76", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Tiffany Velazquez", "gender": "female", "company": "AFFLUEX", "email": "tiffanyvelazquez@affluex.com", "phone": "+1 (873) 428-3326", "address": "795 Irwin Street, Lupton, Maine, 7124", "about": "Esse fugiat anim cillum ad esse aliqua quis laboris aliquip laborum mollit velit do. Non culpa cupidatat sit culpa ex ea laborum laboris velit eiusmod. Sunt dolore ea labore est excepteur nostrud anim dolor ullamco id mollit.\r\n", "registered": "2014-05-25T09:33:01-12:00", "latitude": 62.18445, "longitude": -99.503505, "tags": [ "reprehenderit", "ex", "deserunt", "fugiat", "tempor", "pariatur", "id" ], "friends": [ { "id": 0, "name": "Miller Newman" }, { "id": 1, "name": "Elisabeth Dyer" }, { "id": 2, "name": "Vicki Blair" } ], "greeting": "Hello, Tiffany Velazquez! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29415f31ef62455e36", "index": 4182, "guid": "93cca689-da11-4a58-85f7-31fad8d2ad56", "isActive": true, "balance": "$2,174.79", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Richards Keller", "gender": "male", "company": "GEOFORMA", "email": "richardskeller@geoforma.com", "phone": "+1 (851) 432-2726", "address": "987 Chester Avenue, Ilchester, Virginia, 9113", "about": "Anim laboris nisi laborum nisi in. Est nisi sit id id magna ut. Exercitation excepteur irure eiusmod veniam nostrud excepteur eu aliquip. Qui ipsum esse labore eiusmod exercitation qui.\r\n", "registered": "2014-07-16T18:42:05-12:00", "latitude": 12.023788, "longitude": -137.319333, "tags": [ "enim", "quis", "do", "laboris", "deserunt", "esse", "in" ], "friends": [ { "id": 0, "name": "Lorrie Hampton" }, { "id": 1, "name": "Odom Hernandez" }, { "id": 2, "name": "Watson Nguyen" } ], "greeting": "Hello, Richards Keller! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29b07aa89b0cb6b334", "index": 4183, "guid": "272c4392-f79b-48fc-824d-d5fbb3b33c2d", "isActive": false, "balance": "$1,805.26", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Lessie Ingram", "gender": "female", "company": "REMOTION", "email": "lessieingram@remotion.com", "phone": "+1 (974) 532-2362", "address": "901 Crescent Street, Allentown, Kentucky, 8661", "about": "Aute ipsum duis exercitation sunt. Deserunt proident eiusmod anim culpa anim id id consequat commodo nisi est nulla Lorem. In adipisicing dolor veniam do labore pariatur quis adipisicing officia ea duis. Nulla ex dolore reprehenderit do nulla id amet ipsum. Consequat nostrud do occaecat sint mollit enim cupidatat. Exercitation quis enim dolor ea sint eiusmod voluptate esse sunt amet minim nostrud aute.\r\n", "registered": "2014-02-02T06:42:47-13:00", "latitude": -85.779664, "longitude": -69.366386, "tags": [ "incididunt", "elit", "amet", "consequat", "Lorem", "excepteur", "duis" ], "friends": [ { "id": 0, "name": "Fischer Maldonado" }, { "id": 1, "name": "Potter Guthrie" }, { "id": 2, "name": "Caitlin Fletcher" } ], "greeting": "Hello, Lessie Ingram! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29f67e7aa674c1ab47", "index": 4184, "guid": "47bed412-46dc-4a50-a0b2-91461679d771", "isActive": false, "balance": "$1,680.54", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Georgina Jarvis", "gender": "female", "company": "SUPREMIA", "email": "georginajarvis@supremia.com", "phone": "+1 (860) 440-3259", "address": "274 Rugby Road, Grahamtown, Connecticut, 2460", "about": "Cupidatat culpa eu minim fugiat. Exercitation veniam enim sunt dolor ullamco ea pariatur consectetur mollit quis. Minim magna cillum aliqua excepteur. Veniam aliqua pariatur duis cupidatat incididunt do Lorem quis nulla pariatur qui. Nostrud cupidatat consequat esse cupidatat. Quis nisi aliqua laborum deserunt non sint proident dolore laboris tempor cillum occaecat in. Voluptate occaecat elit sunt laboris voluptate laboris duis.\r\n", "registered": "2014-07-21T14:50:02-12:00", "latitude": -29.397684, "longitude": -114.799536, "tags": [ "exercitation", "dolor", "magna", "quis", "aute", "laborum", "irure" ], "friends": [ { "id": 0, "name": "Matilda Hinton" }, { "id": 1, "name": "Crosby Battle" }, { "id": 2, "name": "Kelly Allen" } ], "greeting": "Hello, Georgina Jarvis! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29a32c9b6e1b163aed", "index": 4185, "guid": "0376a3df-55a5-4c26-ba4b-43e235cbb7ba", "isActive": true, "balance": "$3,857.43", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Catalina Barrett", "gender": "female", "company": "NEWCUBE", "email": "catalinabarrett@newcube.com", "phone": "+1 (966) 448-3868", "address": "888 Hewes Street, Itmann, Mississippi, 1522", "about": "Lorem ad ipsum cupidatat veniam ipsum mollit id qui ad ex sit ad. Veniam veniam est reprehenderit sint voluptate. Dolore ex esse consectetur amet aliquip velit. Incididunt occaecat non laborum mollit elit exercitation ea officia cillum amet ad ad quis occaecat.\r\n", "registered": "2014-02-24T22:38:37-13:00", "latitude": 59.274023, "longitude": 127.875608, "tags": [ "fugiat", "do", "reprehenderit", "nulla", "ullamco", "excepteur", "et" ], "friends": [ { "id": 0, "name": "Lavonne Rojas" }, { "id": 1, "name": "Jeanine Dotson" }, { "id": 2, "name": "Avila Spence" } ], "greeting": "Hello, Catalina Barrett! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29b70ca3f34a0c124a", "index": 4186, "guid": "87cd4bab-5048-4b62-8bd2-72e507242f14", "isActive": true, "balance": "$3,435.18", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Sloan Burke", "gender": "male", "company": "ZENSOR", "email": "sloanburke@zensor.com", "phone": "+1 (862) 500-2692", "address": "964 Beacon Court, Topanga, Washington, 4284", "about": "Nostrud est irure sint sunt. Ea fugiat non ad eiusmod Lorem Lorem duis. Anim deserunt aliqua sunt aliqua nostrud culpa nostrud qui in incididunt tempor reprehenderit. Id deserunt nisi adipisicing irure veniam reprehenderit deserunt enim. Aute labore ut laborum ipsum id incididunt aliqua veniam id laborum fugiat tempor.\r\n", "registered": "2014-02-07T13:41:08-13:00", "latitude": -69.56289, "longitude": -3.997715, "tags": [ "ipsum", "laboris", "adipisicing", "reprehenderit", "aliquip", "exercitation", "Lorem" ], "friends": [ { "id": 0, "name": "Rochelle Rosario" }, { "id": 1, "name": "Grace Stephenson" }, { "id": 2, "name": "Hall Frederick" } ], "greeting": "Hello, Sloan Burke! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29bfedf9e1ce50f2bf", "index": 4187, "guid": "17ba5bc5-5679-4d05-bea6-03cc229819cb", "isActive": true, "balance": "$1,397.46", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Erin Kirkland", "gender": "female", "company": "SYBIXTEX", "email": "erinkirkland@sybixtex.com", "phone": "+1 (940) 524-2876", "address": "223 Porter Avenue, Ribera, Tennessee, 6265", "about": "Amet dolor magna proident veniam do reprehenderit culpa aliquip voluptate. Aute exercitation proident amet magna nisi in. Nulla nostrud sint qui consectetur anim aliquip.\r\n", "registered": "2014-05-28T11:55:42-12:00", "latitude": 85.572091, "longitude": -31.700496, "tags": [ "nisi", "non", "non", "ullamco", "id", "cillum", "do" ], "friends": [ { "id": 0, "name": "Moran Wall" }, { "id": 1, "name": "Cooke Parsons" }, { "id": 2, "name": "Jo Curtis" } ], "greeting": "Hello, Erin Kirkland! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea298a0f61f061cb0e5e", "index": 4188, "guid": "6efbf77c-7359-4ee4-8446-0ffb17bf902a", "isActive": true, "balance": "$3,311.12", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Taylor Diaz", "gender": "female", "company": "FURNITECH", "email": "taylordiaz@furnitech.com", "phone": "+1 (960) 540-3303", "address": "976 Meserole Avenue, Coloma, Alabama, 8369", "about": "Eu reprehenderit exercitation cupidatat eu ullamco exercitation nostrud adipisicing occaecat ipsum elit. Tempor proident adipisicing aliqua cupidatat irure. Sint sit magna cillum minim do irure eu sit ex proident elit pariatur nulla. Qui exercitation qui sit ullamco non ad laborum anim officia est sunt consequat reprehenderit.\r\n", "registered": "2014-04-16T12:17:59-12:00", "latitude": 35.126749, "longitude": -3.951304, "tags": [ "ut", "in", "quis", "sunt", "enim", "tempor", "labore" ], "friends": [ { "id": 0, "name": "Sullivan Henderson" }, { "id": 1, "name": "Gamble Fisher" }, { "id": 2, "name": "Kayla Forbes" } ], "greeting": "Hello, Taylor Diaz! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea294da2349cbd1e50e7", "index": 4189, "guid": "73abed61-abbf-4ee5-ba6c-c8243795d903", "isActive": true, "balance": "$3,062.44", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Chaney Bass", "gender": "male", "company": "DEVILTOE", "email": "chaneybass@deviltoe.com", "phone": "+1 (910) 524-3402", "address": "891 Knapp Street, Kempton, Ohio, 6540", "about": "Nostrud exercitation non et aute cillum deserunt sunt cupidatat irure amet Lorem quis exercitation. Labore Lorem ex adipisicing labore ullamco fugiat labore officia amet elit. Nisi duis sunt sit ipsum mollit consectetur officia labore est dolore ut nisi. Esse eu dolor consectetur ex est occaecat minim fugiat veniam et consequat.\r\n", "registered": "2014-08-01T01:28:16-12:00", "latitude": -40.616816, "longitude": -109.21344, "tags": [ "ad", "aliqua", "laboris", "ea", "ut", "commodo", "ut" ], "friends": [ { "id": 0, "name": "Amie Rowland" }, { "id": 1, "name": "Bernice Horn" }, { "id": 2, "name": "Jenny Yates" } ], "greeting": "Hello, Chaney Bass! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2979a2d183c9d61ab1", "index": 4190, "guid": "b05c9261-3a7e-4d43-93d0-6cb36b595c15", "isActive": false, "balance": "$3,794.44", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Randi Spears", "gender": "female", "company": "PYRAMIS", "email": "randispears@pyramis.com", "phone": "+1 (889) 600-3788", "address": "447 Christopher Avenue, Hilltop, Hawaii, 5455", "about": "Enim sint esse amet nostrud commodo eu. Minim velit est eu incididunt fugiat labore reprehenderit. Velit eiusmod anim pariatur eiusmod consequat ad irure ea tempor minim.\r\n", "registered": "2014-09-14T14:16:33-12:00", "latitude": -37.955057, "longitude": -27.475429, "tags": [ "tempor", "exercitation", "consequat", "quis", "excepteur", "veniam", "adipisicing" ], "friends": [ { "id": 0, "name": "Jimenez Hester" }, { "id": 1, "name": "Hood Fernandez" }, { "id": 2, "name": "Melendez Sweeney" } ], "greeting": "Hello, Randi Spears! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29051ee25e03978d65", "index": 4191, "guid": "aa3573f2-c3e6-4951-97fc-013529ea7c87", "isActive": true, "balance": "$1,707.94", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Cervantes Abbott", "gender": "male", "company": "CYTREK", "email": "cervantesabbott@cytrek.com", "phone": "+1 (988) 503-2544", "address": "762 Townsend Street, Foscoe, New Mexico, 9147", "about": "Exercitation ea commodo minim est excepteur elit labore mollit dolor officia tempor. Ea eiusmod in nostrud voluptate veniam non commodo pariatur esse officia amet mollit consequat in. Culpa dolore cupidatat eiusmod ut labore commodo ad dolor duis anim dolore. Cillum quis labore ipsum elit commodo cillum. Consectetur exercitation id ex sint.\r\n", "registered": "2014-02-13T20:14:25-13:00", "latitude": -10.850891, "longitude": 148.670028, "tags": [ "nostrud", "exercitation", "eu", "pariatur", "ipsum", "aliquip", "dolore" ], "friends": [ { "id": 0, "name": "Wilkins Kane" }, { "id": 1, "name": "Aisha Clements" }, { "id": 2, "name": "Viola Romero" } ], "greeting": "Hello, Cervantes Abbott! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29b9109db83221d794", "index": 4192, "guid": "f8ffb775-8c08-4731-b38f-8e91a1062d0c", "isActive": true, "balance": "$1,881.75", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Mcclure Moore", "gender": "male", "company": "EPLOSION", "email": "mccluremoore@eplosion.com", "phone": "+1 (895) 567-2373", "address": "513 Rutland Road, Century, Maryland, 8340", "about": "Officia incididunt occaecat duis non fugiat fugiat minim est sunt enim in ea tempor. Incididunt qui ea excepteur aliquip culpa sit cupidatat sunt aliqua. Labore sit aliquip aliqua excepteur amet nisi aliquip in adipisicing nisi enim ad excepteur occaecat. Occaecat est sunt in Lorem culpa sint minim commodo Lorem incididunt irure sint eiusmod. Magna reprehenderit duis minim nostrud amet enim duis consectetur minim tempor. Est laborum ipsum minim nostrud in aliqua aute. Occaecat consectetur adipisicing occaecat veniam nulla.\r\n", "registered": "2014-09-20T03:46:17-12:00", "latitude": 64.207876, "longitude": 122.530488, "tags": [ "tempor", "elit", "aute", "laborum", "officia", "voluptate", "nostrud" ], "friends": [ { "id": 0, "name": "Rollins Adams" }, { "id": 1, "name": "Le Mcfadden" }, { "id": 2, "name": "Tamra Clarke" } ], "greeting": "Hello, Mcclure Moore! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2902a3f1cd9f56dc88", "index": 4193, "guid": "89f473de-eb40-4478-b643-7a420696965d", "isActive": true, "balance": "$2,832.74", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Conley Church", "gender": "male", "company": "EXOZENT", "email": "conleychurch@exozent.com", "phone": "+1 (881) 595-3983", "address": "658 Kenmore Terrace, Finderne, Alaska, 1289", "about": "Cupidatat pariatur veniam in cupidatat. Elit anim magna sunt sint excepteur magna ad incididunt officia ullamco. Anim et esse et tempor quis cupidatat adipisicing cillum voluptate nisi reprehenderit sint dolor deserunt.\r\n", "registered": "2014-08-13T11:47:50-12:00", "latitude": -10.940522, "longitude": 144.508361, "tags": [ "esse", "consequat", "magna", "adipisicing", "in", "irure", "eiusmod" ], "friends": [ { "id": 0, "name": "Jana David" }, { "id": 1, "name": "Constance Mcdonald" }, { "id": 2, "name": "Macias Lindsay" } ], "greeting": "Hello, Conley Church! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29011272c2612a9e9b", "index": 4194, "guid": "eb7c8a5b-ddf7-44dc-a1c7-7c6a2c5d165f", "isActive": true, "balance": "$2,947.21", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Camille Key", "gender": "female", "company": "LIMOZEN", "email": "camillekey@limozen.com", "phone": "+1 (908) 538-2434", "address": "576 Canarsie Road, Carlton, Arizona, 1230", "about": "Sit duis minim ex irure enim consectetur Lorem do ullamco anim reprehenderit velit aliqua in. Sunt anim laboris veniam proident ad anim laboris commodo duis reprehenderit laborum mollit pariatur dolore. Irure amet dolor amet pariatur ad magna id irure enim magna ea labore proident tempor. Dolore enim quis tempor labore incididunt pariatur cillum mollit cillum. Velit in cupidatat veniam dolor pariatur.\r\n", "registered": "2014-04-11T03:45:09-12:00", "latitude": -27.382053, "longitude": 83.28214, "tags": [ "reprehenderit", "excepteur", "esse", "cupidatat", "do", "voluptate", "ex" ], "friends": [ { "id": 0, "name": "Church Murray" }, { "id": 1, "name": "Christine Phelps" }, { "id": 2, "name": "Alma Wolf" } ], "greeting": "Hello, Camille Key! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea290921534a80dd5c6c", "index": 4195, "guid": "48970c89-9d83-42d5-8ba1-24531ffb0b2a", "isActive": true, "balance": "$2,386.13", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Katheryn Hooper", "gender": "female", "company": "GRUPOLI", "email": "katherynhooper@grupoli.com", "phone": "+1 (897) 576-3971", "address": "556 Elm Place, Harrison, Federated States Of Micronesia, 2238", "about": "Dolore proident consequat eu aute et non id enim nostrud ullamco nisi ipsum dolor velit. Deserunt Lorem ea laborum velit et voluptate est ad reprehenderit do magna cillum. Ea laborum aliqua ullamco labore duis dolore mollit eiusmod magna voluptate nulla eiusmod voluptate aute. Elit eiusmod incididunt consectetur ad reprehenderit nulla ut deserunt elit deserunt culpa. Ut nulla ad quis velit nisi occaecat nulla ullamco est.\r\n", "registered": "2014-01-10T23:03:42-13:00", "latitude": 71.52801, "longitude": 50.835178, "tags": [ "voluptate", "nulla", "ad", "aliquip", "id", "magna", "ipsum" ], "friends": [ { "id": 0, "name": "Bennett Mills" }, { "id": 1, "name": "Fowler Middleton" }, { "id": 2, "name": "Lorena Hawkins" } ], "greeting": "Hello, Katheryn Hooper! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2990700c0dac4f07f6", "index": 4196, "guid": "440fc0e8-0658-4cfb-baaa-f46b6ad774a7", "isActive": true, "balance": "$1,441.32", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Latasha Norris", "gender": "female", "company": "GEEKMOSIS", "email": "latashanorris@geekmosis.com", "phone": "+1 (802) 466-3745", "address": "507 Veranda Place, Caroleen, Oklahoma, 3767", "about": "Lorem sunt laborum culpa cupidatat reprehenderit reprehenderit cupidatat exercitation enim irure ullamco cupidatat est excepteur. Proident dolor incididunt labore ut eu laboris minim non. Dolore laborum exercitation pariatur dolor reprehenderit. Fugiat enim ut ex enim veniam pariatur est anim. Ut labore eu est eiusmod nostrud irure aliqua id qui commodo ex ipsum non.\r\n", "registered": "2014-08-08T13:03:45-12:00", "latitude": -66.560046, "longitude": 76.753784, "tags": [ "dolore", "amet", "ea", "in", "cillum", "fugiat", "proident" ], "friends": [ { "id": 0, "name": "Castaneda Rich" }, { "id": 1, "name": "Terra Cervantes" }, { "id": 2, "name": "Angelina Campbell" } ], "greeting": "Hello, Latasha Norris! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea292171d8c9af583522", "index": 4197, "guid": "56ab5d2d-edf9-4e88-a4da-37aeb82e084f", "isActive": true, "balance": "$1,391.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Pickett Mcfarland", "gender": "male", "company": "AMRIL", "email": "pickettmcfarland@amril.com", "phone": "+1 (808) 451-2960", "address": "839 Cobek Court, Bayview, Michigan, 6094", "about": "Mollit ut consectetur dolor nisi irure consectetur nisi ullamco id labore nostrud aute. Officia esse aute enim est aliquip non ea. Deserunt amet anim deserunt ullamco in culpa exercitation. Occaecat consequat labore do officia ea officia veniam. Aliquip laborum fugiat qui aliqua adipisicing consectetur nulla est commodo.\r\n", "registered": "2014-03-08T18:30:58-13:00", "latitude": -42.313031, "longitude": -176.469412, "tags": [ "amet", "labore", "pariatur", "irure", "tempor", "Lorem", "sunt" ], "friends": [ { "id": 0, "name": "Owen Beach" }, { "id": 1, "name": "Janelle Vaughn" }, { "id": 2, "name": "Mcknight Ashley" } ], "greeting": "Hello, Pickett Mcfarland! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea294f4f6ffbedc61f9c", "index": 4198, "guid": "38641a68-438b-45b3-8c67-14dad9346bf3", "isActive": false, "balance": "$2,433.81", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Burton Chandler", "gender": "male", "company": "MAGNEATO", "email": "burtonchandler@magneato.com", "phone": "+1 (843) 429-3234", "address": "147 Miller Avenue, Gardiner, Kansas, 4469", "about": "Id Lorem voluptate officia adipisicing commodo eiusmod. Mollit voluptate nisi aliquip eiusmod elit ea consequat nostrud consectetur ipsum proident minim ex sint. Proident et ad commodo consequat esse est reprehenderit in aliquip elit ut ex esse. Irure ex amet sit dolor labore veniam aute ullamco id consequat anim. Consequat est id pariatur ut ea fugiat laboris dolore. Consequat occaecat ut amet sunt dolor reprehenderit eu qui labore non anim.\r\n", "registered": "2014-06-18T06:22:37-12:00", "latitude": -18.281419, "longitude": 16.645417, "tags": [ "excepteur", "nostrud", "amet", "mollit", "voluptate", "quis", "reprehenderit" ], "friends": [ { "id": 0, "name": "Dorothea Vaughan" }, { "id": 1, "name": "Alexandra Robbins" }, { "id": 2, "name": "Little Levine" } ], "greeting": "Hello, Burton Chandler! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea296bcccd318f59d40a", "index": 4199, "guid": "a6e61430-4fd9-41e6-9272-d787e7c04625", "isActive": false, "balance": "$1,583.74", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Johnnie Combs", "gender": "female", "company": "ARCTIQ", "email": "johnniecombs@arctiq.com", "phone": "+1 (939) 401-2852", "address": "934 Lake Place, Deercroft, South Dakota, 1854", "about": "Voluptate ipsum sit nostrud pariatur fugiat voluptate eu nostrud deserunt pariatur magna. Aliquip magna nostrud ad veniam. Dolor sit deserunt nostrud veniam occaecat ullamco cillum tempor commodo sit. Exercitation mollit tempor Lorem elit eiusmod proident voluptate nostrud aliqua mollit exercitation Lorem cupidatat laborum. Culpa enim magna exercitation aliqua laborum.\r\n", "registered": "2014-07-01T08:10:17-12:00", "latitude": 44.389381, "longitude": 94.544766, "tags": [ "ipsum", "sit", "qui", "aliqua", "enim", "et", "eu" ], "friends": [ { "id": 0, "name": "Bessie Schwartz" }, { "id": 1, "name": "Mason Sims" }, { "id": 2, "name": "Alissa Maxwell" } ], "greeting": "Hello, Johnnie Combs! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29d5fa3d6c056a132c", "index": 4200, "guid": "3c5d1d59-d919-4639-9900-8f1dfe7b66ea", "isActive": true, "balance": "$2,150.43", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Vivian Talley", "gender": "female", "company": "GEEKNET", "email": "viviantalley@geeknet.com", "phone": "+1 (825) 410-3098", "address": "982 Aurelia Court, Balm, West Virginia, 4651", "about": "Pariatur proident officia adipisicing Lorem magna culpa. Voluptate sint enim cillum esse esse id. Id ad ullamco aliqua ipsum id elit culpa enim nisi. Lorem consectetur laborum est cillum veniam occaecat ipsum exercitation fugiat nulla adipisicing.\r\n", "registered": "2014-06-28T06:00:15-12:00", "latitude": -67.789446, "longitude": 92.443601, "tags": [ "laboris", "exercitation", "irure", "aliquip", "ut", "exercitation", "pariatur" ], "friends": [ { "id": 0, "name": "Bowen Knowles" }, { "id": 1, "name": "Cara Green" }, { "id": 2, "name": "Helene Gutierrez" } ], "greeting": "Hello, Vivian Talley! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29aeb5fb0559f339cb", "index": 4201, "guid": "f9f1f925-2602-4527-8cbc-6d7410a653f9", "isActive": true, "balance": "$2,086.97", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Eva Rivers", "gender": "female", "company": "DELPHIDE", "email": "evarivers@delphide.com", "phone": "+1 (907) 497-2977", "address": "626 Imlay Street, Blue, Texas, 3272", "about": "Excepteur nulla cupidatat velit proident sit exercitation sint anim eu ex id. Cillum anim Lorem anim incididunt pariatur do ex. Exercitation consequat amet deserunt dolor voluptate enim veniam commodo anim. Officia non sint ea laboris magna. Sunt aliqua reprehenderit aliqua nostrud et. Lorem sunt esse veniam amet Lorem adipisicing aute pariatur do aliquip occaecat Lorem laborum enim. Veniam ut laboris non est et est adipisicing cillum veniam proident est ipsum.\r\n", "registered": "2014-09-20T10:49:22-12:00", "latitude": -61.402131, "longitude": -39.805104, "tags": [ "tempor", "ad", "laborum", "aliqua", "non", "proident", "aliquip" ], "friends": [ { "id": 0, "name": "Concepcion Garner" }, { "id": 1, "name": "Rosario Mann" }, { "id": 2, "name": "Cochran Harvey" } ], "greeting": "Hello, Eva Rivers! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29682a3f3d1634e6fd", "index": 4202, "guid": "17da2335-9b8a-4fa1-b7c8-131cf5f63236", "isActive": true, "balance": "$2,211.90", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Alston Pollard", "gender": "male", "company": "APEXTRI", "email": "alstonpollard@apextri.com", "phone": "+1 (883) 534-3604", "address": "485 Beach Place, Motley, Oregon, 306", "about": "Occaecat id laboris laborum ex cillum ipsum aliqua nostrud adipisicing ullamco dolore sit consequat. Ut esse qui nisi et. Ut aliquip nulla culpa excepteur cillum aliqua eu proident irure anim. Est veniam voluptate aute in officia ipsum nostrud deserunt magna laborum veniam. Cupidatat occaecat velit velit tempor esse officia labore sunt. Minim est qui voluptate labore velit non aliquip mollit reprehenderit labore ea. In Lorem quis amet minim ad qui eu labore.\r\n", "registered": "2014-05-30T05:31:46-12:00", "latitude": -58.263858, "longitude": 67.48132, "tags": [ "Lorem", "culpa", "fugiat", "ad", "consectetur", "aute", "do" ], "friends": [ { "id": 0, "name": "Betty Davenport" }, { "id": 1, "name": "Greer Norton" }, { "id": 2, "name": "Douglas Mendez" } ], "greeting": "Hello, Alston Pollard! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2932560032eb4e8393", "index": 4203, "guid": "89698274-3ebc-4f9c-9d9e-d0b2a29a1537", "isActive": false, "balance": "$3,194.51", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Priscilla George", "gender": "female", "company": "TELLIFLY", "email": "priscillageorge@tellifly.com", "phone": "+1 (995) 572-3774", "address": "117 Interborough Parkway, Greenbush, Nevada, 9494", "about": "Sunt aute occaecat laboris officia occaecat anim ex. Pariatur commodo id in nostrud incididunt aliquip duis quis proident amet voluptate. Est fugiat nulla laboris eu exercitation consectetur. Lorem dolore dolor do cupidatat labore occaecat adipisicing aute elit elit dolor. Veniam ad ullamco irure ad culpa laboris eu amet sit qui ipsum proident.\r\n", "registered": "2014-09-11T23:47:25-12:00", "latitude": -31.247446, "longitude": 31.542188, "tags": [ "laborum", "exercitation", "irure", "nostrud", "ut", "voluptate", "sit" ], "friends": [ { "id": 0, "name": "Jeanie Park" }, { "id": 1, "name": "Moses Kerr" }, { "id": 2, "name": "Jenkins Roberts" } ], "greeting": "Hello, Priscilla George! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea294cfc973d5dbaca11", "index": 4204, "guid": "0ae82d0e-4385-461d-b275-c7766d1917e5", "isActive": false, "balance": "$1,043.59", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Autumn Holder", "gender": "female", "company": "FLUMBO", "email": "autumnholder@flumbo.com", "phone": "+1 (862) 596-3257", "address": "124 Mayfair Drive, Linganore, Minnesota, 2108", "about": "Labore excepteur id nulla non dolore Lorem sit consectetur. Dolor adipisicing cupidatat do proident irure esse nisi qui aliqua. Aliquip reprehenderit est velit aliquip magna cillum reprehenderit. Consequat esse proident amet laborum.\r\n", "registered": "2014-03-24T08:54:05-13:00", "latitude": -83.847095, "longitude": 54.678365, "tags": [ "magna", "mollit", "nulla", "labore", "do", "deserunt", "nulla" ], "friends": [ { "id": 0, "name": "Merritt Rollins" }, { "id": 1, "name": "Monica Gonzalez" }, { "id": 2, "name": "Harper Gonzales" } ], "greeting": "Hello, Autumn Holder! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea291959d53e3e81ddfe", "index": 4205, "guid": "6085a5d8-10e3-4e8e-98a4-64ce2f5482f7", "isActive": false, "balance": "$2,277.76", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Boyer Dickson", "gender": "male", "company": "DYNO", "email": "boyerdickson@dyno.com", "phone": "+1 (905) 502-2858", "address": "347 McClancy Place, Jamestown, Missouri, 8062", "about": "Aliquip labore ad nisi qui dolor cillum esse eu irure ad irure aliqua. Ea nulla reprehenderit do pariatur. Ea exercitation irure deserunt id laboris. Officia culpa sit sit est nostrud labore nostrud.\r\n", "registered": "2014-09-02T23:38:45-12:00", "latitude": -83.584609, "longitude": -68.093746, "tags": [ "ullamco", "irure", "ullamco", "tempor", "velit", "magna", "nulla" ], "friends": [ { "id": 0, "name": "Laurie Jordan" }, { "id": 1, "name": "Rosalie Herman" }, { "id": 2, "name": "Barbra Mcmahon" } ], "greeting": "Hello, Boyer Dickson! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29facc4d1eb2569c5a", "index": 4206, "guid": "7bb21f4c-0ef2-4bcf-91f6-bcaafbccf910", "isActive": false, "balance": "$1,616.05", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Ferguson Frost", "gender": "male", "company": "ISONUS", "email": "fergusonfrost@isonus.com", "phone": "+1 (853) 484-3302", "address": "206 Verona Street, Yorklyn, Rhode Island, 8560", "about": "Commodo ipsum cillum reprehenderit minim in nisi irure ullamco culpa proident. Elit tempor dolore aute deserunt Lorem adipisicing amet ut eiusmod. Anim incididunt ut labore quis duis cupidatat culpa.\r\n", "registered": "2014-06-12T11:50:08-12:00", "latitude": -21.853115, "longitude": -155.098626, "tags": [ "ad", "est", "nisi", "ipsum", "sint", "minim", "occaecat" ], "friends": [ { "id": 0, "name": "Compton Dale" }, { "id": 1, "name": "Marguerite Taylor" }, { "id": 2, "name": "Foreman Kirby" } ], "greeting": "Hello, Ferguson Frost! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29af366a9d21691bae", "index": 4207, "guid": "a12f0f83-6c01-440b-aaf8-499b095783b8", "isActive": true, "balance": "$3,969.22", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Peggy Hale", "gender": "female", "company": "XSPORTS", "email": "peggyhale@xsports.com", "phone": "+1 (902) 520-3809", "address": "280 Adler Place, Cascades, Florida, 1589", "about": "Et id enim ea sunt nulla excepteur esse aliquip sit. Labore minim excepteur anim nisi sit amet cillum culpa nisi proident in nisi. Quis laboris in veniam aliquip duis ex in. Nisi amet nulla consequat veniam fugiat.\r\n", "registered": "2014-09-09T21:20:00-12:00", "latitude": 4.785348, "longitude": -8.805648, "tags": [ "eu", "fugiat", "aute", "pariatur", "nostrud", "tempor", "Lorem" ], "friends": [ { "id": 0, "name": "Esmeralda Ballard" }, { "id": 1, "name": "Miranda Daugherty" }, { "id": 2, "name": "Kidd Cobb" } ], "greeting": "Hello, Peggy Hale! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea297c60c84a96a7525a", "index": 4208, "guid": "7f4297bc-9f5e-42cc-b92e-530593925fec", "isActive": false, "balance": "$2,853.61", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Stein Phillips", "gender": "male", "company": "ISOSURE", "email": "steinphillips@isosure.com", "phone": "+1 (878) 480-3313", "address": "557 Lorraine Street, Edmund, North Carolina, 935", "about": "Ut id dolor eu ad do sunt eu commodo sunt veniam. Quis nostrud ullamco Lorem esse cupidatat adipisicing labore do qui reprehenderit. Commodo id commodo minim ipsum sit magna. Minim ipsum commodo aute eu.\r\n", "registered": "2014-02-11T08:45:41-13:00", "latitude": 82.199351, "longitude": 145.743692, "tags": [ "dolor", "qui", "eiusmod", "ullamco", "excepteur", "commodo", "et" ], "friends": [ { "id": 0, "name": "Beryl Savage" }, { "id": 1, "name": "Mcdowell Maynard" }, { "id": 2, "name": "Collins Colon" } ], "greeting": "Hello, Stein Phillips! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2927fa67a86e36daa1", "index": 4209, "guid": "4d864f7f-001b-457e-a0de-299ab3c5dec4", "isActive": false, "balance": "$3,460.39", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Foley Pickett", "gender": "male", "company": "STRALUM", "email": "foleypickett@stralum.com", "phone": "+1 (865) 422-2565", "address": "820 Erskine Loop, Hayden, New Hampshire, 430", "about": "Est sunt ex tempor occaecat aute aute ipsum dolore minim occaecat occaecat. Labore est deserunt laborum sit sunt sunt exercitation cillum ullamco aliqua. Aliqua sit magna in pariatur ipsum voluptate ipsum ipsum deserunt sit. Voluptate magna laborum proident irure pariatur in id cillum ipsum laboris quis et. Deserunt ea amet esse quis aute commodo eiusmod culpa cupidatat. Ullamco eu minim eiusmod nostrud ullamco ea occaecat est. Culpa in in duis nisi sint exercitation ea consectetur.\r\n", "registered": "2014-05-09T02:11:30-12:00", "latitude": -41.168886, "longitude": -156.628394, "tags": [ "culpa", "aliqua", "Lorem", "nulla", "nostrud", "ea", "minim" ], "friends": [ { "id": 0, "name": "Dale Foley" }, { "id": 1, "name": "Lois Harding" }, { "id": 2, "name": "Carey Ball" } ], "greeting": "Hello, Foley Pickett! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2929f18b1d2906d109", "index": 4210, "guid": "a5ac406a-4782-48dc-b9c7-88906d51bd46", "isActive": false, "balance": "$1,358.73", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Hansen Walker", "gender": "male", "company": "EQUICOM", "email": "hansenwalker@equicom.com", "phone": "+1 (858) 475-3187", "address": "503 Roosevelt Place, Sanford, Arkansas, 2006", "about": "Laborum ullamco officia quis et ad irure. Labore do incididunt ad nostrud sit eu sunt do ut. Lorem duis nulla adipisicing dolore quis.\r\n", "registered": "2014-08-17T11:14:52-12:00", "latitude": -64.819495, "longitude": -101.492031, "tags": [ "nostrud", "duis", "cillum", "irure", "incididunt", "incididunt", "qui" ], "friends": [ { "id": 0, "name": "Dana Ferguson" }, { "id": 1, "name": "Phoebe Townsend" }, { "id": 2, "name": "Margie Knight" } ], "greeting": "Hello, Hansen Walker! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2976de033198084c91", "index": 4211, "guid": "d9bc4539-8cb2-4319-8958-7196a1b8fb62", "isActive": false, "balance": "$1,131.18", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Kasey Reynolds", "gender": "female", "company": "ISBOL", "email": "kaseyreynolds@isbol.com", "phone": "+1 (962) 499-2147", "address": "221 Howard Place, Southview, Iowa, 4245", "about": "Voluptate do adipisicing magna deserunt sit adipisicing nulla. Sint ad deserunt ex pariatur. Amet aute duis do aute consequat aliquip sit dolor dolor aute veniam. Labore irure aute deserunt dolore officia mollit adipisicing quis nisi.\r\n", "registered": "2014-02-07T16:48:52-13:00", "latitude": 85.692321, "longitude": 23.373987, "tags": [ "consequat", "eiusmod", "sunt", "enim", "duis", "elit", "dolor" ], "friends": [ { "id": 0, "name": "Mullen Dunn" }, { "id": 1, "name": "Tia Graham" }, { "id": 2, "name": "Mercedes Vincent" } ], "greeting": "Hello, Kasey Reynolds! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea292540d719dc001004", "index": 4212, "guid": "5be424c4-2b1b-4599-90c8-2bf0376200bf", "isActive": false, "balance": "$1,576.51", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Dillon Ellison", "gender": "male", "company": "EXERTA", "email": "dillonellison@exerta.com", "phone": "+1 (861) 421-2418", "address": "630 Drew Street, Fontanelle, Nebraska, 6333", "about": "Pariatur cillum ipsum dolor cillum quis anim sit officia ex ipsum dolor cillum laborum. Deserunt consectetur ut mollit reprehenderit qui occaecat occaecat sint esse reprehenderit ad. Elit minim cupidatat veniam exercitation nulla non officia sunt nulla. Minim aliqua elit velit non cillum qui eu deserunt ullamco. Laboris dolore anim duis ex aliquip aliquip anim fugiat non cillum occaecat laboris. Veniam mollit id aute et pariatur ullamco. Commodo ea sit minim Lorem.\r\n", "registered": "2014-03-19T22:24:06-13:00", "latitude": -88.992735, "longitude": -132.721772, "tags": [ "irure", "culpa", "enim", "consequat", "sint", "eu", "eu" ], "friends": [ { "id": 0, "name": "Cleveland Armstrong" }, { "id": 1, "name": "Alyce Reid" }, { "id": 2, "name": "Fitzgerald Sears" } ], "greeting": "Hello, Dillon Ellison! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29af87fe8994e32121", "index": 4213, "guid": "46d46b75-2e50-4414-900d-c1b418d22d3d", "isActive": false, "balance": "$1,660.30", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Crystal Anthony", "gender": "female", "company": "ORBIXTAR", "email": "crystalanthony@orbixtar.com", "phone": "+1 (952) 587-3724", "address": "307 Foster Avenue, Waukeenah, District Of Columbia, 3424", "about": "Anim elit sit cupidatat proident. Dolore eiusmod officia Lorem aliquip ullamco dolor velit aliqua velit magna ipsum esse laboris. Qui qui duis consectetur deserunt duis quis quis consectetur aute. Reprehenderit non voluptate ex aliquip velit tempor ut ullamco minim pariatur nostrud cupidatat tempor. Est occaecat magna esse veniam deserunt elit elit anim nulla et amet irure enim pariatur.\r\n", "registered": "2014-08-13T12:47:30-12:00", "latitude": -20.72988, "longitude": -117.6312, "tags": [ "laboris", "ea", "non", "nisi", "reprehenderit", "proident", "est" ], "friends": [ { "id": 0, "name": "Ericka Myers" }, { "id": 1, "name": "Graham Raymond" }, { "id": 2, "name": "Shannon Golden" } ], "greeting": "Hello, Crystal Anthony! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29df2586d7ce4b792f", "index": 4214, "guid": "029d7d2e-2116-47ee-8190-04f8f77af3a0", "isActive": true, "balance": "$2,437.17", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Carole Roy", "gender": "female", "company": "BEADZZA", "email": "caroleroy@beadzza.com", "phone": "+1 (950) 512-2337", "address": "200 Devon Avenue, Coalmont, New Jersey, 1614", "about": "Eu velit esse fugiat mollit in duis amet non qui consequat consequat amet. Consectetur cillum labore sint est culpa consequat aliqua amet adipisicing in dolor duis non ex. Adipisicing tempor velit minim voluptate eiusmod sint cillum cillum labore cillum do sint aliqua elit. Eiusmod esse dolore anim incididunt elit cillum ad culpa eiusmod elit tempor. Cupidatat ut laborum sint in quis enim occaecat laborum enim Lorem. Qui cillum eiusmod in laborum deserunt Lorem incididunt sint enim excepteur.\r\n", "registered": "2014-09-23T04:19:23-12:00", "latitude": 50.331185, "longitude": -98.844329, "tags": [ "duis", "proident", "pariatur", "non", "et", "nulla", "do" ], "friends": [ { "id": 0, "name": "Marks Clemons" }, { "id": 1, "name": "Hilda England" }, { "id": 2, "name": "Freeman Reyes" } ], "greeting": "Hello, Carole Roy! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29396e3a5637560366", "index": 4215, "guid": "896c533d-2914-47f3-8467-bc73eb6eb6a6", "isActive": false, "balance": "$2,034.27", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Hart Shields", "gender": "male", "company": "MOREGANIC", "email": "hartshields@moreganic.com", "phone": "+1 (863) 585-2966", "address": "941 Jackson Street, Chloride, Palau, 4180", "about": "Ullamco tempor consectetur consequat est. Do irure labore minim adipisicing ut velit consequat. Voluptate cillum ex culpa pariatur dolore occaecat do cillum minim enim incididunt. Nostrud quis culpa aliqua aliqua esse cillum cupidatat consectetur tempor. Deserunt nulla irure labore fugiat sunt enim sint veniam.\r\n", "registered": "2014-07-13T02:02:33-12:00", "latitude": 18.774105, "longitude": -13.066667, "tags": [ "enim", "id", "excepteur", "laborum", "veniam", "nostrud", "magna" ], "friends": [ { "id": 0, "name": "Carr Tillman" }, { "id": 1, "name": "Olsen Valentine" }, { "id": 2, "name": "Herman Edwards" } ], "greeting": "Hello, Hart Shields! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29c3a4c17dc5af96c7", "index": 4216, "guid": "34e27d8e-03fd-4943-9b84-8f7402fbfd7e", "isActive": false, "balance": "$2,477.17", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Wilda Shelton", "gender": "female", "company": "SOFTMICRO", "email": "wildashelton@softmicro.com", "phone": "+1 (950) 517-3752", "address": "877 Lawrence Street, Cotopaxi, Puerto Rico, 2873", "about": "Dolore et cillum fugiat sunt officia. Eiusmod velit esse esse Lorem minim duis consectetur ipsum culpa mollit consequat id ipsum occaecat. Proident aute labore voluptate nulla dolor eiusmod et irure occaecat nisi. Ex ipsum commodo ea ut dolore aliquip incididunt proident enim irure velit voluptate.\r\n", "registered": "2014-02-19T03:50:34-13:00", "latitude": -87.504693, "longitude": -99.484127, "tags": [ "nostrud", "deserunt", "officia", "ut", "excepteur", "ad", "eiusmod" ], "friends": [ { "id": 0, "name": "Vonda Soto" }, { "id": 1, "name": "Valerie Mccall" }, { "id": 2, "name": "Oconnor Strong" } ], "greeting": "Hello, Wilda Shelton! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29179249391db66dd5", "index": 4217, "guid": "da3594e5-8eb0-4b00-bcca-d58fd00dff7b", "isActive": false, "balance": "$1,376.47", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Barry Brown", "gender": "male", "company": "EZENT", "email": "barrybrown@ezent.com", "phone": "+1 (851) 499-2718", "address": "140 Gerritsen Avenue, Shepardsville, California, 9954", "about": "Nulla qui commodo elit consectetur commodo proident ut eiusmod incididunt irure nisi magna. Est cupidatat officia nulla sunt amet id. Pariatur cillum culpa magna sunt sint ipsum labore sit. Proident occaecat ipsum Lorem deserunt anim id ex irure fugiat.\r\n", "registered": "2014-07-06T04:26:22-12:00", "latitude": 73.127619, "longitude": -143.393911, "tags": [ "aliquip", "laboris", "cillum", "ea", "consequat", "labore", "elit" ], "friends": [ { "id": 0, "name": "Carrillo Gregory" }, { "id": 1, "name": "Hoffman Mccoy" }, { "id": 2, "name": "Marta Mcconnell" } ], "greeting": "Hello, Barry Brown! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29533248a9dfaaac1b", "index": 4218, "guid": "bc0378ba-2b52-460c-8e9c-878e2b9edd8f", "isActive": false, "balance": "$2,248.33", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Molly Collier", "gender": "female", "company": "EXOSWITCH", "email": "mollycollier@exoswitch.com", "phone": "+1 (941) 590-2879", "address": "866 Allen Avenue, Ruffin, Vermont, 8597", "about": "Duis dolor cillum sint pariatur quis deserunt dolor proident in laboris Lorem sint veniam labore. Duis labore incididunt enim Lorem ipsum. Id aliqua qui velit dolore sit sunt commodo anim. Sit ipsum sunt nisi occaecat proident sit incididunt dolor velit ad sit. Labore cupidatat excepteur tempor enim tempor.\r\n", "registered": "2014-07-10T23:12:22-12:00", "latitude": 47.264738, "longitude": 72.469131, "tags": [ "velit", "do", "enim", "officia", "aute", "eu", "consectetur" ], "friends": [ { "id": 0, "name": "Noreen Baxter" }, { "id": 1, "name": "Dale Blake" }, { "id": 2, "name": "Vicky Lancaster" } ], "greeting": "Hello, Molly Collier! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2950fc75747aa4ac99", "index": 4219, "guid": "42d65d18-483c-4b37-9a59-c974bfefe441", "isActive": false, "balance": "$1,476.38", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Cooley Donovan", "gender": "male", "company": "VURBO", "email": "cooleydonovan@vurbo.com", "phone": "+1 (924) 473-3457", "address": "574 Times Placez, Zortman, Indiana, 3141", "about": "Non dolor proident cupidatat laboris commodo Lorem duis do exercitation aliquip ullamco aliqua. Dolor elit quis amet id dolore. Elit laboris nostrud officia commodo in anim irure ipsum sit est ea fugiat. Excepteur incididunt esse aute reprehenderit eiusmod labore eu. Aliquip eiusmod in aliqua aute do ullamco tempor ullamco ipsum nisi sunt fugiat velit consectetur. Anim ullamco reprehenderit irure incididunt culpa dolor ipsum et do officia aliqua et anim aute. Sint reprehenderit officia laboris ut.\r\n", "registered": "2014-07-18T23:03:40-12:00", "latitude": 19.772718, "longitude": 166.233282, "tags": [ "consectetur", "ullamco", "culpa", "eu", "aliquip", "voluptate", "exercitation" ], "friends": [ { "id": 0, "name": "Faye Jenkins" }, { "id": 1, "name": "Stacey Pate" }, { "id": 2, "name": "Graciela Velez" } ], "greeting": "Hello, Cooley Donovan! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29c3c198fa30f17102", "index": 4220, "guid": "2af74ee3-179d-46be-95d6-8af4715f64df", "isActive": true, "balance": "$3,647.52", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Poole Higgins", "gender": "male", "company": "NURPLEX", "email": "poolehiggins@nurplex.com", "phone": "+1 (834) 577-2391", "address": "142 Hendrickson Place, Reno, Illinois, 428", "about": "Esse amet duis duis esse quis officia cupidatat et. Dolore ad ex nostrud consectetur est esse. Et sint enim anim ut excepteur veniam nostrud aliqua ut consequat. Id sit sit est ut nisi Lorem nulla esse velit ullamco eu esse voluptate consequat. Do amet id elit excepteur ex adipisicing officia commodo sunt nisi dolor anim. Cupidatat magna et minim incididunt magna consequat laboris officia minim.\r\n", "registered": "2014-09-04T14:10:32-12:00", "latitude": -11.984922, "longitude": 169.753245, "tags": [ "quis", "quis", "minim", "esse", "nisi", "labore", "amet" ], "friends": [ { "id": 0, "name": "Wilson Berry" }, { "id": 1, "name": "Howe Peterson" }, { "id": 2, "name": "Edwina Solomon" } ], "greeting": "Hello, Poole Higgins! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea293b1c8bf4c6b95ba7", "index": 4221, "guid": "f820328b-e487-4fa4-8369-4c9140fb5832", "isActive": true, "balance": "$3,485.85", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Franks Nixon", "gender": "male", "company": "ICOLOGY", "email": "franksnixon@icology.com", "phone": "+1 (890) 538-3521", "address": "588 Kent Street, Cowiche, South Carolina, 1008", "about": "Culpa esse sint sit Lorem mollit magna excepteur laboris nisi dolor. Minim mollit labore ullamco aliquip. Sint laboris eiusmod reprehenderit excepteur commodo quis deserunt dolore. Veniam nulla voluptate irure laboris sunt labore. Officia irure exercitation tempor elit aliqua do commodo eu cillum cillum fugiat culpa.\r\n", "registered": "2014-01-19T15:30:28-13:00", "latitude": -24.360706, "longitude": -53.279111, "tags": [ "ad", "ea", "fugiat", "qui", "non", "aliquip", "excepteur" ], "friends": [ { "id": 0, "name": "Maldonado Fulton" }, { "id": 1, "name": "Susie Roberson" }, { "id": 2, "name": "Logan Stuart" } ], "greeting": "Hello, Franks Nixon! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea290fa73aa6eb7b773e", "index": 4222, "guid": "4e3fdd48-66e0-4823-8f1a-66b4d9cbcb93", "isActive": false, "balance": "$3,349.71", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Lucy Chambers", "gender": "female", "company": "SPHERIX", "email": "lucychambers@spherix.com", "phone": "+1 (920) 530-3554", "address": "989 Montana Place, Campo, American Samoa, 704", "about": "Labore aliquip occaecat excepteur et amet deserunt id aliquip laboris dolore consequat proident nisi sunt. Consectetur officia esse aliqua nulla reprehenderit proident tempor ullamco non anim aliquip qui laboris mollit. Fugiat ad ad labore consectetur veniam mollit eiusmod voluptate laboris laboris laboris. Minim labore fugiat veniam nulla laborum mollit ullamco eiusmod nulla dolore laborum sint.\r\n", "registered": "2014-04-30T02:24:56-12:00", "latitude": -32.909751, "longitude": -7.627824, "tags": [ "ea", "duis", "cillum", "commodo", "velit", "sunt", "et" ], "friends": [ { "id": 0, "name": "Shana Ellis" }, { "id": 1, "name": "Nadine Lambert" }, { "id": 2, "name": "Deidre Guerra" } ], "greeting": "Hello, Lucy Chambers! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29d2ec8dea23838cc6", "index": 4223, "guid": "9ca91996-e7c7-4658-bdb3-23ad77f38b92", "isActive": true, "balance": "$2,578.06", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Mavis Stevens", "gender": "female", "company": "DADABASE", "email": "mavisstevens@dadabase.com", "phone": "+1 (909) 497-2961", "address": "532 Crown Street, Baker, Delaware, 7794", "about": "Eu irure elit minim cillum pariatur labore irure mollit. Qui sint do aute aute laboris ex irure fugiat culpa voluptate. Voluptate dolore Lorem amet sint aliquip dolore ad exercitation dolore tempor.\r\n", "registered": "2014-08-07T09:05:10-12:00", "latitude": -59.891792, "longitude": 70.669397, "tags": [ "elit", "consequat", "ullamco", "ipsum", "ad", "cillum", "cillum" ], "friends": [ { "id": 0, "name": "Karin Hunt" }, { "id": 1, "name": "Marquita Guzman" }, { "id": 2, "name": "Mcdonald Hickman" } ], "greeting": "Hello, Mavis Stevens! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29466f40bfee40866f", "index": 4224, "guid": "0f0262da-8ebd-4cd7-8462-f11673eaa047", "isActive": false, "balance": "$1,324.12", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Samantha Cooley", "gender": "female", "company": "INFOTRIPS", "email": "samanthacooley@infotrips.com", "phone": "+1 (847) 593-3048", "address": "907 Bond Street, Cumberland, Pennsylvania, 9887", "about": "Cupidatat esse culpa ut ipsum officia. Dolor minim ex consequat fugiat proident cillum commodo dolor irure et laborum Lorem reprehenderit. Culpa elit adipisicing dolore labore cupidatat magna reprehenderit id tempor esse.\r\n", "registered": "2014-03-29T06:11:56-13:00", "latitude": -48.75755, "longitude": 47.418673, "tags": [ "est", "culpa", "dolor", "duis", "ut", "esse", "id" ], "friends": [ { "id": 0, "name": "Horne Ortiz" }, { "id": 1, "name": "Delores French" }, { "id": 2, "name": "Ellis Carver" } ], "greeting": "Hello, Samantha Cooley! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29f81f444fc26f295c", "index": 4225, "guid": "0218061a-09d0-4977-9717-276876b9ffbb", "isActive": true, "balance": "$3,290.95", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Maribel Hughes", "gender": "female", "company": "PODUNK", "email": "maribelhughes@podunk.com", "phone": "+1 (925) 514-3314", "address": "115 Bergen Place, Vienna, Georgia, 5667", "about": "Tempor ipsum est tempor pariatur fugiat ea. Ea consequat est irure laboris officia nisi sunt eu occaecat incididunt. Incididunt aliquip et consequat aliquip et ex proident mollit voluptate. Velit velit in voluptate fugiat elit anim qui elit minim. Officia et duis nulla amet et veniam labore deserunt quis eu duis adipisicing duis. Deserunt ullamco cupidatat laborum exercitation eiusmod excepteur incididunt enim dolore. Commodo cillum ipsum anim reprehenderit reprehenderit sint nulla ea commodo velit nulla.\r\n", "registered": "2014-04-21T09:34:04-12:00", "latitude": 26.138024, "longitude": 145.323301, "tags": [ "velit", "velit", "deserunt", "nostrud", "occaecat", "sit", "enim" ], "friends": [ { "id": 0, "name": "Daniels Acosta" }, { "id": 1, "name": "Rosario Christian" }, { "id": 2, "name": "Rodriguez Powers" } ], "greeting": "Hello, Maribel Hughes! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea291d272f58edc40d2b", "index": 4226, "guid": "18ed3190-c3e5-4897-919b-02252d41e26b", "isActive": true, "balance": "$3,899.74", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Gayle Oliver", "gender": "female", "company": "STROZEN", "email": "gayleoliver@strozen.com", "phone": "+1 (805) 522-3546", "address": "637 Dumont Avenue, Heil, North Dakota, 9580", "about": "Minim do Lorem tempor tempor reprehenderit velit tempor exercitation. Cillum Lorem adipisicing sint anim. Cupidatat aliquip dolor aliquip ea sint proident nostrud aliqua dolor ipsum sunt deserunt. Ex officia excepteur consequat cupidatat consectetur anim consequat proident. Reprehenderit aute et commodo aliqua id Lorem in Lorem.\r\n", "registered": "2014-09-04T12:16:41-12:00", "latitude": 62.431886, "longitude": -27.034904, "tags": [ "esse", "qui", "proident", "incididunt", "sint", "labore", "ex" ], "friends": [ { "id": 0, "name": "Valencia Douglas" }, { "id": 1, "name": "Knight Brewer" }, { "id": 2, "name": "Warren Walsh" } ], "greeting": "Hello, Gayle Oliver! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2998c08eec592527c4", "index": 4227, "guid": "da688b85-1496-43f2-993a-2157249414c9", "isActive": true, "balance": "$2,393.28", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Jarvis Herring", "gender": "male", "company": "GEOSTELE", "email": "jarvisherring@geostele.com", "phone": "+1 (933) 472-3122", "address": "889 Grove Place, Flintville, Louisiana, 469", "about": "Cillum nulla nisi non fugiat occaecat officia laboris nulla quis. Veniam deserunt culpa ullamco et. Ullamco ut culpa et qui consequat cupidatat duis fugiat sunt commodo aliquip reprehenderit irure. Minim occaecat ea adipisicing velit labore duis duis deserunt. Elit sunt laborum eu id eiusmod irure.\r\n", "registered": "2014-01-24T11:58:54-13:00", "latitude": -50.990981, "longitude": 137.169088, "tags": [ "proident", "laborum", "adipisicing", "id", "occaecat", "enim", "deserunt" ], "friends": [ { "id": 0, "name": "Battle Chaney" }, { "id": 1, "name": "Cole Hunter" }, { "id": 2, "name": "Karina Cantrell" } ], "greeting": "Hello, Jarvis Herring! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2992d068576daa4554", "index": 4228, "guid": "019cc2db-1548-4099-9d0c-8b19c73226dd", "isActive": true, "balance": "$3,516.53", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Gay Monroe", "gender": "male", "company": "MOLTONIC", "email": "gaymonroe@moltonic.com", "phone": "+1 (979) 584-3022", "address": "645 Jackson Place, Dotsero, Northern Mariana Islands, 1019", "about": "Officia irure eu pariatur ad adipisicing cillum nostrud aute ut minim irure Lorem aliquip. Aute tempor aute minim non mollit anim exercitation ullamco est est. Voluptate eiusmod duis qui sit anim ea veniam do culpa reprehenderit occaecat esse. Mollit minim nostrud ipsum excepteur sunt ut ea ex velit. Ex eiusmod nostrud cupidatat ut sunt ex aute cillum eiusmod enim qui esse. Ex sint qui culpa exercitation cillum consequat ex.\r\n", "registered": "2014-03-27T21:05:25-13:00", "latitude": -10.148772, "longitude": -159.41785, "tags": [ "laborum", "elit", "voluptate", "officia", "deserunt", "culpa", "laborum" ], "friends": [ { "id": 0, "name": "French Harper" }, { "id": 1, "name": "Ashley Stout" }, { "id": 2, "name": "Guadalupe Glenn" } ], "greeting": "Hello, Gay Monroe! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29c5f293eb86616ae4", "index": 4229, "guid": "65269f59-6973-4655-90f1-2c4d62ba1968", "isActive": true, "balance": "$1,670.13", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Lourdes Goff", "gender": "female", "company": "NIKUDA", "email": "lourdesgoff@nikuda.com", "phone": "+1 (857) 436-2386", "address": "773 Hemlock Street, Yettem, Colorado, 755", "about": "Laboris anim incididunt reprehenderit ea minim est eu. Aliqua enim cupidatat exercitation velit ad nulla officia dolor mollit. Lorem consequat officia culpa aliqua nisi magna adipisicing excepteur ipsum.\r\n", "registered": "2014-06-03T01:18:16-12:00", "latitude": -22.057356, "longitude": -26.531559, "tags": [ "sit", "laboris", "fugiat", "nisi", "dolor", "nisi", "est" ], "friends": [ { "id": 0, "name": "Kellie Cannon" }, { "id": 1, "name": "Olson Buchanan" }, { "id": 2, "name": "Ware Trujillo" } ], "greeting": "Hello, Lourdes Goff! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea294cd982a27d13f9c0", "index": 4230, "guid": "d0ec05bb-0c46-4b83-b0cf-cfac7863d87c", "isActive": true, "balance": "$2,946.37", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Hobbs Pittman", "gender": "male", "company": "AVIT", "email": "hobbspittman@avit.com", "phone": "+1 (861) 511-2498", "address": "707 Clay Street, Bowie, Idaho, 9874", "about": "Qui ex in labore ullamco tempor non voluptate occaecat sit. Mollit officia sit esse officia quis minim. Irure dolor elit ut adipisicing quis eiusmod aliqua minim eiusmod amet. Do sint cillum culpa non ut.\r\n", "registered": "2014-03-31T00:05:01-13:00", "latitude": -39.030629, "longitude": -98.052142, "tags": [ "labore", "proident", "commodo", "ipsum", "laboris", "ipsum", "officia" ], "friends": [ { "id": 0, "name": "Bond Crane" }, { "id": 1, "name": "Frazier Pruitt" }, { "id": 2, "name": "Elaine Holmes" } ], "greeting": "Hello, Hobbs Pittman! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29c8288bd306bc015e", "index": 4231, "guid": "1202df46-bba5-4e5c-9a19-3236d165dbda", "isActive": true, "balance": "$1,338.28", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Henrietta Bryant", "gender": "female", "company": "COMVENE", "email": "henriettabryant@comvene.com", "phone": "+1 (941) 535-2730", "address": "732 Flatbush Avenue, Johnsonburg, Marshall Islands, 835", "about": "Nostrud anim exercitation sit duis sit eiusmod velit veniam aliquip dolor sit duis cillum est. Pariatur laboris in ea dolor minim sunt cillum qui officia elit. Mollit sunt qui magna aliquip quis voluptate nisi sunt. Tempor dolore minim laborum labore reprehenderit excepteur tempor irure est velit occaecat ut.\r\n", "registered": "2014-02-16T14:36:02-13:00", "latitude": 21.940738, "longitude": 105.786938, "tags": [ "voluptate", "laboris", "proident", "ad", "qui", "reprehenderit", "pariatur" ], "friends": [ { "id": 0, "name": "Leanna Cummings" }, { "id": 1, "name": "Sweet Gilmore" }, { "id": 2, "name": "Bianca Powell" } ], "greeting": "Hello, Henrietta Bryant! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29745891bce0407eaa", "index": 4232, "guid": "9b775f97-1e74-455f-9bcb-28c85c7d754d", "isActive": false, "balance": "$1,060.22", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Bridget Silva", "gender": "female", "company": "OPTYK", "email": "bridgetsilva@optyk.com", "phone": "+1 (925) 454-2570", "address": "572 Fanchon Place, Eden, New York, 9291", "about": "Cupidatat ipsum nisi aliqua quis mollit eu in id aliqua amet commodo. Cillum do ex dolore velit laborum tempor aute irure eu in fugiat. Voluptate dolore ut amet commodo id dolore duis est ipsum dolor laborum magna. Non laborum id nisi cupidatat officia ea non. Occaecat aliqua consectetur ea elit elit culpa culpa consequat magna laborum. Anim pariatur ipsum ipsum dolor nulla dolore aliquip. Et quis veniam adipisicing cillum adipisicing esse anim sit magna ut culpa.\r\n", "registered": "2014-09-10T21:37:00-12:00", "latitude": -63.178069, "longitude": 172.935602, "tags": [ "cupidatat", "quis", "sint", "pariatur", "eiusmod", "ullamco", "in" ], "friends": [ { "id": 0, "name": "Bobbi Wong" }, { "id": 1, "name": "Hawkins Hood" }, { "id": 2, "name": "Evangelina Herrera" } ], "greeting": "Hello, Bridget Silva! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2972873376f9b41702", "index": 4233, "guid": "b354e6fe-944d-4bfa-b7a1-6db31edc9403", "isActive": false, "balance": "$3,272.95", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Sara Hanson", "gender": "female", "company": "HAIRPORT", "email": "sarahanson@hairport.com", "phone": "+1 (884) 517-3200", "address": "461 Dooley Street, Waumandee, Guam, 3750", "about": "Qui anim id veniam nulla. Excepteur mollit mollit minim eu irure do minim sunt occaecat qui occaecat commodo quis dolore. Ex fugiat voluptate commodo labore cillum enim amet magna enim minim nisi commodo amet velit. Dolore anim incididunt do consequat pariatur cupidatat officia pariatur sit nisi. Commodo officia nisi minim veniam irure ea irure ea eu culpa. Pariatur culpa laboris exercitation labore excepteur adipisicing.\r\n", "registered": "2014-02-15T11:03:15-13:00", "latitude": -7.288186, "longitude": 17.712571, "tags": [ "irure", "reprehenderit", "aliqua", "qui", "elit", "aliqua", "voluptate" ], "friends": [ { "id": 0, "name": "Marietta Hammond" }, { "id": 1, "name": "Christy Burnett" }, { "id": 2, "name": "Mcleod Barr" } ], "greeting": "Hello, Sara Hanson! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29df7ec87303082db3", "index": 4234, "guid": "dc458a06-4225-4283-81d1-315ee28c2604", "isActive": false, "balance": "$1,533.48", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Osborn Bradley", "gender": "male", "company": "TRI@TRIBALOG", "email": "osbornbradley@tri@tribalog.com", "phone": "+1 (963) 424-3037", "address": "271 Huron Street, Carlos, Virgin Islands, 4588", "about": "Esse culpa cupidatat sit quis commodo aute velit cupidatat. Nulla eu sint ut reprehenderit ex occaecat id non. Esse laboris enim ullamco deserunt id Lorem pariatur ex id nulla est magna cillum eu.\r\n", "registered": "2014-05-08T14:31:03-12:00", "latitude": 68.678185, "longitude": -55.599769, "tags": [ "id", "magna", "id", "consectetur", "anim", "dolore", "enim" ], "friends": [ { "id": 0, "name": "Buchanan Howard" }, { "id": 1, "name": "Madeleine Webster" }, { "id": 2, "name": "Chrystal Weber" } ], "greeting": "Hello, Osborn Bradley! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29742db44d2d1b26d3", "index": 4235, "guid": "36f4fb1e-5757-4fce-af70-7b12927beabc", "isActive": true, "balance": "$3,688.53", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Moss Faulkner", "gender": "male", "company": "ISOLOGIX", "email": "mossfaulkner@isologix.com", "phone": "+1 (996) 504-3836", "address": "121 Tennis Court, Edgewater, Massachusetts, 1043", "about": "Excepteur qui deserunt deserunt Lorem ipsum fugiat. Ad et tempor sunt cillum magna labore minim dolore et eu minim. Sit qui sunt mollit ex magna proident laboris ex adipisicing. Incididunt labore nisi consectetur eu fugiat ad proident occaecat incididunt qui pariatur. Amet qui amet incididunt enim irure laborum consequat et ad.\r\n", "registered": "2014-04-05T19:57:30-13:00", "latitude": 84.758045, "longitude": 116.92124, "tags": [ "dolor", "pariatur", "qui", "ullamco", "veniam", "occaecat", "amet" ], "friends": [ { "id": 0, "name": "Roxanne Richardson" }, { "id": 1, "name": "Juliana Hess" }, { "id": 2, "name": "Tracey Olson" } ], "greeting": "Hello, Moss Faulkner! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29bcd79bd8e49816a7", "index": 4236, "guid": "6ba62e2f-ae2d-4b6c-bfd9-2e17245a3c26", "isActive": true, "balance": "$1,083.75", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Melanie Ferrell", "gender": "female", "company": "TOURMANIA", "email": "melanieferrell@tourmania.com", "phone": "+1 (886) 516-2166", "address": "230 Chase Court, Kent, Utah, 9842", "about": "In cillum nisi culpa officia eu adipisicing tempor excepteur dolor id ad in. Nulla dolor do elit enim ipsum quis quis aliqua laboris voluptate aliquip. Aliqua sit consequat mollit veniam duis laboris eiusmod mollit ut pariatur in nulla officia mollit. Tempor laboris incididunt magna magna pariatur fugiat ut excepteur eu in nostrud. Deserunt aute pariatur occaecat qui ea ad ut duis cupidatat esse exercitation ex culpa qui.\r\n", "registered": "2014-08-27T12:07:19-12:00", "latitude": -49.849521, "longitude": -144.931385, "tags": [ "amet", "culpa", "in", "et", "nulla", "do", "minim" ], "friends": [ { "id": 0, "name": "Geraldine Blevins" }, { "id": 1, "name": "Patrica Andrews" }, { "id": 2, "name": "Thelma Campos" } ], "greeting": "Hello, Melanie Ferrell! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29bcd036fd9af34abd", "index": 4237, "guid": "5314010e-b7bd-4f1f-ba64-d42afb3ff59b", "isActive": false, "balance": "$3,356.00", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Dixie Dean", "gender": "female", "company": "CALCU", "email": "dixiedean@calcu.com", "phone": "+1 (869) 476-3193", "address": "397 Wortman Avenue, Vivian, Montana, 767", "about": "Aliqua velit Lorem culpa do officia magna voluptate magna exercitation elit nulla eu anim. Enim ad fugiat labore mollit cupidatat amet exercitation aute dolore et. Non aliquip est laborum aliqua enim. Irure exercitation do proident elit eu aute.\r\n", "registered": "2014-03-31T00:29:17-13:00", "latitude": -10.489975, "longitude": -4.929896, "tags": [ "do", "id", "cillum", "laboris", "ut", "culpa", "laborum" ], "friends": [ { "id": 0, "name": "Villarreal Cotton" }, { "id": 1, "name": "Weiss Winters" }, { "id": 2, "name": "Agnes Payne" } ], "greeting": "Hello, Dixie Dean! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29ad8f1ec6a3e3ff3c", "index": 4238, "guid": "fdd20cc6-8c07-46ce-a2e1-8b0d0b55bea7", "isActive": false, "balance": "$3,481.38", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Rowland Puckett", "gender": "male", "company": "METROZ", "email": "rowlandpuckett@metroz.com", "phone": "+1 (807) 500-2690", "address": "221 Turnbull Avenue, Brule, Wisconsin, 3853", "about": "Magna et enim in sit reprehenderit quis laboris incididunt. Exercitation tempor adipisicing laboris anim pariatur enim commodo cillum ex ullamco. Ut nostrud qui consequat nisi tempor ea fugiat fugiat. Qui non ut do Lorem sint esse duis esse consectetur. Occaecat exercitation sunt et ut magna excepteur exercitation mollit sit veniam.\r\n", "registered": "2014-06-04T02:38:50-12:00", "latitude": 88.412451, "longitude": 80.190534, "tags": [ "aliqua", "commodo", "do", "voluptate", "et", "fugiat", "cupidatat" ], "friends": [ { "id": 0, "name": "Scott Finley" }, { "id": 1, "name": "Anne Conrad" }, { "id": 2, "name": "Gay Allison" } ], "greeting": "Hello, Rowland Puckett! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29887dab0e4409c5bb", "index": 4239, "guid": "332e5f2f-b5d7-4655-b5f3-e7f361684da8", "isActive": true, "balance": "$3,369.33", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Annabelle Dennis", "gender": "female", "company": "XANIDE", "email": "annabelledennis@xanide.com", "phone": "+1 (994) 554-2642", "address": "744 Albany Avenue, Torboy, Maine, 5469", "about": "Consequat et dolor ex aute et cillum do quis culpa eiusmod. Non enim irure occaecat duis commodo occaecat quis laborum magna do velit aliquip cupidatat. Eu dolor occaecat ex sunt tempor veniam officia eiusmod laboris. Exercitation dolor reprehenderit dolor et. Ut eu et consequat veniam sint enim sint.\r\n", "registered": "2014-06-17T22:22:26-12:00", "latitude": -5.245482, "longitude": -135.822114, "tags": [ "ex", "ullamco", "ullamco", "exercitation", "exercitation", "duis", "proident" ], "friends": [ { "id": 0, "name": "Cote Bright" }, { "id": 1, "name": "Ruby Freeman" }, { "id": 2, "name": "Elva Vargas" } ], "greeting": "Hello, Annabelle Dennis! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29d8aab06bfc68bb23", "index": 4240, "guid": "dca50d92-3aeb-4196-a30e-9aa9d57b16bb", "isActive": false, "balance": "$1,274.18", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Burgess Fuentes", "gender": "male", "company": "BUZZNESS", "email": "burgessfuentes@buzzness.com", "phone": "+1 (958) 483-2331", "address": "462 Farragut Place, Elizaville, Virginia, 6826", "about": "Do do deserunt ea cupidatat dolor dolore esse consectetur esse fugiat Lorem adipisicing excepteur. Consequat ex non excepteur ex dolore dolore aliquip dolore. Excepteur reprehenderit ad ad id eiusmod velit anim ea nisi nisi ex enim. Magna do magna aliquip eu excepteur anim labore duis duis duis amet laboris ut. Pariatur quis velit occaecat id excepteur sit ad culpa laboris nulla tempor. Tempor nisi dolor voluptate aliquip tempor esse sit Lorem cillum nisi amet exercitation. Eu ullamco ut aliquip voluptate culpa sunt ipsum in quis irure nostrud.\r\n", "registered": "2014-07-21T13:00:00-12:00", "latitude": -61.781109, "longitude": 125.216214, "tags": [ "aliquip", "sint", "ex", "et", "minim", "Lorem", "voluptate" ], "friends": [ { "id": 0, "name": "Colon Giles" }, { "id": 1, "name": "Esperanza Singleton" }, { "id": 2, "name": "Sanders Farmer" } ], "greeting": "Hello, Burgess Fuentes! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea297ff30fe72380181d", "index": 4241, "guid": "ea3b4147-45f7-4bdd-9afd-11c79b23ceba", "isActive": false, "balance": "$2,964.28", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Christi Lewis", "gender": "female", "company": "VERTIDE", "email": "christilewis@vertide.com", "phone": "+1 (914) 443-2090", "address": "942 Temple Court, Bridgetown, Kentucky, 9425", "about": "Id cupidatat eiusmod Lorem labore. Eu ex consequat mollit adipisicing sit Lorem consectetur cillum adipisicing nostrud do. Veniam fugiat nulla ipsum pariatur nulla officia pariatur irure veniam et culpa nulla ex consequat. Pariatur do amet ex incididunt velit duis enim nulla sunt consectetur culpa.\r\n", "registered": "2014-04-15T14:47:38-12:00", "latitude": 70.488508, "longitude": -55.735571, "tags": [ "incididunt", "do", "eiusmod", "nisi", "veniam", "ipsum", "do" ], "friends": [ { "id": 0, "name": "Debra Castaneda" }, { "id": 1, "name": "Valarie Burgess" }, { "id": 2, "name": "Melinda Brooks" } ], "greeting": "Hello, Christi Lewis! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea298d2fa6b5fadc4853", "index": 4242, "guid": "fdacb68e-6028-43cb-983c-6f5d6ea9d63b", "isActive": true, "balance": "$3,700.26", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Margaret Boyer", "gender": "female", "company": "CALLFLEX", "email": "margaretboyer@callflex.com", "phone": "+1 (981) 541-2408", "address": "683 Wyona Street, Oley, Connecticut, 6903", "about": "Laborum ullamco nostrud occaecat duis sint duis. Proident est minim consectetur culpa cupidatat ipsum amet minim nulla irure. Pariatur enim ex reprehenderit sint amet ex occaecat occaecat aliqua labore duis sunt ad. Eiusmod velit id pariatur culpa ad aute proident proident laborum sint proident officia. Deserunt ea enim consequat excepteur dolore eu.\r\n", "registered": "2014-04-03T04:16:22-13:00", "latitude": -8.586647, "longitude": 77.235384, "tags": [ "sunt", "et", "et", "aliqua", "nulla", "ex", "ad" ], "friends": [ { "id": 0, "name": "Hudson Cortez" }, { "id": 1, "name": "Adrienne Beck" }, { "id": 2, "name": "Lee Hurley" } ], "greeting": "Hello, Margaret Boyer! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea296853ae6f04dcf620", "index": 4243, "guid": "793da8bb-d1ba-497b-9bb2-766804dee7c2", "isActive": false, "balance": "$1,502.74", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Angelia Macias", "gender": "female", "company": "ENOMEN", "email": "angeliamacias@enomen.com", "phone": "+1 (974) 416-2962", "address": "889 Madoc Avenue, Crenshaw, Mississippi, 3964", "about": "Proident pariatur labore irure excepteur sint quis nisi cillum deserunt. Est nostrud labore ipsum pariatur esse fugiat reprehenderit dolor. In mollit et id nisi aute veniam deserunt ea.\r\n", "registered": "2014-07-29T11:28:35-12:00", "latitude": 36.26193, "longitude": 90.855602, "tags": [ "consequat", "Lorem", "mollit", "incididunt", "magna", "elit", "elit" ], "friends": [ { "id": 0, "name": "Curtis Buckner" }, { "id": 1, "name": "Kathrine Cooke" }, { "id": 2, "name": "Jennings Garrett" } ], "greeting": "Hello, Angelia Macias! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea298ece17296f0c90f4", "index": 4244, "guid": "a143f126-dba5-4f8a-985b-28efd8836e13", "isActive": true, "balance": "$2,073.65", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Essie Mcleod", "gender": "female", "company": "EVENTAGE", "email": "essiemcleod@eventage.com", "phone": "+1 (970) 462-3684", "address": "731 Navy Street, Valle, Washington, 5309", "about": "Amet qui dolore Lorem sunt et sunt aute dolore enim laborum. Aliquip amet tempor aliqua sint magna occaecat nisi aliqua ea tempor. Fugiat dolor labore cupidatat sint. Sint proident dolor officia consequat qui nostrud non sit sunt esse cupidatat laborum. Tempor cillum et et excepteur pariatur. Duis eu quis laborum reprehenderit enim minim mollit officia enim minim incididunt sunt.\r\n", "registered": "2014-02-13T23:23:58-13:00", "latitude": 27.61968, "longitude": -36.426419, "tags": [ "incididunt", "ullamco", "fugiat", "ea", "et", "amet", "culpa" ], "friends": [ { "id": 0, "name": "Lauri Mcgee" }, { "id": 1, "name": "Mclaughlin Horne" }, { "id": 2, "name": "Patrice Kinney" } ], "greeting": "Hello, Essie Mcleod! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea294cc37e672327b6f9", "index": 4245, "guid": "54dbef83-75f5-4358-bfe8-c3aba3151a37", "isActive": false, "balance": "$2,546.44", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Shelia Witt", "gender": "female", "company": "IDETICA", "email": "sheliawitt@idetica.com", "phone": "+1 (961) 466-3389", "address": "325 Cumberland Walk, Jacksonwald, Tennessee, 7439", "about": "Irure commodo labore do non eiusmod sint nostrud consequat consectetur aute ipsum. In esse incididunt fugiat sunt incididunt excepteur ut non Lorem excepteur sunt laboris elit. Proident velit fugiat cupidatat nulla proident nisi quis sunt ad.\r\n", "registered": "2014-04-19T22:40:26-12:00", "latitude": -28.217641, "longitude": 172.118041, "tags": [ "veniam", "adipisicing", "in", "voluptate", "consectetur", "fugiat", "Lorem" ], "friends": [ { "id": 0, "name": "Cleo Perkins" }, { "id": 1, "name": "Mcbride Merrill" }, { "id": 2, "name": "Cooper Cherry" } ], "greeting": "Hello, Shelia Witt! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2966a4dd42a6c827ab", "index": 4246, "guid": "c854a6b6-b152-4c59-bd38-cb245b130954", "isActive": false, "balance": "$3,920.42", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Lelia Lucas", "gender": "female", "company": "SLAMBDA", "email": "lelialucas@slambda.com", "phone": "+1 (987) 494-3763", "address": "495 Luquer Street, Walton, Alabama, 9788", "about": "Culpa dolore nulla nostrud fugiat magna dolor laboris magna. Ipsum mollit pariatur ad occaecat enim ipsum exercitation culpa. Ipsum labore aute irure ipsum mollit ut elit anim mollit enim aliqua officia. Commodo nostrud aute labore tempor officia.\r\n", "registered": "2014-04-29T06:58:30-12:00", "latitude": 4.280085, "longitude": -168.569095, "tags": [ "aute", "ad", "qui", "ipsum", "cupidatat", "laboris", "ad" ], "friends": [ { "id": 0, "name": "Sonya Hancock" }, { "id": 1, "name": "Ava Wilkerson" }, { "id": 2, "name": "Christie Zamora" } ], "greeting": "Hello, Lelia Lucas! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29f92196b319efbbc4", "index": 4247, "guid": "8a320771-2897-4309-8cf3-3fd225b345f0", "isActive": true, "balance": "$3,661.58", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Mallory Mack", "gender": "female", "company": "INVENTURE", "email": "mallorymack@inventure.com", "phone": "+1 (822) 438-3335", "address": "533 Stillwell Avenue, Westboro, Ohio, 4594", "about": "Eiusmod dolore eiusmod elit sint aliqua culpa elit dolor labore. Officia consequat est ad ad labore velit. Occaecat laborum do do quis nisi commodo dolore cillum veniam officia.\r\n", "registered": "2014-05-26T21:05:41-12:00", "latitude": 75.354043, "longitude": -113.209936, "tags": [ "cupidatat", "ea", "quis", "aliqua", "qui", "veniam", "velit" ], "friends": [ { "id": 0, "name": "Wolfe Oneill" }, { "id": 1, "name": "Kristen Lawson" }, { "id": 2, "name": "Pauline Thomas" } ], "greeting": "Hello, Mallory Mack! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29c1cc44c9dda1b907", "index": 4248, "guid": "f6dcd60d-c5be-49e8-9a48-7ea6db9a4f5a", "isActive": false, "balance": "$2,992.06", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Diane Stein", "gender": "female", "company": "ACCUPRINT", "email": "dianestein@accuprint.com", "phone": "+1 (925) 518-3413", "address": "470 Strauss Street, Delco, Hawaii, 4570", "about": "Adipisicing fugiat quis nulla eu aliquip ex adipisicing consequat consequat mollit nostrud Lorem. Sint anim occaecat sint nulla culpa non minim. Ut ex est do Lorem ullamco ullamco. Culpa eiusmod qui proident ad velit nostrud.\r\n", "registered": "2014-07-07T00:13:47-12:00", "latitude": 13.350083, "longitude": 100.877675, "tags": [ "veniam", "minim", "labore", "excepteur", "Lorem", "fugiat", "nisi" ], "friends": [ { "id": 0, "name": "Alyson Jacobs" }, { "id": 1, "name": "Kris Malone" }, { "id": 2, "name": "Tillman Lynch" } ], "greeting": "Hello, Diane Stein! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea290c7bcab558c1bfa8", "index": 4249, "guid": "7e12a1a8-78f8-471e-9347-88939e2ef59a", "isActive": true, "balance": "$1,182.14", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Evelyn Hendrix", "gender": "female", "company": "EWAVES", "email": "evelynhendrix@ewaves.com", "phone": "+1 (901) 547-2210", "address": "578 Chapel Street, Garberville, New Mexico, 3926", "about": "Est cupidatat qui ullamco magna do dolore nostrud elit commodo laborum esse. Quis exercitation Lorem aliqua Lorem quis proident officia tempor. Officia consequat laborum eiusmod esse. Reprehenderit cillum fugiat consectetur qui minim quis. Adipisicing incididunt fugiat incididunt cupidatat culpa sunt et.\r\n", "registered": "2014-08-14T17:25:56-12:00", "latitude": -44.597347, "longitude": -109.722636, "tags": [ "aliquip", "deserunt", "voluptate", "nisi", "labore", "mollit", "voluptate" ], "friends": [ { "id": 0, "name": "Natalie Meyer" }, { "id": 1, "name": "Bobbie Walton" }, { "id": 2, "name": "Brooke Stanley" } ], "greeting": "Hello, Evelyn Hendrix! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea292293a8fcfbe3cdee", "index": 4250, "guid": "f1ca1715-a8a3-45b4-b67e-8ca193186581", "isActive": true, "balance": "$2,991.91", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Gordon Collins", "gender": "male", "company": "PURIA", "email": "gordoncollins@puria.com", "phone": "+1 (991) 426-3666", "address": "318 Autumn Avenue, Gambrills, Maryland, 7645", "about": "Id dolore cillum deserunt do nulla voluptate consequat aliqua anim occaecat cupidatat. Ea mollit excepteur dolor eu irure labore laboris nisi voluptate ad. Sit enim ullamco voluptate mollit sint nisi occaecat laborum consequat aliquip mollit occaecat ea.\r\n", "registered": "2014-05-16T06:55:25-12:00", "latitude": -49.983746, "longitude": -62.377744, "tags": [ "do", "officia", "incididunt", "culpa", "in", "non", "officia" ], "friends": [ { "id": 0, "name": "Rosalinda Sosa" }, { "id": 1, "name": "Shawn Sampson" }, { "id": 2, "name": "Howell Cain" } ], "greeting": "Hello, Gordon Collins! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea294b7aed9bbe69bbf9", "index": 4251, "guid": "64019f5f-7b91-473c-9687-4cdbc7856e28", "isActive": false, "balance": "$1,830.96", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Nelda Sawyer", "gender": "female", "company": "CIRCUM", "email": "neldasawyer@circum.com", "phone": "+1 (979) 478-2730", "address": "781 Exeter Street, Tryon, Alaska, 6240", "about": "Consectetur sit est consectetur consectetur sit sint Lorem veniam esse ea. Adipisicing nulla mollit exercitation adipisicing officia. Enim irure tempor officia eiusmod magna nisi quis. Tempor dolor tempor pariatur exercitation Lorem id labore dolor dolor tempor laboris eu tempor qui.\r\n", "registered": "2014-05-19T13:53:30-12:00", "latitude": 49.159195, "longitude": -167.47755, "tags": [ "minim", "aliqua", "nostrud", "voluptate", "cillum", "ea", "occaecat" ], "friends": [ { "id": 0, "name": "Sallie Wilder" }, { "id": 1, "name": "Lucille Mccray" }, { "id": 2, "name": "Kemp Sanford" } ], "greeting": "Hello, Nelda Sawyer! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea294164ac3f2826f92a", "index": 4252, "guid": "ad89123c-ac15-47bc-835e-11d0cabdb296", "isActive": false, "balance": "$3,370.90", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Florence Cardenas", "gender": "female", "company": "ENTROFLEX", "email": "florencecardenas@entroflex.com", "phone": "+1 (866) 599-3476", "address": "261 Prospect Avenue, Dodge, Arizona, 9628", "about": "Nulla cillum eu quis elit esse reprehenderit id id commodo. Nisi nulla amet nostrud quis laborum elit aliquip. Aliquip anim velit anim deserunt id officia elit commodo incididunt eiusmod incididunt. Ex minim commodo irure labore minim et ut laboris.\r\n", "registered": "2014-03-23T19:48:01-13:00", "latitude": 30.173944, "longitude": -12.281343, "tags": [ "do", "non", "et", "cillum", "voluptate", "tempor", "veniam" ], "friends": [ { "id": 0, "name": "Luann Morrow" }, { "id": 1, "name": "Francis Livingston" }, { "id": 2, "name": "Helen Hamilton" } ], "greeting": "Hello, Florence Cardenas! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29cf2476941559a5cc", "index": 4253, "guid": "58bbc1df-268b-45fe-a230-6643400aa5ba", "isActive": false, "balance": "$1,733.50", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Lakisha Shepherd", "gender": "female", "company": "CORPORANA", "email": "lakishashepherd@corporana.com", "phone": "+1 (904) 483-2633", "address": "973 Boardwalk , Oceola, Federated States Of Micronesia, 7199", "about": "Dolore dolore Lorem commodo aliqua irure tempor proident. Ullamco elit aliquip non amet cupidatat deserunt nostrud sunt nulla tempor id. Sunt irure non nulla pariatur est anim nulla pariatur elit labore laboris culpa. In proident exercitation laborum elit officia esse esse mollit dolore incididunt incididunt officia do ex. Ut adipisicing in elit magna laborum nostrud voluptate id exercitation mollit ut. Veniam velit Lorem dolor magna non proident eiusmod ipsum consectetur. Dolore qui incididunt ad ea eu et cupidatat do.\r\n", "registered": "2014-05-19T22:57:38-12:00", "latitude": 7.085047, "longitude": 83.728832, "tags": [ "fugiat", "reprehenderit", "proident", "aliqua", "aliquip", "irure", "eiusmod" ], "friends": [ { "id": 0, "name": "Hoover Clayton" }, { "id": 1, "name": "Clark Atkinson" }, { "id": 2, "name": "Jami Clay" } ], "greeting": "Hello, Lakisha Shepherd! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea299401e2ad98e46f7d", "index": 4254, "guid": "c6a02349-da23-4f39-8e4c-dd1477061e59", "isActive": true, "balance": "$2,187.34", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Janice Whitehead", "gender": "female", "company": "POLARIA", "email": "janicewhitehead@polaria.com", "phone": "+1 (905) 429-3852", "address": "943 Chestnut Street, Juarez, Oklahoma, 5460", "about": "Deserunt elit aliqua cupidatat do ex consectetur fugiat enim do. Cillum commodo id dolor Lorem eu incididunt esse nostrud Lorem qui mollit irure. Deserunt qui in id nulla voluptate magna officia aliqua incididunt minim laborum.\r\n", "registered": "2014-05-03T20:38:59-12:00", "latitude": 38.093228, "longitude": 49.315336, "tags": [ "non", "nulla", "dolore", "ipsum", "qui", "esse", "deserunt" ], "friends": [ { "id": 0, "name": "Darlene Rush" }, { "id": 1, "name": "Tabatha Hayden" }, { "id": 2, "name": "Lea Wooten" } ], "greeting": "Hello, Janice Whitehead! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29d167bc723126b380", "index": 4255, "guid": "6a2a30ae-62b8-4332-9a9e-727d12400d89", "isActive": true, "balance": "$2,591.04", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Veronica Blankenship", "gender": "female", "company": "FURNAFIX", "email": "veronicablankenship@furnafix.com", "phone": "+1 (864) 559-3899", "address": "131 Driggs Avenue, Rutherford, Michigan, 3730", "about": "Eu est qui ullamco ad adipisicing aliquip reprehenderit amet ad ea cillum. Consequat labore do nisi ex nisi sit irure laborum non esse. Nostrud proident dolor esse commodo nostrud eiusmod labore amet dolor sunt.\r\n", "registered": "2014-07-18T03:51:47-12:00", "latitude": 30.591356, "longitude": 168.9306, "tags": [ "amet", "mollit", "cillum", "id", "mollit", "commodo", "ut" ], "friends": [ { "id": 0, "name": "Loretta Kent" }, { "id": 1, "name": "Merrill Ramirez" }, { "id": 2, "name": "Angelita Hardy" } ], "greeting": "Hello, Veronica Blankenship! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea290354bd36499afd42", "index": 4256, "guid": "7b7ab955-f86c-4155-9287-29811eb77932", "isActive": true, "balance": "$1,015.39", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Roseann Ross", "gender": "female", "company": "SUNCLIPSE", "email": "roseannross@sunclipse.com", "phone": "+1 (989) 428-2898", "address": "150 Beard Street, Bethpage, Kansas, 9377", "about": "Voluptate cupidatat tempor velit dolore irure excepteur ut incididunt nulla culpa adipisicing adipisicing consectetur eiusmod. Consequat reprehenderit dolor proident culpa aute nisi fugiat quis consectetur magna. Officia incididunt nisi eiusmod ad et proident exercitation laborum ut id. Pariatur ullamco fugiat ad dolor labore voluptate ad proident velit consectetur nulla deserunt.\r\n", "registered": "2014-09-16T14:58:25-12:00", "latitude": 64.618986, "longitude": 57.680422, "tags": [ "et", "qui", "in", "consectetur", "occaecat", "et", "dolore" ], "friends": [ { "id": 0, "name": "Helga Wade" }, { "id": 1, "name": "Harrell Cunningham" }, { "id": 2, "name": "Nguyen Noble" } ], "greeting": "Hello, Roseann Ross! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2940f6719869a4b6fe", "index": 4257, "guid": "c4064853-171f-42bb-935e-c41b3eab126f", "isActive": false, "balance": "$3,784.42", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Shirley Montgomery", "gender": "female", "company": "MOTOVATE", "email": "shirleymontgomery@motovate.com", "phone": "+1 (898) 461-2048", "address": "577 Bedford Avenue, Turah, South Dakota, 2957", "about": "Reprehenderit do ea mollit mollit. Amet dolor duis exercitation Lorem dolore id et est exercitation proident sint commodo. Lorem consectetur pariatur irure reprehenderit consequat quis ut. Nulla commodo qui mollit et pariatur anim quis. Velit ea pariatur anim eu ipsum excepteur nostrud exercitation dolor magna cillum. Ipsum ut sunt id do dolore est eu elit adipisicing culpa est. Amet sunt excepteur commodo ex do.\r\n", "registered": "2014-09-04T06:22:50-12:00", "latitude": 41.477326, "longitude": -80.110161, "tags": [ "elit", "minim", "enim", "irure", "minim", "aliqua", "velit" ], "friends": [ { "id": 0, "name": "Nina Tran" }, { "id": 1, "name": "Charlene Valdez" }, { "id": 2, "name": "Bates Hebert" } ], "greeting": "Hello, Shirley Montgomery! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29c39535a4ff79f44c", "index": 4258, "guid": "b48b3f6b-b37c-4cb3-8f58-28233dd5e853", "isActive": false, "balance": "$2,710.99", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Helena Simmons", "gender": "female", "company": "ELENTRIX", "email": "helenasimmons@elentrix.com", "phone": "+1 (962) 540-3348", "address": "696 Union Avenue, Neahkahnie, West Virginia, 9507", "about": "Mollit dolore id laborum aute mollit ipsum do in. Eiusmod nostrud reprehenderit veniam reprehenderit aliquip exercitation magna occaecat exercitation dolore. Labore commodo deserunt enim irure eu irure exercitation incididunt exercitation sint labore ad velit fugiat. Exercitation consectetur sunt est elit. Et culpa cupidatat aliqua ex ut aliquip dolor nostrud dolore tempor cillum sit laboris. Minim id Lorem labore esse.\r\n", "registered": "2014-01-17T22:38:58-13:00", "latitude": -35.009113, "longitude": -53.953418, "tags": [ "veniam", "cupidatat", "sunt", "ullamco", "amet", "aute", "mollit" ], "friends": [ { "id": 0, "name": "Guzman Fox" }, { "id": 1, "name": "Mcfadden Mosley" }, { "id": 2, "name": "Kirby Cole" } ], "greeting": "Hello, Helena Simmons! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2977c6145bcfc6aac4", "index": 4259, "guid": "b7b6702e-2c79-4b9f-beca-38494771e447", "isActive": false, "balance": "$1,779.17", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Clarissa Waters", "gender": "female", "company": "BLEENDOT", "email": "clarissawaters@bleendot.com", "phone": "+1 (871) 599-2222", "address": "955 Classon Avenue, Verdi, Texas, 7117", "about": "Aliqua cillum in culpa ut nisi est pariatur anim sint. Cupidatat reprehenderit deserunt deserunt sint. Proident enim qui dolor voluptate adipisicing sit. Commodo excepteur culpa id dolore commodo est cupidatat ullamco quis ad Lorem.\r\n", "registered": "2014-04-28T21:57:41-12:00", "latitude": 9.832796, "longitude": 112.745169, "tags": [ "do", "esse", "ullamco", "officia", "veniam", "officia", "sint" ], "friends": [ { "id": 0, "name": "Doyle Vega" }, { "id": 1, "name": "Hill Madden" }, { "id": 2, "name": "Franklin Bradford" } ], "greeting": "Hello, Clarissa Waters! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29664f4bc72438a9cd", "index": 4260, "guid": "f7986bfb-25e2-4fdc-95ac-46face3bd71a", "isActive": true, "balance": "$1,858.65", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Dickson Slater", "gender": "male", "company": "ZEAM", "email": "dicksonslater@zeam.com", "phone": "+1 (867) 492-3941", "address": "288 Dobbin Street, Dixie, Oregon, 5455", "about": "Ea ea laboris officia culpa labore ipsum Lorem ea sit ipsum quis. Irure reprehenderit pariatur exercitation cillum qui deserunt do occaecat incididunt anim irure. Occaecat anim quis commodo sit labore fugiat sit commodo officia eu veniam proident. Reprehenderit aliqua proident laborum id deserunt dolore dolor do irure. Esse consequat dolore tempor ipsum officia nostrud occaecat. Irure exercitation esse qui reprehenderit amet veniam ex nulla reprehenderit ullamco. Laboris mollit pariatur pariatur Lorem commodo ea ex do do deserunt labore fugiat.\r\n", "registered": "2014-07-18T23:38:06-12:00", "latitude": -62.563673, "longitude": -43.078168, "tags": [ "nulla", "ut", "ex", "quis", "voluptate", "sit", "do" ], "friends": [ { "id": 0, "name": "Lucile Maddox" }, { "id": 1, "name": "Lacy Ward" }, { "id": 2, "name": "Teri Rice" } ], "greeting": "Hello, Dickson Slater! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29779afb87ee893c9d", "index": 4261, "guid": "c4d4c689-d375-4c60-b968-c50a29f27db9", "isActive": true, "balance": "$2,364.36", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Frances Hendricks", "gender": "female", "company": "TROPOLIS", "email": "franceshendricks@tropolis.com", "phone": "+1 (962) 518-3827", "address": "838 Lefferts Avenue, Coral, Nevada, 7603", "about": "Reprehenderit et amet aliquip tempor ipsum eiusmod pariatur eu eiusmod eiusmod eu duis cillum. Officia magna laborum consectetur reprehenderit qui sunt aliquip qui qui veniam nostrud commodo. Lorem amet pariatur consequat mollit eu amet excepteur irure. Ut sint laborum commodo ad ullamco eiusmod in fugiat minim ut esse ullamco.\r\n", "registered": "2014-04-27T05:33:30-12:00", "latitude": 76.502806, "longitude": 73.00181, "tags": [ "aliqua", "officia", "Lorem", "dolor", "enim", "id", "quis" ], "friends": [ { "id": 0, "name": "Morse Morse" }, { "id": 1, "name": "Juliet James" }, { "id": 2, "name": "Snider Griffith" } ], "greeting": "Hello, Frances Hendricks! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea297351ec5f2ba9034b", "index": 4262, "guid": "d055ab56-cdd0-4a8b-a810-4dd4fb6e77c9", "isActive": true, "balance": "$3,287.64", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Washington Webb", "gender": "male", "company": "TINGLES", "email": "washingtonwebb@tingles.com", "phone": "+1 (901) 489-3135", "address": "330 Navy Walk, Rushford, Minnesota, 8907", "about": "Sint qui fugiat ullamco Lorem reprehenderit laboris nulla occaecat nisi mollit et fugiat sit duis. Dolore duis culpa cillum sint tempor dolor dolor consequat culpa laborum magna. Excepteur officia consectetur pariatur eiusmod culpa mollit voluptate dolor ea laborum. Commodo cillum officia enim nostrud adipisicing et dolore enim cillum amet labore eu deserunt cillum. Adipisicing labore enim esse laborum proident. Aute veniam eu cupidatat est aute nisi qui minim incididunt reprehenderit aute fugiat aute ea. Ex in fugiat labore et incididunt minim deserunt officia quis sunt do deserunt do sit.\r\n", "registered": "2014-04-02T05:44:25-13:00", "latitude": -58.12549, "longitude": 124.76558, "tags": [ "cupidatat", "irure", "consequat", "ipsum", "et", "amet", "ad" ], "friends": [ { "id": 0, "name": "Erickson Kirk" }, { "id": 1, "name": "Lizzie Rutledge" }, { "id": 2, "name": "Bertha Baker" } ], "greeting": "Hello, Washington Webb! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea294996f613ea2b482c", "index": 4263, "guid": "e854651e-dddb-4065-bc53-a797b561628f", "isActive": false, "balance": "$3,202.69", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Lindsay Daniels", "gender": "male", "company": "DOGNOST", "email": "lindsaydaniels@dognost.com", "phone": "+1 (832) 447-2010", "address": "421 Schaefer Street, Omar, Missouri, 8086", "about": "Proident in incididunt duis cupidatat nulla velit laboris labore commodo. Cupidatat qui irure veniam ad deserunt irure Lorem. Exercitation enim nostrud voluptate anim et ipsum est mollit qui esse veniam laborum. Ullamco officia et nulla cupidatat commodo minim ea.\r\n", "registered": "2014-01-04T09:44:31-13:00", "latitude": -36.46056, "longitude": -137.901742, "tags": [ "nostrud", "ut", "officia", "id", "labore", "nostrud", "enim" ], "friends": [ { "id": 0, "name": "Nixon Wright" }, { "id": 1, "name": "Phyllis Patel" }, { "id": 2, "name": "Lamb Cook" } ], "greeting": "Hello, Lindsay Daniels! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29d882882d65793872", "index": 4264, "guid": "ff3b56e8-ac2a-4868-907d-dfb16f06baad", "isActive": true, "balance": "$1,147.87", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Clara Bullock", "gender": "female", "company": "RECOGNIA", "email": "clarabullock@recognia.com", "phone": "+1 (814) 537-2866", "address": "203 Garden Place, Helen, Rhode Island, 3626", "about": "Eu exercitation veniam officia qui veniam amet incididunt duis Lorem. Quis qui non consequat ex. Lorem veniam culpa sunt ea incididunt laboris duis tempor. Ipsum amet anim exercitation esse dolore. Sunt commodo cupidatat aliquip nulla magna nulla sint enim ea minim cillum magna laboris nulla. Adipisicing excepteur quis consequat anim laborum magna.\r\n", "registered": "2014-08-08T04:05:30-12:00", "latitude": -6.579452, "longitude": 60.517021, "tags": [ "consectetur", "officia", "sit", "voluptate", "dolor", "duis", "veniam" ], "friends": [ { "id": 0, "name": "Avery Nicholson" }, { "id": 1, "name": "Page Grimes" }, { "id": 2, "name": "Ray Olsen" } ], "greeting": "Hello, Clara Bullock! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea294a87a7e90707abfd", "index": 4265, "guid": "1f2e2e1d-6dd3-4553-8eda-e5415ed7a3b7", "isActive": true, "balance": "$3,200.64", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Mia Ramsey", "gender": "female", "company": "EXTRO", "email": "miaramsey@extro.com", "phone": "+1 (907) 506-2149", "address": "255 Bergen Court, Urbana, Florida, 750", "about": "Ut ullamco amet aute adipisicing laborum labore duis officia in tempor Lorem esse deserunt. Excepteur esse sit minim cillum ex in incididunt do non enim occaecat et. Cillum nostrud qui commodo proident excepteur veniam deserunt ex amet duis proident cupidatat aute nisi. Tempor adipisicing nostrud Lorem id minim consectetur est incididunt irure officia culpa.\r\n", "registered": "2014-03-06T00:57:00-13:00", "latitude": -26.096742, "longitude": -114.135411, "tags": [ "cupidatat", "et", "deserunt", "fugiat", "pariatur", "in", "consequat" ], "friends": [ { "id": 0, "name": "Patricia Barrera" }, { "id": 1, "name": "Janet Moses" }, { "id": 2, "name": "Latoya Huff" } ], "greeting": "Hello, Mia Ramsey! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29bb86824dd8aa7a56", "index": 4266, "guid": "65461df3-8f95-4fd3-ab91-fcb7635f1111", "isActive": true, "balance": "$2,687.08", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Alice Mcintyre", "gender": "female", "company": "CANOPOLY", "email": "alicemcintyre@canopoly.com", "phone": "+1 (975) 500-3700", "address": "354 Stillwell Place, Camino, North Carolina, 7595", "about": "Nisi proident elit nisi adipisicing est ad voluptate. Duis ex mollit dolore laborum do nulla commodo. Amet quis adipisicing do voluptate consequat occaecat dolore.\r\n", "registered": "2014-02-20T09:13:18-13:00", "latitude": -87.117552, "longitude": 14.077018, "tags": [ "reprehenderit", "in", "enim", "tempor", "aliquip", "laborum", "officia" ], "friends": [ { "id": 0, "name": "Hillary Hicks" }, { "id": 1, "name": "Janette Carlson" }, { "id": 2, "name": "Newman Ayers" } ], "greeting": "Hello, Alice Mcintyre! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2935f6055b2ce6a2da", "index": 4267, "guid": "ede21455-9823-489c-a62b-41593201adf7", "isActive": false, "balance": "$1,141.49", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Muriel Leach", "gender": "female", "company": "SEALOUD", "email": "murielleach@sealoud.com", "phone": "+1 (807) 593-2867", "address": "748 Hastings Street, Maury, New Hampshire, 5816", "about": "Fugiat aliqua exercitation sint sit occaecat enim reprehenderit sint qui veniam commodo. Quis sint ipsum irure nulla aute cupidatat. Reprehenderit do sit duis Lorem laboris deserunt incididunt.\r\n", "registered": "2014-07-05T03:57:13-12:00", "latitude": 27.778033, "longitude": -21.605557, "tags": [ "pariatur", "proident", "quis", "do", "proident", "qui", "dolore" ], "friends": [ { "id": 0, "name": "Justine Lyons" }, { "id": 1, "name": "Leonor Robles" }, { "id": 2, "name": "Cassandra Curry" } ], "greeting": "Hello, Muriel Leach! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea291d45240a3bbe2b2f", "index": 4268, "guid": "fd08c2ac-6981-4943-84ac-8ef39e90c6f9", "isActive": true, "balance": "$3,264.10", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Sherman Marquez", "gender": "male", "company": "NAMEGEN", "email": "shermanmarquez@namegen.com", "phone": "+1 (840) 546-3449", "address": "221 Pacific Street, Marshall, Arkansas, 6624", "about": "Excepteur do est deserunt commodo dolore in veniam est velit proident labore nisi dolor in. Occaecat exercitation proident quis mollit esse non excepteur in ullamco enim non. Amet velit in anim fugiat magna. Incididunt amet do cupidatat minim qui non. Mollit incididunt laboris laborum dolore in.\r\n", "registered": "2014-07-31T10:55:18-12:00", "latitude": 58.677936, "longitude": -95.070214, "tags": [ "reprehenderit", "eu", "laboris", "sunt", "duis", "minim", "pariatur" ], "friends": [ { "id": 0, "name": "Concetta Acevedo" }, { "id": 1, "name": "Fuentes Reeves" }, { "id": 2, "name": "Johnston Irwin" } ], "greeting": "Hello, Sherman Marquez! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29d90c8c65a802086a", "index": 4269, "guid": "ad06ca0e-9729-4d2e-8f57-480b957d7005", "isActive": false, "balance": "$1,547.91", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Angeline Terrell", "gender": "female", "company": "GEOLOGIX", "email": "angelineterrell@geologix.com", "phone": "+1 (978) 431-2275", "address": "425 Covert Street, Lookingglass, Iowa, 3339", "about": "Excepteur dolore consectetur irure cupidatat tempor aute ullamco esse fugiat et excepteur est. Ad et aute anim reprehenderit deserunt magna non anim nisi laboris in. Aliqua do dolore do duis aliqua reprehenderit deserunt consequat elit esse Lorem ut id cillum. Laboris et sint cillum ea. Occaecat anim consectetur officia consectetur commodo excepteur elit ex laboris nulla excepteur. Est irure esse cupidatat deserunt cupidatat laborum in.\r\n", "registered": "2014-04-01T08:03:31-13:00", "latitude": 71.098135, "longitude": -97.546748, "tags": [ "et", "ea", "Lorem", "exercitation", "esse", "tempor", "ullamco" ], "friends": [ { "id": 0, "name": "Shepard Schmidt" }, { "id": 1, "name": "Selma Delaney" }, { "id": 2, "name": "Sharon Wyatt" } ], "greeting": "Hello, Angeline Terrell! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea294ca8458678871111", "index": 4270, "guid": "d1c55e74-72b7-47a7-b567-23710fa79116", "isActive": false, "balance": "$1,595.91", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Boyle Lindsey", "gender": "male", "company": "PROTODYNE", "email": "boylelindsey@protodyne.com", "phone": "+1 (987) 572-2555", "address": "685 Fillmore Avenue, Holtville, Nebraska, 5918", "about": "Proident exercitation sint eu proident enim esse labore do fugiat culpa. Cillum sit id adipisicing veniam culpa exercitation pariatur magna esse incididunt incididunt irure duis. Mollit sunt incididunt aute deserunt duis dolore. Consequat enim labore occaecat velit. Labore non sint esse nulla officia velit. Excepteur proident ipsum aliqua pariatur proident ex aute excepteur ad excepteur cupidatat exercitation enim nisi.\r\n", "registered": "2014-08-06T05:28:09-12:00", "latitude": 75.633622, "longitude": 72.157377, "tags": [ "aute", "cupidatat", "ullamco", "minim", "duis", "quis", "exercitation" ], "friends": [ { "id": 0, "name": "Yesenia Head" }, { "id": 1, "name": "Browning Morrison" }, { "id": 2, "name": "Pena Crawford" } ], "greeting": "Hello, Boyle Lindsey! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea29807def62c7e4de6f", "index": 4271, "guid": "44ca0ce2-e425-4c54-a24d-36c52b78c3c2", "isActive": true, "balance": "$2,468.56", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Barr Espinoza", "gender": "male", "company": "COGNICODE", "email": "barrespinoza@cognicode.com", "phone": "+1 (846) 412-2192", "address": "707 Dahlgreen Place, Leeper, District Of Columbia, 9348", "about": "Pariatur sit ad excepteur culpa consectetur ipsum. Voluptate adipisicing cillum deserunt tempor ex incididunt cillum mollit. Nostrud in eu excepteur minim fugiat commodo ad minim amet officia elit sit ea. Laboris labore dolore Lorem in irure magna. Deserunt nisi officia ad ipsum tempor mollit amet ipsum. Ad amet voluptate deserunt sit sit consequat deserunt anim incididunt.\r\n", "registered": "2014-07-13T18:04:51-12:00", "latitude": -2.569542, "longitude": 80.732687, "tags": [ "do", "sint", "incididunt", "dolore", "reprehenderit", "id", "eu" ], "friends": [ { "id": 0, "name": "Pamela Sullivan" }, { "id": 1, "name": "Sheila Day" }, { "id": 2, "name": "Bradshaw Harmon" } ], "greeting": "Hello, Barr Espinoza! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29e48bcb8db315be3c", "index": 4272, "guid": "973830ba-dd4a-42bc-8c9b-1fa550a29963", "isActive": true, "balance": "$2,478.88", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "James English", "gender": "male", "company": "XINWARE", "email": "jamesenglish@xinware.com", "phone": "+1 (871) 404-3513", "address": "685 Lenox Road, Sardis, New Jersey, 6762", "about": "Incididunt aliqua in voluptate tempor ullamco aute cillum consequat quis pariatur reprehenderit consectetur. Culpa duis ad sunt consectetur culpa. Voluptate voluptate exercitation commodo consectetur est do fugiat.\r\n", "registered": "2014-05-06T04:58:54-12:00", "latitude": -69.137276, "longitude": 107.499424, "tags": [ "quis", "excepteur", "adipisicing", "labore", "ea", "dolore", "duis" ], "friends": [ { "id": 0, "name": "Adela Buckley" }, { "id": 1, "name": "Oliver Haley" }, { "id": 2, "name": "Ayers Mullen" } ], "greeting": "Hello, James English! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea29adc68ec46b5c913c", "index": 4273, "guid": "4326c551-9273-4891-8822-984c2c59206e", "isActive": false, "balance": "$2,599.06", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Kristina Bray", "gender": "female", "company": "SIGNITY", "email": "kristinabray@signity.com", "phone": "+1 (959) 406-3140", "address": "717 Post Court, Condon, Palau, 8316", "about": "Deserunt pariatur consectetur ad aliquip veniam incididunt. Eiusmod officia reprehenderit commodo anim ipsum aliquip ipsum eiusmod dolore dolor. Veniam ea ullamco et et laboris reprehenderit occaecat et reprehenderit mollit. Enim quis non aliqua proident.\r\n", "registered": "2014-05-22T22:44:52-12:00", "latitude": -5.604708, "longitude": 25.028714, "tags": [ "velit", "laborum", "qui", "excepteur", "sit", "aliquip", "dolor" ], "friends": [ { "id": 0, "name": "Burks Gay" }, { "id": 1, "name": "Hatfield Pitts" }, { "id": 2, "name": "Russo Vance" } ], "greeting": "Hello, Kristina Bray! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29763364f529e6b867", "index": 4274, "guid": "fcc22a54-2505-4a22-a145-a8d2cea924d5", "isActive": false, "balance": "$1,000.72", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Hester Kidd", "gender": "male", "company": "CENTREGY", "email": "hesterkidd@centregy.com", "phone": "+1 (946) 430-2767", "address": "412 Lincoln Road, Muse, Puerto Rico, 2606", "about": "Tempor consectetur ipsum mollit officia non officia dolore. Cillum voluptate voluptate eiusmod est ea amet proident proident id sint pariatur eu. Nulla anim do laboris incididunt cillum quis in laborum excepteur magna.\r\n", "registered": "2014-08-23T14:31:16-12:00", "latitude": 80.004621, "longitude": -62.132835, "tags": [ "voluptate", "proident", "consequat", "consequat", "aute", "laborum", "voluptate" ], "friends": [ { "id": 0, "name": "Martha Bridges" }, { "id": 1, "name": "Aurelia Alford" }, { "id": 2, "name": "Carmen Riley" } ], "greeting": "Hello, Hester Kidd! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29dc0751319b6c3844", "index": 4275, "guid": "5047a9a4-55ff-4f6a-a558-79aba1cb0945", "isActive": true, "balance": "$2,136.21", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Mejia Brennan", "gender": "male", "company": "BLEEKO", "email": "mejiabrennan@bleeko.com", "phone": "+1 (963) 424-3198", "address": "381 Virginia Place, Wiscon, California, 2564", "about": "Sit amet cupidatat velit eu laboris veniam enim ad proident sint. In sunt esse sint anim. Reprehenderit deserunt officia est tempor. Amet commodo et mollit ad adipisicing nulla quis excepteur laboris ullamco sit cillum adipisicing. Enim dolore aute ea do esse mollit minim enim laboris irure labore. Irure aliquip proident ea aliquip occaecat velit. Veniam ex ex aute amet velit consectetur laborum culpa.\r\n", "registered": "2014-08-13T03:34:58-12:00", "latitude": 41.923392, "longitude": -27.457891, "tags": [ "sint", "duis", "est", "elit", "consectetur", "laboris", "irure" ], "friends": [ { "id": 0, "name": "Gonzalez Austin" }, { "id": 1, "name": "Gertrude Oneil" }, { "id": 2, "name": "Patti Richard" } ], "greeting": "Hello, Mejia Brennan! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2983a5c44fee8d050e", "index": 4276, "guid": "cd2b9afb-6527-4e36-a909-631f6fa7393c", "isActive": false, "balance": "$2,921.66", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Chan Casey", "gender": "male", "company": "BALOOBA", "email": "chancasey@balooba.com", "phone": "+1 (917) 472-2713", "address": "440 Baltic Street, Windsor, Vermont, 3423", "about": "Elit dolor est officia magna aliquip quis reprehenderit minim id Lorem anim velit sunt nostrud. Qui consequat et occaecat quis eiusmod esse. Ut ut magna ullamco mollit pariatur anim nostrud est fugiat irure magna ad in minim. Consectetur deserunt magna anim sunt.\r\n", "registered": "2014-03-02T03:11:42-13:00", "latitude": 47.981442, "longitude": -58.687939, "tags": [ "officia", "sunt", "quis", "irure", "et", "duis", "ex" ], "friends": [ { "id": 0, "name": "Debbie Figueroa" }, { "id": 1, "name": "Buckner Gallagher" }, { "id": 2, "name": "Carroll Copeland" } ], "greeting": "Hello, Chan Casey! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2917b7be11e27e9226", "index": 4277, "guid": "00bcd605-d86a-42a4-8bb5-3e7162092edc", "isActive": true, "balance": "$1,214.03", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Jewel Gould", "gender": "female", "company": "MAGNAFONE", "email": "jewelgould@magnafone.com", "phone": "+1 (891) 587-2893", "address": "594 Nassau Street, Wanamie, Indiana, 5758", "about": "Lorem est elit eu consequat et mollit voluptate deserunt cupidatat velit commodo. Cillum consequat ex aliquip aute fugiat tempor. Aute proident in eiusmod commodo. Aliqua consectetur aliqua veniam exercitation adipisicing elit sit laborum consectetur. Dolor amet cillum anim eu nisi Lorem officia excepteur id laboris mollit exercitation laboris ex. Cupidatat ex non irure fugiat dolor Lorem laborum cillum fugiat aliqua amet.\r\n", "registered": "2014-01-28T05:43:23-13:00", "latitude": -61.19457, "longitude": -160.443602, "tags": [ "minim", "anim", "anim", "cillum", "labore", "minim", "sit" ], "friends": [ { "id": 0, "name": "Byrd Sellers" }, { "id": 1, "name": "Gloria Long" }, { "id": 2, "name": "Ida Barnett" } ], "greeting": "Hello, Jewel Gould! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea290f70eafff21e8737", "index": 4278, "guid": "709e9cc7-3866-40bb-ad5b-f53b05f52c39", "isActive": false, "balance": "$2,549.11", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Alyssa Morin", "gender": "female", "company": "AQUASURE", "email": "alyssamorin@aquasure.com", "phone": "+1 (871) 480-3593", "address": "684 Livonia Avenue, Trucksville, Illinois, 1188", "about": "Cillum id ad deserunt minim ut adipisicing duis voluptate velit. Ut non et proident exercitation laborum Lorem enim ad. Id ea duis cupidatat adipisicing officia anim exercitation esse eu adipisicing laboris aliqua officia veniam. Aliqua eu aliquip occaecat veniam eiusmod enim.\r\n", "registered": "2014-08-30T02:04:11-12:00", "latitude": 36.565975, "longitude": 84.596808, "tags": [ "laboris", "cupidatat", "ipsum", "enim", "occaecat", "adipisicing", "elit" ], "friends": [ { "id": 0, "name": "Tanya Scott" }, { "id": 1, "name": "Ellison Prince" }, { "id": 2, "name": "Lindsay Ryan" } ], "greeting": "Hello, Alyssa Morin! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea296f0636844f43b47d", "index": 4279, "guid": "836be95d-ae26-4626-9ec8-04e160574b96", "isActive": false, "balance": "$2,433.32", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Fran Knox", "gender": "female", "company": "SPRINGBEE", "email": "franknox@springbee.com", "phone": "+1 (859) 529-2862", "address": "101 Voorhies Avenue, Robinson, South Carolina, 125", "about": "Ex aute qui enim labore labore. Incididunt duis laborum Lorem aliquip duis nostrud in aliqua elit mollit occaecat. Culpa nisi exercitation duis enim id enim irure pariatur. Veniam ullamco Lorem tempor excepteur veniam voluptate laborum ullamco in laborum velit magna amet reprehenderit. Minim excepteur et quis exercitation anim proident anim quis nostrud commodo consectetur occaecat.\r\n", "registered": "2014-03-25T10:03:03-13:00", "latitude": -37.773479, "longitude": 152.314785, "tags": [ "qui", "anim", "ut", "nisi", "elit", "nostrud", "eiusmod" ], "friends": [ { "id": 0, "name": "Faulkner Yang" }, { "id": 1, "name": "Farmer Baldwin" }, { "id": 2, "name": "Lora Hall" } ], "greeting": "Hello, Fran Knox! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea292e94162de29cec77", "index": 4280, "guid": "b20c14d9-73f3-476e-8019-816d6507e34b", "isActive": false, "balance": "$1,367.70", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Morgan Joyner", "gender": "male", "company": "QUARMONY", "email": "morganjoyner@quarmony.com", "phone": "+1 (997) 479-3375", "address": "359 Norman Avenue, Dahlen, American Samoa, 8010", "about": "Proident irure amet consequat culpa minim ea pariatur adipisicing. Nisi reprehenderit culpa est pariatur ex aliquip eiusmod voluptate minim officia quis fugiat et mollit. Est excepteur velit veniam nostrud deserunt cupidatat magna nostrud occaecat.\r\n", "registered": "2014-08-21T19:04:35-12:00", "latitude": 21.576992, "longitude": 146.057477, "tags": [ "aliqua", "veniam", "cillum", "ea", "nisi", "velit", "enim" ], "friends": [ { "id": 0, "name": "Gwendolyn Goodwin" }, { "id": 1, "name": "Florine Munoz" }, { "id": 2, "name": "Davis Bush" } ], "greeting": "Hello, Morgan Joyner! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2980be469f7e702ef2", "index": 4281, "guid": "d265d678-1291-48fc-aa0c-401316745d39", "isActive": false, "balance": "$1,881.66", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Frank Ramos", "gender": "male", "company": "CONFRENZY", "email": "frankramos@confrenzy.com", "phone": "+1 (915) 456-3962", "address": "238 Ryder Avenue, Kraemer, Delaware, 6951", "about": "Consectetur elit sint id excepteur. Incididunt proident consectetur non enim qui deserunt laboris irure esse esse exercitation. Magna dolore aute amet amet Lorem nostrud aliqua est do consequat proident. Est velit aute sit voluptate do irure nostrud nisi deserunt. Anim eu nostrud ullamco culpa officia nulla. Deserunt culpa adipisicing anim do adipisicing exercitation sunt officia id consectetur. Est qui velit cillum laboris laborum occaecat aliquip nulla et.\r\n", "registered": "2014-05-30T01:58:15-12:00", "latitude": -74.25697, "longitude": -145.437206, "tags": [ "aute", "amet", "deserunt", "ea", "ea", "minim", "aliquip" ], "friends": [ { "id": 0, "name": "Millicent Wagner" }, { "id": 1, "name": "Judith Sandoval" }, { "id": 2, "name": "Lewis Bentley" } ], "greeting": "Hello, Frank Ramos! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2912272d8fa1b9ed11", "index": 4282, "guid": "bd69c181-eb7c-48c4-81e4-193f487d6382", "isActive": false, "balance": "$2,980.95", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Pollard Skinner", "gender": "male", "company": "ECLIPTO", "email": "pollardskinner@eclipto.com", "phone": "+1 (830) 440-3039", "address": "946 Grant Avenue, Gadsden, Pennsylvania, 8673", "about": "Do minim qui exercitation pariatur non cillum. Amet voluptate labore irure ex do esse ex non. Aute amet ipsum aliquip enim id aute aliquip consequat duis laborum qui dolore duis. Amet deserunt exercitation Lorem laboris occaecat est incididunt mollit aliquip ut occaecat dolor. Consequat exercitation ipsum ad minim mollit cillum. In aliqua ullamco amet pariatur sit consequat non. Laboris esse mollit culpa officia eiusmod occaecat ea in anim.\r\n", "registered": "2014-09-06T10:01:59-12:00", "latitude": 43.967925, "longitude": -117.731117, "tags": [ "mollit", "irure", "elit", "veniam", "quis", "exercitation", "esse" ], "friends": [ { "id": 0, "name": "Powers Sharpe" }, { "id": 1, "name": "Bonnie Hull" }, { "id": 2, "name": "Brenda Carney" } ], "greeting": "Hello, Pollard Skinner! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea29c0137b113a433024", "index": 4283, "guid": "c94d99ea-4dcf-4c22-abad-45b116c120cf", "isActive": false, "balance": "$3,277.23", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Freda Heath", "gender": "female", "company": "CODACT", "email": "fredaheath@codact.com", "phone": "+1 (889) 415-2365", "address": "502 Highland Avenue, Williston, Georgia, 6417", "about": "Dolore consequat proident id elit ullamco ex voluptate dolor in sint. Esse anim duis exercitation laboris cillum ipsum ullamco officia. Ipsum sit non officia occaecat minim ex dolor occaecat tempor cillum commodo. Minim ea laborum et commodo duis velit duis ullamco deserunt non commodo ipsum. Commodo nulla cillum voluptate fugiat occaecat. Minim laboris nostrud velit dolore eiusmod veniam eiusmod ad elit laboris voluptate nostrud. Aliquip incididunt commodo nostrud deserunt fugiat deserunt.\r\n", "registered": "2014-09-09T22:25:40-12:00", "latitude": 53.564478, "longitude": -40.606065, "tags": [ "est", "nostrud", "cupidatat", "eiusmod", "reprehenderit", "ipsum", "nostrud" ], "friends": [ { "id": 0, "name": "Leach Ortega" }, { "id": 1, "name": "Pacheco Charles" }, { "id": 2, "name": "Lenore Hill" } ], "greeting": "Hello, Freda Heath! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aec33f0bf1459cb08", "index": 4284, "guid": "940e351d-01b3-4331-9120-0f3b0b8187e4", "isActive": false, "balance": "$2,843.54", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Foster Thompson", "gender": "male", "company": "SKYPLEX", "email": "fosterthompson@skyplex.com", "phone": "+1 (818) 403-3007", "address": "904 Wolf Place, Corinne, North Dakota, 3027", "about": "Enim aliqua est mollit mollit consequat dolore reprehenderit nulla culpa nostrud. Consectetur est eu est ut amet. Nisi eiusmod ea cupidatat cillum velit. Ex excepteur sint duis reprehenderit aliquip labore voluptate laboris enim ut officia officia. Ipsum sint sit laboris ullamco enim ut culpa commodo.\r\n", "registered": "2014-07-19T07:10:03-12:00", "latitude": 4.933961, "longitude": -8.343762, "tags": [ "cillum", "dolor", "consectetur", "voluptate", "duis", "laboris", "qui" ], "friends": [ { "id": 0, "name": "Rodriquez Huffman" }, { "id": 1, "name": "Marci Bishop" }, { "id": 2, "name": "Wyatt Jimenez" } ], "greeting": "Hello, Foster Thompson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2adda8ba0cbb085470", "index": 4285, "guid": "ea1d1a4a-3678-4bd1-b42b-be3d1ed16f67", "isActive": false, "balance": "$1,913.02", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Willie Morris", "gender": "female", "company": "ZOARERE", "email": "williemorris@zoarere.com", "phone": "+1 (930) 425-2780", "address": "293 Knickerbocker Avenue, Bannock, Louisiana, 8245", "about": "Sunt ullamco labore esse ullamco ea commodo aute ad anim esse eu occaecat magna. Ullamco ea non magna in qui consequat sit voluptate deserunt dolor cupidatat non velit voluptate. Quis elit duis consectetur cupidatat culpa in voluptate minim consectetur. Commodo duis eiusmod anim laborum. Pariatur consequat ut est esse velit cillum deserunt.\r\n", "registered": "2014-05-30T16:13:35-12:00", "latitude": 44.29042, "longitude": 69.023036, "tags": [ "commodo", "fugiat", "in", "cillum", "non", "veniam", "aliqua" ], "friends": [ { "id": 0, "name": "Jordan Gentry" }, { "id": 1, "name": "Joni Estes" }, { "id": 2, "name": "Cunningham Tate" } ], "greeting": "Hello, Willie Morris! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a20c44bd48ebd8ede", "index": 4286, "guid": "391da9c0-3944-46f9-b0c0-3ff7629fb43f", "isActive": false, "balance": "$3,106.27", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Earlene Tyson", "gender": "female", "company": "ZIDOX", "email": "earlenetyson@zidox.com", "phone": "+1 (862) 427-3657", "address": "888 Melrose Street, Ellerslie, Northern Mariana Islands, 6087", "about": "Sit nulla fugiat aute velit in et aliqua sit. In eiusmod officia ut aliquip adipisicing fugiat ad laboris amet ea laborum eu consectetur proident. Minim tempor nisi est ipsum irure proident dolore dolor ea aliqua do nisi nulla velit.\r\n", "registered": "2014-04-19T07:28:24-12:00", "latitude": -69.488254, "longitude": -46.713385, "tags": [ "eu", "commodo", "eu", "et", "et", "ea", "mollit" ], "friends": [ { "id": 0, "name": "Montoya Stanton" }, { "id": 1, "name": "Ladonna Pope" }, { "id": 2, "name": "Monroe Galloway" } ], "greeting": "Hello, Earlene Tyson! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ab8718df1c9aac093", "index": 4287, "guid": "f778adc1-b929-47ef-8c4c-b5b3d55c83a6", "isActive": true, "balance": "$2,486.70", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Waters Compton", "gender": "male", "company": "BOILICON", "email": "waterscompton@boilicon.com", "phone": "+1 (980) 492-3786", "address": "893 Schweikerts Walk, Graniteville, Colorado, 7129", "about": "Lorem eu culpa non id aliqua. Enim aliqua minim occaecat laboris cillum. Nisi nisi nisi eiusmod elit Lorem magna occaecat reprehenderit laboris duis amet consectetur incididunt eu. Exercitation aute minim veniam non proident. Reprehenderit enim nostrud proident aute ex ex non laborum ut sint labore fugiat in do.\r\n", "registered": "2014-01-27T09:29:31-13:00", "latitude": -52.85, "longitude": -136.686879, "tags": [ "ea", "ipsum", "est", "proident", "tempor", "Lorem", "adipisicing" ], "friends": [ { "id": 0, "name": "Gaines Morgan" }, { "id": 1, "name": "Noemi Meadows" }, { "id": 2, "name": "Cotton Paul" } ], "greeting": "Hello, Waters Compton! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a69740f41bd57bea2", "index": 4288, "guid": "911ed454-54e1-4b1b-aeb6-508500385d6a", "isActive": false, "balance": "$3,273.43", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Simon Browning", "gender": "male", "company": "OBONES", "email": "simonbrowning@obones.com", "phone": "+1 (805) 426-2906", "address": "177 Bay Avenue, Broadlands, Idaho, 8392", "about": "Voluptate in anim id id cillum pariatur adipisicing pariatur voluptate in cupidatat veniam deserunt. Pariatur fugiat proident est do fugiat irure tempor cillum sunt aliqua ex. Mollit excepteur aute laboris velit nulla tempor id. Minim ullamco ullamco aliqua culpa adipisicing deserunt occaecat sunt commodo consectetur voluptate Lorem ad exercitation. Ipsum aute cupidatat culpa nisi sint culpa. In veniam commodo cillum qui exercitation non quis officia sunt eu consectetur nostrud. Aliquip anim dolore ut magna nostrud nostrud fugiat dolor nostrud sint.\r\n", "registered": "2014-09-18T11:34:33-12:00", "latitude": 43.406663, "longitude": -170.371231, "tags": [ "non", "exercitation", "anim", "duis", "quis", "nisi", "officia" ], "friends": [ { "id": 0, "name": "Rios Knapp" }, { "id": 1, "name": "Craft Santos" }, { "id": 2, "name": "Rhoda Frank" } ], "greeting": "Hello, Simon Browning! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a742bf11dcf90cce6", "index": 4289, "guid": "b85676c0-02f3-40d8-b0fd-34fe05b34c19", "isActive": false, "balance": "$2,557.51", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Myrna Bird", "gender": "female", "company": "PETICULAR", "email": "myrnabird@peticular.com", "phone": "+1 (839) 428-3139", "address": "182 Rodney Street, Longoria, Marshall Islands, 8727", "about": "Fugiat adipisicing ex veniam dolore et. Non fugiat amet sunt velit minim pariatur esse id magna. Officia et quis pariatur consequat exercitation. Consequat duis aliqua laboris duis officia non.\r\n", "registered": "2014-09-04T13:55:14-12:00", "latitude": 19.195877, "longitude": -14.861757, "tags": [ "consequat", "eu", "labore", "officia", "velit", "pariatur", "est" ], "friends": [ { "id": 0, "name": "Price Bryan" }, { "id": 1, "name": "Darcy Joyce" }, { "id": 2, "name": "Carver Wilcox" } ], "greeting": "Hello, Myrna Bird! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a70f6743bde4d2df8", "index": 4290, "guid": "cdc588e1-52b3-4d05-b8f6-514ede171003", "isActive": true, "balance": "$1,413.62", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Dee Dawson", "gender": "female", "company": "VENDBLEND", "email": "deedawson@vendblend.com", "phone": "+1 (965) 509-3655", "address": "792 Chauncey Street, Innsbrook, New York, 7810", "about": "Labore cillum ex est velit. Eu do ut ut sit minim laborum dolor ea laboris laborum cupidatat irure veniam laborum. Fugiat sunt sit ipsum magna amet nostrud irure reprehenderit duis nostrud anim proident duis. Nisi minim aute mollit Lorem eu esse voluptate labore amet sit ullamco sint laboris. Cillum esse aute consequat duis ex eiusmod. Commodo cillum ex consequat anim. Sunt ullamco do excepteur aliquip cillum anim id dolor est velit qui incididunt fugiat.\r\n", "registered": "2014-09-20T08:11:24-12:00", "latitude": 19.947457, "longitude": 33.901353, "tags": [ "ea", "eiusmod", "anim", "qui", "tempor", "aliqua", "laboris" ], "friends": [ { "id": 0, "name": "Pearlie Glover" }, { "id": 1, "name": "Moore Mcknight" }, { "id": 2, "name": "Garrison Harris" } ], "greeting": "Hello, Dee Dawson! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aea432d4860971da8", "index": 4291, "guid": "980e6a1a-8e5f-4579-9e0d-880553caa486", "isActive": false, "balance": "$1,451.00", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Teresa Price", "gender": "female", "company": "PORTICA", "email": "teresaprice@portica.com", "phone": "+1 (892) 483-3681", "address": "760 Malta Street, Curtice, Guam, 1898", "about": "Exercitation ipsum consectetur officia proident tempor ex consectetur nisi Lorem eu elit ex veniam sunt. Pariatur do proident veniam quis consectetur culpa laboris reprehenderit fugiat aute sunt veniam excepteur qui. Mollit commodo nostrud anim quis velit consectetur ipsum sunt velit.\r\n", "registered": "2014-06-06T23:27:51-12:00", "latitude": -69.068305, "longitude": 108.913167, "tags": [ "officia", "aliqua", "sint", "cillum", "deserunt", "laboris", "aliqua" ], "friends": [ { "id": 0, "name": "Peterson Mckee" }, { "id": 1, "name": "Nunez Mcguire" }, { "id": 2, "name": "Louella Gray" } ], "greeting": "Hello, Teresa Price! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a19c32fb5a208e216", "index": 4292, "guid": "31cc0ebe-1b22-41e9-ab52-4b45d0df8512", "isActive": true, "balance": "$2,396.85", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Lucas Sheppard", "gender": "male", "company": "RUGSTARS", "email": "lucassheppard@rugstars.com", "phone": "+1 (887) 402-2919", "address": "243 Boerum Place, Florence, Virgin Islands, 7540", "about": "Occaecat elit aliqua deserunt tempor. Occaecat sit laboris enim laborum sunt amet deserunt anim sit dolor est dolor. Quis officia ea fugiat ut eu adipisicing.\r\n", "registered": "2014-04-10T07:54:06-12:00", "latitude": -43.813493, "longitude": 9.849957, "tags": [ "in", "voluptate", "do", "consectetur", "pariatur", "Lorem", "in" ], "friends": [ { "id": 0, "name": "Elinor Kaufman" }, { "id": 1, "name": "Marian Chavez" }, { "id": 2, "name": "Reese Nichols" } ], "greeting": "Hello, Lucas Sheppard! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2aab5f5f9c77b56846", "index": 4293, "guid": "75f6cf2c-2f26-4ba5-8411-9ce4a60da0aa", "isActive": false, "balance": "$3,943.08", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Deleon Mathews", "gender": "male", "company": "RECRITUBE", "email": "deleonmathews@recritube.com", "phone": "+1 (860) 404-3010", "address": "817 Cypress Court, Tecolotito, Massachusetts, 1008", "about": "Incididunt ea quis nisi duis sunt magna aliqua labore nulla nulla adipisicing quis ut. Exercitation cupidatat Lorem amet consectetur Lorem pariatur. Excepteur enim commodo ex eu aliquip aliquip cillum aliquip voluptate elit anim et. Do do aute aliquip reprehenderit nostrud anim. Occaecat elit sint Lorem dolore cillum id officia ea nisi elit sunt consequat duis. Eu dolor anim fugiat irure ipsum.\r\n", "registered": "2014-03-24T01:34:42-13:00", "latitude": -71.525165, "longitude": -16.071633, "tags": [ "nisi", "qui", "consectetur", "non", "commodo", "eiusmod", "aliquip" ], "friends": [ { "id": 0, "name": "Savannah Young" }, { "id": 1, "name": "Lisa Santana" }, { "id": 2, "name": "Holland Mcneil" } ], "greeting": "Hello, Deleon Mathews! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ae2925b67232eb084", "index": 4294, "guid": "70f453be-c1b6-4489-8a0c-541bf812a14b", "isActive": true, "balance": "$2,610.20", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Alberta Lang", "gender": "female", "company": "COSMOSIS", "email": "albertalang@cosmosis.com", "phone": "+1 (861) 432-3543", "address": "528 Ebony Court, Martell, Utah, 8292", "about": "Mollit id laborum fugiat deserunt do proident eu amet eiusmod esse consectetur eu cillum. Reprehenderit consequat quis sint pariatur commodo irure fugiat exercitation nulla. Et sint anim occaecat quis nisi elit sint proident laborum qui. Aliquip adipisicing magna cupidatat dolore eiusmod minim officia enim culpa cillum. Labore pariatur cupidatat consectetur reprehenderit deserunt Lorem.\r\n", "registered": "2014-05-25T03:38:23-12:00", "latitude": -71.66122, "longitude": 28.570924, "tags": [ "nisi", "excepteur", "pariatur", "ullamco", "esse", "sunt", "nulla" ], "friends": [ { "id": 0, "name": "Wiggins Obrien" }, { "id": 1, "name": "Clarke Todd" }, { "id": 2, "name": "Stewart Holcomb" } ], "greeting": "Hello, Alberta Lang! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a786ce33c21eac9be", "index": 4295, "guid": "a3cb6a14-13be-4c50-ac24-26038b448ed8", "isActive": true, "balance": "$3,958.96", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Erica Bolton", "gender": "female", "company": "ULTRIMAX", "email": "ericabolton@ultrimax.com", "phone": "+1 (804) 539-2266", "address": "584 Sumner Place, Hebron, Montana, 6008", "about": "Dolor duis consectetur ex irure elit tempor ea. Esse nisi fugiat nostrud exercitation proident sint amet magna tempor occaecat. Aute nostrud esse anim irure ut fugiat qui duis.\r\n", "registered": "2014-02-20T03:49:29-13:00", "latitude": 33.735994, "longitude": -155.811438, "tags": [ "reprehenderit", "in", "incididunt", "sunt", "aliqua", "sunt", "laborum" ], "friends": [ { "id": 0, "name": "Case Wise" }, { "id": 1, "name": "Laurel Humphrey" }, { "id": 2, "name": "Olive Mclean" } ], "greeting": "Hello, Erica Bolton! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ae977068b2fa79f55", "index": 4296, "guid": "eab0f9df-b2ed-4b46-a7ef-91fc6eee25bf", "isActive": true, "balance": "$3,756.01", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Winifred Calhoun", "gender": "female", "company": "EXTREMO", "email": "winifredcalhoun@extremo.com", "phone": "+1 (832) 420-3772", "address": "570 Madison Place, Machias, Wisconsin, 5741", "about": "Excepteur cupidatat amet excepteur minim proident laboris mollit. Lorem nisi non non nulla ex deserunt ea dolore ut aliquip in laboris quis. Est in deserunt proident veniam fugiat pariatur reprehenderit ullamco excepteur. Enim anim reprehenderit cupidatat labore cupidatat laboris dolor ullamco sint eu in dolor pariatur. Do elit dolor enim fugiat veniam irure.\r\n", "registered": "2014-08-15T00:15:32-12:00", "latitude": 56.903796, "longitude": -32.470421, "tags": [ "eiusmod", "Lorem", "Lorem", "consectetur", "duis", "deserunt", "sint" ], "friends": [ { "id": 0, "name": "Deana Carroll" }, { "id": 1, "name": "Santana Little" }, { "id": 2, "name": "Joanne Adkins" } ], "greeting": "Hello, Winifred Calhoun! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a8ebb20c607123667", "index": 4297, "guid": "ffdd9a71-e3bb-44ac-9529-af33bb92639a", "isActive": false, "balance": "$1,944.64", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Delaney Alvarado", "gender": "male", "company": "ASIMILINE", "email": "delaneyalvarado@asimiline.com", "phone": "+1 (955) 413-3909", "address": "281 Story Street, Imperial, Maine, 8099", "about": "Anim consequat exercitation aliquip do excepteur ut consectetur sit sit. Nulla aute id excepteur officia nulla mollit in irure esse excepteur. Aliquip tempor qui excepteur nisi veniam cupidatat. Enim consectetur commodo est occaecat non sint adipisicing anim Lorem in ea aliqua elit cillum.\r\n", "registered": "2014-08-24T04:56:59-12:00", "latitude": -78.297832, "longitude": -166.862462, "tags": [ "nisi", "ipsum", "proident", "qui", "laboris", "ex", "cillum" ], "friends": [ { "id": 0, "name": "Jeannette Wiggins" }, { "id": 1, "name": "Ruthie Oneal" }, { "id": 2, "name": "Brigitte Lopez" } ], "greeting": "Hello, Delaney Alvarado! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2adad90eb2f7d02432", "index": 4298, "guid": "7bc70b0a-6bf6-4037-864c-75822374575f", "isActive": false, "balance": "$1,189.13", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Jennie Osborn", "gender": "female", "company": "QABOOS", "email": "jennieosborn@qaboos.com", "phone": "+1 (911) 545-3375", "address": "458 Seaview Court, Dunbar, Virginia, 2710", "about": "Duis velit reprehenderit velit aliqua officia pariatur ex. Tempor amet qui sit elit eu sit. Fugiat non sit quis elit enim eiusmod ullamco laboris ullamco Lorem aute laboris. Velit ullamco velit magna ullamco do dolor excepteur irure cupidatat. Fugiat pariatur voluptate dolor proident sint dolor velit qui est dolor.\r\n", "registered": "2014-04-24T11:13:48-12:00", "latitude": 14.602454, "longitude": 124.818243, "tags": [ "aute", "laboris", "aliqua", "ut", "occaecat", "eiusmod", "aute" ], "friends": [ { "id": 0, "name": "Misty Duran" }, { "id": 1, "name": "Kara Russo" }, { "id": 2, "name": "Lawrence Moran" } ], "greeting": "Hello, Jennie Osborn! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a0d0ca49d3fac2e1f", "index": 4299, "guid": "508f0edf-fa51-478b-be64-9b76a17c5627", "isActive": true, "balance": "$1,936.75", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Barker Rios", "gender": "male", "company": "KIDGREASE", "email": "barkerrios@kidgrease.com", "phone": "+1 (929) 406-3860", "address": "139 Bulwer Place, Wolcott, Kentucky, 6217", "about": "Consequat cupidatat cupidatat labore dolore dolore quis laborum excepteur magna ut amet. Reprehenderit consequat laboris id magna nisi mollit magna. Esse laboris consectetur duis sunt cupidatat. Do consectetur cupidatat non pariatur incididunt aliqua esse. Labore voluptate do consequat quis id aute commodo voluptate velit minim aliquip cupidatat qui. Fugiat commodo deserunt occaecat dolor incididunt magna irure ullamco irure enim duis do proident excepteur.\r\n", "registered": "2014-01-06T13:14:46-13:00", "latitude": 60.280926, "longitude": 127.048912, "tags": [ "esse", "id", "amet", "magna", "veniam", "laboris", "esse" ], "friends": [ { "id": 0, "name": "Snyder Rivas" }, { "id": 1, "name": "Christina Leblanc" }, { "id": 2, "name": "Stephenson Navarro" } ], "greeting": "Hello, Barker Rios! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a54125fce04b197f9", "index": 4300, "guid": "0d9a0dd0-2cbe-42dd-bec9-b8822c0534b4", "isActive": true, "balance": "$1,468.29", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Branch Pratt", "gender": "male", "company": "DIGITALUS", "email": "branchpratt@digitalus.com", "phone": "+1 (846) 524-2396", "address": "522 Seigel Street, Hemlock, Connecticut, 6033", "about": "Non laboris id velit veniam magna incididunt duis occaecat laboris ad sunt ut. Qui consectetur consequat commodo ex. Excepteur nulla adipisicing velit veniam esse in enim commodo voluptate amet sint amet labore. Adipisicing ipsum mollit do duis nulla et do mollit. Magna ad veniam do aliquip. Nostrud pariatur commodo anim ea dolore esse excepteur eu.\r\n", "registered": "2014-09-21T05:39:28-12:00", "latitude": 78.17621, "longitude": 158.256813, "tags": [ "et", "culpa", "exercitation", "in", "consequat", "culpa", "adipisicing" ], "friends": [ { "id": 0, "name": "Trisha Mercer" }, { "id": 1, "name": "Kelsey Chan" }, { "id": 2, "name": "Dina Carter" } ], "greeting": "Hello, Branch Pratt! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a7e4ce6ac0a24c20b", "index": 4301, "guid": "b0e9dc83-aae7-435d-9626-cfce7cea856c", "isActive": true, "balance": "$3,668.76", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Mckee Cantu", "gender": "male", "company": "SKINSERVE", "email": "mckeecantu@skinserve.com", "phone": "+1 (870) 469-2740", "address": "781 Stuart Street, Caberfae, Mississippi, 2061", "about": "Aute aliqua excepteur magna pariatur cupidatat ullamco aute ex adipisicing. Tempor voluptate ex aute qui. Aliqua sit esse cillum ut proident dolor cillum. Magna labore Lorem reprehenderit adipisicing non elit cillum nulla adipisicing proident dolor laborum ullamco anim. Et id nulla cupidatat amet elit magna eu magna. Adipisicing ad ea deserunt deserunt mollit enim id ut incididunt est. Cupidatat Lorem aute commodo duis.\r\n", "registered": "2014-02-25T10:11:24-13:00", "latitude": 68.193573, "longitude": -109.163546, "tags": [ "nisi", "exercitation", "esse", "est", "anim", "eiusmod", "sit" ], "friends": [ { "id": 0, "name": "Olga Alvarez" }, { "id": 1, "name": "Earnestine Benjamin" }, { "id": 2, "name": "Holden Strickland" } ], "greeting": "Hello, Mckee Cantu! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ab292162cbea918c6", "index": 4302, "guid": "04f702ef-f337-41dc-a130-86347972a018", "isActive": false, "balance": "$1,883.18", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Morales Schroeder", "gender": "male", "company": "ECLIPSENT", "email": "moralesschroeder@eclipsent.com", "phone": "+1 (909) 562-3392", "address": "174 Winthrop Street, Brady, Washington, 2818", "about": "Fugiat incididunt duis nulla aliquip. Officia elit Lorem sunt ullamco labore velit enim commodo officia voluptate reprehenderit labore do deserunt. Adipisicing sunt proident est pariatur culpa ad. Cupidatat duis esse dolore proident nisi non in ut. Veniam officia deserunt nisi ea elit cillum. Qui reprehenderit do minim ea do do aliquip qui fugiat do quis cupidatat duis. Duis duis excepteur quis deserunt ex sunt aliqua anim proident ullamco consequat velit.\r\n", "registered": "2014-05-03T13:47:33-12:00", "latitude": -86.712636, "longitude": 36.725274, "tags": [ "excepteur", "Lorem", "ipsum", "occaecat", "nostrud", "eu", "in" ], "friends": [ { "id": 0, "name": "Marlene Barker" }, { "id": 1, "name": "Middleton Schultz" }, { "id": 2, "name": "Garcia Torres" } ], "greeting": "Hello, Morales Schroeder! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a12f04f1616447879", "index": 4303, "guid": "670a7933-2a66-48a3-83b4-a6cb13b69eb0", "isActive": true, "balance": "$2,164.18", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Ernestine Boyd", "gender": "female", "company": "MELBACOR", "email": "ernestineboyd@melbacor.com", "phone": "+1 (987) 560-3439", "address": "773 Troutman Street, Fresno, Tennessee, 2393", "about": "Veniam velit ipsum laboris do velit commodo velit quis cupidatat sit reprehenderit. Ex ullamco id laborum cupidatat aliqua duis enim nisi ad qui. Ex laborum occaecat ipsum cupidatat. In adipisicing velit anim dolor irure duis laborum cupidatat esse do officia non laborum.\r\n", "registered": "2014-02-12T08:04:14-13:00", "latitude": 26.395664, "longitude": -165.008282, "tags": [ "anim", "et", "ad", "aliquip", "elit", "laborum", "adipisicing" ], "friends": [ { "id": 0, "name": "Tate Franco" }, { "id": 1, "name": "Lynette Houston" }, { "id": 2, "name": "Jackie Ratliff" } ], "greeting": "Hello, Ernestine Boyd! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a05d40f0bc652cf5d", "index": 4304, "guid": "5888e5bb-e3b2-4b69-b5a3-c49b81d84e8c", "isActive": true, "balance": "$3,935.63", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Sandra Benton", "gender": "female", "company": "BLUEGRAIN", "email": "sandrabenton@bluegrain.com", "phone": "+1 (857) 465-2089", "address": "140 Taylor Street, Cressey, Alabama, 8235", "about": "Irure enim magna fugiat laborum Lorem aute. Ipsum anim irure pariatur in minim aliquip esse nulla commodo ullamco. Laboris esse eu ad ullamco esse laborum non eiusmod ad fugiat labore adipisicing cillum excepteur.\r\n", "registered": "2014-06-16T11:49:31-12:00", "latitude": -23.275262, "longitude": 51.342057, "tags": [ "id", "labore", "sint", "Lorem", "eiusmod", "in", "occaecat" ], "friends": [ { "id": 0, "name": "Morrow Roman" }, { "id": 1, "name": "Luisa Schneider" }, { "id": 2, "name": "Silva Brady" } ], "greeting": "Hello, Sandra Benton! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ab17fff75dcc64c6f", "index": 4305, "guid": "935f2185-0393-4704-8904-4e2d86353bc1", "isActive": false, "balance": "$2,399.74", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Megan Shannon", "gender": "female", "company": "COMFIRM", "email": "meganshannon@comfirm.com", "phone": "+1 (967) 495-2190", "address": "579 Vandervoort Avenue, Malott, Ohio, 7509", "about": "Officia excepteur nostrud labore anim enim exercitation exercitation aliquip adipisicing voluptate et incididunt veniam consequat. Adipisicing anim ea occaecat eu quis do pariatur veniam duis id. Eiusmod consectetur eu aute esse anim nulla qui. Sit voluptate incididunt incididunt elit deserunt ad quis nulla excepteur cupidatat reprehenderit duis. Cupidatat laboris Lorem aliqua ex labore incididunt commodo ipsum.\r\n", "registered": "2014-01-28T01:43:56-13:00", "latitude": 64.490587, "longitude": -67.514189, "tags": [ "nostrud", "enim", "eiusmod", "aliquip", "est", "consectetur", "mollit" ], "friends": [ { "id": 0, "name": "Georgia Coleman" }, { "id": 1, "name": "Rutledge Ochoa" }, { "id": 2, "name": "Wendy Mcclain" } ], "greeting": "Hello, Megan Shannon! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a65323fcf7340289f", "index": 4306, "guid": "4e88390a-9241-42f9-b2cf-b74d12a79ad9", "isActive": false, "balance": "$2,116.27", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Morris Lowe", "gender": "male", "company": "QUALITERN", "email": "morrislowe@qualitern.com", "phone": "+1 (916) 565-3161", "address": "720 Williams Place, Callaghan, Hawaii, 1054", "about": "Aliqua aliqua excepteur labore nulla aliqua do adipisicing sint irure nostrud deserunt dolore labore commodo. Ipsum dolore ullamco voluptate duis cupidatat nisi occaecat do elit aute commodo. Commodo Lorem eiusmod ipsum eu esse. Voluptate consectetur minim consectetur id deserunt ex qui commodo laborum.\r\n", "registered": "2014-04-02T15:39:06-13:00", "latitude": 6.789375, "longitude": 25.175121, "tags": [ "deserunt", "adipisicing", "velit", "aliquip", "culpa", "cupidatat", "et" ], "friends": [ { "id": 0, "name": "Marilyn Hardin" }, { "id": 1, "name": "Hewitt Watkins" }, { "id": 2, "name": "Morin Good" } ], "greeting": "Hello, Morris Lowe! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a7323775fea303488", "index": 4307, "guid": "e28b78db-db69-46c1-aea6-a2ec176c358d", "isActive": false, "balance": "$3,598.01", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Reba Cohen", "gender": "female", "company": "DREAMIA", "email": "rebacohen@dreamia.com", "phone": "+1 (951) 424-2199", "address": "172 Hill Street, Austinburg, New Mexico, 9104", "about": "Et minim est irure consequat laborum ipsum velit. Aliquip commodo sunt tempor excepteur labore ea sit et voluptate quis. Laboris sit eu elit voluptate velit anim excepteur quis enim amet sunt eiusmod. Pariatur deserunt eiusmod do aliqua pariatur non cupidatat officia. Eu sit enim enim fugiat voluptate laboris enim sunt pariatur nisi ea consectetur sint. Qui ad non cillum ea ullamco et sint quis ad irure id labore.\r\n", "registered": "2014-02-22T02:20:57-13:00", "latitude": -81.345552, "longitude": -54.066422, "tags": [ "aliquip", "non", "veniam", "ad", "irure", "velit", "laboris" ], "friends": [ { "id": 0, "name": "Ethel Gamble" }, { "id": 1, "name": "Julia Haynes" }, { "id": 2, "name": "Gill Gibson" } ], "greeting": "Hello, Reba Cohen! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a58e066538249acbe", "index": 4308, "guid": "b2568c25-52e8-4d8c-84d4-73fb4898a641", "isActive": false, "balance": "$2,142.79", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Jimmie Roth", "gender": "female", "company": "INTERLOO", "email": "jimmieroth@interloo.com", "phone": "+1 (848) 492-2673", "address": "897 Box Street, Bentonville, Maryland, 4675", "about": "Officia exercitation cupidatat in proident aute anim consequat nisi sunt. Sunt dolor incididunt excepteur est nisi veniam. Ea adipisicing adipisicing in dolore in id labore voluptate culpa enim ipsum aliquip adipisicing. Ullamco Lorem aliqua officia incididunt occaecat mollit deserunt laborum veniam tempor. Est excepteur magna reprehenderit nostrud id reprehenderit ad. Sit esse aliqua aliquip est nostrud. Cupidatat adipisicing dolore enim proident eiusmod aliqua labore irure enim magna ullamco.\r\n", "registered": "2014-06-26T08:11:00-12:00", "latitude": -81.196633, "longitude": 113.603963, "tags": [ "laboris", "nisi", "exercitation", "cillum", "cillum", "dolore", "in" ], "friends": [ { "id": 0, "name": "Dalton Camacho" }, { "id": 1, "name": "Walter Branch" }, { "id": 2, "name": "Katrina Fuller" } ], "greeting": "Hello, Jimmie Roth! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a4905c5fca7fa84a9", "index": 4309, "guid": "a68f7060-5420-4ebc-89fa-416f9e367764", "isActive": false, "balance": "$3,485.90", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Luz Holden", "gender": "female", "company": "MARKETOID", "email": "luzholden@marketoid.com", "phone": "+1 (960) 575-2142", "address": "900 Berry Street, Roulette, Alaska, 1985", "about": "Labore excepteur culpa adipisicing ullamco. Consectetur dolor incididunt nostrud ad occaecat anim mollit et et officia anim officia esse. Nulla tempor aliquip non elit culpa esse excepteur labore voluptate dolor. Anim qui laboris irure minim labore eu. Aliquip proident sint commodo esse amet ad enim.\r\n", "registered": "2014-02-26T03:40:36-13:00", "latitude": 55.178989, "longitude": -133.155106, "tags": [ "occaecat", "commodo", "proident", "laborum", "aliquip", "elit", "nostrud" ], "friends": [ { "id": 0, "name": "Dunlap Butler" }, { "id": 1, "name": "Reyes Horton" }, { "id": 2, "name": "Regina Molina" } ], "greeting": "Hello, Luz Holden! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2abd54d3724138dd88", "index": 4310, "guid": "af159f48-fcee-4234-b9ec-54224bd3e97b", "isActive": true, "balance": "$3,394.15", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Vaughn Le", "gender": "male", "company": "TALAE", "email": "vaughnle@talae.com", "phone": "+1 (993) 514-2068", "address": "293 Clinton Avenue, Alafaya, Arizona, 1182", "about": "Dolor dolor proident dolor adipisicing commodo laborum laboris sit duis adipisicing. Ullamco cillum dolor est ea minim voluptate proident ipsum. Velit anim magna dolore et aliquip eu velit veniam nisi sit aliqua irure duis. Culpa voluptate duis nostrud elit. Anim labore anim sit laboris enim Lorem nulla ea elit sint. Aliquip laborum consequat occaecat aute sit sit ad nulla pariatur velit. Cillum velit ullamco anim aliqua.\r\n", "registered": "2014-08-29T03:10:11-12:00", "latitude": -73.011804, "longitude": 99.929093, "tags": [ "laborum", "consectetur", "officia", "exercitation", "aliquip", "pariatur", "Lorem" ], "friends": [ { "id": 0, "name": "Kirkland Summers" }, { "id": 1, "name": "Benson Gardner" }, { "id": 2, "name": "Iris Wallace" } ], "greeting": "Hello, Vaughn Le! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a119fd892005cb2ac", "index": 4311, "guid": "34f4d3bc-9b15-4033-a9d4-33f3392fca9c", "isActive": false, "balance": "$1,278.92", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Chandler Johnson", "gender": "male", "company": "PLASTO", "email": "chandlerjohnson@plasto.com", "phone": "+1 (906) 427-3227", "address": "988 McKibbin Street, Rehrersburg, Federated States Of Micronesia, 6357", "about": "Reprehenderit est sint magna consequat sunt Lorem. Eiusmod voluptate velit nisi consectetur anim ipsum laboris ipsum. Ea ea consequat cupidatat excepteur.\r\n", "registered": "2014-05-14T16:47:14-12:00", "latitude": -46.382599, "longitude": 130.727098, "tags": [ "adipisicing", "nostrud", "velit", "non", "et", "cupidatat", "laboris" ], "friends": [ { "id": 0, "name": "Bass Conner" }, { "id": 1, "name": "Bender Finch" }, { "id": 2, "name": "York Haney" } ], "greeting": "Hello, Chandler Johnson! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2adbe9ee21e692f5ce", "index": 4312, "guid": "3b7adc3c-b92b-4c42-81d4-83b24dd71888", "isActive": false, "balance": "$2,747.32", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Graves Martin", "gender": "male", "company": "ORBALIX", "email": "gravesmartin@orbalix.com", "phone": "+1 (878) 509-3479", "address": "561 Roebling Street, Sandston, Oklahoma, 909", "about": "Nulla fugiat nisi incididunt consequat cillum est officia velit. Commodo sint do exercitation sit magna sint commodo eu voluptate enim veniam eiusmod aliquip. Mollit aliquip consectetur commodo proident aliquip sit nisi velit ea enim culpa. Commodo Lorem eiusmod dolor fugiat velit labore ad id. Irure irure dolore aliqua id ut dolore sit labore. Dolore adipisicing irure eu incididunt officia excepteur tempor eiusmod fugiat reprehenderit. Veniam eu ipsum Lorem esse officia exercitation enim ullamco elit fugiat nostrud mollit.\r\n", "registered": "2014-08-26T06:55:46-12:00", "latitude": 5.947295, "longitude": -35.026509, "tags": [ "laboris", "eiusmod", "occaecat", "dolor", "cillum", "esse", "in" ], "friends": [ { "id": 0, "name": "Nicole Crosby" }, { "id": 1, "name": "Ella Lloyd" }, { "id": 2, "name": "Atkinson Lester" } ], "greeting": "Hello, Graves Martin! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a6ce993f669950e64", "index": 4313, "guid": "66011b0f-1df8-42fd-abec-2a807f02a0fc", "isActive": true, "balance": "$2,977.69", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Lorene Whitfield", "gender": "female", "company": "STRALOY", "email": "lorenewhitfield@straloy.com", "phone": "+1 (826) 584-3806", "address": "839 Vandervoort Place, Leland, Michigan, 9648", "about": "Consectetur aliquip Lorem ea tempor qui culpa laboris occaecat non eu. Reprehenderit Lorem ut ipsum velit et. Exercitation ullamco consectetur aliquip nostrud id anim ut pariatur tempor. Mollit nisi consectetur excepteur adipisicing ipsum consequat quis laborum aliquip ullamco ea non laborum.\r\n", "registered": "2014-02-02T22:13:43-13:00", "latitude": -0.296429, "longitude": -28.234604, "tags": [ "id", "ipsum", "in", "commodo", "dolor", "aliquip", "ad" ], "friends": [ { "id": 0, "name": "Lenora Evans" }, { "id": 1, "name": "Chapman Blackburn" }, { "id": 2, "name": "Melba Walter" } ], "greeting": "Hello, Lorene Whitfield! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2aabc8af52fb68879b", "index": 4314, "guid": "fcbc8f1c-e2f7-489c-89ec-ab1aa2f068de", "isActive": false, "balance": "$2,712.46", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Glenna Underwood", "gender": "female", "company": "RADIANTIX", "email": "glennaunderwood@radiantix.com", "phone": "+1 (880) 489-2573", "address": "553 Kay Court, Wakulla, Kansas, 2744", "about": "Occaecat duis ea eu reprehenderit esse officia deserunt incididunt laboris eu nisi nostrud reprehenderit. Incididunt minim id tempor fugiat aute. Aute aute deserunt aliquip ex non sunt. Aliquip deserunt nostrud proident adipisicing incididunt nostrud excepteur exercitation dolore.\r\n", "registered": "2014-06-08T11:44:51-12:00", "latitude": 76.154951, "longitude": 41.514548, "tags": [ "quis", "labore", "consectetur", "anim", "in", "enim", "et" ], "friends": [ { "id": 0, "name": "Josie William" }, { "id": 1, "name": "English Mccarty" }, { "id": 2, "name": "Janis Mullins" } ], "greeting": "Hello, Glenna Underwood! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a55f1a0108f9ff6fc", "index": 4315, "guid": "507f1a5d-53d8-47de-be92-66b32d7ed0e6", "isActive": false, "balance": "$1,994.97", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Nita Sweet", "gender": "female", "company": "UTARIAN", "email": "nitasweet@utarian.com", "phone": "+1 (963) 592-2139", "address": "853 Jefferson Street, Hailesboro, South Dakota, 6642", "about": "Ea do non sint ex velit ut dolore anim et velit commodo. Magna amet non aliquip veniam. Velit qui do magna in incididunt et non culpa veniam laboris.\r\n", "registered": "2014-05-10T22:07:27-12:00", "latitude": -14.639281, "longitude": 1.892401, "tags": [ "incididunt", "reprehenderit", "pariatur", "labore", "in", "quis", "laborum" ], "friends": [ { "id": 0, "name": "Lauren Watts" }, { "id": 1, "name": "Lynnette Moreno" }, { "id": 2, "name": "Felecia Mcmillan" } ], "greeting": "Hello, Nita Sweet! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2acd3e694d0e853d8d", "index": 4316, "guid": "6821b4bb-3a39-4806-ad16-a696dc6f678c", "isActive": true, "balance": "$3,138.84", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Manuela Greer", "gender": "female", "company": "SULTRAX", "email": "manuelagreer@sultrax.com", "phone": "+1 (979) 523-2947", "address": "185 Lois Avenue, Beaverdale, West Virginia, 6984", "about": "Magna elit magna aliqua reprehenderit commodo in aliquip qui non ex fugiat sit ad excepteur. Proident anim irure sunt magna incididunt irure anim irure sit magna reprehenderit. Sit ullamco aliqua laboris pariatur adipisicing. Aliqua tempor qui nostrud exercitation irure dolor velit nisi aliquip. Nostrud anim in pariatur consequat ullamco sunt. Excepteur ipsum irure veniam adipisicing. Consectetur ea dolore tempor eiusmod et mollit ex do Lorem id ex ut.\r\n", "registered": "2014-03-11T11:41:57-13:00", "latitude": -85.839195, "longitude": -103.590504, "tags": [ "consequat", "aliqua", "minim", "ad", "enim", "incididunt", "et" ], "friends": [ { "id": 0, "name": "Carey Barron" }, { "id": 1, "name": "Horn Flynn" }, { "id": 2, "name": "Nancy Rasmussen" } ], "greeting": "Hello, Manuela Greer! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2af7c767c62c2441e1", "index": 4317, "guid": "5b690fa4-a6f2-4f10-8870-cec3732bfac5", "isActive": true, "balance": "$3,437.82", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Murphy Carson", "gender": "male", "company": "NAVIR", "email": "murphycarson@navir.com", "phone": "+1 (846) 411-2660", "address": "770 Riverdale Avenue, Glidden, Texas, 1656", "about": "Cupidatat in veniam veniam excepteur id. Sit commodo laboris dolor in do veniam magna. Fugiat magna cupidatat voluptate quis ea tempor ut cillum laborum.\r\n", "registered": "2014-01-18T19:49:28-13:00", "latitude": -61.542948, "longitude": 48.179784, "tags": [ "quis", "commodo", "duis", "officia", "non", "anim", "veniam" ], "friends": [ { "id": 0, "name": "Prince Michael" }, { "id": 1, "name": "Simpson Bond" }, { "id": 2, "name": "Chandra Banks" } ], "greeting": "Hello, Murphy Carson! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a4608eb7a0f9c56d4", "index": 4318, "guid": "6c0156fa-ea20-4231-8b0c-b6b4092792c9", "isActive": false, "balance": "$2,670.06", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Petersen Conley", "gender": "male", "company": "ZILENCIO", "email": "petersenconley@zilencio.com", "phone": "+1 (910) 429-2896", "address": "482 Cameron Court, Castleton, Oregon, 3091", "about": "Ipsum nostrud occaecat eu tempor id sunt cillum consequat commodo occaecat excepteur. Sit excepteur esse consectetur est sint. Ea elit exercitation Lorem aliqua nulla commodo officia deserunt labore ut eiusmod. Dolor in proident ullamco ipsum in quis mollit nisi velit elit enim aute cupidatat.\r\n", "registered": "2014-07-06T19:27:10-12:00", "latitude": 48.75487, "longitude": -144.61797, "tags": [ "cillum", "dolore", "adipisicing", "qui", "consectetur", "reprehenderit", "ipsum" ], "friends": [ { "id": 0, "name": "Sarah Riddle" }, { "id": 1, "name": "Bonner Rosa" }, { "id": 2, "name": "Stephens Palmer" } ], "greeting": "Hello, Petersen Conley! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2af89574c40752d071", "index": 4319, "guid": "382f2a62-9421-4eca-8c7c-2e8ea1b9dff2", "isActive": false, "balance": "$2,955.71", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Briana Mckenzie", "gender": "female", "company": "QUADEEBO", "email": "brianamckenzie@quadeebo.com", "phone": "+1 (932) 513-3272", "address": "140 Caton Place, Roeville, Nevada, 4719", "about": "Sit nulla proident labore reprehenderit in irure duis qui excepteur fugiat Lorem aliqua deserunt ut. Non ex aute ex officia nostrud labore. Nulla nulla elit Lorem est incididunt culpa. Aliqua eu sit reprehenderit exercitation. Ullamco commodo fugiat ex do minim culpa culpa do voluptate do cillum minim incididunt. Non nisi nostrud proident duis do eiusmod do proident occaecat aliquip fugiat aute.\r\n", "registered": "2014-09-23T07:04:24-12:00", "latitude": -0.934757, "longitude": 71.82676, "tags": [ "dolore", "ad", "ullamco", "anim", "cupidatat", "irure", "dolore" ], "friends": [ { "id": 0, "name": "Higgins Koch" }, { "id": 1, "name": "Chasity Goodman" }, { "id": 2, "name": "Mays Ray" } ], "greeting": "Hello, Briana Mckenzie! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2abc705b8f81c08078", "index": 4320, "guid": "5d094a0b-8d12-4d0f-997b-8fc0cddac4d5", "isActive": true, "balance": "$1,177.45", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Josefa Bradshaw", "gender": "female", "company": "MANUFACT", "email": "josefabradshaw@manufact.com", "phone": "+1 (856) 453-2708", "address": "574 Matthews Place, Suitland, Minnesota, 7630", "about": "Nisi elit et do magna quis cillum ea adipisicing eu aliqua. Ipsum non sunt proident mollit et esse. Non in duis minim reprehenderit nisi. Elit sit ad consequat Lorem deserunt nisi.\r\n", "registered": "2014-05-29T17:46:37-12:00", "latitude": 44.835191, "longitude": 143.237465, "tags": [ "aliqua", "quis", "eiusmod", "dolor", "pariatur", "pariatur", "adipisicing" ], "friends": [ { "id": 0, "name": "Ollie King" }, { "id": 1, "name": "Lula Bender" }, { "id": 2, "name": "Sadie Garza" } ], "greeting": "Hello, Josefa Bradshaw! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a8fd881080ebe9318", "index": 4321, "guid": "e1ad4be9-2e53-49ac-b56c-d8cfb815fb77", "isActive": true, "balance": "$2,034.46", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Phillips Nolan", "gender": "male", "company": "ZANYMAX", "email": "phillipsnolan@zanymax.com", "phone": "+1 (834) 413-3543", "address": "356 Beaumont Street, Chilton, Missouri, 8101", "about": "Adipisicing aute sit aute eu occaecat consectetur dolor nulla enim pariatur. Officia laborum nulla occaecat voluptate. Consectetur nisi laborum excepteur velit excepteur ipsum labore fugiat exercitation. Magna sunt voluptate tempor proident quis reprehenderit. Incididunt aute exercitation duis incididunt mollit.\r\n", "registered": "2014-01-26T15:47:20-13:00", "latitude": 15.284666, "longitude": 145.020625, "tags": [ "laborum", "ipsum", "voluptate", "ad", "laboris", "ut", "ad" ], "friends": [ { "id": 0, "name": "Jeannie Cote" }, { "id": 1, "name": "Bell Delacruz" }, { "id": 2, "name": "Thomas Sanders" } ], "greeting": "Hello, Phillips Nolan! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a969c028aece452dd", "index": 4322, "guid": "1f7555a3-e54d-4eb3-b590-c5ccd8bb2ea3", "isActive": true, "balance": "$3,928.31", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Cantu Ewing", "gender": "male", "company": "TOYLETRY", "email": "cantuewing@toyletry.com", "phone": "+1 (854) 429-2048", "address": "892 Truxton Street, Genoa, Rhode Island, 9798", "about": "Dolore duis aute veniam Lorem magna id est. Consequat in cupidatat reprehenderit excepteur tempor. Nulla est fugiat dolore exercitation officia nostrud ea. Minim ut proident sint commodo minim proident. Officia anim dolore eu veniam irure esse amet culpa ipsum minim proident. Dolor qui reprehenderit tempor et pariatur culpa exercitation minim adipisicing esse voluptate.\r\n", "registered": "2014-02-07T21:35:32-13:00", "latitude": 39.654409, "longitude": 151.102613, "tags": [ "eiusmod", "amet", "officia", "laboris", "qui", "et", "ad" ], "friends": [ { "id": 0, "name": "Rosalind Sexton" }, { "id": 1, "name": "Harriet Salinas" }, { "id": 2, "name": "Neal Alexander" } ], "greeting": "Hello, Cantu Ewing! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a39553441f0539150", "index": 4323, "guid": "671a8918-c89c-4df6-900e-06d1a1913850", "isActive": false, "balance": "$1,757.74", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Amy Lane", "gender": "female", "company": "DECRATEX", "email": "amylane@decratex.com", "phone": "+1 (968) 456-3252", "address": "653 Highland Place, Remington, Florida, 2551", "about": "Ex dolore amet velit consectetur fugiat ullamco nostrud aliqua. Occaecat exercitation eiusmod aliquip eiusmod exercitation ullamco consequat esse ipsum anim ad magna qui. Esse sint et velit sit deserunt cillum incididunt est. Pariatur voluptate esse ut duis amet do anim ad culpa ad duis.\r\n", "registered": "2014-01-11T06:31:49-13:00", "latitude": -28.748584, "longitude": 101.769524, "tags": [ "anim", "laboris", "magna", "amet", "ut", "mollit", "Lorem" ], "friends": [ { "id": 0, "name": "Thompson Kline" }, { "id": 1, "name": "Corinne Lowery" }, { "id": 2, "name": "Cynthia Dodson" } ], "greeting": "Hello, Amy Lane! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a7f158062cdf368f5", "index": 4324, "guid": "4e0bd963-41e2-43a8-bb8d-c7d8a3b808d1", "isActive": false, "balance": "$1,299.78", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Romero Russell", "gender": "male", "company": "XIIX", "email": "romerorussell@xiix.com", "phone": "+1 (939) 461-2651", "address": "371 Richardson Street, Hollins, North Carolina, 5873", "about": "Laborum pariatur qui et nulla exercitation. Reprehenderit aliquip non reprehenderit velit sunt voluptate proident officia aliquip veniam duis sit dolore. Velit nostrud non consequat enim non. Nostrud mollit consequat est cillum. Enim ex id magna voluptate esse consequat mollit elit incididunt consectetur.\r\n", "registered": "2014-08-06T17:05:32-12:00", "latitude": 80.960289, "longitude": -57.462466, "tags": [ "voluptate", "sint", "ea", "ea", "ad", "pariatur", "fugiat" ], "friends": [ { "id": 0, "name": "Banks Reese" }, { "id": 1, "name": "Elizabeth Short" }, { "id": 2, "name": "Sellers Cameron" } ], "greeting": "Hello, Romero Russell! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa6f929fdfc6de1e1", "index": 4325, "guid": "c79c06e5-44af-48b0-9e82-632c592384f8", "isActive": false, "balance": "$1,395.73", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Pate Lawrence", "gender": "male", "company": "COFINE", "email": "patelawrence@cofine.com", "phone": "+1 (882) 501-2116", "address": "808 Louis Place, Bangor, New Hampshire, 5247", "about": "Dolor consequat ex consectetur dolor elit tempor culpa duis. Adipisicing sint fugiat non reprehenderit nulla. Velit velit elit dolor in sunt cillum dolore ut velit non nisi voluptate irure veniam. Exercitation ut consequat consectetur qui voluptate quis.\r\n", "registered": "2014-05-03T18:38:08-12:00", "latitude": 75.662547, "longitude": -39.761538, "tags": [ "enim", "consectetur", "eu", "sit", "culpa", "quis", "deserunt" ], "friends": [ { "id": 0, "name": "Stevenson Small" }, { "id": 1, "name": "Odonnell Wilkins" }, { "id": 2, "name": "Mosley Frye" } ], "greeting": "Hello, Pate Lawrence! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a32f58a25741d9a68", "index": 4326, "guid": "a43e2f64-30cf-4f1f-91eb-bb5ca8b0bba4", "isActive": true, "balance": "$3,633.53", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Celia Medina", "gender": "female", "company": "VIASIA", "email": "celiamedina@viasia.com", "phone": "+1 (832) 494-2695", "address": "262 Hooper Street, Kiskimere, Arkansas, 9961", "about": "Magna est in excepteur ipsum aliqua duis reprehenderit ut mollit ullamco eiusmod officia deserunt veniam. Pariatur culpa ut deserunt nostrud elit laboris quis veniam qui ullamco ut. Fugiat irure et eu amet aliquip ea cupidatat. Aliquip nulla sit esse veniam nostrud elit eu exercitation. Fugiat aute veniam est do occaecat Lorem qui velit laborum consequat incididunt.\r\n", "registered": "2014-07-14T16:45:11-12:00", "latitude": -8.71212, "longitude": -80.962568, "tags": [ "aliqua", "amet", "aute", "in", "magna", "ex", "et" ], "friends": [ { "id": 0, "name": "Cox Terry" }, { "id": 1, "name": "Fields Mccullough" }, { "id": 2, "name": "Rowena Manning" } ], "greeting": "Hello, Celia Medina! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2af0fd0ef49c117e9b", "index": 4327, "guid": "49f651c5-818f-4ac5-af9e-07765ff7149f", "isActive": true, "balance": "$3,820.49", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Carmela Langley", "gender": "female", "company": "AUTOMON", "email": "carmelalangley@automon.com", "phone": "+1 (832) 416-3598", "address": "817 Garnet Street, Limestone, Iowa, 1424", "about": "Pariatur officia ad voluptate ex elit mollit ea do cupidatat Lorem veniam aliquip do. Ex tempor excepteur sunt consectetur adipisicing ad proident irure quis ut. Laborum irure ut aliquip excepteur quis non amet elit deserunt sit excepteur anim. Id pariatur nisi sit anim dolor proident eiusmod. Enim qui laboris et cupidatat quis. Sint Lorem velit exercitation minim ipsum mollit dolore mollit.\r\n", "registered": "2014-01-28T19:58:01-13:00", "latitude": -34.072973, "longitude": -21.418241, "tags": [ "consequat", "ea", "Lorem", "consectetur", "velit", "exercitation", "velit" ], "friends": [ { "id": 0, "name": "Rita Jackson" }, { "id": 1, "name": "Mckinney Grant" }, { "id": 2, "name": "Spence Hatfield" } ], "greeting": "Hello, Carmela Langley! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a6375e582613111f3", "index": 4328, "guid": "d6d01249-bc9d-43a9-a2ea-b541b7806065", "isActive": false, "balance": "$3,727.12", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Hooper Hodges", "gender": "male", "company": "RETRACK", "email": "hooperhodges@retrack.com", "phone": "+1 (846) 403-2272", "address": "807 Douglass Street, Ypsilanti, Nebraska, 233", "about": "Nulla nulla officia ex est nostrud cillum nostrud in mollit aute minim. Aute voluptate minim non duis laborum anim. Esse et pariatur in incididunt aliqua. Consectetur magna sit cillum cupidatat sit consequat consectetur commodo. Ullamco id aliquip sunt occaecat laboris eu ex. Sint officia ex sint elit pariatur. Anim ut sunt aliquip excepteur cupidatat magna nisi aliquip sit.\r\n", "registered": "2014-05-11T14:30:11-12:00", "latitude": -28.459077, "longitude": -12.834909, "tags": [ "voluptate", "esse", "consectetur", "magna", "ad", "minim", "nulla" ], "friends": [ { "id": 0, "name": "Nadia Trevino" }, { "id": 1, "name": "Geneva Thornton" }, { "id": 2, "name": "Kristin Kelley" } ], "greeting": "Hello, Hooper Hodges! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a98f140dcc5d0ea07", "index": 4329, "guid": "f89eb7b9-330b-4b7f-a1d0-102bb3422dfd", "isActive": true, "balance": "$3,958.52", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Jacobson Joseph", "gender": "male", "company": "NETERIA", "email": "jacobsonjoseph@neteria.com", "phone": "+1 (968) 547-2955", "address": "746 Carroll Street, Fredericktown, District Of Columbia, 1871", "about": "Duis commodo aute elit est Lorem voluptate ipsum dolor tempor velit ut ipsum. Irure laboris ipsum pariatur sunt ex in Lorem. Consequat quis cillum laborum labore cupidatat qui officia qui do. Occaecat minim eu deserunt ullamco enim tempor cillum voluptate ad veniam culpa aliqua sint deserunt. Sint enim aute laboris mollit. Esse Lorem amet adipisicing ipsum aliquip incididunt officia magna et id excepteur duis. Sint excepteur anim eiusmod minim incididunt labore aliqua consectetur anim sit do.\r\n", "registered": "2014-09-10T06:06:12-12:00", "latitude": 59.946436, "longitude": -145.673405, "tags": [ "elit", "voluptate", "commodo", "incididunt", "deserunt", "consectetur", "eu" ], "friends": [ { "id": 0, "name": "Sofia Stephens" }, { "id": 1, "name": "Parker Norman" }, { "id": 2, "name": "Juarez Nash" } ], "greeting": "Hello, Jacobson Joseph! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a68b93a1ab2a8f712", "index": 4330, "guid": "832b2675-00a0-45d0-a3b4-01ce4c8794b5", "isActive": true, "balance": "$3,599.42", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Estela Gibbs", "gender": "female", "company": "LOTRON", "email": "estelagibbs@lotron.com", "phone": "+1 (882) 440-2230", "address": "761 Batchelder Street, Fedora, New Jersey, 6640", "about": "In magna ullamco amet dolor ex ad cillum culpa dolore sunt ipsum mollit cupidatat. Anim velit do ut id labore irure ex. Laborum proident ex occaecat qui qui culpa qui laborum aliqua id anim do aliqua. Tempor ullamco consequat exercitation eu excepteur laborum culpa occaecat irure laboris cupidatat dolore anim magna. Ut anim ullamco dolore ipsum fugiat magna esse ad tempor elit. Labore ut laborum laborum voluptate adipisicing fugiat magna cillum aute ad sunt Lorem aute.\r\n", "registered": "2014-05-21T14:37:57-12:00", "latitude": -42.635687, "longitude": -112.994489, "tags": [ "sunt", "ipsum", "et", "dolore", "et", "eiusmod", "commodo" ], "friends": [ { "id": 0, "name": "Doris Foreman" }, { "id": 1, "name": "Quinn Leon" }, { "id": 2, "name": "Nellie Holt" } ], "greeting": "Hello, Estela Gibbs! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ad438cd789c974f2c", "index": 4331, "guid": "a19b927e-da3d-4e13-a134-e97882372d3d", "isActive": true, "balance": "$3,222.20", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "May Griffin", "gender": "male", "company": "TETRATREX", "email": "maygriffin@tetratrex.com", "phone": "+1 (989) 524-3003", "address": "556 Brightwater Avenue, Shaft, Palau, 7380", "about": "Do laborum id elit fugiat. Duis esse irure elit reprehenderit aliqua. Anim ad proident labore laborum anim proident duis enim officia ut ad irure dolor qui. Aliquip veniam excepteur dolor minim ipsum laboris sint officia excepteur.\r\n", "registered": "2014-02-20T08:04:01-13:00", "latitude": 89.87901, "longitude": 2.067611, "tags": [ "Lorem", "in", "laboris", "eiusmod", "id", "ad", "aliquip" ], "friends": [ { "id": 0, "name": "Nolan Sutton" }, { "id": 1, "name": "Holloway Woodard" }, { "id": 2, "name": "Barber Larsen" } ], "greeting": "Hello, May Griffin! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ae56ebd392a67709b", "index": 4332, "guid": "20888290-3a26-4337-bd49-df31b78a7508", "isActive": false, "balance": "$1,981.81", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Howard Parks", "gender": "male", "company": "RODEOLOGY", "email": "howardparks@rodeology.com", "phone": "+1 (991) 563-2475", "address": "580 Hoyt Street, Adelino, Puerto Rico, 1031", "about": "Commodo ullamco laboris cillum nulla laboris nostrud irure do sint qui nostrud anim. Laboris officia proident nisi Lorem in adipisicing duis. Occaecat incididunt tempor sunt consectetur reprehenderit pariatur quis irure proident officia tempor mollit duis. Sint aute deserunt consequat laboris elit duis id Lorem incididunt fugiat laboris excepteur.\r\n", "registered": "2014-06-01T06:08:49-12:00", "latitude": 9.265751, "longitude": -132.613806, "tags": [ "duis", "eu", "veniam", "consectetur", "ut", "tempor", "qui" ], "friends": [ { "id": 0, "name": "Carol Benson" }, { "id": 1, "name": "Gracie Jefferson" }, { "id": 2, "name": "Stephanie Ruiz" } ], "greeting": "Hello, Howard Parks! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2afb43431b19c00e51", "index": 4333, "guid": "163227c9-06f1-4ca2-8999-1167eef6e286", "isActive": true, "balance": "$3,450.09", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Bryant Mclaughlin", "gender": "male", "company": "ZILODYNE", "email": "bryantmclaughlin@zilodyne.com", "phone": "+1 (914) 401-2605", "address": "984 Lott Street, Richford, California, 7187", "about": "Proident aute consectetur mollit nostrud pariatur duis aute. Incididunt aliqua nisi esse aliqua adipisicing velit duis commodo aute laborum nostrud deserunt nisi qui. Sit minim qui voluptate nulla est.\r\n", "registered": "2014-06-21T17:04:24-12:00", "latitude": -4.039549, "longitude": 10.926745, "tags": [ "deserunt", "occaecat", "consequat", "sit", "in", "do", "officia" ], "friends": [ { "id": 0, "name": "Ball Bernard" }, { "id": 1, "name": "Heather Bonner" }, { "id": 2, "name": "Brady Fischer" } ], "greeting": "Hello, Bryant Mclaughlin! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a7d5ca6e2ed88feee", "index": 4334, "guid": "39e87419-508f-42a9-8461-139a0a866c9e", "isActive": false, "balance": "$1,482.95", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Kristy Whitney", "gender": "female", "company": "COMTENT", "email": "kristywhitney@comtent.com", "phone": "+1 (875) 546-2081", "address": "756 Putnam Avenue, Sena, Vermont, 4407", "about": "Sunt elit ullamco sit aliqua irure. Consequat enim veniam amet veniam tempor magna officia elit veniam. Do irure ex adipisicing labore sint ad tempor in labore commodo commodo velit in sunt. Proident officia minim sit amet irure esse velit fugiat cillum. Exercitation ipsum commodo ex est proident aliquip ea.\r\n", "registered": "2014-03-08T13:33:02-13:00", "latitude": -73.636517, "longitude": -171.522077, "tags": [ "dolor", "ea", "enim", "quis", "incididunt", "Lorem", "exercitation" ], "friends": [ { "id": 0, "name": "Sawyer Conway" }, { "id": 1, "name": "Mack Patton" }, { "id": 2, "name": "Lester Hahn" } ], "greeting": "Hello, Kristy Whitney! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a0e2f2956a54779a1", "index": 4335, "guid": "4ad4ea3c-71fb-4fb8-952e-58946c6c8ff7", "isActive": false, "balance": "$3,172.33", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Holly Mcpherson", "gender": "female", "company": "EARTHPURE", "email": "hollymcpherson@earthpure.com", "phone": "+1 (814) 594-2466", "address": "226 Belvidere Street, Canoochee, Indiana, 4139", "about": "Proident nostrud officia fugiat Lorem sit et officia est qui aute. In anim deserunt sit excepteur nisi ullamco id ut. Non esse minim irure qui et adipisicing ut aute voluptate in. Incididunt tempor fugiat reprehenderit laborum consequat cillum duis fugiat nostrud tempor. Dolore id ad ex irure tempor ipsum ut. Pariatur sit id sint dolore qui proident consectetur. Ipsum deserunt adipisicing ex sit elit.\r\n", "registered": "2014-01-05T23:16:21-13:00", "latitude": 27.658669, "longitude": -85.891641, "tags": [ "nostrud", "ut", "qui", "exercitation", "sunt", "cillum", "irure" ], "friends": [ { "id": 0, "name": "Maryellen Cabrera" }, { "id": 1, "name": "Dolly Sanchez" }, { "id": 2, "name": "Jodie Davidson" } ], "greeting": "Hello, Holly Mcpherson! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a5cae7f460e32d40e", "index": 4336, "guid": "b3c1298b-af55-44ea-be11-d29bcdcf055f", "isActive": false, "balance": "$2,666.25", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Toni Preston", "gender": "female", "company": "PIGZART", "email": "tonipreston@pigzart.com", "phone": "+1 (814) 505-3085", "address": "297 Paerdegat Avenue, Maplewood, Illinois, 7187", "about": "Voluptate Lorem id ipsum et ut voluptate elit laborum esse id commodo quis commodo veniam. Sit id laborum ad cupidatat id ut quis. Aliqua fugiat ullamco duis deserunt deserunt in eiusmod ut nostrud tempor do ipsum.\r\n", "registered": "2014-03-22T12:57:42-13:00", "latitude": -41.937175, "longitude": -99.674202, "tags": [ "aliqua", "sint", "ullamco", "deserunt", "anim", "laborum", "est" ], "friends": [ { "id": 0, "name": "Estella Williams" }, { "id": 1, "name": "Terrell Reilly" }, { "id": 2, "name": "Candy Jacobson" } ], "greeting": "Hello, Toni Preston! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a156916c431d700fa", "index": 4337, "guid": "bc1cd6b0-f3b4-4078-a6c7-a5c1df490e86", "isActive": false, "balance": "$1,896.18", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Brewer Jones", "gender": "male", "company": "IMANT", "email": "brewerjones@imant.com", "phone": "+1 (936) 444-2277", "address": "422 Neptune Court, Umapine, South Carolina, 3866", "about": "Ea sunt eu laboris veniam cillum consequat enim magna cillum tempor. Ullamco proident dolore fugiat aute Lorem commodo elit sit ullamco sint eiusmod. Ut ut nulla nisi eu minim esse quis eu nulla nostrud. Cillum non magna ipsum laborum excepteur do eiusmod eu. Elit deserunt nostrud exercitation duis eiusmod.\r\n", "registered": "2014-02-05T03:18:27-13:00", "latitude": 28.003279, "longitude": -127.423545, "tags": [ "proident", "reprehenderit", "et", "amet", "enim", "exercitation", "cillum" ], "friends": [ { "id": 0, "name": "Dudley Bennett" }, { "id": 1, "name": "Nichols Quinn" }, { "id": 2, "name": "Tommie Zimmerman" } ], "greeting": "Hello, Brewer Jones! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a0c3be440f0780d88", "index": 4338, "guid": "4dc581b7-4556-4e78-8a6a-aa98524aaa4d", "isActive": true, "balance": "$1,287.08", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Traci Cruz", "gender": "female", "company": "ECSTASIA", "email": "tracicruz@ecstasia.com", "phone": "+1 (999) 582-2016", "address": "377 Lawrence Avenue, Manitou, American Samoa, 5650", "about": "Commodo magna ipsum officia qui mollit ex ullamco elit. Veniam dolor eu amet do pariatur enim incididunt sit incididunt nisi non non enim. Nulla exercitation id nisi quis deserunt consectetur. Consectetur reprehenderit adipisicing do anim consectetur ex labore enim proident dolore.\r\n", "registered": "2014-05-26T05:56:01-12:00", "latitude": -39.158479, "longitude": -114.484961, "tags": [ "elit", "veniam", "eiusmod", "adipisicing", "enim", "nostrud", "deserunt" ], "friends": [ { "id": 0, "name": "Ingrid Moody" }, { "id": 1, "name": "Pugh Barton" }, { "id": 2, "name": "Holman Ayala" } ], "greeting": "Hello, Traci Cruz! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a8e5c9d7cdd3451da", "index": 4339, "guid": "dc45b2a9-1dca-4c17-9ff6-8ef395a5e4e7", "isActive": false, "balance": "$2,231.40", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Mcneil Workman", "gender": "male", "company": "VELITY", "email": "mcneilworkman@velity.com", "phone": "+1 (925) 528-3732", "address": "766 Nassau Avenue, Siglerville, Delaware, 2726", "about": "Minim nulla fugiat sint officia. Eiusmod laboris enim pariatur pariatur nulla laboris ex minim qui eiusmod sit enim. Nisi id ea duis cupidatat cupidatat laborum aliquip nisi dolor proident est velit.\r\n", "registered": "2014-05-23T21:18:52-12:00", "latitude": -53.526294, "longitude": 54.696337, "tags": [ "proident", "nisi", "quis", "mollit", "sit", "proident", "labore" ], "friends": [ { "id": 0, "name": "Tracy Hopper" }, { "id": 1, "name": "Liza Turner" }, { "id": 2, "name": "Hebert Shaffer" } ], "greeting": "Hello, Mcneil Workman! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a650947d3c28dc6ec", "index": 4340, "guid": "05e415cf-d253-41b9-b13c-6e60ebd953e6", "isActive": true, "balance": "$2,740.84", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Katy Miranda", "gender": "female", "company": "BOILCAT", "email": "katymiranda@boilcat.com", "phone": "+1 (912) 435-3661", "address": "532 Hull Street, Cawood, Pennsylvania, 7536", "about": "Ut amet dolor dolor adipisicing id ex sint id qui deserunt do culpa. Enim proident elit esse do duis ex. Pariatur quis ad velit pariatur. Cupidatat proident Lorem quis proident officia ad laborum officia mollit est mollit sunt ipsum ipsum.\r\n", "registered": "2014-07-22T20:24:28-12:00", "latitude": 70.560855, "longitude": 71.165915, "tags": [ "tempor", "ullamco", "anim", "exercitation", "cupidatat", "labore", "ad" ], "friends": [ { "id": 0, "name": "Flora Cash" }, { "id": 1, "name": "Johnson Randall" }, { "id": 2, "name": "Kim Drake" } ], "greeting": "Hello, Katy Miranda! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a95497c9c3b31361f", "index": 4341, "guid": "9abf73d4-1c3a-4cc7-9e53-38b81639c366", "isActive": false, "balance": "$1,584.40", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Sparks Calderon", "gender": "male", "company": "NEUROCELL", "email": "sparkscalderon@neurocell.com", "phone": "+1 (834) 547-2179", "address": "867 Fairview Place, Churchill, Georgia, 7049", "about": "Excepteur eu excepteur ex nostrud excepteur voluptate. Ex dolor et deserunt esse ex aliqua voluptate esse occaecat elit in non cillum dolore. Consequat velit ipsum aliquip cillum est consectetur velit laborum sit excepteur eiusmod proident consequat aliquip. Exercitation reprehenderit proident ut pariatur eu ex adipisicing cillum. Cupidatat mollit incididunt dolor non exercitation esse Lorem amet non consequat aliqua.\r\n", "registered": "2014-01-11T07:41:51-13:00", "latitude": 21.480103, "longitude": 148.806397, "tags": [ "nulla", "dolore", "dolor", "ipsum", "dolor", "laborum", "proident" ], "friends": [ { "id": 0, "name": "Josefina Mckinney" }, { "id": 1, "name": "Ursula Estrada" }, { "id": 2, "name": "Juanita Weaver" } ], "greeting": "Hello, Sparks Calderon! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a2cad15c7dc99e72e", "index": 4342, "guid": "19031e36-fc2a-4c88-9155-889c318fbbb5", "isActive": false, "balance": "$1,178.82", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Eleanor Welch", "gender": "female", "company": "ENERSOL", "email": "eleanorwelch@enersol.com", "phone": "+1 (952) 494-2842", "address": "581 Newport Street, Loyalhanna, North Dakota, 6848", "about": "Tempor anim labore ullamco elit commodo ut veniam quis. Anim do dolore dolor irure ea ad ullamco nulla. Et eiusmod adipisicing eu velit cupidatat exercitation adipisicing sunt Lorem. Pariatur sunt adipisicing laboris ullamco ad Lorem proident sit commodo voluptate magna ullamco pariatur. Cillum duis sunt magna id minim reprehenderit laborum et esse occaecat cillum excepteur dolore. Consectetur sunt fugiat do dolor sunt. Minim pariatur nulla cupidatat magna aliquip et nostrud ad ut minim laborum.\r\n", "registered": "2014-05-29T09:38:22-12:00", "latitude": -35.303378, "longitude": 55.433404, "tags": [ "cupidatat", "labore", "magna", "sint", "et", "ipsum", "duis" ], "friends": [ { "id": 0, "name": "Rebekah Durham" }, { "id": 1, "name": "Beard Woodward" }, { "id": 2, "name": "Jewell Fowler" } ], "greeting": "Hello, Eleanor Welch! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ae82189acc680d769", "index": 4343, "guid": "55e4343f-f042-4f79-89c6-0732e70b0a2c", "isActive": true, "balance": "$2,097.81", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Lilian Holloway", "gender": "female", "company": "QIAO", "email": "lilianholloway@qiao.com", "phone": "+1 (829) 517-2103", "address": "334 Sullivan Place, Bath, Louisiana, 5608", "about": "Labore reprehenderit deserunt quis eiusmod occaecat sunt incididunt mollit labore voluptate nisi excepteur. Occaecat elit dolore voluptate aliquip do. Sit aute duis esse irure irure proident quis reprehenderit mollit mollit cillum dolor consequat.\r\n", "registered": "2014-06-22T11:20:23-12:00", "latitude": 10.739765, "longitude": 137.629558, "tags": [ "eiusmod", "magna", "ad", "non", "voluptate", "cillum", "duis" ], "friends": [ { "id": 0, "name": "Mcintosh Britt" }, { "id": 1, "name": "Selena Berg" }, { "id": 2, "name": "Delgado Moss" } ], "greeting": "Hello, Lilian Holloway! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aaeea913638977a59", "index": 4344, "guid": "9260df71-cadc-4820-a20d-720d73a2227b", "isActive": false, "balance": "$2,888.36", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Mae Stark", "gender": "female", "company": "QUORDATE", "email": "maestark@quordate.com", "phone": "+1 (903) 412-2912", "address": "909 Village Court, Hackneyville, Northern Mariana Islands, 7581", "about": "Pariatur nostrud consequat mollit non officia eu commodo anim magna enim anim laboris laborum. Ea occaecat mollit reprehenderit excepteur irure minim aliquip qui duis. Veniam in in sint esse aute non. Cillum magna amet commodo elit deserunt cupidatat. Id proident aute consequat labore laboris dolor duis occaecat pariatur elit. Sint veniam sunt do magna excepteur dolore nostrud quis non.\r\n", "registered": "2014-09-11T11:41:21-12:00", "latitude": 40.668013, "longitude": -168.475016, "tags": [ "consequat", "aliquip", "dolor", "est", "sit", "consectetur", "sunt" ], "friends": [ { "id": 0, "name": "Humphrey Mendoza" }, { "id": 1, "name": "Byers Harrison" }, { "id": 2, "name": "Ryan Dickerson" } ], "greeting": "Hello, Mae Stark! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ad985bbc92065a609", "index": 4345, "guid": "dd286406-2646-4eb0-90f0-191deaf2731c", "isActive": true, "balance": "$2,152.91", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Deann Arnold", "gender": "female", "company": "COMTEXT", "email": "deannarnold@comtext.com", "phone": "+1 (830) 446-3183", "address": "790 Glenmore Avenue, Kingstowne, Colorado, 9860", "about": "Laboris anim cupidatat commodo incididunt fugiat ut. Nisi laborum non enim sunt elit amet ad quis in officia. Velit nulla mollit mollit veniam elit ullamco ea et et velit. Duis laborum nostrud deserunt adipisicing pariatur minim pariatur. Ullamco nostrud sint excepteur qui nulla eu aute adipisicing non ex anim eu irure voluptate. Culpa ad fugiat Lorem enim enim tempor sunt tempor occaecat est veniam ut anim. Duis laboris exercitation veniam commodo laboris ipsum consequat fugiat duis ullamco consequat ipsum laborum.\r\n", "registered": "2014-08-22T17:00:17-12:00", "latitude": -33.097237, "longitude": 50.06041, "tags": [ "in", "magna", "sunt", "culpa", "in", "anim", "ea" ], "friends": [ { "id": 0, "name": "Nichole Rodriquez" }, { "id": 1, "name": "Ginger Guy" }, { "id": 2, "name": "Queen Vang" } ], "greeting": "Hello, Deann Arnold! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a05bb0d010f42a6d5", "index": 4346, "guid": "f324a39d-00e7-4ea5-9662-7a73f98e65cd", "isActive": true, "balance": "$3,329.07", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Simmons Lynn", "gender": "male", "company": "ZAPHIRE", "email": "simmonslynn@zaphire.com", "phone": "+1 (988) 453-2265", "address": "710 Oak Street, Sedley, Idaho, 7597", "about": "Nulla officia est laborum Lorem ex enim nisi enim labore dolore commodo enim. Exercitation ex sunt culpa nostrud ullamco nisi ea esse. Occaecat fugiat est do nostrud commodo mollit ea enim pariatur nisi. Laboris amet pariatur proident mollit fugiat sunt. Velit nulla magna labore tempor esse dolore ex minim aute ullamco anim et et. In laborum eiusmod voluptate non ipsum tempor elit proident ea sint enim enim labore.\r\n", "registered": "2014-08-30T15:56:05-12:00", "latitude": -25.230689, "longitude": -108.385877, "tags": [ "reprehenderit", "proident", "nisi", "ipsum", "ipsum", "ullamco", "ut" ], "friends": [ { "id": 0, "name": "Figueroa York" }, { "id": 1, "name": "Baldwin Erickson" }, { "id": 2, "name": "Combs Fields" } ], "greeting": "Hello, Simmons Lynn! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa32ae507f72633d0", "index": 4347, "guid": "d8378729-e2ff-4a07-be15-e06d303b75a2", "isActive": true, "balance": "$3,356.81", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Bailey Aguilar", "gender": "male", "company": "QUAREX", "email": "baileyaguilar@quarex.com", "phone": "+1 (830) 501-2169", "address": "859 Colonial Road, Fingerville, Marshall Islands, 5740", "about": "Sit nulla fugiat sint do nisi aute veniam sunt. Lorem aliquip ipsum veniam adipisicing. Id quis mollit enim consequat officia ad non consequat elit. Velit sit sit proident enim velit nisi excepteur consequat mollit consectetur. Dolore cillum veniam nisi ea et laboris mollit proident adipisicing non duis ut est non. Nisi id sunt ex aute et exercitation Lorem ut quis commodo consectetur incididunt cupidatat. Ad eu labore commodo adipisicing laboris nostrud culpa Lorem aliquip.\r\n", "registered": "2014-04-01T00:29:11-13:00", "latitude": -86.245025, "longitude": -91.19612, "tags": [ "fugiat", "quis", "in", "labore", "pariatur", "excepteur", "ut" ], "friends": [ { "id": 0, "name": "June Gomez" }, { "id": 1, "name": "Edna Stewart" }, { "id": 2, "name": "Suzette Foster" } ], "greeting": "Hello, Bailey Aguilar! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a4d550fdedc03b0b2", "index": 4348, "guid": "35a96bce-8f8e-41e4-9e5a-95639832b0e9", "isActive": true, "balance": "$3,324.73", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Cheri Pacheco", "gender": "female", "company": "VITRICOMP", "email": "cheripacheco@vitricomp.com", "phone": "+1 (848) 439-3733", "address": "896 Norwood Avenue, Santel, New York, 4249", "about": "Enim eiusmod esse Lorem irure ex consectetur aliqua consequat. Anim duis est non veniam esse ut nostrud. Reprehenderit et elit qui aliquip aute voluptate minim quis consectetur nisi.\r\n", "registered": "2014-02-20T08:02:10-13:00", "latitude": 51.895243, "longitude": 54.250208, "tags": [ "aute", "sunt", "amet", "et", "sunt", "consequat", "exercitation" ], "friends": [ { "id": 0, "name": "Coleen Rodgers" }, { "id": 1, "name": "Moreno Meyers" }, { "id": 2, "name": "West Roach" } ], "greeting": "Hello, Cheri Pacheco! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a4ae68ec021cb5574", "index": 4349, "guid": "e2fa9935-91fb-4301-aed7-537a4e613f3f", "isActive": false, "balance": "$3,538.86", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Rivers Gallegos", "gender": "male", "company": "CYTREX", "email": "riversgallegos@cytrex.com", "phone": "+1 (844) 570-3472", "address": "521 Ditmas Avenue, Fannett, Guam, 7250", "about": "Ipsum est eu aute aute duis aliquip sunt minim in et incididunt enim occaecat. Magna ea duis esse irure. Aliquip occaecat occaecat aute irure ullamco cupidatat incididunt laboris sunt. Ut ad aliqua fugiat tempor qui consequat laborum reprehenderit et. Enim exercitation anim dolore dolor cupidatat quis cillum non.\r\n", "registered": "2014-09-10T01:53:59-12:00", "latitude": 34.833985, "longitude": 111.125919, "tags": [ "adipisicing", "duis", "nulla", "qui", "commodo", "sit", "adipisicing" ], "friends": [ { "id": 0, "name": "Margret Stokes" }, { "id": 1, "name": "Huffman Marks" }, { "id": 2, "name": "Orr Woods" } ], "greeting": "Hello, Rivers Gallegos! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2abf22d933ef775e63", "index": 4350, "guid": "f1a75817-1188-4470-b767-95f654d81865", "isActive": false, "balance": "$2,830.99", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Adkins Briggs", "gender": "male", "company": "RODEOCEAN", "email": "adkinsbriggs@rodeocean.com", "phone": "+1 (873) 405-3111", "address": "968 Dinsmore Place, Gloucester, Virgin Islands, 6808", "about": "Cillum consequat reprehenderit culpa eu id ex deserunt. Dolor eu nostrud incididunt esse. Cillum excepteur dolore laborum esse pariatur consequat dolore irure veniam. Fugiat laborum velit est sint dolore. Esse ad esse exercitation culpa enim anim ullamco pariatur consequat Lorem aliquip aliquip in. Officia excepteur minim mollit dolor. Amet incididunt quis enim laboris esse Lorem.\r\n", "registered": "2014-08-16T10:56:01-12:00", "latitude": -22.369892, "longitude": 78.645993, "tags": [ "incididunt", "adipisicing", "et", "ipsum", "elit", "pariatur", "consequat" ], "friends": [ { "id": 0, "name": "Daugherty Serrano" }, { "id": 1, "name": "Kelley Cooper" }, { "id": 2, "name": "Curry Floyd" } ], "greeting": "Hello, Adkins Briggs! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2aee40553f2f6d225b", "index": 4351, "guid": "c114f310-a491-4ab3-9793-74662962e9b3", "isActive": false, "balance": "$2,201.95", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Myrtle Stevenson", "gender": "female", "company": "WARETEL", "email": "myrtlestevenson@waretel.com", "phone": "+1 (964) 583-2831", "address": "578 Jewel Street, Haena, Massachusetts, 7649", "about": "Tempor tempor Lorem ipsum anim deserunt minim qui voluptate voluptate nulla. Consectetur nostrud reprehenderit irure adipisicing consectetur labore Lorem consectetur ut aliqua Lorem. Amet nulla sint labore ea exercitation eiusmod commodo. Quis nisi sint officia id. Proident aliquip consectetur cupidatat excepteur magna irure elit ipsum non magna cupidatat aliqua.\r\n", "registered": "2014-02-22T06:11:21-13:00", "latitude": -81.164336, "longitude": 90.849767, "tags": [ "non", "qui", "sint", "amet", "excepteur", "ut", "fugiat" ], "friends": [ { "id": 0, "name": "Castro Sargent" }, { "id": 1, "name": "Galloway Johnston" }, { "id": 2, "name": "Shelley Valenzuela" } ], "greeting": "Hello, Myrtle Stevenson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ab6dff652c95f807d", "index": 4352, "guid": "8e222b2a-73ac-45c8-a2be-c703cd861f41", "isActive": true, "balance": "$1,139.94", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Cantrell Richards", "gender": "male", "company": "SLOFAST", "email": "cantrellrichards@slofast.com", "phone": "+1 (838) 587-3842", "address": "810 Chester Court, Frizzleburg, Utah, 6360", "about": "Dolore in quis deserunt in nisi Lorem sint. Labore non esse enim aliqua consectetur Lorem elit. Deserunt Lorem pariatur proident proident occaecat. Commodo do commodo cillum fugiat et ullamco. Magna tempor nisi commodo laboris occaecat pariatur. Quis officia qui quis voluptate.\r\n", "registered": "2014-03-03T12:22:38-13:00", "latitude": 66.436741, "longitude": 92.123414, "tags": [ "Lorem", "nostrud", "labore", "mollit", "ut", "occaecat", "Lorem" ], "friends": [ { "id": 0, "name": "Gray Duffy" }, { "id": 1, "name": "Maritza Blanchard" }, { "id": 2, "name": "Hale Craig" } ], "greeting": "Hello, Cantrell Richards! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a266c8f2735fe8cb6", "index": 4353, "guid": "a78f7f15-e685-4819-b39f-0f2faaa324db", "isActive": true, "balance": "$1,608.92", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Conrad Byrd", "gender": "male", "company": "BIFLEX", "email": "conradbyrd@biflex.com", "phone": "+1 (800) 466-3671", "address": "330 Ralph Avenue, Belmont, Montana, 6036", "about": "Aliquip qui quis nostrud nostrud excepteur. Dolore Lorem pariatur occaecat enim in dolor. Nostrud commodo ea aliquip incididunt elit veniam aliqua minim ut labore voluptate cupidatat elit minim. Irure culpa enim et occaecat incididunt exercitation deserunt laborum Lorem pariatur in.\r\n", "registered": "2014-03-30T18:58:11-13:00", "latitude": 28.952233, "longitude": 63.148404, "tags": [ "officia", "non", "veniam", "sint", "pariatur", "minim", "et" ], "friends": [ { "id": 0, "name": "Savage White" }, { "id": 1, "name": "Tessa Hensley" }, { "id": 2, "name": "Carrie Martinez" } ], "greeting": "Hello, Conrad Byrd! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2addace66cd6baec7b", "index": 4354, "guid": "0862723d-1b28-4721-acf5-b7e826b58be2", "isActive": true, "balance": "$2,092.02", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Bridgett Richmond", "gender": "female", "company": "EWEVILLE", "email": "bridgettrichmond@eweville.com", "phone": "+1 (938) 545-2979", "address": "797 Beadel Street, Swartzville, Wisconsin, 9756", "about": "Minim amet in minim deserunt eu culpa reprehenderit. Labore sint aute quis sint est reprehenderit dolore voluptate in ad. Eu consequat proident et amet deserunt ea velit. Consectetur laborum esse amet adipisicing aliquip labore sit. Culpa in eiusmod excepteur in minim ullamco ut non consequat laboris cillum duis. Laborum cillum sint Lorem culpa laboris ex duis elit nulla. Consectetur enim incididunt nisi ea commodo mollit in enim eu enim dolor.\r\n", "registered": "2014-06-28T12:25:42-12:00", "latitude": 15.739109, "longitude": -54.697599, "tags": [ "commodo", "occaecat", "magna", "deserunt", "dolor", "cupidatat", "minim" ], "friends": [ { "id": 0, "name": "Robyn Mcclure" }, { "id": 1, "name": "Steele Peters" }, { "id": 2, "name": "Mildred Lara" } ], "greeting": "Hello, Bridgett Richmond! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a8e9358fe9b5c7bd0", "index": 4355, "guid": "da95c7d8-f8a8-4ab5-ab54-304aa8341465", "isActive": true, "balance": "$2,537.75", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Shaw Cleveland", "gender": "male", "company": "OVERFORK", "email": "shawcleveland@overfork.com", "phone": "+1 (927) 513-2432", "address": "416 Elton Street, Draper, Maine, 4648", "about": "Adipisicing incididunt labore Lorem id officia dolore ex veniam commodo ut cillum labore. Quis dolor Lorem do eu adipisicing ea sunt officia reprehenderit occaecat. Cillum occaecat occaecat culpa tempor ad Lorem. Nulla commodo veniam duis occaecat culpa sit ullamco irure reprehenderit aute.\r\n", "registered": "2014-01-16T18:19:31-13:00", "latitude": -72.432586, "longitude": -45.39547, "tags": [ "elit", "enim", "ipsum", "minim", "commodo", "labore", "esse" ], "friends": [ { "id": 0, "name": "Deirdre Howell" }, { "id": 1, "name": "Baird Nielsen" }, { "id": 2, "name": "Fannie Rhodes" } ], "greeting": "Hello, Shaw Cleveland! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2af62fa6653037303a", "index": 4356, "guid": "676577d8-a6b2-422a-b497-debac5ca7380", "isActive": false, "balance": "$2,496.08", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Shelton Hartman", "gender": "male", "company": "ZAYA", "email": "sheltonhartman@zaya.com", "phone": "+1 (960) 476-2218", "address": "493 Rutledge Street, Loma, Virginia, 5315", "about": "Deserunt ipsum pariatur sit cillum in culpa fugiat ea cupidatat culpa ullamco non. Non mollit velit ex irure. Deserunt ex esse ipsum deserunt est consequat. Et mollit est et fugiat.\r\n", "registered": "2014-07-02T07:03:57-12:00", "latitude": -47.370121, "longitude": 113.892009, "tags": [ "ex", "ex", "sint", "eu", "magna", "ea", "quis" ], "friends": [ { "id": 0, "name": "May Travis" }, { "id": 1, "name": "Massey Wilson" }, { "id": 2, "name": "Hughes Pace" } ], "greeting": "Hello, Shelton Hartman! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a05b88ad19f08e7ee", "index": 4357, "guid": "beeae983-3b4e-436a-8700-9efe2a2e901a", "isActive": false, "balance": "$1,526.79", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Rhonda Sparks", "gender": "female", "company": "STUCCO", "email": "rhondasparks@stucco.com", "phone": "+1 (839) 424-3849", "address": "100 Liberty Avenue, Garnet, Kentucky, 2546", "about": "Ad pariatur exercitation exercitation laborum cillum dolor laborum non adipisicing. Laboris cillum id occaecat fugiat sint et. Aliquip reprehenderit cupidatat anim cillum duis duis velit deserunt eu deserunt laborum amet quis. Proident et consequat Lorem elit eu.\r\n", "registered": "2014-03-07T02:55:23-13:00", "latitude": 65.086574, "longitude": 128.581014, "tags": [ "consequat", "cillum", "elit", "culpa", "est", "nostrud", "consequat" ], "friends": [ { "id": 0, "name": "Irma Patterson" }, { "id": 1, "name": "Cherry Wood" }, { "id": 2, "name": "Oneal Rodriguez" } ], "greeting": "Hello, Rhonda Sparks! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a9220f5ffef5603c3", "index": 4358, "guid": "7afef965-e7e7-4458-86ab-cc38660d263e", "isActive": true, "balance": "$3,944.15", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Angelica Bates", "gender": "female", "company": "GINK", "email": "angelicabates@gink.com", "phone": "+1 (971) 515-3295", "address": "379 Bristol Street, Walland, Connecticut, 2243", "about": "Tempor incididunt cupidatat nisi nostrud. Elit dolor et anim ea et ut nisi et amet. Nostrud aute veniam ea consectetur consequat dolor enim et ipsum voluptate magna et velit ad. Labore mollit dolore minim cupidatat ea irure enim ad eu voluptate qui consequat laborum. Quis laboris officia commodo occaecat consequat quis eiusmod Lorem enim.\r\n", "registered": "2014-07-24T21:32:22-12:00", "latitude": 25.998785, "longitude": 101.818275, "tags": [ "nisi", "qui", "esse", "reprehenderit", "consectetur", "excepteur", "labore" ], "friends": [ { "id": 0, "name": "Leola Shepard" }, { "id": 1, "name": "Stacie Mercado" }, { "id": 2, "name": "Torres Fitzpatrick" } ], "greeting": "Hello, Angelica Bates! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a75375e4a45ce3adc", "index": 4359, "guid": "8ac62a7c-ab89-46f2-a09f-dd7101350b60", "isActive": true, "balance": "$1,911.15", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Alta Hart", "gender": "female", "company": "BIOSPAN", "email": "altahart@biospan.com", "phone": "+1 (898) 441-3541", "address": "946 Gallatin Place, Wheatfields, Mississippi, 1376", "about": "Pariatur sunt voluptate dolore est ipsum magna dolore. Incididunt esse aliqua aliquip voluptate veniam elit sit aute. Sint nisi do ad enim. Tempor ullamco commodo dolore sunt ad non sit minim sint nulla.\r\n", "registered": "2014-01-13T03:17:51-13:00", "latitude": 40.676729, "longitude": 41.461098, "tags": [ "voluptate", "officia", "minim", "labore", "consectetur", "esse", "cillum" ], "friends": [ { "id": 0, "name": "Jensen Poole" }, { "id": 1, "name": "Hutchinson Franks" }, { "id": 2, "name": "Stevens Watson" } ], "greeting": "Hello, Alta Hart! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2adcb79e5206c43604", "index": 4360, "guid": "e7b95a56-02af-4935-983f-f2b58f70593a", "isActive": true, "balance": "$1,785.77", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Vega Shaw", "gender": "male", "company": "LIQUIDOC", "email": "vegashaw@liquidoc.com", "phone": "+1 (867) 454-3663", "address": "372 Veronica Place, Avoca, Washington, 6582", "about": "Et nisi nisi et nostrud laborum est proident id dolore. Proident nisi laborum dolore amet laboris qui laborum deserunt. Aute sunt reprehenderit esse consectetur nisi officia veniam magna ea sunt aliqua commodo ex. Ea adipisicing reprehenderit aute magna laborum deserunt. Exercitation minim mollit minim excepteur est ipsum pariatur aliquip mollit. Dolore labore enim irure quis aute amet ipsum sunt sunt. Non ullamco adipisicing reprehenderit amet magna nulla excepteur nostrud.\r\n", "registered": "2014-03-15T17:24:19-13:00", "latitude": 19.777337, "longitude": -140.719965, "tags": [ "officia", "duis", "occaecat", "labore", "cillum", "enim", "deserunt" ], "friends": [ { "id": 0, "name": "Kennedy Smith" }, { "id": 1, "name": "Sue Bell" }, { "id": 2, "name": "Sanchez Simon" } ], "greeting": "Hello, Vega Shaw! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa0b2f8d3e03c9f30", "index": 4361, "guid": "c3f1acd1-c27c-4319-8b31-4b22f8388521", "isActive": false, "balance": "$3,769.77", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Duncan Orr", "gender": "male", "company": "EPLODE", "email": "duncanorr@eplode.com", "phone": "+1 (824) 578-3288", "address": "314 Bridge Street, Cresaptown, Tennessee, 4618", "about": "Et irure ut ut tempor quis. In excepteur ut sint deserunt sint. Dolore reprehenderit non proident mollit. Occaecat occaecat et commodo qui laboris consectetur velit ut. Pariatur laboris laborum nisi sunt ullamco aute aute est occaecat. Adipisicing voluptate Lorem ut cillum excepteur non ex aute. Duis ullamco commodo veniam quis ex eiusmod adipisicing aute mollit cillum consequat.\r\n", "registered": "2014-06-21T13:27:23-12:00", "latitude": 58.19521, "longitude": -36.047105, "tags": [ "qui", "quis", "eiusmod", "ad", "qui", "duis", "Lorem" ], "friends": [ { "id": 0, "name": "Allie Page" }, { "id": 1, "name": "England Greene" }, { "id": 2, "name": "Twila Flowers" } ], "greeting": "Hello, Duncan Orr! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a254f459c85a090a9", "index": 4362, "guid": "384325ec-d899-46cb-b20c-a770242a7eb1", "isActive": false, "balance": "$3,697.26", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Jaclyn Spencer", "gender": "female", "company": "LYRICHORD", "email": "jaclynspencer@lyrichord.com", "phone": "+1 (936) 568-2590", "address": "319 Losee Terrace, Goodville, Alabama, 7093", "about": "Consectetur id nulla mollit laborum officia Lorem excepteur qui est ut ex amet. Elit dolor proident id incididunt incididunt sint dolor eu qui. Nisi id laboris labore esse cillum ullamco esse ut laborum id esse culpa aliqua minim. Pariatur voluptate aute id sunt qui. Consectetur adipisicing commodo Lorem eu anim in mollit dolore aliquip labore commodo. Laborum aliqua sint adipisicing id consequat cupidatat culpa incididunt exercitation sit. Laborum voluptate ipsum reprehenderit ea velit eiusmod consequat mollit labore excepteur labore in laboris.\r\n", "registered": "2014-03-24T16:27:53-13:00", "latitude": 49.775735, "longitude": -24.254812, "tags": [ "ex", "enim", "quis", "proident", "enim", "ullamco", "nulla" ], "friends": [ { "id": 0, "name": "Jessica Booker" }, { "id": 1, "name": "Cobb Vinson" }, { "id": 2, "name": "Eugenia Craft" } ], "greeting": "Hello, Jaclyn Spencer! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ae12317eaebc29551", "index": 4363, "guid": "264717a0-8b3d-4109-b65a-de8c678d10a5", "isActive": false, "balance": "$2,515.84", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Aileen Frazier", "gender": "female", "company": "SNIPS", "email": "aileenfrazier@snips.com", "phone": "+1 (979) 457-2895", "address": "985 Frank Court, Levant, Ohio, 1669", "about": "Esse eu dolore nulla occaecat reprehenderit dolore. Minim duis proident do voluptate deserunt. Aliquip amet minim magna aliquip aliquip Lorem enim ipsum duis exercitation ipsum. Anim minim quis laboris fugiat dolore occaecat fugiat culpa nostrud eu incididunt eu fugiat nulla.\r\n", "registered": "2014-09-03T03:54:47-12:00", "latitude": -84.776665, "longitude": -71.467564, "tags": [ "nulla", "laboris", "enim", "voluptate", "sit", "duis", "occaecat" ], "friends": [ { "id": 0, "name": "Gabriela Guerrero" }, { "id": 1, "name": "Donna Francis" }, { "id": 2, "name": "Sally Wiley" } ], "greeting": "Hello, Aileen Frazier! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ae5505b004445274d", "index": 4364, "guid": "0a956c9e-0fa1-4752-8d4d-0f9fe0029a61", "isActive": true, "balance": "$2,026.01", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Dianna Kelly", "gender": "female", "company": "FARMEX", "email": "diannakelly@farmex.com", "phone": "+1 (994) 581-3813", "address": "579 Conway Street, Blairstown, Hawaii, 6219", "about": "Esse officia commodo reprehenderit mollit culpa laboris amet. Labore Lorem sit eu ut excepteur Lorem veniam id tempor velit dolore elit ut. Aute voluptate qui cupidatat aliqua id ea. Amet reprehenderit elit nulla magna quis.\r\n", "registered": "2014-02-13T21:59:31-13:00", "latitude": -8.358436, "longitude": 110.258801, "tags": [ "culpa", "officia", "laboris", "officia", "voluptate", "veniam", "ut" ], "friends": [ { "id": 0, "name": "Long Klein" }, { "id": 1, "name": "Pat Mcbride" }, { "id": 2, "name": "Alford Carey" } ], "greeting": "Hello, Dianna Kelly! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ad0739a11aba8938b", "index": 4365, "guid": "03404968-afb0-4fa4-93c7-cddbd02ddf24", "isActive": true, "balance": "$2,179.29", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Grant Fry", "gender": "male", "company": "OZEAN", "email": "grantfry@ozean.com", "phone": "+1 (946) 543-2509", "address": "896 Columbus Place, Brazos, New Mexico, 6277", "about": "Aliqua dolor eiusmod laboris Lorem nulla occaecat esse eiusmod ad deserunt cupidatat consectetur amet exercitation. Minim eu consectetur ex consequat exercitation consequat esse sit culpa. Amet dolore est exercitation deserunt ea Lorem incididunt amet. Et officia fugiat est cupidatat et commodo ea.\r\n", "registered": "2014-09-12T00:32:56-12:00", "latitude": -15.362626, "longitude": -170.640615, "tags": [ "velit", "ipsum", "aliqua", "ea", "minim", "irure", "sunt" ], "friends": [ { "id": 0, "name": "Ina Beasley" }, { "id": 1, "name": "Kathy Gaines" }, { "id": 2, "name": "Leta Warner" } ], "greeting": "Hello, Grant Fry! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a88c3652889d22776", "index": 4366, "guid": "24305ebf-cf35-42b7-b020-b17e9cc75564", "isActive": false, "balance": "$2,939.35", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Abby Henry", "gender": "female", "company": "MEDIOT", "email": "abbyhenry@mediot.com", "phone": "+1 (839) 539-3756", "address": "625 Broome Street, Faywood, Maryland, 3786", "about": "Occaecat esse aute nisi incididunt tempor excepteur excepteur incididunt. Ex laborum elit quis ullamco esse quis eu Lorem ipsum cupidatat enim ea. Tempor do dolore fugiat adipisicing proident minim magna dolore fugiat enim enim. Tempor quis excepteur ut sit tempor aliquip Lorem.\r\n", "registered": "2014-08-25T08:43:42-12:00", "latitude": 80.58309, "longitude": -122.005821, "tags": [ "qui", "culpa", "amet", "quis", "irure", "nisi", "id" ], "friends": [ { "id": 0, "name": "Lolita Clark" }, { "id": 1, "name": "Griffin Baird" }, { "id": 2, "name": "Elba Noel" } ], "greeting": "Hello, Abby Henry! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a59a7fc2b89e1e006", "index": 4367, "guid": "03555fd3-3c2b-40eb-9555-1e4e5b1e9256", "isActive": true, "balance": "$3,060.04", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Rosales Dunlap", "gender": "male", "company": "GEEKETRON", "email": "rosalesdunlap@geeketron.com", "phone": "+1 (988) 598-2891", "address": "938 Vanderbilt Avenue, Crisman, Alaska, 2317", "about": "Nisi ut nostrud aliqua non sint minim excepteur voluptate reprehenderit ex officia magna ipsum. Est id deserunt consequat aute proident mollit veniam anim. Commodo occaecat ipsum ipsum occaecat officia est nulla esse Lorem sit voluptate officia incididunt non. Voluptate consectetur officia id ex tempor commodo sunt velit laborum proident pariatur commodo voluptate. Quis do adipisicing sunt incididunt commodo et laboris.\r\n", "registered": "2014-06-11T18:39:06-12:00", "latitude": -65.089435, "longitude": 116.402198, "tags": [ "qui", "consequat", "officia", "sunt", "ad", "exercitation", "proident" ], "friends": [ { "id": 0, "name": "Mckenzie Kramer" }, { "id": 1, "name": "Hopper Hubbard" }, { "id": 2, "name": "Webster Petersen" } ], "greeting": "Hello, Rosales Dunlap! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a569fd2f9f5ef7438", "index": 4368, "guid": "65e24012-b6ed-4d04-bfe2-95502ea96c31", "isActive": false, "balance": "$1,998.03", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Maryann Ford", "gender": "female", "company": "UBERLUX", "email": "maryannford@uberlux.com", "phone": "+1 (894) 500-2857", "address": "207 Gold Street, Whipholt, Arizona, 3648", "about": "Dolore commodo velit proident veniam magna amet aute aliquip do commodo sit occaecat. Ullamco ea magna laborum fugiat ea proident pariatur. Consequat magna nostrud dolor reprehenderit nostrud laboris velit. Amet excepteur aliqua excepteur elit laboris et. Minim ex eiusmod aliquip elit ut reprehenderit dolore eiusmod non ullamco. Exercitation commodo sunt est ad in non dolore reprehenderit eu consequat sunt ex. Non amet velit deserunt sint.\r\n", "registered": "2014-05-09T04:58:29-12:00", "latitude": 10.060083, "longitude": 67.51233, "tags": [ "et", "pariatur", "commodo", "do", "ut", "officia", "non" ], "friends": [ { "id": 0, "name": "Elsie Buck" }, { "id": 1, "name": "Terri Harrington" }, { "id": 2, "name": "Norton Johns" } ], "greeting": "Hello, Maryann Ford! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a8aebcb6072de198c", "index": 4369, "guid": "829b89bd-fd16-46a5-b27a-83ecc6f7ec0c", "isActive": false, "balance": "$2,518.64", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Miles Montoya", "gender": "male", "company": "ULTRASURE", "email": "milesmontoya@ultrasure.com", "phone": "+1 (962) 446-3935", "address": "884 Cass Place, Ahwahnee, Federated States Of Micronesia, 1391", "about": "Eu aute laboris cillum amet Lorem. Ea anim incididunt reprehenderit ea laboris eiusmod ipsum ipsum laboris velit exercitation dolor. Velit aliquip dolore mollit dolore incididunt cillum minim Lorem. Adipisicing laboris adipisicing officia eiusmod ex veniam consequat proident culpa cillum. Tempor nulla et eiusmod velit officia Lorem ea magna proident pariatur minim fugiat consectetur nulla.\r\n", "registered": "2014-01-16T03:48:34-13:00", "latitude": 40.564182, "longitude": -112.84012, "tags": [ "aute", "veniam", "eu", "Lorem", "ex", "et", "minim" ], "friends": [ { "id": 0, "name": "Janell Berger" }, { "id": 1, "name": "Dillard Osborne" }, { "id": 2, "name": "Newton Mathis" } ], "greeting": "Hello, Miles Montoya! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aac6be034b1f554c7", "index": 4370, "guid": "065dceab-55b5-498b-934f-4fb126b95065", "isActive": true, "balance": "$1,724.95", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Dyer Melton", "gender": "male", "company": "COMVERGES", "email": "dyermelton@comverges.com", "phone": "+1 (945) 582-3005", "address": "592 Joval Court, Rodman, Oklahoma, 1951", "about": "Ea aute Lorem in laboris do. Consectetur pariatur excepteur nulla elit cupidatat voluptate eiusmod quis eiusmod dolor veniam eu exercitation. Occaecat ut consectetur pariatur quis nulla pariatur cillum adipisicing aliquip consectetur velit. Laboris do dolore culpa cupidatat eiusmod. Exercitation officia et enim aliquip ea adipisicing. Tempor aliqua velit eiusmod officia laborum nisi tempor id deserunt est duis.\r\n", "registered": "2014-05-26T18:56:54-12:00", "latitude": 27.297459, "longitude": 37.613122, "tags": [ "pariatur", "enim", "mollit", "do", "pariatur", "sunt", "nostrud" ], "friends": [ { "id": 0, "name": "Austin Eaton" }, { "id": 1, "name": "Tami Mays" }, { "id": 2, "name": "Reed Gill" } ], "greeting": "Hello, Dyer Melton! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a679aa76739354371", "index": 4371, "guid": "0368ec8a-20ca-4b85-9533-61008d466bea", "isActive": true, "balance": "$2,313.21", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Raquel Wheeler", "gender": "female", "company": "JUMPSTACK", "email": "raquelwheeler@jumpstack.com", "phone": "+1 (999) 491-2839", "address": "744 Coffey Street, Washington, Michigan, 3749", "about": "Esse ut consectetur culpa elit ea. Non tempor elit aliqua minim id laboris tempor nostrud. Dolor eu dolor incididunt reprehenderit qui deserunt qui nulla non deserunt ex ex laborum fugiat.\r\n", "registered": "2014-01-20T19:45:43-13:00", "latitude": -35.669272, "longitude": -23.246319, "tags": [ "laborum", "eiusmod", "excepteur", "tempor", "ullamco", "commodo", "ipsum" ], "friends": [ { "id": 0, "name": "Guy Carr" }, { "id": 1, "name": "Koch Wolfe" }, { "id": 2, "name": "Sylvia Huber" } ], "greeting": "Hello, Raquel Wheeler! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a6e2556ac72c332dc", "index": 4372, "guid": "6a39a952-df04-42fd-a6e2-1293dedea879", "isActive": false, "balance": "$3,187.61", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Alison Pierce", "gender": "female", "company": "JAMNATION", "email": "alisonpierce@jamnation.com", "phone": "+1 (979) 501-3819", "address": "181 Fane Court, Hobucken, Kansas, 9874", "about": "Mollit labore proident veniam ea do duis aute consequat id cupidatat. Irure non deserunt sit occaecat reprehenderit laboris. Lorem eiusmod voluptate eu aliquip incididunt proident minim aute. Enim exercitation proident tempor sint sunt.\r\n", "registered": "2014-06-06T13:59:24-12:00", "latitude": -80.543251, "longitude": -124.235497, "tags": [ "esse", "fugiat", "eu", "in", "nisi", "veniam", "ex" ], "friends": [ { "id": 0, "name": "Jillian Merritt" }, { "id": 1, "name": "Green Aguirre" }, { "id": 2, "name": "Sherrie Luna" } ], "greeting": "Hello, Alison Pierce! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ae43f19608f2067e5", "index": 4373, "guid": "c0d733d3-a6ed-4385-be96-adeaac3ef431", "isActive": true, "balance": "$3,025.18", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Melton Bowen", "gender": "male", "company": "ZILLA", "email": "meltonbowen@zilla.com", "phone": "+1 (994) 432-3630", "address": "652 Atkins Avenue, Nicut, South Dakota, 4317", "about": "Pariatur aliquip anim consequat proident adipisicing sint eiusmod ea. Ea culpa elit culpa pariatur veniam ad et proident. Ut aute ad nostrud qui nulla eu officia eiusmod proident aliqua voluptate laborum pariatur. Dolor pariatur laboris minim tempor reprehenderit proident in. Ullamco veniam nostrud non labore elit culpa dolor eiusmod duis ad. Reprehenderit voluptate ut ad adipisicing eu cillum in consequat laborum culpa dolor ex ex.\r\n", "registered": "2014-05-08T00:21:22-12:00", "latitude": -7.185147, "longitude": 162.476731, "tags": [ "et", "consequat", "ullamco", "nulla", "tempor", "enim", "sint" ], "friends": [ { "id": 0, "name": "Randall Mueller" }, { "id": 1, "name": "Kerr Duncan" }, { "id": 2, "name": "Reynolds Burt" } ], "greeting": "Hello, Melton Bowen! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2af4ed6a43748421aa", "index": 4374, "guid": "60628367-1e63-4cb4-89b3-23c683153a86", "isActive": true, "balance": "$3,828.52", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Townsend Saunders", "gender": "male", "company": "EARTHMARK", "email": "townsendsaunders@earthmark.com", "phone": "+1 (940) 400-3348", "address": "287 Meeker Avenue, Salix, West Virginia, 2190", "about": "Ex dolore esse irure ut ea non dolor amet nostrud laborum ipsum eiusmod. Est non et ad pariatur pariatur in quis aliqua. Ut elit sit eiusmod cupidatat. Est consequat nisi officia excepteur ea quis exercitation. Consequat dolore ipsum ea aute proident quis nostrud aliqua incididunt cillum anim veniam mollit excepteur.\r\n", "registered": "2014-04-19T21:45:01-12:00", "latitude": 82.056702, "longitude": -8.305987, "tags": [ "tempor", "sint", "laborum", "labore", "laborum", "ad", "elit" ], "friends": [ { "id": 0, "name": "Naomi Caldwell" }, { "id": 1, "name": "Pace House" }, { "id": 2, "name": "Sosa Dudley" } ], "greeting": "Hello, Townsend Saunders! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ac8ec079e473e9f69", "index": 4375, "guid": "50b4ee73-8788-4885-ac57-8550706b4d7f", "isActive": false, "balance": "$3,481.77", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Esther Wynn", "gender": "female", "company": "IMAGINART", "email": "estherwynn@imaginart.com", "phone": "+1 (856) 427-3577", "address": "586 Johnson Avenue, Morningside, Texas, 4265", "about": "Incididunt in do labore proident proident consectetur aliquip voluptate dolor dolor ullamco excepteur. Anim elit cupidatat elit labore fugiat fugiat Lorem duis et dolore ipsum. Laborum occaecat minim ut quis qui minim laboris amet enim. Adipisicing laborum minim laboris aute laboris nostrud occaecat sunt. Tempor duis officia ullamco esse esse cupidatat laborum deserunt adipisicing minim commodo culpa enim. Magna aute eiusmod laboris incididunt.\r\n", "registered": "2014-01-28T17:45:55-13:00", "latitude": 64.493411, "longitude": 33.112857, "tags": [ "id", "irure", "elit", "incididunt", "proident", "do", "minim" ], "friends": [ { "id": 0, "name": "Chavez Wilkinson" }, { "id": 1, "name": "Gates Bailey" }, { "id": 2, "name": "Maxwell Barry" } ], "greeting": "Hello, Esther Wynn! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ac4200655f8aef71b", "index": 4376, "guid": "8ba60dfc-a62b-414f-bffc-341f03f75771", "isActive": false, "balance": "$2,463.39", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Jocelyn Atkins", "gender": "female", "company": "EXOBLUE", "email": "jocelynatkins@exoblue.com", "phone": "+1 (934) 508-3296", "address": "257 Flatlands Avenue, Ernstville, Oregon, 2309", "about": "Proident exercitation irure sunt anim incididunt. Officia laborum pariatur labore do pariatur incididunt irure sit Lorem est sit nulla fugiat veniam. Commodo occaecat tempor do ex veniam dolore magna id minim non duis. Non et minim excepteur id culpa commodo tempor consectetur. Ullamco aliqua nulla aliquip qui sit officia consectetur laboris cillum Lorem aliqua pariatur. Excepteur laboris eu cupidatat laborum amet ea ut eu Lorem. Irure elit voluptate anim pariatur sit irure et occaecat anim minim enim excepteur quis.\r\n", "registered": "2014-03-02T21:13:44-13:00", "latitude": -30.713861, "longitude": -8.366939, "tags": [ "mollit", "excepteur", "exercitation", "proident", "est", "tempor", "ea" ], "friends": [ { "id": 0, "name": "Calhoun Donaldson" }, { "id": 1, "name": "David Hutchinson" }, { "id": 2, "name": "Fisher Decker" } ], "greeting": "Hello, Jocelyn Atkins! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a2ce2c08e715ba1d3", "index": 4377, "guid": "b4db3cdb-e68d-44c1-8e71-3fc79307eef7", "isActive": false, "balance": "$1,532.26", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Randolph Cochran", "gender": "male", "company": "PLUTORQUE", "email": "randolphcochran@plutorque.com", "phone": "+1 (926) 411-3741", "address": "821 Stuyvesant Avenue, Unionville, Nevada, 5373", "about": "Incididunt deserunt cillum anim aliquip irure ex excepteur. Proident ad sunt tempor aliquip adipisicing dolore eiusmod aliqua fugiat ea magna ipsum officia sit. Reprehenderit ex deserunt aliquip dolor reprehenderit consequat. Tempor quis reprehenderit incididunt et officia nisi et mollit. Ea qui consectetur occaecat minim enim nostrud labore.\r\n", "registered": "2014-02-13T02:20:21-13:00", "latitude": -79.348434, "longitude": -63.31278, "tags": [ "proident", "est", "commodo", "duis", "Lorem", "irure", "enim" ], "friends": [ { "id": 0, "name": "Watts Mckay" }, { "id": 1, "name": "Neva Simpson" }, { "id": 2, "name": "Hensley Everett" } ], "greeting": "Hello, Randolph Cochran! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ae01a5fd727527e98", "index": 4378, "guid": "db11a23f-be1b-40f1-bba5-f2998bf5e841", "isActive": false, "balance": "$2,788.50", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Sybil Delgado", "gender": "female", "company": "SOLAREN", "email": "sybildelgado@solaren.com", "phone": "+1 (842) 441-3393", "address": "975 Church Lane, Healy, Minnesota, 2890", "about": "Duis elit aliqua pariatur id laborum labore. Amet sit enim adipisicing cupidatat esse labore minim. Ad excepteur dolor id ullamco nisi magna in. Do proident veniam irure anim magna quis. Enim aliquip ut reprehenderit exercitation fugiat irure ut id dolor aliqua labore.\r\n", "registered": "2014-06-11T11:01:01-12:00", "latitude": -20.152625, "longitude": 57.62206, "tags": [ "culpa", "qui", "eiusmod", "velit", "laborum", "minim", "minim" ], "friends": [ { "id": 0, "name": "Hamilton Mcgowan" }, { "id": 1, "name": "Liz Fleming" }, { "id": 2, "name": "Ashley Burton" } ], "greeting": "Hello, Sybil Delgado! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a1bd316fca01e19c4", "index": 4379, "guid": "f653c8cb-6015-44ad-b372-44ab19efc184", "isActive": true, "balance": "$2,296.32", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Harris Graves", "gender": "male", "company": "SCHOOLIO", "email": "harrisgraves@schoolio.com", "phone": "+1 (964) 460-2939", "address": "856 Russell Street, Osage, Missouri, 7327", "about": "Ex ipsum Lorem anim duis ex sit ea reprehenderit dolore cillum. Cupidatat dolor irure eu minim aute est sint veniam fugiat quis. Et elit voluptate id quis proident tempor laboris Lorem voluptate ut aliqua.\r\n", "registered": "2014-02-16T11:47:05-13:00", "latitude": -39.19143, "longitude": 83.668905, "tags": [ "enim", "in", "ex", "consequat", "incididunt", "nostrud", "esse" ], "friends": [ { "id": 0, "name": "Langley Potts" }, { "id": 1, "name": "Liliana Holland" }, { "id": 2, "name": "Barton Hewitt" } ], "greeting": "Hello, Harris Graves! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2afc030e622473b188", "index": 4380, "guid": "67d7fdf8-6ae7-46e0-af6b-3f7bd94a69da", "isActive": true, "balance": "$1,441.48", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Kate Porter", "gender": "female", "company": "ZORK", "email": "kateporter@zork.com", "phone": "+1 (836) 481-2839", "address": "541 Raleigh Place, Shindler, Rhode Island, 1780", "about": "Dolore excepteur ipsum cillum aliquip eu laborum. Sunt ea ad exercitation ea. Eiusmod nostrud officia culpa occaecat quis id ex adipisicing laborum pariatur commodo. Ullamco aliquip nostrud non anim ut magna eu. Duis labore exercitation elit minim enim aliqua proident et nulla dolor do.\r\n", "registered": "2014-06-29T23:42:13-12:00", "latitude": 2.866733, "longitude": 0.793598, "tags": [ "proident", "mollit", "magna", "labore", "id", "nostrud", "do" ], "friends": [ { "id": 0, "name": "Faith Callahan" }, { "id": 1, "name": "Pittman Christensen" }, { "id": 2, "name": "Pansy Salazar" } ], "greeting": "Hello, Kate Porter! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a4011379f96a3bcc0", "index": 4381, "guid": "f940c7ac-c110-42c0-bd8a-1a7e5b6eec4e", "isActive": true, "balance": "$1,140.38", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Hahn Emerson", "gender": "male", "company": "FOSSIEL", "email": "hahnemerson@fossiel.com", "phone": "+1 (825) 599-3945", "address": "497 Martense Street, Nile, Florida, 4391", "about": "Incididunt sit anim sunt labore amet pariatur. Cupidatat quis do esse enim minim velit velit ut ex eiusmod magna voluptate. Dolore dolore elit incididunt eu.\r\n", "registered": "2014-04-07T10:22:58-12:00", "latitude": -89.037173, "longitude": 68.255765, "tags": [ "sunt", "quis", "nulla", "in", "veniam", "excepteur", "do" ], "friends": [ { "id": 0, "name": "Chelsea Velasquez" }, { "id": 1, "name": "Lyons Chapman" }, { "id": 2, "name": "Lynn Jennings" } ], "greeting": "Hello, Hahn Emerson! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ac29e0785bfe657c6", "index": 4382, "guid": "ca9016fb-f8be-4e91-9842-b062047d47bf", "isActive": false, "balance": "$2,842.30", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Gilda Logan", "gender": "female", "company": "KEGULAR", "email": "gildalogan@kegular.com", "phone": "+1 (874) 536-2679", "address": "473 Blake Court, Epworth, North Carolina, 6936", "about": "Fugiat eu reprehenderit anim consequat elit aliqua ut. Pariatur Lorem deserunt culpa eu mollit eiusmod cillum. Elit consequat laboris in ut cupidatat aute quis voluptate ut sunt.\r\n", "registered": "2014-08-26T07:11:12-12:00", "latitude": -11.61929, "longitude": -163.670224, "tags": [ "pariatur", "quis", "anim", "cillum", "proident", "incididunt", "deserunt" ], "friends": [ { "id": 0, "name": "Susana Sloan" }, { "id": 1, "name": "Lara Lamb" }, { "id": 2, "name": "Witt Jensen" } ], "greeting": "Hello, Gilda Logan! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2adddf287dded6a136", "index": 4383, "guid": "adefe282-28c8-4969-b67e-bb5d3ef93192", "isActive": true, "balance": "$1,128.45", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Mercado Carrillo", "gender": "male", "company": "ACUMENTOR", "email": "mercadocarrillo@acumentor.com", "phone": "+1 (931) 489-2934", "address": "575 Morton Street, Loveland, New Hampshire, 4889", "about": "Deserunt duis incididunt ipsum ad. Lorem irure aliqua reprehenderit ea esse pariatur. Duis minim sint mollit ex excepteur. Cillum irure qui esse tempor quis velit labore ut. Qui cupidatat ullamco proident excepteur et ea.\r\n", "registered": "2014-09-10T06:34:24-12:00", "latitude": 83.683671, "longitude": 169.170087, "tags": [ "ex", "dolor", "aliqua", "magna", "id", "Lorem", "adipisicing" ], "friends": [ { "id": 0, "name": "Freida Mccarthy" }, { "id": 1, "name": "Luna Salas" }, { "id": 2, "name": "Madge Castillo" } ], "greeting": "Hello, Mercado Carrillo! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a692185d81464635a", "index": 4384, "guid": "544bdcc0-09c0-48ff-9397-d04bd43bc890", "isActive": true, "balance": "$1,814.10", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Malinda Tanner", "gender": "female", "company": "QUILK", "email": "malindatanner@quilk.com", "phone": "+1 (908) 408-3668", "address": "804 Dennett Place, Thornport, Arkansas, 1354", "about": "Sit officia eiusmod velit qui non fugiat. Veniam consequat proident dolor anim nostrud. Dolor nulla fugiat reprehenderit quis aliqua deserunt minim non eu ad aliqua cillum quis. Reprehenderit ea eiusmod sint id aute velit cupidatat.\r\n", "registered": "2014-03-19T09:27:03-13:00", "latitude": 54.665642, "longitude": -175.552773, "tags": [ "proident", "ut", "ea", "ad", "deserunt", "tempor", "do" ], "friends": [ { "id": 0, "name": "Alana Chase" }, { "id": 1, "name": "Ramona Suarez" }, { "id": 2, "name": "Chen Leonard" } ], "greeting": "Hello, Malinda Tanner! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a7b691bd78aa9156f", "index": 4385, "guid": "a9bfdba0-0da3-4484-9b95-f867b2657c1e", "isActive": true, "balance": "$2,804.55", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Darla Castro", "gender": "female", "company": "ZEDALIS", "email": "darlacastro@zedalis.com", "phone": "+1 (891) 485-3774", "address": "719 Graham Avenue, Manila, Iowa, 7340", "about": "Commodo magna consectetur labore elit commodo labore ea in eu occaecat officia fugiat. Elit fugiat magna culpa enim ullamco voluptate tempor aliquip laborum irure nulla. Cillum et irure ea et excepteur nostrud exercitation sit sunt anim eiusmod cillum. Minim duis incididunt magna anim adipisicing ullamco laboris laboris et cupidatat sint. Qui officia ex eu consequat ad anim duis. In reprehenderit aliqua dolor adipisicing consequat qui elit voluptate amet duis officia. Qui qui duis adipisicing veniam elit aute eu ut nulla eiusmod.\r\n", "registered": "2014-06-03T22:49:06-12:00", "latitude": 78.277462, "longitude": 130.524151, "tags": [ "sunt", "consectetur", "incididunt", "esse", "do", "incididunt", "duis" ], "friends": [ { "id": 0, "name": "Chris Burks" }, { "id": 1, "name": "Bernard Perry" }, { "id": 2, "name": "Barnes Hansen" } ], "greeting": "Hello, Darla Castro! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a13260ed0112afcc2", "index": 4386, "guid": "cf0520d9-575e-41c4-a5e7-892f5c28bee1", "isActive": false, "balance": "$3,360.34", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Nona Avery", "gender": "female", "company": "COMTRACT", "email": "nonaavery@comtract.com", "phone": "+1 (914) 503-2791", "address": "583 Broadway , Dola, Nebraska, 8747", "about": "Ea enim sit culpa do ex sit qui reprehenderit non in. Eiusmod qui excepteur culpa proident dolore elit dolore enim labore dolore laboris minim ullamco adipisicing. Do nostrud voluptate dolore aliquip laboris occaecat eu.\r\n", "registered": "2014-02-17T17:23:23-13:00", "latitude": -63.079001, "longitude": 108.960717, "tags": [ "ad", "consectetur", "aute", "sint", "excepteur", "dolore", "eiusmod" ], "friends": [ { "id": 0, "name": "Glass Holman" }, { "id": 1, "name": "Wynn Boyle" }, { "id": 2, "name": "Whitney Bauer" } ], "greeting": "Hello, Nona Avery! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ab4debe3b75af332c", "index": 4387, "guid": "cd8c39ad-3d73-4816-9519-11d30913fc01", "isActive": false, "balance": "$3,995.05", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Cindy Avila", "gender": "female", "company": "VERBUS", "email": "cindyavila@verbus.com", "phone": "+1 (886) 419-2318", "address": "953 Woodruff Avenue, Mulino, District Of Columbia, 2998", "about": "Deserunt aute eiusmod dolore culpa. Consequat ullamco eu dolor sint nisi ut dolor ipsum consectetur. Nisi esse et deserunt occaecat aliquip anim. Incididunt cupidatat ut id aute consectetur fugiat cillum culpa pariatur commodo.\r\n", "registered": "2014-07-31T20:48:20-12:00", "latitude": -61.377474, "longitude": 124.472775, "tags": [ "eu", "duis", "culpa", "est", "laboris", "dolor", "anim" ], "friends": [ { "id": 0, "name": "Delacruz Vazquez" }, { "id": 1, "name": "Terry Tucker" }, { "id": 2, "name": "Gretchen Swanson" } ], "greeting": "Hello, Cindy Avila! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ab6dab173034aea99", "index": 4388, "guid": "6005dc72-7295-4109-adac-0a765e52e9e8", "isActive": true, "balance": "$1,504.65", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Loraine Miles", "gender": "female", "company": "MUSANPOLY", "email": "lorainemiles@musanpoly.com", "phone": "+1 (909) 498-3612", "address": "235 Clinton Street, Belleview, New Jersey, 3380", "about": "Ad ullamco aliquip aute in. Tempor consequat incididunt eiusmod occaecat eiusmod ut consequat anim fugiat minim nostrud minim. Qui irure eiusmod aliqua duis. Laborum enim voluptate magna esse consequat esse.\r\n", "registered": "2014-07-29T05:31:06-12:00", "latitude": 38.078402, "longitude": -160.315884, "tags": [ "deserunt", "sunt", "consectetur", "Lorem", "deserunt", "adipisicing", "esse" ], "friends": [ { "id": 0, "name": "Lucia Hays" }, { "id": 1, "name": "Gardner Whitley" }, { "id": 2, "name": "Whitney Stone" } ], "greeting": "Hello, Loraine Miles! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a8f4d850068b68c22", "index": 4389, "guid": "f2ad53fe-c590-443a-a308-9b19709506b7", "isActive": false, "balance": "$3,207.59", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Brown Villarreal", "gender": "male", "company": "KIGGLE", "email": "brownvillarreal@kiggle.com", "phone": "+1 (978) 476-2058", "address": "797 Sunnyside Avenue, Magnolia, Palau, 6866", "about": "Commodo quis quis proident incididunt ad aliqua qui amet labore. Minim cupidatat laborum dolore ipsum adipisicing mollit deserunt laborum nisi proident cupidatat. Aliquip ex Lorem ex eu Lorem elit sunt. Labore aute ipsum ex aute sint ut exercitation officia.\r\n", "registered": "2014-04-14T15:30:33-12:00", "latitude": -65.810596, "longitude": 75.775156, "tags": [ "magna", "fugiat", "aliquip", "officia", "veniam", "adipisicing", "dolore" ], "friends": [ { "id": 0, "name": "Ora Howe" }, { "id": 1, "name": "Lowe Keith" }, { "id": 2, "name": "Bridgette Mayo" } ], "greeting": "Hello, Brown Villarreal! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a785048f0098fc4e1", "index": 4390, "guid": "e950ff9b-1351-46d2-b9ca-b87c0600b5d7", "isActive": false, "balance": "$3,297.87", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Tamera Rosales", "gender": "female", "company": "TERRASYS", "email": "tamerarosales@terrasys.com", "phone": "+1 (881) 596-2178", "address": "201 Rapelye Street, Nelson, Puerto Rico, 9467", "about": "Aute esse est aliquip magna. Ex ea Lorem non id nostrud ullamco. Pariatur quis consequat pariatur Lorem occaecat. Consectetur cupidatat velit ex excepteur enim enim.\r\n", "registered": "2014-07-04T18:05:23-12:00", "latitude": -9.729465, "longitude": 115.569988, "tags": [ "incididunt", "adipisicing", "tempor", "magna", "fugiat", "occaecat", "nostrud" ], "friends": [ { "id": 0, "name": "Lillie Mason" }, { "id": 1, "name": "Cristina Warren" }, { "id": 2, "name": "Finley Barlow" } ], "greeting": "Hello, Tamera Rosales! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2af695ae2b80352988", "index": 4391, "guid": "663e6a04-327d-47fb-b3d4-abb674c7fbeb", "isActive": false, "balance": "$2,103.29", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Michael Davis", "gender": "female", "company": "APPLICA", "email": "michaeldavis@applica.com", "phone": "+1 (989) 400-3603", "address": "578 Alton Place, Deltaville, California, 3855", "about": "Eu ex esse veniam laboris et magna qui aliqua Lorem. Aliquip cupidatat laboris aute aliqua commodo enim ut sit fugiat culpa consectetur sit nulla. Amet reprehenderit Lorem non Lorem amet tempor. Do veniam veniam dolore quis fugiat qui consectetur laborum velit. Amet consequat excepteur ut nulla nulla elit ea est labore ea.\r\n", "registered": "2014-08-14T20:32:18-12:00", "latitude": -63.711947, "longitude": 129.65857, "tags": [ "Lorem", "esse", "nisi", "mollit", "fugiat", "velit", "culpa" ], "friends": [ { "id": 0, "name": "Williams Solis" }, { "id": 1, "name": "Minnie Riggs" }, { "id": 2, "name": "Valentine Matthews" } ], "greeting": "Hello, Michael Davis! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a9c13ecb8f4f60eb9", "index": 4392, "guid": "e25e7643-06db-47a5-87b9-27b62f2c880b", "isActive": false, "balance": "$3,933.69", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Sheree Petty", "gender": "female", "company": "ZIORE", "email": "shereepetty@ziore.com", "phone": "+1 (975) 569-3122", "address": "716 Eckford Street, Witmer, Vermont, 9829", "about": "Officia sunt ex cillum adipisicing sit mollit. Deserunt nostrud aliqua Lorem ullamco. Amet eu id veniam non elit minim. Veniam elit qui in duis anim incididunt elit mollit ex proident quis. Nisi labore officia duis duis. Occaecat cillum duis Lorem amet eiusmod ut aliqua eiusmod. Proident commodo pariatur sint eu ad adipisicing deserunt aliqua.\r\n", "registered": "2014-09-02T23:15:34-12:00", "latitude": 41.244565, "longitude": 27.3936, "tags": [ "tempor", "excepteur", "occaecat", "commodo", "ullamco", "et", "officia" ], "friends": [ { "id": 0, "name": "Mccormick Marshall" }, { "id": 1, "name": "Adriana Black" }, { "id": 2, "name": "Serena Sykes" } ], "greeting": "Hello, Sheree Petty! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a8960377f2a624700", "index": 4393, "guid": "51b083e5-c1d4-40af-b52a-dabe2c6b1efc", "isActive": true, "balance": "$1,235.97", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Erma Becker", "gender": "female", "company": "PAWNAGRA", "email": "ermabecker@pawnagra.com", "phone": "+1 (960) 496-2945", "address": "689 Sedgwick Street, Crawfordsville, Indiana, 3545", "about": "Sit est consectetur do non Lorem ut aute ad consectetur. Officia dolore irure laboris reprehenderit. Sint laborum ullamco nisi officia sit adipisicing anim et fugiat. Dolore aute irure culpa nisi commodo dolore. Velit ipsum excepteur cillum incididunt irure.\r\n", "registered": "2014-02-25T07:48:05-13:00", "latitude": 87.074074, "longitude": 119.454436, "tags": [ "amet", "et", "eu", "nostrud", "minim", "occaecat", "officia" ], "friends": [ { "id": 0, "name": "Aline Cox" }, { "id": 1, "name": "Potts Murphy" }, { "id": 2, "name": "Eddie Kim" } ], "greeting": "Hello, Erma Becker! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a1f7ad48e48703055", "index": 4394, "guid": "4bde3f01-b5bc-4db5-bfc8-39841a0e05e1", "isActive": true, "balance": "$1,546.45", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Judy Stafford", "gender": "female", "company": "MAGNINA", "email": "judystafford@magnina.com", "phone": "+1 (952) 438-2640", "address": "384 Amherst Street, Collins, Illinois, 2120", "about": "Sint aliquip aute fugiat do sunt aliquip pariatur nostrud. Cillum est aliqua velit labore. Pariatur culpa pariatur anim Lorem. Incididunt fugiat sit consequat excepteur culpa nisi incididunt minim incididunt esse. Consectetur proident id aliqua velit fugiat qui laborum in. Proident nulla nostrud dolor nisi. Amet adipisicing exercitation cillum velit commodo esse consectetur excepteur incididunt non.\r\n", "registered": "2014-05-28T13:06:27-12:00", "latitude": -0.49525, "longitude": -112.402289, "tags": [ "amet", "occaecat", "esse", "aliquip", "magna", "nostrud", "velit" ], "friends": [ { "id": 0, "name": "Phelps Daniel" }, { "id": 1, "name": "Watkins Hudson" }, { "id": 2, "name": "Myra Snow" } ], "greeting": "Hello, Judy Stafford! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aed7569048b8649d2", "index": 4395, "guid": "c99619ee-6e95-4816-b6c6-cc375a2c9be2", "isActive": true, "balance": "$1,076.45", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Walsh Patrick", "gender": "male", "company": "IMPERIUM", "email": "walshpatrick@imperium.com", "phone": "+1 (974) 493-3192", "address": "384 Surf Avenue, Jessie, South Carolina, 2696", "about": "Ad magna anim esse dolore nulla do commodo anim id aliqua adipisicing velit dolore. Esse aliqua laborum voluptate nulla ex laborum fugiat nostrud Lorem ad enim sint esse incididunt. Velit in aute magna velit sit nulla in consectetur eu quis exercitation. Minim aliqua veniam voluptate nulla.\r\n", "registered": "2014-07-03T09:30:43-12:00", "latitude": -63.623124, "longitude": 85.666326, "tags": [ "proident", "culpa", "aliquip", "nostrud", "anim", "labore", "adipisicing" ], "friends": [ { "id": 0, "name": "Dominguez Padilla" }, { "id": 1, "name": "Wilkinson Melendez" }, { "id": 2, "name": "Katie Vasquez" } ], "greeting": "Hello, Walsh Patrick! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a4aa65e2e2e08febb", "index": 4396, "guid": "5c351dec-c104-4ed3-8977-057854266d51", "isActive": true, "balance": "$3,266.15", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Giles Tyler", "gender": "male", "company": "VERTON", "email": "gilestyler@verton.com", "phone": "+1 (844) 582-2272", "address": "971 Guernsey Street, Sexton, American Samoa, 7119", "about": "Dolor sunt ipsum consequat in sit laborum incididunt Lorem adipisicing dolore reprehenderit qui ipsum aliquip. Aute sunt occaecat est enim duis sit. Adipisicing sint magna proident irure eu consectetur aliqua.\r\n", "registered": "2014-07-07T17:18:18-12:00", "latitude": -7.100867, "longitude": 57.084586, "tags": [ "sit", "elit", "elit", "est", "veniam", "esse", "labore" ], "friends": [ { "id": 0, "name": "Imogene Mooney" }, { "id": 1, "name": "Tanner Garrison" }, { "id": 2, "name": "Bettye Best" } ], "greeting": "Hello, Giles Tyler! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2aed539acb5848a117", "index": 4397, "guid": "62d4f08d-1b87-4f1e-aa41-5b42d10d960f", "isActive": true, "balance": "$1,272.01", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Mccarthy Mccormick", "gender": "male", "company": "ENQUILITY", "email": "mccarthymccormick@enquility.com", "phone": "+1 (830) 562-3679", "address": "125 Gelston Avenue, Riceville, Delaware, 8002", "about": "Eiusmod tempor reprehenderit aliqua Lorem elit id laborum fugiat aute laboris fugiat voluptate reprehenderit. Ullamco officia labore culpa deserunt magna incididunt duis et officia sunt. Dolore in culpa culpa proident aliqua cillum id aliquip consequat ex culpa in. Reprehenderit dolor aliquip dolor aliquip eiusmod fugiat ad culpa Lorem eiusmod velit dolore. Consectetur voluptate ullamco aliqua fugiat eu sint voluptate labore. Ex esse fugiat mollit aute.\r\n", "registered": "2014-08-01T19:50:47-12:00", "latitude": 82.152329, "longitude": -55.866662, "tags": [ "reprehenderit", "laboris", "voluptate", "eiusmod", "aliqua", "commodo", "velit" ], "friends": [ { "id": 0, "name": "Wilcox Cross" }, { "id": 1, "name": "Audra Albert" }, { "id": 2, "name": "Terry Newton" } ], "greeting": "Hello, Mccarthy Mccormick! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aba8a9fe358da7b47", "index": 4398, "guid": "f9a634ce-7c63-4c10-ad8c-4c2a039f8c8d", "isActive": false, "balance": "$1,887.55", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Pratt Kemp", "gender": "male", "company": "ZANITY", "email": "prattkemp@zanity.com", "phone": "+1 (932) 520-3930", "address": "175 Greenwood Avenue, Bethany, Pennsylvania, 7836", "about": "Dolor in nostrud et anim aliquip duis laboris fugiat labore voluptate irure. Ut sit cupidatat magna labore Lorem ex ea aliquip aute. Voluptate eiusmod nostrud excepteur et ipsum laboris ipsum ex voluptate sit exercitation excepteur labore elit. Laboris deserunt dolor sunt cillum. Excepteur tempor occaecat tempor adipisicing excepteur. Sint sunt sunt ipsum veniam laborum adipisicing sit irure.\r\n", "registered": "2014-04-04T21:21:58-13:00", "latitude": -11.044024, "longitude": -119.161258, "tags": [ "anim", "officia", "tempor", "ea", "commodo", "aliqua", "adipisicing" ], "friends": [ { "id": 0, "name": "Evangeline Nelson" }, { "id": 1, "name": "Casandra Duke" }, { "id": 2, "name": "Bonita Perez" } ], "greeting": "Hello, Pratt Kemp! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a3901b07c4af432fb", "index": 4399, "guid": "28326617-dcb6-4d38-8354-e6673d721e78", "isActive": false, "balance": "$1,564.89", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Denise Hoffman", "gender": "female", "company": "OMNIGOG", "email": "denisehoffman@omnigog.com", "phone": "+1 (912) 458-3798", "address": "279 Jerome Street, Idamay, Georgia, 4358", "about": "Officia id ut ea sint id. Pariatur mollit ex occaecat voluptate sunt. Dolore non ipsum labore ea irure cillum velit consectetur sint nulla aliqua officia commodo veniam. Do proident exercitation cillum est culpa nostrud. Aliquip occaecat voluptate Lorem non elit aute labore nulla voluptate occaecat enim sit quis. Do culpa eu aliquip laborum dolor exercitation eu exercitation mollit. Est ut culpa sunt enim ut commodo mollit nisi laborum eiusmod Lorem voluptate.\r\n", "registered": "2014-01-25T11:23:33-13:00", "latitude": 6.735991, "longitude": -107.361415, "tags": [ "aliqua", "tempor", "est", "aliqua", "elit", "velit", "in" ], "friends": [ { "id": 0, "name": "Consuelo Waller" }, { "id": 1, "name": "Arline Bowman" }, { "id": 2, "name": "Enid Morales" } ], "greeting": "Hello, Denise Hoffman! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a7ef77c99fef804e4", "index": 4400, "guid": "031cf637-5ad8-4088-8ef0-1f1f96766742", "isActive": true, "balance": "$2,761.70", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Lambert Mejia", "gender": "male", "company": "COMVEX", "email": "lambertmejia@comvex.com", "phone": "+1 (858) 442-2990", "address": "384 Mill Avenue, Moquino, North Dakota, 2790", "about": "Excepteur reprehenderit sint culpa deserunt fugiat ad sunt minim amet. Veniam excepteur enim proident occaecat elit fugiat amet culpa do ea quis cupidatat tempor nostrud. Adipisicing amet exercitation ex eu. Duis nisi ut eiusmod eiusmod do laboris sit nulla.\r\n", "registered": "2014-03-16T01:19:45-13:00", "latitude": -54.163466, "longitude": 141.311427, "tags": [ "adipisicing", "proident", "labore", "amet", "duis", "consequat", "culpa" ], "friends": [ { "id": 0, "name": "Diana Hurst" }, { "id": 1, "name": "Vera Kennedy" }, { "id": 2, "name": "Corine Farrell" } ], "greeting": "Hello, Lambert Mejia! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aceeebf5c87922709", "index": 4401, "guid": "f6357eca-3c59-45bc-94c2-3cde1e77e253", "isActive": false, "balance": "$2,019.22", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Ola Doyle", "gender": "female", "company": "FURNIGEER", "email": "oladoyle@furnigeer.com", "phone": "+1 (827) 553-2689", "address": "989 Benson Avenue, Allamuchy, Louisiana, 7687", "about": "In incididunt in fugiat sint tempor laborum consectetur magna sunt ullamco qui culpa. Do ullamco tempor pariatur ullamco do incididunt occaecat. Elit velit id nisi et reprehenderit aliquip voluptate excepteur duis ad consequat cillum. Tempor ullamco minim eu labore sint sunt pariatur eu et nisi ut ipsum nisi velit. Ex in quis mollit et aliquip ex. Est excepteur in eu aute voluptate. Aliquip est ad magna dolore.\r\n", "registered": "2014-05-28T02:47:07-12:00", "latitude": 58.129003, "longitude": 65.676876, "tags": [ "enim", "nulla", "tempor", "proident", "fugiat", "tempor", "ex" ], "friends": [ { "id": 0, "name": "Rasmussen Hoover" }, { "id": 1, "name": "Adrian Dalton" }, { "id": 2, "name": "Lancaster Mcdowell" } ], "greeting": "Hello, Ola Doyle! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2af74fbaacca84bd3e", "index": 4402, "guid": "fdca0193-ff0d-4757-9cc0-6c4d3f49b928", "isActive": false, "balance": "$3,638.50", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Schmidt Marsh", "gender": "male", "company": "NITRACYR", "email": "schmidtmarsh@nitracyr.com", "phone": "+1 (960) 446-2735", "address": "981 McKibben Street, Columbus, Northern Mariana Islands, 9508", "about": "Consectetur sint enim et laboris in anim veniam ullamco. Dolore quis minim aute ullamco officia consequat id adipisicing. Eu amet irure do do duis commodo ut exercitation sint.\r\n", "registered": "2014-09-01T18:54:27-12:00", "latitude": 8.139224, "longitude": 147.94512, "tags": [ "ut", "sint", "ea", "quis", "adipisicing", "ut", "veniam" ], "friends": [ { "id": 0, "name": "Tasha Juarez" }, { "id": 1, "name": "Reeves Dillard" }, { "id": 2, "name": "Woodward Lee" } ], "greeting": "Hello, Schmidt Marsh! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a94de92be9be1e43e", "index": 4403, "guid": "ed5519f9-bb54-450e-b4f4-ea5ee9513271", "isActive": false, "balance": "$2,918.35", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Melva Mayer", "gender": "female", "company": "OATFARM", "email": "melvamayer@oatfarm.com", "phone": "+1 (997) 401-3967", "address": "617 Quentin Road, Calpine, Colorado, 3820", "about": "Duis aliqua aliquip do ullamco culpa deserunt deserunt tempor velit laboris cupidatat. Fugiat pariatur aute sit officia eu veniam quis aliqua. Incididunt veniam ullamco mollit ad Lorem. Cillum eu commodo excepteur ex. Occaecat Lorem commodo enim aliquip. Deserunt et aliqua eiusmod exercitation id tempor officia nisi voluptate. Nisi in et do sit culpa minim mollit ipsum exercitation.\r\n", "registered": "2014-02-18T17:38:22-13:00", "latitude": 66.479387, "longitude": -106.67791, "tags": [ "non", "labore", "dolore", "velit", "officia", "laboris", "ipsum" ], "friends": [ { "id": 0, "name": "Goldie Beard" }, { "id": 1, "name": "Solis Randolph" }, { "id": 2, "name": "Danielle Rocha" } ], "greeting": "Hello, Melva Mayer! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2af373568f6d7240cb", "index": 4404, "guid": "671a9864-ff54-40e5-8bbf-eda0ef08adec", "isActive": false, "balance": "$2,324.79", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Short Owen", "gender": "male", "company": "JETSILK", "email": "shortowen@jetsilk.com", "phone": "+1 (888) 420-2541", "address": "782 Hanover Place, Iberia, Idaho, 8822", "about": "Reprehenderit consequat ullamco ea amet ullamco voluptate. Aute occaecat pariatur cupidatat mollit labore ea. Deserunt in eu culpa commodo labore nisi adipisicing Lorem officia quis ut mollit. Nostrud sunt nisi eu sunt id aliqua ut proident dolor. Elit nulla esse non aliqua eiusmod. Duis consequat sunt ipsum Lorem cillum duis. Magna cupidatat ad consequat aute anim.\r\n", "registered": "2014-08-22T22:50:30-12:00", "latitude": 71.812184, "longitude": 134.642802, "tags": [ "nostrud", "id", "ex", "ullamco", "ad", "consectetur", "mollit" ], "friends": [ { "id": 0, "name": "Della Justice" }, { "id": 1, "name": "Louise Walters" }, { "id": 2, "name": "Janna Moon" } ], "greeting": "Hello, Short Owen! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a7731ffad36974648", "index": 4405, "guid": "32df07b5-227b-4699-98fc-7a58e9e2f6f3", "isActive": false, "balance": "$2,308.04", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Bernadine Byers", "gender": "female", "company": "BOSTONIC", "email": "bernadinebyers@bostonic.com", "phone": "+1 (858) 490-2593", "address": "826 President Street, Sisquoc, Marshall Islands, 7704", "about": "Consectetur proident laboris reprehenderit enim nostrud. Minim irure sit incididunt consectetur consectetur culpa eiusmod. Sit ad nostrud sunt laboris et ipsum. Minim incididunt ex occaecat adipisicing aliquip.\r\n", "registered": "2014-08-06T22:35:57-12:00", "latitude": 56.991587, "longitude": -63.470735, "tags": [ "tempor", "anim", "adipisicing", "eu", "proident", "sit", "voluptate" ], "friends": [ { "id": 0, "name": "Castillo Mcdaniel" }, { "id": 1, "name": "Fay Pearson" }, { "id": 2, "name": "Knowles Mcintosh" } ], "greeting": "Hello, Bernadine Byers! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ab6737e0ac7b898b1", "index": 4406, "guid": "51183603-bdfc-4321-9873-50c11d8028f9", "isActive": true, "balance": "$2,028.08", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Carissa Robertson", "gender": "female", "company": "CODAX", "email": "carissarobertson@codax.com", "phone": "+1 (878) 524-2409", "address": "825 Linden Boulevard, Odessa, New York, 6704", "about": "Ea aliquip veniam ipsum enim commodo. Aute ea do labore aute magna qui eiusmod minim minim adipisicing cillum aliquip. Fugiat non ullamco ex id ut in ut exercitation.\r\n", "registered": "2014-05-15T14:11:02-12:00", "latitude": -33.868443, "longitude": -113.204924, "tags": [ "ea", "minim", "anim", "sit", "consequat", "reprehenderit", "do" ], "friends": [ { "id": 0, "name": "Brandie Sherman" }, { "id": 1, "name": "Whitehead Gillespie" }, { "id": 2, "name": "Cecelia Glass" } ], "greeting": "Hello, Carissa Robertson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a0987641a843576c8", "index": 4407, "guid": "59f15b12-506d-4e56-a990-d9df2b8bc36e", "isActive": true, "balance": "$1,113.30", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Lidia Wells", "gender": "female", "company": "MOBILDATA", "email": "lidiawells@mobildata.com", "phone": "+1 (855) 581-3552", "address": "353 Monitor Street, Tyro, Guam, 6645", "about": "Ullamco mollit nulla ex sunt fugiat ut ea culpa fugiat voluptate laborum proident incididunt. Velit ullamco anim in occaecat sint qui elit magna magna deserunt do voluptate. Amet fugiat tempor mollit ex ea veniam exercitation enim esse ut consequat aute. Nostrud tempor do nulla incididunt aliquip ad aliquip deserunt ad ut sit exercitation. Est dolor laborum ipsum ad quis enim non aute. Veniam non Lorem ea voluptate nostrud laborum consectetur duis consequat officia Lorem mollit. Pariatur ullamco cupidatat minim incididunt excepteur ullamco pariatur deserunt ad.\r\n", "registered": "2014-04-18T10:13:48-12:00", "latitude": -77.976005, "longitude": 8.924334, "tags": [ "elit", "pariatur", "laborum", "sunt", "laboris", "magna", "irure" ], "friends": [ { "id": 0, "name": "Jefferson Love" }, { "id": 1, "name": "Paul Owens" }, { "id": 2, "name": "Love Levy" } ], "greeting": "Hello, Lidia Wells! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a9430ef4214784868", "index": 4408, "guid": "c00524a8-640f-4e3f-b9f9-3c0098576e2d", "isActive": false, "balance": "$2,909.68", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Meredith Dillon", "gender": "female", "company": "BITTOR", "email": "meredithdillon@bittor.com", "phone": "+1 (862) 467-3417", "address": "983 Ide Court, Cashtown, Virgin Islands, 8120", "about": "Veniam tempor aliqua laborum adipisicing dolor duis fugiat cupidatat id. Voluptate ex minim duis adipisicing eiusmod fugiat sit laborum consectetur. Cillum consequat commodo deserunt et velit ad velit et eiusmod. Nostrud quis reprehenderit mollit aliquip irure commodo reprehenderit sint cillum ipsum. Irure tempor exercitation deserunt aute irure. Exercitation commodo aliquip id sit. Qui duis nulla proident consectetur.\r\n", "registered": "2014-07-17T22:29:03-12:00", "latitude": 62.799658, "longitude": 85.076761, "tags": [ "sit", "cupidatat", "occaecat", "irure", "eu", "exercitation", "consectetur" ], "friends": [ { "id": 0, "name": "Rhea Williamson" }, { "id": 1, "name": "Bright Ware" }, { "id": 2, "name": "Russell Alston" } ], "greeting": "Hello, Meredith Dillon! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a983f7848785464e0", "index": 4409, "guid": "13dd3f56-e3f5-41cc-99c3-4ae04a1d9c99", "isActive": true, "balance": "$1,031.39", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Shannon Nieves", "gender": "male", "company": "COMBOGEN", "email": "shannonnieves@combogen.com", "phone": "+1 (991) 574-3937", "address": "108 Applegate Court, Barrelville, Massachusetts, 3299", "about": "Deserunt aliquip adipisicing sunt eiusmod magna fugiat aliqua commodo tempor laboris ipsum in. Qui eiusmod excepteur dolore cupidatat quis duis pariatur excepteur nostrud dolore qui labore. Ullamco ut anim nulla et. Ut ipsum esse Lorem excepteur sint consectetur sunt est id fugiat culpa laborum ex.\r\n", "registered": "2014-09-14T21:02:16-12:00", "latitude": 43.939989, "longitude": -38.300368, "tags": [ "fugiat", "labore", "sunt", "Lorem", "incididunt", "sunt", "pariatur" ], "friends": [ { "id": 0, "name": "Becky Deleon" }, { "id": 1, "name": "Stacy Parrish" }, { "id": 2, "name": "Gwen Farley" } ], "greeting": "Hello, Shannon Nieves! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a9eeff5542733aadc", "index": 4410, "guid": "7c1df07d-01e7-42be-95e8-e89de6f6cace", "isActive": true, "balance": "$1,238.97", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Polly Pugh", "gender": "female", "company": "ZYTRAX", "email": "pollypugh@zytrax.com", "phone": "+1 (879) 584-3359", "address": "986 Midwood Street, Kula, Utah, 1144", "about": "Esse officia duis laboris aliqua nulla enim id eu minim consequat ea pariatur. Pariatur cupidatat aliquip ullamco sunt adipisicing aliquip nostrud ullamco est. Consequat id labore eiusmod reprehenderit amet exercitation. Reprehenderit sint aliqua excepteur proident dolor eiusmod aliqua aute laboris ullamco.\r\n", "registered": "2014-01-13T07:29:30-13:00", "latitude": 48.304912, "longitude": -112.317076, "tags": [ "laborum", "deserunt", "ex", "deserunt", "quis", "ex", "sit" ], "friends": [ { "id": 0, "name": "Thornton Barber" }, { "id": 1, "name": "Stefanie Hayes" }, { "id": 2, "name": "Kirk Pennington" } ], "greeting": "Hello, Polly Pugh! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a720dd68ac38167fe", "index": 4411, "guid": "76df0d3f-034d-47f2-9bdf-8d8148e314f0", "isActive": true, "balance": "$3,771.35", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Abbott May", "gender": "male", "company": "OTHERSIDE", "email": "abbottmay@otherside.com", "phone": "+1 (967) 454-3529", "address": "589 Ovington Avenue, Bawcomville, Montana, 4048", "about": "Sunt officia do amet ea fugiat aute anim ipsum mollit non. Qui excepteur magna irure Lorem fugiat fugiat minim officia magna dolore officia magna esse culpa. Amet dolor pariatur aliqua nulla dolor eiusmod veniam laborum. Mollit aliqua dolore tempor anim reprehenderit esse esse exercitation eu aliquip. Occaecat qui non sint irure aliqua labore aute ullamco.\r\n", "registered": "2014-03-31T12:26:58-13:00", "latitude": 34.149852, "longitude": -104.075778, "tags": [ "qui", "ut", "sint", "cupidatat", "adipisicing", "pariatur", "sit" ], "friends": [ { "id": 0, "name": "Bethany Hyde" }, { "id": 1, "name": "Elma Nunez" }, { "id": 2, "name": "Sabrina Hodge" } ], "greeting": "Hello, Abbott May! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ae526622438d3033c", "index": 4412, "guid": "88fc4290-5ba7-4b6c-a036-d8f7af0b7648", "isActive": false, "balance": "$1,972.25", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Lila Dominguez", "gender": "female", "company": "TERSANKI", "email": "liladominguez@tersanki.com", "phone": "+1 (806) 531-2030", "address": "356 Barbey Street, Hartsville/Hartley, Wisconsin, 5350", "about": "Aliquip labore nulla ex cillum aute commodo magna consequat est eiusmod proident id reprehenderit veniam. Ex eiusmod ullamco incididunt nostrud. Anim aliqua aute ipsum cillum aliquip est pariatur officia pariatur nostrud aliqua consectetur magna.\r\n", "registered": "2014-01-27T06:32:21-13:00", "latitude": 82.47983, "longitude": -61.547961, "tags": [ "ipsum", "ea", "ea", "pariatur", "et", "ex", "consequat" ], "friends": [ { "id": 0, "name": "Burch Mitchell" }, { "id": 1, "name": "Joan Rogers" }, { "id": 2, "name": "Huff Odom" } ], "greeting": "Hello, Lila Dominguez! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a0deff74320565b8d", "index": 4413, "guid": "975b4f33-63be-4727-898c-fa3902654c24", "isActive": false, "balance": "$1,816.63", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Trujillo Brock", "gender": "male", "company": "DIGIFAD", "email": "trujillobrock@digifad.com", "phone": "+1 (999) 453-2859", "address": "630 Beverly Road, Courtland, Maine, 8457", "about": "Duis sint eu consectetur cupidatat elit minim aute sunt consectetur voluptate dolor. Consectetur esse et duis magna reprehenderit nulla anim do proident in qui. Dolore in labore deserunt incididunt elit minim labore Lorem adipisicing id nulla ullamco cupidatat. Occaecat mollit consequat pariatur ex dolore esse sit esse. Excepteur labore reprehenderit exercitation deserunt do labore. Occaecat elit esse duis culpa ullamco incididunt. Mollit velit voluptate minim in cillum enim ipsum quis amet ullamco.\r\n", "registered": "2014-02-23T06:53:52-13:00", "latitude": -68.125322, "longitude": 39.270848, "tags": [ "reprehenderit", "occaecat", "reprehenderit", "quis", "laborum", "eu", "tempor" ], "friends": [ { "id": 0, "name": "Elisa Dixon" }, { "id": 1, "name": "Letitia Barnes" }, { "id": 2, "name": "Alisha Massey" } ], "greeting": "Hello, Trujillo Brock! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ad4720d3695139bc0", "index": 4414, "guid": "ee7c8cce-df63-4f1a-a832-07a7dbbcc479", "isActive": true, "balance": "$2,043.91", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Joyce Morton", "gender": "female", "company": "PLASMOX", "email": "joycemorton@plasmox.com", "phone": "+1 (811) 490-3556", "address": "713 Llama Court, Cedarville, Virginia, 7049", "about": "Cupidatat laborum incididunt dolore nisi. Fugiat incididunt eiusmod deserunt reprehenderit in magna occaecat commodo irure consequat qui sunt adipisicing. Ipsum do eiusmod eu nulla pariatur incididunt eu ipsum excepteur nisi ad minim cillum. Laborum aute elit magna nisi consequat eiusmod ullamco amet nisi officia magna nulla dolore aute.\r\n", "registered": "2014-02-02T13:45:47-13:00", "latitude": -72.332742, "longitude": -25.485982, "tags": [ "pariatur", "magna", "sunt", "enim", "do", "incididunt", "do" ], "friends": [ { "id": 0, "name": "Mcfarland Landry" }, { "id": 1, "name": "Louisa Garcia" }, { "id": 2, "name": "Strong Bowers" } ], "greeting": "Hello, Joyce Morton! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a386a5a8b76a8652c", "index": 4415, "guid": "cd111fc6-0fb8-4cb1-b46f-3e0c420933b4", "isActive": false, "balance": "$1,718.05", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Lloyd Whitaker", "gender": "male", "company": "PROGENEX", "email": "lloydwhitaker@progenex.com", "phone": "+1 (909) 444-3695", "address": "884 Rewe Street, Hickory, Kentucky, 1724", "about": "Ullamco nisi non nisi deserunt id quis laboris veniam aute mollit voluptate elit labore dolor. In magna elit ullamco cillum qui eiusmod aute Lorem dolore adipisicing dolore exercitation aute enim. Aliquip proident do reprehenderit duis voluptate nostrud. Et qui qui ut aliquip cupidatat ea ullamco enim adipisicing. Ipsum ex aliquip irure consequat esse aute consequat ullamco. Amet irure proident culpa minim dolore ut ea ut magna consectetur id nisi adipisicing consectetur. Pariatur non aute aute sunt laborum reprehenderit.\r\n", "registered": "2014-01-02T08:35:34-13:00", "latitude": -24.808228, "longitude": 138.804776, "tags": [ "ullamco", "ea", "consectetur", "officia", "in", "magna", "irure" ], "friends": [ { "id": 0, "name": "Cameron Gordon" }, { "id": 1, "name": "Blanche Downs" }, { "id": 2, "name": "Hammond Rose" } ], "greeting": "Hello, Lloyd Whitaker! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a332d431cf6fec2e0", "index": 4416, "guid": "a9d8f2ff-2b33-41eb-8b2e-5e6a8f1a4e1c", "isActive": false, "balance": "$1,206.45", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Riddle Blackwell", "gender": "male", "company": "FISHLAND", "email": "riddleblackwell@fishland.com", "phone": "+1 (880) 552-2495", "address": "171 Vandalia Avenue, Dowling, Connecticut, 963", "about": "Laboris cillum pariatur cupidatat qui aute irure. Do ullamco aliqua culpa nulla sunt do commodo dolor elit est minim occaecat ipsum ut. Deserunt non eiusmod commodo sint excepteur qui labore proident nisi minim. Eu laborum anim aute est. Anim deserunt commodo aute aliqua dolor reprehenderit laboris ut fugiat aliquip. In eiusmod sit nostrud labore mollit minim aute exercitation et quis exercitation amet elit consequat.\r\n", "registered": "2014-02-25T02:07:33-13:00", "latitude": 36.791922, "longitude": -34.805317, "tags": [ "pariatur", "dolor", "cupidatat", "duis", "veniam", "voluptate", "elit" ], "friends": [ { "id": 0, "name": "Serrano Steele" }, { "id": 1, "name": "Valenzuela Dorsey" }, { "id": 2, "name": "Fletcher Burch" } ], "greeting": "Hello, Riddle Blackwell! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ab44a3d356e0ac7ff", "index": 4417, "guid": "bb867429-17a2-4c6b-a41f-7002f077a983", "isActive": true, "balance": "$3,675.38", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Sampson Miller", "gender": "male", "company": "TERAPRENE", "email": "sampsonmiller@teraprene.com", "phone": "+1 (834) 500-3435", "address": "390 Ford Street, Romeville, Mississippi, 3604", "about": "Eiusmod enim voluptate ad enim adipisicing ex. Est ad ut sint elit officia cupidatat aliquip enim. Officia ut voluptate commodo eiusmod voluptate Lorem proident dolor enim excepteur elit adipisicing duis tempor.\r\n", "registered": "2014-08-18T07:23:14-12:00", "latitude": 67.490791, "longitude": -179.859486, "tags": [ "deserunt", "ipsum", "exercitation", "deserunt", "nostrud", "amet", "est" ], "friends": [ { "id": 0, "name": "Cassie Gross" }, { "id": 1, "name": "Sherry Rowe" }, { "id": 2, "name": "Frankie Fitzgerald" } ], "greeting": "Hello, Sampson Miller! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a083c58ee61285dd5", "index": 4418, "guid": "59ada589-6001-4e4c-b4d9-83177fdaa4e5", "isActive": false, "balance": "$2,613.50", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Kerry Burris", "gender": "female", "company": "AQUOAVO", "email": "kerryburris@aquoavo.com", "phone": "+1 (862) 589-3243", "address": "471 Quincy Street, Thomasville, Washington, 6409", "about": "Ut aliquip labore ea aute tempor. In minim eu est consequat dolore elit ex eu ullamco. Duis anim eu anim nisi nisi aliqua pariatur reprehenderit culpa occaecat do qui ipsum enim. Amet ex excepteur ex est culpa mollit laborum sit aute magna qui. Aliqua culpa ipsum commodo deserunt velit exercitation minim deserunt ullamco incididunt in sit non ut. Esse sint eu aliqua proident sint ut officia irure irure do voluptate sit eiusmod. Dolor incididunt adipisicing est pariatur dolor velit.\r\n", "registered": "2014-05-13T15:42:32-12:00", "latitude": -8.619382, "longitude": -31.972336, "tags": [ "laboris", "consequat", "cillum", "excepteur", "sit", "adipisicing", "fugiat" ], "friends": [ { "id": 0, "name": "Violet Case" }, { "id": 1, "name": "Smith Hines" }, { "id": 2, "name": "Carlson Contreras" } ], "greeting": "Hello, Kerry Burris! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a681cedb7dcdb3ca1", "index": 4419, "guid": "06cffad6-8710-492c-90d9-ed349af6f8bf", "isActive": true, "balance": "$3,043.80", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Spencer Chen", "gender": "male", "company": "ISOSPHERE", "email": "spencerchen@isosphere.com", "phone": "+1 (890) 533-2560", "address": "201 Underhill Avenue, Roland, Tennessee, 7816", "about": "Lorem Lorem tempor consequat aliqua ullamco laboris ea sint ea Lorem reprehenderit. Mollit fugiat ex ut ipsum magna irure eu do non. Eiusmod duis consectetur commodo aliqua. Veniam incididunt velit culpa dolor enim in occaecat sint. Dolore fugiat nostrud magna cillum minim eiusmod qui sunt laborum quis.\r\n", "registered": "2014-08-02T02:20:17-12:00", "latitude": 61.059946, "longitude": -87.575699, "tags": [ "excepteur", "dolore", "adipisicing", "quis", "officia", "anim", "aliqua" ], "friends": [ { "id": 0, "name": "Goff Bean" }, { "id": 1, "name": "Willa Burns" }, { "id": 2, "name": "Shauna Bruce" } ], "greeting": "Hello, Spencer Chen! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a30b441107959df06", "index": 4420, "guid": "6822f6e7-908d-43a2-a8d3-bdc1ad8d02b9", "isActive": false, "balance": "$2,013.27", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Blevins Gilliam", "gender": "male", "company": "UNI", "email": "blevinsgilliam@uni.com", "phone": "+1 (805) 503-3623", "address": "347 Herkimer Court, Brutus, Alabama, 1500", "about": "Ex dolore reprehenderit ad consectetur culpa non labore tempor anim veniam consectetur ipsum nisi. Duis exercitation excepteur consectetur elit irure nostrud nulla in occaecat Lorem enim reprehenderit. Amet dolore labore aliqua incididunt ut aute Lorem consequat voluptate. Quis elit ea sunt proident ad fugiat consequat consectetur ut anim ipsum non mollit officia. Anim enim culpa magna aute incididunt do. Minim officia aliquip in duis aliqua.\r\n", "registered": "2014-08-22T12:12:04-12:00", "latitude": -0.942636, "longitude": 118.686894, "tags": [ "tempor", "enim", "minim", "voluptate", "laborum", "cupidatat", "esse" ], "friends": [ { "id": 0, "name": "George Weiss" }, { "id": 1, "name": "Becker Sharp" }, { "id": 2, "name": "Kitty Rivera" } ], "greeting": "Hello, Blevins Gilliam! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a4ac58f4d04f56bba", "index": 4421, "guid": "fce83c9d-fb39-43c9-92a1-e329605f9074", "isActive": false, "balance": "$3,169.45", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Nanette Hobbs", "gender": "female", "company": "ZAGGLE", "email": "nanettehobbs@zaggle.com", "phone": "+1 (862) 439-2698", "address": "988 Royce Place, Norwood, Ohio, 2493", "about": "Anim aute esse laboris sunt culpa irure eu non eu. Voluptate cupidatat fugiat duis dolor incididunt non nostrud sunt. Ipsum exercitation aute consequat tempor fugiat quis adipisicing adipisicing anim. Incididunt cupidatat laborum quis esse nulla esse minim irure fugiat ullamco pariatur esse. Minim aute est cillum aliqua laboris ut ipsum. Ipsum dolore veniam ad magna elit nulla.\r\n", "registered": "2014-03-10T05:05:32-13:00", "latitude": -15.03428, "longitude": -75.665483, "tags": [ "qui", "culpa", "duis", "id", "pariatur", "est", "pariatur" ], "friends": [ { "id": 0, "name": "Elvira Parker" }, { "id": 1, "name": "Tonia West" }, { "id": 2, "name": "Eliza Peck" } ], "greeting": "Hello, Nanette Hobbs! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ac0492d30025a7b2f", "index": 4422, "guid": "6fb91dd0-64bc-49a0-aff0-50f5ad29d0ee", "isActive": true, "balance": "$2,868.28", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Bentley Hogan", "gender": "male", "company": "DIGIGENE", "email": "bentleyhogan@digigene.com", "phone": "+1 (963) 511-3914", "address": "780 Bushwick Court, Falconaire, Hawaii, 6942", "about": "Ullamco anim tempor aliqua eu eiusmod nostrud culpa fugiat. Minim eu magna occaecat duis sint deserunt laborum cillum eu cillum Lorem veniam eu elit. Minim eu nostrud commodo nostrud. Quis culpa incididunt ea consectetur non officia consequat enim aute. Commodo aute adipisicing cupidatat culpa veniam magna.\r\n", "registered": "2014-06-27T01:43:15-12:00", "latitude": -62.011165, "longitude": -35.664441, "tags": [ "commodo", "nostrud", "non", "voluptate", "officia", "eiusmod", "excepteur" ], "friends": [ { "id": 0, "name": "Shelly Coffey" }, { "id": 1, "name": "Carly Snider" }, { "id": 2, "name": "Lillian Flores" } ], "greeting": "Hello, Bentley Hogan! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a81c1f227cf0b235b", "index": 4423, "guid": "d14a9d30-9d4e-47da-9908-852800afc8b9", "isActive": true, "balance": "$1,734.27", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Hogan Harrell", "gender": "male", "company": "SILODYNE", "email": "hoganharrell@silodyne.com", "phone": "+1 (933) 531-3068", "address": "323 Schenck Avenue, Stonybrook, New Mexico, 834", "about": "Aliquip mollit fugiat minim consequat magna amet nisi aliqua amet. Ut ipsum velit irure incididunt. Ullamco eiusmod qui consectetur sunt cupidatat do deserunt. Velit quis culpa duis exercitation. Veniam deserunt aute voluptate commodo excepteur dolor laborum anim velit quis. Aliquip magna voluptate duis nulla voluptate culpa tempor nostrud eiusmod duis in aliquip aute. Laboris cillum deserunt magna dolore consequat tempor cillum excepteur voluptate.\r\n", "registered": "2014-01-04T21:32:28-13:00", "latitude": -49.388712, "longitude": 69.686459, "tags": [ "nostrud", "laborum", "excepteur", "voluptate", "excepteur", "adipisicing", "officia" ], "friends": [ { "id": 0, "name": "Ross Henson" }, { "id": 1, "name": "Lawanda Booth" }, { "id": 2, "name": "Dejesus Willis" } ], "greeting": "Hello, Hogan Harrell! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aabaad6f6e45dd2ac", "index": 4424, "guid": "2bebf4d9-af9e-47ff-83e1-dbe4106eb64c", "isActive": true, "balance": "$3,766.93", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Mclean Carpenter", "gender": "male", "company": "MANTRIX", "email": "mcleancarpenter@mantrix.com", "phone": "+1 (966) 461-3880", "address": "523 Bath Avenue, Keller, Maryland, 545", "about": "Amet nisi voluptate ut culpa pariatur aliqua occaecat nulla deserunt tempor exercitation. Minim cillum anim dolore occaecat aliqua laborum voluptate cillum elit ad laboris non do ad. Cillum ex incididunt velit culpa pariatur enim exercitation occaecat Lorem anim duis ad commodo nostrud. Quis quis in reprehenderit aute culpa ea excepteur mollit reprehenderit.\r\n", "registered": "2014-05-24T16:37:23-12:00", "latitude": -22.15885, "longitude": -143.997842, "tags": [ "do", "deserunt", "cillum", "Lorem", "non", "incididunt", "ad" ], "friends": [ { "id": 0, "name": "Natasha Pena" }, { "id": 1, "name": "Angelique Washington" }, { "id": 2, "name": "Deborah Potter" } ], "greeting": "Hello, Mclean Carpenter! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa433ce66ff2f647f", "index": 4425, "guid": "12fa1013-dde3-448f-ae86-11d67512a8a8", "isActive": false, "balance": "$1,824.21", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Dominique Gates", "gender": "female", "company": "ENTALITY", "email": "dominiquegates@entality.com", "phone": "+1 (807) 446-2551", "address": "176 Woodbine Street, Rivera, Alaska, 8485", "about": "Sunt in eu qui dolore. Dolore nulla officia voluptate irure mollit. Aliqua nulla cupidatat amet sit ullamco.\r\n", "registered": "2014-04-06T02:19:55-13:00", "latitude": -26.815862, "longitude": -121.06799, "tags": [ "eiusmod", "elit", "et", "ut", "cillum", "excepteur", "anim" ], "friends": [ { "id": 0, "name": "Melisa Hopkins" }, { "id": 1, "name": "Kimberly Gilbert" }, { "id": 2, "name": "Bishop Walls" } ], "greeting": "Hello, Dominique Gates! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ab680fdc382f3c65b", "index": 4426, "guid": "25ec77c1-f8f7-452c-a808-659e892da7de", "isActive": true, "balance": "$1,581.15", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Larson Franklin", "gender": "male", "company": "DYMI", "email": "larsonfranklin@dymi.com", "phone": "+1 (904) 560-3652", "address": "252 Waldorf Court, Fillmore, Arizona, 5071", "about": "Minim aliquip ullamco ex tempor. Enim cupidatat ipsum aliquip cillum pariatur nisi. Do adipisicing amet irure ut laborum labore ullamco consequat in quis pariatur ullamco ea dolore. Dolor quis in minim nulla Lorem nisi cupidatat velit. Minim sit in dolore aliquip cillum.\r\n", "registered": "2014-04-18T17:58:17-12:00", "latitude": -68.025733, "longitude": 73.419804, "tags": [ "ad", "ullamco", "dolore", "irure", "amet", "dolore", "sint" ], "friends": [ { "id": 0, "name": "Jessie Reed" }, { "id": 1, "name": "Gregory Odonnell" }, { "id": 2, "name": "Dollie Chang" } ], "greeting": "Hello, Larson Franklin! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ac8e5ce792dbd96cc", "index": 4427, "guid": "afab5393-b1e0-4eb7-ba61-ad63ced9c93a", "isActive": true, "balance": "$3,051.72", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Margo Snyder", "gender": "female", "company": "GLASSTEP", "email": "margosnyder@glasstep.com", "phone": "+1 (825) 543-2439", "address": "483 Osborn Street, Marenisco, Federated States Of Micronesia, 1483", "about": "Amet elit aliqua aute sit laboris velit esse nulla nulla ad ullamco in. Sit sunt consequat aliquip culpa sit. Dolore laborum laboris esse cupidatat magna sit laboris culpa culpa Lorem ea et. Sunt fugiat do aliqua reprehenderit aliquip. Tempor excepteur cillum reprehenderit occaecat laborum est in voluptate ad ex excepteur ullamco. Proident sint aliqua aliqua anim deserunt id quis quis sint sint.\r\n", "registered": "2014-08-06T02:30:25-12:00", "latitude": -31.484487, "longitude": -75.156082, "tags": [ "nostrud", "nulla", "culpa", "Lorem", "anim", "nulla", "anim" ], "friends": [ { "id": 0, "name": "Lupe Elliott" }, { "id": 1, "name": "Sheri Neal" }, { "id": 2, "name": "Joann Boone" } ], "greeting": "Hello, Margo Snyder! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ac3bd87efb5f8a929", "index": 4428, "guid": "3823d2fc-cbf0-4384-8145-360e9aea2c0e", "isActive": true, "balance": "$1,098.29", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Colleen Valencia", "gender": "female", "company": "SYNKGEN", "email": "colleenvalencia@synkgen.com", "phone": "+1 (920) 421-2003", "address": "687 Will Place, Stewartville, Oklahoma, 567", "about": "Qui velit laborum ad tempor anim aliquip quis consequat culpa culpa magna id dolore. Nulla ipsum anim culpa reprehenderit sint sint cupidatat pariatur in in quis excepteur deserunt. In cupidatat nisi culpa id anim consectetur aliquip non commodo enim adipisicing laboris. Culpa labore commodo commodo elit et. Incididunt sunt sit ut et consectetur dolore nulla.\r\n", "registered": "2014-08-20T21:02:46-12:00", "latitude": -31.97535, "longitude": 63.395713, "tags": [ "deserunt", "reprehenderit", "enim", "excepteur", "laboris", "sit", "id" ], "friends": [ { "id": 0, "name": "Coleman Robinson" }, { "id": 1, "name": "Bowers Macdonald" }, { "id": 2, "name": "Leila Santiago" } ], "greeting": "Hello, Colleen Valencia! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a8b3b2f55ed719e6e", "index": 4429, "guid": "485068d3-f8f3-4156-83b8-414a9437cf10", "isActive": false, "balance": "$2,690.50", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Miriam Bartlett", "gender": "female", "company": "BIOLIVE", "email": "miriambartlett@biolive.com", "phone": "+1 (998) 547-2213", "address": "914 Strong Place, Greer, Michigan, 153", "about": "Dolore culpa enim pariatur occaecat sit laboris consectetur aliquip in ex qui officia labore aute. Amet duis ullamco pariatur ullamco occaecat ex officia. Adipisicing excepteur veniam Lorem eu pariatur nulla deserunt fugiat culpa cillum est eiusmod anim.\r\n", "registered": "2014-07-05T20:52:38-12:00", "latitude": -80.667637, "longitude": -50.49503, "tags": [ "duis", "eiusmod", "enim", "eiusmod", "est", "cupidatat", "aute" ], "friends": [ { "id": 0, "name": "Schroeder Weeks" }, { "id": 1, "name": "Wendi Lott" }, { "id": 2, "name": "Nettie Oconnor" } ], "greeting": "Hello, Miriam Bartlett! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ac02330faface8b17", "index": 4430, "guid": "e6a125d7-72ba-43ce-9d1e-e2473d80d6fc", "isActive": false, "balance": "$3,228.64", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Valeria Dejesus", "gender": "female", "company": "INJOY", "email": "valeriadejesus@injoy.com", "phone": "+1 (988) 560-2879", "address": "354 Vine Street, Waikele, Kansas, 3596", "about": "Ex sunt deserunt anim ad nisi proident sint dolore ut id nulla excepteur elit est. Excepteur cupidatat do ut est fugiat cillum ullamco laborum irure elit ullamco non. Reprehenderit quis voluptate commodo quis fugiat. Aliqua aliqua proident laboris non minim commodo officia reprehenderit ipsum sunt nostrud laborum. Exercitation eiusmod Lorem eu esse aute ex exercitation velit cillum fugiat. Sit elit sunt deserunt excepteur deserunt aute laborum exercitation fugiat est dolore minim mollit reprehenderit.\r\n", "registered": "2014-06-11T16:20:50-12:00", "latitude": 53.497777, "longitude": -64.119286, "tags": [ "ad", "cupidatat", "do", "deserunt", "duis", "id", "officia" ], "friends": [ { "id": 0, "name": "Solomon Cline" }, { "id": 1, "name": "Mabel Larson" }, { "id": 2, "name": "Karla Velazquez" } ], "greeting": "Hello, Valeria Dejesus! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a083f7fb04c437542", "index": 4431, "guid": "08be481b-1dac-4b3a-a9c5-dc8ccf3ed8e2", "isActive": true, "balance": "$1,573.17", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Roy Newman", "gender": "male", "company": "PLAYCE", "email": "roynewman@playce.com", "phone": "+1 (867) 534-3003", "address": "568 Suydam Place, Utting, South Dakota, 6136", "about": "Irure anim est in qui qui. In laboris ad ex amet. Elit minim enim mollit ex proident. Enim nostrud est et exercitation.\r\n", "registered": "2014-08-14T16:51:27-12:00", "latitude": 17.305433, "longitude": -62.216069, "tags": [ "ex", "tempor", "aute", "amet", "et", "sunt", "officia" ], "friends": [ { "id": 0, "name": "Karyn Dyer" }, { "id": 1, "name": "Angela Blair" }, { "id": 2, "name": "Joanna Keller" } ], "greeting": "Hello, Roy Newman! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a8e47a04c94fef781", "index": 4432, "guid": "971a7ab4-1072-445d-9af7-2ce9aad9203f", "isActive": false, "balance": "$2,019.07", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Allen Hampton", "gender": "male", "company": "ZILLACON", "email": "allenhampton@zillacon.com", "phone": "+1 (964) 534-3413", "address": "238 Royce Street, Dubois, West Virginia, 8103", "about": "Dolore tempor do sint officia nulla aute velit. Amet ipsum non nulla nulla amet amet. Eiusmod occaecat anim fugiat aliqua veniam enim occaecat labore consectetur labore esse excepteur nulla. Sint nulla excepteur ea eiusmod cillum enim consequat. Anim reprehenderit nulla ut reprehenderit enim exercitation anim quis eu pariatur ex mollit nulla veniam. Et do nostrud cillum officia proident exercitation do est nulla. Quis amet et et adipisicing nisi fugiat reprehenderit officia proident deserunt in fugiat incididunt.\r\n", "registered": "2014-07-04T17:39:24-12:00", "latitude": -71.951677, "longitude": -55.634972, "tags": [ "eiusmod", "in", "ad", "cupidatat", "proident", "sunt", "tempor" ], "friends": [ { "id": 0, "name": "Maynard Hernandez" }, { "id": 1, "name": "Gina Nguyen" }, { "id": 2, "name": "Dean Ingram" } ], "greeting": "Hello, Allen Hampton! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a5b051d87189af177", "index": 4433, "guid": "00d7c09c-67ad-49e7-967b-f5189faf4ac4", "isActive": true, "balance": "$1,631.55", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Harmon Maldonado", "gender": "male", "company": "VISUALIX", "email": "harmonmaldonado@visualix.com", "phone": "+1 (891) 418-2429", "address": "922 Hubbard Street, Russellville, Texas, 6894", "about": "Est proident pariatur elit aliquip minim ipsum. Deserunt officia culpa cupidatat aute ea veniam nulla in non in. Id ullamco proident qui pariatur duis occaecat incididunt amet in. Aute non voluptate commodo esse occaecat cillum nulla ea.\r\n", "registered": "2014-02-17T14:15:24-13:00", "latitude": -54.916949, "longitude": -11.871029, "tags": [ "nulla", "et", "mollit", "laborum", "velit", "minim", "ullamco" ], "friends": [ { "id": 0, "name": "Socorro Guthrie" }, { "id": 1, "name": "Franco Fletcher" }, { "id": 2, "name": "Madden Jarvis" } ], "greeting": "Hello, Harmon Maldonado! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a685034be6e78c031", "index": 4434, "guid": "94095bc5-6ce8-4afc-995a-b50e7ff76ef5", "isActive": false, "balance": "$1,555.15", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Gross Hinton", "gender": "male", "company": "SENMAO", "email": "grosshinton@senmao.com", "phone": "+1 (898) 420-3589", "address": "682 Lee Avenue, Kidder, Oregon, 4070", "about": "Dolor labore amet dolore ea occaecat officia non aliqua non veniam magna laborum officia do. Lorem adipisicing ullamco consectetur ea ut non ipsum proident dolore reprehenderit. Veniam exercitation laborum aliqua anim. Voluptate minim aliquip sit do laboris esse in id tempor tempor excepteur do.\r\n", "registered": "2014-03-09T16:23:10-13:00", "latitude": 45.345648, "longitude": 62.639208, "tags": [ "commodo", "ex", "veniam", "duis", "deserunt", "culpa", "anim" ], "friends": [ { "id": 0, "name": "Rush Battle" }, { "id": 1, "name": "Drake Allen" }, { "id": 2, "name": "Lane Barrett" } ], "greeting": "Hello, Gross Hinton! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a83cc978955cc75b3", "index": 4435, "guid": "2cd6e143-8fdb-4062-b230-e753c15e6654", "isActive": false, "balance": "$3,607.49", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Clemons Rojas", "gender": "male", "company": "QIMONK", "email": "clemonsrojas@qimonk.com", "phone": "+1 (833) 406-3960", "address": "152 Hopkins Street, Fidelis, Nevada, 4342", "about": "Non cillum amet incididunt exercitation amet ipsum sint aute aliqua. Reprehenderit culpa consectetur qui aliqua. Duis sunt velit est tempor commodo. Eiusmod laboris sint nostrud anim esse commodo ut mollit officia consectetur enim. Dolor labore aliquip sunt aliqua sint consectetur anim consectetur. Et sunt cupidatat consequat dolor id do commodo nostrud ex. Mollit commodo sint qui ullamco nulla eiusmod velit do et.\r\n", "registered": "2014-06-27T10:07:39-12:00", "latitude": -78.193839, "longitude": 25.616982, "tags": [ "mollit", "eu", "pariatur", "enim", "deserunt", "nostrud", "non" ], "friends": [ { "id": 0, "name": "Levy Dotson" }, { "id": 1, "name": "Adeline Spence" }, { "id": 2, "name": "Lola Burke" } ], "greeting": "Hello, Clemons Rojas! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a3efbecbd41ae3237", "index": 4436, "guid": "7ab64775-f0cb-4d38-a03d-6bed95e6ed34", "isActive": false, "balance": "$1,972.82", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Marion Rosario", "gender": "female", "company": "GEEKOLA", "email": "marionrosario@geekola.com", "phone": "+1 (911) 542-2393", "address": "651 Florence Avenue, Websterville, Minnesota, 3776", "about": "Adipisicing occaecat labore nulla aliqua laborum. Irure nostrud exercitation aliquip do incididunt cupidatat incididunt exercitation laborum aliquip anim. Id eiusmod elit ut reprehenderit deserunt pariatur elit esse Lorem incididunt occaecat incididunt nulla consectetur. Aliquip dolore laboris velit excepteur voluptate quis ipsum nulla proident pariatur proident commodo duis commodo. Deserunt commodo cupidatat duis dolor mollit esse voluptate.\r\n", "registered": "2014-05-05T15:29:53-12:00", "latitude": 1.098191, "longitude": 137.362843, "tags": [ "tempor", "consectetur", "ipsum", "exercitation", "nostrud", "laboris", "proident" ], "friends": [ { "id": 0, "name": "Edith Stephenson" }, { "id": 1, "name": "Lily Frederick" }, { "id": 2, "name": "Yang Kirkland" } ], "greeting": "Hello, Marion Rosario! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa0ceeb5d53160981", "index": 4437, "guid": "54e669bf-24ec-4573-86cf-6cf1a35b1e04", "isActive": true, "balance": "$1,724.64", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Keith Wall", "gender": "male", "company": "TECHADE", "email": "keithwall@techade.com", "phone": "+1 (994) 414-2504", "address": "538 Pilling Street, Rockhill, Missouri, 4020", "about": "Nostrud amet aliqua et aliqua dolore minim. Occaecat tempor mollit proident anim exercitation eu ex excepteur voluptate voluptate voluptate. Ut anim amet eiusmod anim duis elit quis aliqua nisi. Ut ea adipisicing adipisicing quis esse aliqua et ea mollit anim commodo. Ipsum sit exercitation mollit ad qui adipisicing ipsum. Duis enim et ut ullamco ipsum reprehenderit duis tempor nisi nisi laboris. Cillum occaecat voluptate dolore ut occaecat in Lorem qui aute.\r\n", "registered": "2014-08-05T22:20:03-12:00", "latitude": -17.166542, "longitude": 107.929461, "tags": [ "mollit", "fugiat", "officia", "nisi", "id", "sint", "excepteur" ], "friends": [ { "id": 0, "name": "Hodge Parsons" }, { "id": 1, "name": "Booker Curtis" }, { "id": 2, "name": "Duffy Diaz" } ], "greeting": "Hello, Keith Wall! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a9ed6bb36843a7a8e", "index": 4438, "guid": "9b095f00-956a-4d3b-ab1c-5b9ec48f468a", "isActive": true, "balance": "$3,520.09", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Velazquez Henderson", "gender": "male", "company": "TECHTRIX", "email": "velazquezhenderson@techtrix.com", "phone": "+1 (991) 548-3512", "address": "432 Irving Place, Elfrida, Rhode Island, 7879", "about": "Consectetur proident id irure sunt consequat voluptate nulla mollit sunt cupidatat aute veniam nisi excepteur. Non ut aliquip consequat velit cupidatat incididunt aliquip et cupidatat nulla minim nisi do culpa. Est qui voluptate amet cillum pariatur aliquip.\r\n", "registered": "2014-05-19T07:52:20-12:00", "latitude": -40.798532, "longitude": 78.076124, "tags": [ "id", "nulla", "dolor", "laborum", "pariatur", "eiusmod", "ipsum" ], "friends": [ { "id": 0, "name": "Jean Fisher" }, { "id": 1, "name": "Genevieve Forbes" }, { "id": 2, "name": "Golden Bass" } ], "greeting": "Hello, Velazquez Henderson! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a7a24b45887c4f67f", "index": 4439, "guid": "a41a9377-99f4-4b45-b01b-e73f332efb1d", "isActive": false, "balance": "$2,213.76", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Diaz Rowland", "gender": "male", "company": "ESSENSIA", "email": "diazrowland@essensia.com", "phone": "+1 (817) 592-3730", "address": "942 Etna Street, Aberdeen, Florida, 5793", "about": "Occaecat reprehenderit culpa labore duis deserunt anim cupidatat officia irure officia deserunt reprehenderit dolore velit. Ea deserunt est magna nostrud duis ex occaecat culpa id id sint quis irure irure. Laborum ipsum eu officia elit mollit duis cupidatat aliquip culpa cillum. Quis cillum aliquip dolore incididunt duis adipisicing proident velit voluptate officia cupidatat. Sit enim quis do laboris eiusmod. Incididunt ad elit cupidatat nulla Lorem ex magna tempor do nulla quis quis sit do.\r\n", "registered": "2014-08-16T00:51:54-12:00", "latitude": -42.068178, "longitude": 177.609195, "tags": [ "in", "eiusmod", "nostrud", "aliqua", "sint", "laborum", "dolor" ], "friends": [ { "id": 0, "name": "Magdalena Horn" }, { "id": 1, "name": "Vargas Yates" }, { "id": 2, "name": "Rachael Spears" } ], "greeting": "Hello, Diaz Rowland! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a82987951955243c0", "index": 4440, "guid": "9941af63-16b2-4e46-9a25-9069f9e119d9", "isActive": false, "balance": "$1,371.93", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Irwin Hester", "gender": "male", "company": "ACCEL", "email": "irwinhester@accel.com", "phone": "+1 (853) 417-2606", "address": "726 Seton Place, Yogaville, North Carolina, 2853", "about": "Excepteur elit commodo occaecat ex esse commodo proident est anim reprehenderit non. Voluptate elit Lorem labore duis sint officia. Ex ut exercitation aliquip voluptate do ullamco veniam magna sit sint quis qui nulla dolore. Tempor magna enim consequat do dolor. Proident dolore nostrud irure cillum irure. Lorem dolore consequat do veniam do amet est Lorem duis ullamco est aliqua est nulla.\r\n", "registered": "2014-01-12T06:59:07-13:00", "latitude": 40.956547, "longitude": -160.444747, "tags": [ "ipsum", "ipsum", "veniam", "id", "proident", "ut", "elit" ], "friends": [ { "id": 0, "name": "Harrington Fernandez" }, { "id": 1, "name": "Dorthy Sweeney" }, { "id": 2, "name": "Sonja Abbott" } ], "greeting": "Hello, Irwin Hester! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a7c3c78c20b1736fd", "index": 4441, "guid": "10427483-aa40-4eaf-bf8d-6a0cb5ab52f0", "isActive": true, "balance": "$1,081.09", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Ramirez Kane", "gender": "male", "company": "CUJO", "email": "ramirezkane@cujo.com", "phone": "+1 (848) 455-2335", "address": "502 Utica Avenue, Bodega, New Hampshire, 7994", "about": "Ex eiusmod qui officia minim excepteur ex proident. Tempor reprehenderit eu ea Lorem non. Qui nulla cupidatat adipisicing ea proident qui adipisicing exercitation ea ad magna. Labore ex nulla pariatur ad eiusmod exercitation ullamco aliquip commodo culpa excepteur. Voluptate eiusmod sint eiusmod nulla ut irure irure adipisicing in magna non adipisicing Lorem. Et duis dolor labore aliquip.\r\n", "registered": "2014-03-30T00:56:10-13:00", "latitude": 31.806695, "longitude": -45.866651, "tags": [ "in", "eiusmod", "magna", "reprehenderit", "magna", "Lorem", "fugiat" ], "friends": [ { "id": 0, "name": "Roth Clements" }, { "id": 1, "name": "Penny Romero" }, { "id": 2, "name": "Cannon Moore" } ], "greeting": "Hello, Ramirez Kane! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ae525869d00a83116", "index": 4442, "guid": "a471edb4-4607-46c5-98e7-9d9edfe05ef5", "isActive": false, "balance": "$2,270.48", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Joyner Adams", "gender": "male", "company": "BRAINCLIP", "email": "joyneradams@brainclip.com", "phone": "+1 (872) 518-3371", "address": "600 Bryant Street, Caroline, Arkansas, 4706", "about": "Culpa esse ut mollit proident eu eu deserunt. Minim reprehenderit labore laborum ullamco est sint do culpa et dolor magna adipisicing. Eu do cillum Lorem et cupidatat ut irure veniam nostrud fugiat reprehenderit Lorem. Mollit enim tempor aliquip commodo excepteur.\r\n", "registered": "2014-03-06T06:57:36-13:00", "latitude": -12.119948, "longitude": -137.592616, "tags": [ "magna", "velit", "elit", "laborum", "culpa", "est", "duis" ], "friends": [ { "id": 0, "name": "Nieves Mcfadden" }, { "id": 1, "name": "Eve Clarke" }, { "id": 2, "name": "Collier Church" } ], "greeting": "Hello, Joyner Adams! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa72296e6a5eef2f0", "index": 4443, "guid": "c8aa881c-9fb8-46ae-91d4-d4bb96ff4d49", "isActive": false, "balance": "$3,107.24", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Herrera David", "gender": "male", "company": "KRAG", "email": "herreradavid@krag.com", "phone": "+1 (897) 469-2204", "address": "856 Glendale Court, Carbonville, Iowa, 1828", "about": "Nostrud ut amet laboris exercitation nisi. Magna fugiat non laboris et. Velit dolore sunt cupidatat nisi amet ad esse exercitation culpa deserunt adipisicing amet. Officia consequat exercitation id adipisicing. Adipisicing amet proident irure ut duis laborum.\r\n", "registered": "2014-01-11T12:27:55-13:00", "latitude": -11.536139, "longitude": -118.067874, "tags": [ "laboris", "ipsum", "commodo", "esse", "amet", "esse", "magna" ], "friends": [ { "id": 0, "name": "Pitts Mcdonald" }, { "id": 1, "name": "Kathryn Lindsay" }, { "id": 2, "name": "Dennis Key" } ], "greeting": "Hello, Herrera David! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a8c1d4461612e26bf", "index": 4444, "guid": "57e7024f-c262-49db-af88-63c2d087f6fc", "isActive": true, "balance": "$2,802.10", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Maureen Murray", "gender": "female", "company": "MOMENTIA", "email": "maureenmurray@momentia.com", "phone": "+1 (983) 559-2553", "address": "558 Roder Avenue, Whitewater, Nebraska, 3765", "about": "Aliqua aute eu magna nulla aliqua laborum voluptate velit consequat cupidatat nulla. Duis ut duis ullamco laborum esse proident. Proident fugiat eu culpa cupidatat minim ea in consectetur eu non mollit reprehenderit elit. Cillum duis officia est deserunt velit in ex cillum officia ullamco aute ea reprehenderit. Labore magna aliqua ullamco nostrud ipsum sit non reprehenderit eu et occaecat esse excepteur ullamco.\r\n", "registered": "2014-02-12T08:47:31-13:00", "latitude": 84.343814, "longitude": 60.235366, "tags": [ "amet", "velit", "excepteur", "mollit", "nisi", "id", "officia" ], "friends": [ { "id": 0, "name": "Hardin Phelps" }, { "id": 1, "name": "Willis Wolf" }, { "id": 2, "name": "Irene Hooper" } ], "greeting": "Hello, Maureen Murray! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ab260619155de639d", "index": 4445, "guid": "f48f0f6a-fac5-40ec-a6eb-40189a79103a", "isActive": false, "balance": "$3,041.88", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Keri Mills", "gender": "female", "company": "OCTOCORE", "email": "kerimills@octocore.com", "phone": "+1 (962) 428-3611", "address": "530 Cherry Street, Eureka, District Of Columbia, 3402", "about": "In laborum eiusmod proident labore velit anim do ea nulla irure ullamco fugiat dolor commodo. Nostrud enim dolore sunt ad exercitation minim cillum tempor. Sint consequat mollit est reprehenderit aliquip incididunt. Nostrud sit elit dolore veniam mollit deserunt laborum cupidatat.\r\n", "registered": "2014-01-06T19:24:37-13:00", "latitude": -30.629639, "longitude": -157.500611, "tags": [ "sit", "laborum", "anim", "ipsum", "magna", "veniam", "in" ], "friends": [ { "id": 0, "name": "Rocha Middleton" }, { "id": 1, "name": "Clare Hawkins" }, { "id": 2, "name": "Theresa Norris" } ], "greeting": "Hello, Keri Mills! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a39851c065f04c220", "index": 4446, "guid": "40a2ad07-bc71-4895-b166-1865fdd4fc36", "isActive": false, "balance": "$1,805.40", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Robinson Rich", "gender": "male", "company": "ZENTHALL", "email": "robinsonrich@zenthall.com", "phone": "+1 (923) 498-2541", "address": "230 Williams Court, Northchase, New Jersey, 936", "about": "Labore cupidatat quis commodo dolor esse esse cupidatat. Irure velit dolor eiusmod do ut elit Lorem commodo voluptate culpa non sint eu. Ad ea deserunt eu enim nulla pariatur cillum ullamco. Elit dolor duis consequat adipisicing et mollit sunt minim ut cillum incididunt reprehenderit id.\r\n", "registered": "2014-03-07T22:40:40-13:00", "latitude": -2.275362, "longitude": -27.273651, "tags": [ "voluptate", "id", "sit", "eu", "Lorem", "sint", "elit" ], "friends": [ { "id": 0, "name": "Jacklyn Cervantes" }, { "id": 1, "name": "Crawford Campbell" }, { "id": 2, "name": "Barlow Mcfarland" } ], "greeting": "Hello, Robinson Rich! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a54afcea3de8b8fb0", "index": 4447, "guid": "63e17027-f3b6-40ce-b547-bcba9aa8ea8e", "isActive": true, "balance": "$2,128.33", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Yvonne Beach", "gender": "female", "company": "DATACATOR", "email": "yvonnebeach@datacator.com", "phone": "+1 (991) 413-3739", "address": "816 Otsego Street, Grimsley, Palau, 7163", "about": "Tempor veniam cillum incididunt cupidatat est excepteur aute. Elit magna minim ipsum qui est velit pariatur deserunt enim cupidatat amet. Eiusmod enim adipisicing nulla veniam magna Lorem aliqua amet officia Lorem esse nostrud nostrud pariatur. Id et exercitation anim in Lorem incididunt occaecat ullamco culpa duis Lorem aliquip non magna.\r\n", "registered": "2014-04-13T19:51:24-12:00", "latitude": 49.557011, "longitude": -26.379896, "tags": [ "incididunt", "do", "consectetur", "nulla", "sint", "consequat", "dolore" ], "friends": [ { "id": 0, "name": "Velma Vaughn" }, { "id": 1, "name": "Hilary Ashley" }, { "id": 2, "name": "Suzanne Chandler" } ], "greeting": "Hello, Yvonne Beach! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a320f12b44297e422", "index": 4448, "guid": "5117c2db-e644-4542-9fa6-e353420ec008", "isActive": false, "balance": "$3,114.35", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Fitzpatrick Vaughan", "gender": "male", "company": "EARGO", "email": "fitzpatrickvaughan@eargo.com", "phone": "+1 (977) 594-3224", "address": "654 Herkimer Street, Ronco, Puerto Rico, 7637", "about": "Sint laboris quis sint cillum ad amet pariatur ut fugiat esse do culpa. Esse qui quis adipisicing proident exercitation amet irure minim dolore tempor nisi labore voluptate. Labore officia non sit nulla adipisicing nulla enim Lorem enim tempor anim irure. Ex velit ullamco est quis exercitation et minim labore sit in. Sint ullamco ad ipsum dolor incididunt esse elit aute. Mollit ea deserunt officia ea ullamco fugiat laborum dolor labore amet. Aute quis velit labore ex.\r\n", "registered": "2014-06-17T13:31:41-12:00", "latitude": -43.792991, "longitude": 118.64386, "tags": [ "laborum", "sit", "adipisicing", "deserunt", "eu", "tempor", "labore" ], "friends": [ { "id": 0, "name": "Brandi Robbins" }, { "id": 1, "name": "Letha Levine" }, { "id": 2, "name": "Cruz Combs" } ], "greeting": "Hello, Fitzpatrick Vaughan! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aca3a337196a0f03c", "index": 4449, "guid": "e353a364-1948-410c-8c6b-d42127457b8c", "isActive": true, "balance": "$3,349.32", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Sasha Schwartz", "gender": "female", "company": "INSURON", "email": "sashaschwartz@insuron.com", "phone": "+1 (952) 585-2194", "address": "739 Everett Avenue, Blodgett, California, 9032", "about": "Magna quis eiusmod tempor non nisi culpa enim in tempor officia. Ipsum excepteur ex pariatur dolor cupidatat ipsum in aliquip incididunt officia. Esse proident incididunt reprehenderit sit elit laboris quis dolore tempor amet nulla tempor fugiat. Nostrud ad ad do commodo. Sit aliqua excepteur Lorem anim anim dolore. Exercitation occaecat cupidatat aute exercitation excepteur cillum irure deserunt. Exercitation ad laboris sunt esse in do elit esse ad velit tempor.\r\n", "registered": "2014-06-18T14:10:50-12:00", "latitude": 77.926771, "longitude": -11.76958, "tags": [ "do", "Lorem", "amet", "culpa", "tempor", "occaecat", "amet" ], "friends": [ { "id": 0, "name": "Alba Sims" }, { "id": 1, "name": "Callahan Maxwell" }, { "id": 2, "name": "Ortega Talley" } ], "greeting": "Hello, Sasha Schwartz! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2afad3e7612ad614dc", "index": 4450, "guid": "e1f7a098-1f53-4696-8024-15b737bf45b8", "isActive": true, "balance": "$3,211.18", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Stout Knowles", "gender": "male", "company": "MANTRO", "email": "stoutknowles@mantro.com", "phone": "+1 (939) 412-2712", "address": "624 Jardine Place, Delshire, Vermont, 4256", "about": "Qui non duis ea deserunt mollit nulla. Cupidatat deserunt fugiat elit tempor cupidatat dolor id consequat incididunt. Et ex aute occaecat nisi id fugiat nisi minim dolor tempor sint. Est aute sunt amet occaecat labore deserunt nostrud. In proident do sit elit fugiat aute quis et tempor consequat quis.\r\n", "registered": "2014-03-30T11:03:48-13:00", "latitude": -60.028056, "longitude": 42.737649, "tags": [ "proident", "ea", "cillum", "excepteur", "esse", "est", "qui" ], "friends": [ { "id": 0, "name": "Maura Green" }, { "id": 1, "name": "Boyd Gutierrez" }, { "id": 2, "name": "Francisca Rivers" } ], "greeting": "Hello, Stout Knowles! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a62a1fc6c3ef2666e", "index": 4451, "guid": "239f9994-ba5c-4b37-8611-5769f936e130", "isActive": true, "balance": "$2,775.58", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Julie Garner", "gender": "female", "company": "ENVIRE", "email": "juliegarner@envire.com", "phone": "+1 (988) 550-2626", "address": "957 Arion Place, Eagletown, Indiana, 8689", "about": "Aliquip non excepteur incididunt Lorem. Veniam pariatur fugiat dolore eiusmod magna velit labore non ad enim. Culpa exercitation non in tempor fugiat consectetur duis excepteur consectetur elit. Ipsum eiusmod sit ullamco mollit esse. Non quis incididunt qui proident eiusmod aliqua magna sunt tempor consequat laboris velit ut aliquip. Ipsum non id aliqua Lorem laborum do incididunt commodo sit non qui exercitation officia ipsum.\r\n", "registered": "2014-05-23T12:54:49-12:00", "latitude": -70.952235, "longitude": 105.499389, "tags": [ "enim", "veniam", "deserunt", "officia", "ut", "consectetur", "quis" ], "friends": [ { "id": 0, "name": "Alisa Mann" }, { "id": 1, "name": "Rosella Harvey" }, { "id": 2, "name": "Dickerson Pollard" } ], "greeting": "Hello, Julie Garner! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a644c95e3c8a5b5b7", "index": 4452, "guid": "6acd2ba1-d304-4738-b354-ee66ed1235e7", "isActive": true, "balance": "$2,003.31", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Valdez Davenport", "gender": "male", "company": "RAMJOB", "email": "valdezdavenport@ramjob.com", "phone": "+1 (859) 439-2672", "address": "485 Creamer Street, Joppa, Illinois, 5870", "about": "Do pariatur laborum ad reprehenderit proident. Fugiat eu cillum aliqua nisi voluptate dolore et Lorem. Amet excepteur Lorem nulla cupidatat sint Lorem cillum est nostrud. Pariatur consectetur ipsum reprehenderit sint ut elit ut.\r\n", "registered": "2014-07-27T11:46:59-12:00", "latitude": -43.860431, "longitude": 144.315327, "tags": [ "irure", "consectetur", "aliqua", "laboris", "voluptate", "ad", "veniam" ], "friends": [ { "id": 0, "name": "Rosanna Norton" }, { "id": 1, "name": "Stanley Mendez" }, { "id": 2, "name": "Luella George" } ], "greeting": "Hello, Valdez Davenport! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ab7cbf77b7210d07e", "index": 4453, "guid": "70decc6b-05e5-4672-bbaf-8054da32a192", "isActive": true, "balance": "$2,493.97", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Jamie Park", "gender": "female", "company": "ACRUEX", "email": "jamiepark@acruex.com", "phone": "+1 (819) 551-2286", "address": "577 Lawn Court, Kenvil, South Carolina, 8434", "about": "Laboris commodo duis sunt minim ex mollit voluptate fugiat cupidatat fugiat excepteur. Mollit eiusmod in velit deserunt enim ad quis ipsum fugiat do. Id consequat mollit id sunt commodo quis ad minim dolore cillum commodo enim do. Magna nisi labore qui proident deserunt tempor enim incididunt. Dolor labore dolore do irure ad cillum ipsum irure.\r\n", "registered": "2014-02-04T02:32:58-13:00", "latitude": 22.095028, "longitude": -37.851011, "tags": [ "ea", "tempor", "nostrud", "adipisicing", "ipsum", "pariatur", "voluptate" ], "friends": [ { "id": 0, "name": "Mollie Kerr" }, { "id": 1, "name": "Forbes Roberts" }, { "id": 2, "name": "Berry Holder" } ], "greeting": "Hello, Jamie Park! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a64226166200ca13f", "index": 4454, "guid": "af0d0a25-1521-4e38-8481-1d0dc6d721bc", "isActive": false, "balance": "$1,729.93", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Audrey Rollins", "gender": "female", "company": "TALENDULA", "email": "audreyrollins@talendula.com", "phone": "+1 (807) 528-3284", "address": "411 Lynch Street, Temperanceville, American Samoa, 8094", "about": "Nostrud consectetur culpa dolor aliqua ipsum officia. Eiusmod duis eiusmod velit officia adipisicing eu ad irure mollit consectetur amet ea. Nostrud eu dolor sint Lorem tempor consectetur mollit. Elit dolore non adipisicing sint nulla. Ut pariatur nisi quis magna Lorem proident in eu officia occaecat excepteur tempor. Est et mollit do sint consectetur. Enim fugiat elit aliqua incididunt sunt incididunt commodo in amet.\r\n", "registered": "2014-05-22T12:25:24-12:00", "latitude": 38.42554, "longitude": -38.070746, "tags": [ "consequat", "dolore", "id", "Lorem", "cupidatat", "veniam", "est" ], "friends": [ { "id": 0, "name": "Hancock Gonzalez" }, { "id": 1, "name": "Dolores Gonzales" }, { "id": 2, "name": "Kristie Dickson" } ], "greeting": "Hello, Audrey Rollins! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a844b96bbbbadaf9e", "index": 4455, "guid": "7ea139de-c78c-4bf3-af19-55a8ae9ab3a8", "isActive": true, "balance": "$1,848.92", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Caldwell Jordan", "gender": "male", "company": "NETBOOK", "email": "caldwelljordan@netbook.com", "phone": "+1 (873) 459-3690", "address": "144 Sheffield Avenue, Kerby, Delaware, 7905", "about": "Aliquip id dolore minim aliquip non proident aute exercitation. Ullamco amet eiusmod ut dolore quis culpa do sit velit magna fugiat incididunt eu labore. Voluptate incididunt ut culpa amet nostrud aute ea cupidatat qui incididunt minim quis. Anim ex eu culpa fugiat adipisicing adipisicing nisi. Eiusmod aliqua qui consequat quis non in reprehenderit.\r\n", "registered": "2014-05-15T00:51:56-12:00", "latitude": -0.437704, "longitude": -169.599313, "tags": [ "velit", "cillum", "ad", "amet", "in", "occaecat", "quis" ], "friends": [ { "id": 0, "name": "Knapp Herman" }, { "id": 1, "name": "Lowery Mcmahon" }, { "id": 2, "name": "Marquez Frost" } ], "greeting": "Hello, Caldwell Jordan! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a8f5a368672797cb0", "index": 4456, "guid": "e62395dd-3b79-45fa-a393-518ce77c4a6c", "isActive": false, "balance": "$1,973.98", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Karen Dale", "gender": "female", "company": "CUBIX", "email": "karendale@cubix.com", "phone": "+1 (968) 599-3486", "address": "229 Elmwood Avenue, Hiwasse, Pennsylvania, 9402", "about": "Sint excepteur deserunt in anim aliqua ipsum amet ad eu excepteur. Magna et qui ad enim sunt ullamco cillum amet sunt. Laborum quis proident labore fugiat esse cupidatat duis exercitation. Eu Lorem pariatur fugiat exercitation ut laborum nisi ea dolor. Eiusmod sint esse laboris esse. Fugiat eiusmod culpa id reprehenderit adipisicing eu ut occaecat reprehenderit officia minim fugiat reprehenderit reprehenderit.\r\n", "registered": "2014-01-28T20:22:55-13:00", "latitude": -4.124913, "longitude": 84.891117, "tags": [ "ea", "magna", "elit", "aute", "cillum", "elit", "consequat" ], "friends": [ { "id": 0, "name": "Rosemarie Taylor" }, { "id": 1, "name": "Daniel Kirby" }, { "id": 2, "name": "Briggs Hale" } ], "greeting": "Hello, Karen Dale! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a6066d1fcf01b4729", "index": 4457, "guid": "34bef04b-f95b-4777-98f4-3383b9e923e4", "isActive": true, "balance": "$3,631.81", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Lesley Ballard", "gender": "female", "company": "MITROC", "email": "lesleyballard@mitroc.com", "phone": "+1 (898) 551-3648", "address": "711 Commerce Street, Leming, Georgia, 1491", "about": "Nisi nulla ex cillum ad quis. Nisi deserunt incididunt incididunt laborum non qui magna irure labore ut amet sit tempor ut. Sunt amet incididunt exercitation est non duis sint sunt amet nisi cupidatat magna non. Tempor commodo amet labore commodo veniam voluptate exercitation ipsum eu sunt sit anim consequat cillum. Sunt veniam esse amet id minim culpa quis eu minim labore. Ipsum dolore consequat quis est nulla nostrud sunt id dolor ut minim ex. Velit sint laborum incididunt eiusmod consequat do minim labore duis fugiat do enim.\r\n", "registered": "2014-05-06T06:53:05-12:00", "latitude": -22.150922, "longitude": 150.176252, "tags": [ "anim", "fugiat", "elit", "sint", "ex", "id", "anim" ], "friends": [ { "id": 0, "name": "Christensen Daugherty" }, { "id": 1, "name": "Gabrielle Cobb" }, { "id": 2, "name": "Rhodes Phillips" } ], "greeting": "Hello, Lesley Ballard! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aea3ff426f2c8a828", "index": 4458, "guid": "3b94d774-2bd3-4475-85c9-f93c723162aa", "isActive": true, "balance": "$3,773.30", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Meagan Savage", "gender": "female", "company": "SONGBIRD", "email": "meagansavage@songbird.com", "phone": "+1 (827) 505-3027", "address": "360 Baycliff Terrace, Eggertsville, North Dakota, 3418", "about": "Incididunt id enim consectetur et nulla deserunt tempor. Fugiat deserunt occaecat officia est magna anim ipsum. Deserunt culpa ipsum ad elit. Deserunt irure culpa pariatur mollit duis reprehenderit non aute anim do fugiat. Elit officia Lorem sit sint voluptate cillum exercitation. Laboris id mollit ea anim eu dolor dolor aliquip occaecat ipsum cillum ut est.\r\n", "registered": "2014-04-11T23:39:33-12:00", "latitude": -68.509603, "longitude": 44.587464, "tags": [ "exercitation", "reprehenderit", "laboris", "enim", "est", "dolore", "ex" ], "friends": [ { "id": 0, "name": "Deanne Maynard" }, { "id": 1, "name": "Parks Colon" }, { "id": 2, "name": "Atkins Pickett" } ], "greeting": "Hello, Meagan Savage! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2abf5607146e7d6a26", "index": 4459, "guid": "d93e3300-9f0a-46af-975f-9ab3efd02987", "isActive": true, "balance": "$2,382.88", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Pam Foley", "gender": "female", "company": "INDEXIA", "email": "pamfoley@indexia.com", "phone": "+1 (906) 467-3220", "address": "731 Howard Avenue, Weeksville, Louisiana, 4960", "about": "Magna esse nostrud aliqua dolor irure. Pariatur cillum nostrud ex dolore esse. Ad nisi mollit laboris sit elit labore sint sunt anim minim cupidatat fugiat laborum incididunt. Anim cupidatat pariatur cillum dolor ex. Ea exercitation incididunt eu ut labore esse. Culpa laborum enim duis esse cupidatat mollit dolor dolore occaecat aliqua laborum.\r\n", "registered": "2014-03-02T14:00:24-13:00", "latitude": 23.924935, "longitude": -137.043242, "tags": [ "labore", "ad", "Lorem", "deserunt", "magna", "enim", "magna" ], "friends": [ { "id": 0, "name": "Ayala Harding" }, { "id": 1, "name": "Tucker Ball" }, { "id": 2, "name": "Patterson Walker" } ], "greeting": "Hello, Pam Foley! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ab15cd6b33098e92b", "index": 4460, "guid": "1abd957d-506b-4c16-9784-7d3a9619d71e", "isActive": false, "balance": "$2,124.06", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Mcclain Ferguson", "gender": "male", "company": "INSURESYS", "email": "mcclainferguson@insuresys.com", "phone": "+1 (812) 414-3687", "address": "151 Stockholm Street, Fulford, Northern Mariana Islands, 3698", "about": "Nostrud velit mollit in incididunt. Laborum ullamco enim quis pariatur occaecat dolor commodo aliquip est aliqua ea laboris ex. Quis quis duis consectetur voluptate et. Officia quis ut velit reprehenderit. Ipsum officia officia tempor ea laboris duis et sunt est veniam irure occaecat quis cupidatat.\r\n", "registered": "2014-03-11T17:18:07-13:00", "latitude": 88.56057, "longitude": 68.626635, "tags": [ "cillum", "do", "proident", "aute", "velit", "sint", "exercitation" ], "friends": [ { "id": 0, "name": "Mari Townsend" }, { "id": 1, "name": "Fleming Knight" }, { "id": 2, "name": "Carmella Reynolds" } ], "greeting": "Hello, Mcclain Ferguson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ac0f5b98e36e95fef", "index": 4461, "guid": "d9796aec-31b2-47f2-abf2-bf719e016d03", "isActive": false, "balance": "$1,524.07", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Marie Dunn", "gender": "female", "company": "LUXURIA", "email": "mariedunn@luxuria.com", "phone": "+1 (958) 554-3040", "address": "474 Euclid Avenue, Baden, Colorado, 6747", "about": "Veniam fugiat anim velit ut ad elit. Enim elit aliquip ullamco reprehenderit aute. Ad occaecat cillum commodo aliquip voluptate ullamco occaecat et irure cillum labore. Proident elit sint adipisicing laborum amet nostrud veniam ipsum ut nulla dolore.\r\n", "registered": "2014-01-07T04:53:43-13:00", "latitude": 31.623537, "longitude": 37.987151, "tags": [ "occaecat", "do", "qui", "aliquip", "duis", "id", "elit" ], "friends": [ { "id": 0, "name": "Marsha Graham" }, { "id": 1, "name": "Odessa Vincent" }, { "id": 2, "name": "Marylou Ellison" } ], "greeting": "Hello, Marie Dunn! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2acea27b2c29119590", "index": 4462, "guid": "94ee358b-0d4b-431d-abb1-2ceea7a6389a", "isActive": true, "balance": "$3,431.56", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Guthrie Armstrong", "gender": "male", "company": "APEXIA", "email": "guthriearmstrong@apexia.com", "phone": "+1 (875) 459-2195", "address": "806 Bushwick Place, Retsof, Idaho, 7663", "about": "Nulla fugiat veniam pariatur nulla excepteur eiusmod reprehenderit ullamco ad cupidatat. Velit eiusmod tempor nulla minim excepteur nulla ullamco nostrud fugiat ipsum adipisicing duis qui veniam. Aliqua culpa do aute velit. Esse voluptate id laboris elit ullamco et elit adipisicing. Irure officia sint ut fugiat nostrud. Non ullamco incididunt culpa do reprehenderit Lorem quis ipsum id exercitation exercitation id ex quis.\r\n", "registered": "2014-04-22T09:51:41-12:00", "latitude": -21.836519, "longitude": 67.863064, "tags": [ "cupidatat", "minim", "consequat", "tempor", "laboris", "adipisicing", "nostrud" ], "friends": [ { "id": 0, "name": "Jannie Reid" }, { "id": 1, "name": "Saundra Sears" }, { "id": 2, "name": "Petty Anthony" } ], "greeting": "Hello, Guthrie Armstrong! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a6d76dcd54407799c", "index": 4463, "guid": "23b76e86-d14d-437f-918c-01a1662daaa5", "isActive": false, "balance": "$1,597.78", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Rachelle Myers", "gender": "female", "company": "ZENOLUX", "email": "rachellemyers@zenolux.com", "phone": "+1 (966) 527-2962", "address": "837 Brooklyn Road, Belgreen, Marshall Islands, 3754", "about": "Aliqua ad aliquip ad officia incididunt proident est nisi Lorem officia. Laborum irure irure Lorem incididunt voluptate et. Dolore dolor duis esse ullamco excepteur aliqua dolore esse culpa. Adipisicing non ad ea Lorem. Officia mollit incididunt culpa reprehenderit cillum tempor occaecat sit nulla in irure. Do minim aliquip amet duis cillum nisi exercitation. Irure amet esse elit commodo cupidatat sunt anim pariatur occaecat.\r\n", "registered": "2014-07-02T20:57:20-12:00", "latitude": -56.570516, "longitude": 92.548709, "tags": [ "sunt", "aliquip", "officia", "irure", "labore", "fugiat", "dolor" ], "friends": [ { "id": 0, "name": "Cummings Raymond" }, { "id": 1, "name": "Sargent Golden" }, { "id": 2, "name": "Eaton Roy" } ], "greeting": "Hello, Rachelle Myers! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ad9540546d7d119de", "index": 4464, "guid": "1de9b137-d34a-45ac-8437-638d68b0c719", "isActive": true, "balance": "$1,599.87", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Mcdaniel Clemons", "gender": "male", "company": "ENAUT", "email": "mcdanielclemons@enaut.com", "phone": "+1 (988) 508-2886", "address": "864 Vista Place, Fairacres, New York, 1116", "about": "Laborum sint qui deserunt ad laboris ex Lorem id excepteur. Labore sunt quis reprehenderit quis non aliquip cupidatat incididunt aute do elit tempor sunt. Voluptate Lorem mollit anim tempor eiusmod id consectetur aute.\r\n", "registered": "2014-01-07T13:01:42-13:00", "latitude": 48.627153, "longitude": 109.564644, "tags": [ "sint", "elit", "sint", "id", "officia", "occaecat", "deserunt" ], "friends": [ { "id": 0, "name": "Vang England" }, { "id": 1, "name": "Mcconnell Reyes" }, { "id": 2, "name": "Allison Shields" } ], "greeting": "Hello, Mcdaniel Clemons! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a93607af5ba9b5b81", "index": 4465, "guid": "8f42ba27-b5e1-4fbc-8b1c-c1ec08877733", "isActive": false, "balance": "$1,137.78", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Jenifer Tillman", "gender": "female", "company": "HAWKSTER", "email": "jenifertillman@hawkster.com", "phone": "+1 (911) 409-2326", "address": "321 Karweg Place, Trona, Guam, 2512", "about": "Sint consectetur exercitation aliquip officia et dolore ut. Cupidatat aute culpa ut pariatur dolore quis elit pariatur cillum quis non officia exercitation adipisicing. Dolore anim nostrud proident quis est veniam consequat exercitation exercitation nostrud. Fugiat ex aliquip mollit consectetur reprehenderit incididunt enim. Consectetur pariatur laborum ipsum est fugiat deserunt deserunt qui aute proident.\r\n", "registered": "2014-07-07T08:09:42-12:00", "latitude": -7.172985, "longitude": -32.85303, "tags": [ "veniam", "excepteur", "nulla", "dolor", "minim", "laborum", "reprehenderit" ], "friends": [ { "id": 0, "name": "Ilene Valentine" }, { "id": 1, "name": "Hattie Edwards" }, { "id": 2, "name": "Richardson Shelton" } ], "greeting": "Hello, Jenifer Tillman! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aed8bb6cf58851885", "index": 4466, "guid": "20d22a7f-b515-48ab-bed9-1d42cfd44f77", "isActive": true, "balance": "$3,990.00", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Mathis Soto", "gender": "male", "company": "GROK", "email": "mathissoto@grok.com", "phone": "+1 (890) 455-2114", "address": "656 Melba Court, Derwood, Virgin Islands, 7493", "about": "Eiusmod cupidatat eu pariatur occaecat eu culpa qui culpa est nulla nostrud consectetur. Ex proident duis ut ex ad Lorem eiusmod deserunt id Lorem consequat. Sint occaecat incididunt culpa amet nulla laborum aliquip ipsum ut cillum. Est exercitation occaecat ut minim proident. Lorem sit labore sunt culpa excepteur excepteur veniam consectetur irure velit laboris irure. Tempor aliqua et id sunt do ex qui do. Eiusmod Lorem fugiat minim Lorem duis do incididunt duis adipisicing.\r\n", "registered": "2014-09-19T15:04:34-12:00", "latitude": -15.920159, "longitude": -24.215986, "tags": [ "duis", "in", "veniam", "nulla", "enim", "cupidatat", "eiusmod" ], "friends": [ { "id": 0, "name": "Antonia Mccall" }, { "id": 1, "name": "Meghan Strong" }, { "id": 2, "name": "Trina Brown" } ], "greeting": "Hello, Mathis Soto! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2abcfe6ba0e6cb1f20", "index": 4467, "guid": "a7580672-93f9-4da6-8974-f936d7a4e08b", "isActive": true, "balance": "$3,024.37", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Wilkerson Gregory", "gender": "male", "company": "INQUALA", "email": "wilkersongregory@inquala.com", "phone": "+1 (832) 515-2716", "address": "283 Oliver Street, Chesapeake, Massachusetts, 9459", "about": "Tempor dolor qui occaecat proident do dolor et incididunt exercitation enim quis enim. Deserunt aliquip dolor pariatur excepteur consectetur. Occaecat magna occaecat cillum aliqua dolore quis adipisicing velit quis ea non excepteur.\r\n", "registered": "2014-06-01T06:34:25-12:00", "latitude": 30.195952, "longitude": -162.640285, "tags": [ "dolore", "nostrud", "magna", "nulla", "officia", "sunt", "laborum" ], "friends": [ { "id": 0, "name": "Benjamin Mccoy" }, { "id": 1, "name": "Patton Mcconnell" }, { "id": 2, "name": "Rosie Collier" } ], "greeting": "Hello, Wilkerson Gregory! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2abc06b7c567c573cf", "index": 4468, "guid": "0e16137f-931b-4323-b2ed-d3926cdbfe05", "isActive": true, "balance": "$1,708.87", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Norma Baxter", "gender": "female", "company": "INTRAWEAR", "email": "normabaxter@intrawear.com", "phone": "+1 (926) 573-2702", "address": "831 Central Avenue, Darlington, Utah, 6912", "about": "Dolore sit eu veniam commodo tempor nostrud minim non amet deserunt. Tempor minim exercitation minim duis qui occaecat labore non. Ex id amet sit officia officia do et elit ipsum qui amet anim culpa. Ipsum voluptate nostrud adipisicing nulla ea adipisicing ipsum excepteur eu dolor voluptate cupidatat consectetur proident.\r\n", "registered": "2014-07-22T14:29:55-12:00", "latitude": -48.174553, "longitude": -128.774821, "tags": [ "aute", "ex", "eiusmod", "dolore", "non", "ut", "aliqua" ], "friends": [ { "id": 0, "name": "Rojas Blake" }, { "id": 1, "name": "Parrish Lancaster" }, { "id": 2, "name": "Buck Donovan" } ], "greeting": "Hello, Norma Baxter! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a7c5dfc969747c752", "index": 4469, "guid": "ce7a4d73-3cf6-4c2e-ac16-d4b935ac886a", "isActive": true, "balance": "$3,747.44", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Meyers Jenkins", "gender": "male", "company": "WAAB", "email": "meyersjenkins@waab.com", "phone": "+1 (807) 451-2305", "address": "483 Moore Street, Boykin, Montana, 6260", "about": "Excepteur velit laborum eiusmod ea ex proident sint esse sint nulla deserunt. Pariatur veniam exercitation eiusmod ea aliqua veniam id non qui minim quis do laboris amet. Officia ad aliquip aute laborum velit eiusmod reprehenderit reprehenderit culpa in ut nostrud est. Laborum dolore incididunt veniam proident aliquip nostrud duis voluptate. Eiusmod labore ipsum aliqua laborum. Ipsum minim incididunt magna consequat incididunt do sint est velit sint nulla cillum ut ea. Dolore occaecat dolore sint id.\r\n", "registered": "2014-05-02T00:35:57-12:00", "latitude": -22.579239, "longitude": -30.180336, "tags": [ "exercitation", "deserunt", "id", "veniam", "do", "consequat", "eu" ], "friends": [ { "id": 0, "name": "Brooks Pate" }, { "id": 1, "name": "Anthony Velez" }, { "id": 2, "name": "Barrett Higgins" } ], "greeting": "Hello, Meyers Jenkins! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a7f9ddfbf10408949", "index": 4470, "guid": "27a22ca5-2b75-4bd7-8111-7c6c514ff9f2", "isActive": false, "balance": "$3,795.82", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Best Berry", "gender": "male", "company": "DARWINIUM", "email": "bestberry@darwinium.com", "phone": "+1 (872) 400-3277", "address": "178 Lott Place, Sunnyside, Wisconsin, 6888", "about": "Amet officia amet deserunt culpa irure adipisicing in. Nulla sit nulla et esse incididunt. Pariatur commodo irure anim sint nulla commodo cillum. Velit ea sint est sit.\r\n", "registered": "2014-06-01T18:08:49-12:00", "latitude": 83.900141, "longitude": 140.945021, "tags": [ "quis", "deserunt", "nulla", "quis", "aliquip", "mollit", "do" ], "friends": [ { "id": 0, "name": "Park Peterson" }, { "id": 1, "name": "Cabrera Solomon" }, { "id": 2, "name": "Bird Nixon" } ], "greeting": "Hello, Best Berry! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ac713a67e2dbf144e", "index": 4471, "guid": "615099e9-6409-4a7a-9047-a882c831aa26", "isActive": true, "balance": "$3,926.34", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Felicia Fulton", "gender": "female", "company": "POLARAX", "email": "feliciafulton@polarax.com", "phone": "+1 (801) 452-2729", "address": "845 Cumberland Street, Kansas, Maine, 7115", "about": "Consectetur labore officia ex amet anim laborum non sunt et est excepteur cupidatat. Reprehenderit dolor veniam aliquip ullamco ullamco labore sit aute minim dolor irure esse esse anim. Id id Lorem aliqua aliquip cupidatat veniam.\r\n", "registered": "2014-06-19T06:24:30-12:00", "latitude": 2.825773, "longitude": -68.904314, "tags": [ "amet", "ad", "ullamco", "consectetur", "voluptate", "quis", "non" ], "friends": [ { "id": 0, "name": "Robert Roberson" }, { "id": 1, "name": "Sondra Stuart" }, { "id": 2, "name": "Olivia Chambers" } ], "greeting": "Hello, Felicia Fulton! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a5e069869ca2b709e", "index": 4472, "guid": "4db8d3c5-b698-4447-9866-88309a03b874", "isActive": true, "balance": "$3,397.41", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Etta Ellis", "gender": "female", "company": "ISOTRACK", "email": "ettaellis@isotrack.com", "phone": "+1 (948) 514-3242", "address": "698 Seabring Street, Gerton, Virginia, 5226", "about": "Laboris exercitation esse reprehenderit proident labore et labore qui cupidatat sit eiusmod non consectetur. Duis deserunt consequat proident elit non cupidatat quis nulla eu id exercitation velit. Sunt tempor aliquip ut non proident. Velit eu anim voluptate nostrud exercitation et nulla sunt tempor anim labore duis. Reprehenderit est ut proident velit esse sunt ullamco deserunt proident culpa nostrud esse proident.\r\n", "registered": "2014-07-24T18:36:19-12:00", "latitude": -17.717015, "longitude": -171.98173, "tags": [ "tempor", "incididunt", "eu", "incididunt", "laborum", "in", "culpa" ], "friends": [ { "id": 0, "name": "Mattie Lambert" }, { "id": 1, "name": "Anastasia Guerra" }, { "id": 2, "name": "Dorothy Stevens" } ], "greeting": "Hello, Etta Ellis! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ace1d79542cd6278c", "index": 4473, "guid": "fc979eb3-118c-44c1-9421-4df510a9a49a", "isActive": false, "balance": "$1,813.14", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Leblanc Hunt", "gender": "male", "company": "CEPRENE", "email": "leblanchunt@ceprene.com", "phone": "+1 (917) 440-3004", "address": "676 Emerson Place, Chamberino, Kentucky, 2505", "about": "In amet minim dolor consectetur ex amet laboris enim. Quis est consequat aute officia consequat cillum esse eiusmod nulla nisi laborum. Occaecat sint laborum magna cillum id enim reprehenderit. Ex sint velit sint sint ad velit elit elit ea proident qui.\r\n", "registered": "2014-06-22T14:00:26-12:00", "latitude": 8.27589, "longitude": 99.876337, "tags": [ "ut", "incididunt", "velit", "anim", "elit", "enim", "ad" ], "friends": [ { "id": 0, "name": "Weeks Guzman" }, { "id": 1, "name": "Hurley Hickman" }, { "id": 2, "name": "James Cooley" } ], "greeting": "Hello, Leblanc Hunt! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ac4992aa4ee87df31", "index": 4474, "guid": "23301f89-7a18-4157-996c-a6bc145a9c30", "isActive": false, "balance": "$2,306.30", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Vanessa Ortiz", "gender": "female", "company": "ORBEAN", "email": "vanessaortiz@orbean.com", "phone": "+1 (905) 463-3942", "address": "460 Corbin Place, Dyckesville, Connecticut, 8780", "about": "Lorem enim do enim incididunt enim laborum magna anim. Magna aute non esse eiusmod deserunt. Sint excepteur non anim laborum amet consectetur incididunt laboris veniam. Consectetur est tempor culpa enim cupidatat qui est ad magna eu. Est ad veniam aliquip id. Mollit aute culpa minim eiusmod anim aliquip ad.\r\n", "registered": "2014-03-28T12:24:48-13:00", "latitude": -71.184368, "longitude": -167.69322, "tags": [ "laboris", "minim", "ut", "anim", "ullamco", "occaecat", "ut" ], "friends": [ { "id": 0, "name": "Vaughan French" }, { "id": 1, "name": "Lina Carver" }, { "id": 2, "name": "Singleton Hughes" } ], "greeting": "Hello, Vanessa Ortiz! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2af476dbd5329dfa36", "index": 4475, "guid": "53fecd89-67d5-4f43-87f6-a00068bcb4d0", "isActive": true, "balance": "$2,346.10", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Fox Acosta", "gender": "male", "company": "MICROLUXE", "email": "foxacosta@microluxe.com", "phone": "+1 (823) 405-3828", "address": "748 Lorimer Street, Jacumba, Mississippi, 8097", "about": "Voluptate elit in ea magna laborum reprehenderit laborum esse. Dolor ex ea laborum minim ipsum ullamco anim id velit et. Sint ipsum exercitation laborum magna duis ut duis exercitation. Dolore reprehenderit id eu dolor ullamco mollit commodo quis laboris magna excepteur. Aliqua amet ullamco quis sunt. Dolor nulla ex laborum ex aute.\r\n", "registered": "2014-03-05T00:59:17-13:00", "latitude": -7.092408, "longitude": -48.906512, "tags": [ "veniam", "sunt", "duis", "magna", "cupidatat", "do", "et" ], "friends": [ { "id": 0, "name": "Warner Christian" }, { "id": 1, "name": "Lou Powers" }, { "id": 2, "name": "Mcguire Oliver" } ], "greeting": "Hello, Fox Acosta! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a9900f00668d98602", "index": 4476, "guid": "44d07fcd-0565-45a6-864a-50af311037c8", "isActive": false, "balance": "$2,238.85", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Lorie Douglas", "gender": "female", "company": "GINKOGENE", "email": "loriedouglas@ginkogene.com", "phone": "+1 (956) 534-2232", "address": "677 Grafton Street, Kapowsin, Washington, 4841", "about": "Anim fugiat eu adipisicing consequat aliqua consequat aliquip. Irure sint anim ea qui excepteur ullamco in sint exercitation Lorem veniam qui laborum. Minim in veniam est id nostrud reprehenderit sint exercitation sunt mollit voluptate eu exercitation. Reprehenderit excepteur eiusmod esse minim non nulla ad. Incididunt aliquip occaecat est veniam. Aute adipisicing duis sit veniam adipisicing pariatur.\r\n", "registered": "2014-04-16T18:48:48-12:00", "latitude": -25.642287, "longitude": -96.207436, "tags": [ "voluptate", "et", "consectetur", "excepteur", "cupidatat", "culpa", "magna" ], "friends": [ { "id": 0, "name": "Allyson Brewer" }, { "id": 1, "name": "Patsy Walsh" }, { "id": 2, "name": "White Herring" } ], "greeting": "Hello, Lorie Douglas! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a286b4d54bdf91029", "index": 4477, "guid": "4888b8a7-e2fc-4c99-af64-0aaece9aacca", "isActive": true, "balance": "$1,090.90", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Victoria Chaney", "gender": "female", "company": "NIMON", "email": "victoriachaney@nimon.com", "phone": "+1 (841) 435-3101", "address": "848 Chestnut Avenue, Rockbridge, Tennessee, 3680", "about": "Consectetur ex sint cupidatat consequat mollit minim ea nostrud ipsum et veniam duis quis irure. Anim velit cupidatat veniam pariatur do nostrud irure ut laboris. Deserunt voluptate elit duis pariatur voluptate.\r\n", "registered": "2014-04-26T02:47:31-12:00", "latitude": -41.501396, "longitude": -67.095714, "tags": [ "nulla", "dolore", "irure", "adipisicing", "ullamco", "anim", "incididunt" ], "friends": [ { "id": 0, "name": "Gillespie Hunter" }, { "id": 1, "name": "Hinton Cantrell" }, { "id": 2, "name": "Acevedo Monroe" } ], "greeting": "Hello, Victoria Chaney! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2adf091716b36b3ace", "index": 4478, "guid": "74c52a45-1b99-46e9-af0f-0dfef2c9ab6f", "isActive": false, "balance": "$1,345.97", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Stuart Harper", "gender": "male", "company": "MAXIMIND", "email": "stuartharper@maximind.com", "phone": "+1 (821) 584-2128", "address": "946 Thomas Street, Riverton, Alabama, 2850", "about": "Nulla dolore enim duis magna minim. Enim eu amet cillum amet ex aute. Lorem magna et sunt velit commodo qui.\r\n", "registered": "2014-01-08T04:14:39-13:00", "latitude": 44.230668, "longitude": -33.108162, "tags": [ "velit", "officia", "deserunt", "sint", "elit", "ad", "officia" ], "friends": [ { "id": 0, "name": "Amalia Stout" }, { "id": 1, "name": "Everett Glenn" }, { "id": 2, "name": "Frederick Goff" } ], "greeting": "Hello, Stuart Harper! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2af18f0089b424cd13", "index": 4479, "guid": "883e3be2-3836-42bd-b39f-536b9083b2ba", "isActive": true, "balance": "$3,603.31", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Bush Cannon", "gender": "male", "company": "ENTROPIX", "email": "bushcannon@entropix.com", "phone": "+1 (950) 590-2434", "address": "684 Forrest Street, Newkirk, Ohio, 1872", "about": "Non labore cupidatat sint fugiat id irure nulla quis laboris officia tempor anim. In magna cillum dolor cupidatat incididunt pariatur nostrud magna do irure. Pariatur anim nostrud laborum veniam laboris aliqua dolor proident non tempor. Minim adipisicing nulla ullamco ex aliqua duis. Adipisicing consectetur occaecat proident ex velit minim. Adipisicing sit esse sint minim enim eiusmod.\r\n", "registered": "2014-08-04T09:08:50-12:00", "latitude": 30.610169, "longitude": 158.070185, "tags": [ "reprehenderit", "in", "est", "minim", "dolore", "officia", "aliquip" ], "friends": [ { "id": 0, "name": "Fern Buchanan" }, { "id": 1, "name": "Katharine Trujillo" }, { "id": 2, "name": "Lottie Pittman" } ], "greeting": "Hello, Bush Cannon! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a6815405b5e4adf54", "index": 4480, "guid": "d2ef90b4-8570-4748-ab96-f58057cc5ed6", "isActive": false, "balance": "$2,379.59", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Young Crane", "gender": "male", "company": "FLUM", "email": "youngcrane@flum.com", "phone": "+1 (881) 579-2807", "address": "416 Loring Avenue, Deseret, Hawaii, 9068", "about": "Cillum esse commodo consectetur ad officia do ut sint. Laboris proident incididunt commodo irure ex est incididunt anim. In magna nostrud fugiat amet.\r\n", "registered": "2014-05-13T04:02:18-12:00", "latitude": 44.366943, "longitude": -7.042882, "tags": [ "veniam", "consequat", "enim", "duis", "tempor", "eu", "fugiat" ], "friends": [ { "id": 0, "name": "Wiley Pruitt" }, { "id": 1, "name": "Perry Holmes" }, { "id": 2, "name": "Lydia Bryant" } ], "greeting": "Hello, Young Crane! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a310f186cb8e8f49d", "index": 4481, "guid": "0f5cbfe3-3812-4a9e-ba59-c908751220f3", "isActive": false, "balance": "$1,095.37", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Colette Cummings", "gender": "female", "company": "KNEEDLES", "email": "colettecummings@kneedles.com", "phone": "+1 (883) 460-3899", "address": "787 Debevoise Street, Matthews, New Mexico, 9380", "about": "Tempor tempor consequat nisi ad commodo consectetur mollit pariatur incididunt duis. Consectetur anim pariatur ipsum nostrud in cupidatat deserunt exercitation et. Sint ex culpa occaecat id exercitation ipsum nisi laboris occaecat exercitation aute anim consectetur in. Ullamco dolor qui in enim excepteur ad dolor exercitation aute eu ex. Est excepteur cillum consequat fugiat. Excepteur commodo velit laboris eiusmod laboris. Proident aliqua mollit adipisicing dolor est laboris ut consectetur.\r\n", "registered": "2014-05-12T13:05:02-12:00", "latitude": 59.051607, "longitude": -53.669822, "tags": [ "enim", "aliquip", "nulla", "sint", "amet", "Lorem", "et" ], "friends": [ { "id": 0, "name": "Yates Gilmore" }, { "id": 1, "name": "Marina Powell" }, { "id": 2, "name": "Susanne Silva" } ], "greeting": "Hello, Colette Cummings! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a865462e1feaa30b8", "index": 4482, "guid": "b9a551ad-71df-411b-af83-3e1c31936a2a", "isActive": false, "balance": "$3,276.08", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Ellen Wong", "gender": "female", "company": "UPLINX", "email": "ellenwong@uplinx.com", "phone": "+1 (839) 483-2294", "address": "123 Dank Court, Brecon, Maryland, 5263", "about": "Id ullamco officia voluptate aliquip ullamco reprehenderit. Consequat cillum cupidatat commodo nulla culpa excepteur duis labore anim dolore. Velit ex in sit nisi incididunt est non irure adipisicing cupidatat eu eiusmod reprehenderit. Dolore sunt excepteur labore sit mollit in velit proident proident elit sunt cupidatat do.\r\n", "registered": "2014-09-13T02:48:22-12:00", "latitude": 32.334437, "longitude": -150.422815, "tags": [ "est", "consectetur", "proident", "pariatur", "est", "qui", "laborum" ], "friends": [ { "id": 0, "name": "Bartlett Hood" }, { "id": 1, "name": "Harriett Herrera" }, { "id": 2, "name": "Penelope Hanson" } ], "greeting": "Hello, Ellen Wong! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a8b21f8090f30b092", "index": 4483, "guid": "f8c3795a-5e41-470b-9884-b0ac9f27e58b", "isActive": false, "balance": "$2,845.70", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Tammy Hammond", "gender": "female", "company": "EZENTIA", "email": "tammyhammond@ezentia.com", "phone": "+1 (954) 582-3971", "address": "623 Harman Street, Rossmore, Alaska, 4107", "about": "Non qui quis nisi duis nostrud sit ex eiusmod labore dolore. Est esse veniam fugiat irure amet aute veniam labore eiusmod minim nostrud. Nostrud amet anim magna veniam qui ut duis magna cupidatat. Lorem fugiat dolore pariatur dolor. Dolor fugiat labore aliqua ea qui veniam ad anim dolore excepteur.\r\n", "registered": "2014-07-19T18:50:34-12:00", "latitude": -76.907073, "longitude": -149.689875, "tags": [ "ea", "cillum", "incididunt", "eiusmod", "Lorem", "quis", "sint" ], "friends": [ { "id": 0, "name": "Berger Burnett" }, { "id": 1, "name": "Dunn Barr" }, { "id": 2, "name": "Beach Bradley" } ], "greeting": "Hello, Tammy Hammond! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa50427f9086b8d34", "index": 4484, "guid": "d7f6f495-832a-4ff0-bb59-96c1e5acb566", "isActive": true, "balance": "$1,737.85", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Leah Howard", "gender": "female", "company": "ZENTIA", "email": "leahhoward@zentia.com", "phone": "+1 (995) 557-2602", "address": "635 Homecrest Avenue, Gwynn, Arizona, 9548", "about": "Commodo incididunt reprehenderit incididunt Lorem elit cillum qui deserunt. Eiusmod occaecat ex et deserunt est amet ullamco do duis Lorem dolor enim. Deserunt nostrud Lorem ut pariatur nostrud commodo in quis ipsum. Est culpa fugiat culpa occaecat est consectetur sunt enim laboris velit.\r\n", "registered": "2014-04-13T17:14:03-12:00", "latitude": 21.156362, "longitude": -140.702865, "tags": [ "laborum", "consequat", "dolore", "pariatur", "laborum", "occaecat", "aliquip" ], "friends": [ { "id": 0, "name": "Ebony Webster" }, { "id": 1, "name": "Amanda Weber" }, { "id": 2, "name": "Nielsen Faulkner" } ], "greeting": "Hello, Leah Howard! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a76e8f6ec7dff8cc2", "index": 4485, "guid": "1a6343d9-cb8c-4e60-b294-eeb5102001e4", "isActive": true, "balance": "$2,079.72", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Glover Richardson", "gender": "male", "company": "BUZZMAKER", "email": "gloverrichardson@buzzmaker.com", "phone": "+1 (901) 487-2358", "address": "873 Noll Street, Westmoreland, Federated States Of Micronesia, 7868", "about": "Minim proident officia do labore minim amet nisi exercitation duis nisi ut. Adipisicing excepteur sunt aute id eu magna nostrud duis aliquip Lorem nostrud incididunt. Reprehenderit magna duis culpa dolore anim aute nostrud id occaecat reprehenderit.\r\n", "registered": "2014-05-01T16:10:54-12:00", "latitude": -0.690298, "longitude": -49.290881, "tags": [ "fugiat", "occaecat", "Lorem", "ullamco", "ea", "consectetur", "cupidatat" ], "friends": [ { "id": 0, "name": "Camacho Hess" }, { "id": 1, "name": "Pennington Olson" }, { "id": 2, "name": "Owens Ferrell" } ], "greeting": "Hello, Glover Richardson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a371591f3dd21d6cd", "index": 4486, "guid": "a57b44ad-ae39-4354-b7f4-cc2a86ead7c4", "isActive": false, "balance": "$2,149.62", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Cathleen Blevins", "gender": "female", "company": "IMAGEFLOW", "email": "cathleenblevins@imageflow.com", "phone": "+1 (915) 465-3414", "address": "290 Jaffray Street, Dragoon, Oklahoma, 1280", "about": "Aliqua labore incididunt ex labore culpa aliquip tempor officia irure consequat duis do elit. Mollit qui anim elit elit fugiat in irure ad pariatur occaecat nisi nostrud id. Ea incididunt ullamco laborum veniam do duis sit pariatur eu dolore. Duis proident ut velit deserunt veniam. Ipsum eu cupidatat dolore minim proident ullamco sunt sunt nisi. Labore pariatur dolor labore sunt mollit cillum aliquip ad magna officia esse est exercitation. Tempor cillum quis cillum anim consectetur velit proident consequat enim ullamco laborum sunt.\r\n", "registered": "2014-02-13T10:22:27-13:00", "latitude": -37.749858, "longitude": -139.775486, "tags": [ "magna", "aliquip", "non", "ut", "ipsum", "sunt", "dolore" ], "friends": [ { "id": 0, "name": "Knox Andrews" }, { "id": 1, "name": "Desiree Campos" }, { "id": 2, "name": "Herring Dean" } ], "greeting": "Hello, Cathleen Blevins! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a12b98475f86a7a88", "index": 4487, "guid": "62a5bcb4-8b6c-4ff0-ba03-a4934e919268", "isActive": false, "balance": "$3,489.64", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Eloise Cotton", "gender": "female", "company": "FUTURIZE", "email": "eloisecotton@futurize.com", "phone": "+1 (853) 544-2781", "address": "536 Meserole Street, Woodburn, Michigan, 255", "about": "Fugiat voluptate in occaecat enim elit eu. Minim commodo irure voluptate Lorem. Commodo fugiat sunt consequat enim sit nulla ut aliqua. Occaecat sint culpa magna culpa elit culpa in reprehenderit nostrud et ea occaecat dolore. Ullamco eu commodo excepteur anim Lorem do ad.\r\n", "registered": "2014-06-12T08:34:57-12:00", "latitude": 62.504944, "longitude": 131.338556, "tags": [ "commodo", "aute", "anim", "pariatur", "sit", "incididunt", "dolor" ], "friends": [ { "id": 0, "name": "Justice Winters" }, { "id": 1, "name": "Casey Payne" }, { "id": 2, "name": "House Puckett" } ], "greeting": "Hello, Eloise Cotton! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a830ef32c20e67d9e", "index": 4488, "guid": "9de74509-5769-48a3-9f85-c9d09cee82b0", "isActive": false, "balance": "$1,998.92", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Alvarado Finley", "gender": "male", "company": "MAKINGWAY", "email": "alvaradofinley@makingway.com", "phone": "+1 (968) 486-2928", "address": "428 Myrtle Avenue, Hampstead, Kansas, 7432", "about": "Magna non exercitation mollit exercitation cillum ipsum ex ad dolor sint eu. Proident laboris quis pariatur reprehenderit commodo Lorem magna magna occaecat enim duis excepteur est cillum. Nulla cupidatat ut consequat sint reprehenderit sunt cupidatat adipisicing irure. Incididunt magna qui laborum laborum officia aliquip irure elit Lorem consectetur enim ullamco eiusmod ad. Velit deserunt quis consectetur culpa ullamco esse nisi exercitation ipsum consectetur. Consequat reprehenderit anim enim incididunt. Consequat occaecat cillum excepteur laboris dolor reprehenderit nisi reprehenderit cupidatat.\r\n", "registered": "2014-06-20T11:42:50-12:00", "latitude": -49.347054, "longitude": -161.711638, "tags": [ "dolore", "fugiat", "exercitation", "cillum", "incididunt", "id", "anim" ], "friends": [ { "id": 0, "name": "Reva Conrad" }, { "id": 1, "name": "Haley Allison" }, { "id": 2, "name": "Beverly Dennis" } ], "greeting": "Hello, Alvarado Finley! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2acf7196eaee890aa9", "index": 4489, "guid": "8ac1da02-11e5-44f7-b060-fc3e5e0be95d", "isActive": false, "balance": "$1,998.54", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Ingram Bright", "gender": "male", "company": "PLEXIA", "email": "ingrambright@plexia.com", "phone": "+1 (873) 482-3871", "address": "365 Bush Street, Clinton, South Dakota, 3454", "about": "Dolor eiusmod velit id ut et non nulla consectetur laboris ipsum ullamco. Cillum labore voluptate cupidatat velit mollit pariatur laboris esse in culpa deserunt minim deserunt. Amet laborum ullamco sit cillum cillum qui. Consectetur mollit culpa sit Lorem ullamco anim ullamco excepteur cupidatat.\r\n", "registered": "2014-07-03T18:50:53-12:00", "latitude": 48.252451, "longitude": -154.67463, "tags": [ "laboris", "pariatur", "laboris", "incididunt", "ullamco", "do", "deserunt" ], "friends": [ { "id": 0, "name": "Duke Freeman" }, { "id": 1, "name": "Jeri Vargas" }, { "id": 2, "name": "Harrison Fuentes" } ], "greeting": "Hello, Ingram Bright! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a9290d0b57c6f1900", "index": 4490, "guid": "f4f7993b-fc73-4347-95d3-d34593103063", "isActive": false, "balance": "$2,245.39", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Margery Giles", "gender": "female", "company": "PRISMATIC", "email": "margerygiles@prismatic.com", "phone": "+1 (884) 406-2567", "address": "470 Tilden Avenue, Rivereno, West Virginia, 5023", "about": "Mollit consectetur quis magna amet amet incididunt tempor. In consectetur nisi commodo culpa culpa. Voluptate aliquip commodo labore dolore sint ut laborum magna fugiat. Sit anim sint non fugiat nulla sit sit et pariatur cillum cillum amet sit magna. Exercitation dolore quis anim laboris id ut cupidatat.\r\n", "registered": "2014-02-13T11:25:54-13:00", "latitude": -60.361443, "longitude": 120.177196, "tags": [ "est", "exercitation", "irure", "ad", "occaecat", "eu", "sunt" ], "friends": [ { "id": 0, "name": "Wong Singleton" }, { "id": 1, "name": "Gibbs Farmer" }, { "id": 2, "name": "Bradford Lewis" } ], "greeting": "Hello, Margery Giles! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2aab341015ec977095", "index": 4491, "guid": "bbde264e-8d41-4e44-bd55-bce550b56d82", "isActive": false, "balance": "$3,891.55", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Glenda Castaneda", "gender": "female", "company": "TELPOD", "email": "glendacastaneda@telpod.com", "phone": "+1 (929) 443-3474", "address": "284 Ditmars Street, Newry, Texas, 2410", "about": "Eiusmod culpa fugiat dolore culpa aute anim. Dolore deserunt esse ut cupidatat. Tempor Lorem ex aliqua qui nostrud fugiat ipsum commodo excepteur fugiat minim consequat. Ut laboris amet anim ad reprehenderit ut ullamco laborum. Ea laboris ad dolore labore nisi reprehenderit amet aliqua officia reprehenderit excepteur anim. Exercitation laborum id quis qui eu et aute sint id amet voluptate est consectetur reprehenderit.\r\n", "registered": "2014-08-11T16:07:33-12:00", "latitude": -13.463186, "longitude": 158.110275, "tags": [ "ad", "magna", "irure", "aliquip", "non", "mollit", "cillum" ], "friends": [ { "id": 0, "name": "Henderson Burgess" }, { "id": 1, "name": "Weber Brooks" }, { "id": 2, "name": "Benita Boyer" } ], "greeting": "Hello, Glenda Castaneda! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a91f96a7a4fc8e978", "index": 4492, "guid": "c73bd865-fb1c-41fe-a7ab-62af75be1e51", "isActive": true, "balance": "$1,423.45", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Cherie Cortez", "gender": "female", "company": "GEEKUS", "email": "cheriecortez@geekus.com", "phone": "+1 (990) 503-2454", "address": "181 Dorset Street, Falmouth, Oregon, 3133", "about": "Labore incididunt adipisicing ipsum minim et eiusmod elit labore officia magna reprehenderit ex minim ullamco. Ex ad anim ad occaecat irure laboris. Cupidatat aute nisi ut eu irure dolor irure nulla pariatur. Qui exercitation laboris aliquip sint duis minim consectetur qui amet mollit est.\r\n", "registered": "2014-09-22T06:57:29-12:00", "latitude": -14.209572, "longitude": -128.597743, "tags": [ "amet", "consectetur", "nisi", "minim", "incididunt", "quis", "tempor" ], "friends": [ { "id": 0, "name": "Elnora Beck" }, { "id": 1, "name": "Salazar Hurley" }, { "id": 2, "name": "Arnold Macias" } ], "greeting": "Hello, Cherie Cortez! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a742447aa58e7dd6f", "index": 4493, "guid": "242984b7-40f8-4187-b3ba-8d92ec63a7f0", "isActive": true, "balance": "$3,878.56", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Sheena Buckner", "gender": "female", "company": "COLLAIRE", "email": "sheenabuckner@collaire.com", "phone": "+1 (912) 569-3699", "address": "379 Dictum Court, Ladera, Nevada, 8427", "about": "Ex esse sint quis ex pariatur do veniam esse irure est duis minim. Officia commodo sint laborum aliquip elit anim aliquip elit velit. In dolore aute qui non esse sint in amet irure deserunt cillum. Dolore id laborum nostrud et. In adipisicing adipisicing eiusmod anim proident laborum ipsum est adipisicing eu qui ipsum.\r\n", "registered": "2014-09-09T18:21:36-12:00", "latitude": -57.454234, "longitude": -162.688131, "tags": [ "Lorem", "cupidatat", "nulla", "in", "ipsum", "sint", "officia" ], "friends": [ { "id": 0, "name": "Trudy Cooke" }, { "id": 1, "name": "Ford Garrett" }, { "id": 2, "name": "Roberson Mcleod" } ], "greeting": "Hello, Sheena Buckner! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a2afba025e5480d32", "index": 4494, "guid": "dcf6af6d-cdd9-4ef2-b230-2ebb1f1ce3a3", "isActive": false, "balance": "$2,075.23", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Bradley Mcgee", "gender": "male", "company": "PHOTOBIN", "email": "bradleymcgee@photobin.com", "phone": "+1 (910) 531-2104", "address": "871 Harbor Lane, Lopezo, Minnesota, 6503", "about": "Aliqua duis magna laboris deserunt commodo dolore adipisicing ullamco aliqua reprehenderit. Labore cillum laboris cupidatat commodo exercitation est non mollit laboris nostrud culpa esse. Culpa velit fugiat enim qui sit.\r\n", "registered": "2014-04-08T20:32:40-12:00", "latitude": -89.2483, "longitude": -100.203367, "tags": [ "cupidatat", "magna", "consectetur", "est", "ea", "velit", "cillum" ], "friends": [ { "id": 0, "name": "Livingston Horne" }, { "id": 1, "name": "Greta Kinney" }, { "id": 2, "name": "Eileen Witt" } ], "greeting": "Hello, Bradley Mcgee! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a7c602bcbcb9d5a6c", "index": 4495, "guid": "08c4779b-c764-4028-bfef-9652efb9719b", "isActive": true, "balance": "$2,314.87", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Lela Perkins", "gender": "female", "company": "ZOID", "email": "lelaperkins@zoid.com", "phone": "+1 (884) 449-2561", "address": "423 Vanderveer Place, Wattsville, Missouri, 332", "about": "Enim labore enim anim nulla irure ut non nulla occaecat magna. Eu quis excepteur aliquip exercitation incididunt excepteur mollit est cillum. Lorem ut culpa elit consequat enim sunt tempor laborum. Anim occaecat laboris dolore id. Excepteur laboris esse dolor duis.\r\n", "registered": "2014-06-17T19:30:27-12:00", "latitude": -49.970283, "longitude": 91.793426, "tags": [ "non", "velit", "proident", "anim", "consequat", "eiusmod", "elit" ], "friends": [ { "id": 0, "name": "Opal Merrill" }, { "id": 1, "name": "Coffey Cherry" }, { "id": 2, "name": "Mandy Lucas" } ], "greeting": "Hello, Lela Perkins! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ae4d0f1b0f65b2a97", "index": 4496, "guid": "726595c5-d613-49ee-a526-e9c783598867", "isActive": true, "balance": "$3,980.65", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Ewing Hancock", "gender": "male", "company": "IMKAN", "email": "ewinghancock@imkan.com", "phone": "+1 (969) 472-2841", "address": "450 Macdougal Street, Navarre, Rhode Island, 9333", "about": "Nisi fugiat et duis est nisi. Duis sunt adipisicing irure consequat magna irure. Aliquip commodo dolor magna cillum laboris consequat ullamco dolor do eu. Excepteur pariatur nulla aute pariatur exercitation commodo est. Ea aliquip pariatur ipsum minim enim ullamco aute incididunt elit eu velit. Incididunt labore reprehenderit duis tempor ipsum nisi sint ipsum nisi. Minim mollit deserunt ad reprehenderit Lorem excepteur sint laboris officia ut non magna amet.\r\n", "registered": "2014-02-18T00:05:40-13:00", "latitude": -37.063784, "longitude": 116.095793, "tags": [ "dolor", "elit", "occaecat", "eiusmod", "ex", "pariatur", "non" ], "friends": [ { "id": 0, "name": "Bridges Wilkerson" }, { "id": 1, "name": "Arlene Zamora" }, { "id": 2, "name": "Petra Mack" } ], "greeting": "Hello, Ewing Hancock! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2abcbc7ba0b9abf74b", "index": 4497, "guid": "9d2b5688-683a-490a-abce-2055c77e5128", "isActive": true, "balance": "$3,741.19", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Finch Oneill", "gender": "male", "company": "BIOTICA", "email": "finchoneill@biotica.com", "phone": "+1 (971) 506-2308", "address": "887 Roosevelt Court, Hachita, Florida, 1570", "about": "Enim quis fugiat nostrud excepteur. Laboris nulla aliqua elit sunt veniam minim eu nostrud eiusmod. Reprehenderit cupidatat minim mollit tempor dolor mollit ullamco consequat. Non voluptate anim aliquip deserunt officia sunt ex dolor nostrud id reprehenderit aliqua ipsum.\r\n", "registered": "2014-08-18T21:29:03-12:00", "latitude": 76.638886, "longitude": 94.772475, "tags": [ "adipisicing", "magna", "exercitation", "ullamco", "nostrud", "aliquip", "exercitation" ], "friends": [ { "id": 0, "name": "Espinoza Lawson" }, { "id": 1, "name": "Velasquez Thomas" }, { "id": 2, "name": "Ada Stein" } ], "greeting": "Hello, Finch Oneill! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ae0e739a00686c12d", "index": 4498, "guid": "82527651-6ad5-48df-b954-f37191699b64", "isActive": true, "balance": "$2,289.48", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Chang Jacobs", "gender": "male", "company": "MEDESIGN", "email": "changjacobs@medesign.com", "phone": "+1 (893) 542-3134", "address": "422 Gaylord Drive, Bagtown, North Carolina, 6377", "about": "Incididunt cupidatat enim enim ipsum sint exercitation incididunt do aliquip. Velit labore enim laboris tempor anim adipisicing cupidatat velit nisi minim sint qui. Est sunt fugiat sint culpa ad tempor amet proident ea culpa ad ea dolore aliquip. Do veniam sint nulla duis aute non tempor sint ullamco fugiat. Dolore minim laborum adipisicing in consequat esse labore incididunt. Anim incididunt minim pariatur in qui amet esse Lorem cupidatat magna id dolor aliquip consequat.\r\n", "registered": "2014-04-28T19:13:57-12:00", "latitude": 21.573814, "longitude": 2.23555, "tags": [ "sit", "laboris", "ullamco", "consectetur", "dolore", "ullamco", "pariatur" ], "friends": [ { "id": 0, "name": "Susan Malone" }, { "id": 1, "name": "Connie Lynch" }, { "id": 2, "name": "Carney Hendrix" } ], "greeting": "Hello, Chang Jacobs! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a5e70f20e29b1c170", "index": 4499, "guid": "9c863aa3-9aca-425a-9b2b-c9bdccf1cedd", "isActive": false, "balance": "$3,419.16", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Glenn Meyer", "gender": "male", "company": "HYPLEX", "email": "glennmeyer@hyplex.com", "phone": "+1 (984) 554-2172", "address": "819 Engert Avenue, Forestburg, New Hampshire, 1239", "about": "Elit est in fugiat tempor mollit tempor voluptate. Non ullamco consequat ut mollit veniam ea reprehenderit eu eiusmod pariatur veniam. Elit ad dolor duis cupidatat velit cillum elit laboris officia. Qui nisi occaecat esse ad. Esse enim pariatur do exercitation id exercitation duis mollit. Sunt id elit elit adipisicing nulla incididunt reprehenderit consectetur officia cillum tempor.\r\n", "registered": "2014-05-06T02:54:05-12:00", "latitude": -71.658579, "longitude": 121.760327, "tags": [ "minim", "occaecat", "nisi", "proident", "laboris", "tempor", "amet" ], "friends": [ { "id": 0, "name": "Gale Walton" }, { "id": 1, "name": "Cardenas Stanley" }, { "id": 2, "name": "Betsy Collins" } ], "greeting": "Hello, Glenn Meyer! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a697c7867a6a1a293", "index": 4500, "guid": "21ae1158-685d-4681-9736-44859febca25", "isActive": false, "balance": "$2,410.77", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Latisha Sosa", "gender": "female", "company": "NETROPIC", "email": "latishasosa@netropic.com", "phone": "+1 (850) 530-3991", "address": "225 Girard Street, Grazierville, Arkansas, 7012", "about": "Occaecat deserunt commodo commodo do ipsum est. Aliquip occaecat ea aliquip qui ex ipsum anim fugiat Lorem sit ut nisi veniam. Consectetur officia qui cupidatat commodo fugiat tempor aliqua excepteur amet et dolore et quis.\r\n", "registered": "2014-03-11T18:21:33-13:00", "latitude": -48.454473, "longitude": 22.611343, "tags": [ "cupidatat", "id", "ad", "consectetur", "ea", "excepteur", "cillum" ], "friends": [ { "id": 0, "name": "Fernandez Sampson" }, { "id": 1, "name": "Dena Cain" }, { "id": 2, "name": "Aurora Sawyer" } ], "greeting": "Hello, Latisha Sosa! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a08796eaf4810c40d", "index": 4501, "guid": "33c40e45-e91e-4c57-9ec5-3913e497e625", "isActive": true, "balance": "$2,382.94", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Robles Wilder", "gender": "male", "company": "ZERBINA", "email": "robleswilder@zerbina.com", "phone": "+1 (825) 461-3363", "address": "717 Forbell Street, Templeton, Iowa, 9474", "about": "Cillum ut do magna aliquip amet ex eu excepteur adipisicing aliqua enim excepteur aliqua. Ut ex magna aliqua commodo sint culpa duis laboris. Nisi eiusmod non Lorem dolore sit quis aliquip et elit esse sit.\r\n", "registered": "2014-02-04T02:04:17-13:00", "latitude": -33.071227, "longitude": -101.602934, "tags": [ "culpa", "velit", "minim", "et", "anim", "adipisicing", "veniam" ], "friends": [ { "id": 0, "name": "Maricela Mccray" }, { "id": 1, "name": "Nash Sanford" }, { "id": 2, "name": "Nola Cardenas" } ], "greeting": "Hello, Robles Wilder! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a8a0d383b896f09d2", "index": 4502, "guid": "83fbe955-1ddc-4a3d-93cf-59ead2feac8d", "isActive": false, "balance": "$3,633.60", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Mann Morrow", "gender": "male", "company": "CYCLONICA", "email": "mannmorrow@cyclonica.com", "phone": "+1 (992) 423-2672", "address": "760 Schenectady Avenue, Gibsonia, Nebraska, 3825", "about": "Aliqua voluptate tempor eu ipsum nostrud. Excepteur incididunt et esse mollit ad ex labore deserunt do do fugiat tempor. Culpa veniam pariatur exercitation proident enim ipsum consectetur deserunt.\r\n", "registered": "2014-05-04T17:23:23-12:00", "latitude": 89.511836, "longitude": -0.277023, "tags": [ "irure", "duis", "dolore", "est", "incididunt", "Lorem", "nisi" ], "friends": [ { "id": 0, "name": "Jan Livingston" }, { "id": 1, "name": "Lorna Hamilton" }, { "id": 2, "name": "Renee Shepherd" } ], "greeting": "Hello, Mann Morrow! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2adb2be638598af8ed", "index": 4503, "guid": "3c34547e-16da-457d-bc60-b6c8d463e5fe", "isActive": false, "balance": "$3,395.69", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Donaldson Clayton", "gender": "male", "company": "QOT", "email": "donaldsonclayton@qot.com", "phone": "+1 (887) 416-3182", "address": "173 Dewey Place, Why, District Of Columbia, 1305", "about": "Culpa duis aliquip sit tempor. Aliqua pariatur officia ut est quis veniam ut elit. Occaecat proident anim est voluptate officia minim.\r\n", "registered": "2014-05-31T12:10:59-12:00", "latitude": -85.401351, "longitude": 147.285505, "tags": [ "elit", "esse", "dolore", "esse", "anim", "adipisicing", "laborum" ], "friends": [ { "id": 0, "name": "Mckay Atkinson" }, { "id": 1, "name": "Sexton Clay" }, { "id": 2, "name": "Earline Whitehead" } ], "greeting": "Hello, Donaldson Clayton! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ad35a8bac7a40c9e8", "index": 4504, "guid": "cd0d0cca-31c3-4fee-b35d-867b270b7b86", "isActive": false, "balance": "$2,948.28", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Ramos Rush", "gender": "male", "company": "ISOSTREAM", "email": "ramosrush@isostream.com", "phone": "+1 (811) 489-3752", "address": "106 Banner Avenue, Elrama, New Jersey, 2985", "about": "Ut ullamco est irure elit labore labore non. Ipsum ut duis nulla enim cupidatat nulla commodo elit id aliqua commodo consequat. Dolor esse voluptate in nisi magna Lorem sit id qui eu excepteur sunt adipisicing. Enim fugiat voluptate consectetur pariatur incididunt eiusmod et. Anim ex commodo id irure.\r\n", "registered": "2014-09-08T06:54:03-12:00", "latitude": -16.079996, "longitude": -90.342943, "tags": [ "proident", "sit", "qui", "consectetur", "exercitation", "aliquip", "proident" ], "friends": [ { "id": 0, "name": "Wanda Hayden" }, { "id": 1, "name": "Buckley Wooten" }, { "id": 2, "name": "Staci Blankenship" } ], "greeting": "Hello, Ramos Rush! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a32e2e861a2fd37bc", "index": 4505, "guid": "938d25ca-9d6a-4562-90b0-2a3c1878e6f7", "isActive": true, "balance": "$2,968.85", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Sharpe Kent", "gender": "male", "company": "NEBULEAN", "email": "sharpekent@nebulean.com", "phone": "+1 (875) 547-3504", "address": "428 Hazel Court, Wilsonia, Palau, 6026", "about": "Eu labore ad sint pariatur pariatur mollit mollit cupidatat. Nulla irure ut occaecat id incididunt aliqua cillum minim magna enim cupidatat. Irure proident consectetur ut cillum fugiat quis cillum elit et eu commodo sint tempor voluptate. Laborum esse culpa velit exercitation magna. Ea laborum aliqua tempor sunt eiusmod veniam occaecat sunt nulla ullamco est elit excepteur. Enim ad proident nulla Lorem eiusmod enim anim enim proident et voluptate sunt tempor. Pariatur culpa dolor quis laboris.\r\n", "registered": "2014-03-17T18:29:31-13:00", "latitude": -71.822592, "longitude": -59.118537, "tags": [ "ipsum", "ullamco", "officia", "proident", "enim", "sit", "ad" ], "friends": [ { "id": 0, "name": "Tanisha Ramirez" }, { "id": 1, "name": "Hines Hardy" }, { "id": 2, "name": "Butler Ross" } ], "greeting": "Hello, Sharpe Kent! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a2cf70c44025095e9", "index": 4506, "guid": "eb320e79-7e6e-4dd6-bcd9-f7d484a28afc", "isActive": false, "balance": "$1,163.80", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Garrett Wade", "gender": "male", "company": "OHMNET", "email": "garrettwade@ohmnet.com", "phone": "+1 (894) 456-3030", "address": "696 Danforth Street, Leyner, Puerto Rico, 3734", "about": "Enim cupidatat occaecat sunt duis commodo anim exercitation voluptate labore non cupidatat sunt et. Do culpa commodo laborum culpa quis dolore nostrud dolore aliquip incididunt esse dolor sit. Tempor quis ullamco non officia.\r\n", "registered": "2014-04-08T07:25:29-12:00", "latitude": -29.975063, "longitude": 6.70851, "tags": [ "aliqua", "enim", "eiusmod", "officia", "aliquip", "ea", "do" ], "friends": [ { "id": 0, "name": "Beasley Cunningham" }, { "id": 1, "name": "Daphne Noble" }, { "id": 2, "name": "Sandy Montgomery" } ], "greeting": "Hello, Garrett Wade! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a8425370e7307e420", "index": 4507, "guid": "94ace944-2d6f-4060-b545-aea1aa8c0e86", "isActive": false, "balance": "$3,705.66", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Shepherd Tran", "gender": "male", "company": "AQUASSEUR", "email": "shepherdtran@aquasseur.com", "phone": "+1 (887) 572-2582", "address": "131 Bouck Court, Wacissa, California, 2017", "about": "Fugiat non sit nisi laboris pariatur proident aute dolore occaecat dolore aliquip incididunt pariatur. Quis commodo non cillum aliqua esse. Ut irure velit eu ex enim ullamco duis anim enim quis non aliqua ut. Dolore magna et cillum esse laborum sunt reprehenderit Lorem non id.\r\n", "registered": "2014-03-16T20:49:07-13:00", "latitude": -57.705772, "longitude": -104.179284, "tags": [ "est", "sunt", "culpa", "deserunt", "sit", "proident", "pariatur" ], "friends": [ { "id": 0, "name": "Nannie Valdez" }, { "id": 1, "name": "Rosalyn Hebert" }, { "id": 2, "name": "Lesa Simmons" } ], "greeting": "Hello, Shepherd Tran! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a10686358c8bee775", "index": 4508, "guid": "2d85b6c8-76c3-462e-8bbb-caf218b7cbc4", "isActive": false, "balance": "$3,562.26", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Carson Fox", "gender": "male", "company": "GOGOL", "email": "carsonfox@gogol.com", "phone": "+1 (877) 526-3062", "address": "157 Pleasant Place, Hiko, Vermont, 355", "about": "Do anim ullamco do eiusmod ut qui dolore in elit ut aliqua pariatur culpa. Proident esse in dolore amet dolor eu labore laboris voluptate adipisicing dolore. Veniam ad minim eiusmod sit excepteur consectetur commodo incididunt sit. Officia ea et quis esse duis duis est labore dolor dolor nulla excepteur incididunt. Ullamco irure Lorem ipsum incididunt labore occaecat ut labore velit deserunt nisi excepteur non Lorem. Mollit irure Lorem nostrud velit aliqua officia dolor ea et.\r\n", "registered": "2014-01-04T22:19:19-13:00", "latitude": -37.702535, "longitude": 111.702087, "tags": [ "culpa", "laboris", "dolore", "ipsum", "laborum", "ea", "exercitation" ], "friends": [ { "id": 0, "name": "Peck Mosley" }, { "id": 1, "name": "Paulette Cole" }, { "id": 2, "name": "Hallie Waters" } ], "greeting": "Hello, Carson Fox! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a37d9fcc5eb0317b4", "index": 4509, "guid": "15c7de7a-0386-41ee-9b08-fd7eef610b69", "isActive": false, "balance": "$2,796.25", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Manning Vega", "gender": "male", "company": "REMOLD", "email": "manningvega@remold.com", "phone": "+1 (978) 477-2856", "address": "914 Barlow Drive, Tuskahoma, Indiana, 1331", "about": "Aliquip laboris quis irure cupidatat esse sunt tempor. Do mollit in est fugiat non aute sunt. Tempor adipisicing elit non veniam ad aliqua labore proident ea in reprehenderit officia. Nulla occaecat eiusmod quis aliqua do qui cillum aliquip enim do. Consequat dolor culpa irure eu duis sunt est ex enim Lorem commodo.\r\n", "registered": "2014-08-21T19:16:43-12:00", "latitude": -88.407141, "longitude": 66.012173, "tags": [ "cillum", "proident", "eiusmod", "officia", "ipsum", "excepteur", "cupidatat" ], "friends": [ { "id": 0, "name": "Pruitt Madden" }, { "id": 1, "name": "Workman Bradford" }, { "id": 2, "name": "Bauer Slater" } ], "greeting": "Hello, Manning Vega! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ad062c0e2a34c8b61", "index": 4510, "guid": "8218c526-9054-42ab-a6d7-830616ca10ca", "isActive": true, "balance": "$3,551.93", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Bryan Maddox", "gender": "male", "company": "GENMOM", "email": "bryanmaddox@genmom.com", "phone": "+1 (802) 541-2886", "address": "906 Denton Place, Cazadero, Illinois, 8546", "about": "Veniam aliquip esse minim nostrud consequat ipsum. Sit irure incididunt quis do culpa. Quis officia voluptate culpa aute consectetur labore exercitation officia enim eiusmod consequat nisi id. Labore minim labore aliqua exercitation ea non culpa irure deserunt est occaecat pariatur velit aliqua. In ex ut aliqua minim ad laborum nulla tempor adipisicing exercitation minim tempor. Laboris est esse ipsum culpa anim aliqua officia qui eu. Eiusmod id magna laboris duis tempor non cupidatat mollit ipsum.\r\n", "registered": "2014-07-06T14:45:35-12:00", "latitude": -3.846754, "longitude": -157.077105, "tags": [ "est", "nulla", "ipsum", "aliqua", "irure", "eiusmod", "consequat" ], "friends": [ { "id": 0, "name": "Isabelle Ward" }, { "id": 1, "name": "Burns Rice" }, { "id": 2, "name": "Vilma Hendricks" } ], "greeting": "Hello, Bryan Maddox! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a89e578ee2b44ddd5", "index": 4511, "guid": "bcaaac2d-527d-4b04-9432-5b8bc05128a3", "isActive": true, "balance": "$1,225.29", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Hurst Morse", "gender": "male", "company": "EQUITOX", "email": "hurstmorse@equitox.com", "phone": "+1 (814) 509-3354", "address": "565 Dakota Place, Hiseville, South Carolina, 5712", "about": "Ullamco veniam eiusmod eu consequat Lorem fugiat velit dolor excepteur. Nulla proident esse ut ea. Tempor duis culpa ea occaecat. Sit eu proident amet ex ex ea voluptate eu culpa quis sit dolor. Magna aliquip quis commodo Lorem ut proident aliquip ut. Nulla nulla officia consectetur id culpa ullamco labore mollit.\r\n", "registered": "2014-03-22T03:05:14-13:00", "latitude": 65.251066, "longitude": 36.845465, "tags": [ "qui", "sunt", "duis", "adipisicing", "ad", "excepteur", "ullamco" ], "friends": [ { "id": 0, "name": "Blanchard James" }, { "id": 1, "name": "Cash Griffith" }, { "id": 2, "name": "Cheryl Webb" } ], "greeting": "Hello, Hurst Morse! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa92c6d9de63e74a3", "index": 4512, "guid": "e8873ea7-dd2b-4155-9670-65e8a120af47", "isActive": true, "balance": "$2,581.95", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Tracie Kirk", "gender": "female", "company": "ZILIDIUM", "email": "traciekirk@zilidium.com", "phone": "+1 (813) 433-3777", "address": "903 Seacoast Terrace, Avalon, American Samoa, 9530", "about": "Esse mollit aliquip est occaecat dolor laborum nulla incididunt duis laboris quis esse labore. Lorem cillum excepteur culpa dolor excepteur Lorem commodo in amet aute. Sunt qui reprehenderit velit elit qui. Adipisicing ad et aliquip proident aliqua non sint laborum eu ad. Sint amet minim esse commodo. Incididunt ex tempor ipsum tempor sit aliqua ullamco.\r\n", "registered": "2014-06-17T18:19:07-12:00", "latitude": -79.893523, "longitude": 168.860817, "tags": [ "irure", "voluptate", "et", "magna", "fugiat", "in", "exercitation" ], "friends": [ { "id": 0, "name": "Lindsey Rutledge" }, { "id": 1, "name": "Rose Baker" }, { "id": 2, "name": "Sherri Daniels" } ], "greeting": "Hello, Tracie Kirk! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a3ff3147bd3d741df", "index": 4513, "guid": "8ce77612-35f5-437e-9fb6-609ea02abc36", "isActive": true, "balance": "$3,691.34", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Dionne Wright", "gender": "female", "company": "GADTRON", "email": "dionnewright@gadtron.com", "phone": "+1 (914) 524-2478", "address": "511 Joralemon Street, Chesterfield, Delaware, 7949", "about": "Tempor velit excepteur reprehenderit ipsum exercitation est irure nisi non. Sunt anim labore velit tempor minim consequat aute incididunt reprehenderit velit do eu. Fugiat mollit reprehenderit incididunt id ea. Culpa id aliquip magna deserunt ullamco labore do nostrud officia. Anim consectetur ea minim labore ipsum nulla sint nostrud nisi magna incididunt.\r\n", "registered": "2014-02-28T04:37:07-13:00", "latitude": -70.833113, "longitude": 69.808818, "tags": [ "quis", "exercitation", "veniam", "ea", "in", "duis", "incididunt" ], "friends": [ { "id": 0, "name": "Gallagher Patel" }, { "id": 1, "name": "Rich Cook" }, { "id": 2, "name": "Ana Bullock" } ], "greeting": "Hello, Dionne Wright! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2af2a4862ced7af3d7", "index": 4514, "guid": "7ab000cc-312c-4f19-85e1-d50fe7d4cccf", "isActive": true, "balance": "$3,589.48", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Joyce Nicholson", "gender": "male", "company": "XYQAG", "email": "joycenicholson@xyqag.com", "phone": "+1 (875) 496-3733", "address": "776 Pitkin Avenue, Convent, Pennsylvania, 844", "about": "Officia consequat adipisicing est elit consequat tempor ullamco reprehenderit magna et adipisicing Lorem nisi. Amet tempor esse quis aliquip pariatur eu aliquip nisi nulla anim. Sint consequat consequat minim eu amet adipisicing id adipisicing nostrud nisi consequat quis anim ex.\r\n", "registered": "2014-04-19T00:53:40-12:00", "latitude": -38.73378, "longitude": -50.172939, "tags": [ "proident", "deserunt", "mollit", "do", "culpa", "veniam", "laborum" ], "friends": [ { "id": 0, "name": "Wade Grimes" }, { "id": 1, "name": "Mendez Olsen" }, { "id": 2, "name": "Contreras Ramsey" } ], "greeting": "Hello, Joyce Nicholson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a1c93ef4277722b94", "index": 4515, "guid": "3ad81788-ef12-44cc-94a6-b1feabbd5e4d", "isActive": true, "balance": "$2,338.21", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Melody Barrera", "gender": "female", "company": "HELIXO", "email": "melodybarrera@helixo.com", "phone": "+1 (847) 426-2326", "address": "844 Monroe Place, Jardine, Georgia, 8574", "about": "Ullamco aute ullamco ad in commodo irure ullamco minim. Laboris laboris anim officia eu. Velit non do amet et esse Lorem id voluptate irure culpa exercitation magna sunt. Sunt est elit ipsum et officia do do proident.\r\n", "registered": "2014-06-14T13:43:30-12:00", "latitude": 15.893007, "longitude": 161.120353, "tags": [ "reprehenderit", "culpa", "incididunt", "aliquip", "dolor", "et", "nisi" ], "friends": [ { "id": 0, "name": "Rosa Moses" }, { "id": 1, "name": "Puckett Huff" }, { "id": 2, "name": "Nikki Mcintyre" } ], "greeting": "Hello, Melody Barrera! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a8a22601747e2acb3", "index": 4516, "guid": "515940a4-fdc9-47fc-8184-32444e8227ef", "isActive": false, "balance": "$3,483.02", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Mccall Hicks", "gender": "male", "company": "VIDTO", "email": "mccallhicks@vidto.com", "phone": "+1 (957) 410-2688", "address": "101 Pierrepont Street, Berwind, North Dakota, 1877", "about": "Do officia irure velit dolore magna nulla aliquip irure laborum. Eu sit eiusmod pariatur velit ad magna commodo cillum incididunt sint est ullamco. Esse cillum nisi esse laborum amet nulla ad exercitation do reprehenderit. Ut amet cillum nostrud id sit enim aliqua do aute mollit qui. Cillum deserunt id nostrud ea eu nisi minim ad et do aliqua ullamco non veniam. Aute exercitation proident ullamco cupidatat ad nisi non ut cupidatat ullamco. Ullamco proident consectetur occaecat aliquip eu minim irure in sunt officia tempor consectetur fugiat.\r\n", "registered": "2014-08-09T19:59:56-12:00", "latitude": 42.175022, "longitude": -154.062396, "tags": [ "incididunt", "ad", "irure", "nostrud", "elit", "exercitation", "duis" ], "friends": [ { "id": 0, "name": "Nora Carlson" }, { "id": 1, "name": "Stafford Ayers" }, { "id": 2, "name": "Allison Leach" } ], "greeting": "Hello, Mccall Hicks! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a83c4deee09b313bc", "index": 4517, "guid": "2dd82f75-98d8-4f01-a50d-7b15ae3268bd", "isActive": true, "balance": "$2,605.06", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Carlene Lyons", "gender": "female", "company": "BEZAL", "email": "carlenelyons@bezal.com", "phone": "+1 (980) 599-3476", "address": "217 Cheever Place, Nescatunga, Louisiana, 7102", "about": "Do dolore aliquip irure consequat sit dolor aliquip non nulla. Consectetur pariatur sunt et in qui. Ea nulla esse anim mollit consectetur culpa pariatur esse minim. Elit sint eiusmod irure dolore enim eu elit ullamco officia exercitation enim dolore pariatur proident.\r\n", "registered": "2014-03-03T11:07:18-13:00", "latitude": -55.682378, "longitude": 68.300024, "tags": [ "consequat", "incididunt", "do", "elit", "ut", "consectetur", "est" ], "friends": [ { "id": 0, "name": "Keller Robles" }, { "id": 1, "name": "Maria Curry" }, { "id": 2, "name": "Holmes Marquez" } ], "greeting": "Hello, Carlene Lyons! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a83eb369f9e901839", "index": 4518, "guid": "966c0b99-9249-4168-a803-4f0ec1caeec7", "isActive": true, "balance": "$1,327.80", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Britt Acevedo", "gender": "male", "company": "ENTOGROK", "email": "brittacevedo@entogrok.com", "phone": "+1 (999) 590-3748", "address": "866 Amity Street, Westwood, Northern Mariana Islands, 6558", "about": "Commodo cupidatat sunt non velit fugiat exercitation cillum et do do labore excepteur ipsum. Labore pariatur elit minim irure sint irure non esse reprehenderit. Proident sit non commodo incididunt aliqua do do do consectetur consequat consectetur. Cillum velit fugiat Lorem eiusmod elit.\r\n", "registered": "2014-02-28T12:42:59-13:00", "latitude": -5.281692, "longitude": -142.442049, "tags": [ "excepteur", "consectetur", "ullamco", "elit", "dolore", "exercitation", "sint" ], "friends": [ { "id": 0, "name": "Emily Reeves" }, { "id": 1, "name": "Acosta Irwin" }, { "id": 2, "name": "Laura Terrell" } ], "greeting": "Hello, Britt Acevedo! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a796c344551e4c5cb", "index": 4519, "guid": "5193cf3e-c071-4e6b-886f-fff3ec07bc76", "isActive": true, "balance": "$2,237.89", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Hester Schmidt", "gender": "female", "company": "ZANILLA", "email": "hesterschmidt@zanilla.com", "phone": "+1 (839) 492-3168", "address": "183 Taaffe Place, Camas, Colorado, 7892", "about": "Laboris labore nulla dolore laboris in ad eiusmod voluptate irure consectetur qui. Laboris proident aliquip in ex est reprehenderit esse commodo sint mollit occaecat. Dolor sint pariatur excepteur commodo eu aliqua cillum occaecat dolor Lorem eiusmod. Culpa anim qui occaecat incididunt ex esse Lorem nulla do officia est ex.\r\n", "registered": "2014-02-27T18:57:20-13:00", "latitude": -4.833865, "longitude": 119.038487, "tags": [ "occaecat", "sunt", "laboris", "quis", "est", "sunt", "anim" ], "friends": [ { "id": 0, "name": "Murray Delaney" }, { "id": 1, "name": "Cross Wyatt" }, { "id": 2, "name": "Noel Lindsey" } ], "greeting": "Hello, Hester Schmidt! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2af68b081c1e7439fc", "index": 4520, "guid": "c94ac4ac-267a-4c04-8b23-4a16a5ab38b5", "isActive": false, "balance": "$1,640.89", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Elsa Head", "gender": "female", "company": "SEQUITUR", "email": "elsahead@sequitur.com", "phone": "+1 (942) 463-3845", "address": "722 Dewitt Avenue, Brandermill, Idaho, 2534", "about": "Aliqua amet aliquip est proident sit reprehenderit culpa officia eiusmod. Elit tempor ullamco nisi dolor Lorem. Cupidatat irure ullamco cupidatat ullamco. Et consequat laboris minim sint. Sit ad velit labore ad deserunt. Velit labore culpa laboris culpa laboris incididunt tempor. Qui duis Lorem dolore ad velit exercitation ad ea duis et occaecat.\r\n", "registered": "2014-06-11T18:00:21-12:00", "latitude": 2.402732, "longitude": -49.735198, "tags": [ "sunt", "id", "tempor", "nulla", "consectetur", "adipisicing", "eu" ], "friends": [ { "id": 0, "name": "Ashlee Morrison" }, { "id": 1, "name": "Winnie Crawford" }, { "id": 2, "name": "Martin Espinoza" } ], "greeting": "Hello, Elsa Head! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a90454c540afee32f", "index": 4521, "guid": "667c52d0-e7c9-4bfa-b3ff-a8467e35b82b", "isActive": false, "balance": "$2,660.36", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Aida Sullivan", "gender": "female", "company": "PROSELY", "email": "aidasullivan@prosely.com", "phone": "+1 (844) 524-3435", "address": "669 Guider Avenue, Sunriver, Marshall Islands, 5579", "about": "Nulla exercitation Lorem magna do laboris cupidatat nostrud non. Magna officia do ipsum quis duis ut. Ullamco Lorem nisi est aliqua proident ea anim pariatur aliquip aute minim.\r\n", "registered": "2014-04-21T21:23:53-12:00", "latitude": 25.097733, "longitude": -97.214311, "tags": [ "aliquip", "anim", "et", "non", "cillum", "labore", "laboris" ], "friends": [ { "id": 0, "name": "Dorsey Day" }, { "id": 1, "name": "Emilia Harmon" }, { "id": 2, "name": "Ester English" } ], "greeting": "Hello, Aida Sullivan! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a9e68575114c21ff9", "index": 4522, "guid": "dfc1ff31-b6dd-456f-820f-3fcde980b952", "isActive": false, "balance": "$1,382.81", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Mara Buckley", "gender": "female", "company": "WATERBABY", "email": "marabuckley@waterbaby.com", "phone": "+1 (811) 482-3237", "address": "124 Bartlett Place, Whitehaven, New York, 6647", "about": "Tempor consectetur sunt enim enim. Veniam qui fugiat adipisicing mollit aute in duis cillum aute excepteur adipisicing. Et velit tempor tempor qui do eiusmod ipsum veniam sit eiusmod nisi fugiat. Nisi sunt voluptate nulla do dolor ullamco.\r\n", "registered": "2014-07-16T12:24:47-12:00", "latitude": -4.603269, "longitude": -36.900512, "tags": [ "id", "enim", "eiusmod", "qui", "aute", "labore", "nulla" ], "friends": [ { "id": 0, "name": "Schultz Haley" }, { "id": 1, "name": "Tamika Mullen" }, { "id": 2, "name": "Roslyn Bray" } ], "greeting": "Hello, Mara Buckley! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a608724fff43551f4", "index": 4523, "guid": "1a2d4bec-cfc2-4ff2-be2b-4f8decb97c2e", "isActive": false, "balance": "$2,325.14", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Hernandez Gay", "gender": "male", "company": "FROLIX", "email": "hernandezgay@frolix.com", "phone": "+1 (980) 456-3683", "address": "439 Harkness Avenue, Cobbtown, Guam, 7149", "about": "Labore ipsum commodo enim Lorem ad ad cupidatat in irure ipsum aliqua eiusmod pariatur Lorem. Ad quis ut aute esse laboris laboris irure enim aliqua Lorem mollit mollit. Consectetur occaecat id exercitation ea dolor nisi deserunt commodo amet esse anim irure deserunt incididunt. Enim officia occaecat consequat esse amet deserunt proident reprehenderit irure veniam et do anim ut. Minim quis do amet non sit cillum dolor occaecat esse ullamco dolor veniam. Cillum eu dolor cupidatat pariatur esse. Culpa velit labore sunt ullamco culpa aute amet magna mollit cillum duis cupidatat nulla consequat.\r\n", "registered": "2014-05-10T00:11:09-12:00", "latitude": -37.888532, "longitude": -86.259459, "tags": [ "ullamco", "cillum", "qui", "elit", "minim", "velit", "proident" ], "friends": [ { "id": 0, "name": "Francine Pitts" }, { "id": 1, "name": "Jerri Vance" }, { "id": 2, "name": "Underwood Kidd" } ], "greeting": "Hello, Hernandez Gay! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aecf91bfdf3c215d7", "index": 4524, "guid": "a0f2c298-37d2-4c36-b7d2-d928e49a8218", "isActive": false, "balance": "$3,676.79", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Amber Bridges", "gender": "female", "company": "MANGLO", "email": "amberbridges@manglo.com", "phone": "+1 (998) 583-2791", "address": "829 Tech Place, Sehili, Virgin Islands, 5357", "about": "Ipsum aliquip incididunt cupidatat velit officia veniam ullamco Lorem reprehenderit irure quis. Lorem sit et tempor fugiat dolore cillum consectetur dolor do reprehenderit fugiat amet adipisicing. Proident anim magna adipisicing proident eu. Incididunt exercitation aliqua labore duis cupidatat aute excepteur do. Deserunt cillum id esse occaecat mollit excepteur non aliqua cillum.\r\n", "registered": "2014-05-03T13:23:09-12:00", "latitude": 30.341893, "longitude": 106.469411, "tags": [ "reprehenderit", "velit", "ullamco", "excepteur", "occaecat", "consectetur", "Lorem" ], "friends": [ { "id": 0, "name": "Carolyn Alford" }, { "id": 1, "name": "Billie Riley" }, { "id": 2, "name": "Wise Brennan" } ], "greeting": "Hello, Amber Bridges! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a15120634d5db1329", "index": 4525, "guid": "3d9532de-5d11-4173-8c7b-7eb4916f5215", "isActive": false, "balance": "$1,389.75", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Gilbert Austin", "gender": "male", "company": "BITREX", "email": "gilbertaustin@bitrex.com", "phone": "+1 (891) 464-2889", "address": "219 Orient Avenue, Kaka, Massachusetts, 1413", "about": "Pariatur ut id nisi exercitation sunt labore ut voluptate non sint eiusmod consectetur. Labore ipsum voluptate mollit proident Lorem in pariatur consectetur ipsum consequat sint duis. Occaecat laborum magna duis voluptate minim cupidatat ea. Officia sint adipisicing ullamco quis pariatur labore mollit sit in non labore sit cupidatat quis. Amet ad mollit officia ex nisi duis laboris incididunt.\r\n", "registered": "2014-04-24T04:53:02-12:00", "latitude": 5.658097, "longitude": 178.551059, "tags": [ "ipsum", "eiusmod", "reprehenderit", "exercitation", "ad", "consectetur", "sint" ], "friends": [ { "id": 0, "name": "Roberts Oneil" }, { "id": 1, "name": "Amelia Richard" }, { "id": 2, "name": "Janine Casey" } ], "greeting": "Hello, Gilbert Austin! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a44428490a98a7e28", "index": 4526, "guid": "cf597201-557b-42e2-98b4-4054b834234b", "isActive": true, "balance": "$1,170.51", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Caroline Figueroa", "gender": "female", "company": "POSHOME", "email": "carolinefigueroa@poshome.com", "phone": "+1 (946) 556-2592", "address": "667 Kansas Place, Calverton, Utah, 3216", "about": "Exercitation sit quis Lorem proident dolore sunt consectetur ea aute mollit sunt. Amet elit Lorem tempor tempor nostrud adipisicing ad eiusmod nostrud. Dolore labore ullamco est do ex nulla tempor est excepteur nisi duis commodo. Ut dolor anim irure qui. Eu dolore aliqua in sit culpa incididunt excepteur.\r\n", "registered": "2014-08-18T16:23:49-12:00", "latitude": -17.932383, "longitude": -71.947579, "tags": [ "labore", "culpa", "dolore", "exercitation", "incididunt", "officia", "velit" ], "friends": [ { "id": 0, "name": "Minerva Gallagher" }, { "id": 1, "name": "Goodwin Copeland" }, { "id": 2, "name": "Sharp Gould" } ], "greeting": "Hello, Caroline Figueroa! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a7ab995f33efee4d8", "index": 4527, "guid": "46e1c764-2033-404d-9070-77b5a100c7a0", "isActive": false, "balance": "$1,982.31", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Perez Sellers", "gender": "male", "company": "KIOSK", "email": "perezsellers@kiosk.com", "phone": "+1 (989) 543-3300", "address": "480 Maple Avenue, Wildwood, Montana, 7865", "about": "Aliquip id officia sint dolore ut. Pariatur cillum deserunt aute exercitation commodo incididunt ipsum anim esse. Ut incididunt voluptate qui elit adipisicing. Fugiat elit amet elit nulla ex nisi tempor sunt et proident ea.\r\n", "registered": "2014-04-20T22:17:03-12:00", "latitude": -57.922443, "longitude": -0.291162, "tags": [ "id", "duis", "sint", "nisi", "id", "eu", "occaecat" ], "friends": [ { "id": 0, "name": "Francesca Long" }, { "id": 1, "name": "Mariana Barnett" }, { "id": 2, "name": "Mitzi Morin" } ], "greeting": "Hello, Perez Sellers! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a99c26f8ce70463cf", "index": 4528, "guid": "65385f5f-2ab2-4d7e-a0d5-0233bc02d126", "isActive": false, "balance": "$2,447.00", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Maggie Scott", "gender": "female", "company": "SATIANCE", "email": "maggiescott@satiance.com", "phone": "+1 (939) 576-3904", "address": "582 Clymer Street, Disautel, Wisconsin, 964", "about": "Magna enim nostrud proident in cupidatat qui anim ipsum tempor laborum. Voluptate deserunt do commodo occaecat commodo ad. Dolor mollit velit eu veniam consectetur et. Cillum ipsum nulla cillum ad aliqua quis esse dolor elit proident tempor deserunt. Dolore amet enim et ut reprehenderit labore nisi aute commodo. Id adipisicing minim quis cillum do reprehenderit do ex deserunt eu eu.\r\n", "registered": "2014-08-04T09:12:39-12:00", "latitude": 86.357533, "longitude": -98.344468, "tags": [ "nostrud", "occaecat", "tempor", "minim", "commodo", "velit", "enim" ], "friends": [ { "id": 0, "name": "Strickland Prince" }, { "id": 1, "name": "Elena Ryan" }, { "id": 2, "name": "Ann Knox" } ], "greeting": "Hello, Maggie Scott! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a78f8dc748159075f", "index": 4529, "guid": "fced85f2-9093-4167-b128-b265d4ff9d5d", "isActive": true, "balance": "$3,214.47", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Inez Yang", "gender": "female", "company": "ZOINAGE", "email": "inezyang@zoinage.com", "phone": "+1 (869) 421-2896", "address": "827 Albemarle Terrace, Lynn, Maine, 8973", "about": "Aute reprehenderit cillum esse pariatur. Velit non Lorem aliqua eu est. In commodo sunt fugiat nostrud eiusmod. Et consequat reprehenderit minim anim tempor ipsum aliquip dolor esse culpa. Do id irure sint ullamco anim duis veniam et irure. Enim laboris elit mollit minim consectetur culpa esse Lorem. Laboris aute incididunt proident nisi labore proident duis elit cillum excepteur labore eiusmod exercitation labore.\r\n", "registered": "2014-04-17T06:26:50-12:00", "latitude": -3.940777, "longitude": -0.238167, "tags": [ "esse", "nostrud", "cupidatat", "qui", "non", "consequat", "qui" ], "friends": [ { "id": 0, "name": "Lynda Baldwin" }, { "id": 1, "name": "Lee Hall" }, { "id": 2, "name": "Jennifer Joyner" } ], "greeting": "Hello, Inez Yang! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2acaa510fced81dbf7", "index": 4530, "guid": "6f6b8ddb-3e75-41c7-afcd-ccef96ebf88f", "isActive": true, "balance": "$1,783.08", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Hampton Goodwin", "gender": "male", "company": "KAGE", "email": "hamptongoodwin@kage.com", "phone": "+1 (845) 526-3673", "address": "352 Halsey Street, Hondah, Virginia, 545", "about": "Eiusmod voluptate consequat aute consequat aute ullamco elit laboris dolore reprehenderit. Consectetur qui elit laboris elit aliquip fugiat nisi dolor dolor elit mollit nisi ut. Aute voluptate in est consectetur adipisicing sunt pariatur ad laborum. Exercitation do ad tempor quis non et minim nostrud consectetur culpa nulla excepteur. Fugiat incididunt cupidatat eu ex. Et laboris anim ullamco sunt sunt exercitation non qui voluptate.\r\n", "registered": "2014-07-10T10:17:50-12:00", "latitude": 86.299689, "longitude": -55.679342, "tags": [ "elit", "deserunt", "commodo", "quis", "duis", "magna", "deserunt" ], "friends": [ { "id": 0, "name": "Albert Munoz" }, { "id": 1, "name": "Flores Bush" }, { "id": 2, "name": "Davenport Ramos" } ], "greeting": "Hello, Hampton Goodwin! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a3bf319814f4ae5a3", "index": 4531, "guid": "35994711-333a-47a6-8578-713e9f48940e", "isActive": false, "balance": "$3,011.97", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Dotson Wagner", "gender": "male", "company": "SPEEDBOLT", "email": "dotsonwagner@speedbolt.com", "phone": "+1 (837) 456-2001", "address": "601 Polar Street, Kirk, Kentucky, 8500", "about": "Pariatur incididunt cillum occaecat adipisicing laboris occaecat labore et sunt est duis occaecat. Qui qui non ipsum magna occaecat ea duis excepteur. Laborum excepteur sunt occaecat reprehenderit laborum voluptate ullamco aliquip. Qui laboris in mollit velit in eu tempor labore.\r\n", "registered": "2014-07-28T07:23:52-12:00", "latitude": -4.242152, "longitude": 156.88614, "tags": [ "reprehenderit", "consectetur", "ex", "veniam", "ea", "mollit", "proident" ], "friends": [ { "id": 0, "name": "Kim Sandoval" }, { "id": 1, "name": "Merle Bentley" }, { "id": 2, "name": "Williamson Skinner" } ], "greeting": "Hello, Dotson Wagner! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a7a56014f11bddd51", "index": 4532, "guid": "9b1af026-7756-4388-b095-bf636461ff4a", "isActive": true, "balance": "$1,981.70", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Patrick Sharpe", "gender": "male", "company": "TWIIST", "email": "patricksharpe@twiist.com", "phone": "+1 (857) 495-2543", "address": "839 Ferry Place, Rose, Connecticut, 5146", "about": "Mollit commodo nisi duis aute sint consequat excepteur commodo tempor aute do. Aliqua reprehenderit consequat adipisicing eu ullamco consectetur ad ipsum. Proident amet do tempor qui exercitation consequat cillum ipsum nisi consectetur do tempor. Adipisicing nisi duis amet ea sit sit. Culpa ullamco enim duis ea eiusmod id eiusmod cillum eiusmod occaecat incididunt enim nulla. Enim dolore non eu voluptate cillum nulla sint voluptate ullamco. Consectetur ipsum eu duis adipisicing.\r\n", "registered": "2014-02-11T01:53:53-13:00", "latitude": -80.852113, "longitude": 9.552711, "tags": [ "et", "eu", "cillum", "officia", "cupidatat", "commodo", "sint" ], "friends": [ { "id": 0, "name": "Berg Hull" }, { "id": 1, "name": "Kirsten Carney" }, { "id": 2, "name": "Elvia Heath" } ], "greeting": "Hello, Patrick Sharpe! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ab7bdfcc3ea09a233", "index": 4533, "guid": "4ca54cea-9193-4eb7-9565-f8f9a26a54af", "isActive": false, "balance": "$1,116.20", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Anita Ortega", "gender": "female", "company": "ESCHOIR", "email": "anitaortega@eschoir.com", "phone": "+1 (822) 552-2246", "address": "993 Lewis Place, Frierson, Mississippi, 4538", "about": "Consectetur excepteur incididunt mollit dolore voluptate fugiat veniam ut. Amet eu eiusmod laborum velit et incididunt anim eu. Laboris aliqua non id sit nulla nisi commodo. Aute incididunt occaecat exercitation aute labore incididunt. Culpa ea velit dolor quis qui cillum consectetur duis.\r\n", "registered": "2014-08-12T06:38:27-12:00", "latitude": 56.491292, "longitude": -70.36798, "tags": [ "nostrud", "reprehenderit", "labore", "anim", "nisi", "aliquip", "nostrud" ], "friends": [ { "id": 0, "name": "Meadows Charles" }, { "id": 1, "name": "Downs Hill" }, { "id": 2, "name": "Dodson Thompson" } ], "greeting": "Hello, Anita Ortega! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a12c8be9a6199bafe", "index": 4534, "guid": "d6d9003f-e510-4b98-ac21-36a45ba65775", "isActive": true, "balance": "$3,384.07", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Brock Huffman", "gender": "male", "company": "ORGANICA", "email": "brockhuffman@organica.com", "phone": "+1 (916) 429-3488", "address": "924 Main Street, Charco, Washington, 5653", "about": "Officia laboris adipisicing ipsum et qui esse. Laborum non deserunt et Lorem aliqua adipisicing anim eiusmod mollit id. Ullamco ullamco Lorem incididunt labore qui do mollit magna cillum enim sint. Nostrud ex officia esse incididunt esse cillum nisi proident aliqua Lorem esse. Commodo deserunt duis commodo ea nulla laborum in esse. Nulla ut in amet laboris commodo non aliqua dolore eu veniam qui. Est irure sit exercitation officia laborum velit Lorem cillum tempor in nisi aliquip ex consequat.\r\n", "registered": "2014-09-22T18:08:14-12:00", "latitude": -12.75763, "longitude": 50.794643, "tags": [ "Lorem", "incididunt", "voluptate", "eiusmod", "consectetur", "consequat", "magna" ], "friends": [ { "id": 0, "name": "Brandy Bishop" }, { "id": 1, "name": "Millie Jimenez" }, { "id": 2, "name": "Salas Morris" } ], "greeting": "Hello, Brock Huffman! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a82ce6a5c73e662eb", "index": 4535, "guid": "d3281411-4364-4c50-a518-00df858fc78f", "isActive": false, "balance": "$1,487.16", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Jasmine Gentry", "gender": "female", "company": "PEARLESEX", "email": "jasminegentry@pearlesex.com", "phone": "+1 (813) 473-2468", "address": "584 Keap Street, Carrizo, Tennessee, 8943", "about": "Eu exercitation incididunt excepteur enim quis cillum sunt exercitation dolore non. Aliquip ut veniam consequat ad tempor adipisicing. Fugiat deserunt excepteur duis in elit qui aute deserunt deserunt. Sunt irure eiusmod exercitation eu ea dolore exercitation eu aliqua cupidatat duis anim eu. Duis aliqua incididunt voluptate minim eu sit irure exercitation nulla anim.\r\n", "registered": "2014-08-20T00:18:38-12:00", "latitude": 45.450286, "longitude": -21.325118, "tags": [ "aliqua", "esse", "tempor", "duis", "nulla", "mollit", "et" ], "friends": [ { "id": 0, "name": "Flynn Estes" }, { "id": 1, "name": "Porter Tate" }, { "id": 2, "name": "Estelle Tyson" } ], "greeting": "Hello, Jasmine Gentry! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a3044ccb5e38b5216", "index": 4536, "guid": "165ff96d-a1b1-4b0b-adb2-fef6d53abbcc", "isActive": false, "balance": "$1,058.08", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Tania Stanton", "gender": "female", "company": "GEEKULAR", "email": "taniastanton@geekular.com", "phone": "+1 (913) 521-2209", "address": "996 Ovington Court, Accoville, Alabama, 7015", "about": "Anim labore laboris esse cillum nostrud. Aute anim officia ipsum adipisicing dolore occaecat elit consequat sunt quis ut ea laborum labore. Cillum proident enim ea reprehenderit aliqua. Aliqua laborum laboris do ad dolor minim et sunt. Ad do ex magna exercitation ullamco eu esse non et sunt commodo excepteur adipisicing ipsum. Ad enim tempor magna ad dolore sunt minim. Fugiat ipsum labore laboris occaecat laboris irure dolore nisi pariatur.\r\n", "registered": "2014-05-20T08:59:42-12:00", "latitude": -15.878848, "longitude": -4.752982, "tags": [ "consectetur", "eiusmod", "consequat", "nisi", "Lorem", "dolor", "labore" ], "friends": [ { "id": 0, "name": "Small Pope" }, { "id": 1, "name": "Ballard Galloway" }, { "id": 2, "name": "Kline Compton" } ], "greeting": "Hello, Tania Stanton! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a9f488f20c1b19343", "index": 4537, "guid": "6210750d-4891-4dd1-8cd1-7b9ef9d1bf6f", "isActive": false, "balance": "$2,886.78", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Antoinette Morgan", "gender": "female", "company": "KINDALOO", "email": "antoinettemorgan@kindaloo.com", "phone": "+1 (954) 445-2924", "address": "154 Kossuth Place, Guthrie, Ohio, 4777", "about": "Est ex labore amet deserunt adipisicing enim occaecat magna exercitation. Exercitation occaecat ullamco minim pariatur laborum velit cillum esse. Enim ea nisi id exercitation ullamco esse exercitation. Proident nostrud Lorem aute quis nostrud velit minim commodo aliquip. Enim elit est minim voluptate id laborum Lorem nisi aliquip eu sint nulla velit ea. Amet et occaecat excepteur exercitation exercitation proident et sunt aliquip Lorem anim commodo consequat.\r\n", "registered": "2014-04-04T09:18:56-13:00", "latitude": 45.989054, "longitude": -99.147245, "tags": [ "ut", "nisi", "esse", "est", "nisi", "officia", "minim" ], "friends": [ { "id": 0, "name": "Iva Meadows" }, { "id": 1, "name": "Corrine Paul" }, { "id": 2, "name": "Soto Browning" } ], "greeting": "Hello, Antoinette Morgan! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a78be72252c69fd9d", "index": 4538, "guid": "502bf286-3d07-4014-ba36-c48ebe52a407", "isActive": true, "balance": "$3,351.37", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Courtney Knapp", "gender": "female", "company": "UNISURE", "email": "courtneyknapp@unisure.com", "phone": "+1 (890) 570-3271", "address": "204 Eaton Court, Albany, Hawaii, 6840", "about": "Dolore nostrud qui non occaecat sit eu veniam. Nulla non tempor anim voluptate. Mollit commodo excepteur anim in cupidatat pariatur magna in est adipisicing duis anim aliquip est. Incididunt proident nulla veniam incididunt nostrud veniam ut.\r\n", "registered": "2014-02-25T11:27:04-13:00", "latitude": 34.310394, "longitude": 45.282064, "tags": [ "aliqua", "magna", "veniam", "dolor", "sint", "ea", "do" ], "friends": [ { "id": 0, "name": "Annmarie Santos" }, { "id": 1, "name": "Ramsey Frank" }, { "id": 2, "name": "Durham Bird" } ], "greeting": "Hello, Courtney Knapp! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a489fc93d79020c64", "index": 4539, "guid": "c6776c00-1ce8-4af5-a97b-cd2caddb1beb", "isActive": true, "balance": "$1,522.77", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Claire Bryan", "gender": "female", "company": "QUARX", "email": "clairebryan@quarx.com", "phone": "+1 (829) 544-2187", "address": "599 Greene Avenue, Orick, New Mexico, 3468", "about": "Id veniam adipisicing mollit laboris culpa voluptate labore. Est commodo in ea anim ex laborum sit adipisicing proident culpa. Laboris proident nisi consectetur reprehenderit sit adipisicing minim. Et nostrud magna pariatur nisi ea occaecat proident nostrud qui. Qui dolor mollit Lorem sit ea ullamco cillum labore Lorem proident voluptate excepteur consectetur. Eiusmod elit duis nisi dolore sit commodo. Proident aute et ex exercitation.\r\n", "registered": "2014-05-07T02:03:46-12:00", "latitude": 21.440526, "longitude": -132.709712, "tags": [ "duis", "veniam", "fugiat", "laboris", "cillum", "proident", "aliqua" ], "friends": [ { "id": 0, "name": "Charmaine Joyce" }, { "id": 1, "name": "Hanson Wilcox" }, { "id": 2, "name": "Conner Dawson" } ], "greeting": "Hello, Claire Bryan! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a6f44695e7b73b958", "index": 4540, "guid": "1cdf6035-e38d-440b-842e-7800f2b02eed", "isActive": true, "balance": "$2,024.58", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Mccullough Glover", "gender": "male", "company": "ZOXY", "email": "mcculloughglover@zoxy.com", "phone": "+1 (952) 461-2999", "address": "930 Minna Street, Gracey, Maryland, 506", "about": "Lorem duis enim nostrud eu dolor elit ipsum. Consequat et id quis et non veniam mollit id quis. Cillum est amet sint sit irure cupidatat nisi aute ex non officia ea nostrud. Nostrud mollit adipisicing nulla irure ipsum occaecat et aliqua veniam tempor velit quis consequat minim. In excepteur nostrud laborum exercitation aliqua magna. Eu nulla excepteur aliquip labore occaecat exercitation exercitation amet. Et commodo pariatur culpa non sunt nostrud excepteur in amet.\r\n", "registered": "2014-01-19T01:03:12-13:00", "latitude": 51.392618, "longitude": 33.13284, "tags": [ "ea", "irure", "sunt", "deserunt", "non", "Lorem", "aliquip" ], "friends": [ { "id": 0, "name": "Jacquelyn Mcknight" }, { "id": 1, "name": "Michele Harris" }, { "id": 2, "name": "Woods Price" } ], "greeting": "Hello, Mccullough Glover! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a67fa9de2169e9955", "index": 4541, "guid": "ae063101-4834-4734-8e70-37895f2a45cb", "isActive": true, "balance": "$3,431.19", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Beverley Mckee", "gender": "female", "company": "RECRISYS", "email": "beverleymckee@recrisys.com", "phone": "+1 (930) 548-2818", "address": "111 Kathleen Court, Defiance, Alaska, 5238", "about": "Occaecat in sit id labore cillum velit cupidatat. Minim mollit aute ad nostrud anim occaecat ex nulla sit. Veniam quis ad amet laborum laboris cupidatat sunt mollit aliquip.\r\n", "registered": "2014-03-16T00:13:48-13:00", "latitude": 80.05038, "longitude": 143.583865, "tags": [ "minim", "esse", "dolore", "nisi", "enim", "ea", "minim" ], "friends": [ { "id": 0, "name": "Todd Mcguire" }, { "id": 1, "name": "Josephine Gray" }, { "id": 2, "name": "Kenya Sheppard" } ], "greeting": "Hello, Beverley Mckee! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a3289e7d64a393e8b", "index": 4542, "guid": "d01db1cf-884c-4658-899e-e382f768d094", "isActive": false, "balance": "$1,629.98", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Imelda Kaufman", "gender": "female", "company": "MARTGO", "email": "imeldakaufman@martgo.com", "phone": "+1 (964) 474-3642", "address": "800 Freeman Street, Maxville, Arizona, 6140", "about": "Reprehenderit non qui sint pariatur qui consectetur aute nulla. Exercitation laboris culpa culpa minim. Aliquip non quis pariatur consectetur anim pariatur minim ullamco velit cupidatat esse occaecat. Deserunt culpa esse anim ullamco magna nostrud reprehenderit non excepteur dolore cillum. Cupidatat quis minim commodo fugiat culpa voluptate tempor magna qui anim. Duis officia consequat ullamco eu.\r\n", "registered": "2014-09-11T08:53:11-12:00", "latitude": 10.016183, "longitude": -51.22466, "tags": [ "enim", "aliquip", "anim", "magna", "veniam", "ad", "eiusmod" ], "friends": [ { "id": 0, "name": "Gutierrez Chavez" }, { "id": 1, "name": "Althea Nichols" }, { "id": 2, "name": "Shaffer Mathews" } ], "greeting": "Hello, Imelda Kaufman! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a94f1aebf161e2f10", "index": 4543, "guid": "a4d64ce3-9378-4c85-a1f4-7a1a7cbdca46", "isActive": false, "balance": "$2,624.50", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Macdonald Young", "gender": "male", "company": "ZIDANT", "email": "macdonaldyoung@zidant.com", "phone": "+1 (861) 404-2605", "address": "824 Erasmus Street, Diaperville, Federated States Of Micronesia, 2431", "about": "Nisi deserunt adipisicing esse labore deserunt. Exercitation ipsum consectetur enim reprehenderit aliqua est ut minim duis culpa. Sunt anim consectetur qui excepteur do mollit non nostrud. Irure adipisicing pariatur adipisicing in aute mollit. Cillum esse pariatur occaecat ea occaecat.\r\n", "registered": "2014-02-07T03:15:53-13:00", "latitude": -47.893018, "longitude": -32.891336, "tags": [ "veniam", "commodo", "incididunt", "cillum", "pariatur", "ea", "exercitation" ], "friends": [ { "id": 0, "name": "Rosetta Santana" }, { "id": 1, "name": "Patty Mcneil" }, { "id": 2, "name": "Garza Lang" } ], "greeting": "Hello, Macdonald Young! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a00a39e43e4deff35", "index": 4544, "guid": "e53f582a-c82c-46e6-88e5-92be81ae4783", "isActive": true, "balance": "$3,562.97", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Mccray Obrien", "gender": "male", "company": "DIGINETIC", "email": "mccrayobrien@diginetic.com", "phone": "+1 (822) 545-3601", "address": "103 High Street, Bowden, Oklahoma, 353", "about": "Minim sunt elit anim Lorem et tempor commodo ullamco in ut sit quis. Lorem dolore amet nisi do Lorem sint nulla elit. Ad consectetur aute fugiat mollit ad velit non excepteur. Sit excepteur irure aliqua voluptate amet magna excepteur. Veniam culpa sunt cupidatat proident. Aliqua minim aliqua duis eu.\r\n", "registered": "2014-01-10T19:28:51-13:00", "latitude": 66.586572, "longitude": -166.699553, "tags": [ "duis", "ullamco", "eu", "commodo", "ut", "sint", "sit" ], "friends": [ { "id": 0, "name": "Gail Todd" }, { "id": 1, "name": "Copeland Holcomb" }, { "id": 2, "name": "Decker Bolton" } ], "greeting": "Hello, Mccray Obrien! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a8706f8c668935c2a", "index": 4545, "guid": "73aa94f4-ae70-4724-bbb1-471b5909cba1", "isActive": true, "balance": "$2,973.77", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Salinas Wise", "gender": "male", "company": "ZOLARITY", "email": "salinaswise@zolarity.com", "phone": "+1 (987) 441-2554", "address": "990 Norfolk Street, Klondike, Michigan, 8538", "about": "Ut ipsum eiusmod quis dolor. Nulla commodo Lorem do aute excepteur proident ex qui irure consequat veniam labore mollit. Amet ullamco amet reprehenderit occaecat enim duis magna in ut dolor mollit sint reprehenderit dolor. Ea ea fugiat eiusmod cillum mollit sint veniam veniam. Dolore aliqua magna in ut. Veniam ipsum Lorem fugiat veniam. Occaecat enim ea sit mollit velit sint Lorem deserunt aute amet cillum exercitation Lorem.\r\n", "registered": "2014-07-04T05:41:43-12:00", "latitude": 59.810272, "longitude": -49.82625, "tags": [ "incididunt", "eiusmod", "voluptate", "exercitation", "nostrud", "tempor", "cupidatat" ], "friends": [ { "id": 0, "name": "Norman Humphrey" }, { "id": 1, "name": "Perkins Mclean" }, { "id": 2, "name": "Johanna Calhoun" } ], "greeting": "Hello, Salinas Wise! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ab80ec307533e2d81", "index": 4546, "guid": "7c7653e9-21bf-4326-b3f2-948dfbdd6d71", "isActive": false, "balance": "$1,336.22", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Delia Carroll", "gender": "female", "company": "ETERNIS", "email": "deliacarroll@eternis.com", "phone": "+1 (802) 531-2569", "address": "911 Gardner Avenue, Bladensburg, Kansas, 2017", "about": "Anim occaecat est id dolore ullamco enim esse qui amet pariatur ipsum ipsum exercitation. Tempor ipsum exercitation incididunt aliqua nostrud. Sit magna mollit in tempor. Duis dolor sit reprehenderit exercitation adipisicing fugiat est velit.\r\n", "registered": "2014-04-25T19:00:14-12:00", "latitude": 81.357136, "longitude": 58.263732, "tags": [ "veniam", "aliqua", "nulla", "est", "fugiat", "nulla", "fugiat" ], "friends": [ { "id": 0, "name": "Catherine Little" }, { "id": 1, "name": "Weaver Adkins" }, { "id": 2, "name": "Celeste Alvarado" } ], "greeting": "Hello, Delia Carroll! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2adc4a12924a09b0b6", "index": 4547, "guid": "ccb0c496-192d-47f0-852d-1e682bec0bd3", "isActive": true, "balance": "$3,328.33", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Ines Wiggins", "gender": "female", "company": "AQUAFIRE", "email": "ineswiggins@aquafire.com", "phone": "+1 (871) 549-2645", "address": "987 Laurel Avenue, Tuttle, South Dakota, 3293", "about": "Ut nulla laborum exercitation pariatur eiusmod minim sunt magna adipisicing velit nisi. Fugiat minim labore dolore labore. Minim est ullamco eu magna sunt eiusmod aliqua. Non sint irure enim incididunt qui ad cillum quis aliquip laborum laboris et dolore.\r\n", "registered": "2014-06-11T00:59:16-12:00", "latitude": 14.474985, "longitude": -154.532836, "tags": [ "pariatur", "enim", "do", "duis", "adipisicing", "exercitation", "nulla" ], "friends": [ { "id": 0, "name": "John Oneal" }, { "id": 1, "name": "Suarez Lopez" }, { "id": 2, "name": "Winters Osborn" } ], "greeting": "Hello, Ines Wiggins! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a9b06a2c865d0b1f4", "index": 4548, "guid": "6992e28b-093b-48c8-8a12-cda4e715a7a6", "isActive": true, "balance": "$2,972.23", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Cline Duran", "gender": "male", "company": "ZILLACTIC", "email": "clineduran@zillactic.com", "phone": "+1 (898) 589-3901", "address": "367 Pulaski Street, Greensburg, West Virginia, 2704", "about": "Occaecat nulla ullamco ut exercitation mollit culpa fugiat. Et consectetur esse id aute ad duis culpa minim laborum veniam. Sint ad duis ea cillum ipsum cillum irure ullamco ullamco duis nisi duis reprehenderit mollit.\r\n", "registered": "2014-09-12T01:51:38-12:00", "latitude": -64.189892, "longitude": -45.206043, "tags": [ "qui", "velit", "consectetur", "velit", "amet", "et", "ea" ], "friends": [ { "id": 0, "name": "Garner Russo" }, { "id": 1, "name": "Krystal Moran" }, { "id": 2, "name": "Nell Rios" } ], "greeting": "Hello, Cline Duran! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a3a1244cf0939446f", "index": 4549, "guid": "ce0c643b-7711-452a-92e2-0deccae6c2c8", "isActive": true, "balance": "$2,852.04", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Erna Rivas", "gender": "female", "company": "SNACKTION", "email": "ernarivas@snacktion.com", "phone": "+1 (828) 579-3167", "address": "110 Bergen Avenue, Bourg, Texas, 116", "about": "Do dolore excepteur ex nisi eu commodo proident mollit non. Nulla fugiat anim fugiat aliquip. Nisi velit consequat occaecat eiusmod duis ipsum commodo irure laborum pariatur aliqua sit ipsum nisi. Fugiat mollit irure ut ea consectetur commodo. Ullamco non cupidatat irure incididunt anim labore anim nisi reprehenderit excepteur. Amet non minim laboris in occaecat laborum mollit dolor. Pariatur consectetur mollit eu nisi duis adipisicing nisi ad dolor cupidatat duis elit.\r\n", "registered": "2014-06-07T17:34:52-12:00", "latitude": -75.45924, "longitude": -86.738658, "tags": [ "Lorem", "culpa", "consectetur", "labore", "ad", "deserunt", "aute" ], "friends": [ { "id": 0, "name": "Conway Leblanc" }, { "id": 1, "name": "Obrien Navarro" }, { "id": 2, "name": "Leigh Pratt" } ], "greeting": "Hello, Erna Rivas! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ae81102cfaa3dad76", "index": 4550, "guid": "ea63d00e-4cef-4765-9308-b718b41dba3a", "isActive": true, "balance": "$2,676.13", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Callie Mercer", "gender": "female", "company": "XYLAR", "email": "calliemercer@xylar.com", "phone": "+1 (863) 436-2065", "address": "379 College Place, Wadsworth, Oregon, 2935", "about": "Labore ea eiusmod laborum id culpa do culpa. Aute nostrud elit nulla amet sit dolor. Eu labore esse proident commodo voluptate. Nostrud aliquip eiusmod exercitation velit. Et non occaecat quis ad.\r\n", "registered": "2014-05-12T15:39:11-12:00", "latitude": -32.71178, "longitude": 124.606867, "tags": [ "consectetur", "ex", "nisi", "amet", "reprehenderit", "cupidatat", "voluptate" ], "friends": [ { "id": 0, "name": "Baker Chan" }, { "id": 1, "name": "Mcmillan Carter" }, { "id": 2, "name": "Horton Cantu" } ], "greeting": "Hello, Callie Mercer! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ab0d26d89416089d4", "index": 4551, "guid": "7d49204b-decb-41d4-a15a-25363ee71bf1", "isActive": true, "balance": "$3,196.80", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Hickman Alvarez", "gender": "male", "company": "JUNIPOOR", "email": "hickmanalvarez@junipoor.com", "phone": "+1 (961) 543-3012", "address": "911 Franklin Avenue, Staples, Nevada, 5390", "about": "Excepteur voluptate excepteur ut enim consequat quis voluptate esse consequat ullamco qui cillum. Consectetur dolore qui do sunt pariatur ipsum cupidatat Lorem velit commodo. Nisi sit qui laboris incididunt est irure fugiat sint fugiat ea aliquip et velit deserunt. Sit pariatur exercitation enim esse reprehenderit aliquip eu tempor ipsum cupidatat sunt adipisicing sunt.\r\n", "registered": "2014-02-05T05:42:07-13:00", "latitude": 1.41124, "longitude": 26.499739, "tags": [ "nisi", "dolore", "aliqua", "mollit", "cupidatat", "dolor", "tempor" ], "friends": [ { "id": 0, "name": "Margarita Benjamin" }, { "id": 1, "name": "Elise Strickland" }, { "id": 2, "name": "Therese Schroeder" } ], "greeting": "Hello, Hickman Alvarez! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a226b87df1790de86", "index": 4552, "guid": "63d7c80a-bc37-404a-943c-095c4b90c6e0", "isActive": true, "balance": "$2,349.74", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Hess Barker", "gender": "male", "company": "VANTAGE", "email": "hessbarker@vantage.com", "phone": "+1 (815) 519-3763", "address": "362 Hamilton Walk, Emory, Minnesota, 8685", "about": "Deserunt est id consectetur quis est adipisicing culpa quis sunt proident Lorem eiusmod. Excepteur voluptate culpa aliquip quis ullamco elit culpa irure excepteur quis duis nulla. Esse ex pariatur commodo fugiat excepteur et est laboris commodo aliquip enim. Duis qui pariatur exercitation ad non non deserunt.\r\n", "registered": "2014-06-10T16:01:33-12:00", "latitude": 75.464294, "longitude": -52.561956, "tags": [ "nisi", "cillum", "ullamco", "occaecat", "Lorem", "labore", "ad" ], "friends": [ { "id": 0, "name": "Mullins Schultz" }, { "id": 1, "name": "Sophie Torres" }, { "id": 2, "name": "Maryanne Boyd" } ], "greeting": "Hello, Hess Barker! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aae205462b177df8d", "index": 4553, "guid": "efb55933-3965-4a80-9078-7edf8f865fa1", "isActive": false, "balance": "$3,834.96", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Aguilar Franco", "gender": "male", "company": "APPLIDEC", "email": "aguilarfranco@applidec.com", "phone": "+1 (866) 512-3170", "address": "941 Woodrow Court, Blanford, Missouri, 560", "about": "Id magna exercitation tempor minim commodo cupidatat tempor irure reprehenderit excepteur esse. Aliquip deserunt laboris officia cupidatat ipsum. Non est elit in est esse enim. Tempor dolor dolor reprehenderit duis.\r\n", "registered": "2014-04-12T04:00:32-12:00", "latitude": 24.451103, "longitude": 70.612884, "tags": [ "nisi", "veniam", "amet", "reprehenderit", "ex", "pariatur", "excepteur" ], "friends": [ { "id": 0, "name": "Ruiz Houston" }, { "id": 1, "name": "Hollie Ratliff" }, { "id": 2, "name": "Tran Benton" } ], "greeting": "Hello, Aguilar Franco! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2abfb5ba75fcffcb86", "index": 4554, "guid": "9ffa1654-0574-493b-93db-cf3ffe4896db", "isActive": true, "balance": "$3,913.42", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Marjorie Roman", "gender": "female", "company": "AUSTEX", "email": "marjorieroman@austex.com", "phone": "+1 (810) 448-3136", "address": "295 School Lane, Bartonsville, Rhode Island, 4229", "about": "Enim eu ullamco duis magna. Duis mollit veniam Lorem aute amet et commodo id culpa magna excepteur esse consectetur nisi. Ullamco in esse laboris laboris mollit sunt aute amet consequat dolore eu non. Magna ut do sint nisi ipsum proident eiusmod in anim. Qui in occaecat laborum dolore veniam. Aute dolor adipisicing dolor consequat culpa est enim. Magna ex occaecat ad id velit irure eu ut occaecat esse.\r\n", "registered": "2014-04-06T17:03:10-12:00", "latitude": -24.593697, "longitude": 83.841473, "tags": [ "ad", "cillum", "tempor", "elit", "sint", "ipsum", "culpa" ], "friends": [ { "id": 0, "name": "Gentry Schneider" }, { "id": 1, "name": "Pearl Brady" }, { "id": 2, "name": "Charity Shannon" } ], "greeting": "Hello, Marjorie Roman! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a4dcb0d224059b448", "index": 4555, "guid": "6d7bde66-9bd3-4985-8e1a-363870afc777", "isActive": false, "balance": "$1,200.83", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Lopez Coleman", "gender": "male", "company": "HANDSHAKE", "email": "lopezcoleman@handshake.com", "phone": "+1 (830) 599-3067", "address": "374 Sandford Street, Topaz, Florida, 6401", "about": "Exercitation ullamco non fugiat tempor officia excepteur aliqua anim laboris. Cupidatat id ullamco ex nostrud dolor nostrud irure irure veniam laborum deserunt enim sunt. Non nisi eiusmod adipisicing consequat. Eu labore minim nostrud ipsum ex voluptate ad eiusmod magna occaecat eu.\r\n", "registered": "2014-05-20T01:04:52-12:00", "latitude": 40.755712, "longitude": 120.339548, "tags": [ "sunt", "aliqua", "aliqua", "exercitation", "Lorem", "ipsum", "proident" ], "friends": [ { "id": 0, "name": "Mamie Ochoa" }, { "id": 1, "name": "Tyler Mcclain" }, { "id": 2, "name": "Bettie Lowe" } ], "greeting": "Hello, Lopez Coleman! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2af5166eda50d9a216", "index": 4556, "guid": "67f6cbf1-b5d9-42f4-bbbe-b40a5344f4a6", "isActive": true, "balance": "$3,931.88", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Sheryl Hardin", "gender": "female", "company": "FIBEROX", "email": "sherylhardin@fiberox.com", "phone": "+1 (948) 513-2087", "address": "132 Scholes Street, Coldiron, North Carolina, 3408", "about": "Aliqua et enim quis ipsum eu esse cupidatat nisi nisi veniam labore do minim eiusmod. Amet cupidatat nostrud cupidatat deserunt labore non dolor. Nostrud laboris dolor deserunt anim incididunt ex Lorem reprehenderit aliquip eu eiusmod.\r\n", "registered": "2014-02-02T21:07:54-13:00", "latitude": -27.394605, "longitude": -84.030908, "tags": [ "consectetur", "aliquip", "minim", "magna", "officia", "culpa", "sit" ], "friends": [ { "id": 0, "name": "Rosanne Watkins" }, { "id": 1, "name": "Flowers Good" }, { "id": 2, "name": "Maude Cohen" } ], "greeting": "Hello, Sheryl Hardin! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2abb4341aecf82ca80", "index": 4557, "guid": "fa493bf5-6d69-420b-9a27-88614b3cc2c7", "isActive": true, "balance": "$3,230.01", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Sears Gamble", "gender": "male", "company": "NORSUP", "email": "searsgamble@norsup.com", "phone": "+1 (875) 589-2783", "address": "409 Campus Place, Kennedyville, New Hampshire, 8487", "about": "Lorem commodo laborum quis in ipsum elit. Officia anim sint nostrud velit anim deserunt. Consequat velit quis consectetur sint aute veniam occaecat. Officia occaecat elit fugiat aute reprehenderit pariatur laborum reprehenderit reprehenderit voluptate minim ad et.\r\n", "registered": "2014-07-03T04:00:09-12:00", "latitude": -61.359119, "longitude": -4.109164, "tags": [ "non", "ullamco", "laborum", "ut", "adipisicing", "aliquip", "nulla" ], "friends": [ { "id": 0, "name": "Abigail Haynes" }, { "id": 1, "name": "Latonya Gibson" }, { "id": 2, "name": "Ivy Roth" } ], "greeting": "Hello, Sears Gamble! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a3a56c3635588d3f8", "index": 4558, "guid": "8611df8c-4cf2-43cf-a6ff-f860c3ccaad3", "isActive": true, "balance": "$3,849.79", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Eula Camacho", "gender": "female", "company": "EQUITAX", "email": "eulacamacho@equitax.com", "phone": "+1 (862) 461-2226", "address": "901 Humboldt Street, Dorneyville, Arkansas, 9323", "about": "Proident ipsum reprehenderit consectetur ipsum Lorem nulla cillum consectetur id. Ipsum non in do culpa exercitation incididunt dolor veniam esse do nisi aliquip. Laborum proident enim quis id esse nostrud do ad. Qui ad veniam duis cupidatat est. Eu nulla laboris officia commodo laboris aute.\r\n", "registered": "2014-01-06T13:06:30-13:00", "latitude": -6.902259, "longitude": 15.358451, "tags": [ "ut", "tempor", "laboris", "elit", "culpa", "do", "consequat" ], "friends": [ { "id": 0, "name": "Carla Branch" }, { "id": 1, "name": "Cornelia Fuller" }, { "id": 2, "name": "Stanton Holden" } ], "greeting": "Hello, Eula Camacho! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ab4a929aaaf06f991", "index": 4559, "guid": "5f638bc1-1ad0-498c-b9c7-19d6e261262d", "isActive": false, "balance": "$1,030.44", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Lang Butler", "gender": "male", "company": "DIGIAL", "email": "langbutler@digial.com", "phone": "+1 (826) 512-2661", "address": "801 Emmons Avenue, Cuylerville, Iowa, 7734", "about": "Tempor dolore quis eiusmod et. Laborum est mollit pariatur esse esse cupidatat est fugiat pariatur est. Excepteur minim aliqua ut duis eu.\r\n", "registered": "2014-01-02T00:38:32-13:00", "latitude": 28.00253, "longitude": -140.309014, "tags": [ "nisi", "deserunt", "in", "quis", "nostrud", "tempor", "sunt" ], "friends": [ { "id": 0, "name": "Duran Horton" }, { "id": 1, "name": "Hunter Molina" }, { "id": 2, "name": "Guerrero Le" } ], "greeting": "Hello, Lang Butler! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aa650948992e390a1", "index": 4560, "guid": "1a625794-2bc1-4fc3-9708-6b65b3bfef84", "isActive": true, "balance": "$2,816.58", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Larsen Summers", "gender": "male", "company": "GORGANIC", "email": "larsensummers@gorganic.com", "phone": "+1 (974) 529-3622", "address": "345 Withers Street, Brandywine, Nebraska, 5238", "about": "Fugiat pariatur do laborum velit proident dolore exercitation tempor commodo nisi amet ipsum velit. Pariatur ad voluptate ullamco voluptate cillum tempor nulla. Aute irure excepteur pariatur est dolor. Excepteur elit velit elit eu in ea tempor adipisicing nulla ad aute minim do. Officia enim sunt adipisicing excepteur excepteur aute voluptate id esse dolore adipisicing sit. Irure proident excepteur culpa ipsum laboris sunt. Quis minim enim commodo ullamco voluptate fugiat id nulla ad pariatur incididunt.\r\n", "registered": "2014-07-16T03:25:57-12:00", "latitude": 38.403422, "longitude": -100.447107, "tags": [ "cillum", "cupidatat", "sunt", "quis", "in", "ullamco", "quis" ], "friends": [ { "id": 0, "name": "Noelle Gardner" }, { "id": 1, "name": "Lilia Wallace" }, { "id": 2, "name": "Leslie Johnson" } ], "greeting": "Hello, Larsen Summers! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a51cea68c4d266317", "index": 4561, "guid": "365a7e2c-e9fc-4269-adbf-c44481b51b5d", "isActive": false, "balance": "$3,590.93", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Zelma Conner", "gender": "female", "company": "OULU", "email": "zelmaconner@oulu.com", "phone": "+1 (914) 522-2967", "address": "983 Berriman Street, Osmond, District Of Columbia, 4075", "about": "Et aute cillum enim do dolor do ex sunt proident eiusmod est velit in ex. Pariatur aliquip cillum ipsum culpa sunt cillum aute eiusmod exercitation deserunt. Aliquip adipisicing amet ex enim. Ea sunt quis nostrud ullamco ex. Aliqua cillum voluptate aute exercitation et ad ipsum.\r\n", "registered": "2014-02-20T12:26:06-13:00", "latitude": -36.35352, "longitude": -165.419169, "tags": [ "anim", "consectetur", "magna", "velit", "elit", "ex", "nulla" ], "friends": [ { "id": 0, "name": "Vickie Finch" }, { "id": 1, "name": "Robbins Haney" }, { "id": 2, "name": "Bray Martin" } ], "greeting": "Hello, Zelma Conner! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a3a7f13aab4f74749", "index": 4562, "guid": "985fc174-7188-4a69-9d88-0484f030ad7f", "isActive": false, "balance": "$3,661.78", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Vincent Crosby", "gender": "male", "company": "COMDOM", "email": "vincentcrosby@comdom.com", "phone": "+1 (922) 526-3640", "address": "650 Vernon Avenue, Bascom, New Jersey, 849", "about": "Voluptate cillum eu officia irure excepteur duis culpa enim ipsum fugiat. Reprehenderit proident ex consequat ut laboris labore velit. Reprehenderit adipisicing quis proident minim.\r\n", "registered": "2014-08-14T06:22:57-12:00", "latitude": 57.077632, "longitude": 170.973935, "tags": [ "reprehenderit", "consequat", "ad", "pariatur", "anim", "ad", "veniam" ], "friends": [ { "id": 0, "name": "Julianne Lloyd" }, { "id": 1, "name": "Augusta Lester" }, { "id": 2, "name": "Angie Whitfield" } ], "greeting": "Hello, Vincent Crosby! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a30d78d0f800ac274", "index": 4563, "guid": "9b702928-fb2f-4213-a374-b7de59031ca9", "isActive": false, "balance": "$3,022.22", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Hubbard Evans", "gender": "male", "company": "FLOTONIC", "email": "hubbardevans@flotonic.com", "phone": "+1 (804) 455-2497", "address": "811 India Street, Lowgap, Palau, 9630", "about": "Laboris commodo cupidatat veniam voluptate. Enim minim nulla anim do adipisicing proident qui Lorem laboris cillum anim ipsum eiusmod. Ex officia aliquip velit deserunt do laborum sunt excepteur labore do labore minim. Dolore incididunt pariatur do incididunt. Consectetur voluptate dolor ullamco labore nisi veniam sunt magna labore magna.\r\n", "registered": "2014-05-19T07:34:10-12:00", "latitude": 18.001907, "longitude": -159.58169, "tags": [ "irure", "nostrud", "cillum", "deserunt", "consectetur", "do", "do" ], "friends": [ { "id": 0, "name": "Eunice Blackburn" }, { "id": 1, "name": "Ratliff Walter" }, { "id": 2, "name": "Hendrix Underwood" } ], "greeting": "Hello, Hubbard Evans! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a59c6841eb40dd9b7", "index": 4564, "guid": "6b32a60a-5834-4797-b0d0-0f5f792b7011", "isActive": false, "balance": "$1,439.18", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Diann William", "gender": "female", "company": "KYAGURU", "email": "diannwilliam@kyaguru.com", "phone": "+1 (815) 460-2234", "address": "549 River Street, Ezel, Puerto Rico, 329", "about": "Eu esse exercitation voluptate occaecat. Et nulla consectetur dolor ad laboris et laboris sint officia tempor. Ad duis ut cillum id magna sit nulla in ea enim. Labore laboris cillum voluptate quis in sunt ea exercitation Lorem. Adipisicing occaecat anim incididunt dolore consequat dolore ullamco sunt anim.\r\n", "registered": "2014-04-14T15:49:40-12:00", "latitude": -78.940335, "longitude": 55.319657, "tags": [ "dolore", "fugiat", "ipsum", "incididunt", "commodo", "aliqua", "nisi" ], "friends": [ { "id": 0, "name": "Bolton Mccarty" }, { "id": 1, "name": "Hannah Mullins" }, { "id": 2, "name": "Emerson Sweet" } ], "greeting": "Hello, Diann William! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a40a6d8a757886904", "index": 4565, "guid": "e98fade3-c508-452c-a0d3-741be26768b4", "isActive": true, "balance": "$3,512.93", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Krista Watts", "gender": "female", "company": "XOGGLE", "email": "kristawatts@xoggle.com", "phone": "+1 (918) 428-3834", "address": "608 Celeste Court, Bakersville, California, 7968", "about": "Ex amet pariatur laboris amet commodo quis nisi laboris incididunt sit reprehenderit pariatur aliquip adipisicing. Labore ullamco proident tempor fugiat. Officia eu ipsum ipsum cillum. Laboris labore sunt reprehenderit officia nisi nostrud voluptate duis.\r\n", "registered": "2014-06-20T01:14:05-12:00", "latitude": -66.215427, "longitude": 5.13057, "tags": [ "nisi", "excepteur", "sint", "minim", "pariatur", "ex", "cillum" ], "friends": [ { "id": 0, "name": "Jody Moreno" }, { "id": 1, "name": "Key Mcmillan" }, { "id": 2, "name": "Jaime Greer" } ], "greeting": "Hello, Krista Watts! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2abb3f588e8de14650", "index": 4566, "guid": "5412cb42-33c7-4195-9d66-5b9dafa2d0d2", "isActive": true, "balance": "$1,928.47", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Richmond Barron", "gender": "male", "company": "NORALI", "email": "richmondbarron@norali.com", "phone": "+1 (961) 509-2544", "address": "683 Herbert Street, Starks, Vermont, 2315", "about": "Irure enim exercitation id enim. Elit nostrud irure laboris minim elit enim dolor. Adipisicing ex pariatur fugiat quis dolore mollit in labore cupidatat et pariatur. Consequat ullamco amet eu sint eu velit occaecat velit labore nostrud laboris mollit culpa. Nulla ullamco dolor qui amet incididunt do non laboris consectetur pariatur eiusmod. Ex irure ex Lorem proident proident officia reprehenderit duis voluptate officia culpa Lorem ad. Sunt culpa do esse anim aliquip sint cupidatat cillum magna ea minim mollit nulla dolor.\r\n", "registered": "2014-03-30T03:10:00-13:00", "latitude": -64.457681, "longitude": 135.178482, "tags": [ "quis", "consequat", "laborum", "id", "sunt", "elit", "aliquip" ], "friends": [ { "id": 0, "name": "Walters Flynn" }, { "id": 1, "name": "Bean Rasmussen" }, { "id": 2, "name": "Virginia Carson" } ], "greeting": "Hello, Richmond Barron! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a1d4668fb8f572319", "index": 4567, "guid": "6250472b-6b11-410a-9917-83efde85d30f", "isActive": true, "balance": "$3,392.31", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Grimes Michael", "gender": "male", "company": "TUBALUM", "email": "grimesmichael@tubalum.com", "phone": "+1 (995) 504-3212", "address": "126 Jodie Court, Freelandville, Indiana, 8209", "about": "Et aliqua ipsum duis ex incididunt. Sunt cillum consectetur ullamco ipsum nisi eu consectetur magna elit ea esse sit in. Deserunt fugiat exercitation aliquip ea fugiat velit amet veniam magna aliqua dolore. Sit adipisicing ea culpa consectetur est sit culpa consequat cillum esse irure. In cillum magna voluptate magna laboris. Deserunt voluptate ut dolor incididunt nostrud eu dolor labore consectetur velit nisi. Excepteur amet officia fugiat non.\r\n", "registered": "2014-05-13T23:06:23-12:00", "latitude": 12.629179, "longitude": 61.795735, "tags": [ "consectetur", "ex", "ipsum", "velit", "non", "ipsum", "sit" ], "friends": [ { "id": 0, "name": "Ward Bond" }, { "id": 1, "name": "Reyna Banks" }, { "id": 2, "name": "Michael Conley" } ], "greeting": "Hello, Grimes Michael! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a5371f8d3d26b3a2f", "index": 4568, "guid": "a3dc1180-f781-4139-81b7-d5b2c8c38b9a", "isActive": true, "balance": "$3,366.51", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Michelle Riddle", "gender": "female", "company": "COMTEST", "email": "michelleriddle@comtest.com", "phone": "+1 (800) 544-2201", "address": "156 Oxford Walk, Rowe, Illinois, 6414", "about": "Excepteur quis nostrud amet fugiat consectetur minim id nulla sint. Anim enim occaecat pariatur veniam fugiat exercitation quis laborum ea cillum adipisicing et commodo adipisicing. Esse proident amet duis excepteur culpa fugiat dolore nisi. Pariatur consequat laboris magna sit veniam officia fugiat reprehenderit culpa quis amet anim nisi est. Non officia anim labore officia Lorem et aliqua nulla in. Sit labore nulla amet culpa excepteur do Lorem tempor laborum. Aliquip ea veniam pariatur voluptate sint irure sint ipsum non.\r\n", "registered": "2014-07-02T09:22:36-12:00", "latitude": 88.506466, "longitude": 4.058062, "tags": [ "irure", "adipisicing", "ut", "nostrud", "sunt", "labore", "enim" ], "friends": [ { "id": 0, "name": "Kathleen Rosa" }, { "id": 1, "name": "Wilder Palmer" }, { "id": 2, "name": "Kaye Mckenzie" } ], "greeting": "Hello, Michelle Riddle! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a07992b7738d7ce8c", "index": 4569, "guid": "71107f5d-84e8-45ea-9a80-0ffa6e73b109", "isActive": true, "balance": "$1,253.50", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Shari Koch", "gender": "female", "company": "ORBAXTER", "email": "sharikoch@orbaxter.com", "phone": "+1 (841) 572-2641", "address": "810 Sedgwick Place, Nanafalia, South Carolina, 6404", "about": "Veniam aliqua exercitation nulla dolore aliquip sit cupidatat quis amet enim cupidatat do. Tempor velit irure magna proident ut. Eu qui quis nulla voluptate duis fugiat cupidatat anim mollit qui. Nisi nulla sunt pariatur occaecat ex incididunt Lorem. Esse anim tempor minim commodo consequat laborum commodo amet commodo adipisicing esse adipisicing. Eiusmod nulla eiusmod commodo tempor commodo nulla. Enim occaecat sint ex aliqua elit.\r\n", "registered": "2014-04-01T21:47:06-13:00", "latitude": -61.547294, "longitude": -24.590297, "tags": [ "dolor", "in", "officia", "labore", "est", "eiusmod", "est" ], "friends": [ { "id": 0, "name": "Lucinda Goodman" }, { "id": 1, "name": "Avis Ray" }, { "id": 2, "name": "Marcie Bradshaw" } ], "greeting": "Hello, Shari Koch! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aee4f462d3099aca6", "index": 4570, "guid": "e4b5c85d-3eff-4034-8dbf-d6968c7960e1", "isActive": false, "balance": "$2,873.03", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Wolf King", "gender": "male", "company": "QUINEX", "email": "wolfking@quinex.com", "phone": "+1 (908) 470-2676", "address": "747 Bogart Street, Gasquet, American Samoa, 904", "about": "Laborum pariatur dolor consectetur sit aliquip exercitation ipsum esse excepteur sit culpa sit fugiat laborum. Ipsum elit fugiat eu duis pariatur cillum cupidatat reprehenderit consequat nisi cillum do cillum. Et veniam aute quis irure non aliqua veniam fugiat et sit sint qui mollit. Ad consequat sit enim non incididunt laborum consectetur fugiat duis Lorem ipsum nisi do ea. Aute ex velit labore eiusmod duis sit cillum et ut. Eu sint cupidatat consectetur ea eiusmod mollit cupidatat laboris et voluptate id incididunt dolor anim. Voluptate in sit do consequat ipsum quis proident non veniam est aliquip qui ipsum.\r\n", "registered": "2014-07-11T14:21:43-12:00", "latitude": -62.081419, "longitude": -119.968163, "tags": [ "adipisicing", "proident", "quis", "dolore", "cupidatat", "sit", "ex" ], "friends": [ { "id": 0, "name": "Young Bender" }, { "id": 1, "name": "Marcella Garza" }, { "id": 2, "name": "Fuller Nolan" } ], "greeting": "Hello, Wolf King! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a40927ad7ff2b346d", "index": 4571, "guid": "cda29ccc-b391-4a29-8d09-2bb782a8db95", "isActive": true, "balance": "$2,266.10", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Crane Cote", "gender": "male", "company": "BILLMED", "email": "cranecote@billmed.com", "phone": "+1 (990) 456-3727", "address": "835 Oriental Court, Ruckersville, Delaware, 5228", "about": "Nisi do ex aute incididunt adipisicing aliqua Lorem reprehenderit. Officia culpa quis cillum velit proident incididunt nisi aute veniam exercitation. Non sint sit culpa deserunt nisi dolore. Qui incididunt eu velit minim cillum veniam aute elit exercitation est in enim proident adipisicing. Aliqua ullamco duis et commodo esse ullamco sunt.\r\n", "registered": "2014-08-31T09:40:28-12:00", "latitude": -4.498251, "longitude": -165.254408, "tags": [ "id", "elit", "sunt", "quis", "sint", "consequat", "aliqua" ], "friends": [ { "id": 0, "name": "Jayne Delacruz" }, { "id": 1, "name": "Robertson Sanders" }, { "id": 2, "name": "Laverne Ewing" } ], "greeting": "Hello, Crane Cote! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a3ef0c1f85057958c", "index": 4572, "guid": "4b313eda-8510-4198-b283-d22a8e0187d5", "isActive": true, "balance": "$2,930.97", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Barnett Sexton", "gender": "male", "company": "ZILLACOM", "email": "barnettsexton@zillacom.com", "phone": "+1 (813) 414-2409", "address": "835 Remsen Avenue, Dalton, Pennsylvania, 1313", "about": "Do non dolore excepteur exercitation. Adipisicing aute magna minim eiusmod labore duis aute. Dolore ipsum sunt eiusmod ea occaecat aute sit adipisicing ut ullamco. Quis in esse excepteur ut commodo magna dolore consequat non est sunt proident cupidatat incididunt. Reprehenderit ut mollit aute nisi nostrud qui reprehenderit in quis velit excepteur.\r\n", "registered": "2014-03-17T05:44:33-13:00", "latitude": 6.896202, "longitude": -26.344826, "tags": [ "eu", "duis", "elit", "sit", "nisi", "incididunt", "amet" ], "friends": [ { "id": 0, "name": "Isabella Salinas" }, { "id": 1, "name": "Kristine Alexander" }, { "id": 2, "name": "Susanna Lane" } ], "greeting": "Hello, Barnett Sexton! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ae50b2ff0e0a777ed", "index": 4573, "guid": "762414b1-71a4-4ebf-a34b-dc89e5b12729", "isActive": true, "balance": "$2,938.52", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Britney Kline", "gender": "female", "company": "NETPLODE", "email": "britneykline@netplode.com", "phone": "+1 (889) 454-2441", "address": "422 Brown Street, Coultervillle, Georgia, 1040", "about": "Ut dolore sunt commodo exercitation cupidatat anim sunt commodo. Cillum ipsum esse tempor proident Lorem Lorem laboris fugiat culpa ex. Eu ut aute laborum tempor tempor anim anim. Cupidatat velit proident elit dolor qui duis voluptate.\r\n", "registered": "2014-03-24T09:37:53-13:00", "latitude": -23.025233, "longitude": 153.829761, "tags": [ "in", "dolor", "minim", "enim", "aliqua", "enim", "reprehenderit" ], "friends": [ { "id": 0, "name": "Mona Lowery" }, { "id": 1, "name": "Mcintyre Dodson" }, { "id": 2, "name": "Myers Russell" } ], "greeting": "Hello, Britney Kline! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a7b5c906e3d7f1e78", "index": 4574, "guid": "31252236-8153-4f7d-8f2b-73963b2594f9", "isActive": false, "balance": "$1,743.94", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Vance Reese", "gender": "male", "company": "GEOFARM", "email": "vancereese@geofarm.com", "phone": "+1 (963) 467-2651", "address": "231 Beayer Place, Hall, North Dakota, 7168", "about": "Sunt eiusmod est pariatur est nisi Lorem. Quis esse qui amet labore ut mollit velit ipsum veniam cillum do culpa. Nostrud proident amet id aute. Id veniam id labore occaecat officia consectetur labore ea dolore irure ea qui ad do.\r\n", "registered": "2014-04-12T11:35:37-12:00", "latitude": -23.332909, "longitude": 78.875392, "tags": [ "velit", "laboris", "id", "do", "adipisicing", "ad", "aliqua" ], "friends": [ { "id": 0, "name": "Annette Short" }, { "id": 1, "name": "Kari Cameron" }, { "id": 2, "name": "Head Lawrence" } ], "greeting": "Hello, Vance Reese! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa5829ae5aeb9320f", "index": 4575, "guid": "f21e0e06-10de-4cf5-b845-237fcbb57fd0", "isActive": false, "balance": "$1,531.71", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Corina Small", "gender": "female", "company": "RUBADUB", "email": "corinasmall@rubadub.com", "phone": "+1 (839) 563-2630", "address": "902 Terrace Place, Snelling, Louisiana, 4919", "about": "Eu irure dolore consequat duis fugiat ad mollit commodo anim anim incididunt officia velit. Ipsum officia eu nostrud et adipisicing do Lorem. Sunt Lorem laborum ipsum eu laborum non incididunt sunt aliquip. Veniam magna nulla dolore tempor qui. Laborum mollit et irure amet aliqua Lorem ipsum tempor. Consectetur sint minim fugiat aute consectetur minim culpa deserunt laborum.\r\n", "registered": "2014-09-01T22:34:04-12:00", "latitude": -78.033776, "longitude": 112.591851, "tags": [ "ea", "non", "adipisicing", "minim", "eiusmod", "nulla", "laborum" ], "friends": [ { "id": 0, "name": "Marissa Wilkins" }, { "id": 1, "name": "Belinda Frye" }, { "id": 2, "name": "Kathie Medina" } ], "greeting": "Hello, Corina Small! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2af9fb2c9c4941cbd6", "index": 4576, "guid": "bb0aa0d4-0753-494d-9d61-47f0a3f5de92", "isActive": true, "balance": "$2,465.91", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Gould Terry", "gender": "male", "company": "RETROTEX", "email": "gouldterry@retrotex.com", "phone": "+1 (879) 596-3773", "address": "425 Hyman Court, Tilden, Northern Mariana Islands, 8166", "about": "Esse consectetur ea velit Lorem irure enim cillum do dolore dolor. Enim consectetur mollit non adipisicing mollit ea pariatur et aliqua laboris. Sunt veniam ullamco incididunt eiusmod excepteur in anim irure exercitation ullamco ex esse excepteur nisi.\r\n", "registered": "2014-09-08T12:36:26-12:00", "latitude": 71.79032, "longitude": 57.889613, "tags": [ "voluptate", "quis", "aute", "pariatur", "dolore", "ut", "ipsum" ], "friends": [ { "id": 0, "name": "Harding Mccullough" }, { "id": 1, "name": "Norris Manning" }, { "id": 2, "name": "Jordan Langley" } ], "greeting": "Hello, Gould Terry! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ac4d70cc460c9ccf8", "index": 4577, "guid": "c8675f27-6ae7-4623-a90d-6a2bfebe34fe", "isActive": true, "balance": "$1,000.43", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Evans Jackson", "gender": "male", "company": "OPPORTECH", "email": "evansjackson@opportech.com", "phone": "+1 (840) 590-2995", "address": "575 Diamond Street, Caspar, Colorado, 9353", "about": "Est amet non amet eiusmod enim. Sit ea et enim laborum excepteur aliqua voluptate est laborum mollit quis do et quis. Est eiusmod in aliquip dolore laborum ad et ullamco nisi velit Lorem nisi aliquip dolor. Laborum irure consequat ullamco non pariatur nostrud ipsum non.\r\n", "registered": "2014-07-03T10:29:05-12:00", "latitude": 76.846917, "longitude": 145.84272, "tags": [ "dolor", "fugiat", "velit", "magna", "est", "eu", "culpa" ], "friends": [ { "id": 0, "name": "Armstrong Grant" }, { "id": 1, "name": "Herminia Hatfield" }, { "id": 2, "name": "Marianne Hodges" } ], "greeting": "Hello, Evans Jackson! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a229744d97c83cca7", "index": 4578, "guid": "6696cd72-c0ee-4d96-9b0c-2e52b8ddca30", "isActive": false, "balance": "$1,961.48", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Doreen Trevino", "gender": "female", "company": "LUNCHPAD", "email": "doreentrevino@lunchpad.com", "phone": "+1 (939) 530-2502", "address": "512 Whitney Avenue, Homeworth, Idaho, 9101", "about": "Fugiat officia nulla id commodo magna veniam elit consectetur. Sunt nostrud quis minim amet sint dolor officia eu et id nulla ea. Irure non ad do eu ea eiusmod officia magna Lorem enim ut in ipsum. Amet irure est amet consequat consequat eu cillum duis eu ea eiusmod dolore proident ipsum.\r\n", "registered": "2014-02-22T18:22:09-13:00", "latitude": -81.840682, "longitude": -121.597054, "tags": [ "culpa", "quis", "irure", "consectetur", "fugiat", "do", "velit" ], "friends": [ { "id": 0, "name": "Lynch Thornton" }, { "id": 1, "name": "Maddox Kelley" }, { "id": 2, "name": "Burt Joseph" } ], "greeting": "Hello, Doreen Trevino! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2aeaea1bb6f190cff6", "index": 4579, "guid": "964c8b80-58a8-4bbe-b8f2-9421c26b5681", "isActive": true, "balance": "$2,817.65", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Goodman Stephens", "gender": "male", "company": "NIQUENT", "email": "goodmanstephens@niquent.com", "phone": "+1 (880) 556-2949", "address": "363 Preston Court, Sparkill, Marshall Islands, 2787", "about": "Dolore tempor cillum veniam ipsum fugiat nulla sunt. Laboris cillum nisi velit consectetur. Ea laborum nulla sit ut sint Lorem sit. Laboris excepteur reprehenderit eu ea reprehenderit velit proident excepteur sunt consectetur. Eiusmod quis fugiat velit excepteur aliqua consectetur ea dolore excepteur ea culpa minim cupidatat aute.\r\n", "registered": "2014-07-17T18:14:14-12:00", "latitude": 61.858298, "longitude": -144.158549, "tags": [ "duis", "qui", "reprehenderit", "laborum", "aute", "ex", "nostrud" ], "friends": [ { "id": 0, "name": "Meyer Norman" }, { "id": 1, "name": "Mccoy Nash" }, { "id": 2, "name": "Shawna Gibbs" } ], "greeting": "Hello, Goodman Stephens! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ae028625722b98ed7", "index": 4580, "guid": "4f4e4f59-4a09-4527-9047-423982624526", "isActive": false, "balance": "$1,415.20", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Rivera Foreman", "gender": "male", "company": "STELAECOR", "email": "riveraforeman@stelaecor.com", "phone": "+1 (927) 440-3763", "address": "739 Orange Street, Chamizal, New York, 7959", "about": "Ad occaecat ullamco non eiusmod excepteur tempor reprehenderit ut exercitation qui quis consequat deserunt. Non cupidatat nulla duis adipisicing. Aliqua incididunt laboris tempor qui enim velit in ea. Voluptate proident exercitation dolor anim ipsum labore velit nostrud aliqua nisi culpa. Cupidatat esse et mollit est eiusmod mollit sunt aliqua irure duis. Anim quis excepteur aliqua anim non minim magna.\r\n", "registered": "2014-06-02T05:21:56-12:00", "latitude": -46.187988, "longitude": 64.466973, "tags": [ "labore", "ex", "ea", "tempor", "mollit", "dolore", "aliqua" ], "friends": [ { "id": 0, "name": "Bullock Leon" }, { "id": 1, "name": "Black Holt" }, { "id": 2, "name": "Swanson Griffin" } ], "greeting": "Hello, Rivera Foreman! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ac2199107ff953d8d", "index": 4581, "guid": "76a44a7f-5b6c-4bb3-bca0-93a2ae37d13a", "isActive": false, "balance": "$1,938.46", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Hendricks Sutton", "gender": "male", "company": "ORBOID", "email": "hendrickssutton@orboid.com", "phone": "+1 (978) 462-2893", "address": "378 Burnett Street, Sperryville, Guam, 7897", "about": "Id deserunt do est ullamco duis voluptate aliquip tempor exercitation. Proident proident eiusmod et Lorem fugiat. Et ea duis excepteur reprehenderit sit fugiat mollit occaecat eiusmod consectetur velit tempor commodo. Fugiat anim excepteur ex qui eu exercitation veniam sunt incididunt. Fugiat ipsum ut commodo dolore aliqua mollit mollit.\r\n", "registered": "2014-04-30T10:42:55-12:00", "latitude": 83.076484, "longitude": -104.23789, "tags": [ "qui", "esse", "sit", "minim", "reprehenderit", "eiusmod", "ea" ], "friends": [ { "id": 0, "name": "Dixon Woodard" }, { "id": 1, "name": "Ochoa Larsen" }, { "id": 2, "name": "Tina Parks" } ], "greeting": "Hello, Hendricks Sutton! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a9a23a3eaa9cb0ff3", "index": 4582, "guid": "1ed3ba4c-2122-4c2a-9f9b-e92c3a9e359e", "isActive": true, "balance": "$2,893.37", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Elliott Benson", "gender": "male", "company": "TELEPARK", "email": "elliottbenson@telepark.com", "phone": "+1 (878) 491-2614", "address": "200 Dean Street, Barstow, Virgin Islands, 1809", "about": "Duis duis ullamco Lorem labore laborum non qui commodo nostrud id. Culpa incididunt irure proident esse in consectetur nisi dolore sunt adipisicing nostrud occaecat. Nisi aliquip quis id dolore exercitation laborum. Reprehenderit proident consectetur sit duis deserunt irure commodo. Nulla do consequat occaecat minim labore enim labore sit ex quis velit exercitation. Aliquip elit nisi nostrud id reprehenderit irure consectetur officia enim laborum mollit ipsum.\r\n", "registered": "2014-01-10T09:15:27-13:00", "latitude": 23.162715, "longitude": 119.301701, "tags": [ "consequat", "quis", "nisi", "tempor", "nostrud", "culpa", "voluptate" ], "friends": [ { "id": 0, "name": "Gonzales Jefferson" }, { "id": 1, "name": "Ruth Ruiz" }, { "id": 2, "name": "Roach Mclaughlin" } ], "greeting": "Hello, Elliott Benson! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ab13a22a2f618ff15", "index": 4583, "guid": "660d9b0c-7f45-4df6-b0f8-30e08d8f7e4e", "isActive": false, "balance": "$2,968.79", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Medina Bernard", "gender": "male", "company": "COLAIRE", "email": "medinabernard@colaire.com", "phone": "+1 (873) 558-2671", "address": "704 Desmond Court, Warren, Massachusetts, 258", "about": "Ipsum minim nulla excepteur ipsum nisi dolore qui cillum sit fugiat quis velit pariatur. Labore non et exercitation pariatur magna in irure ipsum magna incididunt labore. Mollit velit ex ipsum ipsum dolor commodo excepteur commodo ea ea. Aliquip reprehenderit et adipisicing amet velit tempor nostrud commodo ullamco pariatur dolore voluptate non. Irure incididunt non reprehenderit laboris. Sunt dolor dolor sit ullamco. Nostrud velit occaecat ea consequat id voluptate non dolore consequat sit excepteur cupidatat.\r\n", "registered": "2014-04-01T20:15:14-13:00", "latitude": 29.42002, "longitude": -152.057108, "tags": [ "duis", "aliqua", "fugiat", "pariatur", "nisi", "deserunt", "excepteur" ], "friends": [ { "id": 0, "name": "Martina Bonner" }, { "id": 1, "name": "Stella Fischer" }, { "id": 2, "name": "Barbara Whitney" } ], "greeting": "Hello, Medina Bernard! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a3eab794cb15d1798", "index": 4584, "guid": "64ee09d4-b7e7-49eb-ba1c-9c4c12d4b6cd", "isActive": false, "balance": "$2,811.65", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Holt Conway", "gender": "male", "company": "ZORROMOP", "email": "holtconway@zorromop.com", "phone": "+1 (814) 484-3290", "address": "690 Hart Place, Sims, Utah, 4288", "about": "Labore irure voluptate mollit esse Lorem. Veniam velit ut nostrud in consectetur adipisicing ut magna veniam velit cupidatat laborum sint dolore. Ad exercitation aliqua sit sint exercitation elit in sint voluptate do.\r\n", "registered": "2014-02-16T03:44:35-13:00", "latitude": -54.625923, "longitude": -172.49956, "tags": [ "minim", "magna", "culpa", "minim", "veniam", "ea", "occaecat" ], "friends": [ { "id": 0, "name": "Sweeney Patton" }, { "id": 1, "name": "Barrera Hahn" }, { "id": 2, "name": "Kerri Mcpherson" } ], "greeting": "Hello, Holt Conway! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a821175def7c5f409", "index": 4585, "guid": "feaa9e86-5e1f-4741-9454-6e9aec0f8c04", "isActive": true, "balance": "$2,865.23", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Katina Cabrera", "gender": "female", "company": "REALYSIS", "email": "katinacabrera@realysis.com", "phone": "+1 (996) 483-3581", "address": "653 Monroe Street, Shelby, Montana, 2421", "about": "Sint officia ex ad ut ullamco pariatur deserunt aliqua reprehenderit aliquip velit. Aliqua qui pariatur id culpa nostrud. Qui commodo ea consequat aute consectetur enim sint anim ullamco officia reprehenderit pariatur magna velit.\r\n", "registered": "2014-06-22T02:50:14-12:00", "latitude": 3.809552, "longitude": -32.631523, "tags": [ "consectetur", "dolor", "id", "pariatur", "fugiat", "amet", "sint" ], "friends": [ { "id": 0, "name": "Moon Sanchez" }, { "id": 1, "name": "Hays Davidson" }, { "id": 2, "name": "Addie Preston" } ], "greeting": "Hello, Katina Cabrera! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ad942086cc52ccf22", "index": 4586, "guid": "4a4d5677-e04f-44b2-8400-676b3af50ed0", "isActive": true, "balance": "$3,104.19", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Kendra Williams", "gender": "female", "company": "ENORMO", "email": "kendrawilliams@enormo.com", "phone": "+1 (953) 522-2420", "address": "114 Debevoise Avenue, Bergoo, Wisconsin, 159", "about": "Esse fugiat consectetur ullamco ullamco cupidatat incididunt ex qui exercitation. Qui tempor deserunt do id deserunt. Sit voluptate enim ea aute aute. Proident deserunt sunt velit veniam consectetur amet ipsum commodo cupidatat Lorem occaecat.\r\n", "registered": "2014-08-07T05:21:38-12:00", "latitude": -45.604359, "longitude": 129.233665, "tags": [ "culpa", "quis", "exercitation", "quis", "ad", "nisi", "excepteur" ], "friends": [ { "id": 0, "name": "Keisha Reilly" }, { "id": 1, "name": "Isabel Jacobson" }, { "id": 2, "name": "Sharron Jones" } ], "greeting": "Hello, Kendra Williams! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aea6902aea828ba73", "index": 4587, "guid": "0c229c55-abaa-4ac8-b732-94187f337106", "isActive": true, "balance": "$1,374.40", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Schneider Bennett", "gender": "male", "company": "RODEOMAD", "email": "schneiderbennett@rodeomad.com", "phone": "+1 (975) 556-3509", "address": "946 Berkeley Place, Biddle, Maine, 7039", "about": "Incididunt ullamco pariatur officia nisi aute commodo. Sit eiusmod do minim consequat voluptate labore aliqua. Exercitation officia excepteur velit eiusmod.\r\n", "registered": "2014-05-07T18:05:48-12:00", "latitude": -35.267926, "longitude": -87.851784, "tags": [ "esse", "do", "nisi", "consectetur", "reprehenderit", "deserunt", "elit" ], "friends": [ { "id": 0, "name": "Wagner Quinn" }, { "id": 1, "name": "Cecile Zimmerman" }, { "id": 2, "name": "Stark Cruz" } ], "greeting": "Hello, Schneider Bennett! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a2c13bc045f465dab", "index": 4588, "guid": "b4fba58d-15d9-45cf-b2ff-44651f5f63ce", "isActive": true, "balance": "$2,752.59", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Wilma Moody", "gender": "female", "company": "VOIPA", "email": "wilmamoody@voipa.com", "phone": "+1 (940) 563-2918", "address": "530 Varick Avenue, Wollochet, Virginia, 4624", "about": "Labore est irure reprehenderit officia ipsum aliqua. Fugiat in culpa exercitation sunt cillum cillum duis laborum ad non. Aliquip enim incididunt ex anim minim tempor consequat reprehenderit deserunt id est. Sint sint do ullamco pariatur ad deserunt eiusmod.\r\n", "registered": "2014-08-15T04:56:24-12:00", "latitude": -66.019991, "longitude": -46.918484, "tags": [ "quis", "dolor", "ullamco", "non", "consectetur", "do", "non" ], "friends": [ { "id": 0, "name": "William Barton" }, { "id": 1, "name": "Simone Ayala" }, { "id": 2, "name": "Tricia Workman" } ], "greeting": "Hello, Wilma Moody! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ae2b04dd25af26d7b", "index": 4589, "guid": "69e06bd5-56d4-4359-bd46-7e513c6f9275", "isActive": true, "balance": "$2,583.22", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Terrie Hopper", "gender": "female", "company": "BULLZONE", "email": "terriehopper@bullzone.com", "phone": "+1 (815) 592-3691", "address": "110 Hoyts Lane, Snowville, Kentucky, 363", "about": "Laboris fugiat laboris veniam nisi duis magna consectetur voluptate in adipisicing ut. Enim reprehenderit enim irure nisi eiusmod quis. Qui non nisi nisi non id ipsum. Dolor est qui dolor non cupidatat nostrud tempor quis est duis aliquip aute. Excepteur dolor velit ullamco deserunt minim est occaecat nulla laboris consectetur. Anim eiusmod proident reprehenderit eiusmod proident mollit et irure dolor. Dolore ad consequat cillum esse consectetur elit cupidatat occaecat tempor sint officia cupidatat.\r\n", "registered": "2014-07-06T02:26:34-12:00", "latitude": 85.380943, "longitude": -103.098849, "tags": [ "incididunt", "sunt", "anim", "labore", "cillum", "ea", "cupidatat" ], "friends": [ { "id": 0, "name": "Spears Turner" }, { "id": 1, "name": "Campos Shaffer" }, { "id": 2, "name": "Madeline Miranda" } ], "greeting": "Hello, Terrie Hopper! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a491d0c820272f713", "index": 4590, "guid": "854769f5-fcb6-43e9-b21c-50c42fd3afa1", "isActive": true, "balance": "$1,134.97", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Roberta Cash", "gender": "female", "company": "GLUKGLUK", "email": "robertacash@glukgluk.com", "phone": "+1 (875) 401-3914", "address": "436 Friel Place, Fairhaven, Connecticut, 3716", "about": "Amet tempor do eiusmod voluptate officia voluptate enim culpa in voluptate aute ex velit. Sit nulla duis quis nisi enim amet nisi non sint quis culpa proident nisi incididunt. Voluptate quis aliqua anim dolor fugiat eu laborum ullamco ea cillum proident dolore non dolore. Reprehenderit magna amet proident laborum nisi est voluptate ea anim Lorem Lorem. Sit ut ullamco cupidatat dolor sit eiusmod cupidatat nulla cillum.\r\n", "registered": "2014-01-26T02:17:59-13:00", "latitude": 81.313229, "longitude": -141.666523, "tags": [ "sunt", "voluptate", "nulla", "nostrud", "sunt", "id", "dolor" ], "friends": [ { "id": 0, "name": "Gladys Randall" }, { "id": 1, "name": "Waller Drake" }, { "id": 2, "name": "Anna Calderon" } ], "greeting": "Hello, Roberta Cash! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a62b5f972bed4f5f9", "index": 4591, "guid": "f2d94749-1925-41c5-929f-b4393478cd03", "isActive": true, "balance": "$3,903.79", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Chambers Mckinney", "gender": "male", "company": "COMSTRUCT", "email": "chambersmckinney@comstruct.com", "phone": "+1 (846) 426-2147", "address": "737 Agate Court, Kanauga, Mississippi, 3865", "about": "Voluptate incididunt in dolor esse pariatur reprehenderit ullamco magna tempor aliquip sint reprehenderit qui sit. Laborum anim ipsum minim aliqua eiusmod est cupidatat aliqua esse fugiat adipisicing magna minim labore. Minim laborum deserunt aliqua eu ea. Ad amet et irure esse. Tempor qui cupidatat aliqua proident ad aliqua excepteur deserunt aute enim laborum sunt. Ad aute dolore deserunt consectetur et ipsum proident anim.\r\n", "registered": "2014-05-29T17:08:47-12:00", "latitude": 23.098432, "longitude": -77.085394, "tags": [ "ut", "sint", "proident", "nisi", "tempor", "ullamco", "veniam" ], "friends": [ { "id": 0, "name": "Riley Estrada" }, { "id": 1, "name": "Beatriz Weaver" }, { "id": 2, "name": "Berta Welch" } ], "greeting": "Hello, Chambers Mckinney! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a0b35ada81ca668bf", "index": 4592, "guid": "ad67f0ee-2f2d-4618-bdcc-63f449362b4f", "isActive": true, "balance": "$2,887.35", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Clements Durham", "gender": "male", "company": "VALPREAL", "email": "clementsdurham@valpreal.com", "phone": "+1 (922) 534-2486", "address": "319 Keen Court, Kilbourne, Washington, 8755", "about": "Consequat ad excepteur consequat aliquip est enim dolore elit reprehenderit Lorem excepteur. Mollit incididunt tempor aute quis cillum et quis officia veniam. Proident ea commodo enim et dolor magna fugiat occaecat exercitation do. Occaecat nulla exercitation esse cillum nulla adipisicing reprehenderit quis velit dolore consequat consectetur.\r\n", "registered": "2014-09-07T14:40:53-12:00", "latitude": -86.875399, "longitude": -77.50071, "tags": [ "labore", "ad", "sint", "velit", "amet", "duis", "duis" ], "friends": [ { "id": 0, "name": "Adele Woodward" }, { "id": 1, "name": "Wheeler Fowler" }, { "id": 2, "name": "Adams Holloway" } ], "greeting": "Hello, Clements Durham! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aa9ac299ca8caa1fa", "index": 4593, "guid": "8311e191-94a3-4f6e-843a-ad9827645e3d", "isActive": false, "balance": "$1,812.06", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Robin Britt", "gender": "female", "company": "CHILLIUM", "email": "robinbritt@chillium.com", "phone": "+1 (989) 569-3626", "address": "661 Hamilton Avenue, Saddlebrooke, Tennessee, 1600", "about": "Quis ut pariatur exercitation est mollit irure Lorem elit exercitation veniam enim voluptate. Cillum id exercitation ea anim est aute incididunt ad reprehenderit do fugiat enim magna ad. Nisi qui velit cupidatat aliqua non incididunt aliquip ex exercitation ut et cillum elit eiusmod. Dolor fugiat qui laboris sit duis eiusmod magna officia aliquip.\r\n", "registered": "2014-09-17T12:35:07-12:00", "latitude": 38.689408, "longitude": -77.333075, "tags": [ "commodo", "Lorem", "ut", "ad", "dolore", "duis", "culpa" ], "friends": [ { "id": 0, "name": "Haney Berg" }, { "id": 1, "name": "Lorraine Moss" }, { "id": 2, "name": "Sanford Stark" } ], "greeting": "Hello, Robin Britt! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2acc558f6f472f5f3b", "index": 4594, "guid": "71ec7707-5264-4428-9e56-554c7689921a", "isActive": true, "balance": "$3,209.66", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Donovan Mendoza", "gender": "male", "company": "ANDRYX", "email": "donovanmendoza@andryx.com", "phone": "+1 (878) 444-2014", "address": "214 Saratoga Avenue, Waterloo, Alabama, 5983", "about": "Velit pariatur commodo aliqua fugiat. Laborum dolore voluptate dolor minim ex dolor eiusmod in esse laborum ullamco exercitation do ullamco. Pariatur eiusmod eu nostrud reprehenderit mollit Lorem excepteur Lorem veniam nostrud pariatur. Culpa voluptate irure ad exercitation aliquip occaecat cupidatat consequat pariatur eu. Reprehenderit nostrud consequat ullamco aute aliquip laboris tempor sint incididunt aute in. Excepteur enim ipsum do occaecat ut pariatur consectetur id consectetur labore.\r\n", "registered": "2014-06-17T07:14:14-12:00", "latitude": -59.360108, "longitude": -15.948179, "tags": [ "reprehenderit", "adipisicing", "consectetur", "magna", "veniam", "nulla", "laboris" ], "friends": [ { "id": 0, "name": "Alexander Harrison" }, { "id": 1, "name": "Levine Dickerson" }, { "id": 2, "name": "Peters Arnold" } ], "greeting": "Hello, Donovan Mendoza! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a65586b88f9fcb556", "index": 4595, "guid": "f482c86a-c0ab-40af-9552-7e06d9c8e249", "isActive": false, "balance": "$2,475.91", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Hartman Rodriquez", "gender": "male", "company": "STEELFAB", "email": "hartmanrodriquez@steelfab.com", "phone": "+1 (932) 530-3294", "address": "234 Halleck Street, Statenville, Ohio, 7531", "about": "Reprehenderit reprehenderit deserunt qui est tempor nisi magna anim commodo. Mollit exercitation sunt mollit sit laboris minim veniam voluptate occaecat eiusmod nulla. Voluptate veniam esse magna officia labore nostrud deserunt aliqua. Irure nostrud sint consequat elit non anim id elit ipsum dolore.\r\n", "registered": "2014-05-20T13:08:46-12:00", "latitude": -43.254035, "longitude": -18.13115, "tags": [ "consequat", "excepteur", "sunt", "consectetur", "consectetur", "qui", "et" ], "friends": [ { "id": 0, "name": "Charles Guy" }, { "id": 1, "name": "Mills Vang" }, { "id": 2, "name": "Nelson Lynn" } ], "greeting": "Hello, Hartman Rodriquez! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ad9cf6161e434f374", "index": 4596, "guid": "a85cdfea-acd1-4a49-8e90-745e286e4bc7", "isActive": true, "balance": "$2,179.06", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Estes York", "gender": "male", "company": "DEEPENDS", "email": "estesyork@deepends.com", "phone": "+1 (950) 444-3200", "address": "871 Story Court, Eastmont, Hawaii, 6769", "about": "Dolore magna do aliqua eu culpa velit eu est. Ad ea incididunt enim proident dolore magna ad laboris irure. Elit reprehenderit id do magna pariatur ad ex aliquip.\r\n", "registered": "2014-08-22T02:25:33-12:00", "latitude": -28.73219, "longitude": 68.227615, "tags": [ "laboris", "aliquip", "aliquip", "aute", "laborum", "ipsum", "excepteur" ], "friends": [ { "id": 0, "name": "Vazquez Erickson" }, { "id": 1, "name": "Kent Fields" }, { "id": 2, "name": "Mai Aguilar" } ], "greeting": "Hello, Estes York! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a85b6b48990f0645a", "index": 4597, "guid": "7568d49f-82cc-4ba5-bf38-c7540a139338", "isActive": false, "balance": "$3,822.58", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Jolene Gomez", "gender": "female", "company": "INTERGEEK", "email": "jolenegomez@intergeek.com", "phone": "+1 (934) 448-2529", "address": "133 Wyckoff Avenue, Glendale, New Mexico, 2294", "about": "Esse sint esse tempor velit. Et veniam pariatur excepteur nulla labore proident consequat. Magna cillum commodo laboris anim laborum eu enim eu eiusmod reprehenderit cupidatat amet voluptate exercitation. Anim veniam aute commodo esse fugiat ea magna eiusmod non dolore commodo duis est ut.\r\n", "registered": "2014-07-07T13:36:48-12:00", "latitude": -69.156803, "longitude": 148.422826, "tags": [ "amet", "ex", "dolore", "irure", "anim", "dolore", "veniam" ], "friends": [ { "id": 0, "name": "Sonia Stewart" }, { "id": 1, "name": "Bette Foster" }, { "id": 2, "name": "Kristi Pacheco" } ], "greeting": "Hello, Jolene Gomez! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ac399a66e8d3a7419", "index": 4598, "guid": "4681f6e8-fa98-4feb-95fc-bbc6a9226749", "isActive": false, "balance": "$3,335.53", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Blankenship Rodgers", "gender": "male", "company": "YURTURE", "email": "blankenshiprodgers@yurture.com", "phone": "+1 (931) 440-2065", "address": "133 Harrison Place, Nash, Maryland, 5370", "about": "Fugiat fugiat minim minim pariatur eu officia qui nulla. Eu enim laboris minim qui voluptate. Velit laborum tempor magna Lorem elit ex consequat nisi non ut aute aliqua excepteur.\r\n", "registered": "2014-07-29T19:21:20-12:00", "latitude": -31.25082, "longitude": 174.096067, "tags": [ "esse", "incididunt", "ex", "dolor", "laboris", "ut", "et" ], "friends": [ { "id": 0, "name": "Parsons Meyers" }, { "id": 1, "name": "Paige Roach" }, { "id": 2, "name": "Gibson Gallegos" } ], "greeting": "Hello, Blankenship Rodgers! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a63eb32ca0dc3b16c", "index": 4599, "guid": "ddda324a-2e38-4734-87d4-b27756d26b07", "isActive": true, "balance": "$2,218.16", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Powell Stokes", "gender": "male", "company": "LETPRO", "email": "powellstokes@letpro.com", "phone": "+1 (991) 426-3923", "address": "945 Hope Street, Ryderwood, Alaska, 9729", "about": "Ea amet reprehenderit nostrud est eu ex qui proident commodo elit mollit labore velit enim. Esse labore enim aute laborum. Eiusmod adipisicing sint non eiusmod cillum. Occaecat tempor magna enim deserunt aliqua pariatur dolore. In eiusmod adipisicing officia aliquip esse et Lorem excepteur laboris. Aliquip culpa minim aute officia eiusmod quis pariatur enim non voluptate deserunt fugiat reprehenderit.\r\n", "registered": "2014-03-21T03:12:55-13:00", "latitude": 18.165913, "longitude": 80.642682, "tags": [ "proident", "laborum", "do", "anim", "ex", "amet", "cupidatat" ], "friends": [ { "id": 0, "name": "Vinson Marks" }, { "id": 1, "name": "Webb Woods" }, { "id": 2, "name": "Rivas Briggs" } ], "greeting": "Hello, Powell Stokes! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ab8193ea9c328de7d", "index": 4600, "guid": "4bbde018-96fb-43c0-99e3-6bac55683103", "isActive": false, "balance": "$3,618.80", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Baxter Serrano", "gender": "male", "company": "AUTOGRATE", "email": "baxterserrano@autograte.com", "phone": "+1 (823) 403-3983", "address": "920 Hinckley Place, Nutrioso, Arizona, 8024", "about": "Dolore tempor incididunt eiusmod elit eiusmod aute id ullamco magna. Ex Lorem sint aliqua mollit elit id labore aliquip dolore ex incididunt eiusmod voluptate. Sunt elit consectetur labore esse dolore enim adipisicing do amet tempor tempor reprehenderit. Est id non officia reprehenderit dolor voluptate tempor. Sunt voluptate labore velit magna reprehenderit incididunt. Laboris sint ipsum laboris Lorem amet tempor quis in labore laborum esse laborum ex labore. Velit ipsum non deserunt consectetur ex fugiat laboris et.\r\n", "registered": "2014-03-11T01:13:16-13:00", "latitude": -83.433485, "longitude": -13.864891, "tags": [ "fugiat", "veniam", "nostrud", "aliquip", "ex", "est", "pariatur" ], "friends": [ { "id": 0, "name": "Aimee Cooper" }, { "id": 1, "name": "Ophelia Floyd" }, { "id": 2, "name": "Juana Stevenson" } ], "greeting": "Hello, Baxter Serrano! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2aa430784dff66996c", "index": 4601, "guid": "35c4e1ae-3d1d-49ed-be14-eb3e1f8b59c8", "isActive": false, "balance": "$3,769.22", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Farley Sargent", "gender": "male", "company": "TERRAGEN", "email": "farleysargent@terragen.com", "phone": "+1 (910) 519-2103", "address": "735 Bridgewater Street, Dupuyer, Federated States Of Micronesia, 3826", "about": "Deserunt enim pariatur sunt ullamco anim excepteur ut eu voluptate id aliqua ut commodo eiusmod. Cupidatat velit enim ut labore officia esse deserunt deserunt incididunt exercitation adipisicing elit proident. Minim quis labore aliqua sint enim ullamco quis ex laboris officia amet incididunt. Ullamco id in est tempor sit nisi voluptate aliqua do velit tempor.\r\n", "registered": "2014-04-25T21:32:25-12:00", "latitude": -56.142751, "longitude": -114.388998, "tags": [ "elit", "esse", "aliquip", "laboris", "occaecat", "magna", "eu" ], "friends": [ { "id": 0, "name": "Miranda Johnston" }, { "id": 1, "name": "Blackwell Valenzuela" }, { "id": 2, "name": "Mendoza Richards" } ], "greeting": "Hello, Farley Sargent! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ad81e4c28c6c1da17", "index": 4602, "guid": "6b90474d-25cc-4a2e-a256-abbbfc795d02", "isActive": false, "balance": "$3,404.59", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Jane Duffy", "gender": "female", "company": "AVENETRO", "email": "janeduffy@avenetro.com", "phone": "+1 (818) 501-2271", "address": "662 Schermerhorn Street, Orviston, Oklahoma, 1433", "about": "Sunt excepteur adipisicing dolor nulla enim ex veniam quis officia ad exercitation. Dolore amet sint labore deserunt exercitation adipisicing incididunt ex. Anim proident incididunt irure cupidatat eu in deserunt quis enim. Incididunt do officia dolore qui labore voluptate velit Lorem adipisicing cillum. Eiusmod non exercitation sint quis.\r\n", "registered": "2014-08-23T22:33:37-12:00", "latitude": -64.654523, "longitude": -96.077005, "tags": [ "magna", "ad", "aute", "sunt", "in", "non", "magna" ], "friends": [ { "id": 0, "name": "Claudine Blanchard" }, { "id": 1, "name": "Milagros Craig" }, { "id": 2, "name": "Rachel Byrd" } ], "greeting": "Hello, Jane Duffy! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aa9560a6ea8dac696", "index": 4603, "guid": "097f7f14-f5bd-462f-a9e5-7de04f764f94", "isActive": false, "balance": "$3,877.94", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Ortiz White", "gender": "male", "company": "ZYTRAC", "email": "ortizwhite@zytrac.com", "phone": "+1 (923) 476-2694", "address": "249 Woodpoint Road, Moraida, Michigan, 7219", "about": "Reprehenderit pariatur minim ad labore sint cillum cupidatat irure tempor reprehenderit commodo eu exercitation. Consectetur duis culpa enim labore anim. Enim dolore et aute sint mollit laborum excepteur qui. Sint culpa ut ex consequat cillum velit ipsum aliqua consectetur ut irure. Amet esse sit ipsum do sit id enim ad dolore exercitation. Voluptate esse et elit excepteur consectetur do aute culpa ullamco cupidatat consectetur pariatur exercitation.\r\n", "registered": "2014-07-25T20:34:14-12:00", "latitude": 46.041749, "longitude": 50.511144, "tags": [ "id", "exercitation", "duis", "reprehenderit", "nisi", "in", "exercitation" ], "friends": [ { "id": 0, "name": "Talley Hensley" }, { "id": 1, "name": "Yolanda Martinez" }, { "id": 2, "name": "Dona Richmond" } ], "greeting": "Hello, Ortiz White! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a9a7b621024e4c9d3", "index": 4604, "guid": "649267ad-d75f-4578-996f-6d42fadc893f", "isActive": true, "balance": "$1,842.87", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Bertie Mcclure", "gender": "female", "company": "MULTRON", "email": "bertiemcclure@multron.com", "phone": "+1 (871) 431-2151", "address": "610 Bevy Court, Berlin, Kansas, 1243", "about": "Minim eu nisi aliqua enim dolor ex nulla duis. Sit sint consectetur nostrud occaecat mollit excepteur esse duis. Do commodo ex eu nostrud magna eu dolore proident exercitation proident elit id aliquip.\r\n", "registered": "2014-04-21T18:27:39-12:00", "latitude": 59.407453, "longitude": -72.942113, "tags": [ "do", "laboris", "voluptate", "culpa", "dolore", "excepteur", "Lorem" ], "friends": [ { "id": 0, "name": "Dora Peters" }, { "id": 1, "name": "Navarro Lara" }, { "id": 2, "name": "Summers Cleveland" } ], "greeting": "Hello, Bertie Mcclure! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a64e2d280de0da5aa", "index": 4605, "guid": "a9b7a964-e831-4275-ab6b-4ad3b328fae9", "isActive": true, "balance": "$3,216.76", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Clarice Howell", "gender": "female", "company": "DAISU", "email": "claricehowell@daisu.com", "phone": "+1 (959) 536-3404", "address": "826 Division Avenue, Aurora, South Dakota, 3488", "about": "Voluptate irure sint sit quis tempor cupidatat consequat eu reprehenderit ipsum. Id qui enim adipisicing sunt irure. Voluptate Lorem nisi aliquip proident. Dolore mollit voluptate laboris mollit ex. Duis quis nisi pariatur ut voluptate qui consectetur quis.\r\n", "registered": "2014-07-24T18:20:36-12:00", "latitude": 63.901661, "longitude": 18.669139, "tags": [ "culpa", "sunt", "anim", "elit", "nostrud", "do", "amet" ], "friends": [ { "id": 0, "name": "Mcgee Nielsen" }, { "id": 1, "name": "Frye Rhodes" }, { "id": 2, "name": "Dianne Hartman" } ], "greeting": "Hello, Clarice Howell! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a10ebf2274d2ec398", "index": 4606, "guid": "6e0390e0-2f42-4d27-b305-ef500f7f0dd5", "isActive": true, "balance": "$3,265.93", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Bernadette Travis", "gender": "female", "company": "MALATHION", "email": "bernadettetravis@malathion.com", "phone": "+1 (858) 467-2483", "address": "757 Livingston Street, Mansfield, West Virginia, 851", "about": "Cillum consectetur dolore velit veniam consectetur veniam mollit ut anim ut. Quis elit duis eiusmod proident est pariatur reprehenderit ad. Do occaecat nisi pariatur Lorem reprehenderit mollit irure aliquip ipsum eiusmod laborum cillum exercitation deserunt. Sit commodo do aliquip ut proident reprehenderit magna.\r\n", "registered": "2014-02-04T08:47:59-13:00", "latitude": -2.256494, "longitude": -56.572651, "tags": [ "adipisicing", "veniam", "eiusmod", "nostrud", "sint", "veniam", "laboris" ], "friends": [ { "id": 0, "name": "Lara Wilson" }, { "id": 1, "name": "Fulton Pace" }, { "id": 2, "name": "Wood Sparks" } ], "greeting": "Hello, Bernadette Travis! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a343047ac0fa96929", "index": 4607, "guid": "6ed9472a-f669-44ea-bc64-d3ead4c895aa", "isActive": false, "balance": "$3,166.38", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Jeanne Patterson", "gender": "female", "company": "CONJURICA", "email": "jeannepatterson@conjurica.com", "phone": "+1 (978) 567-2312", "address": "657 Estate Road, Fairmount, Texas, 5379", "about": "Tempor sunt nostrud nostrud aute ea est elit sint adipisicing dolore irure. Minim exercitation mollit voluptate aliquip minim veniam esse deserunt minim ullamco mollit tempor proident. Officia eu est aute do et est anim. Ullamco occaecat nisi duis exercitation deserunt occaecat anim et mollit voluptate. Nostrud nostrud ipsum sunt consectetur excepteur quis fugiat nulla veniam in sunt in. Minim commodo ex aliqua excepteur eiusmod pariatur aute. Aliqua laborum cillum nulla elit consequat.\r\n", "registered": "2014-09-01T02:19:19-12:00", "latitude": 80.892925, "longitude": 63.091375, "tags": [ "aliquip", "exercitation", "ea", "magna", "quis", "incididunt", "magna" ], "friends": [ { "id": 0, "name": "Kelly Wood" }, { "id": 1, "name": "Guerra Rodriguez" }, { "id": 2, "name": "Beth Bates" } ], "greeting": "Hello, Jeanne Patterson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ad6125d02b64566db", "index": 4608, "guid": "edeb5d94-3f8f-41b5-bd80-94fb5c2d62b1", "isActive": false, "balance": "$2,132.14", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Leanne Shepard", "gender": "female", "company": "COMTRAIL", "email": "leanneshepard@comtrail.com", "phone": "+1 (885) 457-2327", "address": "960 Delevan Street, Cannondale, Oregon, 1567", "about": "Ea voluptate ad occaecat officia veniam ad aliquip consequat adipisicing ex ullamco minim eiusmod. Esse laboris est culpa labore aute reprehenderit commodo ut sint Lorem nisi elit et. Et sunt enim veniam consequat duis mollit Lorem sint magna ex adipisicing eiusmod. In quis ullamco deserunt esse qui officia pariatur ut dolore magna nulla veniam. Laboris fugiat est adipisicing enim pariatur exercitation dolor aute dolore aute voluptate sunt consequat. Laboris non et aliqua nisi quis officia esse sit elit aliqua. Nostrud velit do enim non laboris Lorem laborum tempor consectetur culpa sint ex ea.\r\n", "registered": "2014-04-22T23:57:01-12:00", "latitude": 28.665658, "longitude": -27.61273, "tags": [ "aliqua", "excepteur", "Lorem", "aliqua", "cillum", "sit", "et" ], "friends": [ { "id": 0, "name": "Jeanette Mercado" }, { "id": 1, "name": "Alexis Fitzpatrick" }, { "id": 2, "name": "Jenna Hart" } ], "greeting": "Hello, Leanne Shepard! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a621554dd66986068", "index": 4609, "guid": "27dc61ce-edb1-4ada-85d8-dca96c8244a9", "isActive": false, "balance": "$2,748.92", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Good Poole", "gender": "male", "company": "VIAGREAT", "email": "goodpoole@viagreat.com", "phone": "+1 (884) 554-3990", "address": "412 Eagle Street, Gerber, Nevada, 4584", "about": "Est cillum sit non adipisicing. Ad sunt sunt ea ea officia ad nostrud consectetur nisi aliqua est in ipsum quis. Consectetur voluptate eiusmod amet est anim excepteur mollit voluptate ipsum id officia.\r\n", "registered": "2014-03-13T17:56:19-13:00", "latitude": 10.84525, "longitude": -46.126344, "tags": [ "anim", "exercitation", "laborum", "deserunt", "in", "tempor", "nisi" ], "friends": [ { "id": 0, "name": "Beatrice Franks" }, { "id": 1, "name": "Cathy Watson" }, { "id": 2, "name": "Janie Shaw" } ], "greeting": "Hello, Good Poole! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aeee14f277f84510d", "index": 4610, "guid": "1cd8cbcb-a239-4775-a8b4-c68f73ae4df7", "isActive": false, "balance": "$2,565.92", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Sandoval Smith", "gender": "male", "company": "DANJA", "email": "sandovalsmith@danja.com", "phone": "+1 (918) 474-2096", "address": "163 Lincoln Terrace, Mooresburg, Minnesota, 632", "about": "Fugiat reprehenderit est esse commodo culpa consequat magna non Lorem exercitation ex anim nulla ut. Amet in nisi pariatur ad duis sit nostrud cillum officia anim irure minim dolore nulla. Minim aliquip qui enim anim esse in eiusmod dolore irure amet sint. Elit nostrud sit elit dolor nisi qui laboris Lorem deserunt.\r\n", "registered": "2014-04-25T22:32:57-12:00", "latitude": 51.038299, "longitude": 81.174501, "tags": [ "sunt", "adipisicing", "ex", "qui", "sunt", "dolor", "ullamco" ], "friends": [ { "id": 0, "name": "Molina Bell" }, { "id": 1, "name": "Hyde Simon" }, { "id": 2, "name": "Sophia Orr" } ], "greeting": "Hello, Sandoval Smith! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2afafeef5664029673", "index": 4611, "guid": "8307ce67-8c75-4585-8a12-5e2dd4a616ee", "isActive": false, "balance": "$3,911.92", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Debora Page", "gender": "female", "company": "ISIS", "email": "deborapage@isis.com", "phone": "+1 (840) 579-3136", "address": "459 Randolph Street, Rew, Missouri, 3021", "about": "Et nulla dolore veniam non. Est excepteur qui quis nulla exercitation sint cillum nostrud tempor proident et adipisicing duis. Consequat incididunt incididunt culpa exercitation anim esse duis culpa deserunt amet sit aliquip.\r\n", "registered": "2014-03-02T18:30:45-13:00", "latitude": 15.029383, "longitude": -76.358628, "tags": [ "nulla", "mollit", "ipsum", "labore", "deserunt", "id", "veniam" ], "friends": [ { "id": 0, "name": "Haynes Greene" }, { "id": 1, "name": "Madelyn Flowers" }, { "id": 2, "name": "Stone Spencer" } ], "greeting": "Hello, Debora Page! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a5190bee2049884eb", "index": 4612, "guid": "f36130ea-b6d7-4137-b799-6eb583217653", "isActive": false, "balance": "$1,157.90", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Walls Booker", "gender": "male", "company": "ANOCHA", "email": "wallsbooker@anocha.com", "phone": "+1 (896) 431-2099", "address": "844 Carlton Avenue, Blanco, Rhode Island, 9402", "about": "Aliquip dolore sunt aliqua incididunt aliquip. Dolore nulla officia esse Lorem. Consectetur exercitation officia voluptate sunt pariatur sunt commodo amet esse est ut. Voluptate aute aliquip laborum quis ullamco enim nostrud minim ex ex ut. Id excepteur amet nisi quis esse qui officia do sunt reprehenderit.\r\n", "registered": "2014-07-07T22:35:25-12:00", "latitude": 43.465645, "longitude": -149.494675, "tags": [ "in", "fugiat", "est", "quis", "officia", "nostrud", "elit" ], "friends": [ { "id": 0, "name": "Bruce Vinson" }, { "id": 1, "name": "Booth Craft" }, { "id": 2, "name": "Lynn Frazier" } ], "greeting": "Hello, Walls Booker! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2aca0fadecbf57c694", "index": 4613, "guid": "fab8c0ca-95b4-4681-a130-42f57a4190cd", "isActive": false, "balance": "$1,563.48", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Hunt Guerrero", "gender": "male", "company": "ZYPLE", "email": "huntguerrero@zyple.com", "phone": "+1 (892) 516-2168", "address": "887 Furman Avenue, Oneida, Florida, 1482", "about": "Nostrud esse aute id dolor irure culpa cillum est sint elit veniam ut labore aliquip. Proident officia eu tempor eu. Sint incididunt esse ea id fugiat ea reprehenderit aliqua sunt quis esse veniam ea. Ipsum laborum exercitation in fugiat amet sit est et enim. Ullamco tempor do aute ipsum cupidatat sunt est sunt nulla in sit.\r\n", "registered": "2014-04-20T22:31:29-12:00", "latitude": -57.565067, "longitude": 88.668702, "tags": [ "aliqua", "ex", "do", "laboris", "duis", "proident", "aliqua" ], "friends": [ { "id": 0, "name": "Lori Francis" }, { "id": 1, "name": "Maxine Wiley" }, { "id": 2, "name": "Blake Kelly" } ], "greeting": "Hello, Hunt Guerrero! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a72ba98370ec4fe12", "index": 4614, "guid": "b8ff5021-bd71-44fc-9496-7703bd53a29f", "isActive": false, "balance": "$3,216.18", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Roman Klein", "gender": "male", "company": "ZYTREK", "email": "romanklein@zytrek.com", "phone": "+1 (956) 559-2702", "address": "399 Dahill Road, Brambleton, North Carolina, 4155", "about": "Ad quis consequat exercitation tempor aliqua dolor ipsum ad. Deserunt reprehenderit mollit do aute dolore consequat pariatur adipisicing cupidatat mollit sunt. Incididunt consectetur consequat dolore irure cillum incididunt aute consectetur incididunt aliquip sit ea nostrud. Sunt est tempor aliqua magna in aliquip ut est Lorem qui anim eiusmod ipsum. Sit eu consectetur laborum Lorem consequat ad irure esse sunt Lorem aliqua laborum eu non.\r\n", "registered": "2014-04-28T22:51:38-12:00", "latitude": -74.363618, "longitude": -11.51115, "tags": [ "aute", "labore", "id", "consequat", "laborum", "id", "anim" ], "friends": [ { "id": 0, "name": "Morton Mcbride" }, { "id": 1, "name": "Rena Carey" }, { "id": 2, "name": "April Fry" } ], "greeting": "Hello, Roman Klein! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2af925d70cf921d830", "index": 4615, "guid": "0743a4a7-4e4d-46dc-82bf-60d517cdb5c7", "isActive": true, "balance": "$3,883.45", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Alfreda Beasley", "gender": "female", "company": "HONOTRON", "email": "alfredabeasley@honotron.com", "phone": "+1 (916) 522-2347", "address": "206 Ferris Street, Lemoyne, New Hampshire, 6952", "about": "Ex reprehenderit ad id enim eu voluptate do fugiat excepteur. Quis enim nostrud aliquip cillum in commodo magna laborum laboris et nostrud. Anim officia qui culpa deserunt.\r\n", "registered": "2014-07-02T18:33:09-12:00", "latitude": -78.732556, "longitude": 153.828699, "tags": [ "ex", "in", "do", "culpa", "et", "labore", "eu" ], "friends": [ { "id": 0, "name": "Ronda Gaines" }, { "id": 1, "name": "Marisa Warner" }, { "id": 2, "name": "Paula Henry" } ], "greeting": "Hello, Alfreda Beasley! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a1085b4abec18e0a6", "index": 4616, "guid": "aa3199ae-51e7-4d5e-86ce-c14347f28909", "isActive": true, "balance": "$2,815.45", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Trevino Clark", "gender": "male", "company": "ZENTILITY", "email": "trevinoclark@zentility.com", "phone": "+1 (869) 543-3552", "address": "659 Poplar Avenue, Woodlands, Arkansas, 7043", "about": "Nisi voluptate fugiat aute incididunt id minim minim nisi adipisicing elit in. Voluptate magna occaecat elit dolore et adipisicing. Veniam sit ad adipisicing cupidatat tempor Lorem Lorem.\r\n", "registered": "2014-01-10T06:07:20-13:00", "latitude": -8.893075, "longitude": 64.105997, "tags": [ "id", "eu", "eiusmod", "enim", "in", "ad", "dolor" ], "friends": [ { "id": 0, "name": "Munoz Baird" }, { "id": 1, "name": "Rosemary Noel" }, { "id": 2, "name": "Katherine Dunlap" } ], "greeting": "Hello, Trevino Clark! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ad809e9223be44f68", "index": 4617, "guid": "f8a51bca-e44d-49bb-9555-494e4b8f761b", "isActive": true, "balance": "$2,631.80", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Lakeisha Kramer", "gender": "female", "company": "CYTRAK", "email": "lakeishakramer@cytrak.com", "phone": "+1 (869) 479-3005", "address": "697 Grove Street, Manchester, Iowa, 1020", "about": "Nisi ea in incididunt commodo Lorem et laboris et consectetur nisi ex ut do Lorem. Incididunt anim duis amet adipisicing pariatur officia sunt occaecat ex. Sit excepteur consequat eiusmod culpa aliqua aliquip irure. Tempor cupidatat occaecat irure non adipisicing. Laboris aliqua anim sit laboris laboris duis cupidatat. Sit dolore cupidatat culpa laboris fugiat Lorem sit cupidatat non non quis.\r\n", "registered": "2014-02-09T06:56:47-13:00", "latitude": -33.38764, "longitude": 136.678893, "tags": [ "ad", "exercitation", "eu", "consectetur", "proident", "cillum", "proident" ], "friends": [ { "id": 0, "name": "Jodi Hubbard" }, { "id": 1, "name": "Sheppard Petersen" }, { "id": 2, "name": "Clayton Ford" } ], "greeting": "Hello, Lakeisha Kramer! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a5078a4a98be03284", "index": 4618, "guid": "6e1fbab7-d9e7-402f-b5b1-ce09acaa8502", "isActive": true, "balance": "$3,517.60", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Lena Buck", "gender": "female", "company": "SPLINX", "email": "lenabuck@splinx.com", "phone": "+1 (804) 583-3416", "address": "506 Charles Place, Wauhillau, Nebraska, 4664", "about": "Do occaecat enim sint enim fugiat adipisicing do. Dolore excepteur occaecat occaecat voluptate laborum culpa ad laboris. Incididunt in ea officia aliqua do amet. Minim labore non laborum quis deserunt Lorem incididunt. Commodo tempor aliquip deserunt sint laborum officia quis do duis minim ullamco eiusmod. Adipisicing dolor reprehenderit dolore anim eu nostrud aliquip id ipsum ea cillum ad irure.\r\n", "registered": "2014-07-04T10:58:02-12:00", "latitude": -62.831073, "longitude": -165.475615, "tags": [ "dolor", "cupidatat", "reprehenderit", "aute", "laboris", "magna", "laboris" ], "friends": [ { "id": 0, "name": "Beulah Harrington" }, { "id": 1, "name": "Turner Johns" }, { "id": 2, "name": "Travis Montoya" } ], "greeting": "Hello, Lena Buck! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2aa8bf92fc29237474", "index": 4619, "guid": "717cfc77-9aa3-428b-9833-66c8f02069cf", "isActive": true, "balance": "$1,244.93", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Schwartz Berger", "gender": "male", "company": "VIRXO", "email": "schwartzberger@virxo.com", "phone": "+1 (850) 400-3021", "address": "501 Whitwell Place, Saranap, District Of Columbia, 6472", "about": "Amet culpa qui anim est duis elit magna aute ipsum ipsum dolore ut. Tempor consequat velit est culpa veniam amet culpa velit. Cillum magna quis dolor in fugiat aliquip amet amet dolor nostrud fugiat aliquip.\r\n", "registered": "2014-02-25T16:51:05-13:00", "latitude": 49.544374, "longitude": 173.917103, "tags": [ "duis", "commodo", "nostrud", "est", "non", "excepteur", "duis" ], "friends": [ { "id": 0, "name": "Jacobs Osborne" }, { "id": 1, "name": "Lana Mathis" }, { "id": 2, "name": "Tara Melton" } ], "greeting": "Hello, Schwartz Berger! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ac9006076723f13f9", "index": 4620, "guid": "db61de3c-52ea-46a8-9878-a494aa64b007", "isActive": true, "balance": "$3,100.68", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Angel Eaton", "gender": "female", "company": "ZIZZLE", "email": "angeleaton@zizzle.com", "phone": "+1 (889) 472-2429", "address": "868 Gunther Place, Nadine, New Jersey, 6229", "about": "Duis ut incididunt exercitation irure veniam commodo in velit quis sint nostrud fugiat excepteur ullamco. Duis reprehenderit ullamco sit ipsum officia enim commodo fugiat. Adipisicing nulla ipsum sunt anim nostrud veniam elit esse voluptate cillum aute adipisicing voluptate deserunt. Lorem magna sunt eiusmod exercitation elit do esse aliqua do. Ipsum aliqua dolore ex aute labore cillum est sit. Cupidatat culpa commodo ipsum culpa do aliqua velit id excepteur laborum in aliquip dolore aliquip. Tempor ex officia ea ea occaecat enim amet eu.\r\n", "registered": "2014-06-30T10:14:04-12:00", "latitude": 32.67356, "longitude": 28.055004, "tags": [ "magna", "laborum", "nisi", "labore", "quis", "ea", "reprehenderit" ], "friends": [ { "id": 0, "name": "Flossie Mays" }, { "id": 1, "name": "Hazel Gill" }, { "id": 2, "name": "Tisha Wheeler" } ], "greeting": "Hello, Angel Eaton! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a75472d692beb530a", "index": 4621, "guid": "b961a70f-3906-44ea-9f75-dc0cc2a2b2ea", "isActive": false, "balance": "$1,397.45", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Deena Carr", "gender": "female", "company": "ACIUM", "email": "deenacarr@acium.com", "phone": "+1 (887) 546-3984", "address": "336 Anna Court, Chase, Palau, 4943", "about": "Velit irure culpa eu nulla dolore anim. Laboris reprehenderit ex in adipisicing esse sunt. Nisi cillum id in incididunt duis duis ea reprehenderit ut mollit.\r\n", "registered": "2014-09-06T05:00:17-12:00", "latitude": 33.722472, "longitude": 137.146381, "tags": [ "qui", "nisi", "nulla", "et", "irure", "elit", "voluptate" ], "friends": [ { "id": 0, "name": "Roxie Wolfe" }, { "id": 1, "name": "Verna Huber" }, { "id": 2, "name": "Gena Pierce" } ], "greeting": "Hello, Deena Carr! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2acafa6e133f79ed86", "index": 4622, "guid": "f6e284c1-b79b-4d63-8c20-612d7994f004", "isActive": true, "balance": "$3,461.31", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Welch Merritt", "gender": "male", "company": "MAXEMIA", "email": "welchmerritt@maxemia.com", "phone": "+1 (920) 531-2500", "address": "549 Evans Street, Ivanhoe, Puerto Rico, 6509", "about": "In in dolore fugiat voluptate consequat esse ad proident officia Lorem in. Irure consectetur excepteur fugiat esse cupidatat nisi duis reprehenderit laboris. Et aliqua in deserunt deserunt proident laborum ex irure. Incididunt esse exercitation anim reprehenderit duis minim quis labore voluptate qui deserunt aute exercitation nisi. Anim dolor dolore non elit sint. Ullamco nisi incididunt tempor occaecat id.\r\n", "registered": "2014-05-10T18:10:42-12:00", "latitude": 82.806944, "longitude": 142.752581, "tags": [ "irure", "dolor", "ea", "ullamco", "minim", "irure", "dolor" ], "friends": [ { "id": 0, "name": "Carpenter Aguirre" }, { "id": 1, "name": "Blair Luna" }, { "id": 2, "name": "Candice Bowen" } ], "greeting": "Hello, Welch Merritt! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a5a9fb7fe89096753", "index": 4623, "guid": "21152c38-c860-4a01-80bf-2a4e00771cc2", "isActive": true, "balance": "$1,353.48", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Effie Mueller", "gender": "female", "company": "GENMY", "email": "effiemueller@genmy.com", "phone": "+1 (853) 447-3039", "address": "600 Croton Loop, Teasdale, California, 4143", "about": "Et ut magna sit exercitation ea qui tempor consectetur veniam esse consequat consequat. Aliqua excepteur duis sint sunt. Nostrud pariatur ex eu ad consequat dolor duis laboris nisi do in aliqua et culpa. Dolor dolore incididunt cupidatat elit fugiat. Consectetur in sint eiusmod est consectetur dolore enim labore Lorem qui. Nulla voluptate ipsum cupidatat enim excepteur laboris ipsum id.\r\n", "registered": "2014-08-16T04:45:25-12:00", "latitude": -1.368301, "longitude": 37.935723, "tags": [ "tempor", "velit", "deserunt", "quis", "aute", "nulla", "excepteur" ], "friends": [ { "id": 0, "name": "Taylor Duncan" }, { "id": 1, "name": "Palmer Burt" }, { "id": 2, "name": "King Saunders" } ], "greeting": "Hello, Effie Mueller! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a761795c3975b2d46", "index": 4624, "guid": "9ed4e548-34ea-472a-9582-48ce901d51c2", "isActive": true, "balance": "$2,726.22", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Brittany Caldwell", "gender": "female", "company": "SCENTRIC", "email": "brittanycaldwell@scentric.com", "phone": "+1 (827) 456-3776", "address": "750 Cortelyou Road, Blandburg, Vermont, 943", "about": "Anim pariatur cupidatat magna tempor in nostrud eiusmod. Anim veniam ipsum officia nostrud ullamco laborum consequat irure nisi ex ut nostrud voluptate. Aute ipsum Lorem reprehenderit sint ad.\r\n", "registered": "2014-03-05T02:47:20-13:00", "latitude": 41.513825, "longitude": 75.576642, "tags": [ "officia", "cillum", "dolore", "ad", "culpa", "sint", "commodo" ], "friends": [ { "id": 0, "name": "Tamara House" }, { "id": 1, "name": "Erika Dudley" }, { "id": 2, "name": "Dawn Wynn" } ], "greeting": "Hello, Brittany Caldwell! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2aefa7ce9be3b9318e", "index": 4625, "guid": "ff83e8c1-3ff4-40be-92c6-a38a0487c905", "isActive": false, "balance": "$3,954.25", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Marshall Wilkinson", "gender": "male", "company": "BULLJUICE", "email": "marshallwilkinson@bulljuice.com", "phone": "+1 (985) 597-3818", "address": "163 Tompkins Avenue, Loretto, Indiana, 6723", "about": "Labore dolore ipsum enim proident ut cupidatat aute dolore duis elit nulla. Lorem amet consectetur Lorem dolor velit aute consectetur nulla. Incididunt laboris laborum adipisicing elit culpa. Sunt tempor mollit ipsum enim. Lorem nostrud esse consequat labore enim ipsum.\r\n", "registered": "2014-06-01T23:46:40-12:00", "latitude": -82.008371, "longitude": -87.071346, "tags": [ "sit", "sint", "et", "nostrud", "duis", "irure", "reprehenderit" ], "friends": [ { "id": 0, "name": "Alejandra Bailey" }, { "id": 1, "name": "Lilly Barry" }, { "id": 2, "name": "Joseph Atkins" } ], "greeting": "Hello, Marshall Wilkinson! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ae29a5e3835c42f0e", "index": 4626, "guid": "b146fd6f-c53b-4990-8789-c370385e4ba6", "isActive": false, "balance": "$3,831.19", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Annie Donaldson", "gender": "female", "company": "ELEMANTRA", "email": "anniedonaldson@elemantra.com", "phone": "+1 (901) 498-3574", "address": "469 Stone Avenue, Thatcher, Illinois, 7471", "about": "Consequat commodo minim nisi ex dolore elit elit enim. Mollit fugiat dolore nulla elit culpa nulla exercitation consequat elit cupidatat consequat incididunt eu. Ipsum aliqua quis enim dolor sit anim in ut consequat.\r\n", "registered": "2014-06-11T16:01:27-12:00", "latitude": -0.907112, "longitude": -43.558206, "tags": [ "labore", "laborum", "laborum", "excepteur", "culpa", "in", "labore" ], "friends": [ { "id": 0, "name": "Andrews Hutchinson" }, { "id": 1, "name": "Gomez Decker" }, { "id": 2, "name": "Blanca Cochran" } ], "greeting": "Hello, Annie Donaldson! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a63f91d1312a911d8", "index": 4627, "guid": "047966fe-ccd8-4fef-ab64-6b1b49477f87", "isActive": false, "balance": "$1,765.30", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Johns Mckay", "gender": "male", "company": "ASSISTIX", "email": "johnsmckay@assistix.com", "phone": "+1 (998) 529-3978", "address": "881 Powell Street, Naomi, South Carolina, 1206", "about": "Cillum est laboris ea nostrud sunt amet pariatur. Qui nisi laborum tempor Lorem ut in cupidatat consequat ad voluptate laboris sint. Aliquip aliquip reprehenderit commodo ad. Exercitation cupidatat magna velit culpa quis laboris ad Lorem est enim dolore ad. Officia Lorem enim minim non amet consectetur aliqua eu sit irure anim. Exercitation nostrud laboris sint quis reprehenderit veniam in consectetur aliqua fugiat duis ullamco cillum proident. Magna amet veniam consequat ut ipsum laborum culpa labore.\r\n", "registered": "2014-02-17T14:31:52-13:00", "latitude": -70.413012, "longitude": -56.56918, "tags": [ "ullamco", "proident", "ea", "pariatur", "esse", "cupidatat", "id" ], "friends": [ { "id": 0, "name": "Tameka Simpson" }, { "id": 1, "name": "Jerry Everett" }, { "id": 2, "name": "Kelley Delgado" } ], "greeting": "Hello, Johns Mckay! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a44b247d645c6ed37", "index": 4628, "guid": "b4965153-4c1c-4b27-a965-755186be87b0", "isActive": true, "balance": "$2,649.86", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Leon Mcgowan", "gender": "male", "company": "ARTIQ", "email": "leonmcgowan@artiq.com", "phone": "+1 (925) 499-2320", "address": "498 Bradford Street, Virgie, American Samoa, 3267", "about": "Aute officia esse eu minim qui ea in ad culpa consequat. Ea ea eu sit ea mollit id duis anim duis. Fugiat adipisicing ullamco minim proident minim qui ut duis. Culpa laborum minim excepteur aute id eiusmod nisi fugiat pariatur est id esse laboris.\r\n", "registered": "2014-02-09T11:44:37-13:00", "latitude": 73.74405, "longitude": 65.899085, "tags": [ "incididunt", "laborum", "enim", "pariatur", "pariatur", "esse", "pariatur" ], "friends": [ { "id": 0, "name": "Walton Fleming" }, { "id": 1, "name": "Santiago Burton" }, { "id": 2, "name": "Frost Graves" } ], "greeting": "Hello, Leon Mcgowan! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a06524962b4445b16", "index": 4629, "guid": "e7dcd023-318b-4f40-b583-9ed863550ed6", "isActive": true, "balance": "$1,249.76", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Greene Potts", "gender": "male", "company": "RENOVIZE", "email": "greenepotts@renovize.com", "phone": "+1 (865) 580-3059", "address": "805 Montague Street, Weogufka, Delaware, 1738", "about": "Ipsum minim amet ad nisi est culpa aliquip esse qui sint aliqua labore et. Esse reprehenderit nulla velit velit elit consectetur ullamco laboris labore tempor exercitation irure enim. Ad anim reprehenderit enim Lorem laborum consectetur cillum incididunt laboris duis nulla officia ut. Qui elit eu aute qui deserunt anim exercitation consectetur aliqua labore. Adipisicing incididunt labore voluptate eu sunt eu tempor id reprehenderit.\r\n", "registered": "2014-07-22T21:43:54-12:00", "latitude": 67.929169, "longitude": 30.417829, "tags": [ "laboris", "dolore", "in", "fugiat", "labore", "irure", "ullamco" ], "friends": [ { "id": 0, "name": "Henson Holland" }, { "id": 1, "name": "Rodgers Hewitt" }, { "id": 2, "name": "Richard Porter" } ], "greeting": "Hello, Greene Potts! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a7eb73f29f0872753", "index": 4630, "guid": "7db80808-6d8f-4c54-a652-592205c83b89", "isActive": true, "balance": "$3,028.20", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Payne Callahan", "gender": "male", "company": "UNCORP", "email": "paynecallahan@uncorp.com", "phone": "+1 (837) 587-2331", "address": "670 Louise Terrace, Fivepointville, Pennsylvania, 3288", "about": "Aute ipsum cupidatat proident minim nostrud eu sit adipisicing ullamco proident. Cupidatat culpa in eiusmod mollit irure aliqua ut. Sunt aliquip enim reprehenderit mollit mollit aute eiusmod excepteur ipsum dolore cupidatat. Veniam magna quis veniam dolore. Aliquip id tempor ipsum ut nisi ea.\r\n", "registered": "2014-07-10T10:00:31-12:00", "latitude": 81.148564, "longitude": 18.212898, "tags": [ "amet", "eu", "sint", "cupidatat", "ea", "ea", "minim" ], "friends": [ { "id": 0, "name": "Reid Christensen" }, { "id": 1, "name": "Morgan Salazar" }, { "id": 2, "name": "Whitley Emerson" } ], "greeting": "Hello, Payne Callahan! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2a48fd7c5ee7838a25", "index": 4631, "guid": "d59250fd-377d-4d75-b9e0-afbc36029382", "isActive": true, "balance": "$1,739.87", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Lynne Velasquez", "gender": "female", "company": "ZOUNDS", "email": "lynnevelasquez@zounds.com", "phone": "+1 (997) 500-3296", "address": "689 Butler Place, Boyd, Georgia, 3073", "about": "Dolor sunt nulla voluptate occaecat culpa ut consectetur. Nostrud nostrud exercitation deserunt amet amet reprehenderit aute. Ad tempor nisi labore occaecat culpa cupidatat excepteur adipisicing do occaecat. Labore Lorem est aliqua elit.\r\n", "registered": "2014-06-10T22:20:50-12:00", "latitude": -77.364756, "longitude": 93.119955, "tags": [ "sint", "amet", "ullamco", "qui", "mollit", "ad", "occaecat" ], "friends": [ { "id": 0, "name": "Deloris Chapman" }, { "id": 1, "name": "Estrada Jennings" }, { "id": 2, "name": "Shanna Logan" } ], "greeting": "Hello, Lynne Velasquez! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a6ef1c189e256fdd6", "index": 4632, "guid": "8fa7816e-ef29-41c7-b80f-933df01c8c28", "isActive": true, "balance": "$1,963.31", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Malone Sloan", "gender": "male", "company": "TETAK", "email": "malonesloan@tetak.com", "phone": "+1 (807) 589-2917", "address": "737 Willoughby Avenue, Wilmington, North Dakota, 8352", "about": "Esse pariatur in ea consectetur sunt. Proident fugiat eiusmod ad exercitation nostrud ea in ea magna. Aliquip nulla anim esse ex sunt.\r\n", "registered": "2014-04-16T14:26:41-12:00", "latitude": 61.453941, "longitude": -174.335096, "tags": [ "non", "labore", "occaecat", "est", "deserunt", "culpa", "deserunt" ], "friends": [ { "id": 0, "name": "Marla Lamb" }, { "id": 1, "name": "Robbie Jensen" }, { "id": 2, "name": "Mooney Carrillo" } ], "greeting": "Hello, Malone Sloan! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2af3ec37ea80ceb3cf", "index": 4633, "guid": "f1c8ee5c-fa93-484b-b1ab-2f848f3de87f", "isActive": true, "balance": "$2,538.89", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Gallegos Mccarthy", "gender": "male", "company": "QUILITY", "email": "gallegosmccarthy@quility.com", "phone": "+1 (858) 433-3501", "address": "332 Buffalo Avenue, Cochranville, Louisiana, 7292", "about": "Amet id minim id aliqua. Ea commodo eiusmod cupidatat ipsum. Fugiat elit velit excepteur ex aliquip est ullamco minim. Amet pariatur adipisicing quis duis aliquip dolor non. Proident officia aliquip elit irure Lorem sint ut pariatur in pariatur est labore dolore. Exercitation dolore in consectetur ex occaecat non.\r\n", "registered": "2014-05-19T01:10:18-12:00", "latitude": -51.291174, "longitude": 39.409908, "tags": [ "reprehenderit", "veniam", "amet", "non", "enim", "ut", "commodo" ], "friends": [ { "id": 0, "name": "Deanna Salas" }, { "id": 1, "name": "Cain Castillo" }, { "id": 2, "name": "Tonya Tanner" } ], "greeting": "Hello, Gallegos Mccarthy! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2a6d40e585b083617e", "index": 4634, "guid": "ca947dc9-8a0b-4839-970a-0e0a6e980662", "isActive": true, "balance": "$3,121.75", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Sharlene Chase", "gender": "female", "company": "TEMORAK", "email": "sharlenechase@temorak.com", "phone": "+1 (824) 584-3149", "address": "916 Boynton Place, Bend, Northern Mariana Islands, 6069", "about": "Consectetur officia eiusmod mollit quis elit consectetur aliquip eu qui qui non non magna. Elit deserunt dolore ea in aute enim deserunt qui aliquip velit veniam Lorem. Ad velit adipisicing tempor esse aliquip ex mollit exercitation exercitation aute minim tempor cillum. In exercitation laboris culpa ex. Consequat minim et reprehenderit proident.\r\n", "registered": "2014-08-17T07:35:27-12:00", "latitude": 5.710012, "longitude": -131.176795, "tags": [ "aliquip", "dolor", "Lorem", "culpa", "sunt", "amet", "adipisicing" ], "friends": [ { "id": 0, "name": "Alvarez Suarez" }, { "id": 1, "name": "Claudette Leonard" }, { "id": 2, "name": "Kaitlin Castro" } ], "greeting": "Hello, Sharlene Chase! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2af6b0627d9a1653d5", "index": 4635, "guid": "59e3596a-b2ea-4c5d-acd8-3d18a19019f1", "isActive": false, "balance": "$1,688.62", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Kimberley Burks", "gender": "female", "company": "CEMENTION", "email": "kimberleyburks@cemention.com", "phone": "+1 (865) 584-2558", "address": "742 Dekoven Court, Welch, Colorado, 4444", "about": "Irure do proident incididunt occaecat occaecat aliqua laborum eu ullamco qui. Consectetur esse do labore qui sunt irure. In in velit exercitation sunt do duis excepteur aliquip est dolor. Excepteur Lorem quis exercitation velit incididunt veniam dolor. Anim commodo do elit sunt fugiat commodo. Ad aliqua proident occaecat occaecat aliqua nulla in labore pariatur aliquip qui ut.\r\n", "registered": "2014-04-18T06:18:45-12:00", "latitude": -58.492401, "longitude": 0.372107, "tags": [ "do", "reprehenderit", "pariatur", "voluptate", "non", "irure", "esse" ], "friends": [ { "id": 0, "name": "Brittney Perry" }, { "id": 1, "name": "Floyd Hansen" }, { "id": 2, "name": "Ofelia Avery" } ], "greeting": "Hello, Kimberley Burks! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2a070459291e58982f", "index": 4636, "guid": "9dc1cbd7-f9cf-4757-a094-7c52adce97f3", "isActive": false, "balance": "$1,454.59", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Katelyn Holman", "gender": "female", "company": "PROXSOFT", "email": "katelynholman@proxsoft.com", "phone": "+1 (807) 400-2864", "address": "241 Evergreen Avenue, Norvelt, Idaho, 3293", "about": "Laboris eu excepteur deserunt minim velit et consectetur commodo quis mollit laborum est nulla. Laborum eiusmod dolore labore non sint nulla. Ad enim esse mollit incididunt laboris sit.\r\n", "registered": "2014-04-10T12:36:47-12:00", "latitude": 68.62144, "longitude": 86.261409, "tags": [ "cillum", "qui", "officia", "consequat", "tempor", "elit", "dolore" ], "friends": [ { "id": 0, "name": "Brennan Boyle" }, { "id": 1, "name": "Alexandria Bauer" }, { "id": 2, "name": "Mcpherson Avila" } ], "greeting": "Hello, Katelyn Holman! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b98663a32d1e16bae", "index": 4637, "guid": "7f6bac0b-a2fe-4741-9100-614340e949ba", "isActive": false, "balance": "$1,559.57", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Monique Vazquez", "gender": "female", "company": "GEEKY", "email": "moniquevazquez@geeky.com", "phone": "+1 (826) 562-2781", "address": "499 Hart Street, Springhill, Marshall Islands, 374", "about": "Cupidatat elit ut consequat nostrud minim non minim reprehenderit laboris do eiusmod aliqua. Aliqua eu est occaecat commodo fugiat eiusmod dolor consequat. Ullamco eiusmod voluptate laborum consectetur labore amet do.\r\n", "registered": "2014-03-22T06:55:56-13:00", "latitude": 70.39761, "longitude": 122.250869, "tags": [ "veniam", "ad", "eiusmod", "aliqua", "anim", "deserunt", "ullamco" ], "friends": [ { "id": 0, "name": "Andrea Tucker" }, { "id": 1, "name": "Christa Swanson" }, { "id": 2, "name": "Kramer Miles" } ], "greeting": "Hello, Monique Vazquez! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b213d5281b9d68b12", "index": 4638, "guid": "ec19a8ba-f7a4-4f97-9244-04fd51674757", "isActive": true, "balance": "$3,875.87", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Alicia Hays", "gender": "female", "company": "FUELWORKS", "email": "aliciahays@fuelworks.com", "phone": "+1 (852) 497-2926", "address": "374 Kiely Place, Lorraine, New York, 6869", "about": "Anim cupidatat pariatur ut et quis ad voluptate ad voluptate consectetur et reprehenderit magna esse. Minim cillum nulla occaecat magna laborum ad quis. Reprehenderit Lorem ea dolore proident. Enim adipisicing quis incididunt enim nulla aliquip fugiat laboris fugiat incididunt dolore. Amet Lorem ut cupidatat ipsum nostrud aute veniam laborum. Ullamco exercitation sint irure aute culpa enim aliqua incididunt deserunt aliquip qui amet et dolor.\r\n", "registered": "2014-09-02T09:15:30-12:00", "latitude": 24.947621, "longitude": -67.118158, "tags": [ "nulla", "ex", "culpa", "est", "commodo", "ullamco", "id" ], "friends": [ { "id": 0, "name": "Carter Whitley" }, { "id": 1, "name": "Mary Stone" }, { "id": 2, "name": "Mitchell Villarreal" } ], "greeting": "Hello, Alicia Hays! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bda112181aee1e557", "index": 4639, "guid": "49fadb50-0641-4364-95ed-6dea62591711", "isActive": false, "balance": "$3,504.08", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Tammie Howe", "gender": "female", "company": "MAROPTIC", "email": "tammiehowe@maroptic.com", "phone": "+1 (853) 584-3712", "address": "684 Lott Avenue, Soudan, Guam, 3530", "about": "Quis laboris officia dolor dolor excepteur. Proident consectetur amet aliquip fugiat irure ex consequat. Do laboris tempor consectetur ex sunt id commodo eiusmod est. Eu sit commodo id minim mollit. Consectetur amet aliqua cillum ullamco exercitation aute sit adipisicing ut id sint et mollit amet. Dolor deserunt aute velit mollit occaecat ex sunt magna adipisicing consequat dolore in nostrud nulla.\r\n", "registered": "2014-03-13T21:27:14-13:00", "latitude": 15.503061, "longitude": -87.381421, "tags": [ "commodo", "sunt", "quis", "commodo", "consequat", "irure", "dolore" ], "friends": [ { "id": 0, "name": "Mccarty Keith" }, { "id": 1, "name": "Hayes Mayo" }, { "id": 2, "name": "Cherry Rosales" } ], "greeting": "Hello, Tammie Howe! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b94211f6c8f3168c8", "index": 4640, "guid": "f44a2541-77a4-4505-893b-f39e8cafbfc9", "isActive": false, "balance": "$3,424.43", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "green", "name": "Whitfield Mason", "gender": "male", "company": "BARKARAMA", "email": "whitfieldmason@barkarama.com", "phone": "+1 (999) 486-3456", "address": "704 Brighton Avenue, Troy, Virgin Islands, 2005", "about": "Magna minim esse occaecat cupidatat anim aliquip cupidatat in aliqua nisi dolor. Sit ad sunt irure duis cillum officia incididunt consequat eiusmod in nulla. Lorem nulla ea est voluptate id veniam ullamco nostrud tempor. Veniam fugiat laborum sunt tempor in ad tempor cupidatat aliqua elit aliqua esse excepteur. Consequat consequat in nostrud consectetur aute et eu ad dolor proident in. Mollit id sint do Lorem magna consequat nisi sint esse labore incididunt. Consectetur commodo non enim irure anim excepteur.\r\n", "registered": "2014-05-14T10:20:00-12:00", "latitude": 10.903511, "longitude": -74.903236, "tags": [ "Lorem", "commodo", "incididunt", "quis", "ex", "reprehenderit", "elit" ], "friends": [ { "id": 0, "name": "Rene Warren" }, { "id": 1, "name": "Stokes Barlow" }, { "id": 2, "name": "Natalia Davis" } ], "greeting": "Hello, Whitfield Mason! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bd8e422cc909fd513", "index": 4641, "guid": "1bd1b6c1-fd45-426f-9f09-cf8dbb107814", "isActive": true, "balance": "$1,729.62", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Cecilia Solis", "gender": "female", "company": "BYTREX", "email": "ceciliasolis@bytrex.com", "phone": "+1 (963) 558-3018", "address": "242 Gain Court, Driftwood, Massachusetts, 827", "about": "Sit sint minim ad esse nostrud occaecat. Id aliquip exercitation fugiat voluptate. Elit est ullamco pariatur voluptate. Occaecat Lorem quis fugiat cupidatat id sint dolore in ea laborum ipsum laborum. Sit tempor excepteur et voluptate esse laboris mollit magna reprehenderit quis deserunt nisi minim reprehenderit.\r\n", "registered": "2014-04-08T17:25:53-12:00", "latitude": -76.786677, "longitude": -91.675726, "tags": [ "ut", "aliquip", "dolore", "laborum", "qui", "dolor", "est" ], "friends": [ { "id": 0, "name": "Christian Riggs" }, { "id": 1, "name": "Whitaker Matthews" }, { "id": 2, "name": "Wallace Petty" } ], "greeting": "Hello, Cecilia Solis! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ba3a6dbdcf962f106", "index": 4642, "guid": "91e8d1db-8d2a-4f18-b7fc-3a82b5c33134", "isActive": false, "balance": "$1,847.55", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Hull Marshall", "gender": "male", "company": "ECRAZE", "email": "hullmarshall@ecraze.com", "phone": "+1 (871) 485-2750", "address": "560 Ocean Parkway, Frank, Utah, 5821", "about": "Amet dolor nulla deserunt qui. Occaecat veniam laboris consectetur duis aute eiusmod. Sunt proident anim id anim commodo voluptate. Fugiat est ea adipisicing aliqua dolor nulla voluptate qui amet ex sit culpa ex. Do eu deserunt consequat laboris aute non qui cupidatat veniam consectetur mollit laboris. Lorem voluptate cillum incididunt pariatur enim aliqua cupidatat elit amet labore.\r\n", "registered": "2014-09-15T19:18:11-12:00", "latitude": 24.488722, "longitude": 95.063978, "tags": [ "nostrud", "proident", "eu", "aute", "id", "do", "ullamco" ], "friends": [ { "id": 0, "name": "Jacqueline Black" }, { "id": 1, "name": "Marcy Sykes" }, { "id": 2, "name": "Martinez Becker" } ], "greeting": "Hello, Hull Marshall! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b5f5c947ddb25ae81", "index": 4643, "guid": "34424267-f268-4cdd-ba12-ef2f183fd4ac", "isActive": false, "balance": "$1,915.26", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Heidi Cox", "gender": "female", "company": "CORPULSE", "email": "heidicox@corpulse.com", "phone": "+1 (977) 529-3571", "address": "128 Commercial Street, Clara, Montana, 6189", "about": "Irure dolore excepteur adipisicing velit adipisicing. Voluptate sit reprehenderit velit laborum. Dolore cupidatat sint irure voluptate qui. Pariatur adipisicing aliqua quis minim aliquip. Do anim non mollit excepteur fugiat eu laborum laborum tempor incididunt consequat. Et cillum dolore sint velit tempor non laborum labore commodo nulla adipisicing minim.\r\n", "registered": "2014-08-20T05:13:26-12:00", "latitude": -66.089851, "longitude": -34.438646, "tags": [ "eiusmod", "occaecat", "qui", "veniam", "esse", "quis", "cupidatat" ], "friends": [ { "id": 0, "name": "Brianna Murphy" }, { "id": 1, "name": "Woodard Kim" }, { "id": 2, "name": "Shelby Stafford" } ], "greeting": "Hello, Heidi Cox! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b570b6a0781d53c62", "index": 4644, "guid": "93f6d1e4-9d80-48e2-bc0b-d31e5290414d", "isActive": false, "balance": "$1,077.15", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Cathryn Daniel", "gender": "female", "company": "NUTRALAB", "email": "cathryndaniel@nutralab.com", "phone": "+1 (828) 452-3357", "address": "830 Colby Court, Dunlo, Wisconsin, 5078", "about": "Laborum eu velit minim cupidatat consequat proident anim reprehenderit duis. Irure ipsum adipisicing officia qui excepteur sit Lorem. Aliqua fugiat aliquip id ut exercitation deserunt do fugiat est aliquip commodo culpa. Enim ut velit est laboris id. Eu tempor ut laboris mollit elit dolore occaecat.\r\n", "registered": "2014-06-13T10:29:44-12:00", "latitude": 0.313338, "longitude": -15.30436, "tags": [ "irure", "anim", "ea", "amet", "labore", "reprehenderit", "eu" ], "friends": [ { "id": 0, "name": "Rogers Hudson" }, { "id": 1, "name": "Barron Snow" }, { "id": 2, "name": "Noble Patrick" } ], "greeting": "Hello, Cathryn Daniel! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b5e560c054309cf7b", "index": 4645, "guid": "d3c015aa-e5ad-4ab1-a388-f4ac59753b21", "isActive": true, "balance": "$2,209.22", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Candace Padilla", "gender": "female", "company": "PHORMULA", "email": "candacepadilla@phormula.com", "phone": "+1 (913) 440-3174", "address": "615 Menahan Street, Coinjock, Maine, 3331", "about": "Lorem duis nostrud sit aliqua anim. Et esse ex fugiat ex mollit veniam reprehenderit. Esse aute deserunt pariatur culpa ad Lorem excepteur nisi deserunt minim ut voluptate. Minim aliquip commodo magna nisi exercitation. Dolor aliquip sunt tempor excepteur aliquip dolor officia. Culpa qui quis sit cillum aliqua qui non consectetur enim deserunt. Eu veniam do ea deserunt tempor cillum voluptate elit tempor fugiat cillum occaecat laboris.\r\n", "registered": "2014-01-13T17:52:31-13:00", "latitude": 1.0572, "longitude": 29.421795, "tags": [ "adipisicing", "non", "nisi", "ea", "incididunt", "cillum", "nulla" ], "friends": [ { "id": 0, "name": "Mathews Melendez" }, { "id": 1, "name": "Daisy Vasquez" }, { "id": 2, "name": "Mayra Tyler" } ], "greeting": "Hello, Candace Padilla! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2be83e9dcb4ccb6f7b", "index": 4646, "guid": "685753f7-cf12-4c19-af8e-7603e171e1d7", "isActive": true, "balance": "$2,691.98", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Raymond Mooney", "gender": "male", "company": "SCENTY", "email": "raymondmooney@scenty.com", "phone": "+1 (953) 548-2443", "address": "772 Cornelia Street, Orin, Virginia, 7229", "about": "Cillum dolore pariatur adipisicing proident ex occaecat anim incididunt dolor anim. Tempor ea anim sint mollit occaecat. Officia nisi dolore amet officia sit adipisicing.\r\n", "registered": "2014-08-10T14:43:20-12:00", "latitude": -13.959049, "longitude": -10.4495, "tags": [ "ad", "enim", "elit", "ullamco", "deserunt", "non", "irure" ], "friends": [ { "id": 0, "name": "Marisol Garrison" }, { "id": 1, "name": "Linda Best" }, { "id": 2, "name": "Joy Mccormick" } ], "greeting": "Hello, Raymond Mooney! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bb49716965a3b61b7", "index": 4647, "guid": "99e69298-2fab-42c7-9b85-bc04779402d1", "isActive": false, "balance": "$2,621.11", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Lawson Cross", "gender": "male", "company": "CAPSCREEN", "email": "lawsoncross@capscreen.com", "phone": "+1 (874) 465-3025", "address": "260 Frost Street, Buxton, Kentucky, 9030", "about": "Excepteur proident fugiat aute irure cupidatat et ut. Do dolor voluptate nostrud cillum elit amet incididunt mollit. Ea consequat reprehenderit commodo officia Lorem tempor incididunt culpa mollit ut.\r\n", "registered": "2014-03-28T20:27:07-13:00", "latitude": 0.888861, "longitude": 54.451814, "tags": [ "enim", "do", "minim", "nostrud", "magna", "laborum", "occaecat" ], "friends": [ { "id": 0, "name": "Klein Albert" }, { "id": 1, "name": "Melissa Newton" }, { "id": 2, "name": "Pope Kemp" } ], "greeting": "Hello, Lawson Cross! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2be1afa94eb5d47f63", "index": 4648, "guid": "d6dfa5d3-120d-4470-888f-8e8965cd7da0", "isActive": false, "balance": "$3,853.88", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Hope Nelson", "gender": "female", "company": "KOFFEE", "email": "hopenelson@koffee.com", "phone": "+1 (875) 556-2626", "address": "506 Kosciusko Street, Shawmut, Connecticut, 4798", "about": "Lorem cupidatat do minim reprehenderit dolore est laborum do ut esse cillum ut. Consequat deserunt adipisicing est commodo voluptate adipisicing laborum. Aliquip adipisicing occaecat deserunt laboris. Ullamco anim duis ex laboris sit eiusmod nostrud voluptate dolore consectetur laborum id est. Sit laboris cillum et sit minim ut ea.\r\n", "registered": "2014-03-13T04:33:31-13:00", "latitude": 81.297015, "longitude": -6.514865, "tags": [ "amet", "fugiat", "do", "fugiat", "reprehenderit", "magna", "nostrud" ], "friends": [ { "id": 0, "name": "Rae Duke" }, { "id": 1, "name": "Kelli Perez" }, { "id": 2, "name": "Georgette Hoffman" } ], "greeting": "Hello, Hope Nelson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b9e407f1b4182b7f4", "index": 4649, "guid": "8b3ea78c-c8b9-49bf-9602-955be71c3adb", "isActive": false, "balance": "$1,896.58", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Rose Waller", "gender": "male", "company": "XIXAN", "email": "rosewaller@xixan.com", "phone": "+1 (946) 490-2361", "address": "563 Clara Street, Boonville, Mississippi, 1044", "about": "In ipsum voluptate in labore labore ad qui irure nisi eu. Deserunt aliquip nostrud veniam eu officia cupidatat et. Quis quis sit ipsum aliqua. Veniam cillum occaecat dolore voluptate id mollit nulla laborum voluptate proident fugiat tempor enim laboris. Veniam laborum Lorem pariatur labore. Do id deserunt labore deserunt officia adipisicing aliqua aute.\r\n", "registered": "2014-03-15T23:33:52-13:00", "latitude": -88.413428, "longitude": 165.240495, "tags": [ "proident", "tempor", "ullamco", "esse", "labore", "id", "et" ], "friends": [ { "id": 0, "name": "Celina Bowman" }, { "id": 1, "name": "Cohen Morales" }, { "id": 2, "name": "Slater Mejia" } ], "greeting": "Hello, Rose Waller! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b8ab7b65b3d682a50", "index": 4650, "guid": "457237ef-5842-4767-b696-7b0305ab7db9", "isActive": true, "balance": "$1,677.91", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Holcomb Hurst", "gender": "male", "company": "ACCUPHARM", "email": "holcombhurst@accupharm.com", "phone": "+1 (951) 472-3848", "address": "524 Wyckoff Street, Chicopee, Washington, 9527", "about": "Consequat consectetur elit esse ad esse. Ipsum et occaecat dolor proident ex duis quis ea mollit. Esse eiusmod magna qui nisi. Amet est ea labore esse pariatur dolore qui. Culpa proident id consectetur non ex excepteur amet officia magna fugiat eiusmod pariatur velit. Dolor incididunt ipsum aliquip incididunt Lorem anim et tempor duis. Adipisicing reprehenderit nisi consequat voluptate sunt duis quis eu anim culpa labore ad.\r\n", "registered": "2014-03-17T04:27:45-13:00", "latitude": 52.603333, "longitude": 40.793209, "tags": [ "dolore", "nisi", "anim", "voluptate", "adipisicing", "minim", "velit" ], "friends": [ { "id": 0, "name": "Fanny Kennedy" }, { "id": 1, "name": "Shields Farrell" }, { "id": 2, "name": "Hardy Doyle" } ], "greeting": "Hello, Holcomb Hurst! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bfeacc20d74f5114e", "index": 4651, "guid": "f15a89db-9ffa-470d-b639-7dc5ad56a4bc", "isActive": true, "balance": "$3,042.51", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Wooten Hoover", "gender": "male", "company": "URBANSHEE", "email": "wootenhoover@urbanshee.com", "phone": "+1 (961) 586-3136", "address": "633 Tampa Court, Shrewsbury, Tennessee, 2235", "about": "Cillum et ipsum adipisicing ad aute. Aliqua deserunt sit elit incididunt voluptate adipisicing. Dolor labore Lorem nostrud est dolor aliqua cupidatat. Ipsum aliquip ipsum mollit adipisicing nostrud qui ea ipsum occaecat dolor anim consectetur duis labore. Voluptate esse dolore quis irure.\r\n", "registered": "2014-08-19T05:47:43-12:00", "latitude": 73.158459, "longitude": -2.234358, "tags": [ "dolore", "sint", "in", "veniam", "qui", "eu", "veniam" ], "friends": [ { "id": 0, "name": "Heath Dalton" }, { "id": 1, "name": "Mable Mcdowell" }, { "id": 2, "name": "Amparo Marsh" } ], "greeting": "Hello, Wooten Hoover! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bf85d8aa11761b808", "index": 4652, "guid": "3d4b6183-d90c-48d3-ab87-98d101c6262b", "isActive": true, "balance": "$3,517.14", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Yvette Juarez", "gender": "female", "company": "TRANSLINK", "email": "yvettejuarez@translink.com", "phone": "+1 (853) 525-2166", "address": "346 Troy Avenue, Sugartown, Alabama, 6362", "about": "Consequat ipsum eiusmod veniam excepteur ipsum ad quis qui. Adipisicing excepteur id officia do. Non fugiat minim tempor aliqua esse. Tempor est non occaecat et dolor ut officia excepteur esse aliqua ad consequat. Eu nisi ullamco deserunt veniam ipsum exercitation Lorem quis consequat ut eiusmod veniam velit. Aute eu irure commodo tempor dolore velit Lorem excepteur mollit sint irure qui dolore non.\r\n", "registered": "2014-08-17T01:19:01-12:00", "latitude": 28.811678, "longitude": 36.571385, "tags": [ "qui", "aute", "enim", "laboris", "sit", "dolore", "ut" ], "friends": [ { "id": 0, "name": "Claudia Dillard" }, { "id": 1, "name": "Christian Lee" }, { "id": 2, "name": "Davidson Mayer" } ], "greeting": "Hello, Yvette Juarez! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b443c506e1aff25ac", "index": 4653, "guid": "3521af9b-96ba-4bf2-9d98-038265443690", "isActive": false, "balance": "$3,858.86", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Mercer Beard", "gender": "male", "company": "MULTIFLEX", "email": "mercerbeard@multiflex.com", "phone": "+1 (919) 534-3572", "address": "194 Ridgewood Place, Elbert, Ohio, 6169", "about": "Adipisicing cillum aliquip cillum irure commodo ut magna. Dolore et exercitation enim anim cupidatat Lorem culpa magna nisi excepteur laboris tempor. Fugiat ut fugiat anim mollit excepteur eiusmod irure. Eiusmod aute veniam aliquip exercitation commodo ullamco aute consectetur. Consequat pariatur culpa id qui ipsum ad eiusmod irure ea. Deserunt ut officia fugiat magna sit ex commodo anim esse consequat esse ut magna id.\r\n", "registered": "2014-03-23T22:13:35-13:00", "latitude": 19.980292, "longitude": 90.242778, "tags": [ "culpa", "fugiat", "commodo", "voluptate", "velit", "minim", "officia" ], "friends": [ { "id": 0, "name": "Tammi Randolph" }, { "id": 1, "name": "Mindy Rocha" }, { "id": 2, "name": "Silvia Owen" } ], "greeting": "Hello, Mercer Beard! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bae0e190209be00d6", "index": 4654, "guid": "4bbd60f2-7ded-4ce8-8a6c-e1da222cbf9e", "isActive": true, "balance": "$1,695.80", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Burris Justice", "gender": "male", "company": "DATAGEN", "email": "burrisjustice@datagen.com", "phone": "+1 (803) 558-2004", "address": "728 Narrows Avenue, Groton, Hawaii, 4282", "about": "Est enim elit pariatur qui reprehenderit labore pariatur eiusmod cillum aliquip fugiat commodo laboris dolor. Consectetur officia minim cillum anim nostrud ullamco sit id minim fugiat ut tempor. Magna est duis minim sint non minim veniam dolore.\r\n", "registered": "2014-03-16T20:23:17-13:00", "latitude": 39.500916, "longitude": -56.02779, "tags": [ "non", "pariatur", "adipisicing", "consequat", "exercitation", "aute", "excepteur" ], "friends": [ { "id": 0, "name": "Preston Walters" }, { "id": 1, "name": "Jeannine Moon" }, { "id": 2, "name": "Frieda Byers" } ], "greeting": "Hello, Burris Justice! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bd0b88ef011f9abc6", "index": 4655, "guid": "129057d9-cd15-42a2-aeb3-c6c623c70993", "isActive": false, "balance": "$3,742.74", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Ila Mcdaniel", "gender": "female", "company": "PYRAMI", "email": "ilamcdaniel@pyrami.com", "phone": "+1 (923) 498-3463", "address": "853 Conklin Avenue, Marne, New Mexico, 2283", "about": "Sunt consequat et qui in ut Lorem in fugiat proident cillum quis. Culpa est nisi enim id labore non et sit nulla consequat labore reprehenderit laborum aute. Velit sint ipsum qui esse nulla quis mollit in eu duis aliquip. Culpa ad tempor reprehenderit aute eu qui.\r\n", "registered": "2014-05-21T19:26:15-12:00", "latitude": -67.376084, "longitude": 115.161841, "tags": [ "proident", "consequat", "eiusmod", "consectetur", "ipsum", "cillum", "excepteur" ], "friends": [ { "id": 0, "name": "Cora Pearson" }, { "id": 1, "name": "Kay Mcintosh" }, { "id": 2, "name": "Summer Robertson" } ], "greeting": "Hello, Ila Mcdaniel! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b67e21337c83acd52", "index": 4656, "guid": "457bb6ef-ae0a-4b48-8412-a41c75e76641", "isActive": true, "balance": "$2,337.65", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Lacey Sherman", "gender": "female", "company": "COMTRAK", "email": "laceysherman@comtrak.com", "phone": "+1 (827) 401-3384", "address": "991 Bassett Avenue, Dixonville, Maryland, 9474", "about": "Tempor ex commodo reprehenderit id eu. Magna cupidatat dolor esse nulla labore excepteur sit velit commodo. Labore nostrud magna ut enim sint adipisicing excepteur dolore. Amet cupidatat laboris nostrud ullamco incididunt. Duis eiusmod occaecat ullamco irure enim tempor pariatur voluptate sint culpa.\r\n", "registered": "2014-03-13T07:23:30-13:00", "latitude": -38.564921, "longitude": -61.091703, "tags": [ "in", "qui", "non", "Lorem", "qui", "ex", "ut" ], "friends": [ { "id": 0, "name": "Patel Gillespie" }, { "id": 1, "name": "Landry Glass" }, { "id": 2, "name": "Fry Wells" } ], "greeting": "Hello, Lacey Sherman! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b3bffdac3fbf6363f", "index": 4657, "guid": "1f1c2ad2-47a9-4b5c-aa1f-c7a30f99f284", "isActive": true, "balance": "$1,028.99", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Jill Love", "gender": "female", "company": "PAPRIKUT", "email": "jilllove@paprikut.com", "phone": "+1 (922) 563-3502", "address": "969 Little Street, Makena, Alaska, 6847", "about": "Commodo nulla velit reprehenderit est laboris qui minim duis ea cupidatat. Sunt ullamco commodo et eu consequat reprehenderit do ea eu ipsum exercitation amet mollit. Excepteur anim adipisicing irure id fugiat excepteur proident id eu laborum fugiat aliquip voluptate commodo. Nostrud ut duis nisi ipsum qui enim anim duis fugiat aute do sint Lorem. Culpa dolore sint cupidatat sit enim eu anim. Tempor ea voluptate et ipsum nostrud id laborum.\r\n", "registered": "2014-06-01T23:26:17-12:00", "latitude": -49.552541, "longitude": -136.948935, "tags": [ "cupidatat", "est", "in", "nisi", "consectetur", "officia", "excepteur" ], "friends": [ { "id": 0, "name": "Marva Owens" }, { "id": 1, "name": "Mueller Levy" }, { "id": 2, "name": "Francis Dillon" } ], "greeting": "Hello, Jill Love! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bdd0dd78e936a176a", "index": 4658, "guid": "12a098d6-b79a-4405-88c2-e1a82d744a70", "isActive": true, "balance": "$3,570.58", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Leticia Williamson", "gender": "female", "company": "KINETICUT", "email": "leticiawilliamson@kineticut.com", "phone": "+1 (943) 500-2387", "address": "308 Rock Street, Ironton, Arizona, 9092", "about": "Proident enim voluptate velit consequat proident ipsum aute id occaecat. Incididunt ex sit dolor id incididunt proident sit sit voluptate quis officia quis elit voluptate. Excepteur consequat minim veniam eu exercitation veniam tempor laboris ad excepteur. Do sunt excepteur commodo mollit id esse elit ut eu quis.\r\n", "registered": "2014-02-15T17:26:49-13:00", "latitude": -74.343398, "longitude": -56.17493, "tags": [ "voluptate", "qui", "commodo", "nisi", "fugiat", "ut", "veniam" ], "friends": [ { "id": 0, "name": "Griffith Ware" }, { "id": 1, "name": "Leona Alston" }, { "id": 2, "name": "Juliette Nieves" } ], "greeting": "Hello, Leticia Williamson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b4c180a589297fa2d", "index": 4659, "guid": "ac88e276-f72a-4b09-92a6-1272bc358472", "isActive": false, "balance": "$3,042.33", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Marcia Deleon", "gender": "female", "company": "PERKLE", "email": "marciadeleon@perkle.com", "phone": "+1 (911) 525-3250", "address": "819 Perry Place, Blende, Federated States Of Micronesia, 9867", "about": "Sint consectetur ullamco aliqua cupidatat proident voluptate ea ut ex. Ullamco aute amet elit non laboris mollit. Cupidatat ad eiusmod nulla exercitation Lorem sit ex veniam ullamco.\r\n", "registered": "2014-05-07T08:17:06-12:00", "latitude": -33.259156, "longitude": -152.719419, "tags": [ "nulla", "anim", "esse", "excepteur", "voluptate", "fugiat", "ullamco" ], "friends": [ { "id": 0, "name": "Chase Parrish" }, { "id": 1, "name": "Charlotte Farley" }, { "id": 2, "name": "Kinney Pugh" } ], "greeting": "Hello, Marcia Deleon! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b2916bc826b1e77e8", "index": 4660, "guid": "a8389ac4-70c1-4138-bb6d-e0b6f075affb", "isActive": false, "balance": "$1,178.90", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Araceli Barber", "gender": "female", "company": "XYMONK", "email": "aracelibarber@xymonk.com", "phone": "+1 (882) 578-2737", "address": "607 Wogan Terrace, Babb, Oklahoma, 5708", "about": "Pariatur aliquip amet eu labore sunt ex. Ullamco deserunt occaecat non proident enim dolore mollit adipisicing elit enim. Esse occaecat enim elit quis enim tempor ut enim elit irure ut incididunt aute. Ea duis fugiat eiusmod velit nulla ad non ad occaecat mollit aute occaecat adipisicing irure. Adipisicing exercitation magna cupidatat consectetur cupidatat ullamco eiusmod irure aute. Dolor occaecat deserunt reprehenderit consequat mollit aliqua est commodo sint in. Occaecat ad qui aliqua officia fugiat veniam deserunt.\r\n", "registered": "2014-09-11T20:10:28-12:00", "latitude": 62.411086, "longitude": -6.900618, "tags": [ "dolor", "magna", "proident", "ea", "commodo", "laborum", "commodo" ], "friends": [ { "id": 0, "name": "Rebecca Hayes" }, { "id": 1, "name": "Tabitha Pennington" }, { "id": 2, "name": "Emma May" } ], "greeting": "Hello, Araceli Barber! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b99e22d1a2287a373", "index": 4661, "guid": "54b523fa-bf58-4190-acea-211495144151", "isActive": true, "balance": "$1,997.68", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Carolina Hyde", "gender": "female", "company": "ZEROLOGY", "email": "carolinahyde@zerology.com", "phone": "+1 (971) 412-2067", "address": "711 Clove Road, Greenfields, Michigan, 9025", "about": "Elit Lorem elit labore id velit ea. Irure reprehenderit occaecat elit ipsum eiusmod consequat esse incididunt nostrud incididunt reprehenderit id laboris sint. Irure ut est ad occaecat et enim laboris est sit magna proident nisi culpa labore.\r\n", "registered": "2014-03-11T23:51:33-13:00", "latitude": 49.080979, "longitude": 135.67109, "tags": [ "aute", "dolor", "ad", "aute", "irure", "minim", "cillum" ], "friends": [ { "id": 0, "name": "Nicholson Nunez" }, { "id": 1, "name": "Virgie Hodge" }, { "id": 2, "name": "Zamora Dominguez" } ], "greeting": "Hello, Carolina Hyde! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b5f81e72d44b069a1", "index": 4662, "guid": "3991623c-4ef7-46ce-9363-95077440b250", "isActive": false, "balance": "$1,061.24", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Henry Mitchell", "gender": "male", "company": "MIXERS", "email": "henrymitchell@mixers.com", "phone": "+1 (802) 482-3669", "address": "594 Ridge Boulevard, Grantville, Kansas, 3695", "about": "Anim aute proident sunt proident cillum excepteur ea. Irure ex labore deserunt nostrud. Magna esse do voluptate non ut ex incididunt id excepteur in. Dolore velit deserunt tempor duis minim sit reprehenderit. Deserunt nisi dolor cupidatat nulla laboris nulla non qui fugiat ad dolore sint dolore qui. Labore id ad culpa aute aute.\r\n", "registered": "2014-09-06T12:01:58-12:00", "latitude": 19.100391, "longitude": 72.68393, "tags": [ "pariatur", "aliquip", "cillum", "dolore", "proident", "cupidatat", "Lorem" ], "friends": [ { "id": 0, "name": "Tiffany Rogers" }, { "id": 1, "name": "Blackburn Odom" }, { "id": 2, "name": "Elisabeth Brock" } ], "greeting": "Hello, Henry Mitchell! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b87251e8f8d586bdc", "index": 4663, "guid": "9246b5c7-6006-4e5f-8a3a-cbb0feaabde6", "isActive": false, "balance": "$2,082.00", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Vicki Dixon", "gender": "female", "company": "QUOTEZART", "email": "vickidixon@quotezart.com", "phone": "+1 (965) 512-2405", "address": "484 Ryerson Street, Lafferty, South Dakota, 1808", "about": "Ullamco eu cillum magna anim labore. Sit deserunt est aliquip minim ullamco elit. Magna laborum adipisicing laboris eu velit. Anim laboris pariatur aute occaecat.\r\n", "registered": "2014-03-01T23:27:07-13:00", "latitude": -66.824888, "longitude": -0.074421, "tags": [ "magna", "consectetur", "anim", "veniam", "cillum", "in", "amet" ], "friends": [ { "id": 0, "name": "Lorrie Barnes" }, { "id": 1, "name": "Lessie Massey" }, { "id": 2, "name": "Caitlin Morton" } ], "greeting": "Hello, Vicki Dixon! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b0414a6a30ed583eb", "index": 4664, "guid": "ca7deec4-832c-46fc-b2a0-34d77a970fc2", "isActive": false, "balance": "$3,185.15", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Holder Landry", "gender": "male", "company": "NURALI", "email": "holderlandry@nurali.com", "phone": "+1 (819) 407-2711", "address": "732 Thatford Avenue, Klagetoh, West Virginia, 9090", "about": "Eiusmod culpa ex enim sint ullamco aliqua et fugiat anim minim eu occaecat. Cillum elit ut occaecat aliquip minim irure nisi exercitation pariatur reprehenderit adipisicing est adipisicing dolor. Proident aliqua ut ipsum est esse ea ipsum amet aute non. Pariatur elit ex tempor est sint aute consequat labore culpa commodo ea tempor.\r\n", "registered": "2014-05-20T18:37:39-12:00", "latitude": -80.488492, "longitude": 76.943698, "tags": [ "ad", "ad", "veniam", "magna", "quis", "ex", "id" ], "friends": [ { "id": 0, "name": "Leonard Garcia" }, { "id": 1, "name": "Jones Bowers" }, { "id": 2, "name": "Georgina Whitaker" } ], "greeting": "Hello, Holder Landry! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b1b56cd49b16460a3", "index": 4665, "guid": "6bc45f98-1e05-4802-a5a4-c0b481d6155d", "isActive": false, "balance": "$1,746.00", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Jackson Gordon", "gender": "male", "company": "QUINTITY", "email": "jacksongordon@quintity.com", "phone": "+1 (837) 408-2994", "address": "123 Tillary Street, Movico, Texas, 8990", "about": "Et culpa consequat quis ex do enim exercitation exercitation minim ea nulla duis irure tempor. Velit ex ex laboris duis ea officia ipsum fugiat in sit do Lorem minim. Nulla amet aute est id. Minim tempor adipisicing amet amet excepteur.\r\n", "registered": "2014-03-11T07:05:19-13:00", "latitude": 50.736096, "longitude": -177.50794, "tags": [ "incididunt", "cillum", "ea", "Lorem", "cupidatat", "id", "elit" ], "friends": [ { "id": 0, "name": "Mayer Downs" }, { "id": 1, "name": "Sims Rose" }, { "id": 2, "name": "Matilda Blackwell" } ], "greeting": "Hello, Jackson Gordon! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2be788007df312af17", "index": 4666, "guid": "52f7e672-4655-494b-b4ff-5789a1556bb6", "isActive": true, "balance": "$1,721.59", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Santos Steele", "gender": "male", "company": "GEEKWAGON", "email": "santossteele@geekwagon.com", "phone": "+1 (977) 554-3477", "address": "463 Cleveland Street, Chaparrito, Oregon, 1431", "about": "Ex duis fugiat ea sit sunt. Sit labore elit proident laborum voluptate pariatur proident eiusmod. Enim nostrud ut esse esse irure aliqua excepteur ipsum culpa cillum sit est. Dolore et ipsum proident culpa occaecat laboris anim reprehenderit nisi consectetur deserunt laboris magna. Exercitation voluptate eu adipisicing do duis id. Officia sint excepteur sit dolor occaecat elit ut consectetur laboris mollit elit sint sit.\r\n", "registered": "2014-01-23T11:58:16-13:00", "latitude": -11.222939, "longitude": 169.391415, "tags": [ "ex", "nostrud", "veniam", "aliquip", "deserunt", "mollit", "Lorem" ], "friends": [ { "id": 0, "name": "Velez Dorsey" }, { "id": 1, "name": "Haley Burch" }, { "id": 2, "name": "Catalina Miller" } ], "greeting": "Hello, Santos Steele! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b526a91335adeab02", "index": 4667, "guid": "ea095d86-0f3f-4a8b-88ab-92d1d655cf40", "isActive": true, "balance": "$1,344.60", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Lavonne Gross", "gender": "female", "company": "ZIALACTIC", "email": "lavonnegross@zialactic.com", "phone": "+1 (956) 595-3031", "address": "445 Neptune Avenue, Coventry, Nevada, 5680", "about": "Sit sunt exercitation non enim nisi. Est nisi commodo laboris amet. Esse labore minim adipisicing ipsum pariatur. Aliquip consequat consequat exercitation eiusmod velit adipisicing ad fugiat sint excepteur exercitation aliquip. Excepteur ad proident culpa minim aute culpa ut reprehenderit ullamco ea non et. Irure sunt anim ea ex enim consectetur velit esse enim officia irure.\r\n", "registered": "2014-04-24T04:56:03-12:00", "latitude": 7.252938, "longitude": 76.975508, "tags": [ "incididunt", "do", "amet", "ullamco", "dolor", "tempor", "voluptate" ], "friends": [ { "id": 0, "name": "Jeanine Rowe" }, { "id": 1, "name": "Mayo Fitzgerald" }, { "id": 2, "name": "Burke Burris" } ], "greeting": "Hello, Lavonne Gross! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bdcf970a6c193596a", "index": 4668, "guid": "6a4e15e9-e6bb-4b47-974e-ac6a79e0e7b0", "isActive": false, "balance": "$3,435.11", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Huber Case", "gender": "male", "company": "ROCKABYE", "email": "hubercase@rockabye.com", "phone": "+1 (855) 443-2441", "address": "660 Lyme Avenue, Enlow, Minnesota, 1689", "about": "Incididunt tempor aliqua reprehenderit ipsum aliquip culpa sit aliqua excepteur voluptate et id. Laboris mollit velit labore veniam. Magna reprehenderit nostrud commodo exercitation voluptate et aliquip anim tempor pariatur tempor consequat nostrud elit. Minim nulla culpa adipisicing officia esse officia in quis occaecat do. Ullamco duis ut ut cupidatat aliqua excepteur incididunt nisi commodo ullamco exercitation nisi irure velit. Magna ut amet culpa exercitation laboris cillum laboris tempor. Non consectetur adipisicing eu ut duis occaecat ea minim incididunt laborum.\r\n", "registered": "2014-09-11T10:39:52-12:00", "latitude": 23.045302, "longitude": -144.67124, "tags": [ "ea", "aliquip", "cupidatat", "nisi", "id", "esse", "adipisicing" ], "friends": [ { "id": 0, "name": "Rowe Hines" }, { "id": 1, "name": "Rochelle Contreras" }, { "id": 2, "name": "Grace Chen" } ], "greeting": "Hello, Huber Case! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b514fcfe39e7f15b4", "index": 4669, "guid": "44ba6b67-d5c6-4096-a492-3cad0c294a07", "isActive": true, "balance": "$1,144.77", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Erin Bean", "gender": "female", "company": "KYAGORO", "email": "erinbean@kyagoro.com", "phone": "+1 (842) 557-3193", "address": "291 Clark Street, Welda, Missouri, 579", "about": "Ullamco aliquip ut ea ipsum deserunt. Proident et veniam sit et sint et et. Non minim nulla eiusmod culpa dolor est ullamco id veniam in amet. Sit laboris laborum reprehenderit deserunt sit laboris ea consequat. Anim cupidatat ex nostrud non officia ullamco consequat consequat. Sunt magna duis incididunt fugiat cillum.\r\n", "registered": "2014-05-24T21:17:24-12:00", "latitude": 10.434669, "longitude": 145.027558, "tags": [ "sit", "ea", "aliqua", "nostrud", "adipisicing", "occaecat", "adipisicing" ], "friends": [ { "id": 0, "name": "Tyson Burns" }, { "id": 1, "name": "Jo Bruce" }, { "id": 2, "name": "Taylor Gilliam" } ], "greeting": "Hello, Erin Bean! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2be17b0842ede5a410", "index": 4670, "guid": "9d683841-3c17-45df-8f01-78efa67f932b", "isActive": true, "balance": "$1,283.09", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Kayla Weiss", "gender": "female", "company": "EXTRAGENE", "email": "kaylaweiss@extragene.com", "phone": "+1 (997) 490-2835", "address": "373 Everit Street, Elwood, Rhode Island, 8573", "about": "Pariatur aliquip nisi dolor nulla reprehenderit pariatur ut consectetur Lorem sit. Culpa sunt duis do ex elit consectetur id do irure proident occaecat ex aute. Occaecat consequat aliqua cupidatat aliquip ad qui commodo nulla non amet tempor consequat excepteur. Ipsum consectetur commodo commodo consectetur do ex mollit ut nostrud dolor. Veniam aliquip sit commodo officia ipsum. In commodo nisi laborum duis aliqua fugiat incididunt.\r\n", "registered": "2014-04-24T21:59:51-12:00", "latitude": 18.825559, "longitude": 64.176669, "tags": [ "consequat", "enim", "enim", "cupidatat", "ad", "dolor", "consequat" ], "friends": [ { "id": 0, "name": "Ferrell Sharp" }, { "id": 1, "name": "Gilliam Rivera" }, { "id": 2, "name": "Clay Hobbs" } ], "greeting": "Hello, Kayla Weiss! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b972cd8ea02d6dac7", "index": 4671, "guid": "b2a6d91e-1e8e-4c30-bb83-08bc0ca6751e", "isActive": false, "balance": "$3,326.80", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Wall Parker", "gender": "male", "company": "IZZBY", "email": "wallparker@izzby.com", "phone": "+1 (908) 525-3213", "address": "566 Glenwood Road, Belfair, Florida, 7508", "about": "Ea proident quis ex veniam do amet pariatur commodo nisi fugiat consectetur sint. Consectetur aute voluptate mollit incididunt ut sunt cillum consequat. Eu duis dolore tempor proident est nulla do incididunt magna consectetur labore pariatur.\r\n", "registered": "2014-05-24T22:03:19-12:00", "latitude": 85.764141, "longitude": 153.310743, "tags": [ "exercitation", "excepteur", "consequat", "sit", "aliquip", "in", "amet" ], "friends": [ { "id": 0, "name": "Amie West" }, { "id": 1, "name": "Bernice Peck" }, { "id": 2, "name": "Jenny Hogan" } ], "greeting": "Hello, Wall Parker! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b7b920aea8b11eb8f", "index": 4672, "guid": "9b227522-aaa0-471b-96a9-7df571f68a16", "isActive": true, "balance": "$1,924.31", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Morrison Coffey", "gender": "male", "company": "JIMBIES", "email": "morrisoncoffey@jimbies.com", "phone": "+1 (861) 439-3341", "address": "557 Legion Street, Freetown, North Carolina, 7159", "about": "Eiusmod in consequat commodo aliquip proident. Ipsum in cillum incididunt sit id ipsum commodo ipsum duis. Fugiat ipsum veniam ipsum proident anim qui. Nostrud Lorem ipsum mollit cillum do sit enim exercitation et tempor reprehenderit commodo irure. Duis enim elit nulla mollit eiusmod. Tempor qui anim Lorem duis velit veniam Lorem pariatur occaecat esse ex et aliquip. Voluptate dolor aliquip velit ex adipisicing ipsum aliquip.\r\n", "registered": "2014-08-26T21:01:09-12:00", "latitude": 52.74314, "longitude": -178.516986, "tags": [ "deserunt", "incididunt", "tempor", "laboris", "eiusmod", "voluptate", "id" ], "friends": [ { "id": 0, "name": "Randi Snider" }, { "id": 1, "name": "Aisha Flores" }, { "id": 2, "name": "Viola Harrell" } ], "greeting": "Hello, Morrison Coffey! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b4749adbb539fb2a8", "index": 4673, "guid": "92536563-d550-4c36-bdbf-6ac93e6c431c", "isActive": true, "balance": "$2,792.78", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Bowman Henson", "gender": "male", "company": "EXODOC", "email": "bowmanhenson@exodoc.com", "phone": "+1 (826) 421-2298", "address": "890 Harden Street, Darbydale, New Hampshire, 7405", "about": "Officia anim veniam Lorem dolor dolore irure consectetur incididunt labore adipisicing mollit. Excepteur aute elit labore pariatur dolor. Laboris tempor excepteur reprehenderit id duis consequat dolore incididunt culpa anim. Veniam exercitation voluptate nisi tempor non eu officia proident. Nulla occaecat anim sunt eu dolore commodo eu sint velit dolor laborum. Consectetur ea pariatur nulla aliquip laboris nostrud sunt nostrud.\r\n", "registered": "2014-03-25T04:36:12-13:00", "latitude": 29.500576, "longitude": -124.027488, "tags": [ "cillum", "dolor", "nostrud", "enim", "eiusmod", "amet", "aliquip" ], "friends": [ { "id": 0, "name": "Wright Booth" }, { "id": 1, "name": "Tamra Willis" }, { "id": 2, "name": "Oneil Carpenter" } ], "greeting": "Hello, Bowman Henson! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bdb1eb40e2bd836c5", "index": 4674, "guid": "0136dddd-9a1b-497a-a6e8-8d4aec5ffe08", "isActive": false, "balance": "$1,055.49", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Pierce Pena", "gender": "male", "company": "OVERPLEX", "email": "piercepena@overplex.com", "phone": "+1 (825) 404-2318", "address": "666 Front Street, Riner, Arkansas, 286", "about": "Dolor est anim esse tempor duis do deserunt. Amet labore sint do commodo est labore magna. Ad non Lorem ad exercitation eu ex quis. Reprehenderit sit qui cillum consectetur id nisi.\r\n", "registered": "2014-01-14T23:30:35-13:00", "latitude": 13.827947, "longitude": -138.977216, "tags": [ "commodo", "fugiat", "pariatur", "aute", "deserunt", "deserunt", "enim" ], "friends": [ { "id": 0, "name": "Jana Washington" }, { "id": 1, "name": "Anderson Potter" }, { "id": 2, "name": "Pearson Gates" } ], "greeting": "Hello, Pierce Pena! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ba3ea12a4c8ae859f", "index": 4675, "guid": "3f58cae3-89d9-44b2-a95e-aedc9ba54ab4", "isActive": true, "balance": "$2,323.72", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Cortez Hopkins", "gender": "male", "company": "ECOSYS", "email": "cortezhopkins@ecosys.com", "phone": "+1 (878) 496-2549", "address": "110 Holmes Lane, Ferney, Iowa, 697", "about": "Culpa ullamco ipsum incididunt amet. Eu laboris laboris ipsum consequat amet eiusmod qui anim ipsum non commodo fugiat ea excepteur. Nisi labore in dolor ad consequat adipisicing consectetur quis duis officia in eu.\r\n", "registered": "2014-08-23T11:10:22-12:00", "latitude": -17.638157, "longitude": -129.845303, "tags": [ "officia", "sint", "minim", "sit", "ut", "ea", "consectetur" ], "friends": [ { "id": 0, "name": "Constance Gilbert" }, { "id": 1, "name": "Camille Walls" }, { "id": 2, "name": "Christine Franklin" } ], "greeting": "Hello, Cortez Hopkins! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b635cab2984de716d", "index": 4676, "guid": "edacc6d1-ae41-4247-af67-6d2dc16b1cd4", "isActive": false, "balance": "$2,909.69", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Alma Reed", "gender": "female", "company": "NEXGENE", "email": "almareed@nexgene.com", "phone": "+1 (925) 505-3390", "address": "512 Blake Avenue, Worton, Nebraska, 4246", "about": "Sunt exercitation deserunt eu Lorem. Dolore aliquip amet officia labore aliquip anim et adipisicing. Labore pariatur nisi dolor non occaecat anim eu aliquip dolor aute dolor nulla sit et.\r\n", "registered": "2014-05-03T06:40:49-12:00", "latitude": 0.683606, "longitude": 99.607051, "tags": [ "duis", "anim", "commodo", "nisi", "quis", "mollit", "commodo" ], "friends": [ { "id": 0, "name": "Matthews Odonnell" }, { "id": 1, "name": "Padilla Chang" }, { "id": 2, "name": "Katheryn Snyder" } ], "greeting": "Hello, Alma Reed! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b03715faed2ccf6e6", "index": 4677, "guid": "0390ac72-a6cd-4e27-a804-4cb0b9d1d90d", "isActive": true, "balance": "$1,427.83", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Lorena Elliott", "gender": "female", "company": "KINETICA", "email": "lorenaelliott@kinetica.com", "phone": "+1 (950) 509-3553", "address": "193 Seagate Terrace, Ogema, District Of Columbia, 7972", "about": "Enim dolore nulla ea ea qui aliqua fugiat ex exercitation consectetur ut nulla reprehenderit. Elit ex commodo laborum culpa officia aliquip cupidatat. In consequat nisi deserunt ullamco Lorem pariatur nulla.\r\n", "registered": "2014-06-14T13:33:10-12:00", "latitude": -87.768449, "longitude": 27.977043, "tags": [ "irure", "consectetur", "amet", "aute", "quis", "eiusmod", "laborum" ], "friends": [ { "id": 0, "name": "Snow Neal" }, { "id": 1, "name": "Latasha Boone" }, { "id": 2, "name": "Terra Valencia" } ], "greeting": "Hello, Lorena Elliott! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b054b1029f3bb3647", "index": 4678, "guid": "7a5d5078-0f29-4aa5-8395-65e504fafd7a", "isActive": false, "balance": "$3,328.02", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Angelina Robinson", "gender": "female", "company": "EMERGENT", "email": "angelinarobinson@emergent.com", "phone": "+1 (846) 554-3890", "address": "650 Baughman Place, Muir, New Jersey, 6238", "about": "Laborum pariatur id dolore ipsum sint pariatur esse excepteur et laboris. In id labore ut cupidatat magna in dolor velit elit dolore minim aute ullamco tempor. Officia ullamco irure aute sunt fugiat dolor cillum. Do consectetur pariatur eu ea nisi exercitation consequat. Et cupidatat aliquip consequat do aute quis nostrud qui fugiat. Deserunt do excepteur nostrud culpa voluptate enim enim do minim.\r\n", "registered": "2014-05-12T12:14:59-12:00", "latitude": 42.705499, "longitude": 104.873008, "tags": [ "nulla", "ut", "exercitation", "pariatur", "enim", "cillum", "labore" ], "friends": [ { "id": 0, "name": "Janelle Macdonald" }, { "id": 1, "name": "Dorothea Santiago" }, { "id": 2, "name": "Alexandra Bartlett" } ], "greeting": "Hello, Angelina Robinson! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bc9e1a49d524872d7", "index": 4679, "guid": "8cd3a174-5639-4dbd-a711-bc1580a13aaf", "isActive": false, "balance": "$3,410.16", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Saunders Weeks", "gender": "male", "company": "SIGNIDYNE", "email": "saundersweeks@signidyne.com", "phone": "+1 (945) 564-2402", "address": "551 Hendrix Street, Stewart, Palau, 4918", "about": "Irure cillum duis proident enim magna non non deserunt do cillum. Minim velit sint aliquip eu. Tempor cillum mollit do Lorem consectetur cupidatat magna sunt commodo officia laboris tempor dolore occaecat. Et labore eu excepteur voluptate nisi laboris.\r\n", "registered": "2014-04-10T17:17:32-12:00", "latitude": -57.405553, "longitude": 146.650018, "tags": [ "adipisicing", "pariatur", "dolor", "sunt", "dolore", "occaecat", "duis" ], "friends": [ { "id": 0, "name": "Johnnie Lott" }, { "id": 1, "name": "Bessie Oconnor" }, { "id": 2, "name": "Zimmerman Dejesus" } ], "greeting": "Hello, Saunders Weeks! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b6c1f705f0a8d9fff", "index": 4680, "guid": "1950290d-aaf2-47df-ae1a-776a2908603b", "isActive": true, "balance": "$3,065.89", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Alissa Cline", "gender": "female", "company": "HINWAY", "email": "alissacline@hinway.com", "phone": "+1 (982) 563-3904", "address": "523 Schroeders Avenue, Roy, Puerto Rico, 2301", "about": "Aute non cupidatat adipisicing do commodo irure id laborum sint ad voluptate. Adipisicing aliquip nostrud exercitation aliquip non incididunt irure excepteur incididunt anim eiusmod eu id. Tempor ea reprehenderit cillum officia proident tempor ut. Sint minim veniam laborum mollit veniam Lorem dolor. Esse nostrud pariatur laboris sit sit laborum incididunt amet qui laborum.\r\n", "registered": "2014-01-27T04:08:31-13:00", "latitude": 85.601721, "longitude": -53.405634, "tags": [ "officia", "ad", "excepteur", "pariatur", "occaecat", "tempor", "mollit" ], "friends": [ { "id": 0, "name": "Vivian Larson" }, { "id": 1, "name": "Cook Velazquez" }, { "id": 2, "name": "Marsh Newman" } ], "greeting": "Hello, Alissa Cline! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b0b915a2a8048116a", "index": 4681, "guid": "6da42bbe-a4b4-4c70-aa91-23b649342396", "isActive": true, "balance": "$2,769.68", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Cara Dyer", "gender": "female", "company": "CANDECOR", "email": "caradyer@candecor.com", "phone": "+1 (921) 592-2566", "address": "754 Sapphire Street, Tetherow, California, 1965", "about": "Sint duis aute duis pariatur tempor est exercitation sunt magna excepteur. Cillum exercitation tempor laboris id do enim enim cillum duis eu magna. Esse ullamco ea mollit laborum dolore eu. Mollit anim cillum aliquip eiusmod aliquip sint veniam ipsum non deserunt eiusmod. Enim adipisicing qui aliquip deserunt cillum et occaecat commodo adipisicing deserunt occaecat dolor elit fugiat. Voluptate minim est cillum occaecat nisi voluptate aliqua proident eiusmod adipisicing velit.\r\n", "registered": "2014-04-11T11:41:00-12:00", "latitude": 87.310818, "longitude": 128.924393, "tags": [ "id", "ut", "ut", "irure", "commodo", "cupidatat", "ex" ], "friends": [ { "id": 0, "name": "Burnett Blair" }, { "id": 1, "name": "Farrell Keller" }, { "id": 2, "name": "Helene Hampton" } ], "greeting": "Hello, Cara Dyer! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bdabab5f53d541a57", "index": 4682, "guid": "3537c60b-ac92-4395-b038-086157a94afb", "isActive": true, "balance": "$1,424.54", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Eva Hernandez", "gender": "female", "company": "SUREPLEX", "email": "evahernandez@sureplex.com", "phone": "+1 (858) 466-2548", "address": "730 Hornell Loop, Harborton, Vermont, 4136", "about": "Amet dolore consectetur mollit fugiat ut cupidatat et sunt incididunt incididunt voluptate eiusmod quis. Adipisicing irure in et minim eu sit qui aliqua labore laboris proident sit et occaecat. Reprehenderit consectetur exercitation reprehenderit quis et quis. Anim ea qui amet pariatur sint ad id non ut deserunt. Qui culpa nisi deserunt ullamco ut qui incididunt non et tempor veniam do.\r\n", "registered": "2014-07-23T10:50:22-12:00", "latitude": -27.086851, "longitude": 62.601855, "tags": [ "amet", "laborum", "ea", "Lorem", "magna", "reprehenderit", "tempor" ], "friends": [ { "id": 0, "name": "Concepcion Nguyen" }, { "id": 1, "name": "Edwards Ingram" }, { "id": 2, "name": "Betty Maldonado" } ], "greeting": "Hello, Eva Hernandez! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bf24f7d43030f6bc2", "index": 4683, "guid": "a8098c6f-99f8-4d6b-961f-d21e9154d70f", "isActive": false, "balance": "$3,790.44", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Priscilla Guthrie", "gender": "female", "company": "DUOFLEX", "email": "priscillaguthrie@duoflex.com", "phone": "+1 (897) 499-2111", "address": "964 Decatur Street, Bradenville, Indiana, 9773", "about": "Exercitation commodo consequat ut pariatur cupidatat laborum non officia fugiat minim fugiat excepteur. Sunt fugiat pariatur ullamco veniam. Aute reprehenderit adipisicing officia fugiat ea. Velit enim laborum aliqua fugiat commodo laboris deserunt laborum. Ad duis eu commodo irure occaecat dolore ullamco aliqua ullamco laboris commodo nostrud aliquip officia. Esse sunt eu culpa tempor. Quis sit do tempor ipsum consectetur cillum ipsum.\r\n", "registered": "2014-08-15T08:41:38-12:00", "latitude": -77.755804, "longitude": 163.983051, "tags": [ "veniam", "excepteur", "nulla", "ipsum", "esse", "nisi", "veniam" ], "friends": [ { "id": 0, "name": "Day Fletcher" }, { "id": 1, "name": "Mcgowan Jarvis" }, { "id": 2, "name": "Jeanie Hinton" } ], "greeting": "Hello, Priscilla Guthrie! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b8bd7a9103d3d557d", "index": 4684, "guid": "7359db9a-325d-407f-a2ce-fe450f0a3daa", "isActive": false, "balance": "$3,156.25", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Autumn Battle", "gender": "female", "company": "INSECTUS", "email": "autumnbattle@insectus.com", "phone": "+1 (820) 489-2587", "address": "240 Linden Street, Herlong, Illinois, 2749", "about": "Pariatur officia ipsum nostrud elit eu dolore adipisicing enim veniam duis laboris eiusmod. Qui quis laboris mollit culpa enim commodo duis quis aliquip veniam. Culpa irure est eu commodo Lorem nulla irure sint aliquip cillum non eu eiusmod. Minim quis consectetur anim ipsum quis deserunt esse sint adipisicing adipisicing nisi. Nisi ad est anim sint sit esse nisi aute.\r\n", "registered": "2014-08-12T13:05:33-12:00", "latitude": -60.544943, "longitude": -57.01081, "tags": [ "magna", "eiusmod", "labore", "quis", "cillum", "consequat", "ad" ], "friends": [ { "id": 0, "name": "Monica Allen" }, { "id": 1, "name": "Laurie Barrett" }, { "id": 2, "name": "Beck Rojas" } ], "greeting": "Hello, Autumn Battle! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b27599b7d5e4b8bcf", "index": 4685, "guid": "0e3fba5e-381c-4d2e-ac48-e7820da285a6", "isActive": true, "balance": "$1,912.52", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Rosalie Dotson", "gender": "female", "company": "INTERODEO", "email": "rosaliedotson@interodeo.com", "phone": "+1 (898) 425-3133", "address": "417 Linwood Street, Madrid, South Carolina, 2086", "about": "Eu anim adipisicing anim voluptate irure occaecat dolor fugiat veniam sint sint magna. Tempor cillum anim ad velit eu tempor minim in ipsum. Qui ipsum proident quis ut exercitation cillum cupidatat magna magna reprehenderit excepteur laborum.\r\n", "registered": "2014-03-23T03:09:09-13:00", "latitude": 88.196329, "longitude": 143.233716, "tags": [ "quis", "dolore", "veniam", "adipisicing", "amet", "ad", "do" ], "friends": [ { "id": 0, "name": "Barbra Spence" }, { "id": 1, "name": "Vasquez Burke" }, { "id": 2, "name": "Hicks Rosario" } ], "greeting": "Hello, Rosalie Dotson! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b95a649afd7e378d7", "index": 4686, "guid": "cf92b2ed-c49c-44dd-b0f0-01a13c2babcf", "isActive": true, "balance": "$3,283.56", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Hopkins Stephenson", "gender": "male", "company": "NETUR", "email": "hopkinsstephenson@netur.com", "phone": "+1 (915) 461-3637", "address": "571 Delmonico Place, Day, American Samoa, 9912", "about": "Id aute aliqua elit deserunt magna voluptate ea exercitation dolor elit ipsum. Velit irure officia magna fugiat adipisicing est aliquip ullamco ipsum ea minim. In sint officia tempor ea amet officia quis. Dolore dolor Lorem anim aliquip dolor reprehenderit labore nulla dolor. Laborum qui est nostrud ipsum velit aute adipisicing.\r\n", "registered": "2014-05-25T03:25:31-12:00", "latitude": -72.016707, "longitude": 39.988377, "tags": [ "anim", "sunt", "fugiat", "aute", "sit", "do", "ex" ], "friends": [ { "id": 0, "name": "Kaufman Frederick" }, { "id": 1, "name": "Rosa Kirkland" }, { "id": 2, "name": "Marguerite Wall" } ], "greeting": "Hello, Hopkins Stephenson! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bd310a0cb025515e9", "index": 4687, "guid": "6f648fae-aa6b-416d-bd78-c011e8b0e758", "isActive": false, "balance": "$1,331.68", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Peggy Parsons", "gender": "female", "company": "WAZZU", "email": "peggyparsons@wazzu.com", "phone": "+1 (926) 498-2339", "address": "250 Battery Avenue, Tibbie, Delaware, 8140", "about": "Mollit qui irure magna sint ipsum esse et deserunt mollit id incididunt culpa elit esse. Sint mollit dolore nulla Lorem anim consectetur exercitation do duis. Quis eiusmod commodo proident non incididunt nulla velit ex anim elit sint reprehenderit consectetur eiusmod.\r\n", "registered": "2014-02-24T15:03:53-13:00", "latitude": 82.561629, "longitude": 80.459402, "tags": [ "non", "voluptate", "mollit", "ex", "pariatur", "dolore", "aute" ], "friends": [ { "id": 0, "name": "Skinner Curtis" }, { "id": 1, "name": "Hodges Diaz" }, { "id": 2, "name": "Esmeralda Henderson" } ], "greeting": "Hello, Peggy Parsons! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bb113609c6815a9fe", "index": 4688, "guid": "2ba45281-47f4-4a92-aa84-3c750beeca0e", "isActive": true, "balance": "$2,644.35", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Miranda Fisher", "gender": "female", "company": "INSURITY", "email": "mirandafisher@insurity.com", "phone": "+1 (989) 457-3593", "address": "743 Campus Road, Newcastle, Pennsylvania, 3857", "about": "In excepteur esse eiusmod consectetur excepteur cillum. Enim ad duis aliqua aliqua cupidatat aliquip aliqua cupidatat reprehenderit et nostrud nulla. Irure aliqua veniam labore cupidatat fugiat nisi velit voluptate. Eu laborum laboris veniam eu ipsum velit consectetur aliqua occaecat consequat reprehenderit qui laboris officia. Deserunt culpa cillum deserunt est veniam deserunt cillum commodo sit adipisicing. Irure enim fugiat incididunt amet et. Et consequat aliquip labore qui amet ea minim.\r\n", "registered": "2014-09-22T13:08:39-12:00", "latitude": -28.498976, "longitude": -27.877855, "tags": [ "duis", "velit", "commodo", "laboris", "ex", "quis", "qui" ], "friends": [ { "id": 0, "name": "Mcmahon Forbes" }, { "id": 1, "name": "Aguirre Bass" }, { "id": 2, "name": "Montgomery Rowland" } ], "greeting": "Hello, Miranda Fisher! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bf888b0302a691e24", "index": 4689, "guid": "3bbfd41a-1cc2-427d-8935-c358c38615d7", "isActive": false, "balance": "$2,858.46", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Riggs Horn", "gender": "male", "company": "FRENEX", "email": "riggshorn@frenex.com", "phone": "+1 (999) 496-3425", "address": "520 Lester Court, Gilmore, Georgia, 440", "about": "Sit eiusmod labore dolor ad exercitation fugiat aliqua sunt voluptate ad laborum aliquip velit nostrud. Consequat magna qui amet laboris laboris minim ad esse cupidatat veniam officia do laboris. Deserunt occaecat do fugiat in ullamco cillum nisi Lorem excepteur. Incididunt sint ea incididunt nulla proident. Elit in fugiat do Lorem.\r\n", "registered": "2014-01-09T19:55:11-13:00", "latitude": -9.01052, "longitude": 67.754425, "tags": [ "magna", "nostrud", "anim", "tempor", "aliquip", "qui", "Lorem" ], "friends": [ { "id": 0, "name": "Beryl Yates" }, { "id": 1, "name": "Sykes Spears" }, { "id": 2, "name": "Lois Hester" } ], "greeting": "Hello, Riggs Horn! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bce21f7fccde1e391", "index": 4690, "guid": "d3ae09e4-4486-4bf9-ba5c-1b96abb9c866", "isActive": true, "balance": "$2,946.94", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Dana Fernandez", "gender": "female", "company": "ZILLIDIUM", "email": "danafernandez@zillidium.com", "phone": "+1 (979) 543-2358", "address": "735 Schenck Place, Cataract, North Dakota, 6275", "about": "Proident cillum id nisi dolore quis occaecat magna dolore velit. Anim eiusmod excepteur laboris Lorem enim ipsum elit velit nulla. Consequat culpa exercitation anim et et nisi ut consectetur. Culpa enim sunt adipisicing Lorem anim consequat aliqua culpa ipsum veniam Lorem et. Deserunt ullamco dolor culpa ut officia. Consectetur proident irure non ullamco deserunt culpa.\r\n", "registered": "2014-07-28T13:42:26-12:00", "latitude": -1.506335, "longitude": 52.068331, "tags": [ "elit", "ut", "sit", "nisi", "excepteur", "consequat", "ex" ], "friends": [ { "id": 0, "name": "Phoebe Sweeney" }, { "id": 1, "name": "Margie Abbott" }, { "id": 2, "name": "Kasey Kane" } ], "greeting": "Hello, Dana Fernandez! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b8b2286db72eec8c8", "index": 4691, "guid": "af038b88-f30a-42fd-8514-6abd41c2bd8d", "isActive": false, "balance": "$2,199.77", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Houston Clements", "gender": "male", "company": "COMBOGENE", "email": "houstonclements@combogene.com", "phone": "+1 (954) 507-2745", "address": "834 Hampton Avenue, Salvo, Louisiana, 6926", "about": "Laboris laborum Lorem elit do. Magna fugiat ex labore duis. Enim in aliqua cillum nostrud est nisi elit aliqua labore incididunt in incididunt sunt. Consectetur ipsum mollit cupidatat laboris proident et irure adipisicing ea deserunt nisi ad do eiusmod. Anim nostrud ad amet nostrud pariatur duis ex. Culpa sunt enim anim incididunt commodo.\r\n", "registered": "2014-03-17T10:36:58-13:00", "latitude": -19.706886, "longitude": 86.112057, "tags": [ "excepteur", "voluptate", "sit", "labore", "sint", "est", "aute" ], "friends": [ { "id": 0, "name": "Kane Romero" }, { "id": 1, "name": "Lott Moore" }, { "id": 2, "name": "Osborne Adams" } ], "greeting": "Hello, Houston Clements! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bac53018fa2c1f0a9", "index": 4692, "guid": "a2fc8a3a-8b65-4863-8d3e-164ad6fa1e7d", "isActive": false, "balance": "$3,747.73", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Tia Mcfadden", "gender": "female", "company": "KOOGLE", "email": "tiamcfadden@koogle.com", "phone": "+1 (842) 598-2629", "address": "721 Monaco Place, Allison, Northern Mariana Islands, 2395", "about": "Cupidatat ipsum exercitation voluptate occaecat reprehenderit. Culpa dolor proident proident ut nostrud amet irure reprehenderit. Sunt magna consequat enim non consequat laborum veniam excepteur nulla voluptate non ullamco.\r\n", "registered": "2014-07-09T05:17:57-12:00", "latitude": 66.548536, "longitude": -64.171711, "tags": [ "dolor", "consequat", "quis", "do", "magna", "occaecat", "occaecat" ], "friends": [ { "id": 0, "name": "Mercedes Clarke" }, { "id": 1, "name": "Rice Church" }, { "id": 2, "name": "Alyce David" } ], "greeting": "Hello, Tia Mcfadden! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bad80d6868cc8d8f3", "index": 4693, "guid": "7d9ecf83-935d-4c70-8194-9b3462e18739", "isActive": false, "balance": "$1,637.34", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Dawson Mcdonald", "gender": "male", "company": "INTRADISK", "email": "dawsonmcdonald@intradisk.com", "phone": "+1 (980) 481-2592", "address": "175 Duffield Street, Mapletown, Colorado, 1610", "about": "Fugiat aute aliquip sunt sint nostrud anim laborum elit sint fugiat sunt occaecat ex cillum. Labore ut aute ex amet. Excepteur aliquip duis qui qui nulla cupidatat. Commodo laborum tempor ut labore eu consequat id consectetur excepteur ad laboris elit occaecat.\r\n", "registered": "2014-06-26T04:35:30-12:00", "latitude": 33.030452, "longitude": 115.416008, "tags": [ "pariatur", "reprehenderit", "tempor", "dolor", "occaecat", "voluptate", "duis" ], "friends": [ { "id": 0, "name": "Reilly Lindsay" }, { "id": 1, "name": "Oneill Key" }, { "id": 2, "name": "Crystal Murray" } ], "greeting": "Hello, Dawson Mcdonald! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2be88eb964c2c5ab3b", "index": 4694, "guid": "a7790588-8465-433c-8c08-ebaf773d88f2", "isActive": true, "balance": "$2,645.94", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Calderon Phelps", "gender": "male", "company": "ZENTURY", "email": "calderonphelps@zentury.com", "phone": "+1 (986) 496-2506", "address": "752 Union Street, Chapin, Idaho, 4690", "about": "Reprehenderit tempor aute occaecat dolore pariatur aliqua duis. Lorem deserunt nisi voluptate irure. Dolore aute quis enim consectetur voluptate enim amet nostrud eu. Enim commodo labore tempor pariatur do minim laborum mollit ut consequat ipsum. Laboris voluptate aute quis exercitation excepteur culpa elit excepteur culpa laboris aute fugiat. Nisi esse id proident exercitation magna do ullamco dolore voluptate. Ullamco culpa deserunt do laborum.\r\n", "registered": "2014-08-06T13:10:03-12:00", "latitude": 76.13907, "longitude": -178.430404, "tags": [ "nostrud", "sunt", "eu", "eiusmod", "consectetur", "do", "dolore" ], "friends": [ { "id": 0, "name": "Lindsey Wolf" }, { "id": 1, "name": "Gilmore Hooper" }, { "id": 2, "name": "Casey Mills" } ], "greeting": "Hello, Calderon Phelps! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b984c8d86ec155ba5", "index": 4695, "guid": "e02a4552-8c1b-4dc5-bfb6-357cde18dd48", "isActive": true, "balance": "$2,838.38", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Boone Middleton", "gender": "male", "company": "MIRACULA", "email": "boonemiddleton@miracula.com", "phone": "+1 (862) 580-3882", "address": "662 Tapscott Street, Glasgow, Marshall Islands, 2408", "about": "Ullamco dolore sint proident et est consectetur pariatur sit duis velit reprehenderit. Qui ullamco sunt Lorem occaecat est. Incididunt qui incididunt ullamco et veniam Lorem in ad laboris laboris. Sit in laboris enim duis ea sit amet eiusmod id. Nisi fugiat sit aliquip ea eu ipsum tempor id eu nisi. Proident et irure ullamco fugiat amet ex.\r\n", "registered": "2014-03-05T15:34:46-13:00", "latitude": -22.142718, "longitude": 68.004619, "tags": [ "consequat", "nostrud", "ex", "aliqua", "mollit", "consequat", "cupidatat" ], "friends": [ { "id": 0, "name": "Ericka Hawkins" }, { "id": 1, "name": "Campbell Norris" }, { "id": 2, "name": "Moody Rich" } ], "greeting": "Hello, Boone Middleton! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2be48ca0622b1013b9", "index": 4696, "guid": "48d07f99-e401-4f95-9346-5901a8b5c742", "isActive": true, "balance": "$3,005.31", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Walker Cervantes", "gender": "male", "company": "VINCH", "email": "walkercervantes@vinch.com", "phone": "+1 (905) 443-3294", "address": "757 Lloyd Street, Cleary, New York, 5020", "about": "Ipsum veniam minim dolore dolore elit dolor irure sunt adipisicing in esse nulla. Amet labore qui ea minim voluptate nostrud culpa et eiusmod irure minim Lorem cillum et. Voluptate tempor excepteur nisi sunt do quis cupidatat do voluptate ex. Sint magna enim commodo ea laborum mollit.\r\n", "registered": "2014-08-18T21:10:37-12:00", "latitude": -67.494222, "longitude": 152.621661, "tags": [ "aute", "adipisicing", "duis", "eu", "sit", "et", "pariatur" ], "friends": [ { "id": 0, "name": "Hayden Campbell" }, { "id": 1, "name": "Shannon Mcfarland" }, { "id": 2, "name": "Sutton Beach" } ], "greeting": "Hello, Walker Cervantes! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b82f23f5e7705ef08", "index": 4697, "guid": "c3ab31fd-9411-4cf5-9972-e0a44faba135", "isActive": true, "balance": "$1,188.55", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Carole Vaughn", "gender": "female", "company": "NETILITY", "email": "carolevaughn@netility.com", "phone": "+1 (963) 552-3162", "address": "175 Monument Walk, Logan, Guam, 5821", "about": "Cupidatat tempor eu id est culpa mollit id fugiat proident amet fugiat et exercitation. Mollit qui deserunt eiusmod labore dolor qui ut amet mollit mollit incididunt. Ut elit minim amet nostrud deserunt ex irure fugiat sunt ea consequat. Commodo ipsum id laboris pariatur sunt consequat tempor nisi incididunt do dolore et. Aliqua velit dolor irure incididunt voluptate qui pariatur sit duis ipsum ipsum dolor. Officia veniam do veniam culpa amet occaecat reprehenderit do sunt mollit ut culpa laboris. Enim elit sit sunt labore laboris.\r\n", "registered": "2014-01-12T19:21:34-13:00", "latitude": -72.365238, "longitude": -157.848434, "tags": [ "dolor", "id", "est", "cillum", "laborum", "eu", "quis" ], "friends": [ { "id": 0, "name": "Benton Ashley" }, { "id": 1, "name": "Harvey Chandler" }, { "id": 2, "name": "Hilda Vaughan" } ], "greeting": "Hello, Carole Vaughn! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b6fb5c5b6e2ae5751", "index": 4698, "guid": "031c4bb4-13e2-4019-b1d4-c32fc99997d6", "isActive": true, "balance": "$1,990.48", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Wilda Robbins", "gender": "female", "company": "ESCENTA", "email": "wildarobbins@escenta.com", "phone": "+1 (937) 431-3250", "address": "139 Holly Street, Cumminsville, Virgin Islands, 6039", "about": "Duis est ullamco sunt esse mollit voluptate elit cillum esse ut. Consequat nisi eu elit Lorem irure ex. Ad cillum excepteur culpa pariatur excepteur quis aute culpa non amet minim veniam pariatur.\r\n", "registered": "2014-03-30T08:23:21-13:00", "latitude": -27.498291, "longitude": -177.009539, "tags": [ "pariatur", "voluptate", "ipsum", "sit", "laborum", "incididunt", "nulla" ], "friends": [ { "id": 0, "name": "Vonda Levine" }, { "id": 1, "name": "Valerie Combs" }, { "id": 2, "name": "Craig Schwartz" } ], "greeting": "Hello, Wilda Robbins! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b0f04b10d531466de", "index": 4699, "guid": "ec307b83-cdb6-443f-81e5-11bf63fd1335", "isActive": true, "balance": "$2,030.74", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Miller Sims", "gender": "male", "company": "MEDCOM", "email": "millersims@medcom.com", "phone": "+1 (893) 407-3056", "address": "297 Arlington Place, Ola, Massachusetts, 5715", "about": "Nostrud in sunt magna proident cillum amet enim labore nulla eu elit cupidatat. Qui deserunt incididunt eu anim consequat incididunt laborum elit ex cillum irure. Aliquip sint enim enim aliqua irure incididunt magna consectetur cillum. Do consectetur laborum commodo duis adipisicing laboris enim sunt. Qui commodo commodo ut laboris dolore qui magna fugiat.\r\n", "registered": "2014-01-23T23:06:10-13:00", "latitude": -19.614432, "longitude": -120.907632, "tags": [ "eu", "minim", "irure", "sint", "consequat", "laborum", "labore" ], "friends": [ { "id": 0, "name": "Marta Maxwell" }, { "id": 1, "name": "Molly Talley" }, { "id": 2, "name": "Noreen Knowles" } ], "greeting": "Hello, Miller Sims! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b6824f4f16b4ba463", "index": 4700, "guid": "b0d603f6-ad31-4f78-8a22-8f6c84cce513", "isActive": true, "balance": "$1,614.81", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Richards Green", "gender": "male", "company": "SPACEWAX", "email": "richardsgreen@spacewax.com", "phone": "+1 (934) 418-2003", "address": "432 Billings Place, Enoree, Utah, 6274", "about": "Commodo cupidatat mollit cillum culpa ullamco adipisicing sit deserunt aliquip est labore esse eu duis. Incididunt nulla dolore do ipsum laboris mollit nulla esse sunt ex Lorem anim. Labore laboris amet nisi esse eu velit amet Lorem labore cillum. Sit non enim fugiat minim elit eu minim officia laborum exercitation.\r\n", "registered": "2014-04-07T13:05:06-12:00", "latitude": 59.190905, "longitude": -88.063656, "tags": [ "Lorem", "sunt", "non", "reprehenderit", "proident", "enim", "commodo" ], "friends": [ { "id": 0, "name": "Odom Gutierrez" }, { "id": 1, "name": "Dale Rivers" }, { "id": 2, "name": "Watson Garner" } ], "greeting": "Hello, Richards Green! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b176f222700abc5dc", "index": 4701, "guid": "1b4c4d42-7279-41ce-9bba-4bef9bd9f693", "isActive": true, "balance": "$3,733.75", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Vicky Mann", "gender": "female", "company": "LOVEPAD", "email": "vickymann@lovepad.com", "phone": "+1 (975) 436-2963", "address": "714 Rose Street, Malo, Montana, 3925", "about": "Duis aliquip ad non mollit mollit aliquip ex cillum. Eiusmod Lorem ea duis dolore ea laboris duis veniam labore duis incididunt laborum eiusmod deserunt. Qui velit culpa sit ex culpa id pariatur ex eu sint fugiat commodo adipisicing. Laboris consectetur non irure aliqua aliqua duis deserunt. Pariatur enim mollit do exercitation laborum velit est tempor deserunt Lorem cupidatat. Culpa sunt ut dolore culpa deserunt eu nisi ipsum amet cupidatat in. Sint ea Lorem amet incididunt eiusmod eiusmod adipisicing fugiat incididunt mollit ut.\r\n", "registered": "2014-07-07T06:06:46-12:00", "latitude": 26.52764, "longitude": 27.837651, "tags": [ "fugiat", "nisi", "incididunt", "pariatur", "laborum", "do", "dolor" ], "friends": [ { "id": 0, "name": "Fischer Harvey" }, { "id": 1, "name": "Potter Pollard" }, { "id": 2, "name": "Crosby Davenport" } ], "greeting": "Hello, Vicky Mann! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2be1a8e98022edfcbc", "index": 4702, "guid": "840b1c89-2d9e-46b3-9cb8-2baf733b958e", "isActive": false, "balance": "$2,328.19", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Faye Norton", "gender": "female", "company": "MYOPIUM", "email": "fayenorton@myopium.com", "phone": "+1 (929) 430-2919", "address": "251 Ocean Avenue, Twilight, Wisconsin, 3501", "about": "Aute qui anim reprehenderit fugiat aute pariatur ut labore quis. Aute dolor qui exercitation incididunt est exercitation qui adipisicing minim culpa sint. Incididunt velit incididunt commodo et sit laborum laboris minim. Ea est dolor consectetur voluptate dolor nisi laboris nulla sit magna quis sit. Ut id ullamco voluptate qui irure amet laborum elit pariatur id fugiat Lorem. Velit ut aliqua eu velit nisi cillum non fugiat eiusmod voluptate aliquip nostrud. Quis ullamco incididunt amet adipisicing nulla consequat aliqua labore sint aliqua.\r\n", "registered": "2014-08-03T09:04:04-12:00", "latitude": 41.019269, "longitude": 64.952395, "tags": [ "incididunt", "dolor", "eu", "ullamco", "voluptate", "excepteur", "velit" ], "friends": [ { "id": 0, "name": "Stacey Mendez" }, { "id": 1, "name": "Graciela George" }, { "id": 2, "name": "Kelly Park" } ], "greeting": "Hello, Faye Norton! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b75b232326f7eada2", "index": 4703, "guid": "2bbaaaa9-1a2a-4e81-84ab-365cd5e0033f", "isActive": false, "balance": "$2,128.14", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Edwina Kerr", "gender": "female", "company": "DIGIQUE", "email": "edwinakerr@digique.com", "phone": "+1 (853) 485-2372", "address": "307 Richards Street, Montura, Maine, 2806", "about": "Ullamco magna qui cillum ullamco id sint ipsum aliqua sint est minim. In minim proident id fugiat nostrud et. Et occaecat quis aliquip elit. Velit mollit enim officia anim irure minim labore.\r\n", "registered": "2014-01-03T08:18:01-13:00", "latitude": -32.820115, "longitude": 20.675624, "tags": [ "proident", "do", "adipisicing", "reprehenderit", "velit", "adipisicing", "ipsum" ], "friends": [ { "id": 0, "name": "Susie Roberts" }, { "id": 1, "name": "Lucy Holder" }, { "id": 2, "name": "Avila Rollins" } ], "greeting": "Hello, Edwina Kerr! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b48a3602952c0090e", "index": 4704, "guid": "8575f37b-2587-4597-b22e-7a6815f37a92", "isActive": false, "balance": "$2,949.79", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Sloan Gonzalez", "gender": "male", "company": "SULTRAXIN", "email": "sloangonzalez@sultraxin.com", "phone": "+1 (862) 564-2900", "address": "578 Granite Street, Toftrees, Virginia, 6789", "about": "Dolore magna fugiat enim proident ut incididunt. Eiusmod Lorem eu reprehenderit dolore exercitation est commodo laboris mollit amet proident. Ut pariatur anim pariatur tempor velit nisi enim exercitation aute excepteur.\r\n", "registered": "2014-06-26T16:27:49-12:00", "latitude": 20.436297, "longitude": -131.428088, "tags": [ "incididunt", "ex", "sunt", "voluptate", "nulla", "nulla", "excepteur" ], "friends": [ { "id": 0, "name": "Hall Gonzales" }, { "id": 1, "name": "Moran Dickson" }, { "id": 2, "name": "Cooke Jordan" } ], "greeting": "Hello, Sloan Gonzalez! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b0fed0568fd8d5a12", "index": 4705, "guid": "1ecafefc-4814-46c9-bd93-75de972705de", "isActive": false, "balance": "$2,427.16", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Sullivan Herman", "gender": "male", "company": "HOMETOWN", "email": "sullivanherman@hometown.com", "phone": "+1 (976) 587-3051", "address": "647 Crystal Street, Roderfield, Kentucky, 2178", "about": "Duis officia reprehenderit pariatur Lorem elit enim aliquip. Dolore sit aliqua non esse laborum adipisicing quis eu id eiusmod ipsum ad excepteur. Pariatur in elit do proident veniam fugiat adipisicing commodo qui culpa commodo ut ea est. Adipisicing quis id ullamco aute ad dolor ipsum fugiat ipsum labore pariatur nostrud pariatur ipsum.\r\n", "registered": "2014-07-09T00:31:11-12:00", "latitude": 57.797753, "longitude": 175.943843, "tags": [ "culpa", "non", "Lorem", "nostrud", "exercitation", "id", "consectetur" ], "friends": [ { "id": 0, "name": "Shana Mcmahon" }, { "id": 1, "name": "Gamble Frost" }, { "id": 2, "name": "Chaney Dale" } ], "greeting": "Hello, Sullivan Herman! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b819df977a2aa45fe", "index": 4706, "guid": "927d9395-6b4d-4741-898d-d82ce693e29b", "isActive": false, "balance": "$3,121.77", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Nadine Taylor", "gender": "female", "company": "ZILPHUR", "email": "nadinetaylor@zilphur.com", "phone": "+1 (850) 518-2050", "address": "301 Nevins Street, Tioga, Connecticut, 1975", "about": "Anim eiusmod nulla culpa quis esse veniam qui deserunt. Sint commodo irure minim excepteur elit eiusmod laboris ea in ut est culpa consectetur. Exercitation velit culpa cillum veniam non in enim id ex in voluptate dolor tempor.\r\n", "registered": "2014-02-27T15:53:10-13:00", "latitude": 83.635537, "longitude": 88.854432, "tags": [ "occaecat", "eiusmod", "ipsum", "ullamco", "ex", "ut", "dolore" ], "friends": [ { "id": 0, "name": "Jimenez Kirby" }, { "id": 1, "name": "Deidre Hale" }, { "id": 2, "name": "Hood Ballard" } ], "greeting": "Hello, Nadine Taylor! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b78ec1a87ebd102e5", "index": 4707, "guid": "02b9f692-ed1c-4671-a08b-d6d899861f4a", "isActive": true, "balance": "$3,186.98", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Mavis Daugherty", "gender": "female", "company": "MAZUDA", "email": "mavisdaugherty@mazuda.com", "phone": "+1 (909) 413-3124", "address": "425 Centre Street, Abiquiu, Mississippi, 6129", "about": "Quis tempor minim proident aliqua. Eu commodo proident ipsum ullamco cupidatat laboris pariatur mollit ea elit nulla proident. Incididunt culpa irure aliquip eu sint velit non id anim est culpa in. Nulla quis officia laborum culpa occaecat aute laboris proident. Ut ullamco veniam tempor est excepteur eu velit. Id ipsum aliqua aliquip occaecat proident anim reprehenderit eiusmod duis ea excepteur velit enim. Veniam non cupidatat veniam duis fugiat dolor excepteur labore.\r\n", "registered": "2014-04-09T20:33:37-12:00", "latitude": 52.004882, "longitude": 127.658919, "tags": [ "eiusmod", "ipsum", "laboris", "commodo", "officia", "magna", "nulla" ], "friends": [ { "id": 0, "name": "Melendez Cobb" }, { "id": 1, "name": "Cervantes Phillips" }, { "id": 2, "name": "Wilkins Savage" } ], "greeting": "Hello, Mavis Daugherty! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b08f3879cae2efbe2", "index": 4708, "guid": "f7567f33-23f9-4ae7-9cdc-dc64e82fc98f", "isActive": true, "balance": "$3,249.56", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Mcclure Maynard", "gender": "male", "company": "ZILLADYNE", "email": "mccluremaynard@zilladyne.com", "phone": "+1 (872) 415-2993", "address": "998 Ash Street, Summertown, Washington, 5686", "about": "Nisi culpa deserunt non sunt. Anim mollit Lorem enim occaecat nisi adipisicing anim proident eu. Excepteur qui occaecat elit duis id et amet eiusmod velit dolor mollit. Dolor enim aute laboris nisi dolor elit culpa proident ad proident pariatur nulla dolore. Laborum occaecat dolor elit irure magna pariatur pariatur laboris cupidatat aute cillum. Laborum exercitation qui magna deserunt eiusmod nisi reprehenderit cupidatat eu id velit ad duis.\r\n", "registered": "2014-07-27T06:48:31-12:00", "latitude": 63.373793, "longitude": -172.683704, "tags": [ "enim", "ex", "fugiat", "duis", "proident", "fugiat", "irure" ], "friends": [ { "id": 0, "name": "Rollins Colon" }, { "id": 1, "name": "Karin Pickett" }, { "id": 2, "name": "Marquita Foley" } ], "greeting": "Hello, Mcclure Maynard! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b761a322790632fc1", "index": 4709, "guid": "21a14115-4efd-457c-ad80-7c7e222c6998", "isActive": true, "balance": "$1,218.68", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Samantha Harding", "gender": "female", "company": "ACCIDENCY", "email": "samanthaharding@accidency.com", "phone": "+1 (851) 501-2474", "address": "468 Durland Place, Villarreal, Tennessee, 5209", "about": "Proident anim labore non consectetur eu sint et enim laboris eiusmod qui. Occaecat duis aute officia deserunt sit sint irure officia esse cillum ad qui. Voluptate consectetur fugiat non elit aliquip nisi nisi.\r\n", "registered": "2014-05-08T10:21:58-12:00", "latitude": -45.194382, "longitude": 31.424065, "tags": [ "excepteur", "pariatur", "ullamco", "nostrud", "mollit", "dolore", "sint" ], "friends": [ { "id": 0, "name": "Delores Ball" }, { "id": 1, "name": "Le Walker" }, { "id": 2, "name": "Maribel Ferguson" } ], "greeting": "Hello, Samantha Harding! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b186a81eb53d6ad93", "index": 4710, "guid": "5202af8d-cd83-4867-8486-9e3f00fc69da", "isActive": false, "balance": "$2,694.99", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Conley Townsend", "gender": "male", "company": "ISOTRONIC", "email": "conleytownsend@isotronic.com", "phone": "+1 (848) 566-3639", "address": "960 Himrod Street, Coaldale, Alabama, 3564", "about": "Irure Lorem Lorem excepteur est nulla cillum ipsum amet. Laboris veniam deserunt do quis cupidatat eu laboris ipsum id nostrud culpa. Dolore aliqua magna do non ea et. Culpa in sunt consequat cupidatat duis fugiat ullamco qui deserunt deserunt. Reprehenderit velit eu laboris minim fugiat ad laborum non veniam duis laboris occaecat aliquip velit.\r\n", "registered": "2014-02-25T19:24:39-13:00", "latitude": -39.63985, "longitude": -74.190705, "tags": [ "in", "qui", "laboris", "fugiat", "sint", "consequat", "dolore" ], "friends": [ { "id": 0, "name": "Macias Knight" }, { "id": 1, "name": "Church Reynolds" }, { "id": 2, "name": "Rosario Dunn" } ], "greeting": "Hello, Conley Townsend! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b475dc5cd2ec91b65", "index": 4711, "guid": "dccc77aa-0b04-4e6d-9cfa-72431d17cf34", "isActive": true, "balance": "$1,204.91", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Bennett Graham", "gender": "male", "company": "INTERFIND", "email": "bennettgraham@interfind.com", "phone": "+1 (876) 553-2098", "address": "641 Bergen Street, Choctaw, Ohio, 5045", "about": "Excepteur ut consequat nisi magna anim reprehenderit voluptate in aliqua incididunt culpa ad qui non. Dolore esse laboris adipisicing ex quis nulla voluptate ad pariatur occaecat tempor ipsum. Nisi et fugiat incididunt ut culpa reprehenderit commodo aliqua quis amet labore. Nisi sint non voluptate ad nostrud incididunt duis incididunt anim in consequat consectetur. Qui aute esse velit ea consequat. Aliqua qui duis sit irure non minim laboris. Dolore elit amet dolore sint eu in mollit Lorem culpa labore fugiat.\r\n", "registered": "2014-04-29T01:46:02-12:00", "latitude": -20.092045, "longitude": 89.511452, "tags": [ "aliqua", "aute", "mollit", "veniam", "velit", "ea", "est" ], "friends": [ { "id": 0, "name": "Gayle Vincent" }, { "id": 1, "name": "Fowler Ellison" }, { "id": 2, "name": "Castaneda Armstrong" } ], "greeting": "Hello, Bennett Graham! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bebe0683c03eb3a02", "index": 4712, "guid": "46e4f1f8-b599-49ea-82cf-dce9ea4a09f4", "isActive": false, "balance": "$3,055.23", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Karina Reid", "gender": "female", "company": "ECRATER", "email": "karinareid@ecrater.com", "phone": "+1 (862) 550-2568", "address": "960 Conselyea Street, Dundee, Hawaii, 8271", "about": "Eu quis quis ex veniam in. Sit quis excepteur est non commodo qui dolore. Amet do do nostrud nisi minim cillum veniam deserunt laboris labore culpa ad consequat. Ut sit reprehenderit ullamco sunt deserunt in nisi duis adipisicing dolore excepteur.\r\n", "registered": "2014-07-20T10:03:00-12:00", "latitude": 62.572803, "longitude": 135.136648, "tags": [ "proident", "ea", "non", "sunt", "dolore", "excepteur", "anim" ], "friends": [ { "id": 0, "name": "Guadalupe Sears" }, { "id": 1, "name": "Pickett Anthony" }, { "id": 2, "name": "Lourdes Myers" } ], "greeting": "Hello, Karina Reid! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b01630d0b7aa6f4ad", "index": 4713, "guid": "1aed0491-fcd6-48b1-a74f-2e7ea838e2da", "isActive": true, "balance": "$2,924.91", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Kellie Raymond", "gender": "female", "company": "RONELON", "email": "kellieraymond@ronelon.com", "phone": "+1 (834) 535-3027", "address": "693 Gem Street, Caledonia, New Mexico, 642", "about": "Ad veniam magna amet non officia pariatur est velit in veniam quis tempor ut. Dolor in quis aliqua veniam voluptate voluptate sit nostrud magna adipisicing. In sit pariatur voluptate nisi deserunt aute quis fugiat occaecat adipisicing. Excepteur exercitation esse est consectetur irure fugiat aliquip sint.\r\n", "registered": "2014-08-19T20:37:53-12:00", "latitude": -22.971244, "longitude": 57.461736, "tags": [ "aute", "labore", "cillum", "quis", "nulla", "pariatur", "dolor" ], "friends": [ { "id": 0, "name": "Owen Golden" }, { "id": 1, "name": "Elaine Roy" }, { "id": 2, "name": "Henrietta Clemons" } ], "greeting": "Hello, Kellie Raymond! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ba0a0ff8d63ab5c7b", "index": 4714, "guid": "5da6e44d-7b06-4a05-bb40-2caad1c2fb12", "isActive": true, "balance": "$3,488.72", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Leanna England", "gender": "female", "company": "QUIZMO", "email": "leannaengland@quizmo.com", "phone": "+1 (995) 473-3819", "address": "381 Hale Avenue, Barronett, Maryland, 6658", "about": "Enim veniam aute nulla id occaecat officia anim laboris minim enim aliqua cupidatat excepteur. Dolor esse labore et commodo aute consequat cupidatat fugiat est non aute culpa. Qui aliqua non mollit nisi proident velit sunt consectetur incididunt est officia exercitation. Aute pariatur dolor cupidatat esse amet velit aliquip veniam proident voluptate culpa ut. Aute sint cupidatat tempor deserunt consequat excepteur cupidatat anim magna irure esse magna sunt. Labore laborum laboris magna laboris.\r\n", "registered": "2014-07-22T22:17:25-12:00", "latitude": -3.334542, "longitude": 159.130777, "tags": [ "laborum", "non", "pariatur", "consectetur", "reprehenderit", "duis", "anim" ], "friends": [ { "id": 0, "name": "Bianca Reyes" }, { "id": 1, "name": "Bridget Shields" }, { "id": 2, "name": "Bobbi Tillman" } ], "greeting": "Hello, Leanna England! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b3175f0ba801af8e6", "index": 4715, "guid": "2a7f7d0e-eeb5-44d2-9ce6-2686071375da", "isActive": false, "balance": "$2,483.91", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Evangelina Valentine", "gender": "female", "company": "POOCHIES", "email": "evangelinavalentine@poochies.com", "phone": "+1 (891) 427-3416", "address": "103 Bokee Court, Hinsdale, Alaska, 3813", "about": "Cillum ad minim incididunt ea pariatur anim enim do deserunt sunt. Qui esse laborum nisi elit sunt aute ut. Reprehenderit ad mollit nostrud duis anim aute qui. Adipisicing sunt ut cupidatat ex deserunt id duis nulla reprehenderit. Et irure exercitation ex adipisicing dolor officia pariatur consectetur.\r\n", "registered": "2014-04-30T08:34:20-12:00", "latitude": 33.327045, "longitude": 134.615253, "tags": [ "dolore", "et", "magna", "ullamco", "aute", "sit", "laborum" ], "friends": [ { "id": 0, "name": "Sara Edwards" }, { "id": 1, "name": "Marietta Shelton" }, { "id": 2, "name": "Mcknight Soto" } ], "greeting": "Hello, Evangelina Valentine! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bb63e7900edceddf3", "index": 4716, "guid": "df4e3dd8-8e74-4b13-8db4-38ea2c042976", "isActive": true, "balance": "$3,843.87", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Christy Mccall", "gender": "female", "company": "VETRON", "email": "christymccall@vetron.com", "phone": "+1 (833) 469-2794", "address": "183 Harrison Avenue, Whitmer, Arizona, 8891", "about": "Aliqua incididunt culpa aliquip labore Lorem consequat mollit mollit reprehenderit excepteur cillum. Proident commodo sint cillum ea exercitation consequat in officia ut. Eiusmod et non aliqua do occaecat dolor aliquip reprehenderit consectetur proident elit. Mollit dolor tempor consectetur veniam Lorem ipsum aliquip qui. Pariatur reprehenderit occaecat fugiat ad quis. Anim cupidatat pariatur minim excepteur incididunt reprehenderit quis amet ullamco minim et aliquip nisi. Ea enim et sint sit.\r\n", "registered": "2014-03-30T03:17:01-13:00", "latitude": 67.24822, "longitude": -66.349548, "tags": [ "quis", "excepteur", "amet", "cupidatat", "est", "non", "laborum" ], "friends": [ { "id": 0, "name": "Madeleine Strong" }, { "id": 1, "name": "Chrystal Brown" }, { "id": 2, "name": "Burton Gregory" } ], "greeting": "Hello, Christy Mccall! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bccf26270c347f445", "index": 4717, "guid": "0a9cb267-75b0-4470-9364-2a8960713b43", "isActive": false, "balance": "$1,829.47", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Roxanne Mccoy", "gender": "female", "company": "IDEALIS", "email": "roxannemccoy@idealis.com", "phone": "+1 (997) 450-3565", "address": "786 Calder Place, Summerfield, Federated States Of Micronesia, 4831", "about": "Voluptate laboris culpa pariatur voluptate fugiat consectetur reprehenderit sit esse occaecat amet excepteur. Amet sunt adipisicing ut esse et. Dolor sit culpa magna non. Mollit reprehenderit ad nulla pariatur commodo. In sunt in cillum non.\r\n", "registered": "2014-01-25T16:17:33-13:00", "latitude": -18.917554, "longitude": 175.394294, "tags": [ "consequat", "et", "velit", "duis", "sit", "laboris", "aliqua" ], "friends": [ { "id": 0, "name": "Juliana Mcconnell" }, { "id": 1, "name": "Little Collier" }, { "id": 2, "name": "Mason Baxter" } ], "greeting": "Hello, Roxanne Mccoy! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b6272a4bb34d41078", "index": 4718, "guid": "9e87f861-86e6-46e9-9786-f3e7b96da221", "isActive": false, "balance": "$2,645.95", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Tracey Blake", "gender": "female", "company": "ZOLAVO", "email": "traceyblake@zolavo.com", "phone": "+1 (959) 475-2943", "address": "993 Amber Street, Boomer, Oklahoma, 4463", "about": "Irure ullamco aliqua laborum anim nostrud anim ea id cillum. Do tempor tempor sint nulla ipsum reprehenderit dolor labore culpa ad duis excepteur. Tempor ut magna veniam elit elit culpa non ea tempor. Nisi cillum deserunt minim cupidatat non ut eu aute. Sunt minim proident non amet esse nostrud sunt mollit nostrud. Fugiat cupidatat deserunt non dolor. Non ullamco occaecat laboris reprehenderit ullamco consequat fugiat nostrud.\r\n", "registered": "2014-05-11T11:28:17-12:00", "latitude": 27.891504, "longitude": 113.17544, "tags": [ "ad", "eu", "proident", "amet", "proident", "cillum", "dolor" ], "friends": [ { "id": 0, "name": "Melanie Lancaster" }, { "id": 1, "name": "Geraldine Donovan" }, { "id": 2, "name": "Patrica Jenkins" } ], "greeting": "Hello, Tracey Blake! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2be524063d3130dfc6", "index": 4719, "guid": "493ce0ee-5dba-49b9-86ce-f78e2647183b", "isActive": false, "balance": "$2,880.45", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Bowen Pate", "gender": "male", "company": "PULZE", "email": "bowenpate@pulze.com", "phone": "+1 (880) 408-3277", "address": "559 Court Square, Connerton, Michigan, 944", "about": "Eiusmod magna proident dolor excepteur aute excepteur. Voluptate eiusmod veniam incididunt cupidatat fugiat nostrud id veniam occaecat. Excepteur aute incididunt velit magna ipsum incididunt est ad culpa id aliqua eu in incididunt. Ex eu ut in laborum pariatur adipisicing est in magna.\r\n", "registered": "2014-05-22T05:03:27-12:00", "latitude": 32.503402, "longitude": -90.105006, "tags": [ "sint", "qui", "reprehenderit", "quis", "enim", "aute", "ea" ], "friends": [ { "id": 0, "name": "Thelma Velez" }, { "id": 1, "name": "Dixie Higgins" }, { "id": 2, "name": "Rosario Berry" } ], "greeting": "Hello, Bowen Pate! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b06641da72cc2d47d", "index": 4720, "guid": "74e65fad-d353-46ab-8563-1f58cb3b059e", "isActive": false, "balance": "$2,110.03", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Cochran Peterson", "gender": "male", "company": "ZENTIME", "email": "cochranpeterson@zentime.com", "phone": "+1 (975) 453-3534", "address": "785 Manor Court, Volta, Kansas, 6430", "about": "Irure labore sit laboris proident nulla Lorem ullamco ad eu sunt commodo. Cillum sit incididunt culpa eiusmod laboris. Et eu do velit amet enim officia amet nulla deserunt eu nostrud ea. Sunt laboris ullamco anim occaecat sit eu voluptate nostrud Lorem aute.\r\n", "registered": "2014-08-01T19:34:57-12:00", "latitude": -18.337555, "longitude": -174.051447, "tags": [ "proident", "exercitation", "nostrud", "velit", "mollit", "sint", "deserunt" ], "friends": [ { "id": 0, "name": "Alston Solomon" }, { "id": 1, "name": "Agnes Nixon" }, { "id": 2, "name": "Greer Fulton" } ], "greeting": "Hello, Cochran Peterson! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b03f7741f6a0a6b09", "index": 4721, "guid": "4c26ad97-2c36-47cd-939a-dd9537a1f62e", "isActive": true, "balance": "$3,552.54", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Anne Roberson", "gender": "female", "company": "CONFERIA", "email": "anneroberson@conferia.com", "phone": "+1 (943) 528-2468", "address": "593 Noble Street, Camptown, South Dakota, 2328", "about": "Proident labore qui nulla cupidatat minim exercitation labore incididunt nisi. Incididunt eu irure amet laborum sunt laboris non. Mollit laborum dolor dolore duis voluptate sit proident veniam nisi. Non aliquip amet mollit cupidatat occaecat sint Lorem. Tempor est duis irure enim laboris aliqua et velit minim irure est. Sint eiusmod labore labore ad id et dolor laboris id esse velit cupidatat amet. Anim elit ex ipsum ea qui anim Lorem aliquip non ad ut nulla nisi.\r\n", "registered": "2014-08-31T18:14:29-12:00", "latitude": 81.698575, "longitude": -46.692242, "tags": [ "id", "esse", "anim", "est", "dolore", "excepteur", "commodo" ], "friends": [ { "id": 0, "name": "Douglas Stuart" }, { "id": 1, "name": "Gay Chambers" }, { "id": 2, "name": "Annabelle Ellis" } ], "greeting": "Hello, Anne Roberson! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2befa6b7aef5bb726f", "index": 4722, "guid": "3176f138-f3b5-459a-99df-3f2bbc8011fc", "isActive": false, "balance": "$1,087.32", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Ruby Lambert", "gender": "female", "company": "ACCUSAGE", "email": "rubylambert@accusage.com", "phone": "+1 (918) 426-3237", "address": "730 Jefferson Avenue, Forbestown, West Virginia, 8907", "about": "Deserunt elit amet proident in occaecat excepteur ad eu elit. Non velit ullamco dolore esse proident id Lorem commodo consectetur sit. Nisi enim commodo aliquip in nisi eiusmod reprehenderit veniam aliquip Lorem duis sunt fugiat.\r\n", "registered": "2014-04-11T00:57:41-12:00", "latitude": -58.144549, "longitude": 145.467318, "tags": [ "anim", "voluptate", "cillum", "occaecat", "nulla", "dolore", "laboris" ], "friends": [ { "id": 0, "name": "Moses Guerra" }, { "id": 1, "name": "Elva Stevens" }, { "id": 2, "name": "Jenkins Hunt" } ], "greeting": "Hello, Ruby Lambert! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bd414d9e5865f7b64", "index": 4723, "guid": "613a3d0f-237b-4820-994b-0046fc2a3538", "isActive": true, "balance": "$2,184.28", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Esperanza Guzman", "gender": "female", "company": "COMVEYOR", "email": "esperanzaguzman@comveyor.com", "phone": "+1 (962) 459-2507", "address": "559 Havemeyer Street, Felt, Texas, 9596", "about": "Non non nostrud eiusmod amet irure labore aliquip excepteur dolore qui culpa ipsum. Tempor velit excepteur non enim enim fugiat dolore amet ea esse ex. Irure minim amet cillum culpa consequat proident tempor mollit. Duis proident sunt ut est. Pariatur ad non tempor veniam Lorem duis non dolor voluptate in mollit Lorem aliqua. Elit cupidatat do id incididunt non minim anim sit proident pariatur labore commodo. Exercitation magna commodo cupidatat voluptate proident enim veniam proident laboris dolore enim ipsum.\r\n", "registered": "2014-05-17T04:39:03-12:00", "latitude": 44.803984, "longitude": 114.352337, "tags": [ "voluptate", "adipisicing", "veniam", "ipsum", "sit", "eiusmod", "dolore" ], "friends": [ { "id": 0, "name": "Merritt Hickman" }, { "id": 1, "name": "Christi Cooley" }, { "id": 2, "name": "Debra Ortiz" } ], "greeting": "Hello, Esperanza Guzman! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bb1e792d63b7cfa9d", "index": 4724, "guid": "2c8419f0-b816-4163-87e7-b39fc5966b26", "isActive": true, "balance": "$3,209.58", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Harper French", "gender": "male", "company": "COSMETEX", "email": "harperfrench@cosmetex.com", "phone": "+1 (810) 564-3565", "address": "339 Jamison Lane, Savage, Oregon, 3923", "about": "Amet voluptate ullamco irure dolor proident et ex duis et nisi ad est elit tempor. Eiusmod anim ea exercitation duis labore commodo fugiat aliqua reprehenderit fugiat consectetur amet. Mollit officia aute veniam cupidatat ea id fugiat.\r\n", "registered": "2014-01-21T11:52:24-13:00", "latitude": 15.410536, "longitude": 80.396212, "tags": [ "dolor", "sint", "enim", "magna", "pariatur", "velit", "nostrud" ], "friends": [ { "id": 0, "name": "Boyer Carver" }, { "id": 1, "name": "Ferguson Hughes" }, { "id": 2, "name": "Valarie Acosta" } ], "greeting": "Hello, Harper French! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bd1ef5c17ab112c0f", "index": 4725, "guid": "80f009f7-d81e-4e53-a948-c025410a4a6b", "isActive": true, "balance": "$3,107.42", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Melinda Christian", "gender": "female", "company": "GINKLE", "email": "melindachristian@ginkle.com", "phone": "+1 (885) 557-2510", "address": "696 Beverley Road, Juntura, Nevada, 5404", "about": "Anim ipsum mollit dolore irure ea nulla cupidatat aute duis duis Lorem ipsum velit velit. Proident aute culpa fugiat occaecat. Sint laborum irure duis aliqua qui et ea ea. Ipsum irure fugiat est eu quis quis nisi fugiat nostrud sunt laboris. Consectetur enim aute sit veniam culpa ullamco nisi minim occaecat mollit aliqua aute cupidatat magna.\r\n", "registered": "2014-01-10T21:35:48-13:00", "latitude": 51.700769, "longitude": 112.232639, "tags": [ "esse", "consequat", "ipsum", "mollit", "anim", "velit", "veniam" ], "friends": [ { "id": 0, "name": "Margaret Powers" }, { "id": 1, "name": "Compton Oliver" }, { "id": 2, "name": "Foreman Douglas" } ], "greeting": "Hello, Melinda Christian! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b19931aba7b071bc8", "index": 4726, "guid": "0b904a87-27b6-4a11-91ee-7c970be33616", "isActive": false, "balance": "$2,208.74", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Kidd Brewer", "gender": "male", "company": "DEMINIMUM", "email": "kiddbrewer@deminimum.com", "phone": "+1 (945) 512-3998", "address": "554 Seaview Avenue, Glenshaw, Minnesota, 2694", "about": "Sunt sint ut elit excepteur eiusmod do elit laboris minim. Et culpa laboris eiusmod eu aute dolor eiusmod eiusmod duis minim mollit sit. Consectetur ea commodo fugiat ullamco deserunt nulla tempor aliqua deserunt cupidatat duis nostrud do. Dolor aute consequat sint aliquip. Eiusmod aliqua officia eu ex minim in aute magna laborum sint. Et velit veniam consectetur nostrud eu fugiat.\r\n", "registered": "2014-03-31T20:07:22-13:00", "latitude": 16.391793, "longitude": 41.409058, "tags": [ "excepteur", "ullamco", "tempor", "fugiat", "cillum", "adipisicing", "et" ], "friends": [ { "id": 0, "name": "Stein Walsh" }, { "id": 1, "name": "Mcdowell Herring" }, { "id": 2, "name": "Collins Chaney" } ], "greeting": "Hello, Kidd Brewer! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bba8581640e79c769", "index": 4727, "guid": "e0e2aba6-739c-40cf-ad61-39e5b6367aa7", "isActive": false, "balance": "$3,277.94", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Foley Hunter", "gender": "male", "company": "UNIA", "email": "foleyhunter@unia.com", "phone": "+1 (993) 569-2774", "address": "788 Cambridge Place, Caron, Missouri, 8946", "about": "Ipsum amet laboris occaecat laboris aute Lorem sunt. Proident qui quis amet amet sint dolor magna ad mollit. Anim proident duis do enim proident et voluptate veniam eu voluptate ea consectetur minim. Aliqua Lorem quis amet adipisicing consectetur occaecat.\r\n", "registered": "2014-03-26T12:34:35-13:00", "latitude": -67.081294, "longitude": 34.176729, "tags": [ "aute", "eiusmod", "in", "laboris", "voluptate", "eu", "minim" ], "friends": [ { "id": 0, "name": "Adrienne Cantrell" }, { "id": 1, "name": "Dale Monroe" }, { "id": 2, "name": "Carey Harper" } ], "greeting": "Hello, Foley Hunter! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bdbdfe84b6c6feb47", "index": 4728, "guid": "08fb647f-52cf-4491-943c-251556fe9061", "isActive": false, "balance": "$2,963.01", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Angelia Stout", "gender": "female", "company": "EMPIRICA", "email": "angeliastout@empirica.com", "phone": "+1 (809) 504-2455", "address": "276 Pine Street, Bordelonville, Rhode Island, 7409", "about": "Aliqua nulla irure duis voluptate nisi aute qui dolore proident. Cillum ea consectetur ea Lorem nostrud est laboris id commodo ex id ullamco. Mollit nulla ad aliqua ut voluptate reprehenderit pariatur. Pariatur et quis sit occaecat aute nostrud excepteur nulla elit ad Lorem ad culpa ut. Excepteur deserunt consectetur in cupidatat culpa cupidatat nulla esse ad amet sit.\r\n", "registered": "2014-08-09T20:21:23-12:00", "latitude": 83.281526, "longitude": 161.939102, "tags": [ "id", "tempor", "tempor", "aliqua", "qui", "anim", "eiusmod" ], "friends": [ { "id": 0, "name": "Kathrine Glenn" }, { "id": 1, "name": "Hansen Goff" }, { "id": 2, "name": "Essie Cannon" } ], "greeting": "Hello, Angelia Stout! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b1fcd079b9f65e1cc", "index": 4729, "guid": "245cec35-5240-4645-a029-88cad30cec22", "isActive": true, "balance": "$2,645.56", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Lauri Buchanan", "gender": "female", "company": "AQUACINE", "email": "lauribuchanan@aquacine.com", "phone": "+1 (871) 443-3536", "address": "839 Aberdeen Street, Clay, Florida, 8321", "about": "Dolor labore velit labore excepteur laboris velit deserunt. Cillum minim aute pariatur voluptate mollit do ex consequat est deserunt qui mollit. Amet proident culpa ullamco nulla exercitation veniam consequat dolor proident reprehenderit sunt nostrud sit. Ipsum aliquip aliquip est in incididunt anim elit adipisicing magna ipsum ipsum minim consequat.\r\n", "registered": "2014-05-04T23:02:22-12:00", "latitude": -62.759017, "longitude": 1.834825, "tags": [ "mollit", "eiusmod", "mollit", "consectetur", "eiusmod", "irure", "commodo" ], "friends": [ { "id": 0, "name": "Patrice Trujillo" }, { "id": 1, "name": "Mullen Pittman" }, { "id": 2, "name": "Shelia Crane" } ], "greeting": "Hello, Lauri Buchanan! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b3df99acda9de3f1e", "index": 4730, "guid": "c2ec99c8-0fd7-4f31-922c-fd254c957c81", "isActive": true, "balance": "$3,655.57", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Cleo Pruitt", "gender": "female", "company": "DANCERITY", "email": "cleopruitt@dancerity.com", "phone": "+1 (820) 415-3138", "address": "487 Crooke Avenue, Elliott, North Carolina, 2110", "about": "Pariatur tempor commodo quis dolor non adipisicing culpa id excepteur ut dolore eiusmod proident nisi. Qui dolore do aliqua esse officia officia consequat cillum nulla incididunt. In mollit nostrud sit enim magna. Minim reprehenderit consectetur tempor anim nulla occaecat labore.\r\n", "registered": "2014-07-22T13:39:46-12:00", "latitude": 28.704088, "longitude": -28.1248, "tags": [ "aute", "esse", "tempor", "ipsum", "voluptate", "consequat", "qui" ], "friends": [ { "id": 0, "name": "Lelia Holmes" }, { "id": 1, "name": "Dillon Bryant" }, { "id": 2, "name": "Sonya Cummings" } ], "greeting": "Hello, Cleo Pruitt! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bbf43548e97737f7c", "index": 4731, "guid": "c3c51204-a799-4399-a81b-c12d04577f59", "isActive": false, "balance": "$3,731.12", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Ava Gilmore", "gender": "female", "company": "OLYMPIX", "email": "avagilmore@olympix.com", "phone": "+1 (915) 524-3612", "address": "666 Brightwater Court, Dawn, New Hampshire, 5973", "about": "Veniam eu irure voluptate eiusmod sunt dolor pariatur labore consectetur Lorem aliquip dolor enim. Ullamco dolor do fugiat elit dolore reprehenderit dolor adipisicing commodo ullamco in reprehenderit elit. Commodo laborum amet cupidatat est irure. Veniam ex tempor Lorem et incididunt aliqua exercitation non voluptate. Nostrud commodo duis exercitation laborum anim commodo irure. Dolor in velit ad in amet voluptate reprehenderit fugiat sit nisi Lorem irure officia consequat. Eiusmod eu laborum magna duis proident do tempor sint non enim consequat nisi nostrud consectetur.\r\n", "registered": "2014-08-28T13:54:02-12:00", "latitude": 76.388768, "longitude": -35.841839, "tags": [ "ex", "reprehenderit", "adipisicing", "excepteur", "magna", "veniam", "id" ], "friends": [ { "id": 0, "name": "Christie Powell" }, { "id": 1, "name": "Cleveland Silva" }, { "id": 2, "name": "Fitzgerald Wong" } ], "greeting": "Hello, Ava Gilmore! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bccfe1a5c242b7518", "index": 4732, "guid": "324b9c29-3791-48d0-ad92-01a438bc9081", "isActive": true, "balance": "$1,528.84", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Mallory Hood", "gender": "female", "company": "CALCULA", "email": "malloryhood@calcula.com", "phone": "+1 (946) 507-2658", "address": "130 Ira Court, Croom, Arkansas, 3286", "about": "Magna reprehenderit quis ullamco ipsum labore consectetur adipisicing nostrud sunt. Est exercitation exercitation non incididunt pariatur deserunt sunt. Do dolore laborum ullamco voluptate magna sunt dolor dolore est. Anim dolore Lorem ex nulla elit excepteur irure. Amet voluptate aute non sint culpa non culpa commodo magna velit eu. Magna ut sint minim culpa duis velit irure. Esse do sunt nulla labore pariatur anim proident commodo mollit nostrud et nisi.\r\n", "registered": "2014-05-07T01:20:20-12:00", "latitude": -9.157923, "longitude": 91.720814, "tags": [ "consectetur", "proident", "quis", "excepteur", "commodo", "ex", "ipsum" ], "friends": [ { "id": 0, "name": "Kristen Herrera" }, { "id": 1, "name": "Graham Hanson" }, { "id": 2, "name": "Marks Hammond" } ], "greeting": "Hello, Mallory Hood! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b18c4554dbf4bfbd7", "index": 4733, "guid": "7548d993-06e1-444e-a5cf-da4951268a06", "isActive": false, "balance": "$2,174.34", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Freeman Burnett", "gender": "male", "company": "DRAGBOT", "email": "freemanburnett@dragbot.com", "phone": "+1 (994) 550-3505", "address": "700 Bayview Place, Dunnavant, Iowa, 709", "about": "Laborum dolor in sit labore aute dolor eu aliqua ipsum fugiat ea dolor ea. Commodo ex aliqua esse deserunt qui est adipisicing velit laboris velit sint cupidatat esse enim. Veniam minim incididunt deserunt sit mollit ut nostrud ipsum.\r\n", "registered": "2014-06-09T06:58:04-12:00", "latitude": -52.660408, "longitude": -0.481256, "tags": [ "adipisicing", "ullamco", "eiusmod", "sint", "ad", "sit", "incididunt" ], "friends": [ { "id": 0, "name": "Hart Barr" }, { "id": 1, "name": "Carr Bradley" }, { "id": 2, "name": "Pauline Howard" } ], "greeting": "Hello, Freeman Burnett! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b48069c2474834ac7", "index": 4734, "guid": "19c6a1e2-9131-4305-bd3f-14f4c67b44d9", "isActive": false, "balance": "$3,279.57", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Diane Webster", "gender": "female", "company": "SENSATE", "email": "dianewebster@sensate.com", "phone": "+1 (907) 491-2742", "address": "565 Kingsway Place, Colton, Nebraska, 4785", "about": "Aute incididunt cupidatat excepteur dolore amet officia Lorem mollit magna minim qui esse consectetur tempor. Incididunt enim ad sit cillum in labore duis dolore elit exercitation quis. Nisi consequat cupidatat enim anim laborum culpa occaecat ex ex nulla exercitation aute. Ad magna non cupidatat qui adipisicing dolore do laborum. Ea laboris sunt nulla adipisicing adipisicing non do culpa sint nostrud. Reprehenderit commodo irure cillum nisi labore ad nulla aute ullamco consectetur ut. Deserunt in mollit duis enim id culpa ipsum anim ad Lorem deserunt Lorem.\r\n", "registered": "2014-01-11T10:26:51-13:00", "latitude": 66.093598, "longitude": 125.751938, "tags": [ "labore", "deserunt", "do", "cillum", "minim", "dolore", "aliqua" ], "friends": [ { "id": 0, "name": "Alyson Weber" }, { "id": 1, "name": "Kris Faulkner" }, { "id": 2, "name": "Evelyn Richardson" } ], "greeting": "Hello, Diane Webster! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bcd5281edf842373c", "index": 4735, "guid": "b6c89a5f-6f4c-403d-a8ce-95776f4702f3", "isActive": true, "balance": "$2,657.06", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Olsen Hess", "gender": "male", "company": "ISOLOGICA", "email": "olsenhess@isologica.com", "phone": "+1 (835) 487-2573", "address": "179 Java Street, Farmers, District Of Columbia, 3902", "about": "Ad magna do nulla enim anim dolore consequat duis nulla. Veniam enim laboris aliqua deserunt sunt aute laborum cupidatat qui nisi nulla esse. Occaecat et velit enim id sunt aliquip.\r\n", "registered": "2014-09-08T06:49:14-12:00", "latitude": -40.725656, "longitude": -49.458308, "tags": [ "aliqua", "consequat", "ea", "Lorem", "in", "ut", "aute" ], "friends": [ { "id": 0, "name": "Herman Olson" }, { "id": 1, "name": "Natalie Ferrell" }, { "id": 2, "name": "Oconnor Blevins" } ], "greeting": "Hello, Olsen Hess! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b8148f129e27f99a4", "index": 4736, "guid": "a64ff281-2e87-4ad8-8d14-f187c12d1755", "isActive": false, "balance": "$2,279.08", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Barry Andrews", "gender": "male", "company": "UTARA", "email": "barryandrews@utara.com", "phone": "+1 (855) 500-3675", "address": "300 Trucklemans Lane, Brownsville, New Jersey, 1375", "about": "Eiusmod in nostrud et commodo dolore. Et esse culpa exercitation adipisicing laboris dolore dolore proident dolore minim deserunt aute. Sunt sint amet non qui nisi elit et ad in.\r\n", "registered": "2014-05-02T14:28:20-12:00", "latitude": -44.663043, "longitude": -38.095102, "tags": [ "minim", "magna", "veniam", "velit", "est", "Lorem", "qui" ], "friends": [ { "id": 0, "name": "Bobbie Campos" }, { "id": 1, "name": "Brooke Dean" }, { "id": 2, "name": "Rosalinda Cotton" } ], "greeting": "Hello, Barry Andrews! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bba8a58639d9706df", "index": 4737, "guid": "4acc0661-bd4e-4216-9605-5b732a4501ef", "isActive": false, "balance": "$2,518.64", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Shawn Winters", "gender": "female", "company": "TUBESYS", "email": "shawnwinters@tubesys.com", "phone": "+1 (856) 547-3044", "address": "350 Senator Street, Brewster, Palau, 3603", "about": "Officia dolor veniam cillum laboris nulla consequat do fugiat. Laboris nisi aute non aliqua occaecat officia laborum cupidatat eu deserunt. Et ullamco laborum officia qui. Voluptate pariatur ex occaecat aute mollit pariatur occaecat in Lorem ex deserunt magna. Laborum tempor sit nostrud quis veniam qui laborum. Aliqua in laboris fugiat ut ex tempor.\r\n", "registered": "2014-04-10T18:36:08-12:00", "latitude": -58.613335, "longitude": -99.025557, "tags": [ "tempor", "nostrud", "mollit", "consequat", "tempor", "magna", "id" ], "friends": [ { "id": 0, "name": "Carrillo Payne" }, { "id": 1, "name": "Nelda Puckett" }, { "id": 2, "name": "Sallie Finley" } ], "greeting": "Hello, Shawn Winters! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bce203e86ac4116f2", "index": 4738, "guid": "8ac76b6e-0cc0-4d8c-be91-18b106e0adb5", "isActive": false, "balance": "$1,980.48", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Hoffman Conrad", "gender": "male", "company": "ZILLATIDE", "email": "hoffmanconrad@zillatide.com", "phone": "+1 (866) 494-3832", "address": "856 Bayview Avenue, Morriston, Puerto Rico, 3595", "about": "Occaecat irure adipisicing sint quis occaecat officia id nisi dolor. Minim dolor fugiat labore excepteur anim eiusmod aute labore veniam ad incididunt commodo. Eu duis irure ipsum laboris exercitation irure. Excepteur adipisicing elit labore in mollit adipisicing do. Anim incididunt non non reprehenderit duis do quis sit ullamco ipsum nulla. Labore deserunt enim velit quis pariatur in excepteur. Amet esse tempor aliquip id.\r\n", "registered": "2014-07-18T19:01:03-12:00", "latitude": -80.127447, "longitude": -71.424772, "tags": [ "veniam", "officia", "laborum", "aliqua", "ad", "nostrud", "laboris" ], "friends": [ { "id": 0, "name": "Cooley Allison" }, { "id": 1, "name": "Lucille Dennis" }, { "id": 2, "name": "Poole Bright" } ], "greeting": "Hello, Hoffman Conrad! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2baef2876361925562", "index": 4739, "guid": "d7e7f85d-bd61-446f-b178-48a0e8aa0034", "isActive": false, "balance": "$2,029.28", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Wilson Freeman", "gender": "male", "company": "COMVEY", "email": "wilsonfreeman@comvey.com", "phone": "+1 (817) 416-3965", "address": "862 Locust Street, Delwood, California, 8544", "about": "Adipisicing irure officia culpa esse reprehenderit. Officia velit labore irure in deserunt. Adipisicing non excepteur mollit cillum nostrud aute nulla duis. Sunt ad aute Lorem minim et aliqua. Incididunt ipsum anim officia pariatur enim veniam. Proident ullamco qui dolore nulla laborum eu labore pariatur aute reprehenderit minim enim.\r\n", "registered": "2014-02-01T03:14:56-13:00", "latitude": -56.366084, "longitude": -96.928131, "tags": [ "ex", "incididunt", "occaecat", "non", "pariatur", "velit", "ad" ], "friends": [ { "id": 0, "name": "Florence Vargas" }, { "id": 1, "name": "Luann Fuentes" }, { "id": 2, "name": "Howe Giles" } ], "greeting": "Hello, Wilson Freeman! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b74d9fb120c382053", "index": 4740, "guid": "1004d60c-c57e-4a76-add0-82148bf08a95", "isActive": true, "balance": "$3,483.31", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Franks Singleton", "gender": "male", "company": "MUSAPHICS", "email": "frankssingleton@musaphics.com", "phone": "+1 (953) 590-3063", "address": "244 Dunham Place, Kenwood, Vermont, 4583", "about": "Laborum quis id ipsum minim sit irure exercitation adipisicing nisi sunt ut reprehenderit eu. Culpa officia laboris sunt eiusmod. Lorem dolor irure tempor consequat. Cupidatat velit excepteur officia quis. Occaecat aliquip amet in ex sint dolor eu sint tempor ipsum irure culpa.\r\n", "registered": "2014-07-09T17:42:49-12:00", "latitude": -76.315085, "longitude": -72.143134, "tags": [ "excepteur", "exercitation", "qui", "ad", "dolore", "aliquip", "ad" ], "friends": [ { "id": 0, "name": "Maldonado Farmer" }, { "id": 1, "name": "Logan Lewis" }, { "id": 2, "name": "Mcdonald Castaneda" } ], "greeting": "Hello, Franks Singleton! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b6dfd39e5630aef00", "index": 4741, "guid": "97de1289-81cd-4f49-af27-08c10c7b0443", "isActive": true, "balance": "$2,964.20", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Horne Burgess", "gender": "male", "company": "MEDICROIX", "email": "horneburgess@medicroix.com", "phone": "+1 (941) 447-2629", "address": "324 Miller Place, Detroit, Indiana, 8301", "about": "Ad nulla est tempor excepteur esse esse. Elit laborum ea fugiat laboris reprehenderit mollit do magna nostrud excepteur elit. Laborum reprehenderit cupidatat aliqua esse labore excepteur duis cupidatat.\r\n", "registered": "2014-08-06T15:54:44-12:00", "latitude": 21.026046, "longitude": -134.982768, "tags": [ "commodo", "Lorem", "laborum", "excepteur", "quis", "commodo", "irure" ], "friends": [ { "id": 0, "name": "Helen Brooks" }, { "id": 1, "name": "Lakisha Boyer" }, { "id": 2, "name": "Ellis Cortez" } ], "greeting": "Hello, Horne Burgess! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bfac98a90801fb6d6", "index": 4742, "guid": "f7aabe22-70fd-4061-a692-45601b80e5f5", "isActive": true, "balance": "$2,411.92", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Daniels Beck", "gender": "male", "company": "ACCRUEX", "email": "danielsbeck@accruex.com", "phone": "+1 (842) 423-2609", "address": "126 Jay Street, Edenburg, Illinois, 8518", "about": "Laboris elit ut excepteur mollit sint irure cillum ex ex. Aute pariatur ipsum consectetur tempor quis proident laborum ipsum commodo deserunt consectetur. Nostrud velit excepteur voluptate sit ex ad reprehenderit sint consequat fugiat ut. Mollit excepteur cillum ex sit proident tempor incididunt. Culpa labore labore fugiat commodo aute deserunt eu est tempor. Adipisicing sit pariatur consequat nulla enim commodo magna. Dolore laboris duis commodo deserunt ad et aliqua magna sint reprehenderit eu ex.\r\n", "registered": "2014-01-15T19:33:55-13:00", "latitude": 79.498589, "longitude": 105.528551, "tags": [ "veniam", "culpa", "velit", "tempor", "aliqua", "pariatur", "ad" ], "friends": [ { "id": 0, "name": "Jami Hurley" }, { "id": 1, "name": "Janice Macias" }, { "id": 2, "name": "Darlene Buckner" } ], "greeting": "Hello, Daniels Beck! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b0e472460d1d33ecd", "index": 4743, "guid": "ab58bf51-7cb4-49ec-928c-7b0baeb80036", "isActive": false, "balance": "$1,451.63", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Tabatha Cooke", "gender": "female", "company": "TECHMANIA", "email": "tabathacooke@techmania.com", "phone": "+1 (910) 466-2596", "address": "924 Atlantic Avenue, Geyserville, South Carolina, 9093", "about": "Anim fugiat consectetur eu enim nostrud dolor voluptate nulla amet ullamco aliqua. Consectetur do eiusmod est excepteur mollit ad tempor excepteur est dolore dolor in. Esse laborum adipisicing labore nisi pariatur adipisicing elit in et consequat elit nostrud non. Deserunt pariatur quis occaecat occaecat sint mollit adipisicing qui esse pariatur ex commodo laborum eiusmod. Elit tempor mollit nisi ex. Aliqua ut officia cupidatat sint cupidatat dolore. Sint nisi excepteur sint proident.\r\n", "registered": "2014-03-09T13:57:40-13:00", "latitude": 78.53125, "longitude": 72.902997, "tags": [ "aliqua", "commodo", "ex", "aliqua", "reprehenderit", "duis", "duis" ], "friends": [ { "id": 0, "name": "Lea Garrett" }, { "id": 1, "name": "Rodriguez Mcleod" }, { "id": 2, "name": "Valencia Mcgee" } ], "greeting": "Hello, Tabatha Cooke! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b01f652459884c96a", "index": 4744, "guid": "3d1fd98a-68fb-4c6e-8f63-fff9b5c0bea6", "isActive": false, "balance": "$2,091.84", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Knight Horne", "gender": "male", "company": "QUILCH", "email": "knighthorne@quilch.com", "phone": "+1 (924) 512-2252", "address": "584 Conover Street, Williams, American Samoa, 654", "about": "Ad velit ex labore elit. Mollit nostrud commodo excepteur excepteur do reprehenderit exercitation sint mollit cillum dolore. Ipsum anim proident qui qui magna velit non est sint. Dolor pariatur aliquip ipsum proident consectetur enim deserunt commodo id in. Adipisicing sit qui tempor proident qui. Elit sint commodo esse ea in ipsum magna reprehenderit fugiat dolor ipsum esse. Exercitation officia cillum quis qui laborum minim.\r\n", "registered": "2014-08-19T06:51:02-12:00", "latitude": 89.955047, "longitude": 0.61521, "tags": [ "nulla", "excepteur", "sit", "cupidatat", "sit", "nisi", "id" ], "friends": [ { "id": 0, "name": "Warren Kinney" }, { "id": 1, "name": "Veronica Witt" }, { "id": 2, "name": "Loretta Perkins" } ], "greeting": "Hello, Knight Horne! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ba5f24e53d09850e9", "index": 4745, "guid": "41807185-8595-4c6e-b5c4-9ba6784d0c74", "isActive": false, "balance": "$2,832.81", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Angelita Merrill", "gender": "female", "company": "DUFLEX", "email": "angelitamerrill@duflex.com", "phone": "+1 (957) 510-3639", "address": "683 Tapscott Avenue, Carrsville, Delaware, 7354", "about": "Laborum voluptate incididunt voluptate irure velit cillum laborum fugiat consequat irure consectetur eiusmod. Magna reprehenderit aliquip consequat aliquip ea non ad consectetur. Non consectetur esse duis officia. Qui consequat ea est ad amet ea minim culpa eiusmod do.\r\n", "registered": "2014-02-28T07:19:07-13:00", "latitude": 59.535137, "longitude": -55.076034, "tags": [ "velit", "velit", "consequat", "do", "cupidatat", "nisi", "est" ], "friends": [ { "id": 0, "name": "Jarvis Cherry" }, { "id": 1, "name": "Battle Lucas" }, { "id": 2, "name": "Cole Hancock" } ], "greeting": "Hello, Angelita Merrill! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b76358f20f67b1fcc", "index": 4746, "guid": "3be0b7cf-204f-4414-ae1b-f38335377397", "isActive": false, "balance": "$2,266.66", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Gay Wilkerson", "gender": "male", "company": "QUANTASIS", "email": "gaywilkerson@quantasis.com", "phone": "+1 (804) 523-3278", "address": "235 Lancaster Avenue, Centerville, Pennsylvania, 8733", "about": "Dolor nostrud cupidatat proident veniam. Ex eiusmod consectetur ut ex. Nisi eu proident nostrud proident Lorem aute culpa fugiat. Occaecat anim duis occaecat pariatur labore duis aliquip et occaecat fugiat aliqua. Aute sunt esse nisi cupidatat ex ipsum veniam ad et culpa.\r\n", "registered": "2014-07-25T13:02:48-12:00", "latitude": -52.409281, "longitude": -108.358953, "tags": [ "cupidatat", "dolore", "esse", "sint", "commodo", "minim", "duis" ], "friends": [ { "id": 0, "name": "Roseann Zamora" }, { "id": 1, "name": "French Mack" }, { "id": 2, "name": "Helga Oneill" } ], "greeting": "Hello, Gay Wilkerson! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ba63e89457c3179c1", "index": 4747, "guid": "1432d9e3-5452-407f-8892-55304674c409", "isActive": false, "balance": "$3,808.27", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Shirley Lawson", "gender": "female", "company": "QUIZKA", "email": "shirleylawson@quizka.com", "phone": "+1 (849) 589-2033", "address": "868 Woodside Avenue, Dellview, Georgia, 5683", "about": "Excepteur occaecat officia mollit excepteur nostrud cillum aliquip excepteur fugiat ut voluptate occaecat. Veniam incididunt ipsum excepteur nisi laborum consectetur quis laboris. Quis exercitation sint elit eu esse aute excepteur duis adipisicing. Dolor do ipsum sit mollit esse. Reprehenderit excepteur amet occaecat commodo. Voluptate excepteur ex exercitation deserunt velit aliquip labore amet esse laboris enim id qui.\r\n", "registered": "2014-08-04T04:58:46-12:00", "latitude": -71.540829, "longitude": 151.985392, "tags": [ "adipisicing", "est", "commodo", "irure", "magna", "amet", "ipsum" ], "friends": [ { "id": 0, "name": "Ashley Thomas" }, { "id": 1, "name": "Olson Stein" }, { "id": 2, "name": "Nina Jacobs" } ], "greeting": "Hello, Shirley Lawson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b0e020df6daaf4192", "index": 4748, "guid": "7c289353-65e5-4558-9d9f-69b5599cd329", "isActive": true, "balance": "$1,598.05", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Charlene Malone", "gender": "female", "company": "COMVOY", "email": "charlenemalone@comvoy.com", "phone": "+1 (899) 422-2086", "address": "443 Emerald Street, Skyland, North Dakota, 3840", "about": "Ipsum irure in occaecat fugiat laborum ea et ea incididunt eiusmod incididunt laborum quis aute. Enim voluptate fugiat et nulla magna veniam ad minim laborum enim magna incididunt. Esse fugiat cillum anim cupidatat quis fugiat quis consectetur sit eiusmod. Qui mollit aliquip nostrud ex. Duis incididunt incididunt esse nulla velit ea exercitation nulla reprehenderit. Sunt in quis nulla non cillum sit. Ea sint velit laboris ad veniam id labore.\r\n", "registered": "2014-04-03T17:32:58-13:00", "latitude": 35.948942, "longitude": 123.804883, "tags": [ "ipsum", "est", "in", "duis", "amet", "anim", "velit" ], "friends": [ { "id": 0, "name": "Ware Lynch" }, { "id": 1, "name": "Helena Hendrix" }, { "id": 2, "name": "Clarissa Meyer" } ], "greeting": "Hello, Charlene Malone! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ba79e5d9537f6549c", "index": 4749, "guid": "c51a9e4b-f5a4-4e87-8f17-80ca09e223b9", "isActive": true, "balance": "$1,926.09", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Lucile Walton", "gender": "female", "company": "FRANSCENE", "email": "lucilewalton@franscene.com", "phone": "+1 (995) 411-2835", "address": "629 Nelson Street, Grenelefe, Louisiana, 8155", "about": "Aliquip ullamco et enim labore incididunt dolore aute et fugiat laborum et dolore irure. Officia laboris cupidatat exercitation cupidatat sunt incididunt cupidatat non eu amet non irure laborum deserunt. Aute consequat consectetur est nisi et.\r\n", "registered": "2014-05-02T18:28:20-12:00", "latitude": 27.267906, "longitude": 4.396377, "tags": [ "nulla", "esse", "ullamco", "eu", "culpa", "ipsum", "nostrud" ], "friends": [ { "id": 0, "name": "Lacy Stanley" }, { "id": 1, "name": "Hobbs Collins" }, { "id": 2, "name": "Teri Sosa" } ], "greeting": "Hello, Lucile Walton! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bf72bf5a9ce7af199", "index": 4750, "guid": "66890d05-3916-43c4-9cf4-853dbc3dfe70", "isActive": false, "balance": "$3,684.29", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Bond Sampson", "gender": "male", "company": "ZUVY", "email": "bondsampson@zuvy.com", "phone": "+1 (938) 450-3466", "address": "669 Moffat Street, Beason, Northern Mariana Islands, 9523", "about": "In elit aliquip dolore est Lorem mollit exercitation aute eiusmod veniam minim amet deserunt sint. Enim sint ullamco Lorem eu. Ad nostrud nulla enim quis ullamco sunt esse commodo. Incididunt voluptate elit mollit laborum enim. Cupidatat laborum sint fugiat fugiat enim ipsum amet sit adipisicing aute aliquip. Fugiat magna velit laborum anim ipsum Lorem nulla deserunt labore occaecat excepteur culpa.\r\n", "registered": "2014-07-25T19:47:37-12:00", "latitude": -9.67041, "longitude": 171.814926, "tags": [ "et", "ut", "dolore", "Lorem", "excepteur", "enim", "exercitation" ], "friends": [ { "id": 0, "name": "Frances Cain" }, { "id": 1, "name": "Juliet Sawyer" }, { "id": 2, "name": "Lizzie Wilder" } ], "greeting": "Hello, Bond Sampson! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bef19902550c9474f", "index": 4751, "guid": "cee2f70d-d17e-47e1-88a9-e0eb32e60ad0", "isActive": true, "balance": "$2,190.71", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Frazier Mccray", "gender": "male", "company": "ACCUFARM", "email": "fraziermccray@accufarm.com", "phone": "+1 (837) 554-2562", "address": "797 Anthony Street, Fairview, Colorado, 2704", "about": "Voluptate ex quis laboris dolore sunt dolor ex ea ipsum. Sit cillum laborum sit ut ipsum et exercitation excepteur. Nulla id eu exercitation dolor.\r\n", "registered": "2014-01-12T06:19:03-13:00", "latitude": 25.665522, "longitude": 123.08229, "tags": [ "ad", "aliquip", "occaecat", "Lorem", "officia", "aliquip", "dolore" ], "friends": [ { "id": 0, "name": "Bertha Sanford" }, { "id": 1, "name": "Phyllis Cardenas" }, { "id": 2, "name": "Clara Morrow" } ], "greeting": "Hello, Frazier Mccray! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ba9db8712eb82af75", "index": 4752, "guid": "f2bee105-7ec6-42ec-9325-06488e366932", "isActive": true, "balance": "$2,821.85", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Sweet Livingston", "gender": "male", "company": "WEBIOTIC", "email": "sweetlivingston@webiotic.com", "phone": "+1 (928) 557-2221", "address": "886 Beaver Street, Bowmansville, Idaho, 7659", "about": "Cupidatat incididunt et labore sunt dolore voluptate proident ipsum pariatur. Ex eiusmod ipsum tempor sit nisi Lorem amet. Voluptate ea elit id deserunt pariatur ea velit.\r\n", "registered": "2014-09-10T00:43:43-12:00", "latitude": -14.449298, "longitude": 134.010524, "tags": [ "incididunt", "pariatur", "aute", "qui", "ullamco", "veniam", "est" ], "friends": [ { "id": 0, "name": "Hawkins Hamilton" }, { "id": 1, "name": "Mcleod Shepherd" }, { "id": 2, "name": "Osborn Clayton" } ], "greeting": "Hello, Sweet Livingston! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bec22a4267b668c85", "index": 4753, "guid": "75d38a99-5c22-4bc2-9a4c-7e7a9ae38f21", "isActive": true, "balance": "$3,885.18", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Buchanan Atkinson", "gender": "male", "company": "EARBANG", "email": "buchananatkinson@earbang.com", "phone": "+1 (868) 519-3814", "address": "684 Aster Court, Watchtower, Marshall Islands, 828", "about": "Sit mollit reprehenderit eiusmod mollit est deserunt minim sit duis sunt irure cillum laborum. Lorem eiusmod nostrud qui consequat aliqua commodo irure cupidatat amet nostrud. Nisi tempor nisi aute nostrud duis cillum reprehenderit sit commodo. Est cillum incididunt non officia aliqua Lorem commodo mollit laboris irure mollit.\r\n", "registered": "2014-04-21T18:44:57-12:00", "latitude": 60.951157, "longitude": 178.705528, "tags": [ "ex", "tempor", "reprehenderit", "fugiat", "esse", "culpa", "qui" ], "friends": [ { "id": 0, "name": "Mia Clay" }, { "id": 1, "name": "Moss Whitehead" }, { "id": 2, "name": "Villarreal Rush" } ], "greeting": "Hello, Buchanan Atkinson! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b10c5a3d12ed4cec8", "index": 4754, "guid": "d316c79d-1d5c-49d3-a3a2-ca2cc3fc57d4", "isActive": true, "balance": "$2,258.84", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Weiss Hayden", "gender": "male", "company": "KONNECT", "email": "weisshayden@konnect.com", "phone": "+1 (891) 408-2973", "address": "613 Lake Street, Nogal, New York, 9366", "about": "Duis ea minim amet est nostrud ex nulla fugiat tempor est aliquip id. Sit do voluptate excepteur excepteur in dolore fugiat ullamco in nulla Lorem et cillum. Pariatur minim ipsum nulla sint cupidatat nostrud adipisicing nostrud. Aliquip cupidatat ipsum consequat ut incididunt velit velit voluptate labore eiusmod amet exercitation officia consectetur. Ex eu fugiat ad est eu mollit cupidatat magna ex irure nostrud. Eu cillum nisi aliquip elit amet est occaecat. In cupidatat quis amet commodo occaecat sint laboris laborum ut.\r\n", "registered": "2014-06-21T03:51:03-12:00", "latitude": 38.768113, "longitude": -79.797441, "tags": [ "deserunt", "adipisicing", "veniam", "esse", "cupidatat", "sit", "elit" ], "friends": [ { "id": 0, "name": "Patricia Wooten" }, { "id": 1, "name": "Rowland Blankenship" }, { "id": 2, "name": "Scott Kent" } ], "greeting": "Hello, Weiss Hayden! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b36c651af8df94807", "index": 4755, "guid": "8e73e209-d7b4-4cdb-8e9e-9a1cd22cc261", "isActive": true, "balance": "$3,569.94", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Cote Ramirez", "gender": "male", "company": "ZIGGLES", "email": "coteramirez@ziggles.com", "phone": "+1 (857) 526-3546", "address": "496 Grattan Street, Highland, Guam, 3094", "about": "Ad ad cillum adipisicing nisi dolor qui fugiat aute ad nulla anim. Enim excepteur aliquip commodo sint cupidatat esse in occaecat in dolor aute sunt. Anim eu irure eiusmod aliquip non officia. Sit pariatur minim ex in labore nisi eu esse ipsum ullamco fugiat dolore nulla minim.\r\n", "registered": "2014-01-29T07:24:24-13:00", "latitude": 77.78252, "longitude": 15.255003, "tags": [ "aliquip", "sunt", "dolor", "nulla", "sit", "velit", "nulla" ], "friends": [ { "id": 0, "name": "Burgess Hardy" }, { "id": 1, "name": "Janet Ross" }, { "id": 2, "name": "Latoya Wade" } ], "greeting": "Hello, Cote Ramirez! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b19cf4bbdc888cdc6", "index": 4756, "guid": "9761f32a-6e93-460b-80f4-c3b9807e82c0", "isActive": true, "balance": "$1,554.90", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Alice Cunningham", "gender": "female", "company": "EVENTIX", "email": "alicecunningham@eventix.com", "phone": "+1 (940) 528-2103", "address": "495 Lamont Court, Rivers, Virgin Islands, 649", "about": "Nisi non deserunt voluptate excepteur velit cillum adipisicing sint velit anim cupidatat. Ipsum amet ipsum esse elit amet ipsum non ex pariatur est sit. Exercitation sint exercitation in ipsum aliquip. Sit pariatur aliqua anim dolor excepteur culpa eiusmod anim ullamco quis minim ipsum.\r\n", "registered": "2014-03-01T05:53:54-13:00", "latitude": 18.854668, "longitude": -32.727196, "tags": [ "excepteur", "sunt", "incididunt", "qui", "sit", "aliqua", "dolor" ], "friends": [ { "id": 0, "name": "Colon Noble" }, { "id": 1, "name": "Sanders Montgomery" }, { "id": 2, "name": "Hillary Tran" } ], "greeting": "Hello, Alice Cunningham! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ba7945b07947650ed", "index": 4757, "guid": "b73e0d48-c6fc-429c-abf3-e1460ceab072", "isActive": false, "balance": "$1,885.17", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Janette Valdez", "gender": "female", "company": "COMSTAR", "email": "janettevaldez@comstar.com", "phone": "+1 (978) 511-3167", "address": "838 Bethel Loop, Smeltertown, Massachusetts, 6588", "about": "Mollit exercitation mollit esse veniam et culpa cupidatat in laboris id pariatur. Non fugiat duis et ut ad consectetur. Anim consectetur exercitation veniam culpa eu commodo sint consectetur occaecat nulla ullamco reprehenderit. Commodo sunt commodo pariatur ut reprehenderit aliqua id consequat enim tempor consectetur. Id eu dolore officia dolor nostrud aute ullamco nostrud sunt sint anim non magna aute.\r\n", "registered": "2014-03-28T19:00:34-13:00", "latitude": -73.900161, "longitude": -80.035256, "tags": [ "aliquip", "amet", "irure", "pariatur", "eiusmod", "consectetur", "ipsum" ], "friends": [ { "id": 0, "name": "Hudson Hebert" }, { "id": 1, "name": "Muriel Simmons" }, { "id": 2, "name": "Justine Fox" } ], "greeting": "Hello, Janette Valdez! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b0f466e7c7cfb578c", "index": 4758, "guid": "c47d3cdf-0db7-45f6-8bdb-3357a2799819", "isActive": true, "balance": "$3,351.29", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Leonor Mosley", "gender": "female", "company": "ASSISTIA", "email": "leonormosley@assistia.com", "phone": "+1 (829) 535-2225", "address": "857 Judge Street, Henrietta, Utah, 1565", "about": "Duis culpa officia consectetur dolore irure anim laborum. Velit pariatur esse dolore aliquip et est. Esse sit consequat magna ea laboris est exercitation aute in quis id eiusmod quis dolore. Laborum voluptate magna incididunt aliquip cupidatat id sit nisi tempor mollit.\r\n", "registered": "2014-01-06T02:33:26-13:00", "latitude": -49.107962, "longitude": -131.443274, "tags": [ "laboris", "anim", "eu", "dolore", "nisi", "in", "deserunt" ], "friends": [ { "id": 0, "name": "Lee Cole" }, { "id": 1, "name": "Cassandra Waters" }, { "id": 2, "name": "Concetta Vega" } ], "greeting": "Hello, Leonor Mosley! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2be8e67d946befb6b8", "index": 4759, "guid": "9e16f1e8-499d-4ce4-89ab-80a453b7bef7", "isActive": true, "balance": "$1,669.82", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Curtis Madden", "gender": "male", "company": "RAMEON", "email": "curtismadden@rameon.com", "phone": "+1 (967) 482-2596", "address": "191 Metrotech Courtr, Cloverdale, Montana, 2400", "about": "Exercitation tempor sint culpa minim commodo. Voluptate aliqua incididunt tempor do pariatur eiusmod do duis eiusmod laborum. Pariatur ut irure sit officia sit esse excepteur amet.\r\n", "registered": "2014-01-20T21:34:53-13:00", "latitude": -1.942743, "longitude": -139.106881, "tags": [ "non", "dolore", "commodo", "magna", "do", "laborum", "tempor" ], "friends": [ { "id": 0, "name": "Angeline Bradford" }, { "id": 1, "name": "Selma Slater" }, { "id": 2, "name": "Sharon Maddox" } ], "greeting": "Hello, Curtis Madden! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b1345da120351e594", "index": 4760, "guid": "8a143161-7cb8-4db4-b5a0-f210479e4934", "isActive": false, "balance": "$1,438.29", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Jennings Ward", "gender": "male", "company": "MAGMINA", "email": "jenningsward@magmina.com", "phone": "+1 (877) 483-2079", "address": "342 Lewis Avenue, Faxon, Wisconsin, 1162", "about": "Quis ut do eu dolore duis esse aute eiusmod esse occaecat proident ad ipsum. Sit pariatur Lorem labore enim incididunt culpa sit culpa ea labore consequat do qui. Nisi cupidatat tempor occaecat incididunt nisi cillum et aliqua ea.\r\n", "registered": "2014-02-03T15:05:22-13:00", "latitude": 26.839722, "longitude": -107.292168, "tags": [ "nisi", "eiusmod", "eu", "sit", "irure", "laboris", "culpa" ], "friends": [ { "id": 0, "name": "Mclaughlin Rice" }, { "id": 1, "name": "Yesenia Hendricks" }, { "id": 2, "name": "Pamela Morse" } ], "greeting": "Hello, Jennings Ward! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b206a6503b1088062", "index": 4761, "guid": "90e3e7ce-29fb-4a4b-8ce6-bc1328601448", "isActive": false, "balance": "$1,913.49", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Mcbride James", "gender": "male", "company": "PYRAMIA", "email": "mcbridejames@pyramia.com", "phone": "+1 (846) 497-3545", "address": "840 Bay Parkway, Fruitdale, Maine, 8415", "about": "Minim anim esse aliqua et ex Lorem nostrud ea consectetur officia ut anim. Nisi enim ut tempor magna. Ipsum nisi duis consequat nisi. Id anim anim exercitation do ex id sit do elit. Reprehenderit elit nisi mollit nisi reprehenderit do officia nulla consectetur est tempor incididunt aliquip.\r\n", "registered": "2014-09-13T02:59:17-12:00", "latitude": -56.059962, "longitude": 69.887358, "tags": [ "occaecat", "veniam", "labore", "aute", "Lorem", "eu", "voluptate" ], "friends": [ { "id": 0, "name": "Sheila Griffith" }, { "id": 1, "name": "Adela Webb" }, { "id": 2, "name": "Kristina Kirk" } ], "greeting": "Hello, Mcbride James! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b8776648559de3175", "index": 4762, "guid": "27939a87-e502-4e69-8567-8f1a68116e83", "isActive": false, "balance": "$1,484.69", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Martha Rutledge", "gender": "female", "company": "QUONATA", "email": "martharutledge@quonata.com", "phone": "+1 (922) 548-2890", "address": "929 Lincoln Avenue, Munjor, Virginia, 1602", "about": "Exercitation pariatur elit dolor laborum aliquip consequat est mollit qui deserunt veniam aliqua enim duis. Id mollit adipisicing irure adipisicing aute ad quis ex in in ex laboris enim culpa. Eu et proident officia velit quis. Culpa incididunt labore Lorem commodo ad eu. Adipisicing nisi elit ad do duis eiusmod.\r\n", "registered": "2014-02-08T09:23:40-13:00", "latitude": -41.097613, "longitude": -100.739176, "tags": [ "ut", "laborum", "quis", "ullamco", "eiusmod", "aute", "Lorem" ], "friends": [ { "id": 0, "name": "Cooper Baker" }, { "id": 1, "name": "Wolfe Daniels" }, { "id": 2, "name": "Tillman Wright" } ], "greeting": "Hello, Martha Rutledge! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b362c9dbc7f513d37", "index": 4763, "guid": "98c0d51d-649d-4230-a3ae-c036f712e167", "isActive": false, "balance": "$1,891.30", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Gordon Patel", "gender": "male", "company": "GOLISTIC", "email": "gordonpatel@golistic.com", "phone": "+1 (878) 512-3320", "address": "150 Milford Street, Valmy, Kentucky, 8339", "about": "Sunt ut mollit nostrud in cillum esse voluptate exercitation dolore dolor. Ullamco minim eu cupidatat cupidatat et laboris consequat sint aliquip occaecat. Incididunt commodo amet culpa tempor proident. Duis cupidatat commodo amet aliqua nostrud amet culpa.\r\n", "registered": "2014-06-27T22:15:42-12:00", "latitude": 65.414937, "longitude": -123.971842, "tags": [ "velit", "elit", "ut", "magna", "velit", "aliquip", "aute" ], "friends": [ { "id": 0, "name": "Howell Cook" }, { "id": 1, "name": "Aurelia Bullock" }, { "id": 2, "name": "Carmen Nicholson" } ], "greeting": "Hello, Gordon Patel! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bc266bed4e866dd90", "index": 4764, "guid": "72b87742-a296-47b9-a0d4-6f081ab8147b", "isActive": false, "balance": "$2,221.86", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Kemp Grimes", "gender": "male", "company": "INCUBUS", "email": "kempgrimes@incubus.com", "phone": "+1 (808) 565-2022", "address": "438 Veterans Avenue, Brantleyville, Connecticut, 2201", "about": "Ex ut ullamco aliquip enim in pariatur. Esse officia consectetur in adipisicing aliquip velit ex nostrud. Adipisicing non labore nisi fugiat est aliquip quis eu ad cupidatat proident laboris aliqua. Commodo ut occaecat ex voluptate exercitation.\r\n", "registered": "2014-05-07T23:33:30-12:00", "latitude": 82.836628, "longitude": 65.472195, "tags": [ "proident", "voluptate", "sit", "minim", "irure", "ipsum", "sint" ], "friends": [ { "id": 0, "name": "Francis Olsen" }, { "id": 1, "name": "Gertrude Ramsey" }, { "id": 2, "name": "Hoover Barrera" } ], "greeting": "Hello, Kemp Grimes! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2be6bf931ca1f5317f", "index": 4765, "guid": "50d69aa0-3e34-4833-9027-e0fb5014250a", "isActive": true, "balance": "$2,636.79", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Clark Moses", "gender": "male", "company": "ENDIPIN", "email": "clarkmoses@endipin.com", "phone": "+1 (834) 487-2778", "address": "571 Aitken Place, Northridge, Mississippi, 4534", "about": "Amet qui deserunt veniam aliquip proident. Fugiat deserunt magna duis ea do laborum. Aliqua non eiusmod ipsum duis. Mollit sit excepteur veniam veniam enim magna eu. Consectetur laboris proident aliquip cupidatat minim deserunt. Deserunt pariatur ipsum deserunt et dolor labore est quis eiusmod ut aliqua.\r\n", "registered": "2014-05-03T10:04:19-12:00", "latitude": -60.554715, "longitude": -136.720553, "tags": [ "Lorem", "qui", "elit", "culpa", "occaecat", "mollit", "nulla" ], "friends": [ { "id": 0, "name": "Merrill Huff" }, { "id": 1, "name": "Patti Mcintyre" }, { "id": 2, "name": "Debbie Hicks" } ], "greeting": "Hello, Clark Moses! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b12fa2911be8bd4ba", "index": 4766, "guid": "d4fed6a3-82ba-4a2e-aa5c-3ee014165705", "isActive": false, "balance": "$3,369.34", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Harrell Carlson", "gender": "male", "company": "GAPTEC", "email": "harrellcarlson@gaptec.com", "phone": "+1 (874) 449-2217", "address": "763 Harwood Place, Cornfields, Washington, 2779", "about": "Ullamco deserunt aute dolor proident commodo ullamco ullamco duis cillum fugiat dolor labore elit. Dolor est pariatur sit amet nisi nostrud reprehenderit. Incididunt amet labore consectetur dolore velit velit do. Incididunt pariatur ea consectetur eiusmod excepteur incididunt dolore irure. Veniam consequat do officia aute commodo incididunt consectetur occaecat magna sint.\r\n", "registered": "2014-04-11T09:22:23-12:00", "latitude": -42.619453, "longitude": 114.069151, "tags": [ "enim", "consectetur", "mollit", "irure", "ullamco", "esse", "eiusmod" ], "friends": [ { "id": 0, "name": "Nguyen Ayers" }, { "id": 1, "name": "Bates Leach" }, { "id": 2, "name": "Jewel Lyons" } ], "greeting": "Hello, Harrell Carlson! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b7a89ffa168b554f8", "index": 4767, "guid": "4f1afeec-ee2e-4b27-8acc-3e048584ba12", "isActive": false, "balance": "$1,771.69", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Gloria Robles", "gender": "female", "company": "COGENTRY", "email": "gloriarobles@cogentry.com", "phone": "+1 (921) 478-3966", "address": "887 Brooklyn Avenue, Gratton, Tennessee, 725", "about": "Non enim commodo ex aliquip aliquip veniam cupidatat cillum dolor nisi adipisicing incididunt sint. Laborum do reprehenderit amet deserunt anim excepteur. Est sunt dolore elit aliquip fugiat magna dolore ut deserunt id. Exercitation consectetur officia qui occaecat aliqua id ad est velit aute quis do. Elit dolore amet elit aute duis ad. Cupidatat excepteur ex ex tempor consequat exercitation non laboris.\r\n", "registered": "2014-06-29T10:50:27-12:00", "latitude": 56.300728, "longitude": -172.912807, "tags": [ "tempor", "enim", "laborum", "esse", "laborum", "nulla", "velit" ], "friends": [ { "id": 0, "name": "Guzman Curry" }, { "id": 1, "name": "Mcfadden Marquez" }, { "id": 2, "name": "Ida Acevedo" } ], "greeting": "Hello, Gloria Robles! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b974e9c03017b763e", "index": 4768, "guid": "4992ff1b-1b6a-429d-8b83-4339b1ad9ee3", "isActive": false, "balance": "$1,319.42", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Alyssa Reeves", "gender": "female", "company": "TRASOLA", "email": "alyssareeves@trasola.com", "phone": "+1 (917) 433-3188", "address": "278 Olive Street, Edinburg, Alabama, 9538", "about": "Et minim amet pariatur ex id consequat fugiat laborum adipisicing aliquip velit. Sunt incididunt qui veniam commodo dolor in excepteur veniam dolor cillum est non cillum. Laboris amet aliqua ipsum non mollit proident et. Duis deserunt ad irure veniam duis incididunt do duis sint sit.\r\n", "registered": "2014-07-23T02:11:37-12:00", "latitude": 38.221668, "longitude": 117.325464, "tags": [ "qui", "pariatur", "laboris", "do", "sit", "proident", "eu" ], "friends": [ { "id": 0, "name": "Kirby Irwin" }, { "id": 1, "name": "Doyle Terrell" }, { "id": 2, "name": "Tanya Schmidt" } ], "greeting": "Hello, Alyssa Reeves! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b3cde840cf0bf0877", "index": 4769, "guid": "fafaf18e-2107-4fc5-97dc-7b122ab92dea", "isActive": true, "balance": "$1,232.70", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Hill Delaney", "gender": "male", "company": "VORTEXACO", "email": "hilldelaney@vortexaco.com", "phone": "+1 (820) 473-3569", "address": "388 Johnson Street, Olney, Ohio, 4767", "about": "Id anim aliqua reprehenderit est do ullamco labore consectetur Lorem elit aliquip est. Irure cillum culpa duis ullamco. Elit do consequat Lorem pariatur minim duis adipisicing. Magna fugiat elit tempor ad minim sit quis. Enim labore enim adipisicing exercitation esse cupidatat proident.\r\n", "registered": "2014-08-12T12:45:27-12:00", "latitude": 4.170166, "longitude": 176.123036, "tags": [ "ea", "anim", "Lorem", "ut", "aliquip", "minim", "elit" ], "friends": [ { "id": 0, "name": "Lindsay Wyatt" }, { "id": 1, "name": "Fran Lindsey" }, { "id": 2, "name": "Lora Head" } ], "greeting": "Hello, Hill Delaney! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b6e4216c9abd7268f", "index": 4770, "guid": "5da3249e-1360-4a34-aa9a-e2c4b0b77f44", "isActive": false, "balance": "$2,509.76", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Gwendolyn Morrison", "gender": "female", "company": "QUAILCOM", "email": "gwendolynmorrison@quailcom.com", "phone": "+1 (892) 552-3383", "address": "792 Hutchinson Court, Elliston, Hawaii, 2495", "about": "Consectetur sunt voluptate tempor voluptate in nulla fugiat. Ipsum ea culpa mollit occaecat cupidatat commodo Lorem ad. Lorem laborum adipisicing sint qui enim in eu aliqua commodo occaecat quis eu. Qui ut qui cupidatat sit consectetur ipsum amet tempor duis consectetur quis. Magna reprehenderit adipisicing proident ex adipisicing nostrud.\r\n", "registered": "2014-07-15T16:31:41-12:00", "latitude": 6.943595, "longitude": 25.955613, "tags": [ "anim", "anim", "ut", "sit", "occaecat", "officia", "occaecat" ], "friends": [ { "id": 0, "name": "Franklin Crawford" }, { "id": 1, "name": "Dickson Espinoza" }, { "id": 2, "name": "Florine Sullivan" } ], "greeting": "Hello, Gwendolyn Morrison! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bb5b76850701a113e", "index": 4771, "guid": "8c5fff84-9e1e-4cf3-8637-0c3fc2de0595", "isActive": false, "balance": "$1,760.19", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Morse Day", "gender": "male", "company": "EMOLTRA", "email": "morseday@emoltra.com", "phone": "+1 (895) 569-3345", "address": "810 Murdock Court, Tolu, New Mexico, 7853", "about": "Proident id proident deserunt culpa. Pariatur magna occaecat pariatur tempor amet ea voluptate fugiat adipisicing ut incididunt. Irure amet in in nulla laborum nisi id. Occaecat id mollit laborum dolor. Minim reprehenderit eu aliquip elit.\r\n", "registered": "2014-08-23T20:35:04-12:00", "latitude": -13.673625, "longitude": -6.279873, "tags": [ "magna", "consectetur", "minim", "fugiat", "est", "reprehenderit", "aliquip" ], "friends": [ { "id": 0, "name": "Millicent Harmon" }, { "id": 1, "name": "Judith English" }, { "id": 2, "name": "Snider Buckley" } ], "greeting": "Hello, Morse Day! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b655734a6682e7445", "index": 4772, "guid": "0ec040eb-3cc7-4a18-9af7-bd73487c3abb", "isActive": false, "balance": "$3,503.13", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Bonnie Haley", "gender": "female", "company": "DAIDO", "email": "bonniehaley@daido.com", "phone": "+1 (974) 589-2213", "address": "758 Bennet Court, Inkerman, Maryland, 7699", "about": "Ullamco et eu ullamco nulla non ea minim adipisicing ex ut labore consequat. Dolore sint magna qui dolor aliqua quis culpa nulla cupidatat officia ea. Dolor incididunt exercitation fugiat consectetur excepteur do nisi aute. Culpa fugiat cillum magna elit consectetur magna voluptate ad cillum. Sit nostrud mollit irure ipsum proident in voluptate adipisicing incididunt. Tempor ex occaecat occaecat consequat tempor ex labore esse quis.\r\n", "registered": "2014-03-01T10:52:07-13:00", "latitude": 72.833581, "longitude": -131.58659, "tags": [ "incididunt", "voluptate", "non", "nulla", "sunt", "deserunt", "veniam" ], "friends": [ { "id": 0, "name": "Brenda Mullen" }, { "id": 1, "name": "Washington Bray" }, { "id": 2, "name": "Erickson Gay" } ], "greeting": "Hello, Bonnie Haley! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b16be2e0c6edc0e91", "index": 4773, "guid": "400be957-c670-45f7-a966-6606976efe87", "isActive": true, "balance": "$2,005.67", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Lindsay Pitts", "gender": "male", "company": "DOGSPA", "email": "lindsaypitts@dogspa.com", "phone": "+1 (940) 534-3453", "address": "221 Heath Place, Singer, Alaska, 3577", "about": "Lorem magna minim quis quis nisi sit aliquip. Anim culpa elit aliquip dolor deserunt id Lorem pariatur veniam ipsum ea elit eu aliquip. Aute in aliquip pariatur aliquip eiusmod non. Incididunt Lorem dolore et aute est elit reprehenderit Lorem. Cillum quis veniam anim elit magna dolore labore est eiusmod. Ullamco est nostrud proident cupidatat qui.\r\n", "registered": "2014-01-08T09:48:59-13:00", "latitude": 24.584234, "longitude": 173.252968, "tags": [ "in", "sint", "tempor", "ad", "ex", "ullamco", "officia" ], "friends": [ { "id": 0, "name": "Nixon Vance" }, { "id": 1, "name": "Freda Kidd" }, { "id": 2, "name": "Lamb Bridges" } ], "greeting": "Hello, Lindsay Pitts! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bd0aa04f686c9613a", "index": 4774, "guid": "0d103fc6-2b46-457d-ba92-d70d014b06f2", "isActive": false, "balance": "$3,342.92", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Lenore Alford", "gender": "female", "company": "COMCUR", "email": "lenorealford@comcur.com", "phone": "+1 (834) 583-2624", "address": "576 Clifford Place, Islandia, Arizona, 827", "about": "Officia nostrud do excepteur esse aute qui Lorem magna culpa cupidatat laborum nostrud non cillum. Nisi dolor enim sint pariatur nostrud nostrud aute eu culpa consectetur ad. Excepteur do culpa culpa ipsum occaecat ipsum ea in ut pariatur eu anim reprehenderit quis. Excepteur aute minim non in ullamco veniam aliqua proident est laborum elit mollit. Nisi laboris voluptate exercitation qui tempor ipsum labore cillum do laborum est. Exercitation nostrud mollit non qui reprehenderit ad aute deserunt ullamco amet dolor consequat id.\r\n", "registered": "2014-03-16T15:46:31-13:00", "latitude": 32.406171, "longitude": -128.824595, "tags": [ "nostrud", "mollit", "quis", "occaecat", "duis", "sunt", "duis" ], "friends": [ { "id": 0, "name": "Avery Riley" }, { "id": 1, "name": "Page Brennan" }, { "id": 2, "name": "Marci Austin" } ], "greeting": "Hello, Lenore Alford! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bc4ced6c750f5705c", "index": 4775, "guid": "4f4936c6-bce5-49d5-8653-27dedaa609f5", "isActive": false, "balance": "$3,084.56", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Willie Oneil", "gender": "female", "company": "BUZZOPIA", "email": "willieoneil@buzzopia.com", "phone": "+1 (829) 425-2248", "address": "280 Milton Street, Succasunna, Federated States Of Micronesia, 8964", "about": "Dolor elit voluptate in qui ad excepteur consequat deserunt tempor irure mollit aliquip ad labore. Laborum ea aliquip sint consequat in occaecat aliquip. Enim aliquip eiusmod dolor aliquip. Id dolore sint minim occaecat in laborum ipsum ex consequat elit officia ad consequat. Aliqua duis magna fugiat ex consequat.\r\n", "registered": "2014-01-29T15:56:31-13:00", "latitude": -30.187958, "longitude": 71.387215, "tags": [ "tempor", "aliqua", "non", "elit", "adipisicing", "dolore", "labore" ], "friends": [ { "id": 0, "name": "Joni Richard" }, { "id": 1, "name": "Ray Casey" }, { "id": 2, "name": "Newman Figueroa" } ], "greeting": "Hello, Willie Oneil! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bb16bdcd554d54cbb", "index": 4776, "guid": "b89dd17d-d18e-4057-b453-f320a82f38fb", "isActive": false, "balance": "$2,123.83", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Earlene Gallagher", "gender": "female", "company": "INRT", "email": "earlenegallagher@inrt.com", "phone": "+1 (893) 547-2365", "address": "813 Irving Avenue, Bainbridge, Oklahoma, 5500", "about": "Commodo dolore do amet sunt nostrud est. Deserunt do irure nulla laborum commodo non sint tempor cupidatat irure cillum non dolor in. Id nisi cillum sint est excepteur eiusmod sunt irure consequat amet do. Aute adipisicing occaecat mollit sint nostrud adipisicing nulla et labore. Non ex excepteur sint in quis sunt.\r\n", "registered": "2014-06-23T12:41:03-12:00", "latitude": 6.374137, "longitude": 19.256945, "tags": [ "ullamco", "adipisicing", "velit", "elit", "nostrud", "tempor", "aliquip" ], "friends": [ { "id": 0, "name": "Sherman Copeland" }, { "id": 1, "name": "Ladonna Gould" }, { "id": 2, "name": "Fuentes Sellers" } ], "greeting": "Hello, Earlene Gallagher! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b53441287911ab081", "index": 4777, "guid": "3a182958-fa10-4cb0-bc73-3632440c621e", "isActive": true, "balance": "$1,500.02", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Noemi Long", "gender": "female", "company": "ATGEN", "email": "noemilong@atgen.com", "phone": "+1 (979) 589-3758", "address": "669 Micieli Place, Cliffside, Michigan, 9554", "about": "Consequat consectetur id aliquip adipisicing est nisi aliqua sit qui. Ut exercitation mollit cupidatat exercitation commodo eu do laborum minim velit laboris mollit. Anim ea velit veniam eu nulla nisi. Tempor amet dolore commodo consequat enim non in mollit Lorem. Veniam consequat voluptate esse duis minim enim laborum. Sint elit aute sunt velit excepteur voluptate voluptate laborum pariatur nisi magna. Est ut ad eiusmod nulla.\r\n", "registered": "2014-07-28T12:54:21-12:00", "latitude": -65.523141, "longitude": 114.56837, "tags": [ "nisi", "culpa", "ea", "nostrud", "voluptate", "labore", "commodo" ], "friends": [ { "id": 0, "name": "Rhoda Barnett" }, { "id": 1, "name": "Myrna Morin" }, { "id": 2, "name": "Johnston Scott" } ], "greeting": "Hello, Noemi Long! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bda533a75432e69d3", "index": 4778, "guid": "6c98012a-d569-4229-bb56-68260c856ae8", "isActive": false, "balance": "$2,637.14", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Shepard Prince", "gender": "male", "company": "COMTREK", "email": "shepardprince@comtrek.com", "phone": "+1 (922) 600-3766", "address": "331 Crawford Avenue, Germanton, Kansas, 9382", "about": "Exercitation occaecat est dolor duis ullamco velit elit dolor pariatur consequat. Commodo consequat fugiat reprehenderit aute minim enim est dolor consequat. Est dolor culpa laborum aliquip in eiusmod irure culpa enim aliqua qui excepteur dolore exercitation. Qui culpa reprehenderit qui nulla magna ad labore. Do ut consequat sint aliqua nulla est deserunt ut magna deserunt occaecat.\r\n", "registered": "2014-09-09T15:44:37-12:00", "latitude": 37.508237, "longitude": -42.241408, "tags": [ "ipsum", "laborum", "fugiat", "labore", "nostrud", "fugiat", "elit" ], "friends": [ { "id": 0, "name": "Darcy Ryan" }, { "id": 1, "name": "Dee Knox" }, { "id": 2, "name": "Boyle Yang" } ], "greeting": "Hello, Shepard Prince! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b72e53cedac7fa9f0", "index": 4779, "guid": "8a9d043a-489a-4897-88b5-293eb9029d69", "isActive": false, "balance": "$3,392.82", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Browning Baldwin", "gender": "male", "company": "TSUNAMIA", "email": "browningbaldwin@tsunamia.com", "phone": "+1 (901) 556-3444", "address": "185 Gerald Court, Seymour, South Dakota, 237", "about": "Culpa elit nisi in adipisicing mollit enim sit labore aliqua reprehenderit. Ad ad in ad adipisicing velit aute minim mollit qui est sit. Dolore eu reprehenderit excepteur sit in consequat incididunt excepteur veniam nulla nisi deserunt eiusmod et. Labore et labore deserunt ut labore ipsum dolor occaecat aliqua. Amet laboris culpa reprehenderit qui tempor aute magna culpa aute mollit. Irure irure consequat aute labore minim et irure.\r\n", "registered": "2014-03-09T07:41:44-13:00", "latitude": -85.300459, "longitude": -130.221309, "tags": [ "ex", "cupidatat", "laborum", "minim", "esse", "ullamco", "irure" ], "friends": [ { "id": 0, "name": "Pena Hall" }, { "id": 1, "name": "Pearlie Joyner" }, { "id": 2, "name": "Teresa Goodwin" } ], "greeting": "Hello, Browning Baldwin! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bac0e00121945de76", "index": 4780, "guid": "baf225ca-db4a-469e-ab0a-8467f4e48643", "isActive": false, "balance": "$1,127.45", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Barr Munoz", "gender": "male", "company": "ANACHO", "email": "barrmunoz@anacho.com", "phone": "+1 (817) 426-3080", "address": "695 Reed Street, Franklin, West Virginia, 6295", "about": "Ut laborum amet deserunt aute sit quis ex fugiat aute occaecat. Excepteur nisi commodo laboris deserunt aliqua sunt mollit esse ex aliquip cillum nulla aliquip. Nisi veniam cupidatat dolor duis velit ea magna aute veniam commodo occaecat sit. Labore voluptate exercitation officia qui commodo eiusmod aliqua qui do enim dolore adipisicing. Occaecat deserunt commodo do magna non tempor eu ipsum sunt. Et veniam et eu laborum anim fugiat. Veniam tempor dolor laborum eu minim esse sunt mollit.\r\n", "registered": "2014-08-06T22:02:48-12:00", "latitude": -33.403215, "longitude": 62.296067, "tags": [ "excepteur", "officia", "magna", "aliqua", "ex", "voluptate", "labore" ], "friends": [ { "id": 0, "name": "Bradshaw Bush" }, { "id": 1, "name": "James Ramos" }, { "id": 2, "name": "Louella Wagner" } ], "greeting": "Hello, Barr Munoz! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bf94657ddb21a9f8f", "index": 4781, "guid": "512702d0-15de-46ca-9620-d2c4590ff55f", "isActive": true, "balance": "$3,607.93", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Elinor Sandoval", "gender": "female", "company": "PAPRICUT", "email": "elinorsandoval@papricut.com", "phone": "+1 (948) 585-2691", "address": "846 Hinsdale Street, Richville, Texas, 6085", "about": "Aute Lorem incididunt labore qui et ea est laboris sit ipsum amet ut. Laboris id id exercitation consequat in cupidatat ea dolore aliqua Lorem et sit. Duis consequat voluptate magna magna nisi commodo elit excepteur aute ipsum mollit dolore velit. Ipsum sit eiusmod anim consequat fugiat mollit quis elit consequat nulla. Culpa tempor consectetur elit sint. Esse proident esse deserunt sint aute. Quis ex dolor reprehenderit duis eiusmod laboris excepteur non ut pariatur.\r\n", "registered": "2014-03-15T20:42:19-13:00", "latitude": -70.424213, "longitude": -88.15693, "tags": [ "nisi", "ad", "in", "laborum", "anim", "commodo", "Lorem" ], "friends": [ { "id": 0, "name": "Marian Bentley" }, { "id": 1, "name": "Oliver Skinner" }, { "id": 2, "name": "Ayers Sharpe" } ], "greeting": "Hello, Elinor Sandoval! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ba39d03c90d5eda23", "index": 4782, "guid": "bb4b045f-ef40-47a3-82d0-8c9ecc84ae4a", "isActive": false, "balance": "$1,056.00", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Burks Hull", "gender": "male", "company": "MEGALL", "email": "burkshull@megall.com", "phone": "+1 (980) 442-3099", "address": "364 Chester Street, Bluffview, Oregon, 2599", "about": "Minim culpa eu aute nostrud sit mollit dolore occaecat magna excepteur duis aliquip velit est. Deserunt non sunt consequat Lorem duis adipisicing qui esse reprehenderit elit. Occaecat in ad ad anim Lorem. Enim consequat cupidatat labore quis nisi cupidatat adipisicing duis ipsum tempor reprehenderit mollit non.\r\n", "registered": "2014-07-16T03:01:37-12:00", "latitude": 26.092781, "longitude": 11.687594, "tags": [ "nulla", "incididunt", "pariatur", "qui", "dolore", "et", "consectetur" ], "friends": [ { "id": 0, "name": "Savannah Carney" }, { "id": 1, "name": "Hatfield Heath" }, { "id": 2, "name": "Russo Ortega" } ], "greeting": "Hello, Burks Hull! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b25fb221b2491cad2", "index": 4783, "guid": "fcf3c3b0-8752-4bcb-bc3e-aaf67c2d37a3", "isActive": true, "balance": "$1,553.67", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Hester Charles", "gender": "male", "company": "EXOSPACE", "email": "hestercharles@exospace.com", "phone": "+1 (903) 497-2558", "address": "901 Summit Street, Grandview, Nevada, 1686", "about": "Excepteur proident quis do ea excepteur. Tempor deserunt qui voluptate exercitation dolor Lorem elit. Anim Lorem sit sint dolor ullamco. Ad id eiusmod fugiat et consectetur eiusmod sint nostrud labore. Eu id laborum tempor ullamco Lorem irure.\r\n", "registered": "2014-07-06T19:39:02-12:00", "latitude": -13.035805, "longitude": -137.062199, "tags": [ "eu", "aliquip", "eu", "aute", "sit", "tempor", "duis" ], "friends": [ { "id": 0, "name": "Lisa Hill" }, { "id": 1, "name": "Alberta Thompson" }, { "id": 2, "name": "Erica Huffman" } ], "greeting": "Hello, Hester Charles! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b88212a5b900c4386", "index": 4784, "guid": "70e28bd5-42f6-4ce2-b30e-c16278a86fb0", "isActive": false, "balance": "$2,271.44", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Laurel Bishop", "gender": "female", "company": "BEDDER", "email": "laurelbishop@bedder.com", "phone": "+1 (997) 542-2993", "address": "758 Prince Street, Hatteras, Minnesota, 5060", "about": "Duis in velit et in enim deserunt ullamco proident est et nostrud. Dolore irure laboris irure tempor qui commodo id. Fugiat eu irure fugiat excepteur irure commodo. Nulla elit id elit officia consectetur duis irure. Consequat sint ex non reprehenderit aute veniam.\r\n", "registered": "2014-06-27T08:27:52-12:00", "latitude": -2.327639, "longitude": -92.328452, "tags": [ "consequat", "pariatur", "adipisicing", "fugiat", "Lorem", "elit", "sunt" ], "friends": [ { "id": 0, "name": "Mejia Jimenez" }, { "id": 1, "name": "Olive Morris" }, { "id": 2, "name": "Winifred Gentry" } ], "greeting": "Hello, Laurel Bishop! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2becbe0b0906a0d147", "index": 4785, "guid": "e2013a47-2c45-45bb-9a26-a51f66521856", "isActive": false, "balance": "$3,099.94", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Gonzalez Estes", "gender": "male", "company": "NSPIRE", "email": "gonzalezestes@nspire.com", "phone": "+1 (955) 525-3910", "address": "308 Cozine Avenue, Marienthal, Missouri, 6336", "about": "Enim non aliqua non non. Labore ea laborum cillum eu ex. Exercitation adipisicing aute ipsum sit consectetur et laborum magna velit culpa ut ipsum voluptate.\r\n", "registered": "2014-07-07T04:10:03-12:00", "latitude": -75.176896, "longitude": 82.794736, "tags": [ "velit", "culpa", "do", "ad", "est", "aliqua", "commodo" ], "friends": [ { "id": 0, "name": "Deana Tate" }, { "id": 1, "name": "Chan Tyson" }, { "id": 2, "name": "Buckner Stanton" } ], "greeting": "Hello, Gonzalez Estes! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bc94c416210983572", "index": 4786, "guid": "580d397e-3ded-46f1-a02a-775cef108401", "isActive": false, "balance": "$2,507.30", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Carroll Pope", "gender": "male", "company": "GEEKOSIS", "email": "carrollpope@geekosis.com", "phone": "+1 (857) 492-2000", "address": "821 Dupont Street, Rosewood, Rhode Island, 4776", "about": "Lorem laborum esse minim aliqua minim cillum culpa fugiat fugiat qui proident ipsum qui sint. Adipisicing sit deserunt tempor incididunt officia do tempor nostrud in adipisicing. Reprehenderit duis in deserunt id. Laborum ipsum eiusmod elit ea.\r\n", "registered": "2014-03-15T23:36:44-13:00", "latitude": -28.484039, "longitude": 142.371205, "tags": [ "sit", "nostrud", "proident", "veniam", "do", "incididunt", "aute" ], "friends": [ { "id": 0, "name": "Joanne Galloway" }, { "id": 1, "name": "Jeannette Compton" }, { "id": 2, "name": "Ruthie Morgan" } ], "greeting": "Hello, Carroll Pope! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b959e4143c2f345b6", "index": 4787, "guid": "751d4136-dc84-4f12-b38f-a71771ed88c4", "isActive": true, "balance": "$1,528.28", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Byrd Meadows", "gender": "male", "company": "COASH", "email": "byrdmeadows@coash.com", "phone": "+1 (868) 592-2225", "address": "546 Caton Avenue, Sharon, Florida, 8086", "about": "Laborum Lorem velit laborum deserunt laborum quis esse. Deserunt veniam labore pariatur amet ex cillum est tempor esse. Cillum tempor id fugiat magna. Mollit et dolor ad esse veniam aliquip nisi aliquip est quis ut. Dolore adipisicing incididunt labore enim aute ullamco occaecat. Enim exercitation occaecat eu sint ad consectetur qui laboris fugiat cupidatat non. Aute nostrud ad proident eu esse occaecat do minim.\r\n", "registered": "2014-09-16T01:45:51-12:00", "latitude": -79.046469, "longitude": -100.653812, "tags": [ "enim", "occaecat", "in", "dolore", "non", "minim", "aliqua" ], "friends": [ { "id": 0, "name": "Brigitte Paul" }, { "id": 1, "name": "Jennie Browning" }, { "id": 2, "name": "Ellison Knapp" } ], "greeting": "Hello, Byrd Meadows! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b93fdd54f631cce79", "index": 4788, "guid": "cd21066f-a13e-44c2-9d04-84c28528da42", "isActive": true, "balance": "$2,565.15", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Faulkner Santos", "gender": "male", "company": "REPETWIRE", "email": "faulknersantos@repetwire.com", "phone": "+1 (895) 442-3848", "address": "564 Eldert Street, Konterra, North Carolina, 8804", "about": "Et irure tempor do excepteur sit aliqua voluptate incididunt est id. Labore esse et occaecat consequat id labore mollit laborum qui. Eu cupidatat velit nostrud magna eu nisi voluptate laborum minim culpa pariatur. Minim nostrud ea incididunt dolor dolor adipisicing dolore incididunt. Excepteur irure anim exercitation commodo ut minim cillum consectetur amet fugiat do amet.\r\n", "registered": "2014-08-22T04:38:49-12:00", "latitude": 45.923348, "longitude": 64.644367, "tags": [ "tempor", "voluptate", "quis", "sit", "cillum", "amet", "adipisicing" ], "friends": [ { "id": 0, "name": "Farmer Frank" }, { "id": 1, "name": "Morgan Bird" }, { "id": 2, "name": "Misty Bryan" } ], "greeting": "Hello, Faulkner Santos! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b732e9a067468bc12", "index": 4789, "guid": "61df0d48-3eb4-4ed2-9efc-a950666d8f5f", "isActive": false, "balance": "$2,178.13", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Kara Joyce", "gender": "female", "company": "ZOGAK", "email": "karajoyce@zogak.com", "phone": "+1 (956) 538-3905", "address": "171 Revere Place, Waterview, New Hampshire, 5960", "about": "Mollit cupidatat nisi nulla et labore. Veniam mollit veniam elit est labore velit culpa veniam reprehenderit minim non commodo. Veniam duis consequat quis excepteur. Amet ea et pariatur quis ipsum proident pariatur est.\r\n", "registered": "2014-06-07T16:11:21-12:00", "latitude": 74.385122, "longitude": 98.308228, "tags": [ "laboris", "exercitation", "nostrud", "duis", "laborum", "duis", "aute" ], "friends": [ { "id": 0, "name": "Christina Wilcox" }, { "id": 1, "name": "Davis Dawson" }, { "id": 2, "name": "Trisha Glover" } ], "greeting": "Hello, Kara Joyce! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2baccefb5d3cfcf2d2", "index": 4790, "guid": "8c78538b-8469-4ba6-9669-997c9af90e6f", "isActive": false, "balance": "$2,000.27", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Kelsey Mcknight", "gender": "female", "company": "PHEAST", "email": "kelseymcknight@pheast.com", "phone": "+1 (852) 489-2151", "address": "770 Wilson Street, Rockingham, Arkansas, 289", "about": "Aliqua incididunt fugiat do velit tempor dolor. Magna esse culpa ad eu consequat. Cillum ex laborum eu duis irure deserunt cupidatat anim. Irure ad dolore in ad est excepteur est mollit cupidatat non excepteur deserunt enim voluptate. Tempor exercitation aliquip ipsum enim cupidatat laborum ad culpa minim sunt.\r\n", "registered": "2014-06-03T07:02:57-12:00", "latitude": 76.459709, "longitude": 21.353461, "tags": [ "ipsum", "aute", "nostrud", "aliqua", "ex", "quis", "eu" ], "friends": [ { "id": 0, "name": "Frank Harris" }, { "id": 1, "name": "Lewis Price" }, { "id": 2, "name": "Pollard Mckee" } ], "greeting": "Hello, Kelsey Mcknight! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b41b741f242d54b5c", "index": 4791, "guid": "4ae34fa5-b447-45e0-aac9-e82105dfd64d", "isActive": true, "balance": "$1,732.30", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Powers Mcguire", "gender": "male", "company": "BICOL", "email": "powersmcguire@bicol.com", "phone": "+1 (983) 462-2454", "address": "484 Ellery Street, Vaughn, Iowa, 3204", "about": "Lorem dolor voluptate reprehenderit sint nulla ea laboris excepteur do reprehenderit reprehenderit do pariatur. Fugiat veniam in magna officia elit quis duis in enim nulla sint eiusmod consequat. Dolore elit ad ullamco voluptate laborum do exercitation veniam incididunt.\r\n", "registered": "2014-05-15T18:31:46-12:00", "latitude": 67.319444, "longitude": 41.077655, "tags": [ "in", "laborum", "mollit", "deserunt", "elit", "aute", "aliquip" ], "friends": [ { "id": 0, "name": "Leach Gray" }, { "id": 1, "name": "Dina Sheppard" }, { "id": 2, "name": "Olga Kaufman" } ], "greeting": "Hello, Powers Mcguire! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b4c2365673201b531", "index": 4792, "guid": "242ce6c9-85a0-4216-9b12-b0fe06e61356", "isActive": false, "balance": "$3,583.02", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Pacheco Chavez", "gender": "male", "company": "GALLAXIA", "email": "pachecochavez@gallaxia.com", "phone": "+1 (861) 420-2437", "address": "676 Thornton Street, Marion, Nebraska, 4379", "about": "Ut ex eiusmod laboris proident Lorem irure et eiusmod dolor in irure nostrud adipisicing anim. Sint aute duis esse tempor et consectetur voluptate eiusmod. Mollit mollit aliqua qui sunt et.\r\n", "registered": "2014-07-09T09:51:22-12:00", "latitude": 8.733934, "longitude": -151.257661, "tags": [ "velit", "velit", "nisi", "mollit", "cupidatat", "nisi", "culpa" ], "friends": [ { "id": 0, "name": "Earnestine Nichols" }, { "id": 1, "name": "Foster Mathews" }, { "id": 2, "name": "Rodriquez Young" } ], "greeting": "Hello, Pacheco Chavez! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bdfcb07764ba79f75", "index": 4793, "guid": "cca2b94a-66ed-436c-bde5-7acd91e92eed", "isActive": false, "balance": "$2,297.48", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Wyatt Santana", "gender": "male", "company": "PHUEL", "email": "wyattsantana@phuel.com", "phone": "+1 (872) 415-2215", "address": "669 Fulton Street, Bancroft, District Of Columbia, 8381", "about": "Non veniam laborum qui adipisicing consequat nisi cupidatat do. Nulla quis adipisicing tempor nostrud nisi id nulla do eu eu cupidatat ullamco quis. Id nisi laborum deserunt pariatur dolor. Excepteur enim sint enim elit.\r\n", "registered": "2014-07-28T14:00:02-12:00", "latitude": -23.442648, "longitude": 64.270213, "tags": [ "reprehenderit", "aliqua", "eiusmod", "ea", "laboris", "deserunt", "veniam" ], "friends": [ { "id": 0, "name": "Marlene Mcneil" }, { "id": 1, "name": "Jordan Lang" }, { "id": 2, "name": "Cunningham Obrien" } ], "greeting": "Hello, Wyatt Santana! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b4d7a84b867000ec9", "index": 4794, "guid": "baed2540-545b-436b-a310-47b3dc9864b3", "isActive": false, "balance": "$1,690.27", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Ernestine Todd", "gender": "female", "company": "SINGAVERA", "email": "ernestinetodd@singavera.com", "phone": "+1 (867) 489-2278", "address": "997 Aviation Road, Lawrence, New Jersey, 7856", "about": "Et in Lorem id excepteur adipisicing laboris ex nostrud quis. Minim amet voluptate magna proident aliquip occaecat aliquip sunt non cillum ex. Sit ea velit nulla consectetur exercitation proident Lorem eiusmod deserunt amet. Labore anim laboris Lorem consequat adipisicing. Proident sunt sunt dolore in sit reprehenderit voluptate mollit. Fugiat elit voluptate deserunt elit quis culpa pariatur fugiat cillum reprehenderit minim. Do sit duis laboris officia laborum esse velit Lorem sunt dolor.\r\n", "registered": "2014-03-18T06:59:36-13:00", "latitude": 85.577899, "longitude": 142.137879, "tags": [ "enim", "et", "cillum", "officia", "mollit", "culpa", "velit" ], "friends": [ { "id": 0, "name": "Lynette Holcomb" }, { "id": 1, "name": "Jackie Bolton" }, { "id": 2, "name": "Montoya Wise" } ], "greeting": "Hello, Ernestine Todd! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b30b8f97d1153744b", "index": 4795, "guid": "1b26bfe6-2f6c-4255-b52b-dd7ccb61124c", "isActive": true, "balance": "$3,899.38", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Sandra Humphrey", "gender": "female", "company": "EVENTEX", "email": "sandrahumphrey@eventex.com", "phone": "+1 (805) 575-3158", "address": "145 Arkansas Drive, Hardyville, Palau, 2582", "about": "Elit incididunt exercitation enim excepteur ad occaecat. Deserunt consectetur do culpa reprehenderit irure enim incididunt magna officia aute ad. Est aute amet aliquip cupidatat magna mollit. Irure adipisicing ullamco incididunt est ipsum adipisicing id aute sit voluptate exercitation.\r\n", "registered": "2014-04-29T21:45:31-12:00", "latitude": 57.756985, "longitude": 83.804233, "tags": [ "exercitation", "et", "sint", "exercitation", "adipisicing", "laborum", "sint" ], "friends": [ { "id": 0, "name": "Monroe Mclean" }, { "id": 1, "name": "Luisa Calhoun" }, { "id": 2, "name": "Megan Carroll" } ], "greeting": "Hello, Sandra Humphrey! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b31616dd9d1ac924e", "index": 4796, "guid": "348b7978-8bba-452b-987d-7675384751d3", "isActive": false, "balance": "$1,081.70", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Georgia Little", "gender": "female", "company": "UPDAT", "email": "georgialittle@updat.com", "phone": "+1 (898) 595-3742", "address": "167 Kensington Walk, Hasty, Puerto Rico, 6841", "about": "Proident magna labore culpa et in aute aute proident eiusmod dolor est dolor aute. Ea sint sint in do cupidatat ipsum eu. Aliquip veniam id labore adipisicing irure nostrud quis eiusmod aute pariatur occaecat sunt.\r\n", "registered": "2014-09-17T05:54:33-12:00", "latitude": 37.104728, "longitude": -34.729726, "tags": [ "non", "excepteur", "occaecat", "officia", "laboris", "do", "velit" ], "friends": [ { "id": 0, "name": "Wendy Adkins" }, { "id": 1, "name": "Waters Alvarado" }, { "id": 2, "name": "Gaines Wiggins" } ], "greeting": "Hello, Georgia Little! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bfb36dc01e18a02f2", "index": 4797, "guid": "3f569b5d-1bd5-45e0-a19f-a3137fda4832", "isActive": false, "balance": "$2,090.12", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Cotton Oneal", "gender": "male", "company": "ANIXANG", "email": "cottononeal@anixang.com", "phone": "+1 (959) 539-3827", "address": "214 Rost Place, Sanborn, California, 2775", "about": "Culpa nostrud et consequat commodo. Dolor cupidatat reprehenderit quis culpa cillum tempor cillum laboris id. Esse minim elit id cillum do velit. Et voluptate veniam nisi qui qui fugiat ut sint esse quis qui ipsum excepteur pariatur.\r\n", "registered": "2014-05-28T03:59:24-12:00", "latitude": -34.070493, "longitude": 124.054869, "tags": [ "dolore", "cillum", "deserunt", "veniam", "reprehenderit", "proident", "aliqua" ], "friends": [ { "id": 0, "name": "Marilyn Lopez" }, { "id": 1, "name": "Simon Osborn" }, { "id": 2, "name": "Rios Duran" } ], "greeting": "Hello, Cotton Oneal! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bf26c4d84f37d6d1b", "index": 4798, "guid": "45f35ea7-0fb2-40e3-abed-4b52b986150d", "isActive": true, "balance": "$1,685.15", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Reba Russo", "gender": "female", "company": "CUBICIDE", "email": "rebarusso@cubicide.com", "phone": "+1 (846) 592-3106", "address": "460 Fleet Walk, Breinigsville, Vermont, 7732", "about": "Enim ullamco nisi id nulla labore irure adipisicing voluptate ea ad irure nulla do reprehenderit. Reprehenderit aute anim laboris eiusmod commodo veniam nulla fugiat aute occaecat laboris Lorem veniam ullamco. In incididunt Lorem aute in quis. Labore nisi anim aliquip tempor laborum ad labore ut. Esse enim sint nulla exercitation sint eu sunt aliquip non non nisi sunt. Excepteur elit dolor amet ex excepteur nisi nostrud Lorem enim anim nisi magna. Consectetur deserunt fugiat deserunt deserunt duis ex reprehenderit enim nisi incididunt excepteur Lorem eu.\r\n", "registered": "2014-08-23T07:06:11-12:00", "latitude": 34.346127, "longitude": -22.252125, "tags": [ "consequat", "quis", "occaecat", "aliqua", "laboris", "dolore", "dolore" ], "friends": [ { "id": 0, "name": "Craft Moran" }, { "id": 1, "name": "Ethel Rios" }, { "id": 2, "name": "Julia Rivas" } ], "greeting": "Hello, Reba Russo! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b4b6a981a73d07d1f", "index": 4799, "guid": "6e6f14d3-1f45-4d7f-9bc6-cbb8782419a8", "isActive": true, "balance": "$1,463.32", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Jimmie Leblanc", "gender": "female", "company": "EARTHWAX", "email": "jimmieleblanc@earthwax.com", "phone": "+1 (940) 509-3605", "address": "341 Auburn Place, Graball, Indiana, 7007", "about": "Qui dolor non ex Lorem dolor. Eu dolore deserunt officia elit mollit sint laborum minim magna ipsum tempor nostrud reprehenderit. Amet do do occaecat laboris Lorem dolor ex consequat aute aliqua. Adipisicing deserunt amet id fugiat tempor minim excepteur sit sunt deserunt. Consequat esse culpa minim labore occaecat laboris quis mollit. Eiusmod sint minim anim duis.\r\n", "registered": "2014-08-10T13:10:25-12:00", "latitude": -84.040744, "longitude": -179.465875, "tags": [ "aliquip", "mollit", "ipsum", "Lorem", "cillum", "ea", "cupidatat" ], "friends": [ { "id": 0, "name": "Katrina Navarro" }, { "id": 1, "name": "Luz Pratt" }, { "id": 2, "name": "Regina Mercer" } ], "greeting": "Hello, Jimmie Leblanc! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b5d495e0d3d8b764a", "index": 4800, "guid": "fc081c79-bbe7-4546-b3a7-c050237bedcc", "isActive": true, "balance": "$3,224.57", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Iris Chan", "gender": "female", "company": "BRAINQUIL", "email": "irischan@brainquil.com", "phone": "+1 (936) 418-3495", "address": "524 Nostrand Avenue, Brookfield, Illinois, 1423", "about": "Nostrud pariatur esse elit eiusmod quis nulla Lorem qui elit non. Commodo incididunt eiusmod dolor dolor esse nisi Lorem esse culpa irure esse dolore culpa. Sunt non dolore non eiusmod anim proident dolor et. Cillum proident officia elit in duis magna ut. Fugiat nulla eiusmod ex ut exercitation ea id culpa elit. Cillum voluptate nisi voluptate sint cupidatat deserunt.\r\n", "registered": "2014-01-19T01:28:10-13:00", "latitude": -50.039666, "longitude": 45.788306, "tags": [ "irure", "eiusmod", "ullamco", "Lorem", "velit", "esse", "do" ], "friends": [ { "id": 0, "name": "Nicole Carter" }, { "id": 1, "name": "Price Cantu" }, { "id": 2, "name": "Ella Alvarez" } ], "greeting": "Hello, Iris Chan! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b85795e02cd860478", "index": 4801, "guid": "603084e7-b95c-4235-859a-ed52388b800e", "isActive": true, "balance": "$2,107.74", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Lorene Benjamin", "gender": "female", "company": "VALREDA", "email": "lorenebenjamin@valreda.com", "phone": "+1 (867) 572-3045", "address": "354 Mill Road, Herbster, South Carolina, 4013", "about": "Officia esse ullamco Lorem aliqua non aute incididunt cillum dolor dolore do nostrud ullamco. Excepteur occaecat amet esse sint. Ut sit consectetur Lorem pariatur ipsum velit. Minim anim anim labore proident anim labore occaecat commodo dolor ullamco ad id. In elit sit Lorem nisi sint exercitation aliqua. Consequat culpa incididunt velit eu enim sunt ex in. Et sunt commodo reprehenderit laborum quis non ullamco labore sint duis.\r\n", "registered": "2014-07-14T22:56:07-12:00", "latitude": 80.64679, "longitude": 11.008519, "tags": [ "incididunt", "adipisicing", "consequat", "ad", "excepteur", "incididunt", "nostrud" ], "friends": [ { "id": 0, "name": "Lenora Strickland" }, { "id": 1, "name": "Carver Schroeder" }, { "id": 2, "name": "Moore Barker" } ], "greeting": "Hello, Lorene Benjamin! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b83e666d1387c28ff", "index": 4802, "guid": "4a31a153-e416-43a4-b270-7e4b95f70688", "isActive": true, "balance": "$3,915.60", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Garrison Schultz", "gender": "male", "company": "ISOLOGICS", "email": "garrisonschultz@isologics.com", "phone": "+1 (807) 553-2342", "address": "802 Quay Street, Englevale, American Samoa, 7748", "about": "Excepteur sit id reprehenderit do sint enim enim velit ex dolore mollit elit. Pariatur aliqua dolore ullamco proident fugiat occaecat exercitation ea excepteur culpa adipisicing eu voluptate. Sint ut deserunt ea est labore nostrud aute laborum Lorem tempor ad ut veniam. Dolor enim do aliquip tempor Lorem laboris quis Lorem ex. Deserunt nulla esse veniam esse eu sit pariatur ex pariatur anim aliquip tempor reprehenderit. Eiusmod ea amet ullamco consectetur ut reprehenderit sit aliquip veniam ea.\r\n", "registered": "2014-09-19T17:54:50-12:00", "latitude": 13.756146, "longitude": -135.150605, "tags": [ "fugiat", "exercitation", "Lorem", "eiusmod", "dolore", "ullamco", "irure" ], "friends": [ { "id": 0, "name": "Melba Torres" }, { "id": 1, "name": "Glenna Boyd" }, { "id": 2, "name": "Peterson Franco" } ], "greeting": "Hello, Garrison Schultz! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b43c8d60ba0f73bf3", "index": 4803, "guid": "5ab8ddea-e49b-4d54-aa82-483d4848b93a", "isActive": true, "balance": "$2,201.22", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Josie Houston", "gender": "female", "company": "COMTOURS", "email": "josiehouston@comtours.com", "phone": "+1 (802) 591-3680", "address": "991 Willow Place, Weedville, Delaware, 8263", "about": "Reprehenderit dolore minim ad Lorem irure nostrud. Esse et officia ut nostrud nostrud dolor aliqua ut. In incididunt magna ea magna. Duis minim culpa minim esse elit fugiat elit enim. Ea reprehenderit sunt minim dolore ipsum cillum deserunt ullamco nisi officia sint consequat culpa. Incididunt ex nulla nulla laboris laboris est. Cillum ipsum nisi non ex in velit.\r\n", "registered": "2014-08-18T08:55:57-12:00", "latitude": -76.883868, "longitude": 44.877485, "tags": [ "do", "aute", "Lorem", "velit", "nisi", "proident", "aliqua" ], "friends": [ { "id": 0, "name": "Janis Ratliff" }, { "id": 1, "name": "Nunez Benton" }, { "id": 2, "name": "Nita Roman" } ], "greeting": "Hello, Josie Houston! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b036aaa266a967ad7", "index": 4804, "guid": "46c85383-8eaa-43c5-89ae-65d3851a0b17", "isActive": false, "balance": "$2,683.79", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Lauren Schneider", "gender": "female", "company": "REVERSUS", "email": "laurenschneider@reversus.com", "phone": "+1 (926) 409-3614", "address": "859 Hillel Place, Alamo, Pennsylvania, 4019", "about": "Enim dolore do adipisicing est ex cillum. Mollit ullamco consectetur veniam cupidatat pariatur pariatur in dolore Lorem minim excepteur eu velit. Deserunt eu do irure ullamco ullamco consequat dolore incididunt ea nisi laborum labore. Ad reprehenderit enim do dolore.\r\n", "registered": "2014-09-03T01:28:39-12:00", "latitude": 77.215762, "longitude": -60.414245, "tags": [ "veniam", "occaecat", "minim", "labore", "laboris", "reprehenderit", "ipsum" ], "friends": [ { "id": 0, "name": "Lynnette Brady" }, { "id": 1, "name": "Felecia Shannon" }, { "id": 2, "name": "Lucas Coleman" } ], "greeting": "Hello, Lauren Schneider! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b6352b5dd087243c4", "index": 4805, "guid": "55ba8eb7-bb22-4b35-b1de-35c362b5707e", "isActive": false, "balance": "$2,838.70", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Manuela Ochoa", "gender": "female", "company": "ELITA", "email": "manuelaochoa@elita.com", "phone": "+1 (813) 472-2045", "address": "653 Gilmore Court, Hollymead, Georgia, 7071", "about": "Veniam quis reprehenderit ut enim incididunt exercitation labore. Deserunt pariatur officia voluptate laborum voluptate irure consectetur occaecat deserunt non excepteur officia. Commodo labore deserunt commodo amet irure deserunt dolore voluptate eiusmod incididunt nulla. Commodo tempor mollit ullamco nulla sunt non enim deserunt.\r\n", "registered": "2014-05-06T07:22:00-12:00", "latitude": 42.506307, "longitude": 75.413016, "tags": [ "et", "quis", "exercitation", "magna", "eu", "aliqua", "dolore" ], "friends": [ { "id": 0, "name": "Carey Mcclain" }, { "id": 1, "name": "Reese Lowe" }, { "id": 2, "name": "Nancy Hardin" } ], "greeting": "Hello, Manuela Ochoa! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b9eac40622e22cba1", "index": 4806, "guid": "dbfa3e67-ec63-4aad-931a-4de803d3389e", "isActive": false, "balance": "$3,053.09", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Deleon Watkins", "gender": "male", "company": "MONDICIL", "email": "deleonwatkins@mondicil.com", "phone": "+1 (954) 530-3800", "address": "672 Mill Street, Worcester, North Dakota, 9379", "about": "Laborum pariatur eiusmod consectetur sunt elit exercitation cupidatat. Laborum ad nisi adipisicing dolor quis fugiat do exercitation occaecat enim dolor nulla mollit aliqua. Dolore ea veniam Lorem nulla dolore veniam est ea qui. Excepteur nulla culpa cupidatat Lorem irure.\r\n", "registered": "2014-08-02T02:50:34-12:00", "latitude": -62.238783, "longitude": -73.303075, "tags": [ "magna", "qui", "deserunt", "id", "esse", "amet", "irure" ], "friends": [ { "id": 0, "name": "Holland Good" }, { "id": 1, "name": "Wiggins Cohen" }, { "id": 2, "name": "Clarke Gamble" } ], "greeting": "Hello, Deleon Watkins! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bd6a0c87ad8d84eaf", "index": 4807, "guid": "c02cb187-aa01-40c2-8a6d-7497a1f79345", "isActive": false, "balance": "$2,395.66", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Stewart Haynes", "gender": "male", "company": "NAXDIS", "email": "stewarthaynes@naxdis.com", "phone": "+1 (806) 516-3769", "address": "943 Albee Square, Alderpoint, Louisiana, 1362", "about": "Irure enim elit incididunt commodo. Consectetur tempor ad nulla excepteur nulla aute in velit minim incididunt labore exercitation mollit consectetur. Aute qui veniam exercitation reprehenderit adipisicing nulla Lorem est.\r\n", "registered": "2014-09-05T02:44:19-12:00", "latitude": -31.940573, "longitude": -166.328094, "tags": [ "proident", "mollit", "consequat", "sint", "est", "officia", "veniam" ], "friends": [ { "id": 0, "name": "Chandra Gibson" }, { "id": 1, "name": "Sarah Roth" }, { "id": 2, "name": "Case Camacho" } ], "greeting": "Hello, Stewart Haynes! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b3b5f3383874a7fb9", "index": 4808, "guid": "d24848d5-d129-4e0e-8d26-8fd8e76b86bf", "isActive": false, "balance": "$1,809.04", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Santana Branch", "gender": "male", "company": "DATAGENE", "email": "santanabranch@datagene.com", "phone": "+1 (805) 482-3532", "address": "120 Montgomery Street, Lydia, Northern Mariana Islands, 7496", "about": "Est nulla cillum proident ad et in consequat qui deserunt officia consequat ex commodo do. Consequat esse consectetur et voluptate proident ipsum adipisicing. Cupidatat veniam ut nisi duis ullamco in laborum nulla sunt cupidatat Lorem. Quis labore id anim enim commodo fugiat aliqua ea. Esse et nostrud ipsum veniam proident incididunt sunt et ad dolore laborum eiusmod veniam eu. Velit id consequat consectetur ullamco excepteur cillum Lorem eu nisi tempor.\r\n", "registered": "2014-01-02T02:04:09-13:00", "latitude": 36.340912, "longitude": 43.03093, "tags": [ "nostrud", "duis", "adipisicing", "Lorem", "non", "est", "sunt" ], "friends": [ { "id": 0, "name": "Briana Fuller" }, { "id": 1, "name": "Chasity Holden" }, { "id": 2, "name": "Delaney Butler" } ], "greeting": "Hello, Santana Branch! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b590d2b6e207fb058", "index": 4809, "guid": "6fbab3d5-ba70-4a52-9dcb-c6ca70affbd2", "isActive": true, "balance": "$1,751.28", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Josefa Horton", "gender": "female", "company": "ENERSAVE", "email": "josefahorton@enersave.com", "phone": "+1 (953) 418-3153", "address": "905 Fleet Street, Onton, Colorado, 5781", "about": "Esse sit ullamco dolore anim veniam. Laboris consequat dolore Lorem sunt exercitation in Lorem reprehenderit aute irure exercitation. Magna reprehenderit enim esse sit anim eu irure anim anim qui occaecat mollit mollit. Enim consectetur excepteur consectetur tempor non veniam laborum.\r\n", "registered": "2014-04-06T05:59:23-12:00", "latitude": 25.728334, "longitude": -56.513396, "tags": [ "commodo", "ipsum", "pariatur", "duis", "magna", "exercitation", "sint" ], "friends": [ { "id": 0, "name": "Lawrence Molina" }, { "id": 1, "name": "Ollie Le" }, { "id": 2, "name": "Barker Summers" } ], "greeting": "Hello, Josefa Horton! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b7a505bc1edc9b6f2", "index": 4810, "guid": "4274ecff-ab9a-49a2-818f-ef2e9879a514", "isActive": false, "balance": "$3,333.06", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Lula Gardner", "gender": "female", "company": "XELEGYL", "email": "lulagardner@xelegyl.com", "phone": "+1 (900) 585-3255", "address": "778 Rogers Avenue, Lindisfarne, Idaho, 1197", "about": "Veniam non ex aliqua elit eiusmod Lorem proident mollit fugiat. Exercitation non aute esse exercitation eu aute aute aliquip anim ullamco magna dolor. Aute ut laborum labore ea reprehenderit in aute eiusmod. Sint est cupidatat minim et aute et. Eiusmod aute non cillum sit eiusmod officia magna labore qui nisi sunt.\r\n", "registered": "2014-05-11T07:08:37-12:00", "latitude": -61.715789, "longitude": -113.039335, "tags": [ "Lorem", "sint", "ullamco", "minim", "ullamco", "cupidatat", "elit" ], "friends": [ { "id": 0, "name": "Snyder Wallace" }, { "id": 1, "name": "Sadie Johnson" }, { "id": 2, "name": "Stephenson Conner" } ], "greeting": "Hello, Lula Gardner! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2be18c344c4450910f", "index": 4811, "guid": "f56303b9-801b-4f8d-9a85-48aa1feff9d5", "isActive": true, "balance": "$3,531.04", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Jeannie Finch", "gender": "female", "company": "SUREMAX", "email": "jeanniefinch@suremax.com", "phone": "+1 (881) 457-2260", "address": "960 Folsom Place, Williamson, Marshall Islands, 6519", "about": "Adipisicing voluptate elit eiusmod sunt Lorem id aute qui magna incididunt. Laboris in irure voluptate Lorem officia culpa tempor qui cupidatat et est ullamco esse cillum. Ex sit ad ea excepteur nostrud sit enim laborum laboris laborum mollit. Ad minim cupidatat mollit quis duis cupidatat velit consequat fugiat eu.\r\n", "registered": "2014-07-16T14:12:31-12:00", "latitude": 23.389378, "longitude": 140.926471, "tags": [ "Lorem", "laborum", "deserunt", "exercitation", "nostrud", "ipsum", "duis" ], "friends": [ { "id": 0, "name": "Branch Haney" }, { "id": 1, "name": "Mckee Martin" }, { "id": 2, "name": "Holden Crosby" } ], "greeting": "Hello, Jeannie Finch! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bb828b20a998e2322", "index": 4812, "guid": "dda5e20b-218f-4ee9-b78d-45e8042c191b", "isActive": false, "balance": "$1,423.35", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Rosalind Lloyd", "gender": "female", "company": "GAZAK", "email": "rosalindlloyd@gazak.com", "phone": "+1 (927) 403-2888", "address": "445 Colin Place, Rote, New York, 1953", "about": "Aute velit laboris officia elit ad Lorem pariatur laboris eu consectetur nulla dolor Lorem. Eu exercitation deserunt esse pariatur ad cupidatat aliqua. Mollit veniam nisi est in dolor tempor dolor. Anim magna incididunt enim est velit labore nulla sint. Voluptate elit Lorem exercitation duis occaecat ullamco elit id veniam duis occaecat officia. Sint voluptate voluptate dolor ullamco nulla reprehenderit ea occaecat. Id est mollit nostrud exercitation mollit cupidatat sint dolore.\r\n", "registered": "2014-07-24T06:18:46-12:00", "latitude": -67.656267, "longitude": -19.276581, "tags": [ "sint", "Lorem", "labore", "laboris", "sit", "minim", "esse" ], "friends": [ { "id": 0, "name": "Morales Lester" }, { "id": 1, "name": "Harriet Whitfield" }, { "id": 2, "name": "Middleton Evans" } ], "greeting": "Hello, Rosalind Lloyd! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bb2571e39b8d3365a", "index": 4813, "guid": "1ebe0ab7-bada-4c05-8d67-ca489d6e5d01", "isActive": false, "balance": "$3,391.05", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Amy Blackburn", "gender": "female", "company": "OLUCORE", "email": "amyblackburn@olucore.com", "phone": "+1 (965) 594-3862", "address": "632 Grace Court, Kenmar, Guam, 5147", "about": "Qui voluptate laboris sit est minim Lorem veniam veniam minim minim. Sint eu eiusmod consequat esse eiusmod cupidatat est esse consequat. Dolore nulla amet reprehenderit aliqua velit sint consectetur laboris nostrud. Deserunt quis commodo aute tempor quis qui commodo fugiat ad. Occaecat duis adipisicing eu aliqua. Sint dolore incididunt proident voluptate ea cupidatat deserunt duis cillum. Consectetur Lorem do elit est culpa pariatur quis minim sint ipsum enim labore.\r\n", "registered": "2014-09-09T16:27:34-12:00", "latitude": 20.178738, "longitude": -178.492961, "tags": [ "labore", "fugiat", "sunt", "enim", "eu", "in", "consectetur" ], "friends": [ { "id": 0, "name": "Corinne Walter" }, { "id": 1, "name": "Cynthia Underwood" }, { "id": 2, "name": "Garcia William" } ], "greeting": "Hello, Amy Blackburn! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2baedcd3db7598f32d", "index": 4814, "guid": "4a476ed9-842f-41ee-b09a-6e4c1c992994", "isActive": true, "balance": "$3,071.97", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Elizabeth Mccarty", "gender": "female", "company": "AMTAP", "email": "elizabethmccarty@amtap.com", "phone": "+1 (902) 401-2996", "address": "874 Lafayette Walk, Darrtown, Virgin Islands, 2062", "about": "Proident qui eiusmod labore ipsum deserunt quis occaecat eiusmod nisi sit nulla sit elit aute. Eiusmod magna voluptate aute eiusmod mollit eiusmod enim officia est reprehenderit officia qui in. Duis laborum elit officia culpa est aliquip ea. Lorem nulla excepteur nostrud velit excepteur. Sit quis velit magna id id ut dolor.\r\n", "registered": "2014-02-21T23:05:31-13:00", "latitude": 45.956346, "longitude": 120.683842, "tags": [ "culpa", "aliquip", "aliquip", "cillum", "esse", "excepteur", "proident" ], "friends": [ { "id": 0, "name": "Celia Mullins" }, { "id": 1, "name": "Rowena Sweet" }, { "id": 2, "name": "Carmela Watts" } ], "greeting": "Hello, Elizabeth Mccarty! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2be043813f25046b74", "index": 4815, "guid": "147486f4-e03f-4750-97dd-a9e480a21c32", "isActive": true, "balance": "$3,912.14", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Tate Moreno", "gender": "male", "company": "SARASONIC", "email": "tatemoreno@sarasonic.com", "phone": "+1 (910) 420-2777", "address": "661 Bowery Street, Concho, Massachusetts, 9853", "about": "Quis nisi labore occaecat ut proident nulla exercitation aliqua Lorem pariatur adipisicing nisi. Lorem commodo voluptate nisi elit sit sunt ea exercitation officia anim irure cillum proident irure. Duis nulla ipsum dolore fugiat. Commodo nulla dolor deserunt aliquip commodo laboris enim adipisicing dolor dolor do cillum cupidatat qui.\r\n", "registered": "2014-03-08T14:09:35-13:00", "latitude": 73.899786, "longitude": 37.604004, "tags": [ "ea", "irure", "nostrud", "pariatur", "commodo", "deserunt", "magna" ], "friends": [ { "id": 0, "name": "Rita Mcmillan" }, { "id": 1, "name": "Nadia Greer" }, { "id": 2, "name": "Morrow Barron" } ], "greeting": "Hello, Tate Moreno! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ba0bf72ff05ec83b1", "index": 4816, "guid": "cb72d674-0c7a-49e7-912c-6d907298ffe7", "isActive": true, "balance": "$3,479.79", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Silva Flynn", "gender": "male", "company": "NAMEBOX", "email": "silvaflynn@namebox.com", "phone": "+1 (821) 447-3328", "address": "913 Franklin Street, Vale, Utah, 5989", "about": "Aliquip ea nostrud ea eiusmod ad excepteur pariatur. Proident aliquip elit occaecat elit elit incididunt voluptate do consectetur elit qui. Ut quis ex ullamco culpa ex eiusmod. Sint irure mollit nisi nisi pariatur eu nulla est. Mollit elit ea officia dolor commodo. Qui nulla ut occaecat culpa irure officia sint qui reprehenderit. Irure non consectetur magna duis sint occaecat.\r\n", "registered": "2014-03-27T22:56:43-13:00", "latitude": 59.596828, "longitude": 3.655152, "tags": [ "consectetur", "exercitation", "ad", "quis", "ad", "nisi", "veniam" ], "friends": [ { "id": 0, "name": "Rutledge Rasmussen" }, { "id": 1, "name": "Geneva Carson" }, { "id": 2, "name": "Kristin Michael" } ], "greeting": "Hello, Silva Flynn! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2baab62573afa4279f", "index": 4817, "guid": "a8eca71e-b247-400d-ae04-be06a15f76e3", "isActive": false, "balance": "$2,093.32", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Sofia Bond", "gender": "female", "company": "CENTICE", "email": "sofiabond@centice.com", "phone": "+1 (946) 513-2934", "address": "942 Stryker Street, Grill, Montana, 6686", "about": "Do dolor aliqua occaecat nostrud ut reprehenderit ipsum dolore tempor. Dolore aliqua veniam eiusmod consequat occaecat minim qui officia ea exercitation magna velit. Voluptate non exercitation nulla sit elit sint. Ipsum elit eu non in labore nulla adipisicing. In velit dolor enim do ex proident reprehenderit ipsum commodo sit. Officia tempor tempor pariatur ex occaecat duis velit.\r\n", "registered": "2014-01-04T12:14:20-13:00", "latitude": -9.261666, "longitude": -168.902376, "tags": [ "enim", "nulla", "proident", "laboris", "fugiat", "Lorem", "proident" ], "friends": [ { "id": 0, "name": "Morris Banks" }, { "id": 1, "name": "Hewitt Conley" }, { "id": 2, "name": "Morin Riddle" } ], "greeting": "Hello, Sofia Bond! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bd76e7db746e6f7b5", "index": 4818, "guid": "25084f22-5c70-4f90-95b8-4fcb9208b499", "isActive": true, "balance": "$1,916.72", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Estela Rosa", "gender": "female", "company": "HIVEDOM", "email": "estelarosa@hivedom.com", "phone": "+1 (801) 560-2857", "address": "931 Montgomery Place, Clarence, Wisconsin, 3048", "about": "Consectetur velit non nisi commodo anim ad laboris mollit ad ipsum reprehenderit quis dolore. Cillum veniam dolor exercitation laborum est mollit non anim pariatur. Reprehenderit est pariatur excepteur eiusmod esse enim dolor deserunt laboris. Laborum deserunt laboris consectetur labore reprehenderit deserunt ad nisi.\r\n", "registered": "2014-07-07T03:21:37-12:00", "latitude": -2.099453, "longitude": -37.370086, "tags": [ "incididunt", "laborum", "officia", "culpa", "id", "tempor", "reprehenderit" ], "friends": [ { "id": 0, "name": "Doris Palmer" }, { "id": 1, "name": "Gill Mckenzie" }, { "id": 2, "name": "Nellie Koch" } ], "greeting": "Hello, Estela Rosa! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b790e762aeb0c65d9", "index": 4819, "guid": "e25ad1c9-4bc4-4b11-b786-be4443ce75bd", "isActive": true, "balance": "$1,332.43", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Dalton Goodman", "gender": "male", "company": "FIBRODYNE", "email": "daltongoodman@fibrodyne.com", "phone": "+1 (916) 551-3119", "address": "150 Marconi Place, Coleville, Maine, 8540", "about": "Incididunt qui nostrud ut eu pariatur elit culpa ullamco ex. Ut incididunt nulla velit proident anim cupidatat sunt mollit pariatur. Do dolore minim id magna proident laboris eiusmod occaecat enim nisi duis voluptate. Sunt fugiat mollit sint mollit dolore officia Lorem veniam consectetur et deserunt voluptate cupidatat. Eiusmod veniam in ut officia consectetur ea pariatur magna aliqua esse qui commodo. Proident cupidatat et do excepteur dolor in laborum velit culpa aliqua incididunt sunt ea ad.\r\n", "registered": "2014-03-19T22:52:06-13:00", "latitude": -49.421063, "longitude": -26.855415, "tags": [ "et", "aliquip", "Lorem", "ipsum", "id", "irure", "tempor" ], "friends": [ { "id": 0, "name": "Walter Ray" }, { "id": 1, "name": "Dunlap Bradshaw" }, { "id": 2, "name": "Carol King" } ], "greeting": "Hello, Dalton Goodman! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ba344d0316bef1e63", "index": 4820, "guid": "00efc5b1-0105-4ddd-9046-da92bbc8c030", "isActive": true, "balance": "$3,556.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Reyes Bender", "gender": "male", "company": "KOG", "email": "reyesbender@kog.com", "phone": "+1 (996) 464-3123", "address": "368 Suydam Street, Thermal, Virginia, 4472", "about": "Excepteur nostrud ex ex eiusmod magna est adipisicing. Ea excepteur elit laboris nulla esse quis nostrud commodo culpa sint. Aliqua pariatur nulla minim labore ipsum do magna in ut qui irure proident tempor laboris. Est minim labore officia nostrud voluptate. Sint laboris anim sunt quis laboris consectetur ex reprehenderit minim commodo aliquip. Et dolore eu tempor in sunt consequat in aliqua dolor adipisicing est minim nulla.\r\n", "registered": "2014-03-17T18:53:31-13:00", "latitude": -43.754615, "longitude": 49.228803, "tags": [ "aute", "qui", "pariatur", "commodo", "proident", "est", "aliquip" ], "friends": [ { "id": 0, "name": "Gracie Garza" }, { "id": 1, "name": "Stephanie Nolan" }, { "id": 2, "name": "Vaughn Cote" } ], "greeting": "Hello, Reyes Bender! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ba6d0ea3055da90d0", "index": 4821, "guid": "a6381a8d-5085-4af4-9acc-8af50207fd0d", "isActive": false, "balance": "$1,911.19", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "brown", "name": "Heather Delacruz", "gender": "female", "company": "PREMIANT", "email": "heatherdelacruz@premiant.com", "phone": "+1 (826) 419-2980", "address": "864 Hancock Street, Harmon, Kentucky, 2015", "about": "Cillum laborum culpa Lorem qui elit. Anim occaecat dolor officia incididunt do labore sunt pariatur exercitation eiusmod. Aute commodo in duis qui ipsum voluptate aute commodo esse fugiat.\r\n", "registered": "2014-08-08T20:16:47-12:00", "latitude": 36.063067, "longitude": 67.655109, "tags": [ "nisi", "ipsum", "pariatur", "pariatur", "dolore", "ut", "occaecat" ], "friends": [ { "id": 0, "name": "Kristy Sanders" }, { "id": 1, "name": "Holly Ewing" }, { "id": 2, "name": "Maryellen Sexton" } ], "greeting": "Hello, Heather Delacruz! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bdd0b46062856425f", "index": 4822, "guid": "cec0664a-9dbd-4739-90ab-318dbeb62c90", "isActive": true, "balance": "$3,543.73", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Kirkland Salinas", "gender": "male", "company": "LIMAGE", "email": "kirklandsalinas@limage.com", "phone": "+1 (874) 463-2460", "address": "967 Tudor Terrace, Harleigh, Connecticut, 4501", "about": "Mollit pariatur duis dolore do adipisicing excepteur. Ea qui nisi fugiat ut enim velit incididunt. Aute Lorem consectetur nulla occaecat. Sunt ad qui ut minim enim in. Veniam velit amet commodo Lorem reprehenderit et aliqua proident Lorem qui ut. Duis sit magna pariatur voluptate sint duis velit et excepteur consequat.\r\n", "registered": "2014-04-08T00:41:29-12:00", "latitude": 76.827204, "longitude": 30.179815, "tags": [ "Lorem", "dolore", "laboris", "excepteur", "nisi", "incididunt", "anim" ], "friends": [ { "id": 0, "name": "Dolly Alexander" }, { "id": 1, "name": "Jodie Lane" }, { "id": 2, "name": "Toni Kline" } ], "greeting": "Hello, Kirkland Salinas! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b447430c0b036b23a", "index": 4823, "guid": "f99dff5d-83f6-48f0-822f-31a50641e8c5", "isActive": false, "balance": "$2,367.60", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Benson Lowery", "gender": "male", "company": "ELPRO", "email": "bensonlowery@elpro.com", "phone": "+1 (894) 409-3877", "address": "504 Cranberry Street, Libertytown, Mississippi, 7898", "about": "Do sint non nisi pariatur ullamco elit reprehenderit in voluptate exercitation. Reprehenderit dolore proident veniam reprehenderit laborum pariatur nostrud amet sunt eiusmod nostrud velit. Commodo est sint nulla id labore consectetur Lorem pariatur deserunt proident. Nostrud veniam enim non aute qui quis consequat Lorem sunt mollit et voluptate veniam. In ut nulla pariatur nisi veniam laborum est. Amet sunt eu in qui enim culpa commodo mollit ut sit minim nostrud. Excepteur cupidatat consequat fugiat velit ex esse nostrud dolor sit id exercitation.\r\n", "registered": "2014-04-13T17:46:42-12:00", "latitude": 67.022696, "longitude": -11.697513, "tags": [ "reprehenderit", "ea", "velit", "anim", "cillum", "cupidatat", "irure" ], "friends": [ { "id": 0, "name": "Chandler Dodson" }, { "id": 1, "name": "Bass Russell" }, { "id": 2, "name": "Bender Reese" } ], "greeting": "Hello, Benson Lowery! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b0531598fa8f6c5c5", "index": 4824, "guid": "f6f8d62a-aa3c-4b62-bc24-957d1674b3f9", "isActive": true, "balance": "$2,062.90", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "York Short", "gender": "male", "company": "OTHERWAY", "email": "yorkshort@otherway.com", "phone": "+1 (883) 544-2732", "address": "975 Reeve Place, Jeff, Washington, 2269", "about": "Cillum cupidatat consequat magna non fugiat ea nisi eiusmod do laboris amet ut laborum. Elit magna cillum anim aliqua aliquip duis culpa do voluptate nulla amet consectetur minim eu. Velit sit aute cupidatat officia officia Lorem laborum commodo excepteur eiusmod eiusmod in.\r\n", "registered": "2014-02-17T19:59:30-13:00", "latitude": 36.769059, "longitude": -120.563859, "tags": [ "amet", "est", "elit", "nulla", "non", "elit", "laborum" ], "friends": [ { "id": 0, "name": "Estella Cameron" }, { "id": 1, "name": "Graves Lawrence" }, { "id": 2, "name": "Candy Small" } ], "greeting": "Hello, York Short! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b231e23bf35f30224", "index": 4825, "guid": "4fc0e57e-56cb-4158-a78c-04c762d6c0ec", "isActive": false, "balance": "$1,596.19", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Atkinson Wilkins", "gender": "male", "company": "CENTURIA", "email": "atkinsonwilkins@centuria.com", "phone": "+1 (947) 528-2500", "address": "382 Kenmore Court, Laurelton, Tennessee, 5584", "about": "Laborum enim incididunt consequat reprehenderit sint minim. Eiusmod deserunt ea nostrud elit aliqua. Consequat ea culpa aliquip dolore. Sint duis non magna proident occaecat voluptate quis sunt minim elit ut aliquip incididunt. Et eiusmod nisi nostrud labore fugiat nulla duis. Occaecat nisi reprehenderit reprehenderit elit in est est dolore mollit ut.\r\n", "registered": "2014-05-23T03:10:23-12:00", "latitude": -29.587892, "longitude": 136.742707, "tags": [ "esse", "exercitation", "fugiat", "voluptate", "nulla", "sint", "minim" ], "friends": [ { "id": 0, "name": "Tommie Frye" }, { "id": 1, "name": "Traci Medina" }, { "id": 2, "name": "Ingrid Terry" } ], "greeting": "Hello, Atkinson Wilkins! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b835be45923b3f03d", "index": 4826, "guid": "c9883d5b-a9d3-4c39-9509-586f9de4512a", "isActive": false, "balance": "$2,790.38", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Tracy Mccullough", "gender": "female", "company": "OPTICOM", "email": "tracymccullough@opticom.com", "phone": "+1 (924) 585-3572", "address": "553 Boulevard Court, Barclay, Alabama, 8978", "about": "Pariatur magna ullamco consequat sint aute consequat commodo non ipsum pariatur Lorem et non irure. Aliquip dolore fugiat irure voluptate dolor nisi consectetur. Enim reprehenderit officia ullamco qui anim nostrud id culpa sit et fugiat. Non anim ut elit do. Et cillum sit exercitation ut Lorem et dolor laboris sunt ex adipisicing elit. Excepteur adipisicing qui aliquip ad nulla.\r\n", "registered": "2014-07-05T15:13:33-12:00", "latitude": -79.114011, "longitude": -117.433823, "tags": [ "ipsum", "reprehenderit", "exercitation", "voluptate", "fugiat", "veniam", "minim" ], "friends": [ { "id": 0, "name": "Liza Manning" }, { "id": 1, "name": "Katy Langley" }, { "id": 2, "name": "Chapman Jackson" } ], "greeting": "Hello, Tracy Mccullough! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bbfad9e15333a927b", "index": 4827, "guid": "58ce3644-9051-4834-abee-ad2513c76cbc", "isActive": true, "balance": "$3,218.70", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "English Grant", "gender": "male", "company": "MENBRAIN", "email": "englishgrant@menbrain.com", "phone": "+1 (903) 435-3818", "address": "402 McDonald Avenue, Foxworth, Ohio, 8596", "about": "Officia culpa enim do ex duis ullamco. Cillum commodo nulla est nulla enim excepteur non reprehenderit. Officia do sint non culpa ipsum occaecat et.\r\n", "registered": "2014-01-19T20:57:04-13:00", "latitude": -83.947656, "longitude": -83.243656, "tags": [ "ullamco", "ullamco", "id", "incididunt", "est", "aliquip", "cupidatat" ], "friends": [ { "id": 0, "name": "Horn Hatfield" }, { "id": 1, "name": "Murphy Hodges" }, { "id": 2, "name": "Prince Trevino" } ], "greeting": "Hello, English Grant! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b2c02d79e3ccaa5a7", "index": 4828, "guid": "6a4da679-ed29-4602-aca2-b201ade288d3", "isActive": true, "balance": "$3,517.60", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Flora Thornton", "gender": "female", "company": "EDECINE", "email": "florathornton@edecine.com", "phone": "+1 (841) 572-2894", "address": "255 Lefferts Place, Alfarata, Hawaii, 2360", "about": "Non tempor est ea deserunt est ex occaecat ex irure consequat nulla. Nulla ex tempor sit duis ipsum reprehenderit. Veniam velit ad dolor laboris consequat amet. Proident excepteur anim magna in pariatur voluptate ut cupidatat Lorem.\r\n", "registered": "2014-03-01T01:24:45-13:00", "latitude": 54.147001, "longitude": -73.654905, "tags": [ "veniam", "ex", "ex", "excepteur", "laboris", "et", "Lorem" ], "friends": [ { "id": 0, "name": "Kim Kelley" }, { "id": 1, "name": "Josefina Joseph" }, { "id": 2, "name": "Ursula Stephens" } ], "greeting": "Hello, Flora Thornton! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b73c471f50926ee90", "index": 4829, "guid": "94b89db4-a216-43fd-a418-4438c3e82663", "isActive": false, "balance": "$1,174.01", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "green", "name": "Simpson Norman", "gender": "male", "company": "GRACKER", "email": "simpsonnorman@gracker.com", "phone": "+1 (832) 600-3890", "address": "379 Lawton Street, Spokane, New Mexico, 1258", "about": "Culpa labore in magna dolor pariatur. Pariatur nulla sunt do nulla deserunt non in aute est nisi ad labore. Qui fugiat do ipsum consectetur Lorem mollit et excepteur eu.\r\n", "registered": "2014-04-17T04:18:37-12:00", "latitude": -35.766367, "longitude": -4.160827, "tags": [ "do", "pariatur", "ullamco", "aliquip", "pariatur", "cupidatat", "nulla" ], "friends": [ { "id": 0, "name": "Juanita Nash" }, { "id": 1, "name": "Eleanor Gibbs" }, { "id": 2, "name": "Rebekah Foreman" } ], "greeting": "Hello, Simpson Norman! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b0917831dccc7bbf9", "index": 4830, "guid": "2c5f055c-085a-4538-b0f0-fec36dfef150", "isActive": true, "balance": "$1,210.12", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Petersen Leon", "gender": "male", "company": "ZAJ", "email": "petersenleon@zaj.com", "phone": "+1 (973) 440-2651", "address": "933 Alabama Avenue, Lewis, Maryland, 353", "about": "Laborum exercitation aute amet officia id id cillum deserunt velit aute. Aliquip non voluptate ut et irure incididunt cupidatat pariatur culpa eiusmod excepteur dolor labore. Irure do sint culpa Lorem officia eiusmod fugiat officia fugiat proident. Pariatur elit mollit consectetur velit dolore. Id ipsum sunt aute elit mollit ex ipsum id commodo. Nostrud pariatur excepteur ipsum exercitation velit laborum sunt qui labore exercitation occaecat sint eu ea. Commodo proident excepteur ullamco aute occaecat culpa nulla commodo eu tempor ad laboris dolor.\r\n", "registered": "2014-03-28T02:32:07-13:00", "latitude": -88.150465, "longitude": 85.976397, "tags": [ "est", "adipisicing", "non", "enim", "consectetur", "et", "aute" ], "friends": [ { "id": 0, "name": "Jewell Holt" }, { "id": 1, "name": "Bonner Griffin" }, { "id": 2, "name": "Stephens Sutton" } ], "greeting": "Hello, Petersen Leon! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b7a37502a198c8703", "index": 4831, "guid": "4a82fac7-baf8-459e-9b69-67a2b74f084b", "isActive": false, "balance": "$2,972.93", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Lilian Woodard", "gender": "female", "company": "ZILLAR", "email": "lilianwoodard@zillar.com", "phone": "+1 (897) 546-2814", "address": "137 Lafayette Avenue, Kersey, Alaska, 7289", "about": "Ipsum officia ad aute esse labore deserunt reprehenderit fugiat amet. Duis quis sint officia magna excepteur aliqua sunt anim officia excepteur ullamco sit laboris. Lorem veniam laboris nisi tempor ipsum eiusmod irure sunt occaecat quis proident ad proident cupidatat. Elit do exercitation Lorem est nisi anim. Esse sit occaecat veniam adipisicing officia sit ipsum elit ut labore ex. Ex veniam duis dolore eiusmod ex irure voluptate cupidatat cillum nulla. Fugiat excepteur ipsum ut excepteur reprehenderit excepteur magna Lorem do irure aliquip ullamco.\r\n", "registered": "2014-09-21T05:45:32-12:00", "latitude": -25.892054, "longitude": -170.99219, "tags": [ "anim", "pariatur", "quis", "exercitation", "laborum", "dolor", "fugiat" ], "friends": [ { "id": 0, "name": "Selena Larsen" }, { "id": 1, "name": "Mae Parks" }, { "id": 2, "name": "Higgins Benson" } ], "greeting": "Hello, Lilian Woodard! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b14471a766f53f602", "index": 4832, "guid": "f6f733d0-54ad-4ebf-a09e-e5c3ea38bcb8", "isActive": true, "balance": "$3,710.83", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Deann Jefferson", "gender": "female", "company": "MEDIFAX", "email": "deannjefferson@medifax.com", "phone": "+1 (953) 411-3410", "address": "416 Elizabeth Place, Lithium, Arizona, 9528", "about": "Ad aliquip minim cupidatat laboris ea Lorem. Nisi occaecat et sit fugiat velit. Incididunt nisi culpa magna eu id ullamco exercitation enim occaecat aliqua magna nisi. In commodo cillum fugiat ullamco voluptate minim non reprehenderit duis labore ipsum. Ea commodo exercitation ea consequat consequat. Eiusmod culpa in ea culpa quis.\r\n", "registered": "2014-06-21T18:15:52-12:00", "latitude": 80.907629, "longitude": 178.024423, "tags": [ "sunt", "deserunt", "esse", "esse", "fugiat", "aliquip", "sint" ], "friends": [ { "id": 0, "name": "Nichole Ruiz" }, { "id": 1, "name": "Mays Mclaughlin" }, { "id": 2, "name": "Ginger Bernard" } ], "greeting": "Hello, Deann Jefferson! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bac4270b872210cd4", "index": 4833, "guid": "75c7b4d1-efee-4e73-9180-d87f60fbb1c7", "isActive": true, "balance": "$1,162.55", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Phillips Bonner", "gender": "male", "company": "DOGNOSIS", "email": "phillipsbonner@dognosis.com", "phone": "+1 (981) 482-2286", "address": "724 Independence Avenue, Cavalero, Federated States Of Micronesia, 6254", "about": "Nostrud ut labore et nisi qui occaecat eiusmod. Do ullamco ex in non enim ipsum. Nostrud quis id ipsum ullamco ipsum excepteur tempor sunt. Id sunt ea laboris occaecat. Ipsum tempor velit proident ex quis incididunt nostrud cillum sit aliquip dolore. Consectetur irure est ad excepteur. Ad ex est sit enim ullamco magna est consequat adipisicing minim aliqua.\r\n", "registered": "2014-03-12T22:00:08-13:00", "latitude": -54.600291, "longitude": 20.247724, "tags": [ "adipisicing", "proident", "non", "voluptate", "exercitation", "velit", "id" ], "friends": [ { "id": 0, "name": "Queen Fischer" }, { "id": 1, "name": "June Whitney" }, { "id": 2, "name": "Bell Conway" } ], "greeting": "Hello, Phillips Bonner! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b0acdc5863a1628ea", "index": 4834, "guid": "2bdd9fb3-a3bb-4953-9f55-102e855e1482", "isActive": true, "balance": "$1,068.55", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Thomas Patton", "gender": "male", "company": "EXOSPEED", "email": "thomaspatton@exospeed.com", "phone": "+1 (897) 538-3566", "address": "177 Elliott Walk, Dexter, Oklahoma, 3013", "about": "Fugiat nulla amet sunt id laborum occaecat ad culpa cupidatat. Tempor culpa fugiat fugiat incididunt. Nulla est deserunt aliquip cillum adipisicing consequat. In elit Lorem Lorem consequat excepteur cillum officia esse voluptate fugiat ad ipsum incididunt. Pariatur quis in id sunt Lorem ullamco culpa veniam.\r\n", "registered": "2014-05-08T16:59:09-12:00", "latitude": -37.401932, "longitude": 39.905315, "tags": [ "velit", "exercitation", "sit", "nulla", "ut", "veniam", "nisi" ], "friends": [ { "id": 0, "name": "Cantu Hahn" }, { "id": 1, "name": "Edna Mcpherson" }, { "id": 2, "name": "Neal Cabrera" } ], "greeting": "Hello, Thomas Patton! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bb278dfccfe6dbf5c", "index": 4835, "guid": "12d69da3-2d43-4dc3-827e-e0401392294b", "isActive": false, "balance": "$1,362.70", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Suzette Sanchez", "gender": "female", "company": "GLUID", "email": "suzettesanchez@gluid.com", "phone": "+1 (853) 510-2893", "address": "437 Hunts Lane, Chumuckla, Michigan, 7992", "about": "Cillum ipsum proident deserunt aliquip ad ut adipisicing amet veniam consectetur qui fugiat nostrud et. Non sunt irure reprehenderit officia. Nisi non tempor voluptate ad sunt dolor eiusmod nulla ut. Sunt ullamco cupidatat laborum aliquip cillum ipsum non dolore reprehenderit. Id minim anim nulla mollit adipisicing non labore esse proident velit ut.\r\n", "registered": "2014-09-19T14:09:47-12:00", "latitude": 68.627494, "longitude": -11.757964, "tags": [ "pariatur", "eiusmod", "amet", "aliqua", "sint", "aute", "non" ], "friends": [ { "id": 0, "name": "Cheri Davidson" }, { "id": 1, "name": "Thompson Preston" }, { "id": 2, "name": "Romero Williams" } ], "greeting": "Hello, Suzette Sanchez! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b56907c3e87b8f0ac", "index": 4836, "guid": "0c8c709c-06cf-4957-aeb8-d472edfdbbb4", "isActive": true, "balance": "$3,154.57", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Coleen Reilly", "gender": "female", "company": "QUILM", "email": "coleenreilly@quilm.com", "phone": "+1 (993) 444-3946", "address": "823 Thames Street, Kipp, Kansas, 6192", "about": "Anim enim cillum aliquip nostrud ex et. Cillum exercitation ut magna enim aute commodo. Fugiat sit do ex ipsum dolore fugiat commodo sunt dolor id eiusmod in do dolor. Ea amet laborum adipisicing esse qui cupidatat amet laborum aliqua minim velit aliquip occaecat consequat. Lorem velit elit adipisicing esse consequat sunt sit ad ut.\r\n", "registered": "2014-07-03T20:42:52-12:00", "latitude": -41.030196, "longitude": -56.353083, "tags": [ "cillum", "exercitation", "eu", "amet", "in", "officia", "est" ], "friends": [ { "id": 0, "name": "Banks Jacobson" }, { "id": 1, "name": "Sellers Jones" }, { "id": 2, "name": "Margret Bennett" } ], "greeting": "Hello, Coleen Reilly! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bf65e25d3d95b9575", "index": 4837, "guid": "93574cf7-d4b6-484c-bd6c-c6826a71571f", "isActive": true, "balance": "$2,582.49", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Kelley Quinn", "gender": "female", "company": "ENJOLA", "email": "kelleyquinn@enjola.com", "phone": "+1 (806) 501-2002", "address": "960 Stockton Street, Alden, South Dakota, 1783", "about": "Est esse laborum enim deserunt elit ullamco incididunt cillum sunt irure deserunt. Consectetur ut id aute do esse esse dolor proident duis proident aute. Culpa duis labore tempor eiusmod incididunt et non Lorem quis eiusmod in eu ut. Sunt ex laborum proident proident ipsum exercitation.\r\n", "registered": "2014-06-21T11:45:35-12:00", "latitude": -60.082817, "longitude": -133.408362, "tags": [ "occaecat", "voluptate", "do", "nulla", "duis", "sint", "eu" ], "friends": [ { "id": 0, "name": "Pate Zimmerman" }, { "id": 1, "name": "Stevenson Cruz" }, { "id": 2, "name": "Odonnell Moody" } ], "greeting": "Hello, Kelley Quinn! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b06d3754c03d9d4aa", "index": 4838, "guid": "f554d151-0fea-40dd-844e-3c103dee179a", "isActive": false, "balance": "$1,371.56", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Myrtle Barton", "gender": "female", "company": "SPORTAN", "email": "myrtlebarton@sportan.com", "phone": "+1 (942) 493-2518", "address": "766 Pierrepont Place, Beyerville, West Virginia, 9893", "about": "Dolore eu dolore ex id voluptate incididunt non qui deserunt quis. Sit nisi consectetur adipisicing minim sunt nisi magna sunt commodo Lorem in quis. Laboris eu anim aliquip officia ipsum Lorem nulla. Non incididunt culpa qui nostrud dolor.\r\n", "registered": "2014-05-12T09:18:08-12:00", "latitude": 86.433951, "longitude": 160.461785, "tags": [ "id", "aliqua", "non", "labore", "culpa", "quis", "duis" ], "friends": [ { "id": 0, "name": "Shelley Ayala" }, { "id": 1, "name": "Mosley Workman" }, { "id": 2, "name": "Cox Hopper" } ], "greeting": "Hello, Myrtle Barton! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2be84d1c886cf14aeb", "index": 4839, "guid": "614056dd-042e-4871-be1e-9415a46cf546", "isActive": true, "balance": "$2,598.00", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "green", "name": "Maritza Turner", "gender": "female", "company": "OPTICON", "email": "maritzaturner@opticon.com", "phone": "+1 (849) 508-3181", "address": "565 Regent Place, Wells, Texas, 8233", "about": "Mollit incididunt quis minim cupidatat. Amet ut aute ea fugiat consequat voluptate non adipisicing non nisi. Culpa ad culpa id sint sit quis consequat cillum dolore nulla. Tempor sint do cillum in amet ut tempor consectetur veniam ipsum sint. Elit tempor mollit amet reprehenderit tempor. Nulla ad deserunt nisi labore incididunt deserunt consectetur exercitation. Amet enim incididunt Lorem do laborum reprehenderit reprehenderit aliquip sint ex consequat labore velit.\r\n", "registered": "2014-01-05T11:29:42-13:00", "latitude": -73.949663, "longitude": -117.907708, "tags": [ "labore", "eu", "ut", "laborum", "ullamco", "mollit", "anim" ], "friends": [ { "id": 0, "name": "Tessa Shaffer" }, { "id": 1, "name": "Fields Miranda" }, { "id": 2, "name": "Mckinney Cash" } ], "greeting": "Hello, Maritza Turner! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bb77f8f8700948788", "index": 4840, "guid": "b1e93918-5b3f-4c0b-9978-3bd8f05afd10", "isActive": false, "balance": "$1,554.21", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Spence Randall", "gender": "male", "company": "AEORA", "email": "spencerandall@aeora.com", "phone": "+1 (833) 436-2966", "address": "592 Ridgecrest Terrace, Dargan, Oregon, 7418", "about": "Quis ex magna dolore nisi in labore aliqua duis nostrud deserunt exercitation cupidatat aliqua do. Anim excepteur cillum elit magna amet elit do adipisicing. Do voluptate laborum enim eiusmod ea Lorem pariatur enim velit aliqua. Dolor sunt sint enim ex. Proident sit ea id eu ullamco commodo irure et sit anim labore cillum cillum qui. Amet ipsum dolor sunt et deserunt nisi anim duis tempor culpa ipsum. Aliquip ex exercitation nisi adipisicing sint fugiat.\r\n", "registered": "2014-06-26T05:56:08-12:00", "latitude": -48.698825, "longitude": 129.338868, "tags": [ "fugiat", "ea", "reprehenderit", "proident", "ullamco", "quis", "et" ], "friends": [ { "id": 0, "name": "Hooper Drake" }, { "id": 1, "name": "Jacobson Calderon" }, { "id": 2, "name": "Parker Mckinney" } ], "greeting": "Hello, Spence Randall! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bb0490946b6c1f7c9", "index": 4841, "guid": "19590fb7-b9fe-4bfd-8cb6-9927e9a250ae", "isActive": true, "balance": "$3,369.54", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Carrie Estrada", "gender": "female", "company": "TURNLING", "email": "carrieestrada@turnling.com", "phone": "+1 (923) 469-3525", "address": "533 Cove Lane, Selma, Nevada, 8654", "about": "Deserunt veniam esse et duis Lorem irure ad enim esse commodo consequat deserunt. Eiusmod cupidatat deserunt consequat ut labore est. Ea non ad ad adipisicing incididunt aliqua. Reprehenderit et elit quis mollit velit enim minim. Fugiat excepteur adipisicing consectetur excepteur sunt. Lorem eiusmod occaecat commodo aute dolore occaecat in eu ipsum exercitation.\r\n", "registered": "2014-03-20T15:22:37-13:00", "latitude": -4.300624, "longitude": 159.974121, "tags": [ "ipsum", "eu", "aute", "occaecat", "deserunt", "ea", "in" ], "friends": [ { "id": 0, "name": "Juarez Weaver" }, { "id": 1, "name": "Bridgett Welch" }, { "id": 2, "name": "Robyn Durham" } ], "greeting": "Hello, Carrie Estrada! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b892beed69def3cd7", "index": 4842, "guid": "2d9594b1-a7ce-4d9e-8ad5-e6ffda8ddcd1", "isActive": true, "balance": "$1,165.77", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Mildred Woodward", "gender": "female", "company": "CINESANCT", "email": "mildredwoodward@cinesanct.com", "phone": "+1 (807) 532-3534", "address": "676 Willmohr Street, Oretta, Minnesota, 2281", "about": "Laboris anim sunt aliqua ea deserunt sit et. Amet nisi irure enim ut quis exercitation duis enim. Sit veniam dolore ullamco elit eiusmod ea ad elit. Amet nisi veniam veniam duis in. Minim eiusmod magna eiusmod laboris minim.\r\n", "registered": "2014-01-08T10:39:46-13:00", "latitude": -71.569414, "longitude": 149.716151, "tags": [ "laboris", "velit", "mollit", "deserunt", "eiusmod", "officia", "Lorem" ], "friends": [ { "id": 0, "name": "Quinn Fowler" }, { "id": 1, "name": "Deirdre Holloway" }, { "id": 2, "name": "Fannie Britt" } ], "greeting": "Hello, Mildred Woodward! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bda095e3b51b2ac3c", "index": 4843, "guid": "08bb797b-4b6b-42e2-b6d0-3c8dd9c8a785", "isActive": false, "balance": "$2,957.77", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "May Berg", "gender": "male", "company": "KEEG", "email": "mayberg@keeg.com", "phone": "+1 (951) 429-2548", "address": "745 Homecrest Court, Cucumber, Missouri, 7704", "about": "In excepteur velit quis duis tempor reprehenderit laborum. Fugiat consequat Lorem culpa aute minim voluptate dolor qui laboris. Velit eu qui quis voluptate eiusmod ex aliqua sunt excepteur laboris.\r\n", "registered": "2014-08-05T19:24:28-12:00", "latitude": 71.149826, "longitude": -42.971808, "tags": [ "in", "mollit", "reprehenderit", "adipisicing", "laboris", "dolor", "minim" ], "friends": [ { "id": 0, "name": "May Moss" }, { "id": 1, "name": "Nolan Stark" }, { "id": 2, "name": "Rhonda Mendoza" } ], "greeting": "Hello, May Berg! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b0a835bddc20ffc35", "index": 4844, "guid": "e15fe39e-b54b-441f-9fa3-7223d45f66b7", "isActive": true, "balance": "$2,265.30", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Holloway Harrison", "gender": "male", "company": "ZAPPIX", "email": "hollowayharrison@zappix.com", "phone": "+1 (903) 495-2823", "address": "655 Strickland Avenue, Wikieup, Rhode Island, 5815", "about": "Eu esse ut et consectetur tempor eiusmod. Tempor ad sunt aute deserunt incididunt consectetur id cillum anim Lorem velit veniam qui proident. Minim voluptate non commodo excepteur mollit nulla proident sint aute consectetur do amet minim laborum. Officia officia commodo Lorem culpa quis aliquip do id quis occaecat. Pariatur commodo eiusmod consequat commodo dolor qui sint incididunt nisi quis labore.\r\n", "registered": "2014-01-23T16:08:37-13:00", "latitude": -28.210587, "longitude": -19.731679, "tags": [ "pariatur", "eiusmod", "officia", "reprehenderit", "reprehenderit", "ad", "in" ], "friends": [ { "id": 0, "name": "Irma Dickerson" }, { "id": 1, "name": "Cherry Arnold" }, { "id": 2, "name": "Angelica Rodriquez" } ], "greeting": "Hello, Holloway Harrison! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b1b38257b1ba2dcaf", "index": 4845, "guid": "b4b0b78c-db54-4f19-bdfe-8acb812d72ea", "isActive": false, "balance": "$2,058.74", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Barber Guy", "gender": "male", "company": "DANCITY", "email": "barberguy@dancity.com", "phone": "+1 (829) 566-3790", "address": "766 Dorchester Road, Sunbury, Florida, 2224", "about": "Cupidatat velit eiusmod nulla labore eu quis veniam laboris proident qui sunt. Lorem ut pariatur enim est sint ipsum non duis. Aute nostrud dolore ex dolore irure tempor cillum cupidatat dolore sit sit pariatur voluptate est. Dolor nulla sunt irure nulla anim dolor occaecat.\r\n", "registered": "2014-03-16T03:59:08-13:00", "latitude": -87.626211, "longitude": 173.395174, "tags": [ "labore", "excepteur", "in", "irure", "non", "ex", "Lorem" ], "friends": [ { "id": 0, "name": "Howard Vang" }, { "id": 1, "name": "Leola Lynn" }, { "id": 2, "name": "Stacie York" } ], "greeting": "Hello, Barber Guy! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bec9832a0bac19f12", "index": 4846, "guid": "f950578d-e2b7-40c1-bf8c-318c436aa57a", "isActive": false, "balance": "$2,681.90", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Alta Erickson", "gender": "female", "company": "GREEKER", "email": "altaerickson@greeker.com", "phone": "+1 (949) 600-2599", "address": "423 Landis Court, Enetai, North Carolina, 8002", "about": "Ipsum velit excepteur veniam consequat anim. Est elit anim Lorem elit tempor amet pariatur aute consectetur incididunt irure aliquip eiusmod minim. Est labore aliquip velit tempor. Lorem laborum ut ex consequat eiusmod culpa Lorem proident mollit eu. Commodo esse dolore sunt enim reprehenderit eu pariatur deserunt laborum excepteur cillum cupidatat do aliqua. Tempor eiusmod in irure aliqua ea minim magna eiusmod cupidatat sint magna esse ullamco aute. Labore ea proident mollit sint elit ut sint veniam adipisicing.\r\n", "registered": "2014-01-14T23:42:10-13:00", "latitude": 80.592457, "longitude": 95.095717, "tags": [ "id", "et", "duis", "adipisicing", "Lorem", "exercitation", "et" ], "friends": [ { "id": 0, "name": "Bryant Fields" }, { "id": 1, "name": "Ball Aguilar" }, { "id": 2, "name": "Sue Gomez" } ], "greeting": "Hello, Alta Erickson! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b3c8e442454ab871b", "index": 4847, "guid": "2da3c8d6-f6b5-4be8-b924-b39a0f313c84", "isActive": true, "balance": "$2,060.79", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Brady Stewart", "gender": "male", "company": "WRAPTURE", "email": "bradystewart@wrapture.com", "phone": "+1 (808) 400-2844", "address": "592 Gatling Place, Harviell, New Hampshire, 6295", "about": "Sint excepteur aliqua aliqua et tempor esse aute culpa tempor magna mollit. Commodo nulla dolor aute et nulla aute commodo non laborum duis. Consectetur cupidatat qui ex consequat ut.\r\n", "registered": "2014-03-19T16:10:55-13:00", "latitude": -45.087766, "longitude": -32.701767, "tags": [ "exercitation", "reprehenderit", "non", "tempor", "velit", "irure", "dolore" ], "friends": [ { "id": 0, "name": "Allie Foster" }, { "id": 1, "name": "Twila Pacheco" }, { "id": 2, "name": "Jaclyn Rodgers" } ], "greeting": "Hello, Brady Stewart! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ba0b3a5de15f4449e", "index": 4848, "guid": "62a4ac4c-1b52-465e-9b45-2a46fdaa4ef8", "isActive": false, "balance": "$3,092.51", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Sawyer Meyers", "gender": "male", "company": "PORTALINE", "email": "sawyermeyers@portaline.com", "phone": "+1 (951) 500-2424", "address": "102 Bushwick Avenue, Eagleville, Arkansas, 7884", "about": "Enim ut anim nulla veniam qui fugiat officia anim tempor adipisicing ex aliqua. Nisi minim Lorem in enim in elit. Do deserunt officia cupidatat est Lorem in et exercitation. Minim ex irure cillum fugiat nulla sint exercitation tempor eu nostrud magna.\r\n", "registered": "2014-06-08T09:41:16-12:00", "latitude": -58.895264, "longitude": 24.332705, "tags": [ "exercitation", "nulla", "ea", "dolor", "esse", "cillum", "ad" ], "friends": [ { "id": 0, "name": "Jessica Roach" }, { "id": 1, "name": "Eugenia Gallegos" }, { "id": 2, "name": "Mack Stokes" } ], "greeting": "Hello, Sawyer Meyers! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bff400ec755e5e0aa", "index": 4849, "guid": "f3fa3a2a-4740-400b-8f8e-0173ca8aab57", "isActive": true, "balance": "$2,149.44", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Lester Marks", "gender": "male", "company": "GONKLE", "email": "lestermarks@gonkle.com", "phone": "+1 (834) 546-2411", "address": "315 Bragg Court, Groveville, Iowa, 9966", "about": "Dolore elit sit eu pariatur ipsum ut ad anim quis. Exercitation nisi labore mollit incididunt mollit eu laborum eiusmod id elit Lorem ipsum. Consequat ad aliquip eiusmod deserunt laboris. Minim cillum commodo non esse laboris duis cillum culpa enim exercitation qui. Ad voluptate cupidatat sint ut do qui consequat adipisicing minim enim qui excepteur voluptate velit. Elit cupidatat ipsum dolor irure et adipisicing aute laborum adipisicing. Nulla labore exercitation est magna labore nisi.\r\n", "registered": "2014-01-12T07:22:04-13:00", "latitude": 59.269451, "longitude": -89.359828, "tags": [ "quis", "elit", "veniam", "do", "consequat", "ex", "voluptate" ], "friends": [ { "id": 0, "name": "Aileen Woods" }, { "id": 1, "name": "Terrell Briggs" }, { "id": 2, "name": "Gabriela Serrano" } ], "greeting": "Hello, Lester Marks! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b1680757d6a240377", "index": 4850, "guid": "86c0f5a3-3521-4eaf-9cc5-845bfd8f9fb9", "isActive": true, "balance": "$3,170.69", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Donna Cooper", "gender": "female", "company": "BALUBA", "email": "donnacooper@baluba.com", "phone": "+1 (848) 418-3270", "address": "499 Lombardy Street, Gila, Nebraska, 3809", "about": "Laboris anim anim ex aute commodo laborum excepteur. Do do deserunt irure reprehenderit consectetur magna deserunt nulla non ullamco. Ipsum esse quis qui excepteur sint mollit aute eu est dolor enim. Lorem enim reprehenderit consectetur minim reprehenderit consequat anim do.\r\n", "registered": "2014-05-17T18:35:10-12:00", "latitude": 6.207913, "longitude": 102.772086, "tags": [ "consequat", "mollit", "dolore", "incididunt", "eiusmod", "do", "eu" ], "friends": [ { "id": 0, "name": "Brewer Floyd" }, { "id": 1, "name": "Sally Stevenson" }, { "id": 2, "name": "Dianna Sargent" } ], "greeting": "Hello, Donna Cooper! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b33a2ae40095d74e8", "index": 4851, "guid": "c5b3e585-6224-4b02-9c16-f1c81f3367b6", "isActive": false, "balance": "$2,359.31", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Pat Johnston", "gender": "female", "company": "EXTRAGEN", "email": "patjohnston@extragen.com", "phone": "+1 (945) 498-2821", "address": "712 Jerome Avenue, Albrightsville, District Of Columbia, 1574", "about": "Anim ut pariatur sit proident qui magna cillum officia cillum non tempor. Consectetur mollit eiusmod id Lorem ex et aute reprehenderit. Deserunt in incididunt ullamco do dolore. Ad Lorem sunt adipisicing laboris.\r\n", "registered": "2014-08-18T21:08:04-12:00", "latitude": -71.402213, "longitude": -123.261915, "tags": [ "nostrud", "amet", "commodo", "laboris", "anim", "exercitation", "exercitation" ], "friends": [ { "id": 0, "name": "Dudley Valenzuela" }, { "id": 1, "name": "Ina Richards" }, { "id": 2, "name": "Kathy Duffy" } ], "greeting": "Hello, Pat Johnston! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b0f55a0d35f040d35", "index": 4852, "guid": "9aa24d50-5f1c-4220-a17e-b61e1f038ed7", "isActive": true, "balance": "$2,356.70", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Nichols Blanchard", "gender": "male", "company": "KAGGLE", "email": "nicholsblanchard@kaggle.com", "phone": "+1 (949) 463-2087", "address": "190 Portal Street, Brogan, New Jersey, 4855", "about": "Sunt excepteur incididunt pariatur minim duis. Dolor veniam exercitation aute pariatur velit consequat veniam ut nulla ad. Et commodo cillum ex cupidatat est cupidatat laboris deserunt voluptate velit incididunt qui elit quis.\r\n", "registered": "2014-04-03T11:54:16-13:00", "latitude": 17.629809, "longitude": -148.119358, "tags": [ "culpa", "culpa", "laborum", "Lorem", "aute", "officia", "do" ], "friends": [ { "id": 0, "name": "Pugh Craig" }, { "id": 1, "name": "Holman Byrd" }, { "id": 2, "name": "Mcneil White" } ], "greeting": "Hello, Nichols Blanchard! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bd4a1c32d3ebcbb43", "index": 4853, "guid": "2d6ac303-18f3-4fc2-b8de-f9bea1ae9756", "isActive": true, "balance": "$1,594.56", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Hebert Hensley", "gender": "male", "company": "CUIZINE", "email": "heberthensley@cuizine.com", "phone": "+1 (800) 477-2875", "address": "279 Canton Court, Wright, Palau, 7755", "about": "Commodo dolore elit aliquip ex reprehenderit nostrud tempor ex velit duis. Quis dolor dolor velit occaecat proident dolore reprehenderit est excepteur cillum culpa anim laboris. In aute commodo pariatur proident voluptate id irure Lorem nostrud et ad labore esse. Est adipisicing pariatur commodo culpa dolore. Ipsum in eu proident officia laboris. Ex adipisicing proident ullamco non aute. Deserunt ex ad id enim.\r\n", "registered": "2014-01-17T15:37:00-13:00", "latitude": -49.284126, "longitude": -71.18545, "tags": [ "duis", "id", "eu", "duis", "commodo", "incididunt", "esse" ], "friends": [ { "id": 0, "name": "Johnson Martinez" }, { "id": 1, "name": "Sparks Richmond" }, { "id": 2, "name": "Beard Mcclure" } ], "greeting": "Hello, Hebert Hensley! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b6849fc51f521058c", "index": 4854, "guid": "ae2a4ddc-aec6-4faf-98ec-c1d9a3903458", "isActive": true, "balance": "$3,049.13", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Leta Peters", "gender": "female", "company": "XUMONK", "email": "letapeters@xumonk.com", "phone": "+1 (937) 489-3268", "address": "183 Willow Street, Fowlerville, Puerto Rico, 9464", "about": "Anim adipisicing consequat elit elit veniam in consequat quis consectetur et ullamco laborum commodo. Tempor pariatur adipisicing aliqua minim cillum est ea sit tempor adipisicing et reprehenderit nulla. Non nulla fugiat qui ipsum deserunt cillum proident eiusmod consectetur excepteur fugiat dolore est. Sint Lorem cillum consequat aliquip eu ipsum labore. Aute occaecat nostrud officia officia quis adipisicing officia cupidatat adipisicing enim amet laborum cupidatat. Sit voluptate quis quis ex culpa.\r\n", "registered": "2014-04-20T02:21:29-12:00", "latitude": 87.940404, "longitude": 178.786481, "tags": [ "minim", "aute", "sit", "aliquip", "commodo", "velit", "nulla" ], "friends": [ { "id": 0, "name": "Mcintosh Lara" }, { "id": 1, "name": "Abby Cleveland" }, { "id": 2, "name": "Lolita Howell" } ], "greeting": "Hello, Leta Peters! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bd4f0a14e0ddc5b48", "index": 4855, "guid": "13a45561-f2da-462e-a5ec-91c65bf35f09", "isActive": false, "balance": "$2,732.37", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Delgado Nielsen", "gender": "male", "company": "FUTURITY", "email": "delgadonielsen@futurity.com", "phone": "+1 (922) 475-3045", "address": "823 Sutter Avenue, Lutsen, California, 1815", "about": "Tempor aliqua ex ea ipsum excepteur est qui. Dolore do anim qui non. Non magna velit qui sunt consequat tempor in consectetur qui occaecat sunt ut dolore. Dolor est non ut culpa irure exercitation dolore ex duis ea nisi sit commodo. Aliquip voluptate eiusmod magna mollit voluptate duis aliqua cupidatat qui anim ea. Commodo proident ex qui magna ad officia.\r\n", "registered": "2014-08-12T14:03:30-12:00", "latitude": -65.132481, "longitude": -26.273657, "tags": [ "ullamco", "sint", "dolore", "ea", "laborum", "pariatur", "labore" ], "friends": [ { "id": 0, "name": "Humphrey Rhodes" }, { "id": 1, "name": "Byers Hartman" }, { "id": 2, "name": "Elba Travis" } ], "greeting": "Hello, Delgado Nielsen! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bc5467579fb5584f5", "index": 4856, "guid": "f50d08e4-050e-4b58-90ed-0c70e2fedafc", "isActive": true, "balance": "$2,897.07", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "green", "name": "Maryann Wilson", "gender": "female", "company": "PRIMORDIA", "email": "maryannwilson@primordia.com", "phone": "+1 (957) 570-2021", "address": "160 Conduit Boulevard, Como, Vermont, 492", "about": "Dolor non ipsum ullamco laboris anim occaecat dolore minim eiusmod amet Lorem eiusmod laborum. Aliquip eiusmod in duis tempor sit cillum elit reprehenderit aute sint laboris veniam minim amet. Dolor laborum quis veniam excepteur ex labore adipisicing est dolore. Aliqua dolore laborum do qui proident amet Lorem tempor deserunt irure esse nulla dolore. Ut aliqua non ullamco enim aute occaecat labore.\r\n", "registered": "2014-02-24T01:51:34-13:00", "latitude": -69.627951, "longitude": -146.424234, "tags": [ "cupidatat", "est", "voluptate", "ex", "laborum", "nostrud", "anim" ], "friends": [ { "id": 0, "name": "Elsie Pace" }, { "id": 1, "name": "Terri Sparks" }, { "id": 2, "name": "Ryan Patterson" } ], "greeting": "Hello, Maryann Wilson! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b5137777b3c95e658", "index": 4857, "guid": "186dde6c-152c-45f4-aa8f-9dc5e7a8ce4f", "isActive": true, "balance": "$1,309.60", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Janell Wood", "gender": "female", "company": "PYRAMAX", "email": "janellwood@pyramax.com", "phone": "+1 (995) 599-3101", "address": "361 Court Street, Eastvale, Indiana, 5990", "about": "Aliqua fugiat sit fugiat Lorem Lorem reprehenderit labore veniam aliquip eu. Quis in velit magna minim consequat irure et laborum consectetur aliqua. Proident duis nostrud reprehenderit non non eu cupidatat. Cupidatat magna voluptate deserunt ullamco qui labore adipisicing amet ex irure. Culpa culpa in anim reprehenderit cupidatat qui aliqua tempor laborum non consectetur et voluptate. Labore irure nisi dolor nostrud excepteur cupidatat id occaecat ullamco laboris. Adipisicing Lorem ex labore officia excepteur mollit fugiat ullamco.\r\n", "registered": "2014-02-22T01:40:35-13:00", "latitude": -55.089483, "longitude": 146.095511, "tags": [ "sit", "incididunt", "sunt", "esse", "magna", "ex", "pariatur" ], "friends": [ { "id": 0, "name": "Simmons Rodriguez" }, { "id": 1, "name": "Tami Bates" }, { "id": 2, "name": "Raquel Shepard" } ], "greeting": "Hello, Janell Wood! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b310e6973e4eea59b", "index": 4858, "guid": "b3fac4dd-c9b3-48c4-bca9-def49440fdb2", "isActive": true, "balance": "$2,428.93", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Figueroa Mercado", "gender": "male", "company": "KATAKANA", "email": "figueroamercado@katakana.com", "phone": "+1 (895) 542-3619", "address": "216 Lexington Avenue, Tooleville, Illinois, 6927", "about": "In adipisicing nisi mollit in do exercitation ea magna aute labore culpa. Sunt aute exercitation fugiat enim pariatur voluptate. Quis non ut Lorem qui deserunt laborum. Ex eu ea Lorem dolore officia ut Lorem cupidatat.\r\n", "registered": "2014-02-21T05:15:25-13:00", "latitude": -11.431093, "longitude": -148.004345, "tags": [ "voluptate", "labore", "ipsum", "reprehenderit", "quis", "commodo", "ad" ], "friends": [ { "id": 0, "name": "Baldwin Fitzpatrick" }, { "id": 1, "name": "Combs Hart" }, { "id": 2, "name": "Sylvia Poole" } ], "greeting": "Hello, Figueroa Mercado! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bf9c2be9282641134", "index": 4859, "guid": "6e1e0fc4-8cbc-4261-aa55-9f7073fa883e", "isActive": false, "balance": "$3,543.43", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Alison Franks", "gender": "female", "company": "ILLUMITY", "email": "alisonfranks@illumity.com", "phone": "+1 (930) 582-3657", "address": "726 Brighton Court, Lavalette, South Carolina, 2974", "about": "Ut nostrud incididunt labore adipisicing reprehenderit fugiat qui sunt. Non deserunt id nisi commodo irure proident aliquip nostrud ullamco Lorem commodo nostrud ipsum. Laborum enim exercitation qui fugiat irure. Minim est eiusmod nostrud pariatur sint irure voluptate fugiat aute ut ad. Do enim occaecat sint fugiat consequat irure consequat eiusmod ullamco non consectetur quis aute veniam. Ut officia laborum ipsum amet qui exercitation minim aliquip aliqua excepteur nostrud. Dolor irure cupidatat minim aute irure ex sint qui sunt ex tempor.\r\n", "registered": "2014-02-14T22:56:52-13:00", "latitude": -66.180757, "longitude": -177.24845, "tags": [ "excepteur", "elit", "ullamco", "commodo", "ad", "irure", "aliqua" ], "friends": [ { "id": 0, "name": "Jillian Watson" }, { "id": 1, "name": "Sherrie Shaw" }, { "id": 2, "name": "Bailey Smith" } ], "greeting": "Hello, Alison Franks! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b0fbb1f585e421912", "index": 4860, "guid": "e5476dc3-b07f-4296-9d7f-c9a55d4ef907", "isActive": true, "balance": "$3,058.24", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Moreno Bell", "gender": "male", "company": "PARLEYNET", "email": "morenobell@parleynet.com", "phone": "+1 (900) 403-2094", "address": "379 Columbia Street, Crown, American Samoa, 3639", "about": "Sint proident exercitation eiusmod excepteur. Sint mollit ad sint aliqua. Sit quis proident ipsum laboris veniam pariatur ut irure. Amet excepteur cillum eu enim nulla est. Et fugiat magna consequat ut ullamco sit culpa anim irure.\r\n", "registered": "2014-07-07T09:40:39-12:00", "latitude": 13.616511, "longitude": 117.557895, "tags": [ "id", "aute", "excepteur", "exercitation", "laboris", "ad", "quis" ], "friends": [ { "id": 0, "name": "Naomi Simon" }, { "id": 1, "name": "Esther Orr" }, { "id": 2, "name": "West Page" } ], "greeting": "Hello, Moreno Bell! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bb009a9ae0e1c1263", "index": 4861, "guid": "d4d314d0-20b7-446d-9b7c-8ab016899b6c", "isActive": true, "balance": "$3,865.02", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Jocelyn Greene", "gender": "female", "company": "ASSURITY", "email": "jocelyngreene@assurity.com", "phone": "+1 (849) 466-3116", "address": "652 Butler Street, Katonah, Delaware, 475", "about": "Aliquip amet aute occaecat ad nisi consequat adipisicing aliqua. Eiusmod ad sunt ex ipsum exercitation quis. Cillum magna voluptate culpa dolor nostrud excepteur exercitation duis ex aliquip nostrud. Fugiat adipisicing deserunt labore incididunt officia mollit esse mollit nisi nisi.\r\n", "registered": "2014-09-02T01:55:15-12:00", "latitude": 12.826936, "longitude": 130.890814, "tags": [ "cupidatat", "do", "velit", "adipisicing", "irure", "laborum", "nulla" ], "friends": [ { "id": 0, "name": "Rivers Flowers" }, { "id": 1, "name": "Neva Spencer" }, { "id": 2, "name": "Huffman Booker" } ], "greeting": "Hello, Jocelyn Greene! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b6e2ed1bac389d92f", "index": 4862, "guid": "cf7281b6-482b-4b98-aa14-b469cc58834d", "isActive": false, "balance": "$3,642.50", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Sybil Vinson", "gender": "female", "company": "MEDMEX", "email": "sybilvinson@medmex.com", "phone": "+1 (888) 566-3107", "address": "298 Beekman Place, Greenock, Pennsylvania, 6904", "about": "Ullamco qui incididunt tempor quis proident enim. Aliqua sit culpa culpa ut veniam eu eu veniam tempor id fugiat labore minim. Dolore enim anim nostrud sint cupidatat elit excepteur.\r\n", "registered": "2014-05-22T03:59:47-12:00", "latitude": 10.218355, "longitude": 134.250304, "tags": [ "quis", "nisi", "elit", "laborum", "et", "aute", "dolore" ], "friends": [ { "id": 0, "name": "Liz Craft" }, { "id": 1, "name": "Orr Frazier" }, { "id": 2, "name": "Ashley Guerrero" } ], "greeting": "Hello, Sybil Vinson! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b6de9994d0520d96e", "index": 4863, "guid": "a8928076-cb24-4e11-a9ca-c25b1a72013b", "isActive": true, "balance": "$3,265.24", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Adkins Francis", "gender": "male", "company": "VELOS", "email": "adkinsfrancis@velos.com", "phone": "+1 (905) 460-2628", "address": "203 Dwight Street, Celeryville, Georgia, 7490", "about": "Ullamco Lorem voluptate consequat commodo officia non eu esse. Occaecat cillum fugiat pariatur cupidatat ad incididunt eu aliqua culpa mollit eiusmod non id. Voluptate eu ipsum excepteur voluptate aute tempor aliquip cupidatat consequat nulla. Ut commodo ad elit non aliquip irure enim.\r\n", "registered": "2014-07-27T15:45:55-12:00", "latitude": 3.555751, "longitude": 5.771618, "tags": [ "eu", "ea", "veniam", "proident", "pariatur", "ea", "duis" ], "friends": [ { "id": 0, "name": "Liliana Wiley" }, { "id": 1, "name": "Kate Kelly" }, { "id": 2, "name": "Faith Klein" } ], "greeting": "Hello, Adkins Francis! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b81368fb699ec7a0f", "index": 4864, "guid": "7736d4dd-ef95-4f54-9a84-7e7d18923e50", "isActive": false, "balance": "$3,777.91", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Pansy Mcbride", "gender": "female", "company": "SUSTENZA", "email": "pansymcbride@sustenza.com", "phone": "+1 (961) 417-2742", "address": "264 Bragg Street, Venice, North Dakota, 7802", "about": "Do eu do velit nostrud mollit dolore nulla irure veniam nulla mollit labore. Cupidatat exercitation Lorem ullamco aute culpa aliquip nisi sit consectetur. Excepteur tempor Lorem Lorem eiusmod elit laborum laborum culpa.\r\n", "registered": "2014-04-09T03:05:05-12:00", "latitude": -1.364353, "longitude": -170.075259, "tags": [ "nisi", "eu", "sit", "exercitation", "non", "cillum", "dolor" ], "friends": [ { "id": 0, "name": "Daugherty Carey" }, { "id": 1, "name": "Curry Fry" }, { "id": 2, "name": "Castro Beasley" } ], "greeting": "Hello, Pansy Mcbride! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2baae26f29a339baed", "index": 4865, "guid": "09fb955d-bd6c-42ff-a105-c28e879838a4", "isActive": true, "balance": "$1,716.68", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Chelsea Gaines", "gender": "female", "company": "GRAINSPOT", "email": "chelseagaines@grainspot.com", "phone": "+1 (801) 479-3250", "address": "571 Gotham Avenue, Benson, Louisiana, 9006", "about": "Do nisi enim ex mollit officia officia. Ea veniam id voluptate commodo sit reprehenderit excepteur ipsum qui. Ullamco nulla adipisicing incididunt dolor in tempor incididunt quis duis deserunt nulla et. Amet irure ipsum fugiat excepteur ea commodo. Excepteur proident ad Lorem culpa proident elit nostrud tempor officia deserunt ea eu nisi est. In commodo eu fugiat tempor quis commodo. Laborum ea aliqua proident minim dolor nisi deserunt anim.\r\n", "registered": "2014-01-30T07:09:36-13:00", "latitude": 55.446852, "longitude": -126.773431, "tags": [ "occaecat", "ipsum", "eu", "veniam", "incididunt", "dolor", "ipsum" ], "friends": [ { "id": 0, "name": "Gilda Warner" }, { "id": 1, "name": "Susana Henry" }, { "id": 2, "name": "Lara Clark" } ], "greeting": "Hello, Chelsea Gaines! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b683fb3f3ba73b2d9", "index": 4866, "guid": "8ecc168a-72a3-4664-971d-102441e5be1e", "isActive": false, "balance": "$3,626.15", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Galloway Baird", "gender": "male", "company": "QUALITEX", "email": "gallowaybaird@qualitex.com", "phone": "+1 (839) 460-2230", "address": "179 Rockaway Parkway, Stollings, Northern Mariana Islands, 7227", "about": "Nulla sint dolore ipsum est tempor sit adipisicing Lorem veniam non. Nulla aliquip aliquip proident duis aliqua culpa ad dolore commodo eiusmod tempor dolor ea ex. Proident est dolore amet fugiat pariatur veniam sunt reprehenderit sunt fugiat eiusmod deserunt voluptate Lorem.\r\n", "registered": "2014-06-15T01:10:48-12:00", "latitude": -61.054454, "longitude": -29.155278, "tags": [ "ipsum", "excepteur", "consequat", "labore", "excepteur", "minim", "labore" ], "friends": [ { "id": 0, "name": "Cantrell Noel" }, { "id": 1, "name": "Freida Dunlap" }, { "id": 2, "name": "Gray Kramer" } ], "greeting": "Hello, Galloway Baird! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b7d192ab44e8dcee1", "index": 4867, "guid": "1b163231-69c7-47fe-9c86-7ff022ac789d", "isActive": false, "balance": "$1,728.15", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Madge Hubbard", "gender": "female", "company": "ZBOO", "email": "madgehubbard@zboo.com", "phone": "+1 (865) 424-3269", "address": "827 Powers Street, Nettie, Colorado, 145", "about": "Exercitation ullamco exercitation adipisicing reprehenderit velit consequat fugiat ea eu deserunt. Esse consequat Lorem aliquip quis labore consequat velit. Occaecat exercitation enim irure ad non. Sit veniam do eu elit eu proident consectetur adipisicing nisi excepteur non adipisicing nisi. Cupidatat do nostrud esse excepteur cillum mollit.\r\n", "registered": "2014-01-16T14:42:20-13:00", "latitude": 78.650556, "longitude": 49.46131, "tags": [ "ea", "dolor", "anim", "occaecat", "consectetur", "eiusmod", "exercitation" ], "friends": [ { "id": 0, "name": "Malinda Petersen" }, { "id": 1, "name": "Hale Ford" }, { "id": 2, "name": "Conrad Buck" } ], "greeting": "Hello, Madge Hubbard! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b2826bd869ddf071e", "index": 4868, "guid": "1d63c2ec-6dd7-4630-b234-31abc881f66e", "isActive": true, "balance": "$1,804.72", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Alana Harrington", "gender": "female", "company": "GOKO", "email": "alanaharrington@goko.com", "phone": "+1 (940) 480-3132", "address": "381 Gates Avenue, Dante, Idaho, 1996", "about": "Pariatur est ipsum mollit do labore occaecat officia dolor officia eu amet. Culpa laborum aliquip excepteur dolore nisi dolor. Mollit anim do nisi eu mollit eiusmod Lorem excepteur sit dolor cillum sint adipisicing. Commodo enim tempor nulla tempor commodo consequat laboris dolor culpa nostrud veniam. Ex elit aliquip minim cupidatat esse anim voluptate eiusmod. Dolor laborum veniam consequat ad. Consequat dolor esse excepteur nulla exercitation duis et dolor quis aute magna duis aute culpa.\r\n", "registered": "2014-04-09T23:21:53-12:00", "latitude": 47.686407, "longitude": 15.709269, "tags": [ "sint", "reprehenderit", "esse", "laborum", "duis", "sit", "commodo" ], "friends": [ { "id": 0, "name": "Savage Johns" }, { "id": 1, "name": "Steele Montoya" }, { "id": 2, "name": "Ramona Berger" } ], "greeting": "Hello, Alana Harrington! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b60cd76b4cb34d338", "index": 4869, "guid": "1cfdc8a3-b3f9-4fc8-9f73-bbb42e729a6d", "isActive": true, "balance": "$2,928.58", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Darla Osborne", "gender": "female", "company": "TALKALOT", "email": "darlaosborne@talkalot.com", "phone": "+1 (946) 501-3319", "address": "146 Sullivan Street, Nord, Marshall Islands, 7638", "about": "Dolore dolore magna dolor sunt labore. Eu est excepteur sit elit incididunt deserunt deserunt enim ullamco qui ipsum aliqua aliquip officia. Esse fugiat laborum excepteur laborum. Elit ipsum voluptate duis occaecat commodo consequat velit. Esse qui ex enim consequat ullamco magna laboris consequat labore.\r\n", "registered": "2014-01-21T05:44:45-13:00", "latitude": -81.382319, "longitude": 69.003348, "tags": [ "qui", "excepteur", "do", "velit", "nostrud", "officia", "consequat" ], "friends": [ { "id": 0, "name": "Shaw Mathis" }, { "id": 1, "name": "Baird Melton" }, { "id": 2, "name": "Shelton Eaton" } ], "greeting": "Hello, Darla Osborne! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b8df2bca8025c434e", "index": 4870, "guid": "c8b1a596-ec62-4461-b318-bdebb121bd2d", "isActive": true, "balance": "$2,063.66", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "brown", "name": "Chris Mays", "gender": "female", "company": "LYRIA", "email": "chrismays@lyria.com", "phone": "+1 (824) 564-2848", "address": "915 Mersereau Court, Duryea, New York, 4430", "about": "Sint deserunt irure occaecat est ex est do sunt pariatur adipisicing elit occaecat Lorem. Enim proident Lorem dolor esse cupidatat. Do occaecat in minim ut incididunt labore ipsum incididunt qui excepteur duis exercitation ut.\r\n", "registered": "2014-05-26T07:19:09-12:00", "latitude": -22.127257, "longitude": -119.247064, "tags": [ "Lorem", "ullamco", "occaecat", "consectetur", "excepteur", "reprehenderit", "sint" ], "friends": [ { "id": 0, "name": "Massey Gill" }, { "id": 1, "name": "Nona Wheeler" }, { "id": 2, "name": "Hughes Carr" } ], "greeting": "Hello, Chris Mays! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bf4f263a4eb44b016", "index": 4871, "guid": "596646c6-0a28-429d-8666-45f9a0ddc4c5", "isActive": false, "balance": "$3,075.49", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Cindy Wolfe", "gender": "female", "company": "KENEGY", "email": "cindywolfe@kenegy.com", "phone": "+1 (924) 453-3627", "address": "256 Balfour Place, Vincent, Guam, 401", "about": "Lorem ex ex nisi ea elit. Dolore fugiat eu fugiat deserunt enim sit eiusmod do aliquip. Occaecat mollit in aliqua consectetur proident in ut officia mollit tempor ipsum aliqua amet ut.\r\n", "registered": "2014-03-17T18:25:57-13:00", "latitude": -53.569671, "longitude": -136.698651, "tags": [ "occaecat", "duis", "voluptate", "tempor", "velit", "amet", "esse" ], "friends": [ { "id": 0, "name": "Oneal Huber" }, { "id": 1, "name": "Terry Pierce" }, { "id": 2, "name": "Torres Merritt" } ], "greeting": "Hello, Cindy Wolfe! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b4feadf3f604be60a", "index": 4872, "guid": "14dc1784-73be-4ac9-a8f5-49187905e73a", "isActive": false, "balance": "$1,660.63", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Jensen Aguirre", "gender": "male", "company": "ZYTREX", "email": "jensenaguirre@zytrex.com", "phone": "+1 (965) 418-2486", "address": "486 Oriental Boulevard, Ebro, Virgin Islands, 1607", "about": "Reprehenderit aliquip ea et commodo cupidatat. Esse ea cillum esse tempor sunt veniam nulla sint cillum magna. Veniam tempor voluptate voluptate Lorem. Do est cupidatat id et fugiat duis dolor eu mollit occaecat occaecat velit. Ex ipsum quis anim do velit ipsum minim sunt. Sint occaecat deserunt voluptate sit ullamco exercitation exercitation anim excepteur.\r\n", "registered": "2014-03-12T07:52:46-13:00", "latitude": 68.465752, "longitude": 113.750502, "tags": [ "enim", "exercitation", "do", "incididunt", "ipsum", "quis", "nulla" ], "friends": [ { "id": 0, "name": "Gretchen Luna" }, { "id": 1, "name": "Hutchinson Bowen" }, { "id": 2, "name": "Loraine Mueller" } ], "greeting": "Hello, Jensen Aguirre! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bb7f70bf120eced83", "index": 4873, "guid": "1f75d2a8-88b8-45dc-9a08-9e8f4d6e87c8", "isActive": true, "balance": "$1,738.71", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Stevens Duncan", "gender": "male", "company": "ANIVET", "email": "stevensduncan@anivet.com", "phone": "+1 (883) 438-3957", "address": "298 Schenck Street, Salunga, Massachusetts, 9986", "about": "Exercitation elit incididunt sint dolore cillum mollit. In incididunt aliquip enim ea ullamco labore anim. Amet culpa irure esse ex. Elit irure reprehenderit ullamco aliqua voluptate laboris nisi ipsum. Nisi eu commodo dolore exercitation ipsum enim cupidatat dolore fugiat mollit ea. Magna qui sit quis amet nostrud velit id do. Dolor aliqua aute consectetur ad dolore cupidatat.\r\n", "registered": "2014-02-18T21:07:14-13:00", "latitude": 9.867589, "longitude": -148.836282, "tags": [ "ullamco", "cupidatat", "culpa", "aliqua", "cupidatat", "excepteur", "irure" ], "friends": [ { "id": 0, "name": "Vega Burt" }, { "id": 1, "name": "Kennedy Saunders" }, { "id": 2, "name": "Sanchez Caldwell" } ], "greeting": "Hello, Stevens Duncan! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b50a0aa3737c880b5", "index": 4874, "guid": "27bfe879-eee4-46d8-a4d1-5e263c8b86d1", "isActive": false, "balance": "$1,117.23", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Lucia House", "gender": "female", "company": "NETAGY", "email": "luciahouse@netagy.com", "phone": "+1 (946) 479-3912", "address": "568 Garfield Place, Talpa, Utah, 7867", "about": "Ea velit ut fugiat anim et Lorem irure enim do labore ex. Veniam ex minim qui ullamco amet incididunt non deserunt minim mollit consectetur dolore quis dolor. Ad anim qui proident elit velit sunt. Irure occaecat aliquip commodo sint esse deserunt exercitation reprehenderit. Sit dolor non reprehenderit et enim mollit duis quis nulla pariatur nostrud.\r\n", "registered": "2014-05-24T04:26:53-12:00", "latitude": -1.820575, "longitude": 104.432914, "tags": [ "esse", "proident", "ex", "Lorem", "et", "est", "do" ], "friends": [ { "id": 0, "name": "Duncan Dudley" }, { "id": 1, "name": "England Wynn" }, { "id": 2, "name": "Cobb Wilkinson" } ], "greeting": "Hello, Lucia House! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bfd6fabbe10a782fd", "index": 4875, "guid": "94f8b095-93fe-4372-b8b4-d9449bd6d832", "isActive": false, "balance": "$2,546.76", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Whitney Bailey", "gender": "female", "company": "TERASCAPE", "email": "whitneybailey@terascape.com", "phone": "+1 (962) 563-3188", "address": "310 Ocean Court, Steinhatchee, Montana, 3594", "about": "Cupidatat minim ea in quis minim sunt id Lorem ullamco ex nostrud exercitation Lorem. Lorem do ipsum ut fugiat anim cillum ea ipsum mollit mollit incididunt nulla. Aliquip officia consequat enim ipsum velit eiusmod dolore laboris cupidatat cillum reprehenderit magna proident minim. Aute enim incididunt in ullamco proident ex veniam cupidatat nulla deserunt amet ipsum irure anim. Labore officia elit in ullamco esse aute veniam ipsum qui adipisicing sunt laboris.\r\n", "registered": "2014-05-19T12:46:02-12:00", "latitude": 25.703194, "longitude": 136.454258, "tags": [ "mollit", "dolor", "ad", "pariatur", "labore", "et", "nostrud" ], "friends": [ { "id": 0, "name": "Long Barry" }, { "id": 1, "name": "Alford Atkins" }, { "id": 2, "name": "Grant Donaldson" } ], "greeting": "Hello, Whitney Bailey! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b6aa3289cab549624", "index": 4876, "guid": "058c39a6-c315-4263-a35c-21b88c1d2080", "isActive": false, "balance": "$1,104.16", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Griffin Hutchinson", "gender": "male", "company": "GLOBOIL", "email": "griffinhutchinson@globoil.com", "phone": "+1 (917) 567-3032", "address": "209 Perry Terrace, Mathews, Wisconsin, 339", "about": "Ullamco ut eiusmod culpa tempor mollit incididunt cupidatat minim proident ex qui mollit. Tempor mollit id consequat enim. Anim irure laboris esse cupidatat dolor aliquip duis adipisicing commodo. Sit aliquip ex excepteur do. Id enim et sint nisi nulla aliqua velit sit.\r\n", "registered": "2014-03-13T12:07:43-13:00", "latitude": 65.390471, "longitude": 12.41571, "tags": [ "sit", "sit", "enim", "ipsum", "consectetur", "est", "Lorem" ], "friends": [ { "id": 0, "name": "Rosales Decker" }, { "id": 1, "name": "Ora Cochran" }, { "id": 2, "name": "Mckenzie Mckay" } ], "greeting": "Hello, Griffin Hutchinson! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b8b5d6c1dceab4cb8", "index": 4877, "guid": "405e9c82-db01-4c64-8cea-1ded8d21624d", "isActive": true, "balance": "$3,657.53", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Bridgette Simpson", "gender": "female", "company": "DIGIRANG", "email": "bridgettesimpson@digirang.com", "phone": "+1 (984) 409-2063", "address": "632 Farragut Road, Greenwich, Maine, 3142", "about": "Mollit labore qui culpa eu adipisicing amet non veniam et. Eiusmod aute cillum consequat nisi officia veniam. Nulla sint proident occaecat voluptate. Tempor sit est nisi occaecat proident reprehenderit exercitation eiusmod aute consequat excepteur anim Lorem ad. Ad ut consequat sunt ut ex aute consequat id non cillum elit sit ipsum. Fugiat exercitation exercitation consectetur duis nisi irure magna ipsum id officia commodo pariatur quis.\r\n", "registered": "2014-09-03T05:10:09-12:00", "latitude": 32.364255, "longitude": -130.01931, "tags": [ "ullamco", "quis", "dolore", "aliquip", "dolor", "et", "veniam" ], "friends": [ { "id": 0, "name": "Tamera Everett" }, { "id": 1, "name": "Hopper Delgado" }, { "id": 2, "name": "Lillie Mcgowan" } ], "greeting": "Hello, Bridgette Simpson! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bfda59d70664629b6", "index": 4878, "guid": "b7a11761-b40a-4f57-9eb8-3a5268c3cc92", "isActive": false, "balance": "$3,301.25", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Cristina Fleming", "gender": "female", "company": "MACRONAUT", "email": "cristinafleming@macronaut.com", "phone": "+1 (851) 579-3394", "address": "368 Moore Place, Rosedale, Virginia, 3227", "about": "Aute sint nisi laborum sint. Veniam quis velit nulla voluptate ullamco elit magna mollit laborum et laborum duis proident veniam. Ullamco Lorem est aute laborum laboris magna aliquip magna eiusmod culpa. Fugiat tempor enim magna in quis ea do. Laboris deserunt occaecat velit velit fugiat proident et aute laboris.\r\n", "registered": "2014-05-08T19:13:39-12:00", "latitude": 17.303131, "longitude": 160.420463, "tags": [ "consectetur", "mollit", "cillum", "culpa", "voluptate", "ad", "ipsum" ], "friends": [ { "id": 0, "name": "Michael Burton" }, { "id": 1, "name": "Webster Graves" }, { "id": 2, "name": "Norton Potts" } ], "greeting": "Hello, Cristina Fleming! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2be4bda9eb6c9981a1", "index": 4879, "guid": "8ca35401-6a61-4230-8431-9fe71330d6a4", "isActive": true, "balance": "$2,283.42", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "brown", "name": "Miles Holland", "gender": "male", "company": "EXPOSA", "email": "milesholland@exposa.com", "phone": "+1 (929) 475-2076", "address": "662 Bliss Terrace, Corriganville, Kentucky, 395", "about": "Cupidatat officia aliquip veniam qui reprehenderit nisi amet commodo minim ad. Aliquip elit magna ea do minim est labore ut. Duis tempor laboris non aliquip officia qui. Non esse enim labore voluptate fugiat incididunt quis excepteur. Nisi consequat id eu est proident id. Fugiat quis in anim elit consequat ipsum Lorem est. Elit sunt ut ullamco velit elit consectetur laboris veniam magna excepteur id nulla nostrud.\r\n", "registered": "2014-01-06T22:31:46-13:00", "latitude": -18.354345, "longitude": -134.488058, "tags": [ "consequat", "do", "cupidatat", "amet", "minim", "deserunt", "elit" ], "friends": [ { "id": 0, "name": "Minnie Hewitt" }, { "id": 1, "name": "Dillard Porter" }, { "id": 2, "name": "Sheree Callahan" } ], "greeting": "Hello, Miles Holland! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bba2210d0f7c3276c", "index": 4880, "guid": "4778c505-73c2-4ced-aa1e-c8c92559e1a4", "isActive": true, "balance": "$1,643.14", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Adriana Christensen", "gender": "female", "company": "EXOVENT", "email": "adrianachristensen@exovent.com", "phone": "+1 (948) 592-2962", "address": "269 Cedar Street, Snyderville, Connecticut, 7454", "about": "Amet officia ad magna pariatur fugiat voluptate magna anim cillum ex aute quis occaecat nisi. Ipsum laboris quis tempor tempor non ad eu et esse ad. Occaecat nulla sint aliquip incididunt quis tempor tempor dolor commodo dolor eiusmod. Aliquip in cupidatat eu esse commodo deserunt non adipisicing elit sit et et mollit. Anim irure excepteur ea commodo eu ullamco culpa irure nostrud cupidatat esse do dolore consectetur. Nisi aliqua Lorem id fugiat sint officia.\r\n", "registered": "2014-01-03T06:32:48-13:00", "latitude": -25.802951, "longitude": 162.824008, "tags": [ "deserunt", "sit", "deserunt", "ex", "proident", "eiusmod", "tempor" ], "friends": [ { "id": 0, "name": "Serena Salazar" }, { "id": 1, "name": "Erma Emerson" }, { "id": 2, "name": "Aline Velasquez" } ], "greeting": "Hello, Adriana Christensen! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ba15c1f3f4fecdd18", "index": 4881, "guid": "1a57cba3-8ab4-4370-80a2-1506053437fc", "isActive": true, "balance": "$1,686.68", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Eddie Chapman", "gender": "female", "company": "KROG", "email": "eddiechapman@krog.com", "phone": "+1 (959) 559-2157", "address": "455 Montauk Court, Strykersville, Mississippi, 2881", "about": "Consectetur anim pariatur in do non ullamco ea laborum cupidatat sunt consectetur reprehenderit tempor eiusmod. Elit irure eu esse eu amet incididunt. Elit pariatur fugiat commodo cillum aute nulla incididunt enim incididunt veniam exercitation. Deserunt mollit fugiat cupidatat ullamco mollit ullamco dolor est nisi cillum. Dolore ullamco incididunt proident dolore. Commodo minim consectetur labore eiusmod tempor ipsum in minim adipisicing. Esse ullamco pariatur sint aliqua velit.\r\n", "registered": "2014-04-04T12:29:41-13:00", "latitude": -58.122922, "longitude": -133.995621, "tags": [ "ullamco", "adipisicing", "do", "proident", "esse", "esse", "aliqua" ], "friends": [ { "id": 0, "name": "Judy Jennings" }, { "id": 1, "name": "Myra Logan" }, { "id": 2, "name": "Katie Sloan" } ], "greeting": "Hello, Eddie Chapman! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bf0861847be0ddff6", "index": 4882, "guid": "359f5e01-b944-4fe4-870d-a4dd4aff59d2", "isActive": true, "balance": "$1,240.84", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Newton Lamb", "gender": "male", "company": "FIREWAX", "email": "newtonlamb@firewax.com", "phone": "+1 (836) 436-3627", "address": "322 Banker Street, Whitestone, Washington, 2105", "about": "Laboris pariatur cupidatat occaecat laboris ullamco adipisicing nostrud dolore velit exercitation pariatur. Ipsum elit commodo adipisicing exercitation est veniam id ullamco nostrud excepteur consectetur qui. Est occaecat culpa commodo aliquip sit nulla. Dolore qui mollit laborum labore eu dolore sint sunt irure cupidatat voluptate quis. Dolor eiusmod nostrud dolor laborum.\r\n", "registered": "2014-01-29T10:15:29-13:00", "latitude": -89.710836, "longitude": -69.71774, "tags": [ "mollit", "et", "deserunt", "ad", "fugiat", "nulla", "do" ], "friends": [ { "id": 0, "name": "Dyer Jensen" }, { "id": 1, "name": "Imogene Carrillo" }, { "id": 2, "name": "Austin Mccarthy" } ], "greeting": "Hello, Newton Lamb! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2be74e0cfd6df08810", "index": 4883, "guid": "47b5822d-b8ef-4742-b12a-76a5512fc28a", "isActive": true, "balance": "$3,118.12", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Reed Salas", "gender": "male", "company": "SENMEI", "email": "reedsalas@senmei.com", "phone": "+1 (865) 541-3238", "address": "319 Dare Court, Conestoga, Tennessee, 9897", "about": "Voluptate ullamco dolore nisi sunt nisi. Voluptate est proident commodo dolore incididunt mollit sint veniam voluptate anim cupidatat adipisicing. Minim amet sit fugiat anim et sint proident duis. Veniam est et aliquip excepteur cupidatat enim. Cillum culpa ut aliqua irure sunt do in incididunt nisi.\r\n", "registered": "2014-03-21T12:05:47-13:00", "latitude": 76.792455, "longitude": -100.970935, "tags": [ "eu", "nulla", "ad", "nisi", "adipisicing", "deserunt", "eiusmod" ], "friends": [ { "id": 0, "name": "Guy Castillo" }, { "id": 1, "name": "Koch Tanner" }, { "id": 2, "name": "Bettye Chase" } ], "greeting": "Hello, Reed Salas! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2be44ed56e6b1fd85c", "index": 4884, "guid": "8f0361a3-b2df-4249-bb0b-23f519b70bd0", "isActive": false, "balance": "$2,361.03", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "blue", "name": "Audra Suarez", "gender": "female", "company": "ORONOKO", "email": "audrasuarez@oronoko.com", "phone": "+1 (838) 410-3557", "address": "602 National Drive, Drytown, Alabama, 9110", "about": "Non mollit amet id deserunt amet commodo labore excepteur elit consectetur. Culpa consectetur aliquip elit ut mollit consequat quis. Fugiat voluptate consequat pariatur pariatur laboris proident qui pariatur anim quis eiusmod. Voluptate velit elit non aliqua cupidatat ullamco laborum deserunt ut nulla sit esse magna consectetur.\r\n", "registered": "2014-06-11T07:04:17-12:00", "latitude": 60.776185, "longitude": -106.311344, "tags": [ "est", "minim", "id", "cillum", "consequat", "Lorem", "aute" ], "friends": [ { "id": 0, "name": "Evangeline Leonard" }, { "id": 1, "name": "Green Castro" }, { "id": 2, "name": "Casandra Burks" } ], "greeting": "Hello, Audra Suarez! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b153f24b48399ccf5", "index": 4885, "guid": "26fc912e-d63c-4778-b649-fade6538fb8f", "isActive": false, "balance": "$3,512.41", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "green", "name": "Bonita Perry", "gender": "female", "company": "OPTICALL", "email": "bonitaperry@opticall.com", "phone": "+1 (972) 546-3903", "address": "321 Hendrickson Street, Leola, Ohio, 9253", "about": "Cillum Lorem ad non sit ea laborum ex aute consequat cillum. Enim amet commodo anim nostrud. Aute laboris incididunt consectetur est dolore pariatur dolore proident mollit eiusmod ut occaecat voluptate nulla. Eu nisi dolore consectetur consectetur consequat.\r\n", "registered": "2014-01-20T07:43:28-13:00", "latitude": 26.027877, "longitude": 55.833264, "tags": [ "minim", "officia", "ea", "exercitation", "occaecat", "enim", "elit" ], "friends": [ { "id": 0, "name": "Denise Hansen" }, { "id": 1, "name": "Consuelo Avery" }, { "id": 2, "name": "Arline Holman" } ], "greeting": "Hello, Bonita Perry! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b7b7bb8af01c890da", "index": 4886, "guid": "c687d5fd-dc98-45ce-88fa-5369b3f1ee6c", "isActive": true, "balance": "$1,668.87", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "brown", "name": "Melton Boyle", "gender": "male", "company": "UNQ", "email": "meltonboyle@unq.com", "phone": "+1 (899) 575-3335", "address": "704 Highland Boulevard, Chalfant, Hawaii, 6591", "about": "Elit nostrud exercitation amet commodo ea ut id proident. Aliquip ipsum do do id elit mollit aute incididunt non veniam. Est irure eu officia elit occaecat ut deserunt esse deserunt veniam. Quis magna qui pariatur est duis irure occaecat consequat elit proident sint. Incididunt adipisicing laborum ipsum ut exercitation amet nostrud velit dolore culpa labore et excepteur. Culpa voluptate sint sunt officia mollit Lorem ipsum velit irure labore.\r\n", "registered": "2014-01-01T02:14:41-13:00", "latitude": 13.422172, "longitude": 120.041789, "tags": [ "incididunt", "consectetur", "est", "duis", "ea", "officia", "consectetur" ], "friends": [ { "id": 0, "name": "Randall Bauer" }, { "id": 1, "name": "Kerr Avila" }, { "id": 2, "name": "Enid Vazquez" } ], "greeting": "Hello, Melton Boyle! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bf3346aec9bb722da", "index": 4887, "guid": "81d5f6fe-a593-4a52-9ae6-01d678535e86", "isActive": false, "balance": "$1,656.76", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Reynolds Tucker", "gender": "male", "company": "PRINTSPAN", "email": "reynoldstucker@printspan.com", "phone": "+1 (832) 407-2561", "address": "579 Bartlett Street, Marysville, New Mexico, 8022", "about": "Reprehenderit duis minim cillum aliquip nisi et ut eu. Nostrud commodo deserunt eiusmod elit. Consequat non irure veniam voluptate tempor ea ullamco ex ullamco aliqua nulla quis. Commodo eu excepteur incididunt duis ad dolore est do ex est tempor cillum ex ea. Aute ex cillum duis commodo officia voluptate adipisicing et exercitation. Velit officia enim excepteur ipsum cillum commodo veniam. Et cupidatat aliqua ut Lorem occaecat mollit aliqua.\r\n", "registered": "2014-03-25T07:08:50-13:00", "latitude": 40.886289, "longitude": -122.662122, "tags": [ "labore", "nisi", "quis", "qui", "id", "velit", "fugiat" ], "friends": [ { "id": 0, "name": "Diana Swanson" }, { "id": 1, "name": "Vera Miles" }, { "id": 2, "name": "Townsend Hays" } ], "greeting": "Hello, Reynolds Tucker! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b482b8fba52515c6b", "index": 4888, "guid": "6676e72f-8fba-40f8-8a08-59d8d002168a", "isActive": true, "balance": "$2,419.25", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "green", "name": "Pace Whitley", "gender": "male", "company": "EARWAX", "email": "pacewhitley@earwax.com", "phone": "+1 (848) 594-2195", "address": "326 Manhattan Court, Tivoli, Maryland, 1680", "about": "Commodo mollit esse sit qui dolor. Labore esse enim et non nostrud exercitation officia culpa pariatur ipsum. Amet aute incididunt amet duis cillum voluptate incididunt sit esse proident magna anim dolore. Veniam eiusmod consequat dolor ad fugiat ea fugiat aliqua ea adipisicing irure velit laborum. Laboris esse pariatur ut esse cupidatat occaecat ex nulla do occaecat qui id.\r\n", "registered": "2014-08-29T00:33:51-12:00", "latitude": 34.775915, "longitude": 158.660378, "tags": [ "velit", "sint", "proident", "culpa", "minim", "sit", "laborum" ], "friends": [ { "id": 0, "name": "Sosa Stone" }, { "id": 1, "name": "Corine Villarreal" }, { "id": 2, "name": "Ola Howe" } ], "greeting": "Hello, Pace Whitley! You have 1 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2be2cce3f939931a60", "index": 4889, "guid": "bf03f61e-737c-4a11-b2c5-cdb00bdab183", "isActive": true, "balance": "$2,826.41", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Chavez Keith", "gender": "male", "company": "BIZMATIC", "email": "chavezkeith@bizmatic.com", "phone": "+1 (802) 468-2649", "address": "563 Kingsland Avenue, Garfield, Alaska, 3643", "about": "Id tempor id velit ad sint aliquip dolor sint sit. Nostrud dolore et nulla cillum occaecat consectetur nostrud Lorem exercitation aliqua enim. Officia velit laborum anim ex ad ut ut. Enim voluptate labore aliquip magna ea ullamco enim do aliqua nulla officia ea aute consectetur.\r\n", "registered": "2014-03-17T11:05:39-13:00", "latitude": 52.458441, "longitude": 120.942448, "tags": [ "eiusmod", "magna", "exercitation", "est", "ut", "voluptate", "ad" ], "friends": [ { "id": 0, "name": "Adrian Mayo" }, { "id": 1, "name": "Gates Rosales" }, { "id": 2, "name": "Maxwell Mason" } ], "greeting": "Hello, Chavez Keith! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b7378daa31dc38b79", "index": 4890, "guid": "931222f0-23a4-432c-9dbb-a91b041d568c", "isActive": true, "balance": "$1,805.70", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "blue", "name": "Calhoun Warren", "gender": "male", "company": "ENDICIL", "email": "calhounwarren@endicil.com", "phone": "+1 (814) 510-3869", "address": "377 Grand Avenue, Gorham, Arizona, 8124", "about": "Dolor consectetur deserunt in dolor reprehenderit. Fugiat culpa do incididunt amet magna non quis dolore nisi. Aliqua reprehenderit qui mollit consectetur tempor magna officia. Proident proident incididunt incididunt exercitation dolore. Proident proident non cupidatat commodo veniam in sint officia. Ex enim laboris do id non enim duis ipsum.\r\n", "registered": "2014-03-12T01:02:51-13:00", "latitude": -19.835736, "longitude": 146.753264, "tags": [ "et", "do", "aliquip", "cillum", "duis", "occaecat", "nostrud" ], "friends": [ { "id": 0, "name": "Tasha Barlow" }, { "id": 1, "name": "Melva Davis" }, { "id": 2, "name": "David Solis" } ], "greeting": "Hello, Calhoun Warren! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bd5adf1f0b149efca", "index": 4891, "guid": "6b79aa0c-71e0-4b37-957f-a411e424374e", "isActive": true, "balance": "$1,589.18", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Fisher Riggs", "gender": "male", "company": "ZOLAR", "email": "fisherriggs@zolar.com", "phone": "+1 (827) 446-2153", "address": "385 Grand Street, Floris, Federated States Of Micronesia, 5142", "about": "Labore minim amet eiusmod minim dolore Lorem enim adipisicing ut officia velit. Commodo excepteur aute cupidatat consequat culpa in Lorem enim ullamco ut adipisicing. Lorem non eu ullamco sit nulla minim occaecat aliqua sunt. Nisi adipisicing amet dolore est fugiat nisi. Deserunt aliqua tempor veniam nulla est ipsum elit sint aute. Consequat veniam veniam ex ipsum Lorem et amet labore consectetur et. Minim eu dolor ipsum proident adipisicing excepteur enim sunt cillum non est minim sit quis.\r\n", "registered": "2014-01-10T05:56:06-13:00", "latitude": 81.172345, "longitude": 32.761844, "tags": [ "mollit", "tempor", "deserunt", "et", "minim", "sint", "exercitation" ], "friends": [ { "id": 0, "name": "Goldie Matthews" }, { "id": 1, "name": "Randolph Petty" }, { "id": 2, "name": "Danielle Marshall" } ], "greeting": "Hello, Fisher Riggs! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b198b855d45baa82e", "index": 4892, "guid": "fc160ecf-57e3-49bb-bbf0-9874f4b5a228", "isActive": true, "balance": "$2,228.75", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Watts Black", "gender": "male", "company": "GLEAMINK", "email": "wattsblack@gleamink.com", "phone": "+1 (905) 573-2355", "address": "316 Henry Street, Robbins, Oklahoma, 2539", "about": "Consectetur incididunt deserunt tempor ullamco. Exercitation voluptate nisi enim proident sunt. Consectetur et officia est pariatur quis consectetur qui proident dolore eiusmod. Sit amet anim ipsum excepteur.\r\n", "registered": "2014-05-03T20:08:13-12:00", "latitude": -40.916702, "longitude": 76.035443, "tags": [ "pariatur", "magna", "reprehenderit", "culpa", "quis", "laboris", "aliquip" ], "friends": [ { "id": 0, "name": "Hensley Sykes" }, { "id": 1, "name": "Della Becker" }, { "id": 2, "name": "Louise Cox" } ], "greeting": "Hello, Watts Black! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b6f2781ddde22d9b1", "index": 4893, "guid": "ae54ebfd-672c-4cd2-a303-ba9e16b034fc", "isActive": true, "balance": "$3,079.00", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Janna Murphy", "gender": "female", "company": "KANGLE", "email": "jannamurphy@kangle.com", "phone": "+1 (924) 493-3255", "address": "282 Greenpoint Avenue, Sidman, Michigan, 9271", "about": "Veniam mollit nulla laborum fugiat cillum occaecat minim. Est consectetur dolore aute exercitation irure voluptate elit adipisicing. Consequat deserunt anim deserunt minim minim pariatur ullamco aliquip nostrud excepteur. Mollit in velit reprehenderit ipsum sunt amet amet aute amet magna amet non labore laboris. Et excepteur ullamco voluptate laborum occaecat nisi quis enim eu nisi et. Laboris quis amet sunt non veniam.\r\n", "registered": "2014-04-22T08:32:31-12:00", "latitude": 2.585849, "longitude": 176.455129, "tags": [ "adipisicing", "anim", "cillum", "non", "occaecat", "aute", "veniam" ], "friends": [ { "id": 0, "name": "Bernadine Kim" }, { "id": 1, "name": "Fay Stafford" }, { "id": 2, "name": "Hamilton Daniel" } ], "greeting": "Hello, Janna Murphy! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b487b378eabd06579", "index": 4894, "guid": "2292123e-7e84-41ba-9c2a-0dabaa11fa78", "isActive": true, "balance": "$2,476.71", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Harris Hudson", "gender": "male", "company": "BOINK", "email": "harrishudson@boink.com", "phone": "+1 (803) 525-2471", "address": "751 Irving Street, Stagecoach, Kansas, 5887", "about": "Aute fugiat sit in velit velit. Sint nulla pariatur occaecat eiusmod. Do veniam ad nostrud pariatur mollit ex enim laboris commodo incididunt. Dolor anim dolore reprehenderit adipisicing sint culpa id do laboris tempor aute occaecat exercitation amet.\r\n", "registered": "2014-03-04T17:28:13-13:00", "latitude": 86.854021, "longitude": 12.127226, "tags": [ "commodo", "culpa", "ipsum", "proident", "anim", "dolore", "ipsum" ], "friends": [ { "id": 0, "name": "Carissa Snow" }, { "id": 1, "name": "Brandie Patrick" }, { "id": 2, "name": "Cecelia Padilla" } ], "greeting": "Hello, Harris Hudson! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b9feac4c15721982d", "index": 4895, "guid": "e32bb1d4-1532-47b6-b7a4-1efe21eb4e26", "isActive": false, "balance": "$1,449.63", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Langley Melendez", "gender": "male", "company": "SULFAX", "email": "langleymelendez@sulfax.com", "phone": "+1 (871) 517-3013", "address": "290 Claver Place, Hessville, South Dakota, 9486", "about": "Nisi in cupidatat consequat laboris sint ex sint elit velit laborum tempor proident pariatur eu. Cillum exercitation aute elit cillum sint id proident nisi. Occaecat laborum anim dolore ut culpa sint magna et occaecat labore mollit incididunt duis tempor.\r\n", "registered": "2014-07-05T10:58:03-12:00", "latitude": 60.803514, "longitude": -173.418916, "tags": [ "dolore", "incididunt", "aliqua", "et", "consectetur", "commodo", "incididunt" ], "friends": [ { "id": 0, "name": "Lidia Vasquez" }, { "id": 1, "name": "Barton Tyler" }, { "id": 2, "name": "Pittman Mooney" } ], "greeting": "Hello, Langley Melendez! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b5d55156d6081924b", "index": 4896, "guid": "87c729ec-0529-4ed4-b4c9-c110fb2e1a87", "isActive": true, "balance": "$3,305.02", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Meredith Garrison", "gender": "female", "company": "MAINELAND", "email": "meredithgarrison@maineland.com", "phone": "+1 (972) 437-2591", "address": "337 Newkirk Placez, Belvoir, West Virginia, 715", "about": "Ut commodo ea eiusmod ut cupidatat sint amet ex proident id in sint. Mollit do fugiat occaecat sit sint. Aliquip nostrud aliquip officia commodo cupidatat voluptate nostrud do in amet proident consequat adipisicing. Ipsum cupidatat velit occaecat reprehenderit enim sit pariatur sit nulla magna excepteur officia. Qui pariatur tempor sint est sunt veniam minim reprehenderit qui est.\r\n", "registered": "2014-03-31T14:50:13-13:00", "latitude": 1.29999, "longitude": -8.017365, "tags": [ "irure", "eiusmod", "qui", "qui", "amet", "laborum", "est" ], "friends": [ { "id": 0, "name": "Hahn Best" }, { "id": 1, "name": "Rhea Mccormick" }, { "id": 2, "name": "Lyons Cross" } ], "greeting": "Hello, Meredith Garrison! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b416a92079235802e", "index": 4897, "guid": "c1330084-699a-4a6a-9b23-8a17f5b5f418", "isActive": true, "balance": "$2,933.66", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Becky Albert", "gender": "female", "company": "HOMELUX", "email": "beckyalbert@homelux.com", "phone": "+1 (831) 476-3012", "address": "265 Oceanview Avenue, Grayhawk, Texas, 452", "about": "Aute esse qui ad non. Commodo excepteur labore consequat id laboris nostrud consequat. Voluptate non cillum cillum magna pariatur dolor mollit amet fugiat magna voluptate ea ut cupidatat. Mollit aliqua aliqua commodo id adipisicing qui laborum. Aliqua minim culpa reprehenderit qui dolore officia sunt esse ipsum. Ipsum consectetur labore pariatur veniam dolore exercitation eiusmod. Ex enim ut quis eu cillum culpa ex eu ullamco excepteur adipisicing ut.\r\n", "registered": "2014-06-12T02:14:40-12:00", "latitude": 87.239785, "longitude": 162.782721, "tags": [ "consequat", "amet", "pariatur", "Lorem", "consequat", "qui", "adipisicing" ], "friends": [ { "id": 0, "name": "Lynn Newton" }, { "id": 1, "name": "Stacy Kemp" }, { "id": 2, "name": "Gwen Nelson" } ], "greeting": "Hello, Becky Albert! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b4bc1ea747e0d215c", "index": 4898, "guid": "69b8ffc7-7194-4f21-9951-dba7e1f0f414", "isActive": false, "balance": "$1,419.44", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Witt Duke", "gender": "male", "company": "IPLAX", "email": "wittduke@iplax.com", "phone": "+1 (879) 510-2000", "address": "739 Brigham Street, Bonanza, Oregon, 2951", "about": "Dolor non ut reprehenderit culpa sint. Ad aliquip veniam magna elit enim ullamco nulla. Amet irure Lorem dolor minim deserunt amet. Aliqua incididunt fugiat ut reprehenderit nostrud eiusmod nisi elit do minim est officia. Incididunt minim enim voluptate ipsum cupidatat ut ut adipisicing. Ullamco officia duis consectetur nulla.\r\n", "registered": "2014-02-22T08:22:48-13:00", "latitude": -21.712789, "longitude": -117.519376, "tags": [ "excepteur", "elit", "culpa", "consequat", "aliquip", "anim", "sunt" ], "friends": [ { "id": 0, "name": "Polly Perez" }, { "id": 1, "name": "Stefanie Hoffman" }, { "id": 2, "name": "Mercado Waller" } ], "greeting": "Hello, Witt Duke! You have 7 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b9a6c3935f1056e5e", "index": 4899, "guid": "c1a1ca7d-3fd3-465d-87cd-d54b89dd2777", "isActive": false, "balance": "$2,294.28", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Bethany Bowman", "gender": "female", "company": "ACUSAGE", "email": "bethanybowman@acusage.com", "phone": "+1 (910) 454-2978", "address": "398 Grimes Road, Winston, Nevada, 4932", "about": "Reprehenderit qui eiusmod ut id exercitation et ut sunt excepteur sunt in enim nisi. Sit occaecat irure qui enim incididunt aliqua irure incididunt veniam. Lorem irure mollit sunt nostrud reprehenderit qui dolore et proident aute proident consequat sunt. Dolor irure reprehenderit esse labore dolor aliqua culpa eiusmod reprehenderit non elit.\r\n", "registered": "2014-06-21T14:11:00-12:00", "latitude": -72.404521, "longitude": -62.738216, "tags": [ "proident", "labore", "laborum", "sit", "ex", "nisi", "nulla" ], "friends": [ { "id": 0, "name": "Luna Morales" }, { "id": 1, "name": "Elma Mejia" }, { "id": 2, "name": "Sabrina Hurst" } ], "greeting": "Hello, Bethany Bowman! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bae61fd3f24daa19a", "index": 4900, "guid": "909a4860-02d7-4dd9-8a4f-2ebf0625d040", "isActive": true, "balance": "$1,411.43", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Lila Kennedy", "gender": "female", "company": "FILODYNE", "email": "lilakennedy@filodyne.com", "phone": "+1 (997) 414-3972", "address": "491 Cooke Court, Clarksburg, Minnesota, 140", "about": "Ut ex laboris magna nostrud reprehenderit ea aute enim id ex elit esse exercitation id. Adipisicing ex ea tempor deserunt nulla aliquip elit id officia commodo id dolore aute do. Esse ullamco eu ad consequat est ipsum fugiat fugiat ut. Incididunt non esse esse ea et tempor tempor proident mollit. Excepteur laboris officia sint nulla nisi ad commodo ut fugiat incididunt qui dolor officia.\r\n", "registered": "2014-04-28T10:51:23-12:00", "latitude": 55.028222, "longitude": 129.305209, "tags": [ "velit", "Lorem", "incididunt", "nisi", "consequat", "ipsum", "labore" ], "friends": [ { "id": 0, "name": "Chen Farrell" }, { "id": 1, "name": "Bernard Doyle" }, { "id": 2, "name": "Joan Hoover" } ], "greeting": "Hello, Lila Kennedy! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2be2e3227accc2d031", "index": 4901, "guid": "86411373-e0f5-4cd6-ad1f-f654a1c1fa7d", "isActive": false, "balance": "$2,184.04", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Elisa Dalton", "gender": "female", "company": "STREZZO", "email": "elisadalton@strezzo.com", "phone": "+1 (939) 597-3819", "address": "639 Cypress Avenue, Allensworth, Missouri, 2024", "about": "Amet duis pariatur id adipisicing pariatur aute elit ut dolore cupidatat id eiusmod nostrud. Sit eu aliquip eiusmod consectetur adipisicing ipsum dolor. Excepteur amet culpa in cupidatat voluptate proident fugiat dolore eu cillum adipisicing anim fugiat. Duis excepteur cupidatat veniam irure anim ex esse ut officia do eu. Aliquip ea est nostrud nostrud laborum ut eiusmod irure sit. Eu minim nisi quis eu exercitation officia fugiat dolore ut dolore cillum quis.\r\n", "registered": "2014-01-02T02:40:28-13:00", "latitude": 23.623853, "longitude": 59.446341, "tags": [ "quis", "nulla", "velit", "non", "nulla", "elit", "deserunt" ], "friends": [ { "id": 0, "name": "Barnes Mcdowell" }, { "id": 1, "name": "Glass Marsh" }, { "id": 2, "name": "Wynn Juarez" } ], "greeting": "Hello, Elisa Dalton! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bc52b81b7077004c3", "index": 4902, "guid": "02bc7cf7-8ef6-4069-8747-4f9a2e623721", "isActive": false, "balance": "$2,714.12", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Letitia Dillard", "gender": "female", "company": "ZINCA", "email": "letitiadillard@zinca.com", "phone": "+1 (931) 414-3923", "address": "177 Furman Street, Mahtowa, Rhode Island, 453", "about": "Non consequat pariatur adipisicing cupidatat ipsum elit commodo aliqua excepteur ex ullamco deserunt consequat Lorem. Dolor eiusmod ea pariatur dolore ullamco cupidatat labore velit quis duis duis. Irure sit aute culpa est velit commodo fugiat consequat incididunt tempor.\r\n", "registered": "2014-01-29T02:08:49-13:00", "latitude": 80.468006, "longitude": -96.523143, "tags": [ "dolore", "quis", "eu", "id", "labore", "labore", "ea" ], "friends": [ { "id": 0, "name": "Alisha Lee" }, { "id": 1, "name": "Whitney Mayer" }, { "id": 2, "name": "Joyce Beard" } ], "greeting": "Hello, Letitia Dillard! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b88295a456083e2b6", "index": 4903, "guid": "60815097-6ba7-4355-8f0d-a07afac6e993", "isActive": false, "balance": "$3,311.82", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Louisa Randolph", "gender": "female", "company": "KENGEN", "email": "louisarandolph@kengen.com", "phone": "+1 (914) 595-3788", "address": "440 Sumpter Street, Comptche, Florida, 5092", "about": "Laborum velit irure reprehenderit elit fugiat consequat exercitation in adipisicing dolor. Ullamco tempor dolor duis aliquip labore elit sunt aute cillum ut in cupidatat occaecat fugiat. Sunt eu mollit sit voluptate amet esse nulla Lorem eiusmod. Commodo nulla tempor non occaecat dolore ut minim fugiat in id esse laboris. Non excepteur tempor mollit sint amet nostrud ex est ex labore in. Eiusmod ut culpa sint non qui duis anim cupidatat culpa.\r\n", "registered": "2014-06-22T18:17:37-12:00", "latitude": 24.756326, "longitude": 79.459205, "tags": [ "sint", "dolore", "Lorem", "velit", "mollit", "deserunt", "enim" ], "friends": [ { "id": 0, "name": "Blanche Rocha" }, { "id": 1, "name": "Delacruz Owen" }, { "id": 2, "name": "Gardner Justice" } ], "greeting": "Hello, Louisa Randolph! You have 4 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bcac4d05a9a9833de", "index": 4904, "guid": "eb48e45e-c50f-4499-a9b3-1f12eb9938d2", "isActive": false, "balance": "$2,285.85", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Brown Walters", "gender": "male", "company": "FUELTON", "email": "brownwalters@fuelton.com", "phone": "+1 (957) 586-3884", "address": "754 George Street, Crucible, North Carolina, 9783", "about": "Elit eiusmod tempor in velit proident cillum duis tempor eiusmod laborum deserunt. Sunt aute adipisicing tempor ut ullamco labore culpa incididunt. Ad nulla eu sunt ullamco magna irure labore est nostrud nisi ea occaecat. Consectetur enim elit amet reprehenderit et eiusmod velit proident commodo.\r\n", "registered": "2014-04-28T22:29:37-12:00", "latitude": -73.843117, "longitude": -120.34418, "tags": [ "aliquip", "et", "occaecat", "veniam", "esse", "tempor", "proident" ], "friends": [ { "id": 0, "name": "Lowe Moon" }, { "id": 1, "name": "Cassie Byers" }, { "id": 2, "name": "Finley Mcdaniel" } ], "greeting": "Hello, Brown Walters! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bedccbeae22f4a9dd", "index": 4905, "guid": "a9440476-8e21-469c-bec3-f28b05836122", "isActive": true, "balance": "$1,359.79", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Sherry Pearson", "gender": "female", "company": "SKYBOLD", "email": "sherrypearson@skybold.com", "phone": "+1 (888) 598-3766", "address": "251 Church Avenue, Maybell, New Hampshire, 8861", "about": "Ipsum aliquip adipisicing irure sunt aute consequat quis sint id sint excepteur magna adipisicing amet. Labore laborum qui duis dolor eu voluptate id sint adipisicing dolore do quis ex. Occaecat pariatur nulla aliquip sint exercitation adipisicing aliquip qui commodo consequat non. Et qui et anim officia in. Culpa amet qui dolor incididunt dolore exercitation laborum amet deserunt elit non.\r\n", "registered": "2014-09-04T04:52:01-12:00", "latitude": 31.894583, "longitude": -14.042521, "tags": [ "nulla", "aute", "deserunt", "velit", "dolore", "non", "exercitation" ], "friends": [ { "id": 0, "name": "Williams Mcintosh" }, { "id": 1, "name": "Valentine Robertson" }, { "id": 2, "name": "Frankie Sherman" } ], "greeting": "Hello, Sherry Pearson! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b711d6831c78e33d4", "index": 4906, "guid": "0abdaecc-0541-4106-965d-67f3a056879d", "isActive": false, "balance": "$2,524.81", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Mccormick Gillespie", "gender": "male", "company": "SONIQUE", "email": "mccormickgillespie@sonique.com", "phone": "+1 (947) 581-2731", "address": "218 Sutton Street, Dana, Arkansas, 3396", "about": "Do proident exercitation sit labore nisi ipsum dolore cupidatat Lorem enim fugiat est. Velit exercitation esse sint deserunt enim labore incididunt Lorem non do reprehenderit. Et enim commodo anim aliquip eiusmod ullamco adipisicing mollit ullamco. Aliqua nulla et reprehenderit proident et dolore eu dolor excepteur. Est duis aute ad non. Ipsum irure ad amet magna minim consequat veniam amet duis minim enim consequat ut. Cupidatat quis pariatur adipisicing nulla velit amet ea velit.\r\n", "registered": "2014-07-01T03:33:10-12:00", "latitude": -6.605126, "longitude": -137.238983, "tags": [ "id", "proident", "sint", "commodo", "nostrud", "aliquip", "aliqua" ], "friends": [ { "id": 0, "name": "Kerry Glass" }, { "id": 1, "name": "Potts Wells" }, { "id": 2, "name": "Phelps Love" } ], "greeting": "Hello, Mccormick Gillespie! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b83a6b50a235c11a6", "index": 4907, "guid": "859c75f2-f84f-4008-b09c-717e626d81ce", "isActive": true, "balance": "$3,535.63", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Violet Owens", "gender": "female", "company": "EARTHPLEX", "email": "violetowens@earthplex.com", "phone": "+1 (850) 545-2261", "address": "100 Cadman Plaza, Chemung, Iowa, 6355", "about": "Minim aute magna et aliquip pariatur pariatur ut laboris minim nulla. Amet proident duis amet cillum. Labore nisi nisi consequat laboris exercitation. Magna et velit aute qui cillum. Nisi sint consequat commodo aliquip est nulla exercitation consectetur et dolore commodo nostrud.\r\n", "registered": "2014-05-09T09:43:35-12:00", "latitude": -58.019311, "longitude": -6.869434, "tags": [ "nulla", "ex", "sit", "exercitation", "ipsum", "id", "voluptate" ], "friends": [ { "id": 0, "name": "Willa Levy" }, { "id": 1, "name": "Watkins Dillon" }, { "id": 2, "name": "Walsh Williamson" } ], "greeting": "Hello, Violet Owens! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bc2adf63b0cd1655e", "index": 4908, "guid": "199829b3-98d0-4253-a01a-94940afe30fc", "isActive": true, "balance": "$1,470.08", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Shauna Ware", "gender": "female", "company": "TELEQUIET", "email": "shaunaware@telequiet.com", "phone": "+1 (967) 531-3741", "address": "513 Newkirk Avenue, Winesburg, Nebraska, 9855", "about": "Duis consectetur incididunt laboris qui veniam in. Fugiat eiusmod fugiat duis velit deserunt reprehenderit amet culpa anim aliqua ipsum amet ullamco duis. Laboris laboris proident id id nulla cillum excepteur exercitation ea. Incididunt aliqua proident incididunt nisi id veniam reprehenderit. Qui fugiat adipisicing magna ex culpa ad. Elit officia nisi duis labore duis mollit ea culpa irure commodo anim velit aliqua. Esse cillum amet ut do ea elit excepteur nulla culpa duis duis.\r\n", "registered": "2014-07-31T19:46:40-12:00", "latitude": -65.700168, "longitude": 171.710804, "tags": [ "ad", "veniam", "eu", "commodo", "proident", "quis", "et" ], "friends": [ { "id": 0, "name": "Kitty Alston" }, { "id": 1, "name": "Nanette Nieves" }, { "id": 2, "name": "Dominguez Deleon" } ], "greeting": "Hello, Shauna Ware! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b56f1ee8d154dffbe", "index": 4909, "guid": "d459e840-a761-48f6-a394-80c2c0a596ca", "isActive": true, "balance": "$3,263.93", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Elvira Parrish", "gender": "female", "company": "ROUGHIES", "email": "elviraparrish@roughies.com", "phone": "+1 (899) 569-2586", "address": "600 Dekalb Avenue, Efland, District Of Columbia, 7712", "about": "Occaecat ea non exercitation elit nulla incididunt velit voluptate id cupidatat sit consequat qui. Ea est id eiusmod est enim enim cillum non laborum incididunt amet esse commodo. Laboris ullamco aute ipsum dolore qui et ad aliquip est aliqua eiusmod dolor aute ea. Officia laborum aliqua Lorem proident velit officia irure eu excepteur fugiat laboris minim dolor dolor. Deserunt et voluptate aute dolor consequat laborum laboris dolore duis quis nulla et. Ad nostrud sit eiusmod fugiat dolor esse elit eu.\r\n", "registered": "2014-03-30T22:54:27-13:00", "latitude": 51.737614, "longitude": 107.374499, "tags": [ "laborum", "amet", "mollit", "sunt", "anim", "in", "ullamco" ], "friends": [ { "id": 0, "name": "Wilkinson Farley" }, { "id": 1, "name": "Giles Pugh" }, { "id": 2, "name": "Tonia Barber" } ], "greeting": "Hello, Elvira Parrish! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b6896299217d24759", "index": 4910, "guid": "2ffc4411-3b22-4d2e-a365-b7be31993cc1", "isActive": false, "balance": "$2,395.28", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Tanner Hayes", "gender": "male", "company": "MEMORA", "email": "tannerhayes@memora.com", "phone": "+1 (957) 473-3967", "address": "472 Vermont Street, Bedias, New Jersey, 1387", "about": "Consequat ea fugiat mollit ea elit esse aute cupidatat do ut. Do magna consectetur occaecat consequat irure mollit laborum velit. Deserunt enim eu et ea consectetur ipsum. Magna occaecat Lorem anim consectetur elit. Incididunt ex duis incididunt officia cillum magna nostrud id deserunt fugiat occaecat do esse occaecat.\r\n", "registered": "2014-03-25T04:54:14-13:00", "latitude": 2.000397, "longitude": 25.591292, "tags": [ "eu", "labore", "minim", "culpa", "aliqua", "consequat", "laborum" ], "friends": [ { "id": 0, "name": "Mccarthy Pennington" }, { "id": 1, "name": "Eliza May" }, { "id": 2, "name": "Shelly Hyde" } ], "greeting": "Hello, Tanner Hayes! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b7287b327788dc53c", "index": 4911, "guid": "daa5a1bd-6c98-4de5-899f-8c545809ca79", "isActive": false, "balance": "$1,329.17", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "green", "name": "Carly Nunez", "gender": "female", "company": "SLUMBERIA", "email": "carlynunez@slumberia.com", "phone": "+1 (954) 488-3741", "address": "519 Montieth Street, Morgandale, Palau, 3474", "about": "Duis minim aute consectetur mollit mollit cillum tempor sunt ad. Exercitation commodo occaecat non duis enim consectetur officia enim ullamco. Aute est cupidatat veniam Lorem do ipsum. Ut sit laborum adipisicing qui do fugiat incididunt qui do est. Anim dolore est ea ad commodo aliquip ipsum. Mollit velit consequat ad adipisicing fugiat nisi.\r\n", "registered": "2014-07-19T22:31:18-12:00", "latitude": 42.447037, "longitude": 55.324061, "tags": [ "nulla", "esse", "irure", "labore", "dolore", "pariatur", "consectetur" ], "friends": [ { "id": 0, "name": "Lillian Hodge" }, { "id": 1, "name": "Wilcox Dominguez" }, { "id": 2, "name": "Terry Mitchell" } ], "greeting": "Hello, Carly Nunez! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b422c8d1b9f31ef4d", "index": 4912, "guid": "8310b05f-71f4-47a8-9745-5f242ff74dcd", "isActive": true, "balance": "$3,646.31", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Lawanda Rogers", "gender": "female", "company": "BESTO", "email": "lawandarogers@besto.com", "phone": "+1 (904) 481-3071", "address": "682 Coleridge Street, Cetronia, Puerto Rico, 9914", "about": "Consectetur eu et anim amet sit ex nostrud ex. Elit anim commodo ipsum id officia anim eu reprehenderit duis consectetur esse. Lorem consequat Lorem cupidatat fugiat nisi. Aliquip aliquip culpa incididunt velit cillum. Velit et nostrud est nisi voluptate veniam nisi.\r\n", "registered": "2014-06-19T11:42:31-12:00", "latitude": -1.684382, "longitude": -7.176006, "tags": [ "deserunt", "tempor", "consequat", "deserunt", "non", "esse", "laboris" ], "friends": [ { "id": 0, "name": "Natasha Odom" }, { "id": 1, "name": "Angelique Brock" }, { "id": 2, "name": "Pratt Dixon" } ], "greeting": "Hello, Lawanda Rogers! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b4975193c46084355", "index": 4913, "guid": "3fadae62-ee00-409c-9efa-19b06dc2ba2b", "isActive": true, "balance": "$2,461.79", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Deborah Barnes", "gender": "female", "company": "DOGTOWN", "email": "deborahbarnes@dogtown.com", "phone": "+1 (975) 442-2447", "address": "966 Nautilus Avenue, Galesville, California, 686", "about": "Cillum nulla proident labore amet veniam quis incididunt mollit ipsum consectetur commodo ipsum veniam. Magna do ex mollit sunt qui cillum aute mollit officia veniam ad cillum. Anim ea ea sit laboris fugiat eiusmod Lorem. Reprehenderit sit consectetur minim duis est id eu ullamco dolor labore dolore proident.\r\n", "registered": "2014-09-03T11:37:35-12:00", "latitude": -26.417181, "longitude": 90.36879, "tags": [ "incididunt", "adipisicing", "eiusmod", "reprehenderit", "cillum", "sint", "exercitation" ], "friends": [ { "id": 0, "name": "Lambert Massey" }, { "id": 1, "name": "Dominique Morton" }, { "id": 2, "name": "Melisa Landry" } ], "greeting": "Hello, Deborah Barnes! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b066329e5ab9c89d9", "index": 4914, "guid": "efe144a1-22bc-40aa-992d-cc2bcb9bd2e9", "isActive": false, "balance": "$3,018.57", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Rasmussen Garcia", "gender": "male", "company": "QNEKT", "email": "rasmussengarcia@qnekt.com", "phone": "+1 (928) 407-2531", "address": "608 Kenilworth Place, Spelter, Vermont, 3037", "about": "Labore magna in proident est velit magna elit anim qui aliqua culpa tempor eiusmod. Laboris fugiat irure culpa minim deserunt aliquip nulla Lorem ullamco sit eu laborum. Ad esse dolore dolore in pariatur. Ex enim esse exercitation excepteur in consequat deserunt mollit qui cillum fugiat dolore dolor consectetur. Est magna deserunt eiusmod ullamco aliquip id enim cupidatat duis consequat Lorem veniam do mollit. Nulla exercitation nisi ad eiusmod cillum duis laborum proident proident officia sunt ullamco nulla aliqua.\r\n", "registered": "2014-07-07T21:53:31-12:00", "latitude": 11.100635, "longitude": -27.204335, "tags": [ "magna", "fugiat", "do", "ut", "dolor", "adipisicing", "sit" ], "friends": [ { "id": 0, "name": "Kimberly Bowers" }, { "id": 1, "name": "Jessie Whitaker" }, { "id": 2, "name": "Lancaster Gordon" } ], "greeting": "Hello, Rasmussen Garcia! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b9938d6fe984f03cf", "index": 4915, "guid": "9d337a49-7ba4-4fa1-9810-5de2d6da1d89", "isActive": false, "balance": "$2,512.97", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Schmidt Downs", "gender": "male", "company": "SAVVY", "email": "schmidtdowns@savvy.com", "phone": "+1 (858) 579-3880", "address": "818 Hawthorne Street, Floriston, Indiana, 4469", "about": "Officia veniam aliqua pariatur sint commodo eu aute. Culpa minim laboris mollit est eu qui laboris officia nulla ullamco laborum id. Enim irure eu velit minim pariatur cupidatat quis consequat laboris consectetur amet. Aliqua aute reprehenderit est duis. Ut dolore magna enim nisi ut sunt. Tempor laboris culpa nulla adipisicing ut elit voluptate ipsum sunt non esse dolor consequat.\r\n", "registered": "2014-08-03T11:28:00-12:00", "latitude": 42.074329, "longitude": 89.603216, "tags": [ "laborum", "ullamco", "incididunt", "ex", "sint", "elit", "ullamco" ], "friends": [ { "id": 0, "name": "Dollie Rose" }, { "id": 1, "name": "Reeves Blackwell" }, { "id": 2, "name": "Margo Steele" } ], "greeting": "Hello, Schmidt Downs! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bdacdf0a560d11e54", "index": 4916, "guid": "5b1e878f-fc7a-409f-9fe4-5d459fa6a38c", "isActive": true, "balance": "$3,906.78", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Woodward Dorsey", "gender": "male", "company": "ATOMICA", "email": "woodwarddorsey@atomica.com", "phone": "+1 (982) 539-3211", "address": "827 Railroad Avenue, Allendale, Illinois, 7205", "about": "Cupidatat culpa aliqua dolor elit mollit ut commodo dolor. Ad voluptate dolore quis dolore. Exercitation dolor dolor ut eiusmod irure commodo dolor ipsum deserunt. Cillum consequat enim ea reprehenderit id culpa ea reprehenderit. Proident do labore eiusmod fugiat proident enim adipisicing elit consequat in commodo sit sint culpa.\r\n", "registered": "2014-06-17T04:30:07-12:00", "latitude": -44.013876, "longitude": 8.372887, "tags": [ "id", "enim", "Lorem", "ex", "ex", "do", "sint" ], "friends": [ { "id": 0, "name": "Solis Burch" }, { "id": 1, "name": "Short Miller" }, { "id": 2, "name": "Lupe Gross" } ], "greeting": "Hello, Woodward Dorsey! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2be748e5eb1f90f6e7", "index": 4917, "guid": "bea7754a-3791-428a-9526-31d09ebea788", "isActive": false, "balance": "$1,408.23", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Castillo Rowe", "gender": "male", "company": "MINGA", "email": "castillorowe@minga.com", "phone": "+1 (896) 416-3535", "address": "374 Lacon Court, Woodlake, South Carolina, 8188", "about": "Tempor quis laboris veniam labore magna incididunt eu incididunt consectetur dolore nisi eu. Ex sit nisi mollit aute sit. Commodo nostrud aliquip pariatur sunt sit. Pariatur adipisicing laborum laborum reprehenderit. Irure laboris sint duis ad pariatur minim voluptate non esse qui sit ea.\r\n", "registered": "2014-01-29T22:40:20-13:00", "latitude": 19.136302, "longitude": -145.383557, "tags": [ "aliqua", "anim", "ipsum", "dolor", "velit", "magna", "officia" ], "friends": [ { "id": 0, "name": "Knowles Fitzgerald" }, { "id": 1, "name": "Whitehead Burris" }, { "id": 2, "name": "Jefferson Case" } ], "greeting": "Hello, Castillo Rowe! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2ba4de7d52a8dbad73", "index": 4918, "guid": "7c399d1d-4e56-43f8-bd40-c89d280344d7", "isActive": true, "balance": "$2,627.77", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Paul Hines", "gender": "male", "company": "MUSIX", "email": "paulhines@musix.com", "phone": "+1 (969) 529-2317", "address": "909 Fillmore Place, Urie, American Samoa, 5700", "about": "Nisi incididunt aliqua officia et anim ipsum proident est. Veniam cupidatat amet laborum laboris tempor aute mollit proident veniam. Ut sit do anim culpa mollit minim nulla exercitation voluptate sit duis dolor minim ut. Excepteur proident cillum nostrud consectetur laborum ad ipsum incididunt ea enim dolore tempor adipisicing sint. Elit ad ipsum officia occaecat non ad nostrud Lorem. Aliquip officia proident aliqua commodo tempor amet fugiat dolor ut deserunt do. Adipisicing tempor duis occaecat nostrud dolore.\r\n", "registered": "2014-02-17T11:53:24-13:00", "latitude": -0.897891, "longitude": -45.200002, "tags": [ "cupidatat", "esse", "elit", "excepteur", "sunt", "quis", "quis" ], "friends": [ { "id": 0, "name": "Sheri Contreras" }, { "id": 1, "name": "Joann Chen" }, { "id": 2, "name": "Colleen Bean" } ], "greeting": "Hello, Paul Hines! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b91f7026f5f2bdad8", "index": 4919, "guid": "0a144d44-c2f2-4772-9a68-f46b2ce9acc4", "isActive": true, "balance": "$2,861.65", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "brown", "name": "Leila Burns", "gender": "female", "company": "GEEKOLOGY", "email": "leilaburns@geekology.com", "phone": "+1 (864) 450-3162", "address": "272 Heyward Street, Golconda, Delaware, 2268", "about": "Aliquip cupidatat qui veniam incididunt esse aliquip cillum pariatur sunt eu dolor irure. Laborum veniam fugiat ipsum et nulla aliquip aliquip dolore amet. Irure aliquip officia laborum cillum ipsum aute. Minim irure minim ex irure. Laboris exercitation sint dolore cupidatat qui sit officia cillum.\r\n", "registered": "2014-08-24T04:41:25-12:00", "latitude": 1.560285, "longitude": -137.226311, "tags": [ "aliquip", "quis", "consectetur", "anim", "aliquip", "aliqua", "ad" ], "friends": [ { "id": 0, "name": "Miriam Bruce" }, { "id": 1, "name": "Love Gilliam" }, { "id": 2, "name": "Wendi Weiss" } ], "greeting": "Hello, Leila Burns! You have 7 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b0c22897796bb5e75", "index": 4920, "guid": "23b6d04c-8c8d-441a-8a9c-fb4848a450fc", "isActive": false, "balance": "$3,867.22", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Bright Sharp", "gender": "male", "company": "ECRATIC", "email": "brightsharp@ecratic.com", "phone": "+1 (995) 572-2677", "address": "951 Seigel Court, Knowlton, Pennsylvania, 9910", "about": "Enim non proident exercitation id esse mollit ea ut in non sint ea commodo. Pariatur commodo ut aliquip minim Lorem sint consectetur. Culpa nostrud excepteur eu adipisicing nulla officia aliqua cillum et amet magna. Qui pariatur exercitation mollit ad et. Ullamco veniam ad et adipisicing id consequat mollit commodo esse non esse irure qui.\r\n", "registered": "2014-01-12T01:44:51-13:00", "latitude": 34.778555, "longitude": 172.525934, "tags": [ "nostrud", "duis", "ad", "non", "est", "aliquip", "ex" ], "friends": [ { "id": 0, "name": "Nettie Rivera" }, { "id": 1, "name": "Valeria Hobbs" }, { "id": 2, "name": "Russell Parker" } ], "greeting": "Hello, Bright Sharp! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b19a96889d9f3d8d4", "index": 4921, "guid": "9601a469-c8ed-4ebe-98c7-1fd2fc58f424", "isActive": false, "balance": "$2,134.85", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "blue", "name": "Shannon West", "gender": "male", "company": "SECURIA", "email": "shannonwest@securia.com", "phone": "+1 (976) 490-3582", "address": "254 Hicks Street, Southmont, Georgia, 2086", "about": "Culpa minim nulla non amet consequat deserunt anim magna quis dolor labore. Qui elit et consectetur deserunt ad voluptate. Consequat ullamco aute dolor laboris adipisicing. Culpa officia id duis id enim proident est sint qui aute deserunt anim velit. Fugiat culpa aliquip ex enim cupidatat ipsum ipsum esse ut.\r\n", "registered": "2014-05-08T07:54:56-12:00", "latitude": -76.88879, "longitude": 165.574107, "tags": [ "irure", "adipisicing", "irure", "consequat", "laborum", "in", "commodo" ], "friends": [ { "id": 0, "name": "Mabel Peck" }, { "id": 1, "name": "Thornton Hogan" }, { "id": 2, "name": "Kirk Coffey" } ], "greeting": "Hello, Shannon West! You have 9 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b701818c546001c1e", "index": 4922, "guid": "17d85acf-a36d-44ed-aa09-7b48f4e52fbb", "isActive": true, "balance": "$3,599.58", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Abbott Snider", "gender": "male", "company": "OCEANICA", "email": "abbottsnider@oceanica.com", "phone": "+1 (928) 551-3062", "address": "646 Kimball Street, Hegins, North Dakota, 7155", "about": "Esse ipsum non ut ad dolore Lorem do excepteur sunt sunt. Officia occaecat tempor fugiat laboris pariatur eu commodo culpa. Tempor eiusmod sit magna irure quis nostrud ullamco magna tempor. Labore adipisicing cillum aliqua in et proident do duis aliqua.\r\n", "registered": "2014-07-22T08:02:34-12:00", "latitude": -28.762266, "longitude": 32.461297, "tags": [ "consequat", "anim", "et", "aute", "excepteur", "laboris", "excepteur" ], "friends": [ { "id": 0, "name": "Burch Flores" }, { "id": 1, "name": "Karla Harrell" }, { "id": 2, "name": "Huff Henson" } ], "greeting": "Hello, Abbott Snider! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2babde79da30c40112", "index": 4923, "guid": "10cdbfb9-94c4-4f02-a92f-1afa729b935f", "isActive": true, "balance": "$3,818.39", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Karyn Booth", "gender": "female", "company": "FLEXIGEN", "email": "karynbooth@flexigen.com", "phone": "+1 (973) 440-2854", "address": "653 Fayette Street, Vernon, Louisiana, 2188", "about": "Sint voluptate quis deserunt deserunt dolor. Ea voluptate Lorem voluptate tempor voluptate labore eiusmod pariatur. In laboris excepteur elit fugiat ullamco non irure nostrud culpa laboris non eiusmod sunt. Quis veniam cupidatat tempor eiusmod pariatur in proident occaecat magna.\r\n", "registered": "2014-06-01T15:43:40-12:00", "latitude": -52.323279, "longitude": 102.955206, "tags": [ "duis", "culpa", "aliqua", "sit", "velit", "in", "cillum" ], "friends": [ { "id": 0, "name": "Trujillo Willis" }, { "id": 1, "name": "Mcfarland Carpenter" }, { "id": 2, "name": "Angela Pena" } ], "greeting": "Hello, Karyn Booth! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bdc566e3e0626032f", "index": 4924, "guid": "48ca86a5-a99b-40b4-b074-304b93bd0a3a", "isActive": true, "balance": "$3,186.50", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "brown", "name": "Strong Washington", "gender": "male", "company": "BOLAX", "email": "strongwashington@bolax.com", "phone": "+1 (926) 486-3172", "address": "960 Malbone Street, Jennings, Northern Mariana Islands, 450", "about": "Mollit magna sunt ad aliquip consectetur dolore do amet reprehenderit adipisicing occaecat laborum culpa. Dolore deserunt esse nostrud esse esse mollit non quis proident est minim minim velit est. Reprehenderit laborum consectetur fugiat nulla officia do esse ut irure sunt in proident in. Cillum Lorem velit eiusmod exercitation duis laborum. Commodo tempor ad occaecat aliquip aliquip est cillum.\r\n", "registered": "2014-03-30T12:46:54-13:00", "latitude": 38.07345, "longitude": 53.691697, "tags": [ "ullamco", "ut", "exercitation", "sunt", "ullamco", "eu", "proident" ], "friends": [ { "id": 0, "name": "Lloyd Potter" }, { "id": 1, "name": "Cameron Gates" }, { "id": 2, "name": "Joanna Hopkins" } ], "greeting": "Hello, Strong Washington! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b723c007f70f1f35d", "index": 4925, "guid": "596fd6b9-2b31-48f8-bb02-8762ccdfa777", "isActive": true, "balance": "$2,177.74", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "blue", "name": "Gina Gilbert", "gender": "female", "company": "LOCAZONE", "email": "ginagilbert@locazone.com", "phone": "+1 (965) 408-3862", "address": "252 Varet Street, Outlook, Colorado, 8972", "about": "Lorem do eu consectetur consectetur proident. Enim cillum in nostrud eiusmod ipsum aliquip Lorem exercitation mollit ipsum do sint incididunt incididunt. Eiusmod duis in veniam amet adipisicing minim labore laborum nulla cupidatat ad id est. Nostrud magna duis minim fugiat aliquip minim cupidatat proident duis. Consectetur sint nostrud nostrud elit consequat magna commodo sint non laboris laboris ex laboris exercitation. Mollit incididunt irure velit adipisicing duis in veniam proident consectetur cillum et exercitation sunt. Officia excepteur velit ea voluptate adipisicing labore quis proident quis dolor ullamco cillum minim.\r\n", "registered": "2014-01-16T06:27:28-13:00", "latitude": -48.292976, "longitude": 164.242499, "tags": [ "cillum", "veniam", "ipsum", "sunt", "et", "quis", "esse" ], "friends": [ { "id": 0, "name": "Hammond Walls" }, { "id": 1, "name": "Socorro Franklin" }, { "id": 2, "name": "Riddle Reed" } ], "greeting": "Hello, Gina Gilbert! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b3a446b8c20377b52", "index": 4926, "guid": "34d98b41-969c-4abc-afd3-9b8f9a22b6e6", "isActive": false, "balance": "$1,849.51", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "blue", "name": "Adeline Odonnell", "gender": "female", "company": "ZOLAREX", "email": "adelineodonnell@zolarex.com", "phone": "+1 (830) 487-3334", "address": "456 Meadow Street, Winfred, Idaho, 5914", "about": "Excepteur nulla commodo non ullamco amet voluptate laborum ipsum Lorem. Proident consectetur eiusmod quis ipsum ullamco irure esse ea commodo est elit enim. Sit incididunt et laboris consectetur esse elit exercitation cupidatat. Ut pariatur id sit duis nisi excepteur consequat ea adipisicing in id consequat exercitation. Esse officia ullamco quis excepteur incididunt eiusmod deserunt occaecat id in sint est.\r\n", "registered": "2014-06-11T15:21:47-12:00", "latitude": 18.202517, "longitude": -23.278024, "tags": [ "ad", "in", "velit", "occaecat", "exercitation", "id", "laboris" ], "friends": [ { "id": 0, "name": "Serrano Chang" }, { "id": 1, "name": "Valenzuela Snyder" }, { "id": 2, "name": "Lola Elliott" } ], "greeting": "Hello, Adeline Odonnell! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b7563da169e2b1b55", "index": 4927, "guid": "260bc7e9-72e4-466f-9968-c8aa0e6cb59d", "isActive": false, "balance": "$3,995.53", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "blue", "name": "Marion Neal", "gender": "female", "company": "DAYCORE", "email": "marionneal@daycore.com", "phone": "+1 (968) 418-3581", "address": "148 Duryea Court, Fairlee, Marshall Islands, 3411", "about": "Et ea exercitation in et proident pariatur laborum ex laborum. Eu in sint enim officia sunt est consectetur pariatur pariatur. Aliqua veniam esse nulla id commodo non in.\r\n", "registered": "2014-02-23T05:07:38-13:00", "latitude": 36.89971, "longitude": -80.830962, "tags": [ "proident", "pariatur", "Lorem", "deserunt", "in", "eu", "do" ], "friends": [ { "id": 0, "name": "Edith Boone" }, { "id": 1, "name": "Fletcher Valencia" }, { "id": 2, "name": "Sampson Robinson" } ], "greeting": "Hello, Marion Neal! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b29267a158f253c2a", "index": 4928, "guid": "a4db08a3-c815-4d55-ade0-24effb8c1e76", "isActive": false, "balance": "$2,566.01", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Lily Macdonald", "gender": "female", "company": "SONGLINES", "email": "lilymacdonald@songlines.com", "phone": "+1 (974) 483-2429", "address": "708 Garden Street, Tonopah, New York, 3945", "about": "Irure exercitation occaecat sint pariatur occaecat duis nisi. Anim minim adipisicing proident nulla. Deserunt est est cupidatat irure dolore nulla nisi dolor mollit consequat aliqua. Fugiat cupidatat magna incididunt ipsum fugiat dolor laboris cupidatat excepteur.\r\n", "registered": "2014-06-10T18:51:01-12:00", "latitude": -78.27759, "longitude": 147.658431, "tags": [ "ea", "excepteur", "nostrud", "magna", "est", "ut", "laborum" ], "friends": [ { "id": 0, "name": "Jean Santiago" }, { "id": 1, "name": "Genevieve Bartlett" }, { "id": 2, "name": "Magdalena Weeks" } ], "greeting": "Hello, Lily Macdonald! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2ba3807dc780552157", "index": 4929, "guid": "a3c57072-04d5-4fee-b383-d2350ec9928a", "isActive": true, "balance": "$3,426.61", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Smith Lott", "gender": "male", "company": "KONGLE", "email": "smithlott@kongle.com", "phone": "+1 (991) 553-2303", "address": "585 Matthews Court, Adamstown, Guam, 5372", "about": "Adipisicing cillum voluptate magna culpa ipsum veniam voluptate amet occaecat. Reprehenderit enim velit pariatur sunt ullamco magna cillum irure proident reprehenderit. Nisi non ullamco excepteur pariatur id et et tempor. Non fugiat adipisicing incididunt deserunt ex anim aliqua. Reprehenderit laborum qui voluptate enim. Non aliqua eiusmod cupidatat mollit laborum incididunt. Est amet esse proident eiusmod.\r\n", "registered": "2014-04-24T10:22:15-12:00", "latitude": -74.124911, "longitude": -20.833372, "tags": [ "ut", "amet", "non", "qui", "et", "reprehenderit", "labore" ], "friends": [ { "id": 0, "name": "Rachael Oconnor" }, { "id": 1, "name": "Carlson Dejesus" }, { "id": 2, "name": "Dorthy Cline" } ], "greeting": "Hello, Smith Lott! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b25e1ff69e6b38aa1", "index": 4930, "guid": "a479b73e-8f77-4a4f-a23a-db411a83eb09", "isActive": false, "balance": "$1,280.22", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Spencer Larson", "gender": "male", "company": "KONGENE", "email": "spencerlarson@kongene.com", "phone": "+1 (937) 447-2120", "address": "209 Vermont Court, Coyote, Virgin Islands, 4973", "about": "Ullamco consectetur aute quis deserunt minim officia pariatur pariatur. Id nostrud amet magna deserunt ullamco culpa id consequat ex ad. Do mollit adipisicing esse ea adipisicing aliquip deserunt enim proident ut proident duis eu. Culpa commodo labore ullamco ea. Incididunt sit laborum elit laboris adipisicing incididunt enim aute ut fugiat nulla. Dolore anim proident commodo do pariatur non. Enim adipisicing sunt ea consequat enim ex fugiat cupidatat commodo anim cupidatat dolor.\r\n", "registered": "2014-06-15T03:47:47-12:00", "latitude": 15.521786, "longitude": -69.494678, "tags": [ "voluptate", "voluptate", "ut", "velit", "qui", "cupidatat", "pariatur" ], "friends": [ { "id": 0, "name": "Sonja Velazquez" }, { "id": 1, "name": "Goff Newman" }, { "id": 2, "name": "Blevins Dyer" } ], "greeting": "Hello, Spencer Larson! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bc453da61a40d0603", "index": 4931, "guid": "de0bf0f2-f508-4c08-8422-7c41aa980722", "isActive": true, "balance": "$2,557.19", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Penny Blair", "gender": "female", "company": "FREAKIN", "email": "pennyblair@freakin.com", "phone": "+1 (883) 423-3698", "address": "959 Langham Street, Gorst, Massachusetts, 6324", "about": "Id nostrud adipisicing adipisicing ex ex ex. Lorem dolor cillum eiusmod consectetur cillum enim fugiat occaecat amet. Anim enim veniam excepteur commodo sunt sint consequat proident exercitation dolore. Nisi labore id laborum elit magna voluptate ea elit occaecat irure veniam.\r\n", "registered": "2014-09-08T03:04:24-12:00", "latitude": 28.362338, "longitude": 143.147588, "tags": [ "irure", "exercitation", "excepteur", "incididunt", "laboris", "est", "consequat" ], "friends": [ { "id": 0, "name": "Eve Keller" }, { "id": 1, "name": "George Hampton" }, { "id": 2, "name": "Becker Hernandez" } ], "greeting": "Hello, Penny Blair! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2baf38c7134c0c2dc7", "index": 4932, "guid": "7dbae043-7921-4d40-92dc-c712f36428e5", "isActive": true, "balance": "$3,372.86", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Kathryn Nguyen", "gender": "female", "company": "GEOFORM", "email": "kathrynnguyen@geoform.com", "phone": "+1 (903) 500-2205", "address": "307 Coleman Street, Watrous, Utah, 8760", "about": "Enim occaecat ex Lorem ullamco id occaecat do pariatur adipisicing adipisicing. Nulla ullamco quis officia cupidatat consequat eiusmod anim occaecat. Duis aute tempor excepteur ullamco commodo tempor. Labore amet nulla id nostrud deserunt anim sit adipisicing Lorem reprehenderit sunt sint eu. Dolore in quis duis ex dolor officia occaecat consequat in ipsum dolore. Ullamco eu exercitation officia nostrud laboris minim quis. Adipisicing cupidatat ea do eiusmod fugiat anim ex quis aliqua.\r\n", "registered": "2014-08-14T01:28:08-12:00", "latitude": -13.565143, "longitude": 45.079944, "tags": [ "minim", "fugiat", "nulla", "amet", "cillum", "sunt", "aliquip" ], "friends": [ { "id": 0, "name": "Maureen Ingram" }, { "id": 1, "name": "Bentley Maldonado" }, { "id": 2, "name": "Hogan Guthrie" } ], "greeting": "Hello, Kathryn Nguyen! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b9e3b05b1906bf3e4", "index": 4933, "guid": "76006b3e-53b3-4305-8e66-0e16ef4fd1e7", "isActive": true, "balance": "$2,385.77", "picture": "http://placehold.it/32x32", "age": 36, "eyeColor": "brown", "name": "Ross Fletcher", "gender": "male", "company": "PROSURE", "email": "rossfletcher@prosure.com", "phone": "+1 (801) 474-2860", "address": "865 Newel Street, Catherine, Montana, 2594", "about": "Lorem commodo consectetur exercitation labore culpa magna in. Do esse quis minim reprehenderit excepteur eiusmod laboris amet minim cillum. Laborum ipsum voluptate ipsum in officia commodo culpa aliquip. Nulla mollit occaecat qui eu officia ea eu et commodo. Dolor eu reprehenderit elit voluptate minim velit nulla ea.\r\n", "registered": "2014-06-11T16:15:57-12:00", "latitude": -23.793186, "longitude": -101.275988, "tags": [ "ullamco", "in", "amet", "laboris", "dolor", "in", "laborum" ], "friends": [ { "id": 0, "name": "Dejesus Jarvis" }, { "id": 1, "name": "Irene Hinton" }, { "id": 2, "name": "Mclean Battle" } ], "greeting": "Hello, Ross Fletcher! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b3bb9ca977c369a8e", "index": 4934, "guid": "bf209951-2747-401b-90b1-aee70f2cfc2c", "isActive": false, "balance": "$3,322.60", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "blue", "name": "Bishop Allen", "gender": "male", "company": "BEDLAM", "email": "bishopallen@bedlam.com", "phone": "+1 (903) 563-2618", "address": "218 McKinley Avenue, Glenville, Wisconsin, 7142", "about": "Reprehenderit fugiat qui pariatur amet duis commodo consequat ex ea est do nisi laborum minim. Nulla commodo nostrud commodo sint dolore. Officia aliquip laborum ad cupidatat laboris aliqua eiusmod laborum in elit. Labore adipisicing sunt aute aliqua quis veniam consectetur exercitation voluptate. Est irure quis quis do ex aliqua ea magna.\r\n", "registered": "2014-07-01T10:38:27-12:00", "latitude": 40.549601, "longitude": 168.114757, "tags": [ "quis", "deserunt", "anim", "duis", "duis", "voluptate", "qui" ], "friends": [ { "id": 0, "name": "Larson Barrett" }, { "id": 1, "name": "Keri Rojas" }, { "id": 2, "name": "Clare Dotson" } ], "greeting": "Hello, Bishop Allen! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bfb30ffaccdf1de0c", "index": 4935, "guid": "afd6ff98-da76-40cb-b934-f1eff50649d8", "isActive": false, "balance": "$3,178.29", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Gregory Spence", "gender": "male", "company": "GEEKKO", "email": "gregoryspence@geekko.com", "phone": "+1 (984) 442-3760", "address": "727 Pineapple Street, Devon, Maine, 7869", "about": "Lorem ad enim et dolore proident pariatur consectetur aute sit et id. Eu laboris commodo non sint enim consectetur veniam consequat ullamco eiusmod nisi anim sint. Reprehenderit excepteur irure sit aliqua magna duis mollit ullamco id et exercitation magna eu esse. Laboris elit ut sunt anim quis culpa pariatur duis commodo eu.\r\n", "registered": "2014-06-19T22:32:06-12:00", "latitude": -24.482202, "longitude": -92.676217, "tags": [ "duis", "adipisicing", "sit", "aute", "anim", "nulla", "culpa" ], "friends": [ { "id": 0, "name": "Theresa Burke" }, { "id": 1, "name": "Jacklyn Rosario" }, { "id": 2, "name": "Coleman Stephenson" } ], "greeting": "Hello, Gregory Spence! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b38991eca016961f0", "index": 4936, "guid": "b804b64f-3616-4e5d-9c3d-1783f3eeb794", "isActive": true, "balance": "$2,474.31", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "blue", "name": "Bowers Frederick", "gender": "male", "company": "BUZZWORKS", "email": "bowersfrederick@buzzworks.com", "phone": "+1 (968) 592-3559", "address": "941 Ridgewood Avenue, Stevens, Virginia, 6431", "about": "In nostrud Lorem aliqua culpa ex nostrud magna dolor exercitation. Incididunt velit anim officia irure ex quis veniam minim amet. Labore ad nulla do in cupidatat exercitation eiusmod Lorem culpa.\r\n", "registered": "2014-07-09T11:35:23-12:00", "latitude": 1.808113, "longitude": -120.605158, "tags": [ "pariatur", "dolor", "dolore", "et", "do", "ipsum", "consequat" ], "friends": [ { "id": 0, "name": "Schroeder Kirkland" }, { "id": 1, "name": "Yvonne Wall" }, { "id": 2, "name": "Velma Parsons" } ], "greeting": "Hello, Bowers Frederick! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bd1e61c5d6cccff97", "index": 4937, "guid": "dbfd6574-3a61-49bd-9381-fafbd49971f1", "isActive": true, "balance": "$3,382.92", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "green", "name": "Solomon Curtis", "gender": "male", "company": "QUILTIGEN", "email": "solomoncurtis@quiltigen.com", "phone": "+1 (907) 443-2611", "address": "322 Overbaugh Place, Taft, Kentucky, 5166", "about": "Nulla non exercitation nisi elit officia nostrud labore duis proident incididunt consequat nisi occaecat consequat. Nostrud exercitation duis id deserunt in consectetur officia irure tempor elit. Mollit dolor veniam labore labore aliquip aliquip in elit voluptate labore esse ipsum laborum.\r\n", "registered": "2014-08-03T13:43:57-12:00", "latitude": -42.343126, "longitude": -144.757024, "tags": [ "nulla", "aliquip", "dolor", "laboris", "ipsum", "amet", "laborum" ], "friends": [ { "id": 0, "name": "Hilary Diaz" }, { "id": 1, "name": "Roy Henderson" }, { "id": 2, "name": "Suzanne Fisher" } ], "greeting": "Hello, Solomon Curtis! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bee78adf401757036", "index": 4938, "guid": "60724fe1-4d0c-488e-94a2-a1d3d870839f", "isActive": true, "balance": "$1,906.88", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Brandi Forbes", "gender": "female", "company": "VIRVA", "email": "brandiforbes@virva.com", "phone": "+1 (811) 576-3520", "address": "454 Doscher Street, Biehle, Connecticut, 5635", "about": "Ullamco in tempor officia reprehenderit dolore ullamco nisi culpa sit reprehenderit mollit irure eiusmod deserunt. Aliqua sunt laboris magna ex occaecat ut sunt consectetur ad commodo. Irure pariatur ea et eu magna tempor consequat non minim sit reprehenderit nulla do. Elit cillum labore minim nostrud.\r\n", "registered": "2014-08-26T18:46:03-12:00", "latitude": 11.901421, "longitude": 141.601779, "tags": [ "sunt", "commodo", "magna", "incididunt", "elit", "sit", "veniam" ], "friends": [ { "id": 0, "name": "Letha Bass" }, { "id": 1, "name": "Allen Rowland" }, { "id": 2, "name": "Maynard Horn" } ], "greeting": "Hello, Brandi Forbes! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bae098f46f82ec760", "index": 4939, "guid": "facd23e4-1a0e-4ff4-8531-ff73eeb9d0e8", "isActive": true, "balance": "$1,715.72", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Sasha Yates", "gender": "female", "company": "TYPHONICA", "email": "sashayates@typhonica.com", "phone": "+1 (854) 501-2871", "address": "899 Argyle Road, Conway, Mississippi, 1104", "about": "Enim elit enim aute est non laborum aute dolore adipisicing exercitation deserunt duis commodo voluptate. Voluptate velit qui dolore ad commodo aliqua. Officia mollit reprehenderit proident veniam esse reprehenderit ad commodo. Aliqua cupidatat nisi nisi magna sit eiusmod enim deserunt eiusmod. Ad labore fugiat laborum sit anim aliquip adipisicing labore veniam enim.\r\n", "registered": "2014-06-11T03:45:37-12:00", "latitude": -16.05873, "longitude": -41.005076, "tags": [ "cupidatat", "nostrud", "non", "ea", "nisi", "occaecat", "consequat" ], "friends": [ { "id": 0, "name": "Alba Spears" }, { "id": 1, "name": "Maura Hester" }, { "id": 2, "name": "Francisca Fernandez" } ], "greeting": "Hello, Sasha Yates! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bf77b25736e9c03cf", "index": 4940, "guid": "f1d3f499-7d8b-440f-b5d9-90327376471f", "isActive": true, "balance": "$2,831.48", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Julie Sweeney", "gender": "female", "company": "VIOCULAR", "email": "juliesweeney@viocular.com", "phone": "+1 (957) 474-3526", "address": "661 Columbia Place, Somerset, Washington, 4514", "about": "In occaecat non sint tempor nulla ad nisi duis dolor aliqua officia reprehenderit ullamco. Enim do cupidatat incididunt nisi incididunt aliquip ea. Veniam laborum Lorem aute enim occaecat et. Minim enim culpa mollit labore nulla est laborum tempor. Laborum ullamco in ullamco mollit dolore eu excepteur non sit proident aliqua. Amet tempor excepteur sit irure culpa sit sunt ad consectetur. Amet amet veniam sunt velit ex sit laboris ipsum culpa cillum culpa magna ad.\r\n", "registered": "2014-01-14T07:13:22-13:00", "latitude": 8.285315, "longitude": -19.193089, "tags": [ "excepteur", "do", "anim", "esse", "Lorem", "proident", "exercitation" ], "friends": [ { "id": 0, "name": "Alisa Abbott" }, { "id": 1, "name": "Dean Kane" }, { "id": 2, "name": "Rosella Clements" } ], "greeting": "Hello, Julie Sweeney! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b43cef4d9cf8e3402", "index": 4941, "guid": "09a5bc61-38f7-47f5-84c0-793a0282624a", "isActive": false, "balance": "$3,563.89", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "blue", "name": "Harmon Romero", "gender": "male", "company": "TROLLERY", "email": "harmonromero@trollery.com", "phone": "+1 (860) 451-3863", "address": "237 Alice Court, Woodruff, Tennessee, 467", "about": "Id commodo eiusmod aliqua culpa exercitation pariatur consequat anim incididunt amet. Fugiat voluptate sunt reprehenderit sunt minim consequat cupidatat. In ad incididunt pariatur aliqua sit reprehenderit. Aute amet culpa ullamco veniam reprehenderit.\r\n", "registered": "2014-06-27T16:49:00-12:00", "latitude": -12.410618, "longitude": 65.35713, "tags": [ "pariatur", "cillum", "quis", "velit", "enim", "labore", "in" ], "friends": [ { "id": 0, "name": "Rosanna Moore" }, { "id": 1, "name": "Franco Adams" }, { "id": 2, "name": "Madden Mcfadden" } ], "greeting": "Hello, Harmon Romero! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2ba5e72af0c4382012", "index": 4942, "guid": "683064ec-ec25-4540-b446-a69fcfa0b049", "isActive": true, "balance": "$1,355.03", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "brown", "name": "Gross Clarke", "gender": "male", "company": "OBLIQ", "email": "grossclarke@obliq.com", "phone": "+1 (992) 441-2285", "address": "465 Onderdonk Avenue, Lisco, Alabama, 905", "about": "Do excepteur cillum dolor labore et nostrud qui exercitation exercitation culpa. Occaecat do commodo enim non quis ut est Lorem ex duis elit eu non voluptate. In commodo anim pariatur enim in eu est. Veniam eu consequat voluptate deserunt cillum do amet occaecat aliquip Lorem. Id duis minim incididunt incididunt. Esse dolore est labore officia exercitation voluptate voluptate aute id culpa commodo. Proident qui eiusmod tempor sint laboris magna do dolore ad.\r\n", "registered": "2014-01-09T04:43:12-13:00", "latitude": 0.753584, "longitude": 146.282342, "tags": [ "excepteur", "ex", "incididunt", "in", "elit", "ad", "eu" ], "friends": [ { "id": 0, "name": "Rush Church" }, { "id": 1, "name": "Luella David" }, { "id": 2, "name": "Drake Mcdonald" } ], "greeting": "Hello, Gross Clarke! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bea55229356d01bb7", "index": 4943, "guid": "b866b45c-a06e-4bd7-98c2-f4e49284ba19", "isActive": false, "balance": "$2,627.92", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Jamie Lindsay", "gender": "female", "company": "KLUGGER", "email": "jamielindsay@klugger.com", "phone": "+1 (844) 587-2437", "address": "470 Devoe Street, Veguita, Ohio, 2933", "about": "Ipsum ut reprehenderit irure et in velit exercitation ea. Irure aliqua aute cupidatat laborum incididunt magna enim voluptate sunt proident. Duis elit cillum culpa deserunt id nulla in mollit. Culpa anim nulla qui incididunt cupidatat. Deserunt magna sunt irure veniam dolor tempor in qui cillum officia. Velit ipsum proident dolor veniam deserunt labore eu fugiat.\r\n", "registered": "2014-04-16T23:02:11-12:00", "latitude": -42.998393, "longitude": -55.79944, "tags": [ "duis", "exercitation", "ut", "cillum", "velit", "exercitation", "adipisicing" ], "friends": [ { "id": 0, "name": "Lane Key" }, { "id": 1, "name": "Clemons Murray" }, { "id": 2, "name": "Levy Phelps" } ], "greeting": "Hello, Jamie Lindsay! You have 10 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bff1dbd6a16f10cf4", "index": 4944, "guid": "936f4de1-6248-4826-b235-933298da87c1", "isActive": false, "balance": "$1,799.05", "picture": "http://placehold.it/32x32", "age": 40, "eyeColor": "blue", "name": "Mollie Wolf", "gender": "female", "company": "BOVIS", "email": "molliewolf@bovis.com", "phone": "+1 (867) 595-2991", "address": "212 Poplar Street, Trexlertown, Hawaii, 9659", "about": "Ex officia quis sunt velit commodo fugiat anim ex culpa. Minim adipisicing minim dolore ut tempor non fugiat consectetur. Aliqua est irure aute do officia aliquip culpa. Fugiat duis sit sit ipsum enim irure aute nulla sit non.\r\n", "registered": "2014-07-11T11:47:58-12:00", "latitude": 81.185269, "longitude": -116.483276, "tags": [ "adipisicing", "cupidatat", "tempor", "ut", "aute", "esse", "aute" ], "friends": [ { "id": 0, "name": "Yang Hooper" }, { "id": 1, "name": "Keith Mills" }, { "id": 2, "name": "Audrey Middleton" } ], "greeting": "Hello, Mollie Wolf! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b0d9776770484464f", "index": 4945, "guid": "c0e44f02-511b-4b3b-b7b5-1b130681abaf", "isActive": true, "balance": "$3,044.42", "picture": "http://placehold.it/32x32", "age": 35, "eyeColor": "green", "name": "Hodge Hawkins", "gender": "male", "company": "EVIDENDS", "email": "hodgehawkins@evidends.com", "phone": "+1 (864) 442-3621", "address": "514 Concord Street, Riegelwood, New Mexico, 8048", "about": "Sit ipsum dolore tempor irure in id minim irure officia. Ullamco sint adipisicing incididunt nostrud dolor eu ut nulla irure do ea. Pariatur ad veniam quis in eiusmod. Quis est consequat fugiat ex anim in reprehenderit incididunt et. Qui eiusmod duis occaecat enim ea commodo irure nostrud ad velit. Dolor irure elit labore amet aute. Duis pariatur cupidatat veniam eu deserunt cillum mollit commodo cupidatat do mollit nulla laborum magna.\r\n", "registered": "2014-02-21T15:32:46-13:00", "latitude": -69.545769, "longitude": -16.042019, "tags": [ "anim", "laborum", "nisi", "officia", "ut", "excepteur", "amet" ], "friends": [ { "id": 0, "name": "Booker Norris" }, { "id": 1, "name": "Duffy Rich" }, { "id": 2, "name": "Velazquez Cervantes" } ], "greeting": "Hello, Hodge Hawkins! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b1d07304122489763", "index": 4946, "guid": "9e62e831-ad8a-4df9-8892-96582a296a13", "isActive": false, "balance": "$3,362.81", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Dolores Campbell", "gender": "female", "company": "SENTIA", "email": "dolorescampbell@sentia.com", "phone": "+1 (827) 416-2333", "address": "316 Schenck Court, Gordon, Maryland, 6120", "about": "Adipisicing exercitation nostrud qui ut est consectetur pariatur qui reprehenderit in dolore. Lorem proident aute reprehenderit reprehenderit excepteur dolor ea. Aliquip consequat ipsum non voluptate ut ut sunt proident occaecat officia aliqua ea. Mollit anim exercitation reprehenderit et est. Ad est ipsum officia irure voluptate non ad culpa dolore aliquip. Labore non ea duis in id voluptate quis magna nulla amet do enim id.\r\n", "registered": "2014-05-09T18:46:51-12:00", "latitude": -81.855681, "longitude": 125.25029, "tags": [ "veniam", "dolore", "velit", "esse", "ut", "veniam", "veniam" ], "friends": [ { "id": 0, "name": "Kristie Mcfarland" }, { "id": 1, "name": "Karen Beach" }, { "id": 2, "name": "Golden Vaughn" } ], "greeting": "Hello, Dolores Campbell! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b2bde339be7ebc2fa", "index": 4947, "guid": "4d698d7c-318e-4bb8-b2f1-6698f5a74024", "isActive": true, "balance": "$2,216.03", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "brown", "name": "Diaz Ashley", "gender": "male", "company": "ENTHAZE", "email": "diazashley@enthaze.com", "phone": "+1 (920) 556-2084", "address": "351 Sackett Street, Jenkinsville, Alaska, 2069", "about": "Aute cupidatat duis ullamco minim velit officia magna esse minim sunt. Nulla minim incididunt ipsum aute aute elit et aliquip Lorem. Ex exercitation amet deserunt aliquip exercitation ut excepteur qui do adipisicing amet aute officia. Nulla commodo non et fugiat pariatur duis amet labore voluptate adipisicing nisi.\r\n", "registered": "2014-08-05T18:54:25-12:00", "latitude": 4.8461, "longitude": 26.216308, "tags": [ "cupidatat", "dolore", "in", "id", "reprehenderit", "tempor", "non" ], "friends": [ { "id": 0, "name": "Rosemarie Chandler" }, { "id": 1, "name": "Vargas Vaughan" }, { "id": 2, "name": "Lesley Robbins" } ], "greeting": "Hello, Diaz Ashley! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b99b664170facb750", "index": 4948, "guid": "36f73b72-0a42-4d69-ad2f-97b98e6f773a", "isActive": true, "balance": "$3,026.02", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Gabrielle Levine", "gender": "female", "company": "MEDALERT", "email": "gabriellelevine@medalert.com", "phone": "+1 (823) 486-3631", "address": "269 Leonard Street, Lund, Arizona, 9146", "about": "Deserunt ut exercitation et anim. Occaecat enim duis cillum quis sit adipisicing pariatur mollit aliquip fugiat enim sunt. Ad veniam officia aliqua amet.\r\n", "registered": "2014-07-12T17:09:38-12:00", "latitude": 36.350576, "longitude": 56.572748, "tags": [ "adipisicing", "aliqua", "laborum", "magna", "exercitation", "in", "et" ], "friends": [ { "id": 0, "name": "Irwin Combs" }, { "id": 1, "name": "Harrington Schwartz" }, { "id": 2, "name": "Meagan Sims" } ], "greeting": "Hello, Gabrielle Levine! You have 9 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b5efb192825b41e90", "index": 4949, "guid": "23d66b09-e8f4-4290-95c3-e2f025d9149a", "isActive": false, "balance": "$3,488.15", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "brown", "name": "Ramirez Maxwell", "gender": "male", "company": "TALKOLA", "email": "ramirezmaxwell@talkola.com", "phone": "+1 (866) 559-3771", "address": "579 Walker Court, Bloomington, Federated States Of Micronesia, 7303", "about": "Lorem et magna excepteur sunt dolore dolor. Tempor nulla sit aliquip aliqua laborum proident aliquip id dolor nulla. Eiusmod nulla exercitation labore mollit tempor dolor aliquip mollit.\r\n", "registered": "2014-01-25T20:23:07-13:00", "latitude": -72.58189, "longitude": -162.669251, "tags": [ "excepteur", "pariatur", "velit", "fugiat", "nostrud", "deserunt", "eu" ], "friends": [ { "id": 0, "name": "Roth Talley" }, { "id": 1, "name": "Deanne Knowles" }, { "id": 2, "name": "Cannon Green" } ], "greeting": "Hello, Ramirez Maxwell! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b3f1fe43900dfb144", "index": 4950, "guid": "dd92dedd-91db-4649-b387-3c35fa60376f", "isActive": true, "balance": "$1,288.92", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Pam Gutierrez", "gender": "female", "company": "ORBIFLEX", "email": "pamgutierrez@orbiflex.com", "phone": "+1 (983) 443-2971", "address": "606 Oxford Street, Sanders, Oklahoma, 1197", "about": "Dolor ullamco tempor aute anim. Id esse esse ullamco qui dolor est velit id exercitation reprehenderit commodo aute. Consectetur laboris aliqua cupidatat officia culpa minim cupidatat et reprehenderit. Aliqua in esse fugiat irure eu. Ipsum Lorem nulla cupidatat veniam esse adipisicing qui ex reprehenderit laboris amet non fugiat. Labore ipsum laboris in incididunt duis incididunt eu incididunt nostrud cupidatat nostrud duis.\r\n", "registered": "2014-02-06T02:48:11-13:00", "latitude": 61.791667, "longitude": -94.284058, "tags": [ "ad", "amet", "Lorem", "laboris", "ipsum", "ullamco", "tempor" ], "friends": [ { "id": 0, "name": "Mari Rivers" }, { "id": 1, "name": "Carmella Garner" }, { "id": 2, "name": "Marie Mann" } ], "greeting": "Hello, Pam Gutierrez! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bf452312bb73f357b", "index": 4951, "guid": "0c55fcc0-6eff-47c8-8266-0007f4d599e6", "isActive": true, "balance": "$2,294.11", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Joyner Harvey", "gender": "male", "company": "COMTOUR", "email": "joynerharvey@comtour.com", "phone": "+1 (822) 455-2298", "address": "387 Dunne Place, Gilgo, Michigan, 4551", "about": "Cillum cupidatat adipisicing mollit dolore non ipsum dolore mollit nostrud qui. Enim ullamco sint ut occaecat eiusmod exercitation pariatur do commodo. Ad laborum sunt ad aliqua labore magna est proident. Ipsum sit sit nisi non consectetur enim incididunt ex nostrud commodo commodo pariatur. Ad aute sunt labore non quis. Incididunt enim id magna velit occaecat velit fugiat tempor tempor enim.\r\n", "registered": "2014-01-12T11:18:59-13:00", "latitude": 70.139771, "longitude": 121.233445, "tags": [ "aute", "et", "minim", "cillum", "amet", "id", "sit" ], "friends": [ { "id": 0, "name": "Marsha Pollard" }, { "id": 1, "name": "Nieves Davenport" }, { "id": 2, "name": "Collier Norton" } ], "greeting": "Hello, Joyner Harvey! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b303f7c1d4f9d5906", "index": 4952, "guid": "ea57cf91-3a5d-4511-90e7-bffac5ddaeb8", "isActive": false, "balance": "$3,191.60", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "green", "name": "Herrera Mendez", "gender": "male", "company": "LUMBREX", "email": "herreramendez@lumbrex.com", "phone": "+1 (821) 491-2858", "address": "775 Eldert Lane, Durham, Kansas, 1464", "about": "Laboris irure deserunt esse reprehenderit Lorem pariatur excepteur. Nulla fugiat ex anim do laboris incididunt nostrud proident nostrud nostrud aute cupidatat laborum. Nulla aliquip sit incididunt sunt voluptate officia esse sint aute. Nulla ad nulla deserunt mollit est sunt elit anim nisi laboris ea veniam nisi ad. Sunt proident aliqua ullamco excepteur tempor duis veniam nulla tempor id consectetur id sunt consectetur.\r\n", "registered": "2014-09-04T18:30:03-12:00", "latitude": 11.139805, "longitude": -39.695548, "tags": [ "laboris", "do", "elit", "qui", "nulla", "minim", "adipisicing" ], "friends": [ { "id": 0, "name": "Pitts George" }, { "id": 1, "name": "Dennis Park" }, { "id": 2, "name": "Odessa Kerr" } ], "greeting": "Hello, Herrera Mendez! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bb69e683d637e4575", "index": 4953, "guid": "3821aeef-bc4b-4d65-a94a-481c6cc782e3", "isActive": true, "balance": "$2,565.42", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "brown", "name": "Marylou Roberts", "gender": "female", "company": "SURETECH", "email": "marylouroberts@suretech.com", "phone": "+1 (952) 456-3202", "address": "998 Fleet Place, Downsville, South Dakota, 8071", "about": "Incididunt adipisicing dolore est adipisicing consectetur voluptate dolor. Laborum ad tempor mollit do dolor. Velit ut id dolore occaecat incididunt ut dolor pariatur enim pariatur sunt adipisicing. Veniam et Lorem Lorem do consectetur quis non reprehenderit exercitation eu sunt. Officia consectetur mollit aute consequat et do deserunt eiusmod veniam do consequat aliqua ullamco excepteur. Deserunt veniam veniam pariatur commodo do id cupidatat proident nisi ex.\r\n", "registered": "2014-07-09T15:25:58-12:00", "latitude": 41.489441, "longitude": -59.992399, "tags": [ "et", "exercitation", "excepteur", "ut", "sint", "eu", "eiusmod" ], "friends": [ { "id": 0, "name": "Jannie Holder" }, { "id": 1, "name": "Hardin Rollins" }, { "id": 2, "name": "Saundra Gonzalez" } ], "greeting": "Hello, Marylou Roberts! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2badd48a5b882dca57", "index": 4954, "guid": "070f3e51-2c89-497a-bb65-6353d1f9f28d", "isActive": false, "balance": "$1,116.29", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Willis Gonzales", "gender": "male", "company": "MAGNEMO", "email": "willisgonzales@magnemo.com", "phone": "+1 (855) 446-2212", "address": "355 Canal Avenue, Ventress, West Virginia, 8466", "about": "Nostrud cupidatat id ullamco aliqua enim commodo ad enim. Adipisicing aliqua dolor qui sit. Consequat adipisicing ut adipisicing id nulla nostrud esse sint.\r\n", "registered": "2014-05-16T01:22:59-12:00", "latitude": 48.181904, "longitude": 97.124748, "tags": [ "laborum", "tempor", "enim", "consequat", "est", "ut", "ipsum" ], "friends": [ { "id": 0, "name": "Rocha Dickson" }, { "id": 1, "name": "Rachelle Jordan" }, { "id": 2, "name": "Allison Herman" } ], "greeting": "Hello, Willis Gonzales! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b769821908a6654f2", "index": 4955, "guid": "80d483f8-f935-4506-bfa9-0068d19e585c", "isActive": false, "balance": "$1,884.31", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Robinson Mcmahon", "gender": "male", "company": "PHARMACON", "email": "robinsonmcmahon@pharmacon.com", "phone": "+1 (800) 416-3651", "address": "142 Tiffany Place, Lindcove, Texas, 5032", "about": "Esse non velit velit occaecat et laborum cillum aliqua velit. Aliquip magna magna id et enim ut fugiat do sit veniam aliqua cupidatat officia. Irure mollit incididunt Lorem veniam incididunt laboris ea elit mollit qui.\r\n", "registered": "2014-04-16T09:51:33-12:00", "latitude": 38.404413, "longitude": -134.721323, "tags": [ "dolore", "aliqua", "sunt", "non", "ut", "pariatur", "adipisicing" ], "friends": [ { "id": 0, "name": "Jenifer Frost" }, { "id": 1, "name": "Crawford Dale" }, { "id": 2, "name": "Ilene Taylor" } ], "greeting": "Hello, Robinson Mcmahon! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bb6b5d18396a54463", "index": 4956, "guid": "4bac9ca1-bed3-4240-8258-84bcc03ca2d6", "isActive": false, "balance": "$1,958.36", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "brown", "name": "Hattie Kirby", "gender": "female", "company": "VICON", "email": "hattiekirby@vicon.com", "phone": "+1 (825) 407-3949", "address": "878 Plaza Street, Gardners, Oregon, 1130", "about": "Lorem consequat est voluptate et sunt anim in aliqua do. Lorem sit nisi qui ad. Dolor ullamco laborum culpa anim sint duis labore. Occaecat consequat occaecat laboris labore deserunt occaecat mollit ea ut.\r\n", "registered": "2014-02-05T02:09:32-13:00", "latitude": -2.820715, "longitude": -113.4981, "tags": [ "labore", "dolor", "ut", "est", "proident", "ullamco", "et" ], "friends": [ { "id": 0, "name": "Antonia Hale" }, { "id": 1, "name": "Meghan Ballard" }, { "id": 2, "name": "Barlow Daugherty" } ], "greeting": "Hello, Hattie Kirby! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b5ec370ecc923e702", "index": 4957, "guid": "59a062a4-dc13-4684-99ff-a4e221eeffa5", "isActive": false, "balance": "$2,617.62", "picture": "http://placehold.it/32x32", "age": 37, "eyeColor": "brown", "name": "Fitzpatrick Cobb", "gender": "male", "company": "EXOSTREAM", "email": "fitzpatrickcobb@exostream.com", "phone": "+1 (841) 439-2459", "address": "211 Middleton Street, Vallonia, Nevada, 6082", "about": "Ipsum et dolor incididunt cupidatat laborum proident nisi nostrud commodo. Sunt mollit Lorem enim sit. Voluptate do eiusmod ipsum occaecat voluptate consectetur labore labore consectetur veniam officia dolore. Laborum non aliquip mollit nulla consectetur voluptate officia consectetur duis voluptate. Enim ad ad minim laboris reprehenderit. Exercitation excepteur dolore anim sint proident aliquip enim dolor amet quis mollit est pariatur.\r\n", "registered": "2014-02-07T13:21:20-13:00", "latitude": 83.804906, "longitude": -175.39459, "tags": [ "ullamco", "deserunt", "dolor", "anim", "eiusmod", "laboris", "occaecat" ], "friends": [ { "id": 0, "name": "Trina Phillips" }, { "id": 1, "name": "Cruz Savage" }, { "id": 2, "name": "Rosie Maynard" } ], "greeting": "Hello, Fitzpatrick Cobb! You have 7 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b00bfc7d23310deec", "index": 4958, "guid": "f791f889-2808-4eae-b353-39c9b54a5fe4", "isActive": true, "balance": "$3,830.03", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "brown", "name": "Callahan Colon", "gender": "male", "company": "MARVANE", "email": "callahancolon@marvane.com", "phone": "+1 (985) 562-3062", "address": "703 Bay Street, Ada, Minnesota, 9952", "about": "Dolor laborum irure ut nulla labore. Fugiat cillum eu laboris veniam eu occaecat do consectetur officia anim. Esse consectetur est deserunt elit eu laborum aliquip ut sunt minim tempor culpa. Exercitation ex adipisicing commodo elit magna ex ut non ex veniam eiusmod reprehenderit duis consectetur.\r\n", "registered": "2014-02-20T19:38:26-13:00", "latitude": -72.419033, "longitude": 109.732892, "tags": [ "eiusmod", "ipsum", "pariatur", "Lorem", "magna", "mollit", "irure" ], "friends": [ { "id": 0, "name": "Norma Pickett" }, { "id": 1, "name": "Ortega Foley" }, { "id": 2, "name": "Felicia Harding" } ], "greeting": "Hello, Callahan Colon! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bfdc123a32cd9fad7", "index": 4959, "guid": "88b60500-4464-46d2-a783-69ee9a00c90b", "isActive": false, "balance": "$2,161.56", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Robert Ball", "gender": "female", "company": "PERMADYNE", "email": "robertball@permadyne.com", "phone": "+1 (988) 483-3193", "address": "951 Ryder Street, Homeland, Missouri, 9376", "about": "Sit sint nostrud consequat adipisicing quis est ullamco elit pariatur excepteur voluptate exercitation laboris non. Culpa Lorem incididunt et ex est est mollit eiusmod dolore aute ad consequat ea. Cillum laboris cillum proident commodo dolore sunt qui adipisicing. Elit voluptate in dolor nulla laborum ipsum occaecat eu proident sit proident officia occaecat ad.\r\n", "registered": "2014-07-15T19:50:36-12:00", "latitude": 57.407027, "longitude": -34.962397, "tags": [ "ad", "dolore", "id", "excepteur", "cillum", "duis", "pariatur" ], "friends": [ { "id": 0, "name": "Stout Walker" }, { "id": 1, "name": "Sondra Ferguson" }, { "id": 2, "name": "Olivia Townsend" } ], "greeting": "Hello, Robert Ball! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b7ec6b314091a253a", "index": 4960, "guid": "337971e1-0af0-47bf-88d1-d70ea8d68750", "isActive": false, "balance": "$1,678.59", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Boyd Knight", "gender": "male", "company": "THREDZ", "email": "boydknight@thredz.com", "phone": "+1 (902) 495-2181", "address": "853 Oceanic Avenue, Herald, Rhode Island, 1468", "about": "Dolor voluptate excepteur veniam sit anim do labore non. Dolore in amet ullamco incididunt mollit officia do. Exercitation minim nostrud laborum enim laborum sunt velit incididunt fugiat non dolore aliquip. Eiusmod nisi mollit tempor anim.\r\n", "registered": "2014-04-22T11:39:14-12:00", "latitude": -55.758662, "longitude": 156.668499, "tags": [ "laborum", "veniam", "labore", "qui", "amet", "deserunt", "anim" ], "friends": [ { "id": 0, "name": "Etta Reynolds" }, { "id": 1, "name": "Mattie Dunn" }, { "id": 2, "name": "Anastasia Graham" } ], "greeting": "Hello, Boyd Knight! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bf2713ad010912d71", "index": 4961, "guid": "7201f60c-dc2d-4d31-b1a2-a96413f44ecd", "isActive": true, "balance": "$1,440.37", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Dickerson Vincent", "gender": "male", "company": "BLUPLANET", "email": "dickersonvincent@bluplanet.com", "phone": "+1 (927) 521-2094", "address": "405 Mermaid Avenue, Lowell, Florida, 7977", "about": "Minim consequat velit irure dolore ullamco minim consectetur culpa. Occaecat minim esse amet et. Amet eu quis veniam et ex veniam culpa minim amet commodo velit ipsum esse. Occaecat irure voluptate irure enim enim nostrud fugiat.\r\n", "registered": "2014-04-14T05:29:42-12:00", "latitude": 19.925117, "longitude": -109.222461, "tags": [ "ipsum", "proident", "ex", "cillum", "aliqua", "nostrud", "elit" ], "friends": [ { "id": 0, "name": "Dorothy Ellison" }, { "id": 1, "name": "James Armstrong" }, { "id": 2, "name": "Vanessa Reid" } ], "greeting": "Hello, Dickerson Vincent! You have 3 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b131d5d343fd20c12", "index": 4962, "guid": "7c67c6b1-056f-44d3-9f06-16e5ee7e63c4", "isActive": false, "balance": "$1,106.70", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Lina Sears", "gender": "female", "company": "SLAX", "email": "linasears@slax.com", "phone": "+1 (834) 598-3291", "address": "407 Dearborn Court, Thynedale, North Carolina, 8173", "about": "Pariatur consectetur sunt laborum nostrud in. Veniam ea deserunt esse qui est aute cupidatat. Ullamco pariatur id aliqua id velit anim proident sit laboris anim esse fugiat mollit. Nulla enim exercitation nulla qui consequat nisi ut in non do.\r\n", "registered": "2014-08-26T15:40:23-12:00", "latitude": 1.301163, "longitude": 47.926394, "tags": [ "aute", "eu", "do", "ex", "voluptate", "quis", "nostrud" ], "friends": [ { "id": 0, "name": "Valdez Anthony" }, { "id": 1, "name": "Lou Myers" }, { "id": 2, "name": "Lorie Raymond" } ], "greeting": "Hello, Lina Sears! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2baeee895dbcfe324c", "index": 4963, "guid": "25b93574-8770-4e94-a50b-7c909611cb89", "isActive": false, "balance": "$1,255.82", "picture": "http://placehold.it/32x32", "age": 24, "eyeColor": "brown", "name": "Allyson Golden", "gender": "female", "company": "CRUSTATIA", "email": "allysongolden@crustatia.com", "phone": "+1 (974) 409-3592", "address": "268 Bijou Avenue, Harrodsburg, New Hampshire, 8824", "about": "Sit velit dolor excepteur mollit in dolor. Officia veniam fugiat sunt dolor eu officia ea amet exercitation quis. Non ea magna cillum ullamco laborum aute. Aute qui dolore ex ea velit minim. Ad irure dolore laboris dolor qui commodo incididunt veniam do cillum id velit adipisicing.\r\n", "registered": "2014-01-20T20:08:29-13:00", "latitude": -37.068814, "longitude": -95.300527, "tags": [ "dolore", "esse", "excepteur", "dolore", "aliquip", "eu", "reprehenderit" ], "friends": [ { "id": 0, "name": "Stanley Roy" }, { "id": 1, "name": "Forbes Clemons" }, { "id": 2, "name": "Berry England" } ], "greeting": "Hello, Allyson Golden! You have 2 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b36a8804818164a55", "index": 4964, "guid": "e5728d49-85a4-44e9-bf0f-7ccd15981954", "isActive": true, "balance": "$2,182.03", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Hancock Reyes", "gender": "male", "company": "LUDAK", "email": "hancockreyes@ludak.com", "phone": "+1 (939) 483-2439", "address": "408 Prospect Street, Cecilia, Arkansas, 2118", "about": "Id nisi laboris ex elit ullamco non enim pariatur exercitation eiusmod ullamco. Ea excepteur pariatur qui ut. Aute incididunt nisi proident tempor mollit id deserunt id reprehenderit. Proident nisi Lorem Lorem culpa.\r\n", "registered": "2014-09-07T14:11:33-12:00", "latitude": 23.880068, "longitude": 128.356684, "tags": [ "mollit", "ullamco", "nulla", "irure", "minim", "deserunt", "ex" ], "friends": [ { "id": 0, "name": "Caldwell Shields" }, { "id": 1, "name": "Knapp Tillman" }, { "id": 2, "name": "Lowery Valentine" } ], "greeting": "Hello, Hancock Reyes! You have 6 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b891a715b231e33fe", "index": 4965, "guid": "2832157f-867c-4fd1-a992-b9ec75269e9b", "isActive": false, "balance": "$3,666.99", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "green", "name": "Marquez Edwards", "gender": "male", "company": "AQUAZURE", "email": "marquezedwards@aquazure.com", "phone": "+1 (876) 411-2357", "address": "199 Ross Street, Clarktown, Iowa, 6522", "about": "Ut tempor consequat laborum irure fugiat anim cupidatat eiusmod ipsum Lorem magna et mollit occaecat. Veniam eu dolor Lorem aliquip exercitation dolore veniam veniam labore. Ad voluptate ullamco pariatur officia tempor cupidatat laboris ad laborum excepteur culpa qui esse elit.\r\n", "registered": "2014-01-28T17:09:55-13:00", "latitude": -66.392036, "longitude": 7.237696, "tags": [ "occaecat", "irure", "reprehenderit", "aute", "veniam", "laborum", "officia" ], "friends": [ { "id": 0, "name": "Daniel Shelton" }, { "id": 1, "name": "Briggs Soto" }, { "id": 2, "name": "Patsy Mccall" } ], "greeting": "Hello, Marquez Edwards! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b35a5a71ceca386ee", "index": 4966, "guid": "89bc2c40-3ae4-44aa-8566-187745e71c64", "isActive": true, "balance": "$1,104.48", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "green", "name": "Victoria Strong", "gender": "female", "company": "UNIWORLD", "email": "victoriastrong@uniworld.com", "phone": "+1 (811) 443-2298", "address": "400 Cyrus Avenue, Cassel, Nebraska, 9014", "about": "Est nisi do laboris aliquip laborum elit qui officia reprehenderit cillum amet. Consectetur culpa enim irure enim cillum nulla. Consequat aliqua dolor reprehenderit enim laborum est ex voluptate eu duis anim. Est veniam duis irure tempor ea laborum. Nostrud id proident nisi culpa proident reprehenderit amet dolor amet. Anim quis Lorem sit ea id elit minim irure sit sint pariatur.\r\n", "registered": "2014-01-24T04:48:07-13:00", "latitude": 26.348816, "longitude": -78.637035, "tags": [ "aliqua", "in", "sit", "elit", "reprehenderit", "duis", "in" ], "friends": [ { "id": 0, "name": "Christensen Brown" }, { "id": 1, "name": "Rhodes Gregory" }, { "id": 2, "name": "Amalia Mccoy" } ], "greeting": "Hello, Victoria Strong! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b4741c314369306e2", "index": 4967, "guid": "63483e65-dce4-42fe-9ddd-c0cf5fb5cb26", "isActive": true, "balance": "$1,520.48", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "brown", "name": "Fern Mcconnell", "gender": "female", "company": "CONCILITY", "email": "fernmcconnell@concility.com", "phone": "+1 (903) 528-2184", "address": "936 Remsen Street, Belva, District Of Columbia, 2715", "about": "Fugiat minim consectetur ea adipisicing aliqua. Reprehenderit reprehenderit minim anim est pariatur id. Est duis nostrud nisi occaecat voluptate consequat ut esse dolor veniam consectetur fugiat sunt deserunt. Lorem elit nisi sunt cillum dolor exercitation occaecat cupidatat aute commodo tempor elit consequat. Nisi Lorem ad eiusmod nisi culpa esse consequat culpa aliqua consectetur enim voluptate magna. Fugiat eiusmod ea deserunt excepteur eu enim officia cupidatat amet minim est ipsum elit ipsum.\r\n", "registered": "2014-02-24T20:21:02-13:00", "latitude": -75.388931, "longitude": -136.213078, "tags": [ "incididunt", "anim", "occaecat", "ex", "laborum", "culpa", "Lorem" ], "friends": [ { "id": 0, "name": "Parks Collier" }, { "id": 1, "name": "Katharine Baxter" }, { "id": 2, "name": "Atkins Blake" } ], "greeting": "Hello, Fern Mcconnell! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b098d160f95af80b5", "index": 4968, "guid": "d37e8642-b7f8-4091-8b41-a347af342822", "isActive": true, "balance": "$3,257.91", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "brown", "name": "Lottie Lancaster", "gender": "female", "company": "ZISIS", "email": "lottielancaster@zisis.com", "phone": "+1 (826) 520-2518", "address": "973 Doone Court, Trail, New Jersey, 1519", "about": "Proident ex laborum amet sunt occaecat in adipisicing proident tempor. Nulla cupidatat nulla aliquip eiusmod aliqua adipisicing. Irure consectetur do aute nisi et reprehenderit nisi consequat aliqua consequat. Id deserunt consectetur aliqua pariatur elit culpa deserunt sunt est elit amet laborum mollit.\r\n", "registered": "2014-01-04T01:12:17-13:00", "latitude": 65.116855, "longitude": 129.272162, "tags": [ "ea", "excepteur", "adipisicing", "in", "aute", "fugiat", "consequat" ], "friends": [ { "id": 0, "name": "Ayala Donovan" }, { "id": 1, "name": "Lydia Jenkins" }, { "id": 2, "name": "Colette Pate" } ], "greeting": "Hello, Lottie Lancaster! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bb24fd3b877996c96", "index": 4969, "guid": "096b5d78-c0bd-4074-949e-c8ebd57d910d", "isActive": true, "balance": "$3,386.00", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Tucker Velez", "gender": "male", "company": "STOCKPOST", "email": "tuckervelez@stockpost.com", "phone": "+1 (912) 432-2232", "address": "446 Montrose Avenue, Caln, Palau, 1898", "about": "Esse nisi do nostrud labore occaecat exercitation culpa eu et ullamco id irure cupidatat. Adipisicing voluptate pariatur in sint anim. Ut commodo duis nostrud do nisi non magna magna cillum mollit eiusmod adipisicing aute. Laborum occaecat consequat aliquip esse aliqua sunt nisi. Voluptate ex elit sint cillum dolor est deserunt Lorem.\r\n", "registered": "2014-03-23T19:31:56-13:00", "latitude": 60.568599, "longitude": -104.599607, "tags": [ "esse", "mollit", "ex", "amet", "ea", "non", "minim" ], "friends": [ { "id": 0, "name": "Patterson Higgins" }, { "id": 1, "name": "Mcclain Berry" }, { "id": 2, "name": "Marina Peterson" } ], "greeting": "Hello, Tucker Velez! You have 5 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b6ea93c21f3808adb", "index": 4970, "guid": "fc451499-ce48-44d0-b423-816a9463b529", "isActive": true, "balance": "$3,096.27", "picture": "http://placehold.it/32x32", "age": 29, "eyeColor": "green", "name": "Fleming Solomon", "gender": "male", "company": "XTH", "email": "flemingsolomon@xth.com", "phone": "+1 (982) 478-3331", "address": "464 Lloyd Court, Mammoth, Puerto Rico, 6355", "about": "Duis ipsum adipisicing aliquip ex Lorem. Ut excepteur quis voluptate enim occaecat occaecat voluptate ea irure ipsum. Dolore magna qui elit aliqua excepteur elit.\r\n", "registered": "2014-01-24T12:57:45-13:00", "latitude": 79.559232, "longitude": 157.104751, "tags": [ "cillum", "aliqua", "nulla", "mollit", "dolor", "anim", "commodo" ], "friends": [ { "id": 0, "name": "Guthrie Nixon" }, { "id": 1, "name": "Petty Fulton" }, { "id": 2, "name": "Cummings Roberson" } ], "greeting": "Hello, Fleming Solomon! You have 3 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bbec172ae744979ce", "index": 4971, "guid": "a96d261e-6680-4977-acc7-5db58ecf9850", "isActive": false, "balance": "$2,902.08", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Sargent Stuart", "gender": "male", "company": "BUNGA", "email": "sargentstuart@bunga.com", "phone": "+1 (853) 479-3035", "address": "937 Bedford Place, Strong, California, 2539", "about": "Aute id consectetur cupidatat deserunt sint incididunt fugiat commodo quis voluptate nisi culpa. Eiusmod deserunt mollit do magna elit ea incididunt eu consequat cillum incididunt esse culpa. Cupidatat consequat est velit ullamco minim enim.\r\n", "registered": "2014-03-05T22:31:33-13:00", "latitude": -12.647014, "longitude": 29.975207, "tags": [ "sit", "nisi", "dolore", "ea", "sint", "id", "consectetur" ], "friends": [ { "id": 0, "name": "Susanne Chambers" }, { "id": 1, "name": "Eaton Ellis" }, { "id": 2, "name": "Mcdaniel Lambert" } ], "greeting": "Hello, Sargent Stuart! You have 5 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b3a0305187e79282b", "index": 4972, "guid": "429cca43-8ef3-4277-ab74-cc20f8713be2", "isActive": false, "balance": "$3,941.62", "picture": "http://placehold.it/32x32", "age": 26, "eyeColor": "blue", "name": "Vang Guerra", "gender": "male", "company": "XERONK", "email": "vangguerra@xeronk.com", "phone": "+1 (913) 489-2701", "address": "650 Goodwin Place, Roberts, Vermont, 7253", "about": "Ea ut enim exercitation minim nisi deserunt veniam. Nostrud dolor cillum sit consectetur non est cillum anim consequat dolore velit dolor cillum duis. In dolore et laboris labore dolore ipsum reprehenderit velit dolor aute pariatur reprehenderit. Ea consectetur nostrud nisi id officia laboris velit voluptate deserunt culpa consequat reprehenderit. Mollit ad pariatur sit nulla et id et magna ullamco irure nostrud culpa laboris nostrud.\r\n", "registered": "2014-05-25T00:26:42-12:00", "latitude": 76.723907, "longitude": -65.999785, "tags": [ "nisi", "esse", "qui", "elit", "sint", "nostrud", "veniam" ], "friends": [ { "id": 0, "name": "Ellen Stevens" }, { "id": 1, "name": "Harriett Hunt" }, { "id": 2, "name": "Penelope Guzman" } ], "greeting": "Hello, Vang Guerra! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bd20d1532f2b088bc", "index": 4973, "guid": "3efeecad-223a-4584-b2f2-51786d62040e", "isActive": true, "balance": "$1,457.55", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "green", "name": "Tammy Hickman", "gender": "female", "company": "ACLIMA", "email": "tammyhickman@aclima.com", "phone": "+1 (804) 502-3016", "address": "182 Mill Lane, Independence, Indiana, 2454", "about": "Reprehenderit pariatur ut non deserunt laboris culpa ut. Nisi excepteur proident eu eu pariatur est ut et est esse qui pariatur labore enim. Do dolore sit consectetur laborum adipisicing. Ut Lorem laboris do exercitation occaecat duis aliqua sint quis labore ut velit nostrud. Labore et eu ipsum reprehenderit ea ipsum nostrud tempor consectetur pariatur nostrud tempor nulla nisi. In consequat ipsum ullamco adipisicing id excepteur incididunt.\r\n", "registered": "2014-06-14T15:39:41-12:00", "latitude": 54.949634, "longitude": 116.214395, "tags": [ "incididunt", "nisi", "esse", "reprehenderit", "laborum", "nulla", "minim" ], "friends": [ { "id": 0, "name": "Mcconnell Cooley" }, { "id": 1, "name": "Richardson Ortiz" }, { "id": 2, "name": "Leah French" } ], "greeting": "Hello, Tammy Hickman! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b3a817da3dceed8fd", "index": 4974, "guid": "29bb798c-dffc-40a8-91cf-ab23c403a06e", "isActive": false, "balance": "$1,036.41", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "blue", "name": "Mathis Carver", "gender": "male", "company": "AMTAS", "email": "mathiscarver@amtas.com", "phone": "+1 (951) 573-3798", "address": "778 Madison Street, Cliff, Illinois, 9087", "about": "Non elit ut laboris Lorem. Mollit eu non in laboris culpa dolore cillum consectetur aute excepteur aliqua commodo qui ullamco. Veniam cupidatat elit consequat amet ut fugiat. Occaecat reprehenderit excepteur commodo irure mollit proident quis reprehenderit sint laboris. Enim tempor dolore velit duis sint. In est excepteur do ad. Duis labore velit eiusmod nisi cillum aute ullamco velit ut et aliqua dolor sit Lorem.\r\n", "registered": "2014-06-22T09:06:20-12:00", "latitude": -40.659741, "longitude": 170.14694, "tags": [ "sint", "excepteur", "exercitation", "anim", "tempor", "et", "sint" ], "friends": [ { "id": 0, "name": "Ebony Hughes" }, { "id": 1, "name": "Wilkerson Acosta" }, { "id": 2, "name": "Benjamin Christian" } ], "greeting": "Hello, Mathis Carver! You have 10 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b666edf5de4395a01", "index": 4975, "guid": "5ae8962e-f7dd-4f76-82e9-2c44e45099e6", "isActive": false, "balance": "$1,595.70", "picture": "http://placehold.it/32x32", "age": 28, "eyeColor": "blue", "name": "Amanda Powers", "gender": "female", "company": "EXTRAWEAR", "email": "amandapowers@extrawear.com", "phone": "+1 (828) 524-2929", "address": "950 King Street, Ballico, South Carolina, 3408", "about": "Sint proident culpa elit non culpa officia irure excepteur reprehenderit consequat nisi minim deserunt. Reprehenderit consectetur reprehenderit do culpa do aliqua laboris proident sint elit dolore ullamco ex dolore. Nostrud sunt qui sunt incididunt incididunt adipisicing sunt aliqua dolore eiusmod duis. Eu mollit Lorem pariatur labore veniam excepteur nisi aliqua pariatur est. Tempor culpa aute dolore ipsum quis aliqua reprehenderit.\r\n", "registered": "2014-04-10T23:10:12-12:00", "latitude": -42.650344, "longitude": 89.766444, "tags": [ "quis", "deserunt", "aute", "ea", "officia", "quis", "anim" ], "friends": [ { "id": 0, "name": "Patton Oliver" }, { "id": 1, "name": "Cathleen Douglas" }, { "id": 2, "name": "Rojas Brewer" } ], "greeting": "Hello, Amanda Powers! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b333ff3e418bb8061", "index": 4976, "guid": "bf5f15bf-313f-4a99-97d9-0d5e4d35b6e6", "isActive": true, "balance": "$2,625.48", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Parrish Walsh", "gender": "male", "company": "ARCHITAX", "email": "parrishwalsh@architax.com", "phone": "+1 (884) 482-3228", "address": "589 Rochester Avenue, Wyano, American Samoa, 8012", "about": "Commodo enim ipsum reprehenderit exercitation ipsum voluptate anim culpa excepteur sunt sunt. Laborum occaecat dolor Lorem labore pariatur officia amet anim dolor occaecat ullamco nostrud. Veniam ullamco sint id veniam dolor laborum culpa reprehenderit nisi excepteur adipisicing. Pariatur cupidatat excepteur et aliqua quis duis. Elit deserunt nostrud occaecat est nulla adipisicing minim veniam Lorem quis qui ad et. Consequat cupidatat commodo sint nisi tempor. Laborum do id tempor culpa.\r\n", "registered": "2014-05-09T15:59:59-12:00", "latitude": 67.032929, "longitude": -60.77536, "tags": [ "quis", "proident", "aliquip", "cupidatat", "ea", "minim", "ipsum" ], "friends": [ { "id": 0, "name": "Buck Herring" }, { "id": 1, "name": "Desiree Chaney" }, { "id": 2, "name": "Meyers Hunter" } ], "greeting": "Hello, Parrish Walsh! You have 6 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bb94a3c636577c003", "index": 4977, "guid": "002d1b3d-3b36-4c43-8d44-4d6483eac05c", "isActive": false, "balance": "$2,859.24", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "blue", "name": "Eloise Cantrell", "gender": "female", "company": "KIDSTOCK", "email": "eloisecantrell@kidstock.com", "phone": "+1 (973) 479-2985", "address": "797 Ashford Street, Hoehne, Delaware, 1296", "about": "Deserunt excepteur anim proident incididunt anim aliqua. Non magna amet do anim veniam enim id aliquip anim officia fugiat fugiat. Tempor aliqua id excepteur aliquip et commodo deserunt. Ex qui magna dolore nostrud dolore anim aute eu irure est occaecat. Elit eu nulla minim elit tempor laborum laboris commodo pariatur commodo. Ipsum Lorem ipsum mollit minim eiusmod magna est ea ut do reprehenderit. Eiusmod ea pariatur aute quis.\r\n", "registered": "2014-07-27T12:54:54-12:00", "latitude": 12.468809, "longitude": -72.250692, "tags": [ "duis", "fugiat", "esse", "consequat", "labore", "pariatur", "in" ], "friends": [ { "id": 0, "name": "Brooks Monroe" }, { "id": 1, "name": "Casey Harper" }, { "id": 2, "name": "Reva Stout" } ], "greeting": "Hello, Eloise Cantrell! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b6053c042ceab9f96", "index": 4978, "guid": "1988819e-1d81-4889-9453-7bc33c20d6fe", "isActive": false, "balance": "$3,389.68", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Anthony Glenn", "gender": "male", "company": "NIPAZ", "email": "anthonyglenn@nipaz.com", "phone": "+1 (890) 489-3529", "address": "617 Bleecker Street, Finzel, Pennsylvania, 1037", "about": "Qui aute aliqua tempor deserunt enim elit officia excepteur sunt excepteur veniam sit exercitation. Elit pariatur voluptate proident fugiat magna anim. Est ad labore excepteur cillum labore sint exercitation sint anim incididunt duis commodo. Consectetur reprehenderit duis in reprehenderit sunt ex. Officia deserunt nisi dolore cillum commodo. Do ad nisi aute ipsum consectetur. Tempor non pariatur duis dolor eu occaecat exercitation qui cillum esse.\r\n", "registered": "2014-07-14T04:05:25-12:00", "latitude": 68.048107, "longitude": 23.307854, "tags": [ "proident", "irure", "ipsum", "anim", "consectetur", "voluptate", "reprehenderit" ], "friends": [ { "id": 0, "name": "Haley Goff" }, { "id": 1, "name": "Barrett Cannon" }, { "id": 2, "name": "Best Buchanan" } ], "greeting": "Hello, Anthony Glenn! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b93daf893e1ad15f9", "index": 4979, "guid": "c89415a5-a218-45f3-bbf7-408c7c9f60ad", "isActive": false, "balance": "$1,466.54", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Beverly Trujillo", "gender": "female", "company": "ZENTIX", "email": "beverlytrujillo@zentix.com", "phone": "+1 (811) 457-3164", "address": "876 Seba Avenue, Noblestown, Georgia, 5114", "about": "Aliquip anim tempor irure consectetur et ea officia incididunt velit ullamco est amet. Aliqua reprehenderit voluptate proident amet labore irure. Non exercitation occaecat mollit adipisicing ea incididunt in sunt. Nostrud occaecat enim voluptate fugiat id officia non sint veniam enim. Duis reprehenderit dolor est aliqua ut aliqua minim magna sint enim proident. Nulla quis ad velit esse nulla cupidatat anim in eiusmod ut sit. Nulla esse proident irure cupidatat aliquip do amet occaecat nisi enim mollit velit aliquip occaecat.\r\n", "registered": "2014-05-30T21:00:01-12:00", "latitude": 10.695635, "longitude": -36.933223, "tags": [ "reprehenderit", "mollit", "excepteur", "minim", "Lorem", "id", "qui" ], "friends": [ { "id": 0, "name": "Park Pittman" }, { "id": 1, "name": "Cabrera Crane" }, { "id": 2, "name": "Bird Pruitt" } ], "greeting": "Hello, Beverly Trujillo! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bcc633681d9a51c55", "index": 4980, "guid": "960c31ad-6eef-4783-acdc-ee378bfab874", "isActive": true, "balance": "$1,944.13", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "blue", "name": "Jeri Holmes", "gender": "female", "company": "VOLAX", "email": "jeriholmes@volax.com", "phone": "+1 (871) 499-2215", "address": "480 Kensington Street, Warsaw, North Dakota, 3899", "about": "Pariatur minim ea enim mollit consequat adipisicing reprehenderit Lorem. In labore exercitation qui minim et duis aliquip nostrud labore aute ex ad nisi dolor. Eu elit sunt eiusmod ad non sunt voluptate occaecat non velit incididunt velit. Esse et aliquip pariatur quis excepteur sunt commodo. Eu dolor laboris Lorem sit ad ad et officia ullamco tempor ex ipsum incididunt. Non quis officia occaecat pariatur dolor ea dolore. Fugiat adipisicing incididunt eiusmod est amet.\r\n", "registered": "2014-02-02T00:39:51-13:00", "latitude": 40.946359, "longitude": -93.741982, "tags": [ "ea", "ad", "ipsum", "laboris", "velit", "est", "incididunt" ], "friends": [ { "id": 0, "name": "Margery Bryant" }, { "id": 1, "name": "Leblanc Cummings" }, { "id": 2, "name": "Glenda Gilmore" } ], "greeting": "Hello, Jeri Holmes! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2be6429a46b2bbebd6", "index": 4981, "guid": "d64a7ada-5440-46c6-95e0-53d842f3bd45", "isActive": false, "balance": "$3,020.05", "picture": "http://placehold.it/32x32", "age": 20, "eyeColor": "brown", "name": "Benita Powell", "gender": "female", "company": "INSURETY", "email": "benitapowell@insurety.com", "phone": "+1 (877) 461-2860", "address": "113 Channel Avenue, Deputy, Louisiana, 4505", "about": "Do veniam nostrud labore reprehenderit deserunt officia sit quis et consectetur exercitation non quis et. Consectetur excepteur ea fugiat exercitation enim adipisicing ullamco adipisicing. Velit tempor anim labore enim nisi ea laboris. Labore eiusmod sit ea ea elit labore enim et esse dolor do eu fugiat.\r\n", "registered": "2014-03-06T23:07:35-13:00", "latitude": -88.856462, "longitude": -158.794361, "tags": [ "dolore", "magna", "culpa", "aute", "mollit", "Lorem", "anim" ], "friends": [ { "id": 0, "name": "Cherie Silva" }, { "id": 1, "name": "Weeks Wong" }, { "id": 2, "name": "Elnora Hood" } ], "greeting": "Hello, Benita Powell! You have 6 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b6d73475e8fd8975f", "index": 4982, "guid": "36472170-c636-40fb-ab06-0ceafa185146", "isActive": true, "balance": "$1,901.35", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "blue", "name": "Sheena Herrera", "gender": "female", "company": "SQUISH", "email": "sheenaherrera@squish.com", "phone": "+1 (910) 556-3804", "address": "588 Visitation Place, Soham, Northern Mariana Islands, 3681", "about": "Labore laboris aliquip mollit est cupidatat voluptate labore eiusmod do est. Deserunt laborum consectetur laboris cillum non exercitation consectetur aliqua cupidatat veniam laboris tempor in laborum. Lorem labore officia adipisicing labore qui qui occaecat. Aute anim ea do velit. Exercitation ullamco officia ipsum exercitation duis commodo occaecat eiusmod sit et minim excepteur. Ad magna aliquip enim dolor.\r\n", "registered": "2014-01-02T19:49:23-13:00", "latitude": 7.318829, "longitude": -76.084823, "tags": [ "mollit", "officia", "enim", "ea", "quis", "nostrud", "proident" ], "friends": [ { "id": 0, "name": "Trudy Hanson" }, { "id": 1, "name": "Greta Hammond" }, { "id": 2, "name": "Eileen Burnett" } ], "greeting": "Hello, Sheena Herrera! You have 5 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bdf68424cc24ec1f8", "index": 4983, "guid": "b86c4f3f-d698-4770-ab27-a0426fbf33ea", "isActive": true, "balance": "$3,833.79", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "green", "name": "Lela Barr", "gender": "female", "company": "IRACK", "email": "lelabarr@irack.com", "phone": "+1 (842) 520-3469", "address": "270 Williams Avenue, Richmond, Colorado, 7863", "about": "Voluptate qui ex pariatur excepteur tempor Lorem duis laboris consequat exercitation anim eu commodo quis. Non minim eiusmod exercitation eu. Deserunt cillum laboris irure exercitation in ex esse exercitation nisi. In veniam et esse veniam aliquip eiusmod sint non aute. Ut reprehenderit nisi incididunt tempor. Laboris nisi nostrud officia in magna aliquip deserunt elit ea duis irure do non. Dolore culpa nulla voluptate non id veniam magna.\r\n", "registered": "2014-09-09T15:04:30-12:00", "latitude": 40.340796, "longitude": 126.010046, "tags": [ "magna", "ullamco", "adipisicing", "Lorem", "minim", "aliqua", "in" ], "friends": [ { "id": 0, "name": "Hurley Bradley" }, { "id": 1, "name": "Opal Howard" }, { "id": 2, "name": "Mandy Webster" } ], "greeting": "Hello, Lela Barr! You have 2 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bd9bc12363d8bfd48", "index": 4984, "guid": "bb398b1e-5021-4194-b1de-2a89d20bbc24", "isActive": false, "balance": "$2,964.09", "picture": "http://placehold.it/32x32", "age": 25, "eyeColor": "green", "name": "Vaughan Weber", "gender": "male", "company": "GENMEX", "email": "vaughanweber@genmex.com", "phone": "+1 (912) 552-3796", "address": "346 Harbor Court, Cherokee, Idaho, 5000", "about": "Dolore consectetur in eiusmod ut nostrud esse ipsum anim ut cupidatat. Qui Lorem mollit dolore consequat aute eiusmod culpa consequat. Magna eiusmod do in mollit mollit.\r\n", "registered": "2014-05-16T23:10:59-12:00", "latitude": -59.744934, "longitude": -40.507452, "tags": [ "deserunt", "fugiat", "sunt", "quis", "nulla", "aute", "consequat" ], "friends": [ { "id": 0, "name": "Singleton Faulkner" }, { "id": 1, "name": "Arlene Richardson" }, { "id": 2, "name": "Petra Hess" } ], "greeting": "Hello, Vaughan Weber! You have 2 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bbf9fc66a0c3ea278", "index": 4985, "guid": "3f9f1352-6f3a-4702-a427-5544a11c0f5e", "isActive": false, "balance": "$1,283.48", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "brown", "name": "Fox Olson", "gender": "male", "company": "STEELTAB", "email": "foxolson@steeltab.com", "phone": "+1 (836) 594-3780", "address": "807 Hanson Place, Linwood, Marshall Islands, 7753", "about": "Lorem excepteur sunt occaecat et ex mollit aliqua nisi. Sit cillum irure eiusmod occaecat. Consectetur do aliquip id cillum anim laboris ex velit ea commodo. Officia adipisicing sint est labore mollit sint cillum incididunt aliqua culpa eiusmod. Reprehenderit sunt occaecat occaecat amet. Labore adipisicing deserunt commodo enim occaecat non.\r\n", "registered": "2014-07-04T09:40:46-12:00", "latitude": -38.460293, "longitude": -63.665501, "tags": [ "ad", "anim", "sint", "nisi", "ipsum", "ex", "culpa" ], "friends": [ { "id": 0, "name": "Ada Ferrell" }, { "id": 1, "name": "Susan Blevins" }, { "id": 2, "name": "Warner Andrews" } ], "greeting": "Hello, Fox Olson! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b92a6236d0828ffc5", "index": 4986, "guid": "2fc8282b-091e-4316-a42c-4507bd408f7a", "isActive": true, "balance": "$2,570.84", "picture": "http://placehold.it/32x32", "age": 21, "eyeColor": "blue", "name": "Mcguire Campos", "gender": "male", "company": "BLURRYBUS", "email": "mcguirecampos@blurrybus.com", "phone": "+1 (982) 445-2832", "address": "717 Tabor Court, Kieler, New York, 1892", "about": "Sunt irure cupidatat non id ad ex amet tempor esse voluptate esse cupidatat. Non eiusmod fugiat cupidatat tempor. Consequat commodo id ullamco et. Et pariatur sit ex do. Fugiat dolore veniam sit consequat irure labore laborum ea. Aliqua fugiat exercitation ipsum minim nulla nulla cillum.\r\n", "registered": "2014-05-08T22:52:38-12:00", "latitude": 50.345597, "longitude": -8.810006, "tags": [ "id", "adipisicing", "qui", "ea", "non", "laborum", "dolore" ], "friends": [ { "id": 0, "name": "Connie Dean" }, { "id": 1, "name": "Gale Cotton" }, { "id": 2, "name": "White Winters" } ], "greeting": "Hello, Mcguire Campos! You have 8 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bf2dbf5b1f1469a33", "index": 4987, "guid": "7d5514fd-7d69-4d66-9e49-50c33e7d7662", "isActive": true, "balance": "$2,011.68", "picture": "http://placehold.it/32x32", "age": 23, "eyeColor": "blue", "name": "Gillespie Payne", "gender": "male", "company": "PIVITOL", "email": "gillespiepayne@pivitol.com", "phone": "+1 (957) 568-3137", "address": "436 Amboy Street, Bellfountain, Guam, 9389", "about": "Fugiat proident ullamco nisi sit pariatur tempor. Anim elit sunt deserunt aliquip sunt. Qui aliqua ipsum enim tempor sunt magna sit labore sunt sit sunt reprehenderit labore. Reprehenderit excepteur enim ullamco sit quis aliquip deserunt. Cupidatat elit elit laborum magna ad anim laborum sunt quis exercitation sit aute dolore. Aute ut est deserunt est nulla eiusmod officia occaecat duis excepteur. Ut cillum sit ut pariatur consequat ut non labore.\r\n", "registered": "2014-09-18T23:26:48-12:00", "latitude": 31.292006, "longitude": -30.935603, "tags": [ "enim", "culpa", "do", "voluptate", "sint", "ipsum", "Lorem" ], "friends": [ { "id": 0, "name": "Betsy Puckett" }, { "id": 1, "name": "Latisha Finley" }, { "id": 2, "name": "Dena Conrad" } ], "greeting": "Hello, Gillespie Payne! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b0566cd111593d79b", "index": 4988, "guid": "5c6f47ff-3f9d-4be4-b060-df58874ae39a", "isActive": false, "balance": "$2,301.73", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Hinton Allison", "gender": "male", "company": "PROFLEX", "email": "hintonallison@proflex.com", "phone": "+1 (920) 489-3182", "address": "931 Ruby Street, National, Virgin Islands, 2542", "about": "Do proident aliqua exercitation laborum sint est. Duis sint est ullamco est ex tempor quis fugiat pariatur adipisicing nostrud. Nisi excepteur laborum esse sit irure eiusmod veniam reprehenderit. Nisi dolore ea consequat qui cupidatat. Consectetur quis eiusmod adipisicing magna id.\r\n", "registered": "2014-04-11T22:58:06-12:00", "latitude": -54.153989, "longitude": -167.006815, "tags": [ "fugiat", "duis", "occaecat", "sunt", "in", "minim", "tempor" ], "friends": [ { "id": 0, "name": "Acevedo Dennis" }, { "id": 1, "name": "Stuart Bright" }, { "id": 2, "name": "Everett Freeman" } ], "greeting": "Hello, Hinton Allison! You have 1 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b89417fd03e2e9c2b", "index": 4989, "guid": "233f606f-7023-4b01-a60d-8ae71cc2b1db", "isActive": false, "balance": "$2,095.89", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Frederick Vargas", "gender": "male", "company": "GRONK", "email": "frederickvargas@gronk.com", "phone": "+1 (802) 571-3127", "address": "767 Bancroft Place, Neibert, Massachusetts, 249", "about": "Quis cupidatat minim incididunt dolor exercitation veniam excepteur consequat consectetur. Aliquip dolor enim fugiat ex. Pariatur in consectetur sit in. Veniam dolore ipsum minim tempor.\r\n", "registered": "2014-05-02T11:16:08-12:00", "latitude": -61.042287, "longitude": 96.264193, "tags": [ "minim", "excepteur", "ad", "officia", "veniam", "velit", "ad" ], "friends": [ { "id": 0, "name": "Aurora Fuentes" }, { "id": 1, "name": "Bush Giles" }, { "id": 2, "name": "Young Singleton" } ], "greeting": "Hello, Frederick Vargas! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b27c55885c6d1b2fe", "index": 4990, "guid": "c5264100-1051-4bc7-80fc-1d4a33d15c77", "isActive": false, "balance": "$3,778.71", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "blue", "name": "Maricela Farmer", "gender": "female", "company": "VISALIA", "email": "maricelafarmer@visalia.com", "phone": "+1 (936) 492-3628", "address": "114 Opal Court, Canby, Utah, 4294", "about": "Pariatur quis adipisicing cupidatat non tempor sunt. Sint ex esse minim dolore laboris irure excepteur culpa occaecat culpa do nisi anim eiusmod. Ad ex aliqua duis minim non irure deserunt. Eu irure exercitation nulla duis consectetur nostrud aute non adipisicing fugiat. Cillum minim do excepteur et voluptate in veniam irure consectetur elit. Consequat mollit do dolore esse ea sint aliquip occaecat nisi dolore nisi. Sunt dolore ipsum aliqua dolore sunt veniam officia.\r\n", "registered": "2014-02-27T16:32:26-13:00", "latitude": 17.706053, "longitude": 129.272448, "tags": [ "do", "exercitation", "aliqua", "proident", "enim", "ad", "voluptate" ], "friends": [ { "id": 0, "name": "Wiley Lewis" }, { "id": 1, "name": "Perry Castaneda" }, { "id": 2, "name": "Yates Burgess" } ], "greeting": "Hello, Maricela Farmer! You have 10 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2bcf2041b2412afaf6", "index": 4991, "guid": "75e668fa-09ba-43ea-81a5-6a58733ba543", "isActive": true, "balance": "$1,229.04", "picture": "http://placehold.it/32x32", "age": 22, "eyeColor": "green", "name": "Bartlett Brooks", "gender": "male", "company": "DENTREX", "email": "bartlettbrooks@dentrex.com", "phone": "+1 (937) 518-2800", "address": "240 Holt Court, Norfolk, Montana, 3520", "about": "Non labore officia fugiat incididunt consequat. Anim commodo adipisicing commodo reprehenderit excepteur nostrud esse duis qui adipisicing laborum incididunt. Adipisicing ullamco elit et nulla proident minim et et culpa duis incididunt consequat quis anim. Culpa magna Lorem incididunt occaecat sunt ut laborum nulla. Fugiat mollit ipsum enim aliquip duis. Laborum nulla id reprehenderit et enim voluptate eu fugiat excepteur commodo. Nostrud dolor sunt ullamco officia esse.\r\n", "registered": "2014-04-08T01:04:19-12:00", "latitude": -72.441025, "longitude": 44.199626, "tags": [ "ut", "deserunt", "cupidatat", "sint", "qui", "qui", "ut" ], "friends": [ { "id": 0, "name": "Berger Boyer" }, { "id": 1, "name": "Nola Cortez" }, { "id": 2, "name": "Jan Beck" } ], "greeting": "Hello, Bartlett Brooks! You have 8 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2bf7db5fe4898dd5a2", "index": 4992, "guid": "9787fffb-9513-4a5e-abe3-a87e327d53a5", "isActive": true, "balance": "$1,837.22", "picture": "http://placehold.it/32x32", "age": 33, "eyeColor": "brown", "name": "Dunn Hurley", "gender": "male", "company": "UXMOX", "email": "dunnhurley@uxmox.com", "phone": "+1 (943) 533-2687", "address": "221 Ridge Court, Kohatk, Wisconsin, 6901", "about": "Irure esse irure ut est duis do excepteur qui deserunt sint amet. Sunt est exercitation eu ex excepteur incididunt. Id et cillum quis elit magna mollit ea qui amet mollit aliquip veniam cillum aliquip.\r\n", "registered": "2014-04-15T02:54:41-12:00", "latitude": 60.768628, "longitude": 31.333915, "tags": [ "commodo", "ullamco", "voluptate", "cillum", "aliquip", "incididunt", "id" ], "friends": [ { "id": 0, "name": "Lorna Macias" }, { "id": 1, "name": "Beach Buckner" }, { "id": 2, "name": "Renee Cooke" } ], "greeting": "Hello, Dunn Hurley! You have 4 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b1244b800da58625a", "index": 4993, "guid": "2390c752-7599-4ee8-97a6-b65b7a2fcc79", "isActive": true, "balance": "$2,505.73", "picture": "http://placehold.it/32x32", "age": 32, "eyeColor": "green", "name": "Earline Garrett", "gender": "female", "company": "ECOLIGHT", "email": "earlinegarrett@ecolight.com", "phone": "+1 (973) 513-3622", "address": "767 Barwell Terrace, Sylvanite, Maine, 4171", "about": "Dolore excepteur mollit consectetur sunt aute enim quis eiusmod laborum exercitation amet ea nulla officia. Deserunt irure sint esse consectetur id do qui anim non do est anim culpa dolore. Non et nostrud mollit incididunt amet. Consequat minim aliqua anim anim do excepteur cillum sit ullamco. Incididunt duis occaecat aute magna incididunt est et elit officia. Elit in velit velit reprehenderit ullamco ex labore consectetur adipisicing ea ut labore eu elit.\r\n", "registered": "2014-03-06T01:49:27-13:00", "latitude": 72.82716, "longitude": 29.407526, "tags": [ "ea", "esse", "velit", "consequat", "ut", "voluptate", "anim" ], "friends": [ { "id": 0, "name": "Nielsen Mcleod" }, { "id": 1, "name": "Wanda Mcgee" }, { "id": 2, "name": "Staci Horne" } ], "greeting": "Hello, Earline Garrett! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bd7078329920ab9ed", "index": 4994, "guid": "4070f154-ec2b-46ad-b808-47c544f94fd0", "isActive": true, "balance": "$2,836.94", "picture": "http://placehold.it/32x32", "age": 38, "eyeColor": "green", "name": "Tanisha Kinney", "gender": "female", "company": "FUTURIS", "email": "tanishakinney@futuris.com", "phone": "+1 (903) 501-2871", "address": "960 Arlington Avenue, Esmont, Virginia, 6989", "about": "Ut eiusmod Lorem mollit deserunt reprehenderit labore minim eiusmod nostrud aute duis ea. Proident id enim nulla non et minim est. Fugiat ut dolor deserunt culpa exercitation in do laborum dolor magna velit velit.\r\n", "registered": "2014-08-06T16:20:59-12:00", "latitude": -49.412065, "longitude": -32.919549, "tags": [ "labore", "exercitation", "irure", "laborum", "ex", "est", "anim" ], "friends": [ { "id": 0, "name": "Daphne Witt" }, { "id": 1, "name": "Glover Perkins" }, { "id": 2, "name": "Camacho Merrill" } ], "greeting": "Hello, Tanisha Kinney! You have 1 unread messages.", "favoriteFruit": "strawberry" }, { "_id": "5420ea2b89289345c86052cc", "index": 4995, "guid": "39aa1cb7-a61a-416f-8d47-fc6f852c73f1", "isActive": false, "balance": "$3,560.12", "picture": "http://placehold.it/32x32", "age": 30, "eyeColor": "blue", "name": "Sandy Cherry", "gender": "female", "company": "DIGIPRINT", "email": "sandycherry@digiprint.com", "phone": "+1 (981) 568-2211", "address": "621 Montauk Avenue, Wyoming, Kentucky, 7431", "about": "Quis est ex ad culpa occaecat nulla. Dolore deserunt adipisicing dolore laboris voluptate incididunt sunt duis dolore ea. Quis ad voluptate laborum nulla fugiat nisi enim sit. Proident fugiat cillum enim occaecat dolore dolore esse. Amet fugiat aliqua commodo aute enim irure nisi labore id id.\r\n", "registered": "2014-02-14T14:25:02-13:00", "latitude": -4.198708, "longitude": -98.952242, "tags": [ "sunt", "cupidatat", "amet", "ea", "mollit", "irure", "dolore" ], "friends": [ { "id": 0, "name": "Pennington Lucas" }, { "id": 1, "name": "Nannie Hancock" }, { "id": 2, "name": "Owens Wilkerson" } ], "greeting": "Hello, Sandy Cherry! You have 8 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2bde19c2cc65ab4c8b", "index": 4996, "guid": "fd9480cd-cf81-425e-bf53-73d5aa869e82", "isActive": true, "balance": "$2,595.94", "picture": "http://placehold.it/32x32", "age": 39, "eyeColor": "blue", "name": "Rosalyn Zamora", "gender": "female", "company": "SHADEASE", "email": "rosalynzamora@shadease.com", "phone": "+1 (969) 424-2502", "address": "587 Noel Avenue, Goldfield, Connecticut, 2095", "about": "Laborum et elit reprehenderit occaecat ex. Aliqua esse ex duis ea. Laboris veniam qui do excepteur dolor officia velit pariatur tempor cillum dolore dolor. Duis duis Lorem nostrud sunt mollit deserunt adipisicing laborum ea aliquip. Officia enim ex aliquip voluptate sint duis irure tempor magna pariatur velit nisi. Eu voluptate dolor ipsum irure. Laborum nostrud occaecat deserunt veniam ex et exercitation aute laboris.\r\n", "registered": "2014-05-09T05:02:40-12:00", "latitude": 46.034412, "longitude": 80.051516, "tags": [ "nulla", "voluptate", "labore", "eu", "fugiat", "do", "adipisicing" ], "friends": [ { "id": 0, "name": "Lesa Mack" }, { "id": 1, "name": "Paulette Oneill" }, { "id": 2, "name": "Knox Lawson" } ], "greeting": "Hello, Rosalyn Zamora! You have 9 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b0d1ee6837aec8960", "index": 4997, "guid": "5467c8bb-96d7-4371-a63f-373a73d5979d", "isActive": true, "balance": "$3,279.88", "picture": "http://placehold.it/32x32", "age": 34, "eyeColor": "green", "name": "Hallie Thomas", "gender": "female", "company": "OPTIQUE", "email": "halliethomas@optique.com", "phone": "+1 (987) 529-3395", "address": "676 Hausman Street, Yardville, Mississippi, 4744", "about": "Eu qui aute labore consequat cupidatat ut ut irure dolor laborum in cillum enim. Excepteur aliqua duis excepteur qui. Consectetur aliquip id consectetur sunt magna magna Lorem incididunt esse voluptate tempor ipsum enim. Eiusmod commodo do ad adipisicing dolor consectetur proident sit. Duis elit qui incididunt elit veniam eu elit. Sint eiusmod est dolore est reprehenderit.\r\n", "registered": "2014-05-16T20:33:54-12:00", "latitude": 33.973868, "longitude": -30.654682, "tags": [ "labore", "et", "aliquip", "aliquip", "in", "reprehenderit", "deserunt" ], "friends": [ { "id": 0, "name": "Isabelle Stein" }, { "id": 1, "name": "Vilma Jacobs" }, { "id": 2, "name": "Herring Malone" } ], "greeting": "Hello, Hallie Thomas! You have 4 unread messages.", "favoriteFruit": "apple" }, { "_id": "5420ea2b68be0da43906ae75", "index": 4998, "guid": "88b041b2-ba7f-4279-9854-fbec7b7375bb", "isActive": true, "balance": "$1,349.56", "picture": "http://placehold.it/32x32", "age": 27, "eyeColor": "green", "name": "Justice Lynch", "gender": "male", "company": "LEXICONDO", "email": "justicelynch@lexicondo.com", "phone": "+1 (990) 549-2034", "address": "203 Krier Place, Evergreen, Washington, 5821", "about": "Deserunt aute laboris laborum quis. Consequat aliquip duis culpa quis magna. Exercitation aute quis aliquip incididunt officia consectetur ullamco officia tempor. Eiusmod incididunt dolore esse do aliquip anim labore in culpa laborum ea minim nulla. Sit amet nulla ipsum consectetur velit mollit non dolore voluptate dolore labore mollit consequat proident. Dolor eiusmod magna veniam irure commodo voluptate magna nulla tempor proident occaecat. Ut cillum fugiat exercitation tempor dolore Lorem ut reprehenderit Lorem excepteur aliqua.\r\n", "registered": "2014-07-28T08:22:27-12:00", "latitude": -69.189617, "longitude": 31.754029, "tags": [ "commodo", "fugiat", "cillum", "cupidatat", "quis", "ullamco", "labore" ], "friends": [ { "id": 0, "name": "Cheryl Hendrix" }, { "id": 1, "name": "Tracie Meyer" }, { "id": 2, "name": "House Walton" } ], "greeting": "Hello, Justice Lynch! You have 3 unread messages.", "favoriteFruit": "banana" }, { "_id": "5420ea2b1ab58801660b9aec", "index": 4999, "guid": "75112135-cbbf-454d-8107-f187fe1c8eef", "isActive": true, "balance": "$1,989.55", "picture": "http://placehold.it/32x32", "age": 31, "eyeColor": "brown", "name": "Lindsey Stanley", "gender": "female", "company": "POLARIUM", "email": "lindseystanley@polarium.com", "phone": "+1 (891) 588-2998", "address": "171 Clermont Avenue, Wanship, Tennessee, 6223", "about": "Laboris exercitation sint aute amet. Consequat irure in commodo consectetur. Pariatur eiusmod est eu incididunt ea. Irure pariatur excepteur ullamco eu id veniam magna nulla.\r\n", "registered": "2014-04-06T09:54:03-12:00", "latitude": -69.97235, "longitude": -178.239674, "tags": [ "dolor", "ea", "esse", "commodo", "non", "consectetur", "ea" ], "friends": [ { "id": 0, "name": "Alvarado Collins" }, { "id": 1, "name": "Ingram Sosa" }, { "id": 2, "name": "Duke Sampson" } ], "greeting": "Hello, Lindsey Stanley! You have 5 unread messages.", "favoriteFruit": "apple" } ]newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/SpaceShipV2.bson0000664000175000017500000367061712454416117025335 0ustar directhexdirecthexq$id1ModelDataq$id2Meshesq$id3Box001-libp$id4Transparency?IsVisibleIsWireFrameSemanticWorldMatrixg$id5M11?M12M13M14M21M22?M23M24M31M32M33?M34M41M42M43M44?UpI$id6XY?ZIsNormalizedIsZeroDownI$id7XYZIsNormalizedIsZeroRightI$id8X?YZIsNormalizedIsZeroLeftI$id9XYZIsNormalizedIsZeroForwardJ$id10XYZIsNormalizedIsZeroBackwardJ$id11XYZ?IsNormalizedIsZeroRow1U$id12X?YZWIsNormalizedIsZeroRow2U$id13XY?ZWIsNormalizedIsZeroRow3U$id14XYZ?WIsNormalizedIsZeroRow4U$id15XYZW?IsNormalizedIsZeroColumn1U$id16X?YZWIsNormalizedIsZeroColumn2U$id17XY?ZWIsNormalizedIsZeroColumn3U$id18XYZ?WIsNormalizedIsZeroColumn4U$id19XYZW?IsNormalizedIsZeroTranslationVectorJ$id20XYZIsNormalizedIsZeroScaleVectorJ$id21X?Y?Z?IsNormalizedIsZeroIsIdentityName Box001MeshID Box001-libGeometryxi$id22IndexBufferg012345678910111213 14 15 16 1718 19 20212223 24252627282930313233343536373839404142434445464748 49!50"51#52$53%54%55&56#57'58(59)60)61*62'63+64,65-66-67.68+69/70071172173274/75376477578579680381782883984985:86787;88<89=90=91>92;93?94@95A96A97B98?99C100D101E102E103F104C105G106H107I108I109J110G111K112L113M114M115N116K117O118P119Q120Q121R122O123S124T125U126U127V128S129W130X131Y132Y133Z134W135[136\137]138]139^140[141_142`143a144a145b146_147c148d149e150e151f152c153g154h155i156i157j158g159k160l161m162m163n164k165o166p167q168q169r170o171s172t173u174u175v176s177w178x179y180y181z182w183{184|185}186}187~188{189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399 400 401 402 403 404 405 406407408409410 411412413414415416417418419420421422423424425426427428429430431432433 434435!436"437#438#439$440!441%442&443'444'445(446%447)448*449+450+451,452)453-454.455/456/4570458-4591460246134623463446414655466646774687469847054719472:473;474;475<4769477=478>479?480?481@482=483@484A485B486B487=488@489C490D491E492E493F494C495G496H497I498I499J500G501K502L503M504M505N506K507O508P509Q510Q511R512O513S514T515U516U517V518S519V520W521X522X523S524V525Y526Z527[528[529\530Y531]532^533_534_535`536]537a538b539c540c541d542a543e544f545g546g547h548e549i550j551k552k553l554i555m556n557o558o559p560m561p562q563r564r565m566p567s568t569u570u571v572s573w574x575y576y577z578w579{580|581}582}583~584{585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795 796 797 798 799 800 801 802803804805806 807808809810811812813814815816817818819820821822823824825826827828829 830831!832"833#834#835$836!837%838&839'840'841(842%843)844*845+846+847,848)849-850.851/852/8530854-8551856285738583859486018615862686378647865886658679868:869;870;871<8729873=874>875?876?877@878=879A880B881C882C883D884A885E886F887G888G889H890E891I892J893K894K895L896I897M898N899O900O901P902M903Q904R905S906S907T908Q909U910V911W912W913X914U915Y916Z917[918[919\920Y921]922^923_924_925`926]927a928b929c930c931d932a933e934f935g936g937h938e939i940j941k942k943l944i945k946m947n948n949l950k951o952p953q954q955r956o957s958t959u960u961v962s963w964x965y966y967z968w969{970|971}972}973~974{97597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199 1200 1201 12021203 1204 1205 1206 12071208 12091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234 1235!1236!1237"12381239#1240$1241%1242%1243&1244#1245'1246(1247)1248)1249*1250'1251+1252,1253-1254-1255.1256+1257/125801259112601126121262/126331264412655126651267612683126971270812719127291273:127471275;1276<1277=1278=1279>1280;1281?1282@1283A1284A1285B1286?1287C1288D1289E1290E1291F1292C1293G1294H1295I1296I1297J1298G1299K1300L1301M1302M1303N1304K1305O1306P1307Q1308Q1309R1310O1311S1312T1313U1314U1315V1316S1317W1318X1319Y1320Y1321Z1322W1323[1324\1325]1326]1327^1328[1329_1330`1331a1332a1333b1334_1335c1336d1337e1338e1339f1340c1341g1342h1343i1344i1345j1346g1347k1348l1349m1350m1351n1352k1353o1354p1355q1356q1357r1358o1359s1360t1361u1362u1363v1364s1365w1366x1367y1368y1369z1370w1371{1372|1373}1374}1375~1376{1377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587 1588 1589 1590 1591 1592 1593 15941595159615971598 15991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621 16221623!1624"1625#1626#1627$1628!1629%1630&1631'1632'1633(1634%1635)1636*1637+1638+1639,1640)1641-1642.1643/1644/164501646-164711648216493165031651416521165351654616557165671657816585165991660:1661;1662;1663<166491665=1666>1667?1668?1669@1670=1671A1672B1673<1674<1675A1676A1677C1678D1679@1680@1681E1682C1683E1684F1685D1686D1687I1688E1689G1690H1691H1692H1693M1694G1695I1696J1697L1698L1699Q1700I1701K1702L1703P1704P1705U1706K1707M1708N1709T1710T1711Y1712M1713O1714P1715X1716X1717]1718O1719a1720Q1721R1722R1723\1724a1725e1726S1727T1728T1729`1730e1731i1732U1733V1734V1735d1736i1737m1738W1739X1740X1741h1742m1743q1744Y1745Z1746Z1747l1748q1749v1750[1751\1752\1753p1754v1755]1756^1757u1758u1759z1760]1761_1762`1763y1764y1765~1766_1767a1768b1769}1770}17711772a1773c1774d1775177617771778c1779e1780f1781178217831784e1785g1786h178717881789i1790g1791j1792k1793179417951796j1797l1798m1799180018011802l1803n1804o1805180618071808n1809p1810q1811"1812"1813!1814p1815r1816s1817&1818&1819%1820r1821t1822u1823*1824*1825)1826t1827-1828v1829w1830w1831.1832-1833x1834y1835218362183711838x1839z1840{1841618426184351844z1845|1846}1847:1848:184991850|1851~18521853>1854>1855=1856~1857185818591860186118621863 1864 1865186618671868 186918701871 1872 18731874187518761877 1878 1879 18801881188218831884188518861887188818891890189118921893189418951896189718981899 1900"1901190219031904 1905#19061907$1908&1909%1910(1911(1912'1913&1914*1915)1916,1917,1918+1919*1920/1921192201923219241192541926419273192821929619305193181932819337193461935:193691937193819391940:1941B1942A1943<1944<1945;1946B1947F1948E1949@1950@1951?1952F1953J1954I1955D1956D1957C1958J1959N1960M1961H1962H1963G1964N1965R1966Q1967L1968L1969K1970R1971V1972U1973P1974P1975O1976V1977Z1978Y1979T1980T1981S1982Z1983^1984]1985X1986X1987W1988^1989b1990a1991\1992\1993[1994b1995f1996e1997`1998`1999_2000f2001j2002i2003d2004d2005c2006j2007n2008m2009h2010h2011g2012n2013r2014q2015l2016l2017k2018r2019s2020v2021p2022p2023o2024s2025t2026w2027z2028z2029u2030t2031x2032{2033~2034~2035y2036x2037|2038203920402041}2042|204320442045204620472048204920502051205220532054205520562057i2058i2059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218 2219 2220 2221222222232224 222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248 22492250225122522253 2254$2255#2256#2257 2258 22592260%2261(2262(2263226422652266)2267,2268,226922702271227202273/2274/227522762277227822279228022812282228312284622852286228722881228952290:2291"2292"2293!229452295&229692297>2298>2299'2300&2301*2302=2303B2304B2305+2306*2307F2308E2309.2310.2311-2312F23132314H2315323163231723182319G2320L2321723227232342324G2325K2326P2327;2328;232982330K2331O2332T2333?2334?2335<2336O2337S2338X2339A2340A2341@2342S2343\2344[2345D2346D2347C2348\23492350^2351I2352I235323542355]2356b2357M2358M2359J2360]2361a2362f2363Q2364Q2365N2366a2367e2368j2369U2370U2371R2372e2373i2374n2375W2376W2377V2378i2379m2380r2381Z2382Z2383Y2384m23852386t2387_2388_238923902391s2392x2393c2394c2395`2396s2397w2398|2399g2400g2401d2402w2403{24042405k2406k2407h2408{240924102411o2412o2413l2414241524162417q2418q2419p2420242124222423u2424u24252426242724282429y2430y2431v2432243324342435}2436}2437z243824392440244124422443~244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614 2615 2616 2617261826192620 2621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645 2646 264726482649 2650!2651$2652$2653 2654 2655(2656265726582659%2660(26612662)2663,2664,266526662667266802669/2670/267126722673267412675426764267726782679268052681826828268326842685"268692687<2688<2689#2690"2691&2692=2693@2694@2695'2696&2697*2698D2699C2700C2701+2702*2703H2704G2705.2706.2707-2708H270922710I2711L2712L2713327142271562716M2717P2718P27197272062721:2722Q2723T2724T2725;2726:2727>2728X2729W2730W2731?2732>2733\2734[2735B2736B2737A2738\2739`2740_2741F2742F2743E2744`2745J2746274727482749K2750J2751N2752275327542755O2756N2757R2758275927602761S2762R276327642765V2766V2767U2768276927702771Z2772Z2773Y2774277527762777^2778^2779]2780278127822783b2784b27852786278727882789f2790f2791c2792279327942795j2796j2797g2798279928002801m2802m2803k2804280528062807p2808p2809o2810281128122813t2814t2815s2816281728182819a2820a2821x28222823y2824d2825e2826e2827|2828y2829h2830i283128322833}2834h2835l2836n2837283828392840l2841r2842q2843284428452846r2847v2848u2849285028512852v285328542855w2856w2857285828592860z2861{2862{2863286428652866~2867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059 3060 3061 30623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087 3088 3089 3090 30913092 30933094 3095$3096$3097#3098309931003101(3102(3103'3104310531063107,3108,3109+31103111311231130311403115/31163117311831194312043121331223123"3124!3125831268312773128"3129&3130%3131<3132<3133;3134&3135*3136)3137@3138@3139?3140*3141.3142-3143D3144D3145C3146.31472314813149H3150H3151G3152231536315453155L3156L3157K315863159:316093161P3162P3163O3164:3165>3166=3167T3168T3169S3170>3171B3172A3173X3174X3175W3176B3177F3178E3179\3180\3181[3182F3183J3184I3185`3186`3187_3188J3189N3190M3191d3192d3193c3194N3195R3196Q3197h3198h3199g3200R3201V3202U3203l3204l3205k3206V3207Z3208Y3209p3210p3211o3212Z3213^3214]3215u3216u32173218^3219b3220a3221y3222y3223v3224b3225f3226e3227}3228}3229z3230f3231j3232i323332343235~3236j3237n3238m3239324032413242n3243r3244q3245324632473248r32493250t32513252325332543255s3256x3257325832593260s3261w3262|3263326432653266w3267{32683269327032713272{327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479 3480 348134823483 34843485348634873488 34893490349134923493349434953496349734983499350035013502=3503<3504<3505B35063507A3508A3509@3510@3511D3512A3513C3514E3515D3516D3517F3518C3519E3520I3521H3522H3523H3524E3525G3526M3527L3528L3529J3530G3531I3532Q3533P3534P3535L3536I3537K3538U3539T3540T3541N3542K3543M3544Y3545X3546X3547P3548M3549O3550]3551\3552\3553R3554O3555Q3556a3557`3558`3559T3560Q3561S3562e3563d3564d3565V3566S3567U3568i3569h3570h3571X3572U3573W3574m3575l3576l3577Z3578W3579Y3580q3581p3582p3583\3584Y3585^3586[3587v3588v3589u3590^3591`3592]3593z3594z3595y3596`3597b3598_3599~3600~3601}3602b3603d3604a3605360636073608d3609f3610c3611361236133614f3615h3616e3617361836193620h36213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766 37673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801 38023803380438053806 3807380838093810381138123813 3814 3815381638173818 38193820 3821 3822 3823 3824382538263827382838293830383138323833383438353836383738383839384038413842384338443845 3846 384738483849!3850$3851385238533854!3855&3856%3857#3858#3859"3860&3861*3862)3863(3864(3865'3866*3867-386803869,3870,3871+3872-387338743875/3876/3877.38783879238803881388238833388423885638861388743888438897389063891:3892538938389483895;3896:3897>389893899<3900<3901?3902>3903A3904C3905F3906F3907B3908A390939103911E3912E3913D39143915H3916391739183919I3920H3921L3922G3923J3924J3925M3926L3927P3928K3929N3930N3931Q3932P3933T3934O3935R3936R3937U3938T3939W3940Y3941\3942\3943X3944W394539463947[3948[3949Z39503951^3952395339543955_3956^3957b3958]3959`3960`3961c3962b3963f3964a3965d3966d3967g3968f3969j3970e3971h3972h3973k3974j3975n3976i3977l3978l3979o3980n3981!3982 3983r3984r3985q3986!3987t3988398939903991u3992t3993x3994s3995v3996v3997y3998x3999|4000w4001z4002z4003}4004|40054006{4007~4008~400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209 4210 4211421242134214 42154216 4217 4218 4219 42204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245"4246!4247 4248 42494250"4251&4252%4253$4254$4255#4256&4257*4258)4259(4260(4261'4262*4263-426404265,4266,4267+4268-426942704271/4272/4273.42744275642765427744278442793428064281:428294283842848428574286:4287>4288=4289<4290<4291;4292>4293A4294D4295@4296@4297?4298A4299E4300H4301C4302C4303B4304E430543064307G4308G4309F43104311N4312M4313L4314L4315K4316N4317R4318Q4319P4320P4321O4322R4323U4324X4325T4326T4327S4328U4329Y4330\4331W4332W4333V4334Y4335]4336`4337[4338[4339Z4340]434143424343_4344_4345^4346434743484349b4350b4351a43524353d4354c4355f4356f4357e4358d4359h4360g4361j4362j4363i4364h4365o4366r4367n4368n4369m4370o4371s4372v4373q4374q4375p4376s4377#4378&4379u4380u4381t4382#438343844385x4386x4387w43884389z4390y4391|4392|4393{4394z4395~4396}4397439843994400~4401440244034404440544064407440844094410441144124413'4414*4415441644174418'4419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449+4450.4451445244534454+4455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593/459424595459645974598/459946004601460246034604460546064607460846094610461146124613 4614 4615461646174618 461946204621 46224623 4624462546264627 4628 462934630646314632463346343463546364637463846394640464146424643464446454646464746484649"4650"465146524653 4654#4655&4656&4657!4658 4659$4660'4661*4662*4663%4664$4665(466674667:4668:4669)4670(4671,4672/46732467424675-4676,46770467834679646806468114682046834468474685:4686:4687546884468984690;4691>4692>46939469484695<4696?4697B4698B4699=4700<470147024703A470447054706A4707@47084709A4710D4711G4712J4713J4714E4715D4716H4717K4718N4719N4720I4721H4722L4723O4724R4725R4726M4727L4728P4729S4730V4731V4732Q4733P4734W4735Z4736U4737U4738T4739W474047414742Y4743Y4744X47454746\4747_4748b4749b4750]4751\4752`4753c4754f4755f4756a4757`4758d4759g4760j4761j4762e4763d4764h4765k4766n4767n4768i4769h4770o4771r4772m4773m4774l4775o477647774778q4779q4780p47814782t4783478447854786u4787t4788x4789s4790v4791v4792y4793x4794|4795w4796z4797z4798}4799|48004801{4802~4803~480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046 5047504850495050 5051 5052 5053 5054505550565057 5058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082!5083$5084 5085 50865087!5088"5089%5090(5091(5092#5093"5094&5095)5096,5097,5098'5099&510051015102+5103+5104*51055106.5107151084510945110/5111.51122511355114851158511635117251186511995120<5121<51227512365124:5125=5126@5127@5128;5129:5130>51315132 5133 5134?5135>5136 5137 5138513951405141 5142k5143l5144514551465147k5148m5149n5150515151525153m5154o5155p5156!5157!51585159o5160q5161r5162%5163%5164"5165q5166s5167t5168)5169)5170&5171s5172 51735174*5175*5176u5177 5178x517915180.5181.5182w5183x5184y5185z5186551875518825189y5190|5191951926519365194{5195|5196~5197=5198:5199:5200}5201~520252035204>5205>520652075208 52095210521152125213 5214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238 5239524052415242 52435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313 53145315531653175318 5319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361 53625363536453655366 5367 5368536953705371 5372 53735374537553765377537853795380538153825383538453855386 53875388538953905391 53925393539453955396 5397$5398 5399540054015402$5403%54045405 5406 5407#5408%5409)5410541154125413(5414)541505416541754185419,5420054215422542354245425/5426542715428542954305431254321543355434!543554365437654385543995440&5441"5442"5443:544495445=5446*5447'5448'5449>5450=5451F5452-5453+5454+5455B5456F545754585459.5460.5461E54625463H5464G5465454664546735468H5469L5470K5471854728547375474L5475P5476O5477<5478<5479;5480P5481T5482S5483@5484@5485?5486T5487X5488\5489C5490C5491A5492X549354945495D5496D5497[54985499^5500]5501J5502J5503I5504^5505b5506a5507N5508N5509M5510b5511f5512e5513R5514R5515Q5516f5517j5518i5519V5520V5521U5522j5523n5524m5525Y5526Y5527W5528n5529 55305531Z5532Z5533r5534 5535t5536s5537`5538`5539_5540t5541x5542w5543d5544d5545c5546x5547|5548{5549h5550h5551g5552|555355545555l5556l5557k5558555955605561p5562p5563o556455655566!5567q5568q55695570557155725573v5574v5575u5576557755785579z5580z5581y5582558355845585~5586~5587}55885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757 57585759576057615762 5763 5764576557665767 5768 5769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793!5794 579557965797 5798!5799%58005801 5802 5803$5804%5805)5806580758085809(5810)581105812581358145815,5816058175818581958205821/5822582355824582558265827458285582995830"5831583258338583495835=5836&5837#5838#5839<5840=5841D5842*5843'5844'5845@5846D5847H5848-5849+5850+5851C5852H585358545855.5856.5857G58585859M5860658613586235863L5864M5865Q5866:58677586875869P5870Q5871X5872>5873;5874;5875T5876X5877\5878A5879?5880?5881W5882\5883`5884E5885B5886B5887[5888`588958905891F5892F5893_589458955896N5897K5898K5899590059015902R5903O5904O5905590659075908U5909S5910S5911591259135914Y5915V5916V5917591859195920]5921Z5922Z59235924592559265927^5928^59295930593159325933c5934c5935b5936593759385939g5940g5941f5942594359445945k5946k5947j5948594959505951o5952o5953m5954595559565957s5958s5959p596059615962#5963t596459655966t596759685969t5970d5971y5972x5973x5974a5975d5976h5977}5978|5979|5980e5981h5982l5983598459855986i5987l5988r5989599059915992n5993r5994v5995599659975998q5999v6000&6001'600260036004u6005&6006z6007600860096010w6011z6012~6013601460156016{6017~6018601960206021602260236024602560266027602860296030603160326033603460356036*6037+6038603960406041*6042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075.6076607760786079.608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184/6185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212 6213 6214621562166217621862196220 622162222622336224622562266227262286229623062316232623362346235623662376238623962406241 62426243624462456246 62476248#6249#6250 6251 6252 62536254'6255'6256$6257 62586625976260(6261(626262636626462656266/6267/6268,626962706271627236273362740627562766277"62787627976280462816282!6283&6284;6285;628686287!6288%6289*6290?6291?6292<6293%6294)6295:629662976298@6299)6300-630126302G6303G6304D6305-63061630766308K6309K6310H63111631256313:6314O6315O6316L63175631896319>6320S6321S6322P632396324=6325B6326W6327W6328T6329=633063316332X6333X6334A63356336E6337J6338_6339_6340\6341E6342I6343N6344c6345c6346`6347I6348M6349R6350g6351g6352d6353M6354Q6355V6356k6357k6358h6359Q6360U6361Z6362o6363o6364l6365U636663676368p6369p6370Y63716372]6373b6374v6375v6376u6377]6378a6379f6380z6381z6382y6383a6384e6385j6386~6387~6388}6389e6390i6391n6392639363946395i6396m6397r6398639964006401m64026403640464056406q64076408t6409s6410641164126413t6414x6415w6416641764186419x6420|6421{6422642364246425|642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638 6639 6640 664166426643 6644!6645!664666476648664966506651665266536654"6655#6656665766586659"6660$6661%6662&6663'6664(6665)6666'6667*6668+6669,6670-6671.6672,6673/667406675,6676066771667826679366804668126682466835668426685566866668726688666897669036691866929669396694466953669686697:6698;6699;67009670186702:6703<6704=6705=6706;6707:6708<6709>6710?6711?6712=6713<6714>6715@6716A6717>6718A6719B6720>6721B6722C6723>6724C6725?6726r6727q6728D6729r6730D6731E6732r6733E6734F6735r6736F6737G6738r6739G6740H6741r6742H6743I6744J6745K6746L6747M6748N6749O6750P6751Q6752R6753S6754T6755U6756V6757W6758X6759Y6760Z6761[6762\6763]6764^6765_6766`6767a6768b6769c6770d6771e6772f6773g6774h6775i6776j6777k6778l6779m6780n6781o6782p6783q6784r6785s6786t6787u6788v6789t6790v6791w6792x6793y6794z6795z6796{6797x6798|6799}6800~6801~68026803|6804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840}6841684268436844~6845}68466847x6848{6849{6850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898 68996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948|69496950695169526953|6954695569566957695869596960696169626963696469656966z6967y6968696969706971z6972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996!6997 699869997000 7001!70027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153 7154 7155 7156 7157 715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190 7191 7192!71937194"7195#7196$7197$7198%7199"7200&7201'7202(7203(7204)7205&7206*7207+7208,7209,7210-7211*7212.7213/7214072150721617217.7218272193722047221472225722327224672257722687227872289722967230:7231;7232<7233<7234=7235:7236>7237?7238@7239@7240A7241>7242?7243B7244C7245C7246@7247?7248D7249E7250F7251F7252G7253D7254H7255I7256J7257J7258K7259H7260L7261M7262N7263N7264O7265L7266P7267Q7268R7269R7270S7271P7272!7273 7274T7275T7276U7277!7278%7279$7280V7281V7282W7283%7284)7285(7286X7287X7288Y7289)7290-7291,7292Z7293Z7294[7295-72961729707298\7299\7300]73011730247303^7304_73055730647307_730857309_7310`731157312`7313a7314a7315b7316c731757318a7319c7320d7321e7322f7323g7324h7325i7326j7327k7328l7329m7330n7331o7332p7333q7334r7335s7336t7337u7338v7339w7340x7341y7342z7343{7344|7345}7346~7347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374S7375R737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537 7538 7539 7540 75417542 7543 7544754575467547 7548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572 7573!7574"7575#7576$7577%7578&7579'7580(7581)7582*7583+7584,7585-7586.7587/758807589175902759137592475935759467595775968759797598:7599;7600<7601=7602>7603?7604@7605A7606B7607C760876097610761176127613D7614D7615E761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651"7652765376547655#7656#7657F76587659G7660 766176627663E7664G7665 7666766776687669.7670-7671H7672I7673767476757676H7677J7678K7679768076817682J7683L7684M7685 7686 7687 7688L7689N7690O769176927693 7694N7695P7696Q7697769876997700P7701R7702S7703770477057706R7707T7708U7709771077117712T7713V7714W7715771677177718V7719X7720"7721!7722Y7723Z7724%7725%7726$7727Y7728[7729\7730)7731)7732(7733[7734]7735^7736-7737-7738,7739]7740_7741`7742177431774407745_7746a7747b7748577495775047751a7752c7753d7754977559775687757c7758e7759f7760g7761g7762h7763e7764i7765j7766k7767k7768l7769i7770m7771n7772o7773o7774p7775m7776q7777r7778s7779s7780t7781q7782u7783v7784w7785w7786x7787u7788y7789z7790{7791{7792|7793y7794}7795~7796779777987799}780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006 8007 8008 80098010 8011 8012 8013 80148015 80168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041 8042!8043!8044"80458046#8047$8048%8049%8050&8051#8052'8053(8054)8055)8056*8057'8058+8059,8060-8061-8062.8063+8064/806508066180671806828069/807038071480725807358074680753807678077880789807998080:808178082;8083<8084=8085=8086>8087;8088?8089@8090A8091A8092B8093?8094C8095D8096E8097E8098F8099C8100G8101H8102I8103I8104J8105G8106K8107L8108M8109M8110N8111K8112O8113P8114Q8115Q8116R8117O8118S8119T8120U8121U8122V8123S8124W8125X8126Y8127Y8128Z8129W8130[8131\8132]8133]8134^8135[8136_8137`8138a8139a8140b8141_8142c8143d8144e8145e8146f8147c8148g8149h8150i8151i8152j8153g8154h8155g8156k8157k8158l8159h8160m8161n8162o8163o8164p8165m8166q8167r8168s8169s8170t8171q8172u8173v8174w8175w8176x8177u8178y8179z8180{8181{8182|8183y8184}8185~8186818781888189}8190~8191}8192819381948195~81968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389 8390 8391 8392 83938394 8395 8396 8397 8398 8399 8400 8401 8402 8403 8404 8405 8406 8407 8408 8409 8410 8411 8412 8413 8414 8415 8416 8417 8418 8419 8420 8421 8422 8423 8424 8425 8426 8427 8428 8429 8430 8431 8432 8433 8434 8435 8436 8437 8438! 8439! 8440" 8441 8442# 8443$ 8444% 8445% 8446& 8447# 8448' 8449( 8450) 8451) 8452* 8453' 8454+ 8455, 8456- 8457- 8458. 8459+ 8460/ 84610 84621 84631 84642 8465/ 84663 84674 84685 84695 84706 84713 84727 84738 84749 84759 8476: 84777 8478; 8479< 8480= 8481= 8482> 8483; 8484? 8485@ 8486A 8487A 8488B 8489? 8490C 8491D 8492E 8493E 8494F 8495C 8496G 8497H 8498I 8499I 8500J 8501G 8502K 8503L 8504M 8505M 8506N 8507K 8508O 8509P 8510Q 8511Q 8512R 8513O 8514S 8515T 8516U 8517U 8518V 8519S 8520W 8521X 8522Y 8523Y 8524Z 8525W 8526[ 8527\ 8528] 8529] 8530^ 8531[ 8532_ 8533` 8534a 8535a 8536b 8537_ 8538c 8539d 8540e 8541e 8542f 8543c 8544g 8545h 8546i 8547i 8548j 8549g 8550k 8551l 8552m 8553m 8554n 8555k 8556o 8557p 8558q 8559q 8560r 8561o 8562s 8563t 8564u 8565u 8566v 8567s 8568w 8569x 8570y 8571y 8572z 8573w 8574{ 8575| 8576} 8577} 8578~ 8579{ 8580 8581 8582 8583 8584 8585 8586 8587 8588 8589 8590 8591 8592 8593 8594 8595 8596 8597 8598 8599 8600 8601 8602 8603 8604 8605 8606 8607 8608 8609 8610 8611 8612 8613 8614 8615 8616 8617 8618 8619 8620 8621 8622 8623 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 8634 8635 8636 8637 8638 8639 8640 8641 8642 8643 8644 8645 8646 8647 8648 8649 8650 8651 8652 8653 8654 8655 8656 8657 8658 8659 8660 8661 8662 8663 8664 8665 8666 8667 8668 8669 8670 8671 8672 8673 8674 8675 8676 8677 8678 8679 8680 8681 8682 8683 8684 8685 8686 8687 8688 8689 8690 8691 8692 8693 8694 8695 8696 8697 8698 8699 8700 8701 8702 8703 8704 8705 8706 8707 8708 8709 8710 8711 8712 8713 8714 8715 8716 8717 8718 8719 8720 8721 8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 8733 8734 8735 8736 8737 8738 8739 8740 8741 8742 8743 8744 8745 8746 8747 8748 8749 8750 8751 8752 8753 8754 8755 8756 8757 8758 8759 8760 8761 8762 8763 8764 8765 8766 8767 8768 8769 8770 8771 8772 8773 8774 8775 8776 8777 8778 8779 8780 8781 8782 8783 8784 8785 8786 8787 8788 8789 8790 8791 8792 8793 8794 8795 8796 8797 8798 8799 8800 8801 8802 8803 8804 8805 8806 8807 8808 8809 8810 8811 8812 8813 8814 8815 8816 8817 8818 8819 8820 8821 8822 8823 8824 8825 8826 8827 8828 8829 8830 8831 8832 8833 8834 8835 8836 8837 8838 8839 8840 8841 8842 8843 8844! 8845" 8846# 8847# 8848$ 8849! 8850% 8851& 8852' 8853' 8854( 8855% 8856) 8857* 8858+ 8859+ 8860, 8861) 8862- 8863. 8864/ 8865/ 88660 8867- 88681 88692 88703 88713 88724 88731 88745 88756 88767 88777 88788 88795 88809 8881: 8882; 8883; 8884< 88859 8886= 8887> 8888? 8889? 8890@ 8891= 8892A 8893B 8894C 8895C 8896D 8897A 8898E 8899F 8900G 8901G 8902H 8903E 8904I 8905J 8906K 8907K 8908L 8909I 8910M 8911N 8912O 8913O 8914P 8915M 8916Q 8917R 8918S 8919S 8920T 8921Q 8922U 8923V 8924W 8925W 8926X 8927U 8928Y 8929Z 8930[ 8931[ 8932\ 8933Y 8934] 8935^ 8936_ 8937_ 8938` 8939] 8940a 8941b 8942c 8943c 8944d 8945a 8946e 8947f 8948g 8949g 8950h 8951e 8952i 8953j 8954k 8955k 8956l 8957i 8958m 8959n 8960o 8961o 8962p 8963m 8964q 8965r 8966s 8967s 8968t 8969q 8970u 8971v 8972w 8973w 8974x 8975u 8976y 8977z 8978{ 8979{ 8980| 8981y 8982} 8983~ 8984 8985 8986 8987} 8988 8989 8990 8991 8992 8993 8994 8995 8996 8997 8998 8999 9000 9001 9002 9003 9004 9005 9006 9007 9008 9009 9010 9011 9012 9013 9014 9015 9016 9017 9018 9019 9020 9021 9022 9023 9024 9025 9026 9027 9028 9029 9030 9031 9032 9033 9034 9035 9036 9037 9038 9039 9040 9041 9042 9043 9044 9045 9046 9047 9048 9049 9050 9051 9052 9053 9054 9055 9056 9057 9058 9059 9060 9061 9062 9063 9064 9065 9066 9067 9068 9069 9070 9071 9072 9073 9074 9075 9076 9077 9078 9079 9080 9081 9082 9083 9084 9085 9086 9087 9088 9089 9090 9091 9092 9093 9094 9095 9096 9097 9098 9099 9100 9101 9102 9103 9104 9105 9106 9107 9108 9109 9110 9111 9112 9113 9114 9115 9116 9117 9118 9119 9120 9121 9122 9123 9124 9125 9126 9127 9128 9129 9130 9131 9132 9133 9134 9135 9136 9137 9138 9139 9140 9141 9142 9143 9144 9145 9146 9147 9148 9149 9150 9151 9152 9153 9154 9155 9156 9157 9158 9159 9160 9161 9162 9163 9164 9165 9166 9167 9168 9169 9170 9171 9172 9173 9174 9175 9176 9177 9178 9179 9180 9181 9182 9183 9184 9185 9186 9187 9188 9189 9190 9191 9192 9193 9194 9195 9196 9197 9198 9199 9200 9201 9202 9203 9204 9205 9206 9207 9208 9209 9210 9211 9212 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 9223 9224 9225 9226 9227 9228 9229 9230! 9231! 9232" 9233 9234# 9235$ 9236% 9237% 9238& 9239# 9240' 9241( 9242) 9243) 9244* 9245' 9246+ 9247, 9248- 9249- 9250. 9251+ 9252/ 92530 92541 92551 92562 9257/ 92583 92594 92605 92615 92626 92633 92647 92658 92669 92679 9268: 92697 9270; 9271< 9272= 9273= 9274> 9275; 9276? 9277@ 9278A 9279A 9280B 9281? 9282C 9283D 9284E 9285E 9286F 9287C 9288G 9289H 9290I 9291I 9292J 9293G 9294K 9295L 9296M 9297M 9298N 9299K 9300O 9301P 9302Q 9303Q 9304R 9305O 9306S 9307T 9308U 9309U 9310V 9311S 9312W 9313X 9314Y 9315Y 9316Z 9317W 9318[ 9319\ 9320] 9321] 9322^ 9323[ 9324_ 9325` 9326a 9327a 9328b 9329_ 9330c 9331d 9332e 9333e 9334f 9335c 9336g 9337h 9338i 9339i 9340j 9341g 9342k 9343k9344h9345h9346l 9347k 9348m 9349o9350l9351l9352n 9353m 9354o 9355s9356p9357p9358p 9359o 9360q 9361w9362t9363t9364r 9365q 9366s 9367{9368x9369x9370t 9371s 9372u 93739374|9375|9376v 9377u 9378w 9379938093819382x 9383w 9384y 9385938693879388z 9389y 939093919392{ 9393{ 9394| 9395939693979398} 9399} 9400~ 9401940294039404 9405 9406 9407940894099410 9411 9412 9413941494159416 9417 9418 9419942094219422 9423 9424 94259426 9427942894299430 9431 9432 9433943494359436 9437 9438 9439944094419442 9443 9444 9445944694479448 9449 9450 9451945294539454 9455 9456 9457 945894599460 9461 9462 9463B 9464A 9465A 9466 9467 9468 9469F 9470E 9471E 9472 9473 9474 9475J 9476I 9477I 9478 9479 9480 9481K 9482N 9483N 9484 9485 9486 9487O 9488R 9489R 9490 9491 9492 9493S 9494V 9495V 9496 9497 9498W 9499Z 9500 9501 9502 9503W 9504 9505[ 9506^ 9507^ 9508 9509 9510 9511_ 9512b 9513b 9514 9515 9516 9517c 9518f 9519f 9520 9521 9522 9523g 9524j 9525j 9526 9527 9528K9529H9530953195329533K9534M9535J953695379538 9539M9540O9541L9542 9543 95449545O9546Q9547N9548 9549 95509551Q9552S9553P9554955595569557S9558U9559R9560956195629563U9564W9565T9566956795689569W9570X9571V957295739574"9575X9576Y9577$95789579Z9580[9581(9582(9583%9584Z9585\9586]9587,9588,9589)9590\9591_9592095939594`9595a9596495974959819599`9600b9601c9602896038960459605b9606d9607 96089609961099611d9612j9613e9614h9615h9616k9617j9618n9619i9620l9621l9622o9623n9624r9625m9626p9627p9628s9629r9630v9631q9632t9633t9634w9635v9636z9637u9638x9639x9640{9641z9642~9643y9644|9645|96469647~96489649}9650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728 9729 9730 9731973297339734 9735 97369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830 9831 9832 98339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858 9859 9860 9861 98629863 98649865 9866$9867$9868#9869987098719872)9873)9874(9875987698779878,9879,9880+98819882988398840988509886/98879888988998904989149892398939894"9895!9896898978989879899"9900&9901%9902<9903<9904;9905&9906@9907'9908*9909*9910A9911@9912.9913-9914E9915E9916D9917.99182991919920I9921I9922H9923299246992559926M9927M9928L992969930:993199932P9933P9934O9935:9936>9937=9938T9939T9940S9941>9942?9943B9944Y9945Y9946X9947?9948 9949C9950F9951F9952^9953 9954[9955G9956J9957J9958b9959[9960_9961K9962N9963N9964f9965_9966R9967Q9968j9969j9970c9971R9972V9973U9974k9975k9976g9977V9978n9979W9980Z9981Z9982o9983n9984 9985 9986]9987]9988t9989 9990q9991\9992a9993a9994x9995q9996u9997`9998e9999e10000|10001u10002y10003d10004i10005i1000610007y10008}10009h10010l10011l1001210013}1001410015m10016p10017p100181001910020 10021 10022s10023s1002410025 1002610027r10028w10029w10030100311003210033v10034{10035{10036100371003810039z100401004110042100431004410045~1004610047100481004910050100511005210053100541005510056 10057 10058100591006010061 1006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093 10094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208 10209 1021010211102121021310214 10215 10216 10217102181021910220 10221 10222 10223102241022510226 10227 10228 10229102301023110232 10233 10234 10235102361023710238 10239 10240 1024110242 10243 10244 10245 10246 10247 10248 10249 10250 10251 10252 10253 10254 10255 10256 10257 10258 10259 10260 10261 10262$ 10263$ 10264# 10265 10266 10267 10268( 10269( 10270' 10271 10272 10273 10274, 10275, 10276+ 10277 10278 10279 102800 102810 10282/ 10283 10284 10285 102864 102874 102883 10289 10290" 10291! 102928 102938 102947 10295" 10296& 10297% 10298< 10299< 10300; 10301& 10302* 10303) 10304@ 10305@ 10306? 10307* 10308. 10309- 10310D 10311D 10312C 10313. 103142 103151 10316H 10317H 10318G 103192 103206 103215 10322L 10323L 10324K 103256 10326P 10327O 10328: 10329: 103309 10331P 10332> 10333= 10334T 10335T 10336S 10337> 10338B 10339A 10340Y 10341Y 10342X 10343B 10344F 10345E 10346\ 10347\ 10348[ 10349F 10350J 10351I 10352` 10353` 10354_ 10355J 10356N 10357M 10358d 10359d 10360c 10361N 10362R 10363Q 10364h 10365h 10366g 10367R 10368V 10369U 10370m 10371m 10372l 10373V 10374p 10375W 10376Z 10377Z 10378q 10379p 10380^ 10381] 10382t 10383t 10384s 10385^ 10386b 10387a 10388x 10389x 10390w 10391b 10392f 10393e 10394| 10395| 10396{ 10397f 10398j 10399i 10400 10401 10402 10403j 10404 10405k 10406n 10407n 10408 10409 10410 10411o 10412r 10413r 10414 10415 10416v 10417u 10418 10419 10420 10421v 10422z 10423y 10424 10425 10426 10427z 10428~ 10429} 10430 10431 10432 10433~ 10434 10435 10436 10437 10438 10439 10440 10441 10442 10443 10444 10445 10446 10447 10448 10449 10450 10451 10452 10453 10454 10455 10456 10457 10458 10459 10460 10461 10462 10463 10464 10465 10466 10467 10468 10469 10470 10471 10472 10473 10474 10475 10476 10477 10478 10479 10480 10481 10482 10483 10484 10485 10486 10487 10488 10489 10490 10491 10492 10493 10494 10495 10496 10497 10498 10499 10500 10501 10502 10503 10504 10505 10506 10507 10508 10509 10510 10511 10512 10513 10514 10515 10516 10517 10518 10519 10520 10521 10522 10523 10524 10525 10526 10527 10528 10529 10530 10531 10532 10533 10534 10535 10536 10537 10538 10539 10540 10541 10542 10543 10544 10545 10546 10547 10548 10549 10550 10551 10552 10553 10554 10555 10556 10557 10558 10559 10560 10561 10562 10563 10564 10565 10566 10567 10568 10569 10570 10571 10572 10573 10574 10575 10576 10577 10578 10579 10580 10581 10582 10583 10584 10585 10586 10587 10588 10589 10590 10591 10592 10593 10594 10595 10596 10597 10598 10599 10600 10601 10602 10603 10604 10605 10606 10607 10608 10609 10610 10611 10612 10613 10614 10615 10616 10617 10618 10619 10620 10621 10622 10623 10624 10625 10626 10627 10628 10629 10630 10631 10632 10633 10634 10635 10636 10637 10638 10639 10640 10641 10642 10643 10644 10645 10646 10647 10648 10649 10650 10651 10652 10653 10654 10655 10656 10657 10658 10659 10660 10661 10662 10663 10664 10665 10666 10667 10668 10669 10670 10671 10672 10673 10674 10675 10676 10677 10678 10679 10680 10681 10682 10683 10684 10685 10686 10687 10688 10689 10690 10691 10692 10693 10694 10695 10696 10697 10698 10699! 10700$ 10701$ 10702 10703 10704 10705% 10706( 10707( 10708 10709 10710 10711) 10712, 10713, 10714 10715 10716 10717- 107180 107190 10720 10721 10722 107231 107244 107254 10726 10727 10728 107295 107308 107318 10732 10733 10734" 107359 10736< 10737< 10738# 10739" 10740& 10741= 10742@ 10743@ 10744' 10745& 10746* 10747A 10748D 10749D 10750+ 10751* 10752. 10753E 10754H 10755H 10756/ 10757. 107582 10759I 10760L 10761L 107623 107632 107646 10765M 10766P 10767P 107687 107696 10770: 10771Q 10772T 10773T 10774; 10775: 10776> 10777U 10778X 10779X 10780? 10781> 10782B 10783Y 10784\ 10785\ 10786C 10787B 10788F 10789] 10790` 10791` 10792G 10793F 10794J 10795a 10796d 10797d 10798K 10799J 10800N 10801e 10802h 10803h 10804O 10805N 10806R 10807i 10808l 10809l 10810S 10811R 10812V 10813m 10814p 10815p 10816W 10817V 10818Z 10819q 10820t 10821t 10822[ 10823Z 10824^ 10825u 10826x 10827x 10828_ 10829^ 10830b 10831y 10832| 10833| 10834c 10835b 10836f 10837} 10838 10839 10840g 10841f 10842j 10843 10844 10845 10846k 10847j 10848n 10849 10850 10851 10852o 10853n 10854r 10855 10856 10857 10858s 10859r 10860v 10861 10862 10863 10864w 10865v 10866z 10867 10868 10869 10870{ 10871z 10872~ 10873 10874 10875 10876 10877~ 10878 10879 10880 10881 10882 10883 10884 10885 10886 10887 10888 10889 10890 10891 10892 10893 10894 10895 10896 10897 10898 10899 10900 10901 10902 10903 10904 10905 10906 10907 10908 10909 10910 10911 10912 10913 10914 10915 10916 10917 10918 10919 10920 10921 10922 10923 10924 10925 10926 10927 10928 10929 10930 10931 10932 10933 10934 10935 10936 10937 10938 10939 10940 10941 10942 10943 10944 10945 10946 10947 10948 10949 10950 10951 10952 10953 10954 10955 10956 10957 10958 10959 10960 10961 10962 10963 10964 10965 10966 10967 10968 10969 10970 10971 10972 10973 10974 10975 10976 10977 10978 10979 10980 10981 10982 10983 10984 10985 10986 10987 10988 10989 10990 10991 10992 10993 10994 10995 10996 10997 10998 10999 11000 11001 11002 11003 11004 11005 11006 11007 11008 11009 11010 11011 11012 11013 11014 11015 11016 11017 11018 11019 11020 11021 11022 11023 11024 11025 11026 11027 11028 11029 11030 11031 11032 11033 11034 11035 11036 11037 11038 11039 11040 11041 11042 11043 11044 11045 11046 11047 11048 11049 11050 11051 11052 11053 11054 11055 11056 11057 11058 11059 11060 11061 11062 11063 11064 11065 11066 11067 11068 11069 11070 11071 11072 11073 11074 11075 11076 11077 11078 11079 11080 11081 11082 11083 11084 11085 11086 11087 11088 11089 11090 11091 11092 11093 11094 11095 11096 11097 11098 11099 11100 11101 11102 11103 11104 11105 11106 11107 11108 11109 11110 11111 11112 11113 11114! 11115! 11116 11117 11118 11119 11120 11121 11122 11123 11124 11125 11126* 11127* 11128 11129 11130 11131) 11132 11133 11134 11135 11136 11137 11138- 11139- 11140 11141 11142 11143, 111441 111451 11146 11147 11148 111490 111505 111515 11152" 11153 111544 11155 11156 11157 11158 111594 11160 11161 11162> 11163> 11164' 11165 11166( 11167= 11168 11169 11170 11171( 11172 11173l 11174h11175h11176g11177 11178k 11179n 11180l11181l11182k11183k 11184m 11185p 11186p11187p11188o11189m 11190o 11191r 11192t11193t11194s11195o 11196q 11197t 11198x11199x11200w11201q 11202s 11203v 11204|11205|11206{11207s 11208u 11209x 11210112111121211213u 11214w 11215z 11216112171121811219w 11220y 11221{ 11222112231122411225y 11226| 11227} 11228112291123011231| 11232~ 11233 11234112351123611237~ 11238 11239 11240112411124211243 11244 11245 11246112471124811249 11250 11251 11252112531125411255 11256 11257112581125911260 11261 11262 11263112641126511266 11267 11268 11269112701127111272 11273 11274 11275112761127711278 11279 11280 11281112821128311284 11285 11286 11287112881128911290 11291 11292 11293 11294 11295 11296 11297 11298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364H11365113661136711368I11369H11370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400J11401114021140311404K11405J11406114071140811409114101141111412114131141411415114161141711418 1141911420114211142211423 1142411425 114261142711428 114291143011431 11432 11433 114341143511436L11437114381143911440M11441L11442114431144411445114461144711448114491145011451114521145311454"1145511456114571145811459"11460&11461!11462 11463 11464#11465&11466'11467%11468$11469$11470(11471'11472N11473*11474)11475)11476O11477N11478211479-11480,11481,11482/11483211484611485111486011487011488311489611490:11491511492411493411494711495:11496>11497911498811499811500;11501>11502?11503=11504<11505<11506@11507?11508P11509B11510A11511A11512Q11513P11514F11515E11516H11517H11518G11519F11520K11521J11522I11523I11524L11525K11526R11527N11528M11529M11530O11531R11532V11533Q11534P11535P11536S11537V11538W11539U11540T11541T11542X11543W11544R11545Z11546Y11547Y11548S11549R11550^11551]11552 11553 11554 11555^11556b11557a11558\11559\11560[11561b11562f11563e11564`11565`11566_11567f11568j11569i11570d11571d11572c11573j11574l11575k11576n11577n11578m11579l11580T11581p11582o11583o11584U11585T11586t11587s11588 11589 11590 11591t11592x11593w11594r11595r11596q11597x11598|11599{11600v11601v11602u11603|116041160511606z11607z11608y1160911610116111161211613116141161511616V11617116181161911620W11621V116221162311624 11625 11626 1162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652!11653116541165511656X11657!116581165911660 11661 11662 1166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802 1180311804118051180611807 11808 11809 11810 11811 11812 11813 11814 11815 11816 11817 11818 11819 11820 11821 11822 11823 11824 11825 11826 11827 11828 11829 11830 11831 1183211833 11834 11835 118361183711838 11839 11840 11841 11842 11843 11844 11845 11846 11847 11848 11849 11850" 11851 11852 11853 11854 11855" 11856& 11857! 11858 11859 11860# 11861& 11862* 11863% 11864$ 11865$ 11866' 11867* 1186811869) 11870( 11871( 1187211873118742 11875- 11876, 11877, 11878/ 118792 118806 118811 118820 118830 118843 118856 11886: 118875 118884 118894 118907 11891: 11892> 118939 118948 118958 11896; 11897> 11898B 11899= 11900< 11901< 11902? 11903B 1190411905A 11906@ 11907@ 119081190911910J 11911E 11912D 11913D 11914G 11915J 11916N 11917I 11918H 11919H 11920K 11921N 11922R 11923M 11924L 11925L 11926O 11927R 11928V 11929Q 11930P 11931P 11932S 11933V 11934W 11935U 11936T 11937T 11938X 11939W 1194011941Z 11942Y 11943Y 119441194511946b 11947] 11948\ 11949\ 11950_ 11951b 11952f 11953a 11954` 11955` 11956c 11957f 11958j 11959e 11960d 11961d 11962g 11963j 11964k 11965i 11966h 11967h 11968l 11969k 11970o 11971n 11972m 11973m 11974p 11975o 1197611977r 11978q 11979q 119801198111982z 11983u 11984t 11985t 11986w 11987z 11988~ 11989y 11990x 11991x 11992{ 11993~ 11994 11995} 11996| 11997| 11998 11999 12000 12001 12002 12003 12004 12005 12006 12007 12008 12009 12010 12011 1201212013 12014 12015 120161201712018 12019 12020 12021 12022 12023 12024 12025 12026 12027 12028 12029 12030 12031 12032 12033 12034 12035 12036 12037 12038 12039 12040 12041 12042 12043 12044 12045 12046 12047 12048Y12049 12050 12051 12052Z12053Y12054 12055 12056 12057 12058 12059 12060 12061 12062 12063 12064 12065 12066 12067 12068 12069 12070 12071 12072 12073 12074 12075 12076 12077 12078 12079 12080 12081 12082 12083 12084[12085 12086 12087 12088\12089[12090 12091 12092 12093 12094 12095 12096 12097 12098 12099 12100 12101 12102 12103 12104 12105 12106 12107 12108 12109 12110 12111 12112 12113 12114 12115 12116 12117 12118 12119 12120]12121 12122 12123 12124^12125]12126 12127 12128 12129 12130 12131 12132 12133 12134 12135 12136 12137 12138 12139 12140 12141 12142 12143 12144 12145 12146 12147 12148 12149 12150 12151 12152 12153 12154 12155 1215612157 12158 12159 121601216112162 12163 12164 12165 12166 12167 12168 12169 12170 12171 12172 12173 12174 12175 12176 12177 12178 12179 12180 12181 12182 12183 12184 12185 12186 12187 12188 12189 12190 12191 1219212193 12194 12195 121961219712198 12199 12200 12201 12202 12203 12204 12205 12206 12207 12208 12209 12210 12211 12212 12213 12214 12215 12216 12217 12218 12219 12220 12221 12222 12223 12224 12225 12226 12227 1222812229 12230 12231 122321223312234 12235 12236 12237 12238 12239 12240 12241 12242 12243 12244 12245 12246 12247 12248 12249 12250 12251 12252 12253 12254 12255 12256 12257 12258 12259 12260" 12261" 12262! 12263 12264_12265$ 12266# 12267# 12268`12269_12270( 12271' 12272* 12273* 12274) 12275( 12276, 12277+ 12278. 12279. 12280- 12281, 122820 12283/ 122842 122852 122861 122870 122884 122893 122906 122916 122925 122934 122948 122957 12296: 12297: 122989 122998 12300a12301< 12302; 12303; 12304b12305a12306@ 12307? 12308B 12309B 12310A 12311@ 12312D 12313C 12314F 12315F 12316E 12317D 12318H 12319G 12320J 12321J 12322I 12323H 12324L 12325K 12326N 12327N 12328M 12329L 12330P 12331O 12332R 12333R 12334Q 12335P 12336T 12337S 12338d12339d12340c12341T 12342X 12343W 12344Z 12345Z 12346Y 12347X 12348\ 12349[ 12350^ 12351^ 12352] 12353\ 12354` 12355_ 12356b 12357b 12358a 12359` 12360d 12361c 12362f 12363f 12364e 12365d 12366h 12367g 12368j 12369j 12370i 12371h 12372k 123731237412375k 1237612377 12378l 12379k 12380 12381p 12382o 12383r 12384r 12385q 12386p 12387t 12388s 12389v 12390v 12391u 12392t 12393x 12394w 12395z 12396z 12397y 12398x 12399| 12400{ 12401~ 12402~ 12403} 12404| 12405 12406 12407 12408 12409 12410 1241112412 12413 12414 124151241612417 12418 12419 12420 12421 12422 12423 12424 12425 12426 12427 12428 12429 12430 12431 12432 12433 12434 12435 12436 12437 12438 12439 12440 12441 12442 12443 12444 12445 12446 1244712448 12449 12450 124511245212453 12454 12455 12456 12457 12458 12459 12460 12461 12462 12463 12464 12465 12466 12467 12468 12469 12470 12471 12472 12473 12474 12475 12476 12477 12478 12479 12480 12481 12482 1248312484 12485 12486 124871248812489 12490 12491 12492 12493 12494 12495 12496 12497 12498 12499 12500 12501 12502 12503 12504 12505 12506 12507 12508 12509 12510 12511 12512 12513 12514 12515 12516 12517 12518 12519 12520 12521 12522 12523 12524 12525 12526 12527 12528 12529 12530 12531 12532 12533 12534 12535 12536 12537 12538 12539 12540 12541 12542 12543 12544 12545 12546 12547 12548 12549 12550 12551 12552 12553 12554 12555 12556 12557 12558 12559 12560 12561 12562 12563 12564 12565 12566 12567 12568 12569 12570 12571 12572 12573 12574 12575 12576 12577 12578 12579 12580 12581 12582 12583 12584 12585 12586 12587 12588 12589 12590 12591 12592 12593 12594 12595 12596 12597 12598 12599 12600 12601 12602 12603 12604 12605 12606 12607 12608 12609 12610 12611 12612 12613 12614 12615 12616 12617 12618 12619 12620 12621 12622 12623 12624 12625 12626 12627 12628 12629 12630 12631 12632 12633 12634 12635 12636 12637 12638 12639 12640 12641 12642 12643 12644 12645 12646 12647 12648 12649 12650 12651 12652 12653 12654 12655 12656 12657 12658 12659 12660 12661 12662 12663 12664 12665 12666 12667 12668 12669 12670 12671 12672 12673 12674 12675 12676 12677 12678 12679 12680 12681" 12682! 12683 12684 12685 12686" 12687 12688 12689 12690 12691 12692 12693 12694' 12695* 12696* 12697 12698 12699( 12700 12701 12702 12703) 12704( 12705. 12706- 12707 12708 12709 12710. 127112 127121 12713, 12714, 12715+ 127162 127176 127185 127190 127200 12721/ 127226 127233 12724 12725 12726 127274 127283 12729 12730; 12731> 12732> 12733 12734 12735< 12736 12737 12738 12739= 12740< 12741F 12742A 12743@ 12744@ 12745C 12746F 12747J 12748E 12749D 12750D 12751G 12752J 12753K 12754I 12755H 12756H 12757L 12758K 12759N 12760M 12761P 12762P 12763O 12764N 12765R 12766Q 12767T 12768T 12769S 12770R 1277112772V 12773U 12774U 127751277612777Z 12778Y 12779\ 12780\ 12781[ 12782Z 12783^ 12784] 12785` 12786` 12787_ 12788^ 12789b 12790a 12791d 12792d 12793c 12794b 12795f 12796e 12797h 12798h 12799g 12800f 12801j 12802i 12803 12804 12805 12806j 12807 12808 12809 12810 12811 12812 12813 12814A 12815F 12816F 12817 12818 12819 12820E 12821J 12822J 12823 12824 12825 12826I 12827K 12828K 12829 12830 12831 12832N 12833O 12834O 12835 12836 12837 12838R 12839S 12840S 12841 12842 12843 12844 12845V 12846V 1284712848 12849 12850 12851Z 12852Z 12853[ 12854 12855 12856^ 12857_ 12858_ 12859 12860 12861 12862 12863b 12864b 12865c 12866 12867 12868 12869f 12870f 12871g 12872 12873 12874 12875j 12876j 12877 12878 12879 12880 12881128821288312884 128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911 1291212913 12914I129151291612917I12918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948K12949129501295112952H12953K12954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972 1297312974129751297612977 1297812979 1298012981129821298312984M12985129861298712988J12989M1299012991129921299312994129951299612997129981299913000130011300213003130041300513006 1300713008#13009 13010 13011 1301213013#13014(13015$13016 13017 1301813019(13020O13021)130221302313024L13025O13026/13027,13028130291303013031/130323130330130341303513036130373130387130394130401304113042"13043713044;13045813046!13047!13048&13049;13050@13051<13052%13053%13054'13055@13056Q13057A13058*13059*13060N13061Q13062H13063E13064-13065-13066213067H13068L13069I13070113071113072613073L13074O13075M13076513077513078:13079O13080S13081P13082913083913084>13085S13086X13087T13088=13089=13090?13091X13092S13093Y13094B13095B13096P13097S13098[13099^13100F13101F13102G13103[13104_13105b13106J13107J13108K13109_13110c13111f13112N13113N13114R13115c13116g13117j13118Q13119Q13120V13121g13122n13123k13124U13125U13126W13127n13128U13129o13130Z13131Z13132R13133U13134t13135]13136\13137\13138q13139t13140x13141a13142`13143`13144u13145x13146|13147e13148d13149d13150y13151|1315213153i13154h13155h13156}131571315813159l13160m13161m131621316313164W1316513166p13167p13168T13169W1317013171s13172r13173r13174131751317613177w13178v13179v13180131811318213183{13184z13185z1318613187131881318913190~13191~131921319313194131951319613197131981319913200X13201132021320313204V13205X1320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240!1324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356 13357 13358133591336013361 13362 13363 13364133651336613367 13368 13369 13370133711337213373 13374 13375 13376133771337813379 1338013381 1338213383133841338513386 13387 133881338913390 13391 13392 13393 13394 13395 13396 13397 13398 13399 13400 13401 13402 13403 13404# 13405 13406 13407 13408 13409# 13410' 13411$ 13412 13413 13414 13415' 1341613417( 13418 13419 134201342113422/ 13423, 13424 13425 13426 13427/ 134283 134290 13430 13431 13432 134333 134347 134354 13436 13437 13438" 134397 13440; 134418 13442! 13443! 13444& 13445; 13446? 13447< 13448% 13449% 13450* 13451? 1345213453@ 13454) 13455) 134561345713458G 13459D 13460- 13461- 134622 13463G 13464K 13465H 134661 134671 134686 13469K 13470O 13471L 134725 134735 13474: 13475O 13476S 13477P 134789 134799 13480> 13481S 13482X 13483T 13484= 13485= 13486B 13487X 1348813489Y 13490A 13491A 134921349313494_ 13495\ 13496E 13497E 13498J 13499_ 13500c 13501` 13502I 13503I 13504N 13505c 13506g 13507d 13508M 13509M 13510R 13511g 13512l 13513h 13514Q 13515Q 13516V 13517l 13518p 13519m 13520U 13521U 13522W 13523p 1352413525q 13526Z 13527Z 135281352913530w 13531t 13532] 13533] 13534b 13535w 13536{ 13537x 13538a 13539a 13540f 13541{ 13542 13543| 13544e 13545e 13546j 13547 13548 13549 13550i 13551i 13552k 13553 13554 13555 13556n 13557n 13558o 13559 1356013561 13562r 13563r 135641356513566 13567 13568u 13569u 13570z 13571 13572 13573 13574y 13575y 13576~ 13577 13578 13579 13580} 13581} 13582 13583 13584 13585 13586 13587 13588 13589 13590 13591 13592 13593 13594 13595 1359613597 13598 13599 136001360113602 13603 13604 13605 13606 13607 13608 13609 13610 13611 13612 13613 13614 13615 13616 13617 13618 13619 13620 13621 13622 13623 13624 13625 13626 13627 13628 13629 13630 13631 13632 13633Y1363413635 136361363713638 13639 1364013641 13642 13643 13644 13645 13646 13647 13648 13649 13650 13651 13652 13653 13654 13655 13656 13657 13658 13659 13660 13661 13662 13663 13664 13665 13666 13667 13668 13669 13670 13671Z13672 13673 13674 13675[13676Z13677 13678 13679 13680 13681 13682 13683 13684 13685 13686 13687 13688 13689 13690 13691 13692 13693 13694 13695 13696 13697 13698 13699 13700 13701 13702 13703 13704 13705 13706 13707\13708 13709 13710 13711]13712\13713 13714 13715 13716 13717 13718 13719 13720 13721 13722 13723 13724 13725 13726 13727 13728 13729 13730 13731 13732 13733 13734 13735 13736 13737 13738 13739 13740 13741 13742 13743 137441374513746 1374713748^13749 13750 13751^13752 13753 13754 13755 13756 13757 13758 13759 13760 13761 13762 13763 13764 13765 13766 13767 13768 13769 13770 13771 13772 13773 13774 13775 13776 13777 13778 13779 13780 13781 1378213783 13784 13785 137861378713788 13789 13790 13791 13792 13793 13794 13795 13796 13797 13798 13799 13800 13801 13802 13803 13804 13805 13806 13807 13808 13809 13810 13811 13812 13813 13814 13815 13816 13817 1381813819 13820 13821 138221382313824 13825 13826 13827 13828 13829 13830 13831 13832 13833 13834 13835 13836 13837 13838 13839 13840 13841 13842 13843 13844 13845 13846 13847 13848 13849 13850! 13851! 13852 13853 13854$ 13855_1385613857$ 138581385913860 13861$ 1386213863 13864( 13865) 13866) 13867 13868 13869 13870, 13871- 13872- 13873 13874 13875 138760 138771 138781 13879 13880 13881 138824 138835 138845 13885 13886 13887 138888 138899 138909 13891" 13892 13893`13894# 13895< 13896< 13897a13898`13899' 13900@ 13901A 13902A 13903* 13904' 13905+ 13906D 13907E 13908E 13909. 13910+ 13911/ 13912H 13913I 13914I 139152 13916/ 139173 13918L 13919M 13920M 139216 139223 139237 13924P 13925Q 13926Q 13927: 139287 13929b13930; 13931T 13932T 13933c13934b13935? 13936X 13937Y 13938Y 13939B 13940? 13941C 13942\ 13943] 13944] 13945F 13946C 13947G 13948` 13949a 13950a 13951J 13952G 13953K 13954d 13955e 13956e 13957N 13958K 13959O 13960h 13961i 13962i 13963R 13964O 13965S 13966l 13967 13968 13969d13970S 13971W 13972p 13973q 13974q 13975Z 13976W 13977[ 13978t 13979u 13980u 13981^ 13982[ 13983_ 13984x 13985y 13986y 13987b 13988_ 13989c 13990| 13991} 13992} 13993f 13994c 13995g 13996 13997 13998 13999j 14000g 1400114002k 14003 14004 140051400614007o 14008 14009 14010 14011r 14012o 14013s 14014 14015 14016 14017v 14018s 14019w 14020 14021 14022 14023z 14024w 14025{ 14026 14027 14028 14029~ 14030{ 14031 14032 14033 14034 14035 14036 1403714038 14039 14040 140411404214043 14044 14045 14046 14047 14048 14049 14050 14051 14052 14053 14054 14055 14056 14057 14058 14059 14060 14061 14062 14063 14064 14065 14066 14067 14068 14069 14070 14071 14072 1407314074 14075 14076 140771407814079 14080 14081 14082 14083 14084 14085 14086 14087 14088 14089 14090 14091 14092 14093 14094 14095 14096 14097 14098 14099 14100 14101 14102 14103 14104 14105 14106 14107 14108 1410914110 14111 14112 141131411414115 14116 14117 14118 14119 14120 14121 14122 14123 14124 14125 14126 14127 14128 14129 14130 14131 14132 14133 14134 14135 14136 14137 14138 14139 14140 14141 14142 14143 14144 14145 14146 14147141481414914150 14151 14152 14153 14154 14155 14156 14157 14158 14159 14160 14161 14162 14163 14164 14165 14166 14167 14168 14169 14170 14171 14172 14173 14174 14175 14176 14177 14178 14179 14180 14181 14182 14183141841418514186 14187 14188 14189 14190 14191 14192 14193 14194 14195 14196 14197 14198 14199 14200 14201 14202 14203 14204 14205 14206 14207 14208 14209 14210 14211 14212 14213 14214 14215 14216 14217 14218 14219142201422114222 14223 14224 14225 14226 14227 14228 14229 14230 14231 14232 14233 14234 14235 14236 14237 14238 14239 14240 14241 14242 14243 14244 14245 14246 14247 14248 14249 14250 14251 14252 1425314254 14255 14256 142571425814259 14260 14261 14262 14263 14264 14265 14266 14267 14268 14269 14270 14271 14272! 14273 14274 14275 14276 14277 14278 14279& 14280& 14281% 14282 14283 14284 14285* 14286* 14287) 14288 1428914290 14291 14292 142931429414295 14296- 14297, 14298, 14299 14300 14301 143021 143030 143040 14305 14306 14307" 143085 143094 143104 14311 14312" 14313$ 14314# 14315 14316 14317 14318$ 14319( 14320' 14321> 14322> 14323= 14324( 14325"14326 14327 14328 14329#14330"14331 14332 14333 14334 14335 14336 14337 14338 14339 14340 14341 14342 14343 14344 14345 14346 14347 14348 14349! 14350" 14351# 14352! 14353# 14354$ 14355! 14356$ 14357% 14358! 14359% 14360& 14361& 14362% 14363' 14364' 14365( 14366& 14367( 14368' 14369) 14370) 14371* 14372( 14373* 14374) 14375+ 14376+ 14377, 14378* 14379, 14380+ 14381- 14382- 14383. 14384, 14385. 14386- 14387/ 14388. 14389/ 143900 14391. 143920 143931 14394. 143951 143962 14397 143983 143994 14400 144014 144025 14403 144045 144056 14406 144076 144087 14409 144107 144118 14412 144138 14414 144159 14416: 14417; 14418< 14419= 14420> 14421? 14422@ 14423A 14424B 14425C 14426D 14427E 14428F 14429G 14430H 14431I 14432J 14433K 14434L 14435M 14436N 14437O 14438P 14439Q 14440R 14441S 14442T 14443U 14444V 14445W 14446X 14447Y 14448Z 14449[ 14450\ 14451] 14452^ 14453_ 14454] 14455_ 14456` 14457] 14458a 14459b 14460c 14461d 14462e 14463f 14464g 14465h 14466h 14467i 14468f 14469j 14470k 14471l 14472l 14473m 14474j 14475n 14476o 14477p 14478p 14479q 14480n 14481r 14482s 14483t 14484t 14485u 14486r 14487v 14488w 14489x 14490x 14491y 14492v 14493z 14494{ 14495| 14496| 14497} 14498z 14499~ 14500 14501 14502 14503 14504~ 14505 14506 14507 14508 14509 14510 14511m 14512l 14513s 14514s 14515r 14516m 14517q 14518p 14519g 14520g 14521f 14522q 14523u 14524t 14525 14526 14527 14528u 14529 14530 14531o 14532o 14533n 14534 14535 14536 14537 14538 14539 14540 14541 14542 14543 14544 14545 14546 14547 14548 14549 14550 14551 14552 14553 14554 14555 14556 14557 14558 14559 14560 14561 14562 14563 14564 145658 145667 14567y 14568y 14569x 145708 14571 14572 14573 14574 14575 14576 14577 14578 14579 14580 14581 14582 14583 14584 14585 14586 14587 14588 14589 14590 14591 14592 14593 14594 14595 14596 14597 14598 14599 14600 14601 14602 14603 14604 14605 14606 14607 14608 14609 14610 14611 14612 14613 14614 14615 14616 14617 14618 14619j 14620~ 14621 14622 14623k 14624j 14625 14626 14627 14628 14629 14630 14631 14632 14633 14634 14635 14636 14637h 14638 14639 14640 14641i 14642h 14643 14644 14645 14646 14647 14648 14649 14650 14651 14652 14653 14654 14655 14656 14657 14658 14659 14660 14661 14662 14663 14664 14665 14666 14667 146687 14669: 14670: 14671 14672 14673 14674} 14675 14676 14677 14678 14679 14680v 14681y 14682y 14683 14684 14685 14686 14687 14688 14689 14690 14691 14692z 14693} 14694} 14695 14696 14697 14698| 14699{ 14700{ 14701 14702 14703 14704 14705 14706 14707 14708 14709 14710 14711 14712 14713 14714 14715 14716 14717 14718 14719 14720 14721 14722 14723 14724 14725 14726 14727 14728 14729 14730 14731 14732 14733 14734 14735 14736 14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 14750 14751 14752 14753 14754 14755 14756 14757 14758 14759 14760 14761 14762 14763 14764 14765 14766 14767 14768 14769 14770 14771 14772 14773 14774 14775 14776 14777 14778 14779 14780 14781 14782 14783 14784 14785 14786 14787 14788 14789 14790 14791 14792 14793 14794 14795 14796 14797 14798 14799 14800 14801 14802 14803 14804 14805 14806 14807 14808 14809 14810 14811 14812 14813 14814 14815 14816 14817 14818 14819 14820 14821 14822 14823 14824 14825 14826 14827 14828 14829 14830 14831 14832 14833 14834 14835 14836 14837 14838 14839 14840 14841 14842 14843 14844 14845 14846 14847 14848 14849 14850 14851 14852 14853 14854 14855 14856 14857 14858 14859 14860 14861 14862 14863 14864 14865 14866 14867 14868 14869 14870 14871 14872 14873 14874 14875 14876 14877 14878 14879 14880 14881 14882 14883 14884 14885 14886 14887 14888 14889 14890 14891 14892 14893! 14894 14895" 14896# 14897$ 14898$ 14899% 14900" 14901& 14902' 14903( 14904( 14905) 14906& 14907* 14908+ 14909, 14910, 14911- 14912* 14913- 14914, 14915. 14916. 14917/ 14918- 149190 149201 149212 149222 149233 149240 149254 149265 149276 149286 149297 149304 149318 149329 14933: 14934: 14935; 149368 14937< 14938= 14939> 14940> 14941? 14942< 14943 14944@ 14945A 14946A 14947 14948 14949 14950B 14951C 14952C 14953 14954 14955 14956C 14957D 14958D 14959 14960 14961 14962E 14963F 14964F 14965 14966 14967 14968G 14969H 14970H 14971 14972 14973I 14974J 14975K 14976 14977I 14978K 14979 14980K 14981L 14982 14983L 14984M 14985M 14986N 14987 14988 14989M 14990 14991O 14992P 14993Q 14994R 14995S 14996T 14997U 14998V 14999W 15000X 15001Y 15002Z 15003[ 15004\ 15005] 15006^ 15007_ 15008` 15009a 15010b 15011c 15012d 15013e 15014f 15015g 15016h 15017i 15018j 15019k 15020l 15021m 15022n 15023o 15024p 15025q 15026r 15027s 15028t 15029u 15030v 15031w 15032x 15033y 15034z 15035{ 15036y 15037{ 15038| 15039} 15040~ 15041 15042y 15043| 15044 15045 15046 15047 15048 15049> 15050= 15051 15052 15053 15054 15055 15056 15057 15058 15059 15060 15061 15062 15063 15064 15065 15066 15067 15068 15069 15070 15071 15072 15073 15074 15075 15076 15077 15078 15079 15080 15081 15082 15083 15084 15085 15086 15087 15088 15089 15090 15091 15092 15093 15094 15095 15096 15097 15098 15099 15100 15101 15102 15103 15104 15105 15106 15107 15108 15109 15110 15111 15112 15113 15114 15115 15116 15117 15118 15119 15120 15121 15122 15123 15124 15125 15126 15127 15128 15129 15130 15131 15132 15133 15134 15135 15136 15137 15138 15139 15140 15141 15142 15143 15144 15145 15146 15147 15148 15149 15150 15151 15152 15153 15154 15155 15156 15157 15158 15159 15160 15161 15162 15163 15164 15165 15166 15167 15168 15169 15170 15171 15172 15173 15174 15175 15176 15177 15178 15179 15180 15181 15182 15183 15184 15185 15186 15187 15188 15189 15190 15191 15192 15193 15194 15195 15196 15197 15198 15199 15200 15201 15202 15203 15204 15205 15206 15207 15208 15209 15210 15211 15212 15213 15214 15215 15216 15217 15218 15219 15220 15221 15222 15223 15224 15225 1522615227152281522915230 152311523215233152341523515236152371523815239 15240 15241 15242 15243 15244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262 15263!15264"15265#15266$15267%15268&15269'15270(15271)15272*15273+15274,15275-15276.15277/152780152791528015281 15282 15283E15284D15285D15286 15287 15288 15289152901529115292 15293 152941529515296 15297 15298 15299153001530115302 15303 15304 15305153061530715308 15309 15310 1531115312 15313153141531515316 15317 15318 15319"153201532115322 15323 15324 15325F15326#15327#15328 15329 15330G15331E15332 15333 15334 15335G15336 1533715338I1533915340-15341^VerticesC0J$id23X@Y`)3@Z gIsNormalizedIsZero1J$id24X@Y@)3@Z?a?IsNormalizedIsZero2J$id25X"YV@Z c?IsNormalizedIsZero3J$id26X"YV@Z@̗wIsNormalizedIsZero4J$id27XY@Z@n!?IsNormalizedIsZero5J$id28XY@Z]_?IsNormalizedIsZero6J$id29XWYt@Z@`?IsNormalizedIsZero7J$id30XWYt@ZH?IsNormalizedIsZero8J$id31X@Y e߯@Za/$?IsNormalizedIsZero9J$id32X@Y e߯@Z ~[?IsNormalizedIsZero10J$id33X0Y@Z]?IsNormalizedIsZero11J$id34X0Y@Z"?IsNormalizedIsZero12J$id35XY@Z&?IsNormalizedIsZero13J$id36XY@Z T7W?IsNormalizedIsZero14J$id37XLY߰@Z `Y?IsNormalizedIsZero15J$id38XLY߰@Z@{%?IsNormalizedIsZero16J$id39X)YS@Z%&?IsNormalizedIsZero17J$id40X)YS@ZR?IsNormalizedIsZero18J$id41XYR@Z@ U?IsNormalizedIsZero19J$id42XYR@Z Z'?IsNormalizedIsZero20J$id43X YI{@ZP$?IsNormalizedIsZero21J$id44X YH{@Z"M?IsNormalizedIsZero22J$id45XY'U@ZP?IsNormalizedIsZero23J$id46XY'U@Z}r$?IsNormalizedIsZero24J$id47XY{@Z8"?IsNormalizedIsZero25J$id48XY{@Z` +E?IsNormalizedIsZero26J$id49XPY k@Z+eI?IsNormalizedIsZero27J$id50XPYk@Za/$?IsNormalizedIsZero28J$id51X WYQ@Z ?IsNormalizedIsZero29J$id52X WYP@Z@m9?IsNormalizedIsZero30J$id53X@3Y1@Z@?IsNormalizedIsZero31J$id54X@3Y1@ZMb ?IsNormalizedIsZero32J$id55X'YpH@Z?IsNormalizedIsZero33J$id56X9Y 7s@Z !?IsNormalizedIsZero34J$id57X'YpH@ZL0?IsNormalizedIsZero35J$id58XY`@Z@IsNormalizedIsZero36J$id59XY@@Zz1d?IsNormalizedIsZero37J$id60XYٶ@Z c?IsNormalizedIsZero38J$id61XY`ٶ@Z౟IsNormalizedIsZero39J$id62XHYK?@ZuIsNormalizedIsZero40J$id63XHYI?@Z`qa?IsNormalizedIsZero41J$id64XY@Z`?IsNormalizedIsZero42J$id65XY@Z@`IsNormalizedIsZero43J$id66XYe@ZeIsNormalizedIsZero44J$id67XY@e@Z_?IsNormalizedIsZero45J$id68X`85Y@Z]?IsNormalizedIsZero46J$id69X`85Y@ZloIsNormalizedIsZero47J$id70X@Y@4@Z]ۣIsNormalizedIsZero48J$id71X@Y4@Z@}M?IsNormalizedIsZero49J$id72XHY@Z`\I?IsNormalizedIsZero50J$id73XHY`@Z`&IsNormalizedIsZero51J$id74X Y@ُ@ZbIsNormalizedIsZero52J$id75X@Y ؏@ZCE?IsNormalizedIsZero53J$id76X@_YU@Z "@?IsNormalizedIsZero54J$id77X@_YU@Z G:IsNormalizedIsZero55J$id78X wAY@~(@Z ǿIsNormalizedIsZero56J$id79XwAY|(@Z`L9?IsNormalizedIsZero57J$id80XY @Z0?IsNormalizedIsZero58J$id81XY`@ZͿIsNormalizedIsZero59J$id82X,h@Y%@Z+IsNormalizedIsZero60J$id83X,h@Y@gX@Z`IsNormalizedIsZero61J$id84XC@Y9Y@Z IsNormalizedIsZero62J$id85XC@Y`B@Z@IsNormalizedIsZero63J$id86X @Y% @Z~IsNormalizedIsZero64J$id87X @YW@ZIsNormalizedIsZero65J$id88X@YW@Z5IsNormalizedIsZero66J$id89X@YR @ZY5IsNormalizedIsZero67J$id90X`Ǟ@Y@@ZIsNormalizedIsZero68J$id91X`Ǟ@YUV@ZlIsNormalizedIsZero69J$id92X`@Y@V@Z`IsNormalizedIsZero70J$id93X`@Y @Z@IsNormalizedIsZero71J$id94X @Y@ZpIsNormalizedIsZero72J$id95X @Y U@ZBIsNormalizedIsZero73J$id96X-@YV@Z%IsNormalizedIsZero74J$id97X-@Y`W@Z$IsNormalizedIsZero75J$id98X@Y*@Z8IsNormalizedIsZero76J$id99X@YUT@Z9IsNormalizedIsZero77K$id100X nK@Y!U@Z@HIsNormalizedIsZero78K$id101X nK@Y@#@ZGIsNormalizedIsZero79K$id102X @Y\<@ZIsNormalizedIsZero80K$id103X @Y(S@Z IsNormalizedIsZero81K$id104X@YS@Z_)IsNormalizedIsZero82K$id105X@Y 1@ZT(IsNormalizedIsZero83K$id106XB-@Y!Q@Z,IsNormalizedIsZero84K$id107XB-@Y@mR@Z.IsNormalizedIsZero85K$id108X@YR@ZoIsNormalizedIsZero86K$id109X@YG@Z`VIsNormalizedIsZero87K$id110X @Y}\@Z4IsNormalizedIsZero88K$id111X @Y@MQ@ZsIsNormalizedIsZero89K$id112X`K@YR@ZT@IsNormalizedIsZero90K$id113X`K@Y /[@ZF>IsNormalizedIsZero91K$id114XJ@Y@^@Z@IsNormalizedIsZero92K$id115XK@Y}@Z` IsNormalizedIsZero93K$id116X<@YP@ZIsNormalizedIsZero94K$id117X<@Y@]@Z"IsNormalizedIsZero95K$id118X>@Y'=@Z`IsNormalizedIsZero96K$id119X @Yڦ@Z`IsNormalizedIsZero97K$id120X9@YsУ@ZIsNormalizedIsZero98K$id121X@Y@"`@ZIsNormalizedIsZero99K$id122X Y@ĩ@ZIsNormalizedIsZero100K$id123X@!Y@]@ZbµIsNormalizedIsZero101K$id124X8O@Y@Z ?IsNormalizedIsZero102K$id125XdZݿY`>J@ZIsNormalizedIsZero103K$id126XLY`Y@Z+IsNormalizedIsZero104K$id127XnHYʨ@Z`y-IsNormalizedIsZero105K$id128XY`=k@Z IsNormalizedIsZero106K$id129XvY ?@Z@5IsNormalizedIsZero107K$id130XfYߵ@Z_IsNormalizedIsZero108K$id131X@gYF@Z`IsNormalizedIsZero109K$id132X YW@ZlkIsNormalizedIsZero110K$id133XY$@Z`liIsNormalizedIsZero111K$id134X`P Y!@Z@IsNormalizedIsZero112K$id135XbY7@ZIsNormalizedIsZero113K$id136XLY @Z1VIsNormalizedIsZero114K$id137X@NY +@ZTIsNormalizedIsZero115K$id138X Y@Z_ѹIsNormalizedIsZero116K$id139XY N@ZIsNormalizedIsZero117K$id140XY@ZIsNormalizedIsZero118K$id141XYۘ@Z`ҹIsNormalizedIsZero119K$id142X+Y@@ZFIsNormalizedIsZero120K$id143XY @ZͳIsNormalizedIsZero121K$id144X Y@珺@Z@IsNormalizedIsZero122K$id145XȻY @ZNIIsNormalizedIsZero123K$id146X*OYg @Z!IsNormalizedIsZero124K$id147X=Yе@ZnXIsNormalizedIsZero125K$id148X@Y@#-@ZZIsNormalizedIsZero126K$id149XOY`@Z+$IsNormalizedIsZero127K$id150X@Q3Y@@ZTIsNormalizedIsZero128K$id151XY.$@Z@!IsNormalizedIsZero129K$id152X Y!H@ZVIsNormalizedIsZero130K$id153X3YѶ@Z됰IsNormalizedIsZero131K$id154X|Yȱ@Z IsNormalizedIsZero132K$id155XY=#@Z0IsNormalizedIsZero133K$id156XYڱ@Z@.2IsNormalizedIsZero134K$id157X0Y@@Z IsNormalizedIsZero135K$id158X`ZY@Z IsNormalizedIsZero136K$id159XbY`@Z¼IsNormalizedIsZero137K$id160XfY@ZÓIsNormalizedIsZero138K$id161X@Y`@Z@ IsNormalizedIsZero139K$id162XY`wJ@Z IsNormalizedIsZero140K$id163X`hY@Z IsNormalizedIsZero141K$id164XbY`@Z¼IsNormalizedIsZero142K$id165X`ZY@Z IsNormalizedIsZero143K$id166X@Y*Ф@Z.~IsNormalizedIsZero144K$id167XnY4@Z@WyIsNormalizedIsZero145K$id168XqY@Z@IsNormalizedIsZero146K$id169X .YĻ@Z4{IsNormalizedIsZero147K$id170XeY^@Z`9xIsNormalizedIsZero148K$id171X`tYl@ZAAIsNormalizedIsZero149K$id172X`wY@Z@ԆIsNormalizedIsZero150K$id173X`Y@i@Z CuIsNormalizedIsZero151K$id174X[Ys@ZjrIsNormalizedIsZero152K$id175X`eyYr@ZfIsNormalizedIsZero153K$id176X@{Yl@Z@IsNormalizedIsZero154K$id177XY @ZnIsNormalizedIsZero155K$id178X !Yv@ZWiIsNormalizedIsZero156K$id179X@|Yf@ZyIsNormalizedIsZero157K$id180X}Y`c@Zj>sIsNormalizedIsZero158K$id181XhY@Lp@Z@cIsNormalizedIsZero159K$id182X@ Yi@ZjQZIsNormalizedIsZero160K$id183X~Yi`@Z@iIsNormalizedIsZero161K$id184XY_@Z`YIsNormalizedIsZero162K$id185X Y{h@Z7PJIsNormalizedIsZero163K$id186XY=#@Z0IsNormalizedIsZero164K$id187X@4Yp9@ZyIsNormalizedIsZero165K$id188XY@c@ZbrIsNormalizedIsZero166K$id189X|Yd,@Z@àIsNormalizedIsZero167K$id190XYP@Z@QIsNormalizedIsZero168K$id191X@Y@n{@Z k֖IsNormalizedIsZero169K$id192X,Y y]@Zs:IsNormalizedIsZero170K$id193XY<6@Z &IsNormalizedIsZero171K$id194XZYᵨ@Z IsNormalizedIsZero172K$id195X`Yۦ@ZMIsNormalizedIsZero173K$id196XoY\Z@ZPIsNormalizedIsZero174K$id197XY5@ZטIsNormalizedIsZero175K$id198X݃YW4@Z>IsNormalizedIsZero176K$id199XJYX@ZqIsNormalizedIsZero177K$id200X`%YV@Z]KIsNormalizedIsZero178K$id201XY (3@ZQƉIsNormalizedIsZero179K$id202X@Y(3@Z TIsNormalizedIsZero180K$id203X$Y@V@Z|IsNormalizedIsZero181K$id204XགྷY(3@Z`VyIsNormalizedIsZero182K$id205XY )3@ZaiIsNormalizedIsZero183K$id206X@#YV@Z`KcIsNormalizedIsZero184K$id207X#Y V@ZhKsIsNormalizedIsZero185K$id208X|Yȱ@Z IsNormalizedIsZero186K$id209XY.$@Z@!IsNormalizedIsZero187K$id210X+Y,ұ@Z@*IsNormalizedIsZero188K$id211XY4@ZIsNormalizedIsZero189K$id212XYf@Z KΤIsNormalizedIsZero190K$id213XoY *@Z@3#IsNormalizedIsZero191K$id214X Y`2@ZIsNormalizedIsZero192K$id215X@Y`3@ZIsNormalizedIsZero193K$id216XDY@Z`신IsNormalizedIsZero194K$id217X@Yd@Z :IsNormalizedIsZero195K$id218X nY@?@ZIsNormalizedIsZero196K$id219X@Y`؏@Z௾IsNormalizedIsZero197K$id220X Y@ZeIsNormalizedIsZero198K$id221X#Y @Z^xIsNormalizedIsZero199K$id222X Y@@ZTIsNormalizedIsZero200K$id223XqY`@ZCIsNormalizedIsZero201K$id224XWYt@Z@ IsNormalizedIsZero202K$id225XY@ZIҒIsNormalizedIsZero203K$id226XY@Z@n;IsNormalizedIsZero204K$id227XWYt@Z@0IsNormalizedIsZero205K$id228XY@ZI҂IsNormalizedIsZero206K$id229XY@Z@IrIsNormalizedIsZero207K$id230XWYt@Z pIsNormalizedIsZero208K$id231XWYt@Z IsNormalizedIsZero209K$id232X@Q3Y@@ZTIsNormalizedIsZero210K$id233X=Yе@ZnXIsNormalizedIsZero211K$id234XY@R@ZRưIsNormalizedIsZero212K$id235X2Y#@Z`bKIsNormalizedIsZero213K$id236X1Y@@Z`xIsNormalizedIsZero214K$id237X`ÿYղ@Z@lhIsNormalizedIsZero215K$id238XY @ZYIsNormalizedIsZero216K$id239X~1Y辰@Z#IsNormalizedIsZero217K$id240X.1Y `@Z+IsNormalizedIsZero218K$id241X >Y?@ZJIsNormalizedIsZero219K$id242X@Y 옰@ZV2IsNormalizedIsZero220K$id243X0Yޮ@Z@IsNormalizedIsZero221K$id244X0Y@ZEIsNormalizedIsZero222K$id245X@Y@ZIsNormalizedIsZero223K$id246XɾY@Z IsNormalizedIsZero224K$id247X0Y @ZIsNormalizedIsZero225K$id248X0Y@ZIsNormalizedIsZero226K$id249X@Y e߯@Z3IsNormalizedIsZero227K$id250X@Y e߯@ZIsNormalizedIsZero228K$id251X0Y@Z"IsNormalizedIsZero229K$id252X@Y e߯@Z 4IsNormalizedIsZero230K$id253X@Y e߯@Z3wIsNormalizedIsZero231K$id254X0Y@ZuIsNormalizedIsZero232K$id255X0Y@ZIsNormalizedIsZero233K$id256X*OYg @Z!IsNormalizedIsZero234K$id257XY @ZͳIsNormalizedIsZero235K$id258XY @ZȳIsNormalizedIsZero236K$id259X`qNY~@ZfIsNormalizedIsZero237K$id260XMY @Z^IsNormalizedIsZero238K$id261XKY t@ZݱIsNormalizedIsZero239K$id262XY`$@ZiIsNormalizedIsZero240K$id263XMY`V@ZIsNormalizedIsZero241K$id264X@NMY@Z`RIsNormalizedIsZero242K$id265XY[@Z@#IsNormalizedIsZero243K$id266XZY{@ZIsNormalizedIsZero244K$id267X)MY`±@Z@MIsNormalizedIsZero245K$id268XMY`@Z@BIsNormalizedIsZero246K$id269XY@Z[IsNormalizedIsZero247K$id270XިY@ZIsNormalizedIsZero248K$id271XLY@Z>IsNormalizedIsZero249K$id272XLY߰@ZvHIsNormalizedIsZero250K$id273XY@Z2IsNormalizedIsZero251K$id274XY@Z=&IsNormalizedIsZero252K$id275XLY߰@Z@YIsNormalizedIsZero253K$id276XਨY@Z2IsNormalizedIsZero254K$id277XਨY@Z`2|IsNormalizedIsZero255K$id278XLY߰@ZvHzIsNormalizedIsZero256K$id279XLY߰@Z@wHIsNormalizedIsZero257K$id280X+Y@@ZFIsNormalizedIsZero258K$id281XY N@ZIsNormalizedIsZero259K$id282XY@Z/dIsNormalizedIsZero260K$id283X(Yp@Z*IsNormalizedIsZero261K$id284X &YQе@Z`$IsNormalizedIsZero262K$id285XFY@Z@<IsNormalizedIsZero263K$id286XY g@Z -5IsNormalizedIsZero264K$id287XY@@Z@O'IsNormalizedIsZero265K$id288XY@Z@~IsNormalizedIsZero266K$id289XY@Z-IsNormalizedIsZero267K$id290XY@6@ZDIsNormalizedIsZero268K$id291XaY4@ZIsNormalizedIsZero269K$id292X`YT@Z ȦIsNormalizedIsZero270K$id293X Y!V@Z .IsNormalizedIsZero271K$id294XZY@T@Z6IsNormalizedIsZero272K$id295XYjS@Z IsNormalizedIsZero273K$id296XYR@Z@IsNormalizedIsZero274K$id297X)YS@Z`IsNormalizedIsZero275K$id298X)YS@ZIsNormalizedIsZero276K$id299XYR@Z!IsNormalizedIsZero277K$id300X)YS@ZIsNormalizedIsZero278K$id301X)YS@Z IsNormalizedIsZero279K$id302XYR@Z~IsNormalizedIsZero280K$id303XYR@Z@IsNormalizedIsZero281K$id304X`P Y!@Z@IsNormalizedIsZero282K$id305X Y'@Z@=IsNormalizedIsZero283K$id306X@Y @ZIsNormalizedIsZero284K$id307X Y@Z_ѹIsNormalizedIsZero285K$id308X Ya-@Z UIsNormalizedIsZero286K$id309X Y@5@Z&IsNormalizedIsZero287K$id310XRY* @Z CIsNormalizedIsZero288K$id311XfY`M@Z &jIsNormalizedIsZero289K$id312X Y<@Z IsNormalizedIsZero290K$id313X Y &]@Z0IsNormalizedIsZero291K$id314X YA7@Z@IsNormalizedIsZero292K$id315X@?Y@ZIsNormalizedIsZero293K$id316XY|W@Z4IsNormalizedIsZero294K$id317X@ Y}@Zq,IsNormalizedIsZero295K$id318X Y@d|@ZIsNormalizedIsZero296K$id319XYQV@Z`@IsNormalizedIsZero297K$id320XY'U@Z@IsNormalizedIsZero298K$id321X YI{@ZTIsNormalizedIsZero299K$id322X YI{@ZIsNormalizedIsZero300K$id323XY'U@ZdIsNormalizedIsZero301K$id324X Y I{@ZTIsNormalizedIsZero302K$id325X Y I{@ZTIsNormalizedIsZero303K$id326XY'U@Z@IsNormalizedIsZero304K$id327XY 'U@Z`IsNormalizedIsZero305K$id328XQPYv]@Z fIsNormalizedIsZero306K$id329XrOYD@ZݸIsNormalizedIsZero307K$id330XY@ @ZIsNormalizedIsZero308K$id331XY\3@Z@rIsNormalizedIsZero309K$id332XSPYb@Z@IsNormalizedIsZero310K$id333X@RPY@`@Z@B'IsNormalizedIsZero311K$id334X!Y`X@Z)LIsNormalizedIsZero312K$id335XyY(~@Z%IsNormalizedIsZero313K$id336X`PY`@ZŪIsNormalizedIsZero314K$id337X@jPY @ZJIsNormalizedIsZero315K$id338XY>@ZIsNormalizedIsZero316K$id339X :Y@Z]IsNormalizedIsZero317K$id340XPYk@Z`EIsNormalizedIsZero318K$id341XPYv@Zy@IsNormalizedIsZero319K$id342X{Y}@ZOIsNormalizedIsZero320K$id343XY{@Z`mIsNormalizedIsZero321K$id344XY{@Z wIsNormalizedIsZero322K$id345XPYk@Z@蘚IsNormalizedIsZero323K$id346XY{@ZmIsNormalizedIsZero324K$id347XY{@Z`mIsNormalizedIsZero325K$id348XPYk@ZEIsNormalizedIsZero326K$id349XPYk@ZEIsNormalizedIsZero327K$id350XYC @Z~~IsNormalizedIsZero328K$id351XIY α@ZIsNormalizedIsZero329K$id352XPYn@ZIsNormalizedIsZero330K$id353XUTY/k@ZPIsNormalizedIsZero331K$id354XLY{3@Z`cIsNormalizedIsZero332K$id355X`Y @ZqIsNormalizedIsZero333K$id356X UY @ZSıIsNormalizedIsZero334K$id357XUY@~@ZIsNormalizedIsZero335K$id358XqY b@Z IsNormalizedIsZero336K$id359XYu@Z@*IsNormalizedIsZero337K$id360XVY@ZৗIsNormalizedIsZero338K$id361X@&WY@ZIsNormalizedIsZero339K$id362X@3Y1@Z`9IsNormalizedIsZero340K$id363X`YI@ZQ_IsNormalizedIsZero341K$id364XWY`@Z`IsNormalizedIsZero342K$id365X WYQ@Z :IsNormalizedIsZero343K$id366X WYQ@Z7lIsNormalizedIsZero344K$id367X@3Y1@Z`VIsNormalizedIsZero345K$id368X WYQ@Z:IsNormalizedIsZero346K$id369X WYQ@Z:IsNormalizedIsZero347K$id370X@3Y1@Z9IsNormalizedIsZero348K$id371X@3Y1@Z 9IsNormalizedIsZero349K$id372X yYæ@Z`"IsNormalizedIsZero350K$id373XY`u@Z+IsNormalizedIsZero351K$id374XYt\@ZIsNormalizedIsZero352K$id375X g*Y @@Z@IsNormalizedIsZero353K$id376X"YWʣ@Z@^IsNormalizedIsZero354K$id377X-!YG@ZIsNormalizedIsZero355K$id378XF-YY@ZS8IsNormalizedIsZero356K$id379X&0Y"~@Z;ԬIsNormalizedIsZero357K$id380X%Y@=M@Z`7IsNormalizedIsZero358K$id381X@L$Y` @Z@%IsNormalizedIsZero359K$id382X3Y@Z.IsNormalizedIsZero360K$id383X5Y`}@Z@IsNormalizedIsZero361K$id384X'YpH@ZIsNormalizedIsZero362K$id385X&YJ@ZڢIsNormalizedIsZero363K$id386X@7Yx@Z@)IsNormalizedIsZero364K$id387X9Y7s@Z|qIsNormalizedIsZero365K$id388X'YpH@Z`IsNormalizedIsZero366K$id389X'YpH@Z IsNormalizedIsZero367K$id390X9Y 7s@ZUIsNormalizedIsZero368K$id391X9Y@7s@Z|qIsNormalizedIsZero369K$id392X9Y@7s@Z|q|IsNormalizedIsZero370K$id393X'YpH@Z@~IsNormalizedIsZero371K$id394X/%Y SI@Z@ IsNormalizedIsZero372K$id395XYt7@ZϲIsNormalizedIsZero373K$id396X P@Y`[;@Z >IsNormalizedIsZero374K$id397Xa@Y@g@ZbbIsNormalizedIsZero375K$id398X@5*Yg@ZcJIsNormalizedIsZero376K$id399X22(Ytؚ@Z IsNormalizedIsZero377K$id400X@Y`ɧ@ZເIsNormalizedIsZero378K$id401X@Y`+S@Z<IsNormalizedIsZero379K$id402X@$0Y@~a@Z@^IsNormalizedIsZero380K$id403Xh-Y@ZԧIsNormalizedIsZero381K$id404X@@Y%@ZIsNormalizedIsZero382K$id405X@Y@ZIsNormalizedIsZero383K$id406X1Y U@Z;IsNormalizedIsZero384K$id407X1 1Y[@ZIsNormalizedIsZero385K$id408X@K@Y@و@Z M>IsNormalizedIsZero386K$id409X@Y{@Z%ЙIsNormalizedIsZero387K$id410X@Y{@Z \IsNormalizedIsZero388K$id411X1Y U@Z,(IsNormalizedIsZero389K$id412X@Y{@Z%ЉIsNormalizedIsZero390K$id413X@Y{@Z%yIsNormalizedIsZero391K$id414X1Y U@Z;zIsNormalizedIsZero392K$id415X1Y U@Z;IsNormalizedIsZero393K$id416XJ@Y@^@Z@IsNormalizedIsZero394K$id417X J@Y@]@Z IsNormalizedIsZero395K$id418X @Y@ZzIsNormalizedIsZero396K$id419X@Y@"`@ZIsNormalizedIsZero397K$id420XI@Yr@Z*IsNormalizedIsZero398K$id421XzI@Y#@ZIsNormalizedIsZero399K$id422X@Y@;@ZWOIsNormalizedIsZero400K$id423XO @Y@{@Z`oIsNormalizedIsZero401K$id424X@jI@Y@ӆ@ZmIsNormalizedIsZero402K$id425XUI@YAr@Z F2IsNormalizedIsZero403K$id426Xq@Yl~@ZIsNormalizedIsZero404K$id427X@*@Y }@Z/IsNormalizedIsZero405K$id428XAI@Y`uSS@ZIsNormalizedIsZero406K$id429XEI@YR@ZtIsNormalizedIsZero407K$id430X`W@Y@Np@Z%*IsNormalizedIsZero408K$id431X@@Y@p@ZʢIsNormalizedIsZero409K$id432X JI@YoR@ZIsNormalizedIsZero410K$id433XJI@YoR@Z`IsNormalizedIsZero411K$id434X@Y@Øp@Z IsNormalizedIsZero412K$id435X@Y@Øp@Z@IsNormalizedIsZero413K$id436XJI@YoR@ZIsNormalizedIsZero414K$id437XJI@YoR@ZxIsNormalizedIsZero415K$id438X@Y@Øp@Z`xIsNormalizedIsZero416K$id439X@Y@Øp@Z`IsNormalizedIsZero417K$id440X<@Y@]@Z"IsNormalizedIsZero418K$id441X @Y}\@Z4IsNormalizedIsZero419K$id442X @Y@ZIsNormalizedIsZero420K$id443X<@Y᳒@ZӱIsNormalizedIsZero421K$id444X<@Y@Z@TIsNormalizedIsZero422K$id445X @Y? @Z>;IsNormalizedIsZero423K$id446X @Y^F@ZpIsNormalizedIsZero424K$id447X<@Y R@Z ۬IsNormalizedIsZero425K$id448X<@YL u@ZIsNormalizedIsZero426K$id449X @Y@u@ZdIsNormalizedIsZero427K$id450X @Y.[@ZzIsNormalizedIsZero428K$id451X<@Y\[@ZgIsNormalizedIsZero429K$id452X<@Y z\Z #IsNormalizedIsZero430K$id453X @Y\Z@IsNormalizedIsZero431K$id454X @Y@S]ZIsNormalizedIsZero432K$id455X<@Y]ZIsNormalizedIsZero433K$id456X<@Y ]Z7IsNormalizedIsZero434K$id457X @Y]Z@P+IsNormalizedIsZero435K$id458X @Y]Z@|`IsNormalizedIsZero436K$id459X<@Y ]Z@IsNormalizedIsZero437K$id460X @Y]Z@P+IsNormalizedIsZero438K$id461X @Y]Z@P+{IsNormalizedIsZero439K$id462X<@Y ]Z7yIsNormalizedIsZero440K$id463X<@Y ]Z7IsNormalizedIsZero441K$id464X`K@Y /[@ZF>IsNormalizedIsZero442K$id465XB-@Y!Q@Z,IsNormalizedIsZero443K$id466XB-@Y@Z@GIsNormalizedIsZero444K$id467X`K@Y;@ZWIsNormalizedIsZero445K$id468X`K@Y@Z(qIsNormalizedIsZero446K$id469XB-@Y@@ZߴIsNormalizedIsZero447K$id470XB-@Y (@ZʲIsNormalizedIsZero448K$id471X`K@Y@:@ZIsNormalizedIsZero449K$id472X`K@Yt@ZՇIsNormalizedIsZero450K$id473XB-@Y 6t@Z`SIsNormalizedIsZero451K$id474XB-@Y"[@Z0IsNormalizedIsZero452K$id475X`K@Yr[@Z`ȩIsNormalizedIsZero453K$id476X`K@Y@\Z@ IsNormalizedIsZero454K$id477XB-@Y\ZIsNormalizedIsZero455K$id478XB-@Y`;]ZIsNormalizedIsZero456K$id479X`K@Y,]Z`LIsNormalizedIsZero457K$id480X`K@Y ]ZIsNormalizedIsZero458K$id481XB-@Y ]ZIsNormalizedIsZero459K$id482XB-@Y ]ZOȘIsNormalizedIsZero460K$id483X`K@Y ]Z וIsNormalizedIsZero461K$id484X`K@Y ]ZIsNormalizedIsZero462K$id485XB-@Y ]ZIsNormalizedIsZero463K$id486XB-@Y ]ZIsNormalizedIsZero464K$id487X`K@Y ]Z}IsNormalizedIsZero465K$id488X@YG@Z`VIsNormalizedIsZero466K$id489X @Y\<@ZIsNormalizedIsZero467K$id490X @Y'@ZvIsNormalizedIsZero468K$id491X@Y@ZִIsNormalizedIsZero469K$id492X@Yԉ@Z`WNIsNormalizedIsZero470K$id493X @Y@É@Z@IsNormalizedIsZero471K$id494X @Y @Zj IsNormalizedIsZero472K$id495X@Y @ZIsNormalizedIsZero473K$id496X@Yt@ZIsNormalizedIsZero474K$id497X @Yt@ZaIsNormalizedIsZero475K$id498X @YdZ@ZȯIsNormalizedIsZero476K$id499X@Y%Z@Z.LIsNormalizedIsZero477K$id500X@Y` ]ZBIsNormalizedIsZero478K$id501X @Y#]ZIsNormalizedIsZero479K$id502X @Y@JU]Z›IsNormalizedIsZero480K$id503X@Y@I]Z z/IsNormalizedIsZero481K$id504X@Y ]Z{IsNormalizedIsZero482K$id505X @Y ]Z:IsNormalizedIsZero483K$id506X @Y ]Z@`IsNormalizedIsZero484K$id507X@Y ]Z`IsNormalizedIsZero485K$id508X@Y ]Z{IsNormalizedIsZero486K$id509X @Y ]Z k(IsNormalizedIsZero487K$id510X @Y ]Z k(IsNormalizedIsZero488K$id511X@Y ]Z{IsNormalizedIsZero489K$id512X@Y 1@ZT(IsNormalizedIsZero490K$id513X@Y*@Z8IsNormalizedIsZero491K$id514X@Y@Z@fjIsNormalizedIsZero492K$id515X@Y@@Z@tIsNormalizedIsZero493K$id516X@Y@Z)!IsNormalizedIsZero494K$id517X@Y @ZIsNormalizedIsZero495K$id518X@Y2@ZIsNormalizedIsZero496K$id519X@Y @Z KIsNormalizedIsZero497K$id520X@Y g|t@Z@mIsNormalizedIsZero498K$id521X@YVkt@Z.IsNormalizedIsZero499K$id522X@YI2Z@Z@IsNormalizedIsZero500K$id523X@Y[Z@ZcIsNormalizedIsZero501K$id524X@YY:]ZX IsNormalizedIsZero502K$id525X@YH]ZIsNormalizedIsZero503K$id526X@Yg]ZIsNormalizedIsZero504K$id527X@Y`]Z IsNormalizedIsZero505K$id528X@Y ]ZdIsNormalizedIsZero506K$id529X@Y TZIsNormalizedIsZero507K$id530X@Y TZ IsNormalizedIsZero508K$id531X@Y ]Z`qIsNormalizedIsZero509K$id532X@Y ]Z$՝IsNormalizedIsZero510K$id533X@Y TZgIsNormalizedIsZero511K$id534X@Y TZgIsNormalizedIsZero512K$id535X@Y ]Z$ՍIsNormalizedIsZero513K$id536X nK@Y@#@ZGIsNormalizedIsZero514K$id537X @Y@ZpIsNormalizedIsZero515K$id538X @Y Ds@Z Y]IsNormalizedIsZero516K$id539X nK@Yx@Z@X8IsNormalizedIsZero517K$id540X nK@Y[@Z(IsNormalizedIsZero518K$id541X @YՒ@Z@BIsNormalizedIsZero519K$id542X @Y݁@ZIsNormalizedIsZero520K$id543X nK@Y@Z $IsNormalizedIsZero521K$id544X nK@YDZt@Z@ IsNormalizedIsZero522K$id545X @Y`Pt@Z@iIsNormalizedIsZero523K$id546X @YHY@Z@'IsNormalizedIsZero524K$id547X nK@YZ@Z5IsNormalizedIsZero525K$id548X nK@Y2W]Z`X*IsNormalizedIsZero526K$id549X @Y`]Z@˜IsNormalizedIsZero527K$id550X @Ys]ZIsNormalizedIsZero528K$id551X nK@Y TZIsNormalizedIsZero529K$id552X nK@Y TZIsNormalizedIsZero530K$id553X @Y TZU^IsNormalizedIsZero531K$id554X @Y TZܚIsNormalizedIsZero532K$id555X nK@Y TZIsNormalizedIsZero533K$id556X nK@Y TZIsNormalizedIsZero534K$id557X @Y TZyIsNormalizedIsZero535K$id558X @YTZyIsNormalizedIsZero536K$id559X nK@Y TZIsNormalizedIsZero537K$id560X-@Y`W@Z$IsNormalizedIsZero538K$id561X`Ǟ@Y@@ZIsNormalizedIsZero539K$id562X`Ǟ@Y j@Z@IsNormalizedIsZero540K$id563X-@Y@m@ZZIsNormalizedIsZero541K$id564X-@Y@N@ZIsNormalizedIsZero542K$id565X`Ǟ@Y@Z@0IsNormalizedIsZero543K$id566X`Ǟ@YӁ@ZEIsNormalizedIsZero544K$id567X-@Y kׁ@ZfIIsNormalizedIsZero545K$id568X-@YGt@Z@IsNormalizedIsZero546K$id569X`Ǟ@YoAt@ZWZIsNormalizedIsZero547K$id570X`Ǟ@YY@ZmIsNormalizedIsZero548K$id571X-@YY@ZRIsNormalizedIsZero549K$id572X-@Yi]Z ,IsNormalizedIsZero550K$id573X`Ǟ@Ym]Z XIsNormalizedIsZero551K$id574X`Ǟ@Yz]Z@IsNormalizedIsZero552K$id575X-@Yx]ZIsNormalizedIsZero553K$id576X-@Y ]Z8IsNormalizedIsZero554K$id577X`Ǟ@Y TZ8IsNormalizedIsZero555K$id578X`Ǟ@Y TZ ¹IsNormalizedIsZero556K$id579X-@Y TZ`ӗIsNormalizedIsZero557K$id580X`Ǟ@Y TZ IsNormalizedIsZero558K$id581X`Ǟ@Y TZ`.IsNormalizedIsZero559K$id582X-@Y TZ`.IsNormalizedIsZero560K$id583X-@Y TZ IsNormalizedIsZero561K$id584X`@Y @Z@IsNormalizedIsZero562K$id585X @Y% @Z~IsNormalizedIsZero563K$id586X @Yze@Z@l IsNormalizedIsZero564K$id587X`@Y!g@ZSIsNormalizedIsZero565K$id588X`@Y@ZAIsNormalizedIsZero566K$id589X @Y@@ZZ1IsNormalizedIsZero567K$id590X @Ý@Z_IsNormalizedIsZero568K$id591X`@Y<Ё@ZAIsNormalizedIsZero569K$id592X`@Y;t@Z IsNormalizedIsZero570K$id593X @Y@7t@ZIsNormalizedIsZero571K$id594X @Y@_Y@Z#eIsNormalizedIsZero572K$id595X`@Y'Y@Z@]IsNormalizedIsZero573K$id596X`@Yr]Z@IsNormalizedIsZero574K$id597X @Yu]ZIsNormalizedIsZero575K$id598X @Y`~]ZIsNormalizedIsZero576K$id599X`@Y|]ZIsNormalizedIsZero577K$id600X @Y TZ8IsNormalizedIsZero578K$id601X @Y TZ۲IsNormalizedIsZero579K$id602X`@Y TZ۲IsNormalizedIsZero580K$id603X`@Y TZ8IsNormalizedIsZero581K$id604X @Y TZ IsNormalizedIsZero582K$id605X @Y TZ`.IsNormalizedIsZero583K$id606X`@Y TZ`.IsNormalizedIsZero584K$id607X`@Y TZ IsNormalizedIsZero585K$id608X@YR @ZY5IsNormalizedIsZero586K$id609X,h@Y%@Z+IsNormalizedIsZero587K$id610X,h@Yl@ZEIsNormalizedIsZero588K$id611X@Yc@Z+IsNormalizedIsZero589K$id612X@Y|@Z!IsNormalizedIsZero590K$id613X,h@Y@Z IsNormalizedIsZero591K$id614X,h@YLD@ZPIsNormalizedIsZero592K$id615X@Yʁ@Z4IsNormalizedIsZero593K$id616X@Yi2t@ZIsNormalizedIsZero594K$id617X,h@Y-u@ZIsNormalizedIsZero595K$id618X,h@Yy]@Z IsNormalizedIsZero596K$id619X@YY@Z IsNormalizedIsZero597K$id620X,h@Y`OYZmIsNormalizedIsZero598K$id621X,h@YAYZIsNormalizedIsZero599K$id622X@Y]Z.GIsNormalizedIsZero600K$id623X@Y`wx]Z aIsNormalizedIsZero601K$id624X,h@Y TZ8IsNormalizedIsZero602K$id625X,h@Y TZ۲IsNormalizedIsZero603K$id626X@Y TZ۲IsNormalizedIsZero604K$id627X@Y TZ8IsNormalizedIsZero605K$id628X,h@Y TZ IsNormalizedIsZero606K$id629X,h@Y TZ`.IsNormalizedIsZero607K$id630X@Y TZ`.IsNormalizedIsZero608K$id631X@Y TZ IsNormalizedIsZero609K$id632X@Y G@Z@IsNormalizedIsZero610K$id633XpY[@Z]ْIsNormalizedIsZero611K$id634XwY`@ZIsNormalizedIsZero612K$id635X@YE!@Z0WIsNormalizedIsZero613K$id636X@LY@Z *IsNormalizedIsZero614K$id637XzY @@Z1-IsNormalizedIsZero615K$id638X 7}Y@ZIsNormalizedIsZero616K$id639X`Y޴@Z#IsNormalizedIsZero617K$id640X`Yn@Z #IsNormalizedIsZero618K$id641X@Y@Z`CWIsNormalizedIsZero619K$id642X@Y[2@ZȃIsNormalizedIsZero620K$id643X`Y@@Z@EnIsNormalizedIsZero621K$id644XY@gM@ZIsNormalizedIsZero622K$id645XY:@Z~bIsNormalizedIsZero623K$id646XTYrh@ZEzIsNormalizedIsZero624K$id647X@iY{@ZqsIsNormalizedIsZero625K$id648XY@Z~IsNormalizedIsZero626K$id649XYhv@ZVIsNormalizedIsZero627K$id650X~YŽ@Z=jIsNormalizedIsZero628K$id651XY@ZZIsNormalizedIsZero629K$id652X@YҶ@ZUdIsNormalizedIsZero630K$id653XY˶@ZStIsNormalizedIsZero631K$id654X@Y׶@ZâIsNormalizedIsZero632K$id655X@qY@Z2IsNormalizedIsZero633K$id656X@Y<@Z1IsNormalizedIsZero634K$id657X 8Y2@Z@s7IsNormalizedIsZero635K$id658X=Y@ZMIsNormalizedIsZero636K$id659XňYЊ@Z`gIsNormalizedIsZero637K$id660XYe@Z<IsNormalizedIsZero638K$id661X CY`/@Z (ɡIsNormalizedIsZero639K$id662XMY@Z,TIsNormalizedIsZero640K$id663XYD@ZৱIsNormalizedIsZero641K$id664X Y@@Z&IsNormalizedIsZero642K$id665XXY@U@ZIsNormalizedIsZero643K$id666XiY|@Z@RIsNormalizedIsZero644K$id667X#Y ^@ZHːIsNormalizedIsZero645K$id668X4Y@ZߊIsNormalizedIsZero646K$id669X {Y@ZIsNormalizedIsZero647K$id670X@<Y@Z`q$IsNormalizedIsZero648K$id671XY`<@Z@IsNormalizedIsZero649K$id672XDY @ZzIsNormalizedIsZero650K$id673XFY0@ZjIsNormalizedIsZero651K$id674XY@@Z5pIsNormalizedIsZero652K$id675XYnv@Z֧IsNormalizedIsZero653K$id676X 4Y@Z ]GIsNormalizedIsZero654K$id677XmY@ZuIsNormalizedIsZero655K$id678X`Y@Z@ЩIsNormalizedIsZero656K$id679X4Y`3@Z`iIsNormalizedIsZero657K$id680X5Y%ý@Z2UIsNormalizedIsZero658K$id681X@YTl@Z*IsNormalizedIsZero659K$id682X Y$@Z@네IsNormalizedIsZero660K$id683X@5Y@uR@Z@IsNormalizedIsZero661K$id684X5Y7@Z !IsNormalizedIsZero662K$id685XY0Ľ@Z 襡IsNormalizedIsZero663K$id686XY ;Ǿ@Z ʍIsNormalizedIsZero664K$id687X$5Y@ZIsNormalizedIsZero665K$id688X&5Y3@ZIsNormalizedIsZero666K$id689X ȦY@rZ@Z|IsNormalizedIsZero667K$id690X@ҦY@@ZckIsNormalizedIsZero668K$id691X`)5Y@Wl@Z *"IsNormalizedIsZero669K$id692X@+5Yӡ@Z۝IsNormalizedIsZero670K$id693XئY @Z "IsNormalizedIsZero671K$id694XަYCI@Z@xmIsNormalizedIsZero672K$id695X-5YO@Z3IsNormalizedIsZero673K$id696XY)W@ZmsIsNormalizedIsZero674K$id697X25Y@Z!3vIsNormalizedIsZero675K$id698XbPY@ZIsNormalizedIsZero676K$id699XYH@Z@TIsNormalizedIsZero677K$id700X`Y@J@ZLIsNormalizedIsZero678K$id701X |PY@ڿ@ZIsNormalizedIsZero679K$id702X@PY@Z IsNormalizedIsZero680K$id703X Yǿ@Z M/IsNormalizedIsZero681K$id704XY@ZĩIsNormalizedIsZero682K$id705XPY`@ZIIsNormalizedIsZero683K$id706XPY@@Z Z6IsNormalizedIsZero684K$id707X Y[@Z ,IsNormalizedIsZero685K$id708X`Y@A@Z9IsNormalizedIsZero686K$id709XPY r @Z#IsNormalizedIsZero687K$id710X@PY@Z@ƠIsNormalizedIsZero688K$id711XY@M@ZОIsNormalizedIsZero689K$id712XY@@Z!{IsNormalizedIsZero690K$id713XPY @Z@ԚIsNormalizedIsZero691K$id714XPY @ZIsNormalizedIsZero692K$id715XY 5@ZP]IsNormalizedIsZero693K$id716XYe@Z~IsNormalizedIsZero694K$id717X zPYz5@ZʊIsNormalizedIsZero695K$id718XY`/@Z~xIsNormalizedIsZero696K$id719X@tPYH@Z}zIsNormalizedIsZero697K$id720XUY@J@ZIsNormalizedIsZero698K$id721XY=@ZaIsNormalizedIsZero699K$id722XY 9@ZL IsNormalizedIsZero700K$id723XEY @Z@/IsNormalizedIsZero701K$id724X@*Yc@Z*IsNormalizedIsZero702K$id725XY@@ZaIsNormalizedIsZero703K$id726XYE@Z@HIsNormalizedIsZero704K$id727X Yw@Zk$IsNormalizedIsZero705K$id728X Y#@ZIsNormalizedIsZero706K$id729XY YQ@Z IsNormalizedIsZero707K$id730X@oYl@Z`)IsNormalizedIsZero708K$id731XŻY`g@ZIsNormalizedIsZero709K$id732X@Y ^7@Z&IsNormalizedIsZero710K$id733XbY`\@Z`IsNormalizedIsZero711K$id734XVY@ZIsNormalizedIsZero712K$id735X`YT@Z ܝIsNormalizedIsZero713K$id736XY 3@ZIsNormalizedIsZero714K$id737XIY@ZIsNormalizedIsZero715K$id738X;Y@Z@ IsNormalizedIsZero716K$id739XY`@Z3IsNormalizedIsZero717K$id740X0Y"@Z@a|IsNormalizedIsZero718K$id741XxYg@Z`E~IsNormalizedIsZero719K$id742XY@Z3IsNormalizedIsZero720K$id743X Y@@Z:IsNormalizedIsZero721K$id744XY@Z ضIsNormalizedIsZero722K$id745XcY`L@Z IsNormalizedIsZero723K$id746XY @ZIsNormalizedIsZero724K$id747XHY@Z vܳIsNormalizedIsZero725K$id748X`9Y@ZBIsNormalizedIsZero726K$id749XY@ZIsNormalizedIsZero727K$id750X@YV@ZIsNormalizedIsZero728K$id751X Y@O@ZIsNormalizedIsZero729K$id752XY.j@Z@\IsNormalizedIsZero730K$id753X Y@Z_IsNormalizedIsZero731K$id754XQY@Z@.,IsNormalizedIsZero732K$id755X`YJ@ZYvIsNormalizedIsZero733K$id756X@YTw@ZNIsNormalizedIsZero734K$id757XuY!@Z =IsNormalizedIsZero735K$id758X,Yl@Z2'IsNormalizedIsZero736K$id759X@?Y-M@ZǿIsNormalizedIsZero737K$id760XfY`0 @ZAXIsNormalizedIsZero738K$id761XWY ?6@Zf5IsNormalizedIsZero739K$id762XTY@F@Z`5IsNormalizedIsZero740K$id763X0Y@Z'IsNormalizedIsZero741K$id764XIY/P@Z |IsNormalizedIsZero742K$id765XJY@ZIsNormalizedIsZero743K$id766XYa@Z@nIsNormalizedIsZero744K$id767X`Y@ڳ@Z@ GIsNormalizedIsZero745K$id768X@8IY`2@Z`3IsNormalizedIsZero746K$id769XsIY]A@Z@=IsNormalizedIsZero747K$id770XY`@Z IsNormalizedIsZero748K$id771XYB@ZұIsNormalizedIsZero749K$id772XIY`,@Z]IsNormalizedIsZero750K$id773X`IY`@ZazIsNormalizedIsZero751K$id774X@YG@Z`IsNormalizedIsZero752K$id775XZY @Zp[IsNormalizedIsZero753K$id776XHY`3@Z`IsNormalizedIsZero754K$id777XHY@Z!uIsNormalizedIsZero755K$id778X<Y`J@ZIsNormalizedIsZero756K$id779X@Y@Z@ IsNormalizedIsZero757K$id780XY @ZWIsNormalizedIsZero758K$id781X`HYpl@ZIsNormalizedIsZero759K$id782X@ Y@ZwIsNormalizedIsZero760K$id783X@Y%$@ZIsNormalizedIsZero761K$id784XHY ^@Z`'IsNormalizedIsZero762K$id785XHY@ZIsNormalizedIsZero763K$id786XhY @ZbIsNormalizedIsZero764K$id787XY d@ZIsNormalizedIsZero765K$id788XY@ZIsNormalizedIsZero766K$id789XY8@ZlmIsNormalizedIsZero767K$id790XY @Z IsNormalizedIsZero768K$id791XGY@Z eIsNormalizedIsZero769K$id792XYp@ZIsNormalizedIsZero770K$id793X Y @Z@IsNormalizedIsZero771K$id794XY@Z0?IsNormalizedIsZero772K$id795XYۓ@Z@+IsNormalizedIsZero773K$id796XpYI@Z^ݬIsNormalizedIsZero774K$id797XY9@Z,IsNormalizedIsZero775K$id798XY@;@Z`٩IsNormalizedIsZero776K$id799XY@@Z@IsNormalizedIsZero777K$id800XaY[Q@ZܛIsNormalizedIsZero778K$id801XNY |@Z`dIsNormalizedIsZero779K$id802XY@@Z7IsNormalizedIsZero780K$id803XYx-@Z@ՙIsNormalizedIsZero781K$id804X`rY@ZIsNormalizedIsZero782K$id805X uY ;@Z`U{IsNormalizedIsZero783K$id806XY@f@Z@E;IsNormalizedIsZero784K$id807X@Y@Z{@Z ;IsNormalizedIsZero785K$id808XgY@V?@ZXIsNormalizedIsZero786K$id809XoY(@Z~IsNormalizedIsZero787K$id810X CY@Z!/IsNormalizedIsZero788K$id811X BY@@ZIsNormalizedIsZero789K$id812XYpV@ZoIsNormalizedIsZero790K$id813X@sY@ZIsNormalizedIsZero791K$id814X AYDF@Z سIsNormalizedIsZero792K$id815XUAY@ZޱIsNormalizedIsZero793K$id816XY@@Z0IsNormalizedIsZero794K$id817X Y@@ZIsNormalizedIsZero795K$id818XAY@0@Z` ɯIsNormalizedIsZero796K$id819X@Y@Z@RЫIsNormalizedIsZero797K$id820XY@ҽ@ZEêIsNormalizedIsZero798K$id821X IY {@ZIsNormalizedIsZero799K$id822X`@Y@ZקIsNormalizedIsZero800K$id823X@Y'@Z@DܣIsNormalizedIsZero801K$id824X Y`@ZIsNormalizedIsZero802K$id825X@Y)@ZIsNormalizedIsZero803K$id826XAY`ȍ@Z@IsNormalizedIsZero804K$id827X(AY@Z`җIsNormalizedIsZero805K$id828XY@,@ZIsNormalizedIsZero806K$id829X+YUg@ZIsNormalizedIsZero807K$id830XJAY@Z ƏIsNormalizedIsZero808K$id831X`AY1@Z _IsNormalizedIsZero809K$id832XY @Z ~IsNormalizedIsZero810K$id833X KY@Z`0IsNormalizedIsZero811K$id834X`VYH{@Z "ĵIsNormalizedIsZero812K$id835XY@ZIsNormalizedIsZero813K$id836X1@Y@ZܲIsNormalizedIsZero814K$id837X :,@YA@Z`mIsNormalizedIsZero815K$id838XY`^@Z"IsNormalizedIsZero816K$id839XY@ @Z@VPIsNormalizedIsZero817K$id840X44@Y ^@Zq߮IsNormalizedIsZero818K$id841X93@Yedz@Z`>"IsNormalizedIsZero819K$id842X Y(@Z`IsNormalizedIsZero820K$id843XlY @ZlIsNormalizedIsZero821K$id844X 3@Y`@Z(IsNormalizedIsZero822K$id845Xx4@Yb@Z@ezIsNormalizedIsZero823K$id846X@ Y@z@ZZҥIsNormalizedIsZero824K$id847X/Y@n@ZO1IsNormalizedIsZero825K$id848XK1@Y@@ZEIsNormalizedIsZero826K$id849X2@Y˹@Z챤IsNormalizedIsZero827K$id850X@VY@c@Z IsNormalizedIsZero828K$id851X5Y @ZPݕIsNormalizedIsZero829K$id852X0@Yդ@ZДIsNormalizedIsZero830K$id853X`|0@Y`@ZIsNormalizedIsZero831K$id854XYo@Z.4IsNormalizedIsZero832K$id855X@Y@@Z G4}IsNormalizedIsZero833K$id856X`a0@Y @Z{IsNormalizedIsZero834K$id857X50@Y@&Q@Z+؋IsNormalizedIsZero835K$id858X`%@Y x@ZIsNormalizedIsZero836K$id859Xu*@Y`B@ZLIsNormalizedIsZero837K$id860Xo@Y~ɬ@ZSIsNormalizedIsZero838K$id861X@Y p@Z䧳IsNormalizedIsZero839K$id862X/@Y<,@Z@xIsNormalizedIsZero840K$id863X.@Y̳@Z+IsNormalizedIsZero841K$id864X@Y:@Z愬IsNormalizedIsZero842K$id865X`@Y@Z@IsNormalizedIsZero843K$id866X .@Y@}m@Z@WsIsNormalizedIsZero844K$id867X-@Y8@Z@2IsNormalizedIsZero845K$id868X%@Yൕ@ZNIsNormalizedIsZero846K$id869X J@Y@Z@IlIsNormalizedIsZero847K$id870X,@Y@Z@IsNormalizedIsZero848K$id871X%,@Y@Z@0IsNormalizedIsZero849K$id872XK@Yj@ZlIsNormalizedIsZero850K$id873X@YF@Z1IsNormalizedIsZero851K$id874Xj+@Y@C@Z`BIsNormalizedIsZero852K$id875X@+@Y ̅@Z+IsNormalizedIsZero853K$id876XU@Yf@Z`Q IsNormalizedIsZero854K$id877X @Y@@ZIsNormalizedIsZero855K$id878XK,@YU@Z)IsNormalizedIsZero856K$id879X`/-@Y=@Z}zIsNormalizedIsZero857K$id880X ?@Y ޺@Zx@yIsNormalizedIsZero858K$id881X`@Yݺ@Z'DIsNormalizedIsZero859K$id882X@oM@Yq@ZsIsNormalizedIsZero860K$id883X@ZWIsNormalizedIsZero901K$id924X @Yt@ZOIsNormalizedIsZero902K$id925X @Ya_@Z6IsNormalizedIsZero903K$id926X @Y_@Z`5{IsNormalizedIsZero904K$id927X`K@Y_@Z`z}IsNormalizedIsZero905K$id928X@Y>@ZaIsNormalizedIsZero906K$id929X@Y``@Z@PIsNormalizedIsZero907K$id930XB-@YY@ZIsNormalizedIsZero908K$id931XB-@Y6@Z@IsNormalizedIsZero909K$id932X@Yw@Z`[IsNormalizedIsZero910K$id933X@Y N˰@ZIsNormalizedIsZero911K$id934XB-@YYǰ@Z1߲IsNormalizedIsZero912K$id935XB-@YOs@Z˰IsNormalizedIsZero913K$id936X@Y`CG@Z:IsNormalizedIsZero914K$id937X@Y 1߳@ZlIsNormalizedIsZero915K$id938XB-@Y`V۳@ZuIsNormalizedIsZero916K$id939XB-@Y]C@ZTIsNormalizedIsZero917K$id940X@Y@Z@'բIsNormalizedIsZero918K$id941X@Y@Z IsNormalizedIsZero919K$id942XB-@Y@ZIsNormalizedIsZero920K$id943XB-@Y@Ȝ@Z IsNormalizedIsZero921K$id944X@Y_@Z ǟIsNormalizedIsZero922K$id945X@Y$@Z %IsNormalizedIsZero923K$id946XB-@Y1@Z]>IsNormalizedIsZero924K$id947XB-@Y_@ZIsNormalizedIsZero925K$id948X@YM@Z 52IsNormalizedIsZero926K$id949X@Ym@Z áIsNormalizedIsZero927K$id950X @Y5g@Z@끽IsNormalizedIsZero928K$id951X @YGF@ZɺIsNormalizedIsZero929K$id952X@Y}@Z o.IsNormalizedIsZero930K$id953X@Y@+Ұ@Z R0IsNormalizedIsZero931K$id954X @Yΰ@ZIsNormalizedIsZero932K$id955X @YUz@Z@euIsNormalizedIsZero933K$id956X@YM@Z`.0IsNormalizedIsZero934K$id957X@Y@ZN/IsNormalizedIsZero935K$id958X @Ym@Z βIsNormalizedIsZero936K$id959X @Y@J@Z&IsNormalizedIsZero937K$id960X@Y@Z@EIsNormalizedIsZero938K$id961X@Ya@ZSIsNormalizedIsZero939K$id962X @Y&@Z IsNormalizedIsZero940K$id963X @Yş@Z@IsNormalizedIsZero941K$id964X@Y_@ZIsNormalizedIsZero942K$id965X@YT@ZIsNormalizedIsZero943K$id966X @Y@Z ڠIsNormalizedIsZero944K$id967X @Y`_@Z&MIsNormalizedIsZero945K$id968X nK@YY@Z/IsNormalizedIsZero946K$id969X nK@Y x@Z<IsNormalizedIsZero947K$id970X@Yks@ZJoIsNormalizedIsZero948K$id971X@YS@ZIsNormalizedIsZero949K$id972X nK@Y@Z(IsNormalizedIsZero950K$id973X nK@Yװ@ZO,IsNormalizedIsZero951K$id974X@Y԰@ZxĿIsNormalizedIsZero952K$id975X@Y @Z?IsNormalizedIsZero953K$id976X nK@YR@ZTGIsNormalizedIsZero954K$id977X nK@Y@@Z OLIsNormalizedIsZero955K$id978X@Y`-@ZϽIsNormalizedIsZero956K$id979X@Y@PP@Z`;IsNormalizedIsZero957K$id980X nK@Y@~@Z1IsNormalizedIsZero958K$id981X nK@Y*@Z ~<IsNormalizedIsZero959K$id982X@YF@ZIsNormalizedIsZero960K$id983X@Y;@Z`TIsNormalizedIsZero961K$id984X nK@Y_@ZIsNormalizedIsZero962K$id985X nK@Y@Z@*IsNormalizedIsZero963K$id986X@Y@ZCIsNormalizedIsZero964K$id987X@Y_@ZwIsNormalizedIsZero965K$id988X-@Y5a@ZIsNormalizedIsZero966K$id989X-@Y @Z%IsNormalizedIsZero967K$id990X @Y`|@Z@{aIsNormalizedIsZero968K$id991X @Y@_]@Z IsNormalizedIsZero969K$id992X-@Y@@ZIsNormalizedIsZero970K$id993X-@Y۰@ZOIsNormalizedIsZero971K$id994X @Y@]ٰ@Z@IsNormalizedIsZero972K$id995X @Y @ZqIsNormalizedIsZero973K$id996X-@YU@Z@XIsNormalizedIsZero974K$id997X-@Y @ZW$IsNormalizedIsZero975K$id998X @Y 1@Z?%IsNormalizedIsZero976K$id999X @Y@WT@Z`ֲIsNormalizedIsZero977L$id1000X-@Y@Z8IsNormalizedIsZero978L$id1001X-@Ym@ZwIsNormalizedIsZero979L$id1002X @Y`L@ZIsNormalizedIsZero980L$id1003X @YA@Z@yIsNormalizedIsZero981L$id1004X-@Y`@ZIsNormalizedIsZero982L$id1005X-@Y`@Z]IsNormalizedIsZero983L$id1006X @Y`@Z@ٻIsNormalizedIsZero984L$id1007X @Y`@Z৅IsNormalizedIsZero985L$id1008X`@Ye@ZCIsNormalizedIsZero986L$id1009X`@Y`Y@ZIsNormalizedIsZero987L$id1010X`Ǟ@Y`@ZIsNormalizedIsZero988L$id1011X`Ǟ@Yc@Zj6IsNormalizedIsZero989L$id1012X`@Yd@ZIsNormalizedIsZero990L$id1013X`@Y*ݰ@ZFIsNormalizedIsZero991L$id1014X`Ǟ@Y@ܰ@ZOKIsNormalizedIsZero992L$id1015X`Ǟ@Yy@Z5`IsNormalizedIsZero993L$id1016X`@YX@ZేIsNormalizedIsZero994L$id1017X`@Y@Z@MIsNormalizedIsZero995L$id1018X`Ǟ@Y@Z`uIsNormalizedIsZero996L$id1019X`Ǟ@YV@ZoIsNormalizedIsZero997L$id1020X`@YY@Z@ĹIsNormalizedIsZero998L$id1021X`Ǟ@YY@ZIsNormalizedIsZero999L$id1022X`Ǟ@YY@Z`qIsNormalizedIsZero1000L$id1023X`@YY@ZIsNormalizedIsZero1001L$id1024X`@Y`@Z@IsNormalizedIsZero1002L$id1025X`@Y`@Z`IsNormalizedIsZero1003L$id1026X`Ǟ@Y`@ZƱIsNormalizedIsZero1004L$id1027X`Ǟ@Y`@ZIsNormalizedIsZero1005L$id1028X@Y'i@Z@#IsNormalizedIsZero1006L$id1029X@Yԉ@Z,IsNormalizedIsZero1007L$id1030X @Y@Z@ IsNormalizedIsZero1008L$id1031X @Y@g@Z3IsNormalizedIsZero1009L$id1032X@Y@Z IsNormalizedIsZero1010L$id1033X@Y`ް@Z@` IsNormalizedIsZero1011L$id1034X @Yݰ@ZaIsNormalizedIsZero1012L$id1035X @Y @Z`p IsNormalizedIsZero1013L$id1036X@YkY@Z`IsNormalizedIsZero1014L$id1037X@Y @ZIsNormalizedIsZero1015L$id1038X @Yd@Z$kIsNormalizedIsZero1016L$id1039X @Y X@Z׵IsNormalizedIsZero1017L$id1040X@YY@Z`O IsNormalizedIsZero1018L$id1041X @YY@ZiIsNormalizedIsZero1019L$id1042X @YY@ZIsNormalizedIsZero1020L$id1043X@YY@ZIsNormalizedIsZero1021L$id1044X@Y`@Z@IsNormalizedIsZero1022L$id1045X @Y`@Z=IsNormalizedIsZero1023L$id1046X @Y`@ZIsNormalizedIsZero1024L$id1047X@Y`@ZNIsNormalizedIsZero1025L$id1048XC@Y4@Z IsNormalizedIsZero1026L$id1049XC@Yb@ZaIsNormalizedIsZero1027L$id1050X,h@Y5v@ZFIsNormalizedIsZero1028L$id1051X,h@Y@N@Z@\ IsNormalizedIsZero1029L$id1052XC@Y`k@Z(IsNormalizedIsZero1030L$id1053XC@Y@°@ZIsNormalizedIsZero1031L$id1054X,h@Yа@Z+IsNormalizedIsZero1032L$id1055X,h@YJz@ZIsNormalizedIsZero1033L$id1056XC@Y@_U@Z IsNormalizedIsZero1034L$id1057XC@Y@`@Z IsNormalizedIsZero1035L$id1058X,h@Y(@ZIsNormalizedIsZero1036L$id1059X,h@Y`e׵@Z IsNormalizedIsZero1037L$id1060X(@YY@ZNIsNormalizedIsZero1038L$id1061X(@YY@Z`ϹIsNormalizedIsZero1039L$id1062X)@YY@Z`йIsNormalizedIsZero1040L$id1063X)@YY@Z PIsNormalizedIsZero1041L$id1064XC@Y`@ZIsNormalizedIsZero1042L$id1065X,h@Y`@Z@8IsNormalizedIsZero1043L$id1066X,h@Y`@ZWIsNormalizedIsZero1044L$id1067XC@Y`@Z@aIsNormalizedIsZero1045L$id1068XC@Y`B@Z@IsNormalizedIsZero1046L$id1069XC@Y9Y@Z IsNormalizedIsZero1047L$id1070XC@Y @Z`IsNormalizedIsZero1048L$id1071XC@Y@@ZF`IsNormalizedIsZero1049L$id1072XC@Yf@ZIsNormalizedIsZero1050L$id1073XC@Yf@Z`BIsNormalizedIsZero1051L$id1074XC@Y@@Z@2IsNormalizedIsZero1052L$id1075XC@Y@@Z mIsNormalizedIsZero1053L$id1076XC@Y)v@ZI'IsNormalizedIsZero1054L$id1077XC@YmΣ@Z@"(IsNormalizedIsZero1055L$id1078XC@Y@ZGIsNormalizedIsZero1056L$id1079XC@Y-`@Z@IsNormalizedIsZero1057L$id1080XC@Y@ZJIsNormalizedIsZero1058L$id1081XC@Yi@Z)LIsNormalizedIsZero1059L$id1082XC@Y TZ0LIsNormalizedIsZero1060L$id1083XC@Y`i'UZyIsNormalizedIsZero1061L$id1084XC@Y2@Z8IsNormalizedIsZero1062L$id1085XC@Y]@Z+޲IsNormalizedIsZero1063L$id1086XC@Y TZ۲IsNormalizedIsZero1064L$id1087XC@Y TZ8IsNormalizedIsZero1065L$id1088XC@Y@ZIsNormalizedIsZero1066L$id1089XC@Y @Z`.IsNormalizedIsZero1067L$id1090XC@Y TZ`.IsNormalizedIsZero1068L$id1091XC@Y TZ IsNormalizedIsZero1069L$id1092X'Y>@Z`IsNormalizedIsZero1070L$id1093X@Y@Z TIsNormalizedIsZero1071L$id1094XYF@ZKYIsNormalizedIsZero1072L$id1095XYv@ZIsNormalizedIsZero1073L$id1096XtY@a@Z}IsNormalizedIsZero1074L$id1097XY ߦ@ZzIsNormalizedIsZero1075L$id1098XYu@ZzIsNormalizedIsZero1076L$id1099XY@Z}IsNormalizedIsZero1077L$id1100XYʦ@Z@ xIsNormalizedIsZero1078L$id1101X@~Y#@Z1uIsNormalizedIsZero1079L$id1102XYܨ@Z uIsNormalizedIsZero1080L$id1103XY@S@Z@wIsNormalizedIsZero1081L$id1104XUYn@Z@XrIsNormalizedIsZero1082L$id1105XY@Z@!nIsNormalizedIsZero1083L$id1106X Y1@Z @Z`IsNormalizedIsZero1130L$id1153XC@Y @ZCIsNormalizedIsZero1131L$id1154XC@Yb@ZaIsNormalizedIsZero1132L$id1155XC@Y4@Z IsNormalizedIsZero1133L$id1156XC@Y@°@ZIsNormalizedIsZero1134L$id1157XC@Y`k@Z(IsNormalizedIsZero1135L$id1158XC@Y@`@Z IsNormalizedIsZero1136L$id1159XC@Y@_U@Z IsNormalizedIsZero1137L$id1160XC@Y=Է@Z!LIsNormalizedIsZero1138L$id1161XC@Y@@Z8IsNormalizedIsZero1139L$id1162XC@Y`@ZIsNormalizedIsZero1140L$id1163XC@Y`@Z@aIsNormalizedIsZero1141L$id1164XC@Y`@Z`.IsNormalizedIsZero1142L$id1165XY`u@Z@ɠIsNormalizedIsZero1143L$id1166XYP@Z@PIsNormalizedIsZero1144L$id1167X@Y*Ф@Z.~IsNormalizedIsZero1145L$id1168X .YĻ@Z4{IsNormalizedIsZero1146L$id1169XeY^@Z`9xIsNormalizedIsZero1147L$id1170X`Y@i@Z CuIsNormalizedIsZero1148L$id1171X[Ys@ZjrIsNormalizedIsZero1149L$id1172XY @ZnIsNormalizedIsZero1150L$id1173X !Yv@ZWiIsNormalizedIsZero1151L$id1174XhY@Lp@Z@cIsNormalizedIsZero1152L$id1175X@/Y(@Z@d?IsNormalizedIsZero1153L$id1176X@YZt@ZHO?IsNormalizedIsZero1154L$id1177XrY@Z ?IsNormalizedIsZero1155L$id1178XrY`@Z2IsNormalizedIsZero1156L$id1179XY`u@Z@ɠIsNormalizedIsZero1157L$id1180XYP@Z@PIsNormalizedIsZero1158L$id1181X@NY +@ZTIsNormalizedIsZero1159L$id1182XY$@Z`liIsNormalizedIsZero1160L$id1183XfYߵ@Z_IsNormalizedIsZero1161L$id1184XvY ?@Z@5IsNormalizedIsZero1162L$id1185XLY`Y@Z+IsNormalizedIsZero1163L$id1186XdZݿY`>J@ZIsNormalizedIsZero1164L$id1187X Y@ĩ@ZIsNormalizedIsZero1165L$id1188X>@Y'=@Z`IsNormalizedIsZero1166L$id1189XC@Y`B@Z@IsNormalizedIsZero1167L$id1190XC@Y@@ZF`IsNormalizedIsZero1168L$id1191XC@Yf@ZIsNormalizedIsZero1169L$id1192XC@Y@@Z mIsNormalizedIsZero1170L$id1193XC@Y)v@ZI'IsNormalizedIsZero1171L$id1194XC@Y-`@Z@IsNormalizedIsZero1172L$id1195XC@Y`i'UZyIsNormalizedIsZero1173L$id1196XC@Y TZ0LIsNormalizedIsZero1174L$id1197XC@Y TZ8IsNormalizedIsZero1175L$id1198XC@Y TZ۲IsNormalizedIsZero1176L$id1199XC@Y TZ IsNormalizedIsZero1177L$id1200XC@Y TZ`.IsNormalizedIsZero1178L$id1201XYv@ZIsNormalizedIsZero1179L$id1202XYF@ZKYIsNormalizedIsZero1180L$id1203X@jY$(@Z%˓IsNormalizedIsZero1181L$id1204XY@Z}IsNormalizedIsZero1182L$id1205XYu@ZzIsNormalizedIsZero1183L$id1206XY@S@Z@wIsNormalizedIsZero1184L$id1207XYܨ@Z uIsNormalizedIsZero1185L$id1208X P Y@h˨@Z!GrIsNormalizedIsZero1186L$id1209X Y1@Z IsNormalizedIsZero1251L$id1274XJI@YoR@Z`\9IsNormalizedIsZero1252L$id1275X@Y@Øp@Z0IsNormalizedIsZero1253L$id1276X @Y]Z"EIsNormalizedIsZero1254L$id1277X<@Y ]Z@IsNormalizedIsZero1255L$id1278XB-@Y ]ZMIsNormalizedIsZero1256L$id1279X`K@Y ]Z`\IIsNormalizedIsZero1257L$id1280X @Y ]Z@SIsNormalizedIsZero1258L$id1281X@Y ]ZPIsNormalizedIsZero1259L$id1282X@Y TZ?WIsNormalizedIsZero1260L$id1283X@Y ]Z"UIsNormalizedIsZero1261L$id1284X @Y TZy[IsNormalizedIsZero1262L$id1285X nK@Y TZ`\YIsNormalizedIsZero1263L$id1286X`Ǟ@Y TZ`_IsNormalizedIsZero1264L$id1287X-@Y TZ]IsNormalizedIsZero1265L$id1288X @Y TZ&aIsNormalizedIsZero1266L$id1289X`@Y TZ`IsNormalizedIsZero1267L$id1290X,h@Y TZ`PdIsNormalizedIsZero1268L$id1291X@Y TZ cIsNormalizedIsZero1269L$id1292X`Y)@Z@n[?IsNormalizedIsZero1270L$id1293XnPY(\@Z+eY?IsNormalizedIsZero1271L$id1294X%Y r5@Z;W?IsNormalizedIsZero1272L$id1295X`nY@ZU?IsNormalizedIsZero1273L$id1296XQYW@ZR?IsNormalizedIsZero1274L$id1297X4Ym@ZP?IsNormalizedIsZero1275L$id1298X@Y`aҿ@Z ,?IsNormalizedIsZero1276L$id1299X1@Y@ZưIsNormalizedIsZero1277L$id1300X.@Y`c@Z !IsNormalizedIsZero1278L$id1301Xg@Y@޺@ZL0IsNormalizedIsZero1279L$id1302X@P@Y S@Z@m9IsNormalizedIsZero1280L$id1303X<@Y `@Z@IsNormalizedIsZero1281L$id1304X @Y `@Z"EIsNormalizedIsZero1282L$id1305X`K@Y`@Z`\IIsNormalizedIsZero1283L$id1306XC@Y @ZCIsNormalizedIsZero1284L$id1307XC@Y=Է@Z!LIsNormalizedIsZero1285L$id1308XC@Y@@Z8IsNormalizedIsZero1286L$id1309XC@Y`@Z`.IsNormalizedIsZero1287L$id1310XC@Y@Z@#-eIsNormalizedIsZero1288L$id1311XC@Y TZ@#-eIsNormalizedIsZero1289L$id1312XYפ@ZZIsNormalizedIsZero1290L$id1313X +Y`@ZJIsNormalizedIsZero1291L$id1314XC@Y`@Z@#-eIsNormalizedIsZero1292L$id1315XY`u@Z@ɠIsNormalizedIsZero1293L$id1316XY@Z c?IsNormalizedIsZero1294L$id1317XC@Y TZ@#-eIsNormalizedIsZero1295L$id1318XQY@ZTe?IsNormalizedIsZero1296L$id1319XuY:@Z@.]?IsNormalizedIsZero1297L$id1320XB-@Y`@ZMIsNormalizedIsZero1298L$id1321X@Y`@ZPIsNormalizedIsZero1299L$id1322X @Y`@Z@SIsNormalizedIsZero1300L$id1323X@Y`@Z"UIsNormalizedIsZero1301L$id1324X@Y`@Z?WIsNormalizedIsZero1302L$id1325X nK@Y`@Z`\YIsNormalizedIsZero1303L$id1326X @Y`@Zy[IsNormalizedIsZero1304L$id1327X`Z@YY@Z`IsNormalizedIsZero1305L$id1328X`Z@YY@Z$IsNormalizedIsZero1306L$id1329X^@YY@ZIsNormalizedIsZero1307L$id1330X^@YY@ZT_IsNormalizedIsZero1308L$id1331X-@Y`@Z]IsNormalizedIsZero1309L$id1332X`Ǟ@Y`@Z`_IsNormalizedIsZero1310L$id1333X`@Y`@Z`IsNormalizedIsZero1311L$id1334X @Y`@Z&aIsNormalizedIsZero1312L$id1335X,h@YY@ZケIsNormalizedIsZero1313L$id1336X,h@YY@Z`-IsNormalizedIsZero1314L$id1337X@Y`@Z cIsNormalizedIsZero1315L$id1338X,h@Y`@Z`PdIsNormalizedIsZero1316L$id1339X-@Ym@ZwIsNormalizedIsZero1317L$id1340X-@Y@Z8IsNormalizedIsZero1318L$id1341X3@YS{@Z8IsNormalizedIsZero1319L$id1342X-@Ym@ZwIsNormalizedIsZero1320L$id1343X3@YS{@Z8IsNormalizedIsZero1321L$id1344X3@YS{@Z^IsNormalizedIsZero1322L$id1345X3@YS{@Z^IsNormalizedIsZero1323L$id1346X3@YS{@Z ~IsNormalizedIsZero1324L$id1347X-@Ym@ZwIsNormalizedIsZero1325L$id1348X3@YS{@Z ~IsNormalizedIsZero1326L$id1349X3@YS{@Z`IsNormalizedIsZero1327L$id1350X3@YS{@Z`IsNormalizedIsZero1328L$id1351X3@YS{@ZuIsNormalizedIsZero1329L$id1352X3@YS{@Z@$IsNormalizedIsZero1330L$id1353X-@Y@Z8IsNormalizedIsZero1331L$id1354X`Ǟ@Y@@Z8IsNormalizedIsZero1332L$id1355X`Ǟ@YS{@Z8IsNormalizedIsZero1333L$id1356X`Z@YS{@Z8IsNormalizedIsZero1334L$id1357X^@YS{@Z8IsNormalizedIsZero1335L$id1358X3@YS{@Z8IsNormalizedIsZero1336L$id1359X`@Y@Z8IsNormalizedIsZero1337L$id1360X`@YS{@Z8IsNormalizedIsZero1338L$id1361X @Yg@Z8IsNormalizedIsZero1339L$id1362X @YS{@Z8IsNormalizedIsZero1340L$id1363X@Y@ʦ@Z8IsNormalizedIsZero1341L$id1364X@YS{@Z8IsNormalizedIsZero1342L$id1365X,h@Y@0@Z8IsNormalizedIsZero1343L$id1366X,h@YS{@Z8IsNormalizedIsZero1344L$id1367XC@Y@@Z8IsNormalizedIsZero1345L$id1368XC@YS{@Z8IsNormalizedIsZero1346L$id1369X)@YS{@Z8IsNormalizedIsZero1347L$id1370X(@YS{@Z8IsNormalizedIsZero1348L$id1371XC@YS{@Z4tIsNormalizedIsZero1349L$id1372XC@YS{@Z@2IsNormalizedIsZero1350L$id1373XC@YS{@ZIsNormalizedIsZero1351L$id1374XC@YS{@Z@QIsNormalizedIsZero1352L$id1375XC@YS{@Z@.ѹIsNormalizedIsZero1353L$id1376XC@YS{@Z8IsNormalizedIsZero1354L$id1377XC@Y=Է@Z!LIsNormalizedIsZero1355L$id1378X,h@Y@@ZIsNormalizedIsZero1356L$id1379X,h@YS{@ZIsNormalizedIsZero1357L$id1380XC@Y=Է@Z!LIsNormalizedIsZero1358L$id1381X,h@YS{@ZIsNormalizedIsZero1359L$id1382X(@YS{@Z`kIsNormalizedIsZero1360L$id1383XC@Y=Է@Z!LIsNormalizedIsZero1361L$id1384X(@YS{@Z`kIsNormalizedIsZero1362L$id1385X)@YS{@ZpIsNormalizedIsZero1363L$id1386XC@Y=Է@Z!LIsNormalizedIsZero1364L$id1387X)@YS{@ZpIsNormalizedIsZero1365L$id1388XC@YS{@Z4tIsNormalizedIsZero1366L$id1389X,h@Y@@ZIsNormalizedIsZero1367L$id1390X@Y@ZGIsNormalizedIsZero1368L$id1391X@YS{@Z IsNormalizedIsZero1369L$id1392X@YS{@Z IsNormalizedIsZero1370L$id1393X,h@YS{@ZIsNormalizedIsZero1371L$id1394X,h@Y@@ZIsNormalizedIsZero1372L$id1395X@Y@ZGIsNormalizedIsZero1373L$id1396X @Y@Z@IsNormalizedIsZero1374L$id1397X @YS{@Z`IsNormalizedIsZero1375L$id1398X @YS{@Z`IsNormalizedIsZero1376L$id1399X@YS{@Z IsNormalizedIsZero1377L$id1400X@Y@ZGIsNormalizedIsZero1378L$id1401X @Y@Z@IsNormalizedIsZero1379L$id1402X`@Y@Q@ZMIsNormalizedIsZero1380L$id1403X`@YS{@Z@ IsNormalizedIsZero1381L$id1404X`@YS{@Z@ IsNormalizedIsZero1382L$id1405X @YS{@Z`IsNormalizedIsZero1383L$id1406X @Y@Z@IsNormalizedIsZero1384L$id1407X`@Y@Q@ZMIsNormalizedIsZero1385L$id1408X`Ǟ@Y@Z݉IsNormalizedIsZero1386L$id1409X`Ǟ@YS{@Z`IsNormalizedIsZero1387L$id1410X`Ǟ@YS{@Z`IsNormalizedIsZero1388L$id1411X`@YS{@Z@ IsNormalizedIsZero1389L$id1412X`@Y@Q@ZMIsNormalizedIsZero1390L$id1413X`Ǟ@Y@Z݉IsNormalizedIsZero1391L$id1414X-@Ym@ZwIsNormalizedIsZero1392L$id1415X3@YS{@Z@$IsNormalizedIsZero1393L$id1416X`Ǟ@Y@Z݉IsNormalizedIsZero1394L$id1417X3@YS{@Z@$IsNormalizedIsZero1395L$id1418X^@YS{@Z`^+IsNormalizedIsZero1396L$id1419X`Ǟ@Y@Z݉IsNormalizedIsZero1397L$id1420X^@YS{@Z`^+IsNormalizedIsZero1398L$id1421X`Z@YS{@Z*5IsNormalizedIsZero1399L$id1422X`Ǟ@YS{@Z`IsNormalizedIsZero1400L$id1423X`@YY@Z̼IsNormalizedIsZero1401L$id1424X`Ǟ@YY@Z`!IsNormalizedIsZero1402L$id1425X`Ǟ@YY@ZIsNormalizedIsZero1403L$id1426X`@YY@ZIsNormalizedIsZero1404L$id1427X`Ǟ@YS{@Z8IsNormalizedIsZero1405L$id1428X`@YS{@Z8IsNormalizedIsZero1406L$id1429X`@YS{@ZIsNormalizedIsZero1407L$id1430X`Ǟ@YS{@Z`qIsNormalizedIsZero1408L$id1431X@YY@ZIsNormalizedIsZero1409L$id1432X @YY@ZaIsNormalizedIsZero1410L$id1433X @YY@Z@ mIsNormalizedIsZero1411L$id1434X@YY@ZDIsNormalizedIsZero1412L$id1435X @YS{@Z8IsNormalizedIsZero1413L$id1436X@YS{@Z8IsNormalizedIsZero1414L$id1437X@YS{@ZIsNormalizedIsZero1415L$id1438X @YS{@ZIsNormalizedIsZero1416L$id1439X(@YY@Z*IsNormalizedIsZero1417L$id1440X(@YY@ZIsNormalizedIsZero1418L$id1441X)@YY@ZIsNormalizedIsZero1419L$id1442X)@YY@Zc/IsNormalizedIsZero1420L$id1443X)@YS{@Z8IsNormalizedIsZero1421L$id1444X)@YS{@Z`йIsNormalizedIsZero1422L$id1445X(@YS{@Z`ϹIsNormalizedIsZero1423L$id1446X(@YS{@Z8IsNormalizedIsZero1424L$id1447X`Z@YS{@Z8IsNormalizedIsZero1425L$id1448X`Z@YS{@Z`IsNormalizedIsZero1426L$id1449X^@YS{@ZT_IsNormalizedIsZero1427L$id1450X^@YS{@Z8IsNormalizedIsZero1428L$id1451X^@YY@Z@: IsNormalizedIsZero1429L$id1452X^@YY@ZnIsNormalizedIsZero1430L$id1453X`Z@YY@ZIsNormalizedIsZero1431L$id1454X`Z@YY@Z_IsNormalizedIsZero1432L$id1455X,h@YS{@Z8IsNormalizedIsZero1433L$id1456X,h@YS{@ZケIsNormalizedIsZero1434L$id1457X,h@YY@Z}IsNormalizedIsZero1435L$id1458X,h@YY@Z IsNormalizedIsZero1436L$id1459X`@YS{@Z@ IsNormalizedIsZero1437L$id1460X`Ǟ@YS{@Z`IsNormalizedIsZero1438L$id1461X`Ǟ@YS{@Z`!IsNormalizedIsZero1439L$id1462X`@YS{@Z̼IsNormalizedIsZero1440L$id1463X`Ǟ@Y๎@Z tIsNormalizedIsZero1441L$id1464X`@Y๎@Z@#.IsNormalizedIsZero1442L$id1465X`@Y๎@Z`&MIsNormalizedIsZero1443L$id1466X`Ǟ@Y๎@ZMIsNormalizedIsZero1444L$id1467X@YS{@Z IsNormalizedIsZero1445L$id1468X @YS{@Z`IsNormalizedIsZero1446L$id1469X @YS{@ZaIsNormalizedIsZero1447L$id1470X@YS{@ZIsNormalizedIsZero1448L$id1471X @Y๎@ZsIsNormalizedIsZero1449L$id1472X@Y๎@ZàIsNormalizedIsZero1450L$id1473X@Y๎@ZIsNormalizedIsZero1451L$id1474X @Y๎@ZIsNormalizedIsZero1452L$id1475X(@YS{@Z`kIsNormalizedIsZero1453L$id1476X(@YS{@Z*IsNormalizedIsZero1454L$id1477X)@YS{@Zc/IsNormalizedIsZero1455L$id1478X)@YS{@ZpIsNormalizedIsZero1456L$id1479X^@YS{@Z`^+IsNormalizedIsZero1457L$id1480X^@YS{@Z@: IsNormalizedIsZero1458L$id1481X`Z@YS{@Z_IsNormalizedIsZero1459L$id1482X`Z@YS{@Z*5IsNormalizedIsZero1460L$id1483X,h@YS{@Z}IsNormalizedIsZero1461L$id1484X,h@YS{@ZIsNormalizedIsZero1462L$id1485X,h@Y๎@Z\IsNormalizedIsZero1463L$id1486X,h@Y๎@Z`IsNormalizedIsZero1464L$id1487X3@YS{@Z ~IsNormalizedIsZero1465L$id1488X3@YS{@Z^IsNormalizedIsZero1466L$id1489X^@YS{@ZIsNormalizedIsZero1467L$id1490X3@YS{@Z8IsNormalizedIsZero1468L$id1491X3@YS{@ZuIsNormalizedIsZero1469L$id1492X3@YS{@Z`IsNormalizedIsZero1470L$id1493X^@YS{@ZnIsNormalizedIsZero1471L$id1494X3@YS{@Z@$IsNormalizedIsZero1472L$id1495X`Ǟ@Y๎@Z곹IsNormalizedIsZero1473L$id1496X`Ǟ@Y๎@Z@IsNormalizedIsZero1474L$id1497Xo@Y๎@ZܶIsNormalizedIsZero1475L$id1498Xo@Y๎@Z곹IsNormalizedIsZero1476L$id1499XC@YS{@Z@.ѹIsNormalizedIsZero1477L$id1500XC@YS{@Z@QIsNormalizedIsZero1478L$id1501X)@YS{@Z PIsNormalizedIsZero1479L$id1502XC@YS{@ZIsNormalizedIsZero1480L$id1503XC@YS{@Z@2IsNormalizedIsZero1481L$id1504X)@YS{@ZIsNormalizedIsZero1482L$id1505XC@YS{@Z8IsNormalizedIsZero1483L$id1506XC@YS{@Z4tIsNormalizedIsZero1484L$id1507X(@Y๎@Z IsNormalizedIsZero1485L$id1508X(@Y๎@Z`{IsNormalizedIsZero1486L$id1509X`Ǟ@YS{@Z`qIsNormalizedIsZero1487L$id1510X`@YS{@ZIsNormalizedIsZero1488L$id1511X`@YY@ZIsNormalizedIsZero1489L$id1512X`Ǟ@YY@Z`qIsNormalizedIsZero1490L$id1513X`@YS{@ZIsNormalizedIsZero1491L$id1514X @YS{@ZIsNormalizedIsZero1492L$id1515X @YY@ZIsNormalizedIsZero1493L$id1516X`@YY@ZIsNormalizedIsZero1494L$id1517X@YS{@ZIsNormalizedIsZero1495L$id1518X@YY@ZIsNormalizedIsZero1496L$id1519X@YS{@ZIsNormalizedIsZero1497L$id1520X,h@YS{@ZケIsNormalizedIsZero1498L$id1521X,h@YY@ZケIsNormalizedIsZero1499L$id1522X@YY@ZIsNormalizedIsZero1500L$id1523X,h@YS{@ZケIsNormalizedIsZero1501L$id1524X(@YS{@Z`ϹIsNormalizedIsZero1502L$id1525X(@YY@Z`ϹIsNormalizedIsZero1503L$id1526X,h@YY@ZケIsNormalizedIsZero1504L$id1527X(@YS{@Z`ϹIsNormalizedIsZero1505L$id1528X)@YS{@Z`йIsNormalizedIsZero1506L$id1529X)@YY@Z`йIsNormalizedIsZero1507L$id1530X(@YY@Z`ϹIsNormalizedIsZero1508L$id1531X)@YS{@Z`йIsNormalizedIsZero1509L$id1532X)@YS{@Z PIsNormalizedIsZero1510L$id1533X)@YY@Z PIsNormalizedIsZero1511L$id1534X)@YY@Z`йIsNormalizedIsZero1512L$id1535X)@YS{@ZIsNormalizedIsZero1513L$id1536X)@YY@ZIsNormalizedIsZero1514L$id1537X)@YS{@Zc/IsNormalizedIsZero1515L$id1538X)@YY@Zc/IsNormalizedIsZero1516L$id1539X)@YS{@Zc/IsNormalizedIsZero1517L$id1540X(@YS{@Z*IsNormalizedIsZero1518L$id1541X(@YY@Z*IsNormalizedIsZero1519L$id1542X(@YY@Z*IsNormalizedIsZero1520L$id1543X)@YY@Zc/IsNormalizedIsZero1521L$id1544X)@YS{@Zc/IsNormalizedIsZero1522L$id1545X(@YS{@Z*IsNormalizedIsZero1523L$id1546X,h@YS{@Z}IsNormalizedIsZero1524L$id1547X,h@YY@Z}IsNormalizedIsZero1525L$id1548X(@YY@Z*IsNormalizedIsZero1526L$id1549X,h@YS{@Z}IsNormalizedIsZero1527L$id1550X@YS{@ZIsNormalizedIsZero1528L$id1551X@YY@ZIsNormalizedIsZero1529L$id1552X,h@YY@Z}IsNormalizedIsZero1530L$id1553X@YS{@ZIsNormalizedIsZero1531L$id1554X @YS{@ZaIsNormalizedIsZero1532L$id1555X @YY@ZaIsNormalizedIsZero1533L$id1556X@YY@ZIsNormalizedIsZero1534L$id1557X`@YS{@Z̼IsNormalizedIsZero1535L$id1558X`@YY@Z̼IsNormalizedIsZero1536L$id1559X`@YS{@Z̼IsNormalizedIsZero1537L$id1560X`Ǟ@YS{@Z`!IsNormalizedIsZero1538L$id1561X`Ǟ@YY@Z`!IsNormalizedIsZero1539L$id1562X`@YY@Z̼IsNormalizedIsZero1540L$id1563X`Ǟ@YS{@Z`!IsNormalizedIsZero1541L$id1564X`Z@YS{@Z_IsNormalizedIsZero1542L$id1565X`Z@YY@Z_IsNormalizedIsZero1543L$id1566X`Ǟ@YY@Z`!IsNormalizedIsZero1544L$id1567X`Z@YS{@Z_IsNormalizedIsZero1545L$id1568X^@YS{@Z@: IsNormalizedIsZero1546L$id1569X^@YY@Z@: IsNormalizedIsZero1547L$id1570X^@YY@Z@: IsNormalizedIsZero1548L$id1571X`Z@YY@Z_IsNormalizedIsZero1549L$id1572X`Z@YS{@Z_IsNormalizedIsZero1550L$id1573X^@YS{@Z@: IsNormalizedIsZero1551L$id1574X^@YS{@ZnIsNormalizedIsZero1552L$id1575X^@YY@ZnIsNormalizedIsZero1553L$id1576X^@YY@Z@: IsNormalizedIsZero1554L$id1577X^@YS{@ZIsNormalizedIsZero1555L$id1578X^@YY@ZIsNormalizedIsZero1556L$id1579X^@YS{@ZT_IsNormalizedIsZero1557L$id1580X^@YY@ZT_IsNormalizedIsZero1558L$id1581X^@YS{@ZT_IsNormalizedIsZero1559L$id1582X`Z@YS{@Z`IsNormalizedIsZero1560L$id1583X`Z@YY@Z`IsNormalizedIsZero1561L$id1584X^@YY@ZT_IsNormalizedIsZero1562L$id1585X`Z@YS{@Z`IsNormalizedIsZero1563L$id1586X`Ǟ@YS{@Z`qIsNormalizedIsZero1564L$id1587X`Ǟ@YY@Z`qIsNormalizedIsZero1565L$id1588X`Z@YY@Z`IsNormalizedIsZero1566L$id1589X`Ǟ@YY@ZIsNormalizedIsZero1567L$id1590X`@YY@Z@ĹIsNormalizedIsZero1568L$id1591X`@Y@Z@ĹIsNormalizedIsZero1569L$id1592X`Ǟ@Y@ZIsNormalizedIsZero1570L$id1593X`@YY@Z@ĹIsNormalizedIsZero1571L$id1594X @YY@ZiIsNormalizedIsZero1572L$id1595X @Y@ZiIsNormalizedIsZero1573L$id1596X`@Y@Z@ĹIsNormalizedIsZero1574L$id1597X @YY@ZiIsNormalizedIsZero1575L$id1598X@YY@Z`O IsNormalizedIsZero1576L$id1599X@Y@Z`O IsNormalizedIsZero1577L$id1600X @Y@ZiIsNormalizedIsZero1578L$id1601X@YY@Z`O IsNormalizedIsZero1579L$id1602X,h@YY@Z`-IsNormalizedIsZero1580L$id1603X,h@Y@Z`-IsNormalizedIsZero1581L$id1604X@Y@Z`O IsNormalizedIsZero1582L$id1605X,h@YY@Z`-IsNormalizedIsZero1583L$id1606X(@YY@ZNIsNormalizedIsZero1584L$id1607X(@Y@ZNIsNormalizedIsZero1585L$id1608X,h@Y@Z`-IsNormalizedIsZero1586L$id1609X(@YY@ZNIsNormalizedIsZero1587L$id1610X(@YY@ZIsNormalizedIsZero1588L$id1611X(@Y@ZIsNormalizedIsZero1589L$id1612X(@Y@ZNIsNormalizedIsZero1590L$id1613X(@YY@ZIsNormalizedIsZero1591L$id1614X,h@YY@Z IsNormalizedIsZero1592L$id1615X,h@Y@Z IsNormalizedIsZero1593L$id1616X(@Y@ZIsNormalizedIsZero1594L$id1617X,h@YY@Z IsNormalizedIsZero1595L$id1618X@YY@ZDIsNormalizedIsZero1596L$id1619X@Y@ZDIsNormalizedIsZero1597L$id1620X,h@Y@Z IsNormalizedIsZero1598L$id1621X@YY@ZDIsNormalizedIsZero1599L$id1622X @YY@Z@ mIsNormalizedIsZero1600L$id1623X @Y@Z@ mIsNormalizedIsZero1601L$id1624X@Y@ZDIsNormalizedIsZero1602L$id1625X`@YY@ZIsNormalizedIsZero1603L$id1626X`@Y@ZIsNormalizedIsZero1604L$id1627X`@YY@ZIsNormalizedIsZero1605L$id1628X`Ǟ@YY@ZIsNormalizedIsZero1606L$id1629X`Ǟ@Y@ZIsNormalizedIsZero1607L$id1630X`@Y@ZIsNormalizedIsZero1608L$id1631X`Ǟ@YY@ZIsNormalizedIsZero1609L$id1632X`Z@YY@ZIsNormalizedIsZero1610L$id1633X`Z@Y@ZIsNormalizedIsZero1611L$id1634X`Ǟ@Y@ZIsNormalizedIsZero1612L$id1635X`Z@YY@ZIsNormalizedIsZero1613L$id1636X`Z@YY@Z$IsNormalizedIsZero1614L$id1637X`Z@Y@Z$IsNormalizedIsZero1615L$id1638X`Z@Y@ZIsNormalizedIsZero1616L$id1639X`Z@YY@Z$IsNormalizedIsZero1617L$id1640X`Ǟ@YY@ZIsNormalizedIsZero1618L$id1641X`Ǟ@Y@ZIsNormalizedIsZero1619L$id1642X`Z@Y@Z$IsNormalizedIsZero1620L$id1643X`@Y@Z@ĹIsNormalizedIsZero1621L$id1644X`Ǟ@Y@ZIsNormalizedIsZero1622L$id1645X @Y@ZiIsNormalizedIsZero1623L$id1646X`@Y@Z@ĹIsNormalizedIsZero1624L$id1647X@Y@Z`O IsNormalizedIsZero1625L$id1648X @Y@ZiIsNormalizedIsZero1626L$id1649X,h@Y@Z`-IsNormalizedIsZero1627L$id1650X@Y@Z`O IsNormalizedIsZero1628L$id1651X(@Y@ZNIsNormalizedIsZero1629L$id1652X,h@Y@Z`-IsNormalizedIsZero1630L$id1653X(@Y`څ@ZwIsNormalizedIsZero1631L$id1654X(@Y๎@Z`{IsNormalizedIsZero1632L$id1655X(@Y๎@Z IsNormalizedIsZero1633L$id1656X(@Y๎@Z@˺IsNormalizedIsZero1634L$id1657X(@Y๎@Z`IsNormalizedIsZero1635L$id1658X(@Y@ZNIsNormalizedIsZero1636L$id1659X(@Y@ZIsNormalizedIsZero1637L$id1660X,h@Y@Z IsNormalizedIsZero1638L$id1661X,h@Yׅ@Z,нIsNormalizedIsZero1639L$id1662X,h@Yׅ@Z,нIsNormalizedIsZero1640L$id1663X(@Y`څ@ZwIsNormalizedIsZero1641L$id1664X(@Y@ZIsNormalizedIsZero1642L$id1665X,h@Y@Z IsNormalizedIsZero1643L$id1666X@Y@ZDIsNormalizedIsZero1644L$id1667X@YӅ@ZXIsNormalizedIsZero1645L$id1668X@YӅ@ZXIsNormalizedIsZero1646L$id1669X,h@Yׅ@Z,нIsNormalizedIsZero1647L$id1670X,h@Y@Z IsNormalizedIsZero1648L$id1671X@Y@ZDIsNormalizedIsZero1649L$id1672X @Y@Z@ mIsNormalizedIsZero1650L$id1673X @Y Ѕ@Zh1IsNormalizedIsZero1651L$id1674X @Y Ѕ@Zh1IsNormalizedIsZero1652L$id1675X@YӅ@ZXIsNormalizedIsZero1653L$id1676X@Y@ZDIsNormalizedIsZero1654L$id1677X @Y@Z@ mIsNormalizedIsZero1655L$id1678X`@Y@ZIsNormalizedIsZero1656L$id1679X`@Y̅@Z`ycIsNormalizedIsZero1657L$id1680X`@Y̅@Z`ycIsNormalizedIsZero1658L$id1681X @Y Ѕ@Zh1IsNormalizedIsZero1659L$id1682X @Y@Z@ mIsNormalizedIsZero1660L$id1683X`@Y@ZIsNormalizedIsZero1661L$id1684X`Ǟ@Y@ZIsNormalizedIsZero1662L$id1685X`Ǟ@YɅ@ZIsNormalizedIsZero1663L$id1686X`Ǟ@YɅ@ZIsNormalizedIsZero1664L$id1687X`@Y̅@Z`ycIsNormalizedIsZero1665L$id1688X`@Y@ZIsNormalizedIsZero1666L$id1689X`Ǟ@Y@ZIsNormalizedIsZero1667L$id1690X`Z@Y@ZIsNormalizedIsZero1668L$id1691X`pn@Y (@Z` ]IsNormalizedIsZero1669L$id1692X`pn@Y (@Z` ]IsNormalizedIsZero1670L$id1693X`Ǟ@YɅ@ZIsNormalizedIsZero1671L$id1694X`Ǟ@Y@ZIsNormalizedIsZero1672L$id1695X`Z@Y@Z$IsNormalizedIsZero1673L$id1696Xon@Y @Z BIsNormalizedIsZero1674L$id1697Xo@Y๎@Z곹IsNormalizedIsZero1675L$id1698X`Z@Y@ZIsNormalizedIsZero1676L$id1699X`Z@Y@Z$IsNormalizedIsZero1677L$id1700Xo@Y๎@Z곹IsNormalizedIsZero1678L$id1701Xo@Y๎@ZܶIsNormalizedIsZero1679L$id1702Xo@Y๎@Z EIsNormalizedIsZero1680L$id1703Xo@Y๎@Z EIsNormalizedIsZero1681L$id1704Xo@Y๎@ZIIsNormalizedIsZero1682L$id1705X`pn@Y (@Z` ]IsNormalizedIsZero1683L$id1706X`Z@Y@ZIsNormalizedIsZero1684L$id1707Xo@Y๎@Z EIsNormalizedIsZero1685L$id1708X`pn@Y (@Z` ]IsNormalizedIsZero1686L$id1709X`Ǟ@Y@ZIsNormalizedIsZero1687L$id1710X`Ǟ@Y@ZIsNormalizedIsZero1688L$id1711Xon@Y @Z BIsNormalizedIsZero1689L$id1712X`Z@Y@Z$IsNormalizedIsZero1690L$id1713XUC@Y l@Ze[IsNormalizedIsZero1691L$id1714X@@Y`e@ZIsNormalizedIsZero1692L$id1715X@Y`e@ZIsNormalizedIsZero1693L$id1716X`_C@Y l@Z8IsNormalizedIsZero1694L$id1717Xز@Y@Z෷IsNormalizedIsZero1695L$id1718X@Y@Z@ȈIsNormalizedIsZero1696L$id1719X l"@Y Mm@Z غIsNormalizedIsZero1697L$id1720X["@Y Mm@Z IsNormalizedIsZero1698L$id1721X``@Y @Z`&*IsNormalizedIsZero1699L$id1722X`L@Y @ZqIsNormalizedIsZero1700L$id1723Xo@Y๎@ZIIsNormalizedIsZero1701L$id1724Xo@Y๎@Z EIsNormalizedIsZero1702L$id1725X@Y i@Z`uIsNormalizedIsZero1703L$id1726X@Y i@ZȻIsNormalizedIsZero1704L$id1727X@Y @ZIsNormalizedIsZero1705L$id1728X@Y @Z`߹IsNormalizedIsZero1706L$id1729X`@Y๎@ZֹIsNormalizedIsZero1707L$id1730X`@Y๎@ZIsNormalizedIsZero1708L$id1731X @Y๎@ZIsNormalizedIsZero1709L$id1732X@Y๎@Z IsNormalizedIsZero1710L$id1733X@Y๎@Zm`IsNormalizedIsZero1711L$id1734X @Y๎@Z@)IsNormalizedIsZero1712L$id1735X,h@Y๎@Z ?IsNormalizedIsZero1713L$id1736X,h@Y๎@ZIsNormalizedIsZero1714L$id1737X(@Y๎@Z`IsNormalizedIsZero1715L$id1738X(@Y๎@Z@˺IsNormalizedIsZero1716L$id1739X@Y @ZIsNormalizedIsZero1717L$id1740Xo@Y๎@Z EIsNormalizedIsZero1718L$id1741Xo@Y๎@ZܶIsNormalizedIsZero1719L$id1742Xo@Y๎@ZܶIsNormalizedIsZero1720L$id1743X@Y @Z`߹IsNormalizedIsZero1721L$id1744X@Y @ZIsNormalizedIsZero1722L$id1745Xo@Y๎@ZܶIsNormalizedIsZero1723L$id1746X`Ǟ@Y๎@Z@IsNormalizedIsZero1724L$id1747X@Y`e@ZIsNormalizedIsZero1725L$id1748X@Y`e@ZIsNormalizedIsZero1726L$id1749X@Y @Z`߹IsNormalizedIsZero1727L$id1750Xo@Y๎@ZܶIsNormalizedIsZero1728L$id1751X`Ǟ@Y๎@Z@IsNormalizedIsZero1729L$id1752X`@Y๎@ZIsNormalizedIsZero1730L$id1753X`_C@Y l@Z8IsNormalizedIsZero1731L$id1754X`_C@Y l@Z8IsNormalizedIsZero1732L$id1755X@Y`e@ZIsNormalizedIsZero1733L$id1756X`Ǟ@Y๎@Z@IsNormalizedIsZero1734L$id1757X`@Y๎@ZIsNormalizedIsZero1735L$id1758X @Y๎@Z@)IsNormalizedIsZero1736L$id1759X@Y@Z@ȈIsNormalizedIsZero1737L$id1760X@Y@Z@ȈIsNormalizedIsZero1738L$id1761X`_C@Y l@Z8IsNormalizedIsZero1739L$id1762X`@Y๎@ZIsNormalizedIsZero1740L$id1763X @Y๎@Z@)IsNormalizedIsZero1741L$id1764X@Y๎@Zm`IsNormalizedIsZero1742L$id1765X l"@Y Mm@Z غIsNormalizedIsZero1743L$id1766X l"@Y Mm@Z غIsNormalizedIsZero1744L$id1767X@Y@Z@ȈIsNormalizedIsZero1745L$id1768X @Y๎@Z@)IsNormalizedIsZero1746L$id1769X@Y๎@Zm`IsNormalizedIsZero1747L$id1770X,h@Y๎@ZIsNormalizedIsZero1748L$id1771X``@Y @Z`&*IsNormalizedIsZero1749L$id1772X``@Y @Z`&*IsNormalizedIsZero1750L$id1773X l"@Y Mm@Z غIsNormalizedIsZero1751L$id1774X@Y๎@Zm`IsNormalizedIsZero1752L$id1775X,h@Y๎@ZIsNormalizedIsZero1753L$id1776X(@Y๎@Z@˺IsNormalizedIsZero1754L$id1777X@Y i@Z`uIsNormalizedIsZero1755L$id1778X@Y i@Z`uIsNormalizedIsZero1756L$id1779X``@Y @Z`&*IsNormalizedIsZero1757L$id1780X,h@Y๎@ZIsNormalizedIsZero1758L$id1781X(@Y๎@Z@˺IsNormalizedIsZero1759L$id1782X(@Y๎@Z IsNormalizedIsZero1760L$id1783X@Y i@ZȻIsNormalizedIsZero1761L$id1784X@Y i@ZȻIsNormalizedIsZero1762L$id1785X@Y i@Z`uIsNormalizedIsZero1763L$id1786X(@Y๎@Z@˺IsNormalizedIsZero1764L$id1787X(@Y๎@Z IsNormalizedIsZero1765L$id1788X,h@Y๎@Z\IsNormalizedIsZero1766L$id1789X`L@Y @ZqIsNormalizedIsZero1767L$id1790X`L@Y @ZqIsNormalizedIsZero1768L$id1791X@Y i@ZȻIsNormalizedIsZero1769L$id1792X(@Y๎@Z IsNormalizedIsZero1770L$id1793X,h@Y๎@Z\IsNormalizedIsZero1771L$id1794X@Y๎@ZàIsNormalizedIsZero1772L$id1795X["@Y Mm@Z IsNormalizedIsZero1773L$id1796X["@Y Mm@Z IsNormalizedIsZero1774L$id1797X`L@Y @ZqIsNormalizedIsZero1775L$id1798X,h@Y๎@Z\IsNormalizedIsZero1776L$id1799X@Y๎@ZàIsNormalizedIsZero1777L$id1800X @Y๎@ZsIsNormalizedIsZero1778L$id1801Xز@Y@Z෷IsNormalizedIsZero1779L$id1802Xز@Y@Z෷IsNormalizedIsZero1780L$id1803X["@Y Mm@Z IsNormalizedIsZero1781L$id1804X@Y๎@ZàIsNormalizedIsZero1782L$id1805X @Y๎@ZsIsNormalizedIsZero1783L$id1806X`@Y๎@Z@#.IsNormalizedIsZero1784L$id1807XUC@Y l@Ze[IsNormalizedIsZero1785L$id1808XUC@Y l@Ze[IsNormalizedIsZero1786L$id1809Xز@Y@Z෷IsNormalizedIsZero1787L$id1810X @Y๎@ZsIsNormalizedIsZero1788L$id1811X`@Y๎@Z@#.IsNormalizedIsZero1789L$id1812X`Ǟ@Y๎@Z tIsNormalizedIsZero1790L$id1813X@@Y`e@ZIsNormalizedIsZero1791L$id1814X@@Y`e@ZIsNormalizedIsZero1792L$id1815XUC@Y l@Ze[IsNormalizedIsZero1793L$id1816X`@Y๎@Z@#.IsNormalizedIsZero1794L$id1817X`Ǟ@Y๎@Z tIsNormalizedIsZero1795L$id1818Xo@Y๎@Z EIsNormalizedIsZero1796L$id1819X@Y @ZIsNormalizedIsZero1797L$id1820X@Y @ZIsNormalizedIsZero1798L$id1821X@@Y`e@ZIsNormalizedIsZero1799L$id1822X`Ǟ@Y๎@Z tIsNormalizedIsZero1800L$id1823X`Ǟ@Y๎@Z곹IsNormalizedIsZero1801L$id1824X`Ǟ@Y@ZIsNormalizedIsZero1802L$id1825X`@Y@Z@ĹIsNormalizedIsZero1803L$id1826X`@Y๎@ZֹIsNormalizedIsZero1804L$id1827X`@Y๎@ZֹIsNormalizedIsZero1805L$id1828X`@Y@Z@ĹIsNormalizedIsZero1806L$id1829X @Y@ZiIsNormalizedIsZero1807L$id1830X @Y๎@ZIsNormalizedIsZero1808L$id1831X@Y@Z`O IsNormalizedIsZero1809L$id1832X@Y๎@Z IsNormalizedIsZero1810L$id1833X@Y๎@Z IsNormalizedIsZero1811L$id1834X@Y@Z`O IsNormalizedIsZero1812L$id1835X,h@Y@Z`-IsNormalizedIsZero1813L$id1836X,h@Y๎@Z ?IsNormalizedIsZero1814L$id1837X,h@Y๎@Z ?IsNormalizedIsZero1815L$id1838X,h@Y@Z`-IsNormalizedIsZero1816L$id1839X(@Y@ZNIsNormalizedIsZero1817L$id1840X(@Y๎@Z`IsNormalizedIsZero1818L$id1841X(@Y๎@Z`{IsNormalizedIsZero1819L$id1842X(@Y`څ@ZwIsNormalizedIsZero1820L$id1843X,h@Yׅ@Z,нIsNormalizedIsZero1821L$id1844X,h@Yׅ@Z,нIsNormalizedIsZero1822L$id1845X,h@Y๎@Z`IsNormalizedIsZero1823L$id1846X(@Y๎@Z`{IsNormalizedIsZero1824L$id1847X,h@Y๎@Z`IsNormalizedIsZero1825L$id1848X,h@Yׅ@Z,нIsNormalizedIsZero1826L$id1849X@YӅ@ZXIsNormalizedIsZero1827L$id1850X@YӅ@ZXIsNormalizedIsZero1828L$id1851X@Y๎@ZIsNormalizedIsZero1829L$id1852X,h@Y๎@Z`IsNormalizedIsZero1830L$id1853X@Y๎@ZIsNormalizedIsZero1831L$id1854X@YӅ@ZXIsNormalizedIsZero1832L$id1855X @Y Ѕ@Zh1IsNormalizedIsZero1833L$id1856X @Y Ѕ@Zh1IsNormalizedIsZero1834L$id1857X @Y๎@ZIsNormalizedIsZero1835L$id1858X@Y๎@ZIsNormalizedIsZero1836L$id1859X @Y๎@ZIsNormalizedIsZero1837L$id1860X @Y Ѕ@Zh1IsNormalizedIsZero1838L$id1861X`@Y̅@Z`ycIsNormalizedIsZero1839L$id1862X`@Y̅@Z`ycIsNormalizedIsZero1840L$id1863X`@Y๎@Z`&MIsNormalizedIsZero1841L$id1864X @Y๎@ZIsNormalizedIsZero1842L$id1865X`@Y๎@Z`&MIsNormalizedIsZero1843L$id1866X`@Y̅@Z`ycIsNormalizedIsZero1844L$id1867X`Ǟ@YɅ@ZIsNormalizedIsZero1845L$id1868X`Ǟ@YɅ@ZIsNormalizedIsZero1846L$id1869X`Ǟ@Y๎@ZMIsNormalizedIsZero1847L$id1870X`@Y๎@Z`&MIsNormalizedIsZero1848L$id1871X`Ǟ@Y๎@ZMIsNormalizedIsZero1849L$id1872X`Ǟ@YɅ@ZIsNormalizedIsZero1850L$id1873X`pn@Y (@Z` ]IsNormalizedIsZero1851L$id1874X`pn@Y (@Z` ]IsNormalizedIsZero1852L$id1875Xo@Y๎@ZIIsNormalizedIsZero1853L$id1876X`Ǟ@Y๎@ZMIsNormalizedIsZero1854L$id1877Xo@Y๎@Z곹IsNormalizedIsZero1855L$id1878Xon@Y @Z BIsNormalizedIsZero1856L$id1879X`Ǟ@Y@ZIsNormalizedIsZero1857L$id1880X`Ǟ@Y@ZIsNormalizedIsZero1858L$id1881X`Ǟ@Y๎@Z곹IsNormalizedIsZero1859L$id1882Xo@Y๎@Z곹IsNormalizedIsZero1860L$id1883X`? Yg@Z`Le?IsNormalizedIsZero1861L$id1884XY @Z Pe?IsNormalizedIsZero1862L$id1885XC@Y`@Z@#-eIsNormalizedIsZero1863L$id1886XQY@ZTe?IsNormalizedIsZero1864L$id1887X@Y`)3@Z"}?IsNormalizedIsZero1865L$id1888X"YV@ZO?IsNormalizedIsZero1866L$id1889XY@Z@Yn?IsNormalizedIsZero1867L$id1890XWYt@Z lp?IsNormalizedIsZero1868L$id1891X@Y e߯@Z;j?IsNormalizedIsZero1869L$id1892X0Y@Z6ol?IsNormalizedIsZero1870L$id1893XY@Ze?IsNormalizedIsZero1871L$id1894XLY߰@Z`h?IsNormalizedIsZero1872L$id1895X)YS@Z@Ka?IsNormalizedIsZero1873L$id1896XYR@Z1c?IsNormalizedIsZero1874L$id1897X YI{@ZZ?IsNormalizedIsZero1875L$id1898XY'U@Z_?IsNormalizedIsZero1876L$id1899XY{@Z`R?IsNormalizedIsZero1877L$id1900XPYk@Z?V?IsNormalizedIsZero1878L$id1901X WYQ@Zy7F?IsNormalizedIsZero1879L$id1902X@3Y1@Z M?IsNormalizedIsZero1880L$id1903X'YpH@Z`:=?IsNormalizedIsZero1881L$id1904XY`@Z?IsNormalizedIsZero1882L$id1905XY`ٶ@Zoв?IsNormalizedIsZero1883L$id1906XHYK?@Z?IsNormalizedIsZero1884L$id1907XY@Z[ʩ?IsNormalizedIsZero1885L$id1908XYe@Z?IsNormalizedIsZero1886L$id1909X`85Y@Z~?IsNormalizedIsZero1887L$id1910X@Y@4@ZKǤ?IsNormalizedIsZero1888L$id1911XHY`@Za?IsNormalizedIsZero1889L$id1912X Y@ُ@Z ?IsNormalizedIsZero1890L$id1913X@_YU@Z\?IsNormalizedIsZero1891L$id1914X wAY@~(@Z^?IsNormalizedIsZero1892L$id1915XY`@Z?IsNormalizedIsZero1893L$id1916X,h@Y%@Z@+@IsNormalizedIsZero1894L$id1917XC@Y`B@Z@IsNormalizedIsZero1895L$id1918XC@Y9Y@Z@ @IsNormalizedIsZero1896L$id1919X,h@Y@gX@Z``@IsNormalizedIsZero1897L$id1920X @Y% @Z}@IsNormalizedIsZero1898L$id1921X@YR @ZY5@IsNormalizedIsZero1899L$id1922X@YW@Z5@IsNormalizedIsZero1900L$id1923X @YW@Z@@IsNormalizedIsZero1901L$id1924X`Ǟ@Y@@Z@IsNormalizedIsZero1902L$id1925X`@Y @Z@IsNormalizedIsZero1903L$id1926X`@Y@V@Z @IsNormalizedIsZero1904L$id1927X`Ǟ@YUV@Z@l@IsNormalizedIsZero1905L$id1928X @Y@Zo@IsNormalizedIsZero1906L$id1929X-@Y`W@Z$@IsNormalizedIsZero1907L$id1930X-@YV@Z%@IsNormalizedIsZero1908L$id1931X @Y U@Z`B@IsNormalizedIsZero1909L$id1932X@Y*@Z8@IsNormalizedIsZero1910L$id1933X nK@Y@#@ZG@IsNormalizedIsZero1911L$id1934X nK@Y!U@ZH@IsNormalizedIsZero1912L$id1935X@YUT@Z9@IsNormalizedIsZero1913L$id1936X @Y\<@Z`@IsNormalizedIsZero1914L$id1937X@Y 1@ZS(@IsNormalizedIsZero1915L$id1938X@YS@Z_)@IsNormalizedIsZero1916L$id1939X @Y(S@Z @IsNormalizedIsZero1917L$id1940XB-@Y!Q@Z ,@IsNormalizedIsZero1918L$id1941X@YG@ZU@IsNormalizedIsZero1919L$id1942X@YR@Zo@IsNormalizedIsZero1920L$id1943XB-@Y@mR@Z@.@IsNormalizedIsZero1921L$id1944X @Y}\@Z4@IsNormalizedIsZero1922L$id1945X`K@Y /[@Z`F>@IsNormalizedIsZero1923L$id1946X`K@YR@ZS@@IsNormalizedIsZero1924L$id1947X @Y@MQ@Z@s@IsNormalizedIsZero1925L$id1948XJ@Y@^@Z@IsNormalizedIsZero1926L$id1949X<@Y@]@Z`"@IsNormalizedIsZero1927L$id1950X<@YP@Z@IsNormalizedIsZero1928L$id1951XK@Y}@Z @IsNormalizedIsZero1929L$id1952X>@Y'=@Z`@IsNormalizedIsZero1930L$id1953X@Y@"`@Z@IsNormalizedIsZero1931L$id1954X9@YsУ@Z@IsNormalizedIsZero1932L$id1955X @Yڦ@Z`@IsNormalizedIsZero1933L$id1956XY@ĩ@Z@IsNormalizedIsZero1934L$id1957X`RݿY`>J@Z@IsNormalizedIsZero1935L$id1958X`O@Y@Z ?@IsNormalizedIsZero1936L$id1959X!Y@]@Zbµ@IsNormalizedIsZero1937L$id1960XLY`Y@Z+@IsNormalizedIsZero1938L$id1961X`vY ?@Z5@IsNormalizedIsZero1939L$id1962XY`=k@Z`@IsNormalizedIsZero1940L$id1963XnHYʨ@Zy-@IsNormalizedIsZero1941L$id1964XfYߵ@Z@_@IsNormalizedIsZero1942L$id1965XY$@Zli@IsNormalizedIsZero1943L$id1966X YW@Zlk@IsNormalizedIsZero1944L$id1967X@gYF@Z`@IsNormalizedIsZero1945L$id1968X`P Y!@Z@IsNormalizedIsZero1946L$id1969X@NY +@ZT@IsNormalizedIsZero1947L$id1970XLY @Z1V@IsNormalizedIsZero1948L$id1971XbY7@Z @IsNormalizedIsZero1949L$id1972X Y@Z_ѹ@IsNormalizedIsZero1950L$id1973XYۘ@Zҹ@IsNormalizedIsZero1951L$id1974XY@Z@IsNormalizedIsZero1952L$id1975XY N@Z@@IsNormalizedIsZero1953L$id1976X+Y@@Z`F@IsNormalizedIsZero1954L$id1977XȻY @ZOI@IsNormalizedIsZero1955L$id1978X Y@珺@Z@IsNormalizedIsZero1956L$id1979XY @Zγ@IsNormalizedIsZero1957L$id1980X*OYg @Z!@IsNormalizedIsZero1958L$id1981XOY`@Z,$@IsNormalizedIsZero1959L$id1982X@Y@#-@Z`Z@IsNormalizedIsZero1960L$id1983X=Yе@ZoX@IsNormalizedIsZero1961L$id1984X@Q3Y@@ZU@IsNormalizedIsZero1962L$id1985X3YѶ@Z쐰@IsNormalizedIsZero1963L$id1986X Y!H@ZX@IsNormalizedIsZero1964L$id1987XY.$@Z@#@IsNormalizedIsZero1965L$id1988X|Yȱ@Z @IsNormalizedIsZero1966L$id1989X0Y@@Z @IsNormalizedIsZero1967L$id1990XYڱ@Z02@IsNormalizedIsZero1968L$id1991XY=#@Z0@IsNormalizedIsZero1969L$id1992X`ZY@Z@%@IsNormalizedIsZero1970L$id1993X@Y`@Z@IsNormalizedIsZero1971L$id1994XfY@ZÓ@IsNormalizedIsZero1972L$id1995XbY`@ZǼ@IsNormalizedIsZero1973L$id1996XY`wJ@Z` @IsNormalizedIsZero1974L$id1997X`ZY@Z@%@IsNormalizedIsZero1975L$id1998XbY`@ZǼ@IsNormalizedIsZero1976L$id1999X`hY@Z@IsNormalizedIsZero1977L$id2000X@Y*Ф@ZC~@IsNormalizedIsZero1978L$id2001X .YĻ@Z@I{@IsNormalizedIsZero1979L$id2002XqY@Z@@IsNormalizedIsZero1980L$id2003XnY4@Z@\y@IsNormalizedIsZero1981L$id2004XeY^@ZNx@IsNormalizedIsZero1982L$id2005X`Y@i@Z@Cu@IsNormalizedIsZero1983L$id2006X`wY@Z@Ԇ@IsNormalizedIsZero1984L$id2007X`tYl@ZKA@IsNormalizedIsZero1985L$id2008X[Ys@Zjr@IsNormalizedIsZero1986L$id2009XY @Z1n@IsNormalizedIsZero1987L$id2010X@{Yl@Z@@IsNormalizedIsZero1988L$id2011X`eyYr@Zf@IsNormalizedIsZero1989L$id2012X !Yv@Zi@IsNormalizedIsZero1990L$id2013XhY@Lp@Zc@IsNormalizedIsZero1991L$id2014X}Y`c@Z~>s@IsNormalizedIsZero1992L$id2015X@|Yf@Zy@IsNormalizedIsZero1993L$id2016X@ Yi@Z@QZ@IsNormalizedIsZero1994L$id2017X Y{h@Z@PJ@IsNormalizedIsZero1995L$id2018XY_@Z Y@IsNormalizedIsZero1996L$id2019X~Yi`@Zi@IsNormalizedIsZero1997L$id2020X@4Yp9@Zy@IsNormalizedIsZero1998L$id2021XY=#@Z0@IsNormalizedIsZero1999L$id2022XY@c@Zgr@IsNormalizedIsZero2000L$id2023X@Y@n{@Zo֖@IsNormalizedIsZero2001L$id2024XYP@ZU@IsNormalizedIsZero2002L$id2025X|Yd,@Zà@IsNormalizedIsZero2003L$id2026X,Y y]@Z@x:@IsNormalizedIsZero2004L$id2027X`Yۦ@ZR@IsNormalizedIsZero2005L$id2028XZYᵨ@Z@!@IsNormalizedIsZero2006L$id2029XY<6@Z*@IsNormalizedIsZero2007L$id2030XoY\Z@ZY@IsNormalizedIsZero2008L$id2031XJYX@Z@q@IsNormalizedIsZero2009L$id2032X݃YW4@Z>@IsNormalizedIsZero2010L$id2033XY5@Zܘ@IsNormalizedIsZero2011L$id2034X`%YV@Z gK@IsNormalizedIsZero2012L$id2035X$Y@V@Z%|@IsNormalizedIsZero2013L$id2036X@Y(3@Z T@IsNormalizedIsZero2014L$id2037XY (3@ZZƉ@IsNormalizedIsZero2015L$id2038XགྷY(3@Z`hy@IsNormalizedIsZero2016L$id2039X#Y V@Z{Ks@IsNormalizedIsZero2017L$id2040X@#YV@Z`Kc@IsNormalizedIsZero2018L$id2041XY )3@Zi@IsNormalizedIsZero2019L$id2042X|Yȱ@Z @IsNormalizedIsZero2020L$id2043XY4@Z@IsNormalizedIsZero2021L$id2044X+Y,ұ@Z@,@IsNormalizedIsZero2022L$id2045XY.$@Z@#@IsNormalizedIsZero2023L$id2046XYf@Z MΤ@IsNormalizedIsZero2024L$id2047X@Y`3@Z@IsNormalizedIsZero2025L$id2048X Y`2@Z@IsNormalizedIsZero2026L$id2049XoY *@Z@5#@IsNormalizedIsZero2027L$id2050XDY@Z`@IsNormalizedIsZero2028L$id2051X@Y`؏@Z @IsNormalizedIsZero2029L$id2052X nY@?@Z@IsNormalizedIsZero2030L$id2053X@Yd@Z:@IsNormalizedIsZero2031L$id2054X Y@Z@e@IsNormalizedIsZero2032L$id2055XqY`@ZC@IsNormalizedIsZero2033L$id2056X Y@@ZX@IsNormalizedIsZero2034L$id2057X#Y @Zbx@IsNormalizedIsZero2035L$id2058XWYt@Z @IsNormalizedIsZero2036L$id2059XWYt@Z0@IsNormalizedIsZero2037L$id2060XY@Z@v;@IsNormalizedIsZero2038L$id2061XY@ZMҒ@IsNormalizedIsZero2039L$id2062XY@ZQ҂@IsNormalizedIsZero2040L$id2063XWYt@Z @IsNormalizedIsZero2041L$id2064XWYt@Z p@IsNormalizedIsZero2042L$id2065XY@ZYr@IsNormalizedIsZero2043L$id2066X@Q3Y@@ZU@IsNormalizedIsZero2044L$id2067X2Y#@Z dK@IsNormalizedIsZero2045L$id2068XY@R@Z@Sư@IsNormalizedIsZero2046L$id2069X=Yе@ZoX@IsNormalizedIsZero2047L$id2070X1Y@@Z x@IsNormalizedIsZero2048L$id2071X~1Y辰@Z@%@IsNormalizedIsZero2049L$id2072XY @Z`Y@IsNormalizedIsZero2050L$id2073X`ÿYղ@Znh@IsNormalizedIsZero2051L$id2074X.1Y `@Z@-@IsNormalizedIsZero2052L$id2075X0Yޮ@Z@IsNormalizedIsZero2053L$id2076X@Y 옰@ZX2@IsNormalizedIsZero2054L$id2077X >Y?@ZJ@IsNormalizedIsZero2055L$id2078X0Y@ZE@IsNormalizedIsZero2056L$id2079X0Y @Z@@IsNormalizedIsZero2057L$id2080XɾY@Z @IsNormalizedIsZero2058L$id2081X@Y@Z`@IsNormalizedIsZero2059L$id2082X0Y@Z@IsNormalizedIsZero2060L$id2083X0Y@Z"@IsNormalizedIsZero2061L$id2084X@Y e߯@Z`@IsNormalizedIsZero2062L$id2085X@Y e߯@Z@7@IsNormalizedIsZero2063L$id2086X@Y e߯@Z:@IsNormalizedIsZero2064L$id2087X0Y@Z@IsNormalizedIsZero2065L$id2088X0Y@Zu@IsNormalizedIsZero2066L$id2089X@Y e߯@ZAw@IsNormalizedIsZero2067L$id2090X*OYg @Z!@IsNormalizedIsZero2068L$id2091X`qNY~@Zf@IsNormalizedIsZero2069L$id2092XY @Z`ȳ@IsNormalizedIsZero2070L$id2093XY @Zγ@IsNormalizedIsZero2071L$id2094XMY @Z@_@IsNormalizedIsZero2072L$id2095XMY`V@Z@ @IsNormalizedIsZero2073L$id2096XY`$@Z@j@IsNormalizedIsZero2074L$id2097XKY t@Z@ݱ@IsNormalizedIsZero2075L$id2098X@NMY@ZS@IsNormalizedIsZero2076L$id2099X)MY`±@ZM@IsNormalizedIsZero2077L$id2100XZY{@Z@IsNormalizedIsZero2078L$id2101XY[@Z$@IsNormalizedIsZero2079L$id2102XMY`@ZC@IsNormalizedIsZero2080L$id2103XLY@Z@@@IsNormalizedIsZero2081L$id2104XިY@Z@IsNormalizedIsZero2082L$id2105XY@Z@[@IsNormalizedIsZero2083L$id2106XLY߰@ZzH@IsNormalizedIsZero2084L$id2107XLY߰@Z\@IsNormalizedIsZero2085L$id2108XY@Z@&@IsNormalizedIsZero2086L$id2109XY@Z2@IsNormalizedIsZero2087L$id2110XਨY@Z3@IsNormalizedIsZero2088L$id2111XLY߰@Z}H@IsNormalizedIsZero2089L$id2112XLY߰@ZHz@IsNormalizedIsZero2090L$id2113XਨY@Z3|@IsNormalizedIsZero2091L$id2114X+Y@@Z`F@IsNormalizedIsZero2092L$id2115X(Yp@Z@*@IsNormalizedIsZero2093L$id2116XY@Z/d@IsNormalizedIsZero2094L$id2117XY N@Z@@IsNormalizedIsZero2095L$id2118X &YQе@Z %@IsNormalizedIsZero2096L$id2119XY@@ZP'@IsNormalizedIsZero2097L$id2120XY g@Z-5@IsNormalizedIsZero2098L$id2121XFY@Z<@IsNormalizedIsZero2099L$id2122XY@Z~@IsNormalizedIsZero2100L$id2123XaY4@Z@IsNormalizedIsZero2101L$id2124XY@6@Z@D@IsNormalizedIsZero2102L$id2125XY@Z-@IsNormalizedIsZero2103L$id2126X`YT@Z`Ȧ@IsNormalizedIsZero2104L$id2127XYjS@Z`@IsNormalizedIsZero2105L$id2128XZY@T@Z8@IsNormalizedIsZero2106L$id2129X Y!V@Z .@IsNormalizedIsZero2107L$id2130XYR@Z@IsNormalizedIsZero2108L$id2131XYR@Z$@IsNormalizedIsZero2109L$id2132X)YS@Z@IsNormalizedIsZero2110L$id2133X)YS@Z@IsNormalizedIsZero2111L$id2134X)YS@Z@@IsNormalizedIsZero2112L$id2135XYR@Z@IsNormalizedIsZero2113L$id2136XYR@Z`~@IsNormalizedIsZero2114L$id2137X)YS@Z@IsNormalizedIsZero2115L$id2138X`P Y!@Z@IsNormalizedIsZero2116L$id2139X Y@Z_ѹ@IsNormalizedIsZero2117L$id2140X@Y @ZÝ@IsNormalizedIsZero2118L$id2141X Y'@Z=@IsNormalizedIsZero2119L$id2142X Ya-@ZU@IsNormalizedIsZero2120L$id2143XfY`M@Z&j@IsNormalizedIsZero2121L$id2144XRY* @Z C@IsNormalizedIsZero2122L$id2145X Y@5@Z '@IsNormalizedIsZero2123L$id2146X Y<@Z@IsNormalizedIsZero2124L$id2147X@?Y@Z@IsNormalizedIsZero2125L$id2148X YA7@Z@@IsNormalizedIsZero2126L$id2149X Y &]@Z1@IsNormalizedIsZero2127L$id2150XY|W@Z5@IsNormalizedIsZero2128L$id2151XYQV@Z`@@IsNormalizedIsZero2129L$id2152X Y@d|@Z@IsNormalizedIsZero2130L$id2153X@ Y}@Zr,@IsNormalizedIsZero2131L$id2154XY'U@Z@@IsNormalizedIsZero2132L$id2155XY'U@Zd@IsNormalizedIsZero2133L$id2156X YI{@Z@IsNormalizedIsZero2134L$id2157X YI{@ZT@IsNormalizedIsZero2135L$id2158X Y I{@ZT@IsNormalizedIsZero2136L$id2159XY 'U@Z`@IsNormalizedIsZero2137L$id2160XY'U@Z@IsNormalizedIsZero2138L$id2161X Y I{@ZT@IsNormalizedIsZero2139L$id2162XQPYv]@Zf@IsNormalizedIsZero2140L$id2163XY\3@Zr@IsNormalizedIsZero2141L$id2164XY@ @Z@IsNormalizedIsZero2142L$id2165XrOYD@Z@ݸ@IsNormalizedIsZero2143L$id2166XSPYb@Z@IsNormalizedIsZero2144L$id2167XyY(~@Z%@IsNormalizedIsZero2145L$id2168X!Y`X@Z)L@IsNormalizedIsZero2146L$id2169X@RPY@`@ZB'@IsNormalizedIsZero2147L$id2170X`PY`@Z`Ū@IsNormalizedIsZero2148L$id2171X :Y@Z^@IsNormalizedIsZero2149L$id2172XY>@Z`@IsNormalizedIsZero2150L$id2173X@jPY @ZJ@IsNormalizedIsZero2151L$id2174XPYk@Z F@IsNormalizedIsZero2152L$id2175XY{@Z n@IsNormalizedIsZero2153L$id2176X{Y}@Z@O@IsNormalizedIsZero2154L$id2177XPYv@Z@z@@IsNormalizedIsZero2155L$id2178XPYk@Z阚@IsNormalizedIsZero2156L$id2179XY{@Z`w@IsNormalizedIsZero2157L$id2180XY{@Zn@IsNormalizedIsZero2158L$id2181XPYk@Z@G@IsNormalizedIsZero2159L$id2182XPYk@ZH@IsNormalizedIsZero2160L$id2183XY{@Z p@IsNormalizedIsZero2161L$id2184XYC @Z~~@IsNormalizedIsZero2162L$id2185XUTY/k@ZP@IsNormalizedIsZero2163L$id2186XPYn@Z@IsNormalizedIsZero2164L$id2187XIY α@Z@IsNormalizedIsZero2165L$id2188XLY{3@Zc@IsNormalizedIsZero2166L$id2189XUY@~@Z@IsNormalizedIsZero2167L$id2190X UY @ZSı@IsNormalizedIsZero2168L$id2191X`Y @Z q@IsNormalizedIsZero2169L$id2192XqY b@Z`@IsNormalizedIsZero2170L$id2193X@&WY@Z @IsNormalizedIsZero2171L$id2194XVY@Z`@IsNormalizedIsZero2172L$id2195XYu@Z*@IsNormalizedIsZero2173L$id2196X@3Y1@Z9@IsNormalizedIsZero2174L$id2197X WYQ@Z:@IsNormalizedIsZero2175L$id2198XWY`@Z@IsNormalizedIsZero2176L$id2199X`YI@Z R_@IsNormalizedIsZero2177L$id2200X@3Y1@ZaV@IsNormalizedIsZero2178L$id2201X WYQ@Z7l@IsNormalizedIsZero2179L$id2202X WYQ@Z`:@IsNormalizedIsZero2180L$id2203X@3Y1@Z 9@IsNormalizedIsZero2181L$id2204X@3Y1@Z9@IsNormalizedIsZero2182L$id2205X WYQ@Z:@IsNormalizedIsZero2183L$id2206X yYæ@Z"@IsNormalizedIsZero2184L$id2207Xf*Y @@Z@@IsNormalizedIsZero2185L$id2208X`Yt\@Z@IsNormalizedIsZero2186L$id2209XY`u@Z,@IsNormalizedIsZero2187L$id2210X"YWʣ@Z^@IsNormalizedIsZero2188L$id2211X`&0Y"~@Z;Ԭ@IsNormalizedIsZero2189L$id2212XF-YY@ZS8@IsNormalizedIsZero2190L$id2213X-!YG@Z@@IsNormalizedIsZero2191L$id2214X%Y@=M@Z7@IsNormalizedIsZero2192L$id2215X5Y`}@Z@IsNormalizedIsZero2193L$id2216X`3Y@Z .@IsNormalizedIsZero2194L$id2217X@L$Y` @Z%@IsNormalizedIsZero2195L$id2218X'YpH@Z@IsNormalizedIsZero2196L$id2219X9Y7s@Z|q@IsNormalizedIsZero2197L$id2220X@7Yx@Z)@IsNormalizedIsZero2198L$id2221X&YJ@Z@ڢ@IsNormalizedIsZero2199L$id2222X'YpH@Z`@IsNormalizedIsZero2200L$id2223X9Y@7s@Z }q@IsNormalizedIsZero2201L$id2224X9Y 7s@ZU@IsNormalizedIsZero2202L$id2225X'YpH@Z@IsNormalizedIsZero2203L$id2226X'YpH@Z@~@IsNormalizedIsZero2204L$id2227X9Y@7s@Z}q|@IsNormalizedIsZero2205L$id2228X%Y SI@Z@ @IsNormalizedIsZero2206L$id2229Xa@Y@g@Zbb@IsNormalizedIsZero2207L$id2230X`P@Y`[;@Z >@IsNormalizedIsZero2208L$id2231XYt7@Zϲ@IsNormalizedIsZero2209L$id2232X@ *Yg@ZcJ@IsNormalizedIsZero2210L$id2233X@@Y`+S@Z<@IsNormalizedIsZero2211L$id2234X@Y`ɧ@Z@IsNormalizedIsZero2212L$id2235X2(Ytؚ@Z @IsNormalizedIsZero2213L$id2236X@$0Y@~a@Z@^@IsNormalizedIsZero2214L$id2237X@Y@Z@@IsNormalizedIsZero2215L$id2238X@Y%@Z`@IsNormalizedIsZero2216L$id2239Xh-Y@Zԧ@IsNormalizedIsZero2217L$id2240X1Y U@Z;@IsNormalizedIsZero2218L$id2241X@Y{@Z@%Й@IsNormalizedIsZero2219L$id2242X@K@Y@و@ZL>@IsNormalizedIsZero2220L$id2243X% 1Y[@Z@IsNormalizedIsZero2221L$id2244X 1Y U@Z,(@IsNormalizedIsZero2222L$id2245X@Y{@Z\@IsNormalizedIsZero2223L$id2246X@Y{@Z%Љ@IsNormalizedIsZero2224L$id2247X1Y U@Z;@IsNormalizedIsZero2225L$id2248X 1Y U@Z;z@IsNormalizedIsZero2226L$id2249X@Y{@Z$y@IsNormalizedIsZero2227L$id2250XJ@Y@^@Z@IsNormalizedIsZero2228L$id2251X@Y@"`@Z@IsNormalizedIsZero2229L$id2252X @Y@Zz@IsNormalizedIsZero2230L$id2253X J@Y@]@Z@IsNormalizedIsZero2231L$id2254XI@Yr@Z)@IsNormalizedIsZero2232L$id2255XO @Y@{@Z o@IsNormalizedIsZero2233L$id2256X@Y@;@Z`WO@IsNormalizedIsZero2234L$id2257XzI@Y#@Z`@IsNormalizedIsZero2235L$id2258X@jI@Y@ӆ@Z@m@IsNormalizedIsZero2236L$id2259X@*@Y }@Z/@IsNormalizedIsZero2237L$id2260Xq@Yl~@Z@IsNormalizedIsZero2238L$id2261XUI@YAr@ZE2@IsNormalizedIsZero2239L$id2262XAI@Y`uSS@Z@IsNormalizedIsZero2240L$id2263X@@Y@p@Zʢ@IsNormalizedIsZero2241L$id2264X`W@Y@Np@Z%*@IsNormalizedIsZero2242L$id2265XEI@YR@Zt@IsNormalizedIsZero2243L$id2266X JI@YoR@Z@IsNormalizedIsZero2244L$id2267X@Y@Øp@Z@IsNormalizedIsZero2245L$id2268X@Y@Øp@Z @IsNormalizedIsZero2246L$id2269XJI@YoR@Z@IsNormalizedIsZero2247L$id2270XJI@YoR@Z@IsNormalizedIsZero2248L$id2271X@Y@Øp@Z`@IsNormalizedIsZero2249L$id2272X@Y@Øp@Z` x@IsNormalizedIsZero2250L$id2273XJI@YoR@Z@x@IsNormalizedIsZero2251L$id2274X<@Y@]@Z`"@IsNormalizedIsZero2252L$id2275X<@Y᳒@Z@ӱ@IsNormalizedIsZero2253L$id2276X @Y@Z`@IsNormalizedIsZero2254L$id2277X @Y}\@Z4@IsNormalizedIsZero2255L$id2278X<@Y@ZT@IsNormalizedIsZero2256L$id2279X<@Y R@Z۬@IsNormalizedIsZero2257L$id2280X @Y^F@Zp@IsNormalizedIsZero2258L$id2281X @Y? @Z@>;@IsNormalizedIsZero2259L$id2282X<@YL u@Z@@IsNormalizedIsZero2260L$id2283X<@Y\[@Zg@IsNormalizedIsZero2261L$id2284X @Y.[@Z@y@IsNormalizedIsZero2262L$id2285X @Y@u@Zc@IsNormalizedIsZero2263L$id2286X<@Y z\Z#@IsNormalizedIsZero2264L$id2287X<@Y]Z゚@IsNormalizedIsZero2265L$id2288X @Y@S]Z@IsNormalizedIsZero2266L$id2289X @Y\Z@IsNormalizedIsZero2267L$id2290X<@Y ]Z7@IsNormalizedIsZero2268L$id2291X<@Y ]Z@@IsNormalizedIsZero2269L$id2292X @Y]Z{`@IsNormalizedIsZero2270L$id2293X @Y]ZO+@IsNormalizedIsZero2271L$id2294X @Y]ZM+@IsNormalizedIsZero2272L$id2295X<@Y ]Z7@IsNormalizedIsZero2273L$id2296X<@Y ]Z7y@IsNormalizedIsZero2274L$id2297X @Y]ZK+{@IsNormalizedIsZero2275L$id2298X`K@Y /[@Z`F>@IsNormalizedIsZero2276L$id2299X`K@Y;@Z`W@IsNormalizedIsZero2277L$id2300XB-@Y@ZF@IsNormalizedIsZero2278L$id2301XB-@Y!Q@Z ,@IsNormalizedIsZero2279L$id2302X`K@Y@Z@(q@IsNormalizedIsZero2280L$id2303X`K@Y@:@Z@@IsNormalizedIsZero2281L$id2304XB-@Y (@Z@ʲ@IsNormalizedIsZero2282L$id2305XB-@Y@@Zߴ@IsNormalizedIsZero2283L$id2306X`K@Yt@Zԇ@IsNormalizedIsZero2284L$id2307X`K@Yr[@Zȩ@IsNormalizedIsZero2285L$id2308XB-@Y"[@Z0@IsNormalizedIsZero2286L$id2309XB-@Y 6t@ZR@IsNormalizedIsZero2287L$id2310X`K@Y@\Z @IsNormalizedIsZero2288L$id2311X`K@Y,]ZL@IsNormalizedIsZero2289L$id2312XB-@Y`;]Z@IsNormalizedIsZero2290L$id2313XB-@Y\Z@IsNormalizedIsZero2291L$id2314X`K@Y ]Z`@IsNormalizedIsZero2292L$id2315X`K@Y ]Zו@IsNormalizedIsZero2293L$id2316XB-@Y ]ZNȘ@IsNormalizedIsZero2294L$id2317XB-@Y ]Z@IsNormalizedIsZero2295L$id2318X`K@Y ]Z@IsNormalizedIsZero2296L$id2319X`K@Y ]Z}@IsNormalizedIsZero2297L$id2320XB-@Y ]Z@IsNormalizedIsZero2298L$id2321XB-@Y ]Z@IsNormalizedIsZero2299L$id2322X@YG@ZU@IsNormalizedIsZero2300L$id2323X@Y@Z`ִ@IsNormalizedIsZero2301L$id2324X @Y'@Z@v@IsNormalizedIsZero2302L$id2325X @Y\<@Z`@IsNormalizedIsZero2303L$id2326X@Yԉ@ZVN@IsNormalizedIsZero2304L$id2327X@Y @Z@@IsNormalizedIsZero2305L$id2328X @Y @Zj @IsNormalizedIsZero2306L$id2329X @Y@É@Z@IsNormalizedIsZero2307L$id2330X@Yt@Z@IsNormalizedIsZero2308L$id2331X@Y%Z@Z@.L@IsNormalizedIsZero2309L$id2332X @YdZ@Z`ȯ@IsNormalizedIsZero2310L$id2333X @Yt@Z a@IsNormalizedIsZero2311L$id2334X@Y` ]ZA@IsNormalizedIsZero2312L$id2335X@Y@I]Z y/@IsNormalizedIsZero2313L$id2336X @Y@JU]Z@@IsNormalizedIsZero2314L$id2337X @Y#]Z@IsNormalizedIsZero2315L$id2338X@Y ]Z{@IsNormalizedIsZero2316L$id2339X@Y ]Z`@IsNormalizedIsZero2317L$id2340X @Y ]Z_@IsNormalizedIsZero2318L$id2341X @Y ]Z:@IsNormalizedIsZero2319L$id2342X@Y ]Z{@IsNormalizedIsZero2320L$id2343X@Y ]Z{@IsNormalizedIsZero2321L$id2344X @Y ]Z`f(@IsNormalizedIsZero2322L$id2345X @Y ]Zh(@IsNormalizedIsZero2323L$id2346X@Y 1@ZS(@IsNormalizedIsZero2324L$id2347X@Y@@Zt@IsNormalizedIsZero2325L$id2348X@Y@Zfj@IsNormalizedIsZero2326L$id2349X@Y*@Z8@IsNormalizedIsZero2327L$id2350X@Y@Z@(!@IsNormalizedIsZero2328L$id2351X@Y @Z`J@IsNormalizedIsZero2329L$id2352X@Y2@Z@IsNormalizedIsZero2330L$id2353X@Y @Z@IsNormalizedIsZero2331L$id2354X@Y g|t@Zl@IsNormalizedIsZero2332L$id2355X@Y[Z@Z@b@IsNormalizedIsZero2333L$id2356X@YI2Z@Z@IsNormalizedIsZero2334L$id2357X@YVkt@Z .@IsNormalizedIsZero2335L$id2358X@YY:]ZW @IsNormalizedIsZero2336L$id2359X@Y`]Z @IsNormalizedIsZero2337L$id2360X@Yg]Z@IsNormalizedIsZero2338L$id2361X@YH]Z@IsNormalizedIsZero2339L$id2362X@Y ]Z@c@IsNormalizedIsZero2340L$id2363X@Y ]Z q@IsNormalizedIsZero2341L$id2364X@Y TZ@IsNormalizedIsZero2342L$id2365X@Y TZ@@IsNormalizedIsZero2343L$id2366X@Y ]Z!՝@IsNormalizedIsZero2344L$id2367X@Y ]Z`Ս@IsNormalizedIsZero2345L$id2368X@Y TZg@IsNormalizedIsZero2346L$id2369X@Y TZg@IsNormalizedIsZero2347L$id2370X nK@Y@#@ZG@IsNormalizedIsZero2348L$id2371X nK@Yx@ZW8@IsNormalizedIsZero2349L$id2372X @Y Ds@ZX]@IsNormalizedIsZero2350L$id2373X @Y@Zo@IsNormalizedIsZero2351L$id2374X nK@Y[@Z(@IsNormalizedIsZero2352L$id2375X nK@Y@Z$@IsNormalizedIsZero2353L$id2376X @Y݁@Z@@IsNormalizedIsZero2354L$id2377X @YՒ@ZA@IsNormalizedIsZero2355L$id2378X nK@YDZt@Z @IsNormalizedIsZero2356L$id2379X nK@YZ@Z5@IsNormalizedIsZero2357L$id2380X @YHY@Z&@IsNormalizedIsZero2358L$id2381X @Y`Pt@Zi@IsNormalizedIsZero2359L$id2382X nK@Y2W]ZW*@IsNormalizedIsZero2360L$id2383X nK@Y TZ@@IsNormalizedIsZero2361L$id2384X @Ys]Z @IsNormalizedIsZero2362L$id2385X @Y`]Z@IsNormalizedIsZero2363L$id2386X nK@Y TZ@IsNormalizedIsZero2364L$id2387X nK@Y TZ@IsNormalizedIsZero2365L$id2388X @Y TZ ۚ@IsNormalizedIsZero2366L$id2389X @Y TZT^@IsNormalizedIsZero2367L$id2390X nK@Y TZ`@IsNormalizedIsZero2368L$id2391X nK@Y TZ@IsNormalizedIsZero2369L$id2392X @YTZ@ y@IsNormalizedIsZero2370L$id2393X @Y TZ y@IsNormalizedIsZero2371L$id2394X-@Y`W@Z$@IsNormalizedIsZero2372L$id2395X-@Y@m@ZY@IsNormalizedIsZero2373L$id2396X`Ǟ@Y j@Z@@@IsNormalizedIsZero2374L$id2397X`Ǟ@Y@@Z@IsNormalizedIsZero2375L$id2398X-@Y@N@Z @IsNormalizedIsZero2376L$id2399X-@Y kׁ@ZfI@IsNormalizedIsZero2377L$id2400X`Ǟ@YӁ@ZE@IsNormalizedIsZero2378L$id2401X`Ǟ@Y@Z0@IsNormalizedIsZero2379L$id2402X-@YGt@Z@IsNormalizedIsZero2380L$id2403X-@YY@Z R@IsNormalizedIsZero2381L$id2404X`Ǟ@YY@Zm@IsNormalizedIsZero2382L$id2405X`Ǟ@YoAt@Z@WZ@IsNormalizedIsZero2383L$id2406X-@Yi]Z +@IsNormalizedIsZero2384L$id2407X-@Yx]Z@IsNormalizedIsZero2385L$id2408X`Ǟ@Yz]Z?@IsNormalizedIsZero2386L$id2409X`Ǟ@Ym]ZW@IsNormalizedIsZero2387L$id2410X-@Y ]Z8@IsNormalizedIsZero2388L$id2411X-@Y TZ`җ@IsNormalizedIsZero2389L$id2412X`Ǟ@Y TZ @IsNormalizedIsZero2390L$id2413X`Ǟ@Y TZ8@IsNormalizedIsZero2391L$id2414X`Ǟ@Y TZ @IsNormalizedIsZero2392L$id2415X-@Y TZ @IsNormalizedIsZero2393L$id2416X-@Y TZ*@IsNormalizedIsZero2394L$id2417X`Ǟ@Y TZ`*@IsNormalizedIsZero2395L$id2418X`@Y @Z@IsNormalizedIsZero2396L$id2419X`@Y!g@ZS@IsNormalizedIsZero2397L$id2420X @Yze@Zl @IsNormalizedIsZero2398L$id2421X @Y% @Z}@IsNormalizedIsZero2399L$id2422X`@Y@Z@A@IsNormalizedIsZero2400L$id2423X`@Y<Ё@Z A@IsNormalizedIsZero2401L$id2424X @Ý@Z`_@IsNormalizedIsZero2402L$id2425X @Y@@Z@Z1@IsNormalizedIsZero2403L$id2426X`@Y;t@Z@IsNormalizedIsZero2404L$id2427X`@Y'Y@Z\@IsNormalizedIsZero2405L$id2428X @Y@_Y@Z #e@IsNormalizedIsZero2406L$id2429X @Y@7t@Z@IsNormalizedIsZero2407L$id2430X`@Yr]Z@IsNormalizedIsZero2408L$id2431X`@Y|]Z@IsNormalizedIsZero2409L$id2432X @Y`~]Z@IsNormalizedIsZero2410L$id2433X @Yu]Z@@IsNormalizedIsZero2411L$id2434X @Y TZ8@IsNormalizedIsZero2412L$id2435X`@Y TZ8@IsNormalizedIsZero2413L$id2436X`@Y TZ۲@IsNormalizedIsZero2414L$id2437X @Y TZ۲@IsNormalizedIsZero2415L$id2438X @Y TZ` @IsNormalizedIsZero2416L$id2439X`@Y TZ @IsNormalizedIsZero2417L$id2440X`@Y TZ *@IsNormalizedIsZero2418L$id2441X @Y TZ)@IsNormalizedIsZero2419L$id2442X@YR @ZY5@IsNormalizedIsZero2420L$id2443X@Yc@Z`+@IsNormalizedIsZero2421L$id2444X,h@Yl@ZE@IsNormalizedIsZero2422L$id2445X,h@Y%@Z@+@IsNormalizedIsZero2423L$id2446X@Y|@Z@!@IsNormalizedIsZero2424L$id2447X@Yʁ@Z@4@IsNormalizedIsZero2425L$id2448X,h@YLD@ZP@IsNormalizedIsZero2426L$id2449X,h@Y@Z @IsNormalizedIsZero2427L$id2450X@Yi2t@Z@@IsNormalizedIsZero2428L$id2451X@YY@Z @IsNormalizedIsZero2429L$id2452X,h@Yy]@Z`@IsNormalizedIsZero2430L$id2453X,h@Y-u@Z`@IsNormalizedIsZero2431L$id2454X,h@Y`OYZ@l@IsNormalizedIsZero2432L$id2455X@Y`wx]Z`@IsNormalizedIsZero2433L$id2456X@Y]Z`.G@IsNormalizedIsZero2434L$id2457X,h@YAYZ@IsNormalizedIsZero2435L$id2458X,h@Y TZ@8@IsNormalizedIsZero2436L$id2459X@Y TZ@8@IsNormalizedIsZero2437L$id2460X@Y TZ۲@IsNormalizedIsZero2438L$id2461X,h@Y TZ۲@IsNormalizedIsZero2439L$id2462X,h@Y TZ @IsNormalizedIsZero2440L$id2463X@Y TZ @IsNormalizedIsZero2441L$id2464X@Y TZ)@IsNormalizedIsZero2442L$id2465X,h@Y TZ`)@IsNormalizedIsZero2443L$id2466X@Y G@Z@IsNormalizedIsZero2444L$id2467X@YE!@Z`5W@IsNormalizedIsZero2445L$id2468XwY`@Z@IsNormalizedIsZero2446L$id2469XpY[@Zbْ@IsNormalizedIsZero2447L$id2470X@LY@Z.@IsNormalizedIsZero2448L$id2471X`Y޴@Z`(@IsNormalizedIsZero2449L$id2472X 7}Y@Z@IsNormalizedIsZero2450L$id2473XzY @@Z6-@IsNormalizedIsZero2451L$id2474X`Yn@Z'@IsNormalizedIsZero2452L$id2475X`Y@@ZNn@IsNormalizedIsZero2453L$id2476X@Y[2@Zȃ@IsNormalizedIsZero2454L$id2477X@Y@Z`MW@IsNormalizedIsZero2455L$id2478XY:@Zb@IsNormalizedIsZero2456L$id2479XY@gM@Z@IsNormalizedIsZero2457L$id2480XTYrh@Z@Yz@IsNormalizedIsZero2458L$id2481XYhv@Z@V@IsNormalizedIsZero2459L$id2482XY@Zɀ~@IsNormalizedIsZero2460L$id2483X@iY{@Z s@IsNormalizedIsZero2461L$id2484X~YŽ@Zfj@IsNormalizedIsZero2462L$id2485XY˶@ZTt@IsNormalizedIsZero2463L$id2486X@YҶ@Z>Ud@IsNormalizedIsZero2464L$id2487XY@Z`&Z@IsNormalizedIsZero2465L$id2488X@Y׶@ZŢ@IsNormalizedIsZero2466L$id2489X 8Y2@Z@u7@IsNormalizedIsZero2467L$id2490X@Y<@Z1@IsNormalizedIsZero2468L$id2491X@qY@Z 2@IsNormalizedIsZero2469L$id2492X=Y@ZO@IsNormalizedIsZero2470L$id2493X CY`/@Z *ɡ@IsNormalizedIsZero2471L$id2494XYe@Z<@IsNormalizedIsZero2472L$id2495XňYЊ@Zg@IsNormalizedIsZero2473L$id2496XMY@Z0T@IsNormalizedIsZero2474L$id2497XXY@U@Z @IsNormalizedIsZero2475L$id2498X Y@@Z@&@IsNormalizedIsZero2476L$id2499XYD@Z`@IsNormalizedIsZero2477L$id2500XiY|@ZV@IsNormalizedIsZero2478L$id2501X {Y@Z @IsNormalizedIsZero2479L$id2502X4Y@Z@IsNormalizedIsZero2480L$id2503X#Y ^@Z@Mː@IsNormalizedIsZero2481L$id2504XY`<@Z@IsNormalizedIsZero2482L$id2505X@<Y@Z`z$@IsNormalizedIsZero2483L$id2506XDY @Zz@IsNormalizedIsZero2484L$id2507XYnv@Z`ߧ@IsNormalizedIsZero2485L$id2508XY@@ZFp@IsNormalizedIsZero2486L$id2509XFY0@Zj@IsNormalizedIsZero2487L$id2510X 4Y@Z^G@IsNormalizedIsZero2488L$id2511X4Y`3@Z i@IsNormalizedIsZero2489L$id2512X`Y@Z@Щ@IsNormalizedIsZero2490L$id2513XmY@Zu@IsNormalizedIsZero2491L$id2514X5Y%ý@Z3U@IsNormalizedIsZero2492L$id2515X@5Y@uR@Z@@@IsNormalizedIsZero2493L$id2516X Y$@Z@턤@IsNormalizedIsZero2494L$id2517X@YTl@Z*@IsNormalizedIsZero2495L$id2518X5Y7@Z!@IsNormalizedIsZero2496L$id2519X$5Y@Z@IsNormalizedIsZero2497L$id2520XY ;Ǿ@Z ΍@IsNormalizedIsZero2498L$id2521XY0Ľ@Z ꥡ@IsNormalizedIsZero2499L$id2522X&5Y3@Z@IsNormalizedIsZero2500L$id2523X`)5Y@Wl@Z-"@IsNormalizedIsZero2501L$id2524X@ҦY@@Zgk@IsNormalizedIsZero2502L$id2525X ȦY@rZ@Z|@IsNormalizedIsZero2503L$id2526X@+5Yӡ@Z@ߝ@IsNormalizedIsZero2504L$id2527X-5YO@Z !3@IsNormalizedIsZero2505L$id2528XަYCI@Z@m@IsNormalizedIsZero2506L$id2529XئY @Z '"@IsNormalizedIsZero2507L$id2530X25Y@Z@03v@IsNormalizedIsZero2508L$id2531XY)W@Zms@IsNormalizedIsZero2509L$id2532XbPY@Z@IsNormalizedIsZero2510L$id2533X |PY@ڿ@Z@IsNormalizedIsZero2511L$id2534X`Y@J@ZL@IsNormalizedIsZero2512L$id2535XYH@ZT@IsNormalizedIsZero2513L$id2536X@PY@Z@IsNormalizedIsZero2514L$id2537XPY`@ZI@IsNormalizedIsZero2515L$id2538XY@Z@ĩ@IsNormalizedIsZero2516L$id2539X Yǿ@ZN/@IsNormalizedIsZero2517L$id2540XPY@@Z[6@IsNormalizedIsZero2518L$id2541XPY r @Z@#@IsNormalizedIsZero2519L$id2542X`Y@A@Z;@IsNormalizedIsZero2520L$id2543X Y[@Z ,@IsNormalizedIsZero2521L$id2544X@PY@ZƠ@IsNormalizedIsZero2522L$id2545XPY @ZԚ@IsNormalizedIsZero2523L$id2546XY@@Z@%{@IsNormalizedIsZero2524L$id2547XY@M@Z О@IsNormalizedIsZero2525L$id2548XPY @Z@IsNormalizedIsZero2526L$id2549X zPYz5@Zʊ@IsNormalizedIsZero2527L$id2550XYe@Z@IsNormalizedIsZero2528L$id2551XY 5@ZS]@IsNormalizedIsZero2529L$id2552X@tPYH@Z`z@IsNormalizedIsZero2530L$id2553XY`/@Z@~x@IsNormalizedIsZero2531L$id2554XUY@J@Z` @IsNormalizedIsZero2532L$id2555XEY @Z/@IsNormalizedIsZero2533L$id2556XY 9@Z`M @IsNormalizedIsZero2534L$id2557XY=@Za@IsNormalizedIsZero2535L$id2558X@*Yc@Z`*@IsNormalizedIsZero2536L$id2559X Yw@Zk$@IsNormalizedIsZero2537L$id2560XYE@ZH@IsNormalizedIsZero2538L$id2561XY@@Zb@IsNormalizedIsZero2539L$id2562X Y#@Z@IsNormalizedIsZero2540L$id2563XŻY`g@Z@@IsNormalizedIsZero2541L$id2564X@oYl@Z*@IsNormalizedIsZero2542L$id2565XY YQ@Z@ @IsNormalizedIsZero2543L$id2566X@Y ^7@Z&@IsNormalizedIsZero2544L$id2567X`YT@Zޝ@IsNormalizedIsZero2545L$id2568XVY@Z@IsNormalizedIsZero2546L$id2569XbY`\@Z@IsNormalizedIsZero2547L$id2570XY 3@Z@IsNormalizedIsZero2548L$id2571XY`@Z@8@IsNormalizedIsZero2549L$id2572X;Y@Z@IsNormalizedIsZero2550L$id2573XIY@Z†@IsNormalizedIsZero2551L$id2574XxYg@ZO~@IsNormalizedIsZero2552L$id2575X0Y"@Zl|@IsNormalizedIsZero2553L$id2576XY@Z4@IsNormalizedIsZero2554L$id2577XcY`L@Z` @IsNormalizedIsZero2555L$id2578XY@Zض@IsNormalizedIsZero2556L$id2579X Y@@Z ;@IsNormalizedIsZero2557L$id2580XY @Z @IsNormalizedIsZero2558L$id2581XY@Z`@IsNormalizedIsZero2559L$id2582X`9Y@Z`C@IsNormalizedIsZero2560L$id2583XHY@Zvܳ@IsNormalizedIsZero2561L$id2584X@YV@Z@IsNormalizedIsZero2562L$id2585X Y@Z_@IsNormalizedIsZero2563L$id2586XY.j@Z]@IsNormalizedIsZero2564L$id2587X Y@O@Z@IsNormalizedIsZero2565L$id2588XQY@Z@/,@IsNormalizedIsZero2566L$id2589XuY!@Z`=@IsNormalizedIsZero2567L$id2590X@YTw@ZN@IsNormalizedIsZero2568L$id2591X`YJ@ZZv@IsNormalizedIsZero2569L$id2592X,Yl@Z4'@IsNormalizedIsZero2570L$id2593XWY ?6@Z@h5@IsNormalizedIsZero2571L$id2594XfY`0 @Z@CX@IsNormalizedIsZero2572L$id2595X@?Y-M@Zɿ@IsNormalizedIsZero2573L$id2596X0Y@Z@'@IsNormalizedIsZero2574L$id2597XTY@F@Z !5@IsNormalizedIsZero2575L$id2598XIY/P@Z |@IsNormalizedIsZero2576L$id2599X`Y@ڳ@Z G@IsNormalizedIsZero2577L$id2600XYa@Zn@IsNormalizedIsZero2578L$id2601XJY@Z@@IsNormalizedIsZero2579L$id2602X@8IY`2@Z3@IsNormalizedIsZero2580L$id2603XYB@Zұ@IsNormalizedIsZero2581L$id2604XY`@Z @IsNormalizedIsZero2582L$id2605XsIY]A@Z=@IsNormalizedIsZero2583L$id2606XIY`,@Z]@IsNormalizedIsZero2584L$id2607XZY @Zq[@IsNormalizedIsZero2585L$id2608X@YG@Z`@IsNormalizedIsZero2586L$id2609X`IY`@Zbz@IsNormalizedIsZero2587L$id2610XHY`3@Z @IsNormalizedIsZero2588L$id2611X@Y@Z@ @IsNormalizedIsZero2589L$id2612X<Y`J@Z@IsNormalizedIsZero2590L$id2613XHY@Z"u@IsNormalizedIsZero2591L$id2614X`HYpl@Z@IsNormalizedIsZero2592L$id2615XY @ZW@IsNormalizedIsZero2593L$id2616X@ Y@Zx@IsNormalizedIsZero2594L$id2617XHY@Z@IsNormalizedIsZero2595L$id2618XHY ^@Z*@IsNormalizedIsZero2596L$id2619X@Y%$@Z@IsNormalizedIsZero2597L$id2620XhY @Zb@IsNormalizedIsZero2598L$id2621XY8@Z mm@IsNormalizedIsZero2599L$id2622XY@Z@@IsNormalizedIsZero2600L$id2623XY d@Z@@IsNormalizedIsZero2601L$id2624XY @Z`@IsNormalizedIsZero2602L$id2625X Y @Z@IsNormalizedIsZero2603L$id2626XYp@Z@@IsNormalizedIsZero2604L$id2627XGY@Z`e@IsNormalizedIsZero2605L$id2628XY@Z@0?@IsNormalizedIsZero2606L$id2629XY9@Z,@IsNormalizedIsZero2607L$id2630XpYI@Z@_ݬ@IsNormalizedIsZero2608L$id2631XYۓ@Z+@IsNormalizedIsZero2609L$id2632XY@;@Z`a٩@IsNormalizedIsZero2610L$id2633XNY |@Zd@IsNormalizedIsZero2611L$id2634XaY[Q@Z`ݛ@IsNormalizedIsZero2612L$id2635XY@@Z@IsNormalizedIsZero2613L$id2636XY@@Z7@IsNormalizedIsZero2614L$id2637X uY ;@ZU{@IsNormalizedIsZero2615L$id2638X`rY@Z@IsNormalizedIsZero2616L$id2639XYx-@ZAՙ@IsNormalizedIsZero2617L$id2640XY@f@ZF;@IsNormalizedIsZero2618L$id2641XoY(@Z~@IsNormalizedIsZero2619L$id2642XgY@V?@ZZ@IsNormalizedIsZero2620L$id2643X@Y@Z{@Z;@IsNormalizedIsZero2621L$id2644X CY@Z "/@IsNormalizedIsZero2622L$id2645XsY@Z @IsNormalizedIsZero2623L$id2646XYpV@Z@o@IsNormalizedIsZero2624L$id2647X BY@@Z@IsNormalizedIsZero2625L$id2648X AYDF@Z`س@IsNormalizedIsZero2626L$id2649X Y@@Z@@IsNormalizedIsZero2627L$id2650XY@@Z 0@IsNormalizedIsZero2628L$id2651XUAY@Z ޱ@IsNormalizedIsZero2629L$id2652XAY@0@Z ɯ@IsNormalizedIsZero2630L$id2653X IY {@Z@IsNormalizedIsZero2631L$id2654XY@ҽ@ZEê@IsNormalizedIsZero2632L$id2655X@Y@ZRЫ@IsNormalizedIsZero2633L$id2656X`@Y@Zק@IsNormalizedIsZero2634L$id2657X@Y)@Z@IsNormalizedIsZero2635L$id2658X Y`@Z@IsNormalizedIsZero2636L$id2659X@Y'@ZDܣ@IsNormalizedIsZero2637L$id2660XAY`ȍ@Z@IsNormalizedIsZero2638L$id2661X+YUg@Z@@IsNormalizedIsZero2639L$id2662XY@,@Z@IsNormalizedIsZero2640L$id2663X(AY@Z җ@IsNormalizedIsZero2641L$id2664XJAY@ZƏ@IsNormalizedIsZero2642L$id2665X KY@Z`1@IsNormalizedIsZero2643L$id2666XY @Z~@IsNormalizedIsZero2644L$id2667X`AY1@Z`b@IsNormalizedIsZero2645L$id2668X VYH{@Z "ĵ@IsNormalizedIsZero2646L$id2669X@H:,@YA@Z`m@IsNormalizedIsZero2647L$id2670X;1@Y@Zܲ@IsNormalizedIsZero2648L$id2671X`Y@Z@IsNormalizedIsZero2649L$id2672XY`^@Z"@IsNormalizedIsZero2650L$id2673XR3@Yedz@Z`>"@IsNormalizedIsZero2651L$id2674X`344@Y ^@Zq߮@IsNormalizedIsZero2652L$id2675X@Y@ @Z@VP@IsNormalizedIsZero2653L$id2676XY(@Z@IsNormalizedIsZero2654L$id2677Xy4@Yb@Z@ez@IsNormalizedIsZero2655L$id2678X@3@Y`@Z(@IsNormalizedIsZero2656L$id2679XlY @Z@l@IsNormalizedIsZero2657L$id2680X Y@z@Z[ҥ@IsNormalizedIsZero2658L$id2681X(2@Y˹@Z챤@IsNormalizedIsZero2659L$id2682XW1@Y@@ZE@IsNormalizedIsZero2660L$id2683X/Y@n@ZO1@IsNormalizedIsZero2661L$id2684X@VY@c@Z @IsNormalizedIsZero2662L$id2685X0@Y`@Z@IsNormalizedIsZero2663L$id2686X0@Yդ@ZД@IsNormalizedIsZero2664L$id2687X5Y @Z@Pݕ@IsNormalizedIsZero2665L$id2688XYo@Z.4@IsNormalizedIsZero2666L$id2689X50@Y@&Q@Z+؋@IsNormalizedIsZero2667L$id2690Xc0@Y @Z{@IsNormalizedIsZero2668L$id2691X@Y@@Z H4}@IsNormalizedIsZero2669L$id2692X%@Y x@Z@IsNormalizedIsZero2670L$id2693X@Y p@Z㧳@IsNormalizedIsZero2671L$id2694Xo@Y~ɬ@ZR@IsNormalizedIsZero2672L$id2695Xu*@Y`B@ZL@IsNormalizedIsZero2673L$id2696X/@Y<,@Z@x@IsNormalizedIsZero2674L$id2697X`@Y@Z@IsNormalizedIsZero2675L$id2698X@Y:@Z愬@IsNormalizedIsZero2676L$id2699X .@Y̳@Z+@IsNormalizedIsZero2677L$id2700X`.@Y@}m@ZWs@IsNormalizedIsZero2678L$id2701X J@Y@ZIl@IsNormalizedIsZero2679L$id2702X%@Yൕ@ZN@IsNormalizedIsZero2680L$id2703X@-@Y8@Z2@IsNormalizedIsZero2681L$id2704X,@Y@Z@IsNormalizedIsZero2682L$id2705X@YF@Z@1@IsNormalizedIsZero2683L$id2706XK@Yj@Zl@IsNormalizedIsZero2684L$id2707X%,@Y@Z0@IsNormalizedIsZero2685L$id2708Xj+@Y@C@Z B@IsNormalizedIsZero2686L$id2709X @Y@@Z@@IsNormalizedIsZero2687L$id2710XU@Yf@ZP @IsNormalizedIsZero2688L$id2711X@+@Y ̅@Z`+@IsNormalizedIsZero2689L$id2712XK,@YU@Z@)@IsNormalizedIsZero2690L$id2713X`@Yݺ@Z&D@IsNormalizedIsZero2691L$id2714X ?@Y ޺@Zv@y@IsNormalizedIsZero2692L$id2715X`/-@Y=@Z|z@IsNormalizedIsZero2693L$id2716X@oM@Yq@Z`s@IsNormalizedIsZero2694L$id2717X<@Y`)r@Z@IsNormalizedIsZero2695L$id2718X<@YL@Z@߱@IsNormalizedIsZero2696L$id2719X@ZW@IsNormalizedIsZero2737L$id2760X`K@Y_@Z z}@IsNormalizedIsZero2738L$id2761X @Y_@Z 0{@IsNormalizedIsZero2739L$id2762X@Y>@Z@a@IsNormalizedIsZero2740L$id2763XB-@Y6@Z@IsNormalizedIsZero2741L$id2764XB-@YY@Z@IsNormalizedIsZero2742L$id2765X@Y``@ZO@IsNormalizedIsZero2743L$id2766X@Yw@ZZ@IsNormalizedIsZero2744L$id2767XB-@YOs@Z@˰@IsNormalizedIsZero2745L$id2768XB-@YYǰ@Z0߲@IsNormalizedIsZero2746L$id2769X@Y N˰@Z@IsNormalizedIsZero2747L$id2770X@Y`CG@Z:@IsNormalizedIsZero2748L$id2771XB-@Y]C@ZT@IsNormalizedIsZero2749L$id2772XB-@Y`V۳@Zu@IsNormalizedIsZero2750L$id2773X@Y 1߳@Zl@IsNormalizedIsZero2751L$id2774X@Y@Z@&բ@IsNormalizedIsZero2752L$id2775XB-@Y@Ȝ@Z @IsNormalizedIsZero2753L$id2776XB-@Y@Z@IsNormalizedIsZero2754L$id2777X@Y@Z @IsNormalizedIsZero2755L$id2778X@Y_@Z ş@IsNormalizedIsZero2756L$id2779XB-@Y_@Z@@IsNormalizedIsZero2757L$id2780XB-@Y1@Z@[>@IsNormalizedIsZero2758L$id2781X@Y$@Z%@IsNormalizedIsZero2759L$id2782X@YM@Z`42@IsNormalizedIsZero2760L$id2783X @YGF@Zɺ@IsNormalizedIsZero2761L$id2784X @Y5g@Zꁽ@IsNormalizedIsZero2762L$id2785X@Ym@Z¡@IsNormalizedIsZero2763L$id2786X@Y}@Z`n.@IsNormalizedIsZero2764L$id2787X @YUz@Zdu@IsNormalizedIsZero2765L$id2788X @Yΰ@Z`@IsNormalizedIsZero2766L$id2789X@Y@+Ұ@Z`Q0@IsNormalizedIsZero2767L$id2790X@YM@Z-0@IsNormalizedIsZero2768L$id2791X @Y@J@Z&@IsNormalizedIsZero2769L$id2792X @Ym@Zβ@IsNormalizedIsZero2770L$id2793X@Y@ZN/@IsNormalizedIsZero2771L$id2794X@Y@ZE@IsNormalizedIsZero2772L$id2795X @Yş@Z@IsNormalizedIsZero2773L$id2796X @Y&@Z@IsNormalizedIsZero2774L$id2797X@Ya@ZS@IsNormalizedIsZero2775L$id2798X@Y_@Z @IsNormalizedIsZero2776L$id2799X @Y`_@Z#M@IsNormalizedIsZero2777L$id2800X @Y@Z`ڠ@IsNormalizedIsZero2778L$id2801X@YT@Z@IsNormalizedIsZero2779L$id2802X nK@YY@Z@/@IsNormalizedIsZero2780L$id2803X@YS@Z`@IsNormalizedIsZero2781L$id2804X@Yks@ZIo@IsNormalizedIsZero2782L$id2805X nK@Y x@Z@<@IsNormalizedIsZero2783L$id2806X nK@Y@Z`(@IsNormalizedIsZero2784L$id2807X@Y @Z?@IsNormalizedIsZero2785L$id2808X@Y԰@Z xĿ@IsNormalizedIsZero2786L$id2809X nK@Yװ@Z@O,@IsNormalizedIsZero2787L$id2810X nK@YR@ZSG@IsNormalizedIsZero2788L$id2811X@Y@PP@Z;@IsNormalizedIsZero2789L$id2812X@Y`-@Z@ν@IsNormalizedIsZero2790L$id2813X nK@Y@@Z`NL@IsNormalizedIsZero2791L$id2814X nK@Y@~@Z1@IsNormalizedIsZero2792L$id2815X@Y;@ZT@IsNormalizedIsZero2793L$id2816X@YF@Z@IsNormalizedIsZero2794L$id2817X nK@Y*@Z`}<@IsNormalizedIsZero2795L$id2818X nK@Y_@Z@IsNormalizedIsZero2796L$id2819X@Y_@Z@w@IsNormalizedIsZero2797L$id2820X@Y@ZA@IsNormalizedIsZero2798L$id2821X nK@Y@Z*@IsNormalizedIsZero2799L$id2822X-@Y5a@Z`@IsNormalizedIsZero2800L$id2823X @Y@_]@Z@ @IsNormalizedIsZero2801L$id2824X @Y`|@Zza@IsNormalizedIsZero2802L$id2825X-@Y @Z %@IsNormalizedIsZero2803L$id2826X-@Y@@Z`@IsNormalizedIsZero2804L$id2827X @Y @Z`q@IsNormalizedIsZero2805L$id2828X @Y@]ٰ@Z@IsNormalizedIsZero2806L$id2829X-@Y۰@Z`O@IsNormalizedIsZero2807L$id2830X-@YU@Z@W@IsNormalizedIsZero2808L$id2831X @Y@WT@Zղ@IsNormalizedIsZero2809L$id2832X @Y 1@Z?%@IsNormalizedIsZero2810L$id2833X-@Y @ZW$@IsNormalizedIsZero2811L$id2834X-@Y@Z8@IsNormalizedIsZero2812L$id2835X @YA@Zy@IsNormalizedIsZero2813L$id2836X @Y`L@Z@IsNormalizedIsZero2814L$id2837X-@Ym@Zv@IsNormalizedIsZero2815L$id2838X-@Y`@Z@IsNormalizedIsZero2816L$id2839X @Y`@Z @IsNormalizedIsZero2817L$id2840X @Y`@Z׻@IsNormalizedIsZero2818L$id2841X-@Y`@Z\@IsNormalizedIsZero2819L$id2842X`@Ye@Z`C@IsNormalizedIsZero2820L$id2843X`Ǟ@Yc@Zi6@IsNormalizedIsZero2821L$id2844X`Ǟ@Y`@Z@IsNormalizedIsZero2822L$id2845X`@Y`Y@Z@@IsNormalizedIsZero2823L$id2846X`@Yd@Z@IsNormalizedIsZero2824L$id2847X`Ǟ@Yy@Z@5`@IsNormalizedIsZero2825L$id2848X`Ǟ@Y@ܰ@Z`OK@IsNormalizedIsZero2826L$id2849X`@Y*ݰ@Z`F@IsNormalizedIsZero2827L$id2850X`@YX@Z`@IsNormalizedIsZero2828L$id2851X`Ǟ@YV@Zn@IsNormalizedIsZero2829L$id2852X`Ǟ@Y@Zu@IsNormalizedIsZero2830L$id2853X`@Y@ZL@IsNormalizedIsZero2831L$id2854X`@YY@Z@Ĺ@IsNormalizedIsZero2832L$id2855X`@YY@Z@IsNormalizedIsZero2833L$id2856X`Ǟ@YY@Z`q@IsNormalizedIsZero2834L$id2857X`Ǟ@YY@Z@IsNormalizedIsZero2835L$id2858X`@Y`@Z@@IsNormalizedIsZero2836L$id2859X`Ǟ@Y`@Z@IsNormalizedIsZero2837L$id2860X`Ǟ@Y`@ZƱ@IsNormalizedIsZero2838L$id2861X`@Y`@Z`@IsNormalizedIsZero2839L$id2862X@Y'i@Z#@IsNormalizedIsZero2840L$id2863X @Y@g@Z@3@IsNormalizedIsZero2841L$id2864X @Y@Z @IsNormalizedIsZero2842L$id2865X@Yԉ@Z,@IsNormalizedIsZero2843L$id2866X@Y@Z@IsNormalizedIsZero2844L$id2867X @Y @Zo @IsNormalizedIsZero2845L$id2868X @Yݰ@Za@IsNormalizedIsZero2846L$id2869X@Y`ް@Z` @IsNormalizedIsZero2847L$id2870X@YkY@Z@IsNormalizedIsZero2848L$id2871X @Y X@Z ׵@IsNormalizedIsZero2849L$id2872X @Yd@Z#k@IsNormalizedIsZero2850L$id2873X@Y @Z@@IsNormalizedIsZero2851L$id2874X@YY@Z N @IsNormalizedIsZero2852L$id2875X@YY@Z`@IsNormalizedIsZero2853L$id2876X @YY@Z@IsNormalizedIsZero2854L$id2877X @YY@Zh@IsNormalizedIsZero2855L$id2878X@Y`@Z@IsNormalizedIsZero2856L$id2879X@Y`@ZK@IsNormalizedIsZero2857L$id2880X @Y`@Z`@IsNormalizedIsZero2858L$id2881X @Y`@Z<@IsNormalizedIsZero2859L$id2882XC@Y4@Z@IsNormalizedIsZero2860L$id2883X,h@Y@N@Z\ @IsNormalizedIsZero2861L$id2884X,h@Y5v@ZF@IsNormalizedIsZero2862L$id2885XC@Yb@Za@IsNormalizedIsZero2863L$id2886XC@Y`k@Z(@IsNormalizedIsZero2864L$id2887X,h@YJz@Z@@IsNormalizedIsZero2865L$id2888X,h@Yа@Z+@IsNormalizedIsZero2866L$id2889XC@Y@°@Z@@IsNormalizedIsZero2867L$id2890XC@Y@_U@Z`@IsNormalizedIsZero2868L$id2891X,h@Y`e׵@Z @IsNormalizedIsZero2869L$id2892X,h@Y(@Z @IsNormalizedIsZero2870L$id2893XC@Y@`@Z@@IsNormalizedIsZero2871L$id2894X(@YY@ZN@IsNormalizedIsZero2872L$id2895X)@YY@ZP@IsNormalizedIsZero2873L$id2896X)@YY@Z й@IsNormalizedIsZero2874L$id2897X(@YY@Z Ϲ@IsNormalizedIsZero2875L$id2898XC@Y`@Z@IsNormalizedIsZero2876L$id2899XC@Y`@Z^@IsNormalizedIsZero2877L$id2900X,h@Y`@Z U@IsNormalizedIsZero2878L$id2901X,h@Y`@Z7@IsNormalizedIsZero2879L$id2902XC@Y`B@Z@IsNormalizedIsZero2880L$id2903XC@Y@@ZF`@IsNormalizedIsZero2881L$id2904XC@Y @Z@`@IsNormalizedIsZero2882L$id2905XC@Y9Y@Z@ @IsNormalizedIsZero2883L$id2906XC@Yf@Z@@IsNormalizedIsZero2884L$id2907XC@Y@@Zl@IsNormalizedIsZero2885L$id2908XC@Y@@Z2@IsNormalizedIsZero2886L$id2909XC@Yf@Z B@IsNormalizedIsZero2887L$id2910XC@Y)v@ZI'@IsNormalizedIsZero2888L$id2911XC@Y-`@Z@IsNormalizedIsZero2889L$id2912XC@Y@ZF@IsNormalizedIsZero2890L$id2913XC@YmΣ@Z"(@IsNormalizedIsZero2891L$id2914XC@Y@ZI@IsNormalizedIsZero2892L$id2915XC@Y`i'UZ@x@IsNormalizedIsZero2893L$id2916XC@Y TZ/L@IsNormalizedIsZero2894L$id2917XC@Yi@Z@(L@IsNormalizedIsZero2895L$id2918XC@Y2@Z@8@IsNormalizedIsZero2896L$id2919XC@Y TZ@8@IsNormalizedIsZero2897L$id2920XC@Y TZ۲@IsNormalizedIsZero2898L$id2921XC@Y]@Z)޲@IsNormalizedIsZero2899L$id2922XC@Y@Z@@IsNormalizedIsZero2900L$id2923XC@Y TZ @IsNormalizedIsZero2901L$id2924XC@Y TZ )@IsNormalizedIsZero2902L$id2925XC@Y @Z )@IsNormalizedIsZero2903L$id2926X'Y>@Z࿱@IsNormalizedIsZero2904L$id2927XYv@Z@IsNormalizedIsZero2905L$id2928XYF@Z`VY@IsNormalizedIsZero2906L$id2929X@Y@ZU@IsNormalizedIsZero2907L$id2930XtY@a@Z}@IsNormalizedIsZero2908L$id2931XY@Z}@IsNormalizedIsZero2909L$id2932XYu@Z@z@IsNormalizedIsZero2910L$id2933XY ߦ@Zz@IsNormalizedIsZero2911L$id2934XYʦ@Z x@IsNormalizedIsZero2912L$id2935XY@S@Zw@IsNormalizedIsZero2913L$id2936XYܨ@Z u@IsNormalizedIsZero2914L$id2937X@~Y#@Z1u@IsNormalizedIsZero2915L$id2938XUYn@ZYr@IsNormalizedIsZero2916L$id2939X P Y@h˨@Z 7Gr@IsNormalizedIsZero2917L$id2940X Y1@Zfn@IsNormalizedIsZero2918L$id2941XY@ZKn@IsNormalizedIsZero2919L$id2942X@ Y@ϕ@Zph@IsNormalizedIsZero2920L$id2943X`Y@Z@_h@IsNormalizedIsZero2921L$id2944XY@鬨@Zb@IsNormalizedIsZero2922L$id2945X@$ Y@Zc@IsNormalizedIsZero2923L$id2946X@Y @Z`5@IsNormalizedIsZero2924L$id2947X,h@Y`Н@Z@IsNormalizedIsZero2925L$id2948X`@Y Ҧ@Z@R@IsNormalizedIsZero2926L$id2949X @Y @Z@IsNormalizedIsZero2927L$id2950X-@Y`ݠ@Z&@IsNormalizedIsZero2928L$id2951X`Ǟ@Yף@Z ʐ@IsNormalizedIsZero2929L$id2952X nK@YQ@Z`I@IsNormalizedIsZero2930L$id2953X @Y@Z @IsNormalizedIsZero2931L$id2954X@Y@@Z`k*@IsNormalizedIsZero2932L$id2955X@Y I@Z :@IsNormalizedIsZero2933L$id2956X@Y @Z @IsNormalizedIsZero2934L$id2957X @Y`#@Z@IsNormalizedIsZero2935L$id2958X`K@Y v@Z`B@IsNormalizedIsZero2936L$id2959XB-@Y J|@Z@0@IsNormalizedIsZero2937L$id2960X<@Y`)r@Z@IsNormalizedIsZero2938L$id2961X @Y[t@Z@IsNormalizedIsZero2939L$id2962X@oM@Yq@Z`s@IsNormalizedIsZero2940L$id2963X@Y p@Z㧳@IsNormalizedIsZero2941L$id2964X%@Y x@Z@IsNormalizedIsZero2942L$id2965X@H:,@YA@Z`m@IsNormalizedIsZero2943L$id2966X VYH{@Z "ĵ@IsNormalizedIsZero2944L$id2967XsY@Z @IsNormalizedIsZero2945L$id2968X CY@Z "/@IsNormalizedIsZero2946L$id2969XY8@Z mm@IsNormalizedIsZero2947L$id2970XhY @Zb@IsNormalizedIsZero2948L$id2971XXKY@u#@Z W@IsNormalizedIsZero2949L$id2972XtY@Z@IsNormalizedIsZero2950L$id2973X@Y@Z@BԹ@IsNormalizedIsZero2951L$id2974XeYG@ZL@IsNormalizedIsZero2952L$id2975X`Y@Zf@IsNormalizedIsZero2953L$id2976XGPY@Z@&@IsNormalizedIsZero2954L$id2977XzY-@Z@IsNormalizedIsZero2955L$id2978X4Yk#@Z`@IsNormalizedIsZero2956L$id2979XtY?@Z@\@IsNormalizedIsZero2957L$id2980XY@Z@IsNormalizedIsZero2958L$id2981XCY@l@Z@IsNormalizedIsZero2959L$id2982X Yl@Z@IsNormalizedIsZero2960L$id2983X@=Yǐ@Z@J4@IsNormalizedIsZero2961L$id2984XYv@Z@IsNormalizedIsZero2962L$id2985X'Y>@Z࿱@IsNormalizedIsZero2963L$id2986X@jY$(@Z*˓@IsNormalizedIsZero2964L$id2987XC@Y @ZC@IsNormalizedIsZero2965L$id2988XC@Yb@Za@IsNormalizedIsZero2966L$id2989XC@Y4@Z@IsNormalizedIsZero2967L$id2990XC@Y@°@Z@@IsNormalizedIsZero2968L$id2991XC@Y`k@Z(@IsNormalizedIsZero2969L$id2992XC@Y@`@Z@@IsNormalizedIsZero2970L$id2993XC@Y@_U@Z`@IsNormalizedIsZero2971L$id2994XC@Y=Է@Z L@IsNormalizedIsZero2972L$id2995XC@Y@@Z@8@IsNormalizedIsZero2973L$id2996XC@Y`@Z@IsNormalizedIsZero2974L$id2997XC@Y`@Z^@IsNormalizedIsZero2975L$id2998XC@Y`@Z )@IsNormalizedIsZero2976L$id2999XYP@ZP@IsNormalizedIsZero2977L$id3000XY`u@ZӠ@IsNormalizedIsZero2978L$id3001X@Y*Ф@ZC~@IsNormalizedIsZero2979L$id3002X .YĻ@Z@I{@IsNormalizedIsZero2980L$id3003XeY^@ZNx@IsNormalizedIsZero2981L$id3004X`Y@i@Z@Cu@IsNormalizedIsZero2982L$id3005X[Ys@Zjr@IsNormalizedIsZero2983L$id3006XY @Z1n@IsNormalizedIsZero2984L$id3007X !Yv@Zi@IsNormalizedIsZero2985L$id3008XhY@Lp@Zc@IsNormalizedIsZero2986L$id3009XrY`@Z?IsNormalizedIsZero2987L$id3010XY`u@ZӠ@IsNormalizedIsZero2988L$id3011XYP@ZP@IsNormalizedIsZero2989L$id3012X@NY +@ZT@IsNormalizedIsZero2990L$id3013XY$@Zli@IsNormalizedIsZero2991L$id3014XfYߵ@Z@_@IsNormalizedIsZero2992L$id3015X`vY ?@Z5@IsNormalizedIsZero2993L$id3016XLY`Y@Z+@IsNormalizedIsZero2994L$id3017X`RݿY`>J@Z@IsNormalizedIsZero2995L$id3018XY@ĩ@Z@IsNormalizedIsZero2996L$id3019X>@Y'=@Z`@IsNormalizedIsZero2997L$id3020XC@Y@@ZF`@IsNormalizedIsZero2998L$id3021XC@Y`B@Z@IsNormalizedIsZero2999L$id3022XC@Y@@Zl@IsNormalizedIsZero3000L$id3023XC@Yf@Z@@IsNormalizedIsZero3001L$id3024XC@Y-`@Z@IsNormalizedIsZero3002L$id3025XC@Y)v@ZI'@IsNormalizedIsZero3003L$id3026XC@Y`i'UZ@x@IsNormalizedIsZero3004L$id3027XC@Y TZ/L@IsNormalizedIsZero3005L$id3028XC@Y TZ@8@IsNormalizedIsZero3006L$id3029XC@Y TZ۲@IsNormalizedIsZero3007L$id3030XC@Y TZ @IsNormalizedIsZero3008L$id3031XC@Y TZ )@IsNormalizedIsZero3009L$id3032XYv@Z@IsNormalizedIsZero3010L$id3033X@jY$(@Z*˓@IsNormalizedIsZero3011L$id3034XYF@Z`VY@IsNormalizedIsZero3012L$id3035XY@Z}@IsNormalizedIsZero3013L$id3036XYu@Z@z@IsNormalizedIsZero3014L$id3037XY@S@Zw@IsNormalizedIsZero3015L$id3038XYܨ@Z u@IsNormalizedIsZero3016L$id3039X P Y@h˨@Z 7Gr@IsNormalizedIsZero3017L$id3040X Y1@Zfn@IsNormalizedIsZero3018L$id3041X`Y@Z@_h@IsNormalizedIsZero3019L$id3042XY@鬨@Zb@IsNormalizedIsZero3020L$id3043XYפ@ZSZ@IsNormalizedIsZero3021L$id3044X +Y`@Z@J@IsNormalizedIsZero3022L$id3045X@=Yǐ@Z@J4@IsNormalizedIsZero3023L$id3046X Yl@Z@IsNormalizedIsZero3024L$id3047XCY@l@Z@IsNormalizedIsZero3025L$id3048XY@Z@IsNormalizedIsZero3026L$id3049XtY?@Z@\@IsNormalizedIsZero3027L$id3050X4Yk#@Z`@IsNormalizedIsZero3028L$id3051XzY-@Z@IsNormalizedIsZero3029L$id3052XGPY@Z@&@IsNormalizedIsZero3030L$id3053XeYG@ZL@IsNormalizedIsZero3031L$id3054X`Y@Zf@IsNormalizedIsZero3032L$id3055X@Y@Z@BԹ@IsNormalizedIsZero3033L$id3056XtY@Z@IsNormalizedIsZero3034L$id3057XXKY@u#@Z W@IsNormalizedIsZero3035L$id3058X @Y[t@Z@IsNormalizedIsZero3036L$id3059X`K@Y v@Z`B@IsNormalizedIsZero3037L$id3060XB-@Y J|@Z@0@IsNormalizedIsZero3038L$id3061XB-@Y_@Z@IsNormalizedIsZero3039L$id3062X@Y @Z @IsNormalizedIsZero3040L$id3063X @Y`#@Z@IsNormalizedIsZero3041L$id3064X @Y_@Z M@IsNormalizedIsZero3042L$id3065X@Y`_@Z@Ÿ@IsNormalizedIsZero3043L$id3066X@Y@@Z`k*@IsNormalizedIsZero3044L$id3067X@Y I@Z :@IsNormalizedIsZero3045L$id3068X@Y@_@Zw@IsNormalizedIsZero3046L$id3069X@Y_@Z@IsNormalizedIsZero3047L$id3070X nK@YQ@Z`I@IsNormalizedIsZero3048L$id3071X @Y@Z @IsNormalizedIsZero3049L$id3072X @Y`@Z@IsNormalizedIsZero3050L$id3073X nK@Y_@Z@IsNormalizedIsZero3051L$id3074X-@Y`ݠ@Z&@IsNormalizedIsZero3052L$id3075X`Ǟ@Yף@Z ʐ@IsNormalizedIsZero3053L$id3076X`Ǟ@Y@Z܉@IsNormalizedIsZero3054L$id3077X`Ǟ@Y@@Z8@IsNormalizedIsZero3055L$id3078X`Ǟ@Y`@Z`*@IsNormalizedIsZero3056L$id3079X-@Y`@Z*@IsNormalizedIsZero3057L$id3080X`@Y Ҧ@Z@R@IsNormalizedIsZero3058L$id3081X @Y @Z@IsNormalizedIsZero3059L$id3082X @Y@Z@@IsNormalizedIsZero3060L$id3083X`@Y@Q@ZL@IsNormalizedIsZero3061L$id3084X`@Y@Z8@IsNormalizedIsZero3062L$id3085X @Yg@Z8@IsNormalizedIsZero3063L$id3086X @Y`@Z)@IsNormalizedIsZero3064L$id3087X`@Y`@Z *@IsNormalizedIsZero3065L$id3088X@Y @Z`5@IsNormalizedIsZero3066L$id3089X,h@Y`Н@Z@IsNormalizedIsZero3067L$id3090X,h@Y@@Z@@IsNormalizedIsZero3068L$id3091X@Y@Z G@IsNormalizedIsZero3069L$id3092X@Y@ʦ@Z@8@IsNormalizedIsZero3070L$id3093X,h@Y@0@Z@8@IsNormalizedIsZero3071L$id3094X,h@Y`@Z`)@IsNormalizedIsZero3072L$id3095X@Y`@Z)@IsNormalizedIsZero3073L$id3096XC@Y @ZC@IsNormalizedIsZero3074L$id3097X`ZY@f@Z+Z@IsNormalizedIsZero3075L$id3098XY@ZB*J@IsNormalizedIsZero3076L$id3099X Y{h@Z@PJ@IsNormalizedIsZero3077L$id3100X@ Yi@Z@QZ@IsNormalizedIsZero3078L$id3101XC@Y @ZC@IsNormalizedIsZero3079L$id3102XC@Y=Է@Z L@IsNormalizedIsZero3080L$id3103XC@Y@@Z@8@IsNormalizedIsZero3081L$id3104XC@Y`@Z )@IsNormalizedIsZero3082L$id3105XYפ@ZSZ@IsNormalizedIsZero3083L$id3106X +Y`@Z@J@IsNormalizedIsZero3084L$id3107XY`u@ZӠ@IsNormalizedIsZero3085L$id3108X`Z@YY@Z`@IsNormalizedIsZero3086L$id3109X^@YY@ZS_@IsNormalizedIsZero3087L$id3110X^@YY@Z@IsNormalizedIsZero3088L$id3111X`Z@YY@Z#@IsNormalizedIsZero3089L$id3112X,h@YY@Z -@IsNormalizedIsZero3090L$id3113X,h@YY@Z@@IsNormalizedIsZero3091L$id3114X-@Ym@Zv@IsNormalizedIsZero3092L$id3115X3@YS{@Z@$@IsNormalizedIsZero3093L$id3116X3@YS{@Zt@IsNormalizedIsZero3094L$id3117X3@YS{@Z`@IsNormalizedIsZero3095L$id3118X3@YS{@Z`@IsNormalizedIsZero3096L$id3119X3@YS{@Z ~@IsNormalizedIsZero3097L$id3120X-@Ym@Zv@IsNormalizedIsZero3098L$id3121X3@YS{@Z ~@IsNormalizedIsZero3099L$id3122X3@YS{@Z^@IsNormalizedIsZero3100L$id3123X3@YS{@Z^@IsNormalizedIsZero3101L$id3124X3@YS{@Z8@IsNormalizedIsZero3102L$id3125X-@Ym@Zv@IsNormalizedIsZero3103L$id3126X3@YS{@Z8@IsNormalizedIsZero3104L$id3127X-@Y@Z8@IsNormalizedIsZero3105L$id3128X-@Y@Z8@IsNormalizedIsZero3106L$id3129X3@YS{@Z8@IsNormalizedIsZero3107L$id3130X^@YS{@Z8@IsNormalizedIsZero3108L$id3131X`Z@YS{@Z8@IsNormalizedIsZero3109L$id3132X`Ǟ@YS{@Z8@IsNormalizedIsZero3110L$id3133X`Ǟ@Y@@Z8@IsNormalizedIsZero3111L$id3134X`@YS{@Z8@IsNormalizedIsZero3112L$id3135X`@Y@Z8@IsNormalizedIsZero3113L$id3136X @YS{@Z8@IsNormalizedIsZero3114L$id3137X @Yg@Z8@IsNormalizedIsZero3115L$id3138X@YS{@Z@8@IsNormalizedIsZero3116L$id3139X@Y@ʦ@Z@8@IsNormalizedIsZero3117L$id3140X,h@YS{@Z@8@IsNormalizedIsZero3118L$id3141X,h@Y@0@Z@8@IsNormalizedIsZero3119L$id3142X(@YS{@Z@8@IsNormalizedIsZero3120L$id3143X)@YS{@Z@8@IsNormalizedIsZero3121L$id3144XC@YS{@Z@8@IsNormalizedIsZero3122L$id3145XC@Y@@Z@8@IsNormalizedIsZero3123L$id3146XC@YS{@Z@8@IsNormalizedIsZero3124L$id3147XC@YS{@Z-ѹ@IsNormalizedIsZero3125L$id3148XC@YS{@ZQ@IsNormalizedIsZero3126L$id3149XC@YS{@Z@@IsNormalizedIsZero3127L$id3150XC@YS{@Z2@IsNormalizedIsZero3128L$id3151XC@YS{@Z3t@IsNormalizedIsZero3129L$id3152XC@Y=Է@Z L@IsNormalizedIsZero3130L$id3153XC@YS{@Z3t@IsNormalizedIsZero3131L$id3154X)@YS{@Zp@IsNormalizedIsZero3132L$id3155XC@Y=Է@Z L@IsNormalizedIsZero3133L$id3156X)@YS{@Zp@IsNormalizedIsZero3134L$id3157X(@YS{@Zk@IsNormalizedIsZero3135L$id3158XC@Y=Է@Z L@IsNormalizedIsZero3136L$id3159X(@YS{@Zk@IsNormalizedIsZero3137L$id3160X,h@YS{@Z@IsNormalizedIsZero3138L$id3161XC@Y=Է@Z L@IsNormalizedIsZero3139L$id3162X,h@YS{@Z@IsNormalizedIsZero3140L$id3163X,h@Y@@Z@@IsNormalizedIsZero3141L$id3164X,h@Y@@Z@@IsNormalizedIsZero3142L$id3165X,h@YS{@Z@IsNormalizedIsZero3143L$id3166X@YS{@Z@IsNormalizedIsZero3144L$id3167X@YS{@Z@IsNormalizedIsZero3145L$id3168X@Y@Z G@IsNormalizedIsZero3146L$id3169X,h@Y@@Z@@IsNormalizedIsZero3147L$id3170X@Y@Z G@IsNormalizedIsZero3148L$id3171X@YS{@Z@IsNormalizedIsZero3149L$id3172X @YS{@Z`@IsNormalizedIsZero3150L$id3173X @YS{@Z`@IsNormalizedIsZero3151L$id3174X @Y@Z@@IsNormalizedIsZero3152L$id3175X@Y@Z G@IsNormalizedIsZero3153L$id3176X @Y@Z@@IsNormalizedIsZero3154L$id3177X @YS{@Z`@IsNormalizedIsZero3155L$id3178X`@YS{@Z@ @IsNormalizedIsZero3156L$id3179X`@YS{@Z@ @IsNormalizedIsZero3157L$id3180X`@Y@Q@ZL@IsNormalizedIsZero3158L$id3181X @Y@Z@@IsNormalizedIsZero3159L$id3182X`@Y@Q@ZL@IsNormalizedIsZero3160L$id3183X`@YS{@Z@ @IsNormalizedIsZero3161L$id3184X`Ǟ@YS{@Z`@IsNormalizedIsZero3162L$id3185X`Ǟ@YS{@Z`@IsNormalizedIsZero3163L$id3186X`Ǟ@Y@Z܉@IsNormalizedIsZero3164L$id3187X`@Y@Q@ZL@IsNormalizedIsZero3165L$id3188X`Ǟ@Y@Z܉@IsNormalizedIsZero3166L$id3189X`Ǟ@YS{@Z`@IsNormalizedIsZero3167L$id3190X`Z@YS{@Z)5@IsNormalizedIsZero3168L$id3191X^@YS{@Z`]+@IsNormalizedIsZero3169L$id3192X^@YS{@Z`]+@IsNormalizedIsZero3170L$id3193X3@YS{@Z@$@IsNormalizedIsZero3171L$id3194X`Ǟ@Y@Z܉@IsNormalizedIsZero3172L$id3195X3@YS{@Z@$@IsNormalizedIsZero3173L$id3196X-@Ym@Zv@IsNormalizedIsZero3174L$id3197X`@YY@Z̼@IsNormalizedIsZero3175L$id3198X`@YY@Z@IsNormalizedIsZero3176L$id3199X`Ǟ@YY@Z@IsNormalizedIsZero3177L$id3200X`Ǟ@YY@Z` @IsNormalizedIsZero3178L$id3201X`Ǟ@YS{@Z8@IsNormalizedIsZero3179L$id3202X`Ǟ@YS{@Z`q@IsNormalizedIsZero3180L$id3203X`@YS{@Z@IsNormalizedIsZero3181L$id3204X`@YS{@Z8@IsNormalizedIsZero3182L$id3205X@YY@Z@IsNormalizedIsZero3183L$id3206X@YY@Z@C@IsNormalizedIsZero3184L$id3207X @YY@Z@m@IsNormalizedIsZero3185L$id3208X @YY@Z`@IsNormalizedIsZero3186L$id3209X @YS{@Z8@IsNormalizedIsZero3187L$id3210X @YS{@Z@IsNormalizedIsZero3188L$id3211X@YS{@Z`@IsNormalizedIsZero3189L$id3212X@YS{@Z@8@IsNormalizedIsZero3190L$id3213X(@YY@Z@*@IsNormalizedIsZero3191L$id3214X)@YY@Z c/@IsNormalizedIsZero3192L$id3215X)@YY@Z@IsNormalizedIsZero3193L$id3216X(@YY@Z`@IsNormalizedIsZero3194L$id3217X)@YS{@Z@8@IsNormalizedIsZero3195L$id3218X(@YS{@Z@8@IsNormalizedIsZero3196L$id3219X(@YS{@Z Ϲ@IsNormalizedIsZero3197L$id3220X)@YS{@Z й@IsNormalizedIsZero3198L$id3221X`Z@YS{@Z8@IsNormalizedIsZero3199L$id3222X^@YS{@Z8@IsNormalizedIsZero3200L$id3223X^@YS{@ZS_@IsNormalizedIsZero3201L$id3224X`Z@YS{@Z`@IsNormalizedIsZero3202L$id3225X^@YY@Z@9 @IsNormalizedIsZero3203L$id3226X`Z@YY@Z^@IsNormalizedIsZero3204L$id3227X`Z@YY@Z@IsNormalizedIsZero3205L$id3228X^@YY@Zm@IsNormalizedIsZero3206L$id3229X,h@YS{@Z@@IsNormalizedIsZero3207L$id3230X,h@YS{@Z@8@IsNormalizedIsZero3208L$id3231X,h@YY@Z}@IsNormalizedIsZero3209L$id3232X,h@YY@Z@IsNormalizedIsZero3210L$id3233X`@YS{@Z@ @IsNormalizedIsZero3211L$id3234X`@YS{@Z̼@IsNormalizedIsZero3212L$id3235X`Ǟ@YS{@Z` @IsNormalizedIsZero3213L$id3236X`Ǟ@YS{@Z`@IsNormalizedIsZero3214L$id3237X`Ǟ@Y๎@Z t@IsNormalizedIsZero3215L$id3238X`Ǟ@Y๎@ZL@IsNormalizedIsZero3216L$id3239X`@Y๎@Z`%M@IsNormalizedIsZero3217L$id3240X`@Y๎@Z@".@IsNormalizedIsZero3218L$id3241X@YS{@Z@IsNormalizedIsZero3219L$id3242X@YS{@Z@IsNormalizedIsZero3220L$id3243X @YS{@Z`@IsNormalizedIsZero3221L$id3244X @YS{@Z`@IsNormalizedIsZero3222L$id3245X @Y๎@Zr@IsNormalizedIsZero3223L$id3246X @Y๎@Z@IsNormalizedIsZero3224L$id3247X@Y๎@Z@@IsNormalizedIsZero3225L$id3248X@Y๎@Z` @IsNormalizedIsZero3226L$id3249X(@YS{@Zk@IsNormalizedIsZero3227L$id3250X)@YS{@Zp@IsNormalizedIsZero3228L$id3251X)@YS{@Z c/@IsNormalizedIsZero3229L$id3252X(@YS{@Z@*@IsNormalizedIsZero3230L$id3253X^@YS{@Z`]+@IsNormalizedIsZero3231L$id3254X`Z@YS{@Z)5@IsNormalizedIsZero3232L$id3255X`Z@YS{@Z^@IsNormalizedIsZero3233L$id3256X^@YS{@Z@9 @IsNormalizedIsZero3234L$id3257X,h@YS{@Z}@IsNormalizedIsZero3235L$id3258X,h@YS{@Z@IsNormalizedIsZero3236L$id3259X,h@Y๎@Z @IsNormalizedIsZero3237L$id3260X,h@Y๎@Z\@IsNormalizedIsZero3238L$id3261X3@YS{@Z ~@IsNormalizedIsZero3239L$id3262X^@YS{@Z@IsNormalizedIsZero3240L$id3263X3@YS{@Z^@IsNormalizedIsZero3241L$id3264X3@YS{@Z8@IsNormalizedIsZero3242L$id3265X3@YS{@Zt@IsNormalizedIsZero3243L$id3266X^@YS{@Zm@IsNormalizedIsZero3244L$id3267X3@YS{@Z`@IsNormalizedIsZero3245L$id3268X3@YS{@Z@$@IsNormalizedIsZero3246L$id3269X`Ǟ@Y๎@Z鳹@IsNormalizedIsZero3247L$id3270Xo@Y๎@Z鳹@IsNormalizedIsZero3248L$id3271Xo@Y๎@Z۶@IsNormalizedIsZero3249L$id3272X`Ǟ@Y๎@Z@@IsNormalizedIsZero3250L$id3273XC@YS{@Z-ѹ@IsNormalizedIsZero3251L$id3274X)@YS{@ZP@IsNormalizedIsZero3252L$id3275XC@YS{@ZQ@IsNormalizedIsZero3253L$id3276XC@YS{@Z@@IsNormalizedIsZero3254L$id3277X)@YS{@Z@IsNormalizedIsZero3255L$id3278XC@YS{@Z2@IsNormalizedIsZero3256L$id3279XC@YS{@Z@8@IsNormalizedIsZero3257L$id3280XC@YS{@Z3t@IsNormalizedIsZero3258L$id3281X(@Y๎@Z {@IsNormalizedIsZero3259L$id3282X(@Y๎@Z @IsNormalizedIsZero3260L$id3283X`Ǟ@YS{@Z`q@IsNormalizedIsZero3261L$id3284X`Ǟ@YY@Z`q@IsNormalizedIsZero3262L$id3285X`@YY@Z@IsNormalizedIsZero3263L$id3286X`@YS{@Z@IsNormalizedIsZero3264L$id3287X`@YS{@Z@IsNormalizedIsZero3265L$id3288X`@YY@Z@IsNormalizedIsZero3266L$id3289X @YY@Z@IsNormalizedIsZero3267L$id3290X @YS{@Z@IsNormalizedIsZero3268L$id3291X@YY@Z`@IsNormalizedIsZero3269L$id3292X@YS{@Z`@IsNormalizedIsZero3270L$id3293X@YS{@Z`@IsNormalizedIsZero3271L$id3294X@YY@Z`@IsNormalizedIsZero3272L$id3295X,h@YY@Z@@IsNormalizedIsZero3273L$id3296X,h@YS{@Z@@IsNormalizedIsZero3274L$id3297X,h@YS{@Z@@IsNormalizedIsZero3275L$id3298X,h@YY@Z@@IsNormalizedIsZero3276L$id3299X(@YY@Z Ϲ@IsNormalizedIsZero3277L$id3300X(@YS{@Z Ϲ@IsNormalizedIsZero3278L$id3301X(@YS{@Z Ϲ@IsNormalizedIsZero3279L$id3302X(@YY@Z Ϲ@IsNormalizedIsZero3280L$id3303X)@YY@Z й@IsNormalizedIsZero3281L$id3304X)@YS{@Z й@IsNormalizedIsZero3282L$id3305X)@YS{@Z й@IsNormalizedIsZero3283L$id3306X)@YY@Z й@IsNormalizedIsZero3284L$id3307X)@YY@ZP@IsNormalizedIsZero3285L$id3308X)@YS{@ZP@IsNormalizedIsZero3286L$id3309X)@YY@Z@IsNormalizedIsZero3287L$id3310X)@YS{@Z@IsNormalizedIsZero3288L$id3311X)@YY@Z c/@IsNormalizedIsZero3289L$id3312X)@YS{@Z c/@IsNormalizedIsZero3290L$id3313X)@YS{@Z c/@IsNormalizedIsZero3291L$id3314X)@YY@Z c/@IsNormalizedIsZero3292L$id3315X(@YY@Z@*@IsNormalizedIsZero3293L$id3316X(@YY@Z@*@IsNormalizedIsZero3294L$id3317X(@YS{@Z@*@IsNormalizedIsZero3295L$id3318X)@YS{@Z c/@IsNormalizedIsZero3296L$id3319X(@YS{@Z@*@IsNormalizedIsZero3297L$id3320X(@YY@Z@*@IsNormalizedIsZero3298L$id3321X,h@YY@Z}@IsNormalizedIsZero3299L$id3322X,h@YS{@Z}@IsNormalizedIsZero3300L$id3323X,h@YS{@Z}@IsNormalizedIsZero3301L$id3324X,h@YY@Z}@IsNormalizedIsZero3302L$id3325X@YY@Z@IsNormalizedIsZero3303L$id3326X@YS{@Z@IsNormalizedIsZero3304L$id3327X@YS{@Z@IsNormalizedIsZero3305L$id3328X@YY@Z@IsNormalizedIsZero3306L$id3329X @YY@Z`@IsNormalizedIsZero3307L$id3330X @YS{@Z`@IsNormalizedIsZero3308L$id3331X`@YY@Z̼@IsNormalizedIsZero3309L$id3332X`@YS{@Z̼@IsNormalizedIsZero3310L$id3333X`@YS{@Z̼@IsNormalizedIsZero3311L$id3334X`@YY@Z̼@IsNormalizedIsZero3312L$id3335X`Ǟ@YY@Z` @IsNormalizedIsZero3313L$id3336X`Ǟ@YS{@Z` @IsNormalizedIsZero3314L$id3337X`Ǟ@YS{@Z` @IsNormalizedIsZero3315L$id3338X`Ǟ@YY@Z` @IsNormalizedIsZero3316L$id3339X`Z@YY@Z^@IsNormalizedIsZero3317L$id3340X`Z@YS{@Z^@IsNormalizedIsZero3318L$id3341X`Z@YS{@Z^@IsNormalizedIsZero3319L$id3342X`Z@YY@Z^@IsNormalizedIsZero3320L$id3343X^@YY@Z@9 @IsNormalizedIsZero3321L$id3344X^@YY@Z@9 @IsNormalizedIsZero3322L$id3345X^@YS{@Z@9 @IsNormalizedIsZero3323L$id3346X`Z@YS{@Z^@IsNormalizedIsZero3324L$id3347X^@YS{@Z@9 @IsNormalizedIsZero3325L$id3348X^@YY@Z@9 @IsNormalizedIsZero3326L$id3349X^@YY@Zm@IsNormalizedIsZero3327L$id3350X^@YS{@Zm@IsNormalizedIsZero3328L$id3351X^@YY@Z@IsNormalizedIsZero3329L$id3352X^@YS{@Z@IsNormalizedIsZero3330L$id3353X^@YY@ZS_@IsNormalizedIsZero3331L$id3354X^@YS{@ZS_@IsNormalizedIsZero3332L$id3355X^@YS{@ZS_@IsNormalizedIsZero3333L$id3356X^@YY@ZS_@IsNormalizedIsZero3334L$id3357X`Z@YY@Z`@IsNormalizedIsZero3335L$id3358X`Z@YS{@Z`@IsNormalizedIsZero3336L$id3359X`Z@YS{@Z`@IsNormalizedIsZero3337L$id3360X`Z@YY@Z`@IsNormalizedIsZero3338L$id3361X`Ǟ@YY@Z`q@IsNormalizedIsZero3339L$id3362X`Ǟ@YS{@Z`q@IsNormalizedIsZero3340L$id3363X`Ǟ@YY@Z@IsNormalizedIsZero3341L$id3364X`Ǟ@Y@Z@IsNormalizedIsZero3342L$id3365X`@Y@Z@Ĺ@IsNormalizedIsZero3343L$id3366X`@YY@Z@Ĺ@IsNormalizedIsZero3344L$id3367X`@YY@Z@Ĺ@IsNormalizedIsZero3345L$id3368X`@Y@Z@Ĺ@IsNormalizedIsZero3346L$id3369X @Y@Zh@IsNormalizedIsZero3347L$id3370X @YY@Zh@IsNormalizedIsZero3348L$id3371X@Y@Z N @IsNormalizedIsZero3349L$id3372X@YY@Z N @IsNormalizedIsZero3350L$id3373X@YY@Z N @IsNormalizedIsZero3351L$id3374X@Y@Z N @IsNormalizedIsZero3352L$id3375X,h@Y@Z -@IsNormalizedIsZero3353L$id3376X,h@YY@Z -@IsNormalizedIsZero3354L$id3377X,h@YY@Z -@IsNormalizedIsZero3355L$id3378X,h@Y@Z -@IsNormalizedIsZero3356L$id3379X(@Y@ZN@IsNormalizedIsZero3357L$id3380X(@YY@ZN@IsNormalizedIsZero3358L$id3381X(@YY@ZN@IsNormalizedIsZero3359L$id3382X(@Y@ZN@IsNormalizedIsZero3360L$id3383X(@Y@Z`@IsNormalizedIsZero3361L$id3384X(@YY@Z`@IsNormalizedIsZero3362L$id3385X(@YY@Z`@IsNormalizedIsZero3363L$id3386X(@Y@Z`@IsNormalizedIsZero3364L$id3387X,h@Y@Z@IsNormalizedIsZero3365L$id3388X,h@YY@Z@IsNormalizedIsZero3366L$id3389X,h@YY@Z@IsNormalizedIsZero3367L$id3390X,h@Y@Z@IsNormalizedIsZero3368L$id3391X@Y@Z@C@IsNormalizedIsZero3369L$id3392X@YY@Z@C@IsNormalizedIsZero3370L$id3393X@YY@Z@C@IsNormalizedIsZero3371L$id3394X@Y@Z@C@IsNormalizedIsZero3372L$id3395X @Y@Z@m@IsNormalizedIsZero3373L$id3396X @YY@Z@m@IsNormalizedIsZero3374L$id3397X`@Y@Z@IsNormalizedIsZero3375L$id3398X`@YY@Z@IsNormalizedIsZero3376L$id3399X`@YY@Z@IsNormalizedIsZero3377L$id3400X`@Y@Z@IsNormalizedIsZero3378L$id3401X`Ǟ@Y@Z@IsNormalizedIsZero3379L$id3402X`Ǟ@YY@Z@IsNormalizedIsZero3380L$id3403X`Ǟ@YY@Z@IsNormalizedIsZero3381L$id3404X`Ǟ@Y@Z@IsNormalizedIsZero3382L$id3405X`Z@Y@Z@IsNormalizedIsZero3383L$id3406X`Z@YY@Z@IsNormalizedIsZero3384L$id3407X`Z@YY@Z@IsNormalizedIsZero3385L$id3408X`Z@Y@Z@IsNormalizedIsZero3386L$id3409X`Z@Y@Z#@IsNormalizedIsZero3387L$id3410X`Z@YY@Z#@IsNormalizedIsZero3388L$id3411X`Z@YY@Z#@IsNormalizedIsZero3389L$id3412X`Z@Y@Z#@IsNormalizedIsZero3390L$id3413X`Ǟ@Y@Z@IsNormalizedIsZero3391L$id3414X`Ǟ@YY@Z@IsNormalizedIsZero3392L$id3415X`Ǟ@Y@Z@IsNormalizedIsZero3393L$id3416X`@Y@Z@Ĺ@IsNormalizedIsZero3394L$id3417X`@Y@Z@Ĺ@IsNormalizedIsZero3395L$id3418X @Y@Zh@IsNormalizedIsZero3396L$id3419X@Y@Z N @IsNormalizedIsZero3397L$id3420X@Y@Z N @IsNormalizedIsZero3398L$id3421X,h@Y@Z -@IsNormalizedIsZero3399L$id3422X,h@Y@Z -@IsNormalizedIsZero3400L$id3423X(@Y@ZN@IsNormalizedIsZero3401L$id3424X(@Y@ZN@IsNormalizedIsZero3402L$id3425X(@Y๎@Z@`@IsNormalizedIsZero3403L$id3426X(@Y๎@Z˺@IsNormalizedIsZero3404L$id3427X(@Y๎@Z @IsNormalizedIsZero3405L$id3428X(@Y๎@Z {@IsNormalizedIsZero3406L$id3429X(@Y`څ@Z@v@IsNormalizedIsZero3407L$id3430X(@Y@Z`@IsNormalizedIsZero3408L$id3431X(@Y`څ@Z@v@IsNormalizedIsZero3409L$id3432X,h@Yׅ@Z+н@IsNormalizedIsZero3410L$id3433X,h@Yׅ@Z+н@IsNormalizedIsZero3411L$id3434X,h@Y@Z@IsNormalizedIsZero3412L$id3435X(@Y@Z`@IsNormalizedIsZero3413L$id3436X,h@Y@Z@IsNormalizedIsZero3414L$id3437X,h@Yׅ@Z+н@IsNormalizedIsZero3415L$id3438X@YӅ@ZW@IsNormalizedIsZero3416L$id3439X@YӅ@ZW@IsNormalizedIsZero3417L$id3440X@Y@Z@C@IsNormalizedIsZero3418L$id3441X,h@Y@Z@IsNormalizedIsZero3419L$id3442X@Y@Z@C@IsNormalizedIsZero3420L$id3443X@YӅ@ZW@IsNormalizedIsZero3421L$id3444X @Y Ѕ@Zg1@IsNormalizedIsZero3422L$id3445X @Y Ѕ@Zg1@IsNormalizedIsZero3423L$id3446X @Y@Z@m@IsNormalizedIsZero3424L$id3447X@Y@Z@C@IsNormalizedIsZero3425L$id3448X @Y@Z@m@IsNormalizedIsZero3426L$id3449X @Y Ѕ@Zg1@IsNormalizedIsZero3427L$id3450X`@Y̅@Z`xc@IsNormalizedIsZero3428L$id3451X`@Y̅@Z`xc@IsNormalizedIsZero3429L$id3452X`@Y@Z@IsNormalizedIsZero3430L$id3453X @Y@Z@m@IsNormalizedIsZero3431L$id3454X`@Y@Z@IsNormalizedIsZero3432L$id3455X`@Y̅@Z`xc@IsNormalizedIsZero3433L$id3456X`Ǟ@YɅ@Z@IsNormalizedIsZero3434L$id3457X`Ǟ@YɅ@Z@IsNormalizedIsZero3435L$id3458X`Ǟ@Y@Z@IsNormalizedIsZero3436L$id3459X`@Y@Z@IsNormalizedIsZero3437L$id3460X`Ǟ@Y@Z@IsNormalizedIsZero3438L$id3461X`Ǟ@YɅ@Z@IsNormalizedIsZero3439L$id3462X`pn@Y (@Z`]@IsNormalizedIsZero3440L$id3463X`pn@Y (@Z`]@IsNormalizedIsZero3441L$id3464X`Z@Y@Z@IsNormalizedIsZero3442L$id3465X`Ǟ@Y@Z@IsNormalizedIsZero3443L$id3466X`pn@Y (@Z`]@IsNormalizedIsZero3444L$id3467Xo@Y๎@ZI@IsNormalizedIsZero3445L$id3468Xo@Y๎@Z E@IsNormalizedIsZero3446L$id3469X`Z@Y@Z@IsNormalizedIsZero3447L$id3470X`pn@Y (@Z`]@IsNormalizedIsZero3448L$id3471Xo@Y๎@Z E@IsNormalizedIsZero3449L$id3472X`Z@Y@Z@IsNormalizedIsZero3450L$id3473Xo@Y๎@Z E@IsNormalizedIsZero3451L$id3474Xo@Y๎@Z۶@IsNormalizedIsZero3452L$id3475Xo@Y๎@Z鳹@IsNormalizedIsZero3453L$id3476Xo@Y๎@Z鳹@IsNormalizedIsZero3454L$id3477Xon@Y @Z A@IsNormalizedIsZero3455L$id3478X`Z@Y@Z#@IsNormalizedIsZero3456L$id3479X`Z@Y@Z#@IsNormalizedIsZero3457L$id3480X`Z@Y@Z#@IsNormalizedIsZero3458L$id3481Xon@Y @Z A@IsNormalizedIsZero3459L$id3482X`Ǟ@Y@Z@IsNormalizedIsZero3460L$id3483X`Ǟ@Y@Z@IsNormalizedIsZero3461L$id3484XUC@Y l@Zd[@IsNormalizedIsZero3462L$id3485X`_C@Y l@Z8@IsNormalizedIsZero3463L$id3486X@Y`e@Z@IsNormalizedIsZero3464L$id3487X@@Y`e@Z@IsNormalizedIsZero3465L$id3488Xز@Y@Z@IsNormalizedIsZero3466L$id3489X["@Y Mm@Z @IsNormalizedIsZero3467L$id3490X l"@Y Mm@Zغ@IsNormalizedIsZero3468L$id3491X@Y@ZLj@IsNormalizedIsZero3469L$id3492X`L@Y @Zq@IsNormalizedIsZero3470L$id3493X``@Y @Z %*@IsNormalizedIsZero3471L$id3494Xo@Y๎@Z E@IsNormalizedIsZero3472L$id3495Xo@Y๎@ZI@IsNormalizedIsZero3473L$id3496X@Y i@ZȻ@IsNormalizedIsZero3474L$id3497X@Y i@Z u@IsNormalizedIsZero3475L$id3498X@Y @Z`߹@IsNormalizedIsZero3476L$id3499X@Y @Z@IsNormalizedIsZero3477L$id3500X`@Y๎@Z@IsNormalizedIsZero3478L$id3501X`@Y๎@Zֹ@IsNormalizedIsZero3479L$id3502X @Y๎@Z@IsNormalizedIsZero3480L$id3503X @Y๎@Z@)@IsNormalizedIsZero3481L$id3504X@Y๎@Zl`@IsNormalizedIsZero3482L$id3505X@Y๎@Z@IsNormalizedIsZero3483L$id3506X,h@Y๎@Z@IsNormalizedIsZero3484L$id3507X,h@Y๎@Z?@IsNormalizedIsZero3485L$id3508X(@Y๎@Z˺@IsNormalizedIsZero3486L$id3509X(@Y๎@Z@`@IsNormalizedIsZero3487L$id3510X@Y @Z@IsNormalizedIsZero3488L$id3511X@Y @Z`߹@IsNormalizedIsZero3489L$id3512Xo@Y๎@Z۶@IsNormalizedIsZero3490L$id3513Xo@Y๎@Z۶@IsNormalizedIsZero3491L$id3514Xo@Y๎@Z E@IsNormalizedIsZero3492L$id3515X@Y @Z@IsNormalizedIsZero3493L$id3516Xo@Y๎@Z۶@IsNormalizedIsZero3494L$id3517X@Y @Z`߹@IsNormalizedIsZero3495L$id3518X@Y`e@Z@IsNormalizedIsZero3496L$id3519X@Y`e@Z@IsNormalizedIsZero3497L$id3520X`Ǟ@Y๎@Z@@IsNormalizedIsZero3498L$id3521Xo@Y๎@Z۶@IsNormalizedIsZero3499L$id3522X`Ǟ@Y๎@Z@@IsNormalizedIsZero3500L$id3523X@Y`e@Z@IsNormalizedIsZero3501L$id3524X`_C@Y l@Z8@IsNormalizedIsZero3502L$id3525X`_C@Y l@Z8@IsNormalizedIsZero3503L$id3526X`@Y๎@Z@IsNormalizedIsZero3504L$id3527X`Ǟ@Y๎@Z@@IsNormalizedIsZero3505L$id3528X`@Y๎@Z@IsNormalizedIsZero3506L$id3529X`_C@Y l@Z8@IsNormalizedIsZero3507L$id3530X@Y@ZLj@IsNormalizedIsZero3508L$id3531X@Y@ZLj@IsNormalizedIsZero3509L$id3532X @Y๎@Z@)@IsNormalizedIsZero3510L$id3533X`@Y๎@Z@IsNormalizedIsZero3511L$id3534X @Y๎@Z@)@IsNormalizedIsZero3512L$id3535X@Y@ZLj@IsNormalizedIsZero3513L$id3536X l"@Y Mm@Zغ@IsNormalizedIsZero3514L$id3537X l"@Y Mm@Zغ@IsNormalizedIsZero3515L$id3538X@Y๎@Zl`@IsNormalizedIsZero3516L$id3539X @Y๎@Z@)@IsNormalizedIsZero3517L$id3540X@Y๎@Zl`@IsNormalizedIsZero3518L$id3541X l"@Y Mm@Zغ@IsNormalizedIsZero3519L$id3542X``@Y @Z %*@IsNormalizedIsZero3520L$id3543X``@Y @Z %*@IsNormalizedIsZero3521L$id3544X,h@Y๎@Z@IsNormalizedIsZero3522L$id3545X@Y๎@Zl`@IsNormalizedIsZero3523L$id3546X,h@Y๎@Z@IsNormalizedIsZero3524L$id3547X``@Y @Z %*@IsNormalizedIsZero3525L$id3548X@Y i@Z u@IsNormalizedIsZero3526L$id3549X@Y i@Z u@IsNormalizedIsZero3527L$id3550X(@Y๎@Z˺@IsNormalizedIsZero3528L$id3551X,h@Y๎@Z@IsNormalizedIsZero3529L$id3552X(@Y๎@Z˺@IsNormalizedIsZero3530L$id3553X@Y i@Z u@IsNormalizedIsZero3531L$id3554X@Y i@ZȻ@IsNormalizedIsZero3532L$id3555X@Y i@ZȻ@IsNormalizedIsZero3533L$id3556X(@Y๎@Z @IsNormalizedIsZero3534L$id3557X(@Y๎@Z˺@IsNormalizedIsZero3535L$id3558X(@Y๎@Z @IsNormalizedIsZero3536L$id3559X@Y i@ZȻ@IsNormalizedIsZero3537L$id3560X`L@Y @Zq@IsNormalizedIsZero3538L$id3561X`L@Y @Zq@IsNormalizedIsZero3539L$id3562X,h@Y๎@Z\@IsNormalizedIsZero3540L$id3563X(@Y๎@Z @IsNormalizedIsZero3541L$id3564X,h@Y๎@Z\@IsNormalizedIsZero3542L$id3565X`L@Y @Zq@IsNormalizedIsZero3543L$id3566X["@Y Mm@Z @IsNormalizedIsZero3544L$id3567X["@Y Mm@Z @IsNormalizedIsZero3545L$id3568X@Y๎@Z` @IsNormalizedIsZero3546L$id3569X,h@Y๎@Z\@IsNormalizedIsZero3547L$id3570X@Y๎@Z` @IsNormalizedIsZero3548L$id3571X["@Y Mm@Z @IsNormalizedIsZero3549L$id3572Xز@Y@Z@IsNormalizedIsZero3550L$id3573Xز@Y@Z@IsNormalizedIsZero3551L$id3574X @Y๎@Zr@IsNormalizedIsZero3552L$id3575X@Y๎@Z` @IsNormalizedIsZero3553L$id3576X @Y๎@Zr@IsNormalizedIsZero3554L$id3577Xز@Y@Z@IsNormalizedIsZero3555L$id3578XUC@Y l@Zd[@IsNormalizedIsZero3556L$id3579XUC@Y l@Zd[@IsNormalizedIsZero3557L$id3580X`@Y๎@Z@".@IsNormalizedIsZero3558L$id3581X @Y๎@Zr@IsNormalizedIsZero3559L$id3582X`@Y๎@Z@".@IsNormalizedIsZero3560L$id3583XUC@Y l@Zd[@IsNormalizedIsZero3561L$id3584X@@Y`e@Z@IsNormalizedIsZero3562L$id3585X@@Y`e@Z@IsNormalizedIsZero3563L$id3586X`Ǟ@Y๎@Z t@IsNormalizedIsZero3564L$id3587X`@Y๎@Z@".@IsNormalizedIsZero3565L$id3588X`Ǟ@Y๎@Z t@IsNormalizedIsZero3566L$id3589X@@Y`e@Z@IsNormalizedIsZero3567L$id3590X@Y @Z@IsNormalizedIsZero3568L$id3591X@Y @Z@IsNormalizedIsZero3569L$id3592Xo@Y๎@Z E@IsNormalizedIsZero3570L$id3593X`Ǟ@Y๎@Z t@IsNormalizedIsZero3571L$id3594X`Ǟ@Y๎@Z鳹@IsNormalizedIsZero3572L$id3595X`@Y๎@Zֹ@IsNormalizedIsZero3573L$id3596X`@Y@Z@Ĺ@IsNormalizedIsZero3574L$id3597X`Ǟ@Y@Z@IsNormalizedIsZero3575L$id3598X`@Y๎@Zֹ@IsNormalizedIsZero3576L$id3599X @Y๎@Z@IsNormalizedIsZero3577L$id3600X @Y@Zh@IsNormalizedIsZero3578L$id3601X`@Y@Z@Ĺ@IsNormalizedIsZero3579L$id3602X @Y๎@Z@IsNormalizedIsZero3580L$id3603X@Y๎@Z@IsNormalizedIsZero3581L$id3604X@Y@Z N @IsNormalizedIsZero3582L$id3605X @Y@Zh@IsNormalizedIsZero3583L$id3606X@Y๎@Z@IsNormalizedIsZero3584L$id3607X,h@Y๎@Z?@IsNormalizedIsZero3585L$id3608X,h@Y@Z -@IsNormalizedIsZero3586L$id3609X@Y@Z N @IsNormalizedIsZero3587L$id3610X,h@Y๎@Z?@IsNormalizedIsZero3588L$id3611X(@Y๎@Z@`@IsNormalizedIsZero3589L$id3612X(@Y@ZN@IsNormalizedIsZero3590L$id3613X,h@Y@Z -@IsNormalizedIsZero3591L$id3614X(@Y๎@Z {@IsNormalizedIsZero3592L$id3615X,h@Y๎@Z @IsNormalizedIsZero3593L$id3616X,h@Yׅ@Z+н@IsNormalizedIsZero3594L$id3617X,h@Yׅ@Z+н@IsNormalizedIsZero3595L$id3618X(@Y`څ@Z@v@IsNormalizedIsZero3596L$id3619X(@Y๎@Z {@IsNormalizedIsZero3597L$id3620X,h@Y๎@Z @IsNormalizedIsZero3598L$id3621X@Y๎@Z@@IsNormalizedIsZero3599L$id3622X@YӅ@ZW@IsNormalizedIsZero3600L$id3623X@YӅ@ZW@IsNormalizedIsZero3601L$id3624X,h@Yׅ@Z+н@IsNormalizedIsZero3602L$id3625X,h@Y๎@Z @IsNormalizedIsZero3603L$id3626X@Y๎@Z@@IsNormalizedIsZero3604L$id3627X @Y๎@Z@IsNormalizedIsZero3605L$id3628X @Y Ѕ@Zg1@IsNormalizedIsZero3606L$id3629X @Y Ѕ@Zg1@IsNormalizedIsZero3607L$id3630X@YӅ@ZW@IsNormalizedIsZero3608L$id3631X@Y๎@Z@@IsNormalizedIsZero3609L$id3632X @Y๎@Z@IsNormalizedIsZero3610L$id3633X`@Y๎@Z`%M@IsNormalizedIsZero3611L$id3634X`@Y̅@Z`xc@IsNormalizedIsZero3612L$id3635X`@Y̅@Z`xc@IsNormalizedIsZero3613L$id3636X @Y Ѕ@Zg1@IsNormalizedIsZero3614L$id3637X @Y๎@Z@IsNormalizedIsZero3615L$id3638X`@Y๎@Z`%M@IsNormalizedIsZero3616L$id3639X`Ǟ@Y๎@ZL@IsNormalizedIsZero3617L$id3640X`Ǟ@YɅ@Z@IsNormalizedIsZero3618L$id3641X`Ǟ@YɅ@Z@IsNormalizedIsZero3619L$id3642X`@Y̅@Z`xc@IsNormalizedIsZero3620L$id3643X`@Y๎@Z`%M@IsNormalizedIsZero3621L$id3644X`Ǟ@Y๎@ZL@IsNormalizedIsZero3622L$id3645Xo@Y๎@ZI@IsNormalizedIsZero3623L$id3646X`pn@Y (@Z`]@IsNormalizedIsZero3624L$id3647X`pn@Y (@Z`]@IsNormalizedIsZero3625L$id3648X`Ǟ@YɅ@Z@IsNormalizedIsZero3626L$id3649X`Ǟ@Y๎@ZL@IsNormalizedIsZero3627L$id3650Xo@Y๎@Z鳹@IsNormalizedIsZero3628L$id3651X`Ǟ@Y๎@Z鳹@IsNormalizedIsZero3629L$id3652X`Ǟ@Y@Z@IsNormalizedIsZero3630L$id3653X`Ǟ@Y@Z@IsNormalizedIsZero3631L$id3654Xon@Y @Z A@IsNormalizedIsZero3632L$id3655Xo@Y๎@Z鳹@IsNormalizedIsZeroTextureCoordinatesF0A$id3656X?Y?IsNormalizedIsZero1A$id3657X?Y?IsNormalizedIsZero2A$id3658X`ff?Y?IsNormalizedIsZero3A$id3659X`ff?Y?IsNormalizedIsZero4A$id3660X?Y?IsNormalizedIsZero5A$id3661X?Y?IsNormalizedIsZero6A$id3662X?Y?IsNormalizedIsZero7A$id3663X?Y?IsNormalizedIsZero8A$id3664X`ff?Y?IsNormalizedIsZero9A$id3665X`ff?Y?IsNormalizedIsZero10A$id3666X@33?Y?IsNormalizedIsZero11A$id3667X@33?Y?IsNormalizedIsZero12A$id3668X?Y?IsNormalizedIsZero13A$id3669X?Y?IsNormalizedIsZero14A$id3670X?Y?IsNormalizedIsZero15A$id3671X?Y?IsNormalizedIsZero16A$id3672X@33?Y?IsNormalizedIsZero17A$id3673X@33?Y?IsNormalizedIsZero18A$id3674X?Y?IsNormalizedIsZero19A$id3675X?Y?IsNormalizedIsZero20A$id3676X?Y?IsNormalizedIsZero21A$id3677X?Y?IsNormalizedIsZero22A$id3678X`ff?Y?IsNormalizedIsZero23A$id3679X`ff?Y?IsNormalizedIsZero24A$id3680X?Y?IsNormalizedIsZero25A$id3681X?Y?IsNormalizedIsZero26A$id3682X?Y?IsNormalizedIsZero27A$id3683X?Y?IsNormalizedIsZero28A$id3684X`ff?Y?IsNormalizedIsZero29A$id3685X`ff?Y?IsNormalizedIsZero30A$id3686X@33?Y?IsNormalizedIsZero31A$id3687X@33?Y?IsNormalizedIsZero32A$id3688X?Y?IsNormalizedIsZero33A$id3689X?Y?IsNormalizedIsZero34A$id3690X?Y?IsNormalizedIsZero35A$id3691X?Y?IsNormalizedIsZero36A$id3692X?Y?IsNormalizedIsZero37A$id3693X?Y?IsNormalizedIsZero38A$id3694X?Y?IsNormalizedIsZero39A$id3695X@33?Y?IsNormalizedIsZero40A$id3696X@33?Y?IsNormalizedIsZero41A$id3697X?Y?IsNormalizedIsZero42A$id3698X?Y?IsNormalizedIsZero43A$id3699X?Y?IsNormalizedIsZero44A$id3700X?Y@?IsNormalizedIsZero45A$id3701X@33?Y?IsNormalizedIsZero46A$id3702X@33?Y?IsNormalizedIsZero47A$id3703X?Y?IsNormalizedIsZero48A$id3704X?Y`?IsNormalizedIsZero49A$id3705X`ff?Y?IsNormalizedIsZero50A$id3706X`ff?Y?IsNormalizedIsZero51A$id3707X?Y?IsNormalizedIsZero52A$id3708X?Y@?IsNormalizedIsZero53A$id3709X?Y?IsNormalizedIsZero54A$id3710X?Y?IsNormalizedIsZero55A$id3711X@33?Y?IsNormalizedIsZero56A$id3712X@33?Y ?IsNormalizedIsZero57A$id3713X?Y ?IsNormalizedIsZero58A$id3714X?Y?IsNormalizedIsZero59A$id3715X?YIsNormalizedIsZero60A$id3716X?Y?IsNormalizedIsZero61A$id3717XY?IsNormalizedIsZero62A$id3718XYIsNormalizedIsZero63A$id3719X@33?YIsNormalizedIsZero64A$id3720X@33?Y?IsNormalizedIsZero65A$id3721X?Y?IsNormalizedIsZero66A$id3722X?YIsNormalizedIsZero67A$id3723X?YIsNormalizedIsZero68A$id3724X?Y?IsNormalizedIsZero69A$id3725X?Y?IsNormalizedIsZero70A$id3726X?YIsNormalizedIsZero71A$id3727X`ff?YIsNormalizedIsZero72A$id3728X`ff?Y?IsNormalizedIsZero73A$id3729X@33?Y?IsNormalizedIsZero74A$id3730X@33?YIsNormalizedIsZero75A$id3731X?YIsNormalizedIsZero76A$id3732X?Y?IsNormalizedIsZero77A$id3733X?Y?IsNormalizedIsZero78A$id3734X?YIsNormalizedIsZero79A$id3735X?YIsNormalizedIsZero80A$id3736X?Y?IsNormalizedIsZero81A$id3737X?Y?IsNormalizedIsZero82A$id3738X?YIsNormalizedIsZero83A$id3739X?YIsNormalizedIsZero84A$id3740X?Y?IsNormalizedIsZero85A$id3741X@33?Y?IsNormalizedIsZero86A$id3742X@33?YIsNormalizedIsZero87A$id3743X?YIsNormalizedIsZero88A$id3744X?Y?IsNormalizedIsZero89A$id3745X`ff?Y?IsNormalizedIsZero90A$id3746X`ff?YIsNormalizedIsZero91A$id3747X@33?YIsNormalizedIsZero92A$id3748X@33?Y?IsNormalizedIsZero93A$id3749X?Y?IsNormalizedIsZero94A$id3750X?YIsNormalizedIsZero95A$id3751X`ff?YIsNormalizedIsZero96A$id3752X`ff?Y?IsNormalizedIsZero97A$id3753X?Y?IsNormalizedIsZero98A$id3754X?YIsNormalizedIsZero99A$id3755X?YIsNormalizedIsZero100A$id3756X?Y?IsNormalizedIsZero101A$id3757X?Y?IsNormalizedIsZero102A$id3758X?YIsNormalizedIsZero103A$id3759X`ff?YIsNormalizedIsZero104A$id3760X`ff?Y?IsNormalizedIsZero105A$id3761X?Y?IsNormalizedIsZero106A$id3762X?YIsNormalizedIsZero107A$id3763X?YIsNormalizedIsZero108A$id3764X?Y?IsNormalizedIsZero109A$id3765X@33?Y?IsNormalizedIsZero110A$id3766X@33?YIsNormalizedIsZero111A$id3767X?YIsNormalizedIsZero112A$id3768X?Y?IsNormalizedIsZero113A$id3769X?Y?IsNormalizedIsZero114A$id3770X?YIsNormalizedIsZero115A$id3771X`ff?YIsNormalizedIsZero116A$id3772X@33?YIsNormalizedIsZero117A$id3773X@33?Y?IsNormalizedIsZero118A$id3774X`ff?Y?IsNormalizedIsZero119A$id3775X?YIsNormalizedIsZero120A$id3776X?YIsNormalizedIsZero121A$id3777X?Y?IsNormalizedIsZero122A$id3778X?Y?IsNormalizedIsZero123A$id3779X?YIsNormalizedIsZero124A$id3780X`ff?YIsNormalizedIsZero125A$id3781X`ff?Y?IsNormalizedIsZero126A$id3782X?Y?IsNormalizedIsZero127A$id3783X@33?YIsNormalizedIsZero128A$id3784X?YIsNormalizedIsZero129A$id3785X?Y?IsNormalizedIsZero130A$id3786X@33?Y?IsNormalizedIsZero131A$id3787X?YIsNormalizedIsZero132A$id3788X?YIsNormalizedIsZero133A$id3789X?Y?IsNormalizedIsZero134A$id3790X?Y?IsNormalizedIsZero135A$id3791X`ff?YIsNormalizedIsZero136A$id3792X@33?YIsNormalizedIsZero137A$id3793X@33?Y?IsNormalizedIsZero138A$id3794X`ff?Y?IsNormalizedIsZero139A$id3795X`ff?Y?IsNormalizedIsZero140A$id3796X@33?Y?IsNormalizedIsZero141A$id3797X@33?Y?IsNormalizedIsZero142A$id3798X`ff?Y?IsNormalizedIsZero143A$id3799X?YVU?IsNormalizedIsZero144A$id3800X@33?YVU?IsNormalizedIsZero145A$id3801X@33?Y?IsNormalizedIsZero146A$id3802X?Y?IsNormalizedIsZero147A$id3803X?Y?IsNormalizedIsZero148A$id3804X@33?Y?IsNormalizedIsZero149A$id3805X@33?YVU?IsNormalizedIsZero150A$id3806X?YVU?IsNormalizedIsZero151A$id3807X?Y?IsNormalizedIsZero152A$id3808X@33?Y?IsNormalizedIsZero153A$id3809X@33?Y?IsNormalizedIsZero154A$id3810X?Y?IsNormalizedIsZero155A$id3811X?YVU?IsNormalizedIsZero156A$id3812X@33?YVU?IsNormalizedIsZero157A$id3813X@33?Y?IsNormalizedIsZero158A$id3814X?Y?IsNormalizedIsZero159A$id3815X?Y?IsNormalizedIsZero160A$id3816X@33?Y?IsNormalizedIsZero161A$id3817X@33?YVU?IsNormalizedIsZero162A$id3818X?YVU?IsNormalizedIsZero163A$id3819X?Y?IsNormalizedIsZero164A$id3820X?Y?IsNormalizedIsZero165A$id3821X`ff?YVU?IsNormalizedIsZero166A$id3822X?YVU?IsNormalizedIsZero167A$id3823X?Y?IsNormalizedIsZero168A$id3824X`ff?Y?IsNormalizedIsZero169A$id3825X`ff?Y?IsNormalizedIsZero170A$id3826X?Y?IsNormalizedIsZero171A$id3827X?YVU?IsNormalizedIsZero172A$id3828X`ff?YVU?IsNormalizedIsZero173A$id3829X`ff?Y?IsNormalizedIsZero174A$id3830X?Y?IsNormalizedIsZero175A$id3831X?Y?IsNormalizedIsZero176A$id3832X`ff?Y?IsNormalizedIsZero177A$id3833X`ff?YVU?IsNormalizedIsZero178A$id3834X?YVU?IsNormalizedIsZero179A$id3835X?Y?IsNormalizedIsZero180A$id3836X`ff?Y?IsNormalizedIsZero181A$id3837X?Y?IsNormalizedIsZero182A$id3838X?YVU?IsNormalizedIsZero183A$id3839X`ff?YVU?IsNormalizedIsZero184A$id3840X`ff?Y?IsNormalizedIsZero185A$id3841X?Y?IsNormalizedIsZero186A$id3842X?Y?IsNormalizedIsZero187A$id3843X?Y?IsNormalizedIsZero188A$id3844X?Y?IsNormalizedIsZero189A$id3845X?YVU?IsNormalizedIsZero190A$id3846X?YVU?IsNormalizedIsZero191A$id3847X?Y?IsNormalizedIsZero192A$id3848X?Y?IsNormalizedIsZero193A$id3849X?Y?IsNormalizedIsZero194A$id3850X?Y?IsNormalizedIsZero195A$id3851X?YVU?IsNormalizedIsZero196A$id3852X?YVU?IsNormalizedIsZero197A$id3853X?Y?IsNormalizedIsZero198A$id3854X?Y?IsNormalizedIsZero199A$id3855X?Y?IsNormalizedIsZero200A$id3856X?Y?IsNormalizedIsZero201A$id3857X?YVU?IsNormalizedIsZero202A$id3858X?YVU?IsNormalizedIsZero203A$id3859X?Y?IsNormalizedIsZero204A$id3860X?Y?IsNormalizedIsZero205A$id3861X?Y?IsNormalizedIsZero206A$id3862X?YVU?IsNormalizedIsZero207A$id3863X?YVU?IsNormalizedIsZero208A$id3864X?Y?IsNormalizedIsZero209A$id3865X@33?Y?IsNormalizedIsZero210A$id3866X`ff?Y?IsNormalizedIsZero211A$id3867X`ff?Y?IsNormalizedIsZero212A$id3868X@33?Y?IsNormalizedIsZero213A$id3869X@33?YVU?IsNormalizedIsZero214A$id3870X`ff?YVU?IsNormalizedIsZero215A$id3871X`ff?Y?IsNormalizedIsZero216A$id3872X@33?Y?IsNormalizedIsZero217A$id3873X@33?Y?IsNormalizedIsZero218A$id3874X`ff?Y?IsNormalizedIsZero219A$id3875X`ff?YVU?IsNormalizedIsZero220A$id3876X@33?YVU?IsNormalizedIsZero221A$id3877X@33?Y?IsNormalizedIsZero222A$id3878X`ff?Y?IsNormalizedIsZero223A$id3879X`ff?Y?IsNormalizedIsZero224A$id3880X@33?Y?IsNormalizedIsZero225A$id3881X@33?YVU?IsNormalizedIsZero226A$id3882X`ff?YVU?IsNormalizedIsZero227A$id3883X`ff?Y?IsNormalizedIsZero228A$id3884X@33?Y?IsNormalizedIsZero229A$id3885X`ff?Y?IsNormalizedIsZero230A$id3886X`ff?YVU?IsNormalizedIsZero231A$id3887X@33?YVU?IsNormalizedIsZero232A$id3888X@33?Y?IsNormalizedIsZero233A$id3889X?Y?IsNormalizedIsZero234A$id3890X?Y?IsNormalizedIsZero235A$id3891X?Y?IsNormalizedIsZero236A$id3892X?Y?IsNormalizedIsZero237A$id3893X?YVU?IsNormalizedIsZero238A$id3894X?YVU?IsNormalizedIsZero239A$id3895X?Y?IsNormalizedIsZero240A$id3896X?Y?IsNormalizedIsZero241A$id3897X?Y?IsNormalizedIsZero242A$id3898X?Y?IsNormalizedIsZero243A$id3899X?YVU?IsNormalizedIsZero244A$id3900X?YVU?IsNormalizedIsZero245A$id3901X?Y?IsNormalizedIsZero246A$id3902X?Y?IsNormalizedIsZero247A$id3903X?Y?IsNormalizedIsZero248A$id3904X?Y?IsNormalizedIsZero249A$id3905X?YVU?IsNormalizedIsZero250A$id3906X?YVU?IsNormalizedIsZero251A$id3907X?Y?IsNormalizedIsZero252A$id3908X?Y?IsNormalizedIsZero253A$id3909X?Y?IsNormalizedIsZero254A$id3910X?YVU?IsNormalizedIsZero255A$id3911X?YVU?IsNormalizedIsZero256A$id3912X?Y?IsNormalizedIsZero257A$id3913X?Y?IsNormalizedIsZero258A$id3914X@33?Y?IsNormalizedIsZero259A$id3915X@33?Y?IsNormalizedIsZero260A$id3916X?Y?IsNormalizedIsZero261A$id3917X?YVU?IsNormalizedIsZero262A$id3918X@33?YVU?IsNormalizedIsZero263A$id3919X@33?Y?IsNormalizedIsZero264A$id3920X?Y?IsNormalizedIsZero265A$id3921X?Y?IsNormalizedIsZero266A$id3922X@33?Y?IsNormalizedIsZero267A$id3923X@33?YVU?IsNormalizedIsZero268A$id3924X?YVU?IsNormalizedIsZero269A$id3925X?Y?IsNormalizedIsZero270A$id3926X@33?Y?IsNormalizedIsZero271A$id3927X@33?Y?IsNormalizedIsZero272A$id3928X?Y?IsNormalizedIsZero273A$id3929X?YVU?IsNormalizedIsZero274A$id3930X@33?YVU?IsNormalizedIsZero275A$id3931X@33?Y?IsNormalizedIsZero276A$id3932X?Y?IsNormalizedIsZero277A$id3933X@33?Y?IsNormalizedIsZero278A$id3934X@33?YVU?IsNormalizedIsZero279A$id3935X?YVU?IsNormalizedIsZero280A$id3936X?Y?IsNormalizedIsZero281A$id3937X?Y?IsNormalizedIsZero282A$id3938X?Y?IsNormalizedIsZero283A$id3939X`ff?Y?IsNormalizedIsZero284A$id3940X`ff?Y?IsNormalizedIsZero285A$id3941X?YVU?IsNormalizedIsZero286A$id3942X?Y?IsNormalizedIsZero287A$id3943X`ff?Y?IsNormalizedIsZero288A$id3944X`ff?YVU?IsNormalizedIsZero289A$id3945X?Y?IsNormalizedIsZero290A$id3946X?YVU?IsNormalizedIsZero291A$id3947X`ff?YVU?IsNormalizedIsZero292A$id3948X`ff?Y?IsNormalizedIsZero293A$id3949X`ff?Y?IsNormalizedIsZero294A$id3950X?Y?IsNormalizedIsZero295A$id3951X?Y?IsNormalizedIsZero296A$id3952X`ff?Y?IsNormalizedIsZero297A$id3953X`ff?YVU?IsNormalizedIsZero298A$id3954X?YVU?IsNormalizedIsZero299A$id3955X?Y?IsNormalizedIsZero300A$id3956X`ff?Y?IsNormalizedIsZero301A$id3957X?Y?IsNormalizedIsZero302A$id3958X?YVU?IsNormalizedIsZero303A$id3959X`ff?YVU?IsNormalizedIsZero304A$id3960X`ff?Y?IsNormalizedIsZero305A$id3961X?YVU?IsNormalizedIsZero306A$id3962X?Y?IsNormalizedIsZero307A$id3963X?Y?IsNormalizedIsZero308A$id3964X?YVU?IsNormalizedIsZero309A$id3965X?Y?IsNormalizedIsZero310A$id3966X?Y?IsNormalizedIsZero311A$id3967X?Y?IsNormalizedIsZero312A$id3968X?Y?IsNormalizedIsZero313A$id3969X?Y?IsNormalizedIsZero314A$id3970X?YVU?IsNormalizedIsZero315A$id3971X?YVU?IsNormalizedIsZero316A$id3972X?Y?IsNormalizedIsZero317A$id3973X?YVU?IsNormalizedIsZero318A$id3974X?Y?IsNormalizedIsZero319A$id3975X?Y?IsNormalizedIsZero320A$id3976X?YVU?IsNormalizedIsZero321A$id3977X?Y?IsNormalizedIsZero322A$id3978X?Y?IsNormalizedIsZero323A$id3979X?Y?IsNormalizedIsZero324A$id3980X?YVU?IsNormalizedIsZero325A$id3981X?YVU?IsNormalizedIsZero326A$id3982X?Y?IsNormalizedIsZero327A$id3983X@33?YVU?IsNormalizedIsZero328A$id3984X@33?Y?IsNormalizedIsZero329A$id3985X`ff?Y?IsNormalizedIsZero330A$id3986X`ff?YVU?IsNormalizedIsZero331A$id3987X@33?Y?IsNormalizedIsZero332A$id3988X@33?Y?IsNormalizedIsZero333A$id3989X`ff?Y?IsNormalizedIsZero334A$id3990X`ff?Y?IsNormalizedIsZero335A$id3991X@33?Y?IsNormalizedIsZero336A$id3992X@33?YVU?IsNormalizedIsZero337A$id3993X`ff?YVU?IsNormalizedIsZero338A$id3994X`ff?Y?IsNormalizedIsZero339A$id3995X@33?YVU?IsNormalizedIsZero340A$id3996X@33?Y?IsNormalizedIsZero341A$id3997X`ff?Y?IsNormalizedIsZero342A$id3998X`ff?YVU?IsNormalizedIsZero343A$id3999X`ff?Y?IsNormalizedIsZero344A$id4000X@33?Y?IsNormalizedIsZero345A$id4001X`ff?Y?IsNormalizedIsZero346A$id4002X`ff?YVU?IsNormalizedIsZero347A$id4003X@33?YVU?IsNormalizedIsZero348A$id4004X@33?Y?IsNormalizedIsZero349A$id4005X?YVU?IsNormalizedIsZero350A$id4006X?Y?IsNormalizedIsZero351A$id4007X?Y?IsNormalizedIsZero352A$id4008X?YVU?IsNormalizedIsZero353A$id4009X?Y?IsNormalizedIsZero354A$id4010X?Y?IsNormalizedIsZero355A$id4011X?Y?IsNormalizedIsZero356A$id4012X?Y?IsNormalizedIsZero357A$id4013X?Y?IsNormalizedIsZero358A$id4014X?YVU?IsNormalizedIsZero359A$id4015X?YVU?IsNormalizedIsZero360A$id4016X?Y?IsNormalizedIsZero361A$id4017X?YVU?IsNormalizedIsZero362A$id4018X?Y?IsNormalizedIsZero363A$id4019X?Y?IsNormalizedIsZero364A$id4020X?YVU?IsNormalizedIsZero365A$id4021X?Y?IsNormalizedIsZero366A$id4022X?Y?IsNormalizedIsZero367A$id4023X?Y?IsNormalizedIsZero368A$id4024X?Y?IsNormalizedIsZero369A$id4025X?YVU?IsNormalizedIsZero370A$id4026X?YVU?IsNormalizedIsZero371A$id4027X?YVU?IsNormalizedIsZero372A$id4028X?Y?IsNormalizedIsZero373A$id4029X`ff?Y?IsNormalizedIsZero374A$id4030X`ff?YVU?IsNormalizedIsZero375A$id4031X?Y?IsNormalizedIsZero376A$id4032X?Y?IsNormalizedIsZero377A$id4033X`ff?Y?IsNormalizedIsZero378A$id4034X`ff?Y?IsNormalizedIsZero379A$id4035X?Y?IsNormalizedIsZero380A$id4036X?YVU?IsNormalizedIsZero381A$id4037X`ff?YVU?IsNormalizedIsZero382A$id4038X`ff?Y?IsNormalizedIsZero383A$id4039X?YVU?IsNormalizedIsZero384A$id4040X?Y?IsNormalizedIsZero385A$id4041X`ff?Y?IsNormalizedIsZero386A$id4042X`ff?YVU?IsNormalizedIsZero387A$id4043X`ff?Y?IsNormalizedIsZero388A$id4044X?Y?IsNormalizedIsZero389A$id4045X`ff?Y?IsNormalizedIsZero390A$id4046X`ff?YVU?IsNormalizedIsZero391A$id4047X?YVU?IsNormalizedIsZero392A$id4048X?Y?IsNormalizedIsZero393A$id4049X@33?Y?IsNormalizedIsZero394A$id4050X@33?Y?IsNormalizedIsZero395A$id4051X?Y?IsNormalizedIsZero396A$id4052X?Y?IsNormalizedIsZero397A$id4053X@33?YVU?IsNormalizedIsZero398A$id4054X@33?Y?IsNormalizedIsZero399A$id4055X?Y?IsNormalizedIsZero400A$id4056X?YVU?IsNormalizedIsZero401A$id4057X@33?Y?IsNormalizedIsZero402A$id4058X@33?YVU?IsNormalizedIsZero403A$id4059X?YVU?IsNormalizedIsZero404A$id4060X?Y?IsNormalizedIsZero405A$id4061X@33?Y?IsNormalizedIsZero406A$id4062X@33?Y?IsNormalizedIsZero407A$id4063X?Y?IsNormalizedIsZero408A$id4064X?Y?IsNormalizedIsZero409A$id4065X@33?YVU?IsNormalizedIsZero410A$id4066X@33?Y?IsNormalizedIsZero411A$id4067X?Y?IsNormalizedIsZero412A$id4068X?YVU?IsNormalizedIsZero413A$id4069X@33?Y?IsNormalizedIsZero414A$id4070X@33?YVU?IsNormalizedIsZero415A$id4071X?YVU?IsNormalizedIsZero416A$id4072X?Y?IsNormalizedIsZero417A$id4073X?Y?IsNormalizedIsZero418A$id4074X?Y?IsNormalizedIsZero419A$id4075X?Y?IsNormalizedIsZero420A$id4076X?Y?IsNormalizedIsZero421A$id4077X?YVU?IsNormalizedIsZero422A$id4078X?YVU?IsNormalizedIsZero423A$id4079X?Y?IsNormalizedIsZero424A$id4080X?Y?IsNormalizedIsZero425A$id4081X?Y?IsNormalizedIsZero426A$id4082X?Y?IsNormalizedIsZero427A$id4083X?YVU?IsNormalizedIsZero428A$id4084X?YVU?IsNormalizedIsZero429A$id4085X?Y?IsNormalizedIsZero430A$id4086X?Y?IsNormalizedIsZero431A$id4087X?Y?IsNormalizedIsZero432A$id4088X?Y?IsNormalizedIsZero433A$id4089X?YVU?IsNormalizedIsZero434A$id4090X?YVU?IsNormalizedIsZero435A$id4091X?Y?IsNormalizedIsZero436A$id4092X?Y?IsNormalizedIsZero437A$id4093X?Y?IsNormalizedIsZero438A$id4094X?YVU?IsNormalizedIsZero439A$id4095X?YVU?IsNormalizedIsZero440A$id4096X?Y?IsNormalizedIsZero441A$id4097X`ff?Y?IsNormalizedIsZero442A$id4098X?Y?IsNormalizedIsZero443A$id4099X?Y?IsNormalizedIsZero444A$id4100X`ff?Y?IsNormalizedIsZero445A$id4101X`ff?YVU?IsNormalizedIsZero446A$id4102X?YVU?IsNormalizedIsZero447A$id4103X?Y?IsNormalizedIsZero448A$id4104X`ff?Y?IsNormalizedIsZero449A$id4105X`ff?Y?IsNormalizedIsZero450A$id4106X?Y?IsNormalizedIsZero451A$id4107X?YVU?IsNormalizedIsZero452A$id4108X`ff?YVU?IsNormalizedIsZero453A$id4109X`ff?Y?IsNormalizedIsZero454A$id4110X?Y?IsNormalizedIsZero455A$id4111X?Y?IsNormalizedIsZero456A$id4112X`ff?Y?IsNormalizedIsZero457A$id4113X`ff?YVU?IsNormalizedIsZero458A$id4114X?YVU?IsNormalizedIsZero459A$id4115X?Y?IsNormalizedIsZero460A$id4116X`ff?Y?IsNormalizedIsZero461A$id4117X`ff?Y?IsNormalizedIsZero462A$id4118X?Y?IsNormalizedIsZero463A$id4119X?YVU?IsNormalizedIsZero464A$id4120X`ff?YVU?IsNormalizedIsZero465A$id4121X@33?Y?IsNormalizedIsZero466A$id4122X?Y?IsNormalizedIsZero467A$id4123X?Y?IsNormalizedIsZero468A$id4124X@33?Y?IsNormalizedIsZero469A$id4125X@33?YVU?IsNormalizedIsZero470A$id4126X?YVU?IsNormalizedIsZero471A$id4127X?Y?IsNormalizedIsZero472A$id4128X@33?Y?IsNormalizedIsZero473A$id4129X@33?Y?IsNormalizedIsZero474A$id4130X?Y?IsNormalizedIsZero475A$id4131X?YVU?IsNormalizedIsZero476A$id4132X@33?YVU?IsNormalizedIsZero477A$id4133X@33?Y?IsNormalizedIsZero478A$id4134X?Y?IsNormalizedIsZero479A$id4135X?Y?IsNormalizedIsZero480A$id4136X@33?Y?IsNormalizedIsZero481A$id4137X@33?YVU?IsNormalizedIsZero482A$id4138X?YVU?IsNormalizedIsZero483A$id4139X?Y?IsNormalizedIsZero484A$id4140X@33?Y?IsNormalizedIsZero485A$id4141X@33?Y?IsNormalizedIsZero486A$id4142X?Y?IsNormalizedIsZero487A$id4143X?YVU?IsNormalizedIsZero488A$id4144X@33?YVU?IsNormalizedIsZero489A$id4145X?Y?IsNormalizedIsZero490A$id4146X?Y?IsNormalizedIsZero491A$id4147X?Y?IsNormalizedIsZero492A$id4148X?Y?IsNormalizedIsZero493A$id4149X?YVU?IsNormalizedIsZero494A$id4150X?YVU?IsNormalizedIsZero495A$id4151X?Y?IsNormalizedIsZero496A$id4152X?Y?IsNormalizedIsZero497A$id4153X?Y?IsNormalizedIsZero498A$id4154X?Y?IsNormalizedIsZero499A$id4155X?YVU?IsNormalizedIsZero500A$id4156X?YVU?IsNormalizedIsZero501A$id4157X?Y?IsNormalizedIsZero502A$id4158X?Y?IsNormalizedIsZero503A$id4159X?Y?IsNormalizedIsZero504A$id4160X?Y?IsNormalizedIsZero505A$id4161X?YVU?IsNormalizedIsZero506A$id4162X?YVU?IsNormalizedIsZero507A$id4163X?Y?IsNormalizedIsZero508A$id4164X?Y?IsNormalizedIsZero509A$id4165X?Y?IsNormalizedIsZero510A$id4166X?Y?IsNormalizedIsZero511A$id4167X?YVU?IsNormalizedIsZero512A$id4168X?YVU?IsNormalizedIsZero513A$id4169X?Y?IsNormalizedIsZero514A$id4170X`ff?Y?IsNormalizedIsZero515A$id4171X`ff?Y?IsNormalizedIsZero516A$id4172X?Y?IsNormalizedIsZero517A$id4173X?YVU?IsNormalizedIsZero518A$id4174X`ff?YVU?IsNormalizedIsZero519A$id4175X`ff?Y?IsNormalizedIsZero520A$id4176X?Y?IsNormalizedIsZero521A$id4177X?Y?IsNormalizedIsZero522A$id4178X`ff?Y?IsNormalizedIsZero523A$id4179X`ff?YVU?IsNormalizedIsZero524A$id4180X?YVU?IsNormalizedIsZero525A$id4181X?Y?IsNormalizedIsZero526A$id4182X`ff?Y?IsNormalizedIsZero527A$id4183X`ff?Y?IsNormalizedIsZero528A$id4184X?Y?IsNormalizedIsZero529A$id4185X?YVU?IsNormalizedIsZero530A$id4186X`ff?YVU?IsNormalizedIsZero531A$id4187X`ff?Y?IsNormalizedIsZero532A$id4188X?Y?IsNormalizedIsZero533A$id4189X?Y?IsNormalizedIsZero534A$id4190X`ff?Y?IsNormalizedIsZero535A$id4191X`ff?YVU?IsNormalizedIsZero536A$id4192X?YVU?IsNormalizedIsZero537A$id4193X@33?Y?IsNormalizedIsZero538A$id4194X?Y?IsNormalizedIsZero539A$id4195X?Y?IsNormalizedIsZero540A$id4196X@33?Y?IsNormalizedIsZero541A$id4197X@33?YVU?IsNormalizedIsZero542A$id4198X?YVU?IsNormalizedIsZero543A$id4199X?Y?IsNormalizedIsZero544A$id4200X@33?Y?IsNormalizedIsZero545A$id4201X@33?Y?IsNormalizedIsZero546A$id4202X?Y?IsNormalizedIsZero547A$id4203X?YVU?IsNormalizedIsZero548A$id4204X@33?YVU?IsNormalizedIsZero549A$id4205X@33?Y?IsNormalizedIsZero550A$id4206X?Y?IsNormalizedIsZero551A$id4207X?Y?IsNormalizedIsZero552A$id4208X@33?Y?IsNormalizedIsZero553A$id4209X@33?YVU?IsNormalizedIsZero554A$id4210X?YVU?IsNormalizedIsZero555A$id4211X?Y?IsNormalizedIsZero556A$id4212X@33?Y?IsNormalizedIsZero557A$id4213X?Y?IsNormalizedIsZero558A$id4214X?YVU?IsNormalizedIsZero559A$id4215X@33?YVU?IsNormalizedIsZero560A$id4216X@33?Y?IsNormalizedIsZero561A$id4217X?Y?IsNormalizedIsZero562A$id4218X@33?Y?IsNormalizedIsZero563A$id4219X@33?Y?IsNormalizedIsZero564A$id4220X?Y?IsNormalizedIsZero565A$id4221X?YVU?IsNormalizedIsZero566A$id4222X@33?YVU?IsNormalizedIsZero567A$id4223X@33?Y?IsNormalizedIsZero568A$id4224X?Y?IsNormalizedIsZero569A$id4225X?Y?IsNormalizedIsZero570A$id4226X@33?Y?IsNormalizedIsZero571A$id4227X@33?YVU?IsNormalizedIsZero572A$id4228X?YVU?IsNormalizedIsZero573A$id4229X?Y?IsNormalizedIsZero574A$id4230X@33?Y?IsNormalizedIsZero575A$id4231X@33?Y?IsNormalizedIsZero576A$id4232X?Y?IsNormalizedIsZero577A$id4233X@33?YVU?IsNormalizedIsZero578A$id4234X@33?Y?IsNormalizedIsZero579A$id4235X?Y?IsNormalizedIsZero580A$id4236X?YVU?IsNormalizedIsZero581A$id4237X@33?Y?IsNormalizedIsZero582A$id4238X@33?YVU?IsNormalizedIsZero583A$id4239X?YVU?IsNormalizedIsZero584A$id4240X?Y?IsNormalizedIsZero585A$id4241X?Y?IsNormalizedIsZero586A$id4242X?Y?IsNormalizedIsZero587A$id4243X?Y?IsNormalizedIsZero588A$id4244X?Y?IsNormalizedIsZero589A$id4245X?YVU?IsNormalizedIsZero590A$id4246X?YVU?IsNormalizedIsZero591A$id4247X?Y?IsNormalizedIsZero592A$id4248X?Y?IsNormalizedIsZero593A$id4249X?Y?IsNormalizedIsZero594A$id4250X?Y?IsNormalizedIsZero595A$id4251X?YVU?IsNormalizedIsZero596A$id4252X?YVU?IsNormalizedIsZero597A$id4253X?Y?IsNormalizedIsZero598A$id4254X?Y?IsNormalizedIsZero599A$id4255X?Y?IsNormalizedIsZero600A$id4256X?Y?IsNormalizedIsZero601A$id4257X?YVU?IsNormalizedIsZero602A$id4258X?Y?IsNormalizedIsZero603A$id4259X?Y?IsNormalizedIsZero604A$id4260X?YVU?IsNormalizedIsZero605A$id4261X?Y?IsNormalizedIsZero606A$id4262X?YVU?IsNormalizedIsZero607A$id4263X?YVU?IsNormalizedIsZero608A$id4264X?Y?IsNormalizedIsZero609A$id4265X?Y?IsNormalizedIsZero610A$id4266X?Y?IsNormalizedIsZero611A$id4267X?YVU?IsNormalizedIsZero612A$id4268X?YVU?IsNormalizedIsZero613A$id4269X?Y?IsNormalizedIsZero614A$id4270X?Y?IsNormalizedIsZero615A$id4271X?Y?IsNormalizedIsZero616A$id4272X?Y?IsNormalizedIsZero617A$id4273X?YVU?IsNormalizedIsZero618A$id4274X?YVU?IsNormalizedIsZero619A$id4275X?Y?IsNormalizedIsZero620A$id4276X?Y?IsNormalizedIsZero621A$id4277X?Y?IsNormalizedIsZero622A$id4278X?Y?IsNormalizedIsZero623A$id4279X?YVU?IsNormalizedIsZero624A$id4280X?Y?IsNormalizedIsZero625A$id4281X?Y?IsNormalizedIsZero626A$id4282X?YVU?IsNormalizedIsZero627A$id4283X?Y?IsNormalizedIsZero628A$id4284X?YVU?IsNormalizedIsZero629A$id4285X?YVU?IsNormalizedIsZero630A$id4286X?Y?IsNormalizedIsZero631A$id4287X?Y?IsNormalizedIsZero632A$id4288X@33?Y?IsNormalizedIsZero633A$id4289X@33?YVU?IsNormalizedIsZero634A$id4290X?YVU?IsNormalizedIsZero635A$id4291X?Y?IsNormalizedIsZero636A$id4292X@33?Y?IsNormalizedIsZero637A$id4293X@33?Y?IsNormalizedIsZero638A$id4294X?Y?IsNormalizedIsZero639A$id4295X?YVU?IsNormalizedIsZero640A$id4296X@33?YVU?IsNormalizedIsZero641A$id4297X@33?Y?IsNormalizedIsZero642A$id4298X?Y?IsNormalizedIsZero643A$id4299X?Y?IsNormalizedIsZero644A$id4300X@33?Y?IsNormalizedIsZero645A$id4301X@33?YVU?IsNormalizedIsZero646A$id4302X?YVU?IsNormalizedIsZero647A$id4303X@33?Y?IsNormalizedIsZero648A$id4304X?Y?IsNormalizedIsZero649A$id4305X@33?Y?IsNormalizedIsZero650A$id4306X@33?YVU?IsNormalizedIsZero651A$id4307X?YVU?IsNormalizedIsZero652A$id4308X?Y?IsNormalizedIsZero653A$id4309X@33?Y?IsNormalizedIsZero654A$id4310X?Y?IsNormalizedIsZero655A$id4311X?YVU?IsNormalizedIsZero656A$id4312X@33?YVU?IsNormalizedIsZero657A$id4313X@33?Y?IsNormalizedIsZero658A$id4314X?Y?IsNormalizedIsZero659A$id4315X?Y?IsNormalizedIsZero660A$id4316X@33?Y?IsNormalizedIsZero661A$id4317X@33?YVU?IsNormalizedIsZero662A$id4318X?YVU?IsNormalizedIsZero663A$id4319X?Y?IsNormalizedIsZero664A$id4320X@33?Y?IsNormalizedIsZero665A$id4321X@33?Y?IsNormalizedIsZero666A$id4322X?Y?IsNormalizedIsZero667A$id4323X?YVU?IsNormalizedIsZero668A$id4324X@33?YVU?IsNormalizedIsZero669A$id4325X@33?Y?IsNormalizedIsZero670A$id4326X?Y?IsNormalizedIsZero671A$id4327X?Y?IsNormalizedIsZero672A$id4328X@33?Y?IsNormalizedIsZero673A$id4329X?YVU?IsNormalizedIsZero674A$id4330X@33?YVU?IsNormalizedIsZero675A$id4331X?Y?IsNormalizedIsZero676A$id4332X`ff?Y?IsNormalizedIsZero677A$id4333X`ff?YVU?IsNormalizedIsZero678A$id4334X?YVU?IsNormalizedIsZero679A$id4335X?Y?IsNormalizedIsZero680A$id4336X`ff?Y?IsNormalizedIsZero681A$id4337X`ff?Y?IsNormalizedIsZero682A$id4338X?Y?IsNormalizedIsZero683A$id4339X?YVU?IsNormalizedIsZero684A$id4340X`ff?YVU?IsNormalizedIsZero685A$id4341X`ff?Y?IsNormalizedIsZero686A$id4342X?Y?IsNormalizedIsZero687A$id4343X?Y?IsNormalizedIsZero688A$id4344X`ff?Y?IsNormalizedIsZero689A$id4345X`ff?YVU?IsNormalizedIsZero690A$id4346X?YVU?IsNormalizedIsZero691A$id4347X?Y?IsNormalizedIsZero692A$id4348X`ff?Y?IsNormalizedIsZero693A$id4349X`ff?Y?IsNormalizedIsZero694A$id4350X?Y?IsNormalizedIsZero695A$id4351X`ff?YVU?IsNormalizedIsZero696A$id4352X?YVU?IsNormalizedIsZero697A$id4353X?Y?IsNormalizedIsZero698A$id4354X?Y?IsNormalizedIsZero699A$id4355X?YVU?IsNormalizedIsZero700A$id4356X?YVU?IsNormalizedIsZero701A$id4357X?Y?IsNormalizedIsZero702A$id4358X?Y?IsNormalizedIsZero703A$id4359X?Y?IsNormalizedIsZero704A$id4360X?Y?IsNormalizedIsZero705A$id4361X?YVU?IsNormalizedIsZero706A$id4362X?YVU?IsNormalizedIsZero707A$id4363X?Y?IsNormalizedIsZero708A$id4364X?Y?IsNormalizedIsZero709A$id4365X?Y?IsNormalizedIsZero710A$id4366X?Y?IsNormalizedIsZero711A$id4367X?YVU?IsNormalizedIsZero712A$id4368X?YVU?IsNormalizedIsZero713A$id4369X?Y?IsNormalizedIsZero714A$id4370X?Y?IsNormalizedIsZero715A$id4371X?Y?IsNormalizedIsZero716A$id4372X?Y?IsNormalizedIsZero717A$id4373X?YVU?IsNormalizedIsZero718A$id4374X?YVU?IsNormalizedIsZero719A$id4375X@33?YVU?IsNormalizedIsZero720A$id4376X@33?Y?IsNormalizedIsZero721A$id4377X?Y?IsNormalizedIsZero722A$id4378X?YVU?IsNormalizedIsZero723A$id4379X@33?Y?IsNormalizedIsZero724A$id4380X@33?Y?IsNormalizedIsZero725A$id4381X?Y?IsNormalizedIsZero726A$id4382X?Y?IsNormalizedIsZero727A$id4383X@33?Y?IsNormalizedIsZero728A$id4384X@33?YVU?IsNormalizedIsZero729A$id4385X?YVU?IsNormalizedIsZero730A$id4386X?Y?IsNormalizedIsZero731A$id4387X@33?YVU?IsNormalizedIsZero732A$id4388X@33?Y?IsNormalizedIsZero733A$id4389X?Y?IsNormalizedIsZero734A$id4390X?YVU?IsNormalizedIsZero735A$id4391X@33?Y?IsNormalizedIsZero736A$id4392X@33?Y?IsNormalizedIsZero737A$id4393X?Y?IsNormalizedIsZero738A$id4394X?Y?IsNormalizedIsZero739A$id4395X?YVU?IsNormalizedIsZero740A$id4396X@33?YVU?IsNormalizedIsZero741A$id4397X`ff?YVU?IsNormalizedIsZero742A$id4398X`ff?Y?IsNormalizedIsZero743A$id4399X?Y?IsNormalizedIsZero744A$id4400X?YVU?IsNormalizedIsZero745A$id4401X`ff?Y?IsNormalizedIsZero746A$id4402X`ff?Y?IsNormalizedIsZero747A$id4403X?Y?IsNormalizedIsZero748A$id4404X?Y?IsNormalizedIsZero749A$id4405X`ff?Y?IsNormalizedIsZero750A$id4406X`ff?YVU?IsNormalizedIsZero751A$id4407X?YVU?IsNormalizedIsZero752A$id4408X?Y?IsNormalizedIsZero753A$id4409X`ff?YVU?IsNormalizedIsZero754A$id4410X`ff?Y?IsNormalizedIsZero755A$id4411X?Y?IsNormalizedIsZero756A$id4412X?YVU?IsNormalizedIsZero757A$id4413X?Y?IsNormalizedIsZero758A$id4414X`ff?Y?IsNormalizedIsZero759A$id4415X?Y?IsNormalizedIsZero760A$id4416X?YVU?IsNormalizedIsZero761A$id4417X`ff?YVU?IsNormalizedIsZero762A$id4418X`ff?Y?IsNormalizedIsZero763A$id4419X?Y?IsNormalizedIsZero764A$id4420X?Y?IsNormalizedIsZero765A$id4421X?Y?IsNormalizedIsZero766A$id4422X?Y?IsNormalizedIsZero767A$id4423X?YVU?IsNormalizedIsZero768A$id4424X?Y?IsNormalizedIsZero769A$id4425X?Y?IsNormalizedIsZero770A$id4426X?YVU?IsNormalizedIsZero771A$id4427X?Y?IsNormalizedIsZero772A$id4428X?YVU?IsNormalizedIsZero773A$id4429X?YVU?IsNormalizedIsZero774A$id4430X?Y?IsNormalizedIsZero775A$id4431X?Y?IsNormalizedIsZero776A$id4432X?Y?IsNormalizedIsZero777A$id4433X?Y?IsNormalizedIsZero778A$id4434X?Y?IsNormalizedIsZero779A$id4435X?YVU?IsNormalizedIsZero780A$id4436X?Y?IsNormalizedIsZero781A$id4437X?Y?IsNormalizedIsZero782A$id4438X?YVU?IsNormalizedIsZero783A$id4439X?Y?IsNormalizedIsZero784A$id4440X?YVU?IsNormalizedIsZero785A$id4441X?YVU?IsNormalizedIsZero786A$id4442X?Y?IsNormalizedIsZero787A$id4443X@33?Y?IsNormalizedIsZero788A$id4444X@33?Y?IsNormalizedIsZero789A$id4445X?Y?IsNormalizedIsZero790A$id4446X?Y?IsNormalizedIsZero791A$id4447X@33?YVU?IsNormalizedIsZero792A$id4448X@33?Y?IsNormalizedIsZero793A$id4449X?Y?IsNormalizedIsZero794A$id4450X?YVU?IsNormalizedIsZero795A$id4451X@33?Y?IsNormalizedIsZero796A$id4452X@33?YVU?IsNormalizedIsZero797A$id4453X?YVU?IsNormalizedIsZero798A$id4454X?Y?IsNormalizedIsZero799A$id4455X@33?Y?IsNormalizedIsZero800A$id4456X@33?Y?IsNormalizedIsZero801A$id4457X?Y?IsNormalizedIsZero802A$id4458X?Y?IsNormalizedIsZero803A$id4459X@33?YVU?IsNormalizedIsZero804A$id4460X@33?Y?IsNormalizedIsZero805A$id4461X?Y?IsNormalizedIsZero806A$id4462X?YVU?IsNormalizedIsZero807A$id4463X@33?Y?IsNormalizedIsZero808A$id4464X@33?YVU?IsNormalizedIsZero809A$id4465X?YVU?IsNormalizedIsZero810A$id4466X?Y?IsNormalizedIsZero811A$id4467X`ff?Y?IsNormalizedIsZero812A$id4468X`ff?Y?IsNormalizedIsZero813A$id4469X?Y?IsNormalizedIsZero814A$id4470X?Y?IsNormalizedIsZero815A$id4471X`ff?YVU?IsNormalizedIsZero816A$id4472X`ff?Y?IsNormalizedIsZero817A$id4473X?Y?IsNormalizedIsZero818A$id4474X?YVU?IsNormalizedIsZero819A$id4475X`ff?Y?IsNormalizedIsZero820A$id4476X`ff?YVU?IsNormalizedIsZero821A$id4477X?YVU?IsNormalizedIsZero822A$id4478X?Y?IsNormalizedIsZero823A$id4479X`ff?Y?IsNormalizedIsZero824A$id4480X`ff?Y?IsNormalizedIsZero825A$id4481X?Y?IsNormalizedIsZero826A$id4482X?Y?IsNormalizedIsZero827A$id4483X`ff?YVU?IsNormalizedIsZero828A$id4484X`ff?Y?IsNormalizedIsZero829A$id4485X?Y?IsNormalizedIsZero830A$id4486X?YVU?IsNormalizedIsZero831A$id4487X`ff?Y?IsNormalizedIsZero832A$id4488X`ff?YVU?IsNormalizedIsZero833A$id4489X?YVU?IsNormalizedIsZero834A$id4490X?Y?IsNormalizedIsZero835A$id4491X?Y?IsNormalizedIsZero836A$id4492X?Y?IsNormalizedIsZero837A$id4493X?Y?IsNormalizedIsZero838A$id4494X?Y?IsNormalizedIsZero839A$id4495X?YVU?IsNormalizedIsZero840A$id4496X?Y?IsNormalizedIsZero841A$id4497X?Y?IsNormalizedIsZero842A$id4498X?YVU?IsNormalizedIsZero843A$id4499X?Y?IsNormalizedIsZero844A$id4500X?YVU?IsNormalizedIsZero845A$id4501X?YVU?IsNormalizedIsZero846A$id4502X?Y?IsNormalizedIsZero847A$id4503X?Y?IsNormalizedIsZero848A$id4504X?Y?IsNormalizedIsZero849A$id4505X?Y?IsNormalizedIsZero850A$id4506X?Y?IsNormalizedIsZero851A$id4507X?YVU?IsNormalizedIsZero852A$id4508X?Y?IsNormalizedIsZero853A$id4509X?Y?IsNormalizedIsZero854A$id4510X?YVU?IsNormalizedIsZero855A$id4511X?Y?IsNormalizedIsZero856A$id4512X?YVU?IsNormalizedIsZero857A$id4513X?YVU?IsNormalizedIsZero858A$id4514X?Y?IsNormalizedIsZero859A$id4515X`ff?Y?IsNormalizedIsZero860A$id4516X`ff?Y?IsNormalizedIsZero861A$id4517X@33?Y?IsNormalizedIsZero862A$id4518X@33?Y?IsNormalizedIsZero863A$id4519X`ff?YVU?IsNormalizedIsZero864A$id4520X`ff?Y?IsNormalizedIsZero865A$id4521X@33?Y?IsNormalizedIsZero866A$id4522X@33?YVU?IsNormalizedIsZero867A$id4523X`ff?Y?IsNormalizedIsZero868A$id4524X`ff?YVU?IsNormalizedIsZero869A$id4525X@33?YVU?IsNormalizedIsZero870A$id4526X@33?Y?IsNormalizedIsZero871A$id4527X`ff?Y?IsNormalizedIsZero872A$id4528X`ff?Y?IsNormalizedIsZero873A$id4529X@33?Y?IsNormalizedIsZero874A$id4530X@33?Y?IsNormalizedIsZero875A$id4531X`ff?YVU?IsNormalizedIsZero876A$id4532X`ff?Y?IsNormalizedIsZero877A$id4533X@33?Y?IsNormalizedIsZero878A$id4534X@33?YVU?IsNormalizedIsZero879A$id4535X`ff?Y?IsNormalizedIsZero880A$id4536X`ff?YVU?IsNormalizedIsZero881A$id4537X@33?YVU?IsNormalizedIsZero882A$id4538X@33?Y?IsNormalizedIsZero883A$id4539X?YVU?IsNormalizedIsZero884A$id4540X?Y?IsNormalizedIsZero885A$id4541X?Y?IsNormalizedIsZero886A$id4542X?YVU?IsNormalizedIsZero887A$id4543X?Y?IsNormalizedIsZero888A$id4544X?Y?IsNormalizedIsZero889A$id4545X?Y?IsNormalizedIsZero890A$id4546X?Y?IsNormalizedIsZero891A$id4547X?Y?IsNormalizedIsZero892A$id4548X?YVU?IsNormalizedIsZero893A$id4549X?YVU?IsNormalizedIsZero894A$id4550X?Y?IsNormalizedIsZero895A$id4551X?YVU?IsNormalizedIsZero896A$id4552X?Y?IsNormalizedIsZero897A$id4553X?Y?IsNormalizedIsZero898A$id4554X?YVU?IsNormalizedIsZero899A$id4555X?Y?IsNormalizedIsZero900A$id4556X?Y?IsNormalizedIsZero901A$id4557X?Y?IsNormalizedIsZero902A$id4558X?Y?IsNormalizedIsZero903A$id4559X?YVU?IsNormalizedIsZero904A$id4560X?YVU?IsNormalizedIsZero905A$id4561X`ff?YVU?IsNormalizedIsZero906A$id4562X`ff?Y?IsNormalizedIsZero907A$id4563X?Y?IsNormalizedIsZero908A$id4564X?YVU?IsNormalizedIsZero909A$id4565X`ff?Y?IsNormalizedIsZero910A$id4566X`ff?Y?IsNormalizedIsZero911A$id4567X?Y?IsNormalizedIsZero912A$id4568X?Y?IsNormalizedIsZero913A$id4569X`ff?Y?IsNormalizedIsZero914A$id4570X`ff?YVU?IsNormalizedIsZero915A$id4571X?YVU?IsNormalizedIsZero916A$id4572X?Y?IsNormalizedIsZero917A$id4573X`ff?YVU?IsNormalizedIsZero918A$id4574X`ff?Y?IsNormalizedIsZero919A$id4575X?Y?IsNormalizedIsZero920A$id4576X?YVU?IsNormalizedIsZero921A$id4577X`ff?Y?IsNormalizedIsZero922A$id4578X`ff?Y?IsNormalizedIsZero923A$id4579X?Y?IsNormalizedIsZero924A$id4580X?Y?IsNormalizedIsZero925A$id4581X?YVU?IsNormalizedIsZero926A$id4582X?Y?IsNormalizedIsZero927A$id4583X@33?Y?IsNormalizedIsZero928A$id4584X@33?YVU?IsNormalizedIsZero929A$id4585X?Y?IsNormalizedIsZero930A$id4586X?Y?IsNormalizedIsZero931A$id4587X@33?Y?IsNormalizedIsZero932A$id4588X@33?Y?IsNormalizedIsZero933A$id4589X?Y?IsNormalizedIsZero934A$id4590X?YVU?IsNormalizedIsZero935A$id4591X@33?YVU?IsNormalizedIsZero936A$id4592X@33?Y?IsNormalizedIsZero937A$id4593X?YVU?IsNormalizedIsZero938A$id4594X?Y?IsNormalizedIsZero939A$id4595X@33?Y?IsNormalizedIsZero940A$id4596X@33?YVU?IsNormalizedIsZero941A$id4597X?Y?IsNormalizedIsZero942A$id4598X?Y?IsNormalizedIsZero943A$id4599X@33?Y?IsNormalizedIsZero944A$id4600X@33?Y?IsNormalizedIsZero945A$id4601X?YVU?IsNormalizedIsZero946A$id4602X?Y?IsNormalizedIsZero947A$id4603X?Y?IsNormalizedIsZero948A$id4604X?YVU?IsNormalizedIsZero949A$id4605X?Y?IsNormalizedIsZero950A$id4606X?Y?IsNormalizedIsZero951A$id4607X?Y?IsNormalizedIsZero952A$id4608X?Y?IsNormalizedIsZero953A$id4609X?Y?IsNormalizedIsZero954A$id4610X?YVU?IsNormalizedIsZero955A$id4611X?YVU?IsNormalizedIsZero956A$id4612X?Y?IsNormalizedIsZero957A$id4613X?YVU?IsNormalizedIsZero958A$id4614X?Y?IsNormalizedIsZero959A$id4615X?Y?IsNormalizedIsZero960A$id4616X?YVU?IsNormalizedIsZero961A$id4617X?Y?IsNormalizedIsZero962A$id4618X?Y?IsNormalizedIsZero963A$id4619X?Y?IsNormalizedIsZero964A$id4620X?Y?IsNormalizedIsZero965A$id4621X@33?YVU?IsNormalizedIsZero966A$id4622X@33?Y?IsNormalizedIsZero967A$id4623X`ff?Y?IsNormalizedIsZero968A$id4624X`ff?YVU?IsNormalizedIsZero969A$id4625X@33?Y?IsNormalizedIsZero970A$id4626X@33?Y?IsNormalizedIsZero971A$id4627X`ff?Y?IsNormalizedIsZero972A$id4628X`ff?Y?IsNormalizedIsZero973A$id4629X@33?Y?IsNormalizedIsZero974A$id4630X@33?YVU?IsNormalizedIsZero975A$id4631X`ff?YVU?IsNormalizedIsZero976A$id4632X`ff?Y?IsNormalizedIsZero977A$id4633X@33?YVU?IsNormalizedIsZero978A$id4634X@33?Y?IsNormalizedIsZero979A$id4635X`ff?Y?IsNormalizedIsZero980A$id4636X`ff?YVU?IsNormalizedIsZero981A$id4637X@33?Y?IsNormalizedIsZero982A$id4638X@33?Y?IsNormalizedIsZero983A$id4639X`ff?Y?IsNormalizedIsZero984A$id4640X`ff?Y?IsNormalizedIsZero985A$id4641X?YVU?IsNormalizedIsZero986A$id4642X?Y?IsNormalizedIsZero987A$id4643X?Y?IsNormalizedIsZero988A$id4644X?YVU?IsNormalizedIsZero989A$id4645X?Y?IsNormalizedIsZero990A$id4646X?Y?IsNormalizedIsZero991A$id4647X?Y?IsNormalizedIsZero992A$id4648X?Y?IsNormalizedIsZero993A$id4649X?Y?IsNormalizedIsZero994A$id4650X?YVU?IsNormalizedIsZero995A$id4651X?YVU?IsNormalizedIsZero996A$id4652X?Y?IsNormalizedIsZero997A$id4653X?Y?IsNormalizedIsZero998A$id4654X?Y?IsNormalizedIsZero999A$id4655X?Yo?IsNormalizedIsZero1000A$id4656X?Yo?IsNormalizedIsZero1001A$id4657X?Y?IsNormalizedIsZero1002A$id4658X?Y?IsNormalizedIsZero1003A$id4659X?Y?IsNormalizedIsZero1004A$id4660X?Y?IsNormalizedIsZero1005A$id4661X`ff?YVU?IsNormalizedIsZero1006A$id4662X`ff?Y?IsNormalizedIsZero1007A$id4663X?Y?IsNormalizedIsZero1008A$id4664X?YVU?IsNormalizedIsZero1009A$id4665X`ff?Y?IsNormalizedIsZero1010A$id4666X`ff?Y?IsNormalizedIsZero1011A$id4667X?Y?IsNormalizedIsZero1012A$id4668X?Y?IsNormalizedIsZero1013A$id4669X`ff?Y?IsNormalizedIsZero1014A$id4670X`ff?YVU?IsNormalizedIsZero1015A$id4671X?YVU?IsNormalizedIsZero1016A$id4672X?Y?IsNormalizedIsZero1017A$id4673X`ff?Y?IsNormalizedIsZero1018A$id4674X?Y?IsNormalizedIsZero1019A$id4675X?Yo?IsNormalizedIsZero1020A$id4676X`ff?Yo?IsNormalizedIsZero1021A$id4677X`ff?Y?IsNormalizedIsZero1022A$id4678X?Y?IsNormalizedIsZero1023A$id4679X?Y?IsNormalizedIsZero1024A$id4680X`ff?Y?IsNormalizedIsZero1025A$id4681X?YVU?IsNormalizedIsZero1026A$id4682X?Y?IsNormalizedIsZero1027A$id4683X@33?Y?IsNormalizedIsZero1028A$id4684X@33?YVU?IsNormalizedIsZero1029A$id4685X?Y?IsNormalizedIsZero1030A$id4686X?Y?IsNormalizedIsZero1031A$id4687X@33?Y?IsNormalizedIsZero1032A$id4688X@33?Y?IsNormalizedIsZero1033A$id4689X?Y?IsNormalizedIsZero1034A$id4690X?YVU?IsNormalizedIsZero1035A$id4691X@33?YVU?IsNormalizedIsZero1036A$id4692X@33?Y?IsNormalizedIsZero1037A$id4693X?Y?IsNormalizedIsZero1038A$id4694X?Yo?IsNormalizedIsZero1039A$id4695X ?Yo?IsNormalizedIsZero1040A$id4696X ?Y?IsNormalizedIsZero1041A$id4697X?Y?IsNormalizedIsZero1042A$id4698X@33?Y?IsNormalizedIsZero1043A$id4699X@33?Y?IsNormalizedIsZero1044A$id4700X?Y?IsNormalizedIsZero1045A$id4701X?YIsNormalizedIsZero1046A$id4702X?Y?IsNormalizedIsZero1047A$id4703X?Y?IsNormalizedIsZero1048A$id4704X?YIsNormalizedIsZero1049A$id4705XVU?YIsNormalizedIsZero1050A$id4706XVU?Y?IsNormalizedIsZero1051A$id4707X?Y?IsNormalizedIsZero1052A$id4708X?YIsNormalizedIsZero1053A$id4709X?YIsNormalizedIsZero1054A$id4710X?Y?IsNormalizedIsZero1055A$id4711XVU?Y?IsNormalizedIsZero1056A$id4712XVU?YIsNormalizedIsZero1057A$id4713X?Y?IsNormalizedIsZero1058A$id4714X?Y?IsNormalizedIsZero1059A$id4715X?YIsNormalizedIsZero1060A$id4716X?YIsNormalizedIsZero1061A$id4717XVU?Y?IsNormalizedIsZero1062A$id4718X?Y?IsNormalizedIsZero1063A$id4719X?YIsNormalizedIsZero1064A$id4720XVU?YIsNormalizedIsZero1065A$id4721X?Y?IsNormalizedIsZero1066A$id4722XVU?Y?IsNormalizedIsZero1067A$id4723XVU?YIsNormalizedIsZero1068A$id4724X?YIsNormalizedIsZero1069A$id4725XY?IsNormalizedIsZero1070A$id4726X`U?Y?IsNormalizedIsZero1071A$id4727X`U?Y?IsNormalizedIsZero1072A$id4728XY?IsNormalizedIsZero1073A$id4729XOU?Y?IsNormalizedIsZero1074A$id4730X?Y?IsNormalizedIsZero1075A$id4731X?Y?IsNormalizedIsZero1076A$id4732XOU?Y?IsNormalizedIsZero1077A$id4733X XU?Y?IsNormalizedIsZero1078A$id4734X৪?Y?IsNormalizedIsZero1079A$id4735X৪?Y?IsNormalizedIsZero1080A$id4736X XU?Y?IsNormalizedIsZero1081A$id4737X?Y?IsNormalizedIsZero1082A$id4738X ?Y?IsNormalizedIsZero1083A$id4739X ?Y?IsNormalizedIsZero1084A$id4740X?Y?IsNormalizedIsZero1085A$id4741XSU?Y?IsNormalizedIsZero1086A$id4742X?Y?IsNormalizedIsZero1087A$id4743X?Y?IsNormalizedIsZero1088A$id4744XSU?Y?IsNormalizedIsZero1089A$id4745X?Y?IsNormalizedIsZero1090A$id4746X?Y?IsNormalizedIsZero1091A$id4747X?Y?IsNormalizedIsZero1092A$id4748X@33?Y?IsNormalizedIsZero1093A$id4749X@33?Y?IsNormalizedIsZero1094A$id4750X?Y?IsNormalizedIsZero1095A$id4751X?Y?IsNormalizedIsZero1096A$id4752X`ff?Y?IsNormalizedIsZero1097A$id4753X?Y?IsNormalizedIsZero1098A$id4754X?Y?IsNormalizedIsZero1099A$id4755X@33?Y?IsNormalizedIsZero1100A$id4756X?Y?IsNormalizedIsZero1101A$id4757X`ff?Y?IsNormalizedIsZero1102A$id4758X?Y?IsNormalizedIsZero1103A$id4759X?Y?IsNormalizedIsZero1104A$id4760X?Y?IsNormalizedIsZero1105A$id4761X?Y?IsNormalizedIsZero1106A$id4762X@33?Y?IsNormalizedIsZero1107A$id4763X?Y?IsNormalizedIsZero1108A$id4764X`ff?Y?IsNormalizedIsZero1109A$id4765X?Y?IsNormalizedIsZero1110A$id4766X?Y?IsNormalizedIsZero1111A$id4767X@33?Y?IsNormalizedIsZero1112A$id4768X`ff?Y?IsNormalizedIsZero1113A$id4769X?Y?IsNormalizedIsZero1114A$id4770X?Y?IsNormalizedIsZero1115A$id4771X`ff?Y?IsNormalizedIsZero1116A$id4772X?Y?IsNormalizedIsZero1117A$id4773X?Y?IsNormalizedIsZero1118A$id4774X@33?Y?IsNormalizedIsZero1119A$id4775X?Y?IsNormalizedIsZero1120A$id4776X?Y?IsNormalizedIsZero1121A$id4777X@33?Y?IsNormalizedIsZero1122A$id4778X`ff?Y?IsNormalizedIsZero1123A$id4779X?Y?IsNormalizedIsZero1124A$id4780X?Y?IsNormalizedIsZero1125A$id4781X`ff?Y?IsNormalizedIsZero1126A$id4782X?Y?IsNormalizedIsZero1127A$id4783X?Y?IsNormalizedIsZero1128A$id4784X@33?Y?IsNormalizedIsZero1129A$id4785X?Y?IsNormalizedIsZero1130A$id4786X?Y?IsNormalizedIsZero1131A$id4787X?Y?IsNormalizedIsZero1132A$id4788XVU?Y?IsNormalizedIsZero1133A$id4789X?Y?IsNormalizedIsZero1134A$id4790X?Y?IsNormalizedIsZero1135A$id4791XVU?Y?IsNormalizedIsZero1136A$id4792X?Y?IsNormalizedIsZero1137A$id4793X?Y?IsNormalizedIsZero1138A$id4794XVU?Y?IsNormalizedIsZero1139A$id4795X?Y?IsNormalizedIsZero1140A$id4796X?Y?IsNormalizedIsZero1141A$id4797XVU?Y?IsNormalizedIsZero1142A$id4798XYIsNormalizedIsZero1143A$id4799X`U?YIsNormalizedIsZero1144A$id4800XOU?YIsNormalizedIsZero1145A$id4801X?YIsNormalizedIsZero1146A$id4802X XU?YIsNormalizedIsZero1147A$id4803X৪?YIsNormalizedIsZero1148A$id4804X?YIsNormalizedIsZero1149A$id4805X ?YIsNormalizedIsZero1150A$id4806XSU?YIsNormalizedIsZero1151A$id4807X?YIsNormalizedIsZero1152A$id4808X`R?Y?IsNormalizedIsZero1153A$id4809X b?Y?IsNormalizedIsZero1154A$id4810X`ff?Y?IsNormalizedIsZero1155A$id4811X`ff?Y?IsNormalizedIsZero1156A$id4812X?YIsNormalizedIsZero1157A$id4813X?Y?IsNormalizedIsZero1158A$id4814X?Y?IsNormalizedIsZero1159A$id4815X@33?Y?IsNormalizedIsZero1160A$id4816X?Y?IsNormalizedIsZero1161A$id4817X?Y?IsNormalizedIsZero1162A$id4818X`ff?Y?IsNormalizedIsZero1163A$id4819X?Y?IsNormalizedIsZero1164A$id4820X?Y?IsNormalizedIsZero1165A$id4821X`ff?Y?IsNormalizedIsZero1166A$id4822XY?IsNormalizedIsZero1167A$id4823XY?IsNormalizedIsZero1168A$id4824XYVU?IsNormalizedIsZero1169A$id4825XY?IsNormalizedIsZero1170A$id4826XY?IsNormalizedIsZero1171A$id4827XYVU?IsNormalizedIsZero1172A$id4828XY?IsNormalizedIsZero1173A$id4829XY?IsNormalizedIsZero1174A$id4830XYVU?IsNormalizedIsZero1175A$id4831XY?IsNormalizedIsZero1176A$id4832XY?IsNormalizedIsZero1177A$id4833XYVU?IsNormalizedIsZero1178A$id4834XY?IsNormalizedIsZero1179A$id4835XY?IsNormalizedIsZero1180A$id4836X?Y?IsNormalizedIsZero1181A$id4837XYVU?IsNormalizedIsZero1182A$id4838XY?IsNormalizedIsZero1183A$id4839XY?IsNormalizedIsZero1184A$id4840XYVU?IsNormalizedIsZero1185A$id4841XY?IsNormalizedIsZero1186A$id4842XY?IsNormalizedIsZero1187A$id4843XYVU?IsNormalizedIsZero1188A$id4844XY?IsNormalizedIsZero1189A$id4845XY?IsNormalizedIsZero1190A$id4846XYVU?IsNormalizedIsZero1191A$id4847X@33?Y?IsNormalizedIsZero1192A$id4848X?Y?IsNormalizedIsZero1193A$id4849X?Y?IsNormalizedIsZero1194A$id4850X?Y?IsNormalizedIsZero1195A$id4851X`ff?Y?IsNormalizedIsZero1196A$id4852X@33?Y?IsNormalizedIsZero1197A$id4853X?Y?IsNormalizedIsZero1198A$id4854X?Y?IsNormalizedIsZero1199A$id4855X?Y?IsNormalizedIsZero1200A$id4856X?Y?IsNormalizedIsZero1201A$id4857X@33?Y?IsNormalizedIsZero1202A$id4858X?Y?IsNormalizedIsZero1203A$id4859X`ff?Y?IsNormalizedIsZero1204A$id4860X?Y?IsNormalizedIsZero1205A$id4861X?Y?IsNormalizedIsZero1206A$id4862X?Y?IsNormalizedIsZero1207A$id4863X?YVU?IsNormalizedIsZero1208A$id4864X`ff?Y?IsNormalizedIsZero1209A$id4865X@33?Y?IsNormalizedIsZero1210A$id4866X`ff?YVU?IsNormalizedIsZero1211A$id4867X@33?YVU?IsNormalizedIsZero1212A$id4868X?Y?IsNormalizedIsZero1213A$id4869X?Y?IsNormalizedIsZero1214A$id4870X?YVU?IsNormalizedIsZero1215A$id4871X?YVU?IsNormalizedIsZero1216A$id4872X?Y?IsNormalizedIsZero1217A$id4873X`ff?Y?IsNormalizedIsZero1218A$id4874X?YVU?IsNormalizedIsZero1219A$id4875X`ff?YVU?IsNormalizedIsZero1220A$id4876X@33?Y?IsNormalizedIsZero1221A$id4877X?Y?IsNormalizedIsZero1222A$id4878X?Y?IsNormalizedIsZero1223A$id4879X?YVU?IsNormalizedIsZero1224A$id4880X@33?YVU?IsNormalizedIsZero1225A$id4881X?YVU?IsNormalizedIsZero1226A$id4882X?Y?IsNormalizedIsZero1227A$id4883X?Y?IsNormalizedIsZero1228A$id4884X?Y?IsNormalizedIsZero1229A$id4885X?Y?IsNormalizedIsZero1230A$id4886X?YVU?IsNormalizedIsZero1231A$id4887X?YVU?IsNormalizedIsZero1232A$id4888X?YVU?IsNormalizedIsZero1233A$id4889X?YVU?IsNormalizedIsZero1234A$id4890X`ff?Y?IsNormalizedIsZero1235A$id4891X@33?Y?IsNormalizedIsZero1236A$id4892X`ff?Y?IsNormalizedIsZero1237A$id4893X@33?Y?IsNormalizedIsZero1238A$id4894X`ff?YVU?IsNormalizedIsZero1239A$id4895X@33?YVU?IsNormalizedIsZero1240A$id4896X`ff?YVU?IsNormalizedIsZero1241A$id4897X@33?YVU?IsNormalizedIsZero1242A$id4898XY?IsNormalizedIsZero1243A$id4899X ?Y?IsNormalizedIsZero1244A$id4900X ?YIsNormalizedIsZero1245A$id4901XSU?YIsNormalizedIsZero1246A$id4902XSU?Y?IsNormalizedIsZero1247A$id4903X@33?Y@?IsNormalizedIsZero1248A$id4904X?Y@?IsNormalizedIsZero1249A$id4905X`ff?Y?IsNormalizedIsZero1250A$id4906X?Y?IsNormalizedIsZero1251A$id4907X@33?Y?IsNormalizedIsZero1252A$id4908X?Y?IsNormalizedIsZero1253A$id4909X?Y?IsNormalizedIsZero1254A$id4910X?Y?IsNormalizedIsZero1255A$id4911X?Y?IsNormalizedIsZero1256A$id4912X`ff?Y?IsNormalizedIsZero1257A$id4913X?Y?IsNormalizedIsZero1258A$id4914X@33?Y?IsNormalizedIsZero1259A$id4915X?Y?IsNormalizedIsZero1260A$id4916X?Y?IsNormalizedIsZero1261A$id4917X`ff?Y?IsNormalizedIsZero1262A$id4918X?Y?IsNormalizedIsZero1263A$id4919X?Y?IsNormalizedIsZero1264A$id4920X@33?Y?IsNormalizedIsZero1265A$id4921X@33?Y?IsNormalizedIsZero1266A$id4922X?Y?IsNormalizedIsZero1267A$id4923X?Y?IsNormalizedIsZero1268A$id4924X?Y?IsNormalizedIsZero1269A$id4925X`ff?Y@?IsNormalizedIsZero1270A$id4926X?Y ?IsNormalizedIsZero1271A$id4927X?Y?IsNormalizedIsZero1272A$id4928X?Y?IsNormalizedIsZero1273A$id4929X?Y ?IsNormalizedIsZero1274A$id4930X@33?Y@?IsNormalizedIsZero1275A$id4931X@g}?Y?IsNormalizedIsZero1276A$id4932X?Y'?IsNormalizedIsZero1277A$id4933X?Y@E?IsNormalizedIsZero1278A$id4934X?Yd?IsNormalizedIsZero1279A$id4935X`ff?Y`2?IsNormalizedIsZero1280A$id4936X@33?Y?IsNormalizedIsZero1281A$id4937X?Y?IsNormalizedIsZero1282A$id4938X?Y?IsNormalizedIsZero1283A$id4939X?Y?IsNormalizedIsZero1284A$id4940X?Y?IsNormalizedIsZero1285A$id4941X?YVU?IsNormalizedIsZero1286A$id4942X?YVU?IsNormalizedIsZero1287A$id4943X?Y?IsNormalizedIsZero1288A$id4944X?YIsNormalizedIsZero1289A$id4945X ?Y?IsNormalizedIsZero1290A$id4946XSU?Y?IsNormalizedIsZero1291A$id4947X?Y?IsNormalizedIsZero1292A$id4948X?Y?IsNormalizedIsZero1293A$id4949X@i?Y?IsNormalizedIsZero1294A$id4950XY?IsNormalizedIsZero1295A$id4951XY@0?IsNormalizedIsZero1296A$id4952X?Y?IsNormalizedIsZero1297A$id4953X?Y?IsNormalizedIsZero1298A$id4954X`ff?Y?IsNormalizedIsZero1299A$id4955X@33?Y?IsNormalizedIsZero1300A$id4956X?Y?IsNormalizedIsZero1301A$id4957X?Y?IsNormalizedIsZero1302A$id4958X?Y?IsNormalizedIsZero1303A$id4959X`ff?Y?IsNormalizedIsZero1304A$id4960X@tA?Yo?IsNormalizedIsZero1305A$id4961X@tA?Y?IsNormalizedIsZero1306A$id4962X C9?Y?IsNormalizedIsZero1307A$id4963X C9?Yo?IsNormalizedIsZero1308A$id4964X@33?Y?IsNormalizedIsZero1309A$id4965X?Y?IsNormalizedIsZero1310A$id4966X?Y?IsNormalizedIsZero1311A$id4967X?Y?IsNormalizedIsZero1312A$id4968X@33?Yo?IsNormalizedIsZero1313A$id4969X@33?Y?IsNormalizedIsZero1314A$id4970X`ff?Y?IsNormalizedIsZero1315A$id4971X@33?Y?IsNormalizedIsZero1316A$id4972X@33?Y?IsNormalizedIsZero1317A$id4973X@33?YVU?IsNormalizedIsZero1318A$id4974X@33?YVU?IsNormalizedIsZero1319A$id4975X@33?Y?IsNormalizedIsZero1320A$id4976X@33?YVU?IsNormalizedIsZero1321A$id4977X@33?Yo?IsNormalizedIsZero1322A$id4978X@33?Yo?IsNormalizedIsZero1323A$id4979X@33?Y?IsNormalizedIsZero1324A$id4980X@33?Y?IsNormalizedIsZero1325A$id4981X@33?Y?IsNormalizedIsZero1326A$id4982X@33?Y`?IsNormalizedIsZero1327A$id4983X@33?Y`?IsNormalizedIsZero1328A$id4984X@33?Y?IsNormalizedIsZero1329A$id4985X@33?Y?IsNormalizedIsZero1330A$id4986X@33?YVU?IsNormalizedIsZero1331A$id4987X?YVU?IsNormalizedIsZero1332A$id4988X?YVU?IsNormalizedIsZero1333A$id4989X@tA?YVU?IsNormalizedIsZero1334A$id4990X C9?YVU?IsNormalizedIsZero1335A$id4991X@33?YVU?IsNormalizedIsZero1336A$id4992X?YVU?IsNormalizedIsZero1337A$id4993X?YVU?IsNormalizedIsZero1338A$id4994X?YVU?IsNormalizedIsZero1339A$id4995X?YVU?IsNormalizedIsZero1340A$id4996X`ff?YVU?IsNormalizedIsZero1341A$id4997X`ff?YVU?IsNormalizedIsZero1342A$id4998X@33?YVU?IsNormalizedIsZero1343A$id4999X@33?YVU?IsNormalizedIsZero1344A$id5000X?YVU?IsNormalizedIsZero1345A$id5001X?YVU?IsNormalizedIsZero1346A$id5002X ?YVU?IsNormalizedIsZero1347A$id5003X?YVU?IsNormalizedIsZero1348A$id5004X?Y?IsNormalizedIsZero1349A$id5005X?Y?IsNormalizedIsZero1350A$id5006X?Y`?IsNormalizedIsZero1351A$id5007X?Y?IsNormalizedIsZero1352A$id5008X?Yo?IsNormalizedIsZero1353A$id5009X?YVU?IsNormalizedIsZero1354A$id5010X?Y?IsNormalizedIsZero1355A$id5011X@33?Y?IsNormalizedIsZero1356A$id5012X@33?Y?IsNormalizedIsZero1357A$id5013X?Y?IsNormalizedIsZero1358A$id5014X@33?Y?IsNormalizedIsZero1359A$id5015X?Y?IsNormalizedIsZero1360A$id5016X?Y?IsNormalizedIsZero1361A$id5017X?Y?IsNormalizedIsZero1362A$id5018X ?Y?IsNormalizedIsZero1363A$id5019X?Y?IsNormalizedIsZero1364A$id5020X ?Y?IsNormalizedIsZero1365A$id5021X?Y?IsNormalizedIsZero1366A$id5022X@33?Y?IsNormalizedIsZero1367A$id5023X`ff?Y?IsNormalizedIsZero1368A$id5024X`ff?Y?IsNormalizedIsZero1369A$id5025X`ff?Y?IsNormalizedIsZero1370A$id5026X@33?Y?IsNormalizedIsZero1371A$id5027X@33?Y?IsNormalizedIsZero1372A$id5028X`ff?Y?IsNormalizedIsZero1373A$id5029X?Y?IsNormalizedIsZero1374A$id5030X?Y?IsNormalizedIsZero1375A$id5031X?Y?IsNormalizedIsZero1376A$id5032X`ff?Y?IsNormalizedIsZero1377A$id5033X`ff?Y?IsNormalizedIsZero1378A$id5034X?Y?IsNormalizedIsZero1379A$id5035X?Y?IsNormalizedIsZero1380A$id5036X?Y?IsNormalizedIsZero1381A$id5037X?Y?IsNormalizedIsZero1382A$id5038X?Y?IsNormalizedIsZero1383A$id5039X?Y?IsNormalizedIsZero1384A$id5040X?Y?IsNormalizedIsZero1385A$id5041X?Y?IsNormalizedIsZero1386A$id5042X?Y?IsNormalizedIsZero1387A$id5043X?Y?IsNormalizedIsZero1388A$id5044X?Y?IsNormalizedIsZero1389A$id5045X?Y?IsNormalizedIsZero1390A$id5046X?Y?IsNormalizedIsZero1391A$id5047X@33?Y?IsNormalizedIsZero1392A$id5048X@33?Y?IsNormalizedIsZero1393A$id5049X?Y?IsNormalizedIsZero1394A$id5050X@33?Y?IsNormalizedIsZero1395A$id5051X C9?Y?IsNormalizedIsZero1396A$id5052X?Y?IsNormalizedIsZero1397A$id5053X C9?Y?IsNormalizedIsZero1398A$id5054X@tA?Y?IsNormalizedIsZero1399A$id5055X?Y?IsNormalizedIsZero1400A$id5056X?Y?IsNormalizedIsZero1401A$id5057X?Y?IsNormalizedIsZero1402A$id5058X?Y`?IsNormalizedIsZero1403A$id5059X?Y`?IsNormalizedIsZero1404A$id5060X?YVU?IsNormalizedIsZero1405A$id5061X?YVU?IsNormalizedIsZero1406A$id5062X?Yo?IsNormalizedIsZero1407A$id5063X?Yo?IsNormalizedIsZero1408A$id5064X`ff?Y?IsNormalizedIsZero1409A$id5065X?Y?IsNormalizedIsZero1410A$id5066X?Y`?IsNormalizedIsZero1411A$id5067X`ff?Y`?IsNormalizedIsZero1412A$id5068X?YVU?IsNormalizedIsZero1413A$id5069X`ff?YVU?IsNormalizedIsZero1414A$id5070X`ff?Yo?IsNormalizedIsZero1415A$id5071X?Yo?IsNormalizedIsZero1416A$id5072X?Y?IsNormalizedIsZero1417A$id5073X?Y`?IsNormalizedIsZero1418A$id5074X ?Y`?IsNormalizedIsZero1419A$id5075X ?Y?IsNormalizedIsZero1420A$id5076X ?YVU?IsNormalizedIsZero1421A$id5077X ?Yo?IsNormalizedIsZero1422A$id5078X?Yo?IsNormalizedIsZero1423A$id5079X?YVU?IsNormalizedIsZero1424A$id5080X@tA?YVU?IsNormalizedIsZero1425A$id5081X@tA?Yo?IsNormalizedIsZero1426A$id5082X C9?Yo?IsNormalizedIsZero1427A$id5083X C9?YVU?IsNormalizedIsZero1428A$id5084X C9?Y?IsNormalizedIsZero1429A$id5085X C9?Y`?IsNormalizedIsZero1430A$id5086X@tA?Y`?IsNormalizedIsZero1431A$id5087X@tA?Y?IsNormalizedIsZero1432A$id5088X@33?YVU?IsNormalizedIsZero1433A$id5089X@33?Yo?IsNormalizedIsZero1434A$id5090X@33?Y?IsNormalizedIsZero1435A$id5091X@33?Y`?IsNormalizedIsZero1436A$id5092X?Y?IsNormalizedIsZero1437A$id5093X?Y?IsNormalizedIsZero1438A$id5094X?Y?IsNormalizedIsZero1439A$id5095X?Y?IsNormalizedIsZero1440A$id5096X?Y b?IsNormalizedIsZero1441A$id5097X?Y b?IsNormalizedIsZero1442A$id5098X?Yu?IsNormalizedIsZero1443A$id5099X?Y`m?IsNormalizedIsZero1444A$id5100X`ff?Y?IsNormalizedIsZero1445A$id5101X?Y?IsNormalizedIsZero1446A$id5102X?Y?IsNormalizedIsZero1447A$id5103X`ff?Y?IsNormalizedIsZero1448A$id5104X?Y b?IsNormalizedIsZero1449A$id5105X`ff?Y b?IsNormalizedIsZero1450A$id5106X`ff?Yz?IsNormalizedIsZero1451A$id5107X?Yy?IsNormalizedIsZero1452A$id5108X?Y?IsNormalizedIsZero1453A$id5109X?Y?IsNormalizedIsZero1454A$id5110X ?Y?IsNormalizedIsZero1455A$id5111X ?Y?IsNormalizedIsZero1456A$id5112X C9?Y?IsNormalizedIsZero1457A$id5113X C9?Y?IsNormalizedIsZero1458A$id5114X@tA?Y?IsNormalizedIsZero1459A$id5115X@tA?Y?IsNormalizedIsZero1460A$id5116X@33?Y?IsNormalizedIsZero1461A$id5117X@33?Y?IsNormalizedIsZero1462A$id5118X@33?Y b?IsNormalizedIsZero1463A$id5119X@33?Y|?IsNormalizedIsZero1464A$id5120X@33?Y?IsNormalizedIsZero1465A$id5121X@33?Yo?IsNormalizedIsZero1466A$id5122X C9?Y?IsNormalizedIsZero1467A$id5123X@33?YVU?IsNormalizedIsZero1468A$id5124X@33?Y?IsNormalizedIsZero1469A$id5125X@33?Y`?IsNormalizedIsZero1470A$id5126X C9?Y`?IsNormalizedIsZero1471A$id5127X@33?Y?IsNormalizedIsZero1472A$id5128X?Y?IsNormalizedIsZero1473A$id5129X?Y`?IsNormalizedIsZero1474A$id5130X@tA?Y`?IsNormalizedIsZero1475A$id5131X@tA?Y ?IsNormalizedIsZero1476A$id5132X?Yo?IsNormalizedIsZero1477A$id5133X?Y?IsNormalizedIsZero1478A$id5134X ?Y?IsNormalizedIsZero1479A$id5135X?Y`?IsNormalizedIsZero1480A$id5136X?Y?IsNormalizedIsZero1481A$id5137X ?Y`?IsNormalizedIsZero1482A$id5138X?YVU?IsNormalizedIsZero1483A$id5139X?Y?IsNormalizedIsZero1484A$id5140X?Y b?IsNormalizedIsZero1485A$id5141X?Y@|?IsNormalizedIsZero1486A$id5142X?Yo?IsNormalizedIsZero1487A$id5143X?Yo?IsNormalizedIsZero1488A$id5144X?Yo?IsNormalizedIsZero1489A$id5145X?Yo?IsNormalizedIsZero1490A$id5146X?Yo?IsNormalizedIsZero1491A$id5147X?Yo?IsNormalizedIsZero1492A$id5148X?Yo?IsNormalizedIsZero1493A$id5149X?Yo?IsNormalizedIsZero1494A$id5150X`ff?Yo?IsNormalizedIsZero1495A$id5151X`ff?Yo?IsNormalizedIsZero1496A$id5152X`ff?Yo?IsNormalizedIsZero1497A$id5153X@33?Yo?IsNormalizedIsZero1498A$id5154X@33?Yo?IsNormalizedIsZero1499A$id5155X`ff?Yo?IsNormalizedIsZero1500A$id5156X@33?Yo?IsNormalizedIsZero1501A$id5157X?Yo?IsNormalizedIsZero1502A$id5158X?Yo?IsNormalizedIsZero1503A$id5159X@33?Yo?IsNormalizedIsZero1504A$id5160X?Yo?IsNormalizedIsZero1505A$id5161X ?Yo?IsNormalizedIsZero1506A$id5162X ?Yo?IsNormalizedIsZero1507A$id5163X?Yo?IsNormalizedIsZero1508A$id5164X ?Yo?IsNormalizedIsZero1509A$id5165X ?Y?IsNormalizedIsZero1510A$id5166X ?Y?IsNormalizedIsZero1511A$id5167X ?Yo?IsNormalizedIsZero1512A$id5168X ?Y`?IsNormalizedIsZero1513A$id5169X ?Y`?IsNormalizedIsZero1514A$id5170X ?Y?IsNormalizedIsZero1515A$id5171X ?Y?IsNormalizedIsZero1516A$id5172X ?Y?IsNormalizedIsZero1517A$id5173X?Y?IsNormalizedIsZero1518A$id5174X?Y?IsNormalizedIsZero1519A$id5175X?Y?IsNormalizedIsZero1520A$id5176X ?Y?IsNormalizedIsZero1521A$id5177X ?Y?IsNormalizedIsZero1522A$id5178X?Y?IsNormalizedIsZero1523A$id5179X@33?Y?IsNormalizedIsZero1524A$id5180X@33?Y?IsNormalizedIsZero1525A$id5181X?Y?IsNormalizedIsZero1526A$id5182X@33?Y?IsNormalizedIsZero1527A$id5183X`ff?Y?IsNormalizedIsZero1528A$id5184X`ff?Y?IsNormalizedIsZero1529A$id5185X@33?Y?IsNormalizedIsZero1530A$id5186X`ff?Y?IsNormalizedIsZero1531A$id5187X?Y?IsNormalizedIsZero1532A$id5188X?Y?IsNormalizedIsZero1533A$id5189X`ff?Y?IsNormalizedIsZero1534A$id5190X?Y?IsNormalizedIsZero1535A$id5191X?Y?IsNormalizedIsZero1536A$id5192X?Y?IsNormalizedIsZero1537A$id5193X?Y?IsNormalizedIsZero1538A$id5194X?Y?IsNormalizedIsZero1539A$id5195X?Y?IsNormalizedIsZero1540A$id5196X?Y?IsNormalizedIsZero1541A$id5197X@tA?Y?IsNormalizedIsZero1542A$id5198X@tA?Y?IsNormalizedIsZero1543A$id5199X?Y?IsNormalizedIsZero1544A$id5200X@tA?Y?IsNormalizedIsZero1545A$id5201X C9?Y?IsNormalizedIsZero1546A$id5202X C9?Y?IsNormalizedIsZero1547A$id5203X C9?Y?IsNormalizedIsZero1548A$id5204X@tA?Y?IsNormalizedIsZero1549A$id5205X@tA?Y?IsNormalizedIsZero1550A$id5206X C9?Y?IsNormalizedIsZero1551A$id5207X C9?Y`?IsNormalizedIsZero1552A$id5208X C9?Y`?IsNormalizedIsZero1553A$id5209X C9?Y?IsNormalizedIsZero1554A$id5210X C9?Y?IsNormalizedIsZero1555A$id5211X C9?Y?IsNormalizedIsZero1556A$id5212X C9?Yo?IsNormalizedIsZero1557A$id5213X C9?Yo?IsNormalizedIsZero1558A$id5214X C9?Yo?IsNormalizedIsZero1559A$id5215X@tA?Yo?IsNormalizedIsZero1560A$id5216X@tA?Yo?IsNormalizedIsZero1561A$id5217X C9?Yo?IsNormalizedIsZero1562A$id5218X@tA?Yo?IsNormalizedIsZero1563A$id5219X?Yo?IsNormalizedIsZero1564A$id5220X?Yo?IsNormalizedIsZero1565A$id5221X@tA?Yo?IsNormalizedIsZero1566A$id5222X?Y?IsNormalizedIsZero1567A$id5223X?Y?IsNormalizedIsZero1568A$id5224X?Y?IsNormalizedIsZero1569A$id5225X?Y?IsNormalizedIsZero1570A$id5226X?Y?IsNormalizedIsZero1571A$id5227X?Y?IsNormalizedIsZero1572A$id5228X?Y?IsNormalizedIsZero1573A$id5229X?Y?IsNormalizedIsZero1574A$id5230X?Y?IsNormalizedIsZero1575A$id5231X`ff?Y?IsNormalizedIsZero1576A$id5232X`ff?Y?IsNormalizedIsZero1577A$id5233X?Y?IsNormalizedIsZero1578A$id5234X`ff?Y?IsNormalizedIsZero1579A$id5235X@33?Y?IsNormalizedIsZero1580A$id5236X@33?Y?IsNormalizedIsZero1581A$id5237X`ff?Y?IsNormalizedIsZero1582A$id5238X@33?Y?IsNormalizedIsZero1583A$id5239X?Y?IsNormalizedIsZero1584A$id5240X?Y?IsNormalizedIsZero1585A$id5241X@33?Y?IsNormalizedIsZero1586A$id5242X?Y?IsNormalizedIsZero1587A$id5243X?Y`?IsNormalizedIsZero1588A$id5244X?Y`?IsNormalizedIsZero1589A$id5245X?Y?IsNormalizedIsZero1590A$id5246X?Y`?IsNormalizedIsZero1591A$id5247X@33?Y`?IsNormalizedIsZero1592A$id5248X@33?Y`?IsNormalizedIsZero1593A$id5249X?Y`?IsNormalizedIsZero1594A$id5250X@33?Y`?IsNormalizedIsZero1595A$id5251X`ff?Y`?IsNormalizedIsZero1596A$id5252X`ff?Y`?IsNormalizedIsZero1597A$id5253X@33?Y`?IsNormalizedIsZero1598A$id5254X`ff?Y`?IsNormalizedIsZero1599A$id5255X?Y`?IsNormalizedIsZero1600A$id5256X?Y`?IsNormalizedIsZero1601A$id5257X`ff?Y`?IsNormalizedIsZero1602A$id5258X?Y`?IsNormalizedIsZero1603A$id5259X?Y`?IsNormalizedIsZero1604A$id5260X?Y`?IsNormalizedIsZero1605A$id5261X?Y`?IsNormalizedIsZero1606A$id5262X?Y`?IsNormalizedIsZero1607A$id5263X?Y`?IsNormalizedIsZero1608A$id5264X?Y`?IsNormalizedIsZero1609A$id5265X@tA?Y`?IsNormalizedIsZero1610A$id5266X@tA?Y`?IsNormalizedIsZero1611A$id5267X?Y`?IsNormalizedIsZero1612A$id5268X@tA?Y`?IsNormalizedIsZero1613A$id5269X@tA?Y?IsNormalizedIsZero1614A$id5270X@tA?Y?IsNormalizedIsZero1615A$id5271X@tA?Y`?IsNormalizedIsZero1616A$id5272X@tA?Y?IsNormalizedIsZero1617A$id5273X?Y?IsNormalizedIsZero1618A$id5274X?Y?IsNormalizedIsZero1619A$id5275X@tA?Y?IsNormalizedIsZero1620A$id5276X?Y?IsNormalizedIsZero1621A$id5277X?Y?IsNormalizedIsZero1622A$id5278X?Y?IsNormalizedIsZero1623A$id5279X?Y?IsNormalizedIsZero1624A$id5280X`ff?Y?IsNormalizedIsZero1625A$id5281X?Y?IsNormalizedIsZero1626A$id5282X@33?Y?IsNormalizedIsZero1627A$id5283X`ff?Y?IsNormalizedIsZero1628A$id5284X?Y?IsNormalizedIsZero1629A$id5285X@33?Y?IsNormalizedIsZero1630A$id5286X?Y`?IsNormalizedIsZero1631A$id5287X?Y@|?IsNormalizedIsZero1632A$id5288X?Y b?IsNormalizedIsZero1633A$id5289X?Y`?IsNormalizedIsZero1634A$id5290X?Y3?IsNormalizedIsZero1635A$id5291X?Y?IsNormalizedIsZero1636A$id5292X?Y`?IsNormalizedIsZero1637A$id5293X@33?Y`?IsNormalizedIsZero1638A$id5294X@33?Y`?IsNormalizedIsZero1639A$id5295X@33?Y`?IsNormalizedIsZero1640A$id5296X?Y`?IsNormalizedIsZero1641A$id5297X?Y`?IsNormalizedIsZero1642A$id5298X@33?Y`?IsNormalizedIsZero1643A$id5299X`ff?Y`?IsNormalizedIsZero1644A$id5300X`ff?Y`?IsNormalizedIsZero1645A$id5301X`ff?Y`?IsNormalizedIsZero1646A$id5302X@33?Y`?IsNormalizedIsZero1647A$id5303X@33?Y`?IsNormalizedIsZero1648A$id5304X`ff?Y`?IsNormalizedIsZero1649A$id5305X?Y`?IsNormalizedIsZero1650A$id5306X?Y`?IsNormalizedIsZero1651A$id5307X?Y`?IsNormalizedIsZero1652A$id5308X`ff?Y`?IsNormalizedIsZero1653A$id5309X`ff?Y`?IsNormalizedIsZero1654A$id5310X?Y`?IsNormalizedIsZero1655A$id5311X?Y`?IsNormalizedIsZero1656A$id5312X?Y`?IsNormalizedIsZero1657A$id5313X?Y`?IsNormalizedIsZero1658A$id5314X?Y`?IsNormalizedIsZero1659A$id5315X?Y`?IsNormalizedIsZero1660A$id5316X?Y`?IsNormalizedIsZero1661A$id5317X?Y`?IsNormalizedIsZero1662A$id5318X?Y`?IsNormalizedIsZero1663A$id5319X?Y`?IsNormalizedIsZero1664A$id5320X?Y`?IsNormalizedIsZero1665A$id5321X?Y`?IsNormalizedIsZero1666A$id5322X?Y`?IsNormalizedIsZero1667A$id5323X@tA?Y`?IsNormalizedIsZero1668A$id5324X@tA?Y`?IsNormalizedIsZero1669A$id5325X@tA?Y`?IsNormalizedIsZero1670A$id5326X?Y`?IsNormalizedIsZero1671A$id5327X?Y`?IsNormalizedIsZero1672A$id5328X@tA?Y?IsNormalizedIsZero1673A$id5329X@tA?Y?IsNormalizedIsZero1674A$id5330X@tA?Y ?IsNormalizedIsZero1675A$id5331X@tA?Y`?IsNormalizedIsZero1676A$id5332X@tA?Y?IsNormalizedIsZero1677A$id5333X@tA?Y ?IsNormalizedIsZero1678A$id5334X@tA?Y`?IsNormalizedIsZero1679A$id5335X@tA?Y b?IsNormalizedIsZero1680A$id5336X@tA?Y b?IsNormalizedIsZero1681A$id5337X@tA?Y :h?IsNormalizedIsZero1682A$id5338X@tA?Y`?IsNormalizedIsZero1683A$id5339X@tA?Y`?IsNormalizedIsZero1684A$id5340X@tA?Y b?IsNormalizedIsZero1685A$id5341X@tA?Y`?IsNormalizedIsZero1686A$id5342X?Y?IsNormalizedIsZero1687A$id5343X?Y?IsNormalizedIsZero1688A$id5344X@tA?Y?IsNormalizedIsZero1689A$id5345X@tA?Y?IsNormalizedIsZero1690A$id5346X?Y b?IsNormalizedIsZero1691A$id5347X?Y b?IsNormalizedIsZero1692A$id5348X?Y`?IsNormalizedIsZero1693A$id5349X?Y`?IsNormalizedIsZero1694A$id5350X?Y b?IsNormalizedIsZero1695A$id5351X?Y`?IsNormalizedIsZero1696A$id5352X`ff?Y`?IsNormalizedIsZero1697A$id5353X`ff?Y b?IsNormalizedIsZero1698A$id5354X@33?Y`?IsNormalizedIsZero1699A$id5355X@33?Y b?IsNormalizedIsZero1700A$id5356X@tA?Y :h?IsNormalizedIsZero1701A$id5357X@tA?Y b?IsNormalizedIsZero1702A$id5358X?Y`?IsNormalizedIsZero1703A$id5359X?Y b?IsNormalizedIsZero1704A$id5360X@tA?Y b?IsNormalizedIsZero1705A$id5361X@tA?Y`?IsNormalizedIsZero1706A$id5362X?Y`'?IsNormalizedIsZero1707A$id5363X?Y`?IsNormalizedIsZero1708A$id5364X?Yލ?IsNormalizedIsZero1709A$id5365X`ff?Y@?IsNormalizedIsZero1710A$id5366X`ff?Y`?IsNormalizedIsZero1711A$id5367X?Y`?IsNormalizedIsZero1712A$id5368X@33?Y?IsNormalizedIsZero1713A$id5369X@33?Y`?IsNormalizedIsZero1714A$id5370X?Y3?IsNormalizedIsZero1715A$id5371X?Y`?IsNormalizedIsZero1716A$id5372X@tA?Y b?IsNormalizedIsZero1717A$id5373X@tA?Y b?IsNormalizedIsZero1718A$id5374X@tA?Y`?IsNormalizedIsZero1719A$id5375X@tA?Y`?IsNormalizedIsZero1720A$id5376X@tA?Y`?IsNormalizedIsZero1721A$id5377X@tA?Y b?IsNormalizedIsZero1722A$id5378X@tA?Y`?IsNormalizedIsZero1723A$id5379X?Y`?IsNormalizedIsZero1724A$id5380X?Y`?IsNormalizedIsZero1725A$id5381X?Y`?IsNormalizedIsZero1726A$id5382X@tA?Y`?IsNormalizedIsZero1727A$id5383X@tA?Y`?IsNormalizedIsZero1728A$id5384X?Y`?IsNormalizedIsZero1729A$id5385X?Y`?IsNormalizedIsZero1730A$id5386X?Y`?IsNormalizedIsZero1731A$id5387X?Y`?IsNormalizedIsZero1732A$id5388X?Y`?IsNormalizedIsZero1733A$id5389X?Y`?IsNormalizedIsZero1734A$id5390X?Y`?IsNormalizedIsZero1735A$id5391X?Y`?IsNormalizedIsZero1736A$id5392X?Y`?IsNormalizedIsZero1737A$id5393X?Y`?IsNormalizedIsZero1738A$id5394X?Y`?IsNormalizedIsZero1739A$id5395X?Y`?IsNormalizedIsZero1740A$id5396X?Y`?IsNormalizedIsZero1741A$id5397X`ff?Y`?IsNormalizedIsZero1742A$id5398X`ff?Y`?IsNormalizedIsZero1743A$id5399X`ff?Y`?IsNormalizedIsZero1744A$id5400X?Y`?IsNormalizedIsZero1745A$id5401X?Y`?IsNormalizedIsZero1746A$id5402X`ff?Y`?IsNormalizedIsZero1747A$id5403X@33?Y`?IsNormalizedIsZero1748A$id5404X@33?Y`?IsNormalizedIsZero1749A$id5405X@33?Y`?IsNormalizedIsZero1750A$id5406X`ff?Y`?IsNormalizedIsZero1751A$id5407X`ff?Y`?IsNormalizedIsZero1752A$id5408X@33?Y`?IsNormalizedIsZero1753A$id5409X?Y`?IsNormalizedIsZero1754A$id5410X?Y`?IsNormalizedIsZero1755A$id5411X?Y`?IsNormalizedIsZero1756A$id5412X@33?Y`?IsNormalizedIsZero1757A$id5413X@33?Y`?IsNormalizedIsZero1758A$id5414X?Y`?IsNormalizedIsZero1759A$id5415X?Y b?IsNormalizedIsZero1760A$id5416X?Y b?IsNormalizedIsZero1761A$id5417X?Y b?IsNormalizedIsZero1762A$id5418X?Y`?IsNormalizedIsZero1763A$id5419X?Y`?IsNormalizedIsZero1764A$id5420X?Y b?IsNormalizedIsZero1765A$id5421X@33?Y b?IsNormalizedIsZero1766A$id5422X@33?Y b?IsNormalizedIsZero1767A$id5423X@33?Y b?IsNormalizedIsZero1768A$id5424X?Y b?IsNormalizedIsZero1769A$id5425X?Y b?IsNormalizedIsZero1770A$id5426X@33?Y b?IsNormalizedIsZero1771A$id5427X`ff?Y b?IsNormalizedIsZero1772A$id5428X`ff?Y b?IsNormalizedIsZero1773A$id5429X`ff?Y b?IsNormalizedIsZero1774A$id5430X@33?Y b?IsNormalizedIsZero1775A$id5431X@33?Y b?IsNormalizedIsZero1776A$id5432X`ff?Y b?IsNormalizedIsZero1777A$id5433X?Y b?IsNormalizedIsZero1778A$id5434X?Y b?IsNormalizedIsZero1779A$id5435X?Y b?IsNormalizedIsZero1780A$id5436X`ff?Y b?IsNormalizedIsZero1781A$id5437X`ff?Y b?IsNormalizedIsZero1782A$id5438X?Y b?IsNormalizedIsZero1783A$id5439X?Y b?IsNormalizedIsZero1784A$id5440X?Y b?IsNormalizedIsZero1785A$id5441X?Y b?IsNormalizedIsZero1786A$id5442X?Y b?IsNormalizedIsZero1787A$id5443X?Y b?IsNormalizedIsZero1788A$id5444X?Y b?IsNormalizedIsZero1789A$id5445X?Y b?IsNormalizedIsZero1790A$id5446X?Y b?IsNormalizedIsZero1791A$id5447X?Y b?IsNormalizedIsZero1792A$id5448X?Y b?IsNormalizedIsZero1793A$id5449X?Y b?IsNormalizedIsZero1794A$id5450X?Y b?IsNormalizedIsZero1795A$id5451X@tA?Y b?IsNormalizedIsZero1796A$id5452X@tA?Y b?IsNormalizedIsZero1797A$id5453X@tA?Y b?IsNormalizedIsZero1798A$id5454X?Y b?IsNormalizedIsZero1799A$id5455X?Y b?IsNormalizedIsZero1800A$id5456X?Y?IsNormalizedIsZero1801A$id5457X?Y?IsNormalizedIsZero1802A$id5458X?Y?IsNormalizedIsZero1803A$id5459X?Y`'?IsNormalizedIsZero1804A$id5460X?Y`'?IsNormalizedIsZero1805A$id5461X?Y?IsNormalizedIsZero1806A$id5462X?Y?IsNormalizedIsZero1807A$id5463X?Yލ?IsNormalizedIsZero1808A$id5464X`ff?Y?IsNormalizedIsZero1809A$id5465X`ff?Y@?IsNormalizedIsZero1810A$id5466X`ff?Y@?IsNormalizedIsZero1811A$id5467X`ff?Y?IsNormalizedIsZero1812A$id5468X@33?Y?IsNormalizedIsZero1813A$id5469X@33?Y?IsNormalizedIsZero1814A$id5470X@33?Y?IsNormalizedIsZero1815A$id5471X@33?Y?IsNormalizedIsZero1816A$id5472X?Y?IsNormalizedIsZero1817A$id5473X?Y3?IsNormalizedIsZero1818A$id5474X?Y@|?IsNormalizedIsZero1819A$id5475X?Y`?IsNormalizedIsZero1820A$id5476X@33?Y`?IsNormalizedIsZero1821A$id5477X@33?Y`?IsNormalizedIsZero1822A$id5478X@33?Y|?IsNormalizedIsZero1823A$id5479X?Y@|?IsNormalizedIsZero1824A$id5480X@33?Y|?IsNormalizedIsZero1825A$id5481X@33?Y`?IsNormalizedIsZero1826A$id5482X`ff?Y`?IsNormalizedIsZero1827A$id5483X`ff?Y`?IsNormalizedIsZero1828A$id5484X`ff?Yz?IsNormalizedIsZero1829A$id5485X@33?Y|?IsNormalizedIsZero1830A$id5486X`ff?Yz?IsNormalizedIsZero1831A$id5487X`ff?Y`?IsNormalizedIsZero1832A$id5488X?Y`?IsNormalizedIsZero1833A$id5489X?Y`?IsNormalizedIsZero1834A$id5490X?Yy?IsNormalizedIsZero1835A$id5491X`ff?Yz?IsNormalizedIsZero1836A$id5492X?Yy?IsNormalizedIsZero1837A$id5493X?Y`?IsNormalizedIsZero1838A$id5494X?Y`?IsNormalizedIsZero1839A$id5495X?Y`?IsNormalizedIsZero1840A$id5496X?Yu?IsNormalizedIsZero1841A$id5497X?Yy?IsNormalizedIsZero1842A$id5498X?Yu?IsNormalizedIsZero1843A$id5499X?Y`?IsNormalizedIsZero1844A$id5500X?Y`?IsNormalizedIsZero1845A$id5501X?Y`?IsNormalizedIsZero1846A$id5502X?Y`m?IsNormalizedIsZero1847A$id5503X?Yu?IsNormalizedIsZero1848A$id5504X?Y`m?IsNormalizedIsZero1849A$id5505X?Y`?IsNormalizedIsZero1850A$id5506X@tA?Y`?IsNormalizedIsZero1851A$id5507X@tA?Y`?IsNormalizedIsZero1852A$id5508X@tA?Y :h?IsNormalizedIsZero1853A$id5509X?Y`m?IsNormalizedIsZero1854A$id5510X@tA?Y ?IsNormalizedIsZero1855A$id5511X@tA?Y?IsNormalizedIsZero1856A$id5512X?Y?IsNormalizedIsZero1857A$id5513X?Y?IsNormalizedIsZero1858A$id5514X?Y?IsNormalizedIsZero1859A$id5515X@tA?Y ?IsNormalizedIsZero1860A$id5516X?YIsNormalizedIsZero1861A$id5517X?Y?IsNormalizedIsZero1862A$id5518X?Y?IsNormalizedIsZero1863A$id5519X?Y?IsNormalizedIsZero1864A$id5520X?Y?IsNormalizedIsZero1865A$id5521X`ff?Y?IsNormalizedIsZero1866A$id5522X?Y?IsNormalizedIsZero1867A$id5523X?Y?IsNormalizedIsZero1868A$id5524X`ff?Y?IsNormalizedIsZero1869A$id5525X@33?Y?IsNormalizedIsZero1870A$id5526X?Y?IsNormalizedIsZero1871A$id5527X?Y?IsNormalizedIsZero1872A$id5528X@33?Y?IsNormalizedIsZero1873A$id5529X?Y?IsNormalizedIsZero1874A$id5530X?Y?IsNormalizedIsZero1875A$id5531X`ff?Y?IsNormalizedIsZero1876A$id5532X?Y?IsNormalizedIsZero1877A$id5533X?Y?IsNormalizedIsZero1878A$id5534X`ff?Y?IsNormalizedIsZero1879A$id5535X@33?Y?IsNormalizedIsZero1880A$id5536X?Y?IsNormalizedIsZero1881A$id5537X?Y?IsNormalizedIsZero1882A$id5538X?Y?IsNormalizedIsZero1883A$id5539X@33?Y?IsNormalizedIsZero1884A$id5540X?Y?IsNormalizedIsZero1885A$id5541X?Y?IsNormalizedIsZero1886A$id5542X@33?Y?IsNormalizedIsZero1887A$id5543X?Y?IsNormalizedIsZero1888A$id5544X`ff?Y?IsNormalizedIsZero1889A$id5545X?Y?IsNormalizedIsZero1890A$id5546X?Y?IsNormalizedIsZero1891A$id5547X@33?Y?IsNormalizedIsZero1892A$id5548X?Y?IsNormalizedIsZero1893A$id5549X?YIsNormalizedIsZero1894A$id5550XYIsNormalizedIsZero1895A$id5551XY?IsNormalizedIsZero1896A$id5552X?Y?IsNormalizedIsZero1897A$id5553X@33?YIsNormalizedIsZero1898A$id5554X?YIsNormalizedIsZero1899A$id5555X?Y?IsNormalizedIsZero1900A$id5556X@33?Y?IsNormalizedIsZero1901A$id5557X?YIsNormalizedIsZero1902A$id5558X?YIsNormalizedIsZero1903A$id5559X?Y?IsNormalizedIsZero1904A$id5560X?Y?IsNormalizedIsZero1905A$id5561X`ff?YIsNormalizedIsZero1906A$id5562X@33?YIsNormalizedIsZero1907A$id5563X@33?Y?IsNormalizedIsZero1908A$id5564X`ff?Y?IsNormalizedIsZero1909A$id5565X?YIsNormalizedIsZero1910A$id5566X?YIsNormalizedIsZero1911A$id5567X?Y?IsNormalizedIsZero1912A$id5568X?Y?IsNormalizedIsZero1913A$id5569X?YIsNormalizedIsZero1914A$id5570X?YIsNormalizedIsZero1915A$id5571X?Y?IsNormalizedIsZero1916A$id5572X?Y?IsNormalizedIsZero1917A$id5573X?YIsNormalizedIsZero1918A$id5574X@33?YIsNormalizedIsZero1919A$id5575X@33?Y?IsNormalizedIsZero1920A$id5576X?Y?IsNormalizedIsZero1921A$id5577X?YIsNormalizedIsZero1922A$id5578X`ff?YIsNormalizedIsZero1923A$id5579X`ff?Y?IsNormalizedIsZero1924A$id5580X?Y?IsNormalizedIsZero1925A$id5581X@33?YIsNormalizedIsZero1926A$id5582X?YIsNormalizedIsZero1927A$id5583X?Y?IsNormalizedIsZero1928A$id5584X@33?Y?IsNormalizedIsZero1929A$id5585X`ff?YIsNormalizedIsZero1930A$id5586X?YIsNormalizedIsZero1931A$id5587X?Y?IsNormalizedIsZero1932A$id5588X`ff?Y?IsNormalizedIsZero1933A$id5589X?YIsNormalizedIsZero1934A$id5590X?YIsNormalizedIsZero1935A$id5591X?Y?IsNormalizedIsZero1936A$id5592X?Y?IsNormalizedIsZero1937A$id5593X`ff?YIsNormalizedIsZero1938A$id5594X?YIsNormalizedIsZero1939A$id5595X?Y?IsNormalizedIsZero1940A$id5596X`ff?Y?IsNormalizedIsZero1941A$id5597X?YIsNormalizedIsZero1942A$id5598X@33?YIsNormalizedIsZero1943A$id5599X@33?Y?IsNormalizedIsZero1944A$id5600X?Y?IsNormalizedIsZero1945A$id5601X?YIsNormalizedIsZero1946A$id5602X?YIsNormalizedIsZero1947A$id5603X?Y?IsNormalizedIsZero1948A$id5604X?Y?IsNormalizedIsZero1949A$id5605X`ff?YIsNormalizedIsZero1950A$id5606X`ff?Y?IsNormalizedIsZero1951A$id5607X@33?Y?IsNormalizedIsZero1952A$id5608X@33?YIsNormalizedIsZero1953A$id5609X?YIsNormalizedIsZero1954A$id5610X?Y?IsNormalizedIsZero1955A$id5611X?Y?IsNormalizedIsZero1956A$id5612X?YIsNormalizedIsZero1957A$id5613X?YIsNormalizedIsZero1958A$id5614X?Y?IsNormalizedIsZero1959A$id5615X`ff?Y?IsNormalizedIsZero1960A$id5616X`ff?YIsNormalizedIsZero1961A$id5617X@33?YIsNormalizedIsZero1962A$id5618X@33?Y?IsNormalizedIsZero1963A$id5619X?Y?IsNormalizedIsZero1964A$id5620X?YIsNormalizedIsZero1965A$id5621X?YIsNormalizedIsZero1966A$id5622X?Y?IsNormalizedIsZero1967A$id5623X?Y?IsNormalizedIsZero1968A$id5624X?YIsNormalizedIsZero1969A$id5625X`ff?YIsNormalizedIsZero1970A$id5626X`ff?Y?IsNormalizedIsZero1971A$id5627X@33?Y?IsNormalizedIsZero1972A$id5628X@33?YIsNormalizedIsZero1973A$id5629X`ff?Y?IsNormalizedIsZero1974A$id5630X`ff?Y?IsNormalizedIsZero1975A$id5631X@33?Y?IsNormalizedIsZero1976A$id5632X@33?Y?IsNormalizedIsZero1977A$id5633X?YVU?IsNormalizedIsZero1978A$id5634X?Y?IsNormalizedIsZero1979A$id5635X@33?Y?IsNormalizedIsZero1980A$id5636X@33?YVU?IsNormalizedIsZero1981A$id5637X?Y?IsNormalizedIsZero1982A$id5638X?YVU?IsNormalizedIsZero1983A$id5639X@33?YVU?IsNormalizedIsZero1984A$id5640X@33?Y?IsNormalizedIsZero1985A$id5641X?Y?IsNormalizedIsZero1986A$id5642X?Y?IsNormalizedIsZero1987A$id5643X@33?Y?IsNormalizedIsZero1988A$id5644X@33?Y?IsNormalizedIsZero1989A$id5645X?YVU?IsNormalizedIsZero1990A$id5646X?Y?IsNormalizedIsZero1991A$id5647X@33?Y?IsNormalizedIsZero1992A$id5648X@33?YVU?IsNormalizedIsZero1993A$id5649X?Y?IsNormalizedIsZero1994A$id5650X?YVU?IsNormalizedIsZero1995A$id5651X@33?YVU?IsNormalizedIsZero1996A$id5652X@33?Y?IsNormalizedIsZero1997A$id5653X?Y?IsNormalizedIsZero1998A$id5654X?Y?IsNormalizedIsZero1999A$id5655X`ff?YVU?IsNormalizedIsZero2000A$id5656X`ff?Y?IsNormalizedIsZero2001A$id5657X?Y?IsNormalizedIsZero2002A$id5658X?YVU?IsNormalizedIsZero2003A$id5659X`ff?Y?IsNormalizedIsZero2004A$id5660X`ff?YVU?IsNormalizedIsZero2005A$id5661X?YVU?IsNormalizedIsZero2006A$id5662X?Y?IsNormalizedIsZero2007A$id5663X`ff?Y?IsNormalizedIsZero2008A$id5664X`ff?Y?IsNormalizedIsZero2009A$id5665X?Y?IsNormalizedIsZero2010A$id5666X?Y?IsNormalizedIsZero2011A$id5667X`ff?YVU?IsNormalizedIsZero2012A$id5668X`ff?Y?IsNormalizedIsZero2013A$id5669X?Y?IsNormalizedIsZero2014A$id5670X?YVU?IsNormalizedIsZero2015A$id5671X?Y?IsNormalizedIsZero2016A$id5672X`ff?Y?IsNormalizedIsZero2017A$id5673X`ff?YVU?IsNormalizedIsZero2018A$id5674X?YVU?IsNormalizedIsZero2019A$id5675X?Y?IsNormalizedIsZero2020A$id5676X?Y?IsNormalizedIsZero2021A$id5677X?Y?IsNormalizedIsZero2022A$id5678X?Y?IsNormalizedIsZero2023A$id5679X?YVU?IsNormalizedIsZero2024A$id5680X?Y?IsNormalizedIsZero2025A$id5681X?Y?IsNormalizedIsZero2026A$id5682X?YVU?IsNormalizedIsZero2027A$id5683X?Y?IsNormalizedIsZero2028A$id5684X?YVU?IsNormalizedIsZero2029A$id5685X?YVU?IsNormalizedIsZero2030A$id5686X?Y?IsNormalizedIsZero2031A$id5687X?Y?IsNormalizedIsZero2032A$id5688X?Y?IsNormalizedIsZero2033A$id5689X?Y?IsNormalizedIsZero2034A$id5690X?Y?IsNormalizedIsZero2035A$id5691X?YVU?IsNormalizedIsZero2036A$id5692X?Y?IsNormalizedIsZero2037A$id5693X?Y?IsNormalizedIsZero2038A$id5694X?YVU?IsNormalizedIsZero2039A$id5695X?Y?IsNormalizedIsZero2040A$id5696X?Y?IsNormalizedIsZero2041A$id5697X?YVU?IsNormalizedIsZero2042A$id5698X?YVU?IsNormalizedIsZero2043A$id5699X@33?Y?IsNormalizedIsZero2044A$id5700X@33?Y?IsNormalizedIsZero2045A$id5701X`ff?Y?IsNormalizedIsZero2046A$id5702X`ff?Y?IsNormalizedIsZero2047A$id5703X@33?YVU?IsNormalizedIsZero2048A$id5704X@33?Y?IsNormalizedIsZero2049A$id5705X`ff?Y?IsNormalizedIsZero2050A$id5706X`ff?YVU?IsNormalizedIsZero2051A$id5707X@33?Y?IsNormalizedIsZero2052A$id5708X@33?YVU?IsNormalizedIsZero2053A$id5709X`ff?YVU?IsNormalizedIsZero2054A$id5710X`ff?Y?IsNormalizedIsZero2055A$id5711X@33?Y?IsNormalizedIsZero2056A$id5712X@33?Y?IsNormalizedIsZero2057A$id5713X`ff?Y?IsNormalizedIsZero2058A$id5714X`ff?Y?IsNormalizedIsZero2059A$id5715X@33?YVU?IsNormalizedIsZero2060A$id5716X@33?Y?IsNormalizedIsZero2061A$id5717X`ff?Y?IsNormalizedIsZero2062A$id5718X`ff?YVU?IsNormalizedIsZero2063A$id5719X`ff?Y?IsNormalizedIsZero2064A$id5720X@33?Y?IsNormalizedIsZero2065A$id5721X@33?YVU?IsNormalizedIsZero2066A$id5722X`ff?YVU?IsNormalizedIsZero2067A$id5723X?Y?IsNormalizedIsZero2068A$id5724X?Y?IsNormalizedIsZero2069A$id5725X?Y?IsNormalizedIsZero2070A$id5726X?Y?IsNormalizedIsZero2071A$id5727X?YVU?IsNormalizedIsZero2072A$id5728X?Y?IsNormalizedIsZero2073A$id5729X?Y?IsNormalizedIsZero2074A$id5730X?YVU?IsNormalizedIsZero2075A$id5731X?Y?IsNormalizedIsZero2076A$id5732X?YVU?IsNormalizedIsZero2077A$id5733X?YVU?IsNormalizedIsZero2078A$id5734X?Y?IsNormalizedIsZero2079A$id5735X?Y?IsNormalizedIsZero2080A$id5736X?Y?IsNormalizedIsZero2081A$id5737X?Y?IsNormalizedIsZero2082A$id5738X?Y?IsNormalizedIsZero2083A$id5739X?YVU?IsNormalizedIsZero2084A$id5740X?Y?IsNormalizedIsZero2085A$id5741X?Y?IsNormalizedIsZero2086A$id5742X?YVU?IsNormalizedIsZero2087A$id5743X?Y?IsNormalizedIsZero2088A$id5744X?Y?IsNormalizedIsZero2089A$id5745X?YVU?IsNormalizedIsZero2090A$id5746X?YVU?IsNormalizedIsZero2091A$id5747X?Y?IsNormalizedIsZero2092A$id5748X?Y?IsNormalizedIsZero2093A$id5749X@33?Y?IsNormalizedIsZero2094A$id5750X@33?Y?IsNormalizedIsZero2095A$id5751X?YVU?IsNormalizedIsZero2096A$id5752X?Y?IsNormalizedIsZero2097A$id5753X@33?Y?IsNormalizedIsZero2098A$id5754X@33?YVU?IsNormalizedIsZero2099A$id5755X?Y?IsNormalizedIsZero2100A$id5756X?YVU?IsNormalizedIsZero2101A$id5757X@33?YVU?IsNormalizedIsZero2102A$id5758X@33?Y?IsNormalizedIsZero2103A$id5759X?Y?IsNormalizedIsZero2104A$id5760X?Y?IsNormalizedIsZero2105A$id5761X@33?Y?IsNormalizedIsZero2106A$id5762X@33?Y?IsNormalizedIsZero2107A$id5763X?YVU?IsNormalizedIsZero2108A$id5764X?Y?IsNormalizedIsZero2109A$id5765X@33?Y?IsNormalizedIsZero2110A$id5766X@33?YVU?IsNormalizedIsZero2111A$id5767X@33?Y?IsNormalizedIsZero2112A$id5768X?Y?IsNormalizedIsZero2113A$id5769X?YVU?IsNormalizedIsZero2114A$id5770X@33?YVU?IsNormalizedIsZero2115A$id5771X?Y?IsNormalizedIsZero2116A$id5772X`ff?Y?IsNormalizedIsZero2117A$id5773X`ff?Y?IsNormalizedIsZero2118A$id5774X?Y?IsNormalizedIsZero2119A$id5775X?YVU?IsNormalizedIsZero2120A$id5776X`ff?YVU?IsNormalizedIsZero2121A$id5777X`ff?Y?IsNormalizedIsZero2122A$id5778X?Y?IsNormalizedIsZero2123A$id5779X?Y?IsNormalizedIsZero2124A$id5780X`ff?Y?IsNormalizedIsZero2125A$id5781X`ff?YVU?IsNormalizedIsZero2126A$id5782X?YVU?IsNormalizedIsZero2127A$id5783X`ff?Y?IsNormalizedIsZero2128A$id5784X`ff?Y?IsNormalizedIsZero2129A$id5785X?Y?IsNormalizedIsZero2130A$id5786X?Y?IsNormalizedIsZero2131A$id5787X`ff?YVU?IsNormalizedIsZero2132A$id5788X`ff?Y?IsNormalizedIsZero2133A$id5789X?Y?IsNormalizedIsZero2134A$id5790X?YVU?IsNormalizedIsZero2135A$id5791X?Y?IsNormalizedIsZero2136A$id5792X`ff?Y?IsNormalizedIsZero2137A$id5793X`ff?YVU?IsNormalizedIsZero2138A$id5794X?YVU?IsNormalizedIsZero2139A$id5795X?YVU?IsNormalizedIsZero2140A$id5796X?YVU?IsNormalizedIsZero2141A$id5797X?Y?IsNormalizedIsZero2142A$id5798X?Y?IsNormalizedIsZero2143A$id5799X?Y?IsNormalizedIsZero2144A$id5800X?Y?IsNormalizedIsZero2145A$id5801X?Y?IsNormalizedIsZero2146A$id5802X?Y?IsNormalizedIsZero2147A$id5803X?Y?IsNormalizedIsZero2148A$id5804X?Y?IsNormalizedIsZero2149A$id5805X?YVU?IsNormalizedIsZero2150A$id5806X?YVU?IsNormalizedIsZero2151A$id5807X?YVU?IsNormalizedIsZero2152A$id5808X?YVU?IsNormalizedIsZero2153A$id5809X?Y?IsNormalizedIsZero2154A$id5810X?Y?IsNormalizedIsZero2155A$id5811X?Y?IsNormalizedIsZero2156A$id5812X?Y?IsNormalizedIsZero2157A$id5813X?Y?IsNormalizedIsZero2158A$id5814X?Y?IsNormalizedIsZero2159A$id5815X?YVU?IsNormalizedIsZero2160A$id5816X?YVU?IsNormalizedIsZero2161A$id5817X@33?YVU?IsNormalizedIsZero2162A$id5818X`ff?YVU?IsNormalizedIsZero2163A$id5819X`ff?Y?IsNormalizedIsZero2164A$id5820X@33?Y?IsNormalizedIsZero2165A$id5821X@33?Y?IsNormalizedIsZero2166A$id5822X`ff?Y?IsNormalizedIsZero2167A$id5823X`ff?Y?IsNormalizedIsZero2168A$id5824X@33?Y?IsNormalizedIsZero2169A$id5825X@33?Y?IsNormalizedIsZero2170A$id5826X`ff?Y?IsNormalizedIsZero2171A$id5827X`ff?YVU?IsNormalizedIsZero2172A$id5828X@33?YVU?IsNormalizedIsZero2173A$id5829X@33?YVU?IsNormalizedIsZero2174A$id5830X`ff?YVU?IsNormalizedIsZero2175A$id5831X`ff?Y?IsNormalizedIsZero2176A$id5832X@33?Y?IsNormalizedIsZero2177A$id5833X@33?Y?IsNormalizedIsZero2178A$id5834X`ff?Y?IsNormalizedIsZero2179A$id5835X`ff?Y?IsNormalizedIsZero2180A$id5836X@33?Y?IsNormalizedIsZero2181A$id5837X@33?YVU?IsNormalizedIsZero2182A$id5838X`ff?YVU?IsNormalizedIsZero2183A$id5839X?YVU?IsNormalizedIsZero2184A$id5840X?YVU?IsNormalizedIsZero2185A$id5841X?Y?IsNormalizedIsZero2186A$id5842X?Y?IsNormalizedIsZero2187A$id5843X?Y?IsNormalizedIsZero2188A$id5844X?Y?IsNormalizedIsZero2189A$id5845X?Y?IsNormalizedIsZero2190A$id5846X?Y?IsNormalizedIsZero2191A$id5847X?Y?IsNormalizedIsZero2192A$id5848X?Y?IsNormalizedIsZero2193A$id5849X?YVU?IsNormalizedIsZero2194A$id5850X?YVU?IsNormalizedIsZero2195A$id5851X?YVU?IsNormalizedIsZero2196A$id5852X?YVU?IsNormalizedIsZero2197A$id5853X?Y?IsNormalizedIsZero2198A$id5854X?Y?IsNormalizedIsZero2199A$id5855X?Y?IsNormalizedIsZero2200A$id5856X?Y?IsNormalizedIsZero2201A$id5857X?Y?IsNormalizedIsZero2202A$id5858X?Y?IsNormalizedIsZero2203A$id5859X?YVU?IsNormalizedIsZero2204A$id5860X?YVU?IsNormalizedIsZero2205A$id5861X?YVU?IsNormalizedIsZero2206A$id5862X`ff?YVU?IsNormalizedIsZero2207A$id5863X`ff?Y?IsNormalizedIsZero2208A$id5864X?Y?IsNormalizedIsZero2209A$id5865X?Y?IsNormalizedIsZero2210A$id5866X`ff?Y?IsNormalizedIsZero2211A$id5867X`ff?Y?IsNormalizedIsZero2212A$id5868X?Y?IsNormalizedIsZero2213A$id5869X?Y?IsNormalizedIsZero2214A$id5870X`ff?Y?IsNormalizedIsZero2215A$id5871X`ff?YVU?IsNormalizedIsZero2216A$id5872X?YVU?IsNormalizedIsZero2217A$id5873X?YVU?IsNormalizedIsZero2218A$id5874X`ff?YVU?IsNormalizedIsZero2219A$id5875X`ff?Y?IsNormalizedIsZero2220A$id5876X?Y?IsNormalizedIsZero2221A$id5877X?Y?IsNormalizedIsZero2222A$id5878X`ff?Y?IsNormalizedIsZero2223A$id5879X`ff?Y?IsNormalizedIsZero2224A$id5880X?Y?IsNormalizedIsZero2225A$id5881X?YVU?IsNormalizedIsZero2226A$id5882X`ff?YVU?IsNormalizedIsZero2227A$id5883X@33?Y?IsNormalizedIsZero2228A$id5884X?Y?IsNormalizedIsZero2229A$id5885X?Y?IsNormalizedIsZero2230A$id5886X@33?Y?IsNormalizedIsZero2231A$id5887X@33?YVU?IsNormalizedIsZero2232A$id5888X?YVU?IsNormalizedIsZero2233A$id5889X?Y?IsNormalizedIsZero2234A$id5890X@33?Y?IsNormalizedIsZero2235A$id5891X@33?Y?IsNormalizedIsZero2236A$id5892X?Y?IsNormalizedIsZero2237A$id5893X?YVU?IsNormalizedIsZero2238A$id5894X@33?YVU?IsNormalizedIsZero2239A$id5895X@33?Y?IsNormalizedIsZero2240A$id5896X?Y?IsNormalizedIsZero2241A$id5897X?Y?IsNormalizedIsZero2242A$id5898X@33?Y?IsNormalizedIsZero2243A$id5899X@33?YVU?IsNormalizedIsZero2244A$id5900X?YVU?IsNormalizedIsZero2245A$id5901X?Y?IsNormalizedIsZero2246A$id5902X@33?Y?IsNormalizedIsZero2247A$id5903X@33?Y?IsNormalizedIsZero2248A$id5904X?Y?IsNormalizedIsZero2249A$id5905X?YVU?IsNormalizedIsZero2250A$id5906X@33?YVU?IsNormalizedIsZero2251A$id5907X?Y?IsNormalizedIsZero2252A$id5908X?Y?IsNormalizedIsZero2253A$id5909X?Y?IsNormalizedIsZero2254A$id5910X?Y?IsNormalizedIsZero2255A$id5911X?YVU?IsNormalizedIsZero2256A$id5912X?Y?IsNormalizedIsZero2257A$id5913X?Y?IsNormalizedIsZero2258A$id5914X?YVU?IsNormalizedIsZero2259A$id5915X?Y?IsNormalizedIsZero2260A$id5916X?YVU?IsNormalizedIsZero2261A$id5917X?YVU?IsNormalizedIsZero2262A$id5918X?Y?IsNormalizedIsZero2263A$id5919X?Y?IsNormalizedIsZero2264A$id5920X?Y?IsNormalizedIsZero2265A$id5921X?Y?IsNormalizedIsZero2266A$id5922X?Y?IsNormalizedIsZero2267A$id5923X?YVU?IsNormalizedIsZero2268A$id5924X?Y?IsNormalizedIsZero2269A$id5925X?Y?IsNormalizedIsZero2270A$id5926X?YVU?IsNormalizedIsZero2271A$id5927X?Y?IsNormalizedIsZero2272A$id5928X?Y?IsNormalizedIsZero2273A$id5929X?YVU?IsNormalizedIsZero2274A$id5930X?YVU?IsNormalizedIsZero2275A$id5931X`ff?Y?IsNormalizedIsZero2276A$id5932X`ff?Y?IsNormalizedIsZero2277A$id5933X?Y?IsNormalizedIsZero2278A$id5934X?Y?IsNormalizedIsZero2279A$id5935X`ff?YVU?IsNormalizedIsZero2280A$id5936X`ff?Y?IsNormalizedIsZero2281A$id5937X?Y?IsNormalizedIsZero2282A$id5938X?YVU?IsNormalizedIsZero2283A$id5939X`ff?Y?IsNormalizedIsZero2284A$id5940X`ff?YVU?IsNormalizedIsZero2285A$id5941X?YVU?IsNormalizedIsZero2286A$id5942X?Y?IsNormalizedIsZero2287A$id5943X`ff?Y?IsNormalizedIsZero2288A$id5944X`ff?Y?IsNormalizedIsZero2289A$id5945X?Y?IsNormalizedIsZero2290A$id5946X?Y?IsNormalizedIsZero2291A$id5947X`ff?YVU?IsNormalizedIsZero2292A$id5948X`ff?Y?IsNormalizedIsZero2293A$id5949X?Y?IsNormalizedIsZero2294A$id5950X?YVU?IsNormalizedIsZero2295A$id5951X`ff?Y?IsNormalizedIsZero2296A$id5952X`ff?YVU?IsNormalizedIsZero2297A$id5953X?YVU?IsNormalizedIsZero2298A$id5954X?Y?IsNormalizedIsZero2299A$id5955X@33?Y?IsNormalizedIsZero2300A$id5956X@33?Y?IsNormalizedIsZero2301A$id5957X?Y?IsNormalizedIsZero2302A$id5958X?Y?IsNormalizedIsZero2303A$id5959X@33?YVU?IsNormalizedIsZero2304A$id5960X@33?Y?IsNormalizedIsZero2305A$id5961X?Y?IsNormalizedIsZero2306A$id5962X?YVU?IsNormalizedIsZero2307A$id5963X@33?Y?IsNormalizedIsZero2308A$id5964X@33?YVU?IsNormalizedIsZero2309A$id5965X?YVU?IsNormalizedIsZero2310A$id5966X?Y?IsNormalizedIsZero2311A$id5967X@33?Y?IsNormalizedIsZero2312A$id5968X@33?Y?IsNormalizedIsZero2313A$id5969X?Y?IsNormalizedIsZero2314A$id5970X?Y?IsNormalizedIsZero2315A$id5971X@33?YVU?IsNormalizedIsZero2316A$id5972X@33?Y?IsNormalizedIsZero2317A$id5973X?Y?IsNormalizedIsZero2318A$id5974X?YVU?IsNormalizedIsZero2319A$id5975X@33?Y?IsNormalizedIsZero2320A$id5976X@33?YVU?IsNormalizedIsZero2321A$id5977X?YVU?IsNormalizedIsZero2322A$id5978X?Y?IsNormalizedIsZero2323A$id5979X?Y?IsNormalizedIsZero2324A$id5980X?Y?IsNormalizedIsZero2325A$id5981X?Y?IsNormalizedIsZero2326A$id5982X?Y?IsNormalizedIsZero2327A$id5983X?YVU?IsNormalizedIsZero2328A$id5984X?Y?IsNormalizedIsZero2329A$id5985X?Y?IsNormalizedIsZero2330A$id5986X?YVU?IsNormalizedIsZero2331A$id5987X?Y?IsNormalizedIsZero2332A$id5988X?YVU?IsNormalizedIsZero2333A$id5989X?YVU?IsNormalizedIsZero2334A$id5990X?Y?IsNormalizedIsZero2335A$id5991X?Y?IsNormalizedIsZero2336A$id5992X?Y?IsNormalizedIsZero2337A$id5993X?Y?IsNormalizedIsZero2338A$id5994X?Y?IsNormalizedIsZero2339A$id5995X?YVU?IsNormalizedIsZero2340A$id5996X?Y?IsNormalizedIsZero2341A$id5997X?Y?IsNormalizedIsZero2342A$id5998X?YVU?IsNormalizedIsZero2343A$id5999X?Y?IsNormalizedIsZero2344A$id6000X?YVU?IsNormalizedIsZero2345A$id6001X?YVU?IsNormalizedIsZero2346A$id6002X?Y?IsNormalizedIsZero2347A$id6003X?Y?IsNormalizedIsZero2348A$id6004X?Y?IsNormalizedIsZero2349A$id6005X`ff?Y?IsNormalizedIsZero2350A$id6006X`ff?Y?IsNormalizedIsZero2351A$id6007X?YVU?IsNormalizedIsZero2352A$id6008X?Y?IsNormalizedIsZero2353A$id6009X`ff?Y?IsNormalizedIsZero2354A$id6010X`ff?YVU?IsNormalizedIsZero2355A$id6011X?Y?IsNormalizedIsZero2356A$id6012X?YVU?IsNormalizedIsZero2357A$id6013X`ff?YVU?IsNormalizedIsZero2358A$id6014X`ff?Y?IsNormalizedIsZero2359A$id6015X?Y?IsNormalizedIsZero2360A$id6016X?Y?IsNormalizedIsZero2361A$id6017X`ff?Y?IsNormalizedIsZero2362A$id6018X`ff?Y?IsNormalizedIsZero2363A$id6019X?YVU?IsNormalizedIsZero2364A$id6020X?Y?IsNormalizedIsZero2365A$id6021X`ff?Y?IsNormalizedIsZero2366A$id6022X`ff?YVU?IsNormalizedIsZero2367A$id6023X?Y?IsNormalizedIsZero2368A$id6024X?YVU?IsNormalizedIsZero2369A$id6025X`ff?YVU?IsNormalizedIsZero2370A$id6026X`ff?Y?IsNormalizedIsZero2371A$id6027X@33?Y?IsNormalizedIsZero2372A$id6028X@33?Y?IsNormalizedIsZero2373A$id6029X?Y?IsNormalizedIsZero2374A$id6030X?Y?IsNormalizedIsZero2375A$id6031X@33?YVU?IsNormalizedIsZero2376A$id6032X@33?Y?IsNormalizedIsZero2377A$id6033X?Y?IsNormalizedIsZero2378A$id6034X?YVU?IsNormalizedIsZero2379A$id6035X@33?Y?IsNormalizedIsZero2380A$id6036X@33?YVU?IsNormalizedIsZero2381A$id6037X?YVU?IsNormalizedIsZero2382A$id6038X?Y?IsNormalizedIsZero2383A$id6039X@33?Y?IsNormalizedIsZero2384A$id6040X@33?Y?IsNormalizedIsZero2385A$id6041X?Y?IsNormalizedIsZero2386A$id6042X?Y?IsNormalizedIsZero2387A$id6043X@33?YVU?IsNormalizedIsZero2388A$id6044X@33?Y?IsNormalizedIsZero2389A$id6045X?Y?IsNormalizedIsZero2390A$id6046X?YVU?IsNormalizedIsZero2391A$id6047X?Y?IsNormalizedIsZero2392A$id6048X@33?Y?IsNormalizedIsZero2393A$id6049X@33?YVU?IsNormalizedIsZero2394A$id6050X?YVU?IsNormalizedIsZero2395A$id6051X?Y?IsNormalizedIsZero2396A$id6052X?Y?IsNormalizedIsZero2397A$id6053X@33?Y?IsNormalizedIsZero2398A$id6054X@33?Y?IsNormalizedIsZero2399A$id6055X?YVU?IsNormalizedIsZero2400A$id6056X?Y?IsNormalizedIsZero2401A$id6057X@33?Y?IsNormalizedIsZero2402A$id6058X@33?YVU?IsNormalizedIsZero2403A$id6059X?Y?IsNormalizedIsZero2404A$id6060X?YVU?IsNormalizedIsZero2405A$id6061X@33?YVU?IsNormalizedIsZero2406A$id6062X@33?Y?IsNormalizedIsZero2407A$id6063X?Y?IsNormalizedIsZero2408A$id6064X?Y?IsNormalizedIsZero2409A$id6065X@33?Y?IsNormalizedIsZero2410A$id6066X@33?Y?IsNormalizedIsZero2411A$id6067X@33?YVU?IsNormalizedIsZero2412A$id6068X?YVU?IsNormalizedIsZero2413A$id6069X?Y?IsNormalizedIsZero2414A$id6070X@33?Y?IsNormalizedIsZero2415A$id6071X@33?Y?IsNormalizedIsZero2416A$id6072X?Y?IsNormalizedIsZero2417A$id6073X?YVU?IsNormalizedIsZero2418A$id6074X@33?YVU?IsNormalizedIsZero2419A$id6075X?Y?IsNormalizedIsZero2420A$id6076X?Y?IsNormalizedIsZero2421A$id6077X?Y?IsNormalizedIsZero2422A$id6078X?Y?IsNormalizedIsZero2423A$id6079X?YVU?IsNormalizedIsZero2424A$id6080X?Y?IsNormalizedIsZero2425A$id6081X?Y?IsNormalizedIsZero2426A$id6082X?YVU?IsNormalizedIsZero2427A$id6083X?Y?IsNormalizedIsZero2428A$id6084X?YVU?IsNormalizedIsZero2429A$id6085X?YVU?IsNormalizedIsZero2430A$id6086X?Y?IsNormalizedIsZero2431A$id6087X?Y?IsNormalizedIsZero2432A$id6088X?Y?IsNormalizedIsZero2433A$id6089X?Y?IsNormalizedIsZero2434A$id6090X?Y?IsNormalizedIsZero2435A$id6091X?YVU?IsNormalizedIsZero2436A$id6092X?YVU?IsNormalizedIsZero2437A$id6093X?Y?IsNormalizedIsZero2438A$id6094X?Y?IsNormalizedIsZero2439A$id6095X?Y?IsNormalizedIsZero2440A$id6096X?Y?IsNormalizedIsZero2441A$id6097X?YVU?IsNormalizedIsZero2442A$id6098X?YVU?IsNormalizedIsZero2443A$id6099X?Y?IsNormalizedIsZero2444A$id6100X?YVU?IsNormalizedIsZero2445A$id6101X?YVU?IsNormalizedIsZero2446A$id6102X?Y?IsNormalizedIsZero2447A$id6103X?Y?IsNormalizedIsZero2448A$id6104X?Y?IsNormalizedIsZero2449A$id6105X?Y?IsNormalizedIsZero2450A$id6106X?Y?IsNormalizedIsZero2451A$id6107X?YVU?IsNormalizedIsZero2452A$id6108X?Y?IsNormalizedIsZero2453A$id6109X?Y?IsNormalizedIsZero2454A$id6110X?YVU?IsNormalizedIsZero2455A$id6111X?Y?IsNormalizedIsZero2456A$id6112X?Y?IsNormalizedIsZero2457A$id6113X?YVU?IsNormalizedIsZero2458A$id6114X?YVU?IsNormalizedIsZero2459A$id6115X?Y?IsNormalizedIsZero2460A$id6116X?Y?IsNormalizedIsZero2461A$id6117X?Y?IsNormalizedIsZero2462A$id6118X?Y?IsNormalizedIsZero2463A$id6119X?YVU?IsNormalizedIsZero2464A$id6120X?YVU?IsNormalizedIsZero2465A$id6121X?Y?IsNormalizedIsZero2466A$id6122X?YVU?IsNormalizedIsZero2467A$id6123X@33?YVU?IsNormalizedIsZero2468A$id6124X@33?Y?IsNormalizedIsZero2469A$id6125X?Y?IsNormalizedIsZero2470A$id6126X?Y?IsNormalizedIsZero2471A$id6127X@33?Y?IsNormalizedIsZero2472A$id6128X@33?Y?IsNormalizedIsZero2473A$id6129X?YVU?IsNormalizedIsZero2474A$id6130X?Y?IsNormalizedIsZero2475A$id6131X@33?Y?IsNormalizedIsZero2476A$id6132X@33?YVU?IsNormalizedIsZero2477A$id6133X?Y?IsNormalizedIsZero2478A$id6134X?YVU?IsNormalizedIsZero2479A$id6135X@33?YVU?IsNormalizedIsZero2480A$id6136X@33?Y?IsNormalizedIsZero2481A$id6137X?Y?IsNormalizedIsZero2482A$id6138X@33?Y?IsNormalizedIsZero2483A$id6139X@33?Y?IsNormalizedIsZero2484A$id6140X?Y?IsNormalizedIsZero2485A$id6141X?YVU?IsNormalizedIsZero2486A$id6142X@33?YVU?IsNormalizedIsZero2487A$id6143X@33?Y?IsNormalizedIsZero2488A$id6144X@33?YVU?IsNormalizedIsZero2489A$id6145X?YVU?IsNormalizedIsZero2490A$id6146X?Y?IsNormalizedIsZero2491A$id6147X@33?Y?IsNormalizedIsZero2492A$id6148X@33?Y?IsNormalizedIsZero2493A$id6149X?Y?IsNormalizedIsZero2494A$id6150X?Y?IsNormalizedIsZero2495A$id6151X@33?YVU?IsNormalizedIsZero2496A$id6152X@33?Y?IsNormalizedIsZero2497A$id6153X?Y?IsNormalizedIsZero2498A$id6154X?YVU?IsNormalizedIsZero2499A$id6155X@33?Y?IsNormalizedIsZero2500A$id6156X@33?YVU?IsNormalizedIsZero2501A$id6157X?YVU?IsNormalizedIsZero2502A$id6158X?Y?IsNormalizedIsZero2503A$id6159X@33?Y?IsNormalizedIsZero2504A$id6160X@33?Y?IsNormalizedIsZero2505A$id6161X?Y?IsNormalizedIsZero2506A$id6162X?Y?IsNormalizedIsZero2507A$id6163X@33?YVU?IsNormalizedIsZero2508A$id6164X?YVU?IsNormalizedIsZero2509A$id6165X?Y?IsNormalizedIsZero2510A$id6166X?YVU?IsNormalizedIsZero2511A$id6167X`ff?YVU?IsNormalizedIsZero2512A$id6168X`ff?Y?IsNormalizedIsZero2513A$id6169X?Y?IsNormalizedIsZero2514A$id6170X?Y?IsNormalizedIsZero2515A$id6171X`ff?Y?IsNormalizedIsZero2516A$id6172X`ff?Y?IsNormalizedIsZero2517A$id6173X?YVU?IsNormalizedIsZero2518A$id6174X?Y?IsNormalizedIsZero2519A$id6175X`ff?Y?IsNormalizedIsZero2520A$id6176X`ff?YVU?IsNormalizedIsZero2521A$id6177X?Y?IsNormalizedIsZero2522A$id6178X?YVU?IsNormalizedIsZero2523A$id6179X`ff?YVU?IsNormalizedIsZero2524A$id6180X`ff?Y?IsNormalizedIsZero2525A$id6181X?Y?IsNormalizedIsZero2526A$id6182X?Y?IsNormalizedIsZero2527A$id6183X`ff?Y?IsNormalizedIsZero2528A$id6184X`ff?Y?IsNormalizedIsZero2529A$id6185X?YVU?IsNormalizedIsZero2530A$id6186X`ff?YVU?IsNormalizedIsZero2531A$id6187X?Y?IsNormalizedIsZero2532A$id6188X?YVU?IsNormalizedIsZero2533A$id6189X?YVU?IsNormalizedIsZero2534A$id6190X?Y?IsNormalizedIsZero2535A$id6191X?Y?IsNormalizedIsZero2536A$id6192X?Y?IsNormalizedIsZero2537A$id6193X?Y?IsNormalizedIsZero2538A$id6194X?Y?IsNormalizedIsZero2539A$id6195X?YVU?IsNormalizedIsZero2540A$id6196X?Y?IsNormalizedIsZero2541A$id6197X?Y?IsNormalizedIsZero2542A$id6198X?YVU?IsNormalizedIsZero2543A$id6199X?Y?IsNormalizedIsZero2544A$id6200X?YVU?IsNormalizedIsZero2545A$id6201X?YVU?IsNormalizedIsZero2546A$id6202X?Y?IsNormalizedIsZero2547A$id6203X?Y?IsNormalizedIsZero2548A$id6204X?Y?IsNormalizedIsZero2549A$id6205X?Y?IsNormalizedIsZero2550A$id6206X?Y?IsNormalizedIsZero2551A$id6207X?YVU?IsNormalizedIsZero2552A$id6208X?YVU?IsNormalizedIsZero2553A$id6209X@33?YVU?IsNormalizedIsZero2554A$id6210X?YVU?IsNormalizedIsZero2555A$id6211X?Y?IsNormalizedIsZero2556A$id6212X@33?Y?IsNormalizedIsZero2557A$id6213X@33?Y?IsNormalizedIsZero2558A$id6214X?Y?IsNormalizedIsZero2559A$id6215X?Y?IsNormalizedIsZero2560A$id6216X@33?Y?IsNormalizedIsZero2561A$id6217X@33?Y?IsNormalizedIsZero2562A$id6218X?Y?IsNormalizedIsZero2563A$id6219X?YVU?IsNormalizedIsZero2564A$id6220X@33?YVU?IsNormalizedIsZero2565A$id6221X@33?YVU?IsNormalizedIsZero2566A$id6222X?YVU?IsNormalizedIsZero2567A$id6223X?Y?IsNormalizedIsZero2568A$id6224X@33?Y?IsNormalizedIsZero2569A$id6225X@33?Y?IsNormalizedIsZero2570A$id6226X?Y?IsNormalizedIsZero2571A$id6227X?Y?IsNormalizedIsZero2572A$id6228X@33?Y?IsNormalizedIsZero2573A$id6229X@33?YVU?IsNormalizedIsZero2574A$id6230X?YVU?IsNormalizedIsZero2575A$id6231X`ff?YVU?IsNormalizedIsZero2576A$id6232X?YVU?IsNormalizedIsZero2577A$id6233X?Y?IsNormalizedIsZero2578A$id6234X`ff?Y?IsNormalizedIsZero2579A$id6235X`ff?Y?IsNormalizedIsZero2580A$id6236X?Y?IsNormalizedIsZero2581A$id6237X?Y?IsNormalizedIsZero2582A$id6238X`ff?Y?IsNormalizedIsZero2583A$id6239X`ff?Y?IsNormalizedIsZero2584A$id6240X?Y?IsNormalizedIsZero2585A$id6241X?YVU?IsNormalizedIsZero2586A$id6242X`ff?YVU?IsNormalizedIsZero2587A$id6243X`ff?YVU?IsNormalizedIsZero2588A$id6244X?YVU?IsNormalizedIsZero2589A$id6245X?Y?IsNormalizedIsZero2590A$id6246X`ff?Y?IsNormalizedIsZero2591A$id6247X`ff?Y?IsNormalizedIsZero2592A$id6248X?Y?IsNormalizedIsZero2593A$id6249X?Y?IsNormalizedIsZero2594A$id6250X`ff?Y?IsNormalizedIsZero2595A$id6251X`ff?YVU?IsNormalizedIsZero2596A$id6252X?YVU?IsNormalizedIsZero2597A$id6253X?Y?IsNormalizedIsZero2598A$id6254X?Y?IsNormalizedIsZero2599A$id6255X?Y?IsNormalizedIsZero2600A$id6256X?Y?IsNormalizedIsZero2601A$id6257X?YVU?IsNormalizedIsZero2602A$id6258X?YVU?IsNormalizedIsZero2603A$id6259X?Y?IsNormalizedIsZero2604A$id6260X?Y?IsNormalizedIsZero2605A$id6261X?Y?IsNormalizedIsZero2606A$id6262X?Y?IsNormalizedIsZero2607A$id6263X?YVU?IsNormalizedIsZero2608A$id6264X?YVU?IsNormalizedIsZero2609A$id6265X?Y?IsNormalizedIsZero2610A$id6266X?Y?IsNormalizedIsZero2611A$id6267X?Y?IsNormalizedIsZero2612A$id6268X?Y?IsNormalizedIsZero2613A$id6269X?YVU?IsNormalizedIsZero2614A$id6270X?YVU?IsNormalizedIsZero2615A$id6271X?Y?IsNormalizedIsZero2616A$id6272X?Y?IsNormalizedIsZero2617A$id6273X?Y?IsNormalizedIsZero2618A$id6274X?Y?IsNormalizedIsZero2619A$id6275X?YVU?IsNormalizedIsZero2620A$id6276X?YVU?IsNormalizedIsZero2621A$id6277X@33?Y?IsNormalizedIsZero2622A$id6278X?Y?IsNormalizedIsZero2623A$id6279X?Y?IsNormalizedIsZero2624A$id6280X@33?Y?IsNormalizedIsZero2625A$id6281X@33?YVU?IsNormalizedIsZero2626A$id6282X?YVU?IsNormalizedIsZero2627A$id6283X?Y?IsNormalizedIsZero2628A$id6284X@33?Y?IsNormalizedIsZero2629A$id6285X@33?Y?IsNormalizedIsZero2630A$id6286X?Y?IsNormalizedIsZero2631A$id6287X?YVU?IsNormalizedIsZero2632A$id6288X@33?YVU?IsNormalizedIsZero2633A$id6289X@33?Y?IsNormalizedIsZero2634A$id6290X?Y?IsNormalizedIsZero2635A$id6291X?Y?IsNormalizedIsZero2636A$id6292X@33?Y?IsNormalizedIsZero2637A$id6293X@33?YVU?IsNormalizedIsZero2638A$id6294X?YVU?IsNormalizedIsZero2639A$id6295X?Y?IsNormalizedIsZero2640A$id6296X@33?Y?IsNormalizedIsZero2641A$id6297X@33?Y?IsNormalizedIsZero2642A$id6298X?Y?IsNormalizedIsZero2643A$id6299X?YVU?IsNormalizedIsZero2644A$id6300X@33?YVU?IsNormalizedIsZero2645A$id6301X`ff?Y?IsNormalizedIsZero2646A$id6302X?Y?IsNormalizedIsZero2647A$id6303X?Y?IsNormalizedIsZero2648A$id6304X`ff?Y?IsNormalizedIsZero2649A$id6305X`ff?YVU?IsNormalizedIsZero2650A$id6306X?YVU?IsNormalizedIsZero2651A$id6307X?Y?IsNormalizedIsZero2652A$id6308X`ff?Y?IsNormalizedIsZero2653A$id6309X`ff?Y?IsNormalizedIsZero2654A$id6310X?Y?IsNormalizedIsZero2655A$id6311X?YVU?IsNormalizedIsZero2656A$id6312X`ff?YVU?IsNormalizedIsZero2657A$id6313X`ff?Y?IsNormalizedIsZero2658A$id6314X?Y?IsNormalizedIsZero2659A$id6315X?Y?IsNormalizedIsZero2660A$id6316X`ff?Y?IsNormalizedIsZero2661A$id6317X`ff?YVU?IsNormalizedIsZero2662A$id6318X?YVU?IsNormalizedIsZero2663A$id6319X?Y?IsNormalizedIsZero2664A$id6320X`ff?Y?IsNormalizedIsZero2665A$id6321X`ff?Y?IsNormalizedIsZero2666A$id6322X?Y?IsNormalizedIsZero2667A$id6323X?YVU?IsNormalizedIsZero2668A$id6324X`ff?YVU?IsNormalizedIsZero2669A$id6325X?Y?IsNormalizedIsZero2670A$id6326X?Y?IsNormalizedIsZero2671A$id6327X?Y?IsNormalizedIsZero2672A$id6328X?Y?IsNormalizedIsZero2673A$id6329X?YVU?IsNormalizedIsZero2674A$id6330X?YVU?IsNormalizedIsZero2675A$id6331X?Y?IsNormalizedIsZero2676A$id6332X?Y?IsNormalizedIsZero2677A$id6333X?Y?IsNormalizedIsZero2678A$id6334X?Y?IsNormalizedIsZero2679A$id6335X?YVU?IsNormalizedIsZero2680A$id6336X?YVU?IsNormalizedIsZero2681A$id6337X?Y?IsNormalizedIsZero2682A$id6338X?Y?IsNormalizedIsZero2683A$id6339X?Y?IsNormalizedIsZero2684A$id6340X?Y?IsNormalizedIsZero2685A$id6341X?YVU?IsNormalizedIsZero2686A$id6342X?YVU?IsNormalizedIsZero2687A$id6343X?Y?IsNormalizedIsZero2688A$id6344X?Y?IsNormalizedIsZero2689A$id6345X?Y?IsNormalizedIsZero2690A$id6346X?Y?IsNormalizedIsZero2691A$id6347X?YVU?IsNormalizedIsZero2692A$id6348X?YVU?IsNormalizedIsZero2693A$id6349X`ff?Y?IsNormalizedIsZero2694A$id6350X@33?Y?IsNormalizedIsZero2695A$id6351X@33?Y?IsNormalizedIsZero2696A$id6352X`ff?Y?IsNormalizedIsZero2697A$id6353X`ff?YVU?IsNormalizedIsZero2698A$id6354X@33?YVU?IsNormalizedIsZero2699A$id6355X@33?Y?IsNormalizedIsZero2700A$id6356X`ff?Y?IsNormalizedIsZero2701A$id6357X`ff?Y?IsNormalizedIsZero2702A$id6358X@33?Y?IsNormalizedIsZero2703A$id6359X@33?YVU?IsNormalizedIsZero2704A$id6360X`ff?YVU?IsNormalizedIsZero2705A$id6361X`ff?Y?IsNormalizedIsZero2706A$id6362X@33?Y?IsNormalizedIsZero2707A$id6363X@33?Y?IsNormalizedIsZero2708A$id6364X`ff?Y?IsNormalizedIsZero2709A$id6365X`ff?YVU?IsNormalizedIsZero2710A$id6366X@33?YVU?IsNormalizedIsZero2711A$id6367X@33?Y?IsNormalizedIsZero2712A$id6368X`ff?Y?IsNormalizedIsZero2713A$id6369X`ff?Y?IsNormalizedIsZero2714A$id6370X@33?Y?IsNormalizedIsZero2715A$id6371X@33?YVU?IsNormalizedIsZero2716A$id6372X`ff?YVU?IsNormalizedIsZero2717A$id6373X?YVU?IsNormalizedIsZero2718A$id6374X?YVU?IsNormalizedIsZero2719A$id6375X?Y?IsNormalizedIsZero2720A$id6376X?Y?IsNormalizedIsZero2721A$id6377X?Y?IsNormalizedIsZero2722A$id6378X?Y?IsNormalizedIsZero2723A$id6379X?Y?IsNormalizedIsZero2724A$id6380X?Y?IsNormalizedIsZero2725A$id6381X?Y?IsNormalizedIsZero2726A$id6382X?Y?IsNormalizedIsZero2727A$id6383X?YVU?IsNormalizedIsZero2728A$id6384X?YVU?IsNormalizedIsZero2729A$id6385X?YVU?IsNormalizedIsZero2730A$id6386X?YVU?IsNormalizedIsZero2731A$id6387X?Y?IsNormalizedIsZero2732A$id6388X?Y?IsNormalizedIsZero2733A$id6389X?Y?IsNormalizedIsZero2734A$id6390X?Y?IsNormalizedIsZero2735A$id6391X?Y?IsNormalizedIsZero2736A$id6392X?Y?IsNormalizedIsZero2737A$id6393X?YVU?IsNormalizedIsZero2738A$id6394X?YVU?IsNormalizedIsZero2739A$id6395X`ff?YVU?IsNormalizedIsZero2740A$id6396X?YVU?IsNormalizedIsZero2741A$id6397X?Y?IsNormalizedIsZero2742A$id6398X`ff?Y?IsNormalizedIsZero2743A$id6399X`ff?Y?IsNormalizedIsZero2744A$id6400X?Y?IsNormalizedIsZero2745A$id6401X?Y?IsNormalizedIsZero2746A$id6402X`ff?Y?IsNormalizedIsZero2747A$id6403X`ff?Y?IsNormalizedIsZero2748A$id6404X?Y?IsNormalizedIsZero2749A$id6405X?YVU?IsNormalizedIsZero2750A$id6406X`ff?YVU?IsNormalizedIsZero2751A$id6407X`ff?YVU?IsNormalizedIsZero2752A$id6408X?YVU?IsNormalizedIsZero2753A$id6409X?Y?IsNormalizedIsZero2754A$id6410X`ff?Y?IsNormalizedIsZero2755A$id6411X`ff?Y?IsNormalizedIsZero2756A$id6412X?Y?IsNormalizedIsZero2757A$id6413X?Y?IsNormalizedIsZero2758A$id6414X`ff?Y?IsNormalizedIsZero2759A$id6415X?YVU?IsNormalizedIsZero2760A$id6416X@33?YVU?IsNormalizedIsZero2761A$id6417X@33?Y?IsNormalizedIsZero2762A$id6418X?Y?IsNormalizedIsZero2763A$id6419X?Y?IsNormalizedIsZero2764A$id6420X@33?Y?IsNormalizedIsZero2765A$id6421X@33?Y?IsNormalizedIsZero2766A$id6422X?Y?IsNormalizedIsZero2767A$id6423X?Y?IsNormalizedIsZero2768A$id6424X@33?Y?IsNormalizedIsZero2769A$id6425X@33?YVU?IsNormalizedIsZero2770A$id6426X?YVU?IsNormalizedIsZero2771A$id6427X?YVU?IsNormalizedIsZero2772A$id6428X@33?YVU?IsNormalizedIsZero2773A$id6429X@33?Y?IsNormalizedIsZero2774A$id6430X?Y?IsNormalizedIsZero2775A$id6431X?Y?IsNormalizedIsZero2776A$id6432X@33?Y?IsNormalizedIsZero2777A$id6433X@33?Y?IsNormalizedIsZero2778A$id6434X?Y?IsNormalizedIsZero2779A$id6435X?YVU?IsNormalizedIsZero2780A$id6436X?YVU?IsNormalizedIsZero2781A$id6437X?Y?IsNormalizedIsZero2782A$id6438X?Y?IsNormalizedIsZero2783A$id6439X?Y?IsNormalizedIsZero2784A$id6440X?Y?IsNormalizedIsZero2785A$id6441X?Y?IsNormalizedIsZero2786A$id6442X?Y?IsNormalizedIsZero2787A$id6443X?Y?IsNormalizedIsZero2788A$id6444X?Y?IsNormalizedIsZero2789A$id6445X?YVU?IsNormalizedIsZero2790A$id6446X?YVU?IsNormalizedIsZero2791A$id6447X?YVU?IsNormalizedIsZero2792A$id6448X?YVU?IsNormalizedIsZero2793A$id6449X?Y?IsNormalizedIsZero2794A$id6450X?Y?IsNormalizedIsZero2795A$id6451X?Y?IsNormalizedIsZero2796A$id6452X?Y?IsNormalizedIsZero2797A$id6453X?Y?IsNormalizedIsZero2798A$id6454X?Y?IsNormalizedIsZero2799A$id6455X@33?YVU?IsNormalizedIsZero2800A$id6456X`ff?YVU?IsNormalizedIsZero2801A$id6457X`ff?Y?IsNormalizedIsZero2802A$id6458X@33?Y?IsNormalizedIsZero2803A$id6459X@33?Y?IsNormalizedIsZero2804A$id6460X`ff?Y?IsNormalizedIsZero2805A$id6461X`ff?Y?IsNormalizedIsZero2806A$id6462X@33?Y?IsNormalizedIsZero2807A$id6463X@33?Y?IsNormalizedIsZero2808A$id6464X`ff?Y?IsNormalizedIsZero2809A$id6465X`ff?YVU?IsNormalizedIsZero2810A$id6466X@33?YVU?IsNormalizedIsZero2811A$id6467X@33?YVU?IsNormalizedIsZero2812A$id6468X`ff?YVU?IsNormalizedIsZero2813A$id6469X`ff?Y?IsNormalizedIsZero2814A$id6470X@33?Y?IsNormalizedIsZero2815A$id6471X@33?Y?IsNormalizedIsZero2816A$id6472X`ff?Y?IsNormalizedIsZero2817A$id6473X`ff?Y?IsNormalizedIsZero2818A$id6474X@33?Y?IsNormalizedIsZero2819A$id6475X?YVU?IsNormalizedIsZero2820A$id6476X?YVU?IsNormalizedIsZero2821A$id6477X?Y?IsNormalizedIsZero2822A$id6478X?Y?IsNormalizedIsZero2823A$id6479X?Y?IsNormalizedIsZero2824A$id6480X?Y?IsNormalizedIsZero2825A$id6481X?Y?IsNormalizedIsZero2826A$id6482X?Y?IsNormalizedIsZero2827A$id6483X?Y?IsNormalizedIsZero2828A$id6484X?Y?IsNormalizedIsZero2829A$id6485X?YVU?IsNormalizedIsZero2830A$id6486X?YVU?IsNormalizedIsZero2831A$id6487X?Y?IsNormalizedIsZero2832A$id6488X?Yo?IsNormalizedIsZero2833A$id6489X?Yo?IsNormalizedIsZero2834A$id6490X?Y?IsNormalizedIsZero2835A$id6491X?Y?IsNormalizedIsZero2836A$id6492X?Y?IsNormalizedIsZero2837A$id6493X?Y?IsNormalizedIsZero2838A$id6494X?Y?IsNormalizedIsZero2839A$id6495X`ff?YVU?IsNormalizedIsZero2840A$id6496X?YVU?IsNormalizedIsZero2841A$id6497X?Y?IsNormalizedIsZero2842A$id6498X`ff?Y?IsNormalizedIsZero2843A$id6499X`ff?Y?IsNormalizedIsZero2844A$id6500X?Y?IsNormalizedIsZero2845A$id6501X?Y?IsNormalizedIsZero2846A$id6502X`ff?Y?IsNormalizedIsZero2847A$id6503X`ff?Y?IsNormalizedIsZero2848A$id6504X?Y?IsNormalizedIsZero2849A$id6505X?YVU?IsNormalizedIsZero2850A$id6506X`ff?YVU?IsNormalizedIsZero2851A$id6507X`ff?Y?IsNormalizedIsZero2852A$id6508X`ff?Yo?IsNormalizedIsZero2853A$id6509X?Yo?IsNormalizedIsZero2854A$id6510X?Y?IsNormalizedIsZero2855A$id6511X`ff?Y?IsNormalizedIsZero2856A$id6512X`ff?Y?IsNormalizedIsZero2857A$id6513X?Y?IsNormalizedIsZero2858A$id6514X?Y?IsNormalizedIsZero2859A$id6515X?YVU?IsNormalizedIsZero2860A$id6516X@33?YVU?IsNormalizedIsZero2861A$id6517X@33?Y?IsNormalizedIsZero2862A$id6518X?Y?IsNormalizedIsZero2863A$id6519X?Y?IsNormalizedIsZero2864A$id6520X@33?Y?IsNormalizedIsZero2865A$id6521X@33?Y?IsNormalizedIsZero2866A$id6522X?Y?IsNormalizedIsZero2867A$id6523X?Y?IsNormalizedIsZero2868A$id6524X@33?Y?IsNormalizedIsZero2869A$id6525X@33?YVU?IsNormalizedIsZero2870A$id6526X?YVU?IsNormalizedIsZero2871A$id6527X?Y?IsNormalizedIsZero2872A$id6528X ?Y?IsNormalizedIsZero2873A$id6529X ?Yo?IsNormalizedIsZero2874A$id6530X?Yo?IsNormalizedIsZero2875A$id6531X?Y?IsNormalizedIsZero2876A$id6532X?Y?IsNormalizedIsZero2877A$id6533X@33?Y?IsNormalizedIsZero2878A$id6534X@33?Y?IsNormalizedIsZero2879A$id6535X?YIsNormalizedIsZero2880A$id6536X?YIsNormalizedIsZero2881A$id6537X?Y?IsNormalizedIsZero2882A$id6538X?Y?IsNormalizedIsZero2883A$id6539XVU?YIsNormalizedIsZero2884A$id6540X?YIsNormalizedIsZero2885A$id6541X?Y?IsNormalizedIsZero2886A$id6542XVU?Y?IsNormalizedIsZero2887A$id6543X?YIsNormalizedIsZero2888A$id6544XVU?YIsNormalizedIsZero2889A$id6545XVU?Y?IsNormalizedIsZero2890A$id6546X?Y?IsNormalizedIsZero2891A$id6547X?Y?IsNormalizedIsZero2892A$id6548X?YIsNormalizedIsZero2893A$id6549X?YIsNormalizedIsZero2894A$id6550X?Y?IsNormalizedIsZero2895A$id6551XVU?Y?IsNormalizedIsZero2896A$id6552XVU?YIsNormalizedIsZero2897A$id6553X?YIsNormalizedIsZero2898A$id6554X?Y?IsNormalizedIsZero2899A$id6555X?Y?IsNormalizedIsZero2900A$id6556X?YIsNormalizedIsZero2901A$id6557XVU?YIsNormalizedIsZero2902A$id6558XVU?Y?IsNormalizedIsZero2903A$id6559XY?IsNormalizedIsZero2904A$id6560XY?IsNormalizedIsZero2905A$id6561X`U?Y?IsNormalizedIsZero2906A$id6562X`U?Y?IsNormalizedIsZero2907A$id6563XOU?Y?IsNormalizedIsZero2908A$id6564XOU?Y?IsNormalizedIsZero2909A$id6565X?Y?IsNormalizedIsZero2910A$id6566X?Y?IsNormalizedIsZero2911A$id6567X XU?Y?IsNormalizedIsZero2912A$id6568X XU?Y?IsNormalizedIsZero2913A$id6569X৪?Y?IsNormalizedIsZero2914A$id6570X৪?Y?IsNormalizedIsZero2915A$id6571X?Y?IsNormalizedIsZero2916A$id6572X?Y?IsNormalizedIsZero2917A$id6573X ?Y?IsNormalizedIsZero2918A$id6574X ?Y?IsNormalizedIsZero2919A$id6575XSU?Y?IsNormalizedIsZero2920A$id6576XSU?Y?IsNormalizedIsZero2921A$id6577X?Y?IsNormalizedIsZero2922A$id6578X?Y?IsNormalizedIsZero2923A$id6579X?Y?IsNormalizedIsZero2924A$id6580X?Y?IsNormalizedIsZero2925A$id6581X?Y?IsNormalizedIsZero2926A$id6582X@33?Y?IsNormalizedIsZero2927A$id6583X@33?Y?IsNormalizedIsZero2928A$id6584X?Y?IsNormalizedIsZero2929A$id6585X?Y?IsNormalizedIsZero2930A$id6586X`ff?Y?IsNormalizedIsZero2931A$id6587X?Y?IsNormalizedIsZero2932A$id6588X?Y?IsNormalizedIsZero2933A$id6589X@33?Y?IsNormalizedIsZero2934A$id6590X?Y?IsNormalizedIsZero2935A$id6591X`ff?Y?IsNormalizedIsZero2936A$id6592X?Y?IsNormalizedIsZero2937A$id6593X?Y?IsNormalizedIsZero2938A$id6594X?Y?IsNormalizedIsZero2939A$id6595X@33?Y?IsNormalizedIsZero2940A$id6596X?Y?IsNormalizedIsZero2941A$id6597X`ff?Y?IsNormalizedIsZero2942A$id6598X?Y?IsNormalizedIsZero2943A$id6599X?Y?IsNormalizedIsZero2944A$id6600X?Y?IsNormalizedIsZero2945A$id6601X`ff?Y?IsNormalizedIsZero2946A$id6602X@33?Y?IsNormalizedIsZero2947A$id6603X?Y?IsNormalizedIsZero2948A$id6604X?Y?IsNormalizedIsZero2949A$id6605X?Y?IsNormalizedIsZero2950A$id6606X`ff?Y?IsNormalizedIsZero2951A$id6607X?Y?IsNormalizedIsZero2952A$id6608X@33?Y?IsNormalizedIsZero2953A$id6609X?Y?IsNormalizedIsZero2954A$id6610X?Y?IsNormalizedIsZero2955A$id6611X@33?Y?IsNormalizedIsZero2956A$id6612X`ff?Y?IsNormalizedIsZero2957A$id6613X?Y?IsNormalizedIsZero2958A$id6614X?Y?IsNormalizedIsZero2959A$id6615X`ff?Y?IsNormalizedIsZero2960A$id6616X?Y?IsNormalizedIsZero2961A$id6617X?Y?IsNormalizedIsZero2962A$id6618X?Y?IsNormalizedIsZero2963A$id6619X@33?Y?IsNormalizedIsZero2964A$id6620X?Y?IsNormalizedIsZero2965A$id6621X?Y?IsNormalizedIsZero2966A$id6622XVU?Y?IsNormalizedIsZero2967A$id6623X?Y?IsNormalizedIsZero2968A$id6624X?Y?IsNormalizedIsZero2969A$id6625XVU?Y?IsNormalizedIsZero2970A$id6626X?Y?IsNormalizedIsZero2971A$id6627X?Y?IsNormalizedIsZero2972A$id6628XVU?Y?IsNormalizedIsZero2973A$id6629X?Y?IsNormalizedIsZero2974A$id6630X?Y?IsNormalizedIsZero2975A$id6631XVU?Y?IsNormalizedIsZero2976A$id6632X`U?YIsNormalizedIsZero2977A$id6633XYIsNormalizedIsZero2978A$id6634XOU?YIsNormalizedIsZero2979A$id6635X?YIsNormalizedIsZero2980A$id6636X XU?YIsNormalizedIsZero2981A$id6637X৪?YIsNormalizedIsZero2982A$id6638X?YIsNormalizedIsZero2983A$id6639X ?YIsNormalizedIsZero2984A$id6640XSU?YIsNormalizedIsZero2985A$id6641X?YIsNormalizedIsZero2986A$id6642X`ff?Y?IsNormalizedIsZero2987A$id6643X?YIsNormalizedIsZero2988A$id6644X?Y?IsNormalizedIsZero2989A$id6645X?Y?IsNormalizedIsZero2990A$id6646X@33?Y?IsNormalizedIsZero2991A$id6647X?Y?IsNormalizedIsZero2992A$id6648X?Y?IsNormalizedIsZero2993A$id6649X`ff?Y?IsNormalizedIsZero2994A$id6650X?Y?IsNormalizedIsZero2995A$id6651X?Y?IsNormalizedIsZero2996A$id6652X`ff?Y?IsNormalizedIsZero2997A$id6653XY?IsNormalizedIsZero2998A$id6654XY?IsNormalizedIsZero2999A$id6655XY?IsNormalizedIsZero3000A$id6656XYVU?IsNormalizedIsZero3001A$id6657XYVU?IsNormalizedIsZero3002A$id6658XY?IsNormalizedIsZero3003A$id6659XY?IsNormalizedIsZero3004A$id6660XY?IsNormalizedIsZero3005A$id6661XYVU?IsNormalizedIsZero3006A$id6662XY?IsNormalizedIsZero3007A$id6663XY?IsNormalizedIsZero3008A$id6664XYVU?IsNormalizedIsZero3009A$id6665XY?IsNormalizedIsZero3010A$id6666X?Y?IsNormalizedIsZero3011A$id6667XY?IsNormalizedIsZero3012A$id6668XYVU?IsNormalizedIsZero3013A$id6669XY?IsNormalizedIsZero3014A$id6670XY?IsNormalizedIsZero3015A$id6671XYVU?IsNormalizedIsZero3016A$id6672XY?IsNormalizedIsZero3017A$id6673XY?IsNormalizedIsZero3018A$id6674XYVU?IsNormalizedIsZero3019A$id6675XY?IsNormalizedIsZero3020A$id6676XY?IsNormalizedIsZero3021A$id6677XYVU?IsNormalizedIsZero3022A$id6678X@33?Y?IsNormalizedIsZero3023A$id6679X?Y?IsNormalizedIsZero3024A$id6680X?Y?IsNormalizedIsZero3025A$id6681X?Y?IsNormalizedIsZero3026A$id6682X`ff?Y?IsNormalizedIsZero3027A$id6683X@33?Y?IsNormalizedIsZero3028A$id6684X?Y?IsNormalizedIsZero3029A$id6685X?Y?IsNormalizedIsZero3030A$id6686X?Y?IsNormalizedIsZero3031A$id6687X?Y?IsNormalizedIsZero3032A$id6688X@33?Y?IsNormalizedIsZero3033A$id6689X?Y?IsNormalizedIsZero3034A$id6690X`ff?Y?IsNormalizedIsZero3035A$id6691X?Y?IsNormalizedIsZero3036A$id6692X?Y?IsNormalizedIsZero3037A$id6693X?Y?IsNormalizedIsZero3038A$id6694X?YVU?IsNormalizedIsZero3039A$id6695X`ff?Y?IsNormalizedIsZero3040A$id6696X@33?Y?IsNormalizedIsZero3041A$id6697X@33?YVU?IsNormalizedIsZero3042A$id6698X`ff?YVU?IsNormalizedIsZero3043A$id6699X?Y?IsNormalizedIsZero3044A$id6700X?Y?IsNormalizedIsZero3045A$id6701X?YVU?IsNormalizedIsZero3046A$id6702X?YVU?IsNormalizedIsZero3047A$id6703X?Y?IsNormalizedIsZero3048A$id6704X`ff?Y?IsNormalizedIsZero3049A$id6705X`ff?YVU?IsNormalizedIsZero3050A$id6706X?YVU?IsNormalizedIsZero3051A$id6707X@33?Y?IsNormalizedIsZero3052A$id6708X?Y?IsNormalizedIsZero3053A$id6709X?Y?IsNormalizedIsZero3054A$id6710X?YVU?IsNormalizedIsZero3055A$id6711X?YVU?IsNormalizedIsZero3056A$id6712X@33?YVU?IsNormalizedIsZero3057A$id6713X?Y?IsNormalizedIsZero3058A$id6714X?Y?IsNormalizedIsZero3059A$id6715X?Y?IsNormalizedIsZero3060A$id6716X?Y?IsNormalizedIsZero3061A$id6717X?YVU?IsNormalizedIsZero3062A$id6718X?YVU?IsNormalizedIsZero3063A$id6719X?YVU?IsNormalizedIsZero3064A$id6720X?YVU?IsNormalizedIsZero3065A$id6721X`ff?Y?IsNormalizedIsZero3066A$id6722X@33?Y?IsNormalizedIsZero3067A$id6723X@33?Y?IsNormalizedIsZero3068A$id6724X`ff?Y?IsNormalizedIsZero3069A$id6725X`ff?YVU?IsNormalizedIsZero3070A$id6726X@33?YVU?IsNormalizedIsZero3071A$id6727X@33?YVU?IsNormalizedIsZero3072A$id6728X`ff?YVU?IsNormalizedIsZero3073A$id6729XY?IsNormalizedIsZero3074A$id6730X ?Y?IsNormalizedIsZero3075A$id6731XSU?Y?IsNormalizedIsZero3076A$id6732XSU?YIsNormalizedIsZero3077A$id6733X ?YIsNormalizedIsZero3078A$id6734X?Y?IsNormalizedIsZero3079A$id6735X?Y?IsNormalizedIsZero3080A$id6736X?YVU?IsNormalizedIsZero3081A$id6737X?YVU?IsNormalizedIsZero3082A$id6738X ?Y?IsNormalizedIsZero3083A$id6739XSU?Y?IsNormalizedIsZero3084A$id6740X?Y?IsNormalizedIsZero3085A$id6741X@tA?Yo?IsNormalizedIsZero3086A$id6742X C9?Yo?IsNormalizedIsZero3087A$id6743X C9?Y?IsNormalizedIsZero3088A$id6744X@tA?Y?IsNormalizedIsZero3089A$id6745X@33?Y?IsNormalizedIsZero3090A$id6746X@33?Yo?IsNormalizedIsZero3091A$id6747X@33?Y?IsNormalizedIsZero3092A$id6748X@33?Y?IsNormalizedIsZero3093A$id6749X@33?Y?IsNormalizedIsZero3094A$id6750X@33?Y`?IsNormalizedIsZero3095A$id6751X@33?Y`?IsNormalizedIsZero3096A$id6752X@33?Y?IsNormalizedIsZero3097A$id6753X@33?Y?IsNormalizedIsZero3098A$id6754X@33?Y?IsNormalizedIsZero3099A$id6755X@33?Yo?IsNormalizedIsZero3100A$id6756X@33?Yo?IsNormalizedIsZero3101A$id6757X@33?YVU?IsNormalizedIsZero3102A$id6758X@33?Y?IsNormalizedIsZero3103A$id6759X@33?YVU?IsNormalizedIsZero3104A$id6760X@33?YVU?IsNormalizedIsZero3105A$id6761X@33?YVU?IsNormalizedIsZero3106A$id6762X@33?YVU?IsNormalizedIsZero3107A$id6763X C9?YVU?IsNormalizedIsZero3108A$id6764X@tA?YVU?IsNormalizedIsZero3109A$id6765X?YVU?IsNormalizedIsZero3110A$id6766X?YVU?IsNormalizedIsZero3111A$id6767X?YVU?IsNormalizedIsZero3112A$id6768X?YVU?IsNormalizedIsZero3113A$id6769X?YVU?IsNormalizedIsZero3114A$id6770X?YVU?IsNormalizedIsZero3115A$id6771X`ff?YVU?IsNormalizedIsZero3116A$id6772X`ff?YVU?IsNormalizedIsZero3117A$id6773X@33?YVU?IsNormalizedIsZero3118A$id6774X@33?YVU?IsNormalizedIsZero3119A$id6775X?YVU?IsNormalizedIsZero3120A$id6776X ?YVU?IsNormalizedIsZero3121A$id6777X?YVU?IsNormalizedIsZero3122A$id6778X?YVU?IsNormalizedIsZero3123A$id6779X?YVU?IsNormalizedIsZero3124A$id6780X?Yo?IsNormalizedIsZero3125A$id6781X?Y?IsNormalizedIsZero3126A$id6782X?Y`?IsNormalizedIsZero3127A$id6783X?Y?IsNormalizedIsZero3128A$id6784X?Y?IsNormalizedIsZero3129A$id6785X?Y?IsNormalizedIsZero3130A$id6786X?Y?IsNormalizedIsZero3131A$id6787X ?Y?IsNormalizedIsZero3132A$id6788X?Y?IsNormalizedIsZero3133A$id6789X ?Y?IsNormalizedIsZero3134A$id6790X?Y?IsNormalizedIsZero3135A$id6791X?Y?IsNormalizedIsZero3136A$id6792X?Y?IsNormalizedIsZero3137A$id6793X@33?Y?IsNormalizedIsZero3138A$id6794X?Y?IsNormalizedIsZero3139A$id6795X@33?Y?IsNormalizedIsZero3140A$id6796X@33?Y?IsNormalizedIsZero3141A$id6797X@33?Y?IsNormalizedIsZero3142A$id6798X@33?Y?IsNormalizedIsZero3143A$id6799X`ff?Y?IsNormalizedIsZero3144A$id6800X`ff?Y?IsNormalizedIsZero3145A$id6801X`ff?Y?IsNormalizedIsZero3146A$id6802X@33?Y?IsNormalizedIsZero3147A$id6803X`ff?Y?IsNormalizedIsZero3148A$id6804X`ff?Y?IsNormalizedIsZero3149A$id6805X?Y?IsNormalizedIsZero3150A$id6806X?Y?IsNormalizedIsZero3151A$id6807X?Y?IsNormalizedIsZero3152A$id6808X`ff?Y?IsNormalizedIsZero3153A$id6809X?Y?IsNormalizedIsZero3154A$id6810X?Y?IsNormalizedIsZero3155A$id6811X?Y?IsNormalizedIsZero3156A$id6812X?Y?IsNormalizedIsZero3157A$id6813X?Y?IsNormalizedIsZero3158A$id6814X?Y?IsNormalizedIsZero3159A$id6815X?Y?IsNormalizedIsZero3160A$id6816X?Y?IsNormalizedIsZero3161A$id6817X?Y?IsNormalizedIsZero3162A$id6818X?Y?IsNormalizedIsZero3163A$id6819X?Y?IsNormalizedIsZero3164A$id6820X?Y?IsNormalizedIsZero3165A$id6821X?Y?IsNormalizedIsZero3166A$id6822X?Y?IsNormalizedIsZero3167A$id6823X@tA?Y?IsNormalizedIsZero3168A$id6824X C9?Y?IsNormalizedIsZero3169A$id6825X C9?Y?IsNormalizedIsZero3170A$id6826X@33?Y?IsNormalizedIsZero3171A$id6827X?Y?IsNormalizedIsZero3172A$id6828X@33?Y?IsNormalizedIsZero3173A$id6829X@33?Y?IsNormalizedIsZero3174A$id6830X?Y?IsNormalizedIsZero3175A$id6831X?Y`?IsNormalizedIsZero3176A$id6832X?Y`?IsNormalizedIsZero3177A$id6833X?Y?IsNormalizedIsZero3178A$id6834X?YVU?IsNormalizedIsZero3179A$id6835X?Yo?IsNormalizedIsZero3180A$id6836X?Yo?IsNormalizedIsZero3181A$id6837X?YVU?IsNormalizedIsZero3182A$id6838X`ff?Y?IsNormalizedIsZero3183A$id6839X`ff?Y`?IsNormalizedIsZero3184A$id6840X?Y`?IsNormalizedIsZero3185A$id6841X?Y?IsNormalizedIsZero3186A$id6842X?YVU?IsNormalizedIsZero3187A$id6843X?Yo?IsNormalizedIsZero3188A$id6844X`ff?Yo?IsNormalizedIsZero3189A$id6845X`ff?YVU?IsNormalizedIsZero3190A$id6846X?Y?IsNormalizedIsZero3191A$id6847X ?Y?IsNormalizedIsZero3192A$id6848X ?Y`?IsNormalizedIsZero3193A$id6849X?Y`?IsNormalizedIsZero3194A$id6850X ?YVU?IsNormalizedIsZero3195A$id6851X?YVU?IsNormalizedIsZero3196A$id6852X?Yo?IsNormalizedIsZero3197A$id6853X ?Yo?IsNormalizedIsZero3198A$id6854X@tA?YVU?IsNormalizedIsZero3199A$id6855X C9?YVU?IsNormalizedIsZero3200A$id6856X C9?Yo?IsNormalizedIsZero3201A$id6857X@tA?Yo?IsNormalizedIsZero3202A$id6858X C9?Y?IsNormalizedIsZero3203A$id6859X@tA?Y?IsNormalizedIsZero3204A$id6860X@tA?Y`?IsNormalizedIsZero3205A$id6861X C9?Y`?IsNormalizedIsZero3206A$id6862X@33?Yo?IsNormalizedIsZero3207A$id6863X@33?YVU?IsNormalizedIsZero3208A$id6864X@33?Y?IsNormalizedIsZero3209A$id6865X@33?Y`?IsNormalizedIsZero3210A$id6866X?Y?IsNormalizedIsZero3211A$id6867X?Y?IsNormalizedIsZero3212A$id6868X?Y?IsNormalizedIsZero3213A$id6869X?Y?IsNormalizedIsZero3214A$id6870X?Y b?IsNormalizedIsZero3215A$id6871X?Y`m?IsNormalizedIsZero3216A$id6872X?Yu?IsNormalizedIsZero3217A$id6873X?Y b?IsNormalizedIsZero3218A$id6874X`ff?Y?IsNormalizedIsZero3219A$id6875X`ff?Y?IsNormalizedIsZero3220A$id6876X?Y?IsNormalizedIsZero3221A$id6877X?Y?IsNormalizedIsZero3222A$id6878X?Y b?IsNormalizedIsZero3223A$id6879X?Yy?IsNormalizedIsZero3224A$id6880X`ff?Yz?IsNormalizedIsZero3225A$id6881X`ff?Y b?IsNormalizedIsZero3226A$id6882X?Y?IsNormalizedIsZero3227A$id6883X ?Y?IsNormalizedIsZero3228A$id6884X ?Y?IsNormalizedIsZero3229A$id6885X?Y?IsNormalizedIsZero3230A$id6886X C9?Y?IsNormalizedIsZero3231A$id6887X@tA?Y?IsNormalizedIsZero3232A$id6888X@tA?Y?IsNormalizedIsZero3233A$id6889X C9?Y?IsNormalizedIsZero3234A$id6890X@33?Y?IsNormalizedIsZero3235A$id6891X@33?Y?IsNormalizedIsZero3236A$id6892X@33?Y|?IsNormalizedIsZero3237A$id6893X@33?Y b?IsNormalizedIsZero3238A$id6894X@33?Y?IsNormalizedIsZero3239A$id6895X C9?Y?IsNormalizedIsZero3240A$id6896X@33?Yo?IsNormalizedIsZero3241A$id6897X@33?YVU?IsNormalizedIsZero3242A$id6898X@33?Y?IsNormalizedIsZero3243A$id6899X C9?Y`?IsNormalizedIsZero3244A$id6900X@33?Y`?IsNormalizedIsZero3245A$id6901X@33?Y?IsNormalizedIsZero3246A$id6902X?Y?IsNormalizedIsZero3247A$id6903X@tA?Y ?IsNormalizedIsZero3248A$id6904X@tA?Y`?IsNormalizedIsZero3249A$id6905X?Y`?IsNormalizedIsZero3250A$id6906X?Yo?IsNormalizedIsZero3251A$id6907X ?Y?IsNormalizedIsZero3252A$id6908X?Y?IsNormalizedIsZero3253A$id6909X?Y`?IsNormalizedIsZero3254A$id6910X ?Y`?IsNormalizedIsZero3255A$id6911X?Y?IsNormalizedIsZero3256A$id6912X?YVU?IsNormalizedIsZero3257A$id6913X?Y?IsNormalizedIsZero3258A$id6914X?Y@|?IsNormalizedIsZero3259A$id6915X?Y b?IsNormalizedIsZero3260A$id6916X?Yo?IsNormalizedIsZero3261A$id6917X?Yo?IsNormalizedIsZero3262A$id6918X?Yo?IsNormalizedIsZero3263A$id6919X?Yo?IsNormalizedIsZero3264A$id6920X?Yo?IsNormalizedIsZero3265A$id6921X?Yo?IsNormalizedIsZero3266A$id6922X?Yo?IsNormalizedIsZero3267A$id6923X?Yo?IsNormalizedIsZero3268A$id6924X`ff?Yo?IsNormalizedIsZero3269A$id6925X`ff?Yo?IsNormalizedIsZero3270A$id6926X`ff?Yo?IsNormalizedIsZero3271A$id6927X`ff?Yo?IsNormalizedIsZero3272A$id6928X@33?Yo?IsNormalizedIsZero3273A$id6929X@33?Yo?IsNormalizedIsZero3274A$id6930X@33?Yo?IsNormalizedIsZero3275A$id6931X@33?Yo?IsNormalizedIsZero3276A$id6932X?Yo?IsNormalizedIsZero3277A$id6933X?Yo?IsNormalizedIsZero3278A$id6934X?Yo?IsNormalizedIsZero3279A$id6935X?Yo?IsNormalizedIsZero3280A$id6936X ?Yo?IsNormalizedIsZero3281A$id6937X ?Yo?IsNormalizedIsZero3282A$id6938X ?Yo?IsNormalizedIsZero3283A$id6939X ?Yo?IsNormalizedIsZero3284A$id6940X ?Y?IsNormalizedIsZero3285A$id6941X ?Y?IsNormalizedIsZero3286A$id6942X ?Y`?IsNormalizedIsZero3287A$id6943X ?Y`?IsNormalizedIsZero3288A$id6944X ?Y?IsNormalizedIsZero3289A$id6945X ?Y?IsNormalizedIsZero3290A$id6946X ?Y?IsNormalizedIsZero3291A$id6947X ?Y?IsNormalizedIsZero3292A$id6948X?Y?IsNormalizedIsZero3293A$id6949X?Y?IsNormalizedIsZero3294A$id6950X?Y?IsNormalizedIsZero3295A$id6951X ?Y?IsNormalizedIsZero3296A$id6952X?Y?IsNormalizedIsZero3297A$id6953X?Y?IsNormalizedIsZero3298A$id6954X@33?Y?IsNormalizedIsZero3299A$id6955X@33?Y?IsNormalizedIsZero3300A$id6956X@33?Y?IsNormalizedIsZero3301A$id6957X@33?Y?IsNormalizedIsZero3302A$id6958X`ff?Y?IsNormalizedIsZero3303A$id6959X`ff?Y?IsNormalizedIsZero3304A$id6960X`ff?Y?IsNormalizedIsZero3305A$id6961X`ff?Y?IsNormalizedIsZero3306A$id6962X?Y?IsNormalizedIsZero3307A$id6963X?Y?IsNormalizedIsZero3308A$id6964X?Y?IsNormalizedIsZero3309A$id6965X?Y?IsNormalizedIsZero3310A$id6966X?Y?IsNormalizedIsZero3311A$id6967X?Y?IsNormalizedIsZero3312A$id6968X?Y?IsNormalizedIsZero3313A$id6969X?Y?IsNormalizedIsZero3314A$id6970X?Y?IsNormalizedIsZero3315A$id6971X?Y?IsNormalizedIsZero3316A$id6972X@tA?Y?IsNormalizedIsZero3317A$id6973X@tA?Y?IsNormalizedIsZero3318A$id6974X@tA?Y?IsNormalizedIsZero3319A$id6975X@tA?Y?IsNormalizedIsZero3320A$id6976X C9?Y?IsNormalizedIsZero3321A$id6977X C9?Y?IsNormalizedIsZero3322A$id6978X C9?Y?IsNormalizedIsZero3323A$id6979X@tA?Y?IsNormalizedIsZero3324A$id6980X C9?Y?IsNormalizedIsZero3325A$id6981X C9?Y?IsNormalizedIsZero3326A$id6982X C9?Y`?IsNormalizedIsZero3327A$id6983X C9?Y`?IsNormalizedIsZero3328A$id6984X C9?Y?IsNormalizedIsZero3329A$id6985X C9?Y?IsNormalizedIsZero3330A$id6986X C9?Yo?IsNormalizedIsZero3331A$id6987X C9?Yo?IsNormalizedIsZero3332A$id6988X C9?Yo?IsNormalizedIsZero3333A$id6989X C9?Yo?IsNormalizedIsZero3334A$id6990X@tA?Yo?IsNormalizedIsZero3335A$id6991X@tA?Yo?IsNormalizedIsZero3336A$id6992X@tA?Yo?IsNormalizedIsZero3337A$id6993X@tA?Yo?IsNormalizedIsZero3338A$id6994X?Yo?IsNormalizedIsZero3339A$id6995X?Yo?IsNormalizedIsZero3340A$id6996X?Y?IsNormalizedIsZero3341A$id6997X?Y?IsNormalizedIsZero3342A$id6998X?Y?IsNormalizedIsZero3343A$id6999X?Y?IsNormalizedIsZero3344A$id7000X?Y?IsNormalizedIsZero3345A$id7001X?Y?IsNormalizedIsZero3346A$id7002X?Y?IsNormalizedIsZero3347A$id7003X?Y?IsNormalizedIsZero3348A$id7004X`ff?Y?IsNormalizedIsZero3349A$id7005X`ff?Y?IsNormalizedIsZero3350A$id7006X`ff?Y?IsNormalizedIsZero3351A$id7007X`ff?Y?IsNormalizedIsZero3352A$id7008X@33?Y?IsNormalizedIsZero3353A$id7009X@33?Y?IsNormalizedIsZero3354A$id7010X@33?Y?IsNormalizedIsZero3355A$id7011X@33?Y?IsNormalizedIsZero3356A$id7012X?Y?IsNormalizedIsZero3357A$id7013X?Y?IsNormalizedIsZero3358A$id7014X?Y?IsNormalizedIsZero3359A$id7015X?Y?IsNormalizedIsZero3360A$id7016X?Y`?IsNormalizedIsZero3361A$id7017X?Y`?IsNormalizedIsZero3362A$id7018X?Y`?IsNormalizedIsZero3363A$id7019X?Y`?IsNormalizedIsZero3364A$id7020X@33?Y`?IsNormalizedIsZero3365A$id7021X@33?Y`?IsNormalizedIsZero3366A$id7022X@33?Y`?IsNormalizedIsZero3367A$id7023X@33?Y`?IsNormalizedIsZero3368A$id7024X`ff?Y`?IsNormalizedIsZero3369A$id7025X`ff?Y`?IsNormalizedIsZero3370A$id7026X`ff?Y`?IsNormalizedIsZero3371A$id7027X`ff?Y`?IsNormalizedIsZero3372A$id7028X?Y`?IsNormalizedIsZero3373A$id7029X?Y`?IsNormalizedIsZero3374A$id7030X?Y`?IsNormalizedIsZero3375A$id7031X?Y`?IsNormalizedIsZero3376A$id7032X?Y`?IsNormalizedIsZero3377A$id7033X?Y`?IsNormalizedIsZero3378A$id7034X?Y`?IsNormalizedIsZero3379A$id7035X?Y`?IsNormalizedIsZero3380A$id7036X?Y`?IsNormalizedIsZero3381A$id7037X?Y`?IsNormalizedIsZero3382A$id7038X@tA?Y`?IsNormalizedIsZero3383A$id7039X@tA?Y`?IsNormalizedIsZero3384A$id7040X@tA?Y`?IsNormalizedIsZero3385A$id7041X@tA?Y`?IsNormalizedIsZero3386A$id7042X@tA?Y?IsNormalizedIsZero3387A$id7043X@tA?Y?IsNormalizedIsZero3388A$id7044X@tA?Y?IsNormalizedIsZero3389A$id7045X@tA?Y?IsNormalizedIsZero3390A$id7046X?Y?IsNormalizedIsZero3391A$id7047X?Y?IsNormalizedIsZero3392A$id7048X?Y?IsNormalizedIsZero3393A$id7049X?Y?IsNormalizedIsZero3394A$id7050X?Y?IsNormalizedIsZero3395A$id7051X?Y?IsNormalizedIsZero3396A$id7052X`ff?Y?IsNormalizedIsZero3397A$id7053X`ff?Y?IsNormalizedIsZero3398A$id7054X@33?Y?IsNormalizedIsZero3399A$id7055X@33?Y?IsNormalizedIsZero3400A$id7056X?Y?IsNormalizedIsZero3401A$id7057X?Y?IsNormalizedIsZero3402A$id7058X?Y3?IsNormalizedIsZero3403A$id7059X?Y`?IsNormalizedIsZero3404A$id7060X?Y b?IsNormalizedIsZero3405A$id7061X?Y@|?IsNormalizedIsZero3406A$id7062X?Y`?IsNormalizedIsZero3407A$id7063X?Y`?IsNormalizedIsZero3408A$id7064X?Y`?IsNormalizedIsZero3409A$id7065X@33?Y`?IsNormalizedIsZero3410A$id7066X@33?Y`?IsNormalizedIsZero3411A$id7067X@33?Y`?IsNormalizedIsZero3412A$id7068X?Y`?IsNormalizedIsZero3413A$id7069X@33?Y`?IsNormalizedIsZero3414A$id7070X@33?Y`?IsNormalizedIsZero3415A$id7071X`ff?Y`?IsNormalizedIsZero3416A$id7072X`ff?Y`?IsNormalizedIsZero3417A$id7073X`ff?Y`?IsNormalizedIsZero3418A$id7074X@33?Y`?IsNormalizedIsZero3419A$id7075X`ff?Y`?IsNormalizedIsZero3420A$id7076X`ff?Y`?IsNormalizedIsZero3421A$id7077X?Y`?IsNormalizedIsZero3422A$id7078X?Y`?IsNormalizedIsZero3423A$id7079X?Y`?IsNormalizedIsZero3424A$id7080X`ff?Y`?IsNormalizedIsZero3425A$id7081X?Y`?IsNormalizedIsZero3426A$id7082X?Y`?IsNormalizedIsZero3427A$id7083X?Y`?IsNormalizedIsZero3428A$id7084X?Y`?IsNormalizedIsZero3429A$id7085X?Y`?IsNormalizedIsZero3430A$id7086X?Y`?IsNormalizedIsZero3431A$id7087X?Y`?IsNormalizedIsZero3432A$id7088X?Y`?IsNormalizedIsZero3433A$id7089X?Y`?IsNormalizedIsZero3434A$id7090X?Y`?IsNormalizedIsZero3435A$id7091X?Y`?IsNormalizedIsZero3436A$id7092X?Y`?IsNormalizedIsZero3437A$id7093X?Y`?IsNormalizedIsZero3438A$id7094X?Y`?IsNormalizedIsZero3439A$id7095X@tA?Y`?IsNormalizedIsZero3440A$id7096X@tA?Y`?IsNormalizedIsZero3441A$id7097X@tA?Y`?IsNormalizedIsZero3442A$id7098X?Y`?IsNormalizedIsZero3443A$id7099X@tA?Y`?IsNormalizedIsZero3444A$id7100X@tA?Y :h?IsNormalizedIsZero3445A$id7101X@tA?Y b?IsNormalizedIsZero3446A$id7102X@tA?Y`?IsNormalizedIsZero3447A$id7103X@tA?Y`?IsNormalizedIsZero3448A$id7104X@tA?Y b?IsNormalizedIsZero3449A$id7105X@tA?Y`?IsNormalizedIsZero3450A$id7106X@tA?Y b?IsNormalizedIsZero3451A$id7107X@tA?Y`?IsNormalizedIsZero3452A$id7108X@tA?Y ?IsNormalizedIsZero3453A$id7109X@tA?Y ?IsNormalizedIsZero3454A$id7110X@tA?Y?IsNormalizedIsZero3455A$id7111X@tA?Y?IsNormalizedIsZero3456A$id7112X@tA?Y?IsNormalizedIsZero3457A$id7113X@tA?Y?IsNormalizedIsZero3458A$id7114X@tA?Y?IsNormalizedIsZero3459A$id7115X?Y?IsNormalizedIsZero3460A$id7116X?Y?IsNormalizedIsZero3461A$id7117X?Y b?IsNormalizedIsZero3462A$id7118X?Y`?IsNormalizedIsZero3463A$id7119X?Y`?IsNormalizedIsZero3464A$id7120X?Y b?IsNormalizedIsZero3465A$id7121X?Y b?IsNormalizedIsZero3466A$id7122X`ff?Y b?IsNormalizedIsZero3467A$id7123X`ff?Y`?IsNormalizedIsZero3468A$id7124X?Y`?IsNormalizedIsZero3469A$id7125X@33?Y b?IsNormalizedIsZero3470A$id7126X@33?Y`?IsNormalizedIsZero3471A$id7127X@tA?Y b?IsNormalizedIsZero3472A$id7128X@tA?Y :h?IsNormalizedIsZero3473A$id7129X?Y b?IsNormalizedIsZero3474A$id7130X?Y`?IsNormalizedIsZero3475A$id7131X@tA?Y`?IsNormalizedIsZero3476A$id7132X@tA?Y b?IsNormalizedIsZero3477A$id7133X?Y`?IsNormalizedIsZero3478A$id7134X?Y`'?IsNormalizedIsZero3479A$id7135X?Yލ?IsNormalizedIsZero3480A$id7136X?Y`?IsNormalizedIsZero3481A$id7137X`ff?Y`?IsNormalizedIsZero3482A$id7138X`ff?Y@?IsNormalizedIsZero3483A$id7139X@33?Y`?IsNormalizedIsZero3484A$id7140X@33?Y?IsNormalizedIsZero3485A$id7141X?Y`?IsNormalizedIsZero3486A$id7142X?Y3?IsNormalizedIsZero3487A$id7143X@tA?Y b?IsNormalizedIsZero3488A$id7144X@tA?Y`?IsNormalizedIsZero3489A$id7145X@tA?Y`?IsNormalizedIsZero3490A$id7146X@tA?Y`?IsNormalizedIsZero3491A$id7147X@tA?Y b?IsNormalizedIsZero3492A$id7148X@tA?Y b?IsNormalizedIsZero3493A$id7149X@tA?Y`?IsNormalizedIsZero3494A$id7150X@tA?Y`?IsNormalizedIsZero3495A$id7151X?Y`?IsNormalizedIsZero3496A$id7152X?Y`?IsNormalizedIsZero3497A$id7153X?Y`?IsNormalizedIsZero3498A$id7154X@tA?Y`?IsNormalizedIsZero3499A$id7155X?Y`?IsNormalizedIsZero3500A$id7156X?Y`?IsNormalizedIsZero3501A$id7157X?Y`?IsNormalizedIsZero3502A$id7158X?Y`?IsNormalizedIsZero3503A$id7159X?Y`?IsNormalizedIsZero3504A$id7160X?Y`?IsNormalizedIsZero3505A$id7161X?Y`?IsNormalizedIsZero3506A$id7162X?Y`?IsNormalizedIsZero3507A$id7163X?Y`?IsNormalizedIsZero3508A$id7164X?Y`?IsNormalizedIsZero3509A$id7165X?Y`?IsNormalizedIsZero3510A$id7166X?Y`?IsNormalizedIsZero3511A$id7167X?Y`?IsNormalizedIsZero3512A$id7168X?Y`?IsNormalizedIsZero3513A$id7169X`ff?Y`?IsNormalizedIsZero3514A$id7170X`ff?Y`?IsNormalizedIsZero3515A$id7171X`ff?Y`?IsNormalizedIsZero3516A$id7172X?Y`?IsNormalizedIsZero3517A$id7173X`ff?Y`?IsNormalizedIsZero3518A$id7174X`ff?Y`?IsNormalizedIsZero3519A$id7175X@33?Y`?IsNormalizedIsZero3520A$id7176X@33?Y`?IsNormalizedIsZero3521A$id7177X@33?Y`?IsNormalizedIsZero3522A$id7178X`ff?Y`?IsNormalizedIsZero3523A$id7179X@33?Y`?IsNormalizedIsZero3524A$id7180X@33?Y`?IsNormalizedIsZero3525A$id7181X?Y`?IsNormalizedIsZero3526A$id7182X?Y`?IsNormalizedIsZero3527A$id7183X?Y`?IsNormalizedIsZero3528A$id7184X@33?Y`?IsNormalizedIsZero3529A$id7185X?Y`?IsNormalizedIsZero3530A$id7186X?Y`?IsNormalizedIsZero3531A$id7187X?Y b?IsNormalizedIsZero3532A$id7188X?Y b?IsNormalizedIsZero3533A$id7189X?Y b?IsNormalizedIsZero3534A$id7190X?Y`?IsNormalizedIsZero3535A$id7191X?Y b?IsNormalizedIsZero3536A$id7192X?Y b?IsNormalizedIsZero3537A$id7193X@33?Y b?IsNormalizedIsZero3538A$id7194X@33?Y b?IsNormalizedIsZero3539A$id7195X@33?Y b?IsNormalizedIsZero3540A$id7196X?Y b?IsNormalizedIsZero3541A$id7197X@33?Y b?IsNormalizedIsZero3542A$id7198X@33?Y b?IsNormalizedIsZero3543A$id7199X`ff?Y b?IsNormalizedIsZero3544A$id7200X`ff?Y b?IsNormalizedIsZero3545A$id7201X`ff?Y b?IsNormalizedIsZero3546A$id7202X@33?Y b?IsNormalizedIsZero3547A$id7203X`ff?Y b?IsNormalizedIsZero3548A$id7204X`ff?Y b?IsNormalizedIsZero3549A$id7205X?Y b?IsNormalizedIsZero3550A$id7206X?Y b?IsNormalizedIsZero3551A$id7207X?Y b?IsNormalizedIsZero3552A$id7208X`ff?Y b?IsNormalizedIsZero3553A$id7209X?Y b?IsNormalizedIsZero3554A$id7210X?Y b?IsNormalizedIsZero3555A$id7211X?Y b?IsNormalizedIsZero3556A$id7212X?Y b?IsNormalizedIsZero3557A$id7213X?Y b?IsNormalizedIsZero3558A$id7214X?Y b?IsNormalizedIsZero3559A$id7215X?Y b?IsNormalizedIsZero3560A$id7216X?Y b?IsNormalizedIsZero3561A$id7217X?Y b?IsNormalizedIsZero3562A$id7218X?Y b?IsNormalizedIsZero3563A$id7219X?Y b?IsNormalizedIsZero3564A$id7220X?Y b?IsNormalizedIsZero3565A$id7221X?Y b?IsNormalizedIsZero3566A$id7222X?Y b?IsNormalizedIsZero3567A$id7223X@tA?Y b?IsNormalizedIsZero3568A$id7224X@tA?Y b?IsNormalizedIsZero3569A$id7225X@tA?Y b?IsNormalizedIsZero3570A$id7226X?Y b?IsNormalizedIsZero3571A$id7227X?Y?IsNormalizedIsZero3572A$id7228X?Y`'?IsNormalizedIsZero3573A$id7229X?Y?IsNormalizedIsZero3574A$id7230X?Y?IsNormalizedIsZero3575A$id7231X?Y`'?IsNormalizedIsZero3576A$id7232X?Yލ?IsNormalizedIsZero3577A$id7233X?Y?IsNormalizedIsZero3578A$id7234X?Y?IsNormalizedIsZero3579A$id7235X?Yލ?IsNormalizedIsZero3580A$id7236X`ff?Y@?IsNormalizedIsZero3581A$id7237X`ff?Y?IsNormalizedIsZero3582A$id7238X?Y?IsNormalizedIsZero3583A$id7239X`ff?Y@?IsNormalizedIsZero3584A$id7240X@33?Y?IsNormalizedIsZero3585A$id7241X@33?Y?IsNormalizedIsZero3586A$id7242X`ff?Y?IsNormalizedIsZero3587A$id7243X@33?Y?IsNormalizedIsZero3588A$id7244X?Y3?IsNormalizedIsZero3589A$id7245X?Y?IsNormalizedIsZero3590A$id7246X@33?Y?IsNormalizedIsZero3591A$id7247X?Y@|?IsNormalizedIsZero3592A$id7248X@33?Y|?IsNormalizedIsZero3593A$id7249X@33?Y`?IsNormalizedIsZero3594A$id7250X@33?Y`?IsNormalizedIsZero3595A$id7251X?Y`?IsNormalizedIsZero3596A$id7252X?Y@|?IsNormalizedIsZero3597A$id7253X@33?Y|?IsNormalizedIsZero3598A$id7254X`ff?Yz?IsNormalizedIsZero3599A$id7255X`ff?Y`?IsNormalizedIsZero3600A$id7256X`ff?Y`?IsNormalizedIsZero3601A$id7257X@33?Y`?IsNormalizedIsZero3602A$id7258X@33?Y|?IsNormalizedIsZero3603A$id7259X`ff?Yz?IsNormalizedIsZero3604A$id7260X?Yy?IsNormalizedIsZero3605A$id7261X?Y`?IsNormalizedIsZero3606A$id7262X?Y`?IsNormalizedIsZero3607A$id7263X`ff?Y`?IsNormalizedIsZero3608A$id7264X`ff?Yz?IsNormalizedIsZero3609A$id7265X?Yy?IsNormalizedIsZero3610A$id7266X?Yu?IsNormalizedIsZero3611A$id7267X?Y`?IsNormalizedIsZero3612A$id7268X?Y`?IsNormalizedIsZero3613A$id7269X?Y`?IsNormalizedIsZero3614A$id7270X?Yy?IsNormalizedIsZero3615A$id7271X?Yu?IsNormalizedIsZero3616A$id7272X?Y`m?IsNormalizedIsZero3617A$id7273X?Y`?IsNormalizedIsZero3618A$id7274X?Y`?IsNormalizedIsZero3619A$id7275X?Y`?IsNormalizedIsZero3620A$id7276X?Yu?IsNormalizedIsZero3621A$id7277X?Y`m?IsNormalizedIsZero3622A$id7278X@tA?Y :h?IsNormalizedIsZero3623A$id7279X@tA?Y`?IsNormalizedIsZero3624A$id7280X@tA?Y`?IsNormalizedIsZero3625A$id7281X?Y`?IsNormalizedIsZero3626A$id7282X?Y`m?IsNormalizedIsZero3627A$id7283X@tA?Y ?IsNormalizedIsZero3628A$id7284X?Y?IsNormalizedIsZero3629A$id7285X?Y?IsNormalizedIsZero3630A$id7286X?Y?IsNormalizedIsZero3631A$id7287X@tA?Y?IsNormalizedIsZero3632A$id7288X@tA?Y ?IsNormalizedIsZeroNormals0L$id7289X䜴?YZwԘIsNormalizedIsZero1L$id7290X@w?Y`bZIsNormalizedIsZero2L$id7291Xj?Y VZIsNormalizedIsZero3L$id7292X`@?YdZ⎿IsNormalizedIsZero4L$id7293XƵ?YOZưIsNormalizedIsZero5L$id7294XƵ?YOZIsNormalizedIsZero6L$id7295X2?Y`ZIsNormalizedIsZero7L$id7296X2?Y`ZIsNormalizedIsZero8L$id7297Xi?YQZIsNormalizedIsZero9L$id7298Xi?YQZIsNormalizedIsZero10L$id7299X@5?YZIsNormalizedIsZero11L$id7300X@5?YZIsNormalizedIsZero12L$id7301Xw?Y`ZIsNormalizedIsZero13L$id7302Xw?Y`ZIsNormalizedIsZero14L$id7303X0?Y`JZIsNormalizedIsZero15L$id7304X`0?Y`JZIsNormalizedIsZero16L$id7305X ͭ@?Y )Z` ?IsNormalizedIsZero17L$id7306X>#A?YZIsNormalizedIsZero18L$id7307XKU?Y)ZIsNormalizedIsZero19L$id7308XA?YZ` ?IsNormalizedIsZero20L$id7309X@YZ@?ҿIsNormalizedIsZero21L$id7310X rOY@ZIsNormalizedIsZero22L$id7311X0Y=ZIsNormalizedIsZero23L$id7312X0Y=ZIsNormalizedIsZero24L$id7313X`&5ĿYZ-̿IsNormalizedIsZero25L$id7314X =ĿY@ZIsNormalizedIsZero26L$id7315X彿Y@ZIsNormalizedIsZero27L$id7316XbYZ?IsNormalizedIsZero28L$id7317XȿY` ZտIsNormalizedIsZero29L$id7318X{ɿY`WZZIsNormalizedIsZero30L$id7319X*ǿY`xZIsNormalizedIsZero31L$id7320X*ǿY`xZIsNormalizedIsZero32L$id7321XcwſY)ZlܿIsNormalizedIsZero33L$id7322X8)ƿYJZIsNormalizedIsZero34L$id7323XǿYqZtIsNormalizedIsZero35L$id7324XؿY[w?Z${IsNormalizedIsZero36L$id7325XؿYJw?Z82?IsNormalizedIsZero37L$id7326X@տYn?ZIsNormalizedIsZero38L$id7327XπտY #?ZI?IsNormalizedIsZero39L$id7328X`ҿY ?Z"M?IsNormalizedIsZero40L$id7329X ҿYα?ZIsNormalizedIsZero41L$id7330X}wѿY?ZIsNormalizedIsZero42L$id7331XiqѿY?Z`?IsNormalizedIsZero43L$id7332X`cпY?Z逿IsNormalizedIsZero44L$id7333X@cпY?ZIsNormalizedIsZero45L$id7334X ͿY !?ZIsNormalizedIsZero46L$id7335XͿY`?ZIsNormalizedIsZero47L$id7336X?Y`?ZsIsNormalizedIsZero48L$id7337X`/۲?Y ?Z`1\>IsNormalizedIsZero49L$id7338X?Y௭?ZIsNormalizedIsZero50L$id7339X ?Y?ZH"IsNormalizedIsZero51L$id7340X ۤ?YL?Za(IsNormalizedIsZero52L$id7341Xk?Y`FM?ZIsNormalizedIsZero53L$id7342X?YS?ZIsNormalizedIsZero54L$id7343X'?Y0S?Z#6?IsNormalizedIsZero55L$id7344X{?Y`WZ?Z`+AIsNormalizedIsZero56L$id7345X?Y`WZ?ZIsNormalizedIsZero57L$id7346X"?Y^p?ZIsNormalizedIsZero58L$id7347X ?Y@(o?Z`qV?IsNormalizedIsZero59L$id7348XsY-!OZ@*IsNormalizedIsZero60L$id7349X`*YHOZQ*IsNormalizedIsZero61L$id7350XY EZ`8,IsNormalizedIsZero62L$id7351X Y4DEZ,IsNormalizedIsZero63L$id7352X`Y)WZ`IsNormalizedIsZero64L$id7353XY`TWZIsNormalizedIsZero65L$id7354X`YTZ+IsNormalizedIsZero66L$id7355XY TZIsNormalizedIsZero67L$id7356X/Y@\ZTIsNormalizedIsZero68L$id7357X@.Y)]ZTIsNormalizedIsZero69L$id7358X 'YZZ IsNormalizedIsZero70L$id7359X'YimZZIsNormalizedIsZero71L$id7360X \YaZwIsNormalizedIsZero72L$id7361X[Y1aZIsNormalizedIsZero73L$id7362X`GY`_ZIsNormalizedIsZero74L$id7363XGY _Z IsNormalizedIsZero75L$id7364X`޿Y]dZqCIsNormalizedIsZero76L$id7365X\޿YdZCIsNormalizedIsZero77L$id7366X`߿Y`wbZIsNormalizedIsZero78L$id7367X `߿Y`bbZIsNormalizedIsZero79L$id7368XvտY?hZ%IsNormalizedIsZero80L$id7369X vտYChZ%IsNormalizedIsZero81L$id7370X@FٿYogZHIsNormalizedIsZero82L$id7371X`ٿYeNgZHIsNormalizedIsZero83L$id7372X ϿYhZ1IsNormalizedIsZero84L$id7373X6ϿYphZ/IsNormalizedIsZero85L$id7374XףҿYhZϜIsNormalizedIsZero86L$id7375XʣҿYhZќIsNormalizedIsZero87L$id7376X`ʼYkZ IsNormalizedIsZero88L$id7377X:ǼYkZIsNormalizedIsZero89L$id7378X@ǿY0iZPzIsNormalizedIsZero90L$id7379X9ǿY iZ`LzIsNormalizedIsZero91L$id7380X gY oZ`IsNormalizedIsZero92L$id7381X YoZ`IsNormalizedIsZero93L$id7382X@׬YhnZIsNormalizedIsZero94L$id7383X`OtY@0nZ``IsNormalizedIsZero95L$id7384X ?Y wqZ@[IsNormalizedIsZero96L$id7385X@?YrqZ@[IsNormalizedIsZero97L$id7386X z?YwqZIIsNormalizedIsZero98L$id7387XB?Y`qZyIsNormalizedIsZero99L$id7388Xɹ?YqZ@IsNormalizedIsZero100L$id7389Xƹ?Y7qZMIsNormalizedIsZero101L$id7390Xp?YrZ@IsNormalizedIsZero102L$id7391XE?YrZAIsNormalizedIsZero103L$id7392X,?YGqZ IsNormalizedIsZero104L$id7393Xa0?YDrZIsNormalizedIsZero105L$id7394X~?Y nZIsNormalizedIsZero106L$id7395X /k?YJnZ4IsNormalizedIsZero107L$id7396X ?Y2pZ@^IsNormalizedIsZero108L$id7397X@U?YyoZjIsNormalizedIsZero109L$id7398X@b?Y@طsZIsNormalizedIsZero110L$id7399X@i?YsZ IsNormalizedIsZero111L$id7400X`^+Y@_Z IsNormalizedIsZero112L$id7401X`)Y[_Z@IsNormalizedIsZero113L$id7402XL~?Y`HdZIsNormalizedIsZero114L$id7403X?YdZ:IsNormalizedIsZero115L$id7404XtvYbZ cIsNormalizedIsZero116L$id7405X`㻿Y!oZ-IsNormalizedIsZero117L$id7406X ^׻Y'nZ [IsNormalizedIsZero118L$id7407X@~Y@aZLIsNormalizedIsZero119L$id7408XQY H3vZ IsNormalizedIsZero120L$id7409XYuZ@ZIsNormalizedIsZero121L$id7410X@?YuZ VIsNormalizedIsZero122L$id7411XоYuZ@RIsNormalizedIsZero123L$id7412X?¿Y@fuZ@4IsNormalizedIsZero124L$id7413X yÿYrZ IsNormalizedIsZero125L$id7414X J{ÿY` %sZ yIsNormalizedIsZero126L$id7415XU.¿Y`|uZӬIsNormalizedIsZero127L$id7416XĿYpZIsNormalizedIsZero128L$id7417XXſY@mZ'IsNormalizedIsZero129L$id7418XſY}:nZ IsNormalizedIsZero130L$id7419X`+ĿYVpZIsNormalizedIsZero131L$id7420XSȿY@8kZjIsNormalizedIsZero132L$id7421X@QʿY>tZPIsNormalizedIsZero133L$id7422X@NʿY˶sZQIsNormalizedIsZero134L$id7423X )ȿYgkZlIsNormalizedIsZero135L$id7424X ̿Y`~Z@8IsNormalizedIsZero136L$id7425X+ͿYZ` %IsNormalizedIsZero137L$id7426X ͿYZ@g'IsNormalizedIsZero138L$id7427X˿Y` |Z;IsNormalizedIsZero139L$id7428XYZ 7IsNormalizedIsZero140L$id7429XjYZIsNormalizedIsZero141L$id7430XY@Z@_%IsNormalizedIsZero142L$id7431X YZZ96IsNormalizedIsZero143L$id7432X O?YZ ſIsNormalizedIsZero144L$id7433XY2Z`eIsNormalizedIsZero145L$id7434X Y@4ZIsNormalizedIsZero146L$id7435X\?YpZǿIsNormalizedIsZero147L$id7436X`ߣ?Y`ZJIsNormalizedIsZero148L$id7437X&YZ=ݿIsNormalizedIsZero149L$id7438Xu?Y kZ@ӿIsNormalizedIsZero150L$id7439X`,?Y@eZ@0IsNormalizedIsZero151L$id7440XѬ?Y,Z@IsNormalizedIsZero152L$id7441X`)v?Y` ZſIsNormalizedIsZero153L$id7442X>9?YcZޘIsNormalizedIsZero154L$id7443X@?Y@Z wJIsNormalizedIsZero155L$id7444X`?YZ ҨIsNormalizedIsZero156L$id7445X?Y Z`z’IsNormalizedIsZero157L$id7446X)s?YxZ`dIsNormalizedIsZero158L$id7447XԢ?YNZ`IsNormalizedIsZero159L$id7448X?YZ@+IsNormalizedIsZero160L$id7449X ã?Y@Zp|IsNormalizedIsZero161L$id7450X j?YZ eZIsNormalizedIsZero162L$id7451X@7?YZyIsNormalizedIsZero163L$id7452XWWYۂZ@WwIsNormalizedIsZero164L$id7453XY L|Z }IsNormalizedIsZero165L$id7454XíY`vZ`!IsNormalizedIsZero166L$id7455XaYlZIsNormalizedIsZero167L$id7456X@HݞY@:Z@~IsNormalizedIsZero168L$id7457X`ۣYPOZIsNormalizedIsZero169L$id7458X5醿YZ`n0IsNormalizedIsZero170L$id7459X {x?Y.Z@aP޿IsNormalizedIsZero171L$id7460Xx?Y`ZIѿIsNormalizedIsZero172L$id7461X`ڒ?Y`ZJֿIsNormalizedIsZero173L$id7462X>?YtZǿIsNormalizedIsZero174L$id7463X@eQ?YZ@IsNormalizedIsZero175L$id7464X ?YZ$ziIsNormalizedIsZero176L$id7465X?Y Z@wIsNormalizedIsZero177L$id7466X`>?YZ,hIsNormalizedIsZero178L$id7467X?Y`yZ YIsNormalizedIsZero179L$id7468X@w?Y`bZưIsNormalizedIsZero180L$id7469Xlt?Y~Z@IsNormalizedIsZero181L$id7470X@w?Y`bZIsNormalizedIsZero182L$id7471X@w?Y`bZưIsNormalizedIsZero183L$id7472Xž?Y VZưIsNormalizedIsZero184L$id7473X ?YdZYIsNormalizedIsZero185L$id7474X+Y (Z`IsNormalizedIsZero186L$id7475XڦY@Z/KIsNormalizedIsZero187L$id7476XR륿Y`5Z\SIsNormalizedIsZero188L$id7477X@طY Z`IsNormalizedIsZero189L$id7478XԖY`Z@܀IsNormalizedIsZero190L$id7479X BYlZ5IsNormalizedIsZero191L$id7480X`.7h?Y Z@sIsNormalizedIsZero192L$id7481X@ϻYA9ZIsNormalizedIsZero193L$id7482X?YZc ݿIsNormalizedIsZero194L$id7483Xp̢?Y`ZۿIsNormalizedIsZero195L$id7484X '?Y*ZпIsNormalizedIsZero196L$id7485XC?Y!Z|̿IsNormalizedIsZero197L$id7486X@?Y4Z3IsNormalizedIsZero198L$id7487X ?YnZIsNormalizedIsZero199L$id7488X?Y`ZZZIsNormalizedIsZero200L$id7489X&?YZ`weWIsNormalizedIsZero201L$id7490X-?YZGIsNormalizedIsZero202L$id7491X`õ?Y@VZJIsNormalizedIsZero203L$id7492XƵ?YOZIsNormalizedIsZero204L$id7493X2?Y`ZIsNormalizedIsZero205L$id7494XƵ?YOZIsNormalizedIsZero206L$id7495XƵ?YOZưIsNormalizedIsZero207L$id7496X2?Y`ZIsNormalizedIsZero208L$id7497X2?Y`ZIsNormalizedIsZero209L$id7498XLY}Z 'IsNormalizedIsZero210L$id7499X;ޔYCZDIsNormalizedIsZero211L$id7500X"Y69ZIsNormalizedIsZero212L$id7501XYsZ`IsNormalizedIsZero213L$id7502X`5qY@Z@IsNormalizedIsZero214L$id7503X?Y`Z`IsNormalizedIsZero215L$id7504X@dʧ?Y`Z`zmݿIsNormalizedIsZero216L$id7505Xv5?YhZ`8IsNormalizedIsZero217L$id7506X w?YZ@5ڿIsNormalizedIsZero218L$id7507X?YZ `ۿIsNormalizedIsZero219L$id7508X L?YoZbؿIsNormalizedIsZero220L$id7509Xn?YZҿIsNormalizedIsZero221L$id7510XU?Y Z`¿IsNormalizedIsZero222L$id7511X@.?YKZxDɿIsNormalizedIsZero223L$id7512X@]?Y@KZ`.7hIsNormalizedIsZero224L$id7513X2?Y Z%^IsNormalizedIsZero225L$id7514X2?Y@Z>MIsNormalizedIsZero226L$id7515X@?YUZ WIsNormalizedIsZero227L$id7516Xi?YQZIsNormalizedIsZero228L$id7517X@5?YZIsNormalizedIsZero229L$id7518Xi?YQZIsNormalizedIsZero230L$id7519Xi?YQZIsNormalizedIsZero231L$id7520X@5?YZIsNormalizedIsZero232L$id7521X@5?YZIsNormalizedIsZero233L$id7522X"RY@eZ4<IsNormalizedIsZero234L$id7523XY Z@aPIsNormalizedIsZero235L$id7524XkYZ`_IsNormalizedIsZero236L$id7525XUY@Z !JIsNormalizedIsZero237L$id7526X?Y@Z/IsNormalizedIsZero238L$id7527X@*7?Y 8ZIsNormalizedIsZero239L$id7528XŊ?YIZٿIsNormalizedIsZero240L$id7529X8?Y &oZ ؿIsNormalizedIsZero241L$id7530X?YZ6ۿIsNormalizedIsZero242L$id7531X {?YQZPڿIsNormalizedIsZero243L$id7532XC?YZ ۿIsNormalizedIsZero244L$id7533Xߣ?YjZRݿIsNormalizedIsZero245L$id7534XY?Y@-ZοIsNormalizedIsZero246L$id7535X?Y#Z ̿IsNormalizedIsZero247L$id7536X`\?Y Z:kIsNormalizedIsZero248L$id7537X@)?Y`JZnoIsNormalizedIsZero249L$id7538X,?YPZs}_IsNormalizedIsZero250L$id7539X@l?YZuq[IsNormalizedIsZero251L$id7540Xw?Y@ZIsNormalizedIsZero252L$id7541X`0?Y`JZIsNormalizedIsZero253L$id7542Xw?Y`ZIsNormalizedIsZero254L$id7543Xw?Y`ZIsNormalizedIsZero255L$id7544X`0?Y`JZIsNormalizedIsZero256L$id7545X`0?Y`JZIsNormalizedIsZero257L$id7546XY @Z IsNormalizedIsZero258L$id7547XY>ZIsNormalizedIsZero259L$id7548X !YPZ IsNormalizedIsZero260L$id7549XY ;DZhIsNormalizedIsZero261L$id7550X`.Y`Z`IsNormalizedIsZero262L$id7551X:Y@^Z/IsNormalizedIsZero263L$id7552X@3Y1Z`ڿIsNormalizedIsZero264L$id7553X`#IpY#ZKrڿIsNormalizedIsZero265L$id7554X@ˁnY%ZhڿIsNormalizedIsZero266L$id7555XY`NZٿIsNormalizedIsZero267L$id7556X@YhZQ*ٿIsNormalizedIsZero268L$id7557X RY@#Z vڿIsNormalizedIsZero269L$id7558X@?Y`]@Z r˿IsNormalizedIsZero270L$id7559XYUZɿIsNormalizedIsZero271L$id7560X.8?YZTcIsNormalizedIsZero272L$id7561XS?YZfIsNormalizedIsZero273L$id7562X.?YZ.WIsNormalizedIsZero274L$id7563XK6>?YZ`SIsNormalizedIsZero275L$id7564X>#A?YZIsNormalizedIsZero276L$id7565XL?Y@ZIsNormalizedIsZero277L$id7566X>#A?YZIsNormalizedIsZero278L$id7567X>#A?YZIsNormalizedIsZero279L$id7568XL?Y@ZIsNormalizedIsZero280L$id7569XL?Y@ZIsNormalizedIsZero281L$id7570XECY3Z IsNormalizedIsZero282L$id7571X ƷY@dXZIsNormalizedIsZero283L$id7572X?YmZIsNormalizedIsZero284L$id7573XJwY@yXZIsNormalizedIsZero285L$id7574XYZ;IsNormalizedIsZero286L$id7575X .UY@-ZٿIsNormalizedIsZero287L$id7576XY@9Z`ٿIsNormalizedIsZero288L$id7577XQIY`1ZIsNormalizedIsZero289L$id7578X68YkZؿIsNormalizedIsZero290L$id7579X ]޴Y`ǪZ`j׿IsNormalizedIsZero291L$id7580X@Y Z@U׿IsNormalizedIsZero292L$id7581X`gYkZؿIsNormalizedIsZero293L$id7582XɧYlYZȿIsNormalizedIsZero294L$id7583XdUY!TZȿIsNormalizedIsZero295L$id7584XRYZ@_IsNormalizedIsZero296L$id7585Xx>Y 1Z@~`IsNormalizedIsZero297L$id7586X@.8Y9Z68QIsNormalizedIsZero298L$id7587XPYZȯOIsNormalizedIsZero299L$id7588X rOY@ZIsNormalizedIsZero300L$id7589X0Y=ZIsNormalizedIsZero301L$id7590X rOY@ZIsNormalizedIsZero302L$id7591X rOY@ZIsNormalizedIsZero303L$id7592X0Y=ZIsNormalizedIsZero304L$id7593X0Y=ZIsNormalizedIsZero305L$id7594X ̘Y@6;Z pyIsNormalizedIsZero306L$id7595X)Y`5Z@rIsNormalizedIsZero307L$id7596X`hʺY@*~Z IsNormalizedIsZero308L$id7597XY.Z߿IsNormalizedIsZero309L$id7598XyYdhZvNؿIsNormalizedIsZero310L$id7599X˻Y # ZxٿIsNormalizedIsZero311L$id7600X@CYQwZik׿IsNormalizedIsZero312L$id7601X@Y` zZ`(|׿IsNormalizedIsZero313L$id7602X@TY5Za/ȿIsNormalizedIsZero314L$id7603Xs Y 4ZrֿIsNormalizedIsZero315L$id7604X(Y JmZ׿IsNormalizedIsZero316L$id7605XaÿY  Z`ZȿIsNormalizedIsZero317L$id7606X{eY ZOIsNormalizedIsZero318L$id7607XdY Zl^IsNormalizedIsZero319L$id7608X(ĿYZ@x{`IsNormalizedIsZero320L$id7609XĿY Z@?PIsNormalizedIsZero321L$id7610X =ĿY@ZIsNormalizedIsZero322L$id7611XUfYZIsNormalizedIsZero323L$id7612X =ĿY@ZIsNormalizedIsZero324L$id7613X =ĿY@ZIsNormalizedIsZero325L$id7614XUfYZIsNormalizedIsZero326L$id7615XUfYZIsNormalizedIsZero327L$id7616XY@8ZݿIsNormalizedIsZero328L$id7617XYYZ PIsNormalizedIsZero329L$id7618XFиYՑZDIsNormalizedIsZero330L$id7619XJYqnZr߿IsNormalizedIsZero331L$id7620X@ ÿYZmֿIsNormalizedIsZero332L$id7621X@uÿYZ 6տIsNormalizedIsZero333L$id7622XsſY|Z տIsNormalizedIsZero334L$id7623XbſYAZM׿IsNormalizedIsZero335L$id7624XwſY@Z=@ɿIsNormalizedIsZero336L$id7625X`¿Y!)ZJؿIsNormalizedIsZero337L$id7626XEſYZ ?TٿIsNormalizedIsZero338L$id7627X@ȿY߿ZYʿIsNormalizedIsZero339L$id7628X`o)ǿY xZRIsNormalizedIsZero340L$id7629X'ǿYxZbIsNormalizedIsZero341L$id7630XɿY@ZZNdIsNormalizedIsZero342L$id7631XɿY hZZLnTIsNormalizedIsZero343L$id7632X{ɿY`WZZIsNormalizedIsZero344L$id7633X*ǿY`xZIsNormalizedIsZero345L$id7634X{ɿY`WZZIsNormalizedIsZero346L$id7635X{ɿY`WZZIsNormalizedIsZero347L$id7636X*ǿY`xZIsNormalizedIsZero348L$id7637X*ǿY`xZIsNormalizedIsZero349L$id7638X`Y`,Z IsNormalizedIsZero350L$id7639XSY@V)Z,IsNormalizedIsZero351L$id7640X YZ!IsNormalizedIsZero352L$id7641X`QJYZ`hIsNormalizedIsZero353L$id7642X`ÿY #ZĮؿIsNormalizedIsZero354L$id7643X¿Y` {Z׿IsNormalizedIsZero355L$id7644X9YZٿIsNormalizedIsZero356L$id7645XzY6Z٭ڿIsNormalizedIsZero357L$id7646XƿY`#ZF˿IsNormalizedIsZero358L$id7647XÿYZ(@ڿIsNormalizedIsZero359L$id7648XY`ZzۿIsNormalizedIsZero360L$id7649X ĿY3Zmn̿IsNormalizedIsZero361L$id7650XǿY#pZ`VIsNormalizedIsZero362L$id7651X ǿY`CpZ|fIsNormalizedIsZero363L$id7652Xc#ƿY`ZiIsNormalizedIsZero364L$id7653X&ƿY_Z&ZIsNormalizedIsZero365L$id7654X mǿY pZIsNormalizedIsZero366L$id7655X mǿY pZIsNormalizedIsZero367L$id7656X0)ƿYJZIsNormalizedIsZero368L$id7657X0)ƿYJZIsNormalizedIsZero369L$id7658X0)ƿYJZIsNormalizedIsZero370L$id7659X mǿY pZIsNormalizedIsZero371L$id7660X_Y}ZϹIsNormalizedIsZero372L$id7661X@#Y ZIsNormalizedIsZero373L$id7662X3YpZ`tIsNormalizedIsZero374L$id7663X /Y`;Z`=IsNormalizedIsZero375L$id7664X Y`|_ZbܿIsNormalizedIsZero376L$id7665XǻY/hZ`nܿIsNormalizedIsZero377L$id7666XtY_Z`MܿIsNormalizedIsZero378L$id7667XCY FZVݿIsNormalizedIsZero379L$id7668X Y xZͿIsNormalizedIsZero380L$id7669X<Y XZܿIsNormalizedIsZero381L$id7670X츿Ys(Z`ݿIsNormalizedIsZero382L$id7671X7Y Z+οIsNormalizedIsZero383L$id7672XrÿYZ ]IsNormalizedIsZero384L$id7673XoÿY Z@¾mIsNormalizedIsZero385L$id7674XbYྐྵZMbpIsNormalizedIsZero386L$id7675X^Y@Z-u`IsNormalizedIsZero387L$id7676XMYZIsNormalizedIsZero388L$id7677XhtÿY@ӠZIsNormalizedIsZero389L$id7678XMYZIsNormalizedIsZero390L$id7679XMYZIsNormalizedIsZero391L$id7680XhtÿY@ӠZIsNormalizedIsZero392L$id7681XhtÿY@ӠZIsNormalizedIsZero393L$id7682X Y`vZIsNormalizedIsZero394L$id7683X#Y@iZIsNormalizedIsZero395L$id7684X`aY ZIsNormalizedIsZero396L$id7685X` Y`Z@>!IsNormalizedIsZero397L$id7686XYȆZIsNormalizedIsZero398L$id7687XYZ@T߿IsNormalizedIsZero399L$id7688XY@+[ZEݿIsNormalizedIsZero400L$id7689XYZ`YIsNormalizedIsZero401L$id7690X®YZ`߿IsNormalizedIsZero402L$id7691X@Y Z(޿IsNormalizedIsZero403L$id7692XFY}Zा޿IsNormalizedIsZero404L$id7693XճY%Z ޿IsNormalizedIsZero405L$id7694X-Y@ Z@ϿIsNormalizedIsZero406L$id7695X Y@ZqIsNormalizedIsZero407L$id7696X@YZrIsNormalizedIsZero408L$id7697X&lYZ{ϿIsNormalizedIsZero409L$id7698X yYZaIsNormalizedIsZero410L$id7699X@Y@ZIsNormalizedIsZero411L$id7700X Y ZIsNormalizedIsZero412L$id7701X YZaIsNormalizedIsZero413L$id7702X@Y@ZIsNormalizedIsZero414L$id7703X@Y@ZIsNormalizedIsZero415L$id7704X Y ZIsNormalizedIsZero416L$id7705X Y ZIsNormalizedIsZero417L$id7706XkY %Z@IsNormalizedIsZero418L$id7707XKY?_ZGaIsNormalizedIsZero419L$id7708X`XY\ZfIsNormalizedIsZero420L$id7709XNaY%ZIsNormalizedIsZero421L$id7710X@4Y\TZIsNormalizedIsZero422L$id7711XiY`ZIsNormalizedIsZero423L$id7712XY@RZRz߿IsNormalizedIsZero424L$id7713XY@QZ@nIsNormalizedIsZero425L$id7714XFY wZ@߿IsNormalizedIsZero426L$id7715XOqY4Z޿IsNormalizedIsZero427L$id7716X`Y`WZܿIsNormalizedIsZero428L$id7717X`Y!Z]޿IsNormalizedIsZero429L$id7718XiPY@ZοIsNormalizedIsZero430L$id7719X PRY)ZͿIsNormalizedIsZero431L$id7720XL0Y`Z mIsNormalizedIsZero432L$id7721X`YZ@GqIsNormalizedIsZero433L$id7722XYZo'aIsNormalizedIsZero434L$id7723XݒYZ O]IsNormalizedIsZero435L$id7724XYZIsNormalizedIsZero436L$id7725X@Y ZIsNormalizedIsZero437L$id7726XYZIsNormalizedIsZero438L$id7727XYZIsNormalizedIsZero439L$id7728X@Y ZIsNormalizedIsZero440L$id7729X@Y ZIsNormalizedIsZero441L$id7730X`>Y uZIsNormalizedIsZero442L$id7731X@Y ۇZ@`IsNormalizedIsZero443L$id7732X@_Y`{Z`|IsNormalizedIsZero444L$id7733X bY@ZIsNormalizedIsZero445L$id7734X\Y@'ZIsNormalizedIsZero446L$id7735X 5Y'Z ߿IsNormalizedIsZero447L$id7736X`YZ`JڿIsNormalizedIsZero448L$id7737X JY?Z *ݿIsNormalizedIsZero449L$id7738X YYZ2oܿIsNormalizedIsZero450L$id7739XY8ZٿIsNormalizedIsZero451L$id7740X -#Y-ZtxؿIsNormalizedIsZero452L$id7741XY#Z ۿIsNormalizedIsZero453L$id7742XY@=Zk˿IsNormalizedIsZero454L$id7743XћY`[Z`RCɿIsNormalizedIsZero455L$id7744XP4YZ`aIsNormalizedIsZero456L$id7745X`GU3YZUhIsNormalizedIsZero457L$id7746XYZ@ XIsNormalizedIsZero458L$id7747X@ YZ`t@RIsNormalizedIsZero459L$id7748XYZIsNormalizedIsZero460L$id7749XԾYZIsNormalizedIsZero461L$id7750XԾYZIsNormalizedIsZero462L$id7751XYZIsNormalizedIsZero463L$id7752XYZIsNormalizedIsZero464L$id7753XԾYZIsNormalizedIsZero465L$id7754XÿYMZ`7߿IsNormalizedIsZero466L$id7755X4ÿY&Z`}ܿIsNormalizedIsZero467L$id7756X ÿYZ ݿIsNormalizedIsZero468L$id7757XYfGZIsNormalizedIsZero469L$id7758X`ǼYtZ@`ܿIsNormalizedIsZero470L$id7759XY@ZR{ٿIsNormalizedIsZero471L$id7760X@KY Z,տIsNormalizedIsZero472L$id7761X`;YdpZvؿIsNormalizedIsZero473L$id7762X۲YZ Q׿IsNormalizedIsZero474L$id7763X˳Y -Z pԿIsNormalizedIsZero475L$id7764XIcYbZ "ӿIsNormalizedIsZero476L$id7765X EYZL0ֿIsNormalizedIsZero477L$id7766X윿YC}Z|ƿIsNormalizedIsZero478L$id7767X`YZ )ĿIsNormalizedIsZero479L$id7768X.YZ^RIsNormalizedIsZero480L$id7769X 1YZZIsNormalizedIsZero481L$id7770X YZ` PJIsNormalizedIsZero482L$id7771X YZBIsNormalizedIsZero483L$id7772XYZIsNormalizedIsZero484L$id7773XYZIsNormalizedIsZero485L$id7774XYZIsNormalizedIsZero486L$id7775XYZIsNormalizedIsZero487L$id7776XYZIsNormalizedIsZero488L$id7777XYZIsNormalizedIsZero489L$id7778XƿY`Z ٿIsNormalizedIsZero490L$id7779X@ǿYXZiֿIsNormalizedIsZero491L$id7780X'ƿYQZ ׿IsNormalizedIsZero492L$id7781X "ſYZCڿIsNormalizedIsZero493L$id7782XY Z@ֿIsNormalizedIsZero494L$id7783XYZԿIsNormalizedIsZero495L$id7784X庿YZoпIsNormalizedIsZero496L$id7785X燹Y SZjӿIsNormalizedIsZero497L$id7786XY@Z@wҿIsNormalizedIsZero498L$id7787XֶY@{ZпIsNormalizedIsZero499L$id7788XᲿY Z`_οIsNormalizedIsZero500L$id7789X䱿Y5Z`XѿIsNormalizedIsZero501L$id7790X&Y`Z UIsNormalizedIsZero502L$id7791XK<YZదIsNormalizedIsZero503L$id7792X@ z?YZ@ ސ?IsNormalizedIsZero504L$id7793Xqh?YZ@Q?IsNormalizedIsZero505L$id7794Xݮw?Y`Z r9IsNormalizedIsZero506L$id7795X@z?YZ?IsNormalizedIsZero507L$id7796Xw?Y`ZIsNormalizedIsZero508L$id7797Xw?Y`ZIsNormalizedIsZero509L$id7798Xw?Y`ZIsNormalizedIsZero510L$id7799Xw?Y`ZIsNormalizedIsZero511L$id7800Xw?Y`ZIsNormalizedIsZero512L$id7801Xw?Y`ZIsNormalizedIsZero513L$id7802X }!ƿYZ@;ԿIsNormalizedIsZero514L$id7803XĿY@qGZѿIsNormalizedIsZero515L$id7804XeÿYTCZ`>ҿIsNormalizedIsZero516L$id7805X N'ſYZ`ԿIsNormalizedIsZero517L$id7806XY@wZ`ѿIsNormalizedIsZero518L$id7807XLYZnϿIsNormalizedIsZero519L$id7808XbbY0ZʿIsNormalizedIsZero520L$id7809XYZ`sͿIsNormalizedIsZero521L$id7810X*YZ(̿IsNormalizedIsZero522L$id7811XfճY6KZ ȿIsNormalizedIsZero523L$id7812X``YcZǿIsNormalizedIsZero524L$id7813XQY`\8ZJʿIsNormalizedIsZero525L$id7814X@yY ZXQIsNormalizedIsZero526L$id7815Xh垿YZ5IsNormalizedIsZero527L$id7816X 7?YZ`2U?IsNormalizedIsZero528L$id7817Xp?Y Z ѐ?IsNormalizedIsZero529L$id7818X_h?Y`Z`7]?IsNormalizedIsZero530L$id7819X7YMZ@?IsNormalizedIsZero531L$id7820XYZIsNormalizedIsZero532L$id7821XYZIsNormalizedIsZero533L$id7822XYZIsNormalizedIsZero534L$id7823XYZIsNormalizedIsZero535L$id7824XYZIsNormalizedIsZero536L$id7825XYZIsNormalizedIsZero537L$id7826XLĿYZ)#пIsNormalizedIsZero538L$id7827X ÿY`Z@v̿IsNormalizedIsZero539L$id7828X¿Y`lZ2TͿIsNormalizedIsZero540L$id7829XBÿY oZbпIsNormalizedIsZero541L$id7830XYgZ̿IsNormalizedIsZero542L$id7831X`FY)Z#ɿIsNormalizedIsZero543L$id7832X}Y3vZQĿIsNormalizedIsZero544L$id7833XjeY+WZ'MǿIsNormalizedIsZero545L$id7834XAYmZ5"ƿIsNormalizedIsZero546L$id7835XHY Z@ÿIsNormalizedIsZero547L$id7836Xj+Y@*Z`¿IsNormalizedIsZero548L$id7837X~PY ށZĿIsNormalizedIsZero549L$id7838X`YZ%IsNormalizedIsZero550L$id7839X W\YZIsNormalizedIsZero551L$id7840X`:;I?YZ`4֎?IsNormalizedIsZero552L$id7841X Ld?YZX?IsNormalizedIsZero553L$id7842X p?Y Zʠz?IsNormalizedIsZero554L$id7843X@jp?YZ?IsNormalizedIsZero555L$id7844X@?`?YZ[?IsNormalizedIsZero556L$id7845Xv'YZ }?IsNormalizedIsZero557L$id7846XYZIsNormalizedIsZero558L$id7847XYZIsNormalizedIsZero559L$id7848XYZIsNormalizedIsZero560L$id7849XYZIsNormalizedIsZero561L$id7850X )ÿY]Z@ ʿIsNormalizedIsZero562L$id7851X@U¿Y`Y"ZHhǿIsNormalizedIsZero563L$id7852X@Y Z@ǿIsNormalizedIsZero564L$id7853X¿Y`LZ`|ʿIsNormalizedIsZero565L$id7854X2YLZƿIsNormalizedIsZero566L$id7855XYfZ[[ĿIsNormalizedIsZero567L$id7856X@NY@ϟZ#IsNormalizedIsZero568L$id7857X "ിYZ`Ҧ¿IsNormalizedIsZero569L$id7858XYZSIsNormalizedIsZero570L$id7859XY ѯZ2qIsNormalizedIsZero571L$id7860X+Y Z`yIsNormalizedIsZero572L$id7861X 7Y@Z@IsNormalizedIsZero573L$id7862X`aYLZiIsNormalizedIsZero574L$id7863X Y6Z`EIsNormalizedIsZero575L$id7864XB?YZ)?IsNormalizedIsZero576L$id7865XvE?YbZ?IsNormalizedIsZero577L$id7866X 5?Y ZhV?IsNormalizedIsZero578L$id7867XYZIsNormalizedIsZero579L$id7868XYZIsNormalizedIsZero580L$id7869X@;?YOZތ?IsNormalizedIsZero581L$id7870XYZIsNormalizedIsZero582L$id7871XYZIsNormalizedIsZero583L$id7872XYZIsNormalizedIsZero584L$id7873XYZIsNormalizedIsZero585L$id7874X`ϞYNZ<ſIsNormalizedIsZero586L$id7875X2Y@pZl=ÿIsNormalizedIsZero587L$id7876X\Y@~oZÿIsNormalizedIsZero588L$id7877X["Y SLZſIsNormalizedIsZero589L$id7878X/Y`Z`~¿IsNormalizedIsZero590L$id7879XY%ZIsNormalizedIsZero591L$id7880X歿YZ`zIsNormalizedIsZero592L$id7881X wY FZ`GIsNormalizedIsZero593L$id7882X`Y\ZNIsNormalizedIsZero594L$id7883XwY@#ZIsNormalizedIsZero595L$id7884XZ{Y`Z[IsNormalizedIsZero596L$id7885X9%YZIsNormalizedIsZero597L$id7886X9e?YLZ@IsNormalizedIsZero598L$id7887X`8t?Y@Zj?IsNormalizedIsZero599L$id7888XJc?YZi?IsNormalizedIsZero600L$id7889X~PYbZ@!IsNormalizedIsZero601L$id7890X [P?YZ{t?IsNormalizedIsZero602L$id7891XYZIsNormalizedIsZero603L$id7892XYZIsNormalizedIsZero604L$id7893X 1?YZ@F?IsNormalizedIsZero605L$id7894XYZIsNormalizedIsZero606L$id7895XYZIsNormalizedIsZero607L$id7896XYZIsNormalizedIsZero608L$id7897XYZIsNormalizedIsZero609L$id7898X@$пY$??Z'IsNormalizedIsZero610L$id7899XvҿYB?Z IsNormalizedIsZero611L$id7900X`!ԿY@,?Z@SIsNormalizedIsZero612L$id7901X@ѿY`p?Z`{IsNormalizedIsZero613L$id7902X BҿY ?Z4IsNormalizedIsZero614L$id7903X?տY ?Z@>!IsNormalizedIsZero615L$id7904X@ֿY`?Z p2IsNormalizedIsZero616L$id7905X@ ӿY?ZIsNormalizedIsZero617L$id7906X@$ԿY~2?Z߽޿IsNormalizedIsZero618L$id7907XH׿Yj?ZۿIsNormalizedIsZero619L$id7908Xz׿Y,m?Z`LֿIsNormalizedIsZero620L$id7909XԿY``?Z ڿIsNormalizedIsZero621L$id7910X/ؿY F?ZlѿIsNormalizedIsZero622L$id7911XԿYP]?Z XտIsNormalizedIsZero623L$id7912XlؿY?ZTοIsNormalizedIsZero624L$id7913X@ÛؿY?Z&ɿIsNormalizedIsZero625L$id7914X>տY@6?Z@eοIsNormalizedIsZero626L$id7915XտY?ZR$ҿIsNormalizedIsZero627L$id7916X ؿYg@?ZƽIsNormalizedIsZero628L$id7917X@ ؿYs?ZIsNormalizedIsZero629L$id7918X |տY?ZBIsNormalizedIsZero630L$id7919X gտY?ZGIsNormalizedIsZero631L$id7920XοY#b?ZhIsNormalizedIsZero632L$id7921X,пY?Z̧IsNormalizedIsZero633L$id7922X@dXпY ?ZՃIsNormalizedIsZero634L$id7923X@)ϿYO?Z7OIsNormalizedIsZero635L$id7924X<ϿYp?ZIsNormalizedIsZero636L$id7925XRпY9?ZIsNormalizedIsZero637L$id7926X`{пYu?ZIsNormalizedIsZero638L$id7927XϿY?Z5IsNormalizedIsZero639L$id7928X *8пYk?ZIsNormalizedIsZero640L$id7929X пYB?ZIsNormalizedIsZero641L$id7930X9ѿY?ZIJݿIsNormalizedIsZero642L$id7931X †пYº?Z߿IsNormalizedIsZero643L$id7932XпY?ZnڿIsNormalizedIsZero644L$id7933XHѿY2?ZdؿIsNormalizedIsZero645L$id7934XѿY'?Z`fӿIsNormalizedIsZero646L$id7935X` ѿY -?ZԿIsNormalizedIsZero647L$id7936X}ѿY?Z˿IsNormalizedIsZero648L$id7937X"ѿY!?Z@`ʿIsNormalizedIsZero649L$id7938XѿY _?Z\¿IsNormalizedIsZero650L$id7939XѿY໢?ZJZIsNormalizedIsZero651L$id7940X1[ѿY෯?Zy8IsNormalizedIsZero652L$id7941X@=ѿYw?Z`¿IsNormalizedIsZero653L$id7942XʿYA?ZzIsNormalizedIsZero654L$id7943Xi̿Y{T?ZNIsNormalizedIsZero655L$id7944XSͿYA?Z`{IsNormalizedIsZero656L$id7945Xz˿Y@E9?Z@IsNormalizedIsZero657L$id7946X̿Y?Z8IsNormalizedIsZero658L$id7947X@aͿY@,?Z/IsNormalizedIsZero659L$id7948X ԚοY!?Z@V IsNormalizedIsZero660L$id7949X̿Y?Zi8IsNormalizedIsZero661L$id7950XlͿY@4e?ZIsNormalizedIsZero662L$id7951X"ϿY]?Z`IsNormalizedIsZero663L$id7952XϿY`b?Z`^޿IsNormalizedIsZero664L$id7953X*ͿY?Z@е޿IsNormalizedIsZero665L$id7954XBͿY?Z ؿIsNormalizedIsZero666L$id7955X`ϿY\7?Z\ٿIsNormalizedIsZero667L$id7956X`ϿY.?Z@ԿIsNormalizedIsZero668L$id7957X]gͿY =?Z qտIsNormalizedIsZero669L$id7958XͿY @?Z`ҿIsNormalizedIsZero670L$id7959X@пY`J?Z 1ϿIsNormalizedIsZero671L$id7960XпYm?ZſIsNormalizedIsZero672L$id7961X ͿY m?Z@ǿIsNormalizedIsZero673L$id7962XϽпY@P?ZpIsNormalizedIsZero674L$id7963X TͿY?Z`IsNormalizedIsZero675L$id7964X`qƿY`߇?Z FIsNormalizedIsZero676L$id7965XȿYA?ZT IsNormalizedIsZero677L$id7966X@AɿY " ?Z/IsNormalizedIsZero678L$id7967X oǿY`?Z"IsNormalizedIsZero679L$id7968X`dǿY?Z`bIsNormalizedIsZero680L$id7969XNʿY`]?ZlIsNormalizedIsZero681L$id7970XʿY@?Z@^IsNormalizedIsZero682L$id7971XqǿY ?ZIsNormalizedIsZero683L$id7972X$ǿY?ZɋIsNormalizedIsZero684L$id7973XʿY@#?Z&7IsNormalizedIsZero685L$id7974XʿYx?Z G޿IsNormalizedIsZero686L$id7975X FǿY$?ZݿIsNormalizedIsZero687L$id7976X`ǿY X?ZٿIsNormalizedIsZero688L$id7977X`|ʿYݓ?Z|ٿIsNormalizedIsZero689L$id7978X>˿Y?Z'ԿIsNormalizedIsZero690L$id7979X@A ǿY ?ZӿIsNormalizedIsZero691L$id7980XƿY`o?Z`کǿIsNormalizedIsZero692L$id7981XVʿYRj?ZwͿIsNormalizedIsZero693L$id7982XʿY`?ZCĿIsNormalizedIsZero694L$id7983X4ƿY@6?Zc\IsNormalizedIsZero695L$id7984X|ɿY6?Z@ IsNormalizedIsZero696L$id7985XfƿY`d?Z`;IsNormalizedIsZero697L$id7986X@JY?ZIsNormalizedIsZero698L$id7987XÿYd?Z IsNormalizedIsZero699L$id7988XBĿYH?ZIsNormalizedIsZero700L$id7989X "Y@,)?ZQIsNormalizedIsZero701L$id7990X@ӾYr?Z IsNormalizedIsZero702L$id7991XBĿY`Zb?ZLIsNormalizedIsZero703L$id7992Xh9ĿY?Z\IsNormalizedIsZero704L$id7993X ̽Yr?Z IsNormalizedIsZero705L$id7994X`üY?ZT߿IsNormalizedIsZero706L$id7995X6ÿY '?Z.IsNormalizedIsZero707L$id7996XϜÿY?Z ܿIsNormalizedIsZero708L$id7997XY |?ZTܿIsNormalizedIsZero709L$id7998X zYH?Z8ؿIsNormalizedIsZero710L$id7999XdÿY?Z@uٿIsNormalizedIsZero711L$id8000X]ÿY O?ZҿIsNormalizedIsZero712L$id8001XKY`D?Z ZѿIsNormalizedIsZero713L$id8002XNY`R|?Z`9 ÿIsNormalizedIsZero714L$id8003X¿YA4?ZſIsNormalizedIsZero715L$id8004X@¿Y|k?Z`MIsNormalizedIsZero716L$id8005X`8,Y@?Z.VIsNormalizedIsZero717L$id8006X`Q¿YпIsNormalizedIsZero757L$id8046X0Ӳ?YaR?ZvȿIsNormalizedIsZero758L$id8047X;?Y]?ZUȿIsNormalizedIsZero759L$id8048X`?Y?ZlIsNormalizedIsZero760L$id8049X ;?Y U?Z@IsNormalizedIsZero761L$id8050X2?Y X?ZIsNormalizedIsZero762L$id8051X&3?Yh?Z`|_IsNormalizedIsZero763L$id8052X -?Y ?Z@fIsNormalizedIsZero764L$id8053X?Y@?ZBhIsNormalizedIsZero765L$id8054X%?Y`c?ZgIsNormalizedIsZero766L$id8055X:?Y@?Z NnIsNormalizedIsZero767L$id8056XCn?YB@?Z(IsNormalizedIsZero768L$id8057X?Y?ZIsNormalizedIsZero769L$id8058X`Zb?YOL?ZIsNormalizedIsZero770L$id8059X `?Y &(?Z@9IsNormalizedIsZero771L$id8060Xb*?YA?Z`mpIsNormalizedIsZero772L$id8061X`?Y?Z<9IsNormalizedIsZero773L$id8062X%?YP?ZIsNormalizedIsZero774L$id8063X?Y ?Z@DIsNormalizedIsZero775L$id8064X?Y R?ZLڿIsNormalizedIsZero776L$id8065X ?Y?Z ӿIsNormalizedIsZero777L$id8066X`6s?YS?ZտIsNormalizedIsZero778L$id8067X@{?Y}?Z`ۿIsNormalizedIsZero779L$id8068XK?Y@U0?Z`AпIsNormalizedIsZero780L$id8069X ?Y?Z ɿIsNormalizedIsZero781L$id8070X@R?Y ?Z ʿIsNormalizedIsZero782L$id8071XG?Y ?ZѿIsNormalizedIsZero783L$id8072X@?Y`7?Z!qIsNormalizedIsZero784L$id8073X ?YG5?ZhIsNormalizedIsZero785L$id8074XW=?Y L5?Z0IsNormalizedIsZero786L$id8075XHg?Y)?Z`¿IsNormalizedIsZero787L$id8076X[ ?Y?Z@eIsNormalizedIsZero788L$id8077X(?Y?Z`%XIsNormalizedIsZero789L$id8078X ?Y@#?ZFIsNormalizedIsZero790L$id8079X)?Yώ?Z@LIsNormalizedIsZero791L$id8080X`?Y@P?Z IsNormalizedIsZero792L$id8081X7?Y~4?Z14IsNormalizedIsZero793L$id8082Xw?Y@?ZKIsNormalizedIsZero794L$id8083X` :?Y@"?Z_IsNormalizedIsZero795L$id8084X}?Y?ZSIsNormalizedIsZero796L$id8085X +?Y W1?ZOIsNormalizedIsZero797L$id8086XS?Y?ZbIsNormalizedIsZero798L$id8087XN?Y`W?Z`IsNormalizedIsZero799L$id8088X?Y?ZBݿIsNormalizedIsZero800L$id8089X ?Y!?Z@X׿IsNormalizedIsZero801L$id8090X?Y?Z5ؿIsNormalizedIsZero802L$id8091X`I?Y U?Z޿IsNormalizedIsZero803L$id8092X?Y@ ?Z ҿIsNormalizedIsZero804L$id8093XGn?Y@?Z~ɿIsNormalizedIsZero805L$id8094X@:?Y?ZlȿIsNormalizedIsZero806L$id8095X`/M?Y?ZЖҿIsNormalizedIsZero807L$id8096X ?Y"?Zu¿IsNormalizedIsZero808L$id8097X?Yq5?Z}ȷIsNormalizedIsZero809L$id8098X?Y@1@?ZIsNormalizedIsZero810L$id8099XR?Y?ZC¿IsNormalizedIsZero811L$id8100X#?Y?Z@$IsNormalizedIsZero812L$id8101X`?Y@?Z`;&IsNormalizedIsZero813L$id8102X j?Y`b,?Z IsNormalizedIsZero814L$id8103X?Y`>?Z!IsNormalizedIsZero929L$id8218XY`C?Z ܿIsNormalizedIsZero930L$id8219X`> ĿY,?Z<޿IsNormalizedIsZero931L$id8220X@5 ¿Y?Z@IsNormalizedIsZero932L$id8221XbgY?Z`߿IsNormalizedIsZero933L$id8222XeYOd?Z+ܿIsNormalizedIsZero934L$id8223XฌY?ZGڿIsNormalizedIsZero935L$id8224X`縿Y #?ZAݿIsNormalizedIsZero936L$id8225X혶Y?Z߿IsNormalizedIsZero937L$id8226Xy8Y5??Z?ԿIsNormalizedIsZero938L$id8227X`*6Y ?Z"޿IsNormalizedIsZero939L$id8228X``Y?Z`IsNormalizedIsZero940L$id8229XEY*?Z tֿIsNormalizedIsZero941L$id8230X\Yq?Z`uIsNormalizedIsZero942L$id8231XY@$?Z)ĿIsNormalizedIsZero943L$id8232XਣYH?Z'ĿIsNormalizedIsZero944L$id8233X`҃Y`?Zy=IsNormalizedIsZero945L$id8234XyǿY`p?ZhrٿIsNormalizedIsZero946L$id8235X ˿Y`A?Z`ڿIsNormalizedIsZero947L$id8236X̿Yk?ZݿIsNormalizedIsZero948L$id8237X >ɿY`v?ZaܿIsNormalizedIsZero949L$id8238X@Yढ?ZֿIsNormalizedIsZero950L$id8239X]ĿY`1?Z%ؿIsNormalizedIsZero951L$id8240X`ſY?Z ۿIsNormalizedIsZero952L$id8241X`¿Y`?Z{dٿIsNormalizedIsZero953L$id8242XEY8?ZֿIsNormalizedIsZero954L$id8243XY?Z@տIsNormalizedIsZero955L$id8244X pY@?Z i׿IsNormalizedIsZero956L$id8245X躿Y/?Z\ٿIsNormalizedIsZero957L$id8246XmY`?Z`пIsNormalizedIsZero958L$id8247X(Y~?Z+ؿIsNormalizedIsZero959L$id8248X@9 Y` ?ZۿIsNormalizedIsZero960L$id8249X 0Y`S?Z:ҿIsNormalizedIsZero961L$id8250X~Y`E?Z`GqIsNormalizedIsZero962L$id8251XwY?ZP¼IsNormalizedIsZero963L$id8252X`ᓿYe?ZYIIsNormalizedIsZero964L$id8253XrY@t?ZIsNormalizedIsZero965L$id8254XTſY}?Z *ԿIsNormalizedIsZero966L$id8255X^~ɿYl?Z5տIsNormalizedIsZero967L$id8256X`=ʿY ;?Z׿IsNormalizedIsZero968L$id8257XƿYZ?ZֿIsNormalizedIsZero969L$id8258X4Y)t?Z`ҿIsNormalizedIsZero970L$id8259X@¿Y W#?Z cӿIsNormalizedIsZero971L$id8260XJÿY S?Z!տIsNormalizedIsZero972L$id8261XY`?Zc"ԿIsNormalizedIsZero973L$id8262XyY@Y?Z"ؿIsNormalizedIsZero974L$id8263X6Y?ZпIsNormalizedIsZero975L$id8264XYGp?Z ߥҿIsNormalizedIsZero976L$id8265X@^Y` ?Z`ԿIsNormalizedIsZero977L$id8266X`ͺY?ZaοIsNormalizedIsZero978L$id8267X` Yhx?Z@W߿IsNormalizedIsZero979L$id8268XȒYा?ZտIsNormalizedIsZero980L$id8269X !ʳYE?Z2пIsNormalizedIsZero981L$id8270XY?ZIsNormalizedIsZero982L$id8271X`YB?ZIsNormalizedIsZero983L$id8272X/Y?Z@IsNormalizedIsZero984L$id8273X@Y?ZtIsNormalizedIsZero985L$id8274XĿYbr?ZQпIsNormalizedIsZero986L$id8275X`B>ȿY %?ZжѿIsNormalizedIsZero987L$id8276X ȿY:?ZΆӿIsNormalizedIsZero988L$id8277X`fſYT*?Z,|ҿIsNormalizedIsZero989L$id8278XkY ?Z'ͿIsNormalizedIsZero990L$id8279XY@;?ZkϿIsNormalizedIsZero991L$id8280X¿Y@v?Z@aѿIsNormalizedIsZero992L$id8281XY`ͺ?Z@1пIsNormalizedIsZero993L$id8282XY%,?Z`c^˿IsNormalizedIsZero994L$id8283XDY5'?ZʿIsNormalizedIsZero995L$id8284X//Y?ZͿIsNormalizedIsZero996L$id8285X"Y?Z@g пIsNormalizedIsZero997L$id8286XY?ZIsNormalizedIsZero998L$id8287XY?ZIsNormalizedIsZero999L$id8288XY?ZIsNormalizedIsZero1000L$id8289XY?ZIsNormalizedIsZero1001L$id8290XY?ZIsNormalizedIsZero1002L$id8291XWNY?Z@x_IsNormalizedIsZero1003L$id8292XiY@?ZMGIsNormalizedIsZero1004L$id8293XY?ZIsNormalizedIsZero1005L$id8294X¿Y~?Z@ӄ˿IsNormalizedIsZero1006L$id8295X@ſY?Z@-ͿIsNormalizedIsZero1007L$id8296XǿYci?Z ϿIsNormalizedIsZero1008L$id8297X`lĿY?Z/οIsNormalizedIsZero1009L$id8298XY0Q?Z`cǿIsNormalizedIsZero1010L$id8299X`/Y?ZɿIsNormalizedIsZero1011L$id8300X -Y ?ZG̿IsNormalizedIsZero1012L$id8301X 'Y!?Zo ʿIsNormalizedIsZero1013L$id8302X`HܫY1?ZݒĿIsNormalizedIsZero1014L$id8303XY{?Z&ſIsNormalizedIsZero1015L$id8304X뵿YR?Z`GǿIsNormalizedIsZero1016L$id8305X ߰Y@f?ZJ"ǿIsNormalizedIsZero1017L$id8306XY?ZIsNormalizedIsZero1018L$id8307XY?ZIsNormalizedIsZero1019L$id8308XY?ZIsNormalizedIsZero1020L$id8309XY?ZIsNormalizedIsZero1021L$id8310Xh>Y?Z`IsNormalizedIsZero1022L$id8311XYY?Z4IsNormalizedIsZero1023L$id8312XY?ZIsNormalizedIsZero1024L$id8313XY?ZIsNormalizedIsZero1025L$id8314XjؿY,?ZȿIsNormalizedIsZero1026L$id8315XO¿Y ?ZȿIsNormalizedIsZero1027L$id8316X¿Y%?ZףʿIsNormalizedIsZero1028L$id8317X俿Y?Z-ɿIsNormalizedIsZero1029L$id8318XfYax?Z ĿIsNormalizedIsZero1030L$id8319XY/Y?Z(ƿIsNormalizedIsZero1031L$id8320XDYF?ZǿIsNormalizedIsZero1032L$id8321XݴYGt?ZſIsNormalizedIsZero1033L$id8322XY@?Z`jIsNormalizedIsZero1034L$id8323X mqY࿤?ZIsNormalizedIsZero1035L$id8324XB=Y?Z1¿IsNormalizedIsZero1036L$id8325X@"Y@?Z ÿIsNormalizedIsZero1037L$id8326XY?ZIsNormalizedIsZero1038L$id8327XY?ZIsNormalizedIsZero1039L$id8328XY?ZIsNormalizedIsZero1040L$id8329XY?ZIsNormalizedIsZero1041L$id8330XY?Y?Z@&IsNormalizedIsZero1042L$id8331X^?YK?Z@2IsNormalizedIsZero1043L$id8332XY?ZIsNormalizedIsZero1044L$id8333XY?ZIsNormalizedIsZero1045L$id8334X?YZIsNormalizedIsZero1046L$id8335X?YZIsNormalizedIsZero1047L$id8336X?YZIsNormalizedIsZero1048L$id8337X?YZIsNormalizedIsZero1049L$id8338X?YZIsNormalizedIsZero1050L$id8339X?YZIsNormalizedIsZero1051L$id8340X?YZIsNormalizedIsZero1052L$id8341X?YZIsNormalizedIsZero1053L$id8342X?YZIsNormalizedIsZero1054L$id8343X?YZIsNormalizedIsZero1055L$id8344X?YZIsNormalizedIsZero1056L$id8345X?YZIsNormalizedIsZero1057L$id8346X?YZIsNormalizedIsZero1058L$id8347X?YZIsNormalizedIsZero1059L$id8348X?YZIsNormalizedIsZero1060L$id8349X?YZIsNormalizedIsZero1061L$id8350X?YZIsNormalizedIsZero1062L$id8351X?YZIsNormalizedIsZero1063L$id8352X?YZIsNormalizedIsZero1064L$id8353X?YZIsNormalizedIsZero1065L$id8354X?YZIsNormalizedIsZero1066L$id8355X?YZIsNormalizedIsZero1067L$id8356X?YZIsNormalizedIsZero1068L$id8357X?YZIsNormalizedIsZero1069L$id8358XmؿY`EZFwIsNormalizedIsZero1070L$id8359X^~ؿY$Z}wIsNormalizedIsZero1071L$id8360X~ٿYൽZ7IsNormalizedIsZero1072L$id8361X@^ٿY`*Z.IsNormalizedIsZero1073L$id8362X>Y @ZIsNormalizedIsZero1074L$id8363X ̦Y`Z:IsNormalizedIsZero1075L$id8364XbY wZ7IsNormalizedIsZero1076L$id8365X;zYZIsNormalizedIsZero1077L$id8366XYJZIsNormalizedIsZero1078L$id8367XYZIsNormalizedIsZero1079L$id8368X`YfZ IsNormalizedIsZero1080L$id8369XYlZIsNormalizedIsZero1081L$id8370X`#Y Z`IsNormalizedIsZero1082L$id8371X|bY|¿Z "߿IsNormalizedIsZero1083L$id8372XYL¿Z@>߿IsNormalizedIsZero1084L$id8373X0Y ¿Z`HIsNormalizedIsZero1085L$id8374XLYHÿZOWۿIsNormalizedIsZero1086L$id8375X x|YÿZֿIsNormalizedIsZero1087L$id8376X@bYnÿZ@]ֿIsNormalizedIsZero1088L$id8377X`KY`~ÿZ`ڿIsNormalizedIsZero1089L$id8378X`Y 6TZ;IsNormalizedIsZero1090L$id8379X Y ,OZ*IsNormalizedIsZero1091L$id8380X`*(YŊZZ`١IsNormalizedIsZero1092L$id8381X Y`CWZIsNormalizedIsZero1093L$id8382XGY@e_Z IsNormalizedIsZero1094L$id8383X.Yy!]ZTIsNormalizedIsZero1095L$id8384X@`߿Y^bZ@IsNormalizedIsZero1096L$id8385X`[Y)aZ`IsNormalizedIsZero1097L$id8386X@ٿYRgZ@2HIsNormalizedIsZero1098L$id8387X`޿YҤdZ`CIsNormalizedIsZero1099L$id8388XҿYhZ IsNormalizedIsZero1100L$id8389XvտYChZ%IsNormalizedIsZero1101L$id8390XǿYIiZDzIsNormalizedIsZero1102L$id8391XOϿYphZ-IsNormalizedIsZero1103L$id8392X@sYGnZ@IIsNormalizedIsZero1104L$id8393X üY@qkZ IsNormalizedIsZero1105L$id8394Xg~?Y@ qZIsNormalizedIsZero1106L$id8395X`/MY@oZ@IsNormalizedIsZero1107L$id8396X踲?Y`\rZIsNormalizedIsZero1108L$id8397X~?Y@nqZ@[IsNormalizedIsZero1109L$id8398X ?Y*nZ@IsNormalizedIsZero1110L$id8399X~¹?Y FzqZXIsNormalizedIsZero1111L$id8400X?YsZIsNormalizedIsZero1112L$id8401X 4?Y@6;rZIsNormalizedIsZero1113L$id8402X@~E?Y@ccZIsNormalizedIsZero1114L$id8403X?YКoZwIsNormalizedIsZero1115L$id8404X`YHaZ,IsNormalizedIsZero1116L$id8405X 'Y3_Z`IsNormalizedIsZero1117L$id8406XYuZIsNormalizedIsZero1118L$id8407X ʻYEmZ IsNormalizedIsZero1119L$id8408X`¿YْuZ IsNormalizedIsZero1120L$id8409XYquZQIsNormalizedIsZero1121L$id8410X@ĿYpZIsNormalizedIsZero1122L$id8411X`k}ÿYQsZbIsNormalizedIsZero1123L$id8412XZǿY@2VkZEoIsNormalizedIsZero1124L$id8413X`2ƿY6unZIsNormalizedIsZero1125L$id8414X˿Y` {ZN?IsNormalizedIsZero1126L$id8415XKʿY`emsZ,QIsNormalizedIsZero1127L$id8416Xj̿YZG(IsNormalizedIsZero1128L$id8417X@̿Y`(Z)IsNormalizedIsZero1129L$id8418XF̿Y"Z@a%IsNormalizedIsZero1130L$id8419X?YZIsNormalizedIsZero1131L$id8420X?YZIsNormalizedIsZero1132L$id8421X?YZIsNormalizedIsZero1133L$id8422X?YZIsNormalizedIsZero1134L$id8423X?YZIsNormalizedIsZero1135L$id8424X?YZIsNormalizedIsZero1136L$id8425X?YZIsNormalizedIsZero1137L$id8426X?YZIsNormalizedIsZero1138L$id8427X?YZIsNormalizedIsZero1139L$id8428X?YZIsNormalizedIsZero1140L$id8429X?YZIsNormalizedIsZero1141L$id8430X?YZIsNormalizedIsZero1142L$id8431Xq׿Y@ZIsNormalizedIsZero1143L$id8432XP׿Y Z`HIsNormalizedIsZero1144L$id8433XY]Z` IsNormalizedIsZero1145L$id8434XtYqZ(lIsNormalizedIsZero1146L$id8435X gY ZYIsNormalizedIsZero1147L$id8436X Y-Z"AIsNormalizedIsZero1148L$id8437X`Y`Z߿IsNormalizedIsZero1149L$id8438X<Y¿Z"IsNormalizedIsZero1150L$id8439XlY FÿZ GۿIsNormalizedIsZero1151L$id8440XfYqÿZ@׿IsNormalizedIsZero1152L$id8441XؿYLw?ZIsNormalizedIsZero1153L$id8442X ۲?Y ?ZIsNormalizedIsZero1154L$id8443X)?YJ?ZIsNormalizedIsZero1155L$id8444Xp?YՀ?Z /?IsNormalizedIsZero1156L$id8445X̿Y«Z`Y"IsNormalizedIsZero1157L$id8446X г?Y3ZIsNormalizedIsZero1158L$id8447X@YZfIsNormalizedIsZero1159L$id8448X YZIsNormalizedIsZero1160L$id8449X@YMY`vZ`IsNormalizedIsZero1161L$id8450X Y@6ZIsNormalizedIsZero1162L$id8451Xd⶿Y@1Z%IsNormalizedIsZero1163L$id8452X`òY \ZIsNormalizedIsZero1164L$id8453XnIYZiIsNormalizedIsZero1165L$id8454X SY iZIsNormalizedIsZero1166L$id8455XY`Z IsNormalizedIsZero1167L$id8456X@¢YZ H¿IsNormalizedIsZero1168L$id8457XtY ZIsNormalizedIsZero1169L$id8458XHYoZ깿IsNormalizedIsZero1170L$id8459X`YZ`_IsNormalizedIsZero1171L$id8460XEY`RZnOIsNormalizedIsZero1172L$id8461X|\[?Y`eZ$IsNormalizedIsZero1173L$id8462X@Dw?Y`Z&?IsNormalizedIsZero1174L$id8463X\?YZ@qZ?IsNormalizedIsZero1175L$id8464XYZIsNormalizedIsZero1176L$id8465XYZIsNormalizedIsZero1177L$id8466XYZIsNormalizedIsZero1178L$id8467X@6tͿY B#?Z?IsNormalizedIsZero1179L$id8468X`BҿYVr?ZXIsNormalizedIsZero1180L$id8469XRҿY^?ZIsNormalizedIsZero1181L$id8470X@7ԿY ?Z`.IsNormalizedIsZero1182L$id8471X@տYߢ?Z`ĿIsNormalizedIsZero1183L$id8472X`ֿY`|?Z9IsNormalizedIsZero1184L$id8473X ׿Y ji?Z,IsNormalizedIsZero1185L$id8474XXؿY kq?Z IsNormalizedIsZero1186L$id8475X@dؿY@h?Z IsNormalizedIsZero1187L$id8476XIؿY@p?Z ZIsNormalizedIsZero1188L$id8477X ,ؿY&l?Z MIsNormalizedIsZero1189L$id8478X`ؿYs?Z:qIsNormalizedIsZero1190L$id8479XcؿYx?Z IsNormalizedIsZero1191L$id8480X xпY?Z`IsNormalizedIsZero1192L$id8481XKѿY`x%?Z $IsNormalizedIsZero1193L$id8482X^̿Y`KV?Z IsNormalizedIsZero1194L$id8483X{οYW?Z hIsNormalizedIsZero1195L$id8484X`cȿY?Z-IsNormalizedIsZero1196L$id8485X _{ʿY`mE?ZNIsNormalizedIsZero1197L$id8486X`<ĿY_Y?Z` IsNormalizedIsZero1198L$id8487XȑƿY?ZMGIsNormalizedIsZero1199L$id8488X@FY?ZaIsNormalizedIsZero1200L$id8489XY?Z`-IsNormalizedIsZero1201L$id8490XDبY@u?ZIsNormalizedIsZero1202L$id8491X@u?Y@Q?Z!IsNormalizedIsZero1203L$id8492XG?Y?Z|IsNormalizedIsZero1204L$id8493XYM?Z%IsNormalizedIsZero1205L$id8494XBY@J3?Z@hIsNormalizedIsZero1206L$id8495X@׾ĿY@q?Z (IsNormalizedIsZero1207L$id8496X`1\Y?Z<IsNormalizedIsZero1208L$id8497XǿYG|?Z IsNormalizedIsZero1209L$id8498XȿYܬ?Z@IsNormalizedIsZero1210L$id8499X gY?Z@3IsNormalizedIsZero1211L$id8500Xs*Y?Z..IsNormalizedIsZero1212L$id8501X@̿Y`w?ZNxIsNormalizedIsZero1213L$id8502X@ͿYFw?Z EݿIsNormalizedIsZero1214L$id8503X`1\Y?Z`L)IsNormalizedIsZero1215L$id8504X%Y?Z`/M!IsNormalizedIsZero1216L$id8505X ̿YD?ZRڿIsNormalizedIsZero1217L$id8506X]ʿYv?Z@]׿IsNormalizedIsZero1218L$id8507X6Y?Z`;IsNormalizedIsZero1219L$id8508X`RCY?Zs*پIsNormalizedIsZero1220L$id8509X 8ʿYJi?Z`XտIsNormalizedIsZero1221L$id8510X]mɿY?Z7ӿIsNormalizedIsZero1222L$id8511XYuu?ZӿIsNormalizedIsZero1223L$id8512XdZkY`?ZYIsNormalizedIsZero1224L$id8513XY?ZIsNormalizedIsZero1225L$id8514XY?ZIsNormalizedIsZero1226L$id8515XɿY?ZYgѿIsNormalizedIsZero1227L$id8516XGȿYk?ZjϿIsNormalizedIsZero1228L$id8517X Yq?ZͿIsNormalizedIsZero1229L$id8518X4Y_?Z ȿIsNormalizedIsZero1230L$id8519X\Yl?Z:IsNormalizedIsZero1231L$id8520X !Y?Z |(IsNormalizedIsZero1232L$id8521XY?ZIsNormalizedIsZero1233L$id8522XY?ZIsNormalizedIsZero1234L$id8523XtwſY>?Z`H̿IsNormalizedIsZero1235L$id8524XPÿY@?ZhʿIsNormalizedIsZero1236L$id8525XMY?Z e6ĿIsNormalizedIsZero1237L$id8526X ʝY?Z (IsNormalizedIsZero1238L$id8527XCM?Y@w?ZZ}IsNormalizedIsZero1239L$id8528Xv?Y 1?Z˛IsNormalizedIsZero1240L$id8529XY?ZIsNormalizedIsZero1241L$id8530XY?ZIsNormalizedIsZero1242L$id8531X`YzFZ@`,IsNormalizedIsZero1243L$id8532X`Y.5ĿZjѿIsNormalizedIsZero1244L$id8533X`PYLĿZѿIsNormalizedIsZero1245L$id8534X 9Y ĿZ [ȿIsNormalizedIsZero1246L$id8535X%YފĿZǿIsNormalizedIsZero1247L$id8536X?YZIsNormalizedIsZero1248L$id8537XB?YZIsNormalizedIsZero1249L$id8538XMYZIsNormalizedIsZero1250L$id8539XhtÿY@ӠZIsNormalizedIsZero1251L$id8540X@Y@ZIsNormalizedIsZero1252L$id8541X Y ZIsNormalizedIsZero1253L$id8542XYZIsNormalizedIsZero1254L$id8543X@Y ZIsNormalizedIsZero1255L$id8544XYZIsNormalizedIsZero1256L$id8545XԾYZIsNormalizedIsZero1257L$id8546XYZIsNormalizedIsZero1258L$id8547XYZIsNormalizedIsZero1259L$id8548Xw?Y`ZIsNormalizedIsZero1260L$id8549Xw?Y`ZIsNormalizedIsZero1261L$id8550XYZIsNormalizedIsZero1262L$id8551XYZIsNormalizedIsZero1263L$id8552XYZIsNormalizedIsZero1264L$id8553XYZIsNormalizedIsZero1265L$id8554XYZIsNormalizedIsZero1266L$id8555XYZIsNormalizedIsZero1267L$id8556XYZIsNormalizedIsZero1268L$id8557XYZIsNormalizedIsZero1269L$id8558XɿYhV?ZIsNormalizedIsZero1270L$id8559X`ƿY`ׄ?ZIsNormalizedIsZero1271L$id8560XeM¿Yӫ?ZIsNormalizedIsZero1272L$id8561X:Y?ZIsNormalizedIsZero1273L$id8562XN]Y?ZIsNormalizedIsZero1274L$id8563Xd?YO?ZIsNormalizedIsZero1275L$id8564X)?YB?ZIsNormalizedIsZero1276L$id8565X ?Y?ZIsNormalizedIsZero1277L$id8566X@ ?YP?ZIsNormalizedIsZero1278L$id8567X@?Y`?ZIsNormalizedIsZero1279L$id8568X?Y?ZIsNormalizedIsZero1280L$id8569X?Y?ZIsNormalizedIsZero1281L$id8570XY?ZIsNormalizedIsZero1282L$id8571XFY?ZIsNormalizedIsZero1283L$id8572X ¿Y ?Z{eȿIsNormalizedIsZero1284L$id8573X@*C?Y@?Z l꼿IsNormalizedIsZero1285L$id8574X`1\]?Y@?ZKIsNormalizedIsZero1286L$id8575XY?ZIsNormalizedIsZero1287L$id8576X?YZIsNormalizedIsZero1288L$id8577X?YZIsNormalizedIsZero1289L$id8578X]hY@ ^ĿZ#ѿIsNormalizedIsZero1290L$id8579X` YuĿZ`8ǿIsNormalizedIsZero1291L$id8580X?YZIsNormalizedIsZero1292L$id8581X X?YZ?IsNormalizedIsZero1293L$id8582X!?YZIsNormalizedIsZero1294L$id8583XYZIsNormalizedIsZero1295L$id8584X@JؿYRy?ZưIsNormalizedIsZero1296L$id8585XɿYyV?ZIsNormalizedIsZero1297L$id8586Xs*Y?ZIsNormalizedIsZero1298L$id8587XY?ZIsNormalizedIsZero1299L$id8588XԾY?ZIsNormalizedIsZero1300L$id8589XоY?ZIsNormalizedIsZero1301L$id8590XY?ZIsNormalizedIsZero1302L$id8591X`1\ݾY?ZIsNormalizedIsZero1303L$id8592X`RCY?ZIsNormalizedIsZero1304L$id8593XY?ZIsNormalizedIsZero1305L$id8594XY?ZIsNormalizedIsZero1306L$id8595XY?ZIsNormalizedIsZero1307L$id8596XY?ZIsNormalizedIsZero1308L$id8597XY?ZIsNormalizedIsZero1309L$id8598XY?ZIsNormalizedIsZero1310L$id8599XY?ZIsNormalizedIsZero1311L$id8600XY?ZIsNormalizedIsZero1312L$id8601XY?ZIsNormalizedIsZero1313L$id8602XY?ZIsNormalizedIsZero1314L$id8603XY?ZIsNormalizedIsZero1315L$id8604XY?ZIsNormalizedIsZero1316L$id8605XY N?ZuҿIsNormalizedIsZero1317L$id8606XY N?ZuҿIsNormalizedIsZero1318L$id8607XY N?ZuҿIsNormalizedIsZero1319L$id8608XTY?ZIsNormalizedIsZero1320L$id8609XTY`?ZIsNormalizedIsZero1321L$id8610XTY`?ZIsNormalizedIsZero1322L$id8611XTY?ZIsNormalizedIsZero1323L$id8612XTY`?ZIsNormalizedIsZero1324L$id8613XTY`?ZIsNormalizedIsZero1325L$id8614XTY`?ZIsNormalizedIsZero1326L$id8615XTY`?ZIsNormalizedIsZero1327L$id8616XTY?ZIsNormalizedIsZero1328L$id8617XTY`?ZIsNormalizedIsZero1329L$id8618XTY`?ZIsNormalizedIsZero1330L$id8619XYZ?IsNormalizedIsZero1331L$id8620XYZ?IsNormalizedIsZero1332L$id8621XYZ?IsNormalizedIsZero1333L$id8622XYZ?IsNormalizedIsZero1334L$id8623XYZ?IsNormalizedIsZero1335L$id8624XYZ?IsNormalizedIsZero1336L$id8625XYZ?IsNormalizedIsZero1337L$id8626XYZ?IsNormalizedIsZero1338L$id8627XYZ?IsNormalizedIsZero1339L$id8628XYZ?IsNormalizedIsZero1340L$id8629XYZ?IsNormalizedIsZero1341L$id8630XYZ?IsNormalizedIsZero1342L$id8631XYZ?IsNormalizedIsZero1343L$id8632XYZ?IsNormalizedIsZero1344L$id8633XYZ?IsNormalizedIsZero1345L$id8634XYZ?IsNormalizedIsZero1346L$id8635XYZ?IsNormalizedIsZero1347L$id8636XYZ?IsNormalizedIsZero1348L$id8637X?YZIsNormalizedIsZero1349L$id8638X?YZIsNormalizedIsZero1350L$id8639X?YZIsNormalizedIsZero1351L$id8640X?YZIsNormalizedIsZero1352L$id8641X?YZIsNormalizedIsZero1353L$id8642X?YZIsNormalizedIsZero1354L$id8643X\YO?Z@_IsNormalizedIsZero1355L$id8644X\YO?Z@_IsNormalizedIsZero1356L$id8645X\YO?Z@_IsNormalizedIsZero1357L$id8646XôY E+?Z;]IsNormalizedIsZero1358L$id8647XôY E+?Z;]IsNormalizedIsZero1359L$id8648XôY E+?Z;]IsNormalizedIsZero1360L$id8649X\ôY E+?Z=]IsNormalizedIsZero1361L$id8650X\ôY E+?Z=]IsNormalizedIsZero1362L$id8651X\ôY E+?Z=]IsNormalizedIsZero1363L$id8652X ôY E+?Z;]IsNormalizedIsZero1364L$id8653X ôY E+?Z;]IsNormalizedIsZero1365L$id8654X ôY E+?Z;]IsNormalizedIsZero1366L$id8655XCYk?Z@jIsNormalizedIsZero1367L$id8656XCYk?Z@jIsNormalizedIsZero1368L$id8657XCYk?Z@jIsNormalizedIsZero1369L$id8658XϴY`[?Z@iaIsNormalizedIsZero1370L$id8659XϴY`[?Z@iaIsNormalizedIsZero1371L$id8660XϴY`[?Z@iaIsNormalizedIsZero1372L$id8661XCY?ZuIsNormalizedIsZero1373L$id8662XCY?ZuIsNormalizedIsZero1374L$id8663XCY?ZuIsNormalizedIsZero1375L$id8664XݴYo?Z pIsNormalizedIsZero1376L$id8665XݴYo?Z pIsNormalizedIsZero1377L$id8666XݴYo?Z pIsNormalizedIsZero1378L$id8667X@ɶY@>v?Z IsNormalizedIsZero1379L$id8668X@ɶY@>v?Z@IsNormalizedIsZero1380L$id8669X@ɶY@>v?Z@IsNormalizedIsZero1381L$id8670X X㴿Y@?Z@yIsNormalizedIsZero1382L$id8671X X㴿Y@?Z@yIsNormalizedIsZero1383L$id8672X X㴿Y@?Z@yIsNormalizedIsZero1384L$id8673X@!;Y@?ZZIsNormalizedIsZero1385L$id8674X@!;Y@?ZZIsNormalizedIsZero1386L$id8675X@!;Y@?ZZIsNormalizedIsZero1387L$id8676X`c촿Y@[y?Z IsNormalizedIsZero1388L$id8677X`c촿Y@[y?Z IsNormalizedIsZero1389L$id8678X`c촿Y@[y?Z@IsNormalizedIsZero1390L$id8679X Y ?ZCPIsNormalizedIsZero1391L$id8680X Y ?ZCPIsNormalizedIsZero1392L$id8681X Y ?ZCPIsNormalizedIsZero1393L$id8682XſYk?Z N5IsNormalizedIsZero1394L$id8683XſYk?Z N5IsNormalizedIsZero1395L$id8684XſYk?Z N5IsNormalizedIsZero1396L$id8685X`ſYZ?Z N5IsNormalizedIsZero1397L$id8686X`ſYZ?Z N5IsNormalizedIsZero1398L$id8687X`ſYZ?Z N5IsNormalizedIsZero1399L$id8688XſY@c?Z N5IsNormalizedIsZero1400L$id8689XY?ZIsNormalizedIsZero1401L$id8690XY?ZIsNormalizedIsZero1402L$id8691XY?ZIsNormalizedIsZero1403L$id8692XY?ZIsNormalizedIsZero1404L$id8693XY?ZIsNormalizedIsZero1405L$id8694XY?ZIsNormalizedIsZero1406L$id8695XY?ZIsNormalizedIsZero1407L$id8696XY?ZIsNormalizedIsZero1408L$id8697XY?ZIsNormalizedIsZero1409L$id8698XY?ZIsNormalizedIsZero1410L$id8699XY?ZIsNormalizedIsZero1411L$id8700XY?ZIsNormalizedIsZero1412L$id8701XY?ZIsNormalizedIsZero1413L$id8702XY?ZIsNormalizedIsZero1414L$id8703XY?ZIsNormalizedIsZero1415L$id8704XY?ZIsNormalizedIsZero1416L$id8705XY?ZIsNormalizedIsZero1417L$id8706XY?ZIsNormalizedIsZero1418L$id8707XY?ZIsNormalizedIsZero1419L$id8708XY?ZIsNormalizedIsZero1420L$id8709XY?ZIsNormalizedIsZero1421L$id8710XY?ZIsNormalizedIsZero1422L$id8711XY?ZIsNormalizedIsZero1423L$id8712XY?ZIsNormalizedIsZero1424L$id8713XY?ZIsNormalizedIsZero1425L$id8714XY?ZIsNormalizedIsZero1426L$id8715XY?ZIsNormalizedIsZero1427L$id8716XY?ZIsNormalizedIsZero1428L$id8717XY?ZIsNormalizedIsZero1429L$id8718XY?ZIsNormalizedIsZero1430L$id8719XY?ZIsNormalizedIsZero1431L$id8720XY?ZIsNormalizedIsZero1432L$id8721XY?ZIsNormalizedIsZero1433L$id8722XY?ZIsNormalizedIsZero1434L$id8723XY?ZIsNormalizedIsZero1435L$id8724XY?ZIsNormalizedIsZero1436L$id8725XY?ZIsNormalizedIsZero1437L$id8726XY?ZIsNormalizedIsZero1438L$id8727XY?ZIsNormalizedIsZero1439L$id8728XY?ZIsNormalizedIsZero1440L$id8729XY?ZIsNormalizedIsZero1441L$id8730XY?ZIsNormalizedIsZero1442L$id8731XY?ZIsNormalizedIsZero1443L$id8732XY?ZIsNormalizedIsZero1444L$id8733XY?ZIsNormalizedIsZero1445L$id8734XY?ZIsNormalizedIsZero1446L$id8735XY?ZIsNormalizedIsZero1447L$id8736XY?ZIsNormalizedIsZero1448L$id8737XY?ZIsNormalizedIsZero1449L$id8738XY?ZIsNormalizedIsZero1450L$id8739XY?ZIsNormalizedIsZero1451L$id8740XY?ZIsNormalizedIsZero1452L$id8741XY?ZIsNormalizedIsZero1453L$id8742XY?ZIsNormalizedIsZero1454L$id8743XY?ZIsNormalizedIsZero1455L$id8744XY?ZIsNormalizedIsZero1456L$id8745XY?ZIsNormalizedIsZero1457L$id8746XY?ZIsNormalizedIsZero1458L$id8747XY?ZIsNormalizedIsZero1459L$id8748XY?ZIsNormalizedIsZero1460L$id8749XY?ZIsNormalizedIsZero1461L$id8750XY?ZIsNormalizedIsZero1462L$id8751XY?ZIsNormalizedIsZero1463L$id8752XY?ZIsNormalizedIsZero1464L$id8753XY?ZIsNormalizedIsZero1465L$id8754XY?ZIsNormalizedIsZero1466L$id8755XY?ZIsNormalizedIsZero1467L$id8756XY?ZIsNormalizedIsZero1468L$id8757XY?ZIsNormalizedIsZero1469L$id8758XY?ZIsNormalizedIsZero1470L$id8759XY?ZIsNormalizedIsZero1471L$id8760XY?ZIsNormalizedIsZero1472L$id8761XY?ZIsNormalizedIsZero1473L$id8762XY?ZIsNormalizedIsZero1474L$id8763XY?ZIsNormalizedIsZero1475L$id8764XY?ZIsNormalizedIsZero1476L$id8765XY?ZIsNormalizedIsZero1477L$id8766XY?ZIsNormalizedIsZero1478L$id8767XY?ZIsNormalizedIsZero1479L$id8768XY?ZIsNormalizedIsZero1480L$id8769XY?ZIsNormalizedIsZero1481L$id8770XY?ZIsNormalizedIsZero1482L$id8771XY?ZIsNormalizedIsZero1483L$id8772XY?ZIsNormalizedIsZero1484L$id8773XY?ZIsNormalizedIsZero1485L$id8774XY?ZIsNormalizedIsZero1486L$id8775X`dWzYZIsNormalizedIsZero1487L$id8776X`dWzYZIsNormalizedIsZero1488L$id8777X`dWzYZIsNormalizedIsZero1489L$id8778X`dWzYZIsNormalizedIsZero1490L$id8779XKUzYZIsNormalizedIsZero1491L$id8780XKUzYZIsNormalizedIsZero1492L$id8781XKUzYZIsNormalizedIsZero1493L$id8782XKUzYZIsNormalizedIsZero1494L$id8783XKUzYZIsNormalizedIsZero1495L$id8784XKUzYZIsNormalizedIsZero1496L$id8785X` PzYZIsNormalizedIsZero1497L$id8786X` PzYZIsNormalizedIsZero1498L$id8787X` PzYZIsNormalizedIsZero1499L$id8788X` PzYZIsNormalizedIsZero1500L$id8789XDzYZIsNormalizedIsZero1501L$id8790XDzYZIsNormalizedIsZero1502L$id8791XDzYZIsNormalizedIsZero1503L$id8792XDzYZIsNormalizedIsZero1504L$id8793XkBzYZIsNormalizedIsZero1505L$id8794XkBzYZIsNormalizedIsZero1506L$id8795XkBzYZIsNormalizedIsZero1507L$id8796XkBzYZIsNormalizedIsZero1508L$id8797XYZIsNormalizedIsZero1509L$id8798XYZIsNormalizedIsZero1510L$id8799XYZIsNormalizedIsZero1511L$id8800XYZIsNormalizedIsZero1512L$id8801XYZIsNormalizedIsZero1513L$id8802XYZIsNormalizedIsZero1514L$id8803XYZIsNormalizedIsZero1515L$id8804XYZIsNormalizedIsZero1516L$id8805X?YZ?IsNormalizedIsZero1517L$id8806X?YZ`?IsNormalizedIsZero1518L$id8807X?YZ`?IsNormalizedIsZero1519L$id8808X?YZ?IsNormalizedIsZero1520L$id8809X?YZ`?IsNormalizedIsZero1521L$id8810X?YZ`?IsNormalizedIsZero1522L$id8811X?YZ`?IsNormalizedIsZero1523L$id8812X?YZ`?IsNormalizedIsZero1524L$id8813X?YZ`?IsNormalizedIsZero1525L$id8814X?YZ`?IsNormalizedIsZero1526L$id8815X?YZ`?IsNormalizedIsZero1527L$id8816X?YZ`?IsNormalizedIsZero1528L$id8817X?YZ`?IsNormalizedIsZero1529L$id8818X?YZ`?IsNormalizedIsZero1530L$id8819X ;ij?YZ?IsNormalizedIsZero1531L$id8820X ;ij?YZ?IsNormalizedIsZero1532L$id8821X ;ij?YZ?IsNormalizedIsZero1533L$id8822X ;ij?YZ?IsNormalizedIsZero1534L$id8823X`*ij?YZ?IsNormalizedIsZero1535L$id8824X`*ij?YZ?IsNormalizedIsZero1536L$id8825Xų?YZ?IsNormalizedIsZero1537L$id8826Xų?YZ?IsNormalizedIsZero1538L$id8827Xų?YZ?IsNormalizedIsZero1539L$id8828Xų?YZ?IsNormalizedIsZero1540L$id8829X?YZ`Y?IsNormalizedIsZero1541L$id8830X?YZ`Y?IsNormalizedIsZero1542L$id8831X?YZ`Y?IsNormalizedIsZero1543L$id8832X?YZ`Y?IsNormalizedIsZero1544L$id8833X?YZ@W?IsNormalizedIsZero1545L$id8834X?YZ@W?IsNormalizedIsZero1546L$id8835X?YZ`Y?IsNormalizedIsZero1547L$id8836X?YZ@W?IsNormalizedIsZero1548L$id8837X?YZ@W?IsNormalizedIsZero1549L$id8838X?YZ`Y?IsNormalizedIsZero1550L$id8839X?YZIsNormalizedIsZero1551L$id8840X?YZIsNormalizedIsZero1552L$id8841X?YZIsNormalizedIsZero1553L$id8842X?YZIsNormalizedIsZero1554L$id8843X?YZIsNormalizedIsZero1555L$id8844X?YZIsNormalizedIsZero1556L$id8845X?YZIsNormalizedIsZero1557L$id8846X?YZIsNormalizedIsZero1558L$id8847XՋYZ?IsNormalizedIsZero1559L$id8848XՋYZ?IsNormalizedIsZero1560L$id8849XՋYZ?IsNormalizedIsZero1561L$id8850XՋYZ?IsNormalizedIsZero1562L$id8851X ՋYZ?IsNormalizedIsZero1563L$id8852X ՋYZ?IsNormalizedIsZero1564L$id8853X ՋYZ?IsNormalizedIsZero1565L$id8854X ՋYZ?IsNormalizedIsZero1566L$id8855X`.7?YZ@m?IsNormalizedIsZero1567L$id8856X`.7?YZ@m?IsNormalizedIsZero1568L$id8857X`.7?YZ@m?IsNormalizedIsZero1569L$id8858X`.7?YZ@m?IsNormalizedIsZero1570L$id8859X5?YZ@m?IsNormalizedIsZero1571L$id8860X5?YZ@m?IsNormalizedIsZero1572L$id8861X5?YZ@m?IsNormalizedIsZero1573L$id8862X5?YZ@m?IsNormalizedIsZero1574L$id8863X5?YZ@m?IsNormalizedIsZero1575L$id8864X5?YZ@m?IsNormalizedIsZero1576L$id8865X5?YZ@m?IsNormalizedIsZero1577L$id8866X5?YZ@m?IsNormalizedIsZero1578L$id8867X0?YZ@m?IsNormalizedIsZero1579L$id8868X0?YZ@m?IsNormalizedIsZero1580L$id8869X0?YZ@m?IsNormalizedIsZero1581L$id8870X0?YZ@m?IsNormalizedIsZero1582L$id8871Xg&?YZ@o?IsNormalizedIsZero1583L$id8872Xg&?YZ@o?IsNormalizedIsZero1584L$id8873Xg&?YZ@m?IsNormalizedIsZero1585L$id8874Xg&?YZ@o?IsNormalizedIsZero1586L$id8875X?YZIsNormalizedIsZero1587L$id8876X?YZIsNormalizedIsZero1588L$id8877X?YZIsNormalizedIsZero1589L$id8878X?YZIsNormalizedIsZero1590L$id8879X6YZxIsNormalizedIsZero1591L$id8880X6YZxIsNormalizedIsZero1592L$id8881X6YZxIsNormalizedIsZero1593L$id8882X6YZxIsNormalizedIsZero1594L$id8883XFYZeIsNormalizedIsZero1595L$id8884XFYZeIsNormalizedIsZero1596L$id8885XFYZeIsNormalizedIsZero1597L$id8886XFYZeIsNormalizedIsZero1598L$id8887XYZ`]IsNormalizedIsZero1599L$id8888XYZ`]IsNormalizedIsZero1600L$id8889XYZ`]IsNormalizedIsZero1601L$id8890XYZ`]IsNormalizedIsZero1602L$id8891X஗YZ`]IsNormalizedIsZero1603L$id8892X஗YZ`]IsNormalizedIsZero1604L$id8893X`YZ`[IsNormalizedIsZero1605L$id8894X`YZ`[IsNormalizedIsZero1606L$id8895X`YZ`[IsNormalizedIsZero1607L$id8896X`YZ`[IsNormalizedIsZero1608L$id8897X zÿYZIsNormalizedIsZero1609L$id8898X zÿYZIsNormalizedIsZero1610L$id8899X zÿYZIsNormalizedIsZero1611L$id8900X zÿYZIsNormalizedIsZero1612L$id8901XYZIsNormalizedIsZero1613L$id8902XYZIsNormalizedIsZero1614L$id8903XYZIsNormalizedIsZero1615L$id8904XYZIsNormalizedIsZero1616L$id8905X?YZq?IsNormalizedIsZero1617L$id8906X?YZq?IsNormalizedIsZero1618L$id8907X?YZq?IsNormalizedIsZero1619L$id8908X?YZq?IsNormalizedIsZero1620L$id8909X`.7?YZ@m?IsNormalizedIsZero1621L$id8910X`.7?YZ@m?IsNormalizedIsZero1622L$id8911X5?YZ@m?IsNormalizedIsZero1623L$id8912X5?YZ@m?IsNormalizedIsZero1624L$id8913X5?YZ@m?IsNormalizedIsZero1625L$id8914X5?YZ@m?IsNormalizedIsZero1626L$id8915X0?YZ@m?IsNormalizedIsZero1627L$id8916X0?YZ@m?IsNormalizedIsZero1628L$id8917Xg&?YZ@o?IsNormalizedIsZero1629L$id8918Xg&?YZ@o?IsNormalizedIsZero1630L$id8919X?YZIsNormalizedIsZero1631L$id8920X?YZIsNormalizedIsZero1632L$id8921X?YZIsNormalizedIsZero1633L$id8922X?YZIsNormalizedIsZero1634L$id8923X?YZIsNormalizedIsZero1635L$id8924X?YZIsNormalizedIsZero1636L$id8925XY`n?Z@0IsNormalizedIsZero1637L$id8926XY`n?Z@0IsNormalizedIsZero1638L$id8927XY`n?Z@0IsNormalizedIsZero1639L$id8928X`<YM+?Z@<IsNormalizedIsZero1640L$id8929X`<YM+?Z@<IsNormalizedIsZero1641L$id8930X`<YM+?Z@<IsNormalizedIsZero1642L$id8931XY?ZE IsNormalizedIsZero1643L$id8932XY?ZE IsNormalizedIsZero1644L$id8933XY?ZE IsNormalizedIsZero1645L$id8934X JY2p?ZIsNormalizedIsZero1646L$id8935X JY2p?ZIsNormalizedIsZero1647L$id8936X JY2p?ZIsNormalizedIsZero1648L$id8937X!Y?Z IsNormalizedIsZero1649L$id8938X!Y?Z IsNormalizedIsZero1650L$id8939X!Y?Z IsNormalizedIsZero1651L$id8940X TY@7?Z IsNormalizedIsZero1652L$id8941X TY@7?Z IsNormalizedIsZero1653L$id8942X TY@7?Z IsNormalizedIsZero1654L$id8943X#Y`?Za#IsNormalizedIsZero1655L$id8944X#Y?Za#IsNormalizedIsZero1656L$id8945X#Y`?Za#IsNormalizedIsZero1657L$id8946X@W[Y*?ZIsNormalizedIsZero1658L$id8947X@W[Y*?ZIsNormalizedIsZero1659L$id8948X@W[Y*?ZIsNormalizedIsZero1660L$id8949X+Y@I?Z.IsNormalizedIsZero1661L$id8950X+Y@I?Z.IsNormalizedIsZero1662L$id8951X+Y@I?Z.IsNormalizedIsZero1663L$id8952XcY`3?Z%IsNormalizedIsZero1664L$id8953XcY`3?Z%IsNormalizedIsZero1665L$id8954XcY`3?Z%IsNormalizedIsZero1666L$id8955X$ ÿY@{?ZIsNormalizedIsZero1667L$id8956X$ ÿY@{?ZIsNormalizedIsZero1668L$id8957X$ ÿY@{?ZIsNormalizedIsZero1669L$id8958XY?Z`%IsNormalizedIsZero1670L$id8959XY?Z`%IsNormalizedIsZero1671L$id8960XY?Z`%IsNormalizedIsZero1672L$id8961XY n?Z?IsNormalizedIsZero1673L$id8962XY n?Z?IsNormalizedIsZero1674L$id8963XY n?Z?IsNormalizedIsZero1675L$id8964XYl?ZIsNormalizedIsZero1676L$id8965XYl?ZIsNormalizedIsZero1677L$id8966XYl?ZIsNormalizedIsZero1678L$id8967XYl?ZIsNormalizedIsZero1679L$id8968XYl?ZIsNormalizedIsZero1680L$id8969X@Y?ZIsNormalizedIsZero1681L$id8970X@Y?ZIsNormalizedIsZero1682L$id8971X@Y?ZIsNormalizedIsZero1683L$id8972XYv?Z`/MIsNormalizedIsZero1684L$id8973XYv?Z`/MIsNormalizedIsZero1685L$id8974XYx?Z`/MIsNormalizedIsZero1686L$id8975X?YZq?IsNormalizedIsZero1687L$id8976X{+R?Y ]?Z?IsNormalizedIsZero1688L$id8977X{+R?Y ]?Z?IsNormalizedIsZero1689L$id8978X{+R?Y ]?Z?IsNormalizedIsZero1690L$id8979XOY`?ZII?IsNormalizedIsZero1691L$id8980XOY`?ZH?IsNormalizedIsZero1692L$id8981XOY`?ZH?IsNormalizedIsZero1693L$id8982XOY`?ZII?IsNormalizedIsZero1694L$id8983XOY`?ZH?IsNormalizedIsZero1695L$id8984XOY`?ZH?IsNormalizedIsZero1696L$id8985XOY`?ZWH?IsNormalizedIsZero1697L$id8986XOY`?ZWH?IsNormalizedIsZero1698L$id8987XOY`?ZH?IsNormalizedIsZero1699L$id8988XOY`?ZH?IsNormalizedIsZero1700L$id8989XY?ZIsNormalizedIsZero1701L$id8990XY?ZIsNormalizedIsZero1702L$id8991XOY`?ZH?IsNormalizedIsZero1703L$id8992XOY`?ZH?IsNormalizedIsZero1704L$id8993X@OY@?Z"I?IsNormalizedIsZero1705L$id8994X@OY@?Z"I?IsNormalizedIsZero1706L$id8995XY?ZIsNormalizedIsZero1707L$id8996XY?ZIsNormalizedIsZero1708L$id8997XY?ZIsNormalizedIsZero1709L$id8998XY?ZIsNormalizedIsZero1710L$id8999XY?ZIsNormalizedIsZero1711L$id9000XY?ZIsNormalizedIsZero1712L$id9001XY?ZIsNormalizedIsZero1713L$id9002XY?ZIsNormalizedIsZero1714L$id9003XY?ZIsNormalizedIsZero1715L$id9004XY?ZIsNormalizedIsZero1716L$id9005X`.տY!?ZIsNormalizedIsZero1717L$id9006X`.տY!?ZIsNormalizedIsZero1718L$id9007X`.տY!?ZIsNormalizedIsZero1719L$id9008X տYv"?Z?h?IsNormalizedIsZero1720L$id9009X տYt"?Z?h?IsNormalizedIsZero1721L$id9010X տYv"?Z?h?IsNormalizedIsZero1722L$id9011X ?Y#?Zd?IsNormalizedIsZero1723L$id9012X ?Y#?Zd?IsNormalizedIsZero1724L$id9013X ?Y#?Zd?IsNormalizedIsZero1725L$id9014Xm9g?Y@)?Z ?IsNormalizedIsZero1726L$id9015Xm9g?Y@)?Z ?IsNormalizedIsZero1727L$id9016Xm9g?Y@)?Z ?IsNormalizedIsZero1728L$id9017X 嵒?Y?Z?IsNormalizedIsZero1729L$id9018X 嵒?Y?Z?IsNormalizedIsZero1730L$id9019X 嵒?Y?Z?IsNormalizedIsZero1731L$id9020XՀ?YQ?Z`!H?IsNormalizedIsZero1732L$id9021XՀ?YQ?Z`!H?IsNormalizedIsZero1733L$id9022XՀ?YQ?Z`!H?IsNormalizedIsZero1734L$id9023X@ϿZ@GIsNormalizedIsZero1762L$id9051X`?Y`>ϿZ@GIsNormalizedIsZero1763L$id9052X`?Y`>ϿZ@GIsNormalizedIsZero1764L$id9053X|Y`?Z`mIsNormalizedIsZero1765L$id9054X|Y`?Z`mIsNormalizedIsZero1766L$id9055X|Y`?Z`mIsNormalizedIsZero1767L$id9056XޯY _?Z }IsNormalizedIsZero1768L$id9057XޯY _?Z }IsNormalizedIsZero1769L$id9058XޯY _?Z }IsNormalizedIsZero1770L$id9059XpYYf?Z=IsNormalizedIsZero1771L$id9060XpYYf?Z=IsNormalizedIsZero1772L$id9061XpYYf?Z=IsNormalizedIsZero1773L$id9062X Y?ZsfIsNormalizedIsZero1774L$id9063X Y?ZsfIsNormalizedIsZero1775L$id9064X Y?ZsfIsNormalizedIsZero1776L$id9065X YY-?Z$IsNormalizedIsZero1777L$id9066X YY-?Z$IsNormalizedIsZero1778L$id9067X YY-?Z$IsNormalizedIsZero1779L$id9068XcY?Z2IsNormalizedIsZero1780L$id9069XcY?Z2IsNormalizedIsZero1781L$id9070XcY?Z2IsNormalizedIsZero1782L$id9071XLY "?Z,IsNormalizedIsZero1783L$id9072XLY "?Z,IsNormalizedIsZero1784L$id9073XLY "?Z,IsNormalizedIsZero1785L$id9074X ٰY@p?Z6IsNormalizedIsZero1786L$id9075X ٰY@p?Z6IsNormalizedIsZero1787L$id9076X ٰY@p?Z6IsNormalizedIsZero1788L$id9077X@CTY֤?Z6IsNormalizedIsZero1789L$id9078X@CTY֤?Z6IsNormalizedIsZero1790L$id9079X@CTY֤?Z6IsNormalizedIsZero1791L$id9080XͱY%?Z`YIsNormalizedIsZero1792L$id9081XͱY%?Z`YIsNormalizedIsZero1793L$id9082XͱY%?Z`YIsNormalizedIsZero1794L$id9083XxxY?Zy!IsNormalizedIsZero1795L$id9084XxxY?Zy!IsNormalizedIsZero1796L$id9085XxxY?Zy!IsNormalizedIsZero1797L$id9086X eoY?ZIsNormalizedIsZero1798L$id9087X eoY?ZIsNormalizedIsZero1799L$id9088X eoY?ZIsNormalizedIsZero1800L$id9089X`?Y`j?Z`j?IsNormalizedIsZero1801L$id9090X`?Y`j?Z`j?IsNormalizedIsZero1802L$id9091X`?Y`j?Z`j?IsNormalizedIsZero1803L$id9092X`?Y`j?Z`j?IsNormalizedIsZero1804L$id9093X?Y`j?Z`j?IsNormalizedIsZero1805L$id9094X?Y`j?Z`j?IsNormalizedIsZero1806L$id9095X?Y`j?Z`j?IsNormalizedIsZero1807L$id9096X?Y`j?Z`j?IsNormalizedIsZero1808L$id9097X?Y`j?Z`j?IsNormalizedIsZero1809L$id9098X?Y`j?Z`j?IsNormalizedIsZero1810L$id9099X`?Y`j?Z`j?IsNormalizedIsZero1811L$id9100X`?Y`j?Z`j?IsNormalizedIsZero1812L$id9101X`?Y`j?Z`j?IsNormalizedIsZero1813L$id9102X`?Y`j?Z`j?IsNormalizedIsZero1814L$id9103X`?Y`j?Z`j?IsNormalizedIsZero1815L$id9104X`?Y`j?Z`j?IsNormalizedIsZero1816L$id9105X`?Y`j?Z`j?IsNormalizedIsZero1817L$id9106X`?Y`j?Z`j?IsNormalizedIsZero1818L$id9107X 㥿Y@7?ZIsNormalizedIsZero1819L$id9108X 㥿Y@7?ZIsNormalizedIsZero1820L$id9109X 㥿Y@7?ZIsNormalizedIsZero1821L$id9110XY@((?Z`IsNormalizedIsZero1822L$id9111XY@((?Z`IsNormalizedIsZero1823L$id9112XY@((?Z`IsNormalizedIsZero1824L$id9113X`dY"(?Z IsNormalizedIsZero1825L$id9114X`dY"(?Z IsNormalizedIsZero1826L$id9115X`dY"(?Z IsNormalizedIsZero1827L$id9116X"Y?Z"IsNormalizedIsZero1828L$id9117X"Y?Z"IsNormalizedIsZero1829L$id9118X"Y?Z"IsNormalizedIsZero1830L$id9119XCY@?Z@IsNormalizedIsZero1831L$id9120XCY@?Z` IsNormalizedIsZero1832L$id9121XCY@?Z` IsNormalizedIsZero1833L$id9122X@/Y?Z<IsNormalizedIsZero1834L$id9123X@/Y?Z<IsNormalizedIsZero1835L$id9124X@/Y?Z<IsNormalizedIsZero1836L$id9125X@3Y?Z:IsNormalizedIsZero1837L$id9126X@3Y?Z:IsNormalizedIsZero1838L$id9127X@3Y?Z:IsNormalizedIsZero1839L$id9128XFY ?ZJIsNormalizedIsZero1840L$id9129XFY ?ZJIsNormalizedIsZero1841L$id9130XFY ?ZJIsNormalizedIsZero1842L$id9131X@KY?ZHIsNormalizedIsZero1843L$id9132X@KY?ZHIsNormalizedIsZero1844L$id9133X@KY?ZHIsNormalizedIsZero1845L$id9134XF^Y?Z IsNormalizedIsZero1846L$id9135X$^Y?Z IsNormalizedIsZero1847L$id9136XF^Y?Z IsNormalizedIsZero1848L$id9137XY 0?ZIsNormalizedIsZero1849L$id9138XY 0?ZIsNormalizedIsZero1850L$id9139XY 0?ZIsNormalizedIsZero1851L$id9140X`Y0Y 4?ZX`IsNormalizedIsZero1852L$id9141X`Y0Y 4?ZX`IsNormalizedIsZero1853L$id9142X`Y0Y 4?ZX`IsNormalizedIsZero1854L$id9143X@q{?Y@ٿ?ZH?IsNormalizedIsZero1855L$id9144X@q{?Y@ٿ?ZH?IsNormalizedIsZero1856L$id9145X@q{?Y@ٿ?ZH?IsNormalizedIsZero1857L$id9146XY?Z?IsNormalizedIsZero1858L$id9147XY?Z?IsNormalizedIsZero1859L$id9148XY?Z?IsNormalizedIsZero1860L$id9149XYĿZIsNormalizedIsZero1861L$id9150XYĿZIsNormalizedIsZero1862L$id9151XY?ZIsNormalizedIsZero1863L$id9152X`Y`ĿZIsNormalizedIsZero1864L$id9153X䜴?YZwԘ?IsNormalizedIsZero1865L$id9154X`@?YdZ?IsNormalizedIsZero1866L$id9155XƵ?YOZư>IsNormalizedIsZero1867L$id9156X2?Y`ZIsNormalizedIsZero1868L$id9157Xi?YQZIsNormalizedIsZero1869L$id9158X@5?YZIsNormalizedIsZero1870L$id9159Xw?Y@ZIsNormalizedIsZero1871L$id9160X`0?Y`JZIsNormalizedIsZero1872L$id9161X ͭ@?Y )Z` ͿIsNormalizedIsZero1873L$id9162XA?YZ` IsNormalizedIsZero1874L$id9163X@YZ@??IsNormalizedIsZero1875L$id9164X0Y=ZIsNormalizedIsZero1876L$id9165X`&5ĿYZ-?IsNormalizedIsZero1877L$id9166XbYZտIsNormalizedIsZero1878L$id9167XȿY` Z?IsNormalizedIsZero1879L$id9168X*ǿY`xZIsNormalizedIsZero1880L$id9169X 0ſY`49Z/.?IsNormalizedIsZero1881L$id9170XؿY@Ww?Z@ }?IsNormalizedIsZero1882L$id9171XπտY #?ZIIsNormalizedIsZero1883L$id9172X`ҿY ?Z"MIsNormalizedIsZero1884L$id9173XiqѿY?Z`IsNormalizedIsZero1885L$id9174X`cпY?Z?IsNormalizedIsZero1886L$id9175XͿY`?Z?IsNormalizedIsZero1887L$id9176X?Y`?Zs?IsNormalizedIsZero1888L$id9177X ?Y?ZH"?IsNormalizedIsZero1889L$id9178X ۤ?YL?Za(?IsNormalizedIsZero1890L$id9179X'?Y0S?Z#6IsNormalizedIsZero1891L$id9180X{?Y`WZ?Z`+A?IsNormalizedIsZero1892L$id9181X ?Y@(o?Z`qVIsNormalizedIsZero1893L$id9182XsY-!OZ@*?IsNormalizedIsZero1894L$id9183X Y4DEZ,?IsNormalizedIsZero1895L$id9184XY EZ`8,?IsNormalizedIsZero1896L$id9185X`*YHOZQ*?IsNormalizedIsZero1897L$id9186X`Y)WZ`?IsNormalizedIsZero1898L$id9187XY TZ?IsNormalizedIsZero1899L$id9188X`YTZ+?IsNormalizedIsZero1900L$id9189XY`TWZ?IsNormalizedIsZero1901L$id9190X/Y@\ZT?IsNormalizedIsZero1902L$id9191X'YimZZ?IsNormalizedIsZero1903L$id9192X 'YZZ ?IsNormalizedIsZero1904L$id9193X@.Y)]ZT?IsNormalizedIsZero1905L$id9194X \YaZw?IsNormalizedIsZero1906L$id9195XGY _Z ?IsNormalizedIsZero1907L$id9196X`GY`_Z?IsNormalizedIsZero1908L$id9197X[Y1aZ?IsNormalizedIsZero1909L$id9198X`޿Y]dZqC?IsNormalizedIsZero1910L$id9199X `߿Y`bbZ?IsNormalizedIsZero1911L$id9200X`߿Y`wbZ?IsNormalizedIsZero1912L$id9201X\޿YdZC?IsNormalizedIsZero1913L$id9202XvտY?hZ%?IsNormalizedIsZero1914L$id9203X`ٿYeNgZH?IsNormalizedIsZero1915L$id9204X@FٿYogZH?IsNormalizedIsZero1916L$id9205X vտYChZ%?IsNormalizedIsZero1917L$id9206X ϿYhZ1?IsNormalizedIsZero1918L$id9207XʣҿYhZќ?IsNormalizedIsZero1919L$id9208XףҿYhZϜ?IsNormalizedIsZero1920L$id9209X6ϿYphZ/?IsNormalizedIsZero1921L$id9210X`ʼYkZ ?IsNormalizedIsZero1922L$id9211X9ǿY iZ`Lz?IsNormalizedIsZero1923L$id9212X@ǿY0iZPz?IsNormalizedIsZero1924L$id9213X*ǼYkZ?IsNormalizedIsZero1925L$id9214X gY oZ`?IsNormalizedIsZero1926L$id9215X`OtY@0nZ``?IsNormalizedIsZero1927L$id9216X@׬YhnZ?IsNormalizedIsZero1928L$id9217X YoZ`?IsNormalizedIsZero1929L$id9218X ?Y wqZ@[?IsNormalizedIsZero1930L$id9219XB?Y`qZy?IsNormalizedIsZero1931L$id9220X z?YwqZI?IsNormalizedIsZero1932L$id9221X@?YrqZ@[?IsNormalizedIsZero1933L$id9222X@ɹ?YqZ@?IsNormalizedIsZero1934L$id9223XE?YrZA?IsNormalizedIsZero1935L$id9224Xp?YrZ@?IsNormalizedIsZero1936L$id9225Xƹ?Y7qZM?IsNormalizedIsZero1937L$id9226X,?YGqZ ?IsNormalizedIsZero1938L$id9227X /k?YJnZ4?IsNormalizedIsZero1939L$id9228X~?Y nZ?IsNormalizedIsZero1940L$id9229Xa0?YDrZ?IsNormalizedIsZero1941L$id9230X ?Y2pZ@^?IsNormalizedIsZero1942L$id9231X`i?YsZ ?IsNormalizedIsZero1943L$id9232X@b?Y@طsZ?IsNormalizedIsZero1944L$id9233X@U?YyoZj?IsNormalizedIsZero1945L$id9234X`^+Y@_Z ?IsNormalizedIsZero1946L$id9235X?YdZ:?IsNormalizedIsZero1947L$id9236XL~?Y`HdZ?IsNormalizedIsZero1948L$id9237X`)Y[_Z@?IsNormalizedIsZero1949L$id9238XtvYbZ c?IsNormalizedIsZero1950L$id9239X@~Y@aZL?IsNormalizedIsZero1951L$id9240X`M׻Y'nZ [?IsNormalizedIsZero1952L$id9241X`㻿Y!oZ-?IsNormalizedIsZero1953L$id9242XQY H3vZ ?IsNormalizedIsZero1954L$id9243XоYuZ@R?IsNormalizedIsZero1955L$id9244X@?YuZ V?IsNormalizedIsZero1956L$id9245XYuZ@Z?IsNormalizedIsZero1957L$id9246X?¿Y@fuZ@4?IsNormalizedIsZero1958L$id9247XU.¿Y`|uZӬ?IsNormalizedIsZero1959L$id9248X J{ÿY` %sZ y?IsNormalizedIsZero1960L$id9249X yÿYrZ ?IsNormalizedIsZero1961L$id9250XĿYpZ?IsNormalizedIsZero1962L$id9251X`+ĿYVpZ?IsNormalizedIsZero1963L$id9252XſY}:nZ ?IsNormalizedIsZero1964L$id9253XXſY@mZ'?IsNormalizedIsZero1965L$id9254XSȿY@8kZj?IsNormalizedIsZero1966L$id9255X )ȿYgkZl?IsNormalizedIsZero1967L$id9256X@NʿY˶sZQ?IsNormalizedIsZero1968L$id9257X@QʿY>tZP?IsNormalizedIsZero1969L$id9258X ̿Y`~Z@8?IsNormalizedIsZero1970L$id9259X˿Y` |Z;?IsNormalizedIsZero1971L$id9260X ͿYZ@g'?IsNormalizedIsZero1972L$id9261X+ͿYZ` %?IsNormalizedIsZero1973L$id9262XYZ 7?IsNormalizedIsZero1974L$id9263X YZZ96?IsNormalizedIsZero1975L$id9264XY@Z@_%?IsNormalizedIsZero1976L$id9265XjYZ?IsNormalizedIsZero1977L$id9266X O?YZ ?IsNormalizedIsZero1978L$id9267X\?YpZ?IsNormalizedIsZero1979L$id9268X Y@4Z?IsNormalizedIsZero1980L$id9269XY2Z@c?IsNormalizedIsZero1981L$id9270X`ߣ?Y`ZJ?IsNormalizedIsZero1982L$id9271X`,?Y@eZ@0?IsNormalizedIsZero1983L$id9272Xu?Y kZ@?IsNormalizedIsZero1984L$id9273X&YZ9?IsNormalizedIsZero1985L$id9274XѬ?Y.Z@?IsNormalizedIsZero1986L$id9275X@?Y@Z wJ?IsNormalizedIsZero1987L$id9276X>9?YcZޘ?IsNormalizedIsZero1988L$id9277X`)v?Y` Z?IsNormalizedIsZero1989L$id9278X`?YZ Ҩ?IsNormalizedIsZero1990L$id9279XԢ?YNZ`?IsNormalizedIsZero1991L$id9280X)s?YxZ`d?IsNormalizedIsZero1992L$id9281X?Y Z`z’?IsNormalizedIsZero1993L$id9282X?YZ@+?IsNormalizedIsZero1994L$id9283X@7?YZy?IsNormalizedIsZero1995L$id9284X j?YZ eZ?IsNormalizedIsZero1996L$id9285X ã?Y@Zp|?IsNormalizedIsZero1997L$id9286XY L|Z }?IsNormalizedIsZero1998L$id9287XWWYۂZ@Ww?IsNormalizedIsZero1999L$id9288XíY`vZ`!?IsNormalizedIsZero2000L$id9289X`ۣYPOZ?IsNormalizedIsZero2001L$id9290X@HݞY@:Z@~?IsNormalizedIsZero2002L$id9291XaYlZ?IsNormalizedIsZero2003L$id9292X5醿YZ`n0?IsNormalizedIsZero2004L$id9293X`ڒ?Y`ZJ?IsNormalizedIsZero2005L$id9294Xx?Y`ZI?IsNormalizedIsZero2006L$id9295X {x?Y.Z@aP?IsNormalizedIsZero2007L$id9296X>?YtZ?IsNormalizedIsZero2008L$id9297X?Y Z@w?IsNormalizedIsZero2009L$id9298X ?YZ$zi?IsNormalizedIsZero2010L$id9299X@eQ?YZ@?IsNormalizedIsZero2011L$id9300X`>?YZ,h?IsNormalizedIsZero2012L$id9301Xlt?Y~Z@?IsNormalizedIsZero2013L$id9302X@w?Y`bZư>IsNormalizedIsZero2014L$id9303X?Y`yZ Y?IsNormalizedIsZero2015L$id9304X@w?Y`bZ>IsNormalizedIsZero2016L$id9305X ?YdZY?IsNormalizedIsZero2017L$id9306Xž?Y VZư>IsNormalizedIsZero2018L$id9307X@w?Y`bZư>IsNormalizedIsZero2019L$id9308X+Y (Z`?IsNormalizedIsZero2020L$id9309X@طY Z`?IsNormalizedIsZero2021L$id9310XR륿Y`5Z\S?IsNormalizedIsZero2022L$id9311XڦY@Z/K?IsNormalizedIsZero2023L$id9312XԖY`Z@܀?IsNormalizedIsZero2024L$id9313X@ϻY>9Z?IsNormalizedIsZero2025L$id9314X`.7h?Y Z@s?IsNormalizedIsZero2026L$id9315X BYlZ5?IsNormalizedIsZero2027L$id9316X?YZc ?IsNormalizedIsZero2028L$id9317XC?Y!Z|?IsNormalizedIsZero2029L$id9318X '?Y*Z?IsNormalizedIsZero2030L$id9319Xp̢?Y`Z?IsNormalizedIsZero2031L$id9320X@?Y4Z3?IsNormalizedIsZero2032L$id9321X&?YZ`weW?IsNormalizedIsZero2033L$id9322X?Y`ZZZ?IsNormalizedIsZero2034L$id9323X ?YnZ?IsNormalizedIsZero2035L$id9324X-?YZG?IsNormalizedIsZero2036L$id9325X2?Y`ZIsNormalizedIsZero2037L$id9326XƵ?YOZIsNormalizedIsZero2038L$id9327X`õ?Y@VZJ?IsNormalizedIsZero2039L$id9328XƵ?YOZIsNormalizedIsZero2040L$id9329X2?Y`ZIsNormalizedIsZero2041L$id9330X2?Y`ZIsNormalizedIsZero2042L$id9331XƵ?YOZư>IsNormalizedIsZero2043L$id9332XLY}Z '?IsNormalizedIsZero2044L$id9333XYsZ`?IsNormalizedIsZero2045L$id9334X"Y69Z?IsNormalizedIsZero2046L$id9335X;ޔYCZD?IsNormalizedIsZero2047L$id9336X`5qY@Z@?IsNormalizedIsZero2048L$id9337Xv5?YhZ`8?IsNormalizedIsZero2049L$id9338Xʧ?Y`Z`zm?IsNormalizedIsZero2050L$id9339X?Y`Z`?IsNormalizedIsZero2051L$id9340X w?YZ@5?IsNormalizedIsZero2052L$id9341Xn?YZ?IsNormalizedIsZero2053L$id9342X L?YoZb?IsNormalizedIsZero2054L$id9343X?YZ `?IsNormalizedIsZero2055L$id9344XU?Y Z`?IsNormalizedIsZero2056L$id9345X2?Y Z%^?IsNormalizedIsZero2057L$id9346X@]?Y@KZ`.7h?IsNormalizedIsZero2058L$id9347X@.?YKZxD?IsNormalizedIsZero2059L$id9348X2?Y@Z>M?IsNormalizedIsZero2060L$id9349X@5?YZIsNormalizedIsZero2061L$id9350Xi?YQZIsNormalizedIsZero2062L$id9351X@?YUZ W?IsNormalizedIsZero2063L$id9352Xi?YQZIsNormalizedIsZero2064L$id9353X@5?YZIsNormalizedIsZero2065L$id9354X@5?YZIsNormalizedIsZero2066L$id9355Xi?YQZIsNormalizedIsZero2067L$id9356X"RY@eZ4Z?IsNormalizedIsZero2095L$id9384X`.Y`Z`?IsNormalizedIsZero2096L$id9385X`#IpY#ZKr?IsNormalizedIsZero2097L$id9386X@3Y1Z`?IsNormalizedIsZero2098L$id9387X:Y@^Z/?IsNormalizedIsZero2099L$id9388X@ˁnY%Zh?IsNormalizedIsZero2100L$id9389X RY@#Z v?IsNormalizedIsZero2101L$id9390X ~YhZQ*?IsNormalizedIsZero2102L$id9391XY`NZ?IsNormalizedIsZero2103L$id9392X@?Y`]@Z r?IsNormalizedIsZero2104L$id9393XS?YZf?IsNormalizedIsZero2105L$id9394X.8?YZTc?IsNormalizedIsZero2106L$id9395XYUZ?IsNormalizedIsZero2107L$id9396X.?YZ.W?IsNormalizedIsZero2108L$id9397XL?Y@ZIsNormalizedIsZero2109L$id9398X>#A?YZIsNormalizedIsZero2110L$id9399XK6>?YZ`S?IsNormalizedIsZero2111L$id9400X>#A?YZIsNormalizedIsZero2112L$id9401XL?Y@ZIsNormalizedIsZero2113L$id9402XL?Y@ZIsNormalizedIsZero2114L$id9403X>#A?YZIsNormalizedIsZero2115L$id9404XECY3Z ?IsNormalizedIsZero2116L$id9405XJwY@yXZ?IsNormalizedIsZero2117L$id9406X?YmZ?IsNormalizedIsZero2118L$id9407X ƷY@dXZ?IsNormalizedIsZero2119L$id9408XYZ;?IsNormalizedIsZero2120L$id9409XQIY`1Z?IsNormalizedIsZero2121L$id9410XY@9Z`?IsNormalizedIsZero2122L$id9411X .UY@-Z?IsNormalizedIsZero2123L$id9412X68YkZ?IsNormalizedIsZero2124L$id9413X`gYkZ?IsNormalizedIsZero2125L$id9414X@Y ZQ?IsNormalizedIsZero2126L$id9415X ]޴Y@ŪZ`j?IsNormalizedIsZero2127L$id9416XɧYlYZ?IsNormalizedIsZero2128L$id9417Xx>Y 1Z@~`?IsNormalizedIsZero2129L$id9418XRYZ@_?IsNormalizedIsZero2130L$id9419XdUY!TZ?IsNormalizedIsZero2131L$id9420X@.8Y9Z68Q?IsNormalizedIsZero2132L$id9421X0Y=ZIsNormalizedIsZero2133L$id9422X rOY@ZIsNormalizedIsZero2134L$id9423XPYZȯO?IsNormalizedIsZero2135L$id9424X rOY@ZIsNormalizedIsZero2136L$id9425X0Y=ZIsNormalizedIsZero2137L$id9426X0Y=ZIsNormalizedIsZero2138L$id9427X rOY@ZIsNormalizedIsZero2139L$id9428X ̘Y@6;Z py?IsNormalizedIsZero2140L$id9429XY.Z?IsNormalizedIsZero2141L$id9430X`hʺY@*~Z ?IsNormalizedIsZero2142L$id9431X)Y`5Z@r?IsNormalizedIsZero2143L$id9432XyYdhZvN?IsNormalizedIsZero2144L$id9433X@Y` zZ`(|?IsNormalizedIsZero2145L$id9434X@CYQwZik?IsNormalizedIsZero2146L$id9435X˻Y # Zx?IsNormalizedIsZero2147L$id9436X@TY5Za/?IsNormalizedIsZero2148L$id9437XaÿY  Z`Z?IsNormalizedIsZero2149L$id9438X(Y JmZ?IsNormalizedIsZero2150L$id9439Xs Y 4Zr?IsNormalizedIsZero2151L$id9440X{eY ZO?IsNormalizedIsZero2152L$id9441XĿY Z@?P?IsNormalizedIsZero2153L$id9442X(ĿYZ@x{`?IsNormalizedIsZero2154L$id9443XdY Zl^?IsNormalizedIsZero2155L$id9444XUfYZIsNormalizedIsZero2156L$id9445X =ĿY@ZIsNormalizedIsZero2157L$id9446X =ĿY@ZIsNormalizedIsZero2158L$id9447XUfYZIsNormalizedIsZero2159L$id9448XUfYZIsNormalizedIsZero2160L$id9449X =ĿY@ZIsNormalizedIsZero2161L$id9450XY@8Z?IsNormalizedIsZero2162L$id9451XJYqnZr?IsNormalizedIsZero2163L$id9452XFиYՑZD?IsNormalizedIsZero2164L$id9453XYYZ P?IsNormalizedIsZero2165L$id9454X@ ÿYZm?IsNormalizedIsZero2166L$id9455XbſYAZM?IsNormalizedIsZero2167L$id9456XsſY|Z ?IsNormalizedIsZero2168L$id9457X@uÿYZ 6?IsNormalizedIsZero2169L$id9458XwſY@Z=@?IsNormalizedIsZero2170L$id9459X@ȿY߿ZY?IsNormalizedIsZero2171L$id9460XEſYZ ?T?IsNormalizedIsZero2172L$id9461X`¿Y!)ZJ?IsNormalizedIsZero2173L$id9462X`o)ǿY xZR?IsNormalizedIsZero2174L$id9463XɿY hZZLnT?IsNormalizedIsZero2175L$id9464XɿY@ZZNd?IsNormalizedIsZero2176L$id9465X'ǿYxZb?IsNormalizedIsZero2177L$id9466X*ǿY`xZIsNormalizedIsZero2178L$id9467X{ɿY`WZZIsNormalizedIsZero2179L$id9468X{ɿY`WZZIsNormalizedIsZero2180L$id9469X*ǿY`xZIsNormalizedIsZero2181L$id9470X*ǿY`xZIsNormalizedIsZero2182L$id9471X{ɿY`WZZIsNormalizedIsZero2183L$id9472X`Y`,Z ?IsNormalizedIsZero2184L$id9473X`QJYZ`h?IsNormalizedIsZero2185L$id9474X YZ!?IsNormalizedIsZero2186L$id9475XSY@V)Z,?IsNormalizedIsZero2187L$id9476X`ÿY@#ZĮ?IsNormalizedIsZero2188L$id9477XzY6Zޭ?IsNormalizedIsZero2189L$id9478X9YZ?IsNormalizedIsZero2190L$id9479X¿Y` {Z?IsNormalizedIsZero2191L$id9480XƿY`#ZF?IsNormalizedIsZero2192L$id9481X ĿY3Zmn?IsNormalizedIsZero2193L$id9482XY`Zz?IsNormalizedIsZero2194L$id9483XÿYZ(@?IsNormalizedIsZero2195L$id9484XǿY#pZ`V?IsNormalizedIsZero2196L$id9485X&ƿYbZ&Z?IsNormalizedIsZero2197L$id9486Xc#ƿY`Zi?IsNormalizedIsZero2198L$id9487X ǿY`CpZ|f?IsNormalizedIsZero2199L$id9488X mǿY pZIsNormalizedIsZero2200L$id9489X0)ƿYJZIsNormalizedIsZero2201L$id9490X0)ƿYJZIsNormalizedIsZero2202L$id9491X mǿY pZIsNormalizedIsZero2203L$id9492X mǿY pZIsNormalizedIsZero2204L$id9493X0)ƿYJZIsNormalizedIsZero2205L$id9494X_Y}ZϹ?IsNormalizedIsZero2206L$id9495X /Y`;Z`=?IsNormalizedIsZero2207L$id9496X3YpZ`t?IsNormalizedIsZero2208L$id9497X@#Y Z?IsNormalizedIsZero2209L$id9498X Y@z_Zb?IsNormalizedIsZero2210L$id9499XCY FZV?IsNormalizedIsZero2211L$id9500XtY_Z@I?IsNormalizedIsZero2212L$id9501XǻY/hZ`n?IsNormalizedIsZero2213L$id9502X Y xZ?IsNormalizedIsZero2214L$id9503X7Y Z+?IsNormalizedIsZero2215L$id9504X츿Ys(Z`?IsNormalizedIsZero2216L$id9505X<Y XZ?IsNormalizedIsZero2217L$id9506XrÿYZ ]?IsNormalizedIsZero2218L$id9507X^Y@Z-u`?IsNormalizedIsZero2219L$id9508XbYྐྵZMbp?IsNormalizedIsZero2220L$id9509XoÿY Z@¾m?IsNormalizedIsZero2221L$id9510XhtÿY@ӠZIsNormalizedIsZero2222L$id9511XMYZIsNormalizedIsZero2223L$id9512XMYZIsNormalizedIsZero2224L$id9513XhtÿY@ӠZIsNormalizedIsZero2225L$id9514XhtÿY@ӠZIsNormalizedIsZero2226L$id9515XMYZIsNormalizedIsZero2227L$id9516X Y`vZ?IsNormalizedIsZero2228L$id9517X` Y`Z@>!?IsNormalizedIsZero2229L$id9518X`aYZ?IsNormalizedIsZero2230L$id9519X#Y@iZ?IsNormalizedIsZero2231L$id9520XYʆZ?IsNormalizedIsZero2232L$id9521XYZ`Y?IsNormalizedIsZero2233L$id9522XY@+[ZE?IsNormalizedIsZero2234L$id9523XYZ@T?IsNormalizedIsZero2235L$id9524X®YZ`?IsNormalizedIsZero2236L$id9525XճY%Z ?IsNormalizedIsZero2237L$id9526XFY}Zा?IsNormalizedIsZero2238L$id9527X@Y Z(?IsNormalizedIsZero2239L$id9528X-Y@ Z@?IsNormalizedIsZero2240L$id9529X&lYZ{?IsNormalizedIsZero2241L$id9530X@YZr?IsNormalizedIsZero2242L$id9531X Y@Zq?IsNormalizedIsZero2243L$id9532X yYZa?IsNormalizedIsZero2244L$id9533X YZa?IsNormalizedIsZero2245L$id9534X Y ZIsNormalizedIsZero2246L$id9535X@Y@ZIsNormalizedIsZero2247L$id9536X@Y@ZIsNormalizedIsZero2248L$id9537X Y ZIsNormalizedIsZero2249L$id9538X Y ZIsNormalizedIsZero2250L$id9539X@Y@ZIsNormalizedIsZero2251L$id9540XkY %Z@?IsNormalizedIsZero2252L$id9541XNaY%Z?IsNormalizedIsZero2253L$id9542X`XY\Zf?IsNormalizedIsZero2254L$id9543XKY?_ZGa?IsNormalizedIsZero2255L$id9544X@4Y\TZ?IsNormalizedIsZero2256L$id9545XY`QZ@n?IsNormalizedIsZero2257L$id9546X@Y@RZRz?IsNormalizedIsZero2258L$id9547XiY`Z?IsNormalizedIsZero2259L$id9548XFY wZ@?IsNormalizedIsZero2260L$id9549X`Y!Z]?IsNormalizedIsZero2261L$id9550X`Y`WZ?IsNormalizedIsZero2262L$id9551XOqY4Z?IsNormalizedIsZero2263L$id9552XiPY@Z?IsNormalizedIsZero2264L$id9553X`YZ@Gq?IsNormalizedIsZero2265L$id9554XL0Y`Z m?IsNormalizedIsZero2266L$id9555X PRY)Z?IsNormalizedIsZero2267L$id9556XYZo'a?IsNormalizedIsZero2268L$id9557X@Y ZIsNormalizedIsZero2269L$id9558XYZIsNormalizedIsZero2270L$id9559XݒYZ O]?IsNormalizedIsZero2271L$id9560XYZIsNormalizedIsZero2272L$id9561X@Y ZIsNormalizedIsZero2273L$id9562X@Y ZIsNormalizedIsZero2274L$id9563XYZIsNormalizedIsZero2275L$id9564X`>Y uZ?IsNormalizedIsZero2276L$id9565X@bY@Z?IsNormalizedIsZero2277L$id9566X@_Y`{Z`|?IsNormalizedIsZero2278L$id9567X@Y ۇZ@`?IsNormalizedIsZero2279L$id9568X\Y@'Z?IsNormalizedIsZero2280L$id9569X JY?Z *?IsNormalizedIsZero2281L$id9570X`YZ`J?IsNormalizedIsZero2282L$id9571X 5Y'Z ?IsNormalizedIsZero2283L$id9572X YYZ2o?IsNormalizedIsZero2284L$id9573XY#Z ?IsNormalizedIsZero2285L$id9574X -#Y-Ztx?IsNormalizedIsZero2286L$id9575XY8Z?IsNormalizedIsZero2287L$id9576XY@=Zk?IsNormalizedIsZero2288L$id9577X`GU3YZUh?IsNormalizedIsZero2289L$id9578XP4YZ`a?IsNormalizedIsZero2290L$id9579XћY`[Z`RC?IsNormalizedIsZero2291L$id9580XYZ@ X?IsNormalizedIsZero2292L$id9581XԾYZIsNormalizedIsZero2293L$id9582XYZIsNormalizedIsZero2294L$id9583X@ YZ`t@R?IsNormalizedIsZero2295L$id9584XԾYZIsNormalizedIsZero2296L$id9585XԾYZIsNormalizedIsZero2297L$id9586XYZIsNormalizedIsZero2298L$id9587XYZIsNormalizedIsZero2299L$id9588XÿYMZ`7?IsNormalizedIsZero2300L$id9589XYfGZ?IsNormalizedIsZero2301L$id9590X ÿYZ ?IsNormalizedIsZero2302L$id9591X4ÿY&Z`}?IsNormalizedIsZero2303L$id9592X`ǼYtZ@`?IsNormalizedIsZero2304L$id9593X`;YdpZv?IsNormalizedIsZero2305L$id9594X@KY Z,?IsNormalizedIsZero2306L$id9595XY@Z`N{?IsNormalizedIsZero2307L$id9596X۲YZ Q?IsNormalizedIsZero2308L$id9597X EYZL0?IsNormalizedIsZero2309L$id9598XIcYbZ "?IsNormalizedIsZero2310L$id9599X˳Y -Z p?IsNormalizedIsZero2311L$id9600X윿YC}Z|?IsNormalizedIsZero2312L$id9601X 1YZZ?IsNormalizedIsZero2313L$id9602X.YZ^R?IsNormalizedIsZero2314L$id9603X`YZ )?IsNormalizedIsZero2315L$id9604X YZ` PJ?IsNormalizedIsZero2316L$id9605XYZIsNormalizedIsZero2317L$id9606XYZIsNormalizedIsZero2318L$id9607X YZB?IsNormalizedIsZero2319L$id9608XYZIsNormalizedIsZero2320L$id9609XYZIsNormalizedIsZero2321L$id9610XYZIsNormalizedIsZero2322L$id9611XYZIsNormalizedIsZero2323L$id9612XƿY`Z ?IsNormalizedIsZero2324L$id9613X "ſYZC?IsNormalizedIsZero2325L$id9614X'ƿYQZ ?IsNormalizedIsZero2326L$id9615X@ǿYXZi?IsNormalizedIsZero2327L$id9616XY Z@?IsNormalizedIsZero2328L$id9617X燹Y SZj?IsNormalizedIsZero2329L$id9618X庿YZo?IsNormalizedIsZero2330L$id9619XYZ?IsNormalizedIsZero2331L$id9620XY Z@w?IsNormalizedIsZero2332L$id9621X䱿Y5Z`X?IsNormalizedIsZero2333L$id9622XᲿY Z`_?IsNormalizedIsZero2334L$id9623XֶY@{Z?IsNormalizedIsZero2335L$id9624X&Y`Z U?IsNormalizedIsZero2336L$id9625Xqh?YZ@QIsNormalizedIsZero2337L$id9626X@ z?YZ@ ސIsNormalizedIsZero2338L$id9627XK<YZద?IsNormalizedIsZero2339L$id9628Xݮw?Y`Z r9?IsNormalizedIsZero2340L$id9629Xw?Y`ZIsNormalizedIsZero2341L$id9630Xw?Y`ZIsNormalizedIsZero2342L$id9631X@z?YZIsNormalizedIsZero2343L$id9632Xw?Y`ZIsNormalizedIsZero2344L$id9633Xw?Y`ZIsNormalizedIsZero2345L$id9634Xw?Y`ZIsNormalizedIsZero2346L$id9635Xw?Y`ZIsNormalizedIsZero2347L$id9636X }!ƿYZ@;?IsNormalizedIsZero2348L$id9637X N'ſYZ`?IsNormalizedIsZero2349L$id9638XeÿYTCZ`>?IsNormalizedIsZero2350L$id9639XĿY@qGZ?IsNormalizedIsZero2351L$id9640XY@wZ`?IsNormalizedIsZero2352L$id9641XYZ`s?IsNormalizedIsZero2353L$id9642XbbY0Z?IsNormalizedIsZero2354L$id9643XLYZn?IsNormalizedIsZero2355L$id9644X*YZ(?IsNormalizedIsZero2356L$id9645XQY`\8ZJ?IsNormalizedIsZero2357L$id9646X``YcZ?IsNormalizedIsZero2358L$id9647XfճY6KZ ?IsNormalizedIsZero2359L$id9648X@yY ZXQ?IsNormalizedIsZero2360L$id9649Xp?Y Z ѐIsNormalizedIsZero2361L$id9650X 7?YZ`2UIsNormalizedIsZero2362L$id9651Xh垿YZ5?IsNormalizedIsZero2363L$id9652X_h?Y`Z`7]IsNormalizedIsZero2364L$id9653XYZIsNormalizedIsZero2365L$id9654XYZIsNormalizedIsZero2366L$id9655X7YMZ@IsNormalizedIsZero2367L$id9656XYZIsNormalizedIsZero2368L$id9657XYZIsNormalizedIsZero2369L$id9658XYZIsNormalizedIsZero2370L$id9659XYZIsNormalizedIsZero2371L$id9660XLĿYZ)#?IsNormalizedIsZero2372L$id9661XBÿY oZb?IsNormalizedIsZero2373L$id9662X¿Y`lZ2T?IsNormalizedIsZero2374L$id9663X ÿY`Z@v?IsNormalizedIsZero2375L$id9664XYgZ?IsNormalizedIsZero2376L$id9665XjeY+WZ'M?IsNormalizedIsZero2377L$id9666X}Y3vZQ?IsNormalizedIsZero2378L$id9667X`FY)Z#?IsNormalizedIsZero2379L$id9668XAYmZ5"?IsNormalizedIsZero2380L$id9669X~PY ށZ?IsNormalizedIsZero2381L$id9670Xj+Y@*Z`?IsNormalizedIsZero2382L$id9671XHY Z@?IsNormalizedIsZero2383L$id9672X`YZ%?IsNormalizedIsZero2384L$id9673X Ld?YZXIsNormalizedIsZero2385L$id9674X`:;I?YZ`4֎IsNormalizedIsZero2386L$id9675X W\YZ?IsNormalizedIsZero2387L$id9676X p?Y ZʠzIsNormalizedIsZero2388L$id9677Xv'YZ }IsNormalizedIsZero2389L$id9678X@?`?YZ[IsNormalizedIsZero2390L$id9679X@jp?YZIsNormalizedIsZero2391L$id9680XYZIsNormalizedIsZero2392L$id9681XYZIsNormalizedIsZero2393L$id9682XYZIsNormalizedIsZero2394L$id9683XYZIsNormalizedIsZero2395L$id9684X )ÿY]Z@ ?IsNormalizedIsZero2396L$id9685X¿Y`LZ`|?IsNormalizedIsZero2397L$id9686X@Y Z@?IsNormalizedIsZero2398L$id9687XL¿Y`Y"ZHh?IsNormalizedIsZero2399L$id9688X2YLZ?IsNormalizedIsZero2400L$id9689X "ിYZ`Ҧ?IsNormalizedIsZero2401L$id9690X@NY@ϟZ#?IsNormalizedIsZero2402L$id9691XYfZ[[?IsNormalizedIsZero2403L$id9692XYZS?IsNormalizedIsZero2404L$id9693X 7Y@Z@?IsNormalizedIsZero2405L$id9694X+Y Z`y?IsNormalizedIsZero2406L$id9695XY ѯZ2q?IsNormalizedIsZero2407L$id9696X`aYLZi?IsNormalizedIsZero2408L$id9697XvE?YbZIsNormalizedIsZero2409L$id9698XB?YZ)IsNormalizedIsZero2410L$id9699X Y6Z`E?IsNormalizedIsZero2411L$id9700X 5?Y ZhVIsNormalizedIsZero2412L$id9701X@;?YOZތIsNormalizedIsZero2413L$id9702XYZIsNormalizedIsZero2414L$id9703XYZIsNormalizedIsZero2415L$id9704XYZIsNormalizedIsZero2416L$id9705XYZIsNormalizedIsZero2417L$id9706XYZIsNormalizedIsZero2418L$id9707XYZIsNormalizedIsZero2419L$id9708X`ϞYNZ!?IsNormalizedIsZero2451L$id9740X@$ԿY~2?Z߽?IsNormalizedIsZero2452L$id9741XԿY``?Z ?IsNormalizedIsZero2453L$id9742Xz׿Y,m?Z`L?IsNormalizedIsZero2454L$id9743XH׿Yj?Z?IsNormalizedIsZero2455L$id9744XԿYP]?Z X?IsNormalizedIsZero2456L$id9745X/ؿY F?Zl?IsNormalizedIsZero2457L$id9746XlؿY?ZT?IsNormalizedIsZero2458L$id9747XտY?ZR$?IsNormalizedIsZero2459L$id9748X>տY@6?Z@e?IsNormalizedIsZero2460L$id9749X@ÛؿY?Z&?IsNormalizedIsZero2461L$id9750X ؿYg@?Zƽ?IsNormalizedIsZero2462L$id9751X gտY?ZG?IsNormalizedIsZero2463L$id9752X |տY?ZB?IsNormalizedIsZero2464L$id9753X@ ؿYs?Z?IsNormalizedIsZero2465L$id9754XοY#b?Zh?IsNormalizedIsZero2466L$id9755X@)ϿYO?Z7O?IsNormalizedIsZero2467L$id9756X `XпY ?ZՃ?IsNormalizedIsZero2468L$id9757X,пY?Z̧?IsNormalizedIsZero2469L$id9758X@<ϿYp?Z?IsNormalizedIsZero2470L$id9759XϿY?Z5?IsNormalizedIsZero2471L$id9760X`{пYu?Z?IsNormalizedIsZero2472L$id9761XRпY9?Z?IsNormalizedIsZero2473L$id9762X *8пYk?Z?IsNormalizedIsZero2474L$id9763X †пYº?Z?IsNormalizedIsZero2475L$id9764X9ѿY?ZIJ?IsNormalizedIsZero2476L$id9765X пYB?Z?IsNormalizedIsZero2477L$id9766XпY?Z@r?IsNormalizedIsZero2478L$id9767X` ѿY -?Z?IsNormalizedIsZero2479L$id9768XѿY'?Z`f?IsNormalizedIsZero2480L$id9769XHѿY2?Zd?IsNormalizedIsZero2481L$id9770X"ѿY!?Z@`?IsNormalizedIsZero2482L$id9771X}ѿY?Z?IsNormalizedIsZero2483L$id9772XѿY _?Z\?IsNormalizedIsZero2484L$id9773X@=ѿYw?Z`?IsNormalizedIsZero2485L$id9774X1[ѿY෯?Zy8?IsNormalizedIsZero2486L$id9775XѿY໢?ZJZ?IsNormalizedIsZero2487L$id9776XʿYA?Zx?IsNormalizedIsZero2488L$id9777Xy˿Y@E9?Z`?IsNormalizedIsZero2489L$id9778XSͿYA?Z`{?IsNormalizedIsZero2490L$id9779Xi̿Y{T?ZN?IsNormalizedIsZero2491L$id9780X̿Y?Z8?IsNormalizedIsZero2492L$id9781X̿Y?Zi8?IsNormalizedIsZero2493L$id9782X ԚοY!?Z@V ?IsNormalizedIsZero2494L$id9783X@aͿY@,?Z/?IsNormalizedIsZero2495L$id9784XcͿY@4e?Z?IsNormalizedIsZero2496L$id9785X*ͿY?Z@е?IsNormalizedIsZero2497L$id9786XϿY`b?Z`^?IsNormalizedIsZero2498L$id9787X"ϿY]?Z`?IsNormalizedIsZero2499L$id9788XBͿY?Z ?IsNormalizedIsZero2500L$id9789X]gͿY =?Z q?IsNormalizedIsZero2501L$id9790X`ϿY.?Z@?IsNormalizedIsZero2502L$id9791X`ϿY\7?Z\?IsNormalizedIsZero2503L$id9792XͿY @?Z`?IsNormalizedIsZero2504L$id9793X ͿY m?Z@?IsNormalizedIsZero2505L$id9794XпYm?Z?IsNormalizedIsZero2506L$id9795X@пY`J?Z 1?IsNormalizedIsZero2507L$id9796X TͿY?Z`?IsNormalizedIsZero2508L$id9797XϽпY@P?Zp?IsNormalizedIsZero2509L$id9798X`qƿY`߇?Z F?IsNormalizedIsZero2510L$id9799X oǿY`?Z"?IsNormalizedIsZero2511L$id9800X@AɿY " ?Z/?IsNormalizedIsZero2512L$id9801XȿYA?ZT ?IsNormalizedIsZero2513L$id9802X`dǿY?Z`b?IsNormalizedIsZero2514L$id9803X@qǿY ?Z?IsNormalizedIsZero2515L$id9804XʿY@?Z@^?IsNormalizedIsZero2516L$id9805XNʿY`]?Zl?IsNormalizedIsZero2517L$id9806X$ǿY?Zɋ?IsNormalizedIsZero2518L$id9807X FǿY$?Z?IsNormalizedIsZero2519L$id9808XʿYx?Z G?IsNormalizedIsZero2520L$id9809XʿY@#?Z&7?IsNormalizedIsZero2521L$id9810X`ǿY X?Z?IsNormalizedIsZero2522L$id9811X@A ǿY ?Z?IsNormalizedIsZero2523L$id9812X>˿Y?Z'?IsNormalizedIsZero2524L$id9813X`|ʿYݓ?Z|?IsNormalizedIsZero2525L$id9814XƿYq?Z`ک?IsNormalizedIsZero2526L$id9815X4ƿY@6?Zc\?IsNormalizedIsZero2527L$id9816XʿY`?ZC?IsNormalizedIsZero2528L$id9817XVʿYRj?Zw?IsNormalizedIsZero2529L$id9818XfƿY`d?Z`;?IsNormalizedIsZero2530L$id9819X|ɿY6?Z@ ?IsNormalizedIsZero2531L$id9820X@JY?Z?IsNormalizedIsZero2532L$id9821X "Y@,)?ZQ?IsNormalizedIsZero2533L$id9822XBĿYH?Z?IsNormalizedIsZero2534L$id9823XÿYd?Z ?IsNormalizedIsZero2535L$id9824X@ӾYr?Z ?IsNormalizedIsZero2536L$id9825X ̽Yr?Z ?IsNormalizedIsZero2537L$id9826Xh9ĿY?Z\?IsNormalizedIsZero2538L$id9827XBĿY@Xb?ZL?IsNormalizedIsZero2539L$id9828X`üY?ZT?IsNormalizedIsZero2540L$id9829XY |?ZT?IsNormalizedIsZero2541L$id9830XϜÿY?Z ?IsNormalizedIsZero2542L$id9831X6ÿY '?Z.?IsNormalizedIsZero2543L$id9832X zYH?Z8?IsNormalizedIsZero2544L$id9833XKY`D?Z Z?IsNormalizedIsZero2545L$id9834X]ÿY O?Z?IsNormalizedIsZero2546L$id9835XdÿY?Z@u?IsNormalizedIsZero2547L$id9836XNY`R|?Z1 ?IsNormalizedIsZero2548L$id9837X`8,Y@?Z.V?IsNormalizedIsZero2549L$id9838X@¿Y|k?Z`M?IsNormalizedIsZero2550L$id9839X¿YA4?Z?IsNormalizedIsZero2551L$id9840XҸYV?Z&?IsNormalizedIsZero2552L$id9841X`Q¿Y9?IsNormalizedIsZero2609L$id9898X?Y R?ZL?IsNormalizedIsZero2610L$id9899X@{?Y}?Z`?IsNormalizedIsZero2611L$id9900X`6s?YS?Z?IsNormalizedIsZero2612L$id9901X ?Y?Z ?IsNormalizedIsZero2613L$id9902XK?Y@U0?Z`A?IsNormalizedIsZero2614L$id9903XG?Y ?Z?IsNormalizedIsZero2615L$id9904XR?Y ?Z ?IsNormalizedIsZero2616L$id9905X ?Y?Z ?IsNormalizedIsZero2617L$id9906X@?Y`7?Z!q?IsNormalizedIsZero2618L$id9907XHg?Y)?Z`?IsNormalizedIsZero2619L$id9908XW=?Y L5?Z0?IsNormalizedIsZero2620L$id9909X ?YG5?Zh?IsNormalizedIsZero2621L$id9910X[ ?Y?Z@e?IsNormalizedIsZero2622L$id9911X)?Yώ?Z@L?IsNormalizedIsZero2623L$id9912X ?Y`%?ZF?IsNormalizedIsZero2624L$id9913X(?Y?Z`%X?IsNormalizedIsZero2625L$id9914X`?Y@P?Z ?IsNormalizedIsZero2626L$id9915X` :?Y@"?Z_?IsNormalizedIsZero2627L$id9916Xw?Y@?ZK?IsNormalizedIsZero2628L$id9917X7?Y~4?Z14?IsNormalizedIsZero2629L$id9918X}?Y?ZS?IsNormalizedIsZero2630L$id9919XN?Y`W?Z@?IsNormalizedIsZero2631L$id9920XS?Y?Zb?IsNormalizedIsZero2632L$id9921X +?Y W1?ZO?IsNormalizedIsZero2633L$id9922X?Y?ZB?IsNormalizedIsZero2634L$id9923X`I?Y U?Z?IsNormalizedIsZero2635L$id9924X?Y?Z5?IsNormalizedIsZero2636L$id9925X ?Y!?Z@X?IsNormalizedIsZero2637L$id9926X?Y@ ?Z ?IsNormalizedIsZero2638L$id9927X`/M?Y?ZЖ?IsNormalizedIsZero2639L$id9928X@:?Y?Zl?IsNormalizedIsZero2640L$id9929XGn?Y@?Z~?IsNormalizedIsZero2641L$id9930X ?Y"?Zu?IsNormalizedIsZero2642L$id9931XR?Y?ZC?IsNormalizedIsZero2643L$id9932X?Y@1@?Z?IsNormalizedIsZero2644L$id9933X?Yq5?Z}ȷ?IsNormalizedIsZero2645L$id9934X#?Y?Z@$?IsNormalizedIsZero2646L$id9935X?Y`>?Z!?IsNormalizedIsZero2761M$id10050XǿY`?Z@u:?IsNormalizedIsZero2762M$id10051XfʿY@y?Z?IsNormalizedIsZero2763M$id10052XY`C?Z ?IsNormalizedIsZero2764M$id10053XbgY?Z`?IsNormalizedIsZero2765M$id10054X@5 ¿Y?Z@?IsNormalizedIsZero2766M$id10055X`> ĿY,?ZɿY`v?Za?IsNormalizedIsZero2781M$id10070X̿Yk?Z?IsNormalizedIsZero2782M$id10071X ˿Y`A?Z`?IsNormalizedIsZero2783M$id10072X@Yढ?Z?IsNormalizedIsZero2784M$id10073X`¿Y`?Z{d?IsNormalizedIsZero2785M$id10074X`ſY?Z?IsNormalizedIsZero2786M$id10075X`]ĿY`1?Z%?IsNormalizedIsZero2787M$id10076XEY8?Z?IsNormalizedIsZero2788M$id10077X躿Y/?Z\?IsNormalizedIsZero2789M$id10078X pY@?Z i?IsNormalizedIsZero2790M$id10079XY?Z@?IsNormalizedIsZero2791M$id10080XmY`?Z`?IsNormalizedIsZero2792M$id10081X 0Y`S?Z:?IsNormalizedIsZero2793M$id10082X@9 Y` ?Z?IsNormalizedIsZero2794M$id10083X(Y~?Z+?IsNormalizedIsZero2795M$id10084X~Y`G?Z`Gq?IsNormalizedIsZero2796M$id10085XrY@t?Z?IsNormalizedIsZero2797M$id10086X@Ye?ZYI?IsNormalizedIsZero2798M$id10087XwY?ZP¼?IsNormalizedIsZero2799M$id10088XTſY}?Z *?IsNormalizedIsZero2800M$id10089XƿYZ?Z?IsNormalizedIsZero2801M$id10090X`=ʿY ;?Z?IsNormalizedIsZero2802M$id10091X^~ɿYl?Z5?IsNormalizedIsZero2803M$id10092X4Y)t?Z`?IsNormalizedIsZero2804M$id10093XY`?Zc"?IsNormalizedIsZero2805M$id10094XJÿY S?Z!?IsNormalizedIsZero2806M$id10095X@¿Y W#?Z c?IsNormalizedIsZero2807M$id10096XyY@Y?Z"?IsNormalizedIsZero2808M$id10097X@^Y` ?Z`?IsNormalizedIsZero2809M$id10098XYGp?Z ߥ?IsNormalizedIsZero2810M$id10099X6Y?Z?IsNormalizedIsZero2811M$id10100X`ͺY?Za?IsNormalizedIsZero2812M$id10101X !ʳYE?Z2?IsNormalizedIsZero2813M$id10102XȒYा?Z?IsNormalizedIsZero2814M$id10103X Yhx?Z@W?IsNormalizedIsZero2815M$id10104XY?ZIsNormalizedIsZero2816M$id10105X@Y?Zt?IsNormalizedIsZero2817M$id10106X/Y?Z@?IsNormalizedIsZero2818M$id10107X`YB?Z?IsNormalizedIsZero2819M$id10108XĿYbr?ZQ?IsNormalizedIsZero2820M$id10109X`fſYT*?Z,|?IsNormalizedIsZero2821M$id10110X ȿY:?ZΆ?IsNormalizedIsZero2822M$id10111X`B>ȿY %?Zж?IsNormalizedIsZero2823M$id10112XkY ?Z'?IsNormalizedIsZero2824M$id10113XY`ͺ?Z@1?IsNormalizedIsZero2825M$id10114X¿Y@v?Z@a?IsNormalizedIsZero2826M$id10115XY@;?Zk?IsNormalizedIsZero2827M$id10116XY%,?Z`c^?IsNormalizedIsZero2828M$id10117X"Y?Z@g ?IsNormalizedIsZero2829M$id10118X//Y?Z?IsNormalizedIsZero2830M$id10119XDY5'?Z?IsNormalizedIsZero2831M$id10120XY?ZIsNormalizedIsZero2832M$id10121XY?ZIsNormalizedIsZero2833M$id10122XY?ZIsNormalizedIsZero2834M$id10123XY?ZIsNormalizedIsZero2835M$id10124XY?ZIsNormalizedIsZero2836M$id10125XY?ZIsNormalizedIsZero2837M$id10126XiY@?ZMG?IsNormalizedIsZero2838M$id10127XWNY?Z@x_?IsNormalizedIsZero2839M$id10128X¿Y~?Z@ӄ?IsNormalizedIsZero2840M$id10129X`lĿY?Z/?IsNormalizedIsZero2841M$id10130XǿYci?Z ?IsNormalizedIsZero2842M$id10131X@ſY?Z@-?IsNormalizedIsZero2843M$id10132XY0Q?Z`c?IsNormalizedIsZero2844M$id10133X 'Y!?Zx ?IsNormalizedIsZero2845M$id10134X -Y ?ZG?IsNormalizedIsZero2846M$id10135X`/Y?Z?IsNormalizedIsZero2847M$id10136X`HܫY1?Zݒ?IsNormalizedIsZero2848M$id10137X ߰Y@f?ZJ"?IsNormalizedIsZero2849M$id10138X뵿YR?Z`G?IsNormalizedIsZero2850M$id10139XY{?Z&?IsNormalizedIsZero2851M$id10140XY?ZIsNormalizedIsZero2852M$id10141XY?ZIsNormalizedIsZero2853M$id10142XY?ZIsNormalizedIsZero2854M$id10143XY?ZIsNormalizedIsZero2855M$id10144Xh>Y?Z?IsNormalizedIsZero2856M$id10145XY?ZIsNormalizedIsZero2857M$id10146XY?ZIsNormalizedIsZero2858M$id10147XYY?Z4?IsNormalizedIsZero2859M$id10148XjؿY,?Z?IsNormalizedIsZero2860M$id10149X俿Y?Z-?IsNormalizedIsZero2861M$id10150X¿Y%?Zף?IsNormalizedIsZero2862M$id10151XO¿Y ?Z?IsNormalizedIsZero2863M$id10152XfYax?Z ?IsNormalizedIsZero2864M$id10153XݴYGt?Z?IsNormalizedIsZero2865M$id10154XDYF?Z?IsNormalizedIsZero2866M$id10155XY/Y?Z(?IsNormalizedIsZero2867M$id10156XY@?Z`j?IsNormalizedIsZero2868M$id10157X@"Y@?Z ?IsNormalizedIsZero2869M$id10158XB=Y?Z1?IsNormalizedIsZero2870M$id10159X mqY࿤?Z?IsNormalizedIsZero2871M$id10160XY?ZIsNormalizedIsZero2872M$id10161XY?ZIsNormalizedIsZero2873M$id10162XY?ZIsNormalizedIsZero2874M$id10163XY?ZIsNormalizedIsZero2875M$id10164XY?Y?Z@&?IsNormalizedIsZero2876M$id10165XY?ZIsNormalizedIsZero2877M$id10166XY?ZIsNormalizedIsZero2878M$id10167X^?YM?Z@2?IsNormalizedIsZero2879M$id10168X?YZIsNormalizedIsZero2880M$id10169X?YZIsNormalizedIsZero2881M$id10170X?YZIsNormalizedIsZero2882M$id10171X?YZIsNormalizedIsZero2883M$id10172X?YZIsNormalizedIsZero2884M$id10173X?YZIsNormalizedIsZero2885M$id10174X?YZIsNormalizedIsZero2886M$id10175X?YZIsNormalizedIsZero2887M$id10176X?YZIsNormalizedIsZero2888M$id10177X?YZIsNormalizedIsZero2889M$id10178X?YZIsNormalizedIsZero2890M$id10179X?YZIsNormalizedIsZero2891M$id10180X?YZIsNormalizedIsZero2892M$id10181X?YZIsNormalizedIsZero2893M$id10182X?YZIsNormalizedIsZero2894M$id10183X?YZIsNormalizedIsZero2895M$id10184X?YZIsNormalizedIsZero2896M$id10185X?YZIsNormalizedIsZero2897M$id10186X?YZIsNormalizedIsZero2898M$id10187X?YZIsNormalizedIsZero2899M$id10188X?YZIsNormalizedIsZero2900M$id10189X?YZIsNormalizedIsZero2901M$id10190X?YZIsNormalizedIsZero2902M$id10191X?YZIsNormalizedIsZero2903M$id10192XmؿY`EZFw?IsNormalizedIsZero2904M$id10193X@^ٿY`*Z.?IsNormalizedIsZero2905M$id10194X~ٿYൽZ7?IsNormalizedIsZero2906M$id10195XZ~ؿY$Z}w?IsNormalizedIsZero2907M$id10196X>Y @Z?IsNormalizedIsZero2908M$id10197X;zYZ?IsNormalizedIsZero2909M$id10198XbY wZ7?IsNormalizedIsZero2910M$id10199X ̦Y`Z:?IsNormalizedIsZero2911M$id10200XYJZ?IsNormalizedIsZero2912M$id10201XYlZ?IsNormalizedIsZero2913M$id10202X`YfZ ?IsNormalizedIsZero2914M$id10203XYZ?IsNormalizedIsZero2915M$id10204X`#Y Z`?IsNormalizedIsZero2916M$id10205X0Y ¿ZH?IsNormalizedIsZero2917M$id10206XYL¿Z@>?IsNormalizedIsZero2918M$id10207X|bY|¿Z "?IsNormalizedIsZero2919M$id10208XLYHÿZOW?IsNormalizedIsZero2920M$id10209X`KY`~ÿZ`?IsNormalizedIsZero2921M$id10210X@bYnÿZ@]?IsNormalizedIsZero2922M$id10211X x|YÿZ?IsNormalizedIsZero2923M$id10212X`Y 6TZ;?IsNormalizedIsZero2924M$id10213X Y ,OZ*?IsNormalizedIsZero2925M$id10214X`*(YŊZZ`١?IsNormalizedIsZero2926M$id10215X Y`CWZ?IsNormalizedIsZero2927M$id10216XGY@e_Z ?IsNormalizedIsZero2928M$id10217X.Yy!]ZT?IsNormalizedIsZero2929M$id10218X@`߿Y^bZ@?IsNormalizedIsZero2930M$id10219X`[Y)aZ`?IsNormalizedIsZero2931M$id10220X@ٿYRgZ@2H?IsNormalizedIsZero2932M$id10221X`޿YҤdZ`C?IsNormalizedIsZero2933M$id10222XҿYhZ ?IsNormalizedIsZero2934M$id10223XvտYChZ%?IsNormalizedIsZero2935M$id10224XǿYIiZDz?IsNormalizedIsZero2936M$id10225XOϿYphZ-?IsNormalizedIsZero2937M$id10226X@sYGnZ@I?IsNormalizedIsZero2938M$id10227X`üY@qkZ ?IsNormalizedIsZero2939M$id10228X`/MY@oZ@?IsNormalizedIsZero2940M$id10229Xg~?Y@ qZ?IsNormalizedIsZero2941M$id10230X~?Y@nqZ@[?IsNormalizedIsZero2942M$id10231X?Y`\rZ?IsNormalizedIsZero2943M$id10232X~¹?Y FzqZX?IsNormalizedIsZero2944M$id10233X ?Y*nZ@?IsNormalizedIsZero2945M$id10234X 4?Y@6;rZ?IsNormalizedIsZero2946M$id10235X?YsZ?IsNormalizedIsZero2947M$id10236X?YКoZw?IsNormalizedIsZero2948M$id10237X@~E?Y@ccZ?IsNormalizedIsZero2949M$id10238X 'Y3_Z`?IsNormalizedIsZero2950M$id10239X`YHaZ,?IsNormalizedIsZero2951M$id10240XYuZ?IsNormalizedIsZero2952M$id10241X ʻYEmZ ?IsNormalizedIsZero2953M$id10242X`¿YْuZ ?IsNormalizedIsZero2954M$id10243XYquZQ?IsNormalizedIsZero2955M$id10244X@ĿYpZঔ?IsNormalizedIsZero2956M$id10245X`k}ÿYQsZb?IsNormalizedIsZero2957M$id10246XZǿY@2VkZEo?IsNormalizedIsZero2958M$id10247X`2ƿY6unZ?IsNormalizedIsZero2959M$id10248X˿Y` {ZN??IsNormalizedIsZero2960M$id10249X KʿY`emsZ,Q?IsNormalizedIsZero2961M$id10250Xj̿YZG(?IsNormalizedIsZero2962M$id10251XF̿Y"Z`c%?IsNormalizedIsZero2963M$id10252X@̿Y`(Z)?IsNormalizedIsZero2964M$id10253X?YZIsNormalizedIsZero2965M$id10254X?YZIsNormalizedIsZero2966M$id10255X?YZIsNormalizedIsZero2967M$id10256X?YZIsNormalizedIsZero2968M$id10257X?YZIsNormalizedIsZero2969M$id10258X?YZIsNormalizedIsZero2970M$id10259X?YZIsNormalizedIsZero2971M$id10260X?YZIsNormalizedIsZero2972M$id10261X?YZIsNormalizedIsZero2973M$id10262X?YZIsNormalizedIsZero2974M$id10263X?YZIsNormalizedIsZero2975M$id10264X?YZIsNormalizedIsZero2976M$id10265XP׿Y Z`H?IsNormalizedIsZero2977M$id10266Xq׿Y@Z?IsNormalizedIsZero2978M$id10267XY]Z` ?IsNormalizedIsZero2979M$id10268XtYqZ(l?IsNormalizedIsZero2980M$id10269X gY ZY?IsNormalizedIsZero2981M$id10270X Y-Z"A?IsNormalizedIsZero2982M$id10271X`Y`Z߿?IsNormalizedIsZero2983M$id10272X<Y¿Z"?IsNormalizedIsZero2984M$id10273XlY FÿZ G?IsNormalizedIsZero2985M$id10274XfYqÿZ@?IsNormalizedIsZero2986M$id10275Xp?YՀ?Z /IsNormalizedIsZero2987M$id10276X̿YZ`Y"?IsNormalizedIsZero2988M$id10277X г?Y3Z?IsNormalizedIsZero2989M$id10278X@YZf?IsNormalizedIsZero2990M$id10279X YZ?IsNormalizedIsZero2991M$id10280X@YMY`vZ`?IsNormalizedIsZero2992M$id10281X Y@6Z?IsNormalizedIsZero2993M$id10282Xd⶿Y@1Z%?IsNormalizedIsZero2994M$id10283X`òY \Z?IsNormalizedIsZero2995M$id10284XnIYZi?IsNormalizedIsZero2996M$id10285X SY iZ?IsNormalizedIsZero2997M$id10286X@¢YZ H?IsNormalizedIsZero2998M$id10287XY`Z ?IsNormalizedIsZero2999M$id10288XHYoZ?IsNormalizedIsZero3000M$id10289XtY Z?IsNormalizedIsZero3001M$id10290XwEY`RZnO?IsNormalizedIsZero3002M$id10291X`YZ`_?IsNormalizedIsZero3003M$id10292X|\[?Y`eZ$?IsNormalizedIsZero3004M$id10293X@Dw?Y`Z&IsNormalizedIsZero3005M$id10294X\?YZ@qZIsNormalizedIsZero3006M$id10295XYZIsNormalizedIsZero3007M$id10296XYZIsNormalizedIsZero3008M$id10297XYZIsNormalizedIsZero3009M$id10298X@6tͿY B#?ZIsNormalizedIsZero3010M$id10299XRҿY^?Z?IsNormalizedIsZero3011M$id10300X`BҿYVr?Zi?IsNormalizedIsZero3012M$id10301X@7ԿY ?Z`.?IsNormalizedIsZero3013M$id10302X@տYߢ?Z`?IsNormalizedIsZero3014M$id10303X ֿY`|?Z9?IsNormalizedIsZero3015M$id10304X ׿Y ji?Z,?IsNormalizedIsZero3016M$id10305XXؿY kq?Z ?IsNormalizedIsZero3017M$id10306X@dؿY@h?Z ?IsNormalizedIsZero3018M$id10307XIؿY@p?Z Z?IsNormalizedIsZero3019M$id10308X ,ؿY&l?Z M?IsNormalizedIsZero3020M$id10309X`ؿYs?Z:q?IsNormalizedIsZero3021M$id10310XcؿYx?Z ?IsNormalizedIsZero3022M$id10311X xпY?Z`?IsNormalizedIsZero3023M$id10312XKѿY`x%?Z $?IsNormalizedIsZero3024M$id10313X^̿Y`KV?Z ?IsNormalizedIsZero3025M$id10314X{οYW?Z h?IsNormalizedIsZero3026M$id10315X`cȿY?Z-?IsNormalizedIsZero3027M$id10316X _{ʿYoE?ZL?IsNormalizedIsZero3028M$id10317X`<ĿY_Y?Z` ?IsNormalizedIsZero3029M$id10318XȑƿY?ZMG?IsNormalizedIsZero3030M$id10319X@FY?Za?IsNormalizedIsZero3031M$id10320XY?Z`-?IsNormalizedIsZero3032M$id10321XDبY@u?Z?IsNormalizedIsZero3033M$id10322X@u?Y@Q?Z!?IsNormalizedIsZero3034M$id10323XG?Y?Z|?IsNormalizedIsZero3035M$id10324XYM?Z%?IsNormalizedIsZero3036M$id10325X`BY@J3?Z@h?IsNormalizedIsZero3037M$id10326X@׾ĿY@q?Z (?IsNormalizedIsZero3038M$id10327X`1\Y?ZIsNormalizedIsZero3050M$id10339X6Y?Z`;?IsNormalizedIsZero3051M$id10340X 8ʿYJi?Z`X?IsNormalizedIsZero3052M$id10341X]mɿY?Z7?IsNormalizedIsZero3053M$id10342XYuu?Z?IsNormalizedIsZero3054M$id10343XdZkY`?ZY?IsNormalizedIsZero3055M$id10344XY?ZIsNormalizedIsZero3056M$id10345XY?ZIsNormalizedIsZero3057M$id10346XɿY?ZYg?IsNormalizedIsZero3058M$id10347XGȿYk?Zj?IsNormalizedIsZero3059M$id10348X4Y_?Z ?IsNormalizedIsZero3060M$id10349X Yq?Z?IsNormalizedIsZero3061M$id10350X\Yl?Z:?IsNormalizedIsZero3062M$id10351X !Y?Z |(?IsNormalizedIsZero3063M$id10352XY?ZIsNormalizedIsZero3064M$id10353XY?ZIsNormalizedIsZero3065M$id10354XtwſY>?Z`H?IsNormalizedIsZero3066M$id10355XPÿY@?Zh?IsNormalizedIsZero3067M$id10356X ʝY?Z (?IsNormalizedIsZero3068M$id10357XMY?Z e6?IsNormalizedIsZero3069M$id10358XCM?Y@w?ZZ}?IsNormalizedIsZero3070M$id10359Xv?Y 1?Z˛?IsNormalizedIsZero3071M$id10360XY?ZIsNormalizedIsZero3072M$id10361XY?ZIsNormalizedIsZero3073M$id10362X`YzFZ@`,?IsNormalizedIsZero3074M$id10363X`Y.5ĿZj?IsNormalizedIsZero3075M$id10364X%YފĿZ?IsNormalizedIsZero3076M$id10365X 9Y ĿZ [?IsNormalizedIsZero3077M$id10366X`PYLĿZ?IsNormalizedIsZero3078M$id10367X ¿Y ?Z{e?IsNormalizedIsZero3079M$id10368X@*C?Y@?Z l?IsNormalizedIsZero3080M$id10369X`1\]?Y@?ZK?IsNormalizedIsZero3081M$id10370XY?ZIsNormalizedIsZero3082M$id10371X]hY@ ^ĿZ#?IsNormalizedIsZero3083M$id10372X` YuĿZ`8?IsNormalizedIsZero3084M$id10373X X?YZIsNormalizedIsZero3085M$id10374XY?ZIsNormalizedIsZero3086M$id10375XY?ZIsNormalizedIsZero3087M$id10376XY?ZIsNormalizedIsZero3088M$id10377XY?ZIsNormalizedIsZero3089M$id10378XY?ZIsNormalizedIsZero3090M$id10379XY?ZIsNormalizedIsZero3091M$id10380XTY`?ZIsNormalizedIsZero3092M$id10381XTY`?ZIsNormalizedIsZero3093M$id10382XTY`?ZIsNormalizedIsZero3094M$id10383XTY?ZIsNormalizedIsZero3095M$id10384XTY`?ZIsNormalizedIsZero3096M$id10385XTY`?ZIsNormalizedIsZero3097M$id10386XTY?ZIsNormalizedIsZero3098M$id10387XTY`?ZIsNormalizedIsZero3099M$id10388XTY?ZIsNormalizedIsZero3100M$id10389XTY`?ZIsNormalizedIsZero3101M$id10390XTY`?ZIsNormalizedIsZero3102M$id10391XY N?Zu?IsNormalizedIsZero3103M$id10392XY N?Zu?IsNormalizedIsZero3104M$id10393XY N?Zu?IsNormalizedIsZero3105M$id10394XYZIsNormalizedIsZero3106M$id10395XYZIsNormalizedIsZero3107M$id10396XYZIsNormalizedIsZero3108M$id10397XYZIsNormalizedIsZero3109M$id10398XYZIsNormalizedIsZero3110M$id10399XYZIsNormalizedIsZero3111M$id10400XYZIsNormalizedIsZero3112M$id10401XYZIsNormalizedIsZero3113M$id10402XYZIsNormalizedIsZero3114M$id10403XYZIsNormalizedIsZero3115M$id10404XYZIsNormalizedIsZero3116M$id10405XYZIsNormalizedIsZero3117M$id10406XYZIsNormalizedIsZero3118M$id10407XYZIsNormalizedIsZero3119M$id10408XYZIsNormalizedIsZero3120M$id10409XYZIsNormalizedIsZero3121M$id10410XYZIsNormalizedIsZero3122M$id10411XYZIsNormalizedIsZero3123M$id10412X?YZIsNormalizedIsZero3124M$id10413X?YZIsNormalizedIsZero3125M$id10414X?YZIsNormalizedIsZero3126M$id10415X?YZIsNormalizedIsZero3127M$id10416X?YZIsNormalizedIsZero3128M$id10417X?YZIsNormalizedIsZero3129M$id10418X ôY E+?Z;]?IsNormalizedIsZero3130M$id10419X ôY E+?Z;]?IsNormalizedIsZero3131M$id10420X ôY E+?Z;]?IsNormalizedIsZero3132M$id10421X\ôY E+?Z=]?IsNormalizedIsZero3133M$id10422X\ôY E+?Z=]?IsNormalizedIsZero3134M$id10423X\ôY E+?Z=]?IsNormalizedIsZero3135M$id10424XôY E+?Z;]?IsNormalizedIsZero3136M$id10425XôY E+?Z;]?IsNormalizedIsZero3137M$id10426XôY E+?Z;]?IsNormalizedIsZero3138M$id10427X\YO?Z@_?IsNormalizedIsZero3139M$id10428X\YO?Z@_?IsNormalizedIsZero3140M$id10429X\YO?Z@_?IsNormalizedIsZero3141M$id10430XϴY`[?Z@ia?IsNormalizedIsZero3142M$id10431XϴY`[?Z@ia?IsNormalizedIsZero3143M$id10432XϴY`[?Z@ia?IsNormalizedIsZero3144M$id10433X 2Yk?Z@j?IsNormalizedIsZero3145M$id10434X 2Yk?Z@j?IsNormalizedIsZero3146M$id10435X 2Yk?Z@j?IsNormalizedIsZero3147M$id10436XݴYo?Z p?IsNormalizedIsZero3148M$id10437XݴYo?Z p?IsNormalizedIsZero3149M$id10438XݴYo?Z p?IsNormalizedIsZero3150M$id10439XCY?Zu?IsNormalizedIsZero3151M$id10440XCY?Zu?IsNormalizedIsZero3152M$id10441XCY?Zu?IsNormalizedIsZero3153M$id10442X X㴿Y@?Z@y?IsNormalizedIsZero3154M$id10443X X㴿Y@?Z@y?IsNormalizedIsZero3155M$id10444X X㴿Y@?Z@y?IsNormalizedIsZero3156M$id10445X@ɶY@>v?Z@?IsNormalizedIsZero3157M$id10446X@ɶY@>v?Z@?IsNormalizedIsZero3158M$id10447X@ɶY@>v?Z ?IsNormalizedIsZero3159M$id10448X`c촿Y@[y?Z@?IsNormalizedIsZero3160M$id10449X`c촿Y@[y?Z ?IsNormalizedIsZero3161M$id10450X`c촿Y@[y?Z ?IsNormalizedIsZero3162M$id10451X@!;Y@?ZZ?IsNormalizedIsZero3163M$id10452X@!;Y@?ZZ?IsNormalizedIsZero3164M$id10453X@!;Y@?ZZ?IsNormalizedIsZero3165M$id10454XſY@c?Z N5?IsNormalizedIsZero3166M$id10455XſY@c?Z N5?IsNormalizedIsZero3167M$id10456XſY@c?Z N5?IsNormalizedIsZero3168M$id10457X`ſYZ?Z N5?IsNormalizedIsZero3169M$id10458XſYk?Z N5?IsNormalizedIsZero3170M$id10459XſYk?Z N5?IsNormalizedIsZero3171M$id10460X Y ?ZCP?IsNormalizedIsZero3172M$id10461X Y ?ZCP?IsNormalizedIsZero3173M$id10462X Y ?ZCP?IsNormalizedIsZero3174M$id10463XY?ZIsNormalizedIsZero3175M$id10464XY?ZIsNormalizedIsZero3176M$id10465XY?ZIsNormalizedIsZero3177M$id10466XY?ZIsNormalizedIsZero3178M$id10467XY?ZIsNormalizedIsZero3179M$id10468XY?ZIsNormalizedIsZero3180M$id10469XY?ZIsNormalizedIsZero3181M$id10470XY?ZIsNormalizedIsZero3182M$id10471XY?ZIsNormalizedIsZero3183M$id10472XY?ZIsNormalizedIsZero3184M$id10473XY?ZIsNormalizedIsZero3185M$id10474XY?ZIsNormalizedIsZero3186M$id10475XY?ZIsNormalizedIsZero3187M$id10476XY?ZIsNormalizedIsZero3188M$id10477XY?ZIsNormalizedIsZero3189M$id10478XY?ZIsNormalizedIsZero3190M$id10479XY?ZIsNormalizedIsZero3191M$id10480XY?ZIsNormalizedIsZero3192M$id10481XY?ZIsNormalizedIsZero3193M$id10482XY?ZIsNormalizedIsZero3194M$id10483XY?ZIsNormalizedIsZero3195M$id10484XY?ZIsNormalizedIsZero3196M$id10485XY?ZIsNormalizedIsZero3197M$id10486XY?ZIsNormalizedIsZero3198M$id10487XY?ZIsNormalizedIsZero3199M$id10488XY?ZIsNormalizedIsZero3200M$id10489XY?ZIsNormalizedIsZero3201M$id10490XY?ZIsNormalizedIsZero3202M$id10491XY?ZIsNormalizedIsZero3203M$id10492XY?ZIsNormalizedIsZero3204M$id10493XY?ZIsNormalizedIsZero3205M$id10494XY?ZIsNormalizedIsZero3206M$id10495XY?ZIsNormalizedIsZero3207M$id10496XY?ZIsNormalizedIsZero3208M$id10497XY?ZIsNormalizedIsZero3209M$id10498XY?ZIsNormalizedIsZero3210M$id10499XY?ZIsNormalizedIsZero3211M$id10500XY?ZIsNormalizedIsZero3212M$id10501XY?ZIsNormalizedIsZero3213M$id10502XY?ZIsNormalizedIsZero3214M$id10503XY?ZIsNormalizedIsZero3215M$id10504XY?ZIsNormalizedIsZero3216M$id10505XY?ZIsNormalizedIsZero3217M$id10506XY?ZIsNormalizedIsZero3218M$id10507XY?ZIsNormalizedIsZero3219M$id10508XY?ZIsNormalizedIsZero3220M$id10509XY?ZIsNormalizedIsZero3221M$id10510XY?ZIsNormalizedIsZero3222M$id10511XY?ZIsNormalizedIsZero3223M$id10512XY?ZIsNormalizedIsZero3224M$id10513XY?ZIsNormalizedIsZero3225M$id10514XY?ZIsNormalizedIsZero3226M$id10515XY?ZIsNormalizedIsZero3227M$id10516XY?ZIsNormalizedIsZero3228M$id10517XY?ZIsNormalizedIsZero3229M$id10518XY?ZIsNormalizedIsZero3230M$id10519XY?ZIsNormalizedIsZero3231M$id10520XY?ZIsNormalizedIsZero3232M$id10521XY?ZIsNormalizedIsZero3233M$id10522XY?ZIsNormalizedIsZero3234M$id10523XY?ZIsNormalizedIsZero3235M$id10524XY?ZIsNormalizedIsZero3236M$id10525XY?ZIsNormalizedIsZero3237M$id10526XY?ZIsNormalizedIsZero3238M$id10527XY?ZIsNormalizedIsZero3239M$id10528XY?ZIsNormalizedIsZero3240M$id10529XY?ZIsNormalizedIsZero3241M$id10530XY?ZIsNormalizedIsZero3242M$id10531XY?ZIsNormalizedIsZero3243M$id10532XY?ZIsNormalizedIsZero3244M$id10533XY?ZIsNormalizedIsZero3245M$id10534XY?ZIsNormalizedIsZero3246M$id10535XY?ZIsNormalizedIsZero3247M$id10536XY?ZIsNormalizedIsZero3248M$id10537XY?ZIsNormalizedIsZero3249M$id10538XY?ZIsNormalizedIsZero3250M$id10539XY?ZIsNormalizedIsZero3251M$id10540XY?ZIsNormalizedIsZero3252M$id10541XY?ZIsNormalizedIsZero3253M$id10542XY?ZIsNormalizedIsZero3254M$id10543XY?ZIsNormalizedIsZero3255M$id10544XY?ZIsNormalizedIsZero3256M$id10545XY?ZIsNormalizedIsZero3257M$id10546XY?ZIsNormalizedIsZero3258M$id10547XY?ZIsNormalizedIsZero3259M$id10548XY?ZIsNormalizedIsZero3260M$id10549X`dWzYZ?IsNormalizedIsZero3261M$id10550X`dWzYZ?IsNormalizedIsZero3262M$id10551X`dWzYZ?IsNormalizedIsZero3263M$id10552X`dWzYZ?IsNormalizedIsZero3264M$id10553XKUzYZ?IsNormalizedIsZero3265M$id10554XKUzYZ?IsNormalizedIsZero3266M$id10555XKUzYZ?IsNormalizedIsZero3267M$id10556XKUzYZ?IsNormalizedIsZero3268M$id10557XKUzYZ?IsNormalizedIsZero3269M$id10558XKUzYZ?IsNormalizedIsZero3270M$id10559X` PzYZ?IsNormalizedIsZero3271M$id10560X` PzYZ?IsNormalizedIsZero3272M$id10561X` PzYZ?IsNormalizedIsZero3273M$id10562X` PzYZ?IsNormalizedIsZero3274M$id10563XDzYZ?IsNormalizedIsZero3275M$id10564XDzYZ?IsNormalizedIsZero3276M$id10565XDzYZ?IsNormalizedIsZero3277M$id10566XDzYZ?IsNormalizedIsZero3278M$id10567XkBzYZ?IsNormalizedIsZero3279M$id10568XkBzYZ?IsNormalizedIsZero3280M$id10569XkBzYZ?IsNormalizedIsZero3281M$id10570XkBzYZ?IsNormalizedIsZero3282M$id10571XYZIsNormalizedIsZero3283M$id10572XYZIsNormalizedIsZero3284M$id10573XYZIsNormalizedIsZero3285M$id10574XYZIsNormalizedIsZero3286M$id10575XYZIsNormalizedIsZero3287M$id10576XYZIsNormalizedIsZero3288M$id10577XYZIsNormalizedIsZero3289M$id10578XYZIsNormalizedIsZero3290M$id10579X?YZ`IsNormalizedIsZero3291M$id10580X?YZ`IsNormalizedIsZero3292M$id10581X?YZIsNormalizedIsZero3293M$id10582X?YZ`IsNormalizedIsZero3294M$id10583X?YZ`IsNormalizedIsZero3295M$id10584X?YZIsNormalizedIsZero3296M$id10585X?YZ`IsNormalizedIsZero3297M$id10586X?YZ`IsNormalizedIsZero3298M$id10587X?YZ`IsNormalizedIsZero3299M$id10588X?YZ`IsNormalizedIsZero3300M$id10589X?YZ`IsNormalizedIsZero3301M$id10590X?YZ`IsNormalizedIsZero3302M$id10591X?YZ`IsNormalizedIsZero3303M$id10592X?YZ`IsNormalizedIsZero3304M$id10593X`*ij?YZIsNormalizedIsZero3305M$id10594X`*ij?YZIsNormalizedIsZero3306M$id10595X`*ij?YZIsNormalizedIsZero3307M$id10596X`*ij?YZIsNormalizedIsZero3308M$id10597X`*ij?YZIsNormalizedIsZero3309M$id10598X`*ij?YZIsNormalizedIsZero3310M$id10599Xų?YZIsNormalizedIsZero3311M$id10600Xų?YZIsNormalizedIsZero3312M$id10601Xų?YZIsNormalizedIsZero3313M$id10602Xų?YZIsNormalizedIsZero3314M$id10603X?YZ`YIsNormalizedIsZero3315M$id10604X?YZ`YIsNormalizedIsZero3316M$id10605X?YZ`YIsNormalizedIsZero3317M$id10606X?YZ`YIsNormalizedIsZero3318M$id10607X?YZ`YIsNormalizedIsZero3319M$id10608X?YZ@WIsNormalizedIsZero3320M$id10609X?YZ@WIsNormalizedIsZero3321M$id10610X?YZ`YIsNormalizedIsZero3322M$id10611X?YZ@WIsNormalizedIsZero3323M$id10612X?YZ@WIsNormalizedIsZero3324M$id10613X?YZIsNormalizedIsZero3325M$id10614X?YZIsNormalizedIsZero3326M$id10615X?YZIsNormalizedIsZero3327M$id10616X?YZIsNormalizedIsZero3328M$id10617X?YZIsNormalizedIsZero3329M$id10618X?YZIsNormalizedIsZero3330M$id10619X?YZIsNormalizedIsZero3331M$id10620X?YZIsNormalizedIsZero3332M$id10621XՋYZ??IsNormalizedIsZero3333M$id10622XՋYZ??IsNormalizedIsZero3334M$id10623XՋYZ??IsNormalizedIsZero3335M$id10624XՋYZ??IsNormalizedIsZero3336M$id10625X ՋYZ??IsNormalizedIsZero3337M$id10626X ՋYZ??IsNormalizedIsZero3338M$id10627X ՋYZ??IsNormalizedIsZero3339M$id10628X ՋYZ??IsNormalizedIsZero3340M$id10629X`.7?YZ@mIsNormalizedIsZero3341M$id10630X`.7?YZ@mIsNormalizedIsZero3342M$id10631X`.7?YZ@mIsNormalizedIsZero3343M$id10632X`.7?YZ@mIsNormalizedIsZero3344M$id10633X5?YZ@mIsNormalizedIsZero3345M$id10634X5?YZ@mIsNormalizedIsZero3346M$id10635X5?YZ@mIsNormalizedIsZero3347M$id10636X5?YZ@mIsNormalizedIsZero3348M$id10637X5?YZ@mIsNormalizedIsZero3349M$id10638X5?YZ@mIsNormalizedIsZero3350M$id10639X0?YZ@mIsNormalizedIsZero3351M$id10640X0?YZ@mIsNormalizedIsZero3352M$id10641X0?YZ@mIsNormalizedIsZero3353M$id10642X0?YZ@mIsNormalizedIsZero3354M$id10643Xg&?YZ@mIsNormalizedIsZero3355M$id10644Xg&?YZ@oIsNormalizedIsZero3356M$id10645Xg&?YZ@oIsNormalizedIsZero3357M$id10646Xg&?YZ@oIsNormalizedIsZero3358M$id10647X?YZIsNormalizedIsZero3359M$id10648X?YZIsNormalizedIsZero3360M$id10649X?YZIsNormalizedIsZero3361M$id10650X?YZIsNormalizedIsZero3362M$id10651X6YZx?IsNormalizedIsZero3363M$id10652X6YZx?IsNormalizedIsZero3364M$id10653X6YZx?IsNormalizedIsZero3365M$id10654X6YZx?IsNormalizedIsZero3366M$id10655XFYZe?IsNormalizedIsZero3367M$id10656XFYZe?IsNormalizedIsZero3368M$id10657XFYZe?IsNormalizedIsZero3369M$id10658XFYZe?IsNormalizedIsZero3370M$id10659X஗YZ`]?IsNormalizedIsZero3371M$id10660X஗YZ`]?IsNormalizedIsZero3372M$id10661X஗YZ`]?IsNormalizedIsZero3373M$id10662X஗YZ`]?IsNormalizedIsZero3374M$id10663X஗YZ`]?IsNormalizedIsZero3375M$id10664X஗YZ`]?IsNormalizedIsZero3376M$id10665X`YZ`[?IsNormalizedIsZero3377M$id10666X`YZ`[?IsNormalizedIsZero3378M$id10667X`YZ`[?IsNormalizedIsZero3379M$id10668X`YZ`[?IsNormalizedIsZero3380M$id10669X zÿYZ?IsNormalizedIsZero3381M$id10670X zÿYZ?IsNormalizedIsZero3382M$id10671X zÿYZ?IsNormalizedIsZero3383M$id10672X zÿYZ?IsNormalizedIsZero3384M$id10673XYZIsNormalizedIsZero3385M$id10674XYZIsNormalizedIsZero3386M$id10675XYZIsNormalizedIsZero3387M$id10676XYZIsNormalizedIsZero3388M$id10677X?YZqIsNormalizedIsZero3389M$id10678X?YZqIsNormalizedIsZero3390M$id10679X?YZqIsNormalizedIsZero3391M$id10680X?YZqIsNormalizedIsZero3392M$id10681X`.7?YZ@mIsNormalizedIsZero3393M$id10682X`.7?YZ@mIsNormalizedIsZero3394M$id10683X5?YZ@mIsNormalizedIsZero3395M$id10684X5?YZ@mIsNormalizedIsZero3396M$id10685X5?YZ@mIsNormalizedIsZero3397M$id10686X0?YZ@mIsNormalizedIsZero3398M$id10687X0?YZ@mIsNormalizedIsZero3399M$id10688Xg&?YZ@oIsNormalizedIsZero3400M$id10689Xg&?YZ@oIsNormalizedIsZero3401M$id10690X?YZIsNormalizedIsZero3402M$id10691X?YZIsNormalizedIsZero3403M$id10692X?YZIsNormalizedIsZero3404M$id10693X?YZIsNormalizedIsZero3405M$id10694X?YZIsNormalizedIsZero3406M$id10695X?YZIsNormalizedIsZero3407M$id10696X`<YM+?Z@ϿZ@G?IsNormalizedIsZero3530M$id10819X`?Y`>ϿZ@G?IsNormalizedIsZero3531M$id10820X`?Y`>ϿZ@G?IsNormalizedIsZero3532M$id10821X` ?Y ϿZIsNormalizedIsZero3533M$id10822X` ?Y ϿZIsNormalizedIsZero3534M$id10823X` ?Y ϿZIsNormalizedIsZero3535M$id10824XޯY _?Z }?IsNormalizedIsZero3536M$id10825XޯY _?Z }?IsNormalizedIsZero3537M$id10826XޯY _?Z }?IsNormalizedIsZero3538M$id10827X|Y`?Z`m?IsNormalizedIsZero3539M$id10828X|Y`?Z`m?IsNormalizedIsZero3540M$id10829X|Y`?Z`m?IsNormalizedIsZero3541M$id10830X Y?Zsf?IsNormalizedIsZero3542M$id10831X Y?Zsf?IsNormalizedIsZero3543M$id10832X Y?Zsf?IsNormalizedIsZero3544M$id10833XpYYf?Z=?IsNormalizedIsZero3545M$id10834XpYYf?Z=?IsNormalizedIsZero3546M$id10835XpYYf?Z=?IsNormalizedIsZero3547M$id10836XcY?Z2?IsNormalizedIsZero3548M$id10837XcY?Z2?IsNormalizedIsZero3549M$id10838XcY?Z2?IsNormalizedIsZero3550M$id10839X Y^-?Z$?IsNormalizedIsZero3551M$id10840X Y^-?Z$?IsNormalizedIsZero3552M$id10841X Y^-?Z$?IsNormalizedIsZero3553M$id10842X`ذYp?Z4?IsNormalizedIsZero3554M$id10843X`ذYp?Z4?IsNormalizedIsZero3555M$id10844X`ذYp?Z4?IsNormalizedIsZero3556M$id10845XLY "?Z,?IsNormalizedIsZero3557M$id10846XLY "?Z,?IsNormalizedIsZero3558M$id10847XLY "?Z,?IsNormalizedIsZero3559M$id10848XͱY%?Z`Y?IsNormalizedIsZero3560M$id10849XͱY%?Z`Y?IsNormalizedIsZero3561M$id10850XͱY%?Z`Y?IsNormalizedIsZero3562M$id10851X@CTY֤?Z6?IsNormalizedIsZero3563M$id10852X@CTY֤?Z6?IsNormalizedIsZero3564M$id10853X@CTY֤?Z6?IsNormalizedIsZero3565M$id10854X eoY?Z?IsNormalizedIsZero3566M$id10855X eoY?Z?IsNormalizedIsZero3567M$id10856X eoY?Z?IsNormalizedIsZero3568M$id10857XxxY?Zy!?IsNormalizedIsZero3569M$id10858XxxY?Zy!?IsNormalizedIsZero3570M$id10859XxxY?Zy!?IsNormalizedIsZero3571M$id10860X`?Y`j?Z`jIsNormalizedIsZero3572M$id10861X`?Y`j?Z`jIsNormalizedIsZero3573M$id10862X`?Y`j?Z`jIsNormalizedIsZero3574M$id10863X`?Y`j?Z`jIsNormalizedIsZero3575M$id10864X?Y`j?Z`jIsNormalizedIsZero3576M$id10865X?Y`j?Z`jIsNormalizedIsZero3577M$id10866X?Y`j?Z`jIsNormalizedIsZero3578M$id10867X?Y`j?Z`jIsNormalizedIsZero3579M$id10868X?Y`j?Z`jIsNormalizedIsZero3580M$id10869X?Y`j?Z`jIsNormalizedIsZero3581M$id10870X?Y`j?Z`jIsNormalizedIsZero3582M$id10871X?Y`j?Z`jIsNormalizedIsZero3583M$id10872X`?Y`j?Z`jIsNormalizedIsZero3584M$id10873X`?Y`j?Z`jIsNormalizedIsZero3585M$id10874X`?Y`j?Z`jIsNormalizedIsZero3586M$id10875X`?Y`j?Z`jIsNormalizedIsZero3587M$id10876X`?Y`j?Z`jIsNormalizedIsZero3588M$id10877X`?Y`j?Z`jIsNormalizedIsZero3589M$id10878X`?Y`j?Z`jIsNormalizedIsZero3590M$id10879X`?Y`j?Z`jIsNormalizedIsZero3591M$id10880XY@((?Z`?IsNormalizedIsZero3592M$id10881XY@((?Z`?IsNormalizedIsZero3593M$id10882XY@((?Z`?IsNormalizedIsZero3594M$id10883X 㥿Y@7?Z?IsNormalizedIsZero3595M$id10884X 㥿Y@7?Z?IsNormalizedIsZero3596M$id10885X 㥿Y@7?Z?IsNormalizedIsZero3597M$id10886X"Y?Z"?IsNormalizedIsZero3598M$id10887X"Y?Z"?IsNormalizedIsZero3599M$id10888X"Y?Z"?IsNormalizedIsZero3600M$id10889X`dY"(?Z ?IsNormalizedIsZero3601M$id10890X`dY"(?Z ?IsNormalizedIsZero3602M$id10891X`dY"(?Z ?IsNormalizedIsZero3603M$id10892X/Y?Z function $(o){return document.getElementById(o);} function li_Div_Init(chl){ var len = $(chl).getElementsByTagName("li").length for (var i = 1 ; i <= len ; i ++ ){ $(chl+"_t_"+i).className= "onno"+ i; $(chl+"_b_"+i).style.display="none"; } } function changeDivs2(chl,param){ li_Div_Init(chl); $(chl+"_t_"+param).className= "on"+ param; $(chl+"_b_"+param).style.display="block"; } ��½���Ǵ� ������ ���� �������� ���� » ���� �����ղ� ��Ϊ��ҳ ��������ҳ ȫ���Ѷ ���Ǵ岩�� �ȵ���̳ ������΢�� ͬ������ ����ר�� ͶƱ��� �����Ȱ� �ȼ۹��� �����Ϣ�� ������Ʒ���� ס����Ϣ ����� ��ְ��Ƹ ������Ϣ ��������     ��ѷ����� ������Ʒ���� ס����Ϣ ����� ��ְ��Ƹ ������Ϣ �������� ����̨ʱ�䣺11��9��17ʱ39�� ������ �й�ũ����10��14�� �����ȵ� �ȵ���� Ϊ���ܶ�����ֲ���ǻң�֪���߳Ƶ�ʱ����˵ 49 ���� ��ž�פ������ʿ��Яǹ��795���ӵ����� 3�˱�����. 83 ���� �����人������۽�ž��뾯����ͻ ��ʮ�������� 38 ���� Яǹ����ʿ����ϸ������¶ �����ڱ����� ��������һ. 32 ���� 48�����ӵ�29����Ž��� ���׶�С������˽�����ع�.. 7 ���� ��¶����¶����¶¶�����ľ���д�� �����������ջ�.. 9 ���� ��ϷУ����ٳ�ع�д�� ���ص�������� ��������(��. ���к�����ѷһ����,��$600Amazon��ȯ,12/15ֹ ��������Ҽҵĺ�԰��������ʰ����...(��ͼ�� ����˵�������ף�������ű�ǿ�������Ҳ�����Ӳ��� ������������ã��������һ�룬�����������׽�Ų� var netid,netid2,pic_id2; function ShowLi(netid){ var w; for ( w=1; w<=3; w++ ){ document.getElementById("dbtl_t_"+w).className = "onno"+ w; document.getElementById("dbtl_b_"+w).style.display = "none"; } document.getElementById("dbtl_t_"+netid).className = "on"+ netid; document.getElementById("dbtl_b_"+netid).style.display = ""; } function ClearTime(){ clearTimeout(pic_id2); } function DelayShow(netid2){ ClearTime(); if(netid2=='1') pic_id2 = setTimeout("ShowLi(1)",300); if(netid2=='2') pic_id2 = setTimeout("ShowLi(2)",300); if(netid2=='3') pic_id2 = setTimeout("ShowLi(3)",300); } ���� ͼƬ ����Ƭ ���� �Dz�˹ ռ�컪���� ������ר�� 480P vs. 720P, �e�����ٸ��塱���� ��ž�4���ӱ�����4������ ����ſ�������׼�������� ��ž�פ��������ʿ����ǹ��������ϸ���ع� ��·�Ͻ��� �й�����֮��־Ը�߹����ܱ����� ���ؼ���ͷ������(��ͼ) �����������������Ŵ�ʼ������Ļ���ױ���9280����Ԫ ý�帱�ܱ����ö����Ǩ�����⹫���־��ٶ�����в���� �ع��������ģ��ع�����ع���Ʊ���ع�ǩ֤һվ�㶨��ž����ۺ����ܲ��Ƿ���ֳ��ʩ ������Ӿ�����Ա(��ͼ) ���춫���������˹��ɨ�� ���϶��ҿ����θ�ñ ����. 6 ���� ���ӷ��վ�����Һ��� ҽ��˺�IJ�����ֻ����д�ò��ÿ� �й���·�����г���Ԥ��5�Ųм���Ʊ �����е�����Ż� ������ͷ�µ���Ź��м��� �����ټ���Ⱥ��Χ�۶µ�(ͼ) �ж��Ż��ͽ���-���Թǽ�ԭ�������ء���յ�ء���øQ10��¬˹����Ϊ��������ծ���� ������ʥ��ȻлĻ��̳.. 2 ���� ������������˽�޻�ֻ����1992�� ������������Ϊ��. 3 ���� ����Ӱ�ӣ��й������ҵ�������ɥ���� ��������(��. 2 ���� �Ϸǻع��������ģ�����ѹ�������� �ٵ�һ�껹һ����. 5 ���� �ڶ���ŦԼ�й���Ӱ�ڿ��� �����ɳ����ߺ�̺(������. 2 ���� ��Ч����Ӳ���������ר���Ǿ���/��Ѫͨ����ǿ���¹�ϣ�����ٷ��� ����֧��������ס��ģ�����ٶȱ��� ����Ͷ��160������Ź��̲��ת�� ��ʩ����ֻʣ��25. 6 ���� �����˲�����ƿ���칫¥��Χ�� ������300��ͬʱ�칫. 2 ���� ����ʷѧ�ҵ�ʬ��� 26��Ůʬ�ؼ��� ����ͬ˯(��/. 7 ���� ��ʮ����ͼΪ��չ�ֽ���ı��� ��ɫ�����ڽ�ɫ�ĺ���ͼ�� ������У�Խ�ϴ��쾫�ɺ��Ϲ������� �ѿ�ҧ�й�һ. 12 ���� Ͷ���������ʿ��������ʵ¼���޵ÿ��°�ĭ����ʧ��. 16 ���� 5���к�������ײ���� ĸ��·���¹���Ȱ�����ҽ����. 12 ���� ɱ���ֶ��ײ� �����������������������򸻺�������.. 3 ���� �������è�壿���ӿ�����Ա ����ɼ�����һ�Ա�ˢ. 6 ���� ��������ѷ$625������$150�ֽ�+�ж���20%ˢ���ؿۣ�ͼ�������̰������������������� ����3��ƶ���سɸ���. 4 ���� ̨���һ��Ů��Ǿ�׳���ı��� �����̨ͬ�Ϳ�Է�.. 4 ���� ���ոߴ�ѡ���ھ����ɱ��ʬ������������������(��ͼ. 8 ���� ���������Ů��κ���߶ȴ�����д�� ��ձ���ȫ��.. 2 ���� ������ʾ�й�����˳ɲ�Ҫ������� ������������. 12 ���� ���������ӱ�ǿ�������������ֳ壺��ǰû����ɽ ֻ. 12 ���� ��ž��վ�װ���о�Ժר�ҳ��ϼ�15���ػ����з��ɹ�(ͼ) ��ý�ع�����ϼ16�갮Ů���� ���ưְ� 0%������.. 13 ���� ���޲��磺����Ϊй�߿��1����ͯ ����������������. 23 ���� �����й���ө��һ�š��Ķ���˹�Ǽ�վ���������쳣. 6 ���� 2011��ɫ��������Ϯ����׼��������̨ý����½��ˮ䰴����������˽�����ɱ����̫Ѫ��.. 4 ���� ����������ơ�ͭȸ̨������������ ����լ�а�ܲ�(ͼ) һ����Ȥ����Ƭ�������ǣ����� ��ʱ����Ҫ�����Ƕȣ�ͼ�� ������͡�������� ������̰���������̡���ִ����. 12 ���� �׻ƴ����糤���ĸ���ڹ㶫��ı���� 16���ܽ��й�. 12 ���� ��δδ��������ͼ�˽������ʱ����������˷���֮. 33 ���� һ���˶�ס�IJ㽨����ӡ��������39��������ʵ����.. 19 ���� ����΢��ɹ�Լ�10��ǰ�ijɼ��� ���������̫�պ���(��ͼ) ��������30������ǿ���� ���ѷ׷׷����Ʊ������Ρ�.. 4 ���� ���ô�ŷ���ɸ������֡�ˮ�֡� ����������Ƶ(ͼ/��Ƶ. 7 ���� ���ڡ��ľ���Яǹ���ӡ��ķ��ɷ��� �������ˣ���׽һ. 9 ���� ����˹��Ů����Ĵ�����ɫ �����Ҫ���ʯ��ȹ������(ͼ) �������Ϻ�̸�¹�ϣ���գ���Ҫ������ ���ٱ�Ů����. 11 ���� ��ʫʫ��ɫ��ȹ�Ը����� �ơ���������2����û̸��(��. 4 ���� ���������������������� ����ײɫĦ������(������ͼ. 3 ���� ����̨����ͷ����΢��Ӱ ���ճ��� �������ڼ�Ů��(��ͼ) ɽ�������ྯ������ ץ�����γ�ǹ�ܲ�Ϯ�������ͷĿ. 3 ���� �ǻ��ڷ��������е��й����а��죺��Ҳ���ǵ�Ҳ����. 9 ����   ȫ���Ѷ�ڶ�ҳ(Next 60) ��ǰ�ȵ� ���а� 1�� 2�� �� ���� ר��С��ȫ����� �������ɽҽԺ���������������. 65 ���� ���вŵ�ѧ�� ����д1000�鵥�ʣ�û���⣬���ҵģ���ͼ�� ���������ǽ�¶ƭ�ֵ�ʱ���� ������й����õ�����. 35 ���� �¼��º��𾪣��й�����Я�޿��ȥ �������쾯�� 28 ���� ���ԣ�������С����˽�����ع� �������β�������. 22 ���� Ů����һƶ��ϴ С͵���ҵ������� Ȱ��ҪŬ��׬Ǯ.. 31 ���� �ѱ��߳ɹ����Ѽ»���Ա���ǹ��������Ƶ�����ع�.. 52 ���� ǿ�鶾��Ů�� ʩ��������Ա���ɷ�Сѧͬѧ ������Ա. 49 ���� �绪�����������ܶ���������Ư����Ů��Ա(��ͼ) 16 ���� �������������48Сʱ���ŵ�� 1.�Թ�������ǿ�� �����Ƶ�ع� �ɷ�Ҫ����ֻ���� 143 ���� 2.��������������լǿ��Ů�� ���ӡ����ӡ����ӱ�ǿ�� 178 ���� 3.ԭ��̬ץ�ı���������ѧŮ�� ���ٳ��ú����ʼѣ� 44 ���� 4.ר��С��ȫ����� �������ɽҽԺ��������������� 65 ���� 5.�й���ѧ�������� ���ƣ�210ƽ��������15��(��ͼ 49 ���� 6.��̬�г¹�ϣ����6������ ���п��ܲ�������ȱ�� 21 ���� 7.Ϊ���ܶ�����ֲ���ǻң�֪���߳Ƶ�ʱ����˵ 49 ���� 8.���вŵ�ѧ�� ����д1000�鵥�ʣ�û���⣬���ҵ� 0 ���� 9.��ž�פ������ʿ��Яǹ��795���ӵ����� 3�˱����� 83 ���� 10.���������ǽ�¶ƭ�ֵ�ʱ���� ������й����õ����� 35 ���� 11.�ձ�Ů�����������й������� ��˧�ޣ������أ�(�� 12 ���� 12.�¼��º��𾪣��й�����Я�޿��ȥ �������쾯�� 28 ���� 13.�񾲾����� �ɷù�����ʱ�ֳ����ڷ�ŭ�ӷ�Ь(ͼ) 15 ���� 14.���ԣ�������С����˽�����ع� �������β������� 22 ���� 15.�ѵ�һ���İ���ǰ�й���ɫ��Ƭ �����û����(��ͼ 26 ���� 16.Ů����һƶ��ϴ С͵���ҵ������� Ȱ��ҪŬ��׬Ǯ 31 ���� 17.���IJԾ��Ÿֽ߲����� �ձ�Ů��ȷʵ����(������ͼ 19 ���� 18.�ѱ��߳ɹ����Ѽ»���Ա���ǹ��������Ƶ�����ع� 52 ���� 19.��ͼ�����ࣺ̽�س�����ͨ�ϰ��յ�����ϸ��(��ͼ) 27 ���� 20.Ů�ӳ��ⷿ����ٲƽ�ɫ �����߱���͵��(��ͼ/���� 21 ���� 21.ǿ�鶾��Ů�� ʩ��������Ա���ɷ�Сѧͬѧ ������ 49 ���� 22.�绪�����������ܶ���������Ư����Ů��Ա(��ͼ) 16 ���� 23.����ͳ��ѡ�˿���������ɧ�� ��������Ů˽�ܴ�(�� 26 ���� 24.�����人������۽�ž��뾯����ͻ ��ʮ�������� 38 ���� 25.���¸�ʹ�������ɥ����ĸ��ˤ����30�������˷�(ͼ 52 ���� 26.�������ӢԢ����� ����ʧ������̽�÷���ȥ��(�� 8 ���� 27.����ͼ�����������Ů�μ���������Ҫ��������̨ 8 ���� 28.���ѽ������ţ��й����޴�� ��ɼӺ�ֱ����ʧ20�� 25 ���� 29.�㶫����������16��ƽ� ����8�������������ʲô 9 ���� 30.Խ�ϸ���ǧ����ѧΪ���� ���˲�����ѡ�й�����(�� 14 ���� 31.�ձ����ñ����������ţ����ְ�˹����������Ϣ�� 16 ���� 32.������ı�����������ࣺ���������ձ����(��ͼ 24 ���� �������������48Сʱ�������� 1.��������������լǿ��Ů�� ���ӡ����ӡ����ӱ�ǿ�� 178 ����2.�Թ�������ǿ�� �����Ƶ�ع� �ɷ�Ҫ����ֻ���� 143 ����3.��ý����δδ����ٶȱ�Ͷ����� �й������������� 95 ����4.��ž�פ������ʿ��Яǹ��795���ӵ����� 3�˱����� 83 ����5.ר��С��ȫ����� �������ɽҽԺ��������������� 65 ����6.�ѱ��߳ɹ����Ѽ»���Ա���ǹ��������Ƶ�����ع� 52 ����7.���¸�ʹ�������ɥ����ĸ��ˤ����30�������˷�(ͼ 52 ����8.Ϊ���ܶ�����ֲ���ǻң�֪���߳Ƶ�ʱ����˵ 49 ����9.�й���ѧ�������� ���ƣ�210ƽ��������15��(��ͼ 49 ����10.ǿ�鶾��Ů�� ʩ��������Ա���ɷ�Сѧͬѧ ������ 49 ����11.����ɱ�������ë���뽯��ʯ ����ѧ����ʹ���� 48 ����12.����Χ������������ �й��ٷ��׾��������߼������� 48 ����13.ԭ��̬ץ�ı���������ѧŮ�� ���ٳ��ú����ʼѣ� 44 ����14.����Ԫ��������ʳ���⡱ �ƹ������������(ͼ) 40 ����15.�����人������۽�ž��뾯����ͻ ��ʮ�������� 38 ����16.���ڱ�������Աǿ��Ů�Ӽ������� �ؼ�ػ���(��ͼ 37 ����17.���������ǽ�¶ƭ�ֵ�ʱ���� ������й����õ����� 35 ����18.��δδ��������ͼ�˽������ʱ����������˷��� 33 ����19.�й����򸻺���ЭίԱ�������� ������ʦ��������� 33 ����20.Яǹ����ʿ����ϸ������¶ �����ڱ����� �������� 32 ����21.Ů����һƶ��ϴ С͵���ҵ������� Ȱ��ҪŬ��׬Ǯ 31 ����22.���ַ�����������ǰ���󸱽��ڽ�������»���û�� 30 ����23.�¼��º��𾪣��й�����Я�޿��ȥ �������쾯�� 28 ����24.150Ԫһ���ֱ���������⡱�����Ͼ�ʳƷ������( 27 ����25.��ͼ�����ࣺ̽�س�����ͨ�ϰ��յ�����ϸ��(��ͼ) 27 ����26.�ѵ�һ���İ���ǰ�й���ɫ��Ƭ �����û����(��ͼ 26 ����27.����ͳ��ѡ�˿���������ɧ�� ��������Ů˽�ܴ�(�� 26 ����28.���������������Ϻ�ͶƱѡ���˴���� ����������Ͷ 25 ����29.���ѽ������ţ��й����޴�� ��ɼӺ�ֱ����ʧ20�� 25 ����30.������ʹ��������������ԭ�� ˹������в�����ɹű� 25 ����31.������ı�����������ࣺ���������ձ����(��ͼ 24 ����32.��������������� �������ӣ����ѿ�����ȫ���Ʋ� 24 ���� ������������DZ��Ǵ����Ѳ������� ��ë����ë �׼׼� �������£����ǵ�С �������� �ҼҵĻ�԰ ���S�L�� ����ɯ��(��ƪС˵���������ᡷ ���) snow2011 ���ٱ��񷴡���ռ�컪�����˶�������η��� �˼���֮��ի �����ĸ�ϴ��Ľ��������ǿ�������� ������ ��������ѧ�ң���Ѻ��������˼� ��Y�϶� �й���¥�����ļ�������԰����¥ kylelong ������������� ��ӣ�� ���꣬�Ǵ�������---�������ĺ�����־��6�� Զ�󸱴��� �������������׽�Ų� ƽ������ �뺣��ʶ��dz ��ѧ�ž���֪ ����һ�� �Ҽҵı�ķ��װ�޹� (��ƪС˵ һ) �����ǫ ����΢Ц֮����̩���ϰ�֮�� - ��̡� ������������ ���׵Ļ��� ���� �λع��� ���� �����ľ���---����ɫ��ǰ�Ļ������ ���� �����ܲ��Ĺ�Ч��Է� kylelong �򲹶�����ɽװ vs �򲹶�������T�� ���� ת��˼�룬���������������� light12 ������ͥ����Ů����������? ���� ���ĸɻ���--ʧ�ֶ�����ţ ���� ���ͻ��-��һ�ŷ��� ���� �����ڽ��� ƽ���Ķ���ʯ �Ӱ�һ�� ���Ҷ��ڽ����� Ů��Ӧ��ѧ������ ��¶Ϊ˪ ��ʳ������ǿ���𺳡��������󶭿�Ѽ����� ����ɫ ������֮�� goodoctor СŮ����˯��ǰ�ĶԻ� Զ�󸱴��� ʿ��ɱ������ alittlesmart ����վ: ��ҹ�����͵������վ ryu �ѵ��й����û�������ˣ� ��� ����̰������֮��������ۼ���Ԫ� k7k6w8 ���� jd918 ���Ӷ���ɢ�� ��1�� ����� �������� (2) epwon �й�������Ͷ����Щ���� cstar ѧϰһ��Ӣ�ĵ��ʣ�XO kylelong ̸̸��������ƶ���ֻ��IJ����͸�Դ putongren10 ��ÿ��һ�ˡ������㹽���Ź� ����С���� �����ļ������Ӿ� delilah ͯ��Ŀ������£�2�� fuji ����3 -- Ҷ��Ʈ�� pengl Ư���İ������� [10ͼ] homepeace лʢ�ѣ��γ�褻���һ�λ��� лʢ�� �丸�� leahzhang �й���ɫ��ǿ�顡��һ��а���˵�? �˿� �й��˽�С��������Ϊ������ ��Y�϶� �ٶȽ����һ�����ơ� kylelong �����ˣ����ڳ���С�ձ� kzhoulife ��л�ϵۣ��ɹ��ر����� amyleezhuo ��������������? ƽ������ ����Ԫ���Թ��⡢�����˰��� buweizhai �й���¥��������������������¥ kylelong ������¶����ʤ����΢Ц yzfoto �����ˬ������(ʮ��)����ʰ��--���벻���� ���������֪ �ý��� VANO �������������ˣ���ȴ���Ի���� ����С�鳤 �и��Ե�������ʦ qjd0520 ײ������ qjd0520 50�����µ��й�Ů�˶����Ǹ����У�һ�ζ��� ����ǧ�� �������1997���£� ��ӣ�� �������1997���ϣ� ��ӣ�� ������ɫ�� ���� ��һ��ͶƱ�ļ��� ��Ϊ��� ���� ��18+�� ���� �������ñ������߾�����ʥ�ǹ���� ֣�� ŮΪ�ü��ߡ��ʡ� ���� �������� >> ����ר�� ��������ż��������̿�?�ҵ��������ѱ��ݽ����������ֻ����������ɷ������û����ݵ�̫̫�ᱻ�ݽ������?�����������δ����������?������ǰ�Ƶ����þ���������ݽ���� ���ɱ���ʦ ��С����ʦ ���ɸ�Ц ����㽴�ϲ����ѽ @ ��Ц��ͼ �������� @ ��ɫЦ�� �����Ļ������������M������˭���ܼ�Ԧ���� @ ��Ц��ͼ ����ڣ�èү������ô��ɢ���£� @ ��Ц��ͼ ����̰С���� @ ��ɫЦ�� ���ţ�п��ţ�� @ ��ɫЦ�� ������ @ ��ɫЦ�� ��гһ���� @ ��Ц��ͼ ��˵�����������ʦ�����һ�ι������� @ ��Ц��ͼ [����] @ ����Ц�� ���� ��ɫ ��ͼ ��Ӱ��� Wild Ducks�����ʵ���Ϊ���ĵ��㣬�����۵İ��� ��΢����Ʒ��һ��İ������ǹʵ������ѩ֮��ŦԼ���������������ɽһ�ٸ�İ����---�Ჴ��С���� newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/JsonArrayAttributeTests.cs0000664000175000017500000000650312454416117027511 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests { [TestFixture] public class JsonArrayAttributeTests : TestFixtureBase { [Test] public void IsReferenceTest() { JsonPropertyAttribute attribute = new JsonPropertyAttribute(); Assert.AreEqual(null, attribute._isReference); Assert.AreEqual(false, attribute.IsReference); attribute.IsReference = false; Assert.AreEqual(false, attribute._isReference); Assert.AreEqual(false, attribute.IsReference); attribute.IsReference = true; Assert.AreEqual(true, attribute._isReference); Assert.AreEqual(true, attribute.IsReference); } [Test] public void NullValueHandlingTest() { JsonPropertyAttribute attribute = new JsonPropertyAttribute(); Assert.AreEqual(null, attribute._nullValueHandling); Assert.AreEqual(NullValueHandling.Include, attribute.NullValueHandling); attribute.NullValueHandling = NullValueHandling.Ignore; Assert.AreEqual(NullValueHandling.Ignore, attribute._nullValueHandling); Assert.AreEqual(NullValueHandling.Ignore, attribute.NullValueHandling); } [Test] public void DefaultValueHandlingTest() { JsonPropertyAttribute attribute = new JsonPropertyAttribute(); Assert.AreEqual(null, attribute._defaultValueHandling); Assert.AreEqual(DefaultValueHandling.Include, attribute.DefaultValueHandling); attribute.DefaultValueHandling = DefaultValueHandling.Ignore; Assert.AreEqual(DefaultValueHandling.Ignore, attribute._defaultValueHandling); Assert.AreEqual(DefaultValueHandling.Ignore, attribute.DefaultValueHandling); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/packages.config0000664000175000017500000000055112454416117025305 0ustar directhexdirecthex newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/0000775000175000017500000000000012454416117023242 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JTokenWriterTest.cs0000664000175000017500000002377212454416117027033 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if !(NET20 || NET35 || PORTABLE || PORTABLE40) using System.Numerics; #endif using System.Text; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json; using System.IO; using Newtonsoft.Json.Linq; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JTokenWriterTest : TestFixtureBase { [Test] public void ValueFormatting() { byte[] data = Encoding.UTF8.GetBytes("Hello world."); JToken root; using (JTokenWriter jsonWriter = new JTokenWriter()) { jsonWriter.WriteStartArray(); jsonWriter.WriteValue('@'); jsonWriter.WriteValue("\r\n\t\f\b?{\\r\\n\"\'"); jsonWriter.WriteValue(true); jsonWriter.WriteValue(10); jsonWriter.WriteValue(10.99); jsonWriter.WriteValue(0.99); jsonWriter.WriteValue(0.000000000000000001d); jsonWriter.WriteValue(0.000000000000000001m); jsonWriter.WriteValue((string)null); jsonWriter.WriteValue("This is a string."); jsonWriter.WriteNull(); jsonWriter.WriteUndefined(); jsonWriter.WriteValue(data); jsonWriter.WriteEndArray(); root = jsonWriter.Token; } CustomAssert.IsInstanceOfType(typeof(JArray), root); Assert.AreEqual(13, root.Children().Count()); Assert.AreEqual("@", (string)root[0]); Assert.AreEqual("\r\n\t\f\b?{\\r\\n\"\'", (string)root[1]); Assert.AreEqual(true, (bool)root[2]); Assert.AreEqual(10, (int)root[3]); Assert.AreEqual(10.99, (double)root[4]); Assert.AreEqual(0.99, (double)root[5]); Assert.AreEqual(0.000000000000000001d, (double)root[6]); Assert.AreEqual(0.000000000000000001m, (decimal)root[7]); Assert.AreEqual(null, (string)root[8]); Assert.AreEqual("This is a string.", (string)root[9]); Assert.AreEqual(null, ((JValue)root[10]).Value); Assert.AreEqual(null, ((JValue)root[11]).Value); Assert.AreEqual(data, (byte[])root[12]); } [Test] public void State() { using (JsonWriter jsonWriter = new JTokenWriter()) { Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); jsonWriter.WriteStartObject(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); jsonWriter.WritePropertyName("CPU"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); jsonWriter.WriteValue("Intel"); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); jsonWriter.WritePropertyName("Drives"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); jsonWriter.WriteStartArray(); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); jsonWriter.WriteValue("DVD read/writer"); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) jsonWriter.WriteValue(new BigInteger(123)); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); #endif jsonWriter.WriteValue(new byte[0]); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); jsonWriter.WriteEnd(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); jsonWriter.WriteEndObject(); Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); } } [Test] public void CurrentToken() { using (JTokenWriter jsonWriter = new JTokenWriter()) { Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); Assert.AreEqual(null, jsonWriter.CurrentToken); jsonWriter.WriteStartObject(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); Assert.AreEqual(jsonWriter.Token, jsonWriter.CurrentToken); JObject o = (JObject)jsonWriter.Token; jsonWriter.WritePropertyName("CPU"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); Assert.AreEqual(o.Property("CPU"), jsonWriter.CurrentToken); jsonWriter.WriteValue("Intel"); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); Assert.AreEqual(o["CPU"], jsonWriter.CurrentToken); jsonWriter.WritePropertyName("Drives"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); Assert.AreEqual(o.Property("Drives"), jsonWriter.CurrentToken); jsonWriter.WriteStartArray(); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); Assert.AreEqual(o["Drives"], jsonWriter.CurrentToken); JArray a = (JArray)jsonWriter.CurrentToken; jsonWriter.WriteValue("DVD read/writer"); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); Assert.AreEqual(a[a.Count - 1], jsonWriter.CurrentToken); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) jsonWriter.WriteValue(new BigInteger(123)); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); Assert.AreEqual(a[a.Count - 1], jsonWriter.CurrentToken); #endif jsonWriter.WriteValue(new byte[0]); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); Assert.AreEqual(a[a.Count - 1], jsonWriter.CurrentToken); jsonWriter.WriteEnd(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); Assert.AreEqual(a, jsonWriter.CurrentToken); jsonWriter.WriteEndObject(); Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); Assert.AreEqual(o, jsonWriter.CurrentToken); } } [Test] public void WriteComment() { JTokenWriter writer = new JTokenWriter(); writer.WriteStartArray(); writer.WriteComment("fail"); writer.WriteEndArray(); StringAssert.AreEqual(@"[ /*fail*/]", writer.Token.ToString()); } #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void WriteBigInteger() { JTokenWriter writer = new JTokenWriter(); writer.WriteStartArray(); writer.WriteValue(new BigInteger(123)); writer.WriteEndArray(); JValue i = (JValue)writer.Token[0]; Assert.AreEqual(new BigInteger(123), i.Value); Assert.AreEqual(JTokenType.Integer, i.Type); StringAssert.AreEqual(@"[ 123 ]", writer.Token.ToString()); } #endif [Test] public void WriteRaw() { JTokenWriter writer = new JTokenWriter(); writer.WriteStartArray(); writer.WriteRaw("fail"); writer.WriteRaw("fail"); writer.WriteEndArray(); // this is a bug. write raw shouldn't be autocompleting like this // hard to fix without introducing Raw and RawValue token types // meh StringAssert.AreEqual(@"[ fail, fail ]", writer.Token.ToString()); } [Test] public void WriteRawValue() { JTokenWriter writer = new JTokenWriter(); writer.WriteStartArray(); writer.WriteRawValue("fail"); writer.WriteRawValue("fail"); writer.WriteEndArray(); StringAssert.AreEqual(@"[ fail, fail ]", writer.Token.ToString()); } [Test] public void DateTimeZoneHandling() { JTokenWriter writer = new JTokenWriter { DateTimeZoneHandling = Json.DateTimeZoneHandling.Utc }; writer.WriteValue(new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Unspecified)); JValue value = (JValue)writer.Token; DateTime dt = (DateTime)value.Value; Assert.AreEqual(new DateTime(2000, 1, 1, 1, 1, 1, DateTimeKind.Utc), dt); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JTokenEqualityComparerTests.cs0000664000175000017500000000727312454416117031226 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JTokenEqualityComparerTests : TestFixtureBase { [Test] public void CompareEmptyProperties() { JObject o1 = JObject.Parse("{}"); o1.Add(new JProperty("hi")); JObject o2 = JObject.Parse("{}"); o2.Add(new JProperty("hi")); JTokenEqualityComparer c = new JTokenEqualityComparer(); Assert.IsTrue(c.Equals(o1, o2)); o1["hi"] = 10; Assert.IsFalse(c.Equals(o1, o2)); } [Test] public void JValueDictionary() { Dictionary dic = new Dictionary(JToken.EqualityComparer); JValue v11 = new JValue(1); JValue v12 = new JValue(1); dic[v11] = 1; dic[v12] += 1; Assert.AreEqual(2, dic[v11]); } [Test] public void JArrayDictionary() { Dictionary dic = new Dictionary(JToken.EqualityComparer); JArray v11 = new JArray(); JArray v12 = new JArray(); dic[v11] = 1; dic[v12] += 1; Assert.AreEqual(2, dic[v11]); } [Test] public void JObjectDictionary() { Dictionary dic = new Dictionary(JToken.EqualityComparer); JObject v11 = new JObject() { { "Test", new JValue(1) }, { "Test1", new JValue(1) } }; JObject v12 = new JObject() { { "Test", new JValue(1) }, { "Test1", new JValue(1) } }; dic[v11] = 1; dic[v12] += 1; Assert.AreEqual(2, dic[v11]); } [Test] public void JConstructorDictionary() { Dictionary dic = new Dictionary(JToken.EqualityComparer); JConstructor v11 = new JConstructor("ConstructorValue"); JConstructor v12 = new JConstructor("ConstructorValue"); dic[v11] = 1; dic[v12] += 1; Assert.AreEqual(2, dic[v11]); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JConstructorTests.cs0000664000175000017500000000722512454416117027261 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using System.IO; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JConstructorTests : TestFixtureBase { [Test] public void Load() { JsonReader reader = new JsonTextReader(new StringReader("new Date(123)")); reader.Read(); JConstructor constructor = JConstructor.Load(reader); Assert.AreEqual("Date", constructor.Name); Assert.IsTrue(JToken.DeepEquals(new JValue(123), constructor.Values().ElementAt(0))); } [Test] public void CreateWithMultiValue() { JConstructor constructor = new JConstructor("Test", new List { 1, 2, 3 }); Assert.AreEqual("Test", constructor.Name); Assert.AreEqual(3, constructor.Children().Count()); Assert.AreEqual(1, (int)constructor.Children().ElementAt(0)); Assert.AreEqual(2, (int)constructor.Children().ElementAt(1)); Assert.AreEqual(3, (int)constructor.Children().ElementAt(2)); } [Test] public void Iterate() { JConstructor c = new JConstructor("MrConstructor", 1, 2, 3, 4, 5); int i = 1; foreach (JToken token in c) { Assert.AreEqual(i, (int)token); i++; } } [Test] public void SetValueWithInvalidIndex() { ExceptionAssert.Throws(() => { JConstructor c = new JConstructor(); c["badvalue"] = new JValue(3); }, @"Set JConstructor values with invalid key value: ""badvalue"". Argument position index expected."); } [Test] public void SetValue() { object key = 0; JConstructor c = new JConstructor(); c.Name = "con"; c.Add(null); c[key] = new JValue(3); Assert.AreEqual(3, (int)c[key]); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JTokenReaderTest.cs0000664000175000017500000005476212454416117026764 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json; using System.IO; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Tests.Serialization; using Newtonsoft.Json.Tests.TestObjects; namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JTokenReaderTest : TestFixtureBase { [Test] public void ErrorTokenIndex() { JObject json = JObject.Parse(@"{""IntList"":[1, ""two""]}"); ExceptionAssert.Throws(() => { JsonSerializer serializer = new JsonSerializer(); serializer.Deserialize(json.CreateReader()); }, "Could not convert string to integer: two. Path 'IntList[1]', line 1, position 20."); } #if !NET20 [Test] public void YahooFinance() { JObject o = new JObject( new JProperty("Test1", new DateTime(2000, 10, 15, 5, 5, 5, DateTimeKind.Utc)), new JProperty("Test2", new DateTimeOffset(2000, 10, 15, 5, 5, 5, new TimeSpan(11, 11, 0))), new JProperty("Test3", "Test3Value"), new JProperty("Test4", null) ); using (JTokenReader jsonReader = new JTokenReader(o)) { IJsonLineInfo lineInfo = jsonReader; jsonReader.Read(); Assert.AreEqual(JsonToken.StartObject, jsonReader.TokenType); Assert.AreEqual(false, lineInfo.HasLineInfo()); jsonReader.Read(); Assert.AreEqual(JsonToken.PropertyName, jsonReader.TokenType); Assert.AreEqual("Test1", jsonReader.Value); Assert.AreEqual(false, lineInfo.HasLineInfo()); jsonReader.Read(); Assert.AreEqual(JsonToken.Date, jsonReader.TokenType); Assert.AreEqual(new DateTime(2000, 10, 15, 5, 5, 5, DateTimeKind.Utc), jsonReader.Value); Assert.AreEqual(false, lineInfo.HasLineInfo()); Assert.AreEqual(0, lineInfo.LinePosition); Assert.AreEqual(0, lineInfo.LineNumber); jsonReader.Read(); Assert.AreEqual(JsonToken.PropertyName, jsonReader.TokenType); Assert.AreEqual("Test2", jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Date, jsonReader.TokenType); Assert.AreEqual(new DateTimeOffset(2000, 10, 15, 5, 5, 5, new TimeSpan(11, 11, 0)), jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.PropertyName, jsonReader.TokenType); Assert.AreEqual("Test3", jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.String, jsonReader.TokenType); Assert.AreEqual("Test3Value", jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.PropertyName, jsonReader.TokenType); Assert.AreEqual("Test4", jsonReader.Value); jsonReader.Read(); Assert.AreEqual(JsonToken.Null, jsonReader.TokenType); Assert.AreEqual(null, jsonReader.Value); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.EndObject, jsonReader.TokenType); Assert.IsFalse(jsonReader.Read()); Assert.AreEqual(JsonToken.None, jsonReader.TokenType); } using (JsonReader jsonReader = new JTokenReader(o.Property("Test2"))) { Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.PropertyName, jsonReader.TokenType); Assert.AreEqual("Test2", jsonReader.Value); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.Date, jsonReader.TokenType); Assert.AreEqual(new DateTimeOffset(2000, 10, 15, 5, 5, 5, new TimeSpan(11, 11, 0)), jsonReader.Value); Assert.IsFalse(jsonReader.Read()); Assert.AreEqual(JsonToken.None, jsonReader.TokenType); } } [Test] public void ReadAsDateTimeOffsetBadString() { string json = @"{""Offset"":""blablahbla""}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); ExceptionAssert.Throws(() => { reader.ReadAsDateTimeOffset(); }, "Could not convert string to DateTimeOffset: blablahbla. Path 'Offset', line 1, position 22."); } [Test] public void ReadAsDateTimeOffsetBoolean() { string json = @"{""Offset"":true}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); ExceptionAssert.Throws(() => { reader.ReadAsDateTimeOffset(); }, "Error reading date. Unexpected token: Boolean. Path 'Offset', line 1, position 14."); } [Test] public void ReadAsDateTimeOffsetString() { string json = @"{""Offset"":""2012-01-24T03:50Z""}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDateTimeOffset(); Assert.AreEqual(JsonToken.Date, reader.TokenType); Assert.AreEqual(typeof(DateTimeOffset), reader.ValueType); Assert.AreEqual(new DateTimeOffset(2012, 1, 24, 3, 50, 0, TimeSpan.Zero), reader.Value); } #endif [Test] public void ReadLineInfo() { string input = @"{ CPU: 'Intel', Drives: [ 'DVD read/writer', ""500 gigabyte hard drive"" ] }"; JObject o = JObject.Parse(input); using (JTokenReader jsonReader = new JTokenReader(o)) { IJsonLineInfo lineInfo = jsonReader; Assert.AreEqual(jsonReader.TokenType, JsonToken.None); Assert.AreEqual(0, lineInfo.LineNumber); Assert.AreEqual(0, lineInfo.LinePosition); Assert.AreEqual(false, lineInfo.HasLineInfo()); Assert.AreEqual(null, jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.StartObject); Assert.AreEqual(1, lineInfo.LineNumber); Assert.AreEqual(1, lineInfo.LinePosition); Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(o, jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.PropertyName); Assert.AreEqual(jsonReader.Value, "CPU"); Assert.AreEqual(2, lineInfo.LineNumber); Assert.AreEqual(7, lineInfo.LinePosition); Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(o.Property("CPU"), jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.String); Assert.AreEqual(jsonReader.Value, "Intel"); Assert.AreEqual(2, lineInfo.LineNumber); Assert.AreEqual(15, lineInfo.LinePosition); Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(o.Property("CPU").Value, jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.PropertyName); Assert.AreEqual(jsonReader.Value, "Drives"); Assert.AreEqual(3, lineInfo.LineNumber); Assert.AreEqual(10, lineInfo.LinePosition); Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(o.Property("Drives"), jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.StartArray); Assert.AreEqual(3, lineInfo.LineNumber); Assert.AreEqual(12, lineInfo.LinePosition); Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(o.Property("Drives").Value, jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.String); Assert.AreEqual(jsonReader.Value, "DVD read/writer"); Assert.AreEqual(4, lineInfo.LineNumber); Assert.AreEqual(22, lineInfo.LinePosition); Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(o["Drives"][0], jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.String); Assert.AreEqual(jsonReader.Value, "500 gigabyte hard drive"); Assert.AreEqual(5, lineInfo.LineNumber); Assert.AreEqual(30, lineInfo.LinePosition); Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(o["Drives"][1], jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.EndArray); Assert.AreEqual(3, lineInfo.LineNumber); Assert.AreEqual(12, lineInfo.LinePosition); Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(o["Drives"], jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.EndObject); Assert.AreEqual(1, lineInfo.LineNumber); Assert.AreEqual(1, lineInfo.LinePosition); Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(o, jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.None); Assert.AreEqual(null, jsonReader.CurrentToken); jsonReader.Read(); Assert.AreEqual(jsonReader.TokenType, JsonToken.None); Assert.AreEqual(null, jsonReader.CurrentToken); } } [Test] public void ReadBytes() { byte[] data = Encoding.UTF8.GetBytes("Hello world!"); JObject o = new JObject( new JProperty("Test1", data) ); using (JTokenReader jsonReader = new JTokenReader(o)) { jsonReader.Read(); Assert.AreEqual(JsonToken.StartObject, jsonReader.TokenType); jsonReader.Read(); Assert.AreEqual(JsonToken.PropertyName, jsonReader.TokenType); Assert.AreEqual("Test1", jsonReader.Value); byte[] readBytes = jsonReader.ReadAsBytes(); Assert.AreEqual(data, readBytes); Assert.IsTrue(jsonReader.Read()); Assert.AreEqual(JsonToken.EndObject, jsonReader.TokenType); Assert.IsFalse(jsonReader.Read()); Assert.AreEqual(JsonToken.None, jsonReader.TokenType); } } [Test] public void ReadBytesFailure() { ExceptionAssert.Throws(() => { JObject o = new JObject( new JProperty("Test1", 1) ); using (JTokenReader jsonReader = new JTokenReader(o)) { jsonReader.Read(); Assert.AreEqual(JsonToken.StartObject, jsonReader.TokenType); jsonReader.Read(); Assert.AreEqual(JsonToken.PropertyName, jsonReader.TokenType); Assert.AreEqual("Test1", jsonReader.Value); jsonReader.ReadAsBytes(); } }, "Error reading bytes. Unexpected token: Integer. Path 'Test1'."); } public class HasBytes { public byte[] Bytes { get; set; } } [Test] public void ReadBytesFromString() { var bytes = new HasBytes { Bytes = new byte[] { 1, 2, 3, 4 } }; var json = JsonConvert.SerializeObject(bytes); TextReader textReader = new StringReader(json); JsonReader jsonReader = new JsonTextReader(textReader); var jToken = JToken.ReadFrom(jsonReader); jsonReader = new JTokenReader(jToken); var result2 = (HasBytes)JsonSerializer.Create(null) .Deserialize(jsonReader, typeof(HasBytes)); CollectionAssert.AreEqual(new byte[] { 1, 2, 3, 4 }, result2.Bytes); } [Test] public void ReadBytesFromEmptyString() { var bytes = new HasBytes { Bytes = new byte[0] }; var json = JsonConvert.SerializeObject(bytes); TextReader textReader = new StringReader(json); JsonReader jsonReader = new JsonTextReader(textReader); var jToken = JToken.ReadFrom(jsonReader); jsonReader = new JTokenReader(jToken); var result2 = (HasBytes)JsonSerializer.Create(null) .Deserialize(jsonReader, typeof(HasBytes)); CollectionAssert.AreEquivalent(new byte[0], result2.Bytes); } public class ReadAsBytesTestObject { public byte[] Data; } [Test] public void ReadAsBytesNull() { JsonSerializer s = new JsonSerializer(); JToken nullToken = JToken.ReadFrom(new JsonTextReader(new StringReader("{ Data: null }"))); ReadAsBytesTestObject x = s.Deserialize(new JTokenReader(nullToken)); Assert.IsNull(x.Data); } [Test] public void DeserializeByteArrayWithTypeNameHandling() { TestObject test = new TestObject("Test", new byte[] { 72, 63, 62, 71, 92, 55 }); string json = JsonConvert.SerializeObject(test, Formatting.Indented, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }); JObject o = JObject.Parse(json); JsonSerializer serializer = new JsonSerializer(); serializer.TypeNameHandling = TypeNameHandling.All; using (JsonReader nodeReader = o.CreateReader()) { // Get exception here TestObject newObject = (TestObject)serializer.Deserialize(nodeReader); Assert.AreEqual("Test", newObject.Name); CollectionAssert.AreEquivalent(new byte[] { 72, 63, 62, 71, 92, 55 }, newObject.Data); } } [Test] public void DeserializeStringInt() { string json = @"{ ""PreProperty"": ""99"", ""PostProperty"": ""-1"" }"; JObject o = JObject.Parse(json); JsonSerializer serializer = new JsonSerializer(); using (JsonReader nodeReader = o.CreateReader()) { MyClass c = serializer.Deserialize(nodeReader); Assert.AreEqual(99, c.PreProperty); Assert.AreEqual(-1, c.PostProperty); } } [Test] public void ReadAsDecimalInt() { string json = @"{""Name"":1}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(typeof(decimal), reader.ValueType); Assert.AreEqual(1m, reader.Value); } [Test] public void ReadAsInt32Int() { string json = @"{""Name"":1}"; JObject o = JObject.Parse(json); JTokenReader reader = (JTokenReader)o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.AreEqual(o, reader.CurrentToken); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.AreEqual(o.Property("Name"), reader.CurrentToken); reader.ReadAsInt32(); Assert.AreEqual(o["Name"], reader.CurrentToken); Assert.AreEqual(JsonToken.Integer, reader.TokenType); Assert.AreEqual(typeof(int), reader.ValueType); Assert.AreEqual(1, reader.Value); } [Test] public void ReadAsInt32BadString() { string json = @"{""Name"":""hi""}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); ExceptionAssert.Throws(() => { reader.ReadAsInt32(); }, "Could not convert string to integer: hi. Path 'Name', line 1, position 12."); } [Test] public void ReadAsInt32Boolean() { string json = @"{""Name"":true}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); ExceptionAssert.Throws(() => { reader.ReadAsInt32(); }, "Error reading integer. Unexpected token: Boolean. Path 'Name', line 1, position 12."); } [Test] public void ReadAsDecimalString() { string json = @"{""Name"":""1.1""}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Float, reader.TokenType); Assert.AreEqual(typeof(decimal), reader.ValueType); Assert.AreEqual(1.1m, reader.Value); } [Test] public void ReadAsDecimalBadString() { string json = @"{""Name"":""blah""}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); ExceptionAssert.Throws(() => { reader.ReadAsDecimal(); }, "Could not convert string to decimal: blah. Path 'Name', line 1, position 14."); } [Test] public void ReadAsDecimalBoolean() { string json = @"{""Name"":true}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); ExceptionAssert.Throws(() => { reader.ReadAsDecimal(); }, "Error reading decimal. Unexpected token: Boolean. Path 'Name', line 1, position 12."); } [Test] public void ReadAsDecimalNull() { string json = @"{""Name"":null}"; JObject o = JObject.Parse(json); JsonReader reader = o.CreateReader(); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); reader.ReadAsDecimal(); Assert.AreEqual(JsonToken.Null, reader.TokenType); Assert.AreEqual(null, reader.ValueType); Assert.AreEqual(null, reader.Value); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/DynamicTests.cs0000664000175000017500000007426112454416117026212 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Diagnostics; #if !(NET35 || NET20 || PORTABLE40) using System; using System.Collections.Generic; using System.Dynamic; using System.Linq; #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif using System.Text; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Utilities; using System.Globalization; namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class DynamicTests : TestFixtureBase { private void UpdateValueCount(IDictionary counts, dynamic d) { string s = d.ToString(); int c; if (!counts.TryGetValue(s, out c)) { c = 0; } c++; counts[s] = c; } #if !NETFX_CORE [Test] public void DeserializeLargeDynamic() { dynamic d; using (var jsonFile = System.IO.File.OpenText("large.json")) using (JsonTextReader jsonTextReader = new JsonTextReader(jsonFile)) { JsonSerializer serializer = new JsonSerializer(); d = serializer.Deserialize(jsonTextReader); } IDictionary counts = new Dictionary(); Stopwatch sw = new Stopwatch(); sw.Start(); foreach (dynamic o in d) { foreach (dynamic friend in o.friends) { UpdateValueCount(counts, friend.id); UpdateValueCount(counts, ((string) friend.name).Split(' ')[0]); } } //foreach (KeyValuePair keyValuePair in counts) //{ // Console.WriteLine(keyValuePair.Key + ": " + keyValuePair.Value); //} Console.WriteLine("Time (secs): " + sw.Elapsed.TotalSeconds); } #endif [Test] public void JObjectPropertyNames() { JObject o = new JObject( new JProperty("ChildValue", "blah blah")); dynamic d = o; d.First = "A value!"; Assert.AreEqual(new JValue("A value!"), d.First); Assert.AreEqual("A value!", (string)d.First); d.First = null; Assert.AreEqual(JTokenType.Null, d.First.Type); Assert.IsTrue(d.Remove("First")); Assert.IsNull(d.First); JValue v1 = d.ChildValue; JValue v2 = d["ChildValue"]; Assert.AreEqual(v1, v2); JValue newValue1 = new JValue("Blah blah"); d.NewValue = newValue1; JValue newValue2 = d.NewValue; Assert.IsTrue(ReferenceEquals(newValue1, newValue2)); } [Test] public void JObjectCount() { JObject o = new JObject(); dynamic d = o; long? c1 = d.Count; o["Count"] = 99; long? c2 = d.Count; Assert.AreEqual(null, c1); Assert.AreEqual(99, c2); } [Test] public void JObjectEnumerator() { JObject o = new JObject( new JProperty("ChildValue", "blah blah")); dynamic d = o; foreach (JProperty value in d) { Assert.AreEqual("ChildValue", value.Name); Assert.AreEqual("blah blah", (string)value.Value); } foreach (dynamic value in d) { Assert.AreEqual("ChildValue", value.Name); Assert.AreEqual("blah blah", (string)value.Value); } } [Test] public void JObjectPropertyNameWithJArray() { JObject o = new JObject( new JProperty("ChildValue", "blah blah")); dynamic d = o; d.First = new JArray(); d.First.Add("Hi"); Assert.AreEqual(1, d.First.Count); } [Test] public void JObjectPropertyNameWithNonToken() { ExceptionAssert.Throws(() => { dynamic d = new JObject(); d.First = new[] { "One", "II", "3" }; }, "Could not determine JSON object type for type System.String[]."); } [Test] public void JObjectMethods() { JObject o = new JObject( new JProperty("ChildValue", "blah blah")); dynamic d = o; d.Add("NewValue", 1); object count = d.Count; Assert.IsNull(count); Assert.IsNull(d["Count"]); JToken v; Assert.IsTrue(d.TryGetValue("ChildValue", out v)); Assert.AreEqual("blah blah", (string)v); } [Test] public void JValueEquals() { JObject o = new JObject( new JProperty("Null", JValue.CreateNull()), new JProperty("Integer", new JValue(1)), new JProperty("Float", new JValue(1.1d)), new JProperty("Decimal", new JValue(1.1m)), new JProperty("DateTime", new JValue(new DateTime(2000, 12, 29, 23, 51, 10, DateTimeKind.Utc))), new JProperty("Boolean", new JValue(true)), new JProperty("String", new JValue("A string lol!")), new JProperty("Bytes", new JValue(Encoding.UTF8.GetBytes("A string lol!"))), new JProperty("Uri", new Uri("http://json.codeplex.com/")), new JProperty("Guid", new Guid("EA27FE1D-0D80-44F2-BF34-4654156FA7AF")), new JProperty("TimeSpan", TimeSpan.FromDays(1)) #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) , new JProperty("BigInteger", BigInteger.Parse("1")) #endif ); dynamic d = o; Assert.IsTrue(d.Null == d.Null); Assert.IsTrue(d.Null == null); Assert.IsTrue(d.Null == JValue.CreateNull()); Assert.IsFalse(d.Null == 1); Assert.IsTrue(d.Integer == d.Integer); Assert.IsTrue(d.Integer > 0); Assert.IsTrue(d.Integer > 0.0m); Assert.IsTrue(d.Integer > 0.0f); Assert.IsTrue(d.Integer > null); Assert.IsTrue(d.Integer >= null); Assert.IsTrue(d.Integer == 1); Assert.IsTrue(d.Integer == 1m); Assert.IsTrue(d.Integer != 1.1f); Assert.IsTrue(d.Integer != 1.1d); Assert.IsTrue(d.Decimal == d.Decimal); Assert.IsTrue(d.Decimal > 0); Assert.IsTrue(d.Decimal > 0.0m); Assert.IsTrue(d.Decimal > 0.0f); Assert.IsTrue(d.Decimal > null); Assert.IsTrue(d.Decimal >= null); Assert.IsTrue(d.Decimal == 1.1); Assert.IsTrue(d.Decimal == 1.1m); Assert.IsTrue(d.Decimal != 1.0f); Assert.IsTrue(d.Decimal != 1.0d); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) Assert.IsTrue(d.Decimal > new BigInteger(0)); #endif Assert.IsTrue(d.Float == d.Float); Assert.IsTrue(d.Float > 0); Assert.IsTrue(d.Float > 0.0m); Assert.IsTrue(d.Float > 0.0f); Assert.IsTrue(d.Float > null); Assert.IsTrue(d.Float >= null); Assert.IsTrue(d.Float < 2); Assert.IsTrue(d.Float <= 1.1); Assert.IsTrue(d.Float == 1.1); Assert.IsTrue(d.Float == 1.1m); Assert.IsTrue(d.Float != 1.0f); Assert.IsTrue(d.Float != 1.0d); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) Assert.IsTrue(d.Float > new BigInteger(0)); #endif #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) Assert.IsTrue(d.BigInteger == d.BigInteger); Assert.IsTrue(d.BigInteger > 0); Assert.IsTrue(d.BigInteger > 0.0m); Assert.IsTrue(d.BigInteger > 0.0f); Assert.IsTrue(d.BigInteger > null); Assert.IsTrue(d.BigInteger >= null); Assert.IsTrue(d.BigInteger < 2); Assert.IsTrue(d.BigInteger <= 1.1); Assert.IsTrue(d.BigInteger == 1); Assert.IsTrue(d.BigInteger == 1m); Assert.IsTrue(d.BigInteger != 1.1f); Assert.IsTrue(d.BigInteger != 1.1d); #endif Assert.IsTrue(d.Bytes == d.Bytes); Assert.IsTrue(d.Bytes == Encoding.UTF8.GetBytes("A string lol!")); Assert.IsTrue(d.Bytes == new JValue(Encoding.UTF8.GetBytes("A string lol!"))); Assert.IsTrue(d.Uri == d.Uri); Assert.IsTrue(d.Uri == new Uri("http://json.codeplex.com/")); Assert.IsTrue(d.Uri > new Uri("http://abc.org/")); Assert.IsTrue(d.Uri >= new Uri("http://abc.com/")); Assert.IsTrue(d.Uri > null); Assert.IsTrue(d.Uri >= null); Assert.IsTrue(d.Guid == d.Guid); Assert.IsTrue(d.Guid == new Guid("EA27FE1D-0D80-44F2-BF34-4654156FA7AF")); Assert.IsTrue(d.Guid > new Guid("AAAAAAAA-0D80-44F2-BF34-4654156FA7AF")); Assert.IsTrue(d.Guid >= new Guid("AAAAAAAA-0D80-44F2-BF34-4654156FA7AF")); Assert.IsTrue(d.Guid > null); Assert.IsTrue(d.Guid >= null); Assert.IsTrue(d.TimeSpan == d.TimeSpan); Assert.IsTrue(d.TimeSpan == TimeSpan.FromDays(1)); Assert.IsTrue(d.TimeSpan > TimeSpan.FromHours(1)); Assert.IsTrue(d.TimeSpan >= TimeSpan.FromHours(1)); Assert.IsTrue(d.TimeSpan > null); Assert.IsTrue(d.TimeSpan >= null); } [Test] public void JValueAddition() { JObject o = new JObject( new JProperty("Null", JValue.CreateNull()), new JProperty("Integer", new JValue(1)), new JProperty("Float", new JValue(1.1d)), new JProperty("Decimal", new JValue(1.1m)), new JProperty("DateTime", new JValue(new DateTime(2000, 12, 29, 23, 51, 10, DateTimeKind.Utc))), new JProperty("Boolean", new JValue(true)), new JProperty("String", new JValue("A string lol!")), new JProperty("Bytes", new JValue(Encoding.UTF8.GetBytes("A string lol!"))), new JProperty("Uri", new Uri("http://json.codeplex.com/")), new JProperty("Guid", new Guid("EA27FE1D-0D80-44F2-BF34-4654156FA7AF")), new JProperty("TimeSpan", TimeSpan.FromDays(1)) #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) , new JProperty("BigInteger", new BigInteger(100)) #endif ); dynamic d = o; dynamic r; #region Add r = d.String + " LAMO!"; Assert.AreEqual("A string lol! LAMO!", (string)r); r += " gg"; Assert.AreEqual("A string lol! LAMO! gg", (string)r); r = d.String + null; Assert.AreEqual("A string lol!", (string)r); r += null; Assert.AreEqual("A string lol!", (string)r); r = d.Integer + 1; Assert.AreEqual(2, (int)r); r += 2; Assert.AreEqual(4, (int)r); r = d.Integer + 1.1; Assert.AreEqual(2.1, (double)r); r += 2; Assert.AreEqual(4.1, (double)r); r = d.Integer + 1.1d; Assert.AreEqual(2.1m, (decimal)r); r += 2; Assert.AreEqual(4.1m, (decimal)r); r = d.Integer + null; Assert.AreEqual(null, r.Value); r += 2; Assert.AreEqual(null, r.Value); r = d.Float + 1; Assert.AreEqual(2.1d, (double)r); r += 2; Assert.AreEqual(4.1d, (double)r); r = d.Float + 1.1; Assert.AreEqual(2.2d, (double)r); r += 2; Assert.AreEqual(4.2d, (double)r); r = d.Float + 1.1d; Assert.AreEqual(2.2m, (decimal)r); r += 2; Assert.AreEqual(4.2m, (decimal)r); r = d.Float + null; Assert.AreEqual(null, r.Value); r += 2; Assert.AreEqual(null, r.Value); r = d.Decimal + 1; Assert.AreEqual(2.1m, (decimal)r); r += 2; Assert.AreEqual(4.1m, (decimal)r); r = d.Decimal + 1.1; Assert.AreEqual(2.2m, (decimal)r); r += 2; Assert.AreEqual(4.2m, (decimal)r); r = d.Decimal + 1.1d; Assert.AreEqual(2.2m, (decimal)r); r += 2; Assert.AreEqual(4.2m, (decimal)r); r = d.Decimal + null; Assert.AreEqual(null, r.Value); r += 2; Assert.AreEqual(null, r.Value); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) r = d.BigInteger + null; Assert.AreEqual(null, r.Value); r += 2; Assert.AreEqual(null, r.Value); r = d.BigInteger + 1; Assert.AreEqual(101, (int)r); r += 2; Assert.AreEqual(103, (int)r); r = d.BigInteger + 1.1d; Assert.AreEqual(101m, (decimal)r); r += 2; Assert.AreEqual(103m, (decimal)r); #endif #endregion #region Subtract r = d.Integer - 1; Assert.AreEqual(0, (int)r); r -= 2; Assert.AreEqual(-2, (int)r); r = d.Integer - 1.1; Assert.AreEqual(-0.1d, (double)r, 0.00001); r -= 2; Assert.AreEqual(-2.1d, (double)r); r = d.Integer - 1.1d; Assert.AreEqual(-0.1m, (decimal)r); r -= 2; Assert.AreEqual(-2.1m, (decimal)r); r = d.Integer - null; Assert.AreEqual(null, r.Value); r -= 2; Assert.AreEqual(null, r.Value); r = d.Float - 1; Assert.AreEqual(0.1d, (double)r, 0.00001); r -= 2; Assert.AreEqual(-1.9d, (double)r); r = d.Float - 1.1; Assert.AreEqual(0d, (double)r); r -= 2; Assert.AreEqual(-2d, (double)r); r = d.Float - 1.1d; Assert.AreEqual(0m, (decimal)r); r -= 2; Assert.AreEqual(-2m, (decimal)r); r = d.Float - null; Assert.AreEqual(null, r.Value); r -= 2; Assert.AreEqual(null, r.Value); r = d.Decimal - 1; Assert.AreEqual(0.1m, (decimal)r); r -= 2; Assert.AreEqual(-1.9m, (decimal)r); r = d.Decimal - 1.1; Assert.AreEqual(0m, (decimal)r); r -= 2; Assert.AreEqual(-2m, (decimal)r); r = d.Decimal - 1.1d; Assert.AreEqual(0m, (decimal)r); r -= 2; Assert.AreEqual(-2m, (decimal)r); r = d.Decimal - null; Assert.AreEqual(null, r.Value); r -= 2; Assert.AreEqual(null, r.Value); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) r = d.BigInteger - null; Assert.AreEqual(null, r.Value); r -= 2; Assert.AreEqual(null, r.Value); r = d.BigInteger - 1.1d; Assert.AreEqual(99m, (decimal)r); r -= 2; Assert.AreEqual(97m, (decimal)r); #endif #endregion #region Multiply r = d.Integer * 1; Assert.AreEqual(1, (int)r); r *= 2; Assert.AreEqual(2, (int)r); r = d.Integer * 1.1; Assert.AreEqual(1.1d, (double)r); r *= 2; Assert.AreEqual(2.2d, (double)r); r = d.Integer * 1.1d; Assert.AreEqual(1.1m, (decimal)r); r *= 2; Assert.AreEqual(2.2m, (decimal)r); r = d.Integer * null; Assert.AreEqual(null, r.Value); r *= 2; Assert.AreEqual(null, r.Value); r = d.Float * 1; Assert.AreEqual(1.1d, (double)r); r *= 2; Assert.AreEqual(2.2d, (double)r); r = d.Float * 1.1; Assert.AreEqual(1.21d, (double)r, 0.00001); r *= 2; Assert.AreEqual(2.42d, (double)r, 0.00001); r = d.Float * 1.1d; Assert.AreEqual(1.21m, (decimal)r); r *= 2; Assert.AreEqual(2.42m, (decimal)r); r = d.Float * null; Assert.AreEqual(null, r.Value); r *= 2; Assert.AreEqual(null, r.Value); r = d.Decimal * 1; Assert.AreEqual(1.1m, (decimal)r); r *= 2; Assert.AreEqual(2.2m, (decimal)r); r = d.Decimal * 1.1; Assert.AreEqual(1.21m, (decimal)r); r *= 2; Assert.AreEqual(2.42m, (decimal)r); r = d.Decimal * 1.1d; Assert.AreEqual(1.21m, (decimal)r); r *= 2; Assert.AreEqual(2.42m, (decimal)r); r = d.Decimal * null; Assert.AreEqual(null, r.Value); r *= 2; Assert.AreEqual(null, r.Value); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) r = d.BigInteger * 1.1d; Assert.AreEqual(100m, (decimal)r); r *= 2; Assert.AreEqual(200m, (decimal)r); r = d.BigInteger * null; Assert.AreEqual(null, r.Value); r *= 2; Assert.AreEqual(null, r.Value); #endif #endregion #region Divide r = d.Integer / 1; Assert.AreEqual(1, (int)r); r /= 2; Assert.AreEqual(0, (int)r); r = d.Integer / 1.1; Assert.AreEqual(0.9090909090909091d, (double)r); r /= 2; Assert.AreEqual(0.454545454545455d, (double)r, 0.00001); r = d.Integer / 1.1d; Assert.AreEqual(0.909090909090909m, (decimal)r); r /= 2; Assert.AreEqual(0.454545454545454m, (decimal)r); r = d.Integer / null; Assert.AreEqual(null, r.Value); r /= 2; Assert.AreEqual(null, r.Value); r = d.Float / 1; Assert.AreEqual(1.1d, (double)r); r /= 2; Assert.AreEqual(0.55d, (double)r); r = d.Float / 1.1; Assert.AreEqual(1d, (double)r, 0.00001); r /= 2; Assert.AreEqual(0.5d, (double)r, 0.00001); r = d.Float / 1.1d; Assert.AreEqual(1m, (decimal)r); r /= 2; Assert.AreEqual(0.5m, (decimal)r); r = d.Float / null; Assert.AreEqual(null, r.Value); r /= 2; Assert.AreEqual(null, r.Value); r = d.Decimal / 1; Assert.AreEqual(1.1m, (decimal)r); r /= 2; Assert.AreEqual(0.55m, (decimal)r); r = d.Decimal / 1.1; Assert.AreEqual(1m, (decimal)r); r /= 2; Assert.AreEqual(0.5m, (decimal)r); r = d.Decimal / 1.1d; Assert.AreEqual(1m, (decimal)r); r /= 2; Assert.AreEqual(0.5m, (decimal)r); r = d.Decimal / null; Assert.AreEqual(null, r.Value); r /= 2; Assert.AreEqual(null, r.Value); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) r = d.BigInteger / 1.1d; Assert.AreEqual(100m, (decimal)r); r /= 2; Assert.AreEqual(50m, (decimal)r); r = d.BigInteger / null; Assert.AreEqual(null, r.Value); r /= 2; Assert.AreEqual(null, r.Value); #endif #endregion } [Test] public void JValueToString() { JObject o = new JObject( new JProperty("Null", JValue.CreateNull()), new JProperty("Integer", new JValue(1)), new JProperty("Float", new JValue(1.1)), new JProperty("DateTime", new JValue(new DateTime(2000, 12, 29, 23, 51, 10, DateTimeKind.Utc))), new JProperty("Boolean", new JValue(true)), new JProperty("String", new JValue("A string lol!")), new JProperty("Bytes", new JValue(Encoding.UTF8.GetBytes("A string lol!"))), new JProperty("Uri", new Uri("http://json.codeplex.com/")), new JProperty("Guid", new Guid("EA27FE1D-0D80-44F2-BF34-4654156FA7AF")), new JProperty("TimeSpan", TimeSpan.FromDays(1)) #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) , new JProperty("BigInteger", new BigInteger(100)) #endif ); dynamic d = o; Assert.AreEqual("", d.Null.ToString()); Assert.AreEqual("1", d.Integer.ToString()); Assert.AreEqual("1.1", d.Float.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual("12/29/2000 23:51:10", d.DateTime.ToString(null, CultureInfo.InvariantCulture)); Assert.AreEqual("True", d.Boolean.ToString()); Assert.AreEqual("A string lol!", d.String.ToString()); Assert.AreEqual("System.Byte[]", d.Bytes.ToString()); Assert.AreEqual("http://json.codeplex.com/", d.Uri.ToString()); Assert.AreEqual("ea27fe1d-0d80-44f2-bf34-4654156fa7af", d.Guid.ToString()); Assert.AreEqual("1.00:00:00", d.TimeSpan.ToString()); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) Assert.AreEqual("100", d.BigInteger.ToString()); #endif } [Test] public void JObjectGetDynamicPropertyNames() { JObject o = new JObject( new JProperty("ChildValue", "blah blah"), new JProperty("Hello Joe", null)); dynamic d = o; List memberNames = o.GetDynamicMemberNames().ToList(); Assert.AreEqual(2, memberNames.Count); Assert.AreEqual("ChildValue", memberNames[0]); Assert.AreEqual("Hello Joe", memberNames[1]); o = new JObject( new JProperty("ChildValue1", "blah blah"), new JProperty("Hello Joe1", null)); d = o; memberNames = o.GetDynamicMemberNames().ToList(); Assert.AreEqual(2, memberNames.Count); Assert.AreEqual("ChildValue1", memberNames[0]); Assert.AreEqual("Hello Joe1", memberNames[1]); } [Test] public void JValueConvert() { AssertValueConverted(true); AssertValueConverted(true); AssertValueConverted(false); AssertValueConverted(null); AssertValueConverted("true", true); AssertValueConverted(null); AssertValueConverted(Encoding.UTF8.GetBytes("blah")); AssertValueConverted(new DateTime(2000, 12, 20, 23, 59, 2, DateTimeKind.Utc)); AssertValueConverted(new DateTime(2000, 12, 20, 23, 59, 2, DateTimeKind.Utc)); AssertValueConverted(null); AssertValueConverted(new DateTimeOffset(2000, 12, 20, 23, 59, 2, TimeSpan.FromHours(1))); AssertValueConverted(new DateTimeOffset(2000, 12, 20, 23, 59, 2, TimeSpan.FromHours(1))); AssertValueConverted(null); AssertValueConverted(99.9m); AssertValueConverted(99.9m); AssertValueConverted(1m); AssertValueConverted(1.1f, 1.1m); AssertValueConverted("1.1", 1.1m); AssertValueConverted(99.9); AssertValueConverted(99.9d); AssertValueConverted(99.9d); AssertValueConverted(99.9f); AssertValueConverted(99.9f); AssertValueConverted(int.MinValue); AssertValueConverted(int.MinValue); AssertValueConverted(long.MaxValue); AssertValueConverted(long.MaxValue); AssertValueConverted(short.MaxValue); AssertValueConverted(short.MaxValue); AssertValueConverted("blah"); AssertValueConverted(null); AssertValueConverted(1, "1"); AssertValueConverted(uint.MinValue); AssertValueConverted(uint.MinValue); AssertValueConverted("1", (uint)1); AssertValueConverted(ulong.MaxValue); AssertValueConverted(ulong.MaxValue); AssertValueConverted(ushort.MinValue); AssertValueConverted(ushort.MinValue); AssertValueConverted(null); AssertValueConverted(TimeSpan.FromDays(1)); AssertValueConverted(TimeSpan.FromDays(1)); AssertValueConverted(null); AssertValueConverted(new Guid("60304274-CD13-4060-B38C-057C8557AB54")); AssertValueConverted(new Guid("60304274-CD13-4060-B38C-057C8557AB54")); AssertValueConverted(null); AssertValueConverted(new Uri("http://json.codeplex.com/")); AssertValueConverted(null); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) AssertValueConverted(new BigInteger(100)); AssertValueConverted(null); #endif } private static void AssertValueConverted(object value) { AssertValueConverted(value, value); } private static void AssertValueConverted(object value, object expected) { JValue v = new JValue(value); dynamic d = v; T t = d; Assert.AreEqual(expected, t); } [Test] public void DynamicSerializerExample() { dynamic value = new DynamicDictionary(); value.Name = "Arine Admin"; value.Enabled = true; value.Roles = new[] { "Admin", "User" }; string json = JsonConvert.SerializeObject(value, Formatting.Indented); // { // "Name": "Arine Admin", // "Enabled": true, // "Roles": [ // "Admin", // "User" // ] // } dynamic newValue = JsonConvert.DeserializeObject(json); string role = newValue.Roles[0]; // Admin } [Test] public void DynamicLinqExample() { JObject oldAndBusted = new JObject(); oldAndBusted["Name"] = "Arnie Admin"; oldAndBusted["Enabled"] = true; oldAndBusted["Roles"] = new JArray(new[] { "Admin", "User" }); string oldRole = (string)oldAndBusted["Roles"][0]; // Admin dynamic newHotness = new JObject(); newHotness.Name = "Arnie Admin"; newHotness.Enabled = true; newHotness.Roles = new JArray(new[] { "Admin", "User" }); string newRole = newHotness.Roles[0]; // Admin Assert.AreEqual("Admin", oldRole); Assert.AreEqual("Admin", newRole); } [Test] public void ImprovedDynamicLinqExample() { dynamic product = new JObject(); product.ProductName = "Elbow Grease"; product.Enabled = true; product.Price = 4.90m; product.StockCount = 9000; product.StockValue = 44100; // All Elbow Grease must go sale! // 50% off price product.Price = product.Price / 2; product.StockValue = product.StockCount * product.Price; product.ProductName = product.ProductName + " (SALE)"; string json = product.ToString(); // { // "ProductName": "Elbow Grease (SALE)", // "Enabled": true, // "Price": 2.45, // "StockCount": 9000, // "StockValue": 22050.00 // } StringAssert.AreEqual(@"{ ""ProductName"": ""Elbow Grease (SALE)"", ""Enabled"": true, ""Price"": 2.45, ""StockCount"": 9000, ""StockValue"": 22050.00 }", json); } } public class DynamicDictionary : DynamicObject { private readonly IDictionary _values = new Dictionary(); public override IEnumerable GetDynamicMemberNames() { return _values.Keys; } public override bool TryGetMember(GetMemberBinder binder, out object result) { result = _values[binder.Name]; return true; } public override bool TrySetMember(SetMemberBinder binder, object value) { _values[binder.Name] = value; return true; } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/LinqToJsonTest.cs0000664000175000017500000012722512454416117026502 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.Globalization; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Tests.Serialization; using Newtonsoft.Json.Tests.TestObjects; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.IO; namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class LinqToJsonTest : TestFixtureBase { [Test] public void IncompleteContainers() { ExceptionAssert.Throws( () => JArray.Parse("[1,"), "Unexpected end of content while loading JArray. Path '[0]', line 1, position 3."); ExceptionAssert.Throws( () => JArray.Parse("[1"), "Unexpected end of content while loading JArray. Path '[0]', line 1, position 2."); ExceptionAssert.Throws( () => JObject.Parse("{'key':1,"), "Unexpected end of content while loading JObject. Path 'key', line 1, position 9."); ExceptionAssert.Throws( () => JObject.Parse("{'key':1"), "Unexpected end of content while loading JObject. Path 'key', line 1, position 8."); } [Test] public void EmptyJEnumerableCount() { JEnumerable tokens = new JEnumerable(); Assert.AreEqual(0, tokens.Count()); } [Test] public void EmptyJEnumerableAsEnumerable() { IEnumerable tokens = new JEnumerable(); Assert.AreEqual(0, tokens.Cast().Count()); } [Test] public void EmptyJEnumerableEquals() { JEnumerable tokens1 = new JEnumerable(); JEnumerable tokens2 = new JEnumerable(); Assert.IsTrue(tokens1.Equals(tokens2)); object o1 = new JEnumerable(); object o2 = new JEnumerable(); Assert.IsTrue(o1.Equals(o2)); } [Test] public void EmptyJEnumerableGetHashCode() { JEnumerable tokens = new JEnumerable(); Assert.AreEqual(0, tokens.GetHashCode()); } [Test] public void CommentsAndReadFrom() { StringReader textReader = new StringReader(@"[ // hi 1, 2, 3 ]"); JsonTextReader jsonReader = new JsonTextReader(textReader); JArray a = (JArray)JToken.ReadFrom(jsonReader); Assert.AreEqual(4, a.Count); Assert.AreEqual(JTokenType.Comment, a[0].Type); Assert.AreEqual(" hi", ((JValue)a[0]).Value); } [Test] public void StartingCommentAndReadFrom() { StringReader textReader = new StringReader(@" // hi [ 1, 2, 3 ]"); JsonTextReader jsonReader = new JsonTextReader(textReader); JValue v = (JValue)JToken.ReadFrom(jsonReader); Assert.AreEqual(JTokenType.Comment, v.Type); IJsonLineInfo lineInfo = v; Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(3, lineInfo.LineNumber); Assert.AreEqual(1, lineInfo.LinePosition); } [Test] public void StartingUndefinedAndReadFrom() { StringReader textReader = new StringReader(@" undefined [ 1, 2, 3 ]"); JsonTextReader jsonReader = new JsonTextReader(textReader); JValue v = (JValue)JToken.ReadFrom(jsonReader); Assert.AreEqual(JTokenType.Undefined, v.Type); IJsonLineInfo lineInfo = v; Assert.AreEqual(true, lineInfo.HasLineInfo()); Assert.AreEqual(2, lineInfo.LineNumber); Assert.AreEqual(10, lineInfo.LinePosition); } [Test] public void StartingEndArrayAndReadFrom() { StringReader textReader = new StringReader(@"[]"); JsonTextReader jsonReader = new JsonTextReader(textReader); jsonReader.Read(); jsonReader.Read(); ExceptionAssert.Throws(() => JToken.ReadFrom(jsonReader), @"Error reading JToken from JsonReader. Unexpected token: EndArray. Path '', line 1, position 2."); } [Test] public void JPropertyPath() { JObject o = new JObject { { "person", new JObject { { "$id", 1 } } } }; JContainer idProperty = o["person"]["$id"].Parent; Assert.AreEqual("person.$id", idProperty.Path); } [Test] public void EscapedPath() { string json = @"{ ""frameworks"": { ""aspnetcore50"": { ""dependencies"": { ""System.Xml.ReaderWriter"": { ""source"": ""NuGet"" } } } } }"; JObject o = JObject.Parse(json); JToken v1 = o["frameworks"]["aspnetcore50"]["dependencies"]["System.Xml.ReaderWriter"]["source"]; Console.WriteLine(v1.Path); JToken v2 = o.SelectToken(v1.Path); Assert.AreEqual(v1, v2); } [Test] public void EscapedPathTests() { EscapedPathAssert("this has spaces", "['this has spaces']"); EscapedPathAssert("(RoundBraces)", "['(RoundBraces)']"); EscapedPathAssert("[SquareBraces]", "['[SquareBraces]']"); EscapedPathAssert("this.has.dots", "['this.has.dots']"); } private void EscapedPathAssert(string propertyName, string expectedPath) { int v1 = int.MaxValue; JValue value = new JValue(v1); JObject o = new JObject(new JProperty(propertyName, value)); Assert.AreEqual(expectedPath, value.Path); JValue selectedValue = (JValue)o.SelectToken(value.Path); Assert.AreEqual(value, selectedValue); } [Test] public void ForEach() { JArray items = new JArray(new JObject(new JProperty("name", "value!"))); foreach (JObject friend in items) { Console.WriteLine(friend); } } [Test] public void DoubleValue() { JArray j = JArray.Parse("[-1E+4,100.0e-2]"); double value = (double)j[0]; Assert.AreEqual(-10000d, value); value = (double)j[1]; Assert.AreEqual(1d, value); } [Test] public void Manual() { JArray array = new JArray(); JValue text = new JValue("Manual text"); JValue date = new JValue(new DateTime(2000, 5, 23)); array.Add(text); array.Add(date); string json = array.ToString(); // [ // "Manual text", // "\/Date(958996800000+1200)\/" // ] } [Test] public void LinqToJsonDeserialize() { JObject o = new JObject( new JProperty("Name", "John Smith"), new JProperty("BirthDate", new DateTime(1983, 3, 20)) ); JsonSerializer serializer = new JsonSerializer(); Person p = (Person)serializer.Deserialize(new JTokenReader(o), typeof(Person)); // John Smith Console.WriteLine(p.Name); } [Test] public void ObjectParse() { string json = @"{ CPU: 'Intel', Drives: [ 'DVD read/writer', ""500 gigabyte hard drive"" ] }"; JObject o = JObject.Parse(json); IList properties = o.Properties().ToList(); Assert.AreEqual("CPU", properties[0].Name); Assert.AreEqual("Intel", (string)properties[0].Value); Assert.AreEqual("Drives", properties[1].Name); JArray list = (JArray)properties[1].Value; Assert.AreEqual(2, list.Children().Count()); Assert.AreEqual("DVD read/writer", (string)list.Children().ElementAt(0)); Assert.AreEqual("500 gigabyte hard drive", (string)list.Children().ElementAt(1)); List parameterValues = (from p in o.Properties() where p.Value is JValue select ((JValue)p.Value).Value).ToList(); Assert.AreEqual(1, parameterValues.Count); Assert.AreEqual("Intel", parameterValues[0]); } [Test] public void CreateLongArray() { string json = @"[0,1,2,3,4,5,6,7,8,9]"; JArray a = JArray.Parse(json); List list = a.Values().ToList(); List expected = new List() { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; CollectionAssert.AreEqual(expected, list); } [Test] public void GoogleSearchAPI() { #region GoogleJson string json = @"{ results: [ { GsearchResultClass:""GwebSearch"", unescapedUrl : ""http://www.google.com/"", url : ""http://www.google.com/"", visibleUrl : ""www.google.com"", cacheUrl : ""http://www.google.com/search?q=cache:zhool8dxBV4J:www.google.com"", title : ""Google"", titleNoFormatting : ""Google"", content : ""Enables users to search the Web, Usenet, and images. Features include PageRank, caching and translation of results, and an option to find similar pages."" }, { GsearchResultClass:""GwebSearch"", unescapedUrl : ""http://news.google.com/"", url : ""http://news.google.com/"", visibleUrl : ""news.google.com"", cacheUrl : ""http://www.google.com/search?q=cache:Va_XShOz_twJ:news.google.com"", title : ""Google News"", titleNoFormatting : ""Google News"", content : ""Aggregated headlines and a search engine of many of the world's news sources."" }, { GsearchResultClass:""GwebSearch"", unescapedUrl : ""http://groups.google.com/"", url : ""http://groups.google.com/"", visibleUrl : ""groups.google.com"", cacheUrl : ""http://www.google.com/search?q=cache:x2uPD3hfkn0J:groups.google.com"", title : ""Google Groups"", titleNoFormatting : ""Google Groups"", content : ""Enables users to search and browse the Usenet archives which consist of over 700 million messages, and post new comments."" }, { GsearchResultClass:""GwebSearch"", unescapedUrl : ""http://maps.google.com/"", url : ""http://maps.google.com/"", visibleUrl : ""maps.google.com"", cacheUrl : ""http://www.google.com/search?q=cache:dkf5u2twBXIJ:maps.google.com"", title : ""Google Maps"", titleNoFormatting : ""Google Maps"", content : ""Provides directions, interactive maps, and satellite/aerial imagery of the United States. Can also search by keyword such as type of business."" } ], adResults: [ { GsearchResultClass:""GwebSearch.ad"", title : ""Gartner Symposium/ITxpo"", content1 : ""Meet brilliant Gartner IT analysts"", content2 : ""20-23 May 2007- Barcelona, Spain"", url : ""http://www.google.com/url?sa=L&ai=BVualExYGRo3hD5ianAPJvejjD8-s6ye7kdTwArbI4gTAlrECEAEYASDXtMMFOAFQubWAjvr_____AWDXw_4EiAEBmAEAyAEBgAIB&num=1&q=http://www.gartner.com/it/sym/2007/spr8/spr8.jsp%3Fsrc%3D_spain_07_%26WT.srch%3D1&usg=__CxRH06E4Xvm9Muq13S4MgMtnziY="", impressionUrl : ""http://www.google.com/uds/css/ad-indicator-on.gif?ai=BVualExYGRo3hD5ianAPJvejjD8-s6ye7kdTwArbI4gTAlrECEAEYASDXtMMFOAFQubWAjvr_____AWDXw_4EiAEBmAEAyAEBgAIB"", unescapedUrl : ""http://www.google.com/url?sa=L&ai=BVualExYGRo3hD5ianAPJvejjD8-s6ye7kdTwArbI4gTAlrECEAEYASDXtMMFOAFQubWAjvr_____AWDXw_4EiAEBmAEAyAEBgAIB&num=1&q=http://www.gartner.com/it/sym/2007/spr8/spr8.jsp%3Fsrc%3D_spain_07_%26WT.srch%3D1&usg=__CxRH06E4Xvm9Muq13S4MgMtnziY="", visibleUrl : ""www.gartner.com"" } ] } "; #endregion JObject o = JObject.Parse(json); List resultObjects = o["results"].Children().ToList(); Assert.AreEqual(32, resultObjects.Properties().Count()); Assert.AreEqual(32, resultObjects.Cast().Values().Count()); Assert.AreEqual(4, resultObjects.Cast().Values("GsearchResultClass").Count()); Assert.AreEqual(5, o.PropertyValues().Cast().Children().Count()); List resultUrls = o["results"].Children().Values("url").ToList(); List expectedUrls = new List() { "http://www.google.com/", "http://news.google.com/", "http://groups.google.com/", "http://maps.google.com/" }; CollectionAssert.AreEqual(expectedUrls, resultUrls); List descendants = o.Descendants().ToList(); Assert.AreEqual(89, descendants.Count); } [Test] public void JTokenToString() { string json = @"{ CPU: 'Intel', Drives: [ 'DVD read/writer', ""500 gigabyte hard drive"" ] }"; JObject o = JObject.Parse(json); StringAssert.AreEqual(@"{ ""CPU"": ""Intel"", ""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ] }", o.ToString()); JArray list = o.Value("Drives"); StringAssert.AreEqual(@"[ ""DVD read/writer"", ""500 gigabyte hard drive"" ]", list.ToString()); JProperty cpuProperty = o.Property("CPU"); Assert.AreEqual(@"""CPU"": ""Intel""", cpuProperty.ToString()); JProperty drivesProperty = o.Property("Drives"); StringAssert.AreEqual(@"""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ]", drivesProperty.ToString()); } [Test] public void JTokenToStringTypes() { string json = @"{""Color"":2,""Establised"":new Date(1264118400000),""Width"":1.1,""Employees"":999,""RoomsPerFloor"":[1,2,3,4,5,6,7,8,9],""Open"":false,""Symbol"":""@"",""Mottos"":[""Hello World"",""öäüÖÄÜ\\'{new Date(12345);}[222]_µ@²³~"",null,"" ""],""Cost"":100980.1,""Escape"":""\r\n\t\f\b?{\\r\\n\""'"",""product"":[{""Name"":""Rocket"",""ExpiryDate"":new Date(949532490000),""Price"":0},{""Name"":""Alien"",""ExpiryDate"":new Date(-62135596800000),""Price"":0}]}"; JObject o = JObject.Parse(json); StringAssert.AreEqual(@"""Establised"": new Date( 1264118400000 )", o.Property("Establised").ToString()); StringAssert.AreEqual(@"new Date( 1264118400000 )", o.Property("Establised").Value.ToString()); Assert.AreEqual(@"""Width"": 1.1", o.Property("Width").ToString()); Assert.AreEqual(@"1.1", ((JValue)o.Property("Width").Value).ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(@"""Open"": false", o.Property("Open").ToString()); Assert.AreEqual(@"False", o.Property("Open").Value.ToString()); json = @"[null,undefined]"; JArray a = JArray.Parse(json); StringAssert.AreEqual(@"[ null, undefined ]", a.ToString()); Assert.AreEqual(@"", a.Children().ElementAt(0).ToString()); Assert.AreEqual(@"", a.Children().ElementAt(1).ToString()); } [Test] public void CreateJTokenTree() { JObject o = new JObject( new JProperty("Test1", "Test1Value"), new JProperty("Test2", "Test2Value"), new JProperty("Test3", "Test3Value"), new JProperty("Test4", null) ); Assert.AreEqual(4, o.Properties().Count()); StringAssert.AreEqual(@"{ ""Test1"": ""Test1Value"", ""Test2"": ""Test2Value"", ""Test3"": ""Test3Value"", ""Test4"": null }", o.ToString()); JArray a = new JArray( o, new DateTime(2000, 10, 10, 0, 0, 0, DateTimeKind.Utc), 55, new JArray( "1", 2, 3.0, new DateTime(4, 5, 6, 7, 8, 9, DateTimeKind.Utc) ), new JConstructor( "ConstructorName", "param1", 2, 3.0 ) ); Assert.AreEqual(5, a.Count()); StringAssert.AreEqual(@"[ { ""Test1"": ""Test1Value"", ""Test2"": ""Test2Value"", ""Test3"": ""Test3Value"", ""Test4"": null }, ""2000-10-10T00:00:00Z"", 55, [ ""1"", 2, 3.0, ""0004-05-06T07:08:09Z"" ], new ConstructorName( ""param1"", 2, 3.0 ) ]", a.ToString()); } private class Post { public string Title { get; set; } public string Description { get; set; } public string Link { get; set; } public IList Categories { get; set; } } private List GetPosts() { return new List() { new Post() { Title = "LINQ to JSON beta", Description = "Annoucing LINQ to JSON", Link = "http://james.newtonking.com/projects/json-net.aspx", Categories = new List() { "Json.NET", "LINQ" } }, new Post() { Title = "Json.NET 1.3 + New license + Now on CodePlex", Description = "Annoucing the release of Json.NET 1.3, the MIT license and being available on CodePlex", Link = "http://james.newtonking.com/projects/json-net.aspx", Categories = new List() { "Json.NET", "CodePlex" } } }; } [Test] public void FromObjectExample() { Post p = new Post { Title = "How to use FromObject", Categories = new [] { "LINQ to JSON" } }; // serialize Post to JSON then parse JSON – SLOW! //JObject o = JObject.Parse(JsonConvert.SerializeObject(p)); // create JObject directly from the Post JObject o = JObject.FromObject(p); o["Title"] = o["Title"] + " - Super effective!"; string json = o.ToString(); // { // "Title": "How to use FromObject - It's super effective!", // "Categories": [ // "LINQ to JSON" // ] // } StringAssert.AreEqual(@"{ ""Title"": ""How to use FromObject - Super effective!"", ""Description"": null, ""Link"": null, ""Categories"": [ ""LINQ to JSON"" ] }", json); } [Test] public void QueryingExample() { JArray posts = JArray.Parse(@"[ { 'Title': 'JSON Serializer Basics', 'Date': '2013-12-21T00:00:00', 'Categories': [] }, { 'Title': 'Querying LINQ to JSON', 'Date': '2014-06-03T00:00:00', 'Categories': [ 'LINQ to JSON' ] } ]"); JToken serializerBasics = posts .Single(p => (string)p["Title"] == "JSON Serializer Basics"); // JSON Serializer Basics IList since2012 = posts .Where(p => (DateTime)p["Date"] > new DateTime(2012, 1, 1)).ToList(); // JSON Serializer Basics // Querying LINQ to JSON IList linqToJson = posts .Where(p => p["Categories"].Any(c => (string)c == "LINQ to JSON")).ToList(); // Querying LINQ to JSON Assert.IsNotNull(serializerBasics); Assert.AreEqual(2, since2012.Count); Assert.AreEqual(1, linqToJson.Count); } [Test] public void CreateJTokenTreeNested() { List posts = GetPosts(); JObject rss = new JObject( new JProperty("channel", new JObject( new JProperty("title", "James Newton-King"), new JProperty("link", "http://james.newtonking.com"), new JProperty("description", "James Newton-King's blog."), new JProperty("item", new JArray( from p in posts orderby p.Title select new JObject( new JProperty("title", p.Title), new JProperty("description", p.Description), new JProperty("link", p.Link), new JProperty("category", new JArray( from c in p.Categories select new JValue(c))))))))); Console.WriteLine(rss.ToString()); //{ // "channel": { // "title": "James Newton-King", // "link": "http://james.newtonking.com", // "description": "James Newton-King's blog.", // "item": [ // { // "title": "Json.NET 1.3 + New license + Now on CodePlex", // "description": "Annoucing the release of Json.NET 1.3, the MIT license and being available on CodePlex", // "link": "http://james.newtonking.com/projects/json-net.aspx", // "category": [ // "Json.NET", // "CodePlex" // ] // }, // { // "title": "LINQ to JSON beta", // "description": "Annoucing LINQ to JSON", // "link": "http://james.newtonking.com/projects/json-net.aspx", // "category": [ // "Json.NET", // "LINQ" // ] // } // ] // } //} var postTitles = from p in rss["channel"]["item"] select p.Value("title"); foreach (var item in postTitles) { Console.WriteLine(item); } //LINQ to JSON beta //Json.NET 1.3 + New license + Now on CodePlex var categories = from c in rss["channel"]["item"].Children()["category"].Values() group c by c into g orderby g.Count() descending select new { Category = g.Key, Count = g.Count() }; foreach (var c in categories) { Console.WriteLine(c.Category + " - Count: " + c.Count); } //Json.NET - Count: 2 //LINQ - Count: 1 //CodePlex - Count: 1 } [Test] public void BasicQuerying() { string json = @"{ ""channel"": { ""title"": ""James Newton-King"", ""link"": ""http://james.newtonking.com"", ""description"": ""James Newton-King's blog."", ""item"": [ { ""title"": ""Json.NET 1.3 + New license + Now on CodePlex"", ""description"": ""Annoucing the release of Json.NET 1.3, the MIT license and being available on CodePlex"", ""link"": ""http://james.newtonking.com/projects/json-net.aspx"", ""category"": [ ""Json.NET"", ""CodePlex"" ] }, { ""title"": ""LINQ to JSON beta"", ""description"": ""Annoucing LINQ to JSON"", ""link"": ""http://james.newtonking.com/projects/json-net.aspx"", ""category"": [ ""Json.NET"", ""LINQ"" ] } ] } }"; JObject o = JObject.Parse(json); Assert.AreEqual(null, o["purple"]); Assert.AreEqual(null, o.Value("purple")); CustomAssert.IsInstanceOfType(typeof(JArray), o["channel"]["item"]); Assert.AreEqual(2, o["channel"]["item"].Children()["title"].Count()); Assert.AreEqual(0, o["channel"]["item"].Children()["monkey"].Count()); Assert.AreEqual("Json.NET 1.3 + New license + Now on CodePlex", (string)o["channel"]["item"][0]["title"]); CollectionAssert.AreEqual(new string[] { "Json.NET 1.3 + New license + Now on CodePlex", "LINQ to JSON beta" }, o["channel"]["item"].Children().Values("title").ToArray()); } [Test] public void JObjectIntIndex() { ExceptionAssert.Throws(() => { JObject o = new JObject(); Assert.AreEqual(null, o[0]); }, "Accessed JObject values with invalid key value: 0. Object property name expected."); } [Test] public void JArrayStringIndex() { ExceptionAssert.Throws(() => { JArray a = new JArray(); Assert.AreEqual(null, a["purple"]); }, @"Accessed JArray values with invalid key value: ""purple"". Array position index expected."); } [Test] public void JConstructorStringIndex() { ExceptionAssert.Throws(() => { JConstructor c = new JConstructor("ConstructorValue"); Assert.AreEqual(null, c["purple"]); }, @"Accessed JConstructor values with invalid key value: ""purple"". Argument position index expected."); } #if !NET20 [Test] public void ToStringJsonConverter() { JObject o = new JObject( new JProperty("Test1", new DateTime(2000, 10, 15, 5, 5, 5, DateTimeKind.Utc)), new JProperty("Test2", new DateTimeOffset(2000, 10, 15, 5, 5, 5, new TimeSpan(11, 11, 0))), new JProperty("Test3", "Test3Value"), new JProperty("Test4", null) ); JsonSerializer serializer = new JsonSerializer(); serializer.Converters.Add(new JavaScriptDateTimeConverter()); StringWriter sw = new StringWriter(); JsonWriter writer = new JsonTextWriter(sw); writer.Formatting = Formatting.Indented; serializer.Serialize(writer, o); string json = sw.ToString(); StringAssert.AreEqual(@"{ ""Test1"": new Date( 971586305000 ), ""Test2"": new Date( 971546045000 ), ""Test3"": ""Test3Value"", ""Test4"": null }", json); } [Test] public void DateTimeOffset() { List testDates = new List { new DateTimeOffset(new DateTime(100, 1, 1, 1, 1, 1, DateTimeKind.Utc)), new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.Zero), new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.FromHours(13)), new DateTimeOffset(2000, 1, 1, 1, 1, 1, TimeSpan.FromHours(-3.5)), }; JsonSerializer jsonSerializer = new JsonSerializer(); JTokenWriter jsonWriter; using (jsonWriter = new JTokenWriter()) { jsonSerializer.Serialize(jsonWriter, testDates); } Assert.AreEqual(4, jsonWriter.Token.Children().Count()); } #endif [Test] public void FromObject() { List posts = GetPosts(); JObject o = JObject.FromObject(new { channel = new { title = "James Newton-King", link = "http://james.newtonking.com", description = "James Newton-King's blog.", item = from p in posts orderby p.Title select new { title = p.Title, description = p.Description, link = p.Link, category = p.Categories } } }); Console.WriteLine(o.ToString()); CustomAssert.IsInstanceOfType(typeof(JObject), o); CustomAssert.IsInstanceOfType(typeof(JObject), o["channel"]); Assert.AreEqual("James Newton-King", (string)o["channel"]["title"]); Assert.AreEqual(2, o["channel"]["item"].Children().Count()); JArray a = JArray.FromObject(new List() { 0, 1, 2, 3, 4 }); CustomAssert.IsInstanceOfType(typeof(JArray), a); Assert.AreEqual(5, a.Count()); } [Test] public void FromAnonDictionary() { List posts = GetPosts(); JObject o = JObject.FromObject(new { channel = new Dictionary { { "title", "James Newton-King" }, { "link", "http://james.newtonking.com" }, { "description", "James Newton-King's blog." }, { "item", (from p in posts orderby p.Title select new { title = p.Title, description = p.Description, link = p.Link, category = p.Categories }) } } }); Console.WriteLine(o.ToString()); CustomAssert.IsInstanceOfType(typeof(JObject), o); CustomAssert.IsInstanceOfType(typeof(JObject), o["channel"]); Assert.AreEqual("James Newton-King", (string)o["channel"]["title"]); Assert.AreEqual(2, o["channel"]["item"].Children().Count()); JArray a = JArray.FromObject(new List() { 0, 1, 2, 3, 4 }); CustomAssert.IsInstanceOfType(typeof(JArray), a); Assert.AreEqual(5, a.Count()); } [Test] public void AsJEnumerable() { JObject o = null; IJEnumerable enumerable = null; enumerable = o.AsJEnumerable(); Assert.IsNull(enumerable); o = new JObject( new JProperty("Test1", new DateTime(2000, 10, 15, 5, 5, 5, DateTimeKind.Utc)), new JProperty("Test2", "Test2Value"), new JProperty("Test3", null) ); enumerable = o.AsJEnumerable(); Assert.IsNotNull(enumerable); Assert.AreEqual(o, enumerable); DateTime d = enumerable["Test1"].Value(); Assert.AreEqual(new DateTime(2000, 10, 15, 5, 5, 5, DateTimeKind.Utc), d); } #if !(NET20 || NET35 || PORTABLE40) [Test] public void CovariantIJEnumerable() { IEnumerable o = new[] { JObject.FromObject(new { First = 1, Second = 2 }), JObject.FromObject(new { First = 1, Second = 2 }) }; IJEnumerable values = o.Properties(); Assert.AreEqual(4, values.Count()); } #endif #if !NET20 [Test] public void LinqCast() { JToken olist = JArray.Parse("[12,55]"); List list1 = olist.AsEnumerable().Values().ToList(); Assert.AreEqual(12, list1[0]); Assert.AreEqual(55, list1[1]); } #endif [Test] public void ChildrenExtension() { string json = @"[ { ""title"": ""James Newton-King"", ""link"": ""http://james.newtonking.com"", ""description"": ""James Newton-King's blog."", ""item"": [ { ""title"": ""Json.NET 1.3 + New license + Now on CodePlex"", ""description"": ""Annoucing the release of Json.NET 1.3, the MIT license and being available on CodePlex"", ""link"": ""http://james.newtonking.com/projects/json-net.aspx"", ""category"": [ ""Json.NET"", ""CodePlex"" ] }, { ""title"": ""LINQ to JSON beta"", ""description"": ""Annoucing LINQ to JSON"", ""link"": ""http://james.newtonking.com/projects/json-net.aspx"", ""category"": [ ""Json.NET"", ""LINQ"" ] } ] }, { ""title"": ""James Newton-King"", ""link"": ""http://james.newtonking.com"", ""description"": ""James Newton-King's blog."", ""item"": [ { ""title"": ""Json.NET 1.3 + New license + Now on CodePlex"", ""description"": ""Annoucing the release of Json.NET 1.3, the MIT license and being available on CodePlex"", ""link"": ""http://james.newtonking.com/projects/json-net.aspx"", ""category"": [ ""Json.NET"", ""CodePlex"" ] }, { ""title"": ""LINQ to JSON beta"", ""description"": ""Annoucing LINQ to JSON"", ""link"": ""http://james.newtonking.com/projects/json-net.aspx"", ""category"": [ ""Json.NET"", ""LINQ"" ] } ] } ]"; JArray o = JArray.Parse(json); Assert.AreEqual(4, o.Children()["item"].Children()["title"].Count()); CollectionAssert.AreEqual(new string[] { "Json.NET 1.3 + New license + Now on CodePlex", "LINQ to JSON beta", "Json.NET 1.3 + New license + Now on CodePlex", "LINQ to JSON beta" }, o.Children()["item"].Children()["title"].Values().ToArray()); } [Test] public void UriGuidTimeSpanTestClassEmptyTest() { UriGuidTimeSpanTestClass c1 = new UriGuidTimeSpanTestClass(); JObject o = JObject.FromObject(c1); StringAssert.AreEqual(@"{ ""Guid"": ""00000000-0000-0000-0000-000000000000"", ""NullableGuid"": null, ""TimeSpan"": ""00:00:00"", ""NullableTimeSpan"": null, ""Uri"": null }", o.ToString()); UriGuidTimeSpanTestClass c2 = o.ToObject(); Assert.AreEqual(c1.Guid, c2.Guid); Assert.AreEqual(c1.NullableGuid, c2.NullableGuid); Assert.AreEqual(c1.TimeSpan, c2.TimeSpan); Assert.AreEqual(c1.NullableTimeSpan, c2.NullableTimeSpan); Assert.AreEqual(c1.Uri, c2.Uri); } [Test] public void UriGuidTimeSpanTestClassValuesTest() { UriGuidTimeSpanTestClass c1 = new UriGuidTimeSpanTestClass { Guid = new Guid("1924129C-F7E0-40F3-9607-9939C531395A"), NullableGuid = new Guid("9E9F3ADF-E017-4F72-91E0-617EBE85967D"), TimeSpan = TimeSpan.FromDays(1), NullableTimeSpan = TimeSpan.FromHours(1), Uri = new Uri("http://testuri.com") }; JObject o = JObject.FromObject(c1); StringAssert.AreEqual(@"{ ""Guid"": ""1924129c-f7e0-40f3-9607-9939c531395a"", ""NullableGuid"": ""9e9f3adf-e017-4f72-91e0-617ebe85967d"", ""TimeSpan"": ""1.00:00:00"", ""NullableTimeSpan"": ""01:00:00"", ""Uri"": ""http://testuri.com/"" }", o.ToString()); UriGuidTimeSpanTestClass c2 = o.ToObject(); Assert.AreEqual(c1.Guid, c2.Guid); Assert.AreEqual(c1.NullableGuid, c2.NullableGuid); Assert.AreEqual(c1.TimeSpan, c2.TimeSpan); Assert.AreEqual(c1.NullableTimeSpan, c2.NullableTimeSpan); Assert.AreEqual(c1.Uri, c2.Uri); } [Test] public void ParseWithPrecendingComments() { string json = @"/* blah */ {'hi':'hi!'}"; JObject o = JObject.Parse(json); Assert.AreEqual("hi!", (string)o["hi"]); json = @"/* blah */ ['hi!']"; JArray a = JArray.Parse(json); Assert.AreEqual("hi!", (string)a[0]); } #if !(NET35 || NET20) [Test] public void ExceptionFromOverloadWithJValue() { dynamic name = new JValue("Matthew Doig"); IDictionary users = new Dictionary(); // unfortunatly there doesn't appear to be a way around this ExceptionAssert.Throws(() => { users.Add("name2", name); Assert.AreEqual(users["name2"], "Matthew Doig"); }, "The best overloaded method match for 'System.Collections.Generic.IDictionary.Add(string, string)' has some invalid arguments"); } #endif [Test] public void SerializeWithNoRedundentIdPropertiesTest() { Dictionary dic1 = new Dictionary(); Dictionary dic2 = new Dictionary(); Dictionary dic3 = new Dictionary(); List list1 = new List(); List list2 = new List(); dic1.Add("list1", list1); dic1.Add("list2", list2); dic1.Add("dic1", dic1); dic1.Add("dic2", dic2); dic1.Add("dic3", dic3); dic1.Add("integer", 12345); list1.Add("A string!"); list1.Add(dic1); list1.Add(new List()); dic3.Add("dic3", dic3); var json = SerializeWithNoRedundentIdProperties(dic1); StringAssert.AreEqual(@"{ ""$id"": ""1"", ""list1"": [ ""A string!"", { ""$ref"": ""1"" }, [] ], ""list2"": [], ""dic1"": { ""$ref"": ""1"" }, ""dic2"": {}, ""dic3"": { ""$id"": ""3"", ""dic3"": { ""$ref"": ""3"" } }, ""integer"": 12345 }", json); } private static string SerializeWithNoRedundentIdProperties(object o) { JTokenWriter writer = new JTokenWriter(); JsonSerializer serializer = JsonSerializer.Create(new JsonSerializerSettings { Formatting = Formatting.Indented, PreserveReferencesHandling = PreserveReferencesHandling.Objects }); serializer.Serialize(writer, o); JToken t = writer.Token; if (t is JContainer) { JContainer c = t as JContainer; // find all the $id properties in the JSON IList ids = c.Descendants().OfType().Where(d => d.Name == "$id").ToList(); if (ids.Count > 0) { // find all the $ref properties in the JSON IList refs = c.Descendants().OfType().Where(d => d.Name == "$ref").ToList(); foreach (JProperty idProperty in ids) { // check whether the $id property is used by a $ref bool idUsed = refs.Any(r => idProperty.Value.ToString() == r.Value.ToString()); if (!idUsed) { // remove unused $id idProperty.Remove(); } } } } string json = t.ToString(); return json; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JRawTests.cs0000664000175000017500000000453712454416117025470 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JRawTests : TestFixtureBase { [Test] public void RawEquals() { JRaw r1 = new JRaw("raw1"); JRaw r2 = new JRaw("raw1"); JRaw r3 = new JRaw("raw2"); Assert.IsTrue(JToken.DeepEquals(r1, r2)); Assert.IsFalse(JToken.DeepEquals(r1, r3)); } [Test] public void RawClone() { JRaw r1 = new JRaw("raw1"); JToken r2 = r1.CloneToken(); CustomAssert.IsInstanceOfType(typeof(JRaw), r2); } [Test] public void RawToObject() { JRaw r1 = new JRaw("1"); int i = r1.ToObject(); Assert.AreEqual(1, i); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JObjectTests.cs0000664000175000017500000017171312454416117026146 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Collections.Specialized; using System.ComponentModel; #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Tests.TestObjects; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; using System.IO; using System.Collections; #if !(NETFX_CORE || ASPNETCORE50) using System.Web.UI; #endif #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JObjectTests : TestFixtureBase { #if !(NET35 || NET20 || PORTABLE40) [Test] public void EmbedJValueStringInNewJObject() { string s = null; var v = new JValue(s); dynamic o = JObject.FromObject(new { title = v }); string output = o.ToString(); StringAssert.AreEqual(@"{ ""title"": null }", output); Assert.AreEqual(null, v.Value); Assert.IsNull((string)o.title); } #endif [Test] public void JObjectWithComments() { string json = @"{ /*comment2*/ ""Name"": /*comment3*/ ""Apple"" /*comment4*/, /*comment5*/ ""ExpiryDate"": ""\/Date(1230422400000)\/"", ""Price"": 3.99, ""Sizes"": /*comment6*/ [ /*comment7*/ ""Small"", /*comment8*/ ""Medium"" /*comment9*/, /*comment10*/ ""Large"" /*comment11*/ ] /*comment12*/ } /*comment13*/"; JToken o = JToken.Parse(json); Assert.AreEqual("Apple", (string) o["Name"]); } [Test] public void WritePropertyWithNoValue() { var o = new JObject(); o.Add(new JProperty("novalue")); StringAssert.AreEqual(@"{ ""novalue"": null }", o.ToString()); } [Test] public void Keys() { var o = new JObject(); var d = (IDictionary)o; Assert.AreEqual(0, d.Keys.Count); o["value"] = true; Assert.AreEqual(1, d.Keys.Count); } [Test] public void TryGetValue() { JObject o = new JObject(); o.Add("PropertyNameValue", new JValue(1)); Assert.AreEqual(1, o.Children().Count()); JToken t; Assert.AreEqual(false, o.TryGetValue("sdf", out t)); Assert.AreEqual(null, t); Assert.AreEqual(false, o.TryGetValue(null, out t)); Assert.AreEqual(null, t); Assert.AreEqual(true, o.TryGetValue("PropertyNameValue", out t)); Assert.AreEqual(true, JToken.DeepEquals(new JValue(1), t)); } [Test] public void DictionaryItemShouldSet() { JObject o = new JObject(); o["PropertyNameValue"] = new JValue(1); Assert.AreEqual(1, o.Children().Count()); JToken t; Assert.AreEqual(true, o.TryGetValue("PropertyNameValue", out t)); Assert.AreEqual(true, JToken.DeepEquals(new JValue(1), t)); o["PropertyNameValue"] = new JValue(2); Assert.AreEqual(1, o.Children().Count()); Assert.AreEqual(true, o.TryGetValue("PropertyNameValue", out t)); Assert.AreEqual(true, JToken.DeepEquals(new JValue(2), t)); o["PropertyNameValue"] = null; Assert.AreEqual(1, o.Children().Count()); Assert.AreEqual(true, o.TryGetValue("PropertyNameValue", out t)); Assert.AreEqual(true, JToken.DeepEquals(JValue.CreateNull(), t)); } [Test] public void Remove() { JObject o = new JObject(); o.Add("PropertyNameValue", new JValue(1)); Assert.AreEqual(1, o.Children().Count()); Assert.AreEqual(false, o.Remove("sdf")); Assert.AreEqual(false, o.Remove(null)); Assert.AreEqual(true, o.Remove("PropertyNameValue")); Assert.AreEqual(0, o.Children().Count()); } [Test] public void GenericCollectionRemove() { JValue v = new JValue(1); JObject o = new JObject(); o.Add("PropertyNameValue", v); Assert.AreEqual(1, o.Children().Count()); Assert.AreEqual(false, ((ICollection>)o).Remove(new KeyValuePair("PropertyNameValue1", new JValue(1)))); Assert.AreEqual(false, ((ICollection>)o).Remove(new KeyValuePair("PropertyNameValue", new JValue(2)))); Assert.AreEqual(false, ((ICollection>)o).Remove(new KeyValuePair("PropertyNameValue", new JValue(1)))); Assert.AreEqual(true, ((ICollection>)o).Remove(new KeyValuePair("PropertyNameValue", v))); Assert.AreEqual(0, o.Children().Count()); } [Test] public void DuplicatePropertyNameShouldThrow() { ExceptionAssert.Throws(() => { JObject o = new JObject(); o.Add("PropertyNameValue", null); o.Add("PropertyNameValue", null); }, "Can not add property PropertyNameValue to Newtonsoft.Json.Linq.JObject. Property with the same name already exists on object."); } [Test] public void GenericDictionaryAdd() { JObject o = new JObject(); o.Add("PropertyNameValue", new JValue(1)); Assert.AreEqual(1, (int)o["PropertyNameValue"]); o.Add("PropertyNameValue1", null); Assert.AreEqual(null, ((JValue)o["PropertyNameValue1"]).Value); Assert.AreEqual(2, o.Children().Count()); } [Test] public void GenericCollectionAdd() { JObject o = new JObject(); ((ICollection>)o).Add(new KeyValuePair("PropertyNameValue", new JValue(1))); Assert.AreEqual(1, (int)o["PropertyNameValue"]); Assert.AreEqual(1, o.Children().Count()); } [Test] public void GenericCollectionClear() { JObject o = new JObject(); o.Add("PropertyNameValue", new JValue(1)); Assert.AreEqual(1, o.Children().Count()); JProperty p = (JProperty)o.Children().ElementAt(0); ((ICollection>)o).Clear(); Assert.AreEqual(0, o.Children().Count()); Assert.AreEqual(null, p.Parent); } [Test] public void GenericCollectionContains() { JValue v = new JValue(1); JObject o = new JObject(); o.Add("PropertyNameValue", v); Assert.AreEqual(1, o.Children().Count()); bool contains = ((ICollection>)o).Contains(new KeyValuePair("PropertyNameValue", new JValue(1))); Assert.AreEqual(false, contains); contains = ((ICollection>)o).Contains(new KeyValuePair("PropertyNameValue", v)); Assert.AreEqual(true, contains); contains = ((ICollection>)o).Contains(new KeyValuePair("PropertyNameValue", new JValue(2))); Assert.AreEqual(false, contains); contains = ((ICollection>)o).Contains(new KeyValuePair("PropertyNameValue1", new JValue(1))); Assert.AreEqual(false, contains); contains = ((ICollection>)o).Contains(default(KeyValuePair)); Assert.AreEqual(false, contains); } [Test] public void GenericDictionaryContains() { JObject o = new JObject(); o.Add("PropertyNameValue", new JValue(1)); Assert.AreEqual(1, o.Children().Count()); bool contains = ((IDictionary)o).ContainsKey("PropertyNameValue"); Assert.AreEqual(true, contains); } [Test] public void GenericCollectionCopyTo() { JObject o = new JObject(); o.Add("PropertyNameValue", new JValue(1)); o.Add("PropertyNameValue2", new JValue(2)); o.Add("PropertyNameValue3", new JValue(3)); Assert.AreEqual(3, o.Children().Count()); KeyValuePair[] a = new KeyValuePair[5]; ((ICollection>)o).CopyTo(a, 1); Assert.AreEqual(default(KeyValuePair), a[0]); Assert.AreEqual("PropertyNameValue", a[1].Key); Assert.AreEqual(1, (int)a[1].Value); Assert.AreEqual("PropertyNameValue2", a[2].Key); Assert.AreEqual(2, (int)a[2].Value); Assert.AreEqual("PropertyNameValue3", a[3].Key); Assert.AreEqual(3, (int)a[3].Value); Assert.AreEqual(default(KeyValuePair), a[4]); } [Test] public void GenericCollectionCopyToNullArrayShouldThrow() { ExceptionAssert.Throws(() => { JObject o = new JObject(); ((ICollection>)o).CopyTo(null, 0); }, @"Value cannot be null. Parameter name: array"); } [Test] public void GenericCollectionCopyToNegativeArrayIndexShouldThrow() { ExceptionAssert.Throws(() => { JObject o = new JObject(); ((ICollection>)o).CopyTo(new KeyValuePair[1], -1); }, @"arrayIndex is less than 0. Parameter name: arrayIndex"); } [Test] public void GenericCollectionCopyToArrayIndexEqualGreaterToArrayLengthShouldThrow() { ExceptionAssert.Throws(() => { JObject o = new JObject(); ((ICollection>)o).CopyTo(new KeyValuePair[1], 1); }, @"arrayIndex is equal to or greater than the length of array."); } [Test] public void GenericCollectionCopyToInsufficientArrayCapacity() { ExceptionAssert.Throws(() => { JObject o = new JObject(); o.Add("PropertyNameValue", new JValue(1)); o.Add("PropertyNameValue2", new JValue(2)); o.Add("PropertyNameValue3", new JValue(3)); ((ICollection>)o).CopyTo(new KeyValuePair[3], 1); }, @"The number of elements in the source JObject is greater than the available space from arrayIndex to the end of the destination array."); } [Test] public void FromObjectRaw() { PersonRaw raw = new PersonRaw { FirstName = "FirstNameValue", RawContent = new JRaw("[1,2,3,4,5]"), LastName = "LastNameValue" }; JObject o = JObject.FromObject(raw); Assert.AreEqual("FirstNameValue", (string)o["first_name"]); Assert.AreEqual(JTokenType.Raw, ((JValue)o["RawContent"]).Type); Assert.AreEqual("[1,2,3,4,5]", (string)o["RawContent"]); Assert.AreEqual("LastNameValue", (string)o["last_name"]); } [Test] public void JTokenReader() { PersonRaw raw = new PersonRaw { FirstName = "FirstNameValue", RawContent = new JRaw("[1,2,3,4,5]"), LastName = "LastNameValue" }; JObject o = JObject.FromObject(raw); JsonReader reader = new JTokenReader(o); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.Raw, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.PropertyName, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.String, reader.TokenType); Assert.IsTrue(reader.Read()); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); Assert.IsFalse(reader.Read()); } [Test] public void DeserializeFromRaw() { PersonRaw raw = new PersonRaw { FirstName = "FirstNameValue", RawContent = new JRaw("[1,2,3,4,5]"), LastName = "LastNameValue" }; JObject o = JObject.FromObject(raw); JsonReader reader = new JTokenReader(o); JsonSerializer serializer = new JsonSerializer(); raw = (PersonRaw)serializer.Deserialize(reader, typeof(PersonRaw)); Assert.AreEqual("FirstNameValue", raw.FirstName); Assert.AreEqual("LastNameValue", raw.LastName); Assert.AreEqual("[1,2,3,4,5]", raw.RawContent.Value); } [Test] public void Parse_ShouldThrowOnUnexpectedToken() { ExceptionAssert.Throws(() => { string json = @"[""prop""]"; JObject.Parse(json); }, "Error reading JObject from JsonReader. Current JsonReader item is not an object: StartArray. Path '', line 1, position 1."); } [Test] public void ParseJavaScriptDate() { string json = @"[new Date(1207285200000)]"; JArray a = (JArray)JsonConvert.DeserializeObject(json); JValue v = (JValue)a[0]; Assert.AreEqual(DateTimeUtils.ConvertJavaScriptTicksToDateTime(1207285200000), (DateTime)v); } [Test] public void GenericValueCast() { string json = @"{""foo"":true}"; JObject o = (JObject)JsonConvert.DeserializeObject(json); bool? value = o.Value("foo"); Assert.AreEqual(true, value); json = @"{""foo"":null}"; o = (JObject)JsonConvert.DeserializeObject(json); value = o.Value("foo"); Assert.AreEqual(null, value); } [Test] public void Blog() { ExceptionAssert.Throws(() => { JObject.Parse(@"{ ""name"": ""James"", ]!#$THIS IS: BAD JSON![{}}}}] }"); }, "Invalid property identifier character: ]. Path 'name', line 3, position 5."); } [Test] public void RawChildValues() { JObject o = new JObject(); o["val1"] = new JRaw("1"); o["val2"] = new JRaw("1"); string json = o.ToString(); StringAssert.AreEqual(@"{ ""val1"": 1, ""val2"": 1 }", json); } [Test] public void Iterate() { JObject o = new JObject(); o.Add("PropertyNameValue1", new JValue(1)); o.Add("PropertyNameValue2", new JValue(2)); JToken t = o; int i = 1; foreach (JProperty property in t) { Assert.AreEqual("PropertyNameValue" + i, property.Name); Assert.AreEqual(i, (int)property.Value); i++; } } [Test] public void KeyValuePairIterate() { JObject o = new JObject(); o.Add("PropertyNameValue1", new JValue(1)); o.Add("PropertyNameValue2", new JValue(2)); int i = 1; foreach (KeyValuePair pair in o) { Assert.AreEqual("PropertyNameValue" + i, pair.Key); Assert.AreEqual(i, (int)pair.Value); i++; } } [Test] public void WriteObjectNullStringValue() { string s = null; JValue v = new JValue(s); Assert.AreEqual(null, v.Value); Assert.AreEqual(JTokenType.String, v.Type); JObject o = new JObject(); o["title"] = v; string output = o.ToString(); StringAssert.AreEqual(@"{ ""title"": null }", output); } [Test] public void Example() { string json = @"{ ""Name"": ""Apple"", ""Expiry"": new Date(1230422400000), ""Price"": 3.99, ""Sizes"": [ ""Small"", ""Medium"", ""Large"" ] }"; JObject o = JObject.Parse(json); string name = (string)o["Name"]; // Apple JArray sizes = (JArray)o["Sizes"]; string smallest = (string)sizes[0]; // Small Console.WriteLine(name); Console.WriteLine(smallest); } [Test] public void DeserializeClassManually() { string jsonText = @"{ ""short"": { ""original"":""http://www.foo.com/"", ""short"":""krehqk"", ""error"": { ""code"":0, ""msg"":""No action taken"" } } }"; JObject json = JObject.Parse(jsonText); Shortie shortie = new Shortie { Original = (string)json["short"]["original"], Short = (string)json["short"]["short"], Error = new ShortieException { Code = (int)json["short"]["error"]["code"], ErrorMessage = (string)json["short"]["error"]["msg"] } }; Console.WriteLine(shortie.Original); // http://www.foo.com/ Console.WriteLine(shortie.Error.ErrorMessage); // No action taken Assert.AreEqual("http://www.foo.com/", shortie.Original); Assert.AreEqual("krehqk", shortie.Short); Assert.AreEqual(null, shortie.Shortened); Assert.AreEqual(0, shortie.Error.Code); Assert.AreEqual("No action taken", shortie.Error.ErrorMessage); } [Test] public void JObjectContainingHtml() { JObject o = new JObject(); o["rc"] = new JValue(200); o["m"] = new JValue(""); o["o"] = new JValue(@"
" + StringUtils.CarriageReturnLineFeed + @"
"); StringAssert.AreEqual(@"{ ""rc"": 200, ""m"": """", ""o"": ""
\r\n
"" }", o.ToString()); } [Test] public void ImplicitValueConversions() { JObject moss = new JObject(); moss["FirstName"] = new JValue("Maurice"); moss["LastName"] = new JValue("Moss"); moss["BirthDate"] = new JValue(new DateTime(1977, 12, 30)); moss["Department"] = new JValue("IT"); moss["JobTitle"] = new JValue("Support"); Console.WriteLine(moss.ToString()); //{ // "FirstName": "Maurice", // "LastName": "Moss", // "BirthDate": "\/Date(252241200000+1300)\/", // "Department": "IT", // "JobTitle": "Support" //} JObject jen = new JObject(); jen["FirstName"] = "Jen"; jen["LastName"] = "Barber"; jen["BirthDate"] = new DateTime(1978, 3, 15); jen["Department"] = "IT"; jen["JobTitle"] = "Manager"; Console.WriteLine(jen.ToString()); //{ // "FirstName": "Jen", // "LastName": "Barber", // "BirthDate": "\/Date(258721200000+1300)\/", // "Department": "IT", // "JobTitle": "Manager" //} } [Test] public void ReplaceJPropertyWithJPropertyWithSameName() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); JObject o = new JObject(p1, p2); IList l = o; Assert.AreEqual(p1, l[0]); Assert.AreEqual(p2, l[1]); JProperty p3 = new JProperty("Test1", "III"); p1.Replace(p3); Assert.AreEqual(null, p1.Parent); Assert.AreEqual(l, p3.Parent); Assert.AreEqual(p3, l[0]); Assert.AreEqual(p2, l[1]); Assert.AreEqual(2, l.Count); Assert.AreEqual(2, o.Properties().Count()); JProperty p4 = new JProperty("Test4", "IV"); p2.Replace(p4); Assert.AreEqual(null, p2.Parent); Assert.AreEqual(l, p4.Parent); Assert.AreEqual(p3, l[0]); Assert.AreEqual(p4, l[1]); } #if !(NET20 || NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void PropertyChanging() { object changing = null; object changed = null; int changingCount = 0; int changedCount = 0; JObject o = new JObject(); o.PropertyChanging += (sender, args) => { JObject s = (JObject)sender; changing = (s[args.PropertyName] != null) ? ((JValue)s[args.PropertyName]).Value : null; changingCount++; }; o.PropertyChanged += (sender, args) => { JObject s = (JObject)sender; changed = (s[args.PropertyName] != null) ? ((JValue)s[args.PropertyName]).Value : null; changedCount++; }; o["StringValue"] = "value1"; Assert.AreEqual(null, changing); Assert.AreEqual("value1", changed); Assert.AreEqual("value1", (string)o["StringValue"]); Assert.AreEqual(1, changingCount); Assert.AreEqual(1, changedCount); o["StringValue"] = "value1"; Assert.AreEqual(1, changingCount); Assert.AreEqual(1, changedCount); o["StringValue"] = "value2"; Assert.AreEqual("value1", changing); Assert.AreEqual("value2", changed); Assert.AreEqual("value2", (string)o["StringValue"]); Assert.AreEqual(2, changingCount); Assert.AreEqual(2, changedCount); o["StringValue"] = null; Assert.AreEqual("value2", changing); Assert.AreEqual(null, changed); Assert.AreEqual(null, (string)o["StringValue"]); Assert.AreEqual(3, changingCount); Assert.AreEqual(3, changedCount); o["NullValue"] = null; Assert.AreEqual(null, changing); Assert.AreEqual(null, changed); Assert.AreEqual(JValue.CreateNull(), o["NullValue"]); Assert.AreEqual(4, changingCount); Assert.AreEqual(4, changedCount); o["NullValue"] = null; Assert.AreEqual(4, changingCount); Assert.AreEqual(4, changedCount); } #endif [Test] public void PropertyChanged() { object changed = null; int changedCount = 0; JObject o = new JObject(); o.PropertyChanged += (sender, args) => { JObject s = (JObject)sender; changed = (s[args.PropertyName] != null) ? ((JValue)s[args.PropertyName]).Value : null; changedCount++; }; o["StringValue"] = "value1"; Assert.AreEqual("value1", changed); Assert.AreEqual("value1", (string)o["StringValue"]); Assert.AreEqual(1, changedCount); o["StringValue"] = "value1"; Assert.AreEqual(1, changedCount); o["StringValue"] = "value2"; Assert.AreEqual("value2", changed); Assert.AreEqual("value2", (string)o["StringValue"]); Assert.AreEqual(2, changedCount); o["StringValue"] = null; Assert.AreEqual(null, changed); Assert.AreEqual(null, (string)o["StringValue"]); Assert.AreEqual(3, changedCount); o["NullValue"] = null; Assert.AreEqual(null, changed); Assert.AreEqual(JValue.CreateNull(), o["NullValue"]); Assert.AreEqual(4, changedCount); o["NullValue"] = null; Assert.AreEqual(4, changedCount); } [Test] public void IListContains() { JProperty p = new JProperty("Test", 1); IList l = new JObject(p); Assert.IsTrue(l.Contains(p)); Assert.IsFalse(l.Contains(new JProperty("Test", 1))); } [Test] public void IListIndexOf() { JProperty p = new JProperty("Test", 1); IList l = new JObject(p); Assert.AreEqual(0, l.IndexOf(p)); Assert.AreEqual(-1, l.IndexOf(new JProperty("Test", 1))); } [Test] public void IListClear() { JProperty p = new JProperty("Test", 1); IList l = new JObject(p); Assert.AreEqual(1, l.Count); l.Clear(); Assert.AreEqual(0, l.Count); } [Test] public void IListCopyTo() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); object[] a = new object[l.Count]; l.CopyTo(a, 0); Assert.AreEqual(p1, a[0]); Assert.AreEqual(p2, a[1]); } [Test] public void IListAdd() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); l.Add(p3); Assert.AreEqual(3, l.Count); Assert.AreEqual(p3, l[2]); } [Test] public void IListAddBadToken() { ExceptionAssert.Throws(() => { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); l.Add(new JValue("Bad!")); }, "Can not add Newtonsoft.Json.Linq.JValue to Newtonsoft.Json.Linq.JObject."); } [Test] public void IListAddBadValue() { ExceptionAssert.Throws(() => { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); l.Add("Bad!"); }, "Argument is not a JToken."); } [Test] public void IListAddPropertyWithExistingName() { ExceptionAssert.Throws(() => { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test2", "II"); l.Add(p3); }, "Can not add property Test2 to Newtonsoft.Json.Linq.JObject. Property with the same name already exists on object."); } [Test] public void IListRemove() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); // won't do anything l.Remove(p3); Assert.AreEqual(2, l.Count); l.Remove(p1); Assert.AreEqual(1, l.Count); Assert.IsFalse(l.Contains(p1)); Assert.IsTrue(l.Contains(p2)); l.Remove(p2); Assert.AreEqual(0, l.Count); Assert.IsFalse(l.Contains(p2)); Assert.AreEqual(null, p2.Parent); } [Test] public void IListRemoveAt() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); // won't do anything l.RemoveAt(0); l.Remove(p1); Assert.AreEqual(1, l.Count); l.Remove(p2); Assert.AreEqual(0, l.Count); } [Test] public void IListInsert() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); l.Insert(1, p3); Assert.AreEqual(l, p3.Parent); Assert.AreEqual(p1, l[0]); Assert.AreEqual(p3, l[1]); Assert.AreEqual(p2, l[2]); } [Test] public void IListIsReadOnly() { IList l = new JObject(); Assert.IsFalse(l.IsReadOnly); } [Test] public void IListIsFixedSize() { IList l = new JObject(); Assert.IsFalse(l.IsFixedSize); } [Test] public void IListSetItem() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); l[0] = p3; Assert.AreEqual(p3, l[0]); Assert.AreEqual(p2, l[1]); } [Test] public void IListSetItemAlreadyExists() { ExceptionAssert.Throws(() => { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); l[0] = p3; l[1] = p3; }, "Can not add property Test3 to Newtonsoft.Json.Linq.JObject. Property with the same name already exists on object."); } [Test] public void IListSetItemInvalid() { ExceptionAssert.Throws(() => { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); l[0] = new JValue(true); }, @"Can not add Newtonsoft.Json.Linq.JValue to Newtonsoft.Json.Linq.JObject."); } [Test] public void IListSyncRoot() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); Assert.IsNotNull(l.SyncRoot); } [Test] public void IListIsSynchronized() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); Assert.IsFalse(l.IsSynchronized); } [Test] public void GenericListJTokenContains() { JProperty p = new JProperty("Test", 1); IList l = new JObject(p); Assert.IsTrue(l.Contains(p)); Assert.IsFalse(l.Contains(new JProperty("Test", 1))); } [Test] public void GenericListJTokenIndexOf() { JProperty p = new JProperty("Test", 1); IList l = new JObject(p); Assert.AreEqual(0, l.IndexOf(p)); Assert.AreEqual(-1, l.IndexOf(new JProperty("Test", 1))); } [Test] public void GenericListJTokenClear() { JProperty p = new JProperty("Test", 1); IList l = new JObject(p); Assert.AreEqual(1, l.Count); l.Clear(); Assert.AreEqual(0, l.Count); } [Test] public void GenericListJTokenCopyTo() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JToken[] a = new JToken[l.Count]; l.CopyTo(a, 0); Assert.AreEqual(p1, a[0]); Assert.AreEqual(p2, a[1]); } [Test] public void GenericListJTokenAdd() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); l.Add(p3); Assert.AreEqual(3, l.Count); Assert.AreEqual(p3, l[2]); } [Test] public void GenericListJTokenAddBadToken() { ExceptionAssert.Throws(() => { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); l.Add(new JValue("Bad!")); }, "Can not add Newtonsoft.Json.Linq.JValue to Newtonsoft.Json.Linq.JObject."); } [Test] public void GenericListJTokenAddBadValue() { ExceptionAssert.Throws(() => { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); // string is implicitly converted to JValue l.Add("Bad!"); }, "Can not add Newtonsoft.Json.Linq.JValue to Newtonsoft.Json.Linq.JObject."); } [Test] public void GenericListJTokenAddPropertyWithExistingName() { ExceptionAssert.Throws(() => { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test2", "II"); l.Add(p3); }, "Can not add property Test2 to Newtonsoft.Json.Linq.JObject. Property with the same name already exists on object."); } [Test] public void GenericListJTokenRemove() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); // won't do anything Assert.IsFalse(l.Remove(p3)); Assert.AreEqual(2, l.Count); Assert.IsTrue(l.Remove(p1)); Assert.AreEqual(1, l.Count); Assert.IsFalse(l.Contains(p1)); Assert.IsTrue(l.Contains(p2)); Assert.IsTrue(l.Remove(p2)); Assert.AreEqual(0, l.Count); Assert.IsFalse(l.Contains(p2)); Assert.AreEqual(null, p2.Parent); } [Test] public void GenericListJTokenRemoveAt() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); // won't do anything l.RemoveAt(0); l.Remove(p1); Assert.AreEqual(1, l.Count); l.Remove(p2); Assert.AreEqual(0, l.Count); } [Test] public void GenericListJTokenInsert() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); l.Insert(1, p3); Assert.AreEqual(l, p3.Parent); Assert.AreEqual(p1, l[0]); Assert.AreEqual(p3, l[1]); Assert.AreEqual(p2, l[2]); } [Test] public void GenericListJTokenIsReadOnly() { IList l = new JObject(); Assert.IsFalse(l.IsReadOnly); } [Test] public void GenericListJTokenSetItem() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); l[0] = p3; Assert.AreEqual(p3, l[0]); Assert.AreEqual(p2, l[1]); } [Test] public void GenericListJTokenSetItemAlreadyExists() { ExceptionAssert.Throws(() => { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); IList l = new JObject(p1, p2); JProperty p3 = new JProperty("Test3", "III"); l[0] = p3; l[1] = p3; }, "Can not add property Test3 to Newtonsoft.Json.Linq.JObject. Property with the same name already exists on object."); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void IBindingListSortDirection() { IBindingList l = new JObject(); Assert.AreEqual(ListSortDirection.Ascending, l.SortDirection); } [Test] public void IBindingListSortProperty() { IBindingList l = new JObject(); Assert.AreEqual(null, l.SortProperty); } [Test] public void IBindingListSupportsChangeNotification() { IBindingList l = new JObject(); Assert.AreEqual(true, l.SupportsChangeNotification); } [Test] public void IBindingListSupportsSearching() { IBindingList l = new JObject(); Assert.AreEqual(false, l.SupportsSearching); } [Test] public void IBindingListSupportsSorting() { IBindingList l = new JObject(); Assert.AreEqual(false, l.SupportsSorting); } [Test] public void IBindingListAllowEdit() { IBindingList l = new JObject(); Assert.AreEqual(true, l.AllowEdit); } [Test] public void IBindingListAllowNew() { IBindingList l = new JObject(); Assert.AreEqual(true, l.AllowNew); } [Test] public void IBindingListAllowRemove() { IBindingList l = new JObject(); Assert.AreEqual(true, l.AllowRemove); } [Test] public void IBindingListAddIndex() { IBindingList l = new JObject(); // do nothing l.AddIndex(null); } [Test] public void IBindingListApplySort() { ExceptionAssert.Throws(() => { IBindingList l = new JObject(); l.ApplySort(null, ListSortDirection.Ascending); }, "Specified method is not supported."); } [Test] public void IBindingListRemoveSort() { ExceptionAssert.Throws(() => { IBindingList l = new JObject(); l.RemoveSort(); }, "Specified method is not supported."); } [Test] public void IBindingListRemoveIndex() { IBindingList l = new JObject(); // do nothing l.RemoveIndex(null); } [Test] public void IBindingListFind() { ExceptionAssert.Throws(() => { IBindingList l = new JObject(); l.Find(null, null); }, "Specified method is not supported."); } [Test] public void IBindingListIsSorted() { IBindingList l = new JObject(); Assert.AreEqual(false, l.IsSorted); } [Test] public void IBindingListAddNew() { ExceptionAssert.Throws(() => { IBindingList l = new JObject(); l.AddNew(); }, "Could not determine new value to add to 'Newtonsoft.Json.Linq.JObject'."); } [Test] public void IBindingListAddNewWithEvent() { JObject o = new JObject(); o._addingNew += (s, e) => e.NewObject = new JProperty("Property!"); IBindingList l = o; object newObject = l.AddNew(); Assert.IsNotNull(newObject); JProperty p = (JProperty)newObject; Assert.AreEqual("Property!", p.Name); Assert.AreEqual(o, p.Parent); } [Test] public void ITypedListGetListName() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); ITypedList l = new JObject(p1, p2); Assert.AreEqual(string.Empty, l.GetListName(null)); } [Test] public void ITypedListGetItemProperties() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); ITypedList l = new JObject(p1, p2); PropertyDescriptorCollection propertyDescriptors = l.GetItemProperties(null); Assert.IsNull(propertyDescriptors); } [Test] public void ListChanged() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); JObject o = new JObject(p1, p2); ListChangedType? changedType = null; int? index = null; o.ListChanged += (s, a) => { changedType = a.ListChangedType; index = a.NewIndex; }; JProperty p3 = new JProperty("Test3", "III"); o.Add(p3); Assert.AreEqual(changedType, ListChangedType.ItemAdded); Assert.AreEqual(index, 2); Assert.AreEqual(p3, ((IList)o)[index.Value]); JProperty p4 = new JProperty("Test4", "IV"); ((IList)o)[index.Value] = p4; Assert.AreEqual(changedType, ListChangedType.ItemChanged); Assert.AreEqual(index, 2); Assert.AreEqual(p4, ((IList)o)[index.Value]); Assert.IsFalse(((IList)o).Contains(p3)); Assert.IsTrue(((IList)o).Contains(p4)); o["Test1"] = 2; Assert.AreEqual(changedType, ListChangedType.ItemChanged); Assert.AreEqual(index, 0); Assert.AreEqual(2, (int)o["Test1"]); } #endif #if !(NET20 || NET35 || PORTABLE40) [Test] public void CollectionChanged() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); JObject o = new JObject(p1, p2); NotifyCollectionChangedAction? changedType = null; int? index = null; o._collectionChanged += (s, a) => { changedType = a.Action; index = a.NewStartingIndex; }; JProperty p3 = new JProperty("Test3", "III"); o.Add(p3); Assert.AreEqual(changedType, NotifyCollectionChangedAction.Add); Assert.AreEqual(index, 2); Assert.AreEqual(p3, ((IList)o)[index.Value]); JProperty p4 = new JProperty("Test4", "IV"); ((IList)o)[index.Value] = p4; Assert.AreEqual(changedType, NotifyCollectionChangedAction.Replace); Assert.AreEqual(index, 2); Assert.AreEqual(p4, ((IList)o)[index.Value]); Assert.IsFalse(((IList)o).Contains(p3)); Assert.IsTrue(((IList)o).Contains(p4)); o["Test1"] = 2; Assert.AreEqual(changedType, NotifyCollectionChangedAction.Replace); Assert.AreEqual(index, 0); Assert.AreEqual(2, (int)o["Test1"]); } #endif [Test] public void GetGeocodeAddress() { string json = @"{ ""name"": ""Address: 435 North Mulford Road Rockford, IL 61107"", ""Status"": { ""code"": 200, ""request"": ""geocode"" }, ""Placemark"": [ { ""id"": ""p1"", ""address"": ""435 N Mulford Rd, Rockford, IL 61107, USA"", ""AddressDetails"": { ""Accuracy"" : 8, ""Country"" : { ""AdministrativeArea"" : { ""AdministrativeAreaName"" : ""IL"", ""SubAdministrativeArea"" : { ""Locality"" : { ""LocalityName"" : ""Rockford"", ""PostalCode"" : { ""PostalCodeNumber"" : ""61107"" }, ""Thoroughfare"" : { ""ThoroughfareName"" : ""435 N Mulford Rd"" } }, ""SubAdministrativeAreaName"" : ""Winnebago"" } }, ""CountryName"" : ""USA"", ""CountryNameCode"" : ""US"" } }, ""ExtendedData"": { ""LatLonBox"": { ""north"": 42.2753076, ""south"": 42.2690124, ""east"": -88.9964645, ""west"": -89.0027597 } }, ""Point"": { ""coordinates"": [ -88.9995886, 42.2721596, 0 ] } } ] }"; JObject o = JObject.Parse(json); string searchAddress = (string)o["Placemark"][0]["AddressDetails"]["Country"]["AdministrativeArea"]["SubAdministrativeArea"]["Locality"]["Thoroughfare"]["ThoroughfareName"]; Assert.AreEqual("435 N Mulford Rd", searchAddress); } [Test] public void SetValueWithInvalidPropertyName() { ExceptionAssert.Throws(() => { JObject o = new JObject(); o[0] = new JValue(3); }, "Set JObject values with invalid key value: 0. Object property name expected."); } [Test] public void SetValue() { object key = "TestKey"; JObject o = new JObject(); o[key] = new JValue(3); Assert.AreEqual(3, (int)o[key]); } [Test] public void ParseMultipleProperties() { string json = @"{ ""Name"": ""Name1"", ""Name"": ""Name2"" }"; JObject o = JObject.Parse(json); string value = (string)o["Name"]; Assert.AreEqual("Name2", value); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void WriteObjectNullDBNullValue() { DBNull dbNull = DBNull.Value; JValue v = new JValue(dbNull); Assert.AreEqual(DBNull.Value, v.Value); Assert.AreEqual(JTokenType.Null, v.Type); JObject o = new JObject(); o["title"] = v; string output = o.ToString(); StringAssert.AreEqual(@"{ ""title"": null }", output); } #endif [Test] public void InvalidValueCastExceptionMessage() { ExceptionAssert.Throws(() => { string json = @"{ ""responseData"": {}, ""responseDetails"": null, ""responseStatus"": 200 }"; JObject o = JObject.Parse(json); string name = (string)o["responseData"]; }, "Can not convert Object to String."); } [Test] public void InvalidPropertyValueCastExceptionMessage() { ExceptionAssert.Throws(() => { string json = @"{ ""responseData"": {}, ""responseDetails"": null, ""responseStatus"": 200 }"; JObject o = JObject.Parse(json); string name = (string)o.Property("responseData"); }, "Can not convert Object to String."); } [Test] public void ParseIncomplete() { ExceptionAssert.Throws(() => { JObject.Parse("{ foo:"); }, "Unexpected end of content while loading JObject. Path 'foo', line 1, position 6."); } [Test] public void LoadFromNestedObject() { string jsonText = @"{ ""short"": { ""error"": { ""code"":0, ""msg"":""No action taken"" } } }"; JsonReader reader = new JsonTextReader(new StringReader(jsonText)); reader.Read(); reader.Read(); reader.Read(); reader.Read(); reader.Read(); JObject o = (JObject)JToken.ReadFrom(reader); Assert.IsNotNull(o); StringAssert.AreEqual(@"{ ""code"": 0, ""msg"": ""No action taken"" }", o.ToString(Formatting.Indented)); } [Test] public void LoadFromNestedObjectIncomplete() { ExceptionAssert.Throws(() => { string jsonText = @"{ ""short"": { ""error"": { ""code"":0"; JsonReader reader = new JsonTextReader(new StringReader(jsonText)); reader.Read(); reader.Read(); reader.Read(); reader.Read(); reader.Read(); JToken.ReadFrom(reader); }, "Unexpected end of content while loading JObject. Path 'short.error.code', line 6, position 15."); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void GetProperties() { JObject o = JObject.Parse("{'prop1':12,'prop2':'hi!','prop3':null,'prop4':[1,2,3]}"); ICustomTypeDescriptor descriptor = o; PropertyDescriptorCollection properties = descriptor.GetProperties(); Assert.AreEqual(4, properties.Count); PropertyDescriptor prop1 = properties[0]; Assert.AreEqual("prop1", prop1.Name); Assert.AreEqual(typeof(object), prop1.PropertyType); Assert.AreEqual(typeof(JObject), prop1.ComponentType); Assert.AreEqual(false, prop1.CanResetValue(o)); Assert.AreEqual(false, prop1.ShouldSerializeValue(o)); PropertyDescriptor prop2 = properties[1]; Assert.AreEqual("prop2", prop2.Name); Assert.AreEqual(typeof(object), prop2.PropertyType); Assert.AreEqual(typeof(JObject), prop2.ComponentType); Assert.AreEqual(false, prop2.CanResetValue(o)); Assert.AreEqual(false, prop2.ShouldSerializeValue(o)); PropertyDescriptor prop3 = properties[2]; Assert.AreEqual("prop3", prop3.Name); Assert.AreEqual(typeof(object), prop3.PropertyType); Assert.AreEqual(typeof(JObject), prop3.ComponentType); Assert.AreEqual(false, prop3.CanResetValue(o)); Assert.AreEqual(false, prop3.ShouldSerializeValue(o)); PropertyDescriptor prop4 = properties[3]; Assert.AreEqual("prop4", prop4.Name); Assert.AreEqual(typeof(object), prop4.PropertyType); Assert.AreEqual(typeof(JObject), prop4.ComponentType); Assert.AreEqual(false, prop4.CanResetValue(o)); Assert.AreEqual(false, prop4.ShouldSerializeValue(o)); } #endif [Test] public void ParseEmptyObjectWithComment() { JObject o = JObject.Parse("{ /* A Comment */ }"); Assert.AreEqual(0, o.Count); } [Test] public void FromObjectTimeSpan() { JValue v = (JValue)JToken.FromObject(TimeSpan.FromDays(1)); Assert.AreEqual(v.Value, TimeSpan.FromDays(1)); Assert.AreEqual("1.00:00:00", v.ToString()); } [Test] public void FromObjectUri() { JValue v = (JValue)JToken.FromObject(new Uri("http://www.stuff.co.nz")); Assert.AreEqual(v.Value, new Uri("http://www.stuff.co.nz")); Assert.AreEqual("http://www.stuff.co.nz/", v.ToString()); } [Test] public void FromObjectGuid() { JValue v = (JValue)JToken.FromObject(new Guid("9065ACF3-C820-467D-BE50-8D4664BEAF35")); Assert.AreEqual(v.Value, new Guid("9065ACF3-C820-467D-BE50-8D4664BEAF35")); Assert.AreEqual("9065acf3-c820-467d-be50-8d4664beaf35", v.ToString()); } [Test] public void ParseAdditionalContent() { ExceptionAssert.Throws(() => { string json = @"{ ""Name"": ""Apple"", ""Expiry"": new Date(1230422400000), ""Price"": 3.99, ""Sizes"": [ ""Small"", ""Medium"", ""Large"" ] }, 987987"; JObject o = JObject.Parse(json); }, "Additional text encountered after finished reading JSON content: ,. Path '', line 10, position 2."); } [Test] public void DeepEqualsIgnoreOrder() { JObject o1 = new JObject( new JProperty("null", null), new JProperty("integer", 1), new JProperty("string", "string!"), new JProperty("decimal", 0.5m), new JProperty("array", new JArray(1, 2))); Assert.IsTrue(o1.DeepEquals(o1)); JObject o2 = new JObject( new JProperty("null", null), new JProperty("string", "string!"), new JProperty("decimal", 0.5m), new JProperty("integer", 1), new JProperty("array", new JArray(1, 2))); Assert.IsTrue(o1.DeepEquals(o2)); JObject o3 = new JObject( new JProperty("null", null), new JProperty("string", "string!"), new JProperty("decimal", 0.5m), new JProperty("integer", 2), new JProperty("array", new JArray(1, 2))); Assert.IsFalse(o1.DeepEquals(o3)); JObject o4 = new JObject( new JProperty("null", null), new JProperty("string", "string!"), new JProperty("decimal", 0.5m), new JProperty("integer", 1), new JProperty("array", new JArray(2, 1))); Assert.IsFalse(o1.DeepEquals(o4)); JObject o5 = new JObject( new JProperty("null", null), new JProperty("string", "string!"), new JProperty("decimal", 0.5m), new JProperty("integer", 1)); Assert.IsFalse(o1.DeepEquals(o5)); Assert.IsFalse(o1.DeepEquals(null)); } [Test] public void ToListOnEmptyObject() { JObject o = JObject.Parse(@"{}"); IList l1 = o.ToList(); Assert.AreEqual(0, l1.Count); IList> l2 = o.ToList>(); Assert.AreEqual(0, l2.Count); o = JObject.Parse(@"{'hi':null}"); l1 = o.ToList(); Assert.AreEqual(1, l1.Count); l2 = o.ToList>(); Assert.AreEqual(1, l2.Count); } [Test] public void EmptyObjectDeepEquals() { Assert.IsTrue(JToken.DeepEquals(new JObject(), new JObject())); JObject a = new JObject(); JObject b = new JObject(); b.Add("hi", "bye"); b.Remove("hi"); Assert.IsTrue(JToken.DeepEquals(a, b)); Assert.IsTrue(JToken.DeepEquals(b, a)); } [Test] public void GetValueBlogExample() { JObject o = JObject.Parse(@"{ 'name': 'Lower', 'NAME': 'Upper' }"); string exactMatch = (string)o.GetValue("NAME", StringComparison.OrdinalIgnoreCase); // Upper string ignoreCase = (string)o.GetValue("Name", StringComparison.OrdinalIgnoreCase); // Lower Assert.AreEqual("Upper", exactMatch); Assert.AreEqual("Lower", ignoreCase); } [Test] public void GetValue() { JObject a = new JObject(); a["Name"] = "Name!"; a["name"] = "name!"; a["title"] = "Title!"; Assert.AreEqual(null, a.GetValue("NAME", StringComparison.Ordinal)); Assert.AreEqual(null, a.GetValue("NAME")); Assert.AreEqual(null, a.GetValue("TITLE")); Assert.AreEqual("Name!", (string)a.GetValue("NAME", StringComparison.OrdinalIgnoreCase)); Assert.AreEqual("name!", (string)a.GetValue("name", StringComparison.Ordinal)); Assert.AreEqual(null, a.GetValue(null, StringComparison.Ordinal)); Assert.AreEqual(null, a.GetValue(null)); JToken v; Assert.IsFalse(a.TryGetValue("NAME", StringComparison.Ordinal, out v)); Assert.AreEqual(null, v); Assert.IsFalse(a.TryGetValue("NAME", out v)); Assert.IsFalse(a.TryGetValue("TITLE", out v)); Assert.IsTrue(a.TryGetValue("NAME", StringComparison.OrdinalIgnoreCase, out v)); Assert.AreEqual("Name!", (string)v); Assert.IsTrue(a.TryGetValue("name", StringComparison.Ordinal, out v)); Assert.AreEqual("name!", (string)v); Assert.IsFalse(a.TryGetValue(null, StringComparison.Ordinal, out v)); } public class FooJsonConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var token = JToken.FromObject(value, new JsonSerializer { ContractResolver = new CamelCasePropertyNamesContractResolver() }); if (token.Type == JTokenType.Object) { var o = (JObject)token; o.AddFirst(new JProperty("foo", "bar")); o.WriteTo(writer); } else token.WriteTo(writer); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { throw new NotSupportedException("This custom converter only supportes serialization and not deserialization."); } public override bool CanRead { get { return false; } } public override bool CanConvert(Type objectType) { return true; } } [Test] public void FromObjectInsideConverterWithCustomSerializer() { var p = new Person { Name = "Daniel Wertheim", }; var settings = new JsonSerializerSettings { Converters = new List { new FooJsonConverter() }, ContractResolver = new CamelCasePropertyNamesContractResolver() }; var json = JsonConvert.SerializeObject(p, settings); Assert.AreEqual(@"{""foo"":""bar"",""name"":""Daniel Wertheim"",""birthDate"":""0001-01-01T00:00:00"",""lastModified"":""0001-01-01T00:00:00""}", json); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/ComponentModel/0000775000175000017500000000000012454416117026165 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/ComponentModel/BindingTests.cs0000664000175000017500000000535212454416117031116 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE || PORTABLE40 || ASPNETCORE50) using NUnit.Framework; using System.Web.UI; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Linq.ComponentModel { [TestFixture] public class BindingTests : TestFixtureBase { [Test] public void DataBinderEval() { JObject o = new JObject( new JProperty("First", "String!"), new JProperty("Second", 12345.6789m), new JProperty("Third", new JArray( 1, 2, 3, 4, 5, new JObject( new JProperty("Fourth", "String!"), new JProperty("Fifth", new JObject( new JProperty("Sixth", "String!"))))))); object value; value = (string)DataBinder.Eval(o, "First.Value"); Assert.AreEqual(value, (string)o["First"]); value = DataBinder.Eval(o, "Second.Value"); Assert.AreEqual(value, (decimal)o["Second"]); value = DataBinder.Eval(o, "Third"); Assert.AreEqual(value, o["Third"]); value = DataBinder.Eval(o, "Third[0].Value"); Assert.AreEqual((int)value, (int)o["Third"][0]); value = DataBinder.Eval(o, "Third[5].Fourth.Value"); Assert.AreEqual(value, (string)o["Third"][5]["Fourth"]); value = DataBinder.Eval(o, "Third[5].Fifth.Sixth.Value"); Assert.AreEqual(value, (string)o["Third"][5]["Fifth"]["Sixth"]); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/ComponentModel/JPropertyDescriptorTests.cs0000664000175000017500000000563312454416117033543 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NETFX_CORE || PORTABLE || PORTABLE40 || ASPNETCORE50) using NUnit.Framework; using Newtonsoft.Json.Linq; namespace Newtonsoft.Json.Tests.Linq.ComponentModel { [TestFixture] public class JPropertyDescriptorTests : TestFixtureBase { [Test] public void GetValue() { JObject o = JObject.Parse("{prop1:'12345!',prop2:[1,'two','III']}"); JPropertyDescriptor prop1 = new JPropertyDescriptor("prop1"); JPropertyDescriptor prop2 = new JPropertyDescriptor("prop2"); Assert.AreEqual("12345!", ((JValue)prop1.GetValue(o)).Value); Assert.AreEqual(o["prop2"], prop2.GetValue(o)); } [Test] public void SetValue() { JObject o = JObject.Parse("{prop1:'12345!'}"); JPropertyDescriptor propertyDescriptor1 = new JPropertyDescriptor("prop1"); propertyDescriptor1.SetValue(o, "54321!"); Assert.AreEqual("54321!", (string)o["prop1"]); } [Test] public void ResetValue() { JObject o = JObject.Parse("{prop1:'12345!'}"); JPropertyDescriptor propertyDescriptor1 = new JPropertyDescriptor("prop1"); propertyDescriptor1.ResetValue(o); Assert.AreEqual("12345!", (string)o["prop1"]); } [Test] public void IsReadOnly() { JPropertyDescriptor propertyDescriptor1 = new JPropertyDescriptor("prop1"); Assert.AreEqual(false, propertyDescriptor1.IsReadOnly); } [Test] public void PropertyType() { JPropertyDescriptor propertyDescriptor1 = new JPropertyDescriptor("prop1"); Assert.AreEqual(typeof(object), propertyDescriptor1.PropertyType); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JValueTests.cs0000664000175000017500000006446412454416117026020 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.IO; using System.Runtime.Serialization; using Newtonsoft.Json.Tests.TestObjects; #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif using System.Text; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; using System.Globalization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using Newtonsoft.Json.Tests.Serialization; namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JValueTests : TestFixtureBase { [Test] public void UndefinedTests() { JValue v = JValue.CreateUndefined(); Assert.AreEqual(JTokenType.Undefined, v.Type); Assert.AreEqual(null, v.Value); Assert.AreEqual("", v.ToString()); Assert.AreEqual("undefined", v.ToString(Formatting.None)); } [Test] public void FloatParseHandling() { JValue v = (JValue)JToken.ReadFrom( new JsonTextReader(new StringReader("9.9")) { FloatParseHandling = Json.FloatParseHandling.Decimal }); Assert.AreEqual(9.9m, v.Value); Assert.AreEqual(typeof(decimal), v.Value.GetType()); } [Test] public void ToObjectWithDefaultSettings() { try { JsonConvert.DefaultSettings = () => { return new JsonSerializerSettings { Converters = { new MetroStringConverter() } }; }; JValue v = new JValue(":::STRING:::"); string s = v.ToObject(); Assert.AreEqual("string", s); } finally { JsonConvert.DefaultSettings = null; } } [Test] public void ChangeValue() { JValue v = new JValue(true); Assert.AreEqual(true, v.Value); Assert.AreEqual(JTokenType.Boolean, v.Type); v.Value = "Pie"; Assert.AreEqual("Pie", v.Value); Assert.AreEqual(JTokenType.String, v.Type); v.Value = null; Assert.AreEqual(null, v.Value); Assert.AreEqual(JTokenType.Null, v.Type); v.Value = (int?)null; Assert.AreEqual(null, v.Value); Assert.AreEqual(JTokenType.Null, v.Type); v.Value = "Pie"; Assert.AreEqual("Pie", v.Value); Assert.AreEqual(JTokenType.String, v.Type); #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) v.Value = DBNull.Value; Assert.AreEqual(DBNull.Value, v.Value); Assert.AreEqual(JTokenType.Null, v.Type); #endif byte[] data = new byte[0]; v.Value = data; Assert.AreEqual(data, v.Value); Assert.AreEqual(JTokenType.Bytes, v.Type); v.Value = StringComparison.OrdinalIgnoreCase; Assert.AreEqual(StringComparison.OrdinalIgnoreCase, v.Value); Assert.AreEqual(JTokenType.Integer, v.Type); v.Value = new Uri("http://json.codeplex.com/"); Assert.AreEqual(new Uri("http://json.codeplex.com/"), v.Value); Assert.AreEqual(JTokenType.Uri, v.Type); v.Value = TimeSpan.FromDays(1); Assert.AreEqual(TimeSpan.FromDays(1), v.Value); Assert.AreEqual(JTokenType.TimeSpan, v.Type); Guid g = Guid.NewGuid(); v.Value = g; Assert.AreEqual(g, v.Value); Assert.AreEqual(JTokenType.Guid, v.Type); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) BigInteger i = BigInteger.Parse("123456789999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990"); v.Value = i; Assert.AreEqual(i, v.Value); Assert.AreEqual(JTokenType.Integer, v.Type); #endif } [Test] public void CreateComment() { JValue commentValue = JValue.CreateComment(null); Assert.AreEqual(null, commentValue.Value); Assert.AreEqual(JTokenType.Comment, commentValue.Type); commentValue.Value = "Comment"; Assert.AreEqual("Comment", commentValue.Value); Assert.AreEqual(JTokenType.Comment, commentValue.Type); } [Test] public void CreateString() { JValue stringValue = JValue.CreateString(null); Assert.AreEqual(null, stringValue.Value); Assert.AreEqual(JTokenType.String, stringValue.Type); } [Test] public void JValueToString() { JValue v; v = new JValue(true); Assert.AreEqual("True", v.ToString()); v = new JValue(Encoding.UTF8.GetBytes("Blah")); Assert.AreEqual("System.Byte[]", v.ToString(null, CultureInfo.InvariantCulture)); v = new JValue("I am a string!"); Assert.AreEqual("I am a string!", v.ToString()); v = JValue.CreateNull(); Assert.AreEqual("", v.ToString()); v = JValue.CreateNull(); Assert.AreEqual("", v.ToString(null, CultureInfo.InvariantCulture)); v = new JValue(new DateTime(2000, 12, 12, 20, 59, 59, DateTimeKind.Utc), JTokenType.Date); Assert.AreEqual("12/12/2000 20:59:59", v.ToString(null, CultureInfo.InvariantCulture)); v = new JValue(new Uri("http://json.codeplex.com/")); Assert.AreEqual("http://json.codeplex.com/", v.ToString(null, CultureInfo.InvariantCulture)); v = new JValue(TimeSpan.FromDays(1)); Assert.AreEqual("1.00:00:00", v.ToString(null, CultureInfo.InvariantCulture)); v = new JValue(new Guid("B282ADE7-C520-496C-A448-4084F6803DE5")); Assert.AreEqual("b282ade7-c520-496c-a448-4084f6803de5", v.ToString(null, CultureInfo.InvariantCulture)); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) v = new JValue(BigInteger.Parse("123456789999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990")); Assert.AreEqual("123456789999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990", v.ToString(null, CultureInfo.InvariantCulture)); #endif } #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void JValueParse() { JValue v = (JValue)JToken.Parse("123456789999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990"); Assert.AreEqual(JTokenType.Integer, v.Type); Assert.AreEqual(BigInteger.Parse("123456789999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990"), v.Value); } #endif [Test] public void Last() { ExceptionAssert.Throws(() => { JValue v = new JValue(true); JToken last = v.Last; }, "Cannot access child value on Newtonsoft.Json.Linq.JValue."); } [Test] public void Children() { JValue v = new JValue(true); var c = v.Children(); Assert.AreEqual(JEnumerable.Empty, c); } [Test] public void First() { ExceptionAssert.Throws(() => { JValue v = new JValue(true); JToken first = v.First; }, "Cannot access child value on Newtonsoft.Json.Linq.JValue."); } [Test] public void Item() { ExceptionAssert.Throws(() => { JValue v = new JValue(true); JToken first = v[0]; }, "Cannot access child value on Newtonsoft.Json.Linq.JValue."); } [Test] public void Values() { ExceptionAssert.Throws(() => { JValue v = new JValue(true); v.Values(); }, "Cannot access child value on Newtonsoft.Json.Linq.JValue."); } [Test] public void RemoveParentNull() { ExceptionAssert.Throws(() => { JValue v = new JValue(true); v.Remove(); }, "The parent is missing."); } [Test] public void Root() { JValue v = new JValue(true); Assert.AreEqual(v, v.Root); } [Test] public void Previous() { JValue v = new JValue(true); Assert.IsNull(v.Previous); } [Test] public void Next() { JValue v = new JValue(true); Assert.IsNull(v.Next); } [Test] public void DeepEquals() { Assert.IsTrue(JToken.DeepEquals(new JValue(5L), new JValue(5))); Assert.IsFalse(JToken.DeepEquals(new JValue(5M), new JValue(5))); Assert.IsTrue(JToken.DeepEquals(new JValue((ulong)long.MaxValue), new JValue(long.MaxValue))); } [Test] public void HasValues() { Assert.IsFalse((new JValue(5L)).HasValues); } [Test] public void SetValue() { ExceptionAssert.Throws(() => { JToken t = new JValue(5L); t[0] = new JValue(3); }, "Cannot set child value on Newtonsoft.Json.Linq.JValue."); } [Test] public void CastNullValueToNonNullable() { ExceptionAssert.Throws(() => { JValue v = JValue.CreateNull(); int i = (int)v; }, "Can not convert Null to Int32."); } [Test] public void ConvertValueToCompatibleType() { IComparable c = (new JValue(1).Value()); Assert.AreEqual(1L, c); } [Test] public void ConvertValueToFormattableType() { IFormattable f = (new JValue(1).Value()); Assert.AreEqual(1L, f); Assert.AreEqual("01", f.ToString("00", CultureInfo.InvariantCulture)); } [Test] public void Ordering() { JObject o = new JObject( new JProperty("Integer", new JValue(1)), new JProperty("Float", new JValue(1.2d)), new JProperty("Decimal", new JValue(1.1m)) ); IList orderedValues = o.Values().Cast().OrderBy(v => v).Select(v => v.Value).ToList(); Assert.AreEqual(1L, orderedValues[0]); Assert.AreEqual(1.1m, orderedValues[1]); Assert.AreEqual(1.2d, orderedValues[2]); } [Test] public void WriteSingle() { float f = 5.2f; JValue value = new JValue(f); string json = value.ToString(Formatting.None); Assert.AreEqual("5.2", json); } public class Rate { public decimal Compoundings { get; set; } } private readonly Rate rate = new Rate { Compoundings = 12.166666666666666666666666667m }; [Test] public void WriteFullDecimalPrecision() { var jTokenWriter = new JTokenWriter(); new JsonSerializer().Serialize(jTokenWriter, rate); string json = jTokenWriter.Token.ToString(); StringAssert.AreEqual(@"{ ""Compoundings"": 12.166666666666666666666666667 }", json); } [Test] public void RoundTripDecimal() { var jTokenWriter = new JTokenWriter(); new JsonSerializer().Serialize(jTokenWriter, rate); var rate2 = new JsonSerializer().Deserialize(new JTokenReader(jTokenWriter.Token)); Assert.AreEqual(rate.Compoundings, rate2.Compoundings); } #if !NET20 public class ObjectWithDateTimeOffset { public DateTimeOffset DateTimeOffset { get; set; } } [Test] public void SetDateTimeOffsetProperty() { var dateTimeOffset = new DateTimeOffset(new DateTime(2000, 1, 1), TimeSpan.FromHours(3)); var json = JsonConvert.SerializeObject( new ObjectWithDateTimeOffset { DateTimeOffset = dateTimeOffset }); var o = JObject.Parse(json); o.Property("DateTimeOffset").Value = dateTimeOffset; } public void ParseAndConvertDateTimeOffset() { var json = @"{ d: ""\/Date(0+0100)\/"" }"; using (var stringReader = new StringReader(json)) using (var jsonReader = new JsonTextReader(stringReader)) { jsonReader.DateParseHandling = DateParseHandling.DateTimeOffset; var obj = JObject.Load(jsonReader); var d = (JValue)obj["d"]; CustomAssert.IsInstanceOfType(typeof(DateTimeOffset), d.Value); TimeSpan offset = ((DateTimeOffset)d.Value).Offset; Assert.AreEqual(TimeSpan.FromHours(1), offset); DateTimeOffset dateTimeOffset = (DateTimeOffset)d; Assert.AreEqual(TimeSpan.FromHours(1), dateTimeOffset.Offset); } } public void ReadDatesAsDateTimeOffsetViaJsonConvert() { var content = @"{""startDateTime"":""2012-07-19T14:30:00+09:30""}"; var jsonSerializerSettings = new JsonSerializerSettings() { DateFormatHandling = DateFormatHandling.IsoDateFormat, DateParseHandling = DateParseHandling.DateTimeOffset, DateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind }; JObject obj = (JObject)JsonConvert.DeserializeObject(content, jsonSerializerSettings); object startDateTime = obj["startDateTime"]; CustomAssert.IsInstanceOfType(typeof(DateTimeOffset), startDateTime); } #endif #if !(NETFX_CORE || PORTABLE || ASPNETCORE50) [Test] public void ConvertsToBoolean() { Assert.AreEqual(true, Convert.ToBoolean(new JValue(true))); } [Test] public void ConvertsToBoolean_String() { Assert.AreEqual(true, Convert.ToBoolean(new JValue("true"))); } [Test] public void ConvertsToInt32() { Assert.AreEqual(Int32.MaxValue, Convert.ToInt32(new JValue(Int32.MaxValue))); } #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void ConvertsToInt32_BigInteger() { Assert.AreEqual(123, Convert.ToInt32(new JValue(BigInteger.Parse("123")))); } #endif [Test] public void ConvertsToChar() { Assert.AreEqual('c', Convert.ToChar(new JValue('c'))); } [Test] public void ConvertsToSByte() { Assert.AreEqual(SByte.MaxValue, Convert.ToSByte(new JValue(SByte.MaxValue))); } [Test] public void ConvertsToByte() { Assert.AreEqual(Byte.MaxValue, Convert.ToByte(new JValue(Byte.MaxValue))); } [Test] public void ConvertsToInt16() { Assert.AreEqual(Int16.MaxValue, Convert.ToInt16(new JValue(Int16.MaxValue))); } [Test] public void ConvertsToUInt16() { Assert.AreEqual(UInt16.MaxValue, Convert.ToUInt16(new JValue(UInt16.MaxValue))); } [Test] public void ConvertsToUInt32() { Assert.AreEqual(UInt32.MaxValue, Convert.ToUInt32(new JValue(UInt32.MaxValue))); } [Test] public void ConvertsToInt64() { Assert.AreEqual(Int64.MaxValue, Convert.ToInt64(new JValue(Int64.MaxValue))); } [Test] public void ConvertsToUInt64() { Assert.AreEqual(UInt64.MaxValue, Convert.ToUInt64(new JValue(UInt64.MaxValue))); } [Test] public void ConvertsToSingle() { Assert.AreEqual(Single.MaxValue, Convert.ToSingle(new JValue(Single.MaxValue))); } [Test] public void ConvertsToDouble() { Assert.AreEqual(Double.MaxValue, Convert.ToDouble(new JValue(Double.MaxValue))); } [Test] public void ConvertsToDecimal() { Assert.AreEqual(Decimal.MaxValue, Convert.ToDecimal(new JValue(Decimal.MaxValue))); } [Test] public void ConvertsToDecimal_Int64() { Assert.AreEqual(123, Convert.ToDecimal(new JValue(123))); } [Test] public void ConvertsToString_Decimal() { Assert.AreEqual("79228162514264337593543950335", Convert.ToString(new JValue(Decimal.MaxValue))); } [Test] public void ConvertsToString_Uri() { Assert.AreEqual("http://www.google.com/", Convert.ToString(new JValue(new Uri("http://www.google.com")))); } [Test] public void ConvertsToString_Null() { Assert.AreEqual(string.Empty, Convert.ToString(JValue.CreateNull())); } [Test] public void ConvertsToString_Guid() { Guid g = new Guid("0B5D4F85-E94C-4143-94C8-35F2AAEBB100"); Assert.AreEqual("0b5d4f85-e94c-4143-94c8-35f2aaebb100", Convert.ToString(new JValue(g))); } [Test] public void ConvertsToType() { Assert.AreEqual(Int32.MaxValue, Convert.ChangeType(new JValue(Int32.MaxValue), typeof(Int32), CultureInfo.InvariantCulture)); } [Test] public void ConvertsToDateTime() { Assert.AreEqual(new DateTime(2013, 02, 01, 01, 02, 03, 04), Convert.ToDateTime(new JValue(new DateTime(2013, 02, 01, 01, 02, 03, 04)))); } #if !NET20 [Test] public void ConvertsToDateTime_DateTimeOffset() { var offset = new DateTimeOffset(2013, 02, 01, 01, 02, 03, 04, TimeSpan.Zero); Assert.AreEqual(new DateTime(2013, 02, 01, 01, 02, 03, 04), Convert.ToDateTime(new JValue(offset))); } #endif #if !(PORTABLE40 || NET35 || NET20) [Test] public void ExpicitConversionTest() { const string example = "Hello"; dynamic obj = new { data = Encoding.UTF8.GetBytes(example) }; byte[] bytes; using (var ms = new MemoryStream()) { using (TextWriter tw = new StreamWriter(ms)) { JsonSerializer.Create().Serialize(tw, obj); tw.Flush(); bytes = ms.ToArray(); } } dynamic o = JObject.Parse(Encoding.UTF8.GetString(bytes)); byte[] dataBytes = (byte[])o.data; Assert.AreEqual(example, Encoding.UTF8.GetString(dataBytes)); } #endif [Test] public void GetTypeCode() { IConvertible v = new JValue(new Guid("0B5D4F85-E94C-4143-94C8-35F2AAEBB100")); Assert.AreEqual(TypeCode.Object, v.GetTypeCode()); v = new JValue(new Uri("http://www.google.com")); Assert.AreEqual(TypeCode.Object, v.GetTypeCode()); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) v = new JValue(new BigInteger(3)); Assert.AreEqual(TypeCode.Object, v.GetTypeCode()); #endif } [Test] public void ToType() { IConvertible v = new JValue(9.0m); int i = (int)v.ToType(typeof(int), CultureInfo.InvariantCulture); Assert.AreEqual(9, i); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) BigInteger bi = (BigInteger)v.ToType(typeof(BigInteger), CultureInfo.InvariantCulture); Assert.AreEqual(new BigInteger(9), bi); #endif } #endif [Test] public void ToStringFormat() { JValue v = new JValue(new DateTime(2013, 02, 01, 01, 02, 03, 04)); Assert.AreEqual("2013", v.ToString("yyyy")); } #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void ToStringNewTypes() { JArray a = new JArray( new JValue(new DateTimeOffset(2013, 02, 01, 01, 02, 03, 04, TimeSpan.FromHours(1))), new JValue(new BigInteger(5)), new JValue(1.1f) ); StringAssert.AreEqual(@"[ ""2013-02-01T01:02:03.004+01:00"", 5, 1.1 ]", a.ToString()); } #endif #if !NET20 [Test] public void ParseIsoTimeZones() { DateTimeOffset expectedDate = new DateTimeOffset(2013, 08, 14, 4, 38, 31, TimeSpan.FromHours(12).Add(TimeSpan.FromMinutes(30))); JsonTextReader reader = new JsonTextReader(new StringReader("'2013-08-14T04:38:31.000+1230'")); reader.DateParseHandling = DateParseHandling.DateTimeOffset; JValue date = (JValue)JToken.ReadFrom(reader); Assert.AreEqual(expectedDate, date.Value); DateTimeOffset expectedDate2 = new DateTimeOffset(2013, 08, 14, 4, 38, 31, TimeSpan.FromHours(12)); JsonTextReader reader2 = new JsonTextReader(new StringReader("'2013-08-14T04:38:31.000+12'")); reader2.DateParseHandling = DateParseHandling.DateTimeOffset; JValue date2 = (JValue)JToken.ReadFrom(reader2); Assert.AreEqual(expectedDate2, date2.Value); } #endif public class ReadOnlyStringConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { throw new NotSupportedException(); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { return reader.Value + "!"; } public override bool CanConvert(Type objectType) { return objectType == typeof(string); } public override bool CanWrite { get { return false; } } } [Test] public void ReadOnlyConverterTest() { JObject o = new JObject(new JProperty("name", "Hello World")); string json = o.ToString(Formatting.Indented, new ReadOnlyStringConverter()); StringAssert.AreEqual(@"{ ""name"": ""Hello World"" }", json); } #if !(NET20 || NET35 || PORTABLE40) [Test] public void EnumTests() { JValue v = new JValue(StringComparison.Ordinal); Assert.AreEqual(JTokenType.Integer, v.Type); string s = v.ToString(); Assert.AreEqual("Ordinal", s); StringComparison e = v.ToObject(); Assert.AreEqual(StringComparison.Ordinal, e); dynamic d = new JValue(StringComparison.CurrentCultureIgnoreCase); StringComparison e2 = (StringComparison)d; Assert.AreEqual(StringComparison.CurrentCultureIgnoreCase, e2); string s1 = d.ToString(); Assert.AreEqual("CurrentCultureIgnoreCase", s1); string s2 = (string)d; Assert.AreEqual("CurrentCultureIgnoreCase", s2); d = new JValue("OrdinalIgnoreCase"); StringComparison e3 = (StringComparison)d; Assert.AreEqual(StringComparison.OrdinalIgnoreCase, e3); v = new JValue("ORDINAL"); d = v; StringComparison e4 = (StringComparison)d; Assert.AreEqual(StringComparison.Ordinal, e4); StringComparison e5 = v.ToObject(); Assert.AreEqual(StringComparison.Ordinal, e5); v = new JValue((int)StringComparison.OrdinalIgnoreCase); Assert.AreEqual(JTokenType.Integer, v.Type); StringComparison e6 = v.ToObject(); Assert.AreEqual(StringComparison.OrdinalIgnoreCase, e6); // does not support EnumMember. breaking change to add ExceptionAssert.Throws(() => { d = new JValue("value_a"); EnumA e7 = (EnumA)d; Assert.AreEqual(EnumA.ValueA, e7); }, "Requested value 'value_a' was not found."); } public enum EnumA { [EnumMember(Value = "value_a")] ValueA } #endif } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JsonPath/0000775000175000017500000000000012454416117024770 5ustar directhexdirecthexnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JsonPath/JPathParseTests.cs0000664000175000017500000006370112454416117030352 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using Newtonsoft.Json.Linq.JsonPath; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Linq.JsonPath { [TestFixture] public class JPathParseTests : TestFixtureBase { [Test] public void SingleProperty() { JPath path = new JPath("Blah"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); } [Test] public void SingleQuotedProperty() { JPath path = new JPath("['Blah']"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); } [Test] public void SingleQuotedPropertyWithWhitespace() { JPath path = new JPath("[ 'Blah' ]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); } [Test] public void SingleQuotedPropertyWithDots() { JPath path = new JPath("['Blah.Ha']"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual("Blah.Ha", ((FieldFilter)path.Filters[0]).Name); } [Test] public void SingleQuotedPropertyWithBrackets() { JPath path = new JPath("['[*]']"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual("[*]", ((FieldFilter)path.Filters[0]).Name); } [Test] public void SinglePropertyWithRoot() { JPath path = new JPath("$.Blah"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); } [Test] public void SinglePropertyWithRootWithStartAndEndWhitespace() { JPath path = new JPath(" $.Blah "); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); } [Test] public void RootWithBadWhitespace() { ExceptionAssert.Throws(() => { new JPath("$ .Blah"); }, @"Unexpected character while parsing path: "); } [Test] public void NoFieldNameAfterDot() { ExceptionAssert.Throws(() => { new JPath("$.Blah."); }, @"Unexpected end while parsing path."); } [Test] public void RootWithBadWhitespace2() { ExceptionAssert.Throws(() => { new JPath("$. Blah"); }, @"Unexpected character while parsing path: "); } [Test] public void WildcardPropertyWithRoot() { JPath path = new JPath("$.*"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(null, ((FieldFilter)path.Filters[0]).Name); } [Test] public void WildcardArrayWithRoot() { JPath path = new JPath("$.[*]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(null, ((ArrayIndexFilter)path.Filters[0]).Index); } [Test] public void RootArrayNoDot() { JPath path = new JPath("$[1]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(1, ((ArrayIndexFilter)path.Filters[0]).Index); } [Test] public void WildcardArray() { JPath path = new JPath("[*]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(null, ((ArrayIndexFilter)path.Filters[0]).Index); } [Test] public void WildcardArrayWithProperty() { JPath path = new JPath("[ * ].derp"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual(null, ((ArrayIndexFilter)path.Filters[0]).Index); Assert.AreEqual("derp", ((FieldFilter)path.Filters[1]).Name); } [Test] public void QuotedWildcardPropertyWithRoot() { JPath path = new JPath("$.['*']"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual("*", ((FieldFilter)path.Filters[0]).Name); } [Test] public void SingleScanWithRoot() { JPath path = new JPath("$..Blah"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual("Blah", ((ScanFilter)path.Filters[0]).Name); } [Test] public void WildcardScanWithRoot() { JPath path = new JPath("$..*"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(null, ((ScanFilter)path.Filters[0]).Name); } [Test] public void WildcardScanWithRootWithWhitespace() { JPath path = new JPath("$..* "); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(null, ((ScanFilter)path.Filters[0]).Name); } [Test] public void TwoProperties() { JPath path = new JPath("Blah.Two"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); Assert.AreEqual("Two", ((FieldFilter)path.Filters[1]).Name); } [Test] public void OnePropertyOneScan() { JPath path = new JPath("Blah..Two"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); Assert.AreEqual("Two", ((ScanFilter)path.Filters[1]).Name); } [Test] public void SinglePropertyAndIndexer() { JPath path = new JPath("Blah[0]"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); Assert.AreEqual(0, ((ArrayIndexFilter)path.Filters[1]).Index); } [Test] public void SinglePropertyAndExistsQuery() { JPath path = new JPath("Blah[ ?( @..name ) ]"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[1]).Expression; Assert.AreEqual(QueryOperator.Exists, expressions.Operator); Assert.AreEqual(1, expressions.Path.Count); Assert.AreEqual("name", ((ScanFilter)expressions.Path[0]).Name); } [Test] public void SinglePropertyAndFilterWithWhitespace() { JPath path = new JPath("Blah[ ?( @.name=='hi' ) ]"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[1]).Expression; Assert.AreEqual(QueryOperator.Equals, expressions.Operator); Assert.AreEqual("hi", (string)expressions.Value); } [Test] public void SinglePropertyAndFilterWithEscapeQuote() { JPath path = new JPath(@"Blah[ ?( @.name=='h\'i' ) ]"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[1]).Expression; Assert.AreEqual(QueryOperator.Equals, expressions.Operator); Assert.AreEqual("h'i", (string)expressions.Value); } [Test] public void SinglePropertyAndFilterWithDoubleEscape() { JPath path = new JPath(@"Blah[ ?( @.name=='h\\i' ) ]"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[1]).Expression; Assert.AreEqual(QueryOperator.Equals, expressions.Operator); Assert.AreEqual("h\\i", (string)expressions.Value); } [Test] public void SinglePropertyAndFilterWithUnknownEscape() { ExceptionAssert.Throws(() => { new JPath(@"Blah[ ?( @.name=='h\i' ) ]"); }, @"Unknown escape chracter: \i"); } [Test] public void SinglePropertyAndFilterWithFalse() { JPath path = new JPath("Blah[ ?( @.name==false ) ]"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[1]).Expression; Assert.AreEqual(QueryOperator.Equals, expressions.Operator); Assert.AreEqual(false, (bool)expressions.Value); } [Test] public void SinglePropertyAndFilterWithTrue() { JPath path = new JPath("Blah[ ?( @.name==true ) ]"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[1]).Expression; Assert.AreEqual(QueryOperator.Equals, expressions.Operator); Assert.AreEqual(true, (bool)expressions.Value); } [Test] public void SinglePropertyAndFilterWithNull() { JPath path = new JPath("Blah[ ?( @.name==null ) ]"); Assert.AreEqual(2, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter)path.Filters[0]).Name); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[1]).Expression; Assert.AreEqual(QueryOperator.Equals, expressions.Operator); Assert.AreEqual(null, expressions.Value.Value); } [Test] public void FilterWithScan() { JPath path = new JPath("[?(@..name<>null)]"); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual("name", ((ScanFilter)expressions.Path[0]).Name); } [Test] public void FilterWithNotEquals() { JPath path = new JPath("[?(@.name<>null)]"); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(QueryOperator.NotEquals, expressions.Operator); } [Test] public void FilterWithNotEquals2() { JPath path = new JPath("[?(@.name!=null)]"); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(QueryOperator.NotEquals, expressions.Operator); } [Test] public void FilterWithLessThan() { JPath path = new JPath("[?(@.namenull)]"); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(QueryOperator.GreaterThan, expressions.Operator); } [Test] public void FilterWithGreaterThanOrEquals() { JPath path = new JPath("[?(@.name>=null)]"); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(QueryOperator.GreaterThanOrEquals, expressions.Operator); } [Test] public void FilterWithInteger() { JPath path = new JPath("[?(@.name>=12)]"); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(12, (int)expressions.Value); } [Test] public void FilterWithNegativeInteger() { JPath path = new JPath("[?(@.name>=-12)]"); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(-12, (int)expressions.Value); } [Test] public void FilterWithFloat() { JPath path = new JPath("[?(@.name>=12.1)]"); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(12.1d, (double)expressions.Value); } [Test] public void FilterExistWithAnd() { JPath path = new JPath("[?(@.name&&@.title)]"); CompositeExpression expressions = (CompositeExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(QueryOperator.And, expressions.Operator); Assert.AreEqual(2, expressions.Expressions.Count); Assert.AreEqual("name", ((FieldFilter)((BooleanQueryExpression)expressions.Expressions[0]).Path[0]).Name); Assert.AreEqual(QueryOperator.Exists, expressions.Expressions[0].Operator); Assert.AreEqual("title", ((FieldFilter)((BooleanQueryExpression)expressions.Expressions[1]).Path[0]).Name); Assert.AreEqual(QueryOperator.Exists, expressions.Expressions[1].Operator); } [Test] public void FilterExistWithAndOr() { JPath path = new JPath("[?(@.name&&@.title||@.pie)]"); CompositeExpression andExpression = (CompositeExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(QueryOperator.And, andExpression.Operator); Assert.AreEqual(2, andExpression.Expressions.Count); Assert.AreEqual("name", ((FieldFilter)((BooleanQueryExpression)andExpression.Expressions[0]).Path[0]).Name); Assert.AreEqual(QueryOperator.Exists, andExpression.Expressions[0].Operator); CompositeExpression orExpression = (CompositeExpression)andExpression.Expressions[1]; Assert.AreEqual(2, orExpression.Expressions.Count); Assert.AreEqual("title", ((FieldFilter)((BooleanQueryExpression)orExpression.Expressions[0]).Path[0]).Name); Assert.AreEqual(QueryOperator.Exists, orExpression.Expressions[0].Operator); Assert.AreEqual("pie", ((FieldFilter)((BooleanQueryExpression)orExpression.Expressions[1]).Path[0]).Name); Assert.AreEqual(QueryOperator.Exists, orExpression.Expressions[1].Operator); } [Test] public void BadOr1() { ExceptionAssert.Throws(() => new JPath("[?(@.name||)]"), "Unexpected character while parsing path query: )"); } [Test] public void BaddOr2() { ExceptionAssert.Throws(() => new JPath("[?(@.name|)]"), "Unexpected character while parsing path query: |"); } [Test] public void BaddOr3() { ExceptionAssert.Throws(() => new JPath("[?(@.name|"), "Unexpected character while parsing path query: |"); } [Test] public void BaddOr4() { ExceptionAssert.Throws(() => new JPath("[?(@.name||"), "Path ended with open query."); } [Test] public void NoAtAfterOr() { ExceptionAssert.Throws(() => new JPath("[?(@.name||s"), "Unexpected character while parsing path query: s"); } [Test] public void NoPathAfterAt() { ExceptionAssert.Throws(() => new JPath("[?(@.name||@"), @"Path ended with open query."); } [Test] public void NoPathAfterDot() { ExceptionAssert.Throws(() => new JPath("[?(@.name||@."), @"Unexpected end while parsing path."); } [Test] public void NoPathAfterDot2() { ExceptionAssert.Throws(() => new JPath("[?(@.name||@.)]"), @"Unexpected end while parsing path."); } [Test] public void FilterWithFloatExp() { JPath path = new JPath("[?(@.name>=5.56789e+0)]"); BooleanQueryExpression expressions = (BooleanQueryExpression)((QueryFilter)path.Filters[0]).Expression; Assert.AreEqual(5.56789e+0, (double)expressions.Value); } [Test] public void MultiplePropertiesAndIndexers() { JPath path = new JPath("Blah[0]..Two.Three[1].Four"); Assert.AreEqual(6, path.Filters.Count); Assert.AreEqual("Blah", ((FieldFilter) path.Filters[0]).Name); Assert.AreEqual(0, ((ArrayIndexFilter) path.Filters[1]).Index); Assert.AreEqual("Two", ((ScanFilter)path.Filters[2]).Name); Assert.AreEqual("Three", ((FieldFilter)path.Filters[3]).Name); Assert.AreEqual(1, ((ArrayIndexFilter)path.Filters[4]).Index); Assert.AreEqual("Four", ((FieldFilter)path.Filters[5]).Name); } [Test] public void BadCharactersInIndexer() { ExceptionAssert.Throws(() => { new JPath("Blah[[0]].Two.Three[1].Four"); }, @"Unexpected character while parsing path indexer: ["); } [Test] public void UnclosedIndexer() { ExceptionAssert.Throws(() => { new JPath("Blah[0"); }, @"Path ended with open indexer."); } [Test] public void IndexerOnly() { JPath path = new JPath("[111119990]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(111119990, ((ArrayIndexFilter)path.Filters[0]).Index); } [Test] public void IndexerOnlyWithWhitespace() { JPath path = new JPath("[ 10 ]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(10, ((ArrayIndexFilter)path.Filters[0]).Index); } [Test] public void MultipleIndexes() { JPath path = new JPath("[111119990,3]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(2, ((ArrayMultipleIndexFilter)path.Filters[0]).Indexes.Count); Assert.AreEqual(111119990, ((ArrayMultipleIndexFilter)path.Filters[0]).Indexes[0]); Assert.AreEqual(3, ((ArrayMultipleIndexFilter)path.Filters[0]).Indexes[1]); } [Test] public void MultipleIndexesWithWhitespace() { JPath path = new JPath("[ 111119990 , 3 ]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(2, ((ArrayMultipleIndexFilter)path.Filters[0]).Indexes.Count); Assert.AreEqual(111119990, ((ArrayMultipleIndexFilter)path.Filters[0]).Indexes[0]); Assert.AreEqual(3, ((ArrayMultipleIndexFilter)path.Filters[0]).Indexes[1]); } [Test] public void MultipleQuotedIndexes() { JPath path = new JPath("['111119990','3']"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(2, ((FieldMultipleFilter)path.Filters[0]).Names.Count); Assert.AreEqual("111119990", ((FieldMultipleFilter)path.Filters[0]).Names[0]); Assert.AreEqual("3", ((FieldMultipleFilter)path.Filters[0]).Names[1]); } [Test] public void MultipleQuotedIndexesWithWhitespace() { JPath path = new JPath("[ '111119990' , '3' ]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(2, ((FieldMultipleFilter)path.Filters[0]).Names.Count); Assert.AreEqual("111119990", ((FieldMultipleFilter)path.Filters[0]).Names[0]); Assert.AreEqual("3", ((FieldMultipleFilter)path.Filters[0]).Names[1]); } [Test] public void SlicingIndexAll() { JPath path = new JPath("[111119990:3:2]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(111119990, ((ArraySliceFilter)path.Filters[0]).Start); Assert.AreEqual(3, ((ArraySliceFilter)path.Filters[0]).End); Assert.AreEqual(2, ((ArraySliceFilter)path.Filters[0]).Step); } [Test] public void SlicingIndex() { JPath path = new JPath("[111119990:3]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(111119990, ((ArraySliceFilter)path.Filters[0]).Start); Assert.AreEqual(3, ((ArraySliceFilter)path.Filters[0]).End); Assert.AreEqual(null, ((ArraySliceFilter)path.Filters[0]).Step); } [Test] public void SlicingIndexNegative() { JPath path = new JPath("[-111119990:-3:-2]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(-111119990, ((ArraySliceFilter)path.Filters[0]).Start); Assert.AreEqual(-3, ((ArraySliceFilter)path.Filters[0]).End); Assert.AreEqual(-2, ((ArraySliceFilter)path.Filters[0]).Step); } [Test] public void SlicingIndexEmptyStop() { JPath path = new JPath("[ -3 : ]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(-3, ((ArraySliceFilter)path.Filters[0]).Start); Assert.AreEqual(null, ((ArraySliceFilter)path.Filters[0]).End); Assert.AreEqual(null, ((ArraySliceFilter)path.Filters[0]).Step); } [Test] public void SlicingIndexEmptyStart() { JPath path = new JPath("[ : 1 : ]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(null, ((ArraySliceFilter)path.Filters[0]).Start); Assert.AreEqual(1, ((ArraySliceFilter)path.Filters[0]).End); Assert.AreEqual(null, ((ArraySliceFilter)path.Filters[0]).Step); } [Test] public void SlicingIndexWhitespace() { JPath path = new JPath("[ -111119990 : -3 : -2 ]"); Assert.AreEqual(1, path.Filters.Count); Assert.AreEqual(-111119990, ((ArraySliceFilter)path.Filters[0]).Start); Assert.AreEqual(-3, ((ArraySliceFilter)path.Filters[0]).End); Assert.AreEqual(-2, ((ArraySliceFilter)path.Filters[0]).Step); } [Test] public void EmptyIndexer() { ExceptionAssert.Throws(() => { new JPath("[]"); }, "Array index expected."); } [Test] public void IndexerCloseInProperty() { ExceptionAssert.Throws(() => { new JPath("]"); }, "Unexpected character while parsing path: ]"); } [Test] public void AdjacentIndexers() { JPath path = new JPath("[1][0][0][" + int.MaxValue + "]"); Assert.AreEqual(4, path.Filters.Count); Assert.AreEqual(1, ((ArrayIndexFilter)path.Filters[0]).Index); Assert.AreEqual(0, ((ArrayIndexFilter)path.Filters[1]).Index); Assert.AreEqual(0, ((ArrayIndexFilter)path.Filters[2]).Index); Assert.AreEqual(int.MaxValue, ((ArrayIndexFilter)path.Filters[3]).Index); } [Test] public void MissingDotAfterIndexer() { ExceptionAssert.Throws(() => { new JPath("[1]Blah"); }, "Unexpected character following indexer: B"); } [Test] public void PropertyFollowingEscapedPropertyName() { JPath path = new JPath("frameworks.aspnetcore50.dependencies.['System.Xml.ReaderWriter'].source"); Assert.AreEqual(5, path.Filters.Count); Assert.AreEqual("frameworks", ((FieldFilter)path.Filters[0]).Name); Assert.AreEqual("aspnetcore50", ((FieldFilter)path.Filters[1]).Name); Assert.AreEqual("dependencies", ((FieldFilter)path.Filters[2]).Name); Assert.AreEqual("System.Xml.ReaderWriter", ((FieldFilter)path.Filters[3]).Name); Assert.AreEqual("source", ((FieldFilter)path.Filters[4]).Name); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JsonPath/JPathExecuteTests.cs0000664000175000017500000006363612454416117030711 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if !(PORTABLE || PORTABLE40 || NET35 || NET20) using System.Numerics; #endif using Newtonsoft.Json.Linq.JsonPath; using Newtonsoft.Json.Tests.Bson; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Linq.JsonPath { [TestFixture] public class JPathExecuteTests : TestFixtureBase { [Test] public void ParseWithEmptyArrayContent() { var json = @"{ 'controls': [ { 'messages': { 'addSuggestion': { 'en-US': 'Add' } } }, { 'header': { 'controls': [] }, 'controls': [ { 'controls': [ { 'defaultCaption': { 'en-US': 'Sort by' }, 'sortOptions': [ { 'label': { 'en-US': 'Name' } } ] } ] } ] } ] }"; JObject jToken = JObject.Parse(json); IList tokens = jToken.SelectTokens("$..en-US").ToList(); Assert.AreEqual(3, tokens.Count); Assert.AreEqual("Add", (string)tokens[0]); Assert.AreEqual("Sort by", (string)tokens[1]); Assert.AreEqual("Name", (string)tokens[2]); } [Test] public void SelectTokenAfterEmptyContainer() { string json = @"{ 'cont': [], 'test': 'no one will find me' }"; JObject o = JObject.Parse(json); IList results = o.SelectTokens("$..test").ToList(); Assert.AreEqual(1, results.Count); Assert.AreEqual("no one will find me", (string)results[0]); } [Test] public void EvaluatePropertyWithRequired() { string json = "{\"bookId\":\"1000\"}"; JObject o = JObject.Parse(json); string bookId = (string)o.SelectToken("bookId", true); Assert.AreEqual("1000", bookId); } [Test] public void EvaluateEmptyPropertyIndexer() { JObject o = new JObject( new JProperty("", 1)); JToken t = o.SelectToken("['']"); Assert.AreEqual(1, (int)t); } [Test] public void EvaluateEmptyString() { JObject o = new JObject( new JProperty("Blah", 1)); JToken t = o.SelectToken(""); Assert.AreEqual(o, t); t = o.SelectToken("['']"); Assert.AreEqual(null, t); } [Test] public void EvaluateEmptyStringWithMatchingEmptyProperty() { JObject o = new JObject( new JProperty(" ", 1)); JToken t = o.SelectToken("[' ']"); Assert.AreEqual(1, (int)t); } [Test] public void EvaluateWhitespaceString() { JObject o = new JObject( new JProperty("Blah", 1)); JToken t = o.SelectToken(" "); Assert.AreEqual(o, t); } [Test] public void EvaluateDollarString() { JObject o = new JObject( new JProperty("Blah", 1)); JToken t = o.SelectToken("$"); Assert.AreEqual(o, t); } [Test] public void EvaluateDollarTypeString() { JObject o = new JObject( new JProperty("$values", new JArray(1, 2, 3))); JToken t = o.SelectToken("$values[1]"); Assert.AreEqual(2, (int)t); } [Test] public void EvaluateSingleProperty() { JObject o = new JObject( new JProperty("Blah", 1)); JToken t = o.SelectToken("Blah"); Assert.IsNotNull(t); Assert.AreEqual(JTokenType.Integer, t.Type); Assert.AreEqual(1, (int)t); } [Test] public void EvaluateWildcardProperty() { JObject o = new JObject( new JProperty("Blah", 1), new JProperty("Blah2", 2)); IList t = o.SelectTokens("$.*").ToList(); Assert.IsNotNull(t); Assert.AreEqual(2, t.Count); Assert.AreEqual(1, (int)t[0]); Assert.AreEqual(2, (int)t[1]); } [Test] public void QuoteName() { JObject o = new JObject( new JProperty("Blah", 1)); JToken t = o.SelectToken("['Blah']"); Assert.IsNotNull(t); Assert.AreEqual(JTokenType.Integer, t.Type); Assert.AreEqual(1, (int)t); } [Test] public void EvaluateMissingProperty() { JObject o = new JObject( new JProperty("Blah", 1)); JToken t = o.SelectToken("Missing[1]"); Assert.IsNull(t); } [Test] public void EvaluateIndexerOnObject() { JObject o = new JObject( new JProperty("Blah", 1)); JToken t = o.SelectToken("[1]"); Assert.IsNull(t); } [Test] public void EvaluateIndexerOnObjectWithError() { JObject o = new JObject( new JProperty("Blah", 1)); ExceptionAssert.Throws(() => { o.SelectToken("[1]", true); }, @"Index 1 not valid on JObject."); } [Test] public void EvaluateWildcardIndexOnObjectWithError() { JObject o = new JObject( new JProperty("Blah", 1)); ExceptionAssert.Throws(() => { o.SelectToken("[*]", true); }, @"Index * not valid on JObject."); } [Test] public void EvaluateSliceOnObjectWithError() { JObject o = new JObject( new JProperty("Blah", 1)); ExceptionAssert.Throws(() => { o.SelectToken("[:]", true); }, @"Array slice is not valid on JObject."); } [Test] public void EvaluatePropertyOnArray() { JArray a = new JArray(1, 2, 3, 4, 5); JToken t = a.SelectToken("BlahBlah"); Assert.IsNull(t); } [Test] public void EvaluateMultipleResultsError() { JArray a = new JArray(1, 2, 3, 4, 5); ExceptionAssert.Throws(() => { a.SelectToken("[0, 1]"); }, @"Path returned multiple tokens."); } [Test] public void EvaluatePropertyOnArrayWithError() { JArray a = new JArray(1, 2, 3, 4, 5); ExceptionAssert.Throws(() => { a.SelectToken("BlahBlah", true); }, @"Property 'BlahBlah' not valid on JArray."); } [Test] public void EvaluateNoResultsWithMultipleArrayIndexes() { JArray a = new JArray(1, 2, 3, 4, 5); ExceptionAssert.Throws(() => { a.SelectToken("[9,10]", true); }, @"Index 9 outside the bounds of JArray."); } [Test] public void EvaluateConstructorOutOfBoundsIndxerWithError() { JConstructor c = new JConstructor("Blah"); ExceptionAssert.Throws(() => { c.SelectToken("[1]", true); }, @"Index 1 outside the bounds of JConstructor."); } [Test] public void EvaluateConstructorOutOfBoundsIndxer() { JConstructor c = new JConstructor("Blah"); Assert.IsNull(c.SelectToken("[1]")); } [Test] public void EvaluateMissingPropertyWithError() { JObject o = new JObject( new JProperty("Blah", 1)); ExceptionAssert.Throws(() => { o.SelectToken("Missing", true); }, "Property 'Missing' does not exist on JObject."); } [Test] public void EvaluatePropertyWithoutError() { JObject o = new JObject( new JProperty("Blah", 1)); JValue v = (JValue)o.SelectToken("Blah", true); Assert.AreEqual(1, v.Value); } [Test] public void EvaluateMissingPropertyIndexWithError() { JObject o = new JObject( new JProperty("Blah", 1)); ExceptionAssert.Throws(() => { o.SelectToken("['Missing','Missing2']", true); }, "Property 'Missing' does not exist on JObject."); } [Test] public void EvaluateMultiPropertyIndexOnArrayWithError() { JArray a = new JArray(1, 2, 3, 4, 5); ExceptionAssert.Throws(() => { a.SelectToken("['Missing','Missing2']", true); }, "Properties 'Missing', 'Missing2' not valid on JArray."); } [Test] public void EvaluateArraySliceWithError() { JArray a = new JArray(1, 2, 3, 4, 5); ExceptionAssert.Throws(() => { a.SelectToken("[99:]", true); }, "Array slice of 99 to * returned no results."); ExceptionAssert.Throws(() => { a.SelectToken("[1:-19]", true); }, "Array slice of 1 to -19 returned no results."); ExceptionAssert.Throws(() => { a.SelectToken("[:-19]", true); }, "Array slice of * to -19 returned no results."); a = new JArray(); ExceptionAssert.Throws(() => { a.SelectToken("[:]", true); }, "Array slice of * to * returned no results."); } [Test] public void EvaluateOutOfBoundsIndxer() { JArray a = new JArray(1, 2, 3, 4, 5); JToken t = a.SelectToken("[1000].Ha"); Assert.IsNull(t); } [Test] public void EvaluateArrayOutOfBoundsIndxerWithError() { JArray a = new JArray(1, 2, 3, 4, 5); ExceptionAssert.Throws(() => { a.SelectToken("[1000].Ha", true); }, "Index 1000 outside the bounds of JArray."); } [Test] public void EvaluateArray() { JArray a = new JArray(1, 2, 3, 4); JToken t = a.SelectToken("[1]"); Assert.IsNotNull(t); Assert.AreEqual(JTokenType.Integer, t.Type); Assert.AreEqual(2, (int)t); } [Test] public void EvaluateArraySlice() { JArray a = new JArray(1, 2, 3, 4, 5, 6, 7, 8, 9); IList t = null; t = a.SelectTokens("[-3:]").ToList(); Assert.AreEqual(3, t.Count); Assert.AreEqual(7, (int)t[0]); Assert.AreEqual(8, (int)t[1]); Assert.AreEqual(9, (int)t[2]); t = a.SelectTokens("[-1:-2:-1]").ToList(); Assert.AreEqual(1, t.Count); Assert.AreEqual(9, (int)t[0]); t = a.SelectTokens("[-2:-1]").ToList(); Assert.AreEqual(1, t.Count); Assert.AreEqual(8, (int)t[0]); t = a.SelectTokens("[1:1]").ToList(); Assert.AreEqual(0, t.Count); t = a.SelectTokens("[1:2]").ToList(); Assert.AreEqual(1, t.Count); Assert.AreEqual(2, (int)t[0]); t = a.SelectTokens("[::-1]").ToList(); Assert.AreEqual(9, t.Count); Assert.AreEqual(9, (int)t[0]); Assert.AreEqual(8, (int)t[1]); Assert.AreEqual(7, (int)t[2]); Assert.AreEqual(6, (int)t[3]); Assert.AreEqual(5, (int)t[4]); Assert.AreEqual(4, (int)t[5]); Assert.AreEqual(3, (int)t[6]); Assert.AreEqual(2, (int)t[7]); Assert.AreEqual(1, (int)t[8]); t = a.SelectTokens("[::-2]").ToList(); Assert.AreEqual(5, t.Count); Assert.AreEqual(9, (int)t[0]); Assert.AreEqual(7, (int)t[1]); Assert.AreEqual(5, (int)t[2]); Assert.AreEqual(3, (int)t[3]); Assert.AreEqual(1, (int)t[4]); } [Test] public void EvaluateWildcardArray() { JArray a = new JArray(1, 2, 3, 4); List t = a.SelectTokens("[*]").ToList(); Assert.IsNotNull(t); Assert.AreEqual(4, t.Count); Assert.AreEqual(1, (int)t[0]); Assert.AreEqual(2, (int)t[1]); Assert.AreEqual(3, (int)t[2]); Assert.AreEqual(4, (int)t[3]); } [Test] public void EvaluateArrayMultipleIndexes() { JArray a = new JArray(1, 2, 3, 4); IEnumerable t = a.SelectTokens("[1,2,0]"); Assert.IsNotNull(t); Assert.AreEqual(3, t.Count()); Assert.AreEqual(2, (int)t.ElementAt(0)); Assert.AreEqual(3, (int)t.ElementAt(1)); Assert.AreEqual(1, (int)t.ElementAt(2)); } [Test] public void EvaluateScan() { JObject o1 = new JObject { { "Name", 1 } }; JObject o2 = new JObject { { "Name", 2 } }; JArray a = new JArray(o1, o2); IList t = a.SelectTokens("$..Name").ToList(); Assert.IsNotNull(t); Assert.AreEqual(2, t.Count); Assert.AreEqual(1, (int)t[0]); Assert.AreEqual(2, (int)t[1]); } [Test] public void EvaluateWildcardScan() { JObject o1 = new JObject { { "Name", 1 } }; JObject o2 = new JObject { { "Name", 2 } }; JArray a = new JArray(o1, o2); IList t = a.SelectTokens("$..*").ToList(); Assert.IsNotNull(t); Assert.AreEqual(5, t.Count); Assert.IsTrue(JToken.DeepEquals(a, t[0])); Assert.IsTrue(JToken.DeepEquals(o1, t[1])); Assert.AreEqual(1, (int)t[2]); Assert.IsTrue(JToken.DeepEquals(o2, t[3])); Assert.AreEqual(2, (int)t[4]); } [Test] public void EvaluateScanNestResults() { JObject o1 = new JObject { { "Name", 1 } }; JObject o2 = new JObject { { "Name", 2 } }; JObject o3 = new JObject { { "Name", new JObject { { "Name", new JArray(3) } } } }; JArray a = new JArray(o1, o2, o3); IList t = a.SelectTokens("$..Name").ToList(); Assert.IsNotNull(t); Assert.AreEqual(4, t.Count); Assert.AreEqual(1, (int)t[0]); Assert.AreEqual(2, (int)t[1]); Assert.IsTrue(JToken.DeepEquals(new JObject { { "Name", new JArray(3) } }, t[2])); Assert.IsTrue(JToken.DeepEquals(new JArray(3), t[3])); } [Test] public void EvaluateWildcardScanNestResults() { JObject o1 = new JObject { { "Name", 1 } }; JObject o2 = new JObject { { "Name", 2 } }; JObject o3 = new JObject { { "Name", new JObject { { "Name", new JArray(3) } } } }; JArray a = new JArray(o1, o2, o3); IList t = a.SelectTokens("$..*").ToList(); Assert.IsNotNull(t); Assert.AreEqual(9, t.Count); Assert.IsTrue(JToken.DeepEquals(a, t[0])); Assert.IsTrue(JToken.DeepEquals(o1, t[1])); Assert.AreEqual(1, (int)t[2]); Assert.IsTrue(JToken.DeepEquals(o2, t[3])); Assert.AreEqual(2, (int)t[4]); Assert.IsTrue(JToken.DeepEquals(o3, t[5])); Assert.IsTrue(JToken.DeepEquals(new JObject { { "Name", new JArray(3) } }, t[6])); Assert.IsTrue(JToken.DeepEquals(new JArray(3), t[7])); Assert.AreEqual(3, (int)t[8]); } [Test] public void EvaluateSinglePropertyReturningArray() { JObject o = new JObject( new JProperty("Blah", new[] { 1, 2, 3 })); JToken t = o.SelectToken("Blah"); Assert.IsNotNull(t); Assert.AreEqual(JTokenType.Array, t.Type); t = o.SelectToken("Blah[2]"); Assert.AreEqual(JTokenType.Integer, t.Type); Assert.AreEqual(3, (int)t); } [Test] public void EvaluateLastSingleCharacterProperty() { JObject o2 = JObject.Parse("{'People':[{'N':'Jeff'}]}"); string a2 = (string)o2.SelectToken("People[0].N"); Assert.AreEqual("Jeff", a2); } [Test] public void ExistsQuery() { JArray a = new JArray(new JObject(new JProperty("hi", "ho")), new JObject(new JProperty("hi2", "ha"))); IList t = a.SelectTokens("[ ?( @.hi ) ]").ToList(); Assert.IsNotNull(t); Assert.AreEqual(1, t.Count); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", "ho")), t[0])); } [Test] public void EqualsQuery() { JArray a = new JArray( new JObject(new JProperty("hi", "ho")), new JObject(new JProperty("hi", "ha"))); IList t = a.SelectTokens("[ ?( @.['hi'] == 'ha' ) ]").ToList(); Assert.IsNotNull(t); Assert.AreEqual(1, t.Count); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", "ha")), t[0])); } [Test] public void NotEqualsQuery() { JArray a = new JArray( new JArray(new JObject(new JProperty("hi", "ho"))), new JArray(new JObject(new JProperty("hi", "ha")))); IList t = a.SelectTokens("[ ?( @..hi <> 'ha' ) ]").ToList(); Assert.IsNotNull(t); Assert.AreEqual(1, t.Count); Assert.IsTrue(JToken.DeepEquals(new JArray(new JObject(new JProperty("hi", "ho"))), t[0])); } [Test] public void NoPathQuery() { JArray a = new JArray(1, 2, 3); IList t = a.SelectTokens("[ ?( @ > 1 ) ]").ToList(); Assert.IsNotNull(t); Assert.AreEqual(2, t.Count); Assert.AreEqual(2, (int)t[0]); Assert.AreEqual(3, (int)t[1]); } [Test] public void MultipleQueries() { JArray a = new JArray(1, 2, 3, 4, 5, 6, 7, 8, 9); // json path does item based evaluation - http://www.sitepen.com/blog/2008/03/17/jsonpath-support/ // first query resolves array to ints // int has no children to query IList t = a.SelectTokens("[?(@ <> 1)][?(@ <> 4)][?(@ < 7)]").ToList(); Assert.IsNotNull(t); Assert.AreEqual(0, t.Count); } [Test] public void GreaterQuery() { JArray a = new JArray( new JObject(new JProperty("hi", 1)), new JObject(new JProperty("hi", 2)), new JObject(new JProperty("hi", 3))); IList t = a.SelectTokens("[ ?( @.hi > 1 ) ]").ToList(); Assert.IsNotNull(t); Assert.AreEqual(2, t.Count); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", 2)), t[0])); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", 3)), t[1])); } #if !(PORTABLE || ASPNETCORE50 || PORTABLE40 || NET35 || NET20) [Test] public void GreaterQueryBigInteger() { JArray a = new JArray( new JObject(new JProperty("hi", new BigInteger(1))), new JObject(new JProperty("hi", new BigInteger(2))), new JObject(new JProperty("hi", new BigInteger(3)))); IList t = a.SelectTokens("[ ?( @.hi > 1 ) ]").ToList(); Assert.IsNotNull(t); Assert.AreEqual(2, t.Count); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", 2)), t[0])); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", 3)), t[1])); } #endif [Test] public void GreaterOrEqualQuery() { JArray a = new JArray( new JObject(new JProperty("hi", 1)), new JObject(new JProperty("hi", 2)), new JObject(new JProperty("hi", 2.0)), new JObject(new JProperty("hi", 3))); IList t = a.SelectTokens("[ ?( @.hi >= 1 ) ]").ToList(); Assert.IsNotNull(t); Assert.AreEqual(4, t.Count); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", 1)), t[0])); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", 2)), t[1])); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", 2.0)), t[2])); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("hi", 3)), t[3])); } [Test] public void NestedQuery() { JArray a = new JArray( new JObject( new JProperty("name", "Bad Boys"), new JProperty("cast", new JArray( new JObject(new JProperty("name", "Will Smith"))))), new JObject( new JProperty("name", "Independence Day"), new JProperty("cast", new JArray( new JObject(new JProperty("name", "Will Smith"))))), new JObject( new JProperty("name", "The Rock"), new JProperty("cast", new JArray( new JObject(new JProperty("name", "Nick Cage"))))) ); IList t = a.SelectTokens("[?(@.cast[?(@.name=='Will Smith')])].name").ToList(); Assert.IsNotNull(t); Assert.AreEqual(2, t.Count); Assert.AreEqual("Bad Boys", (string)t[0]); Assert.AreEqual("Independence Day", (string)t[1]); } [Test] public void PathWithConstructor() { JArray a = JArray.Parse(@"[ { ""Property1"": [ 1, [ [ [] ] ] ] }, { ""Property2"": new Constructor1( null, [ 1 ] ) } ]"); JValue v = (JValue)a.SelectToken("[1].Property2[1][0]"); Assert.AreEqual(1L, v.Value); } [Test] public void Example() { JObject o = JObject.Parse(@"{ ""Stores"": [ ""Lambton Quay"", ""Willis Street"" ], ""Manufacturers"": [ { ""Name"": ""Acme Co"", ""Products"": [ { ""Name"": ""Anvil"", ""Price"": 50 } ] }, { ""Name"": ""Contoso"", ""Products"": [ { ""Name"": ""Elbow Grease"", ""Price"": 99.95 }, { ""Name"": ""Headlight Fluid"", ""Price"": 4 } ] } ] }"); string name = (string)o.SelectToken("Manufacturers[0].Name"); // Acme Co decimal productPrice = (decimal)o.SelectToken("Manufacturers[0].Products[0].Price"); // 50 string productName = (string)o.SelectToken("Manufacturers[1].Products[0].Name"); // Elbow Grease Assert.AreEqual("Acme Co", name); Assert.AreEqual(50m, productPrice); Assert.AreEqual("Elbow Grease", productName); IList storeNames = o.SelectToken("Stores").Select(s => (string)s).ToList(); // Lambton Quay // Willis Street IList firstProductNames = o["Manufacturers"].Select(m => (string)m.SelectToken("Products[1].Name")).ToList(); // null // Headlight Fluid decimal totalPrice = o["Manufacturers"].Sum(m => (decimal)m.SelectToken("Products[0].Price")); // 149.95 Assert.AreEqual(2, storeNames.Count); Assert.AreEqual("Lambton Quay", storeNames[0]); Assert.AreEqual("Willis Street", storeNames[1]); Assert.AreEqual(2, firstProductNames.Count); Assert.AreEqual(null, firstProductNames[0]); Assert.AreEqual("Headlight Fluid", firstProductNames[1]); Assert.AreEqual(149.95m, totalPrice); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JsonPath/QueryExpressionTests.cs0000664000175000017500000001464012454416117031534 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Text; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq.JsonPath; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Linq.JsonPath { [TestFixture] public class QueryExpressionTests : TestFixtureBase { [Test] public void AndExpressionTest() { CompositeExpression compositeExpression = new CompositeExpression { Operator = QueryOperator.And, Expressions = new List { new BooleanQueryExpression { Operator = QueryOperator.Exists, Path = new List { new FieldFilter { Name = "FirstName" } } }, new BooleanQueryExpression { Operator = QueryOperator.Exists, Path = new List { new FieldFilter { Name = "LastName" } } } } }; JObject o1 = new JObject { {"Title","Title!"}, {"FirstName", "FirstName!"}, {"LastName", "LastName!"} }; Assert.IsTrue(compositeExpression.IsMatch(o1)); JObject o2 = new JObject { {"Title","Title!"}, {"FirstName", "FirstName!"} }; Assert.IsFalse(compositeExpression.IsMatch(o2)); JObject o3 = new JObject { {"Title","Title!"} }; Assert.IsFalse(compositeExpression.IsMatch(o3)); } [Test] public void OrExpressionTest() { CompositeExpression compositeExpression = new CompositeExpression { Operator = QueryOperator.Or, Expressions = new List { new BooleanQueryExpression { Operator = QueryOperator.Exists, Path = new List { new FieldFilter { Name = "FirstName" } } }, new BooleanQueryExpression { Operator = QueryOperator.Exists, Path = new List { new FieldFilter { Name = "LastName" } } } } }; JObject o1 = new JObject { {"Title","Title!"}, {"FirstName", "FirstName!"}, {"LastName", "LastName!"} }; Assert.IsTrue(compositeExpression.IsMatch(o1)); JObject o2 = new JObject { {"Title","Title!"}, {"FirstName", "FirstName!"} }; Assert.IsTrue(compositeExpression.IsMatch(o2)); JObject o3 = new JObject { {"Title","Title!"} }; Assert.IsFalse(compositeExpression.IsMatch(o3)); } [Test] public void BooleanExpressionTest() { BooleanQueryExpression e1 = new BooleanQueryExpression { Operator = QueryOperator.LessThan, Value = new JValue(3), Path = new List { new ArrayIndexFilter() } }; Assert.IsTrue(e1.IsMatch(new JArray(1, 2, 3, 4, 5))); Assert.IsTrue(e1.IsMatch(new JArray(2, 3, 4, 5))); Assert.IsFalse(e1.IsMatch(new JArray(3, 4, 5))); Assert.IsFalse(e1.IsMatch(new JArray(4, 5))); BooleanQueryExpression e2 = new BooleanQueryExpression { Operator = QueryOperator.LessThanOrEquals, Value = new JValue(3), Path = new List { new ArrayIndexFilter() } }; Assert.IsTrue(e2.IsMatch(new JArray(1, 2, 3, 4, 5))); Assert.IsTrue(e2.IsMatch(new JArray(2, 3, 4, 5))); Assert.IsTrue(e2.IsMatch(new JArray(3, 4, 5))); Assert.IsFalse(e2.IsMatch(new JArray(4, 5))); } } } newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/MergeTests.cs0000664000175000017500000003372612454416117025666 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using System.Text; using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class MergeTests : TestFixtureBase { [Test] public void MergeObjectProperty() { var left = (JObject)JToken.FromObject(new { Property1 = 1 }); var right = (JObject)JToken.FromObject(new { Property2 = 2 }); left.Merge(right); string json = left.ToString(); StringAssert.AreEqual(@"{ ""Property1"": 1, ""Property2"": 2 }", json); } [Test] public void MergeChildObject() { var left = (JObject)JToken.FromObject(new { Property1 = new { SubProperty1 = 1 } }); var right = (JObject)JToken.FromObject(new { Property1 = new { SubProperty2 = 2 } }); left.Merge(right); string json = left.ToString(); StringAssert.AreEqual(@"{ ""Property1"": { ""SubProperty1"": 1, ""SubProperty2"": 2 } }", json); } [Test] public void MergeMismatchedTypesRoot() { var left = (JObject)JToken.FromObject(new { Property1 = new { SubProperty1 = 1 } }); var right = (JArray)JToken.FromObject(new object[] { new { Property1 = 1 }, new { Property1 = 1 } }); left.Merge(right); string json = left.ToString(); StringAssert.AreEqual(@"{ ""Property1"": { ""SubProperty1"": 1 } }", json); } [Test] public void MergeMultipleObjects() { var left = (JObject)JToken.FromObject(new { Property1 = new { SubProperty1 = 1 } }); var right = (JObject)JToken.FromObject(new { Property1 = new { SubProperty2 = 2 }, Property2 = 2 }); left.Merge(right); string json = left.ToString(); StringAssert.AreEqual(@"{ ""Property1"": { ""SubProperty1"": 1, ""SubProperty2"": 2 }, ""Property2"": 2 }", json); } [Test] public void MergeArray() { var left = (JObject)JToken.FromObject(new { Array1 = new object[] { new { Property1 = new { Property1 = 1, Property2 = 2, Property3 = 3, Property4 = 4, Property5 = (object)null } }, new { }, 3, null, 5, null } }); var right = (JObject)JToken.FromObject(new { Array1 = new object[] { new { Property1 = new { Property1 = (object)null, Property2 = 3, Property3 = new { }, Property5 = (object)null } }, null, null, 4, 5.1, null, new { Property1 = 1 } } }); left.Merge(right, new JsonMergeSettings { MergeArrayHandling = MergeArrayHandling.Merge }); string json = left.ToString(); StringAssert.AreEqual(@"{ ""Array1"": [ { ""Property1"": { ""Property1"": 1, ""Property2"": 3, ""Property3"": {}, ""Property4"": 4, ""Property5"": null } }, {}, 3, 4, 5.1, null, { ""Property1"": 1 } ] }", json); } [Test] public void ConcatArray() { var left = (JObject)JToken.FromObject(new { Array1 = new object[] { new { Property1 = 1 }, new { Property1 = 1 } } }); var right = (JObject)JToken.FromObject(new { Array1 = new object[] { new { Property1 = 1 }, new { Property2 = 2 }, new { Property3 = 3 } } }); left.Merge(right, new JsonMergeSettings { MergeArrayHandling = MergeArrayHandling.Concat }); string json = left.ToString(); StringAssert.AreEqual(@"{ ""Array1"": [ { ""Property1"": 1 }, { ""Property1"": 1 }, { ""Property1"": 1 }, { ""Property2"": 2 }, { ""Property3"": 3 } ] }", json); } [Test] public void MergeMismatchingTypesInArray() { var left = (JArray)JToken.FromObject(new object[] { true, null, new { Property1 = 1 }, new object[] { 1 }, new { Property1 = 1 }, 1, new object[] { 1 } }); var right = (JArray)JToken.FromObject(new object[] { 1, 5, new object[] { 1 }, new { Property1 = 1 }, true, new { Property1 = 1 }, null }); left.Merge(right, new JsonMergeSettings { MergeArrayHandling = MergeArrayHandling.Merge }); string json = left.ToString(); StringAssert.AreEqual(@"[ 1, 5, { ""Property1"": 1 }, [ 1 ], { ""Property1"": 1 }, { ""Property1"": 1 }, [ 1 ] ]", json); } [Test] public void MergeMismatchingTypesInObject() { var left = (JObject)JToken.FromObject(new { Property1 = new object[] { 1 }, Property2 = new object[] { 1 }, Property3 = true, Property4 = true }); var right = (JObject)JToken.FromObject(new { Property1 = new { Nested = true }, Property2 = true, Property3 = new object[] { 1 }, Property4 = (object)null }); left.Merge(right); string json = left.ToString(); StringAssert.AreEqual(@"{ ""Property1"": { ""Nested"": true }, ""Property2"": true, ""Property3"": [ 1 ], ""Property4"": true }", json); } [Test] public void MergeArrayOverwrite_Nested() { var left = (JObject)JToken.FromObject(new { Array1 = new object[] { 1, 2, 3 } }); var right = (JObject)JToken.FromObject(new { Array1 = new object[] { 4, 5 } }); left.Merge(right, new JsonMergeSettings { MergeArrayHandling = MergeArrayHandling.Replace }); string json = left.ToString(); StringAssert.AreEqual(@"{ ""Array1"": [ 4, 5 ] }", json); } [Test] public void MergeArrayOverwrite_Root() { var left = (JArray)JToken.FromObject(new object[] { 1, 2, 3 }); var right = (JArray)JToken.FromObject(new object[] { 4, 5 }); left.Merge(right, new JsonMergeSettings { MergeArrayHandling = MergeArrayHandling.Replace }); string json = left.ToString(); StringAssert.AreEqual(@"[ 4, 5 ]", json); } [Test] public void UnionArrays() { var left = (JObject)JToken.FromObject(new { Array1 = new object[] { new { Property1 = 1 }, new { Property1 = 1 } } }); var right = (JObject)JToken.FromObject(new { Array1 = new object[] { new { Property1 = 1 }, new { Property2 = 2 }, new { Property3 = 3 } } }); left.Merge(right, new JsonMergeSettings { MergeArrayHandling = MergeArrayHandling.Union }); string json = left.ToString(); StringAssert.AreEqual(@"{ ""Array1"": [ { ""Property1"": 1 }, { ""Property1"": 1 }, { ""Property2"": 2 }, { ""Property3"": 3 } ] }", json); } [Test] public void MergeJProperty() { JProperty p1 = new JProperty("p1", 1); JProperty p2 = new JProperty("p2", 2); p1.Merge(p2); Assert.AreEqual(2, (int)p1.Value); JProperty p3 = new JProperty("p3"); p1.Merge(p3); Assert.AreEqual(2, (int)p1.Value); JProperty p4 = new JProperty("p4", null); p1.Merge(p4); Assert.AreEqual(2, (int)p1.Value); } [Test] public void MergeJConstructor() { JConstructor c1 = new JConstructor("c1", new[] { 1, 2 }); JConstructor c2 = new JConstructor("c2", new[] { 3, 4 }); c1.Merge(c2); Assert.AreEqual("c2", c1.Name); CollectionAssert.AreEquivalent(new[] { 1, 2, 3, 4 }, c1.Select(i => (int)i)); JConstructor c3 = new JConstructor(); c1.Merge(c3); Assert.AreEqual("c2", c1.Name); JConstructor c4 = new JConstructor("c4", new[] { 5, 6 }); c1.Merge(c4, new JsonMergeSettings { MergeArrayHandling = MergeArrayHandling.Replace }); Assert.AreEqual("c4", c1.Name); CollectionAssert.AreEquivalent(new[] { 5, 6 }, c1.Select(i => (int)i)); } [Test] public void MergeDefaultContainers() { JConstructor c = new JConstructor(); c.Merge(new JConstructor()); Assert.AreEqual(null, c.Name); Assert.AreEqual(0, c.Count); JObject o = new JObject(); o.Merge(new JObject()); Assert.AreEqual(0, o.Count); JArray a = new JArray(); a.Merge(new JArray()); Assert.AreEqual(0, a.Count); JProperty p = new JProperty("name1"); p.Merge(new JProperty("name2")); Assert.AreEqual("name1", p.Name); Assert.AreEqual(0, p.Count); } [Test] public void MergeNull() { JConstructor c = new JConstructor(); c.Merge(null); Assert.AreEqual(null, c.Name); Assert.AreEqual(0, c.Count); JObject o = new JObject(); o.Merge(null); Assert.AreEqual(0, o.Count); JArray a = new JArray(); a.Merge(null); Assert.AreEqual(0, a.Count); JProperty p = new JProperty("name1"); p.Merge(null); Assert.AreEqual("name1", p.Name); Assert.AreEqual(0, p.Count); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JArrayTests.cs0000664000175000017500000003732712454416117026020 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.ComponentModel; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JArrayTests : TestFixtureBase { [Test] public void RemoveSpecificAndRemoveSelf() { JObject o = new JObject { { "results", new JArray(1, 2, 3, 4) } }; JArray a = (JArray)o["results"]; var last = a.Last(); Assert.IsTrue(a.Remove(last)); last = a.Last(); last.Remove(); Assert.AreEqual(2, a.Count); } [Test] public void Clear() { JArray a = new JArray { 1 }; Assert.AreEqual(1, a.Count); a.Clear(); Assert.AreEqual(0, a.Count); } [Test] public void AddToSelf() { JArray a = new JArray(); a.Add(a); Assert.IsFalse(ReferenceEquals(a[0], a)); } [Test] public void Contains() { JValue v = new JValue(1); JArray a = new JArray { v }; Assert.AreEqual(false, a.Contains(new JValue(2))); Assert.AreEqual(false, a.Contains(new JValue(1))); Assert.AreEqual(false, a.Contains(null)); Assert.AreEqual(true, a.Contains(v)); } [Test] public void GenericCollectionCopyTo() { JArray j = new JArray(); j.Add(new JValue(1)); j.Add(new JValue(2)); j.Add(new JValue(3)); Assert.AreEqual(3, j.Count); JToken[] a = new JToken[5]; ((ICollection)j).CopyTo(a, 1); Assert.AreEqual(null, a[0]); Assert.AreEqual(1, (int)a[1]); Assert.AreEqual(2, (int)a[2]); Assert.AreEqual(3, (int)a[3]); Assert.AreEqual(null, a[4]); } [Test] public void GenericCollectionCopyToNullArrayShouldThrow() { JArray j = new JArray(); ExceptionAssert.Throws(() => { ((ICollection)j).CopyTo(null, 0); }, @"Value cannot be null. Parameter name: array"); } [Test] public void GenericCollectionCopyToNegativeArrayIndexShouldThrow() { JArray j = new JArray(); ExceptionAssert.Throws(() => { ((ICollection)j).CopyTo(new JToken[1], -1); }, @"arrayIndex is less than 0. Parameter name: arrayIndex"); } [Test] public void GenericCollectionCopyToArrayIndexEqualGreaterToArrayLengthShouldThrow() { JArray j = new JArray(); ExceptionAssert.Throws(() => { ((ICollection)j).CopyTo(new JToken[1], 1); }, @"arrayIndex is equal to or greater than the length of array."); } [Test] public void GenericCollectionCopyToInsufficientArrayCapacity() { JArray j = new JArray(); j.Add(new JValue(1)); j.Add(new JValue(2)); j.Add(new JValue(3)); ExceptionAssert.Throws(() => { ((ICollection)j).CopyTo(new JToken[3], 1); }, @"The number of elements in the source JObject is greater than the available space from arrayIndex to the end of the destination array."); } [Test] public void Remove() { JValue v = new JValue(1); JArray j = new JArray(); j.Add(v); Assert.AreEqual(1, j.Count); Assert.AreEqual(false, j.Remove(new JValue(1))); Assert.AreEqual(false, j.Remove(null)); Assert.AreEqual(true, j.Remove(v)); Assert.AreEqual(false, j.Remove(v)); Assert.AreEqual(0, j.Count); } [Test] public void IndexOf() { JValue v1 = new JValue(1); JValue v2 = new JValue(1); JValue v3 = new JValue(1); JArray j = new JArray(); j.Add(v1); Assert.AreEqual(0, j.IndexOf(v1)); j.Add(v2); Assert.AreEqual(0, j.IndexOf(v1)); Assert.AreEqual(1, j.IndexOf(v2)); j.AddFirst(v3); Assert.AreEqual(1, j.IndexOf(v1)); Assert.AreEqual(2, j.IndexOf(v2)); Assert.AreEqual(0, j.IndexOf(v3)); v3.Remove(); Assert.AreEqual(0, j.IndexOf(v1)); Assert.AreEqual(1, j.IndexOf(v2)); Assert.AreEqual(-1, j.IndexOf(v3)); } [Test] public void RemoveAt() { JValue v1 = new JValue(1); JValue v2 = new JValue(1); JValue v3 = new JValue(1); JArray j = new JArray(); j.Add(v1); j.Add(v2); j.Add(v3); Assert.AreEqual(true, j.Contains(v1)); j.RemoveAt(0); Assert.AreEqual(false, j.Contains(v1)); Assert.AreEqual(true, j.Contains(v3)); j.RemoveAt(1); Assert.AreEqual(false, j.Contains(v3)); Assert.AreEqual(1, j.Count); } [Test] public void RemoveAtOutOfRangeIndexShouldError() { JArray j = new JArray(); ExceptionAssert.Throws(() => { j.RemoveAt(0); }, @"Index is equal to or greater than Count. Parameter name: index"); } [Test] public void RemoveAtNegativeIndexShouldError() { JArray j = new JArray(); ExceptionAssert.Throws(() => { j.RemoveAt(-1); }, @"Index is less than 0. Parameter name: index"); } [Test] public void Insert() { JValue v1 = new JValue(1); JValue v2 = new JValue(2); JValue v3 = new JValue(3); JValue v4 = new JValue(4); JArray j = new JArray(); j.Add(v1); j.Add(v2); j.Add(v3); j.Insert(1, v4); Assert.AreEqual(0, j.IndexOf(v1)); Assert.AreEqual(1, j.IndexOf(v4)); Assert.AreEqual(2, j.IndexOf(v2)); Assert.AreEqual(3, j.IndexOf(v3)); } [Test] public void AddFirstAddedTokenShouldBeFirst() { JValue v1 = new JValue(1); JValue v2 = new JValue(2); JValue v3 = new JValue(3); JArray j = new JArray(); Assert.AreEqual(null, j.First); Assert.AreEqual(null, j.Last); j.AddFirst(v1); Assert.AreEqual(v1, j.First); Assert.AreEqual(v1, j.Last); j.AddFirst(v2); Assert.AreEqual(v2, j.First); Assert.AreEqual(v1, j.Last); j.AddFirst(v3); Assert.AreEqual(v3, j.First); Assert.AreEqual(v1, j.Last); } [Test] public void InsertShouldInsertAtZeroIndex() { JValue v1 = new JValue(1); JValue v2 = new JValue(2); JArray j = new JArray(); j.Insert(0, v1); Assert.AreEqual(0, j.IndexOf(v1)); j.Insert(0, v2); Assert.AreEqual(1, j.IndexOf(v1)); Assert.AreEqual(0, j.IndexOf(v2)); } [Test] public void InsertNull() { JArray j = new JArray(); j.Insert(0, null); Assert.AreEqual(null, ((JValue)j[0]).Value); } [Test] public void InsertNegativeIndexShouldThrow() { JArray j = new JArray(); ExceptionAssert.Throws(() => { j.Insert(-1, new JValue(1)); }, @"Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index"); } [Test] public void InsertOutOfRangeIndexShouldThrow() { JArray j = new JArray(); ExceptionAssert.Throws(() => { j.Insert(2, new JValue(1)); }, @"Index must be within the bounds of the List. Parameter name: index"); } [Test] public void Item() { JValue v1 = new JValue(1); JValue v2 = new JValue(2); JValue v3 = new JValue(3); JValue v4 = new JValue(4); JArray j = new JArray(); j.Add(v1); j.Add(v2); j.Add(v3); j[1] = v4; Assert.AreEqual(null, v2.Parent); Assert.AreEqual(-1, j.IndexOf(v2)); Assert.AreEqual(j, v4.Parent); Assert.AreEqual(1, j.IndexOf(v4)); } [Test] public void Parse_ShouldThrowOnUnexpectedToken() { string json = @"{""prop"":""value""}"; ExceptionAssert.Throws(() => { JArray.Parse(json); }, "Error reading JArray from JsonReader. Current JsonReader item is not an array: StartObject. Path '', line 1, position 1."); } public class ListItemFields { public string ListItemText { get; set; } public object ListItemValue { get; set; } } [Test] public void ArrayOrder() { string itemZeroText = "Zero text"; IEnumerable t = new List { new ListItemFields { ListItemText = "First", ListItemValue = 1 }, new ListItemFields { ListItemText = "Second", ListItemValue = 2 }, new ListItemFields { ListItemText = "Third", ListItemValue = 3 } }; JObject optionValues = new JObject( new JProperty("options", new JArray( new JObject( new JProperty("text", itemZeroText), new JProperty("value", "0")), from r in t orderby r.ListItemValue select new JObject( new JProperty("text", r.ListItemText), new JProperty("value", r.ListItemValue.ToString()))))); string result = "myOptions = " + optionValues.ToString(); StringAssert.AreEqual(@"myOptions = { ""options"": [ { ""text"": ""Zero text"", ""value"": ""0"" }, { ""text"": ""First"", ""value"": ""1"" }, { ""text"": ""Second"", ""value"": ""2"" }, { ""text"": ""Third"", ""value"": ""3"" } ] }", result); } [Test] public void Iterate() { JArray a = new JArray(1, 2, 3, 4, 5); int i = 1; foreach (JToken token in a) { Assert.AreEqual(i, (int)token); i++; } } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void ITypedListGetItemProperties() { JProperty p1 = new JProperty("Test1", 1); JProperty p2 = new JProperty("Test2", "Two"); ITypedList a = new JArray(new JObject(p1, p2)); PropertyDescriptorCollection propertyDescriptors = a.GetItemProperties(null); Assert.IsNotNull(propertyDescriptors); Assert.AreEqual(2, propertyDescriptors.Count); Assert.AreEqual("Test1", propertyDescriptors[0].Name); Assert.AreEqual("Test2", propertyDescriptors[1].Name); } #endif [Test] public void AddArrayToSelf() { JArray a = new JArray(1, 2); a.Add(a); Assert.AreEqual(3, a.Count); Assert.AreEqual(1, (int)a[0]); Assert.AreEqual(2, (int)a[1]); Assert.AreNotSame(a, a[2]); } [Test] public void SetValueWithInvalidIndex() { ExceptionAssert.Throws(() => { JArray a = new JArray(); a["badvalue"] = new JValue(3); }, @"Set JArray values with invalid key value: ""badvalue"". Array position index expected."); } [Test] public void SetValue() { object key = 0; JArray a = new JArray((object)null); a[key] = new JValue(3); Assert.AreEqual(3, (int)a[key]); } [Test] public void ReplaceAll() { JArray a = new JArray(new[] { 1, 2, 3 }); Assert.AreEqual(3, a.Count); Assert.AreEqual(1, (int)a[0]); Assert.AreEqual(2, (int)a[1]); Assert.AreEqual(3, (int)a[2]); a.ReplaceAll(1); Assert.AreEqual(1, a.Count); Assert.AreEqual(1, (int)a[0]); } [Test] public void ParseIncomplete() { ExceptionAssert.Throws(() => { JArray.Parse("[1"); }, "Unexpected end of content while loading JArray. Path '[0]', line 1, position 2."); } [Test] public void InsertAddEnd() { JArray array = new JArray(); array.Insert(0, 123); array.Insert(1, 456); Assert.AreEqual(2, array.Count); Assert.AreEqual(123, (int)array[0]); Assert.AreEqual(456, (int)array[1]); } [Test] public void ParseAdditionalContent() { string json = @"[ ""Small"", ""Medium"", ""Large"" ], 987987"; ExceptionAssert.Throws(() => { JArray.Parse(json); }, "Additional text encountered after finished reading JSON content: ,. Path '', line 5, position 2."); } [Test] public void ToListOnEmptyArray() { string json = @"{""decks"":[]}"; JArray decks = (JArray)JObject.Parse(json)["decks"]; IList l = decks.ToList(); Assert.AreEqual(0, l.Count); json = @"{""decks"":[1]}"; decks = (JArray)JObject.Parse(json)["decks"]; l = decks.ToList(); Assert.AreEqual(1, l.Count); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/AnnotationsTests.cs0000664000175000017500000001761412454416117027122 0ustar directhexdirecthexusing System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Linq; using NUnit.Framework; namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class AnnotationsTests : TestFixtureBase { [Test] public void AddAnnotation() { JObject o = new JObject(); o.AddAnnotation("A string!"); string s = o.Annotation(); Assert.AreEqual("A string!", s); s = (string)o.Annotation(typeof(string)); Assert.AreEqual("A string!", s); } [Test] public void AddAnnotation_MultipleOfTheSameType() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation("Another string!"); string s = o.Annotation(); Assert.AreEqual("A string!", s); s = (string)o.Annotation(typeof(string)); Assert.AreEqual("A string!", s); } [Test] public void AddAnnotation_MultipleOfDifferentTypes() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation(new Uri("http://www.google.com/")); string s = o.Annotation(); Assert.AreEqual("A string!", s); s = (string)o.Annotation(typeof(string)); Assert.AreEqual("A string!", s); Uri i = o.Annotation(); Assert.AreEqual(new Uri("http://www.google.com/"), i); i = (Uri)o.Annotation(typeof(Uri)); Assert.AreEqual(new Uri("http://www.google.com/"), i); } [Test] public void GetAnnotation_NeverSet() { JObject o = new JObject(); string s = o.Annotation(); Assert.AreEqual(null, s); s = (string)o.Annotation(typeof(string)); Assert.AreEqual(null, s); } [Test] public void GetAnnotations() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation("A string 2!"); o.AddAnnotation("A string 3!"); IList l = o.Annotations().ToList(); Assert.AreEqual(3, l.Count); Assert.AreEqual("A string!", l[0]); Assert.AreEqual("A string 2!", l[1]); Assert.AreEqual("A string 3!", l[2]); l = o.Annotations(typeof(string)).Cast().ToList(); Assert.AreEqual(3, l.Count); Assert.AreEqual("A string!", l[0]); Assert.AreEqual("A string 2!", l[1]); Assert.AreEqual("A string 3!", l[2]); } [Test] public void GetAnnotations_MultipleTypes() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation("A string 2!"); o.AddAnnotation("A string 3!"); o.AddAnnotation(new Uri("http://www.google.com/")); IList l = o.Annotations().ToList(); Assert.AreEqual(4, l.Count); Assert.AreEqual("A string!", l[0]); Assert.AreEqual("A string 2!", l[1]); Assert.AreEqual("A string 3!", l[2]); Assert.AreEqual(new Uri("http://www.google.com/"), l[3]); l = o.Annotations(typeof(object)).ToList(); Assert.AreEqual(4, l.Count); Assert.AreEqual("A string!", l[0]); Assert.AreEqual("A string 2!", l[1]); Assert.AreEqual("A string 3!", l[2]); Assert.AreEqual(new Uri("http://www.google.com/"), l[3]); } [Test] public void RemoveAnnotation() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.RemoveAnnotations(); string s = o.Annotation(); Assert.AreEqual(null, s); } [Test] public void RemoveAnnotation_NonGeneric() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.RemoveAnnotations(typeof(string)); string s = o.Annotation(); Assert.AreEqual(null, s); s = (string)o.Annotation(typeof(string)); Assert.AreEqual(null, s); } [Test] public void RemoveAnnotation_Multiple() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation("A string 2!"); o.AddAnnotation("A string 3!"); o.RemoveAnnotations(); string s = o.Annotation(); Assert.AreEqual(null, s); o.AddAnnotation("A string 4!"); s = o.Annotation(); Assert.AreEqual("A string 4!", s); Uri i = (Uri)o.Annotation(typeof(Uri)); Assert.AreEqual(null, i); } [Test] public void RemoveAnnotation_MultipleCalls() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation(new Uri("http://www.google.com/")); o.RemoveAnnotations(); o.RemoveAnnotations(); string s = o.Annotation(); Assert.AreEqual(null, s); Uri i = o.Annotation(); Assert.AreEqual(null, i); } [Test] public void RemoveAnnotation_Multiple_NonGeneric() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation("A string 2!"); o.RemoveAnnotations(typeof(string)); string s = o.Annotation(); Assert.AreEqual(null, s); } [Test] public void RemoveAnnotation_MultipleCalls_NonGeneric() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation(new Uri("http://www.google.com/")); o.RemoveAnnotations(typeof(string)); o.RemoveAnnotations(typeof(Uri)); string s = o.Annotation(); Assert.AreEqual(null, s); Uri i = o.Annotation(); Assert.AreEqual(null, i); } [Test] public void RemoveAnnotation_MultipleWithDifferentTypes() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation(new Uri("http://www.google.com/")); o.RemoveAnnotations(); string s = o.Annotation(); Assert.AreEqual(null, s); Uri i = o.Annotation(); Assert.AreEqual(new Uri("http://www.google.com/"), i); } [Test] public void RemoveAnnotation_MultipleWithDifferentTypes_NonGeneric() { JObject o = new JObject(); o.AddAnnotation("A string!"); o.AddAnnotation(new Uri("http://www.google.com/")); o.RemoveAnnotations(typeof(string)); string s = o.Annotation(); Assert.AreEqual(null, s); Uri i = o.Annotation(); Assert.AreEqual(new Uri("http://www.google.com/"), i); } [Test] public void Example() { JObject o = JObject.Parse(@"{ 'name': 'Bill G', 'age': 58, 'country': 'United States', 'employer': 'Microsoft' }"); o.AddAnnotation(new HashSet()); o.PropertyChanged += (sender, args) => o.Annotation>().Add(args.PropertyName); o["age"] = 59; o["employer"] = "Bill & Melinda Gates Foundation"; HashSet changedProperties = o.Annotation>(); // age // employer Assert.AreEqual(2, changedProperties.Count); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JPropertyTests.cs0000664000175000017500000001613312454416117026556 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif using Newtonsoft.Json.Linq; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using System.IO; namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JPropertyTests : TestFixtureBase { [Test] public void NullValue() { JProperty p = new JProperty("TestProperty", null); Assert.IsNotNull(p.Value); Assert.AreEqual(JTokenType.Null, p.Value.Type); Assert.AreEqual(p, p.Value.Parent); p.Value = null; Assert.IsNotNull(p.Value); Assert.AreEqual(JTokenType.Null, p.Value.Type); Assert.AreEqual(p, p.Value.Parent); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void ListChanged() { JProperty p = new JProperty("TestProperty", null); IBindingList l = p; ListChangedType? listChangedType = null; int? index = null; l.ListChanged += (sender, args) => { listChangedType = args.ListChangedType; index = args.NewIndex; }; p.Value = 1; Assert.AreEqual(ListChangedType.ItemChanged, listChangedType.Value); Assert.AreEqual(0, index.Value); } #endif [Test] public void IListCount() { JProperty p = new JProperty("TestProperty", null); IList l = p; Assert.AreEqual(1, l.Count); } [Test] public void IListClear() { JProperty p = new JProperty("TestProperty", null); IList l = p; ExceptionAssert.Throws(() => { l.Clear(); }, "Cannot add or remove items from Newtonsoft.Json.Linq.JProperty."); } [Test] public void IListAdd() { JProperty p = new JProperty("TestProperty", null); IList l = p; ExceptionAssert.Throws(() => { l.Add(null); }, "Newtonsoft.Json.Linq.JProperty cannot have multiple values."); } [Test] public void IListRemove() { JProperty p = new JProperty("TestProperty", null); IList l = p; ExceptionAssert.Throws(() => { l.Remove(p.Value); }, "Cannot add or remove items from Newtonsoft.Json.Linq.JProperty."); } [Test] public void IListRemoveAt() { JProperty p = new JProperty("TestProperty", null); IList l = p; ExceptionAssert.Throws(() => { l.RemoveAt(0); }, "Cannot add or remove items from Newtonsoft.Json.Linq.JProperty."); } [Test] public void JPropertyLinq() { JProperty p = new JProperty("TestProperty", null); IList l = p; List result = l.Cast().ToList(); Assert.AreEqual(1, result.Count); } [Test] public void JPropertyDeepEquals() { JProperty p1 = new JProperty("TestProperty", null); JProperty p2 = new JProperty("TestProperty", null); Assert.AreEqual(true, JToken.DeepEquals(p1, p2)); } [Test] public void JPropertyIndexOf() { JValue v = new JValue(1); JProperty p1 = new JProperty("TestProperty", v); IList l1 = p1; Assert.AreEqual(0, l1.IndexOf(v)); IList l2 = p1; Assert.AreEqual(0, l2.IndexOf(v)); } [Test] public void JPropertyContains() { JValue v = new JValue(1); JProperty p = new JProperty("TestProperty", v); Assert.AreEqual(true, p.Contains(v)); Assert.AreEqual(false, p.Contains(new JValue(1))); } [Test] public void Load() { JsonReader reader = new JsonTextReader(new StringReader("{'propertyname':['value1']}")); reader.Read(); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); reader.Read(); JProperty property = JProperty.Load(reader); Assert.AreEqual("propertyname", property.Name); Assert.IsTrue(JToken.DeepEquals(JArray.Parse("['value1']"), property.Value)); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); reader = new JsonTextReader(new StringReader("{'propertyname':null}")); reader.Read(); Assert.AreEqual(JsonToken.StartObject, reader.TokenType); reader.Read(); property = JProperty.Load(reader); Assert.AreEqual("propertyname", property.Name); Assert.IsTrue(JToken.DeepEquals(JValue.CreateNull(), property.Value)); Assert.AreEqual(JsonToken.EndObject, reader.TokenType); } [Test] public void MultiContentConstructor() { JProperty p = new JProperty("error", new List { "one", "two" }); JArray a = (JArray)p.Value; Assert.AreEqual(a.Count, 2); Assert.AreEqual("one", (string)a[0]); Assert.AreEqual("two", (string)a[1]); } [Test] public void IListGenericAdd() { IList t = new JProperty("error", new List { "one", "two" }); ExceptionAssert.Throws(() => { t.Add(1); }, "Newtonsoft.Json.Linq.JProperty cannot have multiple values."); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Linq/JTokenTests.cs0000664000175000017500000015235512454416117026021 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) using System.Numerics; #endif using System.Text; using Newtonsoft.Json.Converters; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Linq; using System.IO; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; using Newtonsoft.Json.Utilities; #endif namespace Newtonsoft.Json.Tests.Linq { [TestFixture] public class JTokenTests : TestFixtureBase { [Test] public void ReadFrom() { JObject o = (JObject)JToken.ReadFrom(new JsonTextReader(new StringReader("{'pie':true}"))); Assert.AreEqual(true, (bool)o["pie"]); JArray a = (JArray)JToken.ReadFrom(new JsonTextReader(new StringReader("[1,2,3]"))); Assert.AreEqual(1, (int)a[0]); Assert.AreEqual(2, (int)a[1]); Assert.AreEqual(3, (int)a[2]); JsonReader reader = new JsonTextReader(new StringReader("{'pie':true}")); reader.Read(); reader.Read(); JProperty p = (JProperty)JToken.ReadFrom(reader); Assert.AreEqual("pie", p.Name); Assert.AreEqual(true, (bool)p.Value); JConstructor c = (JConstructor)JToken.ReadFrom(new JsonTextReader(new StringReader("new Date(1)"))); Assert.AreEqual("Date", c.Name); Assert.IsTrue(JToken.DeepEquals(new JValue(1), c.Values().ElementAt(0))); JValue v; v = (JValue)JToken.ReadFrom(new JsonTextReader(new StringReader(@"""stringvalue"""))); Assert.AreEqual("stringvalue", (string)v); v = (JValue)JToken.ReadFrom(new JsonTextReader(new StringReader(@"1"))); Assert.AreEqual(1, (int)v); v = (JValue)JToken.ReadFrom(new JsonTextReader(new StringReader(@"1.1"))); Assert.AreEqual(1.1, (double)v); #if !NET20 v = (JValue)JToken.ReadFrom(new JsonTextReader(new StringReader(@"""1970-01-01T00:00:00+12:31""")) { DateParseHandling = DateParseHandling.DateTimeOffset }); Assert.AreEqual(typeof(DateTimeOffset), v.Value.GetType()); Assert.AreEqual(new DateTimeOffset(DateTimeUtils.InitialJavaScriptDateTicks, new TimeSpan(12, 31, 0)), v.Value); #endif } [Test] public void Load() { JObject o = (JObject)JToken.Load(new JsonTextReader(new StringReader("{'pie':true}"))); Assert.AreEqual(true, (bool)o["pie"]); } [Test] public void Parse() { JObject o = (JObject)JToken.Parse("{'pie':true}"); Assert.AreEqual(true, (bool)o["pie"]); } [Test] public void Parent() { JArray v = new JArray(new JConstructor("TestConstructor"), new JValue(new DateTime(2000, 12, 20))); Assert.AreEqual(null, v.Parent); JObject o = new JObject( new JProperty("Test1", v), new JProperty("Test2", "Test2Value"), new JProperty("Test3", "Test3Value"), new JProperty("Test4", null) ); Assert.AreEqual(o.Property("Test1"), v.Parent); JProperty p = new JProperty("NewProperty", v); // existing value should still have same parent Assert.AreEqual(o.Property("Test1"), v.Parent); // new value should be cloned Assert.AreNotSame(p.Value, v); Assert.AreEqual((DateTime)((JValue)p.Value[1]).Value, (DateTime)((JValue)v[1]).Value); Assert.AreEqual(v, o["Test1"]); Assert.AreEqual(null, o.Parent); JProperty o1 = new JProperty("O1", o); Assert.AreEqual(o, o1.Value); Assert.AreNotEqual(null, o.Parent); JProperty o2 = new JProperty("O2", o); Assert.AreNotSame(o1.Value, o2.Value); Assert.AreEqual(o1.Value.Children().Count(), o2.Value.Children().Count()); Assert.AreEqual(false, JToken.DeepEquals(o1, o2)); Assert.AreEqual(true, JToken.DeepEquals(o1.Value, o2.Value)); } [Test] public void Next() { JArray a = new JArray( 5, 6, new JArray(7, 8), new JArray(9, 10) ); JToken next = a[0].Next; Assert.AreEqual(6, (int)next); next = next.Next; Assert.IsTrue(JToken.DeepEquals(new JArray(7, 8), next)); next = next.Next; Assert.IsTrue(JToken.DeepEquals(new JArray(9, 10), next)); next = next.Next; Assert.IsNull(next); } [Test] public void Previous() { JArray a = new JArray( 5, 6, new JArray(7, 8), new JArray(9, 10) ); JToken previous = a[3].Previous; Assert.IsTrue(JToken.DeepEquals(new JArray(7, 8), previous)); previous = previous.Previous; Assert.AreEqual(6, (int)previous); previous = previous.Previous; Assert.AreEqual(5, (int)previous); previous = previous.Previous; Assert.IsNull(previous); } [Test] public void Children() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); Assert.AreEqual(4, a.Count()); Assert.AreEqual(3, a.Children().Count()); } [Test] public void BeforeAfter() { JArray a = new JArray( 5, new JArray(1, 2, 3), new JArray(1, 2, 3), new JArray(1, 2, 3) ); Assert.AreEqual(5, (int)a[1].Previous); Assert.AreEqual(2, a[2].BeforeSelf().Count()); //Assert.AreEqual(2, a[2].AfterSelf().Count()); } [Test] public void Casting() { Assert.AreEqual(1L, (long)(new JValue(1))); Assert.AreEqual(2L, (long)new JArray(1, 2, 3)[1]); Assert.AreEqual(new DateTime(2000, 12, 20), (DateTime)new JValue(new DateTime(2000, 12, 20))); #if !NET20 Assert.AreEqual(new DateTimeOffset(2000, 12, 20, 0, 0, 0, TimeSpan.Zero), (DateTimeOffset)new JValue(new DateTime(2000, 12, 20, 0, 0, 0, DateTimeKind.Utc))); Assert.AreEqual(new DateTimeOffset(2000, 12, 20, 23, 50, 10, TimeSpan.Zero), (DateTimeOffset)new JValue(new DateTimeOffset(2000, 12, 20, 23, 50, 10, TimeSpan.Zero))); Assert.AreEqual(null, (DateTimeOffset?)new JValue((DateTimeOffset?)null)); Assert.AreEqual(null, (DateTimeOffset?)(JValue)null); #endif Assert.AreEqual(true, (bool)new JValue(true)); Assert.AreEqual(true, (bool?)new JValue(true)); Assert.AreEqual(null, (bool?)((JValue)null)); Assert.AreEqual(null, (bool?)JValue.CreateNull()); Assert.AreEqual(10, (long)new JValue(10)); Assert.AreEqual(null, (long?)new JValue((long?)null)); Assert.AreEqual(null, (long?)(JValue)null); Assert.AreEqual(null, (int?)new JValue((int?)null)); Assert.AreEqual(null, (int?)(JValue)null); Assert.AreEqual(null, (DateTime?)new JValue((DateTime?)null)); Assert.AreEqual(null, (DateTime?)(JValue)null); Assert.AreEqual(null, (short?)new JValue((short?)null)); Assert.AreEqual(null, (short?)(JValue)null); Assert.AreEqual(null, (float?)new JValue((float?)null)); Assert.AreEqual(null, (float?)(JValue)null); Assert.AreEqual(null, (double?)new JValue((double?)null)); Assert.AreEqual(null, (double?)(JValue)null); Assert.AreEqual(null, (decimal?)new JValue((decimal?)null)); Assert.AreEqual(null, (decimal?)(JValue)null); Assert.AreEqual(null, (uint?)new JValue((uint?)null)); Assert.AreEqual(null, (uint?)(JValue)null); Assert.AreEqual(null, (sbyte?)new JValue((sbyte?)null)); Assert.AreEqual(null, (sbyte?)(JValue)null); Assert.AreEqual(null, (byte?)new JValue((byte?)null)); Assert.AreEqual(null, (byte?)(JValue)null); Assert.AreEqual(null, (ulong?)new JValue((ulong?)null)); Assert.AreEqual(null, (ulong?)(JValue)null); Assert.AreEqual(null, (uint?)new JValue((uint?)null)); Assert.AreEqual(null, (uint?)(JValue)null); Assert.AreEqual(11.1f, (float)new JValue(11.1)); Assert.AreEqual(float.MinValue, (float)new JValue(float.MinValue)); Assert.AreEqual(1.1, (double)new JValue(1.1)); Assert.AreEqual(uint.MaxValue, (uint)new JValue(uint.MaxValue)); Assert.AreEqual(ulong.MaxValue, (ulong)new JValue(ulong.MaxValue)); Assert.AreEqual(ulong.MaxValue, (ulong)new JProperty("Test", new JValue(ulong.MaxValue))); Assert.AreEqual(null, (string)new JValue((string)null)); Assert.AreEqual(5m, (decimal)(new JValue(5L))); Assert.AreEqual(5m, (decimal?)(new JValue(5L))); Assert.AreEqual(5f, (float)(new JValue(5L))); Assert.AreEqual(5f, (float)(new JValue(5m))); Assert.AreEqual(5f, (float?)(new JValue(5m))); Assert.AreEqual(5, (byte)(new JValue(5))); Assert.AreEqual(SByte.MinValue, (sbyte?)(new JValue(SByte.MinValue))); Assert.AreEqual(SByte.MinValue, (sbyte)(new JValue(SByte.MinValue))); Assert.AreEqual(null, (sbyte?)JValue.CreateNull()); Assert.AreEqual("1", (string)(new JValue(1))); Assert.AreEqual("1", (string)(new JValue(1.0))); Assert.AreEqual("1.0", (string)(new JValue(1.0m))); Assert.AreEqual("True", (string)(new JValue(true))); Assert.AreEqual(null, (string)(JValue.CreateNull())); Assert.AreEqual(null, (string)(JValue)null); Assert.AreEqual("12/12/2000 12:12:12", (string)(new JValue(new DateTime(2000, 12, 12, 12, 12, 12, DateTimeKind.Utc)))); #if !NET20 Assert.AreEqual("12/12/2000 12:12:12 +00:00", (string)(new JValue(new DateTimeOffset(2000, 12, 12, 12, 12, 12, TimeSpan.Zero)))); #endif Assert.AreEqual(true, (bool)(new JValue(1))); Assert.AreEqual(true, (bool)(new JValue(1.0))); Assert.AreEqual(true, (bool)(new JValue("true"))); Assert.AreEqual(true, (bool)(new JValue(true))); Assert.AreEqual(1, (int)(new JValue(1))); Assert.AreEqual(1, (int)(new JValue(1.0))); Assert.AreEqual(1, (int)(new JValue("1"))); Assert.AreEqual(1, (int)(new JValue(true))); Assert.AreEqual(1m, (decimal)(new JValue(1))); Assert.AreEqual(1m, (decimal)(new JValue(1.0))); Assert.AreEqual(1m, (decimal)(new JValue("1"))); Assert.AreEqual(1m, (decimal)(new JValue(true))); Assert.AreEqual(TimeSpan.FromMinutes(1), (TimeSpan)(new JValue(TimeSpan.FromMinutes(1)))); Assert.AreEqual("00:01:00", (string)(new JValue(TimeSpan.FromMinutes(1)))); Assert.AreEqual(TimeSpan.FromMinutes(1), (TimeSpan)(new JValue("00:01:00"))); Assert.AreEqual("46efe013-b56a-4e83-99e4-4dce7678a5bc", (string)(new JValue(new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC")))); Assert.AreEqual("http://www.google.com/", (string)(new JValue(new Uri("http://www.google.com")))); Assert.AreEqual(new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC"), (Guid)(new JValue("46EFE013-B56A-4E83-99E4-4DCE7678A5BC"))); Assert.AreEqual(new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC"), (Guid)(new JValue(new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC")))); Assert.AreEqual(new Uri("http://www.google.com"), (Uri)(new JValue("http://www.google.com"))); Assert.AreEqual(new Uri("http://www.google.com"), (Uri)(new JValue(new Uri("http://www.google.com")))); Assert.AreEqual(null, (Uri)(JValue.CreateNull())); Assert.AreEqual(Convert.ToBase64String(Encoding.UTF8.GetBytes("hi")), (string)(new JValue(Encoding.UTF8.GetBytes("hi")))); CollectionAssert.AreEquivalent((byte[])Encoding.UTF8.GetBytes("hi"), (byte[])(new JValue(Convert.ToBase64String(Encoding.UTF8.GetBytes("hi"))))); Assert.AreEqual(new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC"), (Guid)(new JValue(new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC").ToByteArray()))); Assert.AreEqual(new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC"), (Guid?)(new JValue(new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC").ToByteArray()))); Assert.AreEqual((sbyte?)1, (sbyte?)(new JValue((short?)1))); Assert.AreEqual(null, (Uri)(JValue)null); Assert.AreEqual(null, (int?)(JValue)null); Assert.AreEqual(null, (uint?)(JValue)null); Assert.AreEqual(null, (Guid?)(JValue)null); Assert.AreEqual(null, (TimeSpan?)(JValue)null); Assert.AreEqual(null, (byte[])(JValue)null); Assert.AreEqual(null, (bool?)(JValue)null); Assert.AreEqual(null, (char?)(JValue)null); Assert.AreEqual(null, (DateTime?)(JValue)null); #if !NET20 Assert.AreEqual(null, (DateTimeOffset?)(JValue)null); #endif Assert.AreEqual(null, (short?)(JValue)null); Assert.AreEqual(null, (ushort?)(JValue)null); Assert.AreEqual(null, (byte?)(JValue)null); Assert.AreEqual(null, (byte?)(JValue)null); Assert.AreEqual(null, (sbyte?)(JValue)null); Assert.AreEqual(null, (sbyte?)(JValue)null); Assert.AreEqual(null, (long?)(JValue)null); Assert.AreEqual(null, (ulong?)(JValue)null); Assert.AreEqual(null, (double?)(JValue)null); Assert.AreEqual(null, (float?)(JValue)null); byte[] data = new byte[0]; Assert.AreEqual(data, (byte[])(new JValue(data))); Assert.AreEqual(5, (int)(new JValue(StringComparison.OrdinalIgnoreCase))); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) string bigIntegerText = "1234567899999999999999999999999999999999999999999999999999999999999990"; Assert.AreEqual(BigInteger.Parse(bigIntegerText), (new JValue(BigInteger.Parse(bigIntegerText))).Value); Assert.AreEqual(BigInteger.Parse(bigIntegerText), (new JValue(bigIntegerText)).ToObject()); Assert.AreEqual(new BigInteger(long.MaxValue), (new JValue(long.MaxValue)).ToObject()); Assert.AreEqual(new BigInteger(4.5d), (new JValue((4.5d))).ToObject()); Assert.AreEqual(new BigInteger(4.5f), (new JValue((4.5f))).ToObject()); Assert.AreEqual(new BigInteger(byte.MaxValue), (new JValue(byte.MaxValue)).ToObject()); Assert.AreEqual(new BigInteger(123), (new JValue(123)).ToObject()); Assert.AreEqual(new BigInteger(123), (new JValue(123)).ToObject()); Assert.AreEqual(null, (JValue.CreateNull()).ToObject()); byte[] intData = BigInteger.Parse(bigIntegerText).ToByteArray(); Assert.AreEqual(BigInteger.Parse(bigIntegerText), (new JValue(intData)).ToObject()); Assert.AreEqual(4.0d, (double)(new JValue(new BigInteger(4.5d)))); Assert.AreEqual(true, (bool)(new JValue(new BigInteger(1)))); Assert.AreEqual(long.MaxValue, (long)(new JValue(new BigInteger(long.MaxValue)))); Assert.AreEqual(long.MaxValue, (long)(new JValue(new BigInteger(new byte[] { 255, 255, 255, 255, 255, 255, 255, 127 })))); Assert.AreEqual("9223372036854775807", (string)(new JValue(new BigInteger(long.MaxValue)))); intData = (byte[])(new JValue(new BigInteger(long.MaxValue))); CollectionAssert.AreEqual(new byte[] { 255, 255, 255, 255, 255, 255, 255, 127 }, intData); #endif } [Test] public void FailedCasting() { ExceptionAssert.Throws(() => { var i = (DateTime)new JValue(true); }, "Can not convert Boolean to DateTime."); ExceptionAssert.Throws(() => { var i = (DateTime)new JValue(1); }, "Can not convert Integer to DateTime."); ExceptionAssert.Throws(() => { var i = (DateTime)new JValue(1.1); }, "Can not convert Float to DateTime."); ExceptionAssert.Throws(() => { var i = (DateTime)new JValue(1.1m); }, "Can not convert Float to DateTime."); ExceptionAssert.Throws(() => { var i = (DateTime)new JValue(TimeSpan.Zero); }, "Can not convert TimeSpan to DateTime."); ExceptionAssert.Throws(() => { var i = (DateTime)new JValue(new Uri("http://www.google.com")); }, "Can not convert Uri to DateTime."); ExceptionAssert.Throws(() => { var i = (DateTime)JValue.CreateNull(); }, "Can not convert Null to DateTime."); ExceptionAssert.Throws(() => { var i = (DateTime)new JValue(Guid.NewGuid()); }, "Can not convert Guid to DateTime."); ExceptionAssert.Throws(() => { var i = (Uri)new JValue(true); }, "Can not convert Boolean to Uri."); ExceptionAssert.Throws(() => { var i = (Uri)new JValue(1); }, "Can not convert Integer to Uri."); ExceptionAssert.Throws(() => { var i = (Uri)new JValue(1.1); }, "Can not convert Float to Uri."); ExceptionAssert.Throws(() => { var i = (Uri)new JValue(1.1m); }, "Can not convert Float to Uri."); ExceptionAssert.Throws(() => { var i = (Uri)new JValue(TimeSpan.Zero); }, "Can not convert TimeSpan to Uri."); ExceptionAssert.Throws(() => { var i = (Uri)new JValue(Guid.NewGuid()); }, "Can not convert Guid to Uri."); ExceptionAssert.Throws(() => { var i = (Uri)new JValue(DateTime.Now); }, "Can not convert Date to Uri."); #if !NET20 ExceptionAssert.Throws(() => { var i = (Uri)new JValue(DateTimeOffset.Now); }, "Can not convert Date to Uri."); #endif ExceptionAssert.Throws(() => { var i = (TimeSpan)new JValue(true); }, "Can not convert Boolean to TimeSpan."); ExceptionAssert.Throws(() => { var i = (TimeSpan)new JValue(1); }, "Can not convert Integer to TimeSpan."); ExceptionAssert.Throws(() => { var i = (TimeSpan)new JValue(1.1); }, "Can not convert Float to TimeSpan."); ExceptionAssert.Throws(() => { var i = (TimeSpan)new JValue(1.1m); }, "Can not convert Float to TimeSpan."); ExceptionAssert.Throws(() => { var i = (TimeSpan)JValue.CreateNull(); }, "Can not convert Null to TimeSpan."); ExceptionAssert.Throws(() => { var i = (TimeSpan)new JValue(Guid.NewGuid()); }, "Can not convert Guid to TimeSpan."); ExceptionAssert.Throws(() => { var i = (TimeSpan)new JValue(DateTime.Now); }, "Can not convert Date to TimeSpan."); #if !NET20 ExceptionAssert.Throws(() => { var i = (TimeSpan)new JValue(DateTimeOffset.Now); }, "Can not convert Date to TimeSpan."); #endif ExceptionAssert.Throws(() => { var i = (TimeSpan)new JValue(new Uri("http://www.google.com")); }, "Can not convert Uri to TimeSpan."); ExceptionAssert.Throws(() => { var i = (Guid)new JValue(true); }, "Can not convert Boolean to Guid."); ExceptionAssert.Throws(() => { var i = (Guid)new JValue(1); }, "Can not convert Integer to Guid."); ExceptionAssert.Throws(() => { var i = (Guid)new JValue(1.1); }, "Can not convert Float to Guid."); ExceptionAssert.Throws(() => { var i = (Guid)new JValue(1.1m); }, "Can not convert Float to Guid."); ExceptionAssert.Throws(() => { var i = (Guid)JValue.CreateNull(); }, "Can not convert Null to Guid."); ExceptionAssert.Throws(() => { var i = (Guid)new JValue(DateTime.Now); }, "Can not convert Date to Guid."); #if !NET20 ExceptionAssert.Throws(() => { var i = (Guid)new JValue(DateTimeOffset.Now); }, "Can not convert Date to Guid."); #endif ExceptionAssert.Throws(() => { var i = (Guid)new JValue(TimeSpan.FromMinutes(1)); }, "Can not convert TimeSpan to Guid."); ExceptionAssert.Throws(() => { var i = (Guid)new JValue(new Uri("http://www.google.com")); }, "Can not convert Uri to Guid."); #if !NET20 ExceptionAssert.Throws(() => { var i = (DateTimeOffset)new JValue(true); }, "Can not convert Boolean to DateTimeOffset."); #endif ExceptionAssert.Throws(() => { var i = (Uri)new JValue(true); }, "Can not convert Boolean to Uri."); #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) ExceptionAssert.Throws(() => { var i = (new JValue(new Uri("http://www.google.com"))).ToObject(); }, "Can not convert Uri to BigInteger."); ExceptionAssert.Throws(() => { var i = (JValue.CreateNull()).ToObject(); }, "Can not convert Null to BigInteger."); ExceptionAssert.Throws(() => { var i = (new JValue(Guid.NewGuid())).ToObject(); }, "Can not convert Guid to BigInteger."); ExceptionAssert.Throws(() => { var i = (new JValue(Guid.NewGuid())).ToObject(); }, "Can not convert Guid to BigInteger."); #endif ExceptionAssert.Throws(() => { var i = (sbyte?)new JValue(DateTime.Now); }, "Can not convert Date to SByte."); ExceptionAssert.Throws(() => { var i = (sbyte)new JValue(DateTime.Now); }, "Can not convert Date to SByte."); ExceptionAssert.Throws(() => { var i = (new JValue("Ordinal1")).ToObject(); }, "Could not convert 'Ordinal1' to StringComparison."); ExceptionAssert.Throws(() => { var i = (new JValue("Ordinal1")).ToObject(); }, "Could not convert 'Ordinal1' to StringComparison."); } [Test] public void ToObject() { #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50) Assert.AreEqual((BigInteger)1, (new JValue(1).ToObject(typeof(BigInteger)))); Assert.AreEqual((BigInteger)1, (new JValue(1).ToObject(typeof(BigInteger?)))); Assert.AreEqual((BigInteger?)null, (JValue.CreateNull().ToObject(typeof(BigInteger?)))); #endif Assert.AreEqual((ushort)1, (new JValue(1).ToObject(typeof(ushort)))); Assert.AreEqual((ushort)1, (new JValue(1).ToObject(typeof(ushort?)))); Assert.AreEqual((uint)1L, (new JValue(1).ToObject(typeof(uint)))); Assert.AreEqual((uint)1L, (new JValue(1).ToObject(typeof(uint?)))); Assert.AreEqual((ulong)1L, (new JValue(1).ToObject(typeof(ulong)))); Assert.AreEqual((ulong)1L, (new JValue(1).ToObject(typeof(ulong?)))); Assert.AreEqual((sbyte)1L, (new JValue(1).ToObject(typeof(sbyte)))); Assert.AreEqual((sbyte)1L, (new JValue(1).ToObject(typeof(sbyte?)))); Assert.AreEqual((byte)1L, (new JValue(1).ToObject(typeof(byte)))); Assert.AreEqual((byte)1L, (new JValue(1).ToObject(typeof(byte?)))); Assert.AreEqual((short)1L, (new JValue(1).ToObject(typeof(short)))); Assert.AreEqual((short)1L, (new JValue(1).ToObject(typeof(short?)))); Assert.AreEqual(1, (new JValue(1).ToObject(typeof(int)))); Assert.AreEqual(1, (new JValue(1).ToObject(typeof(int?)))); Assert.AreEqual(1L, (new JValue(1).ToObject(typeof(long)))); Assert.AreEqual(1L, (new JValue(1).ToObject(typeof(long?)))); Assert.AreEqual((float)1, (new JValue(1.0).ToObject(typeof(float)))); Assert.AreEqual((float)1, (new JValue(1.0).ToObject(typeof(float?)))); Assert.AreEqual((double)1, (new JValue(1.0).ToObject(typeof(double)))); Assert.AreEqual((double)1, (new JValue(1.0).ToObject(typeof(double?)))); Assert.AreEqual(1m, (new JValue(1).ToObject(typeof(decimal)))); Assert.AreEqual(1m, (new JValue(1).ToObject(typeof(decimal?)))); Assert.AreEqual(true, (new JValue(true).ToObject(typeof(bool)))); Assert.AreEqual(true, (new JValue(true).ToObject(typeof(bool?)))); Assert.AreEqual('b', (new JValue('b').ToObject(typeof(char)))); Assert.AreEqual('b', (new JValue('b').ToObject(typeof(char?)))); Assert.AreEqual(TimeSpan.MaxValue, (new JValue(TimeSpan.MaxValue).ToObject(typeof(TimeSpan)))); Assert.AreEqual(TimeSpan.MaxValue, (new JValue(TimeSpan.MaxValue).ToObject(typeof(TimeSpan?)))); Assert.AreEqual(DateTime.MaxValue, (new JValue(DateTime.MaxValue).ToObject(typeof(DateTime)))); Assert.AreEqual(DateTime.MaxValue, (new JValue(DateTime.MaxValue).ToObject(typeof(DateTime?)))); #if !NET20 Assert.AreEqual(DateTimeOffset.MaxValue, (new JValue(DateTimeOffset.MaxValue).ToObject(typeof(DateTimeOffset)))); Assert.AreEqual(DateTimeOffset.MaxValue, (new JValue(DateTimeOffset.MaxValue).ToObject(typeof(DateTimeOffset?)))); #endif Assert.AreEqual("b", (new JValue("b").ToObject(typeof(string)))); Assert.AreEqual(new Guid("A34B2080-B5F0-488E-834D-45D44ECB9E5C"), (new JValue(new Guid("A34B2080-B5F0-488E-834D-45D44ECB9E5C")).ToObject(typeof(Guid)))); Assert.AreEqual(new Guid("A34B2080-B5F0-488E-834D-45D44ECB9E5C"), (new JValue(new Guid("A34B2080-B5F0-488E-834D-45D44ECB9E5C")).ToObject(typeof(Guid?)))); Assert.AreEqual(new Uri("http://www.google.com/"), (new JValue(new Uri("http://www.google.com/")).ToObject(typeof(Uri)))); Assert.AreEqual(StringComparison.Ordinal, (new JValue("Ordinal").ToObject(typeof(StringComparison)))); Assert.AreEqual(StringComparison.Ordinal, (new JValue("Ordinal").ToObject(typeof(StringComparison?)))); Assert.AreEqual(null, (JValue.CreateNull().ToObject(typeof(StringComparison?)))); } [Test] public void ImplicitCastingTo() { Assert.IsTrue(JToken.DeepEquals(new JValue(new DateTime(2000, 12, 20)), (JValue)new DateTime(2000, 12, 20))); #if !NET20 Assert.IsTrue(JToken.DeepEquals(new JValue(new DateTimeOffset(2000, 12, 20, 23, 50, 10, TimeSpan.Zero)), (JValue)new DateTimeOffset(2000, 12, 20, 23, 50, 10, TimeSpan.Zero))); Assert.IsTrue(JToken.DeepEquals(new JValue((DateTimeOffset?)null), (JValue)(DateTimeOffset?)null)); #endif #if !(NET20 || NET35 || PORTABLE || ASPNETCORE50 || PORTABLE40) // had to remove implicit casting to avoid user reference to System.Numerics.dll Assert.IsTrue(JToken.DeepEquals(new JValue(new BigInteger(1)), new JValue(new BigInteger(1)))); Assert.IsTrue(JToken.DeepEquals(new JValue((BigInteger?)null), new JValue((BigInteger?)null))); #endif Assert.IsTrue(JToken.DeepEquals(new JValue(true), (JValue)true)); Assert.IsTrue(JToken.DeepEquals(new JValue(true), (JValue)true)); Assert.IsTrue(JToken.DeepEquals(new JValue(true), (JValue)(bool?)true)); Assert.IsTrue(JToken.DeepEquals(new JValue((bool?)null), (JValue)(bool?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue(10), (JValue)10)); Assert.IsTrue(JToken.DeepEquals(new JValue((long?)null), (JValue)(long?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((DateTime?)null), (JValue)(DateTime?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue(long.MaxValue), (JValue)long.MaxValue)); Assert.IsTrue(JToken.DeepEquals(new JValue((int?)null), (JValue)(int?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((short?)null), (JValue)(short?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((double?)null), (JValue)(double?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((uint?)null), (JValue)(uint?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((decimal?)null), (JValue)(decimal?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((ulong?)null), (JValue)(ulong?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((sbyte?)null), (JValue)(sbyte?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((sbyte)1), (JValue)(sbyte)1)); Assert.IsTrue(JToken.DeepEquals(new JValue((byte?)null), (JValue)(byte?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((byte)1), (JValue)(byte)1)); Assert.IsTrue(JToken.DeepEquals(new JValue((ushort?)null), (JValue)(ushort?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue(short.MaxValue), (JValue)short.MaxValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(ushort.MaxValue), (JValue)ushort.MaxValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(11.1f), (JValue)11.1f)); Assert.IsTrue(JToken.DeepEquals(new JValue(float.MinValue), (JValue)float.MinValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(double.MinValue), (JValue)double.MinValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(uint.MaxValue), (JValue)uint.MaxValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(ulong.MaxValue), (JValue)ulong.MaxValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(ulong.MinValue), (JValue)ulong.MinValue)); Assert.IsTrue(JToken.DeepEquals(new JValue((string)null), (JValue)(string)null)); Assert.IsTrue(JToken.DeepEquals(new JValue((DateTime?)null), (JValue)(DateTime?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue(decimal.MaxValue), (JValue)decimal.MaxValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(decimal.MaxValue), (JValue)(decimal?)decimal.MaxValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(decimal.MinValue), (JValue)decimal.MinValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(float.MaxValue), (JValue)(float?)float.MaxValue)); Assert.IsTrue(JToken.DeepEquals(new JValue(double.MaxValue), (JValue)(double?)double.MaxValue)); Assert.IsTrue(JToken.DeepEquals(JValue.CreateNull(), (JValue)(double?)null)); Assert.IsFalse(JToken.DeepEquals(new JValue(true), (JValue)(bool?)null)); Assert.IsFalse(JToken.DeepEquals(JValue.CreateNull(), (JValue)(object)null)); byte[] emptyData = new byte[0]; Assert.IsTrue(JToken.DeepEquals(new JValue(emptyData), (JValue)emptyData)); Assert.IsFalse(JToken.DeepEquals(new JValue(emptyData), (JValue)new byte[1])); Assert.IsTrue(JToken.DeepEquals(new JValue(Encoding.UTF8.GetBytes("Hi")), (JValue)Encoding.UTF8.GetBytes("Hi"))); Assert.IsTrue(JToken.DeepEquals(new JValue(TimeSpan.FromMinutes(1)), (JValue)TimeSpan.FromMinutes(1))); Assert.IsTrue(JToken.DeepEquals(JValue.CreateNull(), (JValue)(TimeSpan?)null)); Assert.IsTrue(JToken.DeepEquals(new JValue(TimeSpan.FromMinutes(1)), (JValue)(TimeSpan?)TimeSpan.FromMinutes(1))); Assert.IsTrue(JToken.DeepEquals(new JValue(new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC")), (JValue)new Guid("46EFE013-B56A-4E83-99E4-4DCE7678A5BC"))); Assert.IsTrue(JToken.DeepEquals(new JValue(new Uri("http://www.google.com")), (JValue)new Uri("http://www.google.com"))); Assert.IsTrue(JToken.DeepEquals(JValue.CreateNull(), (JValue)(Uri)null)); Assert.IsTrue(JToken.DeepEquals(JValue.CreateNull(), (JValue)(Guid?)null)); } [Test] public void Root() { JArray a = new JArray( 5, 6, new JArray(7, 8), new JArray(9, 10) ); Assert.AreEqual(a, a.Root); Assert.AreEqual(a, a[0].Root); Assert.AreEqual(a, ((JArray)a[2])[0].Root); } [Test] public void Remove() { JToken t; JArray a = new JArray( 5, 6, new JArray(7, 8), new JArray(9, 10) ); a[0].Remove(); Assert.AreEqual(6, (int)a[0]); a[1].Remove(); Assert.AreEqual(6, (int)a[0]); Assert.IsTrue(JToken.DeepEquals(new JArray(9, 10), a[1])); Assert.AreEqual(2, a.Count()); t = a[1]; t.Remove(); Assert.AreEqual(6, (int)a[0]); Assert.IsNull(t.Next); Assert.IsNull(t.Previous); Assert.IsNull(t.Parent); t = a[0]; t.Remove(); Assert.AreEqual(0, a.Count()); Assert.IsNull(t.Next); Assert.IsNull(t.Previous); Assert.IsNull(t.Parent); } [Test] public void AfterSelf() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JToken t = a[1]; List afterTokens = t.AfterSelf().ToList(); Assert.AreEqual(2, afterTokens.Count); Assert.IsTrue(JToken.DeepEquals(new JArray(1, 2), afterTokens[0])); Assert.IsTrue(JToken.DeepEquals(new JArray(1, 2, 3), afterTokens[1])); } [Test] public void BeforeSelf() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JToken t = a[2]; List beforeTokens = t.BeforeSelf().ToList(); Assert.AreEqual(2, beforeTokens.Count); Assert.IsTrue(JToken.DeepEquals(new JValue(5), beforeTokens[0])); Assert.IsTrue(JToken.DeepEquals(new JArray(1), beforeTokens[1])); } [Test] public void HasValues() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); Assert.IsTrue(a.HasValues); } [Test] public void Ancestors() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JToken t = a[1][0]; List ancestors = t.Ancestors().ToList(); Assert.AreEqual(2, ancestors.Count()); Assert.AreEqual(a[1], ancestors[0]); Assert.AreEqual(a, ancestors[1]); } [Test] public void AncestorsAndSelf() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JToken t = a[1][0]; List ancestors = t.AncestorsAndSelf().ToList(); Assert.AreEqual(3, ancestors.Count()); Assert.AreEqual(t, ancestors[0]); Assert.AreEqual(a[1], ancestors[1]); Assert.AreEqual(a, ancestors[2]); } [Test] public void AncestorsAndSelf_Many() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JObject o = new JObject { {"prop1", "value1"} }; JToken t1 = a[1][0]; JToken t2 = o["prop1"]; List source = new List {t1, t2}; List ancestors = source.AncestorsAndSelf().ToList(); Assert.AreEqual(6, ancestors.Count()); Assert.AreEqual(t1, ancestors[0]); Assert.AreEqual(a[1], ancestors[1]); Assert.AreEqual(a, ancestors[2]); Assert.AreEqual(t2, ancestors[3]); Assert.AreEqual(o.Property("prop1"), ancestors[4]); Assert.AreEqual(o, ancestors[5]); } [Test] public void Ancestors_Many() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JObject o = new JObject { {"prop1", "value1"} }; JToken t1 = a[1][0]; JToken t2 = o["prop1"]; List source = new List { t1, t2 }; List ancestors = source.Ancestors().ToList(); Assert.AreEqual(4, ancestors.Count()); Assert.AreEqual(a[1], ancestors[0]); Assert.AreEqual(a, ancestors[1]); Assert.AreEqual(o.Property("prop1"), ancestors[2]); Assert.AreEqual(o, ancestors[3]); } [Test] public void Descendants() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); List descendants = a.Descendants().ToList(); Assert.AreEqual(10, descendants.Count()); Assert.AreEqual(5, (int)descendants[0]); Assert.IsTrue(JToken.DeepEquals(new JArray(1, 2, 3), descendants[descendants.Count - 4])); Assert.AreEqual(1, (int)descendants[descendants.Count - 3]); Assert.AreEqual(2, (int)descendants[descendants.Count - 2]); Assert.AreEqual(3, (int)descendants[descendants.Count - 1]); } [Test] public void Descendants_Many() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JObject o = new JObject { {"prop1", "value1"} }; List source = new List { a, o }; List descendants = source.Descendants().ToList(); Assert.AreEqual(12, descendants.Count()); Assert.AreEqual(5, (int)descendants[0]); Assert.IsTrue(JToken.DeepEquals(new JArray(1, 2, 3), descendants[descendants.Count - 6])); Assert.AreEqual(1, (int)descendants[descendants.Count - 5]); Assert.AreEqual(2, (int)descendants[descendants.Count - 4]); Assert.AreEqual(3, (int)descendants[descendants.Count - 3]); Assert.AreEqual(o.Property("prop1"), descendants[descendants.Count - 2]); Assert.AreEqual(o["prop1"], descendants[descendants.Count - 1]); } [Test] public void DescendantsAndSelf() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); List descendantsAndSelf = a.DescendantsAndSelf().ToList(); Assert.AreEqual(11, descendantsAndSelf.Count()); Assert.AreEqual(a, descendantsAndSelf[0]); Assert.AreEqual(5, (int)descendantsAndSelf[1]); Assert.IsTrue(JToken.DeepEquals(new JArray(1, 2, 3), descendantsAndSelf[descendantsAndSelf.Count - 4])); Assert.AreEqual(1, (int)descendantsAndSelf[descendantsAndSelf.Count - 3]); Assert.AreEqual(2, (int)descendantsAndSelf[descendantsAndSelf.Count - 2]); Assert.AreEqual(3, (int)descendantsAndSelf[descendantsAndSelf.Count - 1]); } [Test] public void DescendantsAndSelf_Many() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JObject o = new JObject { {"prop1", "value1"} }; List source = new List { a, o }; List descendantsAndSelf = source.DescendantsAndSelf().ToList(); Assert.AreEqual(14, descendantsAndSelf.Count()); Assert.AreEqual(a, descendantsAndSelf[0]); Assert.AreEqual(5, (int)descendantsAndSelf[1]); Assert.IsTrue(JToken.DeepEquals(new JArray(1, 2, 3), descendantsAndSelf[descendantsAndSelf.Count - 7])); Assert.AreEqual(1, (int)descendantsAndSelf[descendantsAndSelf.Count - 6]); Assert.AreEqual(2, (int)descendantsAndSelf[descendantsAndSelf.Count - 5]); Assert.AreEqual(3, (int)descendantsAndSelf[descendantsAndSelf.Count - 4]); Assert.AreEqual(o, descendantsAndSelf[descendantsAndSelf.Count - 3]); Assert.AreEqual(o.Property("prop1"), descendantsAndSelf[descendantsAndSelf.Count - 2]); Assert.AreEqual(o["prop1"], descendantsAndSelf[descendantsAndSelf.Count - 1]); } [Test] public void CreateWriter() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JsonWriter writer = a.CreateWriter(); Assert.IsNotNull(writer); Assert.AreEqual(4, a.Count()); writer.WriteValue("String"); Assert.AreEqual(5, a.Count()); Assert.AreEqual("String", (string)a[4]); writer.WriteStartObject(); writer.WritePropertyName("Property"); writer.WriteValue("PropertyValue"); writer.WriteEnd(); Assert.AreEqual(6, a.Count()); Assert.IsTrue(JToken.DeepEquals(new JObject(new JProperty("Property", "PropertyValue")), a[5])); } [Test] public void AddFirst() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); a.AddFirst("First"); Assert.AreEqual("First", (string)a[0]); Assert.AreEqual(a, a[0].Parent); Assert.AreEqual(a[1], a[0].Next); Assert.AreEqual(5, a.Count()); a.AddFirst("NewFirst"); Assert.AreEqual("NewFirst", (string)a[0]); Assert.AreEqual(a, a[0].Parent); Assert.AreEqual(a[1], a[0].Next); Assert.AreEqual(6, a.Count()); Assert.AreEqual(a[0], a[0].Next.Previous); } [Test] public void RemoveAll() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); JToken first = a.First; Assert.AreEqual(5, (int)first); a.RemoveAll(); Assert.AreEqual(0, a.Count()); Assert.IsNull(first.Parent); Assert.IsNull(first.Next); } [Test] public void AddPropertyToArray() { ExceptionAssert.Throws(() => { JArray a = new JArray(); a.Add(new JProperty("PropertyName")); }, "Can not add Newtonsoft.Json.Linq.JProperty to Newtonsoft.Json.Linq.JArray."); } [Test] public void AddValueToObject() { ExceptionAssert.Throws(() => { JObject o = new JObject(); o.Add(5); }, "Can not add Newtonsoft.Json.Linq.JValue to Newtonsoft.Json.Linq.JObject."); } [Test] public void Replace() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); a[0].Replace(new JValue(int.MaxValue)); Assert.AreEqual(int.MaxValue, (int)a[0]); Assert.AreEqual(4, a.Count()); a[1][0].Replace(new JValue("Test")); Assert.AreEqual("Test", (string)a[1][0]); a[2].Replace(new JValue(int.MaxValue)); Assert.AreEqual(int.MaxValue, (int)a[2]); Assert.AreEqual(4, a.Count()); Assert.IsTrue(JToken.DeepEquals(new JArray(int.MaxValue, new JArray("Test"), int.MaxValue, new JArray(1, 2, 3)), a)); } [Test] public void ToStringWithConverters() { JArray a = new JArray( new JValue(new DateTime(2009, 2, 15, 0, 0, 0, DateTimeKind.Utc)) ); string json = a.ToString(Formatting.Indented, new IsoDateTimeConverter()); StringAssert.AreEqual(@"[ ""2009-02-15T00:00:00Z"" ]", json); json = JsonConvert.SerializeObject(a, new IsoDateTimeConverter()); Assert.AreEqual(@"[""2009-02-15T00:00:00Z""]", json); } [Test] public void ToStringWithNoIndenting() { JArray a = new JArray( new JValue(new DateTime(2009, 2, 15, 0, 0, 0, DateTimeKind.Utc)) ); string json = a.ToString(Formatting.None, new IsoDateTimeConverter()); Assert.AreEqual(@"[""2009-02-15T00:00:00Z""]", json); } [Test] public void AddAfterSelf() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); a[1].AddAfterSelf("pie"); Assert.AreEqual(5, (int)a[0]); Assert.AreEqual(1, a[1].Count()); Assert.AreEqual("pie", (string)a[2]); Assert.AreEqual(5, a.Count()); a[4].AddAfterSelf("lastpie"); Assert.AreEqual("lastpie", (string)a[5]); Assert.AreEqual("lastpie", (string)a.Last); } [Test] public void AddBeforeSelf() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3) ); a[1].AddBeforeSelf("pie"); Assert.AreEqual(5, (int)a[0]); Assert.AreEqual("pie", (string)a[1]); Assert.AreEqual(a, a[1].Parent); Assert.AreEqual(a[2], a[1].Next); Assert.AreEqual(5, a.Count()); a[0].AddBeforeSelf("firstpie"); Assert.AreEqual("firstpie", (string)a[0]); Assert.AreEqual(5, (int)a[1]); Assert.AreEqual("pie", (string)a[2]); Assert.AreEqual(a, a[0].Parent); Assert.AreEqual(a[1], a[0].Next); Assert.AreEqual(6, a.Count()); a.Last.AddBeforeSelf("secondlastpie"); Assert.AreEqual("secondlastpie", (string)a[5]); Assert.AreEqual(7, a.Count()); } [Test] public void DeepClone() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3), new JObject( new JProperty("First", new JValue(Encoding.UTF8.GetBytes("Hi"))), new JProperty("Second", 1), new JProperty("Third", null), new JProperty("Fourth", new JConstructor("Date", 12345)), new JProperty("Fifth", double.PositiveInfinity), new JProperty("Sixth", double.NaN) ) ); JArray a2 = (JArray)a.DeepClone(); Console.WriteLine(a2.ToString(Formatting.Indented)); Assert.IsTrue(a.DeepEquals(a2)); } #if !(NETFX_CORE || PORTABLE || ASPNETCORE50 || PORTABLE40) [Test] public void Clone() { JArray a = new JArray( 5, new JArray(1), new JArray(1, 2), new JArray(1, 2, 3), new JObject( new JProperty("First", new JValue(Encoding.UTF8.GetBytes("Hi"))), new JProperty("Second", 1), new JProperty("Third", null), new JProperty("Fourth", new JConstructor("Date", 12345)), new JProperty("Fifth", double.PositiveInfinity), new JProperty("Sixth", double.NaN) ) ); ICloneable c = a; JArray a2 = (JArray)c.Clone(); Assert.IsTrue(a.DeepEquals(a2)); } #endif [Test] public void DoubleDeepEquals() { JArray a = new JArray( double.NaN, double.PositiveInfinity, double.NegativeInfinity ); JArray a2 = (JArray)a.DeepClone(); Assert.IsTrue(a.DeepEquals(a2)); double d = 1 + 0.1 + 0.1 + 0.1; JValue v1 = new JValue(d); JValue v2 = new JValue(1.3); Assert.IsTrue(v1.DeepEquals(v2)); } [Test] public void ParseAdditionalContent() { ExceptionAssert.Throws(() => { string json = @"[ ""Small"", ""Medium"", ""Large"" ],"; JToken.Parse(json); }, "Additional text encountered after finished reading JSON content: ,. Path '', line 5, position 2."); } [Test] public void Path() { JObject o = new JObject( new JProperty("Test1", new JArray(1, 2, 3)), new JProperty("Test2", "Test2Value"), new JProperty("Test3", new JObject(new JProperty("Test1", new JArray(1, new JObject(new JProperty("Test1", 1)), 3)))), new JProperty("Test4", new JConstructor("Date", new JArray(1, 2, 3))) ); JToken t = o.SelectToken("Test1[0]"); Assert.AreEqual("Test1[0]", t.Path); t = o.SelectToken("Test2"); Assert.AreEqual("Test2", t.Path); t = o.SelectToken(""); Assert.AreEqual("", t.Path); t = o.SelectToken("Test4[0][0]"); Assert.AreEqual("Test4[0][0]", t.Path); t = o.SelectToken("Test4[0]"); Assert.AreEqual("Test4[0]", t.Path); t = t.DeepClone(); Assert.AreEqual("", t.Path); t = o.SelectToken("Test3.Test1[1].Test1"); Assert.AreEqual("Test3.Test1[1].Test1", t.Path); JArray a = new JArray(1); Assert.AreEqual("", a.Path); Assert.AreEqual("[0]", a[0].Path); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/project.json0000664000175000017500000000415212454416117024702 0ustar directhexdirecthex{ "version": "1.0.0-*", "compilationOptions": { "define": [] }, "exclude":[ "LinqToSql", "Documentation", "FileSystemEntityModel.Designer.cs" ], "dependencies": { "Xunit.KRunner": "1.0.0-*", "Newtonsoft.Json": "6.0.6" }, "commands": { "test": "Xunit.KRunner" }, "frameworks": { "aspnetcore50": { "dependencies": { "Microsoft.CSharp": "4.0.0-beta-*", "System.Collections": "4.0.10-beta-*", "System.ComponentModel.TypeConverter": "4.0.0-beta-*", "System.Diagnostics.Debug": "4.0.10-beta-*", "System.Dynamic.Runtime": "4.0.0-beta-*", "System.Globalization": "4.0.10-beta-*", "System.IO": "4.0.10-beta-*", "System.Linq": "4.0.0-beta-*", "System.Linq.Expressions": "4.0.0-beta-*", "System.Reflection.Extensions": "4.0.0-beta-*", "System.Reflection.TypeExtensions": "4.0.0-beta-*", "System.Runtime": "4.0.20-beta-*", "System.Runtime.Extensions": "4.0.10-beta-*", "System.Runtime.Serialization.Primitives": "4.0.0-beta-*", "System.Runtime.Numerics": "4.0.0-beta-*", "System.Runtime.Serialization.Json": "4.0.0-beta-*", "System.Runtime.Serialization.Xml": "4.0.0-beta-*", "System.Reflection.Emit.ILGeneration": "4.0.0-beta-*", "System.Text.Encoding": "4.0.10-beta-*", "System.Text.RegularExpressions": "4.0.0-beta-*", "System.Text.Encoding.Extensions": "4.0.10-beta-*", "System.Text.Encoding.CodePages": "4.0.0-beta-*", "System.Threading": "4.0.0-beta-*", "System.Xml.XDocument": "4.0.0-beta-*", "System.Xml.XmlDocument": "4.0.0-beta-*", "System.Xml.XmlSerializer": "4.0.0-beta-*", "System.Xml.ReaderWriter": "4.0.10-beta-*", "Microsoft.Bcl.Immutable": "1.1.20-beta" } } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Utilities/0000775000175000017500000000000012454416117024312 5ustar directhexdirecthex././@LongLink0000644000000000000000000000014600000000000011604 Lustar rootrootnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Utilities/ExpressionReflectionDelegateFactoryTests.csnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Utilities/ExpressionReflectionDelegateFactoryTests.c0000664000175000017500000003265312454416117034647 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System.Collections.Generic; #if !(NET20 || NET35) using System.Linq; using System; using System.Diagnostics; using System.Reflection; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Tests.Serialization; namespace Newtonsoft.Json.Tests.Utilities { [TestFixture] public class ExpressionReflectionDelegateFactoryTests : TestFixtureBase { [Test] public void ConstructorWithRefString() { ConstructorInfo constructor = TestReflectionUtils.GetConstructors(typeof(OutAndRefTestClass)).Single(c => c.GetParameters().Count() == 1); var creator = ExpressionReflectionDelegateFactory.Instance.CreateParametrizedConstructor(constructor); object[] args = new object[] { "Input" }; OutAndRefTestClass o = (OutAndRefTestClass)creator(args); Assert.IsNotNull(o); Assert.AreEqual("Input", o.Input); } [Test] public void ConstructorWithRefStringAndOutBool() { ConstructorInfo constructor = TestReflectionUtils.GetConstructors(typeof(OutAndRefTestClass)).Single(c => c.GetParameters().Count() == 2); var creator = ExpressionReflectionDelegateFactory.Instance.CreateParametrizedConstructor(constructor); object[] args = new object[] { "Input", null }; OutAndRefTestClass o = (OutAndRefTestClass)creator(args); Assert.IsNotNull(o); Assert.AreEqual("Input", o.Input); } [Test] public void ConstructorWithRefStringAndRefBoolAndRefBool() { ConstructorInfo constructor = TestReflectionUtils.GetConstructors(typeof(OutAndRefTestClass)).Single(c => c.GetParameters().Count() == 3); var creator = ExpressionReflectionDelegateFactory.Instance.CreateParametrizedConstructor(constructor); object[] args = new object[] { "Input", true, null }; OutAndRefTestClass o = (OutAndRefTestClass)creator(args); Assert.IsNotNull(o); Assert.AreEqual("Input", o.Input); Assert.AreEqual(true, o.B1); Assert.AreEqual(false, o.B2); } [Test] public void DefaultConstructor() { Func create = ExpressionReflectionDelegateFactory.Instance.CreateDefaultConstructor(typeof(Movie)); Movie m = (Movie)create(); Assert.IsNotNull(m); } [Test] public void DefaultConstructor_Struct() { Func create = ExpressionReflectionDelegateFactory.Instance.CreateDefaultConstructor(typeof(StructTest)); StructTest m = (StructTest)create(); Assert.IsNotNull(m); } [Test] public void DefaultConstructor_Abstract() { ExceptionAssert.Throws( () => { Func create = ExpressionReflectionDelegateFactory.Instance.CreateDefaultConstructor(typeof(Type)); create(); }, new [] { "Cannot create an abstract class.", "Cannot create an abstract class 'System.Type'." // mono }); } [Test] public void CreatePropertySetter() { Action setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetProperty(typeof(Movie), "Name")); Movie m = new Movie(); setter(m, "OH HAI!"); Assert.AreEqual("OH HAI!", m.Name); } [Test] public void CreatePropertyGetter() { Func getter = ExpressionReflectionDelegateFactory.Instance.CreateGet(TestReflectionUtils.GetProperty(typeof(Movie), "Name")); Movie m = new Movie(); m.Name = "OH HAI!"; object value = getter(m); Assert.AreEqual("OH HAI!", value); } [Test] public void CreateMethodCall() { MethodCall method = ExpressionReflectionDelegateFactory.Instance.CreateMethodCall(TestReflectionUtils.GetMethod(typeof(Movie), "ToString")); Movie m = new Movie(); object result = method(m); Assert.AreEqual("Newtonsoft.Json.Tests.TestObjects.Movie", result); method = ExpressionReflectionDelegateFactory.Instance.CreateMethodCall(TestReflectionUtils.GetMethod(typeof(Movie), "Equals")); result = method(m, m); Assert.AreEqual(true, result); } [Test] public void CreateMethodCall_Constructor() { MethodCall method = ExpressionReflectionDelegateFactory.Instance.CreateMethodCall(typeof(Movie).GetConstructor(new Type[0])); object result = method(null); Assert.IsTrue(result is Movie); } public static class StaticTestClass { public static string StringField; public static string StringProperty { get; set; } } [Test] public void GetStatic() { StaticTestClass.StringField = "Field!"; StaticTestClass.StringProperty = "Property!"; Func getter = ExpressionReflectionDelegateFactory.Instance.CreateGet(TestReflectionUtils.GetProperty(typeof(StaticTestClass), "StringProperty")); object v = getter(null); Assert.AreEqual(StaticTestClass.StringProperty, v); getter = ExpressionReflectionDelegateFactory.Instance.CreateGet(TestReflectionUtils.GetField(typeof(StaticTestClass), "StringField")); v = getter(null); Assert.AreEqual(StaticTestClass.StringField, v); } [Test] public void SetStatic() { Action setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetProperty(typeof(StaticTestClass), "StringProperty")); setter(null, "New property!"); Assert.AreEqual("New property!", StaticTestClass.StringProperty); setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetField(typeof(StaticTestClass), "StringField")); setter(null, "New field!"); Assert.AreEqual("New field!", StaticTestClass.StringField); } public class FieldsTestClass { public string StringField; public bool BoolField; public readonly int IntReadOnlyField = int.MaxValue; } [Test] public void CreateGetField() { FieldsTestClass c = new FieldsTestClass { BoolField = true, StringField = "String!" }; Func getter = ExpressionReflectionDelegateFactory.Instance.CreateGet(TestReflectionUtils.GetField(typeof(FieldsTestClass), "StringField")); object value = getter(c); Assert.AreEqual("String!", value); getter = ExpressionReflectionDelegateFactory.Instance.CreateGet(TestReflectionUtils.GetField(typeof(FieldsTestClass), "BoolField")); value = getter(c); Assert.AreEqual(true, value); } [Test] public void CreateSetField_ReadOnly() { FieldsTestClass c = new FieldsTestClass(); Action setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetField(typeof(FieldsTestClass), "IntReadOnlyField")); setter(c, int.MinValue); Assert.AreEqual(int.MinValue, c.IntReadOnlyField); } [Test] public void CreateSetField() { FieldsTestClass c = new FieldsTestClass(); Action setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetField(typeof(FieldsTestClass), "StringField")); setter(c, "String!"); Assert.AreEqual("String!", c.StringField); setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetField(typeof(FieldsTestClass), "BoolField")); setter(c, true); Assert.AreEqual(true, c.BoolField); } [Test] public void SetOnStruct() { object structTest = new StructTest(); Action setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetProperty(typeof(StructTest), "StringProperty")); setter(structTest, "Hi1"); Assert.AreEqual("Hi1", ((StructTest)structTest).StringProperty); setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetField(typeof(StructTest), "StringField")); setter(structTest, "Hi2"); Assert.AreEqual("Hi2", ((StructTest)structTest).StringField); } [Test] public void CreateGetWithBadObjectTarget() { ExceptionAssert.Throws( () => { Person p = new Person(); p.Name = "Hi"; Func setter = ExpressionReflectionDelegateFactory.Instance.CreateGet(TestReflectionUtils.GetProperty(typeof(Movie), "Name")); setter(p); }, new [] { "Unable to cast object of type 'Newtonsoft.Json.Tests.TestObjects.Person' to type 'Newtonsoft.Json.Tests.TestObjects.Movie'.", "Cannot cast from source type to destination type." // mono }); } [Test] public void CreateSetWithBadObjectTarget() { ExceptionAssert.Throws( () => { Person p = new Person(); Movie m = new Movie(); Action setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetProperty(typeof(Movie), "Name")); setter(m, "Hi"); Assert.AreEqual(m.Name, "Hi"); setter(p, "Hi"); Assert.AreEqual(p.Name, "Hi"); }, new [] { "Unable to cast object of type 'Newtonsoft.Json.Tests.TestObjects.Person' to type 'Newtonsoft.Json.Tests.TestObjects.Movie'.", "Cannot cast from source type to destination type." // mono }); } [Test] public void CreateSetWithBadObjectValue() { ExceptionAssert.Throws( () => { Movie m = new Movie(); Action setter = ExpressionReflectionDelegateFactory.Instance.CreateSet(TestReflectionUtils.GetProperty(typeof(Movie), "Name")); setter(m, new Version("1.1.1.1")); }, new [] { "Unable to cast object of type 'System.Version' to type 'System.String'.", "Cannot cast from source type to destination type." //mono }); } [Test] public void CreateStaticMethodCall() { MethodInfo castMethodInfo = typeof(JsonSerializerTest.DictionaryKey).GetMethod("op_Implicit", new[] { typeof(string) }); Assert.IsNotNull(castMethodInfo); MethodCall call = ExpressionReflectionDelegateFactory.Instance.CreateMethodCall(castMethodInfo); object result = call(null, "First!"); Assert.IsNotNull(result); JsonSerializerTest.DictionaryKey key = (JsonSerializerTest.DictionaryKey)result; Assert.AreEqual("First!", key.Value); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Utilities/LateboundReflectionDelegateFactoryTests.cs0000664000175000017500000000606512454416117034606 0ustar directhexdirecthexusing System.Reflection; using Newtonsoft.Json.Utilities; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Utilities { public class OutAndRefTestClass { public string Input { get; set; } public bool B1 { get; set; } public bool B2 { get; set; } public OutAndRefTestClass(ref string value) { Input = value; value = "Output"; } public OutAndRefTestClass(ref string value, out bool b1) : this(ref value) { b1 = true; B1 = true; } public OutAndRefTestClass(ref string value, ref bool b1, ref bool b2) : this(ref value) { B1 = b1; B2 = b2; } } [TestFixture] public class LateboundReflectionDelegateFactoryTests : TestFixtureBase { [Test] public void ConstructorWithRefString() { ConstructorInfo constructor = TestReflectionUtils.GetConstructors(typeof(OutAndRefTestClass)).Single(c => c.GetParameters().Count() == 1); var creator = LateBoundReflectionDelegateFactory.Instance.CreateParametrizedConstructor(constructor); object[] args = new object[] { "Input" }; OutAndRefTestClass o = (OutAndRefTestClass)creator(args); Assert.IsNotNull(o); Assert.AreEqual("Input", o.Input); } [Test] public void ConstructorWithRefStringAndOutBool() { ConstructorInfo constructor = TestReflectionUtils.GetConstructors(typeof(OutAndRefTestClass)).Single(c => c.GetParameters().Count() == 2); var creator = LateBoundReflectionDelegateFactory.Instance.CreateParametrizedConstructor(constructor); object[] args = new object[] { "Input", null }; OutAndRefTestClass o = (OutAndRefTestClass)creator(args); Assert.IsNotNull(o); Assert.AreEqual("Input", o.Input); } [Test] public void ConstructorWithRefStringAndRefBoolAndRefBool() { ConstructorInfo constructor = TestReflectionUtils.GetConstructors(typeof(OutAndRefTestClass)).Single(c => c.GetParameters().Count() == 3); var creator = LateBoundReflectionDelegateFactory.Instance.CreateParametrizedConstructor(constructor); object[] args = new object[] { "Input", true, null }; OutAndRefTestClass o = (OutAndRefTestClass)creator(args); Assert.IsNotNull(o); Assert.AreEqual("Input", o.Input); Assert.AreEqual(true, o.B1); Assert.AreEqual(false, o.B2); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Utilities/ReflectionUtilsTests.cs0000664000175000017500000000566512454416117031013 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(PORTABLE || ASPNETCORE50 || PORTABLE40) using System; using System.Collections.Generic; using System.Runtime.Serialization.Formatters; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests.Utilities { [TestFixture] public class ReflectionUtilsTests : TestFixtureBase { [Test] public void GetTypeNameSimpleForGenericTypes() { string typeName; typeName = ReflectionUtils.GetTypeName(typeof(IList), FormatterAssemblyStyle.Simple, null); Assert.AreEqual("System.Collections.Generic.IList`1[[System.Type, mscorlib]], mscorlib", typeName); typeName = ReflectionUtils.GetTypeName(typeof(IDictionary, IList>), FormatterAssemblyStyle.Simple, null); Assert.AreEqual("System.Collections.Generic.IDictionary`2[[System.Collections.Generic.IList`1[[System.Type, mscorlib]], mscorlib],[System.Collections.Generic.IList`1[[System.Type, mscorlib]], mscorlib]], mscorlib", typeName); typeName = ReflectionUtils.GetTypeName(typeof(IList<>), FormatterAssemblyStyle.Simple, null); Assert.AreEqual("System.Collections.Generic.IList`1, mscorlib", typeName); typeName = ReflectionUtils.GetTypeName(typeof(IDictionary<,>), FormatterAssemblyStyle.Simple, null); Assert.AreEqual("System.Collections.Generic.IDictionary`2, mscorlib", typeName); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Utilities/StringUtilsTests.cs0000664000175000017500000000502112454416117030151 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests.Utilities { [TestFixture] public class StringUtilsTests : TestFixtureBase { [Test] public void ToCamelCaseTest() { Assert.AreEqual("urlValue", StringUtils.ToCamelCase("URLValue")); Assert.AreEqual("url", StringUtils.ToCamelCase("URL")); Assert.AreEqual("id", StringUtils.ToCamelCase("ID")); Assert.AreEqual("i", StringUtils.ToCamelCase("I")); Assert.AreEqual("", StringUtils.ToCamelCase("")); Assert.AreEqual(null, StringUtils.ToCamelCase(null)); Assert.AreEqual("iPhone", StringUtils.ToCamelCase("iPhone")); Assert.AreEqual("person", StringUtils.ToCamelCase("Person")); Assert.AreEqual("iPhone", StringUtils.ToCamelCase("IPhone")); Assert.AreEqual("i Phone", StringUtils.ToCamelCase("I Phone")); Assert.AreEqual(" IPhone", StringUtils.ToCamelCase(" IPhone")); } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Utilities/DynamicReflectionDelegateFactoryTests.cs0000664000175000017500000001523212454416117034251 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(PORTABLE || ASPNETCORE50 || NETFX_CORE || PORTABLE40) using System; using System.Diagnostics; using System.Reflection; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Serialization; using Newtonsoft.Json.Utilities; using Newtonsoft.Json.Tests.TestObjects; using Newtonsoft.Json.Tests.Serialization; #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; #endif namespace Newtonsoft.Json.Tests.Utilities { [TestFixture] public class DynamicReflectionDelegateFactoryTests : TestFixtureBase { [Test] public void ConstructorWithRefString() { ConstructorInfo constructor = typeof(OutAndRefTestClass).GetConstructors().Single(c => c.GetParameters().Count() == 1); var creator = DynamicReflectionDelegateFactory.Instance.CreateParametrizedConstructor(constructor); object[] args = new object[] { "Input" }; OutAndRefTestClass o = (OutAndRefTestClass)creator(args); Assert.IsNotNull(o); Assert.AreEqual("Input", o.Input); } [Test] public void ConstructorWithRefStringAndOutBool() { ConstructorInfo constructor = typeof(OutAndRefTestClass).GetConstructors().Single(c => c.GetParameters().Count() == 2); var creator = DynamicReflectionDelegateFactory.Instance.CreateParametrizedConstructor(constructor); object[] args = new object[] { "Input", false }; OutAndRefTestClass o = (OutAndRefTestClass)creator(args); Assert.IsNotNull(o); Assert.AreEqual("Input", o.Input); Assert.AreEqual(true, o.B1); } [Test] public void ConstructorWithRefStringAndRefBoolAndRefBool() { ConstructorInfo constructor = typeof(OutAndRefTestClass).GetConstructors().Single(c => c.GetParameters().Count() == 3); var creator = DynamicReflectionDelegateFactory.Instance.CreateParametrizedConstructor(constructor); object[] args = new object[] { "Input", true, null }; OutAndRefTestClass o = (OutAndRefTestClass)creator(args); Assert.IsNotNull(o); Assert.AreEqual("Input", o.Input); Assert.AreEqual(true, o.B1); Assert.AreEqual(false, o.B2); } [Test] public void CreateGetWithBadObjectTarget() { ExceptionAssert.Throws(() => { Person p = new Person(); p.Name = "Hi"; Func setter = DynamicReflectionDelegateFactory.Instance.CreateGet(typeof(Movie).GetProperty("Name")); setter(p); }, "Unable to cast object of type 'Newtonsoft.Json.Tests.TestObjects.Person' to type 'Newtonsoft.Json.Tests.TestObjects.Movie'."); } [Test] public void CreateSetWithBadObjectTarget() { ExceptionAssert.Throws(() => { Person p = new Person(); Movie m = new Movie(); Action setter = DynamicReflectionDelegateFactory.Instance.CreateSet(typeof(Movie).GetProperty("Name")); setter(m, "Hi"); Assert.AreEqual(m.Name, "Hi"); setter(p, "Hi"); Assert.AreEqual(p.Name, "Hi"); }, "Unable to cast object of type 'Newtonsoft.Json.Tests.TestObjects.Person' to type 'Newtonsoft.Json.Tests.TestObjects.Movie'."); } [Test] public void CreateSetWithBadTarget() { ExceptionAssert.Throws(() => { object structTest = new StructTest(); Action setter = DynamicReflectionDelegateFactory.Instance.CreateSet(typeof(StructTest).GetProperty("StringProperty")); setter(structTest, "Hi"); Assert.AreEqual("Hi", ((StructTest)structTest).StringProperty); setter(new TimeSpan(), "Hi"); }, "Specified cast is not valid."); } [Test] public void CreateSetWithBadObjectValue() { ExceptionAssert.Throws(() => { Movie m = new Movie(); Action setter = DynamicReflectionDelegateFactory.Instance.CreateSet(typeof(Movie).GetProperty("Name")); setter(m, new Version("1.1.1.1")); }, "Unable to cast object of type 'System.Version' to type 'System.String'."); } [Test] public void CreateStaticMethodCall() { MethodInfo castMethodInfo = typeof(JsonSerializerTest.DictionaryKey).GetMethod("op_Implicit", new[] { typeof(string) }); Assert.IsNotNull(castMethodInfo); MethodCall call = DynamicReflectionDelegateFactory.Instance.CreateMethodCall(castMethodInfo); object result = call(null, "First!"); Assert.IsNotNull(result); JsonSerializerTest.DictionaryKey key = (JsonSerializerTest.DictionaryKey)result; Assert.AreEqual("First!", key.Value); } } } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Utilities/DateTimeUtilsTests.cs0000664000175000017500000002645712454416117030417 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Text; #if NETFX_CORE using Microsoft.VisualStudio.TestPlatform.UnitTestFramework; using TestFixture = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestClassAttribute; using Test = Microsoft.VisualStudio.TestPlatform.UnitTestFramework.TestMethodAttribute; #elif ASPNETCORE50 using Xunit; using Test = Xunit.FactAttribute; using Assert = Newtonsoft.Json.Tests.XUnitAssert; #else using NUnit.Framework; #endif using Newtonsoft.Json.Utilities; namespace Newtonsoft.Json.Tests.Utilities { [TestFixture] public class DateTimeUtilsTests : TestFixtureBase { [Test] public void RoundTripDateTimeMinAndMax() { RoundtripDateIso(DateTime.MinValue); RoundtripDateIso(DateTime.MaxValue); } private static void RoundtripDateIso(DateTime value) { StringWriter sw = new StringWriter(); DateTimeUtils.WriteDateTimeString(sw, value, DateFormatHandling.IsoDateFormat, null, CultureInfo.InvariantCulture); string minDateText = sw.ToString(); object dt; DateTimeUtils.TryParseDateIso(minDateText, DateParseHandling.DateTime, DateTimeZoneHandling.RoundtripKind, out dt); DateTime parsedDt = (DateTime)dt; Assert.AreEqual(value, parsedDt); } [Test] public void FailingDateTimeParse() { string text = "2000-12-15T22:11:03.055+23:30"; DateTime oldDt; bool success = DateTime.TryParseExact(text, "yyyy-MM-ddTHH:mm:ss.FFFFFFFK", CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind, out oldDt); Console.WriteLine("Success: " + success); Console.WriteLine("DateTime: " + oldDt); Assert.IsTrue(success); } [Test] public void NewDateTimeParse() { AssertNewDateTimeParseEqual("999x-12-31T23:59:59"); AssertNewDateTimeParseEqual("9999x12-31T23:59:59"); AssertNewDateTimeParseEqual("9999-1x-31T23:59:59"); AssertNewDateTimeParseEqual("9999-12x31T23:59:59"); AssertNewDateTimeParseEqual("9999-12-3xT23:59:59"); AssertNewDateTimeParseEqual("9999-12-31x23:59:59"); AssertNewDateTimeParseEqual("9999-12-31T2x:59:59"); AssertNewDateTimeParseEqual("9999-12-31T23x59:59"); AssertNewDateTimeParseEqual("9999-12-31T23:5x:59"); AssertNewDateTimeParseEqual("9999-12-31T23:59x59"); AssertNewDateTimeParseEqual("9999-12-31T23:59:5x"); AssertNewDateTimeParseEqual("9999-12-31T23:59:5"); AssertNewDateTimeParseEqual("9999-12-31T23:59:59.x"); AssertNewDateTimeParseEqual("9999-12-31T23:59:59.99999999"); //AssertNewDateTimeParseEqual("9999-12-31T23:59:59.", null); // DateTime.TryParse is bugged and should return null AssertNewDateTimeParseEqual("2000-12-15T22:11:03.055Z"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03.055"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03.055+00:00"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03.055+23:30"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03.055-23:30"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03.055+11:30"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03.055-11:30"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03Z"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03+00:00"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03+23:30"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03-23:30"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03+11:30"); AssertNewDateTimeParseEqual("2000-12-15T22:11:03-11:30"); AssertNewDateTimeParseEqual("0001-01-01T00:00:00Z"); AssertNewDateTimeParseEqual("0001-01-01T00:00:00"); // this is DateTime.MinDate //AssertNewDateTimeParseEqual("0001-01-01T00:00:00+00:00"); // when the timezone is negative then this breaks //AssertNewDateTimeParseEqual("0001-01-01T00:00:00+23:30"); // I don't know why a different value is returned from DateTime.TryParse, I think it is a bug in .NET AssertNewDateTimeParseEqual("0001-01-01T00:00:00-23:30"); //AssertNewDateTimeParseEqual("0001-01-01T00:00:00+11:30"); // when the timezone is negative then this breaks AssertNewDateTimeParseEqual("0001-01-01T00:00:00-12:00"); AssertNewDateTimeParseEqual("9999-12-31T23:59:59.9999999Z"); AssertNewDateTimeParseEqual("9999-12-31T23:59:59.9999999"); // this is DateTime.MaxDate AssertNewDateTimeParseEqual("9999-12-31T23:59:59.9999999+00:00", DateTime.MaxValue); // DateTime.TryParse fails instead of returning MaxDate in some timezones AssertNewDateTimeParseEqual("9999-12-31T23:59:59.9999999+23:30"); AssertNewDateTimeParseEqual("9999-12-31T23:59:59.9999999-23:30", DateTime.MaxValue); // DateTime.TryParse fails instead of returning MaxDate in some timezones AssertNewDateTimeParseEqual("9999-12-31T23:59:59.9999999+11:30", DateTime.MaxValue); // DateTime.TryParse fails instead of returning MaxDate in some timezones AssertNewDateTimeParseEqual("9999-12-31T23:59:59.9999999-11:30", DateTime.MaxValue); // DateTime.TryParse fails instead of returning MaxDate in some timezones } private void AssertNewDateTimeParseEqual(string text, object oldDate) { object oldDt; if (TryParseDateIso(text, DateParseHandling.DateTime, DateTimeZoneHandling.RoundtripKind, out oldDt)) { oldDate = oldDt; } object newDt; DateTimeUtils.TryParseDateIso(text, DateParseHandling.DateTime, DateTimeZoneHandling.RoundtripKind, out newDt); if (!Equals(oldDate, newDt)) { Assert.AreEqual(oldDate, newDt, "DateTime parse not equal. Text: '{0}' Old ticks: {1} New ticks: {2}".FormatWith( CultureInfo.InvariantCulture, text, oldDate != null ? ((DateTime)oldDate).Ticks : (long?)null, newDt != null ? ((DateTime)newDt).Ticks : (long?)null )); } } private void AssertNewDateTimeParseEqual(string text) { Console.WriteLine("Parsing date text: " + text); object oldDt; TryParseDateIso(text, DateParseHandling.DateTime, DateTimeZoneHandling.RoundtripKind, out oldDt); AssertNewDateTimeParseEqual(text, oldDt); } #if !NET20 [Test] public void NewDateTimeOffsetParse() { AssertNewDateTimeOffsetParseEqual("0001-01-01T00:00:00"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03.055Z"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03.055"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03.055+00:00"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03.055+13:30"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03.055-13:30"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03Z"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03+00:00"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03+13:30"); AssertNewDateTimeOffsetParseEqual("2000-12-15T22:11:03-13:30"); AssertNewDateTimeOffsetParseEqual("0001-01-01T00:00:00Z"); AssertNewDateTimeOffsetParseEqual("0001-01-01T00:00:00+00:00"); AssertNewDateTimeOffsetParseEqual("0001-01-01T00:00:00+13:30"); AssertNewDateTimeOffsetParseEqual("0001-01-01T00:00:00-13:30"); AssertNewDateTimeOffsetParseEqual("9999-12-31T23:59:59.9999999Z"); AssertNewDateTimeOffsetParseEqual("9999-12-31T23:59:59.9999999"); AssertNewDateTimeOffsetParseEqual("9999-12-31T23:59:59.9999999+00:00"); AssertNewDateTimeOffsetParseEqual("9999-12-31T23:59:59.9999999+13:30"); AssertNewDateTimeOffsetParseEqual("9999-12-31T23:59:59.9999999-13:30"); } private void AssertNewDateTimeOffsetParseEqual(string text) { object oldDt; object newDt; TryParseDateIso(text, DateParseHandling.DateTimeOffset, DateTimeZoneHandling.Unspecified, out oldDt); DateTimeUtils.TryParseDateIso(text, DateParseHandling.DateTimeOffset, DateTimeZoneHandling.Unspecified, out newDt); if (!Equals(oldDt, newDt)) { Assert.AreEqual(oldDt, newDt, "DateTimeOffset parse not equal. Text: '{0}' Old ticks: {1} New ticks: {2}".FormatWith( CultureInfo.InvariantCulture, text, ((DateTime)oldDt).Ticks, ((DateTime)newDt).Ticks)); } } #endif internal static bool TryParseDateIso(string text, DateParseHandling dateParseHandling, DateTimeZoneHandling dateTimeZoneHandling, out object dt) { const string isoDateFormat = "yyyy-MM-ddTHH:mm:ss.FFFFFFFK"; #if !NET20 if (dateParseHandling == DateParseHandling.DateTimeOffset) { DateTimeOffset dateTimeOffset; if (DateTimeOffset.TryParseExact(text, isoDateFormat, CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind, out dateTimeOffset)) { dt = dateTimeOffset; return true; } } else #endif { DateTime dateTime; if (DateTime.TryParseExact(text, isoDateFormat, CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind, out dateTime)) { dateTime = DateTimeUtils.EnsureDateTime(dateTime, dateTimeZoneHandling); dt = dateTime; return true; } } dt = null; return false; } } }newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Net35.csproj0000664000175000017500000005030412454416117030637 0ustar directhexdirecthex Debug AnyCPU 9.0.30729 2.0 {3E6E2335-B079-4B5B-A65A-9D586914BCBB} Library Properties Newtonsoft.Json.Tests Newtonsoft.Json.Tests 3.5 v3.5 false publish\ true Disk false Foreground 7 Days false false true 0 1.0.0.%2a false false true true full false bin\Debug\Net35\ TRACE;DEBUG;NET35 prompt 4 AllRules.ruleset pdbonly true bin\Release\Net35\ TRACE;NET35 prompt 4 AllRules.ruleset False ..\packages\NUnit.2.6.2\lib\nunit.framework.dll 3.5 3.5 3.5 3.5 3.0 3.0 3.5 3.5 3.5 True True LinqToSqlClasses.dbml Component PreserveNewest MSLinqToSQLGenerator LinqToSqlClasses.designer.cs Designer PreserveNewest LinqToSqlClasses.dbml Always False .NET Framework 3.5 SP1 Client Profile false False .NET Framework 3.5 SP1 true False Windows Installer 3.1 true {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D} Newtonsoft.Json.Net35 newtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/PerformanceTests.cs0000664000175000017500000015671312454416117026167 0ustar directhexdirecthex#region License // Copyright (c) 2007 James Newton-King // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without // restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following // conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. #endregion #if !(NET20 || NET35 || NETFX_CORE || PORTABLE || ASPNETCORE50) using System.Xml; using System; using System.Collections; using System.Collections.Generic; using System.Globalization; using System.Diagnostics; using System.IO; using System.Linq; using System.Runtime.Serialization; using System.Web.Script.Serialization; using System.Xml.Linq; using Newtonsoft.Json.Utilities; using NUnit.Framework; using System.Runtime.Serialization.Json; using System.Text; using Newtonsoft.Json.Bson; using System.Runtime.Serialization.Formatters.Binary; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Converters; namespace Newtonsoft.Json.Tests { [Serializable] [DataContract] public class Image { [DataMember] public string FileName { get; set; } [DataMember] public string Author { get; set; } [DataMember] public string Caption { get; set; } [DataMember] public byte[] Data { get; set; } } [TestFixture] public class PerformanceTests : TestFixtureBase { public int Iterations = 100; //private const int Iterations = 5000; #region Data private const string BsonHex = @"A9-01-00-00-04-73-74-72-69-6E-67-73-00-2B-00-00-00-0A-30-00-02-31-00-19-00-00-00-4D-61-72-6B-75-73-20-65-67-67-65-72-20-5D-3E-3C-5B-2C-20-28-32-6E-64-29-00-0A-32-00-00-03-64-69-63-74-69-6F-6E-61-72-79-00-37-00-00-00-10-56-61-6C-20-26-20-61-73-64-31-00-01-00-00-00-10-56-61-6C-32-20-26-20-61-73-64-31-00-03-00-00-00-10-56-61-6C-33-20-26-20-61-73-64-31-00-04-00-00-00-00-02-4E-61-6D-65-00-05-00-00-00-52-69-63-6B-00-09-4E-6F-77-00-EF-BD-69-EC-25-01-00-00-01-42-69-67-4E-75-6D-62-65-72-00-E7-7B-CC-26-96-C7-1F-42-03-41-64-64-72-65-73-73-31-00-47-00-00-00-02-53-74-72-65-65-74-00-0B-00-00-00-66-66-66-20-53-74-72-65-65-74-00-02-50-68-6F-6E-65-00-0F-00-00-00-28-35-30-33-29-20-38-31-34-2D-36-33-33-35-00-09-45-6E-74-65-72-65-64-00-6F-FF-31-53-26-01-00-00-00-04-41-64-64-72-65-73-73-65-73-00-A2-00-00-00-03-30-00-4B-00-00-00-02-53-74-72-65-65-74-00-0F-00-00-00-1F-61-72-72-61-79-3C-61-64-64-72-65-73-73-00-02-50-68-6F-6E-65-00-0F-00-00-00-28-35-30-33-29-20-38-31-34-2D-36-33-33-35-00-09-45-6E-74-65-72-65-64-00-6F-73-0C-E7-25-01-00-00-00-03-31-00-4C-00-00-00-02-53-74-72-65-65-74-00-10-00-00-00-61-72-72-61-79-20-32-20-61-64-64-72-65-73-73-00-02-50-68-6F-6E-65-00-0F-00-00-00-28-35-30-33-29-20-38-31-34-2D-36-33-33-35-00-09-45-6E-74-65-72-65-64-00-6F-17-E6-E1-25-01-00-00-00-00-00"; private const string BinaryFormatterHex = @"00-01-00-00-00-FF-FF-FF-FF-01-00-00-00-00-00-00-00-0C-02-00-00-00-4C-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2C-20-56-65-72-73-69-6F-6E-3D-33-2E-35-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-6E-75-6C-6C-05-01-00-00-00-1F-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2E-54-65-73-74-43-6C-61-73-73-07-00-00-00-05-5F-4E-61-6D-65-04-5F-4E-6F-77-0A-5F-42-69-67-4E-75-6D-62-65-72-09-5F-41-64-64-72-65-73-73-31-0A-5F-41-64-64-72-65-73-73-65-73-07-73-74-72-69-6E-67-73-0A-64-69-63-74-69-6F-6E-61-72-79-01-00-00-04-03-03-03-0D-05-1D-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2E-41-64-64-72-65-73-73-02-00-00-00-90-01-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-4C-69-73-74-60-31-5B-5B-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2E-41-64-64-72-65-73-73-2C-20-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2C-20-56-65-72-73-69-6F-6E-3D-33-2E-35-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-6E-75-6C-6C-5D-5D-7F-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-4C-69-73-74-60-31-5B-5B-53-79-73-74-65-6D-2E-53-74-72-69-6E-67-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-5D-E1-01-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-44-69-63-74-69-6F-6E-61-72-79-60-32-5B-5B-53-79-73-74-65-6D-2E-53-74-72-69-6E-67-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-2C-5B-53-79-73-74-65-6D-2E-49-6E-74-33-32-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-5D-02-00-00-00-06-03-00-00-00-04-52-69-63-6B-B6-25-3A-D1-C5-59-CC-88-0F-33-34-31-32-33-31-32-33-31-32-33-2E-31-32-31-09-04-00-00-00-09-05-00-00-00-09-06-00-00-00-09-07-00-00-00-05-04-00-00-00-1D-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2E-41-64-64-72-65-73-73-03-00-00-00-07-5F-73-74-72-65-65-74-06-5F-50-68-6F-6E-65-08-5F-45-6E-74-65-72-65-64-01-01-00-0D-02-00-00-00-06-08-00-00-00-0A-66-66-66-20-53-74-72-65-65-74-06-09-00-00-00-0E-28-35-30-33-29-20-38-31-34-2D-36-33-33-35-B6-BD-B8-BF-74-69-CC-88-04-05-00-00-00-90-01-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-4C-69-73-74-60-31-5B-5B-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2E-41-64-64-72-65-73-73-2C-20-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2C-20-56-65-72-73-69-6F-6E-3D-33-2E-35-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-6E-75-6C-6C-5D-5D-03-00-00-00-06-5F-69-74-65-6D-73-05-5F-73-69-7A-65-08-5F-76-65-72-73-69-6F-6E-04-00-00-1F-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2E-41-64-64-72-65-73-73-5B-5D-02-00-00-00-08-08-09-0A-00-00-00-02-00-00-00-02-00-00-00-04-06-00-00-00-7F-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-4C-69-73-74-60-31-5B-5B-53-79-73-74-65-6D-2E-53-74-72-69-6E-67-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-5D-03-00-00-00-06-5F-69-74-65-6D-73-05-5F-73-69-7A-65-08-5F-76-65-72-73-69-6F-6E-06-00-00-08-08-09-0B-00-00-00-03-00-00-00-03-00-00-00-04-07-00-00-00-E1-01-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-44-69-63-74-69-6F-6E-61-72-79-60-32-5B-5B-53-79-73-74-65-6D-2E-53-74-72-69-6E-67-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-2C-5B-53-79-73-74-65-6D-2E-49-6E-74-33-32-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-5D-04-00-00-00-07-56-65-72-73-69-6F-6E-08-43-6F-6D-70-61-72-65-72-08-48-61-73-68-53-69-7A-65-0D-4B-65-79-56-61-6C-75-65-50-61-69-72-73-00-03-00-03-08-92-01-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-47-65-6E-65-72-69-63-45-71-75-61-6C-69-74-79-43-6F-6D-70-61-72-65-72-60-31-5B-5B-53-79-73-74-65-6D-2E-53-74-72-69-6E-67-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-5D-08-E5-01-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-4B-65-79-56-61-6C-75-65-50-61-69-72-60-32-5B-5B-53-79-73-74-65-6D-2E-53-74-72-69-6E-67-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-2C-5B-53-79-73-74-65-6D-2E-49-6E-74-33-32-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-5D-5B-5D-03-00-00-00-09-0C-00-00-00-03-00-00-00-09-0D-00-00-00-07-0A-00-00-00-00-01-00-00-00-04-00-00-00-04-1D-4E-65-77-74-6F-6E-73-6F-66-74-2E-4A-73-6F-6E-2E-54-65-73-74-73-2E-41-64-64-72-65-73-73-02-00-00-00-09-0E-00-00-00-09-0F-00-00-00-0D-02-11-0B-00-00-00-04-00-00-00-0A-06-10-00-00-00-18-4D-61-72-6B-75-73-20-65-67-67-65-72-20-5D-3E-3C-5B-2C-20-28-32-6E-64-29-0D-02-04-0C-00-00-00-92-01-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-47-65-6E-65-72-69-63-45-71-75-61-6C-69-74-79-43-6F-6D-70-61-72-65-72-60-31-5B-5B-53-79-73-74-65-6D-2E-53-74-72-69-6E-67-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-5D-00-00-00-00-07-0D-00-00-00-00-01-00-00-00-03-00-00-00-03-E3-01-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-4B-65-79-56-61-6C-75-65-50-61-69-72-60-32-5B-5B-53-79-73-74-65-6D-2E-53-74-72-69-6E-67-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-2C-5B-53-79-73-74-65-6D-2E-49-6E-74-33-32-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-5D-04-EF-FF-FF-FF-E3-01-53-79-73-74-65-6D-2E-43-6F-6C-6C-65-63-74-69-6F-6E-73-2E-47-65-6E-65-72-69-63-2E-4B-65-79-56-61-6C-75-65-50-61-69-72-60-32-5B-5B-53-79-73-74-65-6D-2E-53-74-72-69-6E-67-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-2C-5B-53-79-73-74-65-6D-2E-49-6E-74-33-32-2C-20-6D-73-63-6F-72-6C-69-62-2C-20-56-65-72-73-69-6F-6E-3D-32-2E-30-2E-30-2E-30-2C-20-43-75-6C-74-75-72-65-3D-6E-65-75-74-72-61-6C-2C-20-50-75-62-6C-69-63-4B-65-79-54-6F-6B-65-6E-3D-62-37-37-61-35-63-35-36-31-39-33-34-65-30-38-39-5D-5D-02-00-00-00-03-6B-65-79-05-76-61-6C-75-65-01-00-08-06-12-00-00-00-0A-56-61-6C-20-26-20-61-73-64-31-01-00-00-00-01-ED-FF-FF-FF-EF-FF-FF-FF-06-14-00-00-00-0B-56-61-6C-32-20-26-20-61-73-64-31-03-00-00-00-01-EB-FF-FF-FF-EF-FF-FF-FF-06-16-00-00-00-0B-56-61-6C-33-20-26-20-61-73-64-31-04-00-00-00-01-0E-00-00-00-04-00-00-00-06-17-00-00-00-0E-1F-61-72-72-61-79-3C-61-64-64-72-65-73-73-09-09-00-00-00-B6-FD-0B-45-F4-58-CC-88-01-0F-00-00-00-04-00-00-00-06-19-00-00-00-0F-61-72-72-61-79-20-32-20-61-64-64-72-65-73-73-09-09-00-00-00-B6-3D-A2-1A-2B-58-CC-88-0B"; private const string XmlText = @"2010-01-21T11:12:16.0809174+13:00(503) 814-6335fff Street
2009-12-31T11:12:16.0809174+13:00(503) 814-6335array<address
2009-12-30T11:12:16.0809174+13:00(503) 814-6335array 2 address
34123123123.121Rick2010-01-01T12:12:16.0809174+13:00Val & asd11Val2 & asd13Val3 & asd14Markus egger ]><[, (2nd)
"; private const string JsonText = @"{""strings"":[null,""Markus egger ]><[, (2nd)"",null],""dictionary"":{""Val & asd1"":1,""Val2 & asd1"":3,""Val3 & asd1"":4},""Name"":""Rick"",""Now"":""\/Date(1262301136080+1300)\/"",""BigNumber"":34123123123.121,""Address1"":{""Street"":""fff Street"",""Phone"":""(503) 814-6335"",""Entered"":""\/Date(1264025536080+1300)\/""},""Addresses"":[{""Street"":""\u001farray<[, (2nd)"",null],""dictionary"":{""Val & asd1"":1,""Val2 & asd1"":3,""Val3 & asd1"":4},""Name"":""Rick"",""Now"":""2012-02-25T19:55:50.6095676+13:00"",""BigNumber"":34123123123.121,""Address1"":{""Street"":""fff Street"",""Phone"":""(503) 814-6335"",""Entered"":""2012-02-24T18:55:50.6095676+13:00""},""Addresses"":[{""Street"":""\u001farray(SimpleJsonText); } [Test] public void Serialize() { TestClass test = CreateSerializationObject(); SerializeTests(test); } [Test] public void ReadLargeJson() { for (int i = 0; i < 10; i++) { using (var fs = System.IO.File.OpenText("large.json")) using (JsonTextReader jsonTextReader = new JsonTextReader(fs)) { while (jsonTextReader.Read()) { } } } } public class Friend { public int id { get; set; } public string name { get; set; } } public class RootObject { public string _id { get; set; } public int index { get; set; } public Guid guid { get; set; } public bool isActive { get; set; } public string balance { get; set; } public Uri picture { get; set; } public int age { get; set; } public string eyeColor { get; set; } public string name { get; set; } public string gender { get; set; } public string company { get; set; } public string email { get; set; } public string phone { get; set; } public string address { get; set; } public string about { get; set; } public DateTime registered { get; set; } public double latitude { get; set; } public decimal longitude { get; set; } public List tags { get; set; } public List friends { get; set; } public string greeting { get; set; } public string favoriteFruit { get; set; } } [Test] public void DeserializeLargeJson() { var json = System.IO.File.ReadAllText("large.json"); BenchmarkDeserializeMethod>(SerializeMethod.JsonNet, json, Iterations / 10, false); } [Test] public void SerializeKeyValuePair() { IList> value = new List>(); for (int i = 0; i < 100; i++) { value.Add(new KeyValuePair("Key" + i, i)); } BenchmarkSerializeMethod(SerializeMethod.JsonNet, value); string json = JsonConvert.SerializeObject(value); BenchmarkDeserializeMethod>>(SerializeMethod.JsonNet, json); } private void SerializeTests(object value) { BenchmarkSerializeMethod(SerializeMethod.DataContractSerializer, value); BenchmarkSerializeMethod(SerializeMethod.BinaryFormatter, value); BenchmarkSerializeMethod(SerializeMethod.JavaScriptSerializer, value); BenchmarkSerializeMethod(SerializeMethod.DataContractJsonSerializer, value); BenchmarkSerializeMethod(SerializeMethod.JsonNet, value); BenchmarkSerializeMethod(SerializeMethod.JsonNetLinq, value); BenchmarkSerializeMethod(SerializeMethod.JsonNetManual, value); BenchmarkSerializeMethod(SerializeMethod.JsonNetWithIsoConverter, value); BenchmarkSerializeMethod(SerializeMethod.JsonNetBinary, value); } [Test] public void Deserialize() { BenchmarkDeserializeMethod(SerializeMethod.DataContractSerializer, XmlText); BenchmarkDeserializeMethod(SerializeMethod.BinaryFormatter, HexToBytes(BinaryFormatterHex)); DeserializeTests(JsonText); BenchmarkDeserializeMethod(SerializeMethod.JsonNetWithIsoConverter, JsonIsoText); BenchmarkDeserializeMethod(SerializeMethod.JsonNetBinary, HexToBytes(BsonHex)); } public void DeserializeTests(string json) { BenchmarkDeserializeMethod(SerializeMethod.JavaScriptSerializer, json); BenchmarkDeserializeMethod(SerializeMethod.DataContractJsonSerializer, json); BenchmarkDeserializeMethod(SerializeMethod.JsonNet, json); BenchmarkDeserializeMethod(SerializeMethod.JsonNetManual, json); } [Test] public void SerializeSizeNormal() { SerializeSize(CreateSerializationObject()); } [Test] public void SerializeSizeData() { Image image = new Image(); image.Data = System.IO.File.ReadAllBytes(@"bunny_pancake.jpg"); image.FileName = "bunny_pancake.jpg"; image.Author = "Hironori Akutagawa"; image.Caption = "I have no idea what you are talking about so here's a bunny with a pancake on its head"; SerializeSize(image); } #if !(PORTABLE40) [Test] public void ConvertXmlNode() { XmlDocument doc = new XmlDocument(); using (FileStream file = System.IO.File.OpenRead("large_sample.xml")) { doc.Load(file); } JsonConvert.SerializeXmlNode(doc); } [Test] public void ConvertXNode() { XDocument doc; using (FileStream file = System.IO.File.OpenRead("large_sample.xml")) { doc = XDocument.Load(file); } JsonConvert.SerializeXNode(doc); } #endif private T TimeOperation(Func operation, string name) { // warm up operation(); Stopwatch timed = new Stopwatch(); timed.Start(); T result = operation(); Console.WriteLine(name); Console.WriteLine("{0} ms", timed.ElapsedMilliseconds); timed.Stop(); return result; } [Test] public void BuildJObject() { JObject o = new JObject(); for (int i = 0; i < 50; i++) { o[i.ToString()] = i; } string jsonText = o.ToString(); // this is extremely slow with 5000 interations int interations = 1000; TimeOperation(() => { JObject oo = null; for (int i = 0; i < interations; i++) { oo = JObject.Parse(jsonText); } return oo; }, "JObject"); } [Test] public void BuildJObjectComparedToXml() { const long totalIterations = 100000; const String xml = @" 1 2 3 4 5 "; const String json = @"{ ""Property1"":""1"", ""Property2"":""2"", ""Property3"":""3"", ""Property4"":""4"", ""Property5"":""5"" }"; var watch = new Stopwatch(); watch.Start(); for (long iteration = 0; iteration < totalIterations; ++iteration) { var obj = JObject.Parse(json); obj["Property1"].Value(); obj["Property2"].Value(); obj["Property3"].Value(); obj["Property4"].Value(); obj["Property5"].Value(); } watch.Stop(); var performance1 = (totalIterations / watch.ElapsedMilliseconds) * 1000; Console.WriteLine("JSON: " + watch.Elapsed.TotalSeconds); watch.Reset(); watch.Start(); for (long iteration = 0; iteration < totalIterations; ++iteration) { var doc = XDocument.Parse(xml); var alarmProperties = doc.Descendants("property"); foreach (var property in alarmProperties) { var attr = property.Attribute("name"); var name = attr.Value; switch (name) { case "Property1": Int32.Parse(property.Value); break; case "Property2": Int32.Parse(property.Value); break; case "Property3": Int32.Parse(property.Value); break; case "Property4": Int32.Parse(property.Value); break; case "Property5": Int32.Parse(property.Value); break; } } } watch.Stop(); var performance2 = (totalIterations / watch.ElapsedMilliseconds) * 1000; Console.WriteLine("XML: " + watch.Elapsed.TotalSeconds); } [Test] public void SerializeString() { string text = @"The general form of an HTML element is therefore: content. Some HTML elements are defined as empty elements and take the form . Empty elements may enclose no content, for instance, the BR tag or the inline IMG tag. The name of an HTML element is the name used in the tags. Note that the end tag's name is preceded by a slash character, ""/"", and that in empty elements the end tag is neither required nor allowed. If attributes are not mentioned, default values are used in each case. The general form of an HTML element is therefore: content. Some HTML elements are defined as empty elements and take the form . Empty elements may enclose no content, for instance, the BR tag or the inline IMG tag. The name of an HTML element is the name used in the tags. Note that the end tag's name is preceded by a slash character, ""/"", and that in empty elements the end tag is neither required nor allowed. If attributes are not mentioned, default values are used in each case. The general form of an HTML element is therefore: content. Some HTML elements are defined as empty elements and take the form . Empty elements may enclose no content, for instance, the BR tag or the inline IMG tag. The name of an HTML element is the name used in the tags. Note that the end tag's name is preceded by a slash character, ""/"", and that in empty elements the end tag is neither required nor allowed. If attributes are not mentioned, default values are used in each case. "; int interations = 1000; TimeOperation(() => { for (int i = 0; i < interations; i++) { using (StringWriter w = StringUtils.CreateStringWriter(StringUtils.GetLength(text) ?? 16)) { char[] buffer = null; JavaScriptUtils.WriteEscapedJavaScriptString(w, text, '"', true, JavaScriptUtils.DoubleQuoteCharEscapeFlags, StringEscapeHandling.Default, ref buffer); } } return ""; }, "New"); } [Test] public void JTokenToObject() { JValue s = new JValue("String!"); int interations = 1000000; TimeOperation(() => { for (int i = 0; i < interations; i++) { s.ToObject(typeof(string)); } return ""; }, "New"); TimeOperation(() => { for (int i = 0; i < interations; i++) { s.ToObject(typeof(string), new JsonSerializer()); } return ""; }, "Old"); TimeOperation(() => { for (int i = 0; i < interations; i++) { s.Value(); } return ""; }, "Value"); } private void SerializeSize(object value) { // this is extremely slow with 5000 interations int interations = 100; byte[] jsonBytes = TimeOperation(() => { string json = null; for (int i = 0; i < interations; i++) { json = JsonConvert.SerializeObject(value, Formatting.None); } return Encoding.UTF8.GetBytes(json); }, "Json.NET"); byte[] bsonBytes = TimeOperation(() => { MemoryStream ms = null; for (int i = 0; i < interations; i++) { ms = new MemoryStream(); JsonSerializer serializer = new JsonSerializer(); BsonWriter writer = new BsonWriter(ms); serializer.Serialize(writer, value); writer.Flush(); } return ms.ToArray(); }, "Json.NET BSON"); byte[] xmlBytes = TimeOperation(() => { MemoryStream ms = null; for (int i = 0; i < interations; i++) { ms = new MemoryStream(); DataContractSerializer dataContractSerializer = new DataContractSerializer(value.GetType()); dataContractSerializer.WriteObject(ms, value); } return ms.ToArray(); }, "DataContractSerializer"); byte[] wcfJsonBytes = TimeOperation(() => { MemoryStream ms = null; for (int i = 0; i < interations; i++) { ms = new MemoryStream(); DataContractJsonSerializer dataContractJsonSerializer = new DataContractJsonSerializer(value.GetType()); dataContractJsonSerializer.WriteObject(ms, value); } return ms.ToArray(); }, "DataContractJsonSerializer"); byte[] binaryFormatterBytes = TimeOperation(() => { MemoryStream ms = null; for (int i = 0; i < interations; i++) { ms = new MemoryStream(); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(ms, value); } return ms.ToArray(); }, "BinaryFormatter"); Console.WriteLine("Json.NET size: {0} bytes", jsonBytes.Length); Console.WriteLine("BSON size: {0} bytes", bsonBytes.Length); Console.WriteLine("WCF JSON size: {0} bytes", wcfJsonBytes.Length); Console.WriteLine("WCF XML size: {0} bytes", xmlBytes.Length); Console.WriteLine("BinaryFormatter size: {0} bytes", binaryFormatterBytes.Length); } #region Serialize private static readonly byte[] Buffer = new byte[4096]; public void BenchmarkSerializeMethod(SerializeMethod method, object value) { Serialize(method, value); Stopwatch timed = new Stopwatch(); timed.Start(); string json = null; for (int x = 0; x < Iterations; x++) { json = Serialize(method, value); } timed.Stop(); Console.WriteLine("Serialize method: {0}", method); Console.WriteLine("{0} ms", timed.ElapsedMilliseconds); Console.WriteLine(json); Console.WriteLine(); } private TestClass CreateSerializationObject() { TestClass test = new TestClass(); test.dictionary = new Dictionary { { "Val & asd1", 1 }, { "Val2 & asd1", 3 }, { "Val3 & asd1", 4 } }; test.Address1.Street = "fff Street"; test.Address1.Entered = DateTime.Now.AddDays(20); test.BigNumber = 34123123123.121M; test.Now = DateTime.Now.AddHours(1); test.strings = new List() { null, "Markus egger ]><[, (2nd)", null }; Address address = new Address(); address.Entered = DateTime.Now.AddDays(-1); address.Street = "\u001farray\u003caddress"; test.Addresses.Add(address); address = new Address(); address.Entered = DateTime.Now.AddDays(-2); address.Street = "array 2 address"; test.Addresses.Add(address); return test; } private static SimpleObject CreateSimpleObject() { return new SimpleObject { Name = "Simple-1", Id = 2311, Address = "Planet Earth", Scores = new[] { 82, 96, 49, 40, 38, 38, 78, 96, 2, 39 } }; } public string SerializeWebExtensions(object value) { JavaScriptSerializer ser = new JavaScriptSerializer(); return ser.Serialize(value); } public string SerializeDataContractJson(object value) { DataContractJsonSerializer dataContractSerializer = new DataContractJsonSerializer(value.GetType()); MemoryStream ms = new MemoryStream(); dataContractSerializer.WriteObject(ms, value); ms.Seek(0, SeekOrigin.Begin); using (StreamReader sr = new StreamReader(ms)) { return sr.ReadToEnd(); } } public string SerializeDataContract(object value) { DataContractSerializer dataContractSerializer = new DataContractSerializer(value.GetType()); MemoryStream ms = new MemoryStream(); dataContractSerializer.WriteObject(ms, value); ms.Seek(0, SeekOrigin.Begin); using (StreamReader sr = new StreamReader(ms)) { return sr.ReadToEnd(); } } private string Serialize(SerializeMethod method, object value) { string json; switch (method) { case SerializeMethod.JsonNet: json = JsonConvert.SerializeObject(value); break; case SerializeMethod.JsonNetWithIsoConverter: json = JsonConvert.SerializeObject(value, new IsoDateTimeConverter()); break; case SerializeMethod.JsonNetLinq: { TestClass c = value as TestClass; if (c != null) { JObject o = new JObject( new JProperty("strings", new JArray( c.strings )), new JProperty("dictionary", new JObject(c.dictionary.Select(d => new JProperty(d.Key, d.Value)))), new JProperty("Name", c.Name), new JProperty("Now", c.Now), new JProperty("BigNumber", c.BigNumber), new JProperty("Address1", new JObject( new JProperty("Street", c.Address1.Street), new JProperty("Phone", c.Address1.Phone), new JProperty("Entered", c.Address1.Entered))), new JProperty("Addresses", new JArray(c.Addresses.Select(a => new JObject( new JProperty("Street", a.Street), new JProperty("Phone", a.Phone), new JProperty("Entered", a.Entered))))) ); json = o.ToString(Formatting.None); } else { json = string.Empty; } break; } case SerializeMethod.JsonNetManual: { TestClass c = value as TestClass; if (c != null) { StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); writer.WriteStartObject(); writer.WritePropertyName("strings"); writer.WriteStartArray(); foreach (string s in c.strings) { writer.WriteValue(s); } writer.WriteEndArray(); writer.WritePropertyName("dictionary"); writer.WriteStartObject(); foreach (KeyValuePair keyValuePair in c.dictionary) { writer.WritePropertyName(keyValuePair.Key); writer.WriteValue(keyValuePair.Value); } writer.WriteEndObject(); writer.WritePropertyName("Name"); writer.WriteValue(c.Name); writer.WritePropertyName("Now"); writer.WriteValue(c.Now); writer.WritePropertyName("BigNumber"); writer.WriteValue(c.BigNumber); writer.WritePropertyName("Address1"); writer.WriteStartObject(); writer.WritePropertyName("Street"); writer.WriteValue(c.BigNumber); writer.WritePropertyName("Street"); writer.WriteValue(c.BigNumber); writer.WritePropertyName("Street"); writer.WriteValue(c.BigNumber); writer.WriteEndObject(); writer.WritePropertyName("Addresses"); writer.WriteStartArray(); foreach (Address address in c.Addresses) { writer.WriteStartObject(); writer.WritePropertyName("Street"); writer.WriteValue(address.Street); writer.WritePropertyName("Phone"); writer.WriteValue(address.Phone); writer.WritePropertyName("Entered"); writer.WriteValue(address.Entered); writer.WriteEndObject(); } writer.WriteEndArray(); writer.WriteEndObject(); writer.Flush(); json = sw.ToString(); } else { json = string.Empty; } break; } case SerializeMethod.JsonNetBinary: { MemoryStream ms = new MemoryStream(Buffer); JsonSerializer serializer = new JsonSerializer(); BsonWriter writer = new BsonWriter(ms); serializer.Serialize(writer, value); //json = BitConverter.ToString(ms.ToArray(), 0, (int)ms.Position); json = "Bytes = " + ms.Position; break; } case SerializeMethod.JavaScriptSerializer: json = SerializeWebExtensions(value); break; case SerializeMethod.DataContractJsonSerializer: json = SerializeDataContractJson(value); break; case SerializeMethod.DataContractSerializer: json = SerializeDataContract(value); break; case SerializeMethod.BinaryFormatter: json = SerializeBinaryFormatter(value); break; default: throw new ArgumentOutOfRangeException("method"); } return json; } private string SerializeBinaryFormatter(object value) { string json; MemoryStream ms = new MemoryStream(Buffer); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(ms, value); json = "Bytes = " + ms.Position; //json = BitConverter.ToString(ms.ToArray(), 0, (int)ms.Position); return json; } #endregion #region Deserialize public void BenchmarkDeserializeMethod(SerializeMethod method, object json, int? iterations = null, bool warmUp = true) { GC.Collect(); if (warmUp) Deserialize(method, json); Stopwatch timed = new Stopwatch(); timed.Start(); iterations = iterations ?? Iterations; T value = default(T); for (int x = 0; x < iterations.Value; x++) { value = Deserialize(method, json); } timed.Stop(); Console.WriteLine("Deserialize method: {0}", method); Console.WriteLine("{0} ms", timed.ElapsedMilliseconds); Console.WriteLine(value); Console.WriteLine(); } public T DeserializeJsonNet(string json, bool isoDateTimeConverter) { Type type = typeof(T); JsonSerializer serializer = new JsonSerializer(); //serializer.ObjectCreationHandling = Newtonsoft.Json.ObjectCreationHandling.Replace; //serializer.MissingMemberHandling = Newtonsoft.Json.MissingMemberHandling.Ignore; //serializer.ReferenceLoopHandling = ReferenceLoopHandling.Ignore; if (isoDateTimeConverter) serializer.Converters.Add(new IsoDateTimeConverter()); var value = (T)serializer.Deserialize(new StringReader(json), type); return value; } public TestClass DeserializeJsonNetManual(string json) { TestClass c = new TestClass(); JsonTextReader reader = new JsonTextReader(new StringReader(json)); reader.Read(); while (reader.Read()) { if (reader.TokenType == JsonToken.PropertyName) { string propertyName = (string)reader.Value; switch (propertyName) { case "strings": reader.Read(); while (reader.Read() && reader.TokenType != JsonToken.EndArray) { c.strings.Add((string)reader.Value); } break; case "dictionary": reader.Read(); while (reader.Read() && reader.TokenType != JsonToken.EndObject) { string key = (string)reader.Value; c.dictionary.Add(key, reader.ReadAsInt32().GetValueOrDefault()); } break; case "Name": c.Name = reader.ReadAsString(); break; case "Now": c.Now = reader.ReadAsDateTime().GetValueOrDefault(); break; case "BigNumber": c.BigNumber = reader.ReadAsDecimal().GetValueOrDefault(); break; case "Address1": reader.Read(); c.Address1 = CreateAddress(reader); break; case "Addresses": reader.Read(); while (reader.Read() && reader.TokenType != JsonToken.EndArray) { var address = CreateAddress(reader); c.Addresses.Add(address); } break; } } else { break; } } return c; } private static Address CreateAddress(JsonTextReader reader) { Address a = new Address(); while (reader.Read()) { if (reader.TokenType == JsonToken.PropertyName) { switch ((string)reader.Value) { case "Street": a.Street = reader.ReadAsString(); break; case "Phone": a.Phone = reader.ReadAsString(); break; case "Entered": a.Entered = reader.ReadAsDateTime().GetValueOrDefault(); break; } } else { break; } } return a; } public T DeserializeJsonNetBinary(byte[] bson) { Type type = typeof(T); JsonSerializer serializer = new JsonSerializer(); serializer.ObjectCreationHandling = Newtonsoft.Json.ObjectCreationHandling.Replace; serializer.MissingMemberHandling = Newtonsoft.Json.MissingMemberHandling.Ignore; serializer.ReferenceLoopHandling = ReferenceLoopHandling.Ignore; return (T)serializer.Deserialize(new BsonReader(new MemoryStream(bson)), type); } public T DeserializeWebExtensions(string json) { JavaScriptSerializer ser = new JavaScriptSerializer { MaxJsonLength = int.MaxValue }; return ser.Deserialize(json); } public T DeserializeDataContractJson(string json) { DataContractJsonSerializer dataContractSerializer = new DataContractJsonSerializer(typeof(T)); MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json)); return (T)dataContractSerializer.ReadObject(ms); } private T Deserialize(SerializeMethod method, object json) { switch (method) { case SerializeMethod.JsonNet: return DeserializeJsonNet((string)json, false); case SerializeMethod.JsonNetWithIsoConverter: return DeserializeJsonNet((string)json, true); case SerializeMethod.JsonNetManual: if (typeof(T) == typeof(TestClass)) return (T)(object)DeserializeJsonNetManual((string)json); return default(T); case SerializeMethod.JsonNetBinary: return DeserializeJsonNetBinary((byte[])json); case SerializeMethod.BinaryFormatter: return DeserializeBinaryFormatter((byte[])json); case SerializeMethod.JavaScriptSerializer: return DeserializeWebExtensions((string)json); case SerializeMethod.DataContractSerializer: return DeserializeDataContract((string)json); case SerializeMethod.DataContractJsonSerializer: return DeserializeDataContractJson((string)json); default: throw new ArgumentOutOfRangeException("method"); } } private T DeserializeDataContract(string xml) { MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(xml)); DataContractSerializer serializer = new DataContractSerializer(typeof(T)); return (T)serializer.ReadObject(ms); } private T DeserializeBinaryFormatter(byte[] bytes) { BinaryFormatter formatter = new BinaryFormatter(); return (T)formatter.Deserialize(new MemoryStream(bytes)); } #endregion [Test] public void SerializeLargeObject() { LargeRecursiveTestClass rootValue = null; LargeRecursiveTestClass parentValue = null; for (int i = 0; i < 20; i++) { LargeRecursiveTestClass currentValue = new LargeRecursiveTestClass() { Integer = int.MaxValue, Text = "The quick red fox jumped over the lazy dog." }; if (rootValue == null) rootValue = currentValue; if (parentValue != null) parentValue.Child = currentValue; parentValue = currentValue; } BenchmarkSerializeMethod(SerializeMethod.JsonNetBinary, rootValue); } [Test] public void SerializeUnicodeChars() { string s = (new string('\0', 30)); BenchmarkSerializeMethod(SerializeMethod.JsonNet, s); } [Test] public void ParseJObject() { Stopwatch timer = new Stopwatch(); timer.Start(); for (int i = 0; i < 100000; i++) { JObject o = JObject.Parse(@"{ ""CPU"": ""Intel"", ""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ] }"); } timer.Stop(); string linq = timer.Elapsed.TotalSeconds.ToString(); Console.WriteLine(linq); } [Test] public void JObjectToString() { JObject test = JObject.Parse(JsonText); TimeOperation(() => { for (int i = 0; i < Iterations; i++) { test["dummy"] = new JValue(i); test.ToString(Formatting.None); } return null; }, "JObject.ToString"); } [Test] public void JObjectToString2() { JObject test = JObject.Parse(JsonText); MemoryStream ms = new MemoryStream(); TimeOperation(() => { for (int i = 0; i < Iterations; i++) { test["dummy"] = new JValue(i); ms.Seek(0, SeekOrigin.Begin); JsonTextWriter jsonTextWriter = new JsonTextWriter(new StreamWriter(ms)); test.WriteTo(jsonTextWriter); jsonTextWriter.Flush(); ms.ToArray(); //Encoding.UTF8.GetBytes(test.ToString(Formatting.None)); } return null; }, "JObject.ToString"); } [Test] public void JObjectCreationAndPropertyAccess() { TimeOperation(() => { for (int i = 0; i < Iterations * 100; i++) { JObject test = new JObject( new JProperty("one", 1), new JProperty("two", 2)); test["i"] = i; int j = (int)test["i"]; test["j"] = j; } return null; }, "JObjectCreationAndPropertyAccess"); } [Test] public void NestedJToken() { Stopwatch sw; for (int i = 10000; i <= 100000; i += 10000) { sw = new Stopwatch(); sw.Start(); JArray ija = new JArray(); JToken ijt = ija; for (int j = 0; j < i; j++) { JArray temp = new JArray(); ija.Add(temp); ija = temp; } ija.Add(1); sw.Stop(); Console.WriteLine("Created a JToken of depth {0} (using OM) in {1} millis", i, sw.ElapsedMilliseconds); } } [Test] public void DeserializeNestedJToken() { string json = (new string('[', 100000)) + "1" + ((new string(']', 100000))); Stopwatch sw; sw = new Stopwatch(); sw.Start(); var a = (JArray)JsonConvert.DeserializeObject(json); sw.Stop(); Assert.AreEqual(1, a.Count); Console.WriteLine("Deserialize big ass nested array in {0} millis", sw.ElapsedMilliseconds); } } public class LargeRecursiveTestClass { public LargeRecursiveTestClass Child { get; set; } public string Text { get; set; } public int Integer { get; set; } } #region Classes [Serializable] [DataContract] public class TestClass { [DataMember] public string Name { get { return _Name; } set { _Name = value; } } private string _Name = "Rick"; [DataMember] public DateTime Now { get { return _Now; } set { _Now = value; } } private DateTime _Now = DateTime.Now; [DataMember] public decimal BigNumber { get { return _BigNumber; } set { _BigNumber = value; } } private decimal _BigNumber = 1212121.22M; [DataMember] public Address Address1 { get { return _Address1; } set { _Address1 = value; } } private Address _Address1 = new Address(); [DataMember] public List
Addresses { get { return _Addresses; } set { _Addresses = value; } } private List
_Addresses = new List
(); [DataMember] public List strings = new List(); [DataMember] public Dictionary dictionary = new Dictionary(); } [Serializable] [DataContract] public class Address { [DataMember] public string Street { get { return _street; } set { _street = value; } } private string _street = "32 Kaiea"; [DataMember] public string Phone { get { return _Phone; } set { _Phone = value; } } private string _Phone = "(503) 814-6335"; [DataMember] public DateTime Entered { get { return _Entered; } set { _Entered = value; } } private DateTime _Entered = DateTime.Parse("01/01/2007", CultureInfo.CurrentCulture.DateTimeFormat); } [DataContract] [Serializable] public class SimpleObject { [DataMember] public int Id { get; set; } [DataMember] public string Name { get; set; } [DataMember] public string Address { get; set; } [DataMember] public int[] Scores { get; set; } } #endregion } #endifnewtonsoft-json-6.0.8/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Net20.csproj0000664000175000017500000004461312454416117030637 0ustar directhexdirecthex Debug AnyCPU 9.0.30729 2.0 {3E6E2335-B079-4B5B-A65A-9D586914BCBB} Library Properties Newtonsoft.Json.Tests Newtonsoft.Json.Tests 3.5 v2.0 false publish\ true Disk false Foreground 7 Days false false true 0 1.0.0.%2a false false true true full false bin\Debug\Net20\ TRACE;DEBUG;NET20 prompt 4 AllRules.ruleset pdbonly true bin\Release\Net20\ TRACE;NET20 prompt 4 AllRules.ruleset False ..\packages\NUnit.2.6.2\lib\nunit.framework.dll Component {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D} Newtonsoft.Json.Net20 False .NET Framework 3.5 SP1 Client Profile false False .NET Framework 3.5 SP1 true False Windows Installer 3.1 true PreserveNewest PreserveNewest PreserveNewest PreserveNewest PreserveNewest newtonsoft-json-6.0.8/.gitignore0000664000175000017500000000032312454416117017417 0ustar directhexdirecthex[Bb]in/ [Oo]bj/ [Ww]orking*/ Build/runbuild.txt Doc/doc.shfbproj_* TestResults/ AppPackages/ *.suo *.user *.userprefs _ReSharper.* *.ReSharper.user *.resharper.user #NuGet packages !packages/repositories.confignewtonsoft-json-6.0.8/.gitattributes0000664000175000017500000000140312454416117020322 0ustar directhexdirecthex*.doc diff=astextplain *.DOC diff=astextplain *.docx diff=astextplain *.DOCX diff=astextplain *.dot diff=astextplain *.DOT diff=astextplain *.pdf diff=astextplain *.PDF diff=astextplain *.rtf diff=astextplain *.RTF diff=astextplain *.jpg binary *.png binary *.gif binary *.bson binary *.cs text diff=csharp *.vb text *.c text *.cpp text *.cxx text *.h text *.hxx text *.py text *.rb text *.java text *.html text *.htm text *.css text *.scss text *.sass text *.less text *.js text *.lisp text *.clj text *.sql text *.php text *.lua text *.m text *.asm text *.erl text *.fs text *.fsx text *.hs text *.ps1 text *.psm1 text *.csproj text merge=union *.vbproj text merge=union *.fsproj text merge=union *.dbproj text merge=union *.sln text eol=crlf merge=union